9 October 2019
This will be a hands-on session, so bring a laptop with F# installed with you!
We will spend the evening writing game strategies for the "iterated prisoner's dilemma" problem. This is a simple round-based game with two players. In each round, each player can choose to cooperate with or betray the other play. If you betray but the opponent cooperates, you win 3 points. If you both cooperate, you both get 2 and if you both betray, you both get 1.
There are many interesting strategies that you can write - for example, cooperate until the opponent starts deceiving; do the same thing as the opponent in the previous round or choose randomly. They can be simple with just a few lines of F# or elaborate with sophisticated machine learning, so there will be something fun to try for both F# beginners and experts. And a simple strategy can often turn out to be better than a complex one.