用LINGO求解整数规划_第1页
用LINGO求解整数规划_第2页
用LINGO求解整数规划_第3页
用LINGO求解整数规划_第4页
用LINGO求解整数规划_第5页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

用LINGO求解整数规划LINGO软件用于线性或非线性编程(无论是连续编程还是整数编程),因此它包括LINDO函数。在LINGO中,输入总是从model:开始,以end结束;中间语句必须以“;”开头分离;LINGO不区分大小写;目标函数使用max=;或min=;给出(注意等号“=”)。LINDO中的所有函数都以“”符号开始。例如,在约束中gin(x1)表示x1是整数,而bin(x1)表示x1是0-1的整数。在当前的LINDO中,默认设置假设所有变量都是非负的。函数中变量的定义;GIN(X):将X限制为整数BIN(X):限定变量X为0或1。FREE(X):取消对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的伽玛函数的自然对数符号(x)如果x0返回-1;否则,返回1 smax (x1,x2,xn)返回x1,x2,xn smin (x1,x2,xn)返回x1,x2,xn示例1:整数规划模型可以用LINGO输入,如下所示:型号:最大值=5 * x1 8 * x2!*不能省略x1 x2=6;约束和目标函数可以写在模型和结束之间的任何地方5 * x1=45-9 * x2; gin(x1); gin(x2);与LINDO不同,它不能在结束后写入。目标运算后,最优解为x1=0,x2=5,最优值为40。示例2:线性规划中的应用最大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 * x3x1 2 * x2 x3=182 * x1 x2 3 * x3=16x1 x2 x3=10 free(x3);然后按下运行按钮,获得模型的最优解,如下所示:目标值: 46.00000可变价值降低成本x1 14.00000 0。x2 0。1.x3 -4。0.因此,当x1=14,x2=0,x3=-4时,模型获得最优值,最优值为46。注:用LINGO求解线性规划时,如果自变量都是非负的,LINGO输入的信息与模型基本相同;如果自变量是自由变量,函数free可用于将系统默认非负变量定义为自由变量,如例1中的x3。例3:用LINGO解决整数线性规划问题;1.模型的输入利用LINGO求解上述整数规划模型,LINGO程序如下:型号:max=3 * x1 4 * x2 8 * x3-100 * y1-150 * y2-200 * y3;2 * x1 4 * x2 8 * x3=5002 * x1 3 * x2 4 * x3=300x1 2 * x2 3 * x3=1003 * x1 5 * x2 7 * x3=700x1=200 * y1x2=150 * y2x3=300 * y3 GIN(x1); GIN(x2); GIN(x3); BIN(y1); BIN(y2); BIN(y3);目标2.履行点击LINGO菜单下的SOLVE键,或按CTRL键获得问题的解决方案。这个问题的解决方法是:最优值是:200。当使用LINGO解决此问题时,系统会弹出一个名为解决方案报告的文本框,其中包含解决方案的详细信息,如下所示:行=8变量=6个整数变量=6(都是线性的)非零=28约束非零=18(4为- 1)密度=0.500abs值中的最小和最大元素=1.00000 700.000编号: 7编号=: 0编号: 0,Obj=最大,GUBs=3单列=0在步骤:找到全局最优解4目标值: 200.0000分支计数: 0可变价值降低成本X1 100.0000 -3。X2 0。-4。X3 0。-8。Y1 1。100.0000Y2 0。150.0000Y3 0。200.0000行松弛或剩余双重价格1 200.0000 1。23000000。3 100.0000 0。4 0.0.54000000。6 100.0000 0。7 0.0.8 0.0.3.LINGO程序注释模型:开始标志模型:LINGO模型程序。结束:隐语模型程序的结束标记。max=3 * x1 4 * x2 8 * x3-100 * y1-150 * y2-200 * y3:表示目标函数是问题寻求最大值。2*x1 4*x2 8*x3=500:对应约束,其他相似。GIN(x1):对应的约束条件是整数,该函数用于将变量限制为整数,其余条件类似。BIN(y1):对应的约束条件是一个0-1的变量,该函数用于将该变量限制为二进制整数。示例4,非线性整数规划min=x 3*

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论