SoftComputing lab.
 
Googleでサイト内検索:

Fuzzy Theory
ファジィ理論
Neural Network
ニューラルネットワーク
Chaos
カオス
Artifical Intelligence <AI>
人工知能
Genetic Algorithm <GA>
遺伝的アルゴリズム
お勧めの本

3.機械学習としてのGA


探索法としてのGAでは、問題がはっきりしていて、最適なパラメータの調整を行うといったような問題を対象として扱っていましたが、今回は機械学習の手法としてGAを用いる場合について扱ってみたいと思います。

機械学習というのは、コンピュータなどにより自動的に知識を獲得するためのさまざまな手法を言います。一般にこれは人工知能の分野で活発に研究がされていたのですが、GAに基づく機械学習GBML : Genetics-Based Machine Learning)として、GAの分野でも研究されています。

GAの基本的な流れは個体の評価をもとにして、優秀なものを選んでいくと言うものですがこれを、機械学習のための手法として用いるには少々工夫をする必要があります。GBMLには分類子システムというものがあり、これはさらにアプローチの仕方の違いからピッツアプローチミシガンアプローチに分けることができます。どちらの手法も強化学習に基づく方法で個体(手法により異なる)の評価を行っています。共通の特徴として、ある問題に対して、システムの持つIF-THENルール群(このルールのことを分類子という)を用いて、それに対して環境から何らかの評価を受けて、それをもとにして保持しているIF-THENルールに対して学習を行ってより良いルールを得るという形になっています。


GBMLの大まかな流れ
図3.1 GBMLの大まかな流れ

ピッツアプローチ(ピッツバーグアプローチ)Pitts(burg) approach

ピッツアプローチ(またはピッツバーグアプローチ)は、GAの手法を自然に利用した方法でIF-THENルールの集合を個体として、さまざまなタイプのIF-THENルールの組み合わせを個体群とすることで有効なルールの組み合わせを探します。交差や突然変異の方法としては、IF-THENルールの集合をルール単位で遺伝子座として扱い、GAオペレータを適用します。

したがって、個体数が増えるとそこに含まれるルール数は非常に大きなものとなってしまいます。しかし、GAの形態としては非常に自然で扱いやすいものとなります。個体の評価法としては実際にそれぞれのルール集合を適用した場合の評価を、各個体となるルール集合ごとに求める必要があるため、シミュレーション的に行うぶんには問題はありませんが、実際に機械などを動かしながら、評価を求めるという方法では大変な時間がかかり、現実的では無いため、リアルタイム学習は難しくなります。そのかわり、かなり複雑な問題に対するルール群の表現も可能となります。


ピッツアプローチの遺伝子表現
図3.2 ピッツアプローチの遺伝子表現

ピッツアプローチの流れ
図3.3 ピッツアプローチの流れ

ミシガンアプローチ Michigan approach

ミシガンアプローチは一つのIF-THENルールを一つの個体として扱います。そして、それぞれの個体に対して信頼度というパラメータを割り当てる事により、各個体であるルールに対する評価を行います。ここで、信頼度というものをわざわざ用いるのは、同じルールがいくつも生成されることなく、ルールごとの有効性を検証するためです。IF-THENルール一つを一つの個体として単純にGAを適用すると、当然一番いいルールだけがたくさん生成されてしまい、ルールの組み合わせによる効果というものが薄れてしまいます。そこで信頼度というものを用いることにより、それぞれのルールを効果的に利用するように工夫されています。

これはピッツアプローチについてもいえることですが、分類子システムではルール一つ一つについて評価を調べるのではなく、システム全体としての挙動を環境に対して適用し、環境からはシステム全体に関する評価値を受け取っています。そして、システム内でここのルールについての評価は間接的に行われることになります。このためシステムの入出力が簡単で比較的応用しやすくなっています。


分類子システムの入出力
図3.4 分類子システムの入出力

ミシガンアプローチではルールの実行から評価までを少々複雑な一連の手続きとして行っています。システムが環境から現在の状態を観測し、その時点で保持されている全ルールから前件部を調べて、適合できるルールをリストアップします。しかし、この時点では同時に実行できないようなルールも含まれています。そこで、このルールの中から、それぞれの信頼度に基づいた確率的方法でどのルールを実行するか決定します。(これを競合解消とも言います。)次に、選ばれたルールが実際に実行され、その結果を再び環境から観測します。この観測結果が良いときは、ルールが有効だったとして、その時実行されたルールの信頼度が向上します。また、観測結果が悪くなっていたときには、その時実行されたルールは良くなかったとし、信頼度が低下します。この作業を繰り返すことにより、システムは次第に有効なルールを中心とするシステムへと信頼度が更新されていきます。


ミシガンアプローチ
図3.5 ミシガンアプローチ

ミシガンアプローチでは、信頼度の更新方法に、バケツリレー法(bucket brigade algorithm)、利益共有法(profit sharing plan)などいくつかの強化学習の方法が提案されています。

2000/02/25