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.
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.