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

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

▶ 富士通株式会社の特許一覧

特開2024-59008最適化プログラム、最適化方法および情報処理装置
<>
  • 特開-最適化プログラム、最適化方法および情報処理装置 図1
  • 特開-最適化プログラム、最適化方法および情報処理装置 図2
  • 特開-最適化プログラム、最適化方法および情報処理装置 図3
  • 特開-最適化プログラム、最適化方法および情報処理装置 図4
  • 特開-最適化プログラム、最適化方法および情報処理装置 図5A
  • 特開-最適化プログラム、最適化方法および情報処理装置 図5B
  • 特開-最適化プログラム、最適化方法および情報処理装置 図6
  • 特開-最適化プログラム、最適化方法および情報処理装置 図7
  • 特開-最適化プログラム、最適化方法および情報処理装置 図8
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024059008
(43)【公開日】2024-04-30
(54)【発明の名称】最適化プログラム、最適化方法および情報処理装置
(51)【国際特許分類】
   G06F 30/10 20200101AFI20240422BHJP
   G06F 30/27 20200101ALI20240422BHJP
【FI】
G06F30/10 100
G06F30/27
【審査請求】未請求
【請求項の数】5
【出願形態】OL
(21)【出願番号】P 2022166472
(22)【出願日】2022-10-17
(71)【出願人】
【識別番号】000005223
【氏名又は名称】富士通株式会社
(74)【代理人】
【識別番号】110002147
【氏名又は名称】弁理士法人酒井国際特許事務所
(72)【発明者】
【氏名】丸尾 昭人
(72)【発明者】
【氏名】實宝 秀幸
【テーマコード(参考)】
5B146
【Fターム(参考)】
5B146DC03
5B146DC04
5B146DJ01
5B146EA11
(57)【要約】
【課題】効率的に形状の最適化を行う。
【解決手段】実施形態の最適化プログラムは、設定する処理と、特定する処理とをコンピュータに実行させる。設定する処理は、設計対象の領域に対し、この領域における設計対象物の形状に対応する形状関数の基底関数として複数のガウス関数を設定する。特定する処理は、複数のガウス関数を配置するか否かを特定することにより、配置すると特定した複数のガウス関数を結合した形状関数が示す設計対象物の形状を特定する。
【選択図】図6
【特許請求の範囲】
【請求項1】
設計対象の領域に対し、当該領域における設計対象物の形状に対応する形状関数の基底関数として複数のガウス関数を設定し、
複数の前記ガウス関数を配置するか否かを特定することにより、配置すると特定した複数の前記ガウス関数を結合した前記形状関数が示す前記設計対象物の形状を特定する、
処理をコンピュータに実行させることを特徴とする最適化プログラム。
【請求項2】
前記特定する処理は、複数の前記ガウス関数を任意に配置した形状ごとに、当該形状における特性値を対応付けた学習データに基づいてFM(Factorization Machines)を生成し、生成した前記FMをQUBO(Quadratic Unconstrained Binary Optimization)に変換し、変換した前記QUBOに対するアニーリングにより複数の前記ガウス関数を配置するか否かを特定する、
ことを特徴とする請求項1に記載の最適化プログラム。
【請求項3】
前記設定する処理は、正値のガウス関数を複数設定するとともに、前記正値のガウス関数それぞれに対応する負値のガウス関数を複数設定する、
ことを特徴とする請求項1に記載の最適化プログラム。
【請求項4】
設計対象の領域に対し、当該領域における設計対象物の形状に対応する形状関数の基底関数として複数のガウス関数を設定し、
複数の前記ガウス関数を配置するか否かを特定することにより、配置すると特定した複数の前記ガウス関数を結合した前記形状関数が示す前記設計対象物の形状を特定する、
処理をコンピュータが実行することを特徴とする最適化方法。
【請求項5】
設計対象の領域に対し、当該領域における設計対象物の形状に対応する形状関数の基底関数として複数のガウス関数を設定し、
複数の前記ガウス関数を配置するか否かを特定することにより、配置すると特定した複数の前記ガウス関数を結合した前記形状関数が示す前記設計対象物の形状を特定する、
処理を実行する制御部を含むことを特徴とする情報処理装置。
【発明の詳細な説明】
【技術分野】
【0001】
本発明の実施形態は、最適化プログラム、最適化方法および情報処理装置に関する。
【背景技術】
【0002】
従来、CAE(Computer Aided Engineering)における製品形状の最適化においては、デジタルアニーラ(DA)等のアニーリングを用いたトポロジ最適化が知られている。このトポロジ最適化では、製品の形状を決める設計領域のCAEメッシュにビットを割り当てて各CAEメッシュに材料を配置するか否かをビットの値(「1」又は「0」)で表す。そして、目的関数(評価関数とも呼ぶ)の値を最大(または最小)とする各ビットの値をアニーリングにより求めることで、製品の形状を最適化する。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2022-68606号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、上記の従来技術では、精度を高めるためにCAEのメッシュを細かくしてCAE規模が大きくなると、使用するビット数が膨大になり効率的にトポロジ最適化を行うことが困難になるという問題がある。例えば、ビット数が膨大になると、アニーリング時の解の収束性が悪くなり、試行回数を多くしないと良い解を得ることが困難となる。また、設計領域において材料が離散的に配置された形状が最適な形状として得られるチェッカーボード問題が生じる場合がある。
【0005】
1つの側面では、効率的に形状の最適化を行うことができる最適化プログラム、最適化方法および情報処理装置を提供することを目的とする。
【課題を解決するための手段】
【0006】
1つの案では、最適化プログラムは、設定する処理と、特定する処理とをコンピュータに実行させる。設定する処理は、設計対象の領域に対し、この領域における設計対象物の形状に対応する形状関数の基底関数として複数のガウス関数を設定する。特定する処理は、複数のガウス関数を配置するか否かを特定することにより、配置すると特定した複数のガウス関数を結合した形状関数が示す設計対象物の形状を特定する。
【発明の効果】
【0007】
効率的に形状の最適化を行うことができる。
【図面の簡単な説明】
【0008】
図1図1は、実施形態にかかる情報処理装置のハードウェア構成の一例を示すブロック図である。
図2図2は、実施形態にかかる情報処理装置の機能構成の一例を示すブロック図である。
図3図3は、実施形態にかかる情報処理装置における領域設定の概要を説明する説明図である。
図4図4は、実施形態にかかる情報処理装置における形状決定の概要を説明する説明図である。
図5A図5Aは、実施形態にかかる情報処理装置の動作例を示すフローチャートである。
図5B図5Bは、実施形態にかかる情報処理装置の動作例を示すフローチャートである。
図6図6は、従来技術と、実施例との結果を説明する説明図である。
図7図7は、従来技術と、実施例との結果を説明する説明図である。
図8図8は、従来技術と、実施例との結果を説明する説明図である。
【発明を実施するための形態】
【0009】
以下、図面を参照して、実施形態にかかる最適化プログラム、最適化方法および情報処理装置を説明する。実施形態において同一の機能を有する構成には同一の符号を付し、重複する説明は省略する。なお、以下の実施形態で説明する最適化プログラム、最適化方法および情報処理装置は、一例を示すに過ぎず、実施形態を限定するものではない。また、以下の各実施形態は、矛盾しない範囲内で適宜組みあわせてもよい。
【0010】
図1は、実施形態にかかる情報処理装置のハードウェア構成の一例を示すブロック図である。図1に示すように、情報処理装置1は、USB(Universal Serial Bus)等の通信線を介して記録装置2、入力装置3、表示装置4およびアニーリングマシン5と接続される。情報処理装置1は、例えばPC(Personal Computer)等を適用できる。
【0011】
記録装置2は、例えば、HDD(Hard Disk Drive)装置、SSD(Solid State Drive)装置等である。記録装置2は、プログラム21、設定情報22、処理対象データ23および演算結果24等を記憶する。
【0012】
プログラム21は、情報処理装置1のCPU11(図2参照)が読み出して実行することで、情報処理装置1における各種機能を提供するプログラムデータである。
【0013】
設定情報22は、情報処理装置1のCPU11がプログラム21を実行する際の各種設定内容を記載したデータである。処理対象データ23は、情報処理装置1における最適化の処理対象となるデータである。例えば、処理対象データ23は、製品の形状を決める設計領域等の変数定義や目的関数などの最適化問題に関する設定条件が含まれる。演算結果24は、処理対象データ23をもとにした情報処理装置1の最適化処理により得られたデータである。例えば、演算結果24は、設計領域における形状等を示すデータである。
【0014】
入力装置3は、ユーザからのデータ入力を受け付ける装置であり、例えば、キーボード、マウス等を適用できる。表示装置4は、情報処理装置1の処理結果等の表示を行うディスプレイなどであり、例えば、LCD(Liquid Crystal Display)等を適用できる。
【0015】
アニーリングマシン5は、情報処理装置1の指示のもと、QUBO(Quadratic Unconstrained Binary Optimization)等の組み合わせ最適化問題を高速に処理する演算装置である。アニーリングマシン5は、DA、SA(Simulated Annealing)、QA(Quantum Annealing)、イジングマシンなど、QUBO等を解ける演算装置であればいずれを適用してもよい。例えば、アニーリングマシン5は、情報処理装置1より目的関数に設定するパラメータ(初期値)を受け付けると、イジングモデルに基づいて、目的関数の値が最適値に近づくように、アニーリング解を求める。アニーリングマシン5は、このようにして得られたアニーリング解を情報処理装置1に出力する。
【0016】
図2は、実施形態にかかる情報処理装置1の機能構成の一例を示すブロック図である。図2に示すように、情報処理装置1は、通信I/F10、CPU11およびRAM12を有する。
【0017】
通信I/F10は、有線又は無線で外部装置等に接続され、CPU11の制御のもとで外部装置等との間でデータの送受信を行う通信インターフェースである。例えば、通信I/F10は、USB等の通信線を介して接続する記録装置2、入力装置3、表示装置4およびアニーリングマシン5との間でデータの送受信を行う。
【0018】
CPU11(CPU:Central Processing Unit)は、通信I/F10を介して記録装置2より読み出したプログラム21をRAM12に展開して順次実行することで、情報処理装置1の動作を中央制御する。具体的には、CPU11は、プログラム21を実行することで、領域設定部110、特性値計算部111、最適化部112としての機能を有する。
【0019】
RAM12(RAM:Random Access Memory)は、CPU11が各種処理を行う際の作業領域を提供する。具体的には、RAM12は、通信I/F10を介して記録装置2より読み出されたプログラム21、設定情報22および処理対象データ23の他、CPU11の処理により得られた演算途上および演算結果24に関する演算データ24aをCPU11より読み書き可能に格納する。
【0020】
領域設定部110は、設計対象物の形状を決める設計領域の設定を行う処理部である。具体的には、領域設定部110は、処理対象データ23に含まれる変数定義の中の座標情報等で指定される設計領域に対し、設計対象物の形状に対応する形状関数の基底関数として複数のガウス関数(以下、ガウス基底関数と呼ぶ)を設定する。
【0021】
情報処理装置1では、このように設定した複数のガウス基底関数を正規化して重ね合わせる(結合する)ことで形状関数を表現する。複数のガウス基底関数を正規化して重ね合わせることで任意の関数を表現できることは、次の(文献1)および(文献2)のとおりである。
【0022】
(文献1):T. Sato, K. Watanabe and H. Igarashi, "Multimaterial Topology Optimization of Electric Machines Based on Normalized Gaussian Network," IEEE Trans. Magn., vol. 51, no. 3, pp. 1-4, March 2015.
(文献2):Y. Otomo and H. Igarashi, "A 3-D Topology Optimization of Magnetic Cores for Wireless Power Transfer Device," IEEE Trans. Magn., vol. 55, no. 6, pp. 1-5, June 2019.
【0023】
このように、情報処理装置1では、CAEメッシュに独立にon/off状態(材料を配置の有無)を与えるのではなく、空間的に滑らかに値が変化するNGnet(ノーマライズ・ガウシアン・ネットワーク、形状関数に相当)の出力により材料の有無等の物性を決定する。
【0024】
具体的には、情報処理装置1は、設計領域の物性(材料の有無など)を次の式(1)に示す形状関数y(x,w)の出力により決定する。
【0025】
【数1】
【0026】
ここで、wは、重み係数を示す。xは位置ベクトルを示す。Nは、ガウス基底関数の数を示す。G(x)は、j番目のガウス基底関数を示す。例えば、情報処理装置1は、式(1)に示す形状関数(y)の出力をもとに、要素(e)の材料情報について、y(x,w)≧0(<0)の場合は材料ありとする。
【0027】
図3は、実施形態にかかる情報処理装置1における領域設定の概要を説明する説明図である。図3に示すように、情報処理装置1は、一例として磁気シールドの形状の最適化を行うものであり、コイル201から生じる磁界(磁束)が対象領域202に漏れることをより少ない磁性体で防ぐように、設計領域203における磁性体の形状を求めるものとする。具体的には、ユーザは、図3の左側に示すようなCAEモデルを最適化対象のモデルとして予め生成し、処理対象データ23として登録しておく。
【0028】
領域設定部110は、この設計領域203に対し、(文献1)および(文献2)と同様に、複数のガウス基底関数301を設定する。ここで、領域設定部110は、複数のガウス基底関数301それぞれについて、正値をとるガウス基底関数とともに、負値をとるガウス基底関数を設定する。これにより、複数のガウス基底関数301を結合した形状関数の出力は、正値をとるガウス基底関数のみを設定した場合と比較して、振れ幅が大きくなる(正と負のガウス基底関数が重なる場合の出力は0)。情報処理装置1では、このように形状関数の出力の振れ幅を大きくすることで、形状関数に基づく物性の精度を高めることができる。
【0029】
特性値計算部111は、設計領域203について形状関数の出力に基づく形状(構造)に対応する特性値を計算する処理部である。例えば、特性値計算部111は、CAEソルバなどが相当する。一例として、磁気シールドの形状の最適化を行う場合、特性値計算部111は、特性値として、設計領域203における磁性体の形状に対応した磁性体面積や対象領域202における漏れ磁界の平均磁束密度などを計算する。
【0030】
最適化部112は、領域設定部110が複数のガウス基底関数301を設定した設計領域203について、ガウス基底関数301の配置問題として目的関数を最大(または最小)とする形状をアニーリングマシン5を用いて特定(決定)する処理部である。
【0031】
具体的には、最適化部112は、次の式(2)のように正負のガウス基底関数301の配置問題とし、アニーリングマシン5のアニーリングにより目的関数を最大(または最小)とする形状を特定する。
【0032】
【数2】
【0033】
ここで、形状関数y(x,s,z)におけるs、z∈{0,1}はアニーリングのビットに対応する。すなわち、sは、i番目の位置に正値のガウス基底関数を配置するか否かを示すビットである。また、zは、i番目の位置に負値のガウス基底関数を配置するか否かを示すビットである。
【0034】
例えば、最適化部112は、s、zのビットをランダムに生成して複数のガウス基底関数301の配置を決定した上で、配置ありのガウス基底関数301を結合した形状関数を求める。ついで、最適化部112は、形状関数の大きさをもとに(例えば関数値>0で材料あり)、設計領域203における形状を特定する。
【0035】
図4は、実施形態にかかる情報処理装置1における形状決定の概要を説明する説明図である。図4に示すように、設計領域203には、96箇所(i=1,2…96)にガウス基底関数301が設定されているものとする。なお、96箇所のそれぞれには、正負のガウス基底関数301(s、z)が設定されている。このガウス基底関数301における重み係数(w)は、sとzをあわせたものとなる(w∈{-1,0,1})。
【0036】
最適化部112は、設計領域203について、複数のガウス基底関数301の配置をランダムに決定し、配置ありのガウス基底関数301を結合した形状関数の値(y)の分布を求める。ついで、最適化部112は、形状関数の大きさにより、設計領域203における材料情報(V)を特定する。具体的には、最適化部112は、材料情報(V)について、y≧0の場合は磁性体、y≧0でない場合は空気(またはその他)とする。
【0037】
ついで、最適化部112は、特性値計算部111を用いて目的関数にかかる特性値を計算する。最適化部112は、上記の処理を繰り返し行うことで、目的関数を最大(または最小)とする形状を特定する。
【0038】
なお、最適化部112は、上述したランダムサーチによる形状の特定だけでなく、FMQAのスキームをDAで実施する手法(FM-DA)により、目的関数を最大(または最小)とする形状の特定を行ってもよい。
【0039】
ここで、FMはFactorization Machinesであり、FMQAのスキームは次の(文献3)のとおりである。また、FMについては次の(文献4)のとおりである。
【0040】
(文献3):K. Kitai et al., Phys. Rev. Research 2, 013319 (2020), https://doi.org/10.1103/PhysRevResearch.2.013319
(文献4):S. Rendle, "Factorization Machines," 2010 IEEE International Conference on Data Mining, 2010, pp. 995-1000, doi: 10.1109/ICDM.2010.127.
【0041】
FM-DAでは、最適化部112は、まず、構造(形状)と特性のセットの初期の学習データを生成する。具体的には、最適化部112は、上述したランダムサーチと同様に設計領域203における形状をランダムに決定し、CAEソルバ(特性値計算部111)で構造の特性値を計算して構造と特性をセットとする学習データを生成する。なお、初期の学習データの生成数は、ユーザが任意に設定する。
【0042】
ついで、最適化部112は、学習データに基づく機械学習によりFMを生成し、生成したFMをQUBOに変換する。なお、(文献4)のとおり、FMはQUBOの形式となっているため、FMを生成することはQUBOを生成することと等価である。また、本実施形態では、FMをQUBOに変換する場合を例示したが、QUBOに変換できるものであればFM以外の機械学習モデルを用いてもよい。
【0043】
ついで、最適化部112は、アニーリングマシン5により、FMより変換したQUBOの最適化(アニーリング)を行い、特性が最も良くなる(目的関数を最大または最小とする)最適構造(各ガウス基底関数301の配置の有無)を求める。
【0044】
ついで、最適化部112は、アニーリングマシン5により得られた最適構造について、配置ありのガウス基底関数301を結合して形状関数を求め、その形状関数の大きさにより構造を特定する。ついで、最適化部112は、特定した構造について、CAEソルバ(特性値計算部111)で特性値を計算し、構造と特性をセットとする学習データに追加する。
【0045】
最適化部112は、上記のFM-DAにかかる処理を終了条件を満たすまで繰り返すことで、設計領域203における最適な構造(形状)を求める。なお、終了条件については、最大反復回数に到達する場合、目的関数の変化量が一定期間ない場合などが含まれる。
【0046】
図5A図5Bは、実施形態にかかる情報処理装置の動作例を示すフローチャートである。図5Aに示すように、処理が開始されると、情報処理装置1は、ユーザからの指示をもとに、最適化の対象となるCAEモデルを生成する(S1)。
【0047】
ついで、領域設定部110は、CEAモデルの設計領域203に複数のガウス基底関数301を配置する(S2)。ついで、最適化部112は、ランダムに正と負のガウス基底関数301の配置を決定し(S3)、配置された正と負のガウス基底関数301を結合して形状関数を計算する(S4)。
【0048】
ついで、最適化部112は、形状関数の大きさにより設計領域203の構造(形状)を決定し(S5)、決定した構造についてCAEソルバ(特性値計算部111)を用いて特性値を計算する(S6)。ついで、最適化部112は、計算結果(特性値)を構造(ガウス基底関数301の配置の有無を示す配列)とともに学習データセットに追加する(S7)。
【0049】
ついで、最適化部112は、初期の学習データセットが十分(ユーザが設定した生成数を満たす)であるか否かを判定する(S8)。初期の学習データセットが十分でない場合(S8:No)、最適化部112はS3へ処理を戻す。
【0050】
初期の学習データセットが十分である場合(S8:Yes)、最適化部112は、学習データセットに含まれる学習データをもとに機械学習を行うことでFMを作成する(S9)。
【0051】
ついで、最適化部112は、作成したFMをQUBOに変換し(S10)、変換したQUBOをアニーリングマシン5のDAなどにより最適化する(S11)。
【0052】
ついで、最適化部112は、図5Bに示すように、最適化結果により正と負のガウス基底関数301の配置の有無を決定し(S12)、配置した正と負のガウス基底関数301より形状関数を計算する(S13)。ついで、最適化部112は、計算して得られた形状関数の大きさにより構造を決定し(S14)、決定した構造について、CAEソルバ(特性値計算部111)を用いて特性値を計算する(S15)。ついで、最適化部112は、計算結果(特性値)を構造(ガウス基底関数301の配置の有無を示す配列)とともに学習データセットに追加する(S16)。
【0053】
ついで、最適化部112は、最大反復回数に到達した、または、目的関数の変化量が一定期間ないなどの終了条件を満たすか否かを判定する(S17)。終了条件を満たさない場合(S17:No)、最適化部112は、S9(図5A参照)へ処理を戻す。
【0054】
終了条件を満たす場合(S17:Yes)、最適化部112は、学習データセットの中から最良な構造(目的関数を最大または最小とする)を取得し(S18)、CAEソルバ(特性値計算部111)を用いて最適化形状を評価(例えば形状のモデリングなど)する(S19)。ついで、最適化部112は、評価結果等の最適化結果を通信I/F10を介して表示装置4に出力し、表示させる(S20)。
【0055】
つぎに、上述した実施形態による(実施例1)、(実施例2)と、(従来技術)との比較を説明する。(実施例1)、(実施例2)および(従来技術)は次のとおりである。
【0056】
(実施例1):設計領域203について、96箇所のガウス基底関数301(正負で192個のガウス基底関数301)の配置問題としたランダムサーチによる形状の最適化
(実施例2):設計領域203について、96箇所のガウス基底関数301(正負で192個のガウス基底関数301)の配置問題としたFM-DAによる形状の最適化
(従来技術):設計領域203について、CAEメッシュ数を4402ビットとしたランダムサーチによる形状の最適化
【0057】
(実施例1)、(実施例2)および(従来技術)において対象とする最適化問題は、磁気シールドの形状の最適化とする。具体的には、対象とする最適化問題では、対象領域202の平均磁束密度の大きさB aveと磁性体面積Smagを最小化する次の式(3)の目的関数を求める。
【0058】
【数3】
【0059】
式(3)において、Eは、設計領域203がすべて空気の場合のB aveの10分の1とする。Eは、設計領域203がすべて磁性体の場合のSmagとする。
【0060】
また、対象とする最適化問題におけるパラメータ設定は、次のとおりである。なお、(実施例1)、(実施例2)および(従来技術)では、同一のパラメータ設定を用いるものとする。
【0061】
[パラメータ設定]
初期点:384(96×4)
反復回数:96
合計CAE計算回数:480(384+96)
α=0.5,β=0.5
【0062】
図6図8は、従来技術と、実施例との結果を説明する説明図である。図6図7において、ケースC1は、(従来技術)の結果を示す。ケースC2は、(実施例1)の結果を示す。ケースC3は、(実施例2)の結果を示す。また、図6のグラフG1は、(実施例1)、(実施例2)および(従来技術)における、エネルギー(E)とCAE解析回数との関係を示す。また、図8のグラフG2は(実施例1)における解の分布を示し、グラフG3は(実施例2)における解の分布を示している。
【0063】
図6に示すように、同一のCAE解析数において、(実施例1)および(実施例2)では、(従来技術)よりも、E値がより小さい良解が得られている。また、(従来技術)ではアニーリングに関して4402ビット(設計領域203のCAEメッシュ数)使用するのに対し、(実施例1)および(実施例2)では、192ビット(正負のガウス基底関数301の配置数)で済む。すなわち、(実施例1)および(実施例2)では、アニーリングにかかるビット数を大幅に削減できる。
【0064】
また、図7に示すように、(従来技術)のケースC1における設計領域203の形状(右側)と、(実施例1)のケースC2における設計領域203の形状(右側)とを比較しても明らかなとおり、ケースC2では、滑らかな形状となっており、チェッカーボード問題が生じていない。
【0065】
また、図8に示すように、(実施例1)のグラフG2と比較すると、FM-DAを用いた(実施例2)のグラフG3では、反復処理の部分で得られた結果はEの小さな領域に集中している。すなわち、(実施例2)では、図6のグラフG1aのように、E値がより小さい領域での探索が繰り返されており、解の探索がより効率的に行われている。
【0066】
以上のように、情報処理装置1は、設計領域203に対し、設計領域203における設計対象物の形状に対応する形状関数の基底関数として複数のガウス関数を設定する。情報処理装置1は、設定した複数のガウス関数を配置するか否かを特定することにより、配置すると特定した複数のガウス関数を結合した形状関数が示す対象物の形状を特定する。
【0067】
これにより、情報処理装置1は、複数のガウス関数を配置するか否かの配置問題としてアニーリングすることができ、各CAEメッシュに材料を配置するか否かの問題としてアニーリングする場合と比較して、ビット数を大幅に削減することができる。このため、情報処理装置1では、アニーリング時の解の収束性を高めることができ、効率的に形状の最適化を行うことができる。また、情報処理装置1では、複数のガウス関数を結合した形状関数により対象物の形状を特定することから、材料が離散的に配置された形状となるチェッカーボード問題が生じることを抑止できる。
【0068】
また、情報処理装置1は、複数のガウス関数を任意に配置した形状ごとに、形状における特性値を対応付けた学習データに基づいてFM(Factorization Machines)を生成する。情報処理装置1は、生成したFMをQUBO(Quadratic Unconstrained Binary Optimization)に変換し、変換したQUBOに対するアニーリングにより複数のガウス関数を配置するか否かを特定する。これにより、情報処理装置1は、最適化問題をQUBO定式化することなくQUBO化し、そのQUBOに対するアニーリングにより形状の特定を行うことができる。
【0069】
また、情報処理装置1は、正値のガウス関数を複数設定するとともに、正値のガウス関数それぞれに対応する負値のガウス関数を複数設定する。このように、情報処理装置1は、正値および負値のガウス関数の配置問題とすることで、例えば、正値のみのガウス関数の配置問題とする場合と比較して、より精度よく形状を特定することができる。
【0070】
以上の実施形態に関し、さらに以下の付記を開示する。
【0071】
(付記1)設計対象の領域に対し、当該領域における設計対象物の形状に対応する形状関数の基底関数として複数のガウス関数を設定し、
複数の前記ガウス関数を配置するか否かを特定することにより、配置すると特定した複数の前記ガウス関数を結合した前記形状関数が示す前記設計対象物の形状を特定する、
処理をコンピュータに実行させることを特徴とする最適化プログラム。
【0072】
(付記2)前記特定する処理は、複数の前記ガウス関数を任意に配置した形状ごとに、当該形状における特性値を対応付けた学習データに基づいてFM(Factorization Machines)を生成し、生成した前記FMをQUBO(Quadratic Unconstrained Binary Optimization)に変換し、変換した前記QUBOに対するアニーリングにより複数の前記ガウス関数を配置するか否かを特定する、
ことを特徴とする付記1に記載の最適化プログラム。
【0073】
(付記3)前記設定する処理は、正値のガウス関数を複数設定するとともに、前記正値のガウス関数それぞれに対応する負値のガウス関数を複数設定する、
ことを特徴とする付記1に記載の最適化プログラム。
【0074】
(付記4)設計対象の領域に対し、当該領域における設計対象物の形状に対応する形状関数の基底関数として複数のガウス関数を設定し、
複数の前記ガウス関数を配置するか否かを特定することにより、配置すると特定した複数の前記ガウス関数を結合した前記形状関数が示す前記設計対象物の形状を特定する、
処理をコンピュータが実行することを特徴とする最適化方法。
【0075】
(付記5)前記特定する処理は、複数の前記ガウス関数を任意に配置した形状ごとに、当該形状における特性値を対応付けた学習データに基づいてFM(Factorization Machines)を生成し、生成した前記FMをQUBO(Quadratic Unconstrained Binary Optimization)に変換し、変換した前記QUBOに対するアニーリングにより複数の前記ガウス関数を配置するか否かを特定する、
ことを特徴とする付記4に記載の最適化方法。
【0076】
(付記6)前記設定する処理は、正値のガウス関数を複数設定するとともに、前記正値のガウス関数それぞれに対応する負値のガウス関数を複数設定する、
ことを特徴とする付記4に記載の最適化方法。
【0077】
(付記7)設計対象の領域に対し、当該領域における設計対象物の形状に対応する形状関数の基底関数として複数のガウス関数を設定し、
複数の前記ガウス関数を配置するか否かを特定することにより、配置すると特定した複数の前記ガウス関数を結合した前記形状関数が示す前記設計対象物の形状を特定する、
処理を実行する制御部を含むことを特徴とする情報処理装置。
【0078】
(付記8)前記特定する処理は、複数の前記ガウス関数を任意に配置した形状ごとに、当該形状における特性値を対応付けた学習データに基づいてFM(Factorization Machines)を生成し、生成した前記FMをQUBO(Quadratic Unconstrained Binary Optimization)に変換し、変換した前記QUBOに対するアニーリングにより複数の前記ガウス関数を配置するか否かを特定する、
ことを特徴とする付記7に記載の情報処理装置。
【0079】
(付記9)前記設定する処理は、正値のガウス関数を複数設定するとともに、前記正値のガウス関数それぞれに対応する負値のガウス関数を複数設定する、
ことを特徴とする付記7に記載の情報処理装置。
【符号の説明】
【0080】
1…情報処理装置
2…記録装置
3…入力装置
4…表示装置
5…アニーリングマシン
10…通信I/F
11…CPU
12…RAM
21…プログラム
22…設定情報
23…処理対象データ
24…演算結果
24a…演算データ
110…領域設定部
111…特性値計算部
112…最適化部
201…コイル
202…対象領域
203…設計領域
301…ガウス基底関数
302…メッシュ
C1~C3…ケース
G1~G3…グラフ
図1
図2
図3
図4
図5A
図5B
図6
図7
図8