# Path-finding algorithm, Shortest Path, A* Path

### Optimizing Robot Path-Finding for Brick-Laying in Architectural Projects

Hello everyone,

I’m seeking assistance with a path-finding algorithm for a university architectural project. The project involves using a robot with a pick/place end-effector to stack bricks. While the robotic pick and place is already done and the mechanism functions well, I’m struggling to determine the most optimal path for the robot to take around the floor plan in order to start the brick-laying process.

#### Project Scenario:

The project involves several walls placed separately on a floor plan. The goal is to identify the most efficient order or a schedule in which the robot should lay bricks. This involves considering the floor plan, the start position or first wall, and future walls (bricks) yet to be placed.

Proposed Path-Finding Strategy and Wall Scheduling:

1. Traversal Area Definition:
• Define the bounds of the traversal area using a curve boundary.
• Break this area into a point grid representing possible robot crawler positions.
• Ensure the robot crawler’s fixed dimensions allow it to navigate without collisions.
1. Algorithm Utilization:
• Implement the A* Heuristic algorithm to determine the most efficient travel path between points A and B.
• Integrate collision detection by accounting for the robot’s dimensions and the walls being constructed.
• As walls are constructed, remove possible travel nodes, considering the space required for the crawler’s movement.
1. Floorplan Integration:
• 2D Wall Surfaces on the Ground: Representing the entire floor plan and the initial layout of walls.
• Walls Being Constructed: Real-time updates on walls currently under construction, affecting travel paths.
• Walls Yet to be Constructed: Future construction areas that will eventually become obstacles.

Traversing an Existing Schedule:

With the boundary set, wall paths drawn, and construction order assigned:

• The robot will move from patch to patch using the path-finding algorithm, taking into account its crawler tracks.
• Each move will consider the crawler’s dimensions to avoid collisions with already constructed walls.

I hope I explained the problem clearly!
Any insights or suggestions on refining this algorithm or approach would be greatly appreciated. Thank you!