A Fast and Efficient algorithm for Many-To-Many Matching of Points with Demands in One Dimension (original) (raw)

Limited-Capacity Many-To-Many Point Matching in One Dimension

Given two point sets S and T, in a many-to-many matching between S and T each point in S is assigned to one or more points in T and vice versa. A generalization of the many-to-many matching problem is the limited capacity many-to-many matching problem, where the number of points that can be matched to each point, that is the capacity of each point, is limited. In this paper, we provide an O(n^2) time algorithm for the one dimensional minimum-cost limited capacity many-to-many matching problem, where |S| + |T| = n. Our algorithm improves the best previous time complexity of O(k(n^2)), that in which k is the largest capacity of the points in the union of S and T. In this problem, both S and T lie on the real line and the cost of matching s in S to t in T is equal to the distance between s and t.

A Faster Algorithm for the Limited-Capacity Many-to-Many Point Matching in One Dimension

2019

Given two point sets S and T on a line, we present the first linear time algorithm for finding the limited capacity many-to-many matching (LCMM) between S and T improving the previous best known quadratic time algorithm. The aim of the LCMM is to match each point of S (T) to at least one point of T (S) such that the matching costs is minimized and the number of the points matched to each point is limited to a given number.

Efficient Many-To-Many Point Matching in One Dimension

Graphs and Combinatorics, 2007

Let S and T be two sets of points with total cardinality n. The minimum-cost many-to-many matching problem matches each point in S to at least one point in T and each point in T to at least one point in S, such that sum of the matching costs is minimized. Here we examine the special case where both S and T lie on the line and the cost of matching s ∈ S to t ∈ T is equal to the distance between s and t. In this context, we provide an algorithm that determines a minimum-cost many-to-many matching in O(n log n) time, improving the previous best time complexity of O(n 2) for the same problem.

Many to Many Matching with Demands and Capacities

Let A and B be two finite sets of points with total cardinality n, the many to many point matching with demands and capacities matches each point ai in A to at least alpha'i and at most alphai points in B, and each point bj in B to at least betaj and at most beta'j points in A for all 1 <= i <= s and 1 <= j <= t. In this paper, we present an upper bound for this problem using our new polynomial time algorithm.

Approximating the bottleneck plane perfect matching of a point set

Computational Geometry, 2015

A bottleneck plane perfect matching of a set of n points in R 2 is defined to be a perfect non-crossing matching that minimizes the length of the longest edge; the length of this longest edge is known as bottleneck. The problem of computing a bottleneck plane perfect matching has been proved to be NP-hard. We present an algorithm that computes a bottleneck plane matching of size at least n 5 in O(n log 2 n)-time. Then we extend our idea toward an O(n log n)-time approximation algorithm which computes a plane matching of size at least 2n 5 whose edges have length at most √ 2 + √ 3 times the bottleneck.

Matching point sets with respect to the Earth Mover's Distance

Computational Geometry: Theory and Applications, 2008

Let A and B be two sets of m resp. n weighted points in the plane, with m ≤ n. We present (1 + ) and (2+ )-approximation algorithms for the minimum Euclidean Earth Mover's Distance between A and B under translations and rigid motions respectively. In the general case where the sets have unequal total weights the algorithms run in O((n 3 m/ 4 ) log 2 (n/ )) time for translations and O((n 4 m 2 / 4 ) log 2 (n/ )) time for rigid motions. When the sets have equal total weights, the respective running times decrease to O((n 2 / 4 ) log 2 (n/ )) and O((n 3 m/ 4 ) log 2 (n/ )). We also show how to compute a (1 + ) and (2 + )approximation of the minimum cost Euclidean bipartite matching under translations and rigid motions in O((n 3/2 / 7/2 ) log 5 n) and O((n/ ) 7/2 log 5 n) time respectively.

Matching points with rectangles and squares

Computational Geometry, 2009

In this paper we deal with the following natural family of geometric matching problems. Given a class C of geometric objects and a set P of points in the plane, a C-matching is a set M ⊆ C such that every C ∈ M contains exactly two elements of P. The matching is perfect if it covers every point, and strong if the objects do not intersect. We concentrate on matching points using axes-aligned squares and rectangles. We propose an algorithm for strong rectangle matching that, given a set of n points, matches at least 2⌊n/3⌋ of them, which is worst-case optimal. If we are given a combinatorial matching of the points, we can test efficiently whether it has a realization as a (strong) square matching. The algorithm behind this test can be modified to solve an interesting new pointlabeling problem. On the other hand we show that it is NP-hard to decide whether a point set has a perfect strong square matching.

Computing a Many-to-Many Matching with Demands and Capacities between Two Sets Using the Hungarian Algorithm

Journal of Mathematics

A many-to-many matching (MM) between two sets matches each element of one set to at least one element of the other set. A general case of the MM is the many-to-many matching with demands and capacities (MMDC) satisfying given lower and upper bounds on the number of elements matched to each element. In this article, we give a polynomial-time algorithm for finding a minimum-cost MMDC between two sets using the well-known Hungarian algorithm.

Geometry Helps in Bottleneck Matching and Related Problems

Algorithmica, 2001

Let A and B be two sets of n objects in R d , and let Match be a (one-to-one) matching between A and B. Let min(Match), max(Match), and Σ(Match) denote the length of the shortest edge, the length of the longest edge, and the sum of the lengths of the edges of Match respectively. Bottleneck matching-a matching that minimizes max(Match)-is suggested as a convenient way for measuring the resemblance between A and B. Several algorithms for computing, as well as approximating, this resemblance are proposed. The running time of all the algorithms involving planar objects is roughly O(n 1.5 ). For instance, if the objects are points in the plane, the running time of the exact algorithm is O(n 1.5 log n). A semi-dynamic data-structure for answering containment problems for a set of congruent disks in the plane is developed. This data structure may be of independent interest.

A Randomized Algorithm for Non-crossing Matching of Online Points

2022

We study randomized algorithms for the online non-crossing matching problem. Given a sequence of n online points in general position, the goal is to create a matching of maximum size so that the line segments connecting pairs of matched points do not cross. In previous work, Bose et al. [CCCG 2020] showed that a simple greedy algorithm matches at least ⌈ 2 n/ 3 − 1 / 3 ⌉ ≈ 0 . ¯6 n points, and it is the best that any deterministic algorithm can achieve. In this paper, we show that ran-domization helps to achieve a better competitive ratio, that is, we present a randomized algorithm that matches at least 235 n/ 351 − 202 / 351 ≈ 0 . 6695 n points.