In model-driven optimization (MDO), domain-specific models are used to define and solve optimization problems via meta-heuristic search, often via evolutionary algorithms. Models are typically evolved using mutations, which can be formally specified as graph transformations. So far, only mutations have been used to generate new solution models from existing ones; a crossover mechanism has not yet been developed. In this paper, we present a generic crossover construction for graph-like structures, which can be used to implement crossover operators for models in MDO. We prove basic properties of our construction and show how it can be used to implement a whole set of crossover operators that have been proposed for specific problems and situations on graphs. In particular, we present a specialization of our construction to models defined in the Eclipse Modeling Framework.
Optimization problems in software engineering typically deal with structures as they occur in the design and maintenance of software systems. In model-driven optimization (MDO), domain-specific models are used to represent these structures while evolutionary algorithms are often used to solve optimization problems. However, designing appropriate models and evolutionary algorithms to represent and evolve structures is not always straightforward. Domain experts often need deep knowledge of how to configure an evolutionary algorithm. This makes the use of model-driven meta-heuristic search difficult and expensive. We present a graph-based framework for MDO that identifies and clarifies core concepts and relies on mutation operators to specify evolutionary change. This framework is intended to help domain experts develop and study evolutionary algorithms based on domain-specific models and operators. In addition, it can help in clarifying the critical factors for conducting reproducible experiments in MDO. Based on the framework, we are able to take a first step toward identifying and studying important properties of evolutionary operators in the context of MDO. As a showcase, we investigate the impact of soundness and completeness at the level of mutation operator sets on the effectiveness and efficiency of evolutionary algorithms.
In evolutionary algorithms, mutation and crossover are used to explore a search space for solutions. For the model-based approach to model-driven optimization, where models are used to represent solutions, no crossover operator has been introduced yet. However, theoretical and experimental evidence shows that evolutionary search can benefit from the use of crossover. We present a configurable crossover operator for models defined in the Eclipse Modeling Framework (EMF), discuss several variants of incorporating domain knowledge into this operator, and argue that it produces EMF models again. We also present a prototype implementation of our crossover operator and conduct an initial evaluation to investigate the effectiveness of evolutionary computations that use both mutation and crossover.
In model-driven optimization (MDO), domain-specific models are used to define and solve optimization problems with evolutionary algorithms. Models are typically evolved using mutations, which can be formally specified as graph transformations. So far, only mutations have been used in MDO to generate new solutions from existing ones; a crossover mechanism has not yet been elaborated. In this paper, we present a generic crossover construction for graph-like structures that can be used to implement crossover operators in MDO. We prove basic properties of our construction and show how it can be used to implement a whole set of crossover operators that have been proposed for specific problems and situations on graphs.
Recently, there has been increased interest in combining model-driven engineering and search-based software engineering. Such approaches use meta-heuristic search guided by search operators (model mutators and sometimes breeders) implemented as model transformations. The design of these operators can substantially impact the effectiveness and efficiency of the meta-heuristic search. Currently, designing search operators is left to the person specifying the optimisation problem. However, developing consistent and efficient search-operator rules requires not only domain expertise but also in-depth knowledge about optimisation, which makes the use of model-based meta-heuristic search challenging and expensive. In this paper, we propose a generalised approach to automatically generate atomic multiplicity-preserving search operators for a given optimisation problem. This reduces the effort required to specify an optimisation problem and shields optimisation users from the complexity of implementing efficient meta-heuristic search mutation operators. We evaluate our approach with a set of case studies and show that the automatically generated rules are comparable to, and in some cases better than, manually created rules at guiding evolutionary search towards near-optimal solutions.
Search-Based Software Engineering (SBSE) is about solving software development problems by formulating them as optimization problems.In the last years, combining SBSE and Model-Driven Engineering (MDE), where models and model transformations are treated as key artifacts in the development of complex systems, has become increasingly popular.While search-based techniques have often successfully been applied to tackle MDE problems, a recent line of research investigates how a model-driven design can make optimization more easily accessible to a wider audience.In previous model-driven optimization efforts, a major design decision concerns the way in which solutions are encoded.Two main options have been explored: a model-based encoding representing candidate solutions as models, and a rule-based encoding representing them as sequences of transformation rule applications.While both encodings have been applied to different use cases, no study has yet compared them systematically.To close this gap, we evaluate both approaches on a common set of optimization problems, investigating their impact on the optimization performance.Additionally, we discuss their differences, strengths, and weaknesses laying the foundation for a knowledgeable choice of the right encoding for the right problem.
This tutorial presents Henshin, a versatile model transformation language increasingly used in academic and industrial applications. Henshin is based on the paradigm of graph transformation and provides a comprehensive tool set that supports largely declarative transformation speciĄcations and various formal analyses. We present the application of Henshin in a search-based model optimisation task, where the goal is to Ąnd an optimal model regarding a given Ątness function. Using Henshin, we specify evolutionary operators for MDEOptimiser, a novel search-based model optimisation tool.
The SIVA Suite is an open source framework for the creation, playback, and administration of hypervideos. Allowing the definition of complex navigational structures, our hypervideos are well suited for different scenarios. Compared to traditional linear videos, they especially excel in e-learning and training situations (see [1] and [2]), where fitting the teaching material to the needs of the viewer can be crucial. Other fields of application include virtual tours through buildings or cities, sports events, and interactive video stories. The SIVA Suite consists of an authoring tool (SIVA Producer), an HTML5 hypervideo player (SIVA Player), and a Web server (SIVA Server) for user and video management. It has been evaluated in various scenarios with several usability tests and has been improved step-by-step since 2008.
Hypervideos, consisting of media enriched and linked video scenes, have proven useful in many scenarios. Software solutions exist that help authors make hypervideos from media files. However, recording and editing video scenes for hypervideos is a tedious and time consuming job. Huge video databases like YouTube exist that can provide rich sources of video material. Yet it is often illegal to download and re-purpose videos from these sites, requiring a solution that links whole videos or parts of videos and plays them in an embedded player. This work presents the SIVA Web Producer, a Chrome extension for the creation of hypervideos consisting of scenes from YouTube videos. After creating a project, the SIVA Web Producer embeds YouTube videos or parts thereof as video clips. These can then be linked in a scene graph and extended with annotations. The plug-in provides a preview space for testing the hypervideo. Finalized videos can be published on the SIVA Web Portal or embedded in a Web page.
Dual screen concepts for hypervideo-based physiotherapy training are important in healthcare settings, but existing applications often cannot be adapted to personal needs and do not support correct posture. In this paper, we describe the design and implementation of a dual screen application (handheld and TV) that allows patients to view hypervideos designed to help them correctly perform their exercises. This approach lets patients adapt their training to their daily needs and their overall training progress. We evaluated this prototypical implementation in a user test with post-operative care prostate cancer patients. From our results, we derived design recommendations for dual screen physical training hypervideo applications.
Adapting to personal needs and supporting correct posture are important in physiotherapy training. In this demo, we show a dual screen application (handheld and TV) that allows patients to view hypervideo training programs. Designed to guide their daily exercises, these programs can be adapted to daily needs. The dual screen concept offers the positional flexibility missing in single screen solutions.
ISSN 1947-4598 http://sigmm.org/records 14 ACM SIGMM Records Vol. 8, No. 1, January 2016 The server furthermore provides the SIVA Player Stats, the back end for the logging functionality of the player. This part of the application facilitates analyzing and evaluating the logged usage data. Watching, searching, exporting, or visualizing these data can be done video based. One of the currently available diagram views is the Sunburst diagram (see Figure 6), which shows how often certain paths were taken in a video by the viewers. Another diagram is a Treemap which shows the different scenes of the video and the events in these scenes. Thereby, the sizes of the boxes are representing the frequency of occurrence of one single event. This part of the application is only accessible for administrators registered in the front-end.
The creation of hypervideos usually requires a lot of planning and is time consuming with respect to media content creation. However, when structure and media are put together to author a hypervideo, it may only require minor changes to make the hypervideo available in other languages or for another user group (like beginners versus experts). However, to make the translation of media and all navigation elements of a hypervideo efficient and manageable, the authoring tool needs a GUI that provides a good overview of elements that can be translated and of missing translations. In this work, we propose screen concepts that help authors to provide different versions (for example language and/or experience level) of a hypervideo. We analyzed different variants of GUI elements and evaluated them in a survey. We draw guidelines from the results that can help with the creation of similar systems in the future. ACM Classification
Information networks are nowadays an important source of knowledge, indispensable for our daily tasks. Because of their size, however, efficient navigation can be a challenge. Following the idea to use network hierarchies as guidance in human as well as algorithmic search processes, this work focuses on the creation of optimized navigation hierarchies. Based on an established model of human navigation, decentralized search, we defined two quality criteria for network hierarchies and propose a genetic algorithm applying them. We conducted experiments on an information as well as a social network and analyzed the optimization effectivity of our approach. Furthermore, we investigated the structure of the resulting navigation hierarchies. We found our algorithm to be well-suited for the task of hierarchy optimization and found distinct structural properties influencing the quality of navigational hierarchies.
This paper presents a solution to the TTC2016 challenge ”The Class Responsibility Assignment Case”. Our solution uses the Henshin model transformation language to specify genetic operators in a standard genetic algorithm framework. Due to its formal foundation based on algebraic graph transformations, Henshin is well-suited to specify fundamental change patterns for genetic operators in a declarative manner. Adopting a simple, widely used genetic algorithm, we focus on effective implementation strategies for the genetic operators as well as additional operations. We analyzed our implemented strategies on the given evaluation criteria, finding a drastic impact of some configuration options on the runtime and quality of its results.
We present a fast reconstruction filtering method for images generated with Monte Carlo-based rendering techniques. Our approach specializes in reducing global illumination noise in the presence of depth-of-field effects at very low sampling rates and interactive frame rates. We employ edge-aware filtering in the sample space to locally improve outgoing radiance of each sample. The improved samples are then distributed in the image plane using a fast, linear manifold-based approach supporting very large circles of confusion. We evaluate our filter by applying it to several images containing noise caused by Monte Carlo-simulated global illumination, area light sources and depth of field. We show that our filter can efficiently denoise such images at interactive frame rates on current GPUs and with as few as 4-16 samples per pixel. Our method operates only on the colour and geometric sample information output of the initial rendering process. It does not make any assumptions on the underlying rendering technique and sampling strategy and can therefore be implemented completely as a post-process filter.
Due to their structure, hypervideos are well suited for different scenarios. Compared to traditional linear videos, they have advantages especially in e-learning and training, where the study matter can be fitted to the needs of the viewer. In this paper we present the SIVA Suite, an open source framework for the creation, playback, and administration of hypervideos. The SIVA Suite consists of an authoring tool, an HTML5 hypervideo player, and a Web server for user and video management. This framework has been successfully used for the creation of hypervideos in different use cases, e.g. a medical hypervideo training. It was evaluated in several usability tests and improved step-by-step since 2008.
In this paper we outline instructional, legal, and software requirements as well as a prototypical software implementation for a multimedia help system in a rehabilitation scenario. The help system will be used by patients in a rehabilitation clinic to support their pelvic floor exercises. After describing the use case we will outline the requirements for the scenario and show how our software was extended to meet the requirements. We present the key features of each component of the SIVA Suite: the authoring tool, the redesigned HTML5 player, and the server application. Thereby, important new features are described and illustrated. Design decisions are presented and explained.
The Web evolved from a simple information medium to an interactive application platform featuring advanced 2D layouts, videos, and audio. At the same time, support for hardware-accelerated 3D graphics improves continuously even among mobile devices. Hence, there is a renewed interest in adding interactive 3D graphics to the overall Web experience and therefore a need for high-performance data processing beyond DOM modifications through JavaScript. A challenge in adding this functionality to Web technologies is to close the deep gap between low-level hardware programming (e.g. using WebGL or WebCL) and high-level Web development with HTML, CSS and JavaScript. In this paper we present Xflow, a system for declarative, high-performance data processing. In combination with XML3D, it allows Web developers to combine a 3D scene graph with dataflows. Our approach is general enough to allow meshes, shaders, texture samplers and the canvas itself as sink of these dataflows. Thus it enables data processing e.g. for dynamic meshes, animation of shader parameters, image processing and post processing. In this first stage, we define a set of generic building blocks that can be used to construct more complex operations. This gives a large degree of flexibility, but is still abstract enough to increase ease-of-use and ensure security. To maximize performance, dataflows are automatically connected to the render pipeline and mapped to both CPU and GPU, thus harnessing parallelization. In order to evaluate our system, we have created a number of examples.