/Portfolio-of-Robot-Learning-Algorithms

My personal portfolio of robot learning algorithms

Primary LanguageJupyter Notebook

Portfolio-of-Robotics-Algorithms

My personal portfolio of robot learning algorithms, from course materials in 517 and 650 at UPenn.

  • This repository is continuously updated with new algorithms and implementations as I learn them.

  • Last updated: 2024-Apr-6

Table of Contents

  1. Optimal Control and Trajectory Optimization: LQR, MPC, Energy Shaping, iLQR, Collocation, Min-snap

  2. State Estimation: Kalman Filter, EKF, UKF, Particle Filter

  3. Perception: 2D SLAM with PF, NeRF (to be updated)

  4. Planning: Dynamic Programming, etc (to be updated)

  5. Robot Learning: HMM, DQN (to be updated)

Results and Demos

1. Energy shaping of a cartpole system

Energy Shaping

2. LQR for a 2D quadrotor

LQR

3. MPC for a 2D quadrotor

MPC

4. iLQR

iLQR

5. Direct Collocation

6. Min-snap

7. Kalman Filter, EKF, & UKF for quaternions

  • Using EKF to estimate a system parameter

    EKF

8. 2D SLAM with Particle Filter

SLAM Data 0 SLAM Data 1 SLAM Data 2 SLAM Data 3

9. NeRF

NeRF at the 100th Iteration NeRF at the 300th Iteration NeRF at the 100th Iteration NeRF at the 100th Iteration

10. Dynamic Programming

  • Value Iteration

    Value Iteration
  • Policy Iteration

    Value Iteration

Acknowledgements

650 course materials are from Prof. Pratik Chaudhari, 517 course materials are from Prof. Michael Posa.

During my implementation, I also learned a lot from Anirudh Kailaje (https://github.com/KailajeAnirudh). Please also star his wonderful repositories if you find mine helpful.