Oliver Mannion wrote: > Hi there, > > We would be grateful for any responses to the following questions: > > 1) Has anyone used Ascape for microsimulation? Is it widely used? Was it a > good fit for your project? > 2) What tool kits, if any, have you used for microsimulation? Or have you > written your microsimulation without the use of a 3rd party tool kit/package? > 3) If you have used Repast for microsimulation, what has been your > experience with it? > > Thanks and regards, > > Oliver Mannion > > Interesting question. You should consider choosing a language and framework for longevity. I've used Swarm, a pre-Ascape simulation library in Objective C. Objective C has been revitalized somewhat by Apple in the last 5 years or so, but it is not growing so much as other languages. Swarm can be accessed from models in Java as well, but if you want Java you should look at Ascape, RePast, and Mason. Mason is newer, presumably it learns from the experience of others, but perhaps it is not as widely used. I'm not sure any of these will integrate well with actual longitudinal data, but I've recently learned about a program called Siena, which is for social network modeling and simulation. It is able to simulate the behavior of lots of interacting agents and it forces "real data" into the simulation. It has some pretty complicated possibiltiies for "embedding" parameters into the behavior of the agents and then estimating the parameters from data. It is designed for a very specific kind of modeling--a closed set of agents all of whom know each other. You don't need network modeling, perhaps, but you might study how they introduce the covariates and conduct estimation, then follow that approach. Siena 3 has been widely used, and a new version of Siena for R is almost ready now, and that opens up tons of possibility for you. http://stat.gamma.rug.nl/siena.html As you observe, using a commercial package will limit your options and tie you down badly. If you have a mathematical model you want to test with your microsimulation data, I'd consider using R as the organizing framework and then write the model components in C++ or C. You have to specify an individual behavior model at the core of your project, and you have not told us what kind of model that might be. The extent of the interactions among agents and the way you 'schedule' them will be a big factor. Also, you need to tell us a bit about what kinds of estimates you want in the end. If you have some complicated model that needs some parameter estimates that are based on a non-standard approach, you should lean toward something written in R because that's become the lingua franca of statistics. If you have to hire a programmer, you might as well get something clever out of it. pj -- Paul E. Johnson email: [log in to unmask] Professor, Political Science http://pj.freefaculty.org 1541 Lilac Lane, Rm 504 University of Kansas Office: (785) 864-9086 Lawrence, Kansas 66044-3177 FAX: (785) 864-5700