JP7272200B2 - 情報処理装置、情報処理プログラムおよび情報処理方法 - Google Patents

情報処理装置、情報処理プログラムおよび情報処理方法 Download PDF

Info

Publication number
JP7272200B2
JP7272200B2 JP2019168725A JP2019168725A JP7272200B2 JP 7272200 B2 JP7272200 B2 JP 7272200B2 JP 2019168725 A JP2019168725 A JP 2019168725A JP 2019168725 A JP2019168725 A JP 2019168725A JP 7272200 B2 JP7272200 B2 JP 7272200B2
Authority
JP
Japan
Prior art keywords
eigensolution
value
function
information processing
input
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2019168725A
Other languages
English (en)
Other versions
JP2021047537A (ja
Inventor
有紀人 ▲角▼田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2019168725A priority Critical patent/JP7272200B2/ja
Priority to EP20192793.6A priority patent/EP3809338A1/en
Priority to US17/008,719 priority patent/US20210081488A1/en
Priority to CN202010960181.8A priority patent/CN112528220A/zh
Publication of JP2021047537A publication Critical patent/JP2021047537A/ja
Application granted granted Critical
Publication of JP7272200B2 publication Critical patent/JP7272200B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/15Correlation function computation including computation of convolution operations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/12Computing arrangements based on biological models using genetic models
    • G06N3/126Evolutionary algorithms, e.g. genetic algorithms or genetic programming
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/11Complex mathematical operations for solving equations, e.g. nonlinear equations, general mathematical optimization problems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/04Forecasting or optimisation specially adapted for administrative or management purposes, e.g. linear programming or "cutting stock problem"
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2111/00Details relating to CAD techniques
    • G06F2111/06Multi-objective optimisation, e.g. Pareto optimisation using simulated annealing [SA], ant colony algorithms or genetic algorithms [GA]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/36Circuit design at the analogue level
    • G06F30/373Design optimisation

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Data Mining & Analysis (AREA)
  • Biophysics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Pure & Applied Mathematics (AREA)
  • Evolutionary Computation (AREA)
  • Mathematical Optimization (AREA)
  • Artificial Intelligence (AREA)
  • Computational Linguistics (AREA)
  • Molecular Biology (AREA)
  • Biomedical Technology (AREA)
  • Evolutionary Biology (AREA)
  • General Health & Medical Sciences (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Business, Economics & Management (AREA)
  • Operations Research (AREA)
  • Algebra (AREA)
  • Databases & Information Systems (AREA)
  • Physiology (AREA)
  • Economics (AREA)
  • Human Resources & Organizations (AREA)
  • Strategic Management (AREA)
  • Genetics & Genomics (AREA)
  • Marketing (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Quality & Reliability (AREA)
  • Tourism & Hospitality (AREA)
  • Game Theory and Decision Science (AREA)
  • General Business, Economics & Management (AREA)

Description

本発明は、情報処理装置などに関する。
進化計算(EC:Evolutionary Computation)の1つとして、遺伝的アルゴリズム(GA:Genetic Algorithm)が知られている(例えば、特許文献1,2など参照)。遺伝的アルゴリズムでは、例えば、入力値をビット列などに変換しランダムに生成し、入力値を選択(特性の良いものを残す)、交配や変異を繰り返し、最適な入力値を見つける。
また、最適構造の設計に進化計算を用いる手法が知られている。最適構造を求める場合には、性能評価を行う必要がある。性能評価を行うには、設計構造に対応した強度分布を求める必要がある。強度分布を求めるには、固有解条件を満足する固有解を算出することが必須である。
例えば、光SAW(surface acoustic wave)フィルタのSAW印加効率が最大となるSAW guide(信号路)の配置を示す構造を求める場合について、図12および図13を参照して説明する。図12は、光SAWフィルタのSAW印加効率最大化の場合のSAW強度分布の参考例を示す図である。図12に示すように、SAW信号路の配置が異なる2種類のSAW強度分布が示されている。SAW guideの光信号路上でのSAW強度が最大となるSAW信号路の配置を求めることで、SAW印加効率が最大となる構造を求める。
SAW強度分布は、式(1)に基づいて求められる。
Figure 0007272200000001
SAW強度分布を求めるには、式(2)で示す固有解条件を満足する固有解を算出することが必須である。かかる例では、正しいSAW強度分布となるためには、両無限遠でゼロ(B=0,A=0)に収束する固有解を算出する必要がある。
Figure 0007272200000002
図13は、SAW強度分布と固有解との関係を示す参考例を示す図である。なお、図13では、4つのSAW信号路の配置を持つ構造のSAW強度分布を示している。図13上図では、式(1)および式(2)が示すSAW強度分布を決定する固有方程式に対してzの値を替えて両無限遠でゼロ(B=0,A=0)に収束するzの値が固有解として求められる。図13下図では、式(1)および式(2)が示すSAW強度分布を決定する固有方程式に対してzの値を替えて両無限遠でゼロ(B=0,A=0)に収束するzの値が求められない。すなわち、固有解が求められない。したがって、この4つのSAW信号路の配置を持つ構造では、図13上図のように、固有解およびSAW強度分布が決定される。
そして、構造に対応する固有解およびSAW強度分布が求まれば、構造に対するSAW強度分布から構造の性能評価が行われる。そして、各構造の性能評価から、各構造から新たな構造が選別され、次の世代の構造が交配や変異により生成され、最適な設計構造が見つけられる。
特開2005-209211号公報 特開2006-88331号公報
しかしながら、最適構造の設計に進化計算を用いる従来の手法では、進化計算の計算量を低減できないという問題がある。すなわち、従来の手法では、強度分布を求めるために必要な固有解を算出するが、式(1)および式(2)が示す固有方程式に対してzの値を替えて両無限遠でゼロ(B=0,A=0)に収束するzの値を求める。つまり、従来の手法では、固有解を求めるために、固有解となり得る全範囲のzの値を替えて繰り返しゼロに収束するzの値を計算している。したがって、固有解を求めるための計算量が多くかかるので、進化計算の全体の計算量を低減できない。
本発明は、1つの側面では、進化計算において、固有解を求める際の繰り返しの計算量を低減することを目的とする。
1つの態様では、情報処理装置は、複数の入力パラメータを用いて方程式の固有解を算出する進化計算を実行する情報処理装置において、第1世代の方程式の固有解を算出する際に、複数の入力パラメータの一部の入力パラメータについて当該方程式における関数の関数値を第1複数関数値として計算する第1の計算部と、前記第1世代より前の複数世代における、前記一部の入力パラメータについての第2複数関数値と、前記複数の入力パラメータを用いて算出された固有解との組み合わせに基づいて、前記第1複数関数値に対する固有解候補を予測する予測部と、前記予測部によって予測された前記固有解候補に対応する入力パラメータの近傍の前記方程式の解を計算する第2の計算部と、を有することを特徴とする。
1実施態様によれば、進化計算において、固有解を求める際の繰り返しの計算量を低減することができる。
図1は、実施例1に係る情報処理装置の構成を示す機能ブロック図である。 図2は、実施例1に係るモデル生成を説明する図である。 図3は、実施例1に係る固有解予測を説明する図である。 図4は、実施例1に係るモデル生成のフローチャートの一例を示す図である。 図5は、実施例1に係る進化計算による構造設計のフローチャートの一例を示す図である。 図6は、実施例1に係る部分範囲探索を光SAWフィルタ設計に適用した場合の効果を示す図である。 図7は、実施例2に係る情報処理装置の構成を示す機能ブロック図である。 図8は、実施例2に係る固有解情報テーブルの一例を示す図である。 図9は、実施例1~2に係る固有解予測を用いる別の例を示す図である。 図10は、別の例に係る進化計算による構造設計のフローチャートの一例を示す図である。 図11は、情報処理プログラムを実行するコンピュータの一例を示す図である。 図12は、光SAWフィルタのSAW印加効率最大化の場合のSAW強度分布の参考例を示す図である。 図13は、SAW強度分布と固有解との関係を示す参考例を示す図である。 図14は、進化計算による構造設計のフローチャートの参考例を示す図である。 図15は、進化計算による構造設計の説明の補足図である。
以下に、本願の開示する情報処理装置、情報処理プログラムおよび情報処理方法の実施例を図面に基づいて詳細に説明する。なお、本発明の実施例では、光SAWフィルタのSAW印加効率が最大となる光信号路の最適な配置(構造設計)を進化計算により求める場合について説明するが、本発明は、実施例により限定されるものではない。
まず、進化計算による構造設計のフローチャートの参考例を、図14を参照して説明する。図14は、進化計算による構造設計のフローチャートの参考例を示す図である。なお、図14のフローチャートを説明する際に、図15の補足図を参照して説明する。
図14に示すように、情報処理装置は、設計対象の構造を入力値xkmとして取得する(ステップS110)。ここでいうkは、世代を示し、mは、世代内の入力値の番号を示す。例えば、図15第1段に示すように、最適な幅を算出する場合に、ある世代内の入力値を、xが「6」、xが「8」、xが「10」、xが「12」とする。
そして、情報処理装置は、各入力値xkm固有の動作条件を計算する(ステップS120)。すなわち、式(2)の固有解条件のA1=1、B1=0を入力した場合に、Anを求める関数をh(z)と表すとする。すると、Anはh(z)であるため、An=0の条件から、Anすなわちh(z)がゼロになる方程式を解いた条件が固有解g(z)となる。かかる方程式は、固有方程式という。h(z)は、構造に依存するため、入力値xkmごとに異なる。固有解になり得る範囲は、zが取り得る1000点であるとすると、情報処理装置は、1000点全てについて、固有解・固有動作を探索する。
そして、情報処理装置は、固有解・固有動作を決定する(ステップS130)。すなわち、h(z)がゼロになる点zが固有解g(z)として決定される。例えば、図15第2段に示すように、各構造の入力値に対する固有解g(x)、g(x)、g(x)およびg(x)が決定される。また、図16第3段に示すように、各構造の入力値に対するSAW強度分布が固有動作として決定される。SAW強度分布は、x軸を光信号路の位置、y軸をSAW強度としたグラフで表わされる。固有動作としてのSAW強度分布は、固有解に基づいて決定される。
そして、情報処理装置は、対象の入力値の性能を算出する(ステップS140)。例えば、図15第3段に示すように、情報処理装置は、各構造である入力値に対するSAW強度分布から、各構造の光信号路の配置位置に対応するSAW強度を性能値として算出する。ここでは、入力値がxである場合には、性能値f(x)として「1.0」が算出される。入力値がxである場合には、性能値f(x)として「1.2」が算出される。入力値がxである場合には、性能値f(x)として「1.4」が算出される。入力値がxである場合には、性能値f(x)として「0.8」が算出される。
そして、情報処理装置は、各入力値に対応する性能を評価する(ステップS150)。例えば、図15第4段に示すように、入力値x(=6)である場合には、性能値が1.0である。入力値x(=8)である場合には、性能値が1.2である。入力値x(=10)である場合には、性能値が1.4である。入力値x(=12)である場合には、性能値が0.8である。そこで、この場合には、xが示す幅が「10」付近が最も性能値f(x)が良いと評価される。
そして、情報処理装置は、終了条件が満たされない場合には、評価結果に基づいて、入力値を選別する(ステップS160)。ここでは、例えば、情報処理装置は、性能値が良かった入力値x(=10)、入力値x(=6)および入力値x(=8)を残し、最も性能値が悪かった入力値x(=12)を除去する。
そして、情報処理装置は、次の世代の入力値xk+1mを生成する(ステップS170)。例えば、情報処理装置は、選別された入力値を交配し、交配した入力値を変異して、次の世代の入力値を生成する。そして、情報処理装置は、次の世代の入力値に対する性能を評価する。
そして、情報処理装置は、終了条件が満たされる場合には、評価結果に基づいて、最適な入力値を選定する(ステップS180)。
かかる最適な構造設計を選定する進化計算の処理では、情報処理装置は、SAW強度分布を求めるために必要な固有解を算出するが、固有解になり得る範囲の全ての点について、固有解を探索する。したがって、情報処理装置は、固有解を求める際の繰り返しの計算量が多くかかるので、進化計算の全体の計算量を低減できない。
そこで、以降の実施例では、進化計算の計算量を低減することが可能な情報処理装置について説明する。
[情報処理装置の構成]
図1は、実施例1に係る情報処理装置の構成を示す機能ブロック図である。図1に示す情報処理装置1は、最適な構造設計を選定するために、世代ごとに進化する進化計算を実行する。情報処理装置1は、ある第1世代の構造設計に依存する固有方程式の固有解を算出する際に、複数の入力パラメータの一部の入力パラメータについて当該固有方程式における関数の関数値を第1複数関数値として計算する。情報処理装置1は、第1世代より前の複数世代における、一部の入力パラメータについての第2複数関数値と、複数の入力パラメータから算出された固有解との組み合わせに基づいて、第1複数関数値から固有解候補を予測する。情報処理装置1は、予測された固有解候補に対応する入力パラメータの近傍で、当該固有方程式の固有解を探索する。
すなわち、発明者は、固有方程式における関数の形状(一部の入力パラメータについての関数値に対応)と固有解とは相関があることに着目した。そして、発明者は、進化計算特有の繰り返しを利用し、過去の、一部の特定の入力パラメータに対する関数値から新たな固有方程式の固有解を予測し、予測した解の近辺を探索することで、真の固有解を見つけるようにした。
ここで、固有方程式、固有方程式における関数、固有解を、以下のように定める。式(2)の固有解条件のA1=1、B1=0を入力した場合に、Anを求める関数を、例えばh(z)と表すとする。すると、このh(z)を「固有方程式における関数」と定める。そして、An=0の条件から、Anすなわちh(z)がゼロになる方程式を、「固有方程式」と定める。そして、ゼロになる方程式を解いた条件を、「固有解」と定める。
情報処理装置1は、制御部10と、記憶部20とを有する。
制御部10は、CPU(Central Processing Unit)などの電子回路に対応する。そして、制御部10は、各種の処理手順を規定したプログラムや制御データを格納するための内部メモリを有し、これらによって種々の処理を実行する。制御部10は、入力部11、HPC(High-Performance Computing)計算部群12、性能値評価部13、進化計算部14、出力部15および解予測部16を有する。
記憶部20は、例えば、RAM、フラッシュメモリ(Flash Memory)などの半導体メモリ素子、または、ハードディスク、光ディスクなどの記憶装置である。記憶部20は、入出力記憶部21および学習モデル22を有する。
入出力記憶部21は、過去の入力値(構造設計)に対する固有方程式における関数の形状と固有解と出力値(性能値)とを対応付けて記憶する。固有方程式における関数の形状を表す具体例として、固有方程式「h(z)=0」における関数をh(z)とした場合に、複数の特定のz値に対するh(z)の関数値から得られる形状が挙げられる。なお、入出力記憶部21は、後述する入出力保持部161によって保持される。
学習モデル22は、過去の入力値(構造設計)に対する固有方程式における関数の形状と当該固有方程式に対応する固有解とを用いて新たな固有方程式における関数の形状に対応する固有解の値域を求めるように学習した結果のモデルである。学習モデル22は、例えば、ニューラルネットワーク(Neural Network:NN)を用いた手法により学習される。なお、学習モデル22は、後述するモデル生成部162によって生成される。
入力部11は、学習モデル22を生成するために用いられる、設計対象の複数の入力値を、後述するHPC計算部121および後述する入出力保持部161へ出力する。また、入力部11は、学習モデル22を用いて固有解を予測する、設計対象の複数の入力値を後述する固有解予測部163へ出力する。
HPC計算部群12は、複数のHPC計算部121を有する。以降では、1つのHPC計算部121について説明する。
HPC計算部121は、所定の世代の設計対象の入力値を入力し、入力値に対する固有方程式の固有解を求める。すなわち、HPC計算部121は、入力値に対する固有解条件(式(2))を満たす固有解を、固有解になり得る全範囲から探索する。なお、固有解条件を満たす固有解の探索を全範囲から探索することを、以降、「全範囲探索」というものとする。例えば、HPC計算部121は、式(2)の固有解条件のA1=1、B1=0を入力した場合のAnを求める関数h(z)について、An=0の条件から、Anすなわちh(z)がゼロになる固有方程式を解く。ゼロになる固有方程式を解いた条件が固有解g(z)となる。固有解になり得る範囲は、zが取り得る全ての点であるので、HPC計算部121は、zが取り得る全ての点について、h(z)がゼロになる固有解を探索する。そして、HPC計算部121は、全範囲探索によって探索された、入力値に対する固有解を後述する出力部15に出力する。加えて、HPC計算部121は、予め定められた複数の特定のz値に対するそれぞれの関数値を、h(z)の形状として後述する出力部15に出力する。
また、HPC計算部121は、固有解に基づいて目的関数としてSAW強度分布(固有動作)を算出する。例えば、HPC計算部121は、式(1)に基づいて、固有解に対応するSAW強度分布を算出する。ここでは、HPC計算部121は、式(1)のNeffに固有解を代入して、固有解に対応するSAW強度分布を算出する。HPC計算部121は、入力値に対するSAW強度分布を用いて、入力値に対するSAW強度を性能値として算出する。そして、HPC計算部121は、入力値に対する性能値を後述する出力部15に出力する。
性能値評価部13は、入力値ごとに、各入力値に対応する性能値を算出する。そして、性能値評価部13は、入力値ごとの性能値に基づいて、各入力値の性能を評価する。そして、性能値評価部13は、最終的に、各入力値の性能評価の結果に基づいて、最適な入力値を選定する。
進化計算部14は、各入力値の性能の評価結果に基づいて、複数の入力値から残す入力値を選別する。進化計算部14は、選別した入力値を交配し、交配した入力値を変異して、次の世代の入力値を生成する。そして、進化計算部14は、次の世代の入力値を入力部11に出力する。
出力部15は、HPC計算部121から出力された、入力値に対する固有方程式の解の結果および性能値を後述する入出力保持部161に出力する。ここでいう「固有方程式の解の結果」とは、固有方程式の固有解および複数の特定のz値に対する当該固有方程式における関数のそれぞれの関数値のことをいう。ここでいう固有解とは、全範囲探索によって探索された固有解のことをいう。また、複数の特定のz値に対するそれぞれの関数値は、固有方程式における関数h(z)の形状を意味する。
解予測部16は、入出力保持部161と、モデル生成部162と、固有解予測部163とを有する。
入出力保持部161は、過去の入力値(構造設計)、入力値に対する固有方程式の解の結果および性能値を対応付けて入出力記憶部21に保持する。すなわち、入出力保持部161は、過去の入力値に対する固有方程式の解の結果を累積する。ここでいう固有方程式の解の結果とは、前述したとおり、固有方程式の固有解および複数の特定のz値に対する当該固有方程式における関数のそれぞれの関数値のことをいう。そして、ここでいう固有解とは、全範囲探索によって探索された固有解のことをいう。
モデル生成部162は、入力値に対する固有方程式の解の結果に基づいて、入力値に対する固有方程式の固有解がどの値域にあるかを予測する学習モデル22を生成する。例えば、モデル生成部162は、入出力記憶部21に累積された、それぞれの入力値に対する固有方程式における、関数の複数の特定のz値に対する関数値および全範囲探索によって探索された固有解をNN(ニューラルネットワーク)に学習させる。そして、モデル生成部162は、入力値に対する固有方程式の固有解の値域を予測する学習モデル22を生成する。
ここで、モデル生成部162によるモデル生成を、図2を参照して説明する。図2は、実施例1に係るモデル生成を説明する図である。図2に示すように、モデル生成部162は、固有方程式(h(z)=0)における関数h(z)の関数値と推定解yとをNNに学習させて、入力値に対する固有方程式の推定解yを予測する学習モデル22を生成する。ここでいう推定解yは、固有解の値域を示す。Kは、世代を考慮しない入力値を識別する番号を示す。Kは、世代を考慮しても良く、km(k:世代、m:世代内入力値の番号)と示しても良い。
また、固有方程式の解を予測するために用いられる関数h(z)のz値は、例えば、予め定められた複数の特定のz値を用いれば良い。予め定められた複数の特定のz値を用いるのは、全ての入力値に対して同じルールで推定解を予測するためである。ここでは、複数の特定のz値として、予め定められたz、z、zの固定値が用いられている。なお、図2では、3点が用いられているが、3点に限られるものではなく、4点でも5点でも良い。
図1に戻って、固有解予測部163は、学習モデル22を用いて、入力値に対する固有方程式の固有解の値域(解候補値域)を予測する。例えば、固有解予測部163は、学習モデル22に対して、予測対象の入力値に対する固有方程式における関数の、予測で用いられた複数の特定のz値に対する関数値を入力する。そして、固有解予測部163は、学習モデル22から、入力された関数値に対応する固有解の値域を出力する。固有解の値域は、固有方程式の推定解yに対応する。
また、固有解予測部163は、予測した固有解の値域の範囲で、固有方程式の固有解を探索する。固有解の探索を固有解の値域の範囲から探索することを、以降、「部分範囲探索」というものとする。
例えば、固有解予測部163は、式(2)の固有解条件のA1=1、B1=0を入力した場合のAnを求める関数h(z)について、An=0の条件から、Anすなわちh(z)がゼロになる固有方程式を解く。ゼロになる固有方程式を解いた条件が固有解g(z)となる。ここで、ゼロになる固有方程式を解くzの範囲は、予測した固有解の値域の範囲(部分範囲)となる。固有解予測部163は、予測した固有解の値域の範囲(部分範囲)内の点について、固有解を探索して、固有解を予測する。すなわち、固有解予測部163は、固有解の値域の範囲内のzの値を順番に関数h(z)に代入して、ゼロになるzの値を固有解として予測する。
そして、固有解予測部163は、固有解の予測に成功した場合には、当該固有解を入力値とともにHPC計算部121に出力する。これは、HPC計算部121に、入力値に対する固有解のSAW強度分布(固有動作)を算出させ、入力値に対する性能値を算出させるためである。一方、固有解予測部163は、固有解の予測に失敗した場合には、予測に失敗した固有解に対する入力値をHPC計算部121に出力する。これは、HPC計算部121に、全範囲探索で入力値に対する固有解を求めさせるためである。
[固有解予測の説明]
ここで、固有解予測部163による固有解予測を、図3を参照して説明する。図3は、実施例1に係る固有解予測を説明する図である。なお、図3では、解候補値域が、予め、1000点を20分割した50点ずつの20値域に区切られている。
まず、固有解予測部163は、図3右図に示す学習モデル22を用いて、ある入力値xに対する固有方程式の解候補値域を予測する。すなわち、固有解予測部163は、学習モデル22に対して、固有方程式における関数h(z)の、予測で用いられた複数の特定のz値に対する関数値を入力する。ここでは、予測で用いられた複数の特定のz値がz、z、zであるとする。すると、学習モデル22に入力された関数値は、h(z1)、h(z2)、h(z3)となる。そして、固有解予測部163は、学習モデル22から、入力された関数値に対応する固有解の値域(解候補値域)、すなわち推定解yを出力する。
次に、図3左図に示すように、固有解予測部163は、予測した解候補値域の範囲で、入力値に対する固有方程式の固有解を探索する。ここでは、予測された解候補値域は、「6」であったとする。すると、固有解予測部163は、式(2)の固有解条件のA1=1、B1=0を入力した場合のAnを求める関数h(z)について、An=0の条件から、Anすなわちh(z)がゼロになる固有方程式(h(z)=0)を、解候補値域が「6」を示す範囲内で解く。すなわち、固有解予測部163は、解候補値域が「6」を示す範囲内のzの値を関数h(z)に代入する。固有解予測部163は、解候補値域が「6」を示す範囲内のいずれかのzの値で関数h(z)がゼロになる場合には、すなわち、固有解の予測に成功した場合には、関数h(z)がゼロになるzの値を固有解として予測する。これにより、固有解予測部163は、解となる可能性のある範囲内の全点を探索する全範囲探索の場合と比べて、1/20の範囲のみ探索すれば良いので、計算量が1/20と軽減できる。
なお、固有解予測部163は、解候補値域の範囲内のzの値で関数h(z)がゼロにならない場合には、すなわち、固有解の予測に失敗した場合には、HPC計算部121に全範囲探索で固有解を求めさせれば良い。
[モデル生成のフローチャート]
図4は、実施例1に係るモデル生成のフローチャートの一例を示す図である。なお、kmについて、kは、世代を示し、mは、世代内の入力値の番号を示す。世代kは、初期値を「1」とするものとする。
図4に示すように、入力部11は、設計対象の入力値“xkm”(構造・設計値)を複数入力する(ステップS11)。
HPC計算部121は、各入力値“xkm”固有の動作条件を計算する(ステップS12)。例えば、HPC計算部121は、入力値ごとに、式(2)の固有解条件のA1=1、B1=0を入力した場合のAnを求める関数h(z)について、An=0の条件から、Anすなわちh(z)がゼロになる固有方程式を解く。すなわち、HPC計算部121は、入力値ごとに、zが取り得る全ての点について、Anすなわち関数hkm(z)がゼロになる固有方程式を解く。
HPC計算部121は、各入力値に対する固有解および固有動作を決定する(ステップS13)。例えば、HPC計算部121は、入力値ごとに、固有方程式(hkm(z)=0)を解いた結果、ゼロになるzの値を固有解として決定する。そして、HPC計算部121は、式(1)に基づいて、決定した固有解に対応するSAW強度分布を固有動作として算出する。ここでは、HPC計算部121は、式(1)のNeffに固有解を代入して、固有解に対応するSAW強度分布を算出する。
そして、入出力保持部161は、入力値、固有方程式における関数hkm(z)の関数値、固有方程式の固有解を入出力記憶部21に累積保存する(ステップS14)。なお、関数hkm(z)の関数値は、予め定められた複数の特定のz値に対する関数値である。
そして、性能値評価部13は、各入力値の性能を算出する(ステップS15)。例えば、性能値評価部13は、各入力値に対するSAW強度分布から、各入力値が示す各構造の光信号路の配置位置に対応するSAW強度を性能値として算出する。そして、性能値評価部13は、入力値ごとの性能値に基づいて、各入力値の性能を評価する(ステップS16)。
そして、性能値評価部13は、現世代が閾値を超えるか否かを判定する(ステップS17)。現世代が閾値を超えていないと判定した場合には(ステップS17;No)、進化計算部14は、評価結果に基づいて、現在の入力値“xkm”から入力値を選別する(ステップS18)。
そして、進化計算部14は、次の世代の入力値“xk+1m”を生成する(ステップS19)。例えば、進化計算部14は、選別された入力値を交配し、交配した入力値を変異して、次の世代の入力値を生成する。そして、進化計算部14は、次の世代の処理をすべく、ステップS11に移行する。
一方、現世代が閾値を超えたと判定した場合には(ステップS17;Yes)、モデル生成部162は、以下の処理を行う。すなわち、モデル生成部162は、累積保存した入力値に対する固有方程式における関数hkm(z)の関数値、固有方程式の固有解の対応付けから、新たな入力値に対する固有解がどの値域にあるかを予測する学習モデル22を生成する(ステップS20)。そして、モデル生成処理は、終了する。
[進化計算のフローチャート]
図5は、実施例1に係る進化計算のフローチャートの一例を示す図である。なお、世代kの初期値は、モデル生成で用いた世代数+1であるとする。
図5に示すように、入力部11は、設計対象の入力値“xkm”(構造・設計値)を複数入力する(ステップS21)。
固有解予測部163は、学習モデル22を用いて、入力値“xkm”に対する固有解の解候補値域を推定する(ステップS22)。例えば、固有解予測部163は、学習モデル22に対して、入力値“xkm”ごとに、固有方程式における関数hkm(z)の、予測で用いられた複数の特定のz値に対する関数値を入力する。そして、固有解予測部163は、学習モデル22から、入力された関数値に対応する固有解の値域(解候補値域)を出力する。
固有解予測部163は、解候補値域の範囲で固有解を予測する(ステップS23)。例えば、固有解予測部163は、推定された固有解の値域の範囲内のzの値を順番に方程式(hkm(z)=0)に代入して、ゼロになるzの値を固有解として予測する。
固有解予測部163は、固有解の予測に成功したか否かを判定する(ステップS24)。固有解の予測に成功したと判定した場合には(ステップS24;Yes)、固有解予測部163は、ステップS26に移行する。
一方、固有解の予測に成功しなかったと判定した場合には(ステップS24;No)、HPC計算部121が、各入力値“xkm”固有の動作条件を計算する(ステップS25)。例えば、HPC計算部121は、入力値ごとに、式(2)の固有解条件のA1=1、B1=0を入力した場合に、Anを求める関数hkm(z)を計算する。そして、HPC計算部121は、入力値ごとに、式(2)の固有解条件のAn=0の条件から、zが取り得る全ての点について、Anすなわちhkm(z)がゼロになる固有方程式を解いて、固有解を予測する。そして、HPC計算部121は、ステップS26に移行する。
HPC計算部121は、各入力値に対する固有解および固有動作を決定する(ステップS26)。例えば、HPC計算部121は、入力値ごとに、固有方程式を解いた結果、ゼロになるzの値を固有解として決定する。そして、HPC計算部121は、式(1)に基づいて、決定した固有解に対応するSAW強度分布を固有動作として算出する。ここでは、HPC計算部121は、式(1)のNeffに固有解を代入して、固有解に対応するSAW強度分布を算出する。
そして、性能値評価部13は、各入力値の性能を算出する(ステップS27)。例えば、性能値評価部13は、各入力値に対するSAW強度分布から、各入力値が示す各構造の光信号路の配置位置に対応するSAW強度を性能値として算出する。そして、性能値評価部13は、入力値ごとの性能値に基づいて、各入力値の性能を評価する(ステップS28)。
そして、性能値評価部13は、終了条件を満たすか否かを判定する(ステップS29)。終了条件を満たしていないと判定した場合には(ステップS29;No)、進化計算部14は、評価結果に基づいて、現在の入力値“xkm”から入力値を選別する(ステップS30)。
そして、進化計算部14は、次の世代の入力値“xk+1m”を生成する(ステップS31)。例えば、進化計算部14は、選別された入力値を交配し、交配した入力値を変異して、次の世代の入力値を生成する。そして、進化計算部14は、次の世代の処理をすべく、ステップS21に移行する。
一方、終了条件を満たしたと判定した場合には(ステップS29;Yes)、性能値評価部13は、各入力値の性能評価の結果に基づいて、最適な入力値を選定する(ステップS32)。そして、進化計算処理は、終了する。
[光SAWフィルタ設計に適用した場合の効果]
図6は、実施例1に係る部分範囲探索を光SAWフィルタ設計に適用した場合の効果を示す図である。図6では、1世代に対して200個の入力値を有し、100世代分の合計20000個の入力値を評価する進化計算の例である。
図6に示すグラフは、全範囲探索を用いて固有解を求めた場合の総計算回数と、実施例1に係る部分範囲探索を用いて固有解を求めた場合の総計算回数を示したものである。
実施例1に係る部分範囲探索では、モデル生成部162は、初期の1~25世代の5000データ(200入力値×25世代)を学習して、学習モデル22を生成するようにした。すなわち、初期の5000データでは、固有解が全範囲探索されることで求められた。そして、固有解予測部163は、5001データ以降の26世代以降では、学習モデル22を用いて各入力値に対する解候補値域を予測し、予測した解候補値域で部分範囲探索をして固有解を求めるようにした。
すると、図6に示すように、実施例1に係る部分範囲探索の場合では、学習データとして用いられた1-25世代では、総計算回数が全範囲探索と同じようにかかるが、26世代以降では、1-25世代の場合と比べて、総計算回数が減ることがわかる。すなわち、情報処理装置1は、実施例1に係る部分範囲探索を用いた場合には、26世代目以降の予測により、高速化できるとともに、進化計算の計算量を低減できる。
なお、固有方程式の解を予測するために用いられる関数h(z)のz値は、予め定められた特定の複数のz値を用いると説明した。例えば、特定のz値として、予め定められたz、z、zの固定値が用いられると説明した。かかる固定値は、zの最小値から3点選択する場合であっても良いし、zの取り得る範囲全体から両端の点と真ん中の点を選択する場合であっても良い。
また、固有方程式の解を予測するために用いられる関数h(z)のz値は、予め定められた特定の複数のz値を用いない場合であっても良い。例えば、z、z、zは固定値ではないが、差分は固定値で行う場合である。一例として、差分「z-z」と差分「z-z」が固定値となるような3点を選択する場合であっても良い。また、差分「z-z」と差分「2×(z-z)」が固定値となるような3点を選択する場合であっても良い。
また、モデル生成部162は、累積された、入力値に対する固有方程式の解の結果に基づいて、入力値に対する固有解条件を満たす固有解がどの値域にあるかを予測する学習モデル22を生成すると説明した。モデル生成部162によって用いられる累積された、入力値に対する固有方程式の解の結果は、第n世代(n:3以上の整数)から学習モデル22を用いて予測する場合には、例えば、第1世代から第n-1世代までの情報であれば良い。また、第1世代からでなくても良く、例えば、予測する第n世代の直前の数個の世代の情報であっても良い。かかる場合には、モデル生成部162は、予測する世代に合わせて学習モデル22を更新すれば良い。
[実施例1の効果]
上記実施例1によれば、情報処理装置1は、複数の入力パラメータを用いて方程式の固有解を算出する進化計算を実行する。情報処理装置1は、第1世代の方程式の固有解を算出する際に、複数の入力パラメータの一部の入力パラメータについて当該方程式における関数の関数値を第1複数関数値として計算する。情報処理装置1は、第1世代より前の複数世代における、一部の入力パラメータについての第2複数関数値と、複数の入力パラメータを用いて算出された固有解との組み合わせに基づいて、第1複数関数値に対する固有解候補を予測する。情報処理装置1は、予測された固有解候補に対応する入力パラメータの近傍の方程式の解を計算する。かかる構成によれば、情報処理装置1は、進化計算において、ある第1世代の方程式の固有解を算出する際に、固有解候補を予測し、固有解候補の近傍で探索することで、固有解の探索における繰り返しの計算量を低減することができる。
また、上記実施例1によれば、情報処理装置1は、第1複数関数値に対する固有解の値域を固有解候補として予測する。情報処理装置1は、固有解候補として予測された固有解の値域の範囲で、方程式の固有解を探索する。かかる構成によれば、情報処理装置1は、固有解の値域の範囲で方程式の固有解を探索することで、固有解の探索における繰り返しの計算量を低減することができる。
また、上記実施例1によれば、情報処理装置1は、第1世代より前の複数世代における、世代ごとの一部の入力パラメータについての第2複数関数値と固有解との組み合わせに基づいて、固有解の値域を予測する学習モデル22を生成する。情報処理装置1は、学習モデル22を用いて、第1複数関数値に対する固有解の値域を固有解候補として予測する。かかる構成によれば、情報処理装置1は、学習モデル22を用いて固有解の値域を予測することで、固有解を計算する計算量を低減することができる。この結果、情報処理装置1は、進化計算の全体の計算量を低減することが可能となる。
ところで、実施例1では、情報処理装置1が、複数世代の入力値に対する固有方程式における関数の複数個の関数値と固有解との組み合わせに基づいて、入力値に対する固有方程式の固有解がどの値域にあるかを予測する学習モデル22を生成すると説明した。そして、情報処理装置1は、新たな世代の入力値に関し、生成した学習モデル22を用いて、入力値に対する固有方程式の固有解の推定解を予測する。ここでいう推定解とは、固有解の解候補値域を意味する。しかしながら、情報処理装置1は、学習モデル22に限定されず、複数世代の入力値に対する固有方程式における関数の複数個の関数値と固有解の推定解とを対応付けたテーブルを生成しても良い。そして、情報処理装置1は、生成したテーブルを用いて、新たな世代の入力値に対する固有方程式の固有解の推定解を予測する。
そこで、実施例2は、情報処理装置1が、入力値に対する固有方程式における関数の複数個の関数値と固有解の推定解とを対応付けたテーブルを用いて、新たな世代の入力値に対する固有方程式の固有解の推定解を予測する場合について説明する。
[情報処理装置の構成]
図7は、実施例2に係る情報処理装置の構成を示す機能ブロック図である。なお、図1に示す情報処理装置1と同一の構成については同一符号を示すことで、その重複する構成および動作の説明については省略する。実施例1と実施例2とが異なるところは、モデル生成部162を固有解情報テーブル生成部164に変更した点にある。また、固有解予測部163を固有解予測部163Aに変更した点にある。また、学習モデル22を固有解情報テーブル23に変更した点にある。
固有解情報テーブル23は、複数個の入力値に対する固有解の推定解を記憶するテーブルである。ここで、固有解情報テーブル23の一例を、図8を参照して説明する。図8は、実施例2に係る固有解情報テーブルの一例を示す図である。図8に示すように、固有解情報テーブル23は、入力値xkmに対して、固有方程式における関数hkm(z)の複数個の関数値と固有解の推定解ykmとを対応付けて記憶する。kは、世代を示し、mは、世代内の入力値を識別する番号を示す。また、複数個の関数値は、複数の特定のz値に対する関数値のことをいう。ここでは、複数の特定のz値は、予め定められたz、z、zの固定値が用いられている。なお、ここでは、3点が用いられているが、3点に限られるものではなく、4点でも5点でも良い。
一例として、入力値xkmがx02である場合には、z1に対する関数値としてh02(z1)、z2に対する関数値としてh02(z2)、z3に対する関数値としてh02(z3)、固有解の推定解としてy02を記憶している。
図7に戻って、固有解情報テーブル生成部164は、固有解情報テーブル23を生成する。例えば、固有解情報テーブル生成部164は、入出力記憶部21に入力値ごとに記憶された固有解を、解候補値域に変換する。解候補値域は、固有解の推定解ykmに対応する。固有解情報テーブル生成部164は、入出力記憶部21に記憶された、入力値ごとの、固有方程式における関数の関数値と、変換された解候補値域とを対応付けて固有解情報テーブル23に保持する。
固有解予測部163Aは、固有解情報テーブル23を用いて、入力値に対する固有方程式の固有解を予測する。
例えば、固有解予測部163Aは、新たな世代の入力値に対する固有方程式における関数の複数の関数値を取得する。固有解予測部163Aは、固有解情報テーブル23を用いて、取得した複数の関数値に対応する推定解を予測する。一例として、固有解予測部163Aは、新たな世代の入力値に対する固有方程式における関数の関数値と最も近似する関数値に対応する推定解を予測する。例えば、新たな世代の入力値xkmに対する関数hkmの関数値が関数h02の関数値と最も近似している場合とする。かかる場合には、固有解予測部163Aは、入力値xkmに対する固有方程式の推定解y‘kmを、y02と予測する。また、別例として、新たな世代の入力値に対する関数値が2つの入力値に対する関数値に近似する場合には、固有解予測部163Aは、近似する関数値に対する2つの推定解から内挿した解を、新たな世代の入力値に対する推定解として予測する。例えば、新たな世代の入力値xkmに対する関数hkmの関数値が関数h02と関数h53の関数値と近似している場合とする。かかる場合には、固有解予測部163Aは、関数h02の関数値に対する推定解y02と、関数h53の関数値に対する推定解y53との平均値を、新たな世代の入力値に対する推定解として予測する。
そして、固有解予測部163Aは、予測した推定解の値域の範囲で、入力値に対する固有方程式の固有解を探索する。すなわち、固有解予測部163Aは、推定解の値域の範囲内のzの値を順番に関数h(z)に代入して、ゼロになるzの値を固有解として予測する。
そして、固有解予測部163Aは、固有解の予測に成功した場合には、当該固有解を入力値とともにHPC計算部121に出力する。これは、HPC計算部121に、入力値に対する固有解のSAW強度分布(固有動作)を算出させ、入力値に対する性能値を算出させるためである。一方、固有解予測部163Aは、固有解の予測に失敗した場合には、予測に失敗した固有解に対する入力値をHPC計算部121に出力する。これは、HPC計算部121に、全範囲探索で入力値に対する固有解を求めさせるためである。
[実施例2の効果]
上記実施例2によれば、情報処理装置1は、第1世代より前の複数世代における、世代ごとの一部の入力パラメータについての第2複数関数値と固有解の値域とを組み合わせた固有解情報テーブル23を生成する。情報処理装置1は、固有解情報テーブル23を用いて、第1複数関数値に対する固有解の値域を固有解候補として予測する。かかる構成によれば、情報処理装置1は、固有解情報テーブル23を用いて固有解の値域を予測することで、固有解を計算する計算量を低減することができる。この結果、情報処理装置1は、進化計算の全体の計算量を低減することが可能となる。
[固有解予測を用いる別の例]
実施例1~2に係る固有解予測では、光SAWフィルタの設計する場合について説明した。実施例1~2に係る固有解予測を用いる別の例を、図9を参照して説明する。図9は、実施例1~2に係る固有解予測を用いる別の例を示す図である。図9では、VCO(Voltage Control Oscillator)回路の設計を進化計算により求める場合について説明する。
図9上図には、VCO回路が表わされている。破線部分が例えば設計要件の一例となる。
図9下左図には、発振周波数と動作電圧との関係が表わされている。VCO回路は、発振周波数が仕様の値(25.0GHzなど)を目標の値として動作するように動作電圧を設定して使用する。ここでは、発振周波数fとして25.0GHzが仕様の値である場合である。入力値1が示す構造では、仕様の値で動作する場合には、動作電圧は、V1を示す。入力値2が示す構造では、仕様の値で動作する場合には、動作電圧は、V2を示す。このように、構造により動作電圧が異なる。
図9下右図には、仕様周波数での位相雑音が表わされている。VCO回路は、発振周波数が仕様の値で動作するだけでなく、仕様に応じた条件で位相雑音が小さいことが求められる。ここでは、入力値2が示す構造2は、入力値1が示す構造1より、位相雑音が小さい。したがって、構造2は、構造1より最適な構造であることがわかる。
このようなVCO回路の設計概要の下、設計時では、インダクタや可変容量などの入力値(構造、パラメータ値などの設計要件)を調整し、最適な構造を探索するが、この入力値が変更されれば、入力値に対する動作電圧が変化する。このため、各入力値に応じて仕様の発振周波数fとなる動作電圧(Vcnt)を毎回予測し、仕様に応じた条件で位相雑音を評価する必要がある。
そこで、例えば、VCO回路の構造、パラメータなどの設計要件を、実施例1に係る「入力値」に対応させる。入力値に対する仕様条件での動作電圧を「固有解」に対応させる。入力値に対する仕様に応じた条件での位相雑音を評価値に対応させる。そして、以下のように、例えば、実施例1に係る固有解予測を用いて、VCOを設計すれば良い。
HPC計算部121は、所定の世代の設計要件の入力値を入力し、入力値に対する仕様条件を満たす動作電圧を求めるために、動作電圧になり得る全範囲を探索する。
そして、モデル生成部162は、入力値に対する関数の複数の特定の動作電圧値に対する発振周波数および全範囲探索によって探索された動作電圧値(固有解)に基づいて、入力値に対する仕様条件を満たす動作電圧の値域を予測する学習モデル22を生成する。ここでいう関数とは、動作電圧と発振周波数とから表わされる関数のことをいう。
そして、固有解予測部163は、学習モデル22を用いて、入力値に対する関数の、複数の特定の動作電圧値に対する発振周波数に対する動作電圧(固有解)の値域を予測する。固有解予測部163は、予測した動作電圧の値域の範囲で、入力値に対する仕様条件を満たす、当該入力値に対する動作電圧を予測する。なお、固有解予測部163は、動作電圧の予測に失敗した場合には、HPC計算部121に、全範囲探索により、入力値に対する動作電圧を探索させれば良い。
そして、性能値評価部13は、予測または探索できた動作電圧に基づいて、入力値に対する位相雑音を算出する。そして、性能値評価部13は、入力値ごとの位相雑音に基づいて、各入力値の位相雑音(性能)を評価する。そして、進化計算部14は、各入力値の位相雑音の評価結果に基づいて、入力値を進化させ、入力値に対して動作電圧を予測させ、最終的に最適な入力値を選定させれば良い。
[進化計算のフローチャート]
図10は、別の例に係る進化計算のフローチャートの一例を示す図である。なお、世代kの初期値は、モデル生成で用いた世代数+1であるとする。
図10に示すように、入力部11は、設計対象の入力値“xkm”(構造・設計値)を複数入力する(ステップS41)。
固有解予測部163は、学習モデル22を用いて、入力値に対する固有の動作電圧の解候補値域を推定する(ステップS42)。例えば、固有解予測部163は、学習モデル22に対して、入力値“xkm”ごとに、動作電圧と発振周波数とから表わされる関数hkm(z)の、予測で用いられた複数の特定のz値に対する関数値を入力する。そして、固有解予測部163は、学習モデル22から、入力された関数値に対応する動作電圧の値域(解候補値域)を出力する。
固有解予測部163は、解候補値域の範囲で固有の動作電圧を予測する(ステップS43)。例えば、固有解予測部163は、推定された動作電圧の値域の範囲内のzの値を順番に関数に代入して、動作条件になるzの値を固有解として予測する。
固有解予測部163は、固有の動作電圧の予測に成功したか否かを判定する(ステップS44)。固有の動作電圧の予測に成功したと判定した場合には(ステップS44;Yes)、固有解予測部163は、ステップS46に移行する。
一方、固有の動作電圧の予測に成功しなかったと判定した場合には(ステップS44;No)、HPC計算部121が、各入力値“xkm”固有の動作電圧を算出する(ステップS45)。すなわち、HPC計算部121は、仕様となる固有の動作電圧を全範囲から探索して固有の動作電圧を算出する。そして、HPC計算部121は、ステップS46に移行する。
ステップS46において、HPC計算部121は、各入力値に対する固有の動作電圧を決定する(ステップS46)。
そして、性能値評価部13は、各入力値の性能を算出する(ステップS47)。例えば、性能値評価部13は、各入力値に対する固有の動作電圧から位相雑音を算出する。そして、性能値評価部13は、入力値ごとの位相雑音に基づいて、各入力値の性能を評価する(ステップS48)。
そして、性能値評価部13は、終了条件を満たすか否かを判定する(ステップS49)。終了条件を満たしていないと判定した場合には(ステップS49;No)、進化計算部14は、評価結果に基づいて、現在の入力値“xkm”から入力値を選別する(ステップS50)。
そして、進化計算部14は、次の世代の入力値“xk+1m”を生成する(ステップS51)。例えば、進化計算部14は、選別された入力値を交配し、交配した入力値を変異して、次の世代の入力値を生成する。そして、進化計算部14は、次の世代の処理をすべく、ステップS41に移行する。
一方、終了条件を満たしたと判定した場合には(ステップS49;Yes)、性能値評価部13は、各入力値の性能評価の結果に基づいて、最適な入力値を選定する(ステップS52)。そして、進化計算処理は、終了する。
[別の例の効果]
これにより、情報処理装置1は、VCOを設計する場合に、仕様条件を満たす入力値に対する動作電圧の値域を用いて動作電圧を予測することで、進化計算の全体の計算量を低減することが可能となる。つまり、情報処理装置1は、各入力値に対して仕様の発振周波数となる動作電圧(固有解に対応)の探索を予測できれば、効率的に入力値(構造)を評価できるため、VCOの設計に用いられる計算量を削減できる。
[その他]
なお、図示した情報処理装置1の各構成要素は、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、情報処理装置1の分散・統合の具体的態様は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。例えば、出力部15と入出力保持部161とを1つの部として統合しても良い。また、HPC計算部121を、全範囲探索により固有解を探索する計算部と、固有解に基づいて目的関数を計算する部と、目的関数により入力値に対する性能値を計算部とに分離しても良い。また、記憶部20を情報処理装置1の外部装置としてネットワーク経由で接続するようにしても良い。
また、上記実施例で説明した各種の処理は、予め用意されたプログラムをパーソナルコンピュータやワークステーションなどのコンピュータで実行することによって実現することができる。そこで、以下では、図1に示した情報処理装置1と同様の機能を実現する情報処理プログラムを実行するコンピュータの一例を説明する。図11は、情報処理プログラムを実行するコンピュータの一例を示す図である。
図11に示すように、コンピュータ200は、各種演算処理を実行するCPU203と、ユーザからのデータの入力を受け付ける入力装置215と、表示装置209を制御する表示制御部207とを有する。また、コンピュータ200は、記憶媒体からプログラムなどを読取るドライブ装置213と、ネットワークを介して他のコンピュータとの間でデータの授受を行う通信制御部217とを有する。また、コンピュータ200は、各種情報を一時記憶するメモリ201と、HDD(Hard Disk Drive)205を有する。そして、メモリ201、CPU203、HDD205、表示制御部207、ドライブ装置213、入力装置215、通信制御部217は、バス219で接続されている。
ドライブ装置213は、例えばリムーバブルディスク210用の装置である。HDD205は、情報処理プログラム205aおよび情報処理関連情報205bを記憶する。
CPU203は、情報処理プログラム205aを読み出して、メモリ201に展開し、プロセスとして実行する。かかるプロセスは、情報処理装置1の各機能部に対応する。情報処理関連情報205bは、入出力記憶部21および学習モデル22に対応する。そして、例えばリムーバブルディスク210が、情報処理プログラム205aなどの各情報を記憶する。
なお、情報処理プログラム205aについては、必ずしも最初からHDD205に記憶させておかなくても良い。例えば、コンピュータ200に挿入されるフレキシブルディスク(FD)、CD-ROM(Compact Disk Read Only Memory)、DVD(Digital Versatile Disk)、光磁気ディスク、IC(Integrated Circuit)カードなどの「可搬用の物理媒体」に当該プログラムを記憶させておく。そして、コンピュータ200がこれらから情報処理プログラム205aを読み出して実行するようにしても良い。
1 情報処理装置
10 制御部
11 入力部
12 HPC計算部群
13 性能値評価部
14 進化計算部
15 出力部
16 解予測部
161 入出力保持部
162 モデル生成部
163,163A 固有解予測部
164 固有解情報テーブル生成部
20 記憶部
21 入出力記憶部
22 学習モデル
23 固有解情報テーブル

Claims (7)

  1. 複数の入力パラメータを用いて方程式の固有解を算出する進化計算を実行する情報処理装置において、
    第1世代の方程式の固有解を算出する際に、複数の入力パラメータの一部の入力パラメータについて当該方程式における関数の関数値を第1複数関数値として計算する第1の計算部と、
    前記第1世代より前の複数世代における、前記一部の入力パラメータについての第2複数関数値と、前記複数の入力パラメータを用いて算出された固有解との組み合わせに基づいて、前記第1複数関数値に対する固有解候補を予測する予測部と、
    前記予測部によって予測された前記固有解候補に対応する入力パラメータの近傍の前記方程式の解を計算する第2の計算部と、
    を有することを特徴とする情報処理装置。
  2. 前記予測部は、前記第1複数関数値に対する固有解の値域を前記固有解候補として予測し、
    前記第2の計算部は、前記固有解候補として予測された固有解の値域の範囲で、前記方程式の固有解を探索する
    ことを特徴とする請求項1に記載の情報処理装置。
  3. 前記予測部は、
    前記第1世代より前の複数世代における、世代ごとの前記一部の入力パラメータについての前記第2複数関数値と前記固有解との組み合わせに基づいて、固有解の値域を予測するモデルを生成する生成部を含み、
    前記モデルを用いて、前記第1複数関数値に対する固有解の値域を前記固有解候補として予測する
    ことを特徴とする請求項1または請求項2に記載の情報処理装置。
  4. 前記予測部は、
    前記第1世代より前の複数世代における、世代ごとの前記一部の入力パラメータについての前記第2複数関数値と前記固有解の値域とを組み合わせたテーブルを生成する生成部を含み、
    前記テーブルを用いて、前記第1複数関数値に対する固有解の値域を前記固有解候補として予測する
    ことを特徴とする請求項1または請求項2に記載の情報処理装置。
  5. 前記一部の入力パラメータは、前記方程式における関数h(z)について、予め定められた複数個のz値である
    ことを特徴とする請求項1に記載の情報処理装置。
  6. 複数の入力パラメータを用いて方程式の固有解を算出する進化計算において、
    第1世代の方程式の固有解を算出する際に、複数の入力パラメータの一部の入力パラメータについて当該方程式における関数の関数値を第1複数関数値として計算し、
    前記第1世代より前の複数世代における、前記一部の入力パラメータについての第2複数関数値と、前記複数の入力パラメータを用いて算出された固有解との組み合わせに基づいて、前記第1複数関数値に対する固有解候補を予測し、
    該予測された前記固有解候補に対応する入力パラメータの近傍の前記方程式の解を計算する、
    処理をコンピュータに実行させることを特徴とする情報処理プログラム。
  7. 複数の入力パラメータを用いて方程式の固有解を算出する進化計算において、
    第1世代の方程式の固有解を算出する際に、複数の入力パラメータの一部の入力パラメータについて当該方程式における関数の関数値を第1複数関数値として計算し、
    前記第1世代より前の複数世代における、前記一部の入力パラメータについての第2複数関数値と、前記複数の入力パラメータを用いて算出された固有解との組み合わせに基づいて、前記第1複数関数値に対する固有解候補を予測し、
    該予測された前記固有解候補に対応する入力パラメータの近傍の前記方程式の解を計算する、
    処理をコンピュータが実行することを特徴とする情報処理方法。
JP2019168725A 2019-09-17 2019-09-17 情報処理装置、情報処理プログラムおよび情報処理方法 Active JP7272200B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2019168725A JP7272200B2 (ja) 2019-09-17 2019-09-17 情報処理装置、情報処理プログラムおよび情報処理方法
EP20192793.6A EP3809338A1 (en) 2019-09-17 2020-08-26 Information processing apparatus, program and information processing method
US17/008,719 US20210081488A1 (en) 2019-09-17 2020-09-01 Information processing apparatus, storage medium and information processing method
CN202010960181.8A CN112528220A (zh) 2019-09-17 2020-09-14 信息处理设备、存储介质和信息处理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2019168725A JP7272200B2 (ja) 2019-09-17 2019-09-17 情報処理装置、情報処理プログラムおよび情報処理方法

Publications (2)

Publication Number Publication Date
JP2021047537A JP2021047537A (ja) 2021-03-25
JP7272200B2 true JP7272200B2 (ja) 2023-05-12

Family

ID=72266113

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019168725A Active JP7272200B2 (ja) 2019-09-17 2019-09-17 情報処理装置、情報処理プログラムおよび情報処理方法

Country Status (4)

Country Link
US (1) US20210081488A1 (ja)
EP (1) EP3809338A1 (ja)
JP (1) JP7272200B2 (ja)
CN (1) CN112528220A (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7327137B2 (ja) 2019-12-13 2023-08-16 富士通株式会社 演算処理装置、演算処理プログラムおよび演算処理方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001249953A (ja) 2000-03-03 2001-09-14 Canon Inc 光学薄膜の設計方法、光学薄膜の設計装置
JP2002288227A (ja) 2001-03-28 2002-10-04 Sanyo Electric Co Ltd 弾性表面波フィルタの設計方法、コンピュータプログラム及び記録媒体

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005084765A (ja) * 2003-09-05 2005-03-31 Univ Of Fukui 文字認識装置及び方法及びそのプログラム
EP1557788B1 (en) 2004-01-26 2008-04-16 Honda Research Institute Europe GmbH Reduction of fitness evaluations using clustering technique and neural network ensembles
JP2006088331A (ja) 2005-12-05 2006-04-06 Japan Science & Technology Agency 二足歩行ロボット
US11074671B2 (en) * 2017-12-18 2021-07-27 Samsung Electronics Co., Ltd. Electronic apparatus and control method thereof

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001249953A (ja) 2000-03-03 2001-09-14 Canon Inc 光学薄膜の設計方法、光学薄膜の設計装置
JP2002288227A (ja) 2001-03-28 2002-10-04 Sanyo Electric Co Ltd 弾性表面波フィルタの設計方法、コンピュータプログラム及び記録媒体

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Yukito TSUNODA et al.,Neural-network assistance to calculate precise eigenvalue for fitness evaluation of real product design,GECCO '19: Proceedings of the Genetic and Evolutionary Computation Conference Companion [online],2019年07月13日,pp.405-406,https://dl.acm.org/doi/10.1145/3319619.3321884 [2023年3月17日検索],DOI: 10.1145/3319619.3321884

Also Published As

Publication number Publication date
EP3809338A1 (en) 2021-04-21
JP2021047537A (ja) 2021-03-25
US20210081488A1 (en) 2021-03-18
CN112528220A (zh) 2021-03-19

Similar Documents

Publication Publication Date Title
JP7056225B2 (ja) 演算処理装置、情報処理装置、情報処理方法、およびプログラム
McLeod et al. Optimization, fast and slow: optimally switching between local and Bayesian optimization
JP5258915B2 (ja) 特徴変換装置、それを含む類似情報探索装置、コード化パラメータ生成方法、及びコンピュータ・プログラム
Segura et al. Improving the vector generation strategy of differential evolution for large-scale optimization
JP7272200B2 (ja) 情報処理装置、情報処理プログラムおよび情報処理方法
JP7283318B2 (ja) 最適化装置、最適化プログラム、及び最適化方法
JP2020123270A (ja) 演算装置
JP7172706B2 (ja) 演算処理装置、演算処理プログラムおよび演算処理方法
JP7354712B2 (ja) 情報処理装置、情報処理プログラムおよび情報処理方法
JP2019211985A (ja) 学習プログラム、学習方法、及び情報処理装置
JP7272121B2 (ja) 演算処理装置、制御方法、及び制御プログラム
CN110648355A (zh) 一种图像跟踪方法、系统及相关装置
JP7327137B2 (ja) 演算処理装置、演算処理プログラムおよび演算処理方法
CN112416709B (zh) 芯片动态功耗估计方法、装置、处理器芯片及服务器
JP7243498B2 (ja) 演算処理装置、制御プログラム、及び制御方法
CN110263906B (zh) 非对称负相关搜索方法
WO2021117150A1 (ja) 並列計算用進化計算プログラム、情報処理装置および並列計算用進化計算方法
Dasgupta et al. On the use of informed initialization and extreme solutions sub-population in multi-objective evolutionary algorithms
JP4899789B2 (ja) 画像処理プログラムおよび画像処理装置
CN116149600B (zh) 多常数乘法器的逻辑电路设置方法、装置、设备及介质
JP7031575B2 (ja) 高速スパース最適化装置、高速スパース最適化方法、及びプログラム
JP6242555B1 (ja) 尤度生成回路および尤度算出方法
Braun et al. Multi-objective optimization with controlled model assisted evolution strategies
Sovilj et al. Tabu search with delta test for time series prediction using OP-KNN
CN115828131A (zh) 数据点密度连续性的图聚类方法、装置、存储介质和设备

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220609

TRDD Decision of grant or rejection written
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20230322

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20230328

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230410

R150 Certificate of patent or registration of utility model

Ref document number: 7272200

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150