Language selection

Search

Patent 2163006 Summary

Third-party information liability

Some of the information on this Web page has been provided by external sources. The Government of Canada is not responsible for the accuracy, reliability or currency of the information supplied by external sources. Users wishing to rely upon this information should consult directly with the source of the information. Content provided by external sources is not subject to official languages, privacy and accessibility requirements.

Claims and Abstract availability

Any discrepancies in the text and image of the Claims and Abstract are due to differing posting times. Text of the Claims and Abstract are posted:

  • At the time the application is open to public inspection;
  • At the time of issue of the patent (grant).
(12) Patent Application: (11) CA 2163006
(54) English Title: FUZZY LOGIC CONTROLLER
(54) French Title: CONTROLEUR A LOGIQUE FLOUE
Status: Dead
Bibliographic Data
(51) International Patent Classification (IPC):
  • G06F 9/44 (2006.01)
(72) Inventors :
  • SULTAN, LABIB (Canada)
  • JANABI, TALIB H. AL (Canada)
(73) Owners :
  • SULTAN, LABIB (Canada)
  • JANABI, TALIB H. AL (Canada)
(71) Applicants :
  • SULTAN, LABIB (Canada)
  • JANABI, TALIB H. AL (Canada)
(74) Agent: NA
(74) Associate agent: NA
(45) Issued:
(86) PCT Filing Date: 1993-05-20
(87) Open to Public Inspection: 1994-12-08
Availability of licence: N/A
(25) Language of filing: English

Patent Cooperation Treaty (PCT): Yes
(86) PCT Filing Number: PCT/CA1993/000223
(87) International Publication Number: WO1994/028481
(85) National Entry: 1995-11-15

(30) Application Priority Data: None

Abstracts

English Abstract



This invention relates to the design and
implementation of real-time knowledge-based
fuzzy controller system for general purpose in-
dustrial applications. The controller is imple-
mented in three technological bases (software,
VLSI and neural network). In another aspect
the invention relates to the design of an In-
telligent system which implements decision-
making procedure based on approximation, as-
sociation and reasoning with fuzzy patterns
and their clearness assessments rather than the
use of Max-Min computation over fuzzy rela-
tional matrices usually applied in approximate
reasoning procedures in similar systems. Ac-
cording to this design the fuzzy controller is
a device which operates at the level of fuzzy
pattern processing where each control task is
expressed through the attributes of fuzzy pat-
terns (syntax and content, domain and clear-
ness measure), and the elementary cognitive
activities which the human performs with these
patterns such as: recognition, generation, as-
sessment, association, pattern matching, ap-
proximation, etc. The fuzzy controller utilizes
a new scheme for approximate reasoning with
fuzzy patterns called the Clearness Transfor-
mation Rule of Inference (CTRI). This mech-
anism offers a spectrum of advantages broad-
ening the functional Intelligence of the controller to handle complex human tasks, improving the performance and accuracy of the controller
and reducing the computational requirements. The fuzzy controller presented in the invention can be applied in general engineering practice,
financial, medical, process control, pattern recognition and other areas requiring knowledge-based bahaviour in decision making.


French Abstract

L'invention concerne la conception et la mise en oeuvre d'un système contrôleur à logique floue destiné aux applications industrielles de tout domaine. La réalisation du contrôleur fait intervenir trois technologies de base: le logiciel, les circuits VLSI et les réseaux neuronaux. Par ailleurs, l'invention concerne la conception d'un système d'intelligence artificielle mettant en oeuvre des procédures de prise de décision. Des procédures de prise de décision faisant appel à des logiques d'approximation, d'association et de raisonnement par modèles flous et évaluations résultantes de pertinence, ont été préférées à la logique de calcul Maxi-Mini à laquelle on a recours dans des systèmes de même nature qui utilisent généralement des matrices relationnelles floues pour les procédures de raisonnement par approximation. Selon le principe retenu, le contrôleur à logique floue met en oeuvre des traitements de formes floues, chacune des tâches de commande étant caractérisée d'une part par les attributs des formes floues (syntaxe et contenu, domaine et mesure de pertinence) et d'autre part par les activités cognitives élémentaires que l'être humain exerce par rapport à ces formes et, notamment, la reconnaissance, la génération, l'évaluation, l'association, la comparaison d'après modèle et l'approximation. Pour les logiques d'approximation ayant recours à des formes floues, le contrôleur à logique floue utilise le nouveau principe CTRI de règle d'inférence des transformations par pertinences (Clearness Transformation Rule of Inference). Cette façon de procéder présente de nombreux avantages parmi lesquels il convient de remarquer, d'une part, l'extension des fonctions d'intelligence artificielle du contrôleur lorqu'il s'agit de prendre en compte des tâches humaines complexes, d'autre part, l'amélioration du rendement et de la précision du contrôleur, et enfin, de moindres besoins en ressources informatiques. Le contrôleur à logique floue faisant l'objet de cette invention trouve son utilité dans les activités de bureaux d'études, les activités financières, les activités médicales, la gestion de processus, la reconnaissance des formes, et dans d'autres domaines nécessitant, pour la prise de décision, la prise en compte de comportements à base cognitive.

Claims

Note: Claims are shown in the official language in which they were submitted.


46
AMENDED CLAIMS


1. A fuzzy logic decision-maker for receiving input
signals, utilising data in a knowledge-base and, based on said
input signals and said data, providing output signals in order
to provide knowledge-based decision making, said knowledge-
base of the type containing
- fuzzy rules comprising representations of fuzzy patterns
of consequents (THENs) and representations of fuzzy patterns
of antecedents (IFs);
- clearness distributions comprising collections of
representations of clearness degrees, said clearness degrees
defining cognitive measures which assess the fuzziness of
fuzzy patterns, and
- representations of thresholds of transitions, said
thresholds of transitions being the intersection points of
every two adjacent clearness distributions,

said fuzzy logic decision-maker comprising:

- a fuzzifier comprising first means for mapping said input
signals into representations of input fuzzy patterns and second
means for mapping said input signals into representations of
input clearness degrees of said input fuzzy patterns, said
input clearness degrees being valued in the interval of zero
to one, where zero represents "absolutely unclear" ("absolutely
false") and one represents "absolutely clear" ("absolutely
true");

- pattern matching and rule selection means for receiving said
representations of input fuzzy patterns from said first means
of said fuzzifier and, responsive thereto, for selecting one
rule from said knowledge-base, and for generating
representations of output fuzzy patterns based on the
consequent (THEN) portion of said rule;

- approximate reasoning means for receiving said

47

representations of input clearness degrees from said second
means of said fuzzifier and for mapping same into a
representation of an output clearness degree, said approximate
reasoning means operating in parallel with said pattern
matching and rule selection means; and

- defuzzifier means for receiving said representations of
output fuzzy patterns from said pattern matching and rule
selection means and for receiving said representation of an
output clearness degree from said approximate reasoning means
and for mapping said representations of output fuzzy patterns
and said representation of an output clearness degree into said
output signals.

2. The fuzzy logic decision-maker of claim 1 in which said
fuzzifier first means comprises means to compare said input
signals with said representations of thresholds of transitions
contained in said knowledge-base such that each of said input
signals is mapped into a corresponding representation of a
fuzzy pattern.

3. The fuzzy logic decision-maker of claim 2 in which said
fuzzifier second means receives said input signals and said
representations of input fuzzy patterns generated by said
fuzzifier first means from said input signals, said fuzzifier
second means comprising means for selecting a clearness
distribution from said knowledge-base corresponding to each of
said input fuzzy patterns, and means for utilising each said
clearness distribution, and the input signal utilised by said
fuzzifier first means in generating the representation of the
fuzzy pattern which corresponds to said clearness distribution,
to generate a representation of a clearness degree.

4. The fuzzy logic decision-maker of claim 3 wherein said
clearness distribution may be mapped into a pre-determined
number of discrete clearness degrees.

48

5. The fuzzy logic decision-maker of claim 3 wherein each
clearness distribution has an x-axis representing the range of
input variable values for the fuzzy pattern which is associated
with the input variable and which corresponds with said each
clearness distribution and a y-axis representing clearness
degrees and wherein said means for utilising each said
clearness distribution, and the input signal utilised by said
fuzzifier first means in generating the representation of the
fuzzy pattern which corresponds to said clearness distribution,
locates said input signal on the x-axis of said clearness
distribution and projects said input signal onto the y-axis of
said clearness distribution in order to obtain the clearness
degree of said input fuzzy pattern for said input signal.

6. The fuzzy logic decision-maker of claim 1 wherein said
representations of input fuzzy patterns comprise indices,
names, or addresses of said input fuzzy patterns and wherein
said representations of output fuzzy patterns comprise indices,
names, or addresses of said output fuzzy patterns.

7. The fuzzy logic decision-maker of claim 1 wherein said
means for mapping of said approximate reasoning means comprises
means for determining the minimum value of input clearness
degrees represented by said representations of input clearness
degrees and for assigning said minimum value to the output
clearness degree represented by said representation of an
output clearness degree.

8. The fuzzy logic decision-maker of claim 1 wherein said
means for mapping of said approximate reasoning means comprises
means for determining the maximum value of input clearness
degrees represented by said representations of input clearness
degrees and for assigning said maximum value to the output
clearness degree represented by said representation of an
output clearness degree.

9. The fuzzy logic decision-maker of claim 1 wherein said

49

means for mapping of said approximate reasoning means comprises
means for determining the average value of input clearness
degrees represented by said representations of input clearness
degrees and for assigning said average value to the output
clearness degree represented by said representation of an
output clearness degree.

10. The fuzzy logic decision-maker of claim 3 wherein said
defuzzifier means comprises means for selecting a clearness
distribution from said knowledge-base corresponding to each of
said output fuzzy patterns, and means for utilising each said
output fuzzy pattern clearness distribution to map said
representation of an output clearness degree to a value for one
of said control signals.

11. The fuzzy logic decision-maker of claim 10 wherein said
output fuzzy pattern clearness distribution may be mapped into
a pre-determined number of clearness degrees.

12. The fuzzy logic decision-maker of claim 10 wherein each
clearness distribution has an x-axis representing the range of
output variable values for the fuzzy pattern which is
associated with the output variable and which corresponds with
said each clearness distribution and a y-axis representing
clearness degrees and wherein said means for utilising each
said output fuzzy pattern clearness distribution to map said
representation of an output clearness degree to a value for one
of said control signals comprises means for locating said
output clearness degree on the y-axis of said output fuzzy
pattern clearness distribution and for projecting said output
clearness degree onto the x-axis of said output fuzzy pattern
clearness distribution.

13. The fuzzy logic decision-maker of any of claims 1, 2,
3, 5, 7, 8, 9, 10, and 12 wherein said received input signals
are input signals from a process and said output signals are



output control signals to said process in order to provide
knowledge-based control of said process.

14. A method for controlling a process having process
signals comprising the following steps:
- mapping said process signals into representations of input
fuzzy patterns;
- mapping said process signals into representations of input
clearness degrees of said input fuzzy patterns, said input
clearness degrees defining cognitive measures which assess the
fuzziness of input fuzzy patterns, said input clearness degrees
being valued in the interval of zero to one, where zero
represents "absolutely unclear" ("absolutely false") and one
represents "absolutely clear" ("absolutely true");
- selecting a fuzzy rule from a collection of fuzzy rules of
the type comprising representations of fuzzy patterns of
consequents (THENs) and representations of fuzzy patterns of
antecedents (IFs) having an antecedent matching said
representations of input fuzzy patterns;
- generating representations of control action fuzzy patterns
based on the consequent (THEN) portion of said selected rule;
- while selecting a fuzzy rule, mapping said representations
of input clearness degrees into a representation of a control
action clearness degree, each said control action clearness
degree defining cognitive measures which assess the fuzziness
of control action fuzzy patterns;
-mapping said representations of control action fuzzy patterns
and said representation of a control action clearness degree
into output signals and inputting said process with said output
signals in order to control said process.

15. The method of claim 14 wherein said step of mapping
said process signals into representations of input fuzzy
patterns comprises comparing each of said process signals with
representations of thresholds of transitions, said thresholds
of transitions being the intersection points of every two
adjacent, clearness distributions, said clearness distributions

51

15. Cont'd

comprising collections of representations of clearness degrees,
and selecting an input fuzzy pattern based on each such
comparison.

Description

Note: Descriptions are shown in the official language in which they were submitted.


WO 94/28481 2 1 6 3 0 0 6 PCT/CA93/00223
-




FUZZY LOGIC CONTROLLER
Background. Existing fuzzy controller designs are based on the Compositional Rule of
Inference (CRI) for approximate reasoning of L.A. Zadeh. This approach applies the
notion of membership function to measure the compatibility of fuzzy linguistic categories.
such as HIGH, LOW etc.. with the crisp and deterministic values (usually measured.
cal~ ed or assigned) which are utilized to describe the state of the process variables and
objects. such as TEMPERATURE, PRESSURE, etc. In this approach. the control rules(acquired from domain expert(s)) are i--tell.reted in the controller knowledge-base as fuzzy
relations which are represented as fuzzy matrices. For multivariable processes these
matrices become multi-dimensional. The inference and approximate reasoning procedure
of the CRI is performed using the time-consuming Max-Min operations over these
matrices. As a result the operation of the controller can handle slow and simple processes
but may face difficulties to cope with real-time applications for fast and complex
multivariable processes due to the huge computation required to implement their
functionality. Another principal limitation on the CRI based fuzzy controllers is that they
can not perform reasoning at a fuzzy pattern level as the human usually does in handling
the real world situations. This makes it difficult to use these controllers to simulate the
various functionalities of human thinking which usually manipulates patterns in the
problem solving practice rather than massive data such as fuzzy matrices. Another
difficulty faced by the CRI based fuzzy controllers is that they are unable to generate
scenarios and records on their behaviour in terms of the tasks and patterns they simulate in
their operation which can be used to match the human behaviour involved in similar
control tasks. This is due to the algorithmic rather than cognitive bases of theapproximate reasoning procedure of the CRI utilized in these controllers. The
compatibility between the operation of these devices and the human thinking is an
important issue required for enhancing their functional intelligence. It also facilitates the
acquisition of the domain and expert knowledge which shorten the time of an application
development.
Other relevant literature includes:
1. J. Rasmussen, Information processing and Human-Machine Interaction. An
Approach to Cognitive Engineering. North-Holland. 1986.
2. L. Sultan. " A composition of binary and multivalued logic for the proceduresorganization of fuzzy expert systems." IEEE Proceedings on ISMVL. pp. 154-159, 1984.
3. L. Sultan. " Some considerations on systems organization for fuzzy information
processing", in: Trapple L. (ed..), Cybernetics and system research. North-holland,
pp.551-556. 1984.


SUBSTITUTE SHEET

WO 94/28481 PCT/CA93/00223
2 1 63006 -~




4. L.A. Zadeh. "Outline of a new approach to the analysis of complex systems anddecision processes," IEEE Trans Systems, Man and Cybernetics..vol. SMC-3,pp.28-
44,1973.
5. L.A.Zadeh. "The concept of a linguistic variable and its application to approximate
reasoning, I and II". Inform. Sci., vol. 8, pp. 199-249 and vol. 9, pp.301-357, 1975.

SUMMARY OF THE INVENTION. The fuzzy controller presented in this invention is anintelligent-cognitive device which operates and makes decisions at the level of fuzzy
panern processing, association and approximation. It is capable of performing the tasks of
recognition, generation, ~cseccment of cleamess and validity measure of fuzzy patterns of
the real world situations. The controller reasons with these patterns and their clearness
measures to arrive at acceptable decisions using a new cognitive mechanism for
approximate reasoning formalized as the Clearness Transformation Rule of Inference
(CTRI). In this mechanism, the necessity to use fuzzy matrices and the time consuming
Max-Min operations for approximate reasoning are eliminated. Hence, the fuzzy
controller is a real-time operating device for decision-making even in complex and
multivariable applications. Its behaviour and decisions can be traced back and validated
explicitly which facilitates the control and expert knowledge acquisition and updating. The
invention provides a systematic approach for the design of this fuzzy controller and
decision maker system together with complete description of the implementation of their
modules using Software (knowledge-based architecture), Customized VLSI Chips andNeural Network technology.
To accomplish the foregoing and other objects, and in accordance with the present
invention . as described and embodied herein. a system. called the Clearness
Transforming Fuzzy Logic Controller (CTFLC). is presented embodying the organization
as well as the scheme of implementation of a fuzzy controller and decision-maker system
whereby the process variable values are received as crisp data and according to which a
control command is generated in the form of crisp data as output control actions. or the
input is in the form of fuzzy patterns and linguistic scenarios and the output in the form of
control comm~n-ls or control action patterns and scenarios which may be utilized by the
operator to improve his/her options regarding the process operation and enhance his/her
decisions. The fuzzy controller establishes its output through the execution of a series of
knowledge based tasks involving situation pattern recognition. situation assessment in
terms of cleamess measure, pattern matching and the deduction of the control action
pattern. approximate reasoning to determine the clearness degree of the control action
pattern. and defuzzification of the control pattern (if the output of the controller is required
in the form of crisp data values).


SUBSTITUTE SHEET

WO 94128481 . 2 1 6 3 0 0 6 PCT/CA93/00223




The following are the distinguished functional and operational characterstics of the
CTFLC system.
1. It is a system for general purpose applications capable of simulating human thinking in
handling the tasks of fuzzy control and decision- making. These tasks are defined based
on the use of a cognitive model of fuzzy control specifled in the invention description.

2. It is a device which operates at the level of fuzzy pattem processing (as a basic entity or
portion of information) in achieving the tasks of control and decision making to produce
acceptable solutions and decision patterns. It implements a set of knowledge-based tasks
such as generation. recognition and ~csessment of the validity (Cle~rness degree) of fuzzy
patterns and achieves approximation in the association between these patterns as well as
imit~ting the human thinking in achieving a cognitive inference producing options of
control and decision patterns together with ~csessmerlts of their validity. This capacity
enables the application of the CTFLC as a fuzzy controller. Intelligent decision-maker and
a declslon support system.

3. It applies a new scheme for approximate reasoning at the level of fuzzy pattern
manipulation which elimin~s the necessity for the time con~lming Max-Min computation
usually employed for approximate reasoning in similar devices. Hence. the CTFLC can
operate in real-time when applied for control and decision-making in multivariable
systems and complex processes.

4. Its organization and operating principles are independent of the the technology
employed for its implement~tion. Various technological bases can be used to implement it
while the same operation and design principles are m~int~ined. This characteristic of the
CTFLC makes its integration with other systems a viable issue.

5. The use of generic rules and the systemization of the domain features in terms of data
required by the operation and implementation of the controller simplifies the process of
knowledge acquisition and the updating of the controller features (including itsperformance features). These facilities assist in a rapid application development and
validation of the controller performance.


SUBSTITUTE Sh'~. ~T

WO 94/28481 2 1 6 30 0 6 PCT/CA93/00223


Other objects and advantages of the invention will be apparent from the forthcoming
description and claims of the invention including the a detailed description of the drawings
in which:
BRIEF DESCRIPTION OF DRAWINGS

Figure ( 1 ) is a scheme illustrating the organization of the cognitive model of fuzzy control
upon which the invention of the CTFLC system is based.

Figure (2) is a scheme illustrating the modules and operational phases of the CTFLC
system used for the embodiment of the invention.

Figure (3) is a diagram illustrating the operation of the modules of the CTFLC system at
the level of input-output data used for the embodiment of the invention.

Figure (4) is a diagram illustrating the intel~leta~ion of the domain of a fuzzy pattem used
for the specification of the operation of the CTFLC system of the invention.

Figure (5) is a diagram illustrating the interpretation of the cleamess measure of a fuzzy
pattem used for the specification of the operation of the CTFLC system of the invention.

Figure (6) is a diagram illustrating the graphical presentation of the cleamess distribution
of fuzzy pattems used for the presentation in this measure of the invention.

Figure (7) is a scheme illustrating the operation of the CTRI-based inference engine in
deducing fuzzy pattems having the same syntax but with different cleamess degrees used
for the embodiment of the CTFLC system of the invention.

Figure (8) is an analysis in the form of tables of the characteristics of tasks of the CTFLC
system in terrns of input-output data. knowledge and control strategies required for their
accomplishment used for the embodiment of the CTFLC system of the invention.

Figure (9) is a scheme illustrating the intemal architecture of the CTFLC system at the
level of the operational modules and the knowledge used by each each module used for the
embodiment of the invention.

Figure (10) is a diagram showing the employment of the cleamess distributions of the
fuzzy pattems which serve to understand the example of the operational phases of CTFLC


SUBSTITUTE SHEET

WO 94/28481 ~ ; A '' , 2 1 6 3 0 0 6 PCT/CA93/00223

~i~cussed in the invention.


Figure ( l l ) is a diagram of the rule-base architecture of the CTFLC shell used for the
preferred embodiment of the invention.

Figure ( 12) is a functional diagram of the Fuzzifier at the level of input-output data which
illustrates the interaction between the two module: Fuzzifier-I and Fuzzifier-II used for the
implementation of the preferred embodiment of the invention.

Figure (13) is a diagram showing the preferred off-line generation of the values of the
thresholds of transition (TT) using the clearness distributions of fuzzy patterns used for
the implementation of the Fuzzifier of the invention.

Figure ( 14) is a dia~ram illustrating the preferred off-line generation of the values of the
clearness level thresholds ( CL) used for the implementation of the Fuzzifier of the
invention.

Figure (15) is a functional diagram of the Defuzzifier module at the level of input-output
data used for the implement~tion of the invention.

Figure (16) is a diagram illustrating the principle of counter-reflection of the clearness
level of a fuzzy pattern on the elements of the domain space to infer crisp data of the
control action to the process. used for the implementation of the Defuzzifier of the
invention.

Figure (17) is a table showing the preferred embodiment of the CTFLC database system
for the software implementation of the invention.

Figure ( 1 8-a) is a diagram illustrating the preferred off-line generation of the values of the
thresholds of transition (TT) for the hardware implementation of the invention.

Figure (18-b) is a diagram illustrating the preferred determination of the code for each
elementary fuzzy pattern for the hardware implementation the invention.

Figure ( 1 9-a) is a diagram of the preferred page organization of the ROM Memory for the


SUBSTITUTE SHEET

WO 94/28481 2 ~ 6 3 0 0 6 PCT/CAg3/00223


storage of the Thresholds of Transition (MTT) for the hardware implementation of the
invention.

Figure (l9-b) is a scheme showing the generic description of the contents of each page
and location of the MTT ROM for the hardware implementation of the invention.


Figure (20) is a scheme of the preferred functional implementation of Fuzzifier-I to
perform cycle- I of the operation of the Fuzzifier for the hardware implementation of the
invention.

Figure (21) is a scheme of the preferred organization of Fuzzifier-I and the RPC to
perform cycle-l of operation of the Fuzzifier for the hardware implementation of the
invention.

Figure (22-a) is a diagram showing the preferred off-line generation of the values of the
threshold of transition between clearness levels used for the hardware implementation of
Fuzzfier-II of the invention.

Figure (22-b) is a diagram showing the preferred off-line determination of the codes of the
threshold points between clearness level intervals for the hardware implementation of
Fuzzifier-II of the invention.

Figure (23-a) is a scheme of the preferred embodiment for the page organization of the
ROM Memory of the Clearness Levels (MCL) for the hardware implementation of the
mventlon.

Figure (23-b) is a diagram of the functional equivalent of the preferred page organization
of the ROM memory of the clearness levels MCL for the hardware implementation of the
mventlon.

Figure (24) is a scheme for the preferred functional implementation of Fuzzifier-II for the
hardware implementation of the invention.

Figure (25) is a scheme of the preferred organization of the interaction between CLT and
MIN chip for the generation of the clearness degree of the pattern of the control action


SUBSTITUTE SHEET

wO 94/28481 2 1 6 3 0 0 6 PCT/CA93/00223




used for the hardware implementation of the invention.

Figure (26) is a functional diagram of the of the Control Rule Selection module (Pattern
Matching) used for the embodiment of the invention.

Figure (27) is a dia_ram of the preferred organization of the ROM memory of the control
action pattems MCAP for the hardware impl~ment~tion of the invention.

Figure (28-a) is a diagram showing the preferred off-line determination of the control
action crisp data in the implemenr~tion of the Defuzzifier for the hardware implementation
of the invention.


Figure (28-b) is a diagram of the preferred org~ni7~rion of the ROM memory of the
control action crisp data (MCAD) to implement the Defuzzifier for the hardware
implem~nt~tion of the invention.

Figure (29) is a scheme of the preferred architecture of the CTFLC for the hardware
implement~tion of the invention.

Figure (30) is a diagram of the operation of the CTFLC at the level of the functional
blocks for the preferred hardware implemenr~tiQn of the invention.

Figure (31 ) is a diagram of the preferred Neural Network implementation of the CTFLC
of the invention.
DETA~ Fl) DESCRIPTION OF THE INVENTION

THE COGNITTVE MODEL OF FUZZY CONTROL. The functionality. design and
operational principles of the Clearness Transformation Fuzzy Logic Controller (CTFLC)
are specified based on the cognitive model of fuzzy control and decision- making. The
general diagram of this model is presented in Figure (1). It illustrates the basic tasks and
cognitive me~h~nicm~ of a human involved in the control and decision- making procedure
at a rule-based and knowledge-based level of behaviour. This model is established
through a psychological and cognitive study using, as a framework, the model of
Rasmussen for supervisory control and decision-making. Applying this model. the


SUBSTITUTE SHEET

WO 94/28481 2 1 6 3 0 0 6 PCT/CA93/00223

.
human tasks were analysed as a loop of three phases which are: (a) situation pattern
observation. detection and assessment. (b) control action planning and (c) action
execution . The model of Figure ( 1 ) reflects these phases. Each phase is realized through
performing a set of tasks. The states of the process variables such as FLOW,
TEMPERA TURE etc.. (see Figure 1 ) are detected from the observed measured values and
fuzzified in such terms as HIGH, LOW, etc. This fuzzification task .first . draws mental
(fuzzy) pictures of the process situations in the short-temm memory. Once the approximate
pattern of a process situation is established. the operator. secondly, assesses the
"cleamess degree" of the situation pattern. He/she builds this clearness assessment based
on his/her understanding and experience on what is going on in the controlled process.
The operator usually uses his/her own heuristic measures of the " clearness degree" in the
clearness assessment of the patterns of process situations. The more understandable and
clearer to him/her the detected situation patterns the more confident and clearer pattems of
the


control actions he/she will generate. The operator then matches this dynamic pattern with
the static fuzzy pattem of the process situation which is established in the long-term
memory. The result of performing this pattem matching task is the generation of fuzzy
pattems of the control actions such as "INCREASE THE FLOW SLIGHTLY". etc to be
applied to the process . The model presented in Figure (1) shows that this deduction
process utilizes two mech~ni.~m~ The first is the pattem m~trhing by which the operator
deduces the pattems of the control actions ( response to what to apply). The second.
which is within the basic claims of this invention. is a transformation mechanism by
which he/she deduces the assessment of the pattern of the control action ( response to
how clear the deduced pattem of the control action is). It has been identified that these
two mechanisms are usually performed in parallel. In essence. the transformationmech~nicm is involved basically to achieve a cognitive approximation leading to define
the clearness and importance of the patterns of the control actions depending on the
clearness ~sessments of the detected pattems of process situations. This cognitive
mechanism transforms the clearness measures of the detected patterns of the process
situations to the inferred patterns of the control actions. Hence, the output of the
deduction phase will be the pattern of the control action (by applying the pattern matching
mechanism) as well as the clearness degree measure of this pattern (by applying the
transformation mechanism). The operator then utilizes these two outputs to perform the
defuzzification task by which he/she translates (defuzzifies) the fuzzy pattems of control


SUBSTITUTE SHEET

WO 94/28481 2 1 6 3 0 0 6 PCT/CAg3/00223

g
actions into precise control commands and executes them properly in the execution phase.
The basic results obtained from this cognitive model are the definition of the tasks of fuzzy
control, the inte~ elation of these tasks through the use of the notion of a fuzzy pattem
and its cleamess degree, and the identification of the approximate reasoning performed by
the transformation mech~nism. In Figure (1), the (CapprOx) symbol which appears in the
approximate reasoning block refers to the approximate degree of "strength" or "weakness"
of the situation pattern which will be transformed by the transformation mech~ni~m to the
patterns of control actions. The approximate reasoning mech~nicm has been formulated as
the Cleamess Transformation Rule of Inference (CTRI) and the fuzzy controller developed
on its basis is called the Cleamess Transformation Fuzzy Logic Controller (CTFLC).
The tasks of the CTFLC are specified based on this cognitive model and summarized in
the following order:
Fuzzify the measured variable values to Generate and Assess the fuzzy pattems of process
situations ---> Perform pattem matching to infer the fuzzy patterns of control actions ---
> Apply the transformation mechanism to Assess the patterns of actions through
approximate reasoning ---> Defuzzify the deduced pattems of the control actions --->
Execute the deterministic control actions.

It is within the basic claims of this invention that the CTFLC is a system capable of
handling the tasks and mech~ni~ms specified by the cognitive model of fuzzy control
outlined in the forgoing description of the invention. In essence. the CTFLC is a
cognitive and expert system device which is capable of simulating the human behaviour in
performing the tasks of this model.

The general architectllre and operational phases of the CTFLC system capable of handling
the tasks of the cognitive model of fuzzy control is illustrated in Figure (2). This system
consists of the following modules: The Fuzzifier, The Controller Pattem MatchingMechanism, The Transformation Mechanism for Approximate Reasoning and the
Defuzzifier. The controller operates in four phases labelled in Figure (2) as: Fuzzification,
Rule Selection and Inference. Approximate Reasoning and Defuzzication. The flow of
data and control between these four modules is coordinated by the Control and Inference
module.

An overall account of the operation of the controller is illustrated in Figure (3) and
summarized as follows. The controller receives crisp data which represents the measured
or calculated values of the controlled process variables . This data is channelled to the


SUBSTITUTE SHEET

WO 94/2848l 2 1 6 3 0 0 6 PCT/CA93/00223

13
Fuzzifier module which performs two operations on it. First it generates the description
of the fuzzy pattern of each process variable (henceforth called an elementary fuzzy
pattem) which constitutes the description of the complex fuzzy pattem of the process
situation . And second it assesses the clearness degree of the 8enerated patterns
(estim~ted by the cleamess degree of fuzzy pattern over the interval [0, l ], which will be
defined later). The first output of the Fuzzifier (the situation fuzzy pattem) is channelled
to the Pattern Matching module to deduce the fuzzy pattem of the control action. The
second output of the fuzzifier. which is the cleamess degrees of the variable state pattems,
are channelled to the Transformation Mechanism for Approximate Reasoning module
which applies the CTRI and selects the minimum of the cleamess degrees it receives.
This minimum clearness measure is transformed to become the cleamess degree of the
pattern of control action. Finally. the Defuzzifier module receives the pattern of the
inferred control action (generated by the Pattern Matching Mech~ni~m) and its cleamess
de~ree (generated by the Transformation Mech~nicm for Approximate Reasoning) anddeduces the crisp data (command) of the control action. These commands are then sent to
regulate the process.

THEORETICAL BASES. The organizational and operational principles of the CTFLC
system use a set of new theoretical developments such as fuzzy pattem as a basic entity
manipulated during operation. the use of specific measures to assess the cleamess degree
of a fuzzy pattem in temms of the "strength" and "weakness". Also. the use of a reasoning
mechanism which differentiates between the "dynamic pattems" (the detected process
patterns in a dynamic

operational environment) and "static pattems" (the pattems represented in the controller
knowledge base). The CTFLC also applies a new scheme for approximate reasoning
known as the Cleamess Transformation Rule of Inference (CTRI). These and other
theoretical developments which are relevant to the understanding of the invention are
summarized in the forthcoming description of the invention. In general~ the reader
should bear in mind that the CTFLC should be looked upon as a fuzzy pattem processing
and assessment device which utilizes the transformation mechanism for approximate
reasoning with these patterns for the deduction of the control actions. Hence, two
filnd~mental theoretical concepts have been extensively used in the development of the
CTFLC. They are: the concept of fuzzy pattem and the formulation of the CTRI to
implement the transformation mech~nism for approximate reasoning with fuzzy patterns.
In the following we provide details of these two concepts.


SUBSTITUTE SHEET

WO 94128481 : 2 1 6 3 0 0 6 PCT/CA93100223
-



_l

A FUZZY PATTERN is defined by the triple < 5, D, A >, where:
S - is the syntactical description of a fuzzy pattern;
D - is the domain to which the fuzzy pattem is ~tt~ched; and
A - is the cleamess assessment of the fuzzy pattern.

We now proceed with the formal definition of each of these components.

S - Component characterizes the syntactical description of the fuzzy pattern. The
invention assumes the use of the logic of fuzzy predicates to describe fuzzy patterns. In
this context. the notion of a fuzzy predicate as an atomic formula of this logic is
considered as an elementarv fuzzY pattem. Examples of formal fuzzy patterns are:
PA : Lx is A
PB: Lv is B
where, Lx, Ly - are linguistic variables of Zadeh and A, B - are their attribute-values
defined as fuzzy subsets of the universes of discourse X and Y, respectively. Examples
of element~ry fuzzy pattems are:

PA : THE STA TE OF TEMPERA TURE is HICH
Lx A

PB : THE STA TE OF PRESSURE is LOW
L~ B

Other complex fuzzy pattems are formally described as well-formed formulas (WFF) of
this logic by applying the logical connections with these atomic formulas (elementary
fuzzy predicates) following formal syntactical rules. Examples of complex fuzzy patterns
are:
( PHIGH v PVER Y HIGH ---> PLOW )
( PHlGH & (~PLOW) ---> PVER Y HlGH )

D - Component.. The domain of a fuzzy pattem PA, denoted as DA,X, is composed ofthree attributes ~ Lx, X, ~ >, where:
Lx- is the domain variable:


SUBSTITUTE SHEET

WO 94/28481 2 1 6 3 0 0 6 PCTICAg3/00223


X - is the space of all the instantial models and objects ( xl, x2....) that can be substituted
as values for Lx;
~JX - is the set of substitutions of the form { xilLx} which contains the substitutions x
from X for Lx.
An example of the domain of the elementary fuzzy pattem PA is:
DA ,X = < Lx = State of temperature, X = [ 0, 501, Crx = ~ 20; 30; 35; 45; 50} >
Figure (4) illustrates the definition of the domain of the elementary fuzzy pattern PA.
A- Component . This component characterizes the assessment of the cleamess measure
of a fuzzy pattem. Fuzzy pattems may be looked upon as vague pictures of the real
world situations. These pattems can be assessed using of cleamess measures built in the
closed interval [O, 1] divided into a finite number of clearness values {akl (henceforth
called truth levels also), i=1.2,..., K. The "validity" . or in equivalent term, the
"cleamess degree" of a fuzzy pattern, is evaluated when the variable (e.g. L r) associated
with a fuzzy pattem (such as PA) is substituted by an in~t~nti~l model (such as xi ) from
the domain DA X . In this invention three measures: C, I and r are used to estim~te the
cleamess degree of a fuzzy pattems . C is called the Clearness De~ree. denoted as
C(PA), I is calledthelnte~rated Clearness De~ree denoted as l(PA) and r is
the Clearness Distri~lltion, denoted as 17PA ), for a fuzzy pattern PA . Figure (5)
illustrates the concept of these measures in the ~s~scment of fuzzy patterns.
The C - measure is used to assess the "local" cleamess of a fuzzy pattern and formulated
as:

C: PA ~ [0. 1] / for Lri =Xi
or:
C(PA) = C(xi is A) =o~
where: ak - is a cleamess level in the interval [O, l l -


The I - measure is used to generate the integrated clearness degree of a fuzzy pattern
obtained from the local cleamess degrees for different domain substitutions ~xj/Lx}.
There are different ways which can be used to generate I-measure. The invention defines
three of them. they are:

1. I min = Mi~l ~ C(PAi)3
i




SUBSTITUTE SHEET

WO 94/28481 2 1 6 3 0 0 6 PCTICA93/00223

- 13
2 . I mar = Max f C(PA i) }
i




n
C(PA j)

3 . l a~
n




The fuzzy controller described in the invention utilizes Imin measure. However. the other
two measures and other formulas to calculate l-measure can be used to implements the
approximate reasoning rnerh~ni.cm of the controller which utilizes this measure to evaluate
the CAPPROX-

The r- measure is used to assess the "global" clearness of a fuzzy pattern and formulated
as:
r(PA ) = ( Cl(PA ). C2(PA )...., Cn(pA ) ) I estimated for all the substitutionsl xilLxi } .

The following example illustrates the representation of C and r measures. Assume that
the domain variables L ~ = (TEMPERA TURE STA TE) and Ly = (PRESS URE STA TE )
, which are described by the element~ry fuzzy pattems PHIGH and P LOW. respectively,
have been substinlted by the models:

~ HIGH = 1 Xl = 15 ; X2 = 25 ; X3 = 35 ; X4 = 45
C~ LOW = { yl = l ; Y2 = 2 ; Y3 = 3 ; Y4= 4

and the cleamess degrees for these models were evaluated for these pattems as follows:
C(15 is HIGH) = 0.08 C(l is LOW) = 0.99
C(25 is HIGH) = 0.43 C(2 is LOW) = 0.90
C(35 is HIGH) = 0.87 C(3 is LOW) = 0.50
C(45 is HIGH) = 0.98 C(4 is LOW) = 0.l0
Then, the clearness distribution r(PHIGH ) of the fuzzy pattern PHIGH for these models
is:
- r(PHIGH ) = l 0.08 0.43 0.87 0.98 ~,



SUBSTITUTE SHEET

WO 94128481 2 1 6 3 0 0 6 PCT/CA93/00223

14
which is presented as shown in Figure (6-a), and the cleamess distribution r(PLow ) f
PLOW for the models given above is:
r(PLOW )= ~ 0.99 0.90 0.50 0.10 ~.
shown in Figure( 6-b) .

These two measures are used by the CTFLC to assess the clearness of any complex fuzzy
pattem described formally as a wff of the logic of fuzzy predicates.
In the development the CTFLC system the knowledge on the components < S, D, A >
are represented as: S, D and A k)~owledge-bases of the controller system. Each block
captures the knowledge on one component of the specification of fuzzy pattems.

In addition to these three knowledge bases specifying fuzzy pattems. a fourth knowledge
base is used to represent the heuristic knowledge of the expert on the process control and
contains the controller rules. These rules describe the association between fuzzy pattems
of the process situations and the the control actions. The control protocol of the CTFLC
system is composed of a finite set of fuzzy rules of the form:
IF <PattemofProcessSituatio~l> THEN <PattemofControlAction>
Both the pattern of the "Process Situation" and the pattem of the "Control Action" are
specified as complex fuzzy patterns (wff of the logic of fuzzy predicates). A general
form of a Situation-Action rule of the control protocol is as follows:

rF PA I and PA 2 a)ld PA n THEN PB j ( 1 )

where: PA i - are elementary fuzzy pattems of the general form "L,~-i is A i" (used to
describe the pattems of the process variables, i = 1, 2...., N). PBj - are fuzzy pattems
of the general form "Lvj is Bj" (used to describe the pattems of control actions, j = 1, 2,
..., M)-
THE APPROXIMATE REASONING MECHANISM. The next basic theoretical conceptused in the development of the CTFLC system is the approximate reasoning merh~ni~m of
the Cleamess Transformation rule of Inference (CTRI). This mechanism performs a
cognitive approximation in the deduction of the cleamess, or in equivalent term the
"validity", degree of the patterns of the inferred solutions. It draws an association
between the cleamess measures of the pattems of antecedent and conclusion in the process
of decision-making so that a clearer pattern of the antecedent will produce a clearer
pattern of the conclusion. The vice-versa is also true. In this context, the CTRI is a


SUBSTITUTE SHEET

WO 94/28481 ~ - 2 1 6 3 0 0 6 PCT/CA93/00223
-



- 15
fommal implementation of the transformation mech~ni.cm of the coPnitive

model of fuzzy control described earlier. In order to formulate the CTRI. the concepts of
"dynamic" and "static" pattems are clarified. Following the human perception of the real
world pattems, fuzzy pattems can be classified as "static" and "dynamic". Static pattems
denote the pattems established in the human long term memory. They are also represented
in the knowledge base of the Intelligent system as a result of the expert knowledge
acquisition. Dynamic panems denote the pattems detected in the real dynamic operation.
These pattems are the output of the human perception observing the real world dynamic
processes. It is assumed that the Fuzzifier module of the CTFLC (described earlier in the
invention) is replacing the human in performing the task of generating the process
dynamic pattems. The fundamental concept behind these classes of pattems is that they
have the same syntactical description (regarding form, shape, content, etc.) but differ in
their "cleamess" assessment in terms of the "strength" or "weakness", as it is defined in
the following:

If G' is a dynamic pattem of G, then we say that the pattem G' is "clearer" or "stronger"
than G if the cleamess measure r(G') > r(G), and G' is "less clear" or "weaker" than G,
if r(G') < r(G), for the same inst~nti~l models of the domain DG.X. where r(G) is the
cleamess measure of a fuzzy pattern G.

Funher, the mech~nicm of the CTRI is formalized so that it produces the c!e~mess degree
of a dynamic pattem using S, D and A knowledge about the syntax, domain and the
cleamess degree of the static pattems represented in the knowledge base of the controller
system. This mech~nicm is capable of generating different acsescments for the same
patterns of situations detected under different intentions and circumstances. This
capability is a direct simulation of the human behaviour in reasoning on dynamic patterns
when he/she uses the static pattems established in his/her long-term memory as a basis in
performing the task of process pattern assessment. This phenomena, which is
implemented in the CTRI, explains why humm can produce different actions (decisions)
for the same observed real world situations in the intention formation of the decision
making process.

Formally, The CTRI is an inference rule that combines two mechanisms. These are the
pattern matching and the assessment transformation mechanicms. The output of thepattern matching mechanism is the control action pattern. The output of the


SUBSTITUTE SHEET

i 2 1 63006
WO 94/28481 . PCT/CA93/00223

- 1~
transformation mechanism is the clearness de8ree of the control action pattern. In
essence. this mech~ni~m transforms the cleamess measure of the detected dynamic pattem
of the process situation to the dynamic pattem of the deduced control action. This
mechanism has been found an adequate tool for describing the approximate reasoning
process that the human operator performs in the pattern matching activity.

The CTRI is formally stated as follows. Given two fuzzy pattems Pl and P2, where:
Pl: is a static patteln of a controller n~le as specified in the forgoing expression (1), i.e.
Pl = < Sinlation Pattern ~ > Control A ction Pattern> .
P2: is a dynamic pattern of a process situation given with its clearness degree, i.e.
P2 = <DynamicSituationPattern >and r(p2).

If these two pattems are applied to the CTRI. it will deduce:
P3: a dynamic pattem of tlle control action with an assessment of its clearness degree
equal to that of P2, i.e.

P3 = < Dynarnic Pattern of the Control Action > with r(p3) =
r(P2).

Using the symbolic notations of the Logic of Fuzzy Predicates. the CTRI mechanism can
be formulated as follows:

Given two fuzzy pattems (WFF of the logic of fuzzy predicates):

Pl :C ---> H
P2: G' and r(G~)
(2)
Deduce: P3: H' with r(H') = r(G').

where: G, H and G --> H are static pattems specified by the clearness degrees r(G)
and r(H);
G' and H' are dynamic pattems of G and H, respectively.
It should be noted that the cleamess degree of the deduced dynamic pattern r(H') is not


SUBSTITUTE SHEET

wo 94128481 2 1 6 3 ~ ~ 6 PCT/CAg3/00223
-


17
necessarily equal to that of the static pattem r(H). The fact that the clearness assessment
of the deduced fuzzy pattern H' is different from that of its static pattem H iS the new
feature added by the CTRI to the classical schemes of deduction inference. It implements
a "cognitive" inference mechanism beside the "syntactical" inference of the pattern
m~ching mech~ m which is commonly applied in rule-based deductive systems. This
capability of the CTRI makes it adequate for applications requiring approximate reasoning
in the manipulation of fuzzy pattems having the same synt~ctic~l description but assessed
with different degrees of validity and cleamess.


The inference engine of the CTFLC is based on the CTRI mech~ni~m and is schem~ti~ y
presented in Figure (7). The knowledge base of the engine contains the rule of
association between the static pattems. This scheme shows that the engine infers different
cleamess assessments for the same fuzzy pattems applied to its input but assessed with
different clearness degrees.
It should be noted that the formulation of the CTRI in (2) is adopted for approximate
reasoning in single-input- single output systems. In applications of fuzzy controllers and
expert systems in multivariable domains, the application of the CTRI is formulated as
follows:

Given a controller rule of the knowledge base as a complex fuzzy pattem of the generic
form (1):

Pl: ( PA I & PA 2 & -- & PA n ) ~~> PB ( static Pattent of the controller
n~le)

and a dynamic pattem to match the rule. which is:

P2: ( PA I & PA 2 & - & PA n ) (detected dynamic pattern of the process
situation)
where the cleamess degree of P2 is given by:
r'(P2) = { C(PA 1 ). C( PA '2 ).. C( PA 'n )}
with:
C( PA 1 ) = (Xl
C( PA 2 ) = a2


SUBSTITUTE SHEET

wo 94128481 21 6 3 0 û 6 PCT/CA93/00223

18
.

C( PA'n) =an
and al,a2, ..., an are cle~rnes~ levels estim~ted over the interval [ 0.1].
The CTRI will infer the dynamic pattem:

P3: PB'
and assigns a clearness degree (truth estimation) to it which will be equal to the minimum
of the cleamess degrees of the con~titnent elementary fuzzy patterns, i.e.:

C(PB ) = Min ( C( PA l ), C( PA, ), .... C( PA n) )
or:
C(PB ) = Min ( ac,. a~, ..., an )


The Min operator has been applied according to the clearness interpretation of the WFF
of the logic of fuzzy predicates (complex fuzzy pattems). This in~e,~ a~ion implies that a
minimum of the clearness degrees of elementary fuzzy patterns is assigned to a complex
fuzzy pattem built from these element~ry pattems using AND connector. Apparantly, this
estimation coincides with the l min - measure described earlier in the invention.

The application of the CTRI for approximate reasoning in the CTFLC offers a spectrum of
advantages to this device. First it gives flexibility of cognitive inference in deducing the
cleamess degree of the inferred patterns of the control actions. This advantage makes it
possible to produce patterns of decisions together with their clearness degree (validity)
measure. This degree may exceed the clearness (validity) measure of the static patterns
acquired from domain experts and represented in the knowledge-base of the controller .
This feature means that the CTFLC is capable of imit~ting the human behaviour in reacting
with different actions for the same syntactical dynamic patterns of the process situations
assessed with different clearness measures. Secondly, the CTRI performs reasoning at
the level of fuzzy pattern processing. This feature makes it possible to compare the
behaviour of the CTFLC with the human expert involved in decision-making procedures
in the same domain. This advantage makes these devices more compatible with the
human and acts as a support in behaviour. It will also facilitate the knowledge acquisition
and updating in the development and validation of a CTFLC application. As a result, this
feature minimi~e~ the time needed for the development of a CTFLC application andoffers easy access to validate and/or improve the controller performance. Finally, the


SUBSTITUTE SHEET

wO 94/28481 - - 2 1 6 3 0 0 6 PCT/CA93/00223
-



19
application of the CTRI in the CTFLC elimin~res the necessity of employing the time
consuming Max-Min operations usually applied in similar devices for approximate
reasoning ( e.g. CRI-based fuzzy controllers). This means that a new possibility for the
application of fuzzy controllers to operate in real-time for the control of multivariable and
complex processes become viable.

THE DESIGN AND OPERATIONAL PRINCIPLES OF THE CTFLC. The CTFLC
system operates in a task driven mode which implies that at each operational phase the
controller is involved in performing a certain task. The tasks of the CTFLC are defined
based on the cognitive model of fuzzy control described earlier in the invention.

The design and operational principles of the CTFLC are elaborated based on the analysis
of requirements of these tasks ( in terms of the Input/Output. knowledge and reasoning
modes needed to handle them) and the use generic task methodology for the design of
knowledge-based
systems. Further. each task is analysed in terms of the Input/Output relation, portion of

knowledge needed and the appropriate reasoning model used to achieve it. The results of
this analysis are summarized in Tables 1. 2 and 3~ respectively, as shown in Figure (8).
These tables cover the data, knowledge and control strategies required by the CTFLC
system to perform each task. The CTFLC system is built using four modules ( The
Fuzzifier, The Controller Pattern Matching Mech~niclT, The Transformation Mech~nicm
for Approximate Reasoning and the Defuzzifier) to perform these tasks. The system
operates in four phases. Each phase of the operation of the fuzzy controller performs one
task. These phases are: Fuzzification, Rule Selection, Approximate Reasoning and
Defil 77ific~tinn

The internal organization of the CTRI based fuzzy controller is presented in Figure (9).
The knowledge- base of the controller is organized so that each task/module is ~tt~/'h~d to

the portion of knowledge that will be accesced in order to perform the task. An example
of a controller which uses the dynamic pattern PA to match the control rule PA ----~ PB is
used in Figure (Ct` tO simplify the understanding of the organization. The notations used
in this figure to denote the knowledge portions are given below:
DA.X and DB,Y - domain knowledge of fuzzy pattems:
PA . PB - synt~ti~l knowledge to describe fuzzy patterns;
PA ---~ PB - heuristic knowledge encoded as control protocol rules;


SUBSTITUTE SHEET

WO 94/28481 2 1 6 3 0 0 6 PCT/CA93/00223

- _O
r(PA) and r(Pg) - knowledge on the clearness distributions of fuzzy pattems.

Next we describe the operating phases of the CTFLC in some details. During the
Fuzzification Phase. the process crisp data (xl, x,, ..., XN) are fuzzified to generate the
dynamic elementary fuzzy patterns (PA'I, PA'2, ..., PA'N ) of the process situation. The
generated situation pattern will be matched with the static pattem (PA 1, PA ,, ..., PA N)
which is the the LHS of the controller rules. The fuzzification is achieved through the
generation of the clearness degree acsessments C(PA j) for each domain model Xj and
each elementary fuzzy pattern PA j using the clearness distribution knowledge as follows.
Since, in general. there is a finite set of elem~nr~ry fuzzy patterns that characterize the state
of the variable Lxj, the Fuzzifier will select the elementary fuzzy pattern PA, which has
the m~rimum cleamess degree (i.e., aj ma~r) for the crisp data (model) xi. Further, the
elementary fuzzy patterns (PA'I. PA ,, .... PA N ) which are ~enerated in this way for N
variables will constitute the detected dynamic pattem of the process situation. It also
generates f C(PA j )max } which is a set of the clearness degree measures c al max, a2
max, ..., an max >, where: an max ~ [0,1]. This set constin~teS the cleamess degree
of the dynamic pattern of the process situation.
During the Rule Selection Phase the appropriate rule is selected by m~tc~ing the situation
dynamic pattern (PA 'I, PA '~, ..., PA 'N) with the static pattern (PA I, PA ,, .. ., PA N) of
the

controller rules. The RHS of the matching rule is activated and the pattern(s) PB j of the
control action(s) will be generated.

In the Approximate Reasoning Phase the CTRI scheme is applied. It transforms theminimum of the clearness degrees < al max. a2 max...., an max > generated by thefuzzifier to become the clearness degree of the inferred pattern of the control action, i.e:

C(Psj) = Min f C(PA I) ma~, C(PA ,) ma~, ..., C(PA n) ma~
or:
C(PBj) = Min f o~/ mar, ~, mar, ..., ~n max }

In the Defu77ification Phase the input is the pattem of the control action PBj and its local
clearness degree C(Pgj) . The output of the defuzzifier is the crisp model (data) v ' of the
variable Lvj. The Defuzzifier infers the model value (y') of the domain variable by
performing a counter reflection of the value of C(PBj) on the clearness distribution r(Psj)


SUBSTITUTE SHEET

WO 94/28481 ~ , ; 2 1 6 3 0 0 6 PCT/CA93/00223
,
2'
arld projecting the result on the domain space.
The following example illustrates the four phases of the controller operation. Suppose
that the controller has two input variables Lx 1, Lx2 and one output variable Ly which is
the control variable to the process. Suppose that the control protocol consists of the
following two rules:

Rl: IF PIHIGH and P2LOW THEN P3 NORMAL
R2: IF PlNoRMAL and P2HIGH THEN P3 LOW

where: Pl, P2 and P3 correspond to the elementary fuzzy patterns attached to the domain
variables Lxl, Lx7 and Lv, respectively. Assume that the clearness distributionsr(PIHIGH )- r(PINORMAL)~ r(P2LOW) r(P2 HIGH), r(P3NoRMAL). and r(P3
LO~V) are shown in Fi~ure (lO). Suppose that xl = 20 and x2 = 35 are the crisp data
(domain models) leplesentillg the measured values of the variables Lx I and Lx2 which are
received by the controller. Then the four phases of the controller operation will be
summarized as follows:

During the fuzzification phase the elementary fuzzy pattems of the process variables are
generated together with their cleamess degrees. To generate these pattems, the crisp data
is propagated against the clearness distributions of the elementary fuzzy pattems as
follows: xl is tested against r(PPIHIGH) and r(Pl~oRMAL). From Figure (lO-a)), we
have:

C (PI HIGH) = 0.50: and
C (P1IVORMAL) = 0 99

from which PINORMAL is selected because it has the higher (maximum) cleamess degree.
Similarly, x2 is tested against r(p7Lo~, ) and r(P~HlGH) to choose the elementary fuzzy
pattem which describes the state of Lx2 . From Figure (lO-b), we have:

C (P2LOW) = 0.20: and
C (P2 HIGH) = 0 75
from which P' HIGH is selected because C(P~ HIGH ) = 0 75 .
Hence the situation pattem generated by the Fuzzifier is:

(Pl NORMAL and P2 HIGH)


SUBSTITUTE SHEET

WO 94128481 2 1 6 3 0 0 6 PCT/CA93/00223

22

and its clearness degree is:

(C(PI NORMAL) C( P~ HIGH ) ) = (0-99, 0-75)

During the rule selection and inference phase a pattern matching is performed with the
given two control rules which results in the selected rule being R2. The inferred control
action pattern is. then. (P3 LOW )-

For approximate reasoning the CTRI is applied to transfer the clearness degree of thesituation pattern generated by the fuzzifier to become the clearness degree of the control
pattem (P3 LO~V ). i.e:
C((P3 LOW ) = Min (0.99, 0.75) = 0.75 .
During the defuzzification phase the crisp value of the control action y' is generated. Its
value is determined by counter reflection of the clearness degree of the control pattern (P3
LOW ). which is 0.75, on the clearness distribution (P3LOW ) . The result is the crisp
value of the variable Ly which is equal to 1.29 (see Figure 10-c).

DETAILED DESCRIPTIQN OF THE PREFERRED EMBODIMENT OF THE CTFLC
SYSTEM. The implementation of the CTFLC system is described using three different
technological bases. These are:

(i) Method for the implement~tion as an expert system shell.
(ii) Method for hardware implementation using customized VLSI Chip.
(iii) Method for implementation using Neural Network technology.


It should be noted that these three implementations follow the org~ni7~tion and design
principles of the basic modules of the CTFLC system. These principles are elaborated in
the description of the CTFLC shell. They are followed in the development of the
hardware and neural implementation of the CTFLC. Slight modifications, where
necessary, are made to the design approach to meet specific requirements of eachtechnology. However. the basic principles of the design and operation are m~int~ined

PREFERRED EMBODIMENT OF THE EXPERT SYSTEM SHELL


SUBSTITUTE SHEET

WO 94/28481 ~ : 2 1 6 3 0 0 6 PCT/CA93/00223


IMPLEMENTATION. The architectllre of the CTFLC shell is developed using rule-based
system organization as shown in Figure ( 1 1). This architecture is capable of
implementing the tasks of the cognitive model of fuzzy control described earlier in the
invention. The CTFLC shell has N inputs connected to the the process variables to
acquire the process data xi, i = 1, 2, ..., N, and M outputs to apply the control actions
yj, j = 1, 2, ..., M, to the controlled process. It incorporates the following
operational modules: Fu:zifier, Pattern Matching witlt the -Process Control Rules,
A pproximate Reasoning and Defuzzifier. The flow of data and control between these four
operational modules is coordinated by the Control and Inference module. The Fuzzifier.
Pattern Matching and Defuzzifier are built as rule-based modules. Their rules are
generated off-line and incorporated in the shell for any particular application. The
Approximate Reasoning and the Control and Inference module are domain independent
and constitute the control core of the shell. The CTFLC system, therefore. is a general
purpose application expert system shell for fuzzy control and decision-making.

The Fuzzifier and Defuzzifier modules incorporate knowledge on fuzzy patterns of the
applications, such as process situation and control action patterns. The knowledge about
th omponents < S. D, A > of fuzzy patterns are used to define the rules of thesemodules. The Control Protocol module contains rules of the generic form of (1) to
rel~esent the expertise knowledge on the control and regulation of the domain process.
The Approximate Reasoning module applies the CTRI to assess the clearness degrees of
the control actions. All these modules share a common d~t~bace and they are supervised
by the Control and ~nference module which applies the appropriate reasoning strategy to
handle the task of each module ( the reasoning strategies are summarized in Table 3 of
Figure (8)).

The functional presentation of the Fuzzifier Module at the Input/Output level is shown in
Figure (12). The input to the Fuzzifier is the crisp data (xl, ..., XN) where each xi
.eplesellts the current value (instantial model) of an input variable Lxi, i=l, ..., N -
The output is two

components. The first is the fuzzy pattern of the process situation obtained as a set of
elementary fuzzy patterns such as (PA'I, ..., PA~n) . The second is a set of
assessment degrees of the elementary patterns (C(PA 'I)mac.. C(PA 'n)~tla~ ) which are
the maximum cleamess degrees of the elementary fuzzy patterns. These two outputs are
produced by two rule-based modules: Fuzzifier-l and Fu if ier-ll, respectively. They


SUBSTITUTE SHEET

WO 94/28481 ~ 2 ~ 6 3 0 () 6 PCT/CA93/00223

2~
operate in two cycles so that Fuzzifier-I ( cycle 1 ) generates an elementary fuzzy pattern
(PA 'i) which serves as input to Fuzzifier-II to begin cycle 2 i.: which the clearness degree
C(PA 'i)ma.~ is ~enerated. These two cycles are repeated N times (for N variables) in
order to pe,fol-,- the task of the Fuzzifier Module. The interaction between these two rule
bases to implement the Fuzzifier is illustrated in Figure ( 12).

The rules of Fu: if ier-l and Fu :ifier-ll are generated off-line before putting the
controller into operation. The way these rules are derived and used during operation is
outlined next.

The rules of Fu::ifier-l are determined using the following approach. The clearness
distribution of the elementary fuzzy patterns. such as r(PLOW), r(PNORMAL),
r(PHIGH). etc. are analyzed in order to determine the transition points between them
(e.g.. the intersection points on the graphical presentation of these distributions). It is
required that these points. referred to as the Thresholds of Transition (TT), are determined
off-line for each process variable. In essence~ these TT points indicate the existence of a
transition between the the elementary fuzzy patterns (PA /J. (h = 1, 2,...H), describing
the state of the process variable Lxi(i = 1, 2,..., N). Figure (13) shows the derivation
of the TT values for the variable Lxi specified by three (H = 3) elementary fuzzy patterns
: PLOW. PNORMAL and PHlGH . In this figure two of these thresholds projected on
the domain space X and denoted as:

TTL N = The Thresllold of Transition between r(PLOW ) and r(PNORMAL)
TTN H = The Thresllold of Transition between r(PNORMAL) and (PHICH)

The Fuzzifier recognizes the adequate elementary fuzzy pattem PA h which describes the
current state of the variable LXi by deciding the interval (between two TT points) to
which the value xi acquired from the process belongs. This approach facilitates the
implem~n~tion of a one-to-one mapping so that for each model xi there is only one pattem
PAi which will describe the current state of the variable LXi. This procedure can be
implemented simply by comparing the value of xi with the values of the thresholds (TT).
The following generic rule has been derived to implement this procedure:

IF TT h-l, h < xi < TT h,ll+l THEN The Elementarv FU~ Y Pattern is PA h
(3)




SUBSTITUTE SHEET

WO 94/28481 ~ ; `; 2 1 6 3 û 0 6 PCT/CA93/00223
-



- 25
where: TT~ , h and TT ll,h+l refer to the values of the thresholds of transition (TT)
between the fuzzy patterns PAh-1, PAh and PAh, PAh+1, respectively.
For the example illustrated in Figure (13). three such rules are derived. They are:

Rl: IF O S xi < TTL~N THEN PLOW
R2: IF TTL ,N S xi ~ TTN,H THEN PNORMA L
R3: IF TTN H < xi THEN PHiGH

Similar rules may be derived for all process variables. Evidently the rules of Fuzzifier-I
can be built as a set of rules of the generic form (3).

The on-line operation of Fuzzifier-I to generate the elementary fuzzy patterns is
accomplished by m~tching the crisp data xj coming from the process against these rules.
The result of this m~tching is the set of elementary fuzzy patterns (PA I . PA 2 . --, PA N)
which constitute the description of the situation pattern. We note that these rules also
generate elementary fuzzy patterns PA i which have maximum clearness degrees C(PA 'i )
max for a given models xi . i = 1,2,..., N, (these patterns are generated as best
describing the state of process variables).

Fu::ifier-ll . This module is built with rules to generate the values of the clearness
~Csec~ments of the elementary fuzzy pattems. i.e. the set of the clearness degree values
(C(PA 1 )max, C(PA 2)ma~, ..., C(PA N )max). which are assessed over the interval [0,
l ~. These Rules are derived off-line in similar way to the rules of Fuzzifier-I as follows.
The truth (clearness) levels {~i} assessed over the interval ~0, ll are projected on the
domain space Xi of the clearness distribution r(PAi ) for each elementary fuzzy pattern.
The values obtained are referred to as the " Clearness Level Thresholds " (CL). Figure
(14) shows an example of the projection of five clearness levels (~l, ..., ~xs ) on the
domain of r(PHlGH)- The result is five CL values (CLl, ..., CLs) on Xi (CL
should not be confused with the thresholds of transition TT between the clearness
distributions specified earlier). These threshold points are used to formulate the rules
which generate C(PA i)mal~ by employing simple comparison between the model xi and
these CL values to decide to which interval (between these points) the model xi belongs.
The detected intervals indicate values of cle~rne~ levels in the interval [0, 1]. The rules
employed by Fuzzifier-II have the following generic form:

IF TheEFP is PAh AND CLk < Xi <CLk+l THEN C(PAh ) = ~k
(4)


SUBSTITUTE SHEET

wo 94/28481 2 1 6 3 0 ~) 6 PCT/CA93/00223

26

where: EFP stands for "Elementary Fuzzy Pattern".

As an example. the following rules are generated for C(PLow) of Fi_ure (14).

Rl :IF TlzeEFPis PHICH a~d xi <CLl THEN C(pHlGH)
= ~xo

R2:1F T~leEFPis PHIGH and CLI S xi <CL2 THEN C(PHIGH)
= 0!1

R3:IF The EFP is PHIGH and CL2 < xi < CL3 THEN C(PHIGH)
= ~2

R4:IF T/teEFPis PHIGH and CL3 <xi <CL4 THEN C(pHlGH)
= ~3

R5:1F TheEFPis PHIGH and CL4 Sxi <CL5 THEN C(PHIGH)
= a4

R6:1F TlleEFPis PHlGH and CL5 <Xi THEN C(PHIGH)
= .x5

Evidently. the number of rules of Fu :ifier-ll for each fuzzy pattern depends on the
number of clearness levels used to measure the clearness degree of the pattern. The
number of clearness levels (and. hence. the number of threshold points) can be chosen as
large as desired depending on the required accuracy.
The Fuzzifier module characteristics are summarized as follows:
1. Input : Crisp data xi of the control process.
2. Output: Fuzzy pattern of a process situation (PA'I. PA'2...., PA N) and the
assessment of clearness degrees of each elementary fuzzy pattern C(PA 'i)~ i = 1, ..., N .
3. Control strategy: Forward chaining to generate the fuzzy patterns (Fuzzifier-I) and to
assess the patterns (Fuzzifier-II).
4. Knowledge required: < S, D, A > components of fuzzy patterns to derive the rules for
Fuzzifier-1 and Fuzzifier-II.


SUBSTITUTE SHEET

WO 94/28481 2 1 6 ~ 0 3 6 PCT/CA93/00223


5. Generic Rules: Fuzzifier-I employs generic rule (3) and Fuzzifier-II employs generic
rule (4).

Tlte Pattern Matching Wit/l tlle Process Control Rules Module contains the control rules of
the generic form (1). This module is accessed during the Rule Selection and Inference
Phase to deduce the patlerns of control actions. These patterns are deduced by m~tching
the process situation pattem (PA ~, PA ,...., PA ~) (generated by the Fuzzifier ) with the
LHS of the controller rules having patterns of the form (PA l~ PA 2~ -, PAN)- The
RHS of the fired rule describes the pattem of the control action. The basic characteristics
of this module are:

l. Input: Fuzzy pattems of process situations (PA ~, PA 2~ --, PA ~) -
2. Output: Fuzzy pattems of the control actions (PBj), j = 1. ~ .... M.
3. Knowledge required: Controller rules of the generic form (1).
4. Control strategy: Forward chaining.
T~le A pproxim~te Reasoning Module implements the transformation mechanism of the
CTRI. It selects the minimllm value of the clearness assessments generated by Fuzzifier-
II and transforms it to become the clearness degree of the deduced pattem of control
action. Let the fuzzy pattern of process situation be composed of a set of elementary
fuzzy pattems (PA ~, PA '2~ ..., PA ~) which are generated by the Fuzzifier and let the
inferred control action be (Pgj) . The cleamess degree C(PBj) which is transformed to the
pattem of control action is:

C(Pg J) = Min ~C(PA 'I ) rna~, C(PA '2) ma~, , C(PA 'N) max},
or,
C(Pg~) = Min (al max. a2 ma~. .-- . an max)

Where: C(PA 'N) max = ai max - are the cleamess degrees evaluated over the interval [0, l ]
and generated by Fuzzifier-II.
This module is characterized by:

1. Input: Clearness degrees of the elementary fuzzy pattems generated by the Fuzzifier-
II.
2. Output: Cleamess degree of the pattem of control action.
3. Control strategy: Compute Min (al max, a2 max, .... an max) and channel the
result to the Defuzzifier module.


SUBSTITUTE SHEET

WO 94/28481 . 2 1 6 3 0 0 6 PCT/CA93/00223

2~
The Defl~::ifier Module receives as input the pattern of the control action PB j and its
clearness measure C(PB'j) . The output is the crisp data y' which represents the control
action (the control command) to be applied to the process. The functional representation of
the Defuzzifier module at the level of Input-output is presented in Fi~ure(15). The
defuzzification task is achieved by the counter reflection of C(PB j) in the clearness
distribution r(pB j) to infer the crisp value y' for the control variable Lyj . The rules of
the Defuzzifier are derived off-lines by discretizing the clearness distribution r(pB~j) into
K-clearness (tmth) levels, f ak}, k = 1,2, ..., K. These clearness levels are projected on
the variable domain space (e.g., Y) so that each level is associated with a set of models
~ yj ~ of this domain. A particular variable model y' is inferred when the value of C(PBj)
refers to a certain clearness level. This task is achieved by using the following generic
rule:


IF T11e Control Pattern is PBj AND ak S C(PBj) ~ aK+I THEN YkSY'~Y k+l
(6)

where, the value of y j is generated from the boundaries IYk. Yk+ll-

Hence, the rules employed by the Defuzzifier module establish an association between the
value of C(PBj) and the relevant model (value) y' of the control variable to be applied to
the process. Figure (16) illustrates how six such rules are derived when C(PB'j) is
discretized into six levels. The six rules for this example are:

IF The pattern is PBj and O S C ( PB i ) < al THEN Y~SYI
IF Thepatternis Pgj and al S C(PB~j) < a2 THEN Y~ SY'SY2
IF The pattern is PBj and a2 S C ( Pg~j ) < a3 THEN Y2 SY~SY3
IF The pattern is PBj and a3 S C ( Pg j ) < a4 THEN Y3 Sy'Sy4
IF The pattern is PB j and a4 S C ( Pg j ) < txs THEN Y~ SY'SY5
IF The pattern is PB j and aS S C ( Pg~j ) THEN y5 Sy'

The number of discrete levels is accuracy dependent. i.e. for more accurate control
commands the number of discrete levels is increased to any required limit.

The CTFLC shell has a special d~ba~e module which provides a complete record of the
behaviour of the controller at each phase of operation. At the beginning of each control


SUBSTITUTE SHEET

WO 94/28481 2 1 6 3 0 0 6 PCT/CA93/002~

- 29
cycle. the database contains only the current values of process variables. By the
completion of the fuzzification phase. for example. it will contain a list of the elementary
fuzzy pattems that describe the process situation pattem and the cleamess degree of each
pattem as well. At the completion of the control cycle. the information in this database
serves as an excellent record for the implementation of a backtracking chronological
explanation of the controller operation and decision behaviour. Figure (17) illustrates an
example of the basic elements of the controller cl~b~e

The controller operation and control described so far are coordinated by a Control and
Inference Module. This module is the control core of the system. It coordinates the
operations of the modules and the succession of the four phases of the controller. It also
updates the d~t~b~se with data obtained through the execution of each phase. The control
module applies the appropriate reasoning strategy during each phase depending on the task
to be performed in that phase and arranges an access to the knowledge required to perform
that task .


The approach taken for the design of the CTFLC shell fAcili~tes the development of a
friendly user interface. In developing a particular application. this shell facilitates the
domain knowledge acquisition by providing a framework for the systemization of this
process. This systelT i7~tion is offered through the use of the generic rules of the fonns
(3), (4) and (6) in the development of the Fuzzifier and Defuzzifier modules of the
CTFLC shell. Also. the approach assists the user to define the data N, M, H, and K off-
line. This data is used by the shell to establish the number of rules for each module.
where: "N" is the number of process Variables. "M" is the number of control action
variables . "H" is the number of element~ry fuzzy pattems attached to each variable. and
"K" is the number of cleamess levels used to repr~sent the cleamess distribution of each
elementary fuzzy pattem. The value "K" can be chosen so that a required accuracy in the
operation of the CTFLC system is obtained. The use of the generic rules and the data N,
M, H and K through a friendly user interface offers a convenient basis for a rapid
application development. In on-line operation of the CTFLC shell. the records of the
system database provide the user with a clear picture on the operational behaviour of the
system together with options of altemative solutions evaluated for particular data supplied
by the user.




SUBSTITUTE SHEET

WO 94/28481 ; 2 1 6 3 0 0 6 PCT/CA93/00223

3o
PREFERRED EMBODIMEI~T OF THE CTFLC SYSTEM USING CUSTOMIZED
VLSI CHIP. Next the implementation of the CTFLC using VLSI chips is developed.
The approach for the implementation of the CTFLC expert system shell using rule-based
architecture is employed to build the hardware modules of the system. The integrated
CTFLC controller chip will, therefore. consist of the four modules: Fuzzifier. Pattern
Matching, Approximate Reasoning and Defuzzifier. The proposed integrated chip iscapable of handling the tasks of the fuzzy CTFLC shell described earlier. It is also
capable of implementing any control protocol specified by the generic rule (1) with N
variables connected to the input (to ac4uire the data xi, i = 1, 2, ..., N) from the process
and M variables as the output to apply the control actions (yj, j = 1, 2, ..., M) to the
controlled process. The CTFLC chip is, therefore. a general purpose application device
for fuzzy control and decision-making. In the following, the implementation of each
module is described.

The hardware implementation of the Fuzzifier Module is developed first. The functional
epresentaLion of the Fuzzifier Module at the InputtOutput level is given in Figure 12. The
input to the fuzzifier is the crisp data (xl, ..., x~v) where each xi represents the current
in~t~ntial model of the process variable Lxi. This process data is acquired at a given time
interval and stored in a RAM referred to as "Memorv of Crisp Data" (MCD). The output
of the Fuzzifier is two components. The first is the fuzzy pattern of the process situation
obtained as a set of el.oment~ry

fuzzy patterns such as (PA'I, .... PA'N). The second is a set of the assessment degrees
of the elementary patterns (C(PA'I)max.. C(PA~N)max ). These two outputs are
produced by two functional blocks: Fuzzifier-I and Fuzzifier-II, respectively. They
operate in two cycles so that Fuzzifier-I (cycle 1 ) generates a fuzzy pattern PA'i which
serves as input to Fuzzifier-II to begin cycle 2 in which the clearness degree C(PA~i) is
~enerated. These two cycles are repeated N times (for N variables) in order to accomplish
the task of the Fuzzifier Module.

To implement Fuzzifier-I, it is required that the values of the thresholds of transition (TT)
between the clearness distributions of the elementary fuzzy patterns (PA h), h = 1, 2, ....
H, are determined off-line. Figure (18-a) shows the derivation of the TT values for the
variable L.~i specified by three (H = 3) fuzzy elementary patterns: PLOW. P~ORMAL and
PHIGH . The Fuzzifier recognizes the adequate elementary fuzzy pattern PA h by
deciding the interval (between two TT points) to which xi belongs. This procedure can be


SUBST I TUTE SHEET

wo 94128481 - ~ 2 1 6 3 0 0 6 PCT/CA93/00~-3
31




implemented simply by comparing the value of xi with the values of the thresholcusing a comparator element to implement a comparison of the form ~ . The res
binary code which uniquely corresponds to an elementary fuzzy pattern PAh wh
matches the current state of the process variable. Figure (18-b) shows an examp~codes produced by this comparison for the fuzzy predicates PLOW. PNORMAL and ~
The operation of Fuzzifier-I in generating a binary code for each elementary fuzzy pattern
can be specified using the same generic rule of (3) applied in the C~TFLC shell. rewritten
again here:

IF TT h-l, h < xi < TT h,h+l THEN The Elementarv Fu::y Pattern is
PA h

where: TT ~1-l, h, TT h,/l+l - refer to the values of the threshold of transilion (TT)
betweenthefuzzypatternsPAh-l, PAh and PAh, PAh+l, respectively.

The TT values derived off-line are stored in a ROM memory module called the Memorv
of Thresholds of Transition (MTT). This memory has a page organi7~tion where each
page is devoted to store the TT values for one process variable. Hence. the MTT ROM
contains N pages (one pages for each variable) and H locations in each page (to store the
TT values between H elementary fuzzy pattem for each variable). Each memory location
contains one value of TT. It is required that the page address is generated by an address
generator referred to as the Variable Page Address Generator (VAG). Each time a
measurement xi is acquired from the process, it is applied to the VAG to activate the code
of the page designated to store the TT values of the process variable LXi. Figure (19-a)
shows the page organization of MTT ROM. The schematic representation of the MTT
ROM is shown in Figure (l9-b).

Fuzzifier-I uses a comparator block (see Figure (20)) to generate the codes for the
elementary fuzzy pattems during operation. The comporator contains H elements each
with two inputs. The first input receives the current value xi of the variable LXi. The
other input receives a TT value from the MTT. Hence, each comparator element receives
the same xi but dirrelenl TT value. The two inputs are compared and the result is a binary
code ( p/, P2 ..., PH ) which are activated at the output of the comporator indicating the
code of the recognized elPment~ry fuzzy pattern PA h that describes the current state of the
variable Lxi. Each comparator element generates the value of Ph ~ f 0, 1} by performing
the comparison:


SUBSTITUTE SHEET

wo 94128481 2 1 6 3 0 0 6 PCT/CA93/00223
32




if xi >TTh-l~h
Ph = {
O if xi~TTh,11+1

Hence, by the comple~ition of N cycles the codes of the fuzzy elementary patterns (PA 'l~
..., PA ;l ) are generated. The codes of these elementary pattems are stored in a memory
block referred to as " Register of the Elementary Pattems Codes" (RPC). Figure (21)
shows the organization of the RPC and Fuzzifier -I.
During cycle 2, Fuzzifier-II generates the cleamess degree (local cleamess) C(PA h ) =
ak for each elementary fuzzy pattern generated in cycle 1. Fuzzifier-II implements the
functionality of the equivalent rule-based module described earlier, using the generic rule
of (4), l~w~ en again as:

IF PA h AND CLk S Xi < CLk+l THEN C(PA h ) = ~k

To implement this rule, each clearness level in 1. 1] of r(PAh) is projected on the
domain space Xi. The values obtained serve as threshold points between the cleamess
levels and they are referred to as the "Thresholds of Cleamess Levels" (CL). These
values are generated off-line. Figure (22-a) shows an example of the generation of (CL)
for the elementary fuzzy pattem PHIGH. The clearness distribution r(PHlGH) is
discretized into five cleamess levels (CLk), k = 1, 2, ..., 5) . Figure (22-b) shows
the codes obtained for each cleamess level.

The CL values are stored in a ROM memory module referred to as the Memory of
Cleamess Levels (MCL). The MCL has a page organization. The address for each page
corresponds to the combined code generated from the code of the variable Lxi (obtained
from VAG) and the code of the elementary pattem PAi (generated by Fuzzifier-I).
Hence, for N variables and H

elementary fuzzy patterns att~ched to each variable, the MCL will contain (N x H) pages.
Each page contains K locations (K cleamess levels for each cleamess distribution).
Figure (23-a) shows the page organization of the MCL using a ROM chip and its
schematic equivalent is in Figure (23-b).



SUBSTITUTE SHEET

WO 94/28481 ~ 6 3 0 0 G PCT/CA93/00223

33
Fuzzifier-II uses the structure shown in Figure (24) to generate a code for the value of
C(PAh) = ~k during on-line operation. This structure contains a comparator block
consisting of K comparator elements each having two inputs. The first K inputs of the
comparator receive the crisp value xi . The second K inputs receive "K" values of the
threshold levels (CL) from the MCL. The result of the comparison is a binary code (ql,
q2 ... ~ qK)- The generated code refers uniquely to a certain clearness level interval but
does not refer to the value of this level of cleamess. Hence. a special code
transformation is required to generate the code of the value of cleamess level. This
transformation can be accomplished by a standard chip which we will call the Clearness
Level Transformer (CLT) chip. The input is the code of the elementary fuzzy pattem
PA ~i (generated by Fuzzifier-I in cycle 1) and the code of C(PA~i) generated by Fuzzifier-
II (in cycle 2). The output is the code of the cleamess level C( PA 'i) = ak of the
elementary fuzzy pattem PA 'i- This chip achieves a standard Boolean transformation at
the level of input-output. Hence the implementation of the CLT will not be elaborated.
The Approximate Reasoning Module is developed next. This module is implemented
employing a standard chip that realizes a Min function of its input and referred to as MIN
CHIP. The input to this chip is the clearness degree values ( C(PA '1)...., C(PA 'n)
generated by the CLT chip. The output is the minimum value among these clearnessdegrees. This minimum value is considered as the cleamess degree C(PB~j) of the
control action Pg; . This module operates in parallel with cycle^2 of Fuzzifier-II so that
the code of the cle~rnecs level C(PA 'i) generated by cycle 2 will be immediately compared
with the value generated in the previous cycle, (i.e. C(PA 'i-l )) . The result is stored in
the MIN chip. Hence, at the completion of cycle 2, the MIN-Chip simultaneously gives
the code of the minimllm clearness degree which will be the cleamess degree of the control
action C(Pg jj) . Figure (25) illustrates the operation of this module.

Next the Pattem Matching Module is developed. Figure(26) illustrates the functional
representation of this module at the Input-Output level. The input is the codes of the
elementary patterns of the process situation ( PA~I, PA~2, ..., PA~n) which are
generated by Fuzzifier-I. The output is the code of the fuzzy pattem of the control action
pattem Pg~j and the code of the control variable Lyj . This association can be implemented
using ROM memory module, referred to as the Memory of the Control A ction Pattern
(MCAP). The codes of the elementary fuzzy patterns pattern ( PA '1~ PA '2~ -- PA 'N)
serve as an address to access the MCAP location

where the codes of the control action pattem PB j and the control variable (Lyj) are stored,


SUBSTITUTE SHEET

WO 94128481 - 2 1 6 3 0 0 6 PCT/CA93/00223
34




j = 1, ..., M. ForM control variables and H control acrion patterns associated with
each variable, the MCAP will have M pages and f~ locations in each page. Figure (27)
illu~ tes the page organization of the MCAP.

We now develop the Defuzzifier Module. The defuzzifier has three inputs: the code of the
control variable (Lyj), the code of the pattern of the control action (Pg;) and the code of
the clearness degree value of the control action (C(Pg;) = ak). The output is the crisp
data y'j which represents the control action to be applied to the controlled process. This
task is accomplished using the approach mentioned in the forgoing description of the
invention the CTFLC shell where the generic rule (6) of the defuzzifier is formulated.
This rule is rewritten here again:

IF TheCon~rolPattemis Pg; and xk SC(pBj) < r,c+l THEN yk<Y'<Y
k+l

where, the value of y' is generated from the boundaries [Ylc. Yk+l]- The association
specified by this rule is illustrated in Figure (28-a). This association is implemented using
a ROM memory module referred to as the Memory of Control Action Crisp Data
(MCA D). This ROM has a page organization in which each page is devoted to store the
crisp values associated with the pattern of each control action Pg;. The address of each
page is determined by the combined code of Lyj and PB j (generated by MCAP). Thecode of the clearness degree C(Pg J) serves as an address for the location where the crisp
value of the control action y' is stored. Figure (28-b) shows the the organization of the
MCAD ROM .

It should be noted that in applications where the output is required to be only in the form
of a decision pattern together with its validity (in terms of clearness degree), the
Defuzzifier module will not be required . This case is suited for many applications of
Expert and Operator Support Systems.

The general architecture of the CTFLC chip at the level of functional blocks is presented in
Figure (29). This architect~re implements the basic functional modules (Fuzzifier, Pattern
Matching, Approximate Reasoning and Defuzzifier) through these blocks. The operation
of the CTFLC chip at the level of these functional blocks is presented by the diagram of
Figure (30). The CTFLC chip operates as follows. The process data (xl, .... XN) is
acquired at given time intervals which are equal to the time of an operation cycle of the
controller (the time of executing the four operational phases of the CTFLC system). This


SUBSTITUTE SHEET

WO 94/28481 . 2 1 6 3 0 0 6 PCT/CA93/00223
-



data is stored in MCD RAM and applied to the VAG and the Fuzzifier module. The VAG
uses this data to generate the addresses of the process

variables and apply them to the Fuzzifier. The Fuzzifier uses this data to access the page
of MTT ROM where the TT values are stored. These values are applied to the comparator
of Fuzzifier-I and as a result the code of an elementary fuzzy pattern ( PA i ) for the
current variable (Lxj). i = 1...., N, is generated at the output and stored in the RPC.
Fuzzifier-II uses this code and the address of the variable generated by VAG to access
MCL ROM where the CL values of the pattern ( PA i ) are stored. The CL values are
applied to the comparator of Fuzzifier-II and the code of relevant cleamess level to
measure the clearness degree of the pattem PA'j is generated at the output. This code and
the code of t. pattem itself available from RPC are applied to the CLT chip. The output
is the current value of C( PA i ) which is compared with the current content of the MIN
chip and the result is stored in the register of the cleamess level (RCL) of this chip. This
procedure is repeated N-times for N process variables. By its completition. the RPC will
contain the codes of the elementary fuzzy patterns f PA '1. PA '2~ -, PA 'n) and the
RCL of the MIN chip will contain the minimum value of their clearness degree. The
combined code of the elementary fuzzy pattems in the RPC is applied as an address to
MCAP ROM to retrieve the code of the control action pattem ( PB; ) and the code of the
control variable Ly j . This data and the content of the MIN chip are applied to access
the location of the MCAD ROM where the model value y' of the control variable is stored.
This value serves as the control command to the process. In applications requiring the
~eneration of the control action pattem and its validity, the CTFLC chip will elimin~te the
defuzzification and the output of the MCAP ROM and MIN chip will be the output.

The organization of the CTFLC chip makes the the system flexible for general purpose
applications. It also assists in the systemization of the development of an application.
The addresses of the pages and locations of the MTT ROM, MCL ROM, MCAP ROM
and MCAD ROM can be detemmined off-line for a particular application. It is similar in its
functionality to an expert system shell but implemented on a chip. The volume and the
number of pages, their addresses and the address of each location of the ROMs can be
determined using N, M, H and K values and the codes of the elementary fuzzy pattems,
where "N" is the number of process Variables, "M" is the number of control action
variables ~ "H" is the number of the elementary fuzzy pattems ~tt~ched to each variable,
and "K" is the number of clearness levels used to represent the cleamess distribution of
each elementary fuzzy pattern. The content of each location is determined and


SUBSTITUTE SHEET

WO 94/28481 2 ! 6 3 ~ 0 6 PCT/CAg3/00223
36




programmed off-line using the N~ M, H, K data and the codes of the elementary fuzzy
patterns of a particular control application. Hence. the proposed CTFLC chip offers a
framework for rapid and general purpose application development.



PREFRRED EMBODIMENT OF NEURAL NETWORK IMPLEMENTATION OF THE
CTFLC. The CTFLC system is implemented using an architectllre of back propagation
neural networks. This architecture is shown in Figure (31). It consists of a multiple of
back propagation (PB) neural network blocks each design~ed to execute a specific task of
the CTFLC system operation. These neural blocks are the Fuzzifer, Control Rule
Selection (Pattern Matching). Approximate Reasoning and Defuzzifier. The blocks
execute the same operational phases of the CTFLC system detailed in the forgoingdescription of the invention. It is possible, of course, to execute more than one task
using one relatively larger neural network. This. however. results in a network with large
inputs and outputs which may prove to be cumbersome during the training mode. as well
as, the large memory it requires. Employing several small networks is, therefore, more
practical, though they are equivalent in their functionality.

Each back propagation network block consists of one input layer, one or more hidden
layers and one output layer. Each layer has a number of nodes and each node is connected
through a weight to every node in the layers below and above the layer to which it
belongs. The network has two modes; the learning (training) mode and the recall
(operation) mode. In designing a back propagation network the weights are calculated
using special learning methods called supervised learning. During the learning mode, the
relevant data is presented at the input and output of the network, and the learning
procedure is allowed to iterate to train the network. At the end of the training, the
appropriate weights of the network are obtained. During the recall mode (the mode of
operation) the network generates the appropriate output for any data presented at its input
and belonging to the categories employed during the training. The neural networks are
characterized by their speed of calculation (parallel processing). Addressing very complex
processes in real-time operation is a possible option with these devices.

In designing the various neural network blocks of the CTFLC system, we train these
blocks to obtain the appropriate values of the weights for each of them using supervised
learning. As with all back propagation neural networks, the values of these weights are


SUBSTITUTE SHEET

WO 94/28481 - ` . 2 1 6 3 0 0 6 PCT/CA93/00223

37
not unique for any block. This is an inherent characteristic of back propa ation networks.
The values of these weights also depend on the training data. Since the training data
depends on the application, the weights of the neural network blocks will be different for
the different applications, and, hence, the training should be performed for every
application. In effect. the training is equivalent to storing the expertise knowledge of the
domain in the weights of the network. The forthcoming description. therefore, will be
concemed with the scheme. architPctllre and methods of obtaining applopliate weights for
every block of the system such that these blocks execute the relevant tasks of the CTFLC.
The training algorithms are well documented procedures and will not be further detailed.
In essence we will be describing neural network architecture and implementation for the
fuzzy expert system of the CTFLC.
During the fuzzification phase two tasks are executed. One to generate the elementary
fuzzy pattems which describe the process situation (Fuzzifier-I), and the other to c~lru~
the cleamess degree of the fuzzy pattem (Fuzzifier-II) for the measurement data received
from the process. Therefore, there will be one neural network designed for each task.
This procedure is repeated for every process variable. Evidently, for multivariable
control system the same is lepea~ed for every loop.
Fuzzifier-I neural network block accepts a crisp measurement value as its input, and
genelàtes a code as its output intlic~ting the fuzzy pattern selected. Each fuzzy pattem is
ac.cigned a unique code to replésent it. Any suitable code is admissible and can be used.
Thê network will have a single input only . For N process variables. Fuzzifier-I will
consist of N network blocks.
During the learning mode the weights of the neural network are calculated. To do that the
data is prepared to cover all the models of the process variable at suitable intervals
(discretization) chosen by the decigner. The size of the interval depends on the sensitivity
of the process changes and the range of measurements (the size of the domain of models
of the process variable). However, presenting the data with small interval sizes between
them may lengthen the training period, or even result in the failure of the training. A
trade-off and engineering judgement may, therefore, be necesc~ry. However, few trails
regarding the choice of the interval size is normally sufficient to decide on a suitable size.
The threshold of transition (TT) values should be calculated off-line and used for
comparison. The training procedure is perfommed by applying a crisp value as an input to
the network and the corresponding code (for the fuzzy pattem) at the output. The input
- values between every two successive thresholds of transition correspond to a certain fuzzy
pattem and its cleamess distribution. At the completion of the training the appropriate
weights of the network are obtained. The neural network will have:


SUBSTITUTE SHEET

WO 94/28481 2 1 6 3 0 0 6 PCT/CA93/00223

- 38
i) One input layer with one input.
ii) One hidden layer for most applications.
iii) One output layer with a number of nodes equal to the code of the elementary fuzzy
patterns.
Each process variable has one such neural network.
Having selected the elementary fuzzy pattern in Fuzzifier-I, the neural network of
Fuzzifier-II determines the clearness degree of this fuzzy pattern from its clearness
distribution. Here the neural network accepts two inputs. One input comes from
Fuzzifier-I and consists of the elementary fuzzy pattern code. The other input is the crisp
data measurement received from the process. The output is a code representing a
clearness degree level of the elementary fuzzy pattern.
During the learning mode of Fuzzifier-II neural network to calculate its weights~ the data is
prepared to cover all the domain models for the process variable at suitable intervals

(discretization) similar to that applied in Fuzzifier-I. It should be noted that the clearness
degrees are estim~ted over the interval [0. 1], which makes the sensitivity with which the
neural network should operate rather high. To overcome the difficulty, and to obtain
maximum performance we use the network as a classifier and the interval [0, 1 ] is divided
into levels (for example: 0 -- 0.2, 0.21 -- 0.4, ..., 0.81 -- 1.0) and each of these levels is
replesented by a code. To improve the accuracy of performance the number of these
levels is increased as required. In other words we present the input-output training data
to the network in a form suitable for classification. The learning procedure is performed
by applying an input vector whose elements are the crisp measurement value plus the code
of the fuzzy pattern generated by Fuzzifier-I. The output is the code of cleamess level of
the fuzzy pattern. At the completion of the training the appropriate weights of the network
are obtained. The neural network will have:
i) One input layer. The number of inputs is equal to the code of the elementary fuzzy
patterns associated with each process variable plus one.
ii) One hidden layer for most applications. For higher sensitivity, more hidden layers
may
be required.
iii) One output layer with an output vector. The number of elements in this vector is
equal to
the code of clearness levels chosen for the required accuracy.
Every process variable has one such neural network.



SUBSTITUTE SHEET

wo 94~2~1 ~ 2 1 6 3 0 0 6 PCT/CA93/00223

- 39
For the Control Rule Selection (Pattem Matching) block. the neural network accepts the
outputs of Fuzzifier-I blocks as its inputs. These inputs consist of vectors, each of which
consists of a code representing a fuzzy pattem. The output of this neural network is a
code indicating the fuzzy pattem of the control action as well as the control action process
variable.

During the leaming mode for the calculation of the weights of this network. the data is
prepared to cover all the possible rules of the control protocol of the generic form of (1).
This data consists of the codes for the elementary fuzzy pattems (input) and the codes of
the control action fuzzy pattems and associated control action variables (output). At the
completion of the training the appropriate weights of the network are obtained.
Each network has:
i) One input layer with an input vector whose number of elements equal to the code of
the elementary fuzzy patterns associated with process variable multiplied by thenumber of these variables for each loop.
ii) One hidden layer for most applications. For complex systems more hidden layers
may be
required.
iii) One output layer with a number of nodes equal to the code of the fuzzy patterns of
the control actions and the associated control variable.

For a multivariable control system. each loop will have one such neural block.
For the Approximate Reasoning Block. the neural network accepts the output of
Fuzzifier-II as its input. The output is the minimum value among the values presented at
the input. This is the code of clearness degree which is associated with the control action
pattem. The number of elements in the input vector is equal to the code of clearness levels
multiplied by the number of process variables. The number of element in the output vector
is equal to the code of cle~rnecc level.
During the leaming mode the input and output data is presented to the network in codes
form which is suitable for classification. At the completion of the training the appropriate
weights of the network are obtained.The network will have:
i) One input layer with the number of input elements equal to the code of process variables
multiplied by the code of clearness levels.
ii) One hidden layer for most applications. For complex processes more hidden layers
may be required.


SUBSTITUTE SHEET

WO 94/28481 2 1 6 3 0 0 6 PCT/CA93/00223

4~
iii) One output layer with a number of output elements equal to the code of clearness
levels.
The Defuzzifier Neural Network accepts two input vectors. One from the Control Rule
Selection Block which represents the code of the selected control action pattem as well as
the associated control action variable. and the other input from the Approximate Reasoning
Block. The output is one element of real crisp data representing the value of the control
command going to the process.
During the leaming mode the input data is presented to the network in the form of a vector
whose elements consist of the action pattern and action variable code and the action
pattern clearness level code. The output is a real number representing the control
command issued by the controller to the process. The network will have:
i) One input layer with a number of input elements equal to the code of the control
action
fuzzy pattem and the associated process variable in the loop concemed plus the
code
of the cleamess level.
ii) One hidden layer for most applications. For complex applications more hiddenlayers
may be required.
iii) One output layer with one node.
From the description of the implementation of the CTFLC system using neural networks
it can be noted that the same operation and design principles used in software and
hardware technological bases are maintained. This feature indicates that the design of the
CTFLC system is technologically independent.




SUBSTITUTE SHEET

wo 94/2~1 ~ ` 2 1 6 3 0 0 6 PCT/CA93100223


WE CLAIM:
1. A knowledge-based fuzzy pattern processing system for control and decision
making, which receives one of either input signals or input data rep~esenting status of a process
to be controlled and in response generates one of either output control signals or output data,
comprising:
a) a knowledge-base block containing knowledge on fuzzy patterns, each of said
fuzzy patterns comprising a syn~rtir~l description (S), a domain (D) to which each of said fuzzy
patterns is ~tt~hPd, a clearness distribution (r) which is a set of one of either clearness degrees
or membership function values and forms a cognitive measure of fil77inP~ of each of said fuzzy
patterns, thresholds of transitions between said fuzzy patterns, and fuzzy rules;
b) a first fuzzifier for receiving each of said one of either input signals or input
data and in response generating respective indexes of input fuzzy patterns;
c) a second fuzzifier for receiving each of said one of either input signals or input
data and in response genc,d~ing one of either a ,cs~ective value or respective index of one of
said either clearness degrees or membership function values for each of said input fuzzy patterns;
d) a pattern matching and rule selection subsystem for receiving said indexes ofinput fuzzy patterns and in response generating indexes of output fuzzy patterns by firing only
one of said fuzzy rules from said knowledge-base block;
e) an approximate reasoning subsystem operating in parallel with said pattern
m~trhing and rule selection subsystem, for receiving each said respective value or respective
index of one of said either clearness degrees or membership function values of each of said input
fuzzy patterns and in response generating only one said respective value or respective index of
said either clearness degrees or membership function values; and
f) a defuzzifier for receiving said indexes of output fuzzy patterns and said only
one said respective value or respective index of one of said either clearness degrees or
membership function values and in response generating one of said output control signals or
output data for each of said output fuzzy patterns.

2. The knowledge-based fuzzy pattern processing system of claim 1, wherein said




SUBSTITUTE SHEET

Wo 94/28481 2 1 6 3 0 0 6 PCT/CA93100223

42
first fuzzifier further comprises means for comparing said one of either input signals or input
data with said thresholds of transitions between said fuzzy pattems stored in said knowledge-base
block and in response generating said indexes of input fuzzy patterns.

3. The knowledge-based fuzzy pattern processing system of claim 1, wherein said
second fuzzifier further comprises means for either retrieving said clearness measures from said
knowledge-base block or co,npaling said one of either input signals or input data with said
clearness distribution stored in said knowledge-base block and in response generating said one
of either a respective value or respective index of said either clearness degrees or membership
function values for each of said input fuzzy patterns.

4. The knowledge-based fuzzy pattern processing system of claim 1, wherein said
pattern matching and rule selection subsystem further comprises means for mapping said indexes
of input fuzzy patterns into said indexes of output fuzzy patterns of the fired said only one of
said fuzzy rules from said knowledge-base block.

5. The knowledge-based fuzzy pattern processing system of claim 1, wherein said
approximate reasoning subsystem which receives from said second fuzzyifier said respective
value or respeclive index of one of said either cleamess degrees or membership function values
of each of said input fuzzy pattems, further comprises means for computing a single value or
index out of said either clearness degrees or membership function values and assigning said
single value or index to said output fuzzy patterns.

6. The knowledge-based fuzzy pattern processing system of claim 1, wherein said
defuzzifier further comprises means for directly mapping said indexes of output fuzzy pattems
and said only one said respective value or respective index of said either clearness degrees or
membership function values into said one of either output control signals or output data.

7. The knowledge-based fuzzy pattern processing system according to any one of
claims 1, 2, 3, 4, 5 or 6, wherein said knowledge-base block, said first fuzzifier, said second




SUBSTITUTE SHEET

wo 94/28481 ~ ` 2 1 6 3 0 0 6 PCT/CAg3/00223

43
fuzzifier, said pattern m~tching and rule selection subsystem, said approximate reasoning
subsystem, and said defuzzifier are implemented as software for one of either general purpose
usage or for development of a particular application, said software being in the form of one of
either an application program or an expert system shell.

8. The knowledge-based fuzzy pattern processing system according to any one of
claims 1, 2, 3, 4, 5 or 6, wherein said knowledge-base block, said first fuzzifier, said second
fuzzifier, said pattern m~tching and rule selection subsystem, said approximate reasoning
subsystem, and said defuzzifier are implemented in hardware using VLSI chips.

9. The knowledge-based fuzzy pattern processing system according to any one of
claims 1, 2, 3, 4, 5 or 6, wherein said knowledge-base block, said first fuzzifier, said second
fuzzifier, said pattern m~tching and rule selection subsystem, said approximate reasoning
subsystem, and said defuzzifier are implemented using a neural network.

10. A method of generating one of either output control signals or output data in
response to receiving one of either input signals or input data in a knowledge-based fuzzy pattern
proces~;ng system for control and decision making, comprising the steps of:
a) storing synt~rtir~l descriptions of fuzzy patterns, clearness measures of
said fuzzy patterns which are CA~)lC55ed in the form of one of either clearness degrees or
membership function values, thresholds of transitions between said fuzzy patterns, and fuzzy
rules;
b) receiving each of said one of either input signals or input data and in
response generating respective indexes of input fuzzy patterns;
c) receiving each of said one of either input signals or input data and in
response generating one of either a respective value or respective index of one of said either
clearness degrecs or membership function values for each of said input fuzzy patterns;
d) in parallel (i) receiving said indexes of input fuzzy pattems and -- responsegenerating indexes of output fuzzy patterns by firing only one of said fuzzy ru and (ii)
receiving each said respective value or respective index of one of said either cle~ degrees




SUBSTITUTE SHEET

wo 94/28481 2 ~ 6 3 0 0 6 PCT/CA93/00223


or membership function values of each of said input fuzzy patterns and in response generating
only one said respective value or respective index of said either clearness degrees or membership
function values; and
e) receiving said indexes of output fuzzy patterns and said only one said
~csl~ecLi~re value or respective index of one of said either clearness degrees or membership
function values and in response generating one of said either output control signals or output data
for each of said output fuzzy patterns.

11. A back propagation neural network architecture for a clearness transformation
fuzzy logic control system, said architecture comprising:
first fuzzifier means having a plurality of back propagation neural networks
blocks, each block comprising a plurality of layers, each layer comprising a plurality of neurons
operating in parallel, with each layer for receiving layer input signals and generating layer output
signals, such that each block accepts crisp data inputs from a process to be controlled and for
gen~ld~ing an output le~l~se~-ting an elementary fuzzy pattern of said process situation;
a second fuzzifier means having a plurality of back propagation neural network
blocks, each block comprising a plurality of layers, each layer comprising a plurality of neurons
in parallel with each layer receiving layer input signals and generating layer output signals, such
that each block accepts as input said crisp data measurements from said process to be controlled
as well as the output of the first fuzzifier means, and for generating an output ~cl~lcsenting a
clearness level of said elementary fuzzy pattern of said process situation;
a back propagation neural network block for control rule matching having a
plurality of layers, each layer comprising a plurality of neurons operating in parallel, with each
layer input signals and generating layer output signals, said block for receiving the outputs of
said first fuzzifier means ,el)lesellting said elementary fuzzy patterns of said process situation
and for generating outputs ,el),,senting a selected control action pattern;
a back propagation neural network block for approximate reasoning having a
plurality of layers, each layer comprising a plurality of neurons operating in parallel, with each
layer receiving layer input signals and for generating layer output signals, said block for
accepting said outputs of said second fuzzifier means which represent the clearness degrees of




SUBSTITUTE SHEET

wo 94/28481 ~ 1 6 3 0 0 6 PCT/CA93/00223


the elementary fuzzy patterns of the process situation as inputs and for generating an output
repl~s~nting a minimum value of these clearness degrees; and
defuzzifier means having a plurality of back propagation neural network blocks,
each said block having a plurality of layers, each layer having a plurality of neurons ope,ating
in parallel, with each layer receiving layer input signals and for generating layer output signals,
each said block having a first input for receiving said output of said rule matching neural block
r~læse~-ting the sele~t~d control action pattern as well as the control variable, and a second input
for receiving the output of said approximate reasoning neural block which ~c~rcsellts the
clearness degree of the control action fuzzy pattern and having an output for generating crisp
data repl~ser,li"g a control command for said process to be controlled.




SUBSTITUTE SHEET

Representative Drawing
A single figure which represents the drawing illustrating the invention.
Administrative Status

For a clearer understanding of the status of the application/patent presented on this page, the site Disclaimer , as well as the definitions for Patent , Administrative Status , Maintenance Fee  and Payment History  should be consulted.

Administrative Status

Title Date
Forecasted Issue Date Unavailable
(86) PCT Filing Date 1993-05-20
(87) PCT Publication Date 1994-12-08
(85) National Entry 1995-11-15
Dead Application 1999-05-20

Abandonment History

Abandonment Date Reason Reinstatement Date
1998-05-20 FAILURE TO PAY APPLICATION MAINTENANCE FEE

Payment History

Fee Type Anniversary Year Due Date Amount Paid Paid Date
Application Fee $0.00 1995-11-15
Maintenance Fee - Application - New Act 2 1995-05-22 $50.00 1995-11-15
Maintenance Fee - Application - New Act 3 1996-05-20 $50.00 1996-05-21
Maintenance Fee - Application - New Act 4 1997-05-20 $50.00 1997-05-14
Owners on Record

Note: Records showing the ownership history in alphabetical order.

Current Owners on Record
SULTAN, LABIB
JANABI, TALIB H. AL
Past Owners on Record
None
Past Owners that do not appear in the "Owners on Record" listing will appear in other documentation within the application.
Documents

To view selected files, please enter reCAPTCHA code :



To view images, click a link in the Document Description column. To download the documents, select one or more checkboxes in the first column and then click the "Download Selected in PDF format (Zip Archive)" or the "Download Selected as Single PDF" button.

List of published and non-published patent-specific documents on the CPD .

If you have any difficulty accessing content, you can call the Client Service Centre at 1-866-997-1936 or send them an e-mail at CIPO Client Service Centre.


Document
Description 
Date
(yyyy-mm-dd) 
Number of pages   Size of Image (KB) 
International Preliminary Examination Report 1995-11-15 13 449
PCT Correspondence 1998-09-16 1 42
PCT Correspondence 1996-01-25 1 48
PCT Correspondence 1996-01-25 1 43
Office Letter 1997-02-24 1 10
Prosecution Correspondence 1995-11-14 1 32
Description 1994-12-08 45 2,122
Representative Drawing 1998-07-15 1 10
Cover Page 1996-12-16 1 15
Abstract 1994-12-08 1 64
Claims 1994-12-08 6 257
Drawings 1994-12-08 31 490
Correspondence 1998-10-06 1 1
Correspondence 1998-10-06 1 2
Fees 1996-05-21 1 45
Fees 1997-05-14 1 69
Fees 1995-11-15 1 58