navigation and planning
relative to other locations
path planning
self localisation

mapping from the real world to some internal representation
PID controller Proportional Integrative and Derivative
See resource on odometry

these get translated to right and left wheel velocities
this is what guides the robot from where it is to where it needs to go
generate a series of x, y values to guide a robot
self localization
path planner

path planning is different from trajectory planning
aerial drones have 6 degrees of freedom pitch, roll and yaw

balance shorter term goals with long term for path planning
path planning is a subset of trajectory planning


exploration of environment
position estimation using robot pose
sensor values interpret (LIDAR, sonar, vision, etc.)
integration of sensor values into map (based on distance from robot and pose estimation of robot)
what happens to table? robot can go underneath. the choice is with you

divide into grids
binary (occupied/not occupied) within each cell

B = length between the wheels
The robot follows the negative gradient of the total potential field, effectively moving along the path of least resistance, avoiding the obstacle and seeking the target point.
🤔 ❓disadvantage
need to know map before you setup potential field
what will happen when you change target
all stored in memory
number of cells required ; how will this scale as you go to bigger environments

A* algorithm
Dijkstra
compute path that avoids obstacles
grid size depends on lots of factors
🤔 ❓what are the advantages of grid based vs. potential methods
more flexible
if there is new obstacle, then recompute all vectors/fields
🤔 ❓what is the most important thing to have in order to have a successful navigating robot?
Answer: you need a map
without a map, there is no way to navigate and collide with object


Sampling-based motion planning is a fundamental approach in modern robotics used to find collision-free paths in complex or high-dimensional environments. Rather than explicitly computing the exact boundaries of all obstacles, sampling-based algorithms approximate the reachable space by probing it with discrete random points.
Before planning a path, the robot’s physical body and environment are represented within a mathematical space called the Configuration Space ($C\text{-Space}$):
Goal: Find a continuous trajectory $P(t) \in C_{free}$ connecting a start configuration $q_{start}$ to a goal configuration $q_{goal}$.
PRM is a multi-query algorithm best suited for static environments where multiple path queries will be performed.
RRT is a single-query algorithm designed to quickly discover paths from a specific start state by growing a tree into unexplored areas.