From 5b815f5a3cade9140e0fccbfe8caf085511b1a9f Mon Sep 17 00:00:00 2001
From: Dimitri Lozeve
Date: Wed, 27 May 2020 10:57:54 +0200
Subject: [PATCH] Add images
---
_site/atom.xml | 30 ++++++--
_site/images/or_references/jump.svg | 1 +
_site/images/or_references/kochenderfer.jpg | Bin 0 -> 55180 bytes
.../or_references/kochenderfer_small.jpg | Bin 0 -> 55180 bytes
_site/images/or_references/wentzel.jpg | Bin 0 -> 110180 bytes
_site/images/or_references/wentzel_small.jpg | Bin 0 -> 110180 bytes
_site/images/or_references/williams.jpg | Bin 0 -> 53772 bytes
_site/images/or_references/williams_small.jpg | Bin 0 -> 53772 bytes
.../posts/operations-research-references.html | 30 ++++++--
_site/rss.xml | 30 ++++++--
images/or_references/jump.svg | 1 +
images/or_references/kochenderfer.jpg | Bin 0 -> 55180 bytes
images/or_references/wentzel.jpg | Bin 0 -> 110180 bytes
images/or_references/williams.jpg | Bin 0 -> 53772 bytes
posts/operations-research-references.org | 64 ++++++++++++------
15 files changed, 113 insertions(+), 43 deletions(-)
create mode 100644 _site/images/or_references/jump.svg
create mode 100644 _site/images/or_references/kochenderfer.jpg
create mode 100644 _site/images/or_references/kochenderfer_small.jpg
create mode 100644 _site/images/or_references/wentzel.jpg
create mode 100644 _site/images/or_references/wentzel_small.jpg
create mode 100644 _site/images/or_references/williams.jpg
create mode 100644 _site/images/or_references/williams_small.jpg
create mode 100644 images/or_references/jump.svg
create mode 100644 images/or_references/kochenderfer.jpg
create mode 100644 images/or_references/wentzel.jpg
create mode 100644 images/or_references/williams.jpg
diff --git a/_site/atom.xml b/_site/atom.xml
index e93b429..f3b73d6 100644
--- a/_site/atom.xml
+++ b/_site/atom.xml
@@ -32,18 +32,30 @@
Introduction and modelling
For an overall introduction, I recommend Wentzel (1988 ) . It is an old book, published by Mir Publications, a Soviet publisher which published many excellent scientific textbooks⊕ Mir also published Physics for Everyone by Lev Landau and Alexander Kitaigorodsky, a three-volume introduction to physics that is really accessible. Together with Feynman’s famous lectures , I read them (in French) when I was a kid, and it was the best introduction I could possibly have to the subject.
- . It is out of print, but it is available on Archive.org . The book is quite old, but everything presented is still extremely relevant today. It requires absolutely no background, and covers everything: a general introduction to the field, linear programming, dynamic programming, Markov processes and queues, Monte Carlo methods, and game theory. Even if you already know some of these topics, the presentations is so clear that it is a pleasure to read! (In particular, it is one of the best presentations of dynamic programming that I have ever read. The explanation of the simplex algorithm is also excellent.)
+. It is out of print, but it is available on Archive.org ⊕
+
+
+
+ . The book is quite old, but everything presented is still extremely relevant today. It requires absolutely no background, and covers everything: a general introduction to the field, linear programming, dynamic programming, Markov processes and queues, Monte Carlo methods, and game theory. Even if you already know some of these topics, the presentations is so clear that it is a pleasure to read! (In particular, it is one of the best presentations of dynamic programming that I have ever read. The explanation of the simplex algorithm is also excellent.)
If you are interested in optimization, the first thing you have to learn is modelling, i.e. transforming your problem (described in natural language, often from a particular industrial application) into a mathematical programme. The mathematical programme is the structure on which you will be able to apply an algorithm to find an optimal solution. Even if (like me) you are initially more interested in the algorithmic side of things, learning to create models will shed a lot of light on the overall process, and will give you more insight in general on the reasoning behind algorithms.
-The best book I have read on the subject is Williams (2013 ) . It contains a lot of concrete, step-by-step examples on concrete applications, in a multitude of domains, and remains very easy to read and to follow. It covers nearly every type of problem, so it is very useful as a reference. When you encounter a concrete problem in real life afterwards, you will know how to construct an appropriate model, and in the process you will often identify a common type of problem. The book then gives plenty of advice on how to approach each type of problem. Finally, it is also a great resource to build a “mental map” of the field, avoiding getting lost in the jungle of linear, stochastic, mixed integer, quadratic, and other network problems.
+The best book I have read on the subject is Williams (2013 ) ⊕
+
+
+
+ . It contains a lot of concrete, step-by-step examples on concrete applications, in a multitude of domains, and remains very easy to read and to follow. It covers nearly every type of problem, so it is very useful as a reference. When you encounter a concrete problem in real life afterwards, you will know how to construct an appropriate model, and in the process you will often identify a common type of problem. The book then gives plenty of advice on how to approach each type of problem. Finally, it is also a great resource to build a “mental map” of the field, avoiding getting lost in the jungle of linear, stochastic, mixed integer, quadratic, and other network problems.
Another interesting resource is the freely available MOSEK Modeling Cookbook , covering many types of problems, with more mathematical details than in Williams (2013 ) . It is built for people wanting to use the commercial MOSEK solver, so it could be useful if you plan to use a solver package like this one (more details on solvers below ).
Theory and algorithms
-The basic algorithm for optimization is the simplex algorithm , developed by Dantzig in the 1940s to solve linear programming problems. It is the one of the main building blocks for mathematical optimization, and is used and referenced extensively in all kinds of approaches. As such, it is really important to understand it in detail. There are many books on the subject, but I especially liked Chvátal (1983 ) (out of print, but you can find cheap used versions on Amazon). It covers everything there is to know on the simplex algorithms (step-by-step explanations with simple examples, correctness and complexity analysis, computational and implementation considerations) and to many applications. I think it is overall the best introduction. Vanderbei (2014 ) follows a very similar outline, but contains more recent computational considerationsFor all the details about practical implementations of the simplex algorithm, Maros (2003 ) is dedicated to the computational aspects and contains everything you will need.
+The basic algorithm for optimization is the simplex algorithm , developed by Dantzig in the 1940s to solve linear programming problems. It is the one of the main building blocks for mathematical optimization, and is used and referenced extensively in all kinds of approaches. As such, it is really important to understand it in detail. There are many books on the subject, but I especially liked Chvátal (1983 ) (out of print, but you can find cheap used versions on Amazon). It covers everything there is to know on the simplex algorithms (step-by-step explanations with simple examples, correctness and complexity analysis, computational and implementation considerations) and to many applications. I think it is overall the best introduction. Vanderbei (2014 ) follows a very similar outline, but contains more recent computational considerationsFor all the details about practical implementations of the simplex algorithm, Maros (2003 ) is dedicated to the computational aspects and contains everything you will need.
. (The author also has lecture slides .)
For more books on linear programming, the two books Dantzig (1997 ) , Dantzig (2003 ) are very complete, if somewhat more mathematically advanced. Bertsimas and Tsitsiklis (1997 ) is also a great reference, if you can find it.
-For all the other subfields, this great StackExchange answer contains a lot of useful references, including most of the above. Of particular note are Peyré and Cuturi (2019 ) for optimal transport, Boyd (2004 ) for convex optimization (freely available online ), and Nocedal (2006 ) for numerical optimization. Kochenderfer (2019 ) is not in the list (because it is very recent) but is also excellent, with examples in Julia covering nearly every kind of optimization algorithms.
+For all the other subfields, this great StackExchange answer contains a lot of useful references, including most of the above. Of particular note are Peyré and Cuturi (2019 ) for optimal transport, Boyd (2004 ) for convex optimization (freely available online ), and Nocedal (2006 ) for numerical optimization. Kochenderfer (2019 ) ⊕
+
+
+
+ is not in the list (because it is very recent) but is also excellent, with examples in Julia covering nearly every kind of optimization algorithms.
Online courses
-If you would like to watch video lectures, there are a few good opportunities freely available online, in particular on MIT OpenCourseWare . The list of courses at MIT is available on their webpage . I haven’t actually looked in details at the courses contentI am more comfortable reading books than watching lecture videos online. Although I liked attending classes during my studies, I do not have the same feeling in front of a video. When I read, I can re-read three times the same sentence, pause to look up something, or skim a few paragraphs. I find that the inability to do that with a video diminishes greatly my ability to concentrate.
+If you would like to watch video lectures, there are a few good opportunities freely available online, in particular on MIT OpenCourseWare . The list of courses at MIT is available on their webpage . I haven’t actually looked in details at the courses contentI am more comfortable reading books than watching lecture videos online. Although I liked attending classes during my studies, I do not have the same feeling in front of a video. When I read, I can re-read three times the same sentence, pause to look up something, or skim a few paragraphs. I find that the inability to do that with a video diminishes greatly my ability to concentrate.
, so I cannot vouch for them directly, but MIT courses are generally of excellent quality. Most courses are also taught by Bertsimas and Bertsekas, who are very famous and wrote many excellent books.
Of particular notes are:
@@ -54,12 +66,16 @@
Algebraic Techniques and Semidefinite Optimization ,
Integer Programming and Combinatorial Optimization .
-Another interesting course I found online is Deep Learning in Discrete Optimization , at Johns Hopkins⊕ It is taught by William Cook, who is the author of In Pursuit of the Traveling Salesman , a nice introduction to the TSP problem in a readable form.
+Another interesting course I found online is Deep Learning in Discrete Optimization , at Johns Hopkins⊕ It is taught by William Cook, who is the author of In Pursuit of the Traveling Salesman , a nice introduction to the TSP problem in a readable form.
. It contains an interesting overview of deep learning and integer programming, with a focus on connections, and applications to recent research areas in ML (reinforcement learning, attention, etc.).
Solvers and computational resources
When you start reading about modelling and algorithms, I recommend you try solving a few problems yourself, either by hand for small instances, or using an existing solver. It will allow you to follow the examples in books, while also practising your modelling skills. You will also get an intuition of what is difficult to model and to solve.
-There are many solvers available, both free and commercial, with various capabilities. I recommend you use the fantastic JuMP library for Julia, which exposes a domain-specific language for modelling, along with interfaces to nearly all major solver packages. (Even if you don’t know Julia, this is a great and easy way to start!) If you’d rather use Python, you can use Google’s OR-Tools or PuLP for linear programming.
+There are many solvers available, both free and commercial, with various capabilities. I recommend you use the fantastic JuMP ⊕
+
+
+
+ library for Julia, which exposes a domain-specific language for modelling, along with interfaces to nearly all major solver packages. (Even if you don’t know Julia, this is a great and easy way to start!) If you’d rather use Python, you can use Google’s OR-Tools or PuLP for linear programming.
Regarding solvers, there is a list of solvers on JuMP’s documentation, with their capabilities and their license. Free solvers include GLPK (linear programming), Ipopt (non-linear programming), and SCIP (mixed-integer linear programming).
Commercial solvers often have better performance, and some of them propose a free academic license: MOSEK , Gurobi , and IBM CPLEX in particular all offer free academic licenses and work very well with JuMP.
Another awesome resource is the NEOS Server . It offers free computing resources for numerical optimization, including all major free and commercial solvers! You can submit jobs on it in a standard format, or interface your favourite programming language with it. The fact that such an amazing resource exists for free, for everyone is extraordinary. They also have an accompanying book, the NEOS Guide , containing many case studies and description of problem types. The taxonomy may be particularly useful.
diff --git a/_site/images/or_references/jump.svg b/_site/images/or_references/jump.svg
new file mode 100644
index 0000000..45b7fad
--- /dev/null
+++ b/_site/images/or_references/jump.svg
@@ -0,0 +1 @@
+Thin-Border-Logo-Text
\ No newline at end of file
diff --git a/_site/images/or_references/kochenderfer.jpg b/_site/images/or_references/kochenderfer.jpg
new file mode 100644
index 0000000000000000000000000000000000000000..88abef2bc881da4ce46f7fa358fb7c768fbb45a3
GIT binary patch
literal 55180
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