eel 5937 managing mutability in agents eel 5937 multi agent systems lecture 26, april 10, 2003 lotzi...

12
EEL 5937 Managing mutability in agents EEL 5937 Multi Agent Systems Lecture 26, April 10, 2003 Lotzi Bölöni

Upload: preston-barton

Post on 05-Jan-2016

213 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: EEL 5937 Managing mutability in agents EEL 5937 Multi Agent Systems Lecture 26, April 10, 2003 Lotzi Bölöni

EEL 5937

Managing mutability in agents

EEL 5937 Multi Agent Systems

Lecture 26, April 10, 2003

Lotzi Bölöni

Page 2: EEL 5937 Managing mutability in agents EEL 5937 Multi Agent Systems Lecture 26, April 10, 2003 Lotzi Bölöni

EEL 5937

Randomly mutating agents

• While randomly mutating agents are possible, their applications are limited.

• It is difficult to make them follow their original agenda.

• Limited random mutation, however, can lead to interesting possibilities:– Genetic algorithms and evolutionary programming– Tabu search

• Problems: – Compiled code does not make a good chromosome (in

the genetic algorithms sense). Crossover and mutation in compiled code usually lead to gibberish.

– The agents fitness in a multiagent system is a complex parameter depending on the other agents. It is very difficult to set up good training runs.

Page 3: EEL 5937 Managing mutability in agents EEL 5937 Multi Agent Systems Lecture 26, April 10, 2003 Lotzi Bölöni

EEL 5937

Controlled mutation

• For most mutable agents, the “mutation” is controlled.– Mutation is not a really good word here. – In Bond 2, we proposed the term “agent surgery”

• Agent surgery:– A set of changes on an agent, performed under the

control of an external entity or of the agent itself, in order to achieve and agent with a changed goal or different (usually better) performance characteristics.

Page 4: EEL 5937 Managing mutability in agents EEL 5937 Multi Agent Systems Lecture 26, April 10, 2003 Lotzi Bölöni

EEL 5937

Agent surgery in Bond

• Agent surgery in Bond are essentially operations performed on the multi-agent plane.

• Surgical operations are performed by “surgical blueprint scripts”.

• The agent (usually) does not have to be stopped.

Page 5: EEL 5937 Managing mutability in agents EEL 5937 Multi Agent Systems Lecture 26, April 10, 2003 Lotzi Bölöni

EEL 5937

Problems in agent surgery

• When do we need to perform a surgical operation on the agent?

• What kind of operation do we need to perform?

• What kind of guarantees can we offer about the agent after the surgical operation?

• How can the surgical operation be embedded in the specification?

Page 6: EEL 5937 Managing mutability in agents EEL 5937 Multi Agent Systems Lecture 26, April 10, 2003 Lotzi Bölöni

EEL 5937

Primitive operations

• Agent surgery operations are assembled of a set of “primitive operations”.

• Adding / removing planes• Adding / removing states• Adding / removing transitions.

Page 7: EEL 5937 Managing mutability in agents EEL 5937 Multi Agent Systems Lecture 26, April 10, 2003 Lotzi Bölöni

EEL 5937

Invariants

• Invariants are properties of agents which are maintained across surgical operations.

• Our analysis technique will be to prove invariants for primitive operations, and then prove invariants for larger surgical operations by decomposing them into primitive operations.

• Example of invariants:– Being successful.– Achieving some subset of the agenda.– Having the agenda achievable.

Page 8: EEL 5937 Managing mutability in agents EEL 5937 Multi Agent Systems Lecture 26, April 10, 2003 Lotzi Bölöni

EEL 5937

Successful and failed runs

• We will distinguish between SUCCESS, FAILURE and other transitions in the multiplane state machine– We assume SUCCESS means that local goal of the strategy was

achieved– We assume that FAILURE means that the local goal failed (but

the agenda may be still achievable, for instance, by retrying)– Other transitions mean “choices” or “decisions”.

• A run of the agent is an ordered series of events and actions– At a courser granularity level, we can see the run as a series of

states and transitions.

• A successful run is a run without a FAILURE transition.

• A failed run involves at least one FAILURE transition or an exit code for which there was no transition in the state machine.

Page 9: EEL 5937 Managing mutability in agents EEL 5937 Multi Agent Systems Lecture 26, April 10, 2003 Lotzi Bölöni

EEL 5937

Relationship between failed/successful runs and

the agenda• The relationship is not immediate• A run might be successful without achieving

the agenda.• For instance:

– A strategy perform an exit code for which there is no transition

– It reaches a state where there are no outbound transitions etc.

• A run with some failed transitions can still achieve the agenda (for example, through retries)

• Still, we can use some additional conditions to more closely tie runs to agenda achieving.

Page 10: EEL 5937 Managing mutability in agents EEL 5937 Multi Agent Systems Lecture 26, April 10, 2003 Lotzi Bölöni

EEL 5937

Reasoning about agent surgery

• Property 1:– Adding a new state to the agent does not change the behaviour

of the agent.

• Property 2:– Adding a new transition to the agent does not change the

behaviour of the agent in successful runs. – It might turn some failed runs into successful runs.

• Property 3:– If we add a new plane to an agent and the output set of the

strategies in the new plane is disjoint from the input set of the existing strategies, for all cases where the agent achieved its agenda in its original state will achieve it in its modified state as well (maintains the achievability of the agenda)

• Corrolary 3.1– Adding a plane with a single dummy strategy maintains the

achievability of the agenda.

Page 11: EEL 5937 Managing mutability in agents EEL 5937 Multi Agent Systems Lecture 26, April 10, 2003 Lotzi Bölöni

EEL 5937

Reasoning about agent surgery (cont’d)

• Property 4:– Removing FAILURE transitions does not affect successful

runs.

• Property 5:– Removing states unreachable from the current state of

the agent, or removing transitions going to and from these states does not affect the behaviour of the agent.

• Property 6:– Removing states which are reachable only through

failure transitions does not affect successful runs.

Page 12: EEL 5937 Managing mutability in agents EEL 5937 Multi Agent Systems Lecture 26, April 10, 2003 Lotzi Bölöni

EEL 5937

Applications of agent surgery

• Step by step build up of agents.• Modifying agents to achieve a larger

agenda.• Garbage collection on agents.

– By removing unreachable states, transitions, and “stuck” planes.

• Splitting agents– For task distribution.

• Merging agents• Adapting agents to platforms and

conditions:– User interfaces – Changing algorithms– Changing operating patterns.