skip to main content
research-article

Explaining quality attribute tradeoffs in automated planning for self-adaptive systems

Published: 01 April 2023 Publication History

Abstract

Self-adaptive systems commonly operate in heterogeneous contexts and need to consider multiple quality attributes. Human stakeholders often express their quality preferences by defining utility functions, which are used by self-adaptive systems to automatically generate adaptation plans. However, the adaptation space of realistic systems is large and it is obscure how utility functions impact the generated adaptation behavior, as well as structural, behavioral, and quality constraints. Moreover, human stakeholders are often not aware of the underlying tradeoffs between quality attributes. To address this issue, we present an approach that uses machine learning techniques (dimensionality reduction, clustering, and decision tree learning) to explain the reasoning behind automated planning. Our approach focuses on the tradeoffs between quality attributes and how the choice of weights in utility functions results in different plans being generated. We help humans understand quality attribute tradeoffs, identify key decisions in adaptation behavior, and explore how differences in utility functions result in different adaptation alternatives. We present two systems to demonstrate the approach’s applicability and consider its potential application to 24 exemplar self-adaptive systems. Moreover, we describe our assessment of the tradeoff between the information reduction and the amount of explained variance retained by the results obtained with our approach.

Highlights

Our approach explains quality tradeoffs in planning for self-adaptive systems.
We use dimensionality reduction and clustering to focus on impactful qualities.
We demonstrate the approach’s applicability through two self-adaptive systems.
The approach makes tradeoffs explicit while reducing information overload for humans.

References

[1]
Al Ali R., Bures T., Gerostathopoulos I., Hnetynka P., Keznikl J., Kit M., Plasil F., DEECo: An ecosystem for cyber–physical systems, in: Proceedings of the 36th International Conference on Software Engineering, ICSE-C, 2014, pp. 610–611,.
[2]
Askarpour M., Tsigkanos C., Menghi C., Calinescu R., Pelliccione P., García S., Caldas R., von Oertzen T.J., Wimmer M., Berardinelli L., Rossi M., Bersani M.M., Rodrigues G.S., RoboMAX: Robotic mission adaptation exemplars, in: Proceedings of the 2021 International Symposium on Software Engineering for Adaptive and Self-Managing Systems, SEAMS, 2021, pp. 245–251,.
[3]
Barna C., Ghanbari H., Litoiu M., Shtern M., Hogna: A platform for self-adaptive applications in cloud environments, in: Inverardi P., Schmerl B.R. (Eds.), Proceedings of the 10th IEEE/ACM International Symposium on Software Engineering for Adaptive and Self-Managing Systems, SEAMS, 2015, pp. 83–87,.
[4]
Barredo Arrieta A., Díaz-Rodríguez N., Del Ser J., Bennetot A., Tabik S., Barbado A., Garcia S., Gil-Lopez S., Molina D., Benjamins R., Chatila R., Herrera F., Explainable artificial intelligence (xai): Concepts, taxonomies, opportunities and challenges toward responsible Ai, Inf. Fusion 58 (2020) 82–115,.
[5]
Batool F., Hennig C., Clustering with the average silhouette width, Comput. Statist. Data Anal. 158 (2021).
[6]
Bencomo N., Welsh K., Sawyer P., Whittle J., Self-explanation in adaptive systems, in: Proceedings of the IEEE 17th International Conference on Engineering of Complex Computer Systems, 2012, pp. 157–166,.
[7]
Bennaceur A., McCormick C., Galán J.G., Perera C., Smith A., Zisman A., Nuseibeh B., Feed me, feed me: An exemplar for engineering adaptive software, in: Proceedings of the 11th International Symposium on Software Engineering for Adaptive and Self-Managing Systems, SEAMS, 2016, pp. 89–95,.
[8]
Beyret B., Shafti A., Faisal A.A., Dot-to-dot: Explainable hierarchical reinforcement learning for robotic manipulation, in: Proceedings of the 2019 IEEE/RSJ International Conference on Intelligent Robots and Systems, IROS, 2019, pp. 5014–5019,.
[9]
Bianco A., De Alfaro L., Model checking of probabilistic and nondeterministic systems, in: Proceedings of the International Conference on Foundations of Software Technology and Theoretical Computer Science, Springer, 1995, pp. 499–513.
[10]
Breiman L., Friedman J.H., Olshen R.A., Stone C.J., Classification and Regression Trees, Routledge, 2017.
[11]
Cámara J., Schmerl B., Garlan D., Software architecture and task plan co-adaptation for mobile service robots, in: Proceedings of the IEEE/ACM 15th International Symposium on Software Engineering for Adaptive and Self-Managing Systems, SEAMS, 2020, pp. 125–136,.
[12]
Cámara J., Silva M., Garlan D., Schmerl B., Explaining architectural design tradeoff spaces: A machine learning approach, in: Proceedings of the 15th European Conference on Software Architecture, ECSA, Springer International Publishing, Cham, 2021, pp. 49–65.
[13]
Chakraborti, T., Sreedharan, S., Kambhampati, S., 2020. The emerging landscape of explainable automated planning & decision making. In: Proceedings of the Twenty-Ninth International Joint Conference on Artificial Intelligence. IJCAI-20, pp. 4803–4811.
[14]
Chen S., Boggess K., Feng L., Towards transparent robotic planning via contrastive explanations, in: Proceedings of the 2020 IEEE/RSJ International Conference on Intelligent Robots and Systems, IROS, IEEE, 2020, pp. 6593–6598.
[15]
Cheng, S.-W., Garlan, D., Schmerl, B., 2006. Architecture-based self-adaptation in the presence of multiple objectives. In: Proceedings of the 2006 International Workshop on Self-Adaptation and Self-Managing Systems. SEAMS, pp. 2–8.
[16]
Cheng S., Garlan D., Schmerl B.R., Evaluating the effectiveness of the rainbow self-adaptive system, in: Proceedings of the 2009 ICSE Workshop on Software Engineering for Adaptive and Self-Managing Systems, SEAMS, 2009, pp. 132–141,.
[17]
Dehnert C., Junges S., Katoen J.-P., Volk M., A storm is coming: A modern probabilistic model checker, in: Proceedings of the International Conference on Computer Aided Verification, Springer, 2017, pp. 592–600.
[18]
Delnat W., Truyen E., Rafique A., Landuyt D.V., Joosen W., K8-scalar: A workbench to compare autoscalers for container-orchestrated database clusters, in: Andersson J., Weyns D. (Eds.), Proceedings of the 13th International Conference on Software Engineering for Adaptive and Self-Managing Systems, SEAMS, 2018, pp. 33–39,.
[19]
Diallo A.B., Nakagawa H., Tsuchiya T., Adaptation space reduction using an explainable framework, in: Proceedings of the IEEE 45th Annual Computers, Software, and Applications Conference, COMPSAC, 2021, pp. 1653–1660,.
[20]
Erbel J., Brand T., Giese H., Grabowski J., Occi-compliant, fully causal-connected architecture runtime models supporting sensor management, in: Proceedings of the 2019 IEEE/ACM 14th International Symposium on Software Engineering for Adaptive and Self-Managing Systems, SEAMS, 2019, pp. 188–194,.
[21]
Esfahani N., Elkhodary A., Malek S., A learning-based framework for engineering feature-oriented self-adaptive software systems, IEEE Trans. Softw. Eng. 39 (11) (2013) 1467–1493.
[22]
García S., Menghi C., Pelliccione P., Mapmaker: performing multi-robot LTL planning under uncertainty, in: Proceedings of the 2019 IEEE/ACM 2nd International Workshop on Robotics Software Engineering, RoSE, IEEE, 2019, pp. 1–4.
[23]
Garcia Dominguez A., Bencomo N., Parra Ullauri J.M., Garcia Paucar L.H., Towards history-aware self-adaptation with explanation capabilities, in: Proceedings of the IEEE 4th International Workshops on Foundations and Applications of Self* Systems, FAS*W, 2019, pp. 18–23,.
[24]
Garlan D., Cheng S.-W., Huang A.-C., Schmerl B., Steenkiste P., Rainbow: Architecture-based self-adaptation with reusable infrastructure, Computer 37 (10) (2004) 46–54.
[25]
Gerasimou S., Calinescu R., Shevtsov S., Weyns D., UNDERSEA: An exemplar for engineering self-adaptive unmanned underwater vehicles, in: Proceedings of the 12th IEEE/ACM International Symposium on Software Engineering for Adaptive and Self-Managing Systems, SEAMS, 2017, pp. 83–89,.
[26]
Gerostathopoulos I., Pournaras E., TRAPPed in traffic? A self-adaptive framework for decentralized traffic optimization, in: Proceedings of the 2019 IEEE/ACM 14th International Symposium on Software Engineering for Adaptive and Self-Managing Systems, SEAMS, 2019, pp. 32–38,.
[27]
Ghezzi C., Molzam Sharifloo A., Dealing with Non-Functional Requirements for Adaptive Systems Via Dynamic Software Product-Lines, Springer Berlin Heidelberg, 2013, pp. 191–213. Ch. 8.
[28]
Gil E.B., Caldas R., Rodrigues A., da Silva G.L.G., Rodrigues G.N., Pelliccione P., Body sensor network: A self-adaptive system exemplar in the healthcare domain, in: Proceedings of the 2021 International Symposium on Software Engineering for Adaptive and Self-Managing Systems, SEAMS, 2021, pp. 224–230,.
[29]
Hansson H., Jonsson B., A logic for reasoning about time and reliability, Form. Asp. Comput. 6 (5) (1994) 512–535.
[30]
Hoffman R., Mueller S., Klein G., Litman J., Metrics for explainable AI: Challenges and prospects, 2018, XAI Metrics.
[31]
Iftikhar M.U., Ramachandran G.S., Bollansée P., Weyns D., Hughes D., DeltaIoT: A self-adaptive internet of things exemplar, in: Proceedings of the 12th IEEE/ACM International Symposium on Software Engineering for Adaptive and Self-Managing Systems, SEAMS, 2017, pp. 76–82,.
[32]
Jamshidi P., Cámara J., Schmerl B., Käestner C., Garlan D., Machine learning meets quantitative planning: Enabling self-adaptation in autonomous robots, in: Proceedings of the 2019 IEEE/ACM 14th International Symposium on Software Engineering for Adaptive and Self-Managing Systems, SEAMS, 2019, pp. 39–50,.
[33]
Jolliffe I.T., Principal components in regression analysis, in: Principal Component Analysis, Springer, 1986, pp. 129–155.
[34]
Juozapaitis, Z., Koul, A., Fern, A., Erwig, M., Doshi-Velez, F., 2019. Explainable reinforcement learning via reward decomposition. In: Proceedings of the IJCAI/ECAI Workshop on Explainable Artificial Intelligence. pp. 1–7.
[35]
Kounev S., Brosig F., Huber N., The Descartes Modeling Language, Institut Für Informatik, Universität Würzburg, 2014.
[36]
Krijt F., Jirácek Z., Bures T., Hnetynka P., Gerostathopoulos I., Intelligent ensembles - a declarative group description language and java framework, in: Proceedings of the 12th IEEE/ACM International Symposium on Software Engineering for Adaptive and Self-Managing Systems, SEAMS, 2017, pp. 116–122,.
[37]
Kwiatkowska M., Norman G., Parker D., PRISM 4.0: Verification of probabilistic real-time systems, in: Gopalakrishnan G., Qadeer S. (Eds.), Proceedings of the 23rd International Conference on Computer Aided Verification, in: LNCS, vol. 6806, CAV’11, Springer, 2011, pp. 585–591.
[38]
Lacerda B., Parker D., Hawes N., Optimal and dynamic planning for Markov decision processes with co-safe LTL specifications, in: Proceedings of the 2014 IEEE/RSJ International Conference on Intelligent Robots and Systems, 2014, pp. 1511–1516,.
[39]
Le Roux B., Rouanet H., Multiple Correspondence Analysis, SAGE Publications, 2009.
[40]
Lengyel A., Botta-Dukát Z., Silhouette width using generalized mean—a flexible method for assessing clustering efficiency, Ecol. Evol. 9 (23) (2019) 13231–13243,.
[41]
Li N., Camara J., Garlan D., Schmerl B., Reasoning about when to provide explanation for human-involved self-adaptive systems, in: Proceedings of the IEEE International Conference on Autonomic Computing and Self-Organizing Systems, ACSOS, 2020, pp. 195–204,.
[42]
Maia P.H., Vieira L., Chagas M., Yu Y., Zisman A., Nuseibeh B., Dragonfly: A tool for simulating self-adaptive drone behaviours, in: Proceedings of the 2019 IEEE/ACM 14th International Symposium on Software Engineering for Adaptive and Self-Managing Systems, SEAMS, 2019, pp. 107–113,.
[43]
Markos A., Iodice D’Enza A., van de Velden M., Beyond tandem analysis: Joint dimension reduction and clustering in r, J. Stat. Softw. 91 (10) (2019).
[44]
Moreno G., Kinneer C., Pandey A., Garlan D., DARTSim: An exemplar for evaluation and comparison of self-adaptation approaches for smart cyber–physical systems, in: Proceedings of the 2019 IEEE/ACM 14th International Symposium on Software Engineering for Adaptive and Self-Managing Systems, SEAMS, 2019, pp. 181–187,.
[45]
Moreno G.A., Schmerl B.R., Garlan D., SWIM: An exemplar for evaluation and comparison of self-adaptation approaches for web applications, in: Andersson J., Weyns D. (Eds.), Proceedings of the 13th International Conference on Software Engineering for Adaptive and Self-Managing Systems, SEAMS, 2018, pp. 137–143,.
[46]
Moreno G.A., Strichman O., Chaki S., Vaisman R., Decision-making with cross-entropy for self-adaptation, in: Proceedings of the 2017 IEEE/ACM 12th International Symposium on Software Engineering for Adaptive and Self-Managing Systems, SEAMS, 2017, pp. 90–101,.
[47]
Parra-Ullauri J.M., García-Domínguez A., Bencomo N., Zheng C., Zhen C., Boubeta-Puig J., Ortiz G., Yang S., Event-driven temporal models for explanations-etemox: Explaining reinforcement learning, Software Syst. Model. (2021) 1–23.
[48]
Pfitzner D., Leibbrandt R., Powers D., Characterization and evaluation of similarity measures for pairs of clusterings, Knowl. Inf. Syst. 19 (3) (2009) 361–394.
[49]
Provoost M., Weyns D., DingNet: A self-adaptive internet-of-things exemplar, in: Proceedings of the 2019 IEEE/ACM 14th International Symposium on Software Engineering for Adaptive and Self-Managing Systems, SEAMS, 2019, pp. 195–201,.
[50]
R. Core Team, R: A Language and Environment for Statistical Computing, R Foundation for Statistical Computing, Vienna, Austria, 2020, URL https://www.R-project.org/.
[51]
Reynolds, O., García-Domínguez, A., Bencomo, N., 2020. Automated provenance graphs for [email protected]. In: Proceedings of the 23rd ACM/IEEE International Conference on Model Driven Engineering Languages and Systems. MODELS, pp. 1–10.
[52]
Samin H., Bencomo N., Sawyer P., Decision-making under uncertainty: B aware of your priorities, Software Syst. Model. (2022) 1–30.
[53]
Samin H., Paucar L.H.G., Bencomo N., Hurtado C.M.C., Fredericks E.M., RDMSim: An exemplar for evaluation and comparison of decision-making techniques for self-adaptation, in: Proceedings of the 2021 International Symposium on Software Engineering for Adaptive and Self-Managing Systems, SEAMS, 2021, pp. 238–244,.
[54]
Schmid S., Gerostathopoulos I., Prehofer C., Bures T., Model problem (CrowdNav) and framework (RTX) for self-adaptation based on big data analytics (artifact), Dagstuhl Artifacts Ser. 3 (1) (2017) 5:1–5:3,.
[55]
Shin Y.-J., Liu L., Hyun S., Bae D.-H., Platooning LEGOs: An open physical exemplar for engineering self-adaptive cyber–physical systems-of-systems, in: Proceedings of the 2021 International Symposium on Software Engineering for Adaptive and Self-Managing Systems, SEAMS, 2021, pp. 231–237,.
[56]
Sousa, J.P., Balan, R.K., Poladian, V., Garlan, D., Satyanarayanan, M., 2008. User guidance of resource-adaptive systems. In: Proceedings of the 3rd International Conference on Software and Data Technologies. ICSOFT, pp. 36–44.
[57]
Starnes D.S., Yates D., Moore D.S., The Practice of Statistics, Macmillan, 2010.
[58]
Sukkerd R., Simmons R., Garlan D., Tradeoff-focused contrastive explanation for mdp planning, in: Proceedings of the 29th IEEE International Conference on Robot and Human Interactive Communication, RO-MAN, IEEE, 2020, pp. 1041–1048.
[59]
Triantaphyllou E., Multi-Criteria Decision Making Methods, Springer US, Boston, MA, 2000, pp. 5–21. Ch. 2.
[60]
Tsigkanos C., Nenzi L., Loreti M., Garriga M., Dustdar S., Ghezzi C., Inferring analyzable models from trajectories of spatially-distributed internet of things, in: Proceedings of the 2019 IEEE/ACM 14th International Symposium on Software Engineering for Adaptive and Self-Managing Systems, SEAMS, 2019, pp. 100–106,.
[61]
van de Velden M., Iodice D’Enza A., Markos A., Distance-based clustering of mixed data, Wiley Interdiscip. Rev. Comput. Stat. 11 (3) (2019).
[62]
Vogel T., mRUBiS: An exemplar for model-based architectural self-healing and self-optimization, in: Andersson J., Weyns D. (Eds.), Proceedings of the 13th International Conference on Software Engineering for Adaptive and Self-Managing Systems, SEAMS, 2018, pp. 101–107,.
[63]
Welsh K., Bencomo N., Sawyer P., Whittle J., Self-explanation in adaptive systems based on runtime goal-based models, in: Transactions on Computational Collective Intelligence XVI, Springer, 2014, pp. 122–145.
[64]
Weyns D., Calinescu R., Tele assistance: A self-adaptive service-based system exemplar, in: Inverardi P., Schmerl B.R. (Eds.), Proceedings of the 10th IEEE/ACM International Symposium on Software Engineering for Adaptive and Self-Managing Systems, SEAMS, 2015, pp. 88–92,.
[65]
Wohlrab R., Garlan D., Defining utility functions for multi-stakeholder self-adaptive systems, in: Proceedings of the 27th International Working Conference on Requirement Engineering: Foundation for Software Quality, REFSQ, Springer International, 2021, pp. 116–122.
[66]
Wohlrab R., Garlan D., A negotiation support system for defining utility functions for multi-stakeholder self-adaptive systems, Requir. Eng. (2021).
[67]
Wuttke J., Brun Y., Gorla A., Ramaswamy J., Traffic routing for evaluating self-adaptation, in: Müller H.A., Baresi L. (Eds.), Proceedings of the 7th International Symposium on Software Engineering for Adaptive and Self-Managing Systems, SEAMS, 2012, pp. 27–32,.
[68]
Zhang B., Krikava F., Rouvoy R., Seinturier L., Hadoop-benchmark: Rapid prototyping and evaluation of self-adaptive behaviors in hadoop clusters, in: Proceedings of the 12th IEEE/ACM International Symposium on Software Engineering for Adaptive and Self-Managing Systems, SEAMS, 2017, pp. 175–181,.

Cited By

View all

Index Terms

  1. Explaining quality attribute tradeoffs in automated planning for self-adaptive systems
          Index terms have been assigned to the content through auto-classification.

          Recommendations

          Comments

          Information & Contributors

          Information

          Published In

          cover image Journal of Systems and Software
          Journal of Systems and Software  Volume 198, Issue C
          Apr 2023
          492 pages

          Publisher

          Elsevier Science Inc.

          United States

          Publication History

          Published: 01 April 2023

          Author Tags

          1. Explainable software
          2. Automated planning
          3. Self-adaptation
          4. Quality attributes
          5. Non-functional requirements
          6. Principal component analysis
          7. Clustering
          8. Decision tree learning

          Qualifiers

          • Research-article

          Contributors

          Other Metrics

          Bibliometrics & Citations

          Bibliometrics

          Article Metrics

          • Downloads (Last 12 months)0
          • Downloads (Last 6 weeks)0
          Reflects downloads up to 20 Jan 2025

          Other Metrics

          Citations

          Cited By

          View all

          View Options

          View options

          Media

          Figures

          Other

          Tables

          Share

          Share

          Share this Publication link

          Share on social media