数学建模 TSP(旅行商问题) Lingo求解
生活随笔
收集整理的這篇文章主要介紹了
数学建模 TSP(旅行商问题) Lingo求解
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
model:
sets:
cities/1..9/:level;
link(cities, cities): distance, x; !距離矩陣;
endsets
data:
distance = 0 200 660 170 127 225 490 420 330 200 0 820 300 90 60 310 225 151 660 820 0 530 770 120 1110 1050 960 170 300 530 0 280 350 600 550 450 127 90 770 280 0 110 370 310 210 225 60 120 350 110 0 280 250 120 490 310 1110 600 370 280 0 290 190 420 225 1050 550 310 250 290 0 160330 151 960 450 210 120 190 160 0 ;
enddata
n = @size(cities);!目標函數;
min=@sum(link:distance * x);@For(cities(k):!進入城市k;@sum(cities(i) | i #ne# k: x(i,k)) = 1;!離開城市k;@sum(cities(j) | j #ne# k: x(k,j)) = 1;);!保證不出現子圈;@for(cities(i) | i #gt# 1:@for(cities(j) | j #gt# 1 #and# i#ne#j:level(i)-level(j) + n*x(i,j) <= n-1););!限制u的范圍以加速模型的求解,保證所加限制并不排除掉TSP問題的最優解;@for(cities(i) | i #gt# 1: level(i) <= n-2);!定義x為 0\1變量;@for(link:@bin(x));
end
?
轉載于:https://www.cnblogs.com/douzujun/p/6682691.html
總結
以上是生活随笔為你收集整理的数学建模 TSP(旅行商问题) Lingo求解的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 如何在c语言中源文件调用另一个源文件的函
- 下一篇: Learning to Rank算法介绍