Organizations: Department of Informatics and Intelligent Systems, Pennsylvania State University, University Park, Pennsylvania · Department of Computer Science, College of William & Mary, Williamsburg, Virginia · School of Civil and Environmental Engineering, Cornell University, Ithaca, New York · College of Connected Computing, Vanderbilt University, Nashville, Tennessee
Transit agencies that operate on-demand transportation services have to respond to trip requests from passengers in real time, which involves solving dynamic vehicle routing problems with pick-up and drop-off constraints. Based on discussions with public transit agencies, we observe a real-world problem that is not addressed by prior work: when trips are booked in advance (e.g., trip requests arrive a few hours in advance of their requested pick-up times), the agency needs to promptly confirm whether a request can be accepted or not, and ensure that accepted requests are served as promised. State-of-the-art computational approaches either provide prompt confirmation but lack the ability to continually optimize and improve routes for accepted requests, or they provide continual optimization but cannot guarantee serving all accepted requests. To address this gap, we introduce a novel problem formulation of dynamic vehicle routing with prompt confirmation and continual optimization. We propose a novel computational approach for this vehicle routing problem, which integrates a quick insertion search for prompt confirmation with an anytime algorithm for continual optimization. To maximize the number requests served, we train a non-myopic objective function using reinforcement learning, which guides both the insertion and the anytime algorithms towards optimal, non-myopic solutions. We evaluate our computational approach on a real-world microtransit dataset from a public transit agency in the U.S., demonstrating that our proposed approach provides prompt confirmation while significantly increasing the number of requests served compared to existing approaches.
Figures & tables
Fig. 1: During service, (1) requests arrive following a known distribution (e.g., based on historical data); (2) upon the arrival of each request, we decide whether to accept or reject the request given the current state of the service; (3) we promptly notify the passenger of our decision; (4) until the next request arrives, we continuously optimize route plans to better accommodate future requests. Symbols pk and dk represent the pickup and dropoff of request k , respectively.
Symbol
Description
Variables
Tt
Set of requests that arrived as of time t
Ttaccept
Set of requests that are part of route plans at time t
Constants
L
Set of locations
V
Set of vehicles
TABLE I: List of Symbols
Fig. 2: Distribution of request rejection rates across 5 different episodes from the real-world microtransit data.
Fig. 3: Distribution of request rejection rates across 5 different episodes from the NYC taxi data.
Fig. 4: Distribution of rejection rates across 5 different episodes from the real-world microtransit data, with various running-time limits for the anytime algorithm (in seconds).
Appendix figures & tables20 assets
Supplementary material from the paper’s appendix.
Appendix
Neural Network Architecture: MLP
Name of the Hyperparameter
Microtransit Data
NYC Taxi Data
Number of Hidden Layers
3
2
Number of Neurons
[64, 128, 128]
[128, 128]
Dropout Rate
0.1
0.2
Neural Network Architecture: KAN
Name of the Hyperparameter
Microtransit Data
NYC Taxi Data
Appendix
TABLE II: Neural-Network Hyperparameters
Feature Selection: MLP
Name of the Parameter
Microtransit Data
NYC Taxi Data
Feature Combination
x,xa
x,xa
Grid dimension ( g )
1
3
Multiple of window ( Nwm )
2
2
Number of subsequent intervals ( Nci )
1
1
Number of idle vehicle at an interval ( Nmv )
1
1
Appendix
TABLE III: Feature Vector Combination
Fig. 5: Distribution of rejection rates for the trained policy π∗ with neural-network architectures based on MLP ( ■ ), KAN ( ■ ), and CNN ( ■ ), across 5 different episodes from the microtransit data .
Fig. 6: Distribution of rejection rates for the trained policy π∗ with neural-network architectures based on MLP ( ■ ), KAN ( ■ ), and CNN ( ■ ), across 5 different episodes from the NYC taxi data .
Fig. 7: Distribution of rejection rates for various running-time limits on the anytime algorithm (in seconds, horizontal axis) with trained policies π∗ based on MLP ( ■ ), KAN ( ■ ), and CNN ( ■ ), across 5 different episodes from the microtransit data .
Fig. 8: Distribution of rejection rates for various running-time limits on the anytime algorithm (in seconds, horizontal axis) with trained policies π∗ based on MLP ( ■ ), KAN ( ■ ), and CNN ( ■ ), across 5 different episodes from the NYC taxi data .
Settings
Insertion Decision
Acceptance Decision
Anytime Optimization
Service Rate
A
π0
Always Accept ( π0 )
π0
98.64
B
π0
Accept/Reject ( π∗ )
π∗
98.83
C
π∗
Always Accept ( π∗ )
π0
98.70
D
π∗
Accept/Reject ( π∗ )
π0
98.86
E
π∗
Always Accept ( π∗ )
π∗
99.06
Our
π∗
Accept/Reject ( π∗ )
π∗
98.83
Appendix
TABLE IV: Average service rate across 5 different episodes from microtransit data evaluated using the decision making choices while using learned Q -function using MLP based architecture.
Settings
Insertion Decision
Acceptance Decision
Anytime Optimization
Service Rate
A
π0
Always Accept ( π0 )
π0
98.64
B
π0
Accept/Reject ( π∗ )
π∗
98.25
C
π∗
Always Accept ( π∗ )
π0
98.67
D
π∗
Accept/Reject ( π∗ )
π0
98.80
E
π∗
Always Accept ( π∗ )
π∗
98.67
Our
π∗
Accept/Reject ( π∗ )
π∗
98.77
Appendix
TABLE V: Average service rate across 5 different episodes from microtransit data evaluated using the decision making choices while using learned Q -function using CNN based architecture.
Settings
Insertion Decision
Acceptance Decision
Anytime Optimization
Service Rate
A
π0
Always Accept ( π0 )
π0
98.64
B
π0
Accept/Reject ( π∗ )
π∗
98.44
C
π∗
Always Accept ( π∗ )
π0
98.57
D
π∗
Accept/Reject ( π∗ )
π0
98.80
E
π∗
Always Accept ( π∗ )
π∗
98.83
Our
π∗
Accept/Reject ( π∗ )
π∗
98.99
Appendix
TABLE VI: Average service rate across 5 different episodes from microtransit data evaluated using the decision making choices while using learned Q -function using KAN based architecture.
Settings
Insertion Decision
Acceptance Decision
Anytime Optimization
Service Rate
A
π0
Always Accept ( π0 )
π0
98.70
B
π0
Accept/Reject ( π∗ )
π∗
98.95
C
π∗
Always Accept ( π∗ )
π0
99.00
D
π∗
Accept/Reject ( π∗ )
π0
99.29
E
π∗
Always Accept ( π∗ )
π∗
98.84
Our
π∗
Accept/Reject ( π∗ )
π∗
98.93
Appendix
TABLE VII: Average service rate across 5 different episodes from NYC taxi data evaluated using the decision making choices while using learned Q -function using MLP based architecture.
Settings
Insertion Decision
Acceptance Decision
Anytime Optimization
Service Rate
A
π0
Always Accept ( π0 )
π0
98.70
B
π0
Accept/Reject ( π∗ )
π∗
98.47
C
π∗
Always Accept ( π∗ )
π0
98.95
D
π∗
Accept/Reject ( π∗ )
π0
99.02
E
π∗
Always Accept ( π∗ )
π∗
98.35
Our
π∗
Accept/Reject ( π∗ )
π∗
98.26
Appendix
TABLE VIII: Average service rate across 5 different episodes from NYC taxi data evaluated using the decision making choices while using learned Q -function using CNN based architecture.
Settings
Insertion Decision
Acceptance Decision
Anytime Optimization
Service Rate
A
π0
Always Accept ( π0 )
π0
98.70
B
π0
Accept/Reject ( π∗ )
π∗
98.72
C
π∗
Always Accept ( π∗ )
π0
99.00
D
π∗
Accept/Reject ( π∗ )
π0
99.00
E
π∗
Always Accept ( π∗ )
π∗
98.84
Our
π∗
Accept/Reject ( π∗ )
π∗
99.05
Appendix
TABLE IX: Average service rate across 5 different episodes from NYC taxi data evaluated using the decision making choices while using learned Q -function using KAN based architecture.
Settings
Insertion Decision
Acceptance Decision
Anytime Optimization
Service Rate
A
π0
Always Accept ( π0 )
π0
56.67
B
π0
Accept/Reject ( π∗ )
π∗
57.91
C
π∗
Always Accept ( π∗ )
π0
57.17
D
π∗
Accept/Reject ( π∗ )
π0
56.83
E
π∗
Always Accept ( π∗ )
π∗
58.17
Our
π∗
Accept/Reject ( π∗ )
π∗
58.33
Appendix
TABLE X: Average service rate across 5 different episodes from abstract environment evaluated using the decision making choices while using learned Q function using MLP based architecture.
Settings
Insertion Decision
Acceptance Decision
Anytime Optimization
Service Rate
A
π0
Always Accept ( π0 )
π0
56.67
B
π0
Accept/Reject ( π∗ )
π∗
59.08
C
π∗
Always Accept ( π∗ )
π0
56.84
D
π∗
Accept/Reject ( π∗ )
π0
57.92
E
π∗
Always Accept ( π∗ )
π∗
58.00
Our
π∗
Accept/Reject ( π∗ )
π∗
59.17
Appendix
TABLE XI: Average service rate across 5 different episodes from abstract environment evaluated using the decision making choices while using learned Q function using CNN based architecture.
Fig. 9: Distribution of rejection rates when using MC VRP as the dynamic VRP solver with different running times per decision epoch, across 5 different episodes from the microtransit data .
Fig. 10: Distribution of rejection rates when using MC VRP as the dynamic VRP solver with different running times per decision epoch, across 5 different episodes from the NYC taxi data .
Fig. 11: Distribution of rejection rates when using Rolling Horizon solver at each decision epoch with rolling-horizon factors RH1 ( ■ ) and RH2 ( ■ ), across 5 different episodes from the microtransit data .
Fig. 12: Distribution of average computation time for each decision epoch when using Rolling Horizon solver with rolling-horizon factors RH1 ( ■ ) and RH2 ( ■ ), across 5 different episodes from the microtransit data .
Fig. 13: Distribution of rejection rates when using Rolling Horizon solver at each decision epoch with rolling-horizon factors RH1 ( ■ ) and RH2 ( ■ ), across 5 different episodes from the NYC taxi data .
Fig. 14: Distribution of average computation time for each decision epoch when using Rolling Horizon solver with rolling-horizon factors RH1 ( ■ ) and RH2 ( ■ ), across 5 different episodes from the NYC taxi data .