You can edit almost every page by Creating an account. Otherwise, see the FAQ.

Self-Aware Computing

From EverybodyWiki Bios & Wiki












The notion of self-awareness in computing has been studied in a number of research projects and activities over the past decades, including the SElf-awarE Computing (SEEC) project at the University of Chicago,[1] the FOCAS FET Coordination Action,[2] the EPiCS and ASCENS EU Projects,[3][4] the SEAMS Dagstuhl Seminars,[5] and the Self-Aware Computing (SeAC) Workshop Series.[6]

In an effort to encourage collaborations and cross-fertilization between related research activities, a Dagstuhl seminar was organized in January 2015 bringing together 45 international experts from the respective communities.[7] As part of this effort, the seminar participants formulated a definition of the term “self-aware computing system”[8], capturing the common aspects of such systems as used by researchers in the interdisciplinary research community. The consensus at the seminar was that self-aware computing systems have two main properties. They:

  1. learn models, capturing knowledge about themselves and their environment (such as their structure, design, state, possible actions, and runtime behavior) on an ongoing basis; and
  2. reason using the models (to predict, analyze, consider, or plan), which enables them to act based on their knowledge and reasoning (for example, to explore, explain, report, suggest, self-adapt, or impact their environment).

The learning and reasoning in self-aware computing systems is done in accordance with high-level goals, which can change. This broader notion of self-aware computing is intended to provide a common terminology highlighting the synergies between related research activities. Several books on the topic review much of the latest relevant research across a wide array of disciplines and discuss open research challenges.[9][10]

Self-Aware Computing Systems[edit]

Models and Learning[edit]

The term “model” in the definition of a self-aware computing system refers to any abstraction that captures relevant knowledge about the system and its environment. There are different types of models, such as descriptive models, which describe a given aspect of the system, or prescriptive models, which describe how the system should behave in a given situation. In the context of self-aware computing, often predictive models are further distinguished, which support more complex reasoning, such as predicting how the system would behave under different conditions or predicting how a given action will impact the system and its environment.

The „learning“ in self-aware computing is based both on static information built into the system design (e.g., integrated skeleton models combined with machine learning algorithms) as well as information collected at run-time (e.g., model training data and parameters estimated based on monitoring data). The learning is assumed to take place on an ongoing basis during system run time; that is, models are refined, calibrated, and validated continuously during system operation. The model-based learning and reasoning processes are assumed to go beyond evaluating predefined event-condition-action rules or heuristics. An example of a complex learning and reasoning process often applied in the context of self-aware computing systems is time series forecasting.[11]

LRA-M Loop[edit]

In the area of autonomic computing, systems often implement a Monitor-Analyze-Plan-Execute architecture, commonly referred to as MAPE-K loop, where K stands for "Knowledge".[12] In contrast to this, self-aware computing systems implement a Learn-Reason-Act loop, referred to as LRA-M loop, relying on Models as a knowledge base. The LRA-M loop is a widely accepted reference architecture that explicitly emphasizes the use of models to capture self-awareness concerns and provides an architectural perspective on a system’s (possible) self-awareness capabilities.[13][14][15][16][17]

A self-aware computing system collects empirical observations from the environment based on sensors and monitoring data about itself (self-monitoring). These empirical observations are the basis for an ongoing learning process (the "Learn" process) that captures potentially relevant information about the system and the environment (in the form of descriptive or predictive models). A continuous reasoning process (the "Reason" process) uses these models to determine appropriate actions required to meet the high-level system goals. The reasoning process can trigger system actions or self-adaptation processes (the optional "Act" process); it can also trigger changes affecting the learning and reasoning processes themselves, for example, switching from one type of prediction model or another.

While the "Monitor" and "Analyze" phases of MAPE-K also imply that information is gathered and analyzed during operation, in LRA-M, it is explicitly assumed that the acquired information is abstracted and used to learn models on an ongoing basis. Similarly, while the "Analyze" and "Plan" phases in MAPE-K can be compared to the reasoning processes in LRA-M, LRA-M's model-based reasoning is assumed to go beyond applying simple rules or heuristics explicitly programmed at system design time. Finally, while self-adaptation (also referred to self-expression[18]) is a central part of MAPE-K (the Execute phase), in LRA-M, self-adaptation is not strictly required, given that the corresponding "Act" process is defined as optional. Indeed, a self-aware computing system may provide recommendations on how to act, leaving the final decision on what action to take to a human operator—a common scenario in many cognitive computing applications.

Example[edit]

Several reference scenarios for self-aware computing systems have been defined.[19] As an example, consider a distributed enterprise messaging system designed to guarantee certain performance and quality-of-service requirements. In this context, descriptive models can be used to describe the system’s service-level objectives, the software architecture, the underlying hardware infrastructure, and the system’s run-time reconfiguration options. Predictive models could be statistical regression models used to estimate the influence of user behavior on the system resource demands, queueing network models used to evaluate the system performance for a given resource allocation, or neural network models used to forecast the system’s load intensity. Prescriptive models could describe how the system should react to specific events at run time (e.g., a server crash) or be sophisticated control theory models used to guide the system’s resource management.

Reasoning in the context of the above system can include the forecasting of the system load intensity (e.g., number of messages sent per minute) for a given time period,[11] the prediction of the application performance (e.g., message delivery time) for a given resource allocation (e.g., reserved network bandwidth and server capacity), or the prediction of the impact of a reconfiguration (e.g., adding additional network bandwidth or server capacity) on the messaging performance.[20] Based on these predictions, the system can apply higher-level reasoning and, for example, determine how it should adapt to changing workloads to continuously meet its performance and quality-of-service requirements.

Levels of Self-Awareness[edit]

Conceptually, there are several approaches to distinguish different levels of self-awareness.[18][21][22] At the highest level of abstraction, three generic levels can be defined that appear in different forms in existing classification schemes: pre-reflective, reflective, and meta-reflective self-awareness.

Applications[edit]

Applications for self-aware computing systems can be found in many domains, including software and system development,[17] information extraction,[23] data center performance and resource management,[24][25] cyber-physical systems,[14][15][26] embedded systems and systems-on-chip,[13][27] mobile-cloud hybrid robotics,[28] Internet of Things (IoT),[29] manufacturing systems and Industry 4.0,[30][31][32] traffic control,[33][34] healthcare,[35][36][37] and aerospace applications.[38][39]

In the domain of manufacturing systems and Industry 4.0, self-aware computing can be leveraged in the context of modular plants for process engineering and manufacturing, where production modules can be replaced on-the-fly during operation for online system maintenance or for optimizing production processes.[31] Facing this scenario requires research towards semantical self-description of production modules concerning their requirements and abilities as well as automated model-based analysis and reconfiguration of production processes. Efficient maintenance strategies are needed for improving reliability, preventing unexpected system failures, and reducing maintenance costs.[32] An example of such a strategy is predictive maintenance, where sensor data is used to continuously examine the health status of the equipment and prevent failures by proactively scheduling maintenance actions based on predicted future states.

In the domain of traffic control, self-aware computing can be used to avoid traffic jams and optimize routes and journey times.[34] Based on real-time traffic monitoring data, a recommendation for the best route for a given target destination can be computed. Further, leveraging big data analysis, an individual route can be generated for each road user, taking into account the routes others will take.[33]

In the medical context, self-aware computing systems can be leveraged to improve the classical implantology. Considering patients with cardiac arrhythmia, cardiac medical devices can be used to monitor patients permanently. For example, a pacemaker device can monitor a patient's heart rate, atrial-ventricle synchrony, and complex conditions like pacemaker-mediated tachycardia in order to maintain an adequate heart rate.[35] Self-aware computing systems can also help to improve the quality of life of epilepsy patients. For example, the electroencephalogram (EEG), which monitors brain activity, can be used for diagnosing and follow-up examinations of the epilepsy disorder. Medical implants using a high-density electrode array can provide permanent monitoring based on which machine learning techniques can be used to learn patterns that indicate possible attacks.[36][37] Current research aims at detecting and providing early warnings for upcoming attacks.

References[edit]

  1. "The Self-Aware Computing Project - University of Chicago". Retrieved 24 September 2020.
  2. "Results from FoCAS, the coordination action for research in Collective Adaptive Systems". Retrieved 24 September 2020.
  3. "ASCENS EU Project". Retrieved 24 September 2020.
  4. "EPICS EU Project - Engineering Proprioception in Computing Systems". EU CORDIS. Retrieved 24 September 2020.
  5. "Software Engineering for Self-Adaptive Systems". Retrieved 24 September 2020.
  6. "Workshop on Self-Aware Computing (SeAC)". Retrieved 24 September 2020.
  7. Kounev, Samuel; Zhu, Xiaoyun; Kephart, Jeffrey O.; Kwiatkowska, Marta (2015). "Model-driven Algorithms and Architectures for Self-Aware Computing Systems (Dagstuhl Seminar 15041)". Schloss Dagstuhl-Leibniz-Zentrum Fuer Informatik, Dagstuhl Reports. 5 (1): 164–196. doi:10.4230/DagRep.5.1.164. ISSN 2192-5283. Retrieved 24 September 2020.
  8. Kounev, Samuel; Lewis, Peter; Bellman, Kirstie L.; Bencomo, Nelly; Camara, Javier; Diaconescu, Ada; Esterle, Lukas; Geihs, Kurt; Giese, Holger; Götz, Sebastian; Inverardi, Paola; Kephart, Jeffrey O.; Zisman, Andrea (2017). "Chapter 1: The Notion of Self-aware Computing". In Kounev, Samuel; Kephart, Jeffrey O.; Milenkoski, Aleksandar; Zhu, Xiaoyun. Self-Aware Computing Systems (1st ed.). Springer International Publishing. pp. 3–16. doi:10.1007/978-3-319-47474-8_1. ISBN 978-3-319-47472-4. Unknown parameter |name-list-style= ignored (help) Search this book on
  9. Lewis, Peter R.; Platzner, Marco; Rinner, Bernhard; Tørresen, Jim; Yao, Xin (2016). Self-Aware Computing Systems (1st ed.). Springer International Publishing. doi:10.1007/978-3-319-39675-0. ISBN 978-3-319-39674-3. Unknown parameter |s2cid= ignored (help) Search this book on
  10. Kounev, Samuel; Kephart, Jeffrey O.; Milenkoski, Aleksandar; Zhu, Xiaoyun (2017). Self-Aware Computing Systems (1st ed.). Springer International Publishing. doi:10.1007/978-3-319-47474-8. ISBN 978-3-319-47472-4. Search this book on
  11. 11.0 11.1 Bauer, André; Züfle, Marwin; Herbst, Nikolas; Zehe, Albin; Hotho, Andreas; Kounev, Samuel (2020). "Time Series Forecasting for Self-Aware Systems". Proceedings of the IEEE. IEEE. 108 (7): 1068–1093. doi:10.1109/JPROC.2020.2983857. Unknown parameter |s2cid= ignored (help)
  12. Kephart, J.O.; Chess, D.M. (2003), "The vision of autonomic computing", Computer, 36: 41–52, CiteSeerX 10.1.1.70.613, doi:10.1109/MC.2003.1160055
  13. 13.0 13.1 Hoffmann, H.; Jantsch, A.; Dutt, N. D. (July 2020). "Embodied Self-Aware Computing Systems". Proceedings of the IEEE. IEEE. 108 (7): 1027–1046. doi:10.1109/JPROC.2020.2977054. Unknown parameter |s2cid= ignored (help)
  14. 14.0 14.1 Bellman, K.; Landauer, C.; Dutt, N.; Esterle, L.; Herkersdorf, A.; Jantsch, A.; TaheriNejad, N.; Lewis, P. R.; Platzner, M.; Tammem\"{a}e, K. (June 2020). "Self-Aware Cyber-Physical Systems". ACM Transactions on Cyber-Physical Systems. ACM. 4 (4): 1–26. doi:10.1145/3375716. Unknown parameter |s2cid= ignored (help)
  15. 15.0 15.1 Götzinger, Maximilian; Juhász, Dávid; Taherinejad, Nima; Willegger, Edwin; Tutzer, Benedikt; Liljeberg, Pasi; Jantsch, Axel; Rahmani, Amir M. (2020). "RoSA: A Framework for Modeling Self-Awareness in Cyber-Physical Systems". IEEE Access. IEEE. 8: 141373–141394. doi:10.1109/ACCESS.2020.3012824. Unknown parameter |s2cid= ignored (help)
  16. Jantsch, Axel (2019). "Towards a Formal Model of Recursive Self-Reflection". OpenAccess Series in Informatics (OASIcs), Vol. 68, Edited by Selma Saidi, Rolf Ernst and Dirk Ziegenbein. Workshop on Autonomous Systems Design (ASD 2019). Dagstuhl, Germany: Schloss Dagstuhl - Leibniz-Zentrum fuer Informatik. pp. 6:1–6:15. doi:10.4230/OASIcs.ASD.2019.6.
  17. 17.0 17.1 Tinnes, C.; Biesdorf, A.; Hohenstein, U.; Matthes, F. (2019). Ideas on Improving Software Artifact Reuse via Traceability and Self-Awareness. 2019 IEEE/ACM 10th International Symposium on Software and Systems Traceability (SST). Montreal, Canada: IEEE. pp. 13–16. doi:10.1109/SST.2019.00013.
  18. 18.0 18.1 Lewis, Peter R.; Chandra, Arjun; Faniyi, Funmilade; Glette, Kyrre; Chen, Tao; Bahsoon, Rami; Torresen, Jim; Yao, Xin (2015). "Architectural Aspects of Self-Aware and Self-Expressive Computing Systems: From Psychology to Engineering". Computer. IEEE. 48 (8): 62–70. doi:10.1109/MC.2015.235. Retrieved 5 October 2020. Unknown parameter |s2cid= ignored (help)
  19. Kephart, Jeffrey O.; Maggio, Martina; Diaconescu, Ada; Giese, Holger; Hoffmann, Henry; Kounev, Samuel; Koziolek, Anne; Lewis, Peter; Robertsson, Anders; Spinner, Simon (2017). "Chapter 4: Reference Scenarios for Self-Aware Computing". In Kounev, Samuel; Kephart, Jeffrey O.; Milenkoski, Aleksandar; Zhu, Xiaoyun. Self-Aware Computing Systems (1st ed.). Springer International Publishing. pp. 87–106. doi:10.1007/978-3-319-47474-8_1. ISBN 978-3-319-47472-4. Unknown parameter |name-list-style= ignored (help) Search this book on
  20. Balsamo, Simonetta (May 2004). "Model-based performance prediction in software development: a survey". IEEE Transactions on Software Engineering. 30 (5): 295–310. doi:10.1109/TSE.2004.9. Unknown parameter |s2cid= ignored (help)
  21. Chen, Tao; Faniyi, Funmilade; Bahsoon, Rami; Lewis, Peter R.; Yao, Xin; Minku, Leandro L.; Esterle, Lukas (2014). The handbook of engineering self-aware and self-expressive systems (Report). EPiCS EU FP7 project consortium.
  22. Lewis, Peter; Bellman, Kirstie L.; Landauer, Christopher; Esterle, Lukas; Glette, Kyrre; Diaconescu, Ada; Giese, Holger (2017). "Chapter 3: Towards a Framework for the Levels and Aspects of Self-aware Computing Systems". In Kounev, Samuel; Kephart, Jeffrey O.; Milenkoski, Aleksandar; Zhu, Xiaoyun. Self-Aware Computing Systems (1st ed.). Springer International Publishing. pp. 51–85. doi:10.1007/978-3-319-47474-8_3. ISBN 978-3-319-47472-4. Unknown parameter |name-list-style= ignored (help) Search this book on
  23. Alzuru, I.; Matsunaga, A.; Tsugawa, M.; Fortes, J. A. B. (2017). SELFIE: Self-Aware Information Extraction from Digitized Biocollections. 2017 IEEE 13th International Conference on e-Science (e-Science). Auckland, New Zealand: IEEE. pp. 69–78. doi:10.1109/eScience.2017.19.
  24. Kounev, S.; Huber, N.; Brosig, F.; Zhu, X. (2016). "A Model-Based Approach to Designing Self-Aware IT Systems and Infrastructures". Computer. IEEE. 49 (7): 53–61. doi:10.1109/MC.2016.198. Unknown parameter |s2cid= ignored (help)
  25. Huber, N.; Brosig, F.; Spinner, S.; Kounev, S.; Bähr, M. (2017). "Model-Based Self-Aware Performance and Resource Management Using the Descartes Modeling Language". IEEE Transactions on Software Engineering. IEEE. 43 (5): 432–452. doi:10.1109/TSE.2016.2613863. Unknown parameter |s2cid= ignored (help)
  26. Dutt, N.; TaheriNejad, N. (2016). Self-Awareness in Cyber-Physical Systems. 2016 29th International Conference on VLSI Design and 2016 15th International Conference on Embedded Systems (VLSID). Kolkata, India: IEEE. pp. 5–6. doi:10.1109/VLSID.2016.129.
  27. Dutt, N.; Jantsch, A.; Sarma, S. (2015). Self-aware Cyber-Physical Systems-on-Chip. 2015 IEEE/ACM International Conference on Computer-Aided Design (ICCAD). Austin, USA: IEEE. pp. 46–50. doi:10.1109/ICCAD.2015.7372548.
  28. Akbar, A.; Lewis, P. R. (2018). Self-Adaptive and Self-Aware Mobile-Cloud Hybrid Robotics. 2018 Fifth International Conference on Internet of Things: Systems, Management and Security. Valencia, Spain: IEEE. pp. 262–267. doi:10.1109/IoTSMS.2018.8554735.
  29. Esterle, L.; Rinner, B. (2018). An Architecture for Self-Aware IOT Applications. 2018 IEEE International Conference on Acoustics, Speech and Signal Processing (ICASSP). Calgary, Canada: IEEE. pp. 6588–6592. doi:10.1109/ICASSP.2018.8462005.
  30. Bagheri, Behrad; Yang, Shanhu; Kao, Hung-An; Lee, Jay (2015). "Cyber-physical Systems Architecture for Self-Aware Machines in Industry 4.0 Environment". IFAC-PapersOnLine. IFAC. 48 (3): 1622–1627. doi:10.1016/j.ifacol.2015.06.318.
  31. 31.0 31.1 Kowalewski, S.; Braune, A.; Dernehl, C.; Greiner, T.; Koziolek, H.; Loskyll, M.; Niggemann, O.; Gatica, C. P.; Reißig, G. (2014). "Statusreport: Industrie 4.0 CPS-basierte Automation Forschungsbedarf anhand konkreter Fallbeispiele" (PDF). VDI/VDE-Gesellschaft für Mess- und Automatisierungstechnik (GMA).
  32. 32.0 32.1 Kaiser, Kevin A.; Gebraeel, Z. (2009). "Predictive maintenance management using sensor-based degradation models". IEEE Transactions on Systems, Man, and Cybernetics-Part A: Systems and Humans. 39 (4): 840–849. doi:10.1109/TSMCA.2009.2016429. Unknown parameter |s2cid= ignored (help)
  33. 33.0 33.1 Wilkie, David; van den Berg, Jur P.; Lin, Ming C.; Manocha, Dinesh (2011). "Self-Aware Traffic Route Planning". AAAI. 11: 1521–1527.
  34. 34.0 34.1 Bacon, Jean; Bejan, Andrei Iu.; Beresford, Alastair R.; Evans, David; Gibbens, Richard J.; Moody, Ken (2011). "Using Real-Time Road Traffic Data to Evaluate Congestion". Dependable and Historic Computing 2011. Lecture Notes in Computer Science. 6875: 93–117. doi:10.1007/978-3-642-24541-1_9. ISBN 978-3-642-24540-4.
  35. 35.0 35.1 Jiang, Zhihao; Pajic, Miroslav; Mangharam, Rahul (2012). "Cyber-physical modeling of implantable cardiac medical devices". Proceedings of the IEEE. 100 (1): 122–137. doi:10.1109/JPROC.2011.2161241. Unknown parameter |s2cid= ignored (help)
  36. 36.0 36.1 Viventi, Jonathan; Kim, Dae-Hyeong; Vigeland, Leif; Frechette, Eric S.; Blanco, Justin A.; Kim, Yun-Suong; Avrin, Andrew E.; Tiruvadi, Vineet R.; Vanleer, Ann C. (2011). "Flexible, foldable, actively multiplexed, high-density electrode array for mapping brain activity in vivo". Nature Neuroscience. 14 (12): 1599–605. doi:10.1038/nn.2973. PMC 3235709. PMID 22081157.
  37. 37.0 37.1 Tzallas, Alexandros T.; Tsipouras, Markos G.; Fotiadis, Dimitrios I. (2007). "Automatic seizure detection based on time-frequency analysis and artificial neural networks". Computational Intelligence and Neuroscience. 2007: 80510. doi:10.1155/2007/80510. PMC 2246039. PMID 18301712.
  38. Schilling, Klaus; Walter, Jürgen; Kounev, Samuel (2017). "Chapter 25: Spacecraft Autonomous Reaction Capabilities, Control Approaches and Self-Aware Computing". In Kounev, Samuel; Kephart, Jeffrey O.; Milenkoski, Aleksandar; Zhu, Xiaoyun. Self-Aware Computing Systems (1st ed.). Springer International Publishing. pp. 687–706. doi:10.1007/978-3-319-47474-8_1. ISBN 978-3-319-47472-4. Unknown parameter |name-list-style= ignored (help) Search this book on
  39. Kaiser, Dennis; Lesch, Veronika; Rothe, Julian; Strohmeier, Michael; Spiess, Florian; Krupitzer, Christian; Montenegro, Sergio; Kounev, Samuel (2020). "Towards Self-Aware Multirotor Formations". Computers. Special Issue on Self-Aware Computing. MDPI. 9 (7): 1622–1627. doi:10.1016/j.ifacol.2015.06.318.

Licabettus (talk) 09:06, 6 May 2019 (UTC)



This article "Self-Aware Computing" is from Wikipedia. The list of its authors can be seen in its historical and/or the page Edithistory:Self-Aware Computing. Articles copied from Draft Namespace on Wikipedia could be seen on the Draft Namespace of Wikipedia and not main one.