用LINGO解决非线性规划问题PPT课件.pptx
- 文档编号:171384
- 上传时间:2022-10-05
- 格式:PPTX
- 页数:21
- 大小:257.88KB
用LINGO解决非线性规划问题PPT课件.pptx
《用LINGO解决非线性规划问题PPT课件.pptx》由会员分享,可在线阅读,更多相关《用LINGO解决非线性规划问题PPT课件.pptx(21页珍藏版)》请在冰豆网上搜索。
LINGO软件基本功能,1,LINGO软件简介,2,一、LINGO介绍二、用LINGO解决基本的线性规划问题三、用LINGO解决非线性规划问题,一、LINGO介绍,3,LINGO是美国LINDO系统公司LindoSystemInc开发的求解数学规划系列软件中的一个,还有LINDO,GINO,Whatsbest等等,它的主要功能是求解大型线形、非线形和整数规划的问题。
在此主要介绍LINGO如何求解规划问题,所使用的LINGO为V12.0版。
一、LINGO介绍,4,LINGOV12.0版可用于求以下各类最优化数学模型:
LP,LinearProgram线性规划QuadraticProgram二次规划IntegerLinearProgram整数线性规划IntegerQuadraticProgram整数二次规划PureIntegerLinearProgram纯整数线性规划PureIntegerQuadraticProgram纯整数二次规划NonlinearProgram非线性规划IntegerNonlinearProgram整数非线性规划PureIntegerNonlinearProgram纯整数非线性规划,QP,ILP,IQPPILP,PIQP,NLPINLPPINLP,一、LINGO介绍,5,LINGO的主要功能特色为:
既能求解线性规划问题,也有一定求解非线性规划问题的能力;输入模型简练直观;运行速度快、计算能力强;,一、LINGO介绍,6,LINGO的主要功能特色为:
内置建模语言,提供几十个内部函数,从而能以较少的语句,较直观的方式描述较大规模的优化模型;将集合的概念引入编程语言,很容易将实际问题转换为LINGO模型;能方便地与Excel、数据库等其他软件交换数据。
二、用LINGO解决基本的线性规划问题,例1求解如下的线性规划模型:
7,二、用LINGO解决基本的线性规划问题,8,我们编辑一个LINGO程序:
MAX=50*X1+70*X2;X1+3*X2=18;,!
目标函数;!
X1,X2为决策变量;,2*X1+X2=16;4*X2=20;,!
第二到四行均为约束条件,二、用LINGO解决基本的线性规划问题,我们编辑程序并求解后,得到LINGOModel窗口、Solutionreport窗口和Solverstatus窗口如下:
9,二、用LINGO解决基本的线性规划问题,10,通过此例我们对LINGO有了一个基本的认识,下面我们来总结一下LINGO语法规定:
求目标函数的最大值或最小值分别用MAX=或MIN=来表示;每个语句必须以分号“;”结束,每行可以有多个语句,语句可以跨行;变量名称必须以字母(A-Z)开头,由字母、数字(0-9)和下划线所组成,长度不超过32个字符,不区分大小写;,二、用LINGO解决基本的线性规划问题,11,可以给语句加上标号,例如OBJMAX=50*X1+70*X2(乘号*不能省略);以!
开头,以“;”结束的语句是注释语句,显示为绿色;如果对变量的取值范围没有做特殊说明,则所有默认的决策变量均为非负数;LINGO模型以语句一般以“MODEL:
”开头,以“END”结束,对于比较简单的模型,这两语句可以省略变量界定函数(见下页),二、用LINGO解决基本的线性规划问题,12,8.变量界定函数:
BND(L,x,U),即L=x=U;注意:
没有想象中的的SLB函数与SUB函数;BIN(x),限制x仅取整数0或1;注意:
不是INT(x)函数;FREE(x),取消对x的符号限制;GIN(x),限制x仅取非负整数。
三、用LINGO解决非线性规划问题,例2求解二次规划问题:
MODEL:
MIN=x2+y2-2*x-4*y;!
目标函数;,13,!
x,y为决策变量;,!
第二、三行均为约束条件;,x+y=1;y=0.5;end,三、用LINGO解决非线性规划问题,14,三、用LINGO解决非线性规划问题,结果是:
当x=0.5,y=0.5时取得最小值,最小值为-2.5注意比较:
当去掉第二个约束条件y=0.5时,最小值为-3(当x=0,y=1时);当去掉所有约束条件(无条件最值)时,最小值为-5(当x=1,y=2时);,15,三、用LINGO解决非线性规划问题,例3求解非线性规划问题:
16,三、用LINGO解决非线性规划问题,17,三、用LINGO解决非线性规划问题,18,三、用LINGO解决非线性规划问题,例4求解二次规划问题:
直接使用LINGO最大化过程:
max=98*x1+277*x2-x12-0.3*x1*x2-2*x22;x1+x2=100;x1=2*x2;gin(x1);gin(x2);,19,三、用LINGO解决非线性规划问题,20,三、用LINGO解决非线性规划问题,21,结果是:
当x1=35,x2=65时最大利润为11077.50,【说明:
在LINGO11版本中执行上述同样程序后,其结果是:
当x1=36,x2=64取得最大利润11076.80,怀疑是旧版本的算法在数值不均衡时引起的计算错误。
不过当采用最小化目标函数时,却并不出错!
】,
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- LINGO 解决 非线性 规划 问题 PPT 课件