Zoltan Mann

Zoltan Mann
University of Duisburg-Essen | uni-due · paluno - The Ruhr Institute for Software Technology

PhD

About

93
Publications
27,965
Reads
How we measure 'reads'
A 'read' is counted each time someone views a publication summary (such as the title, abstract, and list of authors), clicks on a figure, or views or downloads the full-text. Learn more
1,094
Citations
Introduction
Research interests: (1) cloud computing, fog computing; (2) optimization, algorithms; (3) data protection, security, privacy; (4) self-adaptive systems

Publications

Publications (93)
Article
Full-text available
A self-adaptive system can automatically maintain its quality requirements in the presence of dynamic environment changes. Developing a self-adaptive system may be difficult due to design time uncertainty; e.g., anticipating all potential environment changes at design time is in most cases infeasible. To realize self-adaptive systems in the presenc...
Article
Full-text available
Recently, the concept of cloud computing has been extended towards the network edge. Devices near the network edge, called fog nodes, offer computing capabilities with low latency to nearby end devices. In the resulting fog computing paradigm (also called edge computing), application components can be deployed to a distributed infrastructure, compr...
Chapter
Applications for the Internet of Things (IoT) may use, beyond the IoT devices themselves, also edge and cloud resources. Thus, the modules of an application can be placed on a variety of nodes with different capabilities in terms of security, trustworthiness, and capacity. Application modules may exist in multiple instances. This makes it possible...
Article
Full-text available
As an increasing amount of data processing is done at the network edge, high energy costs and carbon emission of Edge Clouds (ECs) are becoming significant challenges. The placement of application components (e.g., in the form of containerized microservices) on ECs has an important effect on the energy consumption of ECs, impacting both energy cost...
Chapter
Computing resources are being moved towards the edge of the network, in the form of so-called fog nodes, providing benefits in terms of reduced latency, increased processing speed, data locality, and energy savings. Data produced in end devices like smartphones, sensors or IoT devices can be stored, processed and analysed across a continuum of comp...
Article
Full-text available
Fog computing is becoming a popular paradigm for bringing the advantages of the cloud nearer to the network edge. This way, computational tasks can be offloaded from end devices to nearby fog nodes, thus benefiting from high computational power and low latency at the same time. Architecture plays a central role in fog computing. Many papers on fog...
Article
Full-text available
The protection of confidential data (e.g., personal data) is a concern of increasing importance. Data processing applications are often deployed in cloud or fog/edge computing systems. Such cloud-based systems may change dynamically during operations, for example because of changes in the users, in the deployed software services, or in the infrastr...
Chapter
A self-adaptive service can maintain its QoS requirements in the presence of dynamic environment changes. To develop a self-adaptive service, service engineers have to create self-adaptation logic encoding when the service should execute which adaptation actions. However, developing self-adaptation logic may be difficult due to design time uncertai...
Article
Full-text available
Topology and Orchestration Specification for Cloud Applications (TOSCA) is an OASIS standard for specifying the topology of cloud applications, their deployment on physical or virtual cloud resources, and their orchestration. In recent years, the cloud research community has shown significant interest in TOSCA, leading to an increasing number of re...
Article
Full-text available
Fog computing combines cloud services with geographically distributed resources near the network edge to offer computational offloading possibilities to end devices, featuring low latency. Optimization of various metrics (latency, bandwidth, energy consumption etc.) plays a vital role in fog computing. We present the results of a literature review...
Chapter
An important feature of service-based and cloud-based systems is their ability to perform self-adaptation. Through self-adaptation, such systems can automatically react to changes and thus ensure the continued satisfaction of their functional and non-functional requirements. Self-adaptation may take non-negligible time (which we term adaptation lat...
Article
Finding the best way to place the components of an application on a set of heterogeneous servers is a challenging task, especially if some components are associated with security requirements. To address security requirements, several security controls may be available, some of them software-based (e.g., encryption), others hardware-based (e.g., tr...
Article
Software systems have evolved from being 'stand-alone systems' to 'systems of systems' to meet the challenging needs of societies. Contemporary software systems such as socio-technical systems are composed of distributed and heterogeneous agents, the em- bedded environment, and software components. Addressing the disruptions caused by run-time chan...
Chapter
Fog computing uses geographically distributed fog nodes that can supply nearby end devices with low-latency access to cloud-like compute resources. If the load of a fog node exceeds its capacity, some non-latency-critical application components may be offloaded to the cloud. Using commercial cloud offerings for such offloading incurs financial cost...
Article
Full-text available
Zusammenfassung Fog-Computing erlaubt, Software-Code oder Daten dynamisch von ressourcenschwachen Endgeräten an leistungsstärkere Geräte am Rande des Netzwerks und in der Cloud auszulagern. Eine solche dynamische Auslagerung ermöglicht eine performante Ausführung rechenintensiver Aufgaben, bei gleichzeitig geringer Latenzzeit für die Datenübertragu...
Preprint
[https://arxiv.org/abs/1907.09158] A self-adaptive system can modify its own structure and behavior at runtime based on its perception of the environment, of itself and of its requirements. To develop a self-adaptive system, software developers codify knowledge about the system and its environment, as well as how adaptation actions impact on the sy...
Chapter
Full-text available
This chapter aims to propose a generic conceptual framework for optimization problems in fog computing, based on consistent, well‐defined, and formalized notation for constraints and optimization objectives. It describes some essential properties and notions of optimization in general. Fog computing can be seen as an extension of cloud computing to...
Article
Full-text available
A key problem in the management of data centers is how to provision virtual machines based on the available physical machines, because an optimized placement can lead to significant reduction in energy consumption. This problem can be formulated as bin packing with heterogeneous bin types, where the cost of a bin depends on how full it is. We prove...
Chapter
Full-text available
Cloud services and cloud infrastructures become increasingly complex and dynamic: many different physical and virtual machines, applications and their components interact and all of these entities may be differently reconfigured, deployed, and migrated during run time. In addition, a multitude of stakeholders may be involved in cloud service offeri...
Conference Paper
Full-text available
In this extended abstract, we consider one important aspect of security: the protection of sensitive data from unauthorized access. We argue that (i) self-adaptation may facilitate the efficient protection of sensitive data; (ii) data protection has peculiar properties that make its treatment different from other quality attributes; and (iii) data...
Chapter
Full-text available
Data protection is a key issue in the adoption of cloud services. The project “RestAssured – Secure Data Processing in the Cloud,” financed by the European Union’s Horizon 2020 research and innovation programme, addresses the challenge of data protection in the cloud with a combination of innovative security solutions, data lifecycle management tec...
Article
Full-text available
It is known that the problem of deciding k-colorability of a graph exhibits an easy-hard-easy pattern,—that is, the average-case complexity for backtrack-type algorithms, as a function of k, has a peak. This complexity peak is either at k = χ − 1 or k = χ, where χ is the chromatic number of the graph. However, the behavior around the...
Conference Paper
Full-text available
Topology and Orchestration Specification for Cloud Applications (TOSCA) is a standard for specifying the topology of cloud applications, their deployment on cloud resources, and their orchestration. In recent years, the cloud research community has shown increasing interest in TOSCA, leading to an increasing number of publications. These publicatio...
Conference Paper
Full-text available
Ensuring the protection of sensitive data is important for the adoption of cloud services. Cloud systems are becoming increasingly complex and dynamic, leading to various potential scenarios for attackers to get access to sensitive data. To handle such data protection risks, the concept of risk patterns was introduced previously. A risk pattern mod...
Article
Full-text available
To adapt to continuously changing workloads in networks, components of the running network services may need to be replicated (scaling the network service) and allocated to physical resources (placement) dynamically, also necessitating dynamic re-routing of flows between service components. In this paper, we propose JASPER, a fully automated approa...
Conference Paper
Full-text available
Several different algorithms have been proposed in recent years for the dynamic optimization of resource allocation in virtualized data centers. The proposed methods range from fast and simple heuristics to exact algorithms that yield optimal results but take much longer. This paper suggests an algorithm portfolio approach in which multiple algorit...
Article
Full-text available
In recent years, many algorithms have been proposed for the optimized allocation of virtual machines in cloud data centers. Such algorithms are usually implemented and evaluated in a cloud simulator. This paper investigates the impact of the choice of cloud simulator on the implementation of the algorithms and on the evaluation results. In particul...
Article
Full-text available
Previous work on optimizing resource provisioning in virtualized environments focused either on mapping virtual machines (VMs) to physical machines (PMs) or mapping application components to VMs. In this paper, we argue that these two optimization problems influence each other significantly and in a highly non-trivial way. We define a sophisticated...
Article
Full-text available
References to NP-completeness and NP-hardness are common in the computer science literature, but unfortunately they are often in error or misguided. This article explains the most widespread misconceptions, why they are wrong, and why we should care.
Article
Full-text available
One of the key problems for Infrastructure-as-a-Service providers is finding the optimal allocation of virtual machines on the physical machines available in the provider's data center. Since the allocation has significant impact on operational costs as well as on the performance of the accommodated applications, several algorithms have been propos...
Article
Full-text available
When deciding the satisfiability of a Boolean formula, one promising approach is to split the formula into two smaller independent sub-formulas. While many studies report encouraging early results with such methods, the approach is rarely used in state-of-the-art solvers. In this paper, we present a technique that uses formula partitioning to guide...
Article
In this paper, we extend the classic data center allocation optimization problem for critical tenant applications that need guarantees on the required resource capacities. We identify a set of representative, user-issuable constraints and new optimization objectives and establish a mathematical and corresponding integer programming formulation. Usi...
Article
Full-text available
Finding the best way to map virtual machines (VMs) to physical machines (PMs) in a cloud data center is an important optimization problem, with significant impact on costs, performance, and energy consumption. In most situations, the computational capacity of PMs and the computational load of VMs are a vital aspect to consider in the VM-to-PM mappi...
Conference Paper
Full-text available
Previous work on optimizing resource provisioning in vir-tualized environments focused either on mapping virtual machines to physical machines (i.e., virtual machine placement) or mapping computational tasks to virtual machines (i.e., virtual machine selection). In this paper, we investigate how these two optimization problems inu-ence each other....
Conference Paper
Full-text available
Distributed clouds have recently attracted many cloud providers and researchers as a topic of intensive interest. High energy costs and carbon emissions are two significant problems in distributed clouds. Due to the geographic distribution of data centers (DCs), there are a variety of resources, energy prices and carbon emission rates to consider i...
Conference Paper
Full-text available
In the distributed cloud paradigm, data centers are geographically dispersed and interconnected over a wide-area network. Due to the geographical distribution of data centers, communication networks play an important role in distributed clouds in terms of communication cost and QoS. Large-scale, processing-intensive tasks require the cooperation of...
Article
Full-text available
Data centers in public, private, and hybrid cloud settings make it possible to provision virtual machines (VMs) with unprecedented flexibility. However, purchasing, operating, and maintaining the underlying physical resources incurs significant monetary costs and environmental impact. Therefore, cloud providers must optimize the use of physical res...
Article
Full-text available
Dynamic consolidation of virtual machines (VMs) in a cloud data center can be used to minimize power consumption. Beloglazov et al.“have proposed the MM (Minimization of Migrations) heuristic for selecting the VMs to migrate from under- or over-utilized hosts, as well as the MBFD (Modified Best Fit Decreasing) heuristic for deciding the placement o...
Article
Full-text available
Solvers for Boolean satisfiability (SAT), like other algorithms for NP-complete problems, tend to have a heavy-tailed runtime distribution. Successful SAT solvers make use of frequent restarts to mitigate this problem by abandoning unfruitful parts of the search space after some time. Although frequent restarting works fairly well, it is a quite si...
Article
Full-text available
Recently, the virtual machine allocation problem, in which virtual machines must be allocated to physical machines in cloud data centers, has received a lot of attention. This is a very complex optimization problem with many possible formulations. In order to foster the clear definition of problem variants and the comparability of algorithms to sol...
Article
Full-text available
In 'Process placement in multicore clusters: Algorithmic issues and practical techniques,' Jeannot, Mercier, and Tessier presented an algorithm called TreeMatch for determining the best placement of a set of communicating processes on a hierarchically structured computing architecture, described by a tree. In order to speed up the algorithm, it was...
Conference Paper
Full-text available
Finding the right allocation of virtual machines (VM) in cloud data centers is one of the key optimization problems in cloud computing. Accordingly, many algorithms have been proposed for the problem. However, lacking a single, generally accepted formulation of the VM allocation problem, there are many subtle differences in the problem formulations...
Conference Paper
Full-text available
The allocation of virtual machines (VMs) to physical machines in data centers is a key optimization problem for cloud service providers. It is well known that the VM allocation problem contains the classic bin packing problem as special case. This paper investigates to what extent the existing approximability results on bin packing and its generali...
Conference Paper
Full-text available
Finding the best mapping of virtual machines to physical machines in cloud data centers is a very important optimization problem, with huge impact on costs, application performance , and energy consumption. Although several algorithms have been suggested to solve this problem, most of them are either simple heuristics or use off-the-shelf, mostly i...
Article
Full-text available
Microprocessors combining CPU and GPU cores using a common last-level cache pose new challenges to cache management algorithms. Since GPU cores feature much higher data access rates than CPU cores, the majority of the available cache space will be used by GPU applications, leaving only very limited cache capacity for CPU applications, which may be...
Article
Full-text available
Backtrack-style exhaustive search algorithms for NP-hard problems tend to have large variance in their runtime. This is because "fortunate" branching decisions can lead to finding a solution quickly, whereas "unfortunate" decisions in another run can lead the algorithm to a region of the search space with no solutions. In the literature, frequent r...
Conference Paper
Full-text available
The aim of this paper is to gather insight into typical-case complexity of the Boolean Satisability (SAT) problem by mining the data from the SAT competitions. Specically, the statistical properties of the SAT benchmarks and their impact on complexity are investigated , as well as connections between dierent metrics of complexity. While some of the...
Conference Paper
Full-text available
Dividing a Boolean formula into smaller independent sub-formulae can be a useful technique for accelerating the solution of Boolean problems, including SAT and #SAT. Nevertheless , and despite promising early results, formula partitioning is hardly used in state-of-the-art solvers. In this paper, we show that this is rooted in a lack of consistency...
Article
Full-text available
We investigate asymptotically the expected number of steps taken by backtrack search for k-coloring random graphs Gn,p(n)Gn,p(n) or proving non-k-colorability, where p(n)p(n) is an arbitrary sequence tending to 0, and k is constant. Contrary to the case of constant p, where the expected runtime is known to be O(1)O(1), we prove that here the expect...
Article
Full-text available
The complexity of an algorithm is usually specified by the maximum number of steps made by the algorithm, as a function of the size of the input. However, as different inputs of equal size can yield dramatically different algorithm runtime, the size of the input is not always an appropriate basis for predicting algorithm runtime. In this paper, we...
Article
Full-text available
The frequency assignment problem (FAP) arises in wireless communication networks, such as cellular phone communication systems, television broadcasting, WLANs, and military communication systems. In all these applications, the task is to assign frequencies to a set of transmitters, subject to interference constraints. The exact form of the constrai...
Article
Full-text available
With the recent development of high-performance graphical processing units (GPUs), capable of performing general-purpose computation (GPGPU: general-purpose computation on the GPU), a new platform is emerging. It consists of a central processing unit (CPU), which is very fast in sequential execution, and a GPU, which exhibits high degree of paralle...
Conference Paper
Full-text available
In this paper, we investigate the algorithmic complexity of deciding colorability, as a function of the number of available colors. Intuitively, one may assume that the problem's complexity is highest around the chromatic number of the graph. We give substantial empirical evidence that this intuition is largely true, both for exact and heuristic gr...
Conference Paper
Full-text available
The coloring of random graphs has been the subject of intensive research in the last decades. As a result, the asymptotic behaviour of both the chromatic number and the complexity of the colorability problem are quite well understood. However, the asymptotic results give limited help in predicting the behaviour in specific finite cases. In this pap...
Conference Paper
Full-text available
This paper presents BCAT (Budapest Complexity Analysis Toolkit), a software package to facilitate research on algorithms and computational complexity. BCAT supports the implementation of computational problems, algorithms to solve the problems, and analyzers to analyze the problems. The paper contains details on the software's architecture and the...
Article
Full-text available
Workflow graphs, consisting of actions, events, and logical switches, are used to model business processes. In order to easily identify the actions within a workflow graph, it is useful to number them in such a way that the numbering reflects the structure of the workflow. However, available tools offer only rudimental numbering schemes. In the pap...
Conference Paper
Full-text available
Exact algorithms for graph coloring tend to have high vari-ance in their runtime, posing a significant obstacle to their practical application. The problem could be mitigated by appropriate prediction of the runtime. For this purpose, we devise an algorithm to efficiently compute the expected run-time of an exact graph coloring algorithm as a funct...
Article
Full-text available
System-level synthesis aims at partially automating the design and synthesis process of complex systems that consist of both hardware and software. This involves the usage of formal methods such as graph theory, as well as the formulation of some design steps explicitly as optimization problems. This paper describes such a graph-theoretic model, an...
Article
Full-text available
Most previous approaches to hardware/software partitioning considered heuristic solutions. In contrast, this paper presents an exact algorithm for the p roblem based on branch-and-bound. Several techniques are investigated to speed up the algorit hm, including bounds based on linear programming, a custom inference engine to make the most out of the...
Article
Full-text available
Evaluating the Kernighan-Lin Heuristic for Hardware/Software Partitioning In recent years, several heuristics have been proposed for the hardware/software partitioning problem. One of the most promising directions is the adaptation of the Kernighan-Lin algorithm. The Kernighan-Lin heuristic was originally developed for circuit partitioning, but it...
Article
Full-text available
Many software developers know the feeling of desperately debugging a program only to discover after a sleepless night that the error stemmed from copy-pasted code segments that had become inconsistent in subsequent editing. The problems arising from copied code are not new, and many researchers have investigated how to automatically find copied cod...
Article
Full-text available
This paper addresses the most crucial optimization problem of high-level synthesis: scheduling. A formal framework is described that was tailored specifically for the definition and investigation of the time-constrained scheduling problem of pipelined datapaths. Theoretical results are presented on the complexity of the problem. Moreover, two new h...
Article
Full-text available
Bei der Model Driven Architecture (MDA) bilden Modelle die zentralen Elemente des Softwareentwicklungsprozesses. Ziel ist es, plattformspezifische Modelle möglichst automatisiert aus plattformunabhängigen Modellen abzuleiten. Dadurch soll der Aufwand der Softwareentwicklung verringert und die Adaptierung an neue Technologien erleichtert werden.
Article
Full-text available
In order to cope with the increasing complexity of system design, component-based software engineering advocates the reuse and adaptation of existing software components. However, many applications—particularly embedded systems—consist of not only software, but also hardware components. Thus, component-based design should be extended to systems wit...
Article
Full-text available
Traditional tracing mechanisms, usually developed for use in a single-computer environment, are bound to a specific programming language. Today's highly distributed and heterogeneous computing environments require new tracing methodologies. This paper addresses the problem by reviewing ways in which the middleware might—and should—support tracing....
Conference Paper
Full-text available