ClimateMARGO/ClimateMARGO.jl

Experiment with converting to NLopt instead of JuMP

Opened this issue · 0 comments

fonsp commented

Right now, margo's optimization is done using JuMP, but we want to use NLOpt.jl instead. The two reasons are:

  • Currently, the model has to be written twice in the source code of ClimateMARGO.jl: once in Julia functions, and once in the JuMP syntax. We tried calling the Julia functions from JuMP to avoid this problem, but the performance impact of connecting the two is too large: #18
  • JuMP will find a local optimum, but we want a global optimum. We suspect that the current local optima are global, but for different parameter values, this might not be the case. NLOpt.jl can do global optimization. (@hdrake can say more)