| |
Introduction to
Fuzzy Logic |
Introduction
Fuzzy logic has rapidly become one of the
most successful of today's technologies for developing
sophisticated control systems. The reason for which is
very simple. Fuzzy logic addresses such applications
perfectly as it resembles human decision making with an
ability to generate precise solutions from certain or
approximate information. It fills an important gap in
engineering design methods left vacant by purely
mathematical approaches (e.g. linear control design),
and purely logic-based approaches (e.g. expert systems)
in system design.
While other approaches require accurate equations to
model real-world behaviors, fuzzy design can accommodate
the ambiguities of real-world human language and logic.
It provides both an intuitive method for describing
systems in human terms and automates the conversion of
those system specifications into effective models.
What does it offer?
The first applications of fuzzy theory were primary
industrial, such as process control for cement kilns.
However, as the technology was further embraced, fuzzy
logic was used in more useful applications. In 1987, the
first fuzzy logic-controlled subway was opened in Sendai
in northern Japan. Here, fuzzy-logic controllers make
subway journeys more comfortable with smooth braking and
acceleration. Best of all, all the driver has to do is
push the start button! Fuzzy logic was also put to work
in elevators to reduce waiting time. Since then, the
applications of Fuzzy Logic technology have virtually
exploded, affecting things we use everyday.
Take for example, the fuzzy washing machine . A load of
clothes in it and press start, and the machine begins to
churn, automatically choosing the best cycle. The fuzzy
microwave, Place chili, potatoes, or etc in a fuzzy
microwave and push single button, and it cooks for the
right time at the proper temperature. The fuzzy car,
maneuvers itself by following simple verbal instructions
from its driver. It can even stop itself when there is
an obstacle immediately ahead using sensors. But,
practically the most exciting thing about it, is the
simplicity involved in operating it.
Fuzzy Rules
Human beings make decisions based on rules. Although, we may not be
aware of it, all the decisions we make are all based on computer like
if-then statements. If the weather is fine, then we may decide to go
out. If the forecast says the weather will be bad today, but fine
tomorrow, then we make a decision not to go today, and postpone it till
tomorrow. Rules associate ideas and relate one event to another.
Fuzzy machines, which always tend to mimic the behavior of man, work the
same way. However, the decision and the means of choosing that decision
are replaced by fuzzy sets and the rules are replaced by fuzzy rules.
Fuzzy rules also operate using a series of if-then statements. For
instance, if X then A, if y then b, where A and B are all sets of X and
Y. Fuzzy rules define fuzzy patches, which is the key idea in fuzzy
logic.
A machine is made smarter using a concept designed by Bart Kosko called
the Fuzzy Approximation Theorem(FAT). The FAT theorem generally states a
finite number of patches can cover a curve as seen in the figure below.
If the patches are large, then the rules are sloppy. If the patches are
small then the rules are fine.

Fuzzy Patches
In a fuzzy system this simply means that all our rules can be seen as
patches and the input and output of the machine can be associated
together using these patches. Graphically, if the rule patches shrink,
our fuzzy subset triangles gets narrower. Simple enough? Yes, bcause
even novices can build control systems that beat the best math models of
control theory. Naturally, it is math-free system.
Fuzzy Control
Fuzzy control, which directly uses fuzzy rules is the most important
application in fuzzy theory. Using a procedure originated by Ebrahim
Mamdani in the late 70s, three steps are taken to create a fuzzy
controlled machine:
1)Fuzzification(Using membership functions to graphically describe a
situation)
2)Rule evaluation(Application of fuzzy rules)
3)Defuzzification(Obtaining the crisp or actual results)
As a simple example on how fuzzy controls are constructed, consider the
following classic situation: the inverted pendulum. Here, the problem is
to balance a pole on a mobile platform that can move in only two
directions, to the left or to the right. The angle between the platform
and the pendulum and the angular velocity of this angle are chosen as
the inputs of the system. The speed of the platform hence, is chosen as
the corresponding output.
Step 1
First of all, the different levels of output (high speed, low speed
etc.) of the platform is defined by specifying the membership functions
for the fuzzy_sets. The graph of the function is shown below

Similary, the different angles between the platform and the pendulum
and...

the angular velocities of specific angles are also defined

Note: For simplicity, it is assumed that all membership functions are
spreader equally. Hence, this explains why no actual scale is included
in the graphs.
Step 2
The next step is to define the fuzzy rules. The fuzzy rules are merely a
series of if-then statements as mentioned above. These statements are
usually derived by an expert to achieve optimum results. Some examples
of these rules are:
i) If angle is zero and angular velocity is zero then speed is also
zero. ii) If angle is zero and angular velocity is low then the speed
shall be low.
The full set of rules is summarized in the table below. The dashes are
for conditions, which have no rules associated with them.
An application of these rules is shown using specific values for angle
and angular velocities. The values used for this example are 0.75 and
0.25 for zero and positive-low angles, and 0.4 and 0.6 for zero and
negative-low angular velocities. These points sre on the graphs below.
 
Consider the rule "if angle is zero and angular velocity is zero, the
speed is zero". The actual value belongs to the fuzzy set zero to a
degree of 0.75 for "angle" and 0.4 for "angular velocity". Since this is
an AND operation, the minimum criterion is used , and the fuzzy set zero
of the variable "speed" is cut at 0.4 and the patches are shaded up to
that area. This is illustrated in the figure below.

Similarly, the minimum criterion is used for the other three rule. The
following figures show the result patches yielded by the rule "if angle
is zero and angular velocity is negative low, the speed is negative
low", "if angle is positive low and angular velocity is zero, then speed
is positive low" and "if angle is positive low and angular velocity is
negative low, the speed is zero".
  
The four results overlaps and is reduced to the following figure

Step 3: The result of the fuzzy controller as of know is a fuzzy set (of
speed). In order to choose an appropriate representative value as the
final output(crisp values), defuzzification must be done. There are
numerous defuzzification methods, but the most common one used is the
center of gravity of the set as shown below.

How far can
fuzzy logic go???
Just from the examples given previously, it is clear that fuzzy logic
can be used in numerous applications. It can appear almost anyplace
where computers and modern control theory are overly precise as well as
in tasks requiring delicate human intuition and experience-based
knowledge. What does the future hold? Consider, the example below which
is currently undergoing intensive research in OMRON Research Center,
Japan.
It may seem obvious that babies nowadays don't drink the way it is
described in child care books. They may drink a little or a lot
depending on their physical condition, mood, and other factors. But if a
fuzzy-logic program can be created that would recommend how much to feed
the baby, mothers would have an easier time raising the child. The basis
of the research is to develop a program to determine the appropriate
amount of milk to feed the child according to a knowledge base that
includes the child's personality, physical condition, and some
environmental factors. This can prevent the child from being fed
unnecessarily. Now although adapting fuzzy logic to babies may seem
silly, one can easily imagine using it to control the feeding of animals
in captivity, for instance.
Wanna see more. Well, here are some of the future fuzzy uses as
predicted by Professor Bart Kosko from UC Southern California:
Vast expert decision makers , theoretically able to distill the wisdom
of every document ever witten.
Sex robots with a humanlike repertoire of behaviour,
Computers that understand and respond to normal human language.
Machines that write interesting norvels and screenplays in a selected
style , such as Hemingway's.
Molecule-sized soldiers of health that will roam the blood-stream,
killing cancer cells and slowing the aging process.
Hence, it can be seen that with the enormous reseach currently being
done in Japan and many other countries whose eyes have opened, the
future of fuzzy logic is undetermined. There is no limit to where it can
go. The future is bright. The future is fuzzy.
Links
|