Article View: rec.games.programmer
Article #752Re: Computer-Controlled Players - simulated evolution
From: Ross E Milward
Date: Mon, 17 Aug 1992 00:34
Date: Mon, 17 Aug 1992 00:34
51 lines
3067 bytes
3067 bytes
In article <Bt3G69.5Cp@dptspd.sat.datapoint.com> dscharfe@dptspd.sat.datapoint.com (David Scharfe) writes: >In article <1992Aug16.092925.9261@marlin.jcu.edu.au> cprem@marlin.jcu.edu.au (Ross E Milward) writes: >>>Is this like simulated evolution algorithm? Please enlighten, I would >>>like to know more about this. >>I think you maybe talking about the same term here, although almost everyone >>tends to use the term 'genetic algorithm (GA)'. >>[deleted] >>Back to the original question, I guess it would be possible to use GAs >>for CCPs. The way to do this (IMHO) would be to define a set of >>attributes for each CCP and then create a chromosomal representation for >>the list of attributes. If you have a scenario where the CCPs must >>survive then work out an evaluation function to calculate which CCPs are >>the strongest and hence which move onto the next round in the game. > >Might it be possible to let the CCPs determine which are strongest >by pitting them against each other? In other words, perform steps >2 and 5 below through battle (a true Klingon way of thinking :^) ) > Yep, I guess that would be possible. It depends on how/when you decide to define the fitness value. You could probably incorporate your suggestion into the evaluation function. I was initially thinking that CCPs with high strength, high intelligence, good armour etc will have a good fitness function and will be likely to continue into the next generation. Depending on the outcome of the fight, the fitness score could then be adjusted. For example the loser's fitness score will decrease due to losing strength and health while the winner's score will increase due to experience/confidence. >>It would be quite simple to create new CCPs by crossing over (and >>mutating) the attributes of other CCPs. >> >>So a simple algorithm could be: >>1. Create a random population of CCPs with various attributes. >>2. Denote a fitness value to each CCP by using some sort of evaluation >> function. >>3. Do something with the CCPs >>4. Create new CCPs by mating current CCPs. >>5. Delete weak CCPs and replace them with the new CCPs. > >I hope this question is not too silly; my knowledge of this branch >of computing is essentially nil... > No, it was quite a good point. >Dave Ross. -- Ross Milward, ross@coral.cs.jcu.edu.au, cprem@marlin.jcu.edu.au Honours Student - Comp. Sci. Dept., James Cook Uni, Qld, 4811, Australia. "The way the rain comes down hard, that's how I feel inside." - The Cure
Technical Details
Message-ID:
<1992Aug17.003402.20999@marlin.jcu.edu.au>Path:
arc1-ca.pugleaf.net!sparky!uunet!munnari.oz.au!bunyip.cc.uq.oz.au!marlin.jcu.edu.au!cpremReferences:
<1992Aug16.071200.10997@pasteur.Berkeley.EDU> <1992Aug16.092925.9261@marlin.jcu.edu.au> <Bt3G69.5Cp@dptspd.sat.datapoint.com>Show Full Headers
Complete Article Headers
Newsgroups: rec.games.programmer Path: arc1-ca.pugleaf.net!sparky!uunet!munnari.oz.au!bunyip.cc.uq.oz.au!marlin.jcu.edu.au!cprem From: cprem@marlin.jcu.edu.au (Ross E Milward) Subject: Re: Computer-Controlled Players - simulated evolution Message-ID: <1992Aug17.003402.20999@marlin.jcu.edu.au> Organization: James Cook University References: <1992Aug16.071200.10997@pasteur.Berkeley.EDU> <1992Aug16.092925.9261@marlin.jcu.edu.au> <Bt3G69.5Cp@dptspd.sat.datapoint.com> Date: Mon, 17 Aug 92 00:34:02 GMT Lines: 51