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(n, p) 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.
@inproceedings(Atkinson2018-icgt, author = "Timothy Atkinson and Detlef Plump and Susan Stepney", title = "Probabilistic Graph Programs for Randomised and Evolutionary Algorithms", pages = "63-78", doi = "10.1007/978-3-319-92991-0_5", crossref = "ICGT-2018" ) @proceedings(ICGT-2018, title = "International Conference on Graph Transformation (ICGT), Toulouse, France, June 2018", booktitle = "International Conference on Graph Transformation (ICGT), Toulouse, France, June 2018", series = "LNCS", volume = 10887, publisher = "Springer", year = 2018 )