Teaching

Fall quarters:
CS 409, ME 409 Swarms and Multi-Robot Systems
Advances in technology have begun to allow for the production of large groups, or swarms, of robots; however, there exists a large gap between their current capabilities and those of swarms found in nature or envisioned for future robot swarms. These deficiencies are the result of two factors, difficulties in algorithmic control of these swarms, and limitations in hardware capabilities of the individuals. This class surveys the state of the art research that addresses these deficiencies. Coursework includes reading research papers, student presentations and discussion of select papers, and a final project implementing studied topics in a real or simulated robot swarm.

Winter quarters:
CS 410, ME 410 Applied Mechatronics: Quadrotor Control and Design
Centered around a project where teams (1 to 2 students per team) create and program a visually-guided autonomous quadrotor robot, this class focuses on advanced embedded control of an electromechanical system. Topics include mechanical/electrical assembly, programming interfaces between an embedded computer (such as a Raspberry PI running Linux) and external sensors/actuators (such as an IMU, camera, or motor controllers), programming and tuning a timing-critical control loop for stable flight, using pre-existing computer vision software for tracking optical targets, and creating a software stack that interacts with low-level code to create a desired high level behavior.

Spring quarters:
CS 348 Intro to Artificial Intelligence
The goal of this course is to expose students to the basic ideas, challenges, techniques, and problems in artificial intelligence. Topics include strong (knowledge-based) and weak (search-based) methods for problem solving and inference, and alternative models of knowledge and learning, including symbolic, statistical and neural networks.