(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-05-30
(45)【発行日】2023-06-07
(54)【発明の名称】情報処理装置、情報処理方法及び情報処理プログラム
(51)【国際特許分類】
G06F 30/20 20200101AFI20230531BHJP
H01F 27/00 20060101ALN20230531BHJP
H01F 37/00 20060101ALN20230531BHJP
【FI】
G06F30/20
H01F27/00 160
H01F37/00 R
(21)【出願番号】P 2019119556
(22)【出願日】2019-06-27
【審査請求日】2022-03-08
(73)【特許権者】
【識別番号】000005223
【氏名又は名称】富士通株式会社
(74)【代理人】
【識別番号】100087480
【氏名又は名称】片山 修平
(72)【発明者】
【氏名】下川 聡
(72)【発明者】
【氏名】大島 弘敬
【審査官】松浦 功
(56)【参考文献】
【文献】特開2016-110298(JP,A)
【文献】特開2001-124667(JP,A)
【文献】特開2011-222017(JP,A)
【文献】特開2008-117210(JP,A)
【文献】特開2007-066362(JP,A)
【文献】特開2014-232121(JP,A)
【文献】特開2004-110470(JP,A)
【文献】特開平07-164815(JP,A)
【文献】国際公開第2006/046737(WO,A1)
【文献】米国特許出願公開第2010/0223029(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 30/00 -30/398
H01F 17/00 -41/34
(57)【特許請求の範囲】
【請求項1】
複数の設計変数を世代ごとに変化させながら最適解を求めるアルゴリズムを用いた最適化計算を実行する情報処理装置であって、
前記設計変数の変化が制約条件に対して与える影響の大きさを示す寄与度を前記設計変数ごとに算出して、前記寄与度の大きさに基づいて前記設計変数を複数の群に分類する分類部と、
前記設計変数の群のうちの第1の群を用いた最適化計算を実行して、該第1の群を先に変化させる第1最適化計算処理を実行するとともに、前記設計変数の群のうちの残りの群を追加して最適化計算を実行する第2最適化計算処理を、追加する群が無くなるまで繰り返し実行する処理部と、
前記処理部の処理の結果得られた最適解を出力する出力部と、を備える情報処理装置。
【請求項2】
前記分類部は、前記複数の設計変数にランダムな値を設定したモデルを所定数生成し、各モデルの制約条件の計算結果と、各設計変数の値との関係に基づいて、前記寄与度を算出する、ことを特徴とする請求項1に記載の情報処理装置。
【請求項3】
前記処理部は、前記寄与度が最も大きい群を前記第1の群とし、前記第1の群以外の群のうち、前記寄与度が大きい群から順に追加して前記第2最適化計算処理を実行する、ことを特徴とする請求項1又は2に記載の情報処理装置。
【請求項4】
前記最適化計算の後に前記制約条件を満たすか否かが判明することを特徴とする請求項1~3のいずれか一項に記載の情報処理装置。
【請求項5】
前記複数の設計変数は、コイルを有する積層インダクタの複数箇所の寸法値であり、
前記制約条件は、前記積層インダクタのインダクタンス値が所定範囲に含まれることであり、
前記最適化計算においては、前記積層インダクタに発生する損失を目的関数とする、ことを特徴とする請求項1~4のいずれか一項に記載の情報処理装置。
【請求項6】
複数の設計変数を世代ごとに変化させながら最適解を求めるアルゴリズムを用いた最適化計算を実行する情報処理方法であって、
前記設計変数の変化が制約条件に対して与える影響の大きさを示す寄与度を前記設計変数ごとに算出して、前記寄与度の大きさに基づいて前記設計変数を複数の群に分類し、
前記設計変数の群のうちの第1の群を用いた最適化計算を実行して、該第1の群を先に変化させる第1最適化計算処理を実行するとともに、前記設計変数の群のうちの残りの群を追加して最適化計算を実行する第2最適化計算処理を、追加する群が無くなるまで繰り返し実行し、
前記最適化計算の結果得られた最適解を出力する、
処理をコンピュータが実行することを特徴とする情報処理方法。
【請求項7】
複数の設計変数を世代ごとに変化させながら最適解を求めるアルゴリズムを用いた最適化計算をコンピュータに実行させる情報処理プログラムであって、
前記設計変数の変化が制約条件に対して与える影響の大きさを示す寄与度を前記設計変数ごとに算出して、前記寄与度の大きさに基づいて前記設計変数を複数の群に分類し、
前記設計変数の群のうちの第1の群を用いた最適化計算を実行して、該第1の群を先に変化させる第1最適化計算処理を実行するとともに、前記設計変数の群のうちの残りの群を追加して最適化計算を実行する第2最適化計算処理を、追加する群が無くなるまで繰り返し実行し、
前記最適化計算の結果得られた最適解を出力する、
処理を前記コンピュータに実行させることを特徴とする情報処理プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報処理装置、情報処理方法及び情報処理プログラムに関する。
【背景技術】
【0002】
従来、遺伝的アルゴリズムのように、複数の解候補(以下、個体とも呼ぶ)を進化させながら最適解を求めるアルゴリズムが提案されている。このようなアルゴリズムでは、各設計変数に制約条件が与えられ、その制約条件に基づいて個体のシミュレーション(以下、評価とも呼ぶ)を行うことにより、目的関数の算出を行うことが一般的である。
【0003】
これに対し、各個体の制約条件に対する不適合が評価後に判明する問題の場合、評価によって得られる目的関数には、必然的に不適合なものが含まれることになる。この場合、設計者は、例えば、予め多数の子個体の生成及び評価を行うことによって目的関数をそれぞれ算出し、その中から制約条件(評価後に判明する制約条件)を満たすものを抽出する方法を採用する(例えば、特許文献1及び2参照)。
【先行技術文献】
【特許文献】
【0004】
【文献】特開平11-085720号公報
【文献】特開2003-248810号公報
【文献】特開2002-7999号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら、上記のような最適解を求めるアルゴリズムにおいて、設計変数の数が多くなると、探索空間の次元数や広さが膨大となり、局所解が発生しやすくなる。
【0006】
1つの側面では、本発明は、安定的に最適解を探索することが可能な情報処理装置、情報処理方法及び情報処理プログラムを提供することを目的とする。
【課題を解決するための手段】
【0007】
一つの態様では、情報処理装置は、複数の設計変数を世代ごとに変化させながら最適解を求めるアルゴリズムを用いた最適化計算を実行する情報処理装置であって、前記設計変数の変化が制約条件に対して与える影響の大きさを示す寄与度を前記設計変数ごとに算出して、前記寄与度の大きさに基づいて前記設計変数を複数の群に分類する分類部と、前記設計変数の群のうちの第1の群を用いた最適化計算を実行して、該第1の群を先に変化させる第1最適化計算処理を実行するとともに、前記設計変数の群のうちの残りの群を追加して最適化計算を実行する第2最適化計算処理を、追加する群が無くなるまで繰り返し実行する処理部と、前記処理部の処理の結果得られた最適解を出力する出力部と、を備える情報処理装置である。
【発明の効果】
【0008】
安定的に最適解を探索することができる。
【図面の簡単な説明】
【0009】
【
図1】一実施形態に係る情報処理システムの構成を概略的に示す図である。
【
図3】
図3(a)、
図3(b)は、積層インダクタの各部の寸法を説明するための図(模式図)である。
【
図4】設計変数の下限値及び上限値を示す表である。
【
図5】
図5(a)は、積層インダクタの寸法最適化処理について説明するための図であり、
図5(b)は、遺伝的アルゴリズムについて説明するための図である。
【
図6】
図6(a)は、情報処理装置のハードウェア構成を示す図であり、
図6(b)は、操作端末のハードウェア構成を示す図である。
【
図7】情報処理装置及び操作端末の機能ブロック図である。
【
図8】情報処理装置の処理を示すフローチャートである。
【
図9】
図8のステップS10において生成されるモデルについて説明するための図である。
【
図10】ステップS14について説明するための図(散布図)である。
【
図11】ステップS14の結果得られた各設計変数のみなし変化範囲の絶対値を示す図である。
【
図12】
図12(a)~
図12(c)は、シミュレーション検証の結果を示すグラフ(その1)である。
【
図13】
図13(a)~
図13(c)は、シミュレーション検証の結果を示すグラフ(その2)である。
【発明を実施するための形態】
【0010】
以下、一実施形態に係る情報処理システム100について、
図1~
図13に基づいて詳細に説明する。
図1には、一実施形態に係る情報処理システム100の構成が概略的に示されている。
【0011】
情報処理システム100は、
図1に示すように、情報処理装置10と、操作端末20とを備える。操作端末20は、ネットワーク80を介して情報処理装置10にアクセス可能となっている。
【0012】
操作端末20は、例えば、1台以上のPC(Personal Computer)であり、設計者が情報処理装置10に対して操作を行うとともに、情報処理装置10による処理結果を表示する端末である。
【0013】
情報処理装置10は、例えば、1台以上の物理マシンから構成され、遺伝的アルゴリズムを用いることによって所定の問題の解を算出する処理(以下、最適化計算処理とも呼ぶ)を行う装置である。具体的には、情報処理装置10は、各個体(複数の設計変数)の制約条件に対する不適合が評価後に判明する問題の解(最適解)を、各個体を進化させながら求める。
【0014】
(問題の具体例)
以下、最適化計算処理によって解の算出が行われる問題の具体例について説明を行う。本実施形態の情報処理装置10は、
図2に示すような磁気デバイスの一つである積層インダクタの各種寸法を最適化する問題を解く。
【0015】
図2には積層インダクタの斜視図が示されている。
図2に示すように、積層インダクタは、コイル巻き数が2.5のコイルを有し、コイルに電流を流すことによって磁束が発生し、電気回路で必要とされるインダクタンス(L値)を生み出す。
【0016】
積層インダクタは、回路の一部品として用いられる。そのため、積層インダクタには、所望のインダクタンス値を満たすことが要求される他、所定の寸法内に収まることや、磁性体内部での損失がなるべく小さいことが要求される。情報処理装置10は、例えば、積層インダクタの設計最適化問題を解き、各寸法の上下限値とインダクタンスの下限値とを制約条件としながら、損失の最小値を求める。そのため、この例では、損失が目的関数となる。
【0017】
図3(a)、
図3(b)は、積層インダクタの各部の寸法を説明するための図(模式図)である。
図3(a)は、積層インダクタを
図2の上方(+Z方向)から見た状態を示す模式図であり、
図3(b)は、側方(-Y方向)から見た状態を示す模式図である。
【0018】
図3(a)に示すように、積層インダクタにおいては、XY平面におけるコイル位置とコイル幅の寸法のパラメータとして、Xa、Xb、Xc、Xd、Ya、Yb、Yc、Ydがある。更に、
図3(b)に示すように、Z軸方向(厚み方向)に関する寸法のパラメータとして、Z1~Z11がある。これらの19個のパラメータが、設計変数となる。これら設計変数に対しては、
図4に示すように、上限値及び下限値が設定されているものとする。なお、積層インダクタの全体の寸法や、コイル幅などの寸法については、予め定められているものとする。
【0019】
次に、積層インダクタの最適化計算処理(寸法最適化処理)について説明する。
【0020】
まず、積層インダクタのすべての設計変数を同時に最適化する例について説明する。
図5(a)は、積層インダクタの寸法最適化処理について説明するための図である。具体的には、
図5(a)は、第i世代において行われる処理を説明するための図である。なお、最適設計においては、例えば、3次元モデルをベースにした磁界シミュレーションを活用する。
【0021】
最適化においては、
図5(a)に示すように、まず、(1)第i世代の個体を生成し、(2)設計変数として各個体の寸法であるXa~Xd、Ya~Yd、Z1~Z11を与える。そして、(3)各個体の寸法が制約条件から外れている場合、寸法の上下限値でリミットをかけることによって、制約条件による寸法パラメータの修正を行う。この結果、(4)設計変数は、Xa’~Xd’、Ya’~Yd’、Z1’~Z11’に変更される。
【0022】
続いて、(5)磁界シミュレーションを行うことによって、(6)制約条件の一つであるインダクタンス(L)と、目的関数である損失(P)とを算出する。
【0023】
その後、(7)目的関数である損失(P)について、磁界シミュレーションを実行することによって判明した制約条件の一つであるインダクタンス(L)による適用判定を行う。具体的には、第i世代の各個体について、シミュレーションによって算出されたインダクタンス値が、予め設定された制約条件値Li以上であるか否かを判定する。
【0024】
その結果、シミュレーションによって算出されたインダクタンス値が制約条件値Li以上であると判定された場合には、その個体を適用と判定する。一方、シミュレーションによって算出されたインダクタンス値が制約条件値Li未満であると判定された場合には、その個体を不適用と判定する。
【0025】
図5(a)で説明した方法の場合、設計者は、制約条件(インダクタンス値がLi未満)を満たす個体の数を必要数に到達させる必要性から、予め多数の子個体の生成及び評価を行う必要がある。そのため、設計者は、結果として、過剰な数の個体の評価が行う場合が発生する。また、この方法では、トライアンドエラーによる反復作業や設計者の経験に依存する面が多くなる。したがって、設計者は、作業効率や再現性の観点からこの方法を採用することができない場合がある。
【0026】
そこで、本実施形態の情報処理装置10は、
図5(b)に示すように、複数の個体を世代ごとに進化させながら最適解を求める遺伝的アルゴリズムを用いることにより、前世代において選択された個体を親個体として当世代の個体(子個体)を生成する。そして、情報処理装置10は、所定の評価関数(目的関数)を用いることにより、当世代の各個体(子個体)を評価する。
【0027】
すなわち、遺伝的アルゴリズムでは、個体群(例えば、数十~数百個の個体で構成された個体群)を各世代で生成し、比較的優れたものの中から交叉や突然変異を施すことで、次世代の個体を生成する。
【0028】
ここで、最適化問題においては、本実施形態のように設計変数の数が多数(本実施形態では19個)となると、探索空間の次元数や広さが膨大となる。また局所解も発生しやすくなる。したがって、遺伝的アルゴリズムでの探索には極めて多くの個体数と世代数が必要となり、計算に多くの時間がかかるため、最適解への到達が困難になる。このため、本実施形態の情報処理装置10は、設計変数の値の変化が制約条件に対して与える影響の大きさ(寄与度と呼ぶ)に基づいて、各設計変数を2つのグループに分ける。そして、情報処理装置10は、遺伝的アルゴリズムを用いた探索においては、まず、寄与度の大きい方のグループに属する設計変数を用いて最適化計算を行い、その後に、全設計変数を用いて最適化計算を行うこととしている。
【0029】
(情報処理装置10について)
次に、情報処理装置10について説明する。
図6(a)には、情報処理装置10のハードウェア構成が示されている。情報処理装置10は、
図6(a)に示すように、CPU(Central Processing Unit)90、ROM(Read Only Memory)92、RAM(Random Access Memory)94、記憶部(ここではHDD(Hard Disk Drive))96、ネットワークインタフェース97、及び可搬型記憶媒体用ドライブ99等を備えている。これら情報処理装置10の構成各部は、バス98に接続されている。情報処理装置10では、ROM92あるいはHDD96に格納されているプログラム(情報処理プログラムを含む)、或いは可搬型記憶媒体用ドライブ99が可搬型記憶媒体91から読み取ったプログラム(情報処理プログラムを含む)をCPU90が実行することにより、
図7に示す各部の機能が実現される。なお、
図7の各部の機能は、例えば、ASIC(Application Specific Integrated Circuit)やFPGA(Field Programmable Gate Array)等の集積回路により実現されてもよい。
【0030】
情報処理装置10では、CPU90がプログラムを実行することにより、
図7に示す機能が実現されている。
図7に示すように、情報処理装置10は、情報受付部30、モデル生成部32、磁界シミュレーション部34、グループ分類部36、最適化計算部38、としての機能を有する。
【0031】
情報受付部30は、操作端末20から送信されてくる情報(設計変数の寸法制約(下限値や上限値)、予め定められている積層インダクタの設計値、物性値などの情報)を受け付ける。
【0032】
モデル生成部32は、各設計変数の値を寸法制約の範囲内で一様ランダムに設定して、組み合わせたモデルを生成する。
【0033】
磁界シミュレーション部34は、モデル生成部32が生成した各モデルについて、磁界シミュレーションを実行し、制約条件(本実施形態ではインダクタンス)を算出する。
【0034】
グループ分類部36は、各モデルの設計変数の値と、各モデルのインダクタンスと、に基づいて、各設計変数の変化が制約条件(インダクタンス)に与える影響の大きさ(寄与度)を特定し、特定した寄与度に基づいて、各設計変数を2つのグループに分ける。
【0035】
最適化計算部38は、グループ分類部36が分けた2つのグループのうち、寄与度が大きい方のグループを用いて最適化計算を行う。そして、最適化計算部38は、その後に、残りのグループを追加して、最適化計算を行う。最適化計算部38は、最適化計算の結果を、操作端末20に送信する。
【0036】
(操作端末20について)
次に、操作端末20について説明する。
図6(b)には、操作端末20のハードウェア構成が示されている。操作端末20は、
図6(b)に示すように、CPU190、ROM192、RAM194、記憶部(HDD)196、ネットワークインタフェース197、表示部193、入力部195及び可搬型記憶媒体用ドライブ199等を備えている。これら操作端末20の構成各部は、バス198に接続されている。操作端末20では、ROM192あるいはHDD196に格納されているプログラム、或いは可搬型記憶媒体用ドライブ199が可搬型記憶媒体191から読み取ったプログラムをCPU190が実行することにより、
図7に示す各部の機能が実現される。
【0037】
操作端末20では、CPU190がプログラムを実行することにより、
図7に示す機能が実現されている。
図7に示すように、操作端末20は、情報入力部60、計算結果受信部62、及び表示処理部64、としての機能を有する。
【0038】
情報入力部60は、最適化計算に用いる情報(設計変数の寸法制約(下限値や上限値)、予め定められている積層インダクタの設計値、物性値などの情報)を情報処理装置10に送信する。
【0039】
計算結果受信部62は、情報処理装置10の最適化計算部38による計算結果を受信する。
【0040】
表示処理部64は、最適化計算部38の計算結果を表示部193上に表示し、設計者に通知する。
【0041】
(情報処理装置10の処理について)
図8には、本実施形態に係る情報処理装置10の処理がフローチャートにて示されている。なお、
図8の処理は、情報受付部30が操作端末20の情報入力部60から情報を受け付けた段階で開始される。なお、
図8のフローチャートで示す処理は、後述する各種パラメータ(例えばランダム生成する個体数や分類するグループの数、分類に用いる指標など)を予め設定しておけば、人手を要することなく、情報処理装置10が自動的に実行することができる。
【0042】
図8の処理が開始されると、まず、ステップS10において、モデル生成部32が、各設計変数の値を寸法制約範囲内で一様ランダムに設定し、組み合わせたモデルを生成する。ここで、作成するモデル数は多いほうが、各設計変数の変化がインダクタンス値(制約条件)に与える影響度(寄与度)の傾向をより正確に掴めると考えられるが、本実施形態において作成するモデル数は、300個とする。本実施形態においては、後述する遺伝的アルゴリズムを用いた最適化計算処理において50個体を150世代進化させるとした場合、7500回程度の計算を行うことになるため、その回数の数%程度の個数だけモデル数を作成することとした。
【0043】
図9の左側には、モデル番号=0のノミナルモデル(平均的なモデル)が示され、
図9の右側には、ノミナルモデルを基に作成したN個のモデル(モデル番号=1~N)が示されている。各モデルの設計変数(Xa~Z11)には、モデル番号が付記して示されているため、モデル番号がkであれば、設計変数はXa_k~Z11_kと表記されている。
【0044】
これら各モデルの設計変数は
図4に示した寸法制約の範囲内でランダムに生成されたものである。なお、本実施形態では、一様ランダムで設計変数を生成するものとしたが、直交表やラテン超格子などの手法を用いて設計変数を生成するようにしてもよい。
【0045】
次いで、ステップS12では、磁界シミュレーション部34が、各モデル(1~N)を用いた磁界シミュレーションを実行し、各モデル(1~N)のインダクタンス(L)を算出する。なお、磁界シミュレーションを実行することで、各モデルのインダクタンス(L)と、損失(P)が算出されるが、以降においては、各モデル(1~N)のインダクタンス(L1~LN)を用いることとしている。
【0046】
次いで、ステップS14では、グループ分類部36が、各設計変数に関するインダクタンスのみなし変化範囲を求める。ここで、グループ分類部36は、設計変数の中の1つの設計変数(例えばYd)に着目し、設計変数を横軸とし、インダクタンスの絶対値を縦軸とする散布図にプロットする。この処理の結果の一例が、
図10に示されている。なお、散布図にプロットされる点の数は、N個である(ノミナルモデルも含めるならば(N+1)個である)。次いで、グループ分類部36は、
図10のプロットの結果を、一次近似式でフィッティングする。この一次近似式は、y=α×x+βで表される。なお、
図10では、α=-4.57×10
-12、β=3.97×10
-9となっている。
【0047】
更に、グループ分類部36は、この一次近似式の傾きαと、設計変数Ydの変化量Dydとから、インダクタンスのみなし変化範囲(zyd)を次式(1)から求める。
zyd=α×Dyd …(1)
【0048】
例えば、Dydが
図10に示すように55mmであり、傾きαが-4.57×10
-12であるならば、zydは、-2.51×10
-10となる。
【0049】
グループ分類部36は、その他の設計変数(Yd以外)についても、上記と同様の処理を行い、各設計変数に関するインダクタンスのみなし変化範囲を算出する。
図11には、ステップS14の結果得られた、各設計変数のみなし変化範囲の絶対値|z|が示されている。なお、みなし変化範囲の絶対値の大きさは、各設計変数の振り幅によって制約条件であるインダクタンスがどの程度変化するかを示す目安であるといえる。すなわち、みなし変化範囲の絶対値が大きいほどその設計変数の変化が制約条件に与える影響(寄与度)が大きく、逆にみなし変化範囲の絶対値が小さいほどその設計変数の変化が制約条件に与える影響(寄与度)が小さいといえる。
【0050】
次いで、ステップS16では、グループ分類部36が、みなし変化範囲の絶対値の平均値を算出する。ここでは、19個の設計変数のみなし変化範囲の絶対値の平均値が、1.32×10-10であったとする。
【0051】
次いで、ステップS18では、グループ分類部36が、ステップS16で算出した平均値を閾値として、各設計変数を2つのグループ(群)に分類する。この場合、グループ分類部36は、
図11において、みなし変化範囲の絶対値が平均値:1.32×10
-10以上である8個の設計変数を含むグループをグループA(第1の群)とし、平均値を下回る11個の設計変数を含むグループをグループBとする。
【0052】
なお、上記説明では、みなし変化範囲の絶対値の平均値に基づいて複数の設計変数をグループ分けする場合について説明したが、これに限られるものではない。例えば、みなし変化範囲の絶対値の大きさが上位所定順位までの設計変数をグループAとし、所定順位未満の設計変数をグループBとしてもよい。また、みなし変化範囲の絶対値の大きさが上位所定%までの設計変数をグループAとし、それ以外の設計変数をグループBとしてもよい。また、みなし変化範囲の絶対値の平均値以外の値を閾値として用いてもよい。
【0053】
次いで、ステップS20では、最適化計算部38が、寄与度(みなし変化範囲の絶対値)が大きい方の設計変数のグループ(ここではグループA)を所定世代数(例えば50世代)進化させ、最適化する(第1最適化計算処理)。なお、この処理においては、グループBの設計変数については固定値(例えば、寸法制約の中央値)としておく。
【0054】
このとき、最適化計算部38は、
図5(b)に示すような遺伝的アルゴリズムを用いることにより、前世代において選択された個体を親個体として当世代の個体を生成する。すなわち最適化計算部38は、世代ごとに、遺伝的アルゴリズムにおける遺伝的操作(交叉や突然変異)によって新たな個体を生成する。
【0055】
具体的には、最適化計算部38は、設計変数の寸法制約の範囲内で生成した個体の中から、ランダムに個体(初期個体)を選択し、選択した個体に対して遺伝的操作を行うことにより、所定数の第1世代の個体を生成する。また、最適化計算部38は、第2世代以降において、遺伝的操作対象となる親個体を、前世代において選択された個体の中から選択する。最適化計算部38は、例えば、バイナリトーナメント選択を行うことにより、前世代において選択された個体から親個体を選択する。バイナリトーナメントは、前世代において選択された個体から一定数の個体をランダムに取り、その中で制約条件(インダクタンス値が所定値以下)を満たし、目的関数(損失)の最も小さいものを親個体として選択する処理である。そして、最適化計算部38は、選択した親個体に対して、遺伝的操作である交叉や突然変異を施して子個体を生成する。
【0056】
以上の処理を行い50世代目の子個体が生成されると、次のステップS22に移行する。
【0057】
ステップS22では、最適化計算部38が、寄与度が小さい設計変数のグループ(グループB)を設計変数群に追加して、さらに所定世代数(例えば100世代)進化させ、最適化する(第2最適化計算処理)。この最適化計算は、ステップS20の最適化計算と同様である。そして、次のステップS24では、最適化計算部38は、最適化計算の結果を操作端末20の計算結果受信部62に送信する。この最適化計算の結果には、最適化後の積層インダクタの損失及びインダクタンス値と、最適化されたときの各設計変数の値(積層インダクタの各寸法値)が含まれる。
【0058】
なお、操作端末20の計算結果受信部62は、受信した最適化計算の結果を表示処理部64に受け渡す。そして、表示処理部64は、表示部193上に最適化計算の結果を表示することで、設計者が必要とする情報を提供する。
【0059】
【0060】
(シミュレーション結果について)
ここで、本実施形態による効果を確認するために行ったシミュレーション検証について、説明する。ここでは、遺伝的アルゴリズムを用いた最適化計算において、用いる設計変数の設定の仕方を3通り検証した。なお、検証においては、インダクタンスの制約条件をノミナルモデルの値(4.3×10-3[μH])以上としている。
【0061】
用いる設計変数の設定の仕方は、以下の(1)~(3)のとおりである。
(1)全設計変数を同時に最適化計算に用いる。
(2)最初の50世代までの最適化計算において、寄与度の小さいグループBに含まれる11個の設計変数Z1~Z11を用い、以降の150世代までの最適化計算において、全ての設計変数を用いる。
(3)本実施形態のように、最初の50世代までの最適化計算において、グループAに含まれる寄与度の大きい8個の設計変数Xa~Xd、Ya~Ydを用い、以降の150世代までの最適化計算において、全ての設計変数を用いる。
【0062】
図12(a)には、(1)のケースにおいて、横軸を世代数とし、縦軸を目的関数である損失[W]としたグラフが示されている。遺伝的アルゴリズムによる最適化では損失を目的関数として、これが最小となる設計変数の組合せを探索している。また、
図12(b)、
図12(c)には、(2)、(3)のケースにおける
図12(a)に対応するグラフが示されている。
【0063】
図12(a)~
図12(c)を参照すると、(3)のケース(
図12(c))では、損失が最も小さくなっていることがわかる。一方、(1)のケース(
図12(a))では、局所解にトラップされる(陥る)ため、(3)のケースで得られた損失値までたどり着くことができないことがわかる。また、(2)のケースでも、(1)のケースと同様、(3)のケースで得られた損失値までたどり着くことができないことがわかる。これらの結果から、(3)のケース(本実施形態)のように、制約条件に対する寄与度が大きい設計変数のグループのみで先に最適化を行い、その後に残りの設計変数群を加えて最適化を行うという手法が有効であることが示された。
【0064】
なお、本シミュレーションでは、(3)のケースと(1)のケースとを比較すると、約27%(5.02×10-2から3.65×10-2[W])の損失低減効果を確認することができた。
【0065】
なお、
図13(a)には、参考として、(1)のケースにおいて、横軸を世代数、縦軸をインダクタンスの値(μH)としたグラフが示されている。また、
図13(b)、
図13(c)には、(2)、(3)のケースにおける
図13(a)に対応するグラフが示されている。
【0066】
(3)のケースでは、最初の50世代(寄与度が大きい設計変数のグループのみでの最適化)において制約条件の下限付近で最適化を行っていることが読み取れる。そして、その後の最適化(残りの設計変数群を加えて最適化)で制約条件を満足するように設計変数を調整しながら最適化が進行していることが読みとれる。
【0067】
これまでの説明からわかるように、モデル生成部32、磁界シミュレーション部34、及びグループ分類部36により、各設計変数の寄与度を算出して、寄与度の大きさに基づいて設計変数を複数のグループ(群)に分類する分類部としての機能が実現されている。また、最適化計算部38により、最適化計算処理を実行する処理部と、処理の結果得られた最適解を操作端末20に対して出力する出力部、としての機能が実現されている。
【0068】
以上、詳細に説明したように、本実施形態によると、グループ分類部36は、設計変数の変化が制約条件に対して与える影響の大きさ(寄与度)を設計変数ごとに算出して(S14)、寄与度の大きさに基づいて設計変数を2つのグループA、Bに分類する(S18)。また、最適化計算部38は、グループAを用いた最適化計算を実行して、グループAに含まれる設計変数を先に変化させる(S20)とともに、グループBを追加して最適化計算を更に実行する(S22)。そして、最適化計算部38は、処理の結果得られた情報を出力する(S24)。これにより、本実施形態では、制約条件に対する寄与度が大きいグループAに属する設計変数をラフに変化させた後、全設計変数で最適化を実行するため、制約条件を満足しながら設計変数の最適化を安定かつ速やかに行うことができる。特に、本実施形態のように、複数の個体を進化させながら最適解を求める遺伝的アルゴリズムを用いた最適化計算において、個体評価後に制約条件への適合が判明するような場合に、設計変数が多数であっても、安定な最適解探索を実現することができる。
【0069】
また、本実施形態では、積層インダクタの複数箇所の寸法値を設計変数とし、制約条件と目的関数を、インダクタンスと損失としているので、積層インダクタの設計に必要な情報を自動的に算出して、設計者に提供することができる。
【0070】
また、本実施形態では、グループ分類部36は、複数の設計変数にランダムな値を設定したモデルを所定数生成し、各モデルの制約条件の計算結果と、各設計変数の値との関係に基づいて、寄与度を算出する。これにより、設計変数それぞれの寄与度として、設計変数の変化による制約条件への影響を示す値を適切に算出することができる。
【0071】
また、本実施形態では、インダクタンスのみなし変化範囲の絶対値を寄与度としているので、各設計変数の振り幅(寸法制約)を考慮して、寄与度を求めることができる。この場合、設計者が、積層インダクタの構造等から各寸法の制約条件に対する寄与度を予測して、入力等しなくてもよいため、設計者の手間を省くことができる。
【0072】
なお、上記実施形態では、グループ分類部36が設計変数を2つのグループに分類する場合について説明したが、これに限られるものではない。例えば、グループ分類部36は、3以上のグループに分類してもよい。この場合、最適化計算部38は、3以上のグループのうち、最も寄与度が大きいグループを用いて最適化処理を行い、以降、寄与度が大きい順にグループを追加して、最適化処理を繰り返すようにすればよい。また、上記実施形態及び上記変形例では、最適化計算部38が、グループを1つずつ追加する場合について説明したが、これに限らず、追加するグループの数を適宜変更するようにしてもよい。
【0073】
なお、上記実施形態では、最適化計算において、遺伝的アルゴリズムを用いる場合について説明したが、これに限らず、その他の最適化計算(例えば、焼きなまし法や、粒子法など)を用いることとしてもよい。
【0074】
なお、上記実施形態では、操作端末20を省略してもよい。すなわち、情報処理装置10を設計者が直接操作し、情報処理装置10が有する表示部に、情報処理装置10の処理結果が表示されるようにしてもよい。
【0075】
なお、上記実施形態では、情報処理装置10が、積層インダクタの設計を行う場合について説明したが、これに限られるものではない。情報処理装置10は、その他の電子部品等の設計を行うこととしてもよい。
【0076】
なお、上記の処理機能は、コンピュータによって実現することができる。その場合、処理装置が有すべき機能の処理内容を記述したプログラムが提供される。そのプログラムをコンピュータで実行することにより、上記処理機能がコンピュータ上で実現される。処理内容を記述したプログラムは、コンピュータで読み取り可能な記憶媒体(ただし、搬送波は除く)に記録しておくことができる。
【0077】
プログラムを流通させる場合には、例えば、そのプログラムが記録されたDVD(Digital Versatile Disc)、CD-ROM(Compact Disc Read Only Memory)などの可搬型記憶媒体の形態で販売される。また、プログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することもできる。
【0078】
プログラムを実行するコンピュータは、例えば、可搬型記憶媒体に記録されたプログラムもしくはサーバコンピュータから転送されたプログラムを、自己の記憶装置に格納する。そして、コンピュータは、自己の記憶装置からプログラムを読み取り、プログラムに従った処理を実行する。なお、コンピュータは、可搬型記憶媒体から直接プログラムを読み取り、そのプログラムに従った処理を実行することもできる。また、コンピュータは、サーバコンピュータからプログラムが転送されるごとに、逐次、受け取ったプログラムに従った処理を実行することもできる。
【0079】
上述した実施形態は本発明の好適な実施の例である。但し、これに限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々変形実施可能である。
【0080】
なお、以上の実施形態の説明に関して、更に以下の付記を開示する。
(付記1) 複数の設計変数を世代ごとに変化させながら最適解を求めるアルゴリズムを用いた最適化計算を実行する情報処理装置であって、
前記設計変数の変化が制約条件に対して与える影響の大きさを示す寄与度を前記設計変数ごとに算出して、前記寄与度の大きさに基づいて前記設計変数を複数の群に分類する分類部と、
前記設計変数の群のうちの第1の群を用いた最適化計算を実行して、該第1の群を先に変化させる第1最適化計算処理を実行するとともに、前記設計変数の群のうちの残りの群を追加して最適化計算を実行する第2最適化計算処理を、追加する群が無くなるまで繰り返し実行する処理部と、
前記処理部の処理の結果得られた最適解を出力する出力部と、を備える情報処理装置。
(付記2) 前記分類部は、前記複数の設計変数にランダムな値を設定したモデルを所定数生成し、各モデルの制約条件の計算結果と、各設計変数の値との関係に基づいて、前記寄与度を算出する、ことを特徴とする付記1に記載の情報処理装置。
(付記3) 前記処理部は、前記寄与度が最も大きい群を前記第1の群とし、前記第1の群以外の群のうち、前記寄与度が大きい群から順に追加して前記第2最適化計算処理を実行する、ことを特徴とする付記1又は2に記載の情報処理装置。
(付記4) 前記最適化計算の後に前記制約条件を満たすか否かが判明することを特徴とする付記1~3のいずれかに記載の情報処理装置。
(付記5) 前記複数の設計変数は、コイルを有する積層インダクタの複数箇所の寸法値であり、
前記制約条件は、前記積層インダクタのインダクタンス値が所定範囲に含まれることであり、
前記最適化計算においては、前記積層インダクタに発生する損失を目的関数とする、ことを特徴とする付記1~4のいずれかに記載の情報処理装置。
(付記6) 複数の設計変数を世代ごとに変化させながら最適解を求めるアルゴリズムを用いた最適化計算を実行する情報処理方法であって、
前記設計変数の変化が制約条件に対して与える影響の大きさを示す寄与度を前記設計変数ごとに算出して、前記寄与度の大きさに基づいて前記設計変数を複数の群に分類し、
前記設計変数の群のうちの第1の群を用いた最適化計算を実行して、該第1の群を先に変化させる第1最適化計算処理を実行するとともに、前記設計変数の群のうちの残りの群を追加して最適化計算を実行する第2最適化計算処理を、追加する群が無くなるまで繰り返し実行し、
前記最適化計算の結果得られた最適解を出力する、
処理をコンピュータが実行することを特徴とする情報処理方法。
(付記7) 前記分類する処理では、前記複数の設計変数にランダムな値を設定したモデルを所定数生成し、各モデルの制約条件の計算結果と、各設計変数の値との関係に基づいて、前記寄与度を算出する、ことを特徴とする付記6に記載の情報処理方法。
(付記8) 前記寄与度が最も大きい群を前記第1の群とし、前記第1の群以外の群のうち、前記寄与度が大きい群から順に追加して前記第2最適化計算処理を実行する、ことを特徴とする付記6又は7に記載の情報処理方法。
(付記9) 前記最適化計算の後に前記制約条件を満たすか否かが判明することを特徴とする付記6~8のいずれかに記載の情報処理方法。
(付記10) 前記複数の設計変数は、コイルを有する積層インダクタの複数箇所の寸法値であり、
前記制約条件は、前記積層インダクタのインダクタンス値が所定範囲に含まれることであり、
前記最適化計算においては、前記積層インダクタに発生する損失を目的関数とする、ことを特徴とする付記6~9のいずれかに記載の情報処理方法。
(付記11) 複数の設計変数を世代ごとに変化させながら最適解を求めるアルゴリズムを用いた最適化計算をコンピュータに実行させる情報処理プログラムであって、
前記設計変数の変化が制約条件に対して与える影響の大きさを示す寄与度を前記設計変数ごとに算出して、前記寄与度の大きさに基づいて前記設計変数を複数の群に分類し、
前記設計変数の群のうちの第1の群を用いた最適化計算を実行して、該第1の群を先に変化させる第1最適化計算処理を実行するとともに、前記設計変数の群のうちの残りの群を追加して最適化計算を実行する第2最適化計算処理を、追加する群が無くなるまで繰り返し実行し、
前記最適化計算の結果得られた最適解を出力する、
処理を前記コンピュータに実行させることを特徴とする情報処理プログラム。
【符号の説明】
【0081】
10 情報処理装置
32 モデル生成部(分類部の一部)
34 磁界シミュレーション部(分類部の一部)
36 グループ分類部(分類部の一部)
38 最適化計算部(処理部、出力部)