News:

News:  0 1 1 2 3 5 8 13 21 34 55 89 144 233 377 610 987 1597 2584 4181 6765 10946 17711 28657, motherfuckers.

Main Menu

Altruistic robots produced through evolution

Started by Iason Ouabache, January 29, 2010, 03:42:23 AM

Previous topic - Next topic

Jasper

I still see honest altruism as less a matter of whom benefits whom.  To me it is doing good things for people regardless of whether it is useful to anybody.  If I hold the door for a complete stranger for no other reason than they were a few steps behind me, that's altruism.

And that's the difference between humanistic and GT altruism, for me.

Requia ☣

Yes, sentimentality and emotion are clearly more important, because in no way are those mechanisms for genes to influence behavior.
Inflatable dolls are not recognized flotation devices.

Jasper

Yes, and it is so important that we think of each other like genetic mechanisms.

Fuck this, it's getting nowhere.  This thread is supposed to be about excellent technologies.

YOU LACK VISION!!!!!

(Five exclamation marks, mind you.)

*waves hands maniacally*

And stop ignoring the sheer potential here.  You people will drive me to drink.

Rococo Modem Basilisk

Quote from: Requia ☣ on January 31, 2010, 06:26:21 PM
Yes, sentimentality and emotion are clearly more important, because in no way are those mechanisms for genes to influence behavior.

Emphasis added.


I am not "full of hate" as if I were some passive container. I am a generator of hate, and my rage is a renewable resource, like sunshine.

Requia ☣

This thread is about whatever we feel like its supposed to be about, and outside of you, *nobody* brought up technology, this is science, brought about by application of old (at least in terms of computers and robotics) tech.

And yes, in the context of (some kinds of) science, its damned useful to think of people as gene mechanisms, because that brings understanding how we (and pretty much everything else that moves) work.

As for the potential, there isn't much, those chips lack the flexibility for this kind of experiment (if they had it they'd be FPGAs).  They're a bit more interesting for other applications where the general structure needed is known ahead of time, but I'd prefer the slower-but-bigger nets I could get with cheaper hardware for most applications I can think of these being useful for.
Inflatable dolls are not recognized flotation devices.

Jasper

Quote from: Requia ☣ on January 31, 2010, 08:57:39 PM
This thread is about whatever we feel like its supposed to be about, and outside of you, *nobody* brought up technology, this is science, brought about by application of old (at least in terms of computers and robotics) tech.

QuoteA Swiss team has applied Darwinian selection to robot development, producing robots that can walk, cooperate and even hunt each other.

The way I see it, the development of robots with specific purposes is technology, not science.

QuoteAnd yes, in the context of (some kinds of) science, its damned useful to think of people as gene mechanisms, because that brings understanding how we (and pretty much everything else that moves) work.

You're right.  In this thread, there is a question of whether the robots are genuinely altruistic however, and I am arguing that values of altruism are different for nonsentient agents.  This research has about as much to do with biology as cellular automata, so your argument doesn't fit here.

QuoteAs for the potential, there isn't much, those chips lack the flexibility for this kind of experiment (if they had it they'd be FPGAs).  They're a bit more interesting for other applications where the general structure needed is known ahead of time, but I'd prefer the slower-but-bigger nets I could get with cheaper hardware for most applications I can think of these being useful for.

Then you simply lack vision.  Sorry.

Triple Zero

Quote from: FP on January 30, 2010, 09:43:11 PM
Quote from: Triple Zero on January 30, 2010, 05:45:39 PM
The artificial life simulation Tierra does have something more akin to natural selection. In that simulation machine code programs have to evolve their reproduction routines themselves as well*, so the ones that do this most efficient and fast reproduce more. That would not be artificial selection, right? In this simulation, only the mutation is artificial, a tiny percentage of random bitflips in computer memory.
Tierra is interesting because it evolved parasites, which would consume resources from the hosts, which then evolved to almost defeat the parasites, but then the parasites evolved yet again, to defend themselves, etc.

At that point they realised that they had forgotten to implement the mutation routine -- all this sophistication was achieved through nothing more than splicing genes.  They were surprised as their assumption was that mutation was required for any interesting behaviour to occur.

I have never heared the second part of that story? Are you sure? Because, since I was young I always wanted to write my own Tierra (never finished the project though) and I read a lot about it and the virtual programming language it used ... I don't quite see how that would work.

For starters, there are no genes, the genotype is the data and the code and therefore the organism. First organism was hand coded to reproduce itself without error. If you'd let it run, it would simply fill up the available memory, following your run-of-the-mill limited-growth curve.

There is no recombination, or splicing of genes. The reproduction is asexual. A program just copies itself.

The variation (and therefore evolution) happened due to two factors:

first, every clock tick there is a tiny probability that execution of a machine-instruction would fail. so a byte would copy double, some variable get incremented with the wrong value, etc.

second, there is some "radiation" type mutation going on that, with a very low probability, flips random bits in the memory.

without either of these mechanisms, reproduction would be perfect. so I assume your story refers to them forgetting to implement one of these two mechanisms? cause yeah I can imagine just the probability that an instruction would give the wrong value would give enough variation for an evolutionary battle to emerge. [assuming the second one is most like "mutation"]
Ex-Soviet Bloc Sexual Attack Swede of Tomorrow™
e-prime disclaimer: let it seem fairly unclear I understand the apparent subjectivity of the above statements. maybe.

INFORMATION SO POWERFUL, YOU ACTUALLY NEED LESS.

Captain Utopia

That particular anecdote about forgetting to implement mutation comes from my twelve year old memory of Artificial Life by Steven Levy.  I looked into it a bit more for my final year uni project, although it sounds like you've spent more time looking into it than me.

I thought they could copy memory around too?  So if a program can copy a few lines of program code around, then you can end up with new functionality without any random elements or mutation or mistakes.


Meh, I should try sourcing.. I found this, though it sounds a little different from my recollection.

Quote from: http://www.infidels.org/library/modern/meta/getalife/coretierra.htmlThe power of evolution had been demonstrated, but Ray was curious to see which elements of the system were required for evolution to work, and what ranges of frequency of mutation resulted in rapid evolution. He tried turning off mutation completely, out of curiosity--and was amazed to find that evolution carried on happening anyway!

It turned out that sometimes, two programs attempting to reproduce would choose the same location for their offspring, and would interact during reproduction. One of the programs might be overwriting the same memory as the other, slightly behind, and then die from old age or be killed by another program. The result would be a hybrid, with part of the code of one program and part of the code of the other. Similar hybrids would occur if a parasite was busy reproducing using a host program, and that host program died.

Although - even though the "mutation" routine was disabled, it now looks to me as if the environment is buggy in that the above splicing is a form of mutation?

Requia ☣

It evolved a new reproduction strategy that the designers never intended.

Holy shit thats awesome.

Quote
Then you simply lack vision.  Sorry.

No, i have an understanding of whats required to do anything interesting with neural nets.  See, these things are above all else *learning* programs., you can teach them to do things we aren't otherwise able to program easily, like object recognition.  But doing that requires an extremely flexible package, which means either an entirely software setup, or use FPGAs.

If you already have the net in the shape you want, then the limited flexibility these chips have isn't necessary, older techs are an option, or you can just use cheap off the shelf hardware and run a simulation.  FFS, I spent 50 dollars on enough hardware to blow away the supercomputer my university built in the  90s, special hardware to run 80s software isn't necessary.
Inflatable dolls are not recognized flotation devices.

Iason Ouabache

Quote from: Sigmatic on January 31, 2010, 09:39:40 PM

You're right.  In this thread, there is a question of whether the robots are genuinely altruistic however, and I am arguing that values of altruism are different for nonsentient agents.  This research has about as much to do with biology as cellular automata, so your argument doesn't fit here.
Maybe we should first prove that humans are capable of genuine altruism. ;)
You cannot fathom the immensity of the fuck i do not give.
    \
┌( ಠ_ಠ)┘┌( ಠ_ಠ)┘┌( ಠ_ಠ)┘┌( ಠ_ಠ)┘

Reginald Ret

Quote from: Requia ☣ on January 31, 2010, 05:25:05 PM
according to the article, giving points to the other robots increases their odds of reproduction, which in turn hurts the cooperative bots since only so many get to reproduce each round, only the bots that are selfish have a high chance to reproduce.
Ah thanks, i missed that.
You win this one.
Lord Byron: "Those who will not reason, are bigots, those who cannot, are fools, and those who dare not, are slaves."

Nigel saying the wisest words ever uttered: "It's just a suffix."

"The worst forum ever" "The most mediocre forum on the internet" "The dumbest forum on the internet" "The most retarded forum on the internet" "The lamest forum on the internet" "The coolest forum on the internet"

Triple Zero

Quote from: FP on February 01, 2010, 01:42:08 AM
Quote from: http://www.infidels.org/library/modern/meta/getalife/coretierra.htmlThe power of evolution had been demonstrated, but Ray was curious to see which elements of the system were required for evolution to work, and what ranges of frequency of mutation resulted in rapid evolution. He tried turning off mutation completely, out of curiosity--and was amazed to find that evolution carried on happening anyway!

It turned out that sometimes, two programs attempting to reproduce would choose the same location for their offspring, and would interact during reproduction. One of the programs might be overwriting the same memory as the other, slightly behind, and then die from old age or be killed by another program. The result would be a hybrid, with part of the code of one program and part of the code of the other. Similar hybrids would occur if a parasite was busy reproducing using a host program, and that host program died.

Although - even though the "mutation" routine was disabled, it now looks to me as if the environment is buggy in that the above splicing is a form of mutation?

wow, okay. that IS awesome :D thanks for the source, I would not have guessed.

I do remember that one of the instructions* was some sort of equivalent to C's MALLOC function. So it would allocate a piece of free (not-alive) memory and return a pointer to it.

Another instruction which could have been called SPARK* would let the virtual machine know the just-allocated piece of memory was now to be considered "alive" and it would start being executed and get a slice of CPU time [yes this part is a bit artificial IMO, as well. he could have used a more traditional fork instruction perhaps].

Anyway, what *could* be the case, is that the MALLOC instruction would only return pointers to pieces of "dead" memory, with enough space for 1-2 times the length of the parent organism. But that means if two organism issue a MALLOC before they issue a SPARK, there is a possibility that they get pointers to partially overlapping memory ranges. It's also a typical kind of coding mistake that's easily to overlook at first, so I can see how that would happen.

Either way, AWESOME BALLS :-)

(*from a 5-bit instruction set numbering about 24 different instructions, having some duplicates to mimic the redundancy as found in DNA coding for amino-acids. which is a funny idea, but I'm not really sure whether there was any solid reasoning behind that decision or whether it might have been a kind of cargo-cultish "let's put that in here, too" choice. but from a "that's pretty cool"-point-of-view, either works)

(**except it wasn't because in those days people believed assembly language instructions had to be cryptic abbreviations, so it might have been called MFB or something. FORK would have been a cool name too)

Quote from: FPAlthough - even though the "mutation" routine was disabled, it now looks to me as if the environment is buggy in that the above splicing is a form of mutation?

well yes, sort of. of course if they'd be writing to overlapping memory locations, you'd get some kind of weird hybrid conjoined twin result program. and with those being buggy, that could also prompt more incorrect copying and just general weirdness, like how you'd call someone with a conjoined twin extra leg a "mutant" as well, perhaps ;)
Ex-Soviet Bloc Sexual Attack Swede of Tomorrow™
e-prime disclaimer: let it seem fairly unclear I understand the apparent subjectivity of the above statements. maybe.

INFORMATION SO POWERFUL, YOU ACTUALLY NEED LESS.

Rococo Modem Basilisk

Quote from: Requia ☣ on February 01, 2010, 03:33:21 AM
No, i have an understanding of whats required to do anything interesting with neural nets.  See, these things are above all else *learning* programs., you can teach them to do things we aren't otherwise able to program easily, like object recognition.  But doing that requires an extremely flexible package, which means either an entirely software setup, or use FPGAs.

Did I miss where ANNs were mentioned or was that a typo?


I am not "full of hate" as if I were some passive container. I am a generator of hate, and my rage is a renewable resource, like sunshine.

Requia ☣

The tierra robots use them, but in the specific, Sigmatic keeps harping on about dedicated ANN chips.
Inflatable dolls are not recognized flotation devices.

Rococo Modem Basilisk

Dedicated ANN chips are probably a bad idea at the moment. Analog ANN chips that use memristors and have built-in DACs and ADCs may change that situation. But, I'll admit that to dedicated ANN chips *sound* like a good idea until you take some time to think about their flaws.


I am not "full of hate" as if I were some passive container. I am a generator of hate, and my rage is a renewable resource, like sunshine.