Probabilistic Graph Programs for Randomised and Evolutionary Algorithms

  • Timothy AtkinsonEmail author
  • Detlef Plump
  • Susan Stepney
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 10887)


We extend the graph programming language GP 2 with probabilistic constructs: (1) choosing rules according to user-defined probabilities and (2) choosing rule matches uniformly at random. We demonstrate these features with graph programs for randomised and evolutionary algorithms. First, we implement Karger’s minimum cut algorithm, which contracts randomly selected edges; the program finds a minimum cut with high probability. Second, we generate random graphs according to the G(np) model. Third, we apply probabilistic graph programming to evolutionary algorithms working on graphs; we benchmark odd-parity digital circuit problems and show that our approach significantly outperforms the established approach of Cartesian Genetic Programming.


  1. 1.
    Atkinson, T., Plump, D., Stepney, S.: Probabilistic graph programming. In: Pre-Proceedings of Graph Computation Models (GCM 2017) (2017)Google Scholar
  2. 2.
    Atkinson, T., Plump, D., Stepney, S.: Evolving graphs by graph programming. In: Castelli, M., Sekanina, L., Zhang, M., Cagnoni, S., García-Sánchez, P. (eds.) EuroGP 2018. LNCS, vol. 10781, pp. 35–51. Springer, Cham (2018). Scholar
  3. 3.
    Bak, C.: GP 2: efficient implementation of a graph programming language. Ph.D. thesis, Department of Computer Science, University of York (2015).
  4. 4.
    Bak, C., Plump, D.: Compiling graph programs to C. In: Echahed, R., Minas, M. (eds.) ICGT 2016. LNCS, vol. 9761, pp. 102–117. Springer, Cham (2016). Scholar
  5. 5.
    Bergmann, G., Horváth, Á., Ráth, I., Varró, D.: A benchmark evaluation of incremental pattern matching in graph transformation. In: Ehrig, H., Heckel, R., Rozenberg, G., Taentzer, G. (eds.) ICGT 2008. LNCS, vol. 5214, pp. 396–410. Springer, Heidelberg (2008). Scholar
  6. 6.
    Eiben, A.E., Smith, J.E.: Introduction to Evolutionary Computing. Natural Computing Series, Second edn. Springer, Heidelberg (2015). Scholar
  7. 7.
    Erdős, P., Rényi, A.: On random graphs. Publ. Math. (Debrecen) 6, 290–297 (1959)MathSciNetzbMATHGoogle Scholar
  8. 8.
    Fernández, M., Kirchner, H., Pinaud, B.: Strategic port graph rewriting: an interactive modelling and analysis framework. In: Proceedings of 3rd Workshop on Graph Inspection and Traversal Engineering (GRAPHITE 2014). Electronic Proceedings in Theoretical Computer Science, vol. 159, pp. 15–29 (2014). Scholar
  9. 9.
    Gilbert, E.N.: Random graphs. Ann. Math. Stat. 30(4), 1141–1144 (1959)CrossRefGoogle Scholar
  10. 10.
    Heckel, R., Lajios, G., Menge, S.: Stochastic graph transformation systems. Fundamenta Informaticae 74(1), 63–84 (2006)MathSciNetzbMATHGoogle Scholar
  11. 11.
    Hristakiev, I., Plump, D.: Checking graph programs for confluence. In: Seidl, M., Zschaler, S. (eds.) STAF 2017. LNCS, vol. 10748, pp. 92–108. Springer, Cham (2018). Scholar
  12. 12.
    Karger, D.R.: Global min-cuts in RNC, and other ramifications of a simple min-cut algorithm. In: Proceedings of 4th Annual ACM-SIAM Symposium on Discrete Algorithms (SODA 1993), pp. 21–30. Society for Industrial and Applied Mathematics (1993)Google Scholar
  13. 13.
    Karger, D.R.: Random sampling in matroids, with applications to graph connectivity and minimum spanning trees. In: Proceedings of 34th Annual Symposium on Foundations of Computer Science (FOCS 1993), pp. 84–93 (1993).
  14. 14.
    Krause, C., Giese, H.: Probabilistic graph transformation systems. In: Ehrig, H., Engels, G., Kreowski, H.-J., Rozenberg, G. (eds.) ICGT 2012. LNCS, vol. 7562, pp. 311–325. Springer, Heidelberg (2012). Scholar
  15. 15.
    Galván-López, E., Rodríguez-Vázquez, K.: Multiple interactive outputs in a single tree: an empirical investigation. In: Ebner, M., O’Neill, M., Ekárt, A., Vanneschi, L., Esparcia-Alcázar, A.I. (eds.) EuroGP 2007. LNCS, vol. 4445, pp. 341–350. Springer, Heidelberg (2007).
  16. 16.
    Mann, H.B., Whitney, D.R.: On a test of whether one of two random variables is stochastically larger than the other. Ann. Math. Stat. 18(1), 50–60 (1947)MathSciNetCrossRefGoogle Scholar
  17. 17.
    Miller, J.F. (ed.): Cartesian Genetic Programming. Springer, Heidelberg (2011).
  18. 18.
    Motwani, R., Raghavan, P.: Randomized Algorithms. Cambridge University Press, Cambridge (1995)Google Scholar
  19. 19.
    Plump, D.: Reasoning about graph programs. In: Proceedings of Computing with Terms and Graphs (TERMGRAPH 2016). Electronic Proceedings in Theoretical Computer Science, vol. 225, pp. 35–44 (2016). Scholar
  20. 20.
    Plump, D.: From imperative to rule-based graph programs. J. Logical Algebraic Methods Program. 88, 154–173 (2017). Scholar
  21. 21.
    Poli, R.: Parallel distributed genetic programming. In: Corne, D., Dorigo, M., Glover, F. (eds.) New Ideas in Optimization, pp. 403–431. McGraw-Hill, New York (1999)Google Scholar
  22. 22.
    Poskitt, C.M., Plump, D.: Verifying monadic second-order properties of graph programs. In: Giese, H., König, B. (eds.) ICGT 2014. LNCS, vol. 8571, pp. 33–48. Springer, Cham (2014). Scholar
  23. 23.
    Stanley, K.O., Miikkulainen, R.: Efficient reinforcement learning through evolving neural network topologies. In: Proceedings of Annual Conference on Genetic and Evolutionary Computation (GECCO 2002), pp. 569–577. Morgan Kaufmann, Burlington (2002)Google Scholar
  24. 24.
    Turner, A.J., Miller, J.F.: Cartesian genetic programming encoded artificial neural networks: a comparison using three benchmarks. In: Proceedings of GECCO 2013, pp. 1005–1012. ACM (2013).
  25. 25.
    Turner, A.J., Miller, J.F.: Introducing a cross platform open source Cartesian genetic programming library. Genet. Program. Evol. Mach. 16(1), 83–91 (2015). Scholar
  26. 26.
    Vargha, A., Delaney, H.D.: A critique and improvement of the CL common language effect size statistics of McGraw and Wong. J. Educ. Behav. Stat. 25(2), 101–132 (2000)Google Scholar

Copyright information

© Springer International Publishing AG, part of Springer Nature 2018

Authors and Affiliations

  1. 1.Department of Computer ScienceUniversity of YorkYorkUK

Personalised recommendations