Friday, April 10, 2009

StarLogo TNG

what is StarLogo TNG? from the website: "StarLogo TNG is The Next Generation of StarLogo modeling and simulation software. While this version holds true to the premise of StarLogo as a tool to create and understand simulations of complex systems, it also brings with it several advances. Through TNG we hope to:
  1. Lower the barrier to entry for programming with a graphical interface where language elements are represented by colored blocks that fit together like puzzle pieces.
  2. Entice more young people into programming through tools that facilitate making games.
  3. Use 3D graphics to make more compelling and rich games and simulation models."
and why does it interest me? is a relatively simple program for modeling complex and emergent systems using agent-based modeling. my first experiment is the epidemic model: i made a bunch of green balls which randomly "walk" around a space (in 3D, though they only move horizontally in this version). then i set loose a virus which "infects" some of the balls and turns them red. when a red ball bumps into a green ball, the green ball is "infected" and turns red. there is an immunity function which turns a certain percentage of balls blue - when these balls bump into red balls, they do not become infected. there is also a recovery function which allows a red ball to turn green again after a specified period of time. for all of these functions, i made sliders which can adjust the rate of recovery and the percentage of immune balls. once i populate the space with balls and set them "walking", i can play with these sliders and watch as the rate of infection in the population changes, too. sometimes the entire population is red (dead!) and sometimes there is a balance between infection, recovery, and immunity where most of the population is green with the odd red or blue ball. what does an epidemic model have to do with my thesis? its not so much the epidemic that interests me, of course, but the ability to model emergent systems in three dimensions - spatially. StarLogo has the ability to give any entity modeled a set of rules which it applies independantly in reaction to input received during the execution of the program. there are two ways which i could use this software: first, i can create an architecture (modeling the block of buildings i'm watching) within which i set loose a set of agents (people modeled after the the users of the building). the goal will be to first produce a system which simulates reality - people reacting to one another and to the architecture in a way which is "normal" based on my observations and research. (there's a pretty serious issue regarding the complexity of human beings which i need to address here.) next i'd like to play with the system - tweaking the architecture to see if i can enhance the characteristics of adaptive emergent systems within the group of building users. second, i can try to simulate the emergence of the vernacular form. i'll argue that architecture is modified over time in much the same way as a termite nest or ant hill is formed - people modify a building based on a set of rules, which in turn modifies the nature of the group using the building. the bullshit is setting in, so i'll stop now. my next few posts will discuss the phenomenon of emergence, the method of agent-based modeling, and what other people are doing in architecture/emergence.

No comments:

Post a Comment