CMA-ESとは? わかりやすく解説

CMA-ES

出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2021/12/01 07:30 UTC 版)

ナビゲーションに移動 検索に移動

CMA-ES (共分散行列適応進化戦略、Covariance Matrix Adaptation Evolution Strategy の略) は、連続最適化問題アルゴリズム。目的関数 の最小値を探す。目的関数の導関数は不要。100次元程度[1]以下のノイズも乗っている目的関数を想定している。1996年に Nikolaus Hansen と Andreas Ostermeier が発表し[2][3]、その後も改良が続けられている。

概要

ES は進化戦略(evolution strategy)の事で、確率を使用したメタヒューリスティックス乱択アルゴリズム。多変量正規分布に基づいて新しいサンプルが選ばれる。分布は同じ平均値になるように設定され、突然変異は平均値を変えないように導入される。変数間の依存関係は共分散行列によって扱われる。

CMA は共分散行列適応(covariance matrix adaptation)の事で、分布に基づいて共分散行列を更新する。関数にノイズが多い時にこの手法は有効である。CMAは準ニュートン法の逆ヘッセ行列を使用する方法に似ていて、目的関数を二次関数で近似する。古典的な手法と比べると、目的関数に対する仮定がより少ない。

性能や特徴

多くの進化戦略と比較すると利用者が手作業で指定しないと正常に動作しないパラメータが少ない。

  • 4次元以下の場合、Nelder-Mead法の方が速い場合もあるが、Nelder-Mead法は最小値ではなく極小値に収束することが多い。
  • ノイズがなく、導関数も既知の場合、準ニュートン法のBFGS法やNEWUOAの方が10倍速い。

目的関数の定義域の各次元のスケーリングは0〜10などに線形変換指数関数などを使って揃える必要がある[4]。また、ライブラリには定義域が有界の時にその範囲内に収めるための関数も提供されている[5]

C++版の libcmaes では導関数を利用して高速化を図ることもできる[6]

n次元の時、反復1回分の計算量は だが、変数間の依存関係を調べることを諦め、共分散行列の更新を対角要素だけに限定することで計算量を に減らすことができる[7]。C言語版は diagonalCovarianceMatrix オプションで指定し、libcmaes はアルゴリズムを sepacmaes に指定することでその動作をする。

実装

以下のプログラミング言語での実装が公開されている[4]

関連項目

参照

外部リンク


CMA-ES

出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2021/07/18 03:28 UTC 版)

進化戦略」の記事における「CMA-ES」の解説

詳細は「CMA-ES」を参照 加速するために共分散行列使用したアルゴリズム

※この「CMA-ES」の解説は、「進化戦略」の解説の一部です。
「CMA-ES」を含む「進化戦略」の記事については、「進化戦略」の概要を参照ください。

ウィキペディア小見出し辞書の「CMA-ES」の項目はプログラムで機械的に意味や本文を生成しているため、不適切な項目が含まれていることもあります。ご了承くださいませ。 お問い合わせ


英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

辞書ショートカット

すべての辞書の索引

「CMA-ES」の関連用語

CMA-ESのお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



CMA-ESのページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

   
ウィキペディアウィキペディア
All text is available under the terms of the GNU Free Documentation License.
この記事は、ウィキペディアのCMA-ES (改訂履歴)の記事を複製、再配布したものにあたり、GNU Free Documentation Licenseというライセンスの下で提供されています。 Weblio辞書に掲載されているウィキペディアの記事も、全てGNU Free Documentation Licenseの元に提供されております。
ウィキペディアウィキペディア
Text is available under GNU Free Documentation License (GFDL).
Weblio辞書に掲載されている「ウィキペディア小見出し辞書」の記事は、Wikipediaの進化戦略 (改訂履歴)の記事を複製、再配布したものにあたり、GNU Free Documentation Licenseというライセンスの下で提供されています。

©2025 GRAS Group, Inc.RSS