Outline Special Topics in AI: Intelligent Agents and Multi-Agent - - PowerPoint PPT Presentation

outline special topics in ai intelligent agents and multi
SMART_READER_LITE
LIVE PREVIEW

Outline Special Topics in AI: Intelligent Agents and Multi-Agent - - PowerPoint PPT Presentation

04/12/2012 Outline Special Topics in AI: Intelligent Agents and Multi-Agent Systems Mobile robots and uncertainty Localization for mobile robots State estimation based on Bayesian filters Probabilistic approaches to Robotics


slide-1
SLIDE 1

04/12/2012 1

Special Topics in AI: Intelligent Agents and Multi-Agent Systems

Alessandro Farinelli

Probabilistic approaches to Robotics (State Estimation and Motion Planning)

Outline

  • Mobile robots and uncertainty
  • Localization for mobile robots

– State estimation based on Bayesian filters

  • Motion planning

– Markov Decision Processes for path planning

  • Acknowledgment: material based on slides from

– Russel and Norvig; Artificial Intelligence: a Modern Approach – Thrun, Burgard, Fox; Probabilistic Robotics

Mobile robots Sensors

slide-2
SLIDE 2

04/12/2012 2

Uncertainty

  • pen = open a door

Will open actually open the door ? Problems:

  • 1) partial observability and noisy sensors
  • 2) uncertainty in action outcomes
  • 3) immense complexity of modelling and predicting

environment

Probability

Probabilistic assertions summarize effects of

  • laziness (enumeration of all relevant facts),
  • ignorance (lack of relevant facts)

Subjective or Bayesian probability:

  • Probabilities relate propositions to one's own state of

knowledge

– P(open|I am in front of the door) = 0.6 – P(open|I am in front of the door; door is not locked) = 0.8

Simple Example of State Estimation

Suppose a robot obtains measurement z What is P(open|z)?

Causal vs. Diagnostic Reasoning

P(open|z) is diagnostic P(z|open) is causal Often causal knowledge is easier to obtain Bayes rule allows us to use causal knowledge:

) ( ) ( ) | ( ) | ( z P

  • pen

P

  • pen

z P z

  • pen

P =

count frequencies!

slide-3
SLIDE 3

04/12/2012 3

Example

P(z|open) = 0.6 P(z|¬open) = 0.3 P(open) = P(¬open) = 0.5 67 . 3 2 5 . 3 . 5 . 6 . 5 . 6 . ) | ( ) ( ) | ( ) ( ) | ( ) ( ) | ( ) | ( = = ⋅ + ⋅ ⋅ = ¬ ¬ + = z

  • pen

P

  • pen

p

  • pen

z P

  • pen

p

  • pen

z P

  • pen

P

  • pen

z P z

  • pen

P

z raises the probability that the door is open.

Combining Evidence

Suppose our robot obtains another observation z2. How can we integrate this new information? More generally, how can we estimate P(x| z1...zn )?

Recursive Bayesian Updating

) , , | ( ) , , | ( ) , , , | ( ) , , | (

1 1 1 1 1 1 1 − − −

=

n n n n n n

z z z P z z x P z z x z P z z x P

  • Markov assumption: zn independent of z1,...,zn-1 if we know x

) ( ) | ( ) , , | ( ) | ( ) , , | ( ) , , | ( ) | ( ) , , | (

... 1 ... 1 1 1 1 1 1 1 1

x P x z P z z x P x z P z z z P z z x P x z P z z x P

n i i n n n n n n n n

= − − −

= = = η η

  • Example: Second Measurement

P(z2|open) = 0.5 P(z2|¬open) = 0.6 P(open|z1)=2/3

625 . 8 5 3 1 5 3 3 2 2 1 3 2 2 1 ) | ( ) | ( ) | ( ) | ( ) | ( ) | ( ) , | (

1 2 1 2 1 2 1 2

= = ⋅ + ⋅ ⋅ = ¬ ¬ + = z

  • pen

P

  • pen

z P z

  • pen

P

  • pen

z P z

  • pen

P

  • pen

z P z z

  • pen

P

z2 lowers the probability that the door is open.

slide-4
SLIDE 4

04/12/2012 4

Actions

Often the world is dynamic

– actions carried out by the robot, – actions carried out by other agents, – time passing by

How can we incorporate such actions?

Typical Actions

The robot moves The robot moves objects People move around the robot Actions are never carried out with absolute certainty. In contrast to measurements, actions generally increase the uncertainty.

Modeling Actions

To incorporate the outcome of an action u into the current “belief”, we use conditional pdf P(x|u,x’) This term specifies the pdf that executing u changes the state from x’ to x.

15

Example: Closing the door

slide-5
SLIDE 5

04/12/2012 5

State Transitions

  • P(x|u,x’) for u = “close door”:
  • If the door is open, the action “close door” succeeds

in 90% of all cases.

  • pen

closed 0.1 1 0.9

Integrating the Outcome of Actions

  • =

' ) ' ( ) ' , | ( ) | ( dx x P x u x P u x P

  • =

) ' ( ) ' , | ( ) | ( x P x u x P u x P

Continuous case: Discrete case:

Example: The Resulting Belief

) | ( 1 16 1 8 3 1 8 5 10 1 ) ( ) , | ( ) ( ) , | ( ) ' ( ) ' , | ( ) | ( 16 15 8 3 1 1 8 5 10 9 ) ( ) , | ( ) ( ) , | ( ) ' ( ) ' , | ( ) | ( u closed P closed P closed u

  • pen

P

  • pen

P

  • pen

u

  • pen

P x P x u

  • pen

P u

  • pen

P closed P closed u closed P

  • pen

P

  • pen

u closed P x P x u closed P u closed P − = = ∗ + ∗ = + = = = ∗ + ∗ = + = =

  • Bayes Filters: Framework
  • Given:

– Stream of observations z and action data u: – Sensor model P(z|x) – Action model P(x|u,x’) – Prior probability of the system state P(x)

  • Compute:

– Estimate of the state X of a dynamical system – The posterior of the state is also called Belief:

) , , , | ( ) (

1 1 t t t t

z u z u x P x Bel

  • =

} , , , {

1 1 t t t

z u z u d

  • =
slide-6
SLIDE 6

04/12/2012 6

Markov Assumption

Underlying Assumptions

  • Static world (no one else changes the world)
  • Independent noise (over time)
  • Perfect model, no approximation errors

) , | ( ) , , | (

1 : 1 : 1 1 : 1 t t t t t t t

u x x p u z x x p

− −

= ) | ( ) , , | (

: 1 : 1 : t t t t t t

x z p u z x z p =

Bayes Filters

1 1 1

) ( ) , | ( ) | (

− − −

  • =

t t t t t t t

dx x Bel x u x P x z P η ) , , , | ( ) , , , , | (

1 1 1 1 t t t t t

u z u x P u z u x z P

  • η

=

Bayes z = observation u = action x = state

) , , , | ( ) (

1 1 t t t t

z u z u x P x Bel

  • =

Markov

) , , , | ( ) | (

1 1 t t t t

u z u x P x z P

  • η

=

Markov 1 1 1 1 1

) , , , | ( ) , | ( ) | (

− − −

  • =

t t t t t t t t

dx u z u x P x u x P x z P

  • η

1 1 1 1 1 1 1

) , , , | ( ) , , , , | ( ) | (

− − −

  • =

t t t t t t t t

dx u z u x P x u z u x P x z P

  • η

Total prob. Markov 1 1 1 1 1 1

) , , , | ( ) , | ( ) | (

− − − −

  • =

t t t t t t t t

dx z z u x P x u x P x z P

  • η

Bayes Filter Algorithm

1.

Algorithm Bayes_filter( Bel(x),d ): 2. η=0 3. If d is a perceptual data item z then 4. For all x do 5. 6. 7. For all x do 8. 9. Else if d is an action data item u then 10. For all x do 11. 12. Return Bel’(x)

) ( ) | ( ) ( ' x Bel x z P x Bel = ) ( ' x Bel + =η η ) ( ' ) ( '

1

x Bel x Bel

=η ' ) ' ( ) ' , | ( ) ( ' dx x Bel x u x P x Bel

  • =

1 1 1

) ( ) , | ( ) | ( ) (

− − −

  • =

t t t t t t t t

dx x Bel x u x P x z P x Bel η

Bayes Filters are Familiar!

Kalman filters Particle filters Hidden Markov models Dynamic Bayesian networks Partially Observable Markov Decision Processes (POMDPs)

1 1 1

) ( ) , | ( ) | ( ) (

− − −

  • =

t t t t t t t t

dx x Bel x u x P x z P x Bel η

slide-7
SLIDE 7

04/12/2012 7

Bayesian filters for localization

How do I know whether I am in front of the door ? Localization as a state estimation process (filtering)

State update Sensor Reading

Kalman Filter for Localization

robot landmark

Gaussian pdf for belief

  • Pros: closed form representation, very fast update
  • Cons:

Works only for linear action and sensor models (can use EKF to overcome this) Works well only for unimodal beliefs

Particle filters

Particles to represent the belief Pros: no assumption on belief, action and sensor models Cons: update can be computationally demanding

Particle Filters: prior

Robot position (a)

slide-8
SLIDE 8

04/12/2012 8

Particle Filters: bimodal belief

Robot position (b)

Particle Filters: Unimodal beliefs

Robot position (c)

Mapping and SLAM

Localization: given map and observations, update pose estimation Mapping: given pose and observation, update map SLAM: given observations, update map and pose New observations increase uncertainty Loop closures reduce uncertainty

SLAM in action

Courtesy of Sebastian Thrun and Dirk Haehnel ( link for the video)

slide-9
SLIDE 9

04/12/2012 9

Motion Planning for Mobile Robots

Plan for motion in free configuration space (not workspace) configuration space workspace

Configuration Space Planning

Convert free configuration space in finite state space Cell decomposition Skeletonization (PRM)

Planning the motion

Given finite state space representing free configuration space Find a sequence of states from start to goal Several approaches: Rapidly-exploring Random Trees (RRT) Potential Fields Markov Decision Processes (i.e. building a navigation function)

Markov Decision Process

  • Mathematical model to plan sequences of actions in

face of uncertainty

slide-10
SLIDE 10

04/12/2012 10

Example MDP Solving MDPs Risk and Reward Utility of State Sequences

slide-11
SLIDE 11

04/12/2012 11

Utility of States Utilities contd. Dynamic Programming: The Bellman equation Value Iteration algorithm

  • 0.2

0.2 0.4 0.6 0.8 1 5 10 15 20 25 30 Utility estimates Number of iterations (4,3) (3,3) (1,1) (3,1) (4,1)

slide-12
SLIDE 12

04/12/2012 12

Policy Iteration MDP for robot navigation Partial Observability Solving POMDPs

slide-13
SLIDE 13

04/12/2012 13

Coastal Navigation Summary

  • Probability: powerful tool to model uncertainty
  • Localization:

– State estimation – Bayesian filters

  • Motion Planning:

– Planning problem in finite state space (C-free) – MDPs powerful techniques to build navigation functions

References and Further Readings

Material for the slides

  • Russel and Norvig; Artificial Intelligence a Modern Approach

(Chapter 25)

  • Thrun, Burgard, Fox; Probabilistic Robotics (Chapter 2, 14 and

15)

Further readings

  • Latombe; Robot Motion Planning
  • La Valle, Kuffner; Randomized Kinodynamic Planning
  • Thrun,Fox,Burgard; A probabilistic approach to concurrent

mapping and localization for mobile robots

52

Summary

  • Bayes rule allows us to compute probabilities that are

hard to assess otherwise.

  • Under the Markov assumption, recursive Bayesian

updating can be used to efficiently combine evidence.

  • Bayes filters are a probabilistic tool for estimating the

state of dynamic systems.