21
1 Task Planning for Human-Robot Interaction R. Alami, A. Clodic, V.Montreuil, E.A. Sisbot, R. Chatila, LAAS-CNRS Toulouse - France Smart Objects & Ambient Intellige nce conference (sOc -EuSAI), 12th-14 th October 2005, Grenoble, France 2 The COGNIRON Project the COGNItive Robot companiON

Pres 81

Embed Size (px)

Citation preview

Page 1: Pres 81

7/30/2019 Pres 81

http://slidepdf.com/reader/full/pres-81 1/21

1

Task Planning for Human-RobotInteraction

R. Alami, A. Clodic, V.Montreuil,

E.A. Sisbot, R. Chatila,

LAAS-CNRS

Toulouse - France

Smart Objects & Ambient Intelligence conference (sOc -EuSAI), 12th-14th October 2005, Grenoble, France

2

The COGNIRON Project

the COGNItive Robot companiON

Page 2: Pres 81

7/30/2019 Pres 81

http://slidepdf.com/reader/full/pres-81 2/21

3

The Personal Robot Assistant

Interaction is not limited to an interface

The robot should be able to operate in an

environment which has been essentially

designed for humans.

The robot will have to perform its tasks in

the presence of humans and to interactwith them.

4

Robot Decisional Issues for HRI

We have to re-visit some of the robot

decisional capabilities:

Explicit reasoning on its abilities (reflexivity)

Explicit reasoning on interactive task performance

Besides design choices, it is necessary to endowthe robot with the ability to take explicitly intoaccount the presence of humans.

Page 3: Pres 81

7/30/2019 Pres 81

http://slidepdf.com/reader/full/pres-81 3/21

5

Our first studies in this way

Design of the robot supervisor

How to represent humans in the supervisor of the

robot ?

How to make decisions with this representation ?

Human Aware Task Planning (HATP)

How to consider human preferences and social rules inthe task planning system ?

Human Aware Motion Planning (HAMP)How to make the robot move in a comfortable way for

humans ?

6

I. Design of the robot supervisor 

How to represent humans in thesupervisor of the robot ?

How to make decisions with thisrepresentation ?

Page 4: Pres 81

7/30/2019 Pres 81

http://slidepdf.com/reader/full/pres-81 4/21

7

A Control Architecture

3. Functional and execution level(action execution;

dynamic organization)

2. Validation and execution control(action coordination)

1. Decision level(planning and supervision)

Logical system

Robot: Hardware platform

mission report

Environment 

N  

W E 

Processingcomponents

GenoM 

ExecutiveKheops +Transgen

Supervisor Planner  

Propice+

IxTeT 

Data processing,Control, …

8

What is specific in our problem ?

We want a framework that allows therobot:

To acquire its goals.

To accomplish its tasks.

To produce behaviors that support itsengagement vis-à-vis its humans partnerand interpret similar behaviors from him.

To follow human task performance.

To monitor and influence humancommitment to the common goal.

Page 5: Pres 81

7/30/2019 Pres 81

http://slidepdf.com/reader/full/pres-81 5/21

9

InterAction Agent (IAA)

10

InterAction Agent (IAA)

Page 6: Pres 81

7/30/2019 Pres 81

http://slidepdf.com/reader/full/pres-81 6/21

11

InterAction Agent

(IAA) “InterAction Agents” (IAAs),similar to proxies,implemented onthe robot side as arepresentative of ahuman agent

InterAction Agent (IAA)

12

IAA Manager 

IAA Manager:

 An IAA (InterAction Agent) is createddynamically and maintained by the "IAA Manager” 

Several types of IAA (various abilities)

 Actions

Needs, preferences

Determines how the robot behave with respect tothe IAA 

Page 7: Pres 81

7/30/2019 Pres 81

http://slidepdf.com/reader/full/pres-81 7/21

13

Our framework 

EXECUTION

LEV

EL

ROBOT SUPERVISIONKERNEL

AGENDA

INTERACTION AGENTS MANAGER

TASKDELEGAT

E1

TASKDELEGAT

E2

On-goingtasks

representation

OBSERVER

T1 IAA1

ACTIONS

IAA 1 IAA 2

...

...

Data aboutrobot actionsand context

Task needsUpdate

Data Abouthumans

OBSERVER

T2 IAA2

OBSERVER

T1 IAA2

DataUpdate

IAA Data

{Gactive,Gsuspended} Reports on active goals

IAAs state

Update

14

SimulationGoal Manager 

Human-Aware Task Planner Decisional Kernel

IAA Manager 

Page 8: Pres 81

7/30/2019 Pres 81

http://slidepdf.com/reader/full/pres-81 8/21

15

SimulationGoal Manager 

Human-Aware Task Planner Decisional Kernel

IAA Manager 

16

Simulation

IAA

Goal Manager 

Human-Aware Task Planner Decisional Kernel

IAA Manager 

Page 9: Pres 81

7/30/2019 Pres 81

http://slidepdf.com/reader/full/pres-81 9/21

17

Simulation

IAA

goal

Goal Manager 

Human-Aware Task Planner Decisional Kernel

IAA Manager 

18

Simulation

IAA

goal

Goal Manager 

Human-Aware Task Planner Decisional Kernel

IAA Manager 

Page 10: Pres 81

7/30/2019 Pres 81

http://slidepdf.com/reader/full/pres-81 10/21

19

Simulation

IAA

goal

Goal Manager 

Human-Aware Task Planner Decisional Kernel

IAA Manager 

20

Simulation

IAA

goal

Task

Delegate.

Observing human activity

Estimating human commitment level to a joint goal…

Goal Manager 

Human-Aware Task Planner Decisional Kernel

IAA Manager 

Page 11: Pres 81

7/30/2019 Pres 81

http://slidepdf.com/reader/full/pres-81 11/21

21

II. Human Aware Task Planning

(HATP)

How to consider human preferencesand social rules in the task planningsystem ?

22

To plan with human preferencesModel of an actor a

i(human or robot) :

Mai

= {<Ai,C

i(ctxt)>}

Ai= an action (operator)

Ci(ctxt) = context-dependent cost associated to Ai.

Costs meaningFor a robot: difficulty to realize the action (slowness,

computational time needed, etc...)

For a human: mix between difficulty to realize theaction and gratification/pleasure to do it.

Idea⇒ Make a plan with the least cost

Page 12: Pres 81

7/30/2019 Pres 81

http://slidepdf.com/reader/full/pres-81 12/21

23

Operator example (in SHOP2)(:operator (!put ?name ?thing)

;; precondition

((actor ?name) (thing ?thing) (place ?place)(has ?name ?thing) (at ?name ?place)(drop_cost ?name ?cost))

;; delete list

((has ?name ?thing))

;; add list

((on ?thing ?place))

;; cost?cost

)

24

To plan with social rules

Undesirable states:

Pstates = {<S j,C j(ctxt)>}

If the plan implies a passage by S j, the correspondingcontext-dependent cost C j(ctxt) is added to the total

 plan cost.

Undesirable sequences:

Psequences

= {<Sk ,CO

k ,C

k (ctxt)>}

If the plan contains an undesirable sequence of actions

Sk  under the conditions COk , the correspondingcontext-dependent cost Ck (ctxt) is added to the total

 plan cost.

Page 13: Pres 81

7/30/2019 Pres 81

http://slidepdf.com/reader/full/pres-81 13/21

25

Social rules examples (1/2)

Undesirable states:Description of the state:

S1 = ((has ?name ?obj1) (has ?name ?obj2)

(food ?obj1) (clean_object ?obj2))

Cost value:

C1 = 20 if ((mop ?obj2))= 10 else

26

Social rules examples (2/2)

Undesirable sequences:

Description of the sequence:

Sk = ((!drop ?name1 ?obj) (!take ?name2 ?obj))

Conditions:

COk = ((robot ?name1) (human ?name2))

Cost value:

C1 = 20 if ((= ?name1 BOB))

= 10 else

Page 14: Pres 81

7/30/2019 Pres 81

http://slidepdf.com/reader/full/pres-81 14/21

27

HATP plan example

 A classical plan produced by SHOP2

Move fromsofa to

cupboard

Opencupboard

Bob

Robot

Move fromdoor to

cupboard

Take

glass

Move fromcupboard

to sofa

Give

glassto Bob

Move fromcupboard

to sofa

Move from

sofa totable

Take

bottle

Move from

table tosofa

Put

bottleon sofa

Takebottle

28

HATP plan example

 A plan produced by HATP (in SHOP2)

Move fromsofa to

cupboard

Opencupboard

Bob

Robot

Move fromdoor totable

Takebottle

Move fromtable to

sofa

Takeglass

Givebottleto Bob

Closecupboard

Move fromcupboard

to sofa

Page 15: Pres 81

7/30/2019 Pres 81

http://slidepdf.com/reader/full/pres-81 15/21

29

III. Human Aware Motion Planning

(HAMP)

How to make the robot move in acomfortable way for humans ?

30

Key points for HAMP

Physical safety

The robot must avoid to injure physicallyhumans:

 At the hardware level: round joints, lightand soft material.

 At the software level: control on distance,speed, etc.

Mental safetyThe robot must move in a natural wayfor humans (constraints on robot headdirection, etc...).

The robot must avoid to surprise

Page 16: Pres 81

7/30/2019 Pres 81

http://slidepdf.com/reader/full/pres-81 16/21

31

Environment representation

Home environment: 2D grid with forbidden

zones for static objects.

The cell (i,j) of the grid is associated with a

cost ai,j.

More ai,j

is greater, more the robot should

avoid the cell (i,j).

ai,j

is computed by merging several criteria.

Each criterion is represented by a numericalpotential field.

32

Physical Safety of humans

Safety criterion: control on the distance

between the robot and humans.

Costs for safety criterion:

Inversely proportional to the distance.

Human position (standing or sitting).

Page 17: Pres 81

7/30/2019 Pres 81

http://slidepdf.com/reader/full/pres-81 17/21

33

Mental Safety of humans

 Visibility criterion: keeping the robot in the

human field of view.

Costs for visibility criterion:

Inversely proportional to the distance with thehigher cost at the human head.

34

Mental Safety of humans

Hidden zones: to prevent the robot to be

hidden behind obstacles.

Costs for visibility criterion:

Based on the humanhead direction andposition of theobstacles.

Inverselyproportional to thedistance.

Page 18: Pres 81

7/30/2019 Pres 81

http://slidepdf.com/reader/full/pres-81 18/21

35

Merging the criteria

With the 3 criteria we compute a final grid:

For visible zones: ai,j = Costmerged(i,j).Costmerged(i,j) can be computed in 2 ways:

Costmerged(i,j) = max( CostS(i,j) , Cost V(i,j) )

Costmerged(i,j) = w1 * CostS(i,j) + w2 * Cost V(i,j) )

For hidden zones: ai,j = w3 * CostHZ(i,j).

 Algorithm A* to find a path in the final grid.

36

Example of a final grid

Page 19: Pres 81

7/30/2019 Pres 81

http://slidepdf.com/reader/full/pres-81 19/21

37

 

 planner 

38

Ot er resu ts (1 3)

Page 20: Pres 81

7/30/2019 Pres 81

http://slidepdf.com/reader/full/pres-81 20/21

39

Other results (2/3)

40

Ot er resu ts (3 3)

Page 21: Pres 81

7/30/2019 Pres 81

http://slidepdf.com/reader/full/pres-81 21/21

41

Future Work 

Refinement of the framework 

Dialogue

Learning

Improvement of HATP:introduce uncertainty

Improvement of HAMP:

conversion to a 3D-planner

Implementation on a tour-guide

robot