図面 (/)

技術 メンバシップ関数をストアする方法、ファジイ規則の前件部の帰属度を計算するための装置

出願人 コンソルツィオ・ペール・ラ・リケルカ・スラ・ミクロエレットローニカ・ネル・メッツォジオルノ
発明者 フランチェスコ・パッパラルドビンチェンツォ・マトランガダビデ・テシダリオ・ディ・ベッラ
出願日 1996年3月27日 (24年7ヶ月経過) 出願番号 1996-072214
公開日 1996年11月22日 (23年11ヶ月経過) 公開番号 1996-305575
状態 特許登録済
技術分野 特殊なプログラム実行装置 知識ベースシステム
主要キーワード 減算器回路 ファジイ集合 帰属度 ファジイ 論理シフト メモリワード 特性パラメータ 取決め
関連する未来課題
重要な関連分野

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

図面 (20)

課題

簡易かつ経済的にメンバシップ関数と入力との交わりを定めるためのメンバシップ関数のストア方法を提供する。

解決手段

メンバシップ関数をストアするための方法は、メンバシップ関数を規定する三角形頂点論議の領域UdDにおける位置CVをストアすることと、三角形の左辺と論議の領域の軸との交点と頂点の位置CVとの間の第1の距離LVDをストアすることとを含む。さらに、この方法は、三角形の右辺と論議の領域の軸との交点と頂点の位置CVとの間の第2の距離RVDをストアすることを含む。本発明はさらにファジイ規則前件部のデータの帰属度を計算する回路に関し、この回路は、論議の領域における入力値の位置により規定される相似な三角形の対応する辺の間で生じる幾何学的比率を用いることにより入力変数をファジイ化するようにされる。

概要

背景

概要

簡易かつ経済的にメンバシップ関数と入力との交わりを定めるためのメンバシップ関数のストア方法を提供する。

メンバシップ関数をストアするための方法は、メンバシップ関数を規定する三角形頂点論議の領域UdDにおける位置CVをストアすることと、三角形の左辺と論議の領域の軸との交点と頂点の位置CVとの間の第1の距離LVDをストアすることとを含む。さらに、この方法は、三角形の右辺と論議の領域の軸との交点と頂点の位置CVとの間の第2の距離RVDをストアすることを含む。本発明はさらにファジイ規則前件部のデータの帰属度を計算する回路に関し、この回路は、論議の領域における入力値の位置により規定される相似な三角形の対応する辺の間で生じる幾何学的比率を用いることにより入力変数をファジイ化するようにされる。

目的

効果

実績

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

この技術が所属する分野

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

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

請求項1

メンバシップ関数ストアする方法であって、メンバシップ関数を規定する三角形頂点論議の領域における位置をストアするステップと、論議の領域における頂点の前記位置と、メンバシップ関数を規定する三角形の左辺と論議の領域の軸との交点との間の第1の距離をストアするステップと、論議の領域における頂点の前記位置と、メンバシップ関数を規定する三角形の右辺と論議の領域の軸との交点との間の第2の距離をストアするステップとを含む、メンバシップ関数をストアする方法。

請求項2

メンバシップ関数を規定する前記三角形の第1の高さの値をストアするステップと、メンバシップ関数を規定する前記三角形により規定される台形の第2の高さの値をストアするステップとをさらに含む、請求項1に記載の方法。

請求項3

メンバシップ関数に対する真理度の最大値をストアするステップをさらに含む、請求項1に記載の方法。

請求項4

第1の距離をストアするステップに先行して、前記第1の距離および前記第2の距離の少なくとも一方を、論議の領域を離散化するビット数に対して相対的に小さい非0数に設定することで、メンバシップ関数の垂直な辺を表わすステップをさらに含む、請求項1に記載の方法。

請求項5

第1の距離をストアするステップに先行して、前記第1の距離および前記第2の距離の少なくとも一方を0に設定してメンバシップ関数の水平な辺を表わすステップをさらに含む、請求項1に記載の方法。

請求項6

メンバシップ関数をストアする方法であって、メンバシップ関数を規定する三角形の頂点の論議の領域における位置をストアするステップと、最大の真理度を2n で乗算し、近似を用いて論議の領域における頂点の前記位置と、メンバシップ関数を規定する三角形の左辺と論議の領域の軸との交点との間の第1の距離で除算することにより規定される第1のパラメータをストアするステップと、最大の真理度を2n で乗算し、近似を用いて論議の領域における頂点の前記位置と、メンバシップ関数を規定する三角形の右辺と論議の領域の軸との交点との間の第2の距離で除算することにより規定される第2のパラメータをストアするステップとを含み、nの値は前記第1および第2の距離が規定されるビット数である、メンバシップ関数をストアする方法。

請求項7

メンバシップ関数をストアする方法であって、メンバシップ関数を規定する三角形の頂点の論議の領域における位置をストアするステップと、メンバシップ関数を規定する前記三角形の第1の高さの値をストアするステップと、メンバシップ関数を規定する前記三角形により規定される台形の第2の高さの値をストアするステップと、前記三角形の前記第1の高さの値を2n で乗算し、近似を用いて論議の領域における頂点の前記位置と、メンバシップ関数を規定する三角形の左辺と論議の領域の軸との交点との間の第1の距離で除算することにより規定される第1のパラメータをストアするステップと、前記三角形の前記第1の高さの値を2n で乗算し、近似を用いて論議の領域における頂点の前記位置と、メンバシップ関数を規定する三角形の右辺と論議の領域の軸との交点との間の第2の距離で除算することにより規定される第2のパラメータをストアするステップとを含み、nの値は前記第1および第2の距離が規定されるビット数である、メンバシップ関数をストアする方法。

請求項8

ファジイ規則前件部の帰属度を計算するための装置であって、入力値受取るための手段と、論議の領域における入力値の位置により規定されるメンバシップ関数を規定する相似な三角形の対応する辺の間で生じる幾何学的比率を用いることにより入力値をファジイ化するための手段とを含む、ファジイ規則の前件部の帰属度を計算するための装置。

請求項9

ファジイ化するための手段は、入力値をストアするための第1のレジスタと、メンバシップ関数を規定する三角形の頂点の論議の領域における位置をストアするための第2のレジスタと、論議の領域における頂点の前記位置と、メンバシップ関数を規定する三角形の左辺と論議の領域の軸との交点との間の第1の距離をストアするための第3のレジスタと、論議の領域における頂点の前記位置と、メンバシップ関数を規定する三角形の右辺と論議の領域の軸との交点との間の第2の距離をストアするための第4のレジスタと、メンバシップ関数を規定する前記三角形の第1の高さの値HVをストアするための第5のレジスタと、メンバシップ関数を規定する前記三角形により規定される台形の第2の高さの値HTをストアするための第6のレジスタと、前記第1および第2のレジスタの出力を入力として受取る第1の係数コンパレータとを含み、前記第1の係数コンパレータは第1のレジスタの出力が第2のレジスタの出力よりも大きければ第1の値、および第1のレジスタの出力が第2のレジスタの出力よりも大きくなければ第1の値と異なる第2の値を有する信号を出力し、さらに、第1の係数コンパレータの出力、第1のレジスタおよび第2のレジスタに接続され、前記第1の係数コンパレータの出力が第1の値であれば前記第2のレジスタの値を選択し、さもなければ前記第1のレジスタの前記値を選択する第1のマルチプレクサと、第1の係数コンパレータの出力、第1のレジスタおよび第2のレジスタに接続され、前記第1の係数コンパレータの出力が第1の値であれば前記第1のレジスタの値を選択し、さもなければ前記第2のレジスタの前記値を選択する第2のマルチプレクサと、第1の係数コンパレータの出力、第3のレジスタおよび第4のレジスタに接続され、前記第1の係数コンパレータの出力が第1の値であれば前記第4のレジスタの値を選択し、さもなければ前記第3のレジスタの前記値を選択する第3のマルチプレクサと、前記第1、第2および第3のマルチプレクサならびに前記第5のレジスタに接続される計算手段とを含み、前記計算手段は、a=(HV*(A−B+D))/Dという計算を解くためのものであり、HVは第5のレジスタにストアされる値であり、Aは前記第1のマルチプレクサにより選択された値であり、Bは前記第2のマルチプレクサにより選択された値であり、Dは前記第3のマルチプレクサにより選択された値であり、さらに、計算手段からの値aおよび第6のレジスタにストアされる値HTを受取り、もしa>HTであれば第1の値を有する信号を出力し、さもなければ第2の値を有する信号を出力する第2の係数コンパレータと、前記第2の係数コンパレータにより駆動され、前記第6のレジスタとaの値を与える前記計算手段とに接続され、第2のコンパレータの出力信号が第1の値であれば値HTを選択し、さもなければaの値を選択するようにされた第4のマルチプレクサとを含む、請求項8に記載の装置。

請求項10

ファジイ化するための手段は、入力値をストアするための第1のレジスタと、メンバシップ関数を規定する三角形の頂点の論議の領域における位置をストアするための第2のレジスタと、論議の領域における頂点の前記位置と、メンバシップ関数を規定する三角形の左辺と論議の領域の軸との交点との間の第1の距離をストアするための第3のレジスタと、論議の領域における頂点の前記位置と、メンバシップ関数を規定する三角形の右辺と論議の領域の軸との交点との間の第2の距離をストアするための第4のレジスタと、メンバシップ関数を規定する前記三角形の第1の高さHVをストアするための第5のレジスタと、メンバシップ関数を規定する前記三角形により規定される台形の第2の高さHTをストアするための第6のレジスタと、前記第1および第2のレジスタの出力を入力として受取る第1の係数コンパレータとを含み、前記第1の係数コンパレータは、第1のレジスタの出力が第2のレジスタの出力よりも大きければ第1の値、および第1のレジスタの出力が第2のレジスタの出力よりも大きくなければ第1の値と異なる第2の値を有する信号を出力し、さらに、第1の係数コンパレータの出力、第1のレジスタおよび第2のレジスタに接続され、前記第1の係数コンパレータの出力が第1の値であれば前記第1のレジスタの値を選択し、さもなければ前記第2のレジスタの前記値を選択する第1のマルチプレクサと、第1の係数コンパレータの出力、第1のレジスタおよび第2のレジスタに接続され、前記第1の係数コンパレータの出力が第1の値であれば前記第2のレジスタの値を選択し、さもなければ前記第1のレジスタの前記値を選択する第2のマルチプレクサと、第1の係数コンパレータの出力、第3のレジスタおよび第4のレジスタに接続され、前記第1の係数コンパレータの出力が第1の値であれば前記第4のレジスタの値を選択し、さもなければ前記第3のレジスタの前記値を選択する第3のマルチプレクサと、前記第1、第2および第3のマルチプレクサならびに前記第5のレジスタに接続される計算手段とを含み、前記計算手段は、A1=(HV*(A−B))/Dという計算を解くためのものであり、HVは第5のレジスタにストアされる値であり、Aは前記第1のマルチプレクサにより選択される値であり、Bは前記第2のマルチプレクサにより選択される値であり、Dは前記第3のマルチプレクサにより選択される値であり、さらに、計算手段からの値A1および第5のレジスタからの値HVを受取り、もしA1>HVであれば第1の値を有する信号を出力し、さもなければ第2の値を有する信号を出力する第2の係数コンパレータと、計算手段からの値A1および第5のレジスタからの値HVを受取り、値HV−A1を出力する減算器と、前記第2の係数コンパレータにより駆動され、減算器の出力および0の値を表わすグラウンドに接続され、第2の係数コンパレータの信号が第1の値であれば0の値を選択しさもなければ減算器により出力される値を選択する第4のマルチプレクサと、第4のマルチプレクサの出力および第6のレジスタにストアされる値HTを受取り、第4のマルチプレクサの出力がHTよりも大きければ第1の値を有する信号を出力し、さもなければ第2の値を有する信号を出力する第3の係数コンパレータと、前記第3のコンパレータにより駆動され、第4のマルチプレクサの出力および第6のレジスタに接続され、第3の係数コンパレータの信号が第1の値であれば前記第6のレジスタの値を選択し、さもなければ前記第4のマルチプレクサの出力値を選択するようにされた第5のマルチプレクサとを含む、請求項8に記載の装置。

請求項11

入力値Iをストアするための第1のレジスタと、メンバシップ関数を規定する三角形の頂点の論議の領域における位置CVをストアするための第2のレジスタと、最大の真理度を2n で乗算し、論議の領域における頂点の前記位置と、メンバシップ関数を規定する三角形の左辺と論議の領域の軸との交点との間の第1の距離で除算することにより規定される第1のパラメータKLをストアするための第3のレジスタと、最大の真理度を2n で乗算し、論議の領域における頂点の前記位置と、メンバシップ関数を規定する三角形の右辺と論議の領域の軸との交点との間の第2の距離で除算することにより規定される第2のパラメータKRをストアするための第4のレジスタとをさらに含み、nの値は前記第1および第2の距離が規定されるビット数であり、さらに、メンバシップ関数を規定する前記三角形の第1の高さHVをストアするための第5のレジスタと、メンバシップ関数を規定する前記三角形により規定される台形の第2の高さHTをストアするための第6のレジスタと、前記第1および第2のレジスタの出力を入力として受取る第1の係数コンパレータとを含み、前記第1の係数コンパレータは、第1のレジスタの出力が第2のレジスタの出力よりも大きければ第1の値、および第1のレジスタの出力が第2のレジスタの出力よりも大きくなければ第1の値と異なる第2の値を有する信号を出力し、さらに、第1の係数コンパレータの出力、第1のレジスタおよび第2のレジスタに接続され、前記第1の係数コンパレータの出力が第1の値であれば第1のレジスタの値を選択し、さもなければ前記第2のレジスタの前記値を選択する第1のマルチプレクサと、第1の係数コンパレータの出力、第1のレジスタおよび第2のレジスタに接続され、前記第1の係数コンパレータの出力が第1の値であれば前記第2のレジスタの値を選択し、さもなければ前記第1のレジスタの前記値を選択する第2のマルチプレクサと、第1の係数コンパレータの出力、第3のレジスタおよび第4のレジスタに接続され、前記第1の係数コンパレータの出力が第1の値であれば前記第4のレジスタの値を選択し、さもなければ前記第3のレジスタの前記値を選択する第3のマルチプレクサと、前記第1、第2および第3のマルチプレクサに接続され、C=(D*(A−B))という計算を行なうようにされた計算手段とを含み、Aは前記第1のマルチプレクサにより選択される値であり、Bは前記第2のマルチプレクサにより選択される値であり、Dは前記第3のマルチプレクサにより選択される値であり、計算手段はm+nビットで表わされる値Cを出力し、さらに、計算手段から最上位のn+1からm+nまでのビットに等しい値およびn番目のビットの値を受取り、n+1からm+nまでの値およびn番目のビットの値の和を出力する加算器と、加算器からの出力および第5のレジスタからの値HVを受取り、加算器の出力がHVよりも大きければ第1の値を有する信号を出力し、さもなければ第2の値を有する信号を出力する第2の係数コンパレータと、加算器の出力および第5のレジスタにストアされる値HVを受取り、HVマイナス加算器の出力に等しい値を出力する減算器と、前記第2の係数コンパレータにより駆動され、減算器の出力および0の値を表わすグラウンドに接続され、第2の係数コンパレータの信号が第1の値であれば0の値を選択し、さもなければ減算器により出力される値を選択するようにされた第4のマルチプレクサと、第4のマルチプレクサの出力および第6のレジスタにストアされる値HTを受取り、第4のマルチプレクサの出力がHTよりも大きければ第1の値を有する信号を出力し、さもなければ第2の値を有する信号を出力する第3の係数コンパレータと、前記第3のコンパレータにより駆動され、第4のマルチプレクサの出力および第6のレジスタに接続され、第3の係数コンパレータの信号が第1の値であれば前記第6のレジスタの値を選択し、さもなければ前記第4のマルチプレクサの出力値を選択するようにされた第5のマルチプレクサとを含む、請求項8に記載の回路

請求項12

入力値Iをストアするための第1のレジスタと、メンバシップ関数を規定する三角形の頂点の論議の領域における位置CVをストアするための第2のレジスタと、最大の真理度を2n で乗算し、論議の領域における頂点の前記位置と、メンバシップ関数を規定する三角形の左辺と論議の領域の軸との交点との間の第1の距離で除算することにより規定される第1のパラメータKLをストアするための第3のレジスタと、最大の真理度を2n で乗算し、論議の領域における頂点の前記位置と、メンバシップ関数を規定する三角形の右辺と論議の領域の軸との交点との間の第2の距離で除算することにより規定される第2のパラメータKRをストアするための第4のレジスタとを含み、nの値は前記第1および第2の距離が規定されるビット数であり、さらに、メンバシップ関数を規定する前記三角形の最大の高さrをストアするための第5のレジスタと、前記第1および第2のレジスタの出力を入力として受取る第1の係数コンパレータとを含み、前記第1の係数コンパレータは第1のレジスタの出力が第2のレジスタの出力よりも大きければ第1の値を、および第1のレジスタの出力が第2のレジスタの出力よりも大きくなければ第1の値と異なる第2の値を有する信号を出力し、さらに、第1の係数コンパレータの出力、第1のレジスタおよび第2のレジスタに接続され、前記第1の係数コンパレータの出力が第1の値であれば第1のレジスタの値を選択し、さもなければ前記第2のレジスタの前記値を選択する第1のマルチプレクサと、第1の係数コンパレータの出力、第1のレジスタおよび第2のレジスタに接続され、第1の係数コンパレータの出力が第1の値であれば前記第2のレジスタの値を選択し、さもなければ前記第1のレジスタの前記値を選択する第2のマルチプレクサと、第1の係数コンパレータの出力、第3のレジスタおよび第4のレジスタに接続され、第1の係数コンパレータの出力が第1の値であれば第4のレジスタの値を選択し、さもなければ第3のレジスタの前記値を選択する第3のマルチプレクサと、前記第1、第2および第3のマルチプレクサに接続され、C=(D*(A−B))という計算を行なうようにされた計算手段とを含み、Aは前記第1のマルチプレクサにより選択される値であり、Bは前記第2のマルチプレクサにより選択される値であり、Dは前記第3のマルチプレクサにより選択される値であり、計算手段はm+nビットで表わされる値Cを出力し、さらに、計算手段から出力Cの最上位のn+1からm+nまでのビットに等しい値およびn番目のビットの値を受取る加算器と、加算器からの出力および第5のレジスタにストアされる最大の高さrを受取り、加算器の出力がrよりも大きければ第1の値を有する信号を出力し、さもなければ第2の値を有する信号を出力する第2の係数コンパレータと、前記第2のコンパレータにより駆動され、第5のレジスタおよび加算器の出力に接続され、前記第2のコンパレータが第1の値であれば前記第5のレジスタの値を選択し、さもなければ前記加算器の前記出力の値を選択するようにされた第5のマルチプレクサとを含む、請求項8に記載の回路。

請求項13

切上げまたは切捨て近似を用いて2n で除算するための回路であって、除算されるバイナリ数を含むレジスタと、レジスタに接続され、除算される前記バイナリ数の(n+1)ビットから最上位ビットまでのビットを第1の入力で、および除算される前記バイナリ数のn番目のビットを第2の入力で受取り、第1の入力を第2の入力に加算し、合計した値を出力する加算器とを含み、加算器が出力する合計値は2n で除算されたバイナリ数の切上げまたは切捨て近似された結果である、切上げまたは切捨て近似を用いて2n で除算するための回路。

請求項14

計算手段は、第1のマルチプレクサの出力および第2のマルチプレクサの出力を受取り、第1のマルチプレクサの出力マイナス第2のマルチプレクサの出力に等しい値を出力する第1の減算器と、第1の減算器の出力および第3のマルチプレクサの出力を受取り、第1の減算器の出力と第3のマルチプレクサの出力との総和に等しい値を有する信号を出力する加算器と、第5のレジスタにストアされる値HVおよび加算器の出力を受取り、加算器の出力で乗算される値HVに等しい値を有する信号を出力する乗算器と、乗算器の出力および第3のマルチプレクサの出力を受取り、第3のマルチプレクサの出力で除算される乗算器の出力に等しい値を有する信号を出力する除算器とを含む、請求項9に記載の装置。

請求項15

計算手段は、第1のマルチプレクサの出力および第2のマルチプレクサの出力を受取り、第1のマルチプレクサの出力マイナス第2のマルチプレクサの出力に等しい値を出力する第1の減算器と、第5のレジスタにストアされる値HVおよび第1の減算器の出力を受取り、第1の減算器の出力で乗算される値HVに等しい値を有する信号を出力する乗算器と、乗算器の出力および第3のマルチプレクサの出力を受取り、第3のマルチプレクサの出力で除算される乗算器の出力に等しい値を有する信号を出力する除算器とを含む、請求項10に記載の装置。

請求項16

計算手段は、第1のマルチプレクサからの出力Aおよび第2のマルチプレクサから出力される出力Bを受取り、値A−Bを出力する減算器と、減算器からの出力A−Bおよび第3のマルチプレクサからの値Dを受取り、m+nビットで表わされる値D*(A−B)を出力するマルチプレクサとを含む、請求項11に記載の装置。

請求項17

計算手段は、第1のマルチプレクサからの出力Aおよび第2のマルチプレクサから出力される出力Bを受取り、値A−Bを出力する減算器と、減算器からの出力A−Bおよび第3のマルチプレクサからの値Dを受取り、m+nビットで表わされる値D*(A−B)を出力するマルチプレクサとを含む、請求項12に記載の装置。

請求項18

ファジイ規則の前件部の帰属度αを計算するための装置であって、入力値I、メンバシップ関数を規定する三角形の頂点の論議の領域における位置を規定する値CV、頂点の位置CVと、メンバシップ関数を規定する三角形の左辺と論議の領域の軸との交点との間の第1の距離を規定する値LVD、頂点の位置CVと、メンバシップ関数を規定する三角形の右辺と論議の領域の軸との交点との間の第2の距離を規定する値RVD、前記三角形の第1の高さの値HV、および前記三角形で規定される台形の第2の高さの値HTをストアするためのストア手段と、ストア手段に接続され、IとCVとを比較し、I>CVであれば第1の値の出力を出力し、さもなければ第2の値の出力を出力するための比較手段と、比較手段およびストア手段に接続され、比較手段の出力が第1の値であれば値a=(HV*(CV−I+RVD))/RVDを計算および出力し、さもなければa=(HV*(I−CV+LVD))/LVDを出力する第1の計算手段と、第1の計算手段およびストア手段に接続され、a>HTであればHTに等しい値αを計算および出力し、さもなければ値α=aを出力するための第2の計算手段とを含む、帰属度αを計算するための装置。

請求項19

メンバシップ関数を規定するパラメータをストアする装置における入力値Iの帰属度αを決定する方法であって、装置は、メンバシップ関数を規定する三角形の頂点の論議の領域における位置を規定する値CV、頂点の位置CVと、メンバシップ関数を規定する三角形の左辺と論議の領域の軸との交点との間の第1の距離を規定する値LVD、頂点の位置CVと、メンバシップ関数を規定する三角形の右辺と論議の領域の軸との交点との間の第2の距離を規定する値RVD、前記三角形の第1の高さの値HV、および前記三角形により規定される台形の第2の高さの値HTをストアし、入力値Iを頂点の位置CVと比較するステップと、I>CVであれば値a=(HV*(CV−I+RVD))/RVDを計算し、さもなければa=(HV*(I−CV+LVD))/LVDを計算するステップと、a>HTであれば値α=HTを出力し、さもなければ値α=aを出力するステップとを含む、帰属度αを決定する方法。

請求項20

メンバシップ関数を規定するパラメータをストアする装置における入力値Iの帰属度αを決定する方法であって、装置は、メンバシップ関数を規定する三角形の頂点の論議の領域における位置を規定する値CV、頂点の位置CVと、メンバシップ関数を規定する三角形の左辺と論議の領域の軸との交点との間の第1の距離を規定する値LVD、頂点の位置CVと、メンバシップ関数を規定する三角形の右辺と論議の領域の軸との交点との間の第2の距離を規定する値RVD、前記三角形の第1の高さの値HV、および前記三角形により規定される台形の第2の高さの値HTをストアし、入力値Iを頂点の位置CVと比較するステップと、I>CVであれば値A1=(HV*(I−CV))/RVDを計算し、さもなければA1=(HV*(CV−I))/LVDを計算するステップと、A1≦HVであれば値a=HV−A1を計算し、さもなければa=0に設定するステップと、a>HTであればα=HTを出力し、さもなければα=aを出力するステップとを含む、帰属度αを決定する方法。

請求項21

メンバシップ関数を規定するパラメータをストアする装置における入力値Iの帰属度αを決定する方法であって、装置は、メンバシップ関数を規定する三角形の頂点の論議の領域における位置を規定する値CV、最大の真理度を2n で乗算し、論議の領域における頂点の前記位置と、メンバシップ関数を規定する三角形の左辺と論議の領域の軸との交点との間の第1の距離で除算したものに等しい定数KL、最大の真理度を2n で乗算し、論議の領域における頂点の前記位置と、メンバシップ関数を規定する三角形の右辺と論議の領域の軸との交点との間の第2の距離で除算したものに等しい定数KR、前記三角形の第1の高さの値HV、および前記三角形により規定される台形の第2の高さの値HTをストアし、入力値Iと頂点の位置CVとを比較するステップと、I>CVならば値C=(KR*(I−CV))を計算し、さもなければC=(KL*(CV−I))を計算するステップと、A1=C/2n を計算および出力するステップと、A1≦HVならば値a=HV−A1を計算し、さもなければa=0を設定するステップと、a>HTならばα=HTを計算および出力し、さもなければα=aを出力するステップとを含む、帰属度αを決定する方法。

請求項22

メンバシップ関数を規定するパラメータをストアする装置における入力値Iの帰属度αを決定する方法であって、装置は、入力値I、メンバシップ関数を規定する三角形の頂点の論議の領域における位置を規定する値CV、最大の真理度を2n で乗算し、論議の領域における頂点の前記位置と、メンバシップ関数を規定する三角形の左辺と論議の領域の軸との交点との間の第1の距離で除算したものに等しい定数KL、最大の真理度を2n で乗算し、論議の領域における頂点の前記位置と、メンバシップ関数を規定する三角形の右辺と論議の領域の軸との交点との間の第2の距離で除算したものに等しい定数KR、前記三角形の第1の高さの値HV、および前記三角形により規定される台形の第2の高さの値HTをストアし、入力値Iと頂点の位置CVとを比較するステップと、I>CVならば値C=(KR* (I−CV))を計算および出力し、さもなければC=(KL*(CV−I))を出力するステップと、値A1=C/2n を計算および出力するステップと、A1≦rであれば値〜α=A1を計算し、さもなければ〜α=rを設定するステップと、α=r−〜αを出力するステップとを含む、帰属度αを決定する方法。

技術分野

0001

本発明は、メンバシップ関数ストアするための方法、およびファジイ規則前件帰属度を計算するための、関連の回路に関する。

0002

ファジイ規則は前件部分と後件部分または結論とから構成される。前件部分は入力の値をもとにして決定されるそれ自身の帰属度を有し、かつその規則そのもののセマンティクスに従う。

0003

前件部分は複数の項で構成することができる。ファジイ論理における意味に従い個々の項の重みを決定するためには、メンバシップ関数と包括的な入力との交わり最高値を決定することが必要である。

0004

一般に帰属度αは以下のように定義づけられる。
α=maxx {min[A,A′]}
図1に示すようにAおよびA′はそれぞれ入力集合および対応するメンバシップ関数を示す。

0005

図2を参照すると、クリスプな入力の場合、値αは等式UdD=I(Iはシステムの入力、UdDは論議の領域)で規定される直線Aとメンバシップ関数A′との交わりにより生じる部分で決定する。

0006

この計算を行なうには、ハードウェアという観点からすれば最も簡単でかつ経済的な態様で回路的に入力に対し交わりを求めることが可能となるように、図1の例では三角形の形状を有するメンバシップ関数をストアする方法を用いることが必要である。

0007

メンバシップ関数のストアおよびそのファジイ化には種々の方法がある。その1つはルックアップテーブルという手段によりメンバシップ関数のすべてのポイントをストアすることである。

0008

別の方法は三角形の勾配および中央の頂点により三角形のメンバシップ関数をストアすることである。

0009

さらに別の方法は、雑誌ファジイ集合およびシステム(Fuzzy Sets and Systems)」、エルバイアサイエンス出版(Elsevier Science Publishers B.V.)、no.59 、1993、149-172 頁において発表された、B.T.チェン(Chen)らによる、論文パラメータ化されたファジイプロセッサおよびその応用(A Parameterized Fuzzy Processor and Its Applications)」で述べられているように、2つの頂点と、三角形の2つの辺と論議の領域(UdD)を表わす軸との交点の、最も近い頂点に対する距離とにより、台形のメンバシップ関数をストアすることである。

発明の概要

0010

本発明の目的はメンバシップ関数をストアする方法、および簡単かつ経済的な態様でメンバシップ関数と入力との交わりを決定する、ファジイ規則の前件部分の帰属度を計算するための関連の回路を提供することである。

0011

本発明の目的は、用いられるビット数が過大でないメンバシップ関数を表わす情報をストアする方法を提供することである。

0012

本発明の別の目的は、ファジイ規則の前件部分の帰属度αを計算するための、時間および計算上の簡潔さという点で有利である方法を提供することである。

0013

本発明のさらなる目的は、従来の回路よりも簡単でありそれゆえにより小さなシリコン領域で実現可能な、帰属度αを計算するための回路を提供することである。

0014

本発明のさらなる目的は、信頼性が非常に高く、比較的製造が簡単であり、コストの点で競争力のある方法および回路を提供することである。

0015

本明細書において以降で明らかになるこれらおよびその他の目的は、以下のステップを含むことを特徴とするメンバシップ関数をストアするための方法により達成され、そのステップとは、メンバシップ関数を規定する三角形の頂点の論議の領域における位置をストアするステップ、論議の領域におけるその頂点の位置と、メンバシップ関数を規定する三角形の左辺と論議の領域の軸との交点との間の第1の距離をストアするステップ、および論議の領域におけるその頂点の位置と、メンバシップ関数を規定する三角形の右辺と論議の領域の軸との交点との間の第2の距離をストアするステップである。

0016

さらに、ファジイ規則の前件部分の帰属度を計算するための装置は、入力値受取るための手段と、論議の領域における入力値の位置により規定されるメンバシップ関数を規定する相似な三角形の対応する辺の間で生じる幾何学的比率を採用することにより、入力値をファジイ化するための手段とを含む。

0017

本明細書において以降で明らかになるこれらおよびその他の目的はさらに、論議の領域における入力値の位置により規定される相似な三角形の対応する辺の間で生じる幾何学的比率を採用することにより入力変数をファジイ化するようにされた手段を含むことを特徴とする、ファジイ規則の前件の帰属度を計算するための回路を用いて達成される。

0018

本発明の特徴および利点は、添付の図面を参照して例示される、好ましい非制限的な実施例の説明から明らかになるであろう。

詳細な説明

0019

メンバシップ関数(MF)を表わすには、メンバシップ関数のいくつかのパラメータをストアすることが必要である。これらのパラメータはビット数に関してコストをできるだけ低くするために注意深く選択しなければならない。通常は、導入されるビット数が大きいほど、表わすことができるメンバシップ関数の数も多くなる。

0020

第1に、三角形および台形で表わされるメンバシップ関数をストアすることについて考察する。

0021

本発明に従う台形に対するストア方法は、台形は載頭三角形であるとみなすことができることに基づく。

0022

図3を参照して、台形で表わされるメンバシップ関数を曖昧な点なく識別することを可能にする特性パラメータは、論議の領域UdDにおける頂点CVの位置、頂点CVに関する距離すなわち距離LVDおよびRVD、三角形の高さHV、台形の高さHT、ならびに真理度の最大値maxである。

0023

図30に示すように、メモリワードはこれら特性パラメータをストアできる。5つのパラメータがあり以下のように定義される。

0024

論議の領域UdDにおける頂点の位置CVは台形のメンバシップ関数を規定する三角形の頂点である。

0025

頂点CVと、メンバシップ関数と論議の領域の軸との交点との間の、その軸に沿う左側の距離LVD。

0026

頂点CVと、メンバシップ関数と論議の領域UdDの軸との交点との間の、その軸に沿う右側の距離RVD。

0027

メンバシップ関数を表わすのに用いられる三角形の高さHVおよびメンバシップ関数の高さHT。

0028

真理度の最大値max、すなわちメンバシップ関数がとることのできる最大値は、すべてのメンバシップ関数について既知の値である。

0029

値HTは常にmaxの値以下である。上記のパラメータの大きさは、表わされるメンバシップ関数の数の関数である。したがって本明細書における説明では、用いるビットについて最適な大きさを限定することも特定することもしない。しかしながら、数多くのメンバシップ関数を有するためには、CVはUdDを離散化するビット数に等しいビット数を有し、LVDおよびRVDは真理度すなわちmaxという値を離散化するビット数以上のビット数を有し、HVは真理度を離散化するビット数よりも大きなビット数を有し、HTは真理度を離散化するビット数に等しいビット数を有することが好ましい。

0030

上記の好ましい条件は本明細書において満たされるものと仮定され、さらなる説明は行なわない。

0031

上記のパラメータのビット数を増大させずに縮退したメンバシップ関数を表わすために以下の条件を設定する。

0032

a)LVDまたはRVDが0に等しければ、メンバシップ関数のプロットは対応する左または右の辺において水平である。

0033

b) もしLVDおよびRVD双方が0に等しければ、メンバシップ関数のプロットはUdDにわたり水平であり、真理度はメンバシップ関数の高さHTを示すビットにより示される値に等しい。

0034

c) もし左辺または右辺が完全に垂直であればLVDまたはRVD=0として表わすべきであるが、帰属度αの計算については同じ結果がもたらされるため、その代わりに最小の勾配を有する辺、すなわちLVDまたはRVD=1として表わす。

0035

HTおよびHVが変化するときには、論議の領域(UdD)を境界とする、台形のメンバシップ関数、三角形のメンバシップ関数、および五角形または六角形のメンバシップ関数を表わすことが可能である。

0036

表わすことができるすべてのメンバシップ関数を以下に列挙する。
(I)図4に示す台形のメンバシップ関数であり、平行な短辺が値HTにあり、HTは値maxに等しい(関数MF1)か、またはその値よりも小さい(関数MF2)。

0037

(II)図5に示す直角の台形タイプのメンバシップ関数であり、平行な短辺は真理度の最大値max以下である。なお、帰属度αの計算に際し、完全に垂直なメンバシップ関数は、勾配が最小である、すなわちLVD=RVD=1であるメンバシップ関数のようにふるまう。したがって、図5に示す,左辺が完全に垂直なメンバシップ関数MF1は、LVD=1として、すなわち勾配が最小であるとして規定される。一方関数MF2の右側の辺は完全に垂直であり、RVD=1として規定されるが、その理由は上記のように帰属度αの計算において同一のふるまいを有するからである。

0038

(III)図6に示すUdDを境界とする五角形または六角形タイプのメンバシップ関数であり、高さHTは真理度の値maxよりも小さい(MF2)かまたはその値に等しい(MF1)。

0039

(IV)図7に示す三角形タイプのメンバシップ関数であり、頂点の値は真理度の最大値maxよりも小さい(MF2)かまたはその値に等しい(MF1)。

0040

(V)図8に示す水平のメンバシップ関数。この場合値HTは帰属度αを示す。

0041

(VI)図9に示すようなクリスプなメンバシップ関数であり、CVを除き常に0であり、CVでは真理度の最大値maxをとる。これらのメンバシップ関数はLVD=RVD=0として表わすのがより論理的であるように思われるがそうではなくLVD=RVD=1として表わし、これはαの値の計算という点ではクリスプな関数のようなふるまいをしそういうものとして用いられるが、LVD=0またはRVD=0という取決めは水平な辺という意味を与えられる。

0042

帰属度αの計算、言い換えれば入力値のファジイ化は、相似な三角形の対応する辺の間において生じる幾何学的比率を採用することにより達成される。

0043

Iがファジイ化される入力でありI≦CVのとき、図10に示す状況が得られる。

0044

相似な三角形V−CV−LVおよびIP−I−LVに関し、その比を以下のように表わすことができる。

0045

a:(I−(CV−LVD))=HV:LVD
上記より以下となる。

0046

a=[HV*(I−CV−LVD))]/LVD
これが以下の条件を設定する。
a>HTならばα=HT,さもなければα=a。

0047

別の態様では、相似な直角三角形V−P−IPおよびV−CV−LVを考慮することによりαを計算できる。この場合以下のようになる。

0048

A1:HV=(CV−I):LVD
上記よりA1の値が得られる。

0049

A1=[HV*(CV−I)]/LVD
したがって、A1>HVであればa=0,さもなければa=HV−A1。

0050

この検査が行なわれるのは、もし入力IがLVよりも小さければこのようにして得られた値A1はHVよりも大きいためであり、この場合αの値は0である。

0051

さらに、a>HTであればα=HT,さもなければα=a。I>CVという条件については、この状況は図11に示すものに似ている。相似な直角三角形V−CV−RVおよびIP−I−RVに関し、比を以下のように表わすことができる。

0052

a:(CV+RVD−I)=HV:RVD
上記より以下が得られる。

0053

a=[HV*(CV+RVD−I)]/RVD
したがってa>HTであればα=HT,さもなければα=a。

0054

この場合もまた、αは、相似な直角三角形V−P−IPおよびV−CV−RVを考慮することにより別の態様で計算できる。この場合以下が得られる。

0055

A1:HV=(I−CV):RVD
上記の比よりA1の値が得られる。

0056

A1=[HV*(I−CV)]/RVD
したがって、もしA1>HVであればa=0,さもなければa=HV−A1。

0057

もし入力IがRVよりも大きければこのようにして得られた値A1はHVよりも大きいためこの検査が行なわれる。この場合、αの値は0である。

0058

さらに、もしa>HTであればα=HT,さもなければα=a。結論として、上記の説明に従えば、αの値は以下の公式によって計算可能である。もし入力IがCV以下であれば、次のようになる。

0059

a=[HV*(I−CV+LVD)]/LVD (1)
もしa>HTであればα=HT,さもなければα=a。もし入力IがCVよりも大きければ以下のようになる。

0060

a=[HV*(CV−I+RVD)]/RVD (2)
もしa>HTであればα=HT,さもなければα=a。

0061

上記の公式では、計算に用いられるデバイス内部で2つの減算、1つの乗算および1つの除算を行なうことが必要である。なお、一旦メンバシップ関数が設定されれば、値CV、HV、HT、LVD、およびRVDは固定されるが、入力値Iは変化する。

0062

等式(1)および(2)の形式が似ているため、本発明に従う方法の第1の実施例に対する計算アルゴリズムフローチャート図12に示すものと同様である。

0063

始めに、入力Iがブロック1に与えられ、与えられた入力値がCVよりも大きいかどうかが検査される。CV以下であれば、ブロック2は等式(1)のパラメータをパラメータA、B、およびD(具体的にはA=I、B=CV、およびD=LVD)に割当てる。そうでなくもしI>CVであれば、ブロック3により等式(2)のパラメータがパラメータA、BおよびDに割当てられる(具体的にはA=CV、B=I、およびD=RVD)。

0064

ブロック4はブロック2および3のパラメータA、B、およびDを用いて等式(1)および(2)の一般公式すなわち公式a=(HV*(A−B+D))/Dに導入する。

0065

メンバシップ関数を規定する三角形(図10および11参照)に基づいて決定された、入力値Iに対応する真理度の値である結果aは、ブロック5に送られ、aの値がHTの値よりも大きいかどうかがテストされる。もしそうであればブロック6により帰属度αはHTの値に設定され、もしaがHT以下であれば、ブロック7はαにaの値を割当てる。

0066

本発明に従う方法の第1の実施例に従いαの値を計算する回路のブロック図は図13に示される。

0067

この回路は入力値Iの現在の値がストアされる第1の入力レジスタ8を含む。LVD、CV、RVD、HVおよびHTの値をそれぞれストアするためのその他5つのレジスタ9−13がある。これらは問題のメンバシップ関数に関する値であり、入力変数Iが絶えず変化するときにも変化しない。

0068

入力変数Iのレジスタ8および値CVのレジスタ10は係数コンパレータ14に接続され、図12のブロック1の条件I>CVがテストされる。コンパレータ14により与えられる結果に基づき、マルチプレクサ15a−cはI、CVおよびLVDの値またはCV、I、およびRVDの値をパラメータA、BおよびDにそれぞれ割当てる。具体的には、マルチプレクサは図12のブロック2および3の機能を行なう。パラメータAおよびBの値をそれぞれ与えるマルチプレクサ15aおよび15bの出力は減算器16に送られて関数A−Bが生成される。減算器16の出力およびパラメータDを与えるマルチプレクサ15cの出力は、演算A−B+Dの結果を与える加算器17に送られる。加算器17の出力および値HVのレジスタ12の内容は乗算器18に送られ、関数HV*(A−B+D)の結果が生成される。乗算器18の出力およびマルチプレクサ15cにより与えられる値Dは除算器19に送られ、パラメータa=(HV*(A−B+D))/Dが与えられる。除算器19の出力は、レジスタ13に含まれるHTの値とともに第2の係数コンパレータに送られ、条件a>HTがテストされる。このようにして得られた結果に基づき、第4のマルチプレクサ21はHTの値またはaの値を帰属度αの値として与える。

0069

上記の第2の計算方法を用いた場合利用する公式は以下のとおりとなる。入力IがCV以下であれば、
A1=[HV*(CV−I)]/LVD(3)
A1>HVであればa=0でありさもなければa=HV−A1であり、a>HTであればα=HTさもなければα=aである。入力IがCVよりも大きければ、
A1=[HV*(I−CV)]/RVD (4)
A1>HVであればa=0でありさもなければa=HV−A1となり、a>HTであればα=HTでありさもなければα=aである。

0070

これらの公式では計算に用いる回路内部で2つの減算、1つの乗算および1つの除算を行なうことが必要である。この方法の第1の実施例のように、メンバシップ関数は値CV、HV、HT、LVD、およびRVDを用いて設定されるが、入力値Iは変化する。

0071

本発明に従う方法の第2の実施例のフローチャートは図14に示される。始めに入力Iがブロック22に与えられ、与えられた入力値がCVよりも大きいかどうかがテストされる。もしCV以下であれば、ブロック23は等式(3)のパラメータをパラメータA、BおよびDに割当てる(具体的にはA=CV、B=I、D=LVD)。そうでなくI>CVであれば、等式(4)のパラメータがブロック24によりパラメータA、BおよびDに割当てられる(具体的にはA=I、B=CV、D=RVD)。

0072

ブロック25はブロック23および24のパラメータA、BおよびDを用い、これらを等式(3)および(4)の一般公式すなわち公式A1=(HV*(A−B))/Dに導入する。

0073

値(HV−a)に等しい結果A1(図10および11参照)はブロック26に送られ、このA1の値がHVの値よりも大きいかどうかがテストされる。そうであればブロック27により値aは0に設定され、もしA1の値がHV以下であればブロック28は(HV−A)の値をaに割当てる。

0074

結果aはブロック29に送られ、aの値がHTの値よりも大きいかどうかがテストされる。もしそうであれば、帰属度αがブロック30によりHTの値に設定される。HT以下であれば、ブロック31はaの値をαに割当てる。

0075

本発明による方法の第2の実施例に従いαの値を計算する回路のブロック図が図15に示される。

0076

前述の場合と同様、入力変数Iはレジスタ8にストアされ、LVD、CV、RVD、HVおよびHTの値はそれぞれレジスタ9−13にストアされる。係数コンパレータ14は条件I>CVをテストし、マルチプレクサ15a−cは等式(3)および(4)の値をそれぞれパラメータA、BおよびDに割当てる。具体的には、条件I>CVが満たされれば、等式(4)のパラメータがパラメータA、B、およびDに割当てられる、すなわちA=I、B=CV、およびD=RVDとなる。条件I>CVが満たされなければ、等式(3)のパラメータがパラメータA、B、およびDに割当てられる、すなわちA=CV、B=I、および、D=LVDとなる。

0077

マルチプレクサ15aおよび15bの出力は減算器16に送られ、関数A−Bが計算される。減算器16の出力は、レジスタ12に含まれる値とともに乗算器32に送られ、関数HV*(A−B)が計算される。乗算器32の出力はマルチプレクサ15cの出力とともに除算器33に送られ、関数A1=(HV*(A−B))/Dの結果が与えられる。A1の値は、レジスタ12にストアされるHVの値とともに第2の係数コンパレータ34に送られ、比較A1>HVが行なわれる。このようにして得られた結果に基づき、第4のマルチプレクサ35は、減算器36が計算したHV−A1の値または0(論理0)の値を変数aに割当てる。

0078

変数aの値は、レジスタ13にストアされるHTの値とともに第3の係数コンパレータ36に送られ、条件a>HTがテストされる。得られた結果に基づき、第4のマルチプレクサ35の出力およびレジスタ13の出力を入力として受取る第5のマルチプレクサ37はaの値またはHTの値を帰属度αに割当てる。

0079

本発明の第2の実施例では、ハードウェアによる実行は前回のものより複雑である。本発明の第3の実施例は、以下で説明するようにさらなる簡素化をもたらし、帰属度αの計算についてはより優れた結果に繋がるものである。

0080

αの計算に用いられるハードウェア面積をさらに簡素化し減少させるために、より改良を加えてハードウェア除算器をバイナリ算術シフト論理に変え、ストアされるパラメータを変更する。

0081

LVDおよびRVDの最大値をLVD=RVD=2n −1とする、すなわちLVDおよびRVDをnビットで表わすとすると、以下の定数が導入される。

0082

KL=(HV*2n )/LVD
KR=(HV*2n )/RVD
本発明に従う方法の第1の実施例を改良したものでは、メンバシップ関数の重要なパラメータとして以下の値をストアする必要がある。KL,LVD,CV,KR,RVD,HT、αを計算するための公式は下記のとおりとなる。I≦CVであれば、
a=[KL*(I−CV+LVD)]/2n (5)
a>HTであればα=HT,さもなければα=a。I>CVであれば、
a=[KR*(CV+RVD−I)]/2n (6)
a>HTであればα=HT,さもなければα=a。

0083

上記の公式では計算を行なうデバイス内部で、1つの減算、1つの加算、1つの乗算および1つのnビットの右方シフトが必要である。

0084

本発明の従う方法の第2の実施例を改良したものでは、以下の値のみがメンバシップ関数の重要なパラメータとしてストアされるため、よりよい結果が得られる。KL,CV,KR,HV,HT、αを計算するための公式は下記どおりとなる。I≦CVならば、
A1=[KL*(CV−I)]/2n (7)
A1>HVであればa=0,さもなければa=HV−A1。a>HTであればα=HT,さもなければα=a。I>CVならば、
A1=[KR*(I−CV)]/2n (8)
A1>HVならばa=0,さもなければa=HV−A1、a>HTならばα=HT,さもなければα=a。

0085

このように、計算を行なうデバイス内部では2つの減算器および1つの乗算器しかなく、値LVDまたはRVDでの除算は2n での除算に置換えられる。

0086

定数KLおよびKRを導入する利点は、単にnビットの右方向論理シフトという手段により2n での除算を行なうことが可能だということである。ハードウェアでは、これは乗算器の出力バスの下位nビットを切捨てることにより行なわれる。

0087

しかしながら、下位nビットを切捨てることにより、2n による整数の除算を行なうと剰余は切捨てられたnビットで構成されることになる。精度を向上させるためには、整数の除算、この場合2n による除算は、切捨て近似または切上げ近似により行なうことができる。もし剰余が除数の半分よりも小さければつまり2n-1 より小さければ、切捨て近似が行なわれ、商が直接とられる。剰余が2n-1 以上であれば、切上げ近似が行なわれ、商に1が加えられる。ハードウェアでは、この近似を用いた除算は、単に下位nビットを切捨て、切捨てられたn番目のビットすなわち切捨てられたnビットのうち最上位ビットを加えることにより行なわれるが、その理由はもしn番目のビットが1であれば剰余(すなわち切捨てられたnビット)は2n-1 以上であり、したがって商に1を加えることにより切上げ近似が行なわれ、そうでなければ0を加えることにより切捨て近似が行なわれるからである。

0088

なお、定数KLおよびKRを導入することにより、計算を行なうデバイス内部では除算が省かれ、一方、メンバシップ関数を識別するパラメータはLVD、CV、RVD、HV、およびHTである。

0089

コンパイル時にソフトウェアにおいて行なわれるKLまたはKRの計算では、2n での乗算が行なわれ、コンパイル時には常に切上げまたは切捨て近似を用いた整数の除算として行なわれる、LVDまたはRVDによる整数の除算において精度を失うことが回避される。

0090

本発明に従う方法の第2の実施例を改良したもののフローチャートは図16に示される。

0091

始めに、ブロック38で条件I>CVがテストされる。この条件が真であれば、等式(8)のパラメータがブロック39によりパラメータA、BおよびDに割当てられる、すなわちA=I、B=CV、およびD=KRとなる。条件I>CVがであれば、等式(7)の値がブロック40によりパラメータA、BおよびDに割当てられる、すなわちA=CV、B=IおよびD=KLとなる。

0092

次にブロック41によりパラメータA、BおよびDが等式(7)および(8)の一般公式、すなわち公式C=(D*(A−B))に導入される。値Cはブロック42に送られ、図10および11の値A1が決定される。下位nビットは値Cから切捨てられ、切捨てられた下位nビットのうち最上位ビットが結果に加えられる。この態様で値A1が得られ、ブロック43に送られ、条件A1>HVがテストされる。この条件が満たされれば、値aがブロック44により0に設定される。もし条件A1>HVが偽であれば、値aはブロック45により(HV−A1)に設定される。

0093

aの値はブロック46に送られ、条件a>HTがテストされる。この条件が満たされていれば、帰属度αはブロック47によりHTの値に設定される。条件a>HTが偽であれば、帰属度αはブロック53によりaの値に設定される。

0094

図16のこの発明に従う方法の第2の実施例の改良されたものである第2の実施例のアクティベーション回路のブロック図は図17に示される。

0095

この回路は、図15に示される本発明に従う方法の第2の実施例のアクティベーションに対する回路とほぼ同一であるが、例外はメンバシップ関数のストアされたパラメータが、レジスタ9−13にそれぞれストアされるKL、CV、KR、HV、およびHTであるということである。他の相違は除算器33が加算器48に代えられ、2n での除算により切捨てられなかったビットおよび使用されていない切捨てられた下位nビットの最上位ビットを入力として受取ることである。

0096

特に、係数コンパレータ14は条件I>CVをテストし、今度は得られた結果をもとにして、等式(7)および(8)のパラメータのパラメータA、B、およびDへの割当て、すなわち図16のブロック39および40による機能を行なうマルチプレクサ15a−cを駆動する。パラメータAおよびBの値はマルチプレクサ15aおよび15bにより減算器回路16に送られ、関数A−Bが計算される。この関数の結果はマルチプレクサ15cから生じるパラメータDの値とともに乗算器32により乗算される。乗算器32の出力では、下位nビットはその最上位ビットを除いて切捨てられ、最上位ビットは加算器48により乗算器32の出力に加えられる。この態様で、図10および11のパラメータA1が得られ、次に図15の実施例で処理される。

0097

論議の領域の境界での三角形および五角形または六角形のメンバシップ関数のパラメータのストア、ならびにそれに対応するαの値の計算について以下に説明する。

0098

上記のメンバシップ関数をストアすることにより、より多くの数のメンバシップ関数を表わすことができる。さらに、メンバシップ関数を表わすパラメータに制限を加えることにより、より少数情報ビットでメンバシップ関数のサブセットを表わすことが可能になる。以下の説明では種々の可能なケースすべてについて言及せず、メンバシップ関数と情報ビットとの比率が非常に高い特定的なケースについてのみ説明する。しかしながら、当業者はこれがその他のケースについていかにして可能となるかを理解するであろう。

0099

台形のメンバシップ関数の説明では、三角形および台形の高さをストアし、HV=HT=真理度の値maxと仮定することにより、より少数の情報ビットで、頂点が真理度の最大値にある、UdDの境界での三角形、五角形または直角の台形のメンバシップ関数を表わすことが可能である。

0100

この場合、メンバシップ関数の表現は、メンバシップ関数の3つの特性パラメータのみをストアし、メンバシップ関数の頂点の高さを真理度の値maxに設定することに基づく。

0101

メンバシップ関数を曖昧な点なく識別するのに用いられる特性パラメータは、UdDにおける頂点CVの位置、および三角形の2つの辺とUdDを表わす軸との交点のポイントの、頂点に対する距離、すなわち距離LVDおよびRVDである。これらのパラメータは各々上記のとおりであり、図18に示されている。

0102

図31に示すように、メモリワードは特性LVD、CVおよびRVDをストアすることができる。すべてのメンバシップ関数にとって既知の値であるため、真理度の最大値maxを含む必要はない。

0103

3つのパラメータのビットによる大きさは、表わされるべきメンバシップ関数の数の関数である。CVはUdDを離散化するビット数に等しいビット数を有することが好ましく、より多くの数のメンバシップ関数を有するためには、LVDおよびRVDはそれ以上のビット数を有する。

0104

上記のパラメータのビット数を増加させずに縮退したメンバシップ関数を表わすには、下記の条件が設定される。

0105

a)LVDまたはRVDが0に等しければ、メンバシップ関数のプロットは対応する左または右の辺において水平である。

0106

b)LVDおよびRVDが双方0に等しければ以下の2つのケースがある。
(i)CVを規定するビット数が真理度を表わすビット数以上であれば、CVの値は直接αの値となる。つまり、メンバシップ関数のプロットはUdDにわたり水平であり、真理度はCVで示される値に等しい。

0107

(ii)CVを規定するビット数が真理度を表わすビット数よりも小さければ、以下2つの方法で進行することが可能である。

0108

CVが0でない場合に完全に値maxにあるメンバシップ関数を扱っているのか、またはCV=0である場合に完全に値0にある関数を扱っているのかをCVの値が示す、またはCVの値は適切に離散化されたαの値を与える。言い換えれば、メンバシップ関数のプロットはUdDにわたり水平であり、真理度は、CVの最大値で除算される最大の真理度として計算される離散化パラメータにより乗算されたCVで表わされる値に等しい。

0109

CVはUdDを離散化するビット数に等しいビット数を有し、LVDおよびRVDはそれ以上のビット数を有すると仮定すると、メンバシップ関数は以下のように表わすことができる。

0110

(i)図19に示すように、頂点が真理度の最大値にある三角形タイプのすべてのメンバシップ関数。

0111

(ii)図20に示すように、距離LVDおよびRVDに制限が加えられた、UdDを境界とする五角形タイプのすべてのメンバシップ関数。

0112

(iii)図21に示すように、LVDおよびRVDの距離に制限が加えられた、直角の台形タイプの形状のすべてのメンバシップ関数。

0113

(iv) 以下のように規定される縮退したメンバシップ関数。
a)CVを規定するビット数が真理度を表わすビット数以上であれば、CVの値は直接αの値を生み出す。すなわち、メンバシップ関数のプロットはUdDにわたり水平であり、真理度は図21に示すようにCVで示される値に等しい。

0114

b)CVを規定するビット数が真理度を表わすビット数よりも小さければ、以下の2つの場合がある。

0115

図23に示すように、CVが0でない場合に、完全に値maxにあるメンバシップ関数(MF1)を扱っているのか、またはCV=0である場合に、完全に値0にあるメンバシップ関数(MF2)を扱っているのかをCVの値が示し、または、CVの値が適切に離散化されたαの値を生じさせる。言い換えれば、図24に示すように、メンバシップ関数のプロットはUdDにわたり水平であり、真理度は、CVの最大値で除算された最大の真理度として計算される離散化パラメータKにより乗算されたCVで示される値に等しい。

0116

(v) すべてがクリスプなメンバシップ関数である。すなわち、図25に示すように、真理の値maxをとる、CVを除いては常に0であるメンバシップ関数である。クリスプなメンバシップ関数はLVD=RVD=0で表わすのが論理的であるように思われるが、そうはされない。その理由は、メンバシップ関数LVD=RVD=1は、αの値の計算についてクリスプな関数のようにふるまうため、クリスプな関数として用いられるのに対し、LVD=0またはRVD=0という取決めは水平な辺の意味を与えられるからである。

0117

三角形のメンバシップ関数の場合、αの値は上記のケースと同じ態様で計算されるが、例外は、得られる値が直接値αであるため、HTとの比較が行なわれないことである。αの値を計算するための公式は、縮退した関数のうち完全に最大値maxにあるもののみを採用し、LVD=RVD=0およびCVの何らかの値で表わすと規定される上記のメンバシップ関数を考慮して、以下で与えられる。

0118

図26を参照して、Iが入力変数の値であり、rが真理度の値maxであれば、相似な三角形の対応する辺の間で発生する幾何学的比率を採用することにより、入力値のファジイ化が行なわれる。

0119

I>CVであれば、相似な直角三角形V−CV−RVおよびIP−I−RVに関する比率は以下のとおりである。

0120

α:(CV+RVD−I)=r:RVD
上記より以下のようになる。

0121

α=[r*(CV+RVD−i)]/RVD (9)
この場合値αは直接得られる。

0122

計算されるファジイ規則は、αの値と、最大の真理度に関するαの相補的な値として計算されるαの否定(〜α)とを含む、すなわち〜α=r−αである。なお「〜」は否定を表わす。ハードウェアを簡素化するために、否定(〜α)を直接計算し、任意の値αを得ることが可能である。相似な直角三角形V−CV−RVおよびV−P−IPを参照して、比は以下のように示される。

0123

A1:r=(I−CV):RVD
Aの値は上記より得られる。

0124

A1=[r*(I−CV)]/RVD (10)
A1>rであれば〜α=r,さもなければ〜α=A1。

0125

入力IがRVよりも大きければ、得られるA1の値はrよりも大きいため、この最後の検査が行なわれる。この場合値〜αは真理度の値maxに等しい、すなわちrに等しい。

0126

その代わりにαの値は以下のとおりとなる。
α=r−〜α
図27を参照して、LVDを用いることにより、左側のI≦CVに対しても同じ理由づけがあてはまる

0127

相似な直角三角形V−CV−LVおよびIP−IL−Vに関し、以下の比で表わすことが可能である。

0128

α:(I−(CV−LVD))=r:LVD
上記より、
α=[r*(I−(CV−LVD))]/LVD (11)
この場合値αは直接得られる。その代わり、αの否定(〜α)の値を計算することもまた有利であるため、相似な直角三角形V−CV−LVおよびV−P−IPに関し以下の比で表わすことができる。

0129

A1:r=(CV−I):LVD
上記より、
A1=[r*(CV−I)]/LVD (12)
A1>rであれば〜α=r,さもなければ〜α=A1。

0130

上記に従い、以下の公式を用いて否定〜αの計算が行なわれる。IがCV以下であれば以下が導かれる。

0131

A1=[r*(CV−I)]/LVD(12)
A1>rであれば〜α=r,さもなければ〜α=A1。入力IがCVより大きければ、
A1=[r*(I−CV)]/RVD (10)
A1>rであれば〜α=r,さもなければ〜α=A1。

0132

上記2つの公式では、チップ内部で1つの減算、1つの乗算、および1つの除算を行なうことが必要である。なお、メンバシップ関数が一旦設定されればCV、LVD、およびRVDの値は設定されるが入力値Iは変化する。

0133

この場合もまた、αの値の計算に用いられるハードウェア面積のさらなる簡素化および減少のために、より改良が加えられてハードウェアの除算器を算術シフトに換える。

0134

LVDおよびRVDの最大値がLVD=RVD=2n −1と仮定すると、以下の定数が導入される。

0135

KL=(r*2n )/LVD
KR=(r*2n )/RVD
メンバシップ関数の重要なパラメータとして以下の値がストアされる。
KL、CV、KR、
したがってαを計算するための公式は以下のとおりである。IがCV以下であれば、
A1=[KL*(CV−I)]/2n (13)
A1>rであれば〜α=r,さもなければ〜α=A1。IがCVよりも大きければ、
A1=[KR*(I−CV)]/2n (14)
A1>rであれば〜α=r,さもなければ〜α=A1。

0136

このように、チップは1つの減算器および1つの乗算器しか含まず、一方除算はnビットの右方向の論理シフトに換えられており、これはハードウェアでは乗算器の出力バスの下位nビットを単に切捨てることにより行なわれる。

0137

定数KLおよびKRを導入することによりチップ内部で除算が省かれているが、メンバシップ関数を識別するパラメータはLVD、CVおよびRVDである。

0138

コンパイル時にソフトウェアにおいて行なわれるKLまたはKRの計算において、2n での乗算は、コンパイル時には常に切上げまたは切捨て近似を用いて整数による除算として行なわれる、LVDまたはRVDによる整数の除算において精度が失われるのを回避するために行なわれる。

0139

最後の公式に基づく本発明に従う方法の第3の改良された実施例のフローチャートが図28に示される。

0140

はじめに、ブロック38で条件I>CVをテストする。このテストの結果が正しければ、ブロック39は公式(14)の値をパラメータA、BおよびDに割当てる。I>CVが満たされなければ、公式(13)の値がブロック40によりパラメータA、B、およびDに割当てられる。

0141

次にブロック41で公式(13)および(14)の一般公式の一部である、値C=(D*(A−B))を計算する。値Cはブロック42に送られ、最初に下位nビットが切捨てられ、切捨てられたnビットのうち最上位ビットが結果に加えられる。

0142

こうしてA1の値が生成され、ブロック43により条件A1>rにおいて比較される。この比較の結果が正しければ、rの値はブロック44によりαの否定(〜α)の値に割当てられる。条件A1>rが満たされなければ、ブロック45はA1の値を〜αの値に割当てる。

0143

図29は回路が図28に示す方法を実行するための実施例を示す。前記の回路のように、入力変数Iはレジスタ8にストアされ、メンバシップ関数の特性パラメータKL、CVおよびKRはそれぞれレジスタ9−11にストアされる。値rは、すべてのメンバシップ関数に対して等しく、レジスタ50にストアされる。

0144

係数コンパレータ14は条件I>CVをテストする。得られた結果に基づき、マルチプレクサ15a−cにより、公式(13)または(14)の値がそれぞれパラメータA、BおよびDに割当てられる。マルチプレクサ15aおよび15bにより与えられた値AおよびBは減算器16により減算される(A−B)。この演算の結果は乗算器32に送られ、マルチプレクサ15cにより与えられるDの値により値(A−B)を乗算する。乗算器32の出力では、下位nビットが切り捨てられ、下位nビットのうち最上位ビットが加算器49によりその結果に加えられる。加算器49の出力は図26および27の値A1である。条件A1>rであれば、この値は比較器51により、レジスタ50から与えられるrの値と比較される。得られた結果に基づき、マルチプレクサ52はαの否定の値(〜α)にrの値またはA1の値を与える。次のαの計算は明らかであり、公式α=r=〜αを用いて実施可能である。

0145

上記の説明より、本発明が意図する目的を達成することは明らかである。公式(9)および(11)により規定される本発明に従う方法の実施例、すなわち図28および29の方法および回路の改良されていないものに対応する回路およびフローチャートを当業者が開発することはもちろん可能である。

0146

上記は本発明の少なくとも1つの実施例であるが、種々の変形、修正形、および改良形が当業者により考案されるであろう。係る変形、修正形および改良形は本発明の精神および範疇内であることが意図される。したがって、前述の説明は例示にすぎず制限を意図するものではない。本発明は前掲の特許請求の範囲およびその等価物によって規定されるようにのみ制限される。

図面の簡単な説明

0147

図1包括的な入力とメンバシップ関数との交わりの例を表わす図である。
図2クリスプな入力とメンバシップ関数との交わりの例を示す図である。
図3台形のタイプのメンバシップ関数をパラメータで表わす図である。
図4可能な台形タイプのメンバシップ関数をパラメータで表わす図である。
図5可能な直角の台形タイプのメンバシップ関数をパラメータで表わす図である。
図6論議の領域の境界で形成される、可能な五角形または六角形タイプのメンバシップ関数をパラメータで表わす図である。
図7可能な三角形タイプのメンバシップ関数をパラメータで表わす図である。
図8可能な水平タイプのメンバシップ関数をパラメータで表わす図である。
図9可能なクリスプタイプのメンバシップ関数をパラメータで表わす図である。
図10条件I≦CVに対し、相似な三角形を用いて帰属度αを計算するのに用いられるメンバシップ関数をパラメータで表わす図である。
図11条件I>CVに対し、相似な三角形を用いて帰属度αを計算するのに用いられるメンバシップ関数をパラメータで表わす別の図である。
図12帰属度αを計算するのに用いられる、本発明に従う方法の第1の実施例のアルゴリズムのフローチャートである。
図13図12に示す方法の第1の実施例に関する、本発明に従う回路の第1の実施例の回路ブロック図である。
図14帰属度αを計算するのに用いられる、本発明に従う方法の第2の実施例のアルゴリズムのフローチャートである。
図15図14に示す方法の第1の実施例に関する、本発明に従う回路の第2の実施例の回路ブロック図である。
図16図14に示す本発明に従う方法の第2の実施例の改良されたもののフローチャートである。
図17図16に示す本発明に従う方法の第2の実施例の改良されたもののアクティベーション回路のブロック図である。
図18三角形のメンバシップ関数をパラメータで表わす図である。
図19頂点が真理度のピークにある三角形のメンバシップ関数の例を示す図である。
図20論議の領域を境界とする五角形タイプのメンバシップ関数の例を示す図であり、LVDおよびRVDに制限が加えられている。
図21直角の台形の形状を有するメンバシップ関数の例を示す図であり、LVDまたはRVDの距離に制限が加えられている。
図22CVを規定するビット数が真理度を表わすビット数以上である場合の水平のメンバシップ関数の例を示す図である。
図23CVを規定するビット数が真理度を表わすビット数よりも小さいときの水平のメンバシップ関数の第1のケースを示す図である。
図24CVを規定するビット数が真理度を表わすビット数よりも小さい場合の、水平のメンバシップ関数の第2のケースを例示する図である。
図25クリスプな関数の例を示す図である。
図26I>CVである三角形のメンバシップ関数をパラメータで表わす図である。
図27I≦CVである三角形のメンバシップ関数をパラメータで表わす図である。
図28αの否定を計算するのに用いられる、本発明に従う方法の第3の改良された実施例のフローチャートである。
図29図28に従う方法のアクティベーション回路の図である。
図30メンバシップ関数を表わすのに用いられるメモリワードの図である。
図31メンバシップ関数を表わすのに用いられるメモリワードの図である。

--

0148

14係数コンパレータ
16減算器
17加算器
18乗算器
19 除算器

ページトップへ

この技術を出願した法人

この技術を発明した人物

ページトップへ

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

関連する公募課題

ページトップへ

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

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

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

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

ページトップへ

おススメ サービス

おススメ astavisionコンテンツ

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

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

関連性が強い 技術一覧

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

関連性が強い人物一覧

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

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

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

関連する公募課題一覧

astavision 新着記事

サイト情報について

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

主たる情報の出典

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