Course:CPSC312-2016-Project2-Prisoner's Dilemma 2

From UBC Wiki

Prisoner's Dilemma 2

Authors: Ruofei Du, Bryan Jiang

What is the problem?

Iterative Prisoner's Dilemma is an iterative version of prisoner's dilemma game where two parties play against each other repeatedly to see who gets more points at the end of iteration. We will be making a game with preset payoffs where the player (you) can choose to cooperate or cheat.

What is the something extra?

The computer will be able to play with multiple strategies.

What did we learn from doing this?

We found the Haskell is a viable platform for running prisoner's dilemma games. Since prisoner's dilemma games don't have many states, representing them was not an issue that required a lot of overhead. There were, however, challenges that made seemingly simple tasks quite difficult.

Challenges - It was difficult to include randomness (a random player) since it's wrapped in IO - Global variables would have made it a lot easier to implement more turn based variability/functionality - Also hard to implement more complex player types