[rc5] Genetic Algoritms

Lathrop Preston lp0027 at drake.edu
Wed Nov 5 19:03:05 EST 1997

>I'm not quite sure what you're proposing.  Treat distributed.net as one
>large computer and release several programs that try to win by
>multipying so much that it takes everything over?  Isn't this virus-like
>behavior?  What is the benefit from this?

I don't think he was meening writing our clients as viruses. He means using
genetic algoritms to write better faster clients. (not that that is
nessasaraly possible.)

>I can see some benefits in learning about program interactions and
>genetic like behavior in software but what is the advantage of doing
>this on a distributed computer as opposed to a stand-alone?

Who said anything about  distributing the genalg process. Although if you
were to run the programs on many machines you could come up with the
fastest quicker than on one machine and also comeup wiht the fastest for a
particular platform. or possibly the fastest for a individual machine

>> Here is a proposal I haven't seen yet. Genetic Algorithms can be
>> distributed fairly well, and have a wide variety of applications.
>> For those who aren't familiar with them, here is a rough concept:
>> You start with some programs. They may be randomly generated code, or
>> they
>> may be existing, working programs. You run them, and use some method
>> to
>> score them. You then "kill off" the weakest, and combine the strongest
>> to
>> generate new programs (the method of combination varies widely). The
>> goal
>> is to produce a new program that exhibits desirable characteristics,
>> as
>> defined by your scoring system.

Simply to write the best code.

>> I propose to do this in "CoreWars." CoreWars is a game where multiple
>> "warriors" (programs) are placed in the same computer. The goal is to
>> stop
>> all the other processes running, while still running yourself. You can
>> read/write to anywhere in the computer, so you want to overwrite the
>> enemy program with code to make it die. But your program must be small
>> and
>> fast, or you'll be destroyed first.
>> The CoreWars virtual machine already exist in a wide variety of
>> platforms,
>> and generates scoring information for you. There is an Internet
>> CoreWars
>> gaming group, which uses e-mail submission. We could spend a week to
>> generate the best warrior, and then put it in the competition.
>> People have used genetic algorithms in CoreWars before, with some
>> success.
>> I am proposing it here because we have a lot more potential processing
>> power, and because I think it would be a rather nifty project. Imagine
>> if
>> our warrior came in first! The turnaround time is fairly quick, so we
>> get
>> "instant gratification." Better than distributed chess. And we could
>> use
>> off-line machines without taking much risk of losing anything.
>> As for the base genetic pool, we have two choices. We could randomly
>> generate code, and work up from there (the "pure" way), or we could
>> use
>> the database of a few hundred warriors that already exist. This might
>> jump-start us into action earlier.

Here I believe he is sugesting that we distribute the genetic algoritm to
generate the best "warrior" for CoreWars. Lets win the war!!!

| Lathrop L Preston    LP0027 at DRAKE.EDU           |
| Majoring in Computer Science. With interests in |
|	Distributed Computing                     |
|	Artifical Intelligence/Life               |
|	Multiple Platforms(IBM, MacOS, ect)       |
|	Linux                                     |

To unsubscribe, send email to majordomo at llamas.net with 'unsubscribe rc5' in the body.

More information about the rc5 mailing list