以下、本実施の形態について図面を参照して説明する。なお各実施の形態は、矛盾のない範囲で複数の実施の形態を組み合わせて実施することができる。
〔第1の実施の形態〕
まず、第1の実施の形態について説明する。
図1は、第1の実施の形態に係る情報処理装置の一例を示す図である。第1の実施の形態では、情報処理装置10が、品質関連式生成方法を実施することで、複数の製品の品質に影響をおよぼす因子と製品の特性との関係を示す式(品質関連式)を生成する。例えば情報処理装置10は、品質関連式生成方法の手順が記述された品質関連式生成プログラムを実行することにより、品質関連式生成方法を実施する。
情報処理装置10は、記憶部11と処理部12とを有する。記憶部11は、例えば情報処理装置10が有するメモリ、またはストレージ装置である。処理部12は、例えば情報処理装置10が有するプロセッサ、または演算回路である。
記憶部11は、測定データ11aと品質データ11bとを有する。測定データ11aは、同種の複数の製品それぞれに対する作業中に物理量を測定した測定値の時間変化を示すデータである。品質データ11bは、複数の製品それぞれの品質を表す品質値を含むデータである。なお測定データ11a内に品質データ11bが含まれていてもよい。例えば、測定データ11a内の製品ごとの測定値のうちの最良値、または時間経過上の最終値を、品質データ11bにおける品質値としてもよい。
処理部12は、まず、値が未定の係数を含み、物理量の時間変化を表す複数の候補式を生成する。例えば処理部12は、複数の候補式を遺伝的プログラミングにより生成する。なお候補式は、物理量の時間変化を定量的に表すモデルの候補である。
次に処理部12は、測定データ11aと品質データ11bとに基づいて、生成した複数の候補式それぞれのスコア値を計算する。スコア値の計算手順は以下の通りである。
処理部12は、生成した複数の候補式それぞれを評価対象として順番に選択する。次に処理部12は、測定値に基づき評価対象の候補式の係数の係数値を製品ごとに決定する。例えば処理部12は、最小自乗法により、製品の測定値の変化を最も適確に表すような係数値を決定する。最小自乗法とは、残差の二乗和を最小とするような係数を決定する方法である。
製品ごとの係数値が決定すると、処理部12は、評価対象の候補式の製品ごとの係数値に基づいて、測定値に対する評価対象の候補式の適合度合いを示すマッチング係数を算出する。例えば処理部12は、評価対象の候補式に製品ごとの係数値を設定して得られる回帰式と製品ごとの測定値との残差を計算し、残差の絶対値の平均をマッチング係数とする。この場合、候補式が測定値に適合しているほど、マッチング係数の値が小さくなる。
次に処理部12は、評価対象の候補式の製品ごとの係数値と品質値との相関係数を算出する。相関係数は、相関関係が大きいほど、絶対値が大きくなる。そこで処理部12は、相関関係が大きいほど値が小さくなるように相関係数を修正した、修正相関係数を求める。例えば処理部12は、「1-相関係数の絶対値」を修正相関係数とする。
評価対象の候補式のマッチング係数と相関係数とを算出後、処理部12は、マッチング係数と相関係数とに基づいて、評価対象の候補式のスコア値を算出する。例えば処理部12は、評価対象の候補式について、マッチング係数と相関係数に応じた値(修正相関係数)との積を、評価対象の候補式のスコア値とする。評価対象の候補式に複数の係数が含まれる場合、処理部12は、例えば係数それぞれの相関係数の絶対値のうち、大きい方の値に応じた値(修正相関係数)と、マッチング係数との積を、評価対象の候補式のスコア値とする。
生成したすべての候補式のスコア値が求まると、処理部12は、複数の候補式それぞれのスコア値に基づいて、複数の候補式のなかから、複数の製品の品質に関係する係数を含む品質関連式を特定する。例えば処理部12は、スコア値が最小の候補式を、品質関連式として特定する。また処理部12は、スコア値が小さい方から所定数の候補式を、品質関連式としてもよい。
さらに処理部12は、複数の製品の理論上の性質を表す複数の理論式のなかから、品質関連式に類似する類似理論式を特定する。そして処理部12は類似理論式に含まれる係数の物理的な意味を出力する。品質関連式に複数の係数が含まれる場合、処理部12は、相関係数の絶対値が最も大きい(修正相関係数の値が最も小さい)係数に対応する、類似理論モデル内の係数の意味を出力する。例えば処理部12は、該当する係数の意味を、モニタなどの画面に表示させる。
このようにして、製品の品質に影響を及ぼす因子を高精度で特定することができる。例えば相関係数だけで品質関連式を特定すると、偶然に相関係数が高い候補式が存在する場合に、その候補式が品質関連式として特定されてしまう。このような候補式は、相関係数が偶然高いだけであるため、この候補式に含まれる係数と、製品の品質とに関係はない。そこで情報処理装置10では、相関係数とマッチング係数とを組み合わせてスコア値を算出している。マッチング係数の値が小さい(計測値に適合している)候補式は、製品の特性を表している。他方、偶然に相関係数が高くなった候補式は、製品の特性と関係が低いため計測値に適合せず、マッチング係数が大きくなる。その結果、偶然に相関係数が高くなった候補式が、品質関連式として誤って特定されることが抑止される。
製品の品質に関係する品質関連式を正しく特定できることにより、その品質関連式と類似する理論モデルに基づいて、品質に影響を及ぼす因子を高精度に特定することが可能となる。
なお処理部12は、マッチング係数と相関係数(または修正相関係数)に重みを付けて、スコア値を計算することもできる。重みの値は、例えばユーザが予め情報処理装置10に設定する。例えばユーザは、測定値に多くのノイズが含まれていることが分かっている場合、マッチング係数に対する重みを、相関係数の重みよりも小さくする。処理部12は、評価対象の候補式のマッチング係数と相関係数に応じた値それぞれに重みを乗算または除算し、重みの乗算または除算結果の和を、評価対象の候補式のスコア値とする。例えば処理部12は、品質との関連度が高い候補式ほどスコア値が大きくなるようにスコア値を算出する場合、マッチング係数と相関係数それぞれに重みを乗算する。他方、処理部12は、品質との関連度が高い候補式ほどスコア値が小さくなるようにスコア値を算出する場合、マッチング係数と相関係数それぞれを重みで除算する。
また処理部12は、複数の候補式間でのマッチング係数と相関係数との順位(ランキング)を決定し、評価対象の候補式のマッチング係数の順位と相関係数の順位とに基づいて、評価対象の候補式のスコア値を計算してもよい。順位に基づいてスコア値を計算することで、マッチング係数や相関係数との大きさ(オーダ)の違いにより、一方の値のみがスコア値に大きく反映してしまうことを抑止できる。例えば相関係数の絶対値は0以上1以下の範囲である。それに対して、マッチング係数は、どのような物理量の測定値なのかによって値の大きさ(オーダ)が変わる。順位に基づいてスコア値を計算すれば、値の大きさ(オーダ)の違いはなくなり、マッチング係数と相関係数とを対等に扱うことができる。
さらに処理部12は、複数の製品の特性に基づく物理量の計算式の基本構造を用いて、より高精度に、品質に影響を及ぼす因子を特定することもできる。例えば処理部12は、基本構造と評価対象の候補式との類似度に基づいて、評価対象の候補式の構造評価値を算出する。そして処理部12は、評価対象の候補式のマッチング係数と相関係数と構造評価値とに基づいて、評価対象の候補式のスコア値を算出する。例えば処理部12は、マッチング係数と相関係数に応じた値(修正相関係数)と構造評価値との積を、スコア値とする。また処理部12は、複数の候補式の間での、マッチング係数と相関係数と構造評価値それぞれの順位(ランキング)に基づいて、スコア値を算出することもできる。
基本構造と評価対象の候補式との類似度に応じた構造評価値を、スコア値に反映させることで、基本構造に近い候補式ほど、優良な値のスコア値を得ることができる。これにより、製品の性質を表す式が、複数の関数を含む複雑な式であったとしても、その式の基本構造を予め指定しておくことで、適切な品質関連式を特定することが可能となる。その結果、品質に影響を及ぼす因子を高精度に特定することができる。
〔第2の実施の形態〕
次に第2の実施の形態について説明する。第2の実施の形態は、電子機器組み立てラインのクーリングユニットの品質に影響を及ぼす因子を特定するものである。
図2は、第2の実施の形態のシステム構成例を示す図である。クーリングユニット1,2,・・・の製造現場には、クーリングユニット1,2,・・・に冷媒を充填するための冷媒充填装置30が設置されている。冷媒充填装置30には、コンピュータ100が接続されている。コンピュータ100は、クーリングユニット1,2,・・・への冷媒充填過程で測定したデータを冷媒充填装置30から取得し、取得したデータに基づいて、クーリングユニット1,2,・・・の品質に影響を及ぼす因子を解析する。
例えば作業者は、冷媒充填装置30からチューブで繋がれた冷媒注入カプラ31をクーリングユニット1に接続する。そして作業者が冷媒充填装置30の充填スタートスイッチを押すと、冷媒充填装置30は、接続されたクーリングユニット1内の冷媒注入空間に対する真空引きを行う。冷媒充填装置30は、真空度が規定値以上になると、冷媒注入空間に冷媒を注入する。作業者は、冷媒の注入が完了すると、クーリングユニット1から冷媒注入カプラ31を取り外す。このような一連の作業を各クーリングユニット1,2,・・・に対して行うことで、各クーリングユニット1,2,・・・に冷媒を注入することができる。
なおクーリングユニット1,2,・・・のなかには、冷媒注入空間の真空度が規定値に達しないものが存在する。その場合、冷媒充填装置30は、真空引き失敗と判定する。真空引きに失敗すると、作業者は、クーリングユニット製造ラインを一旦停止し、真空引きに失敗したクーリングユニットに対して再度の真空引きを実施する。
このように、真空引きの失敗は、製造ラインの停止要因となり、製造効率を悪化させる。そこで、第2の実施の形態では、コンピュータ100を用いて、真空引きの良否に影響を及ぼす因子を特定する。
図3は、コンピュータのハードウェアの一構成例を示す図である。コンピュータ100は、プロセッサ101によって装置全体が制御されている。プロセッサ101には、バス109を介してメモリ102と複数の周辺機器が接続されている。プロセッサ101は、マルチプロセッサであってもよい。プロセッサ101は、例えばCPU(Central Processing Unit)、MPU(Micro Processing Unit)、またはDSP(Digital Signal Processor)である。プロセッサ101がプログラムを実行することで実現する機能の少なくとも一部を、ASIC(Application Specific Integrated Circuit)、PLD(Programmable Logic Device)などの電子回路で実現してもよい。
メモリ102は、コンピュータ100の主記憶装置として使用される。メモリ102には、プロセッサ101に実行させるOS(Operating System)のプログラムやアプリケーションプログラムの少なくとも一部が一時的に格納される。また、メモリ102には、プロセッサ101による処理に利用する各種データが格納される。メモリ102としては、例えばRAM(Random Access Memory)などの揮発性の半導体記憶装置が使用される。
バス109に接続されている周辺機器としては、ストレージ装置103、グラフィック処理装置104、入力インタフェース105、光学ドライブ装置106、機器接続インタフェース107およびネットワークインタフェース108がある。
ストレージ装置103は、内蔵した記録媒体に対して、電気的または磁気的にデータの書き込みおよび読み出しを行う。ストレージ装置103は、コンピュータの補助記憶装置として使用される。ストレージ装置103には、OSのプログラム、アプリケーションプログラム、および各種データが格納される。なお、ストレージ装置103としては、例えばHDD(Hard Disk Drive)やSSD(Solid State Drive)を使用することができる。
グラフィック処理装置104には、モニタ21が接続されている。グラフィック処理装置104は、プロセッサ101からの命令に従って、画像をモニタ21の画面に表示させる。モニタ21としては、有機EL(Electro Luminescence)を用いた表示装置や液晶表示装置などがある。
入力インタフェース105には、キーボード22とマウス23とが接続されている。入力インタフェース105は、キーボード22やマウス23から送られてくる信号をプロセッサ101に送信する。なお、マウス23は、ポインティングデバイスの一例であり、他のポインティングデバイスを使用することもできる。他のポインティングデバイスとしては、タッチパネル、タブレット、タッチパッド、トラックボールなどがある。
光学ドライブ装置106は、レーザ光などを利用して、光ディスク24に記録されたデータの読み取りを行う。光ディスク24は、光の反射によって読み取り可能なようにデータが記録された可搬型の記録媒体である。光ディスク24には、DVD(Digital Versatile Disc)、DVD-RAM、CD-ROM(Compact Disc Read Only Memory)、CD-R(Recordable)/RW(ReWritable)などがある。
機器接続インタフェース107は、コンピュータ100に周辺機器を接続するための通信インタフェースである。例えば機器接続インタフェース107には、メモリ装置25やメモリリーダライタ26を接続することができる。メモリ装置25は、機器接続インタフェース107との通信機能を搭載した記録媒体である。メモリリーダライタ26は、メモリカード27へのデータの書き込み、またはメモリカード27からのデータの読み出しを行う装置である。メモリカード27は、カード型の記録媒体である。
ネットワークインタフェース108は、ネットワーク20に接続されている。ネットワークインタフェース108は、ネットワーク20を介して、他のコンピュータまたは通信機器との間でデータの送受信を行う。
コンピュータ100は、以上のようなハードウェア構成によって、第2の実施の形態の処理機能を実現することができる。なお、第1の実施の形態に示した装置も、図3に示したコンピュータ100と同様のハードウェアにより実現することができる。
コンピュータ100は、例えばコンピュータ読み取り可能な記録媒体に記録されたプログラムを実行することにより、第2の実施の形態の処理機能を実現する。コンピュータ100に実行させる処理内容を記述したプログラムは、様々な記録媒体に記録しておくことができる。例えば、コンピュータ100に実行させるプログラムをストレージ装置103に格納しておくことができる。プロセッサ101は、ストレージ装置103内のプログラムの少なくとも一部をメモリ102にロードし、プログラムを実行する。またコンピュータ100に実行させるプログラムを、光ディスク24、メモリ装置25、メモリカード27などの可搬型記録媒体に記録しておくこともできる。可搬型記録媒体に格納されたプログラムは、例えばプロセッサ101からの制御により、ストレージ装置103にインストールされた後、実行可能となる。またプロセッサ101が、可搬型記録媒体から直接プログラムを読み出して実行することもできる。
このようなハードウェアのコンピュータ100により、冷媒充填装置30が採取した製造データを解析し、不良品発生の原因である可能性がある因子が特定される。なお、第1の実施の形態に示した情報処理装置10も、コンピュータ100と同様のハードウェアによって実現することができる。
図4は、品質影響原因を特定するための各機器の機能の一例を示すブロック図である。冷媒充填装置30は、製造データ記憶部32と制御部33とを有する。製造データ記憶部32は、クーリングユニット1,2,・・・の製造工程で採取したデータを記憶する。制御部33は、クーリングユニット1,2,・・・に対する真空引き、および冷媒注入を制御する。また制御部33は、真空引きの際に、冷媒注入空間内の真空度を定期的に計測し、計測した真空度の値を製造データ記憶部32に格納する。さらに制御部33は、コンピュータ100からのデータ取得要求に応じて、製造データ記憶部32内の指定されたデータをコンピュータ100に送信する。
コンピュータ100は、数式候補要素記憶部110、理論モデル記憶部120、応答特性データ取得部130、応答特性データ記憶部140、候補モデル構築部150、データ分析部160、分析結果記憶部170、およびモデル評価部180を有する。
数式候補要素記憶部110は、真空度の時系列変化を表す数式の構築に使用する演算子などの要素を記憶する。理論モデル記憶部120は、クーリングユニット1,2,・・・の真空引きなどの製造工程で生じる物理現象を表す計算式を、理論モデルとして記憶する。理論モデルは、第1の実施の形態における理論式の一例である。
応答特性データ取得部130は、製造工程の過程で、製造対象製品に対する作業を行った際に、その製品を観測することで得られる物理量の時系列変化を示す応答特性データを取得する。例えば応答特性データ取得部130は、冷媒充填装置30から、クーリングユニット1,2,・・・に対する真空引きの際の真空度の時系列変化を示すデータを、応答特性データとして取得する。応答特性データ取得部130は、取得した応答特性データを、応答特性データ記憶部140に格納する。応答特性データ記憶部140は、応答特性データを記憶する。
候補モデル構築部150は、数式候補要素記憶部110に格納されている要素、またはユーザにより入力された要素を組み合わせて、応答特性データに表されている真空度の時系列変化を表す計算式の候補となる候補モデルを構築する。候補モデルは、第1の実施の形態に示した候補式の一例である。例えば候補モデル構築部150は、遺伝的アルゴリズム(GA:Genetic Algorithm)を用いて、候補モデルを繰り返し構築する。候補モデル構築部150は、候補モデルの構築にGAを用いる場合、遺伝的プログラミング(GP:Genetic Programming)を利用することで、複雑な計算式を、効率的に構築することができる。
データ分析部160は、クーリングユニット1,2,・・・それぞれについて、構築された候補モデルに基づくデータ分析を行う。例えばデータ分析部160は、構築された候補モデルと、クーリングユニット1,2,・・・それぞれの応答特性データとを比較し、候補モデルに含まれる係数値の適切な値を、クーリングユニット1,2,・・・それぞれについて算出する。またデータ分析部160は、係数値が決定した候補モデルと応答特性データとの一致度合いを示すマッチング係数を算出する。データ分析部160は、データ分析結果を、分析結果記憶部170に格納する。分析結果記憶部170は、候補モデルごとの分析結果を記憶する。
モデル評価部180は、候補モデルに含まれる係数に対応する物理量が、製品の品質(真空引き実行後の最終真空度)に影響を及ぼしている度合いを示すスコア値を計算する。例えばモデル評価部180は、クーリングユニット1,2,・・・ごとのマッチング係数値の平均と、候補モデルに含まれる係数値とに基づいて、スコア値を算出する。候補モデル構築部150がGAまたはGPにより候補モデルを構築する場合、モデル評価部180は、評価した候補モデルのうち、優良なスコア値の候補モデルを候補モデル構築部150に送信する。以下の例では、スコア値は、値が小さいほど優良である。これにより、候補モデル構築部150は、優良なスコア値の候補モデルに基づいて次の世代の候補モデルを構築するといった、GAまたはGPのアルゴリズムに沿った適切な候補モデル構築が可能となる。さらにモデル評価部180は、理論モデルに基づいて、スコア値が閾値未満の候補モデルの係数の物理的な意味を判断する。そして、モデル評価部180は、スコア値が閾値未満の候補モデルの係数の物理的な意味を、品質に影響を及ぼす因子として、モニタ21に表示する。
なお、図4に示した各要素間を接続する線は通信経路の一部を示すものであり、図示した通信経路以外の通信経路も設定可能である。また、図4に示した各要素の機能は、例えば、その要素に対応するプログラムモジュールをコンピュータ100に実行させることで実現することができる。
次に、図5~図8を参照して、品質影響原因の特定処理に利用するデータについて詳細に説明する。品質影響原因の特定処理に利用するデータのうち、製造データ記憶部32、数式候補要素記憶部110、および理論モデル記憶部120に格納されるデータについては、品質影響原因の特定処理の実行前に用意される。
図5は、製造データ記憶部に格納されているデータの一例を示す図である。製造データ記憶部32には、例えば製造データ管理テーブル32aが格納されている。製造データ管理テーブル32aには、クーリングユニット1,2,・・・それぞれのユニット番号に対応付けて、品質データと製造データとが設定されている。
品質データは、対応するクーリングユニットの品質の判定基準を示すデータである。例えば最終真空度が、品質データとして製造データ管理テーブル32aに設定される。なお真空度は、真空引き対象空間の気圧で表され、値が小さいほど真空度が高い。
製造データには、品質の良否の判定結果と、真空引き経過時間ごとの真空度とが設定されている。判定結果としては、最終真空度が規定値を満たす(最終真空度の値が閾値未満)の場合には、品質良好を示す値「OK」が設定され、最終真空度が規定値を満たさない(最終真空度の値が閾値以上)場合には、品質不良を示す値「NG」が設定される。
図6は、数式候補要素記憶部に格納されているデータの一例を示す図である。数式候補要素記憶部110には、例えば技術分野のカテゴリごとの数式候補要素リスト111,112,・・・が格納されている。数式候補要素リスト111,112,・・・それぞれには、対応するカテゴリにおける物理量の計算に使用する要素(数式候補要素)のリストが登録されている。数式候補要素には、演算子、関数、変数が含まれる。演算子は、例えば四則演算子である。関数は、例えば三角関数、指数関数、対数関数である。変数には、x,yなどの変数に加え、実数や係数も含まれる。
このようにカテゴリごとに、該当分野で用いる関数などを予めリストアップしておくことで、適切な候補モデルを効率的に作成することができる。またカテゴリごとの物理量の理論上の計算式は、予め理論モデル記憶部120に登録されている。
図7は、理論モデル記憶部に格納されているデータの一例を示す図である。理論モデル記憶部120には、例えば理論モデル管理テーブル121が格納される。理論モデル管理テーブル121の各レコードには、カテゴリ、理論モデル、理論モデルの意味、および係数の意味が設定される。カテゴリは、対応する理論モデルが適用される技術分野である。理論モデルは、該当カテゴリにおける物理量を算出するための計算式である。理論モデルの意味は、理論モデルで算出される物理量の意味である。係数の意味は、理論モデルに含まれる係数の物理的な意味である。例えばカテゴリが「真空排気」である理論モデル「P(x)=a/x」は排気速度の算出式であり、係数「a」は排気抵抗である。
図5~図7に示したデータが用意された後、品質影響原因の特定処理の前処理として、応答特性データ取得部130が、製造データ記憶部32から製造データを取得する。そして応答特性データ取得部130は、取得した製造データに基づいて、クーリングユニット1,2,・・・それぞれの応答特性データを生成し、応答特性データを応答特性データ記憶部140に格納する。
図8は、応答特性データ記憶部に格納されているデータの一例を示す図である。応答特性データ記憶部140には、クーリングユニット1,2,・・・ごとの応答特性データ141,142,・・・に格納されている。応答特性データ141,142,・・・それぞれには、真空引き開始からの経過時間ごとに真空度が設定されている。応答特性データ141,142,・・・内の最後(経過時間が最大)のレコードの真空度が、該当クーリングユニットの最終真空度である。
応答特性データ141,142,・・・が生成された後、ユーザからの品質影響原因特定処理の開始指示に応じて、コンピュータ100が品質影響原因特定処理を開始する。以下、品質影響原因特定処理について詳細に説明する。
図9は、品質影響原因特定処理の手順の一例を示すフローチャートである。以下、図9に示す処理をステップ番号に沿って説明する。
[ステップS101]候補モデル構築部150は、候補モデルの構築に使用する要素(演算子など)指定入力を受け付ける。例えばユーザは、候補モデルの変数を何にするのか、どのような演算子を使用するのか、どのような関数を使用するのかを指定する入力を行う。ユーザは、個別の要素の指定入力をする代わりに、数式候補要素記憶部110内のいずれかの数式候補要素リストを指定することもできる。数式候補要素リストが指定された場合、候補モデル構築部150は、指定された数式候補要素リストに示される演算子、関数、変数を、候補モデルの構築に使用する要素とする。
またユーザは、候補モデル構築の終了条件を入力することもできる。例えばユーザは、スコア値の閾値を、終了条件として入力する。候補モデル構築部150は、スコア値の閾値が入力された場合、入力された閾値を終了条件として記憶する。なお候補モデル構築部150は、終了条件とする閾値が入力されなかった場合、例えば、予め設定されている閾値を、終了条件とする。
[ステップS102]候補モデル構築部150は、GPにより、数式候補要素を組み合わせて、候補モデルを構築する。例えば候補モデル構築部150は、GPの第1世代の候補モデルを構築する場合、数式候補要素をランダムに組み合わせて、所定数(例えば10個)の候補モデルを構築する。また候補モデル構築部150は、GPの第2世代以降の候補モデルを構築する場合、既に構築されている候補モデルから、スコア値が良い(例えば値が低い)方から2つの候補モデルを選択する。そして候補モデル構築部150は、選択した候補モデルを親として交叉などの操作を行い、次世代の候補モデルを構築する。
[ステップS103]データ分析部160は、応答特性データ141,142,・・・ごとに、構築された候補モデルに含まれる係数の値を算出する。例えばデータ分析部160は、回帰分析により、応答特性データに適合するような候補モデルの係数の値を算出する。これにより、候補モデルの計算式(回帰式)が確定する。
[ステップS104]データ分析部160は、構築された候補モデルについて、クーリングユニットごとのマッチング係数を算出する。例えば、マッチング係数は、クーリングユニットの応答特性データと、係数を設定した候補モデルの曲線との残差が少ないほど、小さな値となる。
[ステップS105]データ分析部160は、候補モデル内の係数ごとに、製品品質(最終真空度)との間の相関分析を行う。相関分析により、構築された候補モデルそれぞれの係数ごとに、相関係数が算出される。相関係数は、-1から+1の範囲の実数である。相関係数は、その絶対値が大きいほど、その係数と最終真空度との相関関係の度合いが高いことを示す。データ分析部160は、例えば「1-相関係数の絶対値」を計算し、計算結果を修正相関係数とする。これにより、相関関係の度合いが高いほど、値が小さくなる修正相関係数が得られる。
[ステップS106]モデル評価部180は、候補モデル内の係数ごとの修正相関係数と、候補モデルと応答特性データとの差異を示すマッチング係数とに基づいて、該当候補モデルのスコア値を算出する。
[ステップS107]モデル評価部180は、候補モデル構築の終了条件が満たされたか否かを判断する。例えばモデル評価部180は、スコア値が閾値未満となる候補モデルが少なくとも1つある場合、終了条件を満たすと判断する。モデル評価部180は、終了条件を満たした場合、処理をステップS108に進める。またモデル評価部180は、終了条件を満たしていなければ、処理をステップS102に進める。なおモデル評価部180は、終了条件を満たしていない場合、例えば最新の世代の候補モデルのうちの、スコア値が高い方から2つの候補モデルを、候補モデル構築部150に送信する。
[ステップS108]モデル評価部180は、スコア値が小さい方から所定数の候補モデルについて、理論モデルと照合する。モデル評価部180は、例えば候補モデルと理論モデルとの間の構造の類似度を計算する。そしてモデル評価部180は、候補モデルと類似する理論モデルの係数の意味に基づいて、候補モデルの係数の意味を判断する。
[ステップS109]モデル評価部180は、品質影響原因の特定結果を出力する。例えばモデル評価部180は、スコア値が小さい方から所定数の候補モデルの係数の意味を、製品品質に影響を及ぼす要因として、モニタ21に表示する。
このような手順で品質影響原因の特定処理が行われる。以下、品質影響原因の特定処理を、具体的に説明する。
図10は、設定された要素に基づく候補モデルの生成例を示す図である。例えば要素指定入力により、候補モデル構築部150は、要素群41を取得する。要素群41には、候補モデルを構成する要素として、変数「t」、演算子、および関数が含まれる。次に候補モデル構築部150は、GPを用いて、候補モデルの構成要素の組み合わせた計算式42を生成する。例えば「1/t」のような計算式42が生成される。
候補モデル構築部150は、生成した計算式42に、例えばゲインとオフセットを示す係数を付与し、得られた計算式を候補モデル43とする。ゲインを表す係数は、例えばGPで生成した計算式全体に、乗算する値を示す係数である。オフセットを示す係数は、変数に加算する値を示す係数である。GPで得られた計算式が「1/t」の場合、候補モデル43は「a/(t+b)」となる。この候補モデル43では、「a」がゲインを示す係数であり、「b」がオフセットを示す係数である。
なお、図10の例では、単純な構造の候補モデル43の例を示しているが、GPを用いることで、複雑な構造の候補モデルを生成することが可能となる。
図11は、GPを用いて生成される候補モデルの一例を示す図である。図11の例では、計算式「{sin(a+(x×y)+b)+In(c×(y×y))}+exp(z)」の候補モデル44が木構造で表されている。木構造の候補モデル44では、要素として指定された要素が木構造のノードとなる。
候補モデル構築部150は、例えば、複数の木構造の一部(部分木)の交叉や突然変異などの操作を行うことで、次世代の候補モデルを構築する。
図12は、交叉による世代進化の一例を示す図である。候補モデル構築部150は、現世代の2つの候補モデル45,46を親として、候補モデル45,46それぞれから部分木45a,46aを特定する。部分木45a,46aは、例えば、ルートノード以外のノードからランダムに選択したノード以下の木構造である。候補モデル構築部150は、候補モデル45,46それぞれから特定した部分木45a,46aを入れ替えた、次世代の2つの候補モデル47,48を生成する。候補モデル47は、候補モデル45から部分木45aを削除し、部分木45aがあった位置に、候補モデル46内の部分木46aと同じ構造の部分木47aを接続した構造となっている。候補モデル48は、候補モデル46から部分木46aを削除し、部分木46aがあった位置に、候補モデル45内の部分木45aと同じ構造の部分木48aを接続した構造となっている。
候補モデル構築部150は、候補モデル45,46に対して交叉による世代進化を複数回行うことで、所定数の次世代の候補モデルを生成する。例えば候補モデル構築部150が交叉による世代進化を5回行えば、次世代の候補モデルが10個生成される。
候補モデル構築部150は、生成された候補モデルの単純化を行うこともできる。例えば候補モデル構築部150は、候補モデル内に、複数の係数が「a+b」というように加算または減算の部分がある場合、その部分を1つの係数にまとめる。例えば「a+b→a」となる。
また候補モデル構築部150は、候補モデル内の複数の項をまとめてもよい。例えば候補モデル構築部150は、候補モデル内の「sin(x)×In(y)+sin(x)×log(z)」という複数の項が含まれる場合、この部分を「sin(x){In(y)+log(z)}」とまとめる。
さらに候補モデル構築部150は、候補モデルの不合理関数の有無の検査を行うこともできる。不合理関数とは、数学上許容されない構造の関数である。例えば候補モデル構築部150は、ゼロ割、領域外、変数無し、などの不合理関数の有無を検査する。ゼロ割の関数とは、例えば「sin(x)/0」のように、「0」で除算する関数(分母が「0」の分数)である。領域外の関数とは、「log(-x):x>0」(真数xが整数の場合に対数が定義できる)のように、数学上の定義から外れた変数が設定された関数である。変数なしの関数とは、「cos(a)」(aは係数)のように変数を含まない関数である。変数なしの関数は、例えば1つの係数に置き換えることができる。
候補モデルが構築されると、データ分析部160により、候補モデルの係数値が算出される。
図13は、係数値の算出例を示す図である。データ分析部160は、応答特性データ141,142,・・・それぞれについて、経過時間tごとの真空度pを示す点をプロットしたグラフ51,52,・・・を作成する。そしてデータ分析部160は、グラフ51,52,・・・ごとに、プロットした各点から、係数値を設定した候補モデル43を示す曲線(候補モデル曲線43a)までの距離が小さくなるように、候補モデル43内の係数値を算出する。例えばデータ分析部160は、最小自乗法により、係数値を算出する。これにより、1つの候補モデル43について、クーリングユニットごとの係数値が算出される。
なお図13の例では、候補モデル構築部150は、真空度がほとんど変化していない期間の真空度は無視して、係数値を算出している。係数値を算出後、候補モデル構築部150は、マッチング係数を算出する。
図14は、マッチング係数の算出例を示す図である。データ分析部160は、1つのクーリングユニットについて生成したグラフ51にプロットした点と、候補モデル曲線43aとの残差を計算する。残差は、プロットした点から、候補モデル曲線43aまでの真空度p方向の距離である。データ分析部160は、プロットした点ごとの残差の絶対値の平均を、該当クーリングユニットに関するマッチング係数とする。データ分析部160は、このようなマッチング係数を、クーリングユニット1,2,・・・ごとに算出する。
候補モデル構築部150は、係数値とマッチング係数との算出結果を、分析結果記憶部170に格納する。
図15は、分析結果記憶部に格納されているデータの一例を示す図である。分析結果記憶部170内には、例えば候補モデルごとの分析結果管理テーブル171,172,・・・が格納されている。
分析結果管理テーブル171,172,・・・には、クーリングユニット1,2,・・・それぞれの応答特性データ141,142,・・・に基づく分析結果を示すレコードが登録されている。各レコードには、クーリングユニット1,2,・・・のユニット番号に対応付けて、最終真空度、候補モデルに含まれる各係数の係数値、およびマッチング係数が設定されている。このようにデータ分析部160の分析の結果、構築された候補モデルそれぞれについて、クーリングユニット1,2,・・・ごとの係数値およびマッチング係数が得られる。1つの候補モデルについてクーリングユニット1,2,・・・ごとに算出されたマッチング係数の平均が、その候補モデルのマッチング係数となる。
ここで、候補モデルが、製品品質を適確に表している場合、候補モデルに含まれる係数値は、製品品質に関連する物理現象に影響を及ぼす物理的意味を有していると考えられる。すなわち、候補モデルは自然法則とは関係なしにGPにより生成されたものであるが、候補モデルが製品品質の善し悪しを適確に表しているのであれば、その候補モデルは製品品質に関連する物理現象を表している。その場合、候補モデルを構成する式の構造が物理現象の特徴を表しているとともに、候補モデルに含まれる係数も物理現象の特徴を表している。
そこでモデル評価部180は、候補モデルに含まれる係数について、係数値およびマッチング係数に基づいて、製品品質に影響をおよぼす物理現象の特徴を表している度合いを評価する。例えばモデル評価部180は、候補モデルに含まれる係数の係数値と、最終真空度との相関分析を行う。
図16は、係数値と最終真空度との相関分析の一例を示す図である。モデル評価部180は、候補モデルに複数の係数が含まれる場合、係数ごとに相関分析を行い、相関係数を算出する。図16の例では、候補モデル「a/(t+b)」に含まれる2つの係数a,bについて相関係数を算出している。係数aと最終真空度との相関係数は「0.86」、係数bと最終真空度との相関係数は「0.25」となっている。相関係数は、絶対値が大きいほど相関関係が高いため、係数bよりも係数aの方が最終真空度との相関関係が高いことになる。
モデル評価部180は、算出した相関係数に基づいて、相関関係が高いほど小さな値となる修正相関係数を計算する。修正相関係数は、「修正相関係数=1-係数の相関係数の絶対値」で表される。そしてモデル評価部180は、評価結果管理テーブル181に、修正相関係数を設定する。
評価結果管理テーブル181には、例えば候補モデルに対応付けて、マッチング係数、係数ごとの修正相関係数、およびスコア値が登録される。評価結果管理テーブル181に登録されているマッチング係数は、例えばクーリングユニット1,2,・・・ごとに算出されたマッチング係数の平均値である。図16に示した段階ではスコア値は未計算のため、候補モデル「a/(t+b)」のスコア値の欄は空欄となっている。
モデル評価部180は、評価結果管理テーブル181を、例えばメモリ102に格納する。そしてモデル評価部180は、評価結果管理テーブル181に設定したマッチング係数と、候補モデルの係数ごとの修正相関係数とに基づいて、候補モデルのスコア値を計算する。
図17は、候補モデルのスコア値の計算例を示す図である。モデル評価部180は、1つの候補モデルに複数の係数が含まれる場合、修正相関係数の値が小さい方の係数を選択し、選択した係数を、品質関連特徴とする。次にモデル評価部180は、品質関連特徴の修正相関係数とマッチング係数との積を計算する。そしてモデル評価部180は、積の計算結果を、スコア値として評価結果管理テーブル181に設定する。
これにより、スコア値は、品質関連特徴の修正相関係数の値が小さいほど小さい値となり、マッチング係数の値が小さいほど小さい値となる。なお品質関連特徴の修正相関係数とマッチング係数との和をスコア値とした場合にも、スコア値は、品質関連特徴の修正相関係数の値が小さいほど小さい値となり、マッチング係数の値が小さいほど小さい値となる。しかし、マッチング係数が小さいことと、修正相関係数が小さいこととを両立させる係数を見つけ出すには、品質関連特徴の修正相関係数とマッチング係数との積をスコア値とした方がよい。
図18は、計算方法の違いによるスコア値の違いを説明する図である。図18には、評価結果を表す評価結果座標系60を示している。評価結果座標系60の横軸がマッチング係数であり、縦軸が修正相関係数である。評価結果は、第1象限の評価結果領域61のどこかに位置する。スコア値を計算する場合、マッチング係数が最小「0」、かつ修正相関係数が最小「0」の位置(目標位置64)に評価結果があるとき、スコア値が最小(最も優良)となるような計算式を用いるのが適切である。
図18では、2つの評価結果62,63を示している。一方の評価結果62は、マッチング係数が「99.9」、修正相関係数が「0.1」である。他方の評価結果63は、マッチング係数が「99.1」、修正相関係数が「0.9」である。
スコア値の計算方法として、2つの係数の和を採ると、いずれの結果もスコア値「100」となり、差が出ない。しかし、評価結果座標系60に評価結果62,63を配置すると分かるように、目標位置64に近いのは、評価結果62の方である。スコア値の計算方法として、2つの係数の積を採用することで、評価結果62の方が、評価結果63よりもスコア値が小さくなる(優良なスコア値となる)。そのためモデル評価部180は、マッチング係数と修正相関係数との積を、スコア値としている。
モデル評価部180は、GPにより繰り返し候補モデルが構築されるごとに、構築された候補モデルそれぞれについて、修正相関係数とスコア値とを計算する。そしてモデル評価部180は、計算結果を評価結果管理テーブル181に設定する。この処理が、候補モデル構築の終了条件が満たされるまで繰り返される。
図19は、候補モデルの評価結果が設定された評価結果管理テーブルの一例を示す図である。図19に示すように、候補モデルごとにスコア値が計算される。複数の係数を含む候補モデルの場合、その候補モデルの係数のうち修正相関係数の値が最も小さい係数が、スコア値の算出に用いられた品質関連特徴である。評価結果管理テーブル181に示された候補モデルのうち、スコア値が小さいほど、その候補モデルに含まれる品質関連特徴が、製品品質と関連性が高い。
候補モデルの終了条件が満たされると、モデル評価部180は、候補モデルを理論モデルと照合することで、製品品質と関連性が高い品質関連特徴の意味を調べる。
図20は、モデル照合処理の一例を示す図である。例えば最もスコア値が小さい(評価が良好)候補モデル71の数式が「a/(t+b)」であるものとする。また、この候補モデル71における品質関連特徴が、係数aであるものとする。
モデル評価部180は、該当候補モデル71の数式と、理論モデル管理テーブル121に登録されている理論モデルそれぞれの数式とを照合し、類似する理論モデルを抽出する。図20の例では、理論モデル「P(x)=a/x」が、候補モデル71との類似度が高い。
この場合、モデル評価部180は、類似度が高い理論モデル「P(x)=a/x」における、品質関連特徴に対応する係数「a」の意味「排気抵抗」を、理論モデル管理テーブル121から抽出する。そしてモデル評価部180は、製品品質に排気抵抗が影響を及ぼしていることを、モニタ21に表示する。
以下、モデル照合処理について詳細に説明する。
モデル評価部180は、モデル照合処理において、まず理論モデルのフィルタリングを行う。フィルタリングは、候補モデルと明らかに類似しない理論モデルを、類似度の計算対象から除外する処理である。
図21は、理論モデルのフィルタリングの一例を示す図である。図21の例では、最も評価の高い候補モデル72の数式が「a×sin(b×x+c)」であるものとする。このとき、モデル評価部180は、まず理論モデルそれぞれの構成を解析する。そして理論モデル構成情報73を生成する。例えばモデル評価部180は、各理論モデルの関数の種類、変数の数、および次数を解析し、判断結果を理論モデル構成情報73に設定する。同様に、モデル評価部180は、候補モデル72についても、関数の種類、変数の数、および次数を解析する。
そしてモデル評価部180は、候補モデル72と、関数の種類、変数の数、および次数のいずれかが不一致の理論モデルを、理論モデル構成情報73から削除する。なおモデル評価部180は、sinとcosのように位相の違いしかない関数は、同じ関数とみなしてもよい。図21の例では、候補モデル72の関数は「sin」である。それに対して、理論モデル構成情報73に示されている理論モデル「a/x」は関数「sin」が含まれていない。そのためモデル評価部180は、理論モデル「a/x」を理論モデル構成情報73から削除し、類似度の計算対象から除外する。また理論モデル「aexp(-bx)」(乗算記号は省略)の関数は「exp」であり、候補モデル72の関数「sin」と異なる。そのためモデル評価部180は、理論モデル「aexp(-bx)」を理論モデル構成情報73から削除し、類似度の計算対象から除外する。
このようなフィルタリング処理により、類似度の計算対象とする理論モデルが絞り込まれる。次にモデル評価部180は、候補モデルと理論モデルとの文字列の置換を行う。
図22は、文字列置換処理の一例を示す図である。モデル評価部180には、例えば置換ルール74が予め定義されている。置換ルール74には、置換元の要素に対応付けて、置換先の文字列が設定されている。図22の例では、置換元の要素が1文字に置換されるように、置換ルール74が定義されている。
モデル評価部180は、候補モデルと理論モデルとのそれぞれについて、置換ルール74に従って、文字列を置換する。例えばモデル評価部180は、候補モデル「asin(bx+a)」(乗算記号は省略)の関数「sin」を「f」に置換する。またモデル評価部180は、候補モデル「asin(bx+a)」の係数「a,b」を、「a」に置換する。
同様にモデル評価部180は、理論モデルの文字列も置換ルール74に従って置換する。例えば理論文字列「asin(ωt+θ)」(乗算記号は省略)の変数「t」を、「x」に置換している。
次にモデル評価部180は、レーベンシュタイン距離法により、置換後の候補モデルの文字列と、置換後の理論モデルの文字列との類似度を比較する。レーベンシュタイン距離は、例えば二次元の行列を用いて算出することができる。
図23は、レーベンシュタイン距離の第1の算出例を示す図である。図23には、置換後の候補モデル「a×f(a×x+a)」と、置換後の理論モデル「a2×f2(x)×g2(x)」とのレーベンシュタイン距離を求める例が示されている。レーベンシュタイン距離算出用の行列75aの1行目と1列目とは、空文字に対応している。各行には、空文字の後に、置換後の候補モデルの文字が先頭から順に対応付けられている。各列には、空文字の後に、置換後の理論モデルの文字が先頭から順に対応付けられている。そして置換後の候補モデルの一文字と置換後の理論モデルの一文字との間の距離が、それらの文字に対応するマスに設定されている。
一方の文字列の空文字と、他方の文字列のn文字目(nは1以上の整数)との距離はnである。その他のマスには、以下の3つの数字のうちの最も小さい値が設定される。
・自マスの上のマスの数字+1
・自マスの左のマスの数字+1
・自マスの左上のマスの数字+a(aは、自マスの縦と横の文字が等しい場合は「0」であり、異なる場合は「1」である)
このようにして作成された行列75aの右下の角の数字「8」が、置換後の候補モデルと置換後の理論モデルとのレーベンシュタイン距離(最小編集回数)である。
図24は、レーベンシュタイン距離の第2の算出例を示す図である。図24には、置換後の候補モデル「a×f(a×x+a)」と、置換後の理論モデル「a×f(x)」とのレーベンシュタイン距離を求める例が示されている。図24に示すレーベンシュタイン距離算出用の行列75bの右下の角の数字は「4」であり、レーベンシュタイン距離は「4」である。
モデル評価部180は、算出したレーベンシュタイン距離を類似度とする。各論理モデルの類似度を算出すると、モデル評価部180は、各理論モデルの類似度を比較し、類似度が高い順に順位付けを行う。そしてモデル評価部180は、理論モデルの類似度の順位を示す類似度管理テーブルを作成する。
モデル評価部180は、例えばスコア値が高い方から所定数の候補モデルのそれぞれについて、理論モデルとの類似度を計算し、類似度管理テーブルを作成する。
図25は、類似度管理テーブルの一例を示す図である。図25に示すように、候補モデルごとの類似度管理テーブル76a,76b,・・・が作成される。類似度管理テーブル76a,76b,・・・には、理論モデルに対応付けて、理論モデルの意味、置換後の理論モデル、類似度、および順位が設定されている。モデル評価部180は、作成した類似度管理テーブル76a,76b,・・・を、メモリ102に格納する。
モデル評価部180は、スコア値が低い(評価が高い)候補モデルに対して類似度の高い理論モデルの、品質関連特徴に対応する係数を特定し、その係数を、製品の品質に影響を及ぼす可能性が高い品質関連因子とする。モデル評価部180は、品質関連因子の解析結果をモニタ21に表示する。
図26は、品質関連因子の解析結果表示画面の一例を示す図である。解析結果表示画面77には、例えば品質関連因子情報77aが含まれる。品質関連因子情報77aには、候補モデルごとに、類似する理論モデルから求まる品質関連因子が示されている。
例えば品質関連因子情報77aには、スコア値が低い(評価が高い)候補モデルほど上位に示されている。さらに品質関連因子情報77aには、各候補モデルに対応付けて、例えば、類似度が所定値以上の理論モデルのリストが示されている。理論モデルのリストは、類似度が高い理論モデルほど上位に示されている。
品質関連因子情報77aでは、各理論モデルに対応付けて、理論モデルの意味、品質関連因子の意味、候補モデル、品質関連特徴、修正相関係数、およびスコア値が示されている。理論モデルの意味は、理論モデルの物理的な意味であり、理論モデル管理テーブル121から取得された情報である。品質関連因子の意味は、理論モデルに含まれる係数のうち、品質関連特徴の係数に対応する係数の物理的な意味である。例えば、候補モデルにおけるゲインを示す係数が品質関連特徴である場合、理論モデルにおけるゲインに対応する係数(変数または関数に乗算する係数)が、品質関連因子となる。また候補モデルにおけるオフセットを示す係数が品質関連特徴である場合、理論モデルにおけるオフセットに対応する係数(変数に加算または減算する係数)が、品質関連因子となる。各理論モデルに対応付けられた、候補モデル、品質関連特徴、修正相関係数、およびスコア値は、その理論モデルの係数が品質関連因子であると判断した根拠を示す情報である。
ユーザは、解析結果表示画面77を参照することで、製品の品質にどのような物理量が関係しているのかを認識することができる。図26の例では、排気速度に関連する排気抵抗が、製品の品質に影響を及ぼしていることが理解できる。これにより、製品の最終真空度がNG(不良)となったのは、排気抵抗が原因で発生していると予想できる。そのため、ユーザは、例えば、排気抵抗となるユニット配管部品のバラツキを特定し、配管部品を調査する。そしてユーザが、配管曲げ形状、径のバラツキ改善策を施すことにより、最終真空度が目標値に達しない製品の発生を抑止できる。
しかも第2の実施の形態では、相関係数とマッチング係数とを組み合わせてスコア値を算出しているため、品質に影響する因子に対応する係数を含む候補モデルを、高精度で判定することができる。
図27は、スコア値による判定精度を説明する図である。図27には、3つの候補モデル78a~78cの解析結果の一例を示す図である。
候補モデル78aは、6次元の式で表されている。このような高次式の候補モデル78aは、高精度で応答特性データに一致させることができる。その結果、マッチング係数は良好な値(小さい値)となる。他方、候補モデル78aの品質関連特徴と製品品質との相関係数は小さく、修正相関係数(1-相関係数の絶対値)の値は大きくなっている。応答特性データを正確に表す候補モデル78aであっても、含まれる係数と製品品質との相関関係が低い場合、その係数が品質に影響する因子を表しているとは言えない。
候補モデル78bは、応答特性データにある程度一致しており、良好なマッチング係数が得られている。また候補モデル78bの品質関連特徴と製品品質との相関係数は、候補モデル78aに比べて大きく、修正相関係数の値は小さくなっている。すなわち、候補モデル78bは、マッチング係数と相関係数とが、共に良好な値となっている。
候補モデル78cは、品質関連特徴と製品品質との相関係数が偶然高くなっており、修正相関係数の値は小さくなっている。相関係数が偶然高くなった場合、相関係数の値は、品質関連特徴と製品品質との因果関係を表すものではない。候補モデル78cは、マッチング係数の値の方が、他の候補モデル78a,78bに比べて高くなっている。
このような3つの候補モデル78a,78b,78cそれぞれの修正相関係数とマッチング係数との積をスコア値としたことで、相関係数とマッチング係数とが適度に良好な値の候補モデル78bのスコア値が、最も高くなる。すなわち高次式で応答特性データを正確にトレースした候補モデル78aの係数は、品質に影響する因子を表していないため、スコア値が悪く(大きな値)となる。また、相関関係が偶然一致した候補モデル78cは、マッチング係数の値が悪く(大きな値)なることで、誤って良好なスコア値となることが抑止されている。
このように、相関係数とマッチング係数とを組み合わせてスコア値を算出することで、品質に影響する因子を表す係数を含む候補モデルを適切に抽出することができる。その結果、該当候補モデルに基づいて、製品の品質に影響する因子を正しく判断することが可能となる。
〔第3の実施の形態〕
次に第3の実施の形態について説明する。第3の実施の形態は、製品の性質に基づいて予め分かっている式の構造を考慮して、スコア値を計算するものである。
製品が複数の要素を含んでいる場合、その製品の性質を表す計算式が複雑となり、第2の実施の形態では、複数の要素のうちのどの要素が製品不良の原因となっているのかが分からない場合がある。そこで、第3の実施の形態では、予め製品性質に応じた式の基本構造を定義しておくことで、製品に複数の要素が含まれる場合であっても、製品品質に影響を及ぼす因子を適確に特定できるようにする。
以下、図28~図31を参照して、製品の性質に応じた式の構造について説明する。
図28は、製品に関する式の構造の第1の例を示す図である。図28の例では、産業用のロボット81(マニピュレータ)のハンド部分の先端座標の計算式を表している。ロボット81は、複数の関節を有しており、関節の数分の関数fの掛け算によって、ハンド先端座標が求まる。ロボット81が6軸の多関節ロボットであれば、関数fを6回掛け合わせることで、ハンド先端座標が得られる。すなわちハンド先端座標は、基本構造が「f×f×f×f×f×f」の式で表される。
図29は、製品に関する式の構造の第2の例を示す図である。図29の例では、ニオブ酸リチウム(LN:Lithium Niobate)変調器82の光出力の計算式を表している。図29に示すLN変調器82の光出力は、基本構造が「(f+f)×f」の式で表される。
図30は、製品に関する式の構造の第3の例を示す図である。図30の例では、電気回路83の電圧Vの計算式を表している。電気回路83には、3つの抵抗R1~R3が並列接続されており、電圧Vは、基本構造が「f+f+f」の式で表される。
図31は、製品に関する式の構造の第4の例を示す図である。図31の例では、クランク状に曲がった配管84に流れる流体の圧力損失の計算式を表している。図31に示す配管84には、曲がった部分が2箇所あるため、圧力損失は、基本構造が「f×f」の式で表される。
このように、製品の性質に応じて、算出する物理量の計算式の構造が、予め予測可能である。そこで、第3の実施の形態では、データ分析部160が、候補モデルと、製品に予測される計算式との類似度を計算し、その類似度を構造評価値とする。そして、モデル評価部180は、相関係数、マッチング係数、および構造評価値に基づいて、スコア値を算出する。
以下、第3の実施の形態について、詳細に説明する。
図32は、第3の実施の形態における品質影響原因特定処理の手順の一例を示すフローチャートである。以下、図32に示す処理をステップ番号に沿って説明する。
[ステップS201]候補モデル構築部150は、候補モデルの構築に使用する要素指定入力を受け付ける。例えばユーザは、候補モデルの変数を何にするのか、どのような演算子を使用するのか、どのような関数を使用するのかを指定する入力を行う。ユーザは、個別の要素の指定入力をする代わりに、数式候補要素記憶部110内のいずれかの数式候補要素リストを指定することもできる。数式候補要素リストが指定された場合、候補モデル構築部150は、指定された数式候補要素リストに示される演算子、関数、変数を、候補モデルの構築に使用する要素とする。
またユーザは、対象製品に応じた計算式の基本構造を入力する。例えば製品が6軸のロボット81であえば、ユーザは、基本構造として「f×f×f×f×f×f」を入力する。
またユーザは、スコア値の計算の基準となる指標(マッチング係数、相関係数、構造評価値)それぞれについての重みを入力する。ユーザは、重要な指標ほど重みの値を大きくする。
またユーザは、候補モデル構築の終了条件を入力する。例えばユーザは、スコア値の閾値を、終了条件として入力する。ユーザは、構造評価の閾値、マッチング係数の閾値、相関係数の閾値を、終了条件として入力してもよい。この場合、例えば候補モデル構築部150は、構造評価値(類似度)が閾値以下、マッチング係数が閾値以下、および相関係数が閾値以上の候補モデルが検出できた場合、候補モデルの構築を終了する。
候補モデル構築部150は、スコア値の閾値が入力された場合、入力された閾値を終了条件として保持する。なお候補モデル構築部150は、終了条件とする閾値が入力されなかった場合、例えば、予め設定されている閾値を、終了条件とする。
[ステップS202]候補モデル構築部150は、GPにより、数式候補要素を組み合わせて、候補モデルを構築する。なお第3の実施の形態では、候補モデル構築部150は、候補モデルに複数の関数が含まれる場合、関数ごとにゲインとオフセットとの係数を設定する。また候補モデル構築部150は、変数に対して乗算する係数も設定する。例えば候補モデル構築部150は、「acos(bt+c)+[dsin(et+f)+g sin(et+f)]×fhsin(et+f)」という候補モデルを構築する。この候補モデルには、係数「a,b,c,d,e,f」が含まれている。
[ステップS203]データ分析部160は、解析対象の製品から取得した応答特性データごとに、構築された候補モデルに含まれる係数の値を算出する。これにより、候補モデルの計算式が確定する。
[ステップS204]データ分析部160は、構築した候補モデルの構造評価値を計算する。例えばデータ分析部160は、構築した候補モデルと、製品の基本構造を示す式との類似度を計算し、類似度を構造評価値とする。
このときデータ分析部160は、算出した構造評価値を、構造評価値の閾値と比較してもよい。その場合、データ分析部160は、構造評価値が閾値未満であれば、処理をステップS205に進め、構造評価値が閾値以上であれば、ステップS205~ステップS207の処理をスキップして、処理をステップS208に進める。
[ステップS205]データ分析部160は、構築された候補モデルについて、製品ごとのマッチング係数を算出する。例えば、マッチング係数は、製品の応答特性データと、係数を設定した候補モデルの曲線との残差が少ないほど、小さな値となる。
このときデータ分析部160は、算出したマッチング係数を、マッチング係数の閾値と比較してもよい。その場合、データ分析部160は、マッチング係数が閾値未満であれば、処理をステップS206に進め、マッチング係数が閾値以上であれば、ステップS206~ステップS207の処理をスキップして、処理をステップS208に進める。
[ステップS206]データ分析部160は、候補モデル内の係数ごとに、製品品質との間の相関分析を行う。相関分析により、構築された候補モデルそれぞれの係数ごとに、相関係数が算出される。
このときデータ分析部160は、算出した相関係数を、相関係数の閾値と比較してもよい。その場合、データ分析部160は、相関係数が閾値より大きければ、処理をステップS207に進め、相関係数が閾値以下であれば、ステップS207の処理をスキップして、処理をステップS208に進める。
[ステップS207]モデル評価部180は、候補モデル内の係数ごとの相関係数と、マッチング係数と、構造評価値とに基づいて、該当候補モデルのスコア値を算出する。
[ステップS208]モデル評価部180は、候補モデル構築の終了条件が満たされたか否かを判断する。例えばモデル評価部180は、構造評価値が閾値未満、マッチング係数が閾値未満であり、相関係数が閾値より大きく、かつスコア値が閾値未満である候補モデルが少なくとも1つある場合、終了条件を満たすと判断する。モデル評価部180は、終了条件を満たした場合、処理をステップS209に進める。またモデル評価部180は、終了条件を満たしていなければ、処理をステップS202に進める。なおモデル評価部180は、終了条件を満たしていない場合、例えば最新の世代の候補モデルのうちの、スコア値が高い方から2つの候補モデルを、候補モデル構築部150に送信する。
[ステップS209]モデル評価部180は、スコア値が小さい方から所定数の候補モデルについて、理論モデルと照合する。モデル評価部180は、例えば候補モデルと理論モデルとの間の構造の類似度を計算する。そしてモデル評価部180は、候補モデルと類似する理論モデルの係数の意味に基づいて、候補モデルの係数の意味を判断する。
[ステップS210]モデル評価部180は、品質影響原因の特定結果を出力する。例えばモデル評価部180は、スコア値が小さい方から所定数の候補モデルの係数の意味を、製品品質に影響を及ぼす要因として、モニタ21に表示する。
このような手順で品質影響原因の特定処理が行われる。このように、第3の実施の形態では、構造評価値を用いてスコア値を算出する点が、第2の実施の形態と大きく異なる。
図33は、構造評価値の算出例を示す図である。データ分析部160は、候補モデル91を単純化することで、候補モデル91の計算式の構造(候補モデル構造91a)を生成する。例えばデータ分析部160は、例えば図22に示した文字列置換処理によって候補モデルを単純化する。
そしてデータ分析部160は、基本構造90と候補モデル構造91aとの類似度に基づいて、構造評価値を算出する。例えばデータ分析部160は、レーベンシュタイン距離法を用いて、候補モデル構造91aを基本構造90に変換するための最小編集回数(レーベンシュタイン距離)を算出する。データ分析部160は、例えば最小編集回数を基本構造の文字数で除算した値を、構造評価値とする。
データ分析部160は、例えば算出した構造評価値が、構造評価値の閾値未満の場合、候補モデル91が基本構造90に適合していると判断する。またデータ分析部160は、算出した構造評価値が、構造評価値の閾値以上の場合、候補モデル91が基本構造90に不適合であると判断する。不適合な場合、データ分析部160は、例えば評価結果管理テーブル181(図19参照)の、候補モデル91のレコードに構造不適合フラグを設定する。データ分析部160は、候補モデル91の構造が不適合となった場合、候補モデル91のマッチング係数の算出や相関分析の処理を省略することで、処理の効率化を図ることができる。
第3の実施の形態では、モデル評価部180は、候補モデルのスコア値を、候補モデル間での指標(構造評価値、マッチング係数、相関係数)ごとの順位(ランキング)に基づいて算出する。候補モデルの指標ごとの順位付けを行い、ランキング管理テーブルに設定する。
図34は、ランキング管理テーブルの一例を示す図である。ランキング管理テーブル92には、候補モデルの個体番号に対応付けて、構造評価値、マッチング係数、相関係数のランキングが設定されている。
構造評価値のランキングは、複数の候補モデルを構造評価値で昇順にソートした場合の、各候補モデルの順番である。したがって、構造評価値が最小の候補モデルが、構造評価値のランキング1位となる。
マッチング係数のランキングは、複数の候補モデルをマッチング係数で昇順にソートした場合の、各候補モデルの順番である。したがって、マッチング係数が最小の候補モデルが、マッチング係数のランキング1位となる。
相関係数のランキングは、複数の候補モデルを相関係数で降順にソートした場合の、各候補モデルの順番である。したがって、相関係数が最大の候補モデルが、相関係数のランキング1位となる。
モデル評価部180は、各指標のランキングに重み付けを行い、スコア値を計算する。例えばモデル評価部180は、候補モデルごとに、各指標をその指標の重みで除算し、除算結果の和を、各候補モデルのスコア値とする。スコア値を式で表すと、以下の通りである。
スコア値=(構造評価値ランキング/構造評価値重みWf)+(マッチング係数ランキング/マッチング係数重みWr)+(相関係数ランキング/相関係数重みWc)
モデル評価部180は、算出したスコア値を、ランキング管理テーブル92に設定する。モデル評価部180は、作成したランキング管理テーブル92をメモリ102に格納する。
モデル評価部180は、構築した各候補モデルのスコア値を比較し、スコア値が最も高い候補モデルを、最適モデルとして抽出する。そしてモデル評価部180は、最適モデルとして抽出された候補モデルを理論モデルと照合し、品質に影響を及ぼす係数の意味を判断する。
図35は、候補モデルと理論モデルとの照合例を示す図である。図35の例では、理論モデル管理テーブル121aには、理論モデルに対応付けて、理論モデルの意味と、理論モデルに含まれる係数と、各係数の意味とが設定されている。
モデル評価部180は、例えば最適モデルとして抽出された候補モデル91と理論モデルとを単純化して、レーベンシュタイン距離法を用いて類似度を計算する。そして類似度(最小編集回数)で理論モデルをソートする。次にモデル評価部180は、類似度が高い理論モデル内の係数のうち、候補モデル内の品質関連特徴を示す係数に対応する係数を特定する。そしてモデル評価部180は、特定した係数の意味を、解析結果としてモニタに表示する。
図36は、品質関連因子の解析結果表示画面の一例を示す図である。解析結果表示画面93には、順位が高い順(スコア値の低い順)に、理論モデルの式が表示されている。各理論モデルには、その意味と、含まれる係数が対応付けられている。各係数には、その意味、マッチング係数、相関係数、および構造評価値が対応付けられている。理論モデルに含まれる係数のうち、品質関連特徴を示す係数に関する情報は、強調表示されている。
このようにして、予め製品の性質に応じた基本構造を設定しておくことで、基本構造に適合した候補モデルを抽出することができる。
なお、1種の製品に対して複数の基本構造を定義してもよい。例えば製品の物理的な性質が複雑であり、その性質を表す可能性のある基本構造が複数あり、1つの基本構造に限定するのが困難な場合がある。その場合、モデル評価部180は、基本構造ごとに、各候補モデルのスコア値を計算する。そして、モデル評価部180は、基本構造ごとに計算したスコア値が高い候補モデルから順に、類似する理論モデルと、その理論モデル内の係数の意味とを表示する。
図37は、基本構造が複数ある場合の品質関連因子の解析結果表示画面の一例を示す図である。図37の例は、2つの基本構造90a,90bに基づいて、候補モデルごとのスコア値を計算した場合である。モデル評価部180は、候補モデルに類似する理論モデルと基本構造との組に対応するレコードをスコア値で昇順にソートし、解析結果表示画面94に表示する。
解析結果表示画面94では、理論モデルに対応付けて基本構造一致部が表示されている。基本構造一致部には、スコア値の計算元となった基本構造が表示されており、その基本構造内の品質関連特徴とされた係数が強調表示されている。
このようにして、製品の構造を考慮して最適モデルを決定することができ、製品の品質に影響を及ぼす因子を適確に特定することができる。
〔その他の実施の形態〕
第2および第3の実施の形態では、GPにより候補モデルを構築しているが、他の方法で候補モデルを構築してもよい。また候補モデル構築の終了条件として、例えば構築した候補モデルが最大量を超えることや、GPにより構築した候補モデルの世代が、所定の世代に達したことを用いてもよい。
また第2の実施の形態では、マッチング係数と修正相関係数との積をスコア値としているが、第2の実施の形態においても第3の実施の形態と同様に、マッチング係数と相関係数とのランキングに基づいてスコア値を計算してもよい。
また、候補モデルと理論モデルとの類似度の計算、候補モデルと基本構造との類似度の計算に、レーベンシュタイン距離法以外の方法を用いてもよい。
以上、実施の形態を例示したが、実施の形態で示した各部の構成は同様の機能を有する他のものに置換することができる。また、他の任意の構成物や工程が付加されてもよい。さらに、前述した実施の形態のうちの任意の2以上の構成(特徴)を組み合わせたものであってもよい。