[理学]最优化方法实验指导书2011_16课时.doc
《[理学]最优化方法实验指导书2011_16课时.doc》由会员分享,可在线阅读,更多相关《[理学]最优化方法实验指导书2011_16课时.doc(35页珍藏版)》请在三一文库上搜索。
1、 最优化方法实验指导书(第一版)覃 义 编桂林电子科技大学数学与计算科学学院2011年9月20日实验一 线性规划算法及实现一、实验目的1. 掌握单纯形法在计算机上的实现,熟悉单纯形法的求解步骤。2. 掌握目标函数系数和约束右端项在什么范围内变化时,最优基保持不变。3. 读懂Lingo灵敏度分析报告和求解报告。4. 培养编程与上机调试能力。二、实验课时:4个课时三、实验准备1、熟悉线性规划的图解法及单纯形法解线性规划的原理;2、熟悉两阶段方法(两步法)及大M方法的基本思想及求解步骤;3、了解灵敏度分析的内容,熟悉灵敏度分析步骤;4、熟悉lingo软件的基本操作。5、熟悉Matlab软件的基本命令
2、及其数值计算中的基本命令和函数。四、实验内容课堂实验演示(1)用lingo软件求解线性规划例1:在模型窗口输入:model:max=2*x+3*y;4*x+3*y=10;3*x+5*y12;! the optimal value is :7.454545 ;End如图所示:运行结果如下(点击 工具栏上的solve或点击菜单lingo下的solve即可):Global optimal solution found. Objective value: 7.454545(最优解函数值) Total solver iterations: 2(迭代次数) Variable (最优解) Value Red
3、uced Cost X 1.272727 0.000000 Y 1.636364 0.000000 Row Slack or Surplus Dual Price 1 7.454545 1.000000 2 0.000000 0.9090909E-01 3 0.000000 0.5454545例2:在模型窗口输入:model:max=5*x1+4*x2;x1+3*x2+x3=90;2*x1+x2+x4=80;x1+x2+x5=45;end运行(solve)结果如下:Global optimal solution found. Objective value: 215.0000 Total so
4、lver iterations: 2 Variable Value Reduced Cost X1 35.00000 0.000000 X2 10.00000 0.000000 X3 25.00000 0.000000 X4 0.000000 1.000000 X5 0.000000 3.000000 Row Slack or Surplus Dual Price 1 215.0000 1.000000 2 0.000000 0.000000 3 0.000000 1.000000 4 0.000000 3.000000例3在模型窗口输入:model:min=-x2+2*x3;x1-2*x2+
5、x3=2;x2-3*x3+x4=1;x2-x3+x5=2;end运行结果如下: Global optimal solution found. Objective value: -1.500000 Total solver iterations: 2 Variable Value Reduced Cost X2 2.500000 0.000000 X3 0.5000000 0.000000 X1 6.500000 0.000000 X4 0.000000 0.5000000 X5 0.000000 0.5000000 Row Slack or Surplus Dual Price 1 -1.50
6、0000 -1.000000 2 0.000000 0.000000 3 0.000000 0.5000000 4 0.000000 0.5000000例4:(此例不能用lingo试用版求解)在模型窗口输入:model:min=abs(x)+abs(y)+abs(z);x+y1;2*x+z=4;free(x);free(y);free(z);End求解器状态如下:可看出是非线性模型!运行结果为:(2)用lingo软件进行灵敏度分析实例在模型窗口输入:Lingo模型:model:max=60*x+30*y+20*z;8*x+6*y+z48;4*x+2*y+1.5*z20;2*x+1.5*y+0.
7、5*z8;y5;end求解报告如下(LingoSolve):Global optimal solution found at iteration: 0 Objective value: 280.0000 Variable Value Reduced Cost X 2.000000 0.000000 Y 0.000000 5.000000 Z 8.000000 0.000000 Row Slack or Surplus Dual Price 1 280.0000 1.000000 2 24.00000 0.000000 3 0.000000 10.00000 4 0.000000 10.0000
8、0 5 5.000000 0.000000分析Value,Reduced Cost,Slack or Surplus,Dual Price的意义1、 由Value所在列可知x,y是基变量(因为取值不为0)2、 Reduced Cost(i.e. test indicator)所在列的三个数值表示当变量有微小变化时,目标函数的变化率。例如:第2个数5表示当变量y增加一个单位时,最优目标函数值减少的量。例如:当y=1时,最优目标函数值为280-5=275。可通过如下模型可检验:model:max=60*x+30*y+20*z;8*x+6*y+z48;4*x+2*y+1.5*z20;2*x+1.5*
9、y+0.5*z8;y5;y=1;end注:基变量的Reduced Cost值为0,只有非基变量的Reduced Cost值才可能不为0;故由value,和Reduced Cost值分析可知y为非基变量;3、 Slack or Surplus所在列的各数表示各行的松弛变量的取值。目标函数行的Slack or Surplus值没啥意义,不用考虑。可通过如下模型检验:model:max=60*x+30*y+20*z;8*x+6*y+z+s1=48;4*x+2*y+1.5*z+s2=20;2*x+1.5*y+0.5*z+s3=8;y+s4=5;end4、 Dual Price(对偶价格,影子价格)所在
10、列的各数表示约束右端项有微小变化时,最优目标函数值的变化率。注,只有紧约束行的Dual Price值不为0。例如:要检验第二行约束,可通过如下模型:model:max=60*x+30*y+20*z;8*x+6*y+z48;4*x+2*y+1.5*z21;2*x+1.5*y+0.5*z8;y5;end灵敏度分析报告如下(打开LingoRange即可,但必须先设置:LingoOptionsGeneral solverDual computationsPrices and Range)Ranges in which the basis is unchanged: Objective Coeffici
11、ent Ranges Current Allowable Allowable Variable Coefficient Increase Decrease X 60.00000 20.00000 4.000000 Y 30.00000 5.000000 INFINITY Z 20.00000 2.500000 5.000000 Righthand Side Ranges Row Current Allowable Allowable RHS Increase Decrease 2 48.00000 INFINITY 24.00000 3 20.00000 4.000000 4.000000 4
12、 8.000000 2.000000 1.333333 5 5.000000 INFINITY 5.000000分析Objective Coefficient Ranges,Righthand Side Ranges的意义5、 Objective Coefficient Ranges表示目标函数行各系数在某个范围内变化时,最优基保持不变。以变量x的系数为例:当x的系数在内取值时,最优基保持不变。此时,最优解不变,最优目标函数值变了。例如:可通过如下模型检验:model:max=56.0001*x+30*y+20*z;8*x+6*y+z48;4*x+2*y+1.5*z20;2*x+1.5*y+0
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 理学 优化 方法 实验 指导书 2011 _16 课时
链接地址:https://www.31doc.com/p-1986889.html