Ideation Project DA Ruwe
This program provides us with an agent based simulation of an ideation game.
SIGGI: Simulator for Idation Games and Games concerning Ideation

Provides the main method and surrounding methods for running multiple games in concession to achieve general results and a statistically significant "experiment" - normally only one instance is needed hence some values are static, but an expansion to multiple instances is easy and possible.

About

This program was created by me in six months as part of my Diplomarbeit (equivalent to Master Thesis). Please do consult the thesis first when questions arise, especially when this has to do with the design of the algorithms, the analysis etc.. The purpose of this program is to simulate an ideation game as described in the first chapter of the thesis. By this simulation the sense of the algorithms will hopefully be proven.

Installation

You should have received this program as part of a package including jar files. Thereby without installation the program should run in the JAVA runtime environment. A JAVA runtime environment is needed. Depending on the switches chosen in the input file please install R, xelatex and make sure you have proper xslt backends included in your java environment.

Under ubunut the commands

Usage

Just run

java -jar ./bin/ideationthingy.jar input.xml

where the input.xml has to be structured in the same way as the example you can find in ./examples/

Depending on the size of the experiment it might be a good idea to allocate java more heap space: -Xmx2048M

Contributions

Since I am an engineer and economist it is not sure whether I will pursue research in this field. Still I will enjoy people using this program. Contact me and I will gladly provide help. The idea is of course, that contributions should be merged into the main trunk, maybe with some supervision by me. Something will be arrangeable. I also can provide a svn repository.

ToDo

Currently this program is not 100% system independent: We manually used the slash once to separate directories and filenames. This is rather unfortunate, but can be quickly resolved. Hopefully this has been done in all occurrences. See the following code sample for reference: {verbatim} assume that the first command-line arg contains a file name

This program is written quite efficiently. The size of the output data could of course be reduced, but this way analysis is much easier, hence efficiency is not the first goal. However, runtimes can approximately be halved by keeping the xml output file in memory and not reloading it from the disk.

File

This is the input file provided in the package as example. It should explain all the necessary switches and values. It is passed to the program as the only parameter on the command line.

There are several things to note:

Copy of input file: (Status 22.08.2012)

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>

<testcase> <rscriptOn>true</rscriptOn> <xelatexOn>true</xelatexOn> <xsltOn>true</xsltOn> <directoryStylesheets>/home/ruediger/ideationPlayground/Packages/stylesheets/</directoryStylesheets>

<directoryOutput>/home/ruediger/ideationPlayground/saxon/</directoryOutput>

<directoryScripts>/home/ruediger/ideationPlayground/Packages/scripts/</directoryScripts>

<rscriptCommand>Rscript</rscriptCommand>

<xelatexCommand>xelatex</xelatexCommand>

<gameLength>5</gameLength> <gameRepetitions>3</gameRepetitions> <isFixAgents>true</isFixAgents> <isRandomAgents>false</isRandomAgents> <fixAgentsNumber>1</fixAgentsNumber> <randomAgentsNumber>1</randomAgentsNumber> <incentiveType>PerformancePrivate</incentiveType> <fixAgentsType>10</fixAgentsType>

</testcase>

Author:
Ruediger Ruwe <ruediger.ruwe @ rwth-aachen.de>
Version:
1.0
Since:
01.08.2012
 All Classes Functions Variables