Implementing an Intelligent Retrieval System: The CODER System, Version 1.0

For individuals requiring interactive access to online text, information storage and retrieval systems provide a way to retrieve desired documents and/or text passages. The CODER (COmposite Document Expert/effective/extended Retrieval) system is a testbed for determining how useful various artificial intelligence techniques are for increasing the effectiveness of information storage and retrieval systems. The system, designed previously, has three components: an analysis subsystem for analyzing and storing document contents, a central spine for manipulations and storage of world and domain knowledge, and a retrieval subsystem for matching user queries to relevant documents. This thesis discusses the implementation of the retrieval subsystem and portions of the spine and analysis subsystem. It illustrates that logic programming, specifically with the Prolog language, is suitable for development of an intelligent information retrieval system. Furthermore, it shows that system modularity provides a flexible research testbed, allowing many individuals to work on different parts of the system which may later be quickly integrated. The retrieval subsystem has been implemented in a modular fashion so that new approaches to information can be easily compared to more traditional ones. A powerful knowledge representation language, a comprehensive lexicon, and individually tailored experts using standardized blackboard modules for communication and control allowed rapid prototyping, incremental development and ready adaptability to change. The system executes on a DEC VAX 11/785 running ULTRIX (TM), a variant of 4.2 BSD UNIX. It has been implemented as a set of MU-Prolog and C modules communicating through TCP/IP sockets.