175 lines
8.7 KiB
Plaintext
175 lines
8.7 KiB
Plaintext
Number 22 February 17,1992
|
|
|
|
The Huntington Technical Brief
|
|
By David Brubaker Ph.D.
|
|
|
|
Dynamic Extent of Fuzzy Variables
|
|
---------------------------------
|
|
|
|
INTRODUCTION
|
|
|
|
Largely because fuzzy rule-based systems are in their infancy,
|
|
those active in the field are still discovering new and powerful
|
|
variations on the basic structure. On two projects in the past
|
|
few months I have had need of a capability not yet found in the
|
|
available fuzzy tools, being able to dynamically modify the
|
|
extent associated with a given fuzzy variable.
|
|
|
|
A fuzzy variable's extent is the range over which it can vary.
|
|
Extent modification falls into two categories: a one-time only
|
|
modification during system initialization, called DEFINED EXTENT;
|
|
and ongoing repetitive modification during system operation -
|
|
CONTROLLED EXTENT.
|
|
|
|
|
|
EXTENT
|
|
|
|
The extent of a fuzzy variable is described by three parameters:
|
|
a minimum value, a maximum value, and a density function. These
|
|
are the crisp boundary values of the variable. The density
|
|
function is a little more complex and will be discussed later in
|
|
this brief.
|
|
|
|
A fuzzy variable's extent can be operated upon. Three operations
|
|
provide a basic set: SHIFT, EXPANSION, and COMPRESSION.
|
|
|
|
An extent is SHIFTED when the positions of its minimum and
|
|
maximum values change, but the distance between them does not. An
|
|
extent is EXPANDED when the distance between minimum and maximum
|
|
values is greater than that of the original function. The
|
|
expansion can be about any point within the extent, although will
|
|
typically be defined either about the center point or one of the
|
|
end points.
|
|
|
|
An extent is COMPRESSED when the distance between minimum and
|
|
maximum is less than that of the original function.
|
|
|
|
Either expansion or compression can be combined with shifting.
|
|
|
|
An extent's density function has to do with expansion and
|
|
compression. If density is uniform, when either expansion or
|
|
compression occurs, the lateral dimensions of all features within
|
|
the extent (that is, the membership functions) will change in
|
|
proportion to the change in the extent. If the density function
|
|
is non-uniform, the lateral dimensions of some regions of the
|
|
extent will change differently than those of others. Using a
|
|
non-uniform density function allows emphasizing portions of the
|
|
fuzzy variable, for example around a crisp value of importance.
|
|
|
|
|
|
The extent of a fuzzy variable is implicitly defined as part of
|
|
the system design process, during membership function definition,
|
|
and is therefore static. Static extent definition can be thought
|
|
of as occurring at compile time. The need can arise, however, for
|
|
dynamic extent definition, and this can occur either once, during
|
|
initialization (DEFINED EXTENT) or on an ongoing basis, during
|
|
runtime (CONTROLLED EXTENT).
|
|
|
|
DEFINED EXTENT - Defined extent occurs when minimum and maximum
|
|
values are defined during the initialization sequence. The
|
|
resulting fuzzy variable and its membership functions can
|
|
potentially be both shifted and expanded or compressed. In its
|
|
simplest form, and with definition of minimum and maximum values
|
|
only, a uniform extent density is assumed.
|
|
|
|
Defined extent will typically have as a basis a statistically
|
|
defined extent in the form of a fuzzy variable and associated
|
|
membership functions defined as part of the design. This
|
|
default definition is used to provide the number and relative
|
|
widths of the membership functions. The initialization process
|
|
will then modify this default extent, based on calculated or
|
|
measured minimum and maximum values.
|
|
|
|
As an example of defined extent, consider a fuzzy database and
|
|
analysis program used in anthropology, with an input variable
|
|
HEIGHT. If the default extent of HEIGHT is based on American men
|
|
it would range (arbitrarily) from a minimum of 60" to a maximum
|
|
of 84".
|
|
|
|
Now consider using the program to gather and process data on
|
|
non-American cultures. Looking at extremes, we might be
|
|
interested in members of a pygmy tribe, where both minimum and
|
|
maximum would drop by a foot or more, or a Watusi tribe, where
|
|
both minimum and maximum would increase on the order of six
|
|
inches or more. In both cases, the initialization sequence would
|
|
take statistics on the population and derive appropriate minimum
|
|
and maximum values. The extent of the variable HEIGHT would be
|
|
shifted (and possibly expanded or compressed) appropriately.
|
|
Once in place, the newly defined extent, with its corresponding
|
|
membership functions, would be used to more accurately perform
|
|
the analysis functions of the program.
|
|
|
|
CONTROLLED EXTENT
|
|
|
|
Controlled extent is quite similar to defined extent, except
|
|
that it occurs on an ongoing basis during system operation. Its
|
|
justification is that the meaning of values (membership
|
|
functions) assigned to a given fuzzy variable may change with
|
|
context - here changing context is loosely defined as changing
|
|
input values.
|
|
|
|
As an example, consider a train deceleration controller that has
|
|
DISTANCE_TO_DESTINATION as a fuzzy variable, and NEAR as one of
|
|
its values. What constitutes being NEAR the destination tends to
|
|
be a function of the actual distance left to travel, the distance
|
|
thus far traveled, and the velocity of the train. For example, on
|
|
a 2000 km trip, with 10 km left to go and traveling at 100 km/hr,
|
|
the train could be considered NEAR its destination. (If it were
|
|
traveling at 2 km/hr this would not be the case.) Similarly,
|
|
with 50 meters to go, and traveling at 5km/hr, the train is
|
|
still NEAR, and with 5 meters left and traveling at 1 km/hr, it
|
|
is still NEAR, although both times with different connotations.
|
|
In each case, the actual distance to destination is quite
|
|
different, but in the context of the other inputs, NEAR ( to some
|
|
degree of membership) is a valid value of DISTANCE_TO_DESTINATION.
|
|
|
|
Controlled extent, like defined extent, is most easily based on a
|
|
default. The new extent is then defined as a function of one or
|
|
more inputs/outputs. At each system time increment, this function
|
|
is calculated, and the new extent determined. Membership
|
|
functions associated with this extent are then used as part of
|
|
the normal, ongoing fuzzy inference process.
|
|
|
|
This control function might take a number of forms. It may be a
|
|
simple proportional relationship between one or more of the
|
|
system inputs/outputs and the extent. It also might be more
|
|
complex, involving derivatives and integrals of input/output
|
|
values - in effect a linear system. Or it might take the form of
|
|
a fuzzy system in of itself, with the inputs being a
|
|
(potentially) reduced set of the system's inputs/outputs, and the
|
|
outputs being the extent parameters for the given variable.
|
|
|
|
SUMMARY
|
|
|
|
This issue has been a brief investigation of dynamic fuzzy
|
|
variable extents, resulting in modifiable membership functions.
|
|
Although many possible techniques may be used, we have discussed
|
|
DEFINED (at initialization) and CONTROLLED (run-time) EXTENTS,
|
|
allowing shift and expansion/compression operations.
|
|
|
|
|
|
----------------------------------------------------------------
|
|
|
|
The Huntington Technical Brief is published, monthly and free
|
|
of charge, as part of the marketing effort of Dr. David Brubaker
|
|
of The Huntington Group. A full collection of past issues
|
|
(starting with number 5 -- issues 1 through 4 are unrelated to
|
|
fuzzy logic and are unavailable) may be obtained for $10.00. The
|
|
42-page report "Introduction to Fuzzy Logic Systems" is available
|
|
for $35.00.
|
|
|
|
For the past fifteen years Dr. Brubaker has provided
|
|
technical consulting services in the design of complex systems,
|
|
real-time, embedded processor systems, and for the past four
|
|
years, fuzzy logic systems. If you need out-of-house expertise
|
|
in any of these, please call 415-325-7554.
|
|
|
|
----------------------------------------------------------------
|
|
|
|
Copyright 1992 by The Huntington Group
|
|
883 Santa Cruz Avenue, Suite 27 Menlo Park, CA 94025-4608
|
|
|
|
This information is provided by
|
|
Aptronix FuzzyNet
|
|
408-428-1883 Data USR V.32bis
|