Part I Introduction
1.1 Background
I do think there are some very worthwhile and interesting analogies be- tween complexity issues in computer science and in economics. For exam- ple, economics traditionally assumes that the agents within an economy have universal computing power . . . Computer scientists deny that an al- gorithm can have infinite computing power.
10 1 Introduction
1.1.1 Game theory and computer science
Decision theory, game theory, and social choice theory are well-established fields which involve modeling the interaction between agents. Social choice concerns the aggregation of different self-interested agents’ preferences. It encapsulates various important processes such as voting, markets and auctions where dis- tributed agents want to make joint decisions. Game theory is the study of the con- flict, cooperation and outcomes of interactions amongst multiple agents. Mech- anism design is the design of games in such a way that individual players moti- vated by self-interest satisfy the desired goals of the designer. The desired goal could be individual rationality, budget balance, maximize total social welfare or to elicit truthful behaviour. Mechanism design1has been considered as the inverse of game theory [167].
Game theory, social choice theory and mechanism design, which were tradi- tionally in the domain of economics and decision theory, are increasingly be- ing used by computer scientists as tools to analyse distributed settings. With the growth of the internet, these fields provide an appropriate framework to model agents in the network [81]. Moreover, economics models and paradigms are being examined in the new light of the inherent computational complex- ity of the relevant problems. Nisan [158] elaborates on the two-way flow of ideas between economics and computer science. Not only are algorithmic chal- lenges taking into account social choice and economic paradigms, but various economic interactions such as voting, coalition formation and resource alloca- tion are requiring deeper algorithmic study. Similarly, Tennenholtz discusses the trend of the interaction between computer science/artificial intelligence and game theory/economics [203]. The same trend has also been pointed out else- where [47, 138]. In an earlier paper, Urken [208] shows that voting theory is essential in distributed decision making and network reliability. Rosenschein and Procaccia [187] observe how social choice theory is fundamental to analysing and designing multiagent systems and why algorithmic and complexity exam-
1Hurwicz, Maskin and Myerson received the 2007 Nobel Memorial Prize in Economic Sciences “for
1.1 Background 11
ination is critical in social choice protocols. Wellman [215] points out that an economic approach is fundamental for resource allocation, rationality abstrac- tion and decentralized control. The interface between game theory and computer science is further highlighted by Al Roth [188]. A computational perspective on game theoretic models is fundamental to new developments in computer science, game theory and multiagent systems. A combined game theoretic and algorith- mic approach is even more important because of the convergence of social and technological networks [119].
1.1.2 Algorithmic game theory & computational social choice theory
As the ice separating Game Theory from Theoretical Computer Science is melting, some of the fundamental results in Game Theory come under increased complexity-theoretic scrutiny.
- Fabrikant, Papadimitriou and Talwar [72]
Mathematical economics has been around for decades. Although major de- velopments have been made in presenting predictive theories and sound solution concepts, the treatment has mostly been non-algorithmic. It is essential that the solutions are not only axiomatically desirable and predictive but also computa- tionally tractable. A computational perspective tries to answer various questions which are not tackled in classical economics and game theory: how efficiently can a model be represented? What is the complexity of computing a certain solution? How much memory will be required? Is this the best we can do? If computation is done on a network, how much communication is needed? Work on social choice and mechanism design has ignored such computational concerns till recent times. Therefore, there is a pressing need to revisit concepts in mathematical economics and game theory from a computational point of view. Economic systems work because all the participants try to selfishly optimize their own objectives. Often, this optimization is intractable because of the computational complexity of the optimization or lack of information. In that case, computational considerations are paramount.
12 1 Introduction
The computational complexity of computing social choice functions, rank- ings, various concepts of equilibria, cooperative game solution concepts, tour- nament solutions, power indices, optimal or dominant strategies helps us under- stand what can be computed efficiently and what requires alternative approaches like approximation algorithms, randomized algorithms, parameterized complex- ity and heuristics. As we will see in the thesis, notions of computational in- tractability such as NP-hardness are useful barriers to manipulative behaviour in social choice settings. These have parallels with cryptographic protocols where the lack of efficient algorithms to factorize numbers helps avoid harmful attacks. The approach is that whereas social choice protocols may not be strategy-proof, it is desirable to design them in a way so that they are strategy-resistant. Another aspect of decision theory and game theory, which requires computer science con- siderations, is compact representation. As various models in game theory are im- plemented in computer science applications, there is a need to find more compact representations of games and ways of encoding information.
The interaction of social choice and game theory with computer science in- cludes bounded rationality, computation of Nash equilibrium, algorithmic mech- anism design, price of anarchy, learning in games and efficient representations of games, Byzantine agreement and implementing mediators. Interestingly, this intimate encounter between computer science and game theory dates back to von Neumann who made ground-breaking contributions to both fields. Game theory, decision theory and computer science have had more fruitful developments in re- cent years [186]. In the general realm of decision theory, decision making models have been classified (see Figure 1.1 [127]):
Among these models, simple coalitional games belong to the domains of both decision theory and cooperative game theory. Compared to non-cooperative game theory in which individual agents are analysed, cooperative game theory is con- cerned with analyzing which coalitions will form and how the coalitions should divide the payoff among their members. In recent years, there has been signif- icant work in the theoretical computer science community on non-cooperative game theory. Whereas the computational complexity aspects of non-cooperative
1.1 Background 13
Objectives
One Two or more
One Operations Research Multicrtieria Decision Players Cooperative Games Noncooperative Games Two or more
Fig. 1.1. Decision making models
game theory, such as computing Nash equilibria, have started to be examined by theoretical computer scientists with greater intensity [168], there is a need to revisit cooperative game theory with a computational lens. Yoav Shoham and Leyton-Brown in the introduction of [195] have observed this need. Interestingly, in Chapter 13, we will find a case where cooperative game theory is used to solve a problem in non-cooperative game theory. In modeling decision making by one player, many problems turn out to be combinatorial optimization problems. How- ever, when multiple players are involved in decision making, cooperative game theory [58] has a role to play in maximizing objectives of players and resource allocation. The computational complexity of computing solutions and deciding whether a payoff is in a class of solutions is an important consideration. This
14 1 Introduction
consideration also ties in with bounded rationality which argues that a decision maker can not spend an unbounded amount of resources.
Voting models are not necessarily restricted to analysing political scenarios. Similar interaction happens in multiagent systems and virtual environments. Con- sensus and voting problems arise in meta-search, collaborative filtering and dis- tributed computing [128]. Shoham in a recent survey [194] observes that the in- teraction between computer science and game theory has currently been focused on six areas among which the first three are: 1) compact game representations, 2) complexity of, and algorithms for, computing solution concepts and 3) algo- rithmic aspects of mechanism design. In many respects, these current issues are addressed from the point of view of simple coalitional games.