Robust Optimal Lane-changing Control for Connected Autonomous Vehicles in Mixed Traffic
<|reference_start|>Robust Optimal Lane-changing Control for Connected Autonomous Vehicles in Mixed Traffic: We derive time and energy-optimal policies for a Connected Autonomous Vehicle (CAV) to execute lane change maneuvers in mixed traffic, i.e., in the presence of both CAVs and Human Driven Vehicles (HDVs). These policies are also shown to be robust with respect to the unpredictable behavior of HDVs by exploiting CAV cooperation which can eliminate or greatly reduce the interaction between CAVs and HDVs. We derive a simple threshold-based criterion on the initial relative distance between two cooperating CAVs based on which an optimal policy is selected such that the lane-changing CAV merges ahead of a cooperating CAV in the target lane; in this case, the lane-changing CAV's trajectory becomes independent of HDV behavior. Otherwise, the interaction between CAVs and neighboring HDVs is formulated as a bilevel optimization problem with an appropriate behavioral model for an HDV, and an iterated best response (IBR) method is used to determine an equilibrium. We demonstrate the convergence of the IBR process under certain conditions. Furthermore, Control Barrier Functions (CBFs) are implemented to ensure the robustness of lane-changing behaviors by guaranteeing safety in both longitudinal and lateral directions despite HDV disturbances. Simulation results validate the effectiveness of our CAV controllers in terms of cost, safety guarantees, and limited disruption to traffic flow. Additionally, we demonstrate the robustness of the lane-changing behaviors in the presence of uncontrollable HDVs.<|reference_end|>
@article{li2024robust,
    title={Robust Optimal Lane-changing Control for Connected Autonomous Vehicles
  in Mixed Traffic},
    author={Anni Li, Andres S. Chavez Armijos, Christos G. Cassandras},
    journal={arXiv preprint arXiv:2406.16870},
    year={2024},
    archivePrefix={arXiv},
    eprint={2406.16870},
    primaryClass={eess.SY cs.SY}
}