Making Do o dle Obsolete: Applying auction mechanisms to meeting scheduling A thesis presented by Chang Xu to Applied Mathematics in partial ful llment of the honors requirements for the degree of Bachelor of Arts Harvard College Cambridge, Massachusetts April 1, 2010 Abstract Current systems for coordinating meetings between people are easily manipulated and potentially produce suboptimal schedules. We propose and evaluate the idea of using an auction system with a virtual currency to generate better schedules between agents who list preferences over meeting times. By developing a computer-based schematic for modeling commitments, we demonstrate that an auction system provides better incentives for participants to truthfully report preferences, which leads to utility gains of 11% on average over a poll-based system like Doodle. This thesis provides an initial proof of validity for using an auction-based mechanism to more easily determine the optimal shared schedule for a set of meetings. By doing this, it makes progress towards the goal of designing a strategyproof and optimal system for scheduling meetings. Acknowledgments I thank David Parkes for being a supportive advisor, an encouraging guide, and an inspiring mentor, without whom this thesis could not have been possible. I am incredibly honored by the amount of support I have received from him. My accomplishments in this thesis are due to his aid in all aspects, from its very inception to its nal edits. I thank Batool Ali for helping me formulate ideas, implement the model, and structure the write-up. I thank Ang Li for reading drafts and providing helpful feedback, Weiqi Zhang for conversations that contributed to the initial design, and Saba Zaidi for moral support. I thank Martin Lysy for assistance with the elegantly terse and undocumented language of R. Lastly, I thank my family and friends. Contents Abstract . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . i Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ii Table of Contents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . iii 1 Introduction 1 1.1 Motivation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 1.2 Related Work . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 1.3 Summary of Contributions . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 1.4 Outline . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 2 Generating the Problem 9 2.1 Modeling Agents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 2.1.1 Standard Preferential Attachment Model . . . . . . . . . . . . . . . 10 2.1.2 Modi ed Preferential Attachment Model . . . . . . . . . . . . . . . . 15 2.1.3 Kronecker Graphs . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 2.2 Modeling Meetings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23 2.2.1 Meetings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25 2.2.2 Tasks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27 2.2.3 Projects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 2.2.4 Priorities . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30 2.2.5 Schedules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 iii CONTENTS iv 2.2.6 Heuristic for Evaluating Assignments . . . . . . . . . . . . . . . . . . 33 3 Auction Design and Agent Strategies 38 3.1 Auction Mechanism . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38 3.1.1 Choosing an Assignment . . . . . . . . . . . . . . . . . . . . . . . . . 39 3.1.2 Adjusting Values . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39 3.1.3 Termination . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41 3.1.4 Multiple Periods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42 3.1.5 Wealth and Banking Rule . . . . . . . . . . . . . . . . . . . . . . . . 42 3.2 Poll-Based Mechanism: Doodle . . . . . . . . . . . . . . . . . . . . . . . . . 43 3.2.1 Translating \Bids" into Poll Responses . . . . . . . . . . . . . . . . . 43 3.2.2 Choosing an Assignment . . . . . . . . . . . . . . . . . . . . . . . . . 44 3.2.3 \Wealth" . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44 3.3 Bidding Strategies . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45 3.3.1 Strategies that Only Depend on Oneself . . . . . . . . . . . . . . . . 45 3.3.2 Strategies that Speculate on Other Agents . . . . . . . . . . . . . . . 47 3.3.3 Hybrid Strategies . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49 3.3.4 Irrational Strategies . . . . . . . . . . . . . . . . . . . . . . . . . . . 50 4 Empirical Game Theory 51 4.1 Evaluating Utility . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51 4.2 Finding Nash Equilibria . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53 4.2.1 Payo Matrix . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55 4.2.2 Evolutionary Search for Equilibria . . . . . . . . . . . . . . . . . . . 55 5 Experimental Results 58 5.1 Experiments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58 5.1.1 Experimental Setup . . . . . . . . . . . . . . . . . . . . . . . . . . . 58 5.1.2 Experimental Parameters . . . . . . . . . . . . . . . . . . . . . . . . 59 CONTENTS v 5.2 Validity of Auction Design . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61 5.2.1 Assignment Choice . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61 5.2.2 Banking Rule . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62 5.2.3 Comparability of Auction and Doodle Mechanisms . . . . . . . . . . 63 5.2.4 Sanity Checks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64 5.2.5 Comparing Di erent Utilities . . . . . . . . . . . . . . . . . . . . . . 66 5.2.6 Random Agent Networks Robustness Check . . . . . . . . . . . . . . 66 5.3 Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68 5.3.1 Auction: Preliminary Results and New Strategies . . . . . . . . . . . 68 5.3.2 Interpreting Pure Equilibria . . . . . . . . . . . . . . . . . . . . . . . 70 5.3.3 Navigating Di erent Mixed Nash Equilibria . . . . . . . . . . . . . . 72 5.3.4 Doodle: Sel sh Strategy Dominates . . . . . . . . . . . . . . . . . . 73 6 Discussion 76 6.1 Auction vs. Doodle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76 6.2 Critique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79 6.3 Open Questions and Future Research . . . . . . . . . . . . . . . . . . . . . . 81 7 Conclusion 83 Bibliography 85 Chapter 1 Introduction Gone are the days when my daily life consisted simply of school, track practice, homework, dinner, violin, and sleep. Now, after almost four years of constantly having too much to do and too little time to partake in everything I nd interesting, I have acquired the habit| common around this neighborhood|of meticulously keeping to-do lists and perpetually planning trajectories, from class to work to extracurriculars to dinner meeting to study group, nally to sleep, maybe, and the cycle starts again. The main complication: most items on that list require multiple people deciding on mutually agreeable times. Scheduling is a di cult and common problem, whose complexity stems from coordinating meeting times among people with di ering calendars. Currently, people schedule meetings on an ad hoc basis through e-mails, Outlook Calendar, or the latest innovation, Doodle, found at http://www.doodle.com. However, these systems consume time to create, produce schedules that are far from optimal, and are inexible when plans change| meetings need to be cancelled and rescheduled all over again. They lack the expressiveness to understand and accommodate people’s preferences for how to use their time. The problem of scheduling meetings would be much simpler if people were not rational beings trying to manipulate the system for their own gain by choosing times most favorable to themselves. The existing mechanisms are easily manipulated because they do not incen1 CHAPTER 1. INTRODUCTION 2 tivize participants to tell the truth about their availability. A person may be very selective about the times that they claim to be available in order to guarantee that meetings will occur during those times, which may be far less convenient for the other attendees. The goal of this thesis is to propose and evaluate the idea of using an auction system with a virtual currency to generate better schedules between agents who have preferences over meeting times. I demonstrate that an auction system, as opposed to a poll-based system like Doodle, provides better incentives for each participant to report accurate preferences by allowing them to better express their choices through placing bids. All else being equal, agents can expect utility gains of 11% on average. I further establish that the most e ective strategies under an auction mechanism do not require any knowledge about others, while acting sel shly often has an adverse e ect on one’s utility. Underneath the auction mechanism, people are incentivized to be more generous with their time, whereas in the poll-based system, sel sh participants bene t the most. This thesis provides an initial proof of validity for using an auction-based mechanism to more easily determine the optimal shared schedule for a set of meetings. By doing this, it makes progress towards the goal of designing a strategyproof and optimal system for scheduling meetings. 1.1 Motivation Traditional ways to schedule meetings involve a tradeo between the time required to reach a decision and the degree to which individuals’ schedules can be kept private. This tradeo is due to misaligned incentives between individual participants and is the underlying reason that these systems are not optimal. Ad hoc methods, such as using e-mails to request meeting times, respect privacy but are ine cient. In such a method, the meeting organizer suggests a time and the participants either accept, or proceed to nd a better time by trial-and-error. People do not need to reveal their schedules, and the outcome is acceptable to everyone involved. However, when trying to reach a consensus in groups of more than just two or three people, this approach CHAPTER 1. INTRODUCTION 3 fails many times before arriving at an acceptable solution, quickly becoming cumbersome. On the other end of the spectrum, methods that depend on syncing participants’ calendar schedules, such as Microsoft Outlook, are e cient but do not o er any privacy. A meeting organizer decides on a mutually convenient time after examining each attendee’s schedule. While an organizer is guaranteed to nd a time where the maximum number of participants are available, this system is undesirable in that it requires everyone to make their schedules viewable by the public. Further, it does not accommodate the notion of priority; availability at a certain time does not necessarily imply a willingness to attend at that time. The concerns about privacy are mitigated in practice because each user can control the level of granularity his schedule is revealed to the public, from everything to free-busy information to nothing at all. However, since the organizer depends on the speci city and accuracy of her knowledge of others’ schedules to choose a candidate meeting time, her judgment is only as good as the information provided by the other participants. Doodle o ers a compromise between privacy and e ciency. This 2007 Swiss software startup provides an online tool for poll-based meeting scheduling. The organizer sets up the poll with an initial list of suggested times, participants indicate their availabilities, and nally the organizer chooses a time based on the information collected. It is relatively e cient in that it is easy to determine the optimal time slot, but it requires participants to provide availability information for the entire set of possible times. It maintains some privacy in that participants can give false information, perhaps to understate the degrees of freedom in their schedules. In fact, rational agents would not be truthful. For a rational agent to guarantee the best outcome for herself, assuming that everyone else truthfully reports their availability, she should only choose the most convenient time slots. However, if all agents behave in this manner, the problem can be over-constrained and the meeting may never be scheduled. Therefore the dominant strategy is a delicate balance between sel shness and practicality, to ensure that a time is chosen while simultaneously trying to choose an optimal time. Scheduling meetings on Doodle is a strategic game, but the system CHAPTER 1. INTRODUCTION 4 lacks the expressiveness to understand and synthesize people’s preferences, thus potentially leading to suboptimal outcomes. The popularity of tools like Doodle for the student group president and Outlook for corporations indicates a clear demand for an e cient scheduler to facilitate collaboration while maintaining privacy. An ideal, strategyproof version of such an application would require busy go-getters to merely report their commitments and the priority of each. Further, it would guarantee that these individuals would receive their optimal schedules only if they reported their preferences truthfully. Such an accomplishment would reduce, if not eliminate, the need to manage one’s schedule for everyone from workers at rms to busy faculty members and students at college campuses. 1.2 Related Work This thesis ties together various topics in economics and computer science, especially mechanism design and game theory. The intuitions for the ideas we explore are motivated by the area of mechanism design in economic theory, which studies designs that maximize social welfare. An important criterion characterizing these mechanisms is whether they can be strategically manipulated, that is, if representing preferences which deviate from the truth may lead to a better outcome. A mechanism is incentive compatible, or strategyproof, when such a manipulation is not possible [5]. This property is desirable in many settings involving practical market designs, both for markets without money, such as the labor market for medical residents, and those with money, like the auction for radio spectrums [7, 8, 9]. This auction mechanism for radio spectrums is designed in a such way that straightforward bidding leads to the optimal outcome, and further, it is the dominant strategy if goods are substitutes [9]. Over the course of a decade, this mechanism was expanded and improved to absorb increasing areas of complexity in the problem space. The e cacy of the auction model applied to radio spectrums, previously distributed freely, shows that such a mechanism is a viable choice in CHAPTER 1. INTRODUCTION 5 designing a market for a commodity such as time. The impact of the described variations on welfare outcomes indicate positive prospects for such a market. On the other hand, Budish and Cantillon [1] make the case that strategyproof mechanisms should not be an inexible design requirement. They show that manipulations of a course scheduling mechanism at the Harvard Business School has generated better welfare outcomes than Random Serial Dictatorship, the only known strategyproof mechanism in multi-unit assignment problems. Further, they argue that choosing to manipulate the mechanism over truthfully reporting preferences has caused meaningful welfare loss. In nding practical designs for markets, I have followed their advice by choosing an auction mechanism to investigate the problem space of scheduling meetings. In particular, it is not immediately apparent whether such a mechanism is manipulable and further leaves room for use of a virtual currency to induce truthful reporting. Both of these requirements are not satis ed by Doodle. More closely related to a market for scheduling meetings is Sutherland’s example of a futures market for computer time, a continuous auction scheme that allocated a PDP-1 computer to Harvard University users in the 1960s [10]. Its design combines insights from similar systems at the Department of Defense and MIT’s Lincoln Laboratory. I explore Sutherland’s mechanism as a variation. Even though the auction was carried out by users writing their bids on transparent paper with colored felt-tipped pens, its successful implementation is a proof of concept that the idea of people bidding on times is not too outlandish to actually accomplish. The implementation of these ideas is informed by generative models in computer science literature to develop realistic and tractable models of agents, meetings, other commitments, and their preferences. In generating agent networks, we consider approaches that are theoretically elegant, like the preferential attachment model [4], as well as one that is based on tting to real-world networks, by Leskovec et al. [2]. In the absence of models developed speci cally for people who have meetings, I implement an original model derived from these CHAPTER 1. INTRODUCTION 6 theoretical approaches, as well as the aforementioned models, and discuss the merits of each. I draw upon empirical game theory in choosing methodology to evaluate the optimality of the auction mechanism and strategies played in equilibrium. Reeves et al. [6] apply algorithms from evolutionary game theory to analyze market-based scheduling for tasks on a shared resource and derive symmetric mixed Nash equilibia for constrained instances. They are constrained to using these algorithms because the strategic space for bidding agents is far too complex for game theoretic analysis. Our experiment faces the same challenges since each one of many agents may choose from a variety of bidding strategies. Borrowing the approach presented by Reeves et al. to analyze smaller cases allows us to develop insights into the larger problem. 1.3 Summary of Contributions Current systems of scheduling meetings produce seemingly suboptimal schedules because they do not su ciently incentivize participants to be truthful in reporting time preferences. This thesis develops a computer-based schematic of a real-life application that captures the complexity of people’s preferences, anticipates possible strategic manipulations, and attempts to make the best decisions in arranging meetings. In order to determine the most preferred arrangement of people’s commitments, I rst develop a heuristic function which maps these commitments, weighted by priority, into their scheduling preferences. Individuals collaborating on projects share commitments and therefore need to agree on times. Thus, it is logical to model the interconnectedness of schedules over the social and professional connections between people. To this end, I implement and compare three di erent models for generating realistic friendship networks, two based on preferential attachment and one based on Kronecker graphs. Next, I design the auction mechanism through which people can bid on the time at which a certain meeting is to take place. I use heuristic bidding strategies played in the auction by CHAPTER 1. INTRODUCTION 7 simulated agents to model how individuals choose preferred times. The simulation becomes analogous to a strategic game, where each agent’s goal is to obtain an optimal schedule for himself. An agent may attempt to achieve the optimal outcome by bidding with various strategies and so distorting his reported preferences. In order to measure the e cacy of the auction mechanism, I implement an alternate, poll-based, mechanism as a baseline. This poll-based mechanism simulates Doodle and attens preferences into binary ordinal information. I apply the methods of empirical game theory to analyze the performance of the two mechanisms, determine which strategies are most e ective, and consider the impact of di erent monetary policies. Collecting results from many simulations, I calculate expected payo matrices of agents playing certain strategies against others and iteratively seek symmetric mixed Nash equilibria. Strategies that depend only on information known about oneself perform relatively well in equilibrium vis- a-vis manipulative strategies that speculate on information about others. I compare the expected payo s in equilibrium to demonstrate that the auction mechanism creates schedules which satisfy the preferences of more individuals than the poll-based mechanism; further, it incentivizes truth-telling in reporting preferences. 1.4 Outline The remainder of this thesis is as follows: Chapter 2 lays out the process to generate instances of the meeting scheduling problem, sequentially creating the agent network, meetings, and projects to encapsulate the entire set of commitments agents face. Using the prioritization of these projects, I put forward a heuristic valuation of an agent’s preferences over his use of time. Chapter 3 describes the design of an auction mechanism that systematically schedules these meetings, as well as bidding strategies with which agents represent, or misrepresent, their preferences in hope of optimizing their outcome. Figure 1.1 summarizes this model thus far. CHAPTER 1. INTRODUCTION 8 START §2 Generating the Problem §2.1 Modeling Agent Networks standard preferential modified preferential attachment attachment Kronecker graphs irrationalmixed speculate onother agents only depend on oneself §2.2 Modeling Meetings meetings doodleauction projects SCHEDULES priorities Figure 1.1: High-level research methodology. Chapter 4 presents a framework for applying empirical game theory in evaluating t outcomes. Chapter 5 provides proof to validate the assumptions behind the model presents the experimental results. Chapter 6 discusses the results, addresses ma critiques, and o ers directions for future work. Chapter 7 o ers concluding thoughts values §3 Simulating the Auction §3.3 Bidding Strategies 3 . 1 3 . 2 S c h e d u l i n g M e c h a n i s m s § Chapter 2 Generating the Problem In this chapter I develop a model for the meeting scheduling problem, encompassing a social network of agents, meetings they share with each other, other commitments, as well as their preferences for time based on priorities. I provide a brief de nition here and describe each component in detail in the following sections. De nition 2.0.1. A meeting scheduling problem is a model given by the 4-tuple, MSP = fA;M;T;vg, where A= fA;Egis the set of agents. Represented as a graph, nodes correspond to agents and edges correspond to relationships where meetings can occur. This de nition is expanded in Section 2.1. M= fM;K;P; ; gis the set of commitments mapped to the agents, including the sets of meetings, tasks, and projects, along with the parameters for the maximum number of attendees at a meeting and the maximum priority level of a project. This de nition is expanded in Section 2.2. Tis the set of time slots in a given period where the meetings may be scheduled. vis the value function that describes the preferences of agents for attending meetings at di erent times. This de nition is expanded in Section 2.3. 9 CHAPTER 2. GENERATING THE PROBLEM 10 2.1 Modeling Agents People who are connected in some way are more likely to have meetings with each other and so their schedules are interdependent. In order to develop a realistic model of people’s various commitments, we need to rst simulate a social network of agents. I capture the relationships between the people who may wish to meet, such as friends, acquaintances, and colleagues, in a directed graph GA= (A;E), where agents are vertices Aand \friendship" links are edges E. De nition 2.1.1. (Friendship) Let the friendship of agent ito jbe denoted by the edge (i;j) 2E. Edges are asymmetric. We explore three models in describing relationships among agents. We rst present two symmetric models based on the preferential attachment and uses undirected graphs. Later, we present an asymmetric model based on Kronecker graphs and uses directed graphs. Asymmetry is useful in the case where everyone wants to meet with Bill Gates, but he may not necessarily reciprocate the inclination. We will use fi;jgto represent undirected edges and (i;j) to represent directed edges from agent-vertex ito j. 2.1.1 Standard Preferential Attachment Model A social network can be modeled by adding agents one at a time and inserting links to existing agents. This approach lends itself nicely to the preferential attachment model, which has been shown to approximate certain power-law-like distributions such as that of web links, income, le sizes, and mutations within a certain genera of plants [4]. We apply this model to build the friendship network. Most models are variations upon the following scheme, as presented by Mitzenmacher [4]. Each newcomer to an existing network makes one friend, where the choice of the friend is more likely to be a popular agent but can also be more random. Our implementation di ers from the standard model in the following aspects: CHAPTER 2. GENERATING THE PROBLEM 11 Friendship links between agents are undirected: we do not distinguish between inlinks, where the edge is directed towards the agent, and outlinks, where the edge is directed away from the agent. Otherwise everyone would only have one friend, which makes for an uninteresting meeting scheduling problem. Links must be between two di erent agents and cannot be to oneself; self links have no correlation to real scenarios. By the same reasoning, the base case is two connected agents instead of one agent with a link to himself. First, we create agents 1;2, and add the edge f1;2g. Then, for each subsequent agent i, with probability <1, we add the edge fi;jg, where jis chosen uniformly at random from the existing agents, 1 j<i. With probability 1 , we add the edge fi;jgwhere jis chosen with probability proportional to the number of friends jcurrently has, represented by its degree, d(j). Figure 2.1 illustrates a small network of 16 agents generated by this model. The initial agents in the population are likely to become overwhelmingly popular, but the vast majority have only a few friends. Next, we show that despite the aforementioned di erences, our implementation are in line with the standard model in that it leads to a social network where the number of friends is distributed as a power law in equilibrium. We adapt the proof by Mitzenmacher [4]. De nition 2.1.2. (Power Law Distribution) A nonnegative random variable Xis said to have a power law distribution if aPr[X x] cx for some constants c>0 and a>0. Here, f(x) g(x) represents that the limit of the ratio CHAPTER 2. GENERATING THE PROBLEM 12 0 12 4 11 14 3 5 6 13 9 8 10 15 7 12 Figure 2.1: An agent network generated by the standard preferential attachment model with the parameters jAj= 16 and = 0:3. Agents are represented as circles labeled with their indices, and friendship links are undirected edges. goes to 1 as xgrows large, limx!1 cxaPr[X x] = 1: where the meaning is clear, be the number of agents with j friends when th P tagents in the system. Then, for j>1, the probability that Xj roof. Let Xj(t), or simply Xj increases is the sum of the probabilities that a newcomer chooses to befrie with j1 friends by (a) choosing at random and (b) choosing proportionately of friends: Xj1t + (1 )(j1)Xj12t : Note that the second denominator, the total number of friends in the system, is 2tin our implementation because each additional agent adds a degree of 1 for himself as well as for his friend. Similarly, the probability that Xjdecreases is: Xjt + (1 )jXj2t : CH APT ER 2. GE NE RAT ING THE PR OB LE M 13 T h e fol lo wi n g di er e nti al e q u ati o n d es cri b es th e gr o wt h of Xj fo r j> 1. M or e sp ec ic all y, it d es cri b es th e co nti n u o us a n al o g u e of thi s di sc re te pr oc es s: dXjdt = (X j1 )t Xj + (1 )((j1)Xj1jXj) 2t : and X1 Another departure from Mitzenmacher’s proof is that we treat both X0 0, there are never any agents with no friends. For X1 0 and X1 are respectively: X1t + (1 )X12t 2t= 1 (1 + )X1 dX0dt = 0 dX1dt = 1 as sp ec ial ca se s. F or X, e ac h n e w co m er al w ay s b e gi ns wi th o nl y o n e fri e n d, b ut h e m ay b ef ri e n d a n ot h er a g e nt al so wi th o n e fri e n d. T h e di er e nti al e q u ati o ns th at d es cri b e th e gr o wt h of X S u p p os e in th e st e a dy st at e, Xj (t) = cjt , th at is, a g e nt s wi th j fri e n ds co ns tit ut e a fr ac tio n cj of th e to tal a g e nt s. T h e n w e ca n su cc es si ve ly so lv e fo r e ac h c, b e gi n ni n g wi th c1 (c 0= 0 tri vi all y) :j dX1dt = 1 (1 + )X1 1 1 j for = 23 + j c 1 2t c= 1 c 1 + 2 More generally, using the equation for dX =dt, we nd a recurrence describing c CHAPTER 2. GENERATING THE PROBLEM 14 j1 j12t j12 Xt + j2t j j j>1, X t+ j (1 )(j1)X cj dXjdt = = c (2 + 2 + j(1 )) = c (1 )jX j 1 + (1 )(j1)c (2 + (j1)(1 )) c j1 cj cj cj1 = 1 3 2 + j(1 ) We use this recurrence to determine exactly. For large j, cj = 1 3 2 + j(1 ) 1 3 1 1 cj j cj1 Asymptotically, for the above to hold, we have cj cj 3 k= Pj kZ1 cj c 3 1 1 0 2 1 k k jk for some constant c0 for some constant c. We consider the behavior of the tail distribution, c, and con rm that it converges to a power law. We have: cj dj c j=k Xcj3 1 . Since tail behavior converges to a power law, the distribution is a power law. Figure 2.2 illustrates a large network of 30,000 agents generated by this model. The linear relationship in the log-log plot con rms that it is a power law distribution. The standard preferential attachment model has the advantage in that it has been well-studied. However, a power law distribution implies that there is a great disparity in the popularity of agents, a few of whom are extremely popular. Another method that produces a more equal distribution of friends may potentially provide a more realistic model of individual popularity. We explore a modi ed model in the next section. CHAPTER 2. GENERATING THE PROBLEM 15 2 5 10 20 50 100 200 5 20 50 200 1000 5000 Frequency 1 10 100 1000 10000 Number of Agents Number of Friendship Links (b) Histogram with logarithmic binning 1 10 100 1000 10000 Number of Friendship Links (a) Log-log plot of number of friends per agent Figure 2.2: A large (jAj= 30;000) network generated by the standard preferential attachment model shows an asymptotically linear relationship between the frequency in the number of friends per agent to the number of agents, which is characteristic of a power law distribution. Given = 0:3, we expect c1jAj= (2=(3 + ))jAj= 0:606 30000 = 18;181 agents to have only one friend, and the actual number is very similar: 18,124. In the loglog plot in Figure 2.2a, results are noisy in the tail towards the right-hand side because the sample size for the people with most number of links is small, so statistical uctuations are relatively large. We applied logarithmic binning in Figure 2.2b to smooth out the irregularities and more clearly show the linear relationship. 2.1.2 Modi ed Preferential Attachment Model Instead of allowing each agent to only make one friend when entering the network, we allow them to possibly make more. As before, we rst create two connected agents and add subsequent agents in turn. For each new agent i, we consider adding the edge fi;jgfor each existing agent jwith a probability that is positively related to the degree of j. This probability is given by:Pr[fi;jg2E] = si1 k=0 d(k) Pd(k) :where d(j) denotes the number of friends jcurrently has, and 0is a parameter for the degree of sociability within agent network. Normalizing by the total number of friendships and taking the square root allow us to achieve a more realistic distribution. Figure 2.3 illustrates a small network of 16 agents generated by this model, and Figure 2.4 illustrates a larger network of 5,000 agents. We do not see power law behavior in CHAPTER 2. GENERATING THE PROBLEM 16 neither the histogram nor the log-log plot, and instead we see more similarity between the popularity of agents. 14 0 12 5 15 1 2 3 10 4 13 9 7 6 11 8 0= 0:3.Figure 2.3: An agent network generated by the modi ed preferential attachment model with the parameters jAj= 16 and 1 5 10 50 100 500 5000 Number of Friendship Links (b) Log-log plot of number of friends per agent 0 50 100 150 Number of Friendship Links (a) Histogram of number of friends per agent 1 2 5 10 20 50 100 Number of Agents 0.000 0.010 0.020 Percent of Agents Figure 2.4: A large (jAj= 5;000) network generated by the modi ed preferential attachment model with the sociability parameter 0= 0:3. This network does not show an asymptotically linear or near-linear behavior, suggesting that the distribution is neither power law nor lognormal. CHAPTER 2. GENERATING THE PROBLEM 17 2.1.3 Kronecker Graphs An alternate approach is to consider the properties of the network as a whole, and assign relationships between agents in a way that satis es those properties. The rationale is that one community of friends is likely to be similar to another community of the same scale, and a smaller community can be imagined as a microcosm of the entire graph. Leskovec et al. propose to model networks with this top-down approach using Kronecker graphs, named after a non-standard matrix operation. Using data from existing networks to t the parameters of the Kronecker graphs model, they claim to be able to simulate all observed structural properties of certain real networks with synthetic counterparts [2]. We apply their algorithm, KronFit, to t a data set from the online blogging community LiveJournal, and use the resulting parameters to generate networks with similar properties but of arbitrary sizes. De ning Kronecker Graphs The idea is to use the Kronecker product of matrices to generate graphs. Starting with an initiator graph K1, with N1nodes and Eedges, we can recursively produce successively larger graphs K2;K31;::: such that the kthgraph, Kk, will have Nk= Nk 1nodes. Since the adjacency matrix does not need to be symmetrical, Kronecker graphs are inherently directed graphs. First, let us de ne the Kronecker product of matrices. De nition 2.1.3. (Kronecker Product of Matricies) Given matrices A = [a0] and B, of sizes n mand n m0i;jrespectively, the Kronecker product of matrices, AB, is of CHAPTER 2. GENERATING THE PROBLEM 18 dimensions (n n0) (m m0) and is given by, AB= 0 BB B B B B B@a1;1B a1;2B aB aa2;1B a2;21;mB aB .. .n;1B a. . .n;2. . .B a2;m. . .n;mB1 CC C C C C CA Then, the Kronecker product of two graphs is the Kronecker product of their adjacency matrices. De nition 2.1.4. (Kronecker Product of Graphs) Given graphs Gand Hwith adjacency matrices A[G] and A[H] respectively, the Kronecker product of graphs, GH, is the graph with the adjacency matrix A[G] A[H]. Note that if each node in GHis represented as an ordered pair X, with ia node of Gand ja node of H, then an edge would join Xijto Xklijif and only if (X) is an edge of Gand (Xj;Xl) is an edge of H. In other words,i;Xk (Xij;Xkl) 2GH i (Xi;Xk) 2Gand (Xj;Xl) 2H We generate a graph by iteratively using the Kronecker product to produce a growing sequence of its adjacency matrices. De nition 2.1.5. (Kronecker Power) The kth Kronecker power of K1, K[k] 1 k), is given by, = Kk = K1 K1 :::K1 k1 K1 K[k] 1 (abbreviated to K =K k times| {z } where A[K1 De nition 2.1.6. (Kronecker Graph) The Kronecker graph of order kis de ned by the adjacency matrix A[K] is the Kronecker initiator adjacency matrix. [k] 1], CHAPTER 2. GENERATING THE PROBLEM 19 Kronecker graphs are self-similar in the way they are constructed. In producing Kfrom Kk1, we would expand each node of Kk1by converting it into a copy of K1k, then we join these copies together according to the adjacencies in Kk1. The underlying intuition for this process is very natural. Leskovec et al. explains, \one can imagine it as positing that communities within the graph grow recursively, with nodes in the community recursively getting expanded into miniature copies of the community. Nodes in the sub-community then link among themselves and also to nodes from other communities." So far these Kronecker graph products are deterministic given some K, but we also want to allow for randomness so that each part of the graph is similar to, but not a carbon copy of, the next. The solution is to use a stochastic initiator matrix, P11, where each entry indicates the probability that agent iis friends with agent j. It follows that each entry of Pkis similarly stochastic. Thus, given the same set of initial parameters in the form of the stochastic initiator matrix, we can generate many di erent graphs that share similar properties. Now that we have a framework for growing a Kronecker graph from a set of initial parameters, P1, we need to develop an algorithm that can best t those parameters from real networks. Fitting Initial Parameters Given a real network, the KronFit algorithm [2] nds the parameters of P11that are most likely to generate it. The intuition is to directly match the adjacency matrices of real network Gand its synthetic counterpart K. If the adjacency matrices are similar, then similarity in the statistical and structural properties will follow. If P(GjP) is the likelihood that a given P1generated graph G, then the desired P11is the parameter values that maximize this likelihood under the stochastic Kronecker graphs model. For standard notation, let P. Formally, we are solving: P(Gj ): argmax CHAPTER 2. GENERATING THE PROBLEM 20 For convenience we work with the log-likelihood l( ) and solve for the maximum likelihood estimator^ = argmax l( ), where l( ) is de ned as: l( ) = logP(Gj ) = log X = log X P(Gj ; )P( j )P(Gj ; )P( ) where P(Gj ; ) is the likelihood that a given initiator matrix and permutation gave rise to the real graph G. We can calculate this probability by modeling edges as independent Bernoulli random variables parameterized by the parameter matrix , such that each entry Puvof P= Pk= [k]gives the probability of edge (u;v) appearing. The likelihood is: u; v]); (2.1) (1 P[ w h e r e (u;v)=2G P(Gj ; ) = Y(u;v)2GP[ u; v] Y as the ith @ @ l( ) = P @P(Gj ; )P( ) P= P @ 0P(Gj ; 0)P( @logP(Gj ; ) = X@ 0)P(Gj ; )P( ) P(Gj )@logP(Gj ; ) @ P( jG; ) w e d e n o t e i element of the permutation , and P[i;j] as the element at row iand column jof matrix P. To nd the that maximizes the likelihood, a grid search is complete but ine cient. Instead, we take the log-likelihood of one particular , compute its gradient, then use it to update the current estimate of and move towards a solution of higher likelihood. The gradient is given by: To avoid getting stuck in local minima, KronFit uses random restarts. Although these equations provide a framework for nding the optimal stochastic initiator matrix to t G, naive approaches to evaluating them requires a running time that is CHAPTER 2. GENERATING THE PROBLEM 21 infeasible for large problems. KronFit applies sampling and approximation techniques to evaluate P(Gj ) in linear time O(E). The rst di culty arises from the node correspondence problem. If graph Ghas a set of N nodes, each with a unique label, then there are N! di erent permutations of labels to nodes. Since two isomorphic graphs that have di erent node labels should have the same likelihood, then in computing the likelihood P(G) one has to consider all node correspondences P(G) =P 2P(Gj )P( ), where the sum is over all N! permutations of Nnodes. Moreover, as equation (2.1) takes O(N2) and needs to be evaluated N! times, just calculating one likelihood P(Gj ) requires O(N!N) running time. KronFit surmounts the rst challenge by sampling instead of evaluating all of them, which reduces the running time to O(kN). The second di culty is that naively calculating the log-likelihood l( ) and its gradient @ @ 2l( ) take time quadratic in the number of nodes. We observe that real graphs are sparse, the number of edges is not quadratic but rather almost linear in the number of nodes, E N. So KronFit rst calculates the likelihood of a graph with zero edges and then corrects for the edges that actually appear in G, using Taylor’s approximation to further speed up the process. The gradient can also be e ciently calculated by exploiting the fact that two consecutive permutations and 0di er only at two positions. Thus given the gradient from the previous step, one only needs to account for the swap of two rows and columns of the gradient matrix @P=@ to update to the gradients of individual parameters. Fitting to Data Leskovec et al. [2] use KronFit to demonstrate that stochastic Kronecker graphs is a practical model to t a variety of real networks, including emails, blogs, collaborations, and citations. The network data set we found to be the closest to our purpose is that of friendship links and community membership on LiveJournal [3]. LiveJournal is a free on-line community CHAPTER 2. GENERATING THE PROBLEM 22 with almost 10 million members, a signi cant fraction of whom are highly active. We use the KronFit algorithm to nd the optimal initial parameters for the LiveJournal data, P1= [0:8967;0:5978;0:5978;0:09963]. Figure 2.5 illustrates a small network of 16 agents generated by this model with the tted parameters. 13 3 11 7 0 6 9 15 10 4 8 2 12 Figure 2.5: An agent network generated with the Kronecker graphs model, with jAj= 2= 16. The initial parameters, P14= [0:8967;0:5978;0:5978;0:09963], were tted to the social network of friendship links and community membership on LiveJournal [2]. Figure 2.6 illustrates a large network of 1,048,576 agents generated using Kronecker graphs. The log-log plot of the distribution of number of friends per agent shows a nearlinear asymptotic relationship, though it appears to be more irregular than that of the standard preferential attachment model. The Kronecker graphs model o ers several advantages. First, it allows us to obtain parameters using real network data. Second, it simulates properties observed in various real networks. Third, it is easily scalable as large networks can be tted as well as generated CHAPTER 2. GENERATING THE PROBLEM 23 1 5 10 50 100 500 Number of Friendship Links (b) Histogram with logarithmic binning 1e+00 1e+02 1e+04 1e+06 Number of Friendship Links (a) Log-log plot of number of friends per agent Figure 2.6: A large (jAj= 220 1 2.2 Modeling Meetings People meet with people they know. = 1048576) agent network generated with the Kronecker graphs model. The initial parameters, P= [0:8967;0:5978;0:5978;0:09963], were tted to the social network of friendship links and community membership on LiveJournal [2]. We applied logarithmic binning in Figure 2.6b to smooth out the irregularities on the right. in linear time. For these reasons, we use agent networks generated with the stochastic Kronecker graphs model for the rest of the paper. Frequency 5e+01 5e+02 5e+03 5e+04 1 100 10000 Number of Agents In this section, we describe our model for meetings, other commitments, as well as an agent’s prioritization of them in order to realistically simulate his preferences in scheduling. We make the following assumptions. Though some are simplifying, they do not limit the ability of our model to generalize to most real-world scenarios. In the real world, each attendee in a meeting is likely to be connected to another attendee, and people meet through a chain of acquaintances. So in our model, we impose the condition that there must exist a walk in the friendship graph among the attendees of a meeting. Commitments that are not meetings a ect an agent’s availability for meetings. CHAPTER 2. GENERATING THE PROBLEM 24 These are commitments that require only one agent, so we call them tasks. Some commitments have deadlines. After their deadlines, it would not make sense to complete them at all. Commitments are frequently related. Much of the di culty in scheduling arise from dependency relationships between items on the to-do list, i.e. grocery shopping must precede cooking dinner. We capture these dependencies by grouping tasks and meetings into projects, where they must be completed in the designated sequence. We assume that agents are indi erent between schedules as long as tasks are completed in order of dependency and before the deadline, if one exists. A project may consist of tasks leading up to a meeting. We identify the relationship between tasks and meetings because we are mainly interested in meeting scheduling. Whether tasks are considered as work leading up to a meeting, or as work resulting from a meeting, the two cases are symmetrical. Without loss of generality, we choose the rst interpretation. An extension that allows for dependency relationships between projects would capture the case where there may be work leading up to and resulting from a meeting. Each meeting or task takes one unit of time. This assumption, though unrealistic, is generalizable. Longer tasks can be thought of a combination of tasks of unit length within the same project, where they are related by dependency relationships. But to account for a meeting that spans multiple units of time, we can again turn to an extension that allows for dependency relationships between projects. Projects have priorities. CHAPTER 2. GENERATING THE PROBLEM 25 These priorities translate to the value an agent gains from completing a task or attending a meeting, so the tasks and the meeting making up the project inherit those priorities. There are no externalities between projects. We assume that projects capture all dependency relationships between commitments, so an agent does not perceive additional (or diminished) value from completing two projects. An agent’s utility does not decrease if he is not able to complete a commitment. The value of an unscheduled commitment is 0. 2.2.1 Meetings A meeting is de ned in two parts: the agents who are requested to attend and the deadline it should occur by, if one exists. Meeting attendees are chosen such that there exists a sequence of connections between each pair. De nition 2.2.1. (Meetings) Let meetings be modeled by the bipartite graph GM= (M[A;E). Each edge (i;j) 2EMMwhere i2M, j2Adenotes that meeting ihas agent jas an attendee. If (i;j) 2E, then there must exist a walk between all j2R(i) in the friendship network GAM, where R(i) denotes the range of i. In the interest of realism, we include a capacity constraint that takes into account both the number of time slots in a period as well as how busy agents are on average in the network. It aims to prevent some agents from having an unsatis able amount of requests for meetings. De nition 2.2.2. (Capacity Constraint) The capacity constraint limits the number of CHAPTER 2. GENERATING THE PROBLEM 26 meetings an agent is requested to attend, given by: d(i) max 2jTj; jMj ; jAj . where d(i) denotes the degree of agent-vertex i, for i2GM Implementation The implementation is as follows. For each meeting, 1. Choose the number of attendees by drawing a random integer from [2; ]. 2. Choose the rst attendee from agents with non-zero number of friends. 3. Choose the second attendee from the friends of the rst attendee. 4. Choose each subsequent attendee from the combined pool of friends of the attendees without discarding duplicates. Thus, the probability that an agent is chosen is proportional to the number of friends he has who are also attending the meeting. 5. If at any step the chosen agent is at capacity, choose another agent. 6. This process terminates in one of three ways: (a) If enough attendees have been added, then continue onto the next meeting. (b) If the number of attendees required is greater than the number of unique friends of all the attendees combined, the process stops and no more agents are added. Continue onto the next meeting. (c) If no other agent from the list of friends is able to entertain another meeting request, the process stops. If there is only 1 attendee so far, then start over from step 1 with the current meeting. 0.00 0.05 0.10 0.15 0.20 Density CHAPTER 2. GENERATING THE PROBLEM 27 Due to step 4, agents with more friends are likely to have more meetings than agents who are not as well-connected. Then, because of the latter two termination conditions, even though we had initially drawn the number of attendees from an uniform distribution, the distribution of the actual number of attendees per meeting is skewed right. On average, each meeting is likely to have slightly less than =2 attendees. Figure 2.7 shows the distribution of meetings per agent. Given the parameters in this scenario, some agents reach their capacity of 40 meetings, while some, mostly friendless agents, do not have meetings. There is a local maximum at slightly less than 10, because agents have a little below jMjjAj = 2:5 4 = 10 2 meetings on average. 0 10 20 30 40 meetings Figure 2.7: Number of meetings per agent with parameters jAj= 1;024 agents, jMj= 4;096 meetings, jTj= 20 time slots, and a maximum of = 5 agents per meeting. 2.2.2 Tasks Tasks encapsulate the commitments that require only one agent. We further divide tasks into two types: xed tasks if they have to be done at a designated time, and exible tasks if they do not, but a exible task may have a deadline. CHAPTER 2. GENERATING THE PROBLEM 28 = (K[A;EK K De nition 2.2.4. (Fixed Tasks) Fixed tasks is a subset K xed xed !Tdenote the time that task k2K xed xed is assigned. exible = ;. e nition 2.2.3. (Tasks) Let tasks be modeled by the bipartite graph GK De nition 2.2.5. (Flexible Tasks) Flexible tasks is a subset K [Kexible = Kand K xed \Kexible We have the identities: K ). Each edge (i;j) D 2E, where i2K all i2K. K. Let the time function t(k) : K K. 2.2.3 Projects Projects group together meetings and tasks that depend on each other such that they must be completed in the designated sequence, and they are either all scheduled or none at all. At the beginning of each time period, we generate a static system of projects for each agent. We only consider the following types of projects and ignore other combinations that can be equivalently expressed in a way that has been captured. For example, a series of exible tasks that must occur before a xed task is equivalent to a type 1 project which describes the xed task, and a type 5 project which describes the series of exible tasks that must occur before a certain deadline. 1. A xed task, e.g. a class, a conference, sleep 2. A meeting without a deadline, e.g. club meeting, doctor’s appointment 3. A meeting with a deadline, e.g. lunch at a restaurant before a gift card expires 4. A series of exible tasks, e.g. a series of chores 5. A series of exible tasks with a deadline, e.g. a problem set in parts, due on a certain date 6. A series of exible tasks followed by a meeting, e.g. work related to a group project CHAPTER 2. GENERATING THE PROBLEM 29 7. A series of exible tasks followed by a meeting with a deadline, e.g. work related to a group project due on a certain date In order to formalize the concept of projects, we must rst develop the notion of precedence of items within a project. De nition 2.2.6. (Precedence) Given iand k, iprecedes kif imust be completed before k, denoted i k. There are three sets of values for i;k: 1. Between tasks: i;k2Kexible 2. From task to meeting: i2Kexible;k2M 3. Before a deadline: i2Kexible [M;k2T Precedence is clearly transitive: if a band b c, then a c. De nition 2.2.7. (Projects) Let a project be modeled by a series of precedence constraints between tasks and meetings, all assigned to the same agent, x. There are two sets of values for xi:1 x2 xn 1. If there is only one item, then it can be a xed task, a exible task, or a meeting. n= 1: xi2K[M 2. If there are two items or more, then they can be a series of exible tasks, perhaps ending with a meeting. n>1: xi2Kexiblefor i2f1;:::;n1g, xn2Kexible[M De nition 2.2.8. (Project Function) Let the project function r(i;j) : K[M !f0;1g represent whether i;jare in the same project: r(i;j) = 1 i (i j) _(j i); where _represents the disjunction, OR. CHAPTER 2. GENERATING THE PROBLEM 30 Implementation For each agent, we iterate through all their assigned meetings and create projects until every meeting is associated with a project. As a result, for an agent, the number of projects is correlated with the number of meetings; people who have many meetings often have more work that are associated with those meetings as well as work that are unassociated. In an extreme case, an agent that does not have any meetings would also not have any projects. However, this scenario is trivially reasonable because this agent does not need to coordinate with the schedule of any other agent, so he is free to make his own optimal schedule. We generate projects with the following state machine, as illustrated in Figure 2.8. From the start state, with probability s;f, we have a type 1 project, which is a xed task with a time randomly chosen from T. With probability s;m, we have a type 2 or 3 project, which consists of the next unassociated meeting. With probability 1 , we have a project of type 4, 5, 6, or 7, all starting with a exible task. The exible task is then followed by a deadline with probability t;ds;c, a meeting with probability t;ms;m, and another exible task with probability 1 . The meeting is followed by a deadline with probability m;dt;dt;m. The latter task is followed by a deadline with probability t;d, and so on. All the probabilities lie between 0 and 1. Figure 2.9 presents some of the properties of the project generator. In the presence of the capacity constraint on meetings, agents take on a reasonable number of commitments. 2.2.4 Priorities De nition 2.2.9. (Priority) The priority pi(j) of a meeting or a task, j, is its level of importance to agent i, as well as the inherent value that igains from its completion. The priority of each project is a random integer drawn from [1; ]. Each component of a project then inherits the priority. The value for the entire project is additive. CHAPTER 2. GENERATING THE PROBLEM 31 γ _{s,f} Meeting γ _{m,d} γ _{t,d} γ _{s,m} Deadlin e Fixed Task 1- γ _{s,c}γ _{s,m} S T A R T γ _{t,m} 1- γ _{t,d}- γ _{t,m} Flexible Task Figure 2.8: Project generator represented as a nite state automaton. Arrows between states are labeled with the respective transition probabilities. Beginning at the \START" state, the project generator may terminate at any of the end states denoted by double circles. 2.2.5 Schedules Given a set of commitments, the challenge is to t them optimally into a schedule. We assume that agents prefer to complete a project than partially do many projects. So if a meeting is scheduled, then all tasks preceding it should be scheduled if possible. If a meeting is not scheduled, then none of the preceding tasks should be scheduled. However, if more than one meeting is scheduled at the same time for an agent, the agent will choose to go to the meeting with the higher priority. We rst de ne meeting assignments, the building blocks of schedules. De nition 2.2.10. (Assignment) The assignment function s(m;t) : M T !f0;1gdenotes whether meeting mwill occur at time t. De nition 2.2.11. (Schedule) A schedule Sifor agent iis a set of non-overlapping assignments of meeting and tasks to time slots. Since the algorithm does not prevent the possibility that two meetings requesting the same agent to be present may be scheduled at the same time, only one of the meetings can be included in the agent’s schedule. CHAPTER 2. GENERATING THE PROBLEM 32 0 20 40 60 tasks (b) Number of tasks per agent 2 4 6 8 10 time (a) Length of time per project 0 10 20 30 40 50 60 flexible (d) Number of exible tasks per agent 0 2 4 6 8 10 12 fixed (c) Number of xed tasks per agent Figure 2.9: Projects generated with parameters jAj= 1;024, jMj= 4;096, and jTj= 5. De nition 2.2.12. (Value of the Schedule) The value of a schedule Sifor agent iis the sum of the priority levels of the scheduled meetings and tasks: v(Sij2Si) = X\(M[K)pi(j): Given a set of meeting assignments and their preceding tasks that also need to be part of the schedule, an agent would try to construct the optimal schedule with the remaining free 0.00 0.02 0.04 0.06 0.00 0.02 0.04 0.06 Density Density 0.0 0.4 0.8 1.2 0.0 0.1 0.2 0.3 0.4 0.5 Density Density time. Higher priority tasks take precedence over lower priority ones. Ties are broken between tasks of equal values by rst scheduling xed tasks, because it may be possible to accommodate the exible task at another time. Before an agent coordinates his schedule CHAPTER 2. GENERATING THE PROBLEM 33 with others, he has an ideal schedule in mind. De nition 2.2.13. (Ideal Schedule) The ideal schedule S ifor agent iis a schedule that maximizes the value by accommodating the highest priority projects in the available time. We use a greedy algorithm to determine an upper bound for the value of the ideal schedule S i. Ignoring all precedence constraints, we rank all meetings and tasks in order of their priorities. The value of S i, then, is at most the sum of the jTjhighest items. 2.2.6 Heuristic for Evaluating Assignments Finally, we construct an agent’s preferences by evaluating his values for meetings if they were to be held at various times. De nition 2.2.14. (Value of an Assignment) The preferences of an agent are given by the value function vi(m;t) : A M T ![0;pi(m)], which denotes the expected value that the assignment s(m;t) = 1 would add to agent i’s schedule. The value of the assignment is positive, and it is at most the priority level of the associated meeting: 0 vi(m;t) pi(m): jMjThis is hard to exactly determine. Strong dependencies exist between meetings such that it is di cult to isolate the value each assignment contributes to the overall schedule. An exact but naive methodology to make such an evaluation, albeit still only in expected value, is to search through all the schedules that include s(m;t) = 1 and calculate the average of their values, weighted by the probability of each schedule. However, since there are at most jTjschedules, of which jTjjMj1include the desired assignment, the exponential running time is infeasible for large problems. We turn to heuristics. The obvious choice for an admissible heuristic is simply the priority level of the meeting. However, the result is uninteresting because it does not give CHAPTER 2. GENERATING THE PROBLEM 34 any useful information about the marginal value that a particular time contributes to the assignment. Instead, we propose a heuristic by analyzing the best case scenario: the ideal schedule S j. If a meeting is assigned to a time slot that precludes all those of higher priority from being completed before hand, a schedule containing this particular assignment is likely to have less overall value than a schedule containing the assignment of a higher priority meeting to the same time slot. This heuristic is a lower estimate of value in that it would exceed the actual value that the assignment adds to the schedule. To formalize this heuristic for assignment valuation, we introduce the notion of failed tasks. De nition 2.2.15. (Number of Failed Tasks) The number of failed tasks, fti(m;t), for assignment s(m;t) = 1 of agent iis the number of tasks that cannot be completed before time tout of: the number of exible tasks that precede meeting min the same project, the number of exible tasks that are part of higher priority projects, and the number of xed tasks of higher priorities assigned to a time before t. We provide an example to make this concept more clear. Example 2.2.1. Let jTj= 5; = 5. Consider Sam, who has the following projects: project i exible task i, meeting i (deadline 3) - priority 2 project ii xed task i (time 2) - priority 5 project iii exible task ii (deadline 3) - priority 4 project iv exible task iii, meeting ii (deadline 5) priority 4 project v xed task (time 4) - priority 1 Table 2.1: Projects for Sam We consider each meeting and each time slot in order. For meeting i, exible task i precedes it, and exible tasks ii and iii are of higher priority projects iii and iv, respectively, CHAPTER 2. GENERATING THE PROBLEM 35 which gives ft(i;0) = 3;ft(i;1) = 2. After time 2, we also have to account for xed task i, which increases the number of xed tasks, giving ft(i;2) = 2;ft(i;3) = 1. For meeting ii, exible task iii precedes it, but there are no exible tasks of higher priority projects, giving ft(ii;0) = 1;ft(ii;1) = 0. After time 2, we have to again account for xed task i, except there is enough time to complete both exible task iii and xed task i, which gives ft(ii;2) = ft(ii;3) = ft(ii;4) = 0. Table 2.2 summarizes the calculations. Time 0 Time 1 Time 2 Time 3 Time 4 Meeting i 3 2210 Meeting ii 1 0 0 0 0 Table 2.2: Number of failed tasks, ft(m;t), for Sam For each assignment s(m;t), if tis late enough to allow all preceding and higher priority tasks to be completed beforehand, the value of the assignment is the maximum value derived from attending meeting m, which is its priority level pi(m). However, if tis earlier, we model the value of the assignment as a decreasing function at the rate of the number of failed tasks, leveling o at a minimum of 0. The aforementioned heuristic value, v(m;t), can be then expressed in terms of the number of failed tasks, given by the following function. Because the context is clear, we drop the subscripts of iand let Kexibleand K0 i xedonly include tasks assigned to agent i. v0(m;t) = max(0;p(m) !ft(m;t)) (2.2) ft1(m;k) + ft2 X k2K(m;k) + X xed ft3(t;k) 1A t1 A k2Kexible where ft(m;t) = max 0@ 0;0 @ (m;k) = (k m) (2.4) ft1 (m;k) = :r(k;m) ^(p(k) >p(m)) (2.5) ft2 ft3(k;t) = (k t) ^(p(k) >p(m)) (2.6) CHAPTER 2. GENERATING THE PROBLEM 36 !is a weight constant. ^represents the conjunction, AND. :represents negation. Figure 2.10 illustrates this heuristic function. (m;t) against the timeline. t2 1, vi i(m;t) is a function increasing linearly in t. 0 Figure 2.10: Heuristic function v0 i 1 2, vi(m;t) = pi 0 marks the point after which there would be 0 failed tasks. tmarks the point before which there would have been too many failed tasks to make such an assignment not worthwhile. For t<t(m;t) = 0. For t>t(m). In-between, v Example 2.2.2. Let != 1. Continuing the previous example, we subtract the number of failed tasks from the priority level of the respective meeting to nd the values for the corresponding assignments, v(m;t), with a minimum of zero. Table 2.3 presents the resulting values. Time 0 Time 1 Time 2 Time 3 Time 4 Meeting i 0 0012 Meeting ii 3 4 4 4 4 Table 2.3: Heuristic values, v (m;t), for Sam If the values of failed preceding tasks, failed higher priority tasks, or failed time constraints di er in importance, then heuristic function in equation (2.3) can be generalized CHAPTER 2. GENERATING THE PROBLEM 37 by including di erent weights !1;!2;!3: ft0(m;t) = max 0; Xk2K !1ft1(m;k) + !2ft2(m;k) + !3ft3(t;k) ! t! (2.7) Finally, we account for xed tasks occurring at time t. Given a choice between attending a meeting or completing a xed task at time t, an agent would choose the one with the higher priority. So if there is a xed task at tof higher priority than v0(m;t), the agent will complete the task instead, and the assignment s(m;t) then has a de facto value of 0. If there is a xed tasks at time tof lower priority, the agent will never choose the xed task, so the heuristic value function is not a ected. The nal heuristic value function is: v(m;t) = 8 >> <0; ^> > :v0k2K xedg(k;t)(m;j); otherwise where g(k;t) = (t(k) = t) ^(p(k) >p(m)) Example 2.2.3. Finishing the earlier example, we adjust the values for time slot 2, when Sam has a xed task with a priority level of 5. For all assignments with values less than 5, we lower them to 0 because Sam would rather complete the xed task than attend the meeting at that time. Although Sam has another xed task, ii, at time 4, since it is of priority 1, he would rather attend the meeting so the value does not change. Table 2.4 presents Sam’s nal heuristic values for each assignment. Time 0 Time 1 Time 2 Time 3 Time 4 Meeting i 0 0012 Meeting ii 3 0 4 4 4 Table 2.4: Final heuristic values, v(m;t), for Sam In a larger scope, all the participants of meetings i and ii have similar tables with their own values of v. Chapter 3 Auction Design and Agent Strategies In this chapter, I present the designs of the auction mechanism as well as that of a comparable poll-based mechanism. I distinguish between the online application, Doodle, and the model it inspires, doodle, using the capitalization of \d." Next, I describe di erent strategies agents employ to place bids based on their true preferences. There is a natural real-world analogy: strategic bidding is like people trying to misrepresent their present commitments and the importance of each in order to obtain the best schedule. 3.1 Auction Mechanism The auction mechanism is a deterministic mechanism that takes as input a set of bids by agents over the set of assignments, and produces as output a set of chosen assignments which are to become part of schedules for each agent. The currency with which agents place bids is virtual, and each agent has a certain amount of wealth. De nition 3.1.1. (Wealth) The wealth widenotes the amount of virtual wealth owned by agent i. 38 CHAPTER 3. AUCTION DESIGN AND AGENT STRATEGIES 39 We experiment with two variations of the initial allocation of wealth. In one, agents start with an identical amount, while in another, agents start with random amounts. For simplicity, we do not allow borrowing so agents may not overspend their wealth. De nition 3.1.2. (Bid) The bid bi(m;t) : A M T ![0;wi] denotes the amount of virtual wealth agent iis willing to pay if meeting mis scheduled at time t|in other words, if the assignment s(m;t) is chosen. The auction sequentially schedules meetings until quiescence, which is when there are no more admissible, or strictly positive, bids. The resulting set of chosen assignments is the meeting schedule. The auction allows for revisions of values and consequently bids after each assignment choice so that agents may update their heuristic values to account for the scheduled meeting. Figure 3.1 illustrates a high-level ow chart for this process, and the following sections describe it in more detail. 3.1.1 Choosing an Assignment The auction chooses the assignment s(m;t) with the highest overall bids: i2A bi(m;t); (3.1) X arg max s(m;t) and assigns the associated meeting mto time t. 3.1.2 Adjusting Values The auction process is sequential with value revision between assignments, because each agent’s heuristic values would change as a result of the meeting that has recently been scheduled, m. Speci cally, if mis a high priority meeting, then the agent would have already allotted time in his schedule so his values for other meetings do not need to change. However, if m is a low priority meeting, then the agent needs to adjust the values of all higher priority CHAPTER 3. AUCTION DESIGN AND AGENT STRATEGIES 40 START are there unscheduled meetings? yes no are there positive bids? no yes is there a next period? yes choose an assignment adjust adjust wealth values no END Figure 3.1: High-level approach to setting up the auction mechanism. meetings in order to allocate time to participate in mas well as to complete its preceding tasks. Speci cally, the agents’ values are a ected in three ways: 1. For every assignment with meeting m, all agents should have value 0: s(m;t) =)vi(m;t) = 0 8i2A;t2T 2. For all other meetings that the attendees of meeting mneed to attend, the assignments at time tshould have value 0: s(m;t) =)v(l;t) = 0 8i2A;(i;m) 2GM;l2M CHAPTER 3. AUCTION DESIGN AND AGENT STRATEGIES 41 3. For all higher priority meetings of attendees of meeting m, we adjust their values to account for the preceding tasks of meeting m. We update the number of failed tasks in equation (2.3) by introducing ft4(m;k) to include this addition: k2KXexible ft1(m;k) + ft2(m;k) + ft4k2K(m;k) + X xed ft(m;t) = max 0@ 0;0 ft4 @ 1 A 3.1.3 Termination ft3(k;t) 1A t (3.2) where (m;k) = s(m;t) ^(p(k) <p(m)) Value revision between assignments minimizes their overlap and the chance that an agent would be requested to attend more than one meeting at the same time. Conicts cannot be avoided because an assignment may be chosen even if an agent has a value of 0, as long as the other attendees value it positively. The auction continues until quiescence. There are no more admissible bids when either all meetings have been scheduled, or no agent is willing to place a positive bid on any unscheduled meetings. A meeting remains unscheduled if no agent has the reserve capacity in their schedule to accommodate, or wish to accommodate, this meeting and its preceding tasks. An agent perceives the heuristic value to be 0 for an assignment associated with an unscheduled meeting for two reasons: The weighted number of failed tasks at time texceeds the value of this meeting, indicating that the agent would rather work on higher priority projects. Thus a 0 bid from an agent signals that he might not be able to fully prepare for the meeting. The agent is unable to attend this meeting due to a previously scheduled meeting at the same time. By implication, the auction mechanism cannot guarantee that scheduled meetings will be fully attended. CHAPTER 3. AUCTION DESIGN AND AGENT STRATEGIES 42 3.1.4 Multiple Periods Each period concludes when the auction is quiescent. The auction starts again in another period, with the same agents but a di erent set of dynamically generated projects. If a period is analogous to a week, then repeating over many periods is similar to agents continuously requesting meetings with each other on a weekly basis for a month, year, or even inde nitely. 3.1.5 Wealth and Banking Rule At the end of each period, we return the agents’ bids so that wealth does not disappear in the system, and allow agents to carry over their wealth from period to period. Wealth is analogous to an agent’s power to inuence current or future meeting decisions. It is a relative measure of inuence because an increase in wealth in the entire system amounts to ination, so only uctuations in their relative levels of wealth have actual impact. An agent who places a large bid may get his favorite time slot for the meeting he cares about this period, but when he becomes poor next period, he will no longer be able to dominate the decision-making. After each assignment is chosen, we deduct each agent’s bid for the assigned meeting from his wealth. We do not return wealth to agents until the period ends, so an agent may not immediately apply it toward bids for other meetings. Otherwise, if an agent knows that mechanism has the potential to perpetually replenish his wealth, he would not optimize the distribution of his wealth over bids for all assignments, but only for that of the next chosen assignment, which is a di erent question entirely. We propose two variations to the banking rule. The rst, redistributive, version divides each agent’s bids for each of the chosen assignments equally among the other attendees of the meeting. The aggregate result over all chosen assignments along with any unused wealth then becomes the agents’ wealth for the next period. Under this banking rule, one’s wealth is likely to change from period to period. CHAPTER 3. AUCTION DESIGN AND AGENT STRATEGIES 43 A second, non-redistributive version returns each agent’s wealth at the end of each period. The inspiration for this is taken from a review for a futures market for computer time by Sutherland [10], which auctioned the use of the PDP-1 computer to Harvard University users in the 1960s. Under this banking rule, wealth is held arti cially constant throughout the periods, so e ectively, its only purpose is to guarantee that an agent does not bid beyond his means. 3.2 Poll-Based Mechanism: Doodle In order to assess the auction model, which is nuanced enough to understand a complex set of preferences expressed in the form of bids, we also simulate a poll-based meeting scheduling mechanism that only understands binary input in the form of poll responses. Given that agents have the same underlying preferences, we can compare the relative utility of agents in equilibrium as well as di erences in the e ectiveness of bidding strategies between the two models. Named after the popular application, the \doodle model" allows participants of a meeting to view a list of possible times and check o \yes" or \no" for each. The meeting is subsequently scheduled at the time that is convenient for the most number of people. Beside the mechanism for choosing an assignment, the only other notable di erence in this model versus the auction model is the fact that \wealth," representing the relative decision-making powers of agents, is inherently allocated equally. 3.2.1 Translating \Bids" into Poll Responses Agents must convert their reported preferences from cardinal information into ordinal information by changing bids into \yes" or \no" poll responses. If each agent ihas a threshold bid ci, above which he would be willing to attend meetings at the speci ed time, and below which he would not, poll responses are then given by the following de nition. CH APT ER 3. AU CTI ON DE SIG N AN D AG ENT STR ATE GIE S 44 D e nit io n 3. 2. 1. T h e p oll re sp o ns e li( m ;t) : A M T !f 0; 1 g d e n ot es w h et h er a g e nt iw is h es to at te n d m e eti n g m at ti m e t: 8 >> <1; b> > :i(m;t) ci0; otherwise (3.3) li(m;t) = for some threshold ci. In our implementation, the threshold ci is given by the agent’s wealth wi ci = wid(i) ; i2GM : di vi d e d by th e n u m b er of m e eti n gs h e is re q u es te d to at te n d: The intui tion is to gua rant ee that the age nt only agr ees to atte nd mee ting s at time slot s with high er valu e than if he had distr ibut ed his wea lth equ ally amo ng his mee ting s. 3. 2. 2 C h o o si n g a n A ss ig n m e nt T h e d o o dl e m o d el ch o os es th e as si g n m e nt w h er e th e hi g h es t p er ce nt a g e of at te n d e es is a bl e to b e pr es e nt : arg max s(m;t) T hen, just as in the auct ion mod el, it allo ws age nts P i2A (m;t) d(m) li ; m2GM : to upd ate their heu risti c valu es afte r eac h choi ce. This proc ess is rep eate d until quie sce nce, whe n non e of the age nts are willi ng to atte nd any mor e mee ting s. 3. 2. 3 \ W e al th " T h e d o o dl e m o d el is d e m oc ra tic in d es ig n: ev er yo n e’ s pr ef er e nc es ar e e q u all y im p or ta nt in th e se ns e th at e ac h vo te is co u nt e d o nc e. E ss e nti all y, a g e nt s h av e id e nti ca l \w e alt h, " a n d th e sy st e m o p er at es u n d er th e n o nre di st ri b uti ve b a nk in g ru le w h er e e ac h a g e nt’ s w e alt h is CHAPTER 3. AUCTION DESIGN AND AGENT STRATEGIES 45 returned to him at the end of the period. 3.3 Bidding Strategies If values represent an agent’s true preferences, then bids constitute the way those preferences are portrayed to others. We characterize systematic ways to distort true preferences as bidding strategies, and take inspiration from how people in real life might try to obtain schedules that are more closely aligned with their values. This leads to a de nition of rationality. De nition 3.3.1. A strategy is rational if an agent places higher bids for assignments with higher values, and lower bids for assignments with lower values. Otherwise, it is irrational. We allow saving, since wealth is carried over from period to period. At the same time, we assume that agents do not have an incentive to save, so that if he receives his most favored assignments, he will want to have exactly spent all of his wealth. If, however, an agent wishes to be sure to save a part of his wealth, then we can easily generalize to this scenario by only apportioning x% of his wealth on bids. In this section, we present a few general types of rational and irrational bidding strategies that agents might employ. 3.3.1 Strategies that Only Depend on Oneself These bidding strategies only depend on the value of the assignment, independent of any information from other agents. Truthful The truthful strategy involves agent ibidding an amount of wealth that is proportional CH APT ER 3. AU CTI ON DE SIG N AN D AG ENT STR ATE GIE S 46 t o t h e v a l u e o f e a c h a s s i g n m e n t : bi( m ;t) /vi ( m ;t) (3 .4 ) Threshold T h e th re sh ol d st ra te gy in vo lv es a g e nt ibi d di n g o nl y if th e va lu e is a b ov e a m= wi X max bi(m;t) (3.5) t th re sh ol d ci: m= bi(m;t) / wi A sensible threshold ci wi m= X max bi(m;t) (3.9) t X 8 >> <v> > :i(m;t); pi(m) ci0; otherwise (3.6) max is the prio be able to squeeze into his idea allocate more wealth into biddin Sel sh The sel sh strategy involves age value for assignments with high for assignments with low values unwilling to attend meetings at t bidder bids proportionately to th some reasonable k: bi(m;t) /(vi(m;t))k; for k2f2;3;:::g (3. tX wi bi(m;t) ;max jTj b (3.11) i s ( m adjustment ; step t and assignment ) An agent can never overspend their wealth due to the value in the auction mechanism, i.e. if an agent bids all his wealth for an the assignment is subsequently chosen, then he can only bid 0 for the rest of his assignments. 3.3.2 Strategies that Speculate on Other Agents These bidding strategies modify the value of the assignment depending on certain characteristics of other agents. Speculate on Popularity Agents with more friends have more opportunities to be requested to attend meetings, so they have a greater need to choose which meetings to attend. If an agent would like to attend a meeting with a more popular agent, then he might have to bid more in order to ensure that the meeting takes place. For example, if one is soliciting the help of Bill Gates, with whom many people wants to meet, then one would need to bid higher to increase the likelihood that an assignment of this meeting will be chosen CHAPTER 3. AUCTION DESIGN AND AGENT STRATEGIES 47 = max mX (m;t) ! Aggressive The aggressive strategy involves agent iexaggerating his bids across the board. He normalizes his bids with respect to the sum of the average values over all assignments of each meeting, as opposed to the sum of the maximum values. To prevent any single bid from being greater than his wealth, we normalize either by the sum of the average values or the maximum value over all assignments, whichever is greater. This strategy is given by: bi(m;t) /vi(m;t) (3.10) CHAPTER 3. AUCTION DESIGN AND AGENT STRATEGIES 48 earlier by the mechanism, or at all. agent ithat speculates on popularity would multiply the value of each assignment by the number of friends of the most popular agent requested to be at the meeting. For agents j2A;i6= j;(m;j) 2E bi(m;t) /vij(m;t) maxd(j) (3.12 ) m= X max bi(m;t) (3.13) t wi M:An Speculate on Wealth Wealthier agents have more decision-making power, so another agent may need to bid more in order to be heard. A lower bid may not be inuential but still needs to be paid, acting like a sunk cost. M:An agent ithat speculates on wealth would multiply the value of each assignment by the amount of wealth of the richest agent at the meeting. For agents j2A;i6= j;(m;j) 2E bi(m;t) /vij(m;t) maxwj (3.14) m= X max bi(m;t) (3.15) t wi Speculate against Wealth To the contrary, it might be counterproductive to overbid on meetings when wealthier agents are present because the bidder might simply not have the wealth to compete. The wealth contrarian strategy would instead bid more on meetings where other attendees are poorer so that the the bidder can exert more inuence. There are two variations. For one, an agent ithat speculates against the maximum wealth would divide the value of each assignment by the amount of wealth of the CHAPTER 3. AUCTION DESIGN AND AGENT STRATEGIES 49 richest agent at the meeting. For agents j2A;i6= j;(m;j) 2EM: b (m;t) max(m;t) / (3.16 i vijwj ) m= X max bi(m;t) (3.17) wi t M:For the second variation, an agent ithat speculates against the total wealth would divide the value of each assignment by the combined wealth of all other agents at the meeting. For agents j2A;i6= j;(m;j) 2E j wj bi(m;t) / vi (3.18 ) wi (m;t) Pm= bi(m;t) (3.19) Xmaxt I implemented the second variation because it also takes into account of the number of attendees at a meeting. The total wealth contrarian strategy would bid less when there are more people because there is potentially more disagreement. 3.3.3 Hybrid Strategies These bidding strategies are hybrids of the aforementioned strategies; the actual strategy employed changes depending on the circumstances. Hybrid Depending on Wealth A rich agent may bid sel shly to try to dominate others’ preferences, while a poor agent may bid conservatively by betting more on meetings with other poor agents so that his bids would actually matter. An agent chooses di erent strategies depending on his wealth at the time. If given a threshold, a wealthier bidder may bid sel shly, while the same bidder, now poorer, may play the wealth contrarian strategy|or vice versa. These are just two examples of hybrid strategies; others are possible. CHAPTER 3. AUCTION DESIGN AND AGENT STRATEGIES 50 3.3.4 Irrational Strategies As sanity checks, these bidding strategies serve to demonstrate that the auction mechanism indeed function as expected by favoring the more rational strategies above. Overly Aggressive Similar to the aggressive strategy, except the overly aggressive bidder would always bid by normalizing to the maximum value over all assignments. If his favorite assignment is chosen, then he would be left with 0 wealth for all other assignments, which would be an unfortunate predicament. The strategy is given by: bi(m;t) /vi(m;t) (3.20) m= X max bi(m;t) (3.21) wi t While this strategy is technically still rational, since agent istill bids more for assignments with higher values, it is de nitely an irresponsible use of wealth. Inverse The inverse strategy involves agent ibidding proportional to the inverse of the value of the assignments: biv(m;t) / 1i(m;t) (3.22) m= X max bi(m;t) (3.23) wi t This strategy is purely irrational because it would bid more for less important meetings and less for more important ones. Chapter 4 Empirical Game Theory In this chapter, I present methodology for evaluating the auction and the doodle models. First, I quantify the happiness of the agents. Then, I introduce the replicator dynamics algorithm from evolutionary game theory to determine the bidding behavior of agents in equilibrium. 4.1 Evaluating Utility Schedules can be distinguished by the utility, or the degree of happiness, they provide the agent. However, as there are many ways to quantify the concept, it is worthwhile to explore a few and decide on the most appropriate interpretation later. We propose three de nitions, one absolute and two relative notions of utility. De nition 4.1.1. The absolute utility of agent iis the value of his schedule Si, which is the sum of the priority levels of the scheduled meetings and tasks: uabs(Si) = v(Sij2Si) = X\(M[K)pi(j): Absolute utility penalizes the agents with fewer meetings because they would never be able to achieve a high level of utility. 51 CH APT ER 4. EM PIRI CAL GA ME THE OR Y 52 D e nit io n 4. 1. 2. T h e ac tu al uti lit y of a g e nt iis th e ra tio of th e va lu e of hi s sc h e d ul e Si to the value of his ideal schedule S i: uact(Si) = v(Si) v(S i) = D e nit io n 4. 1. 3. T h e h e ur ist ic uti lit y of a g e nt iis th e ra tio of th e su m of th e va lu es of th e as si g n m uabs(S) v(S ii) : e nt s at th e ti m e th ey w er e ch os e n to th e va lu e of hi s id e al sc h e d ul e S i. W e us e th e h e ur ist ic va lu es fr o m e q u ati o n (3 .2 ): ( ivi) : m ; t u The relative utilitieshe are designed to )be more personalized metrics in that an agent is u v happy if he is closer to( his own ideal schedule. There are three major di erences between ( S S i the two measures. Heuristic utility accounts for the heuristic values of the assignments, ) v(m;t), as opposed to = the actual values of the associated meetings, pii(m). It does not include the values of tasks in order to isolate the impact of the bidding strategies on P meeting scheduling. Lastly, if two meetings are scheduled at the same time, actual utility would only include the value of the meeting that the agent actually attends, while heuristic utility would include the heuristic values of both assignments. m 2 S i Thus, heuristic utility can be considered as an evaluation of the e ectiveness of the bidding process, rewarding the strategies that are able to quickly lock in the most desirable assignments and selecting for schedules that places higher priority meetings before lower priority ones. On the other hand, actual utility inherently assumes that agents are indi erent between two schedules as long as the same commitments are present, and as such, it is perhaps a more realistic evaluation of an agent’s happiness. Collectively, the various utilities represent a holistic picture of the overall e ectiveness of the auction mechanism in creating desirable schedules for everyone. Figure 4.1 presents the distributions of happiness over the agent population when everyone bids truthfully. CHAPTER 4. EMPIRICAL GAME THEORY 53 It compares the three de nitions of utility in applying to both small and large meeting scheduling problems. We assume that truthful bidders are symmetrical, so we average their utilities. Although the three notions of utility result in distinct distributions over the population, they are similar in that the average utility of agents negatively correspond with how busy they are. It is more di cult to coordinate amongst agents who are more constrained. Furthermore, the similarity in graphs with 8 agents and 32 agents, while maintaining the ratio of meetings to agents, suggests that modeling a smaller number of agents can be generalized to a larger population. We proceed with all three de nitions, then determine the best choice by evaluating their relative merits in practice. 4.2 Finding Nash Equilibria Next, we establish a methodology for evaluating the e ectiveness of strategies vis- a-vis each other and exploring which strategy, or a mix of strategies, would agents employ in the long run. We construct a symmetric game where the payo s for playing a particular strategy depend only on the other strategies played, but not on who is playing them, by randomly assigning strategies to agents given a strategy pro le, which is a xed proportion of each strategy to be used in the population. Over many instances of the meeting scheduling problem, we estimate the payo matrix over all possible strategy pro les for each set of permissible strategies. Finally, we iteratively search for the symmetric mixed Nash equilibria, which are the proportions of each strategy in the mix that agents are expected to play in evolutionarily stable state. We use the replicator dynamics algorithm as described by Reeves et al. [6] to tackle the large strategy space for these games. Although it is a restricted approach in that only a certain set of permissible strategies are considered each time, it is state of the art and generalizable to larger sets, though including the complete set would not be computationally feasible. CHAPTER 4. EMPIRICAL GAME THEORY 54 0 10 20 30 40 Absolute Utility 0 10 20 30 40 Absolute Utility (a) Absolute utility over 200 periods with parameters jAj = 8;jMj = 16;jTj = 8; = 5 (b) Absolute utility 32;jMj = 64;jTj = 8; 0.0 0.2 0.4 0.6 0.8 1 0.0 0.2 0.4 0.6 0.8 1.0 Actu al Utilit y (c) Actual utility over 200 periods with parameters jAj = 8;jMj = 16;jTj = 8; with parameters jAj = 32;jMj = 64;jTj = 8; = 5 0.0 0.2 0.4 0.6 0.8 1.0 Heuristic Utility Heuristic Utility Density 01234567 Density 0 5 10 15 20 0.00 0.02 0.04 0.06 0.08 0.10 0.12 (e ) Figure 4.1: The H if all agents are e ur ist ic uti lit y ov er 2 0 0 p er io ds wi th p ar a m et er s jA j= 8;j Mj = 1 6;j Tj = 8; = 5 Density Density Density 01234 Density 0 5 10 15 20 25 0.00 0.01 0.02 0.03 0.04 0.05 0.06 0.0 0.2 0.4 0.6 0.8 1.0 (f) Heuristic utility o 32;jMj = 64;jTj = 8; distribution of absolute, actual, and heuristic bidding truthfully. CHAPTER 4. EMPIRICAL GAME THEORY 55 4.2.1 Payo Matrix Payo matrices represent the expected payo s of each strategy given a set of permissible strategies, when played in various proportions in the population. De nition 4.2.1. (Payo ) The absolute, actual, or heuristic payo po(s) of a bidding strategy sto an agent is the absolute, actual, or heuristic utility, respectively. De nition 4.2.2. (Strategy Pro le) A strategy pro le for a game is a list of speci c strategies that each player follows. Given a set of permissible strategies Sfor agents A, the payo matrix consists of an entry for each of thejAj+jSj1 jAj possible strategy pro le combinations. Each entry is anjAj-vector of expected payo s associated with a particular strategy pro le. For example, if jSj= 3 and jAj= 4, then a strategy pro le could be ftruthful, truthful, threshold, sel shg. To estimate each entry of an expected payo matrix, we generate many instances of the meeting scheduling problem and randomly assign strategies to agents from the strategy pro le. Each period, we simulate the auction protocol with the given strategies, and each agent maintains the same strategy for a number of periods in a trial. In each trial, the agents are symmetric with respect to their strategy, so we average the payo s between those playing the same strategies. We repeat for a number of trials, with the agents facing di erent problems and assigned to play di erent strategies for each trial. Because the payo matrices are empirically determined, its values are only estimates and thus require many trials to establish their reliability. 4.2.2 Evolutionary Search for Equilibria Given the payo matrix, we can iteratively search for expected asymptotic behavior of agents in the form of a symmetric mixed Nash equilibrium. The process is motivated by evolution, where successful strategies are rewarded by being played in greater proportions over the population at the expense of poorly performing strategies over time. CHAPTER 4. EMPIRICAL GAME THEORY 56 We choose an initial population proportion for each pure strategy in the set of permissible strategies, and update them in successive generations with respect to their performance. The proportion pg(s) of the population playing strategy s2Sin generation gis given by: pg(s) /pg1(s)(EPs W): is the expected payo for pure strategy sagainst jAj1 players all playing mixed strategies according to the population proportions. W is a lower bound on payo s which serves as a I dampening factor, for instance, the minimum value in the payo matrix. n this equation, EPs To calculate the expected payo EPsfrom the payo matrix, we average the payo s for sin the pro les in which it appears, weighted by the probabilities of those pro les. If the strategy sis not played in some pro les, then EPsneeds to be normalized by the sum of the probabilities of the pro les in which sdoes appear. Let nsdenote the number of players playing strategy s. Then: (n1;:::;ns EPs = P(n1;:::;ns>0;:::;njSj) >0;:::;n) P ) ; (4.1) Pr(n1;:::;njSj j j) po(s) Pr(n1;:::; 1 n where the probability of a particular pro le (n (1)n jSj) is given by: : (4.2) g1 Pr(n1;:::;njSj) = N!n1!:::njSj 1 ;:::;n :::p (jSj) j j ! pg1 We unpack Equation (4.2). Since pg1 (i) is the probability that an agent would play strategy siin generation g1, pg1(i)niis the probability of niagents playing strategy si. Then: pg1(1)n1 :::pg1(j j)njSj is the probability of the agents playing the particular mix of strategies if the rst n1agents played s1, the rst n2agents played s2, and so on. In other words, it is the probability of CHAPTER 4. EMPIRICAL GAME THEORY 57 a pro le if order mattered. Since order does not matter, the probability of the particular pro le (n1;:::;njSj) is the product of the probability of a pro le if order mattered and the multinomial coe cient, which counts the number of distinct ways the given proportion of strategies can be assigned to jAjagents. Finally, to obtain the proportion of agents playing strategy sin generation g, we normalize every pg(s) by dividing each by their sum, pg(s) = pg1(s)(EPspg1s(s)(EPsW) PW) (4.3)If this population update process reaches a xed point, then the nal population proportions are a candidate symmetric mixed strategy equilibrium. The xed point is determined by calculating the sum of the changes in population proportions from generation g1 to g, and stopping when it becomes 0. We verify directly that the candidate is indeed a static Nash equilibrium by checking that the evolved strategy is a best response to itself. Specifically, we calculate the expected payo s given the population proportions and verify that they are the same for all the strategies. For a given population of agents, we repeat this process for all possible initial proportions of strategies in order to prevent perhaps getting stuck in local minima or cycles, and in order to enumerate the possible equilibria if multiple exists. Note that this replicator dynamics algorithm [6] is constrained by the number of strategies explored at a time in the payo matrix. If a strategy has an initial proportion of 0, then it can never be brought into the mix of strategies, thus it will remain at 0. Chapter 5 Experimental Results In this chapter, I present various metrics and sanity checks to show that the auction mechanism functions as expected, and to establish a credible comparison with the doodle mechanism. Then, we empirically analyze the e cacy of di erent de nitions of utility, explore equilibrium behavior of various strategies, and compare variations in the design of the mechanisms. 5.1 Experiments 5.1.1 Experimental Setup I implemented the meeting scheduling problem and the auction and doodle mechanisms in Python. Large scale experiments are conducted on the HPC clusters of the School of Engineering and Applied Sciences Instructional Research and Computing. The cluster consists of 28 nodes; each node has 16 GB of RAM and they are connected via high-speed in niband interconnect. Smaller experiments are conducted on a local machine with 2.16 GHz processor and 1 GB of RAM. For data analysis, I used R. 58 CHAPTER 5. EXPERIMENTAL RESULT S 59 5.1.2 Experimental Parameters We optimize parameter settings in our experiments to drive more signi cant results or simply for practicality. Each experiment is run over a social network of 8 agents generated by the Kronecker graphs model. A network of 8 agents is large enough such that the Kronecker graphs model is distinguishable from the preferential attachment models, but it is still small enough to be practical to use in running many trials. Figure 5.1 illustrates the network we use. 6 1 4 25 3 0 7 Figure 5.1: An agent network generated by the Kronecker graphs model for 8 agents used in our experiments. The initial parameters, P1= [0:8967;0:5978;0:5978;0:09963], were tted to real network data from the online blogging community Livejournal. Other parameters are set to allow strategies to be most distinguished from each other. By recognizing that the di erences in the utility of agents stem from variation in schedules that they obtain, we look for parameter settings that would lead to schedules with the greatest degree of di erentiation. We x the strategies of 7 agents but vary the strategy CHAPTER 5. EXPERIMENTAL RESULT S 60 of the 8thagent, then simultaneously run di erent experiments such that every game is identical except for the strategy of the last agent. We compare the resulting schedules and calculate the percentage of meetings that are assigned to di erent times. We observe that strategies matter more when the problem is more constrained, suggesting setting a high ratio of the number of meetings to the number of agents, fewer time slots per period, more attendees per meeting, and so on. However, these parameters have limited degrees of freedom because the problem would become infeasible if it is too constrained. On the other hand, we nd that raising the maximum priority level also allows strategies to matter more. Increasing the range of the priority levels of projects from 1 to 100 as opposed to from 1 to 5 creates more disagreement among agents over the relative values of meetings. More disagreement leads to greater variation in utility, because if a meeting is really important to one agent but the opposite for another agent, then the rst would be ecstatic if it is scheduled but the second would only mope. Thus, unless otherwise noted, the experiments are run with the following parameters. jAj= 8 agents, jMj= 16 meetings, Over jTj= 15 time slots per period, With a maximum of = 5 attendees per meeting, and A maximum priority of = 100. The project generator Figure 2.8 has the following transition probabilities: s;f;s;m;t;t;t;d;m;d = 0:3 s;t;t;m = 0:4 The number of periods and whether agents receive equal or random amounts of initial wealth do not have discernible impact on di erentiating the strategies. So for most experiments, we initially give agents random amounts of wealth drawn from [0;20]. In the interest CHAPTER 5. EXPERIMENTAL RESULT S 61 of practicality, they are run for 50-100 periods each so that we can run more trials in the same amount of time. For each experiment, each of the 8 agents chooses from a set of 3 strategies, giving jAj+ jSj1jAj = 8+318 = 108 = 45 di erent possible strategy pro les. We limit the sets to 3 strategies each to keep the number of trials required to generate a payo matrix reasonable. Experimental resource is limited by CPU cycles and time. Reeves et al. [6] worked on the problem of allocating computer time to di erent tasks, and required 45 million trials over 21 strategy pro les to achieve an accurate expected payo matrix, taking weeks of CPU time. Our problem is in a di erent domain so the problem is of a di erent scale. Even so, we do not have the time to achieve such accuracy, but we believe that the ideas and the results presented here are valid and robust to more trials. 5.2 Validity of Auction Design In designing the auction model, we have made various assumptions. In this section we show that these design decisions are reasonable and meaningful. 5.2.1 Assignment Choice Recall that the auction and doodle mechanisms choose the assignment with the highest overall bids and the highest fraction of bids, respectively. The implicit assumption in both cases is that agents would place bids over enough meetings to make the assignment choice meaningful. For instance, if agents only bid on 1 meeting and are not willing to bid on more meetings, then assignments are essentially chosen by random selection. This is not the case. Figure 5.2 shows that truthful agents initially do bid over a substantial subset of their meetings. For this experiment, jTj= 15 implies that an agent CHAPTER 5. EXPERIMENTAL RESULT S 62 could attend at most 15 meetings. Figure 5.2a shows that most agents bid on at least one assignment over each of their meetings. Figure 5.2b shows that even the busiest agents initially place bids on assignments ranging 34%, approximately 10, meetings, while agents with only 1 or 2 meetings almost always would bid on both of them. For all other agents in-between, there is a monotone decreasing relationship between the percentage of meetings bid on and the total number of meetings. Since agents on average bid on enough meetings initially, selecting assignments by highest overall bids is meaningful. 0 5 10 15 20 25 30 Total number of meetings for the agent 0.0 0.2 0.4 0.6 0.8 1.0 Percent of meetings bid on (a ) Hi st o gr a m of th e p er c e nt of m e et in g s an agent bids on 0.0 0.2 0.4 0.6 0.8 1.0 Percent of meetings bid on 0 2 4 6 8 10 12 Density (b has ) S Figure 5.2: Given parameters jAj= 8;jMj= 32;jTj= 15 and all a c strategy, agents place bids on a signi cant proportion of mee at validating the design of choosing an assignment with the high te highest fraction of bids, in the auction and doodle mechanism rp lo t of th 5.2.2 Banking Rule e p er also assume that the redistributive banking rule is e ectiv We c among agents to allow for variation in their relative decision-m e traces the wealth of agents throughout many periods. In this nt of with 10 units of wealth and bid with the same strategy. The g m represents the agent who does not have any friends and con e wealth remains untouched. Other agents’ wealth uctuate ove et Figure 5.3a shows that if all agents are truthful bidders, the ri in g s a n a g e nt bi d s o n v er s u s th e to ta l n u m b er of m e et in g s th at h e CHAPTER 5. EXPERIMENTAL RESULT S 63 0 20 40 0 20 40 60 80 100 Periods (a) Wealth over time for agents all bidding truthfully 0 20 40 Virtual wealth (units) Virtual wealth (units) rich, and the poor remains poor. Further investigation reveals that the agents who have a lot of meetings tend to be rich, because they need to spread their wealth among more meetings, so they often would receive more from their peers than the bids they have placed, allowing them to get richer over time. Since wealth is nite in the system, the poor cannot keep getting poorer, and neither can the rich get richer inde nitely. On the other hand, Figure 5.3b shows that this does not need to be the case. If agents are aggressive bidders, their levels of wealth uctuate more widely. 0 20 40 60 80 100 Periods (b) Wealth over time for agents all bidding aggressively Figure 5.3: Wealth of jAj= 8 agents all bidding with the same strategy for 100 periods with initial wealth w= 10. Each agent is depicted in a di erent color. Wealth better resembles a random walk in the case of all agents bidding aggressively, as in Figure 5.3b, than the case of all agents bidding truthfully, as in Figure 5.3a. 5.2.3 Comparability of Auction and Doodle Mechanisms Before we can analyze the results from the auction and doodle models, we need to establish that they are comparable. Speci cally, we need to show that if di erences exist between the utilities of agents under the two models, they do not stem from systematic di erences in the CHAPTER 5. EXPERIMENTAL RESULT S 64 schedules that are produced, but rather on the optimality in the choices of which meetings to schedule and at which times. Table 5.1 shares some statistics. In every metric, the auction and doodle mechanisms are virtually indistinguishable in their abilities to schedule meetings at times that attendees are able to attend. Mechanisms Statistics Auction Doodle Of requested meetings, % thatare scheduled 78.47% 78.38% Of scheduled meetings, % agents 82.40% 82.96% 7.19 7.15 that could attend Units of time (out of 15) agents spent in meetings each period Table 5.1: Average statistics from running auction and doodle mechanisms each for 100 periods with parameters jAj= 8;jMj= 32;jTj= 15; = 5. The two mechanisms seem to be comparable. 5.2.4 Sanity Checks Finally, we conduct sanity checks to verify that the auction mechanism is able to discriminate between rational strategies from irrational ones. We let 8 agents choose from a set of permissible strategies, S= ftruthful, overly aggressive, and inverseg, a reasonable strategy, an irresponsible strategy, and an irrational strategy. The inverse strategy is irrational because it places higher bids on less favored time slots than more favored ones. The overly aggressive strategy is technically rational in that it does not distort the order of preferences, but it is irresponsible because it causes the agent to spend his wealth quickly. We repeat each strategy pro le for trials of 500 periods each. The results in Figure 5.4 show that in all three de nitions of payo s, the truthful strategy clearly dominates in its ability to yield better payo s. The auction mechanism is able to distinguish strategies and rewards better ones. It is interesting to note that the payo matrices di er in which strategy they consider to CHAPTER 5. EXPERIMENTAL RESULT S 65 be worse. The inverse strategy is the least reasonable in terms of actual and absolute payo s, but the overly aggressive strategy is the least reasonable in terms of heuristic payo s. This suggests that we should compare the di erent notions of utility. truthful inverse overly exaggerate (a) Actual payo matrix Expected Payoffs 0.65 0.70 0.75 0.80 truthful inverse overly exaggerate truthful inverse overly exaggerate (b) Absolute payo matrix (c) Heuristic payo matrix 0.35 0.40 0.45 0.50 0.55 Expected Payoffs 280 300 320 340 360 380 Expected Payoffs Figure 5.4: Using the auction mechanism, visual representations of payo matrices generated for 8 agents with S= ftruthful, inverse, overly aggressiveg, one reasonable strategy and two irrational ones. The strategy pro les are arranged in lexicographic order from left to right. The payo s for each strategy pro le are represented by a set of red, blue, and green bars between the gray lines. Error bars indicate one standard error above and below the mean, and they are calculated as the sample standard deviation over the square root of the size of the sample. The truthful strategy dominates in all three matrices. However, the inverse strategy is the worst in terms of absolute and actual payo s, while the overly aggressive strategy is the worst in terms of heuristic payo s. CHAPTER 5. EXPERIMENTAL RESULT S 66 5.2.5 Comparing Di erent Utilities Figure 5.4 also suggests that various notions of utility may not reach the same equilibria, the decision to choose a de nition is essential for valid results. Actual utility prevails as the most reasonable de nition for both theoretical and practical reasons. First, we believe that actual utility is the most accurate model for the happiness agents achieve. It is a personalized metric unlike the absolute utility, and it emphasizes the end result rather than a means to an end unlike the heuristic utility. Actual utility is also the most capable of distinguishing outcomes in terms of more signi cant p-values. Finally, Figure 5.4 shows that it is the most rational of the three de nitions. Actual utility acutely punishes a purely irrational strategy, the inverse strategy, from a merely irresponsible one, the overly aggressive strategy. Hence from this point on, \utility" refers to \actual utility" unless speci ed. 5.2.6 Random Agent Networks Robustness Check In our experiments, we choose to only use one agent network because given the amount of randomization in each of our trials, randomly generated agent networks would introduce unnecessary noise in our sample data, thus requiring even more trials for accuracy. A complication with this decision stems from the fact that although agent networks are generated from the same initial parameters, its stochastic nature implies that there is still a fair amount of variation among these networks. This is particularly true in a small network of 8 agents, but it also can be the case between di erent subnetworks of larger networks. However, the relative e ectiveness of strategies should be universal regardless of the structure of the agent network, even though their absolute payo s may di er. Absolute payo s are expected to vary widely across di erent, small, agent networks. Even though two networks can face the same parameters in the meeting scheduling problem of distributing jMjmeetings over jAjagents, a well-connected network would have more agents sharing these meetings evenly, while a sparse network with some lone agents would CHAPTER 5. EXPERIMENTAL RESULT S 67 have a fraction of the agents shouldering most of the burden. Further, the lone agent who does not have meetings would arti cially have a utility of 0; the average utility of a network relates inversely to the proportion of lone agents. We need a robustness check that is agnostic to these di erences in network structure, but measures the e ectiveness of relative payo s of various strategies. We conduct the following robustness check. First, we randomly generate 100 agent networks using the same initial parameters that have been tted to the LiveJournal network. Then, we run 100 trials, each using a distinct agent network, and compare the computed payo matrix to another that has been computed from data using only one agent network. In completing this computation, we need to guarantee that it be feasible to generate meeting scheduling problems over every agent network, in particular for sparse networks, so we slightly varied the parameters to decrease the level of constraints. Instead of comparing absolute di erences in the payo s of various strategies between the two experiments, we analyze the di erences between the means of pairs of strategies in each entry of the payo matrix. Even though network structures may and do vary, if strategy Ais always more e ective than strategy Bby the same margin, then we can conclude that the result in the e cacy of strategy Ais robust. We show the results in Figure 5.5. Each color corresponds to di erences between a pair of strategies in the two trials. The three boxes on the left refer to trials using 100 networks, while the three boxes on the right refer to trials using only 1 network. The large size of the boxes on the left side substantiate the claim that running experiments over randomly generated instances of the agent network would have introduced a signi cant amount of noise. We conducted a paired sample t-test for each pair, obtaining p-values of 0.1773, 0.8692, and 0.3299, respectively, all of which are not su cient to reject the null hypothesis that there are di erences between each pair of di erences. -0.010 -0.005 0.000 0.005 0.010 Differences between Expected Payoffs CHAPTER 5. EXPERIMENTAL RESULT S 68 100 networks (1) ..(2) ..(3) 1 network (1) ..(2) ..(3) Pairs of Strategies Figure 5.5: Two experiments of 100 trials each using 100 randomly generated agent networks and 1 network, respectively. They were otherwise identical, with parameters jTj= 16;jAj= 8;jMj= 16 over 50 periods and with S= fthreshold, threshold-wealth, threshold-sel shg. The boxplot shows the distribution of relative e ectiveness of pairs of strategies within each entry of the payo matrix, represented by the di erences in respective expected payo s, i.e. (1) corresponds with the di erences between payo s of threshold-wealth and threshold strategies, and so on. The distributions vary more for the experiment using 100 agent networks, but the di erences in means are not signi cant. 5.3 Results In this section, we rst present results on the auction mechanism, then the doodle mechanism, and nally we compare the two. 5.3.1 Auction: Preliminary Results and New Strategies In order to make meaningful comparisons between the di erent bidding strategies, we limit the strategy pro les to consist of one strategy of each type: only depend on oneself, speculate on others, or a hybrid of the two. Table 5.2 presents the results from experiments over all sets of strategies in these limited combinations. For each set, we calculate the payo matrix, then iteratively seek the proportions of each strategy played in symmetric mixed Nash equilibrium (henceforth abbreviated \NE"). CHAPTER 5. EXPERIMENTAL RESULT S 69 Symmetric Mixed NE Sets of Permissible Strategies Proportions Expected Payo s truthful popular hybrid 1 0.0664 0.9336 0 0.7918 truthful popular hybrid 2 0.0563 0.1805 0.7632 0.7948 truthful wealth hybrid 1 0.4223 0.5764 0.0013 0.7909 truthful wealth hybrid 2 0 0 1 0.7956* truthful wealth contrarian hybrid 1 0.7119 0.0613 0.2268 0.7924 truthful wealth contrarian hybrid 2 0.0633 0.0003 0.9364 0.7955 threshold popular hybrid 1 1 0 0 0.8046* threshold popular hybrid 2 1 0 0 0.8045* sel sh popular hybrid 1 1 0 0 0.7930* sel sh popular hybrid 2 0.4106 0 0.5894 0.7935* sel sh wealth hybrid 1 1 0 0 0.7932* sel sh wealth hybrid 2 0.1565 0 0.8435 0.7955 sel sh wealth hybrid 2 0.9307 0 0.0693 0.7948 sel sh wealth contrarian hybrid 1 0.9566 0.0434 0 0.7951 sel sh wealth contrarian hybrid 2 0.2233 0.0033 0.7733 0.7954 sel sh wealth contrarian hybrid 2 0.7738 0.1944 0.0318 0.7946 aggressive popular hybrid 1 0.7734 0.1767 0.0498 0.7922 aggressive popular hybrid 2 0.1331 0 0.8669 0.7951 aggressive wealth hybrid 1 0.0037 0.5001 0.4962 0.7919 aggressive wealth hybrid 2 0 0 1 0.7954 aggressive wealth contrarian hybrid 1 1 0 0 0.7919 aggressive wealth contrarian hybrid 2 0.6051 0.0006 0.3943 0.7935 Table 5.2: Symmetric mixed NE found using the auction model and actual utility for various strategy pro les. Expected payo s in the last column are given by equation (4.1). * indicates that replicator dynamics algorithm has not completely converged, but as the cycles are miniscule and there seems to be an indisputable winner in these pro les, I rounded the results. We should note that some strategy pro les have multiple symmetric mixed NE that appear repeatedly after more trials, such as S = fsel sh, wealth contrarian, hybrid 2g. This particular case is perhaps due to the fact that the hybrid 2 strategy, depending on the agent’s wealth, toggles between the sel sh and the wealth contrarian strategies, so it is unsurprising that it appears to be almost symmetrical with the sel sh strategy as they may act similarly. The anomaly to notice in this table is that the threshold strategy is always the only CHAPTER 5. EXPERIMENTAL RESULT S 70 strategy played in equilibrium if it has been included in the set of permissible strategies. Further, its expected payo s average 0.8046 while all other expected payo s lie between 0.7909 and 0.7956. This suggests that current strategies can be improved by taking on features of the threshold strategy. I introduce a set of threshold- strategies, all of which maintain their original characteristics but mimic the threshold strategy by placing 0 bids for assignments with values below a threshold ci, as given in Equation (3.4). The overall e ect is to amplify the admissible bids such that they are only placed on the most important meetings, and to discard entirely bids for all other meetings. For instance, the threshold-aggressive bidder iwould still bid aggressively but only over the set of assignments where pi(m) ci. I run simulations over the following strategies: threshold, threshold-sel sh, threshold-aggressive, threshold-wealth, and threshold-wealth-contrarian. The threshold-popular strategy was initially considered, but performed strictly worse than the others so it was subsequently dropped. The original threshold strategy becomes analogous to the truthful strategy in this set because it does not distort the preferences for assignments that are above the threshold. Table 5.3 presents the results for this set of threshold- strategies. At rst glance, the mixed equilibria almost always includes the threshold strategy. However, it would be naive to conclude at this point that agents gravitate towards a particular mix of strategies in equilibrium. We need to rst understand how to interpret the simpler case of pure strategy NE, then develop a metric for evaluating the e ectiveness of each strategy relative to others, and nally draw conclusions for the mixed strategy cases. 5.3.2 Interpreting Pure Equilibria In order to interpret the presented symmetric mixed NE, we need to rst establish that each entry represents a stable point from which no agent in the population can improve their outcome by deviating to a di erent strategy. This is challenging to con rm with mixed strategy NE, so we shed light using the simpler case of pure strategy NE. CHAPTER 5. EXPERIMENTAL RESULT S 71 Symmetric Mixed NE Sets of Permissible Strategies Proportions Expected Payo s threshold -aggressive -contrarian 0.6731 0 0.3269 0.8057 threshold -aggressive -sel sh 0.0459 0.7427 0.2114 0.8049 threshold -aggressive -sel sh 1 0 0 0.8052 threshold -aggressive -wealth 0.1829 0.7440 0.0731 0.8049 threshold -sel sh -contrarian 0 1 0 0.8045* threshold -wealth -contrarian 0.3171 0.5098 0.1730 0.8046 threshold -wealth -contrarian 0.3875 0.0698 0.5427 0.8050 threshold -wealth -sel sh 0.3952 0.2931 0.3116 0.8046 -aggressive -contrarian -sel sh 0.2022 0 0.7978 0.8046* -aggressive -contrarian -sel sh 1 0 0 0.8052* -aggressive -contrarian -wealth 0.8353 0.1647 0 0.8050* -aggressive -sel sh -wealth 0.6563 0.2248 0.1189 0.8047 -contrarian -sel sh -wealth 0 0.2868 0.7132 0.8044* -contrarian -sel sh -wealth 0.6253 0 0.3747 0.8046* Table 5.3: Symmetric mixed Nash equilibria found using the auction model and the set of threshold- strategies. Since the context is clear, the strategies are abbreviated to only the parts after \threshold"; further, \threshold-wealth-contrarian" is abbreviated to \contrarian." A pure strategy Nash equilibrium is a Nash equilibrium in which only one strategy in the permissible set is played. For example, given S= fthreshold, threshold-sel sh, thresholdwealth-contrariang, replicator dynamics indicate that in equilibrium, players would all play the pure strategy threshold-sel sh. We consider an agent’s expected payo s if he was to switch to playing another strategy, in this case, either threshold or threshold-wealthcontrarian. Table 5.7 presents the relevant rows of the payo matrix. When all agents are playing the threshold-sel sh strategy, the expected payo is 0.8045. If an agent deviates to the threshold strategy, he can expect to have a lower payo of 0.7921, which he would not prefer. If an agent deviates to the threshold-contrarian strategy, he can expect to have an even lower payo of 0.7872, which he also would not prefer. This simple test veri es that in this case, no agent is willing to deviate from the pure strategy equilibria. CHAPTER 5. EXPERIMENTAL RESULT S 72 # Agents Playing Expected Payo s threshold -sel sh -contrarian threshold -sel sh -contrarian p-values Equilibrium 0 8 0 0 0.8045 0 NA Deviation 1 1 7 0 0.7921 0.8075 0 0.0660 Deviation 2 0 7 1 0 0.8052 0.7872 0.0348 Table 5.4: Relevant rows of the payo matrix for S = fthreshold, threshold-sel sh, threshold-wealth-contrariang. P-values are given by the t-test for di erence in mean expected payo s between each pair of strategies; they are signi cant at = 0:10. 5.3.3 Navigating Di erent Mixed Nash Equilibria Because our equilibria are computed over games with restricted sets of strategies, we cannot generalize to the ultimate equilibrium behavior: what would agents play if they could choose any strategy? A way to navigate the set of symmetric mixed NE is to start from one NE, introduce another strategy not included in the mix by having one agent play the new strategy while others still play the original mixed strategy. The \invasion" is successful if the expected payo of the \invading" strategy is higher than that of the original equilibrium, in which case we can compute the mixed NE including the invading strategy. Another advantage of this approach is that the successfulness of a given strategy in invading mixed equilibria of other strategies signi es its relative e ectiveness. In order to conclude whether a strategy can successfully invade an equilibrium of x strategies, we require the expected payo s information for all strategy pro les of the x+ 1 strategies. Given our data of payo matrices consisting of 3 strategies in each set, we can study invasions into 2-strategy mixed NE. This process generalizes to larger sets of strategies if given the requisite payo matrices. From a payo matrix, we rst calculate the mixed strategy NE and expected payo s for each of the three sets of two strategies over the entries where the respective third strategy does not appear. Then, we introduce the unused strategy into the population by letting one agent play the invading strategy, while seven agents keep their mix of two strategies at NE. We compute the expected payo of the deviating agent using equation (4.1). If it is lower CHAPTER 5. EXPERIMENTAL RESULT S 73 than the equilibrium payo of the two original strategies, then no agent would deviate by playing this strategy and the 2-strategy equilibrium would be maintained. If it is higher, then this strategy has successfully invaded the population. Over every set of strategies previously considered in Table 5.3, we evaluate the successfulness of each component strategy in invading a mix of the other two strategies in equilibrium. Table 5.7 summarizes the results. Our trials suggest that the aggressive strategy is the most successful, at 100%, while the threshold strategy is a close second at 83%. On the other hand, the sel sh and speculating on wealth strategies are each successful only once, at 17%. This result is promising, indicating that agents often bene t by using the aggressive or threshold strategies, but are usually harmed if they adopt the sel sh or speculating on wealth strategies. Invading Strategy # Successful Invasions # Attempted Invasions Success Rate -aggressive 6 6 1 threshold 5 6 0.8333 -contrarian 2 6 0.3333 -sel sh 1 6 0.1667 -wealth 1 6 0.1667 Table 5.5: Summary of performance of di erent strategies in invading 2-strategy equilibria using the auction model. 5.3.4 Doodle: Sel sh Strategy Dominates The set of applicable strategies in the doodle model is di erent because of the trivial notion of \wealth." In particular, speculating on wealth reduces to the truthful strategy, while the hybrid strategies that depend on wealth do not correlate to any realistic scenarios. The total wealth contrarian strategy still applies, but here it morphs into a strategy that speculates on the number of attendees at each meeting. Further, since preferences cannot be over-expressed in the doodle model, certain strategies have slightly di erent consequences on poll responses as opposed to on bids. For instance, the aggressive strategy maps to a CHAPTER 5. EXPERIMENTAL RESULT S 74 generous or exible strategy, because the aggressive agent agrees to attend meetings at more times. With the remaining strategies|truthful, threshold, sel sh, aggressive, popular, and contrarian|we run experiments with various combinations and present results in Table 5.6. Symmetric Mixed NE Sets of Permissible Strategies Proportions Expected Payo s contrarian popular truthful 1 0 0 0.7273 contrarian popular aggressive 1 0 0 0.7274 sel sh popular truthful 1 0 0 0.7273* sel sh popular contrarian 1 0 0 0.7276* sel sh popular aggressive 1 0 0 0.7271 sel sh threshold popular 1 0 0 0.7270* sel sh threshold popular 0.5386 0.4614 0 0.7111* sel sh threshold aggressive 0.3680 0.6320 0 0.7035* threshold popular contrarian 0.8860 0.1140 0 0.6899* threshold popular truthful 0.8157 0.1842 0 0.6945* threshold popular aggressive 0.9165 0.0835 0 0.6878* Table 5.6: Symmetric mixed Nash equilibria using the doodle model for various strategy pro les. The sel sh strategy emerges as the only strategy played in equilibrium. By observation, the truthful strategy is never included in any NE while the sel sh strategy is always included, if it is part of the initial strategy pro le. We show this more rigorously. Starting from an arbitrary mixed NE that does not include the sel sh strategy, such as playing the threshold strategy with 89% probability and the popular strategy with 11% probability, we consider one agent’s outlook if he was to deviate. However, none of the strategies besides the sel sh strategy can remain in the population because they do not appear in any mixed NE. Once an agent switches to the sel sh strategy, the expected payo rises from 0.69 to 0.71 or 0.73, depending on the particular equilibrium, and the sel sh strategy takes over to become a pure strategy NE. The result is the same if we start with all agents in the population playing the contrarian strategy. Table 5.7 summarizes the successfulness of each strategy in invading mixes of two other strategies in equilibrium. The superiority of the sel sh strategy is further substantiated; CHAPTER 5. EXPERIMENTAL RESULT S 75 an agent can improve his utility 100% of the time by behaving sel shly. The contrarian strategy follows at 75%, but the threshold strategy is at 0%. Interestingly, strategies are almost completely reversed in order of e ectiveness in the auction and doodle models. Invading Strategy # Successful Invasions # Attempted Invasions Success Rate sel sh 551 contrarian 3 4 0.75 aggressive 2 4 0.5 popular 4 9 0.444 truthful 1 3 0.333 threshold 0 5 0 Table 5.7: Summary of performance of di erent strategies in invading 2-strategy equilibria using the doodle model. Chapter 6 Discussion In this chapter, I discuss the results from our experiments and o er explanations for what we observe. Next, I acknowledge major critique of the work and present open questions for future research. 6.1 Auction vs. Doodle We observe two salient di erences between the auction and doodle models: Agents can expect to improve utility by 11% in the auction model over the pollbased, doodle model. All else being equal, expected payo s in equilibrium is 0.81 under auction and 0.73 under doodle, in terms that are relative to their own notions of ideal outcomes. Agents bene t the most from employing aggressive and threshold strategies in the auction model, as opposed to sel sh and speculative strategies in the doodle model. We o er some explanations and propose a few theories as to why. Given a meeting mthat agent iwants to attend, recall that his true preferences are represented by the set of v(m;t), while his reported preferences are expressed in the form of bii(m;t) under auction and li(m;t) under doodle. Also recall that the auction mechanism 76 CHAPTER 6. DISCUSSION 77 chooses the assignment with the highest overall bids by solving the maximization problem presented in Equation (3.1): Xj2 bj(m;t): argmax A m;t The doodle mechanism chooses the assignment with the highest percentage of bids, thus maximizing a slightly di erent quantity, as presented in Equation (3.3): P j2A (m;t) lj ; d(m) argmax m;t where d(m) = degree of meeting m2G M. The presence of d(m) in the second equation creates an inverse relationship betwe the importance of an a rmative poll response from agent iand the number of attendees the meeting. This perhaps explains why speculating against wealth is relatively succes in invading an equilibrium in the doodle model, but not as e ective in the auction mode Each agent solves the problem of maximizing the value of the chosen assignment given others’ expressed preferences. For ease of notation, let us represent poll respon as binary \bids," li(m;t) : bi(m;t) 2f0;1g, and vi(m;t) = arg max Oi(m;t) = Xj2A j6=ibj(m;t) represent the collective the reported preferences of all other agents. Then, the agent’s maximization problem becomes: max(bi(m;t) + Oi(m;t)): t arg max vi(m;t) bi(m;t) We consider two extreme cases of an agent’s state of knowledge about others’ preferences to draw conclusions about his behavior across the spectrum. In one extreme, if an agent is able to accurately predict Oi(m;t), then he would act the most sel shly in both the auction CHAPTER 6. DISCUSSION 78 and the doodle models, i.e. bidding a positive amount only at the time that solves his maximization problem, and 0 elsewhere. The sel sh strategy is the most rational choice for the omniscient agent. However, it is di cult to have perfect knowledge of other people’s bids, in practice and in execution|it would require everyone solving the same equation simultaneously. In the Doodle application, since everyone can see all previously submitted poll responses, the last person to answer the poll e ectively has perfect knowledge, but not everyone can be the last person. In the other extreme, if an agent does not have any knowledge of Oi(m;t), then he would continue to act sel shly under the doodle model, but be more generous under the auction model. The case is trivial if other agents’ preferences positively correspond to the agent’s own preferences, because the favored meeting time will be chosen as long as the agent bids rationally, i.e. bid a greater amount for more favored time slots than for less favored ones. However, rationality diverges in the two models if other agents’ preferences negatively correspond to the agent’s own preferences. In the doodle model, agents cannot inuence a less favored time slot from being chosen before a more favored one. If he places a bid, or bids, on less favored time slot, then he will only amplify the misalignment. So his dominant strategy is to only say \yes" so long as others’ preferences agree with his own, but as soon as others’ preferences disagree, he should never say \yes" thereafter. This implies that if others highly disagree over their preferences, then the agent has no choice but to say \yes" only on his favorite time slot, or as many favorite time slots as he is indi erent between. It becomes a dilemma because the agent cannot indicate in any way his preferences between time slots where he has replied, \no," so should one of them be chosen, the choice would not have any input from him. In the auction model, as long as an agents bids rationally, his bids are would in e ect \smooth" over the parts of the curve where others’ preferences negatively correlate with his own. Bidding truthfully, or proportional to truthful preferences, would not incur any CHAPTER 6. DISCUSSION 79 additional cost to the agent in the sense that he receives in value proportional to the bid he has paid. If he has exaggerated his bid over an assignment and it is chosen, then he would be burdened to pay an excessive amount compared to the value that he gains. If given the means, bidding more generously is better than purely being sel sh because the agent is still able to voice his opinion on the time slots that he does not prefer as much as his others, while still able to distinguish between various tiers of preferences. Most real world scenarios are in-between the two extremes: agents often have imperfect knowledge of Oi(m;t). These two scenarios shows that expressed preferences in the doodle model depend heavily on the accuracy with which one can predict others’ responses, thus acting sel shly is safe and rational. But in the auction, a good strategy is bidding over more time slots regardless of whether people agree or disagree on preferences, though a better knowledge of Oi(m;t) will allow the agent to use his wealth more wisely. The agent has no choice but to bid conservatively in the doodle mechanism, but has a choice to bid conservatively or more liberally in the auction mechanism. In the latter scenario, the agent is able to make better choices to inuence the meetings that he really cares about|as opposed to depending his bids on arbitrary factors such as the number of attendees present|and let others take the lead in deciding for meetings that he do not care as much. Thus, this agent is likely to be happier with his overall schedule. 6.2 Critique We acknowledge and address major critiques in our work. Better prediction of others’ preferences may change the relative e ectiveness of bidding strategies. This points to the crux of strategies and why they matter. We have studied a few speculative strategies that modify reported preferences based on the individuals’ relative importance and exibility, represented in the form of popularity and virtual wealth. CHAPTER 6. DISCUSSION 80 The common rationale underlying both is that more popular and busier people are often more constrained by time, so one should be more exible in order ensure that a meeting will occur. Results show that these strategies do not perform well in the auction mechanism but are more useful in the doodle mechanism, which suggest that the auction mechanism may be more impervious to speculative manipulation. However, since these strategies only modify relative bids between meetings, there is merit to exploring more strategies that are time slot-speci c or can learn from experience. The model for the meeting scheduling problem makes simplifying assumptions. We had assumed that there are no externalities between projects in the sense that the values to completing multiple projects are absolutely additive. This is perhaps not reasonable. Certain projects may be substitutable, and some projects may enhance, or detract from, the value of others. For instance, one may wish to either play laser tag with friends or attend a party with colleagues, but not both. Learning yoga along with taking a class on healthy diet may nicely complement each other, and an individual values the combined health bene ts as a positive externality. If these externalities cannot be captured within the construct of a project, then the model can bene t from additional expressiveness that incorporates relationships between projects and accounts for them in evaluating an individual’s true preferences. Other possible extensions include generalizing our auction framework to extend the value revision process between bids to account for these externalities, or extending the auction process to understand more expressive preferences. Is there an e ective \doodle strategy" in the mix? While the e ectiveness of various strategies in the doodle model depends heavily on the accuracy of predicting the preferences of others, better strategies also seem to only incentivize more sel shness under doodle. While we recognize that rationality vary by CHAPTER 6. DISCUSSION 81 context, and perhaps another strategy is more optimal for doodle, it is unclear whether individuals would be happier with their outcomes as a result of better predictive ability. 6.3 Open Questions and Future Research Our work opens two intriguing directions for future investigation: more realism on one hand, and theoretical proof on the other. Due to the applicable nature of the research question, many individuals face situations where they need to coordinate their schedules with others’, and for a few, it is a way of life. A realistic model that can extend and apply to these situations would improve productivity, reduce frustration over scheduling as well as the amount of time required. Towards this end of making an application that people can use, we can pose various questions and propose extensions to improve the realism of the model. Some include: How can we account for the psychology of agents? Agents may wish to bid in a way to earn people’s trust, perhaps in the form of \karma points." Agents may even act in ways that appear to be irrational. Can the system capture more complicated reasons people would want to conceal their preferences? For instance, if one was unwilling to attend a meeting requested by his boss but does not want his boss to know. Encoding the relative importance of guests at a meeting, perhaps by variations in initial distribution of wealth. If someone is absolutely necessary for a meeting to proceed, then this person would have a di erent strategy: bid less and be more selective about times. How can we improve the expressiveness of the model to extend dependency relationships between projects? How can we allow projects to be generated dynamically? A model where projects are CHAPTER 6. DISCUSSION 82 generated dynamically can approximate real-world scenarios where people organically schedule meetings with others. How can the ndings be generalized to an actual scheduling application: people over a network input commitments, dependencies, priorities and the app would produce a uid and optimal schedule? Another direction is to generalize the results and demonstrate their robustness in a variety of settings. In moving towards a theoretical proof of the properties required for a strategyproof and optimal system to schedule meetings, we can pose many questions regarding rationality of strategies and the impact of mechanism design choices in equilibrium outcomes of strategies. Some include: How can strategies be improved? Some possibilities include developing learning algorithms that can remember from past experiences with similar meetings, similar people, or similar time slots. Also, if it is possible to predict when people will disagree the most about meeting times, we can develop smarter strategies, i.e. if an agent is indi erent between timeslots of a meeting, then he can bid low amounts across the board. The doodle application partially has this property in the sense that the polls are visible to everyone. How do di erences in network structures a ect outcomes and equilibrium strategies? Can we rule out these network e ects, if they exist? Investigate networks of larger size, varying structures, and of subnetworks within networks. How can one change the auction design to make sure that one’s bids would only depend on his preferences, and not at all with others’ bids? What is necessary? Chapter 7 Conclusion We have established that the problem of coordinating schedules among self-interested individuals is a salient problem for which there exist multiple solutions. However, these solutions, such as e-mails, Microsoft Outlook, or Doodle, require trade-o s between privacy and e ciency and do not guarantee the best schedule. Further, and this is perhaps most vexing from a user’s standpoint, they are optimal only for niche subproblems, but prove cumbersome when applied outside. A more natural interface is one in which users merely need to provide an ordering of their commitments (with deadlines) by priority. The challenge then lies in best using this information for multiple users at once to generate the ideal schedule providing the maximal utility to all users. We draw on ideas from current economic theory to propose and evaluate the e cacy of scheduling meetings using an automated auction system with a virtual currency. Here, bids are placed for meeting times in accordance with the priorities provided, until a complete schedule is reached. We simulate the model over a realistic set of potential users so that our conclusions accurately reect the viability of this approach. Further, we show that the schedule generated is more utile and incentivizes people to represent priorities more truthfully, so that there is little bene t in attempting to game the system, which is important for a natural interface. 83 CHAPTER 7. CONCLUSION 84 One contribution of this work is to implement a faithful model simulating the commitments and priorities of people over a network. In order to produce relevant results, the model must be based on insights common to many large organizations, so that the potential results of the model are realized when applied to actual groups of people. The model proposed is exible and generalizable to larger instances, more complex settings, and open to various extensions. The crux of the model lies in a heuristic function which creates an ordering of preferences from priorities and deadlines of commitments, which relates the user’s input to our auction mechanism. Further, we recognize the potential to re ne results by nessing this function. The main contribution of this work is to demonstrate the theoretical potential of using an auction-based mechanism to move towards an optimal and strategyproof way to schedule meetings between people. Simulating the auction mechanism over a set of ordered commitments generates schedules which are 11% more utile than those generated by a poll-based mechanism using the same input. This increase in utility is due to the auction mechanism’s ability to understand and fully exploit the expressiveness of the preferences provided, in the form of bids. Further, we show that the most e ective bidding strategies do not require knowledge of other agents’ information in the auction mechanism. Two variations of the truthful strategy, the threshold and aggressive strategies, represent their preferences proportional to values, though ampli ed. On the other hand, the sel sh strategy disproportionately weights the top priority meeting at the cost of the others. In the doodle mechanism, this is manifest as only voting for the meeting times one wants as opposed to those where one is available. We nd that the sel sh strategy is almost always harmful in the auction mechanism, whereas it is the most e ective in the doodle mechanism. Thus, the former favors a relative notion of truthfulness, while the latter favors sel shness and manipulation by speculating on outside information. This thesis demonstrates that coordinating meetings among collaborating entities using CHAPTER 7. CONCLUSION 85 the auction mechanism can nd schedules e ectively incorporating the preferences of all these entities. Furthermore, the conceptual framework of the auction mechanism lends itself well to an intuitive user interface which merely requires an ordering of commitments. Both the theoretical and practical aspects imply that such a tool would be transformative in many aspects of our busy social and professional lives. Bibliography [1] E. Budish, and E. Cantillon. The Multi-unit Assignment Problem: Theory and Evidence from Course Allocation at Harvard. preprint. http://faculty.chicagobooth.edu/ eric.budish/research/budish- cantillon- course- alloc- harvard- Dec2009.pdf. [2] J. Leskovec, D. Chakrabarti, J. Kleinberg, C. Faloutsos, and Z. Ghahramani. Kronecker graphs: An Approach to Modeling Networks. arXiv:0812.4905v2, 2009. [3] Stanford Network Analysis Package (SNAP). SNAP: Network datasets: LiveJournal social network. http://snap.stanford.edu/data/soc- LiveJournal1.html [4] M. Mitzenmacher. A Brief History of Generative Models for Power Law and Lognormal Distributions. Internet Mathematics, vol 1, No. 2, pp. 226-251, 2004. [5] N. Nisan, T. Roughgarden, E. Tardos, and V. V. Vizirani. Algorithmic Game Theory. Cambridge University Press: New York. 2007. [6] D. M. Reeves, M. P. Wellman, J. K. MacKie-Mason, and A. Osepayshvili. Exploring bidding strategies for market-based scheduling. Decision Support Systems, vol 39, pp. 67-85, 2005. [7] A. E. Roth. The Evolution of the Labor Market for Medical Interns and Residents: A Case Study in Game Theory. Journal of Political Economy, 92, 1984, 991-1016. 86 BIBLIOGRAPHY 87 [8] A. E. Roth, and E. Peranson. The Redesign of the Matching Market for American Physicians: Some Engineering Aspects of Economic Design. American Economic Review, 89, 4, September, 1999. 748-780. [9] A. E. Roth. The Economist as Engineer: Game Theory, Experimentation, and Computation as Tools for Design Economics. Econometrica, Vol. 70, No. 4 (July, 2002), 1341-1378. [10] I. E. Sutherland. A Futures Market in Computer Time. Communications of the ACM, vol 11, No. 6, pp. 449-451, 1968.