glob2-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [glob2-devel] Creature AI


From: Andrew Sayers
Subject: Re: [glob2-devel] Creature AI
Date: Fri, 20 May 2005 11:35:25 +0100
User-agent: Mutt/1.5.9i

Hi,

Thanks for the reply.  A few thoughts and clarifications in kind...

<snip - worth pursuing in the long-term>
Fair enough - I'll get to it at that pace.

> The globules now take their decisions with some kind of scoring  
> system. They'll compare their position and state with the  
> UeberGlobule/ Deus ex-Globula owerlord (err... I mean the player)  
> wishes and then choose. Which doesn't mean that they'll do the chosen  
> action because others globules could be preferred for the action  
> (example: a building needs 3 workers, and there are 10 workers close  
> around. All 10 might decide to do the job, then the "work" itself  
> will chose 3 of these).

<snip>

I could be wrong, but my understanding is that it should be possible to
leave this to the GA itself: they should select towards separating work
out evenly between themselves.  In fact, I would argue against having an
arbitrary cap on the number of workers - it can be quite annoying when
most of your workers are running around bored because you haven't had
time to adjust all your buildings.

> What could be possible is to make the decisions of the globules more  
> genetic dependant (idea between your "all GA" idea and the system we  
> have now)

You mean, evolve GAs that have access to the low-level functions
currently in use?  So instead of evolving a "move" action, it evolves a
"go to the nearest tree" action?  That could be interesting - in fact,
I think there's an even better compromise:

I could spend the time evolving low-level functions, then those can be
used as a base for more rapid, more interesting evolution in your
"high-level GA" stage.  This way, you could get evolution at speeds
acceptable to players, with the capability for GAs to make significant
changes to their algorithms over time.

> Specifically about your idea:
> It will have a strong bootstrap problem I think. Also Genetic  
> Evolution (GE) does need many generations to produce something  
> interesting and I don't think we'll have time for that in one game  
> (globules are not supposed to die so often ;-) )
> To counter this problem a globule could change it's gene after every  
> 10 actions or so supposedly it has some telepathic capabilities.

Hmm, true.  Actually, I'm not so much worried about the first few
generations - it would be easy enough to throw up a screen that just
says "time passes..." and run a couple of thousand generations in the
background.  I'm more worried about when development first starts to
really get going - do you really want to watch 1,000 generations of guys
in case the 1,001th turns out to do something useful?  More seriously,
will there be a diversity problem when globs first start to work out how
to use inns?

> I do also like your Plan B. This would make possible more versatile  
> globules than we have now and could even be used without any GA !

Are you saying that we as developers would evolve a gene pool, then
freeze it for production use?  I'd defer to the expert on this, but I'm
not sure whether that would work - the globs might come to depend on
using selection to change over time.  For example, workers that default
to searching might do better at the start of a game, then gradually be
out-competed by workers that default to gathering resources and waiting
for them to be needed.

Then again, maybe that wouldn't happen, in which case that would be a
fine idea, and would remove the processor overhead involved with all
this GA stuff in production use.

        - Andrew




reply via email to

[Prev in Thread] Current Thread [Next in Thread]