Lingo

对于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_第1张图片

外层是主框架窗口,包含了所有菜单命令和工具条,其它所有的窗口将被包含在主窗口之下。在主窗口内的标题为LINGO Model – LINGO1的窗口是LINGO的默认模型窗口,建立的模型都都要在该窗口内编码实现。下面举两个例子。

 如何在LINGO中求解如下的LP问题:

Lingo_第2张图片

 

在模型窗口中输入如下代码:

min=2*x1+3*x2;

x1+x2>=350;

x1>=100;

2*x1+x2<=600;

然后点击工具条上的按钮 即可。

然后得到详细的解题报告:

Lingo_第3张图片

你可能感兴趣的:(Go)