Program

You might also like

Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 5

model:

!shortest path problem;


!objective function;
min=35*x12+31*x13+46*x14+22*x25+23*x26+42*x27+45*x35+22*x36+39*x37+21*x45+32*x
46+26*x47+39*x58+42*x59+36*x68+42*x69+39*x610+52*x611+37*x710+46*x711+37*x812+
23*x912+34*x913+32*x1012+27*x1013+44*x1113+25*x1214+39*x1314;
!subject to;
x12+x13+x14=1;
x25+x26+x27=x12+x52+x62+x72;
x35+x36+x37=x13+x53+x63+x73;
x45+x46+x47=x14+x54+x64+x74;
x58+x59=x25+x35+x45+x85+x95;
x68+x69+x610+x611=x26+x36+x46+x86+x96+x106+x116;
x710+x711=x27+x37+x47+x107+x117;
x812=x58+x68+x128;
x912+x913=x59+x69+x129+x139;
x1012+x1013=x610+x710+x1210+x1310;
x1113=x611+x711+x1311;
x1214=x812+x912+x1012+x1412;
x1314=x913+x1013+x1113+x1413;
x1214+x1314=1;

@bin(x12);
@bin(x13);
@bin(x14);
@bin(x25);
@bin(x26);
@bin(x27);
@bin(x35);
@bin(x36);
@bin(x37);
@bin(x45);
@bin(x46);
@bin(x47);
@bin(x58);
@bin(x59);
@bin(x68);
@bin(x69);
@bin(x610);
@bin(x611);
@bin(x710);
@bin(x711);
@bin(x812);
@bin(x912);
@bin(x913);
@bin(x1012);
@bin(x1013);
@bin(x1113);
@bin(x1214);
@bin(x1314);
end
model:
!shortest path problem;
!objective function;
min=35*x12+30*x13+35*x14+40*x25+38*x26+28*x27+45*x36+15*x37+25*x38+25*x47+28*x
48+15*x59+18*x69+20*x610+22*x710+20*x711+48*x810+15*x811+30*x912+28*x1012+30*x
1112;
!subject to;
x12+x13+x14=1;
x25+x26+x27=x12+x52+x62+x72;
x36+x37+x38=x13+x63+x73+x83;
x47+x48=x14+x74+x84;
x59=x25+x95;
x69+x610=x26+x36+x96+x106;
x710+x711=x27+x37+x47+x107+x117;
x810+x811=x38+x48+x108+x118;
x912=x59+x69+x129;
x1012=x610+x710+x810+x1210;
x1112=x711+x811+x1211;
x912+x1012+x1112=1;

@bin(x12);
@bin(x13);
@bin(x14);
@bin(x25);
@bin(x26);
@bin(x27);
@bin(x36);
@bin(x37);
@bin(x38);
@bin(x47);
@bin(x48);
@bin(x59);
@bin(x69);
@bin(x610);
@bin(x710);
@bin(x711);
@bin(x810);
@bin(x811);
@bin(x912);
@bin(x1012);
@bin(x1112);
end
model:
!shortest path problem;
!objective function;
min=20*x12+18*x13+24*x14+14*x25+14*x26+32*x35+24*x36+22*x45+24*x46+17*x57+35*x
58+36*x59+32*x67+24*x68+34*x69+52*x710+20*x711+44*x810+34*x811+29*x910+42*x911
+38*x1012+28*x1112;
!subject to;
x12+x13+x14=1;
x25+x26=x12+x52+x62;
x35+x36=x13+x53+x63;
x45+x46=x14+x54+x64;
x57+x58+x59=x25+x35+x45+x75+x85+x95;
x67+x68+x69=x26+x36+x46+x76+x86+x96;
x710+x711=x57+x67+x107+x117;
x810+x811=x58+x68+x108+x118;
x910+x911=x59+x69+x109+x119;
x1012=x710+x810+x910+x1210;
x1112=x711+x811+x911+x1211;
x1012+x1112=1;

@bin(x12);
@bin(x13);
@bin(x14);
@bin(x25);
@bin(x26);
@bin(x35);
@bin(x36);
@bin(x45);
@bin(x46);
@bin(x57);
@bin(x58);
@bin(x59);
@bin(x67);
@bin(x68);
@bin(x69);
@bin(x710);
@bin(x711);
@bin(x810);
@bin(x811);
@bin(x910);
@bin(x911);
@bin(x1012);
@bin(x1112);
end
20*x12+18*x13+24*x14+14*x25+14*x26+32*x35+24*x36+22*x45+24*x46+33*x57+36*x58+3
6*x59+32*x67+24*x68+34*x69+57*x710+56*x711+44*x810+34*x811+38*x910+42*x911+38*
x1012+28*x1112;

model:
!shortest path problem;
!objective function;
min=24*x12+32*x13+8*x24+70*x25+80*x35+6*x36+30*x37+70*x48+80*x49+70*x58+54*x59
+70*x69+80*x610+70*x79+70*x710+60*x811+54*x911+70*x1011+10*x1112+8*x1113+11*x1
214+44*x1314;
!subject to;
x12+x13=1;
x24+x25=x12+x42+x52;
x35+x36+x37=x13+x53+x63+x73;
x48+x49=x24+x84+x94;
x58+x59=x25+x35+x85+x95;
x69+x610=x36+x96+x106;
x79+x710=x37+x97+x107;
x811=x48+x58+x118;
x911=x49+x59+x69+x79+x119;
x1011=x610+x710+x1110;
x1112+x1113=x811+x911+x1011+x1211+x1211;
x1214=x1112+x1412;
x1314=x1113+x1413;
x1214+x1314=1;
@bin(x12);
@bin(x13);
@bin(x24);
@bin(x25);
@bin(x35);
@bin(x36);
@bin(x37);
@bin(x48);
@bin(x49);
@bin(x58);
@bin(x59);
@bin(x69);
@bin(x610);
@bin(x79);
@bin(x710);
@bin(x811);
@bin(x911);
@bin(x1011);
@bin(x1112);
@bin(x1113);
@bin(x1214);
@bin(x1314);
End

x24+x25=x12+x42+x52;
x35+x36+x37=x13+x53+x63+x73;
x48+x49=x24+x84+x94;
x58+x59=x25+x35+x85+x95;
x69+x610=x36+x96+x106;
x79+x710=x37+x97+x107;
x811=x48+x58+x118;
x911=x49+x59+x69+x79+x119;
x1011=x610+x710+x1110;
x1112+x1113=x811+x911+x1011+x1211+x1311;
x1214=x1112+x1412;
x1314=x1113+x1413;
x1214+x1314=1;

24*x12+32*x13+8*x24+70*x25+80*x35+6*x36+30*x37+70*x48+80*x49+70*x58+54*x59+70*
x69+80*x610+70*x79+70*x710+60*x811+54*x911+70*x1011+10*x1112+8*x1113+11*x1214+
44*x1314;

You might also like