53分发
目录
新特性与亮点
GAMS Studio
选择GAMS安装
现在可以在GAMS Studio中选择要使用的GAMS安装。设置GAMS路径有两种方式:
- 使用命令行参数
--gams-dir。
- 在
设置的常规页面中设置。
两种方式都会将路径存储在GAMS Studio设置中,并在下次启动时使用。

图:Studio系统目录设置
快速查找和替换
GAMS Studio 现在在所有文本视图中都支持快速查找功能,可通过 Ctrl+F(macOS上为 Command+F)调用。使用 F3 / Shift+F3 查找下一个/上一个。该功能绑定到当前标签页,并在切换到其他标签页时更改焦点。当当前编辑器不是只读模式时,使用 Ctrl+R(macOS上为 Command+R)还可以打开替换区域。
已知的复杂搜索功能仍可通过 Shift+Ctrl+F(macOS上为 Shift+Command+F)使用,并支持向前(F4)和向后(Shift+F4)并行搜索,与快速查找相互独立。

图:Studio查找功能
求解器 Lindo/LindoGlobal
Lindo Systems 发布了新的大版本 Lindo API 16。该版本承诺带来显著的性能提升:大型线性模型求解速度提高最多30%,整数问题提高20%,并且能够处理以前"无法求解"的案例。复杂非线性问题的可靠性、数学精度和求解过程确定性也得到了改进。
求解器 SCIP
SCIP 优化套件的最新大版本已集成到GAMS中。在SCIP 10的众多变化中,我们重点介绍以下三个可能尤其令GAMS/SCIP用户感兴趣的功能:
- 在求解NLP或MINLP时,SCIP可以调用本地NLP求解器来加速可行解的搜索。到目前为止,GAMS/SCIP中唯一可用的NLP求解器是高性能内点求解器 Ipopt。虽然这通常是一个好的选择,但在某些情况下,基于积极集方法且可热启动的方法更为高效。因此,GAMS为SCIP 10版本贡献了一个与求解器CONOPT的接口。拥有GAMS/CONOPT许可的用户,GAMS/SCIP现在默认将使用CONOPT作为NLP求解器。当然,使用Ipopt作为NLP求解器的选项仍然保留。要指示GAMS/SCIP使用Ipopt,请将参数
nlpi/ipopt/priority 设置为3000。
- SCIP自6版本(2018年)起就包含了Benders分解框架。我们之前没有为GAMS/SCIP记录这个功能,因为此前只能获取主问题变量的解值。对于版本10,GAMS为SCIP贡献了一个新的松弛器插件,该插件在问题的副本上应用分解,并允许检索所有主问题和子问题变量的解值。要使用Benders分解,需要提供分解信息(变量
.stage属性:1表示主变量,更高的值表示子问题),并将参数 decomposition/applybenders 设置为TRUE。请注意,SCIP的Benders分解只有在子问题是连续且被识别为凸的情况下才能高效工作。当所有链接变量为二元类型时,使用非凸子问题仍然是可能的,但可能效率不高。
- SCIP现在能够计算不可行问题的不可约不可行子集(IIS),即一组无法同时满足的约束集合,但去掉其中任何一个约束后就会变得可行。IIS已被证明是分析模型实例不可行性的宝贵工具,许多求解器都支持此功能。对于SCIP,可以通过将参数
gams/iis 设置为1或2来触发IIS的计算。
53.1.0 主版本(2026年2月16日)
致谢
感谢所有报告问题并提出改进建议的用户,特别感谢 Erling D. Anderson、Paul Buckland、Christophe Gouel 和 Bruce McCarl。
GAMS 系统
GAMS
- 通过缓存选项定义,改进了执行后端到GAMSPy的连接性能。
- 改进了
$gdxLoadAll 的错误报告,向lst文件写入更多信息。
- 修复了维护到期日期的计算问题。
- 修复了当GAMSPy模型通过GAMS代码块使用嵌入式ReSHOP代码但未安装ReSHOP求解器时,GAMS执行后端崩溃的问题。
GAMS Connect
- ExcelWriter 选项
clearSheet 新增允许值 range。
- 在不兼容的数据库中使用 SQLWriter 的
schemaName 时,现在会进行验证并报错。
- 修复了 CSVReader 在空数据上失败的问题。
- 修复了 Projection 代理在某些情况下丢失特殊值
NA 和 UNDF 的问题。
求解器
- 某些求解器链接的求解跟踪(solve trace)功能已扩展,当找到改进的可行解时会额外写入一条带有
I 标识的记录。这些行默认启用,可通过求解器链接选项 solvetraceincumbent 或 miptraceincumbent 控制(适用于AlphaECP、CBC、COPT、CPLEX、GUROBI、HiGHS、SBB、SCIP和XPRESS)。该选项指定触发写入 I 行的原始边界最小绝对变化量,默认值为10-6。
CPLEX
- 恢复了选项
miptracenode 和 miptracetime。
EXAMINER
- 更新了跟踪文件写入功能,使其更加健壮和灵活。
- 对输出进行了多方面的优化。
- 隐藏求解器 Examiner2 将在未来版本中移除。
GUROBI
- 新库版本 13.0.1。
- 修复了选项
freegamsmodel。
- 修复了选项
concurrentmethod。
- 修复了目标函数的敏感性分析。
- 修复了不可行模型无解时的模型状态。
HiGHS
- 增加了在GPU上运行cuPDLP-C的CUDA 13支持。
KNITRO
- 新库版本 15.1.0。
- 使用增广拉格朗日(AL)算法(
nlp_algorithm = 6)时的性能改进。
- 新选项
presolveop_clique_merging:启用或禁用Knitro预求解操作中尝试合并团以加强公式化的功能。
- 新选项
presolveop_probing:启用或禁用通过固定整数变量分析衍生结果的Knitro预求解操作。
- 新选项
mip_heuristic_fixpropagate:启用或禁用MIP固定传播启发式算法。
- 新选项
writeprob:将问题写入文件(格式基于扩展名)。
- 选项
ftol 的默认值更改为1e-12。
LINDO/LINDOGLOBAL
- 新库版本 16.0.110。
- 更快的线性求解器:
- 整数求解器改进:
- 新的启发式算法帮助找到之前无法求解实例的高质量解。
- 由于再优化增强,平均达到最优速度提高15-20%,在Lindo标准基准套件上多解决20%的实例。
- 非线性和全局求解器增强:
- 由于改进的恢复策略,在困难非线性问题上表现更优。
- 改进了基于熵最大化的多起点求解器。
- 改进了线性化过程和常见项的识别。
- 通过引入变量边界实现更紧凑的线性松弛。
- 改进了全局求解器求解路径的可重复性。
MOSEK
- 新库版本 11.1.5。
- 更新了线程数的自动选择,不再使用超过32个线程。
- 在使用超过8个线程时,减少了基于图划分排序的内点优化器的内存消耗。
- 当求解所有离散变量已固定的混合整数问题(
solvefinal)时,现在会调整所有线性方程的右侧项和变量边界,使混合整数问题的解满足所有线性约束,与可行性容差无关。这增加了固定问题成功求解的机会。
NLPEC
- 修复了在
refType 设置为 "median" 且上界为负的双重有界变量时的失败问题。
SCIP 优化套件
- 新库 PaPILO 3.0.0。
- 改进了主导列预求解,对列主导弧应用拓扑压缩。
- 新的并行化团合并预求解器。
- 新库 SoPlex 8.0.1。
- 新库 SCIP 10.0.1。
- 预求解:
- 变量的隐式整数性现在区分为强类型和弱类型,取决于整数性是对所有可行解还是仅对至少一个最优解成立。
- 新增预求解器 "implint",通过检测问题中的(转置)网络子矩阵来检测隐含整数变量(当前默认禁用)。新参数
presolving/implint。
- 更改了
presolving/restartminred 和 presolving/immrestartfac 的默认值从0.1改为0.05。
- PaPILO的团合并预求解器现已可用。新增参数:
presolving/milp/enablecliquemerging、presolving/milp/maxedgesparallel、presolving/milp/maxedgessequential、presolving/milp/maxcliquesize、presolving/milp/maxgreedycalls。
- 对称性处理:
- 增加了更多处理反射对称性的技术,特别是对于列反射的轨道多面体以及行和列可通过对称性排列的矩阵。
- 轨道多面体约束处理器已拆分为完整轨道多面体和打包/分区轨道多面体的不同处理器,以减少内存使用。参数
constraints/orbitope 被 constraints/orbitope_full 和 constraints/orbitope_pp 取代。
- 对称性检测不再单独处理隐式整数变量,而是根据变量边界和隐含整数性推断的变量类型计算对称性。
- 简化了所有边颜色相同情况下的对称性检测图。
- 参数
propagating/symmetry/nautymaxncells 和 propagating/symmetry/nautymaxnnodes 由新参数 propagating/symmetry/nautymaxlevel 替代,以限制Nauty搜索树的深度。
- 割平面:
- 新增分割器 "flower",用于从AND约束和非线性乘积表达式生成花切割。新参数
separating/flower。
- 冲突分析:
- 新增广义解析冲突分析,直接在线性约束上操作,而非冲突图。新增参数:
conflict/usegenres、conflict/reduction、conflict/mbreduction、conflict/maxvarsfracres、conflict/resfuiplevels、conflict/fixandcontinue、conflict/maxcoefquot。
conflict/maxvarsfac 的上限从∞改为1。
- 非线性:
- 新增到NLP求解器CONOPT的接口。新参数
nlpi/conopt/priority 和 nlpi/all/priority。
- 将二阶锥检测扩展到简单的双线性约束,例如 x·y ≥ 1。
- Benders框架:
- 新增松弛器
benders,给定问题和分解信息,在子SCIP中运行Benders分解并返回主SCIP的解。
- 不可行性分析:
- 新增搜索不可约不可行子系统(IIS)的功能,以及IIS查找器插件
greedy,该插件实现了基于贪心添加和删除的动态批处理大小算法。
- 杂项:
- 分支定界树内(根节点后)的重启现在仅在存在全局变量固定时应用。
- 新参数
randomization/randomseedshiftmultiplier:偏移乘数,默认值为10。设为0可恢复SCIP 9的行为。
propagating/.../timingmask 参数现在可以设为0以完全禁用传播器。
constraints/components/propfreq 和 constraints/components/maxdepth 的默认值已更改。
- 新参数
lp/minsolvedepth:求解LP的最小深度下限。
- 更多详情见发布报告。
- GAMS/SCIP 现在默认使用CONOPT作为NLP求解器(如果模型实例符合演示或社区许可限制,或者有GAMS/CONOPT许可)。要恢复使用Ipopt,请设置参数
nlpi/ipopt/priority 为3000。
- Benders分解现在可在GAMS/SCIP中使用。使用参数
decomposition/applybenders 对已提供分解信息的问题应用Benders算法求解。
- 现在可以通过将选项
gams/iis 设置为1或2来触发IIS的计算。
XPRESS
- 新增选项
freegamsmodel。
- 更改了解池的行为:当
solnpoolCapacity 大于1时启用XPRESS解池。
- 将
solnpoolCapacity 的默认值更改为1。
- 修复了使用解池时的罕见错误。
- 修复了无解的不可行模型状态。
- 修复了选项
objnabstol 和 objnreltol 为字符串列表选项。
工具
GAMS Studio
- 新版本 1.24.0:
- 新功能:在文本编辑器底部添加了用于在当前文件中搜索的快速查找"find"。
- 快速查找通过
Ctrl+F(macOS上为 Command+F)调用,使用 F3 / Shift+F3 查找下一个/上一个。
- 使用
Ctrl+R(macOS上为 Command+R)时,如果当前编辑器不是只读模式,还会打开替换区域。
- 复杂的"搜索"对话框现在通过
Shift+Ctrl+F(macOS上为 Shift+Command+F)调用,使用 F4 / Shift+F4 搜索下一个/上一个。
- 快速查找已添加到进程日志、GAMS发布说明和Studio更改日志中。
- 在设置对话框中添加了GAMS系统目录配置,用于在不同的GAMS安装之间切换。
- 改进了GAMS系统目录的设置字段。
- 将搜索和替换配置添加到设置中,并在Studio启动时恢复配置。
- 将UNC路径转换为许可证对话框的本地路径。
- 更多搜索改进:
- 改进了搜索和替换对话框的选择行为。关闭对话框且未打开搜索结果列表时,删除结果选择。
- 改进了搜索和替换文件模式,默认模式从
* 改为 *.gms。
- 确保在关闭对应标签页时关闭文件系统上的列表文件。
- 改进了
--integrated-help=on/off 命令行选项的行为。
- 在执行暂停时,在调试模式下显示LST行号。
- 将文件打开对话框的起始目录更改为当前项目的基础目录。
- 在项目资源管理器上下文菜单中将"删除项目"重命名为"关闭项目"。
- 修复了运行MIRO时主文件的路径问题。
- 修复了MIRO菜单的启用问题。
- 修复了模型库对话框的通配符匹配问题。
- 修复了文件夹中的搜索和替换问题。
MPS2GMS
API
GAMS Transfer Python
- 在验证 Container 中符号顺序时的性能相关增强。
- 增加了对 pandas 3.0.0 的支持。
GDX
GMO
- 以前,对线性模型设置
gmoUseQ 为 true 不受支持:GMO API中的多个函数会将此情况视为致命错误或以未定义方式运行。现在已调整:在这种情况下可以高效地提供合理的输出。
模型库
GAMS 测试库
- 更新了 caproject.gms、cacsvr.gms、casqlw.gms、caxlsrw.gms 等测试文件。
53.2.0 次版本(2026年3月3日)
致谢
感谢所有报告问题并提出改进建议的用户,特别感谢 Suzanne Le Bihan 和 Alice Boucher。
GAMS 系统
GAMS Connect
- 修复了 GDXWriter 和 GAMSWriter 在某些情况下以错误顺序注册标签的问题。
求解器
COPT
- 修复了启用
solvetrace 会改变求解器行为(在预求解中禁用对偶化简)的问题。
CPLEX
- 修复了多线程运行CPLEX时
miptrace 打印过多非改进的可行解记录(I)的问题。
GUROBI
- 修复了
solvefixed 不仅在求解状态为正常(1)时执行,而是只要存在解就执行。
- 修复了列表文件不包含完整日志的问题。
- 修复了求解后缺少解摘要的问题。
XPRESS
- 新库版本 46.01.02。
- 修复了
mipcleanup 不仅在求解状态为正常(1)时执行,而是只要存在解就执行。
- 修复了列表文件不包含完整日志的问题。
- 修复了求解后缺少解摘要的问题。
工具
MOO
- 修复了在并行
EpsConstraint 方法期间回退求解器失败的问题。
- 修复了当方法返回零个帕累托点时工具失败的问题。
API
GAMS Transfer Python
模型库
GAMS 测试库
- 更新了 cagamsrw.gms、cagdxrw.gms、moo1.gms 等测试文件。
53.3.0 次版本(2026年3月18日)
致谢
感谢所有报告问题并提出改进建议的用户,特别感谢 Scott McDonald、Bruce McCarl、Erling Andersen 和 Grégoire Pichenot。
求解器
CBC
- 新库版本 Cbc 2.10.13、Cgl 0.60.10、Clp 1.17.11。
- 修复了CBC将预求解中消耗的CPU时间从时间限制中扣除,从而可能导致在达到时间限制前以资源中断状态终止的问题。
GUROBI
- 修复了
miptrace 在可行解回调上下文(MIPSOL)中也被触发的问题。
IPOPT
MOSEK
- 新库版本 11.1.9(Linux、Windows、macOS/arm64)和 10.2.19(macOS/x86_64)。
- 提供了更多输出和MOSEK许可选项:
MSK_IPAR_CACHE_LICENSE、MSK_IPAR_LICENSE_DEBUG、MSK_IPAR_LICENSE_PAUSE_TIME、MSK_IPAR_LICENSE_SUPPRESS_EXPIRE_WRNS、MSK_IPAR_LICENSE_TRH_EXPIRY_WRN、MSK_IPAR_LICENSE_WAIT、MSK_IPAR_LOG_EXPAND、MSK_IPAR_MAX_NUM_WARNINGS。
- 将
MSK_IPAR_CACHE_LICENSE 的默认值更改为 MIP 求解的 MSK_OFF,以避免使用MOSEK许可服务器且只有一个MOSEK许可可用时,固定问题最终求解的问题。
XPRESS
- 修复了
miptrace 在可行解回调上下文(IntSol)中也被触发的问题。
工具
GAMS Studio
- 新版本 1.24.2:
- 更改了在代码编辑器中按F1时对非保留字和非美元命令选项的行为,跳转到文档搜索页面而非索引页面。
- 在Studio启动时添加了对有效GAMS安装的检查,失败时显示消息框。
- 当Studio设置中选择了GAMS系统目录但存在更高GAMS版本时显示警告。
- 修复了滚动后代码编辑器中缺少匹配标记的问题。
- 修复了包含只读文件的多个文件上"全部替换"的文件选择不匹配问题。
- 修复了设置>工作空间中第二个表格的高度问题。
- 修复了通过编辑>高级>删除行时最后一行未被删除的问题。
- 修复了模型库中的第一个文件始终带有
.gms 后缀,导致具有不同后缀的文件为空的问题。
- 修复了按F4时"此文件"范围的搜索行为跳回前一个文件的问题。
- 修复了搜索中F4和Shift+F4打开当前下拉框而不是继续搜索的问题。
- 修复了从GAMS安装中启动Studio时忽略用户选择的GAMS目录的问题。
API
Matlab Transfer
53.3.1 维护版本(2026年4月2日)
致谢
感谢所有报告问题并提出改进建议的用户。
求解器
GUROBI
LINDO/LINDOGLOBAL
SCIP 优化套件
- 新库 SoPlex 8.0.2。
- 新库 SCIP 10.0.2。
XPRESS
53.4.0 次版本(2026年4月21日)
致谢
感谢所有报告问题并提出改进建议的用户。
GAMS 系统
GAMS
- 修复了
card 运算符对通过 solve 语句定义的标量变量错误返回0的问题。现在正确设置为1。
- 修复了GAMS Studio许可对话框中显示的系统信息——特别是发布日期。
求解器
LINDO/LINDOGLOBAL
工具
GAMS Studio
- 新版本 1.24.3:
- 增加了对外部取消的GAMS Engine作业的检测。
- 改进了参考文件查看器中工具提示的位置和超时。
- 更新了搜索结果视图标题,使其更具描述性和用户友好性。
- 修复了在LST查看器中滚动后选中区域的搜索消失的问题。
- 修复了Linux和macOS上GAMS进程中断无法正常终止的问题。
- 修复了GAMS Engine处理模型名中包含
# 的模型的问题。
- 修复了输入结束
% 字符时语法补全器意外打开的问题。
- 修复了输入字段的Tab键顺序以改进表单导航。
- 修复了MIRO部署后日志中缺少链接的问题。
- 修复了更新通知中可能错误地建议旧版而不是最新可用版本的错误。
- 修复了从欢迎页面切换到其他标签页后丢失命令行参数的问题。
- 快速查找修复:
- 为"全部替换"添加了确认对话框。
- 修复了使用Ctrl+R启动替换时缺少初始值的问题。
- 修复了替换中"继续"功能失效的问题。
- 修正了多个工具提示。
- 修复了用ESC关闭搜索后按F4时搜索匹配项错误地重新出现的问题。
- 修复了搜索结果视图关闭后搜索对话框无法响应导航键的问题。
- 修复了搜索中的ESC处理。第一个ESC隐藏搜索对话框,第二个关闭并重置搜索数据。
53.5.0 次版本(2026年5月5日)
致谢
感谢所有报告问题并提出改进建议的用户,特别感谢 Marvin Studtrucker。
GAMS 系统
GAMS
- 修复了加载带有未使用标签和全域别名符号的GDX文件时导致GAMS崩溃的问题。
- 修复了在Windows上并行优化运行时可能导致间歇性许可错误的错误。
求解器
COPT
- 新库版本 8.0.4。
- 改进了QP问题的数值稳定性。
- 改进了计算对偶Farkas和射线的性能。
- 新选项
QMatrixTol。
GUROBI
- 修复了Gurobi返回码
LOCALLY_OPTIMAL 和 LOCALLY_INFEASIBLE 的处理。
53.5.1 维护版本(2026年5月20日)
致谢
感谢所有报告问题并提出改进建议的用户,特别感谢 Shima Sasanpour。
GAMS 系统
GAMS
- 修复了GAMS 50.1.0中引入的一个错误,即当使用
embeddedCode Python 时并非所有标签都被正确清理。
GMSPython
urllib3 已升级到2.7.0版本,修复了Python 3.13上的问题。
求解器
CPLEX
GUROBI
- 新库版本 13.0.2。
- 修复了
freegamsmodel 情况下变量和约束名称的处理。
- 修复了
improveStart 选项的默认变量惩罚。
- 修复了
improveStart 和 multObj 选项的可用性。
XPRESS
- 移除了
errorf 到 erf 的不正确函数映射。
- 修复了
freegamsmodel 情况下变量和约束名称的处理。
在线留言
尊敬的客户朋友,如您有任何意见建议,请通过下表反馈给我们,我们会尽快与您联系。
|