Title: A hybrid heuristic for an inventory routing problem
1A hybrid heuristic for an inventory routing
problem
- C.Archetti, L.Bertazzi, M.G. Speranza
- University of Brescia, Italy
- A.Hertz
- Ecole Polytechnique and GERAD, Montréal, Canada
DOMinant 2009, Molde, September 20-23
2The literature
- Surveys
- Federgruen, Simchi-Levi (1995), in Handbooks in
- Operations Research and Management Science
- Campbell et al (1998), in Fleet Management and
Logistics - Cordeau et al (2007) in Handbooks in Operations
Research and - Management Science Transportation
- Bertazzi, Savelsbergh, Speranza (2008) in The
vehicle routing problem..., Golden,
Raghavan, Wasil (eds) - Pioneering papers
- Bell et al (1983), Interfaces
- Federgruen, Zipkin (1984), Operations Research
- Golden, Assad, Dahl (1984), Large Scale
Systems - Blumenfeld et al (1985), Transportation Research
B - Dror, Ball, Golden (1985), Annals of Operations
Research -
3The literature
- Deterministic product usage - no inventory
holding costs in the objective function - Jaillet et al (2002), Transp. Sci.
- Campbell, Savelsbergh (2004), Transp. Sci.
- Gaur, Fisher (2004), Operations Research
- Savelsbergh, Song (2006), Computers and
Operations Research -
- Deterministic product usage - inventory holding
costs in the objective function - Anily, Federgruen (1990), Management Sci.
- Speranza, Ukovich (1994), Operations Research
- Chan, Simchi-Levi (1998), Management Sci.
- Bertazzi, Paletta, Speranza (2002), Transp.
Sci. - Archetti et al (2007), Transp. Sci.
-
4The literature
- Deterministic product usage - inventory holding
costs in the objective function production
decision - Bertazzi, Paletta, Speranza (2005), Journal of
Heuristics - Archetti, Bertazzi, Paletta, Speranza ,
forthcoming - Boudia, Louly, Prins (2007), Computers and
Operations Research - Boudia, Prins (2007), EJOR
- Boudia, Louly, Prins (2008), Production
Planning and Control
5The problem
Data
n customers H time units 1 vehicle
1
Availability at t
Demand of s at t
0
2
Capacity of s
3
initial inventory travelling costs
inventory costs vehicle capacity
How much to deliver to s at time t to minimize
routing costs inventory costs
No stock-out No lost sales
6Replenishment policies
1
0
2
3
- Order-Up-to Level (OU)
- Maximum Level (ML)
Constraints on the quantities to deliver
7Order-Up-to level policy (OU)
Inventory at customer s
Maximum level
Us
Initial level
Time
8The Maximum Level policy (ML)
Every time a customer is visited, the shipping
quantity is such that at most the maximum level
is reached
Us
9Basic decision variables
10Problem formulation
- Inventory definition at the supplier
- Stock-out constraints at the supplier
11- Inventory definition at the customers
- Stock-out constraints at the customers
12- Order-up-to level constraints
The quantity shipped to s at time t is
Maximum level constraints
13 14Known algorithms
Local search Very fast Error?
- A heuristic
- (for the OU policy)
- Bertazzi, Paletta, Speranza (2002), Transp.
Science
Instances up to H3, n50 H6, n30
- A branch-and-cut algorithm
- (for the OU and for the ML policies)
- Archetti, Bertazzi, Laporte, Speranza (2007),
Transp. Science
15History of the hybrid heuristic design
Exact approach allowed us to compute errors
generated by the local search Design of a
tabu search Design of a hybrid heuristic (tabu
search MILP models)
Often large errors, rarely optimal Sometimes la
rge errors, sometimes optimal Excellent results
16HAIR (Hybrid Algorithm for Inventory Routing)
Initialize generates initial solution A Tabu
search is run Whenever a new best solution is
found Improvements is run Every JumpIter
iterations without improvements Jump is run
17OU policy - Initialize
Each customer is served as late as possible
Initial solution may be infeasible (violation of
vehicle capacity or stock-out at the supplier)
18OU policy Tabu search
Search space feasible solutions
infeasible solutions (violation of vehicle
capacity or stock-out at the
supplier) Solution value total cost two
penalty terms Moves for each customer Removal
of a day Move of a day Insertion of a day Swap
with another customer After the moves Reduce
infeasibility Reduce costs
19OU policy Improvements MILP 1
- Route assignment
- Goal to find an optimal assignment of routes to
days optimizing the quantities delivered at the
same time. Removal of customers is allowed.
Optimal solution of a MILP model
20OU policy Improvements MILP 1
- The route assignment model
Binary variables assignment of route r to time
t removal of customer s from route r Continuous
variables quantity to customer s at time
t inventory level of customer s at time
t inventory level of the supplier at time t
21OU policy Improvements MILP 1
- The route assignment model
Min inventory costs saving for
removals s.t. Stock-out constraints OU policy
defining constraints Vehicle capacity
constraints Each route can be assigned to one day
at most Technical constraints on possibility to
serve or remove a customer
of binary variables (nH)( of routes)nH
NP-hard
22OU policy Improvements MILP 1
Day 6
Day 5
Day 1
Day 2
Day 3
Day 4
Node removed
Incumbent solution
Unused
The optimal route assignment
23OU policy Improvements MILP 2
- Customer assignment
- Objective to improve the incumbent solution by
merging a pair of consecutive routes. Removal of
customers from routes, insertion of customers
into routes and quantities delivered are
optimized.
Optimal solution of a MILP model
For each merging and possible assignment day of
the merged route a MILP is solved
24OU policy Improvements MILP 2
- The customer assignment model
Binary variables removal of customer s from time
t insertion of customer s into time t Continuous
variables quantity to customer s at time
t inventory level of customer s at time
t inventory level of the supplier at time t
25OU policy Improvements MILP 2
- The customer assignment model
Min inventory costs insertion costs saving
for removals s.t. Stock-out constraints OU
policy defining constraints Vehicle capacity
constraints Each route can be assigned to one day
at most Technical constraints on possibility to
insert or remove a customer
of binary variables nH
NP-hard
26OU policy - Jump
After a certain number of iterations without
improvements a jump is made. Jump move
customers from days where they are typically
visited to days where they are typically not
visited. (In our experiments a jump is made
only once)
27The hybrid heuristic for the ML policy
The ML policy is more flexible than the OU policy
The entire hybrid heuristic has been adapted
28Tested instances
- 160 benchmark instances from Archetti et al
(2007), TS -
- Known optimal solution
- H 3, n 5,10, ., 50
- H 6, n 5,10, ., 30
- Inventory costs low, high
29Summary of results
30Summary of results
31Summary of results
32 Large instances
- HAIR has been slightly changed
- the improvement procedure is called only if at
least 20 iterations were performed since its last
application - the swap move is not considered.
Optimal solution unknown
- H 6
- n 50, 100, 200
- Inventory costs low, high
- 10 instances for each size for a total of 60
instances
33Summary of results large instances
Running time for OU 1 hour Running time for ML
30 min Errors taken with respect to the best
solution found Running time BPS always less
than 3 min
34Summary of results large instances
Running time for OU 1 hour Running time for ML
30 min Errors taken with respect to the best
solution found Running time BPS always less
than 3 min
35Hybrid vs tabu OU policy
36Hybrid vs tabu ML policy
37Conclusions
- Tabu search combined with MILP models very
successful - Use of the power of CPLEX
- Ad hoc designed MILP models used to explore in
depth parts of the solution space - It is crucial to find the appropriate MILP models
(models that are needed, models that explore
promising parts of the solution space, trade-off
between size of search and complexity)