lingo求解优化问题

lingo求解优化问题

ID:7234850

大小:1.39 MB

页数:91页

时间:2018-02-08

lingo求解优化问题_第1页
lingo求解优化问题_第2页
lingo求解优化问题_第3页
lingo求解优化问题_第4页
lingo求解优化问题_第5页
资源描述:

《lingo求解优化问题》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、首页91一、Lingo简介1.目标函数一个函数解析式,你希望求它的最大或最小值max=函数解析式;或min=函数解析式;例max=3*b+2*c^2;min=b^(1/3)-c*k;Lingo的语句以;号结束。2.运算加(+),减(-),乘(*),除(/),乘方(x^a)3.变量用字母或字母数字的组合表示例a,b,cc1,x1。Lingo的变量缺省值为非负数。4.限制条件一组等式或不等式。Lingo的>,<与>=,<=等价。示例程序1min=3*x1+5*x2;!x1,x2是非负变量;3*x1+2*x2>=36;913*x1+5*x2>=45;Lingo

2、的注释语句用!开头用;结束。5.变量类型变量类型说明@bin(变量名);限制该变量为0或1。@bnd(a,变量名,b);限制该变量介于a,b之间。@free(变量名);允许该变量为负数。@gin(变量名);限制该变量为整数。91二、Lingo高级sets语句连续六个月的产量,可以用x1,x2,x3,x4,x5,x6表示,但十二个月的产量用同样的方法表示就显繁琐。Lingo可以通过sets语句设置数组功能使问题变得简单。例定义数组x,有x(1),x(2),x(3),x(4)…x(12)个成员,用以表示十二个月的产量。sets:r/1..12/:x;!r是组

3、的类型名,x数组名;endsets;sets语句以sets开头,endsets结束。示例程序2sets:mat/1..4/:x;!mat是组的类型名,x数组名;endsetsmin=50*x(1)+20*x(2)+30*x(3)+80*x(4);400*x(1)+200*x(2)+150*x(3)+500*x(4)>=500;3*x(1)+2*x(2)>=6;2*x(1)+2*x(2)+4*x(3)+4*x(4)>=10;2*x(1)+4*x(2)+x(3)+5*x(4)>=8;91data语句有时,我们要用到常数数组,比如在400*x(1)+200*x

4、(2)+150*x(3)+500*x(4)>=500中,x(1),x(2),x(3),x(4)的系数分别为400,200,150,500,此时,可用data语句。例定义数组a,其中a(1)=400,a(2)=200,a(3)=150,a(4)=500。sets:l/1..4/:a,x;endsetsdata:a=400200150500;enddatadata语句是以data开头,enddata结尾。示例程序3sets:l/1..4/:x,a;91endsetsdata:a=7239;!a(1)=7,a(2)=2,a(3)=3,a(4)=9;enddat

5、amax=x(1)*a(3)+x(2)*a(1)+x(3)*a(4)+x(4)*a(2);x(1)+x(4)-x(2)-x(3)

6、):b(i)

7、b(i)*a(i));!等价于max=b(1)+b(2)+b(3)+b(4)+b(1)/a(1)+b(2)/a(2)+b(3)/a(3)+b(4)/a(4);@for(r(i):b(i)

8、ed(1);g(2)=g(1)+y(2)*(@sum(m(i):x(i))-x(

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。