background preloader

Chess

Facebook Twitter

GameQuery - a javascript game engine with jQuery. A* search algorithm. In computer science, A* (pronounced "A star" ( listen)) is a computer algorithm that is widely used in pathfinding and graph traversal, the process of plotting an efficiently traversable path between points, called nodes.

A* search algorithm

Noted for its performance and accuracy, it enjoys widespread use. However, in practical travel-routing systems, it is generally outperformed by algorithms which can pre-process the graph to attain better performance,[1] although other work has found A* to be superior to other approaches.[2] It uses a knowledge-plus-heuristic cost function of node x (usually denoted f(x)) to determine the order in which the search visits nodes in the tree.

The cost function is a sum of two functions: Chess Programming Part I: Getting Started. This is the first article in a six-part series about programming computers to play chess, and by extension other similar strategy games of perfect information.

Chess Programming Part I: Getting Started

Chess has been described as the Drosophila Melanogaster of artificial intelligence, in the sense that the game has spawned a great deal of successful research (including a match victory against the current world champion and arguably the best player of all time, Gary Kasparov), much like many of the discoveries in genetics over the years have been made by scientists studying the tiny fruit fly. This article series will describe some of the state-of-the-art techniques employed by the most successful programs in the world, including Deep Blue. Note that by the time the series is completed (in October), I will have written a simple implementation of the game in Java, and the source code will be freely available for download on my web site.

So if you want to see more code samples, be patient; I'll give you plenty in due time! Game AI for Developers — AiGameDev.com.