Differences
This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
personal:blog:2017:0203_jump_for_gams_users [2023/12/22 11:32] antonello [Resolution of the model] |
personal:blog:2017:0203_jump_for_gams_users [2023/12/22 11:39] (current) antonello [Further help] |
||
---|---|---|---|
Line 15: | Line 15: | ||
You have plenty of development environment to choose from (e.g. Jupiter, Juno), a clear modern language, the possibility to interface your model with third party libraries.. all of this basically for free.\\ | You have plenty of development environment to choose from (e.g. Jupiter, Juno), a clear modern language, the possibility to interface your model with third party libraries.. all of this basically for free.\\ | ||
It is also, at least for my user case, much faster than GAMS. Aside the preparation of the model to pass to the solver, where it is roughly equivalent, in the solver execution I can benefit of having on my system a version of IPOPT compiled with the much more performing ma27 linear solver, while for GAMS I would have to rely on the embedded version that is compiled with the MUMPS linear solver. That's part of the flexibility you gain in using JuMP in place of GAMS. | It is also, at least for my user case, much faster than GAMS. Aside the preparation of the model to pass to the solver, where it is roughly equivalent, in the solver execution I can benefit of having on my system a version of IPOPT compiled with the much more performing ma27 linear solver, while for GAMS I would have to rely on the embedded version that is compiled with the MUMPS linear solver. That's part of the flexibility you gain in using JuMP in place of GAMS. | ||
- | That's said, for people that don't need such flexibility, | + | That's said, for people that don't need such flexibility, |
Line 208: | Line 208: | ||
<code julia> | <code julia> | ||
- | if status == :Optimal | + | if status == MOI.OPTIMAL |
- | println(" | + | println(" |
- | println(getvalue(x)) | + | println(" |
+ | println(value.(x)) | ||
println(" | println(" | ||
- | [println(" | + | [println(" |
println(" | println(" | ||
- | [println(" | + | [println(" |
+ | |||
else | else | ||
println(" | println(" | ||
Line 224: | Line 226: | ||
==== Editing and running the script ==== | ==== Editing and running the script ==== | ||
Differently from GAMS you can use whatever editor environment you wish to code a JuMP script. If you don't need debugging features, a simple text editor like Notepad++ (in windows), gedit or kate (in Linux) will suffice. They already have syntax highlight for Julia.\\ | Differently from GAMS you can use whatever editor environment you wish to code a JuMP script. If you don't need debugging features, a simple text editor like Notepad++ (in windows), gedit or kate (in Linux) will suffice. They already have syntax highlight for Julia.\\ | ||
- | If you want advanced features and debugging capabilities you can use a dedicated Julia IDE, like e.g. [[http://junolab.org/|Juno]]. | + | If you want advanced features and debugging capabilities you can use a dedicated Julia IDE, like the [[https://www.julia-vscode.org/|Julia extension for VSCode]]. |
- | If you are using instead the Julia console, you can run the script as '' | + | If you are using instead the Julia terminal, you can run the script as '' |
===== Further help ===== | ===== Further help ===== | ||
- | Documentation of JuMP is available from [[https:// | + | Documentation of JuMP is available from [[https:// |
Happy modelling with JuMP ;-) | Happy modelling with JuMP ;-) |