Cでチェッカーの最適なゲームを実装しようとしています.
マシンが実行できるチェッカー ボードの最適な動きを見つけるために、現在のチェッカー ボードの状態に基づいて、C の (GLib) を使用して深さを固定してn-ary ゲーム ツリーを生成しました。
そして、ゲーム ツリーに存在するすべてのリーフ ノードについてヒューリスティック値が計算されます。これは、ボードに残っているマシンのピースの数からプレイヤーの対戦相手のピースの数を差し引いたものとして定義されます。これは、キングがポーンよりも強力な能力を持っているためです。各キングは 2 つの通常のポーンとして使用され、アルファ ベータ検索が適用されます。
ゲーム ツリーの深さを増やすと、最終的に最適化された動きが生成される可能性が高くなります。深さを増やそうとすると、ツリーの生成とヒューリスティック検索に時間がかかります。
私の考えは、ツリーの最初のレベルを個別に生成し、MPI を使用してさらに実行するために、使用可能なプロセッサ間で子ノードを分散することですか?
出来ますか?はいの場合、MPI を使用してツリー生成とヒューリスティック検索を並列化するにはどうすればよいですか?
また、効率的でない場合は、それを実装する方法について他の方法を提案してください。ありがとう。