lecture-python-advanced
lecture-python-advanced copied to clipboard
Comments on "Von Neumann Growth Model (and a Generalization)"
Moreover, von Neumann’s Minmax Theorem (1928) ... implies that
This does not sound right. That theorem should be the first to prove the existence of the value (along with the optimal strategies of course) (although I have never read the 1928 paper...).
One may say "alternatively, this can also be proved by the famous theorem of Nash (1951)".
In the bounds
method: is fsolve
worth using here?
- To me, the trivial lower bound is
LB = 0
. - For an upper bound, wouldn't
UB = (B.sum(1) / A.sum(1)).max() + 1
work?
In the zerosum
method:
- "Don't compare boolean values to True or False using ==":
if dual == False
should beif not dual
. - In the comments in the
else
branch:(1) Define the problem for v as a maximization
should be(1) Define the problem for u as a minimization
.
In Step 2 in the "Algorithm" section, "Since ... V(M(.)) is a continuous, nonincreasing function" should be just "Since ... V(M(.)) is a continuous function".
There are warnings: OptimizeWarning: Unknown solver options: bland
. Maybe specify the method
option in scipy.optimize.linprog
?
A standard duality argument ... implies that under Assumptions I and II, beta_0 <= alpha_0.
This is one of the most nontrivial parts in this lecture. A big theme here being the minmax theorem, why not explicitly use it, rather than just saying "standard duality argument"?
Let alpha_0 and beta_0 be the values of the TEP and the EEP, resp. Then there is no x > 0 such that x (B - alpha_0 A) >> 0 (otherwise alpha_0 would not be the optimal value). This implies that the value of the zero-sum game given by B - alpha_0 A is non-positive: V(B - alpha_0 A) <= 0. Then there is some p > 0 such that (B - alpha_0 A) p <= 0. By the definition of beta_0, it follows that beta_0 <= alpha_0.
So, as in the above, beta_0 <= alpha_0
must hold.
But the outcomes for the n2
instance in this current lecture are α_0 = 1.1343231229111552
and β_0 = 1.2579826870933175
.
Possibly because of numerical non-robustness of the branching V >= 0
and V > 0
?
Thanks @oyamad for all your comments. Perhaps co-author @szokeb87 will have some thoughts.
I also need to read this lecture more carefully. I not that the citations have not been done correctly, so I'll add that to the issue tracker.