Although Markov chains have use in machine learning, a more trivial application that pops up from time-to-time is in text generation. Given a sufficiently large enough corpus, the generated text will usually be unique and comprehensible (at least from sentence…
Review: edX Artificial Intelligence
Artificial intelligence has always been something that has interested me, but more in the “I can beat you at chess” sense than the Data from Star Trek sense. Perhaps because the former seems like something I can reasonably design whereas…
Implementing Minimax in Scala: Alpha-Beta Pruning
Last time, we built a naive minimax algorithm in Scala. While it was effective, it was unfortunately very slow. To increase the performance of the algorithm, we’ll implement a common variant of minimax with what is called “alpha-beta pruning”. Again,…
Implementing Minimax in Scala: Naive Minimax
Minimax is algorithm commonly used by AI in two-player games to determine the best possible move given a current state of the game. It gets its name from the intuitive concept that a player wants to minimize his opponent’s score…
Opening moves in the game of Go: Fuseki Stats
Go (or weiqi or baduk) is an extremely popular strategy game in East Asia that became more popular in the West during the last century. I first came across it several years ago and have played on an off since…