Expert System : Artificial Intelligence


Expert  System  Artificial Intelligence
Introduction
Expert  System  
  • An  expert  system,  is  an  interactive  computer-based  decision  tool  that uses both facts and heuristics to solve difficult decision making problems, based on knowledge acquired from an expert. 
  • An  expert  system  is  a  model  and  associated  procedure  that  exhibits, within a specific domain, a degree of expertise in problem solving that is comparable to that of a human expert. 
  • An expert system  compared with traditional computer : Inference engine +   Knowledge  =  Expert system.( Algorithm +  Data structures = Program in traditional computer )
  • First expert system, called DENDRAL, was developed in the early 70's

AI - Expert system 
Introduction 
Expert    systems    are    computer    applications    which    embody    some non-algorithmic   expertise   for   solving   certain   types   of   problems.   For example, expert systems are used in diagnostic applications. They also play chess,   make   financial   planning   decisions,   configure   computers,   monitor real   time   systems,   underwrite   insurance   policies,   and   perform   many services  which  previously  required  human  expertise. 

Expert System Components And Human Interfaces 
Expert   systems   have   a   number   of   major   system   components   and interface with individuals who interact with the system in various roles. These are illustrated below. 

Components  and  Interfaces
Knowledge base :  A declarative representation of the expertise; often  in  IF THEN  rules ; 
Working storage :  The data which is specific to a problem being solved; 
Inference  engine  :    The  code  at  the  core  of  the  system  which derives recommendations from the knowledge base and problem-specific  data  in  working  storage; 
User interface :  The  code that controls the dialog between the user and  the  system. 

Roles  of  Individuals  who  interact  with  the  system 
Domain  expert  :    The  individuals  who  currently  are  experts  in solving  the  problems;  here  the  system  is  intended  to  solve; ‡  Knowledge engineer :  The  individual  who  encodes  the  expert's knowledge  in  a  declarative form that can be used by the expert system; 
User :  The individual who will be consulting with the system to get  advice  which  would  have been  provided  by  the  expert. 

Expert  System  Shells
Many   expert   systems   are   built   with   products   called   expert system  shells.    A  shell  is  a  piece  of  software  which  contains  the user interface, a format for declarative knowledge in the knowledge base, and an inference engine. The knowledge and system engineers uses  these  shells  in  making  expert  systems. 
Knowledge  engineer  :  uses  the  shell  to  build  a  system  for  a particular problem domain. 

System   engineer :   builds the   user   interface,   designs thedeclarative  format  of  the  knowledge  base,  and  implements  the inference engine. 
Depending  on  the  size  of  the  system,  the  knowledge  engineer  and the  system  engineer  might  be  the  same  person. 

Expert  System  Characteristics 
Expert   system   operates   as   an   interactive   system   that   responds   to questions, asks for clarifications, makes recommendations  and  generally aids  the  decision-making  process. 
Expert  systems  have many  Characteristics : 

Operates as an interactive system 
This means an expert system : 
Responds  to  questions 
Asks  for  clarifications 
Makes  recommendations 
 Aids  the  decision-making  process. 

Tools  have  ability  to sift (filter) knowledge 
Storage  and  retrieval  of  knowledge 
Mechanisms  to  expand  and  update  knowledge  base  on   a continuing  basis. 

Make logical inferences based on knowledge stored 
‡  Simple  reasoning  mechanisms  is  used 
‡  Knowledge  base  must  have  means  of  exploiting  the  knowledge stored,  else it is useless;  e.g.,  learning  all  the words  in  a  language, without  knowing  how  to  combine  those  words  to  form  a  meaningful sentence. 

Ability to Explain Reasoning
Remembers logical chain of reasoning;  therefore  user may ask for explanation of a recommendation factors considered in recommendation 
Enhances  user  confidence  in  recommendation  and  acceptance  of expert system 

Domain-Specific 
A particular system caters a narrow area of specialization; 
e.g., a medical  expert  system cannot be used to find faults in an  electrical  circuit. 
Quality  of  advice  offered  by  an  expert  system  is  dependent  on the  amount  of  knowledge  stored. 

Capability to assign Confidence Values 
Can deliver quantitative information 
Can interpret qualitatively derived values 
Can  address  imprecise  and  incomplete  data  through  assignment of  confidence  values. 

Applications
Best  suited  for  those  dealing  with  expert  heuristics  for  solving problems. 
Not a suitable choice for those  problems  that  can  be solved  using purely numerical techniques. 

Cost-Effective alternative to Human Expert 
Expert   systems   have   become   increasingly   popular   because   of their  specialization,  albeit  in a narrow field. 
Encoding and  storing the domain-specific knowledge is economic process  due  to  small  size. 
Specialists  in  many  areas  are  rare  and  the  cost  of  consulting them    is  high;  an  expert  system  of  those  areas  can  be  useful and  cost-effective  alternative  in  the  long run. 

Expert System Features 
The  features  which  commonly  exist  in expert systems are : ■Goal Driven Reasoning or Backward Chaining 
An   inference   technique   which   uses   IF-THEN   rules   to   repetitively break  a  goal  into  smaller  sub-goals  which  are  easier  to  prove; 

Coping with Uncertainty 
The  ability  of  the  system  to  reason  with  rules  and  data  which  are not  precisely  known; 

Data Driven Reasoning or Forward Chaining 
An   inference   technique   which   uses   IF-THEN   rules   to   deduce   a problem  solution  from  initial  data; 

Data Representation 
The way in which the problem specific data in the system is stored and  accessed; 

User Interface 
That  portion  of  the  code  which  creates  an  easy  to use  system; 

Explanations
The  ability  of  the  system  to  explain  the  reasoning  process  that  it used  to  reach  a  recommendation. 
Each of these features were discussed in detail in previous  lectures on AI. 
However for completion or easy to recall these are mentioned  briefly  here. 

Goal-Driven Reasoning
Goal-driven reasoning, or backward chaining, is an efficient way to solve problems.  The  algorithm  proceeds  from  the  desired  goal,  adding  new assertions  found. 

Data Rules
a = 1      if  a = 1 & b = 2  then  c = 3,  if  c = 3 then  d = 4,     d = 4 
b = 2 

The  knowledge  is  structured  in  rules  which  describe  how  each  of  the possibilities might be selected. 
The rule breaks the problem into sub-problems. 
Example : 
KB contains Rule set : 
Rule 1:   If  A  and  C Then     F
Rule 2:   If  A  and  E Then     G
Rule 3:   If  B Then     E
Rule 4:   If  G Then     D


Uncertainty
Often  the  Knowledge  is  imperfect  which  causes  uncertainty. 
To  work  in  the  real  world,  Expert  systems  must  be  able  to  deal  with uncertainty. 
one simple way is   to associate a numeric value with each piece of information  in  the system. the numeric value represents the certainty with which the information is  known. 
There  are  different  ways  in which  these numbers  can be defined, and how  they  are  combined  during  the  inference process. 

Data Driven Reasoning
The  data  driven  approach,  or  Forward  chaining,  uses  rules  similar  to those  used  for  backward  chaining.  However,  the  inference  process  is different.   The   system   keeps   track   of   the   current   state   of   problem solution and looks for rules which will move that state closer to a final solution.  The  Algorithm  proceeds  from  a  given  situation  to  a  desired goal,  adding  new  assertions  found. 

Data Rules Conclusion

a = 1      if  a = 1 & b = 2  then  c = 3,  if  c = 3 then  d = 4,     d = 4 
b = 2 

The  knowledge  is  structured  in  rules  which  describe  how  each  of  the possibilities   might   be   selected.   The   rule   breaks   the   problem   into sub-problems. 
Example : 
KB contains Rule set : 

Rule 1:   If  A and  C Then     F
Rule 2:   If  A and  E Then     G
Rule 3:   If  B Then     E
Rule 4:   If  G Then     D

Data  Representation
Expert  system  is  built  around  a  knowledge  base  module. knowledge  acquisition  is  transferring  knowledge  from  human  expert to computer. Knowledge representation is faithful representation of what the expert knows. 

No single knowledge representation system is optimal for all applications. 
The success of expert system depends on choosing knowledge encoding scheme  best  for  the kind of knowledge the system is based on. 
The   IF-THEN   rules,   Semantic   networks,   and   Frames      are   the   most commonly  used  representation schemes. 

User Interface
The acceptability of an expert system depends largely on the quality of the  user  interface. Scrolling dialog interface : It is easiest to implement  and  communicate with the user. 
Pop-up  menus,  windows,  mice  are  more  advanced  interfaces  and powerful  tools for communicating with the user;  they require graphics support. 

Explanations
An   important   features   of   expert   systems   is   their   ability   to   explain themselves. 
Given   that   the   system   knows   which   rules   were   used   during   the inference  process,  the  system  can  provide    those    rules  to    the  user as  means  for  explaining  the  results. 
By looking at explanations, the knowledge engineer can see how the system is behaving, and how the rules and data are interacting. 
This  is  very  valuable  diagnostic  tool  during  development. 

Knowledge  Acquisition 
Knowledge acquisition  includes  the  elicitation,  collection,  analysis,  modeling and  validation  of  knowledge. 

Issues in Knowledge Acquisition 
The  important  issues  in  knowledge  acquisition  are: ■   knowledge is in the head of experts 
Experts have vast amounts of knowledge 
Experts have a lot of tacit knowledge 
They do not  know  all  that  they  know  and  use 
Tacit  knowledge  is  hard (impossible)  to  describe  ■   Experts are very busy and valuable people 
One expert does not know everything 
Knowledge has a "shelf life" 

Techniques for Knowledge Acquisition 
The  techniques  for  acquiring,  analyzing  and  modeling  knowledge  are : Protocol-generation  techniques,  Protocol  analysis  techniques,  Hierarchygeneration   techniques,   Matrix-based   techniques,   Sorting   techniques, Limited-information   and   constrained-processing   tasks,   Diagram-based techniques. Each of these are briefly stated  in next few slides. 

Protocol-generation techniques 
Include   many   types   of   interviews (unstructured,   semi-structured 
and structured),  reporting  and  observational  techniques. 

Protocol analysis techniques 
Used   with   transcripts   of   interviews   or   text-based   information   to 
identify  basic  knowledge  objects  within  a  protocol,  such  as  goals, 
decisions, relationships and attributes. These act as a bridge between 
the   use   of   protocol-based   techniques   and   knowledge   modeling 
techniques. 

Hierarchy-generation techniques 
Involve creation, reviewing and modification of hierarchical knowledge. Hierarchy-generation   techniques,   such   as   laddering,   are   used   to build taxonomies  or  other hierarchical structures such as goal trees and decision networks. The Ladders are of various forms like concept ladder, attribute ladder, composition ladders. 

Matrix-based techniques 
Involve  the  construction  and  filling-in  a 2-D  matrix  (grid,  table), 
indicating such things, as may be,  for example,  between concepts and  properties (attributes and values) or between problems and solutions or between tasks and resources, etc. The elements within the matrix can contain: symbols (ticks, crosses, question marks ) , colors , numbers , text. 

Sorting techniques
Used for capturing the way people compare and order concepts;  it may reveal knowledge about classes, properties and priorities. 

Limited-information and constrained-processing tasks 
Techniques  that  either limit  the time and/or information available to the expert when performing tasks. For example, a twenty-questions technique provides an efficient way of accessing  the  key information in a domain in a prioritized order. 

Diagram-based techniques 
Include generation and use of concept maps, state transition networks, event    diagrams    and    process    maps.    These    are    particularly important  in  capturing  the "what, how, when, who and  why" of tasks  and  events. 

Knowledge Base  (Representing and Using Domain Knowledge) 
Expert system  is  built  around  a  knowledge  base  module. Expert system 
contains a formal representation of the information provided   by the domain 
expert. This  information  may  be  in the form of  problem-solving rules, 
procedures, or data intrinsic to the domain. To incorporate these information into 
the   system,   it   is   necessary   to   make   use   of   one   or   more   knowledge 
representation  methods. Some of these methods are described here. 
Transferring  knowledge  from  the  human  expert  to  a  computer  is  often  the most  difficult  part  of building  an  expert  system. 
The knowledge acquired from the human expert must be encoded in such a way that it remains a faithful representation of what the expert knows, and it can be manipulated by a computer. 
Three common methods of knowledge representation evolved over the years are   IF-THEN rules,  Semantic networks  and  Frames. 
The   first   two   methods   were   illustrated   in   the   earlier   lecture   slides   on knowledge representation therefore just mentioned here.  The frame  based representation  is  described  more. 

 Working  Memory 
Working  memory  refers  to  task-specific  data  for  a  problem.  The  contents 
of the working memory, changes with each problem situation. Consequently, 
it is the most dynamic component of an expert system, assuming that it is 
kept  current. 

Every problem in a domain has  some  unique  data  associated  with  it. 
Data  may  consist  of  the  set  of  conditions  leading  to  the  problem, its  parameters  and  so on. 
Data  specific  to  the  problem  needs  to  be  input  by  the  user  at  the time of using,  means  consulting  the expert system. The Working memory is  related  to  user  interface 
Fig.   below   shows   how   Working   memory   is   closely   related   to   user interface of the expert system. 

Inference Engine 
The inference engine is  a  generic control mechanism for navigating through and manipulating knowledge  and  deduce  results  in  an  organized  manner. The   inference   engine's   generic   control   mechanism   applies   the   axiomatic (self-evident)  knowledge  present  in  the  knowledge  base  to  the  task-specific data  to  arrive  at  some  conclusion. 
Inference engine  the  other  key  component  of  all  expert  systems. 
Just a knowledge base alone is not of much use if there are no facilities for   navigating   through   and   manipulating   the   knowledge   to   deduce something from knowledge base. 
A   knowledge   base   is   usually   very   large,   it   is   necessary   to   have inferencing  mechanisms  that  search  through  the  database  and  deduce results  in  an  organized  manner. 
The   Forward   chaining,   Backward   chaining   and   Tree   searches   are   some 
of  the  techniques  used  for  drawing  inferences  from  the  knowledge base. 
These techniques were talked in the earlier lectures on Problem Solving : Search and  Control  Strategies,  and  Knowledge  Representation.  However  they  are relooked in the context of expert system. 

Shells 
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 perceived utility of an Expert system. 

Application 

  • Financial Decision Making 

The   financial   services   are   the   vigorous   user   of   expert   system 
techniques.   Advisory   programs   have   been   created   to   assist   bankers 
in determining    whether    to    make    loans    to    businesses    and 
individuals.   Insurance   companies   to   assess   the   risk   presented   by 
the customer and to determine a price for the insurance. ES are used in 
typical applications  in the financial markets / foreign exchange trading. 


  • Knowledge Publishing 

This   is   relatively  new,  but  also  potentially  explosive  area.  Here  the 
primary   function   of   the   Expert   system   is   to   deliver   knowledge   that 
is   relevant   to   the   user's   problem.   The   two   most   widely   known 
Expert   systems   are :   one,   an   advisor  on   appropriate   grammatical 
usage  in  a  text;    and    the  other,  is  a  tax  advisor  on  tax  strategy, tactics,  and  individual  tax  policy. 


  • Process Monitoring and Control 

Here   Expert   system   does   analysis   of   real-time   data   from   physical 
devices,  looking  for  anomalies,  predicting  trends,  controlling  optimality 
and   failure   correction.   Examples   of   real-time   systems   that   actively 
monitor processes are found in the steel making and oil refining industries. 


  • Design and Manufacturing 

Here   the   Expert   systems   assist   in   the   design   of   physical   devices 
and  processes,  ranging  from  high-level  conceptual  design  of  abstract 
entities   all   the   way   to   factory   floor   configuration   of   manufacturing 
processes. 

No comments:

Post a Comment

leave your opinion