Concepts, Principles and practices of building Artificial Intelligence based systems to play games
The objective of this course is to teach the concepts, principles, and practices used to develop artificial intelligence-based game programs.
Games are played by people to prove the intelligence and skill of the players. As Artificial Intelligence spans across domains to build machines as capable as humans, both physically and cognitively, Artificial Intelligence-based Games programs is one of the emerging areas in technology. In 1997, the first Game playing machine, IBM Deep Blue defeated the Russian Chess Grandmaster, Garry Kasparov it was looked at as a historic beginning of the competition between machines and man. In this course, we begin with a brief introduction to the structure of an Intelligent Agent. We begin with a simple two-person Min – Max zero-sum game in which the win amount of one player is the loss of the other. The min-max algorithm aims at exploring all possibilities estimating the worst-case guaranteed amount and choosing the move. We also extend to multiplayer games where the utility function is a vector of dimension k (number of players). Alpha Beta Pruning increases the speed in decision making, by pruning some unwanted branches of the search tree. As the number of nodes to be explored is exponentially many, we try to develop some meaningful heuristic approach to develop an algorithm to cut off a few branches and get some imperfect real-time solutions. Skill-based games are played purely with the skills of players. Stochastic games combine some stochastic experiments to decide who will do the next move and how. We also deal with stochastic games and the algorithms to choose the next move. Some games are fully visible by both the players while in some games, a player's board is hidden from the other. Partially observable games use statistical methods to arrive at meaningful solutions. We also discuss some state-of-the-art game programs and modern approaches.