Choose a backend
Solver backends are used by a prescriptive reasoner to solve a decision problem. This overview helps you choose the backend that best fits your problem type and scale.
Which backend should you use?
Section titled “Which backend should you use?”Use this table to choose the right backend for your problem:
| Backend | Capabilities | When to use it |
|---|---|---|
"highs" |
| Linear model or convex quadratic objectives. Bundled, no license required. |
"gurobi" |
| Commercial solver for large/hard MIPs or you need QCP/NLP support. Requires license + backend enablement. |
"ipopt" |
| Nonlinear continuous models. |
"minizinc" |
| CP-style constraints (for example, all_different) and discrete CSPs. Uses the Chuffed backend. |
If you are not sure, start with HiGHS. It is versatile and open source, so you can try it out without needing a license or setup.
Where to go next
Section titled “Where to go next” Use HiGHS Bundled open-source default for LP/MILP and convex QP.
Use Gurobi Commercial solver for large/hard MIPs and broader model classes.
Use Ipopt Continuous nonlinear models (local optimality).
Use MiniZinc Constraint programming (CP) for discrete feasibility/optimization.