Skip to content

Simulations of vehicle platooning using hybrid model predictive control strategies.

License

Notifications You must be signed in to change notification settings

Kevindqz/hybrid-vehicle-platoon

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

94 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

A Comparison Benchmark for Distributed Hybrid MPC Control Methods: Distributed Vehicle Platooning

Source Code License Code style: black

This repository contains the source code used to produce the results obtained in A Comparison Benchmark for Distributed Hybrid MPC Control Methods: Distributed Vehicle Platooning submitted to IEEE Transactions on Control Systems Technology.

In this work, we propose a benchmark control problem for evaluating distributed hybrid model predictive controllers. The benchmark problem is the control of a platoon of vehicles, with the vehicle dynamics modelled as a hybrid system. We present two modelling approaches and evaluate five existing hybrid model predictive controllers on the benchmark.

If you find the paper or this repository helpful in your publications, please consider citing it.

@article{mallick2023comparison,
  title = {A Comparison Benchmark for Distributed Hybrid MPC Control Methods: Distributed Vehicle Platooning},
  author = {Mallick, Samuel and Dabiri, Azita and De Schutter, Bart},
  journal={arXiv preprint arXiv:2401.09878},
  year = {2023},
  url = {https://arxiv.org/abs/2401.09878}
}

Installation

The code was created with Python 3.9. To access it, clone the repository

git clone https://github.com/SamuelMallick/hybrid-vehicle-platoon
cd hybrid-vehicle-platoon

and then install the required packages by, e.g., running

pip install -r requirements.txt

Structure

The repository code is structured in the following way

  • ACC_env.py contains the environment for simulating the platoon. This updates the state of the platoon according to the nonlinear hybrid model, and generates the cost penalties for given states.
  • ACC_model.py contains all functions and data structures related to the modelling of the vehicles.
  • bash_scripts contains contains bash scripts for automated running of tests.
  • data contains '.pkl' files for data used in A Comparison Benchmark for Distributed Hybrid MPC Control Methods: Distributed Vehicle Platooning.
  • results_analysis contains scripts for generating the images and tables used in A Comparison Benchmark for Distributed Hybrid MPC Control Methods: Distributed Vehicle Platooning.
  • fleet_{cent_mld, decent_mld, seq_mld, event_based, naive_admm}.py launch simulations for the five controllers used in A Comparison Benchmark for Distributed Hybrid MPC Control Methods: Distributed Vehicle Platooning.

## License

The repository is provided under the GNU General Public License. See the [LICENSE](https://github.com/SamuelMallick/hybrid-vehicle-platoon/blob/main/LICENSE) file included with this repository.

---

## Author

[Samuel Mallick](https://www.tudelft.nl/staff/s.h.mallick/), PhD Candidate [[email protected] | [email protected]]

> [Delft Center for Systems and Control](https://www.tudelft.nl/en/3me/about/departments/delft-center-for-systems-and-control/) in [Delft University of Technology](https://www.tudelft.nl/en/)

> This research is part of a project that has received funding from the European Research Council (ERC) under the European Union’s Horizon 2020 research and innovation programme ([Grant agreement No. 101018826 - CLariNet](https://cordis.europa.eu/project/id/101018826)).

Copyright (c) 2023 Samuel Mallick.

Copyright notice: Technische Universiteit Delft hereby disclaims all copyright interest in the program “hybrid-vehicle-platoon” (A Comparison Benchmark for Distributed Hybrid MPC Control Methods: Distributed Vehicle Platooning) written by the Author(s). Prof. Dr. Ir. Fred van Keulen, Dean of 3mE.

About

Simulations of vehicle platooning using hybrid model predictive control strategies.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 97.6%
  • Batchfile 2.3%
  • Shell 0.1%