1. Introduction
In the Steiner problem in graphs, a given subset of nodes must be spanned at a minimum cost. Without any constraint, the optimum is a partial minimum spanning tree (PMST) or a Steiner tree. In some applications, additional constraints must be satisfied. Various constrained spanning problems and Steiner problems have been analyzed in graphs (cf. examples in [
1,
2,
3]). We are interested in the degree-constrained Steiner problem. Each node
of the graph
is assigned a positive integer value
which represents the maximum degree of the node in any spanning structure (for example, in the spanning trees).
Often,
budget-type degree constraints are assumed. For instance, when the bounds are uniform and equal to two, only paths can be used to span the nodes (the problem corresponds to the well-known traveling salesman problem, and the solution does not always exist). Having different bounds, it is not always possible to span the nodes using trees that meet the degree constraints. Degree-constrained spanning tree and Steiner tree problems are NP-hard. Moreover, they can not be approximated by a constant factor if the degrees correspond to budgets [
4]. In the case of a limited budget of the nodes, the minimum cost solution is a tree: it contains a node at most once.
The motivation of the recent study is the definition and the analysis of the exact solution of the minimum cost degree-constrained partial spanning in the cases of limited node capacities. Supposing capacity-like constraints on the node degrees, the optimum may be different from a tree (we suppose that a node can participate multiple times in the coverage and the degree of each occurrence is limited by the given capacity). In these cases, a spanning hierarchy corresponds to the optimum. The next section provides formal definitions. The main advantages of the hierarchies in the discussed Steiner problems are: (1) In some cases, Steiner hierarchies exist but Steiner trees that meet the constraints do not exist; (2) Even if Steiner trees respecting the degree constraints exist, in some cases, a hierarchy of least cost can be constructed.
Capacity-like constraints can be found in transparent optical networks where the duplication capacity of the optical switches is limited. If there is no node/switch capable of duplicating or splitting the incoming light, only light paths can be used for optical routing. The optical multicast route using the cross-connect capacity of the switches can visit a switch several times and can be different from a partial spanning tree [
5]. The reader can learn more about the specifics of optical networks in [
6].
To the best of our knowledge, our paper is the first to analyze the solution for the minimum Steiner problem under bounded degree capacities in the nodes.
In the paper, we propose a quick presentation of the well-known degree-constrained Steiner tree problems (cf.
Section 2). The related definitions and the used notations can be found in
Section 3. The necessary and sufficient conditions for a solution to exist are formulated in
Section 4. An ILP-based exact computation (cf.
Section 5) is also proposed. The tree-based and hierarchy-based solutions are compared in
Section 7 followed by the conclusions.
2. Previous Work
The minimum Steiner tree computation is largely studied in the literature. Several hundred papers can be found on the approximations and methods for solving this NP-hard problem and its variants. The 11th DIMACS Implementation Challenge as well as the PACE 2018 ChallengeA provide important summaries of the evolution of the treatments (methods and new computational results) of the Steiner problem. A large survey is presented in [
7]. A recent paper [
8] analyzes integer programming and mixed-integer programming formulations for the optimization problems that are based on induced connectivity. It provides some conditions for LP-relaxations of both the maximum weight connected sub-graph and the Steiner tree problem to be tight. Local search algorithms are used for improving the computed Steiner trees by replacing sub-trees with advantageous structures in [
9]. The proposed methods outperform the known local search algorithms. The same authors propose a method based on supervised learning to produce a quasi-optimal Steiner tree in [
10]. Artificial Intelligence is a good candidate for finding efficient patterns in the construction of spanning structures. Another learning-based solution can be found in [
11] to solve the clustered Steiner tree problem (which is a recently introduced NP-hard problem for efficient multicast routing in a decentralized clustering network architecture).
The degree-constrained spanning tree problem in graphs is one of the NP-hard problems cited in [
12]. While the degree-constrained spanning problem has been intensively studied, a few papers talk about the degree-constrained Steiner problem. An extensive study can be found in [
13]. In [
14], the authors argue the particular interest of this problem with the limited capability of switches in high-speed networks to realize multicast routing. It is not always possible to span the nodes using trees while respecting the degree constraints (cf. [
14]). The general case in which the bounds are different is NP-hard using a reduction to the traveling salesman problem (cf. [
2]).
The degree-constrained minimum cost sub-graph problems are NP-hard. Polynomial-time algorithms computing good approximations are needed. The first approximation scheme is proposed in [
15]. In [
4], the problem is presented as a generic bi-criteria optimization problem
where the first objective
A corresponds to the respect of the budget constraints, the second (
B) is the minimization of the cost, and
S describes the class of the solution. The investigated classes (as usual) are spanning trees, Steiner trees, and generalized Steiner trees. The authors prove the hardness of the proposed optimizations. They demonstrate that the partial spanning problem with non-uniform bounds cannot be approximated with
for any
and
[
4]. Paper [
16] shows a quasi-polynomial time approximation algorithm computing a Steiner tree in a graph with
n nodes. The tree is of maximum degree
, and its cost is within a constant factor of a minimum Steiner tree whose maximum degree is bounded by
B.
For fault-tolerant networking, ref. [
17] presents a variant, the minimum degree bounded Steiner network problem, where the minimum-cost Steiner network that satisfies all the degree bounds is required. A Steiner network is a graph with at least
edge-disjoint paths between nodes in all pairs of nodes
u,
v (
is the connectivity requirement for the network). The paper proposes a polynomial time approximation algorithm that returns a Steiner forest or a Steiner network of cost at most twice the optimal cost solution when the degree violation at each node is bounded. Lau et al. also present algorithmic and hardness results on the survivable network design problem with degree constraints; among others, there is a constant factor approximation algorithm applicable for many degree-constrained network design problems, including the minimum bounded degree Steiner forest problem [
18]. An improvement can be found in [
19]. An approximation algorithm for some degree-bounded directed network design problems, such as the minimum cost connected sub-graph problem and upper bounds on in-degrees and out-degrees of the vertices, is proposed in [
20]. In [
21], two degree-constrained sub-graph problems (the maximum d-degree-bounded connected sub-graph and the minimum sub-graph of minimum degree
) and their approximations are discussed.
The network design problems with degree constraints are also analyzed in [
22]. After the minimum-cost degree-constrained two-node-connected sub-graph problem and the problem of the arborescence with at least
k terminals with minimum maximum out-degree, the terminal Steiner tree problem (where a degree-bound one must be respected for a set of nodes) is analyzed. The problem description is in [
23], and a
-approximation algorithm for the terminal Steiner problem can be found in [
24].
A special case of the degree-constrained Steiner tree, the binary Steiner tree, is analyzed in [
25]. An exact solution and an approximation ratio are presented (in these trees, which are important in computational biology, the maximal degree bound is 3 for all nodes). Instead of individual degree bounds, a new norm of the node degree vector is proposed in [
26]. This norm tries to find a compromise between the maximum degree and the number of edges in the sub-graph and keeps degrees small. A direct application of the degree-constrained Steiner arborescence problem in a symbol graph to the symbolic regression can be found in [
27] (the symbolic regression is a task for discovering a symbolic expression that fits a given data set from the space of mathematical expressions).
In the case of degree bounds that correspond to the
capacities of the nodes, a new degree-constrained Steiner problem can be formulated. The objective is to cover a given node set with a minimum-cost, connected structure that satisfies the imposed capacity-like degree constraints. Assuming that a node can be used several times and the capacity of its occurrences is the same, good solutions can be obtained. The solutions are hierarchies [
28] presented hereafter. They can be considered as “non-elementary trees” in
G. Recently, a study on the minimum spanning hierarchies in graphs was published [
29]. The minimum spanning hierarchies are particular cases of the minimum Steiner hierarchies, where the node set to be covered is the node set in the graph. The Steiner problem with capacity constraints can be solved even if trees satisfying the constraints do not exist. The model is useful especially for the optical multicast routing, where the light can cross a switch several times. Optimal (minimum-cost) solutions correspond to light hierarchies [
5].
4. Necessary and Sufficient Conditions for the Existence of a Solution
To solve the capacity-constrained spanning problems, solutions do not always exist, neither for the minimum spanning hierarchy nor for the minimum Steiner hierarchy problem. The conditions for the existence of a minimum spanning hierarchy are presented in
Section 4 in [
29]. Here, we offer the conditions for the Steiner hierarchy problem. Despite the differences between the concerned node sets, an adaptation allows us to formulate similar lemmas and proofs (cf. Lemmas 2 and 4–6). The conditions are not completely identical but close in the two problems.
Remember, indicates the subset of nodes with degree bound m. The nodes in must be leaves in any solution and cannot be internal nodes in any spanning structure. If the graph G contains nodes in that are not in M, these nodes cannot belong to any solution and can be deleted. We let , the graph obtained after the suppression of nodes in . , and does not contain the adjacent edges of the deleted nodes. Graph is not necessarily connected.
Lemma 1. If does not contain a connected component containing all the nodes of the set M, there is no hierarchy spanning M and satisfying the degree constraints.
Proof. In a spanning hierarchy, there is a walk between any pair of nodes. If there are members of M in different connected components in , then some walks are missing for a spanning structure. □
We let be the connected component in that contains the node set M. Remember, the subset is the subset of nodes with degree bound i in , especially .
Lemma 2. If contains a separator (removing a separator makes a graph disconnected) such that the nodes in M are separated into two or more sub-graphs, there is no hierarchy spanning M and satisfying the degree constraints.
Proof. We let A and B be two non-empty subsets of nodes separated by separator and containing at least a node of M each. We let and . Any walk from to must pass through , but nodes in cannot be internal nodes in any walk. Trivially, walks are not possible between and satisfying the degree constraints. □
We let be a complete graph on M such that each edge in corresponds to an arbitrary walk without nodes in as an internal node (the endpoints can be in ). Following Lemma 2, this graph exists.
In the following, we suppose that does not contain any separator cutting the set M. Remember that .
Lemma 3. If , then hierarchies spanning M and satisfying the degree constraints exist.
Proof. Based on the complete graph , simple solutions can be constructed as follows. In , Hamiltonian paths can be found. If , we select an arbitrary Hamiltonian path. It corresponds to a Hamiltonian walk in trivially satisfying the constraints. If , we select a Hamiltonian path with the two nodes with degree-bound values of one as endpoints. Path corresponds to walk in . Since the internal nodes in are not in , walk does not contain internal nodes in . The degree constraints are satisfied and the node set M is covered. If , one endpoint of the selected Hamiltonian path must be the node with degree bound one, and the other endpoint can be selected arbitrarily. As in the previous case, the corresponding walk is a solution. □
Now, let us suppose that (there are at least three leaves in the spanning hierarchy).
Lemma 4. Let us suppose that and we let the node in . If the degree bound , there is no hierarchy spanning M that respects the constraints.
Proof. Since there is no separator in , the nodes in are directly connected to . We suppose that node is not connected to but to another node . b separates a from the other nodes. The contradiction is trivial.
The nodes in must be leaves in any spanning hierarchy, and there is no return from leaves. Consequently, only one occurrence of exists in any hierarchy. This occurrence of can have at most neighbors, but . □
Lemma 5. If , and of the node , a spanning hierarchy respecting the degree constrains exists.
Proof. The graph is a star with the central node such that . The nodes in are connected to it (there is no separator in ). Since the leaves are in M and , the star covers M and satisfies the degree constraints. □
The cases where with an arbitrary number of nodes in are covered by the following lemma. We prove that one node with a degree bound of at least two and another with a degree bound greater than two are sufficient to build degree-constrained hierarchies spanning the set M for an arbitrary number of nodes in . As previously stated, we assume that there is no separator in .
Lemma 6. If (there are at least two nodes with degree bound greater than one) and (there is at least one node with degree bound greater than two), a Steiner hierarchy respecting the degree constraints exists.
Proof. We let be a node with , and another with . A degree-constrained hierarchy can be constructed as follows. Because there is no separator in separating the nodes of M, each node in can be connected to c with a path and each path respects the degree constraints. The set of paths can be partitioned into groups such that there are at most paths in every group. Since one endpoint of the paths is the node c, each group corresponds to a spider respecting the degree constraints and having an occurrence of c as the central node. The different occurrences of c can be chained by a walk visiting the node b (having a degree bound of at least two) such that the degree of each central node occurrence is at most . The obtained structure is a degree-constrained hierarchy spanning the node-set M. □
A simple example shows the chain of the spiders in
Figure 2.
The necessary and sufficient conditions for the existence of a degree-constrained minimum Steiner hierarchy covering a given node set M in G can be formulated as follows. Remember that the graph obtained after the suppression of nodes in is and the connected component in that contains the node set M is .
Theorem 1. Let the set of conditions in be as follows:
A: contains a connected component with all nodes of M;
B: There is no separator composed from nodes of separating nodes in M into at least two sub-sets in ;
C: (there are at most two nodes with degree bound 1 in );
D: and the nodes in are neighbor nodes of node v such that ;
E: (there are at least two nodes with degree bound greater than one);
and (there is at least one node with a degree bound greater than two).
A Steiner hierarchy spanning all the nodes of a set M in a connected graph and respecting non-uniform capacity degree constraints can be found if and only if .
Proof. A and B are necessary conditions (cf. Lemmas 1 and 2). Moreover, one of the cases , or E must be true. Following Lemmas 3, 5, and 6, each of these conditions is sufficient. Expression also provides a necessary condition; that is, one of them must be true for the existence. We prove that if none of them are true, there is no Steiner hierarchy respecting the constraints. Let us suppose that none of them are true: there are more than two nodes in (), they are not neighbors of a node with sufficiently large degree bound (), and there is no node with degree bound greater than two or another with a degree bound of two (). We start our proof with . If there is a single node with a degree bound greater than two, it must be the neighbor node of the nodes in , but following , its degree bound is not sufficiently large. If there is no node with a degree bound greater than two, there are only nodes in and in . Following , there are more than two nodes in . Therefore, the three conditions cannot be false together (and another fourth condition cannot guarantee the spanning hierarchy) even if is true. □
5. Computation of an Exact Solution
The proposed procedure computes the image of the optimum using an ILP in a directed simplified graph. The graph is the directed version of
. To simplify, we also note that
. In the ILP, for each arc of
, an integer value is computed indicating how many times the arc is used in the directed Steiner hierarchy. These values allow the reconstruction of the directed degree-constrained Steiner hierarchy and finally its undirected version. The main steps of the procedure are similar to the computation of the minimum spanning hierarchy in [
29]. With the necessary adaptations to the Steiner problem, the steps are the following.
5.1. Creation of a Digraph
Nodes in must be deleted from G. A connected component containing M must be determined. If such a component does not exist, there is no solution. Each edge is replaced by two arcs and to create .
5.2. Verification for the Existence
Further conditions are indicated by Theorem 1 and must be verified.
If a sub-set of nodes of is a separator regarding the nodes in M, there is no solution.
If there is a single node and , no solution exists.
If and the nodes in are in , there is no solution.
5.3. Computation of the Image of the Solution
In the next step, the valued, directed image of the DCMStH is computed in
. The computation is performed by the ILP described in [
29] and modified for the Steiner problem.
At first, a random node is selected as the source of flows following the hierarchy. From s, a set of flows is computed, one flow to each destination node in .) The integer values associated with the arcs indicate the number of transited flows. The image is composed of arcs with non-zero flows. Note that the number of flows is not equal to the number of occurrences of the arc in the DCMStH.
ILP variables:
| Integer variable; equal to the number of occurrences of the |
| arc in the resulting hierarchy. |
| Commodity flow variable; denotes the quantity of flows |
| transiting on the arc . |
Objective:
The cost of the weighted image (the cost of the corresponding hierarchy) must be minimized.
The values of the variable x indicate the number of incoming and outgoing arcs (the predecessors and the successors) of the nodes (all occurrences combined) in the DCMStH. In the optimum, each node has a minimal number of occurrences. The number of occurrences of a non-source node is equal to the number of its predecessors. Only the first node occurrence of the source has no predecessor. Moreover, the number of occurrences must be sufficient to connect the outgoing arcs. The degree constraints can be formulated as follows.
At the non-source node
m,
The following lower bounds are also true.
In a non-source node
m with degree bound
,
A node with a degree bound of one cannot be the start point of outgoing arcs.
Each node in
M except the source has a predecessor in the hierarchy.
Flows can express the connectivity between the nodes in M.
The arbitrary source
s is the start point of one flow by destination in
.
Each node in
is the destination of one and only one flow.
The other nodes conserve the flows.
If an arc does not belong to the solution, it does not carry any flow. Conversely, each arc belonging to the solution carries at least one flow, and the number of flows carried cannot be less than the number of occurrences of the arc.
The number of occurrences of an arc is limited by the number of the “destinations”.
This linear program computes the directed images of the solution in . The solution (the DCMStH) must be determined from its image.
5.4. Reconstruction of an Optimal Hierarchy
The variable indicates how many times the arc is used in the directed solution. At first, a minimal Steiner arborescence rooted at s of the solution can be built.
If the number of occurrences of some arcs is different from one, several arborescences may correspond to the image. We let and be the number of incoming and outgoing arcs of the node n, respectively. In an arborescence, each node occurrence has one and only one predecessor (except the source). The node n must be duplicated times in the arborescense (the source must be duplicated times). With each occurrence of n, one incoming arc can be associated. The successors can be distributed arbitrarily among the occurrences of n while respecting the degree constraints: each occurrence of n can have at most successors. For instance, all occurrences of n except one can have the maximal degree .
The outline of the construction is as follows.
For each node n, a set of successors is created from values . (For each node , occurrences of m should be added to the set of successors of n). Each node occurrence is labeled by its identifier in G.
The construction of the labeled tree starts at the source node s.
The first occurrence of the source has no predecessor. If the number of successors is greater than , the first occurrence of the source has successors. The remaining successors are associated with the other source occurrences.
The nodes are processed recursively.
We let n be the current node.
- (a)
The successors (using the corresponding outgoing arcs) are distributed among the occurrences of n. All occurrences except one have the maximal degree . (the successors can be distributed between the occurrences of n such that successors are connected to the first occurrences of n). The remaining successors are associated with the last occurrence.
- (b)
For each successor node, a sub-tree is built recursively.
- (c)
If the current node n is a leaf, there is nothing to do.
Lemma 7. The result of the given construction is a directed labeled tree .
Proof. For each node occurrence, a set of successors is connected using an arc from the node to each successor. Each successor is a distinct node occurrence. There, in the no cycle, a node occurrence and its successors form a directed sub-tree. In the tree, the nodes are labeled. Recursively, a successor is the root of a subsequent sub-tree. Trivially, is a labeled directed tree. □
Theorem 2. Omitting the direction of the arcs of , an undirected, labeled tree is obtained that corresponds to a DCMStH.
Proof. The computed image is a connected sub-graph in G and covers the node set M. The tree construction processes each node of the image, and each node in M is associated with at least one node of (). The node set of is the same in and T with the same labels. The labels of nodes in T correspond to a node in G and the association can be given by h. The hierarchy spans the node set M.
By construction, the nodes in and T respect the degree constraints (a node occurrence of the node has at most neighbors). So, H is a degree-constrained hierarchy spanning M.
It is with minimum cost. Its cost is the sum of the cost of the edge occurrences belonging to it. An edge
is present
times in
H (in tree
T).
Because
is equal to zero for edges not belonging to the image,
The ILP minimizes this sum,
H is a DCMStH. □
7. Evaluation of the Solutions
We compared three solutions: the minimum Steiner trees, the DCMStT, and the DCMStH if they exist. Random graphs based on the method of Albert–Barabási [
30] parameterized by (
m0,
mf,
m) were generated in the following two steps:
(1) creation of a connected small graph of nodes (a tree for example),
(2) addition of new nodes such that each of them is randomly connected to at most m existing nodes.
For the algorithms, we used C++ and the Leda library [
31]. The ILPs of the three exact solutions were implemented in Gurobi [
32]. Fortunately, in the tested random graphs, the computation of the exact solutions was feasible. It took from a few seconds to a few hours.
7.1. Parameter Settings
Some parameters of the topology were variable: the number of nodes in the random graphs, the number of nodes to cover, the degree bounds of the nodes, and the costs of the edges. Medium-size topologies were generated containing 70–170 nodes. The number of edges in the graphs was not deterministic, since the edges were generated randomly. In each experiment presented hereafter, we indicated the average number of edges. The degree bounds were set randomly from an interval of using a uniform distribution. The edge costs were also uniformly generated from an interval of .
7.2. Runs and Results
7.2.1. Effect of the Degree Bounds
In the first case, random graphs were generated with 70 nodes and 30 randomly selected nodes for the group to cover. The following parameters were set:
,
, and
varied from 3 to 12. Note that with these values, the node set
was always empty. For each value of
, 10 random graphs were generated, and the values in
Table 2 are the average values of 10 runs.
In the table, c(St), c(DCMStT), and c(DCMStH) are the average costs of the minimum Steiner trees, the degree-constrained Steiner trees, and the hierarchies, respectively; arc(St), arc(DCMStT), and arc(DCMStH) are the number of arcs in the three solutions.
7.2.2. Effect of the Leaves in
In the second case, we examined the effect of the nodes with a degree bound of one. For this,
was set. In the generated graphs, the number of nodes and edges were 70 and 136, respectively. The average number of arcs in the directed graphs after the reduction is indicated in
Table 3.
The average number of nodes in and the number of cases without solution are also indicated. When is increased, the proportion of nodes in decreases (the degree bounds are uniformly distributed in ). The number of arcs after the reduction increases. Note that the number of failed computations can be high when the number of nodes in is high due to the separators. In some cases, the degree-constrained Steiner tree cannot be computed even though the hierarchy exists. The values correspond to the average values of the cases with successful computation.
7.2.3. Effect of the Group Size
In random graphs with 70 nodes and using the following parameters, the effect of the group size on the optimal spanning structures was analyzed. The results are in
Table 4. Using
and
,
of the nodes were nodes with a degree bound of one. The edge costs was selected from the interval of
. The group size was varied from 2 to 47. For each configuration, 50 runs were executed.
Note that the first line corresponds to the computation of the shortest path. By increasing the size of the group M, the difference between the costs of the three spanning structures increases.
An interesting result can be observed from the three series of calculations. Even though there are more arcs in the DCMStH then in the DCMStT, the cost of the DCMStH is more favorable. This is the consequence of the fact that DCMStHs, to circumvent the constraints, can return several times to some nodes and use favorable edges.
8. Conclusions and Perspectives
A special version of the degree-constrained Steiner problem is initiated in our paper. The degree bounds are the maximal capacities of the nodes and the nodes can be used several times in the spanning structure. The degree constraints must be satisfied for each occurrence of the nodes. This model can be applied to several scheduling and routing problems. It is demonstrated that the optimum of the minimum cost capacity degree-constrained partial spanning problem is a hierarchy. The problem is NP-hard. As an important result, necessary and sufficient conditions for the existence of the solution are formulated.
An ILP-based computation of the degree-constrained minimum-cost Steiner hierarchies is also presented.
For the cases where the number of nodes with a degree bound of one is less than three, we present an approximation of the analyzed NP-hard problem.
The degree-constrained Steiner hierarchies are compared to the degree-constrained Steiner trees and also to the Steiner trees without constraint. The experiments also prove that, in some cases, degree-constrained Steiner hierarchies may exist where Steiner trees respecting the constraints do not exist. Moreover, even if trees that respect the constraints exist, it is possible that an optimal hierarchy with lower cost can be found. Future investigations are needed for the development of efficient heuristics and improved approximation ratios. Artificial Intelligence is a good candidate to create efficient solutions.