现在创建新的代数建模语言 (AML) 的主要好处和动机是什么?

What are the main benefits and motivations for creating new algebraic modeling languages (AML) nowadays?

在过去的几十年中,创建了多种代数建模语言 (AML),例如 AMPL, GAMS, AIMMS,是最著名和使用最广泛的名称之一。我一直主要使用前两个选项。

但是,最近创建了新的 AML,并且现在有很好的社区支持,例如,Pyomo and JuMP 是两个可能最有前途的名称。我尝试了他们两个。显而易见的是,对于具有 Python 或 Julia 编程语言经验的人来说,这两个 AML 是很棒的工具,而且学习曲线要​​陡峭得多。

创建这些新 AML 的其他主要好处(可能是新功能、更高效率、扩展功能)和总体动机是什么?

我想最突出的原因是对许多不同求解器的统一处理和支持、数据结构的巧妙使用、与其他常用工具(如 Excel、MATLAB 等)的接口以及方便的嵌入用流行语言编写的程序。由于标准问题的优化越来越成为一种黑盒工具,它可以很容易地应用于例如基于 Web 的应用程序 - 通常用面向对象的代码编写。