By Mrs. Shimi S.L Assistant Professor,EE NITTTR, Chandigarh Fuzzy Logic using MATLAB
The term " fuzzy logic " was introduced with the 1965 proposal of fuzzy set theory by Lotfi A. Zadeh . Fuzzy logic is a form of many-valued logic ; it deals with reasoning that is approximate rather than fixed and exact. Mrs. Shimi S.L Assistant Professor,EE NITTTR, Chandigarh
Fuzzy Controllers The Outputs of the Fuzzy Logic System Are the Command Variables of the Plant:
Conventional (Boolean) Set Theory: Fuzzy Set Theory “Strong Fever” 40.1°C 42°C 41.4°C 39.3°C 38.7°C 37.2°C 38°C Fuzzy Set Theory: 40.1°C 42°C 41.4°C 39.3°C 38.7°C 37.2°C 38°C “More-or-Less” Rather Than “Either-Or” ! “Strong Fever”
Fuzzy Set vs Crisp Set X is a set of all real numbers from 1 to 10 Universe of Discourse A is a set of real numbers between 5 and 8 Crisp or Classical Set Membership Value 1 or 0
Fuzzy Set vs Crisp Set B is a set of young people Membership values between 0 and 1 – Fuzzy Set Age 65 27 17 32 22 25 B 0.3 1 0.8 0.5
Fuzzy Set Another example of Fuzzy Set What season is it right now? Using the astronomical definitions for season, we get sharp boundaries. What we experience as seasons varies more or less continuously
Traditional Representation of Logic Slow Fast Speed = 0 Speed = 1 bool speed; get the speed if ( speed == 0) { // speed is slow } else { // speed is fast } Mrs. Shimi S.L Assistant Professor,EE NITTTR, Chandigarh
Fuzzy Logic Representation Every problem must be represent in terms of fuzzy sets. What are fuzzy sets? Slowest Fastest Slow Fast [ 0.0 – 0.25 ] [ 0.25 – 0.50 ] [ 0.50 – 0.75 ] [ 0.75 – 1.00 ]
Fuzzy Logic Representation Slowest Fastest float speed; get the speed if ((speed >= 0.0)&&(speed < 0.25)) { // speed is slowest } else if ((speed >= 0.25)&&(speed < 0.5)) { // speed is slow } else if ((speed >= 0.5)&&(speed < 0.75)) { // speed is fast } else // speed >= 0.75 && speed < 1.0 { // speed is fastest } Slow Fast
12 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? Mrs. Shimi S.L Assistant Professor,EE NITTTR, Chandigarh
13 Membership Functions Temp: { Freezing , Cool , Warm , Hot } Degree of Truth or " Membership“ Each of these linguistic terms is associated with a fuzzy set defined by a corresponding membership function. Mrs. Shimi S.L Assistant Professor,EE NITTTR, Chandigarh
Membership Functions Membership function (MF) is a curve that defines how each point in the input space is mapped to a membership value (or degree of membership) between 0 and 1 and is often given the designation of µ. µ A (x) is called the membership function (or MF) of x in A. Thus membership functions are subjective measures for linguistic terms. There are many types of membership functions.
Types of Membership Functions
16 Membership Functions How cool is 36 F ° ? Mrs. Shimi S.L Assistant Professor,EE NITTTR, Chandigarh
17 Membership Functions How cool is 36 F ° ? It is 30% Cool and 70% Freezing 0.7 0.3 Mrs. Shimi S.L Assistant Professor,EE NITTTR, Chandigarh
18 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 Mrs. Shimi S.L Assistant Professor,EE NITTTR, Chandigarh
19 Fuzzy Disjunction (Union) A B max(A, B) A B = C "Quality C is the disjunction of Quality A and B" (A B = C) (C = 0.75) Mrs. Shimi S.L Assistant Professor,EE NITTTR, Chandigarh
20 Fuzzy Conjunction (Intersection) A B min(A, B) A B = C "Quality C is the conjunction of Quality A and B" (A B = C) (C = 0.375) Mrs. Shimi S.L Assistant Professor,EE NITTTR, Chandigarh
Fuzzy Set Operations There are three basic operation on fuzzy sets: negation, intersection, and union Negation membership_value(not x)= 1- membership_value(x) where x is the fuzzy set being negated Intersection membership_value(x and y) = minimum{membership_value(x), membership_value(y)} where x and y are the fuzzy sets involved in the intersection Union membership_value(x or y) = maximum{membership_value(x), membership_value(y)} where x and y are the fuzzy sets involved in the union minimum operator for intersection and the maximum operator for union
Fuzzy Set Operations Let A be a fuzzy interval between 5 and 8 B be a fuzzy number about 4.
Fuzzy Set Operations Union of A and B A OR B Intersection of A and B A AND B
Fuzzy Set Operations Negation of A De Morgan’s Laws
Fuzzy Set Operations
Fuzzy Relations A crisp relation between two sets X, Y is a binary relation. Binary relations are represented by relation matrices and also by sagittal diagrams. R={(1,a) (2,c) (3,b) (4,c)} Sagittal Diagram Relation Matrix
Fuzzy Relations Relation between two or more fuzzy sets is obtained by the Cartesian product.
Fuzzy Relations Let us describe the relationship between the colour of a fruit, x and the grade of maturity, y. x= { green, yellow, red} y={ verdant, half-mature, mature} Considering the relation between the linguistic terms red and mature, and representing them by the membership functions, a fruit can be characterized by the property of red and mature.
Fuzzy Relations Characteristics of a red and mature fruit
Fuzzy Compositions T = R o S - max-min composition T = R S - max-product composition Chain-strength analogy for max-min composition
32 Composition of fuzzy relations
33 Example Composition of fuzzy relations
34 Example Composition of fuzzy relations
35 Composition of fuzzy relations
Fuzzy Relations Three variables of interest in power transistors are the amount of current that can be switched, the voltage that can be switched , and the cost. The following membership functions for power transistors were developed from hypothetical components catalog: Average current Average voltage Power is defined by the algebraic operation P = VI (a) Let us find the Cartesian Product P = VxI.
Fuzzy Relations The Cartesian Product expresses the relationship between V i and I j , where V i and I j are individual elements in the fuzzy set V and I. Now let us define a fuzzy set for the cost C in rupees, of a transistor (b)Using a fuzzy Cartesian Product, find T = IxC. (c) Using max-min composition find E = PoT (d) Using max-product composition find E = PoT
Fuzzy Control Using a procedure originated by Ebrahim Mamdani in the late 70s, three steps are taken to create a fuzzy controlled machine: Fuzzification (Using membership functions to graphically describe a situation) Rule Evaluation (Application of fuzzy rules) Defuzzification (Obtaining the crisp results)
Fuzzy Control Fuzzification is the process of making a crisp quantity fuzzy. Membership functions characterize the fuzziness in a fuzzy set. Six procedures to build membership functions Intuition Inference Rank Ordering Neural Networks Genetic Algorithm Inductive Reasoning
Fuzzy Control Defuzzification is the conversion of a fuzzy quantity to a precise quantity. Output of a fuzzy process can be the logical union of two or more fuzzy membership functions defined on the universe of discourse. . Methods of defuzzification Max-membership principle Centroid method Weighted average method Mean max membership Center of sums Center of largest area First (or last) of maxima
41 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 Mrs. Shimi S.L Assistant Professor,EE NITTTR, Chandigarh
44 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... Mrs. Shimi S.L Assistant Professor,EE NITTTR, Chandigarh
45 Example Speed Calculation How fast will I go if it is 65 F ° 25 % Cloud Cover ? Mrs. Shimi S.L Assistant Professor,EE NITTTR, Chandigarh
47 ...Calculating... If it's Sunny and Warm, drive Fast Sunny(Cover) Warm(Temp) Fast(Speed) 0.8 0.7 = 0.7 Fast = 0.7 If it's Cloudy and Cool, drive Slow Cloudy(Cover) Cool(Temp) Slow(Speed) 0.2 0.4 = 0.2 Slow = 0.2 A B = min(A, B) Mrs. Shimi S.L Assistant Professor,EE NITTTR, Chandigarh
48 Defuzzification : Constructing the Output Speed is 20% Slow and 70% Fast Find centroids : Location where membership is 100% Mrs. Shimi S.L Assistant Professor,EE NITTTR, Chandigarh
49 Defuzzification : Constructing the Output Speed is 20% Slow and 70% Fast Speed = weighted mean = = (2*25+7*75)/(9) = 63.8 mph Mrs. Shimi S.L Assistant Professor,EE NITTTR, Chandigarh
Artificial Neural Network
Artificial neural network (ANN) is a machine learning approach that models human brain and consists of a number of artificial neurons. An Artificial Neural Network is specified by: neuron model : the information processing unit of the NN, an architecture : a set of neurons and links connecting neurons. Each link has a weight, a learning algorithm : used for training the NN by modifying the weights in order to model a particular learning task correctly on the training examples. The aim is to obtain a NN that is trained and generalizes well. It should behaves correctly on new instances of the learning task.
The Biological Neural Network Characteristics of Human Brain Ability to learn from experience Ability to generalize the knowledge it possess Ability to perform abstraction To make errors.
A neuron fires when the sum of its collective inputs reaches a threshold There are about 10^11 neurons per person Each neuron may be connected with up to 10^5 other neurons Consists of three sections cell body dendrites axon
Nerve impulses which pass down the axon, jump from node to node, thus saving energy. There are about 10^16 synapses. Usually no physical or electrical connection made at the synapse.
Human neurons Artificial neurons Neurons Neurons Axon, Synapse Wkj (weight) Synaptic terminals to next neuron output terminals Synaptic terminals taking input input terminals ( Xj ) human response time=1 ms silicon chip response time=1ns
Input values weights Summing function Bias b Activation function Induced Field v Output y x 1 x 2 x m w 2 w m w 1 Perceptron : Neuron Model (Special form of single layer feed forward)
Neuron The neuron is the basic information processing unit of a NN. It consists of: A set of links , describing the neuron inputs, with weights W 1 , W 2 , …, W m An adder function (linear combiner) for computing the weighted sum of the inputs: (real numbers) Activation function for limiting the amplitude of the neuron output. Here ‘b’ denotes bias.
Bias of a Neuron The bias b has the effect of applying a transformation to the weighted sum u v = u + b The bias is an external parameter of the neuron . It can be modeled by adding an extra input. v is called induced field of the neuron
Activation Function The choice of activation function determines the neuron model. Examples: step function: ramp function: sigmoid function with z,x,y parameters Gaussian function:
Training Training is accomplished by sequentially applying input vectors while adjusting network weights according to a predetermined procedures. Supervised Training requires the pairing of each input vector with a target vector representing the desired output. Unsupervised Training requires no target vector for the output and no comparisons to predetermined ideal responses. The training algorithm modifies network weights to produce output vectors that are consistent. Also called self-organizing networks.
Gradient descent or Steepest Descent ɳ is the learning rate global minimum
Boolean function OR – Linearly separable
These two classes (true and false) cannot be separated using a line. Hence XOR is non linearly separable.
Multi layer feed-forward NN (FFNN) FFNN is a more general network architecture, where there are hidden layers between input and output layers. Hidden nodes do not directly receive inputs nor send outputs to the external environment. FFNNs overcome the limitation of single-layer NN. They can handle non-linearly separable learning tasks. Input layer Output layer Hidden Layer 3-4-2 Network
FFNN for XOR The ANN for XOR has two hidden nodes that realizes this non-linear separation and uses the sign (step) activation function. Arrows from input nodes to two hidden nodes indicate the directions of the weight vectors (1,-1) and (-1,1). The output node is used to combine the outputs of the two hidden nodes.
Since we are representing two states by 0 (false) and 1 (true), we will map negative outputs (–1, –0.5) of hidden and output layers to 0 and positive output (0.5) to 1.
Human can identify a person through thoughts.which means humans neurons are getting trained itself. Therefore through Artificial Neural Network we can train artificial neurons using computer programming . using neural network we are trying to build a network between neurons to transfer the electrical signals.which are consists of neural commands . usually Computer response time is 10^6 times faster than humans response time because of the silicon Integrated chips. silicon chip response time :- 1 nanosecond human response time :- 1 millisecond but human can perform faster than chips because human has massively parallel neural structure. If we consider human neuron structure it has synaptic terminals, cell body(neurons), basal dendrite and axon. Each components has some function to transfer signal to neurons.
Bias neurons are added to neural networks to help them learn patterns. A bias neuron is nothing more than a neuron that has a constant output of one. Because the bias neurons have a constant output of one they are not connected to the previous layer. The value of one, which is called the bias activation, can be set to values other than one. However, one is the most common bias activation.