Complete.Org: Mailing Lists: Archives: freeciv-dev: December 2001:
[Freeciv-Dev] Re: [PATCH] advdomestic.c cleanup (PR#1149)
Home

[Freeciv-Dev] Re: [PATCH] advdomestic.c cleanup (PR#1149)

[Top] [All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index] [Thread Index]
To: "Ross W. Wetmore" <rwetmore@xxxxxxxxxxxx>
Cc: freeciv-dev@xxxxxxxxxxx
Subject: [Freeciv-Dev] Re: [PATCH] advdomestic.c cleanup (PR#1149)
From: Raahul Kumar <raahul_da_man@xxxxxxxxx>
Date: Sat, 22 Dec 2001 17:46:27 -0800 (PST)

--- "Ross W. Wetmore" <rwetmore@xxxxxxxxxxxx> wrote:
> At 02:34 AM 01/12/22 -0800, you wrote:
> >--- "Ross W. Wetmore" <rwetmore@xxxxxxxxxxxx> wrote:
> >> At 02:03 PM 01/12/20 +0100, Petr Baudis wrote:
> >> >Dear diary, on Thu, Dec 20, 2001 at 12:42:28PM CET, I got a letter,
> >> >where Raahul Kumar <raahul_da_man@xxxxxxxxx> told me, that...
> >> 
> >> >> I wish someone would speak up as to why 16 is a good number for sad
> value.
> >> >> > +#define SADVAL 16
> >> >Nice wish :-). Ross? Ben?
> >> 
> >> Almost certainly a heuristic from play testing.
> >> 
> >Yes it is, but the comment says it is speculative, so it seems it can
> >be improved on.
> >
> >> This is sheer speculation, but is the sort of logic that probably comes
> >> into play, 16*3 == 48, 16*6 == 96, so somewhere between three and six 
> >> unhappies the weight becomes competitive, and over 6 is a demand level
> >> weighting. 
> >>
> >
> >Explain this a bit more. If I understand you correctly, this is yet another
> >weighting. Presumably it should be in the range (0-100) but as always
> although
> >it never goes down below 0, it seems it can exceed 100. What does values of
> >for example
> >
> >7 * 16 mean?
> 
> Whatever you want it to ...
> 
> >I'd also like you to get a links to where you got the original info from.
> >I must be going blind, I do not remember any such comments.
> 
> You need to understand how Syela thinks and codes, which means you
> need to have unravelled a number of his more arcane computations and
> read a lot of his comments.
> 
> The end target is always a [0-100 or critical] weight. There may be
> all sorts of intermediate heuristics or effects folded in, of which
> this may just be a part (hence [0-100] is not meaningful). Then he
> playtested ad nauseum adjusting the heuristics so game events occurred
> in ways that pleased him. This might mean he preferred a Temple over
> a Harbour, and therefore the Temple heuristic got bumped or the Harbour
> dropped in some obscure parameterized effect.
> 
> The individual details are pretty much meaningless, it is the combined
> effect that makes the game play the way it does. Thus if you change
> something it can have lots of side effects, and you need to run client
> autogames with several faction windows and watch for bad choices, then
> go back and readjust to correct these.
> 
> The goal in AI development is to gradually localize the heuristics
> into small eval routines returning an approximate but consistent weight, 
> and move the interactions into a post-eval manager layer where one can
> fine tune choice selection based on a number of additional variables 
> like AI player personality, declared enemies, past activities in this 
> region of the board, etc.
> 
> At the moment there is no manager layer, some interaction effects are
> present in the eval code but not many. The effect is that the weights
> and heuristics represent a single personality style (Syela). This is
> ok, in that you need some base style for the initial consistent weights.
> 
> Civbots, or more work in the manager levels of the AI will likely be
> programmed to use these weights to adjust play over time.
> 

Thanks for the info Ross. I think I failed to explain why the figure 
of 

7 * 16 = 112 

is particularly important in the unahappiness case. Normally, a figure of
greater than 100 means buy right now. But if a city is in disorder, you
cannot buy anything. So what is the correct behaviour?

__________________________________________________
Do You Yahoo!?
Send your FREE holiday greetings online!
http://greetings.yahoo.com


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