parameters: (self, params, payoff_matrices)
return_statement: return gradients(*params, payoff_matrices, self.num_players, self.proj_grad)
docstring: Compute and return exploitability.
  
      Args:
        params: tuple of params (dist,), see ped.gradients
        payoff_matrices: dictionary with keys as tuples of agents (i, j) and
          values of (2 x A x A) np.arrays, payoffs for each joint action. keys
          are sorted and arrays should be indexed in the same order
      Returns:
        float, exploitability of current dist
        unregularized exploitability (stochastic estimate)
        unregularized exploitability (stochastic estimate) *duplicate
docstring_summary: Compute and return exploitability.
docstring_tokens: Compute and return exploitability .
function: def compute_gradients(self, params, payoff_matrices):
      """Compute and return exploitability.
  
      Args:
        params: tuple of params (dist,), see ped.gradients
        payoff_matrices: dictionary with keys as tuples of agents (i, j) and
          values of (2 x A x A) np.arrays, payoffs for each joint action. keys
          are sorted and arrays should be indexed in the same order
      Returns:
        float, exploitability of current dist
        unregularized exploitability (stochastic estimate)
        unregularized exploitability (stochastic estimate) *duplicate
      """
      return gradients(*params, payoff_matrices, self.num_players, self.proj_grad)
function_tokens: def compute_gradients ( self , params , payoff_matrices ) : return gradients ( * params , payoff_matrices , self . num_players , self . proj_grad )