thomasfermi / Algorithms-for-Automated-Driving

Each chapter of this (mini-)book guides you in programming one important software component for automated driving.
https://thomasfermi.github.io/Algorithms-for-Automated-Driving/Introduction/intro.html
Other
392 stars 83 forks source link

Add chapter on Model Predictive Control #5

Open thomasfermi opened 3 years ago

thomasfermi commented 3 years ago

This issue tracks progress on the (currently non-existing) chapter on Model Predictive Control.

The scope of that chapter is described in the book under future chapters:

Model Predictive Control The pure pursuit controller does not work well when driving curves at high speeds. In this case the assumption of zero slip for the kinematic bicycle model does not apply. In this chapter we will design a model predictive controller based on the dynamic bicycle model, which accounts for nonzero side slip angles.

My current projection is that I might start working on this in end of 2021. If someone else would be interested to help or write this chapter on his/her own, that would be super awesome.

Current status/ideas/references:

I already implemented a model predictive controller based on the kinematic bicycle model, which is working in Carla (did not publish). I also wrote a book section that explains MPC in general (did not publish). I stopped working on this, since the MPC controller did not perform better than pure pursuit. I think MPC could do better if I was using the dynamic bicycle model, but it is difficult to get all necessary vehicle parameters in Carla (see this issue).

This paper also has a section on estimating vehicle parameters for the dynamic bicycle model, so this is worth a look.

smitsparsh commented 3 years ago

Hi Mario!! I really learnt a lot from your book on Algorithms for Automated Driving. I am really interested in topics like SLAM and MPC and would like to contribute for the same in your book. The only caveat is I am not very versed with these concepts all though I am in this industry for past 2 years. Please reach out to me: "smit'dot'sparsh'at'gmail'dot'com"

ahv1373 commented 2 years ago

Hi. I am also trying to implement MPC to control the vehicle's steering angle in carla using the bicycle model. If it is ok to you, I would really like to take a look at the MPC part which you mentioned that is not published yet. my email address: amirkhosravian73@gmail.com Best Regards.

thomasfermi commented 2 years ago

Hi @ahv1373, you can join the discord server:

https://discord.gg/57YEzkCFHN

There, you will find a channel #mpc-chapter

TZECHIN6 commented 8 months ago

Thanks for the pure-pursuit tutorial, it really helps me understanding the algorithm. I am looking for the MPC controller, as seem its more robust and accurate.