Beruflich Dokumente
Kultur Dokumente
September 1998
Many choices
Smart
agents with complex knowledge Systems of many small simple agents Agents in the physical world (robots) Small mobile agents ...
September 1998
Agent approaches
Behaviour
September 1998
behaviour layer n
percepts
behaviour layer 3 behaviour layer 2 behaviour layer 1
actions
September 1998
internal world model no symbolic reasoning goals a function of observer intelligence is emergent
agent behaviours
environment
September 1998
Example behaviours
go to point avoid obstacle
September 1998
September 1998
September 1998
Oscillating behaviours
run
run to ball
mark opponent
September 1998
work
many
layers and behaviours lead to difficulty in understanding and dealing with interactions. methodology to help with managing interactions
Software Engineering Australia (Vic.) September 1998
no
out of symbolic reasoning and planning recognise need for reactivity accept adequate vs optimal solution recognise that world is dynamic earliest examples IRMA and PRS use pre-defined plans rather than generating plans
September 1998
Agent-based Software Engineering Workshop Software Engineering Australia (Vic.) September 1998
BDI architecture
goals / desires
plans
intentions
September 1998
considered context condition - under what conditions is plan appropriate body - actions, sub-goals, sub-plans maintenance condition - abort if broken fail procedure - may be atomic action or more complex
September 1998
Ongoing reasoning
when
an event occurs, the agent looks for a relevant plan for each relevant plan, examines applicability selects an applicable plan & starts executing ongoing questions what goal to pursue or event to react to - now ! how to pursue it when to suspend / abandon / change level of commitment, more/less sensitive to change
Agent-based Software Engineering Workshop Software Engineering Australia (Vic.) September 1998
semantics of try and retry until achieved or possibilities exhausted Test check if known, if not find out Wait-for monitor periodically while doing other things
September 1998
Illustrative example
Airport
September 1998
Example beliefs
Aircraft
controller arrivals((plane-id, time)(plane-id, time)) runways(R1,R2,R3) ... Aircraft schedule((place, time)(place time)) altitude(height) next-arrival(place, time) ...
Agent-based Software Engineering Workshop Software Engineering Australia (Vic.) September 1998
Example events
aircraft
enters control zone possibly a radar sensor event aircraft contacts controller a radio message event runway assigned possibly an internally generated event following processing of a message.
September 1998
the plane determine runway fly landing pattern execute approach runway
assign
September 1998
Example plan
Invocation: plane enters radar area establish communication allocate runway
Maintenance: no emergency
September 1998
Hybrid systems
Layered architecture reactive layer deliberative layer Further layers plan generation social awareness emotion/personality
percepts
actions
September 1998
cleaner problem (Firby, 1993) problem: autonomous agent (robot) vacuuming a room without over-engineering the task solution requires a range of reactive and deliberative behaviour reactive: avoid obstacles - furniture, children deliberative: map the room, plan the task, interact with humans
September 1998
vacuum task (vacuum as agent) objects in room are simple (e.g., convex) stationary during cleaning, may move between cleanings people occasionally move through the room
reactive architecture appropriate / sufficient for navigation minimal state, simple sensing e.g. rug, dirt simple strategies can cover the room without a map (e.g., random walk, slow spiral outwards, etc.)
Software Engineering Australia (Vic.) September 1998
vacuum task complex objects (clean around, under) moving and stationary objects treated differently different vacuuming strategies at different times in different situations need to represent object classes and associated strategies solution naturally expressed in terms of goals and plans still need reactive capabilities for obstacle avoidance
Agent-based Software Engineering Workshop Software Engineering Australia (Vic.) September 1998
vacuum task negotiate with user Do under the sofa first. Do here later. Stay away from the baby. be able to operate correctly in varied situations
need higher level understanding of goals and plans useful to retain reactive properties for obstacle avoidance
Agent-based Software Engineering Workshop Software Engineering Australia (Vic.) September 1998
global control mechanism each agent has limited knowledge/capability asynchronous computation Interaction co-ordination co-operation competition negotiation
Agent-based Software Engineering Workshop Software Engineering Australia (Vic.) September 1998
Co-operation vs co-ordination
co-ordination
(traffic) individual goals mutual benefit avoid potential conflict co-operation (soccer game) shared goals shared plans commitment
Agent-based Software Engineering Workshop Software Engineering Australia (Vic.) September 1998
Teamwork
multi-agent
plans
roles authority relationships - can one assume the other will take on tasks when requested? global information or partial information? individual or joint goals? conflicting priorities?
September 1998
net manager / contractor multi-pass bidding system partial global planning agents exchange partial information on goals use info on others goals to reason about own activities use contract-net to assign tasks to underutilised agents conversation plans use predetermined knowledge of others capabilities and known authority relationships to drive negotiation
Agent-based Software Engineering Workshop Software Engineering Australia (Vic.) September 1998
Communication mechanisms
blackboards
contract
net protocol manager / contractor multi-pass bidding system interaction protocols e.g. request, confirm, ... shared plans possibly using roles joint intentions, joint goals, joint commitments
Agent-based Software Engineering Workshop Software Engineering Australia (Vic.) September 1998
Open environments
agents
need to find each other interoperability - agent communication languages middle agents matchmakers brokers agent difference
September 1998
requirements high level - concise, easy to parse, readable separate communication acts from domain information fit with modern networking technology - support point-to-point, broadcast, multicast be independent of transport mechanisms (http, TCP/IP...) support for facilitators
Software Engineering Australia (Vic.) September 1998
KQML
a
(ask-one
: sender joe : content (PRICE IBM ?price) : receiver stock-server : reply-with ibm-stock : language LPROLOG : ontology NYSE-TICKS)
September 1998
CORBA
Non-ACL
Communication Infrastructure:
popular for integration in intranets, Web current standard limited to OO RPC-style communication
Summary of issues
complexity
of agent agent architecture, behaviour based, plan based, hybrid many agents or few agent interactions competing, co-ordinating, co-operating, negotiating open environments agent diversity, middle agents, ACL's
Agent-based Software Engineering Workshop Software Engineering Australia (Vic.) September 1998
Case study
...
Runwa y
Runway
...
September 1998
Agents
aircraft agents request runway slot from airport monitor progress of real aircraft compute holding / delay actions air traffic controller agents arbitrator of runway use airport procedures weather knowledge runway agents manage usage schedule slot in new aircraft
September 1998
bidding solution
aircraft aircraft aircraft
request
allocation
atc
request bid request
allocation
bid
bid
request
runway
Agent-based Software Engineering Workshop
runway
Software Engineering Australia (Vic.)
runway
September 1998
aircraft
runway allocation
runway request
September 1998
runway request
atc
rescheduling request bid allocation
September 1998
runway
September 1998
request
request
bid
bid allocation allocation
rescheduling (QF638)
September 1998
atc
request allocation rescheduling best allocation
runway
best so far
runway
best so far
runway
September 1998
aircraft
runway allocation
runway request
September 1998
runway request
atc
request best allocation rescheduling
September 1998
runway
request and best so far
September 1998
request
best so far
rescheduling (QF638)
September 1998
the example focused more on the interactions among agents than their internal architecture intelligence could be embedded in the agents, e.g. how the air traffic controller adapts to changed weather different domains may require different conceptual and software tools either when designing or when building the systems the diversity of domains justifies the existing variety of agent architectures and frameworks
Software Engineering Australia (Vic.) September 1998