Professional Documents
Culture Documents
The CD-ROM contains a number of useful applications that demonstrate the properties of AI
algorithmic techniques and methods. The methods and applications that demonstrate them are
Pathfinding Algorithm
reward landscape is used to demonstrate the optimal pathfinding abilities of the A-star algorithm.
Also provided on the CD-ROM are demonstrations of the Depth-First-Search and Breadth-First-
Simulated Annealing
in Chapter 3. The theoretical N-Queens problem is used to demonstrate the constraint satisfaction
properties of the algorithm. The algorithm and application can be found on the CD-ROM at
./software/ch3.
Particle Swarm Optimization is a swarm intelligence algorithm that uses a population of loosely
dependent particles to solve a variety of problems. We use particle swarm optimization here to
demonstrate function optimization (finding the combination of parameters that maximize the
results of a given function). The algorithm and application to maximize the sombrero function is
Adaptive Resonance Theory, also called ART-1, is a clustering algorithm that provides the ability
to separate (or cluster) elements in a data set into independent data sets based upon properties of
the individual data items. The algorithm does this in an unsupervised manner, allowing the
algorithm to find patterns in the data that a user may not notice. The practical problem of
Classifier Systems
In Chapter 6, we explore one of the older learning algorithms in AI, the learning classifier
system. Learning Classifier Systems (LCS) is a class of algorithms that learn condition/action
rules based upon reward received from the target environment. We demonstrate the basic LCS in
an obstacle grid world, where the agent learns sets of classifiers to avoid running into obstacles.
Ant Algorithms
Ant algorithms are a relatively new method that can be used to identify optimal paths through a
graph. This method is described in Chapter 7. Ant algorithms model the movement of ants within
an environment and use a simulated pheromone to communicate with other ants (the process of
stigmergy). The theoretical problem of the Traveling Salesman Problem (or TSP) is used to
demonstrate the ant algorithm. The algorithm and application can be found on the CD-ROM at
./software/ch7.
Backpropagation Algorithm
The backpropagation algorithm, discussed in Chapter 8, is one of the primary methods used to
train multi-layer neural networks given a training set and a set of desired outputs.
Backpropagation propagates errors back through the nodes of a network, altering the weights of
the connections based upon the error of the actual and desired outputs. The interesting problem
simple neural network, a set of environmental inputs and a set of allowable actions (otherwise
known as the training set), the algorithm trains the network to perform the desired action for the
current environment. It is then demonstrated that the neurocontroller is able to generalize and
perform useful behaviors for unforeseen environments. The backpropagation algorithm and
Reinforcement Learning
optimization algorithm which learns probability transitions for a given problem. We demonstrate
the Q learning algorithm of reinforcement learning in a problem landscape that includes both
obstacles and variable rewards for getting from a start to goal position. The Q-learning example
Genetic algorithms provide a novel optimization technique that can be applied to both numerical
and symbolic problems, and is described in Chapter 10. The subfield of genetic programming is
further used to illustrate the creation of instruction sequences to solve problems in code
demonstrated how these sequences can find novel strings that are both interesting and optimal
given a simple virtual machine. The genetic programming algorithm and application can be
Artificial life is studied here in the context of neural networks through evolution of simple
organisms in a synthetic environment and is described in Chapter 11. Organisms survive through
successfully existing within their environment, avoiding prey and foraging for food. Organisms
are permitted to reproduce, once they reach a high enough level of internal energy. Therefore,
reproduction is only permitted if organisms can survive within the environment, which should
lead to more fit organisms. The organisms are provided with multi-layer neural networks as their
neurocontrollers, and given two different types of organisms, illustrate simple food-web
organizations. The artificial life application can be found on the CD-ROM at ./software/ch11.
Expert Systems
Rules-based systems are the topic of Chapter 12, which shows the emphasis and implementation
of a forward-chaining system. Varieties of examples are provided, in the form of rules and initial
facts, with a final example of integrating the rules-based system into an embedded system and
utilizing it for sensor fault-tolerance. The forward-chaining rules-based system and application
Fuzzy Logic
In Chapter 13, fuzzy logic and fuzzy control are described including an implementation of a
fuzzy API for inclusion into other applications. The API provides not only the standard fuzzy
operators, but also helper functions that support the simple creation of fuzzy membership
functions. The fuzzy logic API and a simple battery charger example is provided on the CD-
ROM at ./software/ch13.
predictive parser in this chapter to parse simple English language sentences. Additionally, we
exploit the minimal example to build a knowledge frame once the sentence has been parsed. The
Hidden Markov models are the topic of Chapter 15, which are networks that include states and
based upon the associated probability distribution. The action is performed, made visible, though
the internal state is hidden, thus the hidden aspect of the Markov model. Hidden Markov models
have a variety of applications; in Chapter 10 we look at the generation of meaningful text based
upon training by a corpus. The HMM and a text generation example is provided on the CD-ROM
at ./software/ch15.
Intelligent Agents
Intelligent agents are the final topic in Chapter 16, with emphasis on search and filtering agents.
Intelligent agents are applied in a number of different ways; the application chosen for this
chapter is a filtering agent that acts as an intermediary to UseNet sites on the Internet. The
WebAgent is configured through a simple configuration file. It then autonomously gathers news
using the NNTP protocol and presents it to the user with the HTTP protocol (acting as a simple
System Requirements
Applications on this CD-ROM require a PC with Windows 95, 98, 2000, Me, or XP using the
Cygwin UNIX environment (freely downloadable at www.cygwin.com), or Linux (Red Hat 6.1 or
later, or comparable Linux distribution); 486 or higher CPU; 64MB RAM; 60MB disk space;
CD-ROM drive; Internet access and Web browser (for the WebAgent example).