Welfare Maximization Problem
   HOME

TheInfoList



OR:

The welfare maximization problem is an
optimization problem In mathematics, engineering, computer science and economics Economics () is a behavioral science that studies the Production (economics), production, distribution (economics), distribution, and Consumption (economics), consumption of goo ...
studied in
economics Economics () is a behavioral science that studies the Production (economics), production, distribution (economics), distribution, and Consumption (economics), consumption of goods and services. Economics focuses on the behaviour and interac ...
and
computer science Computer science is the study of computation, information, and automation. Computer science spans Theoretical computer science, theoretical disciplines (such as algorithms, theory of computation, and information theory) to Applied 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 In social choice theory, social choice and operations research, the utilitarian rule (also called the max-sum rule) is a Social welfare function, rule saying that, among all possible alternatives, society should pick the alternative which maximize ...
. An equivalent problem in the context of
combinatorial auction A combinatorial auction is a type of smart market in which participants can place bids on combinations of discrete heterogeneous items, or “packages”, rather than individual items or continuous quantities. These packages can be also called lot ...
s 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

There is a set ''M'' of ''m'' items, and a set ''N'' of ''n'' agents. Each agent ''i'' in ''N'' has a utility function u_i: 2^M \to \mathbb. The function assigns a real value to every possible subset of items. It is usually assumed that the utility functions are
monotone set function In mathematics, a submodular set function (also known as a submodular function) is a set function that, informally, describes the relationship between a set of inputs and an output, where adding more of one input has a decreasing additional benefi ...
s, that is, Z_1\supseteq Z_2 implies u_i(Z_1) \geq u_i(Z_2). It is also assumed that u_i(\emptyset)=0. 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 \mathbf = (X_1, \ldots, X_n), such that M = X_1\sqcup \cdots \sqcup X_n.The welfare of an allocation is the sum of agents' utilities: W(\mathbf) := \sum_ u_i(X_i). 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

An additive agent has a utility function that is an
additive set function In mathematics, an additive set function is a function \mu mapping sets to numbers, with the property that its value on a union of two disjoint sets equals the sum of its values on these sets, namely, \mu(A \cup B) = \mu(A) + \mu(B). If this ad ...
: for every additive agent ''i'' and item ''j'', there is a value v_, such that u_i(Z) = \sum_ v_ for every set ''Z'' of items. When all agents are additive, welfare maximization can be done by a simple
polynomial-time In theoretical computer science, the time complexity is the computational complexity that describes the amount of computer time it takes to run an algorithm. Time complexity is commonly estimated by counting the number of elementary operations p ...
algorithm: give each item ''j'' to an agent for whom v_ is maximum (breaking ties arbitrarily). The problem becomes more challenging when there are additional constraints on the allocation.


Fairness constraints

One may want to maximize the welfare among all allocations that are ''fair'', for example,
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 ...
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, and has a
pseudo-polynomial time In computational complexity theory, a numeric algorithm runs in pseudo-polynomial time if its running time is a polynomial in the ''numeric value'' of the input (the largest integer present in the input)—but not necessarily in the ''length'' of ...
algorithm based on dynamic programming. For ''n = 2'', the problem has a
fully polynomial-time approximation scheme A fully polynomial-time approximation scheme (FPTAS) is an algorithm for finding approximate solutions to function problems, especially optimization problems. An FPTAS takes as input an instance of the problem and a parameter ε > 0. It r ...
. There are algorithms for solving this problem in polynomial time when there are few agent types, few item types or small value levels. 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''.


Matroid constraints

Another constraint on the allocation is that the bundles must be independent sets of a
matroid In combinatorics, a matroid is a structure that abstracts and generalizes the notion of linear independence in vector spaces. There are many equivalent ways to define a matroid Axiomatic system, axiomatically, the most significant being in terms ...
. For example, every bundle must contain at most ''k'' items, where ''k'' is a fixed integer (this corresponds to a
uniform matroid In mathematics, a uniform matroid is a matroid in which the ''independent sets'' are exactly the sets containing at most ''r'' elements, for some fixed integer ''r''. An alternative definition is that every permutation of the elements is a symme ...
). 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 mathematics, a partition matroid or partitional matroid is a matroid that is a direct sum of uniform matroids. It is defined over a base set in which the elements are partitioned into different categories. For each category, there is a ''capa ...
). 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.


Gross-substitute agents

Gross-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 Competitive equilibrium (also called: Walrasian equilibrium) is a concept of economic equilibrium, introduced by Kenneth Arrow and Gérard Debreu in 1951, appropriate for the analysis of commodity markets with flexible prices and many traders, and ...
always exists, and it maximizes the sum of utilities. A Walrasian equilibrium can be found in polynomial time.


Submodular agents

A submodular agent has a utility function that is a
submodular set function In mathematics, a submodular set function (also known as a submodular function) is a set function that, informally, describes the relationship between a set of inputs and an output, where adding more of one input has a decreasing additional benefi ...
. This means that the agent's utility has decreasing marginals. Submodular utilities are more general than gross-substitute utilities.


Hardness

Welfare maximization with submodular agents is NP-hard. Moreover, it cannot be approximated to a factor better than (1-1/e)≈0.632 unless P=NP. Moreover, a better than (1-1/e) approximation would require an exponential number of queries to a value oracle, regardless of whether P=NP.


Greedy algorithm

The maximum welfare can be approximated by the following polynomial-time
greedy algorithm A greedy algorithm is any algorithm that follows the problem-solving heuristic of making the locally optimal choice at each stage. In many problems, a greedy strategy does not produce an optimal solution, but a greedy heuristic can yield locally ...
: * Initialize ''X''1 = ''X''2 = ... = ''Xn'' = empty. * For every item ''g'' (in an arbitrary order): ** Compute, for each agent ''i'', his ''
marginal utility Marginal utility, in mainstream economics, describes the change in ''utility'' (pleasure or satisfaction resulting from the consumption) of one unit of a good or service. Marginal utility can be positive, negative, or zero. Negative marginal utilit ...
'' for ''g'', defined as: ''ui''(''Xi''+''g'') - ''ui''(''Xi''). ** Give item ''g'' to an agent with the largest marginal utility. Lehman, Lehman and Nisan 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 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 2''v''. 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: The optimal allocation is Alice: , George: , 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

A 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 present a polytime n/(2n-1)-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 and Calinescu, Chekuri, Pal and Vondrak present a randomized polytime algorithm that finds a (1-1/e)-approximation
with high probability In mathematics, an event that occurs with high probability (often shortened to w.h.p. or WHP) is one whose probability depends on a certain number ''n'' and goes to 1 as ''n'' goes to infinity, i.e. the probability of the event occurring can be m ...
. 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 Gradient descent is a method for unconstrained mathematical optimization. It is a first-order iterative algorithm for minimizing a differentiable multivariate function. The idea is to take repeated steps in the opposite direction of the gradi ...
). 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 2''m'' calls to a value oracle; however, it can be computed approximately
with high probability In mathematics, an event that occurs with high probability (often shortened to w.h.p. or WHP) is one whose probability depends on a certain number ''n'' and goes to 1 as ''n'' goes to infinity, i.e. the probability of the event occurring can be m ...
by
random sampling In this statistics, quality assurance, and survey methodology, sampling is the selection of a subset or a statistical sample (termed sample for short) of individuals from within a statistical population to estimate characteristics of the who ...
. 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. 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 In combinatorics, a matroid is a structure that abstracts and generalizes the notion of linear independence in vector spaces. There are many equivalent ways to define a matroid Axiomatic system, axiomatically, the most significant being in terms ...
constraint: 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 In mathematics, a partition matroid or partitional matroid is a matroid that is a direct sum of uniform matroids. It is defined over a base set in which the elements are partitioned into different categories. For each category, there is a ''capa ...
constraint, ensuring that each item is allocated to at most one agent.


Algorithms using a demand oracle

Another way to access the agents' utilities is using a
demand oracle In algorithmic game theory, a branch of both computer science and economics, a demand oracle is a function that, given a price-vector, returns the demand of an agent. It is used by many algorithms related to pricing and optimization in online marke ...
(an oracle that, given a price-vector, returns the agent's most desired bundle). In this model: * Dobzinski and Schapira present a polytime (1-1/e)-approximation algorithm. * Feige and Vondrak 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

When agents' utilities are
subadditive set function In mathematics, a subadditive set function is a set function whose value, informally, has the property that the value of function on the union of two sets is at most the sum of values of the function on each of the sets. This is thematically related ...
s (more general than submodular), a \frac approximation would require an exponential number of value queries. Feige 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

When agents' utilities are superadditive set functions (more general than supermodular), a \frac approximation would require a super-polynomial number of value queries.


Single-minded agents

A 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 u_i(Z) = \begin V_i & Z\supseteq D_i \\ 0 & \text \end . 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 In computational complexity theory, a computational problem ''H'' is called NP-hard if, for every problem ''L'' which can be solved in non-deterministic polynomial-time, there is a polynomial-time reduction from ''L'' to ''H''. That is, assumi ...
even when V_i=1 for all ''i''. In this case, the problem is equivalent to
set packing Set packing is a classical NP-complete problem in computational complexity theory and combinatorics, and was one of Karp's 21 NP-complete problems. Suppose one has a finite set ''S'' and a list of subsets of ''S''. Then, the set packing problem as ...
, which is known to be NP hard. Moreover, it cannot be approximated within any constant factor (in contrast to the case of submodular agents). The best known algorithm approximates it within a factor of O(\sqrt).


General agents

When agents can have arbitrary monotone utility functions (including complementary items), welfare maximization is hard to approximate within a factor of O(n^) for any \epsilon>0. However, there are algorithms based on
state space search State-space search is a process used in the field of computer science, including artificial intelligence (AI), in which successive configurations or ''states'' of an instance are considered, with the intention of finding a ''goal state'' with the ...
that work very well in practice.


See also

*
Utility maximization problem Utility maximization was first developed by utilitarian philosophers Jeremy Bentham and John Stuart Mill. In microeconomics, the utility maximization problem is the problem consumers face: "How should I spend my money in order to maximize my uti ...
*
Profit maximization In economics, profit maximization is the short run or long run process by which a firm may determine the price, input and output levels that will lead to the highest possible total profit (or just profit in short). In neoclassical economics, ...


References

{{Reflist Optimization algorithms and methods