minmax¶
Contain a minmax problem solver routine.
-
quantecon.optimize.minmax.minmax[source]¶ Given an m x n matrix A, return the value \(v^*\) of the minmax problem:
\[v^* = \max_{x \in \Delta_m} \min_{y \in \Delta_n} x^T A y = \min_{y \in \Delta_n}\max_{x \in \Delta_m} x^T A y\]and the optimal solutions \(x^* \in \Delta_m\) and \(y^* \in \Delta_n\): \(v^* = x^{*T} A y^*\), where \(\Delta_k = \{z \in \mathbb{R}^k_+ \mid z_1 + \cdots + z_k = 1\}\), \(k = m, n\).
This routine is jit-compiled by Numba, using optimize.linprog_simplex routines.
Parameters: - A : ndarray(float, ndim=2)
ndarray of shape (m, n).
- max_iter : int, optional(default=10**6)
Maximum number of iteration in the linear programming solver.
- piv_options : PivOptions, optional
PivOptions namedtuple to set tolerance values used in the linear programming solver.
Returns: - v : float
Value \(v^*\) of the minmax problem.
- x : ndarray(float, ndim=1)
Optimal solution \(x^*\), of shape (m,).
- y : ndarray(float, ndim=1)
Optimal solution \(y^*\), of shape (n,).