Safe Obstacle Avoidance of Autonomous Robo5c Ground - - PowerPoint PPT Presentation

safe obstacle avoidance of autonomous robo5c ground
SMART_READER_LITE
LIVE PREVIEW

Safe Obstacle Avoidance of Autonomous Robo5c Ground - - PowerPoint PPT Presentation

Safe Obstacle Avoidance of Autonomous Robo5c Ground Vehicles Stefan Mitsch, Khalil Ghorbal and Andr Platzer Computer Science Department Carnegie Mellon


slide-1
SLIDE 1

Safe ¡Obstacle ¡Avoidance ¡of ¡ Autonomous ¡Robo5c ¡Ground ¡ Vehicles ¡

Stefan ¡Mitsch, ¡Khalil ¡Ghorbal ¡and ¡André ¡Platzer ¡ Computer ¡Science ¡Department ¡ Carnegie ¡Mellon ¡University ¡

slide-2
SLIDE 2

.:: ¡

RSS’13 ¡

Obstacle ¡Avoidance ¡

Stefan ¡Mitsch ¡– ¡Computer ¡Science ¡Department ¡– ¡Carnegie ¡Mellon ¡University ¡

Sta5onary ¡ Obstacles ¡ Moving ¡ Obstacles ¡ Robot ¡ Kinema5cs ¡ Control ¡ Choices ¡ Drive ¡ Variants ¡ Robot ¡ Shape ¡ Obstacle ¡ Shape ¡ Sensor ¡ Uncertainty ¡ Actuator ¡ Disturbance ¡ Sensor ¡ Failure ¡

slide-3
SLIDE 3

.:: ¡

RSS’13 ¡ 1 2 3 4 5 6 0.0 0.5 1.0 1.5 2.0 2.5 3.0 3.5

Obstacle ¡Avoidance ¡

Stefan ¡Mitsch ¡– ¡Computer ¡Science ¡Department ¡– ¡Carnegie ¡Mellon ¡University ¡

Sta5onary ¡ Obstacles ¡ Moving ¡ Obstacles ¡ Robot ¡ Kinema5cs ¡ Control ¡ Choices ¡ Drive ¡ Variants ¡ Robot ¡ Shape ¡ Obstacle ¡ Shape ¡ Sensor ¡ Uncertainty ¡ Actuator ¡ Disturbance ¡ Sensor ¡ Failure ¡

How ¡can ¡we ¡build ¡a ¡ robot ¡that ¡is ¡safe? ¡

slide-4
SLIDE 4

.:: ¡

RSS’13 ¡ 1 2 3 4 5 6 0.0 0.5 1.0 1.5 2.0 2.5 3.0 3.5

Obstacle ¡Avoidance ¡

Stefan ¡Mitsch ¡– ¡Computer ¡Science ¡Department ¡– ¡Carnegie ¡Mellon ¡University ¡

Sta5onary ¡ Obstacles ¡ Moving ¡ Obstacles ¡ Robot ¡ Kinema5cs ¡ Control ¡ Choices ¡ Drive ¡ Variants ¡ Robot ¡ Shape ¡ Obstacle ¡ Shape ¡ Sensor ¡ Uncertainty ¡ Actuator ¡ Disturbance ¡ Sensor ¡ Failure ¡ What ¡is ¡safe? ¡

slide-5
SLIDE 5

.:: ¡

RSS’13 ¡

Safety ¡Defini5ons ¡

Sta>c ¡safety ¡ Passive ¡safety ¡ Passive ¡friendly ¡safety ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡

Stefan ¡Mitsch ¡– ¡Computer ¡Science ¡Department ¡– ¡Carnegie ¡Mellon ¡University ¡

1 2 3 4 5 6 0.0 0.5 1.0 1.5 2.0 2.5 3.0 3.5 1 2 3 4 5 6 0.0 0.5 1.0 1.5 2.0 2.5 3.0 3.5 1 2 3 4 5 6 0.0 0.5 1.0 1.5 2.0 2.5 3.0 3.5 1 2 3 4 5 6 0.0 0.5 1.0 1.5 2.0 2.5 3.0 3.5

slide-6
SLIDE 6

.:: ¡

RSS’13 ¡

Safety ¡Defini5ons ¡

Sta>c ¡safety ¡ Passive ¡safety ¡ Passive ¡friendly ¡safety ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡

Stefan ¡Mitsch ¡– ¡Computer ¡Science ¡Department ¡– ¡Carnegie ¡Mellon ¡University ¡

1 2 3 4 5 6 0.0 0.5 1.0 1.5 2.0 2.5 3.0 3.5 1 2 3 4 5 6 0.0 0.5 1.0 1.5 2.0 2.5 3.0 3.5 1 2 3 4 5 6 0.0 0.5 1.0 1.5 2.0 2.5 3.0 3.5 1 2 3 4 5 6 0.0 0.5 1.0 1.5 2.0 2.5 3.0 3.5

slide-7
SLIDE 7

.:: ¡

RSS’13 ¡

Safety ¡Defini5ons ¡

Stefan ¡Mitsch ¡– ¡Computer ¡Science ¡Department ¡– ¡Carnegie ¡Mellon ¡University ¡

Sta>c ¡safety ¡ Passive ¡safety ¡ Passive ¡friendly ¡safety ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡

1 2 3 4 5 6 0.0 0.5 1.0 1.5 2.0 2.5 3.0 3.5 1 2 3 4 5 6 0.0 0.5 1.0 1.5 2.0 2.5 3.0 3.5 1 2 3 4 5 6 0.0 0.5 1.0 1.5 2.0 2.5 3.0 3.5 1 2 3 4 5 6 0.0 0.5 1.0 1.5 2.0 2.5 3.0 3.5

slide-8
SLIDE 8

.:: ¡

RSS’13 ¡

Safety ¡Defini5ons ¡

Sta>c ¡safety ¡ Passive ¡safety ¡ Passive ¡friendly ¡safety ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡

Stefan ¡Mitsch ¡– ¡Computer ¡Science ¡Department ¡– ¡Carnegie ¡Mellon ¡University ¡

1 2 3 4 5 6 0.0 0.5 1.0 1.5 2.0 2.5 3.0 3.5 1 2 3 4 5 6 0.0 0.5 1.0 1.5 2.0 2.5 3.0 3.5 1 2 3 4 5 6 0.0 0.5 1.0 1.5 2.0 2.5 3.0 3.5 1 2 3 4 5 6 0.0 0.5 1.0 1.5 2.0 2.5 3.0 3.5 1 2 3 4 5 6 0.0 0.5 1.0 1.5 2.0 2.5 3.0 3.5 1 2 3 4 5 6 0.0 0.5 1.0 1.5 2.0 2.5 3.0 3.5

How ¡to ¡design ¡ ¡ a ¡safe ¡controller? ¡

slide-9
SLIDE 9

.:: ¡

RSS’13 ¡

Constraints ¡of ¡a ¡Safe ¡Controller ¡

Name ¡ Invariant ¡ Switching ¡ Sta5c ¡ safety ¡ Passive ¡ safety ¡ Sensor ¡ ¡ uncertainty ¡ Actuator ¡ ¡ disturbance ¡ Sensor ¡ ¡ failure ¡ Passive ¡ friendly ¡ safety ¡

kpr pok∞ > v2

r

2b + ✓A b + 1 ◆ ✓A 2 ε2 + εvr ◆ vr = 0 _ kpr pok∞ > v2

r

2b + V vr b + ✓A b + 1 ◆ ✓A 2 ε2 + ε(vr + V ) ◆ k˜ pr pok∞ > v2

r

2b + V vr b + ✓A b + 1 ◆ ✓A 2 ε2 + ε(vr + V ) ◆ + Up kpr pok∞ > v2

r

2bUm + V vr bUm + ✓ A bUm + 1 ◆ ✓A 2 ε2 + ε(vr + V ) ◆ k˜ pr pok∞ > v2

r

2b + V vr b + ✓A b + 1 ◆ ✓A 2 ε2 + ε(v + V ) ◆ + Up + g∆ vr = 0 _ kpr pok∞ > v2

r

2b + V 2 2bo + V ⇣vr b + τ ⌘ + ✓A b + 1 ◆ ✓A 2 ε2 + ε(vr + V ) ◆

Stefan ¡Mitsch ¡– ¡Computer ¡Science ¡Department ¡– ¡Carnegie ¡Mellon ¡University ¡

slide-10
SLIDE 10

.:: ¡

RSS’13 ¡

Constraints ¡of ¡a ¡Safe ¡Controller ¡

Name ¡ Invariant ¡ Switching ¡ Sta5c ¡ safety ¡ Passive ¡ safety ¡ Sensor ¡ ¡ uncertainty ¡ Actuator ¡ ¡ disturbance ¡ Sensor ¡ ¡ failure ¡ Passive ¡ friendly ¡ safety ¡

kpr pok∞ > v2

r

2b + ✓A b + 1 ◆ ✓A 2 ε2 + εvr ◆ vr = 0 _ kpr pok∞ > v2

r

2b + V vr b + ✓A b + 1 ◆ ✓A 2 ε2 + ε(vr + V ) ◆ k˜ pr pok∞ > v2

r

2b + V vr b + ✓A b + 1 ◆ ✓A 2 ε2 + ε(vr + V ) ◆ + Up kpr pok∞ > v2

r

2bUm + V vr bUm + ✓ A bUm + 1 ◆ ✓A 2 ε2 + ε(vr + V ) ◆ k˜ pr pok∞ > v2

r

2b + V vr b + ✓A b + 1 ◆ ✓A 2 ε2 + ε(v + V ) ◆ + Up + g∆ vr = 0 _ kpr pok∞ > v2

r

2b + V 2 2bo + V ⇣vr b + τ ⌘ + ✓A b + 1 ◆ ✓A 2 ε2 + ε(vr + V ) ◆

Stefan ¡Mitsch ¡– ¡Computer ¡Science ¡Department ¡– ¡Carnegie ¡Mellon ¡University ¡

How ¡to ¡find ¡& ¡jus>fy ¡those? ¡

slide-11
SLIDE 11

.:: ¡

RSS’13 ¡

Formal ¡Verifica5on ¡to ¡the ¡Rescue ¡

Hybrid ¡System ¡ Drive ¡Variants ¡

  • Differen5al ¡
  • Omnidirec5onal ¡

pc pr dr dx

r

dy

r

Move ¡on ¡circle ¡ Stay ¡in ¡the ¡box ¡

Stefan ¡Mitsch ¡– ¡Computer ¡Science ¡Department ¡– ¡Carnegie ¡Mellon ¡University ¡

Control ¡

  • Steer ¡
  • Accelerate… ¡

Physics ¡

  • Newtonian ¡rigid ¡

body ¡dynamics ¡

dwps ⌘ (ctrlo || (senser; ctrlr); dyn)⇤ ctrlo ⌘ vo = (⇤, ⇤); ?kvok  V senser ⌘
  • (δr := 0; gr := 0) [ (δr := δr; gr := gr)
  • ;
(˜ pr := (⇤, ⇤); ?(k˜ pr prk  Up + δr) ctrlr ⌘ (ar := b) [ (?vr = 0; ar := 0; ωr := 0) [ (ar := ⇤; ?b  ar  A; ωr := ⇤; ? Ω  ωr  Ω; pc := (⇤, ⇤); dr := (⇤, ⇤); po := (⇤, ⇤); ?feasible ^ safe) feasible ⌘ k˜ pr pck > 0 ^ ωrk˜ pr pck = vr ^ dr = (˜ pr pc)? k˜ pr pck safe ⌘ k˜ pr pok > v2 r 2b + V vr b + ✓A b + 1 ◆ ✓A 2 ε2 + ε(vr + V ) ◆ + Up + g∆ dyn ⌘ (t := 0; px r 0 = vrdx r, py r 0 = vrdy r, dx r 0 = ωrdy r, dy r 0 = ωrdx r, px
  • 0 = vx
  • , py
  • 0 = vy
  • , v0
r = ar, ω0 r = ar kpr pck, t0 = 1, g0 r = 1, δ0 r = ∆ & vr 0 ^ t  ε)

dL ¡Model ¡

slide-12
SLIDE 12

.:: ¡

RSS’13 ¡

Model ¡and ¡Proof ¡

ψps ! [dwps] ✓ (vr = 0) _ ⇣ kpr pok > v2

r

2b + V vr b ⌘◆

dwps ⌘ (ctrlo || (senser; ctrlr); dyn)⇤ ctrlo ⌘ vo = (⇤, ⇤); ?kvok  V senser ⌘

  • (δr := 0; gr := 0) [ (δr := δr; gr := gr)
  • ;

(˜ pr := (⇤, ⇤); ?(k˜ pr prk  Up + δr) ctrlr ⌘ (ar := b) [ (?vr = 0; ar := 0; ωr := 0) [ (ar := ⇤; ?b  ar  A; ωr := ⇤; ? Ω  ωr  Ω; pc := (⇤, ⇤); dr := (⇤, ⇤); po := (⇤, ⇤); ?feasible ^ safe) feasible ⌘ k˜ pr pck > 0 ^ ωrk˜ pr pck = vr ^ dr = (˜ pr pc)? k˜ pr pck safe ⌘ k˜ pr pok > v2

r

2b + V vr b + ✓A b + 1 ◆ ✓A 2 ε2 + ε(vr + V ) ◆ + Up + g∆ dyn ⌘ (t := 0; px

r 0 = vrdx r, py r 0 = vrdy r, dx r 0 = ωrdy r, dy r 0 = ωrdx r,

px

  • 0 = vx
  • , py
  • 0 = vy
  • , v0

r = ar, ω0 r =

ar kpr pck, t0 = 1, g0

r = 1, δ0 r = ∆

& vr 0 ^ t  ε)

Theorem: ¡

Ini5al ¡Condi5ons ¡→ ¡[Hybrid ¡System] ¡(Requirements) ¡

Stefan ¡Mitsch ¡– ¡Computer ¡Science ¡Department ¡– ¡Carnegie ¡Mellon ¡University ¡

Passive ¡Safety ¡

slide-13
SLIDE 13

.:: ¡

RSS’13 ¡

Model ¡and ¡Proof ¡

ψps ! [dwps] ✓ (vr = 0) _ ⇣ kpr pok > v2

r

2b + V vr b ⌘◆

dwps ⌘ (ctrlo || (senser; ctrlr); dyn)⇤ ctrlo ⌘ vo = (⇤, ⇤); ?kvok  V senser ⌘

  • (δr := 0; gr := 0) [ (δr := δr; gr := gr)
  • ;

(˜ pr := (⇤, ⇤); ?(k˜ pr prk  Up + δr) ctrlr ⌘ (ar := b) [ (?vr = 0; ar := 0; ωr := 0) [ (ar := ⇤; ?b  ar  A; ωr := ⇤; ? Ω  ωr  Ω; pc := (⇤, ⇤); dr := (⇤, ⇤); po := (⇤, ⇤); ?feasible ^ safe) feasible ⌘ k˜ pr pck > 0 ^ ωrk˜ pr pck = vr ^ dr = (˜ pr pc)? k˜ pr pck safe ⌘ k˜ pr pok > v2

r

2b + V vr b + ✓A b + 1 ◆ ✓A 2 ε2 + ε(vr + V ) ◆ + Up + g∆ dyn ⌘ (t := 0; px

r 0 = vrdx r, py r 0 = vrdy r, dx r 0 = ωrdy r, dy r 0 = ωrdx r,

px

  • 0 = vx
  • , py
  • 0 = vy
  • , v0

r = ar, ω0 r =

ar kpr pck, t0 = 1, g0

r = 1, δ0 r = ∆

& vr 0 ^ t  ε)

Theorem: ¡

Ini5al ¡Condi5ons ¡→ ¡[Hybrid ¡System] ¡(Requirements) ¡

Stefan ¡Mitsch ¡– ¡Computer ¡Science ¡Department ¡– ¡Carnegie ¡Mellon ¡University ¡

Obstacle ¡Behavior ¡

slide-14
SLIDE 14

.:: ¡

RSS’13 ¡

Model ¡and ¡Proof ¡

ψps ! [dwps] ✓ (vr = 0) _ ⇣ kpr pok > v2

r

2b + V vr b ⌘◆

dwps ⌘ (ctrlo || (senser; ctrlr); dyn)⇤ ctrlo ⌘ vo = (⇤, ⇤); ?kvok  V senser ⌘

  • (δr := 0; gr := 0) [ (δr := δr; gr := gr)
  • ;

(˜ pr := (⇤, ⇤); ?(k˜ pr prk  Up + δr) ctrlr ⌘ (ar := b) [ (?vr = 0; ar := 0; ωr := 0) [ (ar := ⇤; ?b  ar  A; ωr := ⇤; ? Ω  ωr  Ω; pc := (⇤, ⇤); dr := (⇤, ⇤); po := (⇤, ⇤); ?feasible ^ safe) feasible ⌘ k˜ pr pck > 0 ^ ωrk˜ pr pck = vr ^ dr = (˜ pr pc)? k˜ pr pck safe ⌘ k˜ pr pok > v2

r

2b + V vr b + ✓A b + 1 ◆ ✓A 2 ε2 + ε(vr + V ) ◆ + Up + g∆ dyn ⌘ (t := 0; px

r 0 = vrdx r, py r 0 = vrdy r, dx r 0 = ωrdy r, dy r 0 = ωrdx r,

px

  • 0 = vx
  • , py
  • 0 = vy
  • , v0

r = ar, ω0 r =

ar kpr pck, t0 = 1, g0

r = 1, δ0 r = ∆

& vr 0 ^ t  ε)

Theorem: ¡

Ini5al ¡Condi5ons ¡→ ¡[Hybrid ¡System] ¡(Requirements) ¡

Stefan ¡Mitsch ¡– ¡Computer ¡Science ¡Department ¡– ¡Carnegie ¡Mellon ¡University ¡

Robot ¡Sensing ¡

slide-15
SLIDE 15

.:: ¡

RSS’13 ¡

Model ¡and ¡Proof ¡

ψps ! [dwps] ✓ (vr = 0) _ ⇣ kpr pok > v2

r

2b + V vr b ⌘◆

dwps ⌘ (ctrlo || (senser; ctrlr); dyn)⇤ ctrlo ⌘ vo = (⇤, ⇤); ?kvok  V senser ⌘

  • (δr := 0; gr := 0) [ (δr := δr; gr := gr)
  • ;

(˜ pr := (⇤, ⇤); ?(k˜ pr prk  Up + δr) ctrlr ⌘ (ar := b) [ (?vr = 0; ar := 0; ωr := 0) [ (ar := ⇤; ?b  ar  A; ωr := ⇤; ? Ω  ωr  Ω; pc := (⇤, ⇤); dr := (⇤, ⇤); po := (⇤, ⇤); ?feasible ^ safe) feasible ⌘ k˜ pr pck > 0 ^ ωrk˜ pr pck = vr ^ dr = (˜ pr pc)? k˜ pr pck safe ⌘ k˜ pr pok > v2

r

2b + V vr b + ✓A b + 1 ◆ ✓A 2 ε2 + ε(vr + V ) ◆ + Up + g∆ dyn ⌘ (t := 0; px

r 0 = vrdx r, py r 0 = vrdy r, dx r 0 = ωrdy r, dy r 0 = ωrdx r,

px

  • 0 = vx
  • , py
  • 0 = vy
  • , v0

r = ar, ω0 r =

ar kpr pck, t0 = 1, g0

r = 1, δ0 r = ∆

& vr 0 ^ t  ε)

Theorem: ¡

Ini5al ¡Condi5ons ¡→ ¡[Hybrid ¡System] ¡(Requirements) ¡

Stefan ¡Mitsch ¡– ¡Computer ¡Science ¡Department ¡– ¡Carnegie ¡Mellon ¡University ¡

Robot ¡Control ¡

slide-16
SLIDE 16

.:: ¡

RSS’13 ¡

Model ¡and ¡Proof ¡

ψps ! [dwps] ✓ (vr = 0) _ ⇣ kpr pok > v2

r

2b + V vr b ⌘◆

dwps ⌘ (ctrlo || (senser; ctrlr); dyn)⇤ ctrlo ⌘ vo = (⇤, ⇤); ?kvok  V senser ⌘

  • (δr := 0; gr := 0) [ (δr := δr; gr := gr)
  • ;

(˜ pr := (⇤, ⇤); ?(k˜ pr prk  Up + δr) ctrlr ⌘ (ar := b) [ (?vr = 0; ar := 0; ωr := 0) [ (ar := ⇤; ?b  ar  A; ωr := ⇤; ? Ω  ωr  Ω; pc := (⇤, ⇤); dr := (⇤, ⇤); po := (⇤, ⇤); ?feasible ^ safe) feasible ⌘ k˜ pr pck > 0 ^ ωrk˜ pr pck = vr ^ dr = (˜ pr pc)? k˜ pr pck safe ⌘ k˜ pr pok > v2

r

2b + V vr b + ✓A b + 1 ◆ ✓A 2 ε2 + ε(vr + V ) ◆ + Up + g∆ dyn ⌘ (t := 0; px

r 0 = vrdx r, py r 0 = vrdy r, dx r 0 = ωrdy r, dy r 0 = ωrdx r,

px

  • 0 = vx
  • , py
  • 0 = vy
  • , v0

r = ar, ω0 r =

ar kpr pck, t0 = 1, g0

r = 1, δ0 r = ∆

& vr 0 ^ t  ε)

Theorem: ¡

Ini5al ¡Condi5ons ¡→ ¡[Hybrid ¡System] ¡(Requirements) ¡

Stefan ¡Mitsch ¡– ¡Computer ¡Science ¡Department ¡– ¡Carnegie ¡Mellon ¡University ¡

Safe ¡Curve ¡

slide-17
SLIDE 17

.:: ¡

RSS’13 ¡

Model ¡and ¡Proof ¡

ψps ! [dwps] ✓ (vr = 0) _ ⇣ kpr pok > v2

r

2b + V vr b ⌘◆

dwps ⌘ (ctrlo || (senser; ctrlr); dyn)⇤ ctrlo ⌘ vo = (⇤, ⇤); ?kvok  V senser ⌘

  • (δr := 0; gr := 0) [ (δr := δr; gr := gr)
  • ;

(˜ pr := (⇤, ⇤); ?(k˜ pr prk  Up + δr) ctrlr ⌘ (ar := b) [ (?vr = 0; ar := 0; ωr := 0) [ (ar := ⇤; ?b  ar  A; ωr := ⇤; ? Ω  ωr  Ω; pc := (⇤, ⇤); dr := (⇤, ⇤); po := (⇤, ⇤); ?feasible ^ safe) feasible ⌘ k˜ pr pck > 0 ^ ωrk˜ pr pck = vr ^ dr = (˜ pr pc)? k˜ pr pck safe ⌘ k˜ pr pok > v2

r

2b + V vr b + ✓A b + 1 ◆ ✓A 2 ε2 + ε(vr + V ) ◆ + Up + g∆ dyn ⌘ (t := 0; px

r 0 = vrdx r, py r 0 = vrdy r, dx r 0 = ωrdy r, dy r 0 = ωrdx r,

px

  • 0 = vx
  • , py
  • 0 = vy
  • , v0

r = ar, ω0 r =

ar kpr pck, t0 = 1, g0

r = 1, δ0 r = ∆

& vr 0 ^ t  ε)

Theorem: ¡

Ini5al ¡Condi5ons ¡→ ¡[Hybrid ¡System] ¡(Requirements) ¡

Stefan ¡Mitsch ¡– ¡Computer ¡Science ¡Department ¡– ¡Carnegie ¡Mellon ¡University ¡

Con5nuous ¡Dynamics ¡

slide-18
SLIDE 18

.:: ¡

RSS’13 ¡

Model ¡and ¡Proof ¡

ψps ! [dwps] ✓ (vr = 0) _ ⇣ kpr pok > v2

r

2b + V vr b ⌘◆

dwps ⌘ (ctrlo || (senser; ctrlr); dyn)⇤ ctrlo ⌘ vo = (⇤, ⇤); ?kvok  V senser ⌘

  • (δr := 0; gr := 0) [ (δr := δr; gr := gr)
  • ;

(˜ pr := (⇤, ⇤); ?(k˜ pr prk  Up + δr) ctrlr ⌘ (ar := b) [ (?vr = 0; ar := 0; ωr := 0) [ (ar := ⇤; ?b  ar  A; ωr := ⇤; ? Ω  ωr  Ω; pc := (⇤, ⇤); dr := (⇤, ⇤); po := (⇤, ⇤); ?feasible ^ safe) feasible ⌘ k˜ pr pck > 0 ^ ωrk˜ pr pck = vr ^ dr = (˜ pr pc)? k˜ pr pck safe ⌘ k˜ pr pok > v2

r

2b + V vr b + ✓A b + 1 ◆ ✓A 2 ε2 + ε(vr + V ) ◆ + Up + g∆ dyn ⌘ (t := 0; px

r 0 = vrdx r, py r 0 = vrdy r, dx r 0 = ωrdy r, dy r 0 = ωrdx r,

px

  • 0 = vx
  • , py
  • 0 = vy
  • , v0

r = ar, ω0 r =

ar kpr pck, t0 = 1, g0

r = 1, δ0 r = ∆

& vr 0 ^ t  ε)

Theorem: ¡

Ini5al ¡Condi5ons ¡→ ¡[Hybrid ¡System] ¡(Requirements) ¡

Stefan ¡Mitsch ¡– ¡Computer ¡Science ¡Department ¡– ¡Carnegie ¡Mellon ¡University ¡

✔ ¡Verified ¡in ¡KeYmaera ¡

  • ­‑

Proof ¡

  • ­‑

Switching ¡constraints ¡

  • ­‑

Design ¡implica>ons ¡& ¡trade-­‑offs ¡

slide-19
SLIDE 19

.:: ¡

RSS’13 ¡

Provably ¡Safe ¡Obstacle ¡Avoidance ¡

Sta>c ¡safety ¡ Passive ¡ safety ¡ Friendly ¡ safety ¡ Sensor ¡ uncertainty ¡ Actuator ¡ disturbance ¡ Sensor ¡failure ¡ KeYmaera ¡

dwps ⌘ (ctrlo || (senser; ctrlr); dyn)⇤ ctrlo ⌘ vo = (⇤, ⇤); ?kvok  V senser ⌘
  • (δr := 0; gr := 0) [ (δr := δr; gr := gr)
  • ;
(˜ pr := (⇤, ⇤); ?(k˜ pr prk  Up + δr) ctrlr ⌘ (ar := b) [ (?vr = 0; ar := 0; ωr := 0) [ (ar := ⇤; ?b  ar  A; ωr := ⇤; ? Ω  ωr  Ω; pc := (⇤, ⇤); dr := (⇤, ⇤); po := (⇤, ⇤); ?feasible ^ safe) feasible ⌘ k˜ pr pck > 0 ^ ωrk˜ pr pck = vr ^ dr = (˜ pr pc)? k˜ pr pck safe ⌘ k˜ pr pok > v2 r 2b + V vr b + ✓A b + 1 ◆ ✓A 2 ε2 + ε(vr + V ) ◆ + Up + g∆ dyn ⌘ (t := 0; px r 0 = vrdx r, py r 0 = vrdy r, dx r 0 = ωrdy r, dy r 0 = ωrdx r, px
  • 0 = vx
  • , py
  • 0 = vy
  • , v0
r = ar, ω0 r = ar kpr pck, t0 = 1, g0 r = 1, δ0 r = ∆ & vr 0 ^ t  ε)

dL ¡Model ¡ Sφnx ¡

dwps ⌘ (ctrlo || (senser; ctrlr); dyn)⇤ ctrlo ⌘ vo = (⇤, ⇤); ?kvok  V senser ⌘
  • (δr := 0; gr := 0) [ (δr := δr; gr := gr)
  • ;
(˜ pr := (⇤, ⇤); ?(k˜ pr prk  Up + δr) ctrlr ⌘ (ar := b) [ (?vr = 0; ar := 0; ωr := 0) [ (ar := ⇤; ?b  ar  A; ωr := ⇤; ? Ω  ωr  Ω; pc := (⇤, ⇤); dr := (⇤, ⇤); po := (⇤, ⇤); ?feasible ^ safe) feasible ⌘ k˜ pr pck > 0 ^ ωrk˜ pr pck = vr ^ dr = (˜ pr pc)? k˜ pr pck safe ⌘ k˜ pr pok > v2 r 2b + V vr b + ✓A b + 1 ◆ ✓A 2 ε2 + ε(vr + V ) ◆ + Up + g∆ dyn ⌘ (t := 0; px r 0 = vrdx r, py r 0 = vrdy r, dx r 0 = ωrdy r, dy r 0 = ωrdx r, px
  • 0 = vx
  • , py
  • 0 = vy
  • , v0
r = ar, ω0 r = ar kpr pck, t0 = 1, g0 r = 1, δ0 r = ∆ & vr 0 ^ t  ε)

✔ ¡Proof ¡

Stefan ¡Mitsch ¡– ¡Computer ¡Science ¡Department ¡– ¡Carnegie ¡Mellon ¡University ¡

Visit ¡us ¡at ¡

symbolaris.com ¡

Case ¡Studies ¡ Tools ¡

slide-20
SLIDE 20