A modularization for PROLOG knowledge bases

Abstract One of the most critical disadvantages of knowledge based systems is their slow execution speed. Knowledge based systems run about ten to one hundred times slower than traditional (procedural) information systems. This has generally limited their application environments and constrained the development of hybrid systems requiring both traditional and knowledge based approaches. This paper presents a framework for modularizing PROLOG knowledge bases such that the inferencing process to execute a goal is localized to an independent module consisting of only a subset of the knowledge base. Note that the motivation for modularization in a knowledge based system is quite different from the motivations for modularization in a traditional system. The presented modularization approach is expected to contribute to the development of more efficient knowledge based systems and more effective hybrid systems requiring both knowledge based and traditional approaches.

[1]  John McAuley,et al.  Machine grouping for efficient production , 1972 .

[2]  William Mettrey,et al.  An Assessment of Tools for Building Large Knowledge-Based Systems , 1987, AI Mag..

[3]  Glenford J. Myers,et al.  Composite/structured design , 1978 .

[4]  Allan S. Carrie,et al.  Numerical taxonomy applied to group technology and plant layout , 1973 .

[5]  T.J. Murray,et al.  Control of inconsistency and redundancy in Prolog-type knowledge bases , 1988, [1988] Proceedings of the Twenty-First Annual Hawaii International Conference on System Sciences. Volume III: Decision Support and Knowledge Based Systems Track.

[6]  D. L. Parnas,et al.  On the criteria to be used in decomposing systems into modules , 1972, Software Pioneers.

[7]  Carlo Muller Modula--Prolog: A Software Development , 1986, IEEE Software.

[8]  P. A. Subrahmanyam,et al.  The "Software Engineering" of Expert Systems: Is Prolog Appropriate? , 1985, IEEE Transactions on Software Engineering.

[9]  P. Waghodekar,et al.  Machine-component cell formation in group technology: MACE , 1984 .

[10]  John J. Sviokla Business implications of knowledge-based systems , 1986, Data Base.

[11]  Marvin Minsky,et al.  A framework for representing knowledge , 1974 .

[12]  Michael R. Genesereth,et al.  Logic programming , 1985, CACM.

[13]  A. Kusiak The generalized group technology concept , 1987 .

[14]  J. P. Gallager Knowledge systems for business , 1990 .

[15]  Jeffrey D. Ullman,et al.  Implementation of logical query languages for databases , 1985, TODS.

[16]  Claudia Marcus Prolog Programming , 1986 .

[17]  William F. Clocksin,et al.  Programming in Prolog , 1981, Springer Berlin Heidelberg.

[18]  Frederick Hayes-Roth,et al.  Building expert systems , 1983, Advanced book program.

[19]  Edward Yourdon,et al.  Techniques of Program Structure and Design , 1976 .

[20]  Constantin Halatsis,et al.  Encapsulation constructs in prolog , 1987, Microprocess. Microprogramming.

[21]  Paul J. Schweitzer,et al.  Problem Decomposition and Data Reorganization by a Clustering Technique , 1972, Oper. Res..

[22]  J. King,et al.  Machine-component group formation in group technology: review and extension , 1982 .

[23]  Glenford J Myers,et al.  Reliable software through composite design , 1975 .

[24]  Donald A. Waterman,et al.  Pattern-Directed Inference Systems , 1981, IEEE Transactions on Pattern Analysis and Machine Intelligence.

[25]  Robert A. Kowalski,et al.  Logic for problem solving , 1982, The computer science library : Artificial intelligence series.

[26]  Richard Fikes,et al.  The role of frame-based representation in reasoning , 1985, CACM.

[27]  Jean B. Rogers,et al.  A Prolog Primer , 1986 .

[28]  Randall Davis,et al.  Meta-Rules: Reasoning about Control , 1980, Artif. Intell..

[29]  Ken Pedersen Well-structured knowledge bases , 1989 .

[30]  S. P. Mitrofanov SCIENTIFIC PRINCIPLES OF GROUP TECHNOLOGY , 1961 .

[31]  Donald A. Waterman,et al.  A Guide to Expert Systems , 1986 .

[32]  Elaine Kant,et al.  Programming expert systems in OPS5 , 1985 .

[33]  Giovanni Guida,et al.  Representing Procedural Knowledge in Expert Systems: An Application to Process Control , 1985, IJCAI.

[34]  Gunter F.K. Purcheck,et al.  A mathematical classification as a basis for the design of group-technology production cells , 1975 .

[35]  R. Selvam,et al.  Algorithmic grouping of operation sequences , 1985 .

[36]  K. L. Clark,et al.  Logic Programming , 1982 .

[37]  J. Witte The use of similarity coefficients in production flow analysis , 1980 .

[38]  Frederick Hayes-Roth,et al.  Rule-based systems , 1985, CACM.

[39]  A. Terry Bahill,et al.  Lessons learned building expert systems , 1988 .

[40]  Edmund H. Durfee,et al.  Approximate Processing in Real-Time Problem Solving , 1988, AI Mag..

[41]  John J. Sviokla Business implications of knowledge-based systems , 1986, Data Base.

[42]  R. Rajagopalan,et al.  Design of cellular production systems A graph-theoretic approach , 1975 .