Auction Algorithm: Difference between revisions

From Optimal Transport Wiki
Jump to navigation Jump to search
No edit summary
No edit summary
Line 1: Line 1:
The auction algorithm pertains to the discrete formulation of optimal transport. Particularly, the auction algorithm is an algorithm connected to the dual problem, but it is not based on a sequence of improvements of the dual objective function. Instead, it attempts to seek an equilibrium. Because of such, the algorithm has applications in economics.
The auction algorithm<ref name="Santambrogio" /> pertains to the discrete formulation of optimal transport. Particularly, the auction algorithm is an algorithm connected to the dual problem, but it is not based on a sequence of improvements of the dual objective function. Instead, it attempts to seek an equilibrium. Because of such, the algorithm has applications in economics.


== The Assignment Problem ==
== The Assignment Problem ==

Revision as of 21:31, 7 May 2020

The auction algorithm[1] pertains to the discrete formulation of optimal transport. Particularly, the auction algorithm is an algorithm connected to the dual problem, but it is not based on a sequence of improvements of the dual objective function. Instead, it attempts to seek an equilibrium. Because of such, the algorithm has applications in economics.

The Assignment Problem

We begin by discussing the assignment problem. Consider the specialized case when weights and are equal. Suppose we have buyers, denoting the index with , and goods to be bought, denoted by . We look for an assignment which maximizes . The values are the utilities of buyer when he/she buys item . Now, we look at a price system . Given a price system and as assignment , we say that it is an equilibrium if for every , we have . The buyers satisfying this condition are said to be "happy." This only corresponds to writing the equilibrium condition in terms of a coupling induced by a permutation. If is an equilibrium, then is an optimal assignment (and is optimal in the dual problem).

The Algorithm

Start from an arbitrary pair .

At every step, we have a pair . If it is an equilibrium, stop the algorithm. Otherwise, pick any among those such that . The selected buyer implements two actions:

1) he/she chooses one good realizing the maximum in and exchanges his/her own good with the buyer who was originally assigned to .

2) he/she increases the price of to a new value which is such that he/she is indifferent between and his/her second best object in .

Thus, the new price of is .

The new price system is defined by setting for and . The new permutation is obtained by composing with the transposition which exchanges and .


Problems with the Algorithm

The auction algorithm has a possibility of looping forever. This is because of the possibility of equality in . In this case, prices can stay constant and buyers may exchange the same set of items among themselves. To rectify this problem, introduce a parameter that acts as a tolerance. We say a buyer is -happy if . We now look for a pair such that all buyers are -happy.

References

Cite error: <ref> tag with name "Peyré and Cuturi" defined in <references> is not used in prior text.