Presentation on theme: "BEE4333 Intelligent Control"— Presentation transcript:
1BEE4333 Intelligent Control Hamzah AhmadExt: 2055/2141
2EXPERT SYSTEM: What is it all about? Achievements :PO1, CO1, CO5, LO1Chapter 2EXPERT SYSTEM: What is it all about?
3Today contents and achievements 2.1 Knowledge representation techniqueLO1 : Able to understand the concept of expert systemAchievements:CO1
4Artificial Intelligence Early 1960’s problem for AI;Weak methods; general method to find solution to a problem (not efficient, weak performance)Too difficult and broad problem to solveRise needs for specialized problem solving techniquemimicking human expert behavior and decisionSince 1970’s, the AI is designed to adopt human expertise as a knowledge-based system.
5Rule-based expert systems: Contents Introduction, or what is knowledge?Rules as a knowledge representation techniqueThe main players in the development teamStructure of a rule-based expert systemCharacteristics of an expert systemForward chaining and backward chainingConflict resolutionSummary
6EXPERT SYSTEMS DEFINITION An Expert System (ES) is a computer-based system (mainly software) that uses knowledge and facts, and apply an appropriate reasoning technique (inferencing) to solve problems in a given field (domain) that normally require the services of human experts. Keyword: knowledge engineering, knowledge practitioner, knowledge-based system
7What is an Expert System… (Cont’d) A computer application that performs a task that would otherwise be performed by a human expert.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. – IgnizioAn expert system is a computer system which emulates the decision-making ability of a human expert.-Giarratono
8In other words..Expert System are computer programs which attempts to replicate knowledge and skills of humans expert in some area, and then attempt to solve problems in this area (the way human expert to do)Take root from cognitive science – the study of human mind using a combination of AI and psychologyComprises of two main parts;KnowledgeReasoning or inference
9A Human Experts Consider several examples: A medical doctorcarpenterEngineerA chefWhat is differences between above expertise? Can you say that one is more intelligent that another?
10Intelligent Vs Expertise Expertise and intelligence are not the same things (although they are related)Expertise requires long time to learnExpertise is a large amount of knowledge (in some domain)Expertise is easily recalledIntelligence allows you to use your expertise (apply the knowledge)Expertise enables you to find solution much faster
11BRIEF HISTORY Examples of the early and famous expert systems DENDRAL - Stanford Univ. (1965)Analysis of chemical compundsRule-based systemCADACEUS - Univ. of Pittsburgh (1970)Diagnosis of human internal diseasesMYCYSMA - MIT (1971)Symbolic mathematical analysis
12Brief History (Cont’d) MYCIN - Stanford Univ. (1972)Diagnosis and treatment of infectious blood diseasesRule-based systemEMYCIN - Stanford Univ. (1978)Evolved from (Empty) MycinFirst ES ShellXCON - DEC (1980)configures VAX computer systemFirst ES used commercially1943 Post, E.L proved that any computable problem can be solved using simple IF-THEN rules1962 General Problem Solver (GPS) by A.Newell and H.Simon
13Computer Vs Mind The whole is more than a sum of its parts Computer use pre-programmed algorithmsObviously, our mind do not work like computers: different people usually solve problems in their own ways, and you even may solve the same problem differently every timeEven if we begin to know how neural networks work, it is hard to scale up and understand how they form thoughtsSome scientists believe that cognition (or intelligence) is somewhat independent of the architectural implementation (i.e. not necessarily should use neural networks)
14What is knowledge?Knowledge is a theoretical or practical understanding of a subject or a domain. Knowledge is also the sum of what is currently known, and apparently knowledge is power. Those who possess knowledge are called experts.Anyone can be considered a domain expert if he or she has deep knowledge (of both facts and rules) and strong practical experience in a particular domain. The area of the domain may be limited. In general, an expert is a skilful person who can do things other people cannot.
15Rules as a knowledge representation technique The term rule in AI, which is the most commonly used type of knowledge representation, can be defined as an IF-THEN structure that relates given information or facts in the IF part to some action in the THEN part. A rule provides some description of how to solve a problem. Rules are relatively easy to create and understand.Any rule consists of two parts: the IF part, called the antecedent (premise or condition) and the THEN part called the consequent (conclusion or action).
16Simple Expert system architecture Provide a convenient and efﬁcient means for capturing and storing all components of the knowledge basestores all relevant information, data, rules, cases, and relationships used by the expert systemHow the expert system arrived at certain results
17IF <antecedent> THEN <consequent> A rule can have multiple antecedents joined by the keywords AND (conjunction), OR (disjunction) or a combination of both. IF <antecedent 1> AND <antecedent 2>IF <antecedent 1>OR <antecedent 2>AND <antecedent n> THEN <consequent>OR < antecedent n>THEN < consequent>
18The antecedent of a rule incorporates two parts: an object (linguistic object) and its value. The object and its value are linked by an operator.The operator identifies the object and assigns the value. Operators such as is, are, is not, are not are used to assign a symbolic value to a linguistic object.Expert systems can also use mathematical operators to define an object as numerical and assign it to the numerical value.IF ‘age of the customer’ < 18AND ‘cash withdrawal’ > 1000THEN ‘signature of the parent’ is required
19The human mental process is internal, and it is too complex to be represented as an algorithm. However, most experts are capable of expressing their knowledge in the form of rules for problem solving.IF the ‘traffic light’ is greenTHEN the action is goIF the ‘traffic light’ is redTHEN the action is stop
20Rules can represent relations, recommendations, directives, strategies and heuristics: Relation IF the ‘fuel tank’ is empty THEN the motorcycle cannot startRecommendation IF the season is autumn AND the sky is cloudy AND the forecast is drizzle THEN the advice is ‘take an umbrella’Directive IF the class is sleepy AND the class is not taking their breakfast THEN the action is ‘………………….’
21Strategy IF the car is dead THEN the action is ‘check the fuel tank’; step1 is complete IF step1 is complete AND the ‘fuel tank’ is full THEN the action is ‘check the battery’; step2 is completeHeuristic IF the spill is liquid AND the ‘spill pH’ < AND the ‘spill smell’ is vinegar THEN the ‘spill material’ is ‘acetic acid’
22Types of Expert System Ruled Based Expert System Frame-Based System Represented as a series of rulesFrame-Based SystemRepresentation of the object-oriented programming approachHybrid SystemInclude several knowledge representation approachModel-Based SystemStructured around the model that stimulates the structure and function of the system under studyReady-Made (Off-the-shelf) SystemCustom-made, similar to application package such as an accounting general ledger or project management in operation mgmt.
23Data -> Information -> Knowledge DATA- measurements or records about events. Can be numerical, alphabetical, images, sounds, etc.INFORMATION – analyzed and organized data such that we know its characteristicsKNOWLEDGE – information put into a specific context
24Levels of AbstractionData, Information and Knowledge can be classified by levels of abstraction and quantityKnowledge is the most abstract and exists in the smallest quantityKnowledge itself can have levels of abstraction : concrete (knowledge about the specific problem), domain specific (class of problems) and abstract (many classes of problems)HighknowledgeAbstractioninformationDatalow
25Knowledge Categories Symbolic, sub-symbolic & hybrid Symbolic – represented as discrete unit (explicit)-> expressed in formal languageSub-symbolic – cannot be represented by single symbols (implicit), -> stored in a form of informationHybrid -> systems involved both types of knowledge representation
26Knowledge Categories(cont..) Declarative & ProceduralDeclarative -> Knowledge are facts (objects, events) that we observe in the environment. Can describe current state of a probleme.g. : I' am a human or the sun shiningProcedural -> knowledge represents the skills or rules we use to operate with and reason using factse.g. : IF I' am a human THEN I have two legsApparently, there are separate areas in the human brain for storing declarative and procedural knowledgeRules (procedural) are usually harder to describe
27Basic Concept of ES Expertise Experts Transferring expertise Enable experts to make better and faster decisions than non-experts in solving complex problemExpertsDegrees or levels of expertise -> mimic human expertTransferring expertiseInvolves 4 activities -> knowledge acquisition, knowledge representation, knowledge inference and knowledge transfer to userInference rulesAbility to reason-> component called the inference engineRulesProblem solving procedure -> knowledge stored at databaseExplanation capabilityAbility to explain its advice or recommendations -> components/subsystem called justifier or explanation subsystem
28Fundamental Characteristic of an ES Narrow specialized domainHigh quality performanceRules of thumb or heuristicExplanation capabilityEmploy symbolic reasoningDo not follow a prescribed sequence of steps
29Characteristics of an expert system An expert system is built to perform at a human expert level in a narrow, specialised domain. Thus, the most important characteristic of an expert system is its high-quality performance. No matter how fast the system can solve a problem, the user will not be satisfied if the result is wrong.On the other hand, the speed of reaching a solution is very important. Even the most accurate decision or diagnosis may not be useful if it is too late to apply, for instance, in an emergency, when a patient dies or a nuclear power plant explodes.
30Expert systems apply heuristics to guide the reasoning and thus reduce the search area for a solution.A unique feature of an expert system is its explanation capability. It enables the expert system to review its own reasoning and explain its decisions.Expert systems employ symbolic reasoning when solving a problem. Symbols are used to represent different types of knowledge such as facts, concepts and rules.
31QUALIFYING CHARACTERISTICS OF EXPERT SYSTEMS ES are appropriate in domains when/where:there are no established theorieshuman expertise is scarce or in high demand, but recognized experts existthe information is fuzzy, inexact or incompletethe domain is highly specific
32QUALIFYING CHARACTERISTICS OF EXPERT SYSTEMS … Cont’d ES are not suitable when/where:applications are calculative or deterministic in naturea formula or model existshuman experts are plentifulnot integrable into existing systemsend users have to build the knowledge base
33Today Summary Introduction to Expert system Definition and conceptWhere to apply?Brief condition of rule based expert systemLO1 : Able to understand the concept of expert systemAchievements:CO1
34Today contents and achievements 2.2 Expert System development team2.3 Rule-based expert system structureLO1 : Able to understand the concept of expert systemLO2 : Able to understand the structure of expert system development teamAchievements:CO1
35Rule-based expert systems: Contents Introduction, or what is knowledge?Rules as a knowledge representation techniqueThe main players in the development teamStructure of a rule-based expert systemCharacteristics of an expert systemForward chaining and backward chainingConflict resolutionSummary
36Designing ESThe process of building ES is called Knowledge Engineering, consist of three stages :Knowledge acquisition : the process of getting the knowledge from expertsKnowledge representation : selecting the most appropriate structures to represent the knowledgeKnowledge validation :testing that the knowledge of ES is correct and complete
37The main players in the development team There are five members of the expert system development team: the domain expert, the knowledge engineer, the programmer, the project manager and the end-user.The success of their expert system entirely depends on how well the members work together.
38The main players in the development team Expert SystemEnd-userKnowledge EngineerProgrammerDomain ExpertProject ManagerDevelopment Team
39Domain expert Knowledge engineer knowledgeable and skilled person capable of solving problems in a specific area or domain.has the greatest expertise in a given domain. This expertise is to be captured in the expert system.Knowledge engineercapable of designing, building and testing an expert system.establishes what reasoning methods the expert uses to handle facts and rules and decides how to represent them in the expert system.chooses some development software or an expert system shell, or looks at programming languages for encoding the knowledge.responsible for testing, revising and integrating the expert system into the workplace.
40Programmer Project manager responsible for the actual programming, describing the domain knowledge in terms that a computer can understand.have skills in symbolic programming in such AI languages and also some experience in the application of different types of expert system shells.know conventional programming languages like C, Pascal, FORTRAN and Basic.Project managerleader of the expert system development team, responsible for keeping the project on track.makes sure that all deliverables and milestones are met, interacts with the expert, knowledge engineer, programmer and end-user.
41End-user(User) uses the expert system when it is developed. confident in the expert system performance but also feel comfortable using it.the user interface of the expert system is vital for the project’s success; the end-user’s contribution here can be crucial.
42Structure of a rule-based expert system In the early seventies, Newell and Simon from Carnegie-Mellon University proposed a production system model, the foundation of the modern rule- based expert systems.The production model is based on the idea that humans solve problems by applying their knowledge (expressed as production rules) to a given problem represented by problem-specific information.The production rules are stored in the long-term memory and the problem-specific information or facts in the short-term memory.
44Basic structure of a rule-based expert system FactRule: IF-THEN
45The knowledge base contains the domain knowledge useful for problem solving. In a rule- based expert system, the knowledge is represented as a set of rules.Each rule specifies a relation, recommendation, directive, strategy or heuristic and has the IF (condition) THEN (action) structure. When the condition part of a rule is satisfied, the rule is said to fire and the action part is executed.The database includes a set of facts used to match against the IF (condition) parts of rules stored in the knowledge base.
46The inference engine carries out the reasoning whereby the expert system reaches a solution. It links the rules given in the knowledge base with the facts provided in the database.The explanation facilities enable the user to ask the expert system how a particular conclusion is reached and why a specific fact is needed. An expert system must be able to explain its reasoning and justify its advice, analysis or conclusion.The user interface is the means of communication between a user seeking a solution to the problem and an expert system.
47Complete structure of a rule-based expert system
48Can expert systems make mistakes? Even a brilliant expert like a human make mistakes. This suggests that an expert system built to perform at a human expert level also should be allowed to make mistakes.If human make mistakes,Then machines are also allowed making mistakes (with accuracy)We still trust experts, even we recognise that their judgements are sometimes wrong.We relies to expert system with consideration of probability of mistake.
49In expert systems, knowledge is separated from its processing (the knowledge base and the inference engine are split up). A conventional program is a mixture of knowledge and the control structure to process this knowledge. This mixing leads to difficulties in understanding and reviewing the program code, as any change to the code affects both the knowledge and its processing.When an expert system shell is used, a knowledge engineer or an expert simply enters rules in the knowledge base. Each new rule adds some new knowledge and makes the expert system smarter.
50Characteristics of an expert system An expert system is built to perform at a human expert level in a narrow, specialised domain. Thus, the most important characteristic of an expert system is its high-quality performance. No matter how fast the system can solve a problem, the user will not be satisfied if the result is wrong.On the other hand, the speed of reaching a solution is very important. Even the most accurate decision or diagnosis may not be useful if it is too late to apply, for instance, in an emergency, when a patient dies or a nuclear power plant explodes.
51Expert systems apply heuristics to guide the reasoning and thus reduce the search area for a solution.A unique feature of an expert system is its explanation capability. It enables the expert system to review its own reasoning and explain its decisions.Expert systems employ symbolic reasoning when solving a problem. Symbols are used to represent different types of knowledge such as facts, concepts and rules.
52QUALIFYING CHARACTERISTICS OF EXPERT SYSTEMS ES are appropriate in domains when/where:there are no established theorieshuman expertise is scarce or in high demand, but recognized experts existthe information is fuzzy, inexact or incompletethe domain is highly specific
53QUALIFYING CHARACTERISTICS OF EXPERT SYSTEMS … Cont’d ES are not suitable when/where:applications are calculative or deterministic in naturea formula or model existshuman experts are plentifulnot integrable into existing systemsend users have to build the knowledge base
54Comparison of expert systems with conventional systems and human experts ProgramsUseknowledgeintheformofrulesthumborheuristicstosolveproblems in a narrowdomain.Processexpressed in the form ofrulesanduseymbolicreasoningproblemsrrowdo.dataanduselgorithms, aserieswell-definedoperations,generalnumericalproblems.In a human brain,existscompiledform.Provide acleapatiknowledgefromitprocssingDonotseparatefromcontrol structure toprocessthisknowledge.Capableexplainingline of reasoning andprovidingdetails.Tracrufiredduringproblem-solvingsessionexplaihoparticularconclusionwasreachedwhyspecificneeded.explainhowresultobtainedwhyinput
55Comparison of expert systems with conventional systems and human experts (Continued)
56Expert System Application areas Application areas include classification, diagnosis, monitoring, process control, design, scheduling and planning, and generation of options.Classification - identify an object based on stated characteristicsDiagnosis Systems - infer malfunction or disease from observable dataMonitoring - compare data from a continually observed system to prescribe behaviourProcess Control - control a physical process based on monitoringDesign - configure a system according to specificationsScheduling & Planning - develop or modify a plan of actionGeneration of Options - generate alternative solutions to a problem
57Examples of ESAli wants to go from KL to Sydney, Australia. His is member of the frequent flyer programme of MASDeparture: Return:Possible solutionSolutionFlight MH434 KLIA – Indonesia- Sydney H 40Flight MH121 KLIA – Singapore – Sydney H 45Flight MH101 KLIA – Sydney H 30Flight MH123 KLIA- New Zealand H 20Rule 1IF the local flight is done by a company THEN plan the international flight with this companyRule 2IF the customer is part of the frequent flyer programme of a company and if this company has a flight to the customer's destination THEN select a flight with this company.
59Discussion in GroupGiven the following fields, select an area that your group is most expert with.Industrial application/manufacturingRoboticsOil & gasTroubleshooting in Electrical & ElectronicsIdentify your problem domain and objectivesConstruct a flowchart to describe your system.The expert system must have at least 10 rules and 2 conclusion.
60Today contents and achievements 2.2 Expert System development team2.3 Rule-based expert system structureLO1 : Able to understand the concept of expert systemLO2 : Able to understand the structure of expert system development teamAchievements:CO1
61Last week contents and achievements 2.2 Expert System development team2.3 Rule-based expert system structure2.4 Expert system characteristicsLO1 : Able to understand the concept of expert systemLO2 : Able to understand the structure of expert system development teamAchievements:CO1
62Today contents and achievements 2.5 Forward and backward chaining2.6 Conflict resolutionLO1 : Able to determine the forward and backward chaining for a specific problemAchievements:CO1, CO5
63Forward chaining and backward chaining IFRule-based expert systemdomain knowledge is represented by a set of IF-THEN production rulesdata : a set of facts about the current situation.The inference engine compares each rule stored in the knowledge base with facts contained in the database.When the IF (condition) part of the rule matches a fact, the rule is fired and its THEN (action) part is executed.THENInference chainindicates how an expert system applies the rules to reach a conclusion.
64Data driven Forward Chaining Available Data Inference Rule MATCHING GOAL!
65Inference engine cycles via a match-fire procedure
68Forward chaining Forward chaining is the data-driven reasoning. The reasoning starts from the known data and proceeds forward with that data.Each time only the topmost rule is executed.When fired, the rule adds a new fact in the database.Any rule can be executed only once.The match-fire cycle stops when no further rules can be fired.
71Forward chaining is a technique for gathering information and then inferring from it whatever can be inferred.However, in forward chaining, many rules may be executed that have nothing to do with the established goal.Therefore, if our goal is to infer only one particular fact, the forward chaining inference technique would not be efficient.
72Backward chainingBackward chaining is the goal-driven reasoning. Characteristics;an expert system has the goal (a hypothetical solution) and the inference engine attempts to find the evidence to prove it.First, the knowledge base is explored to find rules that might have the desired solution. Such rules must have the goal in their THEN (action) parts.If such a rule is found and its IF (condition) part matches data in the database, then the rule is fired and the goal is proved.However, this is rarely the case.
73Backward chainingThus the inference engine puts aside the rule it is working with (the rule is said to stack) and sets up a new goal, a subgoal, to prove the IF part of this rule.Then the knowledge base is searched again for rules that can prove the subgoal.The inference engine repeats the process of stacking the rules until no rules are found in the knowledge base to prove the current subgoal.
76How do we choose between forward and backward chaining? If an expert first needs to gather some information and then tries to infer from it whatever can be inferred, choose the forward chaining inference engine.However, if your expert begins with a hypothetical solution and then attempts to find facts to prove it, choose the backward chaining inference engine.
77So how to choose between methods? More condition than conlusion?Facts leads to many facts?Identify ruleLook to the problemDetermine factsForwardChainingBackwardChainingFinding where information leadsFinding if one conclusion is true when no informationLook into working knowledge/facts
78Conflict resolutionEarlier we considered two simple rules for crossing a road. Let us now add third rule:Rule 1: IF the ‘traffic light’ is green THEN the action is goRule 2: IF the ‘traffic light’ is red THEN the action is stopRule 3: IF the ‘traffic light’ is red THEN the action is go
79We have two rules, Rule 2 and Rule 3, with the same IF part We have two rules, Rule 2 and Rule 3, with the same IF part. Thus both of them can be set fired when the condition part is satisfied. These rules represent a conflict set. The inference engine must determine which rule to fire from such a set. A method for choosing a rule to fire when more than one rule can be fired in a given cycle is called conflict resolution.
80In forward chaining, BOTH rules would be fired In forward chaining, BOTH rules would be fired. Rule 2 is fired first as the topmost one, and as a result, its THEN part is executed and linguistic object action obtains value stop. However, Rule 3 is also fired because the condition part of this rule matches the fact ‘traffic light’ is red, which is still in the database. As a consequence, object action takes new value go.
81Methods used for conflict resolution Fire the rule with the highest priority. In simple applications, the priority can be established by placing the rules in an appropriate order in the knowledge base. Usually this strategy works well for expert systems with around 100 rules.Fire the most specific rule. This method is also known as the longest matching strategy. It is based on the assumption that a specific rule processes more information than a general one.
82Fire the rule that uses the data most recently entered in the database Fire the rule that uses the data most recently entered in the database. This method relies on time tags attached to each fact in the database. In the conflict set, the expert system first fires the rule whose antecedent uses the data most recently added to the database.
83Advantages of rule-based expert systems Natural knowledge representation. An expert usually explains the problem-solving procedure with such expressions as this: “In such-and-such situation, I do so-and-so”. These expressions can be represented quite naturally as IF-THEN production rules.Uniform structure. Production rules have the uniform IF-THEN structure. Each rule is an independent piece of knowledge. The very syntax of production rules enables them to be self-documented.
84Advantages of rule-based expert systems Separation of knowledge from its processing. The structure of a rule-based expert system provides an effective separation of the knowledge base from the inference engine. This makes it possible to develop different applications using the same expert system shell.Dealing with incomplete and uncertain knowledge. Most rule-based expert systems are capable of representing and reasoning with incomplete and uncertain knowledge.
85Disadvantages of rule-based expert systems Opaque relations between rules. Although the individual production rules are relatively simple and self-documented, their logical interactions within the large set of rules may be opaque. Rule-based systems make it difficult to observe how individual rules serve the overall strategy.Ineffective search strategy. The inference engine applies an exhaustive search through all the production rules during each cycle. Expert systems with a large set of rules (over 100 rules) can be slow, and thus large rule-based systems can be unsuitable for real-time applications.
86Disadvantages of rule-based expert systems Inability to learn. In general, rule-based expert systems do not have an ability to learn from the experience. Unlike a human expert, who knows when to “break the rules”, an expert system cannot automatically modify its knowledge base, or adjust existing rules or add new ones. The knowledge engineer is still responsible for revising and maintaining the system.
87Today contents and achievements 2.5 Forward and backward chaining2.6 Conflict resolutionLO1 : Able to determine the forward and backward chaining for a specific problemAchievements:CO1, CO5