Discrete event/agent based simulation
Simon Frost
sdfrost at ucsd.edu
Tue Sep 30 19:24:52 UTC 2003
Dear Squeak list,
I'm new to Squeak/SmallTalk, and I've found the best way (for me) to learn
about an OO language is to implement a discrete event simulation. I've been
looking for resources in this vein, and I wonder whether anyone has any
other pointers.
For a basic DES, one needs the following:
1. A random number generator
I've found a Smalltalk version of the TT800 RNG
(http://www.dnsmith.com/squeak/#TT800), and a mailing of a Mersenne Twister
(from Makoto Matsumoto, Takuji Nishimura, and Hideo Fukumori). Are there
any other implementations I should know about, and have they been tested?
2. A scheduler
My other implementations of DES (in Python and in Eiffel, incidentally),
keep sorted timestamps in a balanced binary tree (either an AVL tree or a
Red-Black tree). Are there Collections that implement such data structures?
It's also nice to have some GUI input/output. Specifically, is there a
standard plotting library that people use?
My simulations often involve networks. Are there any nice packages for
storing, displaying, and analyzing graph structures? (I've seen some on
SqueakMap, but I haven't tried them out yet). Some nice vector graphics
routines for animating graphs would be nice too.
I've also had a look at Microcosms (http://www.agro.uba.ar/microcosms/),
which is very interesting, and I wonder how much of my models could be
built into this.
Thanks for any feedback
Simon
More information about the Squeak-dev
mailing list
|