Abstract
The development of tools based on robust mathematical models to deal with real-world, computationally intractable problems has increasingly aligned with combinatorial optimization and integer linear programming techniques due to enormous technological advances and the real need to deal with large volumes of data. In this paper, the Maximum Tropical Path Problem on graphs (MTPP), which is known to be NP-hard, was investigated. It is a problem of searching for specific structural patterns in networks that can represent various applications, among them biological interactions, such as metabolic, neurological or protein interaction networks. The main result of this work consists of a polynomial-time heuristic algorithm that, according to experimental results, finds good solutions in practice. Furthermore, an integer linear programming model was developed and implemented so that it could be compared with the heuristic presented. To conclude, an empirical analysis was performed through computational experiments on both random and real-word instances to evaluate the results presented in this paper.
This work was partially supported by grant 2021/07080-6, São Paulo Research Foundation (FAPESP) and by the Graduate Support Program (Proap)-CAPES.
Access provided by University of Notre Dame Hesburgh Library. Download conference paper PDF
Similar content being viewed by others
1 Introduction
The tropical path search problem in graphs represents a search problem for specific structural patterns in networks. Different types of pattern search have been presented in the literature, taking into account the peculiarities of each application; the one used in this work originates from the problem of occurrence of the motifs in graphs and was proposed by Lacroix et al. (2006) [10]. The initial problem was investigated in the context of metabolic network analysis [5, 9], in which the set of reactions involved in the synthesis and degradation of certain molecules is represented through a network and the motifs correspond to the “modules” into which this network can be decomposed in order to facilitate the interpretation of the functions that each of these modules plays in cellular metabolism. In graph theory terms, the problem of searching for colored motifs in graphs consists of finding a subgraph whose set of colors matches the multicolored set given as input.
Contributions. This work aims to present results in the line of combinatorial optimization for a problem with applications in bioinformatics that represents the problem of searching for structural patterns in graphs. Specifically, the main contributions of this work are as follows:
-
polynomial time heuristic algorithm for the MTPP that transforms a simple graph instance into a cactus graph instance and subsequently runs an algorithm that finds the path of interest.
-
formulation of an integer linear programming (ILP) model for, given a graph colored at the vertices, finding a path that maximizes the number of colors used.
-
tests and analysis of the quality and performance of the proposed algorithm based on the ILP model through large instances, both real-world and random.
This paper is organized as follows: Sect. 2 presents some initial concepts and a brief review of the literature on the tropical path problem in graphs; Sect. 3 presents the ILP model formulation; Sect. 4 presents the proposed heuristic algorithm; Sect. 5 presents the experimentation and results; and Sect. 6 presents the concluding remarks.
2 Concepts and Related Work
A simple graph G is an ordered pair (V, E), where V is a finite set of elements called vertices and E is a set of elements called edges, where each edge is an unordered pair of distinct vertices (u, v). If \(u,v \in V\) is an edge, then u and v are adjacent. A path in a graph G is a sequence of distinct vertices \(P=(v_1,v_2,\ldots ,v_k)\), such that \(v_iv_{i+1}\in E\) for \(i=1 ,\ldots ,k-1\). A graph G is connected, if for any pair of distinct vertices u and v, there is a path from u to v in G. A coloring of a graph \(G = (V,E)\) is a function \(C: V \rightarrow \mathcal {C}\), where \(\mathcal {C}\) is a set of colors. The coloring defined here corresponds to a simple assigning of colors to the vertices of the graph, without any restrictions. A color graph \(G^c\) consists of a graph G and a coloring C of the vertices of G. Given a graph G colored at the vertices, a path P in G is said to be tropical if each color, assigned to some vertex in the input graph, appears at least once in the P. A cactus graph is a connected graph in which any two simple cycles have at most one vertex in common; equivalently, each edge belongs to at most one simple cycle. A cactus G in which a vertex is defined as a root is called a rooted cactus. The root of a cactus G is denoted by root(G).
The problem of interest consists of, given a colored graph of vertices, finding a path whose vertices use the greatest number of distinct colors. This problem will be referred to as maximum tropical path problem (MTPP). Note that any solution to the MTPP is optimal if the path found is tropical and not every optimal solution is a tropical path (Fig. 1). Furthermore, if each vertex in the input graph has a color distinct from the others, MTPP reduces to the classical Hamiltonian path problem. Cohen et al. (2017) [4] proved that MTPP is NP-hard even on DAGs (acyclic directed graph), cactus graphs, and interval graphs, and it can be solved in polynomial time for some specific classes, such as trees, block graphs, proper interval graphs, bipartite chain graphs and threshold graphs. Chapelle et al. (2017) [2] proposed exact algorithms for the problem of searching for a tropical subset of minimum size. Anglès et al. (2018) [1] studied tropical subsets in graphs from a structural and algorithmic point of view and obtained results on the line of inapproximability. In general the problem of searching for tropical subgraphs in vertex colored graphs has been explored extensively for some classes of graphs; for more details see [1, 3, 6].
3 An IP Model for MTPP
In this section, the integer linear programming model developed for the MTPP problem is presented. The initial purpose of developing an integer linear programming model for the MTPP was to explore the combinatorial structures of the problem and obtain algorithms involving branch-and-bound and branch-and-cut techniques, for example. However, the model was satisfactorily used to directly obtain the optimal solution for large instances to be compared to the heuristics proposed in this paper.
To formulate the MTPP as an integer linear program, an instance of this problem is considered to consist of a graph colored at the vertices \(G^C = (G, C)\). In the presented formulation, each edge \((u,v) \in E(G)\) is replaced by two directed arcs uv and vu. Variables \(X_{uc}\), \(Y_{uv}\), and \(Z_c\), \(\forall u \in V, \forall uv \in A\), and \(\forall c\in \mathcal {C}\) are used and are associated with vertices, arcs, and colors, respectively. The variable \(X_{u,c}= 1\) indicates that the vertex u of color c is in the solution, the variable \(Y_{uv} = 1 \) indicates that the arc uv is in the solution, and the variable \(Z_c = 1\) imposes that the color c is in the solution. Additionally, the variable \(l_v \ge 0 ~\forall v\in V \) is created, which allows us to number (label) the vertices along the path in increasing order. This variable is used in the constraint proposed by Miller, Tucker, and Zemlin (1960) [12] to eliminate circuits in the solution.
3.1 ILP for General Graphs
In summary, the objective function maximizes the number of colors that should compose the solution. The constraint (1) prevents the variable \(Z_c\) from assuming value 1 without at least one vertex of color c being in the solution. Given a vertex v, the constraints (2) and (3) guarantee that if a vertex v is in the solution, the number of incoming and outgoing arcs of v will be at most 1, respectively; The constraint (4) makes use of the function \(l_v\) that allows to number the vertices along the path in increasing order. This inequality is essential to avoid cycles in the solution. The equality (5) guarantees that the difference between the number of vertices and the number of edges that make up the solution is exactly 1. The constraints (6) and (7) guarantee the integrality of variables.
Note that the proposed formulation has a linear amount of inequalities added to the model as the (1) constraints add \(|\mathcal {C}|\) inequalities to the model, while the (2) and (3) constraints each add |V| inequalities, and the (4) constraints add 2|A| inequalities. Last, the (5) adds only one inequality to the model, totaling a set of \(|\mathcal {C}| + 2|V| + 2|A| + 1\) linear inequalities.
Theorem 1
The restricted solution x of the integer solutions (x, y, z) for the formulation from (1) to (7) defines a path on the graph (G, C) that uses \(|\mathcal {C'}|\) colors, where \(\mathcal {C'} \subseteq \mathcal {C}\).
Proof
For any feasible integer solution (x, y, z) of the formulation, let \(V_{P} = \{u: X_{uc}=1\}\), \(A_{P} = \{uv: Y_{uv}=1\}\), and \(C_P = \{c: Z_c = 1\}\). Note that if a vertex \(u\in V_{P}\), then \(c \in C_P\). Let \(\mathcal {C'}\) be the set formed by the colors of vertices where \(X_{uc}=1\). If an arc \(uv \in A_P\), by the constraint (2), \(\sum _{c \in \mathcal {C}} X_{vc} = 1\), and by the constraint (3), \(\sum _{c \in \mathcal {C}} X_{uc} = 1\), so \(u, v \in V_P\). By the same conditions imposed in constraints (2) and (3), for each \(u \in V_P\), there is at most one outgoing arc in u and at most one incoming arc in u. Note that the subgraph \(G = (V_P, A_P,C_P)\) is well defined but not necessarily connected. If an arc \(uv \in A_P\), by the constraint (4) \(Y_{uv}=1\) and the difference between the labels of vertices u and v has to be at least one, which prohibits circuits, finally, the connectivity of G is established by adding the constraint (5) and thus x indicates a path that uses \(\mathcal {C'}\) colors, which completes the proof.
Although not done in this paper, one way to evaluate the strength of the ILP model would be to compare the value of the integer optimal solution to the value of the optimal solution of the model without the integrality conditions. This is the integrality gap.
4 Polynomial-Time Heuristic for MTPP
It is known that MTPP is NP-hard for simple graphs in general, especially for DAGs, cactus graphs, and interval graphs. The inherent intractability of MTPP encourages the development of heuristics that are designed to find bounds, in particular lower bounds, for the problem.
In this section, it is presented a polynomial-time heuristic called the Tropical-Cactus algorithm for finding maximum tropical paths in vertex-colored graphs. For this the algorithm makes use of the algorithm presented in Sect. 4.2. Existing literature does not provide any exact, approximation, or heuristic algorithms for the MTPP. Tropical-Cactus algorithm is inspired by a linear-time algorithm proposed by Markov et al. (2012) [11] for calculating the longest paths in cactus graphs. Cleverly, the algorithm finds a path whose number of colors empirically comes very close to an optimal solution. Additionally, an auxiliary algorithm, presented in Sect. 4.1 called the Cactus-Graph algorithm was developed to construct a cactus graph from a simple graph.
4.1 Cactus-Graph Algorithm
Given a simple graph G, the Cactus-Graph algorithm extracts from G a cactus graph \(G'\) that will be the input of the Tropical-Cactus algorithm. To perform this process, it is necessary to find long cycles in the graph. Given an integer \(k \ge 3\), a cycle in an undirected graph is called long if it has at least k edges. The Cactus-Graph algorithm uses as a subroutine the algorithm presented in [7] that finds a path of length \(exp(\varOmega (\sqrt{log \ L}))\), where L is the length of the longest path (the details of this algorithm will be omitted here). This subroutine will be called in this paper FindCycle(G, v) and receives as input a cactus graph G and a vertex v.
Extraction Step of a Cactus Graph from a Graph G: Given a simple graph G, any vertex \(v \in G\), and a positive integer \(k \ge 3\), the constructed graph is defined by \(A_k\). Two types of components form \(A_k\). A component in \(A_k\) is either a singular component or a circuit component. A singular component corresponds to a single vertex \(u \in G\) and defines a vertex in \(A_k\), while a circuit component corresponds to a circuit \(C\in G\) and defines a circuit in \(A_k\).

The Fig. 2 demonstrates an example of transforming a simple graph G into a cactus graph \(A_k\), where k is the minimum circuit size. Note that the set of vertices circled by the red line represents a circuit component in the graph \(A_k\) and has a length of 9. The vertices circled by the blue line represent singular components in the graph \(A_k\). Note that vertex 7 could be a neighbor of 2, 6, or 11 in the graph \(A_k\), and in a second execution of the algorithm, a circuit of different size could be found.
The first vertex to become part of \(A_k\) is the given vertex v, and after the execution of the algorithm, v may be a singular component or become part of a circuit-component in \(A_k\). It is also generally defined in this work that the minimum cycle size k is equal to 3, as such variation did not present a significant change in the final results of the paths found.
Note that the Cactus-Graph algorithm is linear, and at each step of the algorithm either a cycle or a vertex is extracted from G which in turn is connected to another cycle or another vertex, maintaining the properties of a cactus graph.
4.2 Labelling Algorithm
Definition 1
Given a vertex u in a cactus graph G that is root, the children of u are all vertices adjacent to u or that are in a cycle that contains u.
Definition 2
Given a cactus graph G and a vertex \(u \in V(G)\), \(F^u\) denotes the set of all vertices that are children of u, and \(H^u\subseteq F^u\) denotes the subset of \(F^u\) consisting only of the children of u that belong to some cycle containing u.
Definition 3
A vertex u is a bridge vertex if u has degree two, belongs to a cycle, and is the child of some other visited vertex.
Definition 4
A vertex \(u'\), child of a root u, has no children if \(u'\) is a bridge vertex or a leaf vertex.
The Fig. 3 demonstrates a cactus graph rooted in u, and presents an example of the formation of the sets \(F^u\) and \(H^u\). In the figure, \(F^u\) is highlighted by the red line and, in this example, is formed by the vertices \(F^u = v_1, v_2, v_3, v_4, v_5, v_6, v_7\), while \(H^u\) is highlighted by the blue line and, in this example, is formed by the vertices \(H^u = v_3, v_4, v_5, v_6, v_7\).
Step of Calculating the Vertex Labels of a Cactus Graph: By associating an integer value to each vertex of a cactus graph, one obtains a labeled cactus graph. In this algorithm, two labels are associated with each vertex \(u \in V\): the partial label and the total label, both defined below.
Definition 5
The value of the partial label of u (\(r_p(u)\)) represents the largest number of colors on a path in a cactus subgraph rooted at u.
Definition 6
The value of the total label of u (\(r_t(u)\)) represents the largest number of colors on a path that contains u and is contained in cactus subgraphs rooted at u.
To compute the label of the vertices of the cactus graph, each vertex \(u \in V\) receives a color list L(u) that will initially contain the color of u. This list L, after execution of the algorithm, will contain the set of colors of the vertices of a path of a subgraph with a root at u that contains the greatest number of colors. The label of each vertex, except the leaf and bridge vertices which have labels \(= 1\), is calculated based on the color lists of its children.
Note that the Label-Calculation algorithm labels either leaf-type or bridge-type vertices first, and so on until it reaches the root. The algorithm Label-Calculation is executed for all vertices of the set \(F^{u}\), children of the root u. The vertex label u is calculated only after all vertices in \(F^{u}\) already have a label. It is easy to see that the algorithm can be adapted to return the vertices of the best path found in linear time.
4.3 Tropical-Cactus Algorithm
Given any vertex u defined as a root of G, the main Tropical-Cactus algorithm uses the auxiliary Label-Calculation algorithm to label all vertices of the cactus graph G. For each root \(u'\ne u\), the Tropical-Cactus algorithm is run, and the vertices of G are given a label.
In short, the Tropical-Cactus algorithm returns the largest found value of the labels \(r_t(u)\) that is calculated for each \(u'\in V\) possible root of G. By the definition of \(r_t(u)\), this is equivalent to the largest number of colors of a found path that passes through u.
The following result shows the complexity of the Tropical-Cactus algorithm. The idea in this context is to show that the execution of the algorithm takes polynomial time.
Lemma 1
The Label-Calculation algorithm runs in linear time \(\varTheta \left( \left| V\left( G \right) \right| \right) \).
Proof
The algorithm is initially run for the root vertex u. In line 4, the algorithm is called recursively for each child \(u'\) of u, which will either be a bridge or a leaf, or there will be a cactus subgraph rooted in \(u'\), of which u is no longer part, thus the total number of recursive calls of the algorithm is the number of vertices in the graph. Additionally, note that the operations in lines 1 and 2 and lines 6–18 take O(1) time, which shows that the algorithm has linear complexity in input size.
Proposition 1
The Tropical-Cactus algorithm runs in polynomial time \(\varTheta \left( \left| V\left( G \right) \right| ^2 \right) \)
Proof
Note that the Tropical-Cactus algorithm makes \(\left| V\left( G \right) \right| \) calls to the Label-Calculation algorithm, one call for each vertex that will be taken as the root of the graph. By the Lemma 1, the Label-Calculation algorithm runs on \(\varTheta \left( \left| V\left( G \right) \right| \right) \) and therefore the result follows.
5 Experimental Results
This section presents an analysis of the experimental results performed in this work. In general terms, the performance of the heuristic algorithm was evaluated in relation to the integer linear programming model for MTPP in general graphs, and in cactus graphs. Although the problem is NP-hard in all these classes, the idea was to obtain the optimal solution for instances of various dimensions, in terms of number of vertices, edges, and colors, and compare it with the result of the heuristic algorithm for this same set of instances. For this purpose, instances were generated randomly and also obtained from real-world data sets.
Implementation Details. The computational experiments were carried out on a PC with the following specifications: Intel(R) Core (TM) i7-8550U CPU 1.99 GHz processor, 8 GB of RAM, and Windows 10 Home operating system version 20H2. For the implementation of the LP models, the commercial optimization software Gurobi Optimizer version 9.5.0 was used. The Gurobi parameters were configured with their respective default values. To consolidate the results, all instances were run 10 times, and the final results of each instance were defined by the average of the valid results.
Benchmark Instances. Real-world instances were obtained from a dataset repository [8]. In some instances, adaptations were necessary due to the different characteristics of the networks in relation to the problem studied. The adaptations included removing isolated vertices, parallel edges, and loops.
To study the impact of varying the number of colors in an instance, three random colorings were set for all networks that did not have a previous coloring. To explore the behavior of both the heuristic algorithm and the ILP model in terms of the number of vertices, edges, and colors, random graphs were generated. For each n vertices, instances were generated with the following variations in the number of edges: \(n + (n/10)\), 2n, \((n*(n-1))/4\), and \((n*(n-1))/3\). Additionally, for each number of vertices, three variations in the number of colors were generated, representing 10%, 50%, and 90% of the total number of vertices. It was noted that the ILP model exhibited performance limitations in instances with around 800 vertices, although, an optimal integer solution was obtained for isolated instances with more than 1200 vertices. Therefore, for comparative purposes, instances with 200, 400, 600, and 800 vertices were considered.
Forty-eight random instances will be presented in this analysis, which are identified in the Tables 2 and 3. The tables use an index for each variation in the number of vertices, colors, and edges. The index follows the format \(A_{ikj}\), where i represents the variation in the number of vertices, k represents the variation in the number of colors, and j represents the variation in the number of edges. The instance identification table is grouped by the number of vertices |V|, and each set contains the columns: Id, number of colors \(|\mathcal {C}|\), and number of edges |E|. Since the cactus graph has a limited number of edges compared to a traditional graph, two variations on the number of edges were defined for each cactus graph of n vertices and k colors (Table 1).
5.1 Computational Results
The results of the computational experiments for the ILP model and the heuristic algorithm are presented in the following tables: Table 4, Table 5 and Table 6 and present the following nomenclatures, from left to right: the instance (Id); the CPU time spent, in seconds, to obtain the integer optimal solution (\(T_{ILP}(s)\)); the value of the integer optimal solution (\(Sol_{ILP}\)); the CPU time spent, in seconds, of the heuristic algorithm (\(T_{Alg}(s)\)); the value of the solution returned by the heuristic algorithm (\(Sol_{Alg}\)); and finally the difference in percentage between the integer optimal solution and the approximate solution of the heuristic algorithm (\(GAP_{Sol}\)).
From an individual analysis of the ILP model, it was noted that even though some instances exceeded the proposed execution time limit of 60 min, over \(77\%\) of the executed instances obtained optimal integer solutions in less than seven minutes. Some isolated tests obtained an optimal integer solution for instances of up to 1250 vertices, 1125 colors, and 1375 edges.
From the perspective of random graph instances in general, the heuristic algorithm found the integer optimal solution for \(28.26\%\) of the instances; \(86.96\%\) of the instances presented a gap, that is, a difference, in percent, between the integer optimal solution presented by the ILP model and the solution of the heuristic algorithm, of less than \(30\%\); and \(60.87\%\) of the instances presented a gap of less than \(10\%\). The worst case had a gap of \(38.16\%\). It was also noted that, on average, the solution of the heuristic algorithm diverges from the optimal solution presented by the ILP model by \(11.37\%\).
For the real instances, the heuristic algorithm found the integer optimal solution in \(42.86\%\) of the instances; \(64.29\%\) of the instances presented a gap less than \(30\%\); and \(50\%\) of the instances presented a gap smaller than \(10\%\). The worst case presented a solution gap of \(56.64\%\). For this data set, the solution of the heuristic algorithm diverges, on average, by \(19.04\%\) from the optimal solution presented by the ILP model.
For the random cactus graph instances, the heuristic algorithm found the optimal solution for \(83.33\%\) of the instances; \(100\%\) of the instances presented a gap less than \(10\%\). The worst-case instance had a gap of \(9.80\%\), and on average, this gap was \(1.04\%\).
We noticed an improved behavior of the heuristic algorithm on graphs where the number of possible circuits is limited; moreover, in real-world instances, the heuristic algorithm performed better than in random instances, which concludes that in general, the algorithm is a good tool to obtain lower bounds for the MTPP.
6 Concluding Remarks
In this article, a contribution to the state of the art of the problem of tropical paths in graphs is proposed from the perspective of combinatory optimization. Specifically, an integer linear optimization model for MTPP has been developed. This model contains, in order, O(nk) variables, being n the number of vertices, and k the number of colors, and O(n) linear inequalities. Due to being an NP-hard problem, its execution is impractical for large instances. Additionally, a polynomial-time heuristic algorithm was also presented, which, as far as it is known, is the first result of this line of research. The differential of the optimization model was the association of two important inequalities that together guaranteed both the connectivity and the absence of circuits in the solution, unlike the commonly used models in which an exponential number of subsets of graphs are exploited for this purpose. The proposed heuristic algorithm is a recursive algorithm that, for a given random root, finds the path with the largest number of colors containing that root. All vertices are visited as roots, and the best path in these terms is returned. The proposed heuristics were tested on a benchmark consisting of 93 instances, among them random and real-world, of various dimensions. The results were compared with the respective entire optimal solutions of the model, and the experimental results pointed out that the average percentage of the difference between the optimal solution and the heuristic algorithm solution is less than \(11\%\), which proves experimentally the strength of the proposed heuristic algorithm. In practice, when faced with computationally intractable problems, it is natural to sacrifice optimality in favor of computational time to obtain a competitive solution. In this regard, the recursive algorithm proved to be an advantageous tool for obtaining good solutions for the MTPP.
References
Anglès d’Auriac, J.A., et al.: Tropical dominating sets in vertex-coloured graphs. J. Disc. Algor. 48, 27–41 (2018). https://doi.org/10.1016/j.jda.2018.03.001. https://www.sciencedirect.com/science/article/pii/S1570866718300595
Chapelle, M., Cochefert, M., Kratsch, D., Letourneur, R., Liedloff, M.: Exact exponential algorithms to find tropical connected sets of minimum size. Theor. Comput. Sci. 676, 33–41 (2017). https://doi.org/10.1016/j.tcs.2017.03.003. https://www.sciencedirect.com/science/article/pii/S0304397517301883
Cohen, J., Manoussakis, Y., Phong, H., Tuza, Z.: Tropical matchings in vertex-colored graphs. Electron. Notes Disc. Math. 62, 219–224 (2017). https://doi.org/10.1016/j.endm.2017.10.038, https://www.sciencedirect.com/science/article/pii/S1571065317302779
Cohen, J., Italiano, G.F., Manoussakis, Y., Nguyen, K.T., Pham, H.P.: Tropical paths in vertex-colored graphs. In: Gao, X., Du, H., Han, M. (eds.) COCOA 2017. LNCS, vol. 10628, pp. 291–305. Springer, Cham (2017). https://doi.org/10.1007/978-3-319-71147-8_20
Deville, Y., Gilbert, D.R., van Helden, J., Wodak, S.J.: An overview of data models for the analysis of biochemical pathways. Brief. Bioinf. 4(3), 246–259 (2003). https://doi.org/10.1093/bib/4.3.246
Foucaud, F., Harutyunyan, A., Hell, P., Legay, S., Manoussakis, Y., Naserasr, R.: The complexity of tropical graph homomorphisms. Disc. Appl. Math. 229(C), 64–81 (2017). https://doi.org/10.1016/j.dam.2017.04.027
Gabow, H.N., Nie, S.: Finding a long directed cycle. ACM Trans. Algor. (TALG) 4(1), 1–21 (2008)
Gephi: Conjuntos de dados gephi (2009). https://github.com/gephi/gephi/wiki/Datasets. Accessed 27 Sept 2021
Kelley, B.P., et al.: Conserved pathways within bacteria and yeast as revealed by global protein network alignment. Proc. Natl. Acad. Sci. 100(20), 11394–11399 (2003). https://doi.org/10.1073/pnas.1534710100. https://www.pnas.org/content/100/20/11394
Lacroix, V., Fernandes, C.G., Sagot, M.F.: Motif search in graphs: application to metabolic networks. IEEE/ACM Trans. Comput. Biol. Bioinf. 3(4), 360–368 (2006). http://doi.ieeecomputersociety.org/10.1109/TCBB.2006.55
Markov, M., Ionut Andreica, M., Manev, K., Tapus, N.: A linear time algorithm for computing longest paths in cactus graphs. Serdica J. Comput. 6(3), 287p–298p (2012)
Miller, C.E., Tucker, A.W., Zemlin, R.A.: Integer programming formulation of traveling salesman problems. J. ACM (JACM) 7(4), 326–329 (1960)
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2023 The Author(s), under exclusive license to Springer Nature Switzerland AG
About this paper
Cite this paper
Sampaio, I.M., Lima, K.R.P.S. (2023). A Combinatorial Optimization Model and Polynomial Time Heuristic for a Problem of Finding Specific Structural Patterns in Networks. In: Naldi, M.C., Bianchi, R.A.C. (eds) Intelligent Systems. BRACIS 2023. Lecture Notes in Computer Science(), vol 14195. Springer, Cham. https://doi.org/10.1007/978-3-031-45368-7_3
Download citation
DOI: https://doi.org/10.1007/978-3-031-45368-7_3
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-031-45367-0
Online ISBN: 978-3-031-45368-7
eBook Packages: Computer ScienceComputer Science (R0)





