Planning / Search + sampling

Motion planning in 3D

Compared a grid-based A* planner with a library-backed RRT* implementation across bounded 3D obstacle environments.

Three-dimensional maze with a planned red path from start to goal
Context
ECE 276B course project
Methods
A* / RRT* / AABB collision checks
Artifacts
Code + report

01 / Problem

Find collision-free paths through bounded 3D space.

The environment is represented by a rectangular workspace and axis-aligned bounding-box obstacles. Given start and goal coordinates, the planner must return a feasible path while balancing path length, search effort, and the representation of free space.

02 / What I built

Two planning approaches with a shared collision model.

Grid-based A*

I discretized the workspace, used accumulated path cost plus Euclidean goal distance to prioritize nodes, and reconstructed the path through parent pointers. A* is optimal on the chosen discretized graph when the heuristic and edge costs satisfy the required conditions; that does not imply optimality in the original continuous space.

Library-backed RRT*

I integrated the rrt-algorithms Python library for sampling-based planning and connected it to the project environment. The project work included setup, environment integration, collision checking, and evaluation rather than a ground-up RRT* implementation.

Collision checking

Line segments were tested against axis-aligned bounding boxes so candidate edges could be rejected before entering a returned path.

03 / Results

Compared behavior across several obstacle layouts.

The course experiments covered simple environments and more cluttered mazes, rooms, and tower-like layouts. The report and repository contain the configurations and outputs. Quantitative comparisons are omitted because the original metric definitions were not documented consistently.

Limitations: A coarse grid can erase narrow passages, while a fine grid increases search cost. Sampling-based results vary with random samples and planner settings.

04 / Limits + next experiment

Representation choices shape the answer.

  • A* quality and computation depend on grid resolution and connectivity.
  • RRT* is stochastic and the implementation relies on a third-party planner library.
  • The work uses geometric point-robot planning rather than full vehicle dynamics.

A useful next experiment would define a fixed benchmark suite and report success rate, path length, clearance, and runtime over repeated seeded trials.