Actually, Prisoner’s Dilemma between programs with each other source code (aka the program equilibrium setting) is a much different problem than both oneshot and iterated Prisoner’s Dilemma.
The main attractiveness of both oneshot and iterated PD is that, despite their extreme simplicity, they provide a suprisingly good model of many common problems humans face in real-world social interactions. On the other hand, Program PD is a much more artificial scenario, even in a speculative world of robots, or world of software agents. It is theoretical interesting to analyze that scenario, but even if an unabiguously satisfactory solution for it was found (and I think your paper doesn’t, but I’ll leave that for another post * ), it would be far fetched to claim that it would essentially solve all practical instances of PD.
( * ) Short story: PrudentBot cooperates too much. (PrudentBot, PrudentBot) is an unstable payoff-dominant Nash equilibrium. It’s not even a Nash equilibrium under a small modification of the game that penalizes program complexity. CliqueBots and generalized CliqueBots (bots that recognize each other with a criterion less strict than perfect textual equivalence but strict enough to guarantee functional equivalence) are better since they are stable payoff-dominant Nash equilibria and they never fail to exploit an exploitable opponent.
Actually, Prisoner’s Dilemma between programs with each other source code (aka the program equilibrium setting) is a much different problem than both oneshot and iterated Prisoner’s Dilemma.
The main attractiveness of both oneshot and iterated PD is that, despite their extreme simplicity, they provide a suprisingly good model of many common problems humans face in real-world social interactions.
On the other hand, Program PD is a much more artificial scenario, even in a speculative world of robots, or world of software agents. It is theoretical interesting to analyze that scenario, but even if an unabiguously satisfactory solution for it was found (and I think your paper doesn’t, but I’ll leave that for another post * ), it would be far fetched to claim that it would essentially solve all practical instances of PD.
( * ) Short story: PrudentBot cooperates too much. (PrudentBot, PrudentBot) is an unstable payoff-dominant Nash equilibrium. It’s not even a Nash equilibrium under a small modification of the game that penalizes program complexity.
CliqueBots and generalized CliqueBots (bots that recognize each other with a criterion less strict than perfect textual equivalence but strict enough to guarantee functional equivalence) are better since they are stable payoff-dominant Nash equilibria and they never fail to exploit an exploitable opponent.