JPH04209028A - Expert system structuring tool - Google Patents
Expert system structuring toolInfo
- Publication number
- JPH04209028A JPH04209028A JP2340734A JP34073490A JPH04209028A JP H04209028 A JPH04209028 A JP H04209028A JP 2340734 A JP2340734 A JP 2340734A JP 34073490 A JP34073490 A JP 34073490A JP H04209028 A JPH04209028 A JP H04209028A
- Authority
- JP
- Japan
- Prior art keywords
- expert system
- language
- program
- debugging
- editing
- 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
Links
- 230000007246 mechanism Effects 0.000 claims description 7
- 230000014509 gene expression Effects 0.000 claims description 6
- 230000008707 rearrangement Effects 0.000 abstract 1
- 238000010276 construction Methods 0.000 description 11
- 230000006870 function Effects 0.000 description 7
- 239000000700 radioactive tracer Substances 0.000 description 7
- 238000006243 chemical reaction Methods 0.000 description 6
- 230000000694 effects Effects 0.000 description 3
- 238000010586 diagram Methods 0.000 description 2
- 238000000034 method Methods 0.000 description 2
- 230000003213 activating effect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
Landscapes
- Debugging And Monitoring (AREA)
- Devices For Executing Special Programs (AREA)
Abstract
Description
【発明の詳細な説明】
〔産業上の利用分野〕
本発明は、事実知識や推論知識等を使用して問題解決の
ための推論を行うエキスパートシステムを構築するため
のエキスパートシステム構築ツールに関する。DETAILED DESCRIPTION OF THE INVENTION [Field of Industrial Application] The present invention relates to an expert system construction tool for constructing an expert system that makes inferences for solving problems using factual knowledge, inference knowledge, and the like.
従来、この種のエキスパートシステム構築ツールは、L
ISPやC等の特定の言語上での開発用のツールである
か、或いは既存の言語とは全く独立のツールとして実現
されていた。Conventionally, this type of expert system construction tool is
It was either a tool for development in a specific language such as ISP or C, or it was realized as a tool completely independent of existing languages.
上述した従来のエキスパートシステム構築ツールのうち
、特定の言語上での開発用として捉供されるツールでは
、次のような問題点がある。Among the conventional expert system construction tools mentioned above, tools that are provided for development on a specific language have the following problems.
■ その言8nごとに、編集機構やデバッグ機構を開発
しなければならず、開発コストがかかる。■Editing mechanisms and debugging mechanisms must be developed for each 8n, which increases development costs.
■ C0BOL等のコンパイラ言語の場合には、知識や
推論の逐次デバッグ機能の実現が難しく、デバッグを効
率的に行えない。■ In the case of a compiler language such as C0BOL, it is difficult to implement a sequential debugging function for knowledge and inference, and debugging cannot be performed efficiently.
■ 特定の言語に依存したものとなるので、知識の移行
性や共通性が悪い。■ Because it depends on a specific language, the transferability and commonality of knowledge is poor.
また、既存の言語と全く独立のツールでは、次のような
問題点がある。Additionally, tools that are completely independent of existing languages have the following problems.
■ 従来の資産、たとえば既存言語のプログラム。■ Legacy assets, such as programs in existing languages.
データ等との結合ができず、それらの有効利用が困難に
なり、延いてはシステムの拡張性に欠ける。It is not possible to combine data, etc., making it difficult to use them effectively, and as a result, the system lacks expandability.
そこで本発明の目的は、上記■〜■のような問題点を解
消したエキスパートシステム構築ツールを提供すること
にある。SUMMARY OF THE INVENTION An object of the present invention is to provide an expert system construction tool that solves the problems described above.
[課題を解決するための手段〕
本発明のエキスパートシステム構築ツールは上記の目的
を達成するために、
特定の言語に依存しない知識表現と推論機構を持つエキ
スパートシステム記述言語で記述されたプログラムを編
集する編集手段と、
前記編集されたプログラムの実行時デバッグを行う実行
時デバッグ手段と、
前記編集されたプログラムを入力し、既存言語をエキス
パートシステム用に拡張したエキスパートシステム用拡
張言語で記述されたプログラムに変換する変換手段とを
有している。[Means for Solving the Problem] In order to achieve the above objectives, the expert system construction tool of the present invention edits a program written in an expert system description language that has a knowledge expression and inference mechanism that does not depend on a specific language. a runtime debugging means for performing runtime debugging of the edited program; and a program written in an extended language for expert systems, which is an extension of an existing language for expert systems, into which the edited program is input. and conversion means for converting into.
本発明のエキスパートシステム構築ツールにおいては、
編集手段が、表示装置の画面上等において利用者が特定
の言語に依存しない知識表現と推論機構を持つエキスパ
ートシステム記述言語でプログラムを作成する際の編集
機能を提供し、実行時デバッグ手段が、利用者が編集手
段を使用して作成した上記プログラムの実行時デバッグ
を制御し、変換手段が、上記プログラムを入力し、既存
言語をエキスパートシステム用に拡張したエキスパート
システム用拡張言語で記述されたプログラムに変換する
。In the expert system construction tool of the present invention,
The editing means provides an editing function for a user to create a program on the screen of a display device, etc. in an expert system description language that has a knowledge expression and inference mechanism that does not depend on a specific language, and the runtime debugging means A program that controls run-time debugging of the above program created by the user using the editing means, and in which the conversion means inputs the above program and is written in an extension language for expert systems, which is an extension of an existing language for expert systems. Convert to
(実施例〕
次に、本発明の実施例について図面を参照して詳細に説
明する。(Example) Next, an example of the present invention will be described in detail with reference to the drawings.
第1図は本発明の一実施例の構成図である。同図におい
て、2は、特定の言語に依存しない知識表現と推論機構
を持つエキスパートシステム記述言語として本実施例の
エキスパートシステム構築ツール1が規定したエキスパ
ートシステム記述言語で記述されたプログラム(エキス
パートシステム記述言語プログラム)であり、本実施例
のエキスパートシステム構築ツール1は、そのようなエ
キスパートシステム記述言語プログラム2の編集を図示
しないCRTやキーボード等の利用者入出力装置を介し
て利用者と対話形式で行う編集手段3°と、この編集手
段3の編集機能を使って作成されたエキスパートシステ
ム記述言語プログラム2を解釈しながら実行時デバッグ
を行う実行時デバッグ手段4と、デバッグ後のエキスパ
ートシステム記述言語プログラム2を、既存言語たとえ
ばC0BOLやC等の言語をエキスパートシステを用に
拡張したエキスパートシステム用拡張言語で記述された
プログラム(エキスパートシステム用拡張言語記述プロ
グラム)6に変換する変換手段5とを有している。FIG. 1 is a block diagram of an embodiment of the present invention. In the same figure, 2 is a program written in an expert system description language (expert system description The expert system construction tool 1 of this embodiment edits such an expert system description language program 2 in an interactive manner with the user via a user input/output device such as a CRT or keyboard (not shown). a runtime debugging means 4 that performs runtime debugging while interpreting the expert system description language program 2 created using the editing function of the editing means 3; and an expert system description language program after debugging. 2 into a program (expanded language description program for expert system) 6 written in an extended language for expert system, which is an extension of an existing language such as C0BOL or C for use in the expert system. ing.
本実施例で使用するエキスパートシステム記述言語は、
知識表現としてフレームとルールの表現を提供しており
、エキスパートシステム記述言語プログラム2中のフレ
ーム定義7.ルール定義10はそれらの表現で記述され
たものである。そして、フレーム定義7の中では、手続
き他処理を行うものとしてフレームアクセス命令8や入
出力命令9を含んでおり、これらにより所望の推論等が
行えるようになっている。これに対応して、Wfi手段
3は、フレームの編集を行うためのフレームエディタ1
1と、ルールの編集を行うためのルールエディタ12と
を内蔵しており、フレーム、ルールをそれに適したエデ
ィタで編集できるようにしている。The expert system description language used in this example is
It provides the expression of frames and rules as knowledge expressions, and the frame definition in the expert system description language program 7. The rule definition 10 is written using these expressions. The frame definition 7 includes a frame access instruction 8 and an input/output instruction 9 for performing procedures and other processing, and these allow desired inference and the like to be performed. Correspondingly, the Wfi means 3 uses the frame editor 1 for editing the frame.
1 and a rule editor 12 for editing rules, so that frames and rules can be edited with an editor suitable for them.
他方、推論機構としては、フレームやルールの定義に基
づく推論の実行を司るものが推論実行制御手段13とし
て実行時デバング手段4に含まれる。また、ルールの実
行順序等の採取や所定のルール実行時での一時中断等の
機能を提供するルールトレーサ/ルールブレーカ14と
、命令の実行順序等の採取や所定の命令実行時での一時
中断等の機能を提供する命令トレーサ/命令ブレーカ1
5も実行時デバッグ手段4に設けられている。実行時デ
バッグに際しては、推論実行制御手段13とルールトレ
ーサ/ルールブレーカ14と命令トレーサ/命令ブレー
カ15とが連携し、具体的には推論実行制御手段13が
必要に応じてルールトレーサ/ルールブレーカ14およ
び命令トレーサ/命令ブレーカ15を呼び出すことによ
り、推論実行のデバッグを支援する。On the other hand, as an inference mechanism, one that controls the execution of inference based on the definition of frames and rules is included in the runtime debugging unit 4 as an inference execution control unit 13. In addition, there is a rule tracer/rule breaker 14 that provides functions such as collecting the execution order of rules and temporarily suspending the execution of a predetermined rule, and a rule tracer/rule breaker 14 that provides functions such as collecting the execution order of rules and temporarily suspending the execution of a predetermined rule. Instruction tracer/instruction breaker 1 that provides functions such as
5 is also provided in the runtime debugging means 4. During runtime debugging, the inference execution control means 13, the rule tracer/rule breaker 14, and the instruction tracer/instruction breaker 15 cooperate, and specifically, the inference execution control means 13 debugs the rule tracer/rule breaker 14 as necessary. By calling the instruction tracer/instruction breaker 15, debugging of speculative execution is supported.
本実施例のエキスパートシステム構築ツール1は上述し
た構成を有するため、利用者は、編集手段3を使用して
本実施例のエキスパートシステム構築ツールlが規定す
るエキスパートシステム記述言語で記述されたエキスパ
ートシステム記述言語プログラム2を作成することがで
き、また、実行時デバッグ手段4を使用して、既存言語
と結合する前の段階でエキスパートシステム記述言語プ
ログラム2の実行時デバッグを行うことができる。Since the expert system construction tool 1 of this embodiment has the above-described configuration, the user can use the editing means 3 to create an expert system written in the expert system description language specified by the expert system construction tool 1 of this embodiment. A description language program 2 can be created, and the runtime debugging means 4 can be used to perform runtime debugging of the expert system description language program 2 before combining it with an existing language.
そして、デバッグ終了後に変換手段5を起動すれば、既
存言語をエキスパートシステム用に拡張したエキスパー
トシステム用拡張言語で記述されたエキスパートシステ
ム用拡張言語記述プログラム6を得ることできる。なお
、このエキスパートシステム用拡張言語記述プログラム
6は既存言語を拡張したものであるので、既存言語のプ
ログラムと同様に編集、デバッグが可能である。Then, by activating the conversion means 5 after the debugging is completed, it is possible to obtain an extended language description program 6 for an expert system written in an extended language for an expert system, which is an extension of an existing language for an expert system. Note that since this extended language description program 6 for expert systems is an extension of an existing language, it can be edited and debugged in the same way as programs in existing languages.
以上の実施例では、変換手段5を1つだけ設けたが、エ
キスパートシステム記述言語プログラム2を、それぞれ
異なる既存言語をエキスパートシステム用に拡張したエ
キスパートシステム用拡張言語で記述されたプログラム
に変換する変換手段を複数個設けることにより、任意の
既存言語に対応するエキスパートシステムの構築が可能
となる。In the above embodiment, only one conversion means 5 is provided, but the conversion means converts the expert system description language program 2 into a program written in an extended language for an expert system, which is an extension of a different existing language for the expert system. By providing a plurality of means, it becomes possible to construct an expert system compatible with any existing language.
以上説明した本発明のエキスパートシステム構築ツール
によれば、次のような効果を得ることができる。According to the expert system construction tool of the present invention described above, the following effects can be obtained.
(1) 特定の言語に依存しない知識表現と推論機構
を持つ唯一のエキスパートシステム記述言語に適 ′
した編集手段やデバッグ手段を開発するだけで良く、然
もエキスパートシステム記述言語であるので、それに不
向きなC0BOL等のコンパイラ言語のように知識や推
論の逐次デバッグ機能の実現が難しくなることもなく、
操作性の良い編集手段やデバッグ手段の作成が可能とな
る。よって、効率良く知識の整理や獲得、デバッグが行
える。(1) Suitable for being the only expert system description language that has a knowledge representation and inference mechanism that does not depend on a specific language.
All you need to do is develop editing and debugging methods, and since it is an expert system description language, it is not difficult to implement sequential debugging functions for knowledge and inference, unlike compiler languages such as C0BOL, which are unsuitable for this purpose.
It becomes possible to create editing means and debugging means with good operability. Therefore, knowledge can be efficiently organized, acquired, and debugged.
(2) 既存言語をエキスパートシステム用に拡張し
たエキスパートシステム用拡張言語で記述されたプログ
ラムに変換できるので、既存言語と親和性の良いプログ
ラムを得ることができ、既存言語で記述されたプログラ
ムとの結合等が容易となる。(2) Since an existing language can be converted into a program written in an extended language for expert systems, it is possible to obtain a program that has good compatibility with existing languages, and it is possible to create programs that are compatible with existing languages. Connection etc. becomes easy.
このため、移行性や共通性が良くなり、また既存言語の
プログラム、データ等の従来資産の有効利用が可能とな
る。This improves portability and commonality, and enables effective use of conventional assets such as programs and data in existing languages.
第1図は本発明の一実施例の構成図である。
図において、
1・・・エキスパートシステム構築ツール2・・・エキ
スパートシステム記述言語プログラム3・・・編集手段
4・・・実行時デバッグ手段
5・・・変換手段
6・・・エキスパートシステム用拡張言語記述プログラ
ム
7・・・フレーム定義
8・・・フレームアクセス命令
9・・・入出力命令
10・・・ルール定義
11・・・フレームエディタ
12・・・ルールエディタ
エ3・・・推論実行制御手段FIG. 1 is a block diagram of an embodiment of the present invention. In the figure, 1... Expert system construction tool 2... Expert system description language program 3... Editing means 4... Runtime debugging means 5... Conversion means 6... Extended language description for expert system Program 7...Frame definition 8...Frame access instruction 9...I/O instruction 10...Rule definition 11...Frame editor 12...Rule editor 3...Inference execution control means
Claims (1)
スパートシステム記述言語で記述されたプログラムの編
集を行う編集手段と、 前記編集されたプログラムの実行時デバッグを行う実行
時デバッグ手段と、 前記編集されたプログラムを入力し、既存言語をエキス
パートシステム用に拡張したエキスパートシステム用拡
張言語で記述されたプログラムに変換する変換手段とを
含むエキスパートシステム構築ツール。[Scope of Claims] Editing means for editing a program written in an expert system description language that has a knowledge expression and inference mechanism independent of a specific language; and a runtime debugger for debugging the edited program at runtime. and converting means for inputting the edited program and converting it into a program written in an extended language for expert systems that is an extended language for expert systems.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2340734A JPH04209028A (en) | 1990-11-30 | 1990-11-30 | Expert system structuring tool |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2340734A JPH04209028A (en) | 1990-11-30 | 1990-11-30 | Expert system structuring tool |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH04209028A true JPH04209028A (en) | 1992-07-30 |
Family
ID=18339802
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2340734A Pending JPH04209028A (en) | 1990-11-30 | 1990-11-30 | Expert system structuring tool |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH04209028A (en) |
-
1990
- 1990-11-30 JP JP2340734A patent/JPH04209028A/en active Pending
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US5557774A (en) | Method for making test environmental programs | |
| JP2019516167A5 (en) | ||
| JPH07295859A (en) | Determination of dynamic property of program | |
| JPH04209028A (en) | Expert system structuring tool | |
| JPS62214443A (en) | Emulation executing method | |
| JPH07295612A (en) | High-level language sequence instruction program generator and general-purpose sequencer | |
| CN120950046A (en) | Software architecture of an intelligent meta open platform | |
| JPH03144832A (en) | Symbolic debugging device for precompiler language program | |
| JPH04123144A (en) | Debuging device | |
| JP2882876B2 (en) | Program test method | |
| JPH03126103A (en) | Program generating device for robot | |
| Runciman | Modula and a vision laboratory | |
| JP3124000B2 (en) | Inline expansion system for structured user-defined operations | |
| KFKI-MSZKI et al. | Visual Programming | |
| Nor et al. | Development of run-time UML for JAVA programming language | |
| Pitt et al. | Making Requirements Specifications Accessible via Logic, Language and Graphics: A Progress Report. | |
| Camennova et al. | Integrated Environment for Software System Development | |
| JPH06110750A (en) | Method for automatically generating makefile of application program that can access relational database | |
| JPH0792771B2 (en) | Program execution status display system | |
| JPH064348A (en) | Program debugging system | |
| JPH0352038A (en) | Debugging device | |
| JPH02280201A (en) | Method and device for digital control | |
| Allen et al. | The direct manipulation shell | |
| Tatemura et al. | A performance debugger for parallel logic programming language fleng | |
| JPS6365542A (en) | Debugging system |