Newsgroups: comp.ai.alife,rec.games.corewar
Path: cantaloupe.srv.cs.cmu.edu!das-news2.harvard.edu!news2.near.net!howland.reston.ans.net!ix.netcom.com!netcom.com!lewin
From: lewin@netcom.com (Karl Lewin)
Subject: Re: Evolving CoreWar Warriors
Message-ID: <lewinD6tv35.Aq0@netcom.com>
Followup-To: comp.ai.alife,rec.games.corewar
Organization: NETCOM On-line Communication Services (408 261-4700 guest)
X-Newsreader: TIN [version 1.2 PL1]
References: <9504032204.AA03314@idnsun.gpct.Vanderbilt.Edu.noname> <mreddy-0504951914370001@mreddy.comp.glam.ac.uk>
Date: Mon, 10 Apr 1995 16:28:17 GMT
Lines: 56
Sender: lewin@netcom23.netcom.com

> = Strack
>> = Reddy

>> The outcome of this experiment is very similar to one conducted by
>> Karl Lewin (lewin@alife.santafe.edu) a few months back. As Karl noted,
>> most of his warriors evolved into one or two-liners consisting of
>
>> DJN #x, <y  or
>> SPL #x,?? plus
>> MOV <x,<y
>
>> The DJN one-liner is actually a very potent warrior, and I am surprised 
>> your simulations haven't turned up an instance of it.
>
>His used mutation and was radically different in creation of warriors. We
>hope that a population model of 100 warriors might help to avoid such
>strong local maxima.
>

For the record my first attempt at using a GA to evolve warriors used both
crossover mutation (although the crossover operator I was using was 
somewhat "mutated" ie-not standard.)  I can't recall the exact rate at which
the operators (crossover & mutation) were applied but the crossover rate was
much higher than the mutation rate.  

As far as initial creation of generation 0 warriors went.  I used basically
the same structure outlined by John Perry's paper on the soda corewar
archive.  (1-x random DAT's followed by 1-y random instructions followed by
1-x random DAT's, I don't remember what the values for x and y were.)
Initially there were no restrictions on what an instruction could look like
(all opcodes/modifiers/modes were available to be generated)  The A/B values
were also randomly determined with values for non-DAT opcodes being skewed 
towards lower numbers (-15...15 ?) 

>The project is aimed more at using pMARS as an alife environment rather
>than to evolve KOTH winners (though that might be a nice pipe-dream). The
>novel part of this approach was to use cross-over. However, thanks for

Could you explain the cross-over operator you are using?  I am working on a
"version II" of my GA and this time I am planning on experimenting with 
several different crossover operators (2pt, uniform, gp-like, etc..)

As Stefan also pointed out this may not come to much but it sure is fun!

I am by no means an expert at this stuff (either GA/GP or corewar) so I may
not be using the terminology quite right all the time.  I also could be 
making assumptions that I shouldn't.  If anyone has any questions/comments
about what I have tried/am trying please ask/comment away.


Karl
-- 




