Contents  |  ‹ Previous  |  Next ›  |  Download EPUB  |  PDF

Appendix E
Optimization Software Resources

This appendix provides a comprehensive list of optimization software packages organized by problem type. Many commercial solvers offer free academic licenses, making them accessible for educational and research purposes.

E.1 Software by Problem Type




Problem class

Open-source solvers

Commercial solvers1




Linear programming

HiGHS, CLP, GLPK, SoPlex

Gurobi, CPLEX, Xpress, COPT, MOSEK

   

Mixed-integer linear programming

HiGHS, CBC, SCIP2

Gurobi, CPLEX, Xpress, COPT, MOSEK

   

Quadratic programming

OSQP, HiGHS, Clarabel

Gurobi, CPLEX, MOSEK, KNITRO

   

General nonlinear programming

IPOPT, Bonmin (mixed-integer), NLopt

KNITRO, BARON (global), SNOPT




Table E.1: Optimization Software and their Licenses

The solver landscape changes quickly. For comprehensive, actively maintained solver lists, see the YALMIP solver page maintained by Johan Löfberg and the COIN-OR project.

E.2 Recommended Solvers for This Book

For the examples in this book, we primarily use:

Gurobi:

A high-performance commercial solver with excellent support for LP, MIP, and QP problems. Free for academic use with registration at https://www.gurobi.com/academia/academic-program-and-licenses/.

GLPK (GNU Linear Programming Kit):

A free, open-source solver for LP and MIP problems. Available at https://www.gnu.org/software/glpk/.

CBC (COIN-OR Branch and Cut):

A free, open-source MIP solver. Part of the COIN-OR project at https://github.com/coin-or/Cbc.

SCIP:

One of the fastest non-commercial solvers for MIP. Free for academic use at https://www.scipopt.org/.

E.3 Modeling Languages and Interfaces

In addition to solvers, you’ll need a way to formulate your optimization problems. We use:

Python with PuLP:

A free, open-source library for formulating LP and MIP problems in Python. Install with pip install pulp.

Python with Gurobipy:

Gurobi’s native Python interface, providing direct access to all Gurobi features. Included with Gurobi installation.

Excel Solver:

Built into Microsoft Excel, suitable for small problems and educational purposes.

AMPL:

A widely used algebraic modeling language. The AMPL Book is available for free download at https://ampl.com/resources/the-ampl-book/chapter-downloads/.

AIMMS:

A commercial modeling system with free academic licenses. Optimization modeling resources available at https://www.aimms.com/english/developers/resources/manuals/optimization-modeling/.

E.4 Gurobi Tutorials and Resources

Gurobi provides extensive free educational materials:

© 2026 Robert Hildebrand and contributors · Licensed CC BY-SA 4.0 · Sources and attribution · Book home