Evolving Hybrid Time-Shuffled Behavior of Agents Computer Architecture NIDISC 2010, April 19, Atlanta Group Patrick Ediger and Rolf Hoffmann Image Source: www.kulturschnitte.de (Claudia Lohmann) NIDISC 2010, April 19, Atlanta | Computer Architecture Group, Dept. of Computer Science | 1
Motivation Develop efficient GA-based methods that allow to find the optimal local behavior of moving agents . Hybrid behavior : mixture of different behaviors (strategies) Is mixing effective? In which way can we mix it? Applications with agents Simulation of “real” worlds Artificial worlds Distributed algorithms Routing ... NIDISC 2010, April 19, Atlanta | Computer Architecture Group, Dept. of Computer Science | 2
Problem Statement: All-to-All Communication Given is a 2D-Cellular Automaton (CA) with moving agents. Initially, the information is distributed mutually exclusive. All agents shall exchange all their information. Information is exchanged and propagated when agents meet with a cell in between them. 3 0 1 2 1000 0100 0001 0010 initial information: NIDISC 2010, April 19, Atlanta | Computer Architecture Group, Dept. of Computer Science | 3
Problem Statement: All-to-All Communication Given is a 2D-Cellular Automaton (CA) with moving agents. Initially, the information is distributed mutually C exclusive. All agents shall exchange all their information. Information is exchanged and propagated when agents meet with a cell in between them. 3 0 1 2 1000 0100 0001 0010 initial information: 1100 1100 0001 0010 NIDISC 2010, April 19, Atlanta | Computer Architecture Group, Dept. of Computer Science | 4
Problem Statement: All-to-All Communication Given is a 2D-Cellular Automaton (CA) with moving agents. Initially, the information is distributed mutually exclusive. All agents shall exchange all their information. Information is exchanged and propagated when agents meet with a cell in between them. 3 0 1 2 1000 0100 0001 0010 initial information: 1100 1100 0001 0010 NIDISC 2010, April 19, Atlanta | Computer Architecture Group, Dept. of Computer Science | 5
Problem Statement: All-to-All Communication Given is a 2D-Cellular Automaton (CA) with moving agents. Initially, the information is distributed mutually exclusive. C All agents shall exchange all their information. Information is exchanged and propagated when agents meet with a cell in between them. 3 0 1 2 1000 0100 0001 0010 initial information: 1100 1100 0001 0010 1100 1100 0011 0011 NIDISC 2010, April 19, Atlanta | Computer Architecture Group, Dept. of Computer Science | 6
Problem Statement: All-to-All Communication Given is a 2D-Cellular Automaton (CA) with moving agents. Initially, the information is distributed mutually exclusive. All agents shall exchange all their information. C Information is exchanged and propagated when agents meet with a cell in between them. 3 0 1 2 1000 0100 0001 0010 initial information: 1100 1100 0001 0010 1100 1100 0011 0011 1100 1111 0011 1111 NIDISC 2010, April 19, Atlanta | Computer Architecture Group, Dept. of Computer Science | 7
Problem Statement: All-to-All Communication Given is a 2D-Cellular Automaton (CA) with moving agents. Initially, the information is distributed mutually exclusive. All agents shall exchange all their information. Information is exchanged and propagated when agents meet with a cell in between them. 3 0 1 2 1000 0100 0001 0010 initial information: 1100 1100 0001 0010 1100 1100 0011 0011 1100 1111 0011 1111 NIDISC 2010, April 19, Atlanta | Computer Architecture Group, Dept. of Computer Science | 8
Problem Statement: All-to-All Communication Given is a 2D-Cellular Automaton (CA) with moving agents. Initially, the information is distributed mutually C exclusive. All agents shall exchange all their information. Information is exchanged and propagated when agents meet with a cell in between them. 3 0 1 2 1000 0100 0001 0010 initial information: 1100 1100 0001 0010 1100 1100 0011 0011 1100 1111 0011 1111 1111 1111 1111 1111 NIDISC 2010, April 19, Atlanta | Computer Architecture Group, Dept. of Computer Science | 9
Problem Statement: All-to-All Communication Given is a 2D-Cellular Automaton (CA) with moving agents. Initially, the information is distributed mutually exclusive. All agents shall exchange all their information. Information is exchanged and propagated when agents meet with a cell in between them. 3 0 1 2 1000 0100 0001 0010 initial information: 1100 1100 0001 0010 1100 1100 0011 0011 1100 1111 0011 1111 1111 1111 1111 1111 NIDISC 2010, April 19, Atlanta | Computer Architecture Group, Dept. of Computer Science | 10
Cellular Automata Model: Modeling Moving Agents Agents are directed: N, E, S, W front cell F reads and copies the agent C F current cell C deletes the agent from itself NIDISC 2010, April 19, Atlanta | Computer Architecture Group, Dept. of Computer Science | 11
Cellular Automata Model: Extended Neighborhood Conflict resolution requires an extended neighborhood (Manhattan Distance 2) C F C F Deleting by current cell C and copying by the front cell F must be consistent and thus based on the same information . NIDISC 2010, April 19, Atlanta | Computer Architecture Group, Dept. of Computer Science | 12
Cellular Automata Model: Modeling Agent Behavior (I) Agents react on inputs from the neighbor cells. Agents are controlled by finite state machines (FSM) with limited complexity. The output of the FSM activates an action, that is checked for conformity. Turn R ight/ L eft (+ m ove ahead if possible): R , L , Rm , Lm Control Inputs from Check for automaton neighbor cells conformity action (FSM) NIDISC 2010, April 19, Atlanta | Computer Architecture Group, Dept. of Computer Science | 13
Cellular Automata Model: Modeling Agent Behavior (II) Decision between the actions Lm , Rm , L and R is defined by a finite state machine (e.g., 6-states). L Rm Lm 5 4 3 x=0 (blocked) R state graph L x=1 (free) L Rm L R Lm R Rm 2 0 1 Lm state table , defining the behavior (algorithm) of an agent, used as genome input x 0 1 state s 0 1 2 3 4 5 0 1 2 3 4 5 nextstate, output 1,1 5,0 3,0 4,1 5,1 3,0 1,0 2,1 3,1 4,0 5,1 0,0 s',y action R L R L R L Lm Rm Rm Lm Rm Lm action index used in GA 0 1 2 3 4 5 6 7 8 9 10 11 i NIDISC 2010, April 19, Atlanta | Computer Architecture Group, Dept. of Computer Science | 14
Goal of this particular investigation Develop efficient GA-based methods that allow to find the optimal local behavior of moving agents . NIDISC 2009 non-hybrid behavior vs. hybrid behavior hybrid behavior by separately evolving FSMs for subtasks and joining FSMs by time-shuffling NIDISC 2010 Can hybrid behavior be evolved directly (not separately)? Is directly evolving more efficient than separately evolving? NIDISC 2010, April 19, Atlanta | Computer Architecture Group, Dept. of Computer Science | 15
The Time-Shuffling Technique Time-shuffling exploits the individual abilities of two different algorithms (strategies) by alternating them in time . FSMs A and B are FSM A used alternately, y A changing every T CA- generations. y Note that AB ≠ BA enable input x T can be different for FSM B A and B (T A and T B ) t mod T y B here: FSM with 6 t mod T states, T varied from 1-600 NIDISC 2010, April 19, Atlanta | Computer Architecture Group, Dept. of Computer Science | 16
The Problem Set of Initial Configurations A given set of initial configurations of the environments. 20 environments with 33x33 cells k = 16 agents placed randomly in the grid with a random direction Subset A : 10 environments with … A border 0 9 Subset B : 10 environments with … B wrap-around 10 19 NIDISC 2010, April 19, Atlanta | Computer Architecture Group, Dept. of Computer Science | 17
Types of Evolved Algorithms From NIDISC 2009: Z : non-hybrid (one FSM), evolved on entire set (A and B) XY T : hybrid (two FSMs, one shuffle period), evolved separately (X on subset A, Y on subset B) New: UV T : hybrid ( two FSMs , one shuffle period ), evolved directly on entire set (A and B) U T V T : hybrid ( two FSMs , two shuffle periods ), evolved directly on entire set (A and B) NIDISC 2010, April 19, Atlanta | Computer Architecture Group, Dept. of Computer Science | 18
Fitness Function Each FSM is assigned to a certain fitness value F F = 10 5 (16 – a i ) + 10 4 (1 – c) + g a i : no. of completely informed agents (with bit vector 11…1) c = 1, if any information was exchanged, else c = 0 g: the number of CA-generations needed to fulfill the task completely (all agents are informed) Lower values for F indicate a better fitness. F = s , if the task was solved for the simulated environment. NIDISC 2010, April 19, Atlanta | Computer Architecture Group, Dept. of Computer Science | 19
Recommend
More recommend