对于linear programming,我们常用matlab求解,的确,matlab在科学计算很全能。但Lingo这款软件专业的数学建模软件,用于解决运筹学的线性规划与非线性规划问题。
此软件由LINDO软件公司开发,有免费版和付费版,免费版有限制,比如问题的复杂性,约束条件的个数等等。
常见的应用范围:包含生产线规划、运输、财务金融、投资分配、资本预算、混合排程、库存管理、资源配置等等...
LINGO的特点:
Lingo 是使建立和求解线性、非线性和整数最佳化模型更快更简单更有效率的综合工具。Lingo 提供强大的语言和快速的求解引擎来阐述和求解最佳化模型。
一、简单的模型表示
Lingo 可以将线性、非线性和整数问题迅速得予以公式表示,并且容易阅读、了解和修改。
二、方便的数据输入和输出选择
Lingo 建立的模型可以直接从数据库或工作表获取资料。同样地,Lingo 可以将求解结果直接输出到数据库或工作表。
三、强大的求解引擎
Lingo 内建的求解引擎有线性、非线性(convex and nonconvex)、二次、二次限制和整数最佳化。
四、Model Interactively or Create Turn-key Applications
Lingo 提供完全互动的环境供您建立、求解和分析模型。Lingo 也提供 DLL 和 OLE 界面可供使用者由撰写的程序中呼叫。
五、广泛的文件和 HELP 功能
Lingo 提供的所有工具和文件可使你迅速入门和上手。Lingo 使用者手册有详细的功能定义。
下面就一个实例:
当你在windows下开始运行LINGO系统时,会得到类似下面的一个窗口:
外层是主框架窗口,包含了所有菜单命令和工具条,其它所有的窗口将被包含在主窗口之下。在主窗口内的标题为LINGO Model – LINGO1的窗口是LINGO的默认模型窗口,建立的模型都都要在该窗口内编码实现。下面举两个例子。
例 如何在LINGO中求解如下的LP问题:
在模型窗口中输入如下代码:
min=2*x1+3*x2;
x1+x2>=350;
x1>=100;
2*x1+x2<=600;
然后得到详细的解题报告: