3 ms·
https://www.amazon.com/Model-Building-Mathematical-Programming-Williams/dp/1118443330 https://www.amazon.com/Model-Building-Mathematical-Programmi... This is t
by 7thaccount 5y ago
https://www.amazon.com/Model-Building-Mathematical-Programming-Williams/dp/1118443330 https://www.amazon.com/Model-Building-Mathematical-Programmi...
This is the canonical introduction book recommended by Gurobi. I've found it to be great for those getting into the subject. It has math of course, but the focus is on going over the basics of LP, integer, nonlinear, Mixed-Integer...etc, followed by lots of examples. I think it's the best book to start with to get a feel for the subject of OR, before diving into the harder books.
- wenc 5y agoI used the Williams book in grad school and it provided context and motivation for MIP (mixed-integer) modeling, but for real-world MIP modeling, this guide from FICO is actually much better for practitioners. This is the cheat sheet for MIP that I wished I had when I started out. It lays out all of the most useful MIP formulations in a simple and compact way. https://www.msi-jp.com/xpress/learning/square/10-mipformref.pdf https://www.msi-jp.com/xpress/learning/square/10-mipformref....
- 7thaccount 5y agoThanks for the tip!
- wenc 5y agoJust throwing another tip out there: if you're finding yourself having to model anything mildly nonlinear, but find yourself shackled by the linearity constraints of a Mixed Integer Program (MIP), you can use a statistical/ML technique called MARS [1] to regress a piecewise-linear model from your nonlinear data to approximate said nonlinear function. MARS models are essentially models with constant or max functions as basis functions, e.g. y = a₀ + a₁ max(0, x − b₁) + a₂ max(0, x − b₂) + ... max(0,x) functions are very easy to model in MIPs. [1] https://en.wikipedia.org/wiki/Multivariate_adaptive_regression_spline https://en.wikipedia.org/wiki/Multivariate_adaptive_regressi...
- 7thaccount 5y agoI mostly just do LP & MIP (MILP), but will write this down in case I find a nonlinear need. Thank you!