xx
List of Figures
3.7
Two X-machine agents communicating through a message
board. The message board library (Libmboard) saves current
active messages during the simulation time step. . . . . . . .
52
3.8
One iteration with two agents, each with two functions. . . .
53
3.9
Transition functions perform on memory variables. . . . . .
54
3.10 Serial versus parallel execution of agents. . . . . . . . . . . .
55
3.11 Distributed memory and synchronization. . . . . . . . . . .
55
3.12 Using filters and iterators to quicken message parsing for
agents. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
56
3.13 Simulation times across multiple processor nodes. . . . . . .
56
3.14 Timeline showing when the synchronization point occurs when
messages interact with functions. . . . . . . . . . . . . . . .
58
4.1
Block diagram of the Xparser, the FLAME simulation component. Blocks in blue are files automatically generated. The
green blocks are modeler’s files. . . . . . . . . . . . . . . . .
62
4.2
FLAME software blocks. . . . . . . . . . . . . . . . . . . . .
63
4.3
Flow diagram for the simulation describing agents, its functions and communications. . . . . . . . . . . . . . . . . . . .
71
4.4
Flow diagram for simulation describing agents, their functions
and communications between the agents with complexity. .
73
4.5
Iteration files with updated agent memory results. . . . . . .
83
5.1
Snapshot of game of life during a simulation. Adapted from
[141]. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
89
5.2
Initial distribution of sugar (left) and with agents (right).
Adapted from [21]. . . . . . . . . . . . . . . . . . . . . . . .
90
5.3
Agent perception. They can see north, south, east and west.
90
5.4
During the simulation, agents move to high sugar concentration areas. Adapted from [21]. . . . . . . . . . . . . . . . . .
91
5.5
Relationships emerged between rich and poor agents. The
middle agents behaved like banks. . . . . . . . . . . . . . . .
94
5.6
Wealth distribution among agents, with initial random sugar
distribution. cf. [21]. . . . . . . . . . . . . . . . . . . . . . .
95
5.7
View of a citizen agent in FLAME Sugarscape. . . . . . . .
96
5.8
Timeline of the basic FLAME Sugarscape model. . . . . . .
97
5.9
Three different initial settings for simple Sugarscape experiment. The citizen agents are represented by red dots and green
dots represent sugar agents in the scenario. . . . . . . . . . . 106
5.10 Sugar collected for random initial agent distribution. . . . . 107
5.11 Distribution of captured sugar. . . . . . . . . . . . . . . . . 108
5.12 Evolution of networks in a simulation. Adapted from [151]. . 109
5.13 Evolved centralization and density in networks. Adapted from
[151]. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110
5.14 Using vector equations to calculate resulting movement. . . 117
List of Figures
3.7
Two X-machine agents communicating through a message
board. The message board library (Libmboard) saves current
active messages during the simulation time step. . . . . . . .
52
3.8
One iteration with two agents, each with two functions. . . .
53
3.9
Transition functions perform on memory variables. . . . . .
54
3.10 Serial versus parallel execution of agents. . . . . . . . . . . .
55
3.11 Distributed memory and synchronization. . . . . . . . . . .
55
3.12 Using filters and iterators to quicken message parsing for
agents. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
56
3.13 Simulation times across multiple processor nodes. . . . . . .
56
3.14 Timeline showing when the synchronization point occurs when
messages interact with functions. . . . . . . . . . . . . . . .
58
4.1
Block diagram of the Xparser, the FLAME simulation component. Blocks in blue are files automatically generated. The
green blocks are modeler’s files. . . . . . . . . . . . . . . . .
62
4.2
FLAME software blocks. . . . . . . . . . . . . . . . . . . . .
63
4.3
Flow diagram for the simulation describing agents, its functions and communications. . . . . . . . . . . . . . . . . . . .
71
4.4
Flow diagram for simulation describing agents, their functions
and communications between the agents with complexity. .
73
4.5
Iteration files with updated agent memory results. . . . . . .
83
5.1
Snapshot of game of life during a simulation. Adapted from
[141]. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
89
5.2
Initial distribution of sugar (left) and with agents (right).
Adapted from [21]. . . . . . . . . . . . . . . . . . . . . . . .
90
5.3
Agent perception. They can see north, south, east and west.
90
5.4
During the simulation, agents move to high sugar concentration areas. Adapted from [21]. . . . . . . . . . . . . . . . . .
91
5.5
Relationships emerged between rich and poor agents. The
middle agents behaved like banks. . . . . . . . . . . . . . . .
94
5.6
Wealth distribution among agents, with initial random sugar
distribution. cf. [21]. . . . . . . . . . . . . . . . . . . . . . .
95
5.7
View of a citizen agent in FLAME Sugarscape. . . . . . . .
96
5.8
Timeline of the basic FLAME Sugarscape model. . . . . . .
97
5.9
Three different initial settings for simple Sugarscape experiment. The citizen agents are represented by red dots and green
dots represent sugar agents in the scenario. . . . . . . . . . . 106
5.10 Sugar collected for random initial agent distribution. . . . . 107
5.11 Distribution of captured sugar. . . . . . . . . . . . . . . . . 108
5.12 Evolution of networks in a simulation. Adapted from [151]. . 109
5.13 Evolved centralization and density in networks. Adapted from
[151]. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110
5.14 Using vector equations to calculate resulting movement. . . 117
