Searching for Pareto-optimal Randomised Algorithms

  • Alan G. Millard
  • David R. White
  • John A. Clark
Part of the Lecture Notes in Computer Science book series (LNCS, volume 7515)


Randomised algorithms traditionally make stochastic decisions based on the result of sampling from a uniform probability distribution, such as the toss of a fair coin. In this paper, we relax this constraint, and investigate the potential benefits of allowing randomised algorithms to use non-uniform probability distributions. We show that the choice of probability distribution influences the non-functional properties of such algorithms, providing an avenue of optimisation to satisfy non-functional requirements. We use Multi-Objective Optimisation techniques in conjunction with Genetic Algorithms to investigate the possibility of trading-off non-functional properties, by searching the space of probability distributions. Using a randomised self-stabilising token circulation algorithm as a case study, we show that it is possible to find solutions that result in Pareto-optimal trade-offs between non-functional properties, such as self-stabilisation time, service time, and fairness.


Service Time Genetic Program Pareto Front Leader Election Discrete Time Markov Chain 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Afzal, W., Torkar, R., Feldt, R.: A systematic review of search-based testing for non-functional system properties. Information and Software Technology 51, 957–976 (2009)CrossRefGoogle Scholar
  2. 2.
    Angluin, D.: Local and global properties in networks of processors. In: Proceedings of the Twelfth Annual ACM Symposium on Theory of Computing, pp. 82–93 (1980)Google Scholar
  3. 3.
    Beauquier, J., Cordier, S., Delaët, S.: Optimum probabilistic self-stabilization on uniform rings. In: Proceedings of the Second Workshop on Self-Stabilizing Systems, pp. 15.1–15.15 (1995)Google Scholar
  4. 4.
    Beauquier, J., Gradinariu, M., Johnen, C.: Memory space requirements for self-stabilizing leader election protocols. In: Proceedings of the Eighteenth Annual ACM Symposium on Principles of Distributed Computing, pp. 199–207. ACM (1999)Google Scholar
  5. 5.
    Beauquier, J., Gradinariu, M., Johnen, C.: Randomized self-stabilizing and space optimal leader election under arbitrary scheduler on rings. Distributed Computing 20, 75–93 (2007)CrossRefGoogle Scholar
  6. 6.
    Clarke, E.M.: Model Checking. In: Ramesh, S., Sivakumar, G. (eds.) FST TCS 1997. LNCS, vol. 1346, pp. 54–56. Springer, Heidelberg (1997)CrossRefGoogle Scholar
  7. 7.
    Deb, K., Pratap, A., Agarwal, S., Meyarivan, T.: A fast and elitist multiobjective genetic algorithm: NSGA-II. IEEE Transactions on Evolutionary Computation 6(2), 182–197 (2002)CrossRefGoogle Scholar
  8. 8.
    Dijkstra, E.W.: Self-stabilizing systems in spite of distributed control. Communications of the ACM 17, 643–644 (1974)zbMATHCrossRefGoogle Scholar
  9. 9.
    Dolev, S.: Self-stabilization. The MIT Press (2000)Google Scholar
  10. 10.
    Harman, M., Mansouri, S., Zhang, Y.: Search Based Software Engineering: A Comprehensive Analysis and Review of Trends Techniques and Applications. Department of Computer Science, Kings College London, Tech. Rep. TR-09-03 (2009)Google Scholar
  11. 11.
    Herman, T.: Probabilistic Self-stabilization. Information Processing Letters 35(2), 63–67 (1990)MathSciNetzbMATHCrossRefGoogle Scholar
  12. 12.
    Higham, L., Myers, S.: Self-stabilizing token circulation on anonymous message passing rings. In: OPODIS 1998 Second International Conference on Principles of Distributed Systems (1999)Google Scholar
  13. 13.
    Johnen, C.: Service Time Optimal Self-stabilizing Token Circulation Protocol on Anonymous Undirectional Rings. In: Proceedings of the 21st IEEE Symposium on Reliable Distributed Systems, pp. 80–89. IEEE (2002)Google Scholar
  14. 14.
    Johnson, C.G.: Genetic Programming with Fitness Based on Model Checking. In: Ebner, M., O’Neill, M., Ekárt, A., Vanneschi, L., Esparcia-Alcázar, A.I. (eds.) EuroGP 2007. LNCS, vol. 4445, pp. 114–124. Springer, Heidelberg (2007)CrossRefGoogle Scholar
  15. 15.
    Katz, G., Peled, D.: Genetic Programming and Model Checking: Synthesizing New Mutual Exclusion Algorithms. In: Cha, S(S.), Choi, J.-Y., Kim, M., Lee, I., Viswanathan, M. (eds.) ATVA 2008. LNCS, vol. 5311, pp. 33–47. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  16. 16.
    Katz, G., Peled, D.: Model Checking-Based Genetic Programming with an Application to Mutual Exclusion. In: Ramakrishnan, C.R., Rehof, J. (eds.) TACAS 2008. LNCS, vol. 4963, pp. 141–156. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  17. 17.
    Katz, G., Peled, D.: Synthesizing Solutions to the Leader Election Problem Using Model Checking and Genetic Programming. In: Namjoshi, K., Zeller, A., Ziv, A. (eds.) HVC 2009. LNCS, vol. 6405, pp. 117–132. Springer, Heidelberg (2011)CrossRefGoogle Scholar
  18. 18.
    Kwiatkowska, M., Norman, G., Parker, D.: PRISM: Probabilistic Symbolic Model Checker. In: Field, T., Harrison, P.G., Bradley, J., Harder, U. (eds.) TOOLS 2002. LNCS, vol. 2324, pp. 200–204. Springer, Heidelberg (2002)Google Scholar
  19. 19.
  20. 20.
    Motwani, R.: Randomized Algorithms. Cambridge University Press (1995)Google Scholar
  21. 21.
    Norman, G.: Analysing Randomized Distributed Algorithms. Validation of Stochastic Systems, pp. 384–418 (2004)Google Scholar
  22. 22.
    Rabin, M.: Probabilistic algorithms. Algorithms and Complexity 21 (1976)Google Scholar
  23. 23.
    Valmari, A.: The State Explosion Problem. In: Reisig, W., Rozenberg, G. (eds.) APN 1998. LNCS, vol. 1491, pp. 429–528. Springer, Heidelberg (1998)CrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2012

Authors and Affiliations

  • Alan G. Millard
    • 1
  • David R. White
    • 2
  • John A. Clark
    • 1
  1. 1.Department of Computer ScienceUniversity of YorkUK
  2. 2.School of Computing ScienceUniversity of GlasgowUK

Personalised recommendations