Lingo官方版(数学建模工具)
详情介绍
Lingo官方版是一款业内知名的数学建模工具,在业内享有极高的声誉!同时作为一个全面的数学建模工具,旨在使建立和解决数学优化模型更容易和更高效。提供了一个完全集成的软件包,其中包括用于表达优化模型的强大语言,用于构建和编辑问题的全功能环境,以及能够高效解决大多数优化模型的快速内置解算器。LINGO是利用线性和非线性优化的功能简洁地制定大问题,解决问题并分析解决方案的简单工具。优化可以帮助您找到能够产生最佳结果的答案,获得最高的利润,产出或幸福,或者实现最低成本,浪费或不舒适的那种。还可以用于求解非线性规划问题,也可以用于一些线性和非线性方程(组)的求解。其中很有特色的是可以允许优化模型中的决策变量是整数(即整数规划),而且执行速度快。
总的来说,Lingo功能强、计算效果好,与那些包含部分优化功能的非专业软件相比,具有明显的优势,而通常这些问题涉及最有效地利用您的资源,包括金钱,时间,机器,员工,库存等等。是使建立和求解线性、非线性和整数最佳化模型更快更简单更有效率的综合工具。Lingo可应用的范围包含生产线规划、运输、财务金融、投资分配、资本预算、混合排程、库存管理、资源配置等,在国外运筹学类的教科书中也被广泛用做教学软件。
LINGO支持强大的基于集合的建模语言,使用户能够高效,紧凑地表达数学编程模型。使用LINGO的内部脚本功能可以迭代地解决多个模型。
2、方便的数据选项
LINGO会花时间管理你的数据。它允许您构建直接从数据库和电子表格中提取信息的模型。同样,LINGO可以将解决方案信息直接输出到数据库或电子表格中,使您可以更轻松地在您选择的应用程序中生成报告。模型和数据的完全分离增强了模型维护和可扩展性。
3、交互式建模或创建交钥匙应用程序
您可以在LINGO中构建和解决模型,也可以直接从您编写的应用程序中调用LINGO。为了以交互方式开发模型,LINGO提供了一个完整的建模环境来构建,解决和分析模型。对于构建交钥匙解决方案,LINGO带有可调用的DLL和OLE接口,可以从用户编写的应用程序调用。还可以从Excel宏或数据库应用程序直接调用LINGO。目前,LINGO包括C/C++,FORTRAN,Java,C#.NET,VB.NET,ASP.NET,VisualBasic,Delphi和Excel的编程示例。
4、丰富的文档和帮助
LINGO提供您需要快速启动和运行的所有工具。您可以获得LINGO用户手册(打印出来并可通过在线帮助获得),该手册全面介绍了该程序的命令和功能。超级版本及更高版本中还包含一份LINGO优化建模副本,这是一个全面的建模文本,讨论所有主要类别的线性,整数和非线性优化问题。LINGO还提供了许多基于实际情况的示例供您修改和扩展。
5、强大的求解器和工具
LINGO提供全面的快速内置求解器,用于线性,非线性(凸和非凸),二次,二次约束和整数优化。您不必指定或加载单独的求解器,因为LINGO会读取您的配方并自动选择合适的配方。LINGO中可用的求解器和工具的一般描述如下:
6、一般非线性求解器
LINGO提供了一般的非线性和非线性/整数能力。为了在LINDOAPI中使用非线性功能,需要非线性许可选项。
7、全球求解器
全局解算器在分支定界框架内结合了一系列范围界限(例如,区间分析和凸分析)和范围缩减技术(例如,线性编程和约束传播),以找到经证明的非凸非线性程序的全局解决方案。传统的非线性求解器可能会陷入次优的局部解。使用全局求解器时不再是这种情况。
8、Multistart求解器
多点解算器智能地在NLP和混合整数NLP的解空间中生成候选起始点序列。传统的NLP解算器被称为每个起点以找到局部最优。对于非凸NLP模型,多层解算器找到的最佳解决方案的质量往往优于传统非线性求解器的单解决方案。用户可调参数控制要执行的最大数量的多段。
9、障碍解算器
障碍解算器是解决线性,二次和二阶锥问题的另一种方法。LINGO最先进的屏障方法实现为大规模,稀疏模型提供了巨大的速度优势。
10、单纯形求解器
LINGO提供了原始和双重单纯形法的两种高级实现,作为解决线性规划问题的主要手段。其灵活的设计允许用户通过改变几个算法参数来微调每种方法。
11、混合整数求解器
LINGO的混合整数求解器的能力扩展到线性,二次和一般非线性整数模型。它包含若干先进的解决方案技术,如切割生成,树状重新排序以动态减少树木生长,以及先进的启发式和预先解决策略。
12、随机求解器
随机规划求解器通过具有追索性的多阶段随机模型为不确定条件下的决策提供了机会。用户通过识别分配函数来描述不确定性,无论是内置的还是用户定义的,都描述了每个随机变量。随机求解器将优化模型以最小化初始阶段的成本加上在规划时间范围内的未来追索行动的预期成本。先进的采样模式也可用于近似连续分布。
13、模型和解决方案分析工具
LINGO包含一套全面的分析工具,用于调试不可行的线性,整数和非线性程序,使用先进的技术将不可行性源与原始约束的最小子集分开。它还具有执行灵敏度分析的工具,以确定最佳基础对某些数据成分(例如目标向量和右手大小值)变化的敏感性。
14、二次识别工具
QP识别工具是一种有用的代数预处理器,可自动确定任意NLP是否实际上是凸二次模型。然后可将QP模型传递给更快的二次求解器,该求解器可用作势垒求解器选项的一部分。当障碍解算器选项与全局选项结合使用时,除了凸二次模型之外,LINGO还会自动识别二阶锥体模型。
15、线性化工具
线性化是一种全面的重构工具,可自动将许多非平滑函数和运算符(例如,最大值和绝对值)转换为一系列线性数学等价表达式。许多非光滑模型可能完全线性化。这使得线性求解器能够快速找到一个全局的解决方案,否则这将是一个难以解决的非线性问题。
如何在Windows中输入和解决小型模型。如果您使用Windows以外的平台,则仍应阅读本节,因为模型方程的文本与平台无关,并且在所有平台上都相同。但是,请记住,在非Windows平台上,输入模型的技术略有不同。有关在Windows以外的平台上输入模型的说明,请参阅命令行提示一节。当您启动Windows的LINGO时,您的屏幕应类似于以下内容:
1.标有LINGO的外窗口是主框架窗口。所有其他窗口将包含在此窗口中。框架窗口的顶部还包含所有命令菜单和命令工具栏。有关工具栏和菜单命令的详细信息,请参阅Windows命令。主框架窗口的下边缘包含一个状态栏,提供有关LINGO当前状态的各种信息。通过使用LINGO|Options命令可以禁止工具栏和状态栏。
2.有LINGOModel-LINGO1的较小的子窗口是一个新的空白模型窗口。在下一节中,我们将直接在此窗口中输入示例模型。
打开示例模型
LINGO随附一个包含许多示例模型的目录。这些模型来自广泛的应用领域。有关这些模型的完整列表,请参阅LINGO建模的其他示例。示例模型目录标题为“样本”,并直接存储在许多LINGO目录中。
要在LINGO中打开示例模型,请按照下列步骤操作:
1.拉下文件菜单并选择打开命令。您应该看到以下对话框:
2.双击标题为Samples的文件夹,在这个位置您应该看到:
3.要读取小型运输模型,请在上述对话框中的文件名字段中输入Tran,然后按打开按钮。您现在应该在LINGO的一个开放窗口中使用该模型,如下所示:有关在LINGO中开发运输模型的详细信息,请参阅LINGO入门中的词汇问题。
您现在可以使用LINGO|Solve命令或通过按下工具栏上的btnxpsolve按钮来求解模型。该模型的最优目标值为161.解决时,您应该看到以下求解器状态窗口:注意目标字段的值为161。有关此窗口中其他字段的解释,请参阅LINGO入门中的求解器状态窗口。在求解器状态窗口后面,您可以找到该模型的解决方案报告。此报告包含有关模型的摘要信息以及所有变量的值。本报告的标题转载如下:有关解释解决方案报告中的字段的信息,请参阅LINGO入门中的解决方案报告示例。
4.在Windows中解决模型,你的模型现在已经进入并准备好解决。要开始求解模型,请从LINGO菜单中选择Solve命令,或者按主框架窗口顶部工具栏上的Solve按钮(btnxpsolve)。LINGO将开始编译模型。在此步骤中,LINGO将确定模型是否符合所有语法要求。如果LINGO模型未通过这些测试,则会通过错误消息通知您。例如,在这个模型中,如果你忘记使用乘号,你会得到错误
随机规划
到目前为止,我们使用确定性数学程序,其中所有模型参数(例如系数,界限等)是已知的常数。随机程序(SP)是一个数学程序(线性,非线性或混合整数),其中一些模型参数不确定,并且不确定性可以用已知的概率分布表示。应用程序出现在各种行业:
1.在价格,利率和汇率不确定的情况下,针对保险和其他金融公司的多个时期的金融投资组合计划
2.石油公司的勘探规划,
3.面对未来燃料需求不确定时的燃料采购,
4.车队指派:面对不确定的路线需求,车辆类型为路线指派,
5.发电机组承诺面对不确定的需求,
6.面对雨量不确定的水电管理和防洪,
7.在价格不确定的情况下,为期权行权的最佳时间,
8.面对未来需求和价格不确定的能力和生产计划,
9.面对不确定的投入废品质量,铸造金属混合,
10.面对未来技术不确定性的产品规划,
11.酒店和运输行业的收入管理
与外部文件接口
尝试将数据保存在LINGO模型文件中可能会很麻烦并且不切实际。在大多数情况下,模型的数据将驻留在文件,电子表格和数据库的外部。另外,如果您无法将其导出到其他应用程序,则由LINGO生成的解决方案几乎没有用处。由于这些原因,LINGO有许多方法可以帮助您将信息移入和移出应用程序。本节的主要重点是说明如何通过使用基于文本的ASCII文件将数据移入和移出LINGO。在与电子表格交互时,我们将着眼于使用电子表格,并且在与数据库交互时,我们将说明使用数据库维护模型的数据。
211:输出操作中出现了算术运算错误
212:集合的下标越界
213:当前操作参数不应该是文本,但模型中指定的是文本
214:多次对同一个变量初始化
215:@DUAL,@RANGEU,@RANGED函数不能在此使用(参阅错误代码“168”)
216:这个函数应该需要输入文本作为参数
217:这个函数应该需要输入数值作为参数
218:这个函数应该需要输入行名或变量名作为参数
219:无法找到指定的行
220:没有定义的文本操作
221:@WRITE或@WRITEFOR函数的参数溢出
222:需要指定行名或变量名
223:向Excel文件中写数据时,动态接收单元超出了限制
224:向Excel文件中写数据时,需要写的数据的个数多于指定的接收单元的个数
225:计算段(CALC)的表达式不正确
226:不存在默认的电子表格文件,请为@OLE函数指定一个电子表格文件
227:为APISET命令指定的参数索引不正确
228:通过Excel输入输出数据时,如果LINGO中的多个对象对应于Excel中的名,则列数应该一致
229:为APISET命令指定的参数类型不正确
230:为APISET命令指定的参数值不正确
231:APISET命令无法完成
232:(该错误编号目前没有使用)
1000:(错误编号为1000以上的信息,只对Windows系统有效)
1001:LINGO找不到与指定括号匹配的括号
1002:当前内存中没有模型,不能求解
1003:LINGO现在正忙,不能马上响应您的请求
1004:LINGO不能写LOG(日志)文件,也许磁盘已满
1005:LINGO不能打开指定的LOG(日志)文件
1006:不能打开文件
1007:没有足够内存完成命令
1008:不能打开新窗口(可能内存不够)
1009:没有足够内存空间生成解答报告
1010:不能打开Excel文件的链接(通常是由于系统资源不足)
1011:LINGO不能完成对图形的请求
1012:LINGO与ODBC连接时出现错误
1013:通过OBDC传递数据时不能完成初始化
1014:向Excel文件传递数据时,指定的参数不够
1015:不能保存文件
1016:Windows环境下不支持Edit命令,请使用File|Open菜单命令
9999:由于出现严重错误,优化求解程序运行失败(最可能的原因是数学函数出错,如函数@LOG(X-1)当X<=1时就会出现这类错误)
总的来说,Lingo功能强、计算效果好,与那些包含部分优化功能的非专业软件相比,具有明显的优势,而通常这些问题涉及最有效地利用您的资源,包括金钱,时间,机器,员工,库存等等。是使建立和求解线性、非线性和整数最佳化模型更快更简单更有效率的综合工具。Lingo可应用的范围包含生产线规划、运输、财务金融、投资分配、资本预算、混合排程、库存管理、资源配置等,在国外运筹学类的教科书中也被广泛用做教学软件。
软件特色
1、代数建模语言LINGO支持强大的基于集合的建模语言,使用户能够高效,紧凑地表达数学编程模型。使用LINGO的内部脚本功能可以迭代地解决多个模型。
2、方便的数据选项
LINGO会花时间管理你的数据。它允许您构建直接从数据库和电子表格中提取信息的模型。同样,LINGO可以将解决方案信息直接输出到数据库或电子表格中,使您可以更轻松地在您选择的应用程序中生成报告。模型和数据的完全分离增强了模型维护和可扩展性。
3、交互式建模或创建交钥匙应用程序
您可以在LINGO中构建和解决模型,也可以直接从您编写的应用程序中调用LINGO。为了以交互方式开发模型,LINGO提供了一个完整的建模环境来构建,解决和分析模型。对于构建交钥匙解决方案,LINGO带有可调用的DLL和OLE接口,可以从用户编写的应用程序调用。还可以从Excel宏或数据库应用程序直接调用LINGO。目前,LINGO包括C/C++,FORTRAN,Java,C#.NET,VB.NET,ASP.NET,VisualBasic,Delphi和Excel的编程示例。
4、丰富的文档和帮助
LINGO提供您需要快速启动和运行的所有工具。您可以获得LINGO用户手册(打印出来并可通过在线帮助获得),该手册全面介绍了该程序的命令和功能。超级版本及更高版本中还包含一份LINGO优化建模副本,这是一个全面的建模文本,讨论所有主要类别的线性,整数和非线性优化问题。LINGO还提供了许多基于实际情况的示例供您修改和扩展。
5、强大的求解器和工具
LINGO提供全面的快速内置求解器,用于线性,非线性(凸和非凸),二次,二次约束和整数优化。您不必指定或加载单独的求解器,因为LINGO会读取您的配方并自动选择合适的配方。LINGO中可用的求解器和工具的一般描述如下:
6、一般非线性求解器
LINGO提供了一般的非线性和非线性/整数能力。为了在LINDOAPI中使用非线性功能,需要非线性许可选项。
7、全球求解器
全局解算器在分支定界框架内结合了一系列范围界限(例如,区间分析和凸分析)和范围缩减技术(例如,线性编程和约束传播),以找到经证明的非凸非线性程序的全局解决方案。传统的非线性求解器可能会陷入次优的局部解。使用全局求解器时不再是这种情况。
8、Multistart求解器
多点解算器智能地在NLP和混合整数NLP的解空间中生成候选起始点序列。传统的NLP解算器被称为每个起点以找到局部最优。对于非凸NLP模型,多层解算器找到的最佳解决方案的质量往往优于传统非线性求解器的单解决方案。用户可调参数控制要执行的最大数量的多段。
9、障碍解算器
障碍解算器是解决线性,二次和二阶锥问题的另一种方法。LINGO最先进的屏障方法实现为大规模,稀疏模型提供了巨大的速度优势。
10、单纯形求解器
LINGO提供了原始和双重单纯形法的两种高级实现,作为解决线性规划问题的主要手段。其灵活的设计允许用户通过改变几个算法参数来微调每种方法。
11、混合整数求解器
LINGO的混合整数求解器的能力扩展到线性,二次和一般非线性整数模型。它包含若干先进的解决方案技术,如切割生成,树状重新排序以动态减少树木生长,以及先进的启发式和预先解决策略。
12、随机求解器
随机规划求解器通过具有追索性的多阶段随机模型为不确定条件下的决策提供了机会。用户通过识别分配函数来描述不确定性,无论是内置的还是用户定义的,都描述了每个随机变量。随机求解器将优化模型以最小化初始阶段的成本加上在规划时间范围内的未来追索行动的预期成本。先进的采样模式也可用于近似连续分布。
13、模型和解决方案分析工具
LINGO包含一套全面的分析工具,用于调试不可行的线性,整数和非线性程序,使用先进的技术将不可行性源与原始约束的最小子集分开。它还具有执行灵敏度分析的工具,以确定最佳基础对某些数据成分(例如目标向量和右手大小值)变化的敏感性。
14、二次识别工具
QP识别工具是一种有用的代数预处理器,可自动确定任意NLP是否实际上是凸二次模型。然后可将QP模型传递给更快的二次求解器,该求解器可用作势垒求解器选项的一部分。当障碍解算器选项与全局选项结合使用时,除了凸二次模型之外,LINGO还会自动识别二阶锥体模型。
15、线性化工具
线性化是一种全面的重构工具,可自动将许多非平滑函数和运算符(例如,最大值和绝对值)转换为一系列线性数学等价表达式。许多非光滑模型可能完全线性化。这使得线性求解器能够快速找到一个全局的解决方案,否则这将是一个难以解决的非线性问题。
使用帮助
在Windows中启动LINGO如何在Windows中输入和解决小型模型。如果您使用Windows以外的平台,则仍应阅读本节,因为模型方程的文本与平台无关,并且在所有平台上都相同。但是,请记住,在非Windows平台上,输入模型的技术略有不同。有关在Windows以外的平台上输入模型的说明,请参阅命令行提示一节。当您启动Windows的LINGO时,您的屏幕应类似于以下内容:
1.标有LINGO的外窗口是主框架窗口。所有其他窗口将包含在此窗口中。框架窗口的顶部还包含所有命令菜单和命令工具栏。有关工具栏和菜单命令的详细信息,请参阅Windows命令。主框架窗口的下边缘包含一个状态栏,提供有关LINGO当前状态的各种信息。通过使用LINGO|Options命令可以禁止工具栏和状态栏。
2.有LINGOModel-LINGO1的较小的子窗口是一个新的空白模型窗口。在下一节中,我们将直接在此窗口中输入示例模型。
打开示例模型
LINGO随附一个包含许多示例模型的目录。这些模型来自广泛的应用领域。有关这些模型的完整列表,请参阅LINGO建模的其他示例。示例模型目录标题为“样本”,并直接存储在许多LINGO目录中。
要在LINGO中打开示例模型,请按照下列步骤操作:
1.拉下文件菜单并选择打开命令。您应该看到以下对话框:
2.双击标题为Samples的文件夹,在这个位置您应该看到:
3.要读取小型运输模型,请在上述对话框中的文件名字段中输入Tran,然后按打开按钮。您现在应该在LINGO的一个开放窗口中使用该模型,如下所示:有关在LINGO中开发运输模型的详细信息,请参阅LINGO入门中的词汇问题。
您现在可以使用LINGO|Solve命令或通过按下工具栏上的btnxpsolve按钮来求解模型。该模型的最优目标值为161.解决时,您应该看到以下求解器状态窗口:注意目标字段的值为161。有关此窗口中其他字段的解释,请参阅LINGO入门中的求解器状态窗口。在求解器状态窗口后面,您可以找到该模型的解决方案报告。此报告包含有关模型的摘要信息以及所有变量的值。本报告的标题转载如下:有关解释解决方案报告中的字段的信息,请参阅LINGO入门中的解决方案报告示例。
4.在Windows中解决模型,你的模型现在已经进入并准备好解决。要开始求解模型,请从LINGO菜单中选择Solve命令,或者按主框架窗口顶部工具栏上的Solve按钮(btnxpsolve)。LINGO将开始编译模型。在此步骤中,LINGO将确定模型是否符合所有语法要求。如果LINGO模型未通过这些测试,则会通过错误消息通知您。例如,在这个模型中,如果你忘记使用乘号,你会得到错误
随机规划
到目前为止,我们使用确定性数学程序,其中所有模型参数(例如系数,界限等)是已知的常数。随机程序(SP)是一个数学程序(线性,非线性或混合整数),其中一些模型参数不确定,并且不确定性可以用已知的概率分布表示。应用程序出现在各种行业:
1.在价格,利率和汇率不确定的情况下,针对保险和其他金融公司的多个时期的金融投资组合计划
2.石油公司的勘探规划,
3.面对未来燃料需求不确定时的燃料采购,
4.车队指派:面对不确定的路线需求,车辆类型为路线指派,
5.发电机组承诺面对不确定的需求,
6.面对雨量不确定的水电管理和防洪,
7.在价格不确定的情况下,为期权行权的最佳时间,
8.面对未来需求和价格不确定的能力和生产计划,
9.面对不确定的投入废品质量,铸造金属混合,
10.面对未来技术不确定性的产品规划,
11.酒店和运输行业的收入管理
与外部文件接口
尝试将数据保存在LINGO模型文件中可能会很麻烦并且不切实际。在大多数情况下,模型的数据将驻留在文件,电子表格和数据库的外部。另外,如果您无法将其导出到其他应用程序,则由LINGO生成的解决方案几乎没有用处。由于这些原因,LINGO有许多方法可以帮助您将信息移入和移出应用程序。本节的主要重点是说明如何通过使用基于文本的ASCII文件将数据移入和移出LINGO。在与电子表格交互时,我们将着眼于使用电子表格,并且在与数据库交互时,我们将说明使用数据库维护模型的数据。
错误代码大全
210:@WRITEFOR函数使用不当211:输出操作中出现了算术运算错误
212:集合的下标越界
213:当前操作参数不应该是文本,但模型中指定的是文本
214:多次对同一个变量初始化
215:@DUAL,@RANGEU,@RANGED函数不能在此使用(参阅错误代码“168”)
216:这个函数应该需要输入文本作为参数
217:这个函数应该需要输入数值作为参数
218:这个函数应该需要输入行名或变量名作为参数
219:无法找到指定的行
220:没有定义的文本操作
221:@WRITE或@WRITEFOR函数的参数溢出
222:需要指定行名或变量名
223:向Excel文件中写数据时,动态接收单元超出了限制
224:向Excel文件中写数据时,需要写的数据的个数多于指定的接收单元的个数
225:计算段(CALC)的表达式不正确
226:不存在默认的电子表格文件,请为@OLE函数指定一个电子表格文件
227:为APISET命令指定的参数索引不正确
228:通过Excel输入输出数据时,如果LINGO中的多个对象对应于Excel中的名,则列数应该一致
229:为APISET命令指定的参数类型不正确
230:为APISET命令指定的参数值不正确
231:APISET命令无法完成
232:(该错误编号目前没有使用)
1000:(错误编号为1000以上的信息,只对Windows系统有效)
1001:LINGO找不到与指定括号匹配的括号
1002:当前内存中没有模型,不能求解
1003:LINGO现在正忙,不能马上响应您的请求
1004:LINGO不能写LOG(日志)文件,也许磁盘已满
1005:LINGO不能打开指定的LOG(日志)文件
1006:不能打开文件
1007:没有足够内存完成命令
1008:不能打开新窗口(可能内存不够)
1009:没有足够内存空间生成解答报告
1010:不能打开Excel文件的链接(通常是由于系统资源不足)
1011:LINGO不能完成对图形的请求
1012:LINGO与ODBC连接时出现错误
1013:通过OBDC传递数据时不能完成初始化
1014:向Excel文件传递数据时,指定的参数不够
1015:不能保存文件
1016:Windows环境下不支持Edit命令,请使用File|Open菜单命令
9999:由于出现严重错误,优化求解程序运行失败(最可能的原因是数学函数出错,如函数@LOG(X-1)当X<=1时就会出现这类错误)
同类软件
网友评论
共0条评论(您的评论需要经过审核才能显示)
精彩发现
换一换精品推荐
-
staruml(uml建模工具)官方版 v6.3.0 辅助设计 / 190.28M
查看 -
CopperCube(3D场景模型创作软件) v6.7.0 辅助设计 / 45.06M
查看 -
OriginLab OriginPro 2022中文版 v9.9.0.225 辅助设计 / 1.77G
查看 -
Mathworks Matlab 2016b中文版 辅助设计 / 8.38G
查看 -
Altair Flow Simulator 2023完整版 v2023.0 辅助设计 / 492.16M
查看
专题推荐
本类排行
月排行总排行