APIリファレンス

コアサービス

ベースモデル

class mcts_gen.models.game_state.GameStateBase

Abstract base class for any game environment that can be used with McpMcts.

abstractmethod getCurrentPlayer() int

プレイヤー 1 の手番なら +1 、プレイヤー 2 の手番なら -1 を返します。

abstractmethod getPossibleActions() List[Any]

この状態から可能なすべてのアクションのリストを返します。アクションは、 AI エージェントが処理できるように、シリアライズ可能で、できれば人間が読める文字列(例:将棋の USI )でなければなりません。

abstractmethod getReward() float

ゲームが終了している場合、現在のプレイヤーの報酬を返します。規約: +1(勝ち)、 -1(負け)、 0(引き分け)。

get_state_summary() Any

現在の状態の要約を返します。これはサブクラスによってオーバーライドされ、より豊富なゲーム固有の情報を提供できます。

abstractmethod isTerminal() bool

この状態が終端(ゲームオーバー)であれば True を返します。

abstractmethod takeAction(action: Any) GameStateBase

指定されたアクションを適用した後の新しい GameState を返します。

ゲームモジュール

このフレームワークは、さまざまなゲームで拡張できます。以下に提供されている例を示します。

テストおよびデモンストレーション用のダミーゲーム実装(三目並べ)です。

class mcts_gen.games.dummy_game.TicTacToeDummy(board: List[int] | None = None, player: int = 1)

MCTS エンジンをテストするための単純化された三目並べのゲーム状態です。

getCurrentPlayer() int

現在のプレイヤーを返します。

getPossibleActions() List[int]

可能な手のリスト(空のマス)を返します。

getReward() float

ゲーム結果の報酬を返します。

isTerminal() bool

ゲームが終了したかどうか(これ以上手がないか)をチェックします。

takeAction(action: int) TicTacToeDummy

手を適用し、新しいゲーム状態を返します。