LINGO 01-基础教程

来源:互联网 发布:sqlserver分页查询 编辑:程序博客网 时间:2024/06/07 03:48

我的第一个LINGO程序题:

例:直接用LINGO来解如下二次规划问题:

Max 98x1+277x2-x1.^2-0.3x1x2-2x2.^2(1)

s.t. x1+x2<100 (2)

x1<2x2 (3)

x1,x2>0 为整数(4)

输入窗口如下:

x1+x2<100;max=98*x1+277*x2-x1^2-0.3*x1*x2-2*x2^2;x1<2*x2;@gin(x1);@gin(x2); 
顺序可变,注意分号,x1、x2为整数。


可得:最大利润为 11077.50;最有整数解 X=(35 , 65)。



MODEL:SETS:QUARTERS/1,2,3,4/:DEM,RP,OP,INV;ENDSETSMIN=@SUM(QUARTERS:400*RP+450*OP+20*INV);!@SUM相当于求和符号,可以等价写成@SUN(QUARTERS(i):400*RP(i)+450*OP(i)+20*INV(i));@FOR(QUARTERS(I):RP(I)<40);!可以简化成@FOR(QUARTERS:PR<40);@FOR(QUARTERS(I)|I#GT#1:<span style="white-space:pre"></span>!<span style="font-family: Arial, Helvetica, sans-serif;">#gt#    若左边的运算符严格大于右边的运算符,则为true;否则为flase;</span>INV(I)=INV(I-1)+RP(I)+OP(I)-DEM(I););INV(1)=10+RP(1)+OP(1)-DEM(1);DATA:DEM=40,60,75,25;ENDDATAEND

在上图中,


可得,最小成本 78450;全局最优解RP=(40,40,40,25),OP=(0,10,35,0).


例:求解非线性方程组 x^2+y^2=2

2*x^2+x+y^2+y=4.LINGO代码如下:

model:  x^2+y^2=2;  2*x^2+x+y^2+y=4;end




0 0
原创粉丝点击