Problems often have a certain amount of uncertainty, possibly due to: Incompleteness of information about the environment,



Similar documents
Introduction to Fuzzy Control

EMPLOYEE PERFORMANCE APPRAISAL SYSTEM USING FUZZY LOGIC

A FUZZY LOGIC APPROACH FOR SALES FORECASTING

Artificial Intelligence: Fuzzy Logic Explained

Classification of Fuzzy Data in Database Management System

Strictly as per the compliance and regulations of:

Detection of DDoS Attack Scheme

DEVELOPMENT OF FUZZY LOGIC MODEL FOR LEADERSHIP COMPETENCIES ASSESSMENT CASE STUDY: KHOUZESTAN STEEL COMPANY

Design of Prediction System for Key Performance Indicators in Balanced Scorecard

Automating Software Development Process Using Fuzzy Logic

A Fuzzy Logic Based Approach for Selecting the Software Development Methodologies Based on Factors Affecting the Development Strategies

A Fuzzy System Approach of Feed Rate Determination for CNC Milling

DESIGN AND STRUCTURE OF FUZZY LOGIC USING ADAPTIVE ONLINE LEARNING SYSTEMS

CpSc810 Goddard Notes Chapter 7. Expert Systems

Optimization under fuzzy if-then rules

IAI : Expert Systems

Barinder Paul Singh. Keywords Fuzzy Sets, Artificial Intelligence, Fuzzy Logic, Computational Intelligence, Soft Computing.

Project Management Efficiency A Fuzzy Logic Approach

ABSTRACT. Keyword double rotary inverted pendulum, fuzzy logic controller, nonlinear system, LQR, MATLAB software 1 PREFACE

Reusable Knowledge-based Components for Building Software. Applications: A Knowledge Modelling Approach

Improving Decision Making and Managing Knowledge

Computational Intelligence Introduction

Threat Modeling Using Fuzzy Logic Paradigm

Knowledge Based Descriptive Neural Networks

Optimized Fuzzy Control by Particle Swarm Optimization Technique for Control of CSTR

Knowledge Engineering (Ingeniería del Conocimiento)

Computing with Words for Direct Marketing Support System

JAVA FUZZY LOGIC TOOLBOX FOR INDUSTRIAL PROCESS CONTROL

INTRUSION PREVENTION AND EXPERT SYSTEMS

Conception and Development of a Health Care Risk Management System

Boris Kovalerchuk Dept. of Computer Science Central Washington University USA

Fast Fuzzy Control of Warranty Claims System

Degrees of Truth: the formal logic of classical and quantum probabilities as well as fuzzy sets.

Product Selection in Internet Business, A Fuzzy Approach

Fuzzy Logic Based Revised Defect Rating for Software Lifecycle Performance. Prediction Using GMR

Tai Kam Fong, Jackie. Master of Science in E-Commerce Technology

Applications of Fuzzy Logic in Control Design

FUZZY MINER: EXTRACTING FUZZY RULES FROM NUMERICAL PATTERNS *

Business Intelligence and Decision Support Systems

Fuzzy Knowledge Base System for Fault Tracing of Marine Diesel Engine

Chapter 12 Discovering New Knowledge Data Mining

Predictive Dynamix Inc

ASSESSMENT OF THE EFFECTIVENESS OF ERP SYSTEMS BY A FUZZY LOGIC APPROACH

RISK ASSESSMENT BASED UPON FUZZY SET THEORY

SIMATIC S7. 3 Fuzzy Control. Preface, Contents The Structure of Fuzzy Systems and How They Work. Fuzzy Control. Function Blocks.

MEng, BSc Computer Science with Artificial Intelligence

Fuzzy Logic Based Reactivity Control in Nuclear Power Plants

A Fuzzy Logic Based Model for Life Insurance Underwriting When Insurer Is Diabetic

A Trust-Evaluation Metric for Cloud applications

Cutting Edge Practices of Performance Appraisal

MEng, BSc Applied Computer Science

TECHNIQUES FOR OPTIMIZING THE RELATIONSHIP BETWEEN DATA STORAGE SPACE AND DATA RETRIEVAL TIME FOR LARGE DATABASES

FACULTY OF COMPUTER SCIENCE AND INFORMATION TECHNOLOGY AUTUMN 2016 BACHELOR COURSES

Fuzzy Candlestick Approach to Trade S&P CNX NIFTY 50 Index using Engulfing Patterns

Resolving deictic references with fuzzy CSPs

D A T A M I N I N G C L A S S I F I C A T I O N

Maximization versus environmental compliance

Real Time Traffic Balancing in Cellular Network by Multi- Criteria Handoff Algorithm Using Fuzzy Logic

Topic 2: Structure of Knowledge-Based Systems

CONTENTS OF DAY 2. II. Why Random Sampling is Important 9 A myth, an urban legend, and the real reason NOTES FOR SUMMER STATISTICS INSTITUTE COURSE

Soft Computing in Economics and Finance

A Game-Theoretical Approach for Designing Market Trading Strategies

Towards Rule-based System for the Assembly of 3D Bricks

EXECUTIVE SUPPORT SYSTEMS (ESS) STRATEGIC INFORMATION SYSTEM DESIGNED FOR UNSTRUCTURED DECISION MAKING THROUGH ADVANCED GRAPHICS AND COMMUNICATIONS *

ANALYSIS OF WEB-BASED APPLICATIONS FOR EXPERT SYSTEM

Software Engineering. Software Development Process Models. Lecturer: Giuseppe Santucci

Employee Likelihood of Purchasing Health Insurance using Fuzzy Inference System

Expert Knowledge. New. ArcGIS 10. Incorporating. fuzzy logic tools. By Gary L. Raines, Don L. Sawatzky, and Graeme F.

NTC Project: S01-PH10 (formerly I01-P10) 1 Forecasting Women s Apparel Sales Using Mathematical Modeling

Sanjeev Kumar 1 and Hemlata Jain 2

A Web-based Game-Oriented College Selection System Employing Fuzzy Rule Trees

On Development of Fuzzy Relational Database Applications

á - Colombia - Bogotá - Colombia - Bogotá - Colombia - Bogotá - Colombia - Bogotá - Colombia - Bogotá - Colombia - Bogotá - Colombia - Bogotá - Colo

ISSN: ISO 9001:2008 Certified International Journal of Engineering and Innovative Technology (IJEIT) Volume 3, Issue 3, September 2013

CSC384 Intro to Artificial Intelligence

Soft-Computing Models for Building Applications - A Feasibility Study (EPSRC Ref: GR/L84513)

Introduction. Chapter 1

HELPDESK EXPERT. Abstract

Doctor of Philosophy in Computer Science

FUZZY CLUSTERING ANALYSIS OF DATA MINING: APPLICATION TO AN ACCIDENT MINING SYSTEM

About the NeuroFuzzy Module of the FuzzyTECH5.5 Software

Artificial Neural Networks are bio-inspired mechanisms for intelligent decision support. Artificial Neural Networks. Research Article 2014

Fuzzy Methods in Machine Learning and Data Mining: Status and Prospects

A fuzzy expert system for small business loan processing

A Semantical Perspective on Verification of Knowledge

Current Standard: Mathematical Concepts and Applications Shape, Space, and Measurement- Primary

Business Intelligence through Hybrid Intelligent System Approach: Application to Retail Banking

Real Time Traffic Monitoring With Bayesian Belief Networks

INTEROPERABLE FEATURES CLASSIFICATION TECHNIQUE FOR CLOUD BASED APPLICATION USING FUZZY SYSTEMS

An Evaluation Model for Determining Insurance Policy Using AHP and Fuzzy Logic: Case Studies of Life and Annuity Insurances

Coverability for Parallel Programs

Fuzzy Logic Approach for Threat Prioritization in Agile Security Framework using DREAD Model

Prediction of DDoS Attack Scheme

Analysis and Usage of Fuzzy Logic for Optimized Evaluation of Database Queries

KNOWLEDGE FACTORING USING NORMALIZATION THEORY

Logic Appendix. Section 1 Truth Tables CONJUNCTION EXAMPLE 1

Adaptive Optimal Scheduling of Public Utility Buses in Metro Manila Using Fuzzy Logic Controller

Mathematics Cognitive Domains Framework: TIMSS 2003 Developmental Project Fourth and Eighth Grades

A Fuzzy Logic Based Certain Trust Model for E- Commerce

ARTIFICIAL INTELLIGENCE AND EXPERT SYSTEMS: KNOWLEDGE-BASED SYSTEMS

Transcription:

Uncertainty Problems often have a certain amount of uncertainty, possibly due to: Incompleteness of information about the environment, E.g., loss of sensory information such as vision Incorrectness in the interpretation of the environment Information can be random, vague, imprecise Dealing with uncertainty is an important aspect of intelligence! ECE457 Applied Artificial Intelligence Page 1

Expert Systems for Uncertainty Possible to deal with uncertainty by using expert systems. An expert system is a program with highly domain specific knowledge which provides expert quality performance in a specific problem domain. Usually focused on a narrow set of problems (specialization). Knowledge can be both theoretical and practical; information is obtained from human experts which have developed rules of thumb, heuristics, etc. in addition to theoretical knowledge. Expert Systems are practical programs which use heuristics developed by humans to solve specific problems. They can use imperfect knowledge to obtain useful solutions to problems. ECE457 Applied Artificial Intelligence Page 2

Capabilities and motivation Expert Systems generally support things like: Inspection of the reasoning process; If we (as humans) are to trust an expert system, we must be able to query and examine the path to conclusions (and be satisfied with it). Addition and/or deletion of skills in the knowledge base; We must be able to refine and debug the expert system. Expert Systems are nice in the sense that they allow for the distribution of expert knowledge in the form of a computer program. Experts in any given area are costly and scarce. Retraining of people is hard and/or costly. Some problems have too much information and require fast timely solutions. ECE457 Applied Artificial Intelligence Page 3

Typical uses for expert systems Typical uses: Planning: deriving a sequence of actions to achieve goals given initial conditions and runtime constraints. Diagnosis: cause of malfunctions based on observable symptoms. Debugging and repair: prescribing and implementing remedies for malfunctions. Instruction: detecting and correcting deficiencies in learning. Control: governing the behavior of a complex system. Design: selection of components to meet performance goals and constraints. ECE457 Applied Artificial Intelligence Page 4

Measuring performance of an expert system The performance of an expert system is typically measured in terms of something like a Turing Test, Blind comparison between system and expert. E.g., MYCIN is an expert system for medical diagnosis of infectious blood diseases. Ask MYCIN and real doctors blindly about numerous symptoms and prescribed treatment. Don t know if the answer is coming from the Expert System or a doctor Does MYCIN perform as well as doctors? The answer was yes. ECE457 Applied Artificial Intelligence Page 5

Generic architecture of an expert system KB Editor User User Interface Inference Engine General Knowledge Base Exploration Subsystem Case-Specific Data ECE457 Applied Artificial Intelligence Page 6

Components of an expert system General Knowledge Base: Contains problem solving knowledge for a particular problem domain. Often stated as if then.. rules (a rule-based expert system). Case Specific Data: Facts, conclusions and information relevant to the specific problem instance under consideration. Changes from problem to problem. Knowledge obtained by querying user or by inferencing on other case specific information. Knowledge Base Editor: Used to locate and correct bugs; add updates to the knowledge base. ECE457 Applied Artificial Intelligence Page 7

Components of an expert system User Interface: Simplifies computer-human interactions; hides system complexity, translation of results into English, etc. Inference Engine: Mechanism for applying knowledge to the solution of an actual problem. Can be viewed as an interpreter for the knowledge base. Derives new information from the general knowledge base and the case-specific information. Exploration Subsystem: Allows the user to ask the Expert System to explain things; e.g., reason or justification for a conclusion, explanation of why data is requested, etc. ECE457 Applied Artificial Intelligence Page 8

Expert system shells Common to bundle together the user interface, the knowledge base editor, the inference engine and the exploration subsystem. Idea is to separate common (and generic) features of an expert system; Allows for more rapid prototyping of new expert systems. ECE457 Applied Artificial Intelligence Page 9

When Are Expert Systems Suitable? Needs justify costs. e.g., PROSPECTOR was an expert system used for locating mineral deposits without the expensive drilling tests, etc. Human expertise is not available where needed e.g., Medical diagnosis (this is hard to keep up to date) Problem solvable using symbolic reasoning e.g., Don t need manual or perceptual skill. ECE457 Applied Artificial Intelligence Page 1

When Are Expert Systems Suitable? Problem not solvable using traditional mathematical methods An expert system will not likely beat solid mathematics. Cooperative and articulate experts exist Can t build an expert system without experts willing to help, able to convey their knowledge. Problem is of proper size and scope e.g., can t replace a doctor, but can help in particular cases problem might take a long time due to computations involved. ECE457 Applied Artificial Intelligence Page 11

Fuzzy Logic Initiated in 1965 by Dr. L. A. Zadeh. A multi-valued logic that allows intermediate values to be defined; e.g., rather than simply using TRUE/FALSE, notions like tall or fast can be formulated mathematically and processed via computer. Fuzzy logic and fuzzy systems are one way to deal with uncertainty. Provides a simple way to represent and reason with vague, ambiguous, imprecise and noisy input or knowledge. Incorporates a rule-based approach* to solving a control problem rather than modeling the problem mathematically. ECE457 Applied Artificial Intelligence Page 12

Linguistic Fuzzy logic: A way to represent variation or imprecision in logic A way to make use of natural language in logic Approximate reasoning Humans say things like "If it is sunny and warm today, I will drive fast" Linguistic variables: Temp: {freezing, cool, warm, hot} Cloud Cover: {overcast, partly cloudy, sunny} Speed: {slow, fast} ECE457 Applied Artificial Intelligence 13

Crisp (Traditional) Variables Crisp variables represent precise quantities: x = 3.1415296 A {,1} A proposition is either True or False A B C King(Richard) Greedy(Richard) Evil(Richard) Richard is either greedy or he isn't: Greedy(Richard) {,1} ECE457 Applied Artificial Intelligence 14

Distinction from probability Important to note that fuzzy logic and probability are different. Both operate over the same numerical range and have similar values; e.g.,. represents false (non-membership) and 1. represents true (full-membership). However, probability says things like there is a 5% chance that x is y while fuzzy terminology corresponds to x s degree of membership in y. Semantic difference, and is significant: probabilistic view: x is or is not in y; we only have a 5% chance of knowing which. By contrast, fuzzy terminology supposes that x is more or less in y. ECE457 Applied Artificial Intelligence Page 15

Fuzzy Sets What if Richard is only somewhat greedy? Fuzzy Sets can represent the degree to which a quality is possessed. Fuzzy Sets (Simple Fuzzy Variables) have values in the range of [,1] Greedy(Richard) =.7 ECE457 Applied Artificial Intelligence 16

Fuzzy Linguistic Variables Fuzzy Linguistic Variables are used to represent qualities spanning a particular spectrum Temp: {Freezing, Cool, Warm, Hot} Membership Function Question: What is the temperature? Answer: It is warm. Question: How warm is it? ECE457 Applied Artificial Intelligence 17

Membership Functions Temp: {Freezing, Cool, Warm, Hot} Degree of Truth or "Membership" 1 Freezing Cool Warm Hot 1 3 5 7 9 11 Temp. (F ) ECE457 Applied Artificial Intelligence 18

Membership Functions How cool is 36 F? 1 Freezing Cool Warm Hot 1 3 5 7 9 11 Temp. (F ) ECE457 Applied Artificial Intelligence 19

Membership Functions How cool is 36 F? It is 3% Cool and 7% Freezing 1 Freezing Cool Warm Hot.7.3 1 3 5 7 9 11 Temp. (F ) ECE457 Applied Artificial Intelligence 2

Operations on fuzzy sets Can introduce basic operations on fuzzy sets similar to those operations for crisp sets. Consider three simple (basic) set operations: intersection, union and negation. In particular, look at the AREA of the memberships functions ECE457 Applied Artificial Intelligence Page 21

Intersection of fuzzy sets Zadeh suggested the MIN operation for intersection; e.g., given two fuzzy sets A and B, then C = A \ B with C (x) = MIN{ A (x), B (x)}, x 2 U. A B C ECE457 Applied Artificial Intelligence Page 22

Union of fuzzy sets Zadeh suggested the MAX operation for union; e.g., given two fuzzy sets A and B,then C = A [ B with C (x) = MAX{ A (x), B (x)}, x 2 U. A B C ECE457 Applied Artificial Intelligence Page 23

Negation/Complement of fuzzy sets Given a fuzzy set A, then C = : A is the complement of A with : A (x) = 1. - A (x), x 2 U A C ECE457 Applied Artificial Intelligence Page 24

Fuzzy Logic How do we use fuzzy membership functions in predicate logic? Fuzzy logic Connectives: Fuzzy Conjunction, Fuzzy Disjunction, Operate on degrees of membership in fuzzy sets ECE457 Applied Artificial Intelligence 25

Fuzzy Disjunction AB max(a, B) AB = C "Quality C is the disjunction of Quality A and B" 1 A 1 B.75.375 (AB = C) (C =.75) ECE457 Applied Artificial Intelligence 26

Fuzzy Conjunction AB min(a, B) AB = C "Quality C is the conjunction of Quality A and B" 1 A 1 B.75.375 (AB = C) (C =.375) ECE457 Applied Artificial Intelligence 27

Example: Fuzzy Conjunction Calculate AB given that A is.4 and B is 2 1 A 1 B.1.2.3.4.5.6.7.8.9 1 5 1 15 2 25 3 35 4 ECE457 Applied Artificial Intelligence 28

Example: Fuzzy Conjunction Calculate AB given that A is.4 and B is 2 1 A 1 B.1.2.3.4.5.6.7.8.9 1 5 1 15 2 25 3 35 4 Determine degrees of membership: ECE457 Applied Artificial Intelligence 29

Example: Fuzzy Conjunction Calculate AB given that A is.4 and B is 2 1 A 1 B.7.1.2.3.4.5.6.7.8.9 1 5 1 15 2 25 3 35 4 Determine degrees of membership: A =.7 ECE457 Applied Artificial Intelligence 3

Example: Fuzzy Conjunction Calculate AB given that A is.4 and B is 2 1.7 A 1.9 B.1.2.3.4.5.6.7.8.9 1 5 1 15 2 25 3 35 4 Determine degrees of membership: A =.7 B =.9 ECE457 Applied Artificial Intelligence 31

Example: Fuzzy Conjunction Calculate AB given that A is.4 and B is 2 1.7 A 1.9 B.1.2.3.4.5.6.7.8.9 1 5 1 15 2 25 3 35 4 Determine degrees of membership: A =.7 B =.9 Apply Fuzzy AND AB = min(a, B) =.7 ECE457 Applied Artificial Intelligence 32

Fuzzy expert system Can use fuzzy sets and fuzzy set properties to build fuzzy rule-based systems; popular for controlling the behavior of a complex system. Given input(s) and a set of rules (describing how to react), what should the output(s) of the system be? The fuzziness allows for the use of rules of thumb to describe if-then type rules. ECE457 Applied Artificial Intelligence Page 33

Topology of a fuzzy rule-based system INPUTS crisp inputs FUZZIFICATION MEMBERSHIP FUNCTIONS RULE EVALUATION RULE-BASE (KB) DEFUZZIFICATION crisp outputs OUTPUTS Inputs and outputs are CRISP values since they represent a measurement, setting, decision, etc. Internals of the system work using fuzzy membership functions to handle uncertainty. ECE457 Applied Artificial Intelligence Page 34

Fuzzification Inputs to a fuzzy system are going to be crisp values; e.g., Crisp measurements taken from the system/environment such as position, velocity, temperature, etc. Each input will have an associated domain of possible values and degrees of membership in one or more fuzzy sets. Fuzzification is the process of computing the degree of membership of each current input value in the appropriate fuzzy sets. So, fuzzification of input values is simple; we simply compute the degree of memberships in the appropriate fuzzy sets. The fuzzification is needed since inferencing (rule evaluation) requires degrees of membership in the premises of the rules. ECE457 Applied Artificial Intelligence Page 35

Defuzzification After we apply our rules to the fuzzified input values, we will find that each output has a degree of membership in a number of fuzzy sets. However, each output must be a crisp value; e.g., force = 2 newtons. Defuzzification is the process of computing a crisp value for an output from the (possibly) many degrees of membership values of an output in different fuzzy sets. ECE457 Applied Artificial Intelligence Page 36

Defuzzification Defuzzification is needed for two main reasons: To decipher the meaning of vague expressions like force is positive small, force is negative large, order is sell, order is hold, etc. thereby obtaining a crisp output value that is useable. To resolve conflicts between competing actions that result from the evaluation of different rules. Conflicting rules, for instance, might be something like: one rules says force is positive small and another rule says force is positive large. ECE457 Applied Artificial Intelligence Page 37

Defuzzification using weighted centroids There are several methods for computing a crisp output value given degrees of memberships in several fuzzy sets. One method is the so called center of gravity approach (centroid method): 1. Compute centroids for output membership functions. 2. Limit height of each membership function by the degree of membership of the output and compute the resulting area. 3. Compute the weighted average of the centroids using computed areas. ECE457 Applied Artificial Intelligence Page 38

Defuzzification using weighted centroids Degree of membership is.6 and.4. Centroid of membership functions is 2 and 5. Areas are.6(4+28)/2 = 2.4 and.4(4+32)/2 = 14.4 Crisp output is (2.4(2) + 14.4(5)) / (2.4+14.4) = 32.4 1..8.6.4.2. 1 2 3 4 5 6 7 8 ECE457 Applied Artificial Intelligence Page 39

Fuzzy rules and rule-bases Generally expressed in the form: IF (PREMISE) THEN (CONCLUSION) Input values (fuzzified) and fuzzy sets/membership values for inputs are used in the premise. Fuzzy sets/membership values for outputs are used in the conclusion. Example from some sort of control problem in which the input comes from sensors measuring angular displacement and velocity; output is some sort of applied force: IF angle is positive large AND velocity is negative small THEN force is positive small. ECE457 Applied Artificial Intelligence Page 4

Fuzzy rules and rule-bases Dissection of rule: IF angle is positive large AND velocity is negative small THEN force is positive small. Variables angle and velocity are crisp measured input values. Variable force is a crisp output value. Terms positive large and negative small are fuzzy sets for angle and velocity, respectively. positive small is a fuzzy set for force. Terms angle is positive large is the degree of membership of angle in positive large ; velocity is negative small is the degree of membership of velocity in negative small ; force is positive small is the degree of membership of force in the fuzzy set positive small. ECE457 Applied Artificial Intelligence Page 41

Inferencing and rule evaluation Clearly, every input and output will have multiple fuzzy sets associated with it. Similarly, every fuzzy system will have multiple rules. Need to perform inferencing given the set of IF THEN rules that describe the behavior of the system; i.e., Given degrees of memberships of the premises, compute degrees of memberships of the conclusions. Define the strength of any/every rule as the minimum of the premises (antecedents):* RULE_STRENGTH(RULE) = MIN(ANTECEDENT1,ANTECEDENT2,, ANTECEDENTn) Recall that the antecedents are degrees of membership of the inputs in fuzzy sets. ECE457 Applied Artificial Intelligence Page 42

Strength of rules and output membership Consider the following rule for stock trading: IF THEN share price is dropping AND trading volume is light action is hold. Assume share price fuzzifies to.2 in the fuzzy set dropping (i.e., share price is dropping =.2) and trading volume fuzzifies to 1. in the fuzzy set light (i.e., trading volume is light = 1.); The rule strength is MIN(.2,1.) =.2. The degree of membership of the output is assigned the strength of the rule; So, the output action in the fuzzy set hold is.2 ( action is hold =.2). Rule strength is the minimum to avoid making bad decisions in the sense that a rule is weak if any of its antecedents are not very true. What if multiple rules have the same conclusion, but generate a different degree of membership??? ECE457 Applied Artificial Intelligence Page 43

Multiple rules with identical conclusions Consider the two rules with the same conclusion: IF THEN share price is dropping AND trading volume is light action is hold. IF THEN share price is stable AND trading volume is light action is hold. If share price is stable =.9, trading volume is light = 1. and share price is dropping =.2: Rule#1: has strength MIN(.2,1.) =.2; Rule#2: has strength MIN(.9,1.) =.9. So what value should action is hold be assigned? i.e., what is the degree of membership of action in the fuzzy set hold? ECE457 Applied Artificial Intelligence Page 44

Max-min rule Since we used MIN for the premises (to determine rule strength) we will use MAX for multiple identical conclusions. We can think of taking the maximum of the rule strengths as taking the conclusion of the most true rule.* So in our previous example, action is hold =.9; i.e., action has degree of membership.9 in the fuzzy set hold. Hence the name of the rule Since the degree of membership for an output is taken as the maximum of rule strengths, which themselves are the minima of the antecedents, choosing output membership this way is the MAX-MIN RULE. After applying inferencing (rule-evaluation) and the max-min rule, we will have a membership value for the output variables in each of their associated fuzzy sets; we can proceed to defuzzification. ECE457 Applied Artificial Intelligence Page 45

Fuzzy Control Fuzzy Control combines the use of fuzzy linguistic variables with fuzzy logic Example: Speed Control How fast am I going to drive today? It depends on the weather. Disjunction of Conjunctions Crisp: When you are at 1 metres from the junction start braking at 5% pedal level. Fuzzy: When you are near the junction, start braking slowly. ECE457 Applied Artificial Intelligence 46

Inputs: Temperature Temp: {Freezing, Cool, Warm, Hot} 1 Freezing Cool Warm Hot 1 3 5 7 9 11 Temp. (F ) ECE457 Applied Artificial Intelligence

Inputs: Temperature, Cloud Cover Temp: {Freezing, Cool, Warm, Hot} 1 Freezing Cool Warm Hot 1 3 Cover: {Sunny, Partly, Overcast} 5 7 9 11 Temp. (F ) 1 Sunny Partly Cloudy Overcast 2 4 6 8 1 Cloud Cover (%) ECE457 Applied Artificial Intelligence 48

Output: Speed Speed: {Slow, Fast} 1 Slow Fast 25 5 75 1 Speed (mph) ECE457 Applied Artificial Intelligence 49

Rules If it's Sunny and Warm, drive Fast Sunny(Cover)Warm(Temp) Fast(Speed) If it's Cloudy and Cool, drive Slow Cloudy(Cover)Cool(Temp) Slow(Speed) Driving Speed is the combination of output of these rules... ECE457 Applied Artificial Intelligence 5

Example Speed Calculation How fast will I go if it is 65 F 25 % Cloud Cover? ECE457 Applied Artificial Intelligence 51

Fuzzification: Calculate Input Membership Levels 65 F Cool =.4, Warm=.7 1 Freezing Cool Warm Hot 1 3 5 7 9 11 Temp. (F ) ECE457 Applied Artificial Intelligence 52

Fuzzification: Calculate Input Membership Levels 65 F Cool =.4, Warm=.7 1 Freezing Cool Warm Hot 1 3 5 7 9 11 Temp. (F ) 25% Cover Sunny =.8, Cloudy =.2 1 Sunny Partly Cloudy Overcast 2 4 6 8 1 Cloud Cover (%) ECE457 Applied Artificial Intelligence 53

...Calculating... If it's Sunny and Warm, drive Fast Sunny(Cover)Warm(Temp)Fast(Speed).8.7 =.7 Fast =.7 If it's Cloudy and Cool, drive Slow Cloudy(Cover)Cool(Temp)Slow(Speed).2.4 =.2 Slow =.2 ECE457 Applied Artificial Intelligence 54

Defuzzification: Constructing the Output Speed is 2% Slow and 7% Fast 1 Slow Fast 25 5 75 1 Speed (mph) Find centroids: Location where membership is 1% ECE457 Applied Artificial Intelligence 55

Defuzzification: Constructing the Output Speed is 2% Slow and 7% Fast 1 Slow Fast 25 5 75 1 Speed (mph) Find centroids: Location where membership is 1% ECE457 Applied Artificial Intelligence 56

Defuzzification: Constructing the Output Speed is 2% Slow and 7% Fast 1 Slow Fast 25 5 75 1 Speed (mph) Speed = weighted mean = (2*25+... ECE457 Applied Artificial Intelligence Fuzzy Logic

Defuzzification: Constructing the Output Speed is 2% Slow and 7% Fast 1 Slow Fast 25 5 75 1 Speed = weighted mean = (2*25+7*75)/(9) = 63.8 mph Speed (mph) ECE457 Applied Artificial Intelligence 58

Notes: Follow-up Points Linguistic variables are used making it similar to how we (humans) think. Simplicity in that fuzzy systems do away with complex analytical equations in favor of descriptive rules (possibly from rules of thumb). Fast prototyping, cheap, and often quite robust (rule-bases generate non-linear and complex surfaces if viewed as functions). Fuzzy Logic Control allows for the smooth interpolation between variable centroids with relatively few rules This does not work with crisp (traditional Boolean) logic Provides a natural way to model some types of human expertise in a computer program ECE457 Applied Artificial Intelligence 59

Notes: Drawbacks to Fuzzy logic Requires tuning of membership functions Fuzzy Logic control may not scale well to large or complex problems Deals with imprecision, and vagueness, but not uncertainty ECE457 Applied Artificial Intelligence 6