Skip to content

Yale-BIM/f25-assignments

Repository files navigation

CPSC-4590/5590 Fall 2025. Assignments

Assignment repository for Yale's CPSC-4590/5590 Building Interactive Machines (Fall 2025).

General Instructions

To get started with a given assignment, see the README.md file within the assignment directory.

For Assignments 1-2, it is essential that you have completed the two set of set up instructions that are included in this repository:

  1. SETUP0_ROSWorkspace.md
  2. SETUP1_GitAssignmentRepo.md

The first set of instructions will help you create your ROS 2 workspace in Ubuntu 24.04 and will explain how ROS 2 packages are organized in general. Additionally, you will be able to test out Shutter's simulation right away! The second set of instructions explain how to setup a GitHub repository and the general procedure that should be followed by students when working on course assignments. Follow these instructions carefully before beginning the first assignment.

Background Knowledge

If you do not have much experience working with a Linux shell, please read this introduction to bash by R. Toal and What Is The Bashrc File Used For? by G. Newell. At the bare minimum, you should be familiar with the commands cd, ls, rm, mkdir, echo, nano before starting any of the assignments.

Where to find more information about ROS 2?

You can read about ROS 2 in its documentation. Additional tutorials than those referenced in this repository can be found in this page of the documentation. Questions (and answers) to common problems or issues with ROS 2 can also be found in https://answers.ros.org/questions/.

Honor Code

Programming assignments are your individual responsibility.

You can discuss assignment problems with the instructor, the teaching staff and other students. However, students should not copy code or answers for the assignments from others, nor allow their work to be copied.

You may consult AI to understand bugs and how ROS works. However, code that is fully implemented by ChatGPT etc may not be submitted. We submit all questions to ChatGPT before the assignment is circulated, so we know what those answers look like. That said, we will not go to great lengths to uncover such violations for the assignments, and we won’t worry about ambiguous situations.  The purpose of the assignments is to learn the material, and to practice answering the kinds of questions that will appear on the corresponding tests. So while it might be possible to spend less time and get better grades on the assignments themselves by submitting the work of others (human or artificial), in the long run this approach will result in the student spending more time and/or or doing less well on the course as a whole, and is thus a losing strategy.

For every assignment, you need to submit a report that documents:

  1. which people you discussed your assignment with;
  2. which AI tool (if any) you used while working on your assignment; and
  3. how you used the AI tool.

About

Assignments for Fall 2025

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors