research challenges faced the agent-based modelling framework required the following features:...
TRANSCRIPT
Research challenges faced• The Agent-based modelling framework required
the following features:– Ability to run many millions of complex agents– Should run on any supercomputer or desktop (Linux,
Mac, Windows)– Allows economists to design models with no
knowledge of programming– Strong testing techniques to assure quality – most
large scientific software has serious bugs [Hatton 1997]
– Ability to combine different models sharing agents in a coherent and correct way
Basic philosophy of FLAME• Agents defined as communicating X-machines
– X-machine concept introduced by Eilenberg [1974] and then ignored until recently
• General computational model• Intuitive and easy to use in many different
applications – Economics, biology, management, sociology
• Messages sent to message boards• Agents are distributed across processors using
new techniques• Efficient implementation utilises the available
hardware – serial or parallel
What agents do?
• They have a memory – it contains their identity, location, other information such as their assets, employment state etc.
• They have a state which determines what they can do next
• They can read messages sent to them• They can write messages to other agents• They can carry out other operations if these are
permitted – accept job offer, buy shares, apply for credit etc.
The X-machine
n.xmlstate, positional informationetc. Input to external solvers.Input to post-processing.
messages
functions - mathematical - logical
internal functions orexternal e.g. COPASI
0.xml
initial conditions
FLAME Block Diagram
X parser files
X parser files
Xparser.exe
Xparser.exe
Model.xmlModel.xml
Functions.cFunctions.c
1-NXml files
1-NXml files
Main.exeMain.exe
0.xml0.xml
make
LibmboardLibmboard
Your filesYour files Xparser files
Xparser files
How do you define agents?
• Use XMML – e.g.
etc.
Firm in labour market – state table
A firm’s functions• Firm send vacancies. If additional workers are needed the
firm sends vacancies messages– especially the different wage offers for the different
general skill groups.• Firm send redundancies. If the firm wants to decrease the
workforce it sends redundancies.• Firm idle. Firm does nothing.• Firm reads job applications sends job offer or rejection.• Firm reads the application, ranks the applicants according to
their general and specific skills and sends as many job offers to the first ranked applicants as the firm has vacancies to fill. The other applicants are refused.
• Firm read job responses. The firm reads the responses to their job offers and updates the number of employees and the number of vacancies.
Firm messages
Parallel implementation
Parallel agents grouped on parallel nodes.
Messages synchronised
Message board library allows both serial and parallel versions to work
Implementation details hiddenfrom modellers
System automatically manages the simulation
C. Greenhough, D. Worth