Abstract
Computing systems are becoming more and more dynamically reconfigurable or adaptive, to be flexible w.r.t. their environment and to automate their administration. Autonomic computing proposes a general structure of feedback loop to take this into account. In this paper, we are particularly interested in approaches where this feedback loop is considered as a case of control loop where techniques stemming from Control Theory can be used to design efficient safe, and predictable controllers. This approach is emerging, with separate and dispersed effort, in different areas of the field of reconfigurable or adaptive computing, at software or architecture level. This paper surveys these approaches from the point of view of control theory techniques, continuous and discrete (supervisory), in their application to the feedback control of computing systems, and proposes detailed interpretations of feedback control loops as MAPE-K loop, illustrated with case studies.
This work has been partially supported by CNRS under the PEPS Rupture Grant for the project API: https://team.inria.fr/ctrl-a/members/eric-rutten/peps-api and by the LabEx PERSYVAL-Lab (ANR-11-LABX-0025-01).
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
References
Abdelzaher, T.: Research challenges in feedback computing: an interdisciplinary agenda. In: 8th International Workshop on Feedback Computing, San Jose, California (2013)
Aboubekr, A.S., Gwenaël, D., Pissard-Gibollet, R., Rutten, É., Simon, D.: Automatic generation of discrete handlers of real-time continuous control tasks. In: IFAC World Congress 2011, Milano, Italie, August 2011
Abrial, J.-R.: The B-book: Assigning Programs to Meanings. Cambridge University Press, New York (1996)
Akesson, K.: Supremica. http://www.supremica.org/
Albus, J.S., Barbera, A.J., Nagel, R.N.: Theory and practice of hierarchical control. National Bureau of Standards (1980)
Altisen, K., Clodic, A., Maraninchi, F., Rutten, E.: Using controller-synthesis techniques to build property-enforcing layers. In: Degano, P. (ed.) ESOP 2003. LNCS, vol. 2618, pp. 174–188. Springer, Heidelberg (2003). https://doi.org/10.1007/3-540-36575-3_13
Årzén, K.-E., Robertsson, A., Henriksson, D., Johansson, M., Hjalmarsson, H., Johansson, K.H.: Conclusions of the ARTIST2 roadmap on control of computing systems. ACM SIGBED (Special Interest Group on Embedded Systems) Rev. 3(3), 11–20 (2006)
Åström, K.J., Murray, R.M.: Feedback Systems: An Introduction for Scientists and Engineers, 2nd edn. Princeton University Press, Princeton (2015). http://www.cds.caltech.edu/~murray/amwiki/index.php/Main_Page
Åström, K.J., Wittenmark, B.: Computer-Controlled Systems. Information and System Sciences Series, 3rd edn. Prentice Hall, Upper Saddle River (1997)
Auer, A., Dingel, J., Rudie, K.: Concurrency control generation for dynamic threads using discrete-event systems. In: 2009 47th Annual Allerton Conference on Communication, Control, and Computing, Allerton 2009, 30 September–2 October 2009, pp. 927–934 (2009)
Benveniste, A., Caspi, P., Edwards, S., Halbwachs, N., Le Guernic, P., de Simone, R.: The synchronous languages twelve years later. Proc. IEEE 91(1), 64–83 (2003). Special issue on embedded systems
Berthier, N., Marchand, H.: Discrete controller synthesis for infinite state systems with ReaX. In: 12th International Workshop on Discrete Event Systems, WODES 2014. IFAC, May 2014
Bloem, R., Jobstmann, B., Piterman, N., Pnueli, A., Saar, Y.: Synthesis of reactive(1) designs. J. Comput. Syst. Sci. 78(3), 911–938 (2012)
Bodik, R., Chandra, S., Galenson, J., Kimelman, D., Tung, N., Barman, S., Rodarmor, C.: Programming with angelic nondeterminism. In: Principles of Programming Languages, POPL, pp. 339–352, January 2010
Bonakdarpour, B., Kulkarni, S.S.: On the complexity of synthesizing relaxed and graceful bounded-time 2-phase recovery. In: Cavalcanti, A., Dams, D.R. (eds.) FM 2009. LNCS, vol. 5850, pp. 660–675. Springer, Heidelberg (2009). https://doi.org/10.1007/978-3-642-05089-3_42
Bouhadiba, T., Sabah, Q., Delaval, G., Rutten, E.: Synchronous control of reconfiguration in fractal component-based systems: a case study. In: Proceedings of the Ninth ACM International Conference on Embedded Software, EMSOFT 2011, Taipei, Taiwan, pp. 309–318, October 2011
Braberman, V., D’Ippolito, N., Kramer, J., Sykes, D., Uchitel, S.: MORPH: a reference architecture for configuration and behaviour self-adaptation. In: Proceedings of the 1st International Workshop on Control Theory for Software Engineering, CTSE 2015, pp. 9–16. ACM, New York (2015)
Cassandras, C., Lafortune, S.: Introduction to Discrete Event Systems. Springer, New York (2008). https://doi.org/10.1007/978-0-387-68612-7
Cervin, A., Eker, J., Bernhardsson, B., Årzén, K.E.: Feedback-feedforward scheduling of control tasks. Real-Time Syst. 23(1–2), 25–53 (2002)
Chakrabarti, A., de Alfaro, L., Henzinger, T.A., Mang, F.Y.C.: Synchronous and bidirectional component interfaces. In: Brinksma, E., Larsen, K.G. (eds.) CAV 2002. LNCS, vol. 2404, pp. 414–427. Springer, Heidelberg (2002). https://doi.org/10.1007/3-540-45657-0_34
Feedback Computing. http://www.feedbackcomputing.org/
Control for Embedded Systems Cluster: Roadmap on control of real-time computing systems. Technical report, EU/IST FP6 Artist2 NoE (2006)
Delaval, G.: Bzr. http://bzr.inria.fr
Delaval, G.: Modular distribution and application to discrete controller synthesis. In: International Workshop on Model-driven High-level Programming of Embedded Systems (SLA++P 2008), Budapest, Hungary, April 2008
Delaval, G., Rutten, E.: A domain-specific language for multi-task systems, applying discrete controller synthesis. J. Embed. Syst. 2007(84192), 17 (2007)
Delaval, G., Rutten, É., Marchand, H.: Integrating discrete controller synthesis into a reactive programming language compiler. Discrete Event Dyn. Syst. 23(4), 385–418 (2013)
Delaval, G., Marchand, H., Rutten, É.: Contracts for modular discrete controller synthesis. In: ACM International Conference on Languages, Compilers, and Tools for Embedded Systems (LCTES 2010), Stockholm, Sweden, pp. 57–66, April 2010
D’Ippolito, N., Braberman, V., Kramer, J., Magee, J., Sykes, D., Uchitel, S.: Hope for the best, prepare for the worst: multi-tier control for adaptive systems. In: Proceedings of the 36th International Conference on Software Engineering, ICSE 2014, pp. 688–699. ACM, New York (2014)
D’ippolito, N., Braberman, V., Piterman, N., Uchitel, S.: Synthesizing nonanomalous event-based controllers for liveness goals. ACM Trans. Softw. Eng. Methodol. 22(1), 9:1–9:36 (2013)
Dragert, C., Dingel, J., Rudie, K.: Generation of concurrency control code using discrete-event systems theory. In: Proceedings of the 16th ACM SIGSOFT International Symposium on Foundations of Software Engineering, SIGSOFT 2008/FSE-16, pp. 146–157. ACM, New York (2008)
Dumitrescu, E., Girault, A., Marchand, H., Rutten, E.: Multicriteria optimal discrete controller synthesis for fault-tolerant tasks. In: Proceedings of the 10th IFAC International Workshop on Discrete Event Systems (WODES 2010), September 2010
Durand, S., Alt, A.-M., Simon, D., Marchand, N.: Energy-aware feedback control for a H.264 video decoder. Int. J. Syst. Sci. 46(8), August 2013
Filieri, A., Ghezzi, C., Leva, A., Maggio, M.: Self-adaptive software meets control theory: a preliminary approach supporting reliability requirements. In: Proceedings of 26th IEEE/ACM International Conference on Automated Software Engineering (ASE 2011), pp. 283–292 (2011)
Filieri, A., Hoffmann, H., Maggio, M.: Automated design of self-adaptive software with control-theoretical formal guarantees. In: Proceedings of the 36th International Conference on Software Engineering, ICSE 2014. ACM, New York (2014)
Filieri, A., Maggio, M., Angelopoulos, K., D’Ippolito, N., Gerostathopoulos, I., Hempel, A.B., Hoffmann, H., Jamshidi, P., Kalyvianaki, E., Klein, C., Krikava, F., Misailovic, S., Papadopoulos, A.V., Ray, S., Sharifloo, A.M., Shevtsov, S., Ujma, M., Vogel, T.: Software engineering meets control theory. In: Proceedings of the 10th International Symposium on Software Engineering for Adaptive and Self-Managing Systems, SEAMS 2015, pp. 71–82. IEEE Press, Piscataway (2015)
Gamatié, A., Yu, H., Delaval, G., Rutten, E.: A case study on controller synthesis for data-intensive embedded systems. In: Proceedings of the 6th IEEE International Conference on Embedded Software and Systems (ICESS 2009), HangZhou, Zhejiang, China, May 2009
Gaudin, B., Nixon, P.: Supervisory control for software runtime exception avoidance. In: Proceedings of the Fifth International C* Conference on Computer Science and Software Engineering, C3S2E 2012, pp. 109–112. ACM, New York (2012)
Gaudin, B., Vassev, E.I., Nixon, P., Hinchey, M.: A control theory based approach for self-healing of un-handled runtime exceptions. In: Proceedings of the 8th ACM International Conference on Autonomic Computing, ICAC 2011, pp. 217–220. ACM, New York (2011)
Girault, A., Rutten, E.: Automating the addition of fault tolerance with discrete controller synthesis. Int. J. Formal Methods Syst. Des. 35(2), 190–225 (2009). https://doi.org/10.1007/s10703-009-0084-y
Gueye, S.M.-K., de Palma, N., Rutten, E.: Coordination control of component-based autonomic administration loops. In: Proceedings of the 15th International Conference on Coordination Models and Languages, COORDINATION, 3–6 June 2013, Florence, Italy (2013)
Harel, D.: Can programming be liberated, period? Computer 41(1), 28–37 (2008)
Harel, D., Kugler, H., Pnueli, A.: Synthesis revisited: generating statechart models from scenario-based requirements. In: Kreowski, H.-J., Montanari, U., Orejas, F., Rozenberg, G., Taentzer, G. (eds.) Formal Methods in Software and Systems Modeling. LNCS, vol. 3393, pp. 309–324. Springer, Heidelberg (2005). https://doi.org/10.1007/978-3-540-31847-7_18
Harel, D., Pnueli, A.: On the development of reactive systems. In: Apt, K.R. (eds.) Logics and Models of Concurrent Systems. NATO ASI Series (Series F: Computer and Systems Sciences), vol. 13, pp. 477–498. Springer, Heidelberg (1985). https://doi.org/10.1007/978-3-642-82453-1_17
Hellerstein, J., Diao, Y., Parekh, S., Tilbury, D.: Feedback Control of Computing Systems. Wiley-IEEE (2004)
Iordache, M., Antsaklis, P.: Concurrent program synthesis based on supervisory control. In: 2010 American Control Conference (2010)
Iordache, M.V., Antsaklis, P.J.: Petri nets and programming: a survey. In: Proceedings of the 2009 American Control Conference, pp. 4994–4999 (2009)
Kalyon, G., Gall, T.L.: SMACS. http://www.smacs.be/
Karamanolis, C., Karlsson, M., Zhu, X.: Designing controllable computer systems. In: Proceedings of the 10th Conference on Hot Topics in Operating Systems, HOTOS 2005, vol. 10, p. 9. USENIX Association, Berkeley (2005)
Kephart, J.: Feedback on feedback in autonomic computing systems. In: 7th International Workshop on Feedback Computing, San Jose, California (2012)
Kephart, J.O., Chess, D.M.: The vision of autonomic computing. IEEE Comput. 36(1), 41–50 (2003)
Khakpour, N., Arbab, F., Rutten, E.: Supervisory controller synthesis for safe software adaptation. In: 12th IFAC - IEEE International Workshop on Discrete Event Systems, WODES, Cachan, France, 14–16 May 2014 (2014)
Kugler, H., Plock, C., Pnueli, A.: Controller synthesis from LSC requirements. In: Chechik, M., Wirsing, M. (eds.) FASE 2009. LNCS, vol. 5503, pp. 79–93. Springer, Heidelberg (2009). https://doi.org/10.1007/978-3-642-00593-0_6
Kulkarni, S.S., Ebnenasir, A.: Automated synthesis of multitolerance. In: DSN 2004 Proceedings of the 2004 International Conference on Dependable Systems and Networks, pp. 209–219 (2004)
Lalanda, P., McCann, J.A., Diaconescu, A.: Autonomic Computing - Principles, Design and Implementation. Undergraduate Topics in Computer Science Series. Springer, London (2013)
Lindberg, M., Årzén, K.-E.: Feedback control of cyber-physical systems with multi resource dependencies and model uncertainties. In: 31st IEEE Real-Time Systems Symposium, San Diego, California, USA, November 2010
Litoiu, M., Shaw, M., Tamura, G., Villegas, N.M., Müller, H.A., Giese, H., Rouvoy, R., Rutten, E.: What can control theory teach us about assurances in self-adaptive software systems? In: de Lemos, R., et al. (eds.) Self-Adaptive Systems III. LNCS, vol. 9640, pp. 90–134. Springer, Heidelberg (2017)
Litoiu, M., Woodside, M., Zheng, T.: Hierarchical model-based autonomic control of software systems. ACM SIGSOFT Softw. Eng. Notes 30(4), 1–7 (2005)
Liu, C., Kondratyev, A., Watanabe, Y., Desel, J., Sangiovanni-Vincentelli, A.: Schedulability analysis of petri nets based on structural properties. In: 2006 Sixth International Conference on Application of Concurrency to System Design, ACSD 2006, pp. 69–78, June 2006
Lu, C., Stankovic, J., Abdelzaher, T., Tao, G., Son, S., Marley, M.: Performance specifications and metrics for adaptive real-time systems. In: Real-Time Systems Symposium, December 2000
Lu, C., Stankovic, J.A., Son, S.H., Tao, G.: Feedback control real-time scheduling: framework, modeling and algorithms. Real-Time Syst. 23(1/2), 85–126 (2002). Journal, Special Issue on Control-Theoretical Approaches to Real-Time Computing
Maggio, M., Bini, E., Chasparis, G., Årzén, K.-E.: A game-theoretic resource manager for RT applications. In: 25th Euromicro Conference on Real-Time Systems, ECRTS13, Paris, France, July 2013
Malrait, L., Bouchenak, S., Marchand, N.: Experience with ConSer: a system for server control through fluid modeling. IEEE Trans. Comput. 60(7), 951–963 (2011)
Marchand, H.: Sigali. http://www.irisa.fr/vertecs/Logiciels/sigali.html
Marchand, H., Bournai, P., Le Borgne, M., Le Guernic, P.: Synthesis of discrete-event controllers based on the signal environment. Discrete Event Dyn. Syst. Theor. Appl. 10(4), 325–346 (2000)
Moulavi, M.A., Al-Shishtawy, A., Vlassov, V.: State-space feedback control for elastic distributed storage in a cloud environment. In: ICAS 2012, The Eighth International Conference on Autonomic and Autonomous Systems, pp. 18–27 (2012)
Patikirikorala, T., Colman, A., Han, J., Wang, L.: A systematic survey on the design of self-adaptive software systems using control engineering approaches. In: 2012 ICSE Workshop on Software Engineering for Adaptive and Self-Managing Systems (SEAMS), Zurich, Switzerland (2012)
Patikirikorala, T., Wang, L., Colman, A., Han, J.: Hammerstein Wiener nonlinear model based predictive control for relative QoS performance and resource management of software systems. Control Eng. Pract. 20, 49–61 (2012)
Phoha, V.V., Nadgar, A.U., Ray, A., Phoha, S.: Supervisory control of software systems. IEEE Trans. Comput. 53(9), 1187–1199 (2004)
Ramadge, P.J., Wonham, W.M.: Supervisory control of a class of discrete event processes. SIAM J. Control Optim. 25(1), 206–230 (1987)
Sykes, D., Corapi, D., Magee, J., Kramer, J., Russo, A., Inoue, K.: Learning revised models for planning in adaptive systems. In: Proceedings of the 2013 International Conference on Software Engineering, ICSE 2013, pp. 63–71. IEEE Press, Piscataway (2013)
Wallace, C., Jensen, P., Soparkar, N.: Supervisory control of workflow scheduling. In: Advanced Transaction Models and Architectures Workshop (ATMA), Goa, India (1996)
Wang, Y., Cho, H.K., Liao, H., Nazeem, A., Kelly, T., Lafortune, S., Mahlke, S., Reveliotis, S.A.: Supervisory control of software execution for failure avoidance: experience from the Gadara project. In: Proceedings of the 10th IFAC International Workshop on Discrete Event Systems (WODES 2010), September 2010
Wang, Y., Lafortune, S., Kelly, T., Kudlur, M., Mahlke, S.: The theory of deadlock avoidance via discrete control. In: Principles of Programming Languages, POPL, Savannah, USA, pp. 252–263 (2009)
Wonham, W.M.: TCT. http://www.control.utoronto.ca/cgi-bin/dlxptct.cgi
Xia, F., Tian, G., Sun, Y.: Feedback scheduling: an event-driven paradigm. ACM SIGPLAN Not. 42(12), 7–14 (2007)
Yfoulis, C.A., Gounaris, A.: Honoring SLAs on cloud computing services: a control perspective. In: Proceedings of the European Control Conference (2009)
Zhu, X.: Application of control theory in management of virtualized data centres. In: Fifth International Workshop on Feedback Control Implementation and Design in Computing Systems and Networks (FeBID), Paris, France (2010)
Zhu, X., Wang, Z., Singhal, S.: Utility-driven workload management using nested control design. In: 2006 American Control Conference, p. 6. IEEE (2006)
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2017 Springer International Publishing AG
About this paper
Cite this paper
Rutten, E., Marchand, N., Simon, D. (2017). Feedback Control as MAPE-K Loop in Autonomic Computing. In: de Lemos, R., Garlan, D., Ghezzi, C., Giese, H. (eds) Software Engineering for Self-Adaptive Systems III. Assurances. Lecture Notes in Computer Science(), vol 9640. Springer, Cham. https://doi.org/10.1007/978-3-319-74183-3_12
Download citation
DOI: https://doi.org/10.1007/978-3-319-74183-3_12
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-319-74182-6
Online ISBN: 978-3-319-74183-3
eBook Packages: Computer ScienceComputer Science (R0)