Learning library
Make the foundations concrete.
Build working knowledge of robotics and machine learning through examples you can change, calculations you can check, and data you can inspect.
Start with the map of machine learning fields to connect tasks, data, learning signals, and model choices.
99 lessons found
Foundations firstFoundations / 11 min read
Dijkstra’s algorithm: find the lowest-cost route
Trace Dijkstra’s algorithm through a weighted grid, update route estimates, and see why the goal must leave the priority queue before its cost is final. Reproduce a complete search in Python.
Foundations / 12 min read
A* search: guide the search with a lower bound
Use A* to find a low-cost route across a weighted grid. Calculate g, h, and f, compare Manhattan distance with Dijkstra, and see how an overestimate can return a worse path.
Foundations / 12 min read
Rapidly exploring random trees: grow a collision-free path
Build an RRT for a disk robot, check every new branch for collision, and connect the tree to a goal. Explore seeded sampling, step length, narrow passages, and the limits of a finite search budget.
Foundations / 13 min read
Probabilistic roadmaps: reuse a graph for new routes
Build a probabilistic roadmap from collision-free samples, attach new start and goal queries, and search the same graph for routes. Explore neighbor counts, missed connections, and what a finite roadmap can prove.
Foundations / 12 min read
RRT*: improve a path by rewiring the tree
Follow RRT* as it chooses cheaper parents, rewires nearby nodes, and updates every descendant's cost. Compare the first path with later improvements and understand what asymptotic optimality does and does not promise.
Foundations / 12 min read
Path smoothing: shorten a route with checked shortcuts
Shorten a robot path by removing unnecessary waypoints while checking every replacement segment for collision. Compare length and clearance, trace accepted and rejected shortcuts, and separate a simpler path from smooth robot motion.
Foundations / 14 min read
Differential-drive kinematics: from wheel rates to pose
Convert left and right wheel rates into robot speed, turning rate, and an exact constant-rate pose update. Explore straight travel, arcs, spins, and reverse motion, then check the limits of wheel odometry.
Foundations / 12 min read
Nonholonomic constraints: move sideways without sliding
Derive a wheeled robot’s no-sideways-slip constraint and trace a feasible maneuver that changes its lateral position. Separate instantaneous velocity limits from reachable poses, and see why the motion rules depend on the robot.
Foundations / 13 min read
Dubins paths: shortest routes with a turning limit
Connect two robot poses with forward motion and a minimum turning radius. Compare all six Dubins path families, calculate arc lengths, and see why matching position alone misses the heading constraint.
Foundations / 14 min read
Ackermann steering: calculate wheel angles and turning radius
Derive the inner and outer front-wheel angles for ideal Ackermann steering. Connect bicycle steering, wheelbase, and track width to turning radius, reverse motion, and the rear axle's path.
Foundations / 12 min read
Wheel odometry: turn encoder counts into a moving pose
Convert wheel encoder increments into a differential-drive robot's position and heading. Replay measured counts, calculate exact arc updates, and see how calibration errors and wheel slip change the estimate.
Foundations / 12 min read
Reeds–Shepp paths: shortest car routes with reverse gear
Add reverse travel to a car with a minimum turning radius. Read signed motion primitives, calculate a three-arc turnaround, and compare complete Reeds–Shepp solutions with forward-only Dubins paths.