JP2022118555A - 最適化装置、最適化方法、及び最適化プログラム - Google Patents

最適化装置、最適化方法、及び最適化プログラム Download PDF

Info

Publication number
JP2022118555A
JP2022118555A JP2021015149A JP2021015149A JP2022118555A JP 2022118555 A JP2022118555 A JP 2022118555A JP 2021015149 A JP2021015149 A JP 2021015149A JP 2021015149 A JP2021015149 A JP 2021015149A JP 2022118555 A JP2022118555 A JP 2022118555A
Authority
JP
Japan
Prior art keywords
solution
solutions
point search
functions
objective
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.)
Pending
Application number
JP2021015149A
Other languages
English (en)
Inventor
大地 島田
Daichi Shimada
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 JP2021015149A priority Critical patent/JP2022118555A/ja
Priority to US17/540,283 priority patent/US20220245204A1/en
Priority to EP21212460.6A priority patent/EP4036813A1/en
Priority to CN202111582819.XA priority patent/CN114841051A/zh
Publication of JP2022118555A publication Critical patent/JP2022118555A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/20Design optimisation, verification or simulation
    • G06F30/27Design optimisation, verification or simulation using machine learning, e.g. artificial intelligence, neural networks, support vector machines [SVM] or training a model
    • 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
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/01Dynamic search techniques; Heuristics; Dynamic trees; Branch-and-bound
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2111/00Details relating to CAD techniques
    • G06F2111/04Constraint-based CAD
    • 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
    • G06F2111/00Details relating to CAD techniques
    • G06F2111/08Probabilistic or stochastic CAD
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2119/00Details relating to the type or aim of the analysis or the optimisation
    • G06F2119/08Thermal analysis or thermal optimisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/004Artificial life, i.e. computing arrangements simulating life
    • G06N3/006Artificial life, i.e. computing arrangements simulating life based on simulated virtual individual or collective life forms, e.g. social simulations or particle swarm optimisation [PSO]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Evolutionary Computation (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Software Systems (AREA)
  • Biophysics (AREA)
  • Artificial Intelligence (AREA)
  • Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Mathematical Physics (AREA)
  • Computational Linguistics (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Computing Systems (AREA)
  • Evolutionary Biology (AREA)
  • Genetics & Genomics (AREA)
  • Physiology (AREA)
  • Molecular Biology (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Medical Informatics (AREA)
  • Computer Hardware Design (AREA)
  • Geometry (AREA)
  • Biomedical Technology (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

【課題】多目的最適化問題に対して多様な解を効率的に生成できる手法を提供する。【解決手段】最適化装置は、複数の目的関数を取得し、取得された複数の目的関数を重み付け加算して単一関数を生成する処理を、複数の重み付けパターンに対して行うことにより複数個の単一関数を生成し、複数個の単一関数の各々に対して、アニーリングによる解探索処理を実行し、解探索処理により得られた第1の複数の解を取得するアニーリング計算部と、第1の複数の解に含まれる第1の解を初期状態として多点探索法を実行し、多点探索法のイタレーションのある段階において存在する第2の複数の解から、複数の目的関数に対する非劣解を少なくとも含む第2の解を選択して次のイタレーション段階に残していくことにより、パレート解又はその近似解を求める多点探索計算部を含む。【選択図】図2

Description

本願開示は、最適化装置、最適化方法、及び最適化プログラムに関する。
実社会においてユーザが遭遇する最適化問題においては、一般的に、ある特定のユーザ要望即ちある特定の評価基準のみに基づいて最適解が定まるのではなく、他の評価基準を含む複数の評価基準のトレードオフに基づいて、ユーザにとっての最良の解を求めることが必要になる。例えば、何らかの作業をする際に、作業時間を短くしたいという要望と作業にかかるコストを低く抑えたいという要望との両方の要望を同時に最適に満たすことはできず、互いに競合する要望をうまく満たすような解を求めることが望まれる。このような複数の要望をそれぞれ定式化した複数の目的関数を、何らかの制約条件の下で最小化する問題を、多目的最適化問題という。
多目的最適化問題においては、全ての目的関数を最小化する解は存在しないので、1つの最適解をユーザに出力として提示するのではなく、複数の目的関数値が全体的に満足できる程度に小さくなる複数の解をユーザに出力として提示する。ユーザは提示された複数の解の中から、複数の要望が満たされている度合いを総合的に判断することにより、自分にとって最良の解を選択することができる。
この際、ユーザに提示する複数の出力解としては、複数の要望に対して偏り無く分布した多様な解であることが好ましい。即ち、少なくとも1つの目的関数に対して満足できる値を有する解が、複数の要望即ち複数の目的関数に対して満遍なく得られていることが好ましい。またそのような複数の解を短時間で効率的に生成することが好ましい。
特開2002-302257号公報 特開平11-143938号公報
以上を鑑みると、多目的最適化問題に対して多様な解を効率的に生成できる手法が望まれる。
最適化装置は、複数の目的関数を取得し、取得された前記複数の目的関数を重み付け加算して単一関数を生成する処理を、複数の重み付けパターンに対して行うことにより複数個の単一関数を生成し、前記複数個の単一関数の各々に対して、アニーリングによる解探索処理を実行し、前記解探索処理により得られた第1の複数の解を取得するアニーリング計算部と、前記第1の複数の解に含まれる第1の解を初期状態として多点探索法を実行し、前記多点探索法のイタレーションのある段階において存在する第2の複数の解から、前記複数の目的関数に対する非劣解を少なくとも含む第2の解を選択して次のイタレーション段階に残していくことにより、パレート解又はその近似解を求める多点探索計算部を含む。
少なくとも1つの実施例によれば、多目的最適化問題に対して多様な解を効率的に生成できる。
最適化装置のハードウェア構成の一例を示す図である。 最適化装置の機能構成の一例を示す図である。 最適化方法の手順の一例を示すフローチャートである。 複数の単一目的関数を最小化するよう最適化処理を実行した場合に得られる解を模式的に示す図である。 シミュレーテッドアニーリングにおける温度変化パターンの一例を示す図である。 シミュレーテッドアニーリングにおける温度変化パターンの別の一例を示す図である。 シミュレーテッドアニーリングにおける温度変化パターンの更に別の一例を示す図である。 初期解の分布を模式的に示す図である。 多点探索法による解の分布の変化を模式的に示す図である。 図3に示されるステップS10及びS11において実行される処理を詳細に示すフローチャートである。 パレートランクが上位の解を次世代に残していくことにより解が最適化されていく様子を模式的に示す図である。 多点探索法の終了判定条件の一例を模式的に示す図である。 多点探索法の終了判定条件の別の一例を模式的に示す図である。
以下に、本発明の実施例を添付の図面を用いて詳細に説明する。
図1は、最適化装置のハードウェア構成の一例を示す図である。図1に示す最適化装置は、CPU11、表示部12、入力部13、ROM14、RAM15、HDD16、ネットワークインターフェース17、可搬型記憶媒体用ドライブ18、及びメタヒューリスティック計算部19を含む。
入力部13は、ユーザとのインターフェースを提供するものであり、最適化装置を操作するための各種コマンドや要求されたデータに対するユーザ応答等が入力される。表示部12は、最適化装置で処理された結果等をディスプレイ画面に表示すると共に、最適化装置を操作する際にユーザとの対話を可能にするために様々なデータ表示を行う。ネットワークインターフェース17は、周辺装置との通信又は遠隔地との通信を行なうためのものである。
図1に示される最適化装置はコンピュータであり、最適化方法は、最適化装置が実行可能なコンピュータプログラムとして提供される。このコンピュータプログラムは、可搬型記憶媒体用ドライブ18に装着可能な記憶媒体Mに記憶されており、記憶媒体Mから可搬型記憶媒体用ドライブ18を介して、RAM15或いはHDD16にロードされる。或いは、このコンピュータプログラムは、周辺装置又は遠隔地にある記憶媒体(図示せず)に記憶されており、この記憶媒体からネットワークインターフェース17を介して、RAM15或いはHDD16にロードされる。
入力部13を介してユーザからプログラム実行指示があると、CPU11は、記憶媒体M、周辺装置、遠隔地記憶媒体、或いはHDD16からプログラムをRAM15にロードする。CPU11は、RAM15の空き記憶空間をワークエリアとして使用して、RAM15にロードされたプログラムを実行し、適宜ユーザと対話しながら処理を進める。なおROM14は、最適化装置の基本動作を制御するための制御プログラムが格納されている。上記コンピュータプログラムを実行することにより、最適化装置が、多目的最適化問題に対して複数個の解を求める動作を実行する。
メタヒューリスティック計算部19は、メタヒューリスティックアルゴリズムを実行するように専用に設計された専用ハードウェアである。メタヒューリスティック計算部19は、例えばアニーリングによりイジング問題等に対する解探索を実行するイジングマシンを含んでよい。またメタヒューリスティック計算部19は、遺伝的アルゴリズム等の多点探索法を実行する専用ハードウェアを含んでよい。メタヒューリスティック計算部19は、アニーリングを実行するイジングマシン等のアニーリング用ハードウェアと多点探索法を実行する多点探索法用ハードウェアとの両方を備えていて良く、或いはそれらのうちの一方のみを備えていてもよい。なお専用ハードウェアであるメタヒューリスティック計算部19を設けることなく、汎用計算用のプロセッサであるCPU11が、メタヒューリスティック計算部として機能することにより、メタヒューリスティックアルゴリズムを実行してもよい。
図2は、最適化装置の機能構成の一例を示す図である。図2に示す最適化装置は、データ読込部20、アニーリング計算部21、多点探索計算部22、及びデータ出力部23を含む。アニーリング計算部21は、重み付けパターン生成部30、単一目的関数生成部31、イジングマシン実行部32、及び温度設定部33を含む。多点探索計算部22は、初期解設定部40、上位ランク抽出部41、パレートランク計算部42、多点探索部43、及び終了判定部44を含む。
データ読込部20及びデータ出力部23は、図1に示すCPU11により実現されてよい。アニーリング計算部21及び多点探索計算部22の各機能部は、CPU11又はメタヒューリスティック計算部19により実現されてよい。
なお各ボックスで示される各機能ブロックと他の機能ブロックとの境界は、機能的な境界を示すものであり、プログラムモジュールの境界に対応したり、制御論理的な分離等に対応したりするとは限らない。また、ある1つの機能ブロックが別の機能ブロックと組み合わさり1つの機能ブロックとして動作してもよいし、ある1つの機能ブロックが複数の機能ブロックに分割されて各々が協働して動作してもよい。
データ読込部20は、定式化された多目的最適化問題を規定するデータを、入力部13、ネットワークインターフェース17、又は可搬型記憶媒体用ドライブ18等を介して外部から読み込む。データ読込部20は、外部から読み込んだデータ又は既に外部から読み込まれてHDD16に格納されているデータを、多目的最適化問題を解く際にRAM15にロードしてよい。多目的最適化問題を規定するデータは、複数の目的関数の一つ一つを規定するQUBO(Quadratic Unconstrained Binary Optimization)形式の式、及び制約条件を規定するQUBO形式の式等を含んでよい。
問題を定式化する変数は例えば以下の列ベクトルとしてよい。
x=(x,x,x,・・・,xn (1)
ここでTは転置を表す。x,x,x,・・・,xnは設計変数であり、0又は1の値をとる。このとき最適化計算において最小化すべき複数N個(Nは正の整数)の目的関数f(x)乃至f(x)のうちでi番目(iは1以上且つN以下の正の整数)の目的関数f(x)は以下の式により表されてよい。
(x)=xx (2)
ここでAはi番目の目的関数f(x)に対応するi番目の行列であり、要素数がn×nの2次元行列である。この式(2)は、イジングモデルの式と等価であり、イジングモデルにおいて-1又は1の値をとる変数を0又は1の値をとる変数に置き換えたQUBO形式の式に相当する。
制約条件はxに関する式により規定されてよい。具体的には、x,x,x,・・・,xnに関する式の値について所定の条件が規定されてよく、例えば式の値がゼロに等しいという条件や、式の値が所定値より小さいという条件等が規定されてよい。
アニーリング計算部21は、多目的最適化問題に対してシミュレーテッドアニーリングや量子アニーリング等のアニーリングによる最適化処理を実行する。以下の実施例の説明においては、シミュレーテッドアニーリングにより最適化処理を実行する場合を例として用いて、アニーリング計算部21による処理を説明する。
最適化処理を実行するにあたりアニーリング計算部21は、複数の目的関数を重み付け加算して得られる単一関数を対象として、重み付けのパターンを変更することにより複数個の単一関数を生成する。単一関数とは、複数の目的関数を複合的に含む関数である。アニーリング計算部21は、このようにして生成された複数個の単一関数の一つ一つに対して、アニーリングによる最適化処理を実行することにより1つの最適解を求めると共に、最適解への途中に存在する複数の途中解を求める。なお本願において、アニーリング計算部21が求める最適解とは、厳密な意味の最適解ではなく、アニーリングにより見つかった最善解のことである。
単一関数は、以下のように表すことができる。
Σw(x) (3)
ここで総和記号Σは、iについて1からN迄の総和を計算する。wは目的関数f(x)に対する重み付けの係数である。
複数の目的関数f(x)乃至f(x)のうちで1つ又は複数の目的関数を重視した重み付けのパターン(即ちこれら目的関数に対するwを相対的に大きな値としたパターン)を用いることで、特定の目的関数を重視した1つの単一関数を生成することができる。こうして生成した単一関数に対してアニーリングによる最適化処理を実行することにより、上記特定の目的関数を重視した1つの最適解を求めると共に、最適解への途中に存在する複数の途中解を求めることができる。更に重み付けのパターンを順次変化させることにより、重視する1つ又は複数の目的関数を順次変化させて、様々の異なる単一関数を複数個生成できる。アニーリング計算部21は、これら生成した複数の単一関数の1つ1つに対して、アニーリングによる最適化処理を実行し、1つの最適解及び最適解に至る途中の複数の途中解を求める。このようにして得られた最適解は、異なる重み付けのパターンを適切に設定することにより、複数の要望に対して偏り無く分布した解、即ち少なくとも1つの目的関数に対して満足できる値を有した解が複数の目的関数に対して得られたものとすることができる。
但し、上記のようにしてアニーリングにより得られる最適解は、1つ又は複数の特定の目的関数を重視した場合の最適解であり、多様性が十分ではない。多様性を向上させるためには数多くの様々な重み付けのパターンについて最適解を求める必要があるが、重み付け係数をどのように設定するのかの設計が難しい。また目的関数の組み合わせの数に相当する数多くの重み付けのパターンについてアニーリングを実行したのでは、効率的な処理を実現することが難しい。そこで図2に示す最適化装置においては、アニーリングの最適解に至る複数の途中解に基づいて、多点探索法による解探索を実行する。
多点探索計算部22は、上記複数の途中解の少なくとも一部を初期状態として多点探索法を実行し、多点探索法のイタレーションのある段階において存在する複数解から、複数の目的関数に対する非劣解を少なくとも含む解を選択して次の段階に残していく。これにより多点探索計算部22は、複数の目的関数に対するパレート解又はその近似解を求める。ここでいう多点探索法とは、解を複数生成して、それらの中から好ましい解を優先的に選択し、選択した解を利用して、次の解を複数生成することを繰り返すことにより、目的解を導出する手法である。多点探索法の例としては、遺伝的アルゴリズム、散布探索法、及びアントコロニー法等が上げられる。以下の実施例の説明においては、遺伝的アルゴリズムを例として用いて、多点探索計算部22による処理を説明する。
非劣解及びパレート解とは、多目的最適化問題における解の優越関係により定義される。実行可能領域(制約条件を満たす領域)において、ある解xに対してx'が優越しているとは、全ての目的関数においてx'がxと等しいかより優れており(目的関数値が小さく)、且つ少なくとも1つの目的関数においてx'がxより優れている、と定義される。非劣解とは、着目した解集合において、自らに対して優越する解が存在しない解のことである。数式で表現すると、非劣解とは、下記を満たす優越解x'が存在しない解xである。
(x')≦f(x)∀i (4)
(x')<f(x)∃i (5)
またパレート解とは、実行可能領域に存在する全ての解の集合における非劣解として定義される。即ち、パレート解とは多目的最適化問題における複数の最善解であり、非劣解とは着目した解集合における複数の最善解である。なお非劣解集合が形成する面のことを非劣解フロントと呼び、パレート解集合が形成する面のことをパレートフロントと呼ぶ。
多点探索計算部22は、アニーリング計算部21により求められた最適解に至る複数の途中解を初期状態として、例えば遺伝的アルゴリズムを実行することにより、次世代の解を生成する。多点探索計算部22は、この次世代の解のうちで複数個の非劣解(即ち好ましい解)を優先的に選択し、選択した解を利用して、更に次の世代の解を複数個生成するとしいう動作を繰り返していく。これにより、各最適解の周囲に分布する比較的好条件の途中解を開始点として、多点探索法を実行することにより、特定の目的関数を重視することなくランダムに解を生成し、複数の目的関数に対する非劣解フロントがパレートフロントに近づいていくようにする。このようにして多点探索計算部22により得られたパレート解又はその近似解とアニーリング計算部21により得られた最適解とが、最終的な解として出力される。これにより、複数の要望に対して偏り無く分布した多様な解、即ち少なくとも1つの目的関数に対して満足できる値を有する解が複数の目的関数に対して満遍なく得られたものを求めることができる。
前述のようにアニーリング計算部21が生成した最適解は、多点探索計算部22において、各世代の解を求めていく際には用いなくてよい。これら最適解は、多点探索計算部22において多点探索法を終了するか否かを判定する際に用いられる。即ち、多点探索計算部22は、多点探索法により求めた解と上記最適解との比較に基づいて多点探索法の終了判定を行う。これにより、多点探索計算部22は、非劣解フロントが最適解に十分に近づいたか否か、即ち非劣解フロントがパレートフロントに十分に近づいたか否かを判断して、解を求める動作を終了させることができる。これにより、少なくとも1つの目的関数に対して最適解に近い十分に満足できる値を有する解が複数の目的関数に対して満遍なく得られたものを求めることができる。
図3は、最適化方法の手順の一例を示すフローチャートである。図2に示す最適化装置が図3に示す最適化方法を実行する。
なお図3及び以降の図において、フローチャートに記載された各ステップの実行順序は一例にすぎず、本願の意図する技術範囲が、記載された実行順番に限定されるものではない。例えば、Aステップの次にBステップが実行されるように本願に説明されていたとしても、Aステップの次にBステップを実行することが可能なだけでなく、Bステップの次にAステップを実行することが、物理的且つ論理的に可能である場合がある。この場合、どちらの順番でステップを実行しても、当該フローチャートの処理に影響する全ての結果が同一であるならば、本願に開示の技術の目的のためには、Bステップの次にAステップが実行されてもよいことは自明である。Aステップの次にBステップが実行されるように本願に説明されていたとしても、上記のような自明な場合を本願の意図する技術範囲から除外することを意図するものではなく、そのような自明な場合は、当然に本願の意図する技術範囲内に属する。
ステップS1において、各種初期値が設定される。例えばアニーリング計算部21が、空の配列として重み付けパターンリストWeightPatternListを初期化し、空の集合として最適解集合Sbest及び途中解集合Ssampleを用意する。また例えば多点探索計算部22が、多点探索法の上限イタレーション回数をLoopNumに設定すると共に、イタレーション回数を示すカウント値LoopCounterを初期値ゼロに設定する。上限イタレーション回数は、例えばデータ読込部20が外部から読み込んだ数でもよいし、或いは事前に決められた所定の数であってもよい。多点探索計算部22は更に、空の集合として親集合Sparent及び子集合Schildを用意する。
ステップS2において、アニーリング計算部21の重み付けパターン生成部30が複数の重み付けパターンを生成し、生成した複数の重み付けパターンをWeightPatternListに格納する。重み付けパターン生成部30は、例えば複数の目的関数から1つの目的関数を選択し、当該1つの目的関数に対する重み付けを非ゼロ(例えば1)とし且つ当該1つの目的関数以外に対する重み付けをゼロとした重み付けパターンを生成する動作を実行してよい。重み付けパターン生成部30は、複数N個の目的関数の全てについて上記動作を実行することにより、複数N個の重み付けパターンを生成してよい。また重み付けパターン生成部30は、例えば複数の目的関数から2つの目的関数をペアとして選択して、当該2つの目的関数に対する重み付けを非ゼロ(例えば1)とし且つ当該2つの目的関数以外に対する重み付けをゼロとした重み付けパターンを生成してよい。重み付けパターン生成部30は、複数の目的関数から選択可能な全てのペアについてこの動作を実行することにより、複数個(N×(N-1)/2)の重み付けパターンを生成してよい。
ステップS3において、アニーリング計算部21の単一目的関数生成部31は、WeightPatternListが空であるか否かを判定する。当該リストが空でない場合、即ちアニーリングを実行すべき重み付けパターンが存在する場合、処理はステップS4に進む。
ステップS4において、単一目的関数生成部31は、WeightPatternListの先頭に格納されている重み付けパターンを取り出す。これにより当該重み付けパターンはWeightPatternListから削除される。単一目的関数生成部31は、読み出した重み付けパターンをWeightPatternに格納する。
ステップS5において、単一目的関数生成部31は、WeightPatternに格納される重み付けパターンに従って単一目的関数を作成し、作成した単一目的関数をF(x)に設定する。例えば重み付けパターンが、複数の目的関数から1つの目的関数f(x)を選択し、当該1つの目的関数に対する重み付けを1とし且つ当該1つの目的関数以外に対する重み付けをゼロとしたパターンであれば、作成した単一目的関数はf(x)そのものとなる。また例えば重み付けパターンが、複数の目的関数から2つの目的関数f(x)及びf(x)をペアとして選択して、当該2つの目的関数に対する重み付けを1とし且つ当該2つの目的関数以外に対する重み付けをゼロとしたパターンであるとする。この場合、作成した単一目的関数はf(x)+f(x)となる。
ステップS6において、アニーリング計算部21のイジングマシン実行部32が、単一目的関数F(x)に対して、設定温度を変化させながらシミュレーテッドアニーリングによる最適化処理を実行する。イジングマシン実行部32は、最適化処理により得られた1つの最適解を最適解集合Sbestに追加する。またイジングマシン実行部32は、最適解に至る途中で得られた複数の途中解を途中解集合Ssampleに追加する。なおこれらの最適解及び途中解は全て、与えられた制約条件を満たす解であるとする。
シミュレーテッドアニーリングでは、前述の変数列ベクトルxを1つの状態として扱ってよい。現在の状態の目的関数値(Eとする)を計算し、更に現在の状態から僅かに変化(例えば1ビット反転)した次の状態の目的関数値E'を計算し、更に両者の差分ΔE(=E'-E)を計算する。例えばxの確率分布としてボルツマン分布を想定し、メトロポリス法を用いる場合、次の状態に遷移する確率Pを以下の式で定めることができる。
P=min[1,exp(-βΔE)] (6)
ここでβは逆温度(絶対温度の逆数)である。関数min[1,x]は値1と値xとのいずれか小さい方の関数値を有する。上式によれば、ΔE≦0のときに確率1で次の状態に遷移し、0<ΔEのときに確率exp(-βΔE)で次の状態に遷移する。なお前述のように設定温度を変化させる場合には、この逆温度βを変化させればよい。
状態を遷移させながら、充分に遅い速度で温度を低くしていくことにより、理論的には最小の目的関数値を有する最適解に状態を収束させることができる。なおメトロポリス法は限定的でない一例であり、例えばギブス・サンプリング法等の他の遷移制御アルゴリズムを用いてもよい。
図4は、複数の単一目的関数を最小化するよう最適化処理を実行した場合に得られる解を模式的に示す図である。図4において、第1の目的関数f(x)の値を横軸に示し、第2の目的関数f(x)の値を縦軸に示してある。図4は、目的関数が2個しかない場合を示した図であると考えてもよいし、3個以上の目的関数が存在する多目的最適化問題において着目した2個の目的関数に関する座標軸のみを示した図であると考えてもよい。
単一目的関数がf(x)である場合にアニーリングにより最適解を求めると解B1が得られる。単一目的関数がf(x)である場合にアニーリングにより最適解を求めると解B3が得られる。更に単一目的関数がf(x)+f(x)である場合にアニーリングにより最適解を求めると解B2が得られる。解B1は目的関数f(x)のみに着目して最適化を行った解であり、解B3は目的関数f(x)のみに着目して最適化を行った解であり、解B2は目的関数f(x)及びf(x)のみに均等に着目して最適化を行った解である。
このように複数の目的関数から1つの目的関数を選択し、当該1つの目的関数に対する重み付けのみを非ゼロとすることにより、当該1つの目的関数のみに着目した最適解を求めてよい。これを複数の目的関数の全てに対して実行することにより、与えられた複数の目的関数の各々に対して、当該1つの目的関数のみに着目した最適解を得ることができる。従って、多目的最適化問題において望まれる多様な解のうちで、各目的関数に対応する位置に存在する最適解(例えばB1及びB3)を容易に作成することができる。
また複数の目的関数から2つの目的関数をペアとして選択して、当該2つの目的関数に対する重み付けのみを非ゼロとすることにより、当該2つの目的関数の各々に個別に着目した場合に得られる最適解に対して、その中間位置に存在する最適解を求めてよい。これを複数の目的関数から選択可能な全てのペアについて実行することにより、与えられた複数の目的関数から選択可能な各々のペアに対して、当該ペアを構成する2つの目的関数に対応する位置の間に位置する最適解を得ることができる。従って、多目的最適化問題において望まれる多様な解のうちで、2つの目的関数に対応する位置の間に位置する最適解(例えばB2)を容易に作成することができる。
解B1、B2、及びB3を滑らかにつないだ曲線PFは、パレートフロントに近似的に一致する線である。このようにして、パレートフロント上又はその近傍に位置する複数の最適解を得ることができるが、解B1と解B2との間及び解B2と解B3との間においても、パレートフロント上又はその近傍に位置する解を求めることが、解に多様性を与えるためには好ましい。図3に示す最適化方法では、以降のステップにおいて、途中解に基づいて多点探索法を実行することにより、多様な解を一括的に求めることができる。
なおシミュレーテッドアニーリングにより最適化処理を実行して途中解を求める際には、前述のように設定温度を適宜変化させる。具体的には、アニーリング計算部21の温度設定部33が温度変化パターンを設定し、イジングマシン実行部32が当該温度変化パターンに従ってシミュレーテッドアニーリングを実行してよい。このようにシミュレーテッドアニーリングにおける設定温度を変化させながら複数の途中解を求めることにより、種々の異なる温度条件における解を途中解として得ることが可能となり、途中解の多様性を担保することができる。
図5は、シミュレーテッドアニーリングにおける温度変化パターンの一例を示す図である。図5において、横軸はシミュレーテッドアニーリングにおけるイタレーション回数であり、縦軸は設定温度である。図5に示される温度変化パターンの例では、最高温度から連続的に温度を低下させていき、所定の最低温度に達すると最高温度に戻し、再度最高温度から連続的に温度を低下させていく、という動作を複数回繰り返す。このように温度変化させる場合には、例えば複数回訪れる最低温度において求められた複数個の解のうちで、最も単一目的関数値が小さくなるものを最適解としてよい。最適解を求めるタイミングはこれに限られるものではなく、例えば最後の最低温度において得られた解を最適解としてもよい。また例えばイタレーションを所定回数(例えば1000回)実行する毎に、その時点で得られた解を途中解としてよい。温度が比較的低い状態で得られた解を途中解とすることが好ましいが、これに限定されるものではない。
図6は、シミュレーテッドアニーリングにおける温度変化パターンの別の一例を示す図である。図6に示される温度変化パターンの例では、最高温度から段階的に温度を低下させていく。このように温度変化させる場合には、例えばイタレーションの最後において得られた解を最適解としてよい。また例えばイタレーションを所定回数(例えば1000回)実行する毎に、その時点で得られた解を途中解としてよい。
図7は、シミュレーテッドアニーリングにおける温度変化パターンの更に別の一例を示す図である。図7に示される温度変化パターンの例では、各々がシミュレーテッドアニーリングを実行する複数のイジングマシンM1乃至M4を用意して、複数のイジングマシンをそれぞれ固有の設定温度で動作させる。各イジングマシンはそれぞれ固定の設定温度で動作するが、複数のイジングマシン間で異なる温度状態でのシミュレーテッドアニーリングを実現することにより、温度変化と同等の状態を実現することができる。なお複数のイジングマシンM1乃至M4間で、例えば所定のイタレーション回数毎に設定温度を入れ替えることにより、各イジングマシンにおいて段階的に温度変化が起こるようにしてもよい。
図7に示すように温度変化させる場合には、例えば各イジングマシンにおいて全イタレーション行程に亘り単一目的関数値が最も小さくなる解を求め、複数のイジングマシン間で単一目的関数値が最も小さくなる1つの解を最適解としてよい。また例えば各イジングマシンにおいて、イタレーションを所定回数(例えば1000回)実行する毎に、その時点で得られた解を途中解としてよい。
図3に戻り、ステップS6の後に処理ステップS3に戻り以降の処理を繰り返す。ステップS3において、WeightPatternListが空である場合、即ち全ての重み付けパターンに対して最適化処理が終了した場合、処理はステップS7に進む。
ステップS7において、多点探索計算部22の初期解設定部40が初期解集合Sinitを生成する。具体的には、パレートランク計算部42が途中解集合Ssampleの全ての途中解に対してパレートランクを計算する。本実施例において、パレートランクは以下のように定義されてよい。
ランク1:解集合における全ての非劣解
ランクk:解集合からランクk-1までの解を除いた集合における非劣解
更に上位ランク抽出部41が、途中解のうちでパレートランクが相対的に高い途中解を抽出する。初期解設定部40は、上位ランク抽出部41により抽出された途中解を初期解集合Sinitに格納する。以降の処理において、初期解集合Sinitに格納される初期解を初期状態として多点探索法が実行される。
図8は、初期解の分布を模式的に示す図である。図8においては図4と同様に、第1の目的関数f(x)の値を横軸に示し、第2の目的関数f(x)の値を縦軸に示してある。黒丸で示す解B1乃至B3は図4に示した最適解である。斜線でハッチングした丸で示す解61及び白丸で示す解62(何れも1つのみに代表して参照番号を付してある)が、イジングマシン実行部32により求められた途中解である。解61及び62のうちでパレートランクが相対的に高いものが解61であり、例えばこれらの解61が、多点探索法の対象となる初期解となる。
図9は、多点探索法による解の分布の変化を模式的に示す図である。図8に示される解61に対して多点探索法を実行し、イタレーションのある段階において存在する複数解から、非劣解を少なくとも含む解を選択して次の段階に残していくことにより、図9に示されるような解61が得られることになる。最適解B1、B2、及びB3の各々から右方向及び上方向に延びる2本の矢印が示されているが、これら2本の矢印の間に挟まれて右上側の領域に位置している解に対して、最適解B1、B2、及びB3は優越している(式(4)及び式(5)参照)。解61のうちの幾つかは、これらの矢印の間に挟まれていない非劣解であり、更に最適解B1と最適解B2との間及び最適解B2と最適解B3との間においてパレートフロントPF(図4参照)の近傍に位置しており、多様な好ましい解となっている。以下に、このような多様な好ましい解を求める遺伝的アルゴリズムについて説明する。
ステップS8において、多点探索計算部22の例えば多点探索部43が、初期解集合Sinitに格納されている途中解を、親集合Sparentに格納する。
ステップS9において、多点探索部43は、カウント値LoopCounterがLoopNumより小さいか否かを判定する。判定結果がYESの場合には、処理はステップS10に進む。
ステップS10において、多点探索部43は、親集合Sparentに格納される要素を基にして、交叉や突然変異等の遺伝的操作を行うことにより新しい解を生成し、生成した解を暫定解集合Stempに格納する。更にステップS11において、多点探索部43は、暫定解集合Stempに格納される要素毎にその近傍にある制約充足解を取得し、当該制約充足解を子集合Schildに格納する。これらステップS10及びS11において実行される処理について、以下により詳細に説明する。
図10は、図3に示されるステップS10及びS11において実行される処理を詳細に示すフローチャートである。図10において、ステップS21乃至S25がステップS10における処理に相当し、ステップS26乃至S31がステップS11における処理に相当する。
ステップS21において、多点探索部43は、空の集合として暫定解集合Stempを用意する。ステップS22において、多点探索部43は、親集合Sparentの要素をそのまま暫定解集合Stempに追加する。これは次世代に残る解を選択する対象(即ち次世代に残る解の候補)として、親である解も選択対象として含めるためである。
ステップS23において、多点探索部43は、親集合Sparentから1つの要素を選択し、更に当該要素に対して目的関数値が一番近い要素を親集合Sparentから1つ選択し、これら2つの選択された要素を交叉させて2つの新たな解を生成する。多点探索部43は、生成した2つの新たな解を暫定解集合Stempに追加する。このようにして親集合Sparentから2つの要素を選択して新たな解を生成する動作を、多点探索部43は、親集合Sparentに属する全ての要素に対して実行する。本実施例において交叉の具体的操作内容は特定のものに限定されず、一点交叉、二点交叉、多点交叉、及び一様交叉等の何れであってもよい。またある要素に対して目的関数値が一番近い要素を特定する際には、複数の目的関数値に対応する座標において定義されるユークリッド距離等を用いて、2つの着目要素間の距離を判断すればよい。
ステップS24において、多点探索部43は、親集合Sparentから1つの要素を選択し、更に当該要素に対して目的関数値が一番遠い要素を親集合Sparentから1つ選択し、これら2つの選択された要素を交叉させて2つの新たな解を生成する。多点探索部43は、生成した2つの新たな解を暫定解集合Stempに追加する。このようにして親集合Sparentから2つの要素を選択して新たな解を生成する動作を、多点探索部43は、親集合Sparentに属する全ての要素に対して実行する。
ステップS25において、多点探索部43は、親集合Sparentから1つの要素をランダムに選択し、当該要素の設計変数値(即ち式(1)におけるx,x,x,・・・,xn)を例えば反転させることにより突然変異解を生成する。多点探索部43は、生成した突然変異解を暫定解集合Stempに追加する。突然変異を生成する操作はこの例に限られることなく、例えば一部の設計変数値を乱数で生成した0及び1の値に置き換える等の操作により突然変異を実現してもよい。
ステップS26において、多点探索部43は、空の集合として子集合Schildを用意する。ステップS27において、多点探索部43は、暫定解集合Stempから要素を1つ取り出し、取り出した要素をtargetとする。取り出された要素は暫定解集合Stempから削除される。
ステップS28において、多点探索部43は、targetを初期解として近似解法により制約充足問題を解くことにより、targetの近傍にある制約充足解又はその近似解を求める。多点探索部43は、求めた解をresultとする。なおtargetが最初から全ての制約条件を満たしている場合には、targetをそのままresultとすればよい。近似解法のアルゴリズムは特に限定されず、例えば欲張り法、局所探索法、タブーサーチ、又はアニーリング等であってよい。
ステップS29において、多点探索部43は、resultが全ての制約条件を満たしているか否かを判断する。満たしていない場合、処理はステップS27に戻りその後の処理を繰り返す。満たしている場合、処理はステップS30に進む。
ステップS30において、多点探索部43は、resultを子集合Schildに追加する。ステップS31において、多点探索部43は、暫定解集合Stempの全ての要素に対して上記処理を完了したか否か、即ち暫定解集合Stempが空になったか否かを判定する。判定結果がNOであれば、処理はステップS27に戻り以降の処理を実行する。判定結果がYESであれば、処理は終了する。
以上のようにして図3におけるステップS10及びS11の処理が終了すると、図3のステップS12において、パレートランク計算部42が、子集合Schildに格納されている全ての要素に対してパレートランクを計算し、上位ランク抽出部41が、計算されたパレートランクが相対的に上位である要素を解として抽出する。抽出する解は、例えばパレートランク1である要素のみであってもよいし、パレートランク1~K(Kは2以上の所定の整数)である要素のみであってもよい。その後多点探索部43が、抽出された上位パレートランクである解により、親集合Sparentを上書きする。これにより、ある世代において存在する複数解から、複数の目的関数に対する非劣解を少なくとも含む解を選択して次の世代に残していく際に、解を収束させる方向に向かう適切な解を選択することが可能となる。
図11は、パレートランクが上位の解を次世代に残していくことにより解が最適化されていく様子を模式的に示す図である。図11において、図4と同様に、第1の目的関数f(x)の値を各グラフの横軸に示し、第2の目的関数f(x)の値を各グラフの縦軸に示してある。ある世代において求められた子集合Schildのうちで例えばパレートランク1である解P1乃至P3を残して、次世代の親集合Sparentとする。更にこの親集合Sparentに基づいて求められた子集合Schildのうちで例えばパレートランク1である解P4乃至P6を残して、次世代の親集合Sparentとする。また更にこの親集合Sparentに基づいて求められた子集合Schildのうちで例えばパレートランク1である解P7乃至P9を残して、次世代の親集合Sparentとする。このような処理を繰り返していくことにより、世代を経るに従って解がパレートフロント(図4参照)に近づくように、世代毎に解が更新されていく。
図3に戻りステップS13において、終了判定部44は、親集合Sparent及び最適解集合Sbestに基づいて、次世代の親集合Sparentがパレート解に収束したか否か(即ちパレート解又はその近似解として満足できるものであるか否か)を判定する。即ち、終了判定部44は、親集合Sparentに格納される解と最適解集合Sbestに格納される解との比較に基づいて、遺伝的アルゴリズムを終了させるか否かに関する終了判定を行う。
図12は、多点探索法の終了判定条件の一例を模式的に示す図である。図12においては図4と同様に、第1の目的関数f(x)の値を横軸に示し、第2の目的関数f(x)の値を縦軸に示してある。黒丸で示す解B1乃至B3は図4に示した最適解である。斜線でハッチングした丸で示す解は、遺伝的アルゴリズムのある世代において求められた子集合Schildを構成する解である。図12の上段のグラフに示すように、子集合Schildに属する解から、上述のステップS12において、例えばパレートランク1の解P10乃至P13を抽出して次世代の親集合Sparentとする。なお図12の上段のグラフに示す例では、解P10乃至P13は、当該世代で求めた解(子集合Schild)と最適解B1乃至B3とを含む解集合における非劣解でもある。即ち、最適解B1乃至B3は解P10乃至P13に対して優越していない。
上記の親集合Sparentに属する解に基づいて前述のステップS10及びS11の処理を実行することにより、図12の下段のグラフに示すような子集合Schildを構成する解(斜線でハッチングした丸)が得られる。この子集合Schildを構成する解のうち、パレートランク1の解(即ち非劣解)はP10乃至P13であり、上段のグラフに示される直前の世代のパレートランク1の解P10乃至P13と同一である。即ち、ある世代で求めた解(子集合Schild)と最適解B1乃至B3とを含む解集合における非劣解集合が、次の世代においても変化せずに同一となっている。つまり世代交代により、より適切な解が生成されることはなかったことになる。
多点探索計算部22の終了判定部44は、図12に示されるように、多点探索法により求めた解と最適解とを含む解集合における非劣解集合が、イタレーションにより変化しなくなったときに多点探索法を終了させる、と判定してよい。このような終了判定をすることにより、最適解にさえ優越されない十分に満足できる値を有する解が十分に収束した段階で多点探索法を終了させることができる。
図13は、多点探索法の終了判定条件の別の一例を模式的に示す図である。図13における表記は図12と同様である。図13の上段のグラフに示すように、子集合Schildに属する解から、前述のステップS12において、例えばパレートランク1の解P20乃至P24を抽出して次世代の親集合Sparentとする。なお図13の上段のグラフに示す例では、解P20乃至P24は、当該世代で求めた解(子集合Schild)と最適解B1乃至B3とを含む解集合における非劣解でもある。即ち、最適解B1乃至B3は解P20乃至P24に対して優越していない。
上記の親集合Sparentに属する解に基づいて前述のステップS10及びS11の処理を実行することにより、図13の下段のグラフに示すような子集合Schildを構成する解(斜線でハッチングした丸)が得られる。この子集合Schildを構成する解のうち、パレートランク1の解(即ち非劣解)はP25乃至P29である。これら非劣解P25乃至P29の個数は5個であり、前世代における非劣解P20乃至P24の個数も5個である。即ち、着目世代における解(子集合Schild)と最適解B1乃至B3とを含む解集合における非劣解集合の個数が、ある世代と次の世代とで変化せずに同一となっている。つまり世代交代により、適切な解の個数は増加しなかったことになる。
多点探索計算部22の終了判定部44は、図13に示されるように、多点探索法により求めた解と最適解とを含む解集合における非劣解の個数が、イタレーションにより変化しなくなったときに多点探索法を終了させる、と判定してよい。このような終了判定をすることにより、最適解にさえ優越されない十分に満足できる値を有する解が十分な個数生成された段階で多点探索法を終了させることができる。
図3に戻りステップS14において、多点探索部43が、パレート解(又はその近似解)に収束したか否かを示す終了判定部44による終了判定結果に基づいて、処理を終了するか否かを判定する。パレート解(又はその近似解)に収束していない場合、処理はステップS9に戻り以降の処理を繰り返す。パレート解(又はその近似解)に収束した場合、処理はステップS15に進む。またステップS9においてカウント値LoopCounterがLoopNumより小さいない場合も、処理はステップS15に進む。
ステップS15において、データ出力部23が、親集合Sparent及び最適解集合Sbestを最適化方法が求めた解として出力する。以上で最適化方法の処理を終了する。
以上、本発明を実施例に基づいて説明したが、本発明は上記実施例に限定されるものではなく、特許請求の範囲に記載の範囲内で様々な変形が可能である。
例えば図3に示す最適化方法においては、ステップS10において交叉や突然変異等の遺伝的操作を実行し、ステップS11において制約条件を満たす解を見つけるようにしているが、このような方法に限定されない。例えば、ステップS10における交叉や突然変異等の遺伝的操作において、制約条件が破られないような工夫をしてもよい。或いは例えば、ステップS10において数多くの遺伝的操作を実行して、制約条件を満たすもののみを解として残すようにしてもよい。このような場合、ステップS11における制約充足解を取得する処理は不要となる。
11 CPU
12 表示部
13 入力部
14 ROM
15 RAM
16 HDD
17 ネットワークインターフェース
18 可搬型記憶媒体用ドライブ
19 メタヒューリスティック計算部
20 データ読込部
21 アニーリング計算部
22 多点探索計算部
23 データ出力部
30 重み付けパターン生成部
31 単一目的関数生成部
32 イジングマシン実行部
33 温度設定部
40 初期解設定部
41 上位ランク抽出部
42 パレートランク計算部
43 多点探索部
44 終了判定部

Claims (10)

  1. 複数の目的関数を取得し、取得された前記複数の目的関数を重み付け加算して単一関数を生成する処理を、複数の重み付けパターンに対して行うことにより複数個の単一関数を生成し、前記複数個の単一関数の各々に対して、アニーリングによる解探索処理を実行し、前記解探索処理により得られた第1の複数の解を取得するアニーリング計算部と、
    前記第1の複数の解に含まれる第1の解を初期状態として多点探索法を実行し、前記多点探索法のイタレーションのある段階において存在する第2の複数の解から、前記複数の目的関数に対する非劣解を少なくとも含む第2の解を選択して次のイタレーション段階に残していくことにより、パレート解又はその近似解を求める多点探索計算部、
    を含む最適化装置。
  2. 前記多点探索計算部は前記多点探索法により求めた解と前記解探索処理により得られた前記第1の複数の解のうちの最善解との比較に基づいて前記多点探索法の終了判定を行う、請求項1記載の最適化装置。
  3. 前記アニーリング計算部は、前記複数の目的関数から1つの目的関数を選択し、当該1つの目的関数に対する重み付けを非ゼロとし且つ当該1つの目的関数以外の目的関数に対する重み付けをゼロとした単一関数を生成する動作を、前記複数の目的関数の全てについて実行することにより、前記複数個の単一関数のうちの少なくとも一部を生成する、請求項1又は2記載の最適化装置。
  4. 前記アニーリング計算部は、前記複数の目的関数から2つの目的関数をペアとして選択して、当該2つの目的関数に対する重み付けを非ゼロとし且つ当該2つの目的関数以外の目的関数に対する重み付けをゼロとした単一関数を生成する動作を、前記複数の目的関数から選択可能な全てのペアについて実行することにより、前記複数個の単一関数のうちの一部を生成する、請求項3記載の最適化装置。
  5. 前記アニーリング計算部は前記アニーリングにおける設定温度を変化させながら前記第1の複数の解を求める、請求項1乃至4いずれか一項記載の最適化装置。
  6. 前記多点探索計算部は、イタレーションのある段階において存在する複数解からパレートランクが上位の解を選択して次のイタレーションの段階に残していく、請求項1乃至5いずれか一項記載の最適化装置。
  7. 前記多点探索計算部は、前記多点探索法により求めた解と前記最善解とを含む解集合における非劣解集合が、イタレーションにより変化しなくなったときに前記多点探索法を終了させる、請求項2記載の最適化装置。
  8. 前記多点探索計算部は、前記多点探索法により求めた解と前記最善解とを含む解集合における非劣解の個数が、イタレーションにより変化しなくなったときに前記多点探索法を終了させる、請求項2記載の最適化装置。
  9. 複数の目的関数を取得し、取得された前記複数の目的関数を重み付け加算して単一関数を生成する処理を、複数の重み付けパターンに対して行うことにより複数個の単一関数を生成し、
    前記複数個の単一関数の各々に対して、アニーリングによる解探索処理を実行し、前記解探索処理により得られた第1の複数の解を取得し、
    前記第1の複数の解に含まれる第1の解を初期状態として多点探索法を実行し、前記多点探索法のイタレーションのある段階において存在する第2の複数の解から、前記複数の目的関数に対する非劣解を少なくとも含む第2の解を選択して次のイタレーション段階に残していくことにより、パレート解又はその近似解を求める
    処理をコンピュータにより実行する、最適化方法。
  10. 複数の目的関数を取得し、取得された前記複数の目的関数を重み付け加算して単一関数を生成する処理を、複数の重み付けパターンに対して行うことにより複数個の単一関数を生成し、
    前記複数個の単一関数の各々に対して、アニーリングによる解探索処理を実行し、前記解探索処理により得られた第1の複数の解を取得し、
    前記第1の複数の解に含まれる第1の解を初期状態として多点探索法を実行し、前記多点探索法のイタレーションのある段階において存在する第2の複数の解から、前記複数の目的関数に対する非劣解を少なくとも含む第2の解を選択して次のイタレーション段階に残していくことにより、パレート解又はその近似解を求める
    処理をコンピュータに実行させる、最適化プログラム。
JP2021015149A 2021-02-02 2021-02-02 最適化装置、最適化方法、及び最適化プログラム Pending JP2022118555A (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2021015149A JP2022118555A (ja) 2021-02-02 2021-02-02 最適化装置、最適化方法、及び最適化プログラム
US17/540,283 US20220245204A1 (en) 2021-02-02 2021-12-02 Optimization apparatus, optimization method, and optimization program
EP21212460.6A EP4036813A1 (en) 2021-02-02 2021-12-06 Optimization apparatus, optimization method, and optimization program
CN202111582819.XA CN114841051A (zh) 2021-02-02 2021-12-22 优化装置、优化方法和优化程序

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2021015149A JP2022118555A (ja) 2021-02-02 2021-02-02 最適化装置、最適化方法、及び最適化プログラム

Publications (1)

Publication Number Publication Date
JP2022118555A true JP2022118555A (ja) 2022-08-15

Family

ID=78822160

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021015149A Pending JP2022118555A (ja) 2021-02-02 2021-02-02 最適化装置、最適化方法、及び最適化プログラム

Country Status (4)

Country Link
US (1) US20220245204A1 (ja)
EP (1) EP4036813A1 (ja)
JP (1) JP2022118555A (ja)
CN (1) CN114841051A (ja)

Family Cites Families (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
IL129498A0 (en) * 1996-11-04 2000-02-29 Dimensional Pharm Inc System method and computer program product for identifying chemical compounds having desired properties
JPH11143938A (ja) 1997-11-04 1999-05-28 Hitachi Ltd 資源割当計画作成方法及び資源割当計画作成システム
JP2002302257A (ja) 2001-04-05 2002-10-18 Mitsubishi Electric Corp 配送計画方法およびその方法をコンピュータに実行させるプログラム
US7469036B2 (en) * 2002-04-19 2008-12-23 Los Alamos National Security, Llc Analysis of macromolecules, ligands and macromolecule-ligand complexes
US20050207531A1 (en) * 2004-01-20 2005-09-22 University Of Florida Research Foundation, Inc. Radiation therapy system using interior-point methods and convex models for intensity modulated fluence map optimization
GB2412275B (en) * 2004-03-18 2006-04-12 Motorola Inc A method of selecting operational parameters in a communication network
US8874477B2 (en) * 2005-10-04 2014-10-28 Steven Mark Hoffberg Multifactorial optimization system and method
US8332188B2 (en) * 2006-03-03 2012-12-11 Solido Design Automation Inc. Modeling of systems using canonical form functions and symbolic regression
US8185421B2 (en) * 2006-03-29 2012-05-22 The Boeing Company Multi-objective optimization within a constraint management system
US7757595B2 (en) * 2006-04-14 2010-07-20 Raytheon Company Methods and apparatus for optimal resource allocation
EP2250595B1 (en) * 2008-02-12 2017-06-14 Codexis, Inc. Method of selecting an optimized diverse population of variants
US8768871B2 (en) * 2008-02-12 2014-07-01 Codexis, Inc. Method of generating an optimized, diverse population of variants
WO2011153639A2 (en) * 2010-06-07 2011-12-15 The University Of Manitoba Multi-objective radiation therapy optimization method
US20120310549A1 (en) * 2011-05-31 2012-12-06 Cambridge Crystallographic Data Centre Molecule alignment
US9057786B2 (en) * 2012-06-01 2015-06-16 Landauer, Inc. Algorithm for a wireless, motion and position-sensing, integrating radiation sensor for occupational and environmental dosimetry
US9063235B2 (en) * 2012-06-01 2015-06-23 Landauer, Inc. Algorithm for a wireless, motion and position-sensing, integrating radiation sensor for occupational and environmental dosimetry
US20150095253A1 (en) * 2013-04-21 2015-04-02 Daniel Kibum Lim Method and system for creating a list of organizations based on an individual's preferences and personal characteristics
US9928342B1 (en) * 2015-02-06 2018-03-27 Brain Trust Innovations I, Llc System, medical item including RFID chip, server and method for capturing medical data
US20180293331A1 (en) * 2017-04-05 2018-10-11 The Government Of The United States Of America, As Represented By The Secretary Of The Navy Design method for choosing spectral selectivity in multispectral and hyperspectral systems
IT201700056428A1 (it) * 2017-05-24 2018-11-24 Telespazio Spa Innovativo metodo di scheduling satellitare basato su algoritmi genetici e simulated annealing e relativo pianificatore di missione
US10798665B2 (en) * 2017-06-06 2020-10-06 Supply, Inc. Method and system for wireless power delivery
JP6921246B2 (ja) * 2017-06-06 2021-08-18 サプライ, インコーポレイテッドSupply, Inc. ワイヤレス電力供給方法およびシステム
US11138516B2 (en) * 2017-06-30 2021-10-05 Visa International Service Association GPU enhanced graph model build and scoring engine
US11693372B2 (en) * 2017-07-26 2023-07-04 The Trustees Of Dartmouth College Computer-implemented perceptual apparatus
US11544441B2 (en) * 2018-02-12 2023-01-03 Arizona Board Of Regents On Behalf Of The University Of Arizona Automated network-on-chip design
WO2019236865A1 (en) * 2018-06-06 2019-12-12 The Board Of Regents Of The University Of Oklahoma Enhancement of capacity and user quality of service (qos) in mobile cellular networks
US11307327B2 (en) * 2018-10-26 2022-04-19 Tata Consultancy Services Limited Method and system for online monitoring and optimization of mining and mineral processing operations
JP2022548841A (ja) * 2019-09-13 2022-11-22 ザ・ユニバーシティ・オブ・シカゴ タンパク質および他の配列定義された生体分子の進化的なデータ駆動型設計のための機械学習を使用した方法および装置
US20210241863A1 (en) * 2020-01-31 2021-08-05 Cytel Inc. Resource focused trial design platform
US12051488B2 (en) * 2020-01-31 2024-07-30 Cytel Inc. Interactive trial design platform
US11093833B1 (en) * 2020-02-17 2021-08-17 Sas Institute Inc. Multi-objective distributed hyperparameter tuning system
US11164669B1 (en) * 2020-12-29 2021-11-02 Kpn Innovations, Llc. Systems and methods for generating a viral alleviation program

Also Published As

Publication number Publication date
US20220245204A1 (en) 2022-08-04
EP4036813A1 (en) 2022-08-03
CN114841051A (zh) 2022-08-02

Similar Documents

Publication Publication Date Title
Kumar et al. Genetic algorithms
Rudolph Evolution strategies
Van der Lee et al. A tuning algorithm for model predictive controllers based on genetic algorithms and fuzzy decision making
TWI453628B (zh) 適應性調整虛擬按鍵尺寸的方法及其顯示裝置
US20040167721A1 (en) Optimal fitting parameter determining method and device, and optimal fitting parameter determining program
Köksoy et al. Robust design using Pareto type optimization: a genetic algorithm with arithmetic crossover
Elsayed et al. A surrogate-assisted differential evolution algorithm with dynamic parameters selection for solving expensive optimization problems
Li et al. Improved gene expression programming to solve the inverse problem for ordinary differential equations
CN108038538A (zh) 基于强化学习的多目标进化算法
US11550274B2 (en) Information processing apparatus and information processing method
Krömer et al. Differential evolution for the optimization of low-discrepancy generalized Halton sequences
Fogel et al. Revisiting evolutionary programming
CN110222816B (zh) 深度学习模型的建立方法、图像处理方法及装置
Woźniak Preferences in multi-objective evolutionary optimisation of electric motor speed control with hardware in the loop
Zhang et al. Evolutionary-based quantum architecture search
JP2022118555A (ja) 最適化装置、最適化方法、及び最適化プログラム
JP2020187453A (ja) 最適化装置および最適化装置の制御方法
JP2020106957A (ja) 最適化計算方法、最適化計算装置及び最適化計算プログラム
JP2007310860A (ja) 学習装置及び方法
Datta Efficient genetic algorithm on linear programming problem for fittest chromosomes
JP2021179778A (ja) 情報処理装置、求解方法、及び求解プログラム
CN114036069A (zh) 基于分解的权重向量自适应的多目标测试用例排序方法
KR20230012790A (ko) 함수 최적화 방법 및 장치
Huang et al. Elastic dnn inference with unpredictable exit in edge computing
Pericleous et al. Generic hybridization of MOEA/D with learning for permutation flow shop scheduling problem