📈 #16 OR in action: Local Search to enhance solutions, and Mercadona facing optimization
And in between, more about warehouses...
Today, I'm getting straight to the point. I'm going to tell you 2 ✌🏻 things in today's edition of Feasible:
How to improve an initial solution with local search methods
The market share of Mercadona and the problems that arise around its warehouses, the famous beehives
Ready, set...
I recently created a database with over 70 Operational Research resources.
FREE.
And it includes things like:
👨👩👧👧 Top communities
🏀 The best courses
🎙️ Podcasts where you learn a lot
⚛️ Useful software for Operational Research
➕ And much more...
I would infinitely appreciate it if you could give it 5 stars ⭐⭐⭐⭐⭐ if you find it useful.
You can get it here.
⬆️ We already have an initial solution, shall we improve it?
In case you don't remember, a couple of weeks ago, we saw how to build an initial solution. In fact, we explored 5 different methods:
All of them are quite fast, and they all have the same problem: the solution you'll find for your problem is... well, I don't like to say these things, but yes, it's not good.
But it's a starting point.
Let's say it's like when you go for a hike in the mountains, and your goal is to reach the summit of a mountain. So, with this, what we've done is parked the car right where the trail begins. You still have a way to go, but you're in a better position than when you left home. And what do you do to start the journey?
Get moving.
In optimization, a move is a change in the solution that you determine. This move defines a specific neighborhood; and it's called a neighborhood because the solutions found from a solution and a type of move are close to that solution. Moving through the solution space, finding better solutions (in one or several neighborhoods) until you can't find a better solution anymore is what's known as local search.
This local search evaluates each solution it finds, and if it's better than the current one, it keeps it. When no better solutions are found, it reaches what we know as a local optimum.
If you notice, this concept of local search is based on what is probably the oldest procedure in optimization: trial and error. You try a new solution with a given move, and if it's better, you stick with it, but if not, you keep looking.
For example, it's very typical in vehicle routing problems to make moves like this:
In which initially we have the connection b-e and c-f, and we end up linking b-c and e-f to improve the solution. In fact, this specific move has its own name and is called 2-opt, although I repeat: you can define the types of moves you want.
Let's continue.
When exploring the neighborhood defined by a move, there are two classical strategies:
Keep reading with a 7-day free trial
Subscribe to Feasible to keep reading this post and get 7 days of free access to the full post archives.