Create your own awesome maps

Even on the go

with our free apps for iPhone, iPad and Android

Get Started

Already have an account?
Log In

GarlicSim talk, Ram Rachum (cool-RR) by Mind Map: GarlicSim talk, Ram Rachum (cool-RR)
0.0 stars - reviews range from 0 to 5

GarlicSim talk, Ram Rachum (cool-RR)


Pythonic Platform for computer simulations

important for research


developed solely by Ram

Case study

Conway's Game of Life

nice case of feedback loop

recently researches found a creature that disintegrates & creates itself somewhere else



scientists explores the world

creates a model, hypothises rules

simulations show a world governed by the model

then scientists can compare the model results with the real world

& if it works, you can test things not possible to experiment in the real world

Turning a model into a simulation

is difficult

easy to do something q&d, but difficult to change & extend

That's why you need a framework

to do it faster


need to find what's common to all simulations



stock market

Suggested abstraction

every simulation has, World state, state of things in the modelled world, Step function, takes a state & changes it to the next step in time, based on the rules of the model

Once you have these, you can start playing the simulation




completely optional

you can just, import garlicsim

you can run graphical simulation with your simpack, & you can also create a wx extension just to make it nicer


board view, presents the world state

seek bar, timeline, yellow area was calculated, you can jump to points already calculated

tree browser, "time tree", generalization of timeline, supports forking, usage, use case 1, how could things have happened differently?, relevant only to non-deterministic simulations, use case 2, how could things have happened differently had the model laws were different?, giving different arguments to the step function, use case 3, what would happen if I make changes in the simulation world?, how, either, fork by crunching, runs the sim few more times from a given state, modify a state & see how the simulation evolves from there, main value of GarlicSim

playback controls

python shell, explore, extend & interact with the model



simulation package, type of simulation, has the code for, world state, state function


data of a simulation



manages the simpack, getting the state, getting the step function


creates a cruncher to run step functions

several cruncher types, there are currently, Thread cruncher, Process cruncher, would love to use, PiCloud



prisoner dilema

evolutionary using a population of players

3 strategies, angel, asshole, smarty

you set the initial distribution of strategies among the population, evetually the assholes get almost extincted, & then the angels grow back a bit

very cool..



engine, LGPL licensed


collection of simpacks, LGPL licensed


not yet OSS

getting started


or download installer

video intro & tutorials in the web site

Really wants feedback!