|Table of Contents|
Labs & Assignments
This course includes written theory homework assignments and lab assignments. Roughly, the homework assignments and the labs are due in alternating weeks.
In the labs, you will design and program robot controllers for increasingly more difficult challenges. You will start with developing a robot controller for a simple task (moving on a rail without any obstacles). Throughout the course of this semester, you will make your robot controller increasingly more sophisticated until it can master free motion in two dimensions, like, e.g., a corridor of a building. Your controller will need to reach its goal position but without colliding with any obstacles.
You do not need to build the robotic hardware but will build CPS programs and controllers instead.
The mathematical theory behind core CPS principals will be covered in 5 written homework assignments, as well as a midterm and final exam.
Students will also demonstrate a working knowledge of the theory by designing autonomous robot controllers in a series of 5 lab assignments. Students will prove that their robots always operate within safety specifications, even when malicious robots (called rogue-bots) designed by other students are added to the environment. We may hold occasional simulation contests to test the efficiency of students' controllers as well as their safety. The 5th and final lab will be open-ended, allowing students to creatively demonstrate what they have learned in a self-defined final course project.
Lab ScheduleHere is an outline of the lab schedule:
- Lab 1a: Robot on Rails (Autobots, Roll Out)
- Lab 1b: Robot on Rails (Charging Station)
- Lab 2a: Follow the Leader, Robot on Highways (with event-driven control)
- Lab 2b: Follow the Leader, Robot on Highways (with time-triggered control)
- Lab 3a: Robot on Racetracks (stay on the circular racetrack)
- Lab 3b: Robot on Racetracks (slow down to avoid collisions)
- Lab 4a: Robot in a Plane (motion with obstacle avoidance)
- Lab 4b: Robot in a Plane (avoiding collisions with Roguebot and moving obstacles)
- Final project lab 5: Robot in Star-lab (self-defined course project entering the CPS V&V Grand Prix
Betabots and VeribotsBefore you submit your final robot (your Veribot), you will also submit a Betabot, which is a beta-version of your robot controller that you conjecture to be safe. Unlike your final robot submission, the Veribot, your Betabot does not need to be verified. In later labs, you may also have the opportunity to submit Rogue-Bots, which are robot controllers that make life difficult for the robots submitted by the other students. So we hope the course will be fun. And that you will learn to distinguish safe from unsafe CPS designs.
The robot controllers that you implement will be autonomous controllers that have to work under all circumstances. Below we just show a few example scenarios with a particular example of an obstacle.
|Lab 1a||Autobots, Roll Out|
|Lab 1b||Charging Station|
|Lab 2||Follow the Leader|
|Lab 3||Robots on Racetracks|
|Lab 4a||Static Obstacles|
|Lab 4b||Dynamic Obstacles|