0% found this document useful (0 votes)
72 views6 pages

Expert System Shells Overview

Uploaded by

jaikrit2020
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
72 views6 pages

Expert System Shells Overview

Uploaded by

jaikrit2020
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 6

Expert System Shells

An Expert system shell is a software development environment. It contains the basic


components of expert systems. A shell is associated with a prescribed method for
building applications by configuring and instantiating these components.

Shell components and description

The generic components of a shell : the knowledge acquisition, the knowledge Base,
the reasoning, the explanation and the user interface are shown below. The knowledge
base and reasoning engine are the core components.

■ Knowledge Base
A store of factual and heuristic knowledge. Expert system tool provides one or more
knowledge representation schemes for expressing knowledge about the application
domain. Some tools use both Frames (objects) and IF-THEN rules. In PROLOG the
knowledge is represented as logical statements.

■ Reasoning Engine
Inference mechanisms for manipulating the symbolic information and knowledge in
the knowledge base form a line of reasoning in solving a problem. The inference
mechanism can range from simple modus ponens backward chaining of IF-THEN
rules to Case-Based reasoning.

Knowledge Acquisition subsystem

A subsystem to help experts in build knowledge bases. However, collecting


knowledge, needed to solve problems and build the knowledge base, is the biggest
bottleneck in building expert systems.
Explanation subsystem
A subsystem that explains the system's actions. The explanation can range from how
the final or intermediate solutions were arrived at justifying the need for additional
data.
User Interface
A means of communication with the user. The user interface is generally not a part of
the expert system technology. It was not given much attention in the past. However,
the user interface can make a critical difference in the pe eived utility of an Expert
system.

Popular Expert System shells

Following are a few examples of expert systems available for developers to build

expert systems at various scales. Depending on the ES Shell there are various pros and

cons associated with each shell.

4.1 ES-Builder

ES Builder stands for Expert System Builder. It is one of the most famous Expert

System Shell. It is a free ES shell that is implemented especially for students and

researchers to develop expert system shells. The shell consists of an improved web

interface built using the AJAX framework. The ES-Builder stores the facts and rules of

the knowledge base in an online MySQL database. There is a built-in inference engine

(written in Prolog)and user interfaces are developed using simple HTML and CSS.

The database connectivity is maintained to access the knowledge base using PHP.

The rule base knowledge base can also be developed using a decision tree that consists

of attributes, values and conclusions.

 Attribute: Attributes are characteristics of possible conclusions that are to be

tested in the ES.


 Value: Each Value node represents the most correct response to an Attribute

for a particular conclusion.

 Conclusion: The final decision made based on the attributes and values is the

conclusion.

Benefits of ES Builder:

 Autogenerated User Interfaces (Simple HTML CSS design of the user interface)

 Ability to create backup files of the knowledge base and easy integration with
MYSQL database.

 Ability populates the knowledge base using the decision tree.

 Optimized view of the rule-based knowledge base.

Limitations of ES-Builder:

 Only forward chaining rules are supported backward chaining rules are not

supported.

 Desktop tools support only Windows 98 & Windows 7.


4.2 CLIPS

CLIPS stands for C-Language Integrated Production System. As the meaning suggests

the CLIPS expert system shell is written in the procedural langue C. CLIPS was

developed in 1985 at NASA’s Johnson Space Center. It is a rule-based programming

language that is used for creating an expert system. CLIPS are used in systems where

the heuristic solution is easier to implement and maintain than a traditional algorithmic

approach.

CLIPS provides 03 different tools for knowledge representation in the form of

programming methodologies/ programming paradigms. The 03 methods are:

 Procedural

 Object-oriented

 Rule-based programming

Since the CLIPS is written in C language, the expert system developed by CLIPS

requires ANSI compiler also. Since the systems that already have the ANSI compiler
can easily run the expert system without changing the source code.

Benefits of CLIPS:

 Can be easily embedded in other subroutines made in procedural languages to

extend the existing functionality.

 Support the methods like fuzzy logic and agents.


Limitations of CLIPS:

 Support only forward chaining rules but does not support backward chaining

rules.

4.3 JESS

JESS stands for Java Expert System Shell. JESS is another expert system shell and a

scripting language that is completely written by Java programming language. JESS is

heavily used to build rule-based expert systems which is tightly linked to systems that

are written on Java. The expert systems built by using JESS can be either run on

command-line interface or can be used as an Applet.

JESS based expert systems are widely used as intelligent agents, in enterprise resource

planning systems, and in order validation of eCommerce platforms.

Benefits of JESS:

 Better to be applied in bigger problems where performance is dominated by

algorithm quality.

 Include backward chaining and working memory queries.

 Faster than the expert systems developed using expert system shells written on

C language.

 Contains some commands which allow less memory usage when executing the

system.

 Limitations of JESS:

 Some capabilities are limited when used in Browser.


4.4 PyKE

PyKE stands for Python Knowledge Engine. PyKE uses logic programming that is

inspired by Prolog, but PyKE is entirely written in the programming language Python.

The python functions, PyKE rules, and PyKE pattern variables, graph plans are the

major features of PyKE knowledge base. This is an inference engine that uses rules

and facts to create additional facts using forward chaining of rules to prove goals.

And also, through backward chaining, it assembles Python functions into customizable

call graphs which are also known as Plans.

Benefits of PyKE:

 Highly customizable and code adaptability.

 High performance.

 Code reusability.

 Both forward chaining and backward chaining is supported.

 Ability to run commands on the local system to guide the inferencing.

 Provide end-user question capability.

Limitations of PyKE The UI should be created manually.

 Integration issues occur when integrating inference engines with different UIs.

You might also like