図面 (/)

技術 自己訓練型ニューロファジー・ネットワーク・アーキテクチャおよび電子装置のための自己訓練による電子制御方法

出願人 エスティーマイクロエレクトロニクスエス.アール.エル.
発明者 ルイジ・オッキピンティエウセビオ・ディコーラマリオ・ラヴォールニャ
出願日 2000年11月22日 (20年1ヶ月経過) 出願番号 2000-356504
公開日 2001年7月27日 (19年5ヶ月経過) 公開番号 2001-202247
状態 拒絶査定
技術分野 特定演算一般(初等関数/乱数発生/非基数) 知識ベースシステム 特殊なプログラム実行装置 学習型計算機
主要キーワード マイクロコア ファジー入力 一般ルール 学習ルール ファジー化 計算命令 RAMユニット ターゲット出力
関連する未来課題
重要な関連分野

この項目の情報は公開日時点(2001年7月27日)のものです。
また、この項目は機械的に抽出しているため、正しく解析できていない場合があります

図面 (15)

課題

解決手段

ファジールール計算専用で不揮発性メモリ9とともに半導体上にモノリシックに集積されたファジー型のマイクロコントローラ11を備え、同一IC内に、マイクロプロセッサ5と、揮発性メモリユニット2と、ファジー・マイクロコントローラ11とマイクロプロセッサ5と揮発性メモリユニット2とを相互接続するバス4に接続されたアービタブロック3とを有し、アービタ・ブロック3は、マイクロプロセッサ5またはファジー・マイクロコントローラ11による揮発性メモリユニット2へのアクセスを制御する。ファジー・マイクロコントローラ11とマイクロプロセッサ5との間に、ファジー論理演算処理用の追加ファジー・コプロセッサ6が接続される。

概要

背景

概要

オンライン自己訓練を可能にする新規ニューロファジー集積アーキテクチャを得る。

ファジールール計算専用で不揮発性メモリ9とともに半導体上にモノリシックに集積されたファジー型のマイクロコントローラ11を備え、同一IC内に、マイクロプロセッサ5と、揮発性メモリユニット2と、ファジー・マイクロコントローラ11とマイクロプロセッサ5と揮発性メモリユニット2とを相互接続するバス4に接続されたアービタブロック3とを有し、アービタ・ブロック3は、マイクロプロセッサ5またはファジー・マイクロコントローラ11による揮発性メモリユニット2へのアクセスを制御する。ファジー・マイクロコントローラ11とマイクロプロセッサ5との間に、ファジー論理演算処理用の追加ファジー・コプロセッサ6が接続される。

目的

この発明は、あらかじめ決められた命令の処理または自己訓練によるデータ処理手順を可能にするような構成と動作特性とを有する半導体集積電子装置を提供することを志向している。

効果

実績

技術文献被引用数
0件
牽制数
0件

この技術が所属する分野

ライセンス契約や譲渡などの可能性がある特許掲載中! 開放特許随時追加・更新中 詳しくはこちら

請求項1

ファジールール計算専用で、不揮発性メモリ(9)とともに半導体上にモノリシック集積されたファジー型(ファジフイヤファジー化子)/デファジファイヤ(非ファジー化子))の少なくとも1つのマイクロコントローラ(11)を備えた自己訓練ニューロファジー・ネットワークアーキテクチャであって、前記自己訓練型ニューロファジー・ネットワーク・アーキテクチャと同一の集積回路内に、マイクロプロセッサ(5)と、揮発性メモリユニット(2)と、前記ファジー・マイクロコントローラ(11)と前記マイクロプロセッサ(5)と前記揮発性メモリユニット(2)とを相互接続するバスに接続されたアービタブロック(3)とを備え、前記アービタ・ブロック(3)は、前記マイクロプロセッサ(5)または前記ファジー・マイクロコントローラ(11)による前記揮発性メモリユニット(2)へのアクセスを制御するように動作することを特徴とする自己訓練型ニューロファジー・ネットワーク・アーキテクチャ。

請求項2

前記ファジー・マイクロコントローラ(11)と前記マイクロプロセッサ(5)との間に接続され、ファジー論理演算を処理することに適応した追加のファジー・コプロセッサ(6)を備えたことを特徴とする請求項1に記載の自己訓練型ニューロファジー・ネットワーク・アーキテクチャ。

請求項3

前記マイクロプロセッサ(5)に関連するALU、または算術論理演算装置(7)をさらに備えたことを特徴とする請求項1に記載の自己訓練型ニューロファジー・ネットワーク・アーキテクチャ。

請求項4

前記ファジー・コプロセッサ(6)は、前記マスター・マイクロプロセッサ(5)のスレーブ要素として動作することを特徴とする請求項2に記載の自己訓練型ニューロファジー・ネットワーク・アーキテクチャ。

請求項5

前記ALUユニット(7)は、内部レジスタを有する順次マシンであることを特徴とする請求項3に記載の自己訓練型ニューロファジー・ネットワーク・アーキテクチャ。

請求項6

前記メモリユニット(2)は、DPRAM(Dual Port RAM)タイプであることを特徴とする請求項1に記載の自己訓練型ニューロファジー・ネットワーク・アーキテクチャ。

請求項7

外部周辺装置を操作し、それらとインタフェースするためのI/Oモジュール(8)をさらに備えたことを特徴とする請求項1に記載の自己訓練型ニューロファジー・ネットワーク・アーキテクチャ。

請求項8

前記メモリ間でのデータ交換を可能にするための、前記メモリユニット(2)と前記不揮発性メモリ(9)との間に接続されたインタフェース(10)をさらに備えたことを特徴とする請求項1に記載の自己訓練型ニューロファジー・ネットワーク・アーキテクチャ。

請求項9

半導体上にモノリシックに集積されていて、ファジールール計算専用のファジー型の少なくとも1つのマイクロコントローラ(11)と不揮発性メモリ(9)とを備えた電子装置のための自己訓練による電子制御方法であって、前記不揮発性メモリ(9)内に入れられたデータがダンプされる揮発性メモリユニット(2)と、前記メモリユニット(2)からデータを取り込んで、そのデータに対してあらかじめ決められた順序命令を実行するマイクロプロセッサ(5)と、前記ファジー・マイクロコントローラ(11)と前記マイクロプロセッサ(5)と前記メモリユニット(2)とを相互接続するバス(4)に接続されたアービタ・ブロック(3)と、前記アービタ・ブロック(3)によって起動され、また前記メモリユニットからファジー論理命令を受信して認識したときに前記マイクロプロセッサ(5)のスレーブ要素として動作するファジー・コプロセッサ(6)とを備えたことを特徴とする自己訓練による電子制御方法。

請求項10

初期状態では前記メモリユニット(2)から読み取るために前記マイクロプロセッサ(5)だけが動作可能にされることと、ファジールール・コードを認識すると、前記アービタ・ブロック(3)が前記メモリユニット(2)にアクセスすることを可能にするために、前記コプロセッサ(6)が動作可能にされることとを含むことを特徴とする請求項9に記載の電子装置のための自己訓練による電子制御方法。

技術分野

0001

この発明は、自己訓練機能またはオンライン学習機能を有する自己訓練ニューロファジーネットワークアーキテクチャに関する。

0002

特に、この発明は、不揮発性メモリとともに半導体モノリシック集積された、ファジー・ルール計算専用の少なくとも1つのファジー・マイクロコントローラファジフイヤファジー化子)/デファジファイヤ(非ファジー化子))を備えたタイプの自己訓練型ニューロファジー・ネットワーク・アーキテクチャに関する。

0003

また、この発明は、半導体集積電子装置のための自己訓練による電子制御方法に関する。

0004

大部分がプロセッサ、マイクロコントローラまたは汎用ファジー・コプロセッサクラスに入るファジー論理製品グループは、半導体にモノリシックに集積された電子装置のマーケットで現在入手可能である。

0005

しかしながらこれらの製品は、オンライン学習・自己訓練モードでの動作には適していない。たとえば専用の自己訓練命令を処理することに適応した回路部分を含む、商業的に入手可能な装置は存在しない。

発明が解決しようとする課題

0006

自己訓練処理機能を有する集積装置が利用できないということは、従来技術の手法で処理の変化や変化する環境条件に適応する能力を必要とする最近の問題に対応することを困難にしている。このような問題は、たとえば内燃機関燃料噴射システムの制御、その他自動車のことを扱う場合である。

0007

この発明は、あらかじめ決められた命令の処理または自己訓練によるデータ処理手順を可能にするような構成と動作特性とを有する半導体集積電子装置を提供することを志向している。

課題を解決するための手段

0008

この発明によって取り扱われる技術的課題は、ニューロファジー型をした上述のようなプログラム可能な装置を提供することである。

0009

この発明がよりどころとする考えは、オンライン学習機能を持つのに適した専用のハードウエアを有するニューロファジー型のプログラム可能な集積装置を提供することである。

0010

本質的に、この発明は、制御すべきプロセスの変化を自動的に学習し、また最も効率的なスループットのためにファジールールシステムパラメータを適応させることによってその振舞いを調整するニューラル・ネットワークの性質を利用するファジー・ニューラル・システム(以後、ファジー・ニューラル・ネットワークまたはFNN)を提供する。

0011

この考えに基づいて、本技術的課題は、上述の請求項1の特徴部分に記載のアーキテクチャによって解決される。

0012

また、この発明は、上述の請求項10に記載の自己訓練による制御方法にも関する。

発明を実施するための最良の形態

0013

実施の形態1.この発明によるアーキテクチャおよび方法の特徴と利点は、添付図面を参照することにより、限定ではなく例示説明のために示されたこの発明の実施の形態1の下記の説明から明らかになるであろう。

0014

図面を参照すれば、単一の集積電子装置でオンライン自己訓練型ニューロファジー・ネットワークを実現する、この発明による回路アーキテクチャは、一般に概略ブロック構成を示す図1内の符号1により示される。

0015

アーキテクチャ1は基本的に、機能ブロックの内部構造と他のブロックとの相互接続との両者に関して説明すべき、多数の機能ブロックを含む複雑な集積システムである。

0016

このシステム全体の内部構成は、図1図式的に示されており、また好ましくは、しかし排他的ではなく、DPRAM(Dual Port RAM)型のメモリユニット2と、システム1の各コンポーネントを相互接続するバス4の調停を管理することに適応したアービトレーション(調停)ブロックARBITOR(アービタ)3と、システム1の決定部またはマスター部を表すマイクロコアまたはマイクロプロセッサ5と、ファジー・ルールを計算する専用のファジー・コプロセッサまたはファジファイヤ(ファジー化子)/デファジファイヤ(非ファジー化子)11と、ファジー演算を管理することに適応した専用コプロセッサであるコア・ファジー6と、マイクロコア5とALU7自身との種々の内部レジスタ間の代数演算を実行する専用のALU(Arithmetic Logic Unit:算術論理演算装置)7と、ある幾つかの外部周辺装置インタフェースするための周辺装置操作I/Oモジュール8と、EEPROMまたは他のタイプの不揮発性メモリユニットといった不揮発性メモリ9と、DPRAMユニット不揮発性EEPROM9との間のデータ交換のためのインタフェース10とを備えている。

0017

簡潔に言えば、この発明のアーキテクチャ1によって実現される自己訓練よる電子制御の方法は、下記に説明する通りである。

0018

改善された解釈能力を有するニューロファジー・ネットワークを提供するために、以後に説明するようにS字型三角型活性化関数が使われる。

0019

取るべき動作に関する演算コード、すなわちファジールールと学習ルールとその他の採用される計算命令とを含むコードは、EEPROM9に格納され、電源投入時にDPRAM2内にダンプされる。マイクロコア5が実行すべき命令のセットを解釈のために取り上げるのは、このメモリからである。

0020

命令がファジー型である時に、マイクロコア5は、コア・ファジー6がDPRAMユニット2から読み取ることを可能にする信号をアービタ・ブロック3に供給する。

0021

それからコア・ファジー6は、種々のルールを実行するようにファジー・コプロセッサ11を制御する。命令がファジー型でないとき、これらの命令は、マイクロコア5によって、または算術演算が関係するALU7によって直接実行される。

0022

以下、アーキテクチャ1の個々の機能ブロックの構成と相互接続と動作とを説明する。

0023

まず、マイクロコア・ブロック5について説明する。

0024

マイクロプロセッサすなわちマイクロコア5は、本システム1の心臓部であって、DPRAMユニット2から読み取った各命令に関して取るべき動作を決定する。このマイクロコア5は、集積アーキテクチャ1の外部からの信号STARTによって起動される。たとえば、信号STARTは、アーキテクチャ1と同じ支持基板上に搭載されている如何なる検知装置からでも発行できる。

0025

信号STARTを受け取るとマイクロコア5は、メモリ2からファジールールの数と、パラメータW、X、Y、MUがそれぞれメモリ内に格納されている、または格納されることになっているアドレスとを読み取り始める。

0026

初期状態でマイクロコア5は、アービタ・ブロック3を起動する信号SEL=0を使ってこのアービタ・ブロック3がDPRAMユニット2から読み取ることを可能にする。同時にコア・ファジー6は、一時的に切り離される。

0027

同時にアドレスバス4は、16進コードの0000になっている、メモリユニット2内の最初の位置がアドレスされることを可能にし、それによって信号RNWとNOTCSとを起動することによってユニット2を読取り状態にする。

0028

信号STARTを受信するとマイクロコア5は、次の状態になるが、そうでなければ初期状態に留まる。直後にやって来る状態でマイクロコア5には、接続の重み付けと、ファジー・コプロセッサからのファジー入力と、非ファジー化された出力と、ファジールールの活性化値と、ファジールール計算サブルーチンのアドレスとがそれぞれ格納されている、または格納されることになっているメモリユニット2内の各位置のアドレスを表すパラメータWPOSとXPOSとYPOSとMUPOSとADDRULESとが入力される。1ルール当たり8入力と4出力とを有するファジールール計算サブルーチンのために256のアドレスがある。

0029

これらのパラメータをローディングした直後に、ファジー型であることに加えて、FNNネットワークに関するINT1といった算術型または割込み管理型でもあり得るコマンドすなわち命令がハードウエア、ソフトウエア両者で解釈される。

0030

DPRAM2内に格納されたコードに16進コード0036が現れると、マイクロコア5は、待機状態になって、割込み信号(INT0、INT1、INT2、またはNMI)を受信するまでその状態に保持される。

0031

他方、16進コードFF80が読み取られると、学習ステップが実行されることになっており、マイクロコア5は、それが後述するように重み付け変分の符号と学習係数とを取得する関連状態ジャンプする。

0032

この情報は常にDPRAMユニット2に収容されており、この発明をさらに分かりやすくするために以下に詳述する。

0033

学習に関するこの情報は、図2に示すフォーマットを持っている。

0034

Opは、0または1という論理値を持つことができる。0のときこれは、減算を示し、1のときは加算を示す。

0035

番目から14番目(影付き表示)のビットは、使われておらず、したがって上記のメモリ語は、2進形式の下記の数によって表される数値を持つであろう。

0036

32768×op+δ
ここで、数値「32768」は、15番目の位置にあって、したがって、重み付け「215」を有するビットopから来ている。

0037

この学習ステップは、ytargetで表される入力パターンのタイプに関して、yFNNで表されるFNNネットワークからの実際の出力とターゲット出力との間に存在する誤差を考慮して実行される。すなわち、以下の式の通りである。

0038

w(t+1)=w(t)±(δ×μ)×(yFNN-ytarget)

0039

実際には下記の経験的関係が、より頻繁に使われる。

0040

w(t+1)=w(t)±(δ×μ)1/1024

0041

また、この式を実行するためにマイクロコア5は、現在の重み付けの値と活性化値とを受信しておかなくてはならず、また1024による除算(これは単なる語δ×μの10桁右シフトである)を行い、DPRAMユニット2からロードされた重み付けによってOp内に入っている演算を実行し、以前に使われていた重み付けの位置にこれらの値を上書きして格納することになっている。

0042

重み付けは、2バイトからなる1語内のバイトとして格納され、1語が2つの重み付けWを含むようにメモリ内に位置する。これらの重み付けのフォーマットは図3に示す。

0043

このようにして重み付けW1の1語は、下記の数の2進値をその中に格納している。

0044

w1×256+w0
同じことが重み付けW2、W3にも適用され、すべてのファジールールに関してこの演算が繰り返される。

0045

この反復は、現在のルールを指定しているCURRULで表されるカウンター内の累積値をDPRAMユニット2に記憶されたルールの数NRULESと比較することによって実行され、CURRUL<NRULESである限り、マイクロコア5はこの比較を繰り返し、そうでなければ次の状態に入る。

0046

次に、アービタ・ブロック3について説明する。

0047

アービタ・ブロック3は、コア・ファジー6とマイクロコア5の両者がDPRAMユニット2をアクセスしようとしたときに両者の間で衝突が起きるのを防止するために設計された回路ブロックである。

0048

最初にマイクロコア5だけがDPRAMユニット2からの読取りを可能とされて、その中で見出された命令を解釈し、実行すべき演算を決定するであろう。

0049

実際に、もしマイクロコア5がDPRAMユニット2内の所定のアドレスでファジールール・コードに遭遇すれば、マイクロコア5はコア・ファジー6を使用可能にし、同時にアービタ・ブロック3がDPRAMユニット2へのアクセスを適切に処理することを可能にする。

0050

逆に、もしマイクロコア5が非ファジー命令を読み取れば、アービタ・ブロック3はこのマイクロコア5を動作可能にするだけであろう。

0051

アービタ・ブロックは、図4に図式的に示す。

0052

次に、ALU(Arithmetic Logic Unit:算術論理演算装置)7について説明する。

0053

算術論理演算装置7は、アーキテクチャ1がファジー型のみならず数学型の計算動作を実行することを可能にするオプションとして含まれてきた。この装置7は、マイクロコア5によって指示された通りに、算術演算(加算、減算、乗算、除算)と論理演算(AND、OR、NOT、EXOR)、並びに内部レジスタの内容をメモリ位置による交換右左方向へのシフト、単一ビットのテスト等といった他のデータ操作をも実行するであろう。

0054

ALU7は、上述の関数を実行するように構成された回路と、A、B、Cで表される少なくとも3個の16ビット内部レジスタと、32ビットの計算ブロックAlucalcと、図5に示す4ビットのフラグレジスタと含んでいる。

0055

これらのフラグレジスタは、計算結果のタイプにしたがってALU7によって修正される。

0056

これらの数値の内部表現は次の通りである。

0057

ID=000004HE=015 WI=080 LX=0200 LY=2350
ALU7が実行できる動作は、メモリ位置のレジスタへのローディングまたその逆のローディング、2つのレジスタの内容の交換、加算、減算、除算、乗算、RCRシフト、LCRシフト、論理演算等である。

0058

ALU7は、その状態の各々において、所定の演算を実行することと次の演算をフェッチするための用意をすることとに適応した10状態の順次マシンである。

0059

これは、命令を解釈することと、その3個の内部レジスタを使って直ちにA×(B+C)型の演算を実行することとを可能にするインテリジェント部を含んでいる。

0060

次に、コア・ファジー6について説明する。

0061

コア・ファジー6は、ファジファイヤ(ファジー化子)/デファジファイヤ(非ファジー化子)とも呼ばれるファジー・コプロセッサを操作・制御する第2の専用マイクロプロセッサである。

0062

このマイクロプロセッサは、ファジファイヤ(ファジー化子)/デファジファイヤ(非ファジー化子)に適当に時間調整された制御信号を供給し、非ファジー化された出力とファジールールの「if」部(条件部)の活性化値とを処理することになっている。

0063

コア・ファジー6は、16ビットで動作する順次マシンであって、基本的にはマスターとして動作するマイクロコア5のスレーブである。

0064

このコア・ファジー6は、DPRAM2から、または割込みINTOから読み取られた命令STARTFUZZY RULESの時にだけハイの論理値になる信号STARTを発行するマイクロコア5によって動作可能にされる。

0065

ファジールールのマシン語コードは、アドレスADDRULESから拡張されたDPRAMユニット2の専用領域に位置している。

0066

最初、コア6は初期状態にあって、この状態でコア6は出力をクリアしており、アドレスバスは、ファジールールが格納されているメモリ位置ADDRULESのアドレスを含んでいる。この開始状態で、これらのルーチンをフェッチするステップが実行される。この状態でコア6は、マイクロコア5によって次の状態に動作可能にされる信号STARTを待っているであろうが、そうでなければこのコア・ファジー6はその初期状態を維持する。

0067

次に、ファジー・コプロセッサ11について説明する。

0068

このモジュールは、2つの可能なバージョンになる。1つは三角型のメンバーシップ関数またはファジー活性化関数であり、他はS字型のファジー活性化関数である。

0069

図6(A)の例に示す三角型メンバーシップ関数は、これらがハードウエアの形に実現しやすいという理由でファジー論理に最も頻繁に使われるものである。

0070

活性化度を計算する推論計算ブロック12(S字型メンバーシップ関数にも存在する)に転送しなくてはならないパラメータは、メンバーシップ関数を表す三角形の各頂点である。

0071

その内部レイアウト図7に示す。

0072

推論計算ブロック12は、ファジー論理の「then」部(結論部)によって活性化値とそれらの積とを計算することになっている。

0073

このブロック12自身は、これらの関数が下記に詳述されるブロックAlfaCalcとDefuzzifierとを含んでいる。

0074

ブロックAlfaCalcは、所定のメンバーシップ関数と関連する入力xの活性化値を計算する。この計算を実行するために使われる手法を概観するために、非限定的な例として、各メンバーシップ関数は、それぞれその左、中央、右の座標を形成する3個の8ビット符号化パラメータa、b、cによって識別される。

0075

この前提に基づいて、三角型のメンバーシップ関数か、飽和を有するメンバーシップ関数かの何れかを表すことが可能となる。後者の場合、パラメータaとbとが一致するか、またはパラメータbとcとがが一致するか何れかであるように、またそれによってそれぞれ左台形または右台形のメンバーシップ関数を得るように、これらのパラメータを取ることができる。

0076

この状況は、図6(C)、図6(B)によって概略図示されている。

0077

デファジファイヤ(非ファジー化子)は、ブロックAlfaCalcによって供給されるような活性化値の合計を格納して、それぞれのファジー論理「then」部(結論部)による活性化値の積の4つの合計値を計算するように構成されている。

0078

使用されるファジー化と非ファジー化の方法を考慮して、最小または最大の「if」部(条件部)の活性化値だけを、実行される演算のタイプにしたがって処理される各ルール毎に格納し、それからその「then」部(結論部)を乗算すべきである。各ルールごとに計算された最小値または最大値にまで合計を拡張するために、コンパレータ15を使ってブロックAlfaCalcから現在格納されている値と次の値とを比較する。この値は、現在値よりも小さいと分かった場合にだけ格納される。

0079

この解は、内部メモリとS字型メンバーシップ関数手法で必要となる他のモジュールとのどちらもここでは使用されないので、必要な領域が小さくて、より高速であるという利点を持っている。欠点は、非線形性とFNN学習の点からファジーシステム性能が限定されることである。

0080

次に、S字型メンバーシップ関数のためのファジー・コアについて説明する。その内部レイアウト(図8)は、以下に詳述する通りである。

0081

これは、20で表されるファジファイヤ・ブロックと30で表されるデファジファイヤ・ブロックという2個の内部マクロブロックを備えている。

0082

S字型活性化関数は、対称メンバーシップ関数か非対称メンバーシップ関数かのどちらが求められているかにしたがって、異なる中心と同じまたは異なる傾斜とを有する2つのメンバーシップ関数の間の差として得られる。

0083

そのためには、下記のタイプの正規化されたS字型の値が格納されているROM19といった読取り専用メモリが使用される。

0084

y=(1+tanh k)/2

0085

ここで、パラメータkは、下記で与えられる。

0086

k=α(x−c)

0087

一旦、傾斜αと中心cとに基づいてkの値が計算されると、この値は、ブロックAlfaCalcによってROM19内のアドレスとして使われ、そのアドレスから活性化関数の対応する座標値を読み取ることができる。

0088

入力α、x、cはそれぞれ8ビット入力と考えるべきであり、このことは、これらの値が「0〜255」の範囲内の値を表すことができることを意味する。

0089

選択されたアーキテクチャは、シリアルであって、アドレスは下記の論理、すなわち、第1の関数パラメータが最初に渡されることと、次に第2の関数パラメータが、入力マルチプレクサの出力が制御信号SELによって切り換えられるそれらの入力マルチプレクサを使って渡されることとによって選択される。

0090

下記の方式が使用される。

0091

SEL=0のとき、α1とc1とがロードされ、第1パラメータk1は現在の横座表xに基づいて計算され、それと同時にSEL=1が仮定され、α2とc2とがロードされてパラメータk2が同じ横座表を使って計算される。

0092

ROM19内のアドレスを表すk1、k2において活性化関数の縦座標値が読み取られ、これらの値の間の差が求められる。パラメータαとcとのすべての組合せについてこの処理を繰り返すことによってメンバーシップ関数全体が構成される。

0093

好都合にも、この発明で提案している解は、1より高い傾斜または低い傾斜を有するメンバーシップ関数を生成する可能性を考慮に入れている。

0094

次に、ファジファイヤ(ファジー化子)ブロック20について説明する。

0095

このモジュールは、システム入力Xのいわゆるファジー化のために、したがって下記、すなわち、「もしx1がA11であって、AND/OR(および/または)x2がA12であってAND/OR(および/または)・・・・xnがA1nであれば」のタイプの「if」部(条件部)の推論ファジールールを計算するために使用される。

0096

ブロック20は、下記の説明のように動作する。

0097

各ファジー・セットAijは、S字型分岐の傾斜とそれらの中心とを示すパラメータα1、c1、α2、c2によって表される。8ビットの2進コードで表されるこれらのパラメータは、ルールのタイプにしたがって、ファジー化すべき明確な(ファジーでない)入力xと一緒に渡される。

0098

新しい一組のファジールールを起動する前に、信号not−resetがゼロになるように、ファジーブロック20をリセットすべきである。こうしてシステムは、出力と内部レジスタとがすべてクリアされた初期状態になる。

0099

ファジールールが実行されることになると、信号not−resetは、1という値を取らなくてはならないが、これはこのアーキテクチャが下記の状態に含まれるすべての動作を実行するための準備完了となるために必須である。

0100

1つの状態を前に進めて命令「xiはAiである」の活性化値の計算を実行するためには、開始信号を1という値にすることが必要である。一般ルールの第1の命令「xiはAiである」が現れたので、信号Op(図2)を1にして、第1の演算が論理和ORであることを示さなくてはならない。

0101

この条件は、ファジーブロック20が活性化値に関して正しい結果を与えるために必要である。実際にはすべての内部レジスタは最初にクリアされており、第1の命令が提示されたときには、丁度計算されたばかりの活性化値とゼロになっているレジスタATTIVAZIONEINTに入っている値との間でOR演算、すなわち最大値の計算が実行され、それによって正しい値を与える。

0102

もし、この第1のステップのときに演算が論理積AND、すなわち最小値の計算であれば、結果はゼロ、すなわち誤りとなるであろう。

0103

前述のようにメンバーシップ関数は、2つのS字型分岐によって表されており、そのうちの1つだけがROM19内に格納されて値kに正規化される。メンバーシップ関数を構成するために、異なる傾斜と中心とを有する、または同じ傾斜と中心とを有する2つのS字型分岐の間の差を求める。

0104

この差の結果は、入力xに対応する活性化値を表す。一例を図13に示すが、ここでは2つのS字型分岐A、Bは異なるパラメータを持っている。

0105

アーキテクチャ1はシリアルであり、したがって、信号SEL=0は、ROM19内に格納された対応する活性化値を読み取ることが可能なROM19内のアドレスを表すk1=α1(x−c1)を計算するために、ブロックRANGE1によって使われるパラメータα1とc1とxとが渡されるようにする。

0106

この値は、ROM19のためのアドレスバスaddとして使用され、このバスは、グラウンド値GNDにおいてその入力CSとOEとを有するROM19によって常に動作可能にされる後者から読み取る。

0107

アドレス位置k1において、格納された値が読み取られ、ROM19に接続されたデータバス21を介して推論ブロックのSIGMA0で表されている内部レジスタに直ちにロードされる。

0108

この動作のときに、出力信号readyは、ファジーブロック20がファジー命令「xはAである」を処理していることを示すゼロ値を取る。

0109

その後、信号SELは、モジュールRANGE1の入力マルチプレクサ25がα2、c2を選択することを可能にする推論ブロックによって1(SEL=1)にされ、xでパラメータk2=α2(x−c2)が計算され、そして今度はデータがレジスタSIGMA1と推論ブロックにもロードされるということを除いて、同じ演算がα1とc1とに関して上述したように実行される。

0110

その後、活性化ステップのときに、SIGMA0とSIGMA1との間の差が計算されるが、この差は、ファジー命令「x1はA11である」に関する活性化値を表す。この計算が完了すると、信号SELとREADYが発行されて、再び新しい命令の計算ができる準備完了状態になる。

0111

上記の動作は、ファジー命令「xiはAijである」の数と同じ回数だけ繰り返されるが、その度毎にそれぞれ0か1のいずれかである信号opを介してファジー命令の間の構成ルールORまたはANDのタイプも渡す。

0112

活性化出力は、前に計算された活性化値の部分値を含むであろうが、これはルールの終了をファジファイヤ・ブロック20にマークする命令「then」の到着を示す1という値を取る信号fine−regolaのときに確定的となるであろう。

0113

次に、推論ブロックについて説明する。

0114

このブロックは、図12に示されており、入力のファジー化を実行するために有効である。

0115

次に、ROM3について説明する。

0116

tanhとも表される読取り専用メモリ、またはROM28は、パラメータkに正規化されたS字型の1つの分岐の値を格納するように構成されている。

0117

次に、ブロックADDMEMについて説明する。

0118

このモジュールは、求められているS字型メンバーシップ関数と入力ファジー・セットとに関するパラメータを取得することと、これらのファジー・セットに対応するメンバーシップの入力活性化値または活性化度を読み取ることができる、ROM28tanh内の位置のアドレスを出力することとを意図している。

0119

次に、デファジファイヤ(非ファジー化子)ブロック30について説明する。

0120

このモジュールは、一旦ファジファイヤ・ブロックが入力の活性化度を出力した場合に、ファジールールの「then」部(結論部)を計算して、重心法によってそれらをファジー化することを意図している。

0121

前述のように、ルールの数は最大で256個であって、1ルール当たり8入力と4出力とを持っている。しかしながら計算速度犠牲にするだけでさらに多数のこれらのルールとファジー命令「xiはAijである」とを備えることができる。

0122

入力の活性化度は、信号opを使って推論ブロック内で選択された演算に依存する。実際には所定の入力xiに関して、ファジー・セットに対する活性化のその値は、μi(xi)で表されるメンバーシップ関数を使って計算される。

0123

この演算は、すべての入力に関して実行され、この演算が完了するとi番目のファジールールであるRiを有する、μ(Ri)で表される活性化度が、すべてのμi(xi)の積をスケーリングするAND、OR、積として計算される。

0124

このデファジファイヤ(非ファジー化子)モジュール30は実際、下記の関係式によって与えられるような重心法を使用して、ファジールールのファジー化された出力を明確な(非ファジー化された)値に変換することを意図している。

0125

0126

図14は、デファジファイヤ・ブロック30の内部アーキテクチャを示す。

0127

各ファジー・サブルーチンの開始時にアーキテクチャ1は、すべての内部レジスタと出力とをクリアするために、信号not−resetをゼロにすることによってリセットされなくてはならない。

0128

この直後に信号not−resetが1にされ、デファジファイヤ・ブロック30がファジファイヤ・ブロック20からそれに渡されるようにファジールールの8ビットの活性化度と、システム入力デュアルポートRAMユニット2から来るFNNネットワーク接続の8ビットの重み付けW1、W2、W3、W4とを入力されるのは、その後であるが、これらの重み付けは、モジュールMULT8で乗算されて16ビットの結果を与える。

0129

この演算は、1ファジールール当たり4個の非ファジー化された出力を得るように、4個の乗算器24で並行して実行される。活性化信号は、信号end−ruleが1(命令「then」の等化物)であるときにのみ確定的になるファジールールの部分活性化度を含んでいるので、Wiによる活性化の積である信号OUTMOLIの和を含む、最初にリセットされた24ビットの内部レジスタを備えることが必要となる。

0130

これらの出力は、関係6.6の分子NUMIと、16ビット加算器と同ビット数のレジスタとを使って計算される分母DEとを表す。24と16というビット数は、前述の場合に、最大可能なルール数として256回という反復回数を備えなくてはならないことから来ている。

0131

4個の24ビット除算器を用いてNUMIとDEとの間の比率を求めると、これも24ビット(最上位8ビットは常にゼロであるのでこの内の最下位16ビットだけが有意である)を持っていて、1ファジールール当たり4個の非ファジー化出力を表す出力y1、y2、y3、y4が得られる。このデファジファイヤ・ブロックは、順次マシンである。

0132

この発明のファジー・ニューラル・ネットワークは、如何なる数の入力をも順次に処理するように設計されており、この例のルールの最大数は256であるが、ルールの最大数は、デファジファイヤ・ブロック30の内部モジュール加算器と乗算器と除算器)のビット数を増加させることによって容易にこの値よりも上げることができる。さらにこの発明のアーキテクチャは、数個並列出力を与えることができる(この例では、単に4個の並列出力が示されている)。

0133

ファジー命令に関する演算コードは、ファジー学習命令のセットと他の演算とを2進形式で符号化することからなり、一般にこれは、下記のルールのフォーマット、すなわち、もしx1(tk)がA11でありAND/OR(および/または)、・・・、xn(tk)がA1nであれば、y1(tk+1)はW11、y2(tk+1)はW12、y3(tk+1)はW13、y4(tk+1)はW14である。
・・・・学習ルール・・・・
wi(t+1)=wi(t)±(δ×μ)×1/1024
となるであろう。

0134

もし、いつでも一時的に、たとえば供給システムが停止することによって起きるような何らかの異常信号または割込み信号が発生した場合、一時的にDPRAMユニット2内に入れられているデータは、直ちにEEPROM内にダンプされ、学習処理によって変更された、FNN接続の最後の重み付け値と、活性化値と、非ファジー化出力とを保存する。

図面の簡単な説明

0135

図1この発明の実施の形態1による自己訓練型ニューロファジー・ネットワーク・アーキテクチャを概略的に示すブロック構成図である。
図2図1の自己訓練型ニューロファジー・ネットワーク・アーキテクチャに関する学習命令を含むメモリ語の一例を概略的に示す説明図である。
図3この発明の実施の形態1によるファジー論理情報を含むメモリ語の他の一例を概略的に示す説明図である。
図4図1の自己訓練型ニューロファジー・ネットワーク・アーキテクチャに組み込まれたアービタ・ブロックを概略的に示すブロック構成図である。
図5図1の自己訓練型ニューロファジー・ネットワーク・アーキテクチャに組み込まれた4ビットのフラグレジスタを示す説明図である。
図6図1の自己訓練型ニューロファジー・ネットワーク・アーキテクチャで使われるファジー論理メンバーシップ関数のグラフを示す特性図である。
図7図1の自己訓練型ニューロファジー・ネットワーク・アーキテクチャに組み込まれたファジー・マイクロコントローラの構成を概略的に示すブロック図である。
図8図1の自己訓練型ニューロファジー・ネットワーク・アーキテクチャに組み込まれたファジー・マイクロコントローラの修正された構成を概略的に示すブロック図である。
図9この発明の実施の形態1による自己訓練型ニューロファジー・ネットワーク・アーキテクチャで使われるメンバーシップ関数を概略的に示す特性図である。
図10この発明の実施の形態1による自己訓練型ニューロファジー・ネットワーク・アーキテクチャで使われるメンバーシップ関数を概略的に示す特性図である。
図11図1の自己訓練型ニューロファジー・ネットワーク・アーキテクチャの特定のコンポーネントを概略的に示すブロック構成図である。
図12この発明の実施の形態1による自己訓練型ニューロファジー・ネットワーク・アーキテクチャの他の特定のコンポーネントを示すブロック構成図である。
図13図1の自己訓練型ニューロファジー・ネットワーク・アーキテクチャで使われるファジー論理メンバーシップ関数のグラフを示す特性図である。
図14図1の自己訓練型ニューロファジー・ネットワーク・アーキテクチャの特定のコンポーネントを概略的に示すブロック構成図である。

--

0136

3アービタ、5マイクロコア、6コア・ファジー、8 I/O周辺装置、10 EEPROMインタフェース、11コプロセッサ・ファジー。

ページトップへ

この技術を出願した法人

この技術を発明した人物

ページトップへ

関連する挑戦したい社会課題

関連する公募課題

ページトップへ

技術視点だけで見ていませんか?

この技術の活用可能性がある分野

分野別動向を把握したい方- 事業化視点で見る -

(分野番号表示ON)※整理標準化データをもとに当社作成

ページトップへ

おススメ サービス

おススメ astavisionコンテンツ

新着 最近 公開された関連が強い技術

この 技術と関連性が強い人物

関連性が強い人物一覧

この 技術と関連する社会課題

関連する挑戦したい社会課題一覧

この 技術と関連する公募課題

関連する公募課題一覧

astavision 新着記事

サイト情報について

本サービスは、国が公開している情報(公開特許公報、特許整理標準化データ等)を元に構成されています。出典元のデータには一部間違いやノイズがあり、情報の正確さについては保証致しかねます。また一時的に、各データの収録範囲や更新周期によって、一部の情報が正しく表示されないことがございます。当サイトの情報を元にした諸問題、不利益等について当方は何ら責任を負いかねることを予めご承知おきのほど宜しくお願い申し上げます。

主たる情報の出典

特許情報…特許整理標準化データ(XML編)、公開特許公報、特許公報、審決公報、Patent Map Guidance System データ