タグ

関連タグで絞り込む (0)

  • 関連タグはありません

タグの絞り込みを解除

Algorithmとjavascriptとgameに関するmanabouのブックマーク (2)

  • マインスイーパのモデル化と解法 - Qiita

    #はじめに マインスイーパをアルゴリズムで解くことができないかを考察してみた。 みなさんご存じの通り、マインスイーパは常に確実に解けるわけではなく、確率的にしか解けない場合もある。ここで、マインスイーパを解くアルゴリズムは、以下の2つに分けることができる。 確実に分かる部分のみを解くアルゴリズム。解けない部分は人の手か、乱数による選択や別のアルゴリズムの助けを借りる必要がある。 できるだけ高い確率で解くことを目指すアルゴリズム。 現状、1の、分かる部分のみを解くアルゴリズムを構築し、JavaScriptで実装し、完璧ではないものの、かなりいいところまで解かせることができている。 github上で公開しているので、こちらでお試しあれ。適当にクリックしてマスを開いたあと「Solve」をクリックすれば、確実に分かる部分を埋めてくれる。(動作確認はFirefoxでしか行っていないため、他のブラウザ

    マインスイーパのモデル化と解法 - Qiita
  • JavaScript でオセロを実装する(原始モンテカルロAI編) | Webシステム開発/教育ソリューションのタイムインターメディア

    以前、オセロの対戦AIの作成しましたが、そこでは実装を簡略化する為に盤面の価値を 盤面の価値 = 自分の石の数 – 相手の石の数 という単純な方法で決めていました。 でも、これには問題があります。 同じ石でも配置場所によって価値は異なるはずです(例: 角は最強)。それが考慮されていません。ゲーム終盤になってくると石の数が重要になってきます。でも序盤から石の数を重視するのは方向性としておかしいです。 という訳で、 序盤から中盤では石の配置場所を重視する終盤では石の数を重視する 形で盤面の価値を算出すれば、結構良さそうなAIになりそうです。 しかし、今度は 「序盤」「中盤」「終盤」をどのように区別するのか?石の配置場所の強弱はどう決めるのか?同じ配置場所でも周囲の状況次第で強弱が異なるのでは? という問題が出てきます。これは作るのが面倒臭そうです。 どうにかしてお手軽かつそこそこ強そうなAI

    JavaScript でオセロを実装する(原始モンテカルロAI編) | Webシステム開発/教育ソリューションのタイムインターメディア
  • 1