タグ

遺伝的アルゴリズムに関するaidiaryのブックマーク (8)

  • 遺伝的アルゴリズム

    トップページ→研究分野と周辺→進化型計算→ 遺伝的アルゴリズム(Genetic Algorithms:GA)は、生物界の進化の仕組みを模倣する解探索手法として、1975年にミシガン大学のJohn Hollandが提案した。解の探索を原則「偶然の変化」と「たまたま良く出来たものの採用」で行なうため、当初は「こんな偶然に頼る出鱈目な方法がアルゴリズム(計算手順)と言えるのか?」と厳しい批判にさらされたと言われる。 しかし、Holland一派の考えは間違っていなかった。1990年代に入るとGAは人工知能の主要分野に躍り出て、世界中で研究が行なわれるようになった。背景にはコンピュータの計算速度の飛躍的向上がある。生物の進化と同様、GAの進化には非常に多くの繰返しが必要な事を、批判していた人達は気付かなかったのである。 遺伝的アルゴリズムのソース・コード(プログラム)の一例 単純GAの処理の流れ 最

  • MarI/O – ニューラルネットワークと遺伝的アルゴリズムでマリオの早解き

    ニューラルネットワークと遺伝的アルゴリズムの組み合わせにより、ゲーム「スーパーマリオブラザーズ」の一面を教師無し学習で解かせている動画です。 最初に学習が十分済んだ状態のプレイが実演されますが、1面を46秒で解いています […] ニューラルネットワークと遺伝的アルゴリズムの組み合わせにより、ゲーム「スーパーマリオブラザーズ」の一面を教師無し学習で解かせている動画です。 最初に学習が十分済んだ状態のプレイが実演されますが、1面を46秒で解いています。世の中には41秒で解いてる動画もあるようですが、かなり早い部類と言えるでしょう。 0:46 からは、今回の解法についての解説です。マリオを含む画面上の地形やキャラクターのスプライトを入力に、どのボタンを押すかを出力としたニューラルネットワークをランダムに作り、うまくいったネットワークを組み合わせて次の世代のネットワークを作り試行させます。これを繰

    MarI/O – ニューラルネットワークと遺伝的アルゴリズムでマリオの早解き
    aidiary
    aidiary 2015/06/20
    MarI/O – ニューラルネットワークと遺伝的アルゴリズムでマリオの早解き | 秋元@サイボウズラボ・プログラマー・ブログ
  • レベルデザインに遺伝的アルゴリズムを活用する

    2015年Apr6日レベルデザインに遺伝的アルゴリズムを活用する こんにちは。オインクゲームズの新藤です。 先日、弊社のデジタルゲーム第二弾となる「OLYM」がリリースされました。OLYM はターン制限のあるパズルゲームで、各ステージごとに決められたターン数が設けられてています。このターン数以内に目標を達成できないと、クリア失敗になってしまいます。そのため、このターン数をどう決めるかが、難易度に大きく影響する一因となっています。OLYM では、ステージごとのターン数を決定するのに遺伝的アルゴリズムを活用したので、今日はそれをご紹介します。 最終的にやったことは非常にシンプルです。端的に言えば、AI に実際にパズル解かせて、何手で解けたかをレベルデザインの参考にするということです。この AI を作る際に、遺伝的アルゴリズムを活用しました。そもそもは「自動でパズル解いてくれる AI がいたら面

    レベルデザインに遺伝的アルゴリズムを活用する
  • 実践 遺伝的アルゴリズム

    書は、人工知能技術の1つである遺伝的アルゴリズムを用いて、「ナンバーエリア」または「四角に切れ」と呼ばれる、数字だけではなく長方形という図形的な要素が入ったパズルの問題の自動生成について説明します。 理論の説明は最小限にし、実装を詳細に説明。後半ではパズル作家が問題を作る際に考慮するような、パズル問題として差をつける特長をプログラムに組み込むことも説明します。書でナンバーエリアに挑戦することで、さまざまなパズル生成への応用力が身につき、パズル以外への適用も可能になるでしょう。 なお、書はEbook版のみの販売です。 まえがき はじめに 書の表記 サンプルコードの使用について 意見と質問 導入部 遺伝的アルゴリズムとは 巡回セールスマン問題への適応例 1章 遺伝的アルゴリズムとは 最適化問題 遺伝的アルゴリズム 2章 巡回セールス問題への適用 巡回セールスマン問題 GUIプログラム

    実践 遺伝的アルゴリズム
  • Pythonで遺伝的アルゴリズムを動かすPyevolveを試してみた - Wolfeyes Bioinformatics beta

    課題のために遺伝的アルゴリズムを使う必要があったので,Pythonで遺伝的アルゴリズムを動かすことのできるライブラリPyevolveを試してみた. 始めの一歩 動かし方はとてもシンプルなので,公式ドキュメントのGet Startedをざっと見たあとにExampleでどういう使い方ができるのかを個別に見ていけばいいと思う. Get Started - Tutorial — Pyevolve v0.5 documentation Examples — Pyevolve v0.5 documentation 日語資料なら,自分が確認した限りでは以下のサイトが一番詳しい. Pyevolveで学ぶ遺伝的アルゴリズム - mfumiの日記 Pyevolveの基的な使い方 ゲノムインスタンスの生成 ゲノムの構造はバイナリや1次元配列,2次元配列,木構造などを取ることができ,初期値が取りうる値の幅など

  • 2048のAIを書かなかった話。あるいは遺伝的プログラミングの話 - isEOL(@Angelworm_)

    序 KMCでは2048のAIを作って戦わせるコンテストである「第一回2048AIコンテスト 結果報告 - KMC活動ブログ」が開催たそうですね。これを見て2048AIを私も作ってみたくなりました。 ところで、ボードゲーム上でAIとはおおよそ「勝率が最も高まる手を現在の状況を元に出力する」ものだと思います。チェスなどのゲームに置いて有名な「ミニマックス法」などは相手が最も自分に取って都合が悪い選択をして、自分が最高の選択をし続けた場合一番最初に選ぶべき最高の手を出力するアルゴリズムです。 このような次におこる状況を予測して手を決定するアルゴリズムは、探索アルゴリズムなんて呼ばれたりしています。 探索アルゴリズムを利用する上で大事なのは、読みの深さと評価関数の良さです。読みの深さとは、言葉の通りゲームの状況を何手先まで読む事が出来るかを表し、深ければ深いほどより大局的な戦い方が出来るようになる

    2048のAIを書かなかった話。あるいは遺伝的プログラミングの話 - isEOL(@Angelworm_)
  • Karl Sims home page

    Karl Sims is a digital media artist and visual effects software developer. His interactive works have been exhibited worldwide at the Pompidou Center, Ars Electronica, ICC Museum, DeCordova Museum, Boston Museum of Science, and at MIT. He founded GenArts, Inc. which created special effects software tools for the motion picture industry, and he also held positions at Thinking Machines Corporation,

  • ほぼ日刊イトイ新聞 -マッチ箱の脳(WEB)篇

    「マッチ箱の脳」という森川くんが書いたは、 その世界で、かなりの評判を呼んでいます。 まだ、売り出されてまもないこのを、 森川君、WEB用に再編集して、 「ほぼ日」に連載してくれることになりました。 なんとふとっぱらで、骨惜しみしない男なのでしょう?! ◆気前がいいだけじゃ生きられない。 ただのケチでは生きている資格がない。 謹んで、感謝の意をこめて、上記のことばを 森川くんにささげさせていただきます。

  • 1