Refine
Has Fulltext
- yes (14)
Is part of the Bibliography
- yes (14) (remove)
Year of publication
- 2022 (14) (remove)
Document Type
- Doctoral Thesis (14) (remove)
Keywords
- Cloud Computing (2)
- Kleinsatellit (2)
- Zuverlässigkeit (2)
- Anomalieerkennung (1)
- Automation (1)
- Betriebssystem (1)
- Broadcast Growth Codes (BCGC) (1)
- Cloud (1)
- Cloud-native (1)
- Compass framework (1)
Institute
- Institut für Informatik (14) (remove)
Die Raumfahrt ist eine der konservativsten Industriebranchen. Neue Entwicklungen von Komponenten und Systemen beruhen auf existierenden Standards und eigene Erfahrungen der Entwickler. Die Systeme sollen in einem vorgegebenen engen Zeitrahmen projektiert, in sehr kleiner Stückzahl gefertigt und schließlich aufwendig qualifiziert werden. Erfahrungsgemäß reicht die Zeit für Entwicklungsiterationen und weitgehende Perfektionierung des Systems oft nicht aus. Fertige Sensoren, Subsysteme und Systeme sind Unikate, die nur für eine bestimme Funktion und in manchen Fällen sogar nur für bestimmte Missionen konzipiert sind. Eine Neuentwicklung solcher Komponenten ist extrem teuer und risikobehaftet. Deswegen werden flugerprobte Systeme ohne Änderungen und Optimierung mehrere Jahre eingesetzt, ohne Technologiefortschritte zu berücksichtigen.
Aufgrund des enormen finanziellen Aufwandes und der Trägheit ist die konventionelle Vorgehensweise in der Entwicklung nicht direkt auf Kleinsatelliten übertragbar. Eine dynamische Entwicklung im Low Cost Bereich benötigt eine universale und für unterschiedliche Anwendungsbereiche leicht modifizierbare Strategie. Diese Strategie soll nicht nur flexibel sein, sondern auch zu einer möglichst optimalen und effizienten Hardwarelösung führen.
Diese Arbeit stellt ein Software-Tool für eine zeit- und kosteneffiziente Entwicklung von Sternsensoren für Kleinsatelliten vor. Um eine maximale Leistung des Komplettsystems zu erreichen, soll der Sensor die Anforderungen und Randbedingungen vorgegebener Anwendungen erfüllen und darüber hinaus für diese Anwendungen optimiert sein. Wegen der komplexen Zusammenhänge zwischen den Parametern optischer Sensorsysteme ist keine
„straightforward" Lösung des Problems möglich. Nur durch den Einsatz computerbasierter Optimierungsverfahren kann schnell und effizient ein bestmögliches Systemkonzept für die gegebenen Randbedingungen ausgearbeitet werden.
Since the first CubeSat launch in 2003, the hardware and software complexity of the nanosatellites was continuosly increasing.
To keep up with the continuously increasing mission complexity and to retain the primary advantages of a CubeSat mission, a new approach for the overall space and ground software architecture and protocol configuration is elaborated in this work.
The aim of this thesis is to propose a uniform software and protocol architecture as a basis for software development, test, simulation and operation of multiple pico-/nanosatellites based on ultra-low power components.
In contrast to single-CubeSat missions, current and upcoming nanosatellite formation missions require faster and more straightforward development, pre-flight testing and calibration procedures as well as simultaneous operation of multiple satellites.
A dynamic and decentral Compass mission network was established in multiple active CubeSat missions, consisting of uniformly accessible nodes.
Compass middleware was elaborated to unify the communication and functional interfaces between all involved mission-related software and hardware components.
All systems can access each other via dynamic routes to perform service-based M2M communication.
With the proposed model-based communication approach, all states, abilities and functionalities of a system are accessed in a uniform way.
The Tiny scripting language was designed to allow dynamic code execution on ultra-low power components as a basis for constraint-based in-orbit scheduler and experiment execution.
The implemented Compass Operations front-end enables far-reaching monitoring and control capabilities of all ground and space systems.
Its integrated constraint-based operations task scheduler allows the recording of complex satellite operations, which are conducted automatically during the overpasses.
The outcome of this thesis became an enabling technology for UWE-3, UWE-4 and NetSat CubeSat missions.
An enduring engineering problem is the creation of unreliable software leading to unreliable systems. One reason for this is source code is written in a complicated manner making it too hard for humans to review and understand. Complicated code leads to other issues beyond dependability, such as expanded development efforts and ongoing difficulties with maintenance, ultimately costing developers and users more money.
There are many ideas regarding where blame lies in the reation of buggy and unreliable systems. One prevalent idea is the selected life cycle model is to blame. The oft-maligned “waterfall” life cycle model is a particularly popular recipient of blame. In response, many organizations changed their life cycle model in hopes of addressing these issues. Agile life cycle models have become very popular, and they promote communication between team members and end users. In theory, this communication leads to fewer misunderstandings and should lead to less complicated and more reliable code.
Changing the life cycle model can indeed address communications ssues, which can resolve many problems with understanding requirements.
However, most life cycle models do not specifically address coding practices or software architecture. Since lifecycle models do not address the structure of the code, they are often ineffective at addressing problems related to code complicacy.
This dissertation answers several research questions concerning software complicacy, beginning with an investigation of traditional metrics and static analysis to evaluate their usefulness as measurement tools. This dissertation also establishes a new concept in applied linguistics by creating a measurement of software complicacy based on linguistic economy. Linguistic economy describes the efficiencies of speech, and this thesis shows the applicability of linguistic economy to software. Embedded in each topic is a discussion
of the ramifications of overly complicated software, including the relationship of complicacy to software faults. Image recognition using machine learning is also investigated as a potential method of identifying problematic source code.
The central part of the work focuses on analyzing the source code of hundreds of different projects from different areas. A static analysis was performed on the source code of each project, and traditional software metrics were calculated. Programs were also analyzed using techniques developed by linguists to measure expression and statement complicacy and identifier complicacy. Professional software engineers were also directly surveyed to understand mainstream perspectives.
This work shows it is possible to use traditional metrics as indicators of potential project bugginess. This work also discovered it is possible to use image recognition to identify problematic pieces of source code. Finally, this work discovered it is possible to use linguistic methods to determine which statements and expressions are least desirable and more complicated for programmers.
This work’s principle conclusion is that there are multiple ways to discover traits indicating a project or a piece of source code has characteristics of being buggy. Traditional metrics and static analysis can be used to gain some understanding of software complicacy and bugginess potential. Linguistic economy demonstrates a new tool for measuring software complicacy, and machine learning can predict where bugs may lie in source code. The significant implication of this work is developers can recognize when a project is becoming buggy and take practical steps to avoid creating buggy projects.
With the miniaturization of satellites a fundamental change took place in the space industry. Instead of single big monolithic satellites nowadays more and more systems are envisaged consisting of a number of small satellites to form cooperating systems in space. The lower costs for development and launch as well as the spatial distribution of these systems enable the implementation of new scientific missions and commercial services.
With this paradigm shift new challenges constantly emerge for satellite developers, particularly in the area of wireless communication systems and network protocols.
Satellites in low Earth orbits and ground stations form dynamic space-terrestrial networks. The characteristics of these networks differ fundamentally from those of other networks.
The resulting challenges with regard to communication system design, system analysis, packet forwarding, routing and medium access control as well as challenges concerning the reliability and efficiency of wireless communication links are addressed in this thesis.
The physical modeling of space-terrestrial networks is addressed by analyzing existing satellite systems and communication devices, by evaluating measurements and by implementing a simulator for space-terrestrial networks.
The resulting system and channel models were used as a basis for the prediction of the dynamic network topologies, link properties and channel interference. These predictions allowed for the implementation of efficient routing and medium access control schemes for space-terrestrial networks. Further, the implementation and utilization of software-defined ground stations is addressed, and a data upload scheme for the operation of small satellite formations is presented.
Human-computer interfaces have the potential to support mental health practitioners in alleviating mental distress.
Adaption of this technology in practice is, however, slow.
We provide means to extend the design space of human-computer interfaces for mitigating mental distress.
To this end, we suggest three complementary approaches: using presentation technology, using virtual environments, and using communication technology to facilitate social interaction.
We provide new evidence that elementary aspects of presentation technology affect the emotional processing of virtual stimuli, that perception of our environment affects the way we assess our environment, and that communication technologies affect social bonding between users.
By showing how interfaces modify emotional reactions and facilitate social interaction, we provide converging evidence that human-computer interfaces can help alleviate mental distress.
These findings may advance the goal of adapting technological means to the requirements of mental health practitioners.
In this doctoral thesis we cover the performance evaluation of next generation data plane architectures, comprised of complex software as well as programmable hardware components that allow fine granular configuration. In the scope of the thesis we propose mechanisms to monitor the performance of singular components and model key performance indicators of software based packet processing solutions. We present novel approaches towards network abstraction that allow the integration of heterogeneous data plane technologies into a singular network while maintaining total transparency between control and data plane. Finally, we investigate a full, complex system consisting of multiple software-based solutions and perform a detailed performance analysis. We employ simulative approaches to investigate overload control mechanisms that allow efficient operation under adversary conditions. The contributions of this work build the foundation for future research in the areas of network softwarization and network function virtualization.
One consequence of the recent coronavirus pandemic is increased demand and use of online services around the globe. At the same time, performance requirements for modern technologies are becoming more stringent as users become accustomed to higher standards. These increased performance and availability requirements, coupled with the unpredictable usage growth, are driving an increasing proportion of applications to run on public cloud platforms as they promise better scalability and reliability.
With data centers already responsible for about one percent of the world's power consumption, optimizing resource usage is of paramount importance. Simultaneously, meeting the increasing and changing resource and performance requirements is only possible by optimizing resource management without introducing additional overhead. This requires the research and development of new modeling approaches to understand the behavior of running applications with minimal information.
However, the emergence of modern software paradigms makes it increasingly difficult to derive such models and renders previous performance modeling techniques infeasible. Modern cloud applications are often deployed as a collection of fine-grained and interconnected components called microservices. Microservice architectures offer massive benefits but also have broad implications for the performance characteristics of the respective systems. In addition, the microservices paradigm is typically paired with a DevOps culture, resulting in frequent application and deployment changes. Such applications are often referred to as cloud-native applications. In summary, the increasing use of ever-changing cloud-hosted microservice applications introduces a number of unique challenges for modeling the performance of modern applications. These include the amount, type, and structure of monitoring data, frequent behavioral changes, or infrastructure variabilities. This violates common assumptions of the state of the art and opens a research gap for our work.
In this thesis, we present five techniques for automated learning of performance models for cloud-native software systems. We achieve this by combining machine learning with traditional performance modeling techniques. Unlike previous work, our focus is on cloud-hosted and continuously evolving microservice architectures, so-called cloud-native applications. Therefore, our contributions aim to solve the above challenges to deliver automated performance models with minimal computational overhead and no manual intervention. Depending on the cloud computing model, privacy agreements, or monitoring capabilities of each platform, we identify different scenarios where performance modeling, prediction, and optimization techniques can provide great benefits. Specifically, the contributions of this thesis are as follows:
Monitorless: Application-agnostic prediction of performance degradations.
To manage application performance with only platform-level monitoring, we propose Monitorless, the first truly application-independent approach to detecting performance degradation. We use machine learning to bridge the gap between platform-level monitoring and application-specific measurements, eliminating the need for application-level monitoring. Monitorless creates a single and holistic resource saturation model that can be used for heterogeneous and untrained applications. Results show that Monitorless infers resource-based performance degradation with 97% accuracy. Moreover, it can achieve similar performance to typical autoscaling solutions, despite using less monitoring information.
SuanMing: Predicting performance degradation using tracing.
We introduce SuanMing to mitigate performance issues before they impact the user experience. This contribution is applied in scenarios where tracing tools enable application-level monitoring. SuanMing predicts explainable causes of expected performance degradations and prevents performance degradations before they occur. Evaluation results show that SuanMing can predict and pinpoint future performance degradations with an accuracy of over 90%.
SARDE: Continuous and autonomous estimation of resource demands.
We present SARDE to learn application models for highly variable application deployments. This contribution focuses on the continuous estimation of application resource demands, a key parameter of performance models. SARDE represents an autonomous ensemble estimation technique. It dynamically and continuously optimizes, selects, and executes an ensemble of approaches to estimate resource demands in response to changes in the application or its environment. Through continuous online adaptation, SARDE efficiently achieves an average resource demand estimation error of 15.96% in our evaluation.
DepIC: Learning parametric dependencies from monitoring data.
DepIC utilizes feature selection techniques in combination with an ensemble regression approach to automatically identify and characterize parametric dependencies. Although parametric dependencies can massively improve the accuracy of performance models, DepIC is the first approach to automatically learn such parametric dependencies from passive monitoring data streams. Our evaluation shows that DepIC achieves 91.7% precision in identifying dependencies and reduces the characterization prediction error by 30% compared to the best individual approach.
Baloo: Modeling the configuration space of databases.
To study the impact of different configurations within distributed DBMSs, we introduce Baloo. Our last contribution models the configuration space of databases considering measurement variabilities in the cloud. More specifically, Baloo dynamically estimates the required benchmarking measurements and automatically builds a configuration space model of a given DBMS. Our evaluation of Baloo on a dataset consisting of 900 configuration points shows that the framework achieves a prediction error of less than 11% while saving up to 80% of the measurement effort.
Although the contributions themselves are orthogonally aligned, taken together they provide a holistic approach to performance management of modern cloud-native microservice applications.
Our contributions are a significant step forward as they specifically target novel and cloud-native software development and operation paradigms, surpassing the capabilities and limitations of previous approaches.
In addition, the research presented in this paper also has a significant impact on the industry, as the contributions were developed in collaboration with research teams from Nokia Bell Labs, Huawei, and Google.
Overall, our solutions open up new possibilities for managing and optimizing cloud applications and improve cost and energy efficiency.
A graph is an abstract network that represents a set of objects, called vertices, and relations between these objects, called edges. Graphs can model various networks. For example, a social network where the vertices correspond to users of the network and the edges represent relations between the users. To better see the structure of a graph it is helpful to visualize it. A standard visualization is a node-link diagram in the Euclidean plane. In such a representation the vertices are drawn as points in the plane and edges are drawn as Jordan curves between every two vertices connected by an edge. Edge crossings decrease the readability of a drawing, therefore, Crossing Optimization is a fundamental problem in Computer Science. This book explores the research frontiers and introduces novel approaches in Crossing Optimization.
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.
The application of Wireless Sensor Networks (WSNs) with a large number of tiny, cost-efficient, battery-powered sensor nodes that are able to communicate directly with each other poses many challenges.
Due to the large number of communicating objects and despite a used CSMA/CA MAC protocol, there may be many signal collisions.
In addition, WSNs frequently operate under harsh conditions and nodes are often prone to failure, for example, due to a depleted battery or unreliable components.
Thus, nodes or even large parts of the network can fail.
These aspects lead to reliable data dissemination and data storage being a key issue.
Therefore, these issues are addressed herein while keeping latency low, throughput high, and energy consumption reduced.
Furthermore, simplicity as well as robustness to changes in conditions are essential here.
In order to achieve these aims, a certain amount of redundancy has to be included.
This can be realized, for example, by using network coding.
Existing approaches, however, often only perform well under certain conditions or for a specific scenario, have to perform a time-consuming initialization, require complex calculations, or do not provide the possibility of early decoding.
Therefore, we developed a network coding procedure called Broadcast Growth Codes (BCGC) for reliable data dissemination, which performs well under a broad range of diverse conditions.
These can be a high probability of signal collisions, any degree of nodes' mobility, a large number of nodes, or occurring node failures, for example.
BCGC do not require complex initialization and only use simple XOR operations for encoding and decoding.
Furthermore, decoding can be started as soon as a first packet/codeword has been received.
Evaluations by using an in-house implemented network simulator as well as a real-world testbed showed that BCGC enhance reliability and enable to retrieve data dependably despite an unreliable network.
In terms of latency, throughput, and energy consumption, depending on the conditions and the procedure being compared, BCGC can achieve the same performance or even outperform existing procedures significantly while being robust to changes in conditions and allowing low complexity of the nodes as well as early decoding.