1
0
一个名为yalmip的matlab工具箱允许您在matlab中进行公式化。这反过来使得它很容易与其他预处理或后处理需求集成。 我以前是AMPL的用户,但是在找到Yalmip之后,我不再使用AMPL了。因为这样可以节省编写代码的时间,从而准备输入AMPL的数据并处理输出。 |
2
18
你很困惑。 AMPL和Matlab是两个完全不同的东西,它们可能在某些应用领域相交,但它们是为了解决完全不同类型的问题。 AMPL是一种描述优化问题的语言。它本身不做任何事情:它只为用户提供与解算器交互的方法。解算器可以用于线性规划(CPLEX)、非线性规划(IPOPT)或其他更深奥的类型。 Matlab是一种用于技术计算的语言:线性代数、微分方程、统计学和一些优化——Matlab的优化能力与AMPL相差无几。 AMPL通过自动微分提供精确的一阶和二阶导数,这是一个只有GAM可以测量的关键特性,你可能不知道这有多重要和困难,但相信我,这是。 没有人愿意为“AMPL编码员”提供工作,因为没有这样的事情。这项工作是提供给一个人谁知道什么是优化和什么工具在最前线。同样,没有人给“matlab编码器”提供工作,他们给一个熟悉matlab的工程师提供工作。 最后,AMPL不是免费的。您可以免费使用学生版,仅用于学习目的。这种版本将您限制为100个变量和约束(我假定您知道这意味着什么)。如果您想要一个成熟的AMPL,您需要支付许可证和解决者的许可证,每个人!ipopt是开源的,但是cplex非常昂贵。 是的,AMPL还在使用,而且非常常用。我用它来计算航天器的最佳轨道,相信我,没有什么比这更接近了。我喜欢matlab,但是使用matlab进行认真的优化就像用勺子打开一罐食物-你可能会成功,但会有血和泪。 AMPL和matlab有一个共同点:它们都是由杰出的科学家(moler->matlab,gay->ampl)在各自领域的前沿创造的。 |