52
votes
Accepted
MATLAB vs. Python in industry
Regardless of what completes the phrase "Python vs ...", the answer is always going to be Python.
Very few people who are serious about using optimisation in production use MATLAB, and the ones who ...
47
votes
Are Python and Julia used for optimization in industry?
Despite being a great fan of Julia (and JuMP) I must admit that Python is most widely adopted in industry. I won't recommend PuLP however, which tends to be too slow. As alternatives, I would consider
...
25
votes
Are Python and Julia used for optimization in industry?
We use Julia in production for optimization at Invenia.
We use Convex.jl, and JuMP.jl, and have found them to be excellent.
20
votes
MATLAB vs. Python in industry
I agree with everything Nikos said and I add some colors to some of the reasons:
Python is free and open-source but Matlab is not. Anyone can write codes in Python and share it with others who can ...
19
votes
Are Python and Julia used for optimization in industry?
The feed back we get from our customers at Mosek is Python is used extensively in the financial industry for doing portfolio optimization and lot of other operations.
Those customers like to use ...
19
votes
Python vs C++ performance on Discrete Optimization
If you are using a solver (open-source or commercial) to solve a discrete optimization problem, and if the problem is not trivial or extremely easy, chances are very high that the bulk of the ...
17
votes
MATLAB vs. Python in industry
Nikos Kazazakis and EhsanK have given you great reasons for using Python. I will focus on the point from you about needing to use an additional package/library in Python for matrix and vector ...
16
votes
Accepted
Which Python package is suitable for multiobjective optimization
If you use packages like PyOMO, PuLP or pyOpt, you'd have to implement all the operations for multiobjective optimization - e.g. to find nondominated solutions or the different mutation operators - ...
16
votes
Accepted
Python vs. compiled languages in OR research using metaheuristics
Speaking as an occasional reviewer for journals, when I read a paper proposing a new heuristic or metaheuristic my first question is "does it work?", which is independent of the programming ...
15
votes
Are Python and Julia used for optimization in industry?
Staffjoy was an early user of Julia and JuMP for their start up providing workforce scheduling. They also release all of their internal software as open-source after they shut-down. See for example ...
14
votes
MATLAB vs. Python in industry
I work for a company that offers a commercial optimization solver. The solver offers interfaces to both MATLAB and Python for solving problems defined in those languages.
We only get one or two ...
13
votes
Are Python and Julia used for optimization in industry?
I personnaly use Python for optimizing industrial problems every day.
I know Polymathian also use Python for their Tropofy platform.
GUROBI has a python API, which I think is quite popular (...
13
votes
Are Python and Julia used for optimization in industry?
My answer will be focused on teaching, and I'll give you my perspective from Georgia Tech ISyE.
Yes, you should teach your students optimization using Python. For simple models, one simple open-...
13
votes
Accepted
Softwares for Operations Research. Is Excel Outdated or Useless for the OR industry?
Excel remains extensively used in industry for non-OR applications. That means that if you are doing an OR application that does not require access to a database, there's a good chance the data for ...
13
votes
Accepted
Ideal programming language for an operations researcher
For modelling, mainly Python. Julia works too but is much less commonly used in companies.
For dedicated algorithm implementations, mainly C++. C works too but will require more lines of code and ...
12
votes
Accepted
How to model a mixed-integer linear programming formulation in Python using Gurobi?
Here is the complete implementation for the above-mentioned model.
...
12
votes
How do I access the value of a variable in PuLP?
To get the value of the decision variable, you need to use the varValue property of the LpVariable, so:
...
12
votes
Accepted
Creating a Continuous Decision Variable between 0 and 1 in Python-MIP Interface
I don't know much about Python-mip but looking at the code, maximize expects a LinExpr, so I tried:
...
12
votes
Modeling and solvers
I can't address the specifics of Python, Pyomo, Gurobi or GAMS, but I can address the general question of using a modeling language (such as GAMS) versus building the model directly in a general ...
12
votes
Are Python and Julia used for optimization in industry?
Although I personally think Julia is glorious, nearly no-one outside academia uses it for numerous reasons, including:
Missing out on all the Python packages
Julia programmers being much harder to ...
12
votes
Accepted
How to find all vertices of a polyhedron
The problem of enumerating all vertices of a polytope has been studied, see for example Generating All Vertices of a Polyhedron Is Hard by Khachiyan, Boros, Borys, Elbassioni & Gurvich (available ...
11
votes
Accepted
Implementing solvers with Object Oriented Programming
I'm not sure there is any "best way", but I can speak to personal practice (using Java, which is inherently object oriented). I will typically have one class that represents the "problem" (including ...
11
votes
Are Python and Julia used for optimization in industry?
Our, KLM, current optimizer products' codebases are all in python. The main reason for this is python is extremely powerful for fast prototyping. However, when it comes to the necessity of ...
11
votes
What are technologies or libraries which greatly improve the speed or ease of use for delivering of OR software?
I like Stuart Mitchell's (maintainer of Pulp) tips, especially tip number 2 : use a profiler to track your bottlenecks. Quoting him:
I can't tell you the number of times I have assumed the slow code ...
11
votes
Accepted
Significant bias introduced into simple simulation
You have fallen victim to the renewal paradox, a.k.a. inspection paradox, a.k.a. length-biased sampling.
$F_{\Delta}$ is the distribution of service time for the kth customer, but it is NOT the ...
10
votes
10
votes
Accepted
Termination Criteria of Solver in Pyomo
If the IPOPT termination condition is Optimal Solution Found then the returned solution is locally optimal. IPOPT is, by design, not a global solver and therefore ...
10
votes
Accepted
Reading an LP/MPS file using Pyomo software
According to this link on Pyomo forum from 2016 about LP files, and this one from 2018 about MPS file, this functionality doesn't exist yet. To quote from the first link:
LP files are “flat” ...
10
votes
Accepted
How to run MOSEK solver in CVXOPT
As determined in the comment exchange to the question, because the matrix P has minimum eigenvalue which is negative, it is not positive semidefinite, and therefore it is a non-convex problem. ...
10
votes
Settings for a faster solution of a MILP (GUROBI, python)
You could try changing the parameter mipfocus to 2 or 3 (https://www.gurobi.com/documentation/9.0/refman/mipfocus.html) in order to let Gurobi focus more on improving the bound or proving optimality.
...
Only top scored, non community-wiki answers of a minimum length are eligible
Related Tags
python × 348optimization × 106
pyomo × 71
gurobi × 66
mixed-integer-programming × 64
linear-programming × 52
pulp × 36
or-tools × 34
cplex × 31
modeling × 30
docplex × 27
solver × 25
integer-programming × 21
constraint × 20
constraint-programming × 18
nonlinear-programming × 16
scheduling × 14
cplex-python-api × 13
combinatorial-optimization × 11
vehicle-routing × 11
cvxpy × 10
assignment-problem × 9
multi-objective-optimization × 8
quadratic-programming × 7
traveling-salesman × 7