第5回に行ってみました。今回のテーマは、進化です。今回も三宅さんの講演とグループワークの2部構成です。フロムさん初潜入でした。1階の広めの会議室で80人ぐらい参加していました(その先もスペースがありそうだったが?)。聞き漏らしたり、勘違いしているところがあると思います。今までのゲームAIセミナーでやってきたことC4アーキテクチャコネクショニズム結合回路によって人口知識を組み立てる回路が動的に変化することで成長をするニューラルネットワーク集団を進化させる方法が遺伝的アルゴリズム□C4アーキテクチャデジタル世界で生きる生物の知性のために提案されたアーキテクチャ外界からデータを読み込んで(認識して)、ワーキングメモリに書き込む。そこから、アクションを選択して、掲示板に書き込んで、それを見て動く。記憶によって、「予測」が可能になる。予測が失敗したら、「驚き」を起こすことができる。認識ツリーNPCを組むときは、まず記憶を溜め込む。それによって賢くなれる人間が間違えそうなところで間違えることができる。精緻化によって賢くできる。条件判定のロジックやパラメータをより詳細にしていく。生物ごとに必要な認識が違うツリーを部分的に選択することで個性が出せる。強化学習:だんだんと1つの行動を起こすようにする。高い評価値を実行プレイヤーが報酬を与えられる。評価がよければ、原因となったトリガーの評価値が高くなるようにするどう情報を抜き出すかを考えれば賢いAIができる。□遺伝的アルゴリズムある集団がいて、「遺伝子」を入れ替えながら世代交代を行う。ミッションをクリアしていくようになる。適応度がなるべく一定になるように調整している□Q&AQ.組み込んだけど、自由度が高すぎてどうすれば良いかわからなくなった。A.各ステップごとにノウハウが存在する多点交差は、性質が保存されにくいとかなるべく余裕があるときに実験することマスターアップ直前に組み込むのは駄目グラフで可視化しておくと、パラメータの関係がわかる理屈は読んでも「う~ん」となる。誤差伝播法という難しい方法があるが、ゲームではあまり使われてない。Technologies)ニューラルネットワークを定義して、遺伝的アルゴリズムで、進化を決定。□まとめ遺伝的アルゴリズム、ニューラルネットは文献が多くて勉強しやすいゲームへの実例は少ない原理を理解してデザインを生み出すことがこれから大事では。技術を使ったもので遊びましょう動作させては結果を見て、実験して遊ぶデモは簡単なものなので、それを見て使えないと判断しては駄目。□Q&AQ.ニューロンの数はどうやって決定?A.重みの数が自由度になる。入力に対する応答の豊かさも影響するでも、実験するしかない。みんなに評価してもらう。□宿題:自分で進化するものを考えてみよう。題目:ユーザークリエイションアルゴリズム(アルゴリズム2.0)一般的に、ユーザーにアルゴリズムを考えてもらってその評価として遺伝的アルゴリズムを使う。セカンドライフのようなものに虫を作りましょう。繁殖できるでしょうか?(サーバーの負荷とかも考慮できると良いですね)したがって、テストファーストな手法。動的言語が必要もしくは、関数テーブルの嵐になりそう□解決の方向性を見つける:講演を踏まえて、どのように実現する?各虫のインスタンスをエージェント化(遺伝+ニューラル)ルールをどう与える?入力と出力を与えられる。なったときに、こうなるように振舞うようがんばれ。