Minimum cost b-matching problems with neighborhoods

In this paper, we deal with minimum cost b-matching problems on graphs where the nodes are assumed to belong to non-necessarily convex regions called neighborhoods, and the costs are given by the distances between points of the neighborhoods. The goal in the proposed problems is twofold: (i) finding a b-matching in the graph and (ii) determining a point in each neighborhood to be the connection point among the edges defining the b-matching. Different variants of the minimum cost b-matching problem are considered depending on the criteria to match neighborhoods: perfect, maximum cardinality, maximal and the a–b-matching problems. The theoretical complexity of solving each one of these problems is analyzed. Different mixed integer non-linear programming formulations are proposed for each one of the considered problems and then reformulated as Second Order Cone formulations. An extensive computational experience shows the efficiency of the proposed formulations to solve the problems under study.


Introduction
Matching problems are among the most well-studied problems in combinatorial optimization. The original motivations of the problem were minimizing transportation costs and optimally assigning personnel to job positions, although many more applications of matching problems can be formulated as optimization problems defined on networks. Matching theory has been even used in the solution of linear systems. In Schenk et al. [33] proposed an alternative technique to the traditional pivoting strategies to factorize matrices based on symmetric weighted matchings.
Recently, matching theory has been used for modeling and analyzing wireless resource allocation in a wireless network [24], where a matching was essentially an allocation between resources and users. Many real world applications are usually modelled throughout the use of networks. However, very often the exact location of the nodes is unknown or simply, we have to choose a location for the node within a given region. Thus, the assumption of modelling the nodes by points with a priori known location should be revised. In this sense, we propose to consider a region where the location of a node can lie, that is usually referred in the literature as neighborhood, see Arkin and Hassin [3], Dorrigiv et al. [14], Gentilini et al. [20] among others. In this paper, we deal with matching problems on graphs where nodes are points of their corresponding neighborhoods. For simplicity, we will say that the nodes of the graph are represented by neighborhoods.
A matching of a graph is a subgraph in which each node has a degree of at most one. A maximum matching is a matching of maximum cardinality, that is, a matching with the greatest possible number of edges. If each edge has an associated weight, the maximum weight matching is a matching which maximizes the sum of the weights. Alternatively, edges may have costs, and the minimum cost matching consists of finding a matching with the lowest possible cost, satisfying some specific characteristic. In particular, the minimum cost maximal matching consists of finding a maximal matching (no other edge can be added to it while keeping the property of being a matching) which minimizes the sum of the costs of all the edges in the matching. There are excellent surveys on Matching Theory by Gerards [21], Lovasz and Plummer [25], and Pulleyblank [32].
Generalizations of the matching problem consider more general degree constraints. These generalizations lead to so called b-matchings or f-factors [19,21,25]. The b-matching problems considered in this paper are those matching problems where each node is met by at most b edges and the same edge can be used at most once. Important applications of b-matching problems include the T-join problem, the Chinese postman problem, the 2-factor relaxation for the symmetric traveling salesman problem and capacitated vehicle routing [29]. The b-matching model is used to solve numerous problems in different areas, e.g. Tennenholtz [36] in the context of combinatorial auctions and Dong et al. [13] for energy allocation in sea surface monitoring problems. The problem of finding a b-matching of maximum cardinality has been widely studied [2,18,19]. The minimum-cost perfect bipartite b-matching problem has been studied in Cohen et al. [10]. Although the minimum cost maximal matching has been addressed by Bodur et al. [9], Taşkin and Ekim [35], Tural [37], to the best of our knowledge, the minimum cost maximal b-matching problem with b > 1 has not been studied.
The computational complexity of Matching problems, has been extensively studied in the literature. Edmond [17] proved that the maximum cardinality matching problem is solvable in polynomial-time and proposed a strongly polynomial algorithm for the maximum (minimum) weighted matching problem. The minimum cost maximal 1-matching problem is NP-hard in general graphs [9]. Vaidya [38] showed that Euclidean matching problems, in which the nodes are given as points in the plane and the weight of an edge between the two points is the distance between the two points in the plane, can be solved in O(n 5∕2 (log n) 4 ) time, for n the number of nodes of the graph. When the points lie on the boundary of a convex polygon, a minimum weight perfect matching with Euclidean distances can be found in O(n log n) time [28]. They also proved that this complexity is O(nlog 2 n) when the points lie on a simple non-convex polygon. Cunningham and Marsh [11] found the first polynomial time algorithm for finding an optimal b-matching of maximum cost and Anstee [2] presented a strongly polynomial algorithm for solving this problem. The maximum cardinality b-matching of maximum cost can be solved in O(nmlog 2 n) time [19], for m the number of edges of the graph.
As far as we know, matching problems on a graph with neighborhoods have not been investigated yet. Recently, some extensions of combinatorial optimization problems have been considered on a graph using convex neighborhoods to represent its nodes. In particular, the Traveling Salesman Problem with Neighborhoods (TSPN) consists of searching the minimum-length tour visiting just once each one of the neighborhoods. This problem was introduced by Arkin and Hassin [3] and studied when the neighborhoods are polygonal regions, discs or disjoint convex full dimension objects [12,16,20,22]. As a generalization of the classical TSP problem, the Euclidean TSPN problem is also NP-hard. The Minimum Spanning Tree Problem with Neighborhoods (MSTPN) aims to identify a representative point from each neighborhood so that the MSTP of the set of representative points has the minimum total length among all possible spanning trees. The Minimum Spanning Tree Problem where neighborhoods are a set of disjoint disks, rectangles or second order cone representable, was analyzed in Blanco et al. [8], Dorrigiv et al. [14], Puerto and Valverde [31], Yang et al. [39]. The general case of this problem in the plane is NP-hard. This paper concentrates on the Minimum Cost b-Matching Problems (MCbMP's) with neighborhoods instead of nodes, where the costs represent distances between points in each neighborhood. Depending on the criteria of matching neighborhoods, different variants of the MCbMP's are considered. In particular, we will study the minimum cost versions of: (i) the perfect b-matching problem (each neighborhoods is met by exactly b edges), (ii) the maximum cardinality b-matching problem (find a b-matching with the greatest possible number of edges), (iii) the maximal b-matching problem (no other edge can be added to it while keeping the property of being a b-matching) and (iv) the a-b-matching problem (in addition to the conditions of a b-matching, at least a-edges are incident in each neighborhood).
Applications of this kind of problems can be found in wireless network, where the goal is to serve the voice and/or data traffic demand of a particular geographic region (not always convex in structure). The traffic from and/or to a user device of a region is driven through a cell tower [30]. When the number of requests overhead the maximum capacity of the tower, the traffic is routed to the cell tower's antenna in another region, usually the closest one to reduce costs and guarantee the signal quality. Hence, when designing the wireless network, one may pose the location of a cell tower in each region (neighborhood) taking into account to which other tower will be connected in case of overhead the maximum capacity. The goal is matching neighborhoods and locating a cell tower in each of them to minimize the total sum of all the distances between the matched neighborhoods' towers. In order to prevent that more than one tower overhead the maximum capacity, a number b could be set such that each neighborhood is matched to, at most, other b-neighborhoods instead of to only one. Depending on the criteria to find the b-matching with neighborhoods, the aforementioned problems arise. For instance, considering the maximum cardinality 2-4-matching criterion, the goal would be to find a matching taking into account that: (1) each tower can be covered, in the case of overhead its capacity, by at least two towers and at most four towers, (2) the higher number of towers to cover a possible overhead of another tower, the better for the quality of the connection among the towers.
To the best of our knowledge, this paper is the first attempt to deal with neighborhoods in matching problems and there is no previous results on the complexity of this kind of problems. We study different cases depending on b, the matching criterion and the type of neighborhoods. Table 1 summarizes the complexity results for some of the b-matching problems studied in this paper. This table allows us to compare the complexity in the case of nodes and neighborhoods. It is worth mentioning that matching problems that are strongly polynomial with nodes are still polynomially solvable with Second Order Cone (SOC) representable neighborhoods. However, they become NP-hard when non-convex polygons are considered as neighborhoods.
In spite of the hardness of some problems, we will provide mathematical programming tools for solving the aforementioned problems. In particular, we provide SOC based formulations for these problems with non-convex neighborhoods given as the union of SOC representable sets. The main reason for this is that they can be solved by interior point methods and, in general, are more efficient that Semidefinite Programming (SDP) problems. In addition, state-of-the-art solvers incorporate mixed integer non-linear implementations of SOC constraints. For further details on the SOC constraints, see the books of Ben-Tal and Nemirovski [5], Luemberger and Ye [27].
The rest of the paper is organized as follows. First, we describe the MCbMP's with all the variants studied here. Their complexity is analyzed in Sect. 3. In Sect. 4, different non-linear integer programming formulations are developed for the different variants of the b-matching problems. In Sect. 5, these formulations are rewritten as SOC programs in the case of non-convex neighborhoods given as the union of SOC representable sets. Before assessing their performance on randomly generated graphs in the computational results section, a procedure to generate initial solutions is described in Sect. 6. The paper ends with a section of conclusions and some possible future lines of research.

Minimum cost b-matching problems with neighborhoods
Let G = (V, E) be an undirected graph where the nodes are represented by neighborhoods N i , with i ∈ N ∶= {1, … , n} , E be the set of edges between the neighborhoods of V, and (i) be the set of edges incident to N i . In this paper, for the sake of presentation, we will restrict to three types of neighborhoods: non-convex polygons, balls of p -norms and convex polyhedra. Depending on the case the neighborhoods Minimum cost b-matching problems with neighborhoods a-b Maximal are encoded by the list of their consecutive vertices in case of non-convex polygons, the center, radius in case of a p ball and by the set of inequalities describing the polyhedron. A b-matching M ⊆ E is a subset of edges such that each neighborhood in V is met by at most b edges in M and the same edge can be used at most once. In the b-matching problem, b is the so-called node constraint or degree requirement and it could be considered different for each neighborhood. Indeed, the maximum number of edges that can met N i will be the minimum of | (i)| and b, and this can be different for each neighborhood. For the sake of simplicity and without loss of generality, we will assume the same value b for all the neighborhoods.
In the MCbMP's with neighborhoods the goal is twofold: (i) finding a b-matching in the underlying graph, and (ii) determining a point in each neighborhood to be the connection point among the edges defining the b-matching. We assume that the same point z i ∈ N i is used to calculate the distances with all the matched neighborhoods with N i . Note that this point could be anywhere in the neighborhood, even in its interior. Therefore, the sum of the lengths (costs) of the edges defined by these points being part of the b-matching is minimized. Indeed, to minimize the sum of all distances between matched neighborhoods, we have to simultaneously obtain the b-matching and points z i ∈ N i , determining the distances between the neighborhoods. Note that the main difference with the MCbMP's with nodes is that in the version with neighborhoods, the distances are not part of the input, but part of the decision.
We introduce the following optimization problems: (i) the minimum cost perfect b-matching problem (P_MCbMP) consists of finding the perfect b-matching of minimum cost, i.e., each neighborhoods is met by exactly b egdes. (ii) the minimum cost maximum cardinality b-matching problem (M card _MCbMP) consists of finding a b-matching with the maximum cardinality of minimum cost, i.e., with the greatest possible number of matched neighborhoods. (iii) the minimum cost maximal b-matching problem (Max_MCbMP) consists of finding a maximal b-matching of minimum cost, i.e., no other edge can be added to it while keeping the property of being a b-matching. (iv) the minimum cost maximum cardinality/maximal a-b-matching problem, denoted by M card _MCabMP and Max_MCabMP respectively, with a ∈ ℤ , 0 ≤ a < b , consists of finding a maximum cardinality/maximal b-matching of minimum cost where it is imposed that each neighborhood is matched to at least a neighborhoods. Observe that in a M card _MCbMP or Max_MCbMP, a neighborhood could be not matched to any neighborhood. This situation is avoided in the a-b-matching problem with a > 0 . When a = 0 , the classical minimum cost maximum cardinality/maximal b-matching problem is obtained.
The following example illustrates the MCbMP's. For solving the minimum cost maximal 2-matching problem using the Euclidean norm, we have to simultaneously obtain the maximal 2-matching and six points z i ∈ N i , which determine the distances between the neighborhoods. The same point z i ∈ N i is used to calculate the distances with all the matched neighborhoods with N i .
The optimal matching with neighborhoods is given by the solid line in Fig. 1b, and the total cost is 140.83. For instance, N 1 is matched to N 3 and N 6 and the point of the neighborhood N 1 used to calculate the distances to N 3 and N 6 is the same point for both of them, z 1 . Note that the distance between N 1 and N 6 using z 1 and z 6 is not the closest distance between neighborhoods N 1 and N 6 .
Comparing the optimal solutions of the maximal 2-matching problem with/without neighborhoods, we observe that N 2 is not matched to any neighborhood in the optimal solution of the maximal 2-matching problem with neighborhoods ( Fig. 1b). However, in the optimal solution without neighborhoods (Fig. 1a), v 2 is matched to v 1 and v 3 . This shows the influence in the optimal solution of the points chosen in each neighborhood to determine the distances.
To illustrate the different b-matching problems introduced above, we consider the following example. An optimal solution of the perfect 2-matching problem is given by the six solid lines in Fig. 2a and the total cost associated with this matching is 206.66. This is also the optimal solution of the maximum cardinality 2-matching problem. Note that this solution is maximal, and contains two edges more than the solution of the minimum cost maximal 2-matching problem given in Fig. 1b with total cost 140.83.
The optimal solution of the minimum cost maximal 2-matching given in Fig. 1b allows a neighborhood not to be matched to any other (see neighborhood N 2 ). If we impose that all the neighborhoods must be matched to at least another one (1-2-matching problem), the optimal solution of the maximal 1-2-matching of minimum cost is given in Fig. 2b. The total cost associated with this matching is then 149.37. Note that now, neighborhood N 6 is matched to N 1 and N 5 whereas in the optimal solution of the minimum cost maximal 0-2-matching N 6 was matched to N 1 and N 3 .
Observe that whenever the minimum cost perfect b-matching problem is feasible, the minimum cost maximum cardinality b-matching problem has the same solution (see Fig. 2a). However, the former can be unfeasible and the latter is always feasible, see Fig. 3.   In the following, we analyze the complexity of the different variants of the MCbMP's depending on b and the structure of the neighborhoods.   Fig. 5). The minimum cost perfect/ maximum cardinality 2-matching problem is equivalent to the Touring Polygons problem [15] which consists of finding a shortest tour (shortest cycle) that starts at N 1 , visits the polygons in the given order, and ends again at N 1 . Since the polygons are non-convex, the Touring Polygons problem is NP-hard for any metric p , p ≥ 1 [1,15]. Therefore, the P_MCbMP and M card _MCbMP are NP-hard and the result holds.   Observe that (Max_MCbMP) and (Max_MCabMP) are NP-hard because the minimum cost maximal 1-matching problem where the nodes are points is NP-hard.

Proof
However, when b = 1 the complexity of some versions of the minimum cost 1-matching problems become polynomial in some cases.

Proposition 3.3
The P_MC1MP and M card _MC1MP with SOC-representable neighborhoods are solvable in polynomial time.
Proof When b = 1 , each neighborhood is met by at most one edge and the distances between neighborhoods are independent of one another. Therefore, we can previously determine the distances between neighborhoods (solving minimum distances problems between neighborhoods) and then solving a classical matching problem in a graph with nodes using these computed distances as the costs or distances of the edges between the nodes.
Provided that the distances between neighborhoods can be computed in polynomial time, since these distances can be reduced to solve a SOC programming problem and the version of the minimum cost perfect and maximum cardinality matching problems are solvable in polynomial time, the result follows. ◻

Proposition 3.4 The Max_MC1MP on trees with SOC-representable neighborhoods is solvable in polynomial time.
Proof The case of Max_MC1MP is solvable in polynomial time on trees [37]. Following similar arguments to the ones given in Proposition 3.3, the result holds. ◻ Note that the complexity given in the previous two results are polynomial in the sense of the complexity of interior point algorithm for solving SOC representable problems. Moreover, the results given in Propositions 3.3 and 3.4 could be extended to the case of any neighborhood, not only SOC-representable, provided that the distances between neighborhoods could be computed in polynomial time.

Formulations for MCbMP's
In this section we present mixed integer non-linear programming formulations for the different MCbMP's defined in Sect. 2. All formulations use the following sets of decision variables: Moreover, we denote || ⋅ || q the standard q -norm with q ∈ [1, ∞) . In this section, constraints related to the structure of the neighborhoods are not explicitly z i ∶ continuous variables to represent the point selected in each neighborhood, ∀i ∈ N.
formulated, and we will refer to them just by z i ∈ N i . In Sect. 5, we will formulate them properly.

The minimum cost perfect b-matching problem
This section deals with the P_MCbMP, where each neighborhood N i is met by exactly b edges. This problem can be formulated as follows: The objective function (1) accounts for the sum of the length of the matching edges which is determined by the distance between the chosen points in each neighborhood. Constraints (2) define the perfect b-matching constraints, i.e., each neighborhood meets exactly b edges.

The minimum cost b-matching problem with maximum cardinality
The M card _MCbMP can be formulated as a maximum weight b-matching problem as follows: where M ∶= max i,j∈N This problem has been transformed in a maximum problem using a big-M parameter, in such a way that if an edge is not used, the penalization is huge. Therefore, the choice of the maximum number of edges is guaranteed. Family of constraints (3) is the classical family of b-matching constraints when the number of edges is being maximized. (3)

The minimum cost maximal b-matching problem
In this section we propose two different formulations for the Max_MCbMP. First, we give the following definition. A neighborhood N i ∈ V is said saturated if no other edge can met N i . For each N i ∈ V , the maximum number of edges that can met N i is defined as The first formulation of the minimum cost maximal b-matching problem consider binary y-variables to keep under control when neighborhood i can be matched with neighborhood j (because they are not saturated), i.e., Hence, this problem can be formulated as follows: Constraints (4) ensures that the generated solution is a b-matching. Constraints (5) x ki < S i ). Constraints (6) ensure that x ij = 1 if y ij = 1 and y ji = 1 .
That is, if neighborhoods N i and N j are not saturated, then N i and N j are matched. An alternative formulation can be considered using the following binary variables [35]:

3
The alternative formulation for the minimum cost maximal b-matching problem using the variables defined above is given by Constraints (9) enforce the condition that if x ij = 0 , neighborhood i or j has to be saturated, i.e., y i = 1 or y j = 1 . Constraints (10) The following constraints are valid inequalities for (F2 max ), Further constraints can be added to reinforce the formulation in cases where | (i)| = 1: To the best of our knowledge, the Max_MCbMP with b > 1 , for the standard case (by considering a set of nodes), has not been studied. Therefore, formulations (F1 max ) and (F2 max ) after removing (8) are also valid for solving the standard minimum cost maximal b-matching problem if we consider singletons instead of neighborhoods.

The minimum cost a-b-matching problems
This section is devoted to the minimum cost b-matching problems where additional constraints are imposed to the matching in order to guarantee each neighborhood N i is matched to at least a neighborhoods, with 1 ≤ a ≤ b . These models are called minimum cost a-b-matching problems.
Formulations for the Max_MCabMP and M card _MCabMP are obtained by adding the following constraints to the corresponding formulations given in the previous subsections: (4), (7), (8)

3
Minimum cost b-matching problems with neighborhoods and are denoted by (F ab max ) and (F ab card ), respectively.

SOC formulations for the MCbMP's with neighborhoods
Observe that all the formulations of the different versions of the MCbMP's given in the previous section can be written as follows: where [MC] is the set of Matching Constraints given in each formulation depending on the problem (perfect b-matching, maximum cardinality b-matching, maximal b-matching and a-b-matching) and M ∶= max i,j∈N for the case of the maximum cardinality version, and 0 otherwise. One of the main difficulty of the problem above lies in the term ||z i − z j || q x ij of the objective function (12). Let us define a new set of variables d ij ≥ 0 as d ij = ||z i − z j || q x ij , ∀(i, j) ∈ E , i < j . Then, the formulations for the MCbMP's presented in the previous section can be reformulated as follows: Although the reformulation has a linear objective function, constraints (13) are not linear since they are considering a qnorm. However, this type of constraints have a representation as Second Order Cone (SOC) inequalities, see Blanco et al. [7]. Most of the state-of-the-art solvers are capable to efficiently solve optimization problems involving SOC constraints by means of quadratic constraints with positive definite matrices.
min ∑ So far, we have focused our attention in the modelling aspects of the objective function and constraints to model the corresponding matching criterion under study. And, we have obtained a linear objective function and a set of constraints with a SOC representation. However, the characterization of the neighborhoods have not been addressed yet. Particularly, we will concentrate on neighborhoods given by the union of SOC-representable sets [26], more precisely, polyhedra and q balls. Different transformations of ( F general ) (one for each matching criterion) will be carried out to accommodate it to the use of second order cone optimization. The main reason for this is that it can be solved by interior point methods and, in general, they are more efficient that Semidefinite Programming (SDP) problems. For further details on the SOC constraints, see books Ben-Tal and Nemirovski [5], Luemberger and Ye [27].

SOC formulations for the MCbMP's with some non-convex neighborhoods
In this subsection, we consider the case where the neighborhoods belong to a family of non-convex sets given by a finite union of polyhedrons and q -norm balls as Fig. 6. We will use results from disjunctive programming [4,34] to formulate the MCbMP's with these neighborhoods.
Let us consider a set of neighborhoods N i , with i ∈ N , defined as whose recession cone is the null vector, with A i j a real matrix and b i j ∈ ℝ for any j ∈ P i ∶= {1, … , p i } , and where || ⋅ || q denotes the standard q -norm with q ∈ [1, ∞) , q ∈ ℚ , and c i k ∈ ℝ m and r i k ∈ ℝ for any k ∈ D i ∶= {1, … , d i } . Observe that neighborhoods N i are not convex in general. Let z i be a point in the neighborhood N i . Then z i belongs to a polyhedron P i j , for some j ∈ P i , or a q -norm ball D i k , for some k ∈ D i . We will use the following variables to distinguish points in the polyhedron or q -norm ball.
• Continuous variables u i j ∈ ℝ m to represent a point in the polyhedron P i j . • Continuous variables w i k ∈ ℝ m to represent a point in the q -norm ball D i k . • Binary variables t i j equal to 1 if z i is in the polyhedron P i j and 0 otherwise. • Binary variables s i k equal to 1 if z i is in the q -norm ball D i k and 0 otherwise.
The following proposition give a characterization of a point belonging to a neighborhood.

Proposition 5.1 z i ∈ N i if and only if
Proof (⇒ ) Let z i ∈ N i . Then, z i belongs to a polyhedron P i j 0 , for some j 0 ∈ P i , or a q -norm ball D i k 0 , for some k 0 ∈ D i (if z i belongs to the intersection of both, we only consider one of the two cases).
(⇐ ) Let z i a point satisfying (15)- (19). From (18) and (19), there exists either j 0 ∈ P i such that t i j 0 = 1 and t i j = 0 ∀j(≠ j 0 ) ∈ P i and s i k = 0 ∀k ∈ D i , or there exists k 0 ∈ D i such that s i k 0 = 1 and s i k = 0 , ∀k(≠ k 0 ) ∈ D i and t i j = 0 , ∀j ∈ P i . In the first case, on the one hand, since t i j 0 = 1 and t i j = 0 ∀j(≠ j 0 ) ∈ P i then, by (16), u i j 0 ∈ P i j 0 and A i j u i j ≤ 0 , ∀j(≠ j 0 ) ∈ P i . Since any vector satisfying A i j u i j ≤ 0 , ∀j(≠ j 0 ) ∈ P i would be a vector of recession cone of P i j and, by hypothesis, this is the null vector, then u i j = ∈ ℝ m , ∀j(≠ j 0 ) ∈ P i . Moreover, on the other hand, if s i k = 0 ∀k ∈ D i , by (17), we have that ||w i k − c i k || q = 0 , ∀k ∈ D i , that is, w i k = c i k . Therefore, from (15), we obtain that z i = u i j 0 Analogously in the second case, if we have that there exists k 0 ∈ D i such that s i k 0 = 1 and s i k = 0 , ∀k(≠ k 0 ) ∈ D i and t i j = 0 , ∀j ∈ P i , then we would obtain that ◻ Therefore, (14) can be replaced by (15)- (19). Hence, since constraints (17) are SOC-representable, ( F general ) is a mixed integer SOC-formulation when the neighborhoods are defined by a finite union of polyhedrons and q -norm balls, and the distances are also measured with a q -norm. We could even consider neighborhoods with different q -norms or distances between neighborhoods using simultaneously different q -norms, with q ∈ [1, ∞).

Procedure for generating an initial solution
In this section we describe a procedure to generate an initial solution for solving the MCbMP's with neighborhoods.
This procedure starts by considering a fixed point in each neighborhood, v i ∈ N i . Now, V = {v 1 , … , v n } . The distances ij = ||v i − v j || q between these points are calculated. Afterwards, we solve the standard version (without neighborhoods) of the MCbMP's by considering these points: Notice that in the case of the Max_ MCbMP, this model include binary y-variables.
Let x v (and ȳ v for (F2 max )) the optimal solution of the above problem. This is a partial feasible solution of the general formulation with neighborhoods (F general ). We provide these values of the x-variables (y-variables) as feasible starting solution for the (F general ) model.
The goodness of the initial solution generated by the procedure will depend on the points chosen in each neighborhood. Figure 1 showed that the optimal matching of the problems with/without neighborhoods is not the same and depends on the choice of the points. This procedure is tested in the next section.

3
Minimum cost b-matching problems with neighborhoods

Computational study
A computational experiment was carried out to assess the usefulness of the given formulations for solving the proposed MCbMP's with neighborhoods. Tests are performed on instances with n neighborhoods defined in ℝ m (with m = 2 or 3). We consider two kind of neighborhoods: convex sets ( 2 -norm unit balls and polyhedra) and non-convex sets defined as the union of three of these convex sets. We have considered the number of neighborhoods n ∈ [10,26] , b ∈ [1,5] and the Euclidean norm to measure the distances. Graphs with different settings have been considered. The expected edge density of the graph (measured as 2|E| n⋅(n−1) , see Taşkin and Ekim [35]) takes values 0.4, 0.6, 0.8 and 1 (complete graph).
All the formulations were coded in Python 3.8, and solved using Gurobi 9.1.2. [23] in a Windows 10 Server with an Intel Xeon W-2245 processor at 3.9 GHz and 256 MB of RAM and setting by default all cuts and presolve strategies of the solver. A limit of one hour of CPU time was set in all the experiments.
The procedure described in Sect. 6 for getting an initial feasible solution is tested. The results obtained by using the solution procedure are indicated with Proc.

Computational results with non-convex neighborhoods
First, different tests are performed on non-convex neighborhoods. These neighborhoods were generated by considering the union of three convex sets of the following: • In the case of the plane: 2 -norm disks with different radii randomly generated, and rectangles with sides parallel to the axis and lengths randomly generated. • In the 3D-space, 2 -norm balls with different radii randomly generated and polyhedra whose faces are rectangles randomly generated.
The neighborhoods were generated taking into account different factors such as size, overlapping, and spatial distribution among them. First, n random points in [0, 100] m are generated. Each point will belong to one of the neighborhoods and will be in at least one of the three sets of this neighborhood. The minimum distance among the randomly generated points is calculated ( ), and a fixed percentage f (factor) of is calculated. The diameters of 2 -norm balls and the sides of the rectangles will have a randomly generated length in (0, f ⋅ ). Similar procedures to generate instances have been used in the literature of the combinatorial optimization problems with neighborhoods (see Blanco et al. [8], Gentilini et al. [20] among others).
A preliminary study with n = {12, 14, 16, 18, 20} and b = {1, 2, 3, 4, 5} for a complete graph in the plane was carried out. Five different instances were generated for each combination of n and b-values. Figure 7 displays the percentage of instances solved (within a given time) for the different formulations proposed here with the procedure (solid line) and without procedure (dashed line). As can be seen, this percentage increases when the solution procedure is considered for all the MCbMP's studied. In the case of the P_MCbMP (blue line) this percentage increases up to 20% . The hardest problem to be solved is M card _MCbMP (brown and yellow lines) where less than 10% of instances were solved to optimality after 1 hour. We think it is due to the big-M parameter defined in the objective function. Moreover, the behaviour of (F2 max ) and (F2 ab max ) are quite similar with both formulations.
In this figure does not appear formulation (F1 max ) because provides worse computational results than (F2 max ) for solving Max_MCbMP (see Fig. 8, which displays, in logarithmic scale, the average of the times for different values of n and b of both formulations).
As consequence of this first experiment, we decided focus our computational study on formulations solving the largest percentage of instances within the time limit. Since the behaviour of (F2 max ) and (F2 ab max ) are quite similar, we concentrate on (F P ) and (F2 max ) providing an initial solution. The CPU time to obtain an initial solution using the procedure in Sect. 6 is around 0.1-0.2 seconds on most instances.  Table 2 summarizes the results for (F P ). We concentrated on complete graphs (density equal to one) due to the number of unfeasible problems obtained when graphs of other densities were used. The first two columns are the values of n and b, respectively. The column CPU reports the average computing time (in seconds) to attain optimality. Notice that, here, a CPU time equal to 1H has been attributed for the instances that could not be solved within this limit, therefore times are underestimated. Column # gives the number of solved instances. Whenever the time limit of 1 hour is reached without certifying optimality, a gap between the lower and upper objective bound is calculated. Thus, if zu is the upper bound (the best solution found) and zl is the lower bound, then gap is defined as 100 |zu − zl|∕|zu| . When zu = 0 and zl ≠ 0 , the gap is defined to be infinity. Column G BS reports the average percentage gap of those instances where the gap is not infinity (a superscript indicates the number of these instances).
The first observation that comes after running the experiment is that the computational times increase with the size of n and b. Moreover, the number of unsolved instances increases with b.  Table 3 shows the results for (F2 max ) with graphs of different densities. In all the experiments the valid inequalities (11) have been included (their inclusion provided better computational results in a preliminary study). As it can be seen, the computational times increase with the density of the graph. Solving instances in complete graphs is harder than solving instances in graphs with lower densities. This can be better appreciated in Figs. 9 and 10, which display the averages of the CPU times for different values of n and b, respectively, depending on the density of the graph. In addition, an extension of the experiment was carried out to evaluate up to what size of instances we could solve with (F2 max ). Table 4 shows that even for lower densities, with n ≥ 22 , and b ≥ 3 , the instances are hard to solve. Moreover, they show the behaviour of (F2 ab max ) with a = 1 (we proved different values of a obtaining similar results).
Another computational study was still carried out to test three-dimensional instances with (F P ) and (F2 max ) in complete graphs (see Table 5). We observe that three-dimensional instances are harder to solve than two-dimensional ones, given the same number of neighborhoods, n. See n = 18 and b = 3 . the case of (F P ), the average time for solving 2D-instances was 845 seconds, whereas three of the 3D-instances could not be solved in one hour for the same size. For (F2 max ), the average time of 2D-instances tested was 2067 seconds, whereas none of the five 3D-instances could be solved in one hour.

21.3
We have noticed by testing different instances that overlapping does not influence the overall CPU time. Nevertheless, the size of the neighborhoods may influence the difference in CPU time. In order to illustrate the effect of the size of the neighborhoods, Fig. 11 shows the averaged time (logarithmic scale) for (F2 max ) with n = 12 with different scale factors (0.5, 0.7 and 0.9). This confirms that instances with larger neighborhoods are harder to solve than instances with smaller ones.

Computational results with convex neighborhoods
A second study was carried out to compare the performance of (F P ) and (F2 max ) with convex neighborhoods. We concentrate on the plane and consider two kind of instances: all the neighborhoods are 2 -norm disks or all are squares (see Blanco et al. [8], Blanco [6] for similar instances). First, n random points in [0, 100] m are generated. In the first set of instances, these points will be the centers for disks. In the second set of instances, they will be the centers of the squares. With the same randomly generated points, the two set of instances are obtained. The radius of the disks is 4 units, and the side length of the squares is 6 units. Five different set of points were generated for each combination of n = {12, 14, 16, 18, 20, 22, 24, 26} and b = {1, 3, 5}.
The average results with both set of instances are given in Table 6. The results show that solving instances with 2 -norm disks is much harder than with squares. See n = 20 and b = 5 . (F P ) and (F2 max ) did not solve to optimality any of the instances with disks in 1 hour. However, when the instances are squares, the time is 10.2 for (F P ) and 64.7 for (F2 max ). This is due the fact that when neighborhoods are squares, the constraints are all linear.

Concluding remarks
This work can be considered as another step forward to address combinatorial optimization problems on graphs with neighborhoods instead of nodes. Different versions of the b-matching problem with minimum cost have been studied: the perfect matching problem, the maximum cardinality matching problem, the maximal matching problem and the a-b-matching problem. The property of the standard matching problems (without neighborhoods) of being solvable in polynomial-time, is not guaranteed with neighborhoods. We have proved that, in general, all the versions of the b-matching with non-convex neighborhoods studied here are NP-hard, even for non-convex polygons.
Different non-linear integer programming formulations for the minimum cost b-matching problems with all the versions presented in this paper have been developed and then reformulated as mixed integer SOC formulations. We have performed a series of computational experiments in order to compare the performance of the given formulations, as well as to explore the limitations of each one of them. For this, we have generated several batteries of instances with different settings. The extensive computational experience shows the usefulness of the formulations to solve the proposed problems. We have developed an initial solution procedure that allows to reduce the computational times and solve to optimality some initially unsolved instances. The findings of this paper can be the basis of further research on some other combinatorial optimization problems with neighborhoods. It would be interesting to explore alternative algorithms for solving the MCbMP's, as Benders decomposition methods or good matheuristics to be able to solve larger instances.