Objective: Investigate methods for computing allocations satisfying both EF1 and PO.

Activities: Review the paper Finding Fair and Efficient Allocations.

Caragiannis et al has established the result: for additive valuations, there always exists an allocation that is EF1 + PO by maximizing Nash Social Welfare.

However, computing MNW is NP-Hard.

This paper:

  1. develop a pseudo-polynomial time algorithm for finding EF1 + PO. When valuations are bounded, the algorithm is polynomial time.
  2. For additive valuations, there always exists an allocation that is EF1 and fractionally Pareto Efficient.
  3. The algorithm provides a polynomial time 1.451.45-approximation to the Nash social welfare objective.
  4. The algorithm is completely combinatorial, and relies on constructing integral Fisher market wherein specific equilibria are not only efficient, but also fair.

~~This paper is very difficult and I felt suffocated while reading it.~~🤡🤡🤡

Introduction

Caragiannis showed by maximizing Nash Welfare, the geometric mean of the agents’ valuations is both fair (EF1) and Pareto efficient. However, maximizing the Nash welfare is an NP-hard problem (more accurately, APX-hard)

This paper provides a pseudo-polynomial time algorithm for finding an EF1 and Pareto Optimal allocation of indivisible goods under additive valuations.

In particular, if the valuations are scaled, the algorithm finds such an allocation in polynomial time.

Maximizing Nash welfare remains APX-hard even for bounded valuations.

Related problem: approximation algorithm for Nash welfare maximization. But approximating Maximal Nash welfare is not guaranteed to be EF1 or Pareto optimal.

This algorithm provides a polynomial-time 1.451.45-approximation to the Maximal Nash welfare problem. SOTA! It is also guaranteed to return a fair and efficient outcome.

Contributions

  1. Pseudo-polynomial for unscaled valuation and polynomial for scaled valuation. Computing EF1 + PO allocations. This algorithm can find an approximate EF1 and approximate PO allocation without scaled valuations.

  2. Stronger existence results. For additive valuations, there always exists an allocation that is EF1 and fractionally Pareto efficient.

    There exists a non-deterministic polynomial time algorithm for finding EF1 + PO.

    Whereas even verifying whether an arbitrary allocation is PO is known to be co-NP-complete.

  3. Polynomial time 1.451.45-approximation for the Nash social welfare maximization.

    Interesting byproduct: under same valuations, EF1 allocation provides a 1.451.45-approximation to the MNW.

Techniques

Fisher market along with an underlying equilibrium which is integral and EF1.

Start with a Pareto Optimal allocation, then iteratively modify the allocation by exchanging goods between the agents. The goal of the exchange step is to move toward a fair allocation. Stop when the equilibrium of the market satisfies price envy-freeness up to one good.

First the algorithm works with an integral Fisher market at every step, breaking away from the standard relax-and-round paradigm where a fractional market equilibrium is first computed followed by round step. Second, the algorithm uses the notion of price envy-freeness up to one good as a measure of balanced spending in the Fisher market. The notion is novel.

Preliminaries

The Fair Division Model

Problem Instance

Omitted!!!

Valuations are non-negative, additive.

For single item jj, denote ii’s valuation for it as vi,j=vi({j})v_{i,j}=v_i(\{j\})

Denote v_\max=\max_{i\in[n],j\in[m]}v_i(j)=\max_{i,j}v_{i,j}.

Allocation

Allocation: Omitted!!!

Fractional allocation: For all agents, no more than one unit of each good is allocated:

i[n]xi,j1\sum_{i\in[n]}x_{i,j}\le1

Fairness Notions

EF, EF1

ϵ\epsilon-EF1: for every pair of agent i,k[n]i,k\in[n], there exists a good jxkj\in\mathbf x_k s.t.

(1+ϵ)vi(xi)vi(xk{j})(1+\epsilon)v_i(\mathbb x_i)\ge v_i(\mathbb x_k\diagdown\{j\})

Nash social welfare

NSW(x)=(i[n]vi(xi))1/nNSW(\mathbf x)=(\prod_{i\in[n]}v_i(\mathbf x_i))^{1/n}

It is okay to ignore the 1/n1/n power.

xargmaxxXNSW(x)\mathbf x^*\in\arg\max_{\mathbf x\in\mathcal X}NSW(\mathbf x)

Efficiency Notions

Pareto Efficiency.

x\mathbf x is Pareto dominated by another allocation y\mathbf y if vk(yk)vk(xk)v_k(\mathbf y_k)\ge v_k(\mathbf x_k) for every agent k[n]k\in[n], and some of them is >\gt.

An allocation is said to be Pareto efficient or Pareto optimal if it is not Pareto dominated by any other allocation. Similarly, x\mathbf x is ϵ\epsilon-PO if it is not ϵ\epsilon-PO dominated by any other allocation (vk(yk)(1+ϵ)vk(xk)v_k(\mathbf y_k)\ge(1+\epsilon)v_k(\mathbf x_k), for some kk the inequalities are strict).

Fractional Pareto Efficiency. If it is not Pareto dominated by any fractional allocation.

fractionally PO \Rarr PO, but PO ⇏\not\Rarr fractionally PO.

Main Results

Algorithm computes EF1 + PO

🎯🤔Theorem 1.

Given any fair division instance I\mathcal I with additive valuations, an allocation that is EF1 and PO can be found in O(poly(m,n,vmax))\mathcal O(\text{poly}(m,n,v_{\max})) time, where v_\max=\max_{i,j}v_{i,j}.

Remark: If v_\max is polynomial bounded by f(m,n)f(m,n), the EF1 + PO can be computed in polynomial time.

If we relax the fairness and efficiency requirements to approximate versions, then the algorithm is guaranteed to run in polynomial time.

ϵ\epsilon-EF1 + ϵ\epsilon-PO in \mathcal O(\text{poly}(m,n,\frac{1}{\epsilon},\ln v_\max))

Existence for EF1 and fractionally PO

🎯🤔Theorem 2. Given any fair division instance with additive valuations, there always exists an allocation that is EF1 and fractionally PO (fPO)

Remark: 😭 I don’t understand. What is TFNP (Total Function Nondeterministic Polynomial)?

A binary relation P(x,y)P(x,y) is in TFNP if and only if there is a deterministic polynomial time algorithm that can determine whether P(x,y)P(x,y) holds given both xx and yy, and for every xx, there exists a yy which is at most polynomially longer than xx such that P(x,y)P(x,y) holds.

Approximation algorithm for Nash social welfare

🎯🤔Theorem 3. For additive valuations, there exists a polynomial-time 1.451.45-approximation algorithm for the Nash social welfare maximization problem.

🤔Lemma 1. Given a fair division instance with identical and additive valuations, any ϵ\epsilon-EF1 allocations provides a e(1+ϵ)ee^{(1+\epsilon)e}-approximation to Nash social welfare.

The Algorithm

Market Terminology

Fisher Market

A fundamental model in the economics of resource allocation.

A set of buyers enter the market with pre-specified budgets and use it to buy goods that provide maximum utility per unit of money spent.

[n][n] buyers, [m][m] divisible goods, valuation profile V\mathcal V.

Each buyer i[n]i\in[n] has an initial endowment/budget ei>0e_i\gt0. The endowment is only used for buying goods. Endowment vector e\mathbf e.

A market instance [n],[m],V,e\langle[n],[m],\mathcal V,\mathbf e\rangle

A market outcome is given by the pair x,p\langle\mathbf x,\mathbf p\rangle, where the allocation vector x\mathbf x is a fractional allocation of the mm goods, and the price vector p\mathbf p associates a price pj0p_j\ge0 with each good j[m]j\in[m].

The spending of buyer ii under the market outcome x,p\langle\mathbf x,\mathbf p\rangle is given by p(xi)=j=1mxi,jpj\mathbf p(\mathbf x_i)=\sum_{j=1}^mx_{i,j}p_j.

The valuation derived by ii under the market outcome x,p\langle\mathbf x,\mathbf p\rangle is given by vi(xi)=j=1mxi,jvi,jv_i(\mathbf x_i)=\sum_{j=1}^mx_{i,j}v_{i,j}.

Given a price vector p\mathbf p, define the bang per buck ratio of buyer ii for good jj as

αi,j=vi,j/pj\alpha_{i,j}=v_{i,j}/p_j

显然这个性价比越高,ii 就越高兴。

The maximum bang per buck ratio is αi=maxjαi,j\alpha_i=\max_j\alpha_{i,j}.

Let MBBi={j[m]:vi,j/pj=αi}MBB_i=\{j\in[m]:v_{i,j}/p_j=\alpha_i\} denote the set of all goods that maximize the bang per buck ratio for buyer ii at the price vector p\mathbf p. We call MBBiMBB_i the maximum bang per buck set (MBB set) of buyer ii at the price vector p\mathbf p.

Fisher market equilibrium. An outcome x,p\langle\mathbf x,\mathbf p\rangle satisfies the following conditions:

  • Market clearing: Each good is either priced at zero or is completely allocated. \forall j\in[m],p_j=0\or\sum_{i=1}^nx_{i,j}=1.
  • Budget exhaustion: Buyers spend their endowments completely. i[n],p(xi)=ei\forall i\in[n],\mathbf p(\mathbf x_i)=e_i.
  • Maximum bang per buck allocation: Each buyer’s allocation is a subset of its MBB set. xi,j>0jMBBix_{i,j}\gt0\Rarr j\in MBB_i.

🤔Proposition 1. For a Fisher market with additive valuations, any equilibrium outcome is fractionally Pareto efficient (fPO).

Price envy-freeness and its variants

  • x\mathbf x is price envy-free (pEF) w.r.t. p\mathbf p if for every pair of buyers i,k[n]i,k\in[n], we have p(xi)p(xk)\mathbf p(\mathbf x_i)\ge\mathbf p(\mathbf x_k). (Equivalently, ==)
  • x\mathbf x is price envy-free up to one good (pEF1) w.r.t. p\mathbf p for every pair of buyers i,k[n]i,k\in[n], there exists a good jxkj\in\mathbf x_k s.t. p(xi)p(xk{j})\mathbf p(\mathbf x_i)\ge\mathbf p(\mathbf x_k\diagdown\{j\}).
  • x\mathbf x is ϵ\epsilon-pEF1 w.r.t. p\mathbf p for every pair of buyers i,k[n]i,k\in[n], there exists a good jxkj\in\mathbf x_k s.t. (1+ϵ)p(xi)p(xk{j})(1+\epsilon)\mathbf p(\mathbf x_i)\ge\mathbf p(\mathbf x_k\diagdown\{j\}).

MBB graph and alternating paths

  • MBB graph of a Fisher market instance w.r.t. p\mathbf p is defined as a bipartite graph GG whose vertex set consists of the set of agents [n][n] and goods [m][m]. There is an edge between agent ii and good jj if jMBBij\in MBB_i (called an MBB edge).
  • Given an allocation x\mathbf x, we can augment the MBB graph by adding allocation edges. For an augmented MBB graph, we define an alternating path P=(i,j1,i1,j2,i2,,i1,j,k)P=(i,j_1,i_1,j_2,i_2,\cdots,i_{\ell-1},j_\ell,k) from agent ii to agent kk as a series of alternating MBB and allocation edges s.t. j1MBBixi1,j2MBBi1xi2,,jMBBi1xkj_1\in MBB_i\cap \mathbf x_{i_1},j_2\in MBB_{i_1}\cap\mathbf x_{i_2},\cdots,j_\ell\in MBB_{i_{\ell-1}}\cap\mathbf x_k. If such a path exists, we say that the agent kk is reachable from agent ii via an alternating path. No agent or good is allowed to repeat in an alternating path. The path PP is of length 22\ell since it consists of \ell MBB edges and \ell MBB edges and \ell allocation edges.

简单理解一下,MBB 图就是只含有 MBB 集合中对应关系的边。

而增强 MBB 图在此基础上加入了分配边。

可达性指的是在增强图上如果一个智能体节点经过一个替换路径可以到另一个智能体节点。

Hierarchy structure

  • Let GG denote the augmented MBB graph for a Fisher market instance with the market outcome (x,p)(\mathbf x,\mathbf p).

  • Fix a source agent i[n]i\in[n] in GG. Define the level of an agent kk as half the length of the shortest alternating path from ii to kk. The level of the source agent ii is defined to be 00. If there is no alternating path from ii to some agent kk in GG, then the level of kk is set to be nn. The hierarchy structure Hi\mathcal H_i of agent ii is defined as a level-wise collection of all agents that are reachable from ii, where Hi\mathcal H_i^\ell denotes the set of agents that are at level \ell w.r.t. the agent ii. BuildHierarchy is used for constructing such a hierarchy.

    In a hierarchy cannot have edges between agents at the same level.

Violators

  • An agent ii with smallest spending money among all the agents is called least spender, i.e., iargmink[n]p(xk)i\in\arg\min_{k\in[n]}\mathbf p(\mathbf x_k). An agent k[n]k\in[n] is said to be a violator if for every good jxkj\in\mathbf x_k, we have p(xk{j})>p(xi)\mathbf p(\mathbf x_k\diagdown\{j\})\gt\mathbf p(\mathbf x_i), where ii is the least spender.

  • Analogously, kk is said to be ϵ\epsilon-violator if for every good jxkj\in\mathbf x_k, we have p(xk{j})>(1+ϵ)p(xi)\mathbf p(\mathbf x_k\diagdown\{j\})\gt(1+\epsilon)\mathbf p(\mathbf x_i). An agent can be a violator without being an ϵ\epsilon violator.

    所以ε-违反者比违反者更苛刻?

  • If no agent is a violator (or ϵ\epsilon-violator), then the allocation x\mathbf x is pEF1 (ϵ\epsilon-pEF1) w.r.t. p\mathbf p.

Path-violator

  • Let ii denote the least spender, and let Hi\mathcal H_i denote the hierarchy of agent ii. An agent kHik\in\mathcal H_i is said to be path-violator w.r.t. the alternating path P=(i,j1,i1,j2,i2,,i1,j,k)P=(i,j_1,i_1,j_2,i_2,\cdots,i_{\ell-1},j_\ell,k) if p(xk{j})>p(xi)\mathbf p(\mathbf x_k\diagdown\{j_\ell\})\gt\mathbf p(\mathbf x_i).
  • A path-violator need not be a violator, since there can be a good jxkj\in\mathbf x_k not on the path PP s.t. p(xk{j})p(xi)\mathbf p(\mathbf x_k\diagdown\{j\})\le\mathbf p(\mathbf x_i). Similarly, an agent kHik\in\mathcal H_i is said to be an ϵ\epsilon-path-violator w.r.t. PP if p(xk{j})>(1+ϵ)p(xi)\mathbf p(\mathbf x_k\diagdown\{j_\ell\})\gt(1+\epsilon)\mathbf p(\mathbf x_i).

Description of the Algorithm

Given any fair division instance II as input and a parameter ϵ>0\epsilon\gt0. constructs a market equilibrium (x,p)(\mathbf x,\mathbf p) w.r.t. a Fisher market instance [n],[m],V,e\langle[n],[m],\mathcal V,\mathbf e\rangle. The pair (x,p)(\mathbf x,\mathbf p) has the following two properties:

  1. x\mathbf x is an integral allocation.

  2. x\mathcal x is 3ϵ3\epsilon-pEF1 w.r.t. p\mathbf p.

    This shows that the allocation x\mathbf x is 3ϵ3\epsilon-EF1 for the corresponding fair division instance I\mathcal I.

By proposition 1, the allocation x\mathbf x is guaranteed to be fractionally Pareto Optimal for the Fisher market instance, and consequently for the fair division instance I\mathcal I.

🤔Lemma 2. Let ϵ>0\epsilon\gt0, and let x\mathbf x and p\mathbf p be an allocation and a price vector respectively for a market instance [n],[m],V,e\langle[n],[m],\mathcal V,\mathbf e\rangle s.t.

  1. x\mathbf x is ϵ\epsilon-pEF1.
  2. xiMBBi\mathbf x_i\in MBB_i for each player i[n]i\in[n].

Then, x\mathbf x is ϵ\epsilon-EF1 for the associated fair division instance [n],[m],V\langle[n],[m],\mathcal V\rangle.

Since x\mathbf x is ϵ\epsilon-pEF1 w.r.t. p\mathbf p, for any pair of buyers i,k[n]i,k\in[n], jxk\exist j\in\mathbf x_k s.t. (1+ϵ)p(xi)p(xk{j})(1+\epsilon)\mathbf p(\mathbf x_i)\ge\mathbf p(\mathbf x_k\diagdown\{j\}).

Multiplying both sides with maximum bang per ratio αi\alpha_i for agent ii, we have

αi(1+ϵ)p(xi)αip(xk{j})(1+ϵ)vi(xi)αip(xk{j})xiMBBi(1+ϵ)vi(xi)vi(xk{j}),\alpha_i(1+\epsilon)\mathbf p(\mathbf x_i)\ge\alpha_i\mathbf p(\mathbf x_k\diagdown\{j\})\\ \Rarr(1+\epsilon)v_i(\mathbf x_i)\ge\alpha_i\mathbf p(\mathbf x_k\diagdown\{j\})\because\mathbf x_i\subseteq MBB_i\\ \Rarr(1+\epsilon)v_i(\mathbf x_i)\ge v_i(\mathbf x_k\diagdown\{j\}),

which is the ϵ\epsilon-EF1 guarantee for the allocation x\mathbf x.

The algorithm’s behavior:

  • Phase 1: starts with a welfare maximizing allocation x\mathbf x and p\mathbf p s.t. x\mathbf x is fPO and each agent gets a subset of its MBB goods. If the allocation x\mathbf x is 3ϵ3\epsilon-pEF1 w.r.t. p\mathbf p, then the algorithm terminates with the output (x,p)(\mathbf x,\mathbf p). Otherwise, goto phase 2.

  • Phase 2: the algorithm works with hierarchy of the least spending agent, and performs a series of exchanges (or swaps) of goods between the agents in the hierarchy. The swaps are aimed at ensuring that at the end of Phase 2, no agent in the hierarchy is ϵ\epsilon-pEF1 envied by the least spender.

    All exchanges happen only along the MBB edges, thus maintaining at each stage the condition that x\mathbf x is an equilibrium allocation, and hence fPO.

    If at the end of Phase 2, the current allocation x\mathbf x is still not 3ϵ3\epsilon-pEF1 w.r.t. the price vector p\mathbf p, the algorithm move to Phase 3.

  • Phase 3: Uniformly raising the price of the goods owned by the members of the hierarchy. The price are raised until either the allocation x\mathbf x becomes 3ϵ3\epsilon-pEF1 w.r.t. the new price vector p\mathbf p, or a new agent gets added to the hierarchy. In the latter case, the algorithm goes back to the start of Phase 2.

Establishing the time complexity for this algorithm is complicated. The stated running time bound is obtained via a number of involved arguments relying on analyzing the spending of the agents in different phases.

Proof of Theorem 1

Seems that I have no time to understand the detail.

I try to grasp the argument of proof.

First we should present the analysis of algorithm for valuations that satisfy the power of (1+ϵ)(1+\epsilon) property. Then extend the analysis to general valuations.

Pseudo-code

Input: A fair division instance I\mathcal I s.t. valuations are power-of-(1+ϵ)(1+\epsilon)

Output: An integral allocation x\mathbf x and a price vector p\mathbf p.

integral allocation 就是指所有的物品全部都分完的分配

// Phase 1 initialization

  1. x\mathbf x\gets Welfare-maximizing allocation // allocate each good to the agent who has highest valuation.
  2. p\mathbf p\gets For each good j[m]j\in[m], set pj=vi,jp_j=v_{i,j} if jxij\in\mathbf x_i. // initialize the payment vector with the highest valuation among all agents.
  3. if (x,p)(\mathbf x,\mathbf p) is 3ϵ3\epsilon-pEF1 then return it

// Phase 2 Removing price-envy within hierarchy

  1. ii\gets least spender under (x,p)(\mathbf x,\mathbf p)
  2. Hi\mathcal H_i\gets BuildHierarchy(i,x,pi,\mathbf x,\mathbf p)
  3. 1\ell\gets1
  4. while Hi\mathcal H_i^\ell is non-empty and (x,p)(\mathbf x,\mathbf p) is not 3ϵ3\epsilon-pEF1 do
    • if hHih\in\mathcal H_i^\ell is a ϵ\epsilon-path-violator along the alternating path P={i,j1,h1,,j1,h1,j,h}P=\{i,j_1,h_1,\cdots,j_{\ell-1},h_{\ell-1},j,h\} then
      • xhxj{j}\mathbf x_h\gets\mathbf x_j\diagdown\{j\} and xh1xh1{j}\mathbf x_{h_{\ell-1}}\gets\mathbf x_{h_{\ell-1}}\cup\{j\}
      • repeat Phase 2 starting from line 4
    • else
      • +1\ell\gets\ell+1
  5. if (x,p)(\mathbf x,\mathbf p) is 3ϵ3\epsilon-pEF1 then return it
  6. else move to Phase 3

// Phase 3 price-rise

  1. α1minhHi,j[m]xHiαhvh,j/pj\alpha_1\gets\min_{h\in\mathcal H_i,j\in[m]\diagdown\mathbf x_{\mathcal H_i}}\frac{\alpha_h}{v_{h,j}/p_j}, where αh\alpha_h is the maximum bang per ratio for agent hh, and xHi\mathbf x_{\mathcal H_i} is the set of goods currently owned by members of the hierarchy Hi\mathcal H_i.

    /* α1\alpha_1 corresponds to raising prices until a new agent gets added to the hierarchy */

  2. α21p(xi)maxk[n]Himinjxkp(xk{j})\alpha_2\gets\frac{1}{\mathbf p(\mathbf x_i)}\max_{k\in[n]\diagdown\mathcal H_i}\min_{j\in \mathbf x_k}\mathbf p(\mathbf x_k\diagdown\{j\})

    /* α2\alpha_2 corresponds to raising prices until the pEF1 condition is satisfied */

  3. α3(1+ϵ)s\alpha_3\gets(1+\epsilon)^s, where ss is the smallest integral power of (1+ϵ)(1+\epsilon) s.t. (1+ϵ)s>p(xh)p(xi)(1+\epsilon)^s\gt\frac{\mathbf p(\mathbf x_h)}{\mathbf p(\mathbf x_i)}. here ii is the least spender and hargmink[n]Hip(xk)h\in\arg\min_{k\in[n]\diagdown\mathcal H_i}\mathbf p(\mathbf x_k).

    /* α3\alpha_3 corresponds to raising prices in multiples of (1+ϵ)(1+\epsilon) until the identity of the least spender changes */

  4. αmin(α1,α2,α3)\alpha\gets\min(\alpha_1,\alpha_2,\alpha_3)

  5. for each good jxHj\in\mathbf x_\mathcal H, do

    • pjαpjp_j\gets\alpha\cdot p_j
  6. if α=α2\alpha=\alpha_2 then return (x,p)(\mathbf x,\mathbf p) else repeat Phase 2 starting from line 4

Analysis of ALG when the Valuations are power-of-(1+ε)

power-of-(1+ϵ)(1+\epsilon): ϵ>0\exist\epsilon\gt0, s.t. i[n],j[m]:vi,j{0,(1+ϵ)a}\forall i\in[n],j\in[m]:v_{i,j}\in\{0,(1+\epsilon)^a\} for some natural number aa.

Time step and events. 4 events:

  1. Swap in Phase 2
  2. Change in the identity of least spender in Phase 2
  3. Prise-rise by a factor of α\alpha in Phase 3
  4. Termination step.

Denote time step the indexing of any execution of ALG.

🤔Lemma 3. Given any power-of-(1+ϵ1+\epsilon) instance as input, the allocation returned by ALG is 3ϵ3\epsilon-EF1 and fPO.

fPO: observation: at each step, the allocation of any agent is a subset of its MMB goods.

Step 1: true (by way of setting prices).

Step 2: swap operation only happens along an alternating MBB-allocation edge which maintains MBB condition.

Step 3: raising the prices of goods owned by the members of hierarchy Hi\mathcal H_i without changing the allocation. ARGUMENT

Then define a Fisher market where each agent’s endowment equals its spending under x\mathbf x. Since (x,p)(\mathbf x,\mathbf p) is an equilibrium, x\mathbf x is fPO.

Next, argue that x\mathbf x is 3ϵ3\epsilon-EF1. The ALG terminates only if either 3ϵ3\epsilon-pEF1, or α=α2\alpha=\alpha_2. If α=α2\alpha=\alpha_2, we need to argue it’s 3ϵ3\epsilon-pEF1. omitted

🤔Lemma 4. Given any power-of-(1+ϵ)(1+\epsilon) instance as input, ALG terminates in time \mathcal O(\text{poly}(m,n,\frac{1}{\epsilon},\ln v_\max)) where v_\max=\max_{i,j}v_{i,j}.

Proof omitted.

Analysis of ALG for General Valuations: Proof of Theorem 1

Show that for any given fair division instance I\mathcal I with integral valuations, EF1 + PO allocation can be found in pseudo-polynomial time.

Proof by running ALG on ϵ\epsilon-rounded version I=[n],[m],V\mathcal I'=\langle[n],[m],\mathcal V'\rangle of the given instance I\mathcal I for some parameter ϵ>0\epsilon\gt0. The I\mathcal I' is a power-of-(1+ϵ1+\epsilon) instance constructed by rounding up the valuations in I\mathcal I to the nearest integer power of (1+ϵ)(1+\epsilon). From Lemma 3, we know this allocation is 3ϵ3\epsilon-EF1 and fPO w.r.t. I\mathcal I'. Then it remians to show that for an appropriate choice of ϵ\epsilon, the same allocation turns out to be EF1 + PO w.r.t. I\mathcal I.

In addition, the running time bound in Lemma 4 instantiated for the choice of ϵ\epsilon shows that ALG runs in pseudo-polynomial time.

ϵ\epsilon-rounded version:

for each agent ii, the valuation is replaced by

vi,j={(1+ϵ)log1+ϵvi,j if vi,j>00 if vi,j=0v'_{i,j}=\begin{cases} (1+\epsilon)^{\lceil\log_{1+\epsilon}v_{i,j}\rceil}\text{ if }v_{i,j}\gt0\\ 0\text{ if }v_{i,j}=0 \end{cases}

vi,jvi,j(1+ϵ)vi,jv_{i,j}\le v'_{i,j}\le(1+\epsilon)v_{i,j} for each i,ji,j.

🤔Lemma 5. Let I\mathcal I be a fair division instance. Let \epsilon\le\frac{1}{6m^3v^4_\max}. Then, an allocation x\mathbf x that is fPO for I\mathcal I' is PO for I\mathcal I.

Lemma 5 establishes for an appropriate choice of ϵ\epsilon, an allocation that is fPO for the ϵ\epsilon-rounded instance I\mathcal I' is PO w.r.t. the original instance I\mathcal I.

🤔Lemma 6. Let I\mathcal I be a fair division instance, and let 0\lt\delta\lt\frac{1}{2mv_\max} Then, an allocation x\mathbf x is δ\delta-EF1 for I\mathcal I iff it is EF1 for I\mathcal I.

Omitted.

The proof of Theorem 1:

  • I\mathcal I' is ϵ\epsilon-rounded version of I\mathcal I with \epsilon=\frac{1}{14m^3v^4_\max}. From Lemma 3 and 4, x\mathcal x is 3ϵ3\epsilon-EF1 and fPO for I\mathcal I' can be found in \mathcal O(\text{poly}(m,n,\frac{1}{\epsilon},\ln v_\max)) time.
  • Under this choice, by lemma 5, x\mathbf x must be PO for I\mathcal I. Thus x\mathbf x is EF1.

🤔Lemma 7. Given the ϵ\epsilon-rounded version I\mathcal I' as input, ALG finds a 7ϵ7\epsilon-EF1 and ϵ\epsilon-PO allocation for I\mathcal I in \mathcal O(\text{poly}(m,n,\frac{1}{\epsilon},\ln v_\max)) time.

I am lost.

Theorem 2 EF1+fPO

🎯🤔Theorem 2. Given any fair division instance with additive valuations, there always exists an allocation that is EF1 and fPO.

\epsilon_z=\frac{1}{14zm^3v^4_\max},z\in\mathbb N.

Suffocating.

Theorem 3 Nash Social Welfare Approximation

ALG provides 1.45e1/e1.45\approx e^{1/e}-approximation for Nash social welfare maximization in polynomial time.

Use lemma 8 to prove lemma 1.

🤔Lemma 8. Let I\mathcal I be an instance with additive and identical valuation functions s.t. mnm\ge n. Let B[m]B\sub[m] be a subset of goods s.t. B<n|B|\lt n. Then, there is a partially-fractional allocation ωFB\omega\in\mathcal F_B that maximize Nash social welfare among allocations in FB\mathcal F_B s.t.

  1. Each agent gets at most one goods from BB under ω\omega.
  2. Any agent with strictly-better-than-the-worst allocation under ω\omega gets exactly one integral good. That is, for any agent i[n]i\in[n] s.t. v(ωi)>minkv(ωk)v(\omega_i)\gt\min_kv(\omega_k), we have ωi,j=1\omega_{i,j}=1 for some jBj\in B and ωi,j=0\omega_{i,j'}=0 for all jjj'\neq j.

Property 2. proved by contradiction.

Property 1. proved by swap operation.

Proof of lemma 1: Too difficult.

🎯🤔Theorem 3. For additive valuations, there exists a polynomial-time 1.451.45-approximation algorithm for the Nash social welfare maximization problem.

omitted.

Conclusion

Based on integral Fisher markets and approximate pEF condition

Psudo-polynomial algorithm for finding EF1 and PO

Poly time 1.451.45-approximation algorithm for Nash social welfare.

Future work:

  • Does there exist polynomial time algorithm for EF1 + PO?
  • How about more general classes of valuations?