Skip to content

Control of a 6-state bicycle model for racing and evading random obstacles utilizing Model Predictive Control (MPC).

License

Notifications You must be signed in to change notification settings

MRHan-426/MPC-BicycleModel

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

20 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

MPC-BicycleModel

gif

ROB535 Primary language License

This is Team 2's final project git repository for ROB535: Self-Driving Cars.

In this project, we control a 6-state bicycle to race while avoiding random obstacles using MPC.

The team members include: Ziqi Han, Siyuan Yin, Qilin He, Yifan Wang, Yuzhou Chen.

Project details and task requirements can be found here.


1. Usage of our repo

Add directories src and trajectories to path.

execute run.m

To generate gif for visualization:

execute make_gif.m

2. Result

  • For task1:
Rank Percentage of Completion(%) Time consumption(sec) Group number
1 100 4.8777 7
2 100 4.9119 9
3 100 5.185 12
4 100 7.266 6
5 100 10.7061 3
6 100 16.4615 1
7 100 28.9013 11
8 100 34.1071 10
9 100 49.0447 8
10* 100 50.3462 Our Team
11 100 68.3962 4
12 100 260.4474 5
  • For task2:
Rank Percentage of Completion(%) Average t_score(points) Group number
1 100 168.706 12
2* 100 278.608 Our Team
3 100 280.08 7
4 100 297.528 6
5 100 311.648 9
6 100 341.856 10
7 100 436.214 4
8 100 598.408 3
9 100 734.988 8
10 76.356 - 5
11 5.97218 - 11
12 0.11138 - 1

3. Documentation

4. Project Log & Todo List

  • 1. Finish writing PID control for part1.

  • 2. Use PID control for part2.

    • 2.1 Debug.
    • 2.2 Test for success rate and time => This method is abandoned.
  • 3. Use fmincon for part2.

    • 3.1 Finish writing constraints.
    • 3.2 Debug => This method is abandoned.
  • 4. Use MPC for part2.

    • 4.1 Generate reference trajectory for MPC.
    • 4.2 Debug.
    • 4.3 solve QP no solution problem.
    • 4.4 Test for success rate and time.
  • 5. Upload and Report.

    • 5.1 Draw trajectory.
    • 5.2 Write Report and Upload code.
  • 6. Use MPPI for part2.

    • 6.1 Write Cost function.
    • 6.2 Write MPPI loop.
    • 6.3 Test for success rate and time.

About

Control of a 6-state bicycle model for racing and evading random obstacles utilizing Model Predictive Control (MPC).

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages