## 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:

- Kinematics/zero-order control
- Representation of rotation
- Manipulator forward kinematics
- Manipulator differential kinematics
- Cartesian end-effector control

- Planning, Control
- Sample-based planning methods (RRT, PRM)
- Trajectory optimization, Newton's method, Sequential Quadratic Programming
- Markov Decision Processes
- Linear optimal control (LQR, TVLQR)

- Filtering, Localization, and Mapping
- Kalman filter, EKF, Kalman smoothing
- Occupancy grids
- SLAM algorithms
- Loop closure

- Perception, Computer Vision
- 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.

## Textbooks

We will use several different texts in this course. All
will be available online for free download EXCEPT for *Robot Modeling and Control*, by Mark W. Spong, Seth Hutchinson, M. Vidyasagar. You should buy this book.

## Prerequisites

There are no formal pre-requisites, but it will be very important for you to have a working knowledge of discrete math and probability.

## 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.

TA: NA

Office hours: NA

## Announcements

None

## Work Load

Required course work includes:

- 4 Programming assignments (55% of your grade)
- 2 Homework assignments (15% of your grade)
- 1 Final project (30% of your grade)

## Programming assignments

There will be four programming assignments. All programming assignments
must be completed using Python or Matlab and are due on the day indicated on the schedule.

## Homework assignments

There will be two written homework assignments due on the day indicated on the schedule.

## Final project

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