Game theory is a field of applied mathematics that describes and analyzes interactive decision-making when two or more parties are involved. Since finding a firm mathematical footing in the 1920’s, it has been applied to a wide variety of fields, including economics, political science, foreign policies, engineering, and machine learning, just to name a few. This course will serve both as an introduction to as well as a survey of applications of game theory, as it has been useful for designing wireless networks, devising market incentives, implementing auction, making resource allocation, designing voting schemes, just to name a few.
Therefore, after covering the mathematical foundational work with some measure of mathematical rigor, we will examine many real-world applications, both historical and current. Topics include 2-person/n-person game, cooperative/non-cooperative game, static/dynamic game, strategic/coalitional game, learning in games, price of anarchy, mechanism design and generative adversarial networks and their respective examples and applications. We will also spend some time discussing well known examples such as prisoner’s dilemma, trust game, etc. Further attention will be given to the meaning and the computation complexity of finding of Nash equilibrium as well as Programming at the level of Python and ML software packages (PyTorch, Tensorflow, etc.) will be used to supplement the understanding of the mathematics and algorithms.
MATH 1 or 3, and MATH (8 or 9) or MATH 24, MATH 20 is a plus; and some level of proficiency in a programing language such as C/C++, Julia, Python, R, or MATLAB required