JP3082249B2 - ファジィ演算処理装置 - Google Patents

ファジィ演算処理装置

Info

Publication number
JP3082249B2
JP3082249B2 JP02417339A JP41733990A JP3082249B2 JP 3082249 B2 JP3082249 B2 JP 3082249B2 JP 02417339 A JP02417339 A JP 02417339A JP 41733990 A JP41733990 A JP 41733990A JP 3082249 B2 JP3082249 B2 JP 3082249B2
Authority
JP
Japan
Prior art keywords
rule
data
unit
register
fuzzy
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.)
Expired - Fee Related
Application number
JP02417339A
Other languages
English (en)
Other versions
JPH04230501A (ja
Inventor
雅治 大角
年浩 田島
郁朗 木下
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.)
Omron Corp
Original Assignee
Omron Corp
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 Omron Corp filed Critical Omron Corp
Priority to JP02417339A priority Critical patent/JP3082249B2/ja
Publication of JPH04230501A publication Critical patent/JPH04230501A/ja
Application granted granted Critical
Publication of JP3082249B2 publication Critical patent/JP3082249B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Feedback Control In General (AREA)

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】この発明はファジィ演算処理装置
に関する。
【0002】
【従来の技術】ファジィ演算装置では,入力信号が与え
られると,あらかじめ設定された所定のファジィ・ルー
ル群と入力信号に基づいて推論演算が実行される。ファ
ジィ・ルール群は所定の演算目的を達成するために記述
された多数のファジィ・ルールから構成される。ファジ
ィ演算処理は,高速処理を行なう目的でハードウェアに
より実行されるのが一般である。
【0003】ファジィ演算処理のためのハードウェアで
は,ファジィ・ルールを高速かつ並列に処理するため
に,ルール,または使用するメンバーシップ関数を表わ
すラベルの数に相当する数のモジュールによって並列演
算が行なわれている。また確定演算についても種々の方
法があるが,それらの方法のそれぞれに対応して演算モ
ジュールが設けられている。
【0004】
【発明が解決しようとする課題】しかしながら上記のフ
ァジィ演算処理装置では1つ1つのファジィ・ルールの
形式が固定化されているため,1つのルールに設定可能
な数以上の入,出力変数が要求された場合にその要求に
答えることが困難である。
【0005】一方設定可能以下の入,出力変数の数が要
求された場合には,設定可能数分の処理を実行する必要
があるために余計な処理時間を必要とする。
【0006】また,ハードウェアの規模としても,ルー
ル数や確定演算の方法が増えるにしたがって大きくなっ
てしまう。このためハードウェアのコストアップにつな
がり,ファジィ処理のためのハードウェアが普及するこ
とを妨げている。
【0007】
【課題を解決するための手段】この発明によるファジィ
演算処理装置は,ルール・メモリと,制御部と,演算部
とから構成されている。上記ルール・メモリには,それ
ぞれが条件と結論とからなる複数のファジィ・ルールの
各ルールを条件の入力変数または結論の出力変数のいず
れか一つを含むように分解したサブルールのそれぞれを
表現するルール・データが,各ルールごとに条件のサブ
ルール,結論のサブルールの順序でストアされている。
各ルール・データは,サブルールの処理のための制御コ
ードとサブルールに含まれる条件の入力変数または結論
の出力変数を表わす変数コードとメンバーシップ関数の
ラベルを表わすメンバーシップ関数コードとからなるも
のである。上記制御部は,ルール・メモリから読出され
たルール・データの制御コードが与えられたときに,そ
の与えられた制御コードに応じた制御信号を発生するも
のである。上記演算部は,上記制御部から与えられる制
御信号に応答して,ルール・メモリから読出されたルー
ル・データの変数コードおよびメンバーシップ関数コー
ドにしたがうファジィ推論演算を行なうものである。上
記演算部には,外部からアクセスされかつファジィ推論
に必要な入力データを記憶する記憶手段が設けられてい
る。
【0008】
【作用】ルール・メモリには,それぞれが条件と結論と
からなる複数のファジィ・ルールの各ルールを条件の入
力変数または結論の出力変数のいずれか一つを含むよう
に分解したサブルールのそれぞれを表現するルール・デ
ータがストアされている。ルール・メモリ内において,
ルール・データは,各ルールごとに条件のサブルール,
結論のサブルールの順序を持ってストアされる。各ルー
ル・データは,サブルールの処理のための制御コードと
サブルールに含まれる条件の入力変数または結論の出力
変数を表わす変数コードとメンバーシップ関数のラベル
を表わすメンバーシップ関数コードとからなる。
【0009】ルール・データがルール・メモリから読出
され,そのうちの制御コードが制御部に与えられると,
与えられた制御コードに応じた制御信号が制御部から発
生し,演算部に与えられる。
【0010】制御部から与えられる制御信号に応答して
演算部は,ルール・メモリから読出されたルール・デー
タの変数コードおよびメンバーシップ関数コードにした
がうファジィ推論演算を行なう。
【0011】演算部には記憶手段が設けられ,演算部に
おけるファジィ推論演算のために必要な入力データがこ
の記憶手段にあらかじめ記憶されている。また,演算部
によるファジィ推論演算結果は記憶手段に記憶される。
【0012】記憶手段は外部からアクセス可能であるか
ら,外部のCPU等によって入力データの記憶手段への
設定,記憶手段からの推論演算結果の読出し等が行なわ
れる。
【0013】
【実施例】図1はファジィ演算処理装置の全体的構成を
示している。
【0014】ファジィ演算処理装置は,ルール・メモリ
20,制御部30,演算部40およびこれらを制御するCPU
10から構成されており,これらは外部バスで接続されて
いる。ルール・メモリ20,制御部30および演算部40はモ
ジュール化されており,CPU10から後述する各種の制
御信号が与えられる。
【0015】図2はルール・メモリの構成の一例を示し
ている。ファジィ・ルールは一般に前件部と後件部とか
らなる。この明細書では前件部を条件(部),後件部を
結論(部)という。
【0016】たとえば IF X1=PL AND X2=PM THEN Y1=PM IF X1=PM AND X2=PS THEN Y1=PS というファジィ・ルールがあるものとする。
【0017】X1,X2は入力変数(条件変数),Y
1,Y2は出力変数(結論変数),PM,PSはメンバ
ーシップ関数を表わすラベルである。
【0018】上記のルールは次のようなサブルールに分
解される。 IF X1=PL AND X2=PM THEN Y1=PM IF X1=PM AND X2=PS THEN Y1=PS
【0019】各サブルールを8ビットのコードで表わ
す。図3に条件部のサブルールについての各ビットの意
味が示されている。
【0020】上位2ビットは識別コード(または制御コ
ード)で,00は条件部処理を,01は結論部処理を,
10は確定演算処理を,11は演算終了処理をそれぞれ
表わしている。
【0021】上位3〜5ビットは入力変数の識別番号
(入力番号:この実施例では0〜7の値をとる)を表わ
している。
【0022】サブルールが結論部に関するものであれ
ば,上位3〜5ビットは出力変数の識別番号(出力番
号:この実施例では0〜7の値をとる)を表わすことに
なる。
【0023】下位3ビットはメンバーシップ関数のラベ
ルを表わしている。この実施例ではPL,PM,PS,
ZR,NS,NMおよびNLの7種類のメンバーシップ
関数が用いられている。
【0024】図4に示すように,この実施例では条件部
のメンバーシップ関数は三角形状,その他任意の形で表
わされ,後件部のメンバーシップ関数はシングルトンで
表わされている。
【0025】ルール・メモリ20には一群のルールについ
て,それを分解して得られるサブルールを上述の考え方
にしたがってコード化したルール・データが処理の順序
にしたがってあらかじめ格納されている。図2には分り
やすくするためにルール・データに加えてその意味が対
応して示されている。アドレス6のコードの下位2ビッ
トは確定演算により得られた値を格納すべきレジスタの
番号を示している。
【0026】ルール・メモリ20に格納されているルール
・データのアドレスはアドレス・カウンタ21によって指
定される。
【0027】図5は制御部30の構成例を示している。
【0028】制御部30には,条件部の演算処理,結論部
の演算処理,確定演算処理,終了処理および開始処理を
行なうための制御プログラムをマイクロ・コードの形態
でそれぞれ格納した条件部32,結論部33,確定部34,終
了部35および開始部36が設けられている。
【0029】ルール・メモリ20から読出されたルール・
データ(コード)のうちの上位2ビット(識別コードま
たは制御コード)が外部バスからデコーダ31に与えられ
る。デコーダ31はこの識別コードを解読して,条件部3
2,結論部33,確定部34および終了部35のうちの解読し
た識別コードに対応するもののプログラムを起動する。
開始部36のプログラムはCPU10から与えられる開始信
号により起動される。各部32〜36のプログラムのアドレ
スは対応するアドレス・カウンタ22〜26の出力によって
指定される。
【0030】各部32〜36のプログラムが起動することに
より発生する命令は制御信号発生回路37に与えられ,こ
の制御信号発生回路37からその命令に対応した制御信号
が出力され,外部バスを通して主に演算部40に与えられ
る。また,終了部35のプログラムの動作に応じて終了信
号が発生回路37で発生し,CPU10に与えられる。
【0031】CPU10から開始信号が与えられ,その
後,図2に示すルール・メモリ内のルール・データの識
別コード(上記2ビット)が制御部30に与えられたとき
に,制御部30の各部32〜36のプログラムが順次起動され
る様子が,ルール・データとともに図6に示されてい
る。
【0032】図7は演算部40の構成例を示している。
【0033】演算部40は,条件処理,結論処理,確定処
理,終了処理に共通に使用される演算器41と,結果を保
存するレジスタ群42,43と,メンバーシップ関数を記憶
したメンバーシップ関数メモリ44と,制御回路45と,メ
モリ・バッファ46と,バス・バッファ47,48,49とを含
み,基本的には制御部30から外部バスを通して与えられ
る各種制御信号にしたがってファジィ演算および確定演
算を実行する。
【0034】演算部40内にはまた2本の内部データ・バ
ス1,2があり,これらの内部バス1,2によって演算
部41,レジスタ群42,43,メンバーシップ関数メモリ44
およびバス・バッファ47が相互に接続されている。
【0035】演算器41周辺の構成が図8に示されてい
る。
【0036】演算器41は,加減乗除の算術演算,AN
D,OR,NOTの論理演算,およびシフト演算を外部
からの演算器制御信号に応じて実行する。すなわち,演
算器41には,3ビットの演算器制御信号が与えられ,こ
の制御信号に応じて演算器41は,次に示すような動作を
行なう。
【0037】演算器制御信号 信 号 演算器動作 000 加算 001 減算 010 乗算 011 除算 100 AND 101 OR 110 内部バス1データのNOT 111 内部バス1データの左シフト
【0038】演算器41の出力はレジスタ群42またはI/
Oレジスタ群43に与えられ,これらのレジスタ群内のレ
ジスタへの書込みは制御回路45の出力により制御され
る。
【0039】演算器41の出力の状態に応じて,キャリ・
フラグやゼロ・フラグが出力され,制御回路45に与えら
れる。キャリ・フラグは,算術演算においてオーバー・
フロー,アンダー・フローが発生した場合に,ゼロ・フ
ラグは,演算器出力が0となった場合にそれぞれ出力さ
れる。
【0040】制御回路45はこのキャリ・フラグ,ゼロ・
フラグ,および書込み制御信号に応じて,下記のよう
に,レジスタ群42内の所定のレジスタ(以下単にレジス
タという)およびI/Oレジスタ部43内の所定のI/O
レジスタ(以下単にI/Oレジスタという)の書込み信
号を出力する。
【0041】 書込み制御信号 信 号 書込みに関する動作 000 レジスタに書込まない 001 キャリ・フラグが立っていればレジスタに書込む 010 ゼロ・フラグが立っていればレジスタに書込む 011 レジスタに書込む 100 I/Oレジスタに書込まない 101 キャリ・フラグが立っていればI/Oレジスタに書込む 110 ゼロ・フラグが立っていればI/Oレジスタに書込む 111 I/Oレジスタに書込む
【0042】レジスタ群42およびI/Oレジスタ群43の
周辺の構成が図9に示されている。
【0043】レジスタ群42は,この実施例ではレジスタ
0〜レジスタ9までの10個のレジスタを含み,演算器41
の出力を保存するのに用いられる。演算器41の出力(デ
ータ)を書込むかどうかは制御回路45から与えられるレ
ジスタ書込み制御信号によって決定され,書込むべきレ
ジスタは外部バスから与えられる書込みレジスタ・アド
レス信号によって指定される。
【0044】データをレジスタ群42内のどのレジスタか
ら出力すべきかということと,内部バス1,2のどちら
に出力すべきかということは外部バスから与えられるレ
ジスタ出力アドレス信号によって決定される。出力イネ
ーブル信号が有効になったときにレジスタからのデータ
の出力が行なわれる。またレジスタ群42からは,I/O
レジスタ群43内の書込むべきまたは読出すべきI/Oレ
ジスタを指定するI/Oレジスタ・アドレス信号がI/
Oレジスタ群43に与えられる。
【0045】I/Oレジスタ群43は,図面ではI/Oレ
ジスタ0〜I/Oレジスタ7までの8個のI/Oレジス
タが示されているが,後述するようにより多くのI/O
レジスタを含んでおり,推論に使用する入力データや,
結論合成値,確定演算値等の結果を書込むためのレジス
タである。I/Oレジスタ群43の中のどのI/Oレジス
タを選択するかは,レジスタ群42からI/Oレジスタ群
43に与えられるI/Oレジスタ・アドレス信号によって
決定される。I/Oレジスタ群43のI/Oレジスタに対
して書込みを行なうか,読出して内部バス1に出力する
かは,制御回路45から与えられるI/Oレジスタ書込み
信号または外部バスから与えられる制御信号によって決
定される。後述するように,I/Oレジスタの指定を外
部バスから与えられる制御信号によって行なうこともで
きる。
【0046】入力データはCPU10または他の外部機器
から外部バス上に送出され,バス・バッファ48を経てI
/Oレジスタ群43内の所定のI/Oレジスタに格納され
る。このとき,CPU10からチップ・セレクト信号CS
およびライト・イネーブル信号WEが出力される。この
入力データは推論演算処理において内部バス1を通して
演算器41に与えられる。
【0047】また,推論結果を示す確定演算値は最終的
にI/Oレジスタに記憶されるので,演算処理後,その
I/Oレジスタから読出されバス・バッファ49,外部バ
スを介してCPU10に読込まれる。このときCPU10か
らチップ・セレクト信号CEおよびリード・イネーブル
信号REが出力される。
【0048】前回の推論演算結果を入力データとしてI
/Oレジスタに与えることにより,多段推論が可能とな
る。
【0049】バス・バッファ47の周辺の構成が図10に示
されている。バス・バッファ47は,外部バス上のデータ
を内部バスに出力するためのものである。ルール・メモ
リ20から出力されるラベル,入力番号等のデータを各種
制御信号に応じて内部バス1に出力するとともに,制御
部30で発生する即値データを内部バス2に出力する。
【0050】メンバーシップ関数メモリ44には,たとえ
ば図11に示すような,7種類のラベルNL〜PLについ
てのメンバーシップ関数を表わすデータ(メンバーシッ
プ関数値)が格納されている。これらのデータのアドレ
スは16進数4桁で与えられる。その最上位桁はルール・
データ中のラベル・コード(3ビット)で指定される。
下位3桁が入力データによって指定される。
【0051】したがって,ラベル・コードと入力データ
を与えることにより,このメンバーシップ関数メモリか
らは,入力データの指定されたラベルに対応するメンバ
ーシップ関数への適合値が出力され,バッファ46に記憶
される。バッファ46に保持された適合値は制御信号に応
じて読出され,内部バス1に出力される。
【0052】図12は開始処理の手順を示している。
【0053】CPU10から開始信号が与えられると制御
部30の開始部36のプログラムが動作して図12の処理が行
なわれる。
【0054】まず,ルール・メモリ20のカウンタ21が0
にクリアされる(ステップ101 )。
【0055】次に,演算部40のレジスタ群42内の適合値
レジスタに適合値として最大値(FFF)が書込まれる
(ステップ102 )。これはMIN演算に備えるためであ
る。
【0056】さらにレジスタ群42内の結論合成値を記憶
するレジスタに0がセットされる(ステップ103 )。
【0057】最後に,ルール・メモリ20から最初のルー
ル・データが読出され,外部バスに出力される(ステッ
プ104 )。
【0058】図13は条件部処理の手順を示している。
【0059】まず,ルール・メモリから読出され,外部
バスに出力されているルール・データのうちの下位6ビ
ット(入力番号およびラベル)をバス・バッファ47を介
して,かつ演算器41を素通りしてレジスタ群42内の所定
のレジスタに読込む(ステップ111 )。
【0060】これは,具体的には次のようにして行なわ
れる。
【0061】まずバス・バッファ47によって外部バス上
のルール・データのうちの入力番号が内部バス1に出力
される。内部バス2には,制御部30から外部バスに出力
された即値データ0が与えられている。演算器41の動作
としてOR演算が選択され,内部バス1の入力データ
(入力番号)と内部バス2の0が論理和されて,その結
果が演算器41から出力される。レジスタ群42の書込みア
ドレスとして1が指定され,書込み制御信号を与えるこ
とにより,レジスタ1に演算器41の出力が保存される。
これで,レジスタ1に入力番号が読込まれたことにな
る。同様の処理を行なうことにより,レジスタ2にラベ
ルを示すデータが読み込まれる。
【0062】続いて,読込んだ入力番号に対応するI/
Oレジスタの入力データがレジスタに読込まれる(ステ
ップ112 )。I/Oレジスタのいくつかは入力番号にそ
れぞれ対応しており,その入力番号の入力データがCP
U10等によって,バッファ48を介してあらかじめ対応I
/Oレジスタに格納されている。
【0063】ステップ112 の処理は具体的には次のよう
にして行なわれる。
【0064】レジスタ1のデータ(入力番号)がI/O
レジスタのアドレスとして出力され,I/Oレジスタに
対する出力イネーブル信号により,アドレス指定された
I/Oレジスタ内のデータ(入力データ)が内部バス1
に出力される。内部バス2には,即値データにより0が
セットされている。演算器41の動作としてORが選択さ
れ,演算器41の出力がレジスタ3に書込まれる。これに
よりレジスタ1に入っている入力番号に対応する入力デ
ータがI/Oレジスタから読出されレジスタ3に格納さ
れる。
【0065】続いて,ラベルを最上位1桁(3ビット)
のアドレス,入力データを下位3桁(12ビット)のアド
レスとして,メンバーシップ関数メモリ44から適合値が
読出され,メモリ・バッファ46に格納される(ステップ
113 )。
【0066】すなわち,まず,レジスタ2のデータ(ラ
ベル)が内部バス1に出力され,演算器41では左シフト
演算が選択される。この演算結果が再びレジスタ2に格
納される。レジスタ2のデータは左に1ビットシフトさ
れたことになる。これを12回繰り返すと,レジスタ2の
内容は12ビット左シフトされたことになる。次にレジス
タ2のデータが内部バス1に出力され,レジスタ3のデ
ータ(入力データ)が内部バス2に出力され,演算器41
でOR動作が選択される。これにより,下位12ビットの
入力データの上に,3ビットのラベル・データがセット
された状態になり,これがレジスタ2に与えられる。
【0067】レジスタ2の16ビット・データが内部バス
1に出力される。メンバーシップ関数メモリ44におい
て,内部バス1のこのデータをアドレスとして適合値デ
ータが読出され,メモリ・バッファ46にセットされる。
【0068】適合値レジスタ内に記憶されている適合値
とメモリ・バッファ46に読出された適合値のMIN演算
が行なわれ,このMIN演算結果が適合値レジスタにス
トアされる(ステップ114 )。
【0069】メモリ・バッファ46のデータすなわち現在
行なっている条件部処理で求められた適合値が内部バス
1に,適合値レジスタ(たとえばレジスタ9)に記憶さ
れている適合値(1つのルールに属するサブルール間の
今までのMIN演算結果である適合値または初期設定さ
れた適合値FFF)が内部バス2に出力される。演算器
41では減算が行なわれ内部バス1のデータから内部バス
2のデータが減算される。このとき演算器41の出力はど
こにも書込まれない。この減算により,内部バス1のデ
ータが内部バス2のデータより小さい場合は,アンダー
フローが生じてキャリ・フラグが立つ。また内部バス1
のデータの方が大きい場合はキャリ・フラグは立たな
い。
【0070】次に再びメモリ・バッファ46から適合値デ
ータが内部バス1に出力される。内部バス2のデータを
0として演算器41でOR演算が行なわれる。キャリ・フ
ラグが立っていれば書込み信号がレジスタに対して送ら
れ,演算器41の演算結果(メモリ・バッファの適合値)
がレジスタ9に書込まれ,キャリ・フラグが立っていな
い場合は,レジスタ9に対して書込み信号が発生せず,
演算結果はレジスタ9には書込まれず,レジスタ9のデ
ータはそのままに保持される。この処理より,メモリ・
バッファ46のデータの方がレジスタ9のデータよりも小
さい場合だけレジスタ9においてメモリ・バッファのデ
ータが書換えられ,MIN演算が実行される。
【0071】最後に,ルール・メモリ20内のカウンタ21
がインクレメントされ,次のルール・データが外部バス
に出力される(ステップ115 )。
【0072】図14は結論部33のプログラムにしたがう処
理手順を示している。
【0073】この処理は,同一の出力変数(出力番号)
ついて,同一の後件部ラベルのルールが存在する場合
に,各ルールの前件部で得られたMIN演算結果を,同
一の出力番号,同一後件部ラベル間でMAX演算するも
のである。
【0074】条件処理の結果であるMIN値がレジスタ
9に入っている。また,結論部の各出力番号,各ラベル
に対する結論合成値が,I/Oレジスタ群43内のI/O
レジスタに入っているものとする。たとえば,出力番号
0の結論合成値はラベルNL〜PLについてI/Oレジ
スタ10〜16に入っており,出力番号1の結論合成値はラ
ベルNL〜PLについてI/Oレジスタ20〜26に入って
いるものとする。この結論処理では,レジスタ9のMI
N値と,対応するI/Oレジスタ上の結論合成値のMA
X演算を行なう。
【0075】まず,ルール・メモリ20から読出され,外
部バスに出力されているルール・データのうちの下位6
ビット(出力番号とラベル)がバス・バッファ47を介し
てレジスタ群42内の所定のレジスタに読込まれる(ステ
ップ121 )。すなわち,レジスタ1に出力番号が,レジ
スタ2にラベルがそれぞれ格納される。次に,レジスタ
1のデータを左に3ビットシフトして,これにレジスタ
2のデータと,10とを加えて,その結果がレジスタ1に
格納される。レジスタ1のデータは,I/Oレジスタ群
43上の対応する結論合成値の入った番地(I/Oレジス
タ)を指すことになる。
【0076】次に,レジスタ9のMIN演算結果と,上
記により指定されたI/Oレジスタに格納されている結
論合成値とのMAX演算が行なわれる(ステップ122
)。
【0077】すなわち,レジスタ1のデータがI/Oレ
ジスタのアドレスとして出力される。これにより指定さ
れたI/Oレジスタのデータが内部バス1に出力され,
演算器41を通してレジスタ2に格納される。次に,レジ
スタ9のデータ(MIN演算結果)が内部バス1に,レ
ジスタ2のデータが内部バス2にそれぞれ出力され,演
算器41で内部バス1のデータから内部バス2のデータの
減算が行なわれる。このとき,内部バス1のデータが内
部バス2のデータより小さい場合には,アンダー・フロ
ーが生じて,キャリ・フラグが立つ。逆に内部バス1の
データが内部バス2のデータより大きい場合には,キャ
リ・フラグが立たない。
【0078】レジスタ1のデータが内部バス1に出力さ
れ,内部バス2に0が入れられて,演算器41でOR処理
が行なわれる。このときキャリ・フラグが立っていなけ
れば演算器41の出力がレジスタ1に格納され,キャリ・
フラグが立っている場合には,書込み信号が出力されず
格納は行なわれない。
【0079】以上の処理により,レジスタ9に格納され
ているMIN値と,I/Oレジスタ上の結論合成値との
MAX演算が実行される。
【0080】最後に,ルール・メモリ20内のカウンタ21
がインクレメントされ,次のルール・データが外部バス
に出力される。
【0081】図15は確定値演算処理の手順を示してい
る。
【0082】ルール・メモリ20から外部バスに出力され
ているルール・データ(図2に示す例ではアドレス6の
ルール・データ)のうちの下位6ビットをレジスタに読
込む(ステップ131 )。このルール・データには確定処
理方式と出力番号とが含まれている。
【0083】確定処理方式には最大高さ法や重心法があ
る。ここでは重心法が選択されるものとする(ステップ
132 )。
【0084】出力番号に対応して,7種類のラベルのそ
れぞれについて結論合成値がI/Oレジスタに格納され
ているので,各結論合成値にラベルによって定まる重み
を乗算し,この乗算結果を加算することにより分子が算
出される。また,結論合成値を加算することにより分母
が求まる(ステップ133 )。
【0085】算出された分子を分母で割ることにより確
定値が得られるので,この確定値が出力番号に対応する
I/Oレジスタに格納される(ステップ134)。
【0086】最後に,ルール・メモリ20のカウンタ21が
インクレメントされ,最後のルール・データが外部バス
に出力される。
【0087】図16は終了処理手順を示している。
【0088】外部バスに出力されている最後のルール・
データにしたがって外部バスが解放されるとともに終了
信号が出力される(ステップ141 ,142 )。
【0089】終了信号はCPU10に送られるので,CP
U10はファジィ推論演算処理が終了したことを知り,I
/Oレジスタに格納されている確定値を外部バスを通し
て読取ることができる。
【0090】
【発明の効果】この発明によると次の効果が得られる。
【0091】1つのルールに使用できる条件処理,結論
処理の数に制限がなくなる。
【0092】ファジィ・ルールの変更はルール・メモリ
の書換えだけで容易に対応できる。
【0093】ルール・メモリには,必要なルールしか設
定されていないので,最小の時間で処理できる。
【0094】条件処理または確定処理の処理アルゴリズ
ムを種々用意しておくと,同じハードウェアの構成で,
種々のファジィ演算または確定演算を行うことができ
る。
【0095】ハードウェアが必要最低限のものだけで構
成されているので,低コスト化を実現できる。
【0096】ルール・メモリに複数のルール群をセット
しておけば,処理開始時にどのルール群によって処理す
るかを指定することによって,1つの装置で複数の処理
が行える。
【0097】
【図面の簡単な説明】
【図1】ファジィ演算処理装置の全体的構成を示すブロ
ック図である。
【図2】ルール・メモリの構成を示すものである。
【図3】ルール・データのフォーマットを示すものであ
る。
【図4】メンバーシップ関数の例を示すグラフである。
【図5】制御部の構成を示す機能ブロック図である。
【図6】制御部の一連の動作手順とルール・データとの
関連を示すフロー・チャートである。
【図7】演算部の構成を示すブロック図である。
【図8】演算器の周辺を示すブロック図である。
【図9】レジスタ群の周辺を示すブロック図である。
【図10】バス・バッファの周辺を示すブロック図であ
る。
【図11】メンバーシップ関数メモリの内容を示す図であ
る。
【図12】開始処理手順を示すフロー・チャートである。
【図13】条件部処理手順を示すフロー・チャートであ
る。
【図14】結論部処理手順を示すフロー・チャートであ
る。
【図15】確定値演算処理手順を示すフロー・チャートで
ある。
【図16】終了処理手順を示すフロー・チャートである。
【符号の説明】
10 CPU 20 ルール・メモリ 30 制御部 40 演算部 42 レジスタ群 43 I/Oレジスタ群
───────────────────────────────────────────────────── フロントページの続き (56)参考文献 特開 平3−144734(JP,A) 稲葉則夫,「推論の高速処理をねらい 専用ハードウェアの開発が進む」NIK KEI ELECTRONICS (1987.7)no.426 pp.148− 152 (58)調査した分野(Int.Cl.7,DB名) G05B 13/02 G05B 9/44 554

Claims (7)

    (57)【特許請求の範囲】
  1. 【請求項1】 ルール・メモリと,制御部と,演算部と
    から構成され, 上記ルール・メモリには,それぞれが条件と結論とから
    なる複数のファジィ・ルールの各ルールを条件の入力変
    数または結論の出力変数のいずれか一つを含むように分
    解したサブルールのそれぞれを表現するルール・データ
    が,各ルールごとに条件のサブルール,結論のサブルー
    ルの順序でストアされており,各ルール・データは,
    ブルールの処理のための制御コードサブルールに含ま
    れる条件の入力変数または結論の出力変数を表わす変数
    コードとメンバーシップ関数のラベルを表わすメンバー
    シップ関数コードとからなり,上記制御部は, ルール・メモリから読出されたルール・
    データの制御コードが与えられたときにその与えられ
    た制御コードに応じた制御信号を発生するものであり, 上記演算部は,上記 制御部から与えられる制御信号に応
    答して,ルール・メモリから読出されたルール・データ
    の変数コードおよびメンバーシップ関数コードにしたが
    うファジィ推論演算を行なうものであり上記 演算部に,外部からアクセスされかつファジィ推論
    に必要な入力データを記憶する記憶手段が設けられてい
    る, ファジィ演算処理装置。
  2. 【請求項2】 上記制御部が, 制御コードを解読するデコーダと, このデコーダの出力信号によりそれぞれ起動され,ファ
    ジィ・ルールの条件処理のためのプログラムを格納した
    条件部,ファジィ・ルールの結論処理のためのプログラ
    ムを格納した結論部,確定演算処理のためのプログラム
    を格納した確定部,および終了処理を行ない終了信号を
    発生するためのプログラムを格納した終了部と, 外部から与えられる開始信号により起動される開始プロ
    グラムを格納した開始部と, 上記の各部から与えられる命令に応じて制御信号を発生
    する制御信号発生回路と, からなる請求項1のファジィ演算処理装置。
  3. 【請求項3】 上記制御部が,上記開始部,条件部,結
    論部および確定部における処理の終了後に,次のルール
    ・データをルール・メモリから読出すための制御信号を
    発生する,請求項2のファジィ演算処理装置。
  4. 【請求項4】 記演算部が, ファジィ推論処理のための各種演算を行なう演算器と, 入力データを含む主要なデータを記憶する上記記憶手段
    と, 演算器から出力される一時的なデータを記憶する補助記
    憶手段と, メンバーシップ関数コードと入力データが与えられたと
    きに,それに対応する適合値を出力するメンバーシップ
    関数メモリとを備え, 上記演算器,記憶手段,補助記憶手段およびメンバーシ
    ップ関数メモリが2本の内部バスによって接続されてい
    る, 請求項1のファジィ演算処理装置。
  5. 【請求項5】 上記ルール・メモリ,制御部および演算
    部が外部バスによりCPUと接続され,CPUによって
    少なくともファジィ演算処理の開始指令が与えられる,
    請求項1のファジィ演算処理装置。
  6. 【請求項6】 1つのルール群のルール・データの最後
    に,処理終了を表わすデータが含まれ,このデータの読
    出しに応答して制御部から終了信号が出力されCPUに
    与えられる,請求項5のファジィ演算処理装置。
  7. 【請求項7】 上記CPUによって上記記憶手段への
    クセス指令が与えられる,請求項5のファジィ演算処理
    装置。
JP02417339A 1990-12-29 1990-12-29 ファジィ演算処理装置 Expired - Fee Related JP3082249B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP02417339A JP3082249B2 (ja) 1990-12-29 1990-12-29 ファジィ演算処理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP02417339A JP3082249B2 (ja) 1990-12-29 1990-12-29 ファジィ演算処理装置

Publications (2)

Publication Number Publication Date
JPH04230501A JPH04230501A (ja) 1992-08-19
JP3082249B2 true JP3082249B2 (ja) 2000-08-28

Family

ID=18525459

Family Applications (1)

Application Number Title Priority Date Filing Date
JP02417339A Expired - Fee Related JP3082249B2 (ja) 1990-12-29 1990-12-29 ファジィ演算処理装置

Country Status (1)

Country Link
JP (1) JP3082249B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108628160B (zh) * 2017-03-23 2021-02-26 西南石油大学 一种自适应模糊系统的分解结构

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
稲葉則夫,「推論の高速処理をねらい専用ハードウェアの開発が進む」NIKKEI ELECTRONICS(1987.7)no.426 pp.148−152

Also Published As

Publication number Publication date
JPH04230501A (ja) 1992-08-19

Similar Documents

Publication Publication Date Title
JP2665111B2 (ja) ベクトル処理装置
US4144562A (en) System and method for increasing microprocessor output data rate
JPH0145649B2 (ja)
JP2970821B2 (ja) データ処理装置
JP3082249B2 (ja) ファジィ演算処理装置
JPH07117898B2 (ja) 多数の割込みサービスを行うマイクロプロセッサシステム
JP2551167B2 (ja) マイクロコンピュータ
KR970004526B1 (ko) 퍼지 추론 처리방법 및 장치와 룰 설정방법 및 장치
JPH04504627A (ja) 信号処理装置および方法
JPH087680B2 (ja) 命令カウンタのロード装置
US5596761A (en) Central processing unit with internal register initializing means
US5542080A (en) Method for controlling execution of data driven type information processor
JPH0831033B2 (ja) データ処理装置
JP3211093B2 (ja) ファジィ推論処理方法および装置
JPH0478942A (ja) メモリアクセス回路
JP3168845B2 (ja) ディジタル信号処理装置
JP2832900B2 (ja) データ処理装置およびデータ処理方法
JP2918570B2 (ja) 中央演算処理装置
JP2624738B2 (ja) 丸め処理方式
JP2798109B2 (ja) ファジィ集合処理用演算装置、記憶装置および計算機システム
JPH10269059A (ja) データ処理装置
JPH0683981A (ja) Promコンパチブル・プロセッサ
JPH01169655A (ja) コマンド獲得制御装置
JPH05120020A (ja) フアジイ推論処理方法および装置
JPH01119825A (ja) ハッシュ処理制御装置

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees