1、取消对x的符号限制(即可取任意实数包括负数)BND(L,X,U):限制 L= X = ULINGO提供了大量的标准数学函数:abs(x) 返回x的绝对值sin(x) 返回x的正弦值,x采用弧度制cos(x) 返回x的余弦值tan(x) 返回x的正切值exp(x) 返回常数e的x次方log(x) 返回x的自然对数lgm(x) 返回x的gamma函数的自然对数sign(x) 如果x0返回-1;否则,返回1smax(x1,x2,xn) 返回x1,x2,xn中的最大值smin(x1,x2,xn) 返回x1,x2,xn中的最小值例1:整数规划模型在LINGO中可以如下输入:model:Max=5*x1+
2、8*x2; !*号不能省略x1+x2=6; !约束条件和目标函数可以写在model:与end之间的任何位置5*x1=45-9*x2;gin(x1);gin(x2); !和LINDO不同,不能写在end之后end运行后同样得到最优解为x1=0,x2=5,最优值为40。例2:在线性规划中的应用max Z =5X1+3X2+6X3,s.t. X1 +2 X2 + X3 182 X1 + X2 +3 X3 =16X1 + X2 + X3 =10X1 ,X2 0 , X3 为自由变量应用LINGO 来求解该模型,只需要在 lingo窗口中输入以下信息即可:max=5*x1+3*x2+6*x3;x1+2*
3、x2+x3=18;2*x1+x2+3*x3=16;x1+x2+x3=10;free(x3);然后按运行按钮,得到模型最优解,具体如下:Objective value: 46.00000Variable ValueReduced Costx1 14.00000 0.000000x2 0.000000 1.000000x3 -4 .000000 0.000000由此可知,当 x1 =14 , x2 =0 , x3 =-4 时,模型得到最优值,且最优值为 46。说明:在利用LINGO 求解线性规划时,如自变量都为非负的话,在LINGO 中输入的信息和模型基本相同;如自变量为自由变量,可以使用函数 f
4、ree来把系统默认的非负变量定义自由变量,如实例一中的 x3。例3、用LINGO求解整数线性规划问题:1、 模型的输入使用LINGO求解上述整数规划模型,LINGO程序如下:MODEL:max=3*x1+4*x2+8*x3-100*y1-150*y2-200*y3;2*x1+4*x2+8*x3=500;2*x1+3*x2+4*x3=300;x1+2*x2+3*x3=100;3*x1+5*x2+7*x3=700;x1=200*y1;x2=150*y2;x3=300*y3;GIN(x1);GIN(x2);GIN(x3); BIN(y1);BIN(y2);BIN(y3);END2、 执行点击LING
5、O菜单下的SOLVE键,或按CTRL+S键,即可求得问题的解。此问题的解为:,最优值为:200。当运用LINGO求解此问题后,系统会弹出一个名为Solution Report的文本框,其文本框中包含了求解的详细信息,如下:Rows= 8 Vars= 6 No. integer vars= 6 ( all are linear)Nonzeros= 28 Constraint nonz= 18( 4 are +- 1) Density=0.500Smallest and largest elements in abs value= 1.00000 700.000No. 0, Obj=MAX, GUBs 10;5*x-y6;gin(x);gin(y);运行结果:Local optimal solution found at iteration: 124 Objective value: 30.71828 X 1.000000 3.718280 Y 3.000000 18.00000
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1