TE
TechEcho
Home24h TopNewestBestAskShowJobs
GitHubTwitter
Home

TechEcho

A tech news platform built with Next.js, providing global tech news and discussions.

GitHubTwitter

Home

HomeNewestBestAskShowJobs

Resources

HackerNews APIOriginal HackerNewsNext.js

© 2025 TechEcho. All rights reserved.

Ask HN: Literature for mathematical optimization?

95 pointsby samuel2almost 4 years ago
Hi! Do you know any books on math optimization that are essential for anybody getting into this field? Is there any classical literature for optimization related to ML? Thanks!<p>My current list includes:<p>1. Numerical Optimization by Jorge Nocedal Stephen J. Wright<p>2. Algorithms for Optimization - introduction to optimization with a focus on practical algorithms<p>3. Algorithms for Decision Making - a broad introduction to algorithms for decision making under uncertainty<p>[2] https:&#x2F;&#x2F;algorithmsbook.com&#x2F;optimization&#x2F;<p>[3] https:&#x2F;&#x2F;algorithmsbook.com&#x2F;

18 comments

tasseffalmost 4 years ago
Here&#x27;s an excerpt from a comment I previously made on Hacker News:<p>I&#x27;m a Ph.D. student in operations research (OR). My suggestion would be to first build a strong foundation in linear programming. This will introduce you to the notion of duality, which is heavily emphasized in many mathematical programming courses. Here&#x27;s a good open-source book on linear programming written by Jon Lee, the current editor of Mathematical Programming A: <a href="https:&#x2F;&#x2F;github.com&#x2F;jon77lee&#x2F;JLee_LinearOptimizationBook" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;jon77lee&#x2F;JLee_LinearOptimizationBook</a><p>Then I&#x27;d suggest studying more general methods for continuous and convex optimization. The book I see mentioned a lot is Convex Optimization by Boyd and Vandenberghe, although we didn&#x27;t use this in our coursework. Instead, we used a lot of the material presented here: <a href="http:&#x2F;&#x2F;mitmgmtfaculty.mit.edu&#x2F;rfreund&#x2F;educationalactivities&#x2F;" rel="nofollow">http:&#x2F;&#x2F;mitmgmtfaculty.mit.edu&#x2F;rfreund&#x2F;educationalactivities&#x2F;</a><p>If you read the above (or any other two books on linear programming and convex optimization), you&#x27;ll probably have a better idea of what you want to study next and how you want to go about it. The next natural step would be to study combinatorial (i.e., integer or mixed-integer) optimization. (Jon Lee has another book on this subject; I&#x27;ve also heard good things about the Schrijver book.)
评论 #27731001 未加载
评论 #27731512 未加载
thxgalmost 4 years ago
For theoretical continuous&#x2F;nonlinear&#x2F;convex optimization, your #1 is the bible, together with<p>&quot;Convex Optimization&quot; by Boyd &amp; Vandenberghe.<p>However, beware that both are <i>grad</i> textbooks. They can be tough going at times. Unfortunately, I never found undergrad textbooks I liked much, for theory.<p>If you&#x27;re interested in discrete optimization too (the other half of math optimization), the classics are:<p>&quot;Optimization Over Integers&quot; by Bertsimas &amp; Weismantel<p>&quot;Integer and Combinatorial Optimization&quot; by Nemhauser &amp; Wolsey
评论 #27731231 未加载
评论 #27720148 未加载
brudgersalmost 4 years ago
Two fascicles for Knuth&#x27;s <i>Art of Computer Programming, volume 4B</i> on optimization are out. <a href="https:&#x2F;&#x2F;www-cs-faculty.stanford.edu&#x2F;~knuth&#x2F;news.html" rel="nofollow">https:&#x2F;&#x2F;www-cs-faculty.stanford.edu&#x2F;~knuth&#x2F;news.html</a>
jl2718almost 4 years ago
I started from zero, and my approach was to read Nocedal&#x2F;Wright cover-to-cover, and then the same with &quot;Numerical Linear Algebra&quot; by Trefethen&#x2F;Bau. Usually it goes the other way, but I found the linear algebra primer in N&#x2F;W to be good enough to get started.<p>I also read &quot;Practical Optimization&quot; by Murray&#x2F;Gill, which is interesting because it has a lot of conversational coverage of e.g. corner cases, stuff that most textbooks won&#x27;t cover.<p>That will cover the expected baseline of almost everything you&#x27;ll encounter in the convex smooth continuous domain. I don&#x27;t have great answers for moving past that.
评论 #27789103 未加载
7thaccountalmost 4 years ago
<a href="https:&#x2F;&#x2F;www.amazon.com&#x2F;Model-Building-Mathematical-Programming-Williams&#x2F;dp&#x2F;1118443330" rel="nofollow">https:&#x2F;&#x2F;www.amazon.com&#x2F;Model-Building-Mathematical-Programmi...</a><p>This is the canonical introduction book recommended by Gurobi. I&#x27;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&#x27;s the best book to start with to get a feel for the subject of OR, before diving into the harder books.
评论 #27738658 未加载
nknealkalmost 4 years ago
I recommend Bayesian Methods for hackers [1]. It doesn’t go too deep on theory but I feel like it’s well written and has really good coded up examples of theory being applied to problems. It has a relatively narrow scope, but I find myself reaching for methods I learned from the author frequently.<p>[1] <a href="https:&#x2F;&#x2F;github.com&#x2F;CamDavidsonPilon&#x2F;Probabilistic-Programming-and-Bayesian-Methods-for-Hackers" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;CamDavidsonPilon&#x2F;Probabilistic-Programmin...</a>
tmyklebualmost 4 years ago
Nocedal and Wright is an excellent overview and a good starting point. Also consider:<p>- R. Schneider, Convex bodies: the Brunn-Minkowski theory. The first two chapters are an excellent introduction to convex geometry (plus a little bit extra!) if you have some undergrad-level analysis.<p>- Hiriart-Urruty and Lemarechal, Fundamentals of convex analysis. This book has been highly recommended to me but I&#x27;ve never used it. Might be an easier go than Schneider for convex geometry.<p>- Golub and van Loan, Matrix computations. Excellent book on numerical linear algebra.<p>- Bonnans, Gilbert, Lemarechal, Sagastizabal, Numerical optimization: theoretical and practical aspects. This book has a detailed description of bundle methods, which are important and in my opinion underutilised.<p>- I. Maros, Computational techniques of the simplex method. This is the only book I&#x27;m aware of that discusses how to build a working implementation of the simplex method for linear optimisation.<p>I&#x27;m not aware of any books that cover line search algorithms in detail. These are important in implementations but, beyond discussing the Goldstein and Wolfe conditions, generally glossed over in prose. Even in the absence of stalling and numerical difficulties, you can see an order of magnitude speedup from replacing a bad line search with a good one. One line search algorithm I&#x27;ve had success with is described in More and Thuente, Line search algorithms with guaranteed sufficient decrease.<p>Lots of tacit engineering knowledge goes into building a fast and robust optimisation code. Some of that knowledge gets forgotten when code is rewritten or ported from one language to another.<p>Mercifully, a lot of that engineering knowledge has been encoded into freely-available optimisation code. Quite a bit of that code is pretty readable. Off the top of my head, I&#x27;ve learnt things from:<p>- Liu and Nocedal&#x27;s Fortran L-BFGS implementation,<p>- The CUTEst problem collection,<p>- Chih-Jen Lin&#x27;s LIBLINEAR and LIBSVM,<p>- Lin and More&#x27;s TRON,<p>- Csaba Meszaros&#x27;s BPMPD,<p>- Jacek Gondzio&#x27;s HOPDM,<p>- The GNU Linear Programming Kit,<p>- and probably quite a few other sources!
评论 #27737947 未加载
andrewncalmost 4 years ago
Without a doubt you should read the following.<p>It is the clearest, most in depth, introduction from &quot;zero to hero&quot; for optimization. Mostly from a math perspective, useful for many things outside of ML too!<p><a href="https:&#x2F;&#x2F;www.amazon.com&#x2F;Foundations-Applied-Mathematics-Approximation-Optimization&#x2F;dp&#x2F;1611976057" rel="nofollow">https:&#x2F;&#x2F;www.amazon.com&#x2F;Foundations-Applied-Mathematics-Appro...</a>
bkcooperalmost 4 years ago
Nocedal and Wright is good. +1 also to the suggestions for Boyd and Vandenberghe. I really like Boyd&#x27;s writing in general; he has coauthored some good review articles on proximal algorithms and ADMM.<p>A couple of other suggestions:<p>Nesterov&#x27;s <i>Introductory Lectures on Convex Optimization</i>. This one is pretty tough sledding, but I found the perspectives in the first chapter particularly to be enlightening. It seems like there&#x27;s a newer Springer book which is probably an expansion on this.<p>Bertsekas&#x27;s <i>Nonlinear Programming</i>. Bertsekas has written a lot of books, and there&#x27;s a fair amount of overlapping going on. This one seemed to be the one that has the most nuts and bolts about the basics of optimization.<p>EDIT: If you want more understanding of convexity beyond what&#x27;s presented in these books, Rockafellar&#x27;s <i>Convex Analysis</i> is helpful.
评论 #27732998 未加载
sbrorsonalmost 4 years ago
I recently bought &quot;Introduction to Nonlinear Optimization&quot; by Amir Beck. It&#x27;s published by the SIAM. It covers the field from beginning to intermediate level and includes examples written in MATLAB. I found the book very readable and illuminating. It&#x27;s also not overly long nor verbose, which is a plus in my mind. I would recommend it -- I used some of its ideas as fodder to teach the optimization section of my class in Numerical Analysis.<p><a href="https:&#x2F;&#x2F;epubs.siam.org&#x2F;doi&#x2F;book&#x2F;10.1137&#x2F;1.9781611973655?mobileUi=0" rel="nofollow">https:&#x2F;&#x2F;epubs.siam.org&#x2F;doi&#x2F;book&#x2F;10.1137&#x2F;1.9781611973655?mobi...</a>
jthickstunalmost 4 years ago
Sébastien Bubeck&#x27;s book is excellent mathematical introduction to modern convex optimization: <a href="https:&#x2F;&#x2F;arxiv.org&#x2F;abs&#x2F;1405.4980" rel="nofollow">https:&#x2F;&#x2F;arxiv.org&#x2F;abs&#x2F;1405.4980</a>
mlacalmost 4 years ago
So for medium to non-technical people reading this, I took a course in grad school that showed me how to do this in Excel with solver.<p>It was easily one of the top 3 courses I took and heavily based off of this text book:<p><a href="https:&#x2F;&#x2F;www.amazon.com&#x2F;Spreadsheet-Modeling-Decision-Analysis-Introduction&#x2F;dp&#x2F;130594741X&#x2F;ref=mp_s_a_1_3?dchild=1&amp;keywords=ragsdale+spreadsheet+modeling+and+decision+analysis&amp;qid=1625426197&amp;sprefix=ragsdale&amp;sr=8-3" rel="nofollow">https:&#x2F;&#x2F;www.amazon.com&#x2F;Spreadsheet-Modeling-Decision-Analysi...</a>
评论 #27732312 未加载
imsalmost 4 years ago
Sounds like you&#x27;re looking more for optimization theory, but if you want a gentle introduction to applications with approachable math and lots of examples, I highly recommend &quot;Operations Research: Applications and Algorithms (4E)&quot; by Wayne Winston. It&#x27;s a solid undergrad level text covering basic linear optimization, mixed integer linear programs, and non-linear optimization.
wencalmost 4 years ago
Mathematical optimization is huge field which splits into different branches. In my opinion, there are two demographics that approach optimization in slightly different ways and are interested in slightly different aspects of optimization: the OR (operations research) camp and the engineering camp.<p>(all generalizations are wrong to some extent and the delineations are not strict, but I have noticed they have different cultures -- analogous to how Breiman observed that there was two cultures to statistical modeling [1])<p>In the OR camp, the focus is primarily on linear programming&#x2F;mixed integer linear programming. The types of problems solved include transportation, assignment, scheduling type problems. OR folks tend to go very deep into the theory of linear programs (matroids, Benders decompositions, etc.) and the literature is absolutely rich with advances in linear optimization. OR folks tend to be linear optimization specialists and mathematicians. A good practice-oriented intro book is Winston&#x27;s &quot;OR: Applications and Algorithms&quot;. Chvatal&#x27;s Linear Programming is also good. But this is not my space, so I&#x27;ll leave OR book recommendations to others.<p>In the Engineering camp, while folks do use linear programs, they also tend to go more in the direction of convex programs and general nonlinear&#x2F;nonconvex programs (including mixed integer nonconvex nonlinear programs). There are some strong theoretical results for convex programs, but the results (naturally) aren&#x27;t as strong for nonconvex problems -- global optimality never guaranteed. In the nonconvex camp, practitioners tend to concern themselves with heuristics&#x2F;techniques like finding good initializations, understanding SSOCs, etc. The types of problems solved range from anything from ML problems to dynamic plant&#x2F;machine optimization. Most folks in this camp tend to be engineers rather than optimization specialists (though some do become specialists eventually). Nocedal and Wright is a classic for general nonlinear programming, but also look into Biegler&#x27;s Nonlinear Porgramming. Boyd and Vanderberghe is a classic for convex optimization. Murray and Gill&#x27;s Practical Optimization is a bit outdated (so don&#x27;t rely on it for state-of-the-art knowledge), but it has tidbits of insights about optimization that aren&#x27;t found in other books and that continue to be useful.<p>[1] <a href="http:&#x2F;&#x2F;www2.math.uu.se&#x2F;~thulin&#x2F;mm&#x2F;breiman.pdf" rel="nofollow">http:&#x2F;&#x2F;www2.math.uu.se&#x2F;~thulin&#x2F;mm&#x2F;breiman.pdf</a>
评论 #27740013 未加载
eigenmanalmost 4 years ago
I&#x27;d also add C. T. Kelley&#x27;s &quot;Iterative Methods for Optimization&quot; for more non convex theory. Nemirovski also has a variety of books and course notes that are available, but I haven&#x27;t spent as much time with them.<p>I agree with thxg, there are few undergraduate textbooks that I&#x27;ve liked.
actinium226almost 4 years ago
I&#x27;m planning on taking a course in optimization this fall, the textbook for it is &quot;An introduction to optimization&quot; by Chong and Zak. Dunno if it&#x27;s any good, but I just ordered it so we&#x27;ll see.
gradschoolalmost 4 years ago
&quot;The Design of Approximation Algorithms&quot; by Williamson and Shmoys<p><a href="http:&#x2F;&#x2F;www.designofapproxalgs.com&#x2F;" rel="nofollow">http:&#x2F;&#x2F;www.designofapproxalgs.com&#x2F;</a>
评论 #27728960 未加载
pcboumanalmost 4 years ago
Mathematical Optimization still has many subfields that can be of interest. I guess that non-linear mathematical optimization is most more typical for many machine learning applications. Many pratical applications in scheduling, logistics, planning etc used linear (integer) programming and combinatorial optimization. The following are some points towards that body of literature.<p>Alexander Schrijver [1] has lecture notes on Combinatorial Optimization on his website [2]. He also has an affordable 1800 page three volume set of books &quot;Combinatorial Optimization - Polyhedra and Efficiency&quot; [3], although I would say it is better suited as reference material because it is quite densely written.<p>There is also the classic book &quot;Combinatorial Optimization - Algorithms and Complexity&quot; [4] by Papadimitriou (Bill Gates&#x27; MSc thesis supervisor) and Steiglitz that is a nice introduction to the topic as well.<p>&quot;In Pursuit of the Traveling Salesman - Mathematics at the Limits of Computation&quot; by William J. Cook [5] is a more popular science book on the history of the Traveling Salesman Problem, that also explains how linear programming is used in the state of the art solvers, but is of course focuses on a very specific problem. There is also a book that contains all the scientific and mathematical details by Applegate, Bixby, Chvátal and Cook [6] if that is preferred.<p>In recent years, there is a trend that mathematical optimization researchers work more with ML. In particular Dimitris Bertsimas has done some work on the intersection of those area&#x27;s in recent years [7] and apparently has a book on the topic as well [8] (but I am not familiar with it).<p>[1] <a href="https:&#x2F;&#x2F;homepages.cwi.nl&#x2F;~lex&#x2F;" rel="nofollow">https:&#x2F;&#x2F;homepages.cwi.nl&#x2F;~lex&#x2F;</a> [2] <a href="https:&#x2F;&#x2F;homepages.cwi.nl&#x2F;~lex&#x2F;files&#x2F;dict.pdf" rel="nofollow">https:&#x2F;&#x2F;homepages.cwi.nl&#x2F;~lex&#x2F;files&#x2F;dict.pdf</a> [3] <a href="https:&#x2F;&#x2F;www.springer.com&#x2F;us&#x2F;book&#x2F;9783540443896" rel="nofollow">https:&#x2F;&#x2F;www.springer.com&#x2F;us&#x2F;book&#x2F;9783540443896</a> [4] <a href="https:&#x2F;&#x2F;www.amazon.com&#x2F;Combinatorial-Optimization-Algorithms-Complexity-Computer&#x2F;dp&#x2F;0486402584" rel="nofollow">https:&#x2F;&#x2F;www.amazon.com&#x2F;Combinatorial-Optimization-Algorithms...</a> [5] <a href="https:&#x2F;&#x2F;press.princeton.edu&#x2F;books&#x2F;paperback&#x2F;9780691163529&#x2F;in-pursuit-of-the-traveling-salesman" rel="nofollow">https:&#x2F;&#x2F;press.princeton.edu&#x2F;books&#x2F;paperback&#x2F;9780691163529&#x2F;in...</a> [6] <a href="http:&#x2F;&#x2F;www.math.uwaterloo.ca&#x2F;tsp&#x2F;book&#x2F;index.html" rel="nofollow">http:&#x2F;&#x2F;www.math.uwaterloo.ca&#x2F;tsp&#x2F;book&#x2F;index.html</a> [7] <a href="https:&#x2F;&#x2F;dbertsim.mit.edu&#x2F;papers&#x2F;" rel="nofollow">https:&#x2F;&#x2F;dbertsim.mit.edu&#x2F;papers&#x2F;</a> [8] <a href="https:&#x2F;&#x2F;www.dynamic-ideas.com&#x2F;books&#x2F;machine-learning-under-a-modern-optimization-lens" rel="nofollow">https:&#x2F;&#x2F;www.dynamic-ideas.com&#x2F;books&#x2F;machine-learning-under-a...</a>
评论 #27732692 未加载