SLAM Flashcards
When is SLAM used?
- need autonomy
- no prior map
- don’t want to use GPS
SLAM assumptions
- map and localise at same time so assume only robot moves and world is static
Algorithm for SLAM
- robot starts has 0 uncertainty
- robot drives and uncertainty grows
- robot initialises obstacles
- obstacles inherit uncertainty of robot + extra
- robot goes back to start uncertainty grows
- robot remeasures start position, uncertainty decreases
- robot remeasures one obstacle, uncertainty of both decrease
Limits of SLAM
- poor computational scaling
- growth in uncertainty
- data association hard at high uncertainty
Large scale SLAM algorithm
- local metric mapping - estimate trajectory and make local map
- place recognition - loop closure
- map optimisation - optimise closed loops
How does loop closure detection work
save images at regular intervals and use image retrieval
How does pure topological SLAM work?
keep record of places visited and how they connect without explicit geometry info
What is pose graph optimisation?
computes set of node positions which is maximally probable given metric and topological constraints
What are factor graphs?
- each factor is likelihood of one measurement (dot)
- factors depend on subset of variables (circles) in graph
- total likelihood of all measurements is product of all factors
How does factor graph inference work?
find most probable variable values given measurements
What are methods of factor graph inference?
global batch optimisation: gradient of likelihood w.r.t. variables and adjust until maximum
incremental filtering
incremental peice-wise optimisation
distributed inference via Gaussian Belief Propagation