Discrete Dynamics in Nature and Society
Volume 2009 (2009), Article ID 154015, 10 pages
doi:10.1155/2009/154015
Research Article

An Evolutionary Formulation of the Crossing Number Problem

Faculty of Engineering and Technology, Multimedia University, Jalan Ayer Keroh Lama, 75450 Melaka, Malaysia

Received 24 September 2008; Revised 31 March 2009; Accepted 2 July 2009

Academic Editor: B. Sagar

Copyright © 2009 Che Sheng Gan et al. This is an open access article distributed under the Creative Commons Attribution License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.

Abstract

A graph drawing algorithm is presented which results in complete graphs having minimum crossings equal to that of Guy's conjecture. It is then generalized and formulated in an evolutionary algorithm (EA) to perform constrained search for the crossing numbers. The main objective of this work is to present a suitable two-dimensional scheme which can greatly reduce the complexity of finding crossing numbers by using computer. Program performance criteria are presented and discussed. It is shown that the EA implementation provides good confirmation of the predicted crossing numbers.

1. Introduction

Let 𝐺 be a graph. The crossing number of 𝐺 , denoted by c r ( 𝐺 ) , is the minimum number of pairwise intersections of its edges when 𝐺 is drawn in the plane. Undefined terms in this paper can be found in [1].

Problem about the crossing number of a graph is an area of active research in both applied and algorithmic graph theory. Beside being a challenging problem in itself, it also finds applications in areas of network design and circuit layout. The crossing numbers problem was proposed in early 1970s [2, 3]. It has been shown that the problem of determining the crossing number of a given graph is NP-complete [4].

There are some known results or conjectures for some families of graphs including complete graphs, bipartite graphs, and product of cycles. In particular, the following is known as Guy’s conjecture [5]:

𝐾 c r 𝑝 = 𝑝 / 2 ( 𝑝 1 ) / 2 ( 𝑝 2 ) / 2 ( 𝑝 3 ) / 2 4 , ( 1 . 1 ) where 𝐾 𝑝 is the complete graph of order 𝑝 . Some values of (1.1) for 𝑝 = 5, 6, , 12 are 1, 3, 9, 18, 36, 60, 100, and 150. Guy’s conjecture holds true for complete graphs of up to 𝑝 = 1 2 and provides a known upper bound for 𝑝 > 1 2 [6]. Various optimization algorithms [79] have been used in the search for the crossing numbers although none has successfully violated the conjecture. In this paper, a graph drawing algorithm is presented which results in complete graphs having the same crossing number given by Guy’s conjecture. A natural extension of this algorithm is then used as the underlying scheme in an evolutionary algorithm (EA) that performs a constrained search for the crossing numbers of complete graphs.

2. Graph Drawing Algorithm

In this section, a graph drawing algorithm is proposed, which achieves Guy’s conjecture. An article by Archdeacon [10] provided a helpful starting point for the graph drawing algorithm. The key strategy of this drawing method lies in the connection of vertices by weighing possible edge directions by their positive winding number. In other words, the direction of an edge connecting a top vertex to a bottom one is chosen according to the minimum-length criterion. It is plausible that such a method could produce a drawing with the minimum number of crossings since an edge of minimum length would seem to have lessened its chance of intersecting with other edges. A complete graph of order 5 drawn using this method is shown in Figure 1. Note also that there are two groups of vertices on the top and bottom surfaces of the cylinder connected amongst each other.

154015.fig.001
Figure 1: 𝐾 5 drawn on a cylinder using the minimum-length rule.

The three-dimensional visualization required by such a method is quite difficult for large 𝑝 . We simplify the drawing by making a vertical cut on the curved surface of the cylinder along its entire length and “unfolding” it into a rectangular plane as in Figure 2. The resulting vertical boundaries are now represented by vertical dotted lines.

154015.fig.002
Figure 2: Mapping of 𝐾 5 from cylinder to plane.

In such drawings, edges corresponding to those on the top and bottom surfaces of the cylinder are not shown and their crossings will be referred to as external crossings as opposed to those on the curved surface of the cylinder which will be referred to as internal crossings. The reason for the absence of external crossings is due to the fact that their number can easily be determined by 𝑟 𝐶 4 where 𝑟 is the number of top or bottom vertices.

It should be noted that this drawing method serves no purpose other than to verify the upper bound according to Guy’s conjecture (for 𝑝 1 2 it also verifies the actual crossing number). It is deterministic and hence it does not actually search for a drawing that satisfies the minimum number of crossings. Of course, if the conjecture is proven to be true, then the upper bound is equal to the minimum crossing numbers. The corresponding algorithm is presented as follows.

Algorithm 2 A (drawing the complete graph with minimum crossing). A1.Partitions the vertices of 𝐾 𝑝 into 𝑈 (the set of upper vertices) and 𝑉 (the set of lower vertices):A1.1. 𝑈 = { 𝑢 𝑖 } for 0 𝑖 𝑚 1 , where 𝑚 = 𝑝 / 2 , A1.2. 𝑉 = { 𝑣 𝑗 } for 0 𝑗 𝑛 1 , where 𝑛 = 𝑝 𝑚 . A2. Place the vertices of 𝑈 and 𝑉 on two parallel lines (called the upper and the lower lines) that are separated by unity distance:A2.1. place 𝑢 0 ( 𝑣 0 ) at 𝑥 = 0 and 𝑥 = 𝑚 × 𝑛 on the upper (lower) line,A2.2. place the remaining 𝑢 𝑖 ( 𝑣 𝑗 ) between 𝑥 = 0 and 𝑥 = 𝑚 × 𝑛 at intervals of length 𝑛 ( 𝑚 ) on the upper (lower) line,A2.3. 𝑢 0 at 𝑥 = 0 ( 𝑥 = 𝑚 × 𝑛 ) is joined to 𝑣 0 at 𝑥 = 0 ( 𝑥 = 𝑚 × 𝑛 ) , A2.4. 𝑢 𝑖 is joined to each 𝑣 𝑗 either by a continuous line or a broken line which crosses the line 𝑥 = 0 or 𝑥 = 𝑚 × 𝑛 subject to the minimum length or the positive direction criteria (the direction is positive for the right going lines).

Figure 3 shows the application of this drawing algorithm on 𝐾 6 and 𝐾 9 . The total number of crossings is calculated as the sum of the internal crossings and the upper and lower external crossings.

154015.fig.003
Figure 3: 𝐾 6 and 𝐾 9 drawn using Algorithm A.

3. The Evolutionary Algorithm (EA)

3.1. Introduction

In this section, we present an evolutionary formulation for the crossing number problem. The proposed algorithm initializes by randomly generating a population of genomes. As shown in Figure 4, initial populations of size 𝑁 are selected from the solution space of 2 𝑝 , where each genome encodes a complete graph of order 𝑝 by a binary-valued 𝑝 / 2 × 𝑝 / 2 adjacency matrix. Figure 5 illustrates an example of the coding convention for 𝐾 5 .

154015.fig.004
Figure 4: An initial population 𝐺 0 containing 𝑁 genomes is selected from the solution space of 2 𝑝 .
154015.fig.005
Figure 5: The coding convention for genome 𝑔 3 𝐾 5 ; coding conventions, R: right-going edge, L: left-going edge, for the case where ( 𝑢 𝑖 , 𝑣 𝑖 ) forms a vertical line, either R or L can be used.

From the initial population, the evolutionary algorithm (Algorithm B) recombines, mutates, and selects genomes for the population of subsequent generations. The algorithm terminates after 𝐾 generations, or when the optimum solution (the conjecture upper bound) is achieved.

Algorithm 3.1 B (optimization search for minimum crossing based on EA). B1Initialization. An initial population, 𝐺 0 , of 𝑁 genomes is randomly drawn, Set 𝐺 0 { 𝑔 1 , 𝑔 2 , , 𝑔 𝑁 } .B2For 𝑘 = 1 to 𝐾 , make the following:B2.1Recombination. two parent genomes 𝑔 𝑎 and 𝑔 𝑏 are selected from the population 𝐺 𝑘 1 using Roulette selection and recombined to produce an offspring genome 𝑔 𝑟 . This process is repeated 𝑁 𝑟 times: Initialize 𝐺 𝑟 𝑘 0. For 𝑛 = 1 to 𝑁 𝑟 , do: Pick 𝑔 𝑎 roulette ( 𝐺 𝑘 1 ) and 𝑔 𝑏 roulette ( 𝐺 𝑘 1 𝑔 𝑎 ). Make 𝑔 𝑟 recombine ( 𝑔 𝑎 , 𝑔 𝑏 ). Update 𝐺 𝑟 𝑘 𝐺 𝑟 𝑘 + 𝑔 𝑟 . End For Update 𝐺 𝑟 𝑘 𝐺 𝑘 1 + 𝐺 𝑟 𝑘 . B2.2Mutation. Every genome in the population 𝐺 𝑟 𝑘 is mutated at a (preset) mutation rate 𝑃 m u t Initialize 𝐺 𝑚 𝑘 0 . For every 𝑔 𝑛 𝐺 𝑟 𝑘 , do: Make 𝑔 𝑚 mutate ( 𝑃 m u t , 𝑔 𝑛 ). Update 𝐺 𝑚 𝑘 𝐺 𝑚 𝑘 + 𝑔 𝑚 . End ForB2.3Selection. The selection stage is divided into two parts, that is, Elite selection and Non-elite selection. In the elite selection, the best 𝑁 𝑠 genomes of the population 𝐺 𝑚 𝑘 is initially selected and removed from 𝐺 𝑚 𝑘 . The remaining 𝑁 𝑁 𝑠 genomes are then selected from the depleted 𝐺 𝑚 𝑘 to retain the population size at 𝑁 : Initialize 𝐺 𝑘 0 . 154015.1 End For 154015.2 End For End For

3.2. Evolutionary Functions

To evaluate the “goodness” of a genome in a population, a fitness function is required. A genome with a high fitness value is more likely to survive than one with a low fitness value. For this particular problem, the following fitness function 𝐹 is used to evaluate the fitness of graph 𝑔

𝐹 ( 𝑔 ) = m a x 0 , 1 l o g 2 c r ( 𝑔 ) c r 0 , ( 3 . 1 ) where c r ( 𝑔 ) is the crossing number of graph 𝑔 and c r 0 is the conjectured lower bound of c r ( 𝑔 ) . As shown in Figure 6, the fitness function is a monotone function which has the widest dynamic range as compared to other functions. If Guy’s conjecture holds true, the optimum (maximum) value for 𝐹 ( 𝑔 ) is 1. A value greater than 1 will indicate a violation of the conjecture.

154015.fig.006
Figure 6: Fitness Functions.

Roulette selection is a selection mechanism in which a genome of population 𝐺 is picked based on some fitness measure. To select a genome from the population 𝐺 = { 𝑔 1 , 𝑔 2 , , 𝑔 𝑁 } , a random number 𝑟 is drawn from the uniform distribution [ 0 , 1 ] . Genome 𝑔 𝑛 is selected if

𝑛 1 𝑖 = 1 𝐹 𝑔 𝑖 𝐹 0 𝑟 < 𝑛 𝑖 = 1 𝐹 𝑔 𝑖 𝐹 0 , ( 3 . 2 ) where

𝐹 0 = 𝑁 𝑖 = 1 𝐹 𝑔 𝑖 . ( 3 . 3 )

The function recombine ( 𝑔 𝑎 , 𝑔 𝑏 ) combines two parent genomes 𝑔 𝑎 and 𝑔 𝑏 to produce an offspring genome. The offspring 𝑔 𝑟 inherits genetic material from 𝑔 𝑎 with a probability 𝐹 ( 𝑔 𝑎 ) / 𝐹 ( 𝑔 𝑎 ) + 𝐹 ( 𝑔 𝑏 ) , otherwise, genetic material from 𝑔 𝑏 is inherited. The recombination process is illustrated in Figure 7.

154015.fig.007
Figure 7: The recombination process.

The function mutate ( 𝑃 m u t , 𝑔 ) mutates genome 𝑔 with mutation rate 𝑃 m u t . Mutation generally involves toggling the binary value of the coded genome. The function bestof ( 𝐺 ) picks the best genome 𝑔 𝑏 from population 𝐺 , where 𝐹 𝑔 𝑏 = a r g m a x 𝑛 𝑔 𝑛 𝐺 . ( 3 . 4 )

4. Performance Evaluation

The EA algorithm is deemed successful when it finds the number of crossings equal to (1.1). We will examine the performance of the algorithm based on the number of functions evaluated to achieve the conjectured upper bound. Four variables are considered for such evaluation: graph order ( 𝑝 ), mating probability ( 𝑃 m a t e ) defined as 𝑁 𝑟 / 𝑁 , mutation rate ( 𝑃 m u t ), and elite percentage ( 𝑃 e l i t e ) defined as 𝑁 𝑠 / 𝑁 . In each experiment, three of the four input variables are held constant while the variable selected for evaluation takes on values of a given range. Figures 8, 9, and 10 summarizes the experiment results by varying the 𝑃 m a t e , 𝑃 m u t , and 𝑃 e l i t e , at 𝑝 = 1 2 . Each experiment is conducted for 50 trials and the final result is averaged over these 50 trials. In a subsequent experiment shown in Figure 11, a set of optimum parameters ( 𝑃 m a t e = 0 . 5 , 𝑃 m u t = 0 . 0 5 , and 𝑃 e l i t e = 0 . 1 ) is applied to search for the conjecture upper bound. Finally, Table 1 summarizes the success rates of the proposed formulation for graph order up to 20. The success rates improve as the population size ( 𝑁 ) and the number of iterations increase. However, this will increase the computational time since larger solution space is evaluated. Based on the empirical data, 𝑁 = 5 0 and Iteration = 200 are good compromise for this problem.

tab1
Table 1: Success Rates of the EA.
154015.fig.008
Figure 8: Plot of number of functions evaluated against mating probability ( 𝑝 = 1 2 , 𝑃 m u t = 0 . 0 5 , 𝑃 e l i t e = 0 . 1 ).
154015.fig.009
Figure 9: Plot of number of functions evaluated against mutation rate ( 𝑝 = 1 2 , 𝑃 m a t e = 0 . 5 , 𝑃 e l i t e = 0 . 1 ).
154015.fig.0010
Figure 10: Plot of number of functions evaluated against elite percentage ( 𝑝 = 1 2 , 𝑃 m a t e = 0 . 5 , 𝑃 m u t = 0 . 0 5 ).
154015.fig.0011
Figure 11: Plot of number of functions evaluated against graph order ( 𝑃 m a t e = 0 . 5 , 𝑃 m u t = 0 . 0 5 , 𝑃 e l i t e = 0 . 1 ).

5. Conclusions and Future Work

In this paper a graph-drawing algorithm is proposed to represent the graphical equivalent of Guy’s conjecture. The results are then extended, generalized, and employed in an evolutionary algorithm that performed a constrained search for the crossing number.

Performance of the EA is evaluated and presented. It is demonstrated that the EA is successful in finding the upper bound as set by (1.1). The success of the EA is dependent on the actual evolutionary mechanisms of selection, recombination, mutation, and reinsertion. As expected, the number of generations required to achieve optimum solution increases as the graph order becomes larger. The algorithm performed well at lower rates of mutation, which prevents the EA from degenerating into a random search.

It is natural to ask whether a graph with fewer crossings can be found by removing adherence to the conjecture upper bound. The future work is focused on optimizing various parameters and generalizing the algorithm such that given an initial set of randomly drawn complete graphs, an optimized solution is to be found with minimum crossing numbers.

References

  1. G. Chartrand and L. Lesniak, Graphs & Digraphs, Chapman & Hall, London, UK, 3rd edition, 1996.
  2. W. T. Tutte, “Toward a theory of crossing numbers,” Journal of Combinatorial Theory Series B, vol. 8, pp. 45–53, 1970.
  3. P. Turán, “A note of welcome,” Journal of Graph Theory, vol. 1, pp. 7–9, 1977.
  4. M. R. Garey and D. S. Johnson, “Crossing number is NP-complete,” SIAM Journal on Algebraic and Discrete Methods, vol. 4, no. 3, pp. 312–316, 1983.
  5. R. K. Guy, “Crossing numbers of graphs,” in Graph Theory and Applications, pp. 111–124, Springer, New York, NY, USA, 1972.
  6. S. Pan and R. B. Richter, “The crossing number of K11 is 100,” Journal of Graph Theory, vol. 56, no. 2, pp. 128–134, 2007.
  7. F. C. Harris Jr. and R. H. Cynthia, “A proposed algorithm for calculating the minimum crossing number of a graph,” in Proceedings of the 8th Quadrennial International Conference on Graph Theory, Combinatorics, Algorithms, and Applications, Kalamazoo, Mich, USA, June 1996.
  8. C. Gutwenger and P. Mutzel, “An experimental study of crossing minimization heuristics,” in Graph Drawing, G. Liotta, Ed., vol. 2912 of Lecture Notes in Computer Science, pp. 13–24, Springer, Berlin, Germany, 2004.
  9. U. Tadjiev, Parallel computation and graphical visualization of the minimum crossing number of a graph, M.S. thesis, University of Nevada, 1998.
  10. D. Archdeacon, December 2003, http://www.emba.uvm.edu/~archdeac/problems/crosskn.htm.