版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、1LINGO软件学习软件学习234数学规划模型数学规划模型 实际问题中实际问题中的优化模型的优化模型mixgtsxxxxfzMaxMiniTn, 2 , 1, 0)(. .),(),()(1或x决策变量决策变量f(x)目标函数目标函数gi(x) 0约束条件约束条件数数学学规规划划线性规划线性规划(LP)二次规划二次规划(QP)非线性规划非线性规划(NLP)整数规划整数规划(IP)5线性规划问题的线性规划问题的标准形式标准形式1 12 211 112 2111 12 21max 00n nn nmmmn nmnZcxc xc xa xa xa xba xa xa xbxx目标函数:目标函数:约束
2、条件:约束条件:6非线性规划非线性规划( ) 0,1 ,.,( ) 0,1 ,.,injg xipXx Rh xjq约束集或可行域约束集或可行域78建模时需要注意的几个基本问题 1、尽量使用实数优化,减少整数约束和整数变量尽量使用实数优化,减少整数约束和整数变量2、尽量使用光滑优化,减少非光滑约束的个数尽量使用光滑优化,减少非光滑约束的个数 如:尽量少使用绝对值、符号函数、多个变量求最大如:尽量少使用绝对值、符号函数、多个变量求最大/最小最小值、四舍五入、取整函数等值、四舍五入、取整函数等3、尽量使用线性模型,减少非线性约束和非线性变量的个数尽量使用线性模型,减少非线性约束和非线性变量的个数
3、(如(如x/y 5 改为改为x5y)4、合理设定变量上下界,尽可能给出变量初始值合理设定变量上下界,尽可能给出变量初始值 5、模型中使用的参数数量级要适当模型中使用的参数数量级要适当 (如小于如小于103)9101112输入:model:max=2*x1+3*x2;4*x1+3*x210;3*x1+5*x212;end12121212max z2x3x4x3x10s.t. 3x5x12x ,x0,13 1、选择菜单、选择菜单 LINGO|Solve或者按工具栏的或者按工具栏的 144 4、计算完成后出现、计算完成后出现Solution ReportSolution Report窗口窗口显示模显
4、示模型解的详细信息;型解的详细信息;15 运行状态窗口运行状态窗口Variables(变量数量):(变量数量): 变量总数(变量总数(Total)、)、 非线性变量数(非线性变量数(Nonlinear)、)、 整数变量数(整数变量数(Integer)。)。Constraints(约束数量):(约束数量): 约束总数(约束总数(Total)、)、 非线性约束个数非线性约束个数(Nonlinear)。Nonzeros(非零系数数量):(非零系数数量): 总数(总数(Total)、)、 非线性项系数个数非线性项系数个数(Nonlinear)。Generator Memory Used (K) (内存
5、使用内存使用量量)Elapsed Runtime (hh:mm:ss)(求解花费的时间)(求解花费的时间) 16 运行状态窗口运行状态窗口求解求解器器(求求解程解程序序)状状态框态框当前模型的类型当前模型的类型 :LP,QP,ILP,IQP,PILP, PIQP,NLP,INLP,PINLP (以(以I开头表示开头表示IP,以,以PI开头表示开头表示PIP) 当前解的状态当前解的状态 : Global Optimum, Local Optimum, Feasible, Infeasible“(不可行不可行), Unbounded“(无界无界), Interrupted“(中断中断), Unde
6、termined“(未确定未确定) 解的目标函数值解的目标函数值 当前约束不满足的总量当前约束不满足的总量(不是不不是不满足的约束的个数满足的约束的个数):实数(即使实数(即使该值该值=0,当前解也可能不可行,当前解也可能不可行,因为这个量中没有考虑用上下界因为这个量中没有考虑用上下界命令形式给出的约束)命令形式给出的约束) 目前为止的目前为止的迭代次数迭代次数 17 运行状态窗口运行状态窗口扩展扩展的求的求解器解器(求解求解程序程序)状态状态框框使用的特殊求解程序使用的特殊求解程序 :B-and-B (分枝定界算法分枝定界算法)Global (全局最优求解程序全局最优求解程序)Multist
7、art(用多个初始点求解的程序用多个初始点求解的程序) 目前为止找到的可行目前为止找到的可行解的最佳目标函数值解的最佳目标函数值 目标函数值的界目标函数值的界 特殊求解程序当前运行步数:特殊求解程序当前运行步数:分枝数分枝数(对对B-and-B程序程序);子问题数子问题数(对对Global程序程序);初始点数初始点数(对对Multistart程序程序)有效步数有效步数 18运行程序的运行程序的LINGO报告窗口(如下图)报告窗口(如下图) 注:LINGO不询问是否进行敏感性分析,敏感性分析需要将来通过修改系统选项启动敏感性分析后,再调用“REPORT|RANGE”菜单命令来实现。现在同样可以把
8、模型和结果报告保存在文件中。 19解释解释Objective value: 最优目标值Infeasibilities:不可行性Total solver iterations:单纯形法的迭代次数Variable:变量Value:给出最优解中各变量的值Reduced Cost:各个变量的检验数 Slack or Surplus:约束条件的松驰变量或剩余变量的值Dual Price:202 214、LINGO的每一语句 结束;22程序语句输入的备注:程序语句输入的备注:LINGO总是根据“MAX=”或“MIN=”寻找目标函数,而除注释语句和TITLE语句外的其他语句都是约束条件,因此语句的顺序并不重
9、要 。限定变量取整数值的语句为“GIN(X1)”和“GIN(X2)”,不可以写成“GIN(2)”,否则LINGO将把这个模型看成没有整数变量。LINGO中函数一律需要以“”开头,其中整型变量函数(BIN、GIN)和上下界限定函数(FREE、SUB、SLB)与LINDO中的命令类似。而且0/1变量函数是BIN函数。23数学函数lLINGO提供了大量的标准数学函数:labs(x) 返回x的绝对值lsin(x) 返回x的正弦值,x采用弧度制lcos(x) 返回x的余弦值ltan(x) 返回x的正切值lexp(x) 返回常数e的x次方llog(x) 返回x的自然对数llgm(x) 返回x的gamma函
10、数的自然对数lsign(x) 如果x=0时,返回不超过x的最大整数; 当x12;x1+2*x28;End注意:乘法一定用*28l2、求解线性规划:、求解线性规划: 12121212m in z20 x10 x5x4x24s.t.2x5x5x ,x0model:max=20*x1+10*x2;5*x1+4*x25;end291、解线性规划练习练习2、求解问题052222. .max121212121xxxxxxxtsxxz5,.,2 , 1; 021322. .2min53243232132jxxxxxxxxxxtsxxzj303 、求解5 , 4 , 3 , 2 , 1;1226. .215m
11、in5321432131jxxxxxxxxxtsxxzj4 、 解下列规划0,2413. .min321321321321xxxxxxxxxtsxxx31返回5 、求解问题5 , 4 , 3 , 2 , 1;1226. .215min5321432131jxxxxxxxxxtsxxzj052222.21max1212121xxxxxxxtsxxz6 、求解问题32返回 7、 求下述整数规划问题的最优解求下述整数规划问题的最优解且均取整数值 , 0,5 . 45 . 0 143 223max21212121xxxxxxxxz338、如何在LINGO中求解如下的IQP问题:221211221212
12、12max ( )982770.32. . 100 2 ,0f xxxxx xxstxxxxx x 为整数LINGO代码:max=98*x1+277*x2-x12-0.3*x1*x2-2*x22;x1+x2=100;x12*x2;gin(x1);gin(x2);341桶牛奶 3公斤A1 12小时 8小时 4公斤A2 或获利24元/公斤 获利16元/公斤 50桶牛奶桶牛奶 时间时间480小时小时 至多加工至多加工100公斤公斤A1 制订生产计划,使每天获利最大制订生产计划,使每天获利最大 35元可买到元可买到1桶牛奶,买吗?若买,每天最多买多少桶牛奶,买吗?若买,每天最多买多少? 可聘用临时工人
13、,付出的工资最多是每小时几元可聘用临时工人,付出的工资最多是每小时几元? A1的获利增加到的获利增加到 30元元/公斤,应否改变生产计划?公斤,应否改变生产计划? 每天:每天:例1:加工奶制品的生产计划351桶牛奶 3公斤A1 12小时 8小时 4公斤A2 或获利24元/公斤 获利16元/公斤 x1桶牛奶生产桶牛奶生产A1 x2桶牛奶生产桶牛奶生产A2 获利获利 243x1 获利获利 164 x2 原料供应原料供应 5021 xx劳动时间劳动时间 48081221 xx加工能力加工能力 10031x决策变量决策变量 目标函数目标函数 216472xxzMax每天获利每天获利约束条件约束条件非负
14、约束非负约束 0,21xx线性线性规划规划模型模型(LP)时间时间480小时小时 至多加工至多加工100公斤公斤A1 50桶牛奶桶牛奶 每天每天36模型求解模型求解 OBJECTIVE FUNCTION VALUE 1) 3360.000 VARIABLE VALUE REDUCED COST X1 20.000000 0.000000 X2 30.000000 0.000000 ROW SLACK OR SURPLUS DUAL PRICES 2) 0.000000 48.000000 3) 0.000000 2.000000 4) 40.000000 0.000000 NO. ITERAT
15、IONS= 220桶牛奶生产桶牛奶生产A1, 30桶生产桶生产A2,利润,利润3360元。元。 Max=72*x1+64*x2;x1+x250;12*x1+8*x2480;3*x1100;37模型求解模型求解 reduced cost值表值表示当该非基变量示当该非基变量增加一个单位时增加一个单位时(其他非基变量(其他非基变量保持不变)目标保持不变)目标函数减少的量函数减少的量(对对max型问题型问题) OBJECTIVE FUNCTION VALUE 1) 3360.000 VARIABLE VALUE REDUCED COST X1 20.000000 0.000000 X2 30.0000
16、00 0.000000 ROW SLACK OR SURPLUS DUAL PRICES 2) 0.000000 48.000000 3) 0.000000 2.000000 4) 40.000000 0.000000 NO. ITERATIONS= 2也可理解为:也可理解为:为了使该非基变为了使该非基变量变成基变量,量变成基变量,目标函数中对应目标函数中对应系数应增加的量系数应增加的量38 OBJECTIVE FUNCTION VALUE 1) 3360.000 VARIABLE VALUE REDUCED COST X1 20.000000 0.000000 X2 30.000000 0.
17、000000 ROW SLACK OR SURPLUS DUAL PRICES 2) 0.000000 48.000000 3) 0.000000 2.000000 4) 40.000000 0.000000原料无剩余原料无剩余时间无剩余时间无剩余加工能力剩余加工能力剩余40三三种种资资源源“资源资源” 剩余为零的约束为紧约束(有效约束)剩余为零的约束为紧约束(有效约束) 结果解释结果解释 Max=72*x1+64*x2;x1+x250;12*x1+8*x2480;3*x1100;39 OBJECTIVE FUNCTION VALUE 1) 3360.000 VARIABLE VALUE RE
18、DUCED COST X1 20.000000 0.000000 X2 30.000000 0.000000 ROW SLACK OR SURPLUS DUAL PRICES 2) 0.000000 48.000000 3) 0.000000 2.000000 4) 40.000000 0.000000结果解释结果解释 最优解下最优解下“资源资源”增增加加1单位时单位时“效益效益”的的增量增量 原料增原料增1单位单位, 利润增利润增48 时间加时间加1单位单位, 利润增利润增2 能力增减不影响利润能力增减不影响利润影子价格影子价格Shadow price 35元可买到元可买到1桶牛奶,要买吗?
19、桶牛奶,要买吗? 35 48, 应该买!应该买! 聘用临时工人付出的工资最多每小时几元?聘用临时工人付出的工资最多每小时几元? 2元!元!40对偶计算,包括对偶对偶计算,包括对偶价格和敏感性分析价格和敏感性分析LINGOOptionsGeneral Solver(通用求解程序通用求解程序)选项卡选项卡要使用敏感性分析要使用敏感性分析必须要在这选择必须要在这选择使用敏感性分析使用敏感性分析41RANGES IN WHICH THE BASIS IS UNCHANGED: OBJ COEFFICIENT RANGES VARIABLE CURRENT ALLOWABLE ALLOWABLE COE
20、F INCREASE DECREASE X1 72.000000 24.000000 8.000000 X2 64.000000 8.000000 16.000000 RIGHTHAND SIDE RANGES ROW CURRENT ALLOWABLE ALLOWABLE RHS INCREASE DECREASE 2 50.000000 10.000000 6.666667 3 480.000000 53.333332 80.000000 4 100.000000 INFINITY 40.000000最优解不变时目标最优解不变时目标系数允许变化范围系数允许变化范围 x1系数范围系数范围(6
21、4,96) x2系数范围系数范围(48,72) A1获利增加到获利增加到 30元元/千克,应否改变生产计划千克,应否改变生产计划 x1系数由系数由24 3= 72 增加增加为为30 3= 90,在,在允许范允许范围内围内 不变!不变!(约束条件不变约束条件不变)结果解释结果解释 LINGORange42结果解释结果解释 RANGES IN WHICH THE BASIS IS UNCHANGED: OBJ COEFFICIENT RANGES VARIABLE CURRENT ALLOWABLE ALLOWABLE COEF INCREASE DECREASE X1 72.000000 24.
22、000000 8.000000 X2 64.000000 8.000000 16.000000 RIGHTHAND SIDE RANGES ROW CURRENT ALLOWABLE ALLOWABLE RHS INCREASE DECREASE 2 50.000000 10.000000 6.666667 3 480.000000 53.333332 80.000000 4 100.000000 INFINITY 40.000000影子价格有意义影子价格有意义时约束右端的允时约束右端的允许变化范围许变化范围 原料最多增加原料最多增加10 时间最多增加时间最多增加53 35元可买到元可买到1桶
23、牛奶,每天最多买多少?桶牛奶,每天最多买多少?最多买最多买10桶?桶?(目标函数不变目标函数不变)注意注意: 充分但充分但可能不必要可能不必要43例例2 奶制品的生产销售计划奶制品的生产销售计划 (在例1基础上深加工)4公斤公斤A2 1桶桶牛奶牛奶 3千克千克A1 12小时小时 8小时小时 或或获利获利24元元/公斤公斤 获利获利16元元/公斤公斤 0.8千克千克B12小时小时,3元元1千克千克获利获利44元元/千克千克 0.75千克千克B22小时小时,3元元1千克千克获利获利32元元/千克千克 30元可增加1桶牛奶,3元可增加1小时时间,应否投资?现投资150元,可赚回多少? B1,B2的获
24、利经常有10%的波动,对计划有无影响?每天50桶牛奶,时间480小时至多加工100公斤A1 。制订生产计划,使每天获利最大 。【问题问题】44决策决策变量变量 目标目标函数函数 约束约束条件条件非负约束 0,61xx 出售x1 公斤 A1, x2 公斤 A2, X3公斤 B1, x4公斤 B2X5公斤 A1加工B1, x6公斤 A2加工B2利润6543213332441624xxxxxxzMax原料供应 50436251xxxx劳动时间 48022)(2)(4656251xxxxxx加工能力 10051 xx附加约束 5380 x.x64750 x.x4公斤公斤A2 1桶桶牛奶牛奶 3公斤公斤
25、A1 12小时小时 8小时小时 或或获利获利24元元/公斤公斤 获利获利16元元/公斤公斤 0.8千克千克B12小时小时,3元元1公斤公斤获利获利44元元/公斤公斤 0.75公斤公斤B22小时小时,3元元1公斤公斤获利获利32元元/公斤公斤 【模型分析与假设】【模型分析与假设】 45【模型求解【模型求解 】软件实现软件实现 LINDO 6.1 5043)26251xxxx48022)(2)(4)3656251xxxxxx OBJECTIVE FUNCTION VALUE 1) 3460.800 VARIABLE VALUE REDUCED COST X1 0.000000 1.680000 X
26、2 168.000000 0.000000 X3 19.200001 0.000000 X4 0.000000 0.000000 X5 24.000000 0.000000 X6 0.000000 1.520000ROW SLACK OR SURPLUS DUAL PRICES 2) 0.000000 3.160000 3) 0.000000 3.260000 4) 76.000000 0.000000 5) 0.000000 44.000000 6) 0.000000 32.000000 NO. ITERATIONS= 2600334)26521xxxx44804624)36521xxxxD
27、O RANGE (SENSITIVITY) ANALYSIS? No46 OBJECTIVE FUNCTION VALUE 1) 3460.800 VARIABLE VALUE REDUCED COST X1 0.000000 1.680000 X2 168.000000 0.000000 X3 19.200001 0.000000 X4 0.000000 0.000000 X5 24.000000 0.000000 X6 0.000000 1.520000ROW SLACK OR SURPLUS DUAL PRICES 2) 0.000000 3.160000 3) 0.000000 3.2
28、60000 4) 76.000000 0.000000 5) 0.000000 44.000000 6) 0.000000 32.000000 NO. ITERATIONS= 2【结果解释】【结果解释】每天销售每天销售168 千克千克A2和和19.2 千克千克B1, 利润利润3460.8(元)(元)8桶牛奶加工成桶牛奶加工成A1,42桶牛奶桶牛奶加工成加工成A2,将得到的将得到的24千克千克A1全部加工全部加工成成B1 除加工能力外均为除加工能力外均为紧约束紧约束47 OBJECTIVE FUNCTION VALUE 1) 3460.800 VARIABLE VALUE REDUCED COS
29、T X1 0.000000 1.680000 X2 168.000000 0.000000 X3 19.200001 0.000000 X4 0.000000 0.000000 X5 24.000000 0.000000 X6 0.000000 1.520000ROW SLACK OR SURPLUS DUAL PRICES 2) 0.000000 3.160000 3) 0.000000 3.260000 4) 76.000000 0.000000 5) 0.000000 44.000000 6) 0.000000 32.000000增加1桶牛奶使利润增长3.1612=37.925043)2
30、6251xxxx600334)26521xxxx4增加1小时时间使利润增长3.26 30元可增加1桶牛奶,3元可增加1小时时间,应否投资?现投资150元,可赚回多少?投资投资150元增加元增加5桶牛奶,桶牛奶,可赚回可赚回189.6元。(大于元。(大于增加时间的利润增长)增加时间的利润增长)【结果解释】【结果解释】48B B1 1,B,B2 2的获利有的获利有10%10%的波动,对计划有无影响的波动,对计划有无影响 RANGES IN WHICH THE BASIS IS UNCHANGED: OBJ COEFFICIENT RANGES VARIABLE CURRENT ALLOWABLE
31、ALLOWABLE COEF INCREASE DECREASE X1 24.000000 1.680000 INFINITY X2 16.000000 8.150000 2.100000 X3 44.000000 19.750002 3.166667 X4 32.000000 2.026667 INFINITY X5 -3.000000 15.800000 2.533334 X6 -3.000000 1.520000 INFINITY DO RANGE (SENSITIVITY) ANALYSIS? YesB1获利下降10%,超出X3 系数允许范围B2获利上升10%,超出X4 系数允许范围波
32、动对计划有影响波动对计划有影响生产计划应重新制订:如将生产计划应重新制订:如将x3的系数改为的系数改为39.6计算,会计算,会发现结果有很大变化。发现结果有很大变化。 【结果解释】【结果解释】49问题问题1. 如何下料最节省如何下料最节省 ? 例3 钢管下料 问题问题2. 客户增加需求:客户增加需求:原料钢管原料钢管: :每根每根19米米 4米米50根根 6米米20根根 8米米15根根 客户需求客户需求节省的标准是什么?节省的标准是什么?由于采用不同切割模式太多,会增加生产和管理成本,由于采用不同切割模式太多,会增加生产和管理成本,规定切割模式不能超过规定切割模式不能超过3种。如何下料最节省?
33、种。如何下料最节省?5米米10根根 50按照客户需要在一根原料钢管上安排切割的一种组合。按照客户需要在一根原料钢管上安排切割的一种组合。 切割模式余料余料1 1米米 4米米1根根 6米米1根根 8米米1根根 余料余料3米米 4米米1根根 6米米1根根 6米米1根根 合理切割模式合理切割模式的余料应小于客户需要钢管的最小尺寸的余料应小于客户需要钢管的最小尺寸余料余料3米米 8米米1根根 8米米1根根 钢管下料钢管下料 51为满足客户需要,按照哪些种合理模式,每种模式为满足客户需要,按照哪些种合理模式,每种模式切割多少根原料钢管,最为节省?切割多少根原料钢管,最为节省?合理切割模式2. 所用原料钢
34、管总根数最少所用原料钢管总根数最少 模式模式 4米钢管根数米钢管根数6米钢管根数米钢管根数8米钢管根数米钢管根数余料余料(米米)14003231013201341203511116030170023钢管下料问题钢管下料问题1 1 两种两种标准标准1. 原料钢管剩余总余量最小原料钢管剩余总余量最小52xi 按第按第i 种模式切割的原料钢管根数种模式切割的原料钢管根数( (i= =1,2,7) ) 约束约束满足需求满足需求 决策决策变量变量 目标目标1(总余量)(总余量)765432113333xxxxxxxZMin5023454321xxxxx20326542xxxx152753xxx按模式按模
35、式2切割切割12根根, ,按模式按模式5切割切割15根,余料根,余料27米米 模模式式4米米根数根数6米米根数根数8米米根数根数余余料料14003231013201341203511116030170023需需求求502015最优解:最优解:x2=12, x5=15, 其余为其余为0;最优值:最优值:27。整数约束:整数约束: xi 为整数为整数53当余料没有用处时,当余料没有用处时,通常以总根数最少为目标通常以总根数最少为目标 76543212xxxxxxxZMin目标目标2(总根数)(总根数)钢管下料问题钢管下料问题1 1 约束条约束条件不变件不变 最优解:最优解:x2=15, x5=5, x7=5, 其余为其余为0;最优值:最优值:25。5023454321xxxxx20326542xxxx152753xxxxi 为整数按模式按模式2切割切割15根,根,按模式按模式5切割切割5根,根,按模式按模式7切割切割5根,根,共共25根,余料根,余料35米米 虽余料增加虽余料增加8米,但减少了米,但减少了2根根 与与目标目标1的结果的结果“共切割共切割27根,余料根,余料27米米” 相比相比 54例3(生产计划问题生产计划问题)某工厂计划安排生产I II两种产品,已知每种单位产品的利润,生产单
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年度客车驾驶员劳动合同示范文本
- 2025年度国际民间贸易合同模板修订版
- 2025年度车辆租赁合同车辆使用规范合同
- 2025年度航空航天复合材料研发保密合同范本
- 环境治理在城市建设中的关键作用
- 2025年度专利文件兼职翻译服务合同规范文本
- 2025年度绿色生态护坡设计与施工一体化合同样本
- 2025年度工地砖渣环保处理与再生利用合同
- 鲁教版数学六年级上册1.1《生活中的立体图形》听评课记录
- 2025年度航空航天零部件制造合同知识产权条款正规范本
- 《大小比较》(说课课件)二年级下册数学西师大版
- 张五常子女和婚姻合约中的产权执行问题
- 口腔粘膜常见疾病
- 校园安全派出所
- 餐厅值班管理培训
- XXXX无线维护岗位认证教材故障处理思路及案例分析
- 2024年浙江省自然资源集团有限公司招聘笔试参考题库附带答案详解
- 酒店春节营销方案
- 营销管理方案中的定价策略与盈利模式
- 2024年西宁城市职业技术学院高职单招(英语/数学/语文)笔试历年参考题库含答案解析
- 2024年临沂市高三一模(学业水平等级考试模拟试题)物理试卷
评论
0/150
提交评论