Domain: alife.pl
Stories and comments across the archive that link to alife.pl.
Comments · 7
-
Re:Falsification
I personally think that since we know enough (not everything, but a good decent working approximation) about biochemistry that it is entirely possible to now do enhanced speed evolutionary experiments in a simulated environment. In fact, I know such research has been going on for longer than -I've- been alive already.
I myself, being passively interested in self-adapting systems have been mucking around for years with various AI, AL (artificial life), machine learning and genetic algorithm programs. You can experience the wonders of evolution for yourself if you're willing to stare at a screen for hours on end. This IS slashdot, many of us do that already. :-)
Seriously though, if you're really interested in at least seeing the very basics of evolution at work, I'd suggest a good start to be NetLOGO. It comes with a nice allotment of pre-built experiments for you to study and watch. Adaptive systems can effect very complex behaviors with very simple rules, and you can see that happen yourself if you really care.
After NetLOGO you might wanna have a look at framsticks. Framsticks is basically an evolution simulator. Not true biochemical evolution (though I do think work has been done to make a biochemically accurate framework for framsticks) but a decent framework for macro-effects of biological evolution.
Basically we already know that the mechanisms of life can (DO) change over time, and it's not too hard to grasp that the ones that work better survive longer. Since all life reproduces, it's probably a good assumption, though not 100% accurate, that the longer an organism lives, the more it reproduces. I cannot possibly fathom why such a simple system can draw so much ire.
Oh, here are links to the programs I referenced.
http://ccl.northwestern.edu/netlogo/
http://www.frams.alife.pl/
With framsticks (if memory serves, it's been a year) you need (unless you're a text mode superstar) the shareware package. It's not annoying bother you alot shareware, and though it IS slightly crippled, IFIAK all the crippling is done on things like rendering your creatures in a full OpenGL world. It DOES render them for you, just not in a beautifully crafted world. Again, I may be wrong, or things might have changed. -
Re:Telecomm
Sure you can repeat evolution. It's called "setting the fitness criteria repeatedly". If you can match the criteria more than once to solve a given problem then you have repeated evolution. Note: this is for applications of evolutionary theory. When the natural environment sets the criteria for biological systems we call it Natural Selection.
http://www.frams.alife.pl/common/al_evoltips.html
http://www1.cs.columbia.edu/~evs/ml/OthelloStudPro j/Jan%20Stephen/ml-hw4.html
Repetition can also be observed with fast reproducing species by likewise arbitrarily setting fitness criteria:
http://www.rasmusen.org/x/2006/11/24/evolution-exp eriments-with-bacteria/
http://en.wikipedia.org/wiki/Experimental_evolutio n
http://myxo.css.msu.edu/ecoli/
As for "computers never being smarter than their programmers", watch the experiments going on with FPGAs mentioned earlier this week. The results of these regularly generate circuits that depend on undocumented chip behaivors and features/flaws of individual chips: no human would design things that way. All we really need do is build several machines capable of reproducing themselves, supply some feedstock, and watch. True, one can argue that the initial machines were created but since there isn't any predicting what you get several hundred thousand generations down the line, I wouldn't call the end product Designed either. -
Look to FramSticks for an example
FramSticks
Here is a great example of Artificial Life that generates truly unexpected behavior during runs. Perhaps this type of Alife simulation could be an inspiration for a new generation of game AI. Do not program a location and series of behavior patterns, instead make a population of AIs based on a variety of physical forms. Each form will have a limited set of possible movements within a the simulated world. It will need inputs in order to determine friend and foe, perhaps something similar to limited vision and hearing. It will need survival as a baseline goal. They will also need "food" of some sort. Perhaps the player or other, different, AIs can represent a food source. Give it some form of sex in order to reproduce its learned behavior through some genetic mechanism.
I suspect a hardware physics chip would help tremendously. But what I've seen of FramSticks was pretty damn cool. I have no idea how well it could be incorporated into AI gaming though. So this is just one of those: *shrug* hey, what about this? type of posts from someone ignorant and totally out of the field. -
Re:The problem....
Agreed. I had never cracked a piece of software before, and wanted to play around with the full version of Framsticks for a few days only, so I looked up how. It took me a few hours to go from no knowledge base to having the program cracked. I didn't redistribute, but I can imagine that someone with a less scruples on the subject likely would.
-
Re:True AI?
Seems to just be a more realistic version of something like PolyWorld. Still quite interesting.
If you want a "AI" that borders on a consciousness, you don't want to start at this level - that's way too much work. You want to algorithmicly be simulating entire cells or even groups of cells at once, instead of components of cells. The higher up you can shift the behavior, the more computation you can get done.
Hmm... this may tempt me to play with Framsticks and Avida some more. :) -
Progranisms
This reminds me of the "Progranisms" project I saw over on the Gentoo Linux forums:
http://forums.gentoo.org/viewtopic-t-255505-highli ght-progranism.html
http://www.progranism.com/
Basically some guy put together an executable which makes a few (mutated) copies of itself when it runs, then executes those copies after a short delay. The idea is that executables might evolve which show interesting behaviors.
You can download his source code here:
http://www.progranism.com/junk/progranism-2.3.1.c
Because I like doing strange things, I made a variant of the program which mutates the source code and recompiles it (mutating until it gets something compilable), rather than mutating the executable directly:
http://www.its.caltech.edu/~neilh/progranism/progr anism-neilh.c
http://www.its.caltech.edu/~neilh/progranism/progr anism-neilh-condensed.c
http://www.its.caltech.edu/~neilh/progranism/ (some cleanup and maintenance scripts)
Unfortunately, it's stuck in a pretty steep local minima -- it makes some trivial mutations, but nothing major. One interesting possibility would be to have it search your hard drive for other executables and source files, and try to "mate" with those.
Another scary possibility would be to have viruses/worms with non-trivial evolution capabilities. That'd be a pretty nasty outbreak to try to control.
Finally, a rather neat-looking project is AI.Planet, which is trying to create an 3D evolving ecosystem/world of intelligent "organisms." Framsticks, a 3D life simulation project, is also pretty cool. -
Re:speed