Presentation is loading. Please wait.

Presentation is loading. Please wait.

Simultaneous Localization and Mapping

Similar presentations


Presentation on theme: "Simultaneous Localization and Mapping"โ€” Presentation transcript:

1 Simultaneous Localization and Mapping
SLAM Simultaneous Localization and Mapping

2 Reinforcement learning to combine different map representations
Occupancy Grid Feature Map Localization Particle filters FastSLAM Reinforcement learning to combine different map representations

3 Occupancy grid / grid map
Simple black-white picture Good for dense places

4 Feature map Good for sparse places

5 Localization Map is known sensors data and robots kinematics is known
Determine the position

6 Localization Discrete time ๐œƒ โ€“ landmarks position
๐‘  ๐‘ก - robots position ๐‘ข ๐‘ก - control ๐‘ง ๐‘ก - sensor information ๐‘  1 ๐‘ข 1 ๐‘ง 1 โ†’ ๐‘  2 ๐‘  2 ๐‘ข 2 ๐‘ง 2 โ†’ ๐‘  3

7 Particle filter requirements
Motion model ๐‘ ๐‘  ๐‘ก ๐‘ข ๐‘ก , ๐‘  ๐‘กโˆ’1 ) If current position is (๐‘ฅ,๐‘ฆ) and the robot movement is ๐‘‘๐‘ฅ, ๐‘‘๐‘ฆ new coordinates are (๐‘ฅ+๐‘‘๐‘ฅ, ๐‘ฆ+๐‘‘๐‘ฆ) + noice Usually the noise is Gaussian

8 Particle filter requirements
Measurement model ๐‘ ๐‘ง ๐‘ก ๐‘  ๐‘ก , ๐œƒ, ๐‘› ๐‘ก ) ๐œƒ โ€“ collection of landmark position ๐œƒ 1 , ๐œƒ 2 , โ€ฆ ๐œƒ ๐พ ๐‘› ๐‘ก - landmark observed at time ๐‘ก In simple case each landmark is uniquely identifiable

9 Particle filter We have N particles
Each particle is simply current position For each particle: Update its position using motion model Assign a weight using measurement model Normalize importance weights such that their sum is 1 Resample N particles with probabilities proportional to the weight

10 Particle filter code

11 SLAM In SLAM problem we try to build a map. Most common methods:
Kalman filters (Normal distribution in high-dimensional space) Particle filter (what a particle represents here?)

12 FastSLAM We try to determine robot and landmarks locations based on control and sensor data N particles Robot position Gaussian distribution for each of K landmarks Time complexity O ๐‘ log ๐พ Space complexity - ?

13 FastSLAM If we know the path ( ๐‘  1 โ€ฆ ๐‘  ๐‘ก ) ๐œƒ 1 and ๐œƒ 2 are independent

14 FastSLAM ๐‘ ๐‘  ๐‘ก , ๐œƒ ๐‘ง ๐‘ก , ๐‘ข ๐‘ก , ๐‘› ๐‘ก )=๐‘ ๐‘  ๐‘ก ๐‘ง ๐‘ก , ๐‘ข ๐‘ก , ๐‘› ๐‘ก )โˆ ๐‘ ๐œƒ ๐‘˜ ๐‘  ๐‘ก , ๐‘ง ๐‘ก , ๐‘ข ๐‘ก , ๐‘› ๐‘ก ) We have K+1 problems: Estimation of the path Estimation of landmarks location made using Kalman filter.

15 FastSLAM Weights calculation:
Position of a landmark is modeled by Gaussian ๐‘ค ๐‘ก ~ ๐‘ ๐‘  ๐‘ก ๐‘ง ๐‘ก , ๐‘ข ๐‘ก , ๐‘› ๐‘ก ) ๐‘ ๐‘  ๐‘ก ๐‘ง ๐‘กโˆ’1 , ๐‘ข ๐‘ก , ๐‘› ๐‘กโˆ’1 ) ~ ๐‘ ๐‘ง ๐‘ก ๐œƒ ๐‘› ๐‘ก , ๐‘  ๐‘ก , ๐‘› ๐‘ก )๐‘( ๐œƒ ๐‘› ๐‘ก ) ๐‘‘ ๐œƒ ๐‘› ๐‘ก

16 FastSLAM FastSLAM saves landmark positions in a balanced binary tree.
Size of the tree is ๐‘‚ ๐พ Sampled particle differs from the previous one in only one leaf.

17 FastSLAM We just create new tree on top of the previous one.
Complexity ๐‘‚ log ๐พ Video 2

18 Combining different map representation
There are many ways how we represent a map How we can combine them? Grid map Feature map

19 Model selection Map parameters: Observation likelihood
For given particle we get likelihood of laser observation Average for all particles ๐ผ = 1 ๐‘ โˆ‘๐‘( ๐‘ง ๐‘ก | ๐œƒ ๐‘ก , ๐‘  ๐‘ก , ๐‘› ๐‘ก ) Between 0 and 1, large values mean good map ๐‘ ๐‘’๐‘“๐‘“ - effective sample size ๐‘ ๐‘’๐‘“๐‘“ = 1 โˆ‘ ๐‘ค 2 , here we assume that โˆ‘๐‘ค=1 It is a measure of variance in weight. Suppose all weights are the same, what is ๐‘ ๐‘’๐‘“๐‘“ ?

20 Reinforcement learning for model selection
SARSA (State-Action-Reward-State-Action) Actions: { ๐‘Ž ๐‘” , ๐‘Ž ๐‘“ } โ€“ use grid map of feature map States S = ๐ผ ร— ๐‘ ๐‘’๐‘“๐‘“ ๐‘“ < ๐‘ ๐‘’๐‘“๐‘“ ๐‘” ร—{๐‘“๐‘’๐‘Ž๐‘ก๐‘ข๐‘Ÿ๐‘’ ๐‘‘๐‘’๐‘ก๐‘’๐‘๐‘ก๐‘’๐‘‘} ๐ผ is divided into 7 intervals ( ) Feature detected โ€“ determines weather a feature was detected on current step. 7ร—2ร—2=28 states

21 Reinforcement learning for model selection
Reward: For simulations correct robot position is known. Deviation from the correct position gives negative reward. ๐œ–-Greedy, ๐œ–=0.6 Learning rate ๐›ผ=0.001 Discounting factor ๐›พ=0.9

22 The algorithm

23 The algorithm

24 Results

25 Multi-robot SLAM If the environment is large using only one robot is not enough Centralized approach โ€“ the map is merged than the entire environment is explored Decentralized approach โ€“ robots merge their maps than they meet each other

26 Multi-robot SLAM We need to transform frame of references.

27 Reinforcement learning for model selection
Two robots meat each other and decide how they share their information Actions ๐‘Ž ๐‘‘๐‘š - donโ€™t merge maps ๐‘Ž ๐‘š๐‘– - merge with simple transformation matrix ๐‘Ž ๐‘š๐‘” โ€“ use grid-based heuristic to improve transformation matrix ๐‘Ž ๐‘š๐‘“ - use feature-based heuristic

28 Reinforcement learning for model selection
States ๐ผ ๐‘” , ๐ผ ๐‘“ , ๐‘ ๐‘’๐‘“๐‘“ ๐‘ < ๐‘ 2 , ๐‘ ๐‘’๐‘“๐‘“ ๐‘œ < ๐‘ 2 3ร—3ร—2ร—2=36 states ๐ผ ๐‘” - confidence for the transformation matrix for grid- bases method, 3 intervals ( )

29 Reinforcement learning for model selection
Reward For simulations correct robot position is known โ€“ we can get cumulative error for robot position ๐‘Ÿ= ๐ธ ๐‘๐‘ข๐‘š ๐œ‡ โˆ’ ๐ธ ๐‘๐‘ข๐‘š ๐ธ ๐‘๐‘ข๐‘š ๐œ‡ - average cumulative error achieved by several runs where the robots immediately merge. ๐œ–- Greedy policy ๐œ–=0.1 ๐›ผ=0.001 ๐›พ=0.9

30 Results

31

32 References nar%20Day/Autonomous%20vehicles/theses/dinnissen -thesis.pdf ?via=ihub personal.acfr.usyd.edu.au/nebot/publications/slam/IJRR _slam.htm

33 Questions


Download ppt "Simultaneous Localization and Mapping"

Similar presentations


Ads by Google