COURSE: FALL 2021 CS 498 GC
Mobile Robotics for Computer Scientists
Announcements:Make sure you check Piazza and Canvas for latest announcements
- Girish Chowdhary, Office: CSL 150, Email: firstname.lastname@example.org
- Programming asiignment Lead TA: Dr. Andres Baquero, Email: email@example.com
- The class meets Monday and Wednesday 9:30 AM to 10:45 AM In Person: 156 Henry Administration Bldg
- The class counts for 3 credits, and includes several programming assignments. There is a 4 credit version for graduate students which includes a project.
Instructor's Office Hours
- Half hour before and after class or by appointment
TA's Office Hours
- Location: online
- Times: TBA
This course will introduce students to foundational principles of mobile robotics with a view towards development of robot software. Topics covered will be dynamic modeling, coordinate transformations, principles of operations of different sensors, sensor fusion algorithms including Kalman filters, introduction to Simultaneous Localization and Mapping, and introduction to feedback control for robotics. Prerequisite of CS 225 suggested.
This course will draw from a number of texts, in addition to notes supplied by the instructor. I do not expect that you will be purchasing all of these texts, but if you are interested in building a robotics library, these texts will be the right ones to invest in. I will provide scans and summaries where appropriate on Piazza. In addition, a number of papers will are included in the required reading.The primary texts utilized are:
- Primary text: Siegwart et al., Autonomous Mobile Robots, electronic version available in UIUC library
- Kuipers, Quaternions and Rotation Sequences
- Farrell, Aided Navigation, GPS with high-rate Sensors
- Murphy R., Introduction to AI for Robotics
- Instructor notes
- Murphy R., Robotics Through Science Fiction: Artificial Intelligence Explained Through Six Classic Robot Short Stories
- Dudek and Jenkin, Computational Principles of Mobile Robotics
This section of the syllabus explains the motivation behind the creation of this course and what you can expect to get out of it.
Robots are computerized systems that perceive and understand the world around them and are capable of navigating the world or manipulating objects to perform tasks. Robots embody intelligence through programmed software-hardware interactions. Unlike a typical computer, robots are able to reposition themselves and manipulate their environments.
The last century has seen an unprecedented growth in manufacturing productivity and quality largely due to the advent of factory-based robots. These robots accomplish complex manufacturing and assembly tasks in structured and highly controlled indoor environments. In contrast, mobile robots can maneuver themselves to locations where tasks need to be done. This opens the possibility of tackling a much broader variety of tasks in the real-world, outdoor, or loosely structured environments, which are not controlled, and in some cases can be harsh, full of uncertainty, and dynamically changing.
The next age in robotics will be enabled by rapid and profound advances in mobile robotics. The objective of this course is to prepare students in the foundations of mathematical principles, computational algorithms, and systems architecture aspects to enable them to design the next generation of mobile and outdoor robots that accomplish complex tasks in the face of high level of uncertainty.This course has been created to teach students with programming experience how to develop software for mobile robots. The emphasis in this course is on understanding underlying scientific and engineering principles for the design and automation of mobile field robots, and how to use them to create robust robotic cyber-physical systems.
Module Slides & NOTES (currently based heavily off of ABE/ECE 426, subject to change during the semester)
- Coordinate frame transformations
- Quaternions and mobile robot dynamics
- SLAM [Download]
- Mobile Robot Control [Download]
Following University policy, all students are required to engage in appropriate behavior to protect the health and safety of the community, including wearing a facial covering properly, maintaining social distance (at least 6 feet from others at all times), disinfecting the immediate seating area, and using hand sanitizer. Students are also required to follow the campus COVID-19 testing protocol.
Students who feel ill must not come to class. In addition, students who test positive for COVID-19 or have had an exposure that requires testing and/or quarantine must not attend class. The University will provide information to the instructor, in a manner that complies with privacy laws, about students in these latter categories. These students are judged to have excused absences for the class period and should contact the instructor via email about making up the work.
Students who fail to abide by these rules will first be asked to comply; if they refuse, they will be required to leave the classroom immediately. If a student is asked to leave the classroom, the non-compliant student will be judged to have an unexcused absence and reported to the Office for Student Conflict Resolution for disciplinary action. Accumulation of non-compliance complaints against a student may result in dismissal from the University.