E N D
Slide 1:Managing mutability in agents
EEL 5937 Multi Agent Systems Lecture 26, April 10, 2003 Lotzi Bölöni
Slide 2: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.
Slide 3: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.
Slide 4: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.
Slide 5: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?
Slide 6:Primitive operations
Agent surgery operations are assembled of a set of “primitive operations”. Adding / removing planes Adding / removing states Adding / removing transitions.
Slide 7: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.
Slide 8: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.
Slide 9: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.
Slide 10: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.
Slide 11: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.
Slide 12: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.