Software Architectures for Agents and Mobile Robots Hans-Dieter Burkhard Humboldt University Berlin...

88
Software Architectures for Agents and Mobile Robots Hans-Dieter Burkhard Humboldt University Berlin Institute of Informatics www.ki.informatik.hu-berlin.de
  • date post

    19-Dec-2015
  • Category

    Documents

  • view

    213
  • download

    0

Transcript of Software Architectures for Agents and Mobile Robots Hans-Dieter Burkhard Humboldt University Berlin...

Page 1: Software Architectures for Agents and Mobile Robots Hans-Dieter Burkhard Humboldt University Berlin Institute of Informatics .

Software Architectures for Agents and Mobile Robots

Hans-Dieter BurkhardHumboldt University BerlinInstitute of Informatics

www.ki.informatik.hu-berlin.de

Page 2: Software Architectures for Agents and Mobile Robots Hans-Dieter Burkhard Humboldt University Berlin Institute of Informatics .

H.D.Burkhard, HU Berlin MOCA 2002

Software Architectures for Agents and Mobile Robots 2

Topics of the talkSoftware Architectures

for Agents and Mobile Robots

• AI at Humboldt University

• Agents & Robots

• Architectures

• Mental states

• Control, Planning

• Double Pass Architecture

Page 3: Software Architectures for Agents and Mobile Robots Hans-Dieter Burkhard Humboldt University Berlin Institute of Informatics .

H.D.Burkhard, HU Berlin MOCA 2002

Software Architectures for Agents and Mobile Robots 3

Artificial Intelligence at Humboldt University

Understanding emerges by doing.

Applied to the study of mental processes, this means modeling of intelligent behavior by machines.

Artificial Intelligence has two aspects: First modeling with the goal of better understanding, and second engineering of useful machines.

Understanding emerges by doing.

Applied to the study of mental processes, this means modeling of intelligent behavior by machines.

Artificial Intelligence has two aspects: First modeling with the goal of better understanding, and second engineering of useful machines.

Page 4: Software Architectures for Agents and Mobile Robots Hans-Dieter Burkhard Humboldt University Berlin Institute of Informatics .

H.D.Burkhard, HU Berlin MOCA 2002

Software Architectures for Agents and Mobile Robots 4

Artificial Intelligence at Humboldt University

Case Based Reasoning

Knowledge Management

Agent Oriented Techniques

Distributed AI

Socionics

Applications in Medicine

Intelligent Robotics

www.ki.informatik.hu-berlin.deEnglish version

English version

Page 5: Software Architectures for Agents and Mobile Robots Hans-Dieter Burkhard Humboldt University Berlin Institute of Informatics .

H.D.Burkhard, HU Berlin MOCA 2002

Software Architectures for Agents and Mobile Robots 5

Example: Online Travel Agency Example: Online Travel Agency •

Page 6: Software Architectures for Agents and Mobile Robots Hans-Dieter Burkhard Humboldt University Berlin Institute of Informatics .

H.D.Burkhard, HU Berlin MOCA 2002

Software Architectures for Agents and Mobile Robots 6

“Stimulus-Response”

Travel Agent: How does it work

Customer: Agent:

Specify wish(fill in form)

Prepare answer(select and present best matching offers)

Page 7: Software Architectures for Agents and Mobile Robots Hans-Dieter Burkhard Humboldt University Berlin Institute of Informatics .

H.D.Burkhard, HU Berlin MOCA 2002

Software Architectures for Agents and Mobile Robots 7

“Stimulus-Response” Agent needs:• Knowledge about

– offers (data base)– similarity (acceptable alternative offers)

• Capabilities to– Update offers– Interaction with customer– Search of best matching offers

( Case Retrieval Nets)

Travel Agent: How does it work

Page 8: Software Architectures for Agents and Mobile Robots Hans-Dieter Burkhard Humboldt University Berlin Institute of Informatics .

H.D.Burkhard, HU Berlin MOCA 2002

Software Architectures for Agents and Mobile Robots 8

Travel Agent: How does it work

CRN = CASE RETRIEVAL NETCRN = CASE RETRIEVAL NET

Page 9: Software Architectures for Agents and Mobile Robots Hans-Dieter Burkhard Humboldt University Berlin Institute of Informatics .

H.D.Burkhard, HU Berlin MOCA 2002

Software Architectures for Agents and Mobile Robots 9

Advisory agent

Travel Agent: How could it work

Customer Agent

I would like to go for holidays.

Page 10: Software Architectures for Agents and Mobile Robots Hans-Dieter Burkhard Humboldt University Berlin Institute of Informatics .

H.D.Burkhard, HU Berlin MOCA 2002

Software Architectures for Agents and Mobile Robots 10

Advisory agent

Travel Agent: How could it work

Customer Agent

I would like to go for holidays.

Fine.

Do you like swimming?

Page 11: Software Architectures for Agents and Mobile Robots Hans-Dieter Burkhard Humboldt University Berlin Institute of Informatics .

H.D.Burkhard, HU Berlin MOCA 2002

Software Architectures for Agents and Mobile Robots 11

Advisory agent

Travel Agent: How could it work

Customer Agent

Yes, I like to be with my friend on a white strand, no other tourists.And I enjoy sports.

Fine.

Do you like swimming?

Page 12: Software Architectures for Agents and Mobile Robots Hans-Dieter Burkhard Humboldt University Berlin Institute of Informatics .

H.D.Burkhard, HU Berlin MOCA 2002

Software Architectures for Agents and Mobile Robots 12

Advisory agent

Travel Agent: How could it work

Customer Agent

Yes, I like to be with my friend on a white strand, no other tourists.And I enjoy sports.

Wonderful.

And in the evening?

Page 13: Software Architectures for Agents and Mobile Robots Hans-Dieter Burkhard Humboldt University Berlin Institute of Informatics .

H.D.Burkhard, HU Berlin MOCA 2002

Software Architectures for Agents and Mobile Robots 13

Advisory agent

Travel Agent: How could it work

Customer Agent

Good entertainment, exclusive bars, etc.

Wonderful.

And in the evening?

Page 14: Software Architectures for Agents and Mobile Robots Hans-Dieter Burkhard Humboldt University Berlin Institute of Informatics .

H.D.Burkhard, HU Berlin MOCA 2002

Software Architectures for Agents and Mobile Robots 14

Advisory agent

Travel Agent: How could it work

Customer Agent

Good entertainment, exclusive bars, etc.

Sounds fantastic, is this like what you want?

(presents an offer)

Page 15: Software Architectures for Agents and Mobile Robots Hans-Dieter Burkhard Humboldt University Berlin Institute of Informatics .

H.D.Burkhard, HU Berlin MOCA 2002

Software Architectures for Agents and Mobile Robots 15

Advisory agent

Travel Agent: How could it work

Customer Agent

Looks fantastic.But it is far behind of my financial limits, may be less exclusive.

Sounds fantastic, is this like what you want?

(presents an offer)

Page 16: Software Architectures for Agents and Mobile Robots Hans-Dieter Burkhard Humboldt University Berlin Institute of Informatics .

H.D.Burkhard, HU Berlin MOCA 2002

Software Architectures for Agents and Mobile Robots 16

Advisory agent

Travel Agent: How could it work

Customer Agent

Looks fantastic.But it is far behind of my financial limits, may be less exclusive.

So, let´s see. What´s aboutthat?

(presents another offer)

Page 17: Software Architectures for Agents and Mobile Robots Hans-Dieter Burkhard Humboldt University Berlin Institute of Informatics .

H.D.Burkhard, HU Berlin MOCA 2002

Software Architectures for Agents and Mobile Robots 17

Advisory Agent needs:• Needs of “Stimulus Response” Agent (offers, capabilities, ...) as before

Travel Agent: How could it work

Dialog

Page 18: Software Architectures for Agents and Mobile Robots Hans-Dieter Burkhard Humboldt University Berlin Institute of Informatics .

H.D.Burkhard, HU Berlin MOCA 2002

Software Architectures for Agents and Mobile Robots 18

Advisory Agent needs:

• “Dynamic” knowledge about dialog with customer

– History of dialog

– (Hypothetical) Model of current customer • Wishes, intentions• Capabilities• Beliefs

– (Flexible) Plan for • Discovering customer´s wishes, intentions, ...• Selling most valuable products

Travel Agent: How could it work

Page 19: Software Architectures for Agents and Mobile Robots Hans-Dieter Burkhard Humboldt University Berlin Institute of Informatics .

H.D.Burkhard, HU Berlin MOCA 2002

Software Architectures for Agents and Mobile Robots 19

Agent Oriented Techniques

• Information agents • Autonomous systems• Cooperative systems

• Socionics: humans + autonomous machines– Cooperation – Sociological requirements– Organizational aspects

“Agents work autonomously on behalf of their users.”

Autonomy: Following „own“ rules (example: chess program)

• Autonomy w.r.t. somebody• Complexity of decisions

Page 20: Software Architectures for Agents and Mobile Robots Hans-Dieter Burkhard Humboldt University Berlin Institute of Informatics .

H.D.Burkhard, HU Berlin MOCA 2002

Software Architectures for Agents and Mobile Robots 20

Control of Autonomous Mobile RobotsProblem: Dynamically changing environments

“Autonomous agents in real environments”

Problems: Localization, Movements, Control

Page 21: Software Architectures for Agents and Mobile Robots Hans-Dieter Burkhard Humboldt University Berlin Institute of Informatics .

H.D.Burkhard, HU Berlin MOCA 2002

Software Architectures for Agents and Mobile Robots 21

Classical distinction of agents (robots)• Reactive:

– Simple stimulus response behavior– No planning– No persistent states

• Deliberative– Complicated deliberation– Planning– Persistent states

Page 22: Software Architectures for Agents and Mobile Robots Hans-Dieter Burkhard Humboldt University Berlin Institute of Informatics .

H.D.Burkhard, HU Berlin MOCA 2002

Software Architectures for Agents and Mobile Robots 22

Sense-Think-Act-Cycle, Persistency

Environment

senseexecute

thinkAgent

Persistentstates

Page 23: Software Architectures for Agents and Mobile Robots Hans-Dieter Burkhard Humboldt University Berlin Institute of Informatics .

H.D.Burkhard, HU Berlin MOCA 2002

Software Architectures for Agents and Mobile Robots 23

Reactive Systems

• Obstacle avoidance by keeping distance

• Chess program ( ? - not “simple”)

select

senseexecute

thinkAgent

A: xxxB: yyyC: zzz

Sensor-Actor-Coupling

Page 24: Software Architectures for Agents and Mobile Robots Hans-Dieter Burkhard Humboldt University Berlin Institute of Informatics .

H.D.Burkhard, HU Berlin MOCA 2002

Software Architectures for Agents and Mobile Robots 24

Deliberative SystemsWith 3 persistent states for worldmodel, goals, plans

updateexecute

selectAgent

worldmodel

goalmeans-ends

plan

Page 25: Software Architectures for Agents and Mobile Robots Hans-Dieter Burkhard Humboldt University Berlin Institute of Informatics .

H.D.Burkhard, HU Berlin MOCA 2002

Software Architectures for Agents and Mobile Robots 25

Travel agent

Customer

Good entertainment, exclusive bars, etc.

input

Agent

Worldmodel:Discriminating customer

update

select Goal:Sell pricey

means-ends Plan:Show attractive offers etc.

executeoutput

Page 26: Software Architectures for Agents and Mobile Robots Hans-Dieter Burkhard Humboldt University Berlin Institute of Informatics .

H.D.Burkhard, HU Berlin MOCA 2002

Software Architectures for Agents and Mobile Robots 26

Unfolding the cycle

Worldmodel Worldmodel

Goal

Plan

update

execute

means-ends

select

Goal

Plan

update

execute

means-ends

select

Worldmodel

Goal

Plan

update

execute

means-ends

select

updateexecute

selectAgent

worldmodel

goalmeans-ends

plan

Page 27: Software Architectures for Agents and Mobile Robots Hans-Dieter Burkhard Humboldt University Berlin Institute of Informatics .

H.D.Burkhard, HU Berlin MOCA 2002

Software Architectures for Agents and Mobile Robots 27

Synchronization Problem

update

Simple Synchronization

selectmeans-ends

update

Problems for• dynamical environments• complex processes

select

means-ends Conflict

Page 28: Software Architectures for Agents and Mobile Robots Hans-Dieter Burkhard Humboldt University Berlin Institute of Informatics .

H.D.Burkhard, HU Berlin MOCA 2002

Software Architectures for Agents and Mobile Robots 28

Question

ROBOT = AGENT INSIDE A BODY ?

Page 29: Software Architectures for Agents and Mobile Robots Hans-Dieter Burkhard Humboldt University Berlin Institute of Informatics .

H.D.Burkhard, HU Berlin MOCA 2002

Software Architectures for Agents and Mobile Robots 29

Simple architectures for physical agents

Stimulus-Response– Immediate reactions to inputs from the real world.– „The best model of the world is the world itself.“

Braitenberg

Vehicle

No need for acomplex agent inside the robot

Page 30: Software Architectures for Agents and Mobile Robots Hans-Dieter Burkhard Humboldt University Berlin Institute of Informatics .

H.D.Burkhard, HU Berlin MOCA 2002

Software Architectures for Agents and Mobile Robots 30

Soccer Playing Robots By the year 2050,

develop a team of fully autonomous humanoid robots that can win against the human world soccer champion team.

ENIAC1946

Deep Blue1997

Test field for Goal driven research

Page 31: Software Architectures for Agents and Mobile Robots Hans-Dieter Burkhard Humboldt University Berlin Institute of Informatics .

H.D.Burkhard, HU Berlin MOCA 2002

Software Architectures for Agents and Mobile Robots 31

Annual World Championships and Conferences

SimulationSimulation

RescueRescue

Sony leggedSony legged

Middle sizeMiddle size

Small sizeSmall size

HumanoidHumanoid

www.robocup.org

Page 32: Software Architectures for Agents and Mobile Robots Hans-Dieter Burkhard Humboldt University Berlin Institute of Informatics .

H.D.Burkhard, HU Berlin MOCA 2002

Software Architectures for Agents and Mobile Robots 32

Simple Stimulus-Response BehaviorRun to the ball

Page 33: Software Architectures for Agents and Mobile Robots Hans-Dieter Burkhard Humboldt University Berlin Institute of Informatics .

H.D.Burkhard, HU Berlin MOCA 2002

Software Architectures for Agents and Mobile Robots 33

Simple Stimulus-Response BehaviorRun to the ball

Page 34: Software Architectures for Agents and Mobile Robots Hans-Dieter Burkhard Humboldt University Berlin Institute of Informatics .

H.D.Burkhard, HU Berlin MOCA 2002

Software Architectures for Agents and Mobile Robots 34

Simple Stimulus-Response BehaviorRun to the ball

Page 35: Software Architectures for Agents and Mobile Robots Hans-Dieter Burkhard Humboldt University Berlin Institute of Informatics .

H.D.Burkhard, HU Berlin MOCA 2002

Software Architectures for Agents and Mobile Robots 35

Simple Stimulus-Response BehaviorRun to the ball

LOOP worldmodel := perceive (input); commitment := deliberate (worldmodel); output := execute(commitment);

select

senseexecute

thinkAgent

A: xxxB: yyyC: zzz

Sensor-Actor-Coupling

Page 36: Software Architectures for Agents and Mobile Robots Hans-Dieter Burkhard Humboldt University Berlin Institute of Informatics .

H.D.Burkhard, HU Berlin MOCA 2002

Software Architectures for Agents and Mobile Robots 36

Why are they acting: Triggering events

• Stimulus-Response– recent events in the environment

• Goal-directed– recent events in the environment – internal goals

Page 37: Software Architectures for Agents and Mobile Robots Hans-Dieter Burkhard Humboldt University Berlin Institute of Informatics .

H.D.Burkhard, HU Berlin MOCA 2002

Software Architectures for Agents and Mobile Robots 37

Goal-directed BehaviorImprovement:

Anticipate future situations: Goal

x

Page 38: Software Architectures for Agents and Mobile Robots Hans-Dieter Burkhard Humboldt University Berlin Institute of Informatics .

H.D.Burkhard, HU Berlin MOCA 2002

Software Architectures for Agents and Mobile Robots 38

Goal-directed BehaviorImprovement:

Anticipate future situations: Goal

x

Page 39: Software Architectures for Agents and Mobile Robots Hans-Dieter Burkhard Humboldt University Berlin Institute of Informatics .

H.D.Burkhard, HU Berlin MOCA 2002

Software Architectures for Agents and Mobile Robots 39

Goal-directed BehaviorImprovement:

Anticipate future situations: Goal

Page 40: Software Architectures for Agents and Mobile Robots Hans-Dieter Burkhard Humboldt University Berlin Institute of Informatics .

H.D.Burkhard, HU Berlin MOCA 2002

Software Architectures for Agents and Mobile Robots 40

Mental States• Concerning past:

Worldmodel

• Concerning future:

Commitment (goal, intention, plan, ...)

Mental states are persistent states:

Keep information for more than one cycle

Page 41: Software Architectures for Agents and Mobile Robots Hans-Dieter Burkhard Humboldt University Berlin Institute of Informatics .

H.D.Burkhard, HU Berlin MOCA 2002

Software Architectures for Agents and Mobile Robots 41

Stimulus-Response with WorldmodelSimulate unobservable events: worldmodel

Page 42: Software Architectures for Agents and Mobile Robots Hans-Dieter Burkhard Humboldt University Berlin Institute of Informatics .

H.D.Burkhard, HU Berlin MOCA 2002

Software Architectures for Agents and Mobile Robots 42

Stimulus-Response with WorldmodelSimulate unobservable events: worldmodel

Page 43: Software Architectures for Agents and Mobile Robots Hans-Dieter Burkhard Humboldt University Berlin Institute of Informatics .

H.D.Burkhard, HU Berlin MOCA 2002

Software Architectures for Agents and Mobile Robots 43

Stimulus-Response with WorldmodelSimulate unobservable events: worldmodel

LOOP worldmodel_new := update (input, worldmodel_old); commitment := deliberate (worldmodel); output := execute(commitment);

Page 44: Software Architectures for Agents and Mobile Robots Hans-Dieter Burkhard Humboldt University Berlin Institute of Informatics .

H.D.Burkhard, HU Berlin MOCA 2002

Software Architectures for Agents and Mobile Robots 44

Worldmodel• persistent state concerning the past:

Worldmodel (Belief)

worldmodel_new := update (input, worldmodel_old);

Preprocessing of input from sensory signals

+ =

Page 45: Software Architectures for Agents and Mobile Robots Hans-Dieter Burkhard Humboldt University Berlin Institute of Informatics .

H.D.Burkhard, HU Berlin MOCA 2002

Software Architectures for Agents and Mobile Robots 45

Plan for CooperationCooperation using joint intention (double pass) Remark: Simulation of recent situation (world model )

needs knowledge about teammate´s intention

Page 46: Software Architectures for Agents and Mobile Robots Hans-Dieter Burkhard Humboldt University Berlin Institute of Informatics .

H.D.Burkhard, HU Berlin MOCA 2002

Software Architectures for Agents and Mobile Robots 46

Plan for CooperationCooperation using joint intention (double pass) Remark: Simulation of recent situation (world model )

needs knowledge about teammate´s intention

Page 47: Software Architectures for Agents and Mobile Robots Hans-Dieter Burkhard Humboldt University Berlin Institute of Informatics .

H.D.Burkhard, HU Berlin MOCA 2002

Software Architectures for Agents and Mobile Robots 47

Plan for CooperationCooperation using joint intention (double pass) Remark: Simulation of recent situation (world model )

needs knowledge about teammate´s intention

Page 48: Software Architectures for Agents and Mobile Robots Hans-Dieter Burkhard Humboldt University Berlin Institute of Informatics .

H.D.Burkhard, HU Berlin MOCA 2002

Software Architectures for Agents and Mobile Robots 48

Plan for CooperationCooperation using joint intention (double pass) Remark: Simulation of recent situation (world model )

needs knowledge about teammate´s intention

Page 49: Software Architectures for Agents and Mobile Robots Hans-Dieter Burkhard Humboldt University Berlin Institute of Informatics .

H.D.Burkhard, HU Berlin MOCA 2002

Software Architectures for Agents and Mobile Robots 49

Plan for CooperationCooperation using joint intention (double pass) Remark: Simulation of recent situation (world model )

needs knowledge about teammate´s intention

Page 50: Software Architectures for Agents and Mobile Robots Hans-Dieter Burkhard Humboldt University Berlin Institute of Informatics .

H.D.Burkhard, HU Berlin MOCA 2002

Software Architectures for Agents and Mobile Robots 50

Plan for CooperationCooperation using joint intention (double pass) Remark: Simulation of recent situation (world model )

needs knowledge about teammate´s intention

Page 51: Software Architectures for Agents and Mobile Robots Hans-Dieter Burkhard Humboldt University Berlin Institute of Informatics .

H.D.Burkhard, HU Berlin MOCA 2002

Software Architectures for Agents and Mobile Robots 51

Commitments: Goal-Directed Architecture

Difference to Stimulus Response: • Persistent state concerning the future (commitment: goal, plan ...)

LOOP worldmodel_new := update (input, worldmodel_old); commitment_new := deliberate (worldmodel_new,commitment_old); output := execute (commitment_new);

Commitment_old new alternatives Commitment_new

+ =

Page 52: Software Architectures for Agents and Mobile Robots Hans-Dieter Burkhard Humboldt University Berlin Institute of Informatics .

H.D.Burkhard, HU Berlin MOCA 2002

Software Architectures for Agents and Mobile Robots 52

AT Humboldt 98 (Simulation league)

• worldmodel• intentions• plans

utilities

Player

worldmodel

deliberation

skills

options

kick

intercept dribblepass

Pass to teammateKick to goal

Dribble Go to position

Intercept. . .

kick

interceptdribblepass

options

Page 53: Software Architectures for Agents and Mobile Robots Hans-Dieter Burkhard Humboldt University Berlin Institute of Informatics .

H.D.Burkhard, HU Berlin MOCA 2002

Software Architectures for Agents and Mobile Robots 53

UtilityTime to reach the ball

(simulation of future)

Page 54: Software Architectures for Agents and Mobile Robots Hans-Dieter Burkhard Humboldt University Berlin Institute of Informatics .

H.D.Burkhard, HU Berlin MOCA 2002

Software Architectures for Agents and Mobile Robots 54

Fastest player

to reach the ball

(simulation

of future)

Utility

Page 55: Software Architectures for Agents and Mobile Robots Hans-Dieter Burkhard Humboldt University Berlin Institute of Informatics .

H.D.Burkhard, HU Berlin MOCA 2002

Software Architectures for Agents and Mobile Robots 55

UtilityAppropriate kick direction

(simulation of future)

Page 56: Software Architectures for Agents and Mobile Robots Hans-Dieter Burkhard Humboldt University Berlin Institute of Informatics .

H.D.Burkhard, HU Berlin MOCA 2002

Software Architectures for Agents and Mobile Robots 56

Problems: Time Trade-Off• Fast decision

– newest data– rough criteria

• Complex deliberation– detailed analysis, long term plans– synchronization problem

updateexecute

selectAgent

worldmodel

goalmeans-ends

plan

update

select

means-ends conflict

think

select

senseexecute

thinkAgent

A: xxxB: yyyC: zzz

Sensor-Actor-Coupling

Page 57: Software Architectures for Agents and Mobile Robots Hans-Dieter Burkhard Humboldt University Berlin Institute of Informatics .

H.D.Burkhard, HU Berlin MOCA 2002

Software Architectures for Agents and Mobile Robots 57

Problems: Time Trade-Off– Fast decision

vs.– Complex deliberation

Architectures with different levels (layers)

Need for balance between –low level (Stimulus-Response)–high level (Goal-directed)

Page 58: Software Architectures for Agents and Mobile Robots Hans-Dieter Burkhard Humboldt University Berlin Institute of Informatics .

H.D.Burkhard, HU Berlin MOCA 2002

Software Architectures for Agents and Mobile Robots 58

Option HierarchyPlaySoccer

Offensive Defensive . . .

Score OffsideTrapAttackChangeWings/1

DoublePass/2

DoublePass/1 ...

Dribble

Pass

Intercept

Run

... ...

... ...

... ...

... ...

. . .

...

. . .

...

. . .

...

Kick. . .

Reposition

... ...

... ...

Page 59: Software Architectures for Agents and Mobile Robots Hans-Dieter Burkhard Humboldt University Berlin Institute of Informatics .

H.D.Burkhard, HU Berlin MOCA 2002

Software Architectures for Agents and Mobile Robots 59

Choice-Option (“OR-Branching”)

State (Place)

Current State (marked Place)

conditionTransition with condition

finished orcanceled

finished orcanceled

Offensive

Score DoublePass/2DoublePass/1

...

MaxUtility MaxUtilityMaxUtility...

ball out ofkickrange

Page 60: Software Architectures for Agents and Mobile Robots Hans-Dieter Burkhard Humboldt University Berlin Institute of Informatics .

H.D.Burkhard, HU Berlin MOCA 2002

Software Architectures for Agents and Mobile Robots 60

Sequence-Option (“AND-Branching”)

Pass finished

Teammate free

Dribble Pass InterceptRun

Teammate finished Pass

Reposition

Teammate passes

State (Place)

Current State (marked Place)

conditionTransition with condition

Page 61: Software Architectures for Agents and Mobile Robots Hans-Dieter Burkhard Humboldt University Berlin Institute of Informatics .

H.D.Burkhard, HU Berlin MOCA 2002

Software Architectures for Agents and Mobile Robots 61

Extension for “unexpected” situation

finished orcanceled

finished orcanceled

Offensive

Score DoublePass/2DoublePass/1

...

MaxUtility MaxUtilityMaxUtility...

ball out ofkickrange

ball control& goal free

Additional transitions (with simple conditions)

problem withteam mate

Page 62: Software Architectures for Agents and Mobile Robots Hans-Dieter Burkhard Humboldt University Berlin Institute of Informatics .

H.D.Burkhard, HU Berlin MOCA 2002

Software Architectures for Agents and Mobile Robots 62

Problems: Stability Trade-Off

• Stabile behavior+ achieve goals + reliability in cooperation fanatism

• Adaptation to new situation+ flexibility oscillation re-planning

+ =commitment_old new alternatives commitment_new

?

?

Page 63: Software Architectures for Agents and Mobile Robots Hans-Dieter Burkhard Humboldt University Berlin Institute of Informatics .

H.D.Burkhard, HU Berlin MOCA 2002

Software Architectures for Agents and Mobile Robots 63

Oscillation (Noisy Sensory Data)

+ =

?

?

Page 64: Software Architectures for Agents and Mobile Robots Hans-Dieter Burkhard Humboldt University Berlin Institute of Informatics .

H.D.Burkhard, HU Berlin MOCA 2002

Software Architectures for Agents and Mobile Robots 64

Adaptation (Changing Plan)

+ =

?

?

Page 65: Software Architectures for Agents and Mobile Robots Hans-Dieter Burkhard Humboldt University Berlin Institute of Informatics .

H.D.Burkhard, HU Berlin MOCA 2002

Software Architectures for Agents and Mobile Robots 65

Adaptation (Changing Plan)

+ =

?

?

Page 66: Software Architectures for Agents and Mobile Robots Hans-Dieter Burkhard Humboldt University Berlin Institute of Informatics .

H.D.Burkhard, HU Berlin MOCA 2002

Software Architectures for Agents and Mobile Robots 66

Adaptation (Changing Plan)

+ =

?

?

Page 67: Software Architectures for Agents and Mobile Robots Hans-Dieter Burkhard Humboldt University Berlin Institute of Informatics .

H.D.Burkhard, HU Berlin MOCA 2002

Software Architectures for Agents and Mobile Robots 67

Adaptation (Changing Plan)

+ =

?

?

Page 68: Software Architectures for Agents and Mobile Robots Hans-Dieter Burkhard Humboldt University Berlin Institute of Informatics .

H.D.Burkhard, HU Berlin MOCA 2002

Software Architectures for Agents and Mobile Robots 68

Adaptation (Changing Plan)

+ =

?

?

Page 69: Software Architectures for Agents and Mobile Robots Hans-Dieter Burkhard Humboldt University Berlin Institute of Informatics .

H.D.Burkhard, HU Berlin MOCA 2002

Software Architectures for Agents and Mobile Robots 69

Problems: Stability Trade-Off• Stabile behavior

vs.• Adaptation to new situation

– persistent state concerning future– bias for old behavior (preventing from oscillation)

Need for balanced re-deliberation

Page 70: Software Architectures for Agents and Mobile Robots Hans-Dieter Burkhard Humboldt University Berlin Institute of Informatics .

H.D.Burkhard, HU Berlin MOCA 2002

Software Architectures for Agents and Mobile Robots 70

Problems: Context ProblemPlaySoccer

Offensive Defensive . . .

Score OffsideTrapAttackChangeWings/1

DoublePass/2

DoublePass/1 ...

Dribble

Pass

Intercept

Run

... ...

... ...

... ...

... ...

. . .

...

. . .

...

. . .

...

Kick. . .

Reposition

... ...

... ...

Example:

(Opponent behaves in unexpected way)• Active Behavior: inside Dribbling• Invalid Condition for: Double Pass

Need for re-consideration on all levels Problem for stack oriented runtime systems

Page 71: Software Architectures for Agents and Mobile Robots Hans-Dieter Burkhard Humboldt University Berlin Institute of Informatics .

H.D.Burkhard, HU Berlin MOCA 2002

Software Architectures for Agents and Mobile Robots 71

Stack oriented architectures• Classical architectures are stack oriented

– Only the procedure on top of stack is active

i.e., only low level behavior

– Higher level behavior can become active only when

lower levels are finished/interrupted

Intentions may change on any level- caused by external events

Page 72: Software Architectures for Agents and Mobile Robots Hans-Dieter Burkhard Humboldt University Berlin Institute of Informatics .

H.D.Burkhard, HU Berlin MOCA 2002

Software Architectures for Agents and Mobile Robots 72

Travel agent•

Customer Agent

Looks fantastic.But it is far behind of my financial limits, may be less exclusive.

Intentions may change on any level- caused by external events

Ooops – no chance to sell pricey ...

Worldmodel:No Discriminating customer

Goal:Sell pricey

Plan:Show attractive offers etc.

Page 73: Software Architectures for Agents and Mobile Robots Hans-Dieter Burkhard Humboldt University Berlin Institute of Informatics .

H.D.Burkhard, HU Berlin MOCA 2002

Software Architectures for Agents and Mobile Robots 73

Problems: Least Commitment• Start: Partial Plan• Later: Exact Parameters ?

Needs consideration on all levels

Page 74: Software Architectures for Agents and Mobile Robots Hans-Dieter Burkhard Humboldt University Berlin Institute of Informatics .

H.D.Burkhard, HU Berlin MOCA 2002

Software Architectures for Agents and Mobile Robots 74

Double Pass Architecture• Predefined Option Hierarchy

• Choosen Part of it: Intention subtree(choosen by Deliberator)

• Active Part of it: Activity path

(updated by Executor)

H.D.Burkhard, HU Berlin MOCA 2002

Software Architectures for Agents and Mobile Robots 58

Option HierarchyPlaySoccer

Offensive Defensive . . .

Score OffsideTrapAttackChangeWings/1DoublePass/2DoublePass/1 ...Dribble

Pass

Intercept

Run

... ...

... ...

... ...

... ...

. . .

...

. . .

...

. . .

...

Kick. . .

Reposition

... ...

... ...

H.D.Burkhard, HU Berlin MOCA 2002

Software Architectures for Agents and Mobile Robots 75

Intention Subtree (chosen by Deliberator)

PlaySoccer

Offensive Defensive . . .

Score OffsideTrapAttackChangeWings/1DoublePass/2DoublePass/1 ...Dribble

Pass

Intercept

Run

... ...

... ...

... ...

... ...

. . .

...

. . .

...

. . .

...

Kick . . .

Reposition

... ...

... ...

H.D.Burkhard, HU Berlin MOCA 2002

Software Architectures for Agents and Mobile Robots 76

Activity Path: Active Options

PlaySoccer

Offensive Defensive . . .

Score OffsideTrapAttackChangeWings/1DoublePass/2DoublePass/1 ...Dribble

Pass

Intercept

Run

... ...

... ...

... ...

... ...

. . .

...

. . .

...

. . .

...

Kick . . .

Reposition

... ...

... ...

Page 75: Software Architectures for Agents and Mobile Robots Hans-Dieter Burkhard Humboldt University Berlin Institute of Informatics .

H.D.Burkhard, HU Berlin MOCA 2002

Software Architectures for Agents and Mobile Robots 75

Intention Subtree (chosen by Deliberator)

PlaySoccer

Offensive Defensive . . .

Score OffsideTrapAttackChangeWings/1

DoublePass/2

DoublePass/1

...Dribble

Pass

Intercept

Run

... ...

... ...

... ...

... ...

. . .

...

. . .

...

. . .

...

Kick . . .

Reposition

... ...

... ...

Page 76: Software Architectures for Agents and Mobile Robots Hans-Dieter Burkhard Humboldt University Berlin Institute of Informatics .

H.D.Burkhard, HU Berlin MOCA 2002

Software Architectures for Agents and Mobile Robots 76

Activity Path: Active Options

PlaySoccer

Offensive Defensive . . .

Score OffsideTrapAttackChangeWings/1

DoublePass/2

DoublePass/1 ...

Dribble

Pass

Intercept

Run

... ...

... ...

... ...

... ...

. . .

...

. . .

...

. . .

...

Kick . . .

Reposition

... ...

... ...

Page 77: Software Architectures for Agents and Mobile Robots Hans-Dieter Burkhard Humboldt University Berlin Institute of Informatics .

H.D.Burkhard, HU Berlin MOCA 2002

Software Architectures for Agents and Mobile Robots 77

“Doubled One-Pass-Architecture”– Deliberator-Pass (“goal-oriented”)

builds Intention Subtree

one deliberator pass may work over several cycles

– Executor-Pass (“stimulus-response”)

traverses and adjusts Activity Path

limited search space by Intention subtree

one executor pass per cycle

• Differences to “classical” programming– Control flow by deliberation (“agent oriented”)– Double Pass Runtime Organization (not by stacks)

Page 78: Software Architectures for Agents and Mobile Robots Hans-Dieter Burkhard Humboldt University Berlin Institute of Informatics .

H.D.Burkhard, HU Berlin MOCA 2002

Software Architectures for Agents and Mobile Robots 78

Deliberator: Constructs Intention Subtree

PlaySoccer

Offensive Defensive . . .

Score OffsideTrapAttackChangeWings/1

DoublePass/2

DoublePass/1

...Dribble

Pass

Intercept

Run

... ...

... ...

... ...

... ...

. . .

...

. . .

...

. . .

...

Kick . . .

Reposition

... ...

... ...

Construction may need longer time

Page 79: Software Architectures for Agents and Mobile Robots Hans-Dieter Burkhard Humboldt University Berlin Institute of Informatics .

H.D.Burkhard, HU Berlin MOCA 2002

Software Architectures for Agents and Mobile Robots 79

Executor-Pass through all levels

PlaySoccer

Offensive Defensive . . .

Score OffsideTrapAttackChangeWings/1

DoublePass/2

DoublePass/1 ...

Dribble

Pass

Intercept

Run

... ...

... ...

... ...

... ...

. . .

...

. . .

...

. . .

...

Kick . . .

Reposition

... ...

... ...

in each cycle through all levels

Page 80: Software Architectures for Agents and Mobile Robots Hans-Dieter Burkhard Humboldt University Berlin Institute of Informatics .

H.D.Burkhard, HU Berlin MOCA 2002

Software Architectures for Agents and Mobile Robots 80

Executor-Pass through all levels

PlaySoccer

Offensive Defensive . . .

Score OffsideTrapAttackChangeWings/1

DoublePass/2

DoublePass/1 ...

Dribble

Pass

Intercept

Run

... ...

... ...

... ...

... ...

. . .

...

. . .

...

. . .

...

Kick . . .

Reposition

... ...

... ...

in each cycle through all levels

Page 81: Software Architectures for Agents and Mobile Robots Hans-Dieter Burkhard Humboldt University Berlin Institute of Informatics .

H.D.Burkhard, HU Berlin MOCA 2002

Software Architectures for Agents and Mobile Robots 81

Executor-Pass through all levels

PlaySoccer

Offensive Defensive . . .

Score OffsideTrapAttackChangeWings/1

DoublePass/2

DoublePass/1 ...

Dribble

Pass

Intercept

Run

... ...

... ...

... ...

... ...

. . .

...

. . .

...

. . .

...

Kick . . .

Reposition

... ...

... ...

in each cycle through all levels

Page 82: Software Architectures for Agents and Mobile Robots Hans-Dieter Burkhard Humboldt University Berlin Institute of Informatics .

H.D.Burkhard, HU Berlin MOCA 2002

Software Architectures for Agents and Mobile Robots 82

Executor-Pass through all levels

PlaySoccer

Offensive Defensive . . .

Score OffsideTrapAttackChangeWings/1

DoublePass/2

DoublePass/1 ...

Dribble

Pass

Intercept

Run

... ...

... ...

... ...

... ...

. . .

...

. . .

...

. . .

...

Kick . . .

Reposition

... ...

... ...

in each cycle through all levels

Page 83: Software Architectures for Agents and Mobile Robots Hans-Dieter Burkhard Humboldt University Berlin Institute of Informatics .

H.D.Burkhard, HU Berlin MOCA 2002

Software Architectures for Agents and Mobile Robots 83

Executor-Pass through all levels

PlaySoccer

Offensive Defensive . . .

Score OffsideTrapAttackChangeWings/1

DoublePass/2

DoublePass/1 ...

Dribble

Pass

Intercept

Run

... ...

... ...

... ...

... ...

. . .

...

. . .

...

. . .

...

Kick . . .

Reposition

... ...

... ...

in each cycle through all levels

Page 84: Software Architectures for Agents and Mobile Robots Hans-Dieter Burkhard Humboldt University Berlin Institute of Informatics .

H.D.Burkhard, HU Berlin MOCA 2002

Software Architectures for Agents and Mobile Robots 84

Double Pass Architecture• Predefined Option Hierarchy• Deliberator

– long term deliberation (not time critical)– commitment for intentions: intention subtree

• Executor – short term reconsideration (time critical)– performs intentions on the activity path

Both working top-down from root to leaves

H.D.Burkhard, HU Berlin MOCA 2002

Software Architectures for Agents and Mobile Robots 58

Option HierarchyPlaySoccer

Offensive Defensive . . .

Score OffsideTrapAttackChangeWings/1DoublePass/2DoublePass/1 ...Dribble

Pass

Intercept

Run

... ...

... ...

... ...

... ...

. . .

...

. . .

...

. . .

...

Kick. . .

Reposition

... ...

... ...

Page 85: Software Architectures for Agents and Mobile Robots Hans-Dieter Burkhard Humboldt University Berlin Institute of Informatics .

H.D.Burkhard, HU Berlin MOCA 2002

Software Architectures for Agents and Mobile Robots 85

Synchronization (parallel work)

Sensors

Perception

Activity path

Actions

Sensors

Perception

Deliberation

Plan

Deliberator

Executor

Page 86: Software Architectures for Agents and Mobile Robots Hans-Dieter Burkhard Humboldt University Berlin Institute of Informatics .

H.D.Burkhard, HU Berlin MOCA 2002

Software Architectures for Agents and Mobile Robots 86

Synchronization (sequential work)

Sensors

Perception

Deliberation

Plan

Deliberator

Sensors

Perception

Activity path

Actions

Executor

Page 87: Software Architectures for Agents and Mobile Robots Hans-Dieter Burkhard Humboldt University Berlin Institute of Informatics .

H.D.Burkhard, HU Berlin MOCA 2002

Software Architectures for Agents and Mobile Robots 87

Double Pass Architecture: Objectives

• Balance between low level/high level

- Time Trade-off• Balanced Re-deliberation

- Stability Trade-Off• Re-consideration on all levels

- Context Problem

- Least Commitment Problem

Long Term Research Goal:Learning of complex behavior (Case Based Reasoning)

Page 88: Software Architectures for Agents and Mobile Robots Hans-Dieter Burkhard Humboldt University Berlin Institute of Informatics .

H.D.Burkhard, HU Berlin MOCA 2002

Software Architectures for Agents and Mobile Robots 88

In Progress

• Double Pass Architecture– Formal specification– Implementation

• Skills & Behaviors

THANK YOU ! THANK YOU !