Operations Research manuscript (Please, provide the manuscript number!)

advertisement
Submitted to Operations Research
manuscript (Please, provide the manuscript number!)
Authors are encouraged to submit new papers to INFORMS journals by means of
a style file template, which includes the journal title. However, use of a template
does not certify that the paper has been accepted for publication in the named journal. INFORMS journal templates are for the exclusive purpose of submitting to an
INFORMS journal and should not be used to distribute the papers in print or online
or to submit the papers to another publication.
Online Make-to-Order Joint Replenishment Model:
Primal Dual Competitive Algorithms
Niv Buchbinder
Computer Science Dept., Open University of Israel, niv.buchbinder@gmail.com, *
Tracy Kimbrel
National Science Foundation, tkimbrel@gmail.com
Retsef Levi
Sloan School of Management, MIT, Cambridge, MA, 02139, retsef@mit.edu,
†
Konstantin Makarychev
Microsoft Research, konstantin.makarychev@gmail.com
Maxim Sviridenko
Department of Computer Science, University of Warwick, sviri@dcs.warwick.ac.uk,
‡
In this paper, we study an online make-to-order variant of the classical joint replenishment problem (JRP)
that has been studied extensively over the years and plays a fundamental role in broader planning issues, such
as the management of supply chains. In contrast to the traditional approaches of the stochastic inventory
theory, we study the problem using competitive analysis against a worst-case adversary.
Our main result is a 3-competitive deterministic algorithm for the online version of the JRP. We also prove
a lower bound of approximately 2.64 on the competitiveness of any deterministic online algorithm for the
problem. Our algorithm is based on a novel primal-dual approach using a new linear programming relaxation
of the offline JRP model. The primal-dual approach that we propose departs from previous primal-dual and
online algorithms in rather significant ways. We believe that this approach can extend the range of problems
to which online and primal-dual algorithms can be applied and analyzed.
Key words : Joint replenishment problem, Online algorithm, Competitive Analysis, Primal-dual
History : A preliminary version of this paper appeared in the Proceedings of the Nineteenth Annual
ACM-SIAM Symposium on Discrete Algorithms, SODA 2008.
1
Author: Online Make-to-Order Joint Replenishment
Article submitted to Operations Research; manuscript no. (Please, provide the manuscript number!)
2
1. Introduction
Inventory theory provides streamlined stochastic optimization models that attempt to capture
tradeoffs between opposing costs in managing the flow of multiple types of goods through a supply chain. Uncertainty about future demands is one of the major challenges that make inventory
management problems very complex. Most traditional stochastic inventory models studied in the
literature assume that the probability distributions of the future demands are known, or at least
partially known, as part of the input. However, in many practical scenarios the underlying probability distributions are not available. Moreover, any attempt to create a distributional model of the
demands entails a significant risk of serious misspecification which may lead to very poor policies.
In this paper, we study an online version of the classical joint replenishment problem (JRP)
that has been studied extensively over the years, and plays a fundamental role in broader planning
issues, such as the management of supply chains (e.g. (5, 26)). In particular, following the classical
online framework (8), the assumption is that future demands are entirely unknown and generated
by a worst-case adversary. We consider the JRP model under an online make-to-order coordination
mechanism, where the production of finished goods is triggered only by actual demands, and
no finished goods are held in inventory (13, 19, 25). Make-to-order coordination is a classical
mechanism which is very common in scenarios with highly customized finished goods and high
setup and changeover costs, for example in the steel and glass industries. (The other common
coordination mechanism is make-to-stock, in which finished goods are produced before the actual
demand occurs, and then kept in inventory.)
The main contribution of the paper is the design and analysis of a new primal-dual based
algorithmic approach that leads to policies with robust performance. The performance is analyzed
using the classical concept of competitive ratio (8), in which the performance of the online algorithm
is compared to the optimal offline solution that is computed based on full knowledge of the entire
sequence of demands. Our main result is a 3-competitive deterministic online algorithm for the
online make-to-order JRP. That is, the cost of the online algorithm is guaranteed to be at most 3
times the cost of the optimal offline solution. In addition, we establish a lower bound of 2.64 on the
competitive ratio of any deterministic online algorithm. The online algorithms we develop employ
several new ideas and techniques (discussed in detail below) that we believe can potentially extend
∗
†
Supported by ISF grant 954/11 and BSF grant 2010426.
Part of this research was conducted while the author was a postdoctoral fellow at the IBM, T. J. Watson Research
Center. Partially supported by NSF grants DMS-0732175 and CMMI-0846554 (CAREER Award), an AFOSR award
FA9550-08-1-0369, an SMA grant and the Buschbaum Research Fund of MIT.
‡
Research was supported by EPSRC grant EP/J021814/1, FP7 Marie Curie Career Integration Grant and Royal
Society Wolfson Research Merit Award.
Author: Online Make-to-Order Joint Replenishment
Article submitted to Operations Research; manuscript no. (Please, provide the manuscript number!)
3
the range of classical inventory management problems to which online and primal-dual algorithms
can be applied and analyzed. In particular, this approach can be very effective in devising robust
policies that can be implemented under minimal knowledge about the evolution of future demands.
The details of the offline make-to-order JRP model are as follows. A set D of demands for N
different commodities is specified over a planning horizon of T discrete periods. Each demand point
(i, t) ∈ D requires certain number of units of commodity i, where i = 1, . . . , N and t = 1, . . . , T . Since
holding inventories is not allowed, demand point (i, t) can be satisfied only from orders placed in
period t or later in time. At the beginning of each period s = 1, . . . , T , we can place an order for
any combination of items, and this order can be used to serve pending demand points that arrived
in period s or earlier in time. Each such order incurs a fixed joint ordering cost K0 , as well as a
fixed item ordering cost Ki for each item (commodity) i = 1, . . . , N included in the order, regardless
of the number of units being ordered. The fixed ordering costs drive us to order in large batches.
This is traded off against delay penalty cost, which captures the costs incurred by allowing demand
points to wait for some amount of time until they are satisfied. For each demand point (i, t) and a
potential order s ≥ t, we let wits be the corresponding late penalty cost incurred by demand point
(i, t), if served from an order in period s. The only assumption is that, for each single demand
point (i, t), the delay penalty cost wits is increasing in s. This includes the case in which a demand
point must be served within a specified time window after its arrival. (In this case wits = ∞ after
the time window.) The goal is to find a feasible ordering policy that minimizes the overall ordering
and delay penalty costs.
The offline JRP model is known to be APX-Hard (4, 30). Levi, Roundy and Shmoys have
proposed a primal-dual 2-approximation algorithm for the offline make-to-stock JRP model (26),
and this has been improved by Levi, Roundy, Shmoys and Sviridenko, who proposed a 1.8approximation algorithm using an LP-rounding approach (27). Recently, Nonner and Souza (30)
studied a natural special case of the offline JRP in which each demand has a strict deadline (i.e.,
the delay penalty is 0 until the deadline and ∞ afterwards). They designed a randomized 5/3approximation for this variant, and proved that even this special case is already APX-hard. (In the
offline make-to-stock JRP model there are holding costs for maintaining physical inventory instead
of delay penalty costs. However, mathematically the make-to-stock and the make-to-order offline
models are equivalent, and all complexity results and algorithms can be transparently converted
to the offline make-to-order variants.) The special case of the offline joint replenishment problem
with a single type of commodity, also known as the single-item lot-sizing problem, is polynomially
solvable via dynamic programming (37) or primal-dual algorithms (for example, (20, 26)).
Author: Online Make-to-Order Joint Replenishment
Article submitted to Operations Research; manuscript no. (Please, provide the manuscript number!)
4
In the online make-to-order JRP model, the demand points and the length of the planning horizon
T are not known in advance. Instead, demand points arrive in an online manner, and the ordering
decision made in each time period s is based only on demand points that arrived up to period s.
This assumption is particulary realistic in settings where the demand is highly unpredictable, and
cannot be estimated appropriately from historical data. Indeed, this is the case when the products
are highly customized to customer specific requests. We measure the performance of our algorithms
by the standard competitive ratio between the cost incurred by the online algorithm and the
minimum cost obtained by an offline optimal solution when the input is generated by a worst-case
adversary. The online single-item lot-sizing problem is equivalent to the well-understood TCPacknowledgment problem. Dooly, Goldman and Scott gave an optimal 2-competitive deterministic
algorithm for this problem (15). Karlin, Kenyon and Randall gave an optimal e/(e − 1)-competitive
randomized algorithm (23). Buchbinder, Jain and Naor have recently proposed an analysis of these
algorithms using a primal-dual approach (10).
1.1. Our results and techniques
The main result of this paper is a 3-competitive deterministic algorithm for the online make-toorder JRP model. In addition, we obtain a lower bound of 2.64 on the competitive ratio of any
deterministic online algorithm. We also implemented the algorithm, and present the results of
computational experiments that test the typical empirical performance of our algorithm. In our
experiments the empirical competitive ratio ranges in the interval [1.5, 2.2] with typical value of
less than 2.
The deterministic algorithm for the online TCP-acknowledgement problem (or the online maketo-order single-item lot-sizing problem) (15) is simply based on balancing the ordering cost with the
delay penalty cost. We place an order whenever the cumulative delay penalty cost of the currently
pending demands exceeds K, where K is the fixed ordering cost. However, it can be shown that any
straightforward extension of this idea to the JRP model does not lead to algorithms with bounded
competitive ratio. The fundamental problem is the choice of which items (commodities) should
be included once the decision has been made to place a (joint) order. Intuitively, the dilemma is
whether to include in the order items for which the current cumulative delay penalty costs are
relatively low. Including such items runs into the risk of incurring high item ordering costs because
of unnecessary orders of these items; excluding them runs the risk of incurring high joint ordering
costs due to placing multiple orders, each including only a small number of items. More specifically,
it is not clear whether the future arrivals of demands will justify additional joint orders that can
be used to satisfy the currently pending demands of those items. Instead it may be better to serve
them from the order placed in the current period.
Author: Online Make-to-Order Joint Replenishment
Article submitted to Operations Research; manuscript no. (Please, provide the manuscript number!)
5
We propose a primal-dual algorithm for the online JRP model. Our primal-dual approach is
based on a novel linear programming relaxation (LP) of the offline JRP model. The LP and its
dual program guide the decisions made by the online algorithm. Specifically, we simultaneously
construct online both a feasible primal integer solution and a feasible dual solution. We then show
that the cost of the primal solution is at most 3 times the cost of the dual solution, obtaining a
3-competitive algorithm. For intuition, it helps to think of the dual variables as budgets that are
being used to pay for the cost of the primal solution, which consists of the joint ordering cost, the
item ordering costs and the delay penalty costs. The budget of each as-yet-unknown demand point
(i, t) is 0 until time t. Starting at time t, the corresponding budget can change until this demand
point is frozen.
We note that our primal-dual algorithm departs from previously known algorithms in rather
significant ways. In particular, the online nature of the problem requires several fundamentally
different algorithmic approaches compared to primal-dual algorithms that were previously designed
for offline versions of the JRP model (26), the facility location problem (22) and other combinatorial
problems (e.g., (18)). For example, all of these algorithms have a second clean-up phase, in which
the initial primal solution is modified to make it cheaper. However, this is not possible in an online
setting, and we need a different approach.
Now we describe the main aspects of the new algorithmic approach that we propose and contrast
it with the previous offline primal-dual algorithms. Joint orders are placed when the budgets of a
subset of demand points are sufficient to pay the joint ordering cost and the item ordering costs
of a certain potential order, as well as the resulting delay penalty costs incurred by serving them
from that order. (This corresponds to a dual constraint becoming tight.) However, this potential
order may be in the past, and because the problem is online it can not be used anymore. Instead
we place an order in the current period, initially including all the corresponding items, and freeze
the budgets of all the demand points that will be served by this order. As already mentioned, the
fundamental issue that arises at this point is whether to include additional items in the current
order even though their current budgets are not sufficient to pay for their respective item ordering
costs. This issue is handled through what we call a simulation step. We temporarily increase the
algorithmic time indicator beyond the current time period, and adjust the budgets of the active (not
frozen) demand points accordingly, assuming that no demand point will arrive in future periods.
Throughout this phase certain dual constraints become tight and this guides the algorithm in
including additional items in the current order. However, at the end of the simulation step all the
dual budgets are decreased back to their original values at the beginning of the simulation step,
and the algorithmic time indicator is again aligned with the current time period. In particular,
it is not guaranteed that the budgets of the corresponding demand points will eventually reach
Author: Online Make-to-Order Joint Replenishment
Article submitted to Operations Research; manuscript no. (Please, provide the manuscript number!)
6
their simulation values. Thus, unlike almost all other primal-dual approximation algorithms, our
algorithm is not dual ascent. That is, the budgets of certain demand points can temporarily go
up, and then be decreased, and go up again, until they are frozen. Intuitively, one can think of the
simulation step as a ‘loan’ taken by the algorithm to pay for additional orders of certain items.
It is not clear a-priori that it will be able to fully recap this ‘loan’ in the future. Thus, we need
to make sure that the ‘loan’ being taken is not too high; in other words, we need to carefully
monitor the simulation step and design the right stopping rule. We believe that the concept of
the primal-dual simulation step could have applications in other online and offline settings, and
extend the applicability of primal-dual approximation and online algorithms. In addition, unlike
previous algorithms, the performance analysis of our algorithm is not based on showing how to use
the dual budgets to pay the cost of each order placed by the algorithm separately. Instead, we use
the algorithm to partition the orders into clusters of phases, and then show how to use the dual
budgets to pay for the overall cost of each cluster. Specifically, we show that each dual budget is
not used more than 3 times.
1.2. Literature Review
Most traditional inventory management models assume that the underlying demand distributions
are fully specified as part of the model input. At the same time this is recognized to be a problematic assumption in many practical settings, in which it is unrealistic to expect that the demand
distributions can be characterized. In fact, misspecification of the demand distributions could lead
to meaningless output results. Several alternative approaches have been proposed to overcome this
limitation, in which only partial information about the demand distributions is assumed (e.g.,
moments, support, past historical data). There are also several frameworks (e.g., regret, minmax
and robust optimization, comparison to full knowledge of the distributions) that have been used to
evaluate the performance of the corresponding algorithms. We refer the reader to the recent paper
by Huh at al (21) for an extensive literature review.
Online algorithms and competitive analysis are the most robust framework since one has no
assumptions on the future demands, and they are assumed to be generated by a worst-case adversary (8). Moreover, the relative benchmark of comparing to an offline optimal solution is very stringent. There have been several attempts to apply the online framework to simple inventory models,
such as the well-known newsvendor problem (for a sample of papers see (31, 32, 33, 28, 29, 33, 38)).
However, these models assume a weaker adversary (e.g., one that has to draw the demand from
a given support), and some use a much weaker notion of competitiveness comparing the online
solution to the static offline optimal solution. (This solution has to commit to one action and repeat
it throughout all the periods.) Another approach to restrict the power of the adversary has been
Author: Online Make-to-Order Joint Replenishment
Article submitted to Operations Research; manuscript no. (Please, provide the manuscript number!)
7
to assume that while the adversary will choose the worst-case demands (requests), their sequence
of arrivals will be random (14, 2, 17). This framework allows remarkably good performance guarantees under certain (mild) assumptions in some scenarios. Van Den Heuvel and Wagelmans (34)
study an online variant of the classical make-to-stock single item lot-sizing problem. I their model
orders are determined in an online manner and are irrevocable, but the number of units ordered
can be modified later on in an offline manner; they showed that the best possible competitive ratio
in this case is 2, which matches the one obtained by the heuristic proposed in (6). For fully online
and worst-case adversary profit maximization variants of this problem Wagner (39) obtained optimal online algorithms, but the competitive ratios are not constants. Another inventory-scheduling
online model has been studied by (24). In this paper we study the more complex fully online
(multi-item and fixed costs) inventory model of the JRP, and obtain a constant competitive ratio
within the worst-case adversary framework.
The primal-dual approach is a well-studied discipline in the design and analysis of optimization
and approximation algorithms (35). Buchbinder and Naor (11) have recently proposed a primaldual framework for online packing and covering problems. This framework includes, for example,
a large number of routing and load balancing problems, the online set cover problem, paging, and
ad-auctions (3, 9, 7, 10), as well as other problems (See (12) for a survey). Recently, the primal-dual
approach was also used to analyze an easier random arrival model in which the input is generated
by an adversary, but is given to the online algorithm in a random order. In particular, with some
additional mild assumptions a near-optimal solution can be obtained for any packing problem
(See, i.e., (14, 2, 17)). As we shall discuss below, the algorithm we propose in this paper and the
performance analysis require new and more delicate algorithmic ideas (e.g., the simulation step
that we describe below) that depart from previous work.
2. Preliminaries
In this section we formally define our problem. Let H = {1, 2, . . . , N } be the set of item types
(commodities). In the JRP model the cost of an order does not depend on the number of units
ordered, but only on the item types in the order. The cost of an order is composed of a joint
ordering cost denoted by K0 and a fixed item ordering cost of Ki for ordering any number of units
∑
of item type i. Thus, the cost of ordering a set S ⊆ {1, 2, . . . , N } is C(S) , K0 + i∈S Ki . New
demands arrive at times t ∈ {1, 2, . . . , T } for some unknown T . Let T = {1, 2, . . . , T } be the set of
times in the planning horizon. Each demand specifies some item type that is needed. Let D be the
set of demands. Each demand is thus defined by a pair (i, t), where i is the item type associated
with the demand and t ∈ T is the arrival time of the demand.
Author: Online Make-to-Order Joint Replenishment
Article submitted to Operations Research; manuscript no. (Please, provide the manuscript number!)
8
Every demand (i, t) ∈ D can be satisfied in any time period s ≥ t after its arrival. The delay
penalty cost of satisfying demand (i, t) at time s is wits which is an increasing function of s. It is
convenient to view the delay function in increments between each time s and the subsequent time
s + 1. Let ∆its ≥ 0 be the additional penalty of delaying demand (i, t) from time s until time s + 1.
That is ∆its = wi,t,s+1 − wits .
2.1. Linear Program Formulation and Its Dual
It is not difficult to verify that there exists an optimal offline solution that makes orders only at
times at which new demands arrive (i.e., times t ∈ T). To define a lower bound on the optimal cost
we start by formulating the problem as an integer program, and then consider its linear program
relaxation whose minimum solution is a lower bound on the optimal integral cost. We define for
each set S and time t ∈ T a variable x(S, t) that is an indicator for the event of sending an order for
the types of S at time t. Let z(i, t, s) indicate the event of delaying demand (i, t) from time s until
time s + 1. The cost of any offline algorithm can be described as the linear cost function in line
(1) below. The constraints in line (2) stipulate that for any demand (i, t) and time s greater than
its arrival time, either the demand has been served by some order prior to time s, or it is delayed
at time s. Note that the number of constraints and variables in this LP formulation is exponential
with respect to the number of item types. However, since our proposed algorithm doesn’t require
solving the resulting LP explicitly, it can be implemented efficiently.
min
∑T ∑
t=1
S⊆{1,...,r} C(S)x(S, t) +
∀(i, t) ∈ D, s ≥ t :
∑s
τ =t
∑
∑
S | i∈S
∑
(i,t)∈D
s≥t ∆its
· z(i, t, s)
x(S, τ ) + z(i, t, s) ≥ 1.
(1)
(2)
x(S, τ ), z(i, t, s) ≥ 0
Again, constraint (2) ensures that if a demand (i, t) has not been satisfied by some time s ≥ t,
then one has to charge additional delay penalty of ∆its . The objective function captures the total
resulting order and delay costs. It is readily verified that if the variables are constraint to be integers
{0, 1} then the resulting integer program provides an exact formulation of the problem. Then, the
relaxation provides a lower bound.
Next, we consider (3)-(5) below which is the dual problem of the linear program (1)-(2). The dual
program in this case has an intuitive meaning. In the dual program we have a variable y(i, t, s) for
each demand (i, t) and time s ≥ t. The dual variable can be interpreted as a budget. The objective
of the dual program is to maximize the total budget earned from all demands. Constraint (4)
Author: Online Make-to-Order Joint Replenishment
Article submitted to Operations Research; manuscript no. (Please, provide the manuscript number!)
9
states that the budget earned by demand (i, t) between two consecutive times is at most the delay
it incurred between these two consecutive times. Constraint (5) stipulates that the total budget
earned by demands whose type is in S and which arrived prior to time s cannot exceed the cost of
ordering the item types in S. Thus, the intuition is that each demand of some type i earns budget
that pays for its order Ki . After it has paid for its fixed item ordering cost, it starts contributing
to the joint ordering cost K0 .
∑ ∑
max
y(i, t, s)
(3)
(i,t)∈D s≥t
∀(i, t) ∈ D, s ≥ t :
∀S ⊆ {1, . . . , N }, s ∈ T :
∑
y(i, t, s) ≤ ∆its
∑
(i,t)|t≤s,i∈S
r≥s y(i, t, r) ≤ C(S)
(4)
(5)
y(i, t, r) ≥ 0
3. The Online algorithm
In this section we describe our online algorithm. We start with intuition. It is instructive to think
first about a much simpler setting with only a single item type. Suppose that a demand (for this
one type) arrives. If no additional demand arrives in the near future, it is best to serve this demand
right away. However, if an additional demand arrives soon enough then we would benefit from
delaying the first demand and serving both demands together. Of course, we do not know which
of the two will happen. Thus, the question is how much delay cost should we incur before making
an order. It can be shown that the optimal deterministic approach is to wait until the delay cost
incurred exactly equals the order cost. This approach results in an optimal 2-competitive algorithm
(15). In our terminology, this corresponds to an algorithm that waits until the accumulated budgets
of all demands pay for their order. However, it is not hard to show that such an algorithm will fail
in the more complex JRP studied here. Intuitively, the bad example would force such an algorithm
to incur the ordering cost K0 too often. Suppose we have many item types, with orders for each at
time 0, and their respective waiting costs increase rapidly close to their deadlines but the deadlines
are equally distributed in time. Then the previous algorithm would open an order for each demand
separately very close to its deadline and incur the joint ordering cost K0 for each demand, and the
optimal algorithm will order items in batches and will not pay K0 as often. Thus, new ideas are
needed.
Suppose that a set of types of items S have gathered an accumulated budget that may pay for
the order cost of the set of types in S. That is, the accumulated budget is at least the joint ordering
cost along with the additional fixed item order cost of each type in the set S. We certainly want
Author: Online Make-to-Order Joint Replenishment
Article submitted to Operations Research; manuscript no. (Please, provide the manuscript number!)
10
to make an order to the set of types in S. However, since this ordering already pays for the joint
ordering cost, we might want to add other types that still have not fully paid for their fixed cost.
Otherwise, we might need to pay the joint ordering cost several times while the optimal solution
joins all these demands together and pays the joint ordering cost only once. On the other hand,
it is not wise to add all the types that have not yet paid for their fixed cost, since more demands
of these types may arrive in the near future. The question is how many and which ones of these
additional “premature” types should be added to the current order.
The main novel idea that is used in our algorithm is the simulation step that uses the current
known information to decide which of the types will be added to the current joint order. In the
simulation step we virtually increase the algorithmic time to future time periods assuming that
no additional demands arrive. During this process we increase the delay cost of the demands that
have arrived and are not satisfied yet, and so additional types manage to “pay” for their order
cost. These types are added to the current order, and their corresponding demands become “half
active” (defined below). Continuing the simulation for a long time has the benefit of adding more
types to the current order that already paid for the joint order cost. However, each additional type
that is added prematurely adds to the current order cost more than its current budget. Since more
demands of that type might arrive in future times, the “future” budget that convinced us to add it
to the current order is not guaranteed. Therefore, the idea is to continue with the simulation step
as long as the extra future budget that we use is at most the joint order cost, K0 . This extra budget
exactly balances between these two options. The simulation step induces a rather unique dynamics
for how the values of the dual variables change. Unlike almost all existing primal-dual algorithms
in which the dual variables only increase, in our algorithm the value of each dual variable can both
increase and decrease.
3.1. Algorithm Description
We are now ready to formally describe our algorithm. Our online algorithm uses an algorithmic
time indicator τ that starts at time 0 and is increased continuously as time progresses. At each
discrete time s the algorithm simulates a continuous increase of the time indicator τ from time s
to s + 1. Any orders that are indicated at algorithmic time τ are actually made at time s = ⌊τ ⌋.
During any time τ , each demand can be in any of the three states:
• Active demands are demands that are still unsatisfied by the algorithm.
• Half Active demands are demands that are satisfied by the algorithm still play some role in
our algorithm. Intuitively, these demands were satisfied ”prematurely” and we want them to pay
for some other costs.
Author: Online Make-to-Order Joint Replenishment
Article submitted to Operations Research; manuscript no. (Please, provide the manuscript number!)
11
• Inactive demands are demands that are satisfied by the algorithm and play no role in future
times. That is, their corresponding dual variables cannot change anymore.
Each demand (i, t) is active from its arrival time until it is satisfied at some algorithmic time
τ . At time τ the demand (i, t) may become half active for a certain time, and then it becomes
inactive forever. Let τe (i, t) be the time demand (i, t) becomes half active. Let τf (i, t) be the
algorithmic time demand (i, t) becomes inactive. If τf (i, t) > τe (i, t) then during the time interval
[τe (i, t), τf (i, t)] the demand (i, t) is half active. When a new demand arrives and is not served yet,
we set τe (i, t) = τf (i, t) = ∞. Note again that τe (i, t) and τf (i, t) are algorithmic times and do not
have to be integral.
Our proposed online algorithm maintains during each time τ a list of active (unsatisfied) demands
Aτ ⊆ D and a set Hτ ⊆ D of half active demands. These sets contain, of course, only demands that
arrived prior to time τ . At the beginning of the planning horizon A0 consists of demands that
arrived at time 0 and H0 = ∅. If the algorithm changes the status of a set of demands at time τ then
+
we denote by A−
τ and Aτ the set of active demands just before and after this change. Similarly, let
Hτ− and Hτ+ denote the set of active demands just before and after the change.
The algorithm maintains the following assignment to each dual variable y(i, t, s). Until τ becomes
s the variable is zero. If demand (i, t) is active or half active at time τ ≥ s then the variable is
increased continuously by the linear function y(i, t, s) ← (τ − s)∆its (Alternatively, dy(i, t, s)/dτ =
∆its ). The increment stops whenever the demand becomes inactive or when τ = s + 1, the earlier
of these events. From that point on the dual variable remains a constant with value min{(τf (i, t) −
s)∆its , ∆its }.
Orders are triggered when dual constraints become tight due to increments of the dual variables.
To this end, we consider at time τ any set S and any time s ≤ τ and check whether the total
sum of the dual variables that contribute to the suitable dual constraint is exactly C(S). Demands
that contribute to the constraint are demands whose type is in S and their arrival time is prior to
s. We may consider only times s that are integral (i.e. s ∈ T), since if the constraint is tight for
non-integral time τ ′ then moving backwards to time ⌊τ ′ ⌋ can only increase the total sum. This is
true since in our model no new demands arrive between time ⌊τ ′ ⌋ and time τ ′ .
When reading the algorithm description note the similarity between the dynamics of the algorithm during the simulation step and the dynamics of the algorithm during the main part. The
only difference is that demands that are being added to the order in the simulation step are marked
as half active and not inactive as in the main part of the algorithm. The formal description of the
algorithm is outlined in what follows.
Author: Online Make-to-Order Joint Replenishment
Article submitted to Operations Research; manuscript no. (Please, provide the manuscript number!)
12
Inventory algorithm: Upon arrival of a demand (i, t) set τf (i, t) = τe (i, t) = ∞.
At each algorithmic time τ :
Keep the invariant that for any set of types S and time s ≤ τ :
∑
∑
(i,t)|t≤s,i∈S
r≥s
y(i, t, r) ≤ C(S).
1. For each demand that is active or half active, increase y(i, t, ⌊τ ⌋) gradually at rate
dy(i, t, ⌊τ ⌋)/dτ = ∆it⌊τ ⌋ .
2. If at time τ , there exist a set of ∑
types Sτ and time
∑ sτ such that the dual constraint that
corresponds to (Sτ , sτ ) is tight (i.e., (i,t)|t≤sτ ,i∈Sτ r≥sτ y(i, t, r) = C(Sτ )):
(a) Set all half active demands (i, t) such that there exists a variable y(i, t, r) that
appears in the constraint to be inactive. Formally, if (i, t) ∈ Hτ and also i ∈ Sτ , t ≤ sτ then
set τf (i, t) = τ .
(b) If there are no active demands that contribute to the tight constraint return to (1).
Otherwise:
i. Set all half active demands to be inactive. Note that we may change status of some
demands that do not contribute to the tight constraint.
ii. If sτ is later than the time of the previous order made by the algorithm, then set
an order at time ⌊τ ⌋ that includes all item types in the tight constraint Oτ , Sτ .
iii. If sτ is earlier than the time in which the previous order made by the algorithm
was placed, then set an order at time ⌊τ ⌋ that includes only the set of item types of demands
that are active and contribute to the tight constraint. Formally:
Oτ , {i | ∃(i, t) ∈ Aτ such that i ∈ Sτ , t ≤ sτ }
iv. Set all active demands (i, t) whose type i ∈ Oτ to be inactive.
Simulation step:
• Simulate the execution of the algorithm in future times τ (future) > τ (assuming no new
demands arrive).
• If at some time τ (future) there are no active demands left, or the accumulated value
of the dual variables y(i, t, s) from time τ until time τ (future) is at least K0 then stop the
simulation step and return to line (1).
• Otherwise: if at time τ (future) new dual constraint becomes tight (i.e., there exists a set
′
S and time s(past) such that
∑
∑
y(i, t, r) = C(S ′ )
(i,t)|t≤s(past),i∈S ′ r≥s
1. Add to the order Oτ all types in
{
}
O′ , i | ∃(i, t) ∈ Aτ (future) such that i ∈ S ′ , t ≤ s(past)
2. Set all active demands (i, t) whose type i ∈ O′ to be half active at time τ and inactive
at time τ (future) (τe (i, t) = τ , τf (i, t) = τ (future)) and continue the simulation.
Note that the set of half active demands is the set of demands that were added to the order
in the simulation step, but their corresponding dual variables (budget) may still contribute the
the value of the dual solution (in future times). It is not hard to verify that the algorithm can
be implemented efficiently. The main procedure we need is to find out at time t if there are dual
Author: Online Make-to-Order Joint Replenishment
Article submitted to Operations Research; manuscript no. (Please, provide the manuscript number!)
13
constraints that are tight. To this end, we may consider all arrival times of the currently active and
inactive demands. Then, to check if there is a tight constraint that starts at some arrival time s, we
sum up the contributions of all item types i that contribute at least Ki value to a dual constraint
that starts at time s. It is easy to verify that if there is a tight constraint that starts at time s,
then the constraint with this subset of item types is also tight.
3.2. Analysis
The idea of the analysis is to construct a primal solution whose cost is the same as the cost of the
solution obtained by the online algorithm (this is done easily by considering the behavior of the
algorithm). Next, we construct a corresponding feasible dual solution based on the variables used
by the online algorithm. We then show that the cost of the primal solution is at most three times
the cost of the dual solution. Since the cost of the dual solution is a lower bound on the optimal
offline solution, it will follow by weak duality that the online algorithm is 3-competitive.
The primal and dual solutions are defined simply. The primal solution set an order at time ⌊τ ⌋
to all the items ordered by the algorithm at the interval [⌊τ ⌋, ⌈τ ⌉]. Also we set z(i, t, s) = 1 for
any demand (i, t) and time s such that τe (i, t) ≥ s + 1 and otherwise we set z(i, t, s) = 0. Note
when a demand becomes half active it is already served and so we can set z(i, t, s) = 0 for any s
such that τe (i, t) < s + 1. The dual solution is constructed by the assignments to the dual variables
y(i, t, s) determined during the execution of the algorithm. The following Lemma proves that the
dual solution produced this way is feasible.
Lemma 1. The assignment y(i, t, s) for each demand (i, t) and time s that is maintained during
the execution of the algorithm defines a feasible dual assignment to (4)-(5).
Proof.
First, since each y(i, t, s) ≤ ∆its all constraints (4) are satisfied. Assume to the contrary
that the assignment violates one of the constraints (5). Then there exists a set S and time s such
that:
∑
∑
y(i, t, s) > C(S)
(i,t)|t≤s,i∈S r≥s
Thus, by this (false) assumption there must be a time τ during the execution of the algorithm
for which
∑
∑
y(i, t, s) = C(S).
(i,t)|t≤s,i∈S r≥s
Also, there must be some demand (i, t) with type i ∈ S that arrived prior to time s and is active
or half active at time > τ . This follows because the dual constraint is violated at time > τ . However,
Author: Online Make-to-Order Joint Replenishment
Article submitted to Operations Research; manuscript no. (Please, provide the manuscript number!)
14
by the algorithm behavior (lines (2a),(2(b)iv)), at the algorithmic time τ all active and half active
demands that contribute to the constraint become inactive, and so we are done.
In order to prove that the cost of the primal solution produced by the algorithm is at most 3
times the cost of the dual solution we need further definitions.
Along the execution of the algorithm many dual constraints become tight. Dual constraints may
become tight either in the main loop of the algorithm or in the simulation step. As discussed earlier,
some of the constraints that became tight during the simulation step may not become tight later
on during the real execution of the algorithm. We elaborate on this issue later on. Consider R to
be any constraint (5) in the dual LP that became tight during the algorithm execution. Such a
constraint is defined by (W (R), [τs (R), τe (R)]), where W (R) is the set of item types of the dual
constraint, τs (R) is the starting time of the dual constraint, and τe (R) is the algorithmic time in
which the constraint became tight. We say that variable y(i, t, s) contributes to the constraint R if
it belongs to R (i.e., i ∈ W (R), t ≤ τs (R) ≤ s ≤ τf (i, t)) and have strictly positive value. Note that
only demands that are active or half active at time s may contribute to constraint R. We next
define the set of demands that contribute to the constraint R. These are demands that (i) arrived
prior to τs (R). (ii) The type of the demand belongs to the set of types of constraint. (iii) The
demand became inactive only strictly after τs (R) (and therefore some dual variable of the demand
contributes to the constraint R. Formally,
D(R) = {(i, t) | i ∈ W (R), t ≤ τs (R), τf (i, t) > τs (R)}
Next, for each constraint R we define W̃ (R) ⊆ W (R) to be the set of types of demands that
are active or half active at the time moment when the constraint R becomes tight. Informally
there might be demands that contribute to the constraint at first, but became inactive before the
algorithmic time in which the constraint became tight. These types do not trigger any events in
the algorithm since they don’t increase anymore. The algorithm only change the status of demands
in W̃ (R). Formally,
W̃ (R) = {i′ | ∃(i, t) ∈ D(R), i′ = i, τf (i, t) ≥ τe (R)} .
Finally, we define D(W̃ (R)) to be the set of demands in D(R) of types from the set W̃ (R).
Informally, these are the demands that are “taken care” by the algorithm at time τe (R) that the
constraint become tight. Formally,
{
}
D(W̃ (R)) = (i, t) | (i, t) ∈ D(R), i ∈ W̃ (R)
Author: Online Make-to-Order Joint Replenishment
Article submitted to Operations Research; manuscript no. (Please, provide the manuscript number!)
Phase p
Phase p+1
15
Phase p
Phase p+1
Rp,1
Rp
Tight constraints that contained active demands
Ts(p)
(a)
Figure 1
Te(p)
Tf(p) Ts(p+1)
(b)
Phase division (a) and the constraint Rp,1 and Rp The dashed constraints are constraints that became
tight during the simulation step and did not cause an order when they became tight.
Next, we consider the orders made by the algorithm. Let τ1 ≤ τ2 ≤ τ3 ≤ . . . be the algorithmic
times in which the algorithm makes an order. The algorithm makes an order whenever it encounters
a tight constraint that contains active demands, i.e. in our new notation D(R) ∩ A−
τe (R) ̸= ∅. Let
R1 , R2 , . . . be the tight constraints that caused these orders. We partition the time interval into
phases. A new phase p starts whenever the starting time of Ri is later then the ending time of the
next constraint Ri−1 (i.e. τs (Ri ) > τe (Ri−1 )). The first phase starts at τs (R1 ). An example of such
a partition appears in Figure 1 where we view each constraint R as an interval between τs (R) and
τe (R).
We separate the first constraint that started each phase and other constraints that became tight
in the same phase. Note that each phase contains at least one tight constraint that triggered
the first order. Let Rp,1 be the first constraint that became tight in phase p. Let Rp be all the
other constraint that became tight during phase p. The set Rp also includes the constraints that
became tight during the simulation step of the algorithm and possibly did not become tight during
the actual execution of the algorithm due to the beginning of phase p + 1 (See Figure 1). Let
τs (p) = τs (Rp,1 ) be the start of a phase p that is equal to the starting time of the first constraint
that became tight during that phase. Let τe (p) = τe (Rp,1 ) be the time in which Rp,1 became tight.
Finally, let τf (p) be the ending time period of the phase p that is the time period in which the last
constraint that caused an order in the phase p became tight. This definition induces the following
partition of the time interval τs (p) ≤ τe (p) ≤ τf (p) < τs (p + 1) ≤ τe (p + 1) ≤ . . ..
We next want to bound the total cost of the online algorithm using the value of the dual solution.
We start with some intuition that will make the technical lemmas and the algorithm behavior more
clear. Bounding the delay cost is quite easy. In Lemma 3 we show that the delay cost incurred by
the online algorithm is at most the value of the dual solution. Actually we give a slightly better
bound (that is used later on), since we sum only dual variables of active demands. Bounding the
order cost is harder. The proof reveals the ideas behind the simulation step and the partition into
phases. The first constraint in each phase is tight and thus the total “budget” inside it is enough
Author: Online Make-to-Order Joint Replenishment
Article submitted to Operations Research; manuscript no. (Please, provide the manuscript number!)
16
to pay for both the joint order cost of the first order in the phase and the fixed order cost of all
types ordered in this first order (excluding the types that are added in the simulation step). The
main observation is that if the phase did not end after the first order, then all the constraints
that become tight during the simulation step also become tight during the actual execution of the
algorithm and with the same order. We formalize this in the following lemma:
Lemma 2. For each phase p, the constraints that become tight in the interval (τe (p), τf (p)] are
exactly the same constraints that became tight during the simulation step done by the algorithm.
Proof.
All the tight constraints that become tight during this time interval have a starting time
earlier than the ending time of the previous order; otherwise, a new phase starts by definition.
Therefore, only demands that arrived prior to the previous order (in the phase p) may contribute to
these constraints. Since the simulation step simulates exactly the events that involve demands that
have already arrived, the constraints that became tight are exactly the constraints that became
tight during the simulation step, and they become tight in the same order as in the simulation
step.
In particular, note that the constraint that became tight and caused the second order in the
phase is constraint that became tight after accumulating of value of at least K0 in the dual. This
is true for each successive order as long as the current phase did not end. The value accumulated
this way is enough to pay the joint ordering cost of each of the orders from the second to the last.
Finally, we need to pay the fixed cost of the the types that were ordered during the second to
the last order in the phase and also for the types that were added due to the simulation step in
the first order. We want to sum the dual profit only until the last order of the phase in order to
bound the number of times we use each dual variable. We prove that each type that was added
due to a constraint that actually became tight before the last order of the phase can pay for its
fixed ordering cost. The only problem is with types that were added in the last order of the phase
due to the simulation step. These types are using future tight constraints. Since the phase ended,
this future budget cannot be used since it might never become available. However, by the behavior
of the algorithm during the simulation step the total future budget that is used is bounded by at
most K0 . Therefore, we may charge this extra cost to the budget of the first tight constraint in the
phase.
Lemma 3. The total delay cost of the online algorithm is at most the dual cost:
∑
s<τe (i,t)
∑
(i,t)∈D
s=t
y(i, t, s)
(6)
Author: Online Make-to-Order Joint Replenishment
Article submitted to Operations Research; manuscript no. (Please, provide the manuscript number!)
Proof.
17
By the construction of the primal and dual solutions, each time the algorithm defines
z(i, t, s) = 1 of an active demand (i, t), then also y(i, t, s) = ∆its . Note that in this case s+1 ≤ τe (i, t).
The following more involved lemma bounds the total order costs made by the online algorithm.
Intuitively, we will eventually bound the total ordering cost in every phase p by summing (sometimes twice) the dual budget obtained only inside the time interval of phase p. This allows us to
obtain later on our bound.
Lemma 4. The total order cost of the online algorithm is at most:
∑

2 ·
p∈P
∑
s<τe (p)
∑
y(i, t, s) +
∑
∑
y(i, t, s) +
s=τe (p) (i,t)∈D
s=τs (p) (i,t)∈D (W (Rp,1 ))
Proof.
∑
s<τf (p)
∑
R∈Rp (i,t)∈D (W̃ (R))
For every order of the set S of types, we pay K0 +
∑
i∈S

s<min{τe (R),τf (p)}
∑
y(i, t, s)(7)
s=τs (R)
Ki . We prove that for each
phase p, the total sum of terms that correspond to phase p is at least the total order cost of the
algorithm during that phase. As previously observed, the accumulated value of the dual variables
between each two orders after the first order in a phase is at least K0 . Thus, the sum of all dual
variables from the time of the first order of a phase until the time of the last order in a phase fully
pays for all joint order costs from the second to the last order of the phase. Formally, if there are
∑s<τ (p) ∑
M orders during the phase then: s=τef(p) (i,t)∈D y(i, t, s) ≥ (M − 1)K0 .
The second observation is that since the first constraint in each phase p is tight then
∑
∑
s<τe (p)
∑
y(i, t, s) = K0 +
s=τs (p) (i,t)∈D(W (Rp,1 ))
Ki
(8)
i∈W (Rp,1 )
Up to now, we charged to the dual variables all joint ordering costs during the phase and also
the fixed ordering cost of types that were ordered during the first order of phase p, excluding the
types that were added to the first order due to the simulation step. We are left with the fixed
ordering cost of all types that were ordered from the second to last order of phase p and the types
that were added to the first order in the phase due to the simulation step. We claim that for each
constraint R ∈ Rp that became tight in the actual execution of the algorithm or in the simulation
step:
∑
∑
s<τe (R)
(i,t)∈D(W̃ (R)) s=τs (R)
y(i, t, s) ≥
∑
i∈W̃ (R)
Ki .
(9)
18
Author: Online Make-to-Order Joint Replenishment
Article submitted to Operations Research; manuscript no. (Please, provide the manuscript number!)
The inequality (9) means that the dual variables corresponding to active demands of the inequality R are enough to pay for item ordering costs. Assume that this is not true. Then there exists
some tight constraint R ∈ Rp such that
∑
∑
∑
s<τe (R)
y(i, t, s) <
(i,t)∈D(W̃ (R)) s=τs (R)
Ki
i∈W̃ (R)
∑
∑s<τe (R)
However, since constraint R became tight we get that
s=τs (R) y(i, t, s) = K0 +
(i,t)∈D(R)
∑
i∈W (R) Ki . Since D(W̃ (R)) contains all the demands of type W̃ (R) that contribute positive value
to the demand R we get by subtracting the two equations that:
∑
∑
∑
s<τe (R)
y(i, t, s) =
(i,t) |i∈(W (R)\W̃ (R)),t≤τs (R) s=τs (R)
∑
s<τe (R)
y(i, t, s)
(i,t)∈D(R),(i,t)∈D(
/ W̃ (R)) s=τs (R)
∑
> K0 +
Ki
i∈(W (R)\W̃ (R))
This contradicts the fact that the online algorithm holds at each time a feasible dual solution
since the dual constraint that is suitable to the set of types W (R) \ W̃ (R) and the time t = τs (R) is
violated. The online algorithm also maintains a feasible dual solution during the simulation step,
so this holds also in the simulation step.
All constraints that became tight during the simulation steps made before the last order in the
phase also became tight in the actual running of the algorithm and therefore are able to pay for
their item ordering cost by the corresponding dual variables. The only problem is with constraints
that became tight during the simulation step made in the last order of a phase. We can only make
use of the values of the dual variables until the time of the last order. The main observation is
that by the algorithm’s behavior the extra budget that is used is at most K0 . Thus, if there are M
orders during the phase we obtain
∑
Order cost ≤
∑
s<τe (p)
y(i, t, s) + (M − 1)K0
(i,t)∈D(W (Rp,1 )) s=τs (p)
+
∑
∑
∑
s<min{τe (R),τf (p)}
R∈Rp (i,t)∈D(W̃ (R))
∑
s<τe (p)
≤2
∑
+
∑
R∈Rp (i,t)∈D(W̃ (R))
∑
s<τf (p)
y(i, t, s) +
s=τs (p) (i,t)∈D(W (Rp,1 ))
∑
y(i, t, s) + K0
(10)
s=τs (R)
∑
y(i, t, s)
s=τe (p) (i,t)∈D
∑
s<min{τe (R),τf (p)}
s=τs (R)
y(i, t, s)
(11)
Author: Online Make-to-Order Joint Replenishment
Article submitted to Operations Research; manuscript no. (Please, provide the manuscript number!)
19
The first term in inequality (10) bounds the joint ordering cost K0 of the first order in the phase
and the fixed ordering cost of each of the types in the first constraint that became tight. The second
term in (10) is the joint ordering cost of all orders from the second to the last. The third term is
the fixed ordering cost of all types that were ordered in the first order due to the simulation step
and the fixed costs of types ordered in the second to last order of the phase. Note that we sum
only until the minimum between the time each constraint became tight and the last order in the
phase. Thus, we add an extra cost of K0 of the extra future budget that was used. Inequality (11)
follows directly from Equation (8).
We next prove a useful claim that helps us proving our final result. An order of an item with
type i at time s by our algorithm is always caused by some dual constraint R becoming tight. One
option is that constraint R became tight at time s ≤ τ < s + 1 and contained an active demand
of type i. Another option is that during the simulation step done at the algorithmic time τ some
constraint R became tight at time τe (R) > s and caused an order at time s. In the next Lemma
we take two successive times t1 and t2 in which the algorithm makes an order to an arbitrary type
i. We prove that the starting time τs (R) of the second constraint that caused an order of type i
must be larger than t1 . Intuitively, this means that an order to type i “resets” all the constraints
that contain type i.
Lemma 5. Let t1 , t2 be two successive times in which the online algorithm makes an order for some
type i. Let τs (R2 ) be the beginning time of the second constraint that became tight (during the real
time or during the simulation) and caused an order of type i at time t2 ≤ τe (R2 ). Then τs (R2 ) > t1
Proof.
The second constraint became tight in real time or during the simulation at time τe (R2 ) ≥
t2 . This constraint must contain at time t2 an active demand (i, t) with type i (otherwise, it doesn’t
cause an order of type i). In addition, by the properties of the dual constraints the constraint only
contains variables of demands that arrived prior to τs (R2 ). Thus, demand (i, t) is active from time
τs (R2 ) until time t2 . At time t1 ≤ t2 there was an order of type i, and so the algorithm changed the
status of all the demands of type i that arrived prior to t1 to either half active or inactive. Thus,
it is not possible that τs (R2 ) ≤ t1 .
The next lemma bounds the number of times each dual variable is used in Equation (7). This
will allow us to bound the competitive ratio of the algorithm.
Lemma 6. The total number of times each y(i, t, s) appears in Equation (7) is at most twice if
s < τe (i, t) and at most 3 times if
s ≥ τe (i, t).
Author: Online Make-to-Order Joint Replenishment
Article submitted to Operations Research; manuscript no. (Please, provide the manuscript number!)
20
Proof.
Suppose first that y(i, t, s) appears in the first constraint in some phase p. By our
definitions it means that τs (Rp,1 ) ≤ s < τe (Rp,1 ) and i ∈ W (Rp,1 ). In this case it appears with
coefficient 2. We prove that in this case it does not appear in any sum of any other constraint in
Rq for any q.
The algorithm makes an order to the types in W (Rp,1 ) at time τe (Rp,1 ). By our definition of
phases τs (Rp,1 ) ≤ s is larger than the time of the last order at phase p − 1 and thus since we sum
the variables in phase p − 1 only until τf (p − 1) < τs (Rp,1 ) ≤ s, then y(i, t, s) cannot appear in any
R ∈ Rq when q < p.
Assume now that there is another tight constraint R′ with set W ′ (R′ ) that contains type i which
became tight later than Rp,1 during the execution of the algorithm, and contains the variable
y(i, t, s). Since this constraint contains the variable y(i, t, s) then it has a beginning time τs (R′ ) ≤
s < τe (Rp,1 ). On the other hand, this constraint caused an additional order of the type i after
time τe (Rp,1 ). Thus, by claim 5 it must has a beginning time τs (R′ ) > τe (Rp,1 ) which leads to a
contradiction, and so we are done.
We therefore consider from now on only variables y(i, t, s) that do not appear in the first constraint of the phase p. Such a variable may appear at most once in the second term of Equation
(7).
We now bound the number of appearances of a variable y(i, t, s) in the third term of Equation
(7). We prove that if s < τe (i, t) then it appears at most once in a sum of some tight constraint R.
If s ≥ τe (i, t) we prove that it appears in at most 2 sums of tight constraints.
Take a variable y(i, t, s) such that s < τe (i, t). We prove that it appears at most once in a
sum of some tight constraint R. Let R be the tight constraint that contains the variable y(i, t, s)
and that caused the first order that served demand (i, t). This order occurred at time ⌊τe (i, t)⌋
and the demand (i, t) became half active at time τe (i, t). Assume to the contrary that there is
another tight constraint R′ with set W (R′ ) that contains type i, caused an order later during the
algorithm execution, and contains the variable y(i, t, s). Since this constraint contains the variable
y(i, t, s) then it has a beginning time τs (R′ ) ≤ s ≤ τe (i, t). On the other hand, this constraint caused
additional order of the type i after time τe (i, t). Thus, by claim 5 it must have a beginning time
τs (R′ ) > τe (i, t) which leads to a contradiction.
Assume now that we take a variable y(i, t, s) such that s > τe (i, t). We prove that it appears in
at most two sums of tight constraints. In particular, we prove that it can appear at most once in a
constraint R such that τs (R) < τe (i, t) and at most once in a constraint such that τs (R) ≥ τe (i, t).
Let R be a tight constraint that contains the variable y(i, t, s), has beginning time τs (R) < τe (i, t),
and that caused the first order that served demand (i, t). This order happened exactly at time
⌊τe (i, t)⌋ when the demand changed its status. Assume to the contrary that there is another tight
Author: Online Make-to-Order Joint Replenishment
Article submitted to Operations Research; manuscript no. (Please, provide the manuscript number!)
21
constraint R′ that contains type i, caused an order of type i later during the algorithm execution,
and has beginning time τs (R′ ) < τe (i, t). On the other hand, this constraint caused additional order
of the type i after time τe (i, t). Thus, by claim 5 it must have a beginning time τs (R′ ) > τe (i, t)
which leads to a contradiction.
To see that there can be at most one constraint such that τs (R) ≥ τe (i, t) that contains the
variable y(i, t, s) we note first that the demand (i, t) is half active at time s. This follows simply
because s ≥ τe (i, t) and the demand is not inactive since otherwise y(i, t, s) should be equal to
zero. The first order of type i happened when the demand changed its status at time ⌊τe (i, t)⌋.
Since we sum only until the constraint became tight or the end of the phase, the next order of
type i happened after time s. Let R be the tight constraint that contains the variable y(i, t, s),
has starting time τs (R) such that τe (i, t) ≤ τs (R) ≤ s, and that caused the first order of type i
after time s. Assume to the contrary that there is another tight constraint R′ that contains type i,
caused an order to i later during the algorithm execution, and contains the variable y(i, t, s). Since
this constraint contains the variable y(i, t, s) it must be that it has a beginning time τs (R′ ) ≤ s.
On the other hand, this constraint caused an additional order of the type i after the order time
of the constraint R. Thus, by claim 5 it must has a beginning time τs (R′ ) > s which leads to a
contradiction.
Combining Lemmas 3, 4 and 5 we obtain
Theorem 1. The algorithm is 3-competitive.
3.3. Computational Results
In this section, we present the results of computational experiments that test the typical empirical
performance of our algorithm for the joint replenishment problem with online arrival. We carried out
different scenarios of arrival parameters. Our typical input had time horizon T = 2500. Demands for
items of type i arrived as a poisson process meaning that the time between each pair of consecutive
events has an exponential distribution with parameter Λi . Recall that our algorithm has worst
case guarantee, and it does not try to learn the distribution of the input over time, so running on
longer time horizons, or changing the distribution in the middle of the process will not affect its
performance. We checked the performance of our algorithm with about 5 item types and various
values of K0 , K1 , . . . , Ki . We used mainly linear delay penalty function that had a different slope
for every item type. For such instances, we also managed to find the optimal integral solution using
CPLEX software (1). This optimum was used to compute our actual competitive ratio.
The empirical competitive ratio of our algorithm ranges in the interval [1.5, 2.2] with typical
value of less than 2. These results were obtained without any additional heuristics that we could
Author: Online Make-to-Order Joint Replenishment
Article submitted to Operations Research; manuscript no. (Please, provide the manuscript number!)
22
Time Steps
2500
2500
2500
2500
2500
Table 1
K0
Ki
10 2,3,5,8,11
10 2,3,5,8,11
20 2,3,5,8,11
20 2,3,5,8,11
10 5,8,10,12,15
Delay-penalty factor
Arrival rate
Competitive ratio
0.2 (all)
0.04 (all)
2.16
0.2 (all)
0.04, 0.03, 0.03, 0.02, 0.01
1.92
0.1,0.2, 0.3, 0.4, 0.5
0.01 (all)
1.73
0.5, 0.4, 0.3, 0.2, 0.1
0.02 (all)
1.98
0.5, 0.4, 0.3, 0.2, 0.1
0.02 (all)
1.97
The empirical competitive ratio for several randomly generated inputs. Competitive ratio was
computed with respect to the optimal offline solution obtained by CPLEX.
apply. It is not expected that an online algorithm will be able to compete perfectly with an optimal
offline solution that knows the whole input sequence. Thus, these results mean that with typical
non-adversarial input the algorithm indeed performs much better than the worst case 3 guarantee.
Table 3.3 lists several typical input parameters along with the algorithm performance.
4. Lower Bounds
Known lower bound techniques for the TCP acknowledgement problem do not extend readily to
JRP and thus we required new ideas. In the following we prove the following lower bounds.
Theorem 2. No deterministic online algorithm for the single-item case has competitive ratio less
than 2.
Theorem 3. No deterministic online algorithm for the 2-item case has competitive ratio less than
2.46.
Theorem 4. No deterministic online algorithm for the 3-item case has competitive ratio less than
2.64.
Our lower bound employs a technique that, to the best of our knowledge, has not been used in
previous related work. The technique is to drastically increase the rate at which costs accumulateat times that are, of course, unknown to the online algorithm. This allows the offline algorithm to
leave some requests unserved and ignore the additional costs so incurred. While not a particularly
realistic feature of practical problems, it adds a new trick to the offline adversary designer’s toolkit
in some problem settings.
We first illustrate a technique to be used in the multi-item case by showing a lower bound of 2
in the single-item case. The proof of Dooly et al. (15) for TCP acknowledgement applies in this
case, since different wait cost functions can be simulated by multiple TCP packets. Our technique
amounts to a new, alternate proof. Their proof achieves a lower bound of 2 by allowing the offline
solution to pay only every other acknowledgement (order cost) paid by the online algorithm, and
to pay wait costs on only half of the demands whereas the online algorithm pays wait costs on all
demands. Intuitively, we can not get a lower bound greater than 2 with this technique because it
Author: Online Make-to-Order Joint Replenishment
Article submitted to Operations Research; manuscript no. (Please, provide the manuscript number!)
23
batches only two orders that are paid separately by the online algorithm. We need to be able to
force the online algorithm to balance the order and wait costs individually for different item types,
and also to force it to pay the joint order cost for each order of each item type whereas the offline
solution pays the joint order cost only once for many orders of all item types. This will be seen in
detail in Section 4.2 below.
We will think of the adversary and the offline algorithm as a single entity; whichever term is
more natural in each context will be used. We will refer to the online algorithm simply as “online.”
The offline solution we construct will not necessarily be the optimal one, but of course it will upper
bound the optimal cost. Our lower bounds are constructed assuming time is continuous; this can
be approximated to arbitrary precision by fine granularity of discrete time steps. It will be more
convenient to express the delay cost for each order using absolute time. We write w(t) as the total
accumulated delay cost, which we call the wait cost, if an order is placed at time t.
4.1. Warmup: the single-item case
The tradeoff we must exploit, of course, is between the wait cost and the order cost. We want to
let offline choose the cheaper of the two and force online to balance them. Since each demand must
eventually be satisfied, offline needs to be able to amortize the order cost of multiple demands
in the case that the wait cost is the cheaper. We do this by collecting multiple demands into a
single order satisfying all the demands at once. This must be done after online has ordered for each
demand individually. Since offline keeps many demands open that are already satisfied by online,
we need a way to keep the wait costs for all those demand from accumulating too much. We do this
by “zooming,” making successive demands whose wait costs increase at ever-increasing rates. We
“zoom in” to a much finer time scale each time we wish offline to pay just the wait cost whereas
online must pay both wait cost and order cost.
Proof of Theorem 2.
Without loss of generality, let K = 1 be the single-item order cost. The
adversary first introduces a demand with wait cost increasing linearly with slope 1; i.e., w(t) = t.
Online waits until some time t1 and then orders, so its total cost is t1 + 1. Offline has two choices:
order the item and pay 1, in which case it may as well order at time 0 and thus pay 0 wait cost, or
pay the wait cost t1 and delay the order. Since it defers the order until some later time in the second
case, offline will pay some additional wait cost. The adversary must make this wait cost negligible.
It does this by introducing the next demand with a much greater rate of wait cost increase. For the
new demand, the wait cost increases at rate
1
ϵ
for some small ϵ; i.e., w(t) = 1ϵ (t − t1 ). Subsequent
demands will repeat this if needed, so the ith demand’s wait time grows at rate 1/ϵi−1 . Wait times
(not costs) for successive demands will decrease geometrically as will become clear. Offline will
Author: Online Make-to-Order Joint Replenishment
Article submitted to Operations Research; manuscript no. (Please, provide the manuscript number!)
24
eventually order before time t1 + 2ϵ provided ϵ ≤ 1/2, and thus pay an extra wait cost less than 2ϵ
for the first demand.
Our adversary strategy is then as follows. Initially demand an item with wait cost w(t) = t. Let
t1 be the time online orders the item. If t1 ≥ 1, offline orders at time 0 and pays 1 which is at
most half of online’s cost. Otherwise, zoom, and repeat at a time scale 1/ϵ times finer; i.e., issue
a demand at t1 with wait cost w(t) = 1ϵ (t − t1 ). In this case also offline has paid at most half of
online’s cost for the first demand, and will later pay an additional wait of no more than 2ϵ for the
first demand. Continue making demands such that w(t) = ϵ−(i−1) (t − ti−1 ), where ti denotes the
time of online’s ith order. Stop when either
1. online’s wait cost for an order is at least 1, in which case offline will order immediately after the
demand arrives and pay the order cost 1 which will satisfy the current demand and also satisfying
all outstanding demands “for free,” or
2. 1/ϵ demands have been made. In this case, we will charge equal fractions of the single order
cost 1 to each of the 1/ϵ demands.
If there are r demands, offline’s single order will come at time tr ≤ 1 +
∑r
r
i=1 ϵ .
It should be clear
that offline’s cost is less than (1 + 3ϵ)/2 times online’s cost, since each demand for which offline
pays wait cost may need to pay an ϵ share of the order cost 1, and waits no more than (1 + 2ϵ)
times as long as it does under online. Since we can make ϵ arbitrarily small, we obtain the stated
lower bound of 2.
4.2. The multiple-item case
Now we turn to the multiple-item case. Without loss of generality we assume K0 , the joint order
cost, is 1. Recall that the order cost for item type i ≥ 1 is denoted Ki .
We will use widely disparate rates of wait cost increase in two ways: we use the zooming technique
described in the previous section, and the wait cost rates for different item types will be very
different. As before, the adversary will zoom up to 1/ϵ times as necessary (we will call these rounds),
∑
and then pay a final ordering cost of 1 + i Ki which is negligible when amortized over enough
rounds.
At the beginning of each round, demands are opened for all item types. At the first time scale
(i.e., in the first round, before any zooming), each item type i will incur wait cost at some rate si .
We choose s1 = 1 and si+1 = ϵsi for i ≥ 1. In each later round of zooming, each item type’s rate of
wait cost increase will be multiplied by 1/ϵ.
Note that whenever wait cost is accumulating for type i and some higher-indexed types, the
sum of wait costs for the higher-indexed types is less than 2ϵ times that of type i. We will not
mention these wait costs for either online or offline in the following, and we will also ignore offline’s
Author: Online Make-to-Order Joint Replenishment
Article submitted to Operations Research; manuscript no. (Please, provide the manuscript number!)
25
additional wait costs for zooming and its final order cost. Thus it should be understood that each
cost in the following is approximate but within a 1 + 6ϵ factor of the actual cost, and that by
choosing a small enough ϵ the stated bounds will hold.
In each round, the adversary presents demands for all item types i, 1 ≤ i ≤ n for some n > 1, at
the beginning of the round. Our analysis below is for a single round, and the same analysis applies
to each round. In each round, the adversary will force online’s cost to be at least some factor B
times offline’s cost. Summed over all rounds, we will obtain the same factor between costs, again
with a negligible error since we defer orders to later rounds or even until after the last round.
For simplicity, we will describe just the first round, which starts at time 0.
Claim 1. For each i ≥ 1, we may assume that online algorithm orders type i no later than types
i + 1 . . . n.
Proof.
Suppose for instance that online orders type 2 at time t2 and then orders type 1 at time
t1 > t2 . The adversary will then proceed as though online ordered both 1 and 2 at time t1 . We may
assume t1 = O(1), since offline could order type 1 at time 0 and online’s wait cost s1 t1 = t1 for type
1 would imply a ratio of ω(1). Thus online’s wait cost s2 t1 for type 2 is very small since s2 = ϵ is
very small. Note that online saves a joint order cost of K0 = 1, which is much greater than s2 t1 ,
and online is thus much better off delaying the order of type 2 until t1 . Similarly, if online orders
any number of higher-indexed types before some lower-indexed type, we may delay the orders for
the higher-indexed types until that of the lower-indexed type, with negligible increase in wait costs
and saving one joint order cost, and online’s cost only decreases.
Now suppose online orders types 1, . . . , j for some j at time t1 . The tradeoff for offline (ignoring
other, more costly choices that are dominated by these two) is between
1. ordering type 1 at time 0, paying 1 + K1 , and (possibly) continuing at the current zoom level;
and
2. zooming so the order for type 1 can be deferred and paying the only wait cost t1 for item
type 1.
Note that offline obtains a significant advantage if online orders any types i > 1 at the same time as
type 1. Online pays Ki for these item types, and offline pays negligible cost. In fact, the adversary
may prefer to zoom to take advantage of this even if
it orders type 1 at time 0 (i.e., the order cost 1 + K1 for ordering type 1 at time 0 is less than
the wait cost t1 ).
4.3. The relatively simple case of 2 item types
We will now consider in detail the case of two item types to illustrate the lower bound technique.
Author: Online Make-to-Order Joint Replenishment
Article submitted to Operations Research; manuscript no. (Please, provide the manuscript number!)
26
Proof of Theorem 3.
Suppose online orders both types at time tboth , paying tboth + 1 + K1 + K2 .
Offline has two choices (ignoring other, poorer options):
1. Pay tboth and zoom.
2. Order item type 1 at time 0, paying 1 + K1 , and zoom.
Now consider the case in which online orders only type 1 at t1 , planning to order type 2 at some
later time t2 . Online’s cost so far is t1 + 1 + K1 . Offline’s choices are:
1. Pay min(t1 , 1 + K1 ) and zoom, which ends the current round. In this case the demand for
type 2 is simply ignored for both online and offline, since it will eventually be ordered but with
negligible wait cost.
2. Order type 1 at time 0, paying 1 + K1 , and continue the round, waiting for online to order
type 2.
Note that offline could keep the demand for item type 1 open and continue without zooming, but
the cost would be far too high. Offline would then be paying wait cost at rate 1 + s2 compared to
the much smaller s2 for online, so we will not consider this option.
In the second case, online eventually orders item type 2 at some time t2 . Online’s total cost for
the round is now t1 + t2 s2 + 2 + K1 + K2 . Offline’s choices are
1. Pay (in total for this round) t2 s2 + 1 + K1 and zoom.
2. Order both item types at time 0, paying (in total for this round) 1 + K1 + K2 . (There is no
need to zoom to a compressed time scale for the next round in this case.)
We will now show that if we choose K1 = 0 and K2 = 0.465, the value of the resulting game (in
the limit as ϵ decreases toward 0) is approximately 2.465.
For the first case, the ratio is
tboth + 1 + K1 + K2 tboth + 1 + K2
=
.
min(tboth , 1 + K1 )
min(tboth , 1)
This is minimized at tboth = 1 with value 2 + K2 = 2.465.
Now consider the second case, and for the sake of contradiction, assume online achieves a ratio
less than 2.465. We can then lower bound t1 by considering the first subcase, i.e., offline’s first
option. The ratio is
t1 +1
min(t1 ,1)
or 1 + 1/t1 for t1 < 1. This expression is greater than 2.465 if t1 <
1/1.465 ≈ 0.683. Thus we can assume t1 ≥ 0.682.
Now consider the final case. The ratio is
t1 + t2 s2 + 2 + K1 + K2
t1 + t2 s2 + 2 + K2
=
.
min(t2 s2 + 1, 1 + K1 + K2 ) min(t2 s2 + 1, 1 + K2 )
This is minimized with t2 s2 = K2 in which case it is
t1 + 2 + 2K2
t1
=2+
.
1 + K2
1 + K2
Author: Online Make-to-Order Joint Replenishment
Article submitted to Operations Research; manuscript no. (Please, provide the manuscript number!)
27
Substituting t1 ≥ 0.682 and K2 = 0.465 we have a ratio greater than 2.465, yielding the contradiction
we needed.
4.4. More than 2 item types
Finally we are ready to describe our lower bound for the case of n > 2 item types.
Proof of Theorem 4.
For tractability, we restrict the adversary’s strategy and assume that if at
any time online orders more than one item type together, the adversary ends the current round of
the game. In our notation below, i denotes this order; i.e., online orders singly items 1, . . . , i − 1
and then orders types i and i + 1 at the same time. We allow online to know the adversary strategy
and thus assume it does not order i + 2 and higher types, since there would be no advantage.
Alternatively, we can say we are simply neglecting the costs of any higher-indexed orders, since
what we need to do is lower bound online’s cost. If online never aggregates two orders, the game
ends (no later than) when online has ordered all n item types. Recall that the adversary will repeat
these orders for many rounds, and note that we are here speaking of the game corresponding to a
single round. Note that depending on the adversary’s choices, online might not actually make all
the orders in its strategy. The adversary may end the round earlier than the ith order.
We will drop the wait times and rates of increase and instead simply denote the wait costs.
wi,j will be the wait cost for type j in the case that online chooses as its strategy to order items
1, . . . , i − 1 separately and then order i and i + 1 together. We will limit offline and the adversary
to the choices listed below. In general, offline either orders all items at time 0, or orders types
1 . . . i − 1 at time 0 and defers higher-indexed types by zooming. (Note that in either case, item
types greater than i are deferred to the next round for both offline and online; the wait costs for
those demands in the current round, and also later rounds which are much shorter, are negligible.)
Cases i = 1 and i = n are slightly different from other cases, leading to a somewhat complicated
series of subcases.
1. In case i = 1, either order type 1 at time 0 and pay 1 + K1 , or pay the wait cost w1,1 . In either
case, zoom and avoid paying any cost for type 2. Thus online’s cost is
w1,1 + 1 + K1 + K2
and offline’s cost is
min(w1,1 , 1 + K1 ).
2. If i > 1, end the round right after online orders type 1, and zoom, avoiding all order costs.
Online pays some wait cost plus the order cost:
wi,1 + 1 + K1 .
Author: Online Make-to-Order Joint Replenishment
Article submitted to Operations Research; manuscript no. (Please, provide the manuscript number!)
28
Offline pays only
wi,1 .
3. If i > 2, end the round after ℓ orders and zoom, where 1 < ℓ < i, avoiding the order cost for
type ℓ by zooming; types 1..ℓ − 1 are ordered at time 0 and no wait cost is incurred for them. We
may write online’s cost as
ℓ
∑
wi,j + ℓ +
ℓ
∑
j=1
Kj
j=1
and offline’s as
wi,ℓ + 1 +
ℓ−1
∑
Kj .
j=1
4. if 2 < i < n, allow online to order all types through i + 1 (all but i and i + 1 individually).
Offline orders types 1 . . . i − 1 at time 0 and either orders type i as well, or pays the wait cost wi,i .
Thus online pays
i
∑
wi,j + i +
i+1
∑
j=1
and offline pays
1+
Kj
j=1
i−1
∑
Kj + min(wi,i , Ki )
j=1
5. if i = n, allow online to order all types 1..n separately. Offline orders types 1 . . . n − 1 at time
0 and either orders type n as well, or pays the wait cost wn,n . Thus online pays
n
∑
wn,j + n +
j=1
and offline pays
1+
n
∑
Kj
j=1
n−1
∑
Kj + min(wn,n , Kn )
j=1
.
Complete problem statement for lower bound Our goal is to prove a lower bound of B, as large
as possible, on the competitive ratio of every (deterministic) online algorithm. From the foregoing
it should be clear that we may do so by exhibiting n and K1 , . . . , Kn such that for every sequence
{wi,ℓ } where 1 ≤ i ≤ n and 1 ≤ ℓ ≤ i, the following inequalities hold.
w1,1 + 1 + K1 + K2
≥ B · min(w1,1 , 1 + K1 )
wi,1 + 1 + K1
≥ B · wi,1
∑ℓ
j=1 wi,j
∑i
j=1 wi,j
∑n
j=1 wn,j
+ℓ+
+i+
∑ℓ
j=1 Kj
∑i+1
+n+
j=1 Kj
∑n
j=1 Kj
i = 2...n
≥ B · (wi,ℓ + 1 +
≥ B · (1 +
≥ B · (1 +
∑i−1
∑ℓ−1
j=1 Kj )
j=1 Kj
∑n−1
j=1
+ min(wi,i , Ki ))
Kj + min(wn,n , Kn ))
i = 3 . . . n, ℓ = 2 . . . i − 1
i = 2...n−1
Author: Online Make-to-Order Joint Replenishment
Article submitted to Operations Research; manuscript no. (Please, provide the manuscript number!)
29
Note we may assume min(w1,1 , 1 + K1 ) = w1,1 = 1 + K1 since it can only improve the ratio for
online. Similarly, it is not difficult to see that online’s optimal choice for each i > 1 is wi,i = Ki .
For the 3-item case, using K1 = 0, K2 = 0.641, and K3 = 0.448, we obtain a ratio of approximately
2.641. These values were found using the non-linear programming solver IPOPT (36), but the
resulting bound was checked by hand in a manner similar to the 2-item case. We omit the details
of this more tedious analysis which completes the proof of Theorem 4.
Numerical solution for increasing values of n suggests a limiting value of 2.754 ≤ B ≤ 2.755 for
this adversary.
5. Conclusions
Our main result in this work is a deterministic 3-competitive algorithm to the JRP, which is a
central problem in inventory theory and practice. We also proved a lower bound of 2.64 for any
deterministic online algorithm for the problem. One obvious question that remains open is closing
this gap.
Another question that arises is whether randomized online algorithms can provide improved
competitive ratios. The only lower bound on randomized algorithms that is currently known for
the problem is 1 + 1/(e − 1) ≈ 1.58 that holds even for the Dynamic TCP-Acknowledgement (or
equivalently the online single-item lot sizing problem) (23). However, there are indications that the
randomized competitiveness possible for the online JRP could be significantly worse. First, while
the single-item lot sizing problem is polynomially solvable, the JRP is APX-hard, even when the
delay function is in the form of deadlines (16, 30). The best offline approximation factor currently
known to the general case is only 1.8 > 1.58 (27) (and 5/3 in the case of deadlines). This implies
that any attempt to improve below these guarantees will require improving the respective results
for the deterministic models.
Moreover, our results indicate a fundamental difference between the online single-item lot-sizing
problem and the online JRP in the respective performance of deterministic online algorithms.
Specifically, there exists a 2-competitive deterministic online algorithm for the online single-item
lot-sizing problem, while no algorithm is better than 2.64 competitive for the online JRP. We
conjecture that similar trend holds for randomized algorithms. In particular, the task of designing
improved randomized online algorithms for the JRP seems rather challenging, partly because this
might require the improvement of the analysis of the corresponding offline problems. We leave that
as a major open question for future research.
To get an additional perspective on how helpful randomization may be in practice, we checked the
single item case. For this case, which is much less involved than the joint replenishment problem,
our deterministic algorithm reduces to the well known 2-competitive algorithm (15). On the other
Author: Online Make-to-Order Joint Replenishment
Article submitted to Operations Research; manuscript no. (Please, provide the manuscript number!)
30
hand, there is a very simple e/(e − 1) ≈ 1.58 competitive randomized algorithm (23). We found
out that randomization was much less effective on empirical inputs than the theoretical guarantee.
For example, on random input with K = 10, delay penalty factor 0.5, and arrival rate 0.03, the
deterministic competitive factor was 1.71 while the average competitive ratio of the randomized
algorithm (over 20 executions) was 1.46. On the same input with arrival rate 0.05 the deterministic
competitive ratio was 1.47, while the randomized competitive ratio was only slightly better, 1.45.
Acknowledgements: The authors thank the Associate Editor and the antonymous referees for
many constructive comments that improved the content and exposition of this paper. We thank
Andreas Wächter for his great help in using his non-linear programming solver IPOPT (36) and
Grzegorz Swirszcz for finding several errors in the exposition of the lower bound.
References
[1] Ilog cplex, http://www.ilog.com/products/cplex/.
[2] Shipra Agrawal, Zizhuo Wang, and Yinyu Ye. A dynamic near-optimal algorithm for online linear
programming. CoRR, abs/0911.2974, 2009.
[3] Noga Alon, Baruch Awerbuch, Yossi Azar, Niv Buchbinder, and Joseph Naor. The online set cover
problem. SIAM J. Comput., 39(2):361–370, 2009.
[4] E. Arkin, D. Joneja, and R. Roundy. Computational complexity of uncapacitated multi-echelon production planning problems. Operations Research Letters, 8:61–66, 1989.
[5] Y. Askoy and S. S. Erenguk. Multi-item inventory models with coordinated replenishment: a survey.
International Journal of Operations and Production Management, 8:63–73, 1988.
[6] S. Axsäter. Worst case performance for lot sizing heuristics. EJOR, 9(4):339–343, 1982.
[7] Nikhil Bansal, Niv Buchbinder, and Joseph (Seffi) Naor. A primal-dual randomized algorithm for
weighted paging. In FOCS ’07: Proceedings of the 48th Annual IEEE Symposium on Foundations of
Computer Science, pages 507–517, 2007.
[8] Allan Borodin and Ran El-Yaniv. Online computation and competitive analysis. Cambridge University
Press, New York, NY, USA, 1998.
[9] N. Buchbinder and J. Naor. Improved bounds for online routing and packing via a primal-dual approach.
In Proceedings of the 47th annual ieee Symposium on Foundations of Computer Science (FOCS 2006),
2006.
[10] Niv Buchbinder, Kamal Jain, and Joseph (Seffi) Naor. Online primal-dual algorithms for maximizing
ad-auctions revenue. In ESA ’07: Proceedings of the 15th Annual European Symposium, pages 253–264,
2007.
[11] Niv Buchbinder and Joseph Naor. Online primal-dual algorithms for covering and packing. Math. Oper.
Res., 34(2):270–286, 2009.
Author: Online Make-to-Order Joint Replenishment
Article submitted to Operations Research; manuscript no. (Please, provide the manuscript number!)
31
[12] Niv Buchbinder and Joseph (Seffi) Naor. The design of competitive online algorithms via a primaldual
approach. Foundations and Trends in Theoretical Computer Science, 3:93–263, 2009.
[13] N. P. Dellaert1 and M. T. Melo. Heuristic procedures for a stochastic lot-sizing problem in make-to-order
manufacturing. Annals of Operations Research, 59(1):227–258, 2005.
[14] Nikhil R. Devenur and Thomas P. Hayes. The adwords problem: online keyword matching with budgeted
bidders under random permutations. In ACM Conference on Electronic Commerce, pages 71–78, 2009.
[15] Daniel R. Dooly, Sally A. Goldman, and Stephen D. Scott. Tcp dynamic acknowledgment delay
(extended abstract): theory and practice. In STOC ’98: Proceedings of the thirtieth annual ACM symposium on Theory of computing, pages 389–398, 1998.
[16] Arkin E., D. Joneja, and R. Roundy. Computational complexity of uncapacitated multi-echelon production planning problems. Operations research letters, 8:63–73, 1989.
[17] Jon Feldman, Monika Henzinger, Nitish Korula, Vahab S. Mirrokni, and Clifford Stein. Online stochastic
packing applied to display ad allocation. In ESA (1), pages 182–194, 2010.
[18] M. X. Goemans and D. P. Williamson. A general approximation technique for constrained forest
problems. SIAM Journal on Computing, 24:296–317, 1995.
[19] Qi-Ming He, E.M. Jewkes, and J. Buzacott. The value of information used in inventory control of a
make-to-order inventory-production system. IIE Transactions, 34(11):999–1013, 2002.
[20] S. Van Hoesel and A. Wagelmans. A dual algorithm for the economic lot-sizing problem. European
Journal of Operatioms Research, 52:315–325, 1991.
[21] Tim Huh, Retsef Levi, Paat Rusmevichientong, and Jim Orlin. Adaptive data-driven inventory control
policies based on Kaplan-Meier estimator. Operations Research, 59(4):929–941, 2011.
[22] K. Jain and V. V. Vazirani. Approximation algorithms for metric facility location and k-median problems
using the primal-dual schema and Lagrangian relaxation. Journal of the ACM 48, pages 274–296, 2001.
[23] Anna R. Karlin, Claire Kenyon, and Dana Randall. Dynamic TCP acknowledgement and other stories
about e/(e-1). In ACM Symposium on Theory of Computing, pages 502–509, 2001.
[24] P. Keskinocak, R. Ravi, and S. Tayur. Scheduling and reliable lead time quotation for orders with
availability intervals and lead time sensitive revenues. Management Science, 47(2):264–279.
[25] Wei-Min Lan and Tava Lennon Olsen. Multiproduct systems with both setup times and costs: Fluid
bounds and schedules. Operations Research, 54(3):505–522, 2006.
[26] R. Levi, R. O. Roundy, and D. B. Shmoys. Primal-dual algorithms for deterministic inventory problems.
Mathematics of Operations Research, 31:267–284, 2006.
[27] R. Levi, R. O. Roundy, D. B. Shmoys, and M. Sviridenko. First constant approximation algorithm for
the single-warehouse multi-retailer problem. Under revision in Management Science, extended abstracts
appeared in SODA 2005 and APPROX 2006., 2004.
Author: Online Make-to-Order Joint Replenishment
Article submitted to Operations Research; manuscript no. (Please, provide the manuscript number!)
32
[28] B. Liu, W. Cui, and C. Xin. Ordering policy for perishable commodity using online algorithm with
risk-reward. In Proceedings of 2007 International Conference on Intelligent Systems and Knowledge
Engineering (ISKE 2007), 2007.
[29] Weimin Ma and Ke Wang. Optimal online risk-tolerant ordering policy for the newsvendor with forecast.
Journal of Convergence Information Technology, 5(4):54–65, 2010.
[30] Tim Nonner and Alexander Souza. A 5/3-approximation algorithm for joint replenishment with deadlines. In COCOA, pages 24–35, 2009.
[31] S. O’Neil. Online learning for the newsvendor problem. Master’s thesis, University of Notre Dame,
2009.
[32] Shawn T. O’Neil and Amitabh Chaudhary.
Comparing online learning algorithms to stochastic
approaches for the multi-period newsvendor problem. In ALENEX, pages 49–63, 2008.
[33] Peter Sempolinski and Amitabh Chaudhary. Online algorithms for the newsvendor problem with and
without censored demands. In FAW, pages 234–249, 2010.
[34] W. van den Heuvel and APM Wagelmans. Worst case analysis for a general class of on-line lot-sizing
heuristics. Oper. Res., 2009.
[35] V. V. Vazirani. Approximation algorithms. Springer Verlag, Berlin-New York, 2001.
[36] A. Wächter and L. T. Biegler. On the implementation of an interior-point filter line-search algorithm
for large-scale nonlinear programming. Mathematical Programming, 106(1):25–57, 2006.
[37] H. M. Wagner and T. M. Whitin. Dynamic version of the economic lot sizing model. Management
Science, 5:89–96, 1958.
[38] Michael R. Wagner. Fully distribution-free profit maximization: The inventory management case. Math.
Oper. Res., 35(4):728–741, 2010.
[39] M.R. Wagner. Fully Distribution-Free Profit Maximization: The Inventory Management Case. Math.
Oper. Res., 35(4):728, 2010.
Download