package aima.core.search.adversarial; import java.util.List; /** * Artificial Intelligence A Modern Approach (3rd Edition): page 165.
*
* A game can be formally defined as a kind of search problem with the following * elements:
* * * @author Ruediger Lunde * * @param * Type which is used for states in the game. * @param * Type which is used for actions in the game. * @param * Type which is used for players in the game. */ public interface Game { STATE getInitialState(); PLAYER[] getPlayers(); PLAYER getPlayer(STATE state); List getActions(STATE state); STATE getResult(STATE state, ACTION action); boolean isTerminal(STATE state); double getUtility(STATE state, PLAYER player); }