安下载行业软件

分类分类

LINGO15.0完美

LINGO15.0完美

附带安装教程

大小:80.71 MB 更新:2023/03/24

类别:辅助设计系统:WinXP, Win7, Win8, Win10, WinAll

立即下载

  LINGO15是一款实用的线性和非线性通用优化求解器,用户可以在LINGO中构建自己需要的模型以及分析模型设计方案,也可以直接从您编写的应用程序中调用LINGO,为了以交互方式开发模型,LINGO提供了一个完整的建模环境来构建,求解和分析模型;新版本更新了混合整数解算器,LINGO的混合整数解算器的功能扩展到线性,二次和一般非线性整数模型,它包含几种先进的解决方案技术,如剪切生成,树重新排序以动态减少树木增长,以及先进的启发式和预解决策略;提供的屏障求解器是解决线性,二次和圆锥问题的另一种方法,LINGO最先进的屏障方法实现为大规模稀疏模型提供了极大的速度优势。强大又实用,需要的用户可以下载体验

LINGO15.0完美

软件功能

  非线性模型

  LINGO包含了一系列针对局部或全局非线性模型的最优解决方案。

  一般非线性求解器

  对于非线性规划模型,LINGO的非线性求解器主要使用的基础技术是基于广义简约梯度 (GRG) 算法。然而要快速得到一个可行的解决方案,LINGO还可采用连续线性规划(SLP)。这个非线性求解器利用sparsity来提高速度和内存使用率。求解非线性模型需要非线性模型许可包。

  ·Global求解器

  局部搜索求解器通常是设计用来搜索,直到确定局部最优求解方案。如果模型是non-convex,可能存在其他局部最优解决方案,Global求解器不会在找到第一个局部最优解决方案时就停止工作,而是会继续搜索直到全局最优化方案被确认。Global求解器将原始的non-convex非线性问题转换成多个convex和线性子问题。然后使用branch-and-bound技术来详细的搜索这些子问题的综合解决方案。全局优化功能需要非线性和global模块许可包。

  ·Multistart求解器

  用户需要在有限的时间内找到全局最优方案时,Multistart求解器这个强大的工具就可以快速的找到这个方案。它会智能的生成一系列候选解决方案,通用非线性求解器智能选择其中的一个子集初始化一系列局部优化。对non-convex非线性模型来说,multistart求解器得出的解决方案会优于通用非线性求解器的。使用Multistart功能需要非线性和global模块许可包。

  ·二次求解器

  除了求解线性和混合整数模型外,LINGO的Barrier选项还可以自动检测和处理目标函数和某些约束条件包含二次项的模型。利用二次结构,LINGO比通用非线性求解器能更快地处理这些模型。LINGO甚至还可以用二元和一般整数约束处理二次模型。这些二次功能使LINGO适用于如投资组合优化问题,约束回归问题和某些类型的物流问题(如布局问题、二次目标固定费用网络问题)。二次求解器已经包含在了Barrier模块许可包中。

  ·Conic求解器

  Conic求解器可有效地求解二阶锥问题(SOCP)。通过表达一定的非线性模型如SOCPs,Conic求解器比一般非线性求解器能更快的得到求解结果。使用Conic求解器需要有Barrier和Conic选项。

  随机规划求解器

  在多级优化模型中加入一定风险把预期利润最大化,并用直方图显示可能利润分配的结果。通过多级随机线性、非线性和整数随机规划(SP),这个新选项允许建模和优化模型时出现不确定因素。Benders分解法用于求解大型线性随机规划模型,支持20几种分布类型(离散或连续)。随机规划求解器包含在随机规划选项中。

软件特色

  预处理

  预处理例程包含在所有求解器中。线性和非线性求解器包含缩放和模型降阶技术。缩放程序可以提高复杂模型的处理速度和稳定性。模型降阶技术可以通过分析原始的公式和数学方法将问题难度减小,快速求解出结果。整数求解器中包含了广泛的预处理和切割生成例程。 LINGO的设计理念是为了让用户在处理模型时尽可能少的输入指令。当求解命令开始时,LINGO分析问题,可能的话,会减少问题甚至替代变量。根据模型的结构,LINGO会自动选择合适的求解器并智能的调整内部参数。

  线性化

  LINGO的线性功能可以极大的提高常见的非光滑函数的性能。这个功能可以自动将许多非光滑函数和运算符(@IF, @MAX 以及 @ABS)转换成一系列线性和数学等价表达式。同样的,产品的连续性和二进制变量也可以线性化。许多非光滑模型也可以完全线性化。这使得线性求解器可以快速的找到一个全局解决方案以免成为一个棘手问题。

  ·交互模型或创建turn-key应用程序

  在LINGO内部,您可以创建和求解模型,也可以在您自己写的应用程序里直接调用LINGO。为了交互式开发模型,LINGO提供了一个完整的建模环境来创建、求解以及分析您的模型。为创建turn-key解决方案,LINGO提供了DLL和OLE接口方便从用户写的应用程序中调用。Excel宏或数据库应用中也可以直接调用LINGO.

  ·模型交互

  LINGO允许用户交互式创建和求解模型,或在另一个程序中嵌入求解器。

  ·交互式建模

  LINGO提供了一个创建和求解优化问题的交互式环境。多窗口编辑器方便简单问题的输入、预览和修改。为了方便模型创建,"syntax aware"编辑器将LINGO的关键词标蓝、评论标绿,其它模型文字都是黑色。还提供了一个工具栏便于快速访问经常使用的命令。解决方案信息可以在窗口、图表、电子表格、数据库或文本文件中浏览。模型求解过程中,用户可以监控求解状态并随时终止进程。

安装步骤

  1、需要的用户可以点击本网站提供的下载路径下载得到对应的程序安装包

LINGO15.0完美

  2、通过解压功能将压缩包打开,找到主程序,双击主程序即可进行安装,点击下一步按钮

LINGO15.0完美

LINGO15.0完美

  3、需要完全同意上述协议的所有条款,才能继续安装应用程序,如果没有异议,请点击“同意”按钮

LINGO15.0完美

  4、用户可以根据自己的需要点击浏览按钮将应用程序的安装路径进行更改

LINGO15.0完美

  5、现在准备安装主程序。点击“安装”按钮开始安装或点击“上一步”按钮重新输入安装信息

LINGO15.0完美

  6、等待应用程序安装进度条加载完成即可,需要等待一小会儿

LINGO15.0完美

  7、根据提示点击安装,弹出程序安装完成界面,点击完成按钮即可

LINGO15.0完美

方法

  1、完成以上操作步骤即可将程序完成,该程序已经是,不用繁琐的步骤

LINGO15.0完美

使用说明

  数据部分

  通常,您需要初始化某些集的成员并将值分配给某些集属性。为此,LINGO使用了第二个可选部分,称为数据部分。数据部分允许您从模型的方程中隔离数据。这是一种有用的实践,因为它可以简化模型维护,并有助于将模型扩展到更大的维度。

LINGO15.0完美

  与sets部分类似,数据部分以关键字DATA :(包括冒号)开头,以关键字ENDDATA结束。在数据部分中,您可以使用语句初始化在sets部分中定义的集合和/或属性。这些表达式具有以下语法:

  object_list = value_list;

  object_list包含要初始化的集合和/或属性的名称,可选地用逗号分隔。如果对象列表中有多个属性名称,则必须在同一组上定义所有属性。此外,如果集合名称出现在对象列表中,则它必须是对象列表中任何属性的父集合。 value_list包含要分配给对象列表中的对象的值,可选地用逗号分隔。例如,请考虑以下模型:

LINGO15.0完美

  模型:

  集:

  SET1:X,Y;

  ENDSETS

  数据:

  SET1 = A B C;

  X = 1 2 3;

  Y = 4 5 6;

  ENDDATA

  结束

  我们在集合SET1上定义了两个属性X和Y. X的三个值设置为1,2和3,而Y设置为4,5和6.我们也可以使用以下复合数据语句到同一端:

  模型:

  集:

  SET1:X,Y;

  ENDSETS

  数据:

  SET1 X Y = A 1 4

  B 2 5

  C 3 6;

  ENDDATA

  结束

  需要记住的一个重要事实是,当LINGO读取复合数据语句的值列表时,它会将列表中的前n个值分配给对象列表中每个n个对象的第一个位置,将第二个n值赋值给第二个位置。每个n个对象,依此类推。换句话说,LINGO期望输入数据采用列格式而不是行格式,这反映了关系数据库中使用的平面文件方法。

  本节简要介绍了数据部分的使用。在数据和初始化部分中,您将了解有关数据部分功能的更多信息。您将学习数据不必实际驻留在数据部分中,如此处的示例所示。实际上,您的数据部分可以具有到Excel的OLE链接,到数据库的ODBC链接以及到基于文本的数据文件的连接。

LINGO15.0完美

  设置循环功能

  上一页下一页

  我们已经提到基于集合的建模的强大功能来自于使用单个语句将操作应用于集合的所有成员的能力。 LINGO中允许您执行此操作的函数称为集循环函数。如果你的模型没有使用一个或多个设置循环函数,那么你就错过了基于集合的建模的强大功能,更糟糕的是,你可能工作太辛苦了!

  设置循环函数允许您遍历集合的所有成员以执行某些操作。 LINGO目前有四个设置循环功能。功能的名称及其用途是:

  功能

  功能的用途

  @对于

  @FOR是集合循环函数中最强大的函数,主要用于生成集合成员的约束。 @FOR也可以在calc部分中使用,以便为一组集合中的属性赋值。

  @和

  可能是最常用的集循环函数,@ SUn计算集合中所有成员的表达式之和。

  @MIN

  计算集合中所有成员的表达式的最小值。

  @MAX

  计算集合中所有成员的表达式的最大值。

  @PROD

  计算表达式在集合的所有成员上的乘积。

  set循环函数的语法是:

  @function(setname [(set_index_list)

  [| conditional_qualifier]]:expression_list);

  其中@function对应于上表中列出的四个设置循环函数之一。 setname是要循环的集合的名称。

  set_index_list是可选的。它用于创建索引列表。每个索引对应于形成setname指定的集合的父,基元集之一。当LINGO循环遍历set setname的成员时,它将set_index_list中的索引值设置为与set setname的当前成员相对应。

  conditional_qualifier是可选的,可用于限制set循环函数的范围。当LINGO循环遍历setname的每个成员时,它会计算conditional_qualifier。如果conditional_qualifier的计算结果为true,则对set成员执行@function。否则,它被跳过。

  expression_list是要应用于set setname的每个成员的表达式列表。使用@FOR函数时,表达式列表可能包含多个表达式,以分号分隔。这些表达式将作为约束添加到模型中。使用剩余的设置循环函数(@ SUUM,@ MAX,@ MIN和@PROD)时,表达式列表只能包含一个表达式。如果省略set_index_list,则必须在set set name上定义expression_list中引用的所有属性。

  基于集的建模示例

  上一页下一页

  回想一下本节前面的讨论,可以在LINGO中创建四种类型的集合。 这些集类型是:

  ·原始的,

  ·密集派生,

  ·稀疏派生 - 显式列表,和

  ·稀疏派生 - 成员资格过滤器。

  如果您想查看这四种类型,请参阅什么是集合? 和模型的集合部分。 本节的其余部分将通过构建和讨论四个模型来帮助您发展基于集合的建模的才能,每个模型都引入了上面列出的集合类型之一。

精品推荐
同类推荐
    相关下载
    • 最新排行
    • 最热排行
    • 评分最高
    行业软件排行榜
    实时热词