Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Is it possible to counter random? #42

Open
domdabomb42 opened this issue May 21, 2021 · 6 comments
Open

Is it possible to counter random? #42

domdabomb42 opened this issue May 21, 2021 · 6 comments

Comments

@domdabomb42
Copy link

Assuming random cooperates half the time. The best strategy is to defect because you get an expected result of 3 overall. I think some people will just submit a random one as a joke and my strategies are getting destroyed against random. But is there a way you can detect a random strategy apart from just a complicated one.

@shadowleafy
Copy link

yes. It's possible. Not gonna say how but I can get ~ 2.93 average against randoms.

@nobody5050
Copy link

Yep, I’m getting the same against randoms

@Barigamb738
Copy link

I got ~ 3.01
Also, a hint is to look into why the iterated prisoner's dilemma is different than the original in the first place.

@jherndon8
Copy link

I’ll eat my hat if the winning strategy doesn’t exploit randoms

@l4vr0v
Copy link
Contributor

l4vr0v commented May 22, 2021

@domdabomb42 , here's two naive approaches:

  • Within a window of past moves, count unprovoked defections by your opponent (defections that didn't come after a defection from you). If these occur with a frequency above some threshold, assume you are facing random. (I use this in some of my detective variants.)
  • Count unprovoked defections throughout the game. If these exceed a threshold (constant), assume you are facing random (@Lasermancer uses this and shared it in the Discord).

Note that you probably want a good backoff strategy because these random-detection heuristics are brittle (e.g., they can misfire for joss or for deferred tit-for-tat'ers). You can, of course, come up with something more sophisticated and statistical - think of what would be true for an opponent whose moves have no relationship with yours!

@domdabomb42
Copy link
Author

Thanks @I4vr0v. I'm gonna use unprovoked for now and try to figure out something better once after I counter some of the other strategies.

zebarnabe pushed a commit to zebarnabe/PrisonersDilemmaTournament that referenced this issue May 27, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

6 participants