Deliver or Hold: Approximation Algorithms for the Periodic ......Deliver or Hold: Approximation...

18
Deliver or Hold: Approximation Algorithms for the Periodic Inventory Routing Problem Takuro Fukunaga (National Institute of Informatics) joint work with Afshin Nikzad (Stanford University) R. Ravi (Carnegie Mellon University)

Transcript of Deliver or Hold: Approximation Algorithms for the Periodic ......Deliver or Hold: Approximation...

  • Deliver or Hold: Approximation Algorithms for the Periodic Inventory Routing Problem

    Takuro Fukunaga (National Institute of Informatics)

    !

    joint work with

    Afshin Nikzad (Stanford University) 
R. Ravi (Carnegie Mellon University)

  • Vendor managed inventory (VMI) model

    retailervendor

    How often?

    delivery cost holding cost

    frequently large small

    less frequently small large

    products

    sales & stocks

  • Deterministic demands over rounds

    Round 0 1 2 3 4 5 … T

    50 0 100 30 70 80 … 50

    demands

    holding cost100×h(0, 2) 70×h(3, 4) + 80×h(3, 5)

    h(i, j): cost for holding a single unit of products in rounds i through j

  • Routing in each round

    Round 1Round 0 Round T

    In each round, we specify the route for visiting warehouses

    • WLOG, route in a single round is a set of trees rooted at

    • capacitated setting: total delivery in each tree ≤ vehicle capacity

  • Inventory Routing Problem (IRP)

    Input

    • metric (V, w)

    • depot s ∈ V

    • holding cost hv(t, t’) for v ∈ V, t, t’ ∈ {0, …, T}

    • demand dv(t) for v ∈ V, t ∈ {0, …, T}

    • vehicle capacity C

    Output

    • a set of trees rooted at s in each round

    • allocation of demands to trees

    non-decreasing

    hv(t, u) ≤ hv(t’, u) for t’ ≤ t

    a demand dv(t) cannot be divided

  • Inventory Routing Problem (IRP)

    Constraints

    • demand constraint: 


    each demand is allocated to a tree in the same or earlier rounds

    • capacity constraint: 
each tree is allocated ≤C units of demands

    Open: Is there a constant approximation algorithm?

    Known:

    • polylog(|V|)-approximation

    • constant approximations for Joint Replenishment Problem 


    = two level trees, e.g., [Levi et al. 2008]

    Our results: constant-approximation for periodic schedules

  • Periodic schedule

    (General) Periodic schedule• Every vertex has the same demand in all rounds (i.e. dv(t) = dv(t’))

    • Available frequencies f1, …, fk are given

    • A solution allocates a frequency fi to each vertex, and visits it 


    in rounds 0, fi, 2fi, …

    Client A

    Client B

    Client C

    Client D

    every day

    every week

    every 2 weeks

    every 4 weeks

    Nested periodic schedule

    fi+1 / fi ∈ Z

  • Partition v.s. Non-PartitionRound 2

    freq = 2

    freq = 4

    Round 4

    partition schedule

    visit via

    the same route 
in each round

    non-partition 
schedule

  • Our results

    Uncapacitated schedules

    • 2.55-approx algorithm for uncapacitated nested periodic schedules

    • 4-approx algorithm for uncapacitated nested partition schedules

    • 8-approx algorithm for uncapacitated partition schedules

    Capacicated schedules

    γ-approx for uncapacitated schedules
 ⇒ (γ + 2)-approx for capacitated schedules

    Structural results

    relationships between various schedules

  • Prize-collecting Steiner tree (PCST)

    Input

    • undirected graph G = (V, E)

    • edge costs c: E → R≥0

    • root node s ∈ V

    • penalties π: V − {s} → R≥0

    Output

    rooted tree F minimizing

    c(F) + π(V − V(F))

    V− V(F)

    F

  • Idea

    IRP PCST

    edge costs

    holding costs penelties

    delivery costs

  • IRP with nested policies → PCST

    freq = f1 freq = f2 freq = f3 freq = fk

    In the i-th copy:

    w = 0

    w(ei) = w(e) ·T

    fi

  • Setting of penalties

    • H(v, i): holding cost when v is assigned frequency fi

    π(v, 1) := H(v, 1)

    π(v, i) := H(v, i+1) − H(v, i)

    i i+1

    π(v, 1) + π(v, 2) + … + π(v, i) = H(v, i+1)

    1 k

  • Monotone tree

    A solution F for the PCST instance is monotone: vi ∈ F ⇒ vi+1∈ F

    monotone F

    non-monotone F’

    frequencies are nested ⇒ w(F) ≤ 2 w(F’)

  • Outline of our algorithm

    Algorithm

    1. Construct the PCST instance

    2. Compute an approximate solution F to the PCST instance

    3. Construct a monotone tree F’ from F

    4. Output a schedule corresponding to F’

    TheoremUncapacitated periodic IRP admits a 2ρ-approximation algorithm 
if the PCST problem admits a ρ-approximation algorithm.

    periodic schedule x ⇔ a monotone tree Froute cost of x = w(F)

    holding cost of x = π(F)

  • Improve 2ρ to 2.55

    PCST LP

    min w>x

    s.t. x(�(Y )) + z(vi) � 1, 8vi 2 8Y ✓ (ST

    j=0 Vj) \ {s⇤},z(vi) � z(vi+1), 8v 2 V, 0 8i T � 1,x, z � 0

    min w>x

    s.t. x(�(Y )) + z(vi) � 1, 8vi 2 8Y ✓ (ST

    j=0 Vj) \ {s⇤},x, z � 0

    PCST LP + monotonicity constraints

    Theorem

    Threshold rounding gives a 2.55-approximate monotone tree.

  • Capacitated IRP

    1. Solve uncapacitated IRP 2. Divide each tree into subtrees

    3. Connect a tree to the root 
by augmenting a shortest path

    OPT �X

    i2Vw(s, i)

    TX

    t=0

    di(t)/C

    ⇒ shortest paths ≤ 2OPT

  • Conclusion

    Our contributions

    • IRP: New optimization problem that combines routing and inventory management problems

    • Several constant approximation algorithms for periodic schedules

    Open problems

    • Constant approximation for general case?