KROL: a knowledge representation object language on top of Prolog

Abstract This paper presents a knowledge representation object language (KROL) on top of Prolog. KROL is aimed at providing the ability to develop second-generation expert systems. The main aspects of KROL include multi-paradigm knowledge representation (first-order predicate logic, objects, rules), inference mechanisms at different levels of granularity, explanation facility, object-oriented database management module, and user-friendly interface. KROL has sufficient expressive power to be used in applying demanding knowledge-based modeling methodologies, such as KADS and Generic Task, which are the major landmarks of the second-generation expert systems technology. Four successful agricultural expert systems have been developed in the last 6 years using KROL. To demonstrate the language capabilities, we present an example of disorder diagnosis.

[1]  El-Sayed El-Azhary,et al.  From Dependency Networks to KADS: Implementation Issues , 1995 .

[2]  Chew Lim Tan,et al.  An object-oriented knowledge base for multi-domain expert systems , 1995 .

[3]  Gordon B. Davis,et al.  User requirements for explanation in expert systems , 1990 .

[4]  A. Rafea,et al.  Guiding object-oriented design via the knowledge level architecture , 1994 .

[5]  Jon Sticklen,et al.  Neper Wheat: An Integrated Architecture for Irrigated Wheat Crop Management , 1995 .

[6]  Mats Carlsson,et al.  SICStus Prolog User''s Manual , 1993 .

[7]  William E. Lorensen,et al.  Object-Oriented Modeling and Design , 1991, TOOLS.

[8]  Henry Kanoui,et al.  Extending Logic Programming to Object Programming: The System Lap , 1987, IJCAI.

[9]  Nor Adnan Yahaya On the development of environments for developing expert systems , 1994, Proceedings of International Conference on Expert Systems for Development.

[10]  Maurizio Lenzerini,et al.  Inheritance hierarchies in knowledge representation and programming languages , 1991 .

[11]  Won Kim,et al.  Object-Oriented Databases: Definition and Research Directions , 1990, IEEE Trans. Knowl. Data Eng..

[12]  Laurie Swinney The explanation facility and the explanation effect , 1995 .

[13]  Yoshiyuki Koseki Amalgamating Multiple Programming Paradigms in PROLOG , 1987, IJCAI.

[14]  Roger T. Hartley Representation of Procedural Knowledge for Expert Systems , 1985, CAIA.

[15]  H. Roesner Expert systems for commercial use , 1988 .

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

[17]  Paul Harmon,et al.  Object-oriented AI: a commercial perspective , 1995, CACM.

[18]  Henry Lieberman,et al.  Using prototypical objects to implement shared behavior in object-oriented systems , 1986, OOPLSA '86.

[19]  Guoliang Zheng,et al.  A hybrid knowledge representation based on logical objects , 1994, Proceedings of International Conference on Expert Systems for Development.

[20]  B. Chandrasekaran,et al.  Generic Tasks in Knowledge-Based Reasoning: High-Level Building Blocks for Expert System Design , 1986, IEEE Expert.

[21]  Bernadette Kowalski,et al.  Object processing for knowledge-based systems , 1990 .

[22]  Ahmed A. Rafea,et al.  Experience with the Development and Deployment of Expert Systems in Agriculture , 1995, IAAI.

[23]  Mladen Stanojević,et al.  A blackboard framework on top of prolog , 1994 .

[24]  Peter Grogono,et al.  Specifying an expert system , 1991 .

[25]  Guus Schreiber,et al.  KADS : a principled approach to knowledge-based system development , 1993 .

[26]  Reid Simmons,et al.  Second Generation Expert Systems , 1993, Springer Berlin Heidelberg.

[27]  F. Turini,et al.  Inheritance hierarchies in blackboard architectures , 1991 .

[28]  A. Rafea,et al.  Integrating Multimedia with Expert Systems for Crop Production Management , 1995 .

[29]  Luc Steels,et al.  Second-Generation Expert Systems , 1985, IEEE Expert.

[30]  Allen Newell,et al.  The Knowledge Level , 1989, Artif. Intell..