The deadline for registration for 2005 Swarmfest in Torino, Italy, is
rapidly approaching. This meeting will be great. The focus is on
agent-based simulation modeling with Swarm and also with other simulation
libraries, such as Net Logo, Star Logo, RePast, AgentSheets, QuickSilver, or
any of the others. I've just spoken with conference Organizer Professor
Pietro Terna and there are some openings available.
If you are interested in getting started with Swarm, you might want to sign
up for the tutorial session that I will be offering on June 5. That
evening, there will be a reception and papers & speeches will be held the
6th & 7th. You can read all about it here:
http://www.swarm.org/wiki/SwarmFest2005.
The tentative list of the Swarmfest 2005 submissions is:
P.E. Johnson, E S. Herron, University of Kansas, Assessing Variation in
Mixed Electoral Rules Using Agent-Based Models
G.A. Britton, S.B. Tor, Nanyang Technological University, Singapore, Expert
Systems for Design: The Challenge for SWARM
E. Cadario, University of Torino, Italy, R & D for innovation
F. Coulon, Lund Institute of Technology, Sweden, Schumpeterian competition
with SWARM, an agent-based framework for computational modelling
G. Ferraris, R. Marras, University of Torino, Italy, The value of the security
G. Fioretti and A. Lomi, University of Bologna, Italy, An Agent-Based
Version of the “Garbage Can” Model of Organizational Decision-Making
T. Freeman, University of Saskatchewan, Canada, Agent-based modeling of
farming and rural change in Western Canada
M. L'Episcopo, A. Sgroi, Proteo Inc., Italy, Citrus Tristeza Virus desease
modelling
M. Richiardi, F. Paladi, LABORatorio R. Revelli Center for Employment
Studies, Italy, Jesus, Hillel and the Man of the Street. Moral and Social
Norms in Heterogeneous Populations
P. Terna, University of Torino, Italy, The co-evolution of enterprise
systems and employment structures
A. Cappellini, A. Raimondi, University of Torino, Italy, An hybrid
simulation of banks lending process
M. Lamieri, M. Remondino, University of Torino, Italy, Theory of Social
Networks Applied to an Evolutionary Minority Game: an AgentBased Model in Swarm
D.Ietri, M.Lamieri, University of Torino, Italy, Networks between markets
and hierarchical structures: an agent based simulation framework
R.Boero, University of Surrey, UK, Public Goods Provision in the Field: ABMs
of a Local Production System Considering Empirical Behaviour and Communication
Abstract or papers are at
http://eco83.econ.unito.it/terna/swarmfest2005papers/
Now, about the tutorial. Here's the outline, such as it is right now. I
have more work to do on the last 3 sections, but I have already done most of
the heavy lifting.
I.Power Tour of Swarm Applications (1 hour)
A. Consider an agent-based simulation. What are the defining characteristics?
i.What do the agents do?
ii. How do they interact (sense & effect each other)?
a) Do they “find each other” as individuals?
b) Do they respond to “environmental traces”?
iii. What is the Scheduling framework?
a) Do all agents act simultaneously?
b) Do they take “steps” in turn?
c) Dynamic, event-driven scheduling
d) Synchronous vs Asynchronous is a conceptual, not a Swarm, distinction
B.Survey and graphical demonstration:
i.Conway's Game of Life
ii. Schelling's Neighborhood Segregation Model
iii. Savage's Arborgames
iv. Santa Fe Artificial Stock Market
v. Latane & Nowak's Social Impact Model
vi. Heatbugs
vii. Mousetrap
viii. Huckfeldt & Johnson Opinion Formation Model
II. How to get started (45 minutes)
A. Installing Swarm
B. What Programming background is required
C. What every Swarm programmer needs these things
i.The Apple Obj-C book
ii. Swarm docs & user guide & Swarm FAQ
iii. swarmapps & the tutorial
III.Swarm Idioms
A. Memory “zones”
B. createBegin/createEnd
C. Protocols (id <Activity>) versus (id) and (Activity *)
D. This will continue along with basic concepts I think are important.
IV.Anatomy of a Swarm Program: Swarm Sugar Scape (sss)
A. This will not be massively different from the outline I have online
already at
http://lark.cc.ku.edu/~pauljohn/Presentations/ESA-Portland-2004/Presentations/SSS_Swarm_Tutorial1.pdf
V.Adding a New Class in a Swarm Model: A Predator on the Sugar Scape
A. The Handouts that go with this are online here:
http://lark.cc.ku.edu/~pauljohn/Presentations/ESA-Portland-2004/Handouts/sss-2.2-Handouts.tar.gz
Message to Swarm Tutorial Students:
It is not possible for you to learn all nuances and details of Swarm in a
single afternoon. You can, however, gain a solid understanding of the kinds
of problems for which Swarm programs have proven useful and some ideas about
how you might apply these models in your own research.
I think the best way to prepare for the tutorial is to find a computer that
has Swarm-2.2 installed, or install it for yourself, and then try to
download the swarmapps-objc package of demonstration programs. In
particular, inside that package, there is a step-by-step tutorial for Swarm.
If you read through the README files in those directories, and perhaps try
to compile and run some of the examples, I think it will give you a good
frame of mind for the tutorial.
If you can't get access to a computer that has a working copy of Swarm, I'd
urge you to take a couple of steps in preparation. First, get a good book
on the C programming language. If you can find a book that has the coverage
of Objective-C as well, such as Steven Kochan's recent book, "Programming
with Objective-C" then that will be fine. But the Objective-C part is not
really necessary. After you understand C, you can download a free book from
the Apple website. That's the one we colloquially call “the objective-C
book” because, for a long time, it was the only book to be found on the
subject. I keep a copy of that book stashed here:
http://lark.cc.ku.edu/~pauljohn/ps905/ObjC.pdf
If you've only used programs before, but never written one, you will have to
travel up a steep learning curve. I've made that transition myself, and
would urge you to be patient and to keep trying. I think the best thing you
could do for yourself is to avoid using MS Windows. Get a Unix or Linux
Operating system of some sort, or get a Macintosh OS X, because that is a
BSD Unix system underneath. I've seen it with my own eyes—you can open up a
terminal and interact with it as if it were really a Unix system. MS
Windows is still too frustrating for me. I understand, lots of people use
it, but that doesn't mean its right.
When I come to the Swarm tutorial, I'll bring some installation disks for
the Fedora Core Linux distribution. If you want to erase a laptop, or if you
have some free space, I'll walk you through an installation. Contact me
ahead of time, we can schedule that. I'll be in Torino by June 4.
--
Paul E. Johnson email: [log in to unmask]
Dept. of Political Science http://lark.cc.ku.edu/~pauljohn
1541 Lilac Lane, Rm 504
University of Kansas Office: (785) 864-9086
Lawrence, Kansas 66044-3177 FAX: (785) 864-5700
|