I'd be interested in getting the opinion from users of GAMS and AMPL on what the strength and weaknesses of each these languages are.
相关问题
- GLPK MathProg sets and groups
- Xtext 2.9 scope provider
- How do you model a table for unit conversion?
- How to fit predefined offsets to models containing
- Step-by-step formula based _R_ codes for GLM and G
相关文章
- How to show event in a sequence diagram
- How to model an amount of Money in Java [closed]
- How do I import a SysML model (in XMI format) to P
- Difference between a subsystem and a component
- DDD modeling, interaction between aggregate roots
- How do I draw a switch statement in a graphical de
- Free/cheap PowerDesigner alternative? [closed]
- Modelling / documenting functional programs
In terms of functionality they are pretty much the same allowing to express most types of optimization problems. Personally, I prefer AMPL because it has intuitive and expressive syntax and it is very well documented in the book. Another important advantage of AMPL is that despite the fact that it is commercial you can avoid the vendor lock-in because there is an open source alternative - GNU MathProg. GAMS on the other hand used to have a more advanced IDE than those that existed for AMPL although it changed with the introduction of the new AMPL IDE.
You can find an example of the same transportation problem from George Dantzig formulated in AMPL and GAMS in their Wikipedia articles: AMPL and GAMS.
This blog has the following to say:
In my opinion, all syntax considerations are really a matter of taste; both AMPL and GAMS languages are easy to learn and offer arguably the same scope in terms of the types of models that can be considered.
At the moment of writing this post, GAMS offers a larger number of solvers. That being said, AMPL's list of solvers is not a subset of the list of GAMS solvers. For a specific application, I suggest benchmarking solvers before buying either AMPL or GAMS (for example, via the NEOS server for optimization).
Personally, I prefer the syntax of AMPL since it is closer to mathematical notation. However, I prefer GAMS for industrial applications mainly because of solver availability and because it is embedded/proven in many industries. This often simplifies dialogue with an industrial partner/client who already uses GAMS.