I think what an AI should do depends a LOT on the game in question.
A Strategy AI should go for challenge, complexity, and adaptability.
A Combat AI should be focused more on being interesting and providing an acceptable level of challenge.
i agree with this in that there are two purposes of AIs imo
purpose 1 is offline target practice for playing humans online.
purpose 2 is simulating a human because you cannot play a human in said game
so in unreal tournament, i dont expect alot of variations from the bots apart from weapon pref, and possibly an aggression setting. They exist as target practice and training for online play. On very hard modes, i dont even mind that much if they cheat.
in a total war game, i want to feel like im locking heads with great military minds, so the purpose of the AI is to simulate that. If the AI; cheats, performs impossible feats, does things that a human would never do, evades the traps a human would fall into etc, then its failing.
I think some AIs should actually simulate human flaws. The total war AI is a pretty good example of a mediocre ai, especially on the battlefield but also on campaign map. It always knows where hidden troops are when a human wouldnt, it almost always uses the same strategy, its rarely indecisive (expect in Medival 2 where there was an infinite indecision bug) etc. Historically different generals had differnt approaches, and became known for their ways of doing things, AIs should seek variety to make you feel like you fighting different oponents.