JP3307461B2 - 推論装置 - Google Patents
推論装置Info
- Publication number
- JP3307461B2 JP3307461B2 JP11743093A JP11743093A JP3307461B2 JP 3307461 B2 JP3307461 B2 JP 3307461B2 JP 11743093 A JP11743093 A JP 11743093A JP 11743093 A JP11743093 A JP 11743093A JP 3307461 B2 JP3307461 B2 JP 3307461B2
- Authority
- JP
- Japan
- Prior art keywords
- group table
- collation
- rule
- working memory
- knowledge base
- 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
Links
Landscapes
- Devices For Executing Special Programs (AREA)
Description
などの運用やスケジュール設定、計画を支援するための
エキスパートシステム等における推論装置に関する。
因果関係を表す複数のルールからなる知識ベースと推論
部とからなる推論装置が提案されている(特開昭64−
1035号、特開平1−162936号)。
ック図である。この推論装置50は、専門家の知識を入
れた知識ベース51と、その知識に基づいて推論および
問題解決を実行する推論部52と、推論および問題解決
を実行する際にデータの出し入れを行うためのワーキン
グメモリ53とで構成されており、その周辺には専門家
が知識ベース51を編集するためのエディタ54や、利
用者がたとえば対話形式で推論処理を実行するためのイ
ンタフェース55およびマンマシン部56が備えられ
る。推論は推論部52が知識ベース51とワーキングメ
モリ53のマッチング判定を行い、さらに競合処理、発
火処理の制御を行う。
は、知識ベース51の表現形式が、推論部52の実行対
象となる表現形式に限定されるため、知識ベース51の
表現形式の改訂や拡張が難しいという課題がある。さら
に、推論実行の際、複数のルールが同時に発火すること
を防ぐ競合処理やルールの実行を行う発火処理が、予め
定められた推論部52の仕様の範囲内での選択に限定さ
れているため、推論装置のアーキテクチャや基本OS
(オペレーションシステム)の有効活用が難しいという
課題がある。
ため、推論実行速度の高速化が可能であって、多様な推
論を行うことができる推論装置を提供することである。
を入れた知識ベース2と、データの出し入れを行うため
のワーキングメモリ5と、知識ベース2を所定のコンパ
イラ言語に適合するように表現されたIF群テーブル4
に変換するためのトランスレータ3と、専門家が知識ベ
ース2を編集するためのエディタ6と、利用者が対話形
式で推論処理を実行するためのインタフェース7と、イ
ンタフェース7のマンマシン部8とが備えられ、IF群
テーブル4は、ワーキングメモリ5の操作とインタフェ
ース7の制御を行い、このIF群テーブル4は、ルール
の条件部に関する情報を格納する領域であるIF部照合
用IF群テーブル4aであって、一連のアドレス空間に
各ルールの条件部を格納したルール条件部領域を備え、
さらに各ルール同士の競合を防止するための競合処理お
よびルールの信頼性を各ルール毎に数値化した確実度を
表すCF値を修正するCF値操作を含む各種フラグから
なる重複照合防止手段が設けられるIF部照合用IF群
テーブル4aと、ルールの実行部に関する情報を格納す
る領域であるTHEN部照合用IF群テーブル4bであ
って、一連のアドレス空間に各ルールの実行部を格納し
たルール実行部領域を備え、これらのルールの実行部は
発火すべきルールを指示するための照合属性を有するT
HEN部照合用IF群テーブル4bとを含み、IF部照
合用IF群テーブル4aでは、ワーキングメモリ5の内
容を見ることにより照合属性操作を行い、THEN部照
合用IF群テーブル4bでは、照合属性によって選択さ
れたルールの実行部を実行してワーキングメモリ5を操
作し、このようにして各ルールの推論を実行し、フロッ
ピーディスクまたはディスクメモリに記憶された知識ベ
ース2を取込んだ後、トランスレータ3がIF群テーブ
ル4を更新し、知識ベース2を構成するルール内には、
エレメントおよびフィールドを用いた変数、配列、文字
列、および関数を使用し、ルール内で用いた文字列は、
トランスレータ3によって、予め定める対応表により数
値に変換して、ルールを1個のアドレスを持つ変数とし
てとらえて、発火処理を変数のアドレス照合を用いて実
行し、こうして知識ベース2がIF群テーブル4に変更
されると、次に外部インタフェースまたはTHEN部照
合用IF群テーブル4bの実行によってワーキングメモ
リ5の内容を更新するワーキングメモリ更新動作を行
い、次に、IF部照合用IF群テーブル4aでの照合属
性を操作し、次にIF部照合用IF群テーブル4aでの
重複照合防止操作を行い、次にTHEN部照合用IF群
テーブル4bで実行するTHEN部を決定するために、
照合属性チェックを行った後、そのTHEN部を実行す
るとともに、外部インタフェース7に対する操作および
ワーキングメモリ5の操作を行うか否かを判定して、ワ
ーキングメモリ5の操作を行う場合は、前記ワーキング
メモリ更新動作に移行し、一方、外部インタフェース7
に対する操作を行う場合は外部インタフェース7へアク
セスし、いずれの操作も行わない場合は、推論実行を終
了することを特徴とする推論装置である。
パイラ言語に適合するように表現されたIF群テーブル
4に変換するためのトランスレータ3を備えることによ
って、知識ベース2において表現された各ルールがその
まま実行型式で表現される。知識ベース2は、トランス
レータ3によってコンパイラ言語のソースとしてのIF
群テーブル4に変換される。IF群テーブル4は、IF
部照合用IF群テーブル4aとTHEN部照合用IF群
テーブル4bとを有し、マッチング判定を行うことが可
能となる。ルールの条件部および実行部でコンパイラ言
語による自由な記述が可能であるようにトランスレータ
3が設計されているため、推論を行うコンピュータのア
ーキテクチャを活用することが可能である。また、変換
されたIF群テーブル4が、IF部照合用IF群テーブ
ル4aとTHEN部照合用IF群テーブル4bとを有す
ることによって、推論実行の際の競合処理や発火処理を
円滑に実行することができる。
を示すブロック図である。この推論装置1は、専門家の
知識を入れた知識ベース2とデータの出し入れを行うた
めのワーキングメモリ5と、知識ベース2を所定のコン
パイラ言語に適合するように表現されたIF群テーブル
4に変換するためのトランスレータ3とで構成されてお
り、その周辺には、専門家が知識ベース2を編集するた
めのエディタ6や、利用者がたとえば対話形式で推論処
理を実行するためのインタフェース9およびマンマシン
部8が備えられる。IF群テーブル4はワーキングメモ
リ5の操作とインタフェース7の制御を行う。
部構成を示すブロック図である。このIF群テーブル4
は、ルールの条件部(IF α THEN βの表現形
式の場合、αの部分に相当する)に関する情報を格納す
る領域であるIF部照合用IF群テーブル4aと、ルー
ルの実行部(IF α THEN βの表現形式の場
合、βの部分に相当する)に関する情報を格納する領域
であるTHEN部照合用IF群テーブル4bとで構成さ
れている。IF部照合用IF群テーブル4aは、一連の
アドレス空間に各ルールの条件部を格納したルール条件
部領域を備え、さらに各ルール同士の競合を防止するた
めの競合処理やルールの信頼性を各ルール毎に数値化し
たCF値(確実度)を適宜修正するCF値操作など、各
種フラグからなる重複照合防止手段が設けられる。一
方、THEN部照合用IF群テーブル4bは、一連のア
ドレス空間に各ルールの実行部を格納したルール実行部
領域を備える。これらは発火すべきルールを指示するた
めの照合属性を有し、IF部照合用IF群テーブル4a
では、ワーキングメモリ5の内容を見ることにより照合
属性操作を行い、THEN部照合用IF群テーブル4b
では、照合属性によって選択されたルールの実行部を実
行してワーキングメモリ5を操作する。このようにして
各ルールの推論を実行することができる。
るフローチャートである。まずステップa1からスター
トしてステップa2において、フロッピーディスクやデ
ィスクメモリなどに記憶された知識ベース2を取込んだ
後、トランスレータ3がIF群テーブル4を更新する。
一例である。このルールは、「"Element1"というエレメ
ントのフィールド"Field1"の中身が"active"であり、か
つ"Element5"というエレメントのフィールド"Field4
[0]"の中身が"500"未満であり、かつ"Value2"という変
数の中身が"5"以上である場合、または"Func1()"という
関数の戻し値が"100"である場合、"Element1"というエ
レメントのフィールド"Fieldl"の中身を"inactive"に変
更しなさい。」というルールを表している。なお、ルー
ルのRHS(Right Hand Side)部には、上記の"modify
()"以外の文法として、ディスプレイに表示する"writ
e()"、およびキーボードから入力する"read()"などを用
いることが可能である。
スレータ3によって変換され、たとえばC言語のコンパ
イラ言語における構造体などで表現された変数として格
納され、各ルールは条件部と実行部とに分離されてそれ
ぞれ別のメモリ領域に格納される。
ドを用いた変数、配列、文字列、および関数などを使用
し、自由度の高い記述を行うことができる。ルール内で
用いた文字列は、トランスレータ3によって変換する
際、図5に示す対応表により数値に変換する。これによ
り、変換後のルールにおける文字列操作を排除し、推論
の高速化を図っている。
するアクセス方法を示している。各変数の中身や関数の
戻し値にアクセスする場合、メモリ上に予め配置された
データ格納領域(ワーキングメモリ)へ間接的にアクセ
スする。
ールを1個のアドレスを持つ変数としてとらえて、発火
処理を変数のアドレス照合を用いて実行することによ
り、比較演算処理の高速化を図ることができる。さら
に、変換後のルール中にコンピュータのアーキテクチャ
の積極的活用、すなわちオペレーションシステムのシス
テムコールを自由に活用することができるため、多様な
推論が可能になる。
に変更されると、次に図3のステップa3において外部
インタフェースまたはTHEN部照合用IF群テーブル
4bの実行によってワーキングメモリ5の内容を更新す
る。次に、ステップa4において、IF部照合用IF群
テーブル4aでの照合属性を操作し、次にステップa5
においてIF部照合用IF群テーブル4aでの重複照合
防止操作を行い、次にステップa6においてTHEN部
照合用IF群テーブル4bでの実行するTHEN部を決
定するために、照合属性チェックを行った後、ステップ
a7において、そのTHEN部を実行するとともに、外
部インタフェース7に対する操作およびワーキングメモ
リ5の操作を行うか否かを判定して、ワーキングメモリ
5の操作を行う場合は、ステップa2に移行し、一方、
外部インタフェース7に対する操作を行う場合は外部イ
ンタフェース7へアクセスする。いずれの操作も行わな
い場合は、ステップa8に移行して推論実行を終了す
る。
実行の高速化が可能になるとともに、推論処理と併行し
てコンピュータのアーキテクチャを積極的に活用するこ
とができるため、多様な推論が可能になる。本発明によ
れば、知識ベース2を構成するルール内には、エレメン
トおよびフィールドを用いた変数、配列、文字列、およ
び関数を使用し、ルール内で用いた文字列は、トランス
レータ3によって、予め定める対応表により数値に変換
して、ルールを1個のアドレスを持つ変数としてとらえ
て、発火処理を変数のアドレス照合を用いて実行するの
で、変換後のルールにおける文字列操作を排除し、推論
の高速化を図ることができるとともに、変換後のルール
中にコンピュータのアーキテクチャの積極的活用、すな
わちオペレーションシステムのシステムコールを自由に
活用することができるため、多様な推論が可能になる。
ック図である。
ブロック図である。
である。
方法の一例である。
る。
Claims (1)
- 【請求項1】 専門家の知識を入れた知識ベース2と、 データの出し入れを行うためのワーキングメモリ5と、 知識ベース2を所定のコンパイラ言語に適合するように
表現されたIF群テーブル4に変換するためのトランス
レータ3と、 専門家が知識ベース2を編集するためのエディタ6と、 利用者が対話形式で推論処理を実行するためのインタフ
ェース7と、 インタフェース7のマンマシン部8とが備えられ、 IF群テーブル4は、ワーキングメモリ5の操作とイン
タフェース7の制御を行い、 このIF群テーブル4は、 ルールの条件部に関する情報を格納する領域であるIF
部照合用IF群テーブル4aであって、一連のアドレス
空間に各ルールの条件部を格納したルール条件部領域を
備え、さらに各ルール同士の競合を防止するための競合
処理およびルールの信頼性を各ルール毎に数値化した確
実度を表すCF値を修正するCF値操作を含む各種フラ
グからなる重複照合防止手段が設けられるIF部照合用
IF群テーブル4aと、 ルールの実行部に関する情報を格納する領域であるTH
EN部照合用IF群テーブル4bであって、一連のアド
レス空間に各ルールの実行部を格納したルール実行部領
域を備え、これらのルールの実行部は発火すべきルール
を指示するための照合属性を有するTHEN部照合用I
F群テーブル4bとを含み、 IF部照合用IF群テーブル4aでは、ワーキングメモ
リ5の内容を見ることにより照合属性操作を行い、 THEN部照合用IF群テーブル4bでは、照合属性に
よって選択されたルールの実行部を実行してワーキング
メモリ5を操作し、このようにして各ルールの推論を実
行し、 フロッピーディスクまたはディスクメモリに記憶された
知識ベース2を取込んだ後、トランスレータ3がIF群
テーブル4を更新し、 知識ベース2を構成するルール内には、エレメントおよ
びフィールドを用いた変数、配列、文字列、および関数
を使用し、ルール内で用いた文字列は、トランスレータ
3によって、予め定める対応表により数値に変換して、
ルールを1個のアドレスを持つ変数としてとらえて、発
火処理を変数のアドレス照合を用いて実行し、 こうして知識ベース2がIF群テーブル4に変更される
と、次に外部インタフェースまたはTHEN部照合用I
F群テーブル4bの実行によってワーキングメモリ5の
内容を更新するワーキングメモリ更新動作を行い、次
に、IF部照合用IF群テーブル4aでの照合属性を操
作し、次にIF部照合用IF群テーブル4aでの重複照
合防止操作を行い、次にTHEN部照合用IF群テーブ
ル4bで実行するTHEN部を決定するために、照合属
性チェックを行った後、そのTHEN部を実行するとと
もに、外部インタフェース7に対する操作およびワーキ
ングメモリ5の操作を行うか否かを判定して、 ワーキングメモリ5の操作を行う場合は、前記ワーキン
グメモリ更新動作に移行し、一方、外部インタフェース
7に対する操作を行う場合は外部インタフェース7へア
クセスし、いずれの操作も行わない場合は、推論実行を
終了することを特徴とする推論装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP11743093A JP3307461B2 (ja) | 1993-05-19 | 1993-05-19 | 推論装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP11743093A JP3307461B2 (ja) | 1993-05-19 | 1993-05-19 | 推論装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH06332705A JPH06332705A (ja) | 1994-12-02 |
JP3307461B2 true JP3307461B2 (ja) | 2002-07-24 |
Family
ID=14711456
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP11743093A Expired - Fee Related JP3307461B2 (ja) | 1993-05-19 | 1993-05-19 | 推論装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3307461B2 (ja) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7539974B2 (en) * | 2003-10-24 | 2009-05-26 | Microsoft Corporation | Scalable synchronous and asynchronous processing of monitoring rules |
-
1993
- 1993-05-19 JP JP11743093A patent/JP3307461B2/ja not_active Expired - Fee Related
Non-Patent Citations (2)
Title |
---|
「明電時報」No.211(1990)P.42〜46 |
「第11回知識・知能シンポジウム講演論文集」(1990−3)P.1〜6 |
Also Published As
Publication number | Publication date |
---|---|
JPH06332705A (ja) | 1994-12-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3009215B2 (ja) | 自然語処理方法および自然語処理システム | |
US5555169A (en) | Computer system and method for converting a conversational statement to computer command language | |
CA1316262C (en) | Version management tool | |
JP2670345B2 (ja) | プログラム自動生成装置 | |
US5768590A (en) | Program generating system for application-specific add-on boards using the language of individuals | |
JPH0778742B2 (ja) | コンピユータ・プログラム言語変換装置及びその方法 | |
US6212677B1 (en) | Generating a natural language specification of a computer program by generating an intermediate expression table based on a flow chart from analyzed syntax of the program | |
Benbasat et al. | A structured approach to designing human-computer dialogues | |
JPH06290086A (ja) | 構造データ処理装置 | |
JP2845618B2 (ja) | エキスパートシステム | |
Forgie | A time-and memory-sharing executive program for quick-response, on-line applications | |
JP3186117B2 (ja) | データ中心型ソフトウエア部品によるプログラム自動生成システム | |
JP3307461B2 (ja) | 推論装置 | |
JPH01298435A (ja) | 自動プログラミング装置 | |
WO2013015109A1 (ja) | モジュールの構造解析を支援する装置及びプログラム | |
JP2798118B2 (ja) | データベース問合せ文作成装置 | |
JPH0527951A (ja) | プログラム群管理システム | |
US5241623A (en) | Method and system for delineation of structure and linkages between knowledge base modules | |
US20020143748A1 (en) | Method and system for providing a generic scalar function | |
JP2747164B2 (ja) | ソフトウェア・シミュレータ | |
JPH06214776A (ja) | ソフトウェア自動生成システム | |
Marín et al. | Asynchronous dialogue control in a medical graphic interface | |
JPS63113631A (ja) | ソフトウエア部品検索システム | |
Stohr et al. | Languages for decision support systems: An overview | |
JPS60247706A (ja) | 設備群制御装置のシステム状態トラツキング方式 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090517 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100517 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110517 Year of fee payment: 9 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110517 Year of fee payment: 9 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120517 Year of fee payment: 10 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120517 Year of fee payment: 10 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130517 Year of fee payment: 11 |
|
LAPS | Cancellation because of no payment of annual fees |