明 細 書
ベイジアンネットワークを用いた事象分析対処システム
技術分野
[0001] 本発明は、ある事象 (症状)が発生した場合に、ベイジアンネットワークによる処理を 用いて、その事象が発生する原因を推測し、最適と思われる対処方法を出力する( 対処処理を行う)、ベイジアンネットワークを用いた事象分析対処システムに関する。 背景技術
[0002] 機械、装置、システム等に発生する様々な事象に対する対処方法を出力し、対処 するために、ベイジアンネットワークと呼ばれる分析方法を用いることがある。ベイジァ ンネットワークとは、確率変数をノードで表し、因果関係や相関関係のような依存関係 を示す変数の間にリンクを張ったグラフ構造による確率モデルであって、このリンクが 因果関係の方向に有向性を有し、そのリンクを迪つたパスが循環しない非循環有向 グラフで表されるモデルである(ベイジアンネットワークは下記の非特許文献 1に詳し い)。
[0003] そして下記特許文献 1、特許文献 2にはベイジアンネットワークを自動診断システム に用いた発明が開示されてレ、る。
[0004] 特許文献 1 :特開 2001— 75808号公報
特許文献 2 :特開 2002 - 318691号公報
[0005] 非特許文献 1:本村陽一、 "確率ネットワークと知識情報処理への応用"、 [online],平 成 13年 1月 24日、インターネットく URL :
http:// staif.aist.go.Jp/y.motomura/DS/DS.html/ >
発明の開示
発明が解決しょうとする課題
[0006] 事象に対する対処方法の分析にベイジアンネットワークを用いることによって、曖昧 な事象や診断結果であってもその事象の原因の予測を行うことが出来る。しかしこの 予測は、確率分布によって示されるので、その予測された原因から、最適な対処方 法を選択するのは一般的には困難である。又、複数の対処方法がコンフリクトする場
合もある力 ベイジアンネットワークではこのような判断を行うことが困難である。
課題を解決するための手段
[0007] そこで本発明者は、事象に対する対処方法の分析にベイジアンネットワークを用い ることで、曖昧な事象や診断結果でもその処理を実行できることに加え、その結果に 対する有効性の評価を行うことで、最適と思われる対処方法の結果を出力することを 可能とした。
[0008] 請求項 1の発明は、
ベイジアンネットワークを用いた事象分析対処システムであって、ある事象が発生し ている状況で、ある対処を行った場合の、原因の確率分布を計算するための確率テ 一ブルと、前記事象分析対処システム外から事象情報を受信する事象情報入力部と 、前記事象に対する対処の組合せを作成し、それを対処案データとする対処案作成 部と、前記事象情報と前記対処案データとを受信し、前記確率テーブルから、原因 の確率分布データを出力するベイジアンネットワーク演算部と、前記出力した原因の 確率分布データと予め定められた評価関数とに基づいて、その対処に対する評価値 を算出する評価関数処理部と、前記算出した対処に対する評価値から、有効性の高 い対処案データを対処案リストとして出力する対処案評価部と、力 なるベイジアンネ ットワークを用いた事象分析対処システムである。
[0009] 本発明のように、単にベイジアンネットワークで処理を行うだけでなぐその有効性を 比較することによって、序列化した対処案を出力することが出来る。それにより、単に 従来のように確率分布で出力されるのではなぐその事象に適した対処を有効に行う ことが出来る。
[0010] 請求項 2の発明は、
前記事象分析対処システムは、前記対処案作成部に於いて、何も対処をしない場合 の対処案データを最初に作成し、その対処をしない場合の対処案データと前記事象 情報とに基づいて、前記確率テーブルから原因の確率分布データを、前記べイジァ ンネットワーク演算部で出力し、前記評価関数処理部は、前記出力した原因の確率 分布データと前記予め定められた関数とに基づいて、前記何も対処をしない場合の 評価値を算出し、それを基準評価値として対処案評価部に記憶し、前記対処案評価
部は、前記基準評価値と各対処に対する評価値とを比較し、予め設定された評価条 件を満たしているものを有効性が高いとして、前記対処案リストとして出力する、べィ ジアンネットワークを用いた事象分析対処システムである。
[0011] 請求項 3の発明は、
前記評価関数処理部は、前記原因の確率分布データを前記評価関数に基づいて、 各原因に対する評価値を算出し、それらを合計することで、前記対処に対する評価 値を出力する、ベイジアンネットワークを用いた事象分析対処システムである。
[0012] これらの発明のように、有効性を比較すると良い。
[0013] 請求項 4の発明は、
前記事象分析対処システムは、各対処に対するコンフリクト関係を示すコンフリクトテ 一ブルを更に有しており、前記対処案評価部は、前記対処案データの有効性を比較 する際、或いは前記対処案リストを出力する際に、前記コンフリクトテーブルを参照し 、コンフリクト関係にある対処を含む対処案については処理を行わなレ、、ベイジアン ネットワークを用いた事象分析対処システムである。
[0014] 請求項 5の発明は、
前記事象分析対処システムは、各対処に対するコンフリクト関係を示すコンフリクトテ 一ブルを更に有しており、前記対処案作成部は、前記対処案データを作成する際に 、前記コンフリクトテーブルを参照し、コンフリクト関係にある対処を含む対処案につ いては、対処案データを作成しなレ、、ベイジアンネットワークを用いた事象分析対処 システムである。
[0015] このように、コンフリクト関係にある対処案の出力を行わないことによって、実際には 対処してはならない方法の出力を防ぐことが可能となる。
[0016] 請求項 6の発明は、
ベイジアンネットワークを用いた事象分析対処システムであって、ある事象が発生し ている状況で、ある対処と診断を行った場合の、原因の確率分布を計算するための 確率テーブルと、前記事象分析対処システム外から事象情報を受信する事象情報 入力部と、前記事象に対する対処と診断の組合せを作成し、それを診断対処案デー タとする診断付対処案作成部と、前記事象情報と前記診断対処案データとを受信し
、前記確率テーブルから、原因の確率分布データを出力するベイジアンネットワーク 演算部と、前記出力した原因の確率分布データと予め定められた評価関数とに基づ いて、診断を行わない場合の対処に対する評価値と診断を行う場合の対処に対する 評価値とを、分けて算出する診断付評価関数処理部と、前記算出した対処に対する 評価値から、有効性の高い診断対処案データを診断対処案リストとして出力する対 処案評価部と、力 なるベイジアンネットワークを用いた事象分析対処システムである
[0017] 請求項 7の発明は、
前記診断付評価関数処理部は、診断を行う場合の評価値の算出の際に、診断結果 に対しての各評価値を算出後、各結果に対する有効性の高い評価値を算出し、それ をその結果が発生する確率により加重平均することで、診断を行う場合の対処に対 する評価値とする、ベイジアンネットワークを用いた事象分析対処システムである。
[0018] 請求項 6及び請求項 7に記載の発明のように、ある対処に対して、人間やコンビュ ータ等による診断を付加することで、より優れた対処案リストを出力することが出来る。 又、本発明に於ける診断は、診断の結果をシステムに入力して指示を仰がなければ ならない従来のシステムとは異なり、診断結果毎の最適な対処を始めから出力可能 であるという点で、従来技術にはない顕著な特徴を持つ。更に、これらの発明によつ て、所謂デシジョンツリーの自動生成も可能となる。
発明の効果
[0019] 本発明によって、最適と思われる対処方法までを出力可能とすることで、ユーザは 出力された結果からどのような対処を行ったらよいのカ 判断可能となる。又、その出 力結果を用いて自動的に対処を行うことも可能となる。更に、個々の対処がどの原因 を抑制している力、も知ることが出来る。
図面の簡単な説明
[0020] [図 1]本発明のシステム構成を示すシステム構成図の一例である。
[図 2]本発明のプロセスの流れの一例を示すフローチャート図である。
[図 3]本発明のプロセスの流れの一例を示すフローチャート図である。
[図 4]確率テーブルの概念図の一例である。
[図 5]本発明の他のシステム構成を示すシステム構成図の一例である。
[図 6]本発明の他のプロセスの流れの一例を示すフローチャート図である。
[図 7]コストを加味した場合の確率テーブルの概念図の一例である。
[図 8]診断を加味した場合の確率テーブルの概念図の一例である。
[図 9]複数の診断を行う場合をツリー構造で示した概念図である。
符号の説明
[0021] 1:事象分析対処システム
2 :事象情報入力部
3 :対処案作成部
4:ベイジアンネットワーク演算部
5 :評価関数処理部
6 :対処案評価部
7 :確率テーブル
8 :診断付評価関数処理部
9 :診断付対処案作成部
発明を実施するための最良の形態
[0022] 本発明のベイジアンネットワークを用いた事象分析対処システム 1 (以下、事象分析 対処システム 1 )のシステム構成の一例を図 1に示す。
[0023] 事象分析対処システム 1は、事象情報入力部 2、対処案作成部 3、ベイジアンネット ワーク演算部 4、評価関数処理部 5、対処案評価部 6、確率テーブル 7を有している。
[0024] 事象情報入力部 2は、事象分析対処システム 1外から事象情報を受信し、ベイジァ ンネットワーク演算部 4 (後述)にそれを送信する手段である。事象情報入力部 2は、 ベイジアンネットワーク演算部 4が確率分布で演算を行うことから、受信した事象情報 を確率分布に変換した後に、それを送信する。事象情報とは、測定器やセンサー等 から取得したデータや、人間が感知したデータ等、様々なデータを扱うことが可能で ある。
[0025] 対処案作成部 3は、事象に対する対処候補の組合せを作成してそれを対処案デー タとして、ベイジアンネットワーク演算部 4、対処案評価部 6に送信する手段である。
対処候補が少なレ、場合には全ての組合せを対処案データとして送信しても良レ、し、 対処候補が多くて処理時間が必要になりそうな場合には、全ての組合せでなくても良 レ、。
[0026] 例えばまず一つを有効にした対処案データを作成し、次に有効性が高レ、対処候補 をベースにして、他の対処候補を組み合わせた対処案データを作成する。そして更 に、この中で有効性が高い対処候補をベースにして他の対処候補を組合せる、こと を反復することで、有効性の高い対処案を効率的に、且つ少ない処理ステップで作 成することが可能となる。
[0027] ベイジアンネットワーク演算部 4は、事象情報と対処案データとを受信し、それを予 め設定された確率テーブル 7 (後述)に入力することで、原因の確率分布データを出 力する手段である。
[0028] 原因の確率分布データには、事象の発生原因を割り当てる。事象の発生原因は、 事象情報と確率テーブル 7とから算出されるものに加えて、対処案 (対処案データ)に よって状態が改善したり、悪化したりという予測があっても良い。
[0029] 評価関数処理部 5は、ベイジアンネットワーク演算部 4で出力した、原因の確率分 布データを予め定められた評価関数に基づいて、その対処案に対する評価値を出 力し、対処案評価部 6に対処案データとその対処案に対する評価値とを対応させて 記憶させる手段である。例えば原因が損失を示すものであれば、原因の確率に損失 見積もりを乗じることを評価関数とすることで、損失に対する期待値を、その対処案に 対する評価値として出力することが出来る。評価関数としては、評価値を算出するた めの任意の関数を設定することが可能である。
[0030] 対処案評価部 6は、対処案データとその対処案に対する評価値とを対応して記憶 し、有効性の高い対処案データを対処案リストデータとし、それを事象分析対処シス テム 1外に処理結果として出力する手段である。
[0031] 有効性の比較には、対処を行わない場合の評価値 (即ち現状に於ける評価値)を 基準評価値として出力し、更に各対処案データに於ける評価値と基準評価値とを比 較し、予め設定された条件 (評価条件)を満たしているものを有効性が高いとすると良 レ、。評価条件としては評価値が所定値より大きい/小さい、評価値が最も大きい/小
さい、評価値から上位 X個の評価値、評価値から下位 X個の評価値等、様々な評価 条件が適用可能である。
[0032] 確率テーブル 7は、ある事象が発生している状況で、ある対処を行った場合の、原 因の確率分布を計算する為の確率テーブルであって、事象の有無(「0」又は「1」で 示される)、対処の有無(「0」又は「1」で示される)、原因の確率分布 (確率値で示さ れる)とからなる。ここで原因とは、事象に対して予想される状態をいう。図 4に確率テ 一ブル 7の一例を示す。この場合は、 2つの事象、 2つの対処方法、 3つの原因が想 定されている。例えば事象 Xとして「異音が発生している」、事象 Yとして「油温が高い 」、対処 Xとして「オイルを交換する」、対処 yとして「ボルトを締め直す」、原因 Aとして「 オイルの汚濁」、原因 Bとして「オイルの減少」、原因 Cとして「ボルトの緩み」がー例と してある。そして、事象 X、事象 Yが発生した場合の原因が、原因 A、原因 B、原因 C である確率がテーブルに記録されてレ、る。
[0033] 尚、ベイジアンネットワークであるので、入力される事象や対処は何水準であっても 良いし、確率値であっても良いし、又、事象が曖昧であった場合には「0」「1」ではなく
、確率値で入力しても良レ、。例えば事象が「ランプが点灯している」、「ランプが消灯し ている」、「ランプが点滅している」のような 3水準であっても良いし、対処力 S「ボタンを 押さない」、「ボタンを 1秒押す」、「ボタンを 3秒押す」のような 3水準であっても良い。 実施例 1
[0034] 次に本発明を用いた事象分析対処システム 1のプロセスの流れの一例を図 2及び 図 3のフローチャート図、図 1のシステム構成図を用いて詳細に説明する。
[0035] 事象分析対処システム 1は、事象分析対処システム 1外の測定器やセンサー等から
、或いは人間が入力すること等によって、事象情報を事象情報入力部 2で受信する(
S100)。上述の例に則って説明すると、事象情報として「異音が聞こえない」、「油温 が高い」の 2事象を受信する。
[0036] 事象情報入力部 2は、ベイジアンネットワーク演算部 4でベイジアンネットワークによ る演算の際に、確率分布で演算を行うことから、受信した事象情報を確率分布に変 換し、それをベイジアンネットワーク演算部 4に送信する。上述の例の場合、「事象 X =0、事象 Y= l」を送信することとなる。
[0037] 次に、対処案作成部 3は、基準評価値を作成する為に、対処を行わない場合(つま り現状)の対処案データを作成し、それをベイジアンネットワーク演算部 4、対処案評 価部 6に送信する(S 110)。図 4の例では、対処を行わない場合の対処案データとし ては、「対処 x = 0」、「対処 y=0」となるので、これを対処案データとしてべイジアンネ ットワーク演算部 4、対処案評価部 6に送信することとなる。
[0038] 基準評価値の作成の場合の対処案データとしては、基準評価値が各対処案に於 ける評価値の有効性との比較の際に用レ、るものであるから、対処を行わない場合の 対処案データを基準評価値の作成の場合に用いることが好適であるが、基準評価値 として、特定の対処案データを用いたい場合には、その場合の対処案データとしても 良い。
[0039] 次に対処案作成部 3で作成した対処案データ(対処を行わなレ、場合の対処案デー タ)と、事象情報入力部 2から受信した事象情報とを、ベイジアンネットワーク演算部 4 が確率テーブル 7に入力し、当該事象に対する原因の確率分布データを出力する( S200)。図 4の例の場合、「事象 X=0、事象 Y= l、対処 χ=0、対処 y=0」を入力す ると、原因の確率分布データは、「原因 A=0. 7、原因 B = 0. 5、原因 C = 0. 1」を出 力することとなる。
[0040] 通常は、原因の確率分布データには、事象の発生原因を割り当てる。事象の発生 原因は、事象情報と確率テーブル 7とから算出されるものに加えて、対処案データに よって状態が改善したり、悪化したりという予測があっても良い。
[0041] 次に原因の確率分布データに基づいて、評価関数処理部 5が予め定められた評価 関数に基づいて、当該対処案データに於ける各原因に対する評価値を算出し、それ を全ての原因の場合に対して行う(S210、 S220) o上述の場合、原因 A、原因 B、原 因 Cの各々に対して評価関数に基づいて評価値を算出し、その合計を行う (S230) 。この合計値 (原因 Aの評価値 +原因 Bの評価値 +原因 Cの評価値)を、当該対処に 対する評価値とする。
[0042] 対処を行わなレ、場合の対処案データの評価値の合計を基準評価値として、評価関 数処理部 5は、対処案評価部 6に対処案データと対応させて記憶する(S130)。つま り、当該対処に対する評価値と対処案データ「対処 x = 0、対処 y = 0」とを対応させて
記憶する。
[0043] 次に、まだ処理を行っていない対処を対処案データとして対処案作成部 3が作成し 、それをベイジアンネットワーク演算部 4、対処案評価部 6に送信する(S 140、 S150 )。例えば図 4の例ならば、「対処 x = 0、対処 y= l」、「対処 x= l、対処 y = 0」、「対処 x= l、対処 y= l」が対処案データとなる。尚、対処が少ない場合には全ての組合せ を対処案データとして送信しても良いし、対処が多くて処理時間が必要になりそうな 場合には、全ての組合せでなくても良い。
[0044] このように作成した対処案データと事象情報入力部 2から受信した事象情報とに基 づいて、ベイジアンネットワーク演算部 4がそれらを確率テーブル 7に入力し、当該事 象に対する原因の確率分布データを出力する(S200)。
[0045] そして基準評価値を算出したときと同様に、原因の確率分布データに基づいて、評 価関数処理部 5が予め定められた評価関数に基づいて、当該対処案データに於け る各原因の場合の評価値を算出し、それを全ての原因の場合に対して行い(S210、
S220)、それらの評価値の合計を、当該対処に対する評価値として算出する(S230
) 0
[0046] このようにして算出された、対処に対する評価値を、評価関数処理部 5は、対処案 評価部 6に対処案データと対応させて記憶する(S 170)。
[0047] S150乃至 S170を全て又は所定の対処案データに対して処理を実行後、前記記 憶した対処案データとその対処に対する評価値とに基づレ、て、有効性の比較を行レ、 (S180)、有効性の高い対処案データを対処案リストデータとして、事象分析対処シ ステム 1の外部に処理結果として出力する(S 190)。
[0048] 有効性の比較には、各対処に於ける評価値と基準評価値とを比較し (好適には基 準評価値力 対処に対する評価値を減算する)、それを有効性として、予め設定され た条件 (評価条件)を満たしているものを有効性が高いとすると良い。評価条件として は有効性が所定値より大きい/小さい、有効性が最も大きい/小さい、有効性が高 レ、ものの上位 X個等、様々な評価条件が適用可能である。
実施例 2
[0049] 次に、事象分析対処システム 1の処理について、具体的事例を用いて説明する。こ
の事例では、確率テーブル 7を図 4とし、事象 Xについて「異音が聞こえる」、事象 Yに ついて「油温が高い」、対処 Xについて「オイルを交換する」、対処 yについて「ボルト を締め直す」、原因 Aについて「オイルの汚濁」、原因 Bについて「オイルの減少」、原 因 Cについて「ボルトの緩み」である場合とする。又、評価値を「損失金額の期待値」と し、評価関数としては、
評価値 A= 100000 X (原因 Aの確率)
評価値 B = 100000 X (原因 Bの確率)
評価値 C= 100000 X (原因 Cの確率)
であるとする(尚、この評価関数では、原因 A、原因 B、原因 Cであった場合に各々 10 0000円(従って各定数が 100000である力 これは各原因によって異なっていても 良い)の損失が発生することを意味している)。そして対処案評価部 6で用いる評価条 件としては、「損失金額を少なくする対処」(即ち、基準評価値に対して、対処に対す る評価値がどれだけ低くなつたかが有効性となる)を取るものとする。
[0050] 事象情報入力部 2に、事象分析対処システム 1外から、事象情報として「異音が聞 こえない」、「油温が高レ、」の 2つの事象情報が入力され、それを事象情報入力部 2で 受信したとする(S100)。
[0051] 事象情報入力部 2は、それらを確率分布に変換するので、「事象 X=0、事象 Y= l 」に変換し、変換後、ベイジアンネットワーク演算部 4に送信する。
[0052] 次に対処案作成部 3は、基準評価値を作成するために、対処を行わない場合の対 処案データを作成する(S110)。即ち「対処 χ=0、対処 y=0」が基準評価値の際の 対処案データとなる。この対処案データをベイジアンネットワーク演算部 4、対処案評 価部 6に送信する。
[0053] S110に於いて対処案作成部 3で作成した対処案データ「対処 x = 0、対処 y=0」と 、事象情報入力部 2から受信した事象情報「事象 X=0、事象 Y= l」とを、ベイジアン ネットワーク演算部 4が確率テーブル 7に入力し、当該事象に対する原因の確率分布 データを出力する(S200)。この場合では、図 4に示した確率テーブル 7を参照する と、上記条件を満たすのは、「原因 A=0. 7、原因 B = 0. 5、原因 C = 0. 1」なので、 それを出力することとなる。
[0054] 次に原因の確率分布データに基づいて、評価関数処理部 5が予め定められた評価 関数に基づいて、当該対処案データに於ける各原因の場合の評価値を算出し、そ れを全ての原因の場合に対して行う(S210、 S220)。
[0055] 評価値 Aは、上述した評価関数から、
評価値 A= 100000 X (原因 Aの確率) = 100000 X 0. 7 = 70000
となり、同様に評価値 B、評価値 Cは、
評価値 B = 100000 X (原因 Bの確率) = 100000 X 0. 5 = 50000
評価値 C= 100000 X (原因 Cの確率) = 100000 X 0. 1 = 10000
となる。
[0056] そして各評価値を合計し (S230)、
対処に対する評価値 =評価値 A +評価値 B +評価値 C = 70000 + 50000+ 100 00 = 130000
を当該対処に対する評価値とする。
[0057] 評価関数処理部 5は、 S230で算出した、当該対処に対する評価値の合計(1300 000)を基準評価値として、対処を行わない場合の対処案データ(対処 x=0、対処 y =0)と対応づけて、対処案評価部 6に記憶する(S130)。尚、ここで算出した基準評 価値は、現在の事象から算出される損失金額の期待値となる。
[0058] 次に、対処を行った場合の評価値を、対処の組合せ毎に作成する。本実施例では 、対処案が少ないので全ての場合について評価値を算出する力 上述したように対 処案が多ぐその処理に時間を費やすと想定されている場合や対処案が一定数以 上等の場合には、全てを算出せず、その一部の算出にとどめても良いことは上述した とおりである。
[0059] 対処案作成部 3は、第 1の対処案データとして「オイルを交換しない」、「ボルトを締 め直す」の対処の場合、即ち「対処 x = 0、対処 y= l」を対処案データとしてべイジァ ンネットワーク演算部 4、対処案評価部 6に送信する。
[0060] ベイジアンネットワーク演算部 4は、対処案データ「対処 x = 0、対処 y= l」と、事象 情報入力部 2から受信した事象情報「事象 X=0、事象 Y= l」とを確率テーブル 7に 入力し、対応する原因の確率分布データを出力する(S200)。この場合では、図 4に
示した確率テーブル 7を参照すると、上記条件を満たすのは、「原因 Α = 0· 7、原因
Β = 0. 5、原因 C = 0. 0」なので、それを出力することとなる。
[0061] 次に原因の確率分布データに基づいて、評価関数処理部 5が予め定められた評価 関数に基づいて、当該対処案データに於ける各原因に対する評価値を算出し、それ を全ての原因の場合に対して行う(S210、 S220)。
[0062] 評価値 Aは、上述した評価関数から、
評価値 A= 100000 X (原因 Aの確率) = 100000 X 0. 7 = 70000
となり、同様に評価値 B、評価値 Cは、
評価値 B = 100000 X (原因 Bの確率) = 100000 X 0. 5 = 50000
評価値 C= 100000 X (原因 Cの確率) = 100000 X 0. 0 = 0
となる。
[0063] そして各評価値を合計し (S230)、
評価値 =評価値 A+評価値 B +評価値 C = 70000 + 50000 + 0 = 120000 が当該対処「対処 x=0、対処 y= l」に対する評価値となる。
[0064] 評価関数処理部 5は、 S230で算出した、対処に対する評価値(120000)を、対処 案データ(対処 x=0、対処 y= l)と対応づけて、対処案評価部 6に記憶する(S 170)
。尚、ここで算出した評価値は、「オイルを交換しない」、「ボルトを締め直す」の対処 を行った場合で算出される損失金額の期待値となる。
[0065] 次に、対処案作成部 3は、第 2の対処案データとして「オイルを交換する」、「ボルト を締め直さなレ、」の対処の場合、即ち「対処 x= l、対処 y=0」を対処案データとして ベイジアンネットワーク演算部 4、対処案評価部 6に送信する。
[0066] ベイジアンネットワーク演算部 4は、対処案データ「対処 x= l、対処 y = 0」と、事象 情報入力部 2から受信した事象情報「事象 X=0、事象 Y= l」とを確率テーブル 7に 入力し、対応する原因の確率分布データを出力する(S200)。この場合では、図 4に 示した確率テーブル 7を参照すると、上記条件を満たすのは、「原因 A = 0. 0、原因
B = 0. 0、原因 C = 0. 1」なので、それを出力することとなる。
[0067] 次に原因の確率分布データに基づいて、評価関数処理部 5が予め定められた評価 関数に基づいて、当該対処案データに於ける各原因に対する評価値を算出し、それ
を全ての原因の場合に対して行う(S210、 S220)。
[0068] 評価値 Aは、上述した評価関数から、
評価値 A= 100000 X (原因 Aの確率) = 100000 X 0. 0 = 0
となり、同様に評価値 B、評価値 Cは、
評価値 B = 100000 X (原因 Bの確率) = 100000 X 0. 0 = 0
評価値 C= 100000 X (原因 Cの確率) = 100000 X 0. 1 = 10000
となる。
[0069] そして各評価値を合計し (S230)、
対処に対する評価値 =評価値 A +評価値 B +評価値 C = 0 + 0 + 10000 = 1000
0
が当該対処「対処 x= l、対処 y=0」に対する評価値となる。
[0070] 評価関数処理部 5は、 S230で算出した、当該対処に対する評価値(10000)を、 対処案データ(対処 x= l、対処 y=0)と対応づけて、対処案評価部 6に記憶する(S
170)。尚、ここで算出した評価値は、「オイルを交換する」、「ボルトを締め直さない」 の対処を行った場合で算出される損失金額の期待値となる。
[0071] 更に、対処案作成部 3は、第 3の対処案データとして「オイルを交換する」、「ボルト を締め直す」の対処の場合、即ち「対処 x= l、対処 y= l」を対処案データとしてべィ ジアンネットワーク演算部 4、対処案評価部 6に送信する。
[0072] ベイジアンネットワーク演算部 4は、対処案データ「対処 x= l、対処 y= l」と、事象 情報入力部 2から受信した事象情報「事象 X=0、事象 Y= l」とを確率テーブル 7に 入力し、対応する原因の確率分布データを出力する(S200)。この場合では、図 4に 示した確率テーブル 7を参照すると、上記条件を満たすのは、「原因 A=0. 0、原因
B = 0. 0、原因 C = 0. 0」なので、それを出力することとなる。
[0073] 次に原因の確率分布データに基づいて、評価関数処理部 5が予め定められた評価 関数に基づいて、当該対処案データに於ける各原因に対する評価値を算出し、それ を全ての原因の場合に対して行う(S210、 S220)。
[0074] 評価値 Aは、上述した評価関数から、
評価値 A= 100000 X (原因 Aの確率) = 100000 X 0. 0 = 0
となり、同様に評価値 B、評価値 Cは、
評価値 B = 100000 X (原因 Bの確率) = 100000 X 0. 0 = 0
評価値 C= 100000 X (原因 Cの確率) = 100000 X 0. 0 = 0
となる。
[0075] そして各評価値を合計し (S230)、
対処に対する評価値 =評価値 A +評価値 B +評価値 C = 0 + 0 + 0 = 0 が、当該対処「対処 x= l、対処 y= l」に対する評価値となる。
[0076] 評価関数処理部 5は、 S230で算出した、当該対処に対する評価値(0)を、対処案 データ(対処 x= l、対処 y= l)と対応づけて、対処案評価部 6に記憶する(S 170)。 尚、ここで算出した評価値は、「オイルを交換する」、「ボルトを締め直す」の対処を行 つた場合で算出される損失金額の期待値となる。
[0077] このように対処案作成部 3は、全ての場合の対処案データを作成したので(S140)
、対処案評価部 6に於いて、前記記憶した各対処に対する評価値を抽出し、その有 効性を比較する(S 180)。
[0078] 本実施例では、評価条件として、「損失金額を少なくする対処」(即ち、基準評価値 に対して、対処に対する評価値がどれだけ低くなつたかが有効性となる)を取るものと していることから、基準評価値から対処に対する評価値を減算した場合に、それが最 も大きくなるものが有効性が高レ、こととなる。
[0079] 「対処 x=0、対処 y= l」の場合、当該対処に対する評価値の合計値は 120000で あること力 ^ら、
有効性 = 130000— 120000 = 10000
となる。
[0080] 「対処 x= l、対処 y=0」の場合、当該対処に対する評価値の合計値は 10000であ ること力ら、
有効性 = 130000— 10000 = 120000
となる。
[0081] 「対処 x= l、対処 y= l」の場合、当該対処に対する評価値の合計値は 0であること から、
有効性 = 130000-0 = 130000
となる。
[0082] 以上のように各対処に対する有効性を比較すると、その有効性は、「対処 x= l、対 処 y= l」、「対処 χ= 1、対処 y=0」、「対処 χ=0、対処 y= 1」の順番で有効となる。
[0083] 従って、対処案リストとして有効性の高レ、ものから順番にその対処案データ(又は対 処案)を、対処案リストとして対処案評価部 6が出力することとなる。即ち、対処案リスト として、「対処 x= l、対処 y= l」(「オイルを交換する」、「ボルトを締め直す」)、「対処 x= l、対処 y=0」(「オイルを交換する」)、「対処 x=0、対処 y= l」(「ボルトを締め直 す」)が出力される。
[0084] 尚、対処案リストは、上述のように、有効性が高いものから順番に対処案データ(対 処案)を対処案リストとして出力しても良レ、し、最も有効性が高レ、対処案データ(対処 案)を出力リストとして出力しても良いし、予め定められた有効性が高い上位 X個の対 処案データ(対処案)を出力リストとして出力しても良レ、。
[0085] 更に、対処を早く行うかどうかで結果が変わる、例えば応急処置のようなものも、対 処案リストとしても良い。この場合、対処案作成部 3は、確率テーブル 7から、対処案 の組合せのみではなぐその順番の前後関係も考慮して対処案データを作成するこ ととなる。従ってこの場合、確率テーブル 7には、その順番の前後関係も記録されて レ、ることとなる。例えば、対処 Aと対処 Bがあった場合、その順番を考慮した対処案デ ータでは、対処 Aと対処 Bの組合せ(最初の対処を先に実行する)と、対処 Bと対処 A の組合せとは、異なる組合せとなる。
[0086] 更に、コンフリクトする対処案データについては、それを除外して出力しても良い。
コンフリクトする対処案データについては、事象分析対処システム 1に設けられた、対 処毎のコンフリクト関係を示すコンフリクトテーブル(図示せず)を参照することで判断 すればよい。
[0087] 例えばある病気(事象)に対する対処案データとして医薬品 Aの投与(対処)、医薬 品 Bの投与(対処)があり、コンフリクトテーブル(図示せず)に医薬品 Aと医薬品 Bの 同時投与を禁止することが記録されている場合、対処案評価部 6に於ける有効性の 比較の結果、医薬品 A及び医薬品 Bの同時投与が最も有効性が高いとなった場合
であっても、それを含む対処案データを対処案リストから除外することとなる。
[0088] 又、コンフリクトを除外することは、上述したように対処案評価部 6で行っても良いし 、対処案作成部 3で対処案データを作成する際に、コンフリクトテーブル(図示せず) を参照することで、コンフリクト関係にある対処案については対処案データとして作成 しない処理を行っても良レ、。この場合、例えば特殊なコンフリクトとして、同時に行う対 処は 3つまでとしたり、対処に力かる時間やコストに上限を設けたりすることが出来る。 更に、ある対処が他の対処から論理的に算出可能である場合は、その対処を論理的 に算出しても良い。具体的には、例えば薬品 Xと薬品 yと薬品 zを混合する場合、薬品 Xの割合と薬品 yの割合が決まれば薬品 zの割合が自動的に決定されるような場合に は、対処案作成部 3で対処案データを作成する際に、薬品 Xの割合と薬品 yの割合の 組合せから薬品 zの割合を算出して、対処案データとしても良い。
[0089] 尚、コンフリクト関係を示すには、上述のようにコンフリクトテーブル(図示せず)で行 わずとも、低い評価値が計算されるように評価関数処理部 5に於ける評価関数と確率 テーブル 7とを設定することで実現しても良い。
[0090] 本発明の他の実施形態として、確率テーブル 7の全部又は一部を予め評価関数で 処理した評価値テーブル(図示せず)を用意しておき、これを事象情報や確率値で 処理することで、ベイジアンネットワークと評価関数を使用した場合と同様の評価値を 得ても良い。
[0091] 又、対処案データを作成せずに (即ちこの場合、対処案作成部 3は設けなレ、)、確 率テーブル 7や、上述のように確率テーブル 7を処理したものを直接操作することで、 最適な対処を出力しても良い。これは、全ての対処案を入力して、その中から最適な ものを出力するのと同じ効果がある。
[0092] 更に、事象情報をベイジアンネットワーク演算部 4に入力するのではなぐ事象情報 を用いて適切な確率テーブル 7を選択しても良レ、。これは、事象情報をべイジアンネ ットワークに入力するのと同じ効果がある。
[0093] カロえて、対処案リストとして、対処案の全部又は一部を、評価値又は評価値を処理 したもの(例えば基準評価値一評価値を演算した結果)と組み合わせて出力しても良 レ、。
実施例 3
[0094] 次に、問題分析システムの他の実施例として、確率テーブル 7の原因にコスト発生 の有無をカ卩味した場合の処理プロセスの流れを説明する。この場合確率テーブル 7 は、図 7のように構成されているとする。
[0095] 事象 Xについて「異音が聞こえる」、事象 Yについて「油温が高い」、対処 Xについて 「オイルを交換する」、対処 yについて「ボルトを締め直す」、原因 Aについて「オイル の汚濁」、原因 Bについて「オイルの減少」、原因 Cについて「ボルトの緩み」、原因 D について「機械保守コストが発生」、原因 Eについて「オイル交換コストが発生」、原因 Fにつレ、て「ボルト締めコストが発生」である場合とする。つまり原因 Dから原因 Fが原 因として、コスト発生の有無をカ卩味した場合である。
[0096] 又、評価値を「損失金額の期待値」とし、評価関数としては、
評価値 A= 100000 X (原因 Aの確率)
評価値 B = 100000 X (原因 Bの確率)
評価値 C= 100000 X (原因 Cの確率)
評価値 D=40000 X (原因 Dの確率)
評価値 E = 30000 X (原因 Eの確率)
評価値 F = 20000 X (原因 Fの確率)
であるとする(尚、この評価関数では、原因 A、原因 B、原因 Cであった場合に各々 10 0000円(従って各定数が 100000である力 これは各原因によって異なっていても 良い)の損失が発生することを意味しており、更に機械保守を行った場合には 4000 0円、オイル交換を行った場合には 30000円、ボルト締めを行った場合には 20000 円のコストが必要となることを意味してレ、る)。
[0097] そして対処案評価部 6で用いる評価条件としては、「損失金額を少なくする対処」( 即ち、基準評価値に対して、対処に対する評価値がどれだけ低くなつたかが有効性 となる)を取るものとする。
[0098] 事象情報入力部 2に、事象分析対処システム 1外から、事象情報として「異音が聞 こえない」、「油温が高レ、」の 2つの事象情報が入力され、それを事象情報入力部 2で 受信したとする(S100)。
[0099] 事象情報入力部 2は、それらを確率分布に変換するので、「事象 X=0、事象 Y= l 」に変換し、変換後、ベイジアンネットワーク演算部 4に送信する。
[0100] 次に対処案作成部 3は、基準評価値を作成するために、対処を行わない場合の対 処案データを作成する(S110)。即ち「対処 χ=0、対処 y=0」が基準評価値の際の 対処案データとなる。この対処案データをベイジアンネットワーク演算部 4、対処案評 価部 6に送信する。
[0101] S110に於いて対処案作成部 3で作成した対処案データ「対処 x = 0、対処 y=0」と 、事象情報入力部 2から受信した事象情報「事象 X=0、事象 Y= l」とを、ベイジアン ネットワーク演算部 4が確率テーブル 7に入力し、当該事象に対する原因の確率分布 データを出力する(S200)。この場合では、図 7に示した確率テーブル 7を参照する と、上記条件を満たすのは、「原因 A=0. 7、原因 B = 0. 5、原因 C = 0. 1、原因 D =0. 0、原因 E = 0. 0、原因 F = 0. 0」なので、それを出力することとなる。
[0102] 次に原因の確率分布データに基づいて、評価関数処理部 5が予め定められた評価 関数に基づいて、当該対処案データに於ける各原因の場合の評価値を算出し、そ れを全ての原因の場合に対して行う(S210、 S220)。
[0103] 評価値 Aは、上述した評価関数から、
評価値 A= 100000 X (原因 Aの確率) = 100000 X 0. 7 = 70000
となり、同様に評価値 Bから評価値 Fは、
評価値 B = 100000 X (原因 Bの確率) = 100000 X 0. 5 = 50000
評価値 C= 100000 X (原因 Cの確率) = 100000 X 0. 1 = 10000
評価値 D=40000 X (原因 Dの確率) =40000 X 0. 0 = 0
評価値 E = 30000 X (原因 Eの確率) = 30000 X 0. 0 = 0
評価値 F = 20000 X (原因 Fの確率) = 20000 X 0. 0 = 0
となる。
[0104] そして各評価値を合計し (S230)、
対処に対する評価値 =評価値 A +評価値 B +評価値 C +評価値 D +評価値 E + 評価値 F= 70000 + 50000+ 10000 + 0 + 0 + 0 = 130000
を当該対処に対する評価値とする。
[0105] 評価関数処理部 5は、 S230で算出した、当該対処に対する評価値の合計(1300 000)を基準評価値として、対処を行わない場合の対処案データ(対処 x=0、対処 y =0)と対応づけて、対処案評価部 6に記憶する(S130)。尚、ここで算出した基準評 価値は、現在の事象から算出される損失金額の期待値となる。
[0106] 次に、対処を行った場合の評価値を、対処の組合せ毎に作成する。本実施例では
、対処案が少ないので全ての場合について評価値を算出する力 上述したように対 処案が多ぐその処理に時間を費やすと想定されている場合や対処案が一定数以 上等の場合には、全てを算出せず、その一部の算出にとどめても良いことは上述した とおりである。
[0107] 対処案作成部 3は、第 1の対処案データとして「オイルを交換しない」、「ボルトを締 め直す」の対処の場合、即ち「対処 x = 0、対処 y= l」を対処案データとしてべイジァ ンネットワーク演算部 4、対処案評価部 6に送信する。
[0108] ベイジアンネットワーク演算部 4は、対処案データ「対処 x=0、対処 y= l」と、事象 情報入力部 2から受信した事象情報「事象 X=0、事象 Y= l」とを確率テーブル 7に 入力し、対応する原因の確率分布データを出力する(S200)。この場合では、図 4に 示した確率テーブル 7を参照すると、上記条件を満たすのは、「原因 Α=0· 7、原因 Β = 0. 5、原因 C = 0. 0、原因 D= l . 0、原因 Ε = 0· 0、原因 F= l . 0」なので、それ を出力することとなる。
[0109] 次に原因の確率分布データに基づいて、評価関数処理部 5が予め定められた評価 関数に基づいて、当該対処案データに於ける各原因に対する評価値を算出し、それ を全ての原因の場合に対して行う(S210、 S220)。
[0110] 評価値 Aは、上述した評価関数から、
評価値 A= 100000 X (原因 Aの確率) = 100000 X 0. 7 = 70000
となり、同様に評価値 Bから評価値 Fは、
評価値 B = 100000 X (原因 Bの確率) = 100000 X 0. 5 = 50000
評価値 C= 100000 X (原因 Cの確率) = 100000 X 0. 0 = 0
評価値 D=40000 X (原因 Dの確率) =40000 X I . 0=40000
評価値 E = 30000 X (原因 Eの確率) = 30000 X 0. 0 = 0
評価値 F = 20000 X (原因 Fの確率) = 20000 X 1. 0 = 20000
となる。
[0111] そして各評価値を合計し (S230)、
評価値 =評価値 A +評価値 B +評価値 C +評価値 D +評価値 E +評価値 F = 70 000 + 50000 + 0 + 40000 + 0 + 20000 = 180000
が当該対処「対処 x = 0、対処 y= l」に対する評価値となる。
[0112] 評価関数処理部 5は、 S230で算出した、対処に対する評価値(180000)を、対処 案データ(対処 x=0、対処 y= l)と対応づけて、対処案評価部 6に記憶する(S 170) 。尚、ここで算出した評価値は、「オイルを交換しない」、「ボルトを締め直す」の対処 を行った場合で算出される損失金額の期待値となる。
[0113] 次に、対処案作成部 3は、第 2の対処案データとして「オイルを交換する」、「ボルト を締め直さなレ、」の対処の場合、即ち「対処 x= l、対処 y=0」を対処案データとして ベイジアンネットワーク演算部 4、対処案評価部 6に送信する。
[0114] ベイジアンネットワーク演算部 4は、対処案データ「対処 x= l、対処 y=0」と、事象 情報入力部 2から受信した事象情報「事象 X=0、事象 Y= l」とを確率テーブル 7に 入力し、対応する原因の確率分布データを出力する(S200)。この場合では、図 4に 示した確率テーブル 7を参照すると、上記条件を満たすのは、「原因 Α=0· 0、原因 Β = 0. 0、原因 C = 0. 1、原因 D= l . 0、原因 Ε= 1 · 0、原因 F = 0. 0」なので、それ を出力することとなる。
[0115] 次に原因の確率分布データに基づいて、評価関数処理部 5が予め定められた評価 関数に基づいて、当該対処案データに於ける各原因に対する評価値を算出し、それ を全ての原因の場合に対して行う(S210、 S220)。
[0116] 評価値 Aは、上述した評価関数から、
評価値 A= 100000 X (原因 Aの確率) = 100000 X 0. 0 = 0
となり、同様に評価値 Bから評価値 Fは、
評価値 B = 100000 X (原因 Bの確率) = 100000 X 0. 0 = 0
評価値 C= 100000 X (原因 Cの確率) = 100000 X 0. 1 = 10000
評価値 D=40000 X (原因 Dの確率) =40000 X I . 0=40000
評価値 E = 30000X (原因 Eの確率) =30000X1.0 = 30000
評価値 F = 20000X (原因 Fの確率;) =20000X0. 0 = 0
となる。
[0117] そして各評価値を合計し (S230)、
対処に対する評価値 =評価値 A +評価値 B +評価値 C +評価値 D +評価値 E + 評価値 F=0 + 0+ 10000 + 40000 + 30000 = 80000
が当該対処「対処 x=l、対処 y=0」に対する評価値となる。
[0118] 評価関数処理部 5は、 S230で算出した、当該対処に対する評価値(80000)を、 対処案データ(対処 x=l、対処 y=0)と対応づけて、対処案評価部 6に記憶する(S 170)。尚、ここで算出した評価値は、「オイルを交換する」、「ボルトを締め直さない」 の対処を行った場合で算出される損失金額の期待値となる。
[0119] 更に、対処案作成部 3は、第 3の対処案データとして「オイルを交換する」、「ボルト を締め直す」の対処の場合、即ち「対処 x=l、対処 y=l」を対処案データとしてべィ ジアンネットワーク演算部 4、対処案評価部 6に送信する。
[0120] ベイジアンネットワーク演算部 4は、対処案データ「対処 x=l、対処 y=l」と、事象 情報入力部 2から受信した事象情報「事象 X=0、事象 Y=l」とを確率テーブル 7に 入力し、対応する原因の確率分布データを出力する(S200)。この場合では、図 4に 示した確率テーブル 7を参照すると、上記条件を満たすのは、「原因 Α=0· 0、原因 Β = 0. 0、原因 C = 0. 0、原因 D=l.0、原因 Ε=1· 0、原因 F=l.0」なので、それ を出力することとなる。
[0121] 次に原因の確率分布データに基づいて、評価関数処理部 5が予め定められた評価 関数に基づいて、当該対処案データに於ける各原因に対する評価値を算出し、それ を全ての原因の場合に対して行う(S210、 S220)。
[0122] 評価値 Aは、上述した評価関数から、
評価値 A= 100000 X (原因 Aの確率) =100000X0. 0 = 0
となり、同様に評価値 Bから評価値 Fは、
評価値 B = 100000 X (原因 Bの確率) =100000X0. 0 = 0
評価値 C= 100000 X (原因 Cの確率) =100000X0. 0 = 0
評価値0=40000 (原因0の確率)=40000 1. 0=40000
評価値 E = 30000 X (原因 Eの確率) = 30000 X 1. 0 = 30000
評価値 F = 20000 X (原因 Fの確率) = 20000 X 1. 0 = 20000
となる。
[0123] そして各評価値を合計し (S230)、
対処に対する評価値 =評価値 A +評価値 B +評価値 C +評価値 D +評価値 E + 評価値 F=0 + 0 + 0 + 40000 + 30000 + 20000 = 90000
が、当該対処「対処 x= l、対処 y= l」に対する評価値となる。
[0124] 評価関数処理部 5は、 S230で算出した、当該対処に対する評価値(90000)を、 対処案データ(対処 x= l、対処 y= l)と対応づけて、対処案評価部 6に記憶する(S
170)。尚、ここで算出した評価値は、「オイルを交換する」、「ボルトを締め直す」の対 処を行った場合で算出される損失金額の期待値となる。
[0125] このように対処案作成部 3は、全ての場合の対処案データを作成したので(S140)
、対処案評価部 6に於いて、前記記憶した各対処に対する評価値を抽出し、その有 効性を比較する(S 180)。
[0126] 本実施例では、評価条件として、「損失金額を少なくする対処」(即ち、基準評価値 に対して、対処に対する評価値がどれだけ低くなつたかが有効性となる)を取るものと していることから、基準評価値から対処に対する評価値を減算した場合に、それが最 も大きくなるものが有効性が高レ、こととなる。
[0127] 「対処 x=0、対処 y= l」の場合、当該対処に対する評価値の合計値は 180000で あること力 ^ら、
有効性 = 130000— 180000=— 50000
となる。
[0128] 「対処 x= l、対処 y=0」の場合、当該対処に対する評価値の合計値は 80000であ ること力ら、
有効性 = 130000— 80000 = 50000
となる。
[0129] 「対処 x= l、対処 y= l」の場合、当該対処に対する評価値の合計値は 90000であ
ること力 ^ら、
有効性 = 130000— 90000 = 40000
となる。
[0130] 以上のように各対処に対する有効性を比較すると、その有効性は、「対処 x= l、対 処 y=0」、「対処 χ= 1、対処 y= l」、「対処 x=0、対処 y= 1」の順番で有効となる。
[0131] 従って、対処案リストとして有効性の高レ、ものから順番にその対処案データ(又は対 処案)を、対処案リストとして対処案評価部 6が出力することとなる。即ち、対処案リスト として、「対処 x= l、対処 y=0」(「オイルを交換する」)、「対処 x= l、対処 y= l」(「 オイルを交換する」、「ボルトを締め直す」)、「対処 x=0、対処 y= l」(「ボルトを締め 直す」)が出力される。この場合、現状より悪化する対処案データ(又は対処案)「対 処 x=0、対処 y= l」は出力しないこととしても良い。
[0132] 尚、実施例 3では、評価値 D、評価値 E、評価値 Fは確率テーブル 7を使用せずとも 、論理的に算出しても良い。例えば評価値 Dの算出では、 C言語で表記すると、「評 価値 D= (対処 x | I対処 y) ? 40000 : 0」のように算出可能である。このように確 率テーブル 7を使用せずに評価値を算出しても良い。
実施例 4
[0133] 次に上述の事象分析対処システム 1に加え、確率テーブル 7の対処に「診断」を含 める場合を説明する。この場合の事象分析対処システム 1のシステム構成を図 5に示 す。
[0134] 事象分析対処システム 1は、事象情報入力部 2、診断付対処案作成部 9、ベイジァ ンネットワーク演算部 4、診断付評価関数処理部 8、対処案評価部 6、確率テーブル 7 とを有する。尚、実施例 1乃至実施例 3と同様の部分については説明を省略する。
[0135] 確率テーブル 7は、上述の実施例と同様に、ある事象が発生している状況で、ある 対処と診断を行った場合の、原因の確率分布を計算する為の確率テーブルであって 、実施例 1乃至実施例 3の対処に診断が含まれている場合である。診断は、何らかの 対処を行うことにより結果の情報が得られるというものである。この場合、確率テープ ル 7には、診断と結果の組合せを全て対処として記録する。つまり、図 4のように、対 処として、単に「オイルを交換する」、「ボルトを締め直す」のような対処方法の他、診
断結果に応じた対処方法を加えることとなる。例えば「診断 Pを行い、オイルが正常で あると診断」、「診断 Pを行い、オイルが異常であると診断」とのように、一つの対処に 対して複数の診断結果による場合分けが行われても良い。更に、診断を行う場合に は、診断の結果の予測確率を原因として記録することが出来る。これによつて、診断 を含む対処がより適切に出力可能となる。
[0136] このような確率テーブル 7の一例を図 8に示す。尚、図 8の確率テーブル 7は「事象 X= l、事象 Y = 0」の場合のみの確率テーブル 7であって、実際は「事象 Χ = 0、事象 Υ=0」、「事象 Χ = 0、事象 Y= l」、「事象 χ= 1、事象 γ= 1」の場合も同様に記録さ れている。
[0137] 図 8の確率テーブルの場合、事象 Xにつレ、て「異音が聞こえる」、事象 Υにつレ、て「 油温が高い」、対処 Xについて「オイルを交換する」、対処 yについて「ボルトを締め直 す」、対処 aについて「診断 Pを行いオイル正常と診断」、対処 bについて「診断 Pを行 いオイル異常と診断」、原因 Aについて「オイルの汚濁」、原因 Bについて「オイルの 減少」、原因 Cにつレ、て「ボルトの緩み」、原因 Dにつレ、て「機械保守コストが発生」、 原因 Eにつレ、て「オイル交換コストが発生」、原因 Fにつレ、て「ボルト締めコストが発生 」、原因 Gについて「診断 Pが対処 bとなる確率」である場合とする。尚、原因 Gは、診 断 Pを行った結果、その結果が対処 b (オイルが異常)となる場合の確率である。従つ て原因 Gでは「a= l、 b = l」にはなり得ないため、この場合の確率は 0と設定されて いる(原因 G = 0. 0)。
[0138] 診断付対処案作成部 9は、実施例 1乃至実施例 3に於ける対処案作成部 3と同様 に、事象に対する対処と診断の組合せを作成し、それを診断対処案データとして、ベ イジアンネットワーク演算部 4、対処案評価部 6に送信する手段である。対処案データ と診断対処案データとは、対処として診断が含まれてレ、るか否かの相違であるから、 ベイジアンネットワーク演算部 4、対処案評価部 6に於ける診断対処案データに基づ く処理は、対処案データの場合と同様に実行できる。
[0139] 診断付評価関数処理部 8は、実施例 1乃至実施例 3と同様に基準評価値を算出後 、実施例 1乃至実施例 3と同様に診断を行わない場合の評価値の算出と、診断を行う 場合の評価値の算出とを行う手段である。診断を行う場合の評価値の算出は、各診
断結果に対しての評価値を算出後、各結果に対する有効性の高い評価値を算出し 、それをその結果が発生する確率により加重平均することで、診断を行う場合の対処 に対する評価値とする。
[0140] この事象分析対処システム 1の処理プロセスの流れを図 6及び図 3のフローチャート 図、図 5のシステム構成図、図 8の確率テーブル 7を用いて説明する。
[0141] 本実施例に於いては、評価値を「損失金額の期待値」とし、診断付評価関数処理 部 8に於ける評価関数としては、
評価値 A= 100000 X (原因 Aの確率)
評価値 B = 100000 X (原因 Bの確率)
評価値 C= 100000 X (原因 Cの確率)
評価値 D = 40000 X (原因 Dの確率)
評価値 E = 30000 X (原因 Eの確率)
評価値 F = 20000 X (原因 Fの確率)
であるとする(尚、この評価関数では、原因 A、原因 B、原因 Cであった場合に各々 10 0000円(従って各定数が 100000である力 これは各原因によって異なっていても 良い)の損失が発生することを意味しており、更に機械保守を行った場合には 4000 0円、オイル交換を行った場合には 30000円、ボルト締めを行った場合には 20000 円のコストが必要となることを意味してレ、る)。
[0142] そして対処案評価部 6で用いる評価条件としては、「損失金額を少なくする対処」( 即ち、基準評価値に対して、対処に対する評価値がどれだけ低くなつたかが有効性 となる)を取るものとする。
[0143] 事象情報入力部 2に、事象分析対処システム 1外から、事象情報として「異音が聞 こえる」、「油温が高くなレ、(低い)」の 2つの事象情報が入力され、それを事象情報入 力部 2で受信したとする(S300)。
[0144] 事象情報入力部 2は、それらを確率分布に変換するので、「事象 X= l、事象 Y=0
」に変換し、変換後、ベイジアンネットワーク演算部 4に送信する。
[0145] 次に診断付対処案作成部 9は、基準評価値を作成するために、対処を行わない場 合の診断対処案データを作成する(S310)。即ち「対処 x = 0、対処 y = 0、対処 a = 0
、対処 b = 0」が基準評価値の際の診断対処案データとなる。この診断対処案データ をベイジアンネットワーク演算部 4、対処案評価部 6に送信する。
[0146] S310に於いて診断付対処案作成部 9で作成した診断対処案データ「対処 x=0、 対処 y=0、対処 a = 0、対処 b = 0」と、事象情報入力部 2から受信した事象情報「事 象 X=l、事象 Y=0」とを、ベイジアンネットワーク演算部 4が確率テーブル 7に入力 し、当該事象に対する原因の確率分布データを出力する(S200)。この場合では、 図 8に示した確率テーブル 7を参照すると、上記条件を満たすのは、「原因 A=0. 3、 原因 B = 0. 6、原因 C = 0. 9、原因 D = 0. 0、原因 E = 0.0、原因 F = 0.0、原因 G =0. 8」なので、それを出力することとなる。
[0147] 対処を行わない場合の原因の確率分布データに基づいて、診断付評価関数処理 部 8が予め定められた評価関数により、当該診断対処案データに於ける各原因の場 合の評価値を算出し、それを全ての原因の場合に対して行う(S210、 S220)。
[0148] 評価値 Aは、上述した評価関数から、
評価値 A= 100000 X (原因 Aの確率) =100000X0. 3 = 30000
となり、同様に評価値 Bから評価値 Fは、
評価値 B = 100000 X (原因 Bの確率) =100000X0.6 = 60000
評価値 C= 100000 X (原因 Cの確率) =100000X0. 9 = 90000
評価値 D=40000X (原因 Dの確率) =40000X0. 0 = 0
評価値 E = 30000X (原因 Eの確率) =30000X0.0 = 0
評価値 F = 20000X (原因 Fの確率;) =20000X0.0 = 0
となる。
[0149] そして各評価値を合計し (S230)、
対処に対する評価値 =評価値 A +評価値 B +評価値 C +評価値 D +評価値 E + 評価値 F= 30000 + 60000 + 90000 + 0 + 0 + 0 = 180000
を当該対処 (対処を行わなレ、)に対する評価値とする。
[0150] 診断付評価関数処理部 8は、 S230で算出した、当該対処に対する評価値の合計 (
180000)を基準評価値として、対処を行わない場合の診断対処案データ(対処 x=
0、対処 y=0、対処 a = 0、対処 b = 0)と対応づけて、対処案評価部 6に記憶する(S
330)。尚、ここで算出した基準評価値は、現在の事象から算出される損失金額の期 待値となる。
[0151] 次に、対処を行った場合の評価値を、対処の組合せ毎に作成する。本実施例では
、対処案が少ないので全ての場合について評価値を算出する力 上述したように対 処案が多ぐその処理に時間を費やすと想定されている場合や対処案が一定数以 上等の場合には、全てを算出せず、その一部の算出にとどめても良いことは上述した とおりである。又、本実施例では、診断を行わない場合と診断を行う場合とについて、 各々評価値を算出するため、診断を行わない場合の診断対処案データを作成後に 、診断を行う場合の診断対処案データを作成することとするが、これを逆の順番で行 つても良レ、し、或いは順番を混合して行っても良レ、。
[0152] まず診断を行わない場合 (対処 a = 0、対処 b = 0の場合)について説明する。この 場合、診断を行わない場合の診断対処案データを作成し (S360)、その対処に対す る評価値を、実施例 1乃至実施例 3と同様に算出する(S370)。そしてその対処に対 する評価値を診断対処案データと対応させて対処案評価部に記憶する(S380)。 S 360から S380のプロセスを、診断を行わない場合の全て又は所定の対処案に対し て行う(S350)。具体的には、下記の処理を行う。
[0153] 診断付対処案作成部 9は、第 1の診断対処案データとして「オイルを交換しない」、 「ボルトを締め直す」、「診断を行わない」の対処の場合、即ち「対処 x=0、対処 y= l 、対処 a = 0、対処 b = 0」を診断対処案データとしてベイジアンネットワーク演算部 4、 対処案評価部 6に送信する(S360)。
[0154] ベイジアンネットワーク演算部 4は、診断対処案データ「対処 x=0、対処 y= l、対 処 a = 0、対処 b = 0」と、事象情報入力部 2から受信した事象情報「事象 X= l、事象 Y=0」とを確率テーブル 7に入力し、対応する原因の確率分布データを出力する(S 200) この場合では、図 8に示した確率テーブル 7を参照すると、上記条件を満たす のは、「原因 Α=0. 3、原因 Β = 0. 6、原因 C = 0. 0、原因 D= l . 0、原因 E = 0. 0、 原因 F= l . 0」なので、それを出力することとなる。
[0155] 次に原因の確率分布データに基づいて、診断付評価関数処理部 8が予め定めら れた評価関数に基づいて、当該診断対処案データに於ける各原因に対する評価値
を算出し、それを全ての原因の場合に対して行う(S210、 S220)。
[0156] 評価値 Aは、上述した評価関数から、
評価値 A= 100000 X (原因 Aの確率) =100000X0.3 = 30000
となり、同様に評価値 Bから評価値 Fは、
評価値 B = 100000 X (原因 Bの確率) =100000X0.6 = 60000
評価値 C=100000 X (原因 Cの確率) =100000X0. 0 = 0
評価値 D=40000X (原因 Dの確率) =40000 XI.0=40000
評価値 E = 30000X (原因 Eの確率) =30000X0.0 = 0
評価値 F = 20000X (原因 Fの確率) =20000X1. 0 = 20000
となる。
[0157] そして各評価値を合計し (S230)、
評価値 =評価値 A +評価値 B +評価値 C +評価値 D +評価値 E +評価値 F = 30 000 + 60000 + 0 + 40000 + 0 + 20000 = 150000
が当該対処「対処 x=0、対処 y=l、対処 a = 0、対処 b = 0」に対する評価値となる。
[0158] 診断付評価関数処理部 8は、 S230で算出した、対処に対する評価値(150000) を、診断対処案データ(対処 x=0、対処 y=l、対処 a = 0、対処 b = 0)と対応づけて 、対処案評価部 6に記憶する(S380)。尚、ここで算出した評価値は、「オイルを交換 しなレ、」、「ボルトを締め直す」「診断を行わない」の対処を行った場合で算出される損 失金額の期待値となる。
[0159] 次に、診断付対処案作成部 9は、第 2の診断対処案データとして「オイルを交換す る」、「ボルトを締め直さない」、「診断を行わない」の対処の場合、即ち「対処 x=l、 対処 y=0」を診断対処案データとしてベイジアンネットワーク演算部 4、対処案評価 部 6に送信する(S360)。
[0160] ベイジアンネットワーク演算部 4は、診断対処案データ「対処 x=l、対処 y=0、対 処 a = 0、対処 b = 0」と、事象情報入力部 2から受信した事象情報「事象 X=l、事象 Y=0」とを確率テーブル 7に入力し、対応する原因の確率分布データを出力する(S 200) この場合では、図 8に示した確率テーブル 7を参照すると、上記条件を満たす のは、「原因 Α=0.0、原因 Β = 0.0、原因 C = 0.9、原因 D=l.0、原因 E=l.0、
原因 F = 0.0」なので、それを出力することとなる。
[0161] 次に原因の確率分布データに基づいて、診断付評価関数処理部 8が予め定めら れた評価関数に基づいて、当該診断対処案データに於ける各原因に対する評価値 を算出し、それを全ての原因の場合に対して行う(S210、 S220)o
[0162] 評価値 Aは、上述した評価関数から、
評価値 A= 100000 X (原因 Aの確率) =100000X0. 0 = 0
となり、同様に評価値 Bから評価値 Fは、
評価値 B = 100000 X (原因 Bの確率) =100000X0. 0 = 0
評価値 C=100000 X (原因 Cの確率) =100000X0.9 = 90000
評価値 D=40000X (原因 Dの確率) =40000 XI.0=40000
評価値 E = 30000X (原因 Eの確率) =30000X1.0 = 30000
評価値 F = 20000X (原因 Fの確率) =20000X0. 0 = 0
となる。
[0163] そして各評価値を合計し (S230)、
対処に対する評価値 =評価値 A +評価値 B +評価値 C +評価値 D +評価値 E + 評価値 F=0 + 0 + 90000 + 40000 + 30000 = 160000
が当該対処「対処 x=l、対処 y=0、対処 a = 0、対処 b = 0」に対する評価値となる。
[0164] 診断付評価関数処理部 8は、 S230で算出した、当該対処に対する評価値(1600 00)を、診断対処案データ(対処 x=l、対処 y=0、対処 a = 0、対処 b = 0)と対応づ けて、対処案評価部 6に記憶する(S380)。尚、ここで算出した評価値は、「オイルを 交換する」、「ボルトを締め直さない」「診断を行わない」の対処を行った場合で算出さ れる損失金額の期待値となる。
[0165] 更に、診断付対処案作成部 9は、第 3の診断対処案データとして「オイルを交換す る」、「ボルトを締め直す」、「診断を行わない」の対処の場合、即ち「対処 x=l、対処 y=l、対処 a = 0、対処 b = 0」を診断対処案データとしてベイジアンネットワーク演算 部 4、対処案評価部 6に送信する(S360)。
[0166] ベイジアンネットワーク演算部 4は、診断対処案データ「対処 x=l、対処 y=l、対 処 a = 0、対処 b = 0」と、事象情報入力部 2から受信した事象情報「事象 X=l、事象
Y=0」とを確率テーブル 7に入力し、対応する原因の確率分布データを出力する(S 200)。この場合では、図 8に示した確率テーブル 7を参照すると、上記条件を満たす のは、「原因 Α=0. 0、原因 Β = 0.0、原因 C = 0.0、原因 D=l.0、原因 E=l.0、 原因 F=l.0」なので、それを出力することとなる。
[0167] 次に原因の確率分布データに基づいて、診断付評価関数処理部 8が予め定めら れた評価関数に基づいて、当該診断対処案データに於ける各原因に対する評価値 を算出し、それを全ての原因の場合に対して行う(S210、 S220)o
[0168] 評価値 Aは、上述した評価関数から、
評価値 A= 100000 X (原因 Aの確率) =100000X0.0 = 0
となり、同様に評価値 Bから評価値 Fは、
評価値 B = 100000 X (原因 Bの確率) =100000X0.0 = 0
評価値 C=100000 X (原因 Cの確率) =100000X0. 0 = 0
評価値0=40000 (原因0の確率)=40000 1.0=40000
評価値 E = 30000X (原因 Eの確率) =30000X1.0 = 30000
評価値 F = 20000X (原因 Fの確率) =20000X1.0 = 20000
となる。
[0169] そして各評価値を合計し (S230)、
対処に対する評価値 =評価値 A +評価値 B +評価値 C +評価値 D +評価値 E + 評価値 F=0 + 0 + 0 + 40000 + 30000 + 20000 = 90000
、当該対処「対処 x=l、対処 y=l、対処 a = 0、対処 b = 0」に対する評価値となる
[0170] 診断付評価関数処理部 8は、 S230で算出した、当該対処に対する評価値(9000 0)を、診断対処案データ(対処 x=l、対処 y=l、対処 a = 0、対処 b = 0)と対応づけ て、対処案評価部 6に記憶する(S380)。尚、ここで算出した評価値は、「オイルを交 換する」、「ボルトを締め直す」、「診断を行わなレ、」の対処を行った場合で算出される 損失金額の期待値となる。
[0171] このように第 1の診断対処案データから第 3の診断対処案データに於いて、診断 P を行わない場合の各対処に対する評価値を算出しているので(S350)、次に診断 P
を行う場合の対処に対する評価値を算出する。即ち S390から S420の処理を実行 することとなる。具体的には下記の処理プロセスを実行することとなる。
[0172] 診断 Pを行う場合は、上述の例の場合、「オイルを交換しない」、「ボルトを締め直さ ない」、「診断 Pを行う」場合 (対処 x=0、対処 y=0)、 「オイルを交換する」、「ボルトを 締め直さない」、「診断 Pを行う」場合 (対処 x= l、対処 y=0)、 「オイルを交換しなレ、」 、 「ボルトを締め直す」、「診断 Pを行う」場合 (対処 x = 0、対処 y= l)、 「オイルを交換 する」、「ボルトを締め直す」、「診断 Pを行う」場合 (対処 x= l、対処 y= l)の 4通りに ついて評価値を算出することとなる。そしてこの診断 Pの各々の結果に対する評価値 を中間評価値として算出し、その結果となる確率を加重平均することで、対処として、 診断を行う場合の評価値とする。
[0173] まず診断 Pの結果が aである場合(つまり「対処 a= l、対処 b = 0」となる場合)の評 価値を計算する。例えば「対処 x = 0、対処 y = 0、対処 a= l、対処 b = 0」の場合(「ォ ィルを交換しない」、「ボルトを締め直さない」、「診断 Pの結果がオイル正常である場 合」)、を診断付対処案作成部 9は、第 4の診断対処案データとしてベイジアンネット ワーク演算部 4、対処案評価部 6に送信する(S390)。
[0174] ベイジアンネットワーク演算部 4は、診断対処案データ「対処 x=0、対処 y=0、対 処 a= l、対処 b = 0」と、事象情報入力部 2から受信した事象情報「事象 X= l、事象 Y=0」とを確率テーブル 7に入力し、対応する原因の確率分布データを出力する(S 200)。この場合では、図 8に示した確率テーブル 7を参照すると、上記条件を満たす のは、「原因 Α=0. 0、原因 Β = 0. 0、原因 C = 0. 9、原因 D= l . 0、原因 E = 0. 0、 原因 F=0. 0」なので、それを出力することとなる。
[0175] 次に原因の確率分布データに基づいて、診断付評価関数処理部 8が予め定めら れた評価関数に基づいて、当該診断対処案データに於ける各原因に対する評価値 を算出し、それを全ての原因の場合に対して行う(S210、 S220) o
[0176] 評価値 Aは、上述した評価関数から、
評価値 A= 100000 X (原因 Aの確率) = 100000 X 0. 0 = 0
となり、同様に評価値 Bから評価値 Fは、
評価値 B = 100000 X (原因 Bの確率) = 100000 X 0. 0 = 0
評価値 C= 100000 X (原因 Cの確率) =100000X0.9 = 90000 評価値0=40000 (原因0の確率)=40000 1.0=40000
評価値 E = 30000X (原因 Eの確率) =30000X0.0 = 0
評価値 F = 20000X (原因 Fの確率) =20000X0. 0 = 0
となる。
[0177] そして各評価値を合計し (S230)、
対処に対する評価値 =評価値 A +評価値 B +評価値 C +評価値 D +評価値 E + 評価値 F=0 + 0 + 90000 + 40000 + 0 + 0 = 130000
力 当該対処「対処 x = 0、対処 y = 0、対処 a=l、対処 b = 0」に対する中間評価値と なる。
[0178] 次に、診断 Pの結果がオイルが正常である場合の、他の組合せに対する評価値を 計算する。「対処 x=l、対処 y=0、対処 a=l、対処 b = 0」の場合(「オイルを交換す る」、「ボルトを締め直さない」、「診断 Pの結果がオイル正常である場合」)、を診断付 対処案作成部 9は、第 5の診断対処案データとしてベイジアンネットワーク演算部 4、 対処案評価部 6に送信する(S390)。
[0179] ベイジアンネットワーク演算部 4は、診断対処案データ「対処 x=l、対処 y=0、対 処 a=l、対処 b = 0」と、事象情報入力部 2から受信した事象情報「事象 X=l、事象 Y=0」とを確率テーブル 7に入力し、対応する原因の確率分布データを出力する(S 200)。この場合では、図 8に示した確率テーブル 7を参照すると、上記条件を満たす のは、「原因 Α=0.0、原因 Β = 0.0、原因 C = 0.9、原因 D=l.0、原因 E=l.0、 原因 F=0.0」なので、それを出力することとなる。
[0180] 次に原因の確率分布データに基づいて、診断付評価関数処理部 8が予め定めら れた評価関数に基づいて、当該診断対処案データに於ける各原因に対する評価値 を算出し、それを全ての原因の場合に対して行う(S210、 S220)o
[0181] 評価値 Aは、上述した評価関数から、
評価値 A= 100000 X (原因 Aの確率) =100000X0. 0 = 0
となり、同様に評価値 B、評価値 Cは、
評価値 B = 100000 X (原因 Bの確率) =100000X0. 0 = 0
評価値 C= 100000 X (原因 Cの確率) =100000X0.9 = 90000 評価値0=40000 (原因0の確率)=40000 1.0=40000
評価値 E = 30000X (原因 Eの確率) =30000X1.0 = 30000
評価値 F = 20000X (原因 Fの確率) =20000X0. 0 = 0
となる。
[0182] そして各評価値を合計し (S230)、
対処に対する評価値 =評価値 A +評価値 B +評価値 C +評価値 D +評価値 E + 評価値 F=0 + 0 + 90000 + 40000 + 40000 + 0 = 160000
力 当該対処「対処 x=l、対処 y=0、対処 a=l、対処 b = 0」に対する中間評価値と なる。
[0183] 「対処 x = 0、対処 y=l、対処 a=l、対処 b = 0」の場合(「オイルを交換しない」、「 ボルトを締め直す」、「診断 Pの結果がオイル正常である場合」)、を診断付対処案作 成部 9は、第 6の診断対処案データとしてベイジアンネットワーク演算部 4、対処案評 価部 6に送信する。
[0184] ベイジアンネットワーク演算部 4は、診断対処案データ「対処 x=0、対処 y=l、対 処 a=l、対処 b = 0」と、事象情報入力部 2から受信した事象情報「事象 X=l、事象 Y=0」とを確率テーブル 7に入力し、対応する原因の確率分布データを出力する(S 200)。この場合では、図 8に示した確率テーブル 7を参照すると、上記条件を満たす のは、「原因 Α=0.0、原因 Β = 0.0、原因 C = 0.0、原因 D=l.0、原因 E = 0.0、 原因 F=l.0」なので、それを出力することとなる。
[0185] 次に原因の確率分布データに基づいて、診断付評価関数処理部 8が予め定めら れた評価関数に基づいて、当該診断対処案データに於ける各原因に対する評価値 を算出し、それを全ての原因の場合に対して行う(S210、 S220)o
[0186] 評価値 Aは、上述した評価関数から、
評価値 A= 100000 X (原因 Aの確率) =100000X0. 0 = 0
となり、同様に評価値 Bから評価値 Fは、
評価値 B = 100000 X (原因 Bの確率) =100000X0. 0 = 0
評価値 C= 100000 X (原因 Cの確率) =100000X0. 0 = 0
評価値0=40000 (原因0の確率)=40000 1.0=40000
評価値 E = 30000X (原因 Eの確率) =30000X0.0 = 0
評価値 F = 20000X (原因 Fの確率) =20000X1. 0 = 20000
となる。
[0187] そして各評価値を合計し (S230)、
対処に対する評価値 =評価値 A +評価値 B +評価値 C +評価値 D +評価値 E + 評価値 F=0 + 0 + 0 + 40000 + 0 + 20000 = 60000
力 当該対処「対処 x = 0、対処 y=l、対処 a=l、対処 b = 0」に対する中間評価値と なる。
[0188] 「対処 x=l、対処 y=l、対処 a=l、対処 b = 0」の場合(「オイルを交換する」、「ボ ノレトを締め直す」、「診断 Pの結果がオイル正常である場合」)、を診断付対処案作成 部 9は、第 7の診断対処案データとしてベイジアンネットワーク演算部 4、対処案評価 部 6に送信する。
[0189] ベイジアンネットワーク演算部 4は、診断対処案データ「対処 x=l、対処 y=l、対 処 a=l、対処 b = 0」と、事象情報入力部 2から受信した事象情報「事象 X=l、事象 Y=0」とを確率テーブル 7に入力し、対応する原因の確率分布データを出力する(S 200)。この場合では、図 8に示した確率テーブル 7を参照すると、上記条件を満たす のは、「原因 Α=0.0、原因 Β = 0.0、原因 C = 0.0、原因 D=l.0、原因 E=l.0、 原因 F=l.0」なので、それを出力することとなる。
[0190] 次に原因の確率分布データに基づいて、診断付評価関数処理部 8が予め定めら れた評価関数に基づいて、当該診断対処案データに於ける各原因に対する評価値 を算出し、それを全ての原因の場合に対して行う(S210、 S220)o
[0191] 評価値 Aは、上述した評価関数から、
評価値 A= 100000 X (原因 Aの確率) =100000X0. 0 = 0
となり、同様に評価値 Bから評価値 Fは、
評価値 B = 100000 X (原因 Bの確率) =100000X0. 0 = 0
評価値 C=100000 X (原因 Cの確率) =100000X0. 0 = 0
評価値 D=40000X (原因 Dの確率) =40000 XI.0=40000
評価値 E = 30000X (原因 Eの確率) =30000X1.0 = 30000
評価値 F = 20000X (原因 Fの確率) =20000X1. 0 = 20000
となる。
[0192] そして各評価値を合計し (S230)、
対処に対する評価値 =評価値 A +評価値 B +評価値 C +評価値 D +評価値 E + 評価値 F=0 + 0 + 0 + 40000 + 30000 + 20000 = 90000
力 当該対処「対処 x=l、対処 y=l、対処 a=l、対処 b = 0」に対する中間評価値と なる。
[0193] 以上の 4通りが、診断 Pを行いその結果がオイルが正常(対処 a)である場合の中間 評価値なので、次に、その結果が bである場合(つまり「対処 a = 0、対処 b = l」となる 場合)の評価値を計算する。例えば「対処 x = 0、対処 y = 0、対処 a = 0、対処 b = l」 の場合(「オイルを交換しない」、「ボルトを締め直さない」、「診断 Pの結果がオイル異 常である場合」)、を診断付対処案作成部 9は、第 8の診断対処案データとしてべイジ アンネットワーク演算部 4、対処案評価部 6に送信する(S390)。
[0194] ベイジアンネットワーク演算部 4は、診断対処案データ「対処 x=0、対処 y=0、対 処 a = 0、対処 b = l」と、事象情報入力部 2から受信した事象情報「事象 X=l、事象 Y=0」とを確率テーブル 7に入力し、対応する原因の確率分布データを出力する(S 200)。この場合では、図 8に示した確率テーブル 7を参照すると、上記条件を満たす のは、「原因 Α=0.8、原因 Β = 0.9、原因 C = 0.4、原因 D=l.0、原因 E = 0.0、 原因 F=0.0」なので、それを出力することとなる。
[0195] 次に原因の確率分布データに基づいて、診断付評価関数処理部 8が予め定めら れた評価関数に基づいて、当該診断対処案データに於ける各原因に対する評価値 を算出し、それを全ての原因の場合に対して行う(S210、 S220)o
[0196] 評価値 Aは、上述した評価関数から、
評価値 A= 100000 X (原因 Aの確率) =100000X0.8 = 80000
となり、同様に評価値 Bから評価値 Fは、
評価値 B = 100000X (原因 Bの確率) =100000X0.9 = 90000
評価値 C= 100000 X (原因 Cの確率) =100000X0.4=40000
評価値0=40000 (原因0の確率)=40000 1.0=40000
評価値 E = 30000X (原因 Eの確率) =30000X0.0 = 0
評価値 F = 20000X (原因 Fの確率;) =20000X0. 0 = 0
となる。
[0197] そして各評価値を合計し (S230)、
対処に対する評価値 =評価値 A +評価値 B +評価値 C +評価値 D +評価値 E + 評価値 F=80000 + 90000 + 40000 + 40000 + 0 + 0 = 250000
が、当該対処「対処 x=0、対処 y=0、対処 a = 0、対処 b = 1」に対する評価値となる
[0198] 次に診断 Pの結果がオイルが異常である場合 (対処 bの場合)の、他の組合せに対 する評価値を計算する。これを上述同様に計算すると、「対処 x=l、対処 y=0、対 処 a = 0、対処 b = l」の場合(「オイルを交換する」、「ボルトを締め直さない」、「診断 P の結果がオイル異常である場合」)、を診断付対処案作成部 9は、第 9の診断対処案 データとしてベイジアンネットワーク演算部 4、対処案評価部 6に送信する(S390)。
[0199] ベイジアンネットワーク演算部 4は、診断対処案データ「対処 x=l、対処 y=0、対 処 a = 0、対処 b = l」と、事象情報入力部 2から受信した事象情報「事象 X=l、事象 Y=0」とを確率テーブル 7に入力し、対応する原因の確率分布データを出力する(S 200)。この場合では、図 8に示した確率テーブル 7を参照すると、上記条件を満たす のは、「原因 Α=0.0、原因 Β = 0.0、原因 C = 0.4、原因 D=l.0、原因 E=l.0、 原因 F=0.0」なので、それを出力することとなる。
[0200] 次に原因の確率分布データに基づいて、診断付評価関数処理部 8が予め定めら れた評価関数に基づいて、当該診断対処案データに於ける各原因に対する評価値 を算出し、それを全ての原因の場合に対して行う(S210、 S220)o
[0201] 評価値 Aは、上述した評価関数から、
評価値 A= 100000 X (原因 Aの確率) =100000X0. 0 = 0
となり、同様に評価値 Bから評価値 Fは、
評価値 B = 100000 X (原因 Bの確率) =100000X0. 0 = 0
評価値 C= 100000 X (原因 Cの確率) =100000X0.4=40000
評価値0=40000 (原因0の確率)=40000 1.0=40000
評価値 E = 30000X (原因 Eの確率) =30000X1.0 = 30000
評価値 F = 20000X (原因 Fの確率;) =20000X0. 0 = 0
となる。
[0202] そして各評価値を合計し (S230)、
対処に対する評価値 =評価値 A +評価値 B +評価値 C +評価値 D +評価値 E + 評価値 F=0 + 0 + 40000 + 40000 + 30000 + 0 = 110000
力 当該対処「対処 x=l、対処 y=0、対処 a = 0、対処 b = 1」に対する評価値となる
[0203] 「対処 x = 0、対処 y=l、対処 a = 0、対処 b = 1」の場合(「オイルを交換しない」、「 ボルトを締め直す」、「診断 Pの結果がオイル異常である場合」)、を診断付対処案作 成部 9は、第 10の診断対処案データとしてベイジアンネットワーク演算部 4、対処案 評価部 6に送信する(S390)。
[0204] ベイジアンネットワーク演算部 4は、診断対処案データ「対処 x=0、対処 y=l、対 処 a = 0、対処 b = l」と、事象情報入力部 2から受信した事象情報「事象 X=l、事象 Y=0」とを確率テーブル 7に入力し、対応する原因の確率分布データを出力する(S 200)。この場合では、図 8に示した確率テーブル 7を参照すると、上記条件を満たす のは、「原因 Α=0.8、原因 Β = 0.9、原因 C = 0.0、原因 D=l.0、原因 E = 0.0、 原因 F=l.0」なので、それを出力することとなる。
[0205] 次に原因の確率分布データに基づいて、診断付評価関数処理部 8が予め定めら れた評価関数に基づいて、当該診断対処案データに於ける各原因に対する評価値 を算出し、それを全ての原因の場合に対して行う(S210、 S220)o
[0206] 評価値 Aは、上述した評価関数から、
評価値 A= 100000 X (原因 Aの確率) =100000X0.8 = 80000
となり、同様に評価値 Bから評価値 Fは、
評価値 B = 100000X (原因 Bの確率) =100000X0.9 = 90000
評価値 C=100000 X (原因 Cの確率) =100000X0. 0 = 0
評価値 D=40000X (原因 Dの確率) =40000 XI.0=40000
評価値 E = 30000X (原因 Eの確率) =30000X0.0 = 0
評価値 F = 20000X (原因 Fの確率) =20000X1. 0 = 20000
となる。
[0207] そして各評価値を合計し (S230)、
対処に対する評価値 =評価値 A +評価値 B +評価値 C +評価値 D +評価値 E + 評価値 F=80000 + 90000 + 0 + 40000 + 0 + 20000 = 230000
力 当該対処「対処 x = 0、対処 y=l、対処 a = 0、対処 b = 1」に対する評価値となる
[0208] 「対処 x=l、対処 y=l、対処 a = 0、対処 b = 1」の場合(「オイルを交換する」、「ボ ノレトを締め直す」、「診断 Pの結果がオイル異常である場合」)、を診断付対処案作成 部 9は、第 11の診断対処案データとしてベイジアンネットワーク演算部 4、対処案評 価部 6に送信する(S390)。
[0209] ベイジアンネットワーク演算部 4は、診断対処案データ「対処 x= 1、対処 y = 1、対 処 a = 0、対処 b = l」と、事象情報入力部 2から受信した事象情報「事象 X=l、事象 Y=0」とを確率テーブル 7に入力し、対応する原因の確率分布データを出力する(S 200)。この場合では、図 8に示した確率テーブル 7を参照すると、上記条件を満たす のは、「原因 Α=0.0、原因 Β = 0.0、原因 C = 0.0、原因 D=l.0、原因 E=l.0、 原因 F=l.0」なので、それを出力することとなる。
[0210] 次に原因の確率分布データに基づいて、診断付評価関数処理部 8が予め定めら れた評価関数に基づいて、当該診断対処案データに於ける各原因に対する評価値 を算出し、それを全ての原因の場合に対して行う(S210、 S220)。
[0211] 評価値 Aは、上述した評価関数から、
評価値 A= 100000 X (原因 Aの確率) =100000X0. 0 = 0
となり、同様に評価値 Bから評価値 Fは、
評価値 B = 100000 X (原因 Bの確率) =100000X0. 0 = 0
評価値 C=100000 X (原因 Cの確率) =100000X0. 0 = 0
評価値 D=40000X (原因 Dの確率) =40000 XI.0=40000
評価値 E = 30000X (原因 Eの確率) =30000X1.0 = 30000
評価値 F = 20000 X (原因 Fの確率) = 20000 X 1. 0 = 20000
となる。
[0212] そして各評価値を合計し (S230)、
対処に対する評価値 =評価値 A +評価値 B +評価値 C +評価値 D +評価値 E + 評価値 F=0 + 0 + 0 + 40000 + 30000 + 20000 = 90000
力 当該対処「対処 x= l、対処 y= l、対処 a = 0、対処 b = 1」に対する評価値となる
[0213] 尚、対処 a = 0、対処 b = 0は、今回の診断に於いてはあり得ないので、診断付対処 案作成部 9は、この値を取る診断対処案データを作成しなくても良い。対処 a= l、対 処 b = 1の場合も同様である。
[0214] このように、第 4の診断対処案データの評価値(130000)、第 5の診断対処案デー タの評価値(160000)、第 6の診断対処案データの評価値(60000)、第 7の診断対 処案データの評価値(90000)を比較すると、本実施例の評価条件が、「損失金額を 少なくする対処」(即ち、基準評価値に対して、対処に対する評価値がどれだけ低く なったかが有効性となる)を取るものとしてレ、ることから、診断 Pを行レ、その結果が対 処 aの場合の最適な評価値は、診断 Pを行レ、その結果が対処 aである場合の各対処 に対するの評価値(中間評価値)を基準評価値から減算した場合に、それが最も大き くなるものが有効性が高いこととなる。従って、第 6の診断対処案データ、即ち「対処 X =0、対処 y= l、対処 a= l、対処 b = 0」が最適であることが分かる。
[0215] 又、診断 Pの結果が対処 aになる場合と同様に、診断 Pの結果が対処 bになる場合 の最適な評価値は、第 8の診断対処案データの評価値(250000)、第 9の診断対処 案データの評価値(110000)、第 10の診断対処案データの評価値(230000)、第 11の診断対処案データの評価値(90000)を比較すると、第 11の診断対処案デー タ、即ち「対処 x= l、対処 y= l、対処 a = 0、対処 b= 1」が最適であることが分かる
[0216] そうすると、診断を行った場合の対処としては、診断 Pの結果がオイルが正常(対処 a)であったならば「対処 x = 0、対処 y= l」(「ボルトを締め直す」)を行レ、、診断 Pの結 果がオイルが異常(対処 b)であったならば「対処 x= l、対処 y= l」(「オイルを交換 する」、「ボルトを締め直す」)を行う、とするのが最適な対処案となる。
[0217] そして、診断を行った場合の評価値は、各結果に於ける確率によって加重平均を 取ることとなるので、
(診断結果が対処 aの場合の最適な評価値(中間評価値)) X (診断結果が対処 aと なる確率) + (診断結果が対処 bの場合の最適な評価値(中間評価値)) X (診断結 果が対処 bとなる確率)
を算出することとなる(S410)。
[0218] ここで、診断 Pの結果が対処 bとなる確率は、「対処 x = 0、対処 y=0、対処 a = 0、 対処 b = 0」に於ける原因 Gとなるので 0. 8であり、
上述の式に基づいて診断結果を行った場合の評価値を算出すると、
(第 6の診断対処案データの評価値) X (1-0. 8) + (第 11の診断対処案データの 評価値) X O. 8 = 60000 X (1-0. 8) + 90000 X 0. 8 = 84000
が得られる。
[0219] これが診断 Pを行った場合の評価値となるので、 S410で算出した評価値を診断対 処案データに対応づけて対処案評価部 6に記憶する(S420)。つまり、評価値(840 00)を、診断結果が対処 aの場合には「対処 x = 0、対処 y= l」、診断結果が対処 bの 場合には「対処 x= l、対処 y= l」とする診断対処案データと対応させて対処案評価 部 6に記憶する。
[0220] このように診断付対処案作成部 9は、全ての場合の診断対処案データを作成した ので(S340)、対処案評価部 6に於いて、前記記憶した各対処に対する評価値を抽 出し、その有効性を比較する(S430)。
[0221] 上述の場合では対処案評価部 6は、診断を行わない場合の各対処に対する評価 値と、診断を行った場合の評価値との有効性を比較することとなる。
[0222] 本実施例では、評価条件として、「損失金額を少なくする対処」(即ち、基準評価値 に対して、対処に対する評価値がどれだけ低くなつたかが有効性となる)を取るものと していることから、基準評価値から対処に対する評価値を減算した場合に、それが最 も大きくなるものが有効性が高レ、こととなる。即ち
有効性 =基準評価値 -対処に対する評価値
を行い、有効性が高いものから順に並び替える。
[0223] 「対処 x=0、対処 y=l、対処 a = 0、対処 b = 0」(診断を行わずに「対処 x = 0、対 処 y=l」)の場合、当該対処に対する評価値の合計値は 150000であることから、 有効性 =130000— 150000=— 20000
となる。
[0224] 「対処 x=l、対処 y=0、対処 a = 0、対処 b = 0」(診断を行わずに「対処 x= 1、対 処 y=0」)の場合、当該対処に対する評価値の合計値は 160000であることから、 有効性 =130000— 160000=— 30000
となる。
[0225] 「対処 x=l、対処 y=l、対処 a = 0、対処 b = 0」(診断を行わずに「対処 x= 1、対 処 y=l」)の場合、当該対処に対する評価値の合計値は 90000であることから、 有効性 =130000— 90000 = 40000
となる。
[0226] そして診断 Pを行った場合の評価値が 84000であることから、
有効性 =130000— 84000 = 46000
となる。
[0227] 以上のように各対処に対する有効性を比較すると、その有効性は、「診断 Pを行う場 合」、「対処 x=l、対処 y=l、対処 a = 0、対処 b = 0」、「対処 x = 0、対処 y=l、対処 a = 0、対処 b = 0」、「対処 x = 0、対処 y=l、対処 a = 0、対処 b = 0」の順番で有効と なる。
[0228] 従って、診断対処案リスト(診断対処案リストとは本実施例に於ける対処案リストであ り、実施例 1乃至実施例 3に於ける対処案リストと同様である)として有効性の高いも のから順番にその診断対処案データ(又は対処案)を、診断対処案リストとして対処 案評価部 6が出力することとなる(S440)。即ち、診断対処案リストとして、「診断 Pを 行レ、結果がオイル正常であれば対処 yを、結果がオイル異常であれば対処 Xと対処 y を行う」という出力となり、次力 「対処 x=l、対処 y=l、対処 a = 0、対処 b = 0」(「ォ ィルを交換する」、「ボルトを締め直す」)、「対処 x = 0、対処 y=l、対処 a = 0、対処 b =0」(「ボルトを締め直す」)、「対処 x=l、対処 y=0」(「オイルを交換する」)が出力 される。
[0229] このように、診断結果を対処に反映させることによって、より優れた診断対処案リスト を対処案評価部 6が出力することが可能となる。
[0230] 又、原因 Gで示される診断の結果の確率は、本実施例のようにベイジアンネットヮー クから取得しても良いし、事象分析対処システム 1で固定的に持っていても良いし、 外部からその数値を取得しても良い。このようにベイジアンネットワークで診断結果の 確率を持たない場合には、確率テーブル 7の原因 Gは不要となる。
[0231] 更に、診断の結果は、本実施例のように対処 a、対処 bとして扱うことも出来るし、事 象 Xや事象 Yの出現や消失として扱うことも出来る。具体的には、例えば「対処 Xを行 つて事象 Xがなくなった場合と、事象 Xがなくならなかった場合」のようにべイジアンネ ットワークで評価を行うことが出来る。
実施例 5
[0232] 実施例 4に於いては、診断が一つ(診断 Pのみ)を行う場合を説明したが、この診断 が複数あってもよい。即ち診断 P、診断 Qを行い、その結果に応じて対処が別れる場 合であったも良い。このような場合、確率テーブル 7には診断 P、診断 Qの結果に応じ た対処が図 8の診断 Pのように、診断 Qについても記録されている。従って実施例 4と 同様に、全ての診断 P、診断 Qの場合について評価値を算出して、その有効性の比 較を行うことが出来るが、診断の組合せに着目することによって、効率的に評価値を 算出することも出来る。この場合を本実施例で示す。
[0233] 例えば診断が 2つ(診断 P、診断 Q)を行い、その診断 Pの結果として対処 a、対処 b の 2つの場合、診断 Qの結果として対処 c、対処 dの 2つの場合を例とする。この場合 、診断付評価関数処理部 8が算出すべき評価値としては、「診断を行わない場合の 各対処に対する評価値」、「診断 Pのみを行う場合の対処に対する評価値」、「診断 Q のみを行う場合の対処に対する評価値」、「診断 Pを行いその結果によって診断 Qを 行う場合の対処に対する評価値」、「診断 Qを行いその結果によって診断 Pを行う場 合の対処に対する評価値」の各場合に於ける評価値を算出し、対処案評価部 6でそ の有効性の比較を行う必要がある。
[0234] 「診断を行わない場合の各対処に対する評価値」は実施例 1乃至実施例 3と同様に 算出でき、「診断 Pのみを行う場合の対処に対する評価値」、「診断 Qのみを行う場合
の対処に対する評価値」は、実施例 4と同様に算出できる。従って「診断 Pを行いその 結果によって診断 Qを行う場合の対処に対する評価値」、「診断 Qを行いその結果に よって診断 Pを行う場合の対処に対する評価値」につレ、て説明する。
[0235] これを概念的に示すと図 9のようなツリー構造となる。即ち「診断 Pの結果が対処 aで あった場合であり、診断 Qの結果が対処 cの場合」、「診断 Pの結果が対処 bであった 場合であり、診断 Qの結果が対処 dの場合」、「診断 Pの結果が対処 bであった場合で あり、診断 Qの結果が対処 cの場合」、「診断 Pの結果が対処 bであった場合であり、診 断 Qの結果が対処 dの場合」、「診断 Qの結果が対処 cであった場合であり、診断 Pの 結果が対処 aの場合」、「診断 Qの結果が対処 cであった場合であり、診断 Pの結果が 対処 bの場合」、「診断 Qの結果が対処 dであった場合であり、診断 Pの結果が対処 a の場合」、「診断 Qの結果が対処 dであった場合であり、診断 Pの結果が対処 bの場合 」の 8通りとなる。
[0236] まず診断 Pの結果が対処 aの場合((1)の場合)の評価値を得るためには、診断 Qを 行うか否力を診断付評価関数処理部 8で算出する必要がある。そこで(1)の場合に 於いて、診断 Qの結果に応じて最善の対処を行った場合の評価値をまず診断付評 価関数処理部 8が算出する。即ち、(5)の場合と(6)の場合の評価値とを実施例 4と 同様に算出し、診断 Qの結果の確率で加重平均を算出することによって得られる。
[0237] この値が「診断 Qを行わない場合の評価値」を上回れば、 (1)の場合に於いて診断 Qを行うべきであると算出することが出来、(1)の評価値は、「診断 Pを行いその結果 によって診断 Qを行う場合の対処に対する評価値」の場合のものと、診断付評価関数 処理部 8はすることが出来る。
[0238] (1)の場合のみでは、診断 Pの結果が対処 aであった場合の評価値しか算出してい ないので、更に(2)に於いて診断 Pの結果が対処 bであった場合の評価値を診断付 評価関数処理部 8が算出する。この算出は、上述と同様に、(7)の場合と(8)の場合 の評価値とを実施例 4と同様に算出し、診断 Qの結果の確率で加重平均を算出する ことによって得られる。
[0239] この値が「診断 Qを行わない場合の評価値」を上回れば、 (2)の場合に於いて診断 Qを行うべきであると算出することが出来、(2)の評価値は、「診断 Pを行いその結果
によって診断 Qを行う場合の対処に対する評価値」の場合のものと、診断付評価関数 処理部 8はすることが出来る。
[0240] 上述の診断付評価関数処理部 8の処理によって、診断 Pの全ての結果に対して評 価値が算出できたので、更に診断付評価関数処理部 8は、(1)の評価値と(2)の評 価値とを診断 Pの確率で加重平均を算出する。
[0241] 診断付評価関数処理部 8は、 (1)の場合と(2)の場合と同様に、診断 Qを先に行つ た場合の評価値を求める。即ち、(3)の場合の評価値は、(9)と(10)の場合の評価 値を算出し、それに診断 Pの結果の確率で加重平均を算出する。同様に (4)の場合 の評価値は(11)と(12)の場合の評価値を算出し、それに診断 Pの確率で加重平均 を算出する。このようにして算出した(3)と(4)の場合の評価値を診断 Qの確率で加 重平均を算出することによって行える。
[0242] 尚、本実施例では診断が 2つで、各々の診断結果が 2つである場合を示したが、診 断が 3つ以上ある場合でも上述と同様の処理を、例えば再帰処理を利用することで 実行可能である。診断結果が 3以上ある場合もその各診断結果に対する評価値を、 診断の確率で加重平均を算出することで実行可能である。
[0243] このような処理プロセスを診断付評価関数処理部 8で実行し、その結果を対処案評 価部 6に記憶することによって、診断のあらゆる組合せを網羅しつつ、処理を減らす ことが可能となる。
[0244] 本発明に於ける各手段、テーブルは、その機能が論理的に区別されているのみで あって、物理上あるいは事実上は同一の領域を為していても良レ、。又テーブルの代 わりにデータベース、データファイルであっても良いことは言うまでもなぐテーブルと の記載にはデータベース、データファイルをも含んでいる。
[0245] 尚、本発明を実施するにあたり本実施態様の機能を実現するソフトウェアのプロダラ ムを記録した記憶媒体をシステムに供給し、そのシステムのコンピュータが記憶媒体 に格納されたプログラムを読み出し実行することによって実現されることは当然である
[0246] この場合、記憶媒体から読み出されたプログラム自体が前記した実施態様の機能 を実現することとなり、そのプログラムを記憶した記憶媒体は本発明を当然のことなが
ら構成することになる。
[0247] プログラムを供給する為の記憶媒体としては、例えば磁気ディスク、ハードディスク、 光ディスク、光磁気ディスク、磁気テープ、不揮発性のメモリカード等を使用すること ができる。又、記憶媒体に記録する以外にも、インターネット等のネットワークを介して 、当該プログラムをダウンロードできるようにしても良い。
[0248] 又、コンピュータが読み出したプログラムを実行することにより、上述した実施態様 の機能が実現されるだけではなぐそのプログラムの指示に基づき、コンピュータ上で 稼働しているオペレーティングシステムなどが実際の処理の一部又は全部を行レ、、そ の処理によって前記した実施態様の機能が実現される場合も含まれることは言うまで もなレ、。又、この際に、ネットワーク上のサーバ等が処理の一部又は全部を行っても 良い。
[0249] 更に、記憶媒体から読み出されたプログラムが、コンピュータに揷入された機能拡 張ボードやコンピュータに接続された機能拡張ユニットに備わる不揮発性あるいは揮 発性の記憶手段に書き込まれた後、そのプログラムの指示に基づき、機能拡張ボー ドあるいは機能拡張ユニットに備わる演算処理装置などが実際の処理の一部あるい は全部を行い、その処理により前記した実施態様の機能が実現される場合も含まれ ることは当然である。
産業上の利用可能性
[0250] 従来のベイジアンネットワークを用いた処理では、単に確率分布を出力値としてい たのであるが、本発明を用いることによって、最適と思われる対処方法を出力すること が出来る。つまり出力される対処の組合せの序列化が可能になる。