9. Punishment values and BLPs¶
The first step is to construct punishment values over each partition element of the state space. This will turn out to be amenable to separable bilinear programming formulations.
Punishment payoffs for the large player are constructed as follows.
For each , define a correspondence by
Note
Note encodes two requirements:
- Continuation values must be consistent with the set where itself enforces the action-continuation-state profile pair ; and
- individually, the action-and-promised-value pair are optimal (i.e. “incentive compatible”).
Next, construct government punishment vectors
- , and
- by letting
(1)
Then define: and .
Note
- If is defined as a convex polytope, then is also a convex polytope.
- Given , the minimization program (1) is a mild nonlinear programming problem–i.e. a separable bilinear programming formulation–of the following generic form
(2)
- Moreover, and are disjoint convex and bounded polytopes.
Existence of Optimum
If and are bounded then there exists an optimal solution of (2), , such that and .
Assume that we are solving the minimization problem in (2). We employ a well-known deterministic global optimization algorithm known as branch-and-bound (BNB). First, a relaxation of the bilinear program is solved. Typically, this is done by solving inexpensive LPs. [CM2009] The solution of the relaxed problem yields a lower bound on the globally optimal solution which is a convex lower envelope. The relaxation is then iteratively refined, by refining the domain (feasible sets) and successively eliminating dominated local optima. (This is also a common method in solving integer linear programs.) An upper bound estimate of the optima can be found by using local nonlinear solvers (e.g. SNOPT and IPOPT) over each branch. Thus we have successively improved branching partitions of the domain (i.e. branching) and lower- and upper-bounding estimates (i.e. bounding) of the -global optimum.
Note
The BNB algorithm we use follows [McC1976] and is implemented through the Bilinear Matrix Inequality BNB interface (BMIBNB) available in Stefan Lofberg’s YALMIP. To solve the local lower-bounding LPs, we use the GNU GLPK open-source optimizer and to solve the upper-bounding nonlinear programs, we use either SNOPT or IPOPT.
9.1. Implementing punishment values¶
The following pseudocode implements the punishment calculations for the outer-approximation scheme:
Pseudocode
Input:
For each :
Markov map
Simplex
Get }
- Uses: xTriIndex from Simplex_IntersectPmap
For each :
- Get linear inequality representations of as
- Get current payoff profile
- Solve separable BLP
Get .
- Get .
Note
The separable constraint sets and for and , respectively, are given by constraints in the BLP. These constraint say the following.
: the first two constraints require to be such that
- for each and , the resulting continuation state ; and
- given a fixed policy , the choice over renders feasible according the the government budget constraint;
is given by the requirements that be
- consistent with respect to the step correspondence slice which has constant levels over the partition element ; and
- such that is incentive compatible for all small agents.
Constructing the punishment values for the inner-approximation scheme is similar to what we did above in detail for . The only differences are
in the second last step of the pseudocode above, replace that line with:
Of course we should also re-label all the notation for the punishment value function with ; and
maximize over in the main BLP problem.
Relevant functions
-
Punish_Outer
(self)¶ Returns:
pival :
- A numeric array containing elements where .
See also
PunishK
-
Punish_Inner
(self)¶ Returns:
pival :
- A numeric array containing elements where .
See also
PunishK
[CM2009] | Carpara, Alberto and Michele Monaci. “Bidimensional packing by bilinear programming”. Mathematical Programming Series A, 118, 75–108. |
[HPT2000] | Horst R, P. Pardalos and N. Thoai (2000): Introduction to global optimization. 2nd Edition, Boston: Springer, 2000. |
[HT1996] | Horst R, Hoang Tuy (1996): Global Optimization. 3rd Edition, New York: Springer. |
[Man1995] | Mangasarian, Olvi L. (1995): “The linear complementarity problem as a separable bilinear program”. Journal of Global Optimization, 12, 1–7. |