...and the AI's decision-process around resignation

Hans Ronne hronne@pp.sbbs.se
Mon Jun 10 09:40:00 GMT 2002


>> What if the AI could be told to ignore certain conditions early in the
>> game that would make it resign?  For example, maybe it shouldn't resign
>> within the first 20 turns if . . .
>
>Well, it doesn't resign in the first 10 turns no matter what.

This is a quick fix that I added a long time ago in order to quell rampant
autoresignation at turn zero by the AI. Another fix that was added at the
same time is the one involving the check for see_all. The AI used to resign
at turn zero in see_all games since seeing all the enemy units out there
scared it senseless.

>Tweaking the point values might be the best "quick fix".
>
>Coming up with a really good resignation algorithm might be tricky,
>but I suppose it could tie into more sophisticated goal-setting in
>general, perhaps.  The algorithm we have now sometimes errs on the
>side of resigning too slowly as well as too quickly.

If I recall things correctly (this was a few years ago) I first tweaked the
algorithm to make it generally harder to resign, but Stan thought this made
resignation too difficult in the standard game. Thus the above fixes, which
are really hacks. A better algorithm would be great, but it is difficult to
come up with something that fits all games.

Personally, I prefer if the AI does not resign at all, but keeps fighting
to the last unit. This makes for a more interesting game, particularly when
playing against several AI opponents. I therefore also added the
ai_may_resign gvar, which prevents resignation if set to false. If
resignation is seen as a problem, we could make it false by default, so
that it applies to all games.

Hans

Hans Ronne

hronne@pp.sbbs.se




More information about the Xconq7 mailing list