The Polyhedral Process Network (PPN) is a suitable parallel model of computation (MoC) used to specify embedded streaming applications in a parallel form facilitating the efficient mapping onto... Show moreThe Polyhedral Process Network (PPN) is a suitable parallel model of computation (MoC) used to specify embedded streaming applications in a parallel form facilitating the efficient mapping onto embedded parallel execution platforms. Unfortunately, specifying an application using a parallel MoC is a very difficult and highly error-prone task. To overcome the associated difficulties, we have developed the pn compiler, which derives PPN specifications from sequential static affine nested loop programs (SANLPs). However, there are many applications that have adaptive and dynamic behavior which cannot be expressed as SANLPs. In order to handle such dynamic applications, in this dissertation we address an important question: whether some of the static restrictions of the SANLPs can be relaxed while keeping the ability to perform compile-time analysis and to derive PPNs in an automated way. Achieving this will significantly extend the range of applications that can be parallelized in an automated way. By studying different dynamic applications we distinguished three relaxations to SANLP programs that would allow one to specify dynamic applications as sequential programs. These relaxations allow dynamic if-conditions, for-loops with dynamic bounds and while-loops in a program. The first relaxation has already been considered. In this dissertation, we consider the other two more difficult relaxations. Show less
Data mining tools often only use a single type of information. The method proposed in this thesis allows the user to insert relational information into existing data mining tools that are designed... Show moreData mining tools often only use a single type of information. The method proposed in this thesis allows the user to insert relational information into existing data mining tools that are designed for content-based information. It does so by regarding the contents of the neighborhood of an element. In this way, the content variability of elements is reduced by using the homophily in the network. Show less
In this thesis we investigate different techniques and formalisms to address complexity introduced by unbounded structures in object-oriented programs. We give a representation of a weakest... Show moreIn this thesis we investigate different techniques and formalisms to address complexity introduced by unbounded structures in object-oriented programs. We give a representation of a weakest precondition calculus for abstract object creation in dynamic logic. Based on this calculus we define symbolic execution including abstract object creation. We investigate the complex behaviour introduced by multi-threading and give a formalism based on the transformation of multi-threaded reentrant call-graphs to thread automata and the application of context free language reachability to decide deadlock freedom of such programs. We give a formalisation of the observable interface behaviour of a concurrent, object-oriented language with futures and promises. The calculus captures the core of the Creol language and allows for a comparison with the concurrency model of thread-based, object-oriented languages like Java or C#. We give a technique to detect deadlock freedom for an Actor-like subset of the Creol language. Show less
Scientific practice is an activity that is data-intensive and widely supported by computerized systems, data repositories included. It is also an activity that is highly creative and, as such, can... Show moreScientific practice is an activity that is data-intensive and widely supported by computerized systems, data repositories included. It is also an activity that is highly creative and, as such, can benefit from a moment of openness, playfulness and exploration. Motivated also by recent developments in the field of Human Computer Interaction regarding play and games, this work investigates playfulness as a desirable attribute of a scientist's interaction with scientific data in repositories. Focus is on data repositories of a specific domain of science, i.e. the life sciences, and of a particular type of data, i.e. image data. Having introduced a new but relevant attribute for interfaces to scientific image repositories, i.e. playfulness, the question we ask is the following: What could playfulness with scientific images amount to and how do we design for it? Via case studies and reviews, we flesh out particular elements of play for exploration and implement artefacts, i.e. interfaces and games, that exemplify instances of playful interaction with image research material in collections. Show less
This doctoral dissertation describes a series of empirical investigations into representation, dissemination and coordination of software architecture design in the context of global software... Show moreThis doctoral dissertation describes a series of empirical investigations into representation, dissemination and coordination of software architecture design in the context of global software development. A particular focus is placed on model-centric and model-driven software development. Show less
This thesis discusses solutions to several open problems in Protein-Protein Interaction (PPI) networks with the aid of Knowledge Discovery. PPI networks are usually represented as undirected graphs... Show moreThis thesis discusses solutions to several open problems in Protein-Protein Interaction (PPI) networks with the aid of Knowledge Discovery. PPI networks are usually represented as undirected graphs, with nodes corresponding to proteins and edges representing interactions among protein pairs. A large amount of available PPI data and noise within it has made the knowledge discovery process a necessary central part for the network analysis. We define Knowledge Discovery as a process of extracting informative knowledge from the huge amount of data. Much success has been achieved when the input data is represented as a set of independent instances and their attributes. But, in the context of PPI networks, there is interesting knowledge to be mined from the relationships between instances (proteins). The resulting research area is called ``Graph Mining''. Here, the input data is modeled as a graph and the output could be any type of knowledge. In this thesis, we propose several graph mining algorithms to examine structural characteristics of PPI networks and link them to the information useful for biologists, such as function or disease. Show less
Real-world (black-box) optimization problems often involve various types of uncertainties and noise emerging in different parts of the optimization problem. When this is not accounted for,... Show moreReal-world (black-box) optimization problems often involve various types of uncertainties and noise emerging in different parts of the optimization problem. When this is not accounted for, optimization may fail or may yield solutions that are optimal in the classical strict notion of optimality, but fail in practice. Robust optimization is the practice of optimization that actively accounts for uncertainties and/or noise. Evolutionary Algorithms form a class of optimization algorithms that use the principle of evolution to find good solutions to optimization problems. Because uncertainty and noise are indispensable parts of nature, this class of optimization algorithms seems to be a logical choice for robust optimization scenarios. This thesis provides a clear definition of the term robust optimization and a comparison and practical guidelines on how Evolution Strategies, a subclass of Evolutionary Algorithms for real-parameter optimization problems, should be adapted for such scenarios. Show less
Scheduling plays a significant role in producing good performance for clusters and grids. Smart scheduling policies in these systems are essential to enable efficient resource allocation mechanisms... Show moreScheduling plays a significant role in producing good performance for clusters and grids. Smart scheduling policies in these systems are essential to enable efficient resource allocation mechanisms. One of the key factors that have a strong effect on scheduling is the workload. This workload problem is associated with four research topics to obtain an effective scheduler, namely workload characterisation, workload modeling, performance evaluation and prediction, and scheduling design. Workload data collected from real systems are the best source for improving our knowledge about performance issues of clusters and grids. Observed features of these workloads are precious sources of clues, which can be utilized to enhance scheduling. To this end, several long-term parallel and grid workloads have been collected and this thesis used these real workloads in the study of workload characterisation, workload modeling, per formance evaluation and prediction. Our research resulted in many workload modeling tools, a performance predictor and several useful clues that are essential to develop efficient cluster and grid schedulers. Show less