lingo入门教程之一 |
您所在的位置:网站首页 › lingo怎么换成中文 › lingo入门教程之一 |
lingo对于一些线性或者非线性的规划,优化问题非常有效 首先介绍一下,在lingo中运行程序时出现的页面(在工具栏点击类似靶子一样的图标便可运行)
Solver status:求解器(求解程序)状态框 Model Class:当前模型的类型:LP,QP,ILP,IQP,PILP,PIQP,NLP,INLP,PINLP(以I开头表示IP,以PI开头表示PIP) State:当前解的状态: "Global Optimum", "LocalOptimum", "Feasible", "Infeasible“(不可行), "Unbounded“(无界), "Interrupted“(中断), "Undetermined“(未确定) Object:解的目标函数值 Infeasibility:当前约束不满足的总量(不是不满足的约束的个数):实数(即使该值=0,当前解也可能不可行,因为这个量中没有考虑用上下界命令形式给出的约束) Iteration:目前为止的迭代次数
Extend solverstatus:扩展的求解器(求解程序)状态框 Solver type:使用的特殊求解程序: Bestobj :目前为止找到的可行解的最佳目标函数值 Objbound:目标函数值的界 Steps:特殊求解程序当前运行步数: Active:有效步数
Variables(变量数量): 变量总数(Total)、 非线性变量数(Nonlinear)、 整数变量数(Integer)。 Constraints(约束数量): 约束总数(Total)、 非线性约束个数(Nonlinear)。 Nonzeros(非零系数数量): 总数(Total)、 非线性项系数个数(Nonlinear)。
GeneratorMemory Used (K) (内存使用量) ElapsedRuntime (hh:mm:ss)(求解花费的时间)
运行之后页面介绍(这里的运行界面并不是与上面的运行过程中出现界面一致,即并非来自于同一个程序运行出现)
第一行表示在经过457次迭代后得到局部最优解 第二行给出该局部最优解的具体值 下面给出取局部最优值时,x1 x2的具体取值
这里求解的是局部最优解,如果想求出全局最优解,可以进行页面设置:lingo --> option --> global solver --> 勾选use global solver 对于运行结果也可以另存为,格式一般为ldt,因为有时候对于求解一个问题,或许需要运行很久才可以得出结果,所以没必要每次为了看结果都运行,而是运行成功一次后便把结果保存下来
注意事项 LINGO总是根据“MAX=”或“MIN=”寻找目标函数; 程序语句的顺序一般不重要,既可以随意调换; 程序运用函数时都是以@开头; 程序中的变量默认为非负数,想要改变变量类型必须有相应函数调整 程序中变量不区分大小写; 语句必须以分号结尾; 注释以!开始,且注释语句后面必须也有分号,注释默认注释到第一个分号处,意思是分号前面会全部被注释掉。
例题: max=98*x1+277*x2-x1^2-0.3*x1*x2-2*x2^2; !目标函数; !约束条件; x1 |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |