JPH07230303A - ファジィ制御方法およびその装置 - Google Patents
ファジィ制御方法およびその装置Info
- Publication number
- JPH07230303A JPH07230303A JP6022328A JP2232894A JPH07230303A JP H07230303 A JPH07230303 A JP H07230303A JP 6022328 A JP6022328 A JP 6022328A JP 2232894 A JP2232894 A JP 2232894A JP H07230303 A JPH07230303 A JP H07230303A
- Authority
- JP
- Japan
- Prior art keywords
- fuzzy
- control
- unit
- membership function
- controlled
- 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
Links
- 238000000034 method Methods 0.000 title claims description 30
- 238000012937 correction Methods 0.000 claims abstract description 36
- 230000006870 function Effects 0.000 claims description 110
- 230000011664 signaling Effects 0.000 claims description 2
- 230000001133 acceleration Effects 0.000 description 41
- 238000010586 diagram Methods 0.000 description 22
- 238000006243 chemical reaction Methods 0.000 description 14
- 238000004364 calculation method Methods 0.000 description 4
- 238000012986 modification Methods 0.000 description 4
- 230000004048 modification Effects 0.000 description 4
- 238000005259 measurement Methods 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 2
- 238000012423 maintenance Methods 0.000 description 2
- 238000013459 approach Methods 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000010485 coping Effects 0.000 description 1
- 230000005484 gravity Effects 0.000 description 1
Landscapes
- Feedback Control In General (AREA)
Abstract
(57)【要約】
【目的】ファジィ制御装置の動作を停止せずに、ファジ
ィルールとメンバシップ関数あるいはその一方を所望の
制御が行えるように、修正可能とする。 【構成】制御対象部10からの観測信号を入力変換部6
により変換して入力データ26としてファジィ推論部5
とエキスパートシステム部9とで受け取る。受け取った
入力データについてファジィ推論部5がファジィ演算を
実行し出力変換部7を介して制御対象部10を制御す
る。入力データはエキスパートシステム部9も受信し、
入力データの値がメンバシップ関数あるいはファジィル
ールを修正すべき状態か否かをエキスパートシステム部
9が内部に予め記憶している修正知識を参照して判断
し、修正すべき状態であれば、予め内部に記憶している
修正知識に従って、記憶部3に記憶されているメンバシ
ップ関数あるいはファジィルールを修正する。
ィルールとメンバシップ関数あるいはその一方を所望の
制御が行えるように、修正可能とする。 【構成】制御対象部10からの観測信号を入力変換部6
により変換して入力データ26としてファジィ推論部5
とエキスパートシステム部9とで受け取る。受け取った
入力データについてファジィ推論部5がファジィ演算を
実行し出力変換部7を介して制御対象部10を制御す
る。入力データはエキスパートシステム部9も受信し、
入力データの値がメンバシップ関数あるいはファジィル
ールを修正すべき状態か否かをエキスパートシステム部
9が内部に予め記憶している修正知識を参照して判断
し、修正すべき状態であれば、予め内部に記憶している
修正知識に従って、記憶部3に記憶されているメンバシ
ップ関数あるいはファジィルールを修正する。
Description
【0001】
【産業上の利用分野】本発明はファジィ制御方法および
その装置に関し、特に可動構造物の動作の制御や装置の
温度の制御等に使用されるファジィ制御方法およびその
装置に関する。
その装置に関し、特に可動構造物の動作の制御や装置の
温度の制御等に使用されるファジィ制御方法およびその
装置に関する。
【0002】
【従来の技術】従来のファジィ制御方法およびその装置
においては、たとえば、山川烈,FUZZYコンピュー
タの発想,講談社(1988年)に記載されているよう
に、制御対象部に対して適当なファジィルールおよびフ
ァジィメンバシップ関数(以後メンバシップ関数と称す
る)を用いてファジィ演算を行い制御信号を生成し、こ
の制御信号により制御対象部を制御して、制御対象部を
目的とする動作状態にする方法がある。
においては、たとえば、山川烈,FUZZYコンピュー
タの発想,講談社(1988年)に記載されているよう
に、制御対象部に対して適当なファジィルールおよびフ
ァジィメンバシップ関数(以後メンバシップ関数と称す
る)を用いてファジィ演算を行い制御信号を生成し、こ
の制御信号により制御対象部を制御して、制御対象部を
目的とする動作状態にする方法がある。
【0003】従来のファジィ制御装置100は、図8に
示すように、制御対象部10を制御するために必要なフ
ァジィルール21とメンバシップ関数22を記憶する記
憶部3と、ファジィルール21を外部から入力し記憶部
3に記憶させるファジィルール入力部2と、メンバシッ
プ関数22を外部から入力し記憶部3に記憶させるメン
バシップ関数入力部4と、制御対象部10から出力され
る制御に必要な制御対象部10の状態を表わす物理量で
ある観測信号28をファジィ制御装置1内で使用するの
に適した入力データ26に変換して出力する入力変換部
6と、入力データ26と記憶部3に記憶されているファ
ジィルールおよびメンバシップ関数を基にファジィ演算
(推論)を行い推論結果である出力信号27を生成し出
力するファジィ推論部5と、出力信号27を入力とし、
制御対象部10の制御に適合した制御信号29に変換し
て出力する出力変換部7とを備えている。
示すように、制御対象部10を制御するために必要なフ
ァジィルール21とメンバシップ関数22を記憶する記
憶部3と、ファジィルール21を外部から入力し記憶部
3に記憶させるファジィルール入力部2と、メンバシッ
プ関数22を外部から入力し記憶部3に記憶させるメン
バシップ関数入力部4と、制御対象部10から出力され
る制御に必要な制御対象部10の状態を表わす物理量で
ある観測信号28をファジィ制御装置1内で使用するの
に適した入力データ26に変換して出力する入力変換部
6と、入力データ26と記憶部3に記憶されているファ
ジィルールおよびメンバシップ関数を基にファジィ演算
(推論)を行い推論結果である出力信号27を生成し出
力するファジィ推論部5と、出力信号27を入力とし、
制御対象部10の制御に適合した制御信号29に変換し
て出力する出力変換部7とを備えている。
【0004】図9は、図8に示したファジィ制御装置1
00によるファジィ制御方法を説明する流れ図である。
00によるファジィ制御方法を説明する流れ図である。
【0005】なお、図9中では、たとえば、ステップ1
00をS100と略記してあり、以下の説明でも、たと
えば、ステップ101をS101と略記する。
00をS100と略記してあり、以下の説明でも、たと
えば、ステップ101をS101と略記する。
【0006】図8に示すファジィ制御装置100には、
予め、ファジィルールを定義しファジィルール入力部2
に入力して記憶部3に記憶させると共に、ファジィ制御
状態を支配するメンバシップ関数を定義し、メンバシッ
プ関数入力部4に入力し、記憶部3に記憶させておく。
予め、ファジィルールを定義しファジィルール入力部2
に入力して記憶部3に記憶させると共に、ファジィ制御
状態を支配するメンバシップ関数を定義し、メンバシッ
プ関数入力部4に入力し、記憶部3に記憶させておく。
【0007】ファジィ推論部5は、外部からスタート命
令が加えられるか否かを監視する(S100)。
令が加えられるか否かを監視する(S100)。
【0008】ステップ(S)100で、ファジィ推論部
5がスタート命令を受け取ったと判断すると、入力変換
部6より入力データ26を取得する(S101)。
5がスタート命令を受け取ったと判断すると、入力変換
部6より入力データ26を取得する(S101)。
【0009】ここで、ファジィ推論部5は、入力データ
26を受け取ると、この入力データについて、記憶部3
に記憶れているファジィルールとメンバシップ関数に基
づいて、ファジィ演算を行い(S103)、出力信号2
7を生成出力し出力変換部7に加え、出力変換部7より
制御信号29を出力し制御対象部10に対する制御を行
う(S103)。
26を受け取ると、この入力データについて、記憶部3
に記憶れているファジィルールとメンバシップ関数に基
づいて、ファジィ演算を行い(S103)、出力信号2
7を生成出力し出力変換部7に加え、出力変換部7より
制御信号29を出力し制御対象部10に対する制御を行
う(S103)。
【0010】ついで、ファジィ推論部5は、ストップ命
令が外部から入力されているか否かを判断し(S10
4)、入力されていなければ、ステップ(S)101に
処理を移行し、対象部10が所望の制御状態にあるか否
かを判断する。
令が外部から入力されているか否かを判断し(S10
4)、入力されていなければ、ステップ(S)101に
処理を移行し、対象部10が所望の制御状態にあるか否
かを判断する。
【0011】もし、ストップ命令が外部から入力されて
いるときには、ファジィ推論部5はその処理を終了す
る。
いるときには、ファジィ推論部5はその処理を終了す
る。
【0012】ストップ命令が入力されるまでは、上述の
処理を繰り返すことにより、ファジィ制御装置は制御対
象部10が所望の状態となるように制御を行う。
処理を繰り返すことにより、ファジィ制御装置は制御対
象部10が所望の状態となるように制御を行う。
【0013】このような従来のファジィ制御法を適用し
たファジィ制御装置としては、たとえば、特開昭63−
265309号公報に記載されている、追従制御方式が
ある。
たファジィ制御装置としては、たとえば、特開昭63−
265309号公報に記載されている、追従制御方式が
ある。
【0014】図10は、特開昭63−265309号公
報に記載されている追従制御方式の基本構成図である。
報に記載されている追従制御方式の基本構成図である。
【0015】図において、ファジィ制御部52は、図8
におけるファジィ制御装置100に対応しており、知識
ベース部52aは図7における記憶部3に対応してお
り、ファジィ推論プロセッサ52bは、図8中のファジ
ィ推論部5に対応している。
におけるファジィ制御装置100に対応しており、知識
ベース部52aは図7における記憶部3に対応してお
り、ファジィ推論プロセッサ52bは、図8中のファジ
ィ推論部5に対応している。
【0016】測定部51は追従すべき追尾目標物との距
離を測定する手段であり、たとえば、超音波センサが使
用される。
離を測定する手段であり、たとえば、超音波センサが使
用される。
【0017】走行制御部53は、図8中の制御対象部1
0の一部に相当し、ファジィ制御部52で決定された制
御信号に従って制御対象部の原動機であるモータを駆動
制御する。すなわち、モータの回転速度の加速度を変化
させる駆動制御を行う。
0の一部に相当し、ファジィ制御部52で決定された制
御信号に従って制御対象部の原動機であるモータを駆動
制御する。すなわち、モータの回転速度の加速度を変化
させる駆動制御を行う。
【0018】ここでファジィ制御部52の知識ベース部
52aは、制御知識としてのメンバシップ関数と推論に
使用するファジィルールとを格納している。
52aは、制御知識としてのメンバシップ関数と推論に
使用するファジィルールとを格納している。
【0019】ファジィ制御においては、人間の行動規則
に基づいた制御規則がファジィルールとして表現され
る。
に基づいた制御規則がファジィルールとして表現され
る。
【0020】制御対象についての測定結果に関しての制
御の前件部に関する規定を行うメンバシップ関数と、こ
の前件部に対応して制御量を定めるための後件部に関し
ての規定を行うメンバシップ関数と前件部と後件部を関
係づけるファジィルールとを制御知識として用意してお
く。
御の前件部に関する規定を行うメンバシップ関数と、こ
の前件部に対応して制御量を定めるための後件部に関し
ての規定を行うメンバシップ関数と前件部と後件部を関
係づけるファジィルールとを制御知識として用意してお
く。
【0021】図10に示す追従制御方式の場合の、前件
部についてのメンバシップ関数は、追尾目標物と制御す
べき制御対象部との間の距離に応じた4つの加減速領域
に関するメンバシップ関数および、制御対象部自身の追
尾目標物に対する5種に分類した現在の速度に関するメ
ンバシップ関数の二つである。
部についてのメンバシップ関数は、追尾目標物と制御す
べき制御対象部との間の距離に応じた4つの加減速領域
に関するメンバシップ関数および、制御対象部自身の追
尾目標物に対する5種に分類した現在の速度に関するメ
ンバシップ関数の二つである。
【0022】また、図10に示した追従制御方式におけ
る、後件部についてのメンバシップ関数としては、制御
すべき制御対象部に制御量として与えるべき5つの加速
度について規定したメンバシップ関数を用意しておく。
る、後件部についてのメンバシップ関数としては、制御
すべき制御対象部に制御量として与えるべき5つの加速
度について規定したメンバシップ関数を用意しておく。
【0023】図4(A)は、上述の前件部の一つである
追尾目標物と追従する制御すべき制御対象部との間の現
在の距離についてのメンバシップ関数の説明図であり、
図4(B)は、もう一つの前件部である、制御すべき制
御対象部の追尾目標物に対する現在の速度に関するメン
バシップ関数の一例についての説明図であり、図4
(C)は後件部である制御すべき制御対象部に加えるべ
き制御量である加速度に関するメンバシップ関数の一例
を示す説明図である。
追尾目標物と追従する制御すべき制御対象部との間の現
在の距離についてのメンバシップ関数の説明図であり、
図4(B)は、もう一つの前件部である、制御すべき制
御対象部の追尾目標物に対する現在の速度に関するメン
バシップ関数の一例についての説明図であり、図4
(C)は後件部である制御すべき制御対象部に加えるべ
き制御量である加速度に関するメンバシップ関数の一例
を示す説明図である。
【0024】図4(A)、図4(B)および図4(C)
の縦軸は、いずれも、それぞれのメンバシップ関数のメ
ンバシップ値である度合であり何れも0から1までの範
囲の値を持つている。
の縦軸は、いずれも、それぞれのメンバシップ関数のメ
ンバシップ値である度合であり何れも0から1までの範
囲の値を持つている。
【0025】また、図4(A)、図4(B)および図4
(C)の横軸は、それぞれのメンバシップ関数について
の元である。
(C)の横軸は、それぞれのメンバシップ関数について
の元である。
【0026】すなわち、図4(A)の横軸は、追尾目標
物から制御すべき制御対象部までの現在の距離Lであ
り、図4(B)の横軸は、制御すべき制御対象部の追尾
目標物に対する現在の速度Vであり、図4(C)の横軸
は、制御すべき制御対象部に加えるべき加速度Aであ
る。
物から制御すべき制御対象部までの現在の距離Lであ
り、図4(B)の横軸は、制御すべき制御対象部の追尾
目標物に対する現在の速度Vであり、図4(C)の横軸
は、制御すべき制御対象部に加えるべき加速度Aであ
る。
【0027】図4(A)に示したメンバシップ関数で
は、追尾目標物から制御対象部までの距離に対して、4
種の加減速領域を定義している。
は、追尾目標物から制御対象部までの距離に対して、4
種の加減速領域を定義している。
【0028】すなわち、第1の領域は追尾目標物に制御
すべき制御対象部が接近しすぎており、制御対象部に対
して止るように制御すべき静止領域。
すべき制御対象部が接近しすぎており、制御対象部に対
して止るように制御すべき静止領域。
【0029】第2の領域は追尾目標物と制御すべき制御
対象部との間の距離が適当(2m前後)であり、現在の
相対位置を制御対象部に対し保つように制御すべき維持
領域。
対象部との間の距離が適当(2m前後)であり、現在の
相対位置を制御対象部に対し保つように制御すべき維持
領域。
【0030】第3の領域は、追尾目標物から制御すべき
制御対象部がやや離れており、加速して制御対象部が追
いつくように制御すべき加速領域、第4の領域は、追尾
目標物から制御すべき制御対象部がかなり離れており、
制御対象部に対して急加速して大至急追いつくように制
御すべき急加速領域の4種の領域である。
制御対象部がやや離れており、加速して制御対象部が追
いつくように制御すべき加速領域、第4の領域は、追尾
目標物から制御すべき制御対象部がかなり離れており、
制御対象部に対して急加速して大至急追いつくように制
御すべき急加速領域の4種の領域である。
【0031】図4(A)において、追尾目標物と制御す
べき制御対象部との間の距離がたとえば、2.5mのと
きのメンバシップ値、すなわち、度合は、静止領域につ
いては0であり、維持領域についての度合は0.5であ
り、加速領域についての度合は0であることを示してい
る。
べき制御対象部との間の距離がたとえば、2.5mのと
きのメンバシップ値、すなわち、度合は、静止領域につ
いては0であり、維持領域についての度合は0.5であ
り、加速領域についての度合は0であることを示してい
る。
【0032】次に、上述した4つの加減速領域と制御す
べき制御対象部自身の現在の移動速度に応じて制御出力
としての加減速量を決定するためのファジィルールを用
意する。
べき制御対象部自身の現在の移動速度に応じて制御出力
としての加減速量を決定するためのファジィルールを用
意する。
【0033】図5は、このようなファジィルールの一例
を示した説明図である。すなわち、図4(A)に示され
ている4つの加減速領域と制御すべき制御対象部自身の
もつ現在の5種の移動速度(図5中では自身の移動速
度)についてのメンバシップ関数と、かなり速い、やや
速い、普通、やや遅い、および、かなり遅いと言う6種
の領域とを持つメンバシップ関数とから制御すべき制御
対象部に対する加減速量を、BS(かなり減速)、SS
(やや減速)、KE(現状維持)、SF(やや加速)、
BF(かなり加速)の5通りの領域を持つメンバシップ
関数のどの領域かを関係づけるファジィルールの一例を
示す説明図である。
を示した説明図である。すなわち、図4(A)に示され
ている4つの加減速領域と制御すべき制御対象部自身の
もつ現在の5種の移動速度(図5中では自身の移動速
度)についてのメンバシップ関数と、かなり速い、やや
速い、普通、やや遅い、および、かなり遅いと言う6種
の領域とを持つメンバシップ関数とから制御すべき制御
対象部に対する加減速量を、BS(かなり減速)、SS
(やや減速)、KE(現状維持)、SF(やや加速)、
BF(かなり加速)の5通りの領域を持つメンバシップ
関数のどの領域かを関係づけるファジィルールの一例を
示す説明図である。
【0034】図5においては、制御すべき制御対象部自
身の移動速度を5通りに区分し、これらの自身の移動速
度のそれぞれに対して、すでに説明した後件部に対応す
るメンバシップ関数である4種の加速度領域をそれぞれ
対応させた20通りの組合せがファジィルールとして示
されている。
身の移動速度を5通りに区分し、これらの自身の移動速
度のそれぞれに対して、すでに説明した後件部に対応す
るメンバシップ関数である4種の加速度領域をそれぞれ
対応させた20通りの組合せがファジィルールとして示
されている。
【0035】たとえば、前件部が上述したメンバシップ
関数の定義する4種の加減速領域の内の、急加速領域の
場合であって、かつ、制御すべき制御対象部自身の移動
速度がやや速いときには、ファジィルールにより、後件
のメンバシップ関数のSF(やや加速)である領域のメ
ンバシップ関数が対応づけられている。
関数の定義する4種の加減速領域の内の、急加速領域の
場合であって、かつ、制御すべき制御対象部自身の移動
速度がやや速いときには、ファジィルールにより、後件
のメンバシップ関数のSF(やや加速)である領域のメ
ンバシップ関数が対応づけられている。
【0036】ここで、図5に示すファジィルールはファ
ジィ制御装置1の記憶部3の中に、たとえば、以下のよ
うなテキストとして格納されている。 ルール1:IF L=LL AND V=VL THEN A=KE ルール2:IF L=LL AND V=VB THEN A=SF ルール3:IF L=LL AND V=VE THEN A=SF ルール4:IF L=LL AND V=VS THEN A=BF ルール5:IF L=LL AND V=VM THEN A=BF ・ ・ ・ 以下同様。
ジィ制御装置1の記憶部3の中に、たとえば、以下のよ
うなテキストとして格納されている。 ルール1:IF L=LL AND V=VL THEN A=KE ルール2:IF L=LL AND V=VB THEN A=SF ルール3:IF L=LL AND V=VE THEN A=SF ルール4:IF L=LL AND V=VS THEN A=BF ルール5:IF L=LL AND V=VM THEN A=BF ・ ・ ・ 以下同様。
【0037】図4(B)は、制御されるべき制御対象部
自身の速度Vに対してのメンバシップ関数の度合を示し
た例である。すなわち、制御対象部自身の追尾目標物に
対する速度Vが60cm/secのときには、その制御
対象部の持つ速度Vがやや遅いという領域についての度
合は1であり、制御対象部自身についての速度Vがかな
り遅いという領域についての度合は0であり、制御対象
部自身についての速度Vが普通であるとする領域につい
ての度合も0である。
自身の速度Vに対してのメンバシップ関数の度合を示し
た例である。すなわち、制御対象部自身の追尾目標物に
対する速度Vが60cm/secのときには、その制御
対象部の持つ速度Vがやや遅いという領域についての度
合は1であり、制御対象部自身についての速度Vがかな
り遅いという領域についての度合は0であり、制御対象
部自身についての速度Vが普通であるとする領域につい
ての度合も0である。
【0038】図4(C)は、図4(A)と図4(B)で
定義したメンバシップ関数に対応して定義する制御すべ
き制御対象部に対する制御すべき加速度についての各領
域(かなり減速、やや減速、現状維持、やや加速、およ
び、かなり加速)についての加速度の大きさに対する度
合を縦軸に示したメンバシップ関数の一例である。
定義したメンバシップ関数に対応して定義する制御すべ
き制御対象部に対する制御すべき加速度についての各領
域(かなり減速、やや減速、現状維持、やや加速、およ
び、かなり加速)についての加速度の大きさに対する度
合を縦軸に示したメンバシップ関数の一例である。
【0039】すなわち、制御すべき制御対象部に対して
の加速度の制御量は、加速度0のときの現状維持領域に
ついての度合は1であり、このときのやや減速、やや加
速、かなり減速、および、かなり加速の領域についての
度合は何れも0である。
の加速度の制御量は、加速度0のときの現状維持領域に
ついての度合は1であり、このときのやや減速、やや加
速、かなり減速、および、かなり加速の領域についての
度合は何れも0である。
【0040】以下に、ファジィ演算による制御動作につ
いて説明する。図6は、図10に示した追従制御方式に
おけるファジィ制御の一例を示す説明図である。
いて説明する。図6は、図10に示した追従制御方式に
おけるファジィ制御の一例を示す説明図である。
【0041】このファジィ制御で適用する演算方法は、
MIN−MAX演算、あるいは、マムダニ演算法と呼ば
れるもので、ファジィ演算方法として広く用いられてい
るものである。
MIN−MAX演算、あるいは、マムダニ演算法と呼ば
れるもので、ファジィ演算方法として広く用いられてい
るものである。
【0042】図6(A)は制御すべき制御対象部が追従
すべき追尾目標物とこの制御対象部との間の距離に対す
るメンバシップ関数の度合を示す説明図であり、図6
(B)は、この追尾目標物に対しての制御すべき制御対
象部のもつ現在の速度についてのメンバシップ関数の値
である度合を縦軸に示した説明図であり、図6(C)
は、この制御すべき制御対象部に対して制御すべき加速
度についてのメンバシップ関数の各領域と度合とを示す
説明図である。
すべき追尾目標物とこの制御対象部との間の距離に対す
るメンバシップ関数の度合を示す説明図であり、図6
(B)は、この追尾目標物に対しての制御すべき制御対
象部のもつ現在の速度についてのメンバシップ関数の値
である度合を縦軸に示した説明図であり、図6(C)
は、この制御すべき制御対象部に対して制御すべき加速
度についてのメンバシップ関数の各領域と度合とを示す
説明図である。
【0043】いま、追尾目標物から制御すべき制御対象
部までの距離が、3.3mであり、制御対象部自身の速
度が120cm/secであるとする。このとき、図6
(A)から、加減速領域としてのメンバシップ関数の値
(度合)は、加速領域については0.7であり、急加速
領域の度合は、0.2である。
部までの距離が、3.3mであり、制御対象部自身の速
度が120cm/secであるとする。このとき、図6
(A)から、加減速領域としてのメンバシップ関数の値
(度合)は、加速領域については0.7であり、急加速
領域の度合は、0.2である。
【0044】また、制御されるべき制御対象部自身の速
度が120cm/secでの速度領域の適合度は、やや
速いについては、0.5であり、その外の領域(普通、
かなり速い、やや遅い)についての度合は何れも0であ
る。
度が120cm/secでの速度領域の適合度は、やや
速いについては、0.5であり、その外の領域(普通、
かなり速い、やや遅い)についての度合は何れも0であ
る。
【0045】図5に示したような、ファジィルールを使
用することにより、次の2つのルールが適用される。
用することにより、次の2つのルールが適用される。
【0046】すなわち、制御すべき制御対象部と追尾目
標物との距離が急加速領域にあり、かつ、制御対象部自
身の移動速度がやや速いときは、制御対象部をやや加速
(SF)させる。
標物との距離が急加速領域にあり、かつ、制御対象部自
身の移動速度がやや速いときは、制御対象部をやや加速
(SF)させる。
【0047】また、制御すべき制御対象部が追従する追
尾目標物に対して急加速領域にあり、かつ、この制御対
象部自身の移動速度がやや速いときには、制御対象部の
速度を現状維持(KE)させる。
尾目標物に対して急加速領域にあり、かつ、この制御対
象部自身の移動速度がやや速いときには、制御対象部の
速度を現状維持(KE)させる。
【0048】MIN−MAX演算においては、複数のメ
ンバシップ関数の度合から一つの度合を決定するときに
は、すなわち、二つの事象に対するメンバシップ関数の
積は、二つの事象についてのそれぞれの度合の内の小な
る値を積の度合とする、追尾目標物に対する制御すべき
制御対象部までの距離が3.3mの場合の急加速領域で
のメンバシップ関数の度合は0.2であり、図6(B)
から、制御すべき制御対象部自身の速度が120cm/
secの場合のやや速い領域でのメンバシップ関数の度
合は、0.5であるから制御対象部をやや加速させる度
合としては、これらの度合の内の小なる値である0.2
を使用する。
ンバシップ関数の度合から一つの度合を決定するときに
は、すなわち、二つの事象に対するメンバシップ関数の
積は、二つの事象についてのそれぞれの度合の内の小な
る値を積の度合とする、追尾目標物に対する制御すべき
制御対象部までの距離が3.3mの場合の急加速領域で
のメンバシップ関数の度合は0.2であり、図6(B)
から、制御すべき制御対象部自身の速度が120cm/
secの場合のやや速い領域でのメンバシップ関数の度
合は、0.5であるから制御対象部をやや加速させる度
合としては、これらの度合の内の小なる値である0.2
を使用する。
【0049】また、図6(A)で、制御すべき制御対象
部と追尾目標物との距離が3.3mの場合に、加速領域
についてのメンバシップ関数の度合は0.7であり、そ
のとき、この制御対象部自身の速度がやや速い領域での
メンバシップ関数の度合は図6(B)から0.5であ
る、これらの組合せの場合には、図5のファジィルール
では制御対象部の速度を現状維持(KE)とするが、そ
のときに現状維持の度合としては上述した二つの度合の
値である0.7と0.5の内の小なる方の値である0.
5を使用する(MIN−MAX演算で最小値を採用)。
部と追尾目標物との距離が3.3mの場合に、加速領域
についてのメンバシップ関数の度合は0.7であり、そ
のとき、この制御対象部自身の速度がやや速い領域での
メンバシップ関数の度合は図6(B)から0.5であ
る、これらの組合せの場合には、図5のファジィルール
では制御対象部の速度を現状維持(KE)とするが、そ
のときに現状維持の度合としては上述した二つの度合の
値である0.7と0.5の内の小なる方の値である0.
5を使用する(MIN−MAX演算で最小値を採用)。
【0050】結論的には、これらのルールから導かれる
結論であるやや加速させるについての度合0.2と現状
維持についての度合0.5のそれぞれの領域、すなわ
ち、図6(C)の点R,S,T,およびUで囲まれる、
やや加速領域の面積と、点A,B,CおよびDで囲まれ
る現状維持に関する領域の面積の和の重心位置(図中の
点G)を求め、Gに対応する加速度の値10cm/se
c2 を制御対象部に加えるべき制御量としている。
結論であるやや加速させるについての度合0.2と現状
維持についての度合0.5のそれぞれの領域、すなわ
ち、図6(C)の点R,S,T,およびUで囲まれる、
やや加速領域の面積と、点A,B,CおよびDで囲まれ
る現状維持に関する領域の面積の和の重心位置(図中の
点G)を求め、Gに対応する加速度の値10cm/se
c2 を制御対象部に加えるべき制御量としている。
【0051】以上の演算を制御対象である制御対象部の
追尾目標物に対する速度とこれら両者間の距離とを物理
量として測定しつつ、制御対象部の運動の変化に対して
十分短い周期で繰り返し実行することにより人間の制御
則に準じた制御を行っている。
追尾目標物に対する速度とこれら両者間の距離とを物理
量として測定しつつ、制御対象部の運動の変化に対して
十分短い周期で繰り返し実行することにより人間の制御
則に準じた制御を行っている。
【0052】図7(A)、図7(B)および図7(C)
はそれぞれ図6(A)、図6(B)および図6(C)の
メンバシップ関数に対応したメンバシップ関数の内容を
それぞれ変更したものの一例を示す説明図である。
はそれぞれ図6(A)、図6(B)および図6(C)の
メンバシップ関数に対応したメンバシップ関数の内容を
それぞれ変更したものの一例を示す説明図である。
【0053】図6に示すメンバシップ関数に基づいて制
御すべき制御対象部の制御を行ったとき、所望の制御が
行われないときには、たとえば、図7に示すメンバシッ
プ関数に変更して制御を行う。
御すべき制御対象部の制御を行ったとき、所望の制御が
行われないときには、たとえば、図7に示すメンバシッ
プ関数に変更して制御を行う。
【0054】たとえば、図6(A)に示すメンバシップ
関数に対して図7(A)に示したメンバシップ関数で
は、制御すべき制御対象部と追尾目標物との間の距離を
より長くした状態で維持したいときのメンバシップ関数
を示している。
関数に対して図7(A)に示したメンバシップ関数で
は、制御すべき制御対象部と追尾目標物との間の距離を
より長くした状態で維持したいときのメンバシップ関数
を示している。
【0055】また、図7(B)に示したメンバシップ関
数により制御を行えば、図6(B)に示したメンバシッ
プ関数に基づいて制御を行うより、制御すべき制御対象
部の追尾目標物に対する速度は、より速い状態で制御さ
れることになり、図7(C)のメンバシップ関数を用い
ることにより、図6(C)のメンバシップ関数を使用し
たときよりも、小なる加速度を制御対象部に対して加え
られることになる。
数により制御を行えば、図6(B)に示したメンバシッ
プ関数に基づいて制御を行うより、制御すべき制御対象
部の追尾目標物に対する速度は、より速い状態で制御さ
れることになり、図7(C)のメンバシップ関数を用い
ることにより、図6(C)のメンバシップ関数を使用し
たときよりも、小なる加速度を制御対象部に対して加え
られることになる。
【0056】
【発明が解決しようとする課題】上述した従来のファジ
ィ制御方法およびその装置では、制御に使用するメンバ
シップ関数とファジィルールとを予め最初に規定してお
き、このようなメンバシップ関数とファジィルールとに
基づいて、実際に制御を行い、その結果により、所望の
制御が最初から達成されることは稀であり、通常は、こ
のようなファジィルールとメンバシップ関数とを用いた
制御を実行し、その結果を考慮して、所望の制御が実行
されるように、メンバシップ関数とファジィルールにつ
いての修正を繰り返し行う必要がある。
ィ制御方法およびその装置では、制御に使用するメンバ
シップ関数とファジィルールとを予め最初に規定してお
き、このようなメンバシップ関数とファジィルールとに
基づいて、実際に制御を行い、その結果により、所望の
制御が最初から達成されることは稀であり、通常は、こ
のようなファジィルールとメンバシップ関数とを用いた
制御を実行し、その結果を考慮して、所望の制御が実行
されるように、メンバシップ関数とファジィルールにつ
いての修正を繰り返し行う必要がある。
【0057】たとえば、メンバシップ関数を修正する場
合には、ファジィ制御装置の動作を一時停止させてお
き、それぞれの元に対するメンバシップ関数の領域、関
数の元に対する勾配およびその形状などを試行錯誤的に
修正する必要がある。
合には、ファジィ制御装置の動作を一時停止させてお
き、それぞれの元に対するメンバシップ関数の領域、関
数の元に対する勾配およびその形状などを試行錯誤的に
修正する必要がある。
【0058】このようなメンバシップ関数とファジィル
ールの修正には多大の時間を要すると言う欠点と修正の
際には、ファジィ制御装置の動作を一時停止させる必要
があるという欠点とを有している。
ールの修正には多大の時間を要すると言う欠点と修正の
際には、ファジィ制御装置の動作を一時停止させる必要
があるという欠点とを有している。
【0059】
【課題を解決するための手段】本発明のファジィ制御方
法は、制御対象部から制御に必要な物理量を観測信号と
して受け取り内部処理可能な入力データに変換し、予め
記憶部内に記憶してあるファジィルールとメンバシップ
関数を基に前記入力データについてファジィ演算を行
い、制御信号を生成し前記制御対象部に加えて前記制御
対象部を所望の状態に制御するファジィ制御方法におい
て、予め記憶させている修正知識を参照し前記入力デー
タが予め定められた修正をすべき状態であるか否かを判
断する処理と、前記入力データが修正をすべき状態であ
ると判断したときは、前記修正知識に基づいて前記記憶
部内に記憶しているメンバシップ関数とファジィルール
あるいは何れか一方を修正する処理とを備えて構成され
ている。
法は、制御対象部から制御に必要な物理量を観測信号と
して受け取り内部処理可能な入力データに変換し、予め
記憶部内に記憶してあるファジィルールとメンバシップ
関数を基に前記入力データについてファジィ演算を行
い、制御信号を生成し前記制御対象部に加えて前記制御
対象部を所望の状態に制御するファジィ制御方法におい
て、予め記憶させている修正知識を参照し前記入力デー
タが予め定められた修正をすべき状態であるか否かを判
断する処理と、前記入力データが修正をすべき状態であ
ると判断したときは、前記修正知識に基づいて前記記憶
部内に記憶しているメンバシップ関数とファジィルール
あるいは何れか一方を修正する処理とを備えて構成され
ている。
【0060】また、第2の発明のファジィ制御装置は、
制御対象部から制御に必要な物理量を観測信号として受
け取り内部処理可能な入力データに変換し、予め記憶部
内に記憶してあるファジィルールとメンバシップ関数を
基に前記入力データについてファジィ演算を行い、制御
信号を生成し前記制御対象部に加えて前記制御対象部を
所望の状態に制御するファジィ制御装置において、前記
入力データが修正すべき状態であるか否かを判定し前記
修正すべき状態であるときには前記記憶部内に記憶して
いるメンバシップ関数とファジィルールあるいは何れか
一方の特定の修正部分とその修正する値とを指定する修
正知識を予め内部に記憶し、前記入力データの状態をを
前記修正知識に基づいて修正すべき状態か否かを判定し
修正すべき場合には、前記修正知識に基づいて前記記憶
部内の該当するメンバシップ関数とファジィルールある
いは何れか一方を修正し記憶させるエキスパートシステ
ム部とを備えることにより構成されている。
制御対象部から制御に必要な物理量を観測信号として受
け取り内部処理可能な入力データに変換し、予め記憶部
内に記憶してあるファジィルールとメンバシップ関数を
基に前記入力データについてファジィ演算を行い、制御
信号を生成し前記制御対象部に加えて前記制御対象部を
所望の状態に制御するファジィ制御装置において、前記
入力データが修正すべき状態であるか否かを判定し前記
修正すべき状態であるときには前記記憶部内に記憶して
いるメンバシップ関数とファジィルールあるいは何れか
一方の特定の修正部分とその修正する値とを指定する修
正知識を予め内部に記憶し、前記入力データの状態をを
前記修正知識に基づいて修正すべき状態か否かを判定し
修正すべき場合には、前記修正知識に基づいて前記記憶
部内の該当するメンバシップ関数とファジィルールある
いは何れか一方を修正し記憶させるエキスパートシステ
ム部とを備えることにより構成されている。
【0061】
【実施例】次に、本発明の実施例について図面を参照し
て説明する。
て説明する。
【0062】図1は本発明のファジィ制御方法を適用し
たファジィ制御装置の一実施例を示すブロック図であ
り、図2は図1で示したファジィ制御装置の制御方法を
示す流れ図である。
たファジィ制御装置の一実施例を示すブロック図であ
り、図2は図1で示したファジィ制御装置の制御方法を
示す流れ図である。
【0063】図1に示すファジィ制御装置は、制御対象
部10を制御するために必要なファジィルールの入力を
行うファジィ・ルール入力部2と、メンバシップ関数を
入力するためのメンバシップ関数入力部4と、ファジィ
・ルール入力部2から出力されるファジィ・ルール21
と、メンバシップ関数入力部4から出力されるファジィ
関数22とを記憶する記憶部3と、制御対象部10から
出力される制御のために必要な物理量を示す観測信号2
8を受け取り予め定められた規定に従った形式に変換し
た信号を入力データ26として出力する入力変換部6
と、この入力データ26を入力とし、入力された内容に
応じて記憶部3のファジィ・ルールとメンバシップ関数
とを基に演算(推論)を行い制御対象部10に対する制
御のための出力信号27を出力するファジィ推論部5と
を備えている。
部10を制御するために必要なファジィルールの入力を
行うファジィ・ルール入力部2と、メンバシップ関数を
入力するためのメンバシップ関数入力部4と、ファジィ
・ルール入力部2から出力されるファジィ・ルール21
と、メンバシップ関数入力部4から出力されるファジィ
関数22とを記憶する記憶部3と、制御対象部10から
出力される制御のために必要な物理量を示す観測信号2
8を受け取り予め定められた規定に従った形式に変換し
た信号を入力データ26として出力する入力変換部6
と、この入力データ26を入力とし、入力された内容に
応じて記憶部3のファジィ・ルールとメンバシップ関数
とを基に演算(推論)を行い制御対象部10に対する制
御のための出力信号27を出力するファジィ推論部5と
を備えている。
【0064】そのほかに、このファジィ制御装置1は、
ファジィ推論部5の出力信号27を入力とし、この出力
信号に応じた制御信号29を生成し、制御対象部10に
出力する出力変換部7と、予め記憶している修正知識を
記憶し入力データ26の値を監視しメンバシップ関数の
修正が必要か否かを判断し修正が必要と判断した場合に
は記憶部3内のメンバシップ関数を修正するエキスパー
トシステム部9と、エキスパートシステム部9に修正知
識を入力するための修正知識入力部8とを備えている。
ファジィ推論部5の出力信号27を入力とし、この出力
信号に応じた制御信号29を生成し、制御対象部10に
出力する出力変換部7と、予め記憶している修正知識を
記憶し入力データ26の値を監視しメンバシップ関数の
修正が必要か否かを判断し修正が必要と判断した場合に
は記憶部3内のメンバシップ関数を修正するエキスパー
トシステム部9と、エキスパートシステム部9に修正知
識を入力するための修正知識入力部8とを備えている。
【0065】図2は、図1に示したファジィ制御装置1
の動作を説明する流れ図であり、図3は、図1に示した
ファジィ制御装置1の制御対象部10が制御対象部であ
る場合の制御対象部10をより詳細に示したブロック図
である。
の動作を説明する流れ図であり、図3は、図1に示した
ファジィ制御装置1の制御対象部10が制御対象部であ
る場合の制御対象部10をより詳細に示したブロック図
である。
【0066】記憶部3には、予めファジィルール入力部
2を介してファジィルール、たとえば、図5に示したフ
ァジィルールを「if〜then〜」形式で入力し記憶
させると共に、メンバシップ関数入力部4を介して、た
とえば、図4(A),図4(B)および図4(C)に示
したメンバシップ関数を入力し記憶しておく。たとえ
ば、図4(C)に示されている後件部のメンバシップ関
数を「かなり減速」領域については、RBS,「やや減
速」領域については、RSS,「現状維持」領域について
はRKE,「やや加速」領域については、RSF,「かなり
加速」領域については、RBFとし、図4(C)に示すよ
うに、これらのメンバシップ関数がその勾配を変化する
点(不連続点)から横軸に下した垂線と横軸との交点
を、図4(C)中で左から右へ順にA1 ,A4 ,A7 ,
A10,A13とし、また、それぞれのメンバシップ関数を
表わす直線が横軸と交差する点を、左より右に順に、そ
れぞれ、A3 ,A2 ,A6 ,A5 ,A9 ,A8 , A12,
A11とする。
2を介してファジィルール、たとえば、図5に示したフ
ァジィルールを「if〜then〜」形式で入力し記憶
させると共に、メンバシップ関数入力部4を介して、た
とえば、図4(A),図4(B)および図4(C)に示
したメンバシップ関数を入力し記憶しておく。たとえ
ば、図4(C)に示されている後件部のメンバシップ関
数を「かなり減速」領域については、RBS,「やや減
速」領域については、RSS,「現状維持」領域について
はRKE,「やや加速」領域については、RSF,「かなり
加速」領域については、RBFとし、図4(C)に示すよ
うに、これらのメンバシップ関数がその勾配を変化する
点(不連続点)から横軸に下した垂線と横軸との交点
を、図4(C)中で左から右へ順にA1 ,A4 ,A7 ,
A10,A13とし、また、それぞれのメンバシップ関数を
表わす直線が横軸と交差する点を、左より右に順に、そ
れぞれ、A3 ,A2 ,A6 ,A5 ,A9 ,A8 , A12,
A11とする。
【0067】ここで、図4(C)に示す4つのメンバシ
ップ関数を以下のように定義する。
ップ関数を以下のように定義する。
【0068】RBS=1、ただしA〈A1 およびA=A1
でA1 =−90。
でA1 =−90。
【0069】RBS=−(A−A2 )/(A2 −A1 )、
ただしA1 〈A〈A2 またはA=A2 でA2 =−60。
ただしA1 〈A〈A2 またはA=A2 でA2 =−60。
【0070】RSS=(A−A3 )/(A4 −A3 )、た
だしA3 〈A〈A4 またはA=A3もしくはA=A4 で
A3 =−80およびA4 =−55。
だしA3 〈A〈A4 またはA=A3もしくはA=A4 で
A3 =−80およびA4 =−55。
【0071】RSS=−(A−A5 )/(A5 −A4 )、
ただしA4 〈A〈A5 またはA=A5 でA5 =−15。
ただしA4 〈A〈A5 またはA=A5 でA5 =−15。
【0072】RKE=(A−A6 )/(A7 −A6 )、た
だしA6 〈A〈A7 またはA=A6もしくはA=A7 で
A6 =−30およびA7 =0。
だしA6 〈A〈A7 またはA=A6もしくはA=A7 で
A6 =−30およびA7 =0。
【0073】RKE=−(A−A8 )/(A8 −A7 )、
ただしA7 〈A〈A8 またはA=A8 でA8 =30。
ただしA7 〈A〈A8 またはA=A8 でA8 =30。
【0074】RSF=(A−A9 )/(A10−A9 )、た
だしA9 〈A〈A10またはA=A9もしくはA=A10で
A9 =15およびA10=60。
だしA9 〈A〈A10またはA=A9もしくはA=A10で
A9 =15およびA10=60。
【0075】RSF=−(A−A11)/(A11−A10)、
ただしA10〈A〈A11またはA=A11でA11=100。
ただしA10〈A〈A11またはA=A11でA11=100。
【0076】RBF=(A−A12)/(A13−A12)、た
だしA12〈A〈A13またはA=A12もしくはA=A13で
A12=85でA13=105。
だしA12〈A〈A13またはA=A12もしくはA=A13で
A12=85でA13=105。
【0077】RBF=1、ただしA13〈A。
【0078】また、修正知識入力部8を介して、予め修
正知識をエキスパートシステム部9の図示されていない
記憶部に記憶させておく。
正知識をエキスパートシステム部9の図示されていない
記憶部に記憶させておく。
【0079】修正知識としては、たとえば、制御対象部
10が追尾目標物に対して接近し追尾目標物から制御対
象部10までの距離が維持間隔の理想値LG =2mに対
して1.5mから2.5mの範囲内に接近したときオー
バシュートが発生し制御対象部10の速度が130cm
/sよりも大であれば、メンバシップ関数RSFとRBFと
の値を左方に1だけシフトするような修正知識、すなわ
ち、入力データである距離Lと速度Vの値を監視し、こ
れらの値が、たとえば次のような範囲にあるときには、
このような状態を検出し記憶部3に記憶されているメン
バシップ関数を修正する修正知識を予めエキスパートシ
ステム部9に記憶させておく。
10が追尾目標物に対して接近し追尾目標物から制御対
象部10までの距離が維持間隔の理想値LG =2mに対
して1.5mから2.5mの範囲内に接近したときオー
バシュートが発生し制御対象部10の速度が130cm
/sよりも大であれば、メンバシップ関数RSFとRBFと
の値を左方に1だけシフトするような修正知識、すなわ
ち、入力データである距離Lと速度Vの値を監視し、こ
れらの値が、たとえば次のような範囲にあるときには、
このような状態を検出し記憶部3に記憶されているメン
バシップ関数を修正する修正知識を予めエキスパートシ
ステム部9に記憶させておく。
【0080】すなわち、修正知識として、 if (1.5〈L〈2.5)and(V〉13
0) then A9 =A9 −1 A10=A10−1 A11=A11−1 A12=A12−1 A13=A13−1 endif を与えておく。
0) then A9 =A9 −1 A10=A10−1 A11=A11−1 A12=A12−1 A13=A13−1 endif を与えておく。
【0081】また、制御対象部10が追尾目標物に追い
つかず、離れすぎているとき、すなわち、入力データ2
6の内で、距離Lが1.5mより大であり、かつ、制御
対象部10の速度Vがたとえば80cm/sより小であ
るときには、図4(C)に示すメンバシップ関数のRSF
とRBFの値を、たとえば1だけ増加させる修正知識を、
修正知識入力部8を介してエキスパートシステム部9の
図示されていない記憶部に予め記憶させておく。
つかず、離れすぎているとき、すなわち、入力データ2
6の内で、距離Lが1.5mより大であり、かつ、制御
対象部10の速度Vがたとえば80cm/sより小であ
るときには、図4(C)に示すメンバシップ関数のRSF
とRBFの値を、たとえば1だけ増加させる修正知識を、
修正知識入力部8を介してエキスパートシステム部9の
図示されていない記憶部に予め記憶させておく。
【0082】一方、制御状態が期待する状態とかなり異
なる場合には、メンバシップ関数の調整だけでは良い状
態に落ち着くのに時間がかかる場合もある。
なる場合には、メンバシップ関数の調整だけでは良い状
態に落ち着くのに時間がかかる場合もある。
【0083】そのような場合には、ファジィルールの修
正が有効である。ここでファジィルール修正の一例を説
明する。図5に示すファジィルールをファジィ制御装置
1の記憶部3の中に配列A[I]とB[J]を用いて、
以下のような形式で格納しておく。
正が有効である。ここでファジィルール修正の一例を説
明する。図5に示すファジィルールをファジィ制御装置
1の記憶部3の中に配列A[I]とB[J]を用いて、
以下のような形式で格納しておく。
【0084】初期値:B[1]=BS,B[2]=S
S,B[3]=KE,B[4]=SF,B[5]=BF 初期値:A[1]=B[3],A[2]=B[4],A
[3]=B[4],A[4]=B[5],A[5]=B
[5],A[6]=B[2],A[7]=B[3],A
[8]=B[3],A[9]=B[4],A[10]=
B[5],A[11]=B[1],A[12]=B
[2],A[13]=B[3],A[14]=B
[4],A[15]=B[5],A[16]=B
[1],A[17]=B[1],A[18]=B
[1],A[19]=B[2],A[20]=B[2] ルール1:IF L=LL AND V=VL THEN A=A[1] ルール2:IF L=LL AND V=VB THEN A=A[2] ルール3:IF L=LL AND V=VE THEN A=A[3] ルール4:IF L=LL AND V=VS THEN A=A[4] ルール5:IF L=LL AND V=VM THEN A=A[5] ルール6:IF L=LB AND V=VL THEN A=A[6] ルール7:IF L=LB AND V=VB THEN A=A[7] ルール8:IF L=LB AND V=VE THEN A=A[8] ルール9:IF L=LB AND V=VS THEN A=A[9] ルール10:IF L=LB AND V=VM THEN A=A[10] ルール11:IF L=LE AND V=VL THEN A=A[11] ルール12:IF L=LE AND V=VB THEN A=A[12] ルール13:IF L=LE AND V=VE THEN A=A[13] ルール14:IF L=LE AND V=VS THEN A=A[14] ルール15:IF L=LE AND V=VM THEN A=A[15] ルール16:IF L=LS AND V=VL THEN A=A[16] ルール17:IF L=LS AND V=VB THEN A=A[17] ルール18:IF L=LS AND V=VE THEN A=A[18] ルール19:IF L=LS AND V=VS THEN A=A[19] ルール20:IF L=LS AND V=VM THEN A=A[20] 初期値はファジィ制御の実行において、最初の1回だけ
実行される命令である。
S,B[3]=KE,B[4]=SF,B[5]=BF 初期値:A[1]=B[3],A[2]=B[4],A
[3]=B[4],A[4]=B[5],A[5]=B
[5],A[6]=B[2],A[7]=B[3],A
[8]=B[3],A[9]=B[4],A[10]=
B[5],A[11]=B[1],A[12]=B
[2],A[13]=B[3],A[14]=B
[4],A[15]=B[5],A[16]=B
[1],A[17]=B[1],A[18]=B
[1],A[19]=B[2],A[20]=B[2] ルール1:IF L=LL AND V=VL THEN A=A[1] ルール2:IF L=LL AND V=VB THEN A=A[2] ルール3:IF L=LL AND V=VE THEN A=A[3] ルール4:IF L=LL AND V=VS THEN A=A[4] ルール5:IF L=LL AND V=VM THEN A=A[5] ルール6:IF L=LB AND V=VL THEN A=A[6] ルール7:IF L=LB AND V=VB THEN A=A[7] ルール8:IF L=LB AND V=VE THEN A=A[8] ルール9:IF L=LB AND V=VS THEN A=A[9] ルール10:IF L=LB AND V=VM THEN A=A[10] ルール11:IF L=LE AND V=VL THEN A=A[11] ルール12:IF L=LE AND V=VB THEN A=A[12] ルール13:IF L=LE AND V=VE THEN A=A[13] ルール14:IF L=LE AND V=VS THEN A=A[14] ルール15:IF L=LE AND V=VM THEN A=A[15] ルール16:IF L=LS AND V=VL THEN A=A[16] ルール17:IF L=LS AND V=VB THEN A=A[17] ルール18:IF L=LS AND V=VE THEN A=A[18] ルール19:IF L=LS AND V=VS THEN A=A[19] ルール20:IF L=LS AND V=VM THEN A=A[20] 初期値はファジィ制御の実行において、最初の1回だけ
実行される命令である。
【0085】ここで、制御対象部10が急加速領域(た
とえば、L=4m以上)に存在するにもかかわらず加速
の度合が小さいために追尾目標物に追いつくのに時間が
かかるという状況を想定する。
とえば、L=4m以上)に存在するにもかかわらず加速
の度合が小さいために追尾目標物に追いつくのに時間が
かかるという状況を想定する。
【0086】このような状況に対処するために、たとえ
ば、ウォッチドッグ・タイマなどの一般に広く用いられ
ているコンピュータの計時機能を利用して、制御対象部
10が急加速領域に留まる時間tを常に計時し、tが1
0秒を越える場合には加速が不十分であるとする。
ば、ウォッチドッグ・タイマなどの一般に広く用いられ
ているコンピュータの計時機能を利用して、制御対象部
10が急加速領域に留まる時間tを常に計時し、tが1
0秒を越える場合には加速が不十分であるとする。
【0087】これに対処するためのファジィルールの修
正知識として、 IF t〉10sec AND B[I]#BF THEN A[1]=SET(B[I=I+1]) A[2]=SET(B[I=I+1]) A[3]=SET(B[I=I+1]) ENDIF を与えておく。
正知識として、 IF t〉10sec AND B[I]#BF THEN A[1]=SET(B[I=I+1]) A[2]=SET(B[I=I+1]) A[3]=SET(B[I=I+1]) ENDIF を与えておく。
【0088】ここで、#は否定、SET(B[I=I+
1])はBの代わりにB[I+1]を用いることを意味
している。
1])はBの代わりにB[I+1]を用いることを意味
している。
【0089】すなわち、この修正ルールはtが10秒を
越え、ファジィルールの後件部A[1],A[2],A
[3]がBF(かなり減速)でない場合には、急加速領
域での加速の度合を1レベルずつ上げる(かなり減速→
やや減速→現状維持→やや加速→かなり加速)ことを意
味している。
越え、ファジィルールの後件部A[1],A[2],A
[3]がBF(かなり減速)でない場合には、急加速領
域での加速の度合を1レベルずつ上げる(かなり減速→
やや減速→現状維持→やや加速→かなり加速)ことを意
味している。
【0090】このようにファジィルールと、メンバシッ
プ関数および修正知識を予めファジィ制御装置1内に記
憶させた場合について、以下に図2に従ってファジィ制
御装置1の動作を説明する。
プ関数および修正知識を予めファジィ制御装置1内に記
憶させた場合について、以下に図2に従ってファジィ制
御装置1の動作を説明する。
【0091】制御対象部10は、図3に示すように、追
尾目標物に対して追尾を行い、追尾目標物と制御対象部
との距離Lを2mに保つように、ファジィ制御装置1が
制御対象部10の測定部51から送られて来る物理量で
ある制御対象部10の追尾目標物に対する速度Vと制御
対象部10と追尾目標物との間の距離Lとを観測信号2
8として入力変換部6で受け取り、この入力変換部6が
ファジィ制御装置1で処理可能な入力データ26に変換
したものについてファジィ演算を行い、走行制御部53
に対して制御信号29を出力して制御対象部10の追尾
目標物に対する加速度を制御するものとする。
尾目標物に対して追尾を行い、追尾目標物と制御対象部
との距離Lを2mに保つように、ファジィ制御装置1が
制御対象部10の測定部51から送られて来る物理量で
ある制御対象部10の追尾目標物に対する速度Vと制御
対象部10と追尾目標物との間の距離Lとを観測信号2
8として入力変換部6で受け取り、この入力変換部6が
ファジィ制御装置1で処理可能な入力データ26に変換
したものについてファジィ演算を行い、走行制御部53
に対して制御信号29を出力して制御対象部10の追尾
目標物に対する加速度を制御するものとする。
【0092】まず、ファジィ推論部5とエキスパートシ
ステム部9とが外部からスタート命令を受け取ったか否
かを判断し(ステップS1)、スタート命令を受け取る
と、測定部51から入力信号として出力され、入力変換
部6で入力データ26に変換された速度Vと距離Lを取
得する(S2)。
ステム部9とが外部からスタート命令を受け取ったか否
かを判断し(ステップS1)、スタート命令を受け取る
と、測定部51から入力信号として出力され、入力変換
部6で入力データ26に変換された速度Vと距離Lを取
得する(S2)。
【0093】ファジィ推論部5は、これら入力データ2
6に対して記憶部3に記憶されているファジィルールと
メンバシップ関数を基にファジィ演算を実行する(S
3)。
6に対して記憶部3に記憶されているファジィルールと
メンバシップ関数を基にファジィ演算を実行する(S
3)。
【0094】このファジィ演算は、すでに図10の従来
のこの種のファジィ制御装置について説明したファジィ
演算と同様である。
のこの種のファジィ制御装置について説明したファジィ
演算と同様である。
【0095】ファジィ推論部5は、このファジィ演算の
結果に基づいて、制御すべき加速度Aの量を決定し出力
データ27として出力変換部7に出力し、出力変換部7
からは、走行制御部53に対して制御に適した制御信号
29が出力され、制御対象部10の制御を行う(S
4)。
結果に基づいて、制御すべき加速度Aの量を決定し出力
データ27として出力変換部7に出力し、出力変換部7
からは、走行制御部53に対して制御に適した制御信号
29が出力され、制御対象部10の制御を行う(S
4)。
【0096】上述した入力データ26は、エキスパート
システム部9でも受け取り、エキスパートシステム部9
は、入力データ26中の距離Lと速度Vについて、エキ
スパートシステム部9内に予め記憶されている修正知識
を参照し、距離Lと速度Vとがメンバシップ関数とファ
ジィルールあるいはその一方を修正すべき条件に該当し
ているか否かを判断する(S5)。
システム部9でも受け取り、エキスパートシステム部9
は、入力データ26中の距離Lと速度Vについて、エキ
スパートシステム部9内に予め記憶されている修正知識
を参照し、距離Lと速度Vとがメンバシップ関数とファ
ジィルールあるいはその一方を修正すべき条件に該当し
ているか否かを判断する(S5)。
【0097】この場合、もし、このような条件に該当し
ている場合には、上述の該当する修正知識に基づいて、
エキスパートシステム部9が、記憶部3内に記憶されて
いるメンバシップ関数とファジィルールあるいはその一
方を修正する(S6)。
ている場合には、上述の該当する修正知識に基づいて、
エキスパートシステム部9が、記憶部3内に記憶されて
いるメンバシップ関数とファジィルールあるいはその一
方を修正する(S6)。
【0098】このようなメンバシップ関数の修正を行っ
た後に、エキスパートシステム部9とファジィ推論部5
とは、外部からストップ命令が加えられているか否かを
判断する(S7)。
た後に、エキスパートシステム部9とファジィ推論部5
とは、外部からストップ命令が加えられているか否かを
判断する(S7)。
【0099】もし、ストップ命令が加えられていなけれ
ば、処理を前述のステップ(S)2に移す。
ば、処理を前述のステップ(S)2に移す。
【0100】また、ステップ(S)7で、ストップ命令
が加えられていると判断したときには、処理を終了す
る。
が加えられていると判断したときには、処理を終了す
る。
【0101】なお、ステップ(S)5で、入力データが
定められた修正条件に該当していないと判断したときに
は、エキスパートシステム部9は、処理をステップ
(S)7に移す。
定められた修正条件に該当していないと判断したときに
は、エキスパートシステム部9は、処理をステップ
(S)7に移す。
【0102】なお、上述の実施例においては、制御対象
部が追尾目標物を追尾する移動体でであるとしたが、制
御対象部は、移動体のみに限定されることはなく、従来
のファジィ制御装置が使用できる制御対象部をも制御対
象とすることができることは明らかである。
部が追尾目標物を追尾する移動体でであるとしたが、制
御対象部は、移動体のみに限定されることはなく、従来
のファジィ制御装置が使用できる制御対象部をも制御対
象とすることができることは明らかである。
【0103】
【発明の効果】以上説明したように、本発明のファジィ
制御方法およびその装置は、入力データの内容を判断し
メンバシップ関数とファジィルールあるいはその一方を
修正すべきか否かを判断し、修正が必要な場合には、そ
の修正をメンバシップ関数およびファジィルールに対し
て実行するエキスパートシステム部を備えることによ
り、従来は、あるファジィ知識を与えて、制御対象部を
制御させ、その結果が、所望の制御を行うことができな
いときには、その都度、ファジィ制御装置の動作を中止
させ、メンバシップ関数入力部4を介して、修正すべき
メンバシップ関数の再入力を必要としていたが、このよ
うなメンバシップ関数入力部よりの再入力を不要とする
ことができるという効果を有する。
制御方法およびその装置は、入力データの内容を判断し
メンバシップ関数とファジィルールあるいはその一方を
修正すべきか否かを判断し、修正が必要な場合には、そ
の修正をメンバシップ関数およびファジィルールに対し
て実行するエキスパートシステム部を備えることによ
り、従来は、あるファジィ知識を与えて、制御対象部を
制御させ、その結果が、所望の制御を行うことができな
いときには、その都度、ファジィ制御装置の動作を中止
させ、メンバシップ関数入力部4を介して、修正すべき
メンバシップ関数の再入力を必要としていたが、このよ
うなメンバシップ関数入力部よりの再入力を不要とする
ことができるという効果を有する。
【0104】その上、メンバシップ関数やファジィルー
ルを修正するためにこのファジィ制御装置の動作を中止
させる必要がないという効果を有している。
ルを修正するためにこのファジィ制御装置の動作を中止
させる必要がないという効果を有している。
【図1】本発明のファジィ制御方法を適用したファジィ
制御装置の一実施例を示すブロック図である。
制御装置の一実施例を示すブロック図である。
【図2】図1に示すファジィ制御装置の動作の一例を示
す流れ図である。
す流れ図である。
【図3】図1に示されている制御対象部10の詳細を含
むブロック図である。
むブロック図である。
【図4】(A)は前件部の一つであるメンバシップ関数
の一例を示す説明図である。(B)は前件部の他の一つ
であるメンバシップ関数の一例を示す説明図である。
(C)は、後件部のメンバシップ関数の一例を示す説明
図である。
の一例を示す説明図である。(B)は前件部の他の一つ
であるメンバシップ関数の一例を示す説明図である。
(C)は、後件部のメンバシップ関数の一例を示す説明
図である。
【図5】ファジィルールの一例を示す説明図である。
【図6】(A)は図10に示したファジィ制御装置で使
用するファジィルールの前件部に対応するメンバシップ
関数の一例を示す説明図である。(B)は図10に示し
たファジィ制御装置で使用する前件部の他の一つのメン
バシップ関数の説明図である。(C)は図10に示した
ファジィ制御装置で使用する後件部のメンバシップ関数
の説明図である。
用するファジィルールの前件部に対応するメンバシップ
関数の一例を示す説明図である。(B)は図10に示し
たファジィ制御装置で使用する前件部の他の一つのメン
バシップ関数の説明図である。(C)は図10に示した
ファジィ制御装置で使用する後件部のメンバシップ関数
の説明図である。
【図7】(A)は図6(A)のメンバシップ関数を変更
した例を示す説明図である。(B)は図6(B)のメン
バシップ関数の変更した例を示す説明図である。(C)
は図6(C)のメンバシップ関数の変更した例を示す説
明図である。
した例を示す説明図である。(B)は図6(B)のメン
バシップ関数の変更した例を示す説明図である。(C)
は図6(C)のメンバシップ関数の変更した例を示す説
明図である。
【図8】従来のこの種のファジィ制御装置の一例を示す
ブロック図である。
ブロック図である。
【図9】図10に示す従来のこの種のファジィ制御装置
の動作を示す流れ図である。
の動作を示す流れ図である。
【図10】図8のこの種のファジィ制御装置に対応する
追従制御方式の基本構成図である。
追従制御方式の基本構成図である。
1 ファジィ制御装置 2 ファジィルール入力部 3 記憶部 4 メンバシップ関数入力部 5 ファジィ推論部 6 入力変換部 7 出力変換部 8 修正知識入力部 9 エキスパートシステム部
Claims (2)
- 【請求項1】 制御対象部から制御に必要な物理量を観
測信号として受け取り内部処理可能な入力データに変換
し、予め記憶部内に記憶してあるファジィルールとメン
バシップ関数を基に前記入力データについてファジィ演
算を行い、制御信号を生成し前記制御対象部に加えて前
記制御対象部を所望の状態に制御するファジィ制御方法
において、予め記憶させている修正知識を参照し前記入
力データから判断される制御状態が予め定められた修正
をすべき状態であるか否かを判断する処理と、前記入力
データが修正をすべき状態であると判断したときは、前
記修正知識に基づいて前記記憶部内に記憶しているメン
バシップ関数とファジィルールあるいは何れか一方を修
正する処理とを備えることを特徴とするファジィ制御方
法。 - 【請求項2】 制御対象部から制御に必要な物理量を観
測信号として受け取り内部処理可能な入力データに変換
し、予め記憶部内に記憶してあるファジィルールとメン
バシップ関数を基に前記入力データについてファジィ演
算を行い、制御信号を生成し前記制御対象部に加えて前
記制御対象部を所望の状態に制御するファジィ制御装置
において、前記入力データから判断される制御状態が修
正すべき状態であるか否かを判定し前記修正すべき状態
であるときには前記記憶部内に記憶しているメンバシッ
プ関数の特定の修正部分とその修正する値とを指定する
修正知識を予め内部に記憶し、前記入力データの状態を
前記修正知識に基づいて修正すべき状態か否かを判定し
修正すべき場合には、前記修正知識に基づいて前記記憶
部内の該当するメンバシップ関数とファジィルールある
いは何れか一方を修正し記憶させるエキスパートシステ
ム部とを備えることを特徴とするファジィ制御装置。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP6022328A JPH07230303A (ja) | 1994-02-21 | 1994-02-21 | ファジィ制御方法およびその装置 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP6022328A JPH07230303A (ja) | 1994-02-21 | 1994-02-21 | ファジィ制御方法およびその装置 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH07230303A true JPH07230303A (ja) | 1995-08-29 |
Family
ID=12079651
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP6022328A Pending JPH07230303A (ja) | 1994-02-21 | 1994-02-21 | ファジィ制御方法およびその装置 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH07230303A (ja) |
Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH02140802A (ja) * | 1988-11-22 | 1990-05-30 | Yaskawa Electric Mfg Co Ltd | 自己修正型ファジィ制御方法 |
| JPH044401A (ja) * | 1990-04-20 | 1992-01-08 | Sanyo Electric Co Ltd | フアジイ制御ルール自動チユーニング装置 |
| JPH04155401A (ja) * | 1990-10-19 | 1992-05-28 | Toshiba Corp | ファジィ制御装置 |
| JPH05241612A (ja) * | 1992-02-27 | 1993-09-21 | Toshiba Corp | ファジィコントローラ |
-
1994
- 1994-02-21 JP JP6022328A patent/JPH07230303A/ja active Pending
Patent Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH02140802A (ja) * | 1988-11-22 | 1990-05-30 | Yaskawa Electric Mfg Co Ltd | 自己修正型ファジィ制御方法 |
| JPH044401A (ja) * | 1990-04-20 | 1992-01-08 | Sanyo Electric Co Ltd | フアジイ制御ルール自動チユーニング装置 |
| JPH04155401A (ja) * | 1990-10-19 | 1992-05-28 | Toshiba Corp | ファジィ制御装置 |
| JPH05241612A (ja) * | 1992-02-27 | 1993-09-21 | Toshiba Corp | ファジィコントローラ |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| EP0827265B1 (en) | Apparatus for determination of control constant | |
| Tipsuwan et al. | Fuzzy logic microcontroller implementation for DC motor speed control | |
| JP3131919B2 (ja) | 非同期三相電気モータのための印加電圧ファジー制御プロセスおよびその装置 | |
| US20030135290A1 (en) | Vehicle road wheel fuzzy logic control system and method of implementing a fuzzy logic strategy for same | |
| CN112241121A (zh) | 一种基于模糊pid的pmsm自整定控制系统 | |
| JP2001261282A (ja) | クレーンの位置決め・振れ止め制御方法及びその装置 | |
| JPH07230303A (ja) | ファジィ制御方法およびその装置 | |
| EP0483756A2 (en) | Robot controlling method and apparatus | |
| JPH09204216A (ja) | 多関節ロボットの加減速制御方法 | |
| EP4316955B1 (en) | Robot control method and apparatus | |
| JP2003001576A (ja) | ロボット制御装置およびその制御方法 | |
| JPH0695294B2 (ja) | 産業用ロボットの軌跡補間方法 | |
| US6809491B2 (en) | Positioning control method | |
| JPS58192407A (ja) | 車輌自動運転方法 | |
| JPH1039916A (ja) | 多関節ロボットの加減速制御方法 | |
| JP3304464B2 (ja) | エレベータの速度制御装置 | |
| JPH11184512A (ja) | ロボットの制御ゲイン決定方法 | |
| JPH04314108A (ja) | ロボットの制御装置 | |
| JPH02137006A (ja) | 速度制御装置 | |
| JPH06182682A (ja) | ロボットの速度制御方法 | |
| JP3674653B2 (ja) | モータ制御装置 | |
| JPH02140802A (ja) | 自己修正型ファジィ制御方法 | |
| JP2571145B2 (ja) | ファジイ推論によるプラントなどの制御方法 | |
| JPH01119809A (ja) | ロボット軌跡制御方法 | |
| JPH03288203A (ja) | 速度追従制御装置 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 19980414 |