Cascading Knapsack Inequalities - Hidden Structures in Some Inventory-Production-Distribution Problems

You might also like

Download as ppt, pdf, or txt
Download as ppt, pdf, or txt
You are on page 1of 20

Cascading Knapsack Inequalities –

Hidden Structures in Some Inventory-


Production-Distribution Problems

Roger Rocha - PETROBRAS


Ignacio E. Grossmann – Carnegie Mellon University
Marcus V. S. Poggi de Aragão – PUC-Rio de Janeiro

November 9, 2009
Motivation

Although MIP solvers have evolved enormously


in the last decade, it is still important to
formulate models that are closer to the basic
structures implemented in them to obtain full
advantage of their machinery at hand.

“User must also think like a Mathematician!”


Goals

Present and test reformulations to an


inventory-production distribution problem that
arises frequently as a subproblem in supply
chain optimization models

Show that through a reformulation that the


special structure of Cascading Knapsack
Inequalities can be identified.

Propose tighter reformulations for some


special cases of this problem
Problem Statement
Demdc1,t
Prodp1,t

Prodp2,t Demdc2,t

T time periods

Prodp3,t Demdc3,t
Given
Industrial Plant p
– Initial Inventory of parts: ISPp
– Production of parts at time t: PRp,t
– Maximum storage capacity: CAPp
– Set of distribution centers that can be supplied by plant p: S(p)
Truck Fleet
– Number of types of trucks: TR
– Transportation capacity of trucks in type tr: CPtr (full capacity) Objective:
– Transportation cost per time period for trucks type tr: Ctr Minimize transportation cost
of parts from plants to
distribution centers
Distribution Center dc
– Initial inventory of parts: ISDCdc
– Maximum storage capacity: CAPdc

– Customer demands at time period t: DMdc,t


– Transportation time from plant p to distribution center dc: VTp,dc
Major variables

Inventories plant p, time t Inventories dc, time t

sp p ,t sdcdc ,t
Demdc1,t

Prodp1,t

Prodp2,t Demdc2,t

Prodp3,t xtrp,,tdc   0,1 Demdc3,t

From plant p to dc Distribution Centers


Plants
Using truck tr at time t
Initial Formulation
Accounts for the
round trip
Minimize P TR T
transportation costs Min    2C VT p ,dc
tr x
p ,dc tr ,t
p 1 dcS ( p ) tr 1 t 1

Inventory Balance sp p ,1  ISPp


TR
at Plants p   2,..., P , t   2,...,T  1
sp p ,t  sp p ,t 1  PR p ,t 1    CP x
dcS ( p ) tr 1
p , dc
tr tr ,t 1

Inventory Balance sdcdc ,1  ISDCdc


TR
at Distribution dc  1,..., DC , t   2,...,T  1
Centers sdcdc ,t  sdcdc ,t 1  DM dc ,t 1    CP x
p 1 / tr 1
p , dc
tr tr ,t 1

dcS ( p ) 
t VT p ,dc

0  sp p ,t  CAPp p  1,..., P , t  1,...,T  1


Bounds on inventory
variables 0  sdcdc ,t  CAPdc dc  1,..., DC  , t  1,...,T  1
xtrp,,tdc   0,1 p  1,..., P , dc  S ( p), tr  1,...,TR , t  1,...,T 
Inventory Reformulation

Writing down the accumulated inventory at plants and


distribution centers,
t 1 TR t 1
sp p ,t  ISPp   PR p ,    CP  x tr
p , dc
tr , p  1,..., P , t   2,...,T  1
 1 
dcS ( p ) tr 1 1

TR t 1
sdcdc,t  ISDCdc  DM dc ,t 1    CP  x tr
p , dc
tr , dc  1,..., DC , t   2,...,T  1
p 1 /  tr 1 1
dcS ( p ) 
t VT p ,dc

Substituting into the lower and upper bound constraints of


each inventory variables, we obtain,

0  sp p ,t  CAPp p  1,..., P , t  1,..., T  1

0  sdcdc ,t  CAPdc dc  1,..., DC , t  1,..., T  1


Inventory Reformulation

P TR T
Min    2C VT tr p ,dc xtrp ,,tdc Note: Only 0-1 variables
p 1 dcS ( p ) tr 1 t 1

TR t t

  CP  x tr
p ,dc
tr ,  ISPp   PR p , p  1,...,P ,t  1,...,T 
Inventory Balance dcS ( p ) tr 1  1  1

at Plants TR t t

  CP  x tr
p ,dc
tr ,  ISPp   PR p ,  CAPp p  1,...,P ,t  1,...,T 
dcS ( p ) tr 1  1  1
Cascading
Knapsack TR t t

  CP  x tr
p ,dc
tr ,   DM dc ,  ISDCdc dc  1,..., DC ,t  1,...,T 
Structure p 1 / tr 1  1  1
dcS ( p )
Inventory Balance t VT p ,dc

TR t t
at Distribution
Centers   CP  x tr
p ,dc
tr ,   DM dc ,  ISDCdc  CAPdc dc  1,..., DC ,t  1,...,T 
p 1 / tr 1  1  1
dcS ( p )
t VT p ,dc

xtrp ,,tdc   0,1 p  1,...,P ,dc  S ( p ),tr  1,...,TR ,t  1,...,T 

This formulation is as tight as original one but has special structure


Simplified Cases: Only one type of truck
Theorem: The convex hull of the set of inequalities corresponding
to the inventory balance at plants is given by:
 t

t  ISPp   PR p , 
 x p ,dc
tr ,   1
 p  1,..., P ,t  1,...,T  Note: Similar reformulated
dcS ( p )  1  CP 

tr
 constraints for DCs yield
hull relaxation
 t

t  ISPp   PR p ,  CAPp 
  x p ,dc
tr ,    1
 p  1,..., P ,t  1,...,T 
dcS ( p )  1  CPtr 
 
0  xtrp ,,tdc  1 p  1,..., P ,dc  S ( p ),t  1,...,T 
xtrp ,,11
t

Proof: z p ,t   x p ,dc xtrp ,,1dc


tr ,
p ,D
t 1 Capacitated
 1 dcS ( p ) x tr ,1
Network
z p ,1  x p ,dc
tr ,1 0 z p ,1
dcS ( p ) x p ,1
tr ,2
Flow
z p ,t  z p ,t 1  x p ,dc
tr ,t 0 p  1,..., P ,t  1,...,T  xtrp ,,2dc
Problem
dcS ( p ) t2
p ,D
x

=>
 t
  t
 tr ,2

 ISPp   PR p ,  CAPp   ISPp   PR p , 


z p ,2

  1
  z p ,t    1

 CPtr   CP tr  xtrp ,,T1
All vertices
    are integer
xtrp ,,Tdc
t T
p  1,..., P ,t  1,...,T  xtrp ,,TD
(Ahuja et al, 1993)
0 x p ,dc
tr ,t 1 p  1,..., P ,dc  S ( p ),t  1,...,T  z p ,T
Two types of trucks

Defining A and B as the transportation capacities of the two types of trucks,


t t

and substituting Cp,t and Dp,t for ISPp   PR p , and ISPp   PR p ,  CAPp ,
1  1

respectively. The inventory balance reformulation at plants become,


t t

  Ax p ,dc
    By p ,dc
  C p ,t p  1,..., P ,t  1,...,T 
dcS ( p )  1 dcS ( p )  1
t t

  Ax p ,dc
    By p ,dc
  D p ,t p  1,..., P ,t  1,...,T 
dcS ( p )  1 dcS ( p )  1

t t

Defining variables zp,t =  x


 1 dcS ( p )

p ,dc
and wp,t =  y 
p ,dc
, we obtain the
 1 dcS ( p )

following equivalent reformulation:


t
z p ,t   x 
p ,dc
p  1,..., P ,t  1,...,T 
 1 dcS ( p )
t
w p ,t   x 
p ,dc
p  1,..., P ,t  1,...,T 
 1 dcS ( p )
System of decoupled
Az p ,t  Bw p ,t  C p ,t p  1,..., P ,t  1,...,T 
2-integer Knapsack
Az p ,t  Bw p ,t  D p ,t p  1,..., P ,t  1,...,T 
Inequalities
Algorithm to calculate the Convex hull
of 2-integer Knapsack
(Hirschberg and Wong, 1976)
w p ,t
The algorithm stops at Lifting two-integer knapsack
this point – Optimum to obtain strong valid inequalities
D solution
B Az p ,t  Bw p ,t  D
 
Path of algorithm
with input B, A, D

Path of algorithm
D z p ,t
with input A, B, D  A
 
Basic idea
– Euclid’s algorithm to determine the gcd(A,B) and its application
to solve A ≡ B (mod q)
Hull Relaxation Formulation

Theorem: The convex hull of integer points of the sub model defined by the system
of inequalities,

Az p ,t  Bw p ,t  C p ,t p  1,..., P ,t  1,...,T 


Az p ,t  Bw p ,t  D p ,t p  1,..., P ,t  1,...,T 
is given by:

g i
p ,t      
 g ip,1t z p ,t  f pi ,t  f pi ,t1 w p ,t  g ip,1t f pi ,t1  f pi ,t  f pi ,t1 g ip ,t  g ip,1t 
i  1,...,nt  ,p  1,...,P ,t  1,...,T 
j i
p ,t      
 j ip,t1 z p ,t  h ip ,t  h ip,t1 w p ,t  j ip,t1 h ip,t1  h ip ,t  h ip,t1 j ip ,t  j ip,t1 
i  1,...,mt  ,p  1,...,P ,t  1,...,T 

where the points f p ,t , g p ,t
i i
  i i
and h p ,t , j p ,t  are given are the extreme points given by the
Algorithm of Hirschberg and Wong

Reformulated constraints lead to hull relaxation


Computational Results
Instances
75 instances: 25 with one type of truck for all plants;
– 25 with one type of truck different from plant to plant;
– 25 with two types of trucks.

Instances were run on a Pentium IV 3.2 GHz, 4GB


of RAM using CPLEX 11 (ILOG Concert
Technology)
Computational Results
LP Relaxation Initial Model & Inv. Reformulation

Only one type truck

One type truck


different each plant
LP relaxation is identical in both

Two types truck


Computational Results

Comparison of LP Relaxation

Only one type truck

Hull relaxation
is tighter
One type truck Ave  35%
different each plant
of initial gap

Two types truck


Computational times

Inv Ref and Hull Relaxation


almost identical due to cuts
in CPLEX
Computational times

Inv Ref and Hull Relaxation


almost identical due to cuts
in CPLEX
Computational times

Hull relaxation faster


for two truck types

Note: Initial model in almost all cases had to be stopped after 720 seconds
Computational Results
Summary
– The Initial formulation (InitModel) has the same Linear
Relaxation of the Inventory Reformulation (InvRef)

– The Hull Relaxation Reformulation (HullRef) has an Initial


integrality gap three times better on average

– The InitModel could find feasible solutions to 41 out of 75


instances, while InvRef and HullRef found for all instances

– The HullRef is equivalent to the InvRef for instances with


one type of truck (due to preprocessing in CPLEX)

– For one type of truck plants, the InitModel found feasible


solutions to 12 out of 25 instances, whereas InvRef and
HullRef solved to optimality all instances at the root node

– For two type of trucks, the HullRef the fastest


reformulation. On average, 5 times faster than InvRef.
Concluding Remarks

The reformulations InvRef and HullRel are far


superior than the InitModel for solving problems with
the assumption of loading to full capacity and one
and/or two trucks

For subsets of constraints, where the two type of


trucks assumption holds, the HullRel is the one to be
used for the sake of computational efficiency

For the general case, the InvRef is the preferred


formulation to be used

You might also like