Jonathan J. King
Intelligent retrieval planning is the application of artificial intelligence techniques to the task of efficient retrieval of information from very large databases. Using such techniques, significant increases in efficiency can be obtained. Some of these improvements are not available through standard methods of database query optimization. Intelligent retrieval planning presents interesting issues related to other artificial intelligence planning research: planning with limited resources, optimizing the combined planning and execution process, and pursuing plans whose success depends upon the current contents of the database. An experimental system has been implemented to demonstrate the novel kinds of query optimizations and to test strategies for controlling the inference of constraints. The problem of query optimization has arisen with the development of high level logical data models and nonprocedural query languages. These free a user from the need to understand the physical organization of the database when posing a query. However, the user’s statement of the query may lead to very inefficient processing. Standard techniques of query optimization manipulate the set of retrieval operations contained in the query to find a relatively inexpensive sequence. The manipulations are independent of the meaning of the query, depending entirely on such factors as the size of the referenced files. The essential advance of intelligent retrieval planning over standard techniques of database query optimization is to combine knowledge about the semantics of the application domain with knowledge about the physical organization of the database. Domain knowledge makes it possible to use the constraints in a database query to infer additional constraints which the retrieved data must satisfy. These additional constraints may make it possible to use more efficient retrieval operations or permit the execution of a sequence of operations that has a lower cost. Knowledge of the physical organization of the database can be used to limit the attempts to make such inferences so that the combined process of retrieval and inference is cost effective.