| Chap. 1. | The Java Programming Language
A brief overview of the Java programming language and development environment, and of basic object-oriented programming. It compares and contrasts Java with Smalltalk & C++. |
| Chap. 2. | Problem Solving Using Search
Describes how common AI search strategies such as breadth-first, depth-first and best-first can be used to find solutions to problems. Includes an applet to examine their behaviour on sample problems. |
| Chap. 3. | Knowledge Representation
Introduces the major types of knowledge representation used in AI systems, propositional and predicate logic, frames and semantic networks. Includes an overview of the emerging knowledge representation standard, the Knowledge Interchange Format (KIF). |
| Chap. 4. | Reasoning Systems
Covers the basic elements of rule-based reasoning systems, including antecedent and consequent clauses, certainty factors and sensor and effector rules. An example rule base is used to illustrate the concepts of forward and backward chaining with rules. An applet is developed to demonstrate the implementation of rule based inferencing. A fuzzy rule system, combining rules and fuzzy logic is described. |
| Chap. 5. | Learning Systems
Provides an introduction to learning and adaptive techniques. Contains descriptions of Neural networks, self organising feature maps (Kohonen maps / SOMs ) and how information theory is used to build decision trees by induction. The three learning algorithms are implemented with an applet user interface. |
| Chap. 6. | Intelligent Agents
Provides an overview of the relationship between artificial intelligence and intelligent agents. Covers how knowledge representation, reasoning and learning can be combined to construct intelligent agents. Discusses the requirements for autonomous intelligent agents, multiagent architectures and communications, such as Knowledge Query and Manipulation Language. |
| Chap. 7. | Intelligent Agent Framework
Develops an object-oriented intellegent agent architecture. Starting from a generic set of requirements these are refined into a set of specifications. A series of classes required to support the architecture are developed. These are utilised in the following chapters. |
| Chap. 8. | PC Manager Application
Covers the development of two simple autonomous intelligent agents, one based on a timer and the other that watches the PC file system. When a trigger event occurs the agents can signal each other, alert the user or execute a system command. |
| Chap. 9. | NewsFilter Application
A basic Internet news reader application incorporating an intelligent agent is implemented. The agent assists the user by filtering information. The user is able to specify a profile of keywords to filter the articles. The application uses neural nets to perform either cluster filtering or feedback filtering. The application allows the user to improve (train) the application's filtering accuracy, (selecting more relavent topics) through positive and negative feedback. |
| Chap. 10. | MarketPlace Application
An application creates an intelligent marketplace in which buyer and seller agents co-operate and compete to process sales transations for their owners. A facilitator agent acts as a manager for the market and buyer and seller agents have negotiation strategies ranging from hardcoded logic to rule based inferencing. The application focuses on the issues involved with multiple autonomous agents interact. |
| Chap. 11. | Java-Based Agent Environments
A non-exhaustive overview of other Java-based agent environments and what is happening in the industry. |