(BTW, Apple still hasn't fixed the Quartz graphics issue, which means that Ascape runs dog slow OOTB on my favorite platform. Grrrr.. If you're running OS X, you'll get a huge speedup by launching the Application from the command line:
java -Dapple.awt.graphics.UseQuartz=true -jar Ascape_5.5.0.jar.)
There are a couple of cool things to note, with special props to all those folks who've made a contribution to Ascape over the years. In this release key changes are:
- Swing GUI improvements: New functionality for navigator feature of the Swing-based API from Oliver Mannion. Oliver is the very first outside contributor to Ascape. As the population of Open Source projects is heavily skewed towards those with only one developer, this represents a real milestone. So thanks and welcome, Oliver.
- User Manual and Eclipse based Documentation: Another significant outside contribution to Ascape was the user manual written way back in 2002 by Damon Centola. It's a really nicely written and very in-depth discussion of Agent-Based Modeling and Ascape. In published form it was well over a hundred pages, so it's sort of an exception to the norm for Open Source documentation. Personally, I think it would serve as a really nice basis for a course in Agent-Based Modeling. And it's free! Until now, the manual had only be available in Word and PDF format, and it was really hard to maintain. Basically it has been a static document for eight years now. Over the last few days I've (laboriously, I hate to say) converted the document to HTML and setup Eclipse help integration. In the process, I've made some improvements to the Eclipse packaging and release engineering bits. For Eclipse-oriented readers, note that the AMP project Escape component uses the Ascape API, so the new documentation will be a big help for people getting familiar with Escape. Because of the ever-present IP issues, you will have to get this documentation from the Ascape update site -- it's at http://ascape.sourceforge.net/eclipse.
While doing all of the clean up and grunt work getting this out the door, I took a few minutes to write a new forward to the User Manual. I think it's a good summation of my feelings about the Ascape effort over the years..
It's hard to believe that it has been a dozen years or so since I first started writing the code for Ascape while working at Brookings. I felt at the time that Ascape -- and especially the ideas behind Ascape -- had a lot to offer to the Agent-Based Modeling community, and I still feel that way. In fact, if I can be bold, there are ideas within Ascape that still have not been widely adopted or appreciated. I take some of the blame for not doing a better job of communicating these ideas and approaches, but I think a major factor was the failure of the various institutions involved to release Ascape into Open Source until other tools became much more widely used. The period spent trying to Ascape out to a broader audience was frustrating, and ironically that has made me a little hesitant in encouraging people to use it. There are a number of good ABM platforms available now. But while I've been heavily involved in developing other toolsets, I find that I keep coming back to Ascape -- I've simply found that it stands up very well against newer toolsets. It has a simple but very expressive design that allows deep exploration of modeling issues across many dimensions, the UI works well, and models are fast. And of course, many of the cannonical Agent-Based Models were written in Ascape and are available as part of the Ascape distribution. But then, I'm biased. I simply hope you'll give it a try and let us know what you think.