HN user

tasseff

52 karma

https://tasseff.com

Posts0
Comments22
View on HN
No posts found.

Interestingly, no Kindle version of The Power Broker is available, although there were reports in 2021 that one was purchasable on Amazon for a very short time [1]. I really dislike handling large books, especially if I'm reading in a casual setting. Because of this, I decided to start reading The Years of Lyndon Johnson series instead, which do have Kindle versions.

[1] https://www.curbed.com/2021/07/power-broker-caro-ebook-knopf...

To my knowledge, it is an open challenge to find real-world problem instances where existing quantum annealers outperform state-of-the-art classical alternatives. It's even hard to find _extremely contrived families of instances_ where practical computational benefits can be observed with quantum annealing. I recently contributed to one such benchmarking manuscript [1], which may indicate future promise as the number of qubits in quantum annealers continues to increase.

Anyway, as a result of that experience, I'm skeptical of the benchmarking efforts that led these two companies to the conclusion that quantum annealing is more cost-effective than dropping in a classical alternative as the inner optimization solver. D-Wave even has some reasonably efficient, open-source algorithms that can be used as a point of comparison (e.g., [2]). I'd be interested in reading more about the companies' benchmarks, as this article is very light on details.

[1] https://arxiv.org/pdf/2210.04291.pdf

[2] https://github.com/dwavesystems/dwave-neal

Here's an excerpt from a comment I previously made on Hacker News:

I'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's a good open-source book on linear programming written by Jon Lee, the current editor of Mathematical Programming A: https://github.com/jon77lee/JLee_LinearOptimizationBook

Then I'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't use this in our coursework. Instead, we used a lot of the material presented here: http://mitmgmtfaculty.mit.edu/rfreund/educationalactivities/

If you read the above (or any other two books on linear programming and convex optimization), you'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've also heard good things about the Schrijver book.)

I'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's a good open source book on linear programming written by Jon Lee, the current editor of Mathematical Programming A: https://github.com/jon77lee/JLee_LinearOptimizationBook

Then I'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't use this in our coursework. Instead, we used a lot of the material presented here: http://mitmgmtfaculty.mit.edu/rfreund/educationalactivities/

If you read the above (or any other two books on linear programming and convex optimization), you'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've also heard good things about the Schrijver book.)

It's also not a bad idea to start getting familiar with the tools people use to solve mathematical programs in practice. The theory you'll learn to solve linear programs is different from the theory for general convex problems, and similarly for mixed-integer programs. As such, there are various "solvers" that are used to solve various problem types. Because of this, there are a lot of frameworks that are used to develop general mathematical programs, which can then interface with these solvers in a generic way. For example, Pyomo is a modeling language based in Python, and JuMP is a modeling language based in Julia.

If you want a general introduction to discrete optimization in a course format, you should take this class on Coursera (https://www.coursera.org/learn/discrete-optimization). It's a fantastic introduction to operations research in general, and it will give you a good intuition of the types of problems you encounter in the field as well as the various techniques that are used to solve them. (Full disclosure: Pascal is my adviser.)

Let me know if you have any more questions. I recently became a moderator of /r/OperationsResearch on Reddit and love the idea of having a larger community that can answer questions like yours. Operations research seems somewhat overshadowed by machine learning at the moment (at least in popular culture), but they truly go hand-in-hand. I'm somewhat surprised that a lot of useful techniques from OR are not heavily discussed by machine learning practitioners. Both fields are, fundamentally, trying to solve difficult optimization problems.