A Randomized Fully Polynomial-time Approximation Scheme for Weighted Perfect Matching in the Plane

— In the approximate Euclidean min-weighted perfect matching problem, a set V of n 2 points in the plane and a real number 0   are given. Usually, a solution of this problem is a partition of points of V into n pairs such that the sum of the distances between the paired points is at most) 1 (  times the optimal solution. In this paper, the authors give a randomized algorithm which follows a Monte-Carlo method. This algorithm is a randomized fully polynomial-time approximation scheme for the given problem. Fortunately, the suggested algorithm is a one tackled the matching problem in both Euclidean nonbipartite and bipartite cases. The presented algorithm outlines as follows: With repeating    / 1 times, we choose a point from V to build the suitable pair satisfying the suggested condition on the distance. If this condition is achieved, then remove the points of the constructed pair from V and put this pair in M (the output set of the solution). Then, choose a point and the nearest point of it from the remaining points in V to construct a pair and put it in M. Remove the two points of the constructed pair from V and repeat this process until V becomes an empty set. Obviously, this method is very simple. Furthermore, our algorithm can be applied without any modification on complete weighted graphs m K and complete weighted bipartite graphs n n K , , where 1 ,  m n and m is an even.


INTRODUCTION
In this paper, the authors deal with Euclidean minweighted perfect matching problem.This problem and its special cases are very important since they have several applications in many fields such as operations research, pattern recognition, shape matching, statistics, and VLSI, see [1], [2], and [3].
The previous studies treated the underlining problem in several versions, e.g.(un-)weighted general graphs, bipartite graphs, and a case of a set of points in Euclidean plane.For un-weighted bipartite graphs, Hopcroft and Karp showed that maximum-cardinality matchings can be computed in ) ( n m O time [1].In [4], Micali and Vazirani introduced an algorithm for computing maximum-cardinality matchings on un-weighted graphs.Goel et al. [5] presented an ) log ( n n O algorithm for computing the perfect matchings on un-weighted regular bipartite graphs.
In 1955, Kuhn used the Hungarian method for solving the assignment problem.He introduced the first polynomial time algorithm on weighted bipartite graphs having n vertices for computing min-weighted perfect matching in ) ( 3 n O time [6].
The matching problem on complete weighted graphs with n 2 vertices was solved in ) ( 4 n O by Edmonds' algorithm [7].In [8], Gabow improved Edmonds' algorithm to achieve time, where m is the number of edges in a graph.For the Euclidean versions of the matching problem, Vaidya [9] showed that geometry can be exploited to get algorithms running in ) log ( , see details in [11]. Several researchers did more efforts to find good approximation algorithms for optimal matching which are faster and simpler than the algorithms obtained the optimal solutions (e.g.[12], [13]).
In [13], Mirjam and Roger gave an approximation algorithm for constructing a minimum-cost perfect matching on complete graphs whose cost functions satisfy the triangle inequality.The running time of that algorithm is and its approximations ratio is n log .For bipartite version on two disjoint n -point sets in the plane, Agarwal and Varadarajan [14] showed that an  -approximate matching can be computed in ) log ) / (( In this paper, a randomized approximation algorithm for Euclidean min-weighted perfect matching problem is demonstrated.This algorithm follows Monte-Carlo technique.It computes an -approximate Euclidean matching of a set of n 2 points with probability at least 1/2.The probability is improved when running the algorithm more and more.We show that the algorithm is a RFPTAS (Randomized Fully Polynomial Time Approximation Scheme) for underline problem.We apply this algorithm for the Euclidean cases having n 2 points and for general complete weighted graphs having n 2 vertices.
The paper is organized as follows.In the next section, some basic definitions and concepts needed for the description of the topic are introduced.In section III, the description of our randomized algorithm for the min-weighted perfect matching problem in the plane is given.It is also proven that the given algorithm is a RFPTAS.Moreover, the same section contains some results of computational experiments on some classes of graphs.Finally, a conclusion of the paper is introduced in section IV.

II. BASIC DEFINITIONS AND CONCEPTS
Henceforth, let V be a set of n 2 points in the plane.A matching of V is a collection M of pairs of V such that no point in V belongs to more than one pair in M [14].A perfect matching of V is a matching of V in which every point in V belongs to exactly one pair of ) , ( 71 u u d z  and so, a perfect matching of V has n pairs.Let ) , ( v u d be referred to the specified distance between u and v .The weight of a matching M is defined by summing the Euclidean distances between the paired points.For 0   , an -approximate perfect matching is a perfect matching such that the weight of M is at most ) 1 (   times the weight of a minimum weighted perfect matching [17].In this paper, we consider the approximate Euclidean min-weighted perfect matching problem that finds an  -approximate perfect matching of .Let U be an optimization problem.An algorithm is called a Randomized Fully Polynomial-Time Approximation Scheme (RFPTAS) [18] for U if there exists a , such that for every input ) , In the following, the definition of an admissible pair is given.This definition is very important to design the main condition of our algorithm.We introduce first the meaning of a near point.Suppose V is a set of points.For any , where M is any matching of V .This means that X counts the number of inadmissible pairs in any matching M .

Let
V .The next lemma gives the upper bound of the cardinality of ' V ., there exist more angles less than 60 and so we reach to the same contradiction.Therefore, cardinality of ' V ' should be less than or equal 6. ■

III. A RANDOMIZED ALGORITHM FOR WEIGHTED PERFECT MATCHING
In this section, we describe a Randomized Perfect Matching, RPM, algorithm to construct an  -approximate matching of a set V of n 2 points in the plane.The analysis of running time and the derivation of an approximation ratio algorithm is a Randomized Fully Polynomial Time Approximation Scheme.
This section is organized as follows.Section A is devoted to describe the RPM-algorithm.In addition, we derive that the RPM-algorithm is a RFPTAS for Euclidean min-weighted perfect matching problem in section B. Some results of computational experiments in cases of the set of n 2 points in the plane, the Euclidean bipartite version, complete weighted graphs, and complete weighted bipartite graphs are contained in section C.

A. The description of RPM-algorithm
This part contains the details of the RPM-algorithm for Euclidean min-weighted perfect matching problem.The idea of the algorithm summarizes as follows.First, we choose uniformly at random a point v from V and get a near point to it from V , see u .Then, check the suggested condition of As shown in the RPM-algorithm, the steps of this algorithm are simple and can be easily implemented.The main advantage of this method is that it can be applied on any weighted complete graph.This is because V can be considered as the set of vertices of a graph and the distance between any two vertices is measurable by the weight of an edge.Without any modification, this algorithm is also applied on any complete weighted bipartite graph.The results of the RPM-algorithm for solving the underlining problem in cases of the set of n 2 points in the plane, the Euclidean bipartite version, complete weighted graphs, and complete weighted bipartite graphs are given in section C.

B. The analysis of RPM-algorithm
In this part, we prove that the RPM-algorithm is a RFPTAS for Euclidean min-weighted perfect matching problem.At first, we prove that the probability of success is greater than 1/2, via using the following two lemmas.
Assume that ' M is the set of inadmissible pairs obtained from the output matching of the RPM-algorithm.The following lemma gives an upper bound of the cardinality of ' M ., subsets such that each subset contains a point v and all points that v is a near point to each of them.From Lemma 2.1, we conclude that the number of subsets in this partition is at least 7 / 2n .We can obtain at least an admissible pair in each subset in this partition.Thus, the number of admissible pairs in the matching M is at least 7 / 2n .Since the cardinality of the matching M is n .Therefore, the number of inadmissible pairs in M is at most 7 / 5n .■ Lemma 3.2 Let V be a set of n 2 points in the plane.Suppose M is a matching of V which is constructed by the RPM-algorithm and X is a random variable whose value is the number of inadmissible pairs in M .Then,   where X and e X are given in section II.
, (as a result of executing of the RPM-algorithm more and more).From Morkov's inequality [19], . This completes the proof.■ Now, we show that the RPM-algorithm is a RFPTAS.

Theorem 3.3
The RPM-algorithm is a RFPTAS for Euclidean min-weighted perfect matching problem.
Proof.First, we determine the running time of the RPMalgorithm.The time of steps 7-9 is proportional to Obviously, one can deduce from the last equation that the approximation ratio of the RPM-algorithm is at most ) 1 (   with probability at least 1/2.This means that the RPMalgorithm is a RFPTAS.■

C. The results of RPM-algorithm
In this section, we provide some results of the experimental evaluation of the proposed algorithm.We will show that the RPM-algorithm can be applied on four classes without any modification in its steps.These classes are:  Since the number of admissible pairs is greater than 2 / n for each example, so the probability of success of the RPMalgorithm is greater than 1/2.From these results, the algorithm is suitable for execution on all examples and for any value of n .Fig. 2 shows the relation between the values of n and the number of admissible pairs.The algorithm is implemented by the Java language.The program works on a 3.00GHz Pentium IV personal computer.

IV. CONCLUSION
In this paper, we introduce a randomized approximation algorithm which follows a Monte-Carlo method for treating the weighted perfect matching problem in the plane.The idea of this algorithm is very simple.Since this algorithm succeeds in computing an -approximation matching with probability at least   .The inputs of our algorithm are a set V of n 2 points in the plane or a complete weighted graph and a real number 0   and the outputs are a perfect matching of an input instance and the number of admissible pairs in this matching.The numbers of admissible pairs which are produced from the suggested algorithm for some examples of each state are summarized in Table 1.
the bipartite and nonbipartite versions.Agarwal et al.[10] improved this running time for the bipartite case to )

Figure 1 .
Figure 1.An illustrative example of the proof of Lemma 2.1.

Lemma 3 . 1
Let V be a set of set of inadmissible pairs obtained from the produced matching M of the RPM-algorithm, then 7

Class 1 :
Euclidean plane.Class 2: Euclidean bipartite plane.Class 3: complete weighted graphs.Class 4: complete weighted bipartite graphs.In the first two classes, the inputs of the RPM-algorithm are a real number 0   and a set V .V is the set of n 2 points which are generated at random.The inputs of the RPMalgorithm in the last two classes are a real number 0   and a complete weighted (bipartite) graph.The weights of edges are positive numbers which are generated at random (in Classes 3, 4) and are the Euclidean distances between any two points (in Classes 1, 2).In table 1, we introduce the numbers of admissible pairs which are produced from the RPMalgorithm for some examples of each class.

Figure 2 .
Figure 2. The relation between the values of n and the number of admissible pairs.
is called an inadmissible pair, where Let V be a set of points and , where x is a near point of u and y is a near point of v in V .Without loss of generality, we

Table 1 .
The performance of the RPM-algorithm.