Koyal - A Multi-purpose Expert System - MD-CoB-CoA Knowledge Representation Using PROLOG in J2SE Prof. Sreedhar Babu
Department of Electrical Engineering Amrita Viswa Vidyapeetham Amritapuri, Kerala firstname.lastname@example.org
Archana, Vineeth & Veena
Department of Computer Science & Applications Amrita Viswa Vidyapeetham Amritapuri, Kerala email@example.com
Abstract— Expert systems are AI‟s greatest commercial success. It is a research-oriented application area of AI. An expert system uses knowledge specific to a problem domain to provide "expert quality" performance. Predicate logic is being used for knowledge representation which is further programmed using PROLOG inference engine for deriving intelligent conclusions. The current research paper introduces a rule-based expert system that provides a medical diagnosis for determining the health problems and classification of birds and animals. The user has to have some knowledge about these topics so that he can query the system. Three knowledge bases are provided for each domain. The specialized computer language PROLOG embedded into J2SE is used to develop this system. Keywords-component: Expert System; Knowledge-base; Medical Diagnosis, Rule-based ES, Knowledge representation PROLOG; J2SE. 1. INTRODUCTION : THE KOYAL EXPERT SYSTEM The current paper of Koyal has mainly two modules: 1.1. Knowledge Base 1.2. User Interface 1.1 Knowledge Base [1 & 2] Mainly, three knowledge bases are required for the system. They are bird‟s knowledge base for identifying a bird, animal knowledge base for identifying an animal and a disease knowledge base for medical diagnose. The system uses this knowledge base for finding solutions. Knowledge is represented in rule-based format. The rule of the system is in the form of: IF first premise and second premise, and ………. THEN conclusion
This is semantically same as a Prolog rule: conclusion:first_ premise, second_ premise, ………... Premises are written as attribute-value pair. The attribute is represented as a predicate and the value as the argument to the predicate. Each knowledge base will have to have a high-level goal, which calls the sub goals to be satisfied. When all the premises are satisfied, then the final conclusion is obtained. 1.2. User Interface The user interface is the Prolog interpreter‟s interface, and the input data is stored directly in the program. It is implemented in Java by loading the prolog inference engine into the java program. The prolog program itself will provide a user interface. The predicate ask and menuask will provide these functions. The ask is responsible is for getting the information from the user and remembering the user‟s response. The ask predicate will have to determine from the user whether or not a given attribute-value pair is true. The ask prompts the user with the requested attribute and value and seeks confirmation or denial of the proposed information. The ask is represented as object-attribute-value triples where the attribute values are tied to various objects in the system. The menuask will further improve the user interface by adding a menu capability which gives the user a list of possible values for an attribute. The main precondition of our Koyal System is that a common user who has no knowledge about the specialized „domain‟ cannot interact with the system and in such a situation the output accuracy will depend on the user inputs. 2. Description of the System Flow The system flow chart represented in the figure 2 displays the flow of the information from one process to another .We can say that it is a detailed representation of the structured chart in the Fig. 2.1.
2.1. User The user will enter the text and this text is passed to the inference engine. 2.2. Inference Engine A rule-based system requires some kind of program to manipulate the rules - for example to decide which ones are ready to fire. (i.e. which ones have conditions that match the contents of working memory)....
Please join StudyMode to read the full document