Complete.Org: Mailing Lists: Archives: freeciv-dev: November 2001:
[Freeciv-Dev] Re: PATCH: AI cleanup Version 2
Home

[Freeciv-Dev] Re: PATCH: AI cleanup Version 2

[Top] [All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index] [Thread Index]
To: Gregory Berkolaiko <gberkolaiko@xxxxxxxxxxx>
Cc: Raahul Kumar <raahul_da_man@xxxxxxxxx>, freeciv development list <freeciv-dev@xxxxxxxxxxx>
Subject: [Freeciv-Dev] Re: PATCH: AI cleanup Version 2
From: Raimar Falke <hawk@xxxxxxxxxxxxxxxxxxxxxxx>
Date: Wed, 28 Nov 2001 08:54:38 +0100
Reply-to: rf13@xxxxxxxxxxxxxxxxxxxxxx

On Tue, Nov 27, 2001 at 12:02:19PM +0000, Gregory Berkolaiko wrote:
>  --- Raimar Falke <hawk@xxxxxxxxxxxxxxxxxxxxxxx> wrote: 
> > On Mon, Nov 26, 2001 at 11:15:41PM -0800, Raahul Kumar wrote:
> > > 
> > > --- Raimar Falke <hawk@xxxxxxxxxxxxxxxxxxxxxxx> wrote:
> > > > On Mon, Nov 26, 2001 at 07:06:09PM +0000, Gregory Berkolaiko wrote:
> > > > > I looked at your patch.
> > > > > 
> > > > > It's absolutely fine apart from the comment to unit_move_turns
> > > > > You say: "Things like railroad, roads will make the actual move
> > > > > cost
> > > > > lower than the given estimation. Mountains, swamps will increase
> > > > > actual move cost"
> > > > 
> > > > The sum of the costs has lost some information. Consider this case:
> > > > 
> > > > unit has a move rate of 3, cost of the path is 5, unit has 2 move
> > > > point left
> > > > 
> > > > path1 costs: first tile=3, second tile=2
> > > >   turn 0: points=2, unit has to wait
> > > >   turn 1: points=3, unit can move, points=0, has to wait
> > > >   turn 2: points=3, unit can move, points=1
> > > > 
> > > > path2 costs: first tile=2, second tile=3
> > > >   turn 0: points=2, unit can move, points=0, has to wait
> > > >   turn 1: points=3, unit can move, points=0
> > > > 
> > > 
> > > Point taken. Here's the new patch with suggested improvements thrown
> > in. Enjoy.
> > 
> > +   Returns the minimal amount of turns required to reach the given
> > +   destination position. The actual turn at which the unit will
> > 
> > +   reach the given point depends on the movement points it has
> > remaining.
> > 
> > reach the given point depends on the movement points it has remaining
> > and the distribution of the total costs.
> > 
> > +   For example: Unit has a move rate of 3, path cost is 5, unit has 2
> > +   move points left
> > +   path1 costs: first tile = 3, second tile = 2
> > 
> > I want to point out that the goto agent has made this right. E.g. it
> > has simulated each turn and hasn't just added all the costs.
> 
> I want to point out that the nature of movement is probabilistic so I am
> very surprised at your ability to simulate each turn.

Yes. This adds another layer of complexity. So we have:

current server implementation: not accurate for land units
move agent: provides an upper bound (the actual move can be made faster)
correct solution: not easy and has to use probabilities

        Raimar

-- 
 email: rf13@xxxxxxxxxxxxxxxxx
 "#!/usr/bin/perl -w
  if ( `date +%w` != 1 ) {
    die "This script only works on Mondays." ;
  }"
    -- from chkars.pl by Cornelius Krasel in de.comp.os.linux.misc


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