A Greedy Heuristic for Crossing-Angle Maximization

  • Almut Demel
  • Dominik Dürrschnabel
  • Tamara Mchedlidze
  • Marcel RadermacherEmail author
  • Lasse Wulf
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 11282)


The crossing angle of a straight-line drawing \(\varGamma \) of a graph \(G=(V, E)\) is the smallest angle between two crossing edges in \(\varGamma \). Deciding whether a graph G has a straight-line drawing with a crossing angle of \(90^\circ \) is \(\mathcal {NP} \)-hard [1]. We propose a simple heuristic to compute a drawing with a large crossing angle. The heuristic greedily selects the best position for a single vertex in a random set of points. The algorithm is accompanied by a speed-up technique to compute the crossing angle of a straight-line drawing. We show the effectiveness of the heuristic in an extensive empirical evaluation. Our heuristic was clearly the winning algorithm (CoffeeVM) in the Graph Drawing Challenge 2017 [6].


  1. 1.
    Argyriou, E.N., Bekos, M.A., Symvonis, A.: The straight-line RAC drawing problem is NP-hard. J. Graph Algorithms Appl. 16(2), 569–597 (2012). Scholar
  2. 2.
    Argyriou, E.N., Bekos, M.A., Symvonis, A.: Maximizing the total resolution of graphs. Comput. J. 56(7), 887–900 (2013). Scholar
  3. 3.
    Arikushi, K., Fulek, R., Keszegh, B., Morić, F., Tóth, C.D.: Graphs that admit right angle crossing drawings. Comput. Geom. Theory Appl. 45(4), 169–177 (2012). Scholar
  4. 4.
    Bentley, J.L., Ottmann, T.A.: Algorithms for reporting and counting geometric intersections. IEEE Trans. Comput. C–28(9), 643–647 (1979)CrossRefGoogle Scholar
  5. 5.
    Chimani, M., Gutwenger, C., Jünger, M., Klau, G.W., Klein, K., Mutzel, P.: The Open Graph Drawing Framework (OGDF). In: Handbook of Graph Drawing and Visualization, pp. 543–569. Chapman and Hall/CRC, Boca Raton (2013)Google Scholar
  6. 6.
    Devanny, W., Kindermann, P., Löffler, M., Rutter, I.: Graph drawing contest report. In: Frati, F., Ma, K.-L. (eds.) GD 2017. LNCS, vol. 10692, pp. 575–582. Springer, Cham (2018). Scholar
  7. 7.
    Didimo, W., Eades, P., Liotta, G.: Drawing graphs with right angle crossings. Theor. Comput. Sci. 412(39), 5156–5166 (2011). Scholar
  8. 8.
    Didimo, W., Liotta, G.: The crossing-angle resolution in graph drawing. In: Pach, J. (ed.) Thirty Essays on Geometric Graph Theory, pp. 167–184. Springer, New York (2013). Scholar
  9. 9.
    Dujmović, V., Gudmundsson, J., Morin, P., Wolle, T.: Notes on large angle crossing graphs. In: Viglas, T., Potanin, A. (eds.) Proceedings of the 16th Symposium on Computing: The Australasian Theory (CATS 2010), pp. 19–24. Australian Computer Society (2010)Google Scholar
  10. 10.
    Eades, P.: A heuristic for graph drawing. Congressus Numerantium 42, 149–160 (1984)MathSciNetGoogle Scholar
  11. 11.
    Fruchterman, T.M.J., Reingold, E.M.: Graph drawing by force-directed placement. Softw.: Pract. Exp. 21(11), 1129–1164 (1991). Scholar
  12. 12.
    Gansner, E.R., Koren, Y., North, S.: Graph drawing by stress majorization. In: Pach, J. (ed.) GD 2004. LNCS, vol. 3383, pp. 239–250. Springer, Heidelberg (2005). Scholar
  13. 13.
    Giacomo, E.D., Didimo, W., Eades, P., Hong, S.H., Liotta, G.: Bounds on the crossing resolution of complete geometric graphs. Discret. Appl. Math. 160(1), 132–139 (2012). Scholar
  14. 14.
    Huang, W., Eades, P., Hong, S.H., Lin, C.C.: Improving force-directed graph drawings by making compromises between aesthetics. In: Hundhausen, C.D., Pietriga, E., Díaz, P., Rosson, M.B. (eds.) Proceedings of the IEEE Symposium on Visual Languages and Human-Centric Computing (VL/HCC2010), pp. 176–183. IEEE Computer Society (2010).
  15. 15.
    Huang, W., Huang, M.: Exploring the relative importance of crossing number and crossing angle. In: Wang, H., Yuan, X., Tao, L., Chen, W. (eds.) Proceedings of the 3rd International Symposium on Visual Information Communication (VINCI 2010), pp. 10:1–10:8. ACM (2010).
  16. 16.
    Klawitter, J., Mchedlidze, T., Nöllenburg, M.: Experimental evaluation of book drawing algorithms. In: Frati, F., Ma, K.-L. (eds.) GD 2017. LNCS, vol. 10692, pp. 224–238. Springer, Cham (2018). Scholar
  17. 17.
    Lancichinetti, A., Fortunato, S., Radicchi, F.: Benchmark graphs for testing community detection algorithms. Phys. Rev. E 78, 046110 (2008). Scholar
  18. 18.
    Radermacher, M., Reichard, K., Rutter, I., Wagner, D.: A geometric heuristic for rectilinear crossing minimization. In: Pagh, R., Venkatasubramanian, S. (eds.) Proceedings of the 20th Workshop on Algorithm Engineering and Experiments (ALENEX 2018), pp. 129–138 (2018). Scholar
  19. 19.
    Staudt, C.L., Sazonovs, A., Meyerhenke, H.: NetworKit: a tool suite for large-scale complex network analysis. Netw. Sci. 4(4), 508–530 (2016). Scholar

Copyright information

© Springer Nature Switzerland AG 2018

Authors and Affiliations

  • Almut Demel
    • 1
  • Dominik Dürrschnabel
    • 1
  • Tamara Mchedlidze
    • 1
  • Marcel Radermacher
    • 1
    Email author
  • Lasse Wulf
    • 1
  1. 1.Department of Computer ScienceKarlsruhe Institute of TechnologyKarlsruheGermany

Personalised recommendations