April 2006


Options: Use Monospaced Font
Show HTML Part by Default
Show All Mail Headers

Message: [<< First] [< Prev] [Next >] [Last >>]
Topic: [<< First] [< Prev] [Next >] [Last >>]
Author: [<< First] [< Prev] [Next >] [Last >>]

Print Reply
Sean Luke <[log in to unmask]>
Reply To:
MASON Multiagent Simulation Toolkit <[log in to unmask]>
Fri, 7 Apr 2006 01:56:46 -0400
text/plain (52 lines)
On Apr 6, 2006, at 9:27 PM, Mike Little wrote:

>   I will send this directly to you in consideration of those on the
> mailing list (if others are interested just let me know). BTW, do you
> have a summary of notable changes in ver.11?

Here are the big five.  #2 is the only one that will likely require  
changes in your code.

0. Schedule no longer needs to be constructed with a specified number  
of orderings.  You can schedule any item with any ordering you like  
-- all the items at a given time will be extracted and sorted  
according to their ordering (positive or negative even) and then  
evaluated in that order.  Ties broken randomly.

1. To kill the simulation programmatically, you can call SimState.kill()

2. GUIState.getName() and GUIState.getInfo() have been changed.  You  
have to write them this way now:
         public static String getName()
         public static Object getInfo() // returns a URL or String
Note the 'static'.  If you don't implement getInfo(), MASON will  
search for a file called "index.html", preferring the one in the  
directory where your GUIState subclass is located, but if there's not  
one there, it'll look elsewhere, often crazy places -- a Java  
stupidity.  Check out how we do it in our examples: we implement  
getName() but don't implement getInfo(), and instead provide an  
index.html file for each example.  This change enables the pretty  
window that pops up now when choosing a new simulation.

3.  This is probably the one most everyone has noticed: the  
"magnifying glass" icon leading to charting etc.  This is dynamically  
loaded per-property inspectors.  We provide two built-in ones:  
StreamingPropertyInspector (tracks out to stdout, to a file, to a  
window, etc.) and ChartingPropertyInspector (charts to a time-series  
graph).  You can add additional property inspectors loaded at runtime  
by modifying the sim/portrayal/inspector/propertyinspector.classes  
file.  I like this feature particularly -- you can add property  
inspectors which track or chart ANY property in the system  

4. SimplePortrayal2D now always returns false on hit-testing as it's  
supposed to be invisible.  And OrientedPortrayal2D tests for hits on  
its oriented directional indicators.

There's a ton of bug fixes and efficiency changes etc.  The complete  
collection is in the CHANGES file.  Also we've spent some time on the  
documentation -- and there are a lot of new items in the 'howto.html'