Efficient Decomposition of Large Fuzzy Functions and Relations

Download Presentation

Efficient Decomposition of Large Fuzzy Functions and Relations

Loading in 2 Seconds...

- 115 Views
- Uploaded on
- Presentation posted in: General

Efficient Decomposition of Large Fuzzy Functions and Relations

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.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.

- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Efficient Decomposition of Large Fuzzy Functions and Relations

- Fuzzy functions are realized in:
- analog hardware
- software

- Why to minimize fuzzy logic functions?
- Smaller area
- Lower Power
- Simpler and faster program
- Better learning, Occam Razor - not covered here

- 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)

- Fuzzy Maps
- Lattice of variables
- The Subsumption rule
- Kandel’s methods to decompose Fuzzy Functions

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’

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

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).

We first discuss a simplified logic with few literals

- 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).

Our new approach

- Kandel's and Francioni's Approach based on graphical representations:
- Requires subsumption-based reduction to canonical form
- Graphical: uses S-Maps and Fuzzy Maps
- Decomposition Implicant Pattern (DIP)
- Variable Matching DIP’s Table
- non-algorithmic
- not scalable to larger functions
- no software
Fuzzy to Multiple-valued Function Conversion Approach and use of Generalized Ashenhurst-Curtis Decomposition

- Fuzzy Function Ternary Map
- Fuzzy Function to Three-valued Function Conversion:
- The MAX operation forms the result
- The result from the canonical form is the same as from the non-canonical form
- Thus time consuming reduction to canonical form is not necessary

This shows the mapping between the fuzzy terms and terms in the ternary map.

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

- Combining the three-valued term functions into a single three-valued function is performed using the MAX Operation

F = x2x’2 +x’1x2 +x1x’2+ x1x’1x’2

conversion is equal to

F(x1x2) =x’1x2+x1x’2

canonical

canonical

Non-canonical

Initial non-canonical expression

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

Initial non-canonical expression

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

This way, the table is rewritten to the table from the next page

0 1 0

0 1 1

0 1 2

Two solutions are obtained in this case

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’

This kind of tables known from Rough Sets, Decision Trees, etc Data Mining

Decomposition is hierarchical

At every step many decompositions exist

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

Explain the concept of generalized don’t cares

Bound Set

a b \ c

Columns 0 and 1

and

columns 0 and 2

are compatible

column

compatibility = 2

Free Set

z

Relation

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

Bound Set

a b \ c

C0

C1

Free Set

C2

Columns 0 and 1 and columns 0 and 2 are compatible

column compatibility index = 2

Column Compatibility Graph

z

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

C0

C0

C1

C1

C2

C2

Column Compatibility Graph

Column Incompatibility Graph

CCG and CIG are complementary

Maximal clique covering

clique partitioning

Graph coloring

graph multi-coloring

\ c

\ c

G

G

Map of relation G

After induction

From CIG

g = a high pass filter whose acceptance threshold begins at

c > 1

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

B2

B1

B3

Cost(B2) =23*2=16

Cost(B3) =22*1=4

Cost(B1) =24*1=16

Total DFC = 16 + 16 + 4 = 36

Other cost functions

- 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.

- 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

Bound Set

1

3

Free Set

4

2

D

1

0

AB

C

0

0

Free Set

0

1

1

1

X

Bound Set

CD

1

3

4

2

1

3

2

4

X=G(C,D)

X=C in this case

But how to calculate function H?

compatible

Compatibility Graph for columns

Karnaugh Map

Kmap of block G

One level of decomposition

Kmap of block H

Compatibility of columns for Relations is not transitive !

This is an important difference between decomposing functions and relations

Now H is a relation

which can be either decomposed or minimized directly in a sum-of-products fashion

But how to select good partitions of variables?

- Variables b and d reduce uncertainty of y to 0 which means they provide all the information necessary for determination of the output y
- Variables a and c are vacuous

Example of removing inessential variables (a) original function (b)variable a removed (c) variable b removed, variable c is no longer inessential.

- Discovering concepts useful for purchasing a car

Graphical Representations

- Fuzzy to Multiple-valued Function Conversion Approach
- Fuzzy Logic Decision Diagrams Approach
- Fuzzy Logic Multiplexer

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

(a) f(x1, x2) =x1 x’1 x2+x1 x’1 x’2

x2=0.3

x2’=0.7

(a) f(x1, x2) =min(x1 , x’1, 0.3) max min(x1 ,x’1 , 07) = min(0.5, 0.3) max min (0.5, 0.7) = 0.3 max 0.5 = 0.5 = x1 x’1

Assuming max value of x1 x’1

Please check other values

(b) f(x1, x2) =x1 x’1

- Shows the relationship of all the possible terms.
- Shows which two terms can be reduced to a single term.

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.

- Used to reduce a fuzzy logic function.
- The subsumption rule is:
xi x’I +’ xi x’I = xi x’I

- Operations on two variable map are shown with I subsuming i.

- 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

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 .

- Fuzzy Maps
- Lattice of two variables
- The Subsumption rule
- Form to Decompose a Fuzzy Functions

- Graphical Representations
Fuzzy Logic Decision Diagrams Approach

- Fuzzy Logic Multiplexer

w w’(z + x’ z z’ + xz) + w’ (x’z z’ + xz) + w(z+xz)+ xz

(w+x)z + (w+x)’ z’z = wz + xz + w’x’z’z + w w’z + w w’ x’ z z’

d3xx’