Skip to main content Skip to secondary navigation

ME 326: Collaborative Robotics

Main content start

This course focuses on how robots can be effective teammates with other robots and human partners. Concepts and tools will be reviewed for characterizing task objectives, robot perception and control, teammate behavioral modeling, inter-agent communication, and team consensus. We will consider the application of these tools to robot collaborators, wearable robotics, and the latest applications in the relevant literature. This is a project-based graduate course, with the implementation of algorithms in either python or C++. Recommended Prerequisite: AA 274A: Principles of Robot Autonomy I

Course Github page: 



me326 structure

Course Structure

The course includes a lecture component where concepts of robot autonomy and collaborative robotics are introduced. During class, students have reading group discussions, where each group discusses 2-3 papers that week from the assigned reading and write summaries in the course slack channel. There are coding-based homework's that review concepts of robotic autonomy, perception and machine learning. There is a group project, where students program a physical robot for a collaborative task. There is an individual project where students propose a research project and present the project to the class at the end of the course.

Group Project: 


Project Description. The config file provided by the oracle (teaching team) will hold the resources that must be gathered, but these will be uncorrelated with the stations, and it will be the collaborative task to determine where to gather each resource

The goal of this project is for two robots to collaborate on a resource gathering task without the use of digital communication. Each team will only be able to manipulate certain colored blocks, indicated to that team at runtime. Additionally, a config file will be provided that indicates the following:

• The configuration of resources (blocks), indicating the number of each block at a station, (the station at which the resource is gathered is not specified), and for a robot ID, which resources (blocks) the robot is allowed to manipulate.

• The station tags will also be provided, but their location within the environment is variable and must be observed.

• A tag will be placed in the center of the arena to indicate the bounds of the ‘world’

ME 326 Course Schedule