JPH03206526A - 知識処理システム構築ツール及び推論プログラムの生成方法 - Google Patents

知識処理システム構築ツール及び推論プログラムの生成方法

Info

Publication number
JPH03206526A
JPH03206526A JP2266233A JP26623390A JPH03206526A JP H03206526 A JPH03206526 A JP H03206526A JP 2266233 A JP2266233 A JP 2266233A JP 26623390 A JP26623390 A JP 26623390A JP H03206526 A JPH03206526 A JP H03206526A
Authority
JP
Japan
Prior art keywords
knowledge
program
inference
search
inference control
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.)
Granted
Application number
JP2266233A
Other languages
English (en)
Other versions
JP2728559B2 (ja
Inventor
Naoyuki Yamada
直之 山田
Takayasu Kasahara
孝保 笠原
Yasuhiro Kobayashi
康弘 小林
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.)
Hitachi Ltd
Original Assignee
Hitachi 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 Hitachi Ltd filed Critical Hitachi Ltd
Publication of JPH03206526A publication Critical patent/JPH03206526A/ja
Application granted granted Critical
Publication of JP2728559B2 publication Critical patent/JP2728559B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/01Dynamic search techniques; Heuristics; Dynamic trees; Branch-and-bound
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/02Knowledge representation; Symbolic representation
    • G06N5/022Knowledge engineering; Knowledge acquisition

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Evolutionary Computation (AREA)
  • Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Computational Linguistics (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Artificial Intelligence (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Devices For Executing Special Programs (AREA)
  • Stored Programmes (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は、知識処理システムの構築方法及び知識処理シ
ステム構築ツールに関するものである。
〔従来の技術〕
知識処理システムは、一般的に問題解決に使用され機械
可読な形式でコード化された知識を格納する知識ベース
と、その知識を連鎖的に(チエイニング)使用する推論
プログラムを備えている。
知識処理システムは、決定的なアルゴリズム処理を実行
する数値処理に基づく従来の問題解決プログラムと比較
して、問題解決に使用する記号表現された知識を使用す
る。このような知識処理システムは、従来アルゴリズム
に組み込むことが困難であった,各種問題領域における
専門家が持つ経験的な知識、ノウハウまたは発見的な知
識をも取扱うことができる。この結果、診断、制御,監
視、計画及び設計といった工学分野における問題解決の
みならず、法律、金融といった分野における問題解決に
も広く利用されつつある。
これらの知識処理システムの構築方法には、知識を記述
する枠組み(約束)を設定し、この知識を連鎖的に使用
する推論プログラムを、LispまたはPrologと
いった記号処理言語を使用して作成する方法、及び予め
知識を記述する枠組みとそれを使用する推論プログラム
とを備えた知識処理システム構築ツールを用いる方法が
ある。知識処理システム構築ツールとしては、スタンフ
ォード大学のレポート番号STAN−CS−81−88
5号におけるVanVel.1e著rThe Emyc
in Manual (ザ イマイシンマニュアル)」
に記載されたEMYCIN、及び日立評論、1987年
3月号上7〜22頁の金森他著r ES/KERNEI
、での知識表現法と高速推論方式」に記載されているE
S/KERNEL等が知られている。前者の方法は、対
象とする問題解決に適切な知識の表現法の設定及び推論
プログラムの作成が可能である。しかし、知識処理シス
テムを構築する人は、人工知能や知識工学といった知識
情報処理技法を習熟している必要がある。これらの分野
に不慣れな人にとっては、前者の方法に基づく知識処理
システムの構築は困難である。後者の知識処理システム
構築ツールを利用する方法は、知識表現の枠組み及び推
論プログラムを作成する必要はない。
−15− しかし、知識は、知識処理システム構築ツールが受け入
れる表現での記述を必要とする。また、推論プログラム
を利用して目的とする問題解決を行うために,入力する
知識の構成法の検討、及び推論制御のメタ知識の記述が
必要である。従って、知識処理システムを構築する人は
、対象とする領域の問題解決に関する知識とともに、使
用する知識処理システム構築ツールにも習熟している必
要がある。
そこで、知識処理技法あるいは、知識処理システム構築
ツールに習熟しないでも,対象とする領域における問題
解決を行う知識処理システムを容易に構築できる方法の
開発が望まれる。
カーネギーメロン大学のJ.Laj.rd(ジェイ、レ
アド)等は、そのような知識処理システムの構築法とし
て、レポート番号CMU−CS−83−141号、J.
Laird and A.Newel.l著rA Un
iversal I1eakMethod (ア ユニ
バーサル ウィークメソッド)」において汎用的ウィー
クメソッド法を提案している。提案されている汎用的ウ
ィークメソッド法は、−16− ゲームの問題解決に適用したものである。この方法は、
問題解決プログラム(推論プログラム)として、各種の
知識処理システムにおいて一般的な問題解決手法とされ
る探索を基礎とした複数のウイークメソッドを有するも
のであり、各ウイークメソッドに対して領域固有の知識
を設定することにより知識処理システムを構築しようと
するものである。上記の汎用的ウイークメソッド法は,
山登り方法、幅優先探索、及び深さ優先探索等の複数の
ウイークメソッドを有する。
〔発明が解決しようとする課題〕
発明者等は、汎用的ウィークメソッド法を詳細に検討し
たところ、以下のような問題が生しることを発見した。
まず、発明者等は、汎用的ウイークメソッド法を適用し
た知識処理システム構築ツールを想定した。この想定し
た知識処理システム構築ツールにより対象とする問題を
解決する知識処理システムを構築する場合、知識処理シ
ステム構築ツールの使用者(以下、単に使用者という)
は、対象とする問題解決に利用するウイークメソッドを
選択する。従って、日立評論で述べられた知識処理シス
テム構築ツールを用いて知識処理システムを構築する場
合に比べて、使用者が対象とする問題解決に適切なウイ
ークメソッドを選択できるという利点がある。選択した
ウイークメソッドを用いて、対象とする問題を解決する
知識処理システムを構築するためには、使用者は、選択
したウイークメソッドの範囲に限定されるが、対象とす
る問題解決に固有の推論制御知識及び対象領域に固有の
知識を考えて入力する必要がある。しかし、使用者がこ
れらの知識を考えることは、非常に面倒である。しかも
、rA Universal lIleak Meth
odJは、対象とする問題解決に固有の推論制御知識及
び対象領域に固有の知識の入力について何も言及してい
ない。対象とする問題が異なると、選択されるウイーク
メソッドも異なり、対象とする問題解決に固有の推論制
御知識であって別の推論制御知識を、及び対象領域に固
有の知識であって別の知識をそれぞれ考えなければなら
ないという困難にぶつかる。
知識処理システム構築ツールがウイークメソッドを持つ
ことにより、そのツールを使用した知識処理システムの
構築は容易になる。しかし、構築された知識処理システ
ムで使用される推論プログラムの機能は、構築ツールが
備えている既存のウイークメソッドの機能に限定される
このように、構築された知識処理システムの推論プログ
ラムが既存のウィークメソッドの機能に限定されること
、及び異なる対象問題毎に、違う、対象とする問題解決
に固有の推論制御知識及び対象領域に固有の知識を考え
なければならないことから、想定した、汎用的ウィーク
メソッド法を適用した知識処理システム構築ツールは、
任意の対象領域及び任意の解決すべき問題に対し、知識
処理システムを構築することができないことが分かった
本発明の目的は、任意の解決すべき問題及び任意の対象
領域に対して、推論プログラムを作成できる知識処理シ
ステムの構築方法及び知識処理システム構築ツールを提
供することにある。
−19− 本発明の他の目的は、推論プログラムを作成するために
必要な情報の入力が容易である知識処理システムの構築
方法及び知識処理システム構築ツールを提供することに
ある。
本発明の他の目的は、推論プログラムの作成が容易であ
る知識処理システムの構築方法及び知識処理システム構
築ツールを提供することにある。
本発明の他の目的は作成された推論プログラムの実行に
必要な知識ベースの作成が容易である知識処理システム
の構築方法及び知識処理システム構築ツールを提供する
ことにある。
〔課題を解決するための手段〕
本発明の目的を達或する本発明の特徴は、記憶手段に記
憶されている複数の推論制御知識のうち対象とする問題
に関係する前記推論制御知識を選択し、前記選択した推
論制御知識に基づいて,前記問題に関する推論プログラ
ムを作成することにある。
本発明の他の目的を達成する本発明の他の特徴は、記憶
手段に記憶されている複数の推論制御知20− 識を表示装置に表示させ、表示装置に表示された複数の
推論制御知識のうち対象とする問題に関係する前記推論
制御知識を選択することにある。
本発明の他の目的を達或する他の特徴は、選択した推論
制御知識、及び記憶手段から読み込んだベースプログラ
ムに基づいて、問題に関する推論プログラムを作成する
ことにある。
本発明の他の目的を達或する他の特徴は、選択した推論
制御知識に基づいて、作成された推論プログラムを実行
するときに必要な知識を入力しこの知識により知識ベー
スを作成することにある。
〔作用〕
記憶手段に記憶されている複数の推論制御知識のうち対
象とする問題に関係しかつ選択された推論制御知識に基
づいて、前記問題に関する推論プログラムを作成するの
で、任意のケースにおける推論プログラムの作成に必要
な推論制御知識を予め準備でき、任意の解決すべき問題
及び任意の対象領域に対して、推論プログラムを作成で
きる。
記憶手段に記憶されている複数の所定の推論制御知識を
表示装置に表示させ、表示装置に表示された複数の所定
の推論制御知識のうち対象とする問題に関係する前記推
論制御知識を選択するので、推論プログラムを作成する
ために必要な情報の入力が容易である。
選択した推論制御知識、及び記憶手段から読み込んだベ
ースプログラムに基づいて、問題に関する推論プログラ
ムを作成するので、ベースとなるプログラムが用意され
ており、推論プログラムの作成が容易になる。
選択した推論制御知識に基づいて作成された推論プログ
ラムを実行するときに必要な知識を入力するので、必要
な知識の入方が容易であり作成された推論プログラムの
実行に必要な知識ベースの作成が容易である。
〔実施例〕
本発明は、発明者等が種々の問題に適用される知識処理
システムを検討して得られた結果に基づいてなされたも
のである。特に、発明者等は、知識処理システムで解か
れる種々の問題がすべて探索の問題であるとの新しい知
見に基づいてこれら種々の問題を解決するために必要な
情報を体系的に検討した。その結果、第2図及び第3図
に示す問題解決戦略の分類情報を得た。問題解決戦略の
分類情報は、第2図及び第3図に示すように探索戦略の
分類木であり、戦略分類項目A〜工等を有する。問題解
決戦略の分類情報は、戦略分類項目Aを先頭にB.C.
D、・・・、■と枝状に分かれている。第2図のSは第
3図(a)のSにつながり、第3図(a)のPは、第3
図(b)のPにつながる。
Qより下の分類は対象領域特有の探索(推論)制御知識
の違いによる。Qより下の分類項目の情報の例としては
、後述するメニューKの情報(第12図)がある。第3
図(b)において、B.F.は幅優先探索、D.F.は
深さ優先探索、Be.F.は最良優先探索、M.M.は
ミニ・マックス探索、GBBMは一般的分岐限定方法、
H.C.は山登り方法、A*はエー・スター・アルゴリ
ズム、及びBBMは分岐限定方法を示す。このような問
題解決戦略の分類情報は、探索空間を構成する状態、2
3− この各状態に作用してその状態を変化させる演算子、探
索の目標を記述する状態または条件、探索の初期状態ま
たは条件、及び演算子を選択するための評価関数といっ
た探索問題を規定する各項目に関して、問題解決戦略、
すなわち推論制御戦略を分類したものである。各戦略分
類項目に対して解決すべき問題に関係する事項を適宜選
択することにより、対象とする問題の解決に必要な探索
空間の規定情報、及びその問題を解決するための探索制
御戦略を決定できる。問題解決戦略の分類情報は、問題
解決戦略に関する知識を体系的にまとめたものであり、
、上記の各項目に対し複数の推論制御知識を含む。特に
、解決すべき問題に固有の複数の推論制御知識及び解決
すべき問題の対象領域に固有の複数の推論制御知識が含
まれる。この問題解決戦略の分類情報は、発明者等が発
見した新しい概念である。この新しい概念の情報を用い
た本発明の実施例を以下に説明する。
本発明の好適な一実施例である知識処理システム構築ツ
ールを第1図に基づいて説明する。
ー24ー 本実施例の知識処理システム構築ツールは,入力装置1
A、ディスプレイ等の表示装置IB.演算処理装置(C
 P U) 2、内部メモリである補助記憶装w3、及
び外部メモリである記憶装置10を備える。入力装置1
A、表示装置1B、補助記憶装置3及び記憶装置10は
、演算処理装置2に接続される。記憶装置10内の記憶
エリアが少なくとも7つのエリアに別れている。これら
の6つのエリアは、記憶手段4〜9として機能する。
記憶手段4は、第2図及び第3図に示す問題解決戦略の
分類情報を記憶する。記憶手段5は、第4図に示す探索
プリテイ関数(1)〜(12)および探索基本関数(1
3)〜(21)を記憶する。探索プリミティブ関数と探
索基本関数とを合せて探索関数と呼ぶ。記憶手段6は、
第5図に示す処理手順を記憶する。記憶手段7は、後述
の表1に示された汎用探索プログラムを記憶する。記憶
手段8は、本実施例によって作成された問題解決プログ
ラムを記憶する。この問題解決プログラムは、推論プロ
グラムであり、該当する問題を解決する知識処理システ
ムに用いられる。記憶手段9は、知識処理システム内で
、本実施例によって作成された問題解決プログラムを実
行するのに必要な知識を記憶する。この知識は、上記処
理手順に従って入力されたものである。記憶手段110
は、探索プリミティブ関数が埋めこまれた探索基本関数
と各探索要素関数とを、プログラム作成用知識によって
対応づけた対応表を記憶する。なお、第5図に示す処理
手順は、記憶装置10ではなく補助記憶装置3に記憶さ
せてもよい。
演算処理装置2は、使用者の入力装置IAへのスタート
信号の入力により、記憶手段6から第5図の処理手順を
呼び出し、その処理手順に従って所定の処理を実行する
。演算処理装置2において実行される処理の内容を以下
詳細に説明する。
まず、ステップl2において、問題解決戦略の分類情報
の各戦略分類項目に従って解決すべき問題に関する情報
の入力が行われる。このステップ12により入力された
情報は、補助記憶装置3内の所定の記憶エリアに記憶さ
れる。この情報によつて、フレーム構造の知識ベースが
補助記憶装置3内で構成される。このフレーム構造の知
識ベースを、以下、プログラム作戊用知識ベースという
ステップ13では、ベースとなる所定の汎用探索プログ
ラム及びプログラム作成用知識を用いて問題解決プログ
ラムを作成する。ステップ14は、作成された問題解決
プログラムを知識処理システム内で実行させる時に必要
な知識(対象知識)を入力して知識ベースを作成する処
理を実行する。作成された問題解決プログラム(推論プ
ログラム)及び入力された対象知識を用いて、解決すべ
き問題を解く知識処理システムを構成できる。すなわち
、作成された知識処理システムは、その推論プログラム
を実行する推論手段と、対象知識を記憶している知識ベ
ースとを備えている。
以下に、ステップ12、13及び14の処理内容の詳細
を説明する。
まず、ステップ12を述べる。ステップ12は、第6図
に示すステップ27〜34を有する。このうちステップ
33は、第7図に示すようなステツ27ー プ33A〜33Eを有する。ステップ27は、問題解決
戦略の分類情報(問題解決ストラテジー分類情報)の戦
略分類項目(ストラテジー分類項目)Aのa及びbの情
報、すなわち第8図の分類項目Aの選択メニュー(情報
a及びbを含む)を記憶手段4から呼び出し、この選択
メニューを入力ガイドの初期画面として表示装置IBに
出力する。このとき表示装置IBは、その選択メニュー
を表示する。使用者は、表示された選択メニューを見て
、構築する知識処理システムに対応した解決すべき問題
に該当する情報を、選択メニューから選び、選んだ情報
(情報aまたはb)を入力装置IAより入力する。演算
処理装置2は、入力装置1Aから出力された、その選択
された情報を、分類項目Aの回答A′として入力する(
ステップ28)。次のステップ29で「不明(分からな
い)』という回答を入力したか否かを判定する。ここで
「NO」と判定されるとステップ30の処理に移る。ス
テツ29でrYESJと判定された場合はステップ35
の処理を行う。ステップ30は、入力した戦略分類項2
8 目の回答を、内部表現に変換する。この変換は、第9図
に示す規則に基づいて行われる。規則は、分類項目(A
.B、・・・・・・、K)毎に入力値(回答)と変換値
(内部表現)との関係で示される。例えば、分類項目A
においては、回答raJが変換値ryesJに変換され
る。更に、各分類項目に対応するスロット名も与えられ
ている。スロット名としては、rglobal−inf
 J、rgoal−condition−typeJ、
及びroperation−typeJ等が用いられる
。変換値は、該当するスロットの値である。ステップ3
5は、第10図に示されるデイフォールト値から該当す
るデイフォールト値を選択して入力する。デイフォール
ト値は、ステップ28にて入力した戦略分類項目に対応
するスロット名(第9図)によって選択される。第9図
及び第10図のデータは、記憶装置10内の所定の記憶
エリアに記憶されている。第10図はフレーム構造で表
現されたフレームrtask−spec Jの知識の例
である。ステップ31では、ステップ30において得ら
れた内部表現、またはステップ35において選択された
デイフォールト値が補助記憶装置3に記憶される。問題
解決戦轄の分類情報の全ての戦略分類項目に対する情報
が入力されたかが判定される(ステップ32)。この判
定がrNOJの場合、ステップ33の処理が実行される
ステップ33の処理を第7図により説明する。
まず、ステップ33Aでは、戦略分類項目Iの選択メニ
ューが表示されたかが判定される。ステップ33Aは,
戦略分類項目Iの選択メニューがステップ34により表
示装置IBに表示されるまで、「NO」と判定する。こ
のとき、前回表示した分類項目の次の分類項目(例えば
前回表示した分類項目がAであれば分類項目B)の選択
メニューが記憶手段4から呼び出される(ステップ33
B)。
ステップ33Aの判定がrYEsJになったとき、ステ
ップ28で入力した分類項目Iに関する回答■′が、情
報aであるかが判定される(ステップ33C)。この判
定がrYEsJの場合に、探索木の評価関数のメニュー
J (第11図)が、記憶装置10から呼び出される(
ステップ33D)。
メニューJは、詳細には探索木中のノード(節点)の相
対的位置関係の評価関数である。ステップ33Cの判定
がrNOJであるとき、ノードの展開を規定するノード
の相対的位置に関する成立条件のメニューK(第12図
)が、記憶装置10から呼び出される(ステップ33E
)。ステップ33Dの処理が実行された場合でも、ステ
ップ33Eの処理が実行される。
ステップ34において、ステップ33B、33Dまたは
33Eの処理で得られた、分類項目の選択メニュー、メ
ニューJまたはメニューKの情報を、表示装置1Bに出
力する。表示装置IBは、いずれか1つのメニューに含
まれる情報を表示する。
使用者は、メニューJ及びK内の1及び2項においてそ
れぞれ1つの情報を選択する。以下、ステップ32の判
定がrYESJになるまで、ステップ28〜34(場合
によってはステップ35)の処理が繰返えされる。
第6図でステップ32の判定がrYESJとなるまで繰
返された処理を時系列に表わすと、第31 13図に示すように連続したステップ15〜26の処理
となる。ステップエ5〜26で行われる分類項目の表示
では、第8図、第1工図及び第12図に示すメニューの
うち該当するメニューが表示装置IBに表示される。第
13図に示す回答A′〜K′は、内部表現等に変換され
た後ステップ31により補助記憶装置3に記憶されるが
、そのとき後述するように第16図に示すプログラム作
戊用知識ベースのスロットの値のエリアに記憶される。
第8図に示される選択メニューの情報、第工1図のメニ
ューJの情報、及び第12図のメニューKの情報は、対
象とする問題を解決するための探索空間を規定するもの
で、戦略分類項目の情報(推論制御知識)である。戦略
分類項目A〜■の選択メニューの各情報及びメニューJ
の各情報は、解決すべき問題に固有の推論制御知識であ
る。また、メニューKの各情報は、解決すべき問題の対
象領域に固有の推論制御知識である。ここで、対象領域
とは、火力プラント、原子力プラント、エー32− レベータ、FAシステム、保守支援システム及びCAD
システム等の構築された知識処理システムが適用される
領域をいう。
第14図は、ある工程計画問題の具体例である。
本問題は、第14図に示した3つのタスク(タスク1,
2及び3)が同時刻での作業員の数が4名以下という制
約条件の下で、全体の作業時間が最小になるような計画
を求める問題である。本問題に適用する知識処理システ
ムを構築するにあたって、本実施例でステップ12の処
理を行ったとする。このとき、第6図のステップ28で
入力された、各戦略分類項目に対応する回答A′〜K′
は、第15図のようになる。これらの回答A′〜K′は
、ステップ30で内部表現に変換され、ステップ3lで
補助記憶装置3内のプログラム作成用知識ベースにフレ
ーム構造のプログラム作成用知識として記憶される。フ
レーム名が「task−spec Jであるプログラム
作成用知識ベースを第16図に示す。フレームrtas
k−spec Jは、回答A′〜K′の内部表現を値に
持つl4のスロットを有する。なお、スロットrgoa
l−condition−placeJの値は、分類項
目J−1の変換値(第9図)であり、スロツ1・rpa
rent=relation Jの値に等しい。第6図
の処理に基づいて作成されたプログラム作成用知識ベー
ス(第16図)は、回答A′〜J′に基づいた解決すべ
き問題に固有の推論制御知識、及び回答K′に基づいた
解決すべき問題の対象領域に固有の推論制御知識を有し
、問題解決戦略の分類情報から選択された複数の推論制
御知識を含むといえる。このプログラム作成用知識ベー
スは、本実施例では、体系的にまとめられてあらかじめ
準備された所定の問題解決戦略の分類情報(第2図,第
3図,第11図及び第工2図)を反映することによって
作成される。
戦略分類項目の情報が表示されたときに、もし、使用者
が、解決すべき問題に該当する情報が分からなく表示さ
れた情報を選択しない場合、前述したようにステップ3
5により第16図に示した該当するデイフォールト値が
選択される。この選択されたディフォールト値は、第工
6図の該当するスロットの値となる。このようにデイフ
ォールト値を該当するスロットの値とすることにより、
使用者が表示された情報を選択しない場合でも、本実施
例のシステムを支障なく機能させることができる。また
、本実施例は、任意の対象領域における任意の解決すべ
き問題に対して、解決すべき問題に固有の推論制御知識
、及び解決すべき問題の対象領域に固有の推論制御知識
を反映したプログラム作成用知識を得ることができる。
第5図ステップ12の処理は以上のように行われ、次に
ステップ13の処理となる。
ステップl3の処理を説明する前に、記憶手段7に記憶
されている汎用探索プログラム(汎用推論プログラム)
の概要を述べる。この汎用探索プログラムは、ステップ
13で作成される問題解決プログラムのベースになるも
のである。表1に示す汎用探索プログラムは、オブジェ
クト指向プログラミング手法を用いてルール形式で表現
したプログラムである。汎用探索プログラムは、初期化
、ラベル付け、探索実行、結果の表示及びエラーメ−3
5 ッセージの各ルール群を有する。また、各ルール群は1
つもしくは複数のルールを有し、各ルールにはその処理
の内容を示すラベルが付されている。
各ルールは、rcontrolJ、rtask−spe
cJ、及びrsearch−kernelJ といった
各フレームに格納された知識(例えば、スロットの値)
を取り出し、条件判定を行って必要な処理を行う。@で
始まる項目が、そのフレームのスロットを示す。具体的
な処理は、対応するフレームに対するメッセージ送信に
より行う。←が、メッセージ送信を意味する。
表1  汎用探索プログラム {初期化} (ルール1 if (control @object→7obj@
refer  = off) then (←control assign(”re
fer”,”on”))){ラベル付け} (ラベル付け if (search−kernel @test =
 on)(task−spec   @link−ty
pe = link)−36= (control      @object  → 
’7obj)then  (←search−kern
el label(’7obj,7obj))(←se
arch−kernel assj.gn(test,
off))(← system print(”nod
e”labeled”)))(初期ノードの設定 if (’?search−cell @node−t
ype = chip@search−st =yet
) then (←?search−cell assig
n(”search−st”,”current”)) (←control add−active−c(?s
earch−cell)) (←control assign(”stage”,
”select−node”))) {探索実行} (ゴール条件判定 if (control @step→?step)(
search−cellt @search−st =
 current@step    < ?step) (control @goal−c I*= ’?se
arch−cell)then (4− ’?sear
ch−cell establish−check)(
←’7search−cell assign (”s
tep”,’7step))) (終了条件1 if  (control @stage = che
ck−goal’ @finishing−cond 
= yes)then  (event−reset(
output)))(ゴールノードの設定l if  (control  @active−c  
傘=  ’?search−cell)(’i’sea
rch−cell @r−es−cond−st = 
yes)(control @goal−c !幸= 
7search−cell)then (←contr
ol add−goal (’i’search−ce
ll.))(<− control check−go
al−condl)))(ゴールの設定2 if (control @active−c = (
))(task−spec @goal−condit
ion−place= deepest) then (←control check−goal
−cond2)(←control assign(”
Stage”+”check−goa l”))) (終了条件が失敗の場合 if (control @stage =check
−goal)then (←control assi
gn(”stage”,”select−node”)
)) (ノードの選択 if (control @stage = sele
ct−node)then (←control se
lect−node)(←control assig
n(”stage”,”select−link”)〉
) (リンクの選択 if (control @stage = sele
ct−link@open−node→7node) (task−spec @link−type = l
ink)then (←control assign
(”stage”,”counter”)) (←control select−1ink(?no
de)))(オペレータの選択/適用 if (task−spec @link−type 
= function@stage = select
−link@open−node −+ 7node)
then (←control select−fun
ction(’i’node))−39− (← control assign(”stage”
,”counter”))) (活性ノードの更新 if (control @stage = rese
t−active−node)(?link @all
−current = yes@check    =
 no) then (←control reset−acti
ve−node))(←control assign
(”stage,check−goal.”))) (終了条件2 if (control @active−c =0)
then (event−reset(error−o
utput)))(カウンター if (control @stage二counte
r@step→7step) then (←control assign(”st
age”,”reset−active−node”)
)(←control assign(”step”,
int(?step+1))) (←control reset−active−no
de)−40 (← system print(”$nNow Se
arch Step%d′″,7step))) {結果の表示} (結果出力 if (control @stage = chec
k−goal)(7search−cell @r−e
s−cond−st = yes)(control 
@active−c傘= 7search−cell)
then (←system print(”$n R
esult %s”,?search−cell)) (event−reset  (end))){エラー
メッセージ} (エラー出力 if (control @stage→’?st)t
hen (←system print(”$n Se
arch is failed:::%sIZ ?gt
)) (event−reset (end)))表1の汎用
探索プログラムは、フレームrtaskspeck(以
下、task−spec fr.という)に具体的なプ
ログラム作成用知識を設定し、フレームrcontro
lJ(以下、control fr.という)に具体的
な処理プログラムを設定することにより実行可能なプロ
グラムとなる。すなわち、汎用探索プログラム内のこれ
らのフレームに対して、対象とする問題を解くために必
要な情報を与えるだけで、その問題を解決する適切な問
題解決プログラムが得られる。この問題解決プログラム
は、知識処理システムを用いられる推論プログラムであ
る。
表1に示す汎用探索プログラムの主要な部分を,第17
図に示す。その主要な部分は、探索木を初期設定(ステ
ップ36)、成功終了判定(ステップ37)、失敗終了
判定(ステップ38)、ノードの選択(ステップ39)
、リンク(作用素)の選択(ステップ40)、オペレー
タの選択/適用(ステップ41)、活性ノードの選択(
ステップ42)及び探索結果出力(ステップ43)の各
ステップである。
ステップ37及び38の判定がrYEsJであるとき、
ステップ43の処理が順次行われ、ステップ42の処理
が終了したときにステップ37の処理が再度実行される
。ステップ37及び38の判定が「NO」であるとき、
ステップ36〜42の処理が順次行われる。表1に示す
汎用探索プログラムにおいて、「初期化」及び「ラベル
付け」がステップ36に、「終了条件1」及び「ゴール
ノードの設定1」がステップ37に、「終了条件が失敗
の場合」及び「ゴールノードの設定2」がステップ38
に、「ノードの選択」がステップ39に,「リンクの選
択」がステップ40に、「オペレータの進択/適用」が
ステップ41に、「活性ノードの更新」がステップ42
に、及び「結果出力」がステップ43にそれぞれ相当す
る。なお、表1に示す汎用探索プログラムに示された「
ゴール条件判定j.「終了条件2」、「カウンター」及
び「エラー出力」の各処理は,第17図では省略してい
る。
汎用探索プログラムの「或功終了判定」に含まれる探索
要素関数rcheck−goal−cond IJの汎
用プログラムは、第18図に示すように5つのプログラ
ム要素A1〜A3を有する。プログラム要素Anは、t
ask−spec fr.の知識に応して,探索要素関
数rcheck−goal−cond IJを構成する
のに必要な複数Aへ の変数を有する。プログラム要素A2は、記憶手段5か
ら呼び出した探索基本関数Goal(c,k)(第4図
)を変数G [ng−eleコに代入し、及びtask
−specfr.のスロットrgoal−number
Jの値を変数goa 1numberに代入する処理を
実行する。プログラム要素八3は、記憶手段5から呼び
出した探索基本関数Active−c (k)を変数A
 [na−ele]に代入する処理を行う。プログラム
要素A4は、判定の処理を行う。プログラム要素A5は
、control fr.のスロットr @ stag
eJの値をrcheck−goal Jにする機能を持
つ。変数G[ng−elel+goal−number
及びA[na−ele]は、探索要素関数rcheck
−goal−cond IJの変数である。プログラム
要素A工〜A5は、第18図に示す処理順序でつながる
。プログラム要素A1及びA4は、前述のtask−s
pec fr. (第16図)内の解決すべき問題に固
有の推論制御知識に基づいて、変更される可変型のプロ
グラム要素である。プログラム要素A工及びA4は、そ
の推論制御知識に基づいて、特定の対象領域における特
定の解決すべき問題に対して適用されるプログラム要素
になる。
44 残りのプログラム要素A2、A3及びA5は、解決すべ
き問題に固有の推論制御知識及び解決すべき問題の対象
領域に固有の推論制御知識の影響を受けない固定型のプ
ログラム要素である。探索要素関数rcheck−go
al−cond IJの汎用プログラムは、解決すべき
問題に固有の推論制御知識の影響を受ける可変型のプロ
グラム要素、及び固定型のプログラム要素を含むといえ
る。探索要素関数rcheckgoal−condlJ
の汎用プログラムの具体例を、第19図に示す。この汎
用プログラムは,C言語で書かれている。
汎用探索プログラムの「失敗終了判定」における探索要
素関数rcheck−goal−cond 2Jの汎用
プログラムは、第20図に示すように6つのプログラム
要素Bl〜B6を有する。プログラム要素B1は、ta
sk−spec fr.の知識に応じて、探索要素関数
rcheck−goal−cond 2Jを構成するの
に必要な変数を有する。プログラム要素B2は,記憶手
段5から呼び出した探索基本関数Active,−c(
k)を用いて、探索要素関数rcheck−goal−
cond 2Jの変数である活性ノード集合A [na
−ele].及び要素数na−eleを取り出す処理を
行う。プログラム要素B8は、control fr.
のスロットrgoal−cJから探索要素関数rche
ck−goal−cond 2」の変数である目標ノー
ド集合G [ng−eleコ、及び要素数ng−ele
を取り出す機能を持つ。プログラム要素B4は、tas
k−spec fr.のスロットgoal−numbの
値を目標ノード数ngとして取り出す処理を実行する。
プログラム要素B5は、ng:> ng eleでかつ
na−ele= Oの条件を満足するかを判定する。プ
ログラム要素B6は、失敗終了と判定するものである。
以上の機能を有するプログラム要素B1〜B6は、互い
に、第20図に示す処理順序でつながる。プログラム要
素Blは、プログラム要素A1と同じ、解決すべき問題
に固有の推論制御知識の影響を受ける可変型のプログラ
ム要素である。他のプログラム要素82〜B6は、固定
型のプログラム要素である。探索要素関数rcheck
−goal−cond 2Jの汎用プログラムも、解決
すべき問題に固有の推論制御知識の影響を受ける可変型
のプログラム要素、及び固定型のプログラム要素を含む
汎用探索プログラムの「ノードの選択」における探索要
素関数r select−nodeJの汎用プログラム
は、図示されていないが8つの主なプログラム要素を有
する。これらのプログラム要素の一部は固定型のプログ
ラム要素であり、残りは前述の可変型のプログラム要素
である。可変型のプログラム要素は、task−spe
c fr.のスロットrparent−relatjo
nJ及びrsibling−relationJの値に
応じたプログラム要素になる。
汎用探索プログラムのrリンクの選択」における探索要
素関数rselect−1inkJの汎用プログラムは
、10のプログラム要素D1〜D1oを有する(第2工
図)。プログラムDrは、1を変数nに代入及び変数e
valにOを代入するものである。プログラム要素D2
は、ノードのリンクの数1inJnumを取り出す処理
を行う。変数1ink[nlの属性が利用済みであるか
の判定を行う機能を、プログラム要素D3が有する。プ
ログラム要素D4は、変数evaljink(link
[nl)を変数evaljに代入する処理を行う。
47ー ?ログラム要素D5は、変数evalJが変数eval
より大きいかを判定する。プログラム要素D6は、変数
canjinkに変数link[:nlを代入し、変数
evalに変数evaljを代入する処理を実行する。
プログラム要素D7は、変数nに変数(n+1)を代入
する機能を持つ。プログラム要素D8は、変数nがリン
クの数1inLnumよりも大きいかを判定する。
プログラム要素Deは、リンクとして変数canlin
kを選択すると共に変数canjinkの属性を利用済
みにする。プログラム要素Dzoは、リンクの属性を変
更する機能を有する。変数nteva,link[’n
l.  eval−link(link[nコ)、 e
val−1、 canlink、及び(n+1)は,探
索要素関数rselect−1ink Jの変数である
。プログラム要素Dt〜D■0は、第2王図に示す順序
でつながる。プログラム要素D t − D eは、固
定型のプログラム要素である。
プログラム要素Dzoは、task−spec fr.
に含まれる、解決すべき問題の対象領域に固有の推論制
御知識に基づいて変更される可変型のプログラム要素で
ある。探索要素関数rselect−1ink Jの汎
用プ48一 ログラムは、解決すべき問題の対象領域に固有の推論制
御知識の影響を受ける可変型のプログラム要素、及び固
定型のプログラム要素を含む。
汎用探索プログラムの「オペレータの選択/適用」にお
ける探索要素関数rselect−functionJ
の汎用プログラムは、主に6つのステップを有する。
この探索要素関数rselect−function 
Jの汎用プログラムは、全体が固定型プログラム要素で
ある。
汎用プログラムの探索要素関数r check−goa
 ]cond 1」、rcheck−goal−con
d 2」、rselect−nodej.rselec
t−1inkJ、及びrselect−functio
n Jに対する各プログラム要素は、各探索要素関数と
対応付けて記憶手段7に記憶される。
以上が汎用探索プログラムの内容である。次にステップ
13における問題解決プログラム作成の詳細な内容を述
べる。ステップl3は、第22図に示すステップ141
〜147を有し、これらのステップの処理を第22図に
示す順序で実行するものである。まず、第22図に図示
されているが、使用者は、入力装置IAを用いて、知識
処理システムにおいて解決すべき問題(例えば、第14
図に示す工程計画問題)に関する。対象領域の情報、す
なわち問題の設定情報の目標、関数及び制約条件等のデ
ータを入力する。これらのデータは、演算処理装置2に
入力され、ノード選択に用いる探索要素関数のプログラ
ムの作成に用いられる。解決すべき問題によっては、上
記入力データを、「リンク選択」及び「オペレータの選
択/適用」の探索要素関数のプログラム作成にも用いる
。上記データ入力後ステップ37の成功終了判定に用い
る探索要素関数rcheck−goal−cond I
J(以下、成功終了判定関数という)のプログラムを作
成する(ステップ141)。ステップ38の失敗終了判
定に用いる探索要素関数rcheck−goal−co
nd 2J(以下、失敗終了判定関数という)のプログ
ラムを作成する(ステップ142)。ステップ143で
は、ステップ39のノード選択に用いる探索要素関数r
select−nodeJ (以下、ノード選択関数と
いう)のプログラムを作成する。ステップ144では、
ステップ40のリンク選択に用いる探索要素関数rse
lect−1inkJ (以下、リンク選択関数という
)のプログラムを作成する。ステップ141〜144で
作成された各プログラムは、補助記憶装置3に記憶され
る。ステップ145において、ステップ41のオペレー
タ選択/適用に用いる探索要素関数rselect−f
unction Jのプログラムを、記憶手段7から読
み込み、補助記憶装置3に記憶する。次に、記憶手段7
から表1に示す汎用探索プログラムを、読み込み、補助
記憶装置3に記憶する(ステップ146)。ステップ1
41〜146によって、使用者が望む特定の対象領域に
適用できしかも特定の解決すべき問題を解くことができ
る問題解決プログラムが、自動的に作成される。最後の
ステップ147で、作成された問題解決プログラムが、
補助記憶装置3から読み込まれて記憶手段8に記憶され
る。
プログラム作成用知識が反映される或功終了判定関数、
失敗終了判定関数、ノード選択関数、及びリンク選択関
数の各プログラムの作成について説明する。
一51− 第23図は、或功終了判定関数のプログラムを作成する
ステップ141の詳細な内容を示す。最初に、出力先の
ファイルを設定する(ステップ48)。このステップに
よって例えば補助記憶装置3が設定される。フレーム構
造である或功終了判定関数のプログラム要素知識からプ
ログラム要素の数を取り出し、この数を変数n−ele
に代入する(ステップ49)。
その或功終了判定関数のプログラム要素知識の内容を第
24図に示す。成功終了判定関数のプログラム要素知識
は、成功終了判定関数のプログラム要素数が5であるこ
とを示す知識を含む(図示せず)。成功終了判定関数の
プログラム要素知識に含まれるフレーム「プログラム要
素AzJ及び「プログラム要素A a Jの知識を、説
明する。フレーム「プログラム要素A I Jの知識は
、task−spec fr.のスロットrparen
t−relation)の値に対応してプログラム要素
AIがとるべき変数を規定する。すなわち、スロットr
parent−relationJの値がrdeepe
stJであるとき、プログラム要素A1はプロー52− ダラム要素CGC1となる。スロットrparent−
relationJの値がrshallowestjで
あるとき、プログラム要素Azはプログラム要素CGC
2となる。
更に、スロットrparent−relation)の
値が「no」であるとき、プログラム要素A1はプログ
ラム要素CGC3となる。フレーム「プログラム要素A
 4 Jの知識は、task−spec fr.のスロ
ット「ρarentrelationJの値に対応して
プログラム要素A4がとるべき判定条件を規定する。す
なわち、スロットrparent−relationJ
の値がrdeepestJであるとき、プログラム要素
A4はプログラム要素CGC4となる。スロットr p
arent−relationJの値がrshallo
νestJであるとき、プログラム要素A4はプログラ
ム要素CGC5となる。更に、スロットrparent
−relation Jの値が「nO」であるとき、プ
ログラム要素A4はプログラム要素CGC6となる。
ステップ49により変数n−eleに5が代入される。
設定されたファイル(例えば補助記憶装置3)に或功終
了判定関数名(check−goal−cond 1)
を出力する(ステップ50)。1をnに代入する(ステ
ツプ51)。n,,−ele>nの条件を満足するかを
判定する(ステップ52)。ステップ52の判定がrY
ES,+のとき、ステップ141の処理が終了する。ス
テップ52の判定が「NO」のとき、ステップ53の判
定が行われる。すなわちプログラム要素Anが固定型の
プログラム要素であるかが判定される。ステップ53の
判定がrYESJのとき、ステップ54でプログラム要
素Anをファイルに出力する。ステップ53の判定が「
NO」のとき、task−fr.のスロットrpare
nt−relation Jの値を入力し、その値に対
応して設定されたプログラム要素を、該当する可変型の
プログラム要素An(A1またはA a )とする(ス
テップ55)。この後にも、ステップ54の処理が行わ
れる。これらの処理によって、目的とする或功終了判定
関数のプログラムが補助記憶装置3内に作成される。こ
のプログラムは、第18図のようにつながったプログラ
ム要素A1〜A5を有する。しかし可変型のプログラム
要素A1は、プログラム要素CGCI,CGC2または
CGC3になっている。更に可変型のプログラム要素A
4も、プログラム要素CGC4,CGC5またはCGC
6になっている。
以上のようにして、プログラム作成用知識に含まれる解
決すべき問題に固有の推論制御知識を反映した或功終了
判定関数のプログラムが、作成できる。第25図は、第
14図に示す工程計画問題の具体例に対して作成された
、C言語で書かれた成功終了判定関数の例である。この
例は、第18図(具体的には第19図)に示す或功終了
判定関数の汎用プログラム、及び第16図に示すプログ
ラム作成用知識を用いて、ステップ141の処理によっ
て作成されたものである。
次に、失敗終了判定関数のプログラムを作成するステッ
プ142について説明する。ステップ142も、第23
図に示す処理とほとんど同じ処理を行う。第23図の処
理において異なっている部分は、ステップ49の処理内
容である。この処理は、失敗終了判定関数のプログラム
要素知識からプログラム要素の数を取り出し、この数を
変数n eleに代入するものである。また、ステップ
−55一 53、54及び55の「An」がrBnJになっている
失敗終了判定関数のプログラム要素知識は、失敗終了判
定関数のプログラム要素知識のフレーム「プログラム要
素BIJの知識と、失敗終了判定関数のプログラム要素
が6であることを示す知識とを含む。フレーム「プログ
ラム要素BtJの知識は、前述したフレーム「プログラ
ム要素A I Jの知識と同じである。失敗終了判定関
数のプログラムも、失敗終了判定関数の汎用プログラム
(第20図)、及びプログラム作成用知識(例えば第工
6図)を用いて、成功終了判定関数のプログラムと同様
に作成される。この失敗終了判定関数のプログラムは、
プログラム作成用知識に含まれる解決すべき問題に固有
の推論制御知識を反映して作成できる。この失敗終了判
定関数のプログラムは、第20図のようにつながったプ
ログラム要素81〜BBを有する。ただし、可変型のプ
ログラム要素B1は、該当するスロットの値に対応して
フレーム「プログラム要素BIJから選択されたプログ
ラム要素になっている。
−56− ノード選択関数のプログラムを作成するステップ143
について説明する。このステップ143の処理も、失敗
終了判定関数のプログラムの場合と同様に、ステップ4
9の「成功終了判定関数」が「ノード選択関数」に、ス
テップ53、54及び55のrAnJが「Cn」になっ
ていることを除いて、第23図の処理と同じである。ノ
ード選択関数のプログラム要素知識は、task−sp
ec fr.のスロットrparent−relati
on J及びr sibling−relation 
Jの値に対応して可変型プログラム要素がとるべきプロ
グラム要素を規定する。ステップ143では、ノード選
択関数のプログラムに含まれる固定型の各プログラム要
素はステップ53の判定によりそのまま補助記憶装置3
に記憶される。他方、ノード選択関数のプログラムに含
まれる可変型のプログラム要素は、ステップ53及び5
5の処理により、スロットrparent−relat
ionJ及びrsibling−ralationJの
値に対応したプログラム要素になる。
このプログラム要素は、補助記憶装置3に記憶される。
このように、各プログラム要素がつながつたノード選択
関数のプログラムが補助記憶装置3内に生或される。ノ
ード選択関数のプログラムは、ノード選択の汎用プログ
ラム、及びプログラム作成用知識(例えば第16図)に
含まれる解決すべき問題に固有の推論制御知識を用いて
、成功終了判定関数のプログラムと同様に作成される。
最後に、ステップ144にて行われるリンク選択関数の
プログラムの作成について述べる。ステップ144の処
理も、失敗終了判定関数のプログラムの場合と同様に、
ステップ49の「或功終了判定関数」がrリンク選択関
数」で、ステップ53、54及び55のrAnJがN)
nJであることを除いて、第23図の処理と同じである
リンク選択関数のプログラム要素知識の一部を第26図
に示す。図示されていないが、リンク選択関数のプログ
ラム要素知識は、リンク選択関数のプログラム要素数が
10であることを示す知識を含む。リンク選択関数のプ
ログラム要素知識であるフレーム「プログラム要素D 
zoJの知識は,task−spec fr.のスロッ
トres−parent−relationJ及びre
s−sibling−relation Jの各値によ
ってプログラム要素D1oがとるべきプログラム要素S
LI〜SL5等を設定する。すなわちスロットreSp
arent−relation Jの値aに対してスロ
ットressibling−relation Jの値
a − e毎に、プログラム要素(SLI,SL2,S
L3,SL4またはSL5)を上つずつ対応させている
。スロットres−parent−relation 
Jの値b及びCに対しても、スロツh res−sib
ling−relationJの値a − e毎に、プ
ログラム要素を1つずつ対応させている。
プログラム要素D1〜D9は、ステップ144内のステ
ップ53の判定によりそのまま補助記憶装置3に記憶さ
れる。プログラム要素DIOは、ステップ44における
ステップ53及び55の処理により前述した2つのスロ
ツ1−の値に応じて定まるプログラム要素となって、補
助記憶装置3に記憶される。このようにして作成された
リンク選択関数のプログラムは、プログラム要素D工〜
Dtoが第2l図のようにつながり、しかも解決すべき
問題の対象領域に固有の推論制御知識が反映された−5
9− ものどなる。
本実施例によれば、プログラム作成用知識に基づいて、
解決すべき問題に固有の推論制御知識及びその問題の対
象領域に固有の推論制御知識を反映した問題解決プログ
ラムを、自動的に作成できる。本実施例によれば、任意
の解決すκき問題及び任意の対象領域に対して、問題解
決プログラムを作成できる。
特に、問題解決プログラムの作成において、汎用探索プ
ログラムをベースのプログラムとして用いているので、
該当する問題解決プログラムの作成が容易になる。上記
汎用探索プログラムが、表1に示す部分、及び探索要素
関数rselectfunctionJの汎用プログラ
ムである固定プログラムと、戒功終了判定関数、失敗終
了判定関数、ノード選択関数及びリンク選択関数の各汎
用プログラムである可変型の関数プログラムとを含むこ
とが、対象とする問題解決プログラムの作成を著しく容
易にしている。これは、汎用探索プログラムの一部を占
める可変型の関数プログラムが、解決−60 すべき問題に固有の推論制御知識及びその問題の対象領
域に固有の推論制御知識の一方、すなわち第2図,第3
図,第1l図及び第12図に示す問題解決戦略の分類情
報から選択された所定の推論制御知識の適用によって,
特定の問題及び特定の対象領域に適合するものになるた
めである。特に、可変型の関数プログラムが可変型プロ
グラム要素及び固定型プログラム要素を含むことが、そ
の問題解決プログラムの作成を更に容易にする。該当す
る可変型プログラム要素は、問題解決戦略の分類情報か
ら選択された所定の推論制御知識を適用することにより
、特定の問題及び特定の対象領域に適合するものになる
。可変型プログラム要素を特定の問題及び特定の対象領
域に適合できるものにすることによって、それを一部に
用いた汎用探索プログラムが、極めて容易に、特定の問
題及び特定の対象領域に適用できる問題解決プログラム
になる。
換言すれば、汎用探索プログラムをベースのプログラム
として用いることが、本実施例において、任意の解決す
べき問題及び任意の対象領域に対して該当する問題解決
プログラムを作成できる知識処理システム構築ツールを
得ることができる一つの要因である。特に、上記汎用探
索プログラムが固定プログラム及び可変型の関数プログ
ラムとを含むこと、具体的には汎用探索プログラムが可
変型プログラム要素及び固定型プログラム要素を含むこ
とが、本実施例において、その問題解決プログラムを作
成できる知識処理システム構築ツールが得られる一つの
大きな要因である。しかし、本実施例において、その問
題解決プログラムの作成が可能な知識処理システム構築
ツールが得られる最も大きな要因は,あらかじめ定めら
れた問題解決戦略の分類情報から選択された所定の情報
を問題解決プログラムの作成に′適用することである。
本実施例は,あらかじめ定められた問題解決戦略の分類
情報を準備しているので、問題解決プログラムを作成す
るために必要な所定の情報を確実に入力できる。その際
,使用者は、問題解決プログラムの作成に必要な情報を
新たに考えるといった面倒なことをする必要がない。
最後に、作成された問題解決プログラムによる推論を知
識処理システムにおいて実行するために必要な知識ベー
スの作成、すなわちステップ14の具体的な処理内容を
、第27図に基づいて以下に説明する。
この処理によって作成される知識ベースは、第28図に
示すものである。第28図は、解決すべき問題及び対象
領域に対する探索空間を構成する各情報をデータ構造で
表している。その探索空間を規定する情報は、初期ノー
ド(初期節点)、目標ノード(目標節点)、中間ノード
(中間節点)、親子関係、成立条件、及び状態の6種類
のセル構造で表現される。更に、それらの各情報のうち
初期ノード,目標ノード,中間ノード及び親子関係の情
報は、探索空間規定セルとよぶ1つのセルにまとめてい
る。その探索空間を構成するノードのうち初期ノード及
び目標ノードを除いた各ノードは、中間ノードセルと呼
ぶデータ構造で定義される。
初期ノード及び目標ノードは、それぞれ初期ノー一63
ー ドセル及び目標ノードセルと呼ばれる別のデータ構造で
定義される。各ノードの属性値のうち、ノード間の関係
を与える情報を親子関係と呼ぶ。この親子関係の情報は
、親子関係セルのデータ構造で定義される。各ノードの
属性を状態と呼び、状態の情報は状態セルのデータ構造
で定義される。
また、ノード間の成立条件及び各状態の成立条件を特別
に成立条件セルと呼ぶデータ構造で定義する。一般に、
探索問題では、探索空間を構成する各ノードが予め全て
与えられている場合と、探索の過程で各ノードが生成さ
れる場合とがある。前者における各ノードの関係は、関
係するノードの情報が親子関係セル内の属性名「状態変
換規則」の値として与えられる。また、後者における各
ノードの関係は、状態を変換する演算子(オペレータ)
が親子関係セル内の属性名「状態変換規則」の値として
与えられる。このように、親子関係と呼ぶデータ構造を
導入することにより一般的な探索問題を同一のデータ構
造で記述することができる。
探索空間を構成する各ノードに関する情報は、一図一 初期ノードセル、中間ノードセル及び目標ノードセルの
うち該当するセルに与えられる。初期ノード、中間ノー
ド及び目標ノードに関する情報の数が異なるので、1つ
のノードセルにそれらの情報を全て含ませるよりも、本
実施例のように初期ノードセル,中間ノードセル及び目
標ノードセルに分けて与えるほうが知識ベースの作成が
容易である。しかも,構築された知識処理システムを使
用する場合においても、初期ノード、中間ノード及び目
標ノードに関する情報は知識ベースの該当する各々のノ
ードセルから短時間に呼び出せるので、推論に要する時
間を短縮できる。
第27図に示す処理(ステップ14)は、ステップ56
〜66を有する。この処理は、ステップ56,59.6
2及び65の各判定に基づいて、該当する入力すべき知
識の内容を表示装[IBにガイダンスするとともに入力
された知識を記憶手段9の所定のエリア(第28図)に
記憶させるものである。ステップ56,59.62及び
65の各判定は、task−spec fr.のスロッ
トの値に基づいて行なわれる。
ステップ56は、スロットrgoal−conditi
on−typeJの値を判定する。その値がrstat
eJであればステップ58、r condition 
Jであればステップ57の処理が実行される。ステップ
57では、目標ノードのrノード間の成立条件」に関す
る知識の入力を指示するガイダンスを出力する。使用者
は、表示装置1Bに表示されたガイダンスを見て対象領
域に関する該当する知識を入力装置IAから入力する。
入力されたその知識は、目標ノードセルの「ノード間の
成立条件」及び目標ノードセルに対応する成立条件セル
の値として記憶される。ステップ58では、目標ノード
の「状態の成立条件」に関する知識の入力を指示するガ
イダンスを出力する。入力装置1Aから入力されたその
知識は,目標ノードセルの「状態の戒立条件」及びその
威立条件セルの値として記憶される。
ステップ59は、スロットrinitial−type
Jの値を判定する。その値がrstateJであればス
テップ6l、rcondition Jであればステッ
プ60の処理が実行される。ステップ60では、初期ノ
ードの「ノード間の戊立条件jに関する知識の入力を指
示するガイダンスを出力する。入力装置1Aから入力さ
れたその知識は、初期ノードセルの「ノード間の成立条
件」及び初期ノードセルに対応する他の成立条件セルに
記憶される。ステップ61では、初期ノードの『状態の
成立条件」及び「状態」に関する知識の入力を指示する
ガイダンスを出力する。
入力装置1Aから入力されたその知識は、初期ノードセ
ルの「状態の威立条件」、前述の他の成立条件セル及び
初期ノードセルに対応する状態セルに記憶される。初期
ノードに関連して親子関係の情報がある場合は、ステッ
プ60または61で入力される。その情報は、初期ノー
ドセルに対応する親子関係セルに記憶される。
ステップ62は、スロットroperation−ty
pejの値を判定する。その値がrfunctionJ
であればステップ63の処理が、rlinkJであれば
ステップ64の処理が実行される。ステップ63では、
ノード展開のための演算子(オペレータ)に関する知識
の67ー 入力を指示するガイダンスを出力する。入力装置IAか
ら入力されたその知識は、親子関係セルに記憶される。
ステップ64では,探索空間を構成する全てのノードに
関する知識の入力を指示するガイダンスを出力する。入
力装置1Aから入力されたその知識は、中間ノードセル
に記憶される。
その知識の中に親子関係、成立条件及び状態の知識が含
まれている場合、それらの知識は、中間ノードセルに対
応する親子関係セル、成立条件セル及び状態セルのうち
該当するセルに記憶される。
ステップ63及び64では、スロットroperatj
ontype」の値を中間ノードセル及び初期ノードセ
ルの「親子関係のタイプ」の値として記憶する。
ステップ65は、スロットrevaluation−f
unc−typeJの値を判定する。その値がrcha
ngeableJであればステップ66の処理が実行さ
れる。ステップ66において、演算子(オペレータ)の
変更に関するノードの知識及び対応する評価関数の入力
を指示するガイダンスを出力する。入力装置IAから入
力されたそれらの情報に基づいて、記憶手段5に記憶さ
れている探索プリミティブ関数(1)〜(12)および
探索基本関数(13)〜(21)のうち該当するものが
変更される。ステップ65でスロットrevaluat
ion−func−typeJの値がrfixJである
と判定された場合は、探索プリミティブ関数(1)〜(
12)および探索基本関数(13)〜(21)は変更さ
れない。
以上のステップ14で入力される知識は、解決すべき問
題の対象領域に関係するものである。ステップ14で入
力される知識が記憶手段9に記憶されることによって作
成された問題探索プログラムによる推論を知識処理シス
テムにおいて実行するために必要な知識ベースを、作成
できる。
第14図に示す工程計画問題の具体例に対して作成され
た知識ベースを第29図に示す。この知識ベースは、第
■6図のtask−spec fr.のスロットの値に
対応して作成されたものである。第30図(A)及び(
B)は、第29図の親子関係セルの状態変換規則に示す
タスクの関数例である。これらは、演算子として各状態
を構成するタスク2及び3の開始時間を1時間遅らせる
ための関数が定義されている。これらのプログラムは、
オブジェクト指向プログラミング手法を利用したC言語
により記述される。
以上述べた本実施例による知識ベースの作成も、あらか
じめ定められた問題解決戦略の分類情報から選択された
所定の情報に基づいて必要な知識の入力をガイダンスに
より指示するので、作成された問題解決プログラムによ
る推論を知識処理システムにおいて実行するために必要
な知識を洩れなくしかも適切に入力することができる。
また、知識ベースの作成が、極めて容易である。
本実施例を用いた、工程計画問題に対する知識処理シス
テムの構築について述べたが、次に、原子炉の診断を行
なう知識処理システムの構築について述べる。ここで,
「診断」が解決すべき問題であり、「原子炉」が対象領
域である。なお、工程計画問題では、「工程計画」が解
決すべき問題であり、「タスク1、2、及び3」が対象
領域である。
階層的分類の推論方法を用いた原子炉の異常診断を行な
う知識処理システムの構築を説明する。
第31図は、原子炉の異常診断を行なうときに用いる知
識を示したものである。第31図において丸で囲んだ名
称が診断判定内容を示し、アンダーラインを付したもの
が各異常診断を判定する根拠となる発生信号である。こ
の発生信号は、原子炉プラントから測定される。ここで
RFPは給水ポンプ、TD/RFPはタービン駆動給水
ポンプ及びMD/RFPはモータ駆動給水ポンプである
異常診断は,出力変動が発生したところから始まる。例
えば、信号Aが発生していればRFP故障と判定し、更
に給水流量低の信号が発生していればTD−RFP故障
と判定する。このように,より広い概念から出発し、得
られた情報に基づいてより詳細な概念を得る推論方法を
階層的分類という。
本実施例の知識処理システム構築ツールを用いて、上記
した原子炉の異常診断を行なう知識処理システムを構築
した。すなわち、ステップ12の処理により入力された
各ストラテジー分類項目に71− 対する回答A′〜K′は、第32図のようになる。
これらの回答に基づいて、原子炉の異常診断に対するt
ask−spec fr.が作成される。更に、ステッ
プ13において、原子炉の異常診断に対する問題解決プ
ログラムが、そのtask−spec fr.に含まれ
る情報(知識)及び前述の汎用探索プログラムを用いて
作成される。第34図は、原子炉の異常診断に対して、
ステップ13で作成された問題解決プログラムの探索要
素関数rcheck−goal−cond IJの具体
例である。第33図は、ステップ14で作成された、原
子炉の異常診断の知識ベースの具体例である。この知識
ベースは、作成された原子炉の異常診断用の問題解決プ
ログラムを用いて推論を行なうときに必要な知識を含む
本実施例によれば、任意の解決すべき問題及び任意の対
象領域に対して、推論プログラムである問題解決プログ
ラムを自動的に作成することができ、その問題解決プロ
グラムを実行する際に必要な知識ベースも容易に作成で
きる。対象とする問題解決プログラムを作成するにあた
って、使用者72 は、対象とする問題解決プログラムの作成に必要な情報
、すなわち対象とする特定の解決すべき問題及び対象と
する特定の対象領域に関係する情報を、表示されたメニ
ューに基づいて問題解決戦略の分類情報から選択するだ
けでよい。
第5図に示す処理手順を実行する演算処理装置2の機能
を、第35図により説明する。演算処理装置2は、プロ
グラム作成用知識ベース作成手段36、推論プログラム
作成手段39及び知識ベース作成手段40を有する。プ
ログラム作成用知識ベース作成手段36は、ステップ1
2の処理を実行し、推論制御知識表示手段37及びプロ
グラム作成用知識出力手段38を有する。推論制御知識
表示手段37は、第6図のステップ27、33及び34
に相当する。推論制御知識表示手段37は、記憶手段4
に記憶されている問題解決戦略の分類情報に含まれる推
論制御知識を戦略分類項目毎に読み込み、表示装置IB
に出力する。プログラム作成用知識出力手段38は、第
6図のステップ28〜32及び35の処理を行う。この
プログラム作成用知識出力手段38は、使用者が入力装
置IAで指定した推論制御知識に関する情報を補助記憶
装置3の所定の記憶エリアに出力する。推論プログラム
作成手段39は、ステップ13の処理を実行して推論プ
ログラムを作成する。知識べ一ス作成手段40を有する
。プログラム作成用知識ベース作成手段36は、ステッ
プ14の処理を実行し、知識入力ガイド手段4l及び知
識出力手段42を有する。知識入力ガイド手段41は、
第27図に示す各ステップの処理を実行する。知識出力
手段42は、第27図に図示されていないが、ステップ
57,58,60,61,63.64及び66の各処理
の後に各ステップで指示された知識の入力を行い、記憶
手段9の所定のエリア(第28図)に記憶される。その
知識の入力は、入力装置IAより行われる。
前述した実施例では、問題解決戦略の分類情報を利用し
て対象とするプログラム生成用知識を対話的に得ている
。しかし、問題解決戦略の分類情報内の各情報を予め整
理して探索空間を規定する情報として使用し、それらの
情報を表示装置1Bに一回に表示しても前述の実施例と
同様な結果が得られる。
また、問題解決戦略の分類情報に含まれる推論制御知識
の入力指示と、推論プログラム作成処理を分けて実施し
ているが、上記探索空間の規定情報の各情報に従って、
対応する問題解決プログラムの探索要素関数を作成する
処理を行うことにより、1つの処理で実施することもで
きる。ただし、この場合は、対象領域の知識の入力を支
援する際に必要な情報は、前述した実施例で述べたよう
にプログラム作成用知識として記憶しておく必要がある
さらに、前述した実施例の各プログラムは、Lisp及
びprolog等の他のプログラミング言語を使用して
作成してもよい。
以上述べた実施例は、記憶装置10が演算処理装置2と
セットになっている例である。外部メモリである記憶装
置10がなく内部メモリの補助記憶装置3が記憶装置1
0の機能を代用する知識処−75 理システム構築ツールの例が、以下に説明される。
この知識処理システム構築ツールの例は、本発明の他の
実施例である。
本実施例は、パーソナルコンピュータまたはワークステ
ーション等のコンピュータを用いたものである。本実施
例の知識処理システム構築ツールは、第36図に示すよ
うに入力装置1A、表示装置IB、及びコンピュータ処
理装置68を有する。
コンピュータ処理装置68は、図示していないが内部に
演算処理装置2,補助記憶装置3,フロッピーディスク
駆動装置及び情報読取り書込み装置を備えている。更に
、コンピュータ処理装置68は、可搬式の記憶媒体であ
るフロッピーディスク70を挿入するフロッピーディス
ク挿入孔69を有する。情報読取り書込み装置は、フロ
ッピーディスク挿入孔69内にセットされたフロッピー
ディスク70に書込まれている情報を読取とって補助記
憶装置3に出力し、逆に補助記憶装置3に記憶されてい
る情報をフロッピーディスク70に書込むものである。
フロッピーディスク駆動装置は、情報の読取り及び書込
み時に、フロッピーディスク挿入孔69内にセットされ
たフロッピーディスク70を回転させる。フロッピーデ
ィスク70は、第1図の4〜7に相当する所定の4つの
記憶エリアを有する。これらの各記憶エリアは、第1図
の実施例と同様に、複数の推論制御知識を含む問題解決
戦略の分類情報を記憶するエリア、探索要素関数を記憶
するエリア、第5図の処理手順を記憶するエリア、及び
表1、第18図、第20図及び第21図等に示す汎用探
索プログラムを記憶するエリアである。
本実施例の知識処理システム構築ツールを用いて該当す
る問題を解決する知識処理システムを構築する場合は、
まず、フロッピーディスク70をフロッピーディスク挿
入孔69内にセットし、フロッピーディスク70の各記
憶エリアに記憶された各情報を補助記憶装置3に記憶さ
せる。演算処理装置2は、補助記憶装置3から第5図の
処理手順を読込み、その手順に基づいた処理を行う。こ
の処理によって得られた情報(または知識)は、補助記
憶装置3に記憶される。作成された推論プログラムは、
補助記憶装置3に記憶される。この推論プログラムの実
行に必要な知識ベースは,補助記憶装置3内に作成され
る。本実施例も、第工図の実施例と同じ効果を得ること
ができる。
本実施例の知識処理システム構築ツールとして用いたパ
ーソナルコンピュータまたはワークステーション等のコ
ンピュータは、作成された推論プログラム及び知識ベー
スを内蔵した状態でそのまま知識処理システムとして使
用できる。他のコンピュータを知識処理システムとして
使用する場合は、上記の所定の情報を記憶しているフロ
ッピーディスク70をフロッピーディスク挿入孔69か
ら取り出し、その孔69に他のフロッピーディスクをセ
ットし、補助記憶装置3に記憶している作成され推論プ
ログラム及びこの推論プログラムの実行に必要な知識を
そのフロッピーディスクに書込む。このフロッピーディ
スク内の情報を知識処理システムとして用いるコンピュ
ータの記憶装置に書込めばよい。
以上に説明した実施例は、汎用探索プログラムの各探索
要素関数を、問題解決戦略の分類情報により、探索プリ
ミティブ関数を埋め込んだ探索基本関数を、対応表を用
いて対応付けることにより構成する例であった。
次に、汎用探索プログラムに含まれる各探索要素関数と
この関数を構成する探索基本関数との対応関係及び各探
索基本関数とこの関数を構成する探索プリミティブ関数
との対応関係を別々に記憶し、入力された問題解決戦略
の分類情報を用いて汎用探索プログラムに含まれる各探
索要素関数を選択的に構成する本発明の他の実施例につ
いて詳細に示す。
具体的な処理の説明の前に、システムが予め保持してい
る各探索要素関数、探索プリミティブ関数及び探索基本
関数について説明する。ここで、汎用探索プログラムに
含まれる探索要素関数は、表1に示した汎用探索プログ
ラムを構成する主要な関数であり,戊功終了判定関数、
失敗終了判定関数、ノードの選択関数、リンクの選択関
数、オ−79ー ペレータの選択/適用関数及び活性ノードに含まれる更
新関数である。上記汎用探索プログラムは、探索要素関
数としてcheck−goal−condl, che
ckgoal−cond2, select−node
, select−link, select−fun
ction ,及びreset−active−nod
eの6つを含んでいる。これらの各探索要素関数におい
て、その入出力項目で規定する関数の機能は、対象とす
る問題に対する問題解決戦略の分類情報(第2図及び第
3図の情報)に依存しない。しかしながら、各探索要素
関数の処理内容は、解決すべき問題の対象領域及び問題
解決戦略の分類情報によって決定される。
上記の6つの探索要素関数は、表1に示す汎用探索プロ
グラムのスケルトンの中で実行可能な状態にプログラミ
ングされていない関数である。探索要素関数は、汎用探
索プログラムにおいて実際に探索を実行する要素でもあ
る。また、これらの探索要素関数は汎用探索プログラム
に含まれるプロダクション型のルール(if−then
ルール)の結論部(then部)に含まれており、その
ルールの条−80− 件部(if部)に含まれていない。
この処理の内容は、各探索要素関数を、後述するような
、解決すべき問題の対象領域の相違、及び問題解決戦略
の分類情報によって処理内容が決まる探索基本関数を導
入すれば、問題解決戦略の分類情報から選択された情報
の相違に基づいたそれらの探索基本関数の選択によって
決定することができる。ここで、探索基本関数は、第4
図の下段に示した(13)〜(21)の各関数であり、
探索木を構成する各情報から探索の制御に必要な情報を
取り出す関数である。これらの各探索基本関数の、入出
力項目で規定される関数の機能は、対象とする問題に対
する問題解決戦略の分類情報に依存しない。しかしなが
ら、それらの探索基本関数の処理内容は対象とする問題
に対する問題解決戦略の分類情報によって決定される。
さらに、これら探索基本関数は,解決すべき問題の対象
領域の固有の探索空間を定義する関数(例えば、計画問
題における評価関数)及び上記対象領域に依存しない探
索プリミティブ関数から、上記対象領域及び問題解決戦
略の分類情報によって構成することができる。探索基本
関数は、対象領域の情報に依存し、探索木の構成に関す
る情報(関数)を使って探索を制御する情報(関数)で
あるとも言える。探索プリミティブ関数は、第4図の上
段に示す(1)〜(12)の各関数であり、探索木に関
する基本的な探索操作を規定した関数である。探索プリ
ミティブ関数は、対象領域の情報に依存しなく、探索木
の構成に関する情報(関数)であるともいえる。いかな
る探索木の複雑な探索操作も、これらの探索プリミティ
ブ関数を合威して実現することができる。ただし、探索
プリミティブ関数は、対象領域に依存する探索操作は含
まない。
探索木とは、ノードと、ノード間の関係(診断型問題に
おいてはリンク,設計,計画,問題においてはオペレー
タが該当)とで表わされたものである。これは、知識処
理システムにおいては知識ベース内の知識である。
以上のように、各種の問題解決プログラムは、探索プリ
ミティブ関数及び対象領域に固有の探索空間を定義する
関数の組合わせからなる探索基本関数を、対象領域及び
問題解決戦略の分類情報に依存した情報から決定する処
理、及び探索基本関数の組合せからなる探索要素関数を
問題解決戦酩の分類情報に依存した情報から決定する処
理により作成することができる。そこで、本実施例にお
ける上記処理は,汎用探索プログラムの探索要素関数及
び探索基本関数のスケルトン(骨格)、及び実行可能な
探索プリミティブ関数を用意し,使用者が選択した問題
解決戦略の分類情報を利用して、実行可能な探索要素関
数と探索基本関数を作成することにより実現される。
上記実現法を採用することにより、本実施例の処理手順
は、第■図の実施例とステップ13(第5図)の内容が
異なる。なお、以下における本実施例の具体的な処理は
、対象とする問題として第工図の実施例で用いた工程計
画問題を利用して説明する。
第37図に本実施例のシステム構成を示す。本実施例の
知識処理システム構築ツールは、第1図−83− の実施例と同様に入力装置IA、表示装置IB、演算処
理装W (CPU)2、内部メモリである補助記憶装置
3、及び外部メモリである記憶装置210を備える。入
力装置IA、表示装置IB、補助記憶装置3及び記憶装
置210は演算処理装置2に接続される。記憶装置21
0内の記憶エリアは少なくとも8つのエリアに分かれて
いる。これらの8つのエリアは記憶手段4,5.6A,
7A,8,9,104及び105として機能する。
記憶手段4,5.8及び9は第1図の実施例における記
憶手段4,5.8及び9と同じであり、該当する情報を
記憶する。記憶手段6Aは第38図に示す処理手順を記
憶する。記憶手段7Aは表1に示された汎用探索プログ
ラムのスケルトン、そのプログラムに含まれる6つの探
索要素関数のスケルトンを記憶する。記憶手段104は
、探索基本関数のスケルトン内に挿入すべき探索プリミ
ティブ関数を記憶手段4に格納された問題解決戦略の分
類情報の各項目の情報によって対応付けた対応表(対応
表1という)を記憶する。記憶手段一調一 105は、探索要素関数のスケルトン内に挿入すべき探
索基本関数(及び探索プリミティブ関数)を、記憶手段
4に格納された問題解決戦略の分類情報の各項目の情報
によって対応付けた対応表(対応表2という)を記憶す
る。演算処理装置2は使用者の入力装置IAへのスター
ト信号の入力により記憶手段6Aから第38図の処理手
順を呼び出し、その処理手順に従って所定の処理を実行
する。演算処理装置2において実行される処理の内容を
以下に詳細に説明する。
まず,ステップ12において、問題解決戦略の分類情報
の各戦略分類項目に従って解決すべき問題の解きかった
関する情報の入力が行なわれる。
この情報は、補助記憶装置3内の所定の記憶エリアに記
憶される。このフレーム構造の知識ベースを第1図の実
施例と同様にプログラム作成用知識ベースという。ステ
ップ113では、問題解決プログラムのベースとなる所
定の汎用探索プログラム(表1の汎用探索プログラム)
及びプログラム作成用知識(例えば第16図の知識)を
用いて、問題解決プログラムを作成する。ステップ14
は、作成された問題解決プログラムを知識処理システム
内で実行させる時に必要な知識(対象知識)を入力して
知識ベースを作成する処理を実行する。
作成された問題解決プログラム及び入力された対象知識
を用いて、解決すべき問題を解く知識処理システムを構
成できる。すなわち、作成された知識処理システムは、
その問題解決を行なう推論を実行する手段と、対象知識
を記憶している知識ベースとを備えている。
以下、各処理の詳細を説明する。
まず、第38図のステップ12は第5図のステップ12
と同じ処理である。従って、第1図の実施例で示した工
程計画問題を対象とした場合、使用者が入力する問題解
決戦略の分類情報に対する回答は第1図の実施例の第1
6図と同じものとなる。
次に、ステップ113の処理について説明する。
ステップ113では、知識処理システムの推論プログラ
ムとなる問題解決プログラムを作成する。
本実施例における問題解決プログラムは、第1図の実施
例の説明でも述人たように、探索プログラムとして構成
される。本実施例では、この探索プログラムのスケルト
ンとして、記憶手段7Aに格納された表上に示す汎用探
索プログラム及びそのプログラムに含まれる6つの探索
要素関数、及び記憶手段5に記憶される探索基本関数を
有している。第1図は実施例と同様に汎用探索プログラ
ムはオブジェクト指向プログラミング手法を用いてルー
ル形式で表現したプログラムである。従って、本汎用探
索プログラムは、control frのメソッドとし
て与えられている6つの探索要素関数のスケルトンの不
定部分に具体的な処理ステイトメントを挿入することに
より実行可能なプログラムとなる。ここで、挿入すべき
各ステートメントは、探索プリミティブ関数及び探索基
本関数を介して、問題を解くために必要な情報に関連付
けられている。この結果、対象とする問題を解くために
必要な情報(使用者によって選択された第2図及び第3
図の情報)を与えるだけで、その問題を解決す87ー る適切な問題解決プログラムが得られる。
第39図に、ステップ113の詳細な処理内容を示す。
第39図において、ステップ115では、補助記憶装置
3に格納されたプログラム作成用知識、記憶手段104
に記憶された対応表工内の該当する探索プリミティブ関
数、及び記憶手段5に格納された探索基本関数のスケル
トンを呼び出し、問題解決のプログラムで使用する実行
可能な探索基本関数のプログラムを作戊する。作成した
実行可能な探索基本関数のプログラムは、最終的な問題
解決プログラムの一部として記憶手段8に格納される。
なお、このとき、記憶手段5に格納されている各探索プ
リミティブ関数も記憶手段8に転送して記憶する。
次にステップ116では、補助記憶装置3に格納された
プログラム作成用知識、記憶手段105に記憶された、
対応表2内の該当する探索基本関数、及び記憶手段7A
に格納された探索要素関数のスケルトンを呼び出し、問
題解決プログラムで使用する実行可能な探索要素関数の
プログラムを−88− 作成する。作成した実行可能な探索要素関数のプログラ
ムは、ステップ115と同様に、最終的な問題解決プロ
グラムの一部として記憶手段8に格納される。また、こ
のとき、記憶手段7Aに格納されている汎用探索プログ
ラムも記憶手段8に転送し記憶される。なお、以上の各
処理では、作成した実行可能なプログラムを新たな記憶
手段に格納したが、汎用探索プログラム及び探索基本関
数と探索プリミティブ関数をそれぞれ記憶している記憶
手段5あるいは7Aに格納してもよい。
以下、第1図の実施例で使用した工程計画の作成問題を
例として、ステップ115及び116を詳細に説明する
。第40図にステップ115の詳細な処理内容を示す。
また、本処理で使用する探索基本関数のスケルトンの例
を第41図に、対応表1の一部を第42図にそれぞれ示
す。第41図は、第4図の探索基本関数(13)のスケ
ルトンを示す。スケルトンは、第41図に示すように、
概略プログラムと挿入プログラムを有する。なお、プロ
グラム作成用知識は、第16図に示したものを使用する
ここでは、探索基本関数の一つである。探索過程でノー
ドの評価値を返す。EVALUATE(C,K)の実行
可能なプログラムの作成について説明する。第42図の
対応表1は、問題解決戦略の分類情報に基づいて、対応
する挿入文、及び挿入力所が記憶されている。ここで、
問題解決戦略の各分類項目A,B,C,・・・・・・は
、第9図の各分類項目に対応している。第42図の対応
表1の分類項目A,B,・・・のデータは、第9図の入
力値で示されているが実際には第9図の変換値となって
いる。上述したように、対応表1は、問題解決戦略の分
類項目の、問題解決に依存した推論制御知識とともに対
象領域に固有の推論制御知識も使用している。また、挿
入力所は、探索基本関数のスケルトン内の挿入位置(例
えば、第41図のT3及びT4)を示している。本例題
においては、第40図の処理手順は、まず、図示されて
いないが、第I図の実施例で述べた第22図の処理手順
の最初に行う処理、すなわち、解決すべき問題に関する
対象領域の情報(前述の工程計画問題レこおいては目標
関数制約条件等のデータ)を入力する。これらのデータ
は,使用者が入力装置IAを用いて入力する。選択され
ている各問題解決戦略の分類情報(第16図の情報)を
読みだす(ステップ117)。対応表1の先頭行の成立
条件を判定する(ステップl18)。
ステップ119で「NO」と判定された場合は、ステッ
プ121の処理に移る。ステップ119の判定がrYE
sJの場合は、ステップ120に移る。本例では、I=
a,J=aであるため、対応表1の第1行の条件が満足
され、deepという挿入文を第42図の対応表lから
取り出し、第4王図に示す基本関数のスケルトンの挿入
プログラム内の位置T3に挿入する(ステップ120)
。その挿入文は探索プリミティブ関数を示す文であり、
実質的に探索プリミティブ関数を示す。ちなみに、de
epは、第4図の(7)項の関数である。挿入プログラ
ムに上記挿入文が挿入されると、概略プログラム内の、
挿入プログラムのタグであるE1の位置に、挿入プログ
ラムE1が挿入される。次に対91ー 応表1の最終行まできたかどうかを判断し(ステップ1
21)、対応表1の最終行までくると(ステップ12王
の判定がYESの場合)終了する。
対応表1の最終行までこなければ、次の行の成立条件を
判定し(ステップ122)、ステップ上19以下の処理
を繰返す。
対応表工の最終行に達したとき、すべての探索基本関数
のスケルトンが探索プリミティブ関数を含むプログラム
となる。
本例では、最終的に第43図に示す評価関数が生或され
る。なお、第43図において、userevalと書か
れている関数は、使用者が対象領域の情報としてステッ
プ117の前に入力したデータに基づいて作成される。
このようなデータに基づいて作成される探索基本関数と
しては他に第4図の(]4)及び(15)がある。
探索基本関数(16)〜(21)は、少なくともステッ
プ12で選択された対象領域に関する情報(例えば分類
項目K−1,K−2のデータ)を反映して対応付けた探
索プリミティブ関数によって構成さ−92ー れる。分類項目A〜I,J−1及びJ−2の選択された
情報の少なくとも1つ(分類項目K−1,K−2のデー
タを除いて)のデータに対応付けた探索プリミティブ関
数が該当する探索基本関数(14)〜(21)に挿入さ
れる。対応表1は、上記のことが可能に形威される。
以上に示した処理により第4図に示した全ての探索基本
関数が探索プリミティブ関数から構成され実行可能なプ
ログラムとなる。
第44図は、ステップ116を詳細に説明したもので、
汎用探索プログラム内の探索要素関数のプログラムを作
成するための処理手順を示す。以下、本処理手順に基づ
いて探索要素関数の一つであり、「活性ノードの更新」
の部分に含まれる更新関数(reset−active
−node)のプログラムを作成する場合を例にとり説
明する。活性ノードの更新関数(reseJactiv
e−node)のスケルトンの例を第45図に示す。こ
の探索要素関数のスケルトンは、探索基本関数のスケル
トンと同じく概略プログラムと挿入プログラムを有して
いる。また、対応表2の一部を第46図に示す。第44
図の処理手順の内容は、探索基本関数のプログラムを作
る場合の第40図の処理手順の概念と本質的に同じであ
る。第46図の各項目A,B,・・・のデータは、第9
図の変換値で示している。第46図に示したように、対
応表2においては、対象領域に固有の推論制御知識であ
る分類項目J,Kの情報は、使用しない。すなわち、選
択された問題解決戦略の情報(例えば第16図の情報)
を読み出す(ステップ125)。対応表2の先頭行の戊
立条件を判定する(ステップl26)。ステップ127
の判定がrYESJの場合、ステップ128の処理を実
行する。本例では、C=1であるので挿入文としてMa
ke−linkが選択され、Make−link ff
iRest−active−nodeのスケルトンにお
ける挿入プログラムのT1の部分に挿入される(ステッ
プ128)。
ステップ12Bでは、更に、挿入プログラムのタグが、
R1なので、概略プログラムのR1の位置に挿入プログ
ラムR1が挿入される。ステップ129,130の処理
が行われ、ステップ128以下の処理がステップ129
の判定がYESになるまで繰返される。対応表2の先頭
行についての処理の後にその表の2行についての処理が
行われるが、本例ではC=1であるのでステップ127
が「N○」となる。対応表2の3行に対しても、ステッ
プ127が「N○」となりステップ128が処理されな
い。対応表2の4行に対してはステップ127がrYE
sJとなる。従って、ステップ128でRest−ac
tive−nodeのスケルトンにおける概略プログラ
ムのR2の位置に、deepが埋めこまれる。従って、
最終的に第47図のようなRest−active−n
odeのプログラムが作成される。この関数は、作用素
がすべてなくなった場合に節点を活性節点から除去する
関数である。上記の処理をステップ129がrYESJ
になるまで実行することによって、汎用探索プログラム
に含まれる全ての探索要素関数が、探索基本関数等で構
成された実行可能なプログラムとなる。
第40図及び第44図の処理手順で作成された探索基本
関数のプログラム及び探索要素関数のプー95− ログラム,及び表1の汎用探索プログラムのスケルトン
が、記憶手段8に記憶される。これらのプログラムによ
って実行可能な問題解決プログラムが構成される。
最後に、作成された問題解決プログラムによる推論を知
識処理システムにおいて実行するために必要な知識ベー
スの作成がステップ14(第38図)処理において実行
される。本実施例におけるステップ14の処理は、第1
図の実施例における第27図の処理手順と同じである。
本実施例は、第1図の実施例と同様な効果を奏する。更
に、本実施例は、探索基本関数のプログラム作成と探索
要素関数のプログラム作成とを分けて行っているので、
対象領域に関する知識,情報を反映した問題解決プログ
ラムの作成が容易にできる。対象領域の知識,情報は、
その知識,情報に依存する探索基本関数のプログラム作
成に十分活かされる。
本発明の他の実施例を以下に説明する。本実施例は、第
37図の実施例で第39図の処理手順を−96− ステップ11.6を最初に実行しその後にステップ11
5を実行するものである。本実施例は、与えられた問題
に対して探索要素関数のプログラムを先に作ることがで
きる。その後、探索要素関数のプログラムに用いた探索
基本関数のプログラムを作成するので、必要な探索基本
関数についてプログラムを作成すればよい。本実施例に
おけるその他の効果は、第37図の実施例と同じである
第37図の実施例は、第36図の実施例と同様に、パー
ソナルコンピュータ等を用いて構成できる。このような
実施例は、第36図の実施例を用いフロッピーディスク
70に、第37図の実施例の記憶手段4,5.6A,7
A,104及び105の各々に相当する6つの記憶エリ
アを有する。フロッピーディスク70のこれらの6つの
記憶エリアには、上記6つの記憶手段に記憶されている
情報が別々に記憶されている。本実施例も、フロッピー
ディスク70に記憶されている情報及び入力された必要
な情報を用いて第37図の実施例と同様に問題解決プロ
グラム及び知識ベースを作成する。作成されたプログラ
ム及び知識ベースの情報は、第36図の実施例と同様に
フロッピーディスクに記憶される。本実施例も、第37
図の実施例と同じ効果を奏する。
〔発明の効果〕
本発明の特徴によれば、任意の解決すべき問題及び任意
の対象領域に対して、推論プログラムを作成することが
できる。
本発明の他の特徴によれば、推論プログラムを作成する
ために必要な情報の入力が極めて容易である。
本発明の他の特徴によれば、推論プログラムの作成が容
易である。
本発明の他の特徴によれば、作成された推論プログラム
の実行に必要な知識ベースの作成が容易である。
【図面の簡単な説明】
第1図は本発明の好適な一実施例である知識処理システ
ム構築ツールの構成図、第2図及び第3図は問題解決戦
略の分類情報の説明図、第4図は探索要素関数の説明図
、第5図は第1図の演算処理装置で実行される処理手順
の説明図、第6図は第5図のステップ12の詳細な処理
手順を示す説明図、第7図は第6図のステップ33の詳
細な処理手順を示す説明図、第8図は問題解決戦略の分
類情報の選択メニューを示す説明図、第9図は戦略分類
項目の回答の変換値を示す説明図,第10図はtask
−spec fr.のデイフォールト値を示す説明図、
第11図は探索木評価関数のメニューを示す説明図、第
工2図はノードの相対位置に関する成立条件のメニュー
の説明図、第13図は第6図の処理手順を実行したとき
の処理の内容を時系列的に示した説明図、第14図はあ
る工程計画問題の内容を示す説明図、第15図は第14
図の問題に対して入力した戦略分類項目の回答の具体例
を示す図、第16図はプログラム作成用知識ベースの説
明図、第17図は汎用探索プログラムの主要部の内容示
す説明図、第18図は制御要素関数rcheck−go
al−cond Nの汎用プログラムの内容を示す説明
図、第19図は制御要素関数rcheckqq goal−cond iJの汎用プログラムの具体例を
示す説明図、第20図は制御要素関数rcheck−g
oal.−cond2」の汎用プログラムの内容を示す
説明図、第21図は制御要素関数rselect−1i
nkJの汎用プログラムの内容を示す説明図、第22図
は第5図のステップ13の詳細な処理手順を示す説明図
、第23図は第22図のステップ41の詳細な処理手順
を示す説明図、第24図は成功終了判定関数のプログラ
ム要素知識の内容を示す説明図、第25図は第{4図の
問題に適用する或功終了判定関数のプログラムの具体例
を示す説明図、第26図はリンク選択関数のプログラム
要素知識の内容を示す説明図、第27図は第5図のステ
ップ14の詳細な処理手順を示す説明図、第28図は作
成された推論プログラムの実行に必要な知識ベースの内
容を示す説明図、第29図は第14図の問題に適用する
知識ベースの具体例を示す説明図、第30図(A)及び
(B)は第29図の親子関係セルのタスク2及び3の内
容を示す説明図、第3l図は原子炉の異常診断に用いる
階層的な知識の内容を示す説− l0n − 明図、第32図は第3工図の診断に対して第5図のステ
ップ12において得られた回答を示す説明図、第33図
は第31図の問題に適用する知識ベースの具体例を示す
説明図、第34図は第31図の問題に適用する或功終了
判定関数のプログラムの具体例を示す説明図、第35図
は第5図の処理手順を実行する演算処理装置の機能を示
した説明図、第36図は本発明の他の実施例である知識
処理システム構築ツールの構成図、第37図は本発明の
他の実施例のシステム構成図、第38図は第37図の実
施例において演算処理装置で実行される処理手順の説明
図、第39図は第38図のステップ113の詳細な処理
手順を示す説明図、第40図は第39図のステップ11
5の詳細処理手順を示す説明図、第41図は第40図の
処理手順の説明に用いる探索基本関数のスケルトンの例
を示す説明図、第42図は対応表1の一部を示す説明図
、第43図は第40図の処理手順で作成された探索基本
関数のプログラムの一例を示す説明図、第44図は第3
9図のステップ116の詳細な処理手順を示す説明図,
第45図は第44図の処理手順の説明に用いる探索要素
関数の一つであり「活性ノードの更新jに含まれる更新
関数(rest−active−node)のスケルト
ンの例を示す説明図、第46図は対応表2の一部を示す
説明図、第47図は第44図の処理手順で作成された探
索要素関数のプログラムの例を示す説明図である。 IA・・・入力装置、IB・・・表示装置、2・・・演
算処理装置、3・・・補助記憶装置、4〜9・・・記憶
手段、第 5 図 第 6 図 特開平3 206526 (32) 第 2 セル:探索空間 規定 目標節点 初期節点 ] 中間節点 十 親子関係 11 8 図 セル:中間節点 セル名              文字列第 2 9 図 負等 9 7 民ハ 珂5 2 210 4, 5. 6A.7A.8,9,1 0 4, 105・・・記憶手段、 210・・・記憶装置 −401一 第 38 図 第 39 図 第 40 図 概略プログラム Eva I ut Stru( { retu 挿入プログラム E1:+− E2:+“ 41図 コte(Co k) :t  node  c  ;  tree  k  
;(User−eval (c,k) 丁3 (c+ k) r4 (c, k〉 第 43図 Evaluate (c . k) struct  node  c  ;treek { return (user−eval (c , k)
十deep (c . k) ) ) ;第44 図 第 45 概略プログラム act ive−c ( c, k) ;for(i=
o,i≦node  num;  i十+)f (c(
 i )=:=nu l I )return ;R1 R2    }:} 挿入プログラム Rl:  if(TI (c(i),k)==O) r
eturnR2:   for(i=o;j<node
num;i++){it (  T2  (c(i),
kK  T2 (c(J:&& (evaluate 
 (c(i).k)(evコ 1, aluate(c(D,k)))K 1 (c. k) }

Claims (1)

  1. 【特許請求の範囲】 1、記憶手段に記憶されている複数の推論制御知識のう
    ち対象とする問題に関係する前記推論制御知識を選択し
    、前記選択した推論制御知識に基づいて、前記問題に関
    する推論プログラムを作成することを特徴とする知識処
    理システムの構築方法。 2、記憶手段に記憶されている複数の推論制御知識を表
    示装置に表示させ、前記表示装置に表示された複数の推
    論制御知識のうち対象とする問題に関係する前記推論制
    御知識を選択し、前記選択した推論制御知識に基づいて
    、前記問題に関する推論プログラムを作成することを特
    徴とする知識処理システムの構築方法。 3、記憶手段に記憶されている複数の推論制御知識を表
    示装置に表示させ、表示された前記複数の推論制御知識
    のうち対象とする問題に関係する前記推論制御知識を選
    択し、前記選択した推論制御知識、及び記憶手段から読
    み込んだ探索ベースプログラムに基づいて、前記問題に
    関する推論プログラムを作成することを特徴とする知識
    処理システムの構築方法。 4、記憶手段に記憶されている複数の推論制御知識のう
    ち対象とする問題に関係する前記推論制御知識を選択し
    、前記選択した推論制御知識に基づいて、前記問題に関
    する推論プログラムを作成し、前記選択した推論制御知
    識に基づいて、前記推論プログラムを実行するときに必
    要な知識を入力しこの知識により知識ベースを作成する
    ことを特徴とする知識処理システムの構築方法。 5、複数の推論制御知識を記憶している記憶手段と、前
    記複数の推論制御知識のうち、選択された、対象とする
    問題に関係する前記推論制御知識に基づいて、前記問題
    に関する推論プログラムを作成する手段とを備えたこと
    を特徴とする知識処理システム構築ツール。6、前記記
    憶手段が、ツリー状につながつている複数の前記の推論
    制御知識を記憶している記憶手段である請求項5の知識
    処理システム構築ツール。 7、解決すべき問題に固有の複数の推論制御知識及び前
    記問題の対象領域に固有の複数の推論制御知識を記憶し
    ている記憶手段と、前記複数の推論制御知識のうち、選
    択された、対象とする問題に関係する前記推論制御知識
    に基づいて、前記問題に関する推論プログラムを作成す
    る手段とを備えたことを特徴とする知識処理システム構
    築ツール。 8、複数の推論制御知識を記憶している記憶手段と、前
    記記憶手段に記憶されている複数の推論制御知識を表示
    する表示装置と、前記表示装置に表示された複数の推論
    制御知識のうち対象とする問題に関係する前記推論制御
    知識を入力する入力手段と、前記入力した推論制御知識
    に基づいて、前記対象とする問題に関する推論プログラ
    ムを作成する手段とを有することを特徴とする知識処理
    システム構築ツール。 9、複数の推論制御知識を記憶している記憶手段と、探
    索ベースプログラムを記憶している記憶手段と、前記複
    数の推論制御知識から選択された前記推論制御知識であ
    つて対象とする問題に関係する前記推論制御知識に基づ
    いて、前記探索ベースプログラムを、前記問題を解く推
    論プログラムにする手段とを備えたことを特徴とする知
    識処理システム構築ツール。 10、複数の推論制御知識を記憶している記憶手段と、
    固定プログラム部及び可変プログラム部を有する探索ベ
    ースプログラムを記憶している記憶手段と、前記複数の
    推論制御知識から選択された前記推論制御知識であつて
    対象とする問題に関係する前記推論制御知識に基づいて
    、前記探索可変プログラム部を前記問題に対するプログ
    ラム部にし、このプログラム部と前記固定プログラム部
    により前記問題に関する推論プログラムを作成する手段
    とを備えたことを特徴とする知識処理システム構築ツー
    ル。 11、複数の所定の推論制御知識を記憶している記憶手
    段と、固定プログラム部、及び固定型プログラム要素及
    び可変型プログラム要素を含む可変プログラム部を有す
    る探索ベースプログラムを記憶している記憶手段と、前
    記複数の推論制御知識から選択された前記推論制御知識
    であつて対象とする問題に関係する前記推論制御知識に
    基づいて、前記可変型プログラム要素を前記問題に対す
    るプログラム要素にし、このプログラム要素及び前記固
    定プログラム要素を含むプログラム部と前記固定プログ
    ラム部とにより前記問題に関する推論プログラムを作成
    する手段とを備えたことを特徴とする知識処理システム
    構築ツール。 12、入力手段と、複数の所定の推論制御知識を記憶し
    ている記憶手段と、前記複数の推論制御知識のうち、選
    択された、対象とする問題に関係する前記推論制御知識
    に基づいて、前記問題に関する推論プログラムを作成す
    る手段と、前記選択された推論制御知識に応じて前記入
    力手段により入力された、前記推論プログラムを実行す
    るときに必要な知識に基づいて、知識ベースを作成する
    手段とを備えたことを特徴とする知識処理システム構築
    ツール。 13、入力手段と、表示装置と、複数の推論制御知識を
    記憶している記憶手段と、前記複数の推論制御知識のう
    ち、選択された、対象とする問題に関係する前記推論制
    御知識に基づいて作成される第1知識ベースと、前記第
    1知識ベースに含まれた知識に基づいて、前記問題に関
    する推論プログラムを作成する手段と、前記第1知識ベ
    ースに含まれた知識に基づいて、前記推論プログラムを
    実行するときに必要な知識の入力ガイドを前記表示装置
    に表示させる手段と、前記入力手段により入力された、
    前記推論プログラムを実行するときに必要な知識に基づ
    いて、第2知識ベースを作成する手段とを備えたことを
    特徴とする知識処理システム構築ツール。 14、前記知識ベース作成手段は、前記問題に関する初
    期ノードの知識、中間ノードの知識及び目標ノードの知
    識を記憶する各エリアを有する前記第2知識ベースを作
    成する手段である請求項13の知識処理システム構築ツ
    ール。 15、前記知識ベース作成手段は、前記問題に関する初
    期ノードの知識、中間ノードの知識、目標ノードの知識
    、親子関係の知識、成立条件の知識及び状態の知識を記
    憶する各エリアを有する前記第2知識ベースを作成する
    手段である請求項13の知識処理システム構築ツール。 16、入力手段と、表示手段と、複数の推論制御知識を
    記憶している第1の記憶手段と、前記第1記憶手段に記
    憶されている複数の推論制御知識を、前記表示手段に表
    示させ、前記表示手段に表示された複数の推論制御知識
    のうち、前記入力手段により入力された、対象とする問
    題に関係する前記推論制御知識に基づいて、前記対象と
    する問題に関する推論プログラムを作成する処理手順を
    記憶した第2の記憶手段と、前記処理手順に基づいて前
    記推論プログラムを作成する処理手段とを備えたことを
    特徴とする知識処理システム構築ツール。 17、入力手段と、表示手段と、複数の推論制御知識を
    記憶している第1の記憶手段と、探索ベースプログラム
    を記憶している第2の記憶手段と、前記第1記憶手段に
    記憶されている複数の推論制御知識を、前記表示手段に
    表示させ、前記表示手段に表示された複数の推論制御知
    識のうち、前記入力手段により入力された、対象とする
    問題に関係する前記推論制御知識に基づいて、前記探索
    ベースプログラムを、前記問題を解く推論プログラムに
    する処理手順を記憶した第3の記憶手段と、前記処理手
    順に基づいて前記推論プログラムを作成する処理手段と
    を備えたことを特徴とする知識処理システム構築ツール
    。 18、複数の推論制御知識を記憶している第1の記憶エ
    リアと、探索ベースプログラムを記憶している第2の記
    憶エリアと、前記第1記憶エリアに記憶されている複数
    の推論制御知識のうち、対象とする問題に関係する前記
    推論制御知識に基づいて、前記問題に関する推論プログ
    ラムを作成する処理手順を記憶している第3記憶エリア
    を有することを特徴とする記憶媒体。 19、複数の推論制御知識を記憶している第1の記憶エ
    リアと、探索ベースプログラムを記憶している第2の記
    憶エリアと、前記第1記憶エリアに記憶されている複数
    の推論制御知識のうち、対象とする問題に関係する前記
    推論制御知識に基づいて、前記問題に関する推論プログ
    ラムを作成し、及び入力された、前記推論プログラムを
    実行するときに必要な知識に基づいて、知識ベースを作
    成する処理手順を記憶している第3記憶エリアを有する
    ことを特徴とする記憶媒体。 20、記憶手段に記憶されている、解決すべき問題に固
    有の複数の推論制御知識及び前記問題の対象領域に固有
    の複数の推論制御知識を表示手段に表示させ、表示され
    た前記推論制御知識のうち、ユーザが選択した、前記問
    題に関係する前記推論制御知識を入力し、探索木の構成
    に関する情報を用いて探索を制御する探索制御関数であ
    つて、前記推論制御知識に対応させて記憶されている複
    数の前記探索制御関数から、前記選択された推論制御知
    識に基づいて該当する前記探索制御関数を選択し、前記
    選択された探索制御関数を、探索プログラムのスケルト
    ンに含まれる探索を実行する要素に対するスケルトンに
    付加することにより、前記探索実行要素のプログラムを
    作成する知識処理システムの構築方法。 21、記憶手段に記憶されている、解決すべき問題に固
    有の複数の第1の推論制御知識及び前記問題の対象領域
    に固有の複数の第2推論制御知識を表示手段に表示させ
    、表示されたこれらの推論制御知識のうち、ユーザが選
    択した、前記問題に関する前記第1及び第2推論知識を
    入力し、探索木の構成に関する情報を用いて探索を制御
    する探索制御関数であつて前記第1推論制御知識に対応
    させて記憶されている複数の前記探索制御関数から、前
    記選択された第1推論制御知識に基づいて該当する前記
    探索制御関数を選択し、前記選択された探索制御関数を
    、探索プログラムのスケルトンに含まれる探索を実行す
    る要素に対するスケルトンに付加することにより、前記
    探索実行要素のプログラムを作成し、前記第1及び第2
    推論制御知識の少なくともいずれかと対応させて記憶さ
    れている前記探索木の構成に関する情報から、前記選択
    された第1及び第2推論制御知識の少なくともいずれか
    に基づいて該当するその情報を選択し、前記選択された
    情報を前記探索制御関数のスケルトンに付加することに
    より前記探索制御関数のプログラムを作成する知識処理
    システムの構築方法。 22、解決すべき問題に固有の複数の推論制御知識及び
    前記問題の対象領域に固有の複数の推論制御知識を記憶
    している記憶手段、探索木の構成に関する情報を用いて
    探索を制御する探索制御関数であつて前記推論制御知識
    に対応させて複数の前記探索制御関数を記憶している記
    憶手段と、探索を実行する要素を含む探索プログラムの
    スケルトン及び前記探索実行要素のスケルトンを記憶し
    ている記憶手段と、前記推論制御知識を表示する表示手
    段と、前記表示手段に表示された前記複数の推論制御手
    段のうち選択されて入力された前記推論制御知識に基づ
    いて、該当する前記探索制御関数を選択し、前記選択さ
    れた探索制御関数を、前記探索プログラムのスケルトン
    に含まれる前記探索実行要素のスケルトンに付加するこ
    とにより、前記探索実行要素のプログラムを作成する手
    段とを備えた知識処理構築ツール。 23、解決すべき問題に固有の複数の第1推論制御知識
    及び前記問題の対象領域に固有の複数の第2推論制御知
    識を記憶している記憶手段、探索木の構成に関する情報
    を用いて探索を制御する探索制御関数であつて前記第1
    推論制御知識に対応させて複数の前記探索制御関数を記
    憶している記憶手段と、前記第1及び第2推論制御知識
    の少なくともいずれかと対応させて前記探索木の構成に
    関する情報を記憶している記憶手段と、探索を実行する
    要素を含む探索プログラムのスケルトン及び前記探索実
    行要素のスケルトンを記憶している記憶手段と、前記第
    1及び第2推論制御知識を表示する表示手段と、前記表
    示手段に表示された前記複数の第1及び第2推論制御知
    識であつて選択されて入力された前記第1及び第2推論
    制御知識のうち前記選択された第1推論制御知識に基づ
    いて、該当する前記探索制御関数を選択し、前記選択さ
    れた探索制御関数を、前記探索プログラムのスケルトン
    に含まれる前記探索実行要素のスケルトンに付加するこ
    とにより、前記探索実行要素のプログラムを作成し、前
    記選択された第1及び第2推論制御知識の少なくともい
    ずれかに基づいて該当する前記探索木の構成に関する情
    報を選択し、前記選択された情報を前記探索制御関数の
    スケルトンに付加することにより前記探索制御関数のプ
    ログラムを作成する手段とを備えた知識処理システム構
    築ツール。
JP2266233A 1989-10-09 1990-10-05 知識処理システム構築ツール及び推論プログラムの生成方法 Expired - Lifetime JP2728559B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP26201289 1989-10-09
JP1-262012 1989-10-09

Publications (2)

Publication Number Publication Date
JPH03206526A true JPH03206526A (ja) 1991-09-09
JP2728559B2 JP2728559B2 (ja) 1998-03-18

Family

ID=17369795

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2266233A Expired - Lifetime JP2728559B2 (ja) 1989-10-09 1990-10-05 知識処理システム構築ツール及び推論プログラムの生成方法

Country Status (4)

Country Link
US (1) US5347614A (ja)
EP (1) EP0422580B1 (ja)
JP (1) JP2728559B2 (ja)
DE (1) DE69031998T2 (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07503352A (ja) * 1992-10-09 1995-04-06 ランディス アンド ジル ビルディング コントロール アーベー 電流発生器の制御装置及び制御方法
JPH07129406A (ja) * 1993-09-13 1995-05-19 Toshiba Corp モデルベース診断システム構築支援装置
WO2008114863A1 (ja) * 2007-03-22 2008-09-25 Nec Corporation 診断装置
JP2009176205A (ja) * 2008-01-28 2009-08-06 Gyoseiin Genshino Iinkai Kakuno Kenkyusho 桁探索木の初期危険因子解析装置

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2684779B1 (fr) * 1991-12-06 1996-12-13 Bull Sa Procede et outil de modelisation conceptuelle d'expertise sur un systeme informatique.
EP0587093B1 (en) * 1992-09-08 1999-11-24 Hitachi, Ltd. Information processing apparatus using inference and adaptive learning
US5960419A (en) * 1992-10-05 1999-09-28 Expert Systems Publishing Co. Authoring tool for computer implemented decision management system
JPH06332680A (ja) * 1993-05-21 1994-12-02 Tadao Shogetsu プログラム自動生成装置
US5574828A (en) * 1994-04-28 1996-11-12 Tmrc Expert system for generating guideline-based information tools
JPH08234975A (ja) * 1995-02-28 1996-09-13 Fujitsu Ltd プログラム生成装置および方法
US5799293A (en) * 1996-11-04 1998-08-25 Ford Global Technologies, Inc. Method for optimizing the design of a product using knowledge-based engineering techniques
US6012051A (en) * 1997-02-06 2000-01-04 America Online, Inc. Consumer profiling system with analytic decision processor
JPH10222371A (ja) * 1997-02-06 1998-08-21 Seitaro Matsushita 知識ベースの作成装置及び実行装置並びにこれらを用いた知識ベースシステム
US6598036B1 (en) 2000-04-04 2003-07-22 Ford Global Technologies, Llc Method for serving engineering rules on a network through servlet and applet
US6535863B1 (en) 2000-04-06 2003-03-18 Ford Motor Company Method for utilizing a knowledge-based system
US20070055597A1 (en) * 2005-09-08 2007-03-08 Visa U.S.A. Method and system for manipulating purchase information
US7509298B2 (en) * 2006-03-31 2009-03-24 International Business Machines Corporation System and method for a logical-model based application understanding and transformation
US20080097811A1 (en) * 2006-10-24 2008-04-24 Fritz Kramer Systems and methods for reducing poverty
US10333696B2 (en) 2015-01-12 2019-06-25 X-Prime, Inc. Systems and methods for implementing an efficient, scalable homomorphic transformation of encrypted data with minimal data expansion and improved processing efficiency

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01220037A (ja) * 1988-02-29 1989-09-01 Fujitsu Ltd 診断型エキスパートシステムの知識獲得方式

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4796179A (en) * 1986-08-20 1989-01-03 Integrated Systems, Inc. Multirate real time control system code generator
US4943932A (en) * 1986-11-25 1990-07-24 Cimflex Teknowledge Corporation Architecture for composing computational modules uniformly across diverse developmental frameworks
JPS63257827A (ja) * 1987-04-15 1988-10-25 Matsushita Electric Ind Co Ltd 問題解決装置
US4965742A (en) * 1987-09-30 1990-10-23 E. I. Du Pont De Nemours And Company Process control system with on-line reconfigurable modules
JP2585311B2 (ja) * 1987-11-06 1997-02-26 株式会社日立製作所 プログラム作成方法
US5133045A (en) * 1990-07-13 1992-07-21 Integrated Systems, Inc. Method for operating a real-time expert system in a graphical programming environment

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01220037A (ja) * 1988-02-29 1989-09-01 Fujitsu Ltd 診断型エキスパートシステムの知識獲得方式

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07503352A (ja) * 1992-10-09 1995-04-06 ランディス アンド ジル ビルディング コントロール アーベー 電流発生器の制御装置及び制御方法
JPH07129406A (ja) * 1993-09-13 1995-05-19 Toshiba Corp モデルベース診断システム構築支援装置
WO2008114863A1 (ja) * 2007-03-22 2008-09-25 Nec Corporation 診断装置
CN102354204A (zh) * 2007-03-22 2012-02-15 日本电气株式会社 诊断装置
US8370108B2 (en) 2007-03-22 2013-02-05 Nec Corporation Diagnostic device
JP5299267B2 (ja) * 2007-03-22 2013-09-25 日本電気株式会社 診断装置
JP2009176205A (ja) * 2008-01-28 2009-08-06 Gyoseiin Genshino Iinkai Kakuno Kenkyusho 桁探索木の初期危険因子解析装置

Also Published As

Publication number Publication date
DE69031998D1 (de) 1998-03-05
EP0422580B1 (en) 1998-01-28
JP2728559B2 (ja) 1998-03-18
US5347614A (en) 1994-09-13
EP0422580A3 (en) 1993-04-21
DE69031998T2 (de) 1998-06-18
EP0422580A2 (en) 1991-04-17

Similar Documents

Publication Publication Date Title
JPH03206526A (ja) 知識処理システム構築ツール及び推論プログラムの生成方法
US6009420A (en) Computer-implemented decision management system with dynamically generated questions and answer choices
US5835900A (en) Computer-implemented decision management system with dynamically generated questions and answer choices
Stephanopoulos Artificial intelligence in process engineering—current state and future trends
US6868422B2 (en) Knowledge acquisition in expert systems
Zhu et al. A simplified method of evaluating PERT/CPM network parameters
Terpstra et al. KA process support through generalised directive models
Arzén Sequential function charts for knowledge-based, real-time applications
Boixel et al. Displaying Justifications for Collective Decisions.
Taylor Expert-aided environments for CAE of control systems
Saxena Decision support engineering: a DSS development methodology
Cañadas et al. Defining the semantics of rule-based web applications through model-driven development
Ligȩza Expert systems approach to decision support
JPH07141421A (ja) 汎用のプロセス作成ブロックを使用したコンピュータ利用のプロセス制御システム
Elsayed Knowledge Base Tool for Enhancing Expert Systems Dialogue
Bradshaw et al. How to do with grids what people say you can’t
Machado et al. Investigating the model building process with HOMER
Hedberg et al. Toward a diagnostic and prognostic method for knowledge-driven decision-making in smart manufacturing technologies
Sharma et al. Shedding of unproductive resources in family firms: Role of family structure and community culture
CN115545213B (zh) 一种基于图形化行为树和强化学习的建模方法及装置
Pešić et al. Prototype implementation of segment assembling software
Talluru et al. Knowledge representation for investment strategy selection
Túnez et al. An expertise model for therapy planning using abductive reasoning
Thompson et al. An expert system for the preliminary design of timber roofs
Breitmayer et al. Data-Driven Customization of Object Lifecycle Processes