1 / 58

Efficient Decomposition of Large Fuzzy Functions and Relations

FUZZY LOGIC IN ROBOTICS. Efficient Decomposition of Large Fuzzy Functions and Relations. Marek Perkowski + Portland State University , Dept. Electrical Engineering, Portland, Oregon 97207, Tel. 503-725-5411, Fax (503) 725-4882, USA. Minimization of Fuzzy Functions.

florence
Download Presentation

Efficient Decomposition of Large Fuzzy Functions and Relations

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. FUZZY LOGIC IN ROBOTICS Efficient Decomposition of Large Fuzzy Functions and Relations Marek Perkowski + Portland State University, Dept. Electrical Engineering, Portland, Oregon 97207, Tel. 503-725-5411, Fax (503) 725-4882, USA

  2. Minimization of Fuzzy Functions • Fuzzy functions are realized in: • analog hardware • software • Why to minimize fuzzy logic functions? • Smaller area • Lower Power • Simpler and faster program

  3. Minimization Approaches to Fuzzy Functions • Two level minimization (Siy,Kandel, Mukaidono, Lee, Rovatti et al) • Algebraic factorization (Wielgus) • Genetic algorithms (Thrift, Bonarini, many authors) • Fuzzy decision diagrams (Moraga, Perkowski) • Functional decomposition (Kandel, Kandel and Francioni)

  4. Graphical Representations • Fuzzy Maps • Lattice of two variables • The Subsumption rule • Kandel’s Form to Decompose Fuzzy Functions

  5. Identities The identities for fuzzy algebra are: Idempotency: X + X = X, X * X = X Commutativity: X + Y = Y + X, X * Y = Y * X Associativity: (X + Y) + Z = X + (Y + Z), (X * Y) * Z = X * (Y* Z) Absorption: X + (X * Y) = X, X * (X + Y) = X Distributivity: X + (Y * Z) = (X + Y) * (X + Z), X * (Y + Z) = (X * Y) + (X * Z) Complement: X’’ = X DeMorgan's Laws: (X + Y)’ = X’ * Y’, (X * Y)’ = X’ + Y’

  6. Transformations Some transformations of fuzzy sets with examples follow: x’b + xb = (x + x’)b  b xb + xx’b = xb(1 + x’) = xb x’b + xx’b = x’b(1 + x) = x’b a + xa = a(1 + x) = a a + x’a = a(1 + x’) = a a + xx’a = a a + 0 = a x + 0 = x x * 0 = 0 x + 1 = 1 x * 1 = x Examples: a + xa + x’b + xx’b = a(1 + x) + x’b(1 + x) = a + x’b a + xa + x’a + xx’a = a(1 + x + x’ + xx’) = a

  7. Differences Between Boolean Logic and Fuzzy Logic Boolean logic the value of a variable and its inverse are always disjoint (X * X’ = 0) and (X + X’ = 1) because the values are either zero or one. Fuzzy logic membership functions can be either disjoint or non-disjoint. Example of a fuzzy non-linear and linear membership function X is shown (a) with its inverse membership function shown in (b).

  8. Fuzzy Intersection and Union • From the membership functions shown in the top in (a), and complement X’ (b) the intersection of fuzzy variable X and its complement X’ is shown bottom in (a). • From the membership functions shown in the top in (a), and complement X’ (b) the union of fuzzy variable X and its complement X’ is shown bottom in (b).

  9. Fuzzy Maps Fuzzy map may be regarded as an extension of the Veitch diagram, which forms also the basis for the Karnauph map. The functions shown in (a) and (b) are equivalent to f(x1, x2) =x’1 x2+x1 x’1 x’2 =x1 x’1 (b) f(x1, x2) =x1 x’1 (a) f(x1, x2) =x1 x’1 x2+x1 x’1 x’2

  10. Lattice of Two Variables • Shows the relationship of all the possible terms. • Shows which two terms can be reduced to a single term.

  11. The Subsumption Rule Used to reduce a fuzzy logic function.  xi x’I +’ xi x’I  = xi x’I  Operations on two variable map are shown with I subsuming i.

  12. Form Needed to Decompose Fuzzy Functions • Form requirements: • Sum-of-products • Canonical • Figures show the function x2 x’2 +x’1 x2 +x1 x’2 +x1 x’1 x’2 • before using the subsuming rules in (a) and after in (d) x’1 x2 +x1 x’2 . x1

  13.  xi x’I +’ xi x’I  = xi x’I  subsumption Let us use subsumption to verify: x2 x’2 +x’1 x2 +x1 x’2 +x1 x’1 x’2 = x2 x’2 +x’1 x2 +x1 x’2(1+x’1) = x2 x’2 +x’1 x2 +x1 x’2 = x’1 x2 +x1 x’2 .

  14. Kandel's and Francioni's Approach • Decomposition Implicant Pattern (DIP) • Variable Matching DIP’s Table • S-Maps • Example using Kandel and Francioni approach

  15. Decomposition Implicant Pattern (DIP)

  16. Variable Matching DIPs Table Tabular form of Decomposition Implicant Pattern (DIP) used in Kandel’s and Francioni’s approach

  17. S-Maps • Arrange two-variable fuzzy maps for n variables. • This method is just done by iteration to form an n variable S-map. • This shows X1 is made up of repeated X2 and X3 two variable maps.

  18. Example using Kandel and Francioni approach f = x’y’zz’ + xz + w’x’zz’ + wyz From DIP 1 implies: g(w,y) =wy, G’ (w,y) = w’ + y’ f = (wy)z + (w’ + y’) x’zz’ + xz By substituting: G(w,y) = G(Y) and G’(w,y) = G’(Y) f = F[(G(w,y), x,z)] = G(Y)z + G’(Y) x’zz’ + xz

  19. Our new approach APPROACHES TO FUZZY LOGIC DECOMPOSITION • Kandel's and Francioni's Approach based on graphical representations: • non-algorithmic • not scalable to larger functions • no software Fuzzy to Multiple-valued Function Conversion Approach and use of Generalized Ashenhurst-Curtis Decomposition

  20. New Approach: Fuzzy to Multiple-valued Function Conversion and A/C Decomposition • Fuzzy Function Ternary Map • Fuzzy Function to Three-valued Function Conversion Example • The MAX operation forms the result • The result from canonical form are the same as from the non-canonical form • Thus time consuming reduction to canonical form is not necessary

  21. Fuzzy Function Ternary Map This shows the mapping between the fuzzy terms and terms in the ternary map.

  22. Fuzzy Function to Three-valued Function Conversion Example Non-canonical Conversion of the Fuzzy function terms: x2x’2 x’1x2 x1x’2 x1x’1x’2 In non-canonical form using the MIN operation as shown for f = x2x’2 +x’1x2 +x1x’2+ x1x’1x’2 x2x’2 x’1x2 x1x’2 x1x’1x’2

  23. The MAX operation form the result • Combining the three-valued term functions into a single three-valued function is performed using the MAX Operation

  24. F = x2x’2 +x’1x2 +x1x’2+ x1x’1x’2 conversion is equal to F(x1x2) =x’1x2+x1x’2 The result from the canonical form is the same as from the non-canonical form canonical canonical Non-canonical

  25. Fuzzy to Multiple-valued Function Conversion Approach Example • Fuzzy to Multiple-valued Function Conversion Example • Fuzzy function to Multiple-valued function • Input and results of decomposition • Multiple-valued function to fuzzy function with circuit • Method of Doing More Examples • Using Mathcad to do the MIN, MAX Operations • Fuzzy Function Decomposition Results

  26. Initial non-canonical expression Entire flow of our method F(x,y,z) = xz + x’y’zz’ + yz decomposed expression G(x,y) = x+y H(x,y) = Gz + zz’. Fuzzy to Ternary Conversion Generalized Ashenhurst-Curtis Decomposition Decomposed Function

  27. Initial non-canonical expression Entire flow of our method F(x,y,z) = xz + x’y’zz’ + yz Only three patterns 0 1 0 Decomposition is based on finding patterns in this table 0 1 1 0 1 2

  28. Two solutions are obtained, Multiple-valued function to fuzzy function with circuit Fuzzy terms Gz, G’zz’ and zz’ of H are shown. G(x,y) = x+y, H(x,y) = Gz+zz’ G(x,y) = x+y, H(x,y) = Gz+G’zz’

  29. Contents • Fuzzy logic • Fuzzy logic systems applications • Approaches to fuzzy logic decomposition Decomposition program • Conclusion

  30. Generalization of the Ashenhurst-Curtis decomposition model

  31. Decomposition is hierarchical At every step many decompositions exist

  32. Functional Decomposition X A - free set Evaluates the data function and attempts to decompose into simpler functions. F(X) = H( G(B), A ), X = A B B - bound set if A B = , it is disjoint decomposition if A B  , it is non-disjoint decomposition

  33. A Standard Map of function ‘z’ Bound Set a b \ c Columns 0 and 1 and columns 0 and 2 are compatible column compatibility = 2 Free Set z

  34. Relation Decomposition of Multi-Valued Relations F(X) = H( G(B), A ), X = A B A X Relation Relation B if A B = , it is disjoint decomposition if A B  , it is non-disjoint decomposition

  35. Bound Set a b \ c C0 C1 Free Set C2 Forming a CCG from a K-Map Columns 0 and 1 and columns 0 and 2 are compatible column compatibility index = 2 Column Compatibility Graph z

  36. Forming a CIG from a K-Map a b \ c C0 C1 C2 z Columns 1 and 2 are incompatible chromatic number = 2 Column Incompatibility Graph

  37. C0 C0 C1 C1 C2 C2 CCG and CIG are complementary Maximal clique covering clique partitioning Graph coloring graph multi-coloring Column Compatibility Graph Column Incompatibility Graph

  38. clique partitioning example.

  39. Maximal clique covering example.

  40. \ c \ c G G Map of relation G After induction From CIG g = a high pass filter whose acceptance threshold begins at c > 1

  41. Cost Function Decomposed Function Cardinalityis the total cost of all blocks. Cost is defined for a single block in terms of the block’s n inputs and m outputs Cost := m * 2n

  42. B2 B1 B3 Cost(B2) =23*2=16 Cost(B3) =22*1=4 Cost(B1) =24*1=16 Example of DFC calculation Total DFC = 16 + 16 + 4 = 36 Other cost functions

  43. Decomposition Algorithm • Find a set of partitions (Ai, Bi) of input variables (X) into free variables (A) and bound variables (B) • For each partitioning, find decompositionF(X) = Hi(Gi(Bi), Ai) such that column multiplicity is minimal, and calculate DFC • Repeat the process for all partitioning until the decomposition with minimum DFC is found.

  44. Algorithm Requirements • Since the process is iterative, it is of high importance that minimization of the column multiplicity index is done as fast as possible. • At the same time, for a given partitioning, it is important that the value of the column multiplicity is as close to the absolute minimum value

  45. Bound Set 1 3 Free Set 4 2 Column Multiplicity

  46. D CD 1 0 AB Bound Set C 0 0 1 Free Set 0 1 1 1 X 3 4 2 1 3 2 4 Column Multiplicity-other example X=G(C,D) X=C in this case But how to calculate function H?

  47. Decomposition of multiple-valued relation compatible Compatibility Graph for columns Karnaugh Map Kmap of block G One level of decomposition Kmap of block H

  48. Compatibility Checking and Correction for Relations Example • Function that needs checked and corrected shown in a decomposition-map.

  49. Compatibility Graph Show Cliques • Cliques before checking and correction: clique 0 = 0 1 2 clique 1 = 0 3 • Cliques after: clique 0 = 0 clique 1 = 0 3 clique 2 = 1 2 • Compatibility graph and corrected cliques shown left

More Related