Skip to main content

Probabilistic Graph Programs for Randomised and Evolutionary Algorithms

  • Conference paper
  • First Online:
Graph Transformation (ICGT 2018)

Abstract

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.

T. Atkinson—Supported by a Doctoral Training Grant from the Engineering and Physical Sciences Research Council (EPSRC) in the UK.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Notes

  1. 1.

    https://github.com/UoYCS-plasma/P-GP2.

  2. 2.

    https://github.com/UoYCS-plasma/EGGP.

References

  1. Atkinson, T., Plump, D., Stepney, S.: Probabilistic graph programming. In: Pre-Proceedings of Graph Computation Models (GCM 2017) (2017)

    Google Scholar 

  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). https://doi.org/10.1007/978-3-319-77553-1_3

    Chapter  Google Scholar 

  3. Bak, C.: GP 2: efficient implementation of a graph programming language. Ph.D. thesis, Department of Computer Science, University of York (2015). http://etheses.whiterose.ac.uk/12586/

  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). https://doi.org/10.1007/978-3-319-40530-8_7

    Chapter  Google Scholar 

  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). https://doi.org/10.1007/978-3-540-87405-8_27

    Chapter  MATH  Google Scholar 

  6. Eiben, A.E., Smith, J.E.: Introduction to Evolutionary Computing. Natural Computing Series, Second edn. Springer, Heidelberg (2015). https://doi.org/10.1007/978-3-662-05094-1

    Book  Google Scholar 

  7. Erdős, P., Rényi, A.: On random graphs. Publ. Math. (Debrecen) 6, 290–297 (1959)

    MathSciNet  MATH  Google Scholar 

  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). https://doi.org/10.4204/EPTCS.159.3

    Article  MathSciNet  Google Scholar 

  9. Gilbert, E.N.: Random graphs. Ann. Math. Stat. 30(4), 1141–1144 (1959)

    Article  Google Scholar 

  10. Heckel, R., Lajios, G., Menge, S.: Stochastic graph transformation systems. Fundamenta Informaticae 74(1), 63–84 (2006)

    MathSciNet  MATH  Google Scholar 

  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). https://doi.org/10.1007/978-3-319-74730-9_8

    Chapter  Google Scholar 

  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. 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). https://doi.org/10.1109/SFCS.1993.366879

  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). https://doi.org/10.1007/978-3-642-33654-6_21

    Chapter  MATH  Google Scholar 

  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). https://doi.org/10.1007/978-3-540-71605-1_32

  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)

    Article  MathSciNet  Google Scholar 

  17. Miller, J.F. (ed.): Cartesian Genetic Programming. Springer, Heidelberg (2011). https://doi.org/10.1007/978-3-642-17310-3_2

  18. Motwani, R., Raghavan, P.: Randomized Algorithms. Cambridge University Press, Cambridge (1995)

    Google Scholar 

  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). https://doi.org/10.4204/EPTCS.225.6

    Article  MathSciNet  Google Scholar 

  20. Plump, D.: From imperative to rule-based graph programs. J. Logical Algebraic Methods Program. 88, 154–173 (2017). https://doi.org/10.1016/j.jlamp.2016.12.001

    Article  MathSciNet  MATH  Google Scholar 

  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. 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). https://doi.org/10.1007/978-3-319-09108-2_3

    Chapter  MATH  Google Scholar 

  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. 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). https://doi.org/10.1145/2463372.2463484

  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). https://doi.org/10.1007/s10710-014-9233-1

    Article  Google Scholar 

  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 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Timothy Atkinson .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2018 Springer International Publishing AG, part of Springer Nature

About this paper

Check for updates. Verify currency and authenticity via CrossMark

Cite this paper

Atkinson, T., Plump, D., Stepney, S. (2018). Probabilistic Graph Programs for Randomised and Evolutionary Algorithms. In: Lambers, L., Weber, J. (eds) Graph Transformation. ICGT 2018. Lecture Notes in Computer Science(), vol 10887. Springer, Cham. https://doi.org/10.1007/978-3-319-92991-0_5

Download citation

  • DOI: https://doi.org/10.1007/978-3-319-92991-0_5

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-319-92990-3

  • Online ISBN: 978-3-319-92991-0

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics