acco93 / filo

A Fast Iterated-Local-Search Localized Optimization algorithm for the CVRP.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

If we want to fix the number of routes to a predefined number, what modification should be done?

qtbgo opened this issue · comments

commented

Great job.
I have a question. If we want to fix the number of routes to a predefined number, what modification should be done?

commented

If you want to minimize the num of routes you may try to move the depot away from customers by changing the cost of edges incident to the depot.

However, trying to achieve a predefined num of routes (which may be even greater than the currently produced one) is slightly more challenging.
You can try to add a penalty to the solution cost for each additional or missing route.
To do this, you have to change how delta values are computed in local search operators and in the recreate step.

Also, right now, local search cannot add additional routes (only the recreate step can). To support the definition of new routes in the local search you may for example change the implementation of SMDs having the depot as one of the endpoints.

Then, you'll have to re-design the SMD update phase of local search operators, so that when a move application successfully removes an exceeding route (or add a missing one), all other SMDs describing moves that in their delta contain the gain for removing (adding) a route, are update accordingly by subtracting from their delta the gain of removing (adding) an exceeding (a missing) route.

There might be other ways of doing it, but this is the first thing that came to my mind. Also, keep in mind that it is a heuristic way and may not produce the required num of routes.