Cobot Logo

Collaborative Robotics

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.

Link to Stanford Explore Courses

Course Components

Lecture

~60/90min lectures, covering topics of tools necessary for collaborative robotics.

Homework

Primarily coding: (Jupyter Notebook - Python).
Simulated concepts demonstrated through curated, code examples.

Literature Group Discussion

~30/90min group discussions, based on relevant reading.
Small group discussion on select papers with a larger group summary period.

Project

Group Project: Groups of 4-5 students work together to program a physical robot ROS (Python or C++) for a collaborative robot task.
Individual Project: Students propose a research project, written in IEEE conference format, leveraging class concepts.

Winter 2024 Group Project Description

This year, the goal of the project will be to make a mobile robot an effective collaborator and assistant for a human counterpart. Our class will use the Trossen Robotics Locobot platform which consists of a mobile base, 6 degree of freedom arm, and head mounted camera.

In this project, you will use natural communication methods (e.g. natural language, or gestures) to communicate an intended task to the robot. You will use robot perception (vision) to perceive the environment, audio to hear from the person, and use existing libraries (or those you may develop) to take this input and determine the task the human is requesting, then using computer vision, perceive the environment, then control the motion of the robot to complete the requested task.

The three tasks that every team must complete are

  1. Object Retrieval: you will use language to request the object bring a desired object back to a particular location (e.g. “locate the apple in the scene and retrieve it”). The robot must interpret this verbal command, scan the scene, locate the apple in a cluttered environment, navigate to the apple, then pick it with the manipulator and return to the starting position
  2. Sequential Task: In this task, you use natural language to request a series of actions be performed in the environment. For instance, for cleaning, you may ask that the object locate an object (e.g. a red apple) and place it in a brown basket located in the scene: “find the red apple and place it in the basket”
  3. Group Chosen Task: In this task, your team will be given the freedom to pick your own collaborative task (you will propose and have it approved by the teaching team by week 4). Your task should involve perception, planning and control and have some real-world potential value
Collaborative Robotics project description 2024 project process diagram 2024

Past Course Project Pages

Winter 2024 Team Websites

Winter 2023 Team Websites