IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ オムロン株式会社の特許一覧

特開2024-80445モデル因子決定装置、方法、及びプログラム
<>
  • 特開-モデル因子決定装置、方法、及びプログラム 図1
  • 特開-モデル因子決定装置、方法、及びプログラム 図2
  • 特開-モデル因子決定装置、方法、及びプログラム 図3
  • 特開-モデル因子決定装置、方法、及びプログラム 図4
  • 特開-モデル因子決定装置、方法、及びプログラム 図5
  • 特開-モデル因子決定装置、方法、及びプログラム 図6
  • 特開-モデル因子決定装置、方法、及びプログラム 図7
  • 特開-モデル因子決定装置、方法、及びプログラム 図8
  • 特開-モデル因子決定装置、方法、及びプログラム 図9
  • 特開-モデル因子決定装置、方法、及びプログラム 図10
  • 特開-モデル因子決定装置、方法、及びプログラム 図11
  • 特開-モデル因子決定装置、方法、及びプログラム 図12
  • 特開-モデル因子決定装置、方法、及びプログラム 図13
  • 特開-モデル因子決定装置、方法、及びプログラム 図14
  • 特開-モデル因子決定装置、方法、及びプログラム 図15
  • 特開-モデル因子決定装置、方法、及びプログラム 図16
  • 特開-モデル因子決定装置、方法、及びプログラム 図17
  • 特開-モデル因子決定装置、方法、及びプログラム 図18
  • 特開-モデル因子決定装置、方法、及びプログラム 図19
  • 特開-モデル因子決定装置、方法、及びプログラム 図20
  • 特開-モデル因子決定装置、方法、及びプログラム 図21
  • 特開-モデル因子決定装置、方法、及びプログラム 図22
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024080445
(43)【公開日】2024-06-13
(54)【発明の名称】モデル因子決定装置、方法、及びプログラム
(51)【国際特許分類】
   G06F 30/27 20200101AFI20240606BHJP
   G05B 19/418 20060101ALI20240606BHJP
   G06N 20/00 20190101ALI20240606BHJP
   G06F 115/12 20200101ALN20240606BHJP
   G06F 119/18 20200101ALN20240606BHJP
【FI】
G06F30/27
G05B19/418 Z
G06N20/00 130
G06F115:12
G06F119:18
【審査請求】未請求
【請求項の数】8
【出願形態】OL
(21)【出願番号】P 2022193635
(22)【出願日】2022-12-02
(71)【出願人】
【識別番号】000002945
【氏名又は名称】オムロン株式会社
(74)【代理人】
【識別番号】110001519
【氏名又は名称】弁理士法人太陽国際特許事務所
(72)【発明者】
【氏名】平光 則仁
(72)【発明者】
【氏名】岡田 浩
(72)【発明者】
【氏名】中野 一志
(72)【発明者】
【氏名】瀧澤 誠
【テーマコード(参考)】
3C100
5B146
【Fターム(参考)】
3C100AA70
3C100BB12
3C100BB13
3C100BB27
3C100EE07
5B146AA22
5B146BA04
5B146DC03
5B146DJ02
(57)【要約】
【課題】製品の製造プロセスにおいて製品に生じる現象を予測するCAEモデルによる予測精度を向上させる。
【解決手段】因子分析部30が、加工時の製品の状態に影響を与える複数の因子の各々の、状態に与える影響度を算出し、構築部44が、影響度に基づいて複数の因子から選定した因子を設定することにより、状態をシミュレーションするCAEモデル48を構築し、決定部46が、CAEモデル48によるシミュレーション結果と、実際の測定値との誤差を最小化するように、CAEモデル48に設定した因子の水準を決定する。
【選択図】図2
【特許請求の範囲】
【請求項1】
加工時の製品の状態に影響を与える複数の因子の各々の、前記状態に与える影響度を算出する因子分析部と、
前記影響度に基づいて前記複数の因子から選定した因子を設定することにより、前記状態をシミュレーションするモデルを構築する構築部と、
前記モデルによるシミュレーション結果と、実際の測定値との誤差を最小化するように、前記モデルに設定した因子の水準を決定する決定部と、
を含むモデル因子決定装置。
【請求項2】
前記構築部は、前記複数の因子のうち、前記モデルに設定する因子以外の因子に関連する前記モデルの構成を簡略化して前記モデルを構築する請求項1に記載のモデル因子決定装置。
【請求項3】
前記決定部は、因子の値を選定した水準に設定した因子条件の下での前記シミュレーション結果、及び前記因子条件の下で測定された前記測定値を取得して、前記誤差を算出する請求項1又は請求項2に記載のモデル因子決定装置。
【請求項4】
前記決定部は、前記モデルに設定する因子及び複数の水準を直交表に割り当てて得られる各実験条件の下での前記シミュレーション結果と前記測定値とを比較した要因効果図に基づいて、各因子の水準を選定することにより、前記因子条件を設定する請求項3に記載のモデル因子決定装置。
【請求項5】
前記決定部は、前記誤差が所定値以上の場合、前記因子分析部による影響度の算出、前記構築部による因子の選定、前記実験条件の設定、前記各因子の水準の選定の少なくとも1つをやり直して、前記因子の水準を再決定する請求項4に記載のモデル因子決定装置。
【請求項6】
前記因子分析部は、
前記複数の因子の各々の値を異ならせた分析条件毎に、前記加工時の製品の状態を示す状態情報を取得する取得部と、
前記状態情報を用いて、前記複数の因子の各々の値が入力された場合に、加工時の製品の状態を予測する機械学習モデルを学習する学習部と、
前記学習部による学習結果に基づいて、前記複数の因子と前記機械学習モデルによる予測結果とに相関があるか否かを判定する判定部と、
前記判定部により相関があると判定された場合に、前記状態情報を用いた重回帰分析により、前記予測結果に対する前記複数の因子の各々の影響度を算出する算出部と、
を含む請求項1又は請求項2に記載のモデル因子決定装置。
【請求項7】
因子分析部が、加工時の製品の状態に影響を与える複数の因子の各々の、前記状態に与える影響度を算出し、
構築部が、前記影響度に基づいて前記複数の因子から選定した因子を設定することにより、前記状態をシミュレーションするモデルを構築し、
決定部が、前記モデルによるシミュレーション結果と、実際の測定値との誤差を最小化するように、前記モデルに設定した因子の水準を決定する
モデル因子決定方法。
【請求項8】
コンピュータを、
加工時の製品の状態に影響を与える複数の因子の各々の、前記状態に与える影響度を算出する因子分析部、
前記影響度に基づいて前記複数の因子から選定した因子を設定することにより、前記状態をシミュレーションするモデルを構築する構築部、及び、
前記モデルによるシミュレーション結果と、実際の測定値との誤差を最小化するように、前記モデルに設定した因子の水準を決定する決定部
として機能させるためのモデル因子決定プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、モデル因子決定装置、モデル因子決定方法、及びモデル因子決定プログラムに関する。
【背景技術】
【0002】
従来、半導体等の製品の製造プロセスにおいて製品に生じる現象(例えば、基板の反り等)を、モデルを用いてシミュレーションすることが行われている。例えば、実際の製造現場で発生している、不良の要因に対する対策が必ずしも一対一の関係ではない(一致しない)ことや、現場での対策が必ずしも正確ではない場合でも、不良の要因を推定する推定システムが提案されている。このシステムは、不良パターン、観測値と要対策箇所の対応を示す要因絞り込み部と、潮流から4Mのうちどれが要因に影響を最も与えているか判定する4M潮流判定部と、学習済み統計モデルの再学習をするモデル再学習部を持つ。そして、このシステムは、現場ユーザの対策内容と4M情報から、要因推定を高精度化する(特許文献1)。
【0003】
また、めっき処理で得られる面内均一性を高めるための実施条件を決めやすくするめっき支援システムが提案されている。このシステムは、基板の電解めっき処理に関する想定条件に基づいて、基板に形成されるめっき膜の面内均一性値を予測するシミュレータと、複数の想定条件に関して、各想定条件と面内均一性値を対応づける数値解析データを記憶する数値解析データ記憶部とを有する。また、このシステムは、数値解析データに基づく回帰分析によって、面内均一性値を目的変数とし、想定条件の変数を説明変数とするモデルを推計する回帰分析部を有する。また、このシステムは、推計されたモデルを用いて、めっき対象基板の電解めっき処理において形成されるめっき膜の面内均一性に関わる想定条件の推奨値である実施条件を探索する実施条件探索部を有する(特許文献2)。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2021-189466号公報
【特許文献2】特開2021-114073号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
例えば、プリント基板への部品実装時の基板の反りをCAE(Computer Aided Engineering)モデルでシミュレーションする際に、従来では、CAEモデルにおいて、基板層構成、寸法、温度条件等の実基板条件を可能な限り再現する。しかし、CAEモデルで実際の状態を再現するには限界があるため、実際の状態とCAEモデルでシミュレーションされる状態との間の誤差が大きくなるという問題があった。
【0006】
本発明は、上記の点に鑑みてなされたものであり、製品の製造プロセスにおいて製品に生じる現象を予測するCAEモデルによる予測精度を向上させることを目的とする。
【課題を解決するための手段】
【0007】
上記目的を達成するために、第1態様に係るモデル因子決定装置は、加工時の製品の状態に影響を与える複数の因子の各々の、前記状態に与える影響度を算出する因子分析部と、前記影響度に基づいて前記複数の因子から選定した因子を設定することにより、前記状態をシミュレーションするモデルを構築する構築部と、前記モデルによるシミュレーション結果と、実際の測定値との誤差を最小化するように、前記モデルに設定した因子の水準を決定する決定部と、を含んで構成される。
【0008】
また、第2態様に係るモデル因子決定方法は、因子分析部が、加工時の製品の状態に影響を与える複数の因子の各々の、前記状態に与える影響度を算出し、構築部が、前記影響度に基づいて前記複数の因子から選定した因子を設定することにより、前記状態をシミュレーションするモデルを構築し、決定部が、前記モデルによるシミュレーション結果と、実際の測定値との誤差を最小化するように、前記モデルに設定した因子の水準を決定する方法である。
【0009】
また、第3態様に係るモデル因子決定プログラムは、コンピュータを、加工時の製品の状態に影響を与える複数の因子の各々の、前記状態に与える影響度を算出する因子分析部、前記影響度に基づいて前記複数の因子から選定した因子を設定することにより、前記状態をシミュレーションするモデルを構築する構築部、及び、前記モデルによるシミュレーション結果と、実際の測定値との誤差を最小化するように、前記モデルに設定した因子の水準を決定する決定部として機能させるためのプログラムである。
【発明の効果】
【0010】
本発明に係るモデル因子決定装置、方法、及びプログラムによれば、製品の製造プロセスにおいて製品に生じる現象を予測するCAEモデルによる予測精度を向上させることができる。
【図面の簡単な説明】
【0011】
図1】モデル因子決定装置のハードウェア構成を示すブロック図である。
図2】モデル因子決定装置の機能構成の例を示すブロック図である。
図3】因子分析部の機能構成の例を示すブロック図である。
図4】因子水準表の一例を示す概略図である。
図5】基板の反りによる製品の不具合を説明するための図である。
図6】基板の反りの測定について説明するための図である。
図7】基板表面の測定点を説明するための図である。
図8】基板表面の高さが測定される温度を説明するための図である。
図9】基板表面形状データのデータ構成の一例を示す図である。
図10】データ拡張の一例を説明するための図である。
図11】データ拡張の一例を説明するための図である。
図12】予測モデルの学習における損失関数の収束を説明するための図である。
図13】予測モデルの学習における予測誤差の一例を説明するための図である。
図14】測定値と予測値との相関を示すグラフである。
図15】各因子の影響度の算出結果の一例を示す概略図である。
図16】CAEモデルの構築を説明するための図である。
図17】実験条件の設定を説明するための図である。
図18】要因効果図の一例を示す図である。
図19】確認実験の一例を示す図である。
図20】各因子条件におけるCAE値と測定値との誤差の一例を示す図である。
図21】モデル因子決定処理の流れを示すフローチャートである。
図22】因子分析処理の流れを示すフローチャートである。
【発明を実施するための形態】
【0012】
以下、本発明の実施形態の一例を、図面を参照しつつ説明する。なお、各図面において同一又は等価な構成要素及び部分には同一の参照符号を付与している。また、図面の寸法及び比率は、説明の都合上誇張されており、実際の比率とは異なる場合がある。
【0013】
まず、本実施形態に係るモデル因子決定装置のハードウェア構成について説明する。
【0014】
図1は、本実施形態に係るモデル因子決定装置10のハードウェア構成を示すブロック図である。図1に示すように、モデル因子決定装置10は、CPU(Central Processing Unit)12、メモリ14、記憶装置16、入力装置18、出力装置20、記憶媒体読取装置22、及び通信I/F(Interface)24を有する。各構成は、バス26を介して相互に通信可能に接続されている。
【0015】
記憶装置16には、モデル因子決定処理を実行するためのモデル因子決定プログラムが格納されている。CPU12は、中央演算処理ユニットであり、各種プログラムを実行したり、各構成を制御したりする。すなわち、CPU12は、記憶装置16からプログラムを読み出し、メモリ14を作業領域としてプログラムを実行する。CPU12は、記憶装置16に記憶されているプログラムに従って、上記各構成の制御及び各種の演算処理を行う。
【0016】
メモリ14は、RAM(Random Access Memory)により構成され、作業領域として一時的にプログラム及びデータを記憶する。記憶装置16は、ROM(Read Only Memory)、及びHDD(Hard Disk Drive)、SSD(Solid State Drive)等により構成され、オペレーティングシステムを含む各種プログラム、及び各種データを格納する。
【0017】
入力装置18は、例えば、キーボードやマウス等の、各種の入力を行うための装置である。出力装置20は、例えば、ディスプレイやプリンタ等の、各種の情報を出力するための装置である。出力装置20として、タッチパネルディスプレイを採用することにより、入力装置18として機能させてもよい。
【0018】
記憶媒体読取装置22は、CD(Compact Disc)-ROM、DVD(Digital Versatile Disc)-ROM、ブルーレイディスク、USB(Universal Serial Bus)メモリ等の各種記憶媒体に記憶されたデータの読み込みや、記憶媒体に対するデータの書き込み等を行う。通信I/F24は、他の機器と通信するためのインタフェースであり、例えば、イーサネット(登録商標)、FDDI、Wi-Fi(登録商標)等の規格が用いられる。
【0019】
次に、本実施形態に係るモデル因子決定装置10の機能構成について説明する。
【0020】
図2は、モデル因子決定装置10の機能構成の例を示すブロック図である。図2に示すように、モデル因子決定装置10は、機能構成として、因子分析部30と、構築部44と、決定部46と、CAEモデル48とを含む。各機能構成は、CPU12が記憶装置16に記憶されたモデル因子決定プログラムを読み出し、メモリ14に展開して実行することにより実現される。
【0021】
ここで、図3を参照して、因子分析部30について詳細に説明する。図3は、因子分析部30のより詳細な機能構成の例を示すブロック図である。図3に示すように、因子分析部30の所定の記憶領域には、因子水準表40と、予測モデル42とが記憶される。予測モデル42は、製品の製造プロセスにおいて製品に生じる現象を予測する機械学習モデルである。なお、後述する因子分析処理の初期段階で因子分析部30に記憶される予測モデル42は、学習前の機械学習モデルである。予測モデル42は、例えば、畳み込みニューラルネットワーク(CNN:Convolutional Neural Network)等の深層学習による機械学習モデルである。
【0022】
因子水準表40は、予測に影響を与える複数の因子の各々について各水準の値を定めた表である。図4に、因子水準表40の一例を概略的に示す。図4の例では、各因子について、3つの水準(水準1、水準2、水準3)の各々の値(A1、A2、B1等)を定めた因子水準表40の例を示している。
【0023】
なお、本実施形態では、製品の製造プロセスにおいて製品に生じる現象として、電化製品等に使われるプリント基板の部品実装プロセスにおける基板の反りを想定する。プリント基板の部品実装プロセスには、基板上に部品を配置し、リフロー又はフローはんだ付けにより、部品を基板上に実装する部品実装工程が含まれる。この部品実装工程のはんだ付け時の加熱冷却により、基板に反りが生じる場合がある。図5に示すように、基板に反りが生じた場合、部品がはんだ付けされる基板上の部分であるランドが部品に対して移動することになり、図5中の矢印で示す箇所に引っ張り応力が発生し、基板との接合部である部品の一部及びはんだにクラックが発生する可能性がある。これにより、絶縁抵抗不良、静電容量低下等の製品特性の劣化が生じ、製品の不具合に繋がる。また、コネクタ等、端子のはんだ付けの場合には、基板に対する端子の浮きが生じ、同様に、製品の不具合に繋がる。
【0024】
本実施形態では、上記のような製品の不具合を抑制するため、すなわち、部品実装工程における基板の反りを抑制するために、基板の反りに影響する因子、及びそれらの因子の影響度を明確化する。これにより、設計時等に各因子の影響度を反映することで、反りによる不具合の少ない基板の設計を可能にする。
【0025】
上記を踏まえ、因子水準表40には、基板の種別、外形、層構成等の基板形状に応じて、基板の反りに影響する因子として想定される各因子(例えば、基板厚さ、基板の材質、部品の種類等)と、各因子の各水準についての値とを定めておけばよい。
【0026】
また、図3に示すように、因子分析部30は、より詳細な機能構成として、取得部32と、学習部34と、判定部36と、分析部38とを含む。
【0027】
取得部32は、加工時の製品の状態に影響を与える複数の因子の各々の値を異ならせた条件毎に、加工時の製品の状態を示す状態情報を取得する。本実施形態においては、取得部32は、上述した因子水準表40に定められた各因子の水準値を組み合わせた複数の条件下での部品実装工程における基板表面形状データを状態情報として取得する。
【0028】
図6に示すように、基板に反りが生じているか否かは、基板の各位置の高さを測定することにより把握可能である。図6は、基板の中心を通る長手方向及び短手方向のそれぞれの直線に沿った位置における基板の高さを示したものである。図6の左図は、大きな反りが生じていない状態、図6の中央の図は、下に凸の方向に大きな反りが生じている状態、図6の右図は、上に凸の方向に大きな反りが生じている状態を表している。このような状態を捉えるために、本実施形態では、基板表面形状データとして、図7に示すように、基板表面の複数個所(図7の例では、9か所)の測定点における高さが測定されている。なお、図7において、白丸が測定点であり、白丸内の数字は、各測定点の番号を示している。
【0029】
また、上述したように、部品実装工程には、リフロー又はフローはんだ付けによる加熱が行われる。そこで、部品実装工程中において、基板表面の温度が、図8に示す複数の測定温度(図8の例では、a~j)になった時点での各測定点の高さが、基板表面形状データとして測定されている。したがって、取得部32は、図9に示すように、各測定点についての、各温度における高さで表される基板表面形状データを状態情報として取得する。
【0030】
学習部34は、取得部32により取得された状態情報と、因子水準表40とを用いて、複数の因子の各々の値が入力された場合に、加工時の製品の状態を予測する機械学習モデルである予測モデル42を学習する。
【0031】
具体的には、学習部34は、取得された状態情報に基づいて、予測モデル42を学習するための学習データを作成する。例えば、学習部34は、状態情報が示す各温度における基板の各測定点の高さを目的変数とし、因子水準表40に定められている複数の因子から選定された所定数の因子を説明変数とする学習データを作成する。因子の選定は、因子の組み合わせを総当り的に選定してもよいし、予め定めた優先度順に選定してもよいし、ユーザにより指定された因子を選定してもよいし、全ての因子を選定してもよい。ここで選定される因子を、以下では、「取り上げ因子」という。
【0032】
また、学習部34は、作成した学習データから、データ拡張を行って、拡張学習データを作成する。これは、不具合品の発生確率が低く、サンプルデータ数が少ないこと、条件を変更しながら大量のデータを取得することが難しいこと等を考慮したものである。具体的には、学習部34は、作成した学習データの平均、標準偏差等の統計情報を変えることなく、値を変更したデータを拡張学習データとして作成する。
【0033】
例えば、図10に示すように、説明変数と目的変数とで表される空間に学習データをプロット(図10中の黒丸)する。ここで、2水準の学習データでは、予測モデル42の学習が困難である。具体的には、2つの学習データの間の説明変数が予測モデル42に入力された場合、予測結果が安定しなくなる。特に、2つの学習データの中間部分では、図10の上図中の両矢印で示すように、目的変数の取り得る範囲が大きく、予測誤差が大きくなる可能性が高い。そこで、学習部34は、図10の下図に示すように、2つの学習データの線形性を確認したうえで、その中点(図10中の白丸)に対応するデータを拡張学習データとして作成する。
【0034】
また、例えば、学習部34は、図11に示すように、各学習データの値を誤差分ずらして拡張学習データを作成してもよい。誤差分は、例えば、学習データとの誤差が±0.05の範囲、±0.025の範囲等としてよい。これにより、データ量5倍に拡張可能である。なお、図10では、学習データが存在する箇所を実線、学習データとの誤差が±0.025の範囲を破線、学習データとの誤差が±0.05の範囲を一点鎖線で表している。
【0035】
学習部34は、作成した拡張学習データを含む学習データの説明変数を予測モデル42に入力して予測される予測結果と、学習データの目的変数との差である予測誤差を含む損失関数を最小化するように、予測モデル42のパラメータを更新する。例えば、更新回数が所定回数に達した際のパラメータが設定された予測モデル42を学習済みの予測モデル42とする。
【0036】
本実施形態では、学習データとして、拡張学習データも用いることで、すなわち、データ拡張を行うことで、図12に示すように、学習の進度に対する損失関数の収束が早くなる。図12の例では、学習データの一部を検証データとして、交差検証を行った例である。また、図12の例では、損失関数として、予測結果と目的変数との平均二乗誤差を用いている。また、図13に示すように、データ拡張ありの場合の方が、予測誤差も小さく抑えることができる。
【0037】
また、学習部34は、後述する判定部36により、取り上げ因子と予測モデル42による予測結果とに相関がないと判定された場合、取り上げ因子を選定し直し、再度予測モデル42の学習を実行する。また、学習部34は、再度予測モデル42の学習を実行する場合、拡張学習データの作成方法又は作成範囲を変更するなどして、予測モデル42を学習する学習データを変更するようにしてもよい。
【0038】
判定部36は、学習部34による学習結果に基づいて、取り上げ因子と予測モデル42による予測結果とに相関があるか否かを判定する。具体的には、判定部36は、予測モデル42の予測精度が、予め定めた範囲内の場合に、取り上げ因子と予測モデル42による予測結果とに相関があると判定する。例えば、判定部36は、学習済みの予測モデル42における予測誤差又は損失関数が所定値以下の場合に、取り上げ因子と予測モデル42による予測結果とに相関があると判定する。
【0039】
分析部38は、判定部36により相関があると判定された場合に、取得部32で取得された状態情報を用いた重回帰分析により、予測結果に対する複数の因子の各々の影響度を算出する。具体的には、分析部38は、予測モデル42の学習に用いた学習データを用いて、相関があると判定された取り上げ因子の各々に基づく変数を説明変数、取得部32で取得された状態情報を目的変数として設定する。分析部38は、説明変数として、いずれかの取り上げ因子についてのべき乗項、異なる複数の取り上げ因子の組み合わせ(交互作用)を追加してもよいし、取り上げ因子のいずれかを説明変数から除外してもよい。
【0040】
分析部38は、設定した説明変数及び目的変数に基づいて重回帰分析を行い、図14に示すように、真値と予測値との相関を示す重回帰式を求める。なお、図14の右図は、測定値(状態情報が示す値)と予測モデル42による予測値との相関を示すグラフであり、左図は、これを正規化したものである。ここでは、測定値を正規化した値を真値としている。分析部38は、求めた重回帰式の各説明変数についての係数に基づいて、複数の取り上げ因子の各々の影響度を算出する。例えば、分析部38は、係数を標準偏回帰係数とした場合、各説明変数についての標準偏回帰係数の合計に対する、各説明変数についての標準偏回帰係数の割合を影響度として算出する。
【0041】
図15に、各因子の影響度の算出結果の一例を示す。図15の例では、「因子」欄は、重回帰分析の説明変数であり、取り上げ因子単体だけでなく、取り上げ因子のべき乗項や交互作用も含まれる。また、図15の例では、各取り上げ因子の影響度だけでなく、重回帰分析により得られる、係数、係数の絶対値(abs(係数))、標準偏差、t値、t値の絶対値(abs(t))、及びP-値も含まれている。
【0042】
構築部44は、因子分析部30で算出された影響度に基づいて複数の因子から選定した因子を設定することで、基板の反りをシミュレーションするCAEモデル48を構築する。構築部44は、例えば、影響度が所定値以上の因子、又は、影響度が上位所定個の因子を選定する。以下では、ここで選定される因子を「重要因子」という。また、構築部44は、複数の因子のうち、重要因子以外の因子に関連する構成を簡略化してCAEモデル48を構築する。
【0043】
例えば、図16に示すように、構築部44は、基板に関する因子の1つである銅配線パターンを簡略化する場合、CAEモデル48において、実際の銅配線パターンを再現するのではなく、基板を所定範囲毎のエリアに区分し、エリア毎の銅箔の割合を設定する。また、例えば、構築部44は、基板に実装する複数の部品のうち、重要因子に関連する部品のみを抜粋してCAEモデル48上に配置する。
【0044】
決定部46は、構築部44により重要因子を反映して構築されたCAEモデル48によるシミュレーション結果と、実際の測定値との誤差を最小化するように、CAEモデル48に設定した重要因子の水準を決定する。具体的には、決定部46は、各重要因子の水準を選定した因子条件の下でのCAEモデル48のシミュレーション結果(以下、「CAE値」という)、及びその因子条件の下で測定された測定値を用いて、重要因子の水準を決定する。
【0045】
より具体的には、決定部46は、図17に示すように、CAEモデル48に設定する重要因子及び複数の水準を直交表に割り当てて、複数の実験条件を設定する。各重要因子の各水準の値は、因子分析部30の因子水準表40の値を用いてもよいし、別途定めてもよい。図17の上図の例では、予め定めた基準値を水準2、基準値から-10%した値を水準1、基準値から+10%した値を水準3としている。決定部46は、設定した各実験条件について、CAEモデル48でシミュレーションを行ってCAE値を取得する。また、決定部46は、各実験条件について実際に基板の反りを測定した測定値を取得する。そして、決定部46は、CAE値と測定値とのSN比を算出し、図17の各マスに記録する。図17の例では、各実験条件について、ノイズ因子としてノイズ1及び2の各々を適用した場合、及び測定温度として140度、ピーク温度、及び常温を適用した場合の各パターンでシミュレーション及び測定した場合のSN比を記録する例を示している。
【0046】
決定部46は、各実験条件について取得した各パターンのSN比から、図18に示すような要因効果図を作成する。図18の例では、望小特性のSN比を示しており、各プロット点は、各条件に対するCAE値と測定値の差異に対するSN比を示している。決定部46は、作成した要因効果図に基づいて、各重要因子の水準を算出する。例えば、決定部46は、要因効果図の結果から最適な水準を算出する。
【0047】
決定部46は、選定した各重要因子の水準を設定した因子条件でCAEモデル48によるシミュレーションを行ってCAE値を取得する。また、決定部46は、同様の因子条件で実際に基板の反りを測定した測定値を取得する。そして、決定部46は、CAE値と測定値との誤差が所定値未満か否かを判定する。決定部46は、誤差が所定値以上の場合、因子条件を変更する。具体的には、決定部46は、因子分析部30による各因子の影響度の算出、構築部44による重要因子の選定、実験条件の設定、最適な水準の選定の少なくとも1つをやり直して、重要因子の水準を再決定する。決定部46は、誤差が所定値未満となった因子条件における各重要因子の水準を最終的な水準として決定し、構築部44により構築されたCAEモデル48に設定する。
【0048】
また、決定部46は、設定した因子条件を最適条件とし、最適条件以外の条件を比較条件とし、図19に示すような確認実験を行うことで、設定した因子条件の再現性が所定値以上となる場合に、その因子条件が示す各重要因子の水準を決定してもよい。
【0049】
図20に、各因子条件におけるCAE値と測定値との誤差を示す。図20の上図は、誤差因子としてノイズ1を適用したパターン、下図は、誤差因子としてノイズ2を適用したパターンである。因子条件、すなわち、各重要因子に設定する水準によって、ノイズと各因子のCAEと実測との差が変化していることがわかる。
【0050】
次に、本実施形態に係るモデル因子決定装置10の作用について説明する。
【0051】
図21は、モデル因子決定装置10のCPU12により実行されるモデル因子決定処理の流れを示すフローチャートである。CPU12が記憶装置16からモデル因子決定プログラムを読み出して、メモリ14に展開して実行することにより、CPU12がモデル因子決定装置10の各機能構成として機能し、図21に示すモデル因子決定処理が実行される。
【0052】
ステップS10で、因子分析部30が因子分析処理を実行する。ここで、図22を参照して、因子分析処理について説明する。
【0053】
ステップS12で、取得部32が、部品実装工程の各温度において測定された、基板表面の各測定点の高さのデータである基板表面形状データを状態情報として取得する。次に、ステップS14で、学習部34が、因子水準表40に定められている複数の因子から、所定数の因子を取り上げ因子として選定する。
【0054】
次に、ステップS16で、学習部34が、状態情報が示す各温度における基板の各測定点の高さを目的変数とし、上記ステップS14で選定した取り上げ因子を説明変数とする学習データを作成する。さらに、学習部34が、学習データを拡張した拡張学習データを作成する。
【0055】
次に、ステップS18で、学習部34が、拡張学習データを含む学習データの説明変数を予測モデル42に入力して予測される予測結果と、学習データの目的変数との差である予測誤差を含む損失関数を最小化するように、予測モデル42のパラメータを更新する。学習部34は、更新回数が所定回数に達するまでパラメータを更新することにより、予測モデル42を学習する。
【0056】
次に、ステップS20で、判定部36が、学習済みの予測モデル42における予測誤差又は損失関数が所定値以下か否か等を判定することにより、取り上げ因子と予測モデル42による予測結果とに相関があるか否かを判定する。相関がある場合には、ステップS22へ移行し、相関がない場合には、ステップS14に戻る。
【0057】
ステップS22では、分析部38が、予測モデル42の学習に用いた学習データを用いて、相関があると判定された取り上げ因子の各々に基づく変数を説明変数、予測モデル42の予測結果を目的変数として設定し、重回帰分析を行う。次に、ステップS24で、分析部38が、重回帰分析により求まる重回帰式の各説明変数についての係数に基づいて、複数の取り上げ因子の各々の影響度を算出する。次に、ステップS26で、分析部38が、算出した複数の取り上げ因子の各々の影響度を出力し、因子分析処理を終了して、モデル因子決定処理(図21)にリターンする。
【0058】
次に、ステップS30で、構築部44が、例えば、影響度が所定値以上の因子、又は、影響度が上位所定個の因子を重要因子として選定し、選定した重要因子を反映すると共に、それ以外の因子に関する構成を簡略化してCAEモデル48を構築する。次に、ステップS32で、決定部46が、CAEモデル48に設定する重要因子及び複数の水準を直交表に割り当てて、複数の実験条件を設定する。次に、ステップS34で、決定部46が、設定した各実験条件について、CAEモデル48でシミュレーションを行ってCAE値を取得すると共に、実際に基板の反りを測定した測定値を取得する。
【0059】
次に、ステップS36で、決定部46が、CAE値と測定値との差異の望小SN比を算出し、要因効果図を作成する。次に、ステップS38で、決定部46が、各重要因子について、要因効果図から最適な水準を算出して因子条件を設定する。次に、決定部46が、ステップS40で、設定した因子条件でCAEモデル48によるシミュレーションを行って取得したCAE値と、同様の因子条件で実際に基板の反りを測定して取得した測定値との誤差を算出する。
【0060】
次に、ステップS42で、決定部46が、算出した誤差が所定値未満か否かを判定する。誤差が所定値以上の場合には、ステップS10に戻り、誤差が所定値未満の場合には、ステップS44へ移行する。ステップS44では、誤差が所定値未満となった因子条件における各重要因子の水準を最終的な水準として決定し、構築部44により構築されたCAEモデル48に設定し、モデル因子決定処理を終了する。
【0061】
以上説明したように、本実施形態に係るモデル因子決定装置は、基板の反りに影響を与える複数の因子の各々の、反りに与える影響度を算出する。また、モデル因子決定装置は、算出された影響度に基づいて複数の因子から選定した因子を設定することにより、基板の反りをシミュレーションするCAEモデルを構築する。そして、モデル因子決定装置は、CAEモデルによるシミュレーション結果と、実際の測定値との誤差を最小化するように、CAEモデルに設定した因子の水準を決定する。これにより、反りの予測への影響の少ない因子による誤差を抑制できるため、CAEモデルによる予測精度を向上させることができる。
【0062】
また、CAEモデルによる予測精度が向上することにより、基板設計後に基板を製作及び実験のトライアンドエラーの繰り返しを低減することができる。その結果、製品の開発費、開発期間等の開発効率を向上させることができる。
【0063】
また、本実施形態に係るモデル因子決定装置は、基板の反りに影響を与える複数の因子の各々の値を異ならせた条件毎に、部品実装工程の各温度において測定された、基板表面の各測定点の高さのデータである基板表面形状データを状態情報として取得する。また、モデル因子決定装置は、状態情報及び因子水準表を用いて、基板の反りを予測する予測モデルを学習し、その学習結果に基づいて、複数の因子と予測モデルによる予測結果とに相関があるか否かを判定する。そして、モデル因子決定装置は、相関があると判定された場合に、予測モデルの学習に用いた学習データにより重回帰分析を行い、予測結果に対する複数の因子の各々の影響度を分析して、出力する。このように、予測モデルによる予測結果と因子とに相関があることを確認したうえで、重回帰分析により因子の影響度を分析することで、基板の反りを予測する予測モデルにおいて、予測に影響を与える因子の影響度を分析することができる。すなわち、ブラックボックスである予測モデルの予測プロセスについて、基板の反りのメカニズムを考慮した論理的な説明が可能になる。
【0064】
上記のように、本実施形態では、CNN等の予測モデルによる基板の反りの予測において、予測結果に対する発生原因(影響する因子とその影響度)と予測結果(基板の反り量)との関係性が説明できるようになる。これにより、基板設計者が設計した基板の反りの予測結果に対して、基板のどの因子をチューニングすれば、基板の反り量を低減させることができるかを明確に理解した上で、基板設計を行うことができる。したがって、ユーザは、基板設計において、根拠を持った設計が可能となるため、試作後の設計変更が減少して開発効率の向上につながる。分析結果により、基板設計時に考慮すべき基板の反りに影響する因子とその影響度との因果関係が明確になり、これが基板設計のノウハウとなり、基板設計者のスキルアップにつながる。
【0065】
なお、上記実施形態では、製品の製造プロセスにおいて製品に生じる現象として、基板の反りを一例として説明したが、これに限定されない。本実施形態は、物理法則、メカニズム等に従って加工及び組立される製品への適用が可能である。ここでの加工は、原材料に手を加えて製品を製作することである。加工の工法の一例は、成形、プレス、接合等であり、加工の原理の一例は、加熱、圧力、振動、光等である。本実施形態は、電子部品等、製品特性を満足するために多数の影響因子が存在し、それらの影響因子を、製品特性を満たすために製品設計で決定していくような製品に適用することが有効である。すなわち、製品特性に対する因子間の関係性がトレードオフとなっており、最適条件が容易に導出できないような製品である。例えば、本実施形態は、上述した基板の反り以外にも、電子部品の導電部の接触抵抗を予測する予測モデルにおける因子の分析等、他の現象に対しても適用可能である。
【0066】
また、上記実施形態でCPUがソフトウェア(プログラム)を読み込んで実行した因子分析処理を、CPU以外の各種のプロセッサが実行してもよい。この場合のプロセッサとしては、FPGA(Field-Programmable Gate Array)等の製造後に回路構成を変更可能なPLD(Programmable Logic Device)、及びASIC(Application Specific Integrated Circuit)等の特定の処理を実行させるために専用に設計された回路構成を有するプロセッサである専用電気回路等が例示される。また、因子分析処理を、これらの各種のプロセッサのうちの1つで実行してもよいし、同種又は異種の2つ以上のプロセッサの組み合わせ(例えば、複数のFPGA、及びCPUとFPGAとの組み合わせ等)で実行してもよい。また、これらの各種のプロセッサのハードウェア的な構造は、より具体的には、半導体素子等の回路素子を組み合わせた電気回路である。
【0067】
また、上記実施形態では、モデル因子決定プログラムが記憶装置に予め記憶(インストール)されている態様を説明したが、これに限定されない。プログラムは、CD-ROM、DVD-ROM、ブルーレイディスク、USBメモリ等の記憶媒体に記憶された形態で提供されてもよい。また、プログラムは、ネットワークを介して外部装置からダウンロードされる形態としてもよい。
【0068】
上記実施形態に関し、さらに以下の付記を開示する。
【0069】
(付記項1)
加工時の製品の状態に影響を与える複数の因子の各々の、前記状態に与える影響度を算出する因子分析部と、
前記影響度に基づいて前記複数の因子から選定した因子を設定することにより、前記状態をシミュレーションするモデルを構築する構築部と、
前記モデルによるシミュレーション結果と、実際の測定値との誤差を最小化するように、前記モデルに設定した因子の水準を決定する決定部と、を含み、
前記因子分析部は、
加工時の製品の状態に影響を与える複数の因子の各々の値を異ならせた条件毎に、前記加工時の製品の状態を示す状態情報を取得する取得部と、
前記状態情報を用いて、前記複数の因子の各々の値が入力された場合に、加工時の製品の状態を予測する機械学習モデルを学習する学習部と、
前記学習部による学習結果に基づいて、前記複数の因子と前記機械学習モデルによる予測結果とに相関があるか否かを判定する判定部と、
前記判定部により相関があると判定された場合に、前記状態情報を用いた重回帰分析により、前記予測結果に対する前記複数の因子の各々の影響度を算出する分析部と、
を含むモデル因子決定装置。
【0070】
(付記項2)
前記分析部は、分析した前記複数の因子の各々の影響度、前記影響度が所定値以上の因子、又は前記影響度が上位所定個の因子を含む分析結果を出力する付記項1に記載のモデル因子決定装置。
【0071】
(付記項3)
前記判定部は、前記機械学習モデルの予測精度が、予め定めた範囲内の場合に、前記複数の因子と前記機械学習モデルによる予測結果とに相関があると判定する付記項1又は付記項2に記載のモデル因子決定装置。
【0072】
(付記項4)
前記分析部は、前記複数の因子の各々に基づく変数を説明変数とし、前記状態情報を目的変数として重回帰分析を行って得られる重回帰式の各説明変数についての係数に基づいて、前記複数の因子の各々の影響度を算出する付記項1又は付記項2に記載のモデル因子決定装置。
【0073】
(付記項5)
前記分析部は、前記係数を標準偏回帰係数とし、各説明変数についての標準偏回帰係数の合計に対する、各説明変数についての標準偏回帰係数の割合を前記影響度として算出する付記項4に記載のモデル因子決定装置。
【0074】
(付記項6)
前記分析部は、いずれかの因子についてのべき乗項を前記説明変数に追加する処理、異なる複数の因子の組み合わせを前記説明変数に追加する処理、及び前記複数の因子のいずれかを前記説明変数から除外する処理の少なくとも1つの処理を行う付記項4に記載のモデル因子決定装置。
【0075】
(付記項7)
前記学習部は、前記複数の因子から選定した因子を説明変数とした場合に、前記機械学習モデルにより予測される予測結果と、前記説明変数に対応する前記状態情報との差である予測誤差を含む損失関数を最小化するように前記機械学習モデルのパラメータを更新する付記項1又は付記項2に記載のモデル因子決定装置。
【0076】
(付記項8)
前記学習部は、前記判定部により、前記複数の因子と前記機械学習モデルによる予測結果とに相関がないと判定された場合、前記説明変数とする因子を選定し直す付記項7に記載のモデル因子決定装置。
【符号の説明】
【0077】
10 モデル因子決定装置
12 CPU
14 メモリ
16 記憶装置
18 入力装置
20 出力装置
22 記憶媒体読取装置
24 通信I/F
26 バス
30 因子分析部
32 取得部
34 学習部
36 判定部
38 分析部
40 因子水準表
42 予測モデル
44 構築部
46 決定部
48 CAEモデル
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15
図16
図17
図18
図19
図20
図21
図22