43
Inconsistencies in Models of Adaptive Service Robots Ivan Ruchkin * PhD Student in Software Engineering Institute for Software Research Carnegie Mellon University * with images from Jonathan Aldrich, Javier Cámara, and Bradley Schmerl Software Research Seminar (SSSG) April 10, 2017

Inconsistencies in Models of Adaptive Service Robots

Embed Size (px)

Citation preview

Page 1: Inconsistencies in Models of Adaptive Service Robots

Inconsistencies in Models ofAdaptive Service Robots

Ivan Ruchkin *PhD Student in Software Engineering

Institute for Software ResearchCarnegie Mellon University

* with images from Jonathan Aldrich, Javier Cámara, and Bradley Schmerl

Software Research Seminar (SSSG)April 10, 2017

Page 2: Inconsistencies in Models of Adaptive Service Robots

2

Service robot missions

● Autonomy in the face of uncertainty● Timeliness, power, safety

Page 3: Inconsistencies in Models of Adaptive Service Robots

3

Centralized online adaptation

Page 4: Inconsistencies in Models of Adaptive Service Robots

4

Centralized online adaptation

Does it work?

Page 5: Inconsistencies in Models of Adaptive Service Robots

5

How to check if it works

Run the system

Page 6: Inconsistencies in Models of Adaptive Service Robots

6

How to check if it works

Run the system

Run the simulation

Page 7: Inconsistencies in Models of Adaptive Service Robots

7

How to check if it works

Run the system

Run the simulation

Analyze the models

Page 8: Inconsistencies in Models of Adaptive Service Robots

8

How to check if it works

Run the system

Run the simulation

Analyze the models

Analyze the code

Page 9: Inconsistencies in Models of Adaptive Service Robots

9

How to check if it works

Run the system

Run the simulation

Analyze the models

Analyze the code

Page 10: Inconsistencies in Models of Adaptive Service Robots

10

Plan for today

● Inconsistency 1: power● Inconsistency 2: turns● What is common? ● Tentative approach: detection

Page 11: Inconsistencies in Models of Adaptive Service Robots

11

Inconsistency 1: power in simulation vs hardware

Page 12: Inconsistencies in Models of Adaptive Service Robots

12

Inconsistency 1: power in simulation vs hardware

Page 13: Inconsistencies in Models of Adaptive Service Robots

13

Inconsistency 1: power in simulation vs hardware

Model source: hardware experiments

Page 14: Inconsistencies in Models of Adaptive Service Robots

14

Inconsistency 1: power in simulation vs hardware

Model source: hardware experiments

Simulation: fixed increments

Simulation

Page 15: Inconsistencies in Models of Adaptive Service Robots

15

Inconsistency 1: power in simulation vs hardware

Model source: hardware experiments

Simulation: fixed increments

Simulation

Page 16: Inconsistencies in Models of Adaptive Service Robots

16

Inconsistency 1: models

Page 17: Inconsistencies in Models of Adaptive Service Robots

17

Inconsistency 1: models

Page 18: Inconsistencies in Models of Adaptive Service Robots

18

Inconsistency 1: summary

● Hardware power predictions do not match the simulation– Initially optimistic, later pessimistic

● Obscured by mixing power dynamics– Mode switching

– CPU and sensors

● Definition: – What deviations are acceptable, over what time?

● Assurance: – Simulation, corner case tests

Page 19: Inconsistencies in Models of Adaptive Service Robots

19

Inconsistency 2: turning in instruction graphs vs planning

Page 20: Inconsistencies in Models of Adaptive Service Robots

20

Inconsistency 2: turning in instruction graphs vs planning

A

B

C

D

Page 21: Inconsistencies in Models of Adaptive Service Robots

21

Inconsistency 2: turning in instruction graphs vs planning

A

B

C

D

Instructiongraph A B C D

Page 22: Inconsistencies in Models of Adaptive Service Robots

22

Inconsistency 2: turning in instruction graphs vs planning

A

B

C

D

A Planning + cost(C)

B D

Instructiongraph A B C D

Page 23: Inconsistencies in Models of Adaptive Service Robots

23

Inconsistency 2: turning in instruction graphs vs planning

A

B

C

D

A Planning + cost(C)

B D

Instructiongraph A B C D

State estimation = ?

Page 24: Inconsistencies in Models of Adaptive Service Robots

24

Inconsistency 2: models

Page 25: Inconsistencies in Models of Adaptive Service Robots

25

Inconsistency 2: models

Page 26: Inconsistencies in Models of Adaptive Service Robots

26

● Planning and execution represent turning differently ● State estimation is uncertain during a turn

– If optimistic, can run out of power

– If pessimistic, can waste time on charging

● Definition: – Bound of utility loss from state estimation uncertainty

● Assurance: – Quantitative model checking

Inconsistency 2: summary

Page 27: Inconsistencies in Models of Adaptive Service Robots

27

What is common?

A

B D

A B C D

Power in simulation/hardware Turns in planning/execution

Page 28: Inconsistencies in Models of Adaptive Service Robots

28

Models: big picture

Page 29: Inconsistencies in Models of Adaptive Service Robots

29

Models: big picture

Page 30: Inconsistencies in Models of Adaptive Service Robots

30

Models: big picture

Page 31: Inconsistencies in Models of Adaptive Service Robots

31

What is common?

A

B D

A B C D

Power in simulation/hardware Turns in planning/execution

● Several models with differing assumptions● Definition: bounded mismatch● Checking requires multiple semantics

Page 32: Inconsistencies in Models of Adaptive Service Robots

32

Detecting Inconsistencies

Page 33: Inconsistencies in Models of Adaptive Service Robots

33

Detecting Inconsistencies

1. Relate models ● Manual

Page 34: Inconsistencies in Models of Adaptive Service Robots

34

Relating models

Page 35: Inconsistencies in Models of Adaptive Service Robots

35

Relating models

Page 36: Inconsistencies in Models of Adaptive Service Robots

36

Detecting Inconsistencies

1. Relate models ● Manual

2. Specify consistency properties● Manual

Page 37: Inconsistencies in Models of Adaptive Service Robots

37

Specifying consistency

“Predicted and simulated power always stay within a fixed error bound”

□ ∀p, t · p = PowPred(t) → □ ( time = t → | PowSim – p | < ε)

Page 38: Inconsistencies in Models of Adaptive Service Robots

38

Detecting Inconsistencies

1. Relate models ● Manual

2. Specify consistency properties● Manual

3. Find potential inconsistencies● Automated

Page 39: Inconsistencies in Models of Adaptive Service Robots

39

Finding potential inconsistencies

Page 40: Inconsistencies in Models of Adaptive Service Robots

40

Finding potential inconsistencies

Page 41: Inconsistencies in Models of Adaptive Service Robots

41

Detecting Inconsistencies

1. Relate models ● Manual

2. Specify consistency properties● Manual

3. Find potential inconsistencies● Automated

4. Check if the consistency properties hold ● Automated

Page 42: Inconsistencies in Models of Adaptive Service Robots

42

Checking properties

Page 43: Inconsistencies in Models of Adaptive Service Robots

43

Summary

Four-step approach: Relate – Specify – Find – Check