/* Shortest Path Probelem: 0-1 IP version V = 1:5 source = 1 terminal = 5 E = (1, 2), (1, 3), (2, 3), (2, 4), (3, 4), (3, 5), (4, 6), (5, 6), and there inversions w12 = 1, w13 = 5, w23 = 2, w24 = 2, w34 = 3, w35 = 1, w46 = 3, w56 = 4 */ var x12, binary; var x21, binary; var x13, binary; var x31, binary; var x23, binary; var x32, binary; var x24, binary; var x42, binary; var x34, binary; var x43, binary; var x35, binary; var x53, binary; var x46, binary; var x64, binary; var x56, binary; var x65, binary; /* minimize z: 1*(x12+x21) + 5*(x13+x31) + 2*(x23+x32) + 2*(x24+x42) + 3*(x34+x43) + 1*(x35+x53) + 3*(x46+x64) + 4*(x56+x65); */ param w12 := 1; param w13 := 5; param w23 := 2; param w24 := 2; param w34 := 3; param w35 := 1; param w46 := 3; param w56 := 4; minimize z: w12*(x12+x21) + w13*(x13+x31) + w23*(x23+x32) + w24*(x24+x42) + w34*(x34+x43) + w35*(x35+x53) + w46*(x46+x64) + w56*(x56+x65); s.t. source1: x12 + x13 - (x21 + x31) = 1; s.t. terminal5: x53 + x56 - (x35 + x65) = -1; s.t. mid2: x21 + x23 + x24 - (x12 + x32 + x42) = 0; s.t. mid3: x31 + x32 + x34 + x35 - (x13 + x23 + x43 + x53) = 0; s.t. mid4: x42 + x43 + x46 - (x24 + x34 + x64) = 0; s.t. mid6: x64 + x65 - (x46 + x56) = 0; end;