Software Development Paradigms for Artificial Intelligence Applications

I.C. Ellis and A. Agah (USA)


Artificial Intelligence Applications and Programming.


Functional programming languages like LISP and PROLOG have long dominated the field of classical Artificial Intelligence (AI) programming. One major drawback to functional languages, however, is in their speed performance. Some programmers that are fond of functional languages immediately dismiss alternatives like C++ because they do not support features like tail recursion or treat functions as first-class objects. While C++ may not have the same features as these other languages, it does provide very good performance and has a number of useful features. The C++ Standard Library is a collection of data Containers, and Algorithms that can be performed on the Containers along with a framework for customizing and enhancing the library. The addition of the Standard Library has made C++ into a language that AI programmers should consider when good performance is needed. It is now possible to write general code that works on any data types, and to write functions that can be treated as first-class objects. In this paper, these techniques are demonstrated with the design and implementation of a path finding AI simulation written in C++. The path finding is demonstrated though a three dimensional graphics program, augmented with a graphical user interface for ease of use.

Important Links:

Go Back