独立的模型和用户界面
面向对象的GAMA API允许GAMS无缝整合到为交互提供适当类别的应用中。这三个面向对象GAMS API是.NET, Java
和Python与.NET framework 4 (Visual Studio 2010)、Java SE 5或更高版本以及Python 3.4, 2.7和2.6。
除了面向对象的GAMA API,还有*级别(或级别) 的GAMS API,它们的使用要求有高深知识的GAMS组件库。
除了API, GAMS还提供智能链接到应用程序,如MS Excel, MatLab或R。用户可以在这个环境中继续工作,通过一个
API就可以访问GAMS所有的优化功能。这就允许应用中的模型数据和结果可以可视化和分析了。
**过120多个国家的不同领域的跨国公司、学校、研究机构和**都在使用GAMS,包括能源化工、经济建模、农业规
划或制造业。
Independence of Model and User Interface
The GAMS object-oriented APIs allow the seamless integration of GAMS into an application by providing appropriate classes for the interaction with GAMS. The three versions of the object-oriented GAMS API: .NET, Java, and Python work with .NET framework 4 (Visual Studio 2010), Java SE 5 and up, as well as Python 3.4, 2.7, and 2.6 accordingly.
In addition to the object-oriented GAMS APIs, there are expert-level (or low-level) GAMS APIs whose usage requires advanced knowledge of GAMS component libraries. See our documentation for further information on the APIs.
In addition to the APIs, GAMS offers smart links to applications like MS Excel, MatLab, or R. Through these, the user can keep working in his productive tool environment, while the application accesses all optimization capabilites of GAMS through an API. This allows for example the visualization and analyses of model data and results in the application.
通用代数建模系统(GAMS)是数学编程和优化的高级建模系统。它由一个语言编译器和一个稳定的集成各种高性能的求解器组成。GAMS适用于复杂的、大规模的建模应用,并允许您创建大的维护模型以很快的适应新的情况。
较*的建模系统
专注建模
GAMS允许用户在某种程度上,用跟数学描述非常相似的方式来制定数学模型。看一下这些例子就能说明GAMS模型的基本结构和特征以及与数学表达式的关系。GAMS让用户专注建模,通过要求简洁和精确的实体和关系规范,鼓励良好的建模习惯。GAMS语言与通用编程语言形式相似,因此对于有编程经验的人来说是熟悉的。由于模型的制定方式在某种程度上与它的数学描述类似,所以不仅是程序员,实际领域的*也能理解和维护。GAMS专注于建模并且允许做所有相关的事。
陈述性知识和程序性要素的平衡混合,允许用户在GAMS中构建复杂的算法甚至实现分解方法。尤其是解决异常问题的模型,以及随之而来的性能问题。
独立的模型和用户界面
面向对象的GAMA API允许GAMS无缝整合到为交互提供适当类别的应用中。这三个面向对象GAMS API是.NET, Java和Python与.NET framework 4 (Visual Studio 2010)、Java SE 5或更高版本以及Python 3.4, 2.7和2.6。
除了面向对象的GAMA API,还有*级别(或级别) 的GAMS API,它们的使用要求有高深知识的GAMS组件库。
除了API, GAMS还提供智能链接到应用程序,如MS Excel, MatLab或R。用户可以在这个环境中继续工作,通过一个API就可以访问GAMS所有的优化功能。这就允许应用中的模型数据和结果可以可视化和分析了。
大型、**用户社区
**过120多个国家的不同领域的跨国公司、学校、研究机构和**都在使用GAMS,包括能源化工、经济建模、农业规划或制造业。
GAMS是灵活而强大的.模型可以非常方便的从一个计算机平台移到另外一个,只要GAMS已经在每个平台被安装好.GAMS很*进行敏感度分析.使用者能够方便的规划模型来求解一个成分的不同值,然后生成一个输*,列出了每种情况的解决方案特征.模型能够同时被开发和文档化,因为GAMS允许使用者包含解释性的文本来作为任意符号和等式的定义和解释.
GAMS不断的在被增强和扩展.2.25版本包含了多个语言扩展,例如在一个循环中的SOLVE声明,INCLUDE声明,IF-ELSE声明,和使用PUT声明进行报告编写的功能.其它的加强包括增加的系统集成特征,性能改善,新的子系统,和另外的计算机平台支持.
当前版本2.50包括一个基于Intel Windows平台(95/98/ME和NT/2K/XP)的集成开发环境(IDE).GAMS 2.50的新的分发包含新的语言特征和新发表的全新/更新的求解器,一年至少4次.请检查版本声明.
示例:
从*的1963书(由George Dantzig编写)中提取的一个运输问题,用来描述GAMS的有效性.这个模型只是模型库中的部分,模型库中还包含了大量的完整GAMS模型.
支持模型的类型:
GAMS模型类型包括LP,MIP和NLPs的不同形式.这里列出了GAMS支持的所有的模型类型.
GAMS 的发展背景
GAMS 是"General Algebraic Modeling System"(一般性代数仿真系统)的缩写,较早是由美国的世界银行(World Bank)的 Meeraus 和 Brooke [Brooke, Kendrickm and Meeraus, 1992]所发展。"GAMS"事实上并不代表任何较佳化数值算法,而只是一个高级语言的使用者接口,利用 GAMS 可以很*建立、修改、除错你的较佳化模型输入文件,而输入档经过编译后,成为较低阶的较佳化数值算法程序所能接受的格式,再加以执行并写出输出档。
数值算法方面,对线性与非线性规划问题,GAMS 使用由新南韦尔斯大学的Murtagh、及史丹福大学的 Gill、Marray、Saunders、Wright 等所发展的 MINOS [Murtagh and Saunders, 1983] 算法。MINOS是 "Modular In-core Non-linear Optimization System"的缩写,这个算法综合了缩减梯度法和准牛顿法,是专门为大型、复杂的线性与非线性问题设计的算法。对混合整数规划问题,则采用亚历桑那大学的 Marsten 及巴尔*摩大学的 Singhal[1987]共同发展的 ZOOM(Zero/One Optimization Method)算法。
GAMS求解器
GAMS中包含了多个数学规划模型,下面是每个模型的模型类型和支持平台的简介。
ALPHAECP
AMPL
ANTIGONE 1.1
BARON
BDMLP
BENCH
BONMIN 1.8
CBC 2.9
CONOPT 3
CONOPT 4
CONVERT
COUENNE 0.5
CPLEX 12.7
DE
DECIS
DICOPT
EXAMINER
GAMSCHK
GLOMIQO 2.3
GUROBI 7.0
GUSS
IPOPT 3.12
JAMS
KESTREL
KNITRO 10.0
基于扩展平面切割(ECP)方法的MINLP求解器
在AMPL模型系统中使用求解器时与GAMS模型连接
MINLP确定性全局优化
成熟**解决方案的分支和减少优化向导
任意GAMS系统都配备了LP和MIP求解器
实用方便的GAMS求解器和验证方案
COIN-OR MINLP求解器执行各类分支定界和外逼近算法
高性能LP/MIP求解器
大型的NLP求解器
大型的NLP求解器
将模型转换成其他语言的标量模型的框架
(MI)NLP确定性全局优化
高性能LP/MIP求解器
产生和解决包括EMP/SP中的随机规划的确定等价
大规模随机规划求解器
求解MINLP模型框架
检查解点并评估其优点的工具
GAMS求解线性规划问题时对结构和解决方案属性的检查系统
混合整数二次模型分支定界全局优化
高性能LP/MIP求解器
有效解决多个相关模型实例的框架(收集更新分散的求解方案)
大规模非线性规划的内点优化算法
扩展数学规划求解器(包括LogMIP)
本地GAMS系统使用远程NEOS求解器框架
大型NLP求解器
GAMS专注于其核心竞争力:让用户创建可读性、可维护的模型,用较好的求解方法解决任何问题。开放的体系结构
和多个数据接口允许与外部系统无缝通信。
模型、求解器、数据、平台和用户界面都在独立层,便于切换求解器、使用多个数据集、在多个平台运行以及将GAMS
整合到现有的应用、结构和工作流中去。
OsiMosek
OsiXpress
PATHNLP
PATH
PYOMO
SBB
SCIP 3.2
SNOPT
SOPLEX 2.2
XA
XPRESS 28.01
全局--局部非线性优化求解套件
随机求解器,包括一个无限制版本的LINDOGLOBAL
成熟全局解决方案的MINLP求解器
在LINGO模型系统中使用求解器求解GAMS模型的链接
混合邻域搜索算法
GAMS线性回归求解器
MCP求解器
NLP求解器
大型LP/MIP加锥凸非线性规划系统
全局优化的多启动方法
使用其他GAMS NLP求解器把MPEC转换成NLP
全局优化的多头启动方法
Bare-Bone与CPLEX连接
Bare-Bone 与Gurobi连接
Bare-Bone与 Mosek 连接
Bare-Bone与 Xpress 连接
凸面问题的大规模NLP求解器
大规模MCP求解器
在PYOMO模型系统中使用求解器求解GAMS模型的链接
求解MINLP模型的分支定界算法
高性能约束整数规划求解器
基于NLP求解器的大规模SQP算法
高性能LP求解器
大规模LP/MIP求解器
高性能LP/MIP求解器
GAMS
提供**过25个广泛和多样化的求解器组合,包括所有预期的商业化求解器。
● LP/MIP/QCP/MIQCP: CPLEX, GUROBI, MOSEK, XPRESS
● NLP: CONOPT, IPOPTH, KNITRO, MINOS, SNOPT
● MINLP: ALPHAECP, ANTIGONE, BARON, DICOPT, OQNLP, SBB
● 混合互补问题求解器(MCP)、平衡约束数学规划求解器(MPEC)和约束非线性系统求解器(CNS)
● 免费捆绑到每个GAMS系统中的 (比如 BONMIN (MINLP), CBC (LP, MIP), COUENNE (MINLP), IPOPT (NLP)。教
育版还包括了SCIP和SOPLEX。
-/gjiiih/-
http://turntech8843.b2b168.com