Presentation is loading. Please wait.

Presentation is loading. Please wait.

Expert Systems expert system (or knowledge-based system): a program which encapsulates knowledge from some domain, normally obtained from a human expert.

Similar presentations

Presentation on theme: "Expert Systems expert system (or knowledge-based system): a program which encapsulates knowledge from some domain, normally obtained from a human expert."— Presentation transcript:

1 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,...

2 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 systems 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”

3 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 (months) 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

4 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

5 Explanation 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 explanation 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

6 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

7 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 arise how legitimate are they? “GIGO”

8 Other expert system paradigms
1. Neural nets & machine learning neural net: network of linked nodes; threshold functions fire nodes 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???

9 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

10 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 applications CADUCEUS: expert system with entire internal medicine KB: huge! it’s been active since 1970’s

11 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!

12 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 problems!) 6. CHORAL expert system for harmonizing chorales in the style of J.S. Bach similar system: harmonic analysis of tonal music rules obtained from: studying composers music, musicologists some systems used for composition (with interesting results)

13 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

Download ppt "Expert Systems expert system (or knowledge-based system): a program which encapsulates knowledge from some domain, normally obtained from a human expert."

Similar presentations

Ads by Google