![]()
Topsi is a development environment for Artificial Intelligence applications. It implements a variation on OPS-5, a language developed at Carnegie-Mellon University under government sponsorship. It is essentially a forward chaining rule system in which knowledge is represented as a set of conditions and consequences. As with any rule-based system, the order of expression of the rules is inconsequential. When a rule is qualified to fire because its patterns are matched in the data, it competes with all other qualified rules for the right to be executed next. The ordering of the rules may be one of three predefined, user selected strategies which tend to control the focus of the system as the knowledge evolves.
The implementation uses a typical tree structure for efficiency where new data flow through a network until they are stopped at a specific node for lack of agreement of other data items.
The user interface offers three standard panes:
The illustration below indicates a simple, depth-first search of a map for the cheapest route between cities.
The system also permits standard dialogs to acquire either single data items or whole lines of text.
The system has facilities for calling external functions written in C++.