Approximate Optimality with Bounded Regret in Dynamic Matching Models Ana Buˇ si´ c Inria Paris CS Department of ´ Ecole normale sup´ erieure Joint work with Sean Meyn University of Florida and Ivo Adan, Varun Gupta, Jean Mairesse, and Gideon Weiss Real-Time Decision Making Simons Institute, Berkeley, Jun. 27 - Jul. 1, 2016 1 / 19
Outline Background 1 Bipartite matching model 2 Optimization 3 Average Cost Criterion Workload Workload Relaxation Asymptotic optimality Final remarks 4 2 / 19
Background Bipartite Matching 1 2 3 ( D , S , E ) bipartite graph D D ( s ) = { d ∈ D : ( d , s ) ∈ E } S ( d ) = { s ∈ S : ( d , s ) ∈ E } S 3’ 2’ 1’ x i number of elements of type i ∈ D ∪ S Perfect matching: m ∈ N E such that: � � x d = m ds , ∀ d ∈ D , x s = m ds , ∀ s ∈ S s ∈S ( d ) d ∈D ( s ) Hall’s marriage theorem (1935) ∃ perfect matching if and only if: � d ∈ U x c ≤ � s ∈S ( U ) x s , ∀ U ⊂ D � s ∈ V x s ≤ � d ∈D ( V ) x d , ∀ V ⊂ S 3 / 19
Background Matching in Health-care TA L K I N G A B O U T T R A N S P L A N TAT I O N Kidney paired donation Who can join this program? For recipients: If you are eligible for a kidney transplant and are receiving care at a transplant center in the United States, you can join ... You must have a living donor who is willing and medically able to donate his or her kidney ... For donors: You must also be willing to take part ... U N I T E D N E T W O R K F O R O R G A N S H A R I N G 4 / 19
Background Matching in Health-care TA L K I N G A B O U T T R A N S P L A N TAT I O N Kidney paired donation Who can join this program? For recipients: If you are eligible for a kidney transplant and are receiving care at a transplant center in the United States, you can join ... You must have a living donor who is willing and medically able to donate his or her kidney ... For donors: You must also be willing to take part ... U N I T E D N E T W O R K F O R O R G A N S H A R I N G Need for Dynamic Matching Models 4 / 19
Background Dynamic Matching Model: FCFS Another Example Boston area public housing (some 25 years ago): Model Two independent infinite sequences of items. Demand / supply i.i.d. FCFS matching policy admits product-form invariant distribution Caldentey, Kaplan, Weiss 2009 Adan, Weiss 2012 Adan, B., Mairesse, Weiss 2015 5 / 19
Bipartite matching model Dynamic Bipartite Matching Model Multiclass queueing model – Supply/Demand play symmetric roles Discrete time queueing model with two types of arrival: “supply” and “demand”. Discrete time: at each time step there is one customer and one server that arrive into the system, independently of the past. Instantaneous matchings according to a bipartite matching graph. Unmatched supply/demand stored in a buffer. 6 / 19
Bipartite matching model Dynamic Bipartite Matching Model Multiclass queueing model – Supply/Demand play symmetric roles Discrete time queueing model with two types of arrival: “supply” and “demand”. Discrete time: at each time step there is one customer and one server that arrive into the system, independently of the past. Instantaneous matchings according to a bipartite matching graph. Unmatched supply/demand stored in a buffer. 6 / 19
Bipartite matching model Dynamic Bipartite Matching Model Multiclass queueing model – Supply/Demand play symmetric roles Discrete time queueing model with two types of arrival: “supply” and “demand”. Discrete time: at each time step there is one customer and one server that arrive into the system, independently of the past. Instantaneous matchings according to a bipartite matching graph. Unmatched supply/demand stored in a buffer. 6 / 19
Bipartite matching model Dynamic Bipartite Matching Model Multiclass queueing model – Supply/Demand play symmetric roles Discrete time queueing model with two types of arrival: “supply” and “demand”. Discrete time: at each time step there is one customer and one server that arrive into the system, independently of the past. Instantaneous matchings according to a bipartite matching graph. Unmatched supply/demand stored in a buffer. Given by: a matching graph, a joint probability measure µ for arrivals of demand/supply and a matching policy. 6 / 19
Bipartite matching model Dynamic Matching Model: Stability For the dynamic model with i.i.d. arrivals, when is the Markovian model stable? (positive recurrent) Necessary condition: generalization of Hall’s marriage theorem Under this condition, certain policies are stabilizing, such as MaxWeight Under this condition, other policies are not stabilizing B., Gupta, Mairesse 2013. 7 / 19
Bipartite matching model Dynamic Matching Model: Approximate Optimality Subject of this talk: How to define ‘heavy traffic’? This requires a formulation of ‘network load’ What is the structure of an optimal policy for the model in heavy traffic? How do we use this structure for policy design? B., Meyn 2016 8 / 19
Bipartite matching model Necessary stability conditions Assumption: matching graph ( D , S , E ) is connected. Necessary conditions: If the model is stable then the marginals of µ satisfy � µ D ( U ) < µ S ( S ( U )) , ∀ U � D NCond : µ S ( V ) < µ D ( D ( V )) , ∀ V � S 9 / 19
Bipartite matching model Necessary stability conditions Assumption: matching graph ( D , S , E ) is connected. Necessary conditions: If the model is stable then the marginals of µ satisfy � µ D ( U ) < µ S ( S ( U )) , ∀ U � D NCond : µ S ( V ) < µ D ( D ( V )) , ∀ V � S Sufficient conditions: If NCond holds, then there exists a policy that is stabilizing 9 / 19
Bipartite matching model Necessary stability conditions Assumption: matching graph ( D , S , E ) is connected. Necessary conditions: If the model is stable then the marginals of µ satisfy � µ D ( U ) < µ S ( S ( U )) , ∀ U � D NCond : µ S ( V ) < µ D ( D ( V )) , ∀ V � S Sufficient conditions: If NCond holds, then there exists a policy that is stabilizing Prop. Given [( D , S , E ) , µ ], there exists an algorithm of time complexity O (( |D| + |S| ) 3 ) to decide if NCond is satisfied. 9 / 19
Optimization Average Cost Criterion Optimization Cost function c on buffer levels. N − 1 � � � 1 Average-cost: η = lim sup E c ( Q ( t )) N N →∞ t =0 10 / 19
Optimization Average Cost Criterion Optimization Cost function c on buffer levels. N − 1 � � � 1 Average-cost: η = lim sup E c ( Q ( t )) N N →∞ t =0 Queue dynamics: Q ( t + 1) = Q ( t ) − U ( t ) + A ( t ) , t ≥ 0 10 / 19
Optimization Average Cost Criterion Optimization Cost function c on buffer levels. N − 1 � � � 1 Average-cost: η = lim sup E c ( Q ( t )) N N →∞ t =0 Queue dynamics: Q ( t + 1) = Q ( t ) − U ( t ) + A ( t ) , t ≥ 0 Input process U represents the sequence of matching activities. Input space: �� � n e u e : n e ∈ Z + with u e = 1 i + 1 j for e = ( i , j ) ∈ E . U ⋄ = e ∈ E 10 / 19
Optimization Average Cost Criterion Optimization Cost function c on buffer levels. N − 1 � � � 1 Average-cost: η = lim sup E c ( Q ( t )) N N →∞ t =0 Queue dynamics: Q ( t + 1) = Q ( t ) − U ( t ) + A ( t ) , t ≥ 0 Input process U represents the sequence of matching activities. Input space: �� � n e u e : n e ∈ Z + with u e = 1 i + 1 j for e = ( i , j ) ∈ E . U ⋄ = e ∈ E X ( t ) = Q ( t ) + A ( t ) the state process of the MDP model, X ( t + 1) = X ( t ) − U ( t ) + A ( t + 1) + : ξ 0 · x = 0 } with ξ 0 = (1 , . . . , 1 , − 1 , . . . , − 1). The state space X ⋄ = { x ∈ Z ℓ 10 / 19
Optimization Workload Workload For any D ⊂ D , corresponding workload vector ξ D defined so that � � ξ D · x = x D i − x S j i ∈ D j ∈S ( D ) 11 / 19
Optimization Workload Workload For any D ⊂ D , corresponding workload vector ξ D defined so that � � ξ D · x = x D i − x S j i ∈ D j ∈S ( D ) Necessary and sufficient condition for a stabilizing policy: NCond : δ D := − ξ D · α > 0 for each D α = E[ A ( t )] arrival rate vector. 11 / 19
Optimization Workload Workload For any D ⊂ D , corresponding workload vector ξ D defined so that � � ξ D · x = x D i − x S j i ∈ D j ∈S ( D ) Necessary and sufficient condition for a stabilizing policy: NCond : δ D := − ξ D · α > 0 for each D α = E[ A ( t )] arrival rate vector. Why is this workload? Consistent with routing/scheduling models: d Fluid model, dt x ( t ) = − u ( t ) + α ξ D · x The minimal time to reach the origin from x (0) = x : T ∗ ( x ) = max D δ D 11 / 19
Optimization Workload Workload For any D ⊂ D , corresponding workload vector ξ D defined so that � � ξ D · x = x D i − x S j i ∈ D j ∈S ( D ) Necessary and sufficient condition for a stabilizing policy: NCond : δ D := − ξ D · α > 0 for each D α = E[ A ( t )] arrival rate vector. Why is this workload? Consistent with routing/scheduling models: d Fluid model, dt x ( t ) = − u ( t ) + α ξ D · x The minimal time to reach the origin from x (0) = x : T ∗ ( x ) = max D δ D Heavy-traffic: δ D ∼ 0 for one or more D 11 / 19
Optimization Workload Workload Dynamics Fix one workload vector ξ D ; denote ( ξ, δ ) for ( ξ D , δ D ). Workload W ( t ) = ξ · X ( t ) 12 / 19
Recommend
More recommend