Welcome to Mobile Robots!
Hello students and visitors! This is the official webpage for 16-761: Mobile Robots.
- Class Dates and Times: Tuesdays and Thursdays 1100-1220 in NSH 1305
- Instructor: Wennie Tabib
- Office: LL 05, Building Collaborative Innovation Commons
- Contact: wtabib (at) cmu.edu
This lecture-based course comprises four modules that present both theory and practice of mobile robot algorithms. These modules will be associated with five assignments through which students will build a autonomy software package. A short introductory assignment (assignment 0) will serve as an introduction to manipulating rotations and transforms. In assignment 1, we will add vehicle dynamics simulation and linear control capabilities. Assignment 2 aims at adding mapping and state estimation capability. Assignment 3 will enable students to add motion planners. Finally, in the assignment 4 we will combine the capabilities from the previous modules into an exploration system.
Learning Objectives
When you complete this course, you will be able to:
- Aerial Robot Autonomy: Implement a framework for autonomous quadrotor navigation and exploration.
- Development Skills: Plan software development efforts that address robotics applications.
- Software Artifacts: Develop a nontrivial mobile robot application.
- Algorithmic Familiarity: Implement key probabilisitc algorithms in mobile robotics.
Pre-requisites
Undergraduate-level understanding of probability, statistics, and algorithms is assumed. Experience with Python and basic familiarity with linear algebra, probability theory, and ordinary differential equations will benefit the student throughout the semester.
Learning Resources
There is no textbook required for this course. Slides and additional references for further reading will be provided with each lecture on the course website.
Assessments
This course implements software for mobile robots. Consequently, the assessments depend heavily on programming. We will be using the Python programming languages throughout the course. Your final grade in this course will be assessed according to:
- 90% Homework
- assignment0: 10% (Rotations & Transforms)
- assignment1: 20% (Quadrotor Dynamics & Control)
- assignment2: 20% (Mapping & State Estimation)
- assignment3: 20% (Quadrotor Planning)
- assignment4: 20% (Exploration)
- 10% Project
- 2%: form groups and upload project proposal by Feb. 20
- Upload a document containing bullet points of the following information for your project:
- Motivation
- Related work
- Approach you will implement
- Evaluation
- Anticipated results
- Upload a document containing bullet points of the following information for your project:
- 2%: upload checkpoint document by March 18
- 1-2 paragraphs on what was completed and what needs to be finished
- 6%: final project presentation (Apr. 17, Apr. 22, Apr. 24)
- 2%: form groups and upload project proposal by Feb. 20
Homework
Five mandatory assignments will be provided during the semester. All homework will be distributed using GitHub and collected using AutoLab. AutoLab will enable auto-grading and feedback for students to help them finalize submissions. Grades will be returned within one week of homework due dates.
Project
Students will be required to work together in teams of 2-4 to complete a group project. The project will be worth 10% of the final grade. 2% of that grade will come from group formation and uploading a project proposal by Feb. 20 containing bullet points of the motivation, related work, approach, evaluation, and anticipated results. 2% of the grade will come from uploading a checkpoint document by March 18. The remaining 6% will come from the final project presentation, which is scheduled on the last 3 days of class.
Previous Course Offerings
Mobile Robots by Wennie Tabib, Spring 2024