GP-BayesFilters Bayes Filters CSE-571 u(k-1) u(k) - - PDF document

gp bayesfilters bayes filters cse 571
SMART_READER_LITE
LIVE PREVIEW

GP-BayesFilters Bayes Filters CSE-571 u(k-1) u(k) - - PDF document

10/23/15 [Ko-F: RSS-08, ARJ-09] GP-BayesFilters Bayes Filters CSE-571 u(k-1) u(k) u(k+1) Q(k) Probabilis1c Robo1cs GP dynamics Dynamics s(k-1) model s(k) s(k+1) model Gaussian


slide-1
SLIDE 1

10/23/15 1

CSE-­‑571 ¡ Probabilis1c ¡Robo1cs ¡ ¡ Gaussian ¡Processes ¡for ¡ Bayesian ¡Filtering ¡

Dieter ¡Fox ¡ University ¡of ¡Washington ¡

¡

1 ¡ Amazon ¡ Dieter ¡Fox: ¡GP-­‑BayesFilters ¡

s(k)

  • Bayesian ¡filtering ¡

– Parametric ¡dynamics ¡and ¡observa1on ¡models ¡ – Approximate ¡posterior ¡via ¡sampling ¡(PF), ¡sigma ¡points ¡(UKF), ¡lineariza1on ¡ (EKF), ¡moment ¡matching ¡(ADF) ¡

  • GP-­‑BayesFilters ¡

– Use ¡Gaussian ¡Process ¡regression ¡to ¡learn ¡dynamics ¡and ¡observa1on ¡models ¡ – Noise ¡derived ¡from ¡GP ¡predic1on ¡uncertainty ¡ – Can ¡be ¡integrated ¡seamlessly ¡into ¡Bayes ¡filters: ¡EKF, ¡UKF, ¡PF, ¡ADF ¡

2 ¡

Bayes ¡Filters ¡

Dynamics model Observation model u(k-1) s(k-1) z(k) z(k-1) u(k) u(k+1) s(k+1) z(k+1) Q(k) R(k) GP dynamics model GP observation model

µ σ µ σ

[Ko-F: RSS-08, ARJ-09]

GP-­‑BayesFilters ¡

Amazon ¡ Dieter ¡Fox: ¡GP-­‑BayesFilters ¡

Overview ¡

  • Gaussian ¡Processes ¡and ¡Bayes ¡Filters ¡
  • GP-­‑BayesFilters ¡
  • Filtering ¡and ¡Control ¡
  • System ¡Iden1fica1on ¡with ¡GP-­‑BayesFilters ¡
  • Predic1ve ¡State ¡Representa1ons ¡
  • Conclusions ¡

Amazon ¡ Dieter ¡Fox: ¡GP-­‑BayesFilters ¡ 3 ¡

GP-­‑BayesFilters ¡

  • Learn ¡GP: ¡ ¡

– Input: ¡Sequence ¡of ¡ground ¡truth ¡states ¡along ¡with ¡ controls ¡and ¡observa1ons: ¡<s, ¡u, ¡z> ¡ – Learn ¡GPs ¡for ¡dynamics ¡and ¡observa1on ¡models ¡

  • Filters ¡

– Par1cle ¡filter: ¡sample ¡from ¡dynamics ¡GP, ¡weigh ¡by ¡GP ¡

  • bserva1on ¡func1on ¡

– EKF: ¡GP ¡for ¡mean ¡state, ¡GP ¡deriva1ve ¡for ¡lineariza1on ¡ – UKF: ¡GP ¡for ¡sigma ¡points ¡

Amazon ¡ Dieter ¡Fox: ¡GP-­‑BayesFilters ¡ 4 ¡

[Ko-­‑Fox: ¡ARJ-­‑09] ¡

slide-2
SLIDE 2

10/23/15 2

  • Ground ¡truth ¡training ¡sequence: ¡
  • Learn ¡observa1on ¡and ¡dynamics ¡GPs: ¡

¡

  • Learn ¡separate ¡GP ¡for ¡each ¡output ¡dimension ¡
  • Diagonal ¡noise ¡matrix ¡

Learning ¡GP ¡Dynamics ¡and ¡ Observa1on ¡Models ¡

S = [s1,s2,...,sn],Z = [z1,z2,...,zn],U = [u1,u2,...,un]

GP dynamics model

[ ]

k k u

s ,

Δsk = sk+1 − sk

GP observation model

k

z

k

s

EGP dynamics model

[ ]

k k u

s ,

r

k

= Δsk − f (sk,uk)

5 ¡

[Deisenroth-etal] introduced GP-ADFs and EP for smoothing in GP dynamical systems

Amazon ¡ Dieter ¡Fox: ¡GP-­‑BayesFilters ¡ 6 ¡

GP-­‑PF ¡Propaga1on ¡

  • Propagate each particle using GP prediction
  • Sample from GP uncertainty
  • One GP mean and variance prediction per particle

for m =1... M : sk+1

m = GP µ sk m,u

( )+ sample GP

Σ(sk m)

( )

Sk Sk+1

Amazon ¡ Dieter ¡Fox: ¡GP-­‑BayesFilters ¡ 7 ¡

GP-­‑EKF ¡Propaga1on ¡

µk+1 = GP

µ(µk)

G = ∂GP

µ(µk)

∂s ∑k+1 = G∑k GT + GP

Σ(µk)

  • Propagate mean using GP prediction
  • Use gradient of GP to propagate covariance

µk,∑k µk+1,∑k+1

Amazon ¡ Dieter ¡Fox: ¡GP-­‑BayesFilters ¡ 8 ¡

GP-­‑UKF ¡Propaga1on ¡

  • Propagate ¡each ¡sigma ¡point ¡using ¡GP ¡predic1on ¡
  • 2d+1 ¡sigma ¡points ¡-­‑> ¡2d+1 ¡GP ¡mean ¡predic1ons ¡

χk = µk, µk +γ ∑k, µk − γ ∑k

( )

for i = 0...2n : χk+1 = GP

µ(χk)

µk+1 = ω m

i i=0 2n

χk+1

i

∑k+1 = ωc

i(χk+1 i

− µk+1)(χk+1

i

− µk+1)T

i=0 2n

+ GP

Σ(µk)

µk,∑k µk+1,∑k+1

Amazon ¡ Dieter ¡Fox: ¡GP-­‑BayesFilters ¡

slide-3
SLIDE 3

10/23/15 3

Overview ¡

  • Gaussian ¡Processes ¡and ¡Bayes ¡Filters ¡
  • GP-­‑BayesFilters ¡
  • Filtering ¡and ¡Control ¡
  • System ¡Iden1fica1on ¡with ¡GP-­‑BayesFilters ¡
  • Predic1ve ¡State ¡Representa1ons ¡
  • Conclusions ¡

Amazon ¡ Dieter ¡Fox: ¡GP-­‑BayesFilters ¡ 9 ¡

WiFi-­‑Based ¡Loca1on ¡Es1ma1on ¡

Mean ¡ Variance ¡

10 ¡

[Ferris-­‑Haehnel-­‑Fox: ¡RSS-­‑06] ¡ Similar to [Schwaighofer-etal: NIPS-03] ¡

Amazon ¡ Dieter ¡Fox: ¡GP-­‑BayesFilters ¡

Building ¡Model ¡

11 ¡ Amazon ¡ Dieter ¡Fox: ¡GP-­‑BayesFilters ¡

Tracking ¡Example ¡

12 ¡ Amazon ¡ Dieter ¡Fox: ¡GP-­‑BayesFilters ¡

slide-4
SLIDE 4

10/23/15 4

Blimp ¡Testbed ¡

13 ¡

  • Task: Track a blimp with two webcams
  • Baseline: Parametric model that takes drag, thrust, gravity, etc, into

account

  • GP-BayesFilters and parametric model trained on ground truth data
  • btained with Vicon motion capture system

Amazon ¡ Dieter ¡Fox: ¡GP-­‑BayesFilters ¡

[Ko-­‑F: ¡ARJ-­‑09] ¡

GP-­‑UKF ¡Tracking ¡Example ¡

14 ¡

  • Blue ¡ellipses: ¡sigma ¡points ¡projected ¡into ¡observa1on ¡space ¡
  • Green ¡ellipse: ¡Mean ¡state ¡es1mate ¡

Amazon ¡ Dieter ¡Fox: ¡GP-­‑BayesFilters ¡

Tracking ¡Results ¡

¡

  • Parametric ¡model ¡takes ¡drag, ¡thrust, ¡gravity, ¡etc, ¡into ¡account ¡ ¡
  • Cross ¡valida1on ¡with ¡900 ¡1mesteps ¡for ¡training ¡
  • hetGP: ¡Heteroscedas1c ¡GP ¡with ¡variable ¡noise ¡[Kers1ng-­‑etal: ¡ICML-­‑07] ¡
  • sparseGP: ¡sparsified ¡to ¡50 ¡ac1ve ¡points ¡[Snelson-­‑Ghahramani: ¡NIPS-­‑06] ¡

Percentage reduction in RMS over parametric baseline

15 ¡

¡ ¡ ¡ ¡

Amazon ¡ Dieter ¡Fox: ¡GP-­‑BayesFilters ¡ 16 ¡

Dealing ¡with ¡Training ¡Data ¡Sparsity ¡

Full ¡process ¡model ¡tracking ¡ No ¡right ¡turn ¡process ¡model ¡tracking ¡

  • Training ¡data ¡for ¡right ¡turns ¡removed ¡

Amazon ¡ Dieter ¡Fox: ¡GP-­‑BayesFilters ¡

slide-5
SLIDE 5

10/23/15 5

ACT ¡Hand ¡Control ¡

  • 1. Inves1ga1on ¡of ¡muscle-­‑joint ¡kinema1cal ¡rela1onship ¡
  • 2. How ¡to ¡control ¡joints ¡with ¡muscles? ¡ ¡ ¡

17 ¡ Amazon ¡ Dieter ¡Fox: ¡GP-­‑BayesFilters ¡

ACT ¡Hand ¡Tendon ¡Arrangements ¡

  • Tendon ¡hood ¡structure ¡for ¡extensors ¡

– Cri1cal ¡for ¡preserving ¡hand ¡func1onality ¡ – Slides ¡over ¡the ¡bones ¡and ¡joints ¡

18 ¡

[Wilkinson et al, ICRA 03]

  • We ¡have ¡non-­‑linear, ¡non-­‑constant ¡rela1onships ¡

between ¡muscles ¡and ¡joints ¡

Amazon ¡ Dieter ¡Fox: ¡GP-­‑BayesFilters ¡

GP-­‑Based ¡Control ¡

19 ¡ Amazon ¡ Dieter ¡Fox: ¡GP-­‑BayesFilters ¡

Overview ¡

  • Gaussian ¡Processes ¡and ¡Bayes ¡Filters ¡
  • GP-­‑BayesFilters ¡
  • Filtering ¡and ¡Control ¡
  • System ¡Iden1fica1on ¡with ¡GP-­‑BayesFilters ¡
  • Predic1ve ¡State ¡Representa1ons ¡
  • Conclusions ¡

Amazon ¡ Dieter ¡Fox: ¡GP-­‑BayesFilters ¡ 20 ¡

slide-6
SLIDE 6

10/23/15 6

GP ¡Latent ¡Variable ¡Models ¡

  • Some1mes ¡ground ¡truth ¡states ¡are ¡not ¡or ¡only ¡

par1ally ¡available ¡

  • Instead ¡of ¡op1mizing ¡over ¡GP ¡hyperparameters ¡
  • nly, ¡op1mize ¡over ¡latent ¡states ¡S ¡as ¡well ¡

21 ¡ Amazon ¡ Dieter ¡Fox: ¡GP-­‑BayesFilters ¡

GP ¡Latent ¡Variable ¡Models ¡

  • Latent ¡variable ¡models ¡[Lawrence: ¡NIPS-­‑03, ¡Wang-­‑etal: ¡PAMI-­‑08] ¡
  • Learn ¡latent ¡states ¡and ¡GPs ¡in ¡one ¡op1miza1on ¡
  • Can ¡take ¡noisy ¡labels ¡into ¡account ¡

2

z

3

z

n

z

1

z

GP

2

s

3

s

GP GP

n

s

GP GP GP

1

s

1

u

2

u

n

u

3

u [Ko-F: RSS-09, ARJ-10] argmaxS,ΘZ ,ΘS log p(S,ΘZ,ΘS | Z,U,S

)

= log p(Z | S,ΘZ )+ log p(S |U,ΘS)+ log p(S | S

)+ log p(ΘZ )+ log p(ΘS)+ const

22 ¡ Amazon ¡ Dieter ¡Fox: ¡GP-­‑BayesFilters ¡

Slotcar ¡Testbed ¡

  • Track ¡contains ¡banked ¡curves, ¡eleva1on ¡changes ¡
  • Custom ¡IMU ¡with ¡gyro ¡and ¡accelerometer ¡built ¡by ¡Intel ¡Research ¡Seakle ¡
  • Observa1ons ¡very ¡noisy, ¡perceptual ¡aliasing ¡

23 ¡ Amazon ¡ Dieter ¡Fox: ¡GP-­‑BayesFilters ¡

Simple ¡Trajectory ¡Replay ¡

  • Learning ¡ ¡

– Human ¡demonstrates ¡control ¡ – Learn ¡latent ¡states ¡using ¡GPBF-­‑Learn ¡ – Learn ¡mapping ¡from ¡state ¡to ¡control ¡

  • Replay ¡ ¡

– Track ¡state ¡using ¡GP-­‑BayesFilter ¡ – Use ¡control ¡given ¡by ¡control ¡GP ¡

24 ¡

GP

z2

2

s

GP GP

z1

1

s u1 u2

GP GP u ¡ u ¡ z ¡ z ¡ S ¡

Amazon ¡ Dieter ¡Fox: ¡GP-­‑BayesFilters ¡

slide-7
SLIDE 7

10/23/15 7

Trajectory ¡Replay ¡

25 ¡ Amazon ¡ Dieter ¡Fox: ¡GP-­‑BayesFilters ¡

Overview ¡

  • Gaussian ¡Processes ¡and ¡Bayes ¡Filters ¡
  • GP-­‑BayesFilters ¡
  • Filtering ¡and ¡Control ¡
  • System ¡Iden1fica1on ¡with ¡GP-­‑BayesFilters ¡
  • Predic1ve ¡State ¡Representa1ons ¡
  • Conclusions ¡

Amazon ¡ Dieter ¡Fox: ¡GP-­‑BayesFilters ¡ 26 ¡

In ¡Hand ¡Manipula1on ¡ [Mordatch-­‑Popovic-­‑Todorov: ¡SCA-­‑12] ¡

Amazon ¡ Dieter ¡Fox: ¡GP-­‑BayesFilters ¡ 27 ¡

Learning ¡Models ¡for ¡Manipula1on ¡

  • Soon ¡manipulators ¡/ ¡hands ¡/ ¡robots ¡will ¡be ¡equipped ¡with ¡a ¡

variety ¡of ¡complex ¡sensors ¡(e.g. ¡touch ¡sensi1ve ¡skin) ¡

  • Are ¡accurate ¡physics-­‑based ¡models ¡the ¡most ¡appropriate ¡

representa1on ¡for ¡controlling ¡such ¡complex ¡systems? ¡

  • Rather ¡than ¡imposing ¡a ¡model ¡on ¡the ¡dynamical ¡system, ¡

learn ¡a ¡state ¡space ¡that’s ¡suitable ¡for ¡predic1on ¡and ¡control ¡

  • Ques1on: ¡Can ¡we ¡learn ¡expressive ¡models ¡from ¡raw, ¡high-­‑

dimensional ¡sensor ¡data? ¡

Amazon ¡ Dieter ¡Fox: ¡GP-­‑BayesFilters ¡ 28 ¡

slide-8
SLIDE 8

10/23/15 8

Predic1ve ¡State ¡Representa1ons ¡ (PSRs) ¡

¡

  • Expressive ¡dynamical ¡system ¡model ¡
  • Test: ¡ordered ¡sequence ¡of ¡ac1on ¡observa1on ¡pairs ¡
  • Predic1on ¡of ¡a ¡test: ¡
  • PSR ¡state ¡is ¡a ¡predic1on ¡over ¡a ¡set ¡of ¡core ¡tests ¡

(future ¡observable ¡quan11es) ¡

29 ¡

. . . . . .

Amazon ¡ Dieter ¡Fox: ¡GP-­‑BayesFilters ¡

Test ¡Case ¡

Amazon ¡ Dieter ¡Fox: ¡GP-­‑BayesFilters ¡ 30 ¡

[Boots-Byravan-F: ICRA-14]

31 ¡ Amazon ¡ Dieter ¡Fox: ¡GP-­‑BayesFilters ¡

Summary ¡

  • GPs ¡provide ¡flexible ¡modeling ¡framework ¡
  • Take ¡data ¡noise ¡and ¡uncertainty ¡due ¡to ¡data ¡

sparsity ¡into ¡account ¡

  • Seamless ¡integra1on ¡into ¡Bayes ¡filters ¡
  • Combina1on ¡with ¡parametric ¡models ¡increases ¡

accuracy ¡and ¡reduces ¡amount ¡of ¡training ¡data ¡

  • Subspace ¡iden1fica1on ¡via ¡latent ¡variable ¡models ¡
  • Computa1onal ¡complexity ¡of ¡GPs ¡is ¡a ¡key ¡problem ¡
  • Predic1ve ¡state ¡representa1ons: ¡scale ¡to ¡high-­‑

dimensional ¡systems ¡

32 ¡ Amazon ¡ Dieter ¡Fox: ¡GP-­‑BayesFilters ¡

slide-9
SLIDE 9

10/23/15 9

WAM ¡Trajectory ¡Replay ¡

  • System: ¡Barrek ¡Whole ¡Arm ¡

Manipulator ¡

– Four ¡joints/degrees ¡of ¡freedom ¡ – 4D ¡control ¡(change ¡in ¡joint ¡angles) ¡ – Significant ¡control ¡noise ¡

  • Observa1ons: ¡

– 3D ¡posi1on ¡of ¡end ¡effector ¡

  • User ¡demonstra1on: ¡

– Manipulate ¡to ¡trace ¡out ¡circular ¡ trajectory ¡of ¡end ¡effector ¡

33 ¡ Amazon ¡ Dieter ¡Fox: ¡GP-­‑BayesFilters ¡

Control ¡Experiment ¡

  • Learn ¡3D ¡latent ¡states ¡for ¡system ¡
  • Replay ¡assuming ¡noisy ¡encoders ¡
  • Both ¡1me-­‑based ¡and ¡simple ¡control ¡model ¡fail ¡

34 ¡

Top ¡down ¡view ¡of ¡end ¡effector ¡posi1on ¡

Amazon ¡ Dieter ¡Fox: ¡GP-­‑BayesFilters ¡ 35 ¡

  • Want ¡controls ¡which ¡decrease ¡predic1on ¡uncertainty ¡
  • Predic1on ¡uncertainty ¡obtained ¡from ¡GP ¡
  • Learn ¡control ¡model ¡using ¡only ¡desired ¡state-­‑control ¡

pairs ¡

Simple ¡Fix ¡

Amazon ¡ Dieter ¡Fox: ¡GP-­‑BayesFilters ¡

Advanced ¡Control ¡Experiment ¡

  • Learn ¡3D ¡latent ¡states ¡for ¡system ¡
  • Replay ¡assuming ¡noisy ¡encoders ¡
  • Both ¡1me-­‑based ¡and ¡simple ¡control ¡model ¡fail ¡
  • Advanced ¡control ¡model ¡achieves ¡proper ¡replay ¡

36 ¡

Top ¡down ¡view ¡of ¡end ¡effector ¡posi1on ¡

Amazon ¡ Dieter ¡Fox: ¡GP-­‑BayesFilters ¡