Round robin is a procedure for
fair item allocation
Fair item allocation is a kind of a fair division problem in which the items to divide are ''discrete'' rather than continuous. The items have to be divided among several partners who value them differently, and each item has to be given as a whole ...
. It can be used to allocate several indivisible items among several people, such that the allocation is "almost"
envy-free Envy-freeness, also known as no-envy, is a criterion for fair division. It says that, when resources are allocated among people with equal rights, each person should receive a share that is, in their eyes, at least as good as the share received by a ...
: each agent believes that the bundle he 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
Draft, The Draft, or Draught may refer to:
Watercraft dimensions
* Draft (hull), the distance from waterline to keel of a vessel
* Draft (sail), degree of curvature in a sail
* Air draft, distance from waterline to the highest point on a vesse ...
.
Setting
There are ''m'' objects to allocate, and ''n'' people ("agents") 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 (in other words, the agents' valuations are an
additive set function on the set of objects).
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.
It is assumed that each person in his turn picks an unassigned object with a highest value among the remaining objects.
Additivity requirement
The round-robin protocol requires additivity, since it requires each agent to pick his "best item" without knowing what other items he is going to get; additivity of valuations guarantees that there is always a "best item" (an item with a highest value). In other words, it assumes that the items are
independent goods
Independent goods are goods that have a zero cross elasticity of demand. Changes in the price of one good will have no effect on the demand for an independent good. Thus independent goods are neither complements nor substitutes.
For example, a ...
. 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 (this takes O(''m'' log ''m'')
time per agent) 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
.
: ''Proof:''
For every agent
, divide the selections made by the agents to sub-sequences: the first subsequence starts at agent 1 and ends at agent
; the latter subsequences start at
and end at
. In the latter subsequences, agent
chooses first, so he can choose his best item, so he does not envy any other agent. Agent
can envy only one of the agents
, and the envy comes only from an item they selected in the first subsequence. If this item is removed, agent
does not envy.
Additionally, round-robin guarantees that each agent receives the same number of items (''m''/''n'', if ''m'' is divisible by ''n''), or almost the same number of items (if ''m'' is not divisible by ''n''). 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:
Round-robin, when Alice chooses first, yields the allocation
with utilities (24,23) and social welfare 47. It is not
Pareto efficient
Pareto efficiency or Pareto optimality is a situation where no action or allocation is available that makes one individual better off without making another worse off. The concept is named after Vilfredo Pareto (1848–1923), Italian civil engin ...
, since it is dominated e.g. y the allocation
, with utilities (25,25).
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 the mathematical field of graph theory, a bipartite graph (or bigraph) is a graph whose vertices can be divided into two disjoint and independent sets U and V, that is every edge connects a vertex in U to one in V. Vertex sets U and V are ...
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 (18,32); the social welfare (- the sum of utilities) 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 (xwv, zyu) with utilities (19,36).
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 (according to their personal preferences). Suppose also that the agents have binary additive valuations, that is, each agent values each item at either 1 ("approve") or 0 ("disapprove"). Then, each group can decide what item to pick using ''weighted
approval voting
Approval voting is an electoral system in which voters can select many candidates instead of selecting only one candidate.
Description
Approval voting ballots show a list of the options of candidates running. Approval voting lets each voter i ...
'':
* Each group member is assigned a weight. The weight of member ''j'' is a certain function ''w''(''r
j'',''s
j''), where:
** ''r
j'' is the number of remaining goods that ''j'' approves;
** ''s
j'' 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''(''r
j'',''s
j'') for all ''j'' such that ''j'' values ''g'' at 1.
* The group picks an item with the largest weight.
The resulting algorithm is called RWAV (round-robin with weighted approval voting). The weight function ''w''(''r'',''s'') is determined based on an auxiliary function ''B''(''r'',''s''), defined by the following recurrence relation:
*
*