16
Intelligent Systems Modeling with Reusable Fuzzy Objects Thomas D. Ndousse Department of Computer Science and Engineering, Northern Arizona University, Flagstaff, Arizona 86011-1560 In this article, we present a formalism for embedding fuzzy logic into object-oriented methodology in order to deal with the uncertainty and vagueness that pervade knowledge and object descriptions in the real world. We show how fuzzy logic can be used to represent knowledge in conventional objects, while still preserving the essential features of object- oriented methodology. Fuzzy object attributes and relationships are defined and the framework for obtaining fuzzy generalizations and aggregations are formulated. Object’s attributes in this formalism are viewed as hybrids of crisp and fuzzy characterizations. Attributes with vague descriptions are fuzzified and manipulated with fuzzy rules and fuzzy set operations, while others are treated as crisp sets. In addition to the fuzzification of the object’s attributes, each object is provided with a fuzzy knowledge base and an inference engine. The fuzzy knowledge base consists of a set of fuzzy rules and fuzzy set operators. Objects with a knowledge base and an inference engine are referred to as intelligent objects. 1997 John Wiley & Sons, Inc. I. INTRODUCTION Object-orientation has emerged as a viable system modeling paradigm, pro- viding novel object abstractions and behavioral characterizations of the real world. Abstraction is a mental process for managing real-world complexities at a chosen degree of granularity. As a modeling process, abstraction reflects human perception of the real world, and seeks to extract essential characteristics (proper- ties) while ignoring the unessential details. Our ability to interpret and model complex real-world systems is naturally linked to our ability to process uncertain and vague information in these abstraction processes. Like complex real-world problems, complex knowledge patterns can be decomposed into manageable and reusable units. The notion of capturing real-world knowledge into self-contained units, called frames, was introduced in artificial intelligence by Minsky. 1 Frames, like objects, were intended to provide knowledge abstractions which reflect models of human thinking in problem solving strategies. Frames encode expert knowledge about the real world, while objects result from the decomposition of the real-world problems. In the perspective of human reasoning, the real-world INTERNATIONAL JOURNAL OF INTELLIGENT SYSTEMS, VOL. 12, 137–152 (1997) 1997 John Wiley & Sons, Inc. CCC 0884-8173/97/020137-16

Intelligent systems modeling with reusable fuzzy objects

Embed Size (px)

Citation preview

Page 1: Intelligent systems modeling with reusable fuzzy objects

Intelligent Systems Modeling with ReusableFuzzy ObjectsThomas D. NdousseDepartment of Computer Science and Engineering,Northern Arizona University, Flagstaff, Arizona 86011-1560

In this article, we present a formalism for embedding fuzzy logic into object-orientedmethodology in order to deal with the uncertainty and vagueness that pervade knowledgeand object descriptions in the real world. We show how fuzzy logic can be used to representknowledge in conventional objects, while still preserving the essential features of object-oriented methodology. Fuzzy object attributes and relationships are defined and theframework for obtaining fuzzy generalizations and aggregations are formulated. Object’sattributes in this formalism are viewed as hybrids of crisp and fuzzy characterizations.Attributes with vague descriptions are fuzzified and manipulated with fuzzy rules andfuzzy set operations, while others are treated as crisp sets. In addition to the fuzzificationof the object’s attributes, each object is provided with a fuzzy knowledge base and aninference engine. The fuzzy knowledge base consists of a set of fuzzy rules and fuzzy setoperators. Objects with a knowledge base and an inference engine are referred to asintelligent objects. 1997 John Wiley & Sons, Inc.

I. INTRODUCTION

Object-orientation has emerged as a viable system modeling paradigm, pro-viding novel object abstractions and behavioral characterizations of the realworld. Abstraction is a mental process for managing real-world complexities ata chosen degree of granularity. As a modeling process, abstraction reflects humanperception of the real world, and seeks to extract essential characteristics (proper-ties) while ignoring the unessential details. Our ability to interpret and modelcomplex real-world systems is naturally linked to our ability to process uncertainand vague information in these abstraction processes. Like complex real-worldproblems, complex knowledge patterns can be decomposed into manageable andreusable units. The notion of capturing real-world knowledge into self-containedunits, called frames, was introduced in artificial intelligence by Minsky.1 Frames,like objects, were intended to provide knowledge abstractions which reflectmodels of human thinking in problem solving strategies. Frames encode expertknowledge about the real world, while objects result from the decomposition ofthe real-world problems. In the perspective of human reasoning, the real-world

INTERNATIONAL JOURNAL OF INTELLIGENT SYSTEMS, VOL. 12, 137–152 (1997) 1997 John Wiley & Sons, Inc. CCC 0884-8173/97/020137-16

Page 2: Intelligent systems modeling with reusable fuzzy objects

138 NDOUSSE

appears to be full of approximations, uncertainties, and vagueness, which areneither addressed in the frame or the object paradigms. Object-oriented technol-ogy will reflect real-world objects and knowledge representation if provisionsare made to accommodate vagueness and imprecision. This objective can beachieved by embedding some form of artificial intelligence into the existingobject-oriented framework. The embedding can take the form of a knowledgerepresentation scheme, using fuzzy logic2 as an approximate reasoning tool andas a knowledge representation scheme. Fuzzy logic implementation is languageindependent and therefore embedded fuzzy objects work with most object-oriented languages.

A. Fuzzy Logic

Traditional logic habitually assumes that symbols and predicates being ma-nipulated are precisely defined, and thus it lacks many features necessary tomodel the real world pervaded by vagueness. In contrast to traditional logic,fuzzy logic’s major strength is its ability to handle vagueness and approximatereasoning using fuzzy sets. Unlike conventional sets which deal with binary (0,1) membership functions, fuzzy sets are characterized by membership functionsin the interval [0, 1]. A fuzzy set A

˜, is a collection of elements x, defined on a

universe of discourse c, with each element characterized by a membership func-tion eA

˜ (x) on [0, 1]. Fuzzy sets commonly denoted by the following:

5 hx, eA˜ (x)ux [ c j 5 HO x

eA˜ (x)

, ux [ cJ5 HE xeA

˜ (x)ux [ cJ, (1)

where the rightmost part of (1) is a fuzzy set representation on a continuousuniverse and eA

˜ (x) [ [0, 1], is the membership function eA˜ (x) [ [0, 1]. A

conventional or crisp set is given by

A 5 hx, eA(x)ux [ c j, (2)

where the membership function eA(x) [ [0, 1] and c is the universe of discourse.A crisp set is a special case of fuzzy sets since eA(x) [ (0, 1) # eA(x) [ [0, 1].Fuzzy logic makes extensive use of fuzzy logical operators such as (AND, OR, andNOT) including linguistic hedges and extended fuzzy set operators that are usedto manipulate linguistic variables. Let A

˜5 (x, eA

˜ (x)u x [ c1) and B˜

5 (x, eB˜ (x)u

x [ c 2) be two fuzzy sets; then we have

AND B˜

⇒ A˜

` B˜

⇒ eA˜ (x) ` eB

˜ (x) ⇒ min[eA˜ (x), eB

˜ (x)] (3)

OR B˜

⇒ A˜

~ B˜

⇒ eA˜ (x) ~ eB

˜ (x) ⇒ max[eA˜ (x), eB

˜ (x)] (4)

NOT A˜

⇒ 1 2 eA˜ (x). (5)

Other fuzzy set operations can be obtained with the extension principle.3

B. Fuzzy Objects

Objects as defined in conventional object orientation require a high degreeof crispness or precision in their formulation. Specifically, the values and rangeof the objects’ attribute values are stated with a high degree of certainty. This

Page 3: Intelligent systems modeling with reusable fuzzy objects

REUSABLE FUZZY OBJECTS 139

makes it difficult to achieve a realistic model of problems characterized byimprecision and vagueness, especially when modeling intelligent systems. Fuzzyobjects provide a solution to modeling systems with vaguely described attributevalues. Fuzzy objects are conventional objects extended to capture and modelvagueness. The extension is a fuzzy representation of the objects’ attribute valueusing fuzzy sets when permissible. Attributes with precise values in the problemdomain are modeled as crisp sets. Thus, in this article, the object attributes area hybrid of fuzzy and crisp representations. Conventional objects have crisp orprecise attributes, and are therefore special cases of fuzzy objects. Fuzzy objectsprovide a mechanism for modeling and designing intelligent systems by integ-rating the capabilities of object-oriented and fuzzy concepts. In fuzzy objects,the essential features of object orientation, such as inheritance, generalization,and aggregation, are preserved. Special fuzzy set transformations are requiredto preserve these features without violating the principle of encapsulation. At-tempts to integrate fuzzy logic and object-oriented methodology are of interestamong researchers in software engineering and artificial intelligence. Leung andWong4 formulated an expert system shell which combines fuzzy concepts andobject-oriented techniques. However, their focus was on the implementationmechanism rather than on modeling. Gysenghem et al.5 used Generalized FuzzySets (GFS) concepts to handle vagueness in object-oriented database systemsby modeling an attribute as

5 (x, eA˜ (x)/(True, False)), (6)

where A˜

is the object’s attribute eA˜ (x), and (True or False) is the degree of

certainty associated with the attribute’s value. Using GFS, they presented a datamodel which attempts to deal with vagueness in database systems. Dubois etal.6 examined the issue of fuzziness in class hierarchies which occur in frame-knowledge representation as conceived by Minsky.1 Their work can be extendedto objects because of the similarity between objects and frames. A typical fuzzyattribute concept depicted in Figure 1, advocated in Ref. 6, is a triplet Way-of-Locomotion (Domain, Range, Typical-Range), value summarized in Figure 1.This triplet can be written in a compact form and interpreted as a fuzzy set A

˜5

ha, eA˜ (a)ua [ c j. In this interpretation, the domain becomes the universe of

discourse c, and the range is treated a proper fuzzy set. As a requirement for

Figure 1. A fuzzy attribute adapted from Ref. 6.

Page 4: Intelligent systems modeling with reusable fuzzy objects

140 NDOUSSE

proper fuzzy sets, at least one element in the set must have a maximum member-ship value equal to 1.0, i.e., max heA

˜ (a)j 5 1.0. The set element ‘‘Fly’’ in Figure 1,is the element which typifies a bird the most and thus is given a maximummembership of 1.0. The fuzzy set representation of the information inFigure 1 becomes

5 h(Fly, 1.0), (Walk, 0.6), (Swim, 0.2), (Crawl, 0.5), ? ? ? j (7)

where

c 5 hFly, Walk, Swim, Crawl, ? ? ?j (8)

where A˜

designates the class attribute ‘‘Way-of-Locomotion.’’ The attribute’stypical range ‘‘Fly’’ corresponds to the attribute’s element with a maximummembership value

eA˜ (Fly) 5 1.0. (9)

It is easy to see that the information in Figure 1 is contained in the compactrepresentation given in (7). The entire information in Figure 1 models asingle attribute that can be represented by a fuzzy set A

˜i . Such a representation

allows us to represent m attributes of an object with m fuzzy sets as shown inFigure 2.

The fuzzy representation in Figure 1 lacks two essential features: knowledgerepresentation and an inference engine necessary to harness reusability, theunderpinning objectives of object orientation. In order to completely definereusable fuzzy objects, we fuzzify the object’s vague attributes as shown inFigure 2, and extend conventional methods to include a fuzzy knowledge repre-sentation and inference engine. The resulting object is an intelligent or a fuzzy

Figure 2. Fuzzy set representation of an object’s attributes.

Page 5: Intelligent systems modeling with reusable fuzzy objects

REUSABLE FUZZY OBJECTS 141

Figure 3. The proposed fuzzy object architecture.

object architecture shown in Figure 3. These extensions are carried out withoutcompromising the essential features of object-orientation such as encapsulationand polymorphism. A key issue in modeling with fuzzy objects is fuzzy inheri-tance, discussed in Refs. 4, 5, 7, and 8 using set inclusion concepts.

II. FUZZIFICATION OF AN OBJECT’S ATTRIBUTES

The need for fuzzy objects arises because of the need to capture vaguenessand approximate reasoning which pervade the real-world in object-orientedmethodologies. In the real world, as in human reasoning, objects and knowledgecharacteristics can be vague or precise. These characteristics are handled in themodeling process with crisp sets and fuzzy sets, respectively. The benefits ofmodeling vague attributes as fuzzy sets are manifold: (1) Fuzzy rules (knowledgerepresentation) formulated to manipulate the object’s attributes are reduced tosimple fuzzy implications; (2) A fuzzy inference mechanism can be obtainedusing Generalized Modus Ponens; (3) Fuzzy rules and relationships can be storedusing Fuzzy Associated Memory (FAM), thus harnessing some computationalabilities of simple neural networks. The first step required to specify a fuzzyobject is to identify the vague and crisp attribute of an object and model themwith fuzzy and crisp sets, respectively. Let age and name be two attributes ofthe object student. Clearly, the attribute ‘‘name’’ which cannot be fuzzified,

Page 6: Intelligent systems modeling with reusable fuzzy objects

142 NDOUSSE

Figure 4. A simplified template for the fuzzy object ‘‘Bird’’.

is modeled by a crisp set, while the attribute ‘‘weight ’’ characterized byvague labels such as young, middle-aged, old, etc., is suitable for fuzzy set repre-sentation.

The class ‘‘bird’’ with four attributes shown in Figure 4 can be specializedto an object ‘‘Ostrich’’ in Figure 5, which assumes specific fuzzy sets as attributes,A˜

1 and A˜

2 are fuzzy sets on discrete universes of discourse while A3 and A4 have

Figure 5. Instantiation of fuzzy object ‘‘Bird’’ to Ostrich.

Page 7: Intelligent systems modeling with reusable fuzzy objects

REUSABLE FUZZY OBJECTS 143

Figure 6. Weight membership function.

continuous universes of discourse given in Figures 6 and 7. The latter object isan extension of the fuzzy attribute concept in Ref. 6.

A. Fuzzy Object Relationship Modeling

Object association, which establishes relationships between objects, consti-tutes the basis of object-oriented modeling. Conventional object-oriented meth-odologies assume crisp relationships9 between objects. This may not be represen-tative of the real world which the OOM paradigm seeks to model. Relationshipsbetween objects in the real world occur in various degrees. These types of gradedrelationships are referred to as Fuzzy Object Relationships.

Given two fuzzy objects, A˜

5 hxi , eA˜ (xi )u xi [ c1 , 1 # i # nj and

5 h yi , eB˜ ( yi )u yi [ c 2 , 1 # i # mj, we define a fuzzy object relationship as

follows:

Rf (A˜

,B˜

) 5 h(xi , yj ), ef (A˜

,B˜

)(xi , yj )j (10)

where (xi , yj ) [ c1 3 c 2 . Fuzzy relational equations of this type are extensivelyused in fuzzy reasoning and are often referred to as the compositional rule of

Figure 7. Height membership function.

Page 8: Intelligent systems modeling with reusable fuzzy objects

144 NDOUSSE

inference. The fuzzy implication A˜

R B˜

5 f (A˜

, B˜

) can be interpreted as anassociation between A

˜and B

˜or as the fuzzy rule ‘‘IF A

˜THEN B

˜’’. Fuzzy

implications and relationships can be encoded with Fuzzy Associative Memory(FAM) using correlation minimum or correlation product10 which facilitatesautomatic memory recall. For correlation maximum we have

RA˜

3B˜ 5 h(xi , yj ), eA

˜3B

˜ (xi , yj )j (11)

eA˜

3B˜ (xi , yj ) 5 heA

˜ (xi) 3 eB˜ ( yj )ux [ c1 , y [ c 2j (12)

where f (A˜

, B˜

) 5 A˜

3 B˜

. Similarly, for correlation minimum,10 the fuzzy relationis given by

RA˜•B˜ 5 h(xi , yj ), eA

˜•B˜ (xi , yj )j (13)

eA˜•B˜ (xi , yj ) 5 suphminheA

˜ (xi), eB˜ ( yj )j, x [ c1 , y [ c 2j, (14)

where f (A˜

, B˜

) 5 A˜

● B˜

. As an example, we consider two objects A˜

5 h(x1 , 0.2),(x2 , 0.5), (x3 , 1.0)j and B

˜5 h( y1 , 0.3), ( y2 , 0.9)j from which we obtain the fit

vectors a 5 (0.2, 0.5, 1.0) and b 5 (0.3, 0.9), respectively. The fuzzy relationgiven in (13) evaluates to

RA˜●B

˜ 5

x1

x2

x31

y1

0.20

0.30

0.30

y2

0.20

0.50

0.902 (15)

where RA˜

3B˜ 5 a T 3 b. Similarly, using (11) for correlation product RA

˜●B

˜ 5 a T ● b,we have

RA˜

3B˜ 5

x1

x2

x31

y1

0.60

1.00

0.90

y2

0.18

0.45

0.902. (16)

The fuzzy relation encoded in (15) with correlation product is graphicallyillustrated in Figure 8. Fuzzy relational matrices offer computational simplifica-tions when transformed into fuzzy associative memory10 which allows computa-tional recalls.

Nested relations, as shown in Figure 9, are readily represented similarly.Let A 5 RA

˜13A

˜2

and B 5 RB˜

13B˜

2encode the fuzzy relations f (A

˜, A

˜2)1 and f (B

˜1 ,

2), respectively. The overall relation between the four objects is the compositionof the fuzzy relations RA3B 5 RA

˜13A

˜23 RB

˜13B

˜2.

The membership function ef (A˜

,B˜

)(x, y) represents the degree of associationbetween the attributes of two objects, a useful concept beneficial to object model-ing. The encoding in (11) and (13) can be extended to harness the capabilities

Page 9: Intelligent systems modeling with reusable fuzzy objects

REUSABLE FUZZY OBJECTS 145

Figure 8. Fuzzy object relationship.

of Fuzzy Associate Memory (FAM) used in conjunction with neural networks.In order to illustrate the FAM capabilities, we reason as follows: Let A

˜5 h(x1 ,

0.2), (x2 , 0.5), (x3 , 1.0)j denote a known object participating in a relation specifiedby RA

˜3B

˜ and given in (17). The objective is to determine the second object, B,which participates in this relationship. This unknown object is obtained by solvingthe relational equation.

5 A˜

3 RA˜

3B˜

5 (0.20, 0.50, 1.00) 3 10.60 0.18

1.00 0.45

0.90 0.902 (17)

5 (0.3 0.9),

which indicates an exact memory recall in accordance with (15). Similarly, withthe correlation minimum we have

Figure 9. Nested fuzzy relationships.

Page 10: Intelligent systems modeling with reusable fuzzy objects

146 NDOUSSE

5 A˜

● RA˜

3B˜

5 (0.20, 0.50, 1.00) ● 10.20 0.20

0.30 0.50

0.50 0.902 (18)

5 (0.30 0.90),

The basis of (17) and (18), often referred to as fuzzy relational equations, comesfrom Fuzzy Associate Memory (FAM), a two-layer neural network architecturewidely used in fuzzy control for parallel firing of several rules. The capabilitiesof FAM associated with objects greatly enhances the modeling capabilities offuzzy objects, especially when used in conjunction with fuzzy rules and inference.With FAM capability, fuzzy object relationships can be trained dynamically usingneural network learning algorithms, producing dynamic fuzzy object architecturesuitable for Object Behavior Modeling9 (OBM). An object relation involvingA˜

5 h(x, eA˜ (x))j, B

˜5 h( y, eB

˜ ( y))j, and C˜

5 h(z, eC˜ (z))j is shown in Figure 5.

As in binary relations, the dimensions of each relational matrix representingrelations (A

˜, B), (C

˜, B

˜), and (C

˜, A

˜) is determined by the attributes’ cardinality,

respectively, given by (n 3 m), (w 3 m), and (n 3 w).The relational matrices representing the ternary fuzzy relationship in Figure

10 are given by the following:

RA˜●B

˜ 5 h(xi , yj ), eA˜●B

˜ (xi , yj )j (19)

eA˜●B

˜ (xi , yj ) 5 suphminheA˜ (x), eB

˜ ( y)jj (20)

RC˜●B

˜ 5 h(xi , yj ), eC˜●B

˜ (xi , yj )j (21)

eA˜●B

˜ (xi , yj ) 5 suphminheA˜ (x), eB

˜ ( y)jj (22)

RC˜●A

˜ 5 h(xi , yj ), eC˜●A

˜ (xi , yj )j (23)

eC˜●A

˜ (xi , yj ) 5 suphminheC (x), eA˜ ( y)jj. (24)

Similar expressions can be obtained for correlation product by direct application

Figure 10. Fuzzy ternary relation.

Page 11: Intelligent systems modeling with reusable fuzzy objects

REUSABLE FUZZY OBJECTS 147

Figure 11. A simplified fuzzy generalization/specialization.

of (11). The above technique can be generalized for the case of an n 2 aryrelationship involving n fuzzy objects. Denote a set of objects L involved in afuzzy relation such that

L 5 hA˜

1 , A˜

2 , A˜

3 , ? ? ? , A˜

nj (25)

where

i 5 hx, eA˜ (x)ux [ c i , 1 # i # nj. (26)

The fuzzy relation for these n objects is encoded in the relational matrices given by

R if (A

˜,A

˜j)

5 h(xi , xj ), ef (A˜

,A˜

j)(xi , xj ), uA

˜i , Aj [ L, i ? j, 1 # i, j # nj. (27)

III. FUZZY GENERALIZATION AND SPECIALIZATION

Generalization and specialization are useful conceptual notions in OOMand serve as the basis of object reusability. Their implementation mechanism isknown as inheritance. In the context of these concepts, an object with generalattributes is designated as a superobject. Reusable knowledge components is an

Page 12: Intelligent systems modeling with reusable fuzzy objects

148 NDOUSSE

important concept in object-oriented intelligent systems. The vehicles for thisconcept are fuzzy generalization and aggregation, its implementation mechanismis fuzzy inheritance. Fuzzy generalization and aggregation shown in Figure 11require transformation of fuzzy sets. In fuzzy generalization, the degree to whichan object ‘‘is a ’’ generalized object is an important issue. For example, in Figure12 we are interested in the degree to which Sula might be a student. Statedmathematically, it is the set inclusion issue stated as follows:

, A˜

⇔ ;x [ c : eA˜ (x) # eB

˜ (x). (28)

The issues of fuzzy set inclusion are examined in Ref. 4 using fuzzy set modifierconcepts, and in Ref. 5 using various inclusion functions derived with the fuzzyset extension principles. As advocated in Ref. 4, fuzzy inclusion can be viewedas a mapping function f :

, A˜

⇔ B˜

—Rf

, ;x [ c : eA˜ (x) # eB

˜ (x). (29)

In Figures 11 and 12, the object Sula, denoted by A˜

5 hx, eA˜ (x)j is a specialization

of the object students B˜

5 hx, eB˜ (x)j, with a mapping function f : x 2 such that

eB˜ (x) 5 (eA

˜ (x))2 (30)

where eB˜ (x) and eB

˜ (x) denote ‘‘Young’’ and ‘‘VeryYoung,’’ respectively.

Figure 12. Fuzzy set transformation in generalization/specialization.

Page 13: Intelligent systems modeling with reusable fuzzy objects

REUSABLE FUZZY OBJECTS 149

Figure 13. Fuzzy aggregation using three base objects.

A. Fuzzy Aggregation

Object aggregation, also known as ‘‘whole-part ’’ is a concept that is pervasivein human thinking and problem-solving strategies. It is used to group objects(A

˜1 , A

˜2 , A

˜n , ? ? ? A

˜n ) whose collective characteristics represent a unified super

object O˜

, as shown in Figure 13. In a fuzzy environment, we expect O˜

to be afuzzy object such that

5 hA˜

i , eA˜

i(A

˜i)uA

˜i [ V, 1 # i # nj, (31)

where V 5 ~i

c i , and c i is some universe of discourse defined in

i 5 hx, eA˜

i(x)ux [ c i , i $ 1j. (32)

Upon examining (31) and (32), we note that (31) is a type-2 fuzzy set3 which canbe obtained with the extension principle. The use of type-2 fuzzy sets in thetransformation of fuzzy sets in inheritance is examined in detail in Ref. 11 andare not included in this article. Type-2 fuzzy sets are useful in modeling fuzzyhierarchies, which occur frequently in inheritance chains such as fuzzy generaliza-tions and aggregations. For example, let c 5 hA

˜1 5 Dave, A

˜2 5 Pat, A

˜3 5 Kate j

be a set of students. A type-2 fuzzy set O˜

denoting these students’ scores asshown in Figure 13 is given by

score 5 O˜

5 hA˜

i , eA˜

i(A

˜i)uA

˜i [ c, 1 # i # 3j

(33)5 h(Dave, High), (Pat, Average), (Kate, VeryHigh)j

where High, Average, and Low are fuzzy sets given by the following:

Average 5 h(0.3, 0.3), (0.7, 0.4), (1.0, 0.5), (0.7, 0.6)j (34)

High 5 h(0.4, 0.7), (0.7, 0.8), (0.9, 0.9), (1.0, 1.0)j (35)

In particular, the linguistic hedge VeryHigh3 in (33) is computed to be

VeryHigh 5 h(0.16, 0.7), (0.49, 0.8), (0.81, 0.9), (1.0, 1.0)j. (36)

Page 14: Intelligent systems modeling with reusable fuzzy objects

150 NDOUSSE

Type-2 fuzzy sets are thus suitable to analyze fuzzy object aggregations as illus-trated in Figure 13. Membership functions such as tall, short, heavy, around 10,etc., frequently used in human thinking, can be modeled with type-2 fuzzy setsand could be incorporated in FOOM.

B. Object Knowledge Base and Inference Engine

Consider the object knowledge engine shown in Figure 2, which consists ofa fuzzy knowledge base and a fuzzy inference engine. The object knowledgebase is a collection of fuzzy rules. Let A

˜5 hu, eA

˜ (u)j, B˜

5 hv, eB˜ (v)j, be two

fuzzy sets. A simple implication which relates these two fuzzy sets may take theform of

Rule: If A˜

then B˜

. (37)

where the fuzzy rule in (37) is the fuzzy implication A˜

R B˜

, which can be encodedwith the fuzzy matrix M

˜

1 5 a T ● b, M˜

2 5 a T 3 b. (38)

where a and b be two vectors consisting of all membership values of A˜

and B˜

,respectively. Fuzzy matrices M

˜1 and M

˜2 are similar to the fuzzy relational matrices

in (17) and (18). Complicated rules which use combinations of fuzzy AND, NOT,and OR such as

Rule: If A˜

AND B˜

OR C˜

then D˜

(39)

are also possible. When desirable, defuzzification techniques can be used toobtain crisp values from the evaluation of fuzzy rules. The key to fuzzy inferencethat evaluates fuzzy rules such as

Rule: If x is A˜

then y is B˜

(40)

is generalized Modus Ponens. The evaluation algorithm GMP is based on the fol-lowing:

Antecedent (1): If x is A˜

then y is B˜

Antecedent (2): x is A˜

9

Conclusion: y 9 is B 9

(41)

where the consequent B˜

9 is deduced from Antecedent(1) and Antecedent(2) bytaking the max–min composition of the fuzzy set A

˜9, and the fuzzy relation

R B˜

is obtained from the fuzzy implication ‘‘If A˜

then B˜

’’. Stated in terms offuzzy operations, the inference in (41) can be performed as follows:

eB˜

9 (v) 5 ~u

heA˜

9 (u)j ` eA˜

RB˜ (u, v).

(42)B˜

9 5 A˜

9 n (A˜

R B˜

),

When the fuzzy set A˜

9, is a singleton u0 , eA˜

9 (u0) 5 1, eA9(u) 5 0, ;(u0 ? u), theconsequent B

˜9 is simplified and computed as follows:

Page 15: Intelligent systems modeling with reusable fuzzy objects

REUSABLE FUZZY OBJECTS 151

Figure 14. Evaluation of a simple rule.

9 5 A9 n (A˜

R B˜

). (43)

The membership function of B˜

9 is computed using the fuzzy composition ruleas follows:

eB˜

9 (v) 5 ~u

heA˜

9 (u)j ` eA˜

RB˜ (u, v)

5 ~u

heA˜

9 `heA˜

RB˜ (u, v)j ` h1 ` eA

˜RB

˜ (u0 , u)jj (44)

5 eA˜

RB˜ (u0 , v).

This fuzzy inference scheme serves as the basis to formulate and evaluate thefuzzy rules. The truth value of the fuzzy proposition ‘‘ ux is A

˜, y is B

˜u’’ used in

this article is evaluated as follows:

ux is A˜

, y is B˜

u 5 A˜

(x) ` B˜

( y)(45)

5 minheA˜ (x), eB

˜ ( y)j.

Similarly, the fuzzy proposition ‘‘ ux is A˜

, or y is B˜

u ’’ is evaluated as

ux is A˜

1 , y is B˜

u 5 A˜

(x) ~ B˜

( y)(46)

5 maxheA˜ (x), eB

˜ ( y)j.

A detailed analysis of fuzzy implications and their applications can be found inRef. 3. The object knowledge base consists of a set of fuzzy rules in the form of‘‘IF . . . . THEN . . . . ELSE’’. The latter rule can be readily interpreted usingModus Ponens, graphically shown in Figure 14.

Complicated fuzzy rules can be easily formed using the fuzzy logical opera-tors AND, OR, and NOT, as well as extended type-2 fuzzy set operators. Theuse of fuzzy logic as a knowledge representation technique and an inferencemechanism eliminated the need for an expert system shell widely used in conjunc-tion with LISP and Prolog approaches.

IV. CONCLUSION

Our motivation for this work is based on the fact that certain real-worldobjects are characterized by vagueness and imprecision, and thus cannot beaccurately modeled with conventional object-oriented techniques. As a solutionto this limitation of the current OOM approach, we presented a scheme forembedding fuzzy logic into objects, while preserving the essential aspects of theobject-oriented paradigm. We referred to fuzzy objects as soft objects to empha-

Page 16: Intelligent systems modeling with reusable fuzzy objects

152 NDOUSSE

size their elastic abilities that accommodate progressive vagueness. Importantfeatures of the OO paradigm such as fuzzy generalization, fuzzy specialization,and fuzzy aggregation have been examined. Conceptual notions of OO modelingsuch as relations among fuzzy objects were also examined, establishing a frame-work for fuzzy relational object-database modeling as presented in Ref. 8. Ourmajor contribution was the introduction of the notion of intelligent objects,obtained by extending fuzzy objects to include an inference engine and a knowl-edge base (fuzzy rules). With the introduction of fuzzy objects, intelligent systemsmodeling and design can harness the benefits of OOM and fuzzy sets. However,fuzzy objects introduce a computational favor to OOM via fuzzy set manipulation.Aspects of these computations are evident in fuzzy relations, fuzzy generalization,and fuzzy inference. In this article, the concept of intelligent frame or objectsbased on fuzzy logic has been introduced. Fuzzy generalization and aggregationinvolving fuzzy set transformation in the form of fuzzy set inclusion requiresfurther investigation and understanding beyond what is presented in this article. Itis of interest to understand the impact of multilevel generalization on membershipfunctions and on the universe of discourse since inherited attributes can bemodified. Equally important is the integration of crisp attributes and methodswith fuzzy ones. Finally, object behavior modeling which examines fuzzy transi-tion, fuzzy triggers, fuzzy events, and transitions, suitable for modeling real-timesystems, is not addressed in this article.

Sponsored in part by the US–Japan Center, WSU.

References

1. M.L. Minsky, Semantic Information Processing, MIT Press, 1968.2. L. Zadeh, ‘‘Fuzzy sets,’’ Inform. Control, 8, 338–353 (1965).3. H.J. Zimmermann, Fuzzy Set Theory and its Applications, Kluwer Academic Publish-

ers, Boston, 1990.4. K.S. Leung and M.H. Wong, ‘‘Fuzzy concepts in an object-oriented expert system

shell,’’ Int. J. Intell. Syst., 7, 171–192 (1992).5. N.V. Gysenghem, et al., ‘‘UFO: Uncertainty and fuzziness in object-oriented model-

ing,’’ IEEE Proc. Int. Conf. on Fuzzy Systems, II, 773–778 (1993).6. D. Dubois et al., ‘‘Vagueness, typicality, and uncertainty in class hierarchies,’’ Int. J.

Int. Syst., 6, 167–187 (1991).7. R. George et al., ‘‘Modeling class hierarchy in the fuzzy object-oriented data model,’’

Fuzzy Sets and Syst., 60, 259–272 (1993).8. G. Bordogna et al., ‘‘Fuzzy object-oriented data model,’’ Proc. of the 1st IEEE Conf.

on Evolutionary Computing, Orlando, FL, June 1994, pp. 313–318.9. D. Embley et al., Object-Oriented Systems Analysis, Prentice-Hall, Englewood Cliffs,

NJ, 1992.10. B. Kosko, Neural Networks and Fuzzy Systems, Prentice-Hall, Englewood Cliffs,

NJ, 1992.11. D.T. Ndousse, ‘‘Object-oriented expert systems with fuzzy objects as reusable knowledge

components,’’ in preparation.