用lingo解决运输问题
(一)实验目的1. 运输问题求解的编程实现2.掌握使用matlab、Lingo、Excel的求解功能求解运输问题,并对结果进行分析。(二)实验内容《运筹学》清华三版P98页 3.3题Lingo程序代码及运行结果(选取部分):<1>3.3(1):程序代码:model:sets:xiao/1..4/:s;chan/1..3/:h;link(chan,xiao):x,y;endsetsdata:y=3 7 6 42 4 3 24 3 8 5;h=5 2 3;s=3 3 2 2;enddatamin=@sum(link:x*y);@for(xiao(j):@sum(chan(i):x(i,j))=s(j));@for(chan(i):@sum(xiao(j):x(i,j))=h(i));运行结果及结果分析:见附件:Objective value: 32.00000产地1分别将数量为3和2的产品运往销地甲和丁;产地2将数量为2的产品运往销地丙;产地3将数量为3的产品运往销地乙;该运输问题的最小费用为32.<2>3.3(2):程序代码:model:sets:xiao/1..4/:s;chan/1..3/:h;link(chan,xiao):x,y;endsetsdata:y=10 6 7 1216 10 5 95 4 10 10;h=4 9 4;s=5 2 4 6;enddatamin=@sum(link:x*y);@for(xiao(j):@sum(chan(i):x(i,j))=s(j));@for(chan(i):@sum(xiao(j):x(i,j))=h(i));运行结果及结果分析:见附件Objective value: 118.0000产地1将数量为1、2、1的产品分别运往销地甲、乙、丙;产地将数量为3、6的产品运往销地丙、丁;产地3将数量为4的产品运往销地甲。最小费用为118.<3>3.3(3):程序代码:model:sets:xiao/1..5/:s;chan/1..4/:h;link(chan,xiao):x,y;endsetsdata:y=10 20 5 9 102 10 8 30 61 20 7 10 48 6 3 7 5;h=5 6 2 9;s=4 4 6 2 4;enddatamin=@sum(link:x*y);@for(xiao(j):@sum(chan(i):x(i,j))=s(j));@for(chan(i):@sum(xiao(j):x(i,j))<=h(i));运行结果及结果分析:见附件:Objective value: 90.00000产地1分别将数量为1、2的产品运往销地丙、丁;产地2分别将数量为4、2的产品运往销地甲、戊;产地3将数量为2的产品运往销地戊;产地4分别将数量为4、5的产品运往销地乙、丙;最小运费为90.<4>3.3(4):程序代码:model:sets:xiao/1..5/:s;chan/1..5/:h;link(chan,xiao):x,y;endsetsdata:y=10 18 29 13 2213 10000 21 14 160 6 11 3 100009 11 23 18 1924 28 36 30 34;h=100 120 140 80 60;s=100 120 100 60 80;enddatamin=@sum(link:x*y);@for(xiao(j):@sum(chan(i):x(i,j))=s(j));@for(chan(i):@sum(xiao(j):x(i,j))<=h(i));运行结果及结果分析:见附件**** Hidden Message *****
路过留声
路过留声
ok
不会用lingo
页:
[1]