Skip to Content
Pythonではじめるオープンエンドな進化的アルゴリズム ―発散型の機械学習による多様な解の探索
book

Pythonではじめるオープンエンドな進化的アルゴリズム ―発散型の機械学習による多様な解の探索

by 岡 瑞起, 齊藤 拓己, 嶋田 健志
October 2023
Intermediate to advanced content levelIntermediate to advanced
296 pages
4h 26m
Japanese
O'Reilly Japan, Inc.
Content preview from Pythonではじめるオープンエンドな進化的アルゴリズム ―発散型の機械学習による多様な解の探索

3章新規性探索アルゴリズム

これからいよいよ本書のメインテーマである「オープンエンド」なアルゴリズムの世界へ足を踏み入れます。まずは、目的を持たせずにコンピュータが発散的な探索を行う方法、新規性探索アルゴリズムについて説明します。

3.1 新規性を追求する目的のない探索

遺伝的探索アルゴリズムは、目的関数を基に個体の性能を評価し、集団が目的に向かって最適化される仕組みです。この「ものさし」となる目的関数に基づき、次世代に引き継がれるべき個体を選択します。これは、世代を経るごとに良い個体が選ばれていく、宝探しのような最適化のプロセスとも言えます。

しかし、これだけでは発散的な探索になっていません。宝探しゲームの参加者が皆、1つの最適解に収束していってしまいます。そこで登場するのが、「新規性探索アルゴリズム(Novelty Search)」です。このアルゴリズムは、宝探しの「目的」から解放され、新しい解を発見することに焦点を当てます。

進化的アルゴリズムの歴史を見ると、ほとんどのアルゴリズムが明確な目的を持って設計されていますが、新規性探索アルゴリズムは違います。目的のない探索を行うことで、従来では発見できなかった解を見つけ出すことができるのです。この独自のアプローチが、新規性探索アルゴリズムの魅力です。

3.2 目的関数に基づくアプローチの限界

目的関数を中心としたアプローチは多くの問題で効果的ですが、限界もあります。たとえば、難易度の高い迷路を解くタスクで、NEATアルゴリズムでは500世代進化させてもゴールに辿り着くことができる個体を進化させることはできませんでした。それに対して、新規性探索アルゴリズムを用いると、目的のない探索によってさまざまな経路を探索し、最終的にゴールへの経路を発見することができます。 ...

Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Start your free trial

You might also like

行動を変えるデザイン ―心理学と行動経済学をプロダクトデザインに活用する

行動を変えるデザイン ―心理学と行動経済学をプロダクトデザインに活用する

Stephen Wendel, 武山 政直, 相島 雅樹, 反中 望, 松村 草也

Publisher Resources

ISBN: 9784814400003Publisher Website