Abstract
This article introduces the Generalized Minimum Branch Vertices problem. Given an undirected graph, where the set of vertices is partitioned into clusters, the Generalized Minimum Branch Vertices problem consists of finding a tree spanning exactly one vertex for each cluster and having the minimum number of branch vertices, namely vertices with degree greater than two. When each cluster is a singleton, the problem reduces to the well-known Minimum Branch Vertices problem, which is NP-hard. We show some properties that any feasible solution to the problem has to satisfy. Some of these properties can be used to determine useless vertices or edges, which can be removed to reduce the size of the instances. We propose an integer linear programming formulation for the problem, we derive the dimension of the polytope, we study the trivial inequalities and introduce two new classes of valid inequalities, that are proved to be facet-defining.





Similar content being viewed by others
Data Availability Statement
Data sharing not applicable to this article as no datasets were generated or analyzed during the current study.
References
Gargano, L., Hell, P., Stacho, L., Vaccaro, U.: Spanning Trees with Bounded Number of Branch Vertices, pp. 355–365. Springer, Berlin Heidelberg (2002)
Carrabs, F., Cerulli, R., Gaudioso, M., Gentili, M.: Lower and upper bounds for the spanning tree with minimum branch vertices. Comput. Optim. Appl. 56(2), 405–438 (2013)
Silvestri, S., Laporte, G., Cerulli, R.: A branch-and-cut algorithm for the minimum branch vertices spanning tree problem. Comput. Oper. Res. 81, 322–332 (2017)
Landete, M., Marín, A., Sainz-Pardo, J.L.: Decomposition methods based on articulation vertices for degree-dependent spanning tree problems. Comput. Optim. Appl. 68(3), 749–773 (2017)
Merabet, M., Molnár, M.: Generalization of the Minimum Branch Vertices Spanning Tree Problem. Research report, Nanyang Technological University, Singapore (2016)
Debiasio, L., Lo, A.: Spanning trees with few branch vertices. SIAM J. Discret. Math. 33, 1 (2017)
Feremans, C., Labbé, M., Letchford, A.N., Salazar-González, J.J.: Generalized network design polyhedra. Networks 58(2), 125–136 (2011)
Myung, Y.S., Lee, C.H., Tcha, D.W.: On the generalized minimum spanning tree problem. Networks 26(4), 231–241 (1995)
Feremans, C., Labbé, M., Laporte, G.: A comparative analysis of several formulations for the generalized minimum spanning tree problem. Networks 39(1), 29–34 (2002)
Feremans, C., Labbé, M., Laporte, G.: The generalized minimum spanning tree problem: Polyhedral analysis and branch-and-cut algorithm. Networks 43(2), 71–86 (2004)
Fischetti, M., González, J.J.S., Toth, P.: The symmetric generalized traveling salesman polytope. Networks 26(2), 113–123 (1995)
Fischetti, M., González, J.J.S., Toth, P.: A branch-and-cut algorithm for the symmetric generalized traveling salesman problem. Oper. Res. 45(3), 378–394 (1997)
Noronha, T.F., Ribeiro, C.C.: Routing and wavelength assignment by partition colouring. Eur. J. Oper. Res. 171(3), 797–810 (2006)
Demange, M., Ekim, T., Ries, B., Tanasescu, C.: On some applications of the selective graph coloring problem. Eur. J. Oper. Res. 240(2), 307–314 (2015)
Fidanova, S., Pop, P.: An improved hybrid ant-local search algorithm for the partition graph coloring problem. J. Comput. Appl. Math. 293, 55–61 (2016)
Frota, Y., Maculan, N., Noronha, T.F., Ribeiro, C.C.: A branch-and-cut algorithm for partition coloring. Networks 55(3), 194–204 (2010)
Pop, P.C., Hu, B., Raidl, G.R.: A memetic algorithm with two distinct solution representations for the partition graph coloring problem. In: Moreno-Díaz, R., Pichler, F., Quesada-Arencibia, A. (eds.) Computer Aided Systems Theory - EUROCAST 2013, pp. 219–226. Springer, Berlin (2013)
Dashti, Y., Mercian, A., Reisslein, M.: Evaluation of dynamic bandwidth allocation with clustered routing in fiwi networks. In: 2014 IEEE 20th International Workshop on Local Metropolitan Area Networks (LANMAN), pp. 1–6 (2014)
Nemhauser, G., Wolsey, L.: Integer and Combinatorial optimization. Wiley, New York, NY (2014)
Diestel, R.: Graph Theory Graduate Texts in Mathematics; 173. Springer, Berlin (2000)
Author information
Authors and Affiliations
Corresponding author
Additional information
Publisher's Note
Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.
Appendix
Appendix
In this Appendix, we prove three results about the Minimum Branch Vertices Problem, which are used in the proof of Propositions 5.3, 5.5 and 5.7.
Let \(G=(V,E)\) be an undirected connected graph, having \(n=|V|\) vertices and \(m=|E|\) edges. The Minimum Branch Vertices (MBV) problem consists of finding a spanning tree T of G, with the minimum number of branch vertices. The MBV problem can be formulated as an integer linear program (ILP) as follows. For any \(e\in E\), let \(x_e\) be a binary variable equal to 1, if e is selected, and 0 otherwise. Moreover, for any \(v\in V\), let \(z_v\) be a binary variable equal to 1, if v is a branch vertex, and 0 otherwise. The ILP formulation is the following:
subject to
The objective function (14) minimizes the total number of branch vertices. Constraint (15) ensures that the number of selected edges is equal to the number of vertices minus 1. Constraints (16) are the classical Subtour Elimination Constraints. Finally, inequalities (17) ensure that a vertex v is a branch vertex, whenever at least three edges in \(\delta (v)\) are selected.
Let us denote by P(G) the polytope described by the constraints (15)–(19), that is:
Silvestri et al. [3] studied the facial structure of P(G). They showed that, if G is 2-connected, namely it does not contain any cut vertex, then the affine hull of P(G) is the following:
As a consequence, if G is 2-connected, then the dimension of P(G) is \(n+m-1\). Moreover, they proved that, if G is 2-connected, then \(y_v\le 1\), \(v\in V\), and \(x_e\le 1\), \(e\in E\), are facets of P(G). Finally, they showed that, given \(v\in V\), if also \(G\setminus \{v\}\) is 2-connected, then \(y_v\ge 0\) is facet-defining. To prove the polyhedral results we use the following theorem (see Theorem 3.6 of Nemhauser and Wolsey [19]).
Theorem A.1
Let \((A^=,b^=)\) be the equality set of \(S\subseteq {\mathbb {R}}^k\), where \(A^=\) is a matrix of dimension \(m'\times n'\) and \(b^=\) has dimension \(m'\), and let \(F=\{x\in S: \pi x=\pi _0\}\) be a proper face of S. The following two statements are equivalent:
-
F is a facet of S.
-
If \(\lambda x=\lambda _0\) for all \(x\in F\), then
$$\begin{aligned} (\lambda ,\lambda _0)=(\alpha \pi +uA^=,\alpha \pi _0+ub^=) \text{ for } \text{ some } \alpha \in {\mathbb {R}} \text{ and } \text{ some } u\in {\mathbb {R}}^{m'}. \end{aligned}$$
Let us consider the following particular case of constraints (16):
Proposition A.1
Let \(G=(V,E)\) be a 2-connected graph. For \(v\in V\), if \(G\setminus \{v\}\) is 2-connected, then inequality \(x(\delta (v))\ge 1\) defines a facet of P(G).
Proof
Let us consider the proper face \(F_v=\{(x,z)\in P(G):x(\delta (v))=1\}\), where \(v\in V\) such that \(G\setminus \{v\}\) is 2-connected. To prove that \(F_v\) is a facet of P(G), we show that if \(\lambda (x,z)^T=\lambda _0\), for all \((x,z)\in F_v\), then we can express \((\lambda ,\lambda _0)\) as \((\alpha \pi +uA^=,\alpha \pi _0+ub^=)\), with \(\alpha ,u \in {\mathbb {R}}\). W.l.o.g., we can assume that \(v=v_1\), where \(V=\{v_1,\ldots ,v_n\}\), \(E=\{e_1,\ldots ,e_m\}\) and \(\delta (v)=\{e_1,\ldots ,e_{d(v)}\}\). In this case we have that \((\pi ,\pi _0)=(1,\ldots ,1,0,\ldots ,0,1)\) and \((A^=,b^=)=(1,\ldots ,1,0,\ldots ,0,n-1)\). Let us represent \((\lambda ,\lambda _0)\) as \((s_1,\ldots ,s_m,t_1,\ldots ,t_n,\lambda _0)\), then equality \(\lambda (x,z)^T=\lambda _0\) becomes \(\sum _{e\in E}s_e x_e+\sum _{v\in V} t_v z_v=\lambda _0\).
Since \(G\setminus \{v\}\) is 2-connected, then for any \(w\in V\setminus \{v\}\), there exists a spanning tree \({G_{{\bar{T}}_w}=(V\setminus \{v\}, E_{{\bar{T}}_w})}\) of \(G\setminus \{v\}\), in which w is not a branch vertex. Given \(e\in \delta (v)\), the subgraph \(G_{T_w}=(V,E_{T_w})\), with \(E_{T_w}=E_{{\bar{T}}_w}\cup \{e\}\), is a spanning tree of G, such that w is not a branch vertex in \(G_T\), and the degree of v in \(G_T\) is one. Thus, \(({\varvec{\pi }}^{E_{T_w}},{\varvec{1}}\setminus {\varvec{\nu }}^{\{w\}})\) and \(({\varvec{\pi }}^{E_{T_w}},{\varvec{1}})\) belong to \(F_v\). Since \(\lambda ({\varvec{\pi }}^{E_{T_w}},{\varvec{1}}\setminus {\varvec{\nu }}^{\{w\}})^T-\lambda ({\varvec{\pi }}^{E_{T_w}},{\varvec{1}})^T=0\), we have that \(t_w=0\), for any \(w\in V\setminus \{v\}\). Furthermore, since G is 2-connected, there exists a spanning tree \(G_{T_v}=(V, E_{T_v})\) of G, such that \(x(\delta (v))=1\). Therefore, \(({\varvec{\pi }}^{E_{T_v}},{\varvec{1}}\setminus {\varvec{\nu }}^{\{v\}})\) and \(({\varvec{\pi }}^{E_{T_v}},{\varvec{1}})\) belong to \(F_v\), and \(t_v=0\).
\(G\setminus \{v\}\) is 2-connected, then there exist two spanning trees of \(G\setminus \{v\}\), \(G_{\bar{T_1}}=(V\setminus \{v\},E_{\bar{T_1}})\) and \(G_{\bar{T_2}}=(V\setminus \{v\},E_{\bar{T_2}})\), such that \(E_{\bar{T_2}}=E_{\bar{T_1}}\setminus \{e\}\cup \{f\}\), where \(e,f\notin \delta (v)\). Given \(e_v\in \delta (v)\), \(G_{T_1}=(V,E_{T_1})\) and \(G_{T_2}=(V,E_{T_2})\) are two spanning trees of G, where \(E_{T_1}=E_{\bar{T_1}}\cup \{e_v\}\) and \(E_{T_2}=E_{\bar{T_2}}\cup \{e_v\}\). Since \(({\varvec{\pi }}^{E_{T_1}},{\varvec{1}})\) and \(({\varvec{\pi }}^{E_{T_2}},{\varvec{1}})\) belong to \(F_v\), then \(\lambda ({\varvec{\pi }}^{E_{T_1}},{\varvec{1}})^T-\lambda ({\varvec{\pi }}^{E_{T_2}},{\varvec{1}})^T=0\) and \(s_e=s_f\). Since \(G_{{\bar{T}}_1}\) is a generic spanning tree, we have that \(s:=s_e\), for any \(e\notin \delta (v)\).
Let \(G_{T}=(V\setminus \{v\},E_{T})\) be a spanning tree of \(G\setminus \{v\}\). Since \(d(v)\ge 2\), there exist \(e,f\in \delta (v)\), with \(e\ne f\), such that \(G_{T_1}=(V,E_{T_1})\) and \(G_{T_2}=(V,E_{T_2})\) are two spanning trees of G, where \(E_{T_1}=E_T\cup \{e\}\) and \(E_{T_2}=E_T\cup \{f\}\). It is easy to see that \(({\varvec{\pi }}^{E_{T_1}},{\varvec{1}})\) and \(({\varvec{\pi }}^{E_{T_2}},{\varvec{1}})\) belong to \(F_v\), then \(\lambda ({\varvec{\pi }}^{E_{T_1}},{\varvec{1}})^T-\lambda ({\varvec{\pi }}^{E_{T_2}},{\varvec{1}})^T=0\) and \(s_e=s_f\). Since it can be done for any \(e,f\in \delta (v)\), it follows that \(s':=s_e\), for any \(e\in \delta (v)\). Equation \(\lambda (x,z)^T=\lambda _0\) reduces to
Let \(G_{{\bar{T}}}=(V\setminus \{v\},E_{{\bar{T}}})\) be a spanning tree of \(G\setminus \{v\}\). Given \(e\in \delta (v)\), we have that \(G_{T}=(V,E_{T})\), where \(E_T=E_{{\bar{T}}}\cup \{e\}\), is a spanning tree of G. Since \(({\varvec{\pi }}^{E_{T}},{\varvec{1}})\) belong to \(F_v\), it results that \(\lambda _0=s'+s(n-2)\).
Therefore, \(\lambda (x,z)^T=\lambda _0\) becomes
Thus,
Note that
Therefore, we complete the proof by setting \(\alpha =s'-s\) and \(u=s\). \(\square \)
Proposition A.2
Let \(G=(V,E)\) be a 2-connected graph. For \(v\in V\), with \(d(v)\ge 3\), if \(G\setminus \{v\}\) is 2-connected, then inequality \(x(\delta (v))-2\le (d(v)-2) z_v\) defines a facet of P(G).
Proof
We prove the result by using Theorem A.1. Given \(v\in V\) such that \(G\setminus \{v\}\) is 2-connected, let us consider the proper face \(F_v=\{(x,z)\in P(G):x(\delta (v))+(2-d(v)) z_v=2\}\). To show that \(F_v\) is a facet of P(G), we need to prove that if \(\lambda (x,z)^T=\lambda _0\), for all \((x,z)\in F_v\), then we can express \((\lambda ,\lambda _0)\) as \((\alpha \pi +uA^=,\alpha \pi _0+ub^=)\), with \(\alpha ,u \in {\mathbb {R}}\). W.l.o.g., we can assume that \(v=v_1\), where \(V=\{v_1,\ldots ,v_n\}\), \(E=\{e_1,\ldots ,e_m\}\) and \(\delta (v)=\{e_1,\ldots ,e_{d(v)}\}\). In this case, we have that \((\pi ,\pi _0)=(1,\ldots ,1,0,\ldots 0,2-d(v),0,\ldots ,0,2)\) and \((A^=,b^=)=(1,\ldots ,1,0,\ldots ,0,n-1)\). Let us represent \((\lambda ,\lambda _0)\) as \((s_1,\ldots ,s_m,t_1,\ldots ,t_n,\lambda _0)\); then equality \(\lambda (x,z)^T=\lambda _0\) becomes \(\sum _{e\in E}s_e x_e+\sum _{v\in V} t_v z_v=\lambda _0\).
Since \(G\setminus \{v\}\) is 2-connected, then for any \(w\in V\setminus \{v\}\) there exists a spanning tree \({G_{T_w}=(V\setminus \{v\}, E_{T_w})}\) of \(G\setminus \{v\}\), in which w is not a branch vertex. \({G_T=(V,E_T)}\), where \(E_T=E_{T_w}\cup \{e,f\} \setminus \{g\}\), with \(e,f\in \delta (v)\) and \(g\in E_{T_w}\), is a spanning tree of G, such that w is not a branch vertex in \(G_T\) and the degree of v in \(G_T\) is two. Therefore, it results that \(({\varvec{\pi }}^{E_{T}},{\varvec{1}}\setminus {\varvec{\nu }}^{\{w,v\}})\) and \(({\varvec{\pi }}^{E_{T}},{\varvec{1}}\setminus {\varvec{\nu }}^{\{v\}})\) belong to \(F_v\), and satisfy \(\lambda (x,z)^T=\lambda _0\). This implies that \(\lambda ({\varvec{\pi }}^{E_{T}},{\varvec{1}}\setminus {\varvec{\nu }}^{\{w,v\}})^T-\lambda ({\varvec{\pi }}^{E_{T}},{\varvec{1}}\setminus {\varvec{\nu }}^{\{v\}})^T=0\), and then \(t_w=0\), for any \(w\in V\setminus \{v\}\).
Since \(G\setminus \{v\}\) is 2-connected, then there exist two spanning trees \(G_{\bar{T_1}}=(V\setminus \{v\},E_{\bar{T_1}})\) and \(G_{\bar{T_2}}=(V\setminus \{v\},E_{\bar{T_2}})\) of \(G\setminus \{v\}\), such that \(E_{\bar{T_2}}=E_{\bar{T_1}}\setminus \{e\}\cup \{f\}\) (see Diestel [20]). Since \(d(v)\ge 3\), there exist \(e_v,f_v\in \delta (v)\) and \(g\in E_{T_1}\cup E_{T_2}\setminus \{e,f\}\), such that \({G_{T_1}=(V,E_{T_1})}\) and \({G_{T_2}=(V,E_{T_2})}\) are two spanning trees of G, where \({E_{T_1}=E_{\bar{T_1}}\cup \{e_v,f_v\}\setminus \{g\}}\) and \({E_{T_2}=E_{\bar{T_2}}\cup \{e_v,f_v\}\setminus \{g\}}\). Moreover, we have that \(E_{T_2}=E_{T_1}\setminus \{e\}\cup \{f\}\). It is easy to see that \(({\varvec{\pi }}^{E_{T_1}},{\varvec{1}}\setminus {\varvec{\nu }}^{\{v\}})\) and \(({\varvec{\pi }}^{E_{T_2}},{\varvec{1}}\setminus {\varvec{\nu }}^{\{v\}})\) belong to \(F_v\).Then \({\lambda ({\varvec{\pi }}^{E_{T_1}},{\varvec{1}}\setminus {\varvec{\nu }}^{\{v\}})^T-\lambda ({\varvec{\pi }}^{E_{T_2}},{\varvec{1}}\setminus {\varvec{\nu }}^{\{v\}})^T=0}\) and \(s_e=s_f\). Since \(G_{{\bar{T}}_1}\) is a generic spanning tree we have that \(s:=s_e\), for any \(e\notin \delta (v)\).
Let \(G_{T}=(V\setminus \{v\},E_{T})\) be a spanning tree of \(G\setminus \{v\}\). Since \(d(v)\ge 3\), there exist \(e,f,g\in \delta (v)\), with \(e\ne f\ne g\). There exist \(h,h'\in E_T\) such that \(G_{T_1}=(V,E_{T_1})\) and \(G_{T_2}=(V,E_{T_2})\), where \(E_{T_1}=E_T\cup \{e,f\}\setminus \{h\}\) and \(E_{T_2}=E_T\cup \{e,g\}\setminus \{h'\}\), are two spanning trees of G. It is easy to see that \(({\varvec{\pi }}^{E_{T_1}},{\varvec{1}}\setminus {\varvec{\nu }}^{\{v\}})\) and \(({\varvec{\pi }}^{E_{T_2}},{\varvec{1}}\setminus {\varvec{\nu }}^{\{v\}})\) belong to \(F_v\); then \(\lambda ({\varvec{\pi }}^{E_{T_1}},{\varvec{1}}\setminus {\varvec{\nu }}^{\{v\}})^T-\lambda ({\varvec{\pi }}^{E_{T_2}},{\varvec{1}}\setminus {\varvec{\nu }}^{\{v\}})^T=0\) and \(s_f=s_g\). Since it can be done for any \(e,f,g\in \delta (v)\), it follows that \(s':=s_e\), for any \(e\in \delta (v)\). Equation \(\lambda (x,z)^T=\lambda _0\) reduces to
Let \(G_{{\bar{T}}}=(V\setminus \{v\},E_{{\bar{T}}})\) be a spanning tree of \(G\setminus \{v\}\). Given \(e,f\in \delta (v)\), there exists \(g\in E_{{\bar{T}}}\), such that \(G_{T}=(V,E_{T})\), where \(E_T=E_{{\bar{T}}}\cup \{e,f\}\setminus \{g\}\), is a spanning tree of G. Since \(({\varvec{\pi }}^{E_{T}},{\varvec{1}}\setminus {\varvec{\nu }}^{\{v\}})\) belong to \(F_v\), it results that \(\lambda _0=2s'+s(n-3)\). Finally, given a spanning tree \(G_{{\bar{T}}}=(V\setminus \{v\},E_{{\bar{T}}})\) of \(G\setminus \{v\}\), there exist \(e_1,\ldots ,e_{d(v)-1}\in E_{{\bar{T}}}\), such that \(G_{T}=(V,E_{T})\) is a spanning tree of G, where \(E_T=E_{{\bar{T}}}\cup \delta (v) \setminus \{e_1,\ldots ,e_{d(v)-1}\}\). It is easy to see that \(({\varvec{\pi }}^{E_{T}},{\varvec{1}})\) belongs to \(F_v\), then \(s'd(v)+s(n-1-d(v))+t_v=2s'+s(n-3)\). It follows that \(t_v=(s'-s)(2-d(v))\).
From these observations \(\lambda (x,z)^T=\lambda _0\) becomes
Therefore, we have that
Note that
Therefore, we complete the proof by setting \(\alpha =s'-s\) and \(u=s\). \(\square \)
Silvestri et al. [3] introduced the following family of valid inequalities:
Proposition A.3
Given \(v\in V\) and \(H\subseteq \delta (v)\), with \(|H|\ge 3\), inequality
is valid for P(G).
The following proposition states that inequalities (22) are facet-defining for P(G).
Proposition A.4
Let \(G=(V,E)\) be a 2-connected graph. For \(v\in V\) and \(H\subseteq \delta (v)\), with \(|H|\ge 3\), if \(G\setminus \{v\}\) is 2-connected, then inequality \(x(H)-2\le (|H|-2) z_v\) defines a facet of P(G).
Proof
Since inequality (22) is a generalization of (17), the proof follows from the one of Proposition A.2. \(\square \)
Rights and permissions
About this article
Cite this article
Carrabs, F., Cerulli, R., D’Ambrosio, C. et al. The Generalized Minimum Branch Vertices Problem: Properties and Polyhedral Analysis. J Optim Theory Appl 188, 356–377 (2021). https://doi.org/10.1007/s10957-020-01783-x
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10957-020-01783-x