JPH0774998B2 - 推論処理システム - Google Patents

推論処理システム

Info

Publication number
JPH0774998B2
JPH0774998B2 JP2151675A JP15167590A JPH0774998B2 JP H0774998 B2 JPH0774998 B2 JP H0774998B2 JP 2151675 A JP2151675 A JP 2151675A JP 15167590 A JP15167590 A JP 15167590A JP H0774998 B2 JPH0774998 B2 JP H0774998B2
Authority
JP
Japan
Prior art keywords
data
reason
working memory
problem solver
contradiction
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 - Lifetime
Application number
JP2151675A
Other languages
English (en)
Other versions
JPH0444127A (ja
Inventor
栄二 大平
昭男 小松
Original Assignee
工業技術院長
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 工業技術院長 filed Critical 工業技術院長
Priority to JP2151675A priority Critical patent/JPH0774998B2/ja
Publication of JPH0444127A publication Critical patent/JPH0444127A/ja
Publication of JPH0774998B2 publication Critical patent/JPH0774998B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

  • Devices For Executing Special Programs (AREA)

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は、情報処理における推論方式に係り、特に、プ
ロダクションルールを用いて行なう推論システムの構築
を容易にし、かつ高速化するための黒板モデルによる推
論方式に関する。
〔従来の技術〕
エキスパートシステムの知識表現は、通常、「IF〜THEN
〜」形式のプロダクションルールを用いている。各種の
情報処理においては、解くべき問題を、いくつかのサブ
問題に分割し、処理を行なっていく。この1まとまりの
サブ問題を解くために必要な知識を知識ベースと呼び、
知識ベースは、上述した複数のプロダクションルールと
データとにより構成される。
さて、問題を解く場合、問題解決に使われる知識ベース
をどのような順序で動作させていくかによって構成が異
なる。代表的な制御モデルとしては、「音声認識・合
成,日本工業技術センター(昭和55年8月,pp127〜12
9」や特開昭64−81039号公報で論じられているように、
1)階層構造モデル、2)ヘテラキシカルモデル、3)
黒板モデル等がある。
第9図は階層構造モデルの構成を示す。知識源は、階層
構造をなし、情報は隣接する知識源間のみで交換され
る。このため、問題解決のための知識が階層構造をなし
ているタスクにおいては、大規模なシステムを構築でき
る。
第10図は、ヘテラキシカルモデルの構成を示す。各知識
源は、他の任意の知識源との間で情報の交換を行ないな
がら、推論を行なっていく。ただし、情報の交換は通信
により行なわれるため、各知識源は、他の知識源の機能
等をよく知っている必要があるため、大規模なシステム
の構築には適さない。
第11図は、黒板モデルの構成を示す。各知識源は、黒板
と呼ばれる大域的記憶領域のデータを介して推論を進め
ていく。すなわち、各知識源は、黒板上のデータを変換
し、削除し、あるいは黒板上にデータを追加しながら、
協調して黒板上のデータの内容に応して推論を進めてい
く。このため、各知識源の独立性は高まり、大規模なシ
ステムの構築が可能となる。
〔発明が解決しようとする課題〕
システム構築においては、構築、メンテナンスが容易
で、処理速度が上がることが重要である。従来のモデル
において、階層構造モデルは、上記の要件をある程度満
たすが、知識が階層構造をとる問題でないと有効でな
い。すなわち、知識源が互いに関係しあうような複雑な
問題には適応できない。ヘテラキシカルモデルは、他の
知識源についての機能等を知っている必要があるため、
並列処理には有効であるが、知識源を複雑に適用させて
いく必要のある問題に対しては、適さない。
従来黒板モデルにおいては、柔軟な知識源の制御が可能
であり、並列処理の点でも有効である。しかし、知識源
が多くなった場合、知識源の同期や各知識源から提案さ
れるデータの不整合が問題となる。このため、対象問題
を解くためのドメイン知識のほかに、各知識源の動作の
制御やデータの整合性をとるためのメタ知識が多くなっ
てしまい、知識源の独立性が失なわれてしまう問題が生
じる。
本発明の目的は、黒板モデルによる推論において、並列
動作可能で、かつ、知識ベースの構築、メンテナンスを
容易とするため、各知識ベースが他の知識ベースに影響
されることなく、協調動作が可能な黒板モデルによる推
論方式を提供することにある。
〔課題を解決するための手段〕
上記目的を達成するために、条件部と実行部からなるIF
−THEN形式のプロダクションルールとデータに基づいて
推論処理を行う複数の問題解決器間の送受信を通じて推
論処理を行う推論処理システムにおいて、データとし
て、データの真偽を格納する真偽スロットと、データを
導出する根拠である理由データの名称を、少なくとも他
の問題解決器より送信された理由データについては理由
データの名称にその送信元の問題解決器の名称を付して
格納する理由スロットと、データの種類としてデータが
常に正しい前提データか、仮定に基づいて生成された仮
定データか、他に代替となるデータが存在する代替デー
タか、それ以上の導出データかを格納する種類スロット
とを有するフレーム知識で表現されたデータを用いる。
この問題解決器は、推論処理中に生成される中間処理結
果データを記憶するワーキングメモリと、中間処理結果
データのワーキングメモリに対する入出力を管理するワ
ーキングメモリ管理部と、互いに真偽の相反する中間処
理結果データを真とする不正データの存在を条件部とし
て矛盾発生データの生成を実行部とする矛盾検出ルール
を含むプロダクションルールを記憶しておく知識ベース
と、ワーキングメモリ管理部と知識ベースに接続され推
論処理を制御する推論制御部と、ワーキングメモリ内に
記録された中間処理データを矛盾なく保持するための真
理保全部と、他の問題解決器と接続してデータの送受信
を行う通信管理部とを備えるものである。
問題解決を構成している推論制御部は、知識ベースに記
憶されたプロダクションルールの中から、条件部を満足
するワーキングメモリ内の中間処理結果データである理
由データの存在するプロダクションルールを検出するル
ール評価部と、ルール評価部により検出されたプロダク
ションルールの実行部の内容を実行し、かつ実行対象と
された中間処理結果データの理由スロット及び種類スロ
ットに該当する内容を格納する指示をワーキングメモリ
管理部に伝達してワーキングメモリ内の中間処理結果デ
ータを書き替えるルール実行部とを有する。
問題解決器を構成している真理保全部は、ワーキングメ
モリ中に矛盾発生データが書き込まれたことを検出する
ことにより起動され、不正データの理由データを遡って
矛盾発生の原因となったデータである仮定データ若しく
は代替データを検出する矛盾原因検出部と、矛盾発生の
原因となったデータ及びそれに基づいて導出された全て
の導出データを偽とし、かつ、矛盾発生の原因となった
データが代替データであれば、そのデータの代替となる
データのいずれかを真とする矛盾解消部とを有する。
また、問題解決器を構成している通信管理部は、送信す
べき送信データの理由データの名称に送信元の問題解決
器の名称を付して送信し、さらに、送信データの理由デ
ータを遡り送信先の問題解決器から送信された理由デー
タが存在する場合にその理由データの名称を送信データ
の理由データの名称に加えて送信する。
〔作用〕
本発明において黒板上に書かれるデータは、そのデータ
を生成する上で根拠となったデータを理由付けデータと
して付与している。黒板上に書かれるあるデータが不正
であることが矛盾原因検出部で伴った時、その不正デー
タの理由付けデータをもとにして、その不正データが生
成される条件となったデータが検出できる。その条件と
なったデータが代替又は仮定データでない場合は、その
条件となったデータの理由付けデータから、更に、その
条件となったデータを検出していき、仮定又は代替デー
タが見つかるまで、理由付けデータを遡る。条件となっ
たデータとして代替データが検出されれば、そのデータ
の真偽を偽とすると共に、その代替データを条件として
いるという理由付けデータをもつデータを検出し、その
真偽を偽とする。このようにすれば、その不正データと
その根拠となった代替データおよび、代替データから不
正データを推論していく間に生成された全てのデータを
ルールから見えない、信じない状態とできる。
(以降この信じない状態とすることを、削除するとして
説明する。) 偽とされた代替データのかわりに他の1つの代替データ
の真偽を真とし、新しく真とした代替データを条件とし
て再び推論を始める。
複数の問題解決器を使用してある問題を解決する場合
に、他の問題解決器に転送したデータが削除されると
き、その転送したデータの転送来歴データも転送したデ
ータと同じ理由付けデータを有するため、削除される。
この転送来歴データのもつ転送データ名と転送先名の情
報により、転送先の問題解決器に転送データが不正であ
ることを知らせることができる。
例えば、問題解決器1(PS1とする)の質問を示すデー
タを、問題解決器2(PS2とする)に送り、PS2で処理さ
れた結果を答として、PS1に送り返す場合、PS2は、PS1
にデータを送る際に、PS1から送られてきた質問を示す
データを理由付けデータに加えて送る。PS1は、転送さ
れた答のデータの理由付けデータに、自分のデータがあ
るため、その自分のデータの理由付けデータを復元し、
PS2から送られた答のデータに復元した理由付データを
付加して、PS1の黒板上にその答データを書き込む。こ
のため、PS1上の答のデータは、PS1上の質問のデータを
直接理由付けデータとしてもつ。
また、PS2からPS1に転送される答のデータの理由付けデ
ータには、送信側の問題解決器名PS2が付与されている
ので、その答のデータが受信側の問題解決器PS1で削除
されるとき、その答のデータを送信した問題解決器PS2
に不正を伝達できる。そしてPS2上で不正データの理由
付けデータを逆上りその不正データに至るまでの推論デ
ータを削除することができる。
このように、複数の問題解決器間において、転送するデ
ータに理由付けデータとして送信側の問題解決器名を付
与する事によって不正な結果の根拠となるデータの伝ぱ
んができるため、設計者が意識することなく、全ての問
題解決の黒板上のデータが矛盾無く保たれる。
〔実施例〕
以下、本発明の一実施例を第1図により説明する。知識
ベース1は、プロダクションルール11とデータ12からな
る。データは、あらかじめフレーム知識(第3図)など
で表現されている。プロダクションルール(以下、ルー
ルとする)11は、条件部(if部)と、実行部(then部か
らなり、その一例を第2図に示す。
黒板2は、中間処理結果データを格納するためのワーキ
ングメモリ21とデータの参照、書込み、変更および削除
の機能を有するワーキングメモリ管理部23と、ワーキン
グメモリ21のデータを矛盾無く保つための真理保全機能
を有するTMS(Truth Maintenance System)22からな
る。
TMS22は、ワーキングメモリ管理部23と接続され、不正
データが生じた場合に理由付けデータを遡って検出する
矛盾原因検出部221と、矛盾原因検出部221によって検出
されたデータの真偽を変更したり、そのデータが代替デ
ータである場合には、他の代替データの真偽を変更し、
矛盾を解消する矛盾解消部222を有する。
推論制御部3は、知識ベース1のルール11をルール評価
部31で評価し、ルール実行部32で実行する。具体的に
は、ルール評価部31では、知識ベース1上の複数のルー
ル11のうち、if部の条件部を満足するルールを検出し、
そのルールのthen部をルール実行部32で、実行する。こ
のとき条件となるデータは一旦支持理由メモリ33に格納
され、ルール11が実行されて得られたデータにあらため
て理由付けデータとして付加される。第2図のルールの
場合は、ワーキングメモリ21に、データ事実1と、事実
2が存在する(書き込まれている)ならば、事実3をワ
ーキングメモリ21に書き込むというルールで、ルール評
価部31は、ワーキングメモリ21に、事実1、事実2があ
れば、このルールを実行可能と評価し、ルール実行部32
でルールを実行し、ワーキングメモリ管理部23を介して
ワーキングメモリ21に事実3を書き込む。プロダクショ
ンルール1のthen部には、第2図の事実3のような推論
結果の書き込み命令のほかに、既にワーキングメモリ21
上に書かれているデータの修正や、削除の命令が記述で
きる。このように、複数のルールがワーキングメモリ21
上のデータを条件として実行され、新たな事実3をワー
キングメモリ21上に書き込んでいくので本発明ではワー
キングメモリ21上のデータに応じて推論を進めている。
複数の問題解決器を接続して推論を行う場合には、各々
の通信管理部4を介して接続する。通信管理部4を含め
た第1図の構成が1つの問題解決器となる。
次にTMS22について、その概略を説明する。TMSを組込ん
だ黒板モデルにおいて、ルールを実行して得られた推論
結果はワーキングメモリ21に書き込まれる際に、その推
論結果を得るための条件が付加される。例えば、第2図
のルールにおいて、推論結果としてワーキングメモリに
書込む事実3は、事実1と事実2を条件としたものであ
る。このため、ワーキングメモリ21に事実3を書き込む
場合、第3図のように、事実3を得るための条件である
事実1と事実2が理由付けデータとして一緒にワーキン
グメモリ21に書き込まれる。ワーキングメモリ21上にあ
るデータには例えばルールの条件データとして仮定が用
いられた結果得られた仮定データと、代替となるデータ
を有する代替データ等がある。
このように推論を実行しワーキングメモリ21上のデータ
が追加又は変更されていく過程で、互いに相反する事実
を真とするデータが存在するならば、ルール評価部31
は、それらのデータを条件とし、矛盾が発生したことを
示すデータ(矛盾発生データ)をワーキングメモリ21に
書き込むルールを選択し実行する。
任意のデータがワーキングメモリ21に書き込まれる時に
は、前述のとおりワーキングメモリ管理部23を介する。
TMS22はワーキングメモリ管理部23に接続されているの
で、ワーキングメモリ21に矛盾発生データが書き込まれ
た時に、ワーキングメモリ管理部23を介して矛盾発生デ
ータを検出する。
こうして仮定に基づいた推論を行なっていく。すなわ
ち、あるルールにより仮定をたて(仮定データを黒板に
書き込む)、それに基づいて、推論を進めていき、も
し、その仮定が間違っていれば、その仮定を破棄するよ
うに推論方法である。この時、推論過程において、矛盾
のあるデータが生じた時は、第4図のように、矛盾の原
因となった仮定を見つけ出し、その仮定および仮定に基
づいて推論された結果を全て御破算すすればよい。こ
の、原因となる仮定データの検出や、その仮定に基づい
て生成されたデータの検出は、前述した理由付けをたど
ることにより実現可能となる。
TMSでは、黒板に書くデータを、前提、仮定、導出の3
種類のデータに分類している。よって、黒板上に矛盾デ
ータが生じた場合、理由付けデータを遡ることによって
矛盾の原因となった仮定データを検出し、その仮定デー
タの真偽を偽として以降信じないようにすることによ
り、黒板上のデータが常に矛盾のない状態に保たれる。
ここで、データが信じられているとは、第3図におい
て、そのデータの真偽を示す情報が真(in)のもので、
信じられていないデータは、偽(out)のものである。
偽とされたデータは、プロダクションルールの条件とな
るデータとしてワーキングメモリ21からアクセスできな
い状態となり、黒板3上に存在しないデータとして扱か
われる。
さて、各種推論においては、あるデータの解釈が一意に
決まらないことがよく生じる。例えば、文字“はし”に
対して、文字のみでは橋、端、箸のうちのどの単語であ
るかを決定できず、前後の文や単語との関係により決ま
ることがある。このような場合、我々は、複数の解釈の
うちのいずれかを1つ、とりあえず信じて推論を進めて
いき、その結果が矛盾の生じるものであった時に、その
解釈をやめ、別の代替となるものを評価することを自然
に行なっている。
本発明の代替データは、このように代替案があるデータ
を黒板上に書く時に用いる。そして、そのデータの理由
づけには、生成される上での根拠の他に、代替となるデ
ータ名をも付与しておく。これにより、第4図におい
て、代替案を有する代替データか否かの判断や、他の代
替データをoutからinにする場合に、この理由付けを用
いて行なうことが可能となる。すなわち、黒板2上に矛
盾が生じた時、理由付けデータをさかのぼり、条件とな
るデータとして使用されている仮定データ又は代替デー
タを矛盾の原因として検索する。もし、矛盾の原因とし
て検索されたデータが仮定データである場合は、その仮
定データを偽とし、これに基づいて推論された結果をす
べて破棄する。もし、矛盾の原因として検索されたデー
タが代替データであり、かつ、代替可能なデータが存在
すれば、仮定データと同様にして、検索されたデータの
真偽を偽とし、そのデータに基づいて推論された結果を
すべて破棄するとともに、代替可能なデータの真偽を真
とし、推論を再開する。ただし、代替となるデータが存
在しない時ぱ、更に、矛盾原因の仮定、代替データの検
索を続ける。
このように、TMSの機能を損うことなく、代替案のある
データの推論が容易に実現できる。以下に、本発明を自
然言語処理に適用した例を示す。
第5図において、問題解決器1は、利用者からのキィー
入力を1文字づつ読み込み、読み込んだ文字と、既に読
み込まれて黒板上に書かれている文字列とを、まとめ
て、問題解決器2に転送する機能の知識源であり、問題
解決器2は、入力された文字列に対して、形態素解析を
行なう機能の知識源である。これらの各問題解決器は、
それぞれ1文字入力される毎に、パイプライン的に処理
を行なう。利用者の入力として「きたぐちから(北口か
ら)」を例として第6図を用いて説明する。利用者が文
字「き」を入力すると、問題解決器1は、入力文字
「き」61を受け取る。ここで、この文字は、最初の入力
であるので、文字列が“き”で、文字数が1である文字
列フレーム62を自分の黒板上に生成すると共に、問題解
決器2に転送する。(フレームは1以上のスロットから
なり、1つのスロットには1種類の情報が格納されてい
る。)問題解決器2は、送られてきた文字列フレーム64
の文字列「き」に対して、まず、文字列の末尾で終了す
る形態素を検出し、その形態素の文字列における存在位
置(始点tsと終点位置te)および、その単語構造wsをリ
ストとして該当するパーズリストフレーム65に格納す
る。ここで、単語構造wsは、例えば{漢字、品詞、活
用}から構成されるものであり[ts,ws,te]の形式で格
納する。パーズリストフレーム65は、文字位置とリスト
のスロットを有する。検出された形態素は、その終点位
置を文字位置スロット値とするパーズリストフレームを
検出し、そのリストスロットに格納する。もし、該当す
るパーズリストフレームが黒板上に存在しない場合は、
新たにパーズリストフレームを作成し、黒板上に追加す
る。第6図は、この状態を示したもので、矢印は、フレ
ームが追加された時の根拠となるフレームを示す。問題
解決器2では、更に、部分形態素列フレーム66を作成す
る。これは、文字数スロット、部分形態素列スロットを
もち、文字数スロット値で示される入力文字数までの形
態素列スロットに格納するものである。具体的には、文
字位置スロット位がiのパーズリストフレームが存在す
れば、そのリストスロットに格納されている形態素[t
s,ws,i]を取り出す。そして、文字数スロット値がtsで
ある部分形態素列フレームの部分形態素列スロット値と
接続した新たな部分形態素列を作成する。そして、作成
され部分形態素列を部分形態素スロット値とし、文字数
スロット値がtsである新たな部分形態素列フレームを黒
板上に追加する。この追加された部分形態素列フレーム
には、参照した部分形態素列フレームとパーズリストフ
レームが根拠となる。第6図は、先の入力「き」につい
ての例で、この場合は文頭から始まる文字であるため、
参照する部分形態素列フレームはなく、パーズリストフ
レーム65のみを根拠とする。以降「た」、「ぐ」、
「ち」、「か」、「ら」の各文字が入力された場合に生
じる問題解決器2の黒板上に追加されるフレームと、そ
の根拠の関係の例を第7図に示す。第7図で、c−iは
文字フレーム、cs−iは文字列フレーム、PL−iはパー
ズリストフレーム、PLX−iは、部分形態素列フレーム
である。スロット名および理由スロットは、省略してい
る。また、問題解決器1,2の文字列フレームは、1つに
まとめて示している。
ここで、問題解決器1は、問題解決器2にデータを転送
する際、第6図のように、黒板上に転送データ来歴63を
記録する。具体的には、送信先の問題解決器名と、転送
したデータを記憶する。この来歴にも、根拠は付与され
る。この来歴データは第7図では省略している。
さて、ここで利用者が「北口から」ではなく、「北口
に」を入力するつもりであったことに気付き、修正を行
なう場合を考える。すなわち、利用者が「デリート」キ
ィーを入力した場合である。問題解決器1に「デリー
ト」キィーが受け付けられ、黒板上に書かれると、矛盾
検出用ルールが起動する。このルールは、現在黒板上に
書かれている最も新しい文字(「デリート」は除く)を
検出し、その文字が矛盾したものであることを黒板上に
書く。
黒板上に矛盾が生じた場合、その黒板のTMSが起動され
る。そして例えば、第7図の矛盾とされたデータC−5
の真偽をoutとし、更に、そのデータを根拠として生成
されたデータも除く。すなわち、文字例フレームCS−5
の真偽がoutとされる。また、同様に、転送来歴データ
(図示しない)も除かれるが、転送来歴データの削除の
際には、その転送先に、除かれたデータが矛盾であると
いうデータを転送する。
問題解決器2は、データが転送されてくると、そのデー
タを黒板に書き込む。ここで、データとしては、先に送
られた文字列“きたぐちから”をもつ文字列フレームCS
−5が、不正であるというデータである。このため、問
題解決器2のTMSが起動する。ここで、矛盾を知らすデ
ータと、矛盾とされたデータが、どちらも同じ問題解決
器からのデータである場合、すなわち、理由付けに、同
じ問題解決器名が記述されている場合は、そのデータが
矛盾であると判断する。すなわち、文字列“きたぐちか
ら”をもつ文字列フレームが除かれ、更に、文字列位置
が6であるパズリストフレームPL−4と部分形態素列フ
レームPLX−6〜8が除かれる。
利用者が「から」の「か」を消すために、更に、「デリ
ート」キィーを入力すると、同様にして、問題解決器1,
2の黒板が更新される。すなわち、「きたぐち」までの
入力時と同じ状態に復帰可能となる。
このように、問題解決器1に、矛盾検出用ルールを設け
るのみで、問題解決器1,2の黒板の不正データは全て自
動的に解消される。
さて、黒板を介して、複数の知識源を協調動作させる場
合、各知識源が最善な解を求めていくことにより効率良
く目的を達成できる。例えば、先の形態素解析において
は、文節数が最小となる形態素列が正しい解析結果であ
る確率が高いことが知られている。このため、例えば第
7図において、入力「きた」までの部分形態素列のう
ち、PLX−2のみを黒板上に書き、PLX−1は、知識源内
部に保留する。これにより、後に続く構文、意味解析で
はむだな処理が削減できる。そして、PLX−2が否定さ
れた時、次善の解であるPLX−1を提案する。
このような処理を実現するため、TMSで扱う前提デー
タ、仮定データ、導出データに代替データを追加する。
TMSでは、矛盾が生じた時は、矛盾データの根拠を逆上
り、仮定データを検出し、その仮定データを信じないこ
とにより矛盾を解消するが、本発明では、仮定と代替の
両方を対象として検出する。そして、代替データが検出
された場合は、そのデータを覆し、仮定データ同様それ
を根拠とするデータも覆す。
矛盾検出ルールとして、解のない代替データは矛盾であ
るというルールを設ける。
これにより、知識源は、 「起動条件となるデータが黒板上に存在し、黒板上に、
知識源の解がない時」 を起動条件とし、 「まだ黒板上に提案していない解のうち、最善の解を代
替データとして書く。但し、提案する解がない場合は、
解のない代替データを書く。」 という簡単な構成で、上記機能を実現できる。
例えば、形態素解析が文字列の入力により、AとBの形
態素列を求め、Aを黒板に書いたとする。ここで、更
に、Aの代替案のデータとして、解なしの代替データも
黒板に書く。そして、Aと、この解なしの代替データは
互いに代替となるデータであることを理由づけに格納す
ると共に、後者の真偽は、保留とするため、偽(out)
とする。
次に、このAが構文解析で正しくないとされた時、構文
解析は、Aが矛盾していることを黒板に書く。これによ
り、TMSが起動し、Aが除かれ、代替の解である解なし
の代替データがinとなる。これにより、形態素解析が起
動され、次善の解Bを黒板に書く。ここで、B以外にも
う代替となる解がないので、Bのみを書く。もし、Bも
構文解析で不正とされると、TMSが起動するが、TMSは、
Bに代替の解がないので、Bが生成される原因となった
仮定と代替データの検出を行なう。形態素解析の場合
は、入力文字列を根拠とするため、これ以上逆上れない
が、構文解析の場合は、形態素解析の代替の評価に逆上
れる。もし、逆上っても、仮定又は代替データがない時
は、最も根本の代替データを提示することも考えられ
る。
さて、全ての推論を、1つの問題解決器で行なう場合は
問題ないか、推論処理を複数の問題解決器に分散させて
行なう場合には、次のような問題が生じる。今第5図の
構成を第8図のように、問題解決器3を介して、問題解
決器1,2が結合する場合を考える。
第1の問題は、問題解決器2は、最善の解を問題解決器
3に転送し、残りを問題解決器2の内部に保留する。こ
のため、先に示した利用者の入力変更があった場合、問
題解決器2の保留されたデータに、矛盾をどうやって伝
えるかという問題である。
第2の問題は、問題解決器3から2に問合せを行ない、
その解が問題解決器2から3に転送されたとき、問題解
決器3の黒板上で送られた解の理由付けに、問合せデー
タが直接指定されないという問題である。すなわち、い
ちいち他の問題解決器を経由しないと、理由づけをたど
れなくなる。
第3図の問題は、第1の問題とは逆に、問題解決器2が
問題解決器3に送ったデータが、問題解決器3において
不正とされた場合、それをどのようにして、問題解決器
2に伝えるかという問題である。すなわち、伝達されな
いと、問題解決器2は不正とされたデータに基づいた、
むだな推論を行なうことになる。
第1の問題は、第5図において説明した、入力機能と形
態素解析機能における例と同様の方法により解決可能で
ある。すなわち、第8図において、問題解決器2が形態
素解析を行なうとする。問題解決器1から文字列フレー
ムが送られ、問題解決器3の黒板に書かれる。問題解決
器3のルールには、先に示した知識源の起動ルールが書
かれており、文字列が入力されると、それを問題解決器
2に転送する。これにより、問題解決器2は、その文字
列の形態素解析を行ない、解を問題解決器3に送る。こ
こで、問題解決器1から3へ文字列フレームの矛盾が示
された時、問題解決器3のTMSは、問題解決器1と同様
にしてその矛盾を問題解決器2に知らせることができ
る。
次に、第2の問題のために、本発明では次の機能を第11
図の通信管理部4に設ける。まず、データ送信時には、
送信するデータの根拠を遡り、他の問題解決器から送ら
れたデータを根拠としている場合は、そのデータの理由
も、送信するデータの理由付けとする。次に、受信する
場合、そのデータの理由付けに、自分自身の理由付けが
あった場合は、黒板上の他のデータの理由付けと同じ形
式に戻して、黒板上に書き込む機能である。
例えば、第7,8図において、問題解決器3に、CS−1が
あり、それを根拠として、問題解決器2にCS−1を転送
する。この時転送するCS−1の理由付けは、[PS3([C
S−1])]となる。問題解決器2ではPL−1、PLX−
1、PLX−2を作成するが、それらの理由付けは、それ
ぞれ、[CS−1]、[PLX−0、PL−1]、[PL−1]
となる。ここで、PLX−2を問題解決器3に転送する
時、PL−1を介して、CS−1の理由付けが、問題解決器
3からのものであることが判る。このため[PS3([CS
−1]、PS2([PLX−26])]を理由付けとして、転送
する。問題解決器3は、このデータに自分の理由付けが
あるため、PXX−2の理由付けを、[CS−1,PS2([PLX
−2])]として、黒板に書く。これにより、問題解決
器3の黒板上でPLX−2から直接CS−1に逆上ることが
可能となり、また逆も可能となる。すなわち、設計者が
意識することなく、黒板上の理由付けの一貫性を保つこ
とが可能となる。
第3の問題は、TMSにより消去されるデータの理由付け
に、直接他の問題解決器からの理由付けがあった場合に
は、その問題解決器に、そのデータが矛盾であることを
伝えることによって解決することができる。例えば、第
7図において、何らかの理由でPLX−5が不正であった
とすると、問題解決器3のPLX−5の理由付けは、[CS
−3,PS2([PLX−2,PL−3])であるので、矛盾データ
は[PS3([CS−3])、PS−2([PLX−2,PL−
3])]を理由付けとして、PLX−5を矛盾として問題
解決器2に送る。問題解決器2では、TMSが起動し、PLX
−5をoutにする。これにより、PLX−8および、PLX−
5,8の転送来歴データもoutにされる。したがって、問題
解決器3は、問題解決器2にPLX−5とPLX−8が矛盾で
あることを伝える。そして、問題解決器2のTMSが起動
し、そのPLX−8を消去する。但し、PLX−5は、既にou
tであるため、何もしない。このように、整合をとるこ
とが可能となる。
〔発明の効果〕
本発明によれば、各問題解決器の大域的な記憶領域上で
のデータの不整合は、システム側で解消することができ
るため、知識源の独立性を高めることが可能となり、シ
ステムの構築やメンテナンスが容易となり、並列処理も
可能となる。
【図面の簡単な説明】
第1図は本発明の一実施例の問題解決器のブロック図、
第2図はプロダクションルールの説明図、第3図はデー
タの説明図、第4図は、矛盾の解消処理を示すフローチ
ャート、第5,8図は、本発明の一実施例の構成図、第6,7
図は、黒板上のデータ例を示す図、第9図は、階層モデ
ルの模式図、第10図は、ヘテラキシカルモデルの模式
図、第11図は、黒板モデルの模式図である。

Claims (2)

    【特許請求の範囲】
  1. 【請求項1】条件部と実行部からなるIF−THEN形式のプ
    ロダクションルールとデータに基づいて推論処理を行う
    複数の問題解決器間の送受信を通じて推論処理を行う推
    論処理システムにおいて、 上記データは、 データの真偽を格納する真偽スロットと、 上記データを導出する根拠である理由データの名称を、
    少なくとも他の問題解決器より送信された理由データに
    ついては上記理由データの名称にその送信元の問題解決
    器の名称を付して格納する理由スロットと、 データの種類として上記データが常に正しい前提データ
    か、仮定に基づいて生成された仮定データか、他に代替
    となるデータが存在する代替データか、それ以外の導出
    データかを格納する種類スロットとを有するフレーム知
    識で表現され、 上記問題解決器は、 推論処理中に生成される中間処理結果データを記憶する
    ワーキングメモリと、 上記中間処理結果のデータの上記ワーキングメモリに対
    する入出力を管理するワーキングメモリ管理部と、 互いに真偽の相反する中間処理結果データを真とする不
    正データの存在を条件部として矛盾発生データの生成を
    実行部とする矛盾検出ルールを含む上記プロダクション
    ルールを記憶しておく知識ベースと、 上記ワーキングメモリ管理部と上記知識ベースに接続さ
    れ推論処理を制御する推論制御部と、 上記ワーキングメモリ内に記憶された上記中間処理デー
    タを矛盾なく保持するための真理保全部と、 他の問題解決器と接続してデータの送受信を行う通信管
    理部とを備え、 上記推論制御部は、 上記知識ベースに記憶された上記プロダクションルール
    の中から、条件部を満足する上記ワーキングメモリ内の
    中間処理結果データである理由データの存在するプロダ
    クションルールを検出するルール評価部と、 上記ルール評価部により検出されたプロダクションルー
    ルの実行部の内容を実行し、かつ実行対象とされた中間
    処理結果データの理由スロット及び種類スロットに該当
    する内容を格納する指示を上記ワーキングメモリ管理部
    に伝達して上記ワーキングメモリ内の上記中間処理結果
    データを書き替えるルール実行部とを有し、 上記真理保全部は、 上記ワーキングメモリ中に上記矛盾発生データが書き込
    まれたことを検出することにより起動され、上記不正デ
    ータの理由データを遡って矛盾発生の原因となったデー
    タである仮定データ若しくは代替データを検出する矛盾
    原因検出部と、 上記矛盾発生の原因となったデータ及びそれに基づいて
    導出された全ての導出データを偽とし、かつ、上記矛盾
    発生の原因となったデータが代替データであれば、その
    データの代替となるデータのいずれかを真とする矛盾解
    消部とを有し、 上記通信管理部は、送信すべき送信データの理由データ
    の名称に送信元の問題解決器の名称を付して送信し、さ
    らに、上記送信データの理由データを遡り送信先の問題
    解決器から送信された理由データが存在する場合にその
    理由データの名称を上記送信データの理由データの名称
    に加えて送信することを特徴とする推論処理システム。
  2. 【請求項2】請求項1に記載の推論処理システムにおい
    て、 上記通信管理部は、上記矛盾解消部によって偽とされる
    上記矛盾発生の原因となったデータ及びそれに基づいて
    導出された全ての導出データを他の問題解決器に送信す
    ることを特徴とする推論処理システム。
JP2151675A 1990-06-12 1990-06-12 推論処理システム Expired - Lifetime JPH0774998B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2151675A JPH0774998B2 (ja) 1990-06-12 1990-06-12 推論処理システム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2151675A JPH0774998B2 (ja) 1990-06-12 1990-06-12 推論処理システム

Publications (2)

Publication Number Publication Date
JPH0444127A JPH0444127A (ja) 1992-02-13
JPH0774998B2 true JPH0774998B2 (ja) 1995-08-09

Family

ID=15523791

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2151675A Expired - Lifetime JPH0774998B2 (ja) 1990-06-12 1990-06-12 推論処理システム

Country Status (1)

Country Link
JP (1) JPH0774998B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2669823A1 (en) 2008-08-07 2013-12-04 Brother Kogyo Kabushiki Kaisha Communication device

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01194057A (ja) * 1988-01-29 1989-08-04 Hitachi Ltd 相談装置
JPH01286069A (ja) * 1988-05-13 1989-11-17 Nippon Telegr & Teleph Corp <Ntt> 推論制御方式
JPH01312635A (ja) * 1988-06-13 1989-12-18 Nec Corp 仮説管理方式
JPH0287231A (ja) * 1988-09-24 1990-03-28 Nippon Telegr & Teleph Corp <Ntt> 仮説推論システムにおける仮説管理方式

Also Published As

Publication number Publication date
JPH0444127A (ja) 1992-02-13

Similar Documents

Publication Publication Date Title
Hollunder et al. Qualifying number restrictions in concept languages
Hendrix Encoding knowledge in partitioned networks
US8762969B2 (en) Immutable parsing
CN111797242B (zh) 一种基于代码知识图谱和知识迁移的代码摘要生成方法
Martin-Vide et al. Parallel finite automata systems communicating by states
JPH07141201A (ja) 2パスコンパイラのための改良された方法
Búr et al. Distributed graph queries over models@ run. time for runtime monitoring of cyber-physical systems
Renz-Wieland et al. Nups: A parameter server for machine learning with non-uniform parameter access
Schell Jr Methods for constructing parallel compilers for use in a multiprocessor environment.
US20040177051A1 (en) Enhanced artificial intelligence language
Alviano et al. ASP and subset minimality: Enumeration, cautious reasoning and MUSes
Sabah et al. CARAMEL: A step towards reflection in natural language understanding systems
JPH0774998B2 (ja) 推論処理システム
Bijo et al. A formal model of data access for multicore architectures with multilevel caches
JPH07319682A (ja) ソフトウエア発見システム
Correa Empty categories, chain binding, and parsing
Felty et al. Protocol verification in Nuprl
Harrington Uniqueness logic
Kaarsgaard the logic of reversible computing
Huber et al. Recognizing the plans of screen reader users
Mior et al. ReSpark: Automatic Caching for Iterative Applications in Apache Spark
Dowek Principles of programming languages
Damm et al. Eliminating queues from RT UML model representations
Vityaev et al. Explainable rule-based clustering based on cyclic probabilistic causal models
Zhu Planning and scheduling using temporal logic

Legal Events

Date Code Title Description
EXPY Cancellation because of completion of term