280 likes | 399 Views
Supply-Demand Ratio and On-Demand Spatial Service Brokers: How to Keep the Eco-system Alive?. A collaboration between Ford University Research Program and University of Minnesota. U of M: Shashi Shekhar. Ford: Shounak Athavale Eric Marsman. Basic Concepts.
E N D
Supply-Demand Ratio and On-Demand Spatial Service Brokers:How to Keep the Eco-system Alive? A collaboration between Ford University Research Program and University of Minnesota U of M: Shashi Shekhar Ford: Shounak Athavale Eric Marsman
Basic Concepts • Service Provider: A provider registered in the system is defined using its location and service time • Consumer Request: A request for from a mobile consumer, including the consumer’s current location, max. acceptable travel time and max. acceptable waiting time before service. • Service Provider Proposition: A quadruple (r, p, d, w) where: • r ϵ set of available consumer requests • p ϵ set of registered service providers • d: travel time between r and p • w: waiting time before r is served by p Example: (C1, P1, 2 min, 5 min) • Service Provider Utilization ui: Ratio between number of propositions accepted at provider Pi and total service rate of Pi (1/service time)
Problem Definition: On-Demand Spatial Service Propositions • Input: • A set P of service providers • A set R of consumer requests arriving dynamically • A number of required propositions K • Output: Up toK service provider(s) propositions for each request • Objectives: • Broker-centric: Maximize number of matched requests and consumer’s propositions • Provider-centric: Maximizing fairness to providers (utilization entropy) • Consumer-centric: Minimize consumer’s waiting and travel times • Constraints: • Each returned proposition satisfies the consumer’s max. travel time and waiting time constraints • Each returned proposition and does not violate the provider’s service time constraint.
Challenges • Need to satisfy many conflicting requirements of the broker, consumers and service providers: • Broker needs to maximize the number of matched requests while balancing provider utilization • Conflicting requirements of consumers (minimizing travel and waiting times) and service providers (maximizing the number of consumers assignment) • Ratio of demand to supply exhibits spatio-temporal heterogeneity • Consumers requests are unknown in advance • Maximizing matching at each time t does not guarantee an overall maximal matching/provider balance
TKDE Contributions • We propose an Integer Programming formulation for maximizing matching size while balancing consumers utilization • We propose a supply/supply-demand ratio aware greedy approach for scaling up the matching for a large number of consumers. • We experimentally evaluate our results using synthetic data with real-world characteristics.
Integer Programming Formulation: Maximizing matching size (1/5) 1 • Decision Variables:
Integer Programming Formulation (2/5) Constraints: (1) (2) (3) (4) (5) (6) Assuming a single server per provider: (7) (8)
Objective Function (3/5) Objective 1: Optimize for matching size and consumers propositions Objective 2:Optimize provider fairness (number of engaged providers, balanced utilization) Option 1: Maximize Shannon's diversity index for provider utilization (Entropy) Where rjis number of requests accepted at Pj uj is utilization of provider j Option 2: Maximize sum of provider utilization with concave returns:
Objective Function (4/5) C) Using a Weighted sum of multiple objective functions: F1 = F1n: F1/ [n x SQRT (K)] (Normalized between 0 and 1) F2= F2n: F2/ m (Normalized between 0 and 1) Objective: Maximize α F1n+ βF2n α and β are scalar values whose sum = 1
Integer Programming Formulation (5/5) For n consumers, m providers, T time units: • Number of (integer) variables: O (n m T) • Number of constraints: O (n m T) • 1: n x m T • 2: n • 3: n x m • 4: n x m • 5: n x m • 6: n x m • 7: m x T • 8: n x m For n =1, m= 120, T=26: O(3 x 103) variables and constraints • For 1st iteration (clock = 0): did not terminate after 30 minutes • Experimental results shown for m=10 providers
Greedy Approach: Supply/Supply-Demand-Ratio Aware Heuristic • Intuition: IWCTS Least Accepted First (LAF) and Least Appearance as Candidate First (LCF) heuristics only considered total number of previous matches/occurrences of a provider, but not its supply Limitations: • Does not balance utilization (i.e. providers with low demand are favored even if they have near full utilization) • May fail to maximize future balance as they do not consider spatiotemporal heterogeneity of demand (e.g. changes in day/night population) and thus providers with decreasing demand may eventually be under utilized • Greedy Approach: • Identify candidate providers for each consumer • Sort consumers table by least # candidates first (tie breaker: shortest waiting time first) • For each consumer, apply provider-balancing heuristic: • Prioritize least utilized providers to balance providers utilization • Prioritize providers with highest recent supply-demand ratio over a moving time horizon • Use K greedy iterations to assign up to K propositions per consumer
Experimental Setup (1/2) • Goals: • Evaluate performance of Integer Program for different weights • Compare performance of related work to proposed work: • Related Work: • Nearest Neighbor (NN) • Least Location Entropy (LLEP) • IWCTS: Least Accepted First () • IWCTS: Least appearance as Candidate First (LCF) • Proposed Work: • Integer Program (IP) • Least Utilized First (LUF) • Highest Supply-Demand Ratio First (HSDR) • Least Utilized First with Highest Supply-Demand Ratio First as Tie Breaker (LUF + HSDR)
Experimental Setup (2/2) • Simulation Metrics: • Broker Centric (Matching size): • Execution time • % matched consumers (and #matched consumers) • Total # propositions • Sum of consumers propositions with concave returns • Provider Centric: • % matched providers (and # matched providers) • Standard deviation (STDEV) of provider utilization • Utilization entropy (combined) • Average of the lowest 10% provider utilizations • Simulation Parameters: • M=10, K = 3 propositions, Timeout = 2 min, Provider service rate ϵ [5,15] req/hour • Max. accep. travel time ϵ [10 min, 25 min] , Max. accep. waiting time ϵ [15min, 30min]
Execution Times Comparison (sec) Trends: For supply<<demand, NN best but all are comparable All heuristics have comparable execution times. Integer program does not scale well for for larger number of consumers (n=10,000, m=10)
Integer Optimization Results: # Matched Consumers Trends: At w1=0.25, w2=0.75 we get best results for balanced supply-demand and for supply>>demand we get a comparable performance to the best (at w1=1, w2=0)
Integer Optimization Results: # Propositions Trends: (w1=0.25, w2=0.75) achieves the maximum number of propositions
Integer Optimization Results: # matched providers Trends: All weight combinations achieves the same number of matched providers
Integer Optimization Results: STDEV provider utilization & utilization Entropy Trends: STDEV and entropy of provider utilization show comparable performance across all weight combinations. Reason maybe that fairness objective does not optimize utilization balance
Integer Optimization Results: Objective Value Trends: (w1=0.25, w2=0.27) consistently performs better in terms of fairness objective and in matching size for balanced case. Also gives comparable matching size to best in the case of supply>>demand
Matching Size Result 1: Effect of SDR on % Matched Consumers Trends: For supply<<demand, NN best but all are comparable For supply==demand, new proposed LUF performs best For supply>>demand: all heuristics are comparable. IP performs worst. Reason: maybe matching at arbitrary times rather than minimizing wait times.
Matching Size Result 2: Effect of SDR on total # propositions • Trends: (consistent with matching size) • For supply<<demand, NN performs best • For supply==demand, proposed LUF performs best • For supply>>demand: all heuristics are comparable.
Fairness Result 1: Effect of SDR on % Matched Providers Trends: For most values of SDR, all heuristics engage all providers ( small number of providers) For supply>>>demand, provider centric heuristics perform better (IWCTS and proposed work) Interesting: although IP achieves same matching size at SDR=50, it engages less providers than LUF proposed heuristic
Fairness Result 2: Effect of SDR on STDEV of provider utilization • Trends: • Proposed heuristics perform best for supply>>demand. • IP performs best at balanced supply and demand while proposed heuristics give comparable results. • LCF performed best when demand>>supply
Fairness Result 3: Effect of SDR on Utilization Entropy • Trends: • For supply<<demand and supply=demand, all heuristics are comparable. • For supply>>demand, LUF and Tiebreaker perform best.
Fairness Result 4: Effect of SDR on Avg. lowest 10% of provider utilization • Trends: • For supply<<demand, all heuristics are comparable • For supply=demand and supply>>demand, LUF and tiebreaker, performbetterthan others.
Next Steps • Improve Integer Programming Model: • Incorporate minimization of waiting times in objective function • Investigate other standard solver for utilization entropy objective • Consider conflicting candidates in matching in proposed heuristics