Expert Systems - Get as PowerPoint

Document Sample
Expert Systems - Get as PowerPoint Powered By Docstoc
					                               Expert Systems

        •   expert system (or knowledge-based system): a program which
            encapsulates knowledge from some domain, normally obtained
            from a human expert in that domain
        •   components:
             – Knowledge base (KB): repository of rules, facts (productions)
             – working memory: (if forward chaining used)
             – inference engine: the deduction system used to infer results
               from user input and KB
             – user interface: interfaces with user
             – external control + monitoring: access external databases,
               control aircraft rudders,...

B. Ross Cosc 4f79                                                              1
                                Expert Systems

        •   Why use expert systems:
             – commercial viability: whereas there may be only a few experts
               whose time is expensive and rare, you can have many expert
             – expert systems can be used anywhere, anytime
             – expert systems can have more knowledge than experts
             – expert systems can explain their line of reasoning
             – commercially beneficial: the first commercial product of AI
        •   Weaknesses:
             – expert systems are as sound as their KB; errors in rules mean
               errors in diagnoses
             – automatic error correction, learning is difficult (although
               machine learning research may change this)
             – little common sense reasoning: “idiot savantes”

B. Ross Cosc 4f79                                                              2
                      Steps in expert system building

        •   expert system building is a software engineering task, but with a
            twist: knowledge base
             – KB will be continually refined, corrected, updated
        •   expert system design & implementation steps
             1. initial proposal - identification of problem, expert(s), benefits
             2. create a prototype
             3. knowledge engineering: interview expert for many weeks
             4. implement expert’s expertise in KB
             5. test expert system; go to 3 (let expert see results)
             6. put in production ; refine errors when found

B. Ross Cosc 4f79                                                                   3
                           Knowledge engineering

        •   Knowledge engineering: the extraction of knowledge from an
            expert, and encoding it into machine-inferrable form
        •   K.E. is the most difficult part of expert system implementation
             – the knowledge engineer must extract detailed info from an
               expert; but s/he is not expected to understand it
             – the expert relies on years of experience and intuition: asking
               them to deconstruct knowledge is difficult and frustrating
             – can also be political factors
        •   many strategies for knowledge engineering
             – multiple KE’s
             – multiple experts
             – watch expert in the field
             – continual expert feedback on expert system performance

B. Ross Cosc 4f79                                                               4

        •   Recall AND/OR trees: when you are asking why a particular action
            was performed at a node in the tree...
             – how questions: recite the children
             – why questions: recite the parent
             – repeated how or why: go down/up further in the tree
        •   thus backward chaining expert systems naturally support
             – can be done during inference: when user is asked for data,
                s/he can ask “why” and a reason is given
             – after expert advice is given, user can ask “how”, “why”, and
                even “why not” (ie. why did some rule fail)
             – a great tool for KB debugging!
        •   forward chaining: explanation not as structured; usually, rule ID’s
            are generated showing which rules fired; canned text possible too

B. Ross Cosc 4f79                                                                 5
                               Reactive systems

        •   Forward- and backward-chaining expert systems can be reactive:
            explicit actions can be carried out (in addition to, or instead of,
            ‘advice’ or diagnoses)
             – most common reactions: add a new fact, delete an existing
                fact from working memory
             – with forward chaining: since assertions in working memory
                will fire rules, you may need to delete some in order to stop a
                rule from firing, and thus moving the deduction forward
        •   one potential danger of forward-chaining systems: unstructured
            KB and inference
             – dump a load of rules and facts into KB, working memory
             – let the forward chaining execute until a solution obtained
             – but this permits ad hoc expert system design

B. Ross Cosc 4f79                                                                 6
                       Probabilistic expert systems
    •   Expertise is often intuitive, and facts can have ‘degrees’ of truth
    •   much research has been devoted to inventing new models of
        probabilistic deduction: eg. Certainty factors
         – fuzzy logic
         – statistical / Bayesian deduction
         – multi-valued logics: true, false, unknown
    •   typical rule: (eg). IF patient has a fever (CF 0.90)
                              patient’s forehead is blue (CF .75)
                           THEN illness is Cat Scratch Fever (CF .5)
    •   weakness: these certainty factors are not statistically sound
        values; rather “pulled out of the air” by expert or KE
         – CF’s are combined during deduction; multiple results can
         – how legitimate are they? “GIGO”

B. Ross Cosc 4f79                                                             7
                         Other expert system paradigms

        1. Neural nets & machine learning
            – neural net: network of linked nodes; threshold functions fire
            – examples of desired behaviour are obtained from expert, and
               converted to numeric vectors for a neural network
            – the network is trained with an example set; output values are
               refined until network gives desired behaviour
            – final system accepts general questions (converted to numeric
               values) and output reflects appropriate diagnoses
            – rules can be extracted from neural net as well
            – strengths:
                    • a ‘bottom-up’ approach to KB (vs. structured)
                    • perhaps human expertise is similarly acquired?
             – weaknesses:
                    • what the heck is going on in the net???

B. Ross Cosc 4f79                                                             8
                    Other expert systems paradigms

        2. Inductive inference & machine learning
             – rather than extract rules explicitly from expert, it’s easier to get
               table of example behaviours (like with neural nets)
             – inductive inference: generalizes from finite example set to
               whole domain
             – using ideas from information theory, a refined decision tree (if-
               then-else) is derived from examples
             – strengths:
                    • examples are intuitive (simplifies knowledge acquisition phase))
                    • can often find interesting patterns unknown by experts
                    • generates ‘traditional’ rule-based KB’s
             – weaknesses:
                    • example set must be representative
                    • noise can be bad

B. Ross Cosc 4f79                                                                        9
                             Examples expert systems

        •   1. Medical expert systems
             – medical expert systems are an active area
                    • humanitarian uses: remote areas can have world-class expertise,
                      eg. a laptop and CD ROM
                    • medical science is complex; expert systems are intelligent
                      advisors and assistants
             – MYCIN - diagnoses bacterial blood infections
                    • uses certainty factors: ranked diagnoses are generated
                    • EMYCIN: empty MYCIN - the “shell” of MYCIN for use in other
             – CADUCEUS:
                    • expert system with entire internal medicine KB: huge!
                    • it’s been active since 1970’s

B. Ross Cosc 4f79                                                                       10
                        Example expert systems

     2. XCON
            configures VAX systems from user requirements
          – DEC uses it; has increased throughput of system design
          – 10,000 rules
          – said to have replaced X system designers with 4X expert
            system maintainers!
     3. DELTA/CATS
          – diesel electric locomotive trouble shooter
          – problem: system maintenance
     4. Jonathan’s Wave
          – commodities trading
          – incorporates several expert’s approaches
          – runs in Prolog and C
          – lots of AI groups on Wall Street!

B. Ross Cosc 4f79                                                     11
                        Example expert systems
    5. Codecheck
        – expert system to evaluate C source code
        – complexity, formatting, standards and portability adherence
        – identifies overly complex code (prime source of program
    6. CHORAL
        – expert system for harmonizing chorales in the style of J.S.
        – similar system: harmonic analysis of tonal music
        – rules obtained from: studying composers music,
        – some systems used for composition (with interesting results)

B. Ross Cosc 4f79                                                        12
                             The state of the art

        •   Expert systems are now ubiquitous
        •   still lots of active research:
             – probabilistic knowledge and deduction
             – large system maintenance
             – knowledge acquisition
        •   popular domains
             – industrial, financial, medical
             – legal: interpret laws “by the book”
             – education: intelligent tutoring
        •   Some domains remain difficult to implement
             – those requiring ‘artistic’ creativity and skill
             – those requiring common sense: the idiot savante syndrome

B. Ross Cosc 4f79                                                         13

Shared By: