Abstract
Increasingly, applications need to be able to self-reconfigure in response to changing requirements and environmental conditions. Autonomic computing has been proposed as a means for automating software maintenance tasks. As the complexity of adaptive and autonomic systems grows, designing and managing the set of reconfiguration rules becomes increasingly challenging and may produce inconsistencies. This paper proposes an approach to leverage genetic algorithms in the decision-making process of an autonomic system. This approach enables a system to dynamically evolve target reconfigurations at run time that balance tradeoffs between functional and non-functional requirements in response to changing requirements and environmental conditions. A key feature of this approach is incorporating system and environmental monitoring information into the genetic algorithm such that specific changes in the environment automatically drive the evolutionary process towards new viable solutions. We have applied this genetic-algorithm based approach to the dynamic reconfiguration of a collection of remote data mirrors, demonstrating an effective decision-making method for diffusing data and minimizing operational costs while maximizing data reliability and network performance, even in the presence of link failures.
Similar content being viewed by others
References
Alvarez, G.A., Borowsky, E., Go, S., Romer, T.H., Becker-Szendy, R., Golding, R., Merchant, A., Spasojevic, M., Veitch, A., Wilkes, J.: Minerva: an automated resource provisioning tool for large-scale storage systems. ACM Trans. Comput. Syst. 19(4), 483–518 (2001)
Andersen, D., Balakrishnan, H., Kaashoek, F., Morris, R.: Resilient overlay networks. ACM SIGOPS Oper. Syst. Rev. 5, 131–145 (2001)
Cheng, S.-W., Garlan, D., Schmerl, B.: Architecture-based self-adaptation in the presence of multiple objectives. In: Proceedings of the 2006 International Workshop on Self-Adaptation and Self-Managing Systems, pp. 2–8, Shanghai, China (2006). ACM
Deb, K.: Multi-Objective Optimization Using Evolutionary Algorithms. Wiley, New York (2001)
EagleRock2001: Online survey results: 2001 cost of downtime. Eagle Rock Alliance Ltd. http://contingencyplanningresearch.com/2001Survey.pdf, August 2001
Fabregat, R., Donoso, Y., Baran, B., Solano, F., Marzo, J.L.: Multi-objective optimization scheme for multicast flows: a survey, a model and a MOEA solution. In: Proceedings of the 3rd International IFIP/ACM Latin American Conference on Networking, pp. 73–86, New York, NY, USA (2005). ACM
Garlan, D., Cheng, S.-W., Huang, A.-C., Schmerl, B., Steenkiste, P.: Rainbow: architecture-based self-adaptation with reusable infrastructure. Computer 37(10), 46–54 (2004)
Goldsby, H.J., Cheng, B.H.C.: Automatically generating behavioral models of adaptive systems to address uncertainty. In: Proceedings of the 11th International Conference on Model Driven Engineering Languages and Systems, pp. 568–583. Springer, Berlin (2008). (Selected as one of the Best Papers in the Conference)
Goldsby, H.J., Cheng, B.H.C., McKinley, P.K., Knoester, D.B., Ofria, C.A.: Digital evolution of behavioral models for autonomic systems. In: Proceedings of the Fifth IEEE International Conference on Autonomic Computing, pp. 87–96 (Best Paper Award), Chicago, Illinois (2008). IEEE Computer Society
Holland, J.H.: Adaptation in Natural and Artificial Systems. MIT, Cambridge (1992)
Ji, M., Veitch, A., Wilkes, J.: Seneca: Remote mirroring done write. In: USENIX 2003 Annual Technical Conference, pp. 253–268, Berkeley, CA, USA, June 2003. USENIX Association
Cox, L.A. Jr, Davis, L., Lu, L.L., Orvosh, D., Sun, X., Sirovica, D.: Reducing costs of backhaul networks for pcs networks using genetic algorithms. J. Heuristics 2(3), 201–216 (1996)
Kaiser, G., Gross, P., Kc, G., Parekh, J.: An approach to autonomizing legacy systems. In: Proceedings of the First Workshop on Self-Healing, Adaptive, and Self-MANaged Systems (2002)
Keeton, K., Beyer, D., Brau, E., Merchant, A.: On the road to recovery: Restoring data after disasters. SIGOPS Oper. Syst. Rev. 40(4), 235–248 (2006)
Keeton, K., Santos, C., Beyer, D., Chase, J., Wilkes, J.: Designing for disasters. In: Proceedings of the 3rd USENIX Conference on File and Storage Technologies, pp. 59–62, Berkeley, CA, USA (2004). USENIX Association
Keeton, K., Merchant, A.: Challenges in managing dependable data systems. SIGMETRICS Perform. Eval. Rev. 33(4), 4–10 (2006)
Kephart, J.O., Chess, D.M.: The vision of autonomic computing. Computer 36(1), 41–50 (2003)
Khanna, R., Liu, H., Chen, H.-H.: Dynamic optimization of secure mobile sensor networks: a genetic algorithm. In: Proceedings of the IEEE International Conference on Communications, pp. 3413–3418, June 2007
Knoester, D.B., Ramirez, A.J., Cheng, B.H.C., McKinley, P.K.: Evolution of robust data distribution among digital organisms. In Proceedings of the 11th Annual Conference on Genetic and Evolutionary Computation (GECCO ’09), pp. 137–144 (Nominated for Best Paper), Montreal, Canada, July 2009
Koza, J.R.: Genetic Programming: On the Programming of Computers by Means of Natural Selection (Complex Adaptive Systems). MIT, Cambridge (1992)
Loukopoulos, T., Ahmad, I.: Static and adaptive distributed data replication using genetic algorithms. J. Parallel Distributed Comput. 64(11), 1270–1285 (2004)
Lu, J., Cheng, W.: A genetic-algorithm-based routing optimization scheme for overlay network. In: Proceedings of the 3rd International Conference on Natural Computation, pp. 421–425, Washington, DC, USA, 2007. IEEE Computer Society Press
McCanne, S., Floyd, S.: The lbnl network simulator. Software on-line: http://www.isi.edu/nsnam (1997)
McKinley, P.K., Sadjadi, S.M., Kasten, E.P., Cheng, B.H.C., Composing adaptive software. Computer 37(7), 56–64 (2004)
Montana, D., Hussain, T., Saxena, T.: Adaptive reconfiguration of data networks using genetic algorithms. In: Proceedings of the Genetic and Evolutionary Computation Conference, pp. 1141–1149, San Francisco, CA, USA (2002)
Newman, H.B., Legrand, I.C., Galvez, P., Voicu, R., Cistoiu, C.: MonALISA: A distributed monitoring service architecture. In: Proceedings of the 2003 Conference for Computing in High Energy and Nuclear Physics, March 2003
Ramirez, A.J.: Design patterns for developing dynamically adaptive systems. Master’s thesis, Michigan State University, East Lansing, MI 48823 (2008)
Ramirez, A.J., Knoester, D.B., Cheng, B.H.C., McKinley, P.K.: Applying genetic algorithms to decision making in autonomic computing systems. In: Proceedings of the Sixth International Conference on Autonomic Computing (ICAC’09), pp. 97–106 (Best Paper Award), Barcelona, Spain, June 2009
Sadjadi, S.M., McKinley, P.K.: ACT: an adaptive CORBA template to support unanticipated adaptation. In: Proceedings of the IEEE International Conference on Distributed Computing Systems, pp. 74–83 (2004)
SEC2002: Summary of “lessons learned” from events of September 11 and implications for business continuity. http://www.sec.gov/divisions/marketreg/lessonslearned.htm, February 2002
Tang, C., McKinley, P.K.: A distributed approach to topology-aware overlay path monitoring. In: Proceedings of the 24th International Conference on Distributed Computing, pp. 122–131, Tokyo, Japan (2004). IEEE Computer Society
Tseng, S.-Y., Huang, Y.-M., Lin, C.-C.: Genetic algorithm for delay- and degree-constrained multimedia broadcasting on overlay networks. Comput. Commun. 29(17), 3625–3632 (2006)
Walsh, W.E., Tesauro, G., Kephart, J.O., Das, R.: Utility functions in autonomic systems. In: Proceedings of the First IEEE International Conference on Autonomic Computing, pp. 70–77, New York, NY, USA (2004). IEEE Computer Society
Wang, D., Gan, J., Wang, D.: Heuristic genetic algorithm for multicast overlay network link selection. In: Proceedings of the Second International Conference on Genetic and Evolutionary Computing, pp. 38–41, September 2008
Witty, R., Scott, D.: Disaster recovery plans and systems are essential. Technical Report FT-14-5021, Gartner Research, September 2001
Yang, Z., Cheng, B.H.C., Stirewalt, R.E.K., Sowell, J., Sadjadi, S.M., McKinley, P.K.: An aspect-oriented approach to dynamic adaptation. In: Proceedings of the First Workshop on Self-Healing Systems, pp. 85–92, New York, NY, USA (2002). ACM
Zhang, J., Cheng, B.H.C.: Model-based development of dynamically adaptive software. In: Proceedings of the 28th International Conference on Software Engineering, pp. 371–380, New York, NY, USA (2006). ACM (Distinguished Paper Award)
Zhang, J., Goldsby, H.J., Cheng, B.H.C.: Modular verification of dynamically adaptive systems. In: Proceedings of the Eighth International Conference on Aspect-Oriented Software Development (2009)
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
About this article
Cite this article
Ramirez, A.J., Knoester, D.B., Cheng, B.H.C. et al. Plato: a genetic algorithm approach to run-time reconfiguration in autonomic computing systems. Cluster Comput 14, 229–244 (2011). https://doi.org/10.1007/s10586-010-0122-y
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10586-010-0122-y