Ride-pooling Electric Autonomous Mobility-on-Demand: Joint Optimization of Operations and Fleet and Infrastructure Design
<|reference_start|>Ride-pooling Electric Autonomous Mobility-on-Demand: Joint Optimization of Operations and Fleet and Infrastructure Design: This paper presents a modeling and design optimization framework for an Electric Autonomous Mobility-on-Demand system that allows for ride-pooling, i.e., multiple users can be transported at the same time towards a similar direction to decrease vehicle hours traveled by the fleet at the cost of additional waiting time and delays caused by detours. In particular, we first devise a multi-layer time-invariant network flow model that jointly captures the position and state of charge of the vehicles. Second, we frame the time-optimal operational problem of the fleet, including charging and ride-pooling decisions as a mixed-integer linear program, whereby we jointly optimize the placement of the charging infrastructure. Finally, we perform a case-study using Manhattan taxi-data. Our results indicate that jointly optimizing the charging infrastructure placement allows to decrease overall energy consumption of the fleet and vehicle hours traveled by approximately 1% compared to an heuristic placement. Most significantly, ride-pooling can decrease such costs considerably more, and up to 45%. Finally, we investigate the impact of the vehicle choice on the energy consumption of the fleet, comparing a lightweight two-seater with a heavier four-seater, whereby our results show that the former and latter designs are most convenient for low- and high-demand areas, respectively.<|reference_end|>
@article{paparella2024ride-pooling,
    title={Ride-pooling Electric Autonomous Mobility-on-Demand: Joint Optimization
  of Operations and Fleet and Infrastructure Design},
    author={Fabio Paparella, Karni Chauhan, Luc Koenders, Theo Hofman, Mauro
  Salazar},
    journal={arXiv preprint arXiv:2403.06566},
    year={2024},
    archivePrefix={arXiv},
    eprint={2403.06566},
    primaryClass={eess.SY cs.SY math.OC}
}