Complete.Org: Mailing Lists: Archives: freeciv-ai: December 2002:
[freeciv-ai] Re: rfc: ai properly evaluate governments
Home

[freeciv-ai] Re: rfc: ai properly evaluate governments

[Top] [All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index] [Thread Index]
To: Gregory Berkolaiko <Gregory.Berkolaiko@xxxxxxxxxxxx>
Cc: "Per I. Mathisen" <per@xxxxxxxxxxx>, freeciv-ai@xxxxxxxxxxx
Subject: [freeciv-ai] Re: rfc: ai properly evaluate governments
From: "Ross W. Wetmore" <rwetmore@xxxxxxxxxxxx>
Date: Sun, 08 Dec 2002 12:10:53 -0500

One of the generic techniques to implement "cooldown periods" is
already used in things like global warming. A slightly different
one is used in the corecleanups "want" calculations.

The first uses two parameters, a gating bitflag and a secondary
weight accumulation. the weight accumulation gets bumped everytime
one would like to do something, or with a general per term want
perhaps amortized to change the distribution characteristics to
one which removes the impetus over time. One either triggers the
gating bit at a given threshold, or rolls randomly against the
accumulated percentage to actually turn the possibility on again.

The second uses a bias bump for the current choice. Again the
bias can be kept separate and amortized over time. A bias stops
flip-flops by giving a percentage boost to the current choice
over and above its explicitly calculated value. Thus, only a 
significant change in alternative wants will replace it.

They are actually similar, but the first gets incremental updates
over time, while the second is set once with at most a (fixed) decay
function builtin.

The latter may actually work well for governments, as the initial
value will be based on a dot product of desires for things like
economic, military or social/population resources against the 
current game statistics. After a while the game statistics may
evolve into a different pattern, and/or the feedback desire change.
The trick is to insure that minor fluctuations don't cause changes, 
but any significant new trends result in a move to a new state.

The same technique should be used for many strategic things like
going to war. If attack on other players is gated through an 
accumulated hostility parameter and at-war bitflag, then the AI
will build up resources for attacking desirable targets, but not
actually attack until the trigger bit is removed. At this point
the magnitude of the buildup should make the war outcome much
more positive and sustainable than random irritant strikes. This
is in effect a way to implement longer term strategic buildup
without consciously attempting to precalculate and manage it. One
allows the builtup resources to adjust for optimal conditions 
tactically and then respond when the strategic directive is finally
released.

Cheers,
RossW
=====

At 07:51 PM 02/12/05 +0000, Gregory Berkolaiko wrote:
>
>On Thu, 5 Dec 2002, Per I. Mathisen wrote:
>
[...]
>> TODO/RFC:
[...]
>>  - we need a "cooldown" period after having changed government once, where
>>    we don't want government techs at all for a while; otherwise we never
>>    get those ironclads
>
>such cooldown period is quite essential in both setting research goals and 
>going for changed govt.  Otherwise there will be too much jumping back and 
>forth.
>
>right now AI doesn't go through anarchy.  but a period of anarchy is a 
>natural factor which prevent excessive govt change
[...]




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