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
class WebsocketHumanAgent(hanabiapp.game.agent.agent.Agent):
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): エージェントの設定(デフォルトは空の辞書)
need_hle_convert
action
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: 設定されたアクション