VLG Group
Group Meetings
Y. LeCun's website
CS at Courant
Courant Institute

V22-0480-001, Spring 2009:
Introduction to Robotics

[ Course Homepage | Schedule and Course Material | Videos/Photos | Mailing List ]

A course for undergraduates on robotics, physical computing, embedded systems, sensing and control.

Instructor: Yann LeCun, 715 Broadway, Room 1220, 212-998-3283, yann [ a t ] cs.nyu.edu

Teaching Asistant: Pierre Sermanet, 715 Broadway, Room 1220, 212-998-3283, psermanet [ a t ] gmail.com

Classes: Tuesdays and Thursdays 3:30-4:45PM, Room 1221, 715 Broadway.

Office Hours for Prof. LeCun: Thursdays 5:00-7:00 PM. Please send an email to Prof. LeCun prior to an office hour visit.

Click here for assignments and announcements >>>

Click here for robot documentation and links to on-line material >>>

Click here for the schedule >>>

Click here for pictures and videos of the soccer-playing Rovio robots >>>

The final project for the class, getting Rovio robots to play soccer using vision algorithms was mentioned in a number of blogs, including Slashgear, and RoboCommunity.

News and Announcements

2009-01-24: The NYU computer store has received about 100 Arduino boards on 01/23. Get yours before Tuesday!

A list of additional equipment and description of the projects for the week of 01/26-01/30 are available on the assignment page.

Course Description

The robotics industry has been expanding at a very fast pace in recent years. Several companies now sell mobile robots to consumers for entertainment, surveillance, cleaning, and other applications. Concurrently, robotic-like capabilities are being integrated into traditional products such as cars, vacuum cleaners, lawnmowers.

Over the next decade, intelligent domestic robots will become ubiquitous. Automonous vacuum cleaners and lawnmowers will become widely available, as well as cars that essentially drive themselves

Autonomous unmanned vehicles of various types (UGV on the ground, UAV in the air, UUV under water) will be widely deployed for inspection, search and rescue operations, surveillance, and military applications.

Robots are computers with sensors and actuators that can interact directly with the physical world. The course will consist of hands-on sessions in which students will write software for a variety of robot platforms for tasks such as maze solving, grasping, obstacle avoidance, and target tracking using vision. Class projects will include various challenges and robot races. Topics will include sensors and actuators, micro-controler programming and real-time embedded systems, simple kinematics, trajectory planning, simple vision and pattern recognition methods, and elementary machine learning techniques.

prerequisite: V22.0201 or familiarity with C programming, Calculus.

Who Can Take This Course?

This course has very little prerequisites, besides calculus. It requires some familiarity with C programming, Some optional projects requires some notion of linear algebra.

The course is designed for seniors, juniors and advanced sophomores of all majors, as long as they satisfy the prerequisites.

Projects will use a variety of robotics platforms, from fully autonomous wheeled robots, to legged robots, to robots with wireless IP cameras remote controlled from a laptop.

Students are expected to bring a laptop to the class (preferrably running Ubuntu Linux).

Topics Treated

The topics studied in the course include:
  • sensors, and actuators.
  • microcontrolers, real-time programming, interrupts.
  • servomotors and feedback control.
  • light sensors, proximity sensors.
  • obstacle detection and line following.
  • basic direct and inverse kinematics, robot arms and legs.
  • trajectory planning.
  • elements of pattern recognition.
  • introduction to image processing and computer vision.
  • adaptive behavior and reinforcement learning.

The LAGR project


The best way (some would say the only way) to understand an algorithm is to implement it and apply it. Building working systems is also a lot more fun, more creative, and more relevant than taking formal exams.

Therefore students will be evaluated primarily (almost exclusively) on project assignments given on a 2 week cycle, and on a final project.

Mailing List

Register to the course's mailing list.

Text Books

There is no single textbook for the class, but the following books contain useful reference material:
  • Embedded Robotics, by Thomas Braunl (Springer): covers many aspects of robotics and embedded computing, although the code samples are specific to a particular robot controller platform.
  • Introduction to Autonomous Mobile Robots, by Roland Siegwart and Illah Nourbakhsh (MIT Press): everything about mobile robots: kinematics, localization/mapping, planning, perception, sensors.
  • Planning Algorithms, by Steven Lavalle (Cambridge) This book has the considerable advantage of being freely available on-line. It is a very thorough treatise on motion planning.
  • Probabilistic Robotics by Thrun, Burgard and Fox (MIT Press): a rather mathematical treatment of localization/mapping topics such as Kalman filters, SLAM, particle filters and such.

There are other robotics book from the "MIT" school. These books talk about "behavior-based robotics", which attempt to reproduce the behavior of simple animals, such as insects:

  • Cambrian Intelligence by Rodney Brooks (MIT Press): "intelligence without reason", "elephants don't play chess".
  • Robot Programming: a Practical Guide to Behavior-Based Robotics, by Joseph Jones (McGraw Hill): a more recent and more practical book on behavior-based robotics, by engineers fro iRobot (of Roomba fame).

automatic obstacle avoidance

Robotics and Machine Learning Research at NYU

Please have a look at the research project page of the Computational and Biological Learning Lab for a few example of robotics and machine learning research at NYU.


3PI robot

Rovio robot with wireless webcam