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

[freeciv-ai] Re: New settler code

[Top] [All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index] [Thread Index]
To: "Per I. Mathisen" <per@xxxxxxxxxxx>
Cc: Freeciv AI development <freeciv-ai@xxxxxxxxxxx>
Subject: [freeciv-ai] Re: New settler code
From: Mike Kaufman <kaufman@xxxxxxxxxxxxxxxxxxxxxx>
Date: Mon, 14 Apr 2003 10:47:59 -0500

On Mon, Apr 14, 2003 at 01:09:12PM +0000, Per I. Mathisen wrote:

> The current AI settler code is also omniscient, so nothing has changed
> there. The idea that the new settler code should somehow manage the
> incredible feat of not using omniscience (do you have _any_ idea how hard
> that is?) is just silly.

I don't. explain it to me.

> > well, it should be ashamed. And why shouldn't AIs fight over good
> > positions? In this case I think that correctness in concert with foresight
> > should give cause for reconsideration of your positon.
> I find arguments like "gee, it would be nice if it wasn't omniscient"
> totally unconvincing, since this would require a totally different and
> much more complex settler code, require big changes to the explorer code,
> and would give dramatically _worse_ results than the current AI.
> However, if splitting the map will give new features, like supplying
> explorers with information about city radiuses, then I can be convinced to
> do so.

this is kinda what I'm hearing:

Alice: Eventually making AIs for client-side is a laudable goal (and code
       reuse is a great thing).
Bob: Well, in principle, yes, but that's a long ways in the future. And 
     here's some code I wrote that will make continue the trend of making
     it much harder to reach that goal by giving us a code base that's
     totally unusable for that goal, and also has tremendous inertia: it'll
     take 10x the effort to remove it later than to put it in now.
Alice: Uh, this is not good design principles.
Bob: That's a totally unconvincing argument.

I'm seeing a "hear no evil, see no evil" mentality regarding client-side
AI. I'll say it again. I know that server AI will be with us for a long
while, but that is no excuse whatsoever for writing new code that makes it
harder and harder to reuse all this work for extending the AI. This is not
about it being "nice" if it weren't omnicient, this is about a principle of
a non-omnicient AI.

of course, I got no response about this. I am wrong? Do you think that
client-side AI is a pointless goal?

And let me add that I find the idea of _explorer_ code that requires
omnicience to be a quite baffling concept.


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