JP7450833B1 - パラメータ最適化装置およびパラメータ最適化方法 - Google Patents

パラメータ最適化装置およびパラメータ最適化方法 Download PDF

Info

Publication number
JP7450833B1
JP7450833B1 JP2023570348A JP2023570348A JP7450833B1 JP 7450833 B1 JP7450833 B1 JP 7450833B1 JP 2023570348 A JP2023570348 A JP 2023570348A JP 2023570348 A JP2023570348 A JP 2023570348A JP 7450833 B1 JP7450833 B1 JP 7450833B1
Authority
JP
Japan
Prior art keywords
generation
small group
unit
parameter
evaluation
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
JP2023570348A
Other languages
English (en)
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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Application granted granted Critical
Publication of JP7450833B1 publication Critical patent/JP7450833B1/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Feedback Control In General (AREA)

Abstract

パラメータ最適化装置(1)は、対象問題の世代ごとに設定された個体数よりも少ない数の次世代の個体群である次世代小集団を、次世代小集団の生成ごとに設定される、進化的アルゴリズムのパラメータを用いて生成し、次世代小集団を評価する進化的アルゴリズム部(2)と、次世代小集団の評価結果に基づいて小集団の生成を学習し、学習結果に基づいて次世代小集団の生成に用いられるパラメータを選択する最適化部(3)を備える。

Description

本開示は、パラメータ最適化装置およびパラメータ最適化方法に関する。
進化的アルゴリズムは、様々な最適化問題を解決する手法として広く用いられている。
例えば、特許文献1に記載される学習方法は、進化的アルゴリズム、特にCMA-ES(共分散行列適応進化戦略)アルゴリズムまたは差分進化的アルゴリズムのうちの少なくとも一つのパラメータ(σ)を最適に適応化する戦略(π)を学習するものである。
この方法は、問題インスタンスに関する状態情報(S)に依存して、パラメータ(σ)のパラメータ表示(A)を算定する戦略を初期化するステップと、強化学習を用いて戦略(π)を学習するステップとを含む。そして、CMA-ESアルゴリズムと、状態情報(S)に依存する戦略を用いて決定されたパラメータ表示と、問題インスタンスと、報酬信号(R)との相互作用に基づいて、可能な状態情報にとっていずれのパラメータ表示が最適であるかが学習される。
特開2022-21177号公報
従来の進化的アルゴリズムのパラメータ最適化では、世代ごとにパラメータが選択され、選択されたパラメータを用いて、世代ごとに設定された数分の個体(候補解)を生成してから、生成した個体集団をまとめて評価している。
このため、1世代での環境の変動が大きい場合、1世代での個体の評価では環境の変動に追従できず、パラメータ選択の最適性が低下するという課題があった。
例えば、1世代における環境の変化には、進化的アルゴリズムを用いて解決する問題の制約条件が変動するか、目的関数が変わることもある。また、進化のタイミング、または変化パターンが変化することもある。これらの環境要因の変動はパラメータ選択に大きく影響を与える。
なお、特許文献1に記載される学習方法においても、進化的アルゴリズムのパラメータ(σ)の選択および学習が世代ごとに行われている。このため、1世代での環境の変動が大きい場合、特許文献1に記載される学習方法では、パラメータ選択の最適性が低下し、進化的アルゴリズムの学習効率が低下する可能性が高い。
本開示は上記課題を解決するものであり、進化的アルゴリズムのパラメータ選択の最適性を高めることができる、パラメータ最適化装置を得ることを目的とする。
本開示に係るパラメータ最適化装置は、対象問題の世代ごとに設定された個体数よりも少ない数の次世代の個体群である小集団を、小集団の生成ごとに設定される、進化的アルゴリズムのパラメータを用いて生成し、生成した小集団を評価する進化的アルゴリズム部と、小集団の評価結果に基づいて学習し、学習結果に基づいて進化的アルゴリズム部が小集団の生成に用いるパラメータを選択する最適化部と、を備える。
本開示によれば、対象問題の世代ごとに設定された個体数よりも少ない数の次世代の個体群である小集団を、小集団の生成ごとに設定される、進化的アルゴリズムのパラメータを用いて生成し、生成した小集団の評価結果に基づいて小集団の生成を学習し、学習結果に基づいて小集団の生成に用いられるパラメータを選択する。パラメータの選択とパラメータを用いて生成した小集団の評価とを、小集団の生成ごとに行うことで、次世代の小集団の評価結果が小集団の生成過程にフィードバックされる。これにより、世代ごとの環境の変動に対する適応性が向上するので、本開示に係るパラメータ最適化装置は、進化的アルゴリズムのパラメータ選択の最適性を高めることができる。
図1Aおよび図1Bは、進化的アルゴリズムのパラメータ最適化の概要を示す概要図である。 実施の形態1に係るパラメータ最適化装置の構成例を示すブロック図である。 次世代小集団生成部の構成例を示すブロック図である。 実施の形態1に係るパラメータ最適化方法を示すフローチャートである。 巡回セールスマン問題の一例を示す概要図である。 図5の問題に対する進化的アルゴリズムのパラメータに含まれる突然変異率の最適化のシミュレーション結果を示すグラフである。 図7Aおよび図7Bは、実施の形態1に係るパラメータ最適化装置の機能を実現するハードウェア構成を示すブロック図である。
実施の形態1.
まず、従来の進化的アルゴリズムのパラメータ最適化における問題点について図1Aを用いて説明する。図1Aは、進化的アルゴリズムのパラメータ最適化の概要を示す概要図であり、従来のパラメータ最適化装置100によるパラメータの最適化を示している。
パラメータ最適化装置100は、進化的アルゴリズム部101および最適化部102を備える。進化的アルゴリズム部101は、対象問題の世代ごとに設定された個体数の次世代の個体群である小集団を、世代ごとに設定される、進化的アルゴリズムのパラメータを用いて生成し、生成した小集団を評価するものである。
進化的アルゴリズムは、対象問題に対して変化と選択に基づく世代交代を繰り返すことにより、候補解である個体の集団を進化させて最適解を得るものである。進化的アルゴリズムは、様々な最適化問題に対処する能力を有する。しかしながら、進化的アルゴリズムのパフォーマンスは、パラメータの調整、すなわち、交叉率および突然変異率といったハイパーパラメータの値、および、交叉演算子および突然変異演算子といった演算子として最適なものを選択できるか否かに依存する。
パラメータ選択の最適性を向上させるため、従来、進化的アルゴリズム部101として多腕バンディットを適用することで問題解決を行う、AOS(Adaptive Operator Selection)が提案されている。パラメータ最適化装置100は、AOSを行うものである。AOSは、進化的アルゴリズムのパラメータを学習しながら、現世代までに実行された個体生成の履歴情報のみを用いて、現世代で生成した個体を評価し、評価結果に基づいて次の世代に残す個体を決定する。AOSによって、各世代に最適なパラメータが選択されるので、最適な個体生成を効率的に制御することが可能となる。
例えば、世代更新作業T(世代Tの処理)において、最適化部102は、前世代で生成した個体の小集団についての評価値である適応度fを取得し、適応度fに基づいて、最適なパラメータ(例えば、交叉率pと突然変異率e)を選択する。最適化部102は、選択したパラメータを進化的アルゴリズム部101に設定する。例えば、適応度fは、個体が目的関数にどの程度適したかを示す指標である。適応度fが高い個体ほど、次世代に引き継がれる確率が高くなる。
進化的アルゴリズム部101は、最適化部102により設定された世代Tのパラメータを用いて交叉および点変異を行い、次世代T+1の個体の小集団を生成する。交叉とは、二つの前世代の個体(親個体)の遺伝情報を組み合わせて新たな次世代の個体(子孫個体)を生成する操作である。進化的アルゴリズム部101は、最適化部102が設定した交叉率に基づいた交叉によって次世代T+1の個体を生成する。また、点変異は、個体の遺伝情報の一部をランダムに変える操作である。進化的アルゴリズム部101は、最適化部102が設定した突然変異率に基づいた点変異によって次世代T+1の個体を生成する。
進化的アルゴリズム部101は、世代Tのパラメータに含まれる候補解数の個体群からなる、次世代T+1の個体の小集団を生成すると、この小集団の評価処理(適応度評価)を行い、評価値である適応度fT+1を最適化部102に出力する。続いて、進化的アルゴリズム部101は、世代Tから世代T+1に交代し、世代更新作業T+1(世代T+1の処理)において、世代T+1のパラメータに含まれる候補解数の個体群からなる、次世代T+2の個体の小集団を生成する。進化的アルゴリズム部101は、次世代T+2の個体の小集団を生成し、この小集団の適応度fT+2を最適化部102に出力する。これら一連の処理は、予め設定された世代数に達するまで繰り返し行われる。
図1Aに示すように、従来のパラメータ最適化装置100では、世代ごとにパラメータが選択され、前世代までの情報(前世代に生成した小集団の適応度f)のみを用いて、その世代に設定された個体数の個体からなる次世代の小集団を生成し、生成した小集団をまとめて評価している。このため、1世代での環境の変動が大きい場合、1世代での個体の評価では環境の変動に追従できず、パラメータ選択の最適性が低下してしまう。
このように、AOSは、パラメータの選択および評価を世代でまとめて行うので、常に前世代の評価のみからパラメータ選択を行うことになり、非効率的である。
これに対して、実施の形態1に係るパラメータ最適化装置は、パラメータの選択およびパラメータを用いて生成した小集団の評価を小集団の生成ごとに行うものである。
図1Bは、実施の形態1に係るパラメータ最適化装置1による、進化的アルゴリズムのパラメータ最適化の概要を示す概要図である。パラメータ最適化装置1は、進化的アルゴリズム部2および最適化部3を備える。進化的アルゴリズム部2は、対象問題の世代ごとに設定された個体数よりも少ない数の次世代の個体群である小集団を、小集団の生成ごとに設定される、進化的アルゴリズムのパラメータを用いて生成し、生成した小集団を評価する。
世代更新作業Tにおいて、最適化部3は、進化的アルゴリズム部2が順次生成する次世代T+1の個体kの小集団の適応度fTkを取得して、小集団の生成に関するパラメータを学習する。そして、最適化部3は、学習結果に基づいて次の小集団の生成に用いられるパラメータ(例えば、交叉率pTk+1と突然変異率eTk+1)を選択し、選択したパラメータを進化的アルゴリズム部2に設定する。
進化的アルゴリズム部2は、最適化部3から設定されたパラメータを用いて次の次世代T+1の個体kの小集団を生成すると、この小集団の評価処理(適応度評価)を行い、適応度fTkを最適化部3に出力する。次に、進化的アルゴリズム部2は、世代Tから世代T+1に交代し、世代更新作業T+1において、世代T+1のパラメータに含まれる候補解数より少ない数の個体群からなる、次世代T+2の個体の小集団を順次生成する。進化的アルゴリズム部2は、生成した小集団の適応度fT+1kを最適化部3に出力する。
最適化部3は、小集団の生成を学習し、この学習結果に基づいて、進化的アルゴリズム部2による次の小集団の生成に用いられるパラメータ(例えば、交叉率pT+1k+1と突然変異率eT+1k+1)を選択して進化的アルゴリズム部2に設定する。
これら一連の処理は、予め設定された次世代の個体数に達するまで繰り返し行われる。
このように、パラメータ最適化装置1では、次世代の小集団の評価結果が小集団の生成過程にフィードバックされるので、世代ごとの環境の変動に対する適応性が向上し、進化的アルゴリズムのパラメータ選択の最適性を高めることが可能である。
図2はパラメータ最適化装置1の構成例を示すブロック図である。図2に示すように、パラメータ最適化装置1は、演算部および記憶部を備えた装置である。演算部は、パラメータ最適化装置1の全体動作を制御するものである。演算部は、進化的アルゴリズム部2および最適化部3を備える。演算部が、パラメータ最適化用の情報処理アプリケーションを実行することにより、進化的アルゴリズム部2および最適化部3の各種の機能が実現される。
記憶部は、パラメータ最適化用の情報処理アプリケーション、および演算部の演算処理に用いられる情報を記憶する。この記憶部は、例えば、評価値記憶部32および個体記憶部213を実現するものである。また、記憶部は、パラメータ最適化装置1として機能するコンピュータが備える記憶装置であってもよい。例えば、HDD(Hard Disk Drive)もしくはSSD(Solid State Drive)等のストレージ、または、後述する図7Bのメモリ104を含むものである。
なお、記憶部は、パラメータ最適化装置1がアクセス可能なものであればよく、パラメータ最適化装置1の外部に設けられてもよい。
進化的アルゴリズム部2は、対象問題の世代ごとに設定された個体数よりも少ない数の次世代の個体群である次世代小集団を、次世代小集団の生成ごとに設定される、進化的アルゴリズムのパラメータを用いて生成し、次世代小集団を評価するものである。例えば、進化的アルゴリズム部2は、初期世代からN回の世代交代を重ねて対象問題の個体を生成し、その適応度を高めた最終世代の個体を生成する。なお、Nは2以上の整数である。
進化的アルゴリズム部2において動作される進化的アルゴリズムは、例えば、世代交代を行うアルゴリズムである遺伝的アルゴリズム、差分進化アルゴリズム、または、多目的最適化アルゴリズム等である。進化的アルゴリズム部2は、図2に示すように、次世代生成部21および世代交代終了判定部22を備える。
次世代生成部21は、進化的アルゴリズムによる、対象問題の次世代小集団の生成と、その評価を行うものであり、パラメータ設定部211、次世代小集団生成部212、個体記憶部213、評価部214および生成終了判定部215を備える。また、世代交代終了判定部22は、初期世代から、次世代生成部21に設定された最終世代まで、次世代生成部21による動作が行われたか否かを判定する。例えば、最終世代がN世代である場合、次世代生成部21は、N世代の個体を生成するまで初期世代からN回の世代交代を重ねることにより、適応度が高められた最終世代の個体を生成する。
パラメータ設定部211は、最適化部3から取得したパラメータを、次世代小集団生成部212に設定するものである。最適化部3から取得するパラメータは、いわゆるハイパーパラメータであり、進化的アルゴリズムを動作させる際に調整する必要があるパラメータである。例えば、パラメータには、次世代生成部21が個体生成を行う最終世代を特定するための世代数、次世代小集団生成部212が生成する個体数、交差率、突然変異率、および、次の世代での個体生成に利用する個体を選択する方法等が含まれる。
なお、パラメータに含まれる個体数は、従来の進化的アルゴリズムのように、各世代に設定される個体数だけでなく、次世代生成部21が生成する次世代小集団の数、および、次世代小集団生成部212が生成する小集団ごとの個体数も含まれる。
次世代小集団生成部212は、最適化部3が選択したパラメータを用いて次世代小集団を生成する生成部である。次世代小集団とは、対象問題の候補解である複数の個体で構成される小集団である。次世代小集団には、最適化部3が選択したパラメータに含まれる、次世代小集団ごとに設定された個体数の個体が含まれる。なお、次世代小集団ごとの個体数は、その世代に設定された個体数よりも少ないものとする。
図3は、次世代小集団生成部212の構成例を示すブロック図である。図3に示すように、次世代小集団生成部212は、交叉部2121、点変異部2122、および、次世代小集団終了判定部2123を備える。交叉部2121は、パラメータ設定部211により設定されたパラメータから個体間が交叉する確率である交叉率を抽出し、交叉率に従って二つの個体間を交叉させることにより、新たな個体を生成する。なお、交叉率が高くなるにつれて個体の多様性が失われ、低すぎると最適な個体への収束が遅れる可能性がある。
点変異部2122は、パラメータ設定部211により設定されたパラメータから、個体が変異する確率である突然変異率を抽出し、突然変異率に従って個体の遺伝子情報を変化させることにより、新たな個体を生成する。なお、突然変異率が高くなるにつれて個体の多様性が失われ、低すぎると最適な個体への収束が遅れる可能性がある。
交叉部2121および点変異部2122による個体生成は、個別に行われてもよいし、それぞれ組み合わせて行ってもよい。
次世代小集団終了判定部2123は、交叉部2121と点変異部2122による一つの小集団の生成終了を判定するものである。例えば、次世代小集団終了判定部2123は、交叉部2121および点変異部2122が生成した個体の数が、パラメータ設定部211により設定されたパラメータに含まれる、次世代小集団ごとに設定された個体数に達した場合、次世代小集団の生成終了と判定する。次世代小集団ごとに設定された個体数に達しておらず、終了判定がされない場合、交叉部2121および点変異部2122は、パラメータ設定部211により設定されたパラメータを用いて個体生成を繰り返す。
個体記憶部213は、次世代小集団生成部212が生成した次世代小集団である個体群を記憶する記憶部である。なお、個体記憶部213は、次世代小集団生成部212および次世代小集団終了判定部2123がアクセス可能なものであればよく、パラメータ最適化装置1の外部に設けられてもよい。
評価部214は、次世代小集団生成部212により生成された次世代小集団を評価し、その評価結果を最適化部3に出力する評価部である。例えば、評価部214は、個体が解決すべき問題にどの程度適しているかを示す適応度を用いて、次世代小集団の個体を評価する。次世代小集団がN個の個体で構成される場合に、評価部214は、N個の適応度の平均値を算出し、この平均値を、次世代小集団の評価情報として最適化部3に出力する。
また、評価部214は、対象問題に関する目的関数を用いて次世代小集団を評価してもよい。目的関数は、対象問題の解としての尤もらしさを数値的に表した関数である。評価部214は、目的関数を用いて個体を評価する。
生成終了判定部215は、次世代生成部21における次世代小集団の生成の終了を判定するものである。例えば、生成終了判定部215は、次世代生成部21が生成した次世代小集団の数が、パラメータ設定部211により設定されたパラメータに含まれる、各世代に設定される次世代小集団の生成数に達した場合、次世代小集団の生成終了と判定する。一方、各世代に設定される次世代小集団の生成数に達しておらず、終了判定がされなければ、次世代生成部21は、パラメータ設定部211により設定されたパラメータを用いて次世代小集団の生成を繰り返す。
最適化部3は、次世代小集団の評価結果に基づいて次世代小集団の生成を学習し、この学習結果に基づいて次世代小集団の生成に用いられるパラメータを選択するものである。例えば、最適化部3は、深層強化学習、Q学習、または多腕バンディット等の強化学習を行う。また、最適化部3は、図2に示すように制御評価部31、評価値記憶部32および選択部33を備える。
制御評価部31は、次世代生成部21に設定されるパラメータと次世代生成部21から取得した次世代小集団の評価情報とを用いて次世代小集団の生成を学習し、この学習結果に基づいて次世代小集団の生成に関する制御評価値を算出する。制御評価部31が算出した制御評価値は、評価値記憶部32に記憶される。また、制御評価部31は、図2に示すように、制御学習部311および報酬生成部312を備える。
制御学習部311は、報酬とパラメータとを用いて次世代小集団の生成を強化学習するものである。例えば、制御学習部311が多腕バンディットを実行し、複数の選択肢の中から、対象問題の解として最適な次世代小集団を生成可能と予想されるパラメータの選択肢についての価値を算出する。選択肢の価値は、次世代小集団の生成に関する制御評価値として評価値記憶部32に記憶される。
例えば、制御学習部311は、下記式(1)に従って、i番目の選択肢(以下、選択肢iと記載する。)の価値を算出する。選択肢iの直近の報酬は、報酬生成部312が次世代小集団の評価値に基づき生成した報酬である。選択肢iの直近の観測回数は、前世代までに選択肢iに関するパラメータが観測された回数である。SUM( )は( )内の和を求める演算子である。
選択肢iの価値=(0.5+SUM(選択肢iの直近の報酬))/(SUM(選択肢iの直近の観測回数)+1) (1)
報酬生成部312は、評価情報に基づいて次世代小集団の評価に対する報酬を算出するものである。報酬は、例えば、次世代小集団の生成の学習進捗である。ここで、学習進捗は、最適な次世代小集団の生成に関する学習の進捗を表す数値であり、例えば、次世代小集団の適応度である。なお、報酬は、学習進捗の値そのものであってもよいし、世代交代前後の学習進捗の差分による評価値であってもよいし、世代交代前後の学習進捗の大小関係による評価値であってもよい。これらの報酬を用いることで、パラメータ最適化装置1は、進化的アルゴリズムのパラメータ選択の最適性を高めることができる。
例えば、報酬生成部312は、下記式(2)に示すように、選択肢iの直近N回の評価値(適応度)を平均した値よりも、評価部214から取得した選択肢iによる次世代小集団の評価値が大きい場合に、報酬=1とする。これ以外であれば、報酬=0とする。報酬生成部312が生成した報酬は、制御学習部311に出力される。
平均(選択肢iの直近N回の評価)<選択肢iによる次世代小集団の評価 (2)
評価値記憶部32は、制御評価部31が算出した制御評価値を記憶する記憶部である。なお、評価値記憶部32は、選択部33および制御学習部311がアクセス可能なものであればよく、パラメータ最適化装置1の外部に設けられてもよい。
選択部33は、次世代小集団の生成に関する制御内容(以下、「行動」と記載する。)として、進化的アルゴリズム部2に設定するパラメータを選択するものである。
パラメータの選択には、例えば、softmax関数、ε-greedy法、UCB1アルゴリズム、UCB1-tuned、PM、あるいはAP等の各種方策が用いられる。
選択部33は、評価値記憶部32に記憶される制御評価値(選択肢の価値)に基づいて、次世代小集団の生成に用いられるパラメータを選択する。例えば、選択部33は、制御評価値である選択肢の価値を、下記式(3)に従って正規化する。下記式(3)は、正規化された価値が合計で1になるようにしたものである。
次に、選択部33は、正規化された価値が示す選択肢から、行動に関するパラメータに関する選択肢を、下記式(4)に従って選択する。
正規化された価値=選択肢の価値/SUM(選択肢の価値) (3)
行動=任意の方策(正規化された価値) (4)
次に、実施の形態1に係るパラメータ最適化方法について説明する。
実施の形態1に係るパラメータ最適化方法には、進化的アルゴリズムステップ、および最適化ステップが含まれる。進化的アルゴリズムステップでは、進化的アルゴリズム部2が、対象問題の世代ごとに設定された個体数よりも少ない数の次世代の個体群である次世代小集団を、次世代小集団の生成ごとに設定される、進化的アルゴリズムのパラメータを用いて生成し、生成した次世代小集団を評価する。最適化ステップでは、最適化部3が、次世代小集団の評価結果に基づいて次世代小集団の生成を学習し、この学習結果に基づいて次世代小集団の生成に用いられるパラメータを選択する。パラメータ最適化装置1が、この方法を実行することにより、進化的アルゴリズムのパラメータ選択の最適性の低下を抑えることができる。
図4は、実施の形態1に係るパラメータ最適化方法を示すフローチャートであり、上述したパラメータ最適化方法の詳細な流れを示している。図4におけるステップST1からステップST6までの処理のうち、ステップST4-1およびステップST4-2を除く一連の処理が、進化的アルゴリズムステップである。さらに、ステップST4-1およびステップST4-2が、最適化ステップである。
まず、次世代小集団生成部212は、初期集団として、ランダムに次世代小集団を生成する(ステップST1)。また、パラメータ設定部211は、最適化部3により選択されたパラメータを、次世代小集団生成部212に設定する(ステップST2)。
次世代小集団生成部212は、パラメータ設定部211により設定されたパラメータを用いて、初期集団に基づき、新たな次世代小集団を生成する(ステップST3)。
評価部214は、次世代小集団生成部212により生成された次世代小集団を評価し、評価情報を最適化部3に出力する(ステップST4)。
報酬生成部312は、評価部214から取得した評価情報を用いて、次世代小集団の評価に対する報酬を算出する。制御学習部311は、報酬およびパラメータを用いて学習を評価する(ステップST4-1)。
選択部33は、制御学習部311が算出した制御評価値に基づいて、次世代生成部21に設定するパラメータを選択する(ステップST4-2)。
ステップST2において、パラメータ設定部211は、最適化部3により選択されたパラメータを、次世代小集団生成部212に設定する。このようにしてステップST2からステップST4までの処理が繰り返し実行される。
生成終了判定部215は、次世代分の個体、すなわち、次世代小集団が規定数だけ生成されたか否かを判定する(ステップST5)。ここで、次世代小集団の生成数が規定数に満たない場合(ステップST5;NO)、ステップST2からステップST4までの一連の処理が実行される。
次世代小集団の生成数が規定の数に達した場合(ステップST5;YES)、世代交代終了判定部22は、最終世代まで処理が完了したか否かを判定する(ステップST6)。最終世代まで処理が完了していない場合(ステップST6;NO)、進化的アルゴリズム部2は、世代交代を行って、ステップST2からステップST5までの一連の処理を実行する。また、最終世代まで処理が完了した場合(ステップST6;YES)、パラメータ最適化装置1は、図4の処理を終了する。
次に、最適化問題に対するパラメータ最適化装置1の有効性について説明する。
図5は、巡回セールスマン問題の一例を示す概要図である。図5に示す問題は、始点(start)から、18都市を巡回して終点(goal)に至るまでの最短経路を探索するものである。また、図6は、図5の問題に対する進化的アルゴリズムのパラメータに含まれる突然変異率の最適化のシミュレーション結果を示すグラフである。図6における結果は、パラメータ最適化装置1およびパラメータ最適化装置100が、図5に示す問題の個体生成を1500世代実施した場合に得られる結果である。
図6において、Amaxは、パラメータ最適化装置1による各世代の個体生成で得られた突然変異率の適応度の最大値である。Aminは、パラメータ最適化装置1による各世代の個体生成で得られた突然変異率の適応度の最小値である。Aaveは、パラメータ最適化装置1による各世代の個体生成で得られた突然変異率の適応度の最小値から最大値までの間に含まれる適応度の平均値である。
Bmaxは、パラメータ最適化装置100による各世代の個体生成で得られた突然変異率の適応度の最大値である。Bminは、パラメータ最適化装置100による各世代の個体生成で得られた突然変異率の適応度の最小値である。Baveは、パラメータ最適化装置100による各世代の個体生成で得られた突然変異率の適応度の最小値から最大値までの間に含まれる適応度の平均値である。
図6に示すように、Aaveは、500世代程度で、Baveとの間に差分Δaveが生じている。このように、パラメータ最適化装置1では、世代が比較的早い段階で適応度が向上している。また、Aminは、500世代程度で、Bminとの間に差分Δminが生じている。しかしながら、パラメータ最適化装置1は、世代が比較的早い段階で適応度の最小値が低くなっている。これにより、シミュレーション結果全体をみると、パラメータ最適化装置1は、安定した学習を行えていることがわかる。
次に、パラメータ最適化装置1の機能を実現するハードウェア構成について説明する。
パラメータ最適化装置1が備える進化的アルゴリズム部2および最適化部3は、処理回路によって実現される。すなわち、パラメータ最適化装置1は、図4に示したステップST1からステップST6までの各処理を実行するための処理回路を備える。処理回路は、専用のハードウェアであってもよいが、メモリに記憶されたプログラムを実行するCPU(Central Processing Unit)であってもよい。
図7Aは、パラメータ最適化装置1の機能を実現するハードウェア構成を示すブロック図である。図7Bは、パラメータ最適化装置1の機能を実現するソフトウェアを実行するハードウェア構成を示すブロック図である。図7Aおよび図7Bにおいて、入力インタフェース200は、外部装置からパラメータ最適化装置1へ出力される、対象問題に関するデータを中継するインタフェースである。出力インタフェース201は、パラメータ最適化装置1から後段の外部装置へ出力される対象問題の最適解を中継するインタフェースである。
処理回路が、図7Aに示す専用のハードウェアの処理回路202である場合、処理回路202は、例えば、単一回路、複合回路、プログラム化したプロセッサ、並列プログラム化したプロセッサ、ASIC(Application Specific Integrated Circuit)、FPGA(Field-Programmable Gate Array)または、これらを組み合わせたものが該当する。パラメータ最適化装置1が備える、進化的アルゴリズム部2および最適化部3の機能を、別々の処理回路が実現してもよく、これらの機能をまとめて一つの処理回路が実現してもよい。
処理回路が図7Bに示すプロセッサ203である場合、パラメータ最適化装置1が備える、進化的アルゴリズム部2および最適化部3の機能は、ソフトウェア、ファームウェアまたはソフトウェアとファームウェアとの組み合わせにより実現される。なお、ソフトウェアまたはファームウェアは、プログラムとして記述されてメモリ204に記憶される。
プロセッサ203は、メモリ204に記憶されたプログラムを読み出して実行することにより、パラメータ最適化装置1が備える、進化的アルゴリズム部2および最適化部3の機能を実現する。例えば、パラメータ最適化装置1は、プロセッサ203により実行されるときに、図4に示したステップST1からステップST6の処理が結果的に実行されるプログラムを記憶するためのメモリ204を備える。これらのプログラムは、進化的アルゴリズム部2および最適化部3が行う処理の手順または方法を、コンピュータに実行させる。メモリ204は、コンピュータを、進化的アルゴリズム部2および最適化部3として機能させるためのプログラムが記憶されたコンピュータ可読記憶媒体であってもよい。
メモリ204は、例えば、RAM(Random Access Memory)、ROM(Read Only Memory)、フラッシュメモリ、EPROM(Erasable Programmable Read Only Memory)、EEPROM(Electrically-EPROM)などの不揮発性または揮発性の半導体メモリ、磁気ディスク、フレキシブルディスク、光ディスク、コンパクトディスク、ミニディスク、DVDなどが該当する。
パラメータ最適化装置1が備える、進化的アルゴリズム部2および最適化部3の機能の一部が専用のハードウェアで実現され、残りがソフトウェアまたはファームウェアで実現されてもよい。例えば、進化的アルゴリズム部2は、専用のハードウェアである処理回路202によってその機能が実現され、最適化部3は、プロセッサ203がメモリ204に記憶されたプログラムを読み出して実行することによりその機能が実現される。
このように、処理回路はハードウェア、ソフトウェア、ファームウェアまたはこれらの組み合わせによって上記機能を実現することができる。
以上のように、実施の形態1に係るパラメータ最適化装置1は、対象問題の世代ごとに設定された個体数よりも少ない数の次世代の個体群である次世代小集団を、次世代小集団の生成ごとに設定される、進化的アルゴリズムのパラメータを用いて生成し、次世代小集団を評価する進化的アルゴリズム部2と、次世代小集団の評価結果に基づいて次世代小集団の生成を学習し、学習結果に基づいて次世代小集団の生成に用いられるパラメータを選択する最適化部3とを備える。パラメータの選択とパラメータを用いて生成した次世代小集団の評価とを、次世代小集団の生成ごとに行い、次世代小集団の評価結果を小集団の生成過程にフィードバックする。これにより、世代ごとの環境の変動に対する適応性が向上するので、パラメータ最適化装置1は、進化的アルゴリズムのパラメータ選択の最適性を高めることができる。
実施の形態1に係るパラメータ最適化装置1において、進化的アルゴリズム部2は、最適化部3が選択したパラメータを用いて次世代小集団を生成する次世代小集団生成部212を備え、次世代小集団を評価し、評価結果を最適化部3に出力する評価部214を備える。次世代小集団生成部212および評価部214による各処理は、世代ごとの終了条件を満足するまで繰り返し実行され、終了条件を満足すると世代交代する。
これにより、パラメータ最適化装置1は、進化的アルゴリズムのパラメータ選択の最適性を高めることができる。
実施の形態1に係るパラメータ最適化装置1において、最適化部3は、評価情報に基づいて次世代小集団の評価に対する報酬を算出する報酬生成部312と、報酬とパラメータとを用いて次世代小集団の生成を強化学習する制御学習部311と、次世代小集団を生成する行動として進化的アルゴリズム部2に設定するパラメータを選択する選択部33と、を備える。これにより、パラメータ最適化装置1は、進化的アルゴリズムのパラメータ選択の最適性を高めることができる。
実施の形態1に係るパラメータ最適化装置1において、報酬は、次世代小集団の生成の学習進捗である。パラメータは、交叉率および突然変異率を含むパラメータ値、および、交叉演算子および突然変異演算子を含む演算子である。これにより、パラメータ最適化装置1は、進化的アルゴリズムのパラメータ選択の最適性を高めることができる。
実施の形態1に係るパラメータ最適化装置1において、学習進捗は、進化計算アルゴリズムにおける次世代小集団の適応度である。報酬は、学習進捗の値そのものであるか、世代交代前後の学習進捗の差分による評価値、または、世代交代前後の学習進捗の大小関係による評価値である。これにより、パラメータ最適化装置1は、進化的アルゴリズムのパラメータ選択の最適性を高めることができる。
実施の形態1に係るパラメータ最適化方法は、進化的アルゴリズム部2が、対象問題の世代ごとに設定された個体数よりも少ない数の次世代の個体群である次世代小集団を、次世代小集団の生成ごとに設定される、進化的アルゴリズムのパラメータを用いて生成し、生成した次世代小集団を評価するステップと、最適化部3が、次世代小集団の評価結果に基づいて次世代小集団の生成を学習し、学習結果に基づいて次世代小集団の生成に用いられるパラメータを選択するステップとを備える。パラメータ最適化装置1が、この方法を実行することにより、進化的アルゴリズムのパラメータ選択の最適性を高めることができる。
なお、実施の形態の任意の構成要素の変形もしくは実施の形態の任意の構成要素の省略が可能である。
本開示に係るパラメータ最適化装置は、例えば、様々な最適化問題に利用可能である。
1,100 パラメータ最適化装置、2,101 進化的アルゴリズム部、3,102 最適化部、21 次世代生成部、22 世代交代終了判定部、31 制御評価部、32 評価値記憶部、33 選択部、211 パラメータ設定部、212 次世代小集団生成部、213 個体記憶部、214 評価部、215 生成終了判定部、311 制御学習部、312 報酬生成部、2121 交叉部、2122 点変異部、2123 次世代小集団終了判定部。

Claims (10)

  1. 対象問題の世代ごとに設定された個体数よりも少ない数の次世代の個体群である小集団を、前記小集団の生成ごとに設定される、進化的アルゴリズムのパラメータを用いて生成し、生成した前記小集団を評価する進化的アルゴリズム部と、
    前記小集団の評価結果に基づいて学習し、学習結果に基づいて前記進化的アルゴリズム部が前記小集団の生成に用いる前記パラメータを選択する最適化部と、を備えた
    ことを特徴とするパラメータ最適化装置。
  2. 前記進化的アルゴリズム部は、
    前記最適化部が選択した前記パラメータを用いて前記小集団を生成する生成部と、
    前記小集団を評価し、評価結果を前記最適化部に出力する評価部と、を備え、
    前記生成部および前記評価部による各処理は、世代ごとの終了条件を満たすまで繰り返し実行され、前記終了条件を満たすと世代交代する
    ことを特徴とする請求項1に記載のパラメータ最適化装置。
  3. 前記最適化部は、
    前記評価結果に基づいて前記小集団の評価に対する報酬を算出する報酬生成部と、
    前記報酬と前記パラメータとを用いて前記小集団の生成を強化学習する制御学習部と、
    前記小集団を生成する行動として前記進化的アルゴリズム部に設定する前記パラメータを選択する選択部とを備える
    ことを特徴とする請求項2に記載のパラメータ最適化装置。
  4. 前記報酬は、前記小集団の生成の学習進捗であり、
    前記パラメータは、交叉率および突然変異率を含むパラメータ値、および、交叉演算子および突然変異演算子を含む演算子である
    ことを特徴とする請求項3に記載のパラメータ最適化装置。
  5. 前記学習進捗は、進化計算アルゴリズムにおける前記小集団の適応度であり、
    前記報酬は、前記学習進捗の値、世代交代前後の前記学習進捗の差分による評価値、または、世代交代前後の前記学習進捗の大小関係による評価値である
    ことを特徴とする請求項4に記載のパラメータ最適化装置。
  6. パラメータ最適化装置によるパラメータ最適化方法であって、
    進化的アルゴリズム部が、対象問題の世代ごとに設定された個体数よりも少ない数の次世代の個体群である小集団を、前記小集団の生成ごとに設定される、進化的アルゴリズムのパラメータを用いて生成し、生成した前記小集団を評価するステップと、
    最適化部が、前記小集団の評価結果に基づいて学習し、学習結果に基づいて前記進化的アルゴリズム部が前記小集団の生成に用いる前記パラメータを選択するステップと、を備えた
    ことを特徴とするパラメータ最適化方法。
  7. コンピュータに、
    対象問題の世代ごとに設定された個体数よりも少ない数の次世代の個体群である小集団を、前記小集団の生成ごとに設定される、進化的アルゴリズムのパラメータを用いて生成し、生成した前記小集団を評価する処理と、
    前記小集団の評価結果に基づいて学習し、学習結果に基づいて、前記小集団の生成に用いる前記パラメータを選択する処理とを実行させるためのプログラム。
  8. 第1世代に含まれる第1小集団の評価を利用して設定された、進化的アルゴリズムのパラメータである第1パラメータに基づいて、前記第1世代より後の世代である第2世代に含まれる第2小集団を生成する生成部と、
    生成された、前記第2小集団を評価する評価部と、
    前記第2小集団の評価を利用した学習結果に基づいて、前記第2世代に含まれる第3小集団の生成に利用する、前記進化的アルゴリズムのパラメータである第2パラメータを選択する選択部とを備えた
    ことを特徴とする装置。
  9. 第1世代に含まれる第1小集団の評価を利用して設定された、進化的アルゴリズムのパラメータである第1パラメータに基づいて、前記第1世代より後の世代である第2世代に含まれる第2小集団を生成するステップと、
    生成された、前記第2小集団を評価するステップと、
    前記第2小集団の評価を利用した学習結果に基づいて、前記第2世代に含まれる第3小集団の生成に利用する、前記進化的アルゴリズムのパラメータである第2パラメータを選択するステップとを備えた
    ことを特徴とする方法。
  10. コンピュータに、
    第1世代に含まれる第1小集団の評価を利用して設定された、進化的アルゴリズムのパラメータである第1パラメータに基づいて、前記第1世代より後の世代である第2世代に含まれる第2小集団を生成する処理と、
    生成された、前記第2小集団を評価する処理と、
    前記第2小集団の評価を利用した学習結果に基づいて、前記第2世代に含まれる第3小集団の生成に利用する、前記進化的アルゴリズムのパラメータである第2パラメータを選択する処理とを実行させるためのプログラム。
JP2023570348A 2023-07-05 2023-07-05 パラメータ最適化装置およびパラメータ最適化方法 Active JP7450833B1 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2023024852 2023-07-05

Publications (1)

Publication Number Publication Date
JP7450833B1 true JP7450833B1 (ja) 2024-03-15

Family

ID=90194688

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2023570348A Active JP7450833B1 (ja) 2023-07-05 2023-07-05 パラメータ最適化装置およびパラメータ最適化方法

Country Status (1)

Country Link
JP (1) JP7450833B1 (ja)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005222286A (ja) 2004-02-05 2005-08-18 Canon Inc 最適解探索方法および最適解探索装置
CN110989538A (zh) 2019-12-23 2020-04-10 北京化工大学 一种复杂生产过程闭环调度优化方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005222286A (ja) 2004-02-05 2005-08-18 Canon Inc 最適解探索方法および最適解探索装置
CN110989538A (zh) 2019-12-23 2020-04-10 北京化工大学 一种复杂生产过程闭环调度优化方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
SAKURAI, Y. et al.,A Method to Control Parameters of Evolutionary Algorithms by using Reinforcement Learning,2010 Sixth International Conference on Signal-Image Technology and Internet Based Systems,2011年02月17日,pp. 74-79,[online], [retrieved on 2024-01-30], Retrieved from <https://ieeexplore.ieee.org/document/5714532>,<doi: 10.1109/ SITIS.2010.22>

Similar Documents

Publication Publication Date Title
US20220210028A1 (en) Cloud software service resource allocation method based on qos model self-correctio
US8700548B2 (en) Optimization technique using evolutionary algorithms
Papageorgiou et al. Fuzzy cognitive maps
JP6646234B2 (ja) プログラム生成装置、プログラム生成方法および生成プログラム
Moraglio et al. Geometric generalisation of surrogate model based optimisation to combinatorial spaces
CN109271320B (zh) 一种上位多目标测试用例优先级排序方法
CN113128655B (zh) 基于多种群遗传算法工控入侵检测分类器参数选择方法
CN110991724A (zh) 用于预测风景区客流量的方法、系统及存储介质
JP6902487B2 (ja) 機械学習システム
EP3739473B1 (en) Optimization device and method of controlling optimization device
JP7137074B2 (ja) 最適化計算方法、最適化計算装置及び最適化計算プログラム
Idais et al. Optimal knots allocation in the cubic and bicubic spline interpolation problems
CN111860939A (zh) 基于注意力机制和rclstm网络的客流量预测方法及系统
Lu et al. Adaptive online data-driven closed-loop parameter control strategy for swarm intelligence algorithm
JP7450833B1 (ja) パラメータ最適化装置およびパラメータ最適化方法
Siwik et al. Elitist evolutionary multi-agent system in solving noisy multi-objective optimization problems
CN114154615A (zh) 基于硬件性能的神经架构搜索方法和设备
KR102559605B1 (ko) 함수 최적화 방법 및 장치
Luo et al. Sampling-based adaptive bounding evolutionary algorithm for continuous optimization problems
US7139986B2 (en) Systems and methods for determining costs associated with a selected objective
CN113094945B (zh) 一种sa-beso联合拓扑优化方法
Li et al. Covariance and crossover matrix guided differential evolution for global numerical optimization
Chen et al. Using learning classifier systems to learn stochastic decision policies
WO2023155259A1 (zh) 一种缓冲器插入方法、装置、存储介质及电子设备
US20230259682A1 (en) Buffer insertion method and device, storage medium, and electronic device

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20231114

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20231114

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20231114

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20240206

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20240305

R150 Certificate of patent or registration of utility model

Ref document number: 7450833

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150