Example #1
0
    def save_used_hash(self, gs: GameState, uct_nodes: List[UctNode], index):
        self.node_hash[index].flag = True
        self.used += 1

        current_node = uct_nodes[index]
        child_index = current_node.child_index
        child_move = current_node.child_move
        child_num = current_node.child_num
        for i in range(child_num):
            if child_index[i] != NOT_EXPANDED and self.node_hash[
                    child_index[i]].flag == False:
                gs.move_with_id(child_move[i])
                self.save_used_hash(gs, uct_nodes, child_index[i])
                gs.pop()