On bid-price controls for network revenue management

We consider a network revenue management problem and advance its dual formulation. The dual formulation reveals that the (optimal) shadow price of capacity forms a nonnegative martingale. This result is proved under minimal assumptions on network topology and stochastic nature of demand, allowing an arbitrary statistical dependence structure across time and products. Next, we consider a quadratic perturbation of the network revenue management problem and show that a simple (perturbed) bid-price control is optimal for the perturbed problem; and it is ɛ-optimal for the original network revenue management problem. Finally, we consider a predictable version of this control, where the bid prices used in the current period are last updated in the previous period, and provide an upper bound on its optimality gap in terms of the (quadratic) variation of demand. Using this upper bound we show that there exists a near-optimal such control in the usual case when periods are small compared to the planning horizon pro...


Introduction and summary.
The defining feature of network revenue management is that the products being sold consume the capacities of multiple resources. In this complex setting, bid-price controls represent a popular and intuitively appealing approach to quantity-based revenue management. Such a control mechanism associates a threshold price (called a bid price) with each resource dynamically over time, and a booking request is accepted if the following two conditions are met: the remaining capacities of the various resources are adequate to meet the request; and the revenue generated by accepting the request exceeds the sum of the bid prices associated with the resources consumed. Bid prices are often interpreted as opportunity costs, i.e. shadow prices, of capacity.
In this paper, we first study the shadow prices of remaining capacity as a stochastic process. To that end, we advance a dual formulation of the network revenue management problem whose state variables correspond to shadow prices for the remaining capacity vector in the network revenue management problem. We show that the optimal shadow prices form a martingale. This result is proved without making any assumptions on the network topology or the stochastic structure of demand; we allow nonstationary demands with an arbitrary dependence structure, including both inter-temporal and cross-product dependencies.
These shadow prices are often used as bid prices; and their martingale characterization has proved useful in practice, cf. Schrag (2009). Over the past twenty years revenue management techniques have evolved tremendously. However, even the state-of-the-art revenue management systems do not guarantee maximizing revenue for various reasons, among which are model misspecification, forecasting errors, and a shifting economic landscape. Therefore, business units surrounding the revenue management systems invest in user tools that observe, critique, and ultimately modify these systems. In practice, the degree of modification by the business units is often substantial and raises a host of questions: Are the revenue management systems far off? Are the business units seeing aspects of revenue management that the revenue management systems are missing? Or, are the business units inadvertently moving the revenue management systems off a revenue maximizing trajectory?
These questions emphasize the practical need for good scientific feedback between revenue management systems and the business processes that monitor them. We make no assumptions on the network topology or the stochastic nature of demand. Because the martingale property of optimal shadow prices is proved in such a general setting, it may help the oversight of the revenue management systems in practice. set of optimal controls, non-martingale behavior can then be interpreted as a sign of misspecification of the opportunity cost of capacity. The existence of consistent trends in shadow prices (over the booking horizon) may point to an issue to investigate and possibly correct. For example, a downward trend in shadow prices is a sign that the revenue management system is possibly underutilizing the capacity early in the booking horizon. While we mention such potential practical benefits in passing, their analysis is beyond the scope of this paper.
There are impediments to using optimal shadow prices as the bid prices.
We illustrate them in the next two examples and discuss how to address them in general. To succintly describe the examples below, we will use some of the notation introduced in Section 3, which introduces the network revenue management problem mathematically. The reader may wish to review Section 3 before proceeding to Examples 1 and 2 below.
Example 1. There are two products and one resource. The initial capacity is C = 2 and the capacity consumption matrix is A = [1, 1]. There are two periods (N = 2). There is no uncertainty. The fares are f (t n ) = (100, 200) for n = 1, 2. The demand vector in period 1 is (2, 0) and it is (0, 1) in period 2. The optimal solution is to book half of product 1 demand in period 1, and to book all of product 2 in period 2, i.e. u 1 (t 1 ) = 1 and u 2 (t 2 ) = 1. This results in the revenue of 300. We observe that no classical bid-price control can achieve this solution, because any such control would book either all or none of the demands in each period. Namely, such a control can yield at most a revenue of 200. This happens either by booking all of the demand for product 1 (with π(t 1 ) ≤ 100) that exhausts capacity in period 1 or by only booking the entire demand for product 2 (with π(t 1 ) > 100 and π(t 2 ) ≤ 200).
Intuitively, the basic idea behind bid-price controls is that they capture the displacement cost or the opportunity cost of capacity associated with booking decisions. Taking a dynamic programming point of view, a system manager wishes to assess how the value-to-go function changes as she makes booking decisions at each point. If the value-to-go function was affine, then the bid-pricing approach in the classical sense would work, cf. Williamson (1992). As can be seen from our formulation (P), cf. Section 3, the network revenue management problem is a linear program and hence, its objective is piecewise linear and concave in the vector of remaining capacities. Therefore, the value-to-go function is a piecewise linear and concave function, because the network revenue management problem for the rest of the planning horizon is also a linear program. Consequently, if the current capacity and the remaining capacity after each booking decision are both on the same facet of the value-to-go function, then the bid-pricing approach in the classical sense would work, but problems arise if they are on different facets. Moreover, if the two capacity vectors lie on an edge, then the gradient of the value-to-go function is not well defined. Figure 1 shows the value-to-go function (for the example) at time zero as a function of the remaining capacity. As one tries to implement the bidpricing approach in the first period (traversing the horizontal axis from the right to the left in Figure 1), she starts with a bid price of 100 as given by the slope, but this slope jumps to 200 when the capacity drops below 1.Moreover, it is not defined when the remaining capacity is 1. As discussed above, this causes the classical bid pricing approach to fail.
In what follows, we show that the quadratic perturbation approach works in general and leads to a near optimal solution. The quadratic perturbation of the network revenue management problem yields a strictly concave formulation in general. Moreover, the coextremality conditions between the perturbed problem and its (Fenchel) dual gives rise to the booking control in (1), which can be viewed as a perturbation of the bid-price control in the classical sense, cf. Williamson (1992), and uses the optimal shadow prices as bid prices.
In particular, the two mechanisms result in the same bookings except when the fare of a product is only slightly larger than the sum of the bid prices of the resources that product uses. In that case, the bid-price control we propose books only a fraction of demand while the classical implementation books all demand. The bid prices used (i.e. the optimal shadow prices of capacity) form a martingale, and the resulting booking control is -optimal for the network revenue management problem, cf. Propositions 2 and 3. Thus, our result provides the insight that to assure good performance, one must take additional care when the fare of a product only slightly exceeds the sum of bid prices of the resources it uses, in which case one should not book all demand contrary to the classical implementation of the bid price controls.
The second example highlights the role of information. It is a slight modification of the example provided by Talluri and van Ryzin (1998).
Example 2. There are two resources and three products with initial capacity vector C = (1, 1) and the capacity-consumption matrix There are two periods (N = 2), and the only uncertainty is in the demand process. In each period, there is at most one unit of demand (and only for one product). The evolution of uncertainty is represented by an information tree in Figure 2. In period 1, the probability of having demand for product 3 is 0.4; for product 1, it is 0.3 and for product 2, it is 0.3. On the other hand, in period 2, we have demand for product 3 with probability 0.8 or no demand with probability 0.2. The terminal nodes of the tree correspond to specific sample paths. The intermediate set of nodes represent the resolved uncertainty at the end of period one. The fares are f (t n ) = (300, 300, 500) for n = 1, 2.
It is easy to see that the optimal solution is to book only product 3, while denying all other requests. This results in expected revenue of 440.
Note that the classical bid-price control with these bid prices (provided Δ ∈ (0, 200)) books only product 3, and hence, yields the optimal expected revenue of 440. Also, the bid prices form a martingale by construction.
Our definition of bid prices is more generous than that considered in Talluri and van Ryzin (1998). In particular, the bid prices we propose are adapted, i.e. they use all available information at the time of booking, including the demand information in the current period. In contrast, Talluri and van Ryzin use predictable bid prices, whereby the bid prices used in a period can only use the information available at the end of the previous period. Consequently, their definition implies choosing two (deterministic) numbers π 1 and π 2 as bid prices to be used in period 1. Then, achieving the optimal bookings in period 1 requires π 1 > 300, π 2 > 300 and π 1 + π 2 ≤ 500, which is not possible.
Although the adapted bid prices achieve optimality (in this example), anyone using the bid-price controls in practice will update the bid prices less often than that required for optimality. Therefore, we consider predictable bid-price controls where bid prices used in each period are last updated in the previous period reflecting the way bid prices are used in practice. We show that there exists a predictable bid-price control 2 which is near optimal in the usual case when periods are small compared to the planning horizon provided that either the demand or the incremental information arriving during each period is small. Moreover, the bid prices form a martingale in this case as well.
In establishing the near optimality of the predictable bid-price control, we consider an asymptotic regime where the number of periods grow to infinity and period lengths tend to zero, whereas the planning horizon [0, T ] and the underlying probabilistic primitives (cumulative demand and fare processes) remain unchanged. We believe preserving the uncertainty in the limit is necessary to maintain the key trade-offs of the network revenue management problem; and the novel feature of this asymptotic regime is that it does preserve the stochastic nature of demand unlike most asymptotic regimes considered previously in the literature. Our analysis also provides a bound on the optimality gap associated with the predictable bid-price control we propose, which vanishes in this asymptotic regime, cf. Corollaries 1 and 2. This upper bound is in terms of the volatility of demand and it quantifies the relationship between the updating frequency of bid-prices and their performance.
The martingale property provides us with the understanding that if the system manager makes the optimal accept/reject decisions, a decrease in the option value of capacity due to time advancing should be balanced by the increase in the opportunity cost of capacity due to the decrease in the remaining capacity.
The rest of the paper is structured as follows: The relevant literature is reviewed in Section 2. Section 3 presents the model. Section 4 studies the dual of the network revenue management problem. Section 5 introduces the perturbed network revenue management problem and establishes the main results of the paper. To prove the results in Section 4, we discretize the network revenue management problem, and consider the resulting finite linear program. The dual variables associated with remaining capacities give the shadow prices. Indeed, the dual linear programming problem can itself be viewed as a dynamic stochastic optimization problem whose state variables and the equations governing their evolution immediately imply that the shadow prices form a martingale. The proof of the martingale property in Section 5 follow the same steps but instead of linear programming duality, it uses the more general Fenchel duality for convex optimization problems, cf. Rockafellar and Wets (1997). Section 6 concludes.
2. Literature review. The literature on network revenue management is summarized in Chapter 3 of Talluri and van Ryzin (2004) through roughly 2003, including a through discussion of bid-price controls, which began with Simpson (1989) and Williamson (1992). Bid-price controls are now widely used in practice and they continue to attract the attention of university and industry researchers. Bertsimas and Popescu (2003) proposed a new method based on approximate dynamic programming. Their method computes adaptive and nonadditive bid prices based on a linear programming approximation to the value function of a dynamic programming formulation. The authors also compare their method with the bid-price control based on deterministic linear programming approach and show that their algorithm results in higher revenues and a more robust performance.
Adelman (2007) proposes a novel bid-price control based on approximate dynamic programming ideas. Adelman considers the dynamic programming formulation of the network revenue management problem. Then assuming an affine functional form for the value function and using the linear programming representation of the dynamic programming formulation, the author computes time-dependent (deterministic) bid prices. Adelman also shows that his approach yields an upper bound tighter than the one obtained from the deterministic linear program. Adelman and Mersereau (2008) consider a large class of dynamic programming formulations and develop general techniques to relax and (approximately) solve them via a decomposition provided that the problem comprises of weakly coupled subproblems. More specifically, the authors draw on a Lagrangian relaxation technique as well as a linear programming approach to approximate dynamic programming. The authors compare the two approaches for a variety of practical problems, reporting encouraging numerical results. In a similar vein, Topaloglu (2009) proposes a method to compute bid prices by decomposing the network revenue management problem into a sequence of single leg problems. The bid prices generated by Topaloglu (2009) takes into account the temporal dynamics of customer arrivals and depend on the remaining leg capacities. His method is based on relaxing certain capacity constraints that link decisions for different flight legs by associating Lagrange multipliers with them. Then the problem is decomposed by flight legs and one can concentrate on one flight leg at a time. Topaloglu also shows through a numerical study that his method outperforms the standard heuristics significantly. Kunnumkal and Topaloglu (2010) follows a similar approach but uses a different relaxation of the capacity constraints which yields time-dependent prices. Topaloglu (2008) develops a convergent stochastic approximation method to compute bid prices in network revenue management problems by viewing the total expected revenue as a function of bid prices and using sample path derivatives to find a good set of bid prices. Reiman and Wang (2008) develops a novel diffusion approximation to the network revenue management problem and advances a policy which is asymptotically optimal under diffusion scaling. Recent work by Jasin and Kumar (2012) shows that a probabilistic policy based on frequent resolving of the so-called deterministic linear program leads to excellent performance as the problem size increases, i.e. it results in an optimality gap of O(1). Interestingly, Jasin and Kumar (2013) shows that neither the booking limit nor the bid price interpretation of the deterministic linear program can do as well even with frequent resolving.
Another important paper related to ours is Kleywegt (2001), where the author considers a stylized (deterministic) fluid model of a general dynamic pricing problem for selling a network of resources. In Kleywegt's model prices are chosen dynamically to sell products (or itineraries) to multiple customer classes over time. Kleywegt's model is very general in terms of problem primitives and allows order cancellations. Moreover, Kleywegt observes that his model readily extends to incorporate probabilistic customer choice behavior. The author also develops a solution method and tests it with some numerical examples.
Akan and Ata (2009) studies a more restrictive setting using a stylized continuous-time fluid model and establishes the existence of ε-optimal bid price controls. In this paper, we consider a discrete-time model which represents the way bid prices are used in practice. Furthermore, unlike the continuous time setup, the distinction between predictable and adapted controls is significant in the discrete time setting we consider. Hence, we analyze the performance of predictable bid-price controls and show the existence of a near optimal one. Lastly, the demand processes allowed in this paper are more general than those considered in Akan and Ata (2009).

Model.
We consider a network revenue management model consisting of K resources and J products. In an airline setting, a resource corresponds to a flight leg and a product corresponds to a particular itinerary.
A primitive of our model is a K × J non-negative capacity consumption matrix A, where the entry A kj denotes the amount of resource k capacity consumed by one unit of product j. The initial capacity vector is denoted by C. We assume that C k > 0 for all k and that for all j, there exists a k such that A kj > 0. There are N periods to the terminal time. The periods need not have equal length. To be more specific, the end of period n is denoted by t n for n = 1, . . . , N; and we let t 0 = 0 and t N = T . At the end of each period, upon observing demand the system manager decides the number of bookings for each product so that the capacity constraints are not violated. Then revenue resulting from the bookings is realized and the capacity vector is updated. The booking vectors are continuous 3 and the fares are set exogenously. The capacity not utilized until the terminal time has no value. The objective is to determine the optimal bookings in each period to maximize total expected revenue subject to capacity constraints.
The evolution of information (or uncertainty) is described by the filtered complete probability space (Ω, F, {F t : 0 ≤ t ≤ T }, P), where F t denotes the information available at time t. The system manager observes the evolution of information continuously starting at time t 0 = 0, although she exerts control only at the end of periods, that is, at times {t n : n = 1, . . . , N}. These decision times are exogenous but the time difference between the decision times may be arbitrary as well as the number of decision times. To facilitate the analysis to follow let Γ = {t 1 , . . . , t N } denote the set of decision times.
The cumulative demand is modeled as a non-decreasing, J-dimensional stochastic process {D(t) : 0 ≤ t ≤ T } with a finite second moment, adapted to the underlying information structure (or, filtration) {F t : 0 ≤ t ≤ T }, where D j (t) denotes the cumulative demand for product j up to time t.
No assumption of the independence of demand across products or across time is made; indeed, the random demands can be statistically dependent, but do not depend on the system manager's controls. In our formulation, the system state at decision time t n is described by a K-dimensional vector x(t n ) of remaining capacities; x k (t n ) denotes the remaining capacity of resource k at time t n . The demand observed by the system manager at time t n is the J-dimensional vector D(t n ) − D(t n−1 ), which is the demand accumulated since the last decision time t n−1 , that is, during period n. Upon observing demand D(t n ) − D(t n−1 ) during period n, the system manager chooses a Jdimensional vector u(t n ) of booking levels, where u j (t n ) denotes the booking level for product j at decision time t n . Given the initial capacity vector x(t 0 ) = C, and the booking levels u(t n ) for n = 1, . . . , N, the evolution of the system state (the remaining capacity process) is governed by the following system dynamics equation: (3) x(t n ) = x(t n−1 ) − A u(t n ) for n = 1, . . . , N.
A booking vector u(t n ) at decision time t n results in a revenue of f (t n ) u(t n ), where f (t n ) is the exogenously set vector of fares at decision time t n . The process of fares {f (t) : 0 ≤ t ≤ T } is a bounded, non-negative, continuous-time stochastic process adapted to {F t : 0 ≤ t ≤ T }, which need not be constant nor stationary, allowing us to model randomness in product fares and incorporate the time value of money into the analysis 4 . The fare and demand processes can be arbitrarily correlated as well. We are concerned with the fares only at decision times t n for n = 1, . . . , T . Clearly, D, x, u, f are all stochastic processes, but their dependence on the sample path will be suppressed for notational brevity whenever that causes no confusion.
The objective is to choose adapted booking controls u(t n ) for n = 1, . . . , N to maximize total expected revenue subject to feasibility constraints. That is, choose the booking vector u(t n ), which can depend on all the information F tn available at time t n , for n = 1, . . . , N so as to subject to where the first two constraints describe how remaining capacity evolves over time and the last two constraints impose the demand and capacity restrictions on bookings. Note that the capacity constraints are imposed only for the last period. This is equivalent to imposing them in every period, because the remaining capacity of each resource is nonincreasing over time.
The formulation (P) will be referred to as the network revenue management problem, and an optimal control refers to the set of controls {u(t n ) : n = 1, . . . , N} that maximizes the expected revenues while satisfying the constraints of (P). We denote the optimal objective function value by P * .

A dual formulation of the network revenue management problem.
This section advances a problem formulation that is dual to the network revenue management problem (P). We show that the dual variables corresponding to the primal state variables, i.e. shadow prices of capacity, form a nonnegative martingale. To this end, we first introduce a discrete approximation to the network revenue management problem (P) and its dual. Passing to the limit as the discrete approximation gets finer gives rise to the dual formulation of the network revenue management problem.
To be specific, we introduce a sequence of problems indexed by m = 1, 2, . . . such that in each problem distributions of the demand during each period and the vector of fares have finite support so that these problems reduce to finite linear programs, allowing us to use the machinery of linear programming. This sequence of problems will be helpful in proving statements about the network revenue management problem (P), and its dual, cf. Proposition 1.
Since for each product the cumulative demand has finite mean and the fare process is bounded, there exist constants F and K m for m = 1, 2, . . . such that Without loss of generality assume K m and F to be multiples of 1/2 m . Fixing m, for each product j we truncate the demand during a period by K m . Then we discretize demand during each period by taking a J-dimensional dyadic partition of the cube [0, K m ] J comprised of equal size grids, each of which is a J-dimensional cube with a side length of 1/2 m . Similarly, we discretize the vector of fares in each period by taking a J-dimensional dyadic partition of the cube [0, F ] J comprised also of equal size grids, each of which is a Jdimensional cube with a side length of 1/2 m . Combining these two partitions, we construct a dyadic partition of the 2J-dimensional set [0, K m ] J × [0, F ] J comprised of 2J-dimensional cubes with side lengths of 1/2 m . Hereafter, we will refer to these 2J-dimensional cubes as grids.
In formulating the discrete approximation, we pretend that the system manager cannot distinguish the demand and fare realizations in a grid and regards them as a single realization of demand and fare. When the system manager cannot distinguish the demand and fare realizations in a grid, she acts as if the demand and fare realizations were at their lowest possible level in that grid. Then, using this discretization we can represent the evolution of information as a finite information tree. That is, we get a finite number of "information nodes" for each decision time and the problem can be formulated as a linear program. To be more specific, an information node corresponds to a subset of Ω and two sample paths ω and ω belong to the same information node for the m th partition at decision time t n only if the demand and fare realizations D(ω, t r ) − D(ω, t r−1 ) and f (ω, t r ), and D(ω , t r )−D(ω , t r−1 ) and f (ω , t r ) are in the same grid for each r = 1, . . . , n. Let I m denote the set of information nodes resulting from the discretization of demand and fare processes. Associated with each information node is the probability of visiting that information node which is the probability measure of the sample paths corresponding to that information node. Let p i denote the probability of visiting information node i for i ∈ I m . In what follows, we will write p i = P(ω ∈ i) when convenient, viewing the information node i as a measurable set. In particular, we will use p i and P(ω ∈ i) interchangeably. Every information node i ∈ I m has a unique predecessor in the information tree denoted by i− (associated with the previous period). Similarly, let i+ denote a generic element of the set of nodes that are the (immediate) successors to information node i. The set of information nodes at decision time t n are denoted by I m n , where I m 0 contains a single information node for all m. Let I m = ∪ N l=0 I m l . To repeat, the system manager behaves as if the sample paths in each grid results in a single demand realization and a single fare realization. Since the number of possible such realizations are finite, we get a finite linear program. Consider the finite linear program resulting from the m th discretization. Upon entering information node i ∈ I m , the system manager behaves as if the demand realization is equal to the lowest possible demand realization and the fare realization is equal to the lowest possible fare in information node i. That is, if information node i corresponds to the case that for product j, we have at decision time t n then the system manager acts as if the actual demand and fare realizations are s/2 m and r/2 m , respectively.
In essence, we approximate (P) from "below" by a sequence of finite linear programs. At each decision time the system manager decides on the bookings for each product so that the capacity and demand restrictions are not violated. The objective is again to maximize expected revenue subject to the feasibility constraints.
The following notation is needed to proceed with the analysis. Let d i,m and f i,m denote the discretized demand and fare at information node i ∈ I m , respectively. Let u i,m denote the booking vector at information node i ∈ I m . Similarly, denote vector of remaining capacities upon entering information node i ∈ I m by x i,m . Then, the finite linear program resulting from the m th discretization (denoted by (P m )) is given by Remark. Note that x i,m denotes the vector of remaining capacities upon entering the information node i, i.e. at the beginning of the corresponding period. In contrast, the earlier notation x(ω, t n ) denotes the remaining capacity vector at time t n , i.e. at the end of period n.
For a realization ω ∈ Ω, we visit a sequence of information nodes (one for each decision time). Given an optimal control {u i,m } i∈I m to (P m ), we can rewrite controls u i,m , i ∈ I m , as a function of the sample paths ω by tracking which information nodes we visit at each decision time. Formally, for ω ∈ Ω, let u m (ω, t n ) = u i,m if ω ∈ i and i ∈ I m n . Note that as the approximation of (P) through the discretized problems gets finer, that is, as m ∞, we get a sequence of booking controls. The following lemma shows that the optimal controls for the discretized problems converge to an optimal control for the network revenue management problem (P); its proof is given in Appendix A.
Lemma 1. Consider the sequence of controls u m for m ≥ 1. For every ω ∈ Ω and n = 1, . . . , N, there exists a subsequence m n,r (ω) such that i) m n,r is adapted to the information at time t n , i.e. m n,r (ω) ∈ F tn ; ii) m n,r is a further subsequence of m n−1,r for n ≥ 2; iii) there exists a limit u(ω, t n ) such that Moreover, u is an optimal control for the revenue management problem.
It follows from linear programming duality (see Appendix B for a derivation) that the dual program to the m th discretized problem (P m ) is given as follows: Let { u i,m } i∈I m denote an optimal control for the m th discretized problem (P m ), and { x i,m } i∈I m denote the corresponding state trajectory. Recall that x i,m denotes the vector of remaining capacities upon entering information node i ∈ I m . Also let {ỹ i,m } i∈I m denote an optimal solution for (D m ).
The following complementary slackness conditions are immediate from linear programming duality: which is equivalent to wherex i+,m =x i,m −Aũ i,m for i ∈ I m N denotes the remaining capacity vector at the end of the planning horizon.
The following lemma will facilitate the analysis to follow; see Appendix A for its proof.
Lemma 2. For m ≥ 1, there exists an optimal solution to (D m ) such that where a = min{A kj : A kj > 0}.
Passing to the limit in (D m ) formally as m → ∞ gives rise to the following dual formulation: Choose dual controls y(t N ) ≥ 0 adapted to F t N so as to The following proposition formalizes a duality result between the primal and dual revenue management problems.
Proposition 1. Both formulations (P) and (D) have an optimal solution and the respective optimal objectives are equal.
Proof. Consider the m th discretized formulation (P m ) and its dual (D m ). Let { u i,m } i∈I m denote an optimal control for (P m ); and let { x i,m } i∈I m denote the corresponding state trajectory. Recall that x i,m denotes the vector of remaining capacities upon entering information node i ∈ I m . The primal optimal state trajectory { x i,m } i∈I m is nonnegative and (for m ≥ 1) uniformly bounded by the initial capacity vector C. Similarly, the primal optimal controls { u i,m } i∈I m are also uniformly bounded.
Next, fix an optimal dual solutionỹ m for each m ≥ 1 as characterized in Lemma 2 so thatỹ m are uniformly bounded. For n = 1, . . . , N, define Recall from Lemma 1 that, for each ω ∈ Ω, the subsequences m n,r (ω), n = 1, . . . , N are such that m n,r (ω) is a further subsequence of m n−1,r (ω) for n ≥ 2 and {u mn,r(ω) (ω, t n )} has a limit as r → ∞. Here we use the same subsequences. Then, {x mn,r(ω) (ω, t n )} also has a limit as r → ∞ since For each ω ∈ Ω, the procedure described in the proof of Lemma 1 can be repeated if necessary to construct further subsequences of m n,r (ω) for n = 1, . . . , N such that {y mn,r(ω) (ω, t n )} converge as well. Thus, without loss of generality, assume for every ω ∈ Ω and n = 1, . . . , N that {y mn,r(ω) (ω, t n )} converges as r → ∞. Denote for ω ∈ Ω and n = 1, . . . , N By construction of the subsequences m n,r (ω) we have that u(ω, t n ), y(ω, t n ) and x(ω, t n ) are F tn -measurable for n = 1, . . . , N. Lemma 1 proves that u is an optimal solution to (P).
We imitate the proof of Lemma 1 to show that y is an optimal solution to (D). To that end, assume that y * is an optimal solution to (D). (We are implicitly assuming that an optimal solution exists, which will be addressed below.) Then we construct a feasible solution for (D m ) as follows: , and, in particular, where Obj(ȳ m ) and Obj( y m ) denote the objective values corresponding tō y m and y m in formulation (D m ), respectively. Similarly, Obj(D m ) denotes the optimal objective of (D m ). The inequality in (8) follows sinceȳ m is feasible control for (D m ) whereas the equality in (8) follows because y m is optimal for (D m ). Also note that y is feasible for (D). Thus, where Obj( y) denotes the objective value under y in formulation (D) and Obj(D) denotes the optimal objective function value of (D). Next, we argue that For notational convenience, define the following random variables: . We conclude from Hunt's Lemma (cf. Williams (1991)) that as m → ∞, as m → ∞, which follows because (11)-(12) holds and that N n=1 where the latter has finite mean. Thus, (13) follows from the dominated convergence theorem. Next, we argue that To show this, note that because y m → y a.s. as m → ∞, Obj( y m ) → Obj( y) as m → ∞ by the dominated convergence theorem. Then since y m is optimal for (D m ), (14) follows.
Combining this with (9) gives Thus, y is indeed optimal for (D). This argument assumed the existence of an optimal solution y * for (D). But the proof can be done without that assumption. Namely, for every ε > 0, we can start with y * ε that is ε-optimal for (D) and repeat the steps above. Then we reach the conclusion that and letting ε ↓ 0 gives Obj( y) = Obj(D). Hence, y is optimal for (D). Finally, note that as m → ∞, Also recall from the proof of Lemma 1 that Obj(P m ) → Obj(P) as m → ∞. By strong duality between (P m ) and (D m ), we conclude that Obj(D m ) = Obj(P m ). Thus, it follows from (15) that Obj(P) = Obj(D).
The shadow price y k (t n ) can be interpreted as the value assigned to resource k at time t n . With this interpretation, the objective of (D) corresponds to the value a system manager attributes to her network of resources by her choice of the shadow prices. Consequently, the dual problem (D) can be interpreted as follows: The system manager chooses a non-negative martingale as the shadow prices so as to minimize the expected value she attributes to her network of resources.
Although bid-price controls need not be optimal in general, the shadow prices do capture the value of resources and hence, are useful for designing good policies. The next section illustrates this by advancing a (perturbed) bid price control which is ε-optimal by studying a quadratic perturbation of the network revenue management problem.
5. An approximate solution to the network revenue management problem. In this section, we derive a near optimal solution to the network revenue management problem. To facilitate that analysis, we first introduce a perturbation of the network revenue management problem, denoted by (P ε ). The optimal solution of (P ε ) constitutes an ε-optimal solution for the network revenue management problem (P). Moreover, this solution can be implemented using (adapted) bid prices. The specific bid price control proposed can be viewed as a perturbation of the classical bid-price control, cf. Williamson (1992); and the bid prices used form a martingale.
Next, in Section 5.1, we consider a predictable bid-price control where the bid prices used in each period are last updated in the previous period reflecting the way bid prices are used in practice. We show that there exists a near-optimal predictable bid-price control in the usual case where periods are small compared to the planning horizon provided that either the demand or the incremental information arriving in each period is small.
For each ε > 0, the perturbed problem (P ε ) can be stated as follows: Choose u(t n ) depending on the information F tn available at time t n for n = 1, . . . , N so as to where ε j (t n ) is defined as follows: For j = 1, . . . , J and n = 1, . . . , N, let The difference between (P ε ) and (P) is that (P ε ) has the strictly concave term − 1 2 J j=1 ε j (t n ) u 2 j (t n ) in its objective function in addition to the revenue term f (t n ) u(t n ), which makes (P ε ) a strictly concave problem 5 .
The following proposition provides a characterization of an optimal solution to the perturbed network revenue management problem (P ε ). Its proof proceeds by introducing a finite, discrete approximation to the perturbed problem (P ε ) and deriving the dual convex problem associated with the discretized problem and the resulting coextremality conditions. The result then follows by passing to the limit as the approximations get finer.
Proposition 2. For every ε > 0, there exist shadow prices {y(t n ) : n = 1, . . . , N}, which form a non-negative martingale adapted to ({F tn : n = 1, . . . , N}, P), such that and that a booking control u (with corresponding state trajectory x) constitute an optimal solution to the perturbed network revenue management problem (P ε ) if and only if u, x and y jointly satisfy the following: and for n = 1, . . . , N, Proof. We first introduce a discrete approximation to the perturbed problem (P ε ) using the discretization introduced in Section 4. This results in a sequence of problems indexed by m = 1, 2, . . . such that in each problem the distributions of the demand in each period and the vector of fares have finite support. In particular, for each m, the discretized problem is a finite convex optimization problem.
Let d i,m and f i,m denote the discretized demand and fare at information node i ∈ I m , respectively. Then, for i ∈ I m and j = 1, . . . , J, define otherwise.
Also let u i,m denote the booking vector at information node i ∈ I m . Similarly, denote the vector of remaining capacities upon entering information node i ∈ I m by x i,m . The finite convex program resulting from the m th discretization, denoted by (P m ε ), is given as follows: Recall that this is equivalent to imposing them for every node i ∈ I m , because the remaining capacity of each resource is nonincreasing over time.
The problem (P m ε ) is a quadratic programming problem. It can be posed towards minimization and can be written in matrix format as follows: Choose u ∈ R |I m |J so as to are defined as follows: The ij th entry in the vector u, denoted by u ij (as opposed to our foregoing notation u i j ), for i ∈ I m and j = 1, . . . , J represents the bookings for product j on the information node i ∈ I m . Then, ij th entry of b is given by The matrix B is diagonal with Demand constraints are imposed through the set Z where for all i ∈ I m and j = 1, . . . , J .
The vector w and the matrix W are used to impose the capacity constraints, where w ik = C k for terminal node i ∈ I m N and resource k = 1, . . . , K. Similarly, the matrix W is defined as follows: For k = 1, . . . , K, i ∈ I m N and l ∈ I m , W ik,lj = A kj if l is a (not necessarily immediate) predecessor of the terminal node i or l = i. Otherwise W ik,lj = 0. Then the constraint w − W u ∈ Y * imposes the capacity constraints. To see this, first note that w − W u ∈ Y * is equivalent to the following Then consider the ik th component of this inequality, i.e. w ik − (W ik , .)u ≥ 0, which can be written as follows: where P(i) is the set of information nodes that precede node i and the node i itself. Therefore, the summation A kj u lj denotes the cumulative capacity consumption for resource k until node i reached (including the bookings made in node i). Thus, (20) imposes the capacity constraints. The Fenchel duality result in Example 6 11.43 on page 506 of Rockafellar and Wets (1997) (also see Theorems 11.39 and 11.42, Corollary 11.40 and Example 11.41 of Rockafellar and Wets (1997)) gives rise to the following dual convex program: Choose z ∈ R |I m N |K so as to where θ Z,B (s) = sup v∈Z v s − 1 2 v Bv . Since the primal problem has a finite optimal objective value, the strong duality between ( P m ε ) and ( D m ε ) holds, cf. Theorem 11.39 and 11.42 of Rockafellar and Wets (1997).
It is important to point out that in the dual problem ( D m ε ), we choose the controls z only for the terminal information nodes. That is, there is no decision variable corresponding to other information nodes. However, there appear expressions in the objective function for the other information nodes as well, which are computed through conditional expectations of the controls for the terminal nodes. We will interpret them as bid prices eventually.
To express the dual problem in a more explicit form, we let Then we let 7 y i,m = E[y i+ |i] for i ∈ I m \I m N . Then, to simplify the second term in the objective, we observe that Recall that B ij,ij = p i ε i,m j . Then it is straightforward to show that the unique maximizer of the optimization problem in the summand is given by Similarly, it follows that otherwise.
Also note that the ij th component of zW − b is given by where S(i) is the set of successor nodes of i and includes i itself. Rearranging terms gives In addition, we observe that Therefore, the dual formulation can be rewritten as follows: Choose We conclude from Fenchel duality for extended linear-quadratic programs (see Rockafellar and Wets (1997)) that the optimal primal-dual variables satisfy a set of coextremality conditions which are necessary and sufficient for optimality, cf. Theorems 11.39 and 11.42 and Examples 11.41 and 11.43 of Rockafellar and Wets (1997). To facilitate our analysis, first define for ε > 0 the booking function φ ε as follows: It is easy to see that φ ε is continuous in all of its arguments. Then, the aforementioned convex duality results of Rockafellar and Wets (1997) imply that the primal-dual variables { u i,m } i∈I m and { y i,m } i∈I m are optimal for (P m ε ) and (D m ε ), respectively, if and only if they satisfy the following coextremality conditions: The latter condition is equivalent to These conditions follow by specializing Example 11.41 of Rockafellar and Wets (1997) to our setting and using the last set of necessary and sufficient subgradient conditions given there 8 . That is, for optimality a feasible pair of primal-dual solutions u and z must satisfy where δ Y (·) is the "indicator" function of the set Y , i.e.
Recall that θ Z,B (W z − b) has a unique maximizer characterized through (21) by substituting (W z − b) ij for s ij in (21). It follows from Proposition 11.3 of Rockafellar and Wets (1997) (21) gives (24); see (22) for (W z − b). Also, by Theorem 8.9 and Exercise 8.14 of Rockafellar and Wets (1997), is the normal cone of y at z (see Section 6.B of Rockafellar and Wets (1997)). Moreover, we conclude from Example 6.10 of Rockafellar and Wets (1997) (or from Example 11.4(b)) that w − W u ∈ ∂δ Y (z) if and only if (w − W u)z = 0, which is equivalent to (w − W u) ik z ik = 0 for all i ∈ I m N and k = 1, . . . , K. Note that the ik th component of w − W u (i ∈ I m N , k = 1, . . . , K) is the remaining capacity of resource k at the end of the planning horizon, i.e.
As a preliminary to passing to the limit as m → ∞, we argue that we can chooseỹ so that for all m, The proof of this is virtually identical to the proof of Lemma 2. Fixing an optimal primal solutionũ, we observe that which follows from (23)-(24). As in the proof of Lemma 2, we use this fact to conclude that y i,m k ≤ F a ∀k, i whenever x i,m k > 0. Then, again as in the proof of Lemma 2, we consider the nodes i such that x i k = 0 for some k. This step is identical to that in Lemma 2, which uses an auxiliary linear program to modify the shadow prices. We use the same linear program to modifyỹ i,m k for nodes i such thatx i k = 0. The resulting modified solution continues to be optimal and satisfies (24)-(25) as argued in the proof of Lemma 2. Therefore, we assume hereafter that dual solutions y m satisfy (24)-(25) for m ≥ 1 and that they are uniformly bounded. Also recall that the primal optimal solutionsũ m are uniformly bounded too.
Next, we pass to the limit as m → ∞ and show that the resulting limiting primal and dual controls are optimal for (P ε ) and satisfy (18) and (19), which establish the sufficiency part of the proof. The necessary part follows from the uniqueness of the optimal solution to (P ε ). To this end, we first rewrite controls u i,m and y i,m , i ∈ I m , as a function of the sample paths ω by tracking which information nodes we visit at each decision time 9 . Formally, for ω ∈ Ω, let u m (ω, t n ) = u i,m and y m (ω, t n ) = y i,m if ω ∈ i and i ∈ I m n .
We then show the existence of a limiting process u such that for every ω ∈ Ω and n = 1, . . . , N there exists a subsequence m n,r (ω) so that for n ≥ 2, m n,r (ω) is a further subsequence of m n−1,r (ω) and (29) u(ω, t n ) = lim r→∞ u mn,r(ω) (ω, t n ) and y(ω, t n ) = lim r→∞ y mn,r(ω) (ω, t n ) for n = 1, . . . , N. The subsequences m n,r (ω) ∈ F tn can be constructed as in the proof of Lemma 1. Moreover, we have u(ω, t n ), y(ω, t n ) ∈ F tn by construction. It also follows from Hunt's Lemma, cf. Williams (1991), that for ω ∈ i m , i m ∈ I m n and n = 1, . . . , N − 1. An immediate implication of this is that which follows from (29) and the dual system dynamics in (D m ε ). This proves the martingale property of the shadow pricesȳ; their nonnegativity follows from that ofỹ m for m ≥ 1. Note that it follows immediately from (28) that 0 ≤ȳ k (w, t n ) ≤ F a a.s. ∀k, n.
The feasibility of u for (P) can be established just as in the proof of Lemma 1. Hence, u is also feasible for the perturbed problem (P ε ). Since the booking function φ ε is continuous, it follows from (24) that for ω ∈ Ω and n = 1, . . . , N. It is immediate from (30) and (31) that u and y satisfy (19). Similarly (18) follows from (26). To conclude the proof, we argue that u is optimal for (P ε ). As a preliminary, we show the convergence of optimal objective values of the discretized problems. In particular, they converge to the objective value of the control u for the perturbed problem (P ε ).
Consider the objective function for the a sample path ω along the convergent subsequence chosen in (29): Since each term of the finite sum in (32) is convergent, the summation itself converges to Since the revenue in (32) is bounded, the convergence of the expected revenue follows from the Dominated Convergence Theorem.
To prove that u is optimal for (P ε ), we start with an optimal solution, say u * , of (P ε ) and construct a feasible solution to (P m ε ), say u m , for each m ≥ 1. Given such u m , we clearly have We will show below that Since we have shown in the preceding paragraph that we conclude from (33)-(35) that Obj (ū) ≥ Obj (P ε ), i.e.ū is optimal for (P ε ). Thus, to conclude the proof it suffices to constructû m for m ≥ 1 such that (34) holds. We construct the feasible controlû m for (P m ε ) as follows. For decision time t n and information node i ∈ I m n , the booking for product j is given by where K m is the level at which we truncate the demand. The control u m satisfies the demand constraints and is clearly adapted. As argued in the proof of Lemma 1, it is straightforward to show that the expected revenue under u m is greater than or equal to where F is the bound on the fare process and M < ∞ is such that (Note that such M exists since the initial capacity C k is finite for all k.) The first term in (36) t n )]. All other terms but the last one vanish as m → ∞. Therefore, it suffices to show that as m → ∞, the last term converges to To this end, define the auxiliary random variables ε m j (ω, t n ) as follows: for w ∈ i and i ∈ I m n , n = 1, . . . , N, and note that 10 We conclude from (37) and Hunt's Lemma, cf. Williams (1991), that as 10 If the demand for a product in a period is zero (in formulation (P)), then so is its discretized version (in formulation (P m )) for all m, in which case both sides of (37) is just ε and the convergence holds trivially. If demand in a period is strictly positive, then it is strictly positive for the discretized version for sufficiently large m, hence (37) follows, because the discretized demand converges to the demand; and its inverse converges to the inverse of demand in this case.
Next, we use the dominated convergence theorem to establish the convergence of the expectations. As a preliminary, we show that is a dominating random variable. To see this, define the sequence of random variables χ m j (ω, t n ) such that 11

Summing both sides over n gives
Then summing this over j gives Because Eχ(ω) < ∞ and that the convergence of expected values follow from the dominated convergence theorem. Thus, (34) follows, and the booking control defined in the statement of Proposition 2 via (19) is indeed optimal.
Next, we introduce a class of simple bid-price controls. The bid-price control we propose involves a parameter ε > 0 and a bid-price process π and is executed as follows: At each decision time t n , the system manager observes demand D (t n ) − D (t n−1 ) for period n. Then, letting A j denote the j th column of the capacity consumption matrix A, she makes the booking decisions for various products sequentially with respect to the product index j = 1, . . . , J as follows: provided there is enough capacity is scaled down as dictated by the remaining capacity 12 .
The bid-price control we propose can be viewed as a perturbation of the classical bid-price control, cf. Williamson (1992). In particular, for each product j = 1, . . . , J, the bookings in (40) are the same as those resulting from a classical bid-price control as long as f j (t n ) − π(t n ) A j does not fall in the interval (0, ε), in which case a classical bid-price control would dictate booking all the demand, i.e. D j (t n ) − D j (t n−1 ). In contrast, when f j (t n ) − π(t n ) A j ∈ (0, ε), the bid-price control we propose books In words, the two controls differ only when the fare of a product slightly exceeds the sum of the bid prices of the resources it uses, in which case one should not book all demand in contrast to the classical implementation of bid-price controls. In most cases, however, the two controls yield the same bookings. Figure 3 displays u j (t n ) as a function of the difference f j (t n ) − π(t n ) A j . Indeed, the graph looks more and more like a step function as ε tends to zero, which would result from a classical bid-price control.
The following proposition shows that the bid-price control introduced immediately above is optimal for the perturbed problem (P ε ); and it is εoptimal for the network revenue management problem (P).
Proposition 3. For every ε > 0, there exists a bid-price process {π(t n ) : n = 1, . . . , N}, which forms a non-negative, bounded martingale adapted to ({F tn : n = 1, . . . , N}, P), such that the booking control u defined as in (40) using π is optimal for the perturbed network revenue management problem (P ε ). In particular, where a = min{A kj : A kj > 0}. Moreover, the resulting control u is ε-optimal for the network revenue management problem (P). That is 13 , Proof. Let {y(t n ) : n = 1, . . . , N} be the shadow prices as characterized in Proposition 2, and define (43) π k (t n ) = y k (t n ) for all k, n.
The bookings resulting from (40) (using π as the bid price) are optimal by Proposition 2. Moreover, (41) is also immediate from Proposition 2.
To conclude the proof, let u ε be an optimal control for (P ε ) and u be an optimal control for the network revenue management problem (P). To prove (42), note that u is also feasible for the perturbed problem (P ε ) and that = P * 13 Obj(π) denotes the objective under bid-price control π, which in turn equals the optimal objective value of the perturbed problem (P ε ).
The first inequality follows from the definition of ε j (t n ), and the fact that u(t n ) ≤ D j (t n ) − D j (t n−1 ) for n = 1, . . . , N. The second inequality is given by feasibility of u for (P ε ) and optimality of u ε for (P ε ). The last inequality proves (42) since u ε is also feasible for (P).

5.1.
A predictable bid-price control. In this section, we consider a predictable control where bid prices used at each decision point are last updated in the previous period reflecting the way bid prices are used in practice. We show that there exists a predictable such bid-price control which is near optimal in the usual case when periods are small compared to the planning horizon provided that either demand or the incremental information arriving during each period is small.
In what follows, we will view the set of decision points Γ = {t 1 , . . . , t N } as a decision too. One can view these decisions as being made hierarchically. The system manager first chooses the parameter ε > 0 and a partition Γ at time zero, which determines the frequency of updating. Then, she chooses the bid prices to be used, which are updated dynamically over time. To be specific, we are interested in an asymptotic regime where the system manager makes decisions more and more frequently, i.e. the number of periods N tends to infinity while the period lengths tend to zero. Nonetheless, the stochastic primitives of the problem and the planing horizon remain unchanged. We will denote the revenues resulting from the bookings in (40) by Obj(π, ε, Γ) to emphasize its dependence on Γ, ε and π. The following definition is needed to state the main result of this section.
Definition 1. Given a J-dimensional stochastic process {Z(t) : 0 ≤ t ≤ T }, where J ≥ 1, and a partition Γ = {t 0 , t 1 , . . . , t N } of [0, T ], the p th variation of Z over the partition Γ, denoted by V p (Z, Γ), is defined as follows: where | · | is the max norm in R J .
The variation of a stochastic process as defined immediately above captures its volatility over time. Intuitively, one expects that the less volatile the demand is, the easier it is to achieve optimality. Our results in this section support this intuition showing that the optimality gap (due to infrequent updating of bid prices) associated with the proposed bid-price control is bounded by the expected variation of demand. Next, we state the key result of this section, from which Corollaries 1 and 2 follow.
Theorem 1. For ε > 0 and any partition Γ = {t 0 , t 1 , . . . , t N } of [0, T ], there exists a bid-price process π ε such that {π ε (t n ) : n = 1, . . . , N} is a martingale adapted to ({F t n−1 : n = 1, . . . , N}, P) with s. for all k, n, and the following bound on the optimality gap holds: for p > 1 and q = p/ (p − 1), where κ 1 and κ 2 are constants depending only on the capacity consumption matrix A, the upper bound F on the fare process and the expected cumulative demand over the planning horizon.
Let u denote the booking control defined as in (40) using the adapted bidprice process π. It follows from Proposition 3 that u is an optimal solution to the perturbed network revenue management problem (P ε ). It also follows from Proposition 3 that and P * is the optimal objective of the formulation (P).
To conclude the proof of Theorem 1, we prove that where Obj(π ε , ε, Γ) is the revenue (in (P)) resulting from the bookings under the predictable bid-price process π ε . Recall that the bookings of product j in period n under π ε is given by φ ε (π ε (t n ) A j , f j (t n ), D j (t n ) − D j (t n−1 )), cf.
(23), ignoring the capacity constraints. Also, note that We first consider the second term on the right hand side of the preceding inequality. Observe that this term would be zero if capacity constraints do not bind under π ε , which may not be true in general. Therefore, this term quantifies the loss in revenue from ignoring the capacity constraints. To bound this term, consider the following where F is the upper bound on the fare process, a = max k,j {A kj } and a = min k,j {A kj : A kj > 0}. Here, the first step follows because we are penalizing each unit of the excessive capacity usage with the maximum amount F/a, the second inequality follows from the fact that the bookings under π(t n ) respect the capacity constraints. The third inequality follows because the effect of summing over k and multiplying each summand by A kj is bounded by the additional factorāK outside. The last inequality follows from the fact that the booking function φ ε is Lipschitz continuous in its first argument with Lipschitz constant less than or equal to (D j (t n ) − D j (t n−1 )) /ε and that each A kj is replaced byā.
Recall that u is optimal for (P ε ). Thus, ). Therefore, proceeding as done immediately above where the second inequality follows from the fact that the booking function φ ε is Lipschitz continuous in its first argument with Lipschitz constant less than |D j (t n ) − D j (t n−1 )| /ε. Then, treating N n=1 J j=1 E (·) as a product measure and applying Holder's inequality to (48) and (49), we get where q = p/ (p − 1). Finally, combining (50) and (47) completes the proof of Theorem 1, where κ 2 = F KJa (Ka/a + 1).
The bound (46) provided in Theorem 1 reflects two sources of error: The first term κ 1 ε is a perturbation error, cf. proof of Proposition 3, while the sec-ond term is due to the information gap between predictable versus adapted bid-price controls. Theorem 1 makes no distributional assumptions on the primitives of the problem. That is, the various stochastic processes and the underlying information structure is general. Next, we consider two important special cases. The first one assumes that demand over small periods is also small, which corresponds to the formal statement that sample paths of the demand process are continuous, and gives rise to the near optimality of the simple bid-price control we propose. Our result in this case also provides an upper bound on the optimality gap in terms of the quadratic variation of demand. The second case assumes that the underlying information structure The following lemma is used in proving Corollaries 1 and 2.
Lemma 3. For a J-dimensional process Z, the following holds: Proof.
Proof. Suppose the demand process {D (t) : 0 ≤ t ≤ T } has continuous sample paths. For each ε > 0 and partition Γ, setting p = 2 we have from Theorem 1 that where the second equality follows from the fact that π ε is a martingale and the last inequality is true since |π ε | ≤ F/a by Proposition 3. To complete the proof, note from Lemma 3 that Next, we show that EV 2 (D j , Γ) → 0 as Γ gets finer. To this end, note that Recall that D j (·) has continuous sample paths. In particular, D j (·) is uniformly continuous on [0, T ] so that max n |D j (t n ) − D j (t n−1 )| → 0 as the mesh of Γ tends to zero. Thus, V 2 (D j , Γ) → 0 as well. Similarly, note from (53) that and because ED 2 j (T ) < ∞, we conclude from the dominated convergence theorem that EV 2 (D j , Γ) → 0 too. Then, it follows from (52) that as the mesh of Γ tends to zero, V 2 (D, Γ) → 0 and EV 2 (D, Γ) → 0.
Specializing the bound (46) of Theorem 1 to this case yields the upper bound (51) in terms of the quadratic variation V 2 (D, Γ) of demand, which tends to zero as the partition Γ gets finer. To be more specific, given an absolute error tolerance, one picks an ε which determines the perturbation error κ 1 ε. The smaller the perturbation error is, the finer the corresponding partition Γ ε must be to respect the given error tolerance.
A similar trade-off can also be made in the context of Corollary 2, which concerns the case of continuous information. Roughly speaking, an information structure is continuous if the incremental information arriving over small periods is also small. The formal definition is provided next.
Definition 2. An information structure {F t , t ∈ R + } is said to be continuous if for every event E, the posterior probability assessment P(E | F t ) is continuous. Huang (1985) proves that an information structure is continuous if and only if all stopping times are predictable, which in turn is a equivalent to the statement that every continuous-time martingale has continuous sample paths. Let the bid-price process {π(t n ) : n = 1, . . . , N} be as in Proposition 3. To facilitate the proof of the following corollary, define its continuoustime extension 14 as follows: It follows from Huang (1985) that π(·) has continuous sample paths when the underlying information structure is continuous.
Combining the results of this section we conclude that in the usual case where periods are small compared to the planning horizon, there exists a simple predictable bid-price control which is near optimal if either the demand or the incremental information arriving over small periods is small. Moreover, the upper bounds on the optimality gap in terms of the volatility of demand quantify the relationship between the updating frequency of bid-prices and their performance.
6. Concluding remarks. We consider a network revenue management problem with minimal assumptions on the network topology and stochastic nature of demand, allowing an arbitrary statistical dependence structure across time and products.
First, we establish that the optimal shadow price of remaining capacity forms a martingale. Second, we consider a quadratic perturbation of the network revenue management problem whose dual formulation gives rise to an ε-optimal (adapted) bid-price control, which can be viewed as a perturbation of the bid-price controls in the classical sense. Finally, we consider a predictable version of this control, where the bid prices used in the current period are last updated in the previous period. We prove that this bid-price control is near optimal in an asymptotic regime where periods get small, while the planning horizon and the underlying probabilistic primitives remain the same provided either the sample paths of cumulative demand or the underlying information structure is continuous.
Our results suggest that additional attention should be paid when the fare of a product exceeds but is close the sum of the bid prices of all the resources that product uses, in which case one should book only a fraction of the demand. Moreover, we derive bounds on the optimality gap in terms of the (quadratic) variation of the demand.
Much work remains to be done to rigorously explore implications of the martingale property, including an empirical analysis of how to detect and interpret non-martingale behavior of shadow prices and the associated revenue implications.

APPENDIX A: PROOFS OF AUXILIARY LEMMAS
Lemma 4. There exists an optimal control for the network revenue management problem.
Proof. The proof is based on induction where the induction will be on the number of periods until the terminal time. First, we establish the induction basis by proving that there exists an optimal solution to (P) if N = 1. That is, consider the last decision time t N . For a given capacity process x(ω, t N −1 ) ≥ 0, ω ∈ Ω, we solve the following problem to determine the bookings Notice that, we can maximize this problem along each sample path ω. That is, for each ω ∈ Ω, we solve Let u * (ω, t N ) denote an optimal solution to this problem which exists since the objective function is continuous in u and the feasible region is compact. Then, the resulting control {u * (ω, t N ) : ω ∈ Ω} would maximize the expected revenue. Moreover, the objective function value of the linear program we solve for each ω ∈ Ω is continuous in x(ω, t N −1 ) since we have a linear program.
To facilitate our analysis, let V n+1 (ω, x) denote the optimal revenue that can be generated in decision times n + 1 through N if we have capacity x at the end of period n and ω is realized. As the induction hypothesis, assume that an optimal solution exists for decision times n + 1 through N and V n+1 (ω, x(ω, t n )) is a continuous function of x(ω, t n ), where x(ω, t n ) is the process of remaining capacities at decision time t n . At decision time t n we solve the following program for the given capacity process x(ω, t n−1 ): We can optimize again for each sample path ω ∈ Ω. Then, for ω ∈ Ω, we solve Note that the objective function is continuous in u while the feasible region is compact and hence, an optimal solution u * (ω, t n ) exists for ω ∈ Ω and n = 1, . . . , N. Thus, an optimal solution exists for decision times n through N . Moreover, V n (ω, x(ω, t n−1 )), the objective function value of the linear program solved at decision time t n along ω, is continuous in x(ω, t n−1 ).
Proof of Lemma 1. First, note that for each ω ∈ Ω, {u m (ω, t n ) : m ≥ 1, n = 1, . . . , N} are bounded. Hence, the existence of a convergent subsequence is immediate. However, this requires additional care to ensure that the subsequence chosen for each n is adapted to F tn . Of course, this can be ensured by choosing the subsequences sequentially. Namely, first consider {u m (ω, t 1 ) : m ≥ 1} and choose the subsequence m 1,r ∈ F t 1 at time t 1 . Then, consider {u m 1,r (ω, t 2 ) : r ≥ 1} and choose a further subsequence m 2,r ∈ F t 2 at time t 2 etc. Denoting the limit by u, this will ensure i) − iii) of the lemma.
Next, we argue that u is feasible for (P). Note that the demand restrictions of (P) are satisfied by u since for every ω ∈ Ω, along the convergent subsequence m n,r (ω), we have 0 ≤ u mn,r(ω) (ω, t n ) ≤ D(ω, t n ) − D(ω, t n−1 ), n = 1, . . . , N, and passing to the limit as r → ∞ we get Since for every ω ∈ Ω and for all m along the convergent subsequence m N,r (ω), we have N n=1 Au m N,r (ω) (ω, t n ) ≤ C, and in the limit we obtain N n=1 A u(ω, t n ) ≤ C. Thus, u satisfies the capacity constraints.
As a preliminary to establishing the optimality of u, we show the convergence of the objective function values of the discretized problems. Letting f m (ω, t n ) = f i,m for ω ∈ i and i ∈ I m n , note that f m (ω, t n ) → f (ω, t n ) as m → ∞. Therefore, we conclude that Thus, we conclude by the Dominated convergence theorem that To prove that u is optimal for the network revenue management problem (P), we start with an optimal solution to (P), which is shown to exist in Lemma 4. We then construct a feasible solution to each discretized problem using that solution. We show that the objective function values of these feasible solutions converge to the objective function value of (P), which proves the optimality of u for (P) due to (56).
To this end, let u * be an optimal solution to (P) and construct a feasible solutionū m to the m th discretized problem as follows: For decision time t n and information node i ∈ I m n , the bookings for product j is given by where d i,m j is the discretized demand for product j at information node i and K m is the level at which we truncate the demand. This control satisfies the demand restrictions in the case of d i,m j < K m because of the feasibility of u * for (P). The case of d i,m j = K m clearly satisfy the demand restrictions. Note that N j=1 Au * j (ω, t n ) ≤ C for all ω, and consider the capacity consumption vector N j=1 Aū m j (ω, t n ) under the controlū m , keeping in mind the definition (57) ofū m . Because the conditional expectation is a projection operator, the conditional expectation in (57) leads to fewer bookings underū m than that under u * . Therefore, we conclude that Aū m (ω, t n ) ≤ C for all ω, m.
That is,ū m satisfies the capacity constraints. Moreover,ū m is clearly adapted. Thus, we concludeū m is feasible for (P m ).
The expected revenue underū m (in (P m )) is greater than or equal to N n=1 i∈I m where F is the bound on the fare process and M < ∞ is such that sup ω∈Ω, t∈Γ u * j (ω, t) ≤ M, j = 1, . . . , J.
(Note that such a constant exists because the capacity vector C is finite.) The second and third terms in (59) give upper bounds on the loss in revenue due to approximation of the demand and the last term gives an upper bound for the loss in fare due to the approximation of fare from below. Next, we derive (59). Note that at an information node i ∈ I m n such that d i,m j ≥ K m , we have from (57) that Multiplying both sides with p i = P(ω ∈ i), the probability of being in information node i ∈ I m n , gives where the second line is obtained by rearranging terms. The first inequality is a result of replacing max{u * j (ω, t n ) − K m , 0} by max{D j (ω, t n ) − D j (ω, t n−1 )−K m , 0} and the fact that u * j (ω, t n ) ≤ D j (ω, t n )−D j (ω, t n−1 ) by feasibility of u * . Finally, to get (61) we use the fact that cumulative demand process has finite mean and the inequality (4) holds. Define the auxiliary notationū m,i as follows: Then the expected revenue under u m for the m th discretized problem is where the first inequality is obtained by replacing u m with u * and accounting for the fact that at each information node i ∈ I m n such that d i,m j < K m , the difference between u m,i j and E[u * j (ω, t n ) | i ] is bounded by 1/2 m , whereas at an information node i ∈ I m n such that d i,m j ≥ K m (which exists at most F 2 m times for each product at each period) we have P(ω ∈i)u m j (ω, t n ) ≥ P(ω ∈i)E[u * j (ω, t n )|i] − 1/3 m by (61). Finally, the second inequality is obtained by replacing the term Then, the last term in (62) is an upper bound in the loss in expected revenue due to approximating the fare of each product at each information node. Therefore, the expected revenue under the optimal solution to the m th discretized problem is greater than or equal to the expression given in (59). Since the expression in (59) converges to P * as m → ∞, it follows from (56) that u is optimal for (P).
Proof of Lemma 2. We suppress m for notational brevity. The proof has two major steps. First, fixing an optimal primal solution u and the corresponding state trajectory x for (P m ), we first argue that for each resource k y i k ≤ F a whenever x i k > 0, i.e. until the capacity of the resource is exhausted. In the second step, we focus on the nodes i with x i k = 0 for some k, and modify the shadow prices (for such k) so that they are all bounded by F/a and that the modified shadow prices continue to be optimal.
To execute the first step of the proof recall that for n = 1, . . . , N, if w ∈ i and i ∈ I n , y(w, t n ) = y i , x(w, t n ) = x i , and u(w, t n ) = u i .
Define the stopping time τ k as the first period at the end of which capacity of resource k is exhausted, i.e. τ k (w) = inf{n ≥ 1 : x k (t n ) = 0}, k = 1, . . . , K, where inf φ = ∞. The first step of the proof corresponds to proving (63) y k (t n∧τ k ) ≤ F a for all k, n.
Observe that whenever u j (t n ) > 0, we have f j (t n ) − y(t n )A j ≥ 0 (which follows from the complementary slackness conditions between (P m A ) and (D m A ), see Appendix B). In particular, if u j (t n ) > 0, then y k (t n ) ≤ F a ∀k such that A kj > 0.
In words, y k (t n , w) ≤ F/a if the capacity of resource k decreases in period n.
To facilitate our analysis, define σ l k (w) = inf{n ≥ l : x k (t n+1 ) < x k (t n )} with inf φ = ∞. That is, σ l k is the first period after (or at) l during which the capacity of the resource k decreases.
We prove (63) by induction. As the induction hypothesis consider n = 0, i.e. time t 0 : where the first equality follows because y k is a martingale, and the second equality follows because σ 0 k ≤ τ k . We proceed as follows: Note that y k (t n )1 {σ 0 k =n} ≤ F/a by (64). Also note that if σ 0 k = ∞, then x k (T ) = x k (t 0 ) = C k > 0. Then by (6), y k (T ) = 0. Thus, we conclude that As the induction hypothesis, assume that for k = 1, . . . , K, y k (t l∧τ k ) ≤ F a for l = 0, 1, . . . , n − 1.
For the induction step, we prove that To this end, note that As argued above Also note that if σ n k = ∞, then x k (T ) = x k (t n−1 ); and consider the following two cases: Case 1. x k (t n−1 ) > 0, which implies that τ k = ∞ and x k (T ) > 0. Thus y k (T ) = 0 by (6).
In the second step of the proof, we focus on nodes i with x i k = 0 for some k, i.e. the capacity of a resource is exhausted (upon entering the node). More specifically, for each k, let R k denote the set of nodes such that r ∈ R k , x r k > 0 and x r+ k = 0. That is, R k is the set of nodes in which resource k capacity is depleted to zero. Then for each of the subtrees of I with roots r ∈ R k , denoted by I s (r), we have that x i k = 0 for i ∈ I s (r)\{r}. In particular, letting G k = ∪ r∈R k I s (r)\{r}, we have x i k = 0 for i ∈ G k . To facilitate the analysis to follow, Let G = ∪ k G k and E i , J(k), and J i be the set of resources whose remaining capacity is zero in node i, the set of products using resource k, and the set of products which cannot be sold in node i due to resource unavailability, respectively. That is, E i = {k = 1, . . . , K : x i k = 0}, i ∈ I, J(k) = {j = 1, . . . , J : A kj > 0}, k = 1, . . . , K, Also define J i = J i ∩ {j = 1, . . . , J : d i j > 0} as the set of products in J i for which demand is positive in node i. Given an optimal dual solution y, we modify y i k for i ∈ G k , k = 1, . . . , K so that the modified solutionŷ is optimal for the dual problem as well and thatŷ i k ≤ F/a for all i, k. To this end, note from complementary slackness between (P m A ) and (D m A ) (see Appendix B) that (67) f i j − (y i ) A j ≤ 0 ∀i ∈ G, j ∈ J i . To ensure that the modified solutionŷ is optimal we require that it be feasible and satisfy (67). To be more specific, we require thatŷ is a nonnegative martingale such that y i k = y i k for k = 1, . . . , K, i ∈ I\G k , and that for i ∈ G = ∪ k G k , all products j ∈ J i are priced out: In search for such a modificationŷ, we seek to minimize the maximum of the modified shadow prices. Namely, we consider the following linear program: Minimize ξ subject to ξ −ŷ i k ≥ 0, i ∈ G k , k = 1, . . . , K, p l p rŷ l k = y r k , k = 1, . . . , K, r ∈ R k , y i k ≥ 0, k = 1, . . . , K, i ∈ I N ∩ G k , wheref i j = f i j − l / ∈E i y i l A lj and S(i) denotes all successors of node i.
where the second inequality follows precisely from (63). Then By the strong duality between (P M ) and (D M ) we conclude that Obj(P M ) ≤ F a andŷ i k ≤ F a for any optimalŷ of (P M ).

APPENDIX B: DERIVATION OF THE DUAL LINEAR PROGRAM FOR THE DISCRETE APPROXIMATION TO THE NETWORK REVENUE MANAGEMENT PROBLEM
For notational brevity, we will suppress the superscript m in this appendix. Recall the primal problem (P m ): Choose {u i } i∈I so as to Maximize i∈I p i (f i ) u i subject to x i = C, i ∈ I 1 , x i = x i− − A u i− , i ∈ I n , n = 2, . . . , N, i∈ I n , n = 1, 2, . . . , N, Equivalently, we express it as follows: a kj u i− j = 0, i ∈ I n , n = 2, . . . , N, ∀k,