JPH05197554A - 推論処理方法およびその装置 - Google Patents

推論処理方法およびその装置

Info

Publication number
JPH05197554A
JPH05197554A JP4259542A JP25954292A JPH05197554A JP H05197554 A JPH05197554 A JP H05197554A JP 4259542 A JP4259542 A JP 4259542A JP 25954292 A JP25954292 A JP 25954292A JP H05197554 A JPH05197554 A JP H05197554A
Authority
JP
Japan
Prior art keywords
working memory
information
memory element
inference
mutual
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP4259542A
Other languages
English (en)
Inventor
Katsuya Nanba
克弥 灘波
Kazuo Miyashita
和雄 宮下
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.)
Panasonic Holdings Corp
Original Assignee
Matsushita Electric Industrial Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Priority to JP4259542A priority Critical patent/JPH05197554A/ja
Publication of JPH05197554A publication Critical patent/JPH05197554A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Devices For Executing Special Programs (AREA)

Abstract

(57)【要約】 【目的】 人工知能の分野におけるエキスパートシステ
ムに用いられるプロダクションシステムによる推論処理
において、ワーキングメモリ要素のもつ情報間の相互の
関係からワーキングモメリ要素を特定するための処理に
要する時間の短縮化を図った推論処理方法およびその装
置の提供を目的とする。 【構成】 所定の条件に基づいて複数情報間の相互の関
係を調べることを、推論エンジン5とは別個に設けた処
理手段12にてあらかじめ行い、その結果をワーキング
メモリ要素にポインタとして設定しておき、推論エンジ
ン5では、そのポインタに着目して、推論処理における
パターンマッチングを行うことにより非常に少ないパタ
ーンマッチングで、所望のワーキングメモリ要素が特定
でき、推論処理全体に要する時間を従来例に比べ大幅に
短縮できる。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、人工知能の分野におけ
るエキスパートシステム等に用いられるプロダクション
システムを用いた推論処理方法およびその装置に関する
ものである。
【0002】
【従来の技術】近年、各種の専門領域の専門家(エキス
パート)から獲得された専門知識を用いて推論を行い、
専門的に高度な問題を、専門家と同等のレベルで解決す
る「エキスパートシステム」と呼ばれる知的システムが
開発されている。
【0003】コンピュータ等の装置で知識を処理するに
は、知識を一定の形式で表現する必要がある。
【0004】「IF 条件部(…) THEN 結論部
(〜)」(もし、…ならば〜)という判断規則もその1
つである。
【0005】このような判断規則は、プロダクションル
ール(以下、単にルールと呼ぶ)と呼ばれている。そし
て、知識を「IF…THEN〜」形式のルールの集合と
して管理する機構と、その機構を用いて実際に推論を行
う機構とからなるシステムを「プロダクションシステ
ム」と呼ぶ。
【0006】プロダクションシステムの一般的な構成を
図1に示す。ワーキングメモリ1は、解決すべき問題に
関するさまざなな事実の集合を保存するもので、その事
実の小単位を「ワーキングメモリ要素」と呼ぶ。
【0007】ワーキングメモリ要素もコンピュータ等の
装置で認識されるために、一定の形式で表現する必要が
あり、どういった形式で表現するのかをルール記述ファ
イル3に定義しておく。定義されたものをワーキングメ
モリ定義という。
【0008】さらに、専門家の知識を「IF…THEN
〜」形式に表現したルールもルール記述ファイル3に定
義されている。
【0009】ルール記述ファイル3に定義されたこれら
の内容は、実際にコンピュータ等の装置が処理できる形
態(リスト形式という)に変換され、プロダクションメ
モリ4に保存されている。
【0010】推論エンジン5は、プロダクションメモリ
4およびワーキングメモリ1の内容から推論処理を行う
機構部であり、ルールの条件部とワーキングメモリ要素
との照合(パターンマッチング)を行う照合部6、その
パターンマッチングにより適合するいくつかのルールの
中から実際に適用するルールを選出する競合解消部7、
およびその選出されたルールの結論部を実行するルール
実行部8とから構成されている。
【0011】上記構成からなるプロダクションシステム
2について、その動作を説明する。推論エンジン5は、
照合部6において、ルールの条件部とワーキングメモリ
1との照合(パターンマッチング)を行う(ステップ
1)。パタンーマッチングに成功すると、そのルールは
実行可能と認識される。次に、競合解消部7において、
実行可能と認識されたルールの中から、どのルールを実
行させるかを選択決定する(ステップ2)。
【0012】最後に、選択したルールを実行させること
により、プロダクションメモリ4およびワーキングメモ
リ1の内容を更新したり、結果を画面表示したりする
(ステップ3)。
【0013】以上の3つのステップを繰り返すことによ
り推論処理をおこなっていく。以下に、上記のプロダク
ションシステムを用いた推論処理方法を図面を参照して
説明する。
【0014】図2が従来の推論処理装置の構成を示した
ブロック図である。推論処理装置は、プロダクションシ
ステム2ですでに説明した構成に加えて、推論エンジン
5で行う推論処理以外の処理を行うための手続き型のプ
ログラム9と、ワーキングメモリ要素が生成,削除,更
新される場合に、自動的に指定された手続き型プログラ
ム9を起動さえる起動部10と、ワーキングメモリ1の
内容を推論処理系以外の手続き型プログラム9等により
更新するためのワーキングメモリ更新部11とを備えて
いる。
【0015】以下に、上記構成からなる推論処理装置を
用いて、複数個のワーキングメモリ要素の中から、それ
らの持つ情報の相互の関係に基づいてワーキングメモリ
要素を特定する推論処理を行う場合について説明する。
【0016】ここでは簡単な例として、「数値の書かれ
たm枚のカードの中から、最大の数値をもつカードを選
び出す」という命題を考える。ワーキングメモリ1に
は、命題に関する事実である、カードに相当する数値デ
ータをもつワーキングメモリ要素(A1〜Am)が保存
される。
【0017】そして、このワーキングメモリの内容を認
識するために、ルール記述ファイル3に、図3に示すよ
うに、ワーキングメモリ宣言(%bject)、ワーキ
ングメモリ名(データ)、データ型(double)、
ワーキングメモリ構成要素名(number)のように
定義しておく。
【0018】すなわち、「“データ”という名称のワー
キングメモリ1は、numberという名称の数値デー
タから構成される」ことを定義しておくのである。
【0019】推論の要となる専門家の知識は、ルール記
述ファイル3に、ルールとして定義されるが、「ルール
は、その条件部に規定された条件を満足にするワーキン
グメモリ要素が存在する場合に成立する。ただし、条件
の前に!記号が記述されている場合は、否定条件を示
し、そこに規定された条件を満足するワーキングメモリ
要素が存在しない場合にのみ成立する。」という原則に
基づいてルールを定義しなければならないため、必然的
に、「あるワーキングメモリ要素のもつnumberの
数値データより大きい数値をもつワーキングメモリ要素
は存在しない。」という条件になる。
【0020】従って、本命題を解決するためのルール
は、図4に示すとおり、ルール宣言(%rule)、ル
ール名(検索1)、条件部((データ)・・・・
・;)、条件部と結論部を仕切る記号(→)、結論部
(write・・・)というように定義されている。
【0021】この“検索1”という名称のルールの定義
は、第1の条件として、“データ”という名称のワーキ
ングメモリ1が存在していること、第2の条件として、
第1の条件を満足した“データ”という名称のワーキン
グメモリ1内のワーキングメモリ要素のnumberよ
り大きいnumberをもつワーキングメモリ要素が存
在しないこと、を規定しているのである。
【0022】結論部では、条件部を満足したワーキング
メモリ要素のnumberを表示することを規定してい
る。
【0023】したがって、条件部の2つの条件が満足さ
れることによって、“データ”という名称のワーキング
メモリ1の中からnumberの値が最大であるワーキ
ングメモリ要素が特定され、その数値データが表示され
るのである。
【0024】ここで、推論エンジン5において推論処理
を行うということについて考えてみると、推論エンジン
5は、ルールの条件部とワーキングメモリ1とをパター
ンマッチングすることにより推論をすすめるという性質
上、前述したように、肯定条件あるいは否定条件しか使
うことができない。このため、「あるワーキングメモリ
要素のもつnumberの数値データより大きい数値を
持つワーキングメモリ要素はない」という条件が満たさ
れるかどうかを調べるためには、ワーキングメモリ要素
の全ての組み合わせにつき条件部の第2の条件(相互の
関係に関する条件)について1つ1つパターンマッチン
グを行って条件を満たすかどうかを調べていかなければ
ならない。
【0025】すなわち、“データ”という名称のワーキ
ングメモリ1を構成しているm個のワーキングメモリ要
素(A1〜Am)に対して、図5に示すように、ワーキ
ングメモリ要素A1とワーキングメモリ要素A1(以
下、A1−A1のように示す)、A1−A2,A1−A
3,A1−A4,……,A1−Am,A2−A1,A2
−A2,A2−A3,……,Am−A1,Am−A2,
……,Am−Amのように、全てのワーキングメモリ要
素の組み合わせについて条件を満たすかどうか、すなわ
ち、各々のもつnumber(ak;k=1,2,・・
・m)を一対一で大小比較していくため、合計
【0026】
【数1】
【0027】回のパターンマッチングが必要となる。す
なわち、m個のワーキングメモリ要素の中から、相互の
関係に関する1つの条件を満たすワーキングメモリ要素
を特定する場合には(数1)回のパターンマッチングが
必要となる。
【0028】したがって、推論エンジン5において、m
個のワーキングメモリ要素(A1〜Am)の中から、相
互の関係に関するM個の条件を満たすワーキングメモリ
要素を特定する処理を行うには、
【0029】
【数2】
【0030】回のパターンマッチングが必要となる。
【0031】
【発明が解決しようとする課題】上述したように、「I
F…THEN〜」形式のルールを用いるプロダクション
システム2を用いて複数個のワーキングメモリ要素の中
から、それらのもつ情報の相互の関係に基づいてワーキ
ングメモリ要素を特定する場合(例えば、ワーキングメ
モリ要素の持つ情報の値が最大,最小であるワーキング
メモリ要素を求める等)には、ルールの条件部の条件に
ワーキングメモリ要素のすべての組み合わせにつき1つ
1つパターンマッチングを行い、相互の関係に関する条
件を満たすかどうかを調べなければならず、推論処理に
多大な時間を要する。
【0032】特に、大量のワーキングメモリ要素を扱う
エキスパートシステムにおいては、ワーキングメモリ要
素の数が多ければ多いほど、パターンマッチングの回数
は飛躍的に増え、その所要時間も膨大になり、その結
果、推論処理全体に多大な時間を要するという課題を抱
えている。
【0033】本発明は、上記課題を解決するもので、プ
ロダクションシステムによる推論処理において、複数個
のワーキングメモリ要素の中から、それらのもつ情報に
関する条件に基づいて、ワーキングメモリ要素のもつ情
報間の相互の関係にかかる条件から所望のワーキングメ
モリ要素を特定する推論処理に要する時間の短縮化を図
った推論処理方法およびその装置の提供を目的とする。
【0034】
【課題を解決するための手段】上記目的を達成するため
に、本発明の刷ろん処理方法は、推論エンジンによる推
論処理を行う前に、推論エンジンとは別個に設けた処理
手段を用いて所定の条件に基づいてワーキングメモリ要
素のもつ情報間の相互関係を調べ、調べられた結果に基
づいて各ワーキングメモリ要素にポインタを設定してお
き、推論エンジンにおいて、設定されたポインタに着目
した推論処理を行い、所望のワーキングメモリ要素を特
定するものである。
【0035】プロダクションメモリに保存された知識を
表現したルールと、ワーキングメモリに保存された事実
を表現したワーキングメモリ要素を用い推論エンジンで
複数ワーキングメモリ要素の中から所定の条件に基づい
てワーキングメモリ要素を特定する推論処理を行う推論
処理方法において、前記推論エンジン以外の処理手段に
より、前記ワーキングメモリ要素のもつ前記所定の条件
に関わる情報間の相互の関係を調べる工程と、前記工程
において調べた結果から各ワーキングメモリ要素に相互
情報を設定する工程と、前記推論エンジンにより、前記
ワーキングメモリ要素に設定された前記相互情報を用い
て推論を行い、所望のワーキングメモリ要素を特定する
工程とを有することを特徴とする。
【0036】また、その推論処理方法を実現するための
装置は、知識を表現したルールを保存するプロダクショ
ンメモリと、事実を表現したワーキングメモリ要素を複
数保存するワーキングメモリと、前記ルールおよび前記
ワーキングメモリ要素を用いて推論を行う推論エンジン
と、前記複数のワーキングメモリ要素の中から、所定の
条件に基づいてワーキングメモリ要素を特定する推論処
理を行うとき、前記ワーキングメモリ要素のもつ前記所
定の条件に関わる情報間の相互の関係を調べるととも
に、調べた結果に基づき各ワーキングメモリ要素に設定
する相互情報を出力する前記推論エンジンとは別個に設
けられた処理手段と、前記出力された相互情報をワーキ
ングメモリ要素に設定するワーキングメモリ更新手段と
を備え、前記ワーキングメモリ更新手段により前記ワー
キングメモリ要素に設定された前記相互情報を用いて推
論処理を行うことを特徴とするものである。
【0037】
【作用】上述したように、複数個のワーキングメモリ要
素からそれらのもつ情報の相対関係に基づいてワーキン
グメモリ要素を特定する場合に、あらかじめ推論エンジ
ンとは別の処理手段によって所定の条件に基づいたワー
キングメモリ要素の持つ情報間の相互関係を短時間で調
べておき、調べられた結果に基づき各ワーキングメモリ
要素にポインタを設定しておき、推論エンジンによる推
論処理の際にはそのポインタを用いて所望のワーキング
メモリ要素を特定するため、従来のように、ワーキング
メモリ要素の全ての組み合わせについて1つ1つパター
ンマッチングを行い相互関係に関する条件を満たすかど
うかを調べる必要はなくなり、推論処理に要する時間が
大幅に短縮される。
【0038】
【実施例】以下に、本発明の推論処理方法およびその装
置について図面を参照しながら説明する。
【0039】図6は、本発明のプロダクションシステム
2を用いた推論処理装置のブロック図である。
【0040】ワーキングメモリ1は、解決すべき問題に
関するさまざまな事実の集合を保存するもので、その事
実の小単位を「ワーキングメモリ要素」と呼ぶ。
【0041】ワーキングメモリ要素もコンピュータ等の
装置で認識されるために、一定の形式で表現する必要が
あり、どういった形式で表現するのかをルール記述ファ
イル3に定義する。定義されたものをワーキングメモリ
定義という。
【0042】さらに、専門家の知識を「IF…THEN
〜」形式に表現したルールもルール記述ファイル3に定
義されている。
【0043】ルール記述ファイル3に定義されたこれら
の内容は、実際にコンピュータ等の装置が処理できる形
態(リスト形式という)に変換され、プロダクションメ
モリ4に保存されている。
【0044】推論エンジン5は、プロダクションメモリ
4およびワーキングメモリ1の内容から推論処理を行う
機構部であり、ルールの条件部とワーキングメモリ要素
との照合(パターンマッチングを行う照合部6、そのパ
ターンマッチングにより適合するいくつかのルールの中
から実際に適用するルールを選出する競合解消部7、お
よびその選出されたルールの結論部を実行するルール実
行部8とから構成されている。
【0045】また、推論エンジン5で行う推論処理以外
の処理を行うための手続き型のプログラム9と、ワーキ
ングメモリ要素が生成,削除,更新される場合に、自動
的に指定された手続き型プログラム9を起動させる起動
部10と、ワーキングメモリ1の内容を推論処理系以外
手続き型プログラム9等により更新するためのワーキン
グメモリ更新部11とを備えている。
【0046】以上の装置の構成は従来例のものと同様で
ある。本発明の推論処理装置では、上記構成に加え、推
論エンジン5とは別個に処理手段12を設けている。処
理手段12の構成を示したのが図7である。
【0047】図において、13はワーキングメモリ要素
のもつ種別情報間の相互の関係を調査する種類判別部、
14はその調査結果に基づいてワーキングメモリ要素を
種類分けする種類分け部、15はワーキングメモリ要素
のもつ数値情報の大小関係を調査する大小関係調査部、
16は調査された結果に基づきワーキングメモリ要素を
ソートするソート部、17はソートされた情報を持つワ
ーキングメモリ要素に相互情報であるポインタを設定す
るポインタ設定部である。
【0048】一般的に、推論処理の対象となるワーキン
グメモリ要素の持つ情報は、種類等を示す種別情報と数
値データである数値情報とから構成される。
【0049】そこで、第1の実施例として、従来例と同
様、ワーキングメモリ要素が数値情報のみを持つ場合
を、第2の実施例として、ワーキングメモリ勝訴が種別
情報および数値情報を持つ場合を説明する。
【0050】(実施例1)従来の技術の項で挙げたもの
と同様「それぞれに数値データを持つm個のワーキング
メモリ要素(A1〜Am)(50,10,・・・・,1
00,30)の中から、その数値データが最大であるワ
ーキングメモリ要素を特定する」推論処理を行う場合に
ついて説明する。
【0051】以上の構成の推論処理装置を用いて行う推
論処理方法を示したフローチャートが図8である。
【0052】図8を参照しながら、以下、その推論処理
方法を説明する。本来、ワーキングメモリ要素が種別情
報を持つ場合は、種別情報に関する処理(ステップ1,
ステップ2)から行われる。しかし、現対象は種別情報
を持たないので、ステップ1およびステップ2の処理は
行われない。
【0053】すなわち、手続き型プログラム9により、
処理手段12に実行の命令が出力される。その出力によ
り、大小関係調査部15により、ワーキングメモリ要素
の持つ数値情報であるnumberの大小関係を調査さ
れる(ステップ3)。その後、ソート部16により、ス
テップ3で調査された結果に基づきワーキングメモリ要
素がソートされる(ステップ4)。複数種類の数値情報
を持っている場合は各種類について繰り返し、大小関係
の調査およびソートが矢印Bのように行われる。そし
て、ポインタ設定部17により、ソートされた情報を持
つワーキングメモリ要素に相互情報であるポインタ(p
ointer;つなぎ)が設定される(ステップ5)。
【0054】ポインタとは、ソート部16によりソート
された結果に基づいた情報であり、ソートに対応させ
て、どのワーキングメモリ要素の次にどのワーキングメ
モリ要素がつながるかを示すものである。
【0055】これらの処理(ソートおよびポインタの設
定)を施したものをワーキングメモリソーティングリス
トと呼ぶ。図9に、そのワーキングメモリソーティング
リストを模式的に示す。
【0056】実際、各ポインタには、次につながる他の
ワーキングメモリ要素のアドレスが設定されている。た
だし、最高尾のワーキングメモリの要素のポインタに
は、終了の目印として、“0”というデータを与えてお
く。
【0057】このようにして、ワーキングメモリ要素に
ポインタを設定したあと、推論エンジン5による推論処
理に入る。
【0058】ここで、推論エンジン5による推論エンジ
ンの推論の基となるルール記述ファイル3に保存されて
いる内容について説明する。
【0059】図10がルール記述ファイル3に保存され
ているワーキングメモリ定義およびルール定義である。
【0060】ワーキングメモリ定義では、“データ”と
いう名称のワーキングメモリは、次につながるべきワー
キングメモリ要素のアドレスを示すnextという名称
のポインタと、numberという名称の数値データと
により構成されていること、そして、このワーキングメ
モリ1に属するワーキングメモリ要素が生成,削除され
た場合には、それぞれadd−daemon,del−
daemonという名称の手続き(手続き型プログラム
に保存されている)を呼び出すことを規定している(ワ
ーキングメモリ要素が更新されたときには、両方の手続
きを呼び出す)。これらの手続きについては後述する。
【0061】つぎに、ルール定義されている“検索2”
という名称のルールは、その条件部においてポインタで
あるnextが“0”であるワーキングメモリ要素の存
在を規定し、結論部においてそのワーキングメモリ要素
のnumberを表示することを規定している。
【0062】このような内容が記述されたルール記述フ
ァイル3に基づいて、推論エンジン5の照合部6におい
て、“検索2”という名称のルールの条件部の条件(デ
ータ next=0)と、ワーキングメモリ要素とのパ
ターンマッチングが行われる(ステップ6)。
【0063】すなわち、ワーキングメモリソーティング
リストを用いて、ポインタであるnextの値が“0”
のものを検索していくのである。
【0064】そして、その検索により“0”の値を持つ
ポインタが発見されることにより、条件が成立し、“検
索2”という名称のルールが適用可能と判断される。
【0065】いま、ルールは1つしかなく、その1つの
ルールが適用可能と判断されたので、自動的にルール
“検索2”の結論部が、ルール実行部8により実行さ
れ、“100”という値が表示される(ステップ7)。
【0066】また、ワーキングメモリ要素が生成,削
除,更新された場合には、起動部10により、手続き型
プログラム9に保存されている手続きadd−daem
onおよび手続きdel−daemonが呼び出され
る。
【0067】手続きadd−daemon,手続きde
l−daemonはワーキングメモリ要素が生成,削除
あるいは更新Sれたワーキングメモリ1に対して、処理
手段12により新たにワーキングメモリ要素をnumb
erの大きさの昇順にソートするとともに、ワーキング
メモリ要素のポインタであるnextを更新するもので
ある(新たにワーキングメモリソーティングリストを作
成する)。
【0068】すなわち、手続きadd−daemonで
は、ワーキングメモリソーティングリストに、生成され
たワーキングメモリ要素をnumberをキーとして昇
順にソートしてつなぎ、手続きdel−daemonで
は逆に、削除されたワーキングメモリ要素をワーキング
メモリソーティングリストから外す処理を行う。
【0069】このように、ワーキングメモリ1内の内容
を更新したときにも、自動的にワーキングメモリソーテ
ィングリストを作成できるようにして設定しておけば、
すぐに、推論エンジン5による推論に入ることができ
る。
【0070】以上の説明から明らかなように、ワーキン
グメモリ要素がm個存在し、その中から、1つの条件を
満たすワーキングメモリ要素を特定するには、設定され
たポインタを調べるのに必要なm回のパターンマッチン
グで十分である。
【0071】これに対して、従来の方法では、前述した
ように、(数1)回のパターンマッチングを行わなけれ
ばならない。
【0072】すなわち、例えば、ワーキングメモリ要素
の数が10,000個だとすると、本発明の場合は、最
大10,000回、従来例の場合は、最大100,00
0,000回のパターンマッチングを必要とし、その差
はいうまでもない。
【0073】ところが、本発明においては、推論エンジ
ン5とは別の処理手段12により、前もって、ソーティ
ングおよびポインタの設定を行っているので、それに要
する時間を考慮に入れる必要がある。
【0074】しかしながら、この処理手段12は、推論
エンジン5による推論処理のように、「ルールに肯定条
件・否定条件しか使えない」という制限がない、演算処
理装置であるので、そのソーティング等の作業に要する
時間は、100,000,000(回)−10,000
(回)=99,990,000回のパターンマッチング
に要する時間に比べれば比較にならないほど短い。
【0075】すなわち、ワーキングメモリ要素の数が多
ければ多いほど、本発明の推論処理方法による効果は大
きいといえる。
【0076】また、以上に説明した第1の実施例は、所
望のワーキングメモリ要素を特定するための条件が1つ
の場合であるが、その条件が複数個あれば、さらにその
効果は大きくなる。
【0077】すなわち、従来の推論処理方法では、従来
技術の項ですでに述べたように、m個のワーキングメモ
リ要素の中からM個の条件に基づいてワーキングメモリ
要素を特定しようとすると、従来技術の項で述べたよう
に、そのパターンマッチングの回数は(数2)回とな
り、推論処理に要する時間は膨大なものとなっていしま
う。
【0078】これに対して、本発明の推論処理方法にお
いては、条件が複数個であっても、あらかじめ推論エン
ジン5とは別の処理手段12によってそれら所定の条件
に基づいたワーキングメモリ要素間の相互の関係を短時
間で調べ、その結果を各ワーキングメモリ要素にポイン
タとして設定しておき、推論エンジン5による推論処理
の際にはそのポインタを用いて所望のワーキングメモリ
要素を特定するため、パターンマッチングの回数は条件
が1つの場合と同じm回であり、処理手段12における
ソーティングに要する時間が少し上乗せされるだけであ
る。
【0079】(実施例2)第2の実施例として、ワーキ
ングメモリ要素を特定する条件の中に、種別情報に関す
る条件を含む場合を説明する。
【0080】推論処理の命題として、「ある製品を生産
する生産ラインシステムのある部分に配置する生産機械
を決定するために、候補となる複数個の生産機械から、
所定のメーカーのものであって、最も良品生産率の高い
生産機械を選び出す。もし、そのような生産機械が複数
個ある場合は、その中で、最も価格の低い生産機械を選
び出す」という推論処理を例にとる。
【0081】図11に、候補となっている生産機械の情
報が表現されているワーキングメモリ要素(B1〜B
5)を示す。
【0082】このワーキングメモリ要素から構成される
ワーキングメモリ1はルール記述ファイル3において、
図12のよに定義されている。
【0083】このワーキングメモリ定義は、図に示すよ
うに、“機械”という名称のワーキングメモリは、次に
つながるべきワーキングメモリ要素のアドレスを示すn
extというポインタと、生産機械のメーカ名を示すm
akerという種別情報と、製品Noを示すnumbe
rという種別情報と、良品生産率(%)を示すrate
という数値情報と、生産機械の価格を示すpriceと
いう数値情報とから構成されていること、そして、この
ワーキングメモリ1に属するワーキングメモリ要素が、
生成,削除された場合には、それぞれadd−daem
on,del−daemonという名称の手続き(手続
き型プログラムに保存されている)を呼び出すことを規
定している(これらの手続きはすでに説明してあるの
で、説明は省略する)。
【0084】さらに、もう1つの“要望”という名称の
ワーキングメモリは、図13に示すように、生産機械の
メーカー名を示すmakerという種別情報と、製品N
oを示すnumberという種別情報と、良品生産率
(%)を示すrateという数値情報と、生産機械の価
格を示すpriceという数値情報とから構成されてい
ることを規定している。
【0085】ワーキングメモリ“要望”は、生産機械を
特定する条件を表現したものであるが、種別情報である
メーカー名だけで構成され、数値情報に関するものは定
義されていない。なぜなら、数値情報に関する条件は、
ワーキングメモリ要素の相互の関係から適用するからで
ある。
【0086】続いて、その推論処理を図8を参照しなが
ら説明する。まず、手続き型プログラム9により処理手
段12に実行の命令が出力される。この出力から、種類
判別部13により、ワーキングメモリ要素の種別情報で
あるメーカー間の相互の関係を調査する(ステップ
4)。その調査結果に基づいて、種類分け部14によ
り、ワーキングメモリ要素をメーカー別に種類分けする
(ステップ5)。もし、複数の種別情報をもつ場合は、
ステップ4およびステップ5を矢印Aのように繰り返し
行う。その後、大小関係部15により、ステップ5で種
類分けされたワーキングメモリ要素間において、数値情
報の大小関係を調査する(ステップ6)。
【0087】すなわち、同じメーカー名を持つワーキン
グメモリ要素において、良品生産率および価格に関して
大小関係を調査する。
【0088】そして、ソート部16は、調査された大小
関係から、ワーキングメモリ要素をソートする(ステッ
プ7)。つまり、同じメーカー名を持つワーキングメモ
リ要素を1つのグループとしてソートし、そのグループ
の中では、良品生産率の昇順にソートし、さらに良品生
産率が同じものについては、価格の降順にソートする。
ソートの結果を示したのが図14である。そして、この
ソートされた情報を持つワーキングメモリ要素に相互情
報であるポインタを設定する。(ステップ8)。
【0089】こうして、作成されたワーキングメモリソ
ーティングリストを模式的に示したのが図15である。
【0090】実際、各ポインタには、次につながる他の
ワーキングメモリの要素のアドレスが設定され、最高尾
のワーキングメモリ要素のポインタには、終了の目印と
して、“0”というデータを与えておく。
【0091】このようにして、ワーキングメモリ要素に
ポインタを設定したあと、推論エンジン5による推論処
理に入る。
【0092】ここで、推論エンジン5による推論エンジ
ンの基となるルール記述ファイル3に保存されているル
ール定義について説明する。
【0093】図16がルール記述ファイル3に保存され
ているルール定義である。この“検索3”というルール
定義は、第1の条件である (要望)により、要望という名称のワーキングメモリを
検索する。その後、第2の条件である (機械 メーカー=条件1.メーカー);により、機械
というワーキングメモリ1内のワーキングメモリ要素の
中から、メーカーが第1の条件を満たすもののメーカー
であるものを検索する。検索の結果、マッチングするの
はワーキングメモリ要素B1,B2およびB3である。
そして、第3の条件である ! (機械 メーカー=条件1.メーカー;ポインタ=
条件2.);により、その前半部でふたたび、ワーキン
グメモリ要素B1,B2およびB3が検索されて、その
ワーキングメモリ要素のポインタの値のうち、前記第2
の条件を満たすワーキングメモリ要素のアドレスと等し
いワーキングメモリ要素がないことを規定しているので
ある。
【0094】具体的には、ワーキングメモリ要素B3の
ポインタの値N3と等しい値のアドレスを持つワーキン
グメモリ要素は第2の条件を満たすワーキングメモリ要
素B2が存在し、また、ワーキングメモリ要素B2のポ
インタの値N4と等しい値のアドレスを持つワーキング
メモリ要素は第2の条件を満たすワーキングメモリ要素
B1が存在するが、ワーキングメモリ要素B1のポイン
タの値N5と等しい値のアドレスを持つワーキングメモ
リ要素は第2の条件を満たすワーキングメモリ要素には
ない。
【0095】したがって、ワーキングメモリ要素B1が
所望のワーキングメモリとして特定されるのである。
【0096】すなわち、ワーキングメモリソーティング
リストのうちで、A社といメーカーのグループの中の最
高尾のワーキングメモリ要素を捜し出す作業を行うので
あり、ワーキングメモリ要素のポインタの値とアドレス
とをパターンマッチングする。
【0097】もちろん、種別情報に関する条件が含まれ
ている場合も、(数1)回のパターンマッチングで十分
である。
【0098】ここで、従来例による推論処理方法とのパ
ターンマッチングの回数を比較してみる。
【0099】まず、従来の方法によれば、相互の関係に
関する条件が2つあるので、従来例の項で説明したよう
に、
【0100】
【数3】
【0101】回の照合が必要となる。さらに、ワーキン
グメモリ要素の持つ数値情報間の相互の関係に関する条
件の数が増えた場合は、その条件の増加に対応して、回
乗としてパターンマッチングの回数が増えていくが、本
発明の場合は、推論エンジン5による推論に入る前にワ
ーキングメモリ要素にポインタが設定されているので、
いくら条件が増えても、(数1)回のパターンマッチン
グで済むのである。
【0102】ここで、ポインタを設定するために、処理
手段12によって、ワーキングメモリソーティングリス
トを作成する手間を考慮しなければならないが、前述し
たようにそれに要する時間は推論処理におけるパターン
マッチングに要する時間と比較すれば、微々たるもので
ある。
【0103】
【発明の効果】以上のように、本発明の推論処理方法
は、従来、推論エンジンにおいて行っていた、所定の条
件に基づいて複数情報間の相互の関係を調べることを、
推論エンジンとは別の処理手段にてあらかじめ行い、そ
の結果をワーキングメモリ要素にポインタとして設定し
ておき、推論エンジンでは、そのポインタに着目して、
推論処理における検索を行うものであり、このポインタ
に注目して検索するだけで、所望のワーキングメモリ要
素が特定でき、そのパターンマッチングの回数は従来例
に比べ少なくて済むので、その処理に要する時間は従来
例に比べ、大幅に短縮されるという効果を奏する。
【図面の簡単な説明】
【図1】プロダクションシステムの概略を示した構成図
【図2】従来の推論処理装置の構成を示したブロック図
【図3】従来の推論処理方法におけるワーキングメモリ
定義を示した図
【図4】同推論処理方法におけるルールの定義を示した
【図5】同処理方法におけるワーキングメモリ要素およ
びパターンマッチングの様子を説明した図
【図6】本発明の推論処理装置の構成を示したブロック
【図7】同推論処理装置の処理手段の構成を示した図
【図8】本発明の推論処理方法を示したフローチャート
【図9】本発明の第1の実施例における推論処理方法の
工程で作成されたワーキングメモリソーティングリスト
の模式図
【図10】同推論処理方法におけるルールおよびワーキ
ングメモリ定義を示した図
【図11】同ワーキングメモリ“機械”を構成するワー
キングメモリ要素を示した図
【図12】同ルール記述ファイルに定義されたワーキン
グメモリ“要望”のワーキングメモリ定義を示した図
【図13】同ルール記述ファイルに定義されたワーキン
グメモリ“要望”のワーキングメモリ定義を示した図
【図14】同ワーキングメモリ要素をソートした様子を
示した図
【図15】同ワーキングメモリソーティングリストを示
した図
【図16】同ルール記述ファイルに保存されているルー
ル定義を示した図
【符号の説明】
1 ワーキングメモリ 2 プロダクションシステム 3 ルール記述ファイル 4 プロダクションメモリ 5 推論エンジン 6 照合部 7 競合解消部 8 ルール実行部 9 手続き型プログラム 10 起動部 11 ワーキングメモリ更新部 12 処理手段 13 種類判別部 14 種類分け部 15 大小関係調査部 16 ポインタ設定部

Claims (6)

    【特許請求の範囲】
  1. 【請求項1】 プリダクションメモリに保存された知識
    を表現したルールと、ワーキングメモリに保存された事
    実を表現したワーキングメモリ要素を用い推論エンジン
    で複数のワーキングメモリ要素の中から所定の条件に基
    づいてワーキングメモリ要素を特定する推論処理を行う
    推論処理方法において、前記推論エンジン以外の処理手
    段により、前記ワーキングメモリ要素の持つ前記所定の
    条件に関わる情報間の相互の関係を調べる工程と、 前記工程において調べた結果から各ワーキングメモリ要
    素に相互情報を設定する工程と、 前記推論エンジンにより、前記ワーキングメモリ要素に
    設定された前記相互情報を用いて推論を行い、所望のワ
    ーキングメモリ要素を特定する工程とを有することを特
    徴とする推論処理方法。
  2. 【請求項2】 相互情報を設定する工程は、ワーキング
    メモリ要素の持つ情報を調査する工程と、調査された結
    果に基づきワーキングメモリ要素をソートする工程と、
    ソートされた情報を持つワーキングメモリ要素に相互情
    報を設定する工程とを備えたことを特徴とする請求項1
    記載の推論処理方法。
  3. 【請求項3】 各ワーキングメモリ要素は種別情報と数
    値情報とを持ち、相互情報を設定する工程の前に、推論
    エンジン以外の処理手段により、前記ワーキングメモリ
    要素の種別情報間の相互の関係を調査する工程と、調査
    結果に基づいてワーキングメモリ要素を種類分けする工
    程とを行う一方、前記相互情報を設定する工程は、前記
    ワーキングメモリ要素の持つ前記数値情報の大小関係を
    調査する工程と、調査された結果に基づきワーキングメ
    モリ要素をソートする工程と、ソートされた情報を持つ
    ワーキングメモリ要素に相互情報を設定する工程とを備
    えることを特徴とする請求項1記載の推論処理方法。
  4. 【請求項4】 知識を表現したルールを保存するプロダ
    クションメモリと、 事実を表現したワーキングメモリ要素を複数保存するワ
    ーキングメモリと、前記ルールおよび前記ワーキングメ
    モリ要素を用いて推論を行う推論エンジンと、 前記複数のワーキングメモリ要素の中から、所定の条件
    に基づいてワーキングメモリ要素を特定する推論処理を
    行うとき、前記ワーキングメモリ要素の持つ前記所定の
    条件に関わる情報間の相互の関係を調べるとともに、調
    べた結果に基づき各ワーキングメモリ要素に設定する相
    互情報を出力する前記推論エンジンとは別個に設けられ
    た処理手段と、 前記出力された相互情報をワーキングメモリ要素に設定
    するワーキングメモリ更新手段とを備え、 前記ワーキングメモリ更新手段により前記ワーキングメ
    モリ要素に設定された前記相互情報を用いて推論処理を
    行う推論処理装置。
  5. 【請求項5】 処理手段は、ワーキングメモリ要素の持
    つ情報を調査する調査手段と、調査された結果に基づき
    前記情報をソートするソート手段と、ソートされた情報
    を持つワーキングメモリ要素に相互情報を設定する相互
    情報設定手段とを備えることを特徴とする請求項4記載
    の推論処理装置。
  6. 【請求項6】 各ワーキングメモリ要素は種別情報と数
    値情報とを持ち、処理手段は、ワーキングメモリ要素の
    種別情報間の相互の関係を調べる種類判別手段と、前記
    種類判別手段により判別された種類に基づきワーキング
    メモリ要素の種類分けを行う種類分け手段とを備えると
    ともに、前記処理手段は、種類分けされたワーキングメ
    モリ要素の持つ前記数値情報を調査する手段と、調査さ
    れた結果に基づき前記数値情報をソートするソート手段
    と、ソートされた数値情報を持つワーキングメモリ要素
    に相互情報を設定する相互情報設定手段とを備えたこと
    を特徴とする請求項4記載の推論処理装置。
JP4259542A 1991-09-30 1992-09-29 推論処理方法およびその装置 Pending JPH05197554A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP4259542A JPH05197554A (ja) 1991-09-30 1992-09-29 推論処理方法およびその装置

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP25096791 1991-09-30
JP3-250967 1991-09-30
JP4259542A JPH05197554A (ja) 1991-09-30 1992-09-29 推論処理方法およびその装置

Publications (1)

Publication Number Publication Date
JPH05197554A true JPH05197554A (ja) 1993-08-06

Family

ID=26540007

Family Applications (1)

Application Number Title Priority Date Filing Date
JP4259542A Pending JPH05197554A (ja) 1991-09-30 1992-09-29 推論処理方法およびその装置

Country Status (1)

Country Link
JP (1) JPH05197554A (ja)

Similar Documents

Publication Publication Date Title
US11853281B2 (en) Methods and systems for data management and analysis
US20100235814A1 (en) Apparatus and a method for generating a test case
CN112232327B (zh) 一种基于深度学习的抗核抗体核型判读方法与设备
US20210012211A1 (en) Techniques for visualizing the operation of neural networks
US20150026635A1 (en) Method for generating control-code by a control-code-diagram
Morales et al. The noisefiltersr package: label noise preprocessing in R
JP2002251603A (ja) 画像処理プログラム作成方法およびそのシステム
US11615321B2 (en) Techniques for modifying the operation of neural networks
US20040002829A1 (en) Semiconductor test data analysis system
JPH096628A (ja) 並列処理手続き選定装置及び方法
CN111710360B (zh) 一种预测蛋白质序列的方法、系统、装置及介质
JP6244274B2 (ja) 相関ルール分析装置および相関ルール分析方法
US20040215401A1 (en) Computerized analysis of forensic DNA evidence
JPH05197554A (ja) 推論処理方法およびその装置
JP3929418B2 (ja) 情報探索プログラム及び情報探索プログラムを記録した媒体
Hananto et al. An ensemble and filtering-based system for predicting educational data mining
JPH0744526A (ja) 事例に基づく電子機器不良原因診断装置
CN114971497B (zh) 基于协同互联的物资供应链全链感知的数据处理方法
JP2002217260A (ja) 半導体ウエハテストmap図作成装置及び方法
JP2001101340A (ja) 文字読取装置および文字認識方法
Do Towards simple, easy to understand, an interactive decision tree algorithm
JPH09101879A (ja) プログラム解析装置
US10489428B2 (en) Existing system processing specification extractor
JPH0721066A (ja) データ分類表示装置
JP2001265917A (ja) 見積評価支援システム