The state-of-the-art is that only symmetric games can be solved
efficiently, and thus the linear games supported by Dunshire are a
-bastard of the two: the cones are symmetric, but the players get to
-choose two interior points.
+compromise between the two: the cones are symmetric, but the players
+get to choose two interior points.
In this game, we have two players who are competing for a "payoff."
There is a symmetric cone :math:`K`, a linear transformation :math:`L`
>>> e2 = e1
>>> G = SymmetricLinearGame(L,K,e1,e2)
>>> print(G.solution())
- Game value: 0.5000000
+ Game value: 0.500...
Player 1 optimal:
- [0.5000000]
- [0.5000000]
+ [0.500...]
+ [0.500...]
Player 2 optimal:
- [0.5000000]
- [0.5000000]
+ [0.500...]
+ [0.500...]
Next we try the Lorentz ice-cream cone in :math:`\mathbb{R}^{2}`:
>>> from dunshire import *
>>> K = IceCream(2)
>>> L = [[1,0],[0,1]]
- >>> e1 = [1,1]
+ >>> e1 = [1,0]
>>> e2 = e1
>>> G = SymmetricLinearGame(L,K,e1,e2)
>>> print(G.solution())
- Game value: 0.5000000
+ Game value: 1.000...
Player 1 optimal:
- [0.8347039]
- [0.1652961]
+ [1.000...]
+ [0.000...]
Player 2 optimal:
- [0.5000000]
- [0.5000000]
+ [1.000...]
+ [0.000...]
Note that these solutions are not unique, although the game values are.