LINGO教程
6. 6. 选项...(Options...) 从LINGO菜单中选用“Options...”命令、单击“Options...”按钮或直接按Ctrl+I组合键可以改变一些影响LINGO模型求解时的参数。该命令将打开一个含有7个选项卡的窗口,你可以通过它修改LINGO系统的各种参数和选项。如上图。
修改完以后,你如果单击“Apply(应用)”按钮,则新的设置马上生效;如果单击“OK(确定)”按钮,则新的设置马上生效,并且同时关闭该窗口。如果单击“Save(保存)”按钮,则将当前设置变为默认设置,下次启动LINGO时这些设置仍然有效。单击“Default(缺省值)”按钮,则恢复LINGO系统定义的原始默认设置(缺省设置)。 (1)Interface(界面)选项卡 选项组 选项 含义 如果选择该选项,求解程序遇到错误时将Errors In 打开一个对话框显示错误,你关闭该对话Dialogs(错误对框后程序才会继续执行;否则,错误信息话框) 将在报告窗口显示,程序仍会继续执行 如果选择该选项,则LINGO每次启动时会Splash Screen 在屏幕上弹出一个对话框,显示LINGO的(弹出屏幕) 版本和版权信息;否则不弹出 Status Bar 如果选择该选项,则LINGO系统在主窗口最下面一行显示状态栏;否则不显示 General (状态栏) (一般选如果选择该选项,则LINGO系统每次运行Status Window 项) LINGO|Solve命令时会在屏幕上弹出状态(状态窗口) 窗口;否则不弹出 如果选择该选项,则LINGO系统对求解结Terse Output 果报告等将以简洁形式输出;否则以详细(简洁输出) 形式输出 Toolbar 如果选择该选项,则显示工具栏;否则不(工具栏) 显示 Solution Cutoff 小于等于这个值的解将报告为“0”(缺省-9(解的截断) 值是10) File lg4 (extended) 模型文件的缺省保存格式是lg4格式(这Format (lg4,扩展格是一种二进制文件,只有LINGO能读出) (文件格式) 31 /66
LINGO教程
式) lng (text only) 模型文件的缺省保存格式是lng格式(纯(lng,纯文本格文本) 式) 语法配色的行数限制(缺省为1000)。LINGO模型窗口中将LINGO关键此显示为兰色,Line limit 注释为绿色,其他为黑色,超过该行数限(行数限制) 制后则不再区分颜色。特别地,设置行数Syntax 限制为0时,整个文件不再区分颜色。 Coloring 设置语法配色的延迟时间(秒,缺省为0,Delay (延迟) (语法配从最后一次击键算起)。 色) 如果选择该选项,则模型中当前光标所在Paren Match 处的括号及其相匹配的括号将以红色显(括号匹配) 示;否则不使用该功能 Send Reports to Command Window (报告发送到命令窗口) Echo Input (输入信息反Command 馈) Window Line Count (命令窗Limits 口) (行数限制) 如果选择该选项,则输出信息会发送到命令窗口;否则不使用该功能 如果选择该选项,则用File|Take Command命令执行命令脚本文件时,处理信息会发送到命令窗口;否则不使用该功能 命令窗口能显示的行数的最大值为Maximum(缺省为800);如果要显示的内容超过这个值,每次从命令窗口滚动删除的最小行数为Minimum(缺省为400) 命令窗口每次显示的行数的最大值为Page Size LimitLength(缺省为没有限制),显示这么多行(页面大小限后会暂停,等待用户响应;每行最大字符制) 数为Width(缺省为74,可以设定为64-200之间),多余的字符将被截断 (2)General Solver(通用求解器)选项卡 选项组 选项 含义 Generator Memory Limit 缺省值为32M,矩阵生成器使用的内存超(MB)矩阵生成器的内存限制过该限制,LINGO将报告\model (兆) generator ran out of memory\Runtime Limits 运行限制 Iterations 求解一个模型时,允许的最大迭代次数迭代次数 (缺省值为无限) Time (sec) 求解一个模型时,允许的最大运行时间运行时间(缺省值为无限) (秒) 32 /66
LINGO教程
求解时控制对偶计算的级别,有三种可能的设置: Dual Computations ·None: 不计算任何对偶信息; (对偶计算) ·Prices:计算对偶价格(缺省设置); ·Prices and Ranges:计算对偶价格并分析敏感性。 控制重新生成模型的频率,有三种可能的设置: ·Only when text changes:只有当模型Model Regeneration 的文本修改后才再生成模型; (模型的重新生成) ·When text changes or with external references:当模型的文本修改或模型含有外部引用时(缺省设置); ·Always:每当有需要时。 决定求解模型时线性化的程度,有四种可能的设置: Solver Decides:若变量数小于等于12个,则尽可能全部线性化;否则不做任何Degree 线性化(缺省设置) (线性化程·None:不做任何线性化 度) ·Low:对函数@ABS(), @MAX(), @MIN(), @SMAX(), @SMIN(),以及二进制变量与连Linearization续变量的乘积项做线性化 (线性化) ·High:同上,此外对逻辑运算符#LE#, #EQ#, #GE#, #NE#做线性化 Big M(线性化的大M系设置线性化的大M系数(缺省值为106)。 数) Delta(线性化的误差设置线性化的误差限(缺省值为10-6)。 限) 选择该选项可以保持与LINGO4.0以前的Allow Unrestricted Use of 版本兼容:即允许使用基本集合的成员名Primitive Set Member Names 称直接作为该成员在该集合的索引值(允许无限制地使用基本集(LINGO4.0以后的版本要求使用@INDEX合的成员名) 函数)。 Check for Duplicate Names 选择该选项,LINGO将检查数据和模型中in Data and Model(检查数据的名称是否重复使用,如基本集合的成员和模型中的名称是否重复使名是否与决策变量名重复。 用) Use R/C format names for MPS 在MPS文件格式的输入输出中,将变量和I/O (在MPS文件格式的输入行名转换为R/C格式 输出中使用R/C格式的名称) 33 /66
LINGO教程
(3)Linear Solver(线性求解器)选项卡 选项组 选项 含义 求解时的算法,有四种可能的设置: ·Solver Decides:LINGO自动选择算法 Method (缺省设置) 求解方法 ·Primal Simplex:原始单纯形法 ·Dual Simplex:对偶单纯形法 ·Barrier: 障碍法 (即内点法) Initial Linear 控制线性模型中约束满足的初始误差限(缺Feasibility Tol 初始线-6省值为3*10) 性可行性误差限 Final Linear Feasibility 控制线性模型中约束满足的最后误差限(缺Tol. 最后线性可行性误差-7省值为10) 限 控制是否检查模型中的无关变量,从而降低模型的规模: Model Reduction ·Off:不检查 模型降维 ·On:检查 ·Solver Decides:LINGO自动决定(缺省设置) 有三种可能的设置: ·Solver Decides:LINGO自动决定(缺省Primal 设置) Solver ·Partial:LINGO 对一部分可能的出基变原始单纯形量进行尝试 法 ·Devex:用Steepest-Edge(最陡边)近Pricing 似算法对所有可能的变量进行尝试,找到使Strategies 目标值下降最多的出基变量 价格策略(决有三种可能的设置: 定出基变量·Solver Decides:LINGO自动决定(缺省的策略) 设置) Dual Solver·Dantzig:按最大下降比例法确定出基变对偶单纯形量 法 ·Steepest-Edge:最陡边策略,对所有可能的变量进行尝试,找到使目标值下降最多的出基变量 Matrix Decomposition 选择该选项,LINGO将尝试将一个大模型分矩阵分解 解为几个小模型求解;否则不尝试 选择该选项,LINGO检查模型中的数据是否Scale Model 平衡(数量级是否相差太大)并尝试改变尺模型尺度的改变 度使模型平衡;否则不尝试
34 /66
LINGO教程
(4)Nonlinear Solver(非线性求解器)选项卡 选项组 选项 含义 控制模型中约束满足的初始误差限(缺省值为10-3) 控制模型中约束满足的最后误差限(缺省值为10-6) Initial Nonlinear Feasibility Tol. 初始非线性可行性误差限 Final Nonlinear Feasibility Tol. 最后非线性可行性误差限 Nonlinear Optimality Tol. 当目标函数在当前解的梯度小于等于这个非线性规划的最优性误差限 值以后,停止迭代(缺省值为2*10-7) Slow Progress Iteration 当目标函数在连续这么多次迭代没有显著Limit缓慢改进的迭代次数改进以后,停止迭代(缺省值为5) 的上限 Numerical 用有限差分法计算数值导数(缺省值) Derivatives 数值法 导数 Analytical 用解析法计算导数(仅对只含有算术运算符解析法 的函数使用) Crash Initial 选择该选项, LINGO将用启发式方法生成初Solution 始解;否则不生成(缺省值) 生成初始解 Quadratic 选择该选项, LINGO将判别模型是否为二次Recognition 规划,若是则采用二次规划算法(包含在线识别二次规性规划的内点法中);否则不判别(缺省值) 划 Selective 选择该选项, LINGO在每次迭代时只检查必Strategies Constraint 须检查的约束(如果有些约束函数在某些区策略 Eval 域没有定义,这样做会出现错误);否则,有选择地检检查所有约束(缺省值) 查约束 SLP 选择该选项, LINGO在每次迭代时用SLP Directions (Successive LP,逐次线性规划)方法寻找SLP方向 搜索方向(缺省值) 选择该选项, LINGO在每次迭代时将对所有Steepest 可能的变量进行尝试,找到使目标值下降最Edge 多的变量进行迭代;缺省值为不使用最陡边最陡边策略 策略
35 /66