This is a course on Game theory. It covers 3 main topics:
- Equilibrium computation and Repeated games;
- Evolutionary game theory;
- Current research topics
The course is taught in an active learning framework with class time being used for activities and demonstrations whilst the content is made available to the students at the start of the course.
Throughout this course concepts are illustrated/demonstrated using Python. In particular the following libraries are used:
- Nashpy: computation of equilibria.
- Axelrod: study of the Iterated Prisoner's Dilemma.
- Sympy: used to verify and carry out symbolic computations.
- Normal form games;
- Strategies (pure and mixed), utility computation;
- Play the two thirds of the average game;
- Play pairwise Head or Tails game.
Number of sessions: 2
- Dominated strategies: definitions and use to simplify games;
- Best response strategies: definitions and use to simplify games;
- Nash equilibria: definitions.
- Play golden balls in class;
- Play against a mixed strategy;
- Rock Paper Scissors Lizard Spock tournament.
Number of sessions: 3
- Support enumeration in two by two games;
- Support enumeration in larger games
- Lemke Howson algorithm.
- In class calculations of support enumeration for larger games;
- Create a polytope (students as nodes), labels as post it notes and solve games.
Number of sessions: 3
- What a strategy in a repeated game is.
- Equilibria of repeated games that is not sequence of stage nash
- The Iterated Prisoner's Dilemma
- Axelrod's tournament
- Infinitely repeated games
- Play an IPD tournament
- Play a probabilistic ending IPD tournament
Number of sessions: 3
- Population games
- Stable strategies
- Modelling using computer code
Number of sessions: 2
- Moran processes;
- Obtaining expression for fixation in 2 strategy games;
- Use dice for N=2
- Pair wise Moran process in class (N>2)
- IPD
- Game theoretic healthcare modelling
- Choosing a paper and working through it. Potentials:
- Rhino paper
- CCU Game paper with Jeff and Iza
- Press and Dyson Paper
- Moran paper
|--- README.md
|--- environment.yml # A conda environment file
|--- render.py # A file to serve the static content
|--- nbtests.py # A file to test the notebooks
|--- doctests.py # A file to test the code in the docs
|--- docs # documentation (notes for the class leader)
|--- nbs # nbs representing content for the site
|--- chapters # Chapters for the course
|--- index.html # A landing webpage automatically generated by static.py
|--- chapters # Served content
|--- 00 # Content directories automatically generated by static.py
|--- 01
|--- ...
All the content of the site is written in Jupyter
notebooks in the nbs
directory. These are used to create .html
versions of the content. To generate all the files:
$ python render.py