Architectures of Computational Verb Controllers: Towards a New Paradigm of Intelligent Control

Embed Size (px)

DESCRIPTION

A paper on intelligent control theory.

Citation preview

  • 74 INTERNATIONAL JOURNAL OF COMPUTATIONAL COGNITION (HTTP://WWW.YANGSKY.COM/YANGIJCC.HTM), VOL. 3, NO. 2, JUNE 2005

    Architectures of Computational Verb Controllers:Towards a New Paradigm of Intelligent Control

    Tao Yang

    Abstract There are at least two kinds of methods of designing(computational) verb proportional-integral-derivative(PID) con-trollers. The first one is to generalize fuzzy PID controllersby substituting BE in fuzzy control rules with non-staticcomputational verbs. The second one is to directly constructevolving functions of verbs in human experiences of dynamicprocesses. These methods will lead to different architectures ofverb PID controllers because computational verb theory can beused in different situations where adjectives or noun phraseshave different computational interpretations. Three examples ofthese computational interpretations of nouns are crisp, fuzzy andprobabilistic. Correspondingly, a PID controller can be designedbased on crisp or fuzzy representations of human experiences. Ifthe dynamic aspects of these human experiences are emphasizedexplicitly, the resulting design principle must take advantage ofthe computational verb theory. This is the principle behind thearchitectures of the verb PID controllers. The basics of fuzzylogic and fuzzy PID controllers can help the reader to understandthis paper. However, the fuzzy logic is only one of at least threemethods of interpreting computational nouns used together withcomputational verbs. Therefore, fuzzy logic is not an essentialcomponent for designing computational verb controllers thoughit is a very helpful component.

    In this paper, a detailed method of designing verb PIDcontrollers by generalizing fuzzy PID controllers are presented.The static and local fuzzy rules are transformed into dynamic andglobal verb rules by representing fuzzy rule sets on phase plots.The control trajectories are chunked into a set of computationalverbs based on the dynamic experiences generated by therelations among a group of fuzzy control rules. Using thesecomputational verbs, three sets of control rules, respectively forP-, I- and D-components, based on computational verbs(verbrules for short) are generated from the dynamic experiencesmodelled by using mental experiments. To implement these verbrules, verb implication relations are constructed based on verbsimilarity functions which are generated based on a set ofstandard verbs for modelling dynamic experiences. The last stepto implement verb PID controllers is to calculate the control verbbased on the observe verb and verb rule inference called verbgeneralized modus ponens(GMP). The results of a verb GMP isa verb similarity which is the union of a set of verb similarityfunctions modified by verb rule firing adverbs. At the symboliclevel, the resulting verb similarity of a verb GMP correspondingto a control verb. The control verb must be deverbified intoa conventional control signal before the control loop can beclosed in the physical world. Simulation results for controlling adelayed second-order process are used to demonstrate the designprocesses for verb P-, PD- and PID controllers. Copyright c 2004-

    Manuscript received October 21, 2003; revised February 13, 2004; July 15,2004.

    Department of Electrical Engineering and Computer Sciences, YangsScientific Research Institute, 1303 East University Blvd. # 20882 Tucson,Arizona 85719-0521, USA. Email: [[email protected]]

    Publisher Item Identifier S 1542-5908(05)10210-3/$20.00Copyright c2004-2005 Yangs Scientific Research Institute, LLC.All rights reserved. The online version posted on June 1, 2004 athttp://www.YangSky.com/ijcc32.htm

    2005 Yangs Scientific Research Institute, LLC. All rights reserved.

    Index Terms Intelligent control, computational verb, PIDcontroller, verb controller, fuzzy theory, verb similarity, verbinference, verb reasoning, fuzzy controller, PID controller.

    I. INTRODUCTION

    WE sometimes feel more conformable to manipulate ourown languages than formal logic or numbers, this isat least my personal feeling and I think it is shared by manyothers. With a background of control engineering, sometimesI asked myself: What is an intelligent controller? Or in a moregeneral context, what an intelligent system should be? Finally,I gave up my efforts of casting a comfortable definition ofintelligence because its meaning is a verb collapse[18] ofa verb phrase1 become intelligent that has no truth valueof any sort unless it is dead[15]. Since either the intelligenceof each individual or the collective intelligence of the entirehuman society evolves continuously along time, we alwayson the course of becoming intelligent. It will be hopelessto imagine the verb collapse of become intelligent forour current society, therefore, it will be hopeless to defineintelligence. Instead, I use a poor mans working definitionof intelligence as follows.

    Poor mans working definition of intelligent sys-tems. An intelligent system reduces the mental stressof achieving a goal. The most intelligent system is ahuman individual in the sense that one can reducesthe mental stress to a minimum amount, which isused to generate a verbal command, by asking otherperson to achieve a goal. Therefore, the smartestman-made system must have the ability to groundnatural languages.

    The definition above is in fact the reason for the initiativeof computational verb theory. To the best knowledge of theauthor, before the initiative of computational verbs[4], [5],there was no systematic implementation of verbs in engineer-ing problems. As addressed in the newly developed physicallinguistics[18], [21], we have already systematically usedfuzzy theory[23] and probabilities to implement adjectives andnoun phrases for different kinds of engineering problems. Incontrast to the maturation of the paradigms that engineersused to cope with adjectives and noun phrases, the infancy ofcomputational verb theory, which is the only existing paradigm

    1Here we will use verb phrase and verb interchangeable because weonly emphasize the dynamics modelled by natural languages. The ways ofrepresenting these dynamics in natural languages are not our main interest.

  • YANG, ARCHITECTURES OF COMPUTATIONAL VERB CONTROLLERS 75

    for making verbs computable, is extremely striking. The hugegap between the degrees of maturities of these two kinds ofparadigms comes with the following reasons.

    1) Static versus dynamic. With the current mainstreamarchitecture of computers, a piece of knowledge is morelikely to be implemented by a set of static tokens;namely, members of a formal symbolic system. Torepresent a piece of dynamic knowledge such as a videoclips, huge amount memory is needed. Only recentlycomputer systems can offer cheap and fast solutionsto partially solve this problem. We still feel painfulto manipulate a computer to recall a piece of visionmemory while we feel painless to recall a smiling facialexpression anytime and anyplace. However, with thefuture development of cognitive computers, computerscan gain more and more the ability of handling dynamicknowledge. This tendency might be helpful to solve theconflict between static and dynamic representations.

    2) Rational versus irrational. A theory needs to preservetruth in order to be scientific based on repeatablemeasurements or to be formal based on mental de-duction. However, verbs intrinsically have nothing to sayabout truth. Verbs represent irrational aspects of humanthinkings. It is not comfortable to handel verbs in ascientific framework if we do not find a way to bridgerational symbolic systems and the irrational aspects ofthoughts. In computational verb theory, a mechanismor hardware called machinself2 was used to functionas the irrational aspects of human thoughts. One of themain focus of computational verb theory is to implementirrational aspects of human intelligence into man-mademachines.

    3) Linguistics versus engineering. When a control engi-neer try to design or adjust the parameter settings ofa controller, what in the mind is the design detailsand often the fact that these details are described byusing sentences in natural languages in many occasionsis ignored. Since the intrinsic ambiguities in naturallanguages, the tradition of pursuing accuracy in bothsciences and specially in engineering prevent naturalscientists and engineers from designing in natural lan-guage terms. On the other hand, linguists rarely thoughtabout there are many natural language statements inengineering problems need their expertise. Since thishistorical gap between linguistics and engineering, manylinguistic problems in engineering were solved usinginefficient tools such as numerical problem solvers.

    As the first try of a paradigm shift for solving engineeringproblems using verbs, the computational verb theory andphysical linguistics have undergone a rapid growth since thebirth of computational verb in the Department of Electrical En-gineering and Computer Sciences, University of California atBerkeley in 1997[4], [5]. The paradigm of implementing verbsin machines were coined as computational verb theory[18].The building blocks of computational theory are computationalverbs[13], [8], [6], [14], [19]. The relation between verbs

    2It was coined from machine and itself [5].

    and adverbs was mathematically defined in [7]. The logicoperations between verb statements were studied in [9]. Theapplication of verb logic to verb reasoning is addressed in [10]and further studied in [18]. A logic paradox was solved basedon verb logic[15]. The mathematical concept of set was gener-alized into verb set in[12]. Similarly, for measurable attributes,the number systems can be generalized into verb numbers[16].The applications of computational verbs to predictions werestudied in [11]. The applications of computational verbs todifferent kinds of control problems were studied on differentoccassions[17], [18]. In [20] fuzzy dynamic systems were usedto model a special kind of computational verb that evolvesin a fuzzy space. The relation between computational verbtheory and traditional linguistics are studied in [18], [21]. Theprimary application of computational verbs to P-controllerscan be found in [22].

    Conventional and fuzzy PID controllers were widely usedin many engineering applications and consumer products[1]and of great importance to practical engineering processes.Enormous amount of experiences had been accumulated in thedesign of different kinds of PID controllers. My thesis here isto take advantage of the intelligence in human dynamic experi-ences such that the design of PID controllers can embed moreflexibility that natural languages can offer. Here the designprinciples of verb PID controller will be addressed under amore systematic framework. A primary design example canbe found in [22].

    The organization of this paper is as follows. In Section IIthe basics of the design of PID controllers will be presentedto make this paper self-contained. In Section III the com-putational verb rules and computational verb inference willbe studied for the purpose of implementing verb controllersbased on verb rules. In Section IV, the verb PID controllers aredesigned based on the generalization of fuzzy gain schedulersof PID controllers. In Section V, some concluding remarks aregiven.

    II. BASICS OF PID CONTROLLERS

    D-ComponentKd (t)

    P-ComponentKp (t)

    I-ComponentKi (t)

    Plant/Process

    r(t) +

    -

    e(t) +++

    u(t) y(t)

    PID-Controller

    Fig. 1. The block diagram of a conventional PID controller in the closedloop.

    The block diagram of a conventional proportional-integral-derivative(PID) controller in the closed loop is shown in Fig. 1where r(t) is a reference signal, y(t) is the output, e(t) ,r(t) y(t) is the control error, and u(t) is the control signal.The PID-controller consists of three components; namely, a P-component with a parameter Kp(t) called proportional gain,

  • 76 INTERNATIONAL JOURNAL OF COMPUTATIONAL COGNITION (HTTP://WWW.YANGSKY.COM/YANGIJCC.HTM), VOL. 3, NO. 2, JUNE 2005

    an I-component with a parameter Ki(t) called integral gain,and a D-component with a parameter Kd(t) called derivativegain. The control law is defined by a mapping between u(t)and e(t) and is given by the following linear combination inthe time domain

    u(t) = Kp(t)e(t) +Ki(t) t0

    e()d +Kd(t)de(t)dt

    . (1)

    If we implement the PID controllers by using digital pro-cessors, the following discrete-time form of PID controller isuseful

    u(k) = Kp(k)e(k) +Ki(k)Tski=0

    e(i) +Kd(k)Ts

    e(k) (2)

    where Ts is the sampling period for the digital controller, u(k)and e(k) are the control signal and the error at the samplingmoment kTs, respectively. Kp(k),Ki(k), and Kd(k) are theproportional, integral and derivative gains at the samplingmoment kTs, respectively. And we define the change of errorduring the sampling interval [(k 1)Ts, kTs] as e(k) ,e(k) e(k 1).

    The authors of [2] lumped fuzzy PID controllers into atleast 4 categories, here we only consider the implementationof the gain-scheduling fuzzy PID controllers of which theblock diagram is shown in Fig. 2. Observe that in Fig. 2the parameters of the PID controller are tuned by the fuzzyinference engine.

    D-ComponentKd (t)

    P-ComponentKp (t)

    I-ComponentKi (t)

    Plant/Process

    r(t) +

    -

    e(t) +++

    u(t) y(t)

    PID-Controller

    Fuzz

    y ru

    les

    and

    reas

    on

    ing

    Fuzz

    ifica

    tion

    Def

    uzz

    ifica

    tion

    Fuzzy inference engine

    Fig. 2. The block diagram of a fuzzy PID controller, in which the gain-scheduling control strategy is used, in the closed loop.

    As presented in Chapter 6 of Reference [18] that thestructure of a verb PID controller corresponding to the fuzzyPID controller in Fig. 2 can be easily constructed as shown inFig. 3. The striking similarity between a fuzzy PID controllerand a verb PID controller results from the fact that the onlyverb used in fuzzy logic; namely, BE is a special kind ofverb called static verb. However, as shown in the existingexamples of verb controllers[18], [22] the design principlesare dramatically different between these two kinds of PID

    controllers. First, the output of the verbification block isa verb observe. The verb inference is based on verb GMPfirst presented in Section 5.3.3 of Reference [18]. However,since the original verb GMP, which is only one of manypossible verb GMPs, was based on the collapses of verbs,we need to develop a new verb GMP based on the methodpresented in the examples in [22]. Before we can present thedesign details of verb PID controller, we need to review somebasics of (computational) verb rules and (computational) verbinference.

    D-ComponentKd (t)

    P-ComponentKp (t)

    I-ComponentKi (t)

    Plant/Process

    r(t) +

    -

    e(t) +++

    u(t) y(t)

    PID-Controller

    Ver

    b ru

    les

    and

    reas

    on

    ing

    Ver

    bific

    atio

    n

    Dev

    erbi

    ficat

    ion

    Verb inference engine

    Fig. 3. The block diagram of a computational verb PID controller in theclosed loop.

    III. COMPUTATIONAL VERB RULES AND COMPUTATIONALVERB INFERENCE

    In the context of engineering applications, the definition ofcomputational verb in [18] is too complex to be operational.A light working definition of computational verb is used here.

    Computational Verb. A computational verb V isdefined by the following evolving function

    EV : T (3)where T j R and j Rn are the time and theuniverse of discourse, respectively.

    A. Canonical Computational Verbs for Verb PID ControllersIn order to ease the implementations of verb PID controllers

    by using VLSI chips, we need to minimize the number ofdifferent verbs used in a verb controller. One way to dothis is to choose a few canonical computational verbs[13]for different kinds of controllers. From the design example in[22] we know that in verb PID controllers, only one canonicalcomputational verb; namely, become, is needed.

    In the context of verb PID controller, the canonical formof verb become can be represented as become(state 1,state 2) where state 1 and state 2 can be crisp orfuzzy numbers or a special value current. Some examples

  • YANG, ARCHITECTURES OF COMPUTATIONAL VERB CONTROLLERS 77

    of becomes are listed in Table I. Observe from Table I thatthe canonical forms of verb statements can be implementedby rich variations of verb statements in which different kindsof adverbs/adverbials might be used. In the canonical formslisted in Table I, the symbol denotes an operation betweenan adverb/adverbial and a computational verb[7]. Also observethat as a special case of verb statements, the fuzzy statementsin the last two rows of Table I can also be represented bycanonical forms in become.

    B. Verb SimilarityThe similarity between verbs(verb similarity, for short) is

    of the essential importance to the inference of verb rules[18].Since there is no crisp definition of similarity between twodynamic systems, the verb similarity can be defined based onmany different concerns as addressed in [18]. Therefore, ratherthan give a closed form of the definition of verb similarity, theboundary conditions are used to define it as follows.

    Verb Similarity. Given two computational verbs V1and V2, the verb similarity S(V1,V2) should satisfythe followings.

    1) S(V1,V2) [0, 1];2) S(V1,V2) = S(V2,V1);3) S(V1,V2) = 1 if V1 = V2 almost everywhere,

    where V1 = V2 means both computationalverbs have the same evolving function.

    For the purpose of the design of digital verb controllers,we only consider the cases when the evolving functions ofthe computational verbs are discrete-time samples. Let twocomputational verbs V1 and V2 with normalized evolvingfunctions EV1(k) [0, 1], EV2(k) [0, 1],k Z, then threeverb similarities are listed in Eqs. (4), (5) and (6)(see nextpage).

    Observe that when both computational verbs are dead;namely, EV1(k) = EV2(k) = 0, k, then we define theirsimilarity as 0. Otherwise, the verb similarities in Eqs. (4)and (5) can only be 0 when one of EV1(k) and EV2(k) is zerofor all k. In summery, when at least one of EV1(k) and EV2(k)is 0 for all k, then the verb similarities (4) and (5) are zero.

    C. Verb Inference with Single Verb RuleThe process of evaluating a verb statement is called verb

    inference. In the design of verb controllers, we will use verbgeneralized modus ponens (GMP). In verb GMP, when a verbIF/THEN rules and its antecedent, which is a verb statement,are approximately matched, a consequent, which is also a verbstatement, may be inferred. If we only consider one verb rule,a verb GMP can be formally written as

    IF NP1 Vx0, THEN NP2 Vy0.NP1 V1

    NP2 V2 (7)where NP1 and NP2 denote two noun phrases and V1 is anobserved verb matching the antecedent computational verb to

    a verb similarity. All computational verbs above the line areconsidered known, whereas the computational verb blow theline; namely, V2 is considered unknown. A (computational)verb rule can be analytically represented by a verb implicationrelation. In verb relations we consider pairs or more generallyn-tuples related to a degree of verb similarity. In contrast tothe question of whether some verb belongs to a verb set maybe considered a matter of degree of verb similarity, whethersome verbs are associated may also be a matter of degree ofverb similarity. In computational verb theory, computationalverb relations play roles much like relation functions do inconventional approaches.

    A computational verb relation R is defined over the Carte-sian product of two or more verb sets. For this moment let usonly consider verb relations defined over the Cartesian productof two verb sets Vx and Vy . Here we assume that both verbsets have only finite number of computational verbs as

    Vx = {Vx0,Vx1, . . . ,Vxm},Vy = {Vy0,Vy1, . . . ,Vyn}. (8)

    Let a binary verb relation R defined on VxVy , then we canlist all its pairs explicitly as follows

    R = {((Vx,Vy), R(Sx(Vx0,Vx), Sy(Vy0,Vy)))},R =

    (Vx,Vy)VxVy

    R(Sx(Vx0,Vx), Sy(Vy0,Vy))/(Vx,Vy)

    (9)where every pair (Vx,Vy) belongs to Vx Vy , Sx(, ) andSy(, ) are two verb similarities, Vx0 and Vy0 are referencecomputational verbs, R : [0, 1] [0, 1] [0, 1] is calleda verb relation operator. Some examples of verb relationoperators are as follows.

    R(x, y) = x y, (10)R(x, y) = (x y) (1 x), (11)R(x, y) = x y, (12)R(x, y) = 1 (1 x+ y), (13)

    R(x, y) = (1 x) y, (14)R(x, y) = 1 x+ x y, (15)R(x, y) = 0 (x+ y 1), (16)

    R(x, y) ={

    1, if x y,y, if x > y, (17)

    R(x, y) ={

    1, if x y,y/x, if x > y, (18)

    R(x, y) ={

    1, if x y,0, if x > y, (19)

    R(x, y) =

    x, if y = 1,y, if x = 1,0, if x < 1, y < 1. (20)Observe that methods of calculating verb similarities might

    be different if qualitative behaviors of the computational verbsin the associated computational verb pairs are different. Verb

  • 78 INTERNATIONAL JOURNAL OF COMPUTATIONAL COGNITION (HTTP://WWW.YANGSKY.COM/YANGIJCC.HTM), VOL. 3, NO. 2, JUNE 2005

    TABLE IEXAMPLES OF VERB STATEMENTS AND THEIR CANONICAL FORMS IN become.

    Verb statements Canonical forms in become|e(k)| decreases become(current, less than current)|e(k)| decreases to small become(current, small)|e(k)| increases to ten become(current less than ten, ten)|e(k)| increases from small to big become(small, big)|e(k)| decreases from 10 to 0.01 become(10, 0.01)|e(k)| climbs very fast (very fast) become(current, bigger than current)|e(k)| jumps up (very fast) become(current, bigger than current)|e(k)| bounces back become(current, before current)|e(k)| stays high become(high, high)|e(k)| is high become(high, high)

    S(V1,V2) =

    1

    nk=0

    |EV1(k) EV2(k)|n

    k=0

    EV1(k) + EV2(k),

    nk=0

    EV1(k) + EV2(k) 6= 0,

    0, otherwise.

    (4)

    S(V1,V2) =

    1

    nk=0

    [EV1(k) EV2(k)]2 nk=0

    [EV1(k) + EV2(k)]2,

    nk=0

    [EV1(k) + EV2(k)]2 6= 0

    0, otherwise.

    (5)

    S(V1,V2) =

    nk=0

    EV1(k) EV2(k)n

    k=0

    EV1(k) EV2(k),

    nk=0

    EV1(k) EV2(k) 6= 0,

    0, otherwise.

    (6)

    relation operators must be chosen with the following concernsbeing taken care of.

    1) To choose a proper method of calculating computationalverb similarity such that the degree of verb similarity hasa well defined relation to the quantitative and qualitativechanges of the system behaviors.

    2) Must be consistent with dynamic experiences of humanbeings.

    3) If conflictions shall arise when a verb relation operatoris used to handle dynamic experiences, then the conflic-tions must be resolved by using new verb similaritiesand/or by adding new computational verb relations.

    As an example of verb relation, let us consider the followingexperiences

    1. IF |e(t)| decreases, THEN Kp increases;2. IF |e(t)| decreases fast,

    THEN Kp increases slowly;3. IF |e(t)| decreases very fast,

    THEN Kp increases very slowly. (21)

    In this example, we have

    Vx = {decrease, decrease fast, decrease very fast},Vy = {increases, increases slowly,

    increases very slowly}. (22)Assume that we can choose two verb similarities, Sx(, )

    and Sy(, ) such thatSx(decreases, decreases) > Sx(decreases, decreases fast)> Sx(decreases, decreases very fast),Sy(increases, increases) > Sy(increases, increases slowly)> Sy(increases, increases very slowly). (23)

    Let us assume that in the rule set (21) we choose the firstrule as the reference rule, which sets the basic tune of thequalitatively invariant property behind the rule set. The secondand the third rules only entail the first rule. Therefore, for verbsimilarities Sx and Sy we can choose computational verbsdecrease and increase as the reference verbs, respectively.Therefore, verb rule set (21) gives a way of associating threegroups of verb phrases, this can be defined by a verb relationas in Table II. If the verb relation operator (10) is chosen, thenthe verb relation is given by Table III.

  • YANG, ARCHITECTURES OF COMPUTATIONAL VERB CONTROLLERS 79

    TABLE IIA VERB RELATION FOR MODELLING THE ASSOCIATION BETWEEN TWO KINDS OF DYNAMICS . ONE FOR THE ERROR SIGNAL |e(t)| AND THE OTHER FOR

    PROPORTIONAL GAIN Kp .

    R(1, 1)/(decrease, increase)R(1, Sy(increase, increase slowly))/(decrease, increase slowly)R(1, Sy(increase, increase very slowly))/(decrease, increase very slowly)R(Sx(decrease, decrease fast), 1)/(decrease fast, increase)R(Sx(decrease, decrease fast), Sy(increase, increase slowly))/(decrease fast, increase slowly)R(Sx(decrease, decrease fast), Sy(increase, increase very slowly))/(decrease fast, increase very slowly)R(Sx(decrease, decrease very fast), 1)/(decrease very fast, increase)R(Sx(decrease, decrease very fast), Sy(increase, increase slowly))/(decrease very fast, increase slowly)R(Sx(decrease, decrease very fast), Sy(increase, increase very slowly))/(decrease very fast, increase very slowly)

    TABLE IIIA VERB RELATION FOR MODELLING THE ASSOCIATION BETWEEN TWO KINDS OF DYNAMICS . ONE FOR THE ERROR SIGNAL |e(t)| AND THE OTHER FOR

    PROPORTIONAL GAIN Kp . THE VERB RELATION OPERATOR (10) IS CHOSEN.

    1/(decrease, increase)Sy(increase, increase slowly)/(decrease, increase slowly)Sy(increase, increase very slowly)/(decrease, increase very slowly)Sx(decrease, decrease fast)/(decrease fast, increase)min(Sx(decrease, decrease fast), Sy(increase, increase slowly))/(decrease fast, increase slowly)min(Sx(decrease, decrease fast), Sy(increase, increase very slowly))/(decrease fast, increase very slowly)Sx(decrease, decrease very fast)/(decrease very fast, increase)min(Sx(decrease, decrease very fast), Sy(increase, increase slowly))/(decrease very fast, increase slowly)min(Sx(decrease, decrease very fast), Sy(increase, increase very slowly))/(decrease very fast, increase very slowly)

    If the verbs in each of the two verb sets Vx and Vycorrespond to dynamics with qualitatively the same property, itis possible to construct a verb relation based on two referenceverbs, Vx0 and Vy0, and two sets of adverbs

    Ax , {x0 = e, x1, . . . , xm}, andAy , {y0 = e, y1, . . . , yn} (24)

    where e represents the adverb equivalently with theproperty

    V = e V, computational verb V.Let us assume that the correspondences between the verbs setsin (8) and the two adverb sets in (24) are given by

    Vxi = xi Vx0, i = 1, 2, . . . ,m;Vyj = yj Vy0, j = 1, 2, . . . , n. (25)

    Based on Ax and Ay we can find two similarity functionsdefined by

    x(xi) = Sx(Vx0, xi Vx0), i = 0, 1, . . . ,m;y(yj) = Sy(Vy0, yi Vy0), j = 0, 1, . . . , n. (26)

    Without loss of generality, let us assume that

    x(xi) x(x(i+1)), i = 0, 1, . . . ,m 1; (27)y(yj) y(y(j+1)), j = 0, 1, . . . , n 1. (28)

    It is obvious that in natural languages, the numbers of adverbsfor modifying the representation of a dynamical process areusually small. Therefore, m and n should not be big numbers.Let us assume that the verb similarity Sx(Vx0, xi Vx0)satisfies

    Sx(Vx0, xi Vx0) = Sx(e Vx0, xi Vx0) , Sx(e, xi); (29)

    namely, the verb similarity of two adverbs is calculated byusing the following property

    Sx(e, xi) = Sx(Vx0, xi Vx0). (30)Note that the verb similarity of two adverbs only make sensewith respect to the reference verb; namely, in the context ofa given dynamics. However, the expression (30) is not only achange of representing form, but also provides a constructivedefinition of the similarity between adverbs called adverbsimilarity.

    Adverb similarity. Given a reference verb Vx, theadverb similarity in context Vx(adverb similarity, forshort) between two adverbs 1 and 2, Sx(1, 2),defined by

    Sx(1, 2) , Sx(1 Vx, 2 Vx). (31)This is an extension of the results reported in [7]. Since

    adverbs are transforms or operators acting upon computa-tional verbs, adverb similarities are relations between thesetransforms or operators. As shown in [7], adverbs can makedifferent kinds of actions upon computational verbs. Generallyspeaking, the same adverb can function qualitatively differentwhen different kinds of dynamics to be modified. The follow-ing reasons contribute to the complexity of adverb similarities.

    1) When adverbs modify the parameters of dynamic sys-tems, the bifurcation routes can be different. For exam-ple, the same adverb can be used at different stages ofthe same bifurcation routes, yet, the perceived effectscan be significantly different. For example, when welook along a period-doubling bifurcation route, a period1 to period 2 bifurcation can cause a much differentperception comparing with a periodic to chaotic bifur-cation. On the other hand, when we consider a fold

  • 80 INTERNATIONAL JOURNAL OF COMPUTATIONAL COGNITION (HTTP://WWW.YANGSKY.COM/YANGIJCC.HTM), VOL. 3, NO. 2, JUNE 2005

    bifurcation and a Hopf bifurcation, the same adverb cancause dramatically different perceptions.

    2) Computational verbs are living in time, space and humancognition. Therefore, adverbs can operate upon differentaspects of computational verbs. The way to deal with achange in parameter connected to time is different tothat in space. Needless to say, human cognitions makethis issue much more complex.

    3) In many cases, we do not know the way adverbs actingupon computational verbs. For example, consider thefollowing operators.

    very love, often love,unconditionally love. (32)

    Since today we do not have an operational model forcomputational verb love, no method was reported todefine the adverbs in above.

    Based on the definition of adverb similarity, the two sim-ilarity functions in (26) can be represented in the followingforms.

    x(xi) = Sx(e, xi), i = 0, 1, . . . ,m;y(yj) = Sy(e, yi), j = 0, 1, . . . , n. (33)

    The reader should bear in mind that the equivalence between(26) and (33) is based on the fact that all elements in Axand Ay(see Eq.(24)) should act, respectively, along two rangeswhere no bifurcation happens. The similarity in (26) entailsthat in (33) in the sense that (26) can only be applied to aspecified dynamics defined by the reference verbs while (33)can be applied to any dynamics with qualitatively similar prop-erties. From the results in [22] we can see that the dynamics ofcontrolling a process to asymptotically approach a referencesignal has a qualitatively similar properties along the entirecontrol route. Therefore, in the design of verb PID controllers,(33) can be used to reduce the design efforts. Furthermore, thecombination of become with (33) can provide the simplestform of the relation between the observed dynamics of e(t)and the dynamics of control actions in a verb PID controller.

    Based on the similarity functions (33) the verb relation canbe represented as

    R =

    (x,y)AxAyR(x(x), y(y))/(x, y). (34)

    As an example, the verb relation in Table III can be furthergeneralized into that shown in Table IV with the followingsets of adverbs.

    Ax = {e, fast, very fast},Ay = {e, slowly, very slowly}. (35)

    As a special kind of verb relation, verb implication relationsare of great important in the design of verb PID controllers. Ifthere is no bifurcation in the entire control range of a class ofPID controllers, then there is a possibility to design a singledesign template for the entire class. If this is the case, thenwe need to find the way of finding the adverb similarities forthe PID controller design.

    TABLE IVA VERB RELATION FOR MODELLING THE ASSOCIATION BETWEEN TWO

    KINDS OF DYNAMICS. ONE FOR THE ERROR SIGNAL |e(t)| AND THE OTHERFOR PROPORTIONAL GAIN Kp . THE ADVERB SIMILARITIES ARE USED.

    1/(e, e)y(slowly)/(e, slowly)y(very slowly)/(e, very slowly)x(fast)/(fast, e)min(x(fast), y(slowly))/(fast, slowly)min(x(fast), y(very slowly))/(fast, very slowly)x(very fast)/(very fast, e)min(x(very fast), y(slowly))/(very fast, slowly)min(x(very fast), y(very slowly))/(very fast, very slowly)

    After we define the verb implication relation, the verb GMPcan be calculated based on the same method presented in [18].Let us first consider the following example

    IF |e(t)| decreases, THEN Kp increases.|e(t)| decreases fast

    Kp ( increases) (36)where is to be found. The verb implication relation, R,defined by the rule in the first line of (36) is shown in Table IV.We can find ( increase) by using the following verbcomposition[18]

    ( increase) = (decrease fast) R. (37)If the verb implication relation is in the form as in (34) thenthe verb composition is in the form

    = fast R, (38)which is an adverb composition. In this example, R shownin Table IV can be written in the following form

    R =

    (x,y)AxAyR(x(x), y(y))/(x, y)

    = 1/(e, e) + y(slowly)/(e, slowly)+y(very slowly)/(e, very slowly)+x(fast)/(fast, e)+min(x(fast), y(slowly))/(fast, slowly)+min(x(fast), y(very slowly))/(fast, very slowly)+x(very fast)/(very fast, e)+min(x(very fast), y(slowly))/(very fast, slowly)+min(x(very fast), y(very slowly))/(very fast, very slowly). (39)

    Hence, we have

    = fast R= x(fast)/e+min(x(fast), y(slowly))/slowly+min(x(fast), y(very slowly))/(very slowly).

  • YANG, ARCHITECTURES OF COMPUTATIONAL VERB CONTROLLERS 81

    It follows from the the experiences in (21) that has thehighest similarity to slowly. Therefore we have

    y(slowly) x(fast). (40)Similarly, we have

    y(verb slowly) x(very fast). (41)To perform verb GMP in Eq. (7), the mathematical formula

    behind the verb composition are

    V2 = V1 R,Sy(V2,Vy) =VxVx

    Sx(V1,Vx) R(Sx(Vx0,Vx), Sy(Vy0,Vy)),

    Vy Vy (42)where and denote an s-norm and a t-norm, respectively.The result of (42) is the following similarity function

    V2 =

    VyVySy(V2,Vy)/Vy. (43)

    Observe that the unknown verb V2 is implicitly representedby the verb similarities between V2 and all verbs in verb setVy . If we choose = min, = max and R(, ) the sameas in (10) with = min then steps to implement verb GMPare listed as follows.

    1) For each Vx Vx find the verb similarity Sx(V1,Vx)and represent V1 by using the following similarityfunction

    V1 =

    VxVxSx(V1,Vx)/Vx. (44)

    2) It follows from (42) thatSy(V2,Vy)

    = maxVxVx

    min(Sx(V1,Vx), Sx(Vx0,Vx), Sy(Vy0,Vy))

    = min

    Sy(Vy0,Vy), maxVxVx

    min[Sx(V1,Vx), Sx(Vx0,Vx)]

    ,

    Vy VyWe first find

    a = maxVxVx

    min[Sx(V1,Vx), Sx(Vx0,Vx)]

    as shown in the left part of Fig. 4. is called the firinglevel of this verb rule.

    3) We can find V2 by usingSy(V2,Vy) = min(Sy(Vy0,Vy), a), Vy Vy,

    as shown in the right part of Fig. 4.On the other hand, we can also perform verb GMP in

    Eq. (7) by using adverb composition. Let 1x (xi) denotethe adverb similarity between 1 and xi, i = 0, 1, . . . ,m,and 2y (yj), j = 0, 1, . . . , n, denote the adverb similaritybetween 2 and yj then the mathematical formula for thispurpose are

    2 = 1 R,2y (y) =

    xAx

    1x (x) R(x(x), y(y)),

    y Ay (45)

    where 1 and 2 are two adverbs corresponding to computa-tional verbs V1 and V2. The way to calculate (45) is the sameas that for calculating verb composition.

    Let us study the following verb generalized modus tollens(GMP)[18]

    IF |e(t)| decreases, THEN Kp increases.Kp increases slowly

    |e(t)| ( decreases). (46)The unknown adverb can be found by using the followingadverb composition

    = R slowly= y(slowly)/e

    +min(x(fast), y(slowly))/fast+min(x(very fast), y(slowly))/(very fast).

    It follows from the experiences in (21) that has the highestsimilarity to fast. Therefore we have

    x(fast) y(slowly). (47)Similarly, we have

    x(very fast) y(verb slowly). (48)It follows from Eqs. (40), (41), (47) and (48) that

    x(fast) = y(slowly) , (2),x(very fast) = y(verb slowly) , (3), (49)

    where (2) and (3) are the degrees of similarity between Rule1 and 2 of (21), and Rule 1 and Rule 3 of (21), respectively.Equation (49) shows that the difference between two verbrules for the same dynamics is the same as those for bothantecedences and consequences. It follows from (23) that

    1 > (2) > (3).

    Therefore, the verb relation in Table IV can be simplified asthat listed in Table V. Observe that the reference verb rule forthe verb relation in Table V is the first rule in (21), the othertwo rules are only auxiliary rules for constructing the verbrelation. Therefore, Table V is only useful when the verb GMPor verb GMT are performed with respect to Rule 1 in (21).If the verb GMP or verb GMT are needed to be performedwith respect to other rule, say, Rule 2 in (21), then the verbimplication relation shall be revised by using Rule 2 as thereference rule. One example of the resulting verb relation isshown in Table VI.Remarks. Therefore, in real applications we usually have a setof known verbs for the dynamics, then the verb similarities(oradverb similarities) are constructed for the verbs in both theantecedent and the consequence of rule. The verb implicationrelation of this verb rule is then constructed based on verbsimilarities already known. The method of constructing verbimplication relations is only used to demonstrate the mech-anism of constructing verb implication relation based on thequalitative properties of dynamics.

  • 82 INTERNATIONAL JOURNAL OF COMPUTATIONAL COGNITION (HTTP://WWW.YANGSKY.COM/YANGIJCC.HTM), VOL. 3, NO. 2, JUNE 2005

    VVy

    Verb similarity

    0

    1 1

    0VVx

    Vx0V1

    Vy0

    V2

    Verb similarity

    Fig. 4. Illustration of the procedure of verb inference using verb GMP. The horizontal axis representing verb sets Vx and Vy . The vertical axis denotes thedegree of verb similarity. The outline of the shadowed region in the right-hand side figure representing the similarity function of V2.

    TABLE VA VERB RELATION FOR MODELLING THE ASSOCIATION BETWEEN TWO

    KINDS OF DYNAMICS. ONE FOR THE ERROR SIGNAL |e(t)| AND THEOTHER FOR PROPORTIONAL GAIN Kp . THE ADVERB SIMILARITIES ARE

    USED UNDER CONDITIONS SHOWN IN (49).

    1/(e, e) (2)/(e, slowly) (3)/(e, v slowly)

    (2)/(fast, e) (2)/(fast, slowly) (3)/(fast, v slowly)

    (3)/(v fast, e) (3)/(v fast, slowly) (3)/(v fast, v slowly)

    [v =very, 1 > (2) > (3).]

    TABLE VIREVISION OF TABLE V WITH RULE 2 IN (21) AS THE REFERENCE RULE.

    (2)/(e, e) (2)/(e, slowly) (2)/(e, v slowly)

    (2)/(fast, e) 1/(fast, slowly) (2)/(fast, v slowly)

    (2)/(v fast, e) (2)/(v fast, slowly) (2)/(v fast, v slowly)

    [v =very, 1 > (2).]

    D. Verb Inference with Verb AlgorithmA verb algorithm consists of a set of verb IF/THEN rules

    which are defined over the same product space and areconnected by the connective ELSE. Corresponding to differentverb relation operator Rs, the ELSE can be interpreted asAND if R(0, ) = 1 or OR if R(0, ) = 0. To generatecontrol signals we usually consider the following GMP basedon a verb algorithm

    IF NP1 V(1)x , THEN NP2 V(1)y ELSEIF NP1 V(2)x , THEN NP2 V(2)y ELSE.

    .

    .

    IF NP1 V(l)x , THEN NP2 V(l)y .NP1 V1

    NP2 V2 (50)If we choose the verb relation operator (10), then

    V2 =l

    i=1

    V1 Ri

    where Ri is the verb implication relation of the ith verb rule.One example for a verb algorithm with 3 rules are shownin Fig. 5. Observe that the final result of the verb GMP is

    a verb similarity function. In many applications, we need toreconstruct dynamics from verb similarity functions.

    E. Reconstruct Computational Verbs from Similarity Func-tions: Deverbification

    Although verb inference based on verb similarity is onlyone of many ways to perform a verb inference3, this methodis very efficient when the underlying dynamics change theirqualitative behaviors continuously with respect to parameterchanges. Since in this method all verbs are represented bytheir verb similarity functions, the resulting verbs are alsorepresented by verb similarity functions. However, in manyapplications such as verb controllers, verb similarity functionscan not be directly used as a result to generate control signal.Instead, we need to transfer a verb similarity function ina computational verb. This process is called deverbification.Since a verb similarity function is defined on a verb set whereeach verb should be quantitatively different to each other, thereshould be only one point at which the verb similarity takes thevalue 1. Therefore, whenever we find a 1 in the similarityfunction, say, y (y) = 1, then = y . We only needto consider the cases when every value in a verb similarityfunction is less than 1. Since the constructing method of verbsimilarity functions, the center of area(COA) and center ofsums(COS) methods are not suitable for constructing verbsfrom verb similarity functions. Instead, we use mean ofmaxima(MOM) method. Assume that there are K maximasimilarity values in an adverb set, then the output adverb isgiven by

    V0 =Kp=1

    p VpK

    (51)

    where V0 is the reference verb, the arithmetic operations tothe computational verbs are defined as the same as those forverb numbers[16]. This method of constructing verbs requirethat all verb similarity functions must be convex. However,it is not necessary to require all verb similarity functions tobe normal; namely, have maxima at 1. In many occasions,the verb rules are generated based on mental experiments ofhuman experts. Therefore, the rule set might only get the

    3For example, in [18] verb inferences were based on collapses of compu-tational verbs.

  • YANG, ARCHITECTURES OF COMPUTATIONAL VERB CONTROLLERS 83

    VVy

    Verb similarity

    0

    1 1

    0VVx

    Vx0V1

    Verb similarity

    Vy0

    Verb similarity1

    Verb similarity

    0

    1

    0VVx

    Vx1 V1 Vy1

    VVyVerb similarity

    1Verb similarity

    0

    1

    0VVx

    Vx2

    V1 Vy2

    VVy

    V2

    Verb similarity1

    0 VVy

    Rule 1

    Rule 2

    Rule 3

    Union of all rules

    Fig. 5. Illustration of the procedure of verb GMP based on a 3-rule verb algorithm. The horizontal axis representing verb sets Vx and Vy . The vertical axisdenotes the degree of verb similarity. The outline of the shadowed regions of the last picture denotes the verb similarity function of V2.

    most relevant qualitative outlines of the underlying dynamicmechanism, the details(quantitative characteristics) might bevery different from what the rule set tells. This results inp, p = 1, . . . ,K, in (51) having very small values. To copewith this case, in practical applications we usually generalize(51) into the following form

    V0 = Kp=1

    p Vp (52)

    where is a weighting adverb for the result of the entirerule set.

    F. Remarks

    A verb implication relation is a set of dynamical knowledgein the form of natural language statements. For differentdynamic processes the patterns to generate adverbs by verbimplication relations might be in very different forms. For-tunately, natural languages show us that our dynamic experi-ences can be lumped into finite numbers of clusters of whicheach can be described by a verb implication relation. Since inmany cases verb implication relations are closely related to theparameter spaces of dynamic systems, they are closely relatedto the bifurcation of dynamic systems. One should use thefollowing constraints to find a valid/efficient verb implicationrelation.

  • 84 INTERNATIONAL JOURNAL OF COMPUTATIONAL COGNITION (HTTP://WWW.YANGSKY.COM/YANGIJCC.HTM), VOL. 3, NO. 2, JUNE 2005

    1) A verb implication relation should cover a continuumwhere the dynamical behaviors are qualitatively similar;namely, no bifurcation should happen in the scope ofthis verb implication relation.

    2) A set of verb implications should be used to coverall segments along a bifurcation route to ensure thecomplete coverage of all dynamic behaviors of thesystem.

    3) To find verb algorithms from a dynamical system, thefirst step is to chunk the dynamics into representativecomputational verbs; namely, to find Vx and Vy. Onealternative method is to find a reference verb for eachverb set and find the sets of adverbs. Then we needto find the verb similarity function for each verb setor adverb set. Two key issues should be taken care ofin real applications. The first one is the choice of theverb similarity, which determines the distance betweenverbs in the same verb set. The second one is the designof adverbs, which simplifies the calculation and designprocess in many applications.

    IV. DESIGN VERB PID CONTROLLERS BY GENERALIZINGFUZZY GAIN SCHEDULERS

    A. Fuzzy Gain SchedulersWithout loss of generality, let us assume that the gains

    Kp(k) and Kd(k) can be only scheduled within interval[Kp,Kp] and [Kd,Kd], respectively. While in a fuzzy gainscheduler the PID parameters are determined by the currentvalue of e(k) and e(k), in a verb gain scheduler thePID parameters are determined by the historical values andthe current value of e(i), i = 0, 1, 2, , k. The differencebetween fuzzy and verb gain schedulers is the way to tune theparameters of the controller.

    The ranges of Kp and Kd are chosen based on the resultspresented in [24] as follows:

    Kp = 0.32Ku,Kp = 0.6Ku,

    Kd = 0.08KuTu,Kd = 0.15KuTu, (53)where Ku and Tu are the gain and the period of oscillation atthe stability limit under P-control[25].4 To avoid clutters wenormalized Kp and Kd within the interval [0, 1] by

    Kp =Kp KpKp Kp

    , Kd =Kd KdKd Kd

    . (54)

    And we define the value of Ki indirectly by a parameter through the following relation[24]:

    Ki =K2pKd

    . (55)

    Since a verb PID controller can be readily generated from afuzzy PID controller, it is useful to review briefly the designing

    4In [25] Ku was represented as Su which was called ultimate sensitivityabove which the output of the plant will oscillate with big enough amplitude,and below which the output of the plant will settle at a given value. In manycase, this is the Hopf bifurcation point[3] with respect to the bifurcationparameter Ku. In many applications, the verb PID controllers will be appliedwithout knowing the underlying models of the controlled plant. Therefore,Ku and Tu are usually found by running the P-controller.

    process of the fuzzy PID controller given in [24]. The fuzzygain scheduler tunes the three parameters Kp, Kd and byusing the a set of m fuzzy rules each in the following form

    IF e(k) is Ai AND e(k) is Bi,THEN Kp is Ci, Kd is Di and = i,i = 1, 2, ,m. (56)

    where i is a constant, Ai and Bi are fuzzy numbers whosemembership functions are given in Fig. 6, Ci and Di are fuzzysets whose membership functions can choose only two valuesbig or small shown in Fig. 7. The membership functionsin Fig. 7 are given as follows.

    big(x) = min(1,1

    4ln(1 x)

    ),

    small(x) = min(1,1

    4lnx

    ), x (0, 1). (57)

    All basic building blocks for fuzzy PID controller are now inplace, we are now ready to generalize fuzzy control rules intoverb control rules.

    (x)

    NB NM NS ZO PS PM PB

    x0

    1

    Fig. 6. The membership functions of fuzzy numbers modelling Ai and Bi.In this figure, N and P represent negative and positive, respectively.S, M and B represent small, medium, and big, respectively. ZO representnear zero. NB, NM and NS are negative-big, negative-medium,and negative-small, respectively. Similarly, PB, PM and PS arepositive-big, positive-medium, and positive-small, respec-tively.

    0 0.2 0.4 0.6 0.8 10

    0.2

    0.4

    0.6

    0.8

    1

    x

    (x)

    small big

    Fig. 7. The membership functions of fuzzy sets small and big formodelling fKp and fKd.

  • YANG, ARCHITECTURES OF COMPUTATIONAL VERB CONTROLLERS 85

    B. Generalize Fuzzy Control Rules into Verb Control RulesConsider the following fuzzy rules for turning PID

    controller[24]:IF e(k) is PB AND e(k) is ZO,THEN Kp is big, Kd is small, and = 2. (58)

    This fuzzy rule is backed by an experience of control engi-neers. In Fig. 8 a typical time response of the plant is shown.The control rule (58) is used to handle the situation in theregion 1 shown in Fig. 8 where a big control signal is neededin order to deduce e(k) quickly. In this case, the PID controllerneeds to have a large Kp, a large Ki and a small Kd in orderto produce a large control signal. To make Ki bigger we needto choose a smaller . To translate the fuzzy rule in (58) intoa verb rule it is easier to study the phase plot shown in Fig. 9.As clearly shown in the phase plot and the step response inFig. 8, the plant only stays in the region 1 for a very shorttime interval before it enters the region 2 as shown in thephase plot. In [24] the fuzzy control rule for region 2 is givenby

    IF e(k) is PB AND e(k) is NS,THEN Kp is big, Kd is small, and = 2. (59)

    Therefore the actions in both fuzzy rules (58) and (59) are thesame. It is readily to use the following verb rule to implementboth fuzzy rules as

    IF e(k) decreases from PB,THEN Kp is big, Kd is small, and = 2. (60)

    It already show the advantage of using verb rules over fuzzyrules because we can combine two fuzzy rules into a singleverb rule. This is helpful to overcome the rule explosion offuzzy PID controllers. However, the drawbacks of verb rule(60) is that the consequence is still not verbified. In order toverbify the consequence, we need to construct verb rules basedon the global structure of fuzzy rule space.

    It follows from Tables I, II and III in [24] that the fuzzyrule space of the fuzzy PID controller can be constructedand shown in Fig. 10. Observe that the fuzzy rule spaceworks only locally without considering the global behaviorsof the trajectories of the control error e(k). For example,the following simple fact that the trajectories always movealong clockwise direction is a global observation and can bereadily implemented by verb rules. However, fuzzy rules cannot reflect this global observation because their lack of bigvision. Our target is to translate the fuzzy rule spaces inFig. 10 into three sets of verb rules.

    1) Constructing Verb Rules for Tuning Kp from PhasePlots: When human experts look at Fig. 10(a), speciallywhen our eyes trace the two spiral trajectories, many dynamicpatterns can occur. The design of computational verb rulesis to balance the details of these dynamic patterns and theglobal picture of the trajectories go though the phase plot.In order to make the analysis and design procedure clear,let us redraw Fig. 10(a) in a continuous fashion shown inFig. 11. Observe that in Fig. 11 the boundaries between the

    t

    r

    y

    0Region 1

    Region 2

    Fig. 8. The step response of the plant. This is a typical time response forindustrial control systems. The solid curve denotes a control process withpositive initial control error while the dashed curve denotes a control processwith negative initial control error.

    e(t)

    e(t)

    M

    B

    S ZO

    Region 1

    Region 2

    Fig. 9. The phase plot of the step response of the plant. Verb control rulesare easier to design based on the phase plot. The solid and dashed curvescorrespond to those shown in Fig. 8.

    big and small values of Kp are redrawn in a qualitativeway based on Fig. 10(a) while many details are deleted toavoid confusing. The significant difference between Figs. 10(a)and 11 is that instead of chunking the phase plane; namely,the (e,e)-plane, by using fuzzy rules, we use verb rules tochunk the trajectories; namely, the spiral curves. Since bothfuzzy rules and verb rules describe the qualitative behaviorsof the process/plant, the accurate boundaries between chunksare of minor importance.

    In Fig. 11, all chunks along the trajectories are marked bylabels in the form of C0, C1, . . .. The chunk C0 correspondsto the following verb rule

    C0. IF |e(k)| is leaving big, THEN Kp decreasesslowly from big. (61)

    Since this is the very first verb rule generated from the phaseplot based on static fuzzy knowledge, it is worthwhile to show

  • 86 INTERNATIONAL JOURNAL OF COMPUTATIONAL COGNITION (HTTP://WWW.YANGSKY.COM/YANGIJCC.HTM), VOL. 3, NO. 2, JUNE 2005

    e(t)

    e(t)

    M

    B

    SZO

    S

    M

    B

    ZOM S MS BB

    B

    B

    B

    S S S B

    B

    B

    B

    SS

    B S S BS

    BBB S B

    BB BBB B

    BB BBB S B

    BBB S S BS

    B S S S BSS

    e(t)

    e(t)

    M

    B

    SZO

    S

    M

    B

    ZOM S MS BB

    S

    S

    S

    B B B S

    S

    S

    BB

    S B B SB

    SSS B S

    S B B B SBB

    S B B B SBB

    S B B B SBB

    SSS B B SB

    (a) (b)

    e(t)

    e(t)

    M

    B

    SZO

    S

    M

    B

    ZOM S MS BB

    2

    2

    2

    3 4 5 2

    2

    2

    34

    2 3 3 23

    222 3 2

    2 3 3 4 233

    2 3 3 4 233

    2 3 4 5 234

    222 3 3 23

    (c)Fig. 10. Fuzzy rule space of fuzzy PID controller presented together with phase space. (a) Configuration of the rule set for fKp. (b) Configuration of therule set for fKd. (c) Configuration of the rule set for .

    C0e(t)

    e(t)

    M

    B

    SZO

    S

    M

    B

    ZOM S MS BB

    C2

    C3C4

    C6

    C5

    C7 C8

    C9C10

    C11C12

    C1

    Fig. 11. Chunks of trajectories in phase space for designing computationalverb P-controller.

    the detailed design experiences behind it. Comparing theposition of chunk C0 in Fig. 11 with the fuzzy chunks inFig. 10(a), the chunk C0 touches the governing regions of the

    following three fuzzy rules

    IF e(k) is PB AND e(k) is ZO, THEN Kp is big;IF e(k) is PB AND e(k) is NS, THEN Kp is big;IF e(k) is PB AND e(k) is NM, THEN Kp is big.

    (62)Take a look at Eq. (62), what do you see? Three isolated rules!The connection between them, as shown by the trajectoriesin the phase plot, is missing in these fuzzy rules. This isbecause this connection is generated by dynamics which cannot be properly dealt with noun phrases; namely, fuzzy theory.However, just imagine that we are travelling along the spiraltrajectory on the phase-plot plane, we know we are leavingthe region where |e(k)| is big and will arrive at the regionwhere |e(k)| is medium in the near future. We will not stayin the |e(k)| being big region for too long, therefore, we donot say that we stay in the |e(k)| being big region thoughthe entire chunk C0 is in the |e(k)| being big region.

    Let us then take a look at what will happen to Kp whenwe take a walk along the spiral trajectory in chunk C0. Therules in (62) only tell us that Kp will be big for all the time.This is correct if we only look at a small region around us.However, suppose we take a look at the global tendency in the

  • YANG, ARCHITECTURES OF COMPUTATIONAL VERB CONTROLLERS 87

    phase-plot plane, we find the spiral trajectory will eventuallycross the boundary between Kp being big and Kp beingsmall regions. If we assume that Kp changes continuouslyon the phase-plot plane, we will not buy the theory thatKp changes between big and small impulsively along aboundary. Instead, it feels more natural to imagine smoothchanges from big to small along the chunks C0, C2 andC3. Hence, we know when we walk along the chunk C0, Kpwill decrease. The entire chunk C0 is in the big region andit will take a relatively long time to walk from the start to theend of the chunk C0 because e(k) is less than medium atmost of time, therefore we know Kp must decrease slowly.

    The chunk C2 corresponds to the following verb rule

    C2. IF |e(k)| decreases from big to medium,THEN Kp decreases fast from big. (63)

    The difference between the chunks C0 and C2 is that the entireC0 is in the |e(k)| being big region while C2 crosses from the|e(k)| being big region into the |e(k)| being medium region.The other difference is that in the chunk C2 the speed e(k)becomes bigger than that in the the chunk C0. Therefore, thedecrease of Kp is no longer slow.

    The chunk C3 corresponds to the following verb rule

    C3. IF |e(k)| decreases from medium to small,THEN Kp decreases from big to small. (64)

    C3 is the first chunk to cross the boundary between Kp beingbig and being small.

    The chunks C0 to C7 cover the spiral trajectory in half ofits period when it begins at big error. The chunks C8 to C12cover the spiral trajectory in half of its period when it beginsat medium error. Note that we can also define a series ofsuch chunks for the case when the spiral trajectory begins atvery big error. Fortunately, in many cases we do not needto chunk the dynamics in such great details because of thefollowing reasons.

    1) The chunks C0 to C7 already covers the governingranges of the detailed chunks. For example, chunks C8and C9 are covered by chunks C2 and C3. C4 coversC10, C5 and C6 covers C11 and C12.

    2) The calculation of verb rules can tolerate enormousamount noise and variations.

    From the experience of designing verb P-controllers[22], weknow that the rules corresponding to chunks C0 to C7 aresufficient to design the gain scheduler for the P-component.Furthermore, the chunk C0 can be readily covered by chunkC1. Therefore, for designing verb PID controllers, we onlyneed to implement rules governing chunks C1 to C7. All verbrules corresponding to chunks C1 to C7 are listed in Table VII.The canonical forms in become of all rules in Table VII arelisted in Table VIII.

    2) Constructing Verb Rules for Tuning Kd from PhasePlots: Observe that we can get the configuration in Fig. 10(b)by rotating that in Fig. 10(a) 90-degree clockwise. Therefore,it is not necessary to construct verb rules from scratch.Instead, we can take advantage of the relation between both

    configurations in Fig. 10(a) and 10(b) for the purpose ofconstructing verb rule set for Kd. The verb rule set for tuningKd is simply a revision of the rule set in Tables VII andVIII. The resulting verb rule set for the D-controller is shownin Tables IX and X. Comparing the results in Tables VIIIand X one can observe that for the chunks C2 to C7 thecorresponding verb rules can be arrived from their counterpartsby exchanging the order of state 1 and state 2 in theirconsequences. The verb rule corresponding to the chunk C1is unchanged.

    3) Constructing Verb Rules for Tuning from Phase Plots:Comparing the configurations in Fig. 10(b) and 10(c) one canobserve that both configurations are similar if we treat the values that are bigger than 5 as big and less than 2 as small.Here we choose the same membership functions for Kp andKd shown in Fig. 7 to fuzzify , which is given by

    = (65)

    where = 2 and = 5 are chosen. By doing so, the rulesets for Kd and are in the same form. Therefore, we cansimply modify the rule set for Kd into that for as listed inTables XI and XII.Remark. At the first sight of Fig. 10, one might feel it will bebored to design three sets of verb rules individually. However,from the procedure in above, one can see that two sets ofverb rules can be easily derived from the first one. Therefore,we only need to program one rule set and then change theparameters to arrive at the rest two.

    C. Implementing Verb P-controllersLet us proceed to implement the seven rules listed in

    Table VIII, in other words, to implement a verb P-controller.The method will be used here is different from that used in[22]. The reason that we implement the rules in Table VIIIinstead of those in Table VII is that the rules in Table VIII arein more generic form and many design methods can be reusedwhile the rules in Table VII are only valid for the design of theP-controllers. Therefore, the design methods used in designingTable VII may not easy to be reused in other cases such asthe design of the D-component and the I-component.

    1) Choosing Verb/Adverb Sets: The first thing to implementthe rule sets in Table VIII is to select verb sets Vx and Vy ,or adverb sets Ax and Ay to cover the entire universe ofdynamics5 that we are interested. In the case of the verb P-controller, the universes of dynamics are the dynamics of thecontrol error e(t) and the normalized proportional gain Kp(t).

    Since the dynamics of |e(t)| is chunked into four fuzzyvalues big, medium, small and zero, it follows the spiraltrajectories shown in Fig. 11 that the dynamics of |e(t)| canbe chunked into the following computational verbs.

    5The universe of dynamics of a control system is roughly equivalent to allperceptible dynamics for the control system. Therefore, from the qualitativetheory of dynamical systems, the universe of dynamics is a continuum forcontinuous dynamical systems. However, just like in fuzzy controller design,with finite number of fuzzy sets/numbers we can cover the entire universeof discourse, in verb controller design, we can cover the entire universe ofdynamics by using finite numbers of verbs and adverbs.

  • 88 INTERNATIONAL JOURNAL OF COMPUTATIONAL COGNITION (HTTP://WWW.YANGSKY.COM/YANGIJCC.HTM), VOL. 3, NO. 2, JUNE 2005

    TABLE VIITHE VERB RULES FOR THE CHUNKS C1 TO C7 IN FIG. 11 FOR DESIGNING VERB P-CONTROLLER.

    Chunk/Rule Statements of the verb rulesC1 IF |e(k)| stays zero, THEN fKp increases to big;C2 IF |e(k)| decreases from big to medium, THEN fKp decreases fast from big;C3 IF |e(k)| decreases from medium to small, THEN fKp decreases from big to small;C4 IF |e(k)| decreases from small to zero, THEN fKp decreases slowly to small;C5 IF |e(k)| increases from zero to small, THEN fKp increases slowly from small;C6 IF |e(k)| increases from small to medium, THEN fKp increases from small to big;C7 IF |e(k)| increases from medium, THEN fKp increases fast to big.

    TABLE VIIITHE CANONICAL FORMS IN become OF ALL RULES IN TABLE VII.

    Chunk/Rule Statements of verb rules in canonical forms in becomeC1 IF |e(k)| become(zero, zero), THEN fKp become(small, big);C2 IF |e(k)| become(big, medium), THEN fKp fast become(big, small);C3 IF |e(k)| become(medium, small), THEN fKp become(big, small);C4 IF |e(k)| become(small, zero), THEN fKp slowly become(big, small);C5 IF |e(k)| become(zero, small), THEN fKp slowly become(small, big);C6 IF |e(k)| become(small, medium), THEN fKp become(small, big);C7 IF |e(k)| become(medium, big), THEN fKp fast become(small, big).

    TABLE IXTHE VERB RULES FOR THE CHUNKS C1 TO C7 IN FIG. 11 FOR DESIGNING VERB D-CONTROLLER.

    Chunk/Rule Statements of the verb rulesC1 IF |e(k)| stays zero, THEN fKd increases to big;C2 IF |e(k)| decreases from big to medium, THEN fKd increases fast from small;C3 IF |e(k)| decreases from medium to small, THEN fKd increases from small to big;C4 IF |e(k)| decreases from small to zero, THEN fKd increases slowly to big;C5 IF |e(k)| increases from zero to small, THEN fKd decreases slowly from big;C6 IF |e(k)| increases from small to medium, THEN fKd decreases from big to small;C7 IF |e(k)| increases from medium, THEN fKd decreases fast to small.

    TABLE XTHE CANONICAL FORMS IN become OF ALL RULES IN TABLE IX.

    Chunk/Rule Statements of verb rules in canonical forms in becomeC1 IF |e(k)| become(zero, zero), THEN fKd become(small, big);C2 IF |e(k)| become(big, medium), THEN fKd fast become(small, big);C3 IF |e(k)| become(medium, small), THEN fKd become(small, big);C4 IF |e(k)| become(small, zero), THEN fKd slowly become(small,big);C5 IF |e(k)| become(zero, small), THEN fKd slowly become(big, small);C6 IF |e(k)| become(small, medium), THEN fKd become(big, small);C7 IF |e(k)| become(medium, big), THEN fKd fast become(big, small).

    Labels Computational verbs for the dynamics of |e(t)|Ve1 become(big, medium),Ve2 become(medium, small),Ve3 become(small, zero),Ve4 become(zero, small),Ve5 become(small, medium),Ve6 become(medium, big).Ve7 become(zero, zero).

    Remark. Sometimes we might need to use bigger if weonly chunk the upper limit of quantities into big. Notethat bigger is different from very big. The reasonthat we sometimes do not use very big is that we onlyknow something bigger than big and yet we do not knowto what degree it is bigger than big. The same thing can

    be said concerning the relation between very small andsmaller. Observe that become(zero, zero) is the canonicalform of stay zero. However, stay zero is not the same asbe zero because stay zero may have a past not to be zero.

    On the other hand, since the dynamics of Kp(t) is chunkedinto two values small and big, the dynamics of Kp(t) canbe chunked into the following computational verbs.

    Labels Computational verbs for the dynamics of Kp(t)Vp1 become(big, small),Vp2 become(small, big).

    Therefore, the most important issues of implementing com-putational verbs used in these rules are the implementationsof computational verb become.

  • YANG, ARCHITECTURES OF COMPUTATIONAL VERB CONTROLLERS 89

    TABLE XITHE VERB RULES FOR THE CHUNKS C1 TO C7 IN FIG. 11 FOR DESIGNING VERB I-CONTROLLER.

    Chunk/Rule Statements of the verb rulesC1 IF |e(k)| stays zero, THEN e increases to big;C2 IF |e(k)| decreases from big to medium, THEN e increases fast from small;C3 IF |e(k)| decreases from medium to small, THEN e increases from small to big;C4 IF |e(k)| decreases from small to zero, THEN e increases slowly to big;C5 IF |e(k)| increases from zero to small, THEN e decreases slowly from big;C6 IF |e(k)| increases from small to medium, THEN e decreases from big to small;C7 IF |e(k)| increases from medium, THEN e decreases fast to small.

    TABLE XIITHE CANONICAL FORMS IN become OF ALL RULES IN TABLE IX.

    Chunk/Rule Statements of verb rules in canonical forms in becomeC1 IF |e(k)| become(zero, zero), THEN e become(small, big);C2 IF |e(k)| become(big, medium), THEN e fast become(small, big);C3 IF |e(k)| become(medium, small), THEN e become(small, big);C4 IF |e(k)| become(small, zero), THEN e slowly become(small,big);C5 IF |e(k)| become(zero, small), THEN e slowly become(big, small);C6 IF |e(k)| become(small, medium), THEN e become(big, small);C7 IF |e(k)| become(medium, big), THEN e fast become(big, small).

    2) Implementing Become(state 1, state 2): As thecanonical form of all verbs used in verb rules, be-come(state 1, state 2) should be constructed based onthe features of the dynamics of the control system. In thedesign of PID controllers, state 1 and state 2 are twoBEINGs.6 Let us assume that the dynamics of become(state1, state 2) has an outer representation(measurement) x(t),which can be either |e(t)| or Kp(t). As the method pre-sented in [22], the evolving function of become(state1, state 2) can be defined based on two waveforms ofmembership state 1(x(t)) and state 2(x(t)). By doing thiswe can contain the range of Ebecome on [0, 1] and thereforeavoid the trouble of coping with the amplitudes of individualwaveforms from time to time. Let us assume that the life spanof the computational verb is Tw, then the evolving function ofbecome(state 1, state 2) can be defined as

    Ebecome(state 1,state 2)(t)={

    state 1(x(t)), t [0, Tw2

    ],

    state 2(x(t)), t [Tw2 , Tw

    ].

    (66)

    This evolving function must satisfy the following boundaryconditions in order to be perceptually correct:

    1) state 1(x(0)) state 1(x(Tw2 ));2) state 2(x(Tw2 )) state 2(x(Tw));3) state 1(x(0)) 1 and state 2(x(Tw)) 1.

    Observe that the values of state 1(x(Tw2 )) andstate 2(x(Tw2 )) are not necessarily to be the same thoughwe usually choose them to be the same to reflect somecontinuity of the transient between state 1 andstate 2. The following standard evolving functions areusually used to implement becomes.

    1) Linear cases. If we only know the following parameters:Tw, state 1

    (x(Tw2 )

    )= a, and state 2

    (x(Tw2 )

    )= b,

    6A detailed discussion on the relation between BEINGs and BECOMINGscan be found in [13]. Also, the one-to-one mappings of BEINGs to nouns andBECOMINGs to verbs were studied there.

    then the evolving function is given by

    Ebecome(state 1,state 2)(t)

    =

    {1Tw

    (Tw 2t+ 2ta) , t [0, Tw2

    ],

    1Tw

    (2t Tw + 2(Tw t)b) , t [Tw2 , Tw

    ].

    (67)2) Quadratic cases. If we know the following parameters:

    Tw, state 1(x(Tw4 )

    )= a, state 1

    (x(Tw2 )

    )= b,

    state 2(x(Tw2 )

    )= c, and state 2

    (x( 3Tw4 )

    )= d then

    the evolving function is given by

    Ebecome(state 1,state 2)(t)

    =

    8(12a+b)t22Tw(34a+b)t+T 2w

    T 2w,

    t [0, Tw2 ] ,8(c2d+1)t22Tw(7c12d+5)t+(6c8d+3)T 2w

    T 2w,

    t [Tw2 , Tw] .(68)

    3) Exponential cases. If we only know the follow-ing parameters: Tw, state 1

    (x(Tw2 )

    )= a, and

    state 2(x(Tw2 )

    )= b, then the evolving function is

    given by

    Ebecome(state 1,state 2)(t)

    =

    exp(2 ln aTw

    t), t [0, Tw2 ] ,

    exp( 2 ln bTw (t Tw)

    ), t [Tw2 , Tw] .

    (69)Remarks. Other evolving systems of becomes can be usedfor different applications. However, if in applications thelife span Tw is not big, we use simple evolving func-tions. The factors contribute to the choices of the shapesof Ebecome(state 1,state 2) are the dynamics of x(t) and themembership functions state 1 and state 2. The interactionsbetween them are very complex and need extensive studies in

  • 90 INTERNATIONAL JOURNAL OF COMPUTATIONAL COGNITION (HTTP://WWW.YANGSKY.COM/YANGIJCC.HTM), VOL. 3, NO. 2, JUNE 2005

    the future. To show a typical method of determine the shape ofEbecome(state 1,state 2) let us consider the following example.

    Let us assume that state 1 = near one and state 2 =near zero and assume that

    near one(x) = x, near zero(x) = 1 x, x [0, 1]. (70)Let the life span be Tw and the dynamics be givenby x(t) = et, then the evolving function forbecome(near one, near zero) is given by

    Ebecome(near one,near zweo)(t)={

    et, t [0, Tw2 ] ,1 et, t [Tw2 , Tw] . (71)

    Note that even for this simple case the evolving function ofbecome can be relatively complicated. Needless to say, inmany applications we might have no clue about the under-lying dynamics. Therefore, just as the choice of membershipfunctions in fuzzy theory and the choice of probability densityfunctions in statistics, we sometimes choose evolving func-tions without considering every details of the real thing.However, along the evolving process of computational verbtheory and physical linguistics, we will gain more and moreinsights into this critical issue. This is not only because ourcuriosity but also the need of formalizing natural languagesinto the framework of natural sciences.

    3) Calculating Verb Similarities: Let the life span of be-come(state 1, state 2) be Tw, and an observed wave-form x(t) be recorded, we can construct the evolving functionof a default observing verb observed based on x(t) by

    Eobserved() = state 1(x()),

    [t Tw, t Tw2

    ],

    state 2(x()), [t Tw2 , t

    ],

    undefined, otherwise,(72)

    where t denotes the current moment. Observe that the lifetime for the observing verb observed is in the past. Also,the construction of the evolving system of the computationalverb observed needs to take advantage of both the nouncenter and the verb center of physical linguistics[18]. If wewant to know the verb similarity between observed andbecome(state 1, state 2), we need to set the birthtime of become(state 1, state 2) at the time moment(t Tw). In continuous time the most commonly used verbsimilarities can be calculated by using the following steps.

    1) The first half window.

    a1 , Tw

    2

    0

    Ebecome() Eobserved(t Tw + )d,

    b1 , Tw

    2

    0

    Ebecome() Eobserved(t Tw + )d.(73)

    2) The second half window.

    a2 , TwTw2

    Ebecome() Eobserved(t Tw + )d,

    b2 , TwTw2

    Ebecome() Eobserved(t Tw + )d.(74)

    3) The balance factor $.

    $ = 2min(

    a1b1 + b2

    ,a2

    b1 + b2

    ). (75)

    4) The entire window.S(become, observed) =

    a1 + a2b1 + b2

    $. (76)

    Remarks. One might think that to calculateS(become, observed) by using the following formula ismuch more straightforward.

    S(become, observed)

    =

    Tw0

    Ebecome() Eobserved(t Tw + )d Tw0

    Ebecome() Eobserved(t Tw + )d. (77)

    However, the equation in above fails to work in many oc-casions because it does not take care of the fact that eitherthe evolving function of become or observed consists oftwo halves generated by different mechanisms; namely, byusing different computational nouns. For example, if state1 is big and the first half of observed, which is generatedby big(x(t)) = 1 for all t [0, Tw2 ], then both a1 and b1can be very closed to their maximum value Tw2 . If this is thecase, independent of the value of a2 and b2, the value givenby (77) should be around 0.5. This example shows that theformula (77) can not distinguish well become(big, bigger)from become(big, small) and become(big, smaller). Theutility of balance factor $ can efficiently prevent this fromhappening.

    For discrete time the verb similarity can be calculated byusing samples of both evolving functions. In the examplespresented later, the reader shall understand the procedure ofcalculating verb similarity from discrete time series. Observethat we can calculate the verb similarities at every point of ameasured time series x(t) by using the evolving function ofbecome as a moving template over a window of fixed lengthTw. This is the basic technique that we will use to control asystem along time.

    D. Implementing P-controller for a Second-order Plant: Ex-ample

    Let us choose the following plant as an example to illustratethe design process of a verb P-controller. A verb P-controllerfor this plant was previously designed in [22]. Consider thefollowing second-order control system

    x1(t) = x2(t),x2(t) = 2x2(t) x1(t) + u(t Ts),y(t) = x1(t),e(t) = r y(t) (78)

    where xi(t), i = 1, 2 are two states, y(t) is the output, u(t)is the input control signal, r is the reference and Ts is thesampling period. Observe that the control is delayed. The delayof control signal is caused by the time period that we need tocalculate the control signal.

  • YANG, ARCHITECTURES OF COMPUTATIONAL VERB CONTROLLERS 91

    1) Define Fuzzy Sets: Since the controlled plant must beasymptotically stable for practical purpose, the initial errorshould be big. Therefore, it is safe to consider errors in therange of [|e(0)|, |e(0)|]. Traditionally we use the membershipfunctions as in Fig. 6 to equally divide the error range.However, since e(t) exponentially approach to zero in anasymptotically stable controlled system, we need to pay moreattention to the region closed to zero because trajectoriesstay there longer than regions far away from zero. Based onthis consideration, we choose the supports of the membershipfunctions as those shown in Fig. 12. Note that the range forcontrol error is normalized into [1, 1]. The boundaries ofregions shown in Fig. 10 used the supports of fuzzy sets inFig. 12. These membership functions are given as follows.

    PB(x) = max (0, 1 + (x 1) |x 1|) ,PM (x) = max (0, 1 + (x 0.5) 3|x 0.5|) ,PS(x) = max (0, 1 4|x 0.25|) ,ZO(x) = max (0, 1 4|x|) ,NS(x) = max (0, 1 4|x+ 0.25|) ,NM (x) = max (0, 1 (x+ 0.5) 3|x+ 0.5|) ,NB(x) = max (0, 1 (x+ 1) |x+ 1|) . (79)

    (x)

    NB NM NSZO PS PM PB

    x0

    1

    10.50.25-0.25-0.5-1

    Bigger

    Less than zero 0.125

    0.5

    Fig. 12. The membership functions of fuzzy numbers splitting the normalizedrange of control error e(k).

    Although the membership functions for Kp and Kd shownin Fig. 7 may not be optimal, for the purpose of comparison,we use them without revision.

    2) Define All Becomes: Here we give the analytic rep-resentations of all becomes in computational verbs Ve1 toVe7, Vp1 and Vp2. For the purpose of implementation, wewould like to choose all becomes independent of the specificdynamics such that we can program a universal controllerwith as few as possible parameters left for the users to adjust.With this concern, we choose the evolving function of everybecome as the piecewise linear function (67) with a = b =0.5; namely,

    Ebecome(state1,state2) =

    Tw tTw

    , t [0, Tw2 ] ,t

    Tw, t [Tw2 , Tw] , (80)

    of which the discrete-time form is given by

    Ebecome(state1,state2) =

    w kw

    , k [0, w2 ] , w Z,k

    w, k (w2 , w] , k Z. (81)

    Note that in the discrete case the life span of become contains(w+1) sampling points. If w is even then the first half of thewindow will be 1 sampling point longer than the second halfof the window. If w is odd, then both half-windows are of thesame length.

    3) Find Verb Similarity Functions: Before we can performany verb inference we need to find verb similarity functionsof all verbs in verb set

    Ve , {Ve1,Ve2,Ve3,Ve4,Ve5,Ve6,Ve7}and

    Vp , {Vp1,Vp2}.Since we need to know the evolving functions of computa-

    tional verbs before we can calculate verb similarity function,let us find the evolving functions and the evolving processesof e(t) and Kp(t) for all verbs in Ve and Vp first.

    1) Ve1 =become(big, medium). The evolving functionis given by

    Ebecome =

    PB(|e(t)|) = Tw t

    Tw, t [0, Tw2 ] ,

    PM (|e(t)|) = tTw

    , t [Tw2 , Tw] .Note that the corresponding waveform of |e(t)|, e1(t)passes points (0, 1), (Tw2 , 0.75) and (Tw, 0.5). Thereforewe have the linear interpretation of Ve1 as

    e1(t) = 1 t2Tw , t [0, Tw] . (82)

    2) Ve2 =become(medium, small). The evolving func-tion is given by

    Ebecome =

    PM (|e(t)|) = Tw t

    Tw, t [0, Tw2 ] ,

    PS(|e(t)|) = tTw

    , t [Tw2 , Tw] .Note that the corresponding waveform of |e(t)|, e2(t)passes points (0, 0.5), (Tw2 , 0.375) and (Tw, 0.25).Therefore we have

    e2(t) = 0.5 t4Tw , t [0, Tw] . (83)

    3) Ve3 =become(small, zero). The evolving functionis given by

    Ebecome =

    PS(|e(t)|) = Tw t

    Tw, t [0, Tw2 ] ,

    ZO(|e(t)|) = tTw

    , t [Tw2 , Tw] .Note that the corresponding waveform of |e(t)|, e3(t)passes points (0, 0.25), (Tw2 , 0.125) and (Tw, 0). There-fore we have

    e3(t) = 0.25 t4Tw , t [0, Tw] . (84)

  • 92 INTERNATIONAL JOURNAL OF COMPUTATIONAL COGNITION (HTTP://WWW.YANGSKY.COM/YANGIJCC.HTM), VOL. 3, NO. 2, JUNE 2005

    4) Ve4 =become(zero, small). The evolving functionis given by

    Ebecome =

    ZO(|e(t)|) = Tw t

    Tw, t [0, Tw2 ] ,

    PS(|e(t)|) = tTw

    , t [Tw2 , Tw] .Note that the corresponding waveform of |e(t)|, e4(t)passes points (0, 0), (Tw2 , 0.125) and (Tw, 0.25). There-fore we have

    e4(t) =t

    4Tw, t [0, Tw] . (85)

    5) Ve5 =become(small, medium). The evolving func-tion is given by

    Ebecome =

    PS(|e(t)|) = Tw t

    Tw, t [0, Tw2 ] ,

    PM (|e(t)|) = tTw

    , t [Tw2 , Tw] .Note that the corresponding waveform of |e(t)|, e5(t)passes points (0, 0.25), (Tw2 , 0.375) and (Tw, 0.5).Therefore we have

    e5(t) = 0.25 +t

    4Tw, t [0, Tw] . (86)

    6) Ve6 =become(medium, big). The evolving functionis given by

    Ebecome =

    PM (|e(t)|) = Tw t

    Tw, t [0, Tw2 ] ,

    PB(|e(t)|) = tTw

    , t [Tw2 , Tw] .Note that the corresponding waveform of |e(t)|, e6(t)passes points (0, 0.5), (Tw2 , 0.75) and (Tw, 1). Thereforewe have

    e6(t) = 0.5 +t

    2Tw, t [0, Tw] . (87)

    7) Ve7 =become(zero, zero). The evolving function isgiven by

    Ebecome =

    Z(|e(t)|) = Tw t

    Tw, t [0, Tw2 ] ,

    Z(|e(t)|) = tTw

    , t [Tw2 , Tw] .Note that the corresponding waveform of |e(t)|, e7(t)passes points (0, 0), (Tw2 , 0) and (Tw, 0). Therefore wehave

    e7(t) = 0, t [0, Tw] . (88)Remark. We use linear interpretations of ei(t), i = 1, . . . , 7for Ve1 to Ve7. Although linear interpretation is the simplestone, it is only one of infinite many possible interpretations.For different dynamical contexts, there should be differentoptimal interpretations. Therefore, for the design of verb PIDcontrollers, linear interpretations might not be optimal. Thistopic need further study because it is closely connected to theoptimization of the design of verb controllers in general.

    To avoid cluster, let us use the notation V1(V2) to denotethe degree of similarity of verb V2 to the reference verb V1.

    And denote the verb similarity function of verb V with respectto a verb set V by

    VV ,VxV

    V(Vx)/Vx. (89)

    We assume that the canonical forms in become of V1 and V2are become(state 1a, state 2a) and become(state1b, state 2b), respectively. Let x1(t) be an interpretationof V1 and have the form

    x1(t) ={

    f(t), t [0, Tw2 ] ,g(t), t [Tw2 , Tw] , (90)

    The degree of similarity V1(V2) can be calculated using thefollowing steps.

    1)

    a1 = Tw

    2

    0

    min(state 1a(f(t)), state 1b(f(t)))dt,

    a2 = TwTw2

    min(state 2a(g(t)), state 2b(g(t)))dt,

    b1 = Tw

    2

    0

    max(state 1a(f(t)), state 1b(f(t)))dt,

    b2 = TwTw2

    max(state 2a(g(t)), state 2b(g(t)))dt,

    (91)

    2)

    $ = 2min(

    a1b1 + b2

    ,a2

    b1 + b2

    ). (92)

    3)

    V1(V2) =a1 + a2b1 + b2

    $. (93)

    Therefore, the verb similarity functions of all verbs in Vecan be calculated as follows.

    1) VeVe1 . As an illustrating example, let us calculateVe1(Ve2). We use the linear interpretation in Eq. (82)for verb Ve1. Then it follows from Eqs. (79), (82) and(91) that

    a1 = Tw

    2

    0

    min(PB(e1(t)), PM(e1(t)))dt

    = Tw

    2

    0

    PM

    (1 t

    2Tw

    )dt

    = Tw

    2

    0

    max(0, 1 +

    [(1 t

    2Tw

    ) 0.5

    ]3(1 t2Tw

    ) 0.5

    ) dt=

    Tw2

    0

    t

    Twdt =

    Tw8, (94)

  • YANG, ARCHITECTURES OF COMPUTATIONAL VERB CONTROLLERS 93

    a2 = TwTw2

    min(PM(e1(t)), PS(e1(t)))dt

    = TwTw2

    PS

    (1 t

    2Tw

    )dt

    = TwTw2

    max(0, 1 4

    (1 t2Tw) 0.25

    ) dt= 0, (95)

    b1 = Tw

    2

    0

    max(PB(e1(t)), PM(e1(t)))dt

    = Tw

    2

    0

    PB

    (1 t

    2Tw

    )dt

    = Tw

    2

    0

    max(0, 1 +

    [(1 t

    2Tw

    ) 1]

    (1 t2Tw

    ) 1) dt

    = Tw

    2

    0

    1 tTw

    dt =3Tw8

    , (96)

    b2 = TwTw2

    max(PM(e1(t)), PS(e1(t)))dt

    = TwTw2

    PM

    (1 t

    2Tw

    )dt

    = TwTw2

    max(0, 1 +

    [(1 t

    2Tw

    ) 0.5

    ]3(1 t2Tw

    ) 0.5

    ) dt=

    TwTw2

    t

    Twdt =

    3Tw8

    . (97)

    Therefore, we have $ = 0, VeVe1(Ve2) = 0. Using thesame method we can find other elements of VeVe1 as

    VeVe1 = 1/Ve1 + 0/Ve2 + 0/Ve3 + 0/Ve4

    +0/Ve5 +19

    /Ve6 + 0/Ve7. (98)

    2)VeVe2 = 0/Ve1 + 1/Ve2 + 0/Ve3 + 0/Ve4

    +19

    /Ve5 + 0/Ve6 + 0/Ve7. (99)

    3)

    VeVe3 = 0/Ve1 + 0/Ve2 + 1/Ve3 +19

    /Ve4

    +0/Ve5 + 0/Ve6 +19

    /Ve7. (100)

    4)

    VeVe4 = 0/Ve1 + 0/Ve2 +19

    /Ve3 + 1/Ve4

    +0/Ve5 + 0/Ve6 +19

    /Ve7. (101)

    5)

    VeVe5 = 0/Ve1 +19

    /Ve2 + 0/Ve3 + 0/Ve4

    +1/Ve5 + 0/Ve6 + 0/Ve7. (102)6)

    VeVe6 =19

    /Ve1 + 0/Ve2 + 0/Ve3 + 0/Ve4

    +0/Ve5 + 1/Ve6 + 0/Ve7. (103)7)

    VeVe7 = 0/Ve1 + 0/Ve2 +19

    /Ve3 +

    19

    /Ve4

    +0/Ve5 + 0/Ve6 + 1/Ve7. (104)Remark. If the interpretations are linear, then we can find VVdirectly from the membership functions of the states. Sincethe choice of the membership functions, we can guaranteethat in each verb similarity function there are only twokinds of non-zero degrees of verb similarity, one of whichis dominate at 1 while the other is as small as 1/9. It iscounter to our intuition to have a verb similarity 1/9 with thereversed counterpart. For example, become(big, medium)has a 1/9 verb similarity to become(medium, big) while has a0 similarity to become(medium, small). This counter intuitioncan be easily solved by expanding the overlap ranges of thesupports of fuzzy sets. It can also be solved by putting moreweights on the trends when the verb similarity is calculated.This is an attracting topics for further researches.

    Assume linear interpretations of Kp(t), the verb similarityfunctions of both verb in Vp can be found as follows.

    1) Since the symmetry of big and small for Kp(t), VpVp1can be found by the following processes.

    a1 = 10.5

    14lnxdx

    = x4lnx+

    x

    4

    10.5

    = 0.0384,

    b1 = e4 + 0.5e4

    14lnxdx

    = e4 + x4lnx+

    x

    4

    0.5e4

    = 0.207,

    a2 = 0.0384, b2 = 0.207,

    $ = 2 0.03842 0.207 = 0.1855,

    Vp2Vp1

    = $a1 + a2b1 + b2

    = 0.1855 0.03840.207

    = 0.0344. (105)Here we have

    VpVp1

    = 1/Vp1 + 0.0344/Vp2.

    2) From the symmetry of big and small we haveVpVp2

    = 0.0344/Vp1 + 1/Vp2.

    Since 0.0344 is small comparing with 1, in practical applica-tions, we can ignore it.

  • 94 INTERNATIONAL JOURNAL OF COMPUTATIONAL COGNITION (HTTP://WWW.YANGSKY.COM/YANGIJCC.HTM), VOL. 3, NO. 2, JUNE 2005

    4) Implementing Verb Inferences: Now that we have de-fined all verb similarity functions, we are proceeding toimplement the verb inferences based on verb rules in Table VIIor Table VIII. For each rule, we first find an adverb , calledfiring adverb, by comparing the verb similarity between theverb phrase in its premise and the computational verb ob-served, which is the verbifying result of |e(k)|. By applyingthe adverb to the verb phrase in the consequence of theverb rule we can calculate the contribution of this rule to thechange of Kp. The finally decision of changing Kp is foundby applying a de-verbification to the contributions from allrules. Here we choose the following de-verbification

    Kp(k + 1) = Kp(k) + 7i=0

    ii (106)

    where i and i are the firing adverb and full contribution forrule i, respectively. is a weighting factor. The de-verbifyingresults of Vp1 and Vp2 are denoted, respectively, by p1 andp2 and given by

    p1 = e{10[S(observed,Vp2)S(observed,Vp1)]},

    p2 = e{10[S(observed,Vp1)S(observed,Vp2)]}. (107)Observe that p1 and p2 are two datums for the de-verbification of Vp1 and Vp2. The intuition behind Eq. (107) isthat the dynamics of Kp(t) are spanned by two complementaryverbs; namely, Vp1 and Vp2. Let us assume that we want thedynamics of Kp(t) to be the same as Vp1, then there are twocases.

    1) If at a moment we observe that Kp(t) is more like toVp1, then we do not need to change it too much becauseit behaves as expected. This is implemented by settingp1 1.

    2) If at a moment we observe that Kp(t) is more like toVp2, then we need to change it fast into Vp1 becausewe are expecting Vp1. This is implementing by settingp1 > 1.

    In the rules we use two adverbs fast and slowly to modifythe dynamics of Vp1 and Vp2. The relation between the de-verbification of Vp1 and fast Vp1 is given by

    fastVp1 = fast p1. (108)Also, the relation between the de-verbification of Vp1 andslowly Vp1 is given by

    slowlyVp1 = slowly p1. (109)The same can be said to Vp1 and two adverbs fast andslowly.

    We calculate the contributions from all rules as follows.1) Implementing C1: IF |e(k)| become(zero, zero),

    THEN Kp become(small, big). The contributionof this rule is

    (1 [S(observed, become(small, big))])= 1 p2

    where () denotes the effect of the de-verbifying block.

    2) Implementing C2: IF |e(k)| become(big, medium),THEN Kp fast become(big, small). The contri-bution of this rule is

    (2 [S(observed, fast become(big, small))])= 2 fastVp1= 2 fast p1

    where the negative sign reflects the fact of Kp decreasingwith negative changing rate.

    3) Implementing C3: IF |e(k)| become(medium,small), THEN Kp become(big, small). Thecontribution of this rule is

    (3 [S(observed, become(big, small))])= 3 p1.

    4) Implementing C4: IF |e(k)| become(small, zero),THEN Kp slowly become(big, small). Thecontribution of this rule is

    (4 [S(observed, slowly become(big, small))])= 4 slowlyVp1= 4 slowly p1.

    5) Implementing C5: IF |e(k)| become(zero, small),THEN Kp slowly become(small, big). The con-tribution of this rule is

    (5 [S(observed, slowly become(small, big))])= 5 slowlyVp2= 5 slowly p2.

    6) Implementing C6: IF |e(k)| become(small,medium), THEN Kp become(small, big). Thecontribution of this rule is

    (6 [S(observed, become(small, big))])= 6 p2.

    7) Implementing C7: IF |e(k)| become(medium, big),THEN Kp fast become(small, big). The contri-bution of this rule is

    (7 [S(observed, fast become(small, big))])= 7 fastVp2= 7 fast p2.

    5) Simulation Re