JPH02140802A - Self correction type fuzzy control method - Google Patents

Self correction type fuzzy control method

Info

Publication number
JPH02140802A
JPH02140802A JP29362688A JP29362688A JPH02140802A JP H02140802 A JPH02140802 A JP H02140802A JP 29362688 A JP29362688 A JP 29362688A JP 29362688 A JP29362688 A JP 29362688A JP H02140802 A JPH02140802 A JP H02140802A
Authority
JP
Japan
Prior art keywords
membership function
function
value
control
range
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP29362688A
Other languages
Japanese (ja)
Inventor
Takashi Makino
隆 牧野
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Yaskawa Electric Corp
Original Assignee
Yaskawa Electric Manufacturing Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Yaskawa Electric Manufacturing Co Ltd filed Critical Yaskawa Electric Manufacturing Co Ltd
Priority to JP29362688A priority Critical patent/JPH02140802A/en
Publication of JPH02140802A publication Critical patent/JPH02140802A/en
Pending legal-status Critical Current

Links

Landscapes

  • Feedback Control In General (AREA)

Abstract

PURPOSE:To apply a membership function even if a model to be controlled is difficult to generate or it cannot be found so as to improve a general-purpose and the quality of control by automatically correcting the membership function. CONSTITUTION:A control part 12 calculates a controlled variable with respect to an objective quantity inputted from an input part 11 by using the membership function registered in a function data base part 16. When an output evaluation part 14 judges that the rate of discrepancy between the output result of an object for control/environment 18 and the controlled variable exceeds an allowable value, a function correction part 15 corrects the membership function and registers it to the function data base part 16. Since the membership function is automatically corrected with respect to the object to be controlled, it can be applied even if a model to be controlled is difficult to generate or it cannot be found, and the general-purpose increases, whereby the quality of control improves.

Description

【発明の詳細な説明】 【産業上の利用分野】 本発明は、システムが持っている制御規則における出力
の目的量を、入力値に対して0から1までの満足度を示
すメンバシップ関数を用いて決定し、システムの制御出
力として出力するファジィ制御方法に関する。 〔従来の技術〕 制御対象の特徴が数式ではっきりと表されにくい場合、
1965年にカルフォルニア大学のザブ−教授が提唱し
た「ファジィ集合」を利用したファジィ制御を用いると
、かなりうまく制御が行える。 ファジィ制御では、制御規則とメンバシップ関数なるも
のを用いて、制御アルゴリズムを組み立てている。 制御規則は、例えば「速度が速ければ、大きく減速する
。」といったものであり、人間の思考のようにあいまい
である。このとき、問題となるのは、速度がどれくらい
ならば、速いのか遅いのかということと、大きく減速す
るとは、どれくらい減速するのかということである。こ
こで速度の早さや減速度の大小を決めるためにメンバシ
ップ関数を用いる。メンバシップ関数は入力値に対して
Oから1までの満足度を示す関数であり、第3図に示す
ように、速度がVtのとき、速いという判断に対する満
足度Soを示し、中位という判断、遅いという判断には
、それぞれSL、Oという満足度を返す。これらの満足
度から、ルールとして「速度が中位ならば、負で小さく
速度を変化させる。」 「速度が速ければ、負で大きく速度を変化させる。」 があったならば出力の加速度係数を次のようにして求め
る。 第4図で示すように、 「負で大きく変化させる」は高さがSH「負で小さく変
化させる」は高さがSLの2つの三角形が得られる。 これらの2つの三角形の重なった多角形の面積を丁度半
分にするような満足度に平行な線分を求め、そのときの
加速度係数(d、)から実際の出力が求められる。 ところで、特開昭63−108404  rディジタル
制御方式」で「自動学習ファジーコントローラ」の例が
開示されている。 これは、複数のモデル・ルールを記憶しておき、状態量
と制御指令値を各モデル・ルールに適用して制御結果を
予測し、予測結果に基づいて最適な制御指令を決定し、
実際に得られた制御結果を反映させてモデル・ルールの
内容を修正するものである。 〔発明が解決しようとする課題〕 上述した従来の方式は、モデル・ルールの評価指数を学
習によって修正し、メンバシップ関数の修正を行なわな
いので、制御対象のモデルが作りにくい、わからない場
合には適用できないという欠点がある。 [課題を解決するための手段] 本発明の自己修正型ファジィ制御方法は、第1図に示す
ように、 出力の効果量と目的量を比較し、そのずれの割合が許容
値を越えていないかどうかを判断するステップ1と、 ステップ1で得られたずれの割合が許容値を越えていた
場合、メンバシップ関数を取り出し、該メンバシップ関
数の最大値のところで01人力値のある側の0の部分で
0となり、入力値の部分の関数値にステップ1で得られ
たずれの割合を乗じて得られた値を入力値に対してとる
ような関数を作り、該関数をメンバシップ関数に加え、
メンバシップ関数を修正するステップ2と、 ステップ2で得られたメンバシップ関数がOから1の範
囲を越えた部分があるかどうか判断するステップ3と、 ステップ3で、ステップ2で得られたメンバシップ関数
がOから1の範囲にないと判断された場合、1を越える
部分は1.0を下回る部分はOにし、該メンバシップ関
数の最大値のところで0、入力値のある側のOの部分で
0となり、入力値の部分の関数値にステップ1で得られ
たずれの割合を乗じて得られた値を入力値に対してとる
ような関数を作り、該関数をメンバシップ関数に加え、
メンバシップ関数を修正するステップ4と、 ステップ4で得られたメンバシップ関数が0から1の範
囲を越えた部分があるかどうか判断するステップ5と、 ステップ2で得られたメンバシップ関数がステップ3で
0から1の範囲にあると判断された場合およびステップ
4で得られたメンバシップ関数がステップ5で0から1
の範囲にあると判断された場合、該メンバシップ関数を
システムに登録するステップ6と、 ステップ4で得られたメンバシップ関数が0から1の範
囲を越えた部分があるとステップ5で判断された場合、
システムエラーとするステップ7とを有している。 〔作用〕 このように、制御対象に対してメンバシップ関数を自動
的に修正することにより、制御モデルの選択はなく、制
御対象のモデルが作りにくい、わからないような場合に
適用でき、汎用性が増すとともに制御の質も向上する。 第2図は本発明の自己修正型ファジィ制御方法が適用さ
れたシステムのブロック図である。 このシステムは、制御対象・環境18と、目標値(指令
値)を制御対象・環境18から決定し、入力する入力部
11と、メンバシップ関数が登録される関数データベー
ス部16と、関数データベース部16に登録されている
メンバシップ関数を用いて入力部11から入力された目
標量に対する制御量を計算する制御部12と、制御部1
2から出力された制御量を出力して制御対象・環境18
に対して変化を起させる出力部13と、制御対象・環境
18の出力結果(効果量)を監視する出力結果監視部1
7と、制御量と出力結果を比較して、ずれの割合が許容
値を越えていないかどうか判断する出力評価部14と、
出力評価部14によりずれの割合が許容値を越えていた
と判断された場合、メンバシップ関数を修正して関数デ
ータベース部16に登録する関数修正部15とから構成
される。 〔実施例〕 次に、ロボットなどのサーボ機構に適用される速度制御
系を例にとって本発明の実施例について図面を参照して
説明する。 第3図〜第6図は本発明の自己修正型ファジィ制御方法
の一実施例を示す図である。 l)前記〔従来の技術〕の中で述べたようにして、加速
の度合がd+となり、速度がvlとなったとする。 2) 目的量速度をv2とすると、ずれはVl−3)2
)で得た割合kが許容値の範囲を越えているとする。ま
たV、>V、の場合について考える。 4) この場合加速量を増さなければならない。 そこで、前記〔課題を解決するための手段〕のステップ
2で述べたようにして、メンバシップ関数を求めると第
5図のようになる。すなわち、この場合、入力値がvt
になので■、のどころで修正量が最大になるようにし、
その修正量はステップ2のようにして求め、その近辺に
もその影響がでるように、第5図斜線で示すようなメン
バシップ関数の変化分を求める6次に、この場合、負で
大きく変化させすぎたので、負で小さく変化させる方の
割合を大きくし速度が中位の満足度が大きくなるように
するために、第3図の直線a−bにメンバシップ関数の
変化分を加え、第3図の直線c−dではメンバシップ関
数の変化分を引いている。 次に、同じ速度vtの入力があった場合、新しい満足度
はそれぞれS’t+、S’Lとなりそれらを用い第4図
と同様にして加速度係数を求めると第6図のようになり
、 「負で大きく変化させる」は高さがS晶「負で小さく変
化させる」は高さがS9になり、この場合 S′□<S)I 。 S″L>SL となるので第6図の右側の三角形は、第4図の右側の三
角形よりも大きくなり、左側の三角形は、第6図のほう
が第4図よりも小さくなるので、加速度係数は第4図よ
りも右側に移動してd+からd2に変化して、負の加速
度係数は小さくなる。 5)範囲を越えていないので、その関数を登録する。 〔発明の効果] 以上説明したように本発明は、メンバシップ関数を自動
的に修正することにより、制御対象のモデルが作りにく
い、わからない場合に適用でき、汎用性が増すとともに
制御の質も向上する効果がある。
Detailed Description of the Invention [Field of Industrial Application] The present invention uses a membership function that indicates the degree of satisfaction from 0 to 1 with respect to the input value to determine the target amount of output in the control rule that the system has. The present invention relates to a fuzzy control method that uses a fuzzy control method to make a decision and output it as a system control output. [Prior art] When the characteristics of the controlled object are difficult to express clearly in mathematical formulas,
Fuzzy control using "fuzzy sets" proposed by Professor Zabu of the University of California in 1965 can be used to achieve fairly effective control. In fuzzy control, a control algorithm is constructed using control rules and membership functions. The control rule is, for example, ``If the speed is fast, the speed will be greatly reduced,'' and it is vague like human thinking. At this time, the questions are: How fast is the speed? Is it slow? And how much is a large deceleration? Here, a membership function is used to determine the speed and deceleration. The membership function is a function that indicates the degree of satisfaction from O to 1 with respect to the input value, and as shown in Figure 3, when the speed is Vt, it indicates the degree of satisfaction So for the judgment that it is fast, and for the judgment that it is medium. , if it is judged as slow, a satisfaction level of SL or O is returned, respectively. Based on these satisfaction levels, if the rules were ``If the speed is medium, change the speed by a small amount with a negative value.'' ``If the speed is high, change the speed by a large amount with a negative value.'' If there was a rule, then the acceleration coefficient of the output would be Find it as follows. As shown in FIG. 4, two triangles are obtained, one with a height of SH for "make a large change with a negative value" and one with a height of SL for "make a small change with a negative value". A line segment that satisfactorily halves the area of the overlapping polygon of these two triangles is found, and the actual output is found from the acceleration coefficient (d,) at that time. By the way, an example of an ``automatic learning fuzzy controller'' is disclosed in JP-A-63-108404 ``Digital Control System''. This method memorizes multiple model rules, applies state quantities and control command values to each model rule to predict control results, and determines the optimal control command based on the predicted results.
The contents of the model rules are modified to reflect the control results actually obtained. [Problem to be solved by the invention] The conventional method described above modifies the evaluation index of the model rule by learning, but does not modify the membership function. The drawback is that it cannot be applied. [Means for Solving the Problems] As shown in Figure 1, the self-correcting fuzzy control method of the present invention compares the effect size of the output with the target amount, and determines whether the ratio of deviation does not exceed an allowable value. Step 1 to determine whether or not the difference is greater than the allowable value. If the deviation ratio obtained in Step 1 exceeds the allowable value, take out the membership function and add 01 at the maximum value of the membership function to 0 on the side with the manual value. Create a function that takes the value obtained by multiplying the function value of the input value part by the deviation ratio obtained in step 1 for the input value, and convert this function into a membership function. In addition,
Step 2 of modifying the membership function; Step 3 of determining whether there is a part of the membership function obtained in Step 2 that exceeds the range from O to 1; In Step 3, the membership function obtained in Step 2 is If it is determined that the membership function is not in the range from O to 1, the part exceeding 1 is set to O. The part below 1 is set to O, the maximum value of the membership function is set to 0, and the part where the input value is O is set to O. Create a function that takes the value obtained by multiplying the function value of the input value part by the deviation ratio obtained in step 1 for the input value, and add this function to the membership function. ,
step 4 to modify the membership function; step 5 to determine whether the membership function obtained in step 4 has a part that exceeds the range from 0 to 1; and step 5 to determine whether the membership function obtained in step 2 is If it is determined that the membership function is in the range from 0 to 1 in step 3, and the membership function obtained in step 4 is determined to be in the range from 0 to 1 in step 5.
If it is determined that the membership function is within the range of 0 to 1, step 6 registers the membership function in the system, and step 5 determines that there is a part of the membership function obtained in step 4 that exceeds the range of 0 to 1. If
Step 7 of determining a system error. [Operation] In this way, by automatically modifying the membership function for the controlled object, there is no need to select a control model, and it can be applied to cases where it is difficult to create or do not understand the model of the controlled object, and it is highly versatile. As the number increases, the quality of control also improves. FIG. 2 is a block diagram of a system to which the self-correcting fuzzy control method of the present invention is applied. This system includes a controlled object/environment 18, an input section 11 that determines and inputs a target value (command value) from the controlled object/environment 18, a function database section 16 in which membership functions are registered, and a function database section. a control unit 12 that calculates a control amount for the target amount input from the input unit 11 using a membership function registered in the control unit 16;
Output the control amount output from 2 to control target/environment 18
an output unit 13 that causes a change in the control target/environment 18; and an output result monitoring unit 1 that monitors the output result (effect size) of the controlled object/environment 18.
7, and an output evaluation unit 14 that compares the control amount and the output result and determines whether the deviation ratio does not exceed an allowable value.
The function correction unit 15 corrects the membership function and registers it in the function database unit 16 when the output evaluation unit 14 determines that the ratio of deviation exceeds the allowable value. [Embodiment] Next, an embodiment of the present invention will be described with reference to the drawings, taking as an example a speed control system applied to a servo mechanism of a robot or the like. 3 to 6 are diagrams showing an embodiment of the self-correcting fuzzy control method of the present invention. l) Assume that the degree of acceleration becomes d+ and the velocity becomes vl as described in the above [Prior Art]. 2) If the target speed is v2, the deviation is Vl-3)2
) is outside the allowable value range. Also consider the case where V,>V. 4) In this case, the amount of acceleration must be increased. Therefore, when the membership function is determined as described in step 2 of the above-mentioned [Means for Solving the Problem], the result is as shown in FIG. 5. That is, in this case, the input value is vt
■, so that the amount of correction is maximized at this point,
The amount of correction is obtained as in step 2, and in order to have an effect on the surrounding area, the change in the membership function as shown by the diagonal lines in Figure 5 is calculated. In order to increase the proportion of small negative changes and increase the satisfaction level for intermediate speeds, add the change in membership function to straight line a-b in Figure 3. In the straight line c-d in FIG. 3, changes in the membership function are subtracted. Next, if the same speed vt is input, the new satisfaction levels will be S't+ and S'L, respectively, and using them to calculate the acceleration coefficient in the same manner as in Figure 4, the result will be as shown in Figure 6. The height is S9 for "make a large change with a negative value" and the height is S9 for "make a small change with a negative value", and in this case, S'□<S)I. Since S″L>SL, the triangle on the right side of Figure 6 is larger than the triangle on the right side of Figure 4, and the triangle on the left side is smaller in Figure 6 than in Figure 4, so the acceleration coefficient is moves to the right side of Fig. 4 and changes from d+ to d2, and the negative acceleration coefficient becomes smaller. 5) Since it does not exceed the range, register the function. [Effect of the invention] As explained above. By automatically modifying the membership function, the present invention can be applied to cases where it is difficult to create or do not know the model of the controlled object, and has the effect of increasing versatility and improving the quality of control.

【図面の簡単な説明】[Brief explanation of the drawing]

第1図は本発明の自己修正型ファジィ制御方法を示す流
れ図、第2図はそのシステムブロック図、第3図〜第6
図は本発明の自己修正型ファジィ制御方法の一実施例を
示す図である。 1〜7・・・ステップ、 11・・・・・・入力部、   12・・・・・・制御
部、13・・・・・・出力部、   14・・・・・・
出力評価部、15・・・・・・関数修正部、 16・・・・・・関数データベース部、17・・・・・
・出力結果監視部、 18・・・・・・制御対象・環境。
FIG. 1 is a flowchart showing the self-correcting fuzzy control method of the present invention, FIG. 2 is a system block diagram thereof, and FIGS.
The figure shows an embodiment of the self-correcting fuzzy control method of the present invention. 1 to 7...steps, 11...input section, 12...control section, 13...output section, 14...
Output evaluation section, 15... Function correction section, 16... Function database section, 17...
- Output result monitoring unit, 18...Controlled object/environment.

Claims (1)

【特許請求の範囲】[Claims]  1.システムが持っている制御規則における出力の目
的量を、入力値に対して0から1までの満足度を示すメ
ンバシップ関数を用いて決定し、システムの制御出力と
して出力するファジィ制御方法において、  出力の効果量と目的量を比較し、そのずれの割合が許
容値を越えていないかどうかを判断する第1のステップ
と、  第1のステップで得られたずれの割合が許容値を越え
ていた場合、メンバシップ関数を取り出し、該メンバシ
ップ関数の最大値のところで0、入力値のある側の0の
部分で0となり、入力値の部分の関数値に第1のステッ
プで得られたずれの割合を乗じて得られた値を入力値に
対してとるような関数を作り、該関数をメンバシップ関
数に加え、メンバシップ関数を修正する第2のステップ
と、  第2のステップで得られたメンバシップ関数が0から
1の範囲を越えた部分があるかどうか判断する第3のス
テップと、  第3のステップで、第2のステップで得られたメンバ
シップ関数が0から1の範囲にないと判断された場合、
1を越える部分は1,0を下回る部分は0にし、該メン
バシップ関数の最大値のところで0、入力値のある側の
0の部分で0となり、入力値の部分の関数値に第1のス
テップで得られたずれの割合を乗じて得られた値を入力
値に対してとるような関数を作り、該関数をメンバシッ
プ関数に加え、メンバシップ関数を修正する第4のステ
ップと、  第4のステップで得られたメンバシップ関数が0から
1の範囲を越えた部分があるかどうか判断する第5のス
テップと、  第2のステップで得られたメンバシップ関数が第3の
ステップで0から1の範囲にあると判断された場合およ
び第4のステップで得られたメンバシップ関数が第5の
ステップで0から1の範囲にあると判断された場合、該
メンバシップ関数をシステムに登録する第6のステップ
と、  第4のステップで得られたメンバシップ関数が0から
1の範囲を越えた部分があると第5のステップで判断さ
れた場合、システムエラーとする第7のステップとを有
することを特徴とする自己修正型ファジィ制御方法。
1. In a fuzzy control method, the target amount of output in the control rule that the system has is determined using a membership function that indicates the degree of satisfaction from 0 to 1 with respect to the input value, and is output as the control output of the system. The first step is to compare the effect size and the objective amount and determine whether the percentage of deviation does not exceed the allowable value. In this case, the membership function is taken out, the maximum value of the membership function is 0, the 0 part on the side where the input value is is 0, and the function value of the input value part is the deviation obtained in the first step. The second step is to create a function that takes the value obtained by multiplying the ratio to the input value, add this function to the membership function, and modify the membership function. The third step is to determine whether there is any part of the membership function that exceeds the range from 0 to 1, and the third step determines whether the membership function obtained in the second step is not within the range from 0 to 1. If it is determined that
The part exceeding 1 is set to 1, the part below 0 is set to 0, the maximum value of the membership function is set to 0, the part of 0 on the side where the input value is set to 0, and the function value of the input value part is set to 0. a fourth step of creating a function that takes the value obtained by multiplying the deviation ratio obtained in step to the input value, adding the function to the membership function, and modifying the membership function; The fifth step is to determine whether there is a part of the membership function obtained in step 4 that exceeds the range from 0 to 1, and the third step is to determine whether the membership function obtained in step 2 is 0 to 1. If the membership function obtained in the fourth step is determined to be in the range from 0 to 1, and if the membership function obtained in the fourth step is determined to be in the range from 0 to 1, the membership function is registered in the system. a seventh step of determining a system error if it is determined in the fifth step that there is a part of the membership function obtained in the fourth step that exceeds the range of 0 to 1; A self-correcting fuzzy control method characterized by having the following.
JP29362688A 1988-11-22 1988-11-22 Self correction type fuzzy control method Pending JPH02140802A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP29362688A JPH02140802A (en) 1988-11-22 1988-11-22 Self correction type fuzzy control method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP29362688A JPH02140802A (en) 1988-11-22 1988-11-22 Self correction type fuzzy control method

Publications (1)

Publication Number Publication Date
JPH02140802A true JPH02140802A (en) 1990-05-30

Family

ID=17797147

Family Applications (1)

Application Number Title Priority Date Filing Date
JP29362688A Pending JPH02140802A (en) 1988-11-22 1988-11-22 Self correction type fuzzy control method

Country Status (1)

Country Link
JP (1) JPH02140802A (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04158403A (en) * 1990-10-23 1992-06-01 Toshiba Corp Fuzzy controller
JPH04199302A (en) * 1990-11-29 1992-07-20 Ube Ind Ltd Learning system for neural circuit network in fuzzy control
JPH07230303A (en) * 1994-02-21 1995-08-29 Nec Corp Fuzzy control method/device

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04158403A (en) * 1990-10-23 1992-06-01 Toshiba Corp Fuzzy controller
JPH04199302A (en) * 1990-11-29 1992-07-20 Ube Ind Ltd Learning system for neural circuit network in fuzzy control
JPH07230303A (en) * 1994-02-21 1995-08-29 Nec Corp Fuzzy control method/device

Similar Documents

Publication Publication Date Title
US6037736A (en) Apparatus for determination of control constant
Smith et al. An algorithm for automated fuzzy logic controller tuning
JPH07152570A (en) Fuzzy-theory processing module of microcontroller
JPH02140802A (en) Self correction type fuzzy control method
Roberts A brief overview of model predictive control
JPH0535308A (en) Device and method for identifying fuzzy membership function
JPH04127239A (en) Automatic control method for fuzzy inference parameter and display method for learning state
JPH0378003A (en) Fuzzy controller
US20170201199A1 (en) Motor control device
JPH03188504A (en) Fuzzy controller and fuzzy inference method
Burdet et al. Three learning architectures to improve robot control: A comparison
JP2822427B2 (en) Process control method
JP2855644B2 (en) Controller
JPH0350602A (en) Gain setting device for robot
JP2791011B2 (en) Control parameter setting device for plant control system
JP2723720B2 (en) Control device construction processing system
Nurnberger et al. Neuro-fuzzy techniques under matlab/simulink applied to a real plant
JPH0272405A (en) Deciding method for membership function
JPH03288203A (en) Speed follow-up controller
JPH03242730A (en) Membership function setting device
JPH02275501A (en) Process controller
JPH05313901A (en) Fuzzy inference device
JPH06119177A (en) Non-fuzzifying method for fuzzy inference
JPH0462601A (en) Fuzzy control system
JPH05120253A (en) Controller