TY - THES A1 - Lesch, Veronika T1 - Self-Aware Optimization of Cyber-Physical Systems in Intelligent Transportation and Logistics Systems T1 - Self-Aware Optimierung von Cyber-Physischen Systemen in Intelligenten Transport- und Logistiksystemen N2 - In today's world, circumstances, processes, and requirements for systems in general-in this thesis a special focus is given to the context of Cyber-Physical Systems (CPS)-are becoming increasingly complex and dynamic. In order to operate properly in such dynamic environments, systems must adapt to dynamic changes, which has led to the research area of Self-Adaptive Systems (SAS). These systems can deal with changes in their environment and the system itself. In our daily lives, we come into contact with many different self-adaptive systems that are designed to support and improve our way of life. In this work we focus on the two domains Intelligent Transportation Systems (ITS) and logistics as both domains provide complex and adaptable use cases to prototypical apply the contributions of this thesis. However, the contributions are not limited to these areas and can be generalized also to other domains such as the general area of CPS and Internet of Things including smart grids or even intelligent computer networks. In ITS, real-time traffic control is an example adaptive system that monitors the environment, analyzes observations, and plans and executes adaptation actions. Another example is platooning, which is the ability of vehicles to drive with close inter-vehicle distances. This technology enables an increase in road throughput and safety, which directly addresses the increased infrastructure needs due to increased traffic on the roads. In logistics, the Vehicle Routing Problem (VRP) deals with the planning of road freight transport tours. To cope with the ever-increasing transport volume due to the rise of just-in-time production and online shopping, efficient and correct route planning for transports is important. Further, warehouses play a central role in any company's supply chain and contribute to the logistical success. The processes of storage assignment and order picking are the two main tasks in mezzanine warehouses highly affected by a dynamic environment. Usually, optimization algorithms are applied to find solutions in reasonable computation time. SASes can help address these dynamics by allowing systems to deal with changing demands and constraints. For the application of SASes in the two areas ITS and logistics, the definition of adaptation planning strategies is the key success factor. A wide range of adaptation planning strategies for different domains can be found in the literature, and the operator must select the most promising strategy for the problem at hand. However, the No-Free-Lunch theorem states that the performance of one strategy is not necessarily transferable to other problems. Accordingly, the algorithm selection problem, first defined in 1976, aims to find the best performing algorithm for the current problem. Since then, this problem has been explored more and more, and the machine learning community, for example, considers it a learning problem. The ideas surrounding the algorithm selection problem have been applied in various use cases, but little research has been done to generalize the approaches. Moreover, especially in the field of SASes, the selection of the most appropriate strategy depends on the current situation of the system. Techniques for identifying the situation of a system can be found in the literature, such as the use of rules or clustering techniques. This knowledge can then be used to improve the algorithm selection, or in the scope of this thesis, to improve the selection of adaptation planning strategies. In addition, knowledge about the current situation and the performance of strategies in similar previously observed situations provides another opportunity for improvements. This ongoing learning and reasoning about the system and its environment is found in the research area Self-Aware Computing (SeAC). In this thesis, we explore common characteristics of adaptation planning strategies in the domain of ITS and logistics presenting a self-aware optimization framework for adaptation planning strategies. We consider platooning coordination strategies from ITS and optimization techniques from logistics as adaptation planning strategies that can be exchanged during operation to better reflect the current situation. Further, we propose to integrate fairness and uncertainty handling mechanisms directly into the adaptation planning strategies. We then examine the complex structure of the logistics use cases VRP and mezzanine warehouses and identify their systems-of-systems structure. We propose a two-stage approach for vertical or nested systems and propose to consider the impact of intertwining horizontal or coexisting systems. More specifically, we summarize the six main contributions of this thesis as follows: First, we analyze specific characteristics of adaptation planning strategies with a particular focus on ITS and logistics. We use platooning and route planning in highly dynamic environments as representatives of ITS and we use the rich Vehicle Routing Problem (rVRP) and mezzanine warehouses as representatives of the logistics domain. Using these case studies, we derive the need for situation-aware optimization of adaptation planning strategies and argue that fairness is an important consideration when applying these strategies in ITS. In logistics, we discuss that these complex systems can be considered as systems-of-systems and this structure affects each subsystem. Hence, we argue that the consideration of these characteristics is a crucial factor for the success of the system. Second, we design a self-aware optimization framework for adaptation planning strategies. The optimization framework is abstracted into a third layer above the application and its adaptation planning system, which allows the concept to be applied to a diverse set of use cases. Further, the Domain Data Model (DDM) used to configure the framework enables the operator to easily apply it by defining the available adaptation planning strategies, parameters to be optimized, and performance measures. The framework consists of four components: (i) Coordination, (ii) Situation Detection, (iii) Strategy Selection, and (iv) Parameter Optimization. While the coordination component receives observations and triggers the other components, the situation detection applies rules or clustering techniques to identify the current situation. The strategy selection uses this knowledge to select the most promising strategy for the current situation, and the parameter optimization applies optimization algorithms to tune the parameters of the strategy. Moreover, we apply the concepts of the SeAC domain and integrate learning and reasoning processes to enable ongoing advancement of the framework. We evaluate our framework using the platooning use case and consider platooning coordination strategies as the adaptation planning strategies to be selected and optimized. Our evaluation shows that the framework is able to select the most appropriate adaptation strategy and learn the situational behavior of the system. Third, we argue that fairness aspects, previously identified as an important characteristic of adaptation planning strategies, are best addressed directly as part of the strategies. Hence, focusing on platooning as an example use case, we propose a set of fairness mechanisms to balance positive and negative effects of platooning among all participants in a platoon. We design six vehicle sequence rotation mechanisms that continuously change the leader position among all participants, as this is the position with the least positive effects. We analyze these strategies on roads of different sizes and with different traffic volumes, and show that these mechanisms should also be chosen wisely. Fourth, we address the uncertainty characteristic of adaptation planning strategies and propose a methodology to account for uncertainty and also address it directly as part of the adaptation planning strategies. We address the use case of fueling planning along a route associated with highly dynamic fuel prices and develop six utility functions that account for different aspects of route planning. Further, we incorporate uncertainty measures for dynamic fuel prices by adding penalties for longer travel times or greater distance to the next gas station. Through this approach, we are able to reduce the uncertainty at planning time and obtain a more robust route planning. Fifth, we analyze optimization of nested systems-of-systems for the use case rVRP. Before proposing an approach to deal with the complex structure of the problem, we analyze important constraints and objectives that need to be considered when formulating a real-world rVRP. Then, we propose a two-stage workflow to optimize both systems individually, flexibly, and interchangeably. We apply Genetic Algorithms and Ant Colony Optimization (ACO) to both nested systems and compare the performance of our workflow with state-of-the-art optimization algorithms for this use case. In our evaluation, we show that the proposed two-stage workflow is able to handle the complex structure of the problem and consider all real-world constraints and objectives. Finally, we study coexisting systems-of-systems by optimizing typical processes in mezzanine warehouses. We first define which ergonomic and economic constraints and objectives must be considered when addressing a real-world problem. Then, we analyze the interrelatedness of the storage assignment and order picking problems; we identify opportunities to design optimization approaches that optimize all objectives and aim for a good overall system performance, taking into account the interdependence of both systems. We use the NSGA-II for storage assignment and Ant Colony Optimization (ACO) for order picking and adapt them to the specific requirements of horizontal systems-of-systems. In our evaluation, we compare our approaches to state-of-the-art approaches in mezzanine warehouses and show that our proposed approaches increase the system performance. Our proposed approaches provide important contributions to both academic research and practical applications. To the best of our knowledge, we are the first to design a self-aware optimization framework for adaptation planning strategies that integrates situation-awareness, algorithm selection, parameter tuning, as well as learning and reasoning. Our evaluation of platooning coordination shows promising results for the application of the framework. Moreover, our proposed strategies to compensate for negative effects of platooning represent an important milestone, which could lead to higher acceptance of this technology in society and support its future adoption in the real world. The proposed methodology and utility functions that address uncertainty are an important step to improving the capabilities of SAS in an increasingly turbulent environment. Similarly, our contributions to systems-of-systems optimization are major contributions to the state of logistics and systems-of-systems research. Finally, we select real-world use cases for the application of our approaches and cooperate with industrial partners, which highlights the practical relevance of our contributions. The reduction of manual effort and required expert knowledge in our self-aware optimization framework is a milestone in bridging the gap between academia and practice. One of our partners integrated the two-stage approach to tackling the rVRP into its software system, improving both time to solution and solution quality. In conclusion, the contributions of this thesis have spawned several research projects such as a long-term industrial project on optimizing tours and routes in parcel delivery funded by Bayerisches Verbundforschungsprogramm (BayVFP) – Digitalisierung and further collaborations, opening up many promising avenues for future research. N2 - In der heutigen Welt werden die Umstände, Prozesse und Anforderungen an Systeme im allgemeinen-in dieser Arbeit wird der Fokus besonders auf cyber-physische Systeme (engl. Cyber-Physical Systems (CPS)) gelegt-immer komplexer. Um in solch dynamischen Umgebungen ordnungsgemäß zu funktionieren, müssen sich diese Systeme an Veränderungen anpassen. Diese Herausforderungen führten zu der Entstehung des Forschungsbereichs selbst-adaptiver Systeme (engl. Self-Adaptive Systems (SAS)). Diese Systeme können mit Veränderungen in ihrer Umgebung, als auch in sich selbst umgehen und sich an geänderte Gegebenheiten anpassen. In unserem alltäglichen Leben kommen wir daher zunehmend mit SAS in Berührung, welche unsere Lebensqualität unterstützen und verbessern sollen. In dieser Arbeit konzentrieren wir uns auf die beiden Bereiche Intelligenter Transportsysteme (engl. Intelligent Transportation Systems (ITS)) und Logistik, da beide Bereiche komplexe und anpassbare Anwendungsfälle bieten, um die Beiträge dieser Arbeit prototypisch anzuwenden. Die vorgestellten Beiträge sind jedoch nicht auf diese Bereiche beschränkt und können auch auf andere Bereiche wie den allgemeinen Bereich von cyber-physischen Systemen und dem Internet der Dinge einschließlich intelligenter Stromnetze oder intelligenter Computernetze verallgemeinert werden. Als ein Beispiel für adaptive Systeme in der realen Welt kann die Echtzeit-Verkehrssteuerung genannt werden. Diese Systeme überwachen die Umgebung, analysieren Beobachtungen und planen Anpassungsmaßnahmen um den Verkehrsfluss zu regulieren. Ein weiteres Beispiel ist das sogenannte Platooning, welches die Fähigkeit beschreibt, in Gruppen mit geringen Abständen zwischen den beteiligten Fahrzeugen zu fahren. Das stetig wachsende Verkehrsvolumen auf den Straßen führt automatisch zu einem erhöhten Infrastrukturbedarf, den Behörden derzeit durch Neubau und Erweiterung der existierenden Infrastruktur begegnen. Platooning ist eine vielversprechende Technologie, die durch die Reduzierung der Mindestabstände von Fahrzeugen und Kommunikation zwischen diesen, automatisch zu einer Erhöhung des Verkehrsdurchsatzes sowie der Sicherheit auf der verwendeten Infrastruktur führt. Auch im Bereich der Logistik finden sich diverse Beispiele für SAS, wie zum Beispiel die Tourenplanung (engl. Vehicle Routing Problem (VRP)) welches sich mit der Planung von Touren für den Straßengütervekehr befasst. Zur Bewältigung des ständig steigenden Transportaufkommens aufgrund zunehmender Just-in-Time-Produktion und erhöhter Nachfrage durch Online-Shopping ist eine effiziente und korrekte Routenplanung für Warentransporte besonders wichtig. Üblicherweise werden Optimierungsalgorithmen angewandt, um sinnvolle Lösungen in angemessener Rechenzeit zu finden. Durch die Anwendung von Konzepten der SAS kann die Dynamik des Problems berücksichtigt werden, indem es den Umgang mit sich ändernden Anforderungen, Einschränkungen und spontan eingehenden Aufträgen ermöglicht. Darüber hinaus spielen Lagerhäuser eine zentrale Rolle in der Lieferkette von Unternehmen und tragen maßgeblich zum logistischen Erfolg bei. Fachbodenregallager (engl. mezzanine warehouses) sind laut Expertenschätzung die am häufigsten verwendeten Lager wenn Mitarbeiter die eingelagerten Güter manuell ein- und auslagern (engl. picker-to-part). Die Prozesse der Lagerzuweisung und der Kommissionierung sind die beiden Hauptaufgaben in Fachbodenregallagern, welche ebenfalls häufig mit Optimierungsalgorithmen gelöst werden. Beide Prozesse müssen in einer dynamischen Umgebung ablaufen, für die SAS einen vielversprechenden Lösungsansatz darstellt. Für die Anwendung von SAS in diesen beiden Bereichen ist die Definition von Anpassungsplanungsstrategien (engl. adaptation planning strategies) der Schlüsselfaktor für den Erfolg des Gesamtsystems. In der Literatur finden sich zahlreiche Anpassungsplanungsstrategien für verschiedene Anwendungsbereiche, was dazu führt, dass der Anwender die vielversprechendste Strategie für das jeweilige Problem auswählen muss. Das No-Free-Lunch-Theorem besagt jedoch, dass die Leistung einer Strategie nicht direkt auf andere Probleme übertragbar ist. Dementsprechend zielt das 1976 erstmals definierte Problem der Algorithmenauswahl darauf ab, den leistungsfähigsten Algorithmus für das aktuelle Problem zu finden. Seitdem wurde diese Problemstellung immer weiter erforscht, und wird beispielsweise von der Forschungsgemeinschaft, welche sich mit maschinellem Lernen beschäftigt, als Lernproblem angesehen. In der Literatur lassen sich vielfältige Ideen finden, welche auf die Algorithmentauswahl in verschiedenen Anwendungsfällen abzielen. Jedoch wurde bisher nur wenig Forschung betrieben, um diese Ansätze zu verallgemeinern und auf andere Anwendungsfälle zu übertragen. Darüber hinaus hängt besonders im Bereich der SAS die Auswahl der am besten geeigneten Strategie von der aktuellen Situation des Systems ab. In der Literatur finden sich Techniken zur Identifizierung der Situation eines Systems, z. B. durch Anwendung von Regeln oder Clustering-Techniken. Dieses Wissen kann dann verwendet werden, um die Auswahl der Algorithmen, oder im Rahmen dieser Arbeit, die Auswahl der Anpassungsplanungsstrategien zu verfeinern. Darüber hinaus bietet die Kenntnis über die aktuelle Situation und die Leistung von Anpassungsplanungsstrategien in ähnlichen, zuvor beobachteten Situationen eine weitere Möglichkeit für Verbesserungen. Dieses Lernen und Nachdenken (engl. reasoning) über das System und seine Umgebung ist Kernbestandteil des Forschungsbereichs der sich selbst bewusster Computer Systeme (engl. Self-Aware Computing (SeAC)). In dieser Arbeit untersuchen wir gemeinsame Merkmale von Anpassungsplanungsstrategien in den Anwendungsbereichen ITS sowie Logistik und stellen ein sich seiner selbst bewusstes (engl. self-aware) Rahmenkonzept zur Optimierung dieser Strategien vor. Wir betrachten Platooning-Koordinations-strategien aus dem Bereich ITS und Optimierungstechniken aus der Logistik als Anpassungsplanungsstrategien, die unter Berücksichtigung der aktuellen Situation ausgetauscht und optimiert werden können. Darüber hinaus schlagen wir vor, die Aspekte Fairness und Unsicherheit direkt in solche Strategien zu integrieren. Anschließend untersuchen wir die komplexe Struktur der logistischen Anwendungsfälle VRP und Fachbodenregallager und identifizieren ihre Struktur bestehend aus Systemen von Systemen (engl. System-of-Systems). Wir entwerfen einen zweistufigen Ansatz für vertikale oder verschachtelte Systeme und schlagen vor, die Auswirkungen der Verflechtung horizontaler oder koexistierender Systeme zu berücksichtigen. Im Einzelnen fassen wir die sechs Hauptbeiträge dieser Arbeit wie folgt zusammen: Zu Beginn analysieren wir die spezifischen Merkmale von Anpassungsplanungsstrategien mit besonderem Augenmerk auf ITS und Logistik. Wir verwenden Platooning und Routenplanung in hochdynamischen Umgebungen als Repräsentanten für ITS und rich VRP (rVRP) sowie Fachbodenregallager als Vertreter der Logistikdomäne. Anhand dieser Fallstudien leiten wir die Notwendigkeit einer situationsgerechten Optimierung von Anpassungsplanungsstrategien ab und argumentieren, dass Fairness ein wichtiger Aspekt bei der Anwendung dieser Strategien in ITS ist. Im Bereich der Logistik erörtern wir, dass diese komplexen Systeme als System von Systemen betrachtet werden können und dass diese Struktur die Leistung der einzelnen Teilsysteme beeinflusst. Daher argumentieren wir, dass die Berücksichtigung dieser Merkmale ein entscheidender Faktor für den Erfolg des Gesamtsystems ist. Zweitens entwerfen wir ein sich seiner selbst bewusstes Rahmenwerk zur Optimierung von Anpassungsplanungsstrategien. Wir abstrahieren den Rahmen für die Optimierung der Strategien auf eine dritte Ebene oberhalb des Anwendungsfalls und seinem Anpassungsplanungssystems, was die Übertragung der Konzepte auf eine Vielzahl von Anwendungsfällen ermöglicht. Darüber hinaus schlagen wir ein Domänendatenmodell (engl. Domain Data Model) für die Konfiguration des Rahmenwerks vor, so dass der Anwender durch die Definition von verfügbaren Anpassungsplanungsstrategien, der zu optimierenden Parameter und der Leistungsmaße das Rahmenwerk individuell anwenden kann. Der Rahmen besteht aus vier Komponenten: (i) Koordination, (ii) Situationserkennung, (iii) Strategieauswahl, und (iv) Parameteroptimierung. Während die Koordinationskomponente Beobachtungen empfängt und die anderen Komponenten aufruft, wendet die Situationserkennung Regeln oder Clustering-Techniken an, um die aktuelle Situation zu identifizieren. Die Strategieauswahl nutzt dieses Wissen, um die vielversprechendste Strategie für die aktuelle Situation auszuwählen, und die Parameteroptimierung wiederum wendet Optimierungsalgorithmen an, um die Parameter der Strategie einzustellen. Darüber hinaus wenden wir die Konzepte aus dem Bereich des SeAC an und integrieren Schlussfolgerungs- und Lernprozesse, um eine kontinuierliche Weiterentwicklung des Rahmenwerks zu ermöglichen. Wir evaluieren unser Rahmenwerk anhand des Anwendungsfalls Platooning und wählen dynamisch Platooning-Koordinationsstrategien aus und optimieren deren Parameterbelegung. Unsere Evaluation zeigt, dass das Rahmenwerk in der Lage ist, die am besten geeignete Anpassungsstrategie auszuwählen und das situative Verhalten des Systems zu erlernen. Drittens argumentieren wir, dass der Aspekt Fairness am besten direkt in den Strategien berücksichtigt werden sollte. Daher schlagen wir eine Reihe von Fairness-Mechanismen vor, um positive und negative Auswirkungen des Platooning zwischen allen Teilnehmern eines Platoons auszugleichen. Wir entwerfen sechs Mechanismen zur Rotation der Fahrzeugreihenfolge im Platoon, die die Führungsposition unter allen Teilnehmern kontinuierlich wechseln, da dies die Position mit den geringsten positiven Auswirkungen ist. Wir analysieren diese Strategien auf Straßen unterschiedlicher Größe sowie mit unterschiedlichem Verkehrsaufkommen und zeigen, dass auch diese Mechanismen mit Bedacht gewählt werden sollten. Viertens befassen wir uns mit Unsicherheit und schlagen eine Methodik vor, um Unsicherheit zu berücksichtigen und sie auch direkt in den Anpassungsplanungsstrategien zu behandeln. Wir befassen uns mit der optimierten Auswahl von Tankstellen entlang einer Route, die mit hochdynamischen Treibstoffpreisen einhergeht, und entwickeln sechs Nutzenfunktionen, welche verschiedene Aspekte der Routenplanung berücksichtigen. Darüber hinaus integrieren wir Unsicherheitsmaße für dynamische Kraftstoffpreise, indem wir Strafen für längere Fahrtzeiten oder eine größere Entfernung zur nächsten Tankstelle hinzufügen. Durch diesen Ansatz sind wir in der Lage, die Unsicherheit zum Planungszeitpunkt zu reduzieren und erhalten so eine robustere Routenplanung. Fünftens erforschen wir die Optimierung von verschachtelten System von Systemen für den Anwendungsfall rVRP. Bevor wir einen Ansatz zur Bewältigung der komplexen Struktur des Problems vorschlagen, analysieren wir wichtige Einschränkungen und Ziele, die bei der Erstellung eines realen rVRP berücksichtigt werden sollten. Dann schlagen wir einen zweistufigen Arbeitsablauf (engl. Workflow) vor, mit dem beide Systeme individuell, flexibel und austauschbar optimiert werden können. Wir wenden einen genetischen Algorithmus (engl. Genetic Algorithm (GA)) und einen Ameisenalgorithmus (engl. Ant Colony Optimization (ACO)) auf beide Systeme an und vergleichen die Leistung unseres Arbeitsablaufs mit weit verbreiteten Optimierungsalgorithmen für diesen Anwendungsfall. In unserer Bewertung zeigen wir, dass der vorgeschlagene zweistufige Arbeitsablauf in der Lage ist, die komplexe Struktur der Problemstellung zu bewältigen und alle realitätsnahen Einschränkungen und Ziele zu berücksichtigen. Schließlich untersuchen wir koexistierende Systeme von Systemen, indem wir typische Prozesse in Fachbodenregallager optimieren. Zunächst definieren wir, welche ergonomischen und wirtschaftlichen Randbedingungen sowie Ziele bei der Erstellung eines realen Problems berücksichtigt werden müssen. Dann analysieren wir die Wechselbeziehung zwischen Lagerzuordnungs- und Kommissionierproblemen und zeigen Möglichkeiten auf, Optimierungsansätze zu entwerfen, die alle Ziele optimieren sowie eine gute Gesamtsystemleistung anstreben, während gleichzeitig die gegenseitige Abhängigkeit beider Systeme berücksichtigt wird. Wir verwenden NSGA-II für die Lagerbelegung und ACO für die Kommissionierung und passen beide an die spezifischen Anforderungen horizontaler Systeme von Systemen an. In unserer Evaluierung vergleichen wir unsere Ansätze mit State-of-the-Art-Ansätzen in Fachbodenregallagern und zeigen, dass die von uns vorgeschlagenen Ansätze die Systemleistung erhöhen. Die von uns vorgeschlagenen Ansätze liefern sowohl für die akademische Forschung, als auch für praktische Anwendungen wichtige Beiträge. Wir sind, unseres Wissens nach, die Ersten, die ein sich seiner Selbst bewusstes Rahmenwerk zur Optimierung von Anpassungsplanungsstrategien entwerfen, das Situationsbewusstsein, Algorithmenauswahl, Parameteroptimierung sowie Lernen und Schlussfolgern integriert. Unsere Evaluierung der Platooning-Koordination zeigt vielversprechende Ergebnisse für die Anwendung des Rahmenwerks, da es in der Lage ist, die am besten geeignete Anpassungsplanungsstrategie auszuwählen und situatives Verhalten zu erlernen. Darüber hinaus stellen die von uns vorgeschlagenen Strategien zur Kompensation negativer Auswirkungen des Platooning einen wichtigen Meilenstein für die weitere Forschung im Bereich der Platooning-Koordination dar, was zu einer höheren Akzeptanz in der Gesellschaft und einer wahrscheinlicheren Übernahme der Technologie in der realen Welt führen könnte. Die vorgeschlagene Methodik und die Nutzenfunktionen, die sich mit Unsicherheit befassen, sind ein wichtiger Schritt zur Verbesserung der Fähigkeiten von SAS in einer zunehmend turbulenten Umgebung. In ähnlicher Weise sind unsere Beiträge zur Optimierung von Systemen bestehend aus weiteren Systemen wichtige Beiträge zum Stand der Logistik- und System-of-System-Forschung. Schlussendlich haben wir für die Anwendung unserer Ansätze reale Anwendungsfälle ausgewählt und mit Industriepartnern zusammengearbeitet, was die praktische Relevanz unserer Beiträge unterstreicht. Die Reduzierung des manuellen Aufwands und des erforderlichen Expertenwissens in unserem selbstlernenden Rahmenwerk ist ein Meilenstein in der Überbrückung der Kluft zwischen Wissenschaft und Praxis. Einer unserer Partner hat den zweistufigen Ansatz zur Bewältigung des rVRP bereits in sein Softwaresystem integriert, was sowohl die Zeit zur Lösungsfindung als auch die Lösungsqualität verbessert. Zusammenfassend führten die Beiträge dieser Arbeit zu weiteren Forschungsprojekten, zum Beispiel einem Industrie-Projekt zur Optimierung von Paketzustellungen gefördert vom Bayerischer Verbundforschungsprogramm (BayVFP) - Digitalisierung, sowie weiteren Kooperationen, die vielversprechende Perspektiven für die künftige Forschung eröffnen. KW - Mehrkriterielle Optimierung KW - Cyber-physisches System KW - Transportsystem KW - Logistik KW - Platooning KW - Self-Aware Computing KW - Vehicle Routing Problem KW - Intelligent Transportation Systems Y1 - 2022 U6 - http://nbn-resolving.de/urn/resolver.pl?urn:nbn:de:bvb:20-opus-272285 ER - TY - THES A1 - Spinner, Simon T1 - Self-Aware Resource Management in Virtualized Data Centers T1 - Selbstwahrnehmende Ressourcenverwaltung in virtualisierten Rechenzentren N2 - Enterprise applications in virtualized data centers are often subject to time-varying workloads, i.e., the load intensity and request mix change over time, due to seasonal patterns and trends, or unpredictable bursts in user requests. Varying workloads result in frequently changing resource demands to the underlying hardware infrastructure. Virtualization technologies enable sharing and on-demand allocation of hardware resources between multiple applications. In this context, the resource allocations to virtualized applications should be continuously adapted in an elastic fashion, so that "at each point in time the available resources match the current demand as closely as possible" (Herbst el al., 2013). Autonomic approaches to resource management promise significant increases in resource efficiency while avoiding violations of performance and availability requirements during peak workloads. Traditional approaches for autonomic resource management use threshold-based rules (e.g., Amazon EC2) that execute pre-defined reconfiguration actions when a metric reaches a certain threshold (e.g., high resource utilization or load imbalance). However, many business-critical applications are subject to Service-Level-Objectives defined on an application performance metric (e.g., response time or throughput). To determine thresholds so that the end-to-end application SLO is fulfilled poses a major challenge due to the complex relationship between the resource allocation to an application and the application performance. Furthermore, threshold-based approaches are inherently prone to an oscillating behavior resulting in unnecessary reconfigurations. In order to overcome the deficiencies of threshold-based approaches and enable a fully automated approach to dynamically control the resource allocations of virtualized applications, model-based approaches are required that can predict the impact of a reconfiguration on the application performance in advance. However, existing model-based approaches are severely limited in their learning capabilities. They either require complete performance models of the application as input, or use a pre-identified model structure and only learn certain model parameters from empirical data at run-time. The former requires high manual efforts and deep system knowledge to create the performance models. The latter does not provide the flexibility to capture the specifics of complex and heterogeneous system architectures. This thesis presents a self-aware approach to the resource management in virtualized data centers. In this context, self-aware means that it automatically learns performance models of the application and the virtualized infrastructure and reasons based on these models to autonomically adapt the resource allocations in accordance with given application SLOs. Learning a performance model requires the extraction of the model structure representing the system architecture as well as the estimation of model parameters, such as resource demands. The estimation of resource demands is a key challenge as they cannot be observed directly in most systems. The major scientific contributions of this thesis are: - A reference architecture for online model learning in virtualized systems. Our reference architecture is based on a set of model extraction agents. Each agent focuses on specific tasks to automatically create and update model skeletons capturing its local knowledge of the system and collaborates with other agents to extract the structural parts of a global performance model of the system. We define different agent roles in the reference architecture and propose a model-based collaboration mechanism for the agents. The agents may be bundled within virtual appliances and may be tailored to include knowledge about the software stack deployed in a specific virtual appliance. - An online method for the statistical estimation of resource demands. For a given request processed by an application, the resource time consumed for a specified resource within the system (e.g., CPU or I/O device), referred to as resource demand, is the total average time the resource is busy processing the request. A request could be any unit of work (e.g., web page request, database transaction, batch job) processed by the system. We provide a systematization of existing statistical approaches to resource demand estimation and conduct an extensive experimental comparison to evaluate the accuracy of these approaches. We propose a novel method to automatically select estimation approaches and demonstrate that it increases the robustness and accuracy of the estimated resource demands significantly. - Model-based controllers for autonomic vertical scaling of virtualized applications. We design two controllers based on online model-based reasoning techniques in order to vertically scale applications at run-time in accordance with application SLOs. The controllers exploit the knowledge from the automatically extracted performance models when determining necessary reconfigurations. The first controller adds and removes virtual CPUs to an application depending on the current demand. It uses a layered performance model to also consider the physical resource contention when determining the required resources. The second controller adapts the resource allocations proactively to ensure the availability of the application during workload peaks and avoid reconfiguration during phases of high workload. We demonstrate the applicability of our approach in current virtualized environments and show its effectiveness leading to significant increases in resource efficiency and improvements of the application performance and availability under time-varying workloads. The evaluation of our approach is based on two case studies representative of widely used enterprise applications in virtualized data centers. In our case studies, we were able to reduce the amount of required CPU resources by up to 23% and the number of reconfigurations by up to 95% compared to a rule-based approach while ensuring full compliance with application SLO. Furthermore, using workload forecasting techniques we were able to schedule expensive reconfigurations (e.g., changes to the memory size) during phases of load load and thus were able to reduce their impact on application availability by over 80% while significantly improving application performance compared to a reactive controller. The methods and techniques for resource demand estimation and vertical application scaling were developed and evaluated in close collaboration with VMware and Google. N2 - Unternehmensanwendungen in virtualisierten Rechenzentren unterliegen häufig zeitabhängigen Arbeitslasten, d.h. die Lastintensität und der Anfragemix ändern sich mit der Zeit wegen saisonalen Mustern und Trends, sowie unvorhergesehenen Lastspitzen bei den Nutzeranfragen. Variierende Arbeitslasten führen dazu, dass sich die Ressourcenanforderungen an die darunterliegende Hardware-Infrastruktur häufig ändern. Virtualisierungstechniken erlauben die gemeinsame Nutzung und bedarfsgesteuerte Zuteilung von Hardware-Ressourcen zwischen mehreren Anwendungen. In diesem Zusammenhang sollte die Zuteilung von Ressourcen an virtualisierte Anwendungen fortwährend in einer elastischen Art und Weise angepasst werden, um sicherzustellen, dass "zu jedem Zeitpunkt die verfügbaren Ressourcen dem derzeitigen Bedarf möglichst genau entsprechen" (Herbst et al., 2013). Autonome Ansätze zur Ressourcenverwaltung versprechen eine deutliche Steigerung der Ressourceneffizienz wobei Verletzungen der Anforderungen hinsichtlich Performanz und Verfügbarkeit bei Lastspitzen vermieden werden. Herkömmliche Ansätze zur autonomen Ressourcenverwaltung nutzen feste Regeln (z.B., Amazon EC2), die vordefinierte Rekonfigurationen durchführen sobald eine Metrik einen bestimmten Schwellwert erreicht (z.B., hohe Ressourcenauslastung oder ungleichmäßige Lastverteilung). Viele geschäftskritische Anwendungen unterliegen jedoch Zielvorgaben hinsichtlich der Dienstgüte (SLO, engl. Service Level Objectives), die auf Performanzmetriken der Anwendung definiert sind (z.B., Antwortzeit oder Durchsatz). Die Bestimmung von Schwellwerten, sodass die Ende-zu-Ende Anwendungs-SLOs erfüllt werden, stellt aufgrund des komplexen Zusammenspiels zwischen der Ressourcenzuteilung und der Performanz einer Anwendung eine bedeutende Herausforderung dar. Des Weiteren sind Ansätze basierend auf Schwellwerten inhärent anfällig für Oszillationen, die zu überflüssigen Rekonfigurationen führen können. Um die Schwächen schwellwertbasierter Ansätze zu lösen und einen vollständig automatisierten Ansatz zur dynamischen Steuerung von Ressourcenzuteilungen virtualisierter Anwendungen zu ermöglichen, bedarf es modellbasierter Ansätze, die den Einfluss einer Rekonfiguration auf die Performanz einer Anwendung im Voraus vorhersagen können. Bestehende modellbasierte Ansätze sind jedoch stark eingeschränkt hinsichtlich ihrer Lernfähigkeiten. Sie erfordern entweder vollständige Performanzmodelle der Anwendung als Eingabe oder nutzen vorbestimmte Modellstrukturen und lernen nur bestimmte Modellparameter auf Basis von empirischen Daten zur Laufzeit. Erstere erfordern hohe manuelle Aufwände und eine tiefe Systemkenntnis um die Performanzmodelle zu erstellen. Letztere bieten nur eingeschränkte Möglichkeiten um die Besonderheiten von komplexen und heterogenen Systemarchitekturen zu erfassen. Diese Arbeit stellt einen selbstwahrnehmenden (engl. self-aware) Ansatz zur Ressourcenverwaltung in virtualisierten Rechenzentren vor. In diesem Zusammenhang bedeutet Selbstwahrnehmung, dass der Ansatz automatisch Performanzmodelle der Anwendung und der virtualisierten Infrastruktur lernt Basierend auf diesen Modellen entscheidet er autonom wie die Ressourcenzuteilungen angepasst werden, um die Anwendungs-SLOs zu erfüllen. Das Lernen von Performanzmodellen erfordert sowohl die Extraktion der Modellstruktur, die die Systemarchitektur abbildet, als auch die Schätzung von Modellparametern, wie zum Beispiel der Ressourcenverbräuche einzelner Funktionen. Die Schätzung der Ressourcenverbräuche stellt hier eine zentrale Herausforderung dar, da diese in den meisten Systemen nicht direkt gemessen werden können. Die wissenschaftlichen Hauptbeiträge dieser Arbeit sind wie folgt: - Eine Referenzarchitektur, die das Lernen von Modellen in virtualisierten Systemen während des Betriebs ermöglicht. Unsere Referenzarchitektur basiert auf einer Menge von Modellextraktionsagenten. Jeder Agent fokussiert sich auf bestimmte Aufgaben um automatisch ein Modellskeleton, das sein lokales Wissen über das System erfasst, zu erstellen und zu aktualisieren. Jeder Agent arbeitet mit anderen Agenten zusammen um die strukturellen Teile eines globalen Performanzmodells des Systems zu extrahieren. Die Rereferenzarchitektur definiert unterschiedliche Agentenrollen und beinhaltet einen modellbasierten Mechanismus, der die Kooperation unterschiedlicher Agenten ermöglicht. Die Agenten können als Teil virtuellen Appliances gebündelt werden und können dabei maßgeschneidertes Wissen über die Software-Strukturen in dieser virtuellen Appliance beinhalten. - Eine Methode zur fortwährenden statistischen Schätzung von Ressourcenverbräuchen. Der Ressourcenverbrauch (engl. resource demand) einer Anfrage, die von einer Anwendung verarbeitet wird, entspricht der Zeit, die an einer spezifischen Ressource im System (z.B., CPU oder I/O-Gerät) verbraucht wird. Eine Anfrage kann dabei eine beliebige Arbeitseinheit, die von einem System verarbeitet wird, darstellen (z.B. eine Webseitenanfrage, eine Datenbanktransaktion, oder ein Stapelverarbeitungsauftrag). Die vorliegende Arbeit bietet eine Systematisierung existierender Ansätze zur statistischen Schätzung von Ressourcenverbräuchen und führt einen umfangreichen, auf Experimenten aufbauenden Vergleich zur Bewertung der Genauigkeit dieser Ansätze durch. Es wird eine neuartige Methode zur automatischen Auswahl eines Schätzverfahrens vorgeschlagen und gezeigt, dass diese die Robustheit und Genauigkeit der geschätzten Ressourcenverbräuche maßgeblich verbessert. - Modellbasierte Regler für das autonome, vertikale Skalieren von virtualisierten Anwendungen. Es werden zwei Regler entworfen, die auf modellbasierten Entscheidungstechniken basieren, um Anwendungen zur Laufzeit vertikal in Übereinstimmung mit Anwendungs-SLOs zu skalieren. Die Regler nutzen das Wissen aus automatisch extrahierten Performanzmodellen bei der Bestimmung notwendiger Rekonfigurationen. Der erste Regler fügt virtuelle CPUs zu Anwendungen hinzu und entfernt sie wieder in Abhängigkeit vom aktuellen Bedarf. Er nutzt ein geschichtetes Performanzmodell, um bei der Bestimmung der benötigten Ressourcen die Konkurrenzsituation der physikalischen Ressourcen zu beachten. Der zweite Regler passt Ressourcenzuteilungen proaktiv an, um die Verfügbarkeit einer Anwendung während Lastspitzen sicherzustellen und Rekonfigurationen unter großer Last zu vermeiden. Die Arbeit demonstriert die Anwendbarkeit unseres Ansatzes in aktuellen virtualisierten Umgebungen und zeigt seine Effektivität bei der Erhöhung der Ressourceneffizienz und der Verbesserung der Anwendungsperformanz und -verfügbarkeit unter zeitabhängigen Arbeitslasten. Die Evaluation des Ansatzes basiert auf zwei Fallstudien, die repräsentativ für gängige Unternehmensanwendungen in virtualisierten Rechenzentren sind. In den Fallstudien wurde eine Reduzierung der benötigten CPU-Ressourcen von bis zu 23% und der Anzahl der Rekonfigurationen von bis zu 95% im Vergleich zu regel-basierten Ansätzen erreicht, bei gleichzeitiger Erfüllung der Anwendungs-SLOs. Mit Hilfe von Vorhersagetechniken für die Arbeitslast konnten außerdem aufwändige Rekonfigurationen (z.B., Änderungen bei der Menge an zugewiesenem Arbeitsspeicher) so geplant werden, dass sie in Phasen geringer Last durchgeführt werden. Dadurch konnten deren Auswirkungen auf die Verfügbarkeit der Anwendung um mehr als 80% verringert werden bei gleichzeitiger Verbesserung der Anwendungsperformanz verglichen mit einem reaktiven Regler. Die Methoden und Techniken zur Schätzung von Ressourcenverbräuchen und zur vertikalen Skalierung von Anwendungen wurden in enger Zusammenarbeit mit VMware und Google entwickelt und evaluiert. KW - Cloud Computing KW - Virtualisierung KW - Leistungsbewertung KW - Autonomic Computing KW - Self-Aware Computing KW - Model extraction Y1 - 2017 U6 - http://nbn-resolving.de/urn/resolver.pl?urn:nbn:de:bvb:20-opus-153754 ER -