Context: Utility theory Game AI Question: How to resolve deadlocks ? Scenario: RTS game - both sides have only one unit left in the game and no resources to build more.
Consider a Gorilla and a Shark that are the only two entities who exist in a closed world (simulation) Both the Gorilla and the Shark are driven by Utility theory AI
Neither has any knowledge of the others capabilities. Neither has any knowledge of who would win if a fight were to take place. Neither has any knowledge of the location of the other.
From the point of view of the Gorilla (Could just as easily be the Shark):
In order to maximize utility it must fight with and defeat the shark.
In order to fight with the Shark the Gorilla must first scout for the Shark. however in doing so it might "run into" the Shark and end up in a fight.
If the Gorilla were to fight with the shark it might lose in which case this would be the opposite of maximizing utility.
Therefore in these circumstances a Utility theory AI ends up simply where the Gorilla and the Shark just avoid each other intentionally.
And this then becomes a deadlock. Why so is because avoiding the other is also a form of maximizing utility.
To break the deadlock requires making the game AI use less than optimal rules at random. For example "Random unplanned attack"
Essentially how do you model "outcome unknown" scenarios (or scenarios where the actions are non deterministic) into a utility theory AI. Or is introducing Random behaviors the only way?