Lecture5 Expert Systems And Artificial Intelligence


Published on

Published in: Technology, Education
No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide

Lecture5 Expert Systems And Artificial Intelligence

  1. 1. Expert Systems and Artificial Intelligence Modified from Marakas 2003 Reading: Chapter 7 “ the expert is the one who has made the most mistakes in the domain of interest”
  2. 2. The Concept of Expertise <ul><li>Expertise: extensive knowledge in a narrow field </li></ul><ul><ul><li>Gained by making mistakes </li></ul></ul><ul><ul><li>Arrive at solutions through logic </li></ul></ul><ul><ul><li>Logic establishes the True/Falsity of assertions </li></ul></ul><ul><ul><li>IF-THEN to arrive at conclusions </li></ul></ul><ul><ul><li>Derive new information from existing to arrive at conclusions </li></ul></ul><ul><ul><li>Deductions and inference are used to establish how well facts “fit” a scenario </li></ul></ul><ul><ul><li>Experts use this “information fit” to arrive at their decisions </li></ul></ul>
  3. 3. Example of “information fit” <ul><li>Known information </li></ul><ul><ul><li>John is Sam’s son </li></ul></ul><ul><ul><li>John is the eldest child </li></ul></ul><ul><ul><li>Mary is Sam’s daughter </li></ul></ul><ul><ul><li>John and Mary’s mother is called Anna </li></ul></ul><ul><ul><li>Sam has been married to Anna for 50 years </li></ul></ul><ul><li>Derived information </li></ul><ul><ul><li>If John is Sam’s son, THEN John must be a boy </li></ul></ul><ul><ul><li>If Sam and Anna have been married for 50 years, THEN John and Mary are their children by either birth or adoption </li></ul></ul>
  4. 4. Expert Sytems & Artificial Intelligence <ul><li>Expert systems: a computer application that employs a set of rules based on human knowledge to solve problems that require human expertise </li></ul><ul><ul><li>Imitates reasoning of experts on “information fit” </li></ul></ul><ul><ul><li>A non-expert simulates a dialog with an expert to solve complex problems </li></ul></ul><ul><li>Artificial Intelligence: practical mechanisms that enable computers to simulate the human reasoning process </li></ul><ul><ul><li>Interface of compute science/cognitive psychology </li></ul></ul><ul><ul><li>“ the study of how to make computers do things which humans do better” – the Turing Test? </li></ul></ul>
  5. 5. The Intelligence of Artificial Intelligence <ul><li>How do people reason? (the realm of cog. psych.) </li></ul><ul><ul><li>Categorization </li></ul></ul><ul><ul><ul><li>Can reason at levels of abstraction </li></ul></ul></ul><ul><ul><ul><li>Rules derived from relationships among categories </li></ul></ul></ul><ul><ul><li>Specific Rules </li></ul></ul><ul><ul><li>Heuristics </li></ul></ul><ul><ul><ul><li>Less rigorous rules of thumb </li></ul></ul></ul><ul><ul><li>Past Experience </li></ul></ul><ul><ul><ul><li>Use a similar scenario to model new one (benefit of 20/20 hindsight) </li></ul></ul></ul><ul><ul><li>Expectations </li></ul></ul><ul><ul><ul><li>Frequency, pattern recognition </li></ul></ul></ul>So can computers simulate these processes of reasoning? car bike personal Motor bike commercial Land transport bus taxi
  6. 6. How Do Computers Reason? <ul><li>Rule-based reasoning: IF-THEN statements represent knowledge encoded as rules </li></ul><ul><ul><li>If TRUE rule is “instantiated”, otherwise ignored </li></ul></ul><ul><li>Pattern recognition: detecting sounds, shapes or long sequences </li></ul><ul><ul><li>Analogous to “Expectation”, similar conditions </li></ul></ul><ul><li>Frames: Object-oriented approach of creating hierarchical data structures analogous to “categorisation” – databasey!! </li></ul><ul><li>Case-based reasoning: adapting previous solutions to a current problem </li></ul>
  7. 7. Types of IF……… Then <ul><li>Inferential </li></ul><ul><ul><li>If premise THEN conclusion </li></ul></ul><ul><ul><li>If snowing THEN drive with caution </li></ul></ul><ul><li>Procedural </li></ul><ul><ul><li>If situation THEN action </li></ul></ul><ul><ul><li>If Average grade =A THEN award 1 st class degree </li></ul></ul><ul><li>Declarative </li></ul><ul><ul><li>If Antecedent THEN consequent </li></ul></ul><ul><ul><li>If student has mitigating circumstances THEN award ‘incomplete’ grade </li></ul></ul>
  8. 8. The CBR Cycle
  9. 9. Other Forms of AI <ul><li>Machine learning – neural networks and genetic algorithms (“learning” mechanisms) </li></ul><ul><li>Automatic programming – mechanisms that generate a program to do a specific task (allows non-programmers to “program”) </li></ul><ul><ul><li>User describes inputs and generates a program </li></ul></ul><ul><li>Artificial life – attempts to recreate biological phenomena within computer-based systems </li></ul><ul><ul><li>As opposed to dissecting frogs! </li></ul></ul><ul><ul><li>Transfer to design of engineering projects (software, spacecraft, robotics etc) </li></ul></ul>
  10. 10. Neural Network Train it? – supervised Or just let it get on with it? - unsupervised
  11. 11. Genetic Algorithm mutation crossover Used in scheduling (timetabling?), design, marketing
  12. 12. The Concept and Structure of Expert Systems <ul><li>Basic structure of an ES follows the generic structure of a DSS </li></ul><ul><ul><li>User interface, Knowledge base, inference engine </li></ul></ul><ul><li>The knowledge base is specific to a particular problem domain associated with the ES </li></ul><ul><li>The main difference between an ES and DSS is that the ES contains knowledge acquired from experts in the application domain </li></ul>
  13. 13. Common Expert System Architecture User Knowledge Engineer User Interface Inference Engine Knowledge Base User Environment KE Tool Kit KE Interface Development Environment Organization Systems Interface
  14. 14. The User Interface in an ES <ul><li>Design of the UI focuses on human concerns such as ease of use, reliability and reduction of fatigue </li></ul><ul><ul><li>Critical to its success </li></ul></ul><ul><ul><li>Balance with storage capacity / hardware constraints </li></ul></ul><ul><li>Design should allow for a variety of methods of interaction (input, control and query) </li></ul><ul><li>UI should allow for a variety of interactive mechanisms: </li></ul><ul><ul><li>touch screen, keypad, light pens, voice command, hot keys </li></ul></ul>
  15. 15. The Knowledge Base – the “Brains” <ul><li>Contains the domain-specific knowledge acquired from the domain experts </li></ul><ul><li>Can consist of object descriptions, problem-solving behaviors, constraints, heuristics and uncertainties </li></ul><ul><li>The success of an ES relies on the completeness and accuracy of its knowledge base </li></ul><ul><ul><li>Distinguish a database (data facts) from a knowledge base (experts’ rules, cases, etc) </li></ul></ul>
  16. 16. The Inference Engine – “the brawn”! <ul><li>Here, the knowledge is put to use to produce solutions </li></ul><ul><li>The engine is capable of performing deduction or inference based on rules or facts </li></ul><ul><li>Also capable of using inexact or fuzzy reasoning based on probability or pattern matching </li></ul><ul><li>Cycle consists of: </li></ul><ul><ul><li>Match rules with given facts </li></ul></ul><ul><ul><li>Select the rule that is to be executed </li></ul></ul><ul><ul><li>Execute the rule by adding the deduced fact to the working memory </li></ul></ul>
  17. 17. Chaining <ul><li>Simple methods used by most inference engines to produce a line of reasoning </li></ul><ul><li>Two methods are possible depending on the direction of reasoning </li></ul><ul><li>Forward chaining: the engine begins with the initial content of the workspace and proceeds toward a final conclusion </li></ul><ul><li>Backward chaining: the engine starts with a goal and finds knowledge to support that goal </li></ul>
  18. 18. Forward Chaining Example <ul><li>Suppose we have three rules: </li></ul><ul><li>R1: If A and B then D </li></ul><ul><li>R2: If B then C </li></ul><ul><li>R3: If C and D then E </li></ul><ul><li>If facts A and B are present, we infer D from R1 and infer C from R2. With D and C inferred, we now infer E from R3. </li></ul>
  19. 19. Backward Chaining Example <ul><li>The same three rules: </li></ul><ul><li>R1: If A and B then D </li></ul><ul><li>R2: If B then C </li></ul><ul><li>R3: If C and D then E </li></ul><ul><li>If E is known, then R3 implies C and D are true. R2 thus implies B is true (from C) and R1 implies A and B are true (from D). </li></ul>
  20. 20. Real Chaining Example <ul><li>Which method to choose? Backward or forward? </li></ul><ul><li>Situation </li></ul><ul><ul><li>You wish to fly from Warsaw to Glasgow but all direct flights are full </li></ul></ul><ul><li>Backward chain </li></ul><ul><ul><li>Check which cities flights arriving in Glasgow are from and keep going backwards </li></ul></ul><ul><li>Forward chaining </li></ul><ul><ul><li>Check destinations from Warsaw and then check their destinations until you find a flight going to Glasgow </li></ul></ul>
  21. 21. Expert Systems Shells <ul><li>Expert System Shells: generic systems that contain reasoning mechanisms but not the problem-specific knowledge </li></ul><ul><li>Early shells were cumbersome but still allowed the user to avoid having to completely program the system from scratch </li></ul><ul><li>Modern shells contain two primary modules: a rule set builder (to construct the initial knowledge base) and an inference engine (as the vehicle for arriving at conclusions) </li></ul>
  22. 22. Building an Expert System <ul><li>An early step is to identify the type of tasks </li></ul><ul><ul><li>Interpretation, predicting likely consequences </li></ul></ul><ul><ul><li>Diagnosis of faults, monitoring expected outcomes </li></ul></ul><ul><ul><li>User guidance </li></ul></ul><ul><li>Key awareness is to recognise opportunities </li></ul><ul><ul><li>E.g. to replace scarce expert resources </li></ul></ul><ul><ul><li>Provide an expert assistant </li></ul></ul><ul><ul><li>To free up experts onto other tasks </li></ul></ul><ul><ul><li>Look for activities where experts are: </li></ul></ul><ul><ul><ul><li>Overburdened </li></ul></ul></ul><ul><ul><ul><li>Undersupplied </li></ul></ul></ul><ul><ul><ul><li>Expensive </li></ul></ul></ul><ul><ul><ul><li>Unavailable </li></ul></ul></ul><ul><li>Candidates </li></ul><ul><ul><li>Diagnosis, prediction, control, evaluation, prescription of solution </li></ul></ul>
  23. 23. Pre-design Activities <ul><li>Another important step is choosing the experts who will contribute knowledge </li></ul><ul><ul><li>Involved throughout the development </li></ul></ul><ul><ul><li>Not be threatened, rather enhanced </li></ul></ul><ul><li>Development team should have a functional understanding of the knowledge domain </li></ul><ul><li>Unlike more general information systems design projects, the software tools and hardware platform are selected very early </li></ul>
  24. 24. Benefits of Expert Systems <ul><li>Increased timeliness in decision making </li></ul><ul><ul><li>ES available on a 24 hour service </li></ul></ul><ul><li>Increased productivity of experts </li></ul><ul><ul><li>By taking some of the lesser important decisions </li></ul></ul><ul><ul><li>Replication at many sites </li></ul></ul><ul><li>Improved consistency in decisions </li></ul><ul><ul><li>Eliminates cognitive bias/limitation, memory loss </li></ul></ul><ul><li>Improved understanding and explanation </li></ul><ul><li>Improved management of uncertainty </li></ul><ul><ul><li>Fuzzy logic – e.g. how tall is tall? </li></ul></ul><ul><li>Formalization of knowledge within organisation </li></ul><ul><ul><li>And little amnesia! – knowledge is codified. </li></ul></ul>
  25. 25. Limitations Associated With ES’s <ul><li>How do you code common sense? </li></ul><ul><li>expertise is difficult to extract and encode. </li></ul><ul><li>Expert “errors” transferred to model </li></ul><ul><li>Another is that human experts adapt naturally but an ES must be recoded. </li></ul><ul><li>human experts better recognize when a problem is outside the knowledge domain, but an ES may just keep working </li></ul><ul><li>ES’s can’t eliminate the cognitive limitations of the user </li></ul><ul><li>An ES is functional only in a narrow domain </li></ul>
  26. 26. Key Point Summary <ul><li>The Concept of Expertise </li></ul><ul><li>Use of logic </li></ul><ul><li>Methods of human reasoning </li></ul><ul><ul><li>Categorisation etc </li></ul></ul><ul><li>AI methods of mimicking human reasoning </li></ul><ul><ul><li>Case-based reasoning, pattern recognition etc </li></ul></ul><ul><li>ES architecture </li></ul><ul><ul><li>User interface, Knowledge base, inferencing </li></ul></ul><ul><li>Designing and building ES’s </li></ul><ul><li>Benefits and problems with ES’s </li></ul>
  27. 27. Area of Research for Coursework <ul><li>Case Based Reasoning </li></ul><ul><ul><li>http://en.wikipedia.org/wiki/Case_based_reasoning </li></ul></ul><ul><li>Neural Networks </li></ul><ul><ul><li>http://www.cs.stir.ac.uk/~lss/NNIntro/InvSlides.html </li></ul></ul><ul><li>Genetic Algorithms ( http://cs.felk.cvut.cz/~xobitko/ga) </li></ul><ul><li>Rule-based systems </li></ul><ul><ul><li>http://www.cee.hw.ac.uk/~alison/ai3notes/section2_4_4.html </li></ul></ul><ul><li>Pattern recognition </li></ul><ul><ul><li>http://cgm.cs.mcgill.ca/~godfried/teaching/pr-web.html </li></ul></ul><ul><li>Artificial life </li></ul><ul><ul><li>http://www.wisegeek.com/what-is-artificial-life.htm?referrer=adwords_campaign=artificiallife_ad=016171&_search_kw=what%20is%20artificial%20life </li></ul></ul><ul><li>Automatic programming </li></ul><ul><ul><li>http://www.cs.utexas.edu/users/novak/autop.html </li></ul></ul><ul><li>Fuzzy Logic </li></ul><ul><ul><li>http://www.seattlerobotics.org/encoder/mar98/fuz/flindex.html </li></ul></ul><ul><li>Data Mining – Adriaans and Zantinge (library) </li></ul><ul><li>Google found these with “What is …….?” queries </li></ul><ul><li>You might find better ones to get you going </li></ul>