Friday, August 28, 2009

A Computer Program for Solving Integer Programs, Second Edition

Jsun Yui Wong

The computer program listed below seeks to solve the 30-department problem in Nugent, Vollmann, and Ruml (1968).

0 DEFSNG A-Z
3 DEFINT I,J,K
4 DIM X(466),A(466),L(466),K(466),P(466),B(466),S(466),T(466)
6 DIM TBM(33,33)
51 TBM(1,1)=999:TBM(1,2)=1:TBM(1,3)=2:TBM(1,4)=3:TBM(1,5)=4:TBM(1,6)=5:TBM(1,7)=1:TBM(1,8)=2:TBM(1,9)=3:TBM(1,10)=4
52 TBM(1,11)=5:TBM(1,12)=6:TBM(1,13)=2:TBM(1,14)=3:TBM(1,15)=4:TBM(1,16)=5:TBM(1,17)=6:TBM(1,18)=7:TBM(1,19)=3:TBM(1,20)=4
53 TBM(1,21)=5:TBM(1,22)=6:TBM(1,23)=7:TBM(1,24)=8:TBM(1,25)=4:TBM(1,26)=5:TBM(1,27)=6:TBM(1,28)=7:TBM(1,29)=8:TBM(1,30)=9
63 TBM(2,1)=1:TBM(2,2)=999:TBM(2,3)=1:TBM(2,4)=2:TBM(2,5)=3:TBM(2,6)=4:TBM(2,7)=2:TBM(2,8)=1:TBM(2,9)=2:TBM(2,10)=3
64 TBM(2,11)=4:TBM(2,12)=5:TBM(2,13)=3:TBM(2,14)=2:TBM(2,15)=3:TBM(2,16)=4:TBM(2,17)=5:TBM(2,18)=6:TBM(2,19)=4:TBM(2,20)=3
65 TBM(2,21)=4:TBM(2,22)=5:TBM(2,23)=6:TBM(2,24)=7:TBM(2,25)=5:TBM(2,26)=4:TBM(2,27)=5:TBM(2,28)=6:TBM(2,29)=7:TBM(2,30)=8
67 TBM(3,1)=2:TBM(3,2)=1:TBM(3,3)=999:TBM(3,4)=1:TBM(3,5)=2:TBM(3,6)=3:TBM(3,7)=3:TBM(3,8)=2:TBM(3,9)=1:TBM(3,10)=2
68 TBM(3,11)=3:TBM(3,12)=4:TBM(3,13)=4:TBM(3,14)=3:TBM(3,15)=2:TBM(3,16)=3:TBM(3,17)=4:TBM(3,18)=5:TBM(3,19)=5:TBM(3,20)=4
69 TBM(3,21)=3:TBM(3,22)=4:TBM(3,23)=5:TBM(3,24)=6:TBM(3,25)=6:TBM(3,26)=5:TBM(3,27)=4:TBM(3,28)=5:TBM(3,29)=6:TBM(3,30)=7
77 TBM(4,1)=3:TBM(4,2)=2:TBM(4,3)=1:TBM(4,4)=999:TBM(4,5)=1:TBM(4,6)=2:TBM(4,7)=4:TBM(4,8)=3:TBM(4,9)=2:TBM(4,10)=1
78 TBM(4,11)=2:TBM(4,12)=3:TBM(4,13)=5:TBM(4,14)=4:TBM(4,15)=3:TBM(4,16)=2:TBM(4,17)=3:TBM(4,18)=4:TBM(4,19)=6:TBM(4,20)=5
79 TBM(4,21)=4:TBM(4,22)=3:TBM(4,23)=4:TBM(4,24)=5:TBM(4,25)=7:TBM(4,26)=6:TBM(4,27)=5:TBM(4,28)=4:TBM(4,29)=5:TBM(4,30)=6
81 TBM(5,1)=4:TBM(5,2)=3:TBM(5,3)=2:TBM(5,4)=1:TBM(5,5)=999:TBM(5,6)=1:TBM(5,7)=5:TBM(5,8)=4:TBM(5,9)=3:TBM(5,10)=2
82 TBM(5,11)=1:TBM(5,12)=2:TBM(5,13)=6:TBM(5,14)=5:TBM(5,15)=4:TBM(5,16)=3:TBM(5,17)=2:TBM(5,18)=3:TBM(5,19)=7:TBM(5,20)=6
83 TBM(5,21)=5:TBM(5,22)=4:TBM(5,23)=3:TBM(5,24)=4:TBM(5,25)=8:TBM(5,26)=7:TBM(5,27)=6:TBM(5,28)=5:TBM(5,29)=4:TBM(5,30)=5
93 TBM(6,1)=5:TBM(6,2)=4:TBM(6,3)=3:TBM(6,4)=2:TBM(6,5)=1:TBM(6,6)=999:TBM(6,7)=6:TBM(6,8)=5:TBM(6,9)=4:TBM(6,10)=3
94 TBM(6,11)=2:TBM(6,12)=1:TBM(6,13)=7:TBM(6,14)=6:TBM(6,15)=5:TBM(6,16)=4:TBM(6,17)=3:TBM(6,18)=2:TBM(6,19)=8:TBM(6,20)=7
95 TBM(6,21)=6:TBM(6,22)=5:TBM(6,23)=4:TBM(6,24)=3:TBM(6,25)=9:TBM(6,26)=8:TBM(6,27)=7:TBM(6,28)=6:TBM(6,29)=5:TBM(6,30)=4
97 TBM(7,1)=1:TBM(7,2)=2:TBM(7,3)=3:TBM(7,4)=4:TBM(7,5)=5:TBM(7,6)=6:TBM(7,7)=999:TBM(7,8)=1:TBM(7,9)=2:TBM(7,10)=3
98 TBM(7,11)=4:TBM(7,12)=5:TBM(7,13)=1:TBM(7,14)=2:TBM(7,15)=3:TBM(7,16)=4:TBM(7,17)=5:TBM(7,18)=6:TBM(7,19)=2:TBM(7,20)=3
99 TBM(7,21)=4:TBM(7,22)=5:TBM(7,23)=6:TBM(7,24)=7:TBM(7,25)=3:TBM(7,26)=4:TBM(7,27)=5:TBM(7,28)=6:TBM(7,29)=7:TBM(7,30)=8
101 TBM(8,1)=2:TBM(8,2)=1:TBM(8,3)=2:TBM(8,4)=3:TBM(8,5)=4:TBM(8,6)=5:TBM(8,7)=1:TBM(8,8)=999:TBM(8,9)=1:TBM(8,10)=2
102 TBM(8,11)=3:TBM(8,12)=4:TBM(8,13)=2:TBM(8,14)=1:TBM(8,15)=2:TBM(8,16)=3:TBM(8,17)=4:TBM(8,18)=5:TBM(8,19)=3:TBM(8,20)=2
103 TBM(8,21)=3:TBM(8,22)=4:TBM(8,23)=5:TBM(8,24)=6:TBM(8,25)=4:TBM(8,26)=3:TBM(8,27)=4:TBM(8,28)=5:TBM(8,29)=6:TBM(8,30)=7
105 TBM(9,1)=3:TBM(9,2)=2:TBM(9,3)=1:TBM(9,4)=2:TBM(9,5)=3:TBM(9,6)=4:TBM(9,7)=2:TBM(9,8)=1:TBM(9,9)=999:TBM(9,10)=1
106 TBM(9,11)=2:TBM(9,12)=3:TBM(9,13)=3:TBM(9,14)=2:TBM(9,15)=1:TBM(9,16)=2:TBM(9,17)=3:TBM(9,18)=4:TBM(9,19)=4:TBM(9,20)=3
107 TBM(9,21)=2:TBM(9,22)=3:TBM(9,23)=4:TBM(9,24)=5:TBM(9,25)=5:TBM(9,26)=4:TBM(9,27)=3:TBM(9,28)=4:TBM(9,29)=5:TBM(9,30)=6
109 TBM(10,1)=4:TBM(10,2)=3:TBM(10,3)=2:TBM(10,4)=1:TBM(10,5)=2:TBM(10,6)=3:TBM(10,7)=3:TBM(10,8)=2:TBM(10,9)=1:TBM(10,10)=999
110 TBM(10,11)=1:TBM(10,12)=2:TBM(10,13)=4:TBM(10,14)=3:TBM(10,15)=2:TBM(10,16)=1:TBM(10,17)=2:TBM(10,18)=3:TBM(10,19)=5:TBM(10,20)=4
111 TBM(10,21)=3:TBM(10,22)=2:TBM(10,23)=3:TBM(10,24)=4:TBM(10,25)=6:TBM(10,26)=5:TBM(10,27)=4:TBM(10,28)=3:TBM(10,29)=4:TBM(10,30)=5
113 TBM(11,1)=5:TBM(11,2)=4:TBM(11,3)=3:TBM(11,4)=2:TBM(11,5)=1:TBM(11,6)=2:TBM(11,7)=4:TBM(11,8)=3:TBM(11,9)=2:TBM(11,10)=1
114 TBM(11,11)=999:TBM(11,12)=1:TBM(11,13)=5:TBM(11,14)=4:TBM(11,15)=3:TBM(11,16)=2:TBM(11,17)=1:TBM(11,18)=2:TBM(11,19)=6:TBM(11,20)=5
115 TBM(11,21)=4:TBM(11,22)=3:TBM(11,23)=2:TBM(11,24)=3:TBM(11,25)=7:TBM(11,26)=6:TBM(11,27)=5:TBM(11,28)=4:TBM(11,29)=3:TBM(11,30)=4
117 TBM(12,1)=6:TBM(12,2)=5:TBM(12,3)=4:TBM(12,4)=3:TBM(12,5)=2:TBM(12,6)=1:TBM(12,7)=5:TBM(12,8)=4:TBM(12,9)=3:TBM(12,10)=2
118 TBM(12,11)=1:TBM(12,12)=999:TBM(12,13)=6:TBM(12,14)=5:TBM(12,15)=4:TBM(12,16)=3:TBM(12,17)=2:TBM(12,18)=1:TBM(12,19)=7:TBM(12,20)=6
119 TBM(12,21)=5:TBM(12,22)=4:TBM(12,23)=3:TBM(12,24)=2:TBM(12,25)=8:TBM(12,26)=7:TBM(12,27)=6:TBM(12,28)=5:TBM(12,29)=4:TBM(12,30)=3
121 TBM(13,1)=2:TBM(13,2)=3:TBM(13,3)=4:TBM(13,4)=5:TBM(13,5)=6:TBM(13,6)=7:TBM(13,7)=1:TBM(13,8)=2:TBM(13,9)=3:TBM(13,10)=4
122 TBM(13,11)=5:TBM(13,12)=6:TBM(13,13)=999:TBM(13,14)=1:TBM(13,15)=2:TBM(13,16)=3:TBM(13,17)=4:TBM(13,18)=5:TBM(13,19)=1:TBM(13,20)=2
123 TBM(13,21)=3:TBM(13,22)=4:TBM(13,23)=5:TBM(13,24)=6:TBM(13,25)=2:TBM(13,26)=3:TBM(13,27)=4:TBM(13,28)=5:TBM(13,29)=6:TBM(13,30)=7
125 TBM(14,1)=3:TBM(14,2)=2:TBM(14,3)=3:TBM(14,4)=4:TBM(14,5)=5:TBM(14,6)=6:TBM(14,7)=2:TBM(14,8)=1:TBM(14,9)=2:TBM(14,10)=3
126 TBM(14,11)=4:TBM(14,12)=5:TBM(14,13)=1:TBM(14,14)=999:TBM(14,15)=1:TBM(14,16)=2:TBM(14,17)=3:TBM(14,18)=4:TBM(14,19)=2:TBM(14,20)=1
127 TBM(14,21)=2:TBM(14,22)=3:TBM(14,23)=4:TBM(14,24)=5:TBM(14,25)=3:TBM(14,26)=2:TBM(14,27)=3:TBM(14,28)=4:TBM(14,29)=5:TBM(14,30)=6
135 TBM(15,1)=4:TBM(15,2)=3:TBM(15,3)=2:TBM(15,4)=3:TBM(15,5)=4:TBM(15,6)=5:TBM(15,7)=3:TBM(15,8)=2:TBM(15,9)=1:TBM(15,10)=2
136 TBM(15,11)=3:TBM(15,12)=4:TBM(15,13)=2:TBM(15,14)=1:TBM(15,15)=999:TBM(15,16)=1:TBM(15,17)=2:TBM(15,18)=3:TBM(15,19)=3:TBM(15,20)=2
137 TBM(15,21)=1:TBM(15,22)=2:TBM(15,23)=3:TBM(15,24)=4:TBM(15,25)=4:TBM(15,26)=3:TBM(15,27)=2:TBM(15,28)=3:TBM(15,29)=4:TBM(15,30)=5
139 TBM(16,1)=5:TBM(16,2)=4:TBM(16,3)=3:TBM(16,4)=2:TBM(16,5)=3:TBM(16,6)=4:TBM(16,7)=4:TBM(16,8)=3:TBM(16,9)=2:TBM(16,10)=1
140 TBM(16,11)=2:TBM(16,12)=3:TBM(16,13)=3:TBM(16,14)=2:TBM(16,15)=1:TBM(16,16)=999:TBM(16,17)=1:TBM(16,18)=2:TBM(16,19)=4:TBM(16,20)=3
141 TBM(16,21)=2:TBM(16,22)=1:TBM(16,23)=2:TBM(16,24)=3:TBM(16,25)=5:TBM(16,26)=4:TBM(16,27)=3:TBM(16,28)=2:TBM(16,29)=3:TBM(16,30)=4
143 TBM(17,1)=6:TBM(17,2)=5:TBM(17,3)=4:TBM(17,4)=3:TBM(17,5)=2:TBM(17,6)=3:TBM(17,7)=5:TBM(17,8)=4:TBM(17,9)=3:TBM(17,10)=2
144 TBM(17,11)=1:TBM(17,12)=2:TBM(17,13)=4:TBM(17,14)=3:TBM(17,15)=2:TBM(17,16)=1:TBM(17,17)=999:TBM(17,18)=1:TBM(17,19)=5:TBM(17,20)=4
145 TBM(17,21)=3:TBM(17,22)=2:TBM(17,23)=1:TBM(17,24)=2:TBM(17,25)=6:TBM(17,26)=5:TBM(17,27)=4:TBM(17,28)=3:TBM(17,29)=2:TBM(17,30)=3
147 TBM(18,1)=7:TBM(18,2)=6:TBM(18,3)=5:TBM(18,4)=4:TBM(18,5)=3:TBM(18,6)=2:TBM(18,7)=6:TBM(18,8)=5:TBM(18,9)=4:TBM(18,10)=3
148 TBM(18,11)=2:TBM(18,12)=1:TBM(18,13)=5:TBM(18,14)=4:TBM(18,15)=3:TBM(18,16)=2:TBM(18,17)=1:TBM(18,18)=999:TBM(18,19)=6:TBM(18,20)=5
149 TBM(18,21)=4:TBM(18,22)=3:TBM(18,23)=2:TBM(18,24)=1:TBM(18,25)=7:TBM(18,26)=6:TBM(18,27)=5:TBM(18,28)=4:TBM(18,29)=3:TBM(18,30)=2
151 TBM(19,1)=3:TBM(19,2)=4:TBM(19,3)=5:TBM(19,4)=6:TBM(19,5)=7:TBM(19,6)=8:TBM(19,7)=2:TBM(19,8)=3:TBM(19,9)=4:TBM(19,10)=5
152 TBM(19,11)=6:TBM(19,12)=7:TBM(19,13)=1:TBM(19,14)=2:TBM(19,15)=3:TBM(19,16)=4:TBM(19,17)=5:TBM(19,18)=6:TBM(19,19)=999:TBM(19,20)=1
153 TBM(19,21)=2:TBM(19,22)=3:TBM(19,23)=4:TBM(19,24)=5:TBM(19,25)=1:TBM(19,26)=2:TBM(19,27)=3:TBM(19,28)=4:TBM(19,29)=5:TBM(19,30)=6
155 TBM(20,1)=4:TBM(20,2)=3:TBM(20,3)=4:TBM(20,4)=5:TBM(20,5)=6:TBM(20,6)=7:TBM(20,7)=3:TBM(20,8)=2:TBM(20,9)=3:TBM(20,10)=4
156 TBM(20,11)=5:TBM(20,12)=6:TBM(20,13)=2:TBM(20,14)=1:TBM(20,15)=2:TBM(20,16)=3:TBM(20,17)=4:TBM(20,18)=5:TBM(20,19)=1:TBM(20,20)=999
157 TBM(20,21)=1:TBM(20,22)=2:TBM(20,23)=3:TBM(20,24)=4:TBM(20,25)=2:TBM(20,26)=1:TBM(20,27)=2:TBM(20,28)=3:TBM(20,29)=4:TBM(20,30)=5
161 TBM(21,1)=5:TBM(21,2)=4:TBM(21,3)=3:TBM(21,4)=4:TBM(21,5)=5:TBM(21,6)=6:TBM(21,7)=4:TBM(21,8)=3:TBM(21,9)=2:TBM(21,10)=3
162 TBM(21,11)=4:TBM(21,12)=5:TBM(21,13)=3:TBM(21,14)=2:TBM(21,15)=1:TBM(21,16)=2:TBM(21,17)=3:TBM(21,18)=4:TBM(21,19)=2:TBM(21,20)=1
163 TBM(21,21)=999:TBM(21,22)=1:TBM(21,23)=2:TBM(21,24)=3:TBM(21,25)=3:TBM(21,26)=2:TBM(21,27)=1:TBM(21,28)=2:TBM(21,29)=3:TBM(21,30)=4
165 TBM(22,1)=6:TBM(22,2)=5:TBM(22,3)=4:TBM(22,4)=3:TBM(22,5)=4:TBM(22,6)=5:TBM(22,7)=5:TBM(22,8)=4:TBM(22,9)=3:TBM(22,10)=2
166 TBM(22,11)=3:TBM(22,12)=4:TBM(22,13)=4:TBM(22,14)=3:TBM(22,15)=2:TBM(22,16)=1:TBM(22,17)=2:TBM(22,18)=3:TBM(22,19)=3:TBM(22,20)=2
167 TBM(22,21)=1:TBM(22,22)=999:TBM(22,23)=1:TBM(22,24)=2:TBM(22,25)=4:TBM(22,26)=3:TBM(22,27)=2:TBM(22,28)=1:TBM(22,29)=2:TBM(22,30)=3
169 TBM(23,1)=7:TBM(23,2)=6:TBM(23,3)=5:TBM(23,4)=4:TBM(23,5)=3:TBM(23,6)=4:TBM(23,7)=6:TBM(23,8)=5:TBM(23,9)=4:TBM(23,10)=3
170 TBM(23,11)=2:TBM(23,12)=3:TBM(23,13)=5:TBM(23,14)=4:TBM(23,15)=3:TBM(23,16)=2:TBM(23,17)=1:TBM(23,18)=2:TBM(23,19)=4:TBM(23,20)=3
171 TBM(23,21)=2:TBM(23,22)=1:TBM(23,23)=999:TBM(23,24)=1:TBM(23,25)=5:TBM(23,26)=4:TBM(23,27)=3:TBM(23,28)=2:TBM(23,29)=1:TBM(23,30)=2
173 TBM(24,1)=8:TBM(24,2)=7:TBM(24,3)=6:TBM(24,4)=5:TBM(24,5)=4:TBM(24,6)=3:TBM(24,7)=7:TBM(24,8)=6:TBM(24,9)=5:TBM(24,10)=4
174 TBM(24,11)=3:TBM(24,12)=2:TBM(24,13)=6:TBM(24,14)=5:TBM(24,15)=4:TBM(24,16)=3:TBM(24,17)=2:TBM(24,18)=1:TBM(24,19)=5:TBM(24,20)=4
175 TBM(24,21)=3:TBM(24,22)=2:TBM(24,23)=1:TBM(24,24)=999:TBM(24,25)=6:TBM(24,26)=5:TBM(24,27)=4:TBM(24,28)=3:TBM(24,29)=2:TBM(24,30)=1
177 TBM(25,1)=4:TBM(25,2)=5:TBM(25,3)=6:TBM(25,4)=7:TBM(25,5)=8:TBM(25,6)=9:TBM(25,7)=3:TBM(25,8)=4:TBM(25,9)=5:TBM(25,10)=6
178 TBM(25,11)=7:TBM(25,12)=8:TBM(25,13)=2:TBM(25,14)=3:TBM(25,15)=4:TBM(25,16)=5:TBM(25,17)=6:TBM(25,18)=7:TBM(25,19)=1:TBM(25,20)=2
179 TBM(25,21)=3:TBM(25,22)=4:TBM(25,23)=5:TBM(25,24)=6:TBM(25,25)=999:TBM(25,26)=1:TBM(25,27)=2:TBM(25,28)=3:TBM(25,29)=4:TBM(25,30)=5
181 TBM(26,1)=5:TBM(26,2)=4:TBM(26,3)=5:TBM(26,4)=6:TBM(26,5)=7:TBM(26,6)=8:TBM(26,7)=4:TBM(26,8)=3:TBM(26,9)=4:TBM(26,10)=5
182 TBM(26,11)=6:TBM(26,12)=7:TBM(26,13)=3:TBM(26,14)=2:TBM(26,15)=3:TBM(26,16)=4:TBM(26,17)=5:TBM(26,18)=6:TBM(26,19)=2:TBM(26,20)=1
183 TBM(26,21)=2:TBM(26,22)=3:TBM(26,23)=4:TBM(26,24)=5:TBM(26,25)=1:TBM(26,26)=999:TBM(26,27)=1:TBM(26,28)=2:TBM(26,29)=3:TBM(26,30)=4
185 TBM(27,1)=6:TBM(27,2)=5:TBM(27,3)=4:TBM(27,4)=5:TBM(27,5)=6:TBM(27,6)=7:TBM(27,7)=5:TBM(27,8)=4:TBM(27,9)=3:TBM(27,10)=4
186 TBM(27,11)=5:TBM(27,12)=6:TBM(27,13)=4:TBM(27,14)=3:TBM(27,15)=2:TBM(27,16)=3:TBM(27,17)=4:TBM(27,18)=5:TBM(27,19)=3:TBM(27,20)=2
187 TBM(27,21)=1:TBM(27,22)=2:TBM(27,23)=3:TBM(27,24)=4:TBM(27,25)=2:TBM(27,26)=1:TBM(27,27)=999:TBM(27,28)=1:TBM(27,29)=2:TBM(27,30)=3
189 TBM(28,1)=7:TBM(28,2)=6:TBM(28,3)=5:TBM(28,4)=4:TBM(28,5)=5:TBM(28,6)=6:TBM(28,7)=6:TBM(28,8)=5:TBM(28,9)=4:TBM(28,10)=3
190 TBM(28,11)=4:TBM(28,12)=5:TBM(28,13)=5:TBM(28,14)=4:TBM(28,15)=3:TBM(28,16)=2:TBM(28,17)=3:TBM(28,18)=4:TBM(28,19)=4:TBM(28,20)=3
191 TBM(28,21)=2:TBM(28,22)=1:TBM(28,23)=2:TBM(28,24)=3:TBM(28,25)=3:TBM(28,26)=2:TBM(28,27)=1:TBM(28,28)=999:TBM(28,29)=1:TBM(28,30)=2
193 TBM(29,1)=8:TBM(29,2)=7:TBM(29,3)=6:TBM(29,4)=5:TBM(29,5)=4:TBM(29,6)=5:TBM(29,7)=7:TBM(29,8)=6:TBM(29,9)=5:TBM(29,10)=4
194 TBM(29,11)=3:TBM(29,12)=4:TBM(29,13)=6:TBM(29,14)=5:TBM(29,15)=4:TBM(29,16)=3:TBM(29,17)=2:TBM(29,18)=3:TBM(29,19)=5:TBM(29,20)=4
195 TBM(29,21)=3:TBM(29,22)=2:TBM(29,23)=1:TBM(29,24)=2:TBM(29,25)=4:TBM(29,26)=3:TBM(29,27)=2:TBM(29,28)=1:TBM(29,29)=999:TBM(29,30)=1
197 TBM(30,1)=9:TBM(30,2)=8:TBM(30,3)=7:TBM(30,4)=6:TBM(30,5)=5:TBM(30,6)=4:TBM(30,7)=8:TBM(30,8)=7:TBM(30,9)=6:TBM(30,10)=5
198 TBM(30,11)=4:TBM(30,12)=3:TBM(30,13)=7:TBM(30,14)=6:TBM(30,15)=5:TBM(30,16)=4:TBM(30,17)=3:TBM(30,18)=2:TBM(30,19)=6:TBM(30,20)=5
199 TBM(30,21)=4:TBM(30,22)=3:TBM(30,23)=2:TBM(30,24)=1:TBM(30,25)=5:TBM(30,26)=4:TBM(30,27)=3:TBM(30,28)=2:TBM(30,29)=1:TBM(30,30)=999
220 FOR JJJJ=-32000 TO 32000
221 RANDOMIZE JJJJ
222 M=-1D+17
223 A(1)=1:A(2)=2:A(3)=3:A(4)=4:A(5)=5:A(6)=6:A(7)=7:A(8)=8:A(9)=9:A(10)=10
224 A(11)=11:A(12)=12:A(13)=13:A(14)=14:A(15)=15:A(16)=16:A(17)=17:A(18)=18:A(19)=19:A(20)=20
225 A(21)=21:A(22)=22:A(23)=23:A(24)=24:A(25)=25:A(26)=26:A(27)=27:A(28)=28:A(29)=29:A(30)=30
226 IMAR=10+FIX(RND*5000)
228 FOR I=1 TO IMAR
229 FOR KK=1 TO 30
231 X(KK)=A(KK)
232 NEXT KK
330 IJM=1+FIX(RND*30)
331 IJN=1+FIX(RND*30)
333 X(IJM)=A(IJN):X(IJN)=A(IJM)
401 T(1)=3*TBM(X(1),X(2))
402 T(2)=2*TBM(X(1),X(3))
403 T(3)=0*TBM(X(1),X(4))
404 T(4)=0*TBM(X(1),X(5))
405 T(5)=2*TBM(X(1),X(6))
406 T(6)=10*TBM(X(1),X(7))
407 T(7)=5*TBM(X(1),X(8))
408 T(8)=0*TBM(X(1),X(9))
409 T(9)=5*TBM(X(1),X(10))
410 T(10)=2*TBM(X(1),X(11))
411 T(11)=5*TBM(X(1),X(12))
412 T(12)=0*TBM(X(1),X(13))
413 T(13)=0*TBM(X(1),X(14))
414 T(14)=2*TBM(X(1),X(15))
415 T(15)=0*TBM(X(1),X(16))
416 T(16)=5*TBM(X(1),X(17))
417 T(17)=6*TBM(X(1),X(18))
418 T(18)=3*TBM(X(1),X(19))
419 T(19)=0*TBM(X(1),X(20))
420 T(20)=1*TBM(X(1),X(21))
421 T(21)=10*TBM(X(1),X(22))
422 T(22)=0*TBM(X(1),X(23))
423 T(23)=10*TBM(X(1),X(24))
424 T(24)=2*TBM(X(1),X(25))
425 T(25)=1*TBM(X(1),X(26))
426 T(26)=1*TBM(X(1),X(27))
427 T(27)=1*TBM(X(1),X(28))
428 T(28)=0*TBM(X(1),X(29))
429 T(29)=1*TBM(X(1),X(30))
615 T(30)=4*TBM(X(2),X(3))
616 T(31)=0*TBM(X(2),X(4))
617 T(32)=10*TBM(X(2),X(5))
618 T(33)=4*TBM(X(2),X(6))
619 T(34)=0*TBM(X(2),X(7))
620 T(35)=0*TBM(X(2),X(8))
621 T(36)=2*TBM(X(2),X(9))
622 T(37)=2*TBM(X(2),X(10))
623 T(38)=1*TBM(X(2),X(11))
624 T(39)=0*TBM(X(2),X(12))
625 T(40)=5*TBM(X(2),X(13))
626 T(41)=0*TBM(X(2),X(14))
627 T(42)=0*TBM(X(2),X(15))
628 T(43)=0*TBM(X(2),X(16))
629 T(44)=0*TBM(X(2),X(17))
630 T(45)=2*TBM(X(2),X(18))
631 T(46)=0*TBM(X(2),X(19))
632 T(47)=1*TBM(X(2),X(20))
633 T(48)=6*TBM(X(2),X(21))
634 T(49)=1*TBM(X(2),X(22))
635 T(50)=0*TBM(X(2),X(23))
636 T(51)=1*TBM(X(2),X(24))
637 T(52)=2*TBM(X(2),X(25))
638 T(53)=2*TBM(X(2),X(26))
639 T(54)=5*TBM(X(2),X(27))
640 T(55)=1*TBM(X(2),X(28))
641 T(56)=10*TBM(X(2),X(29))
642 T(57)=5*TBM(X(2),X(30))
648 T(58)=3*TBM(X(3),X(4))
649 T(59)=4*TBM(X(3),X(5))
650 T(60)=0*TBM(X(3),X(6))
651 T(61)=5*TBM(X(3),X(7))
652 T(62)=5*TBM(X(3),X(8))
653 T(63)=5*TBM(X(3),X(9))
654 T(64)=1*TBM(X(3),X(10))
655 T(65)=4*TBM(X(3),X(11))
656 T(66)=1*TBM(X(3),X(12))
657 T(67)=0*TBM(X(3),X(13))
658 T(68)=4*TBM(X(3),X(14))
659 T(69)=0*TBM(X(3),X(15))
660 T(70)=4*TBM(X(3),X(16))
661 T(71)=0*TBM(X(3),X(17))
662 T(72)=6*TBM(X(3),X(18))
663 T(73)=3*TBM(X(3),X(19))
664 T(74)=2*TBM(X(3),X(20))
665 T(75)=5*TBM(X(3),X(21))
666 T(76)=5*TBM(X(3),X(22))
667 T(77)=2*TBM(X(3),X(23))
668 T(78)=1*TBM(X(3),X(24))
669 T(79)=0*TBM(X(3),X(25))
670 T(80)=0*TBM(X(3),X(26))
671 T(81)=3*TBM(X(3),X(27))
678 T(82)=1*TBM(X(3),X(28))
679 T(83)=0*TBM(X(3),X(29))
680 T(84)=2*TBM(X(3),X(30))
740 T(85)=0*TBM(X(4),X(5))
741 T(86)=0*TBM(X(4),X(6))
742 T(87)=0*TBM(X(4),X(7))
743 T(88)=2*TBM(X(4),X(8))
744 T(89)=2*TBM(X(4),X(9))
745 T(90)=0*TBM(X(4),X(10))
746 T(91)=6*TBM(X(4),X(11))
747 T(92)=0*TBM(X(4),X(12))
748 T(93)=2*TBM(X(4),X(13))
749 T(94)=5*TBM(X(4),X(14))
750 T(95)=2*TBM(X(4),X(15))
751 T(96)=5*TBM(X(4),X(16))
752 T(97)=1*TBM(X(4),X(17))
753 T(98)=1*TBM(X(4),X(18))
754 T(99)=1*TBM(X(4),X(19))
755 T(100)=1*TBM(X(4),X(20))
756 T(101)=2*TBM(X(4),X(21))
757 T(102)=2*TBM(X(4),X(22))
758 T(103)=4*TBM(X(4),X(23))
759 T(104)=0*TBM(X(4),X(24))
760 T(105)=2*TBM(X(4),X(25))
761 T(106)=0*TBM(X(4),X(26))
762 T(107)=2*TBM(X(4),X(27))
763 T(108)=2*TBM(X(4),X(28))
764 T(109)=5*TBM(X(4),X(29))
765 T(110)=5*TBM(X(4),X(30))
851 T(111)=5*TBM(X(5),X(6))
852 T(112)=2*TBM(X(5),X(7))
853 T(113)=0*TBM(X(5),X(8))
854 T(114)=0*TBM(X(5),X(9))
855 T(115)=0*TBM(X(5),X(10))
856 T(116)=0*TBM(X(5),X(11))
857 T(117)=2*TBM(X(5),X(12))
858 T(118)=0*TBM(X(5),X(13))
859 T(119)=0*TBM(X(5),X(14))
860 T(120)=0*TBM(X(5),X(15))
861 T(121)=0*TBM(X(5),X(16))
862 T(122)=2*TBM(X(5),X(17))
863 T(123)=1*TBM(X(5),X(18))
864 T(124)=0*TBM(X(5),X(19))
865 T(125)=0*TBM(X(5),X(20))
866 T(126)=2*TBM(X(5),X(21))
867 T(127)=0*TBM(X(5),X(22))
868 T(128)=5*TBM(X(5),X(23))
869 T(129)=1*TBM(X(5),X(24))
870 T(130)=0*TBM(X(5),X(25))
871 T(131)=2*TBM(X(5),X(26))
872 T(132)=1*TBM(X(5),X(27))
873 T(133)=0*TBM(X(5),X(28))
874 T(134)=2*TBM(X(5),X(29))
875 T(135)=1*TBM(X(5),X(30))
961 T(136)=1*TBM(X(6),X(7))
962 T(137)=2*TBM(X(6),X(8))
963 T(138)=2*TBM(X(6),X(9))
964 T(139)=1*TBM(X(6),X(10))
965 T(140)=4*TBM(X(6),X(11))
966 T(141)=10*TBM(X(6),X(12))
967 T(142)=10*TBM(X(6),X(13))
968 T(143)=2*TBM(X(6),X(14))
969 T(144)=5*TBM(X(6),X(15))
970 T(145)=5*TBM(X(6),X(16))
971 T(146)=0*TBM(X(6),X(17))
972 T(147)=5*TBM(X(6),X(18))
973 T(148)=0*TBM(X(6),X(19))
974 T(149)=0*TBM(X(6),X(20))
975 T(150)=0*TBM(X(6),X(21))
976 T(151)=10*TBM(X(6),X(22))
977 T(152)=0*TBM(X(6),X(23))
978 T(153)=0*TBM(X(6),X(24))
979 T(154)=0*TBM(X(6),X(25))
980 T(155)=4*TBM(X(6),X(26))
981 T(156)=0*TBM(X(6),X(27))
982 T(157)=10*TBM(X(6),X(28))
983 T(158)=1*TBM(X(6),X(29))
984 T(159)=1*TBM(X(6),X(30))
1047 T(160)=10*TBM(X(7),X(8))
1048 T(161)=10*TBM(X(7),X(9))
1051 T(162)=5*TBM(X(7),X(10))
1052 T(163)=10*TBM(X(7),X(11))
1053 T(164)=10*TBM(X(7),X(12))
1054 T(165)=6*TBM(X(7),X(13))
1055 T(166)=0*TBM(X(7),X(14))
1056 T(167)=0*TBM(X(7),X(15))
1057 T(168)=10*TBM(X(7),X(16))
1058 T(169)=2*TBM(X(7),X(17))
1059 T(170)=1*TBM(X(7),X(18))
1060 T(171)=10*TBM(X(7),X(19))
1061 T(172)=1*TBM(X(7),X(20))
1062 T(173)=5*TBM(X(7),X(21))
1063 T(174)=5*TBM(X(7),X(22))
1064 T(175)=2*TBM(X(7),X(23))
1065 T(176)=3*TBM(X(7),X(24))
1066 T(177)=5*TBM(X(7),X(25))
1067 T(178)=0*TBM(X(7),X(26))
1068 T(179)=2*TBM(X(7),X(27))
1069 T(180)=0*TBM(X(7),X(28))
1070 T(181)=1*TBM(X(7),X(29))
1071 T(182)=3*TBM(X(7),X(30))
1077 T(183)=1*TBM(X(8),X(9))
1078 T(184)=3*TBM(X(8),X(10))
1079 T(185)=5*TBM(X(8),X(11))
1080 T(186)=0*TBM(X(8),X(12))
1081 T(187)=0*TBM(X(8),X(13))
1082 T(188)=0*TBM(X(8),X(14))
1083 T(189)=2*TBM(X(8),X(15))
1084 T(190)=4*TBM(X(8),X(16))
1085 T(191)=5*TBM(X(8),X(17))
1086 T(192)=2*TBM(X(8),X(18))
1087 T(193)=10*TBM(X(8),X(19))
1088 T(194)=6*TBM(X(8),X(20))
1089 T(195)=0*TBM(X(8),X(21))
1090 T(196)=5*TBM(X(8),X(22))
1091 T(197)=5*TBM(X(8),X(23))
1092 T(198)=2*TBM(X(8),X(24))
1093 T(199)=5*TBM(X(8),X(25))
1094 T(200)=0*TBM(X(8),X(26))
1095 T(201)=5*TBM(X(8),X(27))
1096 T(202)=5*TBM(X(8),X(28))
1097 T(203)=0*TBM(X(8),X(29))
1098 T(204)=2*TBM(X(8),X(30))
1114 T(205)=10*TBM(X(9),X(10))
1115 T(206)=2*TBM(X(9),X(11))
1116 T(207)=1*TBM(X(9),X(12))
1117 T(208)=5*TBM(X(9),X(13))
1118 T(209)=2*TBM(X(9),X(14))
1119 T(210)=0*TBM(X(9),X(15))
1120 T(211)=3*TBM(X(9),X(16))
1121 T(212)=0*TBM(X(9),X(17))
1122 T(213)=2*TBM(X(9),X(18))
1123 T(214)=0*TBM(X(9),X(19))
1124 T(215)=0*TBM(X(9),X(20))
1125 T(216)=4*TBM(X(9),X(21))
1126 T(217)=0*TBM(X(9),X(22))
1127 T(218)=5*TBM(X(9),X(23))
1128 T(219)=2*TBM(X(9),X(24))
1129 T(220)=0*TBM(X(9),X(25))
1130 T(221)=5*TBM(X(9),X(26))
1131 T(222)=2*TBM(X(9),X(27))
1132 T(223)=2*TBM(X(9),X(28))
1133 T(224)=5*TBM(X(9),X(29))
1134 T(225)=2*TBM(X(9),X(30))
1140 T(226)=5*TBM(X(10),X(11))
1141 T(227)=5*TBM(X(10),X(12))
1142 T(228)=6*TBM(X(10),X(13))
1143 T(229)=0*TBM(X(10),X(14))
1144 T(230)=1*TBM(X(10),X(15))
1145 T(231)=5*TBM(X(10),X(16))
1146 T(232)=5*TBM(X(10),X(17))
1147 T(233)=0*TBM(X(10),X(18))
1148 T(234)=5*TBM(X(10),X(19))
1149 T(235)=2*TBM(X(10),X(20))
1150 T(236)=3*TBM(X(10),X(21))
1151 T(237)=5*TBM(X(10),X(22))
1152 T(238)=0*TBM(X(10),X(23))
1153 T(239)=5*TBM(X(10),X(24))
1154 T(240)=2*TBM(X(10),X(25))
1155 T(241)=10*TBM(X(10),X(26))
1156 T(242)=10*TBM(X(10),X(27))
1157 T(243)=1*TBM(X(10),X(28))
1158 T(244)=5*TBM(X(10),X(29))
1159 T(245)=2*TBM(X(10),X(30))
1165 T(246)=0*TBM(X(11),X(12))
1166 T(247)=0*TBM(X(11),X(13))
1167 T(248)=1*TBM(X(11),X(14))
1168 T(249)=2*TBM(X(11),X(15))
1169 T(250)=1*TBM(X(11),X(16))
1170 T(251)=0*TBM(X(11),X(17))
1171 T(252)=2*TBM(X(11),X(18))
1172 T(253)=0*TBM(X(11),X(19))
1173 T(254)=0*TBM(X(11),X(20))
1174 T(255)=0*TBM(X(11),X(21))
1175 T(256)=6*TBM(X(11),X(22))
1176 T(257)=6*TBM(X(11),X(23))
1177 T(258)=0*TBM(X(11),X(24))
1178 T(259)=4*TBM(X(11),X(25))
1179 T(260)=5*TBM(X(11),X(26))
1180 T(261)=3*TBM(X(11),X(27))
1181 T(262)=2*TBM(X(11),X(28))
1182 T(263)=2*TBM(X(11),X(29))
1183 T(264)=10*TBM(X(11),X(30))
1189 T(265)=5*TBM(X(12),X(13))
1190 T(266)=5*TBM(X(12),X(14))
1191 T(267)=2*TBM(X(12),X(15))
1192 T(268)=0*TBM(X(12),X(16))
1193 T(269)=0*TBM(X(12),X(17))
1194 T(270)=0*TBM(X(12),X(18))
1195 T(271)=0*TBM(X(12),X(19))
1196 T(272)=2*TBM(X(12),X(20))
1197 T(273)=0*TBM(X(12),X(21))
1198 T(274)=4*TBM(X(12),X(22))
1199 T(275)=5*TBM(X(12),X(23))
1200 T(276)=10*TBM(X(12),X(24))
1201 T(277)=1*TBM(X(12),X(25))
1202 T(278)=0*TBM(X(12),X(26))
1203 T(279)=0*TBM(X(12),X(27))
1204 T(280)=0*TBM(X(12),X(28))
1205 T(281)=0*TBM(X(12),X(29))
1206 T(282)=1*TBM(X(12),X(30))
1282 T(283)=2*TBM(X(13),X(14))
1283 T(284)=0*TBM(X(13),X(15))
1284 T(285)=4*TBM(X(13),X(16))
1285 T(286)=2*TBM(X(13),X(17))
1286 T(287)=2*TBM(X(13),X(18))
1287 T(288)=1*TBM(X(13),X(19))
1288 T(289)=0*TBM(X(13),X(20))
1289 T(290)=6*TBM(X(13),X(21))
1290 T(291)=2*TBM(X(13),X(22))
1291 T(292)=1*TBM(X(13),X(23))
1292 T(293)=5*TBM(X(13),X(24))
1293 T(294)=5*TBM(X(13),X(25))
1294 T(295)=0*TBM(X(13),X(26))
1295 T(296)=0*TBM(X(13),X(27))
1296 T(297)=1*TBM(X(13),X(28))
1297 T(298)=5*TBM(X(13),X(29))
1298 T(299)=5*TBM(X(13),X(30))
1384 T(300)=2*TBM(X(14),X(15))
1385 T(301)=1*TBM(X(14),X(16))
1386 T(302)=0*TBM(X(14),X(17))
1387 T(303)=5*TBM(X(14),X(18))
1388 T(304)=3*TBM(X(14),X(19))
1389 T(305)=10*TBM(X(14),X(20))
1390 T(306)=0*TBM(X(14),X(21))
1391 T(307)=0*TBM(X(14),X(22))
1392 T(308)=4*TBM(X(14),X(23))
1393 T(309)=2*TBM(X(14),X(24))
1394 T(310)=0*TBM(X(14),X(25))
1395 T(311)=0*TBM(X(14),X(26))
1396 T(312)=4*TBM(X(14),X(27))
1397 T(313)=2*TBM(X(14),X(28))
1398 T(314)=5*TBM(X(14),X(29))
1399 T(315)=5*TBM(X(14),X(30))
1411 T(316)=4*TBM(X(15),X(16))
1412 T(317)=5*TBM(X(15),X(17))
1413 T(318)=1*TBM(X(15),X(18))
1414 T(319)=0*TBM(X(15),X(19))
1415 T(320)=1*TBM(X(15),X(20))
1416 T(321)=0*TBM(X(15),X(21))
1417 T(322)=5*TBM(X(15),X(22))
1418 T(323)=0*TBM(X(15),X(23))
1419 T(324)=2*TBM(X(15),X(24))
1420 T(325)=0*TBM(X(15),X(25))
1421 T(326)=0*TBM(X(15),X(26))
1422 T(327)=5*TBM(X(15),X(27))
1423 T(328)=1*TBM(X(15),X(28))
1424 T(329)=1*TBM(X(15),X(29))
1425 T(330)=0*TBM(X(15),X(30))
1435 T(331)=0*TBM(X(16),X(17))
1436 T(332)=3*TBM(X(16),X(18))
1437 T(333)=0*TBM(X(16),X(19))
1438 T(334)=2*TBM(X(16),X(20))
1439 T(335)=2*TBM(X(16),X(21))
1440 T(336)=0*TBM(X(16),X(22))
1441 T(337)=2*TBM(X(16),X(23))
1442 T(338)=0*TBM(X(16),X(24))
1443 T(339)=5*TBM(X(16),X(25))
1444 T(340)=0*TBM(X(16),X(26))
1445 T(341)=5*TBM(X(16),X(27))
1446 T(342)=2*TBM(X(16),X(28))
1447 T(343)=5*TBM(X(16),X(29))
1448 T(344)=10*TBM(X(16),X(30))
1458 T(345)=2*TBM(X(17),X(18))
1459 T(346)=2*TBM(X(17),X(19))
1460 T(347)=0*TBM(X(17),X(20))
1461 T(348)=0*TBM(X(17),X(21))
1462 T(349)=0*TBM(X(17),X(22))
1463 T(350)=6*TBM(X(17),X(23))
1464 T(351)=5*TBM(X(17),X(24))
1465 T(352)=3*TBM(X(17),X(25))
1466 T(353)=5*TBM(X(17),X(26))
1467 T(354)=0*TBM(X(17),X(27))
1468 T(355)=0*TBM(X(17),X(28))
1469 T(356)=5*TBM(X(17),X(29))
1470 T(357)=1*TBM(X(17),X(30))
1480 T(358)=5*TBM(X(18),X(19))
1481 T(359)=1*TBM(X(18),X(20))
1482 T(360)=2*TBM(X(18),X(21))
1483 T(361)=10*TBM(X(18),X(22))
1484 T(362)=10*TBM(X(18),X(23))
1485 T(363)=4*TBM(X(18),X(24))
1486 T(364)=0*TBM(X(18),X(25))
1487 T(365)=0*TBM(X(18),X(26))
1488 T(366)=5*TBM(X(18),X(27))
1489 T(367)=0*TBM(X(18),X(28))
1490 T(368)=0*TBM(X(18),X(29))
1491 T(369)=0*TBM(X(18),X(30))
1501 T(370)=0*TBM(X(19),X(20))
1502 T(371)=5*TBM(X(19),X(21))
1503 T(372)=5*TBM(X(19),X(22))
1504 T(373)=1*TBM(X(19),X(23))
1505 T(374)=0*TBM(X(19),X(24))
1506 T(375)=5*TBM(X(19),X(25))
1507 T(376)=2*TBM(X(19),X(26))
1508 T(377)=1*TBM(X(19),X(27))
1509 T(378)=2*TBM(X(19),X(28))
1510 T(379)=10*TBM(X(19),X(29))
1511 T(380)=10*TBM(X(19),X(30))
1513 T(381)=5*TBM(X(20),X(21))
1514 T(382)=2*TBM(X(20),X(22))
1515 T(383)=1*TBM(X(20),X(23))
1516 T(384)=3*TBM(X(20),X(24))
1517 T(385)=1*TBM(X(20),X(25))
1518 T(386)=5*TBM(X(20),X(26))
1519 T(387)=6*TBM(X(20),X(27))
1520 T(388)=5*TBM(X(20),X(28))
1521 T(389)=5*TBM(X(20),X(29))
1522 T(390)=3*TBM(X(20),X(30))
1524 T(391)=4*TBM(X(21),X(22))
1525 T(392)=0*TBM(X(21),X(23))
1526 T(393)=1*TBM(X(21),X(24))
1527 T(394)=0*TBM(X(21),X(25))
1528 T(395)=0*TBM(X(21),X(26))
1529 T(396)=0*TBM(X(21),X(27))
1530 T(397)=5*TBM(X(21),X(28))
1531 T(398)=0*TBM(X(21),X(29))
1532 T(399)=0*TBM(X(21),X(30))
1534 T(400)=5*TBM(X(22),X(23))
1535 T(401)=0*TBM(X(22),X(24))
1536 T(402)=4*TBM(X(22),X(25))
1537 T(403)=4*TBM(X(22),X(26))
1538 T(404)=5*TBM(X(22),X(27))
1539 T(405)=0*TBM(X(22),X(28))
1540 T(406)=2*TBM(X(22),X(29))
1541 T(407)=5*TBM(X(22),X(30))
1543 T(408)=0*TBM(X(23),X(24))
1544 T(409)=4*TBM(X(23),X(25))
1545 T(410)=4*TBM(X(23),X(26))
1546 T(411)=1*TBM(X(23),X(27))
1547 T(412)=0*TBM(X(23),X(28))
1548 T(413)=2*TBM(X(23),X(29))
1549 T(414)=2*TBM(X(23),X(30))
1551 T(415)=5*TBM(X(24),X(25))
1552 T(416)=5*TBM(X(24),X(26))
1553 T(417)=0*TBM(X(24),X(27))
1554 T(418)=1*TBM(X(24),X(28))
1555 T(419)=0*TBM(X(24),X(29))
1556 T(420)=0*TBM(X(24),X(30))
1558 T(421)=1*TBM(X(25),X(26))
1559 T(422)=0*TBM(X(25),X(27))
1560 T(423)=10*TBM(X(25),X(28))
1561 T(424)=1*TBM(X(25),X(29))
1562 T(425)=0*TBM(X(25),X(30))
1564 T(426)=0*TBM(X(26),X(27))
1565 T(427)=0*TBM(X(26),X(28))
1566 T(428)=0*TBM(X(26),X(29))
1567 T(429)=0*TBM(X(26),X(30))
1570 T(430)=0*TBM(X(27),X(28))
1571 T(431)=0*TBM(X(27),X(29))
1572 T(432)=10*TBM(X(27),X(30))
1573 T(433)=2*TBM(X(28),X(29))
1574 T(434)=2*TBM(X(28),X(30))
1577 T(435)=2*TBM(X(29),X(30))
1651 P1NEW=0
1652 FOR KAU7=1 TO 435
1653 P1NEW=P1NEW+T(KAU7)
1654 NEXT KAU7
1655 P=-P1NEW
1656 IF P<=M THEN 1670
1657 FOR KEW=1 TO 30
1658 A(KEW)=X(KEW)
1659 NEXT KEW
1661 M=P
1666 GOTO 228
1670 NEXT I
1890 IF M>-3066 THEN 1912 ELSE 1999
1912 PRINT A(1),A(2),A(3),A(4),A(5)
1913 PRINT A(6),A(7),A(8),A(9),A(10)
1914 PRINT A(11),A(12),A(13),A(14),A(15)
1915 PRINT A(16),A(17),A(18),A(19),A(20)
1916 PRINT A(21),A(22),A(23),A(24),A(25)
1917 PRINT A(26),A(27),A(28),A(29),A(30)
1927 PRINT M,JJJJ
1999 NEXT JJJJ

This BASIC computer program was run with the IBM basica/D interpreter, and the output produced during the first 8.3 hours of running is presented below. What immediately follows is a manual copy from the computer screen.

17 2 27 19 6
4 15 16 9 10
22 5 3 26 30
21 18 29 14 25
1 23 24 11 13
12 28 7 8 20
-3062 -29395

17 2 27 26 6
4 15 16 9 10
22 5 3 25 30
21 18 29 14 19
1 23 24 11 13
12 28 7 8 20
-3065 -28145

17 2 27 19 6
4 15 16 9 10
22 5 3 26 30
21 18 29 14 25
1 23 24 11 13
12 28 7 8 20
-3062 -27947

3062 is optimal, Loiola et al. (2007, p. 668). Interpreted in accordance with line 1912 through line 1927, the output through JJJJ=-27947 was produced during the first 8.3 hours of running on a personal computer with an Intel 2.66 GHz. chip and the IBM basica/D interpreter.

References

Elshafei, A. N., "Hospital Layout as a Quadratic Assignment Problem," Operational Research Quarterly 28, 167-179 (1977).

Gavett. J. W. and N. V. Plyter, "The Optimal Assignment of Facilities to Locations by Branch and Bound," Operations Research 14, 210-232 (Mar.-Apr., 1966).

Heragu, S. S. Facilities Design, Third Edition. Boca Raton, Florida: CRC Press, 2008.

Land, A. H., "A Problem of Assignment with Inter-Related Costs," Operational Research Quarterly 14, 185-199 (June 1963).

Loiola, E. M., N. M. M. de Abreu, P. O. Boaventura-Netto, P. Hahn, and T. Querido, "A Survey for the Quadratic Assignment Problem," European Journal of Operational Research 176, 657-690 (2007).

Nugent,C. E., T. E. Vollmann, and J. Ruml, "An Experimental Comparison of Techniques for the Assignment of Facilities to Locations," Operations Research 16, 150-173 (Jan.-Feb., 1966).

Pierce, J. F. and W. B. Crowston, "Tree-Search Algorithms for Quadratic Assignment Problems," Naval Research Logistics Quarterly 18, 1-36 (1971).