Author :
Beichl, I. ; Sullivan, Francis
Author_Institution :
Comput. & Appl. Math. Lab., Nat. Inst. of Stand. & Technol., Gaithersburg, MD, USA
Abstract :
Finding a matching is a common task in computing that arises in physical and operational problems. If you have a set of possible connections between two groups of objects, you would like to know if there is a way to match each element from the first group with exactly one element of the second group. It is like arranging marriages between two groups or assigning a group of tasks to a group of people, where some connections are possible and some are not. It might be impossible to find a matching that uses all the people or objects, given the connections that are possible. A maximal matching tries to maximize the number of connections in the matching. A perfect matching is one in which you use all possible objects. Sometimes weights are attached to connections (in this case a maximal matching optimizes the sum of the weights), but we´re not going to do that here. We will use interchangeably the terms objects and nodes for the objects, assignments, or people mentioned above. Similarly we will use the terms edges and connections interchangeably.
Keywords :
algorithm theory; graph theory; matrix algebra; pattern matching; connections; matching; maximal matching; perfect matching; Bipartite graph; Sampling methods;
Journal_Title :
Computational Science & Engineering, IEEE