05 Fakultät Informatik, Elektrotechnik und Informationstechnik
Permanent URI for this collectionhttps://elib.uni-stuttgart.de/handle/11682/6
Browse
Search Results
Item Open Access Analyzing code corpora to improve the correctness and reliability of programs(2021) Patra, Jibesh; Pradel, Michael (Prof. Dr.)Bugs in software are commonplace, challenging, and expensive to deal with. One widely used direction is to use program analyses and reason about software to detect bugs in them. In recent years, the growth of areas like web application development and data analysis has produced large amounts of publicly available source code corpora, primarily written in dynamically typed languages, such as Python and JavaScript. It is challenging to reason about programs written in such languages because of the presence of dynamic features and the lack of statically declared types. This dissertation argues that, to build software developer tools for detecting and understanding bugs, it is worthwhile to analyze code corpora, which can uncover code idioms, runtime information, and natural language constructs such as comments. The dissertation is divided into three corpus-based approaches that support our argument. In the first part, we present static analyses over code corpora to generate new programs, to perform mutations on existing programs, and to generate data for effective training of neural models. We provide empirical evidence that the static analyses can scale to thousands of files and the trained models are useful in finding bugs in code. The second part of this dissertation presents dynamic analyses over code corpora. Our evaluations show that the analyses are effective in uncovering unexpected behaviors when multiple JavaScript libraries are included together and to generate data for training bug-finding neural models. Finally, we show that a corpus-based analysis can be useful for input reduction, which can help developers to find a smaller subset of an input that still triggers the required behavior. We envision that the current dissertation motivates future endeavors in corpus-based analysis to alleviate some of the challenges faced while ensuring the reliability and correctness of software. One direction is to combine data obtained by static and dynamic analyses over code corpora for training. Another direction is to use meta-learning approaches, where a model is trained using data extracted from the code corpora of one language and used for another language.Item Open Access Scalable biophysical simulations of the neuromuscular system(2021) Maier, Benjamin; Schulte, Miriam (Prof. Dr.)The human neuromuscular system consisting of skeletal muscles and neural circuits is a complex system that is not yet fully understood. Surface electromyography (EMG) can be used to study muscle behavior from the outside. Computer simulations with detailed biophysical models provide a non-invasive tool to interpret EMG signals and gain new insights into the system. The numerical solution of such multi-scale models imposes high computational work loads, which restricts their application to short simulation time spans or coarse resolutions. We tackled this challenge by providing scalable software employing instruction-level and task-level parallelism, suitable numerical methods and efficient data handling. We implemented a comprehensive, state-of-the-art, multi-scale multi-physics model framework that can simulate surface EMG signals and muscle contraction as a result of neuromuscular stimulation. This work describes the model framework and its numerical discretization, develops new algorithms for mesh generation and parallelization, covers the use and implementation of our software OpenDiHu, and evaluates its computational performance in numerous use cases. We obtain a speedup of several hundred compared to a baseline solver from the literature and demonstrate, that our distributed-memory parallelization and the use of High Performance Computing resources enables us to simulate muscular surface EMG of the biceps brachii muscle with realistic muscle fiber counts of several hundred thousands. We find that certain model effects are only visible with such high resolution. In conclusion, our software contributes to more realistic simulations of the neuromuscular system and provides a tool for applied researchers to complement in vivo experiments with in-silico studies. It can serve as a building block to set up comprehensive models for more organs in the musculoskeletal system.Item Open Access Parallel-Analog/Digital-Umsetzer für Gigabaud-Applikationen(2021) Du, Xuan-Quang; Berroth, Manfred (Prof. Dr.-Ing.)Communication systems with digital signal processors (DSPs) rely on data converters as interface blocks between the analog and the digital domain. The channel data rates in these systems can be increased by choosing a higher symbol rate and/or a more complex modulation format. Both approaches motivate the design of data converters with high sample rates and/or high effective bit resolution. As the improvement of the converter linearity in terms of power efficiency is more difficult to realize, especially at high operation frequencies, current research on ultrahigh data-rate mm-wave communication systems (e.g., 100 Gbit/s wireless communication) focuses on increasing the symbol rate while keeping the modulation format simple (e.g., quadrature phase shift keying). These systems require data converters with nominal bit resolutions of around 4-8 bit and sample rates of more than 25 GS/s. In order to satisfy the future needs for high-speed data converters, new circuit topologies need to be investigated. This work presents the design of a 35.84-GS/s 4-bit analog-to-digital converter (ADC) from its idea to its first silicon implementation. The ADC is based on a single-core flash architecture that makes use of a special traveling-wave signal distribution. Contrary to classical approaches with a power-hungry and area-consuming front-end track-and-hold (T/H), no analog preprocessing is needed. The analog input and the clock signal are rather directly distributed over a pair of delay-matched transmission lines from one comparator to the next adjacent one. Due the spatial location of these components, both signals do not arrive at the same time at every comparator, but as they travel synchronously along the transmission lines, each comparator will always see the same input value at each sampling event. This work gives detailed insight into critical design aspects of this approach and new mathematical models to predict the impact of data-to-clock time skews onto the converter linearity. Furthermore, essential building components (e.g., linear amplifiers, encoder, etc.) and a real-time digital communication interface for multi-gigabit/s data transmission to external devices are presented. The ADC is implemented in a 130-nm SiGe BiCMOS technology from IHP (SG13G2) and exhibits a die area of 1.3 mm^2. For experimental tests, the ADC is wire-bonded on a specially designed radio frequency (RF) printed circuit board. At a sampling rate of 35.84 GS/s, the peak spurious-free dynamic range (SFDR) is 35.4 dBc and the peak signal-to-noise-and-distortion ratio (SNDR) is 24.6 dB (3.8 bit). The effective resolution bandwidth (ERBW) is 14.52 GHz and covers almost the complete first Nyquist frequency band. Up to input frequencies of 20 GHz, a SFDR of more than 26.7 dBc and a SNDR of more than 19.8 dB (3 bit) is achieved. Even at a sample rate of 40.32 GS/s, full Nyquist performance can be demonstrated (SNDR = 18.4 dB @20 GHz). The presented ADC improves the sample rate of current state-of-the-art single-core ADCs by 61% from 25 GS/s to 40 GS/s, making it not only the smallest, but also the fastest reported single-core implementation up to date.Item Open Access B-splines on sparse grids for uncertainty quantification(2021) Rehme, Michael F.; Pflüger, Dirk (Prof. Dr.)Item Open Access Uncertainty-aware visualization techniques(2021) Schulz, Christoph; Weiskopf, Daniel (Prof. Dr.)Nearly all information is uncertainty-afflicted. Whether and how we present this uncertainty can have a major impact on how our audience perceives such information. Still, uncertainty is rarely visualized and communicated. One difficulty is that we tend to interpret illustrations as truthful. For example, it is difficult to understand that a drawn point’s presence, absence, and location may not convey its full information. Similarly, it may be challenging to classify a point within a probability distribution. One must learn how to interpret uncertainty-afflicted information. Accordingly, this thesis addresses three research questions: How can we identify and reason about uncertainty? What are approaches to modeling flow of uncertainty through the visualization pipeline? Which methods are suitable for harnessing uncertainty? The first chapter is concerned with sources of uncertainty. Then, approaches to model uncertainty using descriptive statistics and unsupervised learning are discussed. Also, a model for validation and evaluation of visualization methods is proposed. Further, methods for visualizing uncertainty-afflicted networks, trees, point data, sequences, and time series are presented. The focus lies on modeling, propagation, and visualization of uncertainty. As encodings of uncertainty, we propose wave-like splines and sampling-based transparency. As an overarching approach to adapt existing visualization methods for uncertain information, we identify the layout process (the placement of objects). The main difficulty is that these objects are not simple points but distribution functions or convex hulls. We also develop two stippling-based methods for rendering that utilize the ability of the human visual system to cope with uncertainty. Finally, I provide insight into possible directions for future research.Item Open Access Light transport simulation in participating media using spherical harmonic methods(2021) Körner, David; Eberhardt, Bernhard (Prof. Dr.)Item Open Access Displaying text using head-mounted displays(2021) Rzayev, Rufat; Henze, Niels (Prof. Dr.)Reading text is a fundamental activity to gain information both in the real and the digital world. Although digital text is ubiquitous and accessible through various devices, several challenges need to be addressed for efficient display of text on head-mounted displays (HMDs). Specifically, the display of text in the user's field of view or in the vicinity can lead to occlusion of objects in the real or the virtual environment, distraction from the current activity and decrease of visibility of the environment or the text itself. To overcome these challenges and to understand when they occur, it is important to investigate the presentation of text on HMDs. In this thesis, through a series of lab studies and an online survey, we investigate text presentation using HMDs. Particularly, we study the effects of spatial characteristics and presentation types of text on HMDs and the social implication of displaying text using HMDs. First, we show how short texts can be efficiently displayed using HMDs considering the context. Second, we present design recommendations for displaying long texts on HMDs regarding their spatial characteristics and presentation types. Finally, we show how displaying text on HMDs in a social setting affects the social interaction and how the priority of the text can affect the users' preference during social interaction. This thesis contributes with three main insights to provide designers with recommendations for designing reading interfaces for HMD-based applications.Item Open Access Models for data-efficient reinforcement learning on real-world applications(2021) Dörr, Andreas; Toussaint, Marc (Prof. Dr.)Large-scale deep Reinforcement Learning is strongly contributing to many recently published success stories of Artificial Intelligence. These techniques enabled computer systems to autonomously learn and master challenging problems, such as playing the game of Go or complex strategy games such as Star-Craft on human levels or above. Naturally, the question arises which problems could be addressed with these Reinforcement Learning technologies in industrial applications. So far, machine learning technologies based on (semi-)supervised learning create the most visible impact in industrial applications. For example, image, video or text understanding are primarily dominated by models trained and derived autonomously from large-scale data sets with modern (deep) machine learning methods. Reinforcement Learning, on the opposite side, however, deals with temporal decision-making problems and is much less commonly found in the industrial context. In these problems, current decisions and actions inevitably influence the outcome and success of a process much further down the road. This work strives to address some of the core problems, which prevent the effective use of Reinforcement Learning in industrial settings. Autonomous learning of new skills is always guided by existing priors that allow for generalization from previous experience. In some scenarios, non-existing or uninformative prior knowledge can be mitigated by vast amounts of experience for a particular task at hand. Typical industrial processes are, however, operated in very restricted, tightly calibrated operating points. Exploring the space of possible actions or changes to the process naively on the search for improved performance tends to be costly or even prohibitively dangerous. Therefore, one reoccurring subject throughout this work is the emergence of priors and model structures that allow for efficient use of all available experience data. A promising direction is Model-Based Reinforcement Learning, which is explored in the first part of this work. This part derives an automatic tuning method for one of themostcommonindustrial control architectures, the PID controller. By leveraging all available data about the system’s behavior in learning a system dynamics model, the derived method can efficiently tune these controllers from scratch. Although we can easily incorporate all data into dynamics models, real systems expose additional problems to the dynamics modeling and learning task. Characteristics such as non-Gaussian noise, latent states, feedback control or non-i.i.d. data regularly prevent using off-the-shelf modeling tools. Therefore, the second part of this work is concerned with the derivation of modeling solutions that are particularly suited for the reinforcement learning problem. Despite the predominant focus on model-based reinforcement learning as a promising, data-efficient learning tool, this work’s final part revisits model assumptions in a separate branch of reinforcement learning algorithms. Again, generalization and, therefore, efficient learning in model-based methods is primarily driven by the incorporated model assumptions (e.g., smooth dynamics), which real, discontinuous processes might heavily violate. To this end, a model-free reinforcement learning is presented that carefully reintroduces prior model structure to facilitate efficient learning without the need for strong dynamic model priors. The methods and solutions proposed in this work are grounded in the challenges experienced when operating with real-world hardware systems. With applications on a humanoid upper-body robot or an autonomous model race car, the proposed methods are demonstrated to successfully model and master their complex behavior.Item Open Access Designing smart home appliances displaying non-urgent everyday information(2021) Voit, Alexandra; Henze, Niels (Prof. Dr.)In the smart home era living environments are significantly changing. Smart home technologies offer new opportunities for the users to control or monitor their smart home appliances. In the near future, smart home appliances may need to inform their users about everyday home details, such as their current states. Previous work already investigated the users' acceptance of smart home notifications presenting everyday information. However, little research has been done on how users can access the everyday home information. This thesis examines how smart home appliances presenting everyday home information should be designed. It reports about nine user studies investigating either the context of use or the user requirements for smart home appliances presenting everyday home information or evaluating the design solutions for the investigated research probes. As a result of this, we focus on which modalities, locations and information strategies should be used to convey everyday information in a smart home context. In addition, we study how smart home appliances cab be designed to suit to the users' complex daily routines. We further investigate which evaluation methods are suitable for evaluating of smart home appliances presenting everyday home information. This thesis contributes insights into advantages and disadvantages for various evaluation methods and design guidelines for the development of smart home appliances that present everyday home information.Item Open Access Automated generation of tailored load tests for continuous software engineering(2021) Schulz, Henning; Hoorn, André van (Dr.-Ing.)Continuous software engineering (CSE) aims to produce high-quality software through frequent and automated releases of concurrently developed services. By replaying workloads that are representative of the production environment, load testing can identify quality degradation under realistic conditions. The literature proposes several approaches that extract representative workload models from recorded data. However, these approaches contradict CSE's high pace and automation in three aspects: they require manual parameterization, generate resource-intensive system-level load tests, and lack the means to select appropriate periods from the temporally varying production workload to justify time-consuming testing. This dissertation addresses the automated generation of tailored load tests to reduce the time and resources required for CSE-integrated testing. The tailoring needs to consider the services of interest and select the most relevant workload periods based on their context, such as the presence of a special sale when testing a webshop. Also, we intend to support experts and non-experts with a high degree of automation and abstraction. We develop and evaluate description languages, algorithms, and an automated load test generation approach that integrates workload model extraction, clustering, and forecasting. The evaluation comprises laboratory experiments, industrial case studies, an expert survey, and formal proofs. Our results show that representative context-tailored load tests can be generated by learning a workload model incrementally, enriching it with contextual information, and predicting the expected workload using time series forecasting. For further tailoring the load tests to services, we propose extracting call hierarchies from recorded invocation traces. Dedicated models of evolving manual parameterizations automate the generation process and restore the representativeness of the load tests. Furthermore, the integration of our approach with an automated execution framework enables load testing for non-experts. Following open-science practices, we provide supplementary material online. The proposed approach is a suitable solution for the described problem. Future work should refine specific building blocks the approach leverages. These blocks are the clustering and forecasting techniques from existing work, which we have assessed to be limited for predicting sharply fluctuating workloads, such as load spikes.
- «
- 1 (current)
- 2
- 3
- »