COSC 2/81-F26: Principles of Robot Design and Programming

Enrollment Capped at 50 Students

Fall 2026 | 2A | ECSC 009

COSC 2/81-F26: Principles of Robot Design and Programming

Enrollment Capped at 50 Students

Fall 2026 | 2A | ECSC 009

Prerequisites

Course Overview

Robots are cyber-physical systems, leveraging computational intelligence to sense and act in a real world far too large to fully enumerate. This introductory course teaches robotics as an algorithmic discipline built around that challenge and explore concepts across the full robotics stack with examples from navigation, manipulation, and locomotion. The first third of the course covers the many ways to plan real-world motions, ranging from search to sampling to optimization to learning. The second third builds on this foundation, covering state estimation, computer vision, and modern robot learning, each reusing algorithmic machinery from our study of planning. Throughout, you will complete programming and written assignments that dive into the theory and practice of these algorithms, and will be assessed via written, in class, closed-book exams. The final third of the course culminates in a team-based project deploying a full robotics software stack on real hardware, where you will see firsthand how compute budgets and changing real-world conditions reshape your algorithms. Finally, we note that robotics is a much larger field than any one course can cover. This course surveys the key ideas across the full robotics stack, going deeper where fundamental concepts reach beyond any single algorithm or application.

Learning Outcomes

By the end of the semester, you will be able to:

Office Hours

The most up-to-date schedule of office hours can be found here. I will also try to respond to requests emailed to plancher+courses@dartmouth.edu within 2 business days. Faster response time will be achieved via the course Slack.