0

三目並べを実装するための独自のアルゴリズムを考えていました。それはシステムに対するコンピューターになるでしょう。私が実装しようと思ったアルゴリズムは、ユーザーの選択された各ノードのすべての勝者ノードを含むハッシュマップです。システムは、ユーザーが選択したキーのハッシュマップをポーリングし、勝った移動の選択肢の1つをランダムに選択します。ユーザーまたはシステムによって以前に選択された選択肢は、削除するか、ブール値trueとして設定できます。これは主にブロッキングベースのアルゴリズムです。これについての考えやコメントは大歓迎です。

システムハッシュマップ

<1,<2,3,4,7,5,9>>
<2,<1,3,5,8>>
<3,<1,2,6,9,5,7>>
<4,<1,7,5,6>>
<5,<2,8,4,6>>
<6,<3,9,5,4>>
<7,<1,4,8,9,5,3>>
<8,<2,5,7,9>>

システムは、ユーザーのキー選択に基づいて、ハッシュマップのエントリの1つをランダムに選択します。これはあまりスケーラブルなアプローチではないことは知っていますが、これについていくつかコメントを知りたいと思います。システム/ユーザーによってすでに選択されている各エントリは、falseとして設定/削除できるため、おそらく問題にはなりません。

4

1 に答える 1

0

あなたのアプローチはおそらくうまくいくでしょうが、これはあまり良い解決策ではありません。

ゲームの状態とそれぞれの勝利の動きを含むハードコーディングされたハッシュをシステムに渡す代わりに、アルゴリズムを実装して、コンピューターが最適な動きを自動的に計算できるようにします。あなたが検討するかもしれないいくつかのよく知られたアルゴリズム:

ミニマックス

ネガマックス

アルファベータ剪定

また、アルゴリズムを使用して、プログラムにスケーラビリティを追加します。

于 2012-11-10T20:59:07.340 に答える