This course provides a computer scientist’s perspective of how autonomous robots perceive the environment and plan their actions accordingly. Topics include: Coordinate Systems, Sensors for mobile robots, including cameras, wheel/motor sensors, obstacle avoiding sensors, etc., Localization of mobile robots and mapping of an environment (SLAM), Path/motion planning algorithms such as Bug, A*, D*, PRM, RRT etc., and multi-robot systems.
The students will learn about the above-mentioned techniques and implement a few of them in simulation using high-fidelity simulators like V-Rep, Webots, and/or Gazebo. Students will also gain experience in the Robot Operating System (ROS) and will potentially implement algorithms on real TurtleBot 3, AR Drone, or Bebop 2 robots as part of their final class projects.
Textbook | Correll, N. (2015). Introduction to Autonomous Robots-Kinematics, Perception, Localization and Planning (Free downloadable version on GitHub). (Required)
Siegwart, R., Nourbakhsh, I. R., Scaramuzza, D., & Arkin, R. C. (Second edition, 2011). Introduction to autonomous mobile robots. MIT press. (Recommended) LaValle, S. M. (2006). Planning algorithms. Cambridge University Press (Free downloadable version from the author’s website). (Recommended) |
Prerequisites | COP 3530/3538 Data Structures |
Student Outcomes | The student will:
1. Represent the position and orientation of a robot. 2. Understand and model various sources of noise in a robot’s perceptions. 3. Implement vision-based algorithms for object detection and obstacle avoidance. 4. Design techniques for mapping an environment. 5. Understand and implement state-of-the-art localization techniques. 6. Implement and optimize state-of-the-art path/motion planning algorithms. |
Tentative
Topics
|
– Introduction: History and Overview
– Locomotion and manipulation and their “degrees of freedom” – Coordinate systems and frames of reference – Different sensors used in mobile autonomous robots: Accelerometer, IMU, Gyroscope, GPS, laser, encoders etc. – Noise representation in sensors – Configuration space and its discretization – Path/motion planning algorithms: A*, D*, Sampling-based methods such as PRM, RRT etc. – Simultaneous localization and mapping (SLAM) – Multi-robot systems: coverage path planning, communication |