skip to main content
10.1145/2804337.2804340acmconferencesArticle/Chapter ViewAbstractPublication PagesfseConference Proceedingsconference-collections
research-article

Adaptive predictive control for software systems

Published:31 August 2015Publication History

ABSTRACT

Self-adaptive software systems are designed to support a number of alternative solutions for fulfilling their requirements. These define an adaptation space. During operation, a self-adaptive system monitors its performance and when it finds that its requirements are not fulfilled, searches its adaptation space to select a best adaptation. Two major problems need to be addressed during the selection process: (a) Handling environmental uncertainty in determining the impact of an adaptation; (b) maintain an optimal equilibrium among conflicting requirements. This position paper investigates the application of Adaptive Model Predictive Control ideas from Control Theory to design self-adaptive software that makes decisions by predicting its future performance for alternative adaptations and selects ones that minimize the cost of requirement failures using quantitative information. The technical details of our proposal are illustrated through the meeting-scheduler exemplar.

References

  1. K. Angelopoulos, V. E. S. Souza, and J. Mylopoulos. Dealing with multiple failures in zanshin: a control-theoretic approach. In SEAMS 14, pages 165–174. ACM, 2014. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. K. Angelopoulos, V. E. S. Souza, and J. Mylopoulos. Capturing variability in adaptation spaces: A three-peaks approach. In Conceptual Modeling – ER 2015. Paul Johannesson and Mong Li Lee and Stephen W. Liddle and Oscar Pastor, 2015 (to appear).Google ScholarGoogle ScholarCross RefCross Ref
  3. A. E. Bryson and Y.-C. Ho. Applied Optimal Control: Optimization, Estimation and Control. Taylor & Francis, 1975.Google ScholarGoogle Scholar
  4. A. Filieri, M. Maggio, K. Angelopoulos, N. D’Ippolito, I. Gerostathopoulos, A. B. Hempel, H. Hoffmann, P. Jamshidi, E. Kalyvianaki, C. Klein, F. Krikava, S. Misailovic, A. V. Papadopoulos, S. Ray, A. M. Sharifloo, S. Shevtsov, M. Ujma, and T. Vogel. Software engineering meets control theory. In 10th International Symposium on Software Engineering for Adaptive and Self-Managing Systems, pages 71–82, 2015.Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. H. Ghanbari, M. Litoiu, P. Pawluk, and C. Barna. Replica placement in cloud through simple stochastic model predictive control. In Cloud Computing (CLOUD), 2014 IEEE 7th International Conference on, pages 80–87, June 2014. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. I. Houtzager, J.-W. Wingerden, van, and M. Verhaegen. Fast-array recursive closed-loop subspace model identification. In 15th IFAC Symposium on System Identification, volume 15, pages 96–101, 2009.Google ScholarGoogle ScholarCross RefCross Ref
  7. J. Karlsson and K. Ryan. A cost-value approach for prioritizing requirements. Software, IEEE, 14(5):67–74, Sep 1997. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. D. Kusic, J. Kephart, J. Hanson, N. Kandasamy, and G. Jiang. Power and performance management of virtualized computing environments via lookahead control. In Autonomic Computing, 2008. ICAC ’08. International Conference on, pages 3–12, June 2008. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. A. Leva, M. Maggio, A. V. Papadopoulos, and F. Terraneo. Control-based operating system design. Control Engineering Series. IET, 2013. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. L. Ljung. System Identification: Theory for the User. Prentice Hall PTR, Upper Saddle River, NJ, USA, 1999. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. M. Lovera, T. Gustafsson, and M. Verhaegen. Recursive subspace identification of linear and non-linear wiener state-space models. Automatica, 36(11):1639–1650, 2000. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. J. Maciejowski. Predictive Control: With Constraints. Prentice Hall, 2002.Google ScholarGoogle Scholar
  13. M. Maggio, H. Hoffmann, A. V. Papadopoulos, J. Panerati, M. D. Santambrogio, A. Agarwal, and A. Leva. Comparison of decision making strategies for self-optimization in autonomic computing systems. ACM Transactions on Autonomous and Adaptive Systems, 7(4):36:1–36:32, 2012. Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. B. Nuseibeh. Conflicting requirements: When the customer is not always right. Requirements Engineering, 1(1):70–71, 1996. Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. A. V. Papadopoulos, M. Maggio, S. Negro, and A. Leva. General control-theoretical framework for online resource allocation in computing systems. IET Control Theory & Applications, 6(11):1594––1602, 2012.Google ScholarGoogle ScholarCross RefCross Ref
  16. A. V. Papadopoulos, M. Maggio, F. Terraneo, and A. Leva. A dynamic modelling framework for control-based computing system design. Mathematical and Computer Modelling of Dynamical Systems, 21(3):251–271, 2015.Google ScholarGoogle ScholarCross RefCross Ref
  17. R. Sebastiani and P. Trentin. Optimathsat: A tool for optimization modulo theories. In In proc. Int. Conf. on Computer Aided verification, CAV’15, 2015 (to appear).Google ScholarGoogle ScholarCross RefCross Ref
  18. V. E. Souza, A. Lapouchnian, K. Angelopoulos, and J. Mylopoulos. Requirements-driven software evolution. Comput. Sci., 28(4):311–329, Nov. 2013. Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. G. van der Veen, J.-W. van Wingerden, M. Bergamasco, M. Lovera, and M. Verhaegen. Closed-loop subspace identification methods: an overview. Control Theory Applications, IET, 7(10):1339–1358, July 2013.Google ScholarGoogle Scholar
  20. M. Verhaegen and V. Verdult. Filtering and System Identification: A Least Squares Approach. Cambridge University Press, New York, NY, USA, 2012. Google ScholarGoogle ScholarDigital LibraryDigital Library
  21. Q. Zhang, Q. Zhu, M. Zhani, and R. Boutaba. Dynamic service placement in geographically distributed clouds. In Distributed Computing Systems (ICDCS), 2012 IEEE 32nd International Conference on, pages 526–535, June 2012. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. Adaptive predictive control for software systems

    Recommendations

    Comments

    Login options

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

    Sign in
    • Published in

      cover image ACM Conferences
      CTSE 2015: Proceedings of the 1st International Workshop on Control Theory for Software Engineering
      August 2015
      41 pages
      ISBN:9781450338141
      DOI:10.1145/2804337

      Copyright © 2015 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: 31 August 2015

      Permissions

      Request permissions about this article.

      Request Permissions

      Check for updates

      Qualifiers

      • research-article

      Upcoming Conference

      FSE '24

    PDF Format

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader