Round-robin item allocation
Round robin is a procedure for fair item allocation. It can be used to allocate several indivisible items among several people, such that the allocation is "almost" envy-free: each agent believes that the bundle they received is at least as good as the bundle of any other agent, when at most one item is removed from the other bundle. In sports, the round-robin procedure is called a draft.
Setting
There are m objects to allocate, and n people with equal rights to these objects. Each person has different preferences over the objects. The preferences of an agent are given by a vector of values - a value for each object. It is assumed that the value of a bundle for an agent is the sum of the values of the objects in the bundle.Description
The protocol proceeds as follows:- Number the people arbitrarily from 1 to ;
- While there are unassigned objects:
- * Let each person from 1 to pick an unassigned object.
Additivity requirement
The round-robin protocol requires additivity, since it requires each agent to pick their "best item" without knowing what other items they are going to get; additivity of valuations guarantees that there is always a "best item". In other words, it assumes that the items are independent goods. The additivity requirement can be relaxed to weak additivity.Properties
The round-robin protocol is very simple to execute: it requires only m steps. Each agent can order the objects in advance by descending value and then pick an object in time.The final allocation is EF1 - envy-free up to one object. This means that, for every pair of agents and, if at most one object is removed from the bundle of, then does not envy.
Additionally, round-robin guarantees that each agent receives the same number of items, or almost the same number of items. Thus, it is useful in situations with simple cardinality constraints, such as: assigning course-seats to students where each student must receive the same number of courses.
Efficiency considerations
Round-robin guarantees approximate fairness, but the outcome might be inefficient. As a simple example, suppose the valuations are:| z | y | x | w | v | u | |
| Alice's value: | 12 | 10 | 8 | 7 | 4 | 1 |
| George's value: | 19 | 16 | 8 | 6 | 5 | 1 |
Round-robin, when Alice chooses first, yields the allocation with utilities and social welfare 47. It is not Pareto efficient, since it is dominated e.g. y the allocation, with utilities.
An alternative algorithm, which may attain a higher social welfare, is the Iterated maximum-weight matching algorithm. In each iteration, it finds a maximum-weight matching in the bipartite graph in which the nodes are the agents and the items, and the edge weights are the agents' values to the items. In the above example, the first matching is, the second is, and the third is. The total allocation is with utilities ; the social welfare is 50, which is higher than in the round-robin allocation.
Note that even iterated maximum-weight matching does not guarantee Pareto efficiency, as the above allocation is dominated by with utilities.
Strategy considerations
Round-robin is not a truthful mechanism. As an example, suppose there are 60 items which Alice values at 60,59,...,2,1. George ranks the items as follows : 59 > 57 >... > 3 > 1 > 2 > 4 >... > 58 > 60.Alice plays first. If she reports her true valuations, she gets the thirty even-valued items as George takes the thirty odd-valued ones, so Alice's value is 930. But if Alice reports 59 > 57 >.., > 25 > 23 > 60 > 58 >... > 24 > 22 >... then she first gets ten odd-valued items 59, 55,..., 27, 23 and then 20 even-valued ones 60, 58,..., 24, 22, and her value is 410+820=1230. Instead of the ten low-valued even items 2,...,20 she got ten high-valued odd items; her gain is 21 + 23 +... + 37 + 39 = 300.
Round-robin for groups
The round-robin algorithm can be used to fairly allocate items among groups. In this setting, all members in each group consume the same bundle, but different members in each group may have different preferences over the items. This raises the question of how each group should decide which item to choose in its turn. Suppose that the goal of each group is to maximize the fraction of its members that are "happy", that is, feel that the allocation is fair. Suppose also that the agents have binary additive valuations, that is, each agent values each item at either 1 or 0. Then, each group can decide what item to pick using weighted approval voting:- Each group member is assigned a weight. The weight of member j is a certain function w, where:
- * rj is the number of remaining goods that j approves;
- * sj is the number of goods that j
's group should still get such that the chosen fairness criterion is satisfied for j. - Each remaining item is assigned a weight. The weight of item g is the sum of weights of the agents who approve g: sum of w for all j such that j values g at 1.
- The group picks an item with the largest weight.
- .
When using this weight function and running RWAV with two groups, the fraction of happy members in group 1 is at least B, and the fraction of happy members in group 2 is at least B. The function s is determined by the fairness criterion. For example, for 1-out-of-3 maximin-share fairness, s = floor. The following table shows some values of the function B, with the values of B boldfaced:
| r-s ↓ s → | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
| -1 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | |
| 0 | 1 | 0.500 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 |
| 1 | 1 | 0.750 | 0.375 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 |
| 2 | 1 | 0.875 | 0.625 | 0.313 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 |
| 3 | 1 | 0.938 | 0.781 | 0.547 | 0.273 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 |
| 4 | 1 | 0.969 | 0.875 | 0.711 | 0.492 | 0.246 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 |
| 5 | 1 | 0.984 | 0.930 | 0.820 | 0.656 | 0.451 | 0.226 | 0.000 | 0.000 | 0.000 | 0.000 |
| 6 | 1 | 0.992 | 0.961 | 0.891 | 0.773 | 0.612 | 0.419 | 0.209 | 0.000 | 0.000 | 0.000 |
| 7 | 1 | 0.996 | 0.979 | 0.935 | 0.854 | 0.733 | 0.576 | 0.393 | 0.196 | 0.000 | 0.000 |
| 8 | 1 | 0.998 | 0.988 | 0.961 | 0.908 | 0.820 | 0.698 | 0.546 | 0.371 | 0.185 | 0.000 |
| 9 | 1 | 0.999 | 0.994 | 0.978 | 0.943 | 0.882 | 0.790 | 0.668 | 0.519 | 0.352 | 0.176 |
| 10 | 1 | 1.000 | 0.997 | 0.987 | 0.965 | 0.923 | 0.857 | 0.762 | 0.641 | 0.497 | 0.336 |
From this one can conclude that the RWAV algorithm guarantees that, in both groups, at least 75% of the members feel that the allocation is 1-out-of-3 MMS fair.
Extensions
1. The round-robin protocol guarantees EF1 when the items are goods and when they are chores. However, when there are both goods and chores, it does not guarantee EF1. An adaptation of round-robin called double round-robin guarantees EF1 even with a mixture of goods and chores.2. When agents have more complex cardinality constraints, round-robin might fail. However, combining round-robin with the envy-graph procedure gives an algorithm that finds allocations that are both EF1 and satisfy the cardinality constraints.
3. When agents have different weights, a generalized round-robin protocol called weighted round-robin guarantees EF1 when the items are goods and the reversed weighted round-robin guarantees EF1 when the items are chores.