The MAI Framework - A framework for research in artificial intelligence
Fast Facts
- Written By: David Bond with a few algorithms coded by Niels Widger
- Written In: C#
- When Written: Senior Year College - 1st Year Grad School
- Uses: XML, .NET, OpenGL, Mono, Visual Studio
- Purpose: AI Research
I developed this framework for research I have done in AI. While the screenshots
I show here have MAI running on in single agent path finding it has a full objected
oriented design that decouples the algorithms from the domain and heurisitics being
used. The code base for MAI has another domain, STRIPS planning, meaning that given
the right heurisitics A* will work on path planning as well as STRIPS planning.
The algorithm designer doesn't have to worry about the domain. The framework can
be run in batch mode to produce output for graphs or in a visualizer mode to debug
or demo the algorithms being developed. Here are a set of pictures with the path
planning MAI visualizer.
Here is an example of path finding in a fully visible dynamic world with an added
real time constrait.
Along with supporting HOG framework files MAI also can load a specially designed
MAI xml format. This format has features such as prescripted changes to allow consitency
between batch runs of maps.
Here is an example of path finding in an initially unknown static world with an
added real time constrait. The map here is an adaption of the War Craft 3 Moonglade
map.
The visualizer supports many debugging features for algorithms that show some of
the underlying data structures. This is useful for programmers to attain a better
understand of how to improve the algorithms being developed.