Robotic Agents (CMPSC 311) Robot Navigation Janyl Jumadinova - - PowerPoint PPT Presentation

robotic agents cmpsc 311
SMART_READER_LITE
LIVE PREVIEW

Robotic Agents (CMPSC 311) Robot Navigation Janyl Jumadinova - - PowerPoint PPT Presentation

Robotic Agents (CMPSC 311) Robot Navigation Janyl Jumadinova September 19, 2019 Janyl Jumadinova Robotic Agents (CMPSC 311) September 19, 2019 1 / 31 Do we need to localize or not? To go from A to B , does the robot need to know where it is?


slide-1
SLIDE 1

Robotic Agents (CMPSC 311)

Robot Navigation Janyl Jumadinova September 19, 2019

Janyl Jumadinova Robotic Agents (CMPSC 311) September 19, 2019 1 / 31

slide-2
SLIDE 2

Do we need to localize or not?

To go from A to B, does the robot need to know where it is?

Janyl Jumadinova Robotic Agents (CMPSC 311) September 19, 2019 2 / 31

slide-3
SLIDE 3

Do we need to localize or not?

To go from A to B, does the robot need to know where it is?

Janyl Jumadinova Robotic Agents (CMPSC 311) September 19, 2019 2 / 31

slide-4
SLIDE 4

Do we need to localize or not?

How to navigate between A and B: navigation without hitting obstacles, detection of goal location.

Janyl Jumadinova Robotic Agents (CMPSC 311) September 19, 2019 3 / 31

slide-5
SLIDE 5

Do we need to localize or not?

How to navigate between A and B: navigation without hitting obstacles, detection of goal location. Possible by always following the left wall

Janyl Jumadinova Robotic Agents (CMPSC 311) September 19, 2019 3 / 31

slide-6
SLIDE 6

Do we need to localize or not?

How to navigate between A and B: navigation without hitting obstacles, detection of goal location. Possible by always following the left wall

  • However, how to detect that the goal is reached?

Janyl Jumadinova Robotic Agents (CMPSC 311) September 19, 2019 3 / 31

slide-7
SLIDE 7

Do we need to localize or not?

Following the left wall is an example of behavior-based navigation. It can work in some environments, but not in all.

Janyl Jumadinova Robotic Agents (CMPSC 311) September 19, 2019 4 / 31

slide-8
SLIDE 8

Do we need to localize or not?

Following the left wall is an example of behavior-based navigation. It can work in some environments, but not in all. With which accuracy and reliability do we reach the goal?

Janyl Jumadinova Robotic Agents (CMPSC 311) September 19, 2019 4 / 31

slide-9
SLIDE 9

Do we need to localize or not?

As opposed to behavior-based navigation is map-based navigation. Assuming that the map is known, at every time step the robot has to know where it is. How?

Janyl Jumadinova Robotic Agents (CMPSC 311) September 19, 2019 5 / 31

slide-10
SLIDE 10

Do we need to localize or not?

As opposed to behavior-based navigation is map-based navigation. Assuming that the map is known, at every time step the robot has to know where it is. How? If we know the start position, we can use wheel odometry or previous position and estimated speed.

Janyl Jumadinova Robotic Agents (CMPSC 311) September 19, 2019 5 / 31

slide-11
SLIDE 11

Do we need to localize or not?

As opposed to behavior-based navigation is map-based navigation. Assuming that the map is known, at every time step the robot has to know where it is. How? If we know the start position, we can use wheel odometry or previous position and estimated speed. Is this enough? What else can we use?

Janyl Jumadinova Robotic Agents (CMPSC 311) September 19, 2019 5 / 31

slide-12
SLIDE 12

Do we need to localize or not?

As opposed to behavior-based navigation is map-based navigation. Assuming that the map is known, at every time step the robot has to know where it is. How? If we know the start position, we can use wheel odometry or previous position and estimated speed. Is this enough? What else can we use? How do we represent the map for the robot? And how do we represent the position of the robot in the map? (return to this later)

Janyl Jumadinova Robotic Agents (CMPSC 311) September 19, 2019 5 / 31

slide-13
SLIDE 13

How to localize?

Localization based on external sensors, beacons or landmarks. Odometry. Map Based Localization (without external sensors or artificial landmarks; just using robot onboard sensors)

  • Example: Probabilistic Map Based Localization

Janyl Jumadinova Robotic Agents (CMPSC 311) September 19, 2019 6 / 31

slide-14
SLIDE 14

Beacon Based Localization

The beacons are fixed at appropriate locations in the environment. The precise locations of these beacons are known to the robot. As it moves, it uses some on-board device to measure its exact distance and direction from any one beacon. Hence the robot can calculate its own precise position in the environment.

Janyl Jumadinova Robotic Agents (CMPSC 311) September 19, 2019 7 / 31

slide-15
SLIDE 15

Beacon Based Localization

The beacons are fixed at appropriate locations in the environment. The precise locations of these beacons are known to the robot. As it moves, it uses some on-board device to measure its exact distance and direction from any one beacon. Hence the robot can calculate its own precise position in the environment.

  • Ex. 1: Poles with highly reflective surface and a laser for detecting them
  • Ex. 2: Coloured beacons and an omnidirectional camera for detecting

them (example: RoboCup or autonomous robots in tennis fields)

Janyl Jumadinova Robotic Agents (CMPSC 311) September 19, 2019 7 / 31

slide-16
SLIDE 16

Odometry

Dead reckoning (also deduced reckoning or odometry) is the process

  • f calculating vehicle’s current position by using a previously

determined position and estimated speeds over the elapsed time.

Odometry: wheel sensors only Dead reckoning: also heading sensors

Robot motion is recovered by integrating proprioceptive sensor velocities readings.

Janyl Jumadinova Robotic Agents (CMPSC 311) September 19, 2019 8 / 31

slide-17
SLIDE 17

Odometry

Dead reckoning (also deduced reckoning or odometry) is the process

  • f calculating vehicle’s current position by using a previously

determined position and estimated speeds over the elapsed time.

Odometry: wheel sensors only Dead reckoning: also heading sensors

Robot motion is recovered by integrating proprioceptive sensor velocities readings. Pros: Straightforward Cons: Errors are integrated → unbound Heading sensors (e.g., gyroscope) help to reduce the accumulated errors but drift remains.

Janyl Jumadinova Robotic Agents (CMPSC 311) September 19, 2019 8 / 31

slide-18
SLIDE 18

The Problem

Consider a mobile robot moving in a known environment.

Janyl Jumadinova Robotic Agents (CMPSC 311) September 19, 2019 9 / 31

slide-19
SLIDE 19

The Problem

Consider a mobile robot moving in a known environment. As it starts to move, say from a precisely known location, it might keep track of its location using odometry.

Janyl Jumadinova Robotic Agents (CMPSC 311) September 19, 2019 9 / 31

slide-20
SLIDE 20

The Problem

Consider a mobile robot moving in a known environment. As it starts to move, say from a precisely known location, it might keep track of its location using odometry. However, after a certain movement the robot will get very uncertain about its position → update using an observation of its environment.

Janyl Jumadinova Robotic Agents (CMPSC 311) September 19, 2019 9 / 31

slide-21
SLIDE 21

The Problem

Consider a mobile robot moving in a known environment. As it starts to move, say from a precisely known location, it might keep track of its location using odometry. However, after a certain movement the robot will get very uncertain about its position → update using an observation of its environment. Observation leads also to an estimate of the robot position which can then be fused with the odometric estimation to get the best possible update of the robots actual position.

Janyl Jumadinova Robotic Agents (CMPSC 311) September 19, 2019 9 / 31

slide-22
SLIDE 22

Map-based localization

Consider a mobile robot moving in a known environment.

Janyl Jumadinova Robotic Agents (CMPSC 311) September 19, 2019 10 / 31

slide-23
SLIDE 23

Map-based localization

Consider a mobile robot moving in a known environment. As it starts to move, say from a precisely known location, it can keep track of its motion using odometry.

Janyl Jumadinova Robotic Agents (CMPSC 311) September 19, 2019 11 / 31

slide-24
SLIDE 24

Map-based localization

Consider a mobile robot moving in a known environment. As it starts to move, say from a precisely known location, it can keep track of its motion using odometry.

Janyl Jumadinova Robotic Agents (CMPSC 311) September 19, 2019 12 / 31

slide-25
SLIDE 25

Map-based localization

Consider a mobile robot moving in a known environment. As it starts to move, say from a precisely known location, it can keep track of its motion using odometry.

Janyl Jumadinova Robotic Agents (CMPSC 311) September 19, 2019 13 / 31

slide-26
SLIDE 26

Map-based localization

Consider a mobile robot moving in a known environment. As it starts to move, say from a precisely known location, it can keep track of its motion using odometry. The robot makes an observation and updates its position and uncertainty.

Janyl Jumadinova Robotic Agents (CMPSC 311) September 19, 2019 14 / 31

slide-27
SLIDE 27

Probabilistic Map-based localization

Probability theory → error propagation, sensor fusion. Belief representation (map/position) → discrete / continuous. Motion model → odometry model. Sensing → measurement model.

Janyl Jumadinova Robotic Agents (CMPSC 311) September 19, 2019 15 / 31

slide-28
SLIDE 28

Probabilistic Reasoning

Janyl Jumadinova Robotic Agents (CMPSC 311) September 19, 2019 16 / 31

slide-29
SLIDE 29

Probabilistic Map Based Localization

Markov Localization

Janyl Jumadinova Robotic Agents (CMPSC 311) September 19, 2019 17 / 31

slide-30
SLIDE 30

Markov Localization

Markov localization uses an explicit, discrete representation for the probability of all positions in the state space.

Janyl Jumadinova Robotic Agents (CMPSC 311) September 19, 2019 18 / 31

slide-31
SLIDE 31

Markov Localization

Markov localization uses an explicit, discrete representation for the probability of all positions in the state space. Usually represent the environment by a finite number of (states) positions:

  • Grid
  • Topological Map

Janyl Jumadinova Robotic Agents (CMPSC 311) September 19, 2019 18 / 31

slide-32
SLIDE 32

Markov Localization

Markov localization uses an explicit, discrete representation for the probability of all positions in the state space. Usually represent the environment by a finite number of (states) positions:

  • Grid
  • Topological Map

At each iteration, the probability of each state of the entire space is updated.

Janyl Jumadinova Robotic Agents (CMPSC 311) September 19, 2019 18 / 31

slide-33
SLIDE 33

Markov Localization

We assume in localization the Markov Property holds true.

Janyl Jumadinova Robotic Agents (CMPSC 311) September 19, 2019 19 / 31

slide-34
SLIDE 34

Markov Localization

We assume in localization the Markov Property holds true. Markov Property (memorylessness) A stochastic process satisfies the Markov Property if it is conditional only

  • n the present state of the system, with its future and past being

independent.

Janyl Jumadinova Robotic Agents (CMPSC 311) September 19, 2019 19 / 31

slide-35
SLIDE 35

Markov Localization

We assume in localization the Markov Property holds true. Markov Property (memorylessness) A stochastic process satisfies the Markov Property if it is conditional only

  • n the present state of the system, with its future and past being

independent. Future sensor readings are conditionally independent of past readings, given the true current position of the robot.

Janyl Jumadinova Robotic Agents (CMPSC 311) September 19, 2019 19 / 31

slide-36
SLIDE 36

Markov localization: Case Study

Time steps taken from an example of the robot Minerva navigating around the Smithsonian. In the following figures:

  • Left side shows belief state. Darker means higher probability.
  • Right side shows actual robot position and sensor measurements.

Figures courtesy of W. Burgard

Janyl Jumadinova Robotic Agents (CMPSC 311) September 19, 2019 20 / 31

slide-37
SLIDE 37

Markov Localization Case Study - Grid Map

Museum: Laser Scan 1

Janyl Jumadinova Robotic Agents (CMPSC 311) September 19, 2019 21 / 31

slide-38
SLIDE 38

Markov Localization Case Study - Grid Map

Museum: Laser Scan 2

Janyl Jumadinova Robotic Agents (CMPSC 311) September 19, 2019 22 / 31

slide-39
SLIDE 39

Markov Localization Case Study - Grid Map

Museum: Laser Scan 3

Janyl Jumadinova Robotic Agents (CMPSC 311) September 19, 2019 23 / 31

slide-40
SLIDE 40

Markov Localization Case Study - Grid Map

Museum: Laser Scan 13

Janyl Jumadinova Robotic Agents (CMPSC 311) September 19, 2019 24 / 31

slide-41
SLIDE 41

Markov Localization Case Study - Grid Map

Museum: Laser Scan 21

Janyl Jumadinova Robotic Agents (CMPSC 311) September 19, 2019 25 / 31

slide-42
SLIDE 42

Markov Localization

Pros: localization starting from any unknown position recovers from ambiguous situation Cons: However, to update the probability of all positions within the whole state space at any time requires a discrete representation of the space (grid). The required memory and calculation power can thus become very important if a fine grid is used.

Janyl Jumadinova Robotic Agents (CMPSC 311) September 19, 2019 26 / 31

slide-43
SLIDE 43

Monte Carlo Simulation

Given a probability distribution over inputs, computing the distribution over outcomes can be hard.

Janyl Jumadinova Robotic Agents (CMPSC 311) September 19, 2019 27 / 31

slide-44
SLIDE 44

Monte Carlo Simulation

Given a probability distribution over inputs, computing the distribution over outcomes can be hard.

  • Simulating a concrete instance is easy.

Janyl Jumadinova Robotic Agents (CMPSC 311) September 19, 2019 27 / 31

slide-45
SLIDE 45

Monte Carlo Simulation

Given a probability distribution over inputs, computing the distribution over outcomes can be hard.

  • Simulating a concrete instance is easy.

Sample concrete instances (“particles”) from the input distribution.

Janyl Jumadinova Robotic Agents (CMPSC 311) September 19, 2019 27 / 31

slide-46
SLIDE 46

Monte Carlo Simulation

Given a probability distribution over inputs, computing the distribution over outcomes can be hard.

  • Simulating a concrete instance is easy.

Sample concrete instances (“particles”) from the input distribution. Collect the outcomes.

  • The distribution of sample outcomes approximates the desired

distribution.

Janyl Jumadinova Robotic Agents (CMPSC 311) September 19, 2019 27 / 31

slide-47
SLIDE 47

Monte Carlo Simulation

Given a probability distribution over inputs, computing the distribution over outcomes can be hard.

  • Simulating a concrete instance is easy.

Sample concrete instances (“particles”) from the input distribution. Collect the outcomes.

  • The distribution of sample outcomes approximates the desired

distribution. This has been called “particle filtering”.

Janyl Jumadinova Robotic Agents (CMPSC 311) September 19, 2019 27 / 31

slide-48
SLIDE 48

Monte Carlo Localization

Key idea: represent the belief that a robot is at a particular location by a set of “samples”, or “particles”.

Janyl Jumadinova Robotic Agents (CMPSC 311) September 19, 2019 28 / 31

slide-49
SLIDE 49

Monte Carlo Localization

Key idea: represent the belief that a robot is at a particular location by a set of “samples”, or “particles”. Maintain multiple estimates of robot’s location. A concrete instance is a particular pose.

  • A pose is position plus orientation.

Janyl Jumadinova Robotic Agents (CMPSC 311) September 19, 2019 28 / 31

slide-50
SLIDE 50

Monte Carlo Localization

Key idea: represent the belief that a robot is at a particular location by a set of “samples”, or “particles”. Maintain multiple estimates of robot’s location. A concrete instance is a particular pose.

  • A pose is position plus orientation.

A probability distribution is represented by a collection of N poses.

  • Each pose has an importance factor.
  • The importance factors sum to 1.

Janyl Jumadinova Robotic Agents (CMPSC 311) September 19, 2019 28 / 31

slide-51
SLIDE 51

Monte Carlo Localization

Key idea: represent the belief that a robot is at a particular location by a set of “samples”, or “particles”. Maintain multiple estimates of robot’s location. A concrete instance is a particular pose.

  • A pose is position plus orientation.

A probability distribution is represented by a collection of N poses.

  • Each pose has an importance factor.
  • The importance factors sum to 1.

Initialize with

  • N uniformly distributed poses.
  • Equal importance factors of N − 1.

Janyl Jumadinova Robotic Agents (CMPSC 311) September 19, 2019 28 / 31

slide-52
SLIDE 52

Monte Carlo Localization

Predict, Weight, Resample

Janyl Jumadinova Robotic Agents (CMPSC 311) September 19, 2019 29 / 31

slide-53
SLIDE 53

Monte Carlo Localization

Predict, Weight, Resample

Janyl Jumadinova Robotic Agents (CMPSC 311) September 19, 2019 30 / 31

slide-54
SLIDE 54

Monte Carlo Localization

Predict, Weight, Resample

Janyl Jumadinova Robotic Agents (CMPSC 311) September 19, 2019 31 / 31