180 likes | 498 Views
Soft Computing . Per Printz Madsen Section of Automation and Control E-mail: ppm@es.aau.dk. Soft Computing . So far as the laws of mathematics refer to reality, they are not certain. And so far as they are certain, they do not refer to reality. A. Einstein
E N D
Soft Computing. Per Printz Madsen Section of Automation and Control E-mail: ppm@es.aau.dk
Soft Computing. • So far as the laws of mathematics refer to reality, they are not certain. • And so far as they are certain, they do not refer to reality. • A. Einstein • As complexity rises, precise statements lose meaning and meaningful statements lose precision. • - LotfiZadeh
What Is Soft Computing? A Definition of Soft Computing - adapted from L.A. Zadeh Soft computing differs from conventional (hard) computing in that, unlike hard computing, it is tolerant of imprecision, uncertainty, partial truth, and approximation. In effect, the role model for soft computing is the human mind. The principal types of Soft Computing: • Fuzzy Logic (FL), • Neural Computing (NC), • Evolutionary Computation (EC) • Machine Learning (ML) • Probabilistic Reasoning (PR) Some important journals and links: • Journal of Soft Computing • Applied Soft Computing • World Conference on Soft Computing • The IEEE Computational Intelligence Society
Fuzzy logic Fuzzy logic is a form of multi-valued logic that deals with reasoning that is approximate rather than accurate. In contrast with traditionally logic "crisp logic", where binary sets have binary logic (true or false). Fuzzy logic value are truth to a certain degree e.g. between 0 and 1. Fuzzy logic use linguistic variables for describing the logic in a natural way. Crisp logic: PersonHeight= tall Fuzzy logic: PersonHeight= tall 1 1 0 0 1.8 m 1.7 m 1.9 m
crisp logic X: The universe of discourse B A • X: The set including all possible members. • A, B: Sub sets of X with some specific features descript be • two membership function. mAand mB
Fuzzy logic 1 Young 0 0 10 20 30 40 Age Matlabmemberskip functions
Fuzzy set operations Consider three fuzzy set A, B and C in the same universe of discourse: X The empty set: Ø The set A equal to set B The set A is a part of set B The set A is a true part of set B
Fuzzy set operations The set A is the complement of B: A= not B The set C is the union of A and B: C= A or B mC A B x
Fuzzy set operations The set C is the intersection of A and B: C = A and B mC A B
Linguistic variables A linguistic variable is a variable whose values are not numbers but words or sentences in a natural or artificial language (Zadeh, 1975a, p. 201). • The variable: Rum temperature. • The values: Hot, Cold, Comfortable, to_cold, to_hot, … • Hedges or linguistic modifiers: Very, More_or_less, extremely,.. • Very Hot, extremely Cold, More_or_less Comfortable,… • More formally, a linguistic variable is characterized by: [x , T(x), X, M], • x is the name of the variable, • T(x) is the value set of x . Each value is a part of the universe of discourse X. • M is a set of semantic rule for associating each member in T(x) with its meaning. • This meaning is defined bythe membership functions for each value in T(x).
Linguistic variables • Ex: The lingustuic variable age. [x , T(x), X, M], • x = Age, • T(x)= { young, old}, • X all persons in Denmark, • M= { young ~ myoung , old ~ mold}. • ‘’Per is young’’ is true to the degree: myoung(Age of Per). • ‘’Bent is old’’ is true to the degree: mold(Age of Bent). • ‘’Per is young and Bent is old’’: the intersection of myoung(Age of Per) and mold(Age of Bent): • min(myoung(Age of Per), mold(Age of Bent)). • ‘’Per is young or Bent is old’’: The union • max(myoung(Age of Per), mold(Age of Bent)).
Linguistic variables • ‘’Per is not young or Bent is not old’’: • max(1 - myoung(Age of Per), 1 - mold(Age of Bent)). • Hedges or linguistic modifiers: Very, More_or_less, extremely,.. The set C = Very A The set C = More_or_less A • ‘’Per is not Very young and Bent is More_or_less old’’:
Fuzzy implication (if-then) IF Per is young THEN Bent is old Definition: A and B are two fuzzy sets. Given by mA(x) and mB(y). Then A implicate B is given by:
Fuzzy implication (if-then) IF water_temp is cold and wind is stormy THEN swimming is bad Cold OK Warm normal stormy Bad average good y Measured temperature Measured wind speed
Fuzzy Aggregation IF water_temp is cold AND wind is stormy THEN swimming is bad IF water_temp is warm AND wind is stormy THEN swimming is average IF water_temp is ok AND wind is normal THEN swimming is average IF water_temp is warm AND wind is normal THEN swimming is good mout Bad average good xout MoM CoG CoG: Center of gravity MoM: Mean of Max LoM: Left of Max RoM: Right of Max LoM RoM
Defuzzyfication mout Bad average good xout MoM CoG LoM RoM CoG: Center of gravity Matlabdefuzzyfication