(57)【要約】【課題】ユーザのニーズに応じて、要因の推定性能を向上できる要因推定装置を提供する。【解決手段】要因推定装置は、知データベースを使って推論を行う（Ｓ１）。推論結果から課題を抽出する（Ｓ２）。評価を行い、課題が発見された場合に（Ｓ３でＹＥＳ、Ｓ４）、それぞれの課題を解決するための修正箇所の特定、修正内容の入力へ進む。課題がない場合は終了する。ここで課題は、正解がない（Ｓ５）、正解の順位が低い（Ｓ６）、および、関係のない要因がある（Ｓ７）のいずれかとする。【選択図】図３
2009223550.tif 000002
【特許請求の範囲】
【請求項１】
発生した不良に対して、その要因を推定する要因推定装置であって、
不良に対する要因を推定する知識を保存する知識ベースと、
前記知識ベースに基づいて、発生した現象に対応する不良の要因を推定する推定する推定手段と、
前記推定手段による推定結果に応じて、前記知識ベースをユーザに改定させる改定手段と、
前記改定手段によって改定された前記知識ベースに基づいて、前記推定手段によって推定された不良の要因と、人が判断した不良の要因との差が小さくなったか否かをユーザに評価させる評価手段とを含む、要因推定装置。  
【請求項２】
前記改定手段は、前記推定手段による推定結果に基づいてユーザに前記知識ベースの課題を抽出させる課題抽出手段を含む、請求項１に記載の要因推定装置。
【請求項３】
前記課題は、前記知識ベースに知識が不足している、または、知識が誤っているという課題を含む、請求項２に記載の要因推定装置。
【請求項４】
前記課題は、前記知識ベースの有する不良と要因との間の因果関係の正しさ、因果関係に関連する現象が実際に発生しているか否かの判断の正しさ、因果関係に影響する現象と因果関係との関係の正しさ、または、現象の発生確率や、現象と因果関係との関係の強さに関する課題を含む、請求項２または３に記載の要因推定装置。
【請求項５】
前記改定手段は表示部を有し、前記表示部に不良と要因との因果関係に関連する現象を提示してユーザに前記知識ベースを改定させる、請求項１から４のいずれかに記載の要因推定装置。
【請求項６】
発生した不良に対して、その要因を推定する要因推定の改定方法であって、
（ａ）不良に対する要因を知識として保存する知識ベースに基づいて、不良の要因を推定するステップと、
（ｂ）推定ステップにおける推定結果に基づいて、知識ベースをユーザに改定させるステップと、
（ｃ）改定された知識ベースに基づいて推定された不良の要因と、実際の不良要因との差が小さくなったか否かをユーザに評価させるステップと、
（ａ）〜（ｃ）に示すステップを、所定の条件を満足するまで繰り返すステップと、を含む、要因推定方法。
【請求項７】
推定結果に基づいて、知識ベースをユーザに改定させるステップは、ユーザに課題を抽出させるステップと、抽出された課題に基づいて知識ベースを改定するステップとを含む、請求項６に記載の要因推定方法。
【請求項８】
知識ベースを改訂させるステップは、抽出された課題に基づいて、不良と要因との因果関係の正しさ、不良と要因との因果関係に影響する現象が起きているか否かの判断の正しさ、因果関係に影響する現象と因果関係との関係の正しさ、および、因果関係に影響する現象の発生確率や、因果関係に影響する現象と因果関係との関係の強さの順に改訂するステップを含む請求項７に記載の要因推定方法。
【請求項９】
請求項６から８に記載の方法を、コンピュータに実行させるプログラム。
【請求項１０】
請求項９に記載のプログラムを格納したコンピュータ読取可能記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、要因推定装置、要因推定方法、プログラムおよびコンピュータ読取可能記録媒体に関し、特に、推定性能を上げることができる要因推定装置、要因推定方法、プログラムおよびコンピュータ読取可能記録媒体に関する。
【背景技術】
【０００２】
従来の、実装工程等における不良要因を推定する推定装置が、たとえば、特許第３５１１６３２号公報（以下、「特許文献１」という）、特開２００７−２５７２８５号公報（以下、［特許文献２］という）、および、特開２００３−２２８４８５号公報（以下、「特許文献３」という）に開示されている。特許文献１には、不良と各工程で検出できる不具合に注目し、あらかじめ不良と各工程の不具合、要因の関連する可能性の知識を作成し、その知識と各工程の不具合の発生頻度から自動的に要因を推定する要因推定装置が開示されている。特許文献２は、要因推定に用いる知識をマトリックス表によって編集することが可能な要因推定装置を開示している。特許文献３によれば、あらかじめ用意した診断木と計測項目などから自動的に故障モード影響解析図を作成し、さらに故障モード影響解析図と過去の故障事例データから故障診断ルールを作成する要因推定装置を開示している。作成した診断ルールに対して、データベースを用いて抜けのチェックをしたり、模擬データを用いることで診断ルールのチェックを行っている。
【特許文献１】特許第３５１１６３２号公報（段落番号０００９等）
【特許文献２】特開２００７−２５７２８５号公報（段落番号００１１等）
【特許文献３】特開２００３−２２８４８５号公報（段落番号０００７等）
【発明の開示】
【発明が解決しようとする課題】
【０００３】
従来の実装工程等における不良の要因を推定する不良要因推定装置は上記のように構成されていた。特許文献１によれば、知識はネットワーク構造で記述されるため、不良と各工程で発生する不具合、要因などの数が増えると要素の関係が複雑になる。そのため、求める結果と推論結果が異なる場合にその差を小さくするための知識の編集が困難になるという問題があった。
【０００４】
特許文献２によれば、ユーザの思うとおりの要因が、思うとおりの順番で表示されない場合にユーザが知識を改良しようとするが、この装置では、どこを改訂すれば望む結果が得られるか分からない。そのため、改訂漏れが出たり、適切でない箇所を改訂したりしてしまうという問題があった。
【０００５】
特許文献３によれば、正常時のデータを利用して模擬診断を行っているが、異なるユーザが行う場合や、実データで行う場合には対処できないという問題や、唯一つの結果が得られるような単純なシステムであればよいが、診断結果が複数の順位付けられた原因となる場合、求める診断結果のための知識の改訂は簡単ではない、という問題があった。
【０００６】
すなわち、従来の要因推定システムにおいては、最初にシステム開発者が知識データベースを作成したり、または、自動学習によって知識データベースを作成するが、その知識データベースではユーザ、特に知識データベースを作成したユーザ以外のユーザにとっては思うとおりの要因が思うとおりの順番で表示されないことがある。そこでユーザが知識データベースを改良したいが、知識の漏れが生じたり、適切でない箇所を改訂してしまい、要因推定の性能が向上しない、という問題があった。
【０００７】
この発明は、上記のような問題点に着目してなされたもので、ユーザのニーズに応じて、要因の推定性能を向上できる、要因推定装置、要因推定方法、プログラム、およびプログラムを格納したコンピュータ読取可能記録媒体を提供することを目的とする。
【課題を解決するための手段】
【０００８】
この発明に係る、発生した不良に対して、その要因を推定する要因推定装置は、不良に対する要因を推定する知識を保存する知識ベースと、知識ベースに基づいて、発生した現象に対応する不良の要因を推定する推定する推定手段と、推定手段による推定結果に応じて、知識ベースをユーザに改定させる改定手段と、改定手段によって改定された知識ベースに基づいて、推定手段によって推定された不良の要因と、人が判断した不良の要因との差が小さくなったか否かをユーザに評価させる評価手段とを含む。  
【０００９】
この発明においては、ユーザが知識ベースを改定するときは、不良に対する推論結果と、実際の原因との差が小さくなるように知識ベースを改定する推論性能が上がる。
【００１０】
その結果、ユーザのニーズに応じて、要因の推定性能を向上できる要因推定装置が提供できる。
【００１１】
好ましくは、改定手段は、推定手段による推定結果に基づいてユーザに知識ベースの課題を抽出させる課題抽出手段を含む。
【００１２】
さらに好ましくは、課題は、知識ベースに知識が不足している、または、知識が誤っているという課題を含む。
【００１３】
課題は、知識ベースの有する不良と要因との間の因果関係の正しさ、因果関係に関連する現象が実際に発生しているか否かの判断の正しさ、因果関係に影響する現象と因果関係との関係の正しさ、または、現象の発生確率や、現象と因果関係との関係の強さに関する課題を含んでもよい。
【００１４】
改定手段は表示部を有し、表示部に不良と要因との因果関係に関連する現象を提示してユーザに知識ベースを改定させてもよい。
【００１５】
この発明の他の局面においては、発生した不良に対して、その要因を推定する要因推定方法は、（ａ）不良に対する要因を知識として保存する知識ベースに基づいて、不良の要因を推定する推定するステップと、（ｂ）推定ステップにおける推定結果に基づいて、知識ベースをユーザに改定させるステップと、（ｃ）改定された知識ベースに基づいて推定された不良の要因と、実際の不良要因との差が小さくなったか否かをユーザに評価させるステップと、（ａ）〜（ｃ）に示すステップを所定の条件を満足するまで繰り返すステップとを含む。
【００１６】
好ましくは、推定結果に基づいて、知識ベースをユーザに改定させるステップは、ユーザに課題を抽出させるステップと、抽出された課題に基づいて知識ベースを改定するステップとを含む。
【００１７】
さらに好ましくは、知識ベースを改訂させるステップは、抽出された課題に基づいて、不良と要因との因果関係の正しさ、不良と要因との因果関係に影響する現象が起きているか否かの判断の正しさ、因果関係に影響する現象と因果関係との関係の正しさ、および、因果関係に影響する現象の発生確率や、因果関係に影響する現象と因果関係との関係の強さの順に改訂するステップを含む。
【００１８】
この発明のさらに他の局面においては、プログラムは、上記の要因推定方法をコンピュータに実行させる。
【００１９】
また、上記プログラムは、コンピュータ読取可能記録媒体に格納されてもよい。
【発明を実施するための最良の形態】
【００２０】
以下、この発明の一実施の形態を、図面を参照して説明する。図１はこの実施の形態に係る要因推定装置の要部を示す機能ブロック図である。要因推定装置１０は、たとえば、表面実装装置における製造工程等で生じた不良の原因を、推論エンジンを用いて推定する装置である。図１を参照して、要因推定装置１０は、要因推定部１１と、要因推定部１１に接続され、製造工程等に設けられた図示のない検査装置からのセンシングデータや特徴量を入力するデータ入力部２１と、要因の推定結果をユーザに表示等するとともに、ユーザからの入力を受付けるユーザ入出力部２２とを含む。
【００２１】
要因推定部１１は、製造工程等で生じた不良等の現象に関する要因等の推定を行う推論エンジン１２と、推論エンジン１２が推論するための知識を保存したデータベースである、知識ベース（１３と、ユーザ入出力部２２へ出力等するためのインターフェイスとなるＧＵＩ（Graphical User Interface)を準備するＧＵＩ作成部１４とを含む。ＧＵＩ作成部１４が入出力部２２に接続されている。要因推定部１１は、具体的には、ＣＰＵ１５を有するコンピュータであり、推論エンジン１２はプログラムであり、知識ベース１３は図示のないハードディスク等の格納手段に格納されたデータベースである。ここで、推論エンジン１２は推定手段として機能する。また、ユーザ入出力部２２はユーザにデータ等を表示するディスプレイのような表示部を含む。
【００２２】
次に、知識ベース１５の構成について説明する。この実施の形態において使用される知識ベース１５は、一般的に用いられている、ネットワーク型である。以降の説明のために、その構造を次のように定義する。図２は知識構造を示す図である。（Ａ）は最も基本的な知識構造である。不良と、その不良を引き起こす要因を、矢印で結んでいる。不良や要因は、複数設けることができる。また、要因を引き起こす原因となる要因を、さらに設け、図２（Ｂ）に示すように多段階に構成することもできる。以降、不良と直接結ばれた要因を一次要因、一次要因と結ばれた要因を二次要因と呼ぶ。矢印には、結ばれた要因が存在する可能性判断する現象を、その原因がどの程度その要因に関係あるかという情報とともに関連付けられる。これを、以後、診断知識と呼ぶ。
【００２３】
一般的に、矢印で結ばれる、不良、一次要因、二次要因などノード、ノードを結ぶ矢印はアークと呼ばれる。また、ある二次要因からある不良に至るノードの組は、パスと呼ばれる。
【００２４】
診断知識に、実際に起こった現象を適用すると、ある要因が存在する可能性を示すスコアを算出することができる。１つの要因の診断には、一般的に診断知識が複数用いられるので、それらのスコアの合計がある要因の可能性を示すスコアとなる。以後、区別するため、１つの診断知識によって算出されたスコアを個別スコアと呼ぶことにする。
【００２５】
個別スコアは、たとえば、（現象が発生している程度）×（その現象が要因の可能性を上下させる度合い）で求める。ここでは、（その現象が要因の可能性を上下させる度合い）を個別スコア係数と呼ぶことにする。例として、表面実装装置において、部品ずれが基板全体で発生していたら、部品を搭載するノズルが破損している可能性が非常に高いという知識があったとして、この個別スコア係数を１．０と定めたとする。実際に部品ずれ不良が発生した際に、部品ずれが全体の６割で発生しており、その現象が発生している程度を０．６と算出したとする。このとき、個別スコアは、０．６×１．０＝０．６となる。
【００２６】
現象の程度は、要因推定装置の設けられた、ある製造工程における検査装置等からデータ入出力部２２を経由して得られたセンシングデータを、特徴量抽出等の処理を行って算出する。あるいは、ＧＵＩ１４などによりユーザと対話することで取得してもよい。
【００２７】
次に、このように整然と整理された知識ベース１５の知識を改定する場合の処理について説明する。図３は知識ベースを改定する場合の処理を示すフローチャートである。まず、ユーザは、ある製造工程における不良の原因を要因推定装置１０を用いて推定する。要因推定装置１０は、知識ベース１３を使って推論を行う（ステップＳ１、以下、ステップを省略する）。ユーザは推論結果を見て、自分の思っているような要因がえられなかったときは、知識ベースに課題があると考える。このようにして、ユーザは知識ベースの課題を抽出する（Ｓ２）。ユーザが課題を発見したときは（Ｓ３でＹＥＳ、Ｓ４）、課題毎の処理を行う。具体的には、それぞれの課題を解決するための修正箇所の特定、修正内容の入力を行う。課題がない場合は（Ｓ３でＮＯ）、処理を終了する。ここで課題は、知識ベースに正解がない（Ｓ５）、知識ベースにおける正解の順位が、ユーザが考えているレベルより低い（Ｓ６）、および、ユーザが考えて関係のない要因がある（Ｓ７）のいずれかとする。なお、ある要因がユーザの考えているレベルより高い場合もあるが、他の順位が低い要因の順位を上げる処理で、同等の効果が得られるので、本実施の形態では対象外とする。課題として、「ユーザが考えているレベルより高い」を加えてもよい。
【００２８】
こうして知識ベースを修正した後は（Ｓ８でＹＥＳ）、改定された知識ベースを用いた推論を実施し、未だ知識ベースの課題が残っているか否かを判断する（Ｓ１からＳ３へ戻る）。そして、ユーザが意図したような推論結果が得られれば（Ｓ３でＮＯ）、処理を終了し、そうでなければ、上記の処理をユーザが納得するまで繰り返す。すなわち、ユーザは自分が意図した不良要因が推論エンジン１２によって抽出されるように、推定された不良要因と人が判断した不良要因（人が実際の不良要因であると考える要因）との差が小さくなったか否かを評価し、推定された不良要因が実際の不良要因に少しでも近づくよう、知識ベースを改定する。したがって、ＣＰＵ１５は、改定手段、評価手段、課題抽出手段として作動する。
【００２９】
ここでユーザは基本的に不良の要因として実際の不良要因が抽出されるように知識ベースを改定する、または、できるだけ、実際の不良要因に近い要因が抽出されるように知識ベースを改定する。したがって、そのためには、該当する製造工程に対するエキスパートが知識ベースを改定するのが好ましい。
【００３０】
次に、それぞれの場合における修正箇所の特定と修正内容の入力について説明する。図４（Ａ）〜（Ｃ）は、課題として、「正解がない」、「正解の順位が低い」、および、「関係のない要因がある」、それぞれの場合における処理内容を示すフローチャートである。図４（Ａ）を参照して、正解がない場合は、因果関係の正しさを検討し、必要に応じて修正を実施する（Ｓ５１）。修正を実施したのであれば（Ｓ５２でＹＥＳ）処理を終了する。修正がなければ（Ｓ５２でＮＯ）、判断の正しさを検討し、必要に応じて修正を実施する（Ｓ５３）。修正を実施したのであれば（Ｓ５４でＹＥＳ）、処理を終了する。修正がなければ（Ｓ５４でＮＯ）、診断知識の正しさを検討する（Ｓ５５）。
【００３１】
図４（Ｂ）を参照して、「正解の順位が低い」場合は、判断の正しさを検討し、必要に応じて修正を実施する（Ｓ６１）。修正を実施したのであれば（Ｓ６２でＹＥＳ）、処理を終了する。修正がなければ（Ｓ６２でＮＯ）、診断知識の正しさを検討し、必要に応じて修正を実施する（Ｓ６３）。修正を実施したのであれば（Ｓ６４でＹＥＳ）、処理を終了する。修正がなければ（Ｓ６４でＮＯ）、診断知識の不足処理を行う（Ｓ６５）。
【００３２】
図４（Ｃ）を参照して、「関係のない要因がある」場合は、因果関係の正しさを検討し、必要に応じて修正を実施する（Ｓ７３）。修正を実施したのであれば（Ｓ７４でＹＥＳ）処理を終了する。修正がなければ（Ｓ７４でＮＯ）、診断知識の正しさを検討し、必要に応じて修正を実施する（Ｓ７５）。修正を実施したのであれば（Ｓ７６でＹＥＳ）、処理を終了する。修正がなければ（Ｓ７６でＮＯ）、診断知識の不足処理を行う（Ｓ７７）。
【００３３】
なお、課題としては、上記以外に、現象の発生確率や、現象と因果関係との関係の強さに関する課題を含んでもよい。
【００３４】
次に、上記した各処理の詳細について説明する。まず、図４において示した「因果関係の正しさ」処理の内容について説明する。図５は、この場合の処理内容を示すフローチャートである。図５（Ａ）は、図４（Ａ）においてＳ５１で示した、「正解がない場合」の「因果関係の正しさ」処理内容を示す。図５（Ａ）を参照して、不良と因果関係があるが、推論結果に含まれなかった一つ、あるいは複数のパスをユーザに提示する（Ｓ５１１）。ユーザが提示されたパスから正解のパスを選択する（Ｓ５１２）。選択されたかどうかをＣＰＵ１５が判断する（Ｓ５１３）。選択されたときは処理を修了し（Ｓ５１３でＹＥＳ）、選択されなかったときは（Ｓ５１３でＮＯ）、ユーザが知識ベースに正解のパス（既存のノード、あるいは新規のノード）を追加することによって知識ベースの修正を行う（Ｓ５１４）。
【００３５】
図５（Ｂ）は、図４（Ｃ）においてＳ７１で示した、「関係のない要因がある」場合の因果関係の正しさ処理内容を示す。図５（Ｂ）を参照して、推論結果に含まれる関係のない要因と因果関係がある、一つ、あるいは複数のパスをユーザに提示する（Ｓ７１１）。ユーザが提示されたパスから因果関係がないパスを選択する（Ｓ７１２）。選択されたかどうかをＣＰＵ１５が判断する（Ｓ７１３）。選択されたときは（Ｓ７１３でＹＥＳ）、ユーザが関係のないパスの因果関係を削除することによって修正を行う（Ｓ７１４）。選択されなかったときは（Ｓ７１３でＮＯ）、処理を終了する。
【００３６】
次に、図４のＳ５３、Ｓ６１，Ｓ７３で示した「判断の正しさ」処理について説明する。図６はこの場合の処理を示すフローチャートである。図６を参照して、この場合においては、「正解がない」場合、および、「正解の順位が低い」場合には正解要因のパスの中で要因を否定している現象の説明と、現象に関する情報（グラフや画像など）があればそれも一緒にユーザに提示する（Ｓ６１１）。なお、関係のない要因がある場合には、関係のない要因のパスを肯定している現象の説明と、現象に関する情報（グラフや画像など）をユーザに提示する。ユーザは提示された現象の判断が正しいかどうかを入力する（Ｓ６１２）。ＣＰＵ１５が、入力が正しいか正しくないか判断する（Ｓ６１３）。ユーザが正しい判断を入力する（Ｓ６１４）。Ｓ６１３で正しいと判断されたときは、他にも現象があるか否かを判断し（Ｓ６１５）、ある場合には（Ｓ６１５で「ある」）、Ｓ６１１へ戻り処理を繰り返す。ない場合には（Ｓ６１５で「ない」）、処理を終了する。Ｓ６１３で正しくないと判断されたときは、ユーザが正しい判断を入力し（Ｓ６１４）、他にも現象があるか否かを判断し（Ｓ６１５）、ある場合には（Ｓ６１５で「ある」）、Ｓ６１１へ戻り、処理を繰り返す。ない場合には（Ｓ６１５で「ない」）、処理を終了する。
【００３７】
図７は図４において、Ｓ５５、Ｓ６３、および、Ｓ７５で示した「診断知識の正しさ」処理の内容を示すフローチャートである。図７を参照して、この処理においては、まず、「正解がない」場合、および、「正解の順位が低い場合」には正解要因のパスと、そのパスの中で要因を否定している診断知識を示すパスと、その中の診断知識をユーザに提示する。診断知識は、その診断知識が関連づいている因果関係、要因を肯定するか否定するか、現象の説明、もしあれば現象に関する情報（グラフや画像など）を提示する（Ｓ７５１）。なお、関係のない原因がある場合には、関係のない要因のパスと、そのパスを肯定している診断知識をユーザに提示する。
【００３８】
次にユーザは、提示された診断知識（その現象で要因を肯定するか否定するか）が正しいかどうかを入力する（Ｓ７５２）。ここで正しいというのはユーザと判断が一致していることであり、逆はユーザと判断が逆であることを意味し、無関係というのはユーザがその現象と要因は無関係という判断をすることを意味する。次に、ＣＰＵ１５がＳ７５２の入力を判断する（Ｓ７５３）。Ｓ７５３で「無関係」が入力されれば、診断知識の個別スコア算出係数を０にするという修正を行い（Ｓ７５４）、処理を終了する。「逆」が入力されれば（Ｓ７５３で「逆」）、個別スコア算出係数のプラスマイナスを逆にするという修正を行い（Ｓ７５５）、処理を終了する。
【００３９】
「正しい」が入力されれば（Ｓ７５３で「正しい」）、他にも診断知識があるか否かを判断する（Ｓ７５６）。他にも診断知識があれば（Ｓ７５６で「ある」）、処理はＳ７５１へ戻り、処理を繰り返す。なければ（Ｓ７５６で「ない」）、処理を終了する。
【００４０】
図８は図４において、Ｓ６５、および、Ｓ７７で示した「診断知識の不足」処理の内容を示すフローチャートである。図８を参照して、この処理においては、まず、対象のパスと、対象のパスの診断知識として使われていないが、知識ベースに定義されている現象をユーザに提示する（Ｓ７７１）。もしあれば、現象に関する実際に観測された情報（グラフや画像など）を提示する。提示された現象を診断知識に追加可能かどうかをユーザが判断する（Ｓ７７２）。可能であると判断すれば（Ｓ７７２でＹＥＳ）、診断知識を追加する因果関係を選択し、その因果関係が提示されている現象によって肯定されるのか否定されるのかを指定することによってユーザがパスと診断知識の関係を入力して、修正を行い（Ｓ７７３）、処理を終了する。
【００４１】
Ｓ７７２で診断の追加が不能であると判断したときは（Ｓ７７２でＮＯ）、対象のパスと、対象のパスの診断知識として使われていないが、知識ベースに定義されている現象で、まだユーザに提示していない現象があるかを判断する（Ｓ７７４）。ほかに現象がなければ（Ｓ７７４でＮＯ）、 知識ベースに定義されていない現象で、診断知識として追加可能なものがあるかどうかユーザが判断する（Ｓ７７５）。新しく登録する現象があると判断したときは（Ｓ７７５でＹＥＳ）、新しい現象の説明と判断を入力する。診断知識を追加する因果関係を選択し、その因果関係がその現象によって肯定されるのか否定されるのかを指定することによって、ユーザがパスと診断知識の関係を入力して修正を行い（Ｓ７７６）、処理を終了する。新しく登録する現象がないときは（Ｓ７７５でＮＯ）処理を終了する。
【００４２】
次に具体的な実際の処理例について説明する。図９はある不良に対する要因の推論結果を示す表示部の表示画面である。この画面を参照してユーザは知識ベースの改定を行う。ここでは、まず、知識ベースの課題を抽出するものとする。ここでは、電子部品実装装置の基板実装ラインにおける不良原因を特定する場合について説明する。
【００４３】
基板実装ラインを図１０に示す。図１０を参照して、基板実装ライン６０は、電子部品が実装される基板の流れる上流側から下流側に向かって配列された印刷（Print)工程と、マウント（Mount)工程と、リフロー（Reflow)工程とを含む。各工程間は、コンベヤ、ロボット、その他の搬送装置によって連結されている。各工程には、その工程の処理を行なうための装置が設けられている。
【００４４】
印刷工程には、基板にハンダを印刷するための印刷機６１と、印刷後の検査を行なう印刷後検査装置６２とが設けられる。マウント工程には、基板に部品をマウントするためのマウンタ６３と、マウント後の検査を行なうマウント後検査装置６４とが設けられる。リフロー工程には、部品の端子をランドにハンダ付けをするためのリフロー炉６５とハンダ付け後の検査を行なうリフロー後検査装置６６とが設けられる。
【００４５】
印刷機６１、印刷後検査装置６２、マウンタ６３、マウント後検査装置６４およびリフロー炉６５およびリフロー後検査装置６６は、それぞれ、ＬＡＮ６７を介して要因推定装置１０および検査情報蓄積装置６８に接続されている。
【００４６】
印刷後検査装置６２、マウント後検査装置６４、リフロー後検査装置６６からは、それぞれの工程における検査結果が検査画像を含めて、検査情報蓄積装置６８に送られて格納され、必要に応じて、要因推定装置１０から読出される。
【００４７】
ここで、不良としては、ブリッジ（部品の電極間を短絡するようにハンダが付着すること）、濡れ不良（ハンダとランド、又は、ハンダと部品の電極との接合に不具合があること）、フィレット異常（ハンダ量が多すぎたり少なすぎたりして、ハンダを断面から見たときの輪郭線がきれいな山型になっていないこと）、および部品無し（部品が存在しないこと）等がある。
【００４８】
要因推定装置１０は、検査装置にセンサが設けられているものは検査装置の検査結果データを、ないものは検査画像を、ユーザ入出力部２２を介してユーザに見せてその判断結果を入力させて推論を行う。
【００４９】
図９を参照して、推論結果３１としての要因が１位から３位まで表示されている。それぞれの要因には、「削除」ボタン３２と「順位を上げる」ボタン３３が設けられている。また、別途「正解を追加する」ボタン３４も設けられている。ユーザはこの推論結果を参照して、要因として関係がないと判断したときは、その要因の「削除」ボタン３２を押す。すると、その要因は削除される。正解の順位が低いと判断したときは、「順位を上げる」ボタン３３を押し、順位を上げる。推論結果３１の中に要因がないと判断したときは、「正解を追加」ボタン３４を押して正解を追加する。
【００５０】
次に、「因果関係の正しさ」を修正する場合について説明する。図１１はこの場合の処理を説明するための、表示部の画面の表示である。図１１を参照して、ここでは、表示画面は上段３６と下段３７とに分離され、上段３６には不良として「ブリッジ」が、その一次要因として「はんだ高すぎ」、「はんだツノ」、および、「はんだ面積大」が、二次要因として「スキージ傷あり」が表示されている。
【００５１】
このように、ユーザは特定のパスのみ抜き出して表示が可能である。表示形式は、図に示すように矢印で表示してもよいし、マトリックス状に表示してもよい。ここで特定のパスとは、正解がない場合には、不良と因果関係があるが、推論結果に含まれなかった一つ、あるいは複数のパスをいう。関係のない要因がある場合には、関係のない要因と因果関係がある、一つ、あるいは複数のパスをいう。
【００５２】
ここで、実線で示す矢印は因果関係があることを示し、点線は因果関係がないことを示す。これはユーザ、好ましくは、エキスパートが判断して切り替える。因果関係を入力したら、ＯＫボタンを押す。知識ベース１３の改訂が行われた場合は、後に図１５で説明する「知識改訂後の課題抽出」へ進む。
【００５３】
図１２は図６で示した判断の正しさ処理の具体例を示す図である。図１２を参照して、判断の正しさを検討する対象となる因果関係が上段３６に表示され、下段３７に、判断すべき現象３８と、推論時に入力された判断３９と、ユーザが判断するためのグラフや画像４０と、判断を入力させる「正しい」と「間違っている」の２つのボタン４１，４２が表示される。ユーザは表示されたデータを参照して、判断が正しいかどうかを判断する。
【００５４】
ここでは、上段３６には不良として「ブリッジ」が、その一次要因として「はんだ高すぎ」、「はんだツノ」が、二次要因として「スキージ傷あり」が表示されている。これらの間の因果関係は上記したように矢印で表示されている。下段３７には、「印刷面積が継続的に大きい」という現象と、判断と、ユーザが再判断するための特定の不良部品のデータが表示されている。ここではグラフが表示されているが、これに限らず、判断に必要な写真やデータが表示されてもよい。このように、課題の判断のために、実際に生じているユーザが見て理解できるデータを表示して知識ベースの改定を行うため、だれでも、簡単に知識ベースの改定が可能になる。
【００５５】
なお、要因間の因果関係の判断において、現象によって因果関係が肯定されるか否定されるかで因果関係を示す矢印を色分けして表示するのが好ましい。たとえば、可能性がアップする場合には赤で、可能性がダウンする場合は緑で、関係がない場合は黒で表示するのが好ましい。このようにしてユーザが判断を入力した結果、知識の改定が行われたとき（「間違っている」が押されたとき）は、後に図１５で説明する「知識改訂後の課題抽出」へ進む。
【００５６】
図１３は図６で示した「診断知識の正しさ」処理の具体例を示す図であり、表示内容は基本的に図１２の場合と同様である。図１３を参照して、知識ベースの正しさを検討する対象となる因果関係が上段３６に表示され、下段３７に、判断すべき現象と、推論時に入力された判断と、ユーザが判断するためのグラフや画像と、判断が正しいか否かをユーザに判断させるためのデータと判断を入力させる「ＯＫ」ボタン４３が表示される。ユーザはこれらのデータを参照して、判断が正しいかどうかを判断する。また、要因間の因果関係の判断において、現象によって因果関係が肯定されるか否定されるかで因果関係を示す矢印を色分けして表示するのが好ましい。
【００５７】
このようにしてユーザが判断を入力した結果、知識ベースの改定が行われたときは、後に図１５で説明する「知識改訂後の課題抽出」へ進む。
【００５８】
図１４は図８で示した「診断知識の不足」処理の具体例を示す図である。図１４（Ａ）は図８においてＳ７７１からＳ７７４で示した処理内容を示す図である。図１３で示したのと同様の画面において、対象のパスと、定義されている現象をユーザに表示する。ユーザはこの表示を見て診断知識の追加が必要であるか否かを判断し、必要と判断すれば、「追加」ボタン４４を押す。
【００５９】
なお、ここでも、要因間の因果関係の判断において、現象によって因果関係が肯定されるか否定されるかで因果関係を示す矢印を色分けして表示するのが好ましい。
【００６０】
この処理において、ユーザが新しく登録する現象があると判断したときは、図１４（Ｂ）に示す画面において、その現象と判断とを、現象入力箇所４５と判断入力箇所４６に入力し、「追加」ボタン４７を押す。
【００６１】
次に知識ベースの知識の改定が行われたときは、知識ベース改定後の課題の抽出を行う。図１５はこの場合の画面表示例を示す図である。知識ベースの改定が行われたときは、知識ベース改定前と改定後の推論結果４４を表示する。ここで、改定前において着目している、要因第２位の「スキージ磨耗あり」４６の表示は目立つように表示するのが好ましい。
【００６２】
また、ここでは上部に「改定必要」４５という文字が表示されている。「正解がない場合」と「関係のない要因がある場合」とはＣＰＵ１５が自動的に判断してこの表示を行う。「正解の順位が低い場合」はどこまで上がればよいのか、ユーザが判断するので、表示しない。課題があり、改定が必要な場合、図９の画面に戻り、「削除」ボタン３２、「順位を上げる」ボタン３３、「正解を追加」ボタン３４のいずれかを押して処理を続ける。
【００６３】
なお、上記実施の形態では、この発明に係る要因推定装置が、表面実装装置における不良内容の原因を推定する装置に適用された場合について説明したが、これに限らず、任意の製造装置における不良要因の推定装置やエキスパートシステムに適用されてもよい。
【００６４】
また、製造装置における不良要因の推定用の装置に限らず、任意の装置やシステムにおける、任意の物理現象に対する因果関係を特定する推定装置に適用できる。
【００６５】
また、上記実施の形態においては、特徴量の有無の判断を、ＧＵＩを用いて、ユーザとの対話によって得られたデータに基づいて行う場合について説明したが、これに限らず、製造工程等に設けられる検査装置からの検査情報をその閾値を用いて判断してもよい。
【００６６】
また、上記実施の形態においては、要因推定装置がその専用装置である場合について説明したが、これに限らず、装置を汎用のパソコンとし、上記の動作を全てプログラム化して、パソコンをそのプログラムで作動させて要因推定装置として使用してもよい。この場合、このプログラムは、光ディスクやハードディスクのような記録媒体で提供してもよいし、ネットワークを介して、ネット上のサーバからダウンロードするようにしてもよい。
【００６７】
以上、図面を参照してこの発明の実施形態を説明したが、この発明は、図示した実施形態のものに限定されない。図示された実施形態に対して、この発明と同一の範囲内において、あるいは均等の範囲内において、種々の修正や変形を加えることが可能である。
【図面の簡単な説明】
【００６８】
【図１】この発明に係る要因推定装置の機能ブロック図である。
【図２】不良と要因と現象との関係を示す図である。
【図３】要因推定装置の推定処理を示すフローチャートである。
【図４】課題ごとの処理内容を示すフローチャートである。
【図５】因果関係の正しさ処理におけるフローチャートである。
【図６】判断の正しさ処理におけるフローチャートである。
【図７】診断知識の正しさ処理におけるフローチャートである。
【図８】診断知識の不足処理におけるフローチャートである。
【図９】課題抽出時の具体的処理画面を示す図である。
【図１０】基板実装ラインを示す図である。
【図１１】因果関係の正しさ処理時の表示画面を示す図である。
【図１２】判断の正しさ処理時の表示画面である。
【図１３】診断知識の正しさ処理時の表示画面である。
【図１４】診断知識の不足処理時の表示画面である。
【図１５】知識ベース改定後表示画面を示す図である。
【符号の説明】
【００６９】
１０  要因推定装置、１１  要因推定部、１２  推論エンジン、１３  知識ベース、１４  ＧＵＩ、１５  ＣＰＵ、２１  データ入力部、２２  ユーザ入出力部。
【図１】
2009223550.tif 000003
【図２】
2009223550.tif 000004
【図３】
2009223550.tif 000005
【図４】
2009223550.tif 000006
【図５】
2009223550.tif 000007
【図６】
2009223550.tif 000008
【図７】
2009223550.tif 000009
【図８】
2009223550.tif 000010
【図９】
2009223550.tif 000011
【図１０】
2009223550.tif 000012
【図１１】
2009223550.tif 000013
【図１２】
2009223550.tif 000014
【図１３】
2009223550.tif 000015
【図１４】
2009223550.tif 000016
【図１５】
2009223550.tif 000017