小智 6
这篇博客有以下内容:
这两个系统都非常擅长它们正在做的事情并且被广泛使用,因此无论选择哪一个都不会出错。我可能会建议为您的同事和合作者使用的建模系统添加额外的分数。这使得交换模型和数据变得更加容易,并且在讨论问题、技巧、问题等时也变得更加容易。
Bob Fourer (AMPL) 回答:
很难找到一个能够就两个竞争系统提供同样专业建议的人,因为一旦您熟悉其中一个系统,您通常就没有太多动力继续了解另一个系统。但这里有一些来自我的不公正观点的评论。
AMPL 的设计理念是更接近数学符号,并且通常比 GAMS 使用起来更自然,而且它在这方面更胜一筹。GAMS 模型通常比 AMPL 模型依赖更多的特殊约定和重新表述;一个典型的例子是经常广泛使用 GAMS $ 运算符来施加各种条件。此外,尽管有 IDE,GAMS 从根本上来说更像是一个批处理系统,而 AMPL 提供了更灵活的交互式探索模型和结果的选项。最后,虽然在某些领域 GAMS 是通过长期使用而建立的,但我仍然看到这些领域的建模者选择 AMPL,特别是当他们正在进行不依赖于现有 GAMS 模型的新项目时。
在我看来,AMPL 和 GAMS 在实践中比这里建议的更接近(例如,在 GAMS 中使用 $ 的地方,在 AMPL 中会使用 : )。实际上,在进行实际工作时,我稍微更喜欢 GAMS 语法,因为它更紧凑,并且求和结束的位置很明显(在 AMPL 中,这是基于运算符优先级的,在 GAMS 中,总和在视觉上用括号括起来)。