CP 313: Autonomous Navigation

Instructors: Raghu Krishnapuram and Chiranjib Bhattacharyya

Background: Autonomous robots such as self-driving cars and drones are set to be game changers in many fields such as infrastructure maintenance, transportation, public safety, disaster response, agriculture, mining, health care, and exploration. Autonomous involves a multi-disciplinary approach that includes a variety of topics (e.g., sensor technologies, behaviour modelling, trajectory prediction, localization and mapping methods, and path planning in the presence of obstacles) that come from subject areas such as computer vision, machine learning, artificial intelligence, robotics, estimation theory, control theory, and optimization. This course will cover the main theoretical concepts and practical approaches to autonomous navigation through a combination of lectures, assignments and projects.

Topics covered: Geometric primitives and transforms, state estimation methods (Kalman filter, unscented Kalman filter, particle filters), camera modelling, localization, simultaneous localization and mapping (SLAM), depth from monocular cameras, traditional and deep-learning based SLAM, motion planning, and exploration.

Prerequisites: Knowledge of random processes or probability and statistics, linear algebra, and computer programming (e.g. Python) will be assumed. In addition, familiarity with basic optimization methods, algorithm design, basics of machine learning and computer vision is needed.

Credit Hours: This will be a 2:1 credit course, where hands-on work will be emphasized. The class will meet twice a week for total duration of 2.5 hours.

Assessment: Two problem assignments (individual) and a course project (which will be evaluated in four stages) will account for 55% of the grade. There will be two mid-term examinations, which will account for 30% of the grade (15% each). The course project will have a final oral presentation/exam, which will account for 15% of the grade.

Reference textbooks:

  • Sebastian Thrun, Wolfram Burgard, and Dieter Fox, Probabilistic Robotics, MIT Press, 2006.
  • Richard Hartley and Andrew Zisserman, Multiple View Geometry, Cambridge Univ Press, 2003.
  • Richard Szeliski, Computer Vision: Algorithms and Applications, Springer, 2010.