519574602 发表于 2014-1-3 20:59

求问一个货车环游的TSP问题

model:
sets:
city/1..10/:u;
link(city,city):d,x;
endsets
data:
d=
0        43        31        1000        1000        6        41        4        1000        28       
43        0        1000        1000        1000        4        4        4        1000        1000       
31        1000        0        8        1000        1000        1000        1000        7        18       
1000        1000        8        0        17        1000        19        1000        5        13       
1000        1000        1000        17        0        1000        1000        1000        11        9       
6        4        1000        1000        1000        0        4        2        1000        1000       
41        4        1000        19        1000        4        0        1        1000        1000       
4        4        1000        1000        1000        2        1        0        1000        1000       
1000        1000        7        5        11        1000        1000        1000        0        10       
28        1000        18        13        9        1000        1000        1000        10        0       
;
enddata
min=@sum(link:d*x);
@for(city(j):@sum(city(i)|j#ne#i:x(i,j))=1);
@for(city(i):@sum(city(j)|j#ne#i:x(i,j))=1);
@for(link(i,j)|i#ne#j#and#i#gt#1:u(i)-u(j)+10*x(i,j)<=9);
@for(link:@bin(x));
这是一个教程里教的用lingo求解TSP的程序,现在我想应用他来实现另一功能。
就是对每个城市i,都有一个剩余值rest(i),若为正,则表示货物多了;若负,则表示货物缺了。现在我有一辆货车进行环游,每到一个城市就经过装卸货使该地的rest变为零,全转移到货车上。要求货车上的剩货大于0小于某限额,目标函数仍是路径最短。求问约束条件如何编?
页: [1]
查看完整版本: 求问一个货车环游的TSP问题