[Freeciv-Dev] Re: suggestion
[Top] [All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index] [Thread Index]
On Mon, 23 Apr 2001, Glenn Taylor wrote:
> Grzegorz Borowiak wrote:
>
> > On Sun, 22 Apr 2001, Michele Slocovich wrote:
> >
> > > Idea
> > > scripting language for client side ai implementation
> >
> > My proposals: C, C++.
> >
> > All other are too slow to provide good ai.
>
> That's a pretty broad generalization. What time-critical
> decisions have to be made in FreeCiv that would necessitate
> as-fast-as-possible-AI?
> And can you give specific examples from that 'all other' category to
> show how they're not appropriate?
Did you ever write some game like chess, checkers or go? If you did, you
see what I mean. AI has really many to analyze. It must predict enemy
moves for some turns. Situation is even more complex than in checkers,
because civ is not deterministic; results of battle etc are random. So
AI must predict all probable variants of events.
After all, AI must calculate value of situation in all variants and
compare them. It is hard to make such a thing arbitrary, not using neurals
or other adaptively developed stuff.
In addition, unlike checkers, in civ there is no full knowledge. AI must
"guess" what is behind enemy lines. It must use not only probabilistics
for this, but also some artificial experience, stored in e.g. neural
networks, which are also time-consuming.
If AI has to be really good and comparable to human, but relatively fast,
it cannot be done in other languages than those which compile to native
machine code. It doesn't have to be nothing other than C/C++; it can be
Fortran, Ada or Pascal, but C/C++ is here the best solution.
Bots can be written easily if many useful library functions will be
developed.
> glenn
_____________
Grzes \_______________________|_______________________/
grzes@xxxxxxxxxxxxxxx (_)
http://gnu.univ.gda.pl/~grzes/
'Na kazdym zebraniu jest taka sytuacja, ze ktos musi zaczac pierwszy.'
|
|