The welfare maximization problem is an optimization problem studied in economics and computer science. Its goal is to partition a set of items among agents with different utility functions, such that the welfare – defined as the sum of the agents' utilities – is as high as possible. In other words, the goal is to find an item allocation satisfying the utilitarian rule.[1]
An equivalent problem in the context of combinatorial auctions is called the winner determination problem. In this context, each agent submits a list of bids on sets of items, and the goal is to determine what bid or bids should win, such that the sum of the winning bids is maximum.
Definitions
editThere is a set M of m items, and a set N of n agents. Each agent i in N has a utility function . The function assigns a real value to every possible subset of items. It is usually assumed that the utility functions are monotone set functions, that is, implies . It is also assumed that . Together with monotonicity, this implies that all utilities are non-negative.
An allocation is an ordered partition of the items into n disjoint subsets, one subset per agent, denoted , such that .The welfare of an allocation is the sum of agents' utilities: .
The welfare maximization problem is: find an allocation X that maximizes W(X).
The welfare maximization problem has many variants, depending on the type of allowed utility functions, the way by which the algorithm can access the utility functions, and whether there are additional constraints on the allowed allocations.
Additive agents
editAn additive agent has a utility function that is an additive set function: for every additive agent i and item j, there is a value , such that for every set Z of items. When all agents are additive, welfare maximization can be done by a simple polynomial-time algorithm: give each item j to an agent for whom is maximum (breaking ties arbitrarily). The problem becomes more challenging when there are additional constraints on the allocation.
Fairness constraints
editOne may want to maximize the welfare among all allocations that are fair, for example, envy-free up to one item (EF1), proportional up to one item (PROP1), or equitable up to one item (EQ1). This problem is strongly NP-hard when n is variable. For any fixed n ≥ 2, the problem is weakly NP-hard,[2][3] and has a pseudo-polynomial time algorithm based on dynamic programming.[2] For n = 2, the problem has a fully polynomial-time approximation scheme.[4]
There are algorithms for solving this problem in polynomial time when there are few agent types, few item types or small value levels.[5] The problem can also be solved in polynomial time when the agents' additive utilities are binary (the value of every item is either 0 or 1), as well as for a more general class of utilities called generalized binary.[6]
Matroid constraints
editAnother constraint on the allocation is that the bundles must be independent sets of a matroid. For example, every bundle must contain at most k items, where k is a fixed integer (this corresponds to a uniform matroid). Or, the items may be partitioned into categories, and each bundle must contain at most kc items from each category c (this corresponds to a partition matroid). In general, there may be a different matroid for each agent, and the allocation must give each agent i a subset Xi that is an independent set of their own matroid.
Welfare maximization with additive utilities under heterogeneous matroid constraints can be done in polynomial time, by reduction to the weighted matroid intersection problem.[7]
Gross-substitute agents
editGross-substitute utilities are more general than additive utilities. Welfare maximization with gross-substitute agents can be done in polynomial time. This is because, with gross-substitute agents, a Walrasian equilibrium always exists, and it maximizes the sum of utilities.[8] A Walrasian equilibrium can be found in polynomial time.
Submodular agents
editA submodular agent has a utility function that is a submodular set function. This means that the agent's utility has decreasing marginals. Submodular utilities are more general than gross-substitute utilities.
Hardness
editWelfare maximization with submodular agents is NP-hard.[9] Moreover, it cannot be approximated to a factor better than (1-1/e)≈0.632 unless P=NP.[10] Moreover, a better than (1-1/e) approximation would require an exponential number of querires to a value oracle, regardless of whether P=NP.[11]
Greedy algorithm
editThe maximum welfare can be approximated by the following polynomial-time greedy algorithm:
- Initialize X1 = X2 = ... = Xn = empty.
- For every item g (in an arbitrary order):
- Compute, for each agen i, his marginal utility for g, defined as: ui(Xi+g) - ui(Xi).
- Give item g to an agent with the largest marginal utility.
Lehman, Lehman and Nisan[9] prove that the greedy algorithm finds a 1/2-factor approximation (they note that this result follows from a result of Fisher, Nemhauser and Wolsey[12] regarding the maximization of a single submodular valuation over a matroid). The proof idea is as follows. Suppose the algorithm allocates an item g to some agent i. This contributes to the welfare some amount v, which is marginal utility of g for i at that point. Suppose that, in the optimal solution, g should be given to another agent, say k. Consider how the welfare changes if we move g from i to k:
- The utility of k increases by his marginal utility of g, which at most v by the greedy selection.
- The marginal utility of the remaining bundle of i increases by at most v. This follows from submodularity: the marginal utility of g, when added to the remaining bundle, cannot be higher than its marginal utility when the algorithm processed it.
So, for every contribution of v to the algorithm welfare, the potential contribution to the optimal welfare could be at most 2v. Therefore, the optimal welfare is at most 2 times the algorithm welfare. The factor of 2 is tight for the greedy algorithm. For example, suppose there are two items x,y and the valuations are:
{} | {x} | {y} | {x,y} | |
---|---|---|---|---|
Alice | 0 | 1 | 1 | 1 |
George | 0 | 1 | 0 | 1 |
The optimal allocation is Alice: {y}, George: {x}, with welfare 2. But if the greedy algorithm allocates x first, it might allocate it to Alice. Then, regardless of how y is allocated, the welfare is only 1.
Algorithms using a value oracle
editA value oracle is an oracle that, given a set of items, returns the agent's value to this set. In this model:
- Dobzinski and Schapira[13] present a polytime -approximation algorithm, and an (1-1/e)≈0.632-approximation algorithm for the special case in which the agents' utilities are set-coverage functions.
- Vondrak[14]: Sec.5 and Calinescu, Chekuri, Pal and Vondrak[15] present a randomized polytime algorithm that finds a (1-1/e)-approximation with high probability. Their algorithm uses a continuous-greedy algorithm - an algorithm that extends a fractional bundle (a bundle that contains a fraction pj of each item j) in a greedy direction (similarly to gradient descent). Their algorithm needs to compute the value of fractional bundles, defined as the expected value of the bundle attained when each item j is selected independently with probability pj. In general, computing the value of a fractional bundle might require 2m calls to a value oracle; however, it can be computed approximately with high probability by random sampling. This leads to a randomized algorithm that attains a (1-1/e)-approximation with high probability. In cases when fractional bundles can be evaluated efficiently (e.g. when utility functions are set-coverage functions), the algorithm can be made deterministic.[15]: Sec.5 They mention as an open problem, whether there is a deterministic polytime (1-1/e)-approximation algorithm for general submodular functions.
The welfare maximization problem (with n different submodular functions) can be reduced to the problem of maximizing a single submodular set function subject to a matroid constraint:[9][14][15] given an instance with m items and n agents, construct an instance with m*n (agent,item) pairs, where each pair represents the assignment of an item to an agent. Construct a single function that assigns, to each set of pairs, the total welfare of the corresponding allocation. It can be shown that, if all utilities are submodular, then this welfare function is also submodular. This function should be maximized subject to a partition matroid constraint, ensuring that each item is allocated to at most one agent.
Algorithms using a demand oracle
editAnother way to access the agents' utilities is using a demand oracle (an oracle that, given a price-vector, returns the agent's most desired bundle). In this model:
- Dobzinski and Schapira[13] present a polytime (1-1/e)-approximation algorithm.
- Feige and Vondrak[16] improve this to (1-1/e+ε) for some small positive ε (this does not contradict the above hardness result, since the hardness result uses only a value oracle; in the hardness examples, the demand oracle itself would require exponentially many queries).
Subadditive agents
editWhen agents' utilities are subadditive set functions (more general than submodular), a approximation would require an exponential number of value queries.[11]
Feige[17] presents a way of rounding any fractional solution to an LP relaxation to this problem to a feasible solution with welfare at least 1/2 the value of the fractional solution. This gives a 1/2-approximation for general subadditive agents, and (1-1/e)-approximation for the special case of fractionally-subadditive valuations.
Superadditive agents
editWhen agents' utilities are superadditive set functions (more general than supermodular), a approximation would require a super-polynomial number of value queries.[11]
Single-minded agents
editA single-minded agent wants only a specific set of items. For every single-minded agent i, there is a demanded set Di, and a value Vi > 0, such that . That is, the agent receives a fixed positive utility if and only if their bundle contains their demanded set.
Welfare maximization with single-minded agents is NP-hard even when for all i. In this case, the problem is equivalent to set packing, which is known to be NP hard. Moreover, it cannot be approximated within any constant factor (in contrast to the case of submodular agents).[18] The best known algorithm approximates it within a factor of .[19]
General agents
editWhen agents can have arbitrary monotone utility functions (including complementary items), welfare maximization is hard to approximate within a factor of for any .[20] However, there are algorithms based on state space search that work very well in practice.[21]
See also
editReferences
edit- ^ Vondrak, Jan (2008-05-17). "Optimal approximation for the submodular welfare problem in the value oracle model". Proceedings of the fortieth annual ACM symposium on Theory of computing. STOC '08. New York, NY, USA: Association for Computing Machinery. pp. 67–74. doi:10.1145/1374376.1374389. ISBN 978-1-60558-047-0. S2CID 170510.
- ^ a b Aziz, Haris; Huang, Xin; Mattei, Nicholas; Segal-Halevi, Erel (2022-10-13). "Computing welfare-Maximizing fair allocations of indivisible goods". European Journal of Operational Research. 307 (2): 773–784. arXiv:2012.03979. doi:10.1016/j.ejor.2022.10.013. ISSN 0377-2217. S2CID 235266307.
- ^ Sun, Ankang; Chen, Bo; Doan, Xuan Vinh (2022-12-02). "Equitability and welfare maximization for allocating indivisible items". Autonomous Agents and Multi-Agent Systems. 37 (1): 8. doi:10.1007/s10458-022-09587-1. ISSN 1573-7454. S2CID 254152607.
- ^ Bu, Xiaolin; Li, Zihao; Liu, Shengxin; Song, Jiaxin; Tao, Biaoshuai (2022-05-27). "On the Complexity of Maximizing Social Welfare within Fair Allocations of Indivisible Goods". arXiv:2205.14296 [cs.GT].
- ^ Nguyen, Trung Thanh; Rothe, Jörg (2023-01-01). "Fair and efficient allocation with few agent types, few item types, or small value levels". Artificial Intelligence. 314: 103820. doi:10.1016/j.artint.2022.103820. ISSN 0004-3702. S2CID 253430435.
- ^ Camacho, Franklin; Fonseca-Delgado, Rigoberto; Pino Pérez, Ramón; Tapia, Guido (2022-11-07). "Generalized binary utility functions and fair allocations". Mathematical Social Sciences. 121: 50–60. doi:10.1016/j.mathsocsci.2022.10.003. ISSN 0165-4896. S2CID 253411165.
- ^ Dror, Amitay; Feldman, Michal; Segal-Halevi, Erel (2022-04-24). "On Fair Division under Heterogeneous Matroid Constraints". arXiv:2010.07280 [cs.GT].
- ^ Kelso, A. S.; Crawford, V. P. (1982). "Job Matching, Coalition Formation, and Gross Substitutes". Econometrica. 50 (6): 1483. doi:10.2307/1913392. JSTOR 1913392.
- ^ a b c Lehmann, Benny; Lehmann, Daniel; Nisan, Noam (2001-10-14). "Combinatorial auctions with decreasing marginal utilities". Proceedings of the 3rd ACM conference on Electronic Commerce. EC '01. New York, NY, USA: Association for Computing Machinery. pp. 18–28. arXiv:cs/0202015. doi:10.1145/501158.501161. ISBN 978-1-58113-387-5. S2CID 2241237.
- ^ Khot, Subhash; Lipton, Richard J.; Markakis, Evangelos; Mehta, Aranyak (2008-09-01). "Inapproximability Results for Combinatorial Auctions with Submodular Utility Functions". Algorithmica. 52 (1): 3–18. doi:10.1007/s00453-007-9105-7. ISSN 1432-0541. S2CID 7600128.
- ^ a b c Mirrokni, Vahab; Schapira, Michael; Vondrak, Jan (2008-07-08). "Tight information-theoretic lower bounds for welfare maximization in combinatorial auctions". Proceedings of the 9th ACM conference on Electronic commerce. EC '08. New York, NY, USA: Association for Computing Machinery. pp. 70–77. doi:10.1145/1386790.1386805. ISBN 978-1-60558-169-9. S2CID 556774.
- ^ Fisher, M. L.; Nemhauser, G. L.; Wolsey, L. A. (1978), Balinski, M. L.; Hoffman, A. J. (eds.), "An analysis of approximations for maximizing submodular set functions—II", Polyhedral Combinatorics: Dedicated to the memory of D.R. Fulkerson, Berlin, Heidelberg: Springer, pp. 73–87, doi:10.1007/bfb0121195, ISBN 978-3-642-00790-3, retrieved 2023-02-26
- ^ a b Dobzinski, Shahar; Schapira, Michael (2006-01-22). "An improved approximation algorithm for combinatorial auctions with submodular bidders". Proceedings of the seventeenth annual ACM-SIAM symposium on Discrete algorithm - SODA '06. SODA '06. USA: Society for Industrial and Applied Mathematics. pp. 1064–1073. doi:10.1145/1109557.1109675. ISBN 978-0-89871-605-4. S2CID 13108913.
- ^ a b Vondrak, Jan (2008-05-17). "Optimal approximation for the submodular welfare problem in the value oracle model". Proceedings of the fortieth annual ACM symposium on Theory of computing. STOC '08. New York, NY, USA: Association for Computing Machinery. pp. 67–74. doi:10.1145/1374376.1374389. ISBN 978-1-60558-047-0. S2CID 170510.
- ^ a b c Calinescu, Gruia; Chekuri, Chandra; Pál, Martin; Vondrák, Jan (2011-01-01). "Maximizing a Monotone Submodular Function Subject to a Matroid Constraint". SIAM Journal on Computing. 40 (6): 1740–1766. doi:10.1137/080733991. ISSN 0097-5397.
- ^ Feige, Uriel; Vondrák, Jan (2010-12-09). "The Submodular Welfare Problem with Demand Queries". Theory of Computing. 6: 247–290. doi:10.4086/toc.2010.v006a011.
- ^ Feige, Uriel (2006-05-21). "On maximizing welfare when utility functions are subadditive". Proceedings of the thirty-eighth annual ACM symposium on Theory of Computing. STOC '06. New York, NY, USA: Association for Computing Machinery. pp. 41–50. doi:10.1145/1132516.1132523. ISBN 978-1-59593-134-4. S2CID 11504912.
- ^ Hazan, Elad; Safra, Shmuel; Schwartz, Oded (2006). "On the complexity of approximating k-set packing". Computational Complexity. 15 (1): 20–39. CiteSeerX 10.1.1.352.5754. doi:10.1007/s00037-006-0205-6. MR 2226068. S2CID 1858087.. See in particular p. 21: "Maximum clique (and therefore also maximum independent set and maximum set packing) cannot be approximated to within unless NP ⊂ ZPP."
- ^ Halldórsson, Magnus M.; Kratochvíl, Jan; Telle, Jan Arne (1998). Independent sets with domination constraints. 25th International Colloquium on Automata, Languages and Programming. Lecture Notes in Computer Science. Vol. 1443. Springer-Verlag. pp. 176–185.
- ^ Lehmann, Daniel; Oćallaghan, Liadan Ita; Shoham, Yoav (2002-09-01). "Truth revelation in approximately efficient combinatorial auctions". Journal of the ACM. 49 (5): 577–602. doi:10.1145/585265.585266. ISSN 0004-5411. S2CID 52829303.
- ^ Sandholm, Tuomas; Suri, Subhash (2000-07-30). "Improved Algorithms for Optimal Winner Determination in Combinatorial Auctions and Generalizations". Proceedings of the Seventeenth National Conference on Artificial Intelligence and Twelfth Conference on Innovative Applications of Artificial Intelligence. AAAI Press: 90–97. ISBN 978-0-262-51112-4.