fuzzy logic control

96
Fuzzy Logic Control Lect 5 Fuzzy Logic Control Basil Hamed Electrical Engineering Islamic University of Gaza

Upload: saniya

Post on 23-Feb-2016

375 views

Category:

Documents


17 download

DESCRIPTION

Fuzzy Logic Control. Lect 5 Fuzzy Logic Control Basil Hamed Electrical Engineering Islamic University of Gaza. Content. Classical Control Fuzzy Logic Control The Architecture of Fuzzy Inference Systems Fuzzy Control Model Mamdani Fuzzy models Larsen Fuzzy Models - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Fuzzy Logic Control

Fuzzy Logic Control

Lect 5 Fuzzy Logic ControlBasil Hamed

Electrical Engineering Islamic University of Gaza

Page 2: Fuzzy Logic Control

Basil Hamed 2

Content

• Classical Control• Fuzzy Logic Control• The Architecture of Fuzzy Inference Systems• Fuzzy Control Model

– Mamdani Fuzzy models– Larsen Fuzzy Models– Sugeno Fuzzy Models– Tsukamoto Fuzzy models

• Examples

Page 3: Fuzzy Logic Control

CONVENTIONAL CONTROL

• Closed-loop control takes account of actual output and compares this to desired output

Basil Hamed 3

Measurement

DesiredOutput

+-

ProcessDynamics

Controller/Amplifier

OutputInput

• Open-loop control is ‘blind’ to actual output

Page 4: Fuzzy Logic Control

Basil Hamed 4

Digital Control System Configuration

Page 5: Fuzzy Logic Control

Basil Hamed 5

CONVENTIONAL CONTROLExample: design a cruise control systemAfter gaining an intuitive understanding of the plant’s dynamics and establishing the design objectives, the control engineer typically solves the cruise control problem by doing the following:1. Developing a model of the automobile dynamics (which may model vehicle and power train dynamics, tire and suspension dynamics, the effect of road grade variations, etc.).2. Using the mathematical model, or a simplified version of it, to design a controller (e.g., via a linear model, develop a linear controller with techniques from classical control).

Page 6: Fuzzy Logic Control

Basil Hamed 6

CONVENTIONAL CONTROL3. Using the mathematical model of the closed-loop systemand mathematical or simulation-based analysis to study its performance (possibly leading to redesign).

4. Implementing the controller via, for example, a microprocessor, and evaluating the performance of the closed-loop system (again, possibly leading to redesign).

Page 7: Fuzzy Logic Control

Basil Hamed 7

CONVENTIONAL CONTROLMathematical model of the plant:– never perfect– an abstraction of the real system– “is accurate enough to be able to design a controller that will work.”!– based on a system of differential equations

Page 8: Fuzzy Logic Control

Basil Hamed 8

Fuzzy ControlFuzzy control provides a formal methodology for representing, manipulating, and implementing a human’s heuristic knowledge about how to control a system.

Page 9: Fuzzy Logic Control

Basil Hamed 9

Fuzzy Systems

Fuzzy Knowledge base

Input Fuzzifier InferenceEngine Defuzzifier Output

Page 10: Fuzzy Logic Control

Basil Hamed 10

Fuzzy Control Systems

Fuzzy Knowledge base

Fuzzifier InferenceEngine Defuzzifier Plant Output

Input

Page 11: Fuzzy Logic Control

Basil Hamed 11

Fuzzy Logic Control• Fuzzy controller design consist of turning

intuitions, and any other information about how to control a system, into set of rules.

• These rules can then be applied to the system. • If the rules adequately control the system, the

design work is done.• If the rules are inadequate, the way they fail

provides information to change the rules.

Page 12: Fuzzy Logic Control

Components of Fuzzy system• The components of a conventional expert system and

a fuzzy system are the same. • Fuzzy systems though contain `fuzzifiers’.

– Fuzzifiers convert crisp numbers into fuzzy numbers,

• Fuzzy systems contain `defuzzifiers', – Defuzzifiers convert fuzzy numbers into crisp

numbers.

Basil Hamed 12

Page 13: Fuzzy Logic Control

Conventional vs Fuzzy system Components of a ...

conventional expert fuzzysystem system

knowledgemodel

physicaldevice

precisevalue

physicaldevice

fuzzymodel

valuefuzzy

valuefuzzy

precisevalue

precise

precise

value

value

fuzzifier

defuzzifierBasil Hamed 13

Page 14: Fuzzy Logic Control

In order to process the input to get the output reasoning there are six steps involved in the creation of a rule based fuzzy system:

1. Identify the inputs and their ranges and name them.2. Identify the outputs and their ranges and name them.3. Create the degree of fuzzy membership function for each input and output.4. Construct the rule base that the system will operate under5. Decide how the action will be executed by assigning strengths to the rules6. Combine the rules and defuzzify the output

Basil Hamed 14

Page 15: Fuzzy Logic Control

Basil Hamed 15

Fuzzy Logic Control

Type of Fuzzy Controllers:• Mamdani• Larsen• TSK (Takagi Sugeno Kang)• Tsukamoto• Other methods

Page 16: Fuzzy Logic Control

Fuzzy Control Systems

MamdaniFuzzy models

Page 17: Fuzzy Logic Control

Mamdani Fuzzy models

• The most commonly used fuzzy inference technique is the so-called Mamdani method.

• In 1975, Professor Ebrahim Mamdani of London University built one of the first fuzzy systems to control a steam engine and boiler combination.

Original Goal: Control a steam engine & boiler combination by a set of linguistic control rules obtained from experienced human operators.

Page 18: Fuzzy Logic Control

Mamdani fuzzy inferenceThe Mamdani-style fuzzy inference process is performed in four steps:

1. Fuzzification of the input variables,

2. Rule evaluation;

3. Aaggregation of the rule outputs, and finally

4. Defuzzification.

Page 19: Fuzzy Logic Control

Operation of Fuzzy System

Crisp Input

Fuzzy Input

Fuzzy Output

Crisp Output

Fuzzification

Rule Evaluation

Defuzzification

Input Membership Functions

Rules / Inferences

Output Membership Functions

Basil Hamed 19

Page 20: Fuzzy Logic Control

Inference Engine

Basil Hamed 20

Fuzzy Knowledge base

Fuzzy Knowledge base

I nput Fuzzifi er I nferenceEngine Defuzzifier OutputI nput Fuzzifi er I nferenceEngine Defuzzifier Output

Using If-Then type fuzzy rules converts the fuzzy input to the fuzzy output.

Page 21: Fuzzy Logic Control

We examine a simple two-input one-output problem that includes three rules:Rule: 1 Rule: 1IF x is A3 IF project_funding is adequateOR y is B1 OR project_staffing is smallTHEN z is C1 THEN risk is low

Rule: 2 Rule: 2IF x is A2 IF project_funding is marginalAND y is B2 AND project_staffing is largeTHEN z is C2 THEN risk is normal

Rule: 3 Rule: 3IF x is A1 IF project_funding is inadequateTHEN z is C3 THEN risk is high

Page 22: Fuzzy Logic Control

Step 1: Fuzzification■ Take the crisp inputs, x1 and y1 (project funding and

project staffing)■ Determine the degree to which these inputs belong to

each of the appropriate fuzzy sets.

Crisp Inputy1

0.1

0.71

0 y1

B1 B2

Y

Crisp Input

0.20.5

1

0

A1 A2 A3

x1

x1 X

(x = A1) = 0.5

(x = A2) = 0.2

(y = B1) = 0.1

(y = B2) = 0.7

project funding project staffing

Page 23: Fuzzy Logic Control

Step 2: Rule Evaluation• take the fuzzified inputs, (x=A1) = 0.5, (x=A2) = 0.2,

(y=B1) = 0.1 and (y=B2) = 0.7

• apply them to the antecedents of the fuzzy rules.

• If a given fuzzy rule has multiple antecedents, the fuzzy operator (AND or OR) is used to obtain a single number that represents the result of the antecedent evaluation. This number (the truth value) is then applied to the consequent membership function.

Page 24: Fuzzy Logic Control

Step 2: Rule Evaluation

To evaluate the disjunction of the rule antecedents, we use the OR fuzzy operation. Typically, fuzzy expert systems make use of the classical fuzzy operation union:

AB(x) = max [A(x), B(x)]

Similarly, in order to evaluate the conjunction of the rule antecedents, we apply the AND fuzzy operation intersection:

AB(x) = min [A(x), B(x)]

Page 25: Fuzzy Logic Control

Mamdani-style rule evaluation

A31

0 X

1

y10 Y

0.0

x1 0

0.1C1

1C2

Z

1

0 X

0.2

0

0.2 C11

C2

Z

A2

x1

Rule 3:

A11

0 X 0

1

Zx1

THEN

C1 C2

1

y1

B2

0 Y

0.7

B10.1

C3

C3

C30.5 0.5

OR(max)

AND(min)

OR THENRule 1:

AND THENRule 2:

IF x is A3 (0.0) y is B1 (0.1) z is C1 (0.1)

IF x is A2 (0.2) y is B2 (0.7) z is C2 (0.2)

IF x is A1 (0.5) z is C3 (0.5)

Page 26: Fuzzy Logic Control

• Now the result of the antecedent evaluation can be applied to the membership function of the consequent.

• There are two main methods for doing so: ◦ Clipping ◦ Scaling• The most common method is to cut the consequent

membership function at the level of the antecedent truth.

Page 27: Fuzzy Logic Control

Basil Hamed 27

• This method is called clipping (Max-Min Composition) .• The clipped fuzzy set loses some information.• Clipping is still often preferred because:

• it involves less complex and faster mathematics• it generates an aggregated output surface that is

easier to defuzzify.

Page 28: Fuzzy Logic Control

While clipping is a frequently used method, scaling (Max-Product Composition) offers a better approach for preserving the original shape of the fuzzy set.

The original membership function of the rule consequent is adjusted by multiplying all its membership degrees by the truth value of the rule antecedent.

This method, which generally loses less information, can be very useful in fuzzy expert systems.

Page 29: Fuzzy Logic Control

Clipped and scaled membership functions

Degree ofMembership1.0

0.0

0.2

Z

Degree ofMembership

Z

C2

1.0

0.0

0.2

C2

Max-Product Composition Max-Min Composition

Page 30: Fuzzy Logic Control

Step 3: Aggregation of The Rule Outputs• Aggregation is the process of unification of the

outputs of all rules.

• We take the membership functions of all rule consequents previously clipped or scaled and combine them into a single fuzzy set.

Page 31: Fuzzy Logic Control

Aggregation of the rule outputs

00.1

1C1

Cz is 1 (0.1)

C2

00.2

1

Cz is 2 (0.2)

0

0.5

1

Cz is 3 (0.5)

ZZZ

0.2

Z0

C30.5

0.1

Page 32: Fuzzy Logic Control

Step 4: Defuzzification• Fuzziness helps us to evaluate the rules, but the

final output of a fuzzy system has to be a crisp number.

• The input for the defuzzification process is the aggregated output fuzzy set and the output is a single number.

Page 33: Fuzzy Logic Control

There are several defuzzification methods, but probably the most popular one is the centroid technique.

It finds the point where a vertical line would slice the aggregate set into two equal masses. Mathematically this centre of gravity (COG) can be expressed as:

b

aA

b

aA

dxx

dxxxCOG

Page 34: Fuzzy Logic Control

Centroid defuzzification method finds a point representing the centre of gravity of the fuzzy set, A, on the interval, ab.

A reasonable estimate can be obtained by calculating it over a sample of points.

( x )

1.0

0.0

0.2

0.4

0.6

0.8

160 170 180 190 200

a b

210

A

150X

Page 35: Fuzzy Logic Control

Centre of gravity (COG):4.67

5.05.05.05.02.02.02.02.01.01.01.05.0)100908070(2.0)60504030(1.0)20100(

COG

1.0

0.0

0.2

0.4

0.6

0.8

0 20 30 40 5010 70 80 90 10060Z

Degree ofMembership

67.4

Page 36: Fuzzy Logic Control

The Reasoning Scheme

Basil Hamed 36

Max-Min Composition is used.

Page 37: Fuzzy Logic Control

Examples for Mamdani Fuzzy ModelsExample #1Single input single output Mamdani fuzzy model with 3 rules:If X is small then Y is small R1

If X is medium then Y is medium R2

Is X is large then Y is large R3

X = input [-10, 10] Y = output [0,10]Using centroid defuzzification, we obtain thefollowing overall input-output curve

Basil Hamed37

Page 38: Fuzzy Logic Control

Single input single output antecedent & consequent MFs

Basil Hamed38Overall input-output curve

Page 39: Fuzzy Logic Control

Example #2 (Mamdani Fuzzy models ) Two input single-output Mamdani fuzzy model with 4 rules:

If X is small & Y is small then Z is negative large

If X is small & Y is large then Z is negative small

If X is large & Y is small then Z is positive small

If X is large & Y is large then Z is positive large

Basil Hamed39

Page 40: Fuzzy Logic Control

Two-input single output antecedent & consequent MFs 40Basil Hamed

X = [-5, 5]; Y = [-5, 5]; Z = [-5, 5] with max-min composition & centroid defuzzification, we can determine the overall input output surface

Page 41: Fuzzy Logic Control

Overall input-output surface41Basil Hamed

Page 42: Fuzzy Logic Control

Larsen Fuzzy models

Basil Hamed 42

Inference method: Larsen– product operator(•) for a fuzzy implication– max-product operator for the composition

Page 43: Fuzzy Logic Control

The Reasoning Scheme

Basil Hamed 43

Max-Product Composition is used.

Page 44: Fuzzy Logic Control

Fuzzy Control Systems

SugenoFuzzy Models

Page 45: Fuzzy Logic Control

Sugeno Fuzzy Models

• Also known as TSK fuzzy model – Takagi, Sugeno & Kang, 1985

• Goal: Generation of fuzzy rules from a given input-output data set.

Basil Hamed 45

Page 46: Fuzzy Logic Control

Mamdani-style inference, requires to find the centroid of a two-dimensional shape by integrating across a continuously varying function. In general, this process is not computationally efficient.

Michio Sugeno suggested to use a single spike, a singleton, as the membership function of the rule consequent.

A fuzzy singleton, is a fuzzy set with a membership function that is unity at a single particular point on the universe of discourse and zero everywhere else.

Sugeno Fuzzy Control

Basil Hamed 46

Page 47: Fuzzy Logic Control

Sugeno-style fuzzy inference is very similar to the Mamdani method.

Sugeno changed only a rule consequent. Instead of a fuzzy set, he used a mathematical function of the input variable.

The format of the Sugeno-style fuzzy rule isIF x is A AND y is BTHEN z is f (x, y)

• where x, y and z are linguistic variables• A and B are fuzzy sets on universe of discourses X and Y• f (x, y) is a mathematical function

Basil Hamed 47

Page 48: Fuzzy Logic Control

The most commonly used zero-order Sugeno fuzzy model applies fuzzy rules in the following form:

IF x is A AND y is BTHEN z is k

where k is a constant.

• In this case, the output of each fuzzy rule is constant. • All consequent membership functions are represented

by singleton spikes.

Basil Hamed 48

Page 49: Fuzzy Logic Control

Fuzzy Rules of TSK Model

Basil Hamed 49

If x is A and y is B then z = f(x, y)

Fuzzy Sets Crisp Function

f(x, y) is very often a polynomial function w.r.t. x

and y.

Page 50: Fuzzy Logic Control

Examples

Basil Hamed 50

R1: if X is small and Y is small then z = x +y +1

R2: if X is small and Y is large then z = y +3

R3: if X is large and Y is small then z = x +3

R4: if X is large and Y is large then z = x + y + 2

Page 51: Fuzzy Logic Control

The Reasoning Scheme

Basil Hamed 51

Page 52: Fuzzy Logic Control

A31

0 X

1

y10 Y

0.0

x1 0

0.1

1

Z

1

0 X

0.2

0

0.2

1

Z

A2

x1

IF x is A1 (0.5) z is k3 (0.5)Rule 3:

A11

0 X 0

1

Zx1

THEN

1

y1

B2

0 Y

0.7

B10.1

0.5 0.5

OR(max)

AND(min)

OR y is B1 (0.1) THEN z is k1 (0.1)Rule 1:

IF x is A2 (0.2) AND y is B2 (0.7) THEN z is k2 (0.2)Rule 2:

k1

k2

k3

IF x is A3 (0.0)

Sugeno-style rule evaluation

Page 53: Fuzzy Logic Control

Sugeno-style aggregation of the rule outputs

z is k1 (0.1) z is k2 (0.2) z is k3 (0.5) 0

1

0.1Z 0

0.5

1

Z00.2

1

Zk1 k2 k3 0

1

0.1Zk1 k2 k3

0.20.5

Page 54: Fuzzy Logic Control

Weighted average (WA):

655.02.01.0

805.0502.0201.0)3()2()1(

3)3(2)2(1)1(

kkkkkkkkkWA

0 Z

Crisp Outputz1

z1

Sugeno-style defuzzification

Page 55: Fuzzy Logic Control

Example

Basil Hamed 55

R1: If X is small then Y = 0.1X + 6.4R2: If X is medium then Y = 0.5X + 4R3: If X is large then Y = X – 2

X = input [10, 10]

unsmooth

Page 56: Fuzzy Logic Control

Example

Basil Hamed 56

R1: If X is small then Y = 0.1X + 6.4R2: If X is medium then Y = 0.5X + 4R3: If X is large then Y = X – 2

X = input [10, 10]

If we have smooth membership functions (fuzzy rules) the overall input-output curve becomes a smoother one.

Page 57: Fuzzy Logic Control

Example

Basil Hamed 57

R1: if X is small and Y is small then z = x +y +1R2: if X is small and Y is large then z = y +3R3: if X is large and Y is small then z = x +3R4: if X is large and Y is large then z = x + y + 2

X, Y [5, 5]

Page 58: Fuzzy Logic Control

Tsukamoto Fuzzy Model The consequent of each fuzzy if-then rule: • a fuzzy set with a monotonical MF.• Overall output: the weighted average of each rule’s output.• No defuzzification.• Not as transparent as mamdani’s or Sugeno’s fuzzy model.• Not follow strictly the compositional rule of inference: the

output is always crisp.

Page 59: Fuzzy Logic Control

Example: Tsukamoto Fuzzy Model Single-input Tsukamoto fuzzy model

If X is small then Y is C1 .

If X is medium then Y is C2 .

If X is large then Y is C3 .

Page 60: Fuzzy Logic Control

Review Fuzzy Models

Basil Hamed 60

If <antecedence> then <consequence>.The same style for• Mamdani Fuzzy Models• Larsen Fuzzy Models• Sugeno Fuzzy Models• Tsukamoto Fuzzy Models

Different styles for• Mamdani Fuzzy Models• Larsen Fuzzy Models• Sugeno Fuzzy Models• Tsukamoto Fuzzy models

Page 61: Fuzzy Logic Control

How to make a decision on which method to apply Mamdani or Sugeno?

Basil Hamed 61

Page 62: Fuzzy Logic Control

Basil Hamed 62

Advantages of the Mamdani Method It is intuitive. It has widespread acceptance. It is well suited to human input. Advantages of the Sugeno Method It is computationally efficient.

It works well with linear techniques (e.g., PID control). It works well with optimization and adaptive techniques. It has guaranteed continuity of the output surface. It is well suited to mathematical analysis.

Comparisons between Mamdani and Sugeno type

Page 63: Fuzzy Logic Control

Tuning Fuzzy Systems 1. Review model input and output variables, and if required

redefine their ranges.

2. Review the fuzzy sets, and if required define additional sets on the universe of discourse.• The use of wide fuzzy sets may cause the fuzzy system to

perform roughly.

3. Provide sufficient overlap between neighbouring sets.• It is suggested that triangle-to-triangle and trapezoid-to-

triangle fuzzy sets should overlap between 25% to 50% of their bases.

Basil Hamed 63

Page 64: Fuzzy Logic Control

4. Review the existing rules, and if required add new rules to the rule base.

5. Adjust the rule execution weights. Most fuzzy logic tools allow control of the importance of rules by changing a weight multiplier.

6. Revise shapes of the fuzzy sets. In most cases, fuzzy systems are highly tolerant of a shape approximation.

Basil Hamed 64

Page 65: Fuzzy Logic Control

Steps in Designing a Fuzzy Logic Control System1. Identify the system input variables, their ranges, and membership

functions. 2. Identify the output variables, their ranges, and membership

functions.3. Identify the rules that describe the relations of the inputs to the

outputs.4. Determine the de-fuzzifier method of combining fuzzy rules into

system outputs.

Inputs Calculate

Memberships Fuzzy Inputs Rule-Base Fuzzy

Outputs Combine Outputs

Calculate

Crisp

value

Output

Fuzzification step Defuzzification step Fuzzification step Basil Hamed 65

Page 66: Fuzzy Logic Control

EXAMPLES

Page 67: Fuzzy Logic Control

Basil Hamed 67

Building a Fuzzy Expert System: Case Study A service centre keeps spare parts and repairs failed

ones. A customer brings a failed item and receives a spare of

the same type. Failed parts are repaired, placed on the shelf, and thus

become spares. The objective here is to advise a manager of the service

centre on certain decision policies to keep the customers satisfied.

Page 68: Fuzzy Logic Control

Basil Hamed 68

Process of Developing a Fuzzy Expert System

1. Specify the problem and define linguistic variables.

2. Determine fuzzy sets.

3. Elicit and construct fuzzy rules.

4. Encode the fuzzy sets, fuzzy rules and procedures to perform fuzzy inference into the expert system.

5. Evaluate and tune the system.

Page 69: Fuzzy Logic Control

Basil Hamed 69

There are four main linguistic variables: average waiting time (mean delay) m, repair utilisation factor of the service centre (is the ratio of the customer arrival day to the customer departure rate) number of servers s, and initial number of spare parts n .

Step 1: Specify the problem and define linguistic variables

Page 70: Fuzzy Logic Control

Basil Hamed 70

Linguistic variables and their rangesLinguistic Va lue Notation Numerical Range (normalised)

Very ShortShortMedium

VSSM

[0, 0.3][0.1, 0.5][0.4, 0.7]

Linguistic Va lue Notation

Notation

Numerical Range (normalised)SmallMediumLarge

SML

[0, 0.35][0.30, 0.70]

[0.60, 1]

Linguistic Va lue Numerical RangeLowMediumHigh

LMH

[0, 0.6][0.4, 0.8][0.6, 1]

Linguistic Va lue Notation Numerical Range (normalised)Very SmallSmallRather SmallMediumRather LargeLargeVery Large

VSS

RSMRLL

VL

[0, 0.30][0, 0.40]

[0.25, 0.45][0.30, 0.70][0.55, 0.75]

[0.60, 1][0.70, 1]

Linguistic Variable: Mean Delay, m

Linguistic Variable: Number of Servers, s

Linguistic Variable: Repair Utilisation Factor,

Linguistic Variable: Number of Spares, n

Page 71: Fuzzy Logic Control

Basil Hamed 71

Step 2: Determine Fuzzy Sets

Fuzzy sets can have a variety of shapes. However, a triangle or a trapezoid can often provide an adequate representation of the expert knowledge, and at the same time, significantly simplifies the process of computation.

Page 72: Fuzzy Logic Control

Basil Hamed 72

Fuzzy sets of Mean Delay m

0.10

1.0

0.0

0.2

0.4

0.6

0.8

0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1Mean Delay (normalised)

SVS M

Degree of Membership

Page 73: Fuzzy Logic Control

Basil Hamed 73

Fuzzy sets of Number of Servers s

0.10

1.0

0.0

0.2

0.4

0.6

0.8

0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1

M LS

Degree of Membership

Page 74: Fuzzy Logic Control

Basil Hamed 74

Fuzzy sets of Repair Utilisation Factor

0.10

1.0

0.0

0.2

0.4

0.6

0.8

0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1Repair Utilisation Factor

M HL

Degree ofMembership

Page 75: Fuzzy Logic Control

Basil Hamed 75

Fuzzy sets of Number of Spares n

0.10

1.0

0.0

0.2

0.4

0.6

0.8

0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1

S RSVS M RL L VL

Degree ofMembership

Number of Spares (normalised)

Page 76: Fuzzy Logic Control

Basil Hamed 76

Step 3: Elicit and construct fuzzy rulesTo accomplish this task, we might ask the expert to describe how the problem can be solved using the fuzzy linguistic variables defined previously.

Required knowledge also can be collected from other sources such as books, computer databases, flow diagrams and observed human behavior.

The matrix form of representing fuzzy rules is called fuzzy associative memory (FAM).

Page 77: Fuzzy Logic Control

Basil Hamed 77

m

s

M

RL

VL

S

RS

L

VS

S

M

MVS S

L

M

S

The square FAM representation

Page 78: Fuzzy Logic Control

Basil Hamed 78

The rule tableRule m s n Rule m s n Rule m s n

1 VS S L VS 10 VS S M S 19 VS S H VL

2 S S L VS 11 S S M VS 20 S S

S

3 M S L VS 12 M S M VS 21 M S

4 VS M L VS 13 VS M M RS 22 VS M H M

M

M

M

5 S M L VS 14 S M M S 23 S M

6 M M L VS 15 M M M VS 24 M M

7 VS L L S 16 VS L M M 25 VS L H

H

H

H

H

H

RL

8 S L

L

L S 17 S L M RS 26 S L

9 M L L VS 18 M L M S 27 M L H RS

Page 79: Fuzzy Logic Control

Basil Hamed 79

Rule Base 11. If (utilisation_factor is L) then (number_of_spares is S)2. If (utilisation_factor is M) then (number_of_sparesis M)3. If (utilisation_factor is H) then (number_of_sparesis L)

4. If (mean_delay is VS) and (number_of_serversis S) then (number_of_sparesis VL)5. If (mean_delay is S) and (number_of_serversis S) then (number_of_sparesis L)6. If (mean_delay is M) and (number_of_serversis S) then (number_of_sparesis M)

7. If (mean_delay is VS) and (number_of_serversis M) then (number_of_sparesis RL)8. If (mean_delay is S) and (number_of_serversis M) then (number_of_sparesis RS)9. If (mean_delay is M) and (number_of_serversis M) then (number_of_spares is S)

10. If (mean_delay is VS) and (number_of_servers is L) then (number_of_sparesis M)11. If (mean_delay is S) and (number_of_servers is L) then (number_of_sparesis S)12. If (mean_delay is M) and (number_of_servers is L) then (number_of_sparesis VS)

Page 80: Fuzzy Logic Control

Cube FAM of Rule Base 2

VS VS VSVS VS VSVS VS VS

VL L MHS

VS VS VSVS VS VSVS VS VSM

VS VS VSVS VS VSS S VSL

s

LVS S M

m

MH

VS VS VSLVS S M

S

m

VS VS VSM

S S VSL

s

S VS VSMVS S M

m

VS S M

m

S

RS S VSM

M RS SL

s

S

M M SM

RL M RSL

s

Page 81: Fuzzy Logic Control

Step 4: Encode the fuzzy sets, fuzzy rules and procedures to perform fuzzy inference into the expert systemTo accomplish this task, we may choose one of two options: to build our system using a programming language such as C/C++, Java, or to apply a fuzzy logic development tool such as MATLAB Fuzzy Logic Toolbox or Fuzzy Knowledge Builder.

Basil Hamed 81

Page 82: Fuzzy Logic Control

Step 5: Evaluate and Tune the SystemThe last task is to evaluate and tune the system. We want to see whether our fuzzy system meets the requirements specified at the beginning.

Several test situations depend on the mean delay, number of servers and repair utilisation factor.

The Fuzzy Logic Toolbox can generate surface to help us analyse the system’s performance.

Basil Hamed 82

Page 83: Fuzzy Logic Control

However, even now, the expert might not be satisfied with the system performance.

To improve the system performance, we may use additional sets Rather Small and Rather Large on the universe of discourse Number of Servers, and then extend the rule base.

Basil Hamed 83

Page 84: Fuzzy Logic Control

Modified Fuzzy Sets of Number of Servers s

0.10

1.0

0.0

0.2

0.4

0.6

0.8

0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1Number of Servers (normalised)

RS M RL LS

Degree of Membership

Basil Hamed 84

Page 85: Fuzzy Logic Control

Cube FAM of Rule Base 3

VS VS VS

VS VS VS

VS VS VS

VS VS VS

VS VS VS

VS VS VS

VS VS VS

VS VS VS

VS VS VS

VS VS VS

VS VS VS

VS VS VS

VS VS VS

S S VS

S S VS

VL L M

VL RL RS

M M S

RL M RS

L M RS

HS

M

RL

L

RS

s

LVS S M

m

MH

VS VS VS

VS VS VS

VS VS VS

S S VS

S S VS

LVS S M

S

M

RL

L

RS

m

s

S VS VS

S VS VS

RS S VS

M RS S

M RS S

MVS S Mm

VS S Mm

S

M

RL

L

RS

s

S

M

RL

L

RS

s

Page 86: Fuzzy Logic Control

Fuzzy Control Example

Basil Hamed 86

Page 87: Fuzzy Logic Control

Input Fuzzy Sets

Basil Hamed 87

• Angle:- -30 to 30 degrees

Page 88: Fuzzy Logic Control

Output Fuzzy Sets

Basil Hamed 88

• Car velocity:- -2.0 to 2.0 meters per second

Page 89: Fuzzy Logic Control

Fuzzy Rules

• If Angle is Zero then output ? • If Angle is SP then output ? • If Angle is SN then output ? • If Angle is LP then output ? • If Angle is LN then output ?

Basil Hamed 89

Page 90: Fuzzy Logic Control

Fuzzy Rule Table

Basil Hamed 90

Page 91: Fuzzy Logic Control

Extended System• Make use of additional information

– angular velocity:- -5.0 to 5.0 degrees/ second• Gives better control

Basil Hamed 91

Page 92: Fuzzy Logic Control

New Fuzzy Rules• Make use of old Fuzzy rules for angular

velocity Zero• If Angle is Zero and Angular vel is Zero

– then output Zero velocity • If Angle is SP and Angular vel is Zero

– then output SN velocity • If Angle is SN and Angular vel is Zero

– then output SP velocity Basil Hamed 92

Page 93: Fuzzy Logic Control

Table Format (FAM)

Basil Hamed 93

Page 94: Fuzzy Logic Control

Complete Table

• When angular velocity is opposite to the angle do nothing– System can correct itself

• If Angle is SP and Angular velocity is SN – then output ZE velocity

• etc

Basil Hamed 94

Page 95: Fuzzy Logic Control

Example• Inputs:10 degrees, -3.5 degrees/sec• Fuzzified Values

• Inference Rules

• Output Fuzzy Sets

• Defuzzified Values

Basil Hamed 95

Page 96: Fuzzy Logic Control

HW 4

Design fuzzy control for the inverted pendulum problem using Matlab or LabView

Due 10/11/2013

Basil Hamed 96