Brief Course Description

This course will be a mathematical introduction to important algorithms in robotics and perception. We will study some or all of the following topics:

  1. Kinematics/zero-order control
    • Representation of rotation
    • Manipulator forward kinematics
    • Manipulator differential kinematics
    • Cartesian end-effector control
  2. Planning, Control
    • Sample-based planning methods (RRT, PRM)
    • Trajectory optimization, Newton's method, Sequential Quadratic Programming
    • Markov Decision Processes
    • Linear optimal control (LQR, TVLQR)
  3. Filtering, Localization, and Mapping
    • Kalman filter, EKF, Kalman smoothing
    • SLAM algorithms
  4. Computer Vision, Perception in Point Clouds
    • RANSAC, ICP (iterative closest point)
    • Linear filtering
    • Feature representations
    • Object recognition; category recognition

The course schedule is subject to change. See the schedule tab above.


The main textbook used in this course is Robotics, Vision, and Control: Fundamental Algorithms in Matlab by Peter Corke. You should buy this book. Additional material is taken from on-line sources that will be linked from the schedule page.


There are no formal pre-requisites, but it will be important for you to have a working knowledge of linear algebra. Here are some sinks to some Khan Academy lectures that can help you with this material if you need it:

Vector intro for linear algebra
Introduction to the matrix
Multiplying matrices
Introduction to the identity matrix
How to transform vectors using a transformation matrix
Introduction to eigenvalues and eigenvectors

Academic Integrity

Cheating and other acts of academic dishonesty will be referred to OSCCR (office of student conduct and conflict resolution). See this link.

Lateness Policy

Late assignments will be penalized by 10% for each day late. For example, if you turned in a perfect homework assignment two days late, you would receive an 80% instead of 100%.

Instruction Staff

Primary Instructor: Robert Platt ( r [dot] platt [at] neu [dot] edu )
Office hours: Fridays, 11-12, 208B West Village H, or by Appt.

Office hours: NA



Work Load

Required course work includes:

  • Approximately 5 Programming/Homework assignments (60% of your grade)
  • 1 Final project (40% of your grade)

Programming/Homework assignments

Most assignments will involve MATLAB programming. However, a few will involve pencil/paper problems.

Final project

Students must complete a final project. The project must be substantial either practically or algorithmically. The amount of project work should be equivalent to approximately three programming assignments. If they want, students my work in pairs. See schedule for due dates.

Use of MATLAB in the course

This course requires students to use MATLAB in conjunction with Peter Corke's Robotics Toolbox and Machine Vision Toolbox.