We cater to core gamers and developers that whish to embed a strong and adaptable AI in their engine.
Type of games
The type of game you are trying to model greatly impact the difficulty of building an AI for it, which in turn drive the cost of development of the agent. You can separate games into
roughly 4 categories when it comes to building an AI.
Observable state
Is the game Perfect and Imperfect information games ?
Chess is an example of perfect information since you have access to the whole game state
to make the best possible decision. A card game where your opponent has hidden cards is an example of imperfect information. As one might expect, typically imperfect information games tends to be harder to model.
Real-time vs turn-based
As the name implies, real-time is where all players can play at the same time and turn based
is the case where player take turn to play, such as Go. In terms of complexity, real-time is
more difficult to model. However, reality is often more nuanced than that. Many games
have both type of game mechanics and there are cases where games are real-time but can
be modeled as turned-based.
Deterministic vs Stochastic
A deterministic outcome is a situation where, for a given action, the result is known. For
instance, if I move my queen to take a bishop in Chess, the outcome is known. A stochastic
outcome is a situation where the result may vary. Take the game of Risk for instance, you
may attack with an overwhelming amount of units, but if the opponent is lucky during the
dice roll phase, you can still lose. Of course, stochastic game makes it harder to develop an
AI.
Number of players
Most games are 2 players game (or 2 teams). But the game of Risk, or Hearthstone
Battleground involves many players. It makes the game much harder since the concept of
best move (in a game theoretical sense) can seldom be computed.
Thus, identifying where the game fits into these categories is the initial steps for modeling our AI.