Adaptive mesh refinement in JuMP

I have a non-linear programming problem similar to the space shuttle problem in the JuMP tutorial Optimal control for a Space Shuttle reentry trajectory · JuMP. I want to implement adaptive mesh refinement to ensure an accurate solution. Does anyone know a relatively easy way to do this in/on top of JuMP?

1 Like

JuMP doesn’t provide any mechanisms for doing this. You’ll have to code your own models or algorithms.

What you probably need to do is some iterative method, where you solve the problem, look at the solution, and then re-run with an updated mesh based on some metric.

For example, you might want to add more steps at a place where the gradient of the state variables are large. I would guess there’s probably some standard literature on this, but I don’t really know the field.

The closest example I know of is PDENLPModels.jl, which has a JuMP interface via NLPModelsJuMP.jl.

1 Like