Architecture of Expert System Unit 5

Embed Size (px)

Citation preview

  • 7/25/2019 Architecture of Expert System Unit 5

    1/24

    UNIT 5

    EXPERT SYSTEMS

    Introduction

    Expert Systemsare computer programs that are derived from a branch of computer science research

    called Artificial Intelligence (AI). AI's scientific goal is to understand intelligence by building computer

    programs that exhibit intelligent behavior. It is concerned with the concepts and methods of symbolic

    inference, or reasoning, by a computer, and how the knowledge used to make those inferences will be

    represented inside the machine.

    Of course, the term intelligencecovers many cognitive skills, including the ability to

    solve problems, learn, and understand language; AI addresses all of those. But most

    progress to date in AI has been made in the area of problem solving -- concepts and

    methods for building programs that reasonabout problems rather than calculate a

    solution.

    AI programs that achieve expert-level competence in solving problems in task areas

    by bringing to bear a body of knowledge about specific tasks are called knowledge-

    basedor expert systems. Often, the term expert systems is reserved for programs

    whose knowledge base contains the knowledge used by human experts, in contrast to

    knowledge gathered from textbooks or non-experts. More often than not, the twoterms, expert systems (ES) and knowledge-based systems (KBS), are used

    synonymously. Taken together, they represent the most widespread type of AI

    application. The area of human intellectual endeavor to be captured in an expert

    system is called thetask domain. Taskrefers to some goal-oriented, problem-solving

    activity.Domainrefers to the area within which the task is being performed. Typical

    tasks are diagnosis, planning, scheduling, configuration and design. An example of a

    task domain is aircraft crew scheduling, discussed in Chapter 2.

    Building an expert system is known as knowledge engineeringand its practitioners are

    called knowledge engineers. The knowledge engineer must make sure that the

    computer has all the knowledge needed to solve a problem. The knowledge engineer

    must choose one or more forms in which to represent the required knowledge as

    symbol patterns in the memory of the computer -- that is, he (or she) must choose

    a knowledge representation. He must also ensure that the computer can use the

    http://www.wtec.org/loyola/kb/c2_s4.htm#planninghttp://www.wtec.org/loyola/kb/c2_s4.htm#planning
  • 7/25/2019 Architecture of Expert System Unit 5

    2/24

    knowledge efficiently by selecting from a handful of reasoning methods. The practice

    of knowledge engineering is described later. We first describe the components of

    expert systems.

    THE APPLICATIONS OF EXPERT SYSTEMS

    The spectrum of applications of expert systems technology to industrial and

    commercial problems is so wide as to defy easy characterization. The applications

    find their way into most areas of knowledge work. They are as varied as helping

    salespersons sell modular factory-built homes to helping NASA plan the maintenance

    of a space shuttle in preparation for its next flight.

    Applications tend to cluster into seven major classes.

    Diagnosis and Troubleshooting of Devices and Systems of All Kinds

    Planning and Scheduling

    Configuration of Manufactured Objects from Subassemblies

    Financial Decision Making

    Knowledge Publishing

    Process Monitoring and Control

    Design and Manufacturing

    ARCHITECTURE OF EXPERT SYSTEM

    Expert systems typically contain the following four components:

    Knowledge-Acquisition Interface User Interface

    Knowledge Base

    Inference Engine

  • 7/25/2019 Architecture of Expert System Unit 5

    3/24

    This architecture differs consideraly from traditional computer programs!resulting in se"eral characteristics of expert systems#

    Expert Syste Coponents

    !no"#ed$e%Ac&uisition Inter'(ce

    The $nowledge-acquisition interface controls how the expert and $nowledge

    engineer interact with the program to incorporate $nowledge into the $nowledge

    ase# It includes features to assist experts in expressing their $nowledge in a form

    suitale for reasoning y the computer#This process of expressing $nowledge in the

    $nowledge ase is called $nowledge acquisition# Knowledge acquisition turns out

    to e quite difficult in many cases--so difficult that some authors refer to the

    $nowledge acquisition ottlenec$ to indicate that it is this aspect of expert system

    de"elopment which often requires the most time and effort#

  • 7/25/2019 Architecture of Expert System Unit 5

    4/24

    %eugging faulty $nowlege ases is facilitated y traces &lists of rules in the

    order they were fired'! proes &commands to find and edit specific rules! facts! and

    so on'! and oo$$eeping functions and indexes &which $eep trac$ of "arious

    features of the $nowledge ase such as "ariales and rules'# (ome rule-ased

    expert system shells for personal computers monitor data entry! chec$ing the

    syntactic "alidity of rules# Expert systems are typically "alidated y testing their

    preditions for se"eral cases against those of human experts# )ase facilities--

    permitting a file of such cases to e stored and automatically e"aluated after the

    program is re"ised--can greatly speed the "aidation process# *any features that are

    useful for the user interface! such as on-screen help and explanations! are also of

    enefit to the de"eloper of expert systems and are also part of $nowledge-

    acquisition interfaces#

    Expert systems in the literature demonstrate a wide range of modes of

    $nowledge acquisition &Buchanan! +,.'# Expert system shells on microcomputers

    typically require the user to either enter rules explicitly or enter se"eral examples

    of cases with appropriate conclusions! from which the program will infer a rule#

    User Inter'(ce

    The user interface is the part of the program that interacts with the user# It prompts

    the user for information required to sol"e a prolem! displays conclusions! and

    explains its reasoning#

    Fe(tures o' t)e user inter'(ce o'ten inc#ude*

    %oesn/t as$ 0dum0 questions

    Explains its reasoning on request

  • 7/25/2019 Architecture of Expert System Unit 5

    5/24

    1ro"ides documentation and references

    %efines technical terms

    1ermits sensiti"ity analyses! simulations! and what-if analyses

    %etailed report of recommendations

    2ustifies recommendations

    3nline help

    4raphical displays of information

    Trace or step through reasoning

    The user interface can e 5udged y how well it reproduces the $ind of interaction

    one might expect etween a human expert and someone consulting that expert#

    !no"#ed$e +(se

    The $nowledge ase consists of specific $nowledge aout some sustanti"e

    domain# A $nowledge ase differs from a data ase in that the $nowledge ase

    includes oth explicit $nowledge and implicit $nowledge# *uch of the $nowledge

    in the $nowledge ase is not stated explicitly! ut inferred y the inference engine

    from explicit statements in the $nowledge ase# This ma$es $nowledge ases ha"e

    more efficient data storage than data ases and gi"es them the power to

    exhausti"ely represent all the $nowledge implied y explicit statements of

    $nowledge#

    There are se"eral important ways in which $nowledge is represented in a

    $nowledge ase# 6or more information! see $nowledge representation strategies#

  • 7/25/2019 Architecture of Expert System Unit 5

    6/24

    Knowledge ases can contain many different types of $nowledge and the process

    of acquiring $nowledge for the $nowledge ase &this is often called $nowledge

    acquisition' often needs to e quite different depending on the type of $nowledge

    sought#

    Types of Knowledge

    There are many different $inds of $nowledge considered in expert systems# *any

    of these form dimensions of contrasting $nowledge:

    explicit $nowledge

    implicit $nowledge domain $nowledge

    common sense or world $nowledge

    heuristics

    algorithms

    procedural $nowledge

    declarati"e or semantic $nowledge

    pulic $nowledge

    pri"ate $nowledge

    shallow $nowledge

    deep $nowledge

    meta$nowledge

    In'erence En$ine

    The inference engine uses general rules of inference to reason from the $nowledge

    ase and draw conclusions which are not explicitly stated ut can e inferred from

    the $nowledge ase# Inference engines are capale of symolic reasoning! not 5ust

    mathematical reasoning# 7ence! they expand the scope of fruitful applications of

    computer programs# The specific forms of inference permitted y different

  • 7/25/2019 Architecture of Expert System Unit 5

    7/24

    inference engines "ary! depending on se"eral factors! including the $nowledge

    representation strategies employed y the expert system#

    RO,ES OF EXPERT SYSTEMS

    Ro#es in Expert Syste -e.e#opent

    Three fundamental roles in uilding expert systems are:

    +# Expert - (uccessful E( systems depend on the experience and application of

    $nowledge that the people can ring to it during its de"elopment# 8arge systems

    generally require multiple experts#

    9# Knowledge engineer - The $nowledge engineer has a dual tas$# This person

    should e ale to elicit $nowledge from the expert! gradually gaining an

    understanding of an area of expertise# Intelligence! tact! empathy! and proficiency

    in specific techniques of $nowledge acquisition are all required of a $nowledge

    engineer# Knowledge-acquisition techniques include conducting inter"iews with

    "arying degrees of structure! protocol analysis! oser"ation of experts at wor$! and

    analysis of cases#

    3n the other hand! the $nowledge engineer must also select a tool appropriate for

    the pro5ect and use it to represent the $nowledge with the application of the

    $nowledge acquisition facility#

    # User - A system de"eloped y an end user with a simple shell! is uilt rather

    quic$ly an inexpensi"ely# 8arger systems are uilt in an organi;ed de"elopment

    effort# A prototype-oriented iterati"e de"elopment strategy is commonly used# E(s

    lends themsel"es particularly well to prototyping#

    !NO/,E-0E AC1UISITION

  • 7/25/2019 Architecture of Expert System Unit 5

    8/24

    Knowledge Acquisition is concerned with the de"elopment of $nowledge ases

    ased on the expertise of a human expert# This requires to express $nowledge in a

    formalism suitale for automatic interpretation#

  • 7/25/2019 Architecture of Expert System Unit 5

    9/24

    their prolem sol"ing methods# 6ourth! the domain should e narrow and welldefined and solutions within the domain must not require common sense#

    Experts

    Although an E( $nowledge ase can e de"eloped from a range of sources such astextoo$s! manuals and simulation models! the $nowledge at the core of a wellde"eloped E( comes from human experts# Although multiple experts can e used!the ideal E( should e ased on the $nowledge of a single expert# In light of the

    pi"otal role of the expert! ca"eats for choosing a domain expert are not surprising#6irst! the expert should agree with the goals of the pro5ect# (econd! the expertshould e cooperati"e and easy to wor$ with# Third! good "eral communications$ills are needed# 6ourth! the expert must e willing and ale to ma$e the requiredtime commitment &there must also e adequate administrati"e>managerial support

    for this too'#

    !no"#ed$e Ac&uisition Tec)ni&ue

    At the heart of the process is the inter"iew# The heuristic model of the domain isusually extracted through a series of intense! systematic inter"iews! usuallyextending o"er a period of many months# =ote that this assumes the expert and the$nowledge engineer are not the same person# It is generally est that the expert andthe $nowledge engineer not e the same person since the deeper the experts/$nowledge! the less ale they are in descriing their logic# 6urthermore! in their

    efforts to descrie their procedures! experts tend to rationali;e their $nowledge andthis can e misleading#

    4eneral suggestions aout the $nowledge acquisition process are summari;ed inrough chronological order elow:

    +# 3ser"e the person sol"ing real prolems#

    9# Through discussions! identify the $inds of data! $nowledge and proceduresrequired to sol"e different types of prolems#

    # Build scenarios with the expert that can e associated with different prolemtypes#

    ?# 7a"e the expert sol"e a series of prolems "erally and as$ the rationaleehind each step#

  • 7/25/2019 Architecture of Expert System Unit 5

    10/24

    .# %e"elop rules ased on the inter"iews and sol"e the prolems with them#

    @# 7a"e the expert re"iew the rules and the general prolem sol"ing procedure#

    # )ompare the responses of outside experts to a set of scenarios otained from

    the pro5ect/s expert and the E(#

    =ote that most of these procedures require a close wor$ing relationship etweenthe $nowledge engineer and the expert#

    Pr(ctic(# Consider(tions

    The preceding section pro"ided an ideali;ed "ersion of how E( pro5ects might econducted# In most instances! the ao"e suggestions are considered and modifiedto suit the particular pro5ect# The remainder of this section will descrie a range of$nowledge acquisition techniques that ha"e een successfully used in thede"elopment of E(#

    Oper(tion(# 0o(#s

    After an e"aluation of the prolem domain shows that an E( solution is appropriateand feasile! then realistic goals for the pro5ect can e formulated# An E(/soperational goals should define exactly what le"el of expertise its final productshould e ale to deli"er! who the expected user is and how the product is to e

    deli"ered# If participants do not ha"e a shared concept of the pro5ect/s operationalgoals! $nowledge acquisition is hampered#

    Pre%tr(inin$

    1re-training the $nowledge engineer aout the domain can e important# In thepast! $nowledge engineers ha"e often een unfamiliar with the domain# As a result!the de"elopment process was greatly hindered# If a $nowledge engineer has limited$nowledge of the prolem domain! then pre-training in the domain is "eryimportant and can significantly oost the early de"elopment of the E(#

    !no"#ed$e -ocuent

    3nce de"elopment egins on the $nowledge ase! the process should e welldocumented# In addition to tutorial a document! a $nowledge document thatsuccinctly state the pro5ect/s current $nowledge ase should e $ept# )on"entionsshould e estalished for the document such as $eeping the rules in quasi-English

  • 7/25/2019 Architecture of Expert System Unit 5

    11/24

    format! using standard domain 5argon! gi"ing descripti"e names to the rules andincluding supplementary! explanatory clauses with each rule# The rules should egrouped into natural sudi"isions and the entire document should e $ept current#

    Scen(rios

    An early goal of $nowledge acquisition should e the de"elopment of a series ofwell de"eloped scenarios that fully descrie the $inds of procedures that the expertgoes through in arri"ing at different solutions# If reasonaly complete case studiesdo not exist! then one goal of pre-training should e to ecome so familiar with thedomain that the inter"iewer can compose realistic scenarios# Anecdotal stories thatcan e de"eloped into scenarios are especially useful ecause they are oftenexamples of unusual interactions at the edges of the domain# 6amiliarity withse"eral realistic scenarios can e essential to understanding the expert in early

    inter"iews and the $ey to structuring later inter"iews# 6inally! they are ultimatelynecessary for "alidation of the system#

    Inter.ie"s

    Experts are usually usy people and inter"iews held in the expert/s wor$

    en"ironment are li$ely to e interrupted# To maximi;e access to the expert and

    minimi;e interruptions it can e helpful to hold meetings away from the expert/s

    wor$place# Another possiility is to hold meetings after wor$ hours and on

    wee$ends# At least initially! audiotape recordings ought to e made of the

    inter"iews ecause often times notes ta$en during an inter"iew can e incomplete

    or suggest inconsistencies that can e clarified y listening to the tape# The

    $nowledge engineer should also e alert to fatigue and limit inter"iews

    accordingly#

    META RU,ES 2!NO/,E-0E3

    In designing an expert system! it is necessary to select the conflict

    resolutionmethod that will e used! and quite possily it will e necessary to

    usedifferent methods to resol"e different types of conflicts#

    6or example! in some situations it may ma$e most sense to use the method

  • 7/25/2019 Architecture of Expert System Unit 5

    12/24

    that in"ol"es firing the most recently added rules#

    This method ma$es most sense in situations in which the timeliness of data

    isimportant# It might e! for example! that as research in a particular field of

    medicine de"elops! and new rules are added to the system that contradicts

    some of the older rules#

    It might ma$e most sense for the system to assume that these newer rules are

    more accurate than the older rules#

    It might also e the case! howe"er! that the new rules ha"e een added y an

    expert whose opinion is less trusted than that of the expert who added the

    earlier rules#

    In this case! it clearly ma$es more sense to allow the earlier rules priority#

    This $ind of $nowledge is called meta $nowledge$nowledge aout

    $nowledge# The rules that define how conflict resolution will e used! and

    how other aspects of the system itself will run! are called meta rules# The $nowledge engineer who uilds the expert system is responsile for

    uilding appropriate meta $nowledge into the system &such as Cexpert A is

    toe trusted more than expert BD or Cany rule that in"ol"es drug is not to

    etrusted as much as rules that do not in"ol"e D'#

    *eta rules are treated y the expert system as if they were ordinary rules ut

    are gi"en greater priority than the normal rules that ma$e up the expert

    system#

    In this way! the meta rules are ale to o"erride the normal rules! if necessary!

    and are certainly ale to control the conflict resolution process#

  • 7/25/2019 Architecture of Expert System Unit 5

    13/24

    META HEURISTICS

    8ocal (earch and *etaheuristics

    8ocal search methods wor$ y starting from some initial configuration

    &usuallyrandom' and ma$ing small changes to the configuration until a state

    is reached fromwhich no etter state can e achie"ed#

    7ill climing is a good example of a local search technique#

    8ocal search techniques! used in this way! suffer from the same prolems as

    hillcliming and! in particular! are prone to finding local maxima that are not

    the estsolution possile#

    The methods used y local search techniques are $nown as metaheuristics#

    Examples of metaheuristics include simulated annealing! tau search!

    geneticalgorithms! ant colony optimi;ation! and neural networ$s#

    This $ind of search method is also $nown as local optimi;ation ecause it is

    attempting to optimi;e a set of "alues ut will often find local maxima rather

    than agloal maximum#

    A local search technique applied to the prolem of allocating teachers to

    classroomswould start from a random position and ma$e small changes until

    a configuration wasreached where no inappropriate allocations were made#

    TYPICA, EXPERT SYSTEMS

    MYCIN

  • 7/25/2019 Architecture of Expert System Unit 5

    14/24

    MYCINwas an early expert systemthat used artificial intelligenceto identify

    acteria causing se"ere infections! such as acteremia and meningitis! and to

    recommend antiiotics! with the dosage ad5usted for patient/s ody weight the

    name deri"ed from the antiiotics themsel"es! as many antiiotics ha"e the suffix

    0-mycin0# The *ycin system was also used for the diagnosis of lood clottingdiseases#

    *F)I= was de"eloped o"er fi"e or six years in the early +,Gs at (tanford

    Uni"ersity# It was written in 8ispas the doctoral dissertation of Edward

    (hortliffeunder the direction ofBruce 4# Buchanan! (tanley =# )ohenand others#

    It arose in the laoratory that had created the earlier %endralexpert system#

    *F)I= was ne"er actually used in practice ut research indicated that it proposed

    an acceptale therapy in aout @,H of cases! which was etter than the

    performance of infectious disease experts who were 5udged using the same criteria#

    Met)od

    *F)I= operated using a fairly simple inference engine! and a $nowledge ase of

    @GG rules# It would query the physician running the program "ia a long series of

    simple yes>no or textual questions# At the end! it pro"ided a list of possile culprit

    acteria ran$ed from high to low ased on the proaility of each diagnosis! its

    confidence in each diagnosis/ proaility! the reasoning ehind each diagnosis &that

    is! *F)I= would also list the questions and rules which led it to ran$ a diagnosis a

    particular way'! and its recommended course of drug treatment#

    %espite *F)I=/s success! it spar$ed deate aout the use of its ad hoc! ut

    principled! uncertainty framewor$ $nown as 0certainty factors0# The de"elopers

    performed studies showing that *F)I=/s performance was minimally affected y

    perturations in the uncertainty metrics associated with indi"idual rules! suggesting

    that the power in the system was related more to its $nowledge representation and

    reasoning scheme than to the details of its numerical uncertainty model# (ome

    oser"ers felt that it should ha"e een possile to use classical Bayesian statistics#

    https://en.wikipedia.org/wiki/Expert_systemhttps://en.wikipedia.org/wiki/Artificial_intelligencehttps://en.wikipedia.org/wiki/Antibiotichttps://en.wikipedia.org/wiki/Stanford_Universityhttps://en.wikipedia.org/wiki/Stanford_Universityhttps://en.wikipedia.org/wiki/Lisp_programming_languagehttps://en.wikipedia.org/wiki/Edward_Shortliffehttps://en.wikipedia.org/wiki/Edward_Shortliffehttps://en.wikipedia.org/w/index.php?title=Bruce_G._Buchanan&action=edit&redlink=1https://en.wikipedia.org/wiki/Stanley_N._Cohenhttps://en.wikipedia.org/wiki/Dendralhttps://en.wikipedia.org/wiki/Expert_systemhttps://en.wikipedia.org/wiki/Artificial_intelligencehttps://en.wikipedia.org/wiki/Antibiotichttps://en.wikipedia.org/wiki/Stanford_Universityhttps://en.wikipedia.org/wiki/Stanford_Universityhttps://en.wikipedia.org/wiki/Lisp_programming_languagehttps://en.wikipedia.org/wiki/Edward_Shortliffehttps://en.wikipedia.org/wiki/Edward_Shortliffehttps://en.wikipedia.org/w/index.php?title=Bruce_G._Buchanan&action=edit&redlink=1https://en.wikipedia.org/wiki/Stanley_N._Cohenhttps://en.wikipedia.org/wiki/Dendral
  • 7/25/2019 Architecture of Expert System Unit 5

    15/24

    *F)I=/s de"elopers argued that this would require either unrealistic assumptions

    of proailistic independence! or require the experts to pro"ide estimates for an

    unfeasily large numer of conditional proailities#(usequent studies later

    showed that the certainty factor model could indeed e interpreted in a

    proailistic sense! and highlighted prolems with the implied assumptions of such

    a model# 7owe"er the modular structure of the system would pro"e "ery

    successful! leading to the de"elopment of graphical models such as Bayesian

    networ$s#

    Resu#ts

    Jesearch conducted at the (tanford *edical (chool found *F)I= to propose an

    acceptale therapy in aout @,H of cases! which was etter than the performance

    of infectious disease experts who were 5udged using the same criteria# This study is

    often cited as showing the potential for disagreement aout thereapeutic decisions!

    e"en among experts! when there is no 0gold standard0 for correct treatment#?L

    Pr(ctic(# use

    *F)I= was ne"er actually used in practice# This wasn/t ecause of any wea$ness

    in its performance# As mentioned! in tests it outperformed memers of the (tanford

    medical school faculty# (ome oser"ers raised ethical and legal issues related to the

    use of computers in medicine if a program gi"es the wrong diagnosis or

    recommends the wrong therapy! who should e held responsileM 7owe"er! the

    greatest prolem! and the reason that *F)I= was not used in routine practice! was

    the state of technologies for system integration! especially at the time it was

    de"eloped# *F)I= was a stand-alonesystem that required a user to enter all

    rele"ant information aout a patient y typing in responses to questions *F)I=

    posed# The program ran on a large time-shared system! a"ailale o"er the early

  • 7/25/2019 Architecture of Expert System Unit 5

    16/24

    Internet &AJ1A=et'! efore personal computers were de"eloped# In the modern

    era! such a system would e integrated with medical record systems! would extract

    answers to questions from patient dataases! and would e much less dependent on

    physician entry of information# In the +,Gs! a session with *F)I= could easily

    consume G minutes or morean unrealistic time commitment for a usy

    clinician#

    *F)I=/s greatest influence was accordingly its demonstration of the power of its

    representation and reasoning approach# Jule-ased systems in many non-medical

    domains were de"eloped in the years that followed *F)I=/s introduction of the

    approach# In the +,Gs! expert system 0shells0 were introduced &including one

    ased on *F)I=! $nown as E-*F)I= &followed y KEE'' and supported the

    de"elopment of expert systems in a wide "ariety of application areas#

    A difficulty that rose to prominence during the de"elopment of *F)I= and

    susequent complex expert systems has een the extraction of the necessary

    $nowledge for the inference engine to use from the human expert in the rele"ant

    fields into the rule ase &the so-called 0$nowledge acquisition ottlenec$0'

    -ART

    Introduction

  • 7/25/2019 Architecture of Expert System Unit 5

    17/24

    The consultant identifies specific system components &oth hardware and software'

    li$ely to e responsile for an oser"ed fault and offers a rief explanation of the

    ma5or factors and e"idence supporting these indictments# The consultant! called

    %AJT ! was constructed using 7*F)I = and is part of a larger research effort

    in"estigating automated diagnosis of machine faults #

    1ro5ect *oti"ation and (cope of Effort A typical! large-scale computer installation

    is composed of numerous susystems including )1Us! primary and secondary

    storage! peripherals! and super"isory software# Each of these susystems! in turn!

    consists of a richly connected set of oth hardware and software components such

    as dis$ dri"es! controllers! )1Us! memory modules! and access methods#

    4enerally! each indi"idual component has an associated set of diagnostic aids

    designed to test its own specific integrity# 7owe"er! "ery few maintenance tools

    and estalished diagnostic strategics arc aimed at identifying faults on the system

    or susystem le"el#

    As a result! identification of single or multiple faults from systemic manifestations

    remains a difficult tas$# The non-specialist field ser"ice engineer is trained to use

    the existing component-specific tools and! as a result! is often unale to attac$ the

    the failure at the systemic le"el# Expert assistance is then required! increasing oth

    the time and cost required to determine and repair the fault# The design of %AJ T

    reflects the expert/s aility to ta$e a systemic "iewpoint on prolems and to use

    that "iewpoint to indict a specific components! thus ma$ing more effecti"e use of

    the existing maintenance capailities# 6or our initial design! we chose toconcentrate on prolems occurring within the teleprocessing &T1' susystems for

    the IB* G-class computers# This susystem includes "arious networ$

    controllers! terminals! remote-5o entry facilities! modems! and se"eral software

    access methods# In addition to these well-defined components there are numerous

  • 7/25/2019 Architecture of Expert System Unit 5

    18/24

    a"ailale test points the program can use during diagnosis#

  • 7/25/2019 Architecture of Expert System Unit 5

    19/24

    opportunity to select which of these implicated susystems are to e pursued and in

    which order# Each susystem ser"es as a focal point for tests and findings

    associated with that segment of the diagnostic acti"ity#

    These susystems currently correspond to "arious input>output facilities

    &e#g##%I(K#TA1E# T1' or the )1U-complex itself! lo r each selected susystem! the

    user is as$ed to identify one or more logical pathways which might e in"ol"ed in

    the situation# Kach of these logical pathways correspond to a line of

    communication etween a peripheral and an application program#

    3n the asis of this information and details of the asic composition of the

    networ$! the appropriate communications protocol can e selected# The user is also

    as$ed to indicate which diagnostic tools &e#g#! traces! dumps! logic proes' arc

    a"ailale for examining each logical pathway#

    3nce the logical pathway and protocol ha"e een determined! descriptions arc

    gathered of the often multiple physical pathways that actually implement the

    logical pathway! it is on this le"el that diagnostic test results arc presented and

    actual component indictments occur# 6or %AJ T to e useful at this le"el! the field

    engineer must e familiar with the diagnostic equipment and software testing and

    tracing facilities which can e requested! and! of course! must also ha"e access to

    information aout the specific system hardware and softwate configuration of the

    installation# 6inally! at the end of the consultation session! %AJT summari;es its

    findings and recommends additional tests and procedures to follow

    XOON

    The R4&internally called XCON! for eXpert CONfigurer' program was a

    production-rule-ased system written in 31(.y 2ohn 1# *c%ermottof )*Uin

    +, to assist in the ordering of %E)/s NAcomputer systems y automatically

    https://en.wikipedia.org/wiki/OPS5https://en.wikipedia.org/w/index.php?title=John_P._McDermott&action=edit&redlink=1https://en.wikipedia.org/wiki/Carnegie_Mellon_Universityhttps://en.wikipedia.org/wiki/Digital_Equipment_Corporationhttps://en.wikipedia.org/wiki/VAXhttps://en.wikipedia.org/wiki/OPS5https://en.wikipedia.org/w/index.php?title=John_P._McDermott&action=edit&redlink=1https://en.wikipedia.org/wiki/Carnegie_Mellon_Universityhttps://en.wikipedia.org/wiki/Digital_Equipment_Corporationhttps://en.wikipedia.org/wiki/VAX
  • 7/25/2019 Architecture of Expert System Unit 5

    20/24

    selecting the computer system components ased on the customer/s requirements#

    The de"elopment of )3= followed two pre"ious unsuccessful efforts to write an

    expert system for this tas$! in 63JTJA=and BA(I)#

    In de"eloping the system *c%ermott made use of experts from oth %E)/s1%1>++ and NA computer systems groups# These experts sometimes e"en

    disagreed amongst themsel"es as to an optimal configuration# The resultant

    0sorting it out0 had an additional enefit in terms of the quality of NA systems

    deli"ered#

    )3= first went into use in +,G in %E)/s plant in (alem! =ew 7ampshire# It

    e"entually had aout 9.GG rules# By +,@! it had processed G!GGG orders! and

    achie"ed ,.-,H accuracy# It was estimated to e sa"ing %E) O9.* a year y

    reducing the need to gi"e customers free components when technicians made

    errors! y speeding the assemly process! and y increasing customer satisfaction#

    Before )3=! when ordering a NA from %E)! e"ery cale! connection! and it

    of softwarehad to e ordered separately# &)omputers andperipheralswere not sold

    complete in oxes as they are today'# The sales people were not always "ery

    technically expert! so customers would find that they had hardware without the

    correct cales! printers without the correct dri"ers! a processor without the correct

    language chip! and so on# This meant delays and caused a lot of customer

    dissatisfaction and resultant legal action# )3= interacted with the sales person!

    as$ing critical questions efore printing out a coherent and wor$ale systemspecification>order slip#

    )3=/s success led %E) to rewrite)3= as XSE,- a "ersion of )3=

    intended for use y %E)/s salesforce to aid a customer in properly configuring

    their NA &so they wouldn/t! say! choose a computer too large to fit through their

    doorway or choose too few cainets for the components to fit in'# 8ocation

    prolems and configuration were handled y yet another expert system! XSITE#

    *c%ermott/s +,G paper on J+ won the AAAI)lassic 1aper Award in +,,,#8egendarily! the name of J+ comes from *c%ermott! who supposedly said as he

    was writing it! 0Three years ago I couldn/t spell $nowledge engineer! now I are

    one#0

    THE EXPERT SYSTEM SHE,,S

    https://en.wikipedia.org/wiki/FORTRANhttps://en.wikipedia.org/wiki/BASIChttps://en.wikipedia.org/wiki/Salem,_New_Hampshirehttps://en.wikipedia.org/wiki/Softwarehttps://en.wikipedia.org/wiki/Peripheralshttps://en.wikipedia.org/wiki/Rewrite_(programming)https://en.wikipedia.org/wiki/American_Association_for_Artificial_Intelligencehttps://en.wikipedia.org/wiki/FORTRANhttps://en.wikipedia.org/wiki/BASIChttps://en.wikipedia.org/wiki/Salem,_New_Hampshirehttps://en.wikipedia.org/wiki/Softwarehttps://en.wikipedia.org/wiki/Peripheralshttps://en.wikipedia.org/wiki/Rewrite_(programming)https://en.wikipedia.org/wiki/American_Association_for_Artificial_Intelligence
  • 7/25/2019 Architecture of Expert System Unit 5

    21/24

    The parts of the expert system that do not contain domain-specific or case-specific

    information are contained within the expert system shell# This shell is a general

    tool$it that can e used to uild a numer of different expert systems! depending

    on which $nowledge ase is added to the shell# An example of such a shell is

    )8I1( &) 8anguage Integrated 1roduction (ystem'# 3ther examples in common

    use include 31(.! AJT! 2E((! and Eclipse#

    )8I1( &) 8anguage Integrated 1roduction (ystem'

    )8I1( is a freely a"ailale expert system shell that has een implemented in )#

    It pro"ides a language for expressing rules and mainly uses forward chaining to

    deri"econclusions from a set of facts and rules#

    The notation used y )8I1( is "ery similar to that used y 8I(1#

    The following is an example of a rule specified using )8I1(:

    &defrule irthday

    &firstname Mr+ 2ohn'

    &surname Mr+ (mith'

    &haircolor Mr+ Jed'

    PQ

    &assert &is-oss Mr+'''

    Mr+ is used to represent a "ariale! which in this case is a person#

    Assert is used to add facts to the dataase! and in this case the rule is used to draw

    aconclusion from three facts aout the person:

    If the person has the first name 2ohn! has the surname (mith! and has red hair! thenheis the oss#

    This can e tried in the following way:

    &assert &firstname x 2ohn''

  • 7/25/2019 Architecture of Expert System Unit 5

    22/24

    &assert &surname x (mith''

    &assert &haircolor x Jed''

    &run'

    At this point! the command &facts' can e entered to see the facts that are contained

    in

    the dataase:

    )8I1(Q &facts'

    f-G &firstname x 2ohn'

    f-+ &surname x (mith'f-9 &haircolor x Jed'

    f- &is-oss x'

    (o )8I1( has ta$en the three facts that were entered into the system and used the

    ruleto draw a conclusion! which is that x is the oss# Although this is a simple

    example! )8I1(! li$e other expert system shells! can eused to uild extremely

    sophisticated and powerful tools#6or example! *F)I= is a well-$nown medical

    expert system that was de"eloped at(tanford Uni"ersity in +,?#

    *F)I= was designed to assist doctors to prescrie antimicroial drugs for lood

    infections#In this way! experts in antimicroial drugs are ale to pro"ide their

    expertise to otherdoctors who are not so expert in that field# By as$ing the doctor a

    series of questions!*F)I= is ale to recommend a course of treatment for the

    patient# Importantly! *F)I= is also ale to explain to the doctor which rules fired

    andtherefore is ale to explain why it produced the diagnosis and recommended

    treatmentthat it did#

    *F)I= has pro"ed successful: for example! it has een pro"en to e ale to

    pro"idemore accurate diagnoses of meningitis in patients than most

    doctors#*F)I= was de"eloped using 8I(1! and its rules are expressed as 8I(1

    expressions#

  • 7/25/2019 Architecture of Expert System Unit 5

    23/24

    The following is an example of the $ind of rule used y *F)I=! translated into

    English:

    I6 the infection is primary-acteria

    A=% the site of the culture is one of the sterile sites

    A=% the suspected portal of entry is the gastrointestinal tract

    T7E= there is suggesti"e e"idence &G#' that infection is acteroid

    The following is a "ery simple example of a )8I1( session where rules are

    defined tooperate an ele"ator:

    )8I1(Q &defrule rule+&ele"ator MfloorRnow'

    &utton MfloorRnow'

    PQ

    &assert &openRdoor'''

    )8I1(Q &defrule rule9

    &ele"ator MfloorRnow'

    &utton MotherRfloor'

    PQ

    &assert &goto MotherRfloor'''

    )8I1(Q &assert &ele"ator floor+''

    PPQ f-G &ele"ator floor+'

    S6act-GQ

    )8I1(Q &assert &utton floor''

    PPQ f-+ &utton floor'

  • 7/25/2019 Architecture of Expert System Unit 5

    24/24

    S6act-+Q

    S)8I1(Q &run'

    PPQf-9 &goto floor'

    The segments in old are inputs y the $nowledge engineer! and the plain

    textsections are )8I1(#

    =ote that MfloorRnow is an example of a "ariale within )8I1(! which means

    Thatany o5ect can match it for the rule to trigger and fire#

    In our example! the first rule simply says: If the ele"ator is on a floor! and the

    uttonis pressed on the same floor! then open the door#

    The second rule says: If the ele"ator is on one floor! and the utton is pressed on a

    different floor! then go to that floor#

    After the rules! two facts are inserted into the dataase# The first fact says that the

    ele"ator is on floor +! and the second fact says that the utton has een pressed on

    floor #