Fundamentals of Game Theory
In a typical optimization problem, we need to maximize/minimize an objective function by controlling the values of a vector that satisfies a set of constraints. In this case there is only one party that controls the system, and its actions do not depend or are not affected by other parties. However, in practice, there are many situations in which we must make decisions to optimize an objective function in presence of other parties, and their actions can change the outcome we expect. The information about the decisions of other parties may or may not be available to us at the time we make our decisions or moves. Since each party has its own objective and is usually selfish, it will try to maximize its benefit. In such a case, the solution of a normal optimization problem may not result in the best profit for every party. If any party thinks it can achieve a better payoff, it will act alone, and thus, the solution may not be useful. Therefore, we may wish to find a solution (i.e., an equilibrium) that everyone is satisfied with and hence does not want to move. Game theory is able to provide such a solution. It is a branch of applied mathematics that “uses models to study interactions with incentive structures” among different decision-makers. In game theory, we need to anticipate the opponents’ moves and reply with the best action to optimize the objective.
Game theory has a quite young history. It started with the work of Augustin Cournot's Mathematical Principles of the Theory of Wealth in 1938 where he studied a duopoly using formal game-theoretic analysis. Emile Borel's series of papers during 1921–1926 defined strategies of a game. In 1944, game theory was established as a separate mathematical field due to the book Theory of Games and Economic Behavior by Von Neumann and Oskar Morgenstern. This book provided much of the basic terminology and problem setup that is still in use today. Then in 1950, John Nash proved that finite games have always have an equilibrium point, at which all players choose actions that are best for them given their opponent's choices.