Updates

Course Overview

Instructor: Prof. Mangal Kothari
Office Hours: Tuesday, Friday (03:30PM — 04:30PM)
Class Venue: L-11, Lecture Hall Complex
Class Timings: Monday, Wednesday (5:10PM — 6:30PM)
T.A. Hours: Mayank Mittal (Friday, 4:30PM — 5:30PM), Krishnraj Singh Gaur (by appointment)

This 9-credit graduate level course is designed to teach the essentials of robotics. The course would deal with dynamics and state estimation for various robotic systems, mainly focusing on the kalman filter and its family. It would also cover path planning and SLAM algorithms for these systems. Towards the end of the course advanced topics like cooperative localization may be discussed.

Course Pre-Requisites

There are no formal pre-requisties for the course. However, prior knowledge of dynamics, probability and statistics is necessary. The students also need to be proficient in object-oriented programming (Python/C++), and MATLAB. Familiarity of robotic hardware and ROS would be beneficial.

NOTE: The course is being offered to advanced undergraduate and graduate students only.

Schedule

The syllabus is subject to change in response to feedback and class needs throughout the term.
Week Topic Summary
Introduction to Robot Operating System
Week 1 08/01/2018 10/01/2018

System Integration using ROS Framework

Lecture

  • How to interface hardware with software?
  • Interfacing ROS with various Hardware (Kinect, Camera, Wi-Fi Signal Tracker, LiDAR)
  • Robot Simulation using Gazebo

Homework

Slides


References

  • Software setup scripts here

Mayank Mittal

Dynamics and Control
Week 2 15/01/2018 17/01/2018

Modelling and Control of Quadrotor

Lecture

  • Rigid-Body Transformation (Euler and Quaternion representations)
  • Kinematics of Quadrotor

Slides


References

Mangal Kothari

Week 3 20/01/2018 22/01/2018

Robotic System Modelling

Lecture

  • Non-linear Controllers for quadrotors
  • Motion Model for Differential-Drive Steering

Slides


References

Mangal Kothari

Week 5 31/01/2018 05/02/2018

Localization Problem

Lecture

  • Recursive State Estimation
  • Taxonomy of Localization Problems
  • Markov Localization
  • Inroduction to Gaussian Filters

References

Mangal Kothari

Week 6 07/02/2018 12/02/2018

Localization Problem (Contd.)

Lecture

  • Extended Kalman Filter (EKF) Algorithm
  • Unscented Kalman Filter (UKF) Algorithm

Mangal Kothari

Review Week
Week 7 05/03/2018 07/03/2018

Review of Topics Taught So Far

Lecture

  • Discussion on Kalman Filter Family
  • Introduction to Non-Parametric Filters
  • Recap of Robot Operating System

Mayank Mittal

Simultaneous Localization and Mapping (SLAM)
Week 8 12/03/2018 14/03/2018

Solving the SLAM problem

Lecture

  • What is the SLAM problem?
  • Extended Kalman Filter (EKF) SLAM with Known Correspondences

Mangal Kothari

Week 9 19/03/2018 07/03/2018

Solving the SLAM problem (Contd.)

Lecture

  • Unknown Data Association using Mahalanobis Distance
  • Outline of FastSLAM

Mangal Kothari

Sensing
Week 8 26/03/2018 28/03/2018

Vision-based Sensing

Lecture

  • Scan-Matching using Iterative Closest Point (ICP) Algorithm
  • Fundamental Matrix for Camera
  • Overview of Epipolar Geometry

Harsh Sinha

Week 9 19/03/2018 21/03/2018

Inertial Navigation

Lecture

  • Attitude and Heading Reference System (AHRS)
  • Orientation Kinematics using DCM Algorithm

Slides


Mangal Kothari

Path Planning
Week 10 02/04/2018 04/04/2018

Overview of Concepts in Path Planning

Lecture

  • Configuration Space
  • Sampling-Based Algorithms (RRT, RRT*)
  • Markov Decision Processes

Slides


Mangal Kothari

Multi-Robots System
Week 13 09/04/2018 11/04/2018

UAV-UGV Collaboration

Lecture

  • Cooperative Localization
  • Multi-Robot Mapping and Path Planning

Mangal Kothari

Project Presentation
Week 14 14/04/2018 16/04/2018

Presentation of Course Projects


Grading

This course is graded on a straight scale, it will not be curved. There are a total of 100 possible points in this course. The tentative break-up of the points is as follows: Homework Assignments (40 points), Project (35 points), Quizzes (5 points) and End-Semester Examination (20 points). Each section has modest opportunity for extra credit that can cover missing points elsewhere.


Homework (40% / 40 points)

There would be 4 homework assignments in the course. Each homework assignment is worth 10 points, and would comprise of implementation and theory based questions. There might be bonus questions in each assignment carrying extra points. Any points over 40 points are worth half their value.

NOTE:

  • All assignments have to submitted in LaTeX following this template.
  • Late assignment submissions may lead to penalty.

Project (35% / 35 points)

The course heavily emphasizes on the project aspect. You would be required to work in a team of 2-3 members. The project has to be an implementation of a recent work (from 2013 onwards) in robotics appearing in conferences like RSS, ICRA, or IROS. The source code for the same should not be publicly available. Points would be given on the basis of code readibilty, documentation, and presentation.


Quizzes and Participation (5% / 5 points)

Attendance is not compulsory for this course. However, the lectures might include some quizzes used to verify comprehension. These quizzes could be in form of class assignments based on implementation or quick two to three theoretical questions. We reserve the right to experiment with this mechanism a bit throughout the semester.


Use of Unfair Means

The use of unfair means by any student would be severely punished. The following document would be referred to while deciding the penalty imposed: General Instructions and Guidelines

Course Staff

For general issues, e-mail the course staff at ae640a@gmail.com. For sensitive issues, please e-mail Prof. Mangal Kothari directly.


References

[1] Probabilistic Robotics. Sebastian Thrun, Wolfram Burgard and Dieter Fox. MIT press, 2005.

[2] Principles of Robot Motion: Theory, Algorithms and Implementations, Howie Choset et al.. MIT Press, 2005.