CSCE 452/752 Robotics and Spatial Intelligence, Spring 2026

Project 5

Note: The deadline for this project is April 28. Late submissions will be accepted without penalty until 11:59pm on April 30. The submission site will close at that time and will not reopen.

Overview and purpose

This assignment asks you to create software that produces occupancy grid maps based on robot sensor data. The purpose is to give you additional experience designing and implementing algorithms that overcome sensor data that is noisy and incomplete.

Your task

Here is a collection of bag files, all recorded by the same robot:
Project 5 Bag Files
Your job is to use the data recorded in these bag files to produce a map of the environment the robot is moving in.
An important part of this task will be to investigate what sort of data is available in the bag files. This information will be essential as you devise an algorithm to process that data into as complete and accurate map as the data allow.
Your system must publish a message on the topic
/map
at least once per second, based on the data available so far up to that point. Here is an example of what the final result might look like.
jmo
Your algorithm might produce slightly different results, especially near the edges of the obstacles.

What to submit

Three required parts:
  1. A PDF report including:
    1. A concise description of how the system works. This should be a couple of paragraphs, describing your overall approach at a conceptual level. Some questions to consider: What choices did you make in designing the program, and why? What nodes does your system contain, and what role does each one play? What specific constants are part of your method, and how did you select values for those constants?
    2. A short answer to these questions: Did the results meet your expectations? Why or why not?
  2. The source code for your program(s). This will span at least one source code files. Be sure to consult the source code style guide.
  3. Rosbag recordings of all topics throughout the entire execution of your program for each of the provided input bags numbered 1 through 8. The directory of each bag file must be named with your TAMU netid. followed by a dash, followed by the number of the input bag file. For example, your instructor's submission would include bag directories called
    jokane-1
    ,
    jokane-8
    , and so on. Incorrectly named bags cannot be graded.
One optional part:
  1. A short video demonstrating your system in some way that may be helpful in grading.