Solution
1,2,6,7,9,14,15,18,20

Xpress-Mosel Model

model 'joshua'

! Description  : Joshua and his rats
! Source       : Sole, T., (1988), The Ticket to Heaven, Penguin Books  
! Date written : Xpress-MP 25/10/99, Mosel 18/4/03
! Written by   : M J Chlond 

  uses 'mmxprs'
  
  parameters
    rat = 9
  end-parameters

  declarations
    R = 1..rat
    x: array(R) of mpvar
    d: array(R,R,R) of mpvar
  end-declarations

  tot:= sum(i in R) x(i)

  forall(i in 2..rat)
    ne(i):= x(i) >= x(i-1)+1
 
  forall(i in R,j in R,k in R | j < i and k < j)
    na(i,j,k):= -x(i)+2*x(j)-x(k)+19*d(i,j,k) >= 1

  forall(i in R,j in R,k in R | j < i and k < j)
    nb(i,j,k):= -x(i)+2*x(j)-x(k)+19*d(i,j,k) <= 18

  forall(i in R) do
    x(i) is_integer
    x(i) >= 1
    x(i) <= 20
  end-do    

  forall(i in R,j in R,k in R)
    d(i,j,k) is_binary

  minimise(tot)
  
  forall(i in R)
    write(getsol(x(i)),' ')
    
 end-model