KAI.png
GameAIBook Closed.png
Get the first 3 chapters of the book for free!



The KAI library is a library of Artificial Intelligence code written in C# and used by my students at Northeastern University and Worcester Polytechnic Institute in my class Artificial Intelligence for Games.
The library is undergoing periodic upgrade and improvement. It currently contains
  • A full and extensible Finite State Automata implementation including push/pop/pervasive transitions and hierarchical FSAs
  • A simple Rule Based logic implementation including database, match patten and rule run-time data structures as well as parsers for converting simple textual descriptions of all three into the run-time data structures. (This implementation is not suitable to very large databases, but thats not generally the games use-case.)
  • An extensible DecisionTrees implementation including predefined abstract nodes for binary and trinary operations, as well as sub-class implementations for testing integers, floats and regexp strings.
  • A Genetic Neural Network implementation that includes a single-layer perceptron and genetic neural weight trainer
  • Dykstra Search and A* pathfinding implementations

Coming soon:
  • Fuzzy Logic Engine
  • Generic Genetic Engine
  • Steering Behaviors for 2D and 3D games

Download KAI libraries and Doxygen docs:

Most likely to be up to date


Download KAI-Unity package:

This is KAI pre-imported with its dependancies as a Unity package.
I will make every effort to keep this up to date but it may sometimes lag behind the binary and source releases.


Get the Source Code:

Always the most up to date.
KAI on Bitbucket

View the docs online

KAI docs online

Get the first 3 chapters of the book for free!


Join the mail list for the full book Kickstarter!


If you like the preview and would like to get in on a Kickstarter to finish the other 400 or so pages, please join the group below. When we have 250 interested people, the Kickstarter will begin.

If you are already logged into a google account you will see an Apply To Join Group button. Just click it! if you aren't logged into a google account then you will see a New Topic button. Click that and it will take you through google login and then give you the Apply To Join Group button.

If you wish to be on the mail list for the kickstarter, but do not want to create a google account, then please email me with your name and email address at jeffpk@gmail.com