1.2k likes | 1.59k Views
Fuzzy-Control. Control System Design. plant model. Implementation. Modeling. Controller. Fuzzy- Control. control law. controller design. model. Plant. process. Fuzzy-Control versus classical Control.
E N D
Control System Design plant model Implementation Modeling Controller Fuzzy- Control control law controller design model Plant process
Fuzzy-Control versus classical Control • Fuzzy controllers are nonlinear state space controllers with no internal dynamics • Control loop contains additional dynamic transfer elements for integration and differentation (PID- fuzzy control) • The dynamic behavior of a fuzzy controller is not different from a classical controller • The main difference is the representation of the controller (parametrization) and therefore the design methodology • Classic: model based • Fuzzy: knowledge based
Pros and Cons • Classical control • Systematic design • Stability and quality specifications are implictly met • Model uncertainties and disturbance are rejected by means of robust control design • Fuzzy control • Heuristic design • No guarantee of stability • Controller is transparent and comprehensible • State space controller requires observer, observer requires state space model, therefore why not directly classical control design
Fuzzy Control • Fuzzy control makes sense if ... • there is no system model in form of differential equations (e.g. behavior based robotics, due to environment) • the plant is highly nonlinear which complicates or prevents classical control design methods • control objectives are vague and imprecise, e.g. smooth switching of an automatic gear box • plant and control strategy are so simple that fuzzy control design requires less time and effort than classical control design
Types of Uncertainty • Stochastic uncertainty • example: rolling a dice • Linguistic uncertainty • examples : low price, tall people, young age • Informational uncertainty • example : credit worthiness, honesty
Classical Set young = { x P | age(x) 20 } characteristic function: 1 : age(x) 20 0 : age(x) > 20 { myoung(x) = young(x) A=“young” 1 0 x [years]
Fuzzy Set Fuzzy Logic Element x belongs to set A with a certain degree of membership: (x)[0,1] Classical Logic Element x belongs to set A or it does not: (x){0,1} A(x) A(x) A=“young” A=“young” 1 1 0 0 x [years] x [years]
Fuzzy Set Definition : • Fuzzy Set A = {(x, A(x)) : x X, A(x) [0,1]} • a universe of discourse X : 0 x 100 • a membership function A : X [0,1] A(x) A=“young” 1 =0.8 0 x [years] x=23
Fuzzy set vs. Probabilty • U ist the set of nontoxic liquids • Bottle A belongs to U with probability p=0.9 • Bottle B belongs to U with degree of membership m=0.9 • A has the property „non toxic“ either completely with p=0.9 or not all (toxic) with p=0.1. • B has the property „non toxic“ to a high degree (almost non-toxic) B A
Representation of Fuzzy Sets • elementwise specifikation of membership degree • discrete base set • Fuzzy set • definition via membership functions • Base set X has values in a continuous range • Fuzzy-set m is a real-valued scalar function with values in the unit interval
Types of Membership Functions Trapezoid: <a,b,c,d> Gaussian: N(m,s) (x) (x) 1 1 s 0 0 a b c d x m x Triangular: <a,b,b,d> Singleton: (a,1) and (b,0.5) (x) (x) 1 1 0 0 a b d x a b x
Parametrization of Fuzzy-Sets • Triangular functions • Trapezoidal functions • Bell-shaped functions
Classical truth values for conjunction, disjunction, implication and negation Konjunktion Disjunktion Implikation Negation
Truth value functions • Restriction: The fuzzy truth value should coincide with the classical truth values for arguments restricted to the binary inputs 0 and 1. • Example: truth value functions • conjunction • disjunktion • negation • Lukasiewicz-Implication • Gödel-Implication
Definition t-Norm Truth value functions for conjunction Kommutativity Associativity Monotonic Definition: A function t : [0, 1]2 [0, 1] is called t-Norm (triangular norm), if it complies with the axioms (T1) – (T4).
Examples for t-Norm Truth value function t(, ) = min{, } for conjunction additional t-norms
Extension Principle y f f(A)(y) A(x) x y f f(A)(y) A(x) max x Assume a fuzzy set A and a function f: How does the fuzzy set f(A) look like? For arbitrary functions f: f(A)(y) = max{A(x) | y=f(x)}
Operators on Fuzzy Sets Union Intersection AB(x)=max{A(x),B(x)} AB(x)=min{A(x),B(x)} A(x) B(x) A(x) B(x) 1 1 0 0 x x AB(x)=min{1,A(x)+B(x)} AB(x)=A(x) B(x) A(x) B(x) A(x) B(x) 1 1 0 0 x x
Complement Negation: A(x)= 1 - A(x) Classical law does not always hold: AA(x) 1 AA(x) 0 Example : A(x) = 0.6 A(x) = 1 - A(x) = 0.4 AA(x) = max(0.6,0.4) = 0.6 1 AA(x) = min(0.6,0.4) = 0.4 0
Fuzzy Relations classical relation R : X x Ydefined by mR(x,y) = 1 if (x,y) R 0 if (x,y) R { | fuzzy relation R : X x Ydefined by mR(x,y) [0,1] mR(x,y) describes to which degree x and y are related It can also be interpreted as the truth value of the proposition x R y
Fuzzy Relations Example: X = { rainy, cloudy, sunny } Y = { swimming, bicycling, camping, reading } X/Y swimming bicycling camping reading rainy cloudy sunny 0.0 0.2 0.0 1.0 0.0 0.8 0.3 0.3 1.0 0.2 0.7 0.0
Fuzzy Sets & Linguistic Variables • A linguistic variable combines several fuzzy sets. • linguistic variable : temperature • linguistics terms (fuzzy sets) : { cold, warm, hot } (x) cold warm hot 1 0 20 60 x [C]
Fuzzy Rules • causal dependencies can be expressed in form of if-then-rules • general form:if <antecedent> then <consequence> • example:if temperature is cold and oil is cheapthen heating is high
Fuzzy Rule Base Heating Temperature : cold warm hot Oil price: cheap normal expensive high high medium high medium low medium low low if temperature is cold and oil price is low then heating is high if temperature is hot and oil price is normal then heating is low
Fuzzy Knowledge Base fuzzy knowledge base Fuzzy Data-Base: Definition of linguistic input and output variables Definition of fuzzy membership functions (x) cold warm hot 1 20 60 0 x [C] Fuzzy Rule-Base: if temperature is cold and oil price is cheap then heating is high ….
Schema of a Fuzzy Decision Fuzzification Inference Defuzzification rule-base if temp is cold then valve is open cold warm hot open half close cold =0.7 0.7 0.7 if temp is warm then valve is half 0.2 0.2 warm =0.2 t v measured temperature if temp is hot then valve is close crisp output for valve-setting hot =0.0
Fuzzification cold(t)=0.5 cheap(p)=0.3 1 1 0.5 0.3 0 0 t p 15C $13/barrel If temperature is cold ... and oil is cheap ... 1. Fuzzification Determine degree of membership for each term of an input variable : temperature : t=15 Coilprice : p=$13/barrel
Fuzzy Combination 2. Combine the terms in one degree of fulfillment for the entire antecedent by fuzzy AND: min-operator cold(t)=0.5 cheap(p)=0.3 1 1 0.5 0.3 0 0 t p 15C $13/barrel if temperatur is cold ... and oil is cheap ... ante = min{cold(t), cheap(p)} = min{0.5,0.3} = 0.3
Fuzzy Inference 1 ... ante =0.3 0 h 3. Inference step: Apply the degree of membership of the antecedent to the consequent of the rule high(h) consequent(h) min-inference: cons. = min{ante ,high } ... then heating is high high(h) consequent(h) 1 prod-inference: cons. = ante •high ... ante =0.3 0 h
Fuzzy Aggregation 4. Aggregation: Aggregate all the rules consequents using the max-operator for union ... then heating is high ... then heating is medium ... then heating is low 1 0 h
Defuzzification 5. Determine crisp value from output membership function for example using “Center of Gravity”-method: consequent(h) COG 1 0 h 73
Mamdani-Controler Mamdani-Regler is based on a finite set of If-Then-Rules R of the form inputs: x1,...,xn outputs: y The fuzzy sets mR(i) are often associated with linguistic terms, e.g. vague concepts such as „roughly zero“, „medium large“ „negative small “. Fuzzy sets and linguistic terms are often synomously.
Mamdani-Controller • Rules R = {R1,...,Rr} can be interpreted as piecewise, defined, imprecise function
Mamdani-Controller • For a crisp input vector (a1,...,an) over the input variables (x1,...,xn) the resulting output fuzzy set is • Fuzzy set mR can be interpreted as a fuzzy relation across the product space X1 x ... x Xn and Y • Fuzzy set mR,a1,...,an corresponds to the image of the one-element set {(a1,...,an)} under the fuzzy relation mR.
Mamdani-Controller • projection of the crisp input x1 onto output y • Rule base R = {R1,R2,R3}, • Ri : if x is mAi then y is mBi
Defuzzifizication COG 1 • Center of gravity (COG) • Center of output fuzzy sets • Center of singletons 0 y ys 1 0 y ys 1 0 y1 y2 ys y3 y
Defuzzification MOM 1 • Mean of maxima (MOM) • Centroid of largest (COL) 0 ys y COL COG 1 0 y ys
Defuzzification B A´ B´ A 1 1 • If X is A then Y is A´ • If X is B then Y is B´ 0 0 x y Center of gravity Mean of maxima
Mamdani-Fuzzy Controler u C0 • Tank valve h w o tank tank: valve: Saturation Saturation
Fuzzy Toolbox: Tank Level Control • Inputs • Level error • Change of error • Output • Change of valve position • Nonlinear system
Fuzzy-PD-Regler : Linguistische Variablen • Wasserstand h • Änderung des Wasserstand dh/dt • Ventilstellung u
Fuzzy-PD-Regler : Regelbasis If (level is okay) then (valve is no change) If (level is low) then (valve is open fast) If (level is high) then (valve is close fast) If (level is okay) and (rate is positive) then (valve is close slow) If (level is okay) and (rate is negative) then (valve is open slow)
Takagi-Sugeno-Kang-Controler • Takagi-Sugeno-Kang-Controler are based on rules of the form • rule premise is identical to Mamdani controlers • rule conclusion is a crisp (linear) function of the inputs • The rule conclusion is a local model of the input-output relationship in the region defined by the rule premise • in intermediate regions the output results from interpolation between the individual regions (gain scheduling)
Takagi-Sugeno-Kang-Regler • TSK-controler often employ linear functions in the conclusion • Gain-Scheduling • An verschiedenen Arbeitspunkten wird ein lineares Modell der Strecke gebildet, bsw. durch Linearisierung um den Arbeitspunkt. • Für jeden Arbeitspunkt wird aufgrund des dort gültigen lokalen linearen Modells ein linearer Regler entworfen. • Im laufenden Betrieb wird dann je nach Arbeitspunkt zwischen den verschiedenen Reglern bzw. Reglerparametern hin- und hergeschaltet. • Um sprungförmige Änderungen der Eingangsgröße zu vermeiden, erfolgt der Übergang vom alten zum neuen Regler möglichst stetig.