Nonlinearsolve.jl: Fast and Robust Solvers for Nonlinear Equations in Julia
1–10 of 37 posts
Re: Nonlinearsolve.jl: Fast and Robust Solvers for Nonlinear Equations in Julia
#2https://coin-or.github.io/Ipopt/
IPOPT isn't tailored to NLEs specifically, but it does solve NLPs well. It also uses some amazing Fortran linear algebra routines from Harwell (MA57).
Re: Nonlinearsolve.jl: Fast and Robust Solvers for Nonlinear Equations in Julia
#3Would be interested to see this compared to IPOPT. https://coin-or.github.io/Ipopt/ IPOPT isn't tailored to NLEs specifically, but it does solve NLPs well. It also uses some amazing Fortran linear algebra routines from Harwell (MA57).
Re: Nonlinearsolve.jl: Fast and Robust Solvers for Nonlinear Equations in Julia
#4Would be interested to see this compared to IPOPT. https://coin-or.github.io/Ipopt/ IPOPT isn't tailored to NLEs specifically, but it does solve NLPs well. It also uses some amazing Fortran linear algebra routines from Harwell (MA57).
Re: Nonlinearsolve.jl: Fast and Robust Solvers for Nonlinear Equations in Julia
#5Would be interested to see this compared to IPOPT. https://coin-or.github.io/Ipopt/ IPOPT isn't tailored to NLEs specifically, but it does solve NLPs well. It also uses some amazing Fortran linear algebra routines from Harwell (MA57).
This article is about “solving” differential equations and not convex optimization.
This article is about solving nonlinear equations (not differential equations, not sure where you got that from). All NLP optimizers can solve nonlinear equations — it’s a special case where the objective is constant.
Ipopt is not a convex solver so am not sure what convex optimization you are referring to. It is a general nonlinear solver, which covers nonconvex problems as well (I worked on nonconvex nonlinear programs for a decade and it was my primary solver)
Also all nonlinear equation systems are nonconvex. (A convex program requires equality constraints to be linear)
Re: Nonlinearsolve.jl: Fast and Robust Solvers for Nonlinear Equations in Julia
#6Earlier quoted context omitted.
This article is about “solving” differential equations and not convex optimization.
> This article is about “solving” differential equations and not convex optimization. This article is about solving nonlinear equations (not differential equations, not sure where you got that from). All NLP optimizers can solve nonlinear equations — it’s a special case where the objective is constant. Ipopt is not a convex solver so am not sure what convex optimization you are referring to. It is a general nonlinear…
Maybe you have something more particular in mind when you say "systems", but not all nonlinear functions are non-convex. Least squares, for example, is nonlinear and convex.
Also note that IPOPT, while wonderful, is a local solver. It may not be limited to convex problems, but those are the only ones it's guaranteed to solve to optimality.
Re: Nonlinearsolve.jl: Fast and Robust Solvers for Nonlinear Equations in Julia
#7Earlier quoted context omitted.
> This article is about “solving” differential equations and not convex optimization. This article is about solving nonlinear equations (not differential equations, not sure where you got that from). All NLP optimizers can solve nonlinear equations — it’s a special case where the objective is constant. Ipopt is not a convex solver so am not sure what convex optimization you are referring to. It is a general nonlinear…
> all nonlinear equation systems are nonconvex Maybe you have something more particular in mind when you say "systems", but not all nonlinear functions are non-convex. Least squares, for example, is nonlinear and convex. Also note that IPOPT, while wonderful, is a local solver. It may not be limited to convex problems, but those are the only ones it's guaranteed to solve to optimality.
Re: Nonlinearsolve.jl: Fast and Robust Solvers for Nonlinear Equations in Julia
#8Re: Nonlinearsolve.jl: Fast and Robust Solvers for Nonlinear Equations in Julia
#9Re: Nonlinearsolve.jl: Fast and Robust Solvers for Nonlinear Equations in Julia
#10On GPU, it can only solve small instances which one single GPU thread can handle, and can only benefit from GPU by solving multiple instances, right?
I think this use case isn't really discussed in the paper because the solver doesn't need to specialize on that case, it should 'just work' without any intervention needed.