Envy-free item allocation
Envy-free item allocation is a fair item allocation problem, in which the fairness criterion is envy-freeness - each agent should receive a bundle that they believe to be at least as good as the bundle of any other agent.
Since the items are indivisible, an EF assignment may not exist. The simplest case is when there is a single item and at least two agents: if the item is assigned to one agent, the other will envy.
One way to attain fairness is to use monetary transfers. When monetary transfers are not allowed or not desired, there are allocation algorithms providing various kinds of relaxations.
Finding an envy-free allocation whenever it exists
Preference-orderings on bundles: envy-freeness
The undercut procedure finds a complete EF allocation for two agents, if-and-only-if such allocation exists. It requires the agents to rank bundles of items, but it does not require cardinal utility information. It works whenever the agents' preference relations are strictly monotone, but does not need to assume that they are responsive preferences. In the worst case, the agents may have to rank all possible bundles, so the run-time might be exponential in the number of items.Preference-orderings on items: necessary/possible envy-freeness
It is usually easier for people to rank individual items than to rank bundles. Assuming all agents have responsive preferences, it is possible to lift the item-ranking to a partial bundle-ranking. For example, if the item-ranking is w>x>y>z, then responsiveness implies that > and >, but does not imply anything about the relation between and, between and, etc. Given an item-ranking:- An allocation is necessarily envy-free if it is envy-free according to all responsive bundle-rankings consistent with the item-ranking;
- An allocation is possibly envy-free if for each agent i, there is at least one responsive bundle-ranking consistent with i's item-ranking, by which i does not envy;
- An allocation is weakly possibly envy-free if for each pair of agents i,j, there is at least one responsive bundle-ranking consistent with i's item-ranking, by which i does not envy j;
- An allocation is necessarily Pareto-optimal if it is Pareto-optimal according to all responsive bundle-rankings consistent with the item-ranking ;
- An allocation is possibly Pareto-optimal if it is Pareto-optimal according to at least one responsive bundle-ranking consistent with the item-ranking.
- Bouveret, Endriss and Lang assume that all agents have strict preferences. They study the algorithmic questions of finding a NEF/PEF allocation with an additional efficiency condition, particularly, completeness or NPE or PPE. In general, PEF is easy while NEF is hard: checking whether a NEF allocation exists is NP-complete, while checking existence of WPEF can be done in polynomial time.
- Aziz, Gaspers, Mackenzie and Walsh study the more general setting in which agents may have weak preferences. In this setting, checking existence of WPEF is NP-complete. Deciding whether a PEF allocation exists is in P for strict preferences or for n=2, but it is NP-complete in general. It is an open question whether, when the number of agents is constant, deciding the existence of NEF allocation is in P.
Cardinal utilities
- Deciding whether an EF and complete allocation exists is NP complete. This is true even when there are only two agents, and even when their utilities are additive and identical, since in this case finding an EF allocation is equivalent to solving the partition problem.
- Deciding whether a fair allocation exists requires exponential communication when there are more than two agents. When there are two agents, the communication complexity depends on specific combinations of parameters.
- Deciding whether an EF and Pareto efficient allocation exists is above NP: it is -complete even with dichotomous utilities and even with additive utilities..
- Considering the number of objects m as a parameter, the existence of a PE+EF allocation can be decided in time for additive or dichotomous utilities. When the utilities are binary and/or identical, the runtime drops to. Here, the notation hides expressions that are polynomial in the other parameters.
- Considering the number of agents n as a parameter, the existence of a PE+EF allocation remains hard. With dichotomous utilities, it is NP-hard even for n=2. However, it is now in NP, and can be solved efficiently with an NP oracle. With agents, it can be done with such oracles, and at least oracles are needed unless P=NP. With additive utilities, it is NP-hard even for n=2. Moreover, it is W Hierarchy|W-complete w.r.t. the number of agents even if all utilities are identical and encoded in unary.
- Considering both the number of agents n and the largest utility V as parameters, the existence of a PE+EF allocation can be decided in time for additive utilities using dynamic programming.
- Considering both the number of agents n and the number of utility levels z as parameters, the existence of a PE+EF allocation for identical additive utilities can be decided using an integer linear program with variables; Lenstra's algorithm allows solving such ILP in time
Finding an allocation with a bounded level of envy
EF1 - envy-free up to at most one item
An allocation is called EF1 if for every two agents A and B, if we remove at most one item from the bundle of B, then A does not envy B. An EF1 allocation always exists and can be found efficiently by various procedures, particularly:- When all agents have weakly additive utilities, the round-robin protocol finds a complete EF1 allocation. Weak additivity is required since each agent should be able to pick, in each situation, a "best item".
- In the more general case, when all agents have monotonically increasing utilities, the envy-graph procedure finds a complete EF1 allocation. The only requirement is that the agents can rank bundles of items. If the agents' valuations are represented by a cardinal utility function, then the EF1 guarantee has an additional interpretation: the numeric envy-level of each agent is at most the maximal-marginal-utility - the largest marginal utility of a single item for that agent.
- When agents have arbitrary utilities, the A-CEEI mechanism returns a partial EF1 allocation. The only requirement is that the agents can rank bundles of items. A small number of items might remain unallocated, and a small number of items may have to be added. The allocation is Pareto-efficient with respect to the allocated items.
- The Maximum Nash Welfare algorithm selects a complete allocation that maximizes the product of utilities. It requires each agent to provide a numeric valuation of each item, and assumes that the agents' utilities are additive. The resulting allocation is both EF1 and Pareto-efficient.
- Various other algorithms return EF1 allocations that are also Pareto-efficient; see Efficient approximately fair item allocation.
- For two agents with arbitrary monotone valuations, or three agents with additive valuations, an EF1 allocation can be computed using a number of queries logarithmic in the number of items.
- For two agents with arbitrary utility functions, an EF1 allocation can be found in polynomial time.
- For at most 4 agents with arbitrary monotone valuations, or n agents with identical monotone valuations, there always exists an EF1 allocation that is also connected. The proof uses an algorithm similar to the Simmons–Su protocols. When there are n > 4 agents, it is not known whether a connected EF1 allocation exists, but a connected EF2 allocation always exists.
EFx - envy-free up to at most any item
- When there are two agents, or when there are n agents with identical valuations. In this case, the leximin-optimal allocation is EFx and Pareto-optimal. However, it requires exponentially many queries to compute.
- When there are n agents with additive valuations, but there are at most two different values for goods. In this case, any max-Nash-welfare allocation is EFx. Moreover, there is an efficient algorithm for calculating an EFx allocation.
- When there are n agents with additive valuations, but there are at most two different kinds of valuations.
- When there are three agents with additive valuations. In this case, a polynomial-time algorithm exists.
- A 1/2-approximate EFx allocation can be found in polynomial time.
- A 0.618-approximate EFx allocation can be found in polynomial time.
- There always exists a partial EFx allocation, where the Nash welfare is at least half of the maximum possible Nash welfare. In other words, after donating some items to a charity, the remaining items can be allocated in an EFx way. This bound is the best possible. In large markets, where the valuations of an agent for every item is relatively small, the algorithm attains EFx with almost optimal Nash welfare. It is sufficient to donate n-1 items, and no agent envies the set of donated items.
In contrast to EF1, which requires a number of queries logarithmic in the number of items, computing an EFx allocation may require a linear number of queries even when there are two agents with identical additive valuations.
Another difference between EF1 and EFx is that the number of EFX allocations can be as few as 2, while the number of EF1 allocations is always exponential in the number of items.