Assignment problem

From Free net encyclopedia

(Difference between revisions)
Revision as of 05:39, 20 March 2006
Michael Slone (Talk | contribs)
/* Marriage Problem */ rm cetacean reference
Next diff →

Current revision

Template:Cleanup-date The assignment problem is one of the fundamental combinatorial optimization problems in the branch of optimization or operations research in mathematics.

In its most general form, the problem is as follows:

There are a number of agents and a number of tasks. Any agent can be assigned to perform any task, incurring some cost that may vary depending on the agent-task assignment. It is required to perform all tasks by assigning exactly one agent to each task in such a way that the total cost of the assignment is minimized.

If the numbers of agents and tasks are equal and the total cost of the assignment for all tasks is equal to the sum of the costs for each agent (or the sum of the costs for each task, which is the same thing in this case), then the problem is called the Linear assignment problem. Commonly, when speaking of the Assignment problem without any additional qualification, then the Linear assignment problem is meant.

The Hungarian algorithm is one of many algorithms that have been devised that solve the linear assignment problem within time bounded by a polynomial expression of the number of agents.

The assignment problem is a special case of the transportation problem, which is a special case of the maximal flow problem, which in turn is a special case of a linear program. While it is possible to solve any of these problems using the simplex algorithm, each specialization has more efficient algorithms designed to take advantage of its special structure.

Other kinds are the quadratic assignment problem, bottleneck assignment problem.



Contents

Example

Suppose that a taxi firm has three taxis (the agents) available, and three customers (the tasks) wishing to be picked up as soon as possible. The firm prides itself on speedy pickups, so for each taxi the "cost" of picking up a particular customer will depend on the time taken for the taxi to reach the pickup point. The solution to the assignment problem will be whichever combination of taxis and customers results in the least total cost.

However, the assignment problem can be made rather more flexible than it first appears. In the above example, suppose that there are four taxis available, but still only three customers. Then a fourth task can be invented, perhaps called "sitting still doing nothing", with a cost of 0 for the taxi assigned to it. The assignment problem can then be solved in the usual way and still give the best solution to the problem.

Similar tricks can be played in order to allow more tasks than agents, tasks to which multiple agents must be assigned (for instance, a group of more customers than will fit in one taxi), or maximizing profit rather than minimizing cost.

Formal mathematical definition

The formal definition of the assignment problem (or linear assignment problem) is

Given two sets, A and T, of equal size, together with a weight function C : A × TR. Find a bijection f : AT such that the cost function:
<math>\sum_{a\in A}C(a,f(a))</math>
is minimized.

Usually the weight function is viewed as a square real-valued matrix C, so that the cost function is written down as:

<math>\sum_{a\in A}C_{a,f(a)}</math>

The problem is "linear" because the cost function to be optimized as well as all the constraints contain only linear terms.

Marriage Problem

The Marriage Problem is an extension of the assignment problem to the field of Game Theory. For pedagogical purposes the sets A and T are now regarded as the sets of Men (M) and Women (W). The weight function

<math> C(m,w)=C_{m}(m,w)+C_{w}(m,w)</math>

is split into two weight functions <math>C_{m}</math> and <math>C_{w}</math>, that represent a measure of how acceptable is each member of the opposite gender to each player respectively (the lower the value of <math>C_{m}(m,w)</math>, the more man m likes woman w).

The bijection between M and W is regarded now as a given configuration of couples. One can pose the same question as in the assignment problem: which configuration will have the lower total cost?. In this context this is equivalent to ask for the distributions of couples that makes Society the happier. However, the social optimum, although the best for society, might not, and probably will not be the best of choices for everyone. It is very likely that even in this state there will be two persons, a man and a woman, which are not married together in the sake of social happiness, but they found each other more attractive than they current spouses. This would leed to the break up of their respective couples and a new couple configuration would raise, with a lower total happiness.

In a world of selfish players, as it is usually the case, the social optimum can not be sustained in time due to players are seeking their own satisfaction, and not social goals. One might ask if there is any configuration of couples at all, in which the instability described before don't exists. Such a configuration would be a Nash Equilibrium of this game theoretic problem.

The Marriage Problem consist of finding all configurations of couples that are stable against the egoist behavior of players, i.e. that are a Nash Equilibrium. Fortunately, there is always such a state, and usually there are many. Unfortunately the social optimum is rarely a Nash Equilibrium.

Reference

  • For a detailed study of state-of-the-art research in this topic see arxiv.org search engine.