Complete.Org: Mailing Lists: Archives: freeciv-ai: April 2003:
[freeciv-ai] Re: [RFC] Ferry code

[freeciv-ai] Re: [RFC] Ferry code

[Top] [All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index] [Thread Index]
To: Ross Wetmore <rwetmore@xxxxxxxxxxxx>
Cc: freeciv-ai@xxxxxxxxxxx
Subject: [freeciv-ai] Re: [RFC] Ferry code
From: Gregory Berkolaiko <Gregory.Berkolaiko@xxxxxxxxxxxx>
Date: Sun, 6 Apr 2003 19:17:31 +0100 (BST)

On Sun, 6 Apr 2003, Ross Wetmore wrote:

> Several suggestions:
> 1)  Don't confuse the situation by mixing build boat and travel by boat.
>      If you need boats, then increase the want for boats and the locations
> where they are most useful. It is stupid to build a boat for a single
> ferry operation - boats need to be built for longer term reasons, and boat
> building suppressed if you have enough even if there is a given ferry
> operation that needs to wait for a free boat.

While operating via want is more elegant in principle, I don't know how 
to do it well in practice.  Do I bump up the want in several coastal 
cities?  Then they might all build boats.  Bump it up by a smaller amount?  
Then I will end up with throngs of units milling around waiting for te 
want to accumulate.  I think it's more sound just to build a boat.  If 
there are enough boats, the chances are that the boat will never be built: 
the unit will check every turn if it can book a free boat and only then 
renew request for one to be built.

> 2)  Book boat travel on an efficiency basis. Find the nearest boat and
>      have the unit an boat meet up as with bodyguarding, but perhaps taking
> advantage of cities for boading and unloading efficiencies. If a boat is
> already booked but the current request is en-route or closer, then switch
> the booking or divert it to make multiple pickups and drop offs on a
> closest goes first basis. In general penalize stalling boat movement or
> undue diversion/backtracking to pickup passengers, but don't necessarily
> block it. A boat that follows a "ferry-route" picking up and dropping off
> units along the way is the optimal goal.

While it all may sound very nice, I, personally, don't want to start
writing code to estimate the time to get from A to B by hitching rides.  
Any volunteers?

> Summary, don't micromanage the boat pickup and dropoff but let it happen
> under tactical, i.e. immediate situational rules. Micromanaging end-to-end
> single boat operations is both less efficient and more dangerous as you
> are liable to land single units too be easily be picked off, rather than
> armies that have a fighting chance to survive until the next trip can
> bring reinforcements. Micromanaging except in limited one (maybe two) turn
> tactical situations is in general a very poor strategy for any actions.

Sorry, but this is talk of little substance.
You want to get unit U from A (cont 1) to Z (cont 2).  What do you do?  
What's "macromanagement" in this situation?  Brownian motion?  Walking 
to the nearest coastal city and hoping for the best?  Hijacking nearest 
boat no matter where it goes now?

I feel that moving one unit from A to Z is the atom, the basic operation.  
You can't do it by statistical management.


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