skip to main content
research-article

A survey of autonomic computing—degrees, models, and applications

Published:13 August 2008Publication History
Skip Abstract Section

Abstract

Autonomic Computing is a concept that brings together many fields of computing with the purpose of creating computing systems that self-manage. In its early days it was criticised as being a “hype topic” or a rebadging of some Multi Agent Systems work. In this survey, we hope to show that this was not indeed ‘hype’ and that, though it draws on much work already carried out by the Computer Science and Control communities, its innovation is strong and lies in its robust application to the specific self-management of computing systems. To this end, we first provide an introduction to the motivation and concepts of autonomic computing and describe some research that has been seen as seminal in influencing a large proportion of early work. Taking the components of an established reference model in turn, we discuss the works that have provided significant contributions to that area. We then look at larger scaled systems that compose autonomic systems illustrating the hierarchical nature of their architectures. Autonomicity is not a well defined subject and as such different systems adhere to different degrees of Autonomicity, therefore we cross-slice the body of work in terms of these degrees. From this we list the key applications of autonomic computing and discuss the research work that is missing and what we believe the community should be considering.

References

  1. Abramson, D., Buyya, R., and Giddy, J. 2002. A computational economy for grid computing and its implementation in the Nimrod-G resource broker. Future Gener. Comput. Syst. 18, 8, 1061--1074. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. Agarwala, S., Chen, Y., Milojicic, D., and Schwan, K. 2006. QMON: QoS- and utility-aware monitoring in enterprise systems. In Proceedings of the 3rd IEEE International Conference on Autonomic Computing (ICAC). Dublin, Ireland. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. Agrawal, D., Calo, S., Giles, J., Lee, K.-W., and Verma, D. 2005. Policy management for networked systems and applications. In Proceedings of the 9th IFIP/IEEE International Symposium on Integrated Network Management. 455--468.Google ScholarGoogle Scholar
  4. Ananthanarayanan, R., Mohania, M., and Gupta, A. 2005. Management of conflicting obligations in self-protecting policy-based systems. In Proceedings of the 2nd International Conference on Autonomic Computing (ICAC). Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. Anthony, R. 2006. Emergent graph colouring. In Engineering Emergence for Autonomic Systems (EEAS), 1st Annual International Workshop at the 3rd International Conference on Autonomic Computing (ICAC). 2--13.Google ScholarGoogle Scholar
  6. Badger, L. 2004. Self-regenerative systems (SRS) program abstract.www.tolerantsystems.org/SRSProgram.Google ScholarGoogle Scholar
  7. Bantz, D. F., Bisdikian, C., Challener, D., Karidis, J. P., Mastrianni, S., Mohindra, A., Shea, D. G., and Vanover, M. 2003. Autonomic personal computing. IBM Syst. J. 42, 1, 165--176. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. Barrett, R., Maglio, P. P., Kandogan, E., and Bailey, J. 2004. Usable autonomic computing systems: the administrator's perspective. In Proceedings of the 1st International Conference on Autonomic Computing (ICAC). 18--26. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. Batra, V. S., Bhattacharya, J., Chauhan, H., Gupta, A., Mohania, M., and Sharma, U. 2002. Policy driven data administration. In Proceedings of the 3rd International Workshop on Policies for Distributed Systems and Networks. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. Bennani, M. N. and Menasce, D. A. 2005. Resource allocation for autonomic data centers using analytic performance models. In Proceedings of the 2nd International Conference on Autonomic Computing (ICAC). 229--240. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. Bhatti, S. N. and Knight, G. 1999. Enabling QoS adaptation decisions for Internet applications. Comput. Netw. 31, 7, 669--692. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. Bhola, S., Astley, M., Saccone, R., and Ward, M. 2006. Utility-aware resource allocation in an event processing system. In Proceedings of 3rd IEEE International Conference on Autonomic Computing (ICAC). Dublin, Ireland, 55--64. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. Bigus, J. P., Schlosnagle, D. A., Pilgrim, J. R., III, W. N. M., and Diao, Y. 2002. ABLE: A toolkit for building multiagent autonomic systems. IBM Syst. J. 41, 3, 350--371. Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. Bougaev, A. A. 2005. Pattern recognition based tools enabling autonomic computing. In Proceedings of 2nd IEEE International Conference on Autonomic Computing (ICAC). 313--314. Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. Brodie, M., Ma, S., Lohman, G., Syeda-Mahmood, T., Mignet, L., and Modani, N. 2005. Quickly finding known software problems via automated symptom matching. In Proceedings of 2nd IEEE International Conference on Autonomic Computing (ICAC). Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. Burrell, J., Brooke, T., and Beckwith, R. 2004. Vineyard computing: Sensor networks in agricultural production. IEEE Pervasive Comput. 3, 1, 38--45. Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. Buyya, R., Abramson, D., and Giddy, J. 2000. Nimrod/G: An architecture of a resource management and scheduling system in a global computational grid. In High Performance Computing Asia (HPC). 283--289.Google ScholarGoogle Scholar
  18. Candea, G., Kiciman, E., Zhang, S., Keyani, P., and Fox, A. 2003. JAGR: An autonomous self-recovering application server. In Proceedings of the Autonomic Computing Workshop. 168--177.Google ScholarGoogle Scholar
  19. Chakeres, I. D. and Belding-Royer, E. M. 2004. Aodv routing protocol implementation design. In Proceedings of the 24th International Conference on Distributed Computing Systems Workshops (ICDCSW'04). IEEE Computer Society, USA, 698--703. Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. Chun, B. and Culler, D. 1999. Market-based proportional resource sharing for clusters. Tech. rep., University of California Berkeley. Google ScholarGoogle ScholarDigital LibraryDigital Library
  21. Cobleigh, J. M., Osterweil, L. J., Wise, A., and Lerner, B. S. 2002. Containment units: A hierarchically composable architecture for adaptive systems. SIGSOFT Softw. Engin. Notes 27, 6, 159--165. Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. Damianou, N., Dulay, N., Lupu, E., and Sloman, M. 1999. Ponder: A language for specifying security and management policies for distributed systems. Tech. rep., Imperial College London.Google ScholarGoogle Scholar
  23. Damianou, N., Dulay, N., Lupu, E., and Sloman, M. 2000. Ponder: A language for specifying security and management policies for distributed systems. Tech. rep., Imperial College London.Google ScholarGoogle Scholar
  24. Dashofy, E. M., van der Hoek, A., and Taylor, R. 2002a. An infrastructure for the rapid development of XML-based architecture description languages. In Proceedings of the 24th International Conference on Software Engineering (ICSE). Orlando, FL. Google ScholarGoogle ScholarDigital LibraryDigital Library
  25. Dashofy, E. M., van der Hoek, A., and Taylor, R. N. 2002b. Towards architecture-based self-healing systems. In Proceedings of the 1st Workshop on Self-Healing Systems. Google ScholarGoogle ScholarDigital LibraryDigital Library
  26. Diao, Y., Hellerstein, J. L., Parekh, S., Griffith, R., Kaiser, G., and Phung, D. 2005. Self-managing systems: A control theory foundation. In Proceedings of the 12th IEEE International Conference and Workshops on the Engineering of Computer-Based Systems (ECBS). Google ScholarGoogle ScholarDigital LibraryDigital Library
  27. Dowling, J., Curran, E., Cunningham, R., and Cahill, V. 2006. Building autonomic systems using collaborative reinforcement learning. Knowle. Engin. Rev. J. Special Issue on Autonomic Computing. Cambridge University Press. Google ScholarGoogle ScholarDigital LibraryDigital Library
  28. Femal, M. E. and Freeh, V. W. 2005. Boosting data center performance through non-uniform power allocation. In Proceedings of the 2nd International Conference on Autonomic Computing (ICAC). Google ScholarGoogle ScholarDigital LibraryDigital Library
  29. Ganek, A. and Friedrich, R. J. 2006. The road ahead—achieving wide-scale deployment of autonomic technologies. In Proceedings of the 3rd IEEE International Conference on Autonomic Computing. Dublin, Ireland.Google ScholarGoogle Scholar
  30. Garlan, D. and Schmerl, B. 2002a. Exploiting architectural design knowledge to support self-repairing systems. In Proceedings of the 14th International Conference on Software Engineering and Knowledge Engineering. Google ScholarGoogle ScholarDigital LibraryDigital Library
  31. Garlan, D. and Schmerl, B. 2002b. Model-based adaptation for self-healing systems. In Proceedings of the 1st Workshop on Self-Healing Systems. Google ScholarGoogle ScholarDigital LibraryDigital Library
  32. Garlan, D., Schmerl, B., and Chang, J. 2001. Using gauges for architecture-based monitoring and adaptation. In Working Conference on Complex and Dynamic Systems Architecture, Brisbane, Australia.Google ScholarGoogle Scholar
  33. Garlan, D., Schmerl, B., Cheng, S.-W., Sousa, J. P., Spitznagel, B., and Steenkiste, P. 2002. Using architectural style as a basis for system self-repair. In Proceedings of the 3rd Working IEEE/IFIP Conference on Software Architecture. Google ScholarGoogle ScholarDigital LibraryDigital Library
  34. Georgiadis, I., Magee, J., and Kramer, J. 2002. Self-organising software architectures for distributed systems. In Proceedings of the 1st Workshop on Self-Healing Systems. Google ScholarGoogle ScholarDigital LibraryDigital Library
  35. Gleizes, M.-P., Link-Pezet, J., and Glize, P. 2000. An adaptive multi-agent tool for electronic commerce. In Proeedings of the IEEE 9th International Workshops on Enabling Technologies: Infrastructure for Collaborative Enterprises (WET/ICE). Google ScholarGoogle ScholarDigital LibraryDigital Library
  36. Gross, P. N., Gupta, S., Kaiser, G. E., Kc, G. S., and Parekh, J. J. 2001. An active events model for systems monitoring. In Proceedings of the Working Conference on Complex and Dynamic Systems Architectures.Google ScholarGoogle Scholar
  37. Guo, H. 2003. A bayesian approach for autonomic algorithm selection. In Proceedings of the IJCAI Workshop on AI and Autonomic Computing: Developing a Research Agenda for Self-Managing Computer Systems. Acapulco, Mexico.Google ScholarGoogle Scholar
  38. Handsen, J. G., Christiansen, E., and Jul, E. 2006. The laundromat model for autonomic cluster computing. In Proceedings of 3rd IEEE International Conference on Autonomic Computing (ICAC). Google ScholarGoogle ScholarDigital LibraryDigital Library
  39. Heinzelman, W. R., Chandrakasan, A., and Balakrishnan, H. 2000. Energy-efficient communication protocol for wireless microsensor networks. In Proceedings of the 33rd Hawaii International Conference on System Sciences (HICSS'00), vol. 8. IEEE Computer Society, 8020. Google ScholarGoogle ScholarDigital LibraryDigital Library
  40. Hofmeister, C. and Purtilo, J. M. 1993. Dynamic reconfiguration in distributed systems: Adapting software modules for replacement. In Proceedings of the 13th International Conference on Distributed Computing Systems. 101--110.Google ScholarGoogle Scholar
  41. Horn, P. 2001. Autonomic computing: IBM's perspective on the state of information technology. http://researchweb.watson.ibm.com/autonomic.Google ScholarGoogle Scholar
  42. Huebscher, M. C. and McCann, J. A. 2004. Adaptive middleware for context-aware applications in smart-homes. In Proceedings of the 2nd Workshop on Middleware for Pervasive and Ad-Hoc Computing (MPAC). Google ScholarGoogle ScholarDigital LibraryDigital Library
  43. Huebscher, M. C. and McCann, J. A. 2005. Using real-time dependability in adaptive service selection. In Proceedings of the International Conference on Autonomic and Autonomous Systems (ICAS). 76--81. Google ScholarGoogle ScholarDigital LibraryDigital Library
  44. IBM. 2003. An architectural blueprint for autonomic computing. Tech. rep., IBM.Google ScholarGoogle Scholar
  45. Intanagonwiwat, C., Govindan, R., and Estrin, D. 2000. Directed diffusion: A scalable and robust communication paradigm for sensor networks. In Proceedings of Annual ACM/IEEE International Conference on Mobile Computing and Networking (MOBICOM). 56--67. Google ScholarGoogle ScholarDigital LibraryDigital Library
  46. Jackson, D. 2002. Alloy: a lightweight object modelling notation. Softw. Engin. Method. 11, 2, 256--290. Google ScholarGoogle ScholarDigital LibraryDigital Library
  47. Jennings, N. R. 2000. On agent-based software engineering. AI 117, 2, 277--296. Google ScholarGoogle ScholarDigital LibraryDigital Library
  48. Johnson, D. B., Maltz, D. A., and Broch, J. 2001. DSR: The dynamic source routing protocol for multihop wireless ad hoc networks. In Ad Hoc Networking, C. Perkins, Ed. Addison-Wesley, Chapter 5, 139--172. Google ScholarGoogle ScholarDigital LibraryDigital Library
  49. Kahn, J. M., Katz, R. H., and Pister, K. S. J. 1999. Next century challenges: Mobile networking for “smart dust”. In Proceedings of the 5th annual ACM/IEEE International Conference on Mobile Computing and Networking (MOBICOM'99). ACM Press, New York, NY, 271--278. Google ScholarGoogle ScholarDigital LibraryDigital Library
  50. Kaiser, G., Gross, P., Kc, G., Parekh, J., and Valetto, G. 2002. An approach to autonomizing legacy systems. In Proceedings of the Workshop on Self-Healing, Adaptive and Self-MANaged Systems.Google ScholarGoogle Scholar
  51. Kaiser, G., Parekh, J., Gross, P., and Valetto, G. 2003. Kinesthetics eXtreme: An external infrastructure for monitoring distributed legacy systems. In Proceedings of the Autonomic Computing Workshop at the 5th Annual International Workshop on Active Middleware Services (AMS).Google ScholarGoogle Scholar
  52. Kaiser, G. and Valetto, G. 2000. Ravages of time: Synchronized multimedia for internet-wide process-centered software engineering environments. In Proceedings of the 3rd ICSE Workshop on Software Engineering over the Internet.Google ScholarGoogle Scholar
  53. Kamoda, H., Yamaoka, M., Matsuda, S., Broda, K., and Sloman, M. 2005. Policy conflict analysis using free variable tableaux for access control in web services environments. In Proceedings of the Policy Management for the Web Workshop at the 14th International World Wide Web Conference (WWW).Google ScholarGoogle Scholar
  54. Kandasamy, N., Abdelwahed, S., and Hayes, J. P. 2004. Self-optimization in computer systems via online control: Application to power management. In Proceedings of the 2nd International Conference on Autonomic Computing (ICAC). 54--61. Google ScholarGoogle ScholarDigital LibraryDigital Library
  55. Karl, H. and Willig, A. 2005. Protocols and Architectures for Wireless Sensor Networks. Wiley. Google ScholarGoogle ScholarDigital LibraryDigital Library
  56. Kenyon, H. S. 2001. Battlefield cognizance tool points to future. SIGNAL Mag.Google ScholarGoogle Scholar
  57. Kephart, J. O. and Chess, D. M. 2003. The vision of autonomic computing. Computer 36, 1, 41--50. Google ScholarGoogle ScholarDigital LibraryDigital Library
  58. Kephart, J. O. and Walsh, W. E. 2004. An artificial intelligence perspective on autonomic computing policies. In Proceedings of the 5th IEEE International Workshop on Policies for Distributed Systems and Networks. 3--12. Google ScholarGoogle ScholarDigital LibraryDigital Library
  59. Khargharia, B., Hariri, S., and Yousif, M. 2006. Autonomic power and performance management for computing systems. In Proceedings of 3rd IEEE International Conference on Autonomic Computing (ICAC). Dublin, Ireland, 145--154. Google ScholarGoogle ScholarDigital LibraryDigital Library
  60. Kon, F., Campbell, R. H., Mickunas, M. D., Nahrstedt, K., and Ballesteros, F. J. 2000. 2K: A distributed operating system for dynamic heterogeneous environments. In Proceedings of the 9th IEEE International Symposium on High Performance Distributed Computing. 201--210. Google ScholarGoogle ScholarDigital LibraryDigital Library
  61. Kumar, S. and Cohen, P. R. 2000. Towards a fault-tolerant multi-agent system architecture. In Proceedings of the 4th International Conference on Autonomous Agents. Google ScholarGoogle ScholarDigital LibraryDigital Library
  62. Lippman, A. 1999. Video coding for multiple target audiences. In Proceedings of the IS&T/SPIE Conference on Visual Communications and Image Processing. K. Aizawa, R. L. Stevenson, and Y.-Q. Zhang, Eds. 780--784.Google ScholarGoogle Scholar
  63. Littman, M., Nguyen, T., and Hirsh, H. 2003. A model of cost-sensitive fault mediation. In Proceedings of the IJCAI Workshop on AI and Autonomic Computing: Developing a Research Agenda for Self-Managing Computer Systems. Acapulco, Mexico.Google ScholarGoogle Scholar
  64. Littman, M. L., Ravi, N., Fenson, E., and Howard, R. 2004. Reinforcement learning for autonomic network repair. In Proceedings of the International Conference on Autonomic Computing (ICAC). 284--285. Google ScholarGoogle ScholarDigital LibraryDigital Library
  65. Lobo, J., Bhatia, R., and Naqvi, S. 1999. A policy description language. In AAAI/IAAI Proceedings of the 16th National Conference on Artificial Intelligence and the 11th Innovative Applications of Artificial Intelligence Conference. American Association for Artificial Intelligence, Menlo Park, CA, 291--298. Google ScholarGoogle ScholarDigital LibraryDigital Library
  66. Lupu, E. and Sloman, M. 1997. Conflict analysis for management policies. In Proceedings of the 5th IFIP/IEEE International Symposium on Integrated Network Management. 430--443. Google ScholarGoogle ScholarDigital LibraryDigital Library
  67. Lupu, E. and Sloman, M. 1999. Conflicts in policy-based distributed systems management. IEEE Trans. Softw. Engin. Special Issue on Inconsistency Management 25, 6, 852--869. Google ScholarGoogle ScholarDigital LibraryDigital Library
  68. Lutfiyya, H., Molenkamp, G., Katchabaw, M., and Bauer, M. A. 2001. Issues in managing soft qos requirements in distributed systems using a policy-based framework. In Proceedings of the International Workshop on Policies for Distributed Systems and Networks (POLICY'01). Springer-Verlag, 185--201. Google ScholarGoogle ScholarDigital LibraryDigital Library
  69. Lymberopoulos, L., Lupu, E., and Sloman, M. 2003. An adaptive policy-based framework for network services management. J. Netw. Syst. Manag. 11, (Special Issue on Policy-based Management). Google ScholarGoogle ScholarDigital LibraryDigital Library
  70. Magee, J., Dulay, N., Eisenbach, S., and Kramer, J. 1995. Specifying distributed software architectures. In Proceedings of the 5th European Software Engineering Conference. Springer-Verlag, 137--153. Google ScholarGoogle ScholarDigital LibraryDigital Library
  71. Magee, J. and Sloman, M. 1989. Constructing distributed systems in conic. IEEE Trans. Softw. Engin. 15, 6, 663--675. Google ScholarGoogle ScholarDigital LibraryDigital Library
  72. Mainsah, E. 2002. Autonomic computing: The next era of computing. Electron. Comm. Engin. J. 14, 1, 2--3.Google ScholarGoogle ScholarCross RefCross Ref
  73. Manoel, E., Nielsen, M. J., Salahshour, A., and Sampath, S. 2005. Problem Determination Using Self-Managing Autonomic Technology. IBM Redbooks.Google ScholarGoogle Scholar
  74. Markl, V., Lohman, G. M., and Raman, V. 2003. LEO: An autonomic query optimizer for DB2. IBM Syst. J. 42, 1, 98--106. Google ScholarGoogle ScholarDigital LibraryDigital Library
  75. McCann, J. A. and Crane, J. S. 1998. Kendra: Internet distribution and delivery system: An introductory paper. In Proceedings of the SCS EuroMedia Conference, Leicester, UK, A. Verbraeck and M. Al-Akaidi, Eds. Society for Computer Simulation International, 134--140.Google ScholarGoogle Scholar
  76. McCann, J. A., Huebscher, M., and A., H. 2006. Context as autonomic intelligence in a ubiquitous computing environment. Int. J. Intern. Protocol Tech. Special Edition on Autonomic Computing. Google ScholarGoogle ScholarDigital LibraryDigital Library
  77. McCann, J. A., Navarra, A., and Papadopoulos, A. 2005. Connectionless probabilistic (CoP) routing: An efficient protocol for mobile wireless ad-hoc sensor networks. In Proceedings of 24th IEEE International Performance, Computing and Communications Conference. Phoenix, AZ.Google ScholarGoogle Scholar
  78. Melcher, B. and Mitchell, B. 2004. Towards an autonomic framework: Self-configuring network services and developing autonomic applications. Intel Techn. J. 8, 4, 279--290.Google ScholarGoogle Scholar
  79. Moore, J., Chase, J., and Ranganathan, P. 2006. Weatherman: Automated, online, and predictive thermal mapping and management for data centers. In Proceedings of the 2nd International Conference on Autonomic Computing (ICAC). Dublin, Ireland, 155--164. Google ScholarGoogle ScholarDigital LibraryDigital Library
  80. Muscettola, N., Nayak, P. P., Pell, B., and Williams, B. C. 1998. Remote agent: To boldly go where no AI system has gone before. AI 103, 1-2, 5--47. Google ScholarGoogle ScholarDigital LibraryDigital Library
  81. Nisan, N., London, S., Regev, O., and Camiel, N. 1998. Globally distributed computation over the Internet—the POPCORN project. In Proceedings of the the 18th International Conference on Distributed Computing Systems (ICDCS'98). IEEE Computer Society, 592. Google ScholarGoogle ScholarDigital LibraryDigital Library
  82. Oreizy, P., Gorlick, M., Taylor, R., Heimbigner, D., Johnson, G., Medvidovic, N., Quilici, A., Rosenblum, D., and Wolf, A. 1999. An architecture-based approach to self-adaptive software. IEEE Intell. Syst. 14, 3, 54--62. Google ScholarGoogle ScholarDigital LibraryDigital Library
  83. Oreizy, P., Medvidovic, N., and Taylor, R. N. 1998. Architecture-based runtime software evolution. In Proceedings of the 20th International Conference on Software Engineering (ICSE'98). IEEE Computer Society, 177--186. Google ScholarGoogle ScholarDigital LibraryDigital Library
  84. Osogami, T., Harchol-Balter, M., and Scheller-Wolf, A. 2005. Analysis of cycle stealing with switching times and thresholds. Perform. Eval. 61, 4, 347--369. Google ScholarGoogle ScholarDigital LibraryDigital Library
  85. Parekh, J., Kaiser, G., Gross, P., and Valetto, G. 2003. Retrofitting autonomic capabilities onto legacy systems. Tech. rep. CUCS-026-03, Columbia University.Google ScholarGoogle Scholar
  86. Paulson, L. D. 2002. Computer system, heal thyself. Computer 35, 8, 20--22. Google ScholarGoogle ScholarDigital LibraryDigital Library
  87. Perkins, C. E. and Bhagwat, P. 1994. Highly dynamic destination-sequenced distance-vector routing (dsdv) for mobile computers. In Proceedings of the Conference on Communications Architectures, Protocols and Applications (SIGCOMM'94). ACM Press, New York, NY, 234--244. Google ScholarGoogle ScholarDigital LibraryDigital Library
  88. Ponnappan, A., Yang, L., Pillai, R., and Braun, P. 2002. A policy based QoS management system for the intserv/diffserv based internet. In Proceedings of the 3rd International Workshop on Policies for Distributed Systems and Networks. 159--168. Google ScholarGoogle ScholarDigital LibraryDigital Library
  89. Roblee, C., Berk, V., and Cybenko, G. 2005. Implementing large-scale autonomic server monitoring using process query systems. In Proceedings of the 2nd International Conference on Autonomic Computing (ICAC). 123--133. Google ScholarGoogle ScholarDigital LibraryDigital Library
  90. Russel, S. and Norvig, P. 2003. Artificial Intelligence: A Modern Approach 2nd Ed. Prentice Hall. Google ScholarGoogle ScholarDigital LibraryDigital Library
  91. Rutherford, M. J., Anderson, K., Carzaniga, A., Heimbigner, D., and Wolf, A. L. 2002. Reconfiguration in the Enterprise Javabean component model. In Proceedings of the IFIP/ACM Working Conference on Component Deployment, Berlin, Germany. 67--81. Google ScholarGoogle ScholarDigital LibraryDigital Library
  92. Sharma, V., Thomas, A., Abdelzaher, T., Skadron, K., and Lu, Z. 2003. Power-aware qos management in Web servers. In Proceedings of the 24th IEEE International Real-Time Systems Symposium (RTSS'03). IEEE Computer Society, 63. Google ScholarGoogle ScholarDigital LibraryDigital Library
  93. Shivam, P., Babu, S., and Chase, J. 2006. Learning application models for utility resource planning. In Proceedings of 3rd IEEE International Conference on Autonomic Computing (ICAC). Dublin, Ireland, 255--264. Google ScholarGoogle ScholarDigital LibraryDigital Library
  94. Sloman, M. 1994. Policy driven management for distributed systems. J. Netw. Syst. Manag. 2, 4, 333--360.Google ScholarGoogle ScholarCross RefCross Ref
  95. Sterritt, R., Smyth, B., and Bradley, M. 2005. PACT: Personal autonomic computing tools. In Proceedings of the 12th IEEE International Conference and Workshops on the Engineering of Computer-Based Systems (ECBS). IEEE Computer Society, 519--527. Google ScholarGoogle ScholarDigital LibraryDigital Library
  96. Strickland, J. W., Freeh, V. W., Ma, X., and Vazhkudai, S. S. 2005. Governor: Autonomic throttling for aggressive idle resource scavenging. In Proceedings of the 2nd International Conference on Autonomic Computing (ICAC). Google ScholarGoogle ScholarDigital LibraryDigital Library
  97. Strowes, S., Badr, N., Dulay, N., Heeps, S., Lupu, E., Sloman, M., and Sventek, J. 2006. An event service supporting autonomic management of ubiquitous systems for e-health. In Proceedings of International Workshop on Distributed Event-Based Systems. Google ScholarGoogle ScholarDigital LibraryDigital Library
  98. Sutton, R. S. and Barto, A. G. 1998. Reinforcement Learning: An Introduction. MIT Press, Cambridge, MA. Google ScholarGoogle ScholarDigital LibraryDigital Library
  99. Tesauro, G., Das, R., Jong, N., and Bennani, M. 2006. A hybrid reinforcement learning approach to autonomic resource allocation. In Proceedings of 3rd IEEE International Conference on Autonomic Computing (ICAC). Dublin, Ireland, 65--73. Google ScholarGoogle ScholarDigital LibraryDigital Library
  100. Thomson, G., Stevenson, G., Terzis, S., and Nixon, P. 2006. A self-managing infrastructure for ad-hoc situation determination. In 4th International Conference on Smart Homes and Health Telematics (ICOST'06). IOS Press.Google ScholarGoogle Scholar
  101. Urgaonkar, B., Shenoy, P., Chandra, A., and Goyal, P. 2005. Dynamic provisioning of multi-tier Internet applications. In Proceedings of the 2nd International Conference on Autonomic Computing (ICAC). 217--228. Google ScholarGoogle ScholarDigital LibraryDigital Library
  102. Valetto, G. and Kaiser, G. 2002. A case study in software adaptation. In Proceedings of the 1st Workshop on Self-Healing Systems. 73--78. Google ScholarGoogle ScholarDigital LibraryDigital Library
  103. Valetto, G. and Kaiser, G. 2003. Using process technology to control and coordinate software adaptation. In Proceedings of the 25th International Conference on Software Engineering (ICSE'03). IEEE Computer Society, 262--272. Google ScholarGoogle ScholarDigital LibraryDigital Library
  104. Waldspurger, C. A., Hogg, T., Huberman, B. A., Kephart, J. O., and Stornetta, W. 1992. Spawn: A distributed computational economy. IEEE Trans. Softw. Engin. 18, 103--117. Google ScholarGoogle ScholarDigital LibraryDigital Library
  105. Walsh, W. E., Tesauro, G., Kephart, J. O., and Das, R. 2004. Utility functions in autonomic systems. In Proceedings of the 1st International Conference on Autonomic Computing (ICAC'04). 70--77. Google ScholarGoogle ScholarDigital LibraryDigital Library
  106. Weiser, M. 1991. The computer for the 21st century. Scientific American 265, 3, 94--104.Google ScholarGoogle ScholarDigital LibraryDigital Library
  107. Whiteson, S. and Stone, P. 2006. Evolutionary function approximation for reinforcement learning. J. Mach. Learn. Resea. 7, 877--917. Google ScholarGoogle ScholarDigital LibraryDigital Library
  108. Wieselthier, J. E., Nguyen, G. D., and Ephremides, A. 2002. Energy-efficient broadcast and multicast trees in wireless networks. Mob. Netw. Appl. 7, 6, 481--492. Google ScholarGoogle ScholarDigital LibraryDigital Library
  109. Wildstrom, J., Stone, P., Witchel, E., Mooney, R., and Dahlin, M. 2005. Towards self-configuring hardware for distributed computer systems. In Proceedings of the 2nd International Conference on Autonomic Computing (ICAC). 241--249. Google ScholarGoogle ScholarDigital LibraryDigital Library
  110. Wise, A., Cass, A. G., Lerner, B. S., Call, E. K. M., Osterweil, L. J., and Jr., S. M. S. 2000. Using Little-JIL to coordinate agents in software engineering. In Proceedings of the Automated Software Engineering Conference (ASE'00). Google ScholarGoogle ScholarDigital LibraryDigital Library
  111. Wolf, A., Heimbigner, D., Knight, J., Devanbu, P., Gertz, M., and Carzaniga, A. 2000. Bend, don't break: Using reconfiguration to achieve survivability. In Proceedings of the 3rd Information Survivability Workshop.Google ScholarGoogle Scholar
  112. Wooldridge, M. and Jennings, N. 1995. Intelligent agents: Theory and practice. Knowl. Engin. Rev. 10, 2, 115--152.Google ScholarGoogle ScholarCross RefCross Ref
  113. Xu, J., Adabala, S., and Fortes, J. A. B. 2005. Towards autonomic virtual applications in the in-vigo system. In Proceedings of the 2nd International Conference on Autonomic Computing (ICAC). Google ScholarGoogle ScholarDigital LibraryDigital Library
  114. Zenmyo, T., Yoshida, H., and Kimura, T. 2006. A self-healing technique based on encapsulated operation knowledge. In Proceedings of 3rd IEEE International Conference on Autonomic Computing (ICAC). Dublin, Ireland, 25--32. Google ScholarGoogle ScholarDigital LibraryDigital Library
  115. Zhang, J. and Figueiredo, R. 2006. Autonomic feature selection for application classification. In Proceedings of the International Conference on Autonomic Computing (ICAC). Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. A survey of autonomic computing—degrees, models, and applications

    Recommendations

    Reviews

    Franz J Kurfess

    Because my background is in artificial intelligence, I am quite familiar with the notion of autonomous systems; however, I had only a superficial understanding of autonomic computing. My curiosity was driven, to some degree, by the similarity of the two terms, but also by a desire to learn more about how systems can be designed to manage themselves better, thus decreasing the tedious aspects of system administration. Autonomic computing relies on autonomicity, the property of a self-managing system. Its use was inspired by biology, where the autonomic nervous system controls bodily functions not involving attention, such as unconscious reflexes. While there is some similarity to autonomy, which is used to describe autonomous systems, autonomicity puts more emphasis on the behavior of a system in an environment. In the context of intelligent agents [1], important aspects of an autonomous agent are its ability to complete a task without significant interference or guidance from a user or developer, and the ability of the agent to acquire its knowledge on its own, rather than having it implanted by the developer as prior knowledge. So, while both aspects rely on the ability of the system or agent to act independently, without outside supervision, autonomicity concentrates on activities that are internal to the system, whereas autonomy emphasizes the behavior of an agent in an environment. Huebscher and McCann give an excellent overview of the main issues in the relatively new area of autonomic computing, and trace the history of the field by discussing some of the influential approaches and systems. This is followed by a discussion of the main properties of self-management and a review of a reference model for autonomic control loops?the monitor, analyze, plan, execute, knowledge (MAPE-K) loop. The paper then addresses the applicability to multi-tier systems, such as e-commerce sites incorporating a Web server, an application server, and a database tier. Since autonomicity is not an all-or-nothing concept, different degrees of autonomicity can be observed. Huebscher and McCann analyze an approach that identifies different levels, ranging from basic (performed by humans) to fully autonomic (human intervention is only needed in response to changing business needs). They conclude that this approach is too narrow and the distinction between levels too vague. As an alternative, they suggest four elements of autonomicity: support, core, autonomous, and autonomic. While I agree with their critique of the level-based approach, I did not find the elements-based approach very helpful, either. This is enhanced by some confusion in the terminology: in the introductory paragraph, where they present their element-based approach, they specifically point out that these elements are not "levels"; yet, in the description of the autonomic element, they repeatedly refer to it as a level. This is followed by an overview of emerging applications of autonomic computing, with power management, distributed computing, and ubiquitous computing as the most prominent ones. Overall, the paper provides a good introduction to the topic of autonomic computing for readers with no or little familiarity with the topic. I would have liked to see more on fundamental issues such as limitations on self-observation and self-analysis, or the gap between the mental model of humans, textual descriptions, specifications, and implementations of systems. But this may well be a reflection of the relatively immature state of the field itself and not so much an omission by the authors. Online Computing Reviews Service

    Access critical reviews of Computing literature here

    Become a reviewer for Computing Reviews.

    Comments

    Login options

    Check if you have access through your login credentials or your institution to get full access on this article.

    Sign in

    Full Access

    • Published in

      cover image ACM Computing Surveys
      ACM Computing Surveys  Volume 40, Issue 3
      August 2008
      155 pages
      ISSN:0360-0300
      EISSN:1557-7341
      DOI:10.1145/1380584
      Issue’s Table of Contents

      Copyright © 2008 ACM

      Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

      Publisher

      Association for Computing Machinery

      New York, NY, United States

      Publication History

      • Published: 13 August 2008
      • Accepted: 1 October 2007
      • Revised: 1 June 2007
      • Received: 1 July 2006
      Published in csur Volume 40, Issue 3

      Permissions

      Request permissions about this article.

      Request Permissions

      Check for updates

      Qualifiers

      • research-article
      • Research
      • Refereed

    PDF Format

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader