@4540524 It's doing a little more than that. If you watch it closely, you'll see it travels from somewhere else, while avoiding getting stuck on the X barrier. At 3:17, it uncoils to eat a dot of green food. The spinning is emergent behavior I hadn't anticipated - basically, it allows a critter to sit in one spot and look for food in four directions. Because the head can only be oriented in four directions, though, a spinning critter can miss food that's nearby but diagonal.
@scotchfaster Got it...Hadn't seen it moving, anyways, thanks a lot for showing us this marvelous simulation.I LOVE genetic algorythms and this type of thing.
Finally, if all the critter did was spin, it would run out of energy and die, and that would be the end of that instruction set. This happens quite a bit - most mutations are not adaptive.
This is one of the single most amazing videos/programs I've ever seen. It's amazing how once the problem is introduced (the X barrier), many die and food becomes a surplus as a result. It's amazing to see how those select few organisms adapted to become more intelligent in order to survive the X.
@Houshalter - I liked what I've seen of Darwinbots, but I guess I just wasn't patient enough to see emergent behavior evolve. Have you? In any case, my goal with this program was to create something simple enough to be comprehensible (I hope) to a non-programmer, and to the evolutionary skeptic.
While we're putting in plugs for other people's work, I'm a fan of Gerald de Jong (search on darwinathome). Check out his new Tetragotchi project.
@scotchfaster, the current version of DB doesn't evolve much, but the ability to create your own bots means you can simulate virtually any ecosystem you can immagine and test different evolutionary strategies. Internet mode is fun, and so is the leagues, not that they update much anymore.
The site you linked is cool, so he is trying to create an alife mmo? That would be pretty epic.
That's a quite cool program. It's good for simulating selectin, but it doesn't proof the development of new information. For that, you are the designer :D
Thanks, but I don't agree. First, it's a fact that mutations create information. I'm attempting to show how this can lead to the appearance of design.
A musical composition is just an arrangement of notes. Wouldn't you agree that a new arrangement is "new information", even though the composer doesn't create the notes or musical instruments themselves?
Here the "notes" are instructions, and the "composer" is random mutation/natural selection.
This looks like a really cool program. What's the longest you've wasted watching it? Ever forgot to feed your dog? Ever killed your dog watching this?
cliffw77- you are trying to debunk evolution by saying "evolution doesnt explain how the first critters got there," well, evolution is not supposed to explain the FIRST life, just how it CHANGES once it already exists.
I think it would be cool if there was a few new instructions you could add in that would give cool survival features, like being able to eat the other critters.
Well its just a way to make it more fluid, more like your sim. That, in contrast to my sims which are more parameter tuning and less script writing[the brain].
I downloaded your program yesterday, and have been having a lot of fun with it. I was just watching your video again when I noticed the code for the lead critter, during the intro, was very similar to one I got. (15M<<H<AeM51<)
This is awesome! Im a fan of evolution and natural selection,but i couldnt handle myself and i just scripted the sequences,also i noticed that sequence scripting is fun.
#Sequences is in next post
Good trainer for scripting/programming skill.Its like one of those fake programming languages like spoon and others.
Work still in progress but i got some of these(those wasnt evolved,i scripted them manually in chase for an universal ideal critter,actually evolution aided me): M1> (straight-spinner) HM1> (fast straight-spinner) 0HM1> (selective fast straight-spinner) M7A1> (atacking straight-spinner) M51> (barier straight-spinner) M7A51> (atacking barier straight-spinner) Z*0Mr (sleeping lazy) 0M (lazy) 0MW7A (atacking lazy) 0MW> (lazy-spinner) 18M (kind lazy-spinner) 0MW7A> (atacking lazy-spinner)
Nice work! I've tried to hand-code critters myself, but the mutations seem to win every time. Which, actually, is one of the best arguments for the creative power of evolution that I know of.
I'm not actively developing this project at the moment. If I do have time for a-life development, it will be spent on VatLife.
You should consider making this software open-source.
A good idea would be a larger (at least x4, but more preferably) and more variable environment.
Ideally the environment should be completely customizable. But since implementing that is tougher, how about a part that is dense, like a maze, an open space, a part with "poison" spaces. The option to completely close off the walls would be good to prevent the critters from just going in straight lines.
Also, that they get bigger with each additional instruction prevents them from developing complex instruction sets, because once they are too large they get trapped by their own bodies. Size should a trait of it's own and come with benefits/drawbacks. Maybe large critters give birth to healthier offspring? But maybe movement uses more energy?
I just want it to result in fine-tuned and complex critters, y'know? Cool software, I enjoy it very much. I used it in my video:watch?v=qoZSxxRh0qM
To clarify; There should be multiple environments within one simulation, to encourage different specialized species to develop within a single simulation.
dradley1, let's pretend that you instead wrote "because your simulation uses an instruction set that was designed, doesn't it really imply that life was designed?"
No. The instruction set and other rules of the environment are analogous to chemistry in the real world. They are building blocks.
Yes, I designed the "M" instruction and the rest, but the adaptive sequence "MH51Z>MWM" occurred through mutation and natural selection.
It is a radically simplified simulation to demonstrate a point.
Critters have a head, which is oriented up, left, right or down. The turn instructions rotate the head. The "1" instruction is a conditional statement that says "skip the following instructions if food is not visible for 20 pixels". It will skip either to the end of the sequence, or the next occurrence of "E" (End If) or "W" (While, which loops). I've tried to introduce an "A" instruction (attack), but I think the instruction set is too simple for smart carnivores. Ideas are welcome! Thanks!
Just some questions because I am planning to make something similar in the future:
What do the critters "see"? Do they just see the square that is directly in front of them? Have you thought of introducing predators in the setup? (it might trigger an evolutionary arms-race!)
what languadge did you use to program this???
zeldawind6 5 months ago
@zeldawind6 C++
scotchfaster 5 months ago 2
this is awesome, but people come up to you on the street and ask you that, I want to live where you live lol
bretttheturner 6 months ago
Awesome theres actually something today that revolves around nature and the world we live in all in one game keep up the work scotchfaster
RECKOGNING1 8 months ago
"People are always stopping me on a street and asking..." Hahaha sure
Good video anyway hah ;)
kid29a 8 months ago in playlist AI
3:14 blue critter is spinning.Just spinning.
4540524 1 year ago
@4540524 It's doing a little more than that. If you watch it closely, you'll see it travels from somewhere else, while avoiding getting stuck on the X barrier. At 3:17, it uncoils to eat a dot of green food. The spinning is emergent behavior I hadn't anticipated - basically, it allows a critter to sit in one spot and look for food in four directions. Because the head can only be oriented in four directions, though, a spinning critter can miss food that's nearby but diagonal.
scotchfaster 1 year ago
@scotchfaster Got it...Hadn't seen it moving, anyways, thanks a lot for showing us this marvelous simulation.I LOVE genetic algorythms and this type of thing.
4540524 1 year ago
Finally, if all the critter did was spin, it would run out of energy and die, and that would be the end of that instruction set. This happens quite a bit - most mutations are not adaptive.
scotchfaster 1 year ago
This is one of the single most amazing videos/programs I've ever seen. It's amazing how once the problem is introduced (the X barrier), many die and food becomes a surplus as a result. It's amazing to see how those select few organisms adapted to become more intelligent in order to survive the X.
dag101101 1 year ago
Darwinbots is an awesome artificial life simulator.
Houshalter 1 year ago
@Houshalter - I liked what I've seen of Darwinbots, but I guess I just wasn't patient enough to see emergent behavior evolve. Have you? In any case, my goal with this program was to create something simple enough to be comprehensible (I hope) to a non-programmer, and to the evolutionary skeptic.
While we're putting in plugs for other people's work, I'm a fan of Gerald de Jong (search on darwinathome). Check out his new Tetragotchi project.
scotchfaster 1 year ago
@scotchfaster, the current version of DB doesn't evolve much, but the ability to create your own bots means you can simulate virtually any ecosystem you can immagine and test different evolutionary strategies. Internet mode is fun, and so is the leagues, not that they update much anymore.
The site you linked is cool, so he is trying to create an alife mmo? That would be pretty epic.
Houshalter 1 year ago
41 evolutionists, one religious freak.
lesliefrancs 1 year ago
Genius...great stuff
Gutterbreaks 2 years ago
Can you reupload that program? It's not available anymore...
shid007 2 years ago
For some reason I can't post the URL in my response, even using (dot). Check the info box for the new location, and thanks for watching.
scotchfaster 2 years ago
Thanks!:)
shid007 2 years ago
That's a quite cool program. It's good for simulating selectin, but it doesn't proof the development of new information. For that, you are the designer :D
Changer01 2 years ago
Thanks, but I don't agree. First, it's a fact that mutations create information. I'm attempting to show how this can lead to the appearance of design.
A musical composition is just an arrangement of notes. Wouldn't you agree that a new arrangement is "new information", even though the composer doesn't create the notes or musical instruments themselves?
Here the "notes" are instructions, and the "composer" is random mutation/natural selection.
Google "The Nylon Bug" for a real world example.
scotchfaster 2 years ago
This has been flagged as spam show
This looks like a really cool program. What's the longest you've wasted watching it? Ever forgot to feed your dog? Ever killed your dog watching this?
Flophole 2 years ago
Do they waste energy by moving?
TaiFerret 2 years ago
Yes, they lose energy every turn, and moving costs extra.
scotchfaster 2 years ago
cliffw77- you are trying to debunk evolution by saying "evolution doesnt explain how the first critters got there," well, evolution is not supposed to explain the FIRST life, just how it CHANGES once it already exists.
sycodeathman 2 years ago 13
@sycodeathman Plus we have already found that "critters" can evolve from single celled organisms from non-living matter :\
SirShakeJunt 1 week ago
@sycodeathman mfw i come back to a comment and it is the top rated one :D
sycodeathman 1 week ago
I think it would be cool if there was a few new instructions you could add in that would give cool survival features, like being able to eat the other critters.
Stuff like that
Allking4 2 years ago
I just recently learned a technique that'll let me code things similar to thing program. :D thanks for inspiring me.
TheReasonWhyGuy 2 years ago
Cool - please share if you can. I'm always interested in new techniques, especially if it makes evolutionary simulations easier to code.
scotchfaster 2 years ago
Well its just a way to make it more fluid, more like your sim. That, in contrast to my sims which are more parameter tuning and less script writing[the brain].
TheReasonWhyGuy 2 years ago
I downloaded your program yesterday, and have been having a lot of fun with it. I was just watching your video again when I noticed the code for the lead critter, during the intro, was very similar to one I got. (15M<<H<AeM51<)
Must be an effective combo.
VosTalidos 2 years ago
You Designed a system to cause things to evolve...think about that
cliffw77 2 years ago
I created a simple biological model with these assumptions:
- organisms have a code that governs their behavior
- if organisms don't eat, they starve
- if organisms do eat, they will reproduce
- offspring of organisms will have the same code as their parent, with occasional random mutations
From here on out, it's natural selection (that is, unsuccessful adaptions starving and not producing offspring) at work.
scotchfaster 2 years ago
This is awesome! Im a fan of evolution and natural selection,but i couldnt handle myself and i just scripted the sequences,also i noticed that sequence scripting is fun.
#Sequences is in next post
Good trainer for scripting/programming skill.Its like one of those fake programming languages like spoon and others.
Also i got some bug-reports if you need it.
IMMMedved 2 years ago
IMMMedved 2 years ago 2
Nice work! I've tried to hand-code critters myself, but the mutations seem to win every time. Which, actually, is one of the best arguments for the creative power of evolution that I know of.
I'm not actively developing this project at the moment. If I do have time for a-life development, it will be spent on VatLife.
scotchfaster 2 years ago
Cool remix!
The (undocumented, Windows/MFC only) source code is here: badongo(dot)com/file/10127772
I also developed a version in which the critters and the food are one and the same:
scottschaferalife(dot)blogspot(dot)com/2008_06_01_archive.html
My latest AL project is called VatLife, is open source & Java based, and hosted here:
ripplingloop(dot)com
VatLife is intended to be an open-ended framework for AL development. Check it out.
scotchfaster 3 years ago
For some reason Youtube didn't notify me about your comment response :S
Luckily I stumbled upon your video for "i am darwin" and came to check out this video again.
Thanks a lot for the links, I will definitely check them out.
inthefade 3 years ago
Lady paleontologist explains transitionals .Many paleo lectures / classes online . More added monthly.
"Transitional Fossils in Evolution pt. 1 of4"
flyingscience 3 years ago
You should consider making this software open-source.
A good idea would be a larger (at least x4, but more preferably) and more variable environment.
Ideally the environment should be completely customizable. But since implementing that is tougher, how about a part that is dense, like a maze, an open space, a part with "poison" spaces. The option to completely close off the walls would be good to prevent the critters from just going in straight lines.
inthefade 3 years ago
Also, that they get bigger with each additional instruction prevents them from developing complex instruction sets, because once they are too large they get trapped by their own bodies. Size should a trait of it's own and come with benefits/drawbacks. Maybe large critters give birth to healthier offspring? But maybe movement uses more energy?
I just want it to result in fine-tuned and complex critters, y'know? Cool software, I enjoy it very much. I used it in my video:watch?v=qoZSxxRh0qM
inthefade 3 years ago
To clarify; There should be multiple environments within one simulation, to encourage different specialized species to develop within a single simulation.
inthefade 3 years ago
a great idea would be if the mutations included copying of an arbitrary length of instructions, like in DNA.
inthefade 3 years ago
Excellent program.
I have run it for a while and it can get kinda laggy.
Its still very good.
TheReasonWhyGuy 3 years ago
dradley1, let's pretend that you instead wrote "because your simulation uses an instruction set that was designed, doesn't it really imply that life was designed?"
No. The instruction set and other rules of the environment are analogous to chemistry in the real world. They are building blocks.
Yes, I designed the "M" instruction and the rest, but the adaptive sequence "MH51Z>MWM" occurred through mutation and natural selection.
It is a radically simplified simulation to demonstrate a point.
scotchfaster 3 years ago
Uh...WHO gave the critters "instructions". That proves...uh..NO ONE caused life? You're smart...really. Ok, no your not.
dradley1 3 years ago
This program is designed to mimic something that happens naturally.
TheReasonWhyGuy 3 years ago
This is an emulation of evolution, not abiogenesis. How can you people be so daft?
inthefade 3 years ago 2
LOL
"People are always stopping me on the street..."
What?
TheReasonWhyGuy 3 years ago 2
cool
baltusd 3 years ago
Critters have a head, which is oriented up, left, right or down. The turn instructions rotate the head. The "1" instruction is a conditional statement that says "skip the following instructions if food is not visible for 20 pixels". It will skip either to the end of the sequence, or the next occurrence of "E" (End If) or "W" (While, which loops). I've tried to introduce an "A" instruction (attack), but I think the instruction set is too simple for smart carnivores. Ideas are welcome! Thanks!
scotchfaster 3 years ago
Very good!
Just some questions because I am planning to make something similar in the future:
What do the critters "see"? Do they just see the square that is directly in front of them? Have you thought of introducing predators in the setup? (it might trigger an evolutionary arms-race!)
zweefvlieg 3 years ago