Rational choice for c-evo's AI:
For each state, we define a rating. The rating reflects the currect strength of the ai. A suitable metric might be the total production per turn [1]. The ai then strives at maximizing the rating, which is equivalent to choosing the most beneficial action. For each action the ai does, we define the benefit as the gain in rating caused by this action[2]. For instance, building a road in an exploited grassland tile has benefit 1, as it boosts production by one trade. Faced with a decision, the AI computes the benefit of all possible actions and then executes the action with the highest benefit. Occasionally, this benefit can be computed precisely, often, some simplifying assumptions will have to be made, resulting in an only approximately rational ai. A preliminary analysis shows this approach can be applied to many aspects of c-evo's game play, including: terraforming, tile exploitation, construction in cities, research. The major caveat is the complexity involved. Choosing which aspects to ignore will be a major challenge, but the system is sound.
Do you think this is a worthwhile approach? What other overall aproaches have been used? With what success?
Regards
Adrian
[1] e.g. (net material production) + b*(net trade production) - c * (missing space ship parts) for some constants b,c
[2] differing action duration can be compensated for.
Posted 30-Oct-05 16:10 by Adrian
