LINGO是Linear Interactive and General Optimizer的缩写,中文名称为“交互式的线性和通用优化求解器”,是由美国LINDO系统公司(Lindo System Inc.)开发的一套专门用于求解最优化问题的软件包,用于求解线性规划和二次规划问题,LINGO可以求解非线性规划问题,也可以用于一些线性和非线性方程(组)的求解等。
此外,LINGO还允许优化模型中的决策变量为整数(即整数规划),其执行速度很快,是求解优化模型的最佳选择。
1软件介绍其特色在于内置建模语言,提供十几个内部函数,可以允许决策变量是整数(即整数规划,包括0-1整数规划),方便灵活,而且执行速度非常快。
能方便与EXCEL,数据库等其他软件交换数据。
最新版本LINGO14.0已经发布。
2操作步骤一般地,使用LINGO求解运筹学问题可以分为以下两个步骤来完成:1)根据实际问题,建立数学模型,即使用数学建模的方法建立优化模型;2)根据优化模型,利用LINGO来求解模型。
主要是根据LINGO软件,把数学模型转译成计算机语言,借助于计算机来求解。
例题:在线性规划中的应用maxZ=5X1+3X2+6X3,s.t.X1+2X2+X3≤182X1+X2+3X3=16X1+X2+X3=10X1,X2≥0,X3为自由变量应用LINGO来求解该模型,只需要在lingo窗口中输入以下信息即可:max=5*x1+3*x2+6*x3;x1+2*x2+x3<=18;2*x1+x2+3*x3=16;x1+x2+x3=10;@free(x3);然后按运行按钮,得到模型最优解,具体如下:Objectivevalue:46.00000 VariableValueReducedCostx114.000000.000000x20.0000001.000000x3-4.0000000.000000由此可知,当x1=14,x2=0,x3=-4时,模型得到最优值,且最优值为46。
说明:在利用LINGO求解线性规划时,如自变量都为非负的话,在LINGO中输入的信息和模型基本相同;如自变量为自由变量,可以使用函数@free来把系统默认的非负变量定义自由变量,如实例一中的x3。
3软件详述LINGO全称是LinearINteractiveandGeneralOptimizer的缩写---交互式的线性和通用优化求解器。
它是一套设计用来帮助您快速,方便和有效的构建和求解线性,非线性,和整数最优化模型的功能全面的工具。
包括功能强大的建模语言,建立和编辑问题的全功能环境,读取和写入Excel和数据库的功能,和一系列完全内置的求解程序.lingo(4)运行环境:Win9x/NT/2000/XP/2003软件类别:国外软件/工具软件/计算工具软件语言:英文Lingo是使建立和求解线性、非线性和整数最佳化模型更快更简单更有效率的综合工具。
Lingo提供强大的语言和快速的求解引擎来阐述和求解最佳化模型。
1.简单的模型表示Lingo可以将线性、非线性和整数问题迅速得予以公式表示,并且容易阅读、了解和修改。
LINGO的建模语言允许您使用汇总和下标变量以一种易懂的直观的方式来表达模型,非常类似您在使用纸和笔。
模型更加容易构建,更容易理解,因此也更容易维护。
2.方便的数据输入和输出选择Lingo建立的模型可以直接从数据库或工作表获取资料。
同样地,Lingo可以将求解结果直接输出到数据库或工作表。
使得您能够在您选择的应用程序中生成报告.3.强大的求解器LINGO拥有一整套快速的,内建的求解器用来求解线性的,非线性的(球面&;非球面的),二次的,二次约束的,和整数优化问题。
您甚至不需要指定或启动特定的求解器,因为LINGO会读取您的方程式并自动选择合适的求解器。
4.交互式模型或创建Turn-key应用程序您能够在LINGO内创建和求解模型,或您能够从您自己编写的应用程序中直接调用LINGO。
对于开发交互式模型,LINGO提供了一整套建模环境来构建,求解和分析您的模型.对于构建turn-key解决方案,LINGO提供的可调用的DLL和OLE界面能够从用户自己写的程序中被调用。
LINGO也能够从Excel宏或数据库应用程序中被直接调用.广泛的文件和HELP功能新版本功能LINGO13.0包括扩大和加强管理能力优化模型的不确定性,一些求解性能增强,提高制图能力。
程序支持在机会约束规划(CCP),一个或多个限制不得违反规定概率。
CCP 是有非常用的,当某种资源或需求是随机的。
一个解决方案,满足所有可能的结果可以是很小的,甚至是不可能的。
允许一定的限制是违反了低概率可以合理和切实可行的战略。
随机求解改进的“温暖的开始”在解决多级检疫。
改进后的方法诱导随机参数之间的关系。
概率分布超过65个PDF,CDF和反分布函数的概率分布。
求解器显着改善根节点的启发式快速找到好的解决方案,integer-feasible。
改进识别特殊的结构在某些类别的模型,如多期模型,并能够利用这种结构实现大幅度减少复原时间。
指定变量现在你可以使用@优先函数,指定一个分支优先为整数变量。
全球解法改进的启发式寻找一个好的,可行解快。
限制现在可以被标记为被凸,在情况下,约束的复杂性使得全球求解器自动确定凸。
这加速了全球最优的证明。
提高识别能力的限制,可以转化为圆锥曲线(即,二阶锥)约束从而解决更快的圆锥曲线求解。
改进的能力,有效地处理多项式计算。
改进的边界条件和特征值凸二次规划调整。
改进制图除了条形图,线和饼图图表,LINGO现在支持下列图表类型:泡沫,轮廓线,曲线,直方图,雷达,散射和表面。
多属性可以显示在一个单一的图表,每个绘制在不同的颜色。
图表可显示在两只或三尺寸。
使用集从一个模型标签轴和/或传说。
在图表上显示的脚本语言编程方式从术语使用“图表”命令。
矩阵显示器你现在可以选择一个模型的基本矩阵显示在置换格式,其中的行和列置换矩阵自动地方大多lower-triangular形式。
如果矩阵是下三角,一般来说,该模型应证明是容易解决的。
这不是一个模型,包含了一个高程度的同时,不能被置换成下三角形式。
编程接口函数术语应用编程接口支持新的函数调用检索变量值对飞的回调函数,以及一个多功能加载许可直接从一个字符串。
改进的新型加密:在过去,LINGO允许数据加密模型使用隐藏命令。
加密算法得到了显著加强,并加密模型片段也可以合并成一个单一的模型在运行时。
文件支持模型存储在系统的低水平下林现在可以加载到行话和自动翻译成高水平语言语法。
LINGO14.0Beta最新版本新功能包括以下内容:多线程支持LINGO14.0包括多cpu优化扩展,其解算器,以充分利用多核处理器的电脑。
多核扩展有两种类型:并发和并行。
多份相同的模型,并行算法运行两个或多个不同的串行算法,每种算法使用一个单独的线程,尽快终止的赢家线程结束。
另一方面,并行算法,并行化的串行算法在多个线程分配工作负荷的计算密集的部分。
多核扩展的求解器包括道闸,全球,整型,线性,多重启动和随机的。
·除了求解器,Lingo的模型生成的多核支持,也得到了扩展。
为大型模型的模型生成时间最多可减少高达50%,相比以前的版本。
分支和定价已加入多核支持的一个新的分支和定价求解块结构的问题,以提高性能。
分解结构的检测也得到了提高支持分公司和价格求解。
MIP求解器的改进·解决方案,寻找启发式已显着改善。
现在简单的四舍五入的可行性泵使用绑定传播到一个新的可行的MIP解决方案,以改善当前路径。
·新抛光启发式改进最好的MIP解决方案使用一池以前获得的MIP解决方案和目前的放松。
这将导致更好的MIP快上许多问题的解决方案。
多线程可能会导致从1.5到3.0倍,以加快改善困难的问题,使用4个线程,而不是1。
对于简单的MIP问题,例如,<600秒,多线程可能会没有太多的加速。
多重启动多重启动求解已显着提高,实现速度的因素2X相比以前的版本。
得到全局最优解的可能性,亦提高了10%至15%,在宽范围内的非凸模型。
多线程往往导致从2.0到3.0倍时,使用4个线程,以加快改善。
速度改进作为模型的尺寸和数目的multistarts增加趋于完善。
全局改进并行算法已加入利用多核机器。
矩阵显示器您现在可以选择有一个模型的基础矩阵块三角形的格式,其中的行和列可以自动置换成多块三角形式的矩阵显示。
如果块三角矩阵具有良好的结构,那么模型是解决了分公司和价格求解时,可能表现良好。
新图表显示网络图表类型的网络可以显示图表。
多个网络可以被显示在一个单一的图表。
动态添加@INSERT功能已被添加,它允许动态设置成员派生套的增加。
过程能力LINGO现在支持调用过程。
但是,赎回程序是类似于钙章节,不像钙的部分,程序可被执行多次。
步骤也可用于生成图表例程点。
测试分布β-二项分布和对称稳定分布已被添加到列表中支持的分布。
随机规划模型也可以指定一个二项式或β-对称稳定分布的随机变量。
β-二项式是有用的贝叶斯分析,涉及二项式分布,例如,在设计新的药物试验的抽样计划。
对称稳定,有时是用来模拟在金融市场价格的走势。
函数已添加一些新功能来转换日期和标准时间,被定义为标准时间2000年1月1日以来的小时数。
这些功能是有帮助的,当你需要在你的模型执行日期运算。
除其他事项外,这些功能是非常有用的形式回答问题,“什么日期和时间将是23.5天下午12:30明天?”。
数值积分@INTERGRAL函数已被添加用来运行数值积分。