Professional Documents
Culture Documents
Abstract. The case-based reasoning (CBR) architecture described in this paper represents a substantive ad-
vancement in the representation of case-knowledge. It addresses three major problems found in current CBR
schemes: 1) Insufficient treatment of abstract case features’ context-dependent characteristics. 2) Lack of a me-
thodical support for atomic and structured case features that contain and represent imprecisely specified quantities.
3) And little account for clustering and organising cognate cases into conceptually overlapping categories. To
overcome the representational inadequacy resulting from those deficiencies, this work proposes two modelling
fundamentals, namely, fuzzy primitive and fuzzy complex abstract features. These allow a flexible, polymorphic
encoding of case characteristics as real numbers, linguistic terms, fuzzy numbers and fuzzy complex objects
respectively. Based on this concept, it is possible to systematically organise a case base in fuzzy categories,
reflecting real-world case clusters. In the presented scheme, a prototype case and its associated approximation
scales form the basis to realise a versatile mechanism to represent the context-specific idiosyncrasies of fuzzy
abstract case features. Case categories, fuzzy abstract features, cases, and the approximation scale concept are
modelled as self-contained, operational entities. They co-operatively concert their services when they categorise
an unclassified problem description (target case), and locate relevant stored cases. Applied to the Coronary Heart
Disease risk assessment domain, the proposed architecture has proven to be highly adequate for capturing and
efficiently processing case-knowledge. Moreover, as this scheme is designed upon well-established object-oriented
principles, it has been shown that it can seamlessly integrate in a wider, more general knowledge management
regime.
Keywords: case-based reasoning, knowledge representation, fuzzy logic, soft computing, object-orientation
Another problem found in “traditional” case- finishes with some conclusions and an outlook to future
knowledge representation schemes is the lack of work.
support for context; case attributes or features are
usually treated in a rigid, uniform manner. For most
but the simplest applications this treatment of case 2. The C4 Case-Knowledge Architecture
characteristics is not satisfactory [10, 12]. In the C4
approach, a prototypical case is stored with each case The following gives a concise overview of the over-
category. Amongst other things, such a prototype serves all C4 case-knowledge architecture so as to provide a
to express the context-specific properties a case feature suitable context for the understanding of the fuzzy ab-
type may assume in the “surroundings” of a particular stract case feature concept proposed in this paper. For
category. a more comprehensive description of the C4 compo-
Finally, when specifying a query case or a stored nents that are not considered here in great detail refer
base case, it is often the case that constituent val- to [14].
ues can not be articulated precisely. This uncertainty The C4 case-knowledge architecture realises a case
may be caused by partial ignorance, unquantifiable or memory organisation and classification system that
incomplete-information. Such situations are the rule, groups conceptually cognate, self-contained case en-
rather than the exception, and humans resort to fuzzily tities into fuzzy categories. A category represents the
quantified specifications to cope with this sort of prob- attribute-based intention or concept of the cases it or-
lem [10, 15, 26, 29]. The C4 approach proposes a ganises. As cases are clustered into categories in accor-
systematic method to represent and use fuzzy case fea- dance with their membership degree—rather than in a
tures in a context-sensitive fashion. Based on fuzzy binary “yes-or-no” fashion—the concept boundaries of
complex and fuzzy primitive abstract features, cases a category are said to be fuzzy. In fact, a single case may
can be organised in conceptually overlapping cate- be an instance of more than just one category, as long
gories, stored and retrieved via a classification and as its membership degree, in the according category,
similarity regime that methodically combines feature is above some pre-specified threshold. The fuzzy con-
values encoded in mixed fuzzy and crisp format. This cept formation scheme, realised in the C4 architecture,
concept significantly contributes to the flexibility and is based on fuzzy abstract case features. Fuzzy abstract
expressiveness with which case-knowledge can be features form the fundamental basic case-knowledge
represented. modelling primitives in a C4 system.
As the above-mentioned concepts greatly add to the To address representational adequacy as well as gen-
representational adequacy and epistemological sound- erality and performance issues, the C4 case-knowledge
ness of case-knowledge representation strategies, the representation scheme is based on a combination of the
C4 architecture is considered as “advanced”. More- EBR and MBR approaches [2]. The former type of sys-
over, on the grounds of strict compliance with OO prin- tem revolves around the classification of unclassified
ciples and ODMG’s [8] object model, it has been shown cases, whereas the latter focuses on a memory-like case
that the C4 scheme can serve as a basis for advanced organisation architecture. The breakdown of a C4 case
knowledge management [14]. base is orthogonal: Contexts and categories represent
The C4 scheme is realised as a prototype C++ imple- the case base’s conceptual and organisational structure
mentation applied to the Coronary Heart Disease risk (memorising, reminding), and category instances re-
assessment domain. flect the actual cases themselves.
The remainder of the paper is organised as follows: Contexts and categories are deployed to bundle to-
Section 2 gives an overview of the presented fuzzy gether related knowledge items at different levels of ab-
case-knowledge representation scheme. Sections 2.1 straction and granularity. Forming a navigational struc-
through to 2.2.4 demonstrate and define the no- ture, contexts and categories also embody operational
tion of fuzzy primitive abstract features along with CBR services that are used to locate relevant case clus-
their constituent components (e.g., approximation ters, and to identify the most relevant case within a
scales, p-functions, etc). In the light of the Coro- category. One important operation, for example, is that
nary Heart Disease Risk Assessment domain Sec- to determine the category membership of an unclas-
tions 2.3 to 2.3.3 discuss and define the concept sified target case. The context/category network of a
of fuzzy complex abstract features. And Section 3 C4 case base is realised as a rooted, acyclic, directed
P1: VTL/EHE
Applied Intelligence KL450-01-Dubitzky May 13, 1997 15:35
for primitive abstract features include Age, Height, The first expression constructs the Height instance
Figure, and possible instances thereof are <22> <179> and binds it to the instance variable crisp.
(years), <180> (cm) and <60> (cm waist circumfer- The second and third result in the bindings lt :=
ence). An example for a complex abstract feature is <TALL> (representing the linguistic term tall), and fn
Body, where Body may be described by the feature ag- := <"ROUGHLY", 180> (the fuzzy number roughly
gregate [ Height, Figure ]. A particular Body 180 cm).
instance b may be given by b := <180, 60>. Note, The above-introduced notion can be extended to
that the above feature quantities are defined in crisp fuzzy complex abstract features. This means that a
format. fuzzy complex abstract feature can assume a crisp
Frequently, however, humans can not obtain or as- value, a holistic linguistic term, and a holistic fuzzy
sess a value for a feature precisely. This uncertainty value.
may come from sources such as partial ignorance, un- To illustrate this, a simple example from a fictitious
quantifiable, incomplete or non-obtainable informa- dating agency case base is presented below. Two fuzzy
tion [9]. For example, a suspect s might be described complex abstract feature classes are defined as follows
by a witness by s := <"TALL", "SLIM">. To cap- (the notation “C ::= [{S}, {M}]” is used to denote the
ture the imprecision of human behaviour and to take definition of an object class C in terms of its structural
into account human subjectivity, it is proposed to ex- S and operational M properties):
tend the abstract case feature notion by introducing
fuzzy abstract features. Fuzzy abstract features should Body ::= [ { Height: FPAF; Figure: FPAF
increase the flexibility and naturalness with which CBR feature }, { (* methods *) } ].
concepts can be expressed. Idol ::= [ { Age: FPAF; body: Body },
In the C4 scheme, there are two types of fuzzy ab- { (* methods *) } ].
stract features: fuzzy complex abstract feature and fuzzy Note, the class Body is defined in terms of two fuzzy
primitive abstract feature. Fuzzy complex abstract fea- primitive abstract features, namely Height and Fig-
tures are defined recursively in terms of fuzzy primitive ure; both are of system-supplied type FPAF. The class
abstract features. Idol is composed of a primitive and a complex fea-
To allow for a flexible mixed format encoding of case ture, Age and Body respectively. Not indicated in the
features, fuzzy primitive abstract features are modelled definition is the fact that both complex classes, Body
by means of the following concepts: crisp number, lin- as well as Idol, are derived from the generic, system-
guistic term and fuzzy number. A crisp number con- defined fuzzy complex abstract feature class FCAF (see
stitutes a real number. Humans employ both linguistic later sections).
terms and fuzzy numbers to express uncertainty. Lin- The following specifications instantiate the two
guistic terms are formed from natural language words fuzzy complex abstract feature classes Body and Idol:
and expressions (e.g., very, poor, more or less accept-
able, etc.). Whereas fuzzy numbers are constructed b0 := < Create( ("ROUGHLY", 160),
by means of an inexact proximity quantifier and a cor- "VERY SLIM" ) ----> Body >
responding crisp number. A Comfortable-Room- mary := < Create( 35, (b0) ) --
--> Idol >
Temperature feature instance t, for example, could jane := < Create( "LIKE", (mary) ) --
--> Idol >
be specified by t := <"AROUND", 21> (around 21 peter := < Create( "VERY ATTRACTIVE" )
degrees Celsius). The proposed fuzzy primitive ab- --
--> Idol >
stract feature data type is polymorphic since it can as-
sume fuzzy as well as crisp instance values. To briefly b1 := < Create( 184, "SLIM" ) --
--> Body >
illustrate this, consider the fuzzy primitive abstract fea- paul := < Create( "OLD", (b1) ) --
--> Idol >
ture Height again. In order to instantiate the Height
feature, the overloaded Create message is sent to the The expressions yield the fuzzy complex abstract
class Height [8, 11]2 : feature instances that are bound to the object variables
mary, jane, peter and paul respectively:
crisp := < Create(179) --
--> Height >
lt := < Create("TALL") --
--> Height >
mary := < 35, < <"ROUGHLY",160>,
fn := < Create("ROUGHLY",180) "VERY SLIM" > >, jane := <"LIKE",
--
--> Height > (mary) >, peter := < "VERY
P1: VTL/EHE
Applied Intelligence KL450-01-Dubitzky May 13, 1997 15:35
x (x ∈ U ). Consider, for example, the following state- feature type F and a category C, where instances of
ment (see also Fig. 2): “The income of 10,000 units F occur, there exists only one approximation scale
per year is equivalent to that of roughly 5,000”. Ac- (anchored at the prototype case), so that the scale
cording to the relevant fuzzy number in the diagram, does not have to be maintained by every single case
this statement is true to a degree of 0.53. stored in an individual category.
expressed a high degree of satisfaction and confidence function and the line max(x) = x intersect. Similarly,
in the system’s behaviour. SL (x)FN represents the µ(x)FN value at the intersection
of the left “leg” of µ(x)FN and the line min(x) = 1− x.
2.2.3. Similarity and Membership Functions. In the (Note, max(x) and min(x) are defined with respect to
C4 architecture, it is explicitly allowed to encode prim- the normalised interval 0 ≤ x ≤ 1.)
itive abstract features using a fuzzy or crisp format. Applied to the example and the fuzzy number (i.e.,
When comparing features involving fuzzy values (lin- linguistic term) poor, the functions max(Money) =
guistic terms, fuzzy numbers), the decision of whether (1/50,000) · Money, and min(Money) = 1 −
one feature is worse or better than the other becomes (1/50,000) · Money can be determined (see Fig. 3).
a non-trivial affair! The problem stems from the fact And the membership function for the term poor can be
that fuzzy numbers and linguistic terms represent many derived as follows:
possible real numbers that have different membership
+(1/5,000)Money,
degrees. That is to say, unlike real numbers, fuzzy num-
for 0 ≤ Money ≤ 5,000
bers do not always yield a totally ordered set [15]. µ(Money)poor =
To illustrate this, the Money feature in the sports
−(1/50,000)Money + 2,
person context CSP is considered again (see Fig. 3). for 5,000 < Money ≤ 10,000
Suppose two base cases with the corresponding Money (4)
feature values b1 and b2 , given by b1 := < "POOR"
> and b2 := < "APPROXIMATELY" 45,000 >, With max(Money) and Eq. (4), upper part, the right
are stored in the CSP category. The decision, based score S R (Money)poor = 0.18 is established. Likewise,
on the abstract feature Money, as to which of the base through min(Money) and Eq. (4), lower part, the left
cases is more similar to a target case t (tMoney := < score evaluates to: SL (Money)poor = 0.91. Now, with
"WELL-OFF" >) is not straightforward. Eq. (3), the (total) crisp score for the fuzzy number
Chen and Hwang discuss several methods that labelled poor can be computed as: CS(Money)poor =
deal with the aggregation and ranking of entities de- 0.14.
scribed by fuzzy attributes [10]. The C4 approach In a similar fashion, the crisp scores
is based on a relatively new and highly performant CS(Money)well-off = 0.54, and CS(Money)rich = 0.83
method [10, p. 465], devised by Chen and Hwang, are worked out (the normalised fuzzy number approx-
that converts fuzzy numbers and linguistic terms into imately 45,000, in the example, corresponds to the lin-
crisp scores. These can then be used in conjunction guistic term rich).
with a traditional Multiple Attribute Decision Method Since the crisp scores CS(Money)i constitute real
(MADM) such as TOPSIS (Technique for Order Pref- numbers, it is now possible to resort to “traditional”
erence by Similarity to Ideal Solution). The Crisp Score ranking schemes in order to solve the similarity prob-
Method requires that the fuzzy numbers satisfy the lem stated above. The Distance from Target Method
commonly assumed normal and convex criteria; the (see Eq. (5)) is employed to compute the distances
method has proven to be robust against most types of db1 t = 0.40 between b1 and t, and db2 t = 0.29 between
intersection that may occur between fuzzy sets [10]. b2 and t. So, within the SportsPerson category, an
Chen and Hwang have also shown the usefulness of individual t, whose income is described by well-off, is,
the method in MADM problems containing a mixture at least Money-wise, more similar to an individual b2
of crisp and fuzzy data. (approximately 45,000 or rich) than to b1 ( poor).
The following demonstrates this method. The crisp
score CS(Money)poor for the fuzzy number labelled by 2.2.4. Definition of Fuzzy Primitive Abstract Features.
linguistic term poor is computed (see scale sSP and To define a fuzzy primitive abstract feature and its pro-
membership function µ(Money)poor in Fig. 3). totype derivative, two more fundamental C4 compo-
In general, for a fuzzy number FN, the formula to nents, namely the linguistic term and the fuzzy number
compute the crisp score S(x)FN is defined as follows: classes, need to be specified. For each C4 case base
there exists a globally pre-defined set T of linguistic
CS(x)FN = [S R (x)FN + 1 − SL (x)FN ]/2 (3) terms: T = {t1 , t2 , . . . , tn } (each term ti ∈ T is con-
structed from an atomic token or character sequence).
In the equation, the score S R (x)FN represents the The set T is established by the domain expert. All lin-
µ(x)FN value where the right “leg” of the µ(x)FN guistic expressions used to describe fuzzy objects are
P1: VTL/EHE
Applied Intelligence KL450-01-Dubitzky May 13, 1997 15:35
derived from T . A subset P of T contains “close to” the polymorphic LT methods (e.g., AddTerms,
or “proximity” terms (examples include nearly, more set_term). Now, the linguistic term class LT-
or less, roughly). These terms serve to express the C4 Money can be seeded with linguistic terms (e.g.,
fuzzy number construct. Non-fuzzy-number linguis- AddTerms("POOR", "WELL_OFF")-- -->LTMoney ),
tic terms are formed from elements of the linguistic instantiated and used (e.g., set_term). For the sake
expression set E (e.g., very costly, low, extremely haz- of brevity, this is not demonstrated.
ardous), E = T − P. Note, a set X ⊂ T , chosen
to express the linguistic terms for a particular abstract Definition 2. On the analogy of the class LT, each
feature F, remains constant for F instances across the normalised fuzzy number in a C4 system is defined
entire case base! through the generic class FN. FN consists of a shared
set of proximity terms (Pool ⊂ P), a value a FN instance
Definition 1. The linguistic term class LT is defined can assume—proximity term prox ∈ P and real number
in terms of the set Pool of linguistic expressions (where r —and a set of methods.
Pool ⊂ E). The instance variable term represents the
linguistic expression that a LT instance can assume; FN::=[ { prox: T; r: Real; class Pool:
term must be drawn from the “allowed” set Pool of set <T> },
linguistic expressions (this constraint has to be en- { class Create, class AddTerms,
forced by the Create and accessor functions defined get_term, get_number, equal . . . }
on LT). Pool is a class-level variable, this means that ].
the associated set is shared by all instances of type
LT. In the definition, the meaning of the methods is anal-
ogous to those defined on the linguistic term class
above. Referring to the Money feature again, the
LT::=[ { term: T; class Pool: set <T>},
fuzzy number construct is illustrated by means of an
{ class Create, class AddTerms,
example:
set_term, get_term, equal . . . }
].
FN ⊂ FNMoney ::=
[ { currency: String; scale_point:
The methods set term, get term, equal, . . .
Real },
express instance-level access methods, comparison op-
{ class Create, class AddTerms,
erators, etc. Create and AddTerms represent class-
get_term, get_number, equal,
level methods. Note, the class LT is a generic class
print . . . }
(it is never directly instantiated), user-defined classes
].
have to be derived from LT accordingly.
The following example illustrates the above con-
Note, the reason why a user would like to supply his
cepts. The class LTMoney represents the linguistic
or her own FN version is to accommodate and enforce
terms used in connection with the previously intro-
application-specific semantics and constraints.
duced Money feature. Via the is-a or inheritance re-
With the definitions of the general linguistic term and
lation (denoted by ⊂), the user-defined linguistic term
fuzzy number classes, given above, it is now possible to
class LTMoney inherits from the system-defined class
define the fuzzy primitive abstract feature class FPAF.
LT.
For reasons that are explained in Section 2.3.3, the class
LT ⊂ LTMoney ::= FPAF has a generic, system-defined superclass FAF
[ { currency: String }, (fuzzy abstract feature).
{ class Create, class AddTerms,
set_term, get_term, equal, Definition 3. C4’s fuzzy primitive abstract feature
print . . . } class FPAF can simultaneously represent a particular
]. feature instance value in three different formats (repre-
sentational polymorphism), namely as linguistic term
The LTMoney class can add new data members term, fuzzy number f num, and real number r respec-
(e.g., currency), methods (e.g., print) and redefine tively. Through the (static) polymorphic similarity
P1: VTL/EHE
Applied Intelligence KL450-01-Dubitzky May 13, 1997 15:35
method, a FPAF instance can compare itself with a an approximation scale scale. The methods prototypi-
compatible feature value. cality and similarity compute the according scores ( p,
sim) for a compatible target case feature t af value and
FAF ⊂ FPAF::=[ { term: LT; f_num: FN; r: base case feature respectively (t af value, b af value).
Real; proto: PrototypeFPAF },
{ class Create, similarity, Prototype ⊂ PrototypeFPAF ::=
α, β, . . . } [ { term: LT; f_num: FN; r: Real;
]; weight: Real; scale:
similarity ::= [ (in t_af_value: LT; ApproxScale },
out sim: Real) ]; { prototypicality, similarity,
similarity ::= [ (in t_af_value: FN; α, β, . . . }
out sim: Real) ]; ];
similarity ::= [ (in t_af_value: Real; prototypicality ::= [ (in
out sim: Real) ]; t_af_value: LT; out p:
similarity ::= [ (in t_af_value: FPAF; Real) ];
out sim: Real) ]. similarity ::= [ (in t_af_value,
b_af_value: LT; out sim:
To accomplish above-defined functionality, each Real) ];
FPAF feature instance participates in a binary relation-
ship with a prototype primitive abstract feature object Note, the methods prototypicality and simi-
proto. For a particular case category C and a FPAF larity are defined polymorphically (overloaded ver-
class F, the relationship R between the set I of F’s sions are not shown in the definition), so as to accept
instances in C, and the associated prototype object p, input values of the type FPAF, FN, Real and LT.
is defined by (1-to-many): R : I (M) ↔(1) p. That The generic superclass Prototype is needed to de-
is, each FPAF instance in a category is associated with fine the PrototypeFCAF class (see below).
a single prototypical counterpart. This concept allows
to represent context-specific feature characteristics. To Definition 5. On the analogy of the methods proto-
achieve such a context-dependency, the similarity typicality and similarity, specified in Definition 4, the
methods defined on FPAF delegate the actual compu- class ApproxScale defines the corresponding coun-
tation to the corresponding method defined on proto. terparts. The collection type member scale realises
By routing the similarity strategy through components the ordered set of tuples consisting of: mem function
defined on the base cases themselves, the case designer (membership function), f num (normalised fuzzy num-
has an “intervention point” to check and enforce case- ber), term (linguistic term), and cs (pre-computed crisp
level semantics. score). The member p function represents an index
It is important to note that the member classes LT, into the scales vector that identifies the p-function of
FN, and PrototypeFPAF are modelled as generic a particular ApproxScale instance.
classes, this means that instances of their subclasses
(e.g., LTMoney) can participate to form an actual fea- ApproxScale ::=
ture instance. [ { scales: vector< term: LT; f_num:
Before the FPAF feature class can be illustrated with FN; cs: Real; mem_function:
an example, it is necessary to look at the definitions MF >; p_function: Integer },
of the classes PrototypeFPAF and ApproxScale { prototypicality, similarity,
(approximation scale). convert, α, β, . . . }
];
Definition 4. The ProtoypeFPAF class is akin to prototypicality ::= [ (in
the FPAF class defined above, in that, it can take on t_af_value: LT; out p: Real) ];
instance values of mixed fuzzy and crisp format. How- similarity ::= [ (in t_af_value,
ever, its main difference is the capability to establish b_af_value: LT; out sim:
a prototypicality degree p for a target case feature Real) ];
t af value. It defines the weight slot (expressing the convert ::= [ (in r: Real; out
category-specific relevance weight of a feature), and t: LT) ].
P1: VTL/EHE
Applied Intelligence KL450-01-Dubitzky May 13, 1997 15:35
is established in a recursive fashion; recursion termi- scales are carefully established for each individual
nates at the level of fuzzy primitive abstract features. fuzzy abstract feature within the context of a specific
At this level, the previously discussed approximation category. In fact, the initial knowledge acquisition stage
scales (held in a prototype case for each category) come has shown that the approximation scales serve as an
to bear to compute the similarity/prototypicality scores elegant communication platform between the domain
of corresponding fuzzy primitive abstract features. expert and knowledge engineer.
However, when aggregated scores are to be estab- The solution to question (2) is normalisation; this
lished, for a complex feature made up of constituents strategy fits well into the C4 scheme involving nor-
of different format (including complex features), two malised weights, prototypicality and membership de-
questions arise: grees, and crisp scores respectively.
So eventually, when comparing and ranking cases,
1) How can differently encoded sub-features of a com- a C4 system processes the crisp score and normalised
plex abstract feature be systematically combined in real number of corresponding features. If, and only if,
order to reach at an overall score a that can be com- the target case feature value t and the base case fea-
pared with another score b? ture value b are given in crisp number format, then
2) In addition to (1), if, as it is commonly the case with t’s and b’s normalised values (indicated by “*”) are
MADM and CBR problems, the attributes’ units of used. For example, ht (age = 35), b(age = 51)i
measurement are incommensurable, how can mean- normalise
−→ ht(age∗ = 0.30), b(age∗ = 0.45)i. This is in
ingful collective scores be formed? keeping with the original intention of fuzzy set theory
which is to incorporate human imperfect perceptions,
In the literature [10] several methods are pro-
subjective judgement, and imperfect information into
posed that deal with problem (1). For the C4 frame-
a decision model. When decision data can be precisely
work, the Crisp Score Method has been chosen (see
captured, such data should not be forced into a fuzzy
Section 2.2.3), as it, via crisp scores, allows to fall back
format because it will complicate the already complex
upon non-fuzzy schemes (e.g., MAXIMAX, EBA,
decision-making problem.
LAM). Moreover, this method has been shown to be
Otherwise, for all other possible combinations, crisp
successful in real-world problems where it is often
scores (indicated by “+”) for t and/or b must be es-
the case that both crisp and fuzzy data coexist [10,
tablished. These scores are then subjected to the ac-
(pp. 465–486), 13]. Another appealing feature of the
cording method. For example, ht (Total = “HIGH”),
method is its robustness—i.e., its ability to produce use- crisp score
ful orderings—against intersecting fuzzy sets (“over- b(Total = “VERY HIGH”)i −→ ht (Total+ =
lapping” fuzzy numbers). Finally, the Crisp Score 0.56), b(Total+ = 0.74)i (compare values with left
Method has proven to be superior, in terms of per- scale in Fig. 6). In case of a mixed fuzzy/crisp feature
formance, over other approaches in applications where value combination (e.g., ht (Total = “VERY HIGH”),
hundreds/thousands alternatives (cases) with few fea- b(Total = 7.50)i) the crisp value c must first be con-
tures, or few alternatives (cases) with hundreds of fea- verted into that fuzzy number Ai whose x̂i is closest to
tures need to be ranked [10]. c, i.e., that Ai where min(|c − x̂i |). For this to work
Originally, in the first phase, the Crisp Score Method it is required that for each Ai ∃ a unique x̂i such that
requires the pre-instalment of an ad hoc scale conglom- µ(x̂i ) Ai = 1, for µ(xi ) Ai : U → [0, 1], xi ∈ U . For
fuzzify
erate. In the C4 architecture, however, this somewhat example, b(Total = 7.50) −→ b(Total0 = “HIGH”).
problematic approach is avoided, since approximation This conversion is somewhat ad hoc as it does not take
Figure 6. Approximation scales for features Total depending on the categories CI , CII and CIII (from left to right).
P1: VTL/EHE
Applied Intelligence KL450-01-Dubitzky May 13, 1997 15:35
into account a partial membership of c in Ai . In [13] relevant stored base case. The case base is organised as
an approach is described that deals with this problem follows:
more consistently, for reasons of conciseness it is not The case base B is represented by three categories
discussed in this paper. CI , CII , and CIII , these relate to the CHD risk type
The mixed format and structured feature scoring of the cases they organise. Category CI corresponds
scheme is demonstrated by means of an example from to subjects that have a high CHD risk because of their
the Coronary Heart Disease risk assessment domain. cholesterol levels, cases in CIII constitute stress-related
This is also the field to which the C4 architecture has risk types, and in category CII are cases that incline to
been applied in the form of a prototype that is currently risk that is caused by both factors.
being extended. Each base case b ∈ B is given by the fuzzy complex
abstract feature pair: [ Stress, Cholesterol ].
2.3.1. Coronary Heart Disease Risk Assessment. Both features are broken down into two fuzzy primitive
Coronary Heart Disease (CHD) is a degenerative dis- abstract features, namely: Nervousness and Worry,
ease which is the result of an increase of atheroma and LDL and Total. The Nervousness and Worry
in the coronary artery walls leading to total or partial values originate from a commonly used stress ques-
occlusion. The resulting clinical feature is Myocar- tionnaire, they represent the Stress feature, whereas
dial Infarction (heart attack) and subsequently sudden LDL (Low Density Lipoproteins) and Total (total cir-
death [28]. culating cholesterol in the blood) are taken from blood
The main risk factors related to this condition involve sample analysis and represent the Cholesterol fea-
physical inactivity, smoking, hypertension, stress, ture. Similarly to the Money example (Section 2.2.2),
hypercholesterolaemia, etc. This complex multifacto- there is an approximation scale for each fuzzy primi-
rial disease makes it difficult for clinicians to accurately tive abstract feature for each context Ci . The diagram
assess the likelihood of a cardiac event. Currently, sta- below illustrates the context-dependent approximation
tistical multivariate analysis methods are used to mea- scales for the Total feature.
sure risk on those asymptomatic patients who, nev- The target case t, used throughout this example, is
ertheless, present one, two or more CHD risk factors described by the following combination of feature in-
[23]. Although statistical methods provide information stances t:= < < "ALMOST NEVER", "OCC-
regarding the likelihood of CHD event through system- ASIONALLY">, <8.00,3.70> >; where the first
atic numerical calculation, it does not take in account pair represents the Stress ([Nervousness,
the individual as a whole, neither provide sophisticated Worry]), and the second the Cholesterol ([To-
human-like reasoning. tal, LDL]) values. Note, the target case is presented
Furthermore, Northern Ireland has got one of the as a structured object, rather than as flat feature vector.
highest rates of CHD in the world and much of the at- This is achieved by C4’s feature extraction component
tention today is focused on precise screening strategies which constructs a category-specific target case from a
and preventative measures. Therefore, more investiga- surface feature vector [14].
tion is needed for the establishment of better predictive To classify t, its constituent feature values have to
systems for screening the pre-symptomatic stage be- be matched against the p-functions of the correspond-
fore the onset of CHD state. ing approximation scales in the three categories (see
A better insight into the understanding of the under- Section 2.2.2). For example (see Fig. 6), the target
lying mechanisms of CHD could be the inclusion of case’s feature t(Total = 8.00) yields the prototypicality
CBR as a new promising approach of early risk identi- degrees p1 = 0.16 (‘on’ p-function µ(Total)very-high
fication in order to provide more accurate intervention in C1 ), p2 = 0 and p2 = 0 (‘beside’ p-functions in cat-
strategies. egory C2 and C3 ). Fuzzy feature values evaluate to a
prototypicality degree p(t, pCi ) = 1.00, for linguistic
2.3.2. Prototypicality and Similarity Computation terms, if, and only if, the linguistic value t is identi-
for Fuzzy Complex Objects. In the following ex- cal with the p-function term pCi of the corresponding
ample the retrieval of subjects or cases, represented prototype feature, it is 0 otherwise. And p(t, pCi ) =
by two fuzzy complex abstract features, is demon- 1.00, in case of fuzzy numbers, if, and only if, the
strated. This involves the fuzzy classification of a tar- real part of the normalised fuzzy number intersects
get case, and subsequent determination of the most with the p-function of the corresponding prototype
P1: VTL/EHE
Applied Intelligence KL450-01-Dubitzky May 13, 1997 15:35
feature, it is 0 otherwise. For example, p( t (Total = Intuitively, this result, that t is a member of the high-
“HIGH”), pC1 (Total = “VERY HIGH”)) = 0.00 cholesterol-low-stress category CI , rather than one
and p(t(Total = “AROUND” 11.00), pC1 (Total = of the categories CII (medium-cholesterol-medium-
“VERY HIGH”)) = 1.00. stress) or CIII (low-cholesterol-high-stress), seems cor-
This process yields the prototypicality degrees pi j rect. As far as t’s stress levels are concerned (which,
based on which the overall category membership de- in CI , are prototypically of the moderate kind) t has
grees m i can be computed—these values are given be- matched the corresponding p-functions in that cate-
low in table format. gory (values almost never and occasionally). And
Assuming uniform feature weights wk = 0.50 at in terms of critical cholesterol levels, prototypically
each complex abstract feature level k across the three for members of CI , t, on the grounds of high To-
categories (i.e., wNervousness = wWorry = wTotal = wLDL tal and LDL values, has higher prototypicality de-
= wStress = wCholesterol = 0.50), the membership de- grees in CI than in the other categories. (for the
grees m i are effectively
P established byP means of the for- sake of conciseness, the p-functions for Nervous-
mula m k j = j=1···n P wk j · pk j , where j=1···n wk j = 1 ness, Worry and LDL are not illustrated in the
must hold, and m i = k=1···m m k . For example: m I = paper).
[0.5(0.5 · 1.00 + 0.5 · 1.00)] + [0.5(0.5 · 0.16 + 0.5 · Now the focus is on selecting the best-match case in
0.41)] = 0.64. category CI . Suppose in the category CI are four stored
Each category Ci stores a minimal membership de- base cases: bI1 , bI2 bI3 and bI4 . These cases, including
gree di ∈ [0, 1]. For case storage/retrieval only those their constituent feature values, are shown in the table
categories Ci are considered where the target case’s below together with the already categorised base case t.
membership degree m i > di . The rationale behind this The numbers after the “/” constitute the corresponding
is that each category Ci in a case base can be consid- crisp scores (marked by a “+”) and normalised real
ered as a highly specialised case base in its own right, numbers (indicated by an “*”) respectively5.
and with its own constraints and concept boundaries. When the classified target case t enters the category
A domain expert may feel comfortable to go ahead CI , for the determination of the most similar base case
with a category X of which a new entity t is a mem- bIx , its crisp score and normalised value representation
ber to a degree of 0.80, but not with a category Y for is created via the prototype case p I stored in CI (recall,
which the same entity t has scored an identical mem- it is actually pI that is equipped with the respective
bership degree; for the two categories X and Y may approximation scales). To find the desired base case,
be perceived as different, intra-domain application ar- the Distance from Target Method (see below) with the
eas. This idea is similar to the varying inter-domain above-introduced uniform weight distribution is used
requirements in terms of how close a match between (w = 0.50).
the target and the retrieved case has to be. Generally,
" #(1/2)
interpretative tasks require a low match, around 0.30, X
and in problem-solving tasks a retrieved case should d= (w j )2 (b j − t j )2 , (5)
be similar to a high degree, about 0.80 [22]. In the ex- j=1···n
Stress Cholesterol
Note, how the crisply encoded features—or for that prototype feature proto is used to accommodate the
matter their normalised values—are used where pos- category-specific weight for FCAF instances.
sible (e.g., (0.63 − 0.51)2 ). Otherwise, the procedure
resorts to crisp scores, even when one value is given FAF ⊂ FCAF ::=
in crisp format! Also note the recursive nature of the [ { f1: FAF; f2: FAF; . . . ; fn:
calculation; the intermediate values in squared brack- FAF; proto: PrototypeFCAF },
ets are interpreted as distance values at the level of the { class Create, similarity, α,
“outer” distance computation. β, . . . }
So base case bI2 is the one that is most similar to the ];
target case t. Considering Table 2 again one would, similarity ::= [ (in t_af_value:
perhaps, initially be in favour of case bI1 , for it is the FCAF; out sim: Real)} ].
only one that has two feature values identical to the
target case t (almost never and occasionally). How- When comparing a compatible target feature t, the
ever, there is some significant disagreement between similarity method defined on the base case feature
the crisply specified features bI1 (LDL = 6.20) and b delegates t’s relevant constituent abstract features to
t (LDL = 3.70); in the corresponding scale, these two the corresponding members in b. Eventually b’s sim-
values ‘stretch’ across two fuzzy numbers. The cases ilarity service processes the intermediate proxim-
bI2 , bI3 and bI4 , on the other hand, have only a single ity values produced by the feature’s constituent abstract
value in common with the target case t, but lack the features, subjects them to the chosen similarity regime
presence of a significant difference over the remaining (e.g., Distance from Target Method), and passes the
corresponding value pairs. So, intuitively, it is not easy according scores to the encompassing construct (com-
to tell which of the base cases should be selected. plex feature or case). In the above example, the simi-
larity method associated with bI2 ’s Stress feature
2.3.3. Definition of Fuzzy Complex Abstract Features. instance would have computed: dIStr = (0.52 · 0.272 +
The definition of fuzzy complex abstract features is 0)(1/2) = 0.135, and of bI2 ’s Cholesterol’s simi-
straightforward since they are defined based on the un- larity the value: dICol = ( 0.52 · 0.122 + 0 )(1/2) =
derlying fuzzy primitive abstract feature concept (see 0.06, and the similarity function attached to the case
Section 2.2.4). Fuzzy primitive abstract features and bI2 itself: dI2 = [0.52 (dIStr )2 + 0.52 · (dICol )2 ](1/2) =
fuzzy complex abstract features are conceptually tied 0.0738. The actual resemblance or distance figures
together by the same set of services they can provide. between the feature values (e.g., 0.27, 0, 0.12, 0) are
This is reflected by the generic class FAF (fuzzy ab- computed through the similarity methods defined
stract feature). on the fuzzy primitive abstract features.
The class PrototypeFCAF plays a similar role as
Definition 6. A FCAF class is defined in terms of 1 the PrototypeFPAF class in Definition 4. However,
to n constituent abstract features f i of primitive and/or it does not define an approximation scale, nor a sim-
complex type (1 ≤ i ≤ n and n ≤ 7 ± 2). The ilarity method, for a particular comparison strat-
similarity function defined on FCAF takes a compatible egy is handled by the cases themselves, and scales are
target case feature value t af value as input argument only relevant on the level of primitive abstract features.
and produces a similarity score sim (sim ∈ [0, 1]). The The major purpose of this class is to represent and
P1: VTL/EHE
Applied Intelligence KL450-01-Dubitzky May 13, 1997 15:35
accommodate the context-defining prototypical com- is comprised of clinical measurements, aerobic fitness
ponents of a case category, and to directly establish the levels, and state and trade anxiety values. Its composi-
membership degree of a target case concept. Like the tion is a mixture of crisp and fuzzy information. Con-
class FCAF, PrototypeFCAF makes use of generic ventional CBR schemes offer little to correctly treat
Prototype references, rather than static object vari- this type of case information, C4, on the other hand,
ables, so as to dynamically assign fuzzy complex as provides a systematic incorporation of fuzzy and crisp
well as fuzzy primitive abstract features. features, and overlapping case clusters. When, for ex-
ample, asked to assign a case to exactly one category,
Definition 7. A PrototypeFCAF class defines n the domain expert frequently expressed discomfort, as
Prototype features f i (these references can be he could not easily discard other categories. On the
bound to instances of type PrototypeFPAF and other hand, when a case was automatically classified
PrototypeFCAF, respectively). The weight mem- in more than one category (with the according mem-
ber represents a relevance weight the entire complex bership degrees), the expert often agreed. Tests of the
feature carries. Through the method prototypicality, retrieval mechanism (with the subset B (base cases),
a compatible complex feature’s membership or proto- and T (target cases) of S) have confirmed the viabil-
typicality degree p is established. ity of this approach. Automatic adaptation, which con-
sist of advising patients of how to reduce their CHD
Prototype ⊂ PrototypeFCAF ::= risk, is not automated at this stage. The “bottom-up”
[ { f1: Prototype; f2: Prototype; case structuring, around class-sensitive approximation
. . .; fn: Prototype; weight: Real; }, scales, has also turned out to serve as an easy-to-use,
{ prototypicality, α, β, . . . } natural communication platform between the knowl-
]; edge engineer and the domain expert.
prototypicality ::= [ (in Only recently the CBR community has shifted to-
t_af_value: FCAF; out p: wards knowledge-intensive, as opposed to syntac-
Real) ]; tical, approaches [1, 28]. Some works explore the
exemplar-based dimension in conjunction with proto-
3. Summary, Conclusion, Related type cases [3, 4, 25]. Generally, those approaches pay
and Future Work little attention to the changing characteristics of a fea-
ture type with in the frame of discernment of a case
This paper presented a promising, advanced case- base. Neither do they take into account the underly-
knowledge representation framework, called C4, ing uncertainty, that is commonly encountered when
which derives its representational expressiveness from case features are to be expressed, in an explicit, me-
a versatile fuzzy abstract feature mechanism. It was thodical fashion. Some relevant work may be found in
shown how fuzzy primitive and fuzzy complex abstract the database community [7, 17]. Also, little work has
features serve as a flexible case-knowledge representa- been done on the combination of exemplar-based and
tion platform allowing for a polymorphic specification memory-based schemes.
of crisply and fuzzily encoded case features. More- Currently, there is work underway to integrate
over, a systematic classification and similarity regime, “higher-level”, holistic linguistic terms into the C4
based upon pre-computed crisp scores and normalised framework (see Section 2.1). Information summaries
real-numbered features, was presented. Another de- of this kind seem to play a major role in human reason-
gree of versatility of the C4 architecture is afforded by ing, in addition, such aggregation of complex circum-
the dynamically allocatable approximation scale con- stances into imprecise linguistic expressions appears
cept. Built around self-contained, agent-like entities to fit well into the Fuzzy Logic and CBR paradigm.
(i.e., context, category, base case, prototype case, fuzzy To achieve this sort of knowledge representation, an
abstract feature, approximation scale, function object, approximation scale for fuzzy complex abstract fea-
etc.), and in compliance with essential and advanced tures is needed, so as to accommodate a set of mem-
OO mechanisms, the architecture seems very viable, bership functions along a normalised “0-to-1” scale.
easy to maintain and extend [14]. Additionally, there has to be a function that maps the
In an experimental set-up the C4 scheme has been ap- constituent features onto the holistic term scale (the
plied to set S of 120 middle-aged, male subjects which reverse mapping seems meaningless). Another aspect
were tested over a period of three years. The case data that is currently receiving attention is a similarity metric
P1: VTL/EHE
Applied Intelligence KL450-01-Dubitzky May 13, 1997 15:35
based on the features’ prototypicality degrees. As re- 6. M.G. Brown, “An underlying memory model to support case
ported in [14], an earlier version of the C4 scheme retrieval,” in Proc. First European Workshop on Case-Based
has been integrated in an object-oriented database Reasoning, Kaiserslautern, Germany, 1993, p. 20.
7. B.P. Buckles and F.E. Petry, “A fuzzy representation of data for
management system; more work along those lines is relational databases,” in Fuzzy Sets and Systems, vol. 7, p. 213,
needed. 1982.
8. R.G.G. Cattel (Ed.), The Object Database Standard: ODMG
(1.1), Morgan Kaufmann Publishers: California, 1994.
Acknowledgment 9. S.-J. Chen and C.-L. Hwang, Fuzzy Multiple Attribute Decision
Making, Methods and Applications, Springer Verlag, 1992.
10. Y. Cheng, “Context-dependent similarity,” in Uncertainty in Ar-
Philippe Lopes, Human Performance Laboratory, Uni- tificial Intelligence 6, North-Holland, p. 42, 1991.
versity of Ulster, Jordanstown, Ireland. 11. Common Object Request Broker: Architecture and Specifica-
tion, The Object Management Group and X/Open, 1991.
12. W. Dubitzky, F. Carville, and J.G. Hughes, “Case-level knowl-
Notes edge modelling,” in Proc. Irish Conference on Artificial Intelli-
gence and Cognitive Science, 1993.
1. This name was primarily chosen because of its simplicity; it is 13. W. Dubitzky, A. Schuster, J.G. Hughes, and D.A. Bell, “Concep-
based on the four agent-like components by means of which struc- tual distance of numerically specified case features,” in Proc. The
tural and operational case-knowledge is expressed: case base, Second New Zealand International Two-Stream Conference on
context, category and case. Artificial Neural Networks and Expert Systems, Dunedin, New
2. The notation “M() ⇒ C” denotes the class-level message M sent Zealand, 1995, p. 210.
to the class C. To express the binding of a class instance i (in this 14. W. Dubitzky, J.G. Hughes, and D. Bell, “Knowledge Manage-
case denoted by the bracket pair “< · · · >”) to an object variable ment via the synergy of case-knowledge and object-oriented
v, the symbolism “v := i” is used. The notation is based on information management,” to appear in the Proc. Third World
ODMG’s Object Model and Object Definition Language, and on Congress on Expert Systems, Korea, Feb. 1996.
OMG’s Interface Definition Language [8, 11]. 15. D. Dubois and H. Prade, “Fuzzy sets in approximate reasoning,
3. As there are not many reported works on Exemplar Based Part 1: Inference with possibility distributions,” in Fuzzy Sets
Reasoning involving prototypes, nobody—to the best of our and Systems, North Holland, vol. 40, p. 143, 1991.
knowledge—has dealt with the context-dependency issues in this 16. A. Foß (Ed.), “FABEL: Similarity concepts and retrieval
connection. methods,” FABEL Report Number 13, Gesellschaft fu̇r
4. The C4 architecture explicitly allows a particular case x to belong, Mathematik und Datenverarbeitung mbH, Sankt Augustin, Ger-
to a certain degree, into more than one category. For example, many, 1994.
a person x may belong to the CSP (membership degree 0.80) as 17. R. George, B.P. Buckles, and F.E. Petry, “Modelling class hier-
well as to the CAP (degree 0.72) category. archies in the fuzzy object-oriented data model,” in Fuzzy Sets
5. The normalised value v ∗ for a crisp, real-numbered primitive fea- and Systems, vol. 60, p. 259, 1993.
P 18. A. Goel, J. Kolodner, M. Pearce, R. Billington, and C. Zimring,
ture instance v is established by v ∗ = v/[t 2 + i=1···n (ri )2 ](1/2) ,
where ri represents all crisply defined instances of a particular “Towards a case-based tool for aiding conceptual design problem
fuzzy primitive abstract feature type F in a category; t denotes solving,” in Proc. Case-Based Reasoning Workshop, Washing-
the crisp target case instance of F. ton D.C., 1991, p. 109.
19. I. Grahamand and P.L. Jones, Expert Systems: Knowledge,
Uncertainty Decision, Chapman and Hall, Ltd.: New York,
1988.
References 20. J.G. Hughes, Object-Oriented Databases, Prentice Hall Inter-
national (UK) Ltd., 1991.
1. A. Aamodt, “A knowledge-intensive approach to problem solv- 21. G.J. Klir and T.A. Folger, Fuzzy Sets, Uncertainty and Informa-
ing and sustained learning,” Ph.D. dissertation, University of tion, Prentice Hall: Englewood Cliffs, NJ, 1988.
Trondheim, Norwegian Institute of Technology, 1991. 22. J. Kolodner, Case-Based Reasoning, Morgan Kaufmann Pub-
2. A. Aamodt and E. Plaza, “Case-based reasoning: Foundational lishers, Inc.: San Mateo, CA, 1993.
issues, methodological variations, and system approaches,” 23. P. Lopes, R.H. Mitchell, and J.A. White, “The relationships be-
AICOM, vol. 7, no. 1, March 1994. tween respiratory sinus arrhythmia and coronary heart disease
3. J.S. Aikins, “Prototypical knowledge for expert systems. A ret- risk factors in middle-aged males,” in Automedica, vol. 16, p. 71,
rospective analysis,” in Artificial Intelligence, vol. 59, pp. 207, 1994.
1993. 24. G.A. Miller, “The magic number seven, plus or minus seven,”
4. R. Bareiss, Exemplar-Based Knowledge Acquisition: A Uni- in Psychological Review, vol. 63, p. 81, 1965.
fied Approach to Concept Representation, Classification, and 25. B. Porter, R. Bareissan, and R Holte, “Concept learning and
Learning, Academic Press: Boston, 1989. heuristic classification in weak theory domains,” in Artificial
5. R. Brandau, A. Lemmon, and C. Lafond, “Experience with Intelligence, vol. 45, nos. 1/2, p. 229, 1990.
extended episodes: Cases with complex temporal structure,” 26. E.H. Ruspini, “Possibility as similarity: The semantics of fuzzy
in Proc. Case-Based Reasoning Workshop, Morgan Kaufmann logic,” in Uncertainty in Artificial Intelligence 6, North-Holland,
Publishers, Inc., 1991. p. 271, 1991.
P1: VTL/EHE
Applied Intelligence KL450-01-Dubitzky May 13, 1997 15:35
27. A. Stepanov and L. Meng, “The standard template library,” January 1995. He received a BSc in Applied Physics from the Uni-
Hewlett-Packard Laboratories, Palo Alto, CA 94304, 1994. versity of Munich, Germany, in 1990. His current research inter-
28. Study Group, European Atherosclerosis Society, “Strategies for ests include logical systems, expert systems, non-linear and dynamic
the prevention of coronary heart disease: A policy statement of systems.
the european atherosclerosis society,” in European Heart Jour-
nal, vol. 8, p. 77, 1987.
29. L.A. Zadeh, “Outline of a new approach to the analysis of com-
plex systems and decision processes,” IEEE Transactions on Sys-
tems, Man, and Cybernetics, vol. SMC-3, no. 1, p. 28, Jan. 1973.