Model窗口,输入所要求解的模型1.2.打开(Open)

上传人:sx****84 文档编号:243037168 上传时间:2024-09-14 格式:PPT 页数:32 大小:148KB
返回 下载 相关 举报
Model窗口,输入所要求解的模型1.2.打开(Open)_第1页
第1页 / 共32页
Model窗口,输入所要求解的模型1.2.打开(Open)_第2页
第2页 / 共32页
Model窗口,输入所要求解的模型1.2.打开(Open)_第3页
第3页 / 共32页
点击查看更多>>
资源描述
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,1.1 新建(New),选用“新建”命令、单击“新建”按钮或直接按F2键可创建一个新的“Model”窗口,输入所要求解的模型。,1.2 打开(Open),选用“打开”命令、单击“打开”按钮或直接按F3键可打开一个已经存在的文本文件。此文件可能是Model文件。,1.3 保存(Save),选用“保存”命令、单击“保存”按钮或直接按F4键保存当前活动窗口(最前台的窗口)中的模型结果、命令序列等保存为文件。,1.4 另存为(Save As),选用“另存为”命令或按F5键可以将当前活动窗口中的内容保存为文本文件,其文件名为你在“另存为”对话框中输入的文件名。利用这种方法可将任何窗口的内容如模型、求解结果或命令保存为文件。,1.5 关闭(Close),选用“关闭”(Close)命令或按F6键将关闭当前活动窗口。若此窗口是新建窗口或已经改变了当前文件的内容,将提示是否想要保存改变后的内容。,5 LINGO WINDOWS 命令,5.1 文件菜单(),1,1.6打印(Print),选用“打印” (Print)命令、单击“打印”按钮或直接按F7键可将当前活动窗口中的内容发送到打印机。,1.7打印设置(Print Setup),选用“打印设置”命令或直接按F8键可将文件输出到指定打印机。,1.8打印预览(Print Preview),选用“打印预览”命令或直接按Shift+F8键可进行打印预览。,1.9输出到日志文件(Log Output),选用“Log Output”命令或按F9键打开一个对话框,用于生成一个日志文件,它存储接下来在“命令窗口”中输入的所有命令。,1.10提交LINGO命令脚本文件(Take Commands),选用“Take Commands”命令或直接按F11键可将命令脚本 (command script)文件提交给系统进程来运行。,1.11引入LINGO文件(Import Lingo File),选用“Import Lingo File”命令或直接按F12键可打开LINGO格式模型的文件,然后LINGO系统会尽可能把模型转化为LINGO语法允许的程序。,1.12退出(Exit),选用“Exit”命令或直接按F10键可以退出LINGO系统。,2,2.1,恢复(Undo),选用“恢复”(Undo)命令或按Ctrl+Z组合键,将撤销上次操作、恢复至其前状态。,2.2,剪切(Cut),选用“剪切”(Cut)命令或按Ctrl+X组合键可将当前选中的内容剪切至剪贴板中。,2.3,复制(Copy),选用“复制”(Copy)命令、单击“复制”按钮或按Ctrl+C组合键可将当前选中的内容复制到剪贴板中。,2.4,粘贴(Paste),选用“粘贴”(Paste)命令、单击“粘贴”按钮或按Ctrl+V组合键可将粘贴板中的当前内容复制到当前插入点的位置。,2.5特定粘贴.(Paste Special),与上面命令不同,它可用于剪贴板中的内容不是文本的情形。,2.6,全选(Select All),选用“,Select All”,命令或按,Ctrl+A,组合键可选定当前窗口中的所有内容。,2.7,匹配小括号,(Match Parenthesis),选用“,Match Parenthesis”,命令、单击“,Match Parenthesis”,按钮或按,Ctrl+P,组合键可为当前选中的开括号查找匹配的闭括号。,2.8,粘贴函数,(Paste Function),选用“,Paste Function”,命令可以将内部函数粘贴到当前插入点。,5.2 编辑菜单 (Edit Menu),3,3.1,求解模型(Slove),选用“求解”命令、单击“Slove”按钮或按Ctrl+S组合键可将当前模型送入内存求解,3.2,求解结果(Solution),选用“Solution”命令、单击“Solution”按钮或直接按Ctrl+O组合键可打开求解结果对话框。可指定查看当前内存中求解结果的那些内容,3.3,查看(Look),选用“Look”命令或直接按Ctrl+L组合键可查看全部的或选中的模型文本内容,3.4,灵敏性分析(Range,Ctrl+R),产生当前模型的灵敏性分析报告:研究当目标函数的费用系数和约束右端项在什么范围(此时假定其它系数不变)时,最优基保持不变。灵敏性分析是在求解模型时作出的,因此在求解模型时灵敏性分析是激活状态,默认是不激活。为激活灵敏性分析,运行LINGO|Options,选择General Solver Tab,在Dual Computations列表框中,选择Prices and Ranges选项。灵敏性分析耗费相当多求解时间,因此速度很关键时,没必要激活。,5.3 LINGO 菜单,4,简单举例:,例5.1,某家具公司制造书桌、餐桌、椅子,所用资源有三种:木料、木工、漆工。生产数据如下表所示:,若要求桌子的生产量不超过5件,如何安排三种产品的生产可使利润最大?,用DESKS、TABLES、CHAIRS分别表示三种产品生产量,建立LP模型,max,=60*desks+30*tables+20*chairs;,8*desks+6*tables+chairs=48;,4*desks+2*tables+1.5*chairs=20;,2*desks+1.5*tables+.5*chairs=8;,tables=5;,求解这个模型,并激活灵敏性分析。,查看报告窗口(Reports Window),结果如下:,5,Global optimal solution found at iteration: 3,3,次迭代后得到全局最优解,Objective value: 280.0000,最优目标函数值:280,Variable Value Reduced Cost,DESKS 2.000000 0.000000,TABLES 0.000000 5.000000,CHAIRS 8.000000 0.000000,最优解中变量值:2个书桌(desks), 0个餐桌(tables), 8个椅子(chairs)。,desks、chairs基变量(非0),tables非基变量(0),Reduced Cost:,最优单纯形表中判别数所在行的变量的系数,表示当变量有微小变动时, 目标函数的变化率。,基变量reduced cost=0, 非基变量 X,j,相应 reduced cost值表示X,j,增加一个单位时目标函数减少(增加)的量ma x (min)型问题。,本例中:,tables的reduced cost=5,表示当非基变量tables值从0变为 1时(此时假定其他非基变量保持不变,但为满足约束条件,基变量显然会发生变化),最优目标函数值 = 280 - 5 = 275。,6,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.00000,5 5.000000 0.000000,Slack(松弛:小于等于) or Surplus(剩余:大于等于):,松驰变量值(即约束离相等差多少),第1行松驰变量 =280(行一表示目标函数,行二对应第一个约束),第2行松驰变量 =24,第3行松驰变量 =0,第4行松驰变量 =0,第5行松驰变量 =5,7,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.00000,5 5.000000 0.000000,DUAL PRICE(对偶价格):,对应约束有微小变动时,目标函数的变化率。,输出结果中对应每一约束有一个对偶价格。若其值为p,表示对应约束中不等式右端项若增加1个单位,目标函数将增加(减少)p个单位max(min)型问题。,显然,若在最优解处约束正好取等号(即“紧约束”,又称有效约束或起作用约束),对偶价格值才可能不是0。,本例中:,第3、4行是紧约束,对应对偶价格值为10,表示当紧约束,3) 4 DESKS + 2 TABLES + 1.5 CHAIRS = 20,变为 3) 4 DESKS + 2 TABLES + 1.5 CHAIRS = 21,时,目标函数值 = 280 +10 = 290。第4行类似。,对非紧约束(如第2、5行是非紧约束),DUAL PRICE =0, 表示对应约束中不等式右端项的微小扰动不影响目标函数。,有时,分析DUAL PRICE,也可对产生不可行问题原因有所了解,8,灵敏度分析(最优解不变的前提下,目标函数系数的变化范围):,Ranges in which the basis is unchanged:,Objective Coefficient Ranges,Current Allowable Allowable,Variable Coefficient Increase Decrease,DESKS 60.00000 20.0 4.0,TABLES 30.00000 5.0 INFINITY,CHAIRS 20.00000 2.5 5.0,目标函数中DESKS变量原来的费用系数为60,允许增加(Allowable Increase)=20、允许减少(Allowable Decrease)=4,说明当它在60-4,60+20 = 56,80范围变化时,最优基保持不变。,TABLES、CHAIRS变量,可类似解释。,由于此时约束没有变化(只是目标函数中某个费用系数发生变化),所以最优基保持不变的意思也就是最优解不变(当然,由于目标函数中费用系数发生了变化,所以最优值会变化)。,9,Righthand Side Ranges,Row Current Allowable Allowable,RHS Increase Decrease,2 48.00000 INFINITY 24.0,3 20.00000 4.0 4.0,4 8.000000 2.0 1.333333,5 5.000000 INFINITY 5.0,第2行约束中右端项(Right Hand Side,简写为RHS)原来为48,当它在48-24,48+ = 24,范围变化时,最优基保持不变。,第3、4、5行可类似解释。不过由于此时约束发生变化,最优基即使不变,最优解、最优值也会发生变化。,灵敏性分析结果表示的是最优基保持不变的系数范围。,由此,也可进一步确定当目标函数的费用系数和约束右端项发生小的变化时,最优基和最优解、最优值如何变化。,10,例5.2,一奶制品加工厂用牛奶生产A,1,A,2,两种奶制品,1桶牛奶可在甲车间用12小时加工成3公斤A,1,,或者在乙车间用8小时加工成4公斤A,2,。根据市场需求,生产的A,1,A,2,全部能售出,且每公斤A,1,获利24元,每公斤A,2,获利16元。现在加工厂每天能得到50桶牛奶的供应,每天正式工人总的劳动时间480小时,并且甲车间每天至多能加工100公斤A,1,,乙车间的加工能力没有限制。,试为该厂制订一个生产计划,使每天获利最大,并进一步讨论以下3个附加问题:,1) 若用35元可以买到1桶牛奶,应否作这项投资?若投资,每天最多购买多少桶牛奶?,2) 若可以聘用临时工人以增加劳动时间,付给临时工人的工资最多是每小时几元?,3) 由于市场需求变化,每公斤A,1,的获利增加到30元,应否改变生产计划?,代码:,max,=72*x1+64*x2;,x1+x2=50;,12*x1+8*x2=480;,3*x11的正整数):N点求解,Barrier: 障碍法 (即内点法),25,4.1 命令行窗口(Open Command Window),选用“Open Command Window”命令或直接按Ctrl+1可打开命令行窗口。,在命令行窗口中可获得命令行界面,在“:”提示符后可以输入命令行命令。,4.2 状态窗口(Status Window),选用“Status Window”命令或直接按Ctrl+2可打开LINGO的求解状态窗口。,若在编译期间没有表达错误,则LINGO将调用适当的求解器来求解模型。当求解器开始运行时,会显示如下的,求解器状态窗口,(LINGO Solver Status)。,5.4 窗口菜单(Windows Menu),26,求解器状态窗口,对监视求解器进展和模型大小有用。,它,提供了一个,中断求解器按钮,(Interrupt Solver),点击它会导致LINGO在下一次迭代时停止求解。,绝大多数情况下,系统能够交还和报告到目前为止的最好解。一个例外是线性规划模型,返回的解无意义,应该被忽略。但这并不是一个问题,因为线性规划通常求解速度很快,很少需要中断。,注意:在中断求解器后,必须小心解释当前解,因为这些解可能根本就不最优解、可能也不是可行解或者对线性规划模型来说就是无价值。,在,中断求解器按钮,的右边的是,关闭按钮,(Close)。点击它可以关闭求解器状态窗口,不过可在任何时间通过选择Windows|Status Window再重新打开。,在,中断求解器按钮,的左下角是标记为,更新时间间隔,(Update Interval)域。系统将根据该域指示的时间(以秒为单位)为周期更新,求解器状态窗口,。可以随意设置该域,若设置为0将导致更长的求解时间系统在更新的时间会超过求解模型的时间。,27,变量框(Variables),Total显示当前模型全部变量数,Nonlinear显示其中非线性变量数,Integers显示其中整数变量数。非线性变量是指它至少处于某一个约束中的非线性关系中。,例如,对约束,X+Y=100;,X和Y都是线性变量。对约束,X*Y=100;,X和Y的关系是二次的,所以X和Y都是非线性变量。对约束,X*X+Y=100;,X是二次方是非线性的,Y虽与X构成二次关系,但与X*X这个整体是一次的,因此Y是线性变量。被计数变量不包括LINGO确定为定值的变量。,例如:,X=1;,X+Y=3;,这里X是1,由此可得Y是2,所以X和Y都是定值,模型中的X和Y都用1和2代换掉。,28,约束(Constraints)框,Total显示当前模型扩展后的全部约束数,Nonlinear显示其中的非线性约束数。非线性约束是该约束中至少有一个非线性变量。如果一个约束中的所有变量都是定值,那么该约束就被剔除出模型(该约束为真),不计入约束总数中。,非零(Nonzeroes)框,Total显示当前模型中全部非零系数的数目,Nonlinear显示其中的非线性变量系数的数目。,内存使用(Generator Memory Used,单位:K)框,显示当前模型在内存中使用的内存量。可以通过使用LINGO|Options命令修改模型的最大内存使用量。,已运行时间(Elapsed Runtime)框,显示求解模型到目前所用的时间,它可能受到系统中别的应用程序的影响。,29,显示当前模型求解器的运行状态。域的含义如下。,域名,含义,可能的显示,Model Class,当前模型的类型(请参阅本书第1章),LP,QP,ILP,IQP,PILP, PIQP,NLP,INLP,PINLP (以I开头表示IP,以PI开头表示PIP),State,当前解的状态,Global Optimum, Local Optimum, Feasible, Infeasible(不可行), Unbounded(无界), Interrupted(中断), Undetermined(未确定),Objective,当前解的目标函数值,实数,Infeasibility,当前约束不满足的总量(不是不满足的约束的个数),实数(即使该值=0,当前解也可能不可行,因为这个量中没有考虑用上下界形式给出的约束),Iterations,目前为止的迭代次数,非负整数,求解器状态(Solver Status)框,30,扩展求解器状态(Extended Solver Status)框,显示几个特殊求解器的运行状态。,包括分枝定界求解器(Branch-and- Bound Solver)、全局求解器(Global Solver)、多初始点求解器(Multistart Solver)。,该框中的域仅当这些求解器运行时才会更新。域的含义如下。,域名,含义,可能的显示,Solver Type,使用的特殊求解程序,B-and-B (分枝定界法),Global (全局最优求解),Multistart(用多个初始点求解),Best Obj,目前为止找到的可行解的最佳目标函数值,实数,Obj Bound,目标函数值的界,实数,Steps,特殊求解程序当前运行步数:,分枝数(对B-and-B程序);,子问题数(对Global程序);,初始点数(对Multistart程序),非负整数,Active,有效步数,非负整数,其余几个命令都是对窗口的排列,这里不作介绍,试一试便知。,31,5.1 帮助主题(Help Menu),选用“Help Menu”可打开LINGO的帮助文件。,5.2 关于LINGO(About Lingo),关于当前LINGO的版本信息等。,5.5 帮助菜单(Help Menu),32,
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸专区 > 课件教案


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!