Nikos Kazazakis
  • Member for 2 years, 5 months
  • Last seen this week
MATLAB vs. Python in industry
Accepted answer
49 votes

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 ...

View answer
How can I deal with non-operations research managers?
20 votes

I'll answer this from an employer's perspective. Technical ability is a necessary but not sufficient condition - the skill I value the most in my employees is their ability to manage expectations. I ...

View answer
What are Operations Research problems which occur in everyday life?
20 votes

This is literally every conversation I have with investors, so here's my $.02. Others have described great examples, so I will cover a different aspect: I have found the use of (everyday) examples ...

View answer
How can I do the jump from academia to industry?
18 votes

Just apply for any job you find interesting and you think you can do well. The trick lies in convincing the people hiring that you are great value for money. Although this might seem obvious, my ...

View answer
What are Operations Research applications for 'good causes'?
17 votes

A great cause would be supply chain in countries/regions with poor infrastructure and/or uncertain supply and high price fluctuations. This is particularly important in many developing countries, ...

View answer
What is a "hard problem" in the context of Mixed-integer programming?
14 votes

MILP problems are hard in general, in the sense that there is no algorithm that solves any given MILP in polynomial time (unless P=NP). With respect to when it's hard in practice, unfortunately, the ...

View answer
Why is open source operations research software so far behind open source statistics and machine learning software?
13 votes

Update: Since you updated your question might as well chip in, since I've worked with COIN-OR software a lot at the code level. In my experience, a lot of the open-source optimisation codebases (e.g. ...

View answer
How to convince people that OR can help them?
Accepted answer
13 votes

It depends on the situation, but I assume what you have in mind is business. Adopting a new technology stack is a business decision, even if you are talking to a technical person (the "User"). I can ...

View answer
What's the current status of the Vehicle Routing Problem in the logistics industry?
Accepted answer
13 votes

The answer to this question is quite complicated. There are two main types of vehicle routing problems, the offline and the online problem. Solving the offline problem takes longer and is used to ...

View answer
Using Neural Networks For Solving Optimization Problems
12 votes

SCIP is not slow. SCIP's code is roughly as fast as the commercial alternatives. What makes SCIP seem slower to the user is that, by comparison, the commercial solver heuristics (cuts, primal ...

View answer
Trustful Nonlinear Programming
12 votes

Oh boy. Adding to Mark's great answer, I'll add some fun facts on what can go wrong with IPOPT and feasibility, and provide us with endless nights of entertainment: The linear system solver gets ...

View answer
Combinatorial problem in my daughter’s class
11 votes

This is a variant of the University Course Scheduling problem (e.g. this one). Interestingly, writing software to solve this was Bill Gates' first gig when he was still a student. There is a lot of ...

View answer
Are Python and Julia used for optimization in industry?
11 votes

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 ...

View answer
What is the difference between optimization software APIs based on performance and speed?
11 votes

The difference between a C++ and Python API can be massive, but it also depends on the quality of the Python implementation. A key factor to consider when setting expectations, is the way the API is ...

View answer
Gurobi searches all nodes despite variable initialization
Accepted answer
9 votes

Gurobi is solving the global optimisation problem. This involves (i) locating the global solution, and (ii) proving that it is the global solution. Step (i) is typically the easiest by far. By ...

View answer
How do Quadratic Programming solvers handle variables without bounds?
Accepted answer
9 votes

Unless we can derive bounds during presolving, the standard way is to set a default variable range instead (e.g. $\pm1.e16$) so that we can generate the McCormick constraints. There are numerical &...

View answer
Understanding integer programming solvers
Accepted answer
9 votes

I'd like to share a MIP solver developer's perspective on how our process works and what that means for the user. A MIP solver is a massive toolbox of algorithmic tools and tricks. Because MIP is ...

View answer
How to improve the quality of code in OR?
9 votes

Unfortunately writing high quality OR code is beyond the reach of most academic settings. This is mainly because: Writing high quality code is very time consuming. The scope of OR code is much better ...

View answer
Branch and Bound Implementation
9 votes

What makes any branch-and-bound implementation tick is the heuristics that accompany the algorithm, not branch-and-bound itself. I start by explaining branch-and-bound to frame why we need the ...

View answer
Comparison of Algebraic modelling languages and general programming languages
9 votes

GAMS and AMPL are general purpose modelling languages and can he used to describe any type of nonlinear function, including some niche stuff like floor, ceil, max, etc (AMPL). I don't have experience ...

View answer
Effect of 'unused' variables on the result and runtime of optimization algorithms
Accepted answer
8 votes

If variable fixings can be derived automatically (e.g. you specified a constraint saying $2x_1=4$ and maybe another saying $x_1+x_2=1$), those variables will be fixed at known values. A smaller ...

View answer
How to learn about some general Issues related to solvers?
8 votes

Unfortunately this is a very sparsely documented subject in optimisation literature. The only technical resource I am aware of in my field is this one. Tobias Achterberg's thesis is also a good ...

View answer
What are the solvers that give a feasible solution within a given time?
8 votes

Pretty much all of them. Any solver worth using will support timeouts and what you describe is basically running a solver with a timeout. Solvers that are supposed to compute more than one solution (e....

View answer
Can presolve reductions change the value of the linear programming relaxation?
8 votes

Adding to Marco's answer, the value is most definitely affected. The way problem reduction algorithms work is that we often exploit problem information as it's processed to tighten variable bounds in ...

View answer
Modeling and solvers
Accepted answer
8 votes

In a production environment, I have found code APIs to be superior to modelling languages in the long run. Nowadays, we also have Pyomo so we don't even need to compromise between the two. The ...

View answer
How to implement a "generic" solver for scheduling problems?
8 votes

Before you even start worrying about algorithms, you need to figure out the solver's architecture. You can do so by posing and answering questions such as the ones I ask below. The answers will be a ...

View answer
Diving heuristics in branch and bound
Accepted answer
8 votes

Diving heuristics are primarily used to find feasible points, and are more common in problems with integer variables. Diving heuristics go down some branch of the tree until they (i) hit ...

View answer
Parallel nonlinear solvers
Accepted answer
8 votes

As a developer of parallel non-linear software, I want to share my experience working in this space and the challenges we face. If I were to break down why we don't have more parallel non-linear ...

View answer
Algorithms vs LP or MIP
8 votes

Is it possible? Probably. Is it likely? Not really. LP/MILP is a thoroughly studied field so it is very unlikely that a homebrew solution will outperform a commercial (or even open source) solver ...

View answer
State-of-the-art algorithms for solving linear programs
Accepted answer
8 votes

The simple answer is that for large scale problems (1m+ rows and columns) we would use interior point instead of dual simplex. The main challenge is not really the solving algorithm, since interior ...

View answer
1
2 3 4 5 6