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: Raahul Kumar <raahul_da_man@xxxxxxxxx>
Cc: "Ross W. Wetmore" <rwetmore@xxxxxxxxxxxx>, freeciv-dev@xxxxxxxxxxx
Subject: [Freeciv-Dev] Re: [PATCH] advdomestic.c cleanup (PR#1149)
From: Daniel L Speyer <dspeyer@xxxxxxxxxxx>
Date: Sun, 23 Dec 2001 00:39:59 -0500 (EST)

On Sat, 22 Dec 2001, Raahul Kumar wrote:

> 
> --- "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?

You can't buy *units* when a city is in disorder.  You definitely can buy
*improvemnts*, such as colloseums or police stations.  Of course, if
martial law is cheapest, you still have a problem here.


--Daniel Speyer
"May the /src be with you, always"


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



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