1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54
|
\ This file was automatically generated by Zimpl
\ set V := { read "@selftest_cities.dat" as "<1s>" comment "#" use cities };
\ set E := { <i,j> in V * V with i < j };
\ set P[] := powerset(V);
\ set K := indexset(P) \ { 0 };
\ do print cities;
\ do print V;
\ do print E;
\ param px[V] := read "@selftest_cities.dat" as "<1s> 2n" comment "#" use cities;
\ param py[V] := read "@selftest_cities.dat" as "<1s> 3n" comment "#" use cities;
\ defnumb dist(a,b) := sqrt((px[a] - px[b])^2 + (py[a] - py[b])^2);
\ var x[E] binary;
\ minimize cost: sum <i,j> in E : dist(i,j) * x[i, j];
\ subto two_connected: forall <v> in V do (sum <v,j> in E : x[v,j]) + (sum <i,v> in E : x[i,v]) == 2;
\ subto no_subtour: forall <k> in K with card(P[k]) > 2 and card(P[k]) < card(V) - 2 do sum <i,j> in E with <i> in P[k
\ ] and <j> in P[k] : x[i,j] <= card(P[k]) - 1;
\Problem name: @selftest_tspste.zpl
Minimize
cost: +533.081607261027 x$Berlin$Frank@0 +156.630137585332 x$Berlin$Leipzig +565.534260677459 x$Berlin$Heide@2 +610.327780786685 x$Berlin$Karls@3 +392.444900591153 x$Frankfurt$Le@4 +70.0642562224134 x$Frankfurt$He@5
+112.587743560301 x$Frankfurt$Ka@6 +416.850092959088 x$Heidelberg$L@7 +48.2597140480546 x$Heidelberg$K@8 +459.818442431358 x$Karlsruhe$Le@9
Subject to
two_connected_1:
+ x$Berlin$Karls@3 + x$Berlin$Heide@2 + x$Berlin$Leipzig + x$Berlin$Frank@0 = 2
two_connected_2:
+ x$Berlin$Frank@0 + x$Frankfurt$Ka@6 + x$Frankfurt$He@5 + x$Frankfurt$Le@4 = 2
two_connected_3:
+ x$Karlsruhe$Le@9 + x$Heidelberg$L@7 + x$Frankfurt$Le@4 + x$Berlin$Leipzig = 2
two_connected_4:
+ x$Frankfurt$He@5 + x$Berlin$Heide@2 + x$Heidelberg$K@8 + x$Heidelberg$L@7 = 2
two_connected_5:
+ x$Heidelberg$K@8 + x$Frankfurt$Ka@6 + x$Berlin$Karls@3 + x$Karlsruhe$Le@9 = 2
Bounds
0 <= x$Berlin$Frank@0 <= 1
0 <= x$Berlin$Leipzig <= 1
0 <= x$Berlin$Heide@2 <= 1
0 <= x$Berlin$Karls@3 <= 1
0 <= x$Frankfurt$Le@4 <= 1
0 <= x$Frankfurt$He@5 <= 1
0 <= x$Frankfurt$Ka@6 <= 1
0 <= x$Heidelberg$L@7 <= 1
0 <= x$Heidelberg$K@8 <= 1
0 <= x$Karlsruhe$Le@9 <= 1
General
x$Berlin$Frank@0
x$Berlin$Leipzig
x$Berlin$Heide@2
x$Berlin$Karls@3
x$Frankfurt$Le@4
x$Frankfurt$He@5
x$Frankfurt$Ka@6
x$Heidelberg$L@7
x$Heidelberg$K@8
x$Karlsruhe$Le@9
End
|