You know, sometimes I feel I am developing a good understanding of programming, and the kind of thought necessary to develop AI and Alife. Then I come across a site like this , and I realize how little I actually know about Artificial Intelligence, Artificial Life, and now Artificial Evolution.
I haven’t had much time to work on my personal projects the last few days, and I will probably have even less time over the next few weeks. Such is the nature of internet work. Several months of little or nothing to do, followed by two months of frantic activity. At least I get to work on cool projects.
The flocking experiment I posted Sunday needs a lot of work. The math is all wrong, and, while the effect is interesting, it is not at all what it should be.
I ordered two more books for my library… Metamagical Themas: Questing for the Essence of Mind and Pattern and Fluid Concepts and Creative Analogies : Computer Models of the Fundamental Mechanisms of Thought , both by Douglas Hofstader, whose brain is Very Big.
Also in the Big Brain department is Golan Levin who makes math beautiful.
I have created life.
Well, maybe not created , and maybe not life, per se. I have made a flash movie which duplicates extremely simple swarming behavior in a group of organisms (read: dots). Basically they move toward the median X and Y coordinates of the swarm. This causes an amusing effect when they reach the maximum or minimum x and y boundaries of their “world”. I posted the movie here.
Flash. I still love it, and I still hate it.
Another one with rudimentary flocking behavior .
I had a flash of insight today regarding the programming of simple artificial life experiments. The simplest would be a series of algorithms running in the background of an interface, with a series of readouts of statistics… how many are left, which generation they are on, all that general stuff. Adding a graphic representation of the data improves the life metaphor, allowing visible representations of the “creatures” to visibly interact with one another.
With fairly simple object-oriented programming the artificial life (AL) forms could be given rudimentary traits — aggression, speed, strength, reproduction, life span, etc., and be allowed to interact with one another. A sidebar could keep track of the averages in the population: average aggression, average age of the group, likelihood of breeding… and, based on random starting variables, after a few or a few hundred generations, evolution will have occurred.
With a little more programming mojo–but still in the realm of the simple–the ALife individuals could be made to “cannibalize” one another, and tests could be run to see what version of the life is most likely to succeed: that which is harmful or helpful.
The idea occurred to me while I was browsing the AI Depot .
In other news, I added three Flash mouse trailers to the tech section. Flash: I love it, I hate it.
Didn’t have time to read more of The Meme Machine today. In fact, today was one of the least productive days I have had all year. Ha ha.
Right now this is still a static site. In order to make it a true blog I need to switch hosts, probably to ModWest. I want to redo this thing using xml/xslt, but in order to make it work in the 5.0 browsers on both PC and Mac I need to do the transformation on the server. ModWest supports PHP with the Sablotron XSLT parser, so this switch will probably take place before the end of winter.
Bleh. Too late at night to be creative.