|
12 | 12 |
|
13 | 13 |
|
14 | 14 | class Davis(Player):
|
15 |
| - """A player starts by cooperating for 10 rounds then plays Grudger, |
16 |
| - defecting if at any point the opponent has defected.""" |
| 15 | + """ |
| 16 | + Submitted to Axelrod's first tournament by Morton Davis. |
| 17 | +
|
| 18 | + A player starts by cooperating for 10 rounds then plays Grudger, |
| 19 | + defecting if at any point the opponent has defected. |
| 20 | +
|
| 21 | + Names: |
| 22 | +
|
| 23 | + - Davis: [Axelrod1980]_ |
| 24 | + """ |
17 | 25 |
|
18 | 26 | name = 'Davis'
|
19 | 27 | classifier = {
|
@@ -49,8 +57,11 @@ def strategy(self, opponent):
|
49 | 57 |
|
50 | 58 | class RevisedDowning(Player):
|
51 | 59 | """Revised Downing attempts to determine if players are cooperative or not.
|
52 |
| - If so, it cooperates with them. This strategy would have won Axelrod's first |
53 |
| - tournament. |
| 60 | + If so, it cooperates with them. This strategy would have won Axelrod's first tournament. |
| 61 | +
|
| 62 | + Names: |
| 63 | +
|
| 64 | + - Revised Downing: [Axelrod1980]_ |
54 | 65 | """
|
55 | 66 |
|
56 | 67 | name = "Revised Downing"
|
@@ -127,8 +138,14 @@ def reset(self):
|
127 | 138 |
|
128 | 139 | class Feld(Player):
|
129 | 140 | """
|
| 141 | + Submitted to Axelrod's first tournament by Scott Feld. |
| 142 | +
|
130 | 143 | Defects when opponent defects. Cooperates with a probability that decreases
|
131 | 144 | to 0.5 at round 200.
|
| 145 | +
|
| 146 | + Names: |
| 147 | +
|
| 148 | + - Feld: [Axelrod1980]_ |
132 | 149 | """
|
133 | 150 |
|
134 | 151 | name = "Feld"
|
@@ -182,9 +199,15 @@ def strategy(self, opponent):
|
182 | 199 |
|
183 | 200 | class Grofman(Player):
|
184 | 201 | """
|
| 202 | + Submitted to Axelrod's first tournament by Bernard Grofman. |
| 203 | +
|
185 | 204 | Cooperate on the first 2 moves. Return opponent's move for the next 5.
|
186 | 205 | Then cooperate if the last round's moves were the same, otherwise cooperate
|
187 | 206 | with probability 2/7.
|
| 207 | +
|
| 208 | + Names: |
| 209 | +
|
| 210 | + - Grofman: [Axelrod1980]_ |
188 | 211 | """
|
189 | 212 |
|
190 | 213 | name = "Grofman"
|
@@ -212,6 +235,8 @@ def strategy(self, opponent):
|
212 | 235 |
|
213 | 236 | class Joss(MemoryOnePlayer):
|
214 | 237 | """
|
| 238 | + Submitted to Axelrod's first tournament by Johann Joss. |
| 239 | +
|
215 | 240 | Cooperates with probability 0.9 when the opponent cooperates, otherwise
|
216 | 241 | emulates Tit-For-Tat.
|
217 | 242 |
|
@@ -242,21 +267,18 @@ def __repr__(self):
|
242 | 267 |
|
243 | 268 | class Nydegger(Player):
|
244 | 269 | """
|
245 |
| - The program begins with tit for tat for the first three moves, except that |
246 |
| - if it was the only one to cooperate on the first move and the only one to |
247 |
| - defect on the second move, it defects on the third move. After the third move, |
248 |
| - its choice is determined from the 3 preceding outcomes in the following manner. |
249 |
| - Let A be the sum formed by counting the other's defection as 2 points and one's |
250 |
| - own as 1 point, and giving weights of 16, 4, and 1 to the preceding three |
251 |
| - moves in chronological order. The choice can be described as defecting only |
252 |
| - when A equals 1, 6, 7, 17, 22, 23, 26, 29, 30, 31, 33, 38, 39, 45, 49, 54, |
253 |
| - 55, 58, or 61. Thus if all three preceding moves are mutual defection, |
254 |
| - A = 63 and the rule cooperates. This rule was designed for use in laboratory |
255 |
| - experiments as a stooge which had a memory and appeared to be trustworthy, |
256 |
| - potentially cooperative, but not gullible. |
257 |
| -
|
258 |
| - -- Axelrod, "Effective Choice in the Prisoner's Dilemma" |
| 270 | + Submitted to Axelrod's first tournament by Rudy Nydegger. |
| 271 | +
|
| 272 | + The program begins with tit for tat for the first three moves, except |
| 273 | + that if it was the only one to cooperate on the first move and the only one to defect on the second move, it defects on the third move. After the third move, its choice is determined from the 3 preceding outcomes in the following manner. |
| 274 | +
|
| 275 | + Let A be the sum formed by counting the other's defection as 2 points and one's own as 1 point, and giving weights of 16, 4, and 1 to the preceding three moves in chronological order. The choice can be described as defecting only when A equals 1, 6, 7, 17, 22, 23, 26, 29, 30, 31, 33, 38, 39, 45, 49, 54, 55, 58, or 61. |
259 | 276 |
|
| 277 | + Thus if all three preceding moves are mutual defection, A = 63 and the rule cooperates. This rule was designed for use in laboratory experiments as a stooge which had a memory and appeared to be trustworthy, potentially cooperative, but not gullible. |
| 278 | +
|
| 279 | + Names: |
| 280 | +
|
| 281 | + - Nydegger: [Axelrod1980]_ |
260 | 282 | """
|
261 | 283 |
|
262 | 284 | name = "Nydegger"
|
@@ -309,9 +331,15 @@ def strategy(self, opponent):
|
309 | 331 |
|
310 | 332 | class Shubik(Player):
|
311 | 333 | """
|
| 334 | + Submitted to Axelrod's first tournament by Martin Shubik. |
| 335 | +
|
312 | 336 | Plays like Tit-For-Tat with the following modification. After
|
313 | 337 | each retaliation, the number of rounds that Shubik retaliates
|
314 | 338 | increases by 1.
|
| 339 | +
|
| 340 | + Names: |
| 341 | +
|
| 342 | + - Shubik: [Axelrod1980]_ |
315 | 343 | """
|
316 | 344 |
|
317 | 345 | name = 'Shubik'
|
@@ -371,8 +399,15 @@ def reset(self):
|
371 | 399 |
|
372 | 400 | class Tullock(Player):
|
373 | 401 | """
|
| 402 | + Submitted to Axelrod's first tournament by Gordon Tullock. |
| 403 | +
|
374 | 404 | Cooperates for the first 11 rounds then randomly cooperates 10% less often
|
375 |
| - than the opponent has in previous rounds.""" |
| 405 | + than the opponent has in previous rounds. |
| 406 | +
|
| 407 | + Names: |
| 408 | +
|
| 409 | + - Tullock: [Axelrod1980]_ |
| 410 | + """ |
376 | 411 |
|
377 | 412 | name = "Tullock"
|
378 | 413 | classifier = {
|
@@ -423,7 +458,10 @@ class UnnamedStrategy(Player):
|
423 | 458 | score than the other player. Unfortunately, the complex process of adjustment
|
424 | 459 | frequently left the probability of cooperation in the 30% to 70% range, and
|
425 | 460 | therefore the rule appeared random to many other players.
|
426 |
| - -- Axelrod, "Effective Choice in the Prisoner's Dilemma" |
| 461 | + |
| 462 | + Names: |
| 463 | +
|
| 464 | + - Unnamed Strategy: [Axelrod1980]_ |
427 | 465 |
|
428 | 466 | Warning: This strategy is not identical to the original strategy (source
|
429 | 467 | unavailable) and was written based on published descriptions.
|
|
0 commit comments