expert systems characteristics

26
Department Of Business Administration University Of Lucknow Term Paper On Expert System Subject Enterprise Knowledge Management Submitted To Submitted By Dr. Ashish Sonakar Pawan Kr. Kushawaha MBA (E-Bussines) Sem. 4 th Roll No. 28

Upload: pawanlumba

Post on 14-Oct-2014

682 views

Category:

Documents


3 download

DESCRIPTION

Enterprise knowledge management

TRANSCRIPT

Page 1: Expert Systems Characteristics

Department Of Business Administration University Of Lucknow

Term Paper

On

Expert System

Subject Enterprise Knowledge Management

Submitted To Submitted By

Dr. Ashish Sonakar Pawan Kr. Kushawaha

MBA (E-Bussines)

Sem. 4th

Roll No. 28

Page 2: Expert Systems Characteristics

ACKNOWLEDGEMENT

I acknowledge my indebtness to “Dr. Ashish Sonakar” who

showed me the right path, helped in increasing my horizon and

clarifying my objective Throughout the project he had always

been there to help me in overcoming the hurdles, thus helping

me to meet my objective.

I would also like to thank my friends and all those

individuals who gave me the proper references and provided me

with relevant information on this topic, gave me important web

links for assistance & helped me a lot.

Pawan Kr. Kushawaha

Page 3: Expert Systems Characteristics

Contents

Definition of Expert/Knowledge-Based Systems .................................................................…...03

Expert Systems Characteristics…………………………………………………………………04

Domain Specificity……………………………………………………………………………….05

Special Programming Languages………………………………………………….…………..05

History of Expert Systems.....................................................................................................…...06

Expert Systems Structure………………………………………………………………….…....08

Most Dynamic……………………………………………………………….…………………...09

Knowledge Base……………………………………………………….………………………...10

Least Dynamic……………………………………………………………….……………….....10

Structure of Expert Systems……………………………………………….…………………...11

Expert System Kernel Architecture………………………………………………………….....11

Expert System Architecture…………………………………………………………………....12

Development…………………………………………………………………………………...13

Major Application Areas………………………………………………………….…………....15

The Need for Expert Systems………………………………………….……………………....16

Benefits Of Expert Systems……………………………………………….………………...…17

Expert Systems Are For Everyone………………………………………………………….....18

Transition From Data Processing To Knowledge Processing………………………………....19

Heuristic Reasoning……………………………………………………….…………………...19

Search Control Methods…………………………………………………….………………....20

Forward Chaining……………………………………………………………………………....20

Backward Chaining…………….…………………………………………………………….....20

User Interface…………………………………………………………………………………...21

Natural Language…………………………………………………………………………….....21

Explanations Facility In Expert Systems………………………………………………………..21

Data Uncertainties……………………………………………………………………………....21

Application Roadmap…………………………………………………...……………………...22

Symbolic Processing…………………………………………………………………………....23

References……………………………………………………………………………………....25

Page 4: Expert Systems Characteristics

REFERENCES

www.wikipedia.org

www.ecrm.com

www.htmtinteractive.com/ecrm.html

www.ecrm-online.com

www.buzzle.com/articles/e-marketing-strategy.html

en.wikipedia.org/wiki/Internet_marketing

www.global-emarketing.com

www.expertsyatem-reports.com

Page 5: Expert Systems Characteristics

3

An expert/knowledge-based system is created to solve problems in a particular narrow

domain of expertise. The above definition restricts the term expert to a particular subject. Some

of the most successful development efforts of expert/knowledge-based systems have been in

domains that are well scoped and have clear boundaries. Specific problem characteristics that

lead to successful expert/knowledge-based systems are discussed as part of the development

process.

Definition of Expert/Knowledge-Based Systems

The primary intent of expert system technology is to realize the integration of human

expertise into computer processes. This integration not only helps to preserve the human

expertise but also allows humans to be freed from performing the more routine activities that might

be associated with interactions with a computer-based system.

Given the number of textbooks, journal articles, and conference publications about

expert/knowledge- based systems and their application, it is not surprising that there exist a

number of different definitions for an expert/knowledge-based system. In this article we use the

following definition (2, 3):

An expert/knowledge-based system is a computer program that is designed to mimic the

decision-making ability of a decision-maker(s) (i.e., expert(s)) in a particular narrow

domain of expertise.

In order to fully understand and appreciate the meaning and nature of this definition, we

highlight and detail the four major component pieces.

An expert/knowledge-based system is a computer program. A computer program is a

piece of software, written by a “programmer” as a solution to some particular problem or client

need. Because expert/knowledge-based systems are software products they inherit all of the

problems associated with any piece of computer software. Some of these issues will be addressed

in the discussion on the development of these systems.

An expert/knowledge-based system is designed to mimic the decision-making ability.

The specific task of an expert/knowledge-based system is to be an alternative source of decision-

making ability for organizations to use; instead of relying on the expertise of just one—or

a handful—of people qualified to make a particular decision. An expert/knowledge-based

system attempts to capture the reasoning of a particular person for a specific problem. Usually

expert/knowledge-based systems are designed and developed to capture the scarce, but

critical decision-making that occurs in many organizations. Expert/knowledge-based systems

are often feared to be “replacements” for decision- makers, however, in many organizations;

these systems are used to “free up” the decision-maker to address more complex and important

issues facing the organization.

Page 6: Expert Systems Characteristics

4

EXPERT SYSTEMS CHARACTERISTICS

By definition, an expert system is a computer program that simulates the thought

process of a human expert to solve complex decision problems in a specific domain. The

characteristics of expert systems that make them different from conventional programming and

traditional decision support tools. The growth of expert systems is expected to continue for

several years. With the continuing growth, many new and exciting applications will emerge. An

expert system operates as an interactive system that responds to questions, asks for clarification,

makes recommendations, and generally aids the decision-making process. Expert systems

provide expert advice and guidance in a wide variety of activities, from computer diagnosis to

delicate medical surgery.

Various definitions of expert systems have been offered by several authors. A general

definition that is representative of the intended functions of expert systems is:

An expert system is an interactive computer-based decision tool that uses both facts and

heuristics to solve difficult decision problems based on knowledge acquired from an expert.

An expert system may be viewed as a computer simulation of a human expert. Expert

systems are an emerging technology with many areas for potential applications. Past applications

range from MYCIN, used in the medical field to diagnose infectious blood diseases, to XCON, used

to configure computer systems. These expert systems have proven to be quite successful. Most

applications of expert systems will fall into one of the following categories:

Interpreting and identifying

Predicting

Diagnosing

Designing

Planning

Monitoring

Debugging and testing

Instructing and training

Controlling

Applications that are computational or deterministic in nature are not good candidates for

expert systems. Traditional decision support systems such as spreadsheets are very mechanistic in

the way they solve problems. They operate under mathematical and Boolean operators in their

Page 7: Expert Systems Characteristics

5

execution and arrive at one and only one static solution for a given set of data. Calculation-

intensive applications with very exacting requirements are better handled by traditional decision

support tools or conventional programming. The best application candidates for expert systems are

those dealing with expert heuristics for solving problems. Conventional computer programs are

based on factual knowledge, an indisputable strength of computers. Humans, by contrast, solve

problems on the basis of a mixture of factual and heuristic knowledge. Heuristic knowledge,

composed of intuition, judgment, and logical inferences, is an indisputable strength of humans.

Successful expert systems will be those that combine facts and heuristics and thus merge

human knowledge with computer power in solving problems. To be effective, an expert system

must focus on a particular problem domain, as discussed below.

Domain Specificity

Expert systems are typically very domain specific. For example, a diagnostic expert system

for troubleshooting computers must actually perform all the necessary data manipulation as a

human expert would. The developer of such a system must limit his or her scope of the system to

just what is needed to solve the target problem. Special tools or programming languages are often

needed to accomplish the specific objectives of the system.

Special Programming Languages

Expert systems are typically written in special programming languages. The use of

languages like LISP and PROLOG in the development of an expert system simplifies the coding

process. The major advantage of these languages, as compared to conventional programming

languages, is the simplicity of the addition, elimination, or substitution of new rules and memory

management capabilities. Some of the distinguishing characteristics of programming languages

needed for expert systems work are:

Efficient mix of integer and real variables

Good memory-management procedures

Extensive data-manipulation routines

Incremental compilation

Tagged memory architecture

Optimization of the systems environment

Efficient search procedures

Page 8: Expert Systems Characteristics

6

History of Expert Systems

Expert systems are one of the two major paradigms for developing intelligent systems

within the field of Artificial Intelligence. Expert/knowledge-based systems are an example of the

symbolic paradigm; the other major paradigm is the connectionist paradigm that has led

to the development of Neural Network technology. In order to discuss the history of these

systems a brief history of the Artificial Intelligence field is necessary. Expert/knowledge-based

systems were the first major successful application technology to evolve from Artificial

Intelligence research.

Artificial Intelligence

The foundations of the field of Artificial Intelligence can be traced from many different

disciplines including philosophy, mathematics, psychology, computer engineering, and

linguistics.

The first cited work in the area of Artificial Intelligence dates back to McCulloch and Pitts in

1943. They proposed a model of artificial neurons that mimic the structure of the human brain;

this area later became the connectionist paradigm.

In the summer of 1956, John McCarthy organized a two-month workshop at

Dartmouth and 10 leading U.S. researchers interested in automata theory, neural networks, and

the study of intelligence were invited. Two researchers from Carnegie Tech (now known as

Carnegie Mellon University), Allen Newell and Herbert Simon were the focus of the workshop

due to their reasoning program known as the Logic Theorist (LT). Simon claimed “we

have invented a computer program capable of thinking non- numerically, and thereby solved

the venerable mind-body problem.” Soon after the workshop, LT was able to prove most the

theorems in Chapter 2 of Russell and Whitehead’s Principia Mathematica. An interesting note is

that a paper on the use of LT to prove the theorems was rejected by The Journal of Symbolic

Logic . The Dartmouth workshop accomplished two major outcomes. First, it served as a forum

to introduce the leading researchers to each other; for the next twenty years, the field of AI would

be dominated by these ten individuals, their students, and colleagues at MIT, CMU, Stanford, and

IBM. The second major accomplishment of the workshop—and a more lasting one—was an

agreement to adopt John McCarthy’s new name for the field: Artificial Intelligence.

The work of Newell and Simon is the first documented work using the symbolic

Page 9: Expert Systems Characteristics

7

programming paradigm of AI. Their work on LT led them to develop another program known as

general Problem Solver (GPS). The success of GPS was not as widely heralded however because

of the limited class of problems that it could solve.

GPS was designed from the start to imitate human problem-solving protocols

regardless of the information contained in the domain. These so-called “weak” methods—

because they use weak information about the domain—turned out to show weak performance in

solving problem in more complex domains.

Researchers then took the opposite approach in the development of the DENDRAL

program. They applied the knowledge of analytical chemists to infer the molecular structure from

the information provided by a mass spectrometer. DENDRAL holds a significant

place in the history of expert/knowledge-based systems because it was the first system to

use the expertise of human problem solvers and translate that knowledge into a large numbers of

special purpose rules, known as a rule -based system.

Page 10: Expert Systems Characteristics

8

EXPERT SYSTEMS STRUCTURE

Complex decisions involve intricate combination of factual and heuristic knowledge. In

order for the computer to be able to retrieve and effectively use heuristic knowledge, the knowledge

must be organized in an easily accessible format that distinguishes among data, knowledge, and

control structures. For this reason, expert systems are organized in three distinct levels:

1. Knowledge base consists of problem-solving rules, procedures, and intrinsic data relevant

to the problem domain.

2. Working memory refers to task-specific data for the problem under consideration.

3. Inference engine is a generic control mechanism that applies the axiomatic knowledge in

the knowledge base to the task-specific data to arrive at some solution or conclusion.

These three pieces may very well come from different sources. The inference engine, such

as VP-Expert, may come from a commercial vendor. The knowledge base may be a specific

diagnostic knowledge base compiled by a consulting firm, and the problem data may be supplied by

the end user. A knowledge base is the nucleus of the expert system structure. A knowledge base is

not a data base. The traditional data base environment deals with data that have a static relationship

between the elements in the problem domain. A knowledge base is created by knowledge

engineers, who translate the knowledge of real human experts into rules and strategies. These

rules and strategies can change depending on the prevailing problem scenario. The knowledge base

provides the expert system with the capability to recommend directions for user inquiry. The system

also instigates further investigation into areas that may be important to a certain line of reasoning

but not apparent to the user. The modularity of an expert system is an important distinguishing

characteristic compared to a conventional computer program. Modularity is affected in an expert

system by the use of three distinct components, as shown in Figure.

Page 11: Expert Systems Characteristics

9

The knowledge base constitutes the problem-solving rules, facts, or intuition that a human

expert might use in solving problems in a given problem domain. The knowledge base is usually

stored in terms of if–then rules. The working memory represents relevant data for the current

problem being solved. The inference engine is the control mechanism that organizes the problem

data and searches through the knowledge base for applicable rules. With the increasing popularity

of expert systems, many commercial inference engines are coming onto the market. The

development of a functional expert system usually centers on the organization of the

knowledge base. A functional integration of expert systems components is shown in Figure.

Figure: Integration of expert systems components

A good expert system is expected to grow as it learns from user feedback. Feedback is

incorporated into the knowledge base as appropriate to make the expert system smarter. The

dynamism of the application environment for expert systems is based on the individual dynamism

of the components. This can be classified as follows:

Most dynamic: Working memory. The contents of the working memory, sometimes called

the data structure, changes with each problem situation. Consequently, it is the most dynamic

component of an expert system, assuming, of course, that it is kept current.

Page 12: Expert Systems Characteristics

10

Knowledge base-The knowledge base need not change unless a new piece of information

arises that indicates a change in the problem solution procedure. Changes in the knowledge base

should be carefully evaluated before being implemented. In effect, changes should not be based on

just one consultation experience. For example, a rule that is found to be irrelevant less than one

problem situation may turn out to be crucial in solving other problems.

Least dynamic: - Inference engine. Because of the strict control and coding structure of an

inference engine, changes are made only if absolutely necessary to correct a bug or enhance the

inferential process. Commercial inference engines, in particular, change only at the discretion of the

developer. Since frequent updates can be disruptive and costly to clients, most commercial software

developers try to minimize the frequency of updates.

Page 13: Expert Systems Characteristics

11

Structure of Expert Systems In the early days the phrase “expert system” was used to denote a system whose

knowledge base and reasoning mechanisms were based on those of a human expert. In this

article a more general position is held. A system will be called an “expert system” based on its

form alone and independent of its source of knowledge or reasoning capabilities.

The purpose of this section is to provide an intuitive overview of the architectural ideas

associated with expert systems. In discussing the architecture of expert systems we will first

introduce the concept of an expert system kernel and then embed that kernel in a fuller and more

traditional expert system architecture.

Expert System Kernel Architecture

The kernel of an expert system contains those components that are the basic and the

required components for all expert systems. These components are identified as a fact base, a

rule base, and an inference mechanism. The fact base and the rule base combine to be the

knowledge base for the kernel.

Figure 1 provides an overview of the kernel of an expert system from this structuralism point-of-

view.At the highest level of abstraction there is the environment E and the expert system ES

connected to or embedded in it. This level may be represented as:

E <---> ES.

The environment establishes the domain of application of the expert system.

Page 14: Expert Systems Characteristics

12

In addition to being viewed as the context in which the expert system performs its functions

the environment E may be viewed as the source of the knowledge that the expert system ES has and

the data which drives its behaviors. The expert system ES may be viewed as a reactive system - i.e., it

reacts to data and information it receives from the environment E based on the reasoning capabilities

it possesses.

Expert System Architecture

If we embed the kernel of an expert system in an operational context that contains

processes for interacting with and interfacing with a user, a process for knowledge and data

acquisition and a process to support the generation of explanations for rule firings and advice to the

user then we arrive at what is customarily viewed as the architecture for an expert system.

Figure displays the architecture commonly associated with expert systems. In our terminology it

is comprised of a kernel augmented by processes for data and knowledge capture, user interfaces

and interactions, and an process for generating and presenting to a user explanations of its behaviors.

Page 15: Expert Systems Characteristics

13

The “Knowledge and Data Acquisition” process is used by the expert system to acquire new

facts and rules associated with its specific domain. It is through this process that capabilities can be

added to or subtracted from the expert system. Associated with this process is the concept of

knowledge engineering. This is the process whereby knowledge from an expert or group of experts or

other sources such as books, procedure manuals, training guides, etc. are gathered, formatted, verified

and validated, and input into the knowledge base of the expert system.

The “User Interface” process is the mechanism used by the expert system to present to some

human user information on its functioning, and specifically information on its determination of the

state of the environment to which it is associated and its actions relevant to its understanding of the

environment’s state. Most current user interfaces are supported by multimedia technology and are

designed to provide the user with the most complete and unambiguous presentation of information

possible.

The “Explanation” process is used by the expert system to provide to the user a reasoned

history of its actions and/or recommendations. This explanation is usually generated by

providing a textual commentary identifying the sequence of rules it has fired with associated

canned or automated commentary generation on why the rule was fired. This type of explanation

can be used by the user to verify that the reasoning mechanism being utilized by the expert system is

correct. It also provides additional information to the user that can be used to establish a more

complete context for understanding both the state of the environment in question and the rationale for

any advice or opinion given by the expert system.

Development The development of an E/KBS—often referred to as knowledge engineering—follows much the

same path of any other software product. However, within the development of an E/KBS terminology

and the nature of the software development process are different from conventional software systems.

The major development effort in creating an expert/knowledge-based system is the design and

development of the knowledge base (KB). One of the problems with the design and development of a

KB is the lack of a formal methodology. By formal methodology we mean a strategy that allows us

to measure (precisely) the performance of an E/KBS similar to conventional software system design

and development.

Expert/knowledge-based system development (usually) relies on an evolutionary rapid

prototyping methodology to create the KB. One definition of rapid prototyping is an iterative process

that develops “an easily modifiable and extensible working model of a proposed system, not

necessarily representative of a complete system, which provides users of the application with a

physical representation of key parts of the system before implementation” By using rapid

Page 16: Expert Systems Characteristics

14

prototyping the developer can focus on building small working systems that can be the central

element of discussions between the users, client, and the developers in solving the particular decision

problems at hand. The rapid prototyping paradigm, for KB development, is often unstructured and ad

hoc, especially concerning the testing and evaluation of the KB. This can lead to the development of

a KB that is inefficient and contains numerous potential errors. Under evolutionary rapid prototyping,

an E/KBS is designed and built in an incremental fashion.

There have been many paradigms offered for the design and development of a KBS. The best

known of these paradigms is the five-stage process given by Buchanan. These five stages—

identification, conceptualization, formalization, implementation, and testing correspond loosely

to the eight stages in the waterfall model for conventional software development. Buchanan, et al.

points out that the process of developing an E/KBS is iterative. The E/KBS developer and the domain

expert may revisit any of the previous stages for further revision or refinement of the concepts and/or

relationships in the problem domain. This is inherent in the evolutionary rapid prototyping process.

Derek Partridge describes a methodology of artificial intelligence program construction through a

process known as RUDE (Run-Understand-Debug-Edit). RUDE is based on rapid prototyping and

the abstraction of the problem at each stage of the development process. He describes a KBS

as an "incompletely specified function" because it models the behavior of a human and, as such, is

not formally specified in the same manner as conventional software. Partridge argues that given

this incomplete problem specification, the only way to develop a KBS is through a trial-and-error

approach. Many other approaches have been proposed.

An approach that builds on both Buchanan and Partridge is the four-stage methodology known as

DICE. DICE stands for Design, Implementation, Critique, and Editing. The methodology, which

emphasizes testing and reliability analysis, uses evolutionary rapid prototyping and creates a

control system where the feedback of the testing results improves the reliability and performance of

the system.

Regardless of the methodology chosen to develop an E/KBS, there are six key activities to

be performed within the development life cycle of an E/KBS.

(1) Problem Selection

(2) Knowledge Acquisition

(3) Knowledge Representation

(4) Implementation Testing,

(5) Verification, Validation, Evaluation

(6) Maintenance/Sustenance

Page 17: Expert Systems Characteristics

15

Major Application Areas

There are two different ways developers look at application areas for expert/knowledge-

based systems. First, they look at the functional nature of the problem. Secondly, they look at the

application domain. We review both of these ways to get a better understanding for the

application of expert/knowledge-based systems to “real-world” problems. In 1993, John

Durkin published a catalog of expert system applications that briefly reviews a number of

applications of expert/knowledge- based system technology and categorizes each of the nearly 2,500

systems.

Both MYCIN and XCON point out two different functions that are viewed as highly favorable

for expert/knowledge-based system development. MYCIN mainly deals with the diagnosis

of a disease given a set of symptoms and patient information. XCON, on the other hand, is a

synthesis-based (design) configuration expert system. It takes as its input the needs of the

customer and builds a feasible arrangement of components to meet the need. Both of these systems

solve different generic “types” of problems.

An expert system may have many differing functions. It may monitor, detect faults, isolate

faults, control, give advice, document, assist, etc. The range of applications for expert system

technology ranges from highly embedded turnkey expert systems for controlling certain functions in a

car or in a home to systems that provide financial, medical, or navigation advice to systems that

control spacecraft.

Table 1 lists the ten different types of problems generally solved by expert/knowledge-based

systems. Within each problem type expert perform a generic set of tasks, such as diagnosis or

planning.

Page 18: Expert Systems Characteristics

16

Table 1. Expert/Knowledge -Based System Application Areas

Problem Type Description

Control Governing system behavior to meet specifications

Design Configuring Objects under constraint

Diagnosis Inferring System Malfunction from observables Instruction

Diagnosing, debugging, and repairing student behavior

Interpretation Inferring situation description from data

Monitoring Comparing observations to expectations

Planning Designing actions

Prediction Inferring likely consequences of given situation Prescription

Recommending solution to system malfunction Selection

Identifying best choice from a list of possibilities

As can be seen from Table 1, there are many different types of problems that can be solved

using expert/knowledge-based system technology. Currently, the majority of expert/knowledge-

based system applications are diagnostic systems interpretation and prediction systems are also

highly favorable functional domains.

Expert/knowledge-based systems also cover a number of different application areas, such as business,

manufacturing, medicine, and engineering. Durkin lists over 20 different application areas, including

business, which encompasses marketing, management, finance, accounting, etc.

The Need for Expert Systems

Expert systems are necessitated by the limitations associated with conventional human decision-

making processes, including:

1. Human expertise is very scarce.

2. Humans get tired from physical or mental workload.

3. Humans forget crucial details of a problem.

4. Humans are inconsistent in their day-to-day decisions.

5. Humans have limited working memory.

6. Humans are unable to comprehend large amounts of data quickly.

7. Humans are unable to retain large amounts of data in memory.

8. Humans are slow in recalling information stored in memory.

9. Humans are subject to deliberate or inadvertent bias in their actions.

Page 19: Expert Systems Characteristics

17

10. Humans can deliberately avoid decision responsibilities.

11. Humans lie, hide, and die.

Coupled with these human limitations are the weaknesses inherent in conventional programming

and traditional decision-support tools. Despite the mechanistic power of computers, they have certain

limitations that impair their effectiveness in implementing human-like decision processes. Conventional

programs:

1. Are algorithmic in nature and depend only on raw machine power

2. Depend on facts that may be difficult to obtain

3. Do not make use of the effective heuristic approaches used by human experts

4. Are not easily adaptable to changing problem environments

5. Seek explicit and factual solutions that may not be possible

Benefits of Expert Systems

Expert systems offer an environment where the good capabilities of humans and the power of

computers can be incorporated to overcome many of the limitations discussed in the previous section.

Expert systems:

1. Increase the probability, frequency, and consistency of making good decisions

2. Help distribute human expertise

3. Facilitate real-time, low-cost expert-level decisions by the non expert

4. Enhance the utilization of most of the available data

5.Permit objectivity by weighing evidence without bias and without regard for the user’s

personal and emotional reactions

6. Permit dynamism through modularity of structure

7. Free up the mind and time of the human expert to enable him or her to concentrate on more

creative activities

8. Encourage investigations into the subtle areas of a problem

Page 20: Expert Systems Characteristics

18

Expert Systems Are For Everyone- No matter which area of business one is engaged in,

expert systems can fulfill the need for higher productivity and reliability of decisions. Everyone can find

an application potential in the field of expert systems. Contrary to the belief that expert systems may

pose a threat to job security, expert systems can actually help to create opportunities for new job areas.

Presented below are some areas that hold promise for new job opportunities:

Basic research

Applied research

Knowledge engineering

Inference engine development

Consulting (development and implementation)

Training

Sales and marketing

Passive or active end user

An active user is one who directly uses expert systems consultations to obtain recommendations.

A passive user is one who trusts the results obtained from expert systems and supports the

implementation of those results.

Page 21: Expert Systems Characteristics

19

Data

TRANSITION FROM DATA PROCESSING TO KNOWLEDGE PROCESSING

What data has been to the previous generations of computing, knowledge is to the present

generation of computing. Expert systems represent a revolutionary transition from the traditional data

processing to knowledge processing. Figure illustrates the relationships between the procedures for data

processing and knowledge processing to make decisions. In traditional data processing the decision

maker obtains the information generated and performs an explicit analysis of the information before

making his or her decision. In an expert system knowledge is processed by using available data as the

processing fuel. Conclusions are reached and recommendations are derived implicitly. The expert

system offers the recommendation to the decision maker, who makes the final decision and implements

it as appropriate. Conventional data can now be manipulated to work with durable knowledge, which

can be processed to generate timely information, which is then used to enhance human decisions.

Data processing versus knowledge processing

Heuristic Reasoning

Human experts use a type of problem-solving technique called heuristic reasoning. Commonly

called rules of thumb or expert heuristics, it allows the expert to arrive at a good solution quickly and

efficiently. Expert systems base their reasoning process on symbolic manipulation and heuristic

inference procedures that closely match the human thinking process. Conventional programs can only

recognize numeric or alphabetic strings and manipulate them only in a preprogrammed manner.

Page 22: Expert Systems Characteristics

20

Search Control Methods

All expert systems are searching intensive. Many techniques have been employed to make these

intensive searches more efficient. Branch and bound, pruning, depth-first search, and breadth-first search

are some of the search techniques that have been explored. Because of the intensity of the search

process, it is important that good search control strategies be used in the expert systems inference

process.

Forward Chaining

This method involves checking the condition part of a rule to determine whether it is true

or false. If the condition is true, then the action part of the rule is also true. This procedure continues

until a solution is found or a dead end is reached. Forward chaining is commonly referred to as data-

driven reasoning.

Backward Chaining

Backward chaining is the reverse of forward chaining. It is used to backtrack from a goal to the

paths that lead to the goal. Backward chaining is very good when all outcomes are known and the

number of possible outcomes is not large. In this case, a goal is specified and the expert system

tries to determine what conditions are needed to arrive at the specified goal. Back- ward chaining is thus

also called goal-driven.

Page 23: Expert Systems Characteristics

21

USER INTERFACE The initial development of an expert system is performed by the expert and the knowledge

engineer. Unlike most conventional programs, in which only programmers can make program design

decisions, the design of large expert systems is implemented through a team effort. A consideration of

the needs of the end user is very important in designing the contents and user interface of expert

systems.

Natural Language

The programming languages used for expert systems tend to operate in a manner similar to

ordinary conversation. We usually state the premise of a problem in the form of a question, with actions

being stated much as when we verbally answer the question, that is, in a ‘‘natural language’’ format. If,

during or after a consultation, an expert system determines that a piece of its data or knowledge base is

incorrect or is no longer applicable because the problem environment has changed, it should be able to

update the knowledge base accordingly. This capability would allow the expert system to converse in a

natural language format with either the developers or users.

Expert systems not only arrive at solutions or recommendations, but can give the user a level of

confidence about the solution. In this manner, an expert system can handle both quantitative and

qualitative factors when analyzing problems. This aspect is very important when we consider how in-

exact most input data are for day-to-day decision making. For example, the problems addressed by an

expert system can have more than one solution or, in some cases, no definite solution at all. Yet the

expert system can provide useful recommendations to the user just as a human consultant might do.

Explanations Facility in Expert Systems

One of the key characteristics of an expert system is the explanation facility. With this capability,

an expert system can explain how it arrives at its conclusions. The user can ask questions dealing with

the what, how, and why aspects of a problem. The expert system will then provide the user with a trace

of the consultation process, pointing out the key reasoning paths followed during the consultation.

Sometimes an expert system is required to solve other problems, possibly not directly related to the

specific problem at hand, but whose solution will have an impact on the total problem-solving process.

The explanation facility helps the expert system to clarify and justify why such a digression might be

needed.

Data Uncertainties

Expert systems are capable of working with inexact data. An expert system allows the user to

assign probabilities, certainty factors, or confidence levels to any or all input data. This feature closely

represents how most problems are handled in the real world. An expert system can take all relevant

factors into account and make a recommendation based on the best possible solution rather than the only

Page 24: Expert Systems Characteristics

22

exact solution.

Application Roadmap

The symbolic processing capabilities of AI technology lead to many potential applications in

engineering and manufacturing. With the increasing sophistication of AI techniques, analysts are now

able to use innovative methods to provide viable solutions to complex problems in everyday

applications. Figure presents a structural representation of the application paths for artificial intelligence

and expert systems.

Application roadmap for expert systems

Page 25: Expert Systems Characteristics

23

Symbolic Processing

Contrary to the practice in conventional programming, expert systems can manipulate objects

symbolically to arrive at reasonable conclusions to a problem scenario. The object drawings in this

section are used to illustrate the versatility of symbolic processing by using the manipulation of objects

to convey information. Let us assume that we are given the collection of five common objects as

shown in Figure A.

Figure A. Collection of common objects.

The objects are Head, Hammer, Bucket, Foot, and Bill (as in doctor’s bill). We can logically

arrange a subset of the set of given objects to convey specific inferences. In Figure B, four of the five

objects are arranged in the order Hammer, Head, Foot, and Bucket. This unique arrangement may be

represented by the equation presented below:

Hammer ~ Head =Foot ~ Bucket

It is desired to infer a reasonable statement of the information being conveyed by the symbolic

arrangement of objects in Figure B. Figure 2.8 presents an alternative arrangement of another subset

(hammer, foot, foot, and bill) of the given objects. This alternative arrangement may be represented by

the equation shown below:

Figure B. Arrangement of common objects.

Page 26: Expert Systems Characteristics

24

Hammer ~ Foot = Foot ~ Bill

It is desired to infer a reasonable statement from Figure 2.8. It should be noted that ordinary

mathematical reasoning concerning the equation hammer ~ foot = foot ~ bill might lead to Hammer

Bill. However, in artificial intelligence symbolic reasoning, the context of the arrangement of the objects

will determine the proper implication.

Figure B: If Hammer smashes Head, then victim kicks the bucket (i.e., dies). In this case, the

action part of the statement relates to an action (a fatal one) by the victim of the assault.

Figure C: If Hammer smashes Foot, then assailant foots the bill. In this case, the action part of

the statement relates to a compensatory action (restitution) by the assailant.

Using a finite set of symbolic objects, we can generate different pieces of information with different

permutations of the objects. A particularly interesting aspect of symbolic processing is noted in Figure

C.

Figure C. Alternate arrangement of objects.

The object Foot conveys one meaning when concatenated with one given object (Hammer) and

another totally different meaning when concatenated with another object (bill). In fact, the identification

of the object Bill is itself symbolically conveyed by the contents of the medical bill in Figure A. With

the illustrated capability of symbolic processing, very powerful AI-based tools can be developed for

practical applications. However, more research and development efforts will be needed before many of

those practical applications can be realized.