hanabiapp.game.agent.websocket_human_agent
1import sys 2import os 3 4import json 5from .agent import Agent 6 7from ... import socketio 8 9class WebsocketHumanAgent(Agent): 10 """ 11 WebSocket を介して人間のプレイヤーが操作するエージェント. 12 """ 13 14 def __init__(self, name, player_number, config = {}): 15 """ 16 WebsocketHumanAgent のコンストラクタ. 17 18 Args: 19 name (str): エージェントの名前 20 player_number (int): プレイヤーの番号 21 config (dict, optional): エージェントの設定(デフォルトは空の辞書) 22 """ 23 super().__init__(name, player_number) 24 self.need_hle_convert= True 25 self.action = None 26 27 def set_action(self, action): 28 """ 29 エージェントが次に実行するアクションを設定する関数. 30 31 Args: 32 action (dict): 次に実行するアクション 33 """ 34 self.action = action 35 36 def act(self, observation, rand_ins): 37 """ 38 人間が選択したアクションを実行する関数. 39 40 Args: 41 observation (dict): 現在のゲーム状態の観測情報 42 rand_ins (random.Random): 乱数生成インスタンス(使用しない) 43 44 Returns: 45 dict: 設定されたアクション 46 """ 47 return self.action
10class WebsocketHumanAgent(Agent): 11 """ 12 WebSocket を介して人間のプレイヤーが操作するエージェント. 13 """ 14 15 def __init__(self, name, player_number, config = {}): 16 """ 17 WebsocketHumanAgent のコンストラクタ. 18 19 Args: 20 name (str): エージェントの名前 21 player_number (int): プレイヤーの番号 22 config (dict, optional): エージェントの設定(デフォルトは空の辞書) 23 """ 24 super().__init__(name, player_number) 25 self.need_hle_convert= True 26 self.action = None 27 28 def set_action(self, action): 29 """ 30 エージェントが次に実行するアクションを設定する関数. 31 32 Args: 33 action (dict): 次に実行するアクション 34 """ 35 self.action = action 36 37 def act(self, observation, rand_ins): 38 """ 39 人間が選択したアクションを実行する関数. 40 41 Args: 42 observation (dict): 現在のゲーム状態の観測情報 43 rand_ins (random.Random): 乱数生成インスタンス(使用しない) 44 45 Returns: 46 dict: 設定されたアクション 47 """ 48 return self.action
WebSocket を介して人間のプレイヤーが操作するエージェント.
WebsocketHumanAgent(name, player_number, config={})
15 def __init__(self, name, player_number, config = {}): 16 """ 17 WebsocketHumanAgent のコンストラクタ. 18 19 Args: 20 name (str): エージェントの名前 21 player_number (int): プレイヤーの番号 22 config (dict, optional): エージェントの設定(デフォルトは空の辞書) 23 """ 24 super().__init__(name, player_number) 25 self.need_hle_convert= True 26 self.action = None
WebsocketHumanAgent のコンストラクタ.
Arguments:
- name (str): エージェントの名前
- player_number (int): プレイヤーの番号
- config (dict, optional): エージェントの設定(デフォルトは空の辞書)
def
set_action(self, action):
28 def set_action(self, action): 29 """ 30 エージェントが次に実行するアクションを設定する関数. 31 32 Args: 33 action (dict): 次に実行するアクション 34 """ 35 self.action = action
エージェントが次に実行するアクションを設定する関数.
Arguments:
- action (dict): 次に実行するアクション
def
act(self, observation, rand_ins):
37 def act(self, observation, rand_ins): 38 """ 39 人間が選択したアクションを実行する関数. 40 41 Args: 42 observation (dict): 現在のゲーム状態の観測情報 43 rand_ins (random.Random): 乱数生成インスタンス(使用しない) 44 45 Returns: 46 dict: 設定されたアクション 47 """ 48 return self.action
人間が選択したアクションを実行する関数.
Arguments:
- observation (dict): 現在のゲーム状態の観測情報
- rand_ins (random.Random): 乱数生成インスタンス(使用しない)
Returns:
dict: 設定されたアクション