A construction for directed in-out subgraphs of optimal size
David Glynn, Michael Haythorpe, Asghar Moeini

TL;DR
This paper introduces a construction method for optimal size directed in-out subgraphs, providing bounds, optimality proofs, and applications to the traveling salesman problem, including planarity and edge minimization.
Contribution
It presents a universal construction for k-in-out graphs that meets theoretical bounds and is optimal for even k, with applications to TSP problem conversions.
Findings
Construction meets the lower bound for vertices in all cases.
For even k, the construction is optimal in edges and planar.
Provides constraints to aid TSP cutting-plane algorithms.
Abstract
We discuss the recently introduced concept of k-in-out graphs, and provide a construction for k-in-out graphs for any positive integer k. We derive a lower bound for the number of vertices of a k-in-out graph for any positive integer k, and demonstrate that our construction meets this bound in all cases. For even k, we also prove our construction is optimal with respect to the number of edges, and results in a planar graph. Among the possible uses of in-out graphs, they can convert the generalized traveling salesman problem to the asymmetric traveling salesman problem, avoiding the "big M" issue present in most other conversions. We give constraints satisfied by all in-out graphs to assist cutting-plane algorithms in solving instances of traveling salesman problem which contain in-out graphs.
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsOptimization and Packing Problems · Vehicle Routing Optimization Methods · Advanced Manufacturing and Logistics Optimization
11institutetext: David Glynn 22institutetext: Flinders University
22email: [email protected] 33institutetext: Michael Haythorpe (Corresponding author) 44institutetext: Flinders University, Ph: +61 8 8201 2834, Fax: +61 8 8201 2904
44email: [email protected] 55institutetext: Asghar Moeini 66institutetext: University of Melbourne
66email: [email protected]
Directed in-out graphs of optimal size
D. Glynn
M. Haythorpe
and A. Moeini
Keywords:
Hamiltonian cycles, subgraphs, in-out property, generalized TSP
1 Introduction
Consider a simple, connected, directed graph of order . The Hamiltonian cycle problem (HCP) is: determine if there exists at least one simple cycle of length in the graph. Such simple cycles of length are called Hamiltonian cycles (HC) and graphs containing at least one HC are called Hamiltonian. Similarly, a simple path of length is called a Hamiltonian path.
We consider a family of graphs which possess a property called in-out, recently defined in Haythorpe and Johnson bellringing . Interchangably, they may be referred to as in-out graphs or in-out subgraphs, with the latter name used because many applications occur when they are included as part of a larger graph. In-out graphs are defined as follows.
Definition 1
Consider a graph and suppose that, for some positive integer , there are vertices in that are labelled and called the incoming vertices, while vertices (possibly overlapping with the set of incoming vertices) in are labelled and called the outgoing vertices. Then is called a -in-out graph if it satisfies the following two conditions.
For all , there is a Hamiltonian path in between vertices and if and only if . 2. 2.
There is no union of more than one disjoint paths in , each starting at an incoming vertex and finishing at an outgoing vertex, such that all vertices in are visited.
We refer to the first condition as the paired vertices condition, and the second condition as the single visit condition.
As mentioned previously, many applications occur when an in-out graph is included as part of a larger graph. A primary such application occurs in the context of HCP. Consider any graph satisfying the following conditions.
is an induced subgraph of . 2. 2.
Any edges going from to (which we call incoming edges) are incident with one of the incoming vertices of . 3. 3.
Any edges going from to (which we call outgoing edges) are incident with one of the outgoing vertices of .
Then, any Hamiltonian cycle in will contain precisely one incoming edge and one outgoing edge, such that if the incoming edge is incident with incoming vertex , then the outgoing edge will be incident with outgoing vertex . Thus, from the perspective of HCP, the subgraph functions the same way as a vertex within a larger graph , in that it must be visited precisely once due to the single visit condition. However, although multiple edges may enter and exit , once a particular incoming edge is chosen, the set of possible outgoing edges is reduced to only those incident with the corresponding outgoing vertex, due to the paired vertices condition. Therefore, in-out subgraphs can be used to convert certain constrained forms of HCP into standard HCP, such as can be solved by the excellent solvers due to Baniasadi et al. slh , Chalaturnyk chalaturnyk or Helsgaun LKH .
For some problems, it is often necessary to replace most or all of the vertices in a graph with in-out subgraphs, and hence it is desirable to use in-out subgraphs of small size whenever possible, to prevent the order of the resulting graph from growing too large. In the following, we prove that a -in-out graph must contain at least vertices. We also prove that any -in-out graph containing vertices must have at least edges. We then provide a construction which contains vertices for all . For even it contains edges, while for odd it contains edges. The cases when are handled separately, and contain 1, 3, and 6 vertices respectively; we show that is the only size of in-out graph where it is impossible to meet the lower bound on the number of vertices. We also show that our construction provides a planar graph if ; this may be useful in the case that the original instance was planar and that it is desirable to retain the planarity. We give an example of the usage of in-out graphs by converting the generalized traveling salesman problem (GTSP) to the standard traveling salesman problem. Most conversions of GTSP to TSP described in literature to date have required the introduction of large weights which are required to grow with the order of the instance, which in turn often leads to numerical problems. The construction we give using in-out subgraphs avoids this issue altogether. Finally, we provide a set of constraints that can be used in cutting-plane approaches whenever an in-out subgraph is used in the context of HCP or TSP.
2 Bounds
In this section, we consider bounds on the number of vertices and edges required to induce the in-out property. First, we consider the minimum number of vertices required for an in-out graph.
Proposition 1
Every -in-out graph has number of vertices (order) at least .
Proof
Consider an in-out graph with order . Without loss of generality, it is possible to label the vertices so that incoming vertex , outgoing vertex , and there is a path between them traversing vertices .
Now, suppose there is some incoming vertex and some outgoing vertex such that, with this labelling, directly precedes . Such a situation is illustrated in Figure 1. It clear that, in this scenario, it is possible to find a union of two disjoint paths in , the first starting at and finishing at , and the second starting at and finishing at , that covers all the vertices of . However, this is impossible because, from Definition 1, must satisfy the single visit condition. Hence, it can never be the case that an outgoing vertex is directly followed by an incoming vertex in our chosen labelling.
There are outgoing vertices in . One of them () is labelled , so no vertex follows it in our labelling. However, for each of the other outgoing vertices, there is a vertex which follows it which, as argued above, cannot be an incoming vertex. Hence, contains vertices which cannot be incoming vertices, plus incoming vertices, and so must contain at least vertices.
Suppose that a -in-out graph has vertices. We next consider the minimum number of edges this graph must contain.
Theorem 2.1
Any -in-out graph of order contains at least directed edges.
Proof
Consider a -in-out graph of order , and suppose that contains a minimal number of edges. The set of vertices in can be partitioned into four disjoint subsets as follows. Denote by the set of incoming vertices which are not also outgoing vertices. Denote by the set of outgoing vertices which are not also incoming vertices. Denote by the set of vertices which are both incoming and outgoing vertices. Denote by the set of vertices which are neither incoming nor outgoing vertices. We denote their cardinalities as , and . Then, since and , it can be seen that . Hence the number of vertices in is one fewer than the number of vertices in .
The proof will be organised as follows. First, we will consider the case where and show that this case is trivial, and so we will then restrict attention to the case where . First we will show that no edges can go from vertices in to vertices in . Then we will show that, for any labelling of the vertices such that is a Hamiltonian path in , the vertices of the graph are divided into segments each separated by a single vertex in , and each containing exactly one vertex from . We will then prove edges emanating from vertices in and can only go to vertices in or , and similarly, edges emanating from vertices in and can only go to vertices in or . Finally, we will use the paired edge condition to determine the minimal number of edges required.
Consider first the case where , that is, all incoming vertices are also outgoing vertices. We note that this is the case for the construction given later in this manuscript. Then and . Suppose that is labelled in order of one of the Hamiltonian paths. We will refer to such a labelling as a path-labelling. Consider any two consecutive vertices and . It is clear that they cannot both be in , otherwise it would be possible to start at the initial vertex, travel along the path to and depart, then re-enter at and complete the rest of the path, violating the single visit condition. Hence, by the pigeonhole principle, the vertices must be ordered starting with a vertex from , then a vertex from , then a vertex from , and so on. Since this must be true for any path-labelling in , it is obvious that any edges between two vertices in are unnecessary, and similarly, any edges between two vertices of are unnecessary. Since is optimal, none of these unnecessary edges exist and hence is bipartite. Now consider any consecutive vertices and . Since , it is an incoming vertex, and hence a Hamiltonian path must exist which terminates in its corresponding outgoing vertex. Since , it cannot be the corresponding outgoing vertex. Hence, the Hamiltonian path must eventually reach and then leave it. Since it cannot return to , there must be at least one more edge emanating from besides . Since this must be true for any , we conclude that all vertices in have out-degree at least 2. Similarly, consider any two consecutive vertices and . Since is an outgoing vertex, there must be a Hamiltonian path which ends at , and which cannot have started at . Hence, there must be at least one more edge going into besides . Since this is true for any , we conclude that all vertices in have in-degree at least 2. Since is bipartite, the set of edges departing vertices in is disjoint with the set of edges entering vertices in . Hence, at least edges are required.
Next, consider the case where . It is clear that . Suppose that is labelled with a path-labelling starting from a vertex in . Consider any two consecutive vertices and . Using an identical argument to the previous paragraph, it is clear that it cannot be the case that and or else the single visit condition is violated. Then consider any vertex . Clearly the vertex which succeeds it must be from . If that vertex is from , then the next vertex must also be from , and so forth. Hence, for any path-labelling of according to a Hamiltonian path, it must be the case that any two vertices from which appear consecutively in the path-labelling have at least one vertex from in between them. Since , the pigeonhole principle implies that there will be precisely one vertex from between them. So the vertices in and come in alternating order for any path-labelling. We will say that, given a path-labelling of , the vertices of the graph can be divided into segments plus the vertices from . That is, the first segment contains the vertices labelled where is the first vertex in , then the second segment contains vertices where is the second vertex in , and so on. Then each segment contains precisely one vertex from . From the above arguments it is clear that segments must start with some number of (possibly zero) vertices from , then a single vertex from , followed by some number of (possibly zero) vertices from . Since this must be the case for all path-labellings, and has a minimal number of edges, we can conclude the following:
- •
Edges which emanate from vertices in can only go to vertices in .
- •
Edges which emanate from vertices in can only go to vertices in .
- •
Edges which emanate from vertices in can only go to vertices in .
- •
Edges which emanate from vertices in can only go to vertices in .
Now, consider any vertex in the path-labelling of , except the initial one. It is clear that the vertex that precedes it will be from . Then, there must be a Hamiltonian path that begins at and travels through at some point, so there must be another edge emanating from besides . It can be easily seen that if all vertices are considered in this way, then the union of preceding vertices is equal to . Hence every vertex in must have out-degree at least 2 and so these edges contribute at least edges to .
Next, consider any vertex in the path-labelling of , except the final one. It is clear that the vertex that succeeds it will be from . Then, there must be a Hamiltonian path that ends at , after having travelled through previously. Hence, there must be another edge going to in addition to . Since we considered vertices, there are at least edges here, and from above, we know that each of these edges must emanate from vertices in , so they are disjoint with the set of edges considered in the previous paragraph. Hence, there must be at least edges.
3 Construction
In this section, we give a construction that produces -in-out graphs of minimal order for any . The cases when are considered individually. To begin with, we consider a class of bipartite graphs and show that the single visit condition is satisfied by them.
Lemma 1
Suppose that a graph is a bipartite graph, that is, its vertex set can be partitioned into such that all edges in are incident with an element from both and . Furthermore, suppose that , and that every incoming vertex and every outgoing vertex is contained in . Then satisfies the single visit condition.
Proof
Since all incoming vertices are in , it is clear that whenever is entered, a vertex in is visited. From here, because is bipartite, a vertex in is visited next, then a vertex in , and so on until is departed. This departure must also occur at a vertex in since there are no outgoing vertices in . It is clear that during this visit, precisely one more vertex from is visited than from . Hence, if is visited times, there must be more vertices of visited than those of . However, since , it follows that must be visited precisely once, and so the single visit condition is satisfied.
Hence, from Proposition 1 and Lemma 1 it is clear that if a bipartite graph of order satisfying the conditions of Lemma 1 also satisfies the paired vertices condition, then it is an optimal -in-out graph with respect to the number of vertices. Call such a graph . Recall that we can verify whether or not satisfies the paired vertices condition by finding all Hamiltonian paths between pairs of incoming and outgoing vertices in .
For small we can find such graphs explicitly by exhaustive search. For , contains a single vertex corresponding to both and . For , contains 3 vertices and the directed edges with , , , . It can be checked the and both meet the conditions of Lemma 1 and satisfy the paired vertices condition, and in both cases they contain vertices and directed edges. We will leave the case where for the end of this section.
We now provide a procedure for constructing -in-out graphs of order for .
Construction for
For even , contains the following edges:
- •
Undirected edges , and for .
- •
Directed edges and for .
- •
Directed edges , , , , , .
For odd , contains the following edges:
- •
Undirected edges , and for .
- •
Directed edges and for .
- •
Directed edges , , .
In both cases, we define the incoming vertices to be for . The outgoing vertices require a bit more care to define. In both cases, we can define the majority of the outgoing vertices as and for . Then, for the case where is even, the remaining outgoing vertices yet to be defined are , , , . For the case where is odd, the remaining outgoing vertices yet to be defined are , and . An example of each of the two constructions is displayed in Figure 2.
It can be easily checked that is a bipartite graph satisfying the conditions of Lemma 1. Hence, all that remains is to check the Hamiltonian paths between pairs of incoming and outgoing vertices. In Theorem 3.1 we will prove that there are no such Hamiltonian paths between incoming vertices and outgoing vertices for , and in Proposition 2 we will show that there is a Hamiltonian path between and for all .
Theorem 3.1
For , there are no Hamiltonian paths in starting at incoming vertex and finishing at any outgoing vertex for .
Proof
We present the full proof for the even case here. The proof for the odd case follows from analogous arguments. We will partition the incoming vertices into several categories, namely:
- •
Incoming vertex
- •
Incoming vertices for
- •
Incoming vertices for
- •
Incoming vertex
- •
Incoming vertex
Consider first incoming vertex . Consider a Hamiltonian path that begins at this vertex and finishes at an outgoing vertex. After begins at vertex 1, it must proceed to vertex 2, and then there is a choice to proceed either to vertex 3 or 9. Suppose that proceeds to 3, then it is forced to further proceed to 4 and 5. However, at some stage in the future, must reach vertex , at which point the only options are to either proceed to vertex 1, or vertex 5. Neither choice is still valid, and cannot conclude here since is not an outgoing vertex. Hence, we conclude that must not proceed from 2 to 3. However, since vertex 3 is of degree 2, and if does not proceed from 2 to 3, then must finish at vertex .
Next consider any incoming vertex for . Consider a Hamiltonian path that begins at this vertex and finishes at an outgoing vertex. After begins at vertex , it must proceed to the degree 2 vertex , or else when that vertex is visited later there will be nowhere to go and would finish here, which is a contradiction since is not an outgoing vertex. So will go to and then continue on to vertices and . At this point, there is a choice to either proceed to vertices or . Suppose that proceeds to , then it is forced to further proceed to vertices and . However, at some stage in the future, must reach vertex , at which point the only options are to either proceed to vertex or . Neither choice is still valid, and cannot conclude here since is not an outgoing vertex. Hence, we conclude that must not proceed from to . However, since vertex is of degree 2, and does not proceed from to , then must finish at vertex .
Next consider any incoming vertex for . Consider a Hamiltonian path that begins at this vertex and finishes at an outgoing vertex. After begins at vertex , it must proceed to the degree 2 vertex , or else when that vertex is visited later there will be nowhere to go and would finish here, which is a contradiction since is not an outgoing vertex. So will go to and then continue on to vertices and . However, at some stage in the future, vertex will be visited. If , this is vertex 1 and it can only go to vertex which has already been visited, and so the path must finish here. If then there are two cases to consider. Either vertex is preceded by , or not. In the latter case, then upon arriving at vertex , vertex is the only remaining destination (since vertex has already been visited), which is then followed by and , at which point there is nowhere to go. Since is not an outgoing vertex, this case must not have occurred. Hence, vertex is preceded by and so upon arriving at vertex there is nowhere left to go and must finish at vertex .
Next consider incoming vertex . Consider a Hamiltonian path that begins at this vertex and finishes at an outgoing vertex. After begins at vertex , it must proceed to the degree 2 vertex , or else when that vertex is visited later there will be nowhere to go and would finish here, which is a contradiction since is not an outgoing vertex. So will go to and then continue on to vertices and . However, at some stage in the future, vertex will be visited. This vertex can only go to vertex , which has already been visited. Since there is nowhere left to go, must finish at vertex .
Finally, consider incoming vertex . Consider a Hamiltonian path that begins at this vertex and finishes at an outgoing vertex. After begins at vertex it is forced to visit vertex . At this point, vertex must be visited as it will not be possible to reach otherwise. Then for each subsequent vertex, the same argument can be made: upon visiting vertex we must visit vertex or else it will be impossible to return later. Hence all remaining vertices are visited, with finishing at vertex .
In each case, we have shown that any Hamiltonian path of which starts at does not end at if , completing the proof.
Proposition 2
For any , there is a Hamiltonian path in between each pair of vertices and for .
Proof
It suffices to provide the paths. First, for the case where is even:
From : Starting from 1, go to 2. Then repeat the path to to to for , followed by to to to to .
From for : Starting from , go to to to . Then repeat the path to to to for , followed by to to . Then travel in vertex order along . Finally, go to to to .
From for : Starting from , go to to to . Then repeat the path to to to for , followed by to to . Then travel in vertex order along .
From : Starting from , go to to to to . Then travel in vertex order along and finally go to .
From : Starting from , go to to . Then travel in vertex order along .
Next, for the case where is odd:
From : Simply travel in vertex order along .
From for : Starting from , go to to to . Then repeat the path to to to for , followed by 1. Then travel in vertex order along . Finally, go to to to .
From for : Starting from , go to to to . Then repeat the path to to to for , followed by 1. Then travel in vertex order along .
From : Starting from , go to to to . Then repeat the path to to to for . Finally, go to to to to to .
Theorem 3.2
For any , the graph is a -in-out graph of optimal size.
Proof
From Lemma 1 it is clear that satisfies the single visit condition, while from Theorem 3.1 and Proposition 2 it is clear that satisfies the paired vertices condition. Hence from Definition 1 it follows that is a -in-out graph. Then, from Proposition 1 we can see that is of minimal order, completing the proof.
Next, we consider the number of edges in our construction. For even , contains directed edges, and for odd , contains directed edges. Recall from Theorem 2.1 that any -in-out graph of order must contain at least edges. Hence, for even the construction is also optimal with respect to the number of edges. For odd , the construction is this manuscript does not quite meet the bound provided by Theorem 2.1. However, so far no examples of -in-out graphs with edges have been found for any odd , which leads to the following conjecture.
Conjecture 1
Any -in-out graph of order for odd has at least edges.
The construction provided in this manuscript produces in-out graphs which are bipartite, and this is also the case in the constructions for and given earlier. We now show that, in addition to being bipartite, the in-out graphs we construct are often also planar. This is certainly the case for and . Consider defined as above for .
Proposition 3
* is planar unless .*
Proof
We will consider separately the case where is even, and the case where is odd. Suppose first is even. It is clear that, for the embedding displayed in Figure 2, the only edge crossings occur between successive sets of three undirected edges, we call these poles. This can be avoided by “untwisting” every second pole by effectively turning them upside down. The only potential issue is if there is an even number of poles. In this case, vertex can be relocated underneath the in-out graph to permit a planar embedding, as shown in Figure 3. Hence, is planar if is even.
Next, consider the case where is odd. Again, for the embedding displayed in Figure 2 the only edge crossings occur between successive poles, so we can again untwist every second pole. The only issue occurs when there is an even number of poles. Each pole contains four vertices, two of which are incoming (and outgoing) vertices. Since there is an even number of poles, the number of incoming vertices contained in them is a product of four. Finally, there is one additional incoming vertex, so in this case, In this case, has a crossing number of 1; an embedding of with a single edge-crossing is displayed in Figure 4.
Obviously, if an planar graph is desired for , a -in-out graph can just be constructed instead with one of the incoming/outgoing vertices treated as a neutral vertex.
Finally, we consider the remaining case when . Exhaustive search shows that there are no 3-in-out graphs on 5 vertices, and hence is the only case where it is impossible to construct a -in-out graph with vertices. For , the minimal examples occur for six vertices, and among those, the fewest number of directed edges possible is ten. An example of one such 3-in-out graph, , can be constructed by taking the (directed) path graph on six vertices and adding the directed edges , , , and . Then , and , while , and . The three Hamiltonian paths between pairs of incoming and outgoing vertices are , and . This 3-in-out graph is displayed in Figure 5. Note that the resulting graph is planar, although it is not bipartite; indeed, no 3-in-out graphs on 6 vertices are bipartite. The smallest bipartite 3-in-out graph can be obtained by taking and then simply treating one of the incoming/outgoing vertices as a neutral vertex.
4 Generalized Traveling Salesman Problem
We now consider the generalized traveling salesman problem (GTSP) and show that we can convert it to an instance of asymmetric TSP (ATSP) through the use of in-out subgraphs. First, we recall the definition of the traveling salesman problem (TSP). Consider any graph and a set of weights on every directed edge . Any path in has path length equal to the sums of weights of the edges used in the path. Then TSP can be defined as the problem of identifying the Hamiltonian cycle of with shortest path length. If the weights are different depending on the direction in which the edge is traversed, or if some edges can only be traversed in one direction, the problem is often called asymmetric TSP.
A specialisation of TSP is GTSP, wherein the vertices of are partitioned into disjoint groups , such that is the union of all . Then, GTSP is equivalent to ATSP, except the requirement to visit each vertex from is replaced by the requirement to visit exactly one vertex from each . This variation of ATSP has been considered in various contexts, including order picking in warehouses daniels , routing of clients through welfare agencies saskena , and computer file sequencing henry .
Rather than develop a specialised algorithm for solving GTSP, a common approach in literature has been to convert instances of GTSP into instances of ATSP, so as to take advantage of the wealth of excellent open-source TSP solvers available such as Concorde concorde or LKH LKH . To the best of the authors’ knowledge, the earliest such conversion is due to Lien et al. lien , which involved replacing each group with a special subgraph that ensured each group would be visited exactly once. For an instance of GTSP with vertices and groups, the conversion by Lien et al. results in an instance of ATSP with vertices.
Later in the same year, Noon and Bean noonbean advocated an alternative approach of adding edges between the vertices in each , so as to introduce a cycle with zero weight for each , and then adding a large weight to all edges going between vertices in different groups. Since the large weight renders these edges undesirable, a TSP solver will seek to use as few of them as possible and hence will visit each group only once. This conversion results in an instance of ATSP with only vertices (that is, there is no growth in the order of the instance) but the price paid is the introduction of large weights on edges. Each of these weights must be at least as large as the sum of the largest weights in the original instance, so the magnitude of the weights grows with the size of the instance. Noon and Bean point out in their manuscript that while the large weights pose no theoretical issues, they create practical difficulties with solving. They indicate that methods such as subtour elimination algorithms will require many branches before the the first non-zero bounds (ie bounds which include any of the edges of large weight) are reached. Instead, they advocate cutting-plane approaches, but indicate that the large weights will pose numerical stability problems for any LP solvers and would inhibit variable elimination.
A few years later, Dimitrijević and Šarić dimitrijevic proposed a conversion which results in vertices, but only introduces large weights. Then, a few years after that, Behzad and Modarres behzad developed another conversion of GTSP to ATSP which, from an algorithmic perspective, performs equivalently to the conversion by Noon and Bean and hence contains large weights as well.
Here, we propose a new alternative. Through the use of in-out subgraphs, we can convert GTSP to ATSP, where the single visit condition will ensure the groups are only visited once, and the paired vertices condition can be used to ensure the appropriate weights are given to each outgoing edge. Since the structure of in-out graphs allows us to satisfy the requirements of GTSP, we are able to avoid the need to use large weights. The following procedure will construct an instance of ATSP from any given instance of GTSP.
For each group in the original instance, the new instance should contain a -in-out subgraph , where . The weight on each of the edges of should be 0. 2. 2.
For every directed edge with weight in the original instance, do the following. If is the -th vertex in and is the -th vertex in , then add an edge to the new instance between outgoing vertex of and incoming vertex of with weight .
If the original instance has vertices, partitioned into groups, and with groups having cardinality 3, the order of the resultant instance will be . This is obviously superior to the conversion due to Lien et al. It is also superior to the conversion by Dimitrijević both in terms of size and also by avoiding the introduction of large weights. Since for any meaningful instance of GTSP, the conversion given here results in a larger instance than that from Noon and Bean. However, by avoiding introducing large weights, our conversion is considerably more numerically stable. We can also partially alleviate the burden of the larger size by taking advantage of constraints for each in-out subgraph as described in the next section.
5 Constraints for in-out subgraphs
The use of in-out subgraphs allows us to pose constrained forms of HCP or TSP as standard forms. However, a solver for one of these problems may not be “aware” that the in-out subgraph satisfies the single visit condition or the paired vertices condition, and could waste time trying to eliminate possibilities which are already prevented by the in-out subgraphs. Hence, whenever possible, such as for cutting-plane approaches, it is beneficial to include constraints which instruct the solver about the in-out subgraphs. We conclude this manuscript with some such constraints.
In each of the following constraints, it is assumed that is any -in-out subgraph with incoming vertices and outgoing vertices for , and that is the variable corresponding to using (directed) edge in the tour.
[TABLE]
Constraint (1) ensures exactly one incoming edge is used, and constraint (2) ensures exactly one outgoing edge is used. Constraints (3) ensure that an incoming edge incident with incoming vertex is used if and only if an outgoing edge incident with outgoing vertex is also used.
We can add further constraints if we consider the paths between pairs of incoming and outgoing vertices. For the construction given in this manuscript, there is a unique Hamiltonian path in between incoming vertex and outgoing vertex for each . Hence, we can also add the following constraints, using the shorthand that if :
[TABLE]
Constraints (4) ensure that if an incoming edge incident with incoming vertex is used, then every one of the edges in path must also be visited. Note that is the Kronecker delta that is equal to one if and is zero otherwise; this term is necessary because the Hamiltonian path in contains 5 edges rather than the normal edges for all other . Constraints (5) ensure that an edge in is used if and only if an incoming edge incident with an incoming vertex is used such that contains .
The reference list from the paper itself. Each links out to its DOI / PubMed record.
- 1[1] Applegate, D.L., Bixby, R.B., Chavátal, V., and Cook, W.J. The Traveling Salesman Problem: A Computational Study . Princeton University Press, 2006.
- 2[2] Baniasadi, P., Ejov, E., Filar, J.A., Haythorpe, M., and Rossomakhine, S. Deterministic “Snakes and Ladders” Heuristic for the Hamiltonian cycle problem. Mathematical Programming Computation , 6(1):55-75, 2014.
- 3[3] Behzad, A., and Modarres, M. A new efficient transformation of the generalized traveling salesman problem into traveling salesman problem. In: Proceedings of the 15th International Conference of Systems Engineering , pp.6–8, 2002.
- 4[4] Chalaturnyk, A. A Fast Algorithm For Finding Hamilton Cycles. Masters Thesis, University of Manitoba, 2008.
- 5[5] Daniels, R.L., Rummel, J.L., and Schantz, R. A model for warehouse order picking. European Journal of Operational Research 105:1–17, 1998.
- 6[6] Dimitrijević, V., and Šarić, Z. An Efficient Transformation of the Generalized Traveling Salesman Problem into the Traveling Salesman Problem on Digraphs. Informatics and Computer Science 102:105–110, 1997.
- 7[7] Haythorpe, M., and Johnson, A. Change Ringing and Hamiltonian Cycles : The Search for Erin and Stedman Triples. Electronic Journal of Graph Theory and Applications , submitted 2017. Available at: http://arxiv.org/abs/1702.02623
- 8[8] Helsgaun, K. An Effective Implementation of Lin-Kernighan Traveling Salesman Heuristic. European Journal of Operations Research 126:106–130, 2000.
