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)

About

Pythonic Platform for computer simulations

important for research

fun

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

Why

need

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

Framework

need to find what's common to all simulations

life

physics

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

GUI

called

garlicsim_wx

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

contains

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

entities

simpack

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

project

data of a simulation

architecture

SimpackGrokker

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

CrunchingManager

creates a cruncher to run step functions

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

examples

queue

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..

packages

garlicsim

engine, LGPL licensed

garlicsim_lib

collection of simpacks, LGPL licensed

garlicsim_wx

not yet OSS

getting started

easy_install

or download installer

video intro & tutorials in the web site

garlicsim.org

Really wants feedback!