Download presentation
Presentation is loading. Please wait.
Published byAbraham Day Modified over 9 years ago
1
Ephemeral Network Broker to Facilitate Future Mobility Business Models/Transactions A collaboration between Ford University Research Program and University of Minnesota University PI: Shashi Shekhar Ford PI: Shounak Athavale
2
Outline High-level Problem Description Dynamic Pricing Literature (Industrial Engineering) –Dynamic Congestion Pricing –Dynamic Pricing of Inventories Related Matching Problem (with bids/budgets) How to incorporate Dynamic Pricing in the Matching Problem? Alternatives for Problem Formulation
3
Basic Concepts Ephemeral Networks: Groups of people, good and services that encounter each other in the physical world –are in close geographic proximity –during routine activities such as commute, shopping, entertainment Goal: Investigate ephemeral network broker that can identify novel opportunities for Mobile Commerce in Ephemeral Networks (MCEN).
4
High-level Problem Description Input: –Historical trajectories and real-time locations of consumers and service providers –Consumer Calendars, wish lists, gift-registries, shopping lists –Historical mobile commerce transactions Output: –Near-future or real-time mobile commerce opportunities in the ephemeral network by matching producers and consumers Constraints: –Physical World: Human life (set of activities) → Activities generate trips which generate commerce opportunities (supply and demand) –Activities are not random/independent: Routine/Periodic activity, routine patterns of life, routine demands/commerce needs –Not predicting future location (but destination may be given). Might infer user preferences to reduce the amount of input needed at real-time
5
Dynamic Congestion Pricing (1/3) Increasing pricing certain periods of time when peak demand exceeds supply. Economic concept: “charge a price to allocate a scarce resource to its most valuable use evidenced by user’s willingness to pay for the resource” Regulates demand to manage congestion without increasing supply –Users become aware of imposed costs –Encourages redistribution of demand in space or time Types: –A cordon area / area-wide pricing: Pay to enter a restricted area within a city center –Urban corridors and toll rings: e.g. charge on freeway by the distance traveled. –Corridor or single facility pricing: e.g. bridges, tunnels, using high-occupancy vehicle lanes if toll is paid Concerns: –Pricing the poor off the road, and to public transit –Difficult to set accurate prices due to imprecise speed-flow curves
6
Dynamic Congestion Pricing (2/3) Theory of marginal cost pricing: A user equilibrium flow pattern can be shifted toward a system optimal flow pattern by imposing the congestion tolls exactly equal to the difference between marginal societal cost and marginal private cost in the system optimal situation. Literature Taxonomies: (1) Transportation network: –First-best tolling: tolls every arc –Second-best tolling: tolls a subset of arcs (bottlenecks) (2) Parameters: –Deterministic (mostly) –Uncertain: e.g. confidence intervals for demand (3) Tolls: –Time-varying based on pre-determined price levels –Triangular shaped toll: only need to specify max toll
7
Dynamic Congestion Pricing (3/3) Example formulations: –(Bi-level) Optimization Problem to minimize congestion when flow correspond to dynamic user equilibrium by dynamically adjusting tolls Lower level problem: maximizes travel cost to find worst case demand Upper level problem: minimizes the cost by determining toll price given that demand is in the worst case. Equilibrium constraints Decision variable: toll price –Determine a schedule of tolls (over all arcs) that leads to day-to-day dynamic user equilibrium
8
Dynamic Pricing of Inventories (1/3) Dynamic pricing policies in retail based on how much current customers value the product and what future demand will be. –To avoid lost sales and excess inventory Types of pricing policies: –Posted price (static vs. dynamic) –Price discovery (e.g. bidding process such as auctions) Literature taxonomy of dynamic pricing across markets: –Replenishment vs. No Replenishment (short/end of life-cycle) of Inventory during product life-cycle (R/NR) –Dependent vs. Independent Demand Over Time (D/I) Durable goods vs. non durable frequent goods(e.g. milk and bread) –Myopic vs. Strategic Customers (M/S): considering future prices
9
Dynamic Pricing of Inventories (2/3) Literature focused on: –NR-I (e.g. short life-cycle product such as fashion apparel and holiday products) –R-I-M (e.g. grocery, produce, pharmaceutical products) (A) No Inventory Replenishment and Independent over Time (NR-I) –Goal: How to price products to maximize expected/discounted profits over the (short) selling season? –Demand is modeled as a Poisson process with intensity that varies over time, with price or inventory level (occupied shelf space). –Pricing policies: Periodic: groups of customers have same price –Given that price can at most be modified k times and length of each price period Continuous (as function of time): customers arrive sequentially Select from a discrete set of allowable prices: –e.g. Decide optimal timing of price change given the number of price changes, initial price, and set of allowable prices
10
Dynamic Pricing of Inventories (3/3) (B) Inventory Replenishment and Independent Demand, Myopic Customers: (R-I-M) –Goal: How to coordinate pricing with inventory procurement and production decisions? –Models of demand: Uncertain demand, convex production and ordering costs, unlimited production capacity Uncertain demand, Fixed ordering cost, limited production capacity Deterministic demand Need to study multiple stores with different demand patterns simultaneously (2002) i.e. Generating a price schedule per item per store
11
Related CS Matching Problems (with financial modeling) Single-bid Budgeted Allocation (e.g. online ads) Given: –N bidders each with a specified budget –Q is set of query words –Bidders specify bids for query words –A sequence of query words arrive online Output: –Each arriving query must be assigned to a bidder Objective: maximize total revenue Constraints: respecting daily budgets of bidders A generalization of online bipartite matching (when all bids and budgets = 1 Price discovery as opposed to posted dynamic pricing
12
How to incorporate Dynamic Pricing in Matching Problem? Problem: How to dynamically change prices of the different producers such that matching is maximized? Assumptions: –Demand is random (online) but is influenced by trips of daily activities (not a known function of price or time or supply). –Users have pre-specified budget so demand is shifted in space as price goes up Novelty: –Handling simultaneous changes in prices for multiple service providers to maximize matching. Approach: Using spatial heuristics to decide regions where prices should increase? Challenges: –Matching vs. Recommendation Users may not agree to matched provider, so matching may not be maximized (Prefer a list of suggested providers) Matching is preferred due to lack of real data –Feasibility/practicability of changing prices for producers and of budgets.
13
Problem Fixed Providers, Moving Consumers, Destination Specified Fixed Providers, Moving Consumers, Destination Unspecified Fixed Providers, Moving Consumers, Multiple Destinations ImportanceMobile commerce for many service providers (e.g. food, retail stores, malls, etc) Mobile commerce for many service providers (e.g. food, retail stores, malls, etc) but limited to complex itinerary requests Related WorkOnline maximum bipartite matching Multiple destination route planning Online maximum bipartite matching NoveltyMatching moving objects on a road network with thousands of service providers Matching objects on a road network with thousands of service providers. (When destination is not known matching decision is based on fixed current location rather than consumer trajectory (less rich spatial/motion semantics, equivalent to fixed customers) Multiple-destination Route planning literature does not assume: fixed capacities/supply per destination (i.e. is not coupled with matching) Unspecified/Imprecise destinations (only service types are specified) ChallengesScalability, real-time response Deciding most suitable providers for a given request along the route Scalability, real-time response Computational complexity of route planning through multiple unspecific destinations while maximizing matching Scalability, real-time response ContributionsCan we use spatial heuristics to maximize matching rather than 1D ranking functions of providers? E.g. assigning providers closer to src vs. dest Can we use spatial heuristics to maximize matching rather than 1D ranking functions of providers? A scalable algorithm with spatial heuristics for matching requests with multiple destinations to service providers while respecting provider and consumer constraints Alternative Problem Formulations Problem could be a combination of all three (max flexibility in request specification) Challenge: Matching vs. Recommendation
14
4) Fixed Producers - Moving Consumers - Flexible Request Specification Importance: similar to previous ones but even more flexible with customer needs Contributions: The more request details are provided, the more candidate options, and the more computational complexity. – Need to provide heuristics that can work at various level of details – More detailed requests allow for more sophisticated heuristics.
15
5) Moving Producers and Moving Consumers This is a more realistic “Matching” problem since consumers might not be interested in a ranking of moving providers (e.g. Uber-like scenario) Importance: food trucks, sales representatives (more limited), but also consumers as suppliers Related work: –Multiple Traveling salesman problem with moving targets (2014) –Proposed heuristics like least distance and least time Novelty: Not very clear, matching on a road network?
16
Validation Methodology Evaluation Metrics –Consumer centric: Average query response time Average waiting time per request Average distance detour per request –Broker centric: % of accepted/matched requests –Producer centric: ? Synthetic Data Generation
17
Problem Formulations 1,2,3,4: Fixed Providers - Moving Consumers Input: –A set of service providers. Each provider is defined using: Location coordinates service types (e.g. grocery shopping, clothing) A time series of supply over the day (e.g. 20 customers/hour) –A consumer request: (current location, destination(optional), service type(s), max. service waiting time, max. distance detour) Output: –Service provider(s) recommendation for the incoming request + estimated service/pick-up time(s) Objective: –Computational efficiency/scalability –Minimizing consumer waiting time and distance detour Constraints: –Accepted requests by a service provider should not exceed its supply at service time –Recommended service provider should meet max. service waiting time and max. distance detours for each request
18
Example 1: Fixed Providers - Moving Consumers C P1P1 P2P2 Service ProvidersConsumers P 1, P 2 : rush hours: 4 req/hour otherwise: 8 req/hour C: Shopping list, max waiting time (at provider) = 3 min, max detour = 20% C may be matched to P 1 or P 2 But P 1 not ready! C max. waiting time will be exceeded Match to P 2 and Detour
19
Example 1: Fixed Providers - Moving Consumers c P2P2 Service ProvidersConsumers P 1, P 2 : 10 req/hourC 1 : Hair salon or have lunch, max waiting time before serviced = 10 min, max waiting time at provider = 0 min, max detour = 10% C may be matched to P1 or P2 P 2 might not satisfy the customer’s max waiting time before service (e.g. C is very hungry) Therefore, C is matched to P 1 P1P1
20
Problem Formulation 4: Moving Service Providers - Moving Consumers Input: –A set of moving service providers (e.g. food trucks). Each provider is defined using: Current location coordinates service types (e.g. food options) Total supply –A consumer request: (current location, destination, service type, max. service waiting time, max. distance detour??) Output: –A recommended service provider + service time and location (+ estimated cost?) Objective: –Recommended service provider is the one that minimizes total service provider trip cost including previously accepted consumers –Computational efficiency/scalability –Minimizing consumer waiting time and distance detour?? Constraints: –Accepted requests by a service provider should not exceed its supply –Recommended service provider must meet max. service waiting time and distance detour for each request
21
Example 4: Moving Providers - Moving Consumers C1C1 L1L1 C2C2 Service ProvidersConsumers L 1 : 100 mealsC 1 : Lunch, max waiting time =1 min, max detour = 10% C 2 : Lunch, max waiting time =1 min, max detour = 10% L2L2 What if L 2 will travel a longer distance towards C 2 (than L 1 ) but can meet C 2 earlier on the road?
22
Related Work (9/10): Online Maximum Bipartite Graph Matching Vertices on one side of the graph are given up front while vertices on the other side arrive sequentially. When a vertex arrives, its edges are revealed and it must be immediately matched or dropped. Irrevocable decisions Many algorithms: –Oblivious: One shot trial. Match u to a random neighboring vertex v. If v is already matched, drop u. –Greedy: Match u to a random unmatched neighboring vertex v. If no such v exists, drop u. –Ranking: Choose a random ranking for each vertex v. For each arriving u, match u to the neighboring vertex v with the min rank. 0.837 competitive ratio –Also: online max. bipartite matching with edge/vertex weights
23
Thank you.
25
Comparing Different Formulations Problem Fixed Servers and Moving Consumers Moving Servers and Moving Consumers ImportanceMobile commerce for many service providers (e.g. food, retail stores, malls, etc) Food trucks schedules, sales representatives schedules Related WorkOnline maximum bipartite matching Operations Research/Optimization Trip Planning, but site locations are also moving (i.e. moving consumers) Operations Research/Optimization ChallengesScalability, real-time response, demand/supply generation, Scalability, real-time response, demand/supply generation ValidationConsumer centric: Average query response time Average waiting time per request Average distance detour per request Producer centric: Broker centric: % of accepted requests Consumer centric: Average query response time Average waiting time per request Average distance detour per request Producer centric: Broker centric: % of accepted requests
26
Related Work (1/10) 2.Sharing economy (moving producers and consumers) –Hotel rooms (Airbnb), Meal sharing, favor networks for sharing chores 3.Matching algorithms –Stable Marriage/Matching Problem –Maximum Bi-partite matching
27
Related Work (4/10): Stable Matching Problem Applications: –Matching medical school students with residency, College admissions. Input: –Each program specifies a list of applicants in order from most to least preferable. – Each applicant specifies a list of programs in order from most to least preferable Goal: A stable matching where there is no applicant A and hospital H such that both of the following are true: –A is unmatched or would prefer to go to H over the hospital he is currently matched with –H has a free slot or would prefer A over one of the candidates currently filling one of its slots.
28
Related Work (5/10): Stable Matching Problem Algorithm: –1 st iteration: Each program gives offers to the applicants most preferred Each applicant replies “maybe” to the offering program he most prefers and “no” to all other programs –In each subsequent round: Each program with empty slot give offers to the most-preferred applicant he has not yet offered, regardless if already accepted an offer. Each applicant replies “maybe” if he is currently unmatched or prefers this program over a program he accepted in which case the slot becomes empty again. –Repeat until all slots are filled or all applicants are matched.
29
Related Work (6/10): Maximum Bipartite Graph Matching Given a directed graph G = (V,E), where V = = L ⋃ R, and E go from L to R, a matching is a subset of edges M ⊆ E such that for all vertices v in V, at most one edge of M is incident on v. v is “matched” is some edge in M is incident on v. Output: Find set of edges which gives maximum matching Matching cardinality = 2 Matching cardinality = 3 (max)
30
Related Work (7/10): Maximum Bipartite Graph Matching Solution: Convert G to a flow network: –Create source s and sink t vertices with edges to L and R –Assign unit capacity to each edge The cardinality of the maximum matching M is equal to the value of the maximum flow in the corresponding flow network (using Ford-Fulkerson method ) Each edge has a unit capacity. Shaded edges have a flow of 1.
31
Related Work (8/10): Maximum Bipartite Graph Matching Ford-Fulkerson method: Initialize flow to 0 in G Build a residual network for G, namely G f While there exists an augmenting path p in the residual network G f –Augment flow f along p –Update residual network G f Return f
32
(a) Flow network G and flow f(b) Residual network with augmenting path p shaded (c) Flow in G augmented along path p with its residual capacity of 4 (d) Residual network induced by flow in (c)
33
Challenges Scaling to Big Spatio-temporal Data –Real-time response for megacities Modeling of socio-economic semantics (e.g. supply, demand) Minimizing real-time input from users on the road
34
Fixed Producer-Moving Consumer Problem: Baseline Solution(s) For a new request r (current location, destination, service type, max. service waiting time, max. distance detour) –Path ← Find shortest path between current location and destination –maxDetourDist ← Calculate distance representing max. detour from shortest path –Initialize Candidate_Producers list –For each producer offering the requested service If producer distance to consumer < maxDetourDist and within max. waiting time Candidate_Producers ← (producer, exp. waiting time, exp. detour) –Assign consumer to (i.e. recommend) Candidate producer with min exp. waiting time Candidate producer with min exp. detour A random producer from Candidate_Producers
35
CS Contributions Question to answer: –Does the spatial dimension adds much to the classical problem of online maximum bipartite matching?
36
Validation Methodology Evaluation Metrics –Consumer centric: Average query response time Average waiting time per request Average distance detour per request –Broker centric: % of accepted/matched requests –Producer centric: ? Synthetic Data Generation
37
Related Work Social network analysis for long term social relationships Ephemeral Social networks Sharing economy: –(Online) Ride sharing, Uber –Hotel rooms (Airbnb), Meal sharing, favor networks for sharing chores
38
Real-time/Online Ridesharing Systems (1/2) Passenger constraints: (src, dst, earliest departure time, latest arrival time) Driver constraints: (src, dst, departure time, deviation distance tolerance) Pairs only (2 sec/query)
39
Real-time/Online Ridesharing Systems (2/2) Passenger constraints: (src, dst, maximum waiting time, % of extra acceptable detour) Driver constraints: only satisfying all current passengers constraints –A vehicle can group multiple passengers Problem : Given a set of vehicles and a new passenger request, find the vehicle that minimizes the overall trip cost for the augmented trip schedule. Approach: materializing and pruning valid trip schedules (4 to 12 ms/query)
40
Grouping consumers for the same server: –e.g. If service provider announces a groupon, consumers may go to further service providers or wait more. (money constraint, ranking constraints) Should we assume that supply can change at real-time? –e.g. based on restaurant occupancy –But has to at least satisfy already accepted requests What about recommending multiple services for a single user along his route? Discussion: Problem Formulation 1: Fixed Providers, Moving Consumers (cont’d)
41
Discussion Should destination always be part of the consumer request? –Maybe yes, because if consumer is not on the road, the value of suggesting a specific service provider on his way decreases as many nearby options become feasible. –But users maybe willing to go to a specific suggested provider (without having a prespecified destination) if it has zero waiting time at their arrival (e.g. shopping bag ready to pickup, lunch ready on table or to pickup) What does the Maximum service waiting time constraint indicate? –Maximum time before service is received (regardless if it was spent driving or waiting at provider)?
42
Discussion How can we make use historical trajectories? Why not just match real-time locations? (recurring vs. non-recurring rendezvous)
43
Synthetic Data Generation (Supply/Demand) (1/2) Users mobility patterns are derived by their needs (Maslow’s hierarchy of needs). These needs can be used to model the users demand and generate trips: –Physiological (Food, clothing, shelter): trips for grocery shopping and restaurants Trips to shopping malls – Safety (financial, health): Home/work or school trips Trips to clinics/hospitals –Love/belonging/socialization: Trips to parks, cinemas, POIs Maslow’s Hierarchy of Needs
44
Synthetic Data Generation (Supply/Demand) (2/2) Possible generation model (based on BerlinMod): –Generate work/home trips per user –Generate additional trips in spare-time blocks under a given probability –Regular shopping trips –Occasional recreational/clinic trips
45
Preferences Learning
46
Synthetic Data Generation (1/3) Brinkhoff: –Trip-based short term observations Vehicles disappear at destination –Speed affected if number of moving objects on edge > threshold –Starting node: randomly –Destination node: depends on preferred route length (i.e. time, vehicle) –External events: weather, traffic jams (external objects) May lead to re-computation of route Limitations: –Does not account for real-world traffic flow and population (in implementation) –Does not model multiple trips for the same object (historical data)
47
Synthetic Data Generation (2/3) BerlinMod: –Object-based simulation for long-term observations/multiple days –Each object has home node and work node and neighborhood (3 km) –Work/Home nodes: random or using region probability –Trips: Home/work: 8 pm + t 1 → 4 pm + t 2 0.4 probability for trips in each spare time block (1 to 3 stops) »4 hour after work »2 five-hour blocks on a weekend –Simulates speed changes: Accelerate: automatically to reach max speed Deceleration/Stop: road crossings, curved edges Limitations: –Does not consider edge load (e.g. congestion) and external factors (e.g. weather effect). –Generation of home and work nodes are independent
48
Synthetic Data Generation (3/3) DYNASMART: –Dynamic Network Assignment-Simulation Model for Advanced Road Telematics –Designed to model traffic pattern and evaluate network performance under real-time information systems (e.g. reconstructions). –Uses OD Matrix to model simulated trips. –Trip Simulation: Assign vehicles initially to (one of k) shortest path (s). Recompute path cost –Congested edges are penalized Re-assign vehicles (switching occurs) Continue until wardrop equilibrium is reached –Advanced capabilities: Models signalized intersections, ramp entry/exit etc. Models driver’s behaviors –infrequent updates of network route info, fraction of info-equipped drivers
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.