An Effective Methodology to Multi-objective Design of Application Domain-specific Embedded Architectures

Author(s):  
Vincenzo Catania ◽  
Alessandro G. Di Nuovo ◽  
Maurizio Palesi ◽  
Davide Patti ◽  
Gianmarco De Francisci Morales
2002 ◽  
Vol 12 (02) ◽  
pp. 193-210 ◽  
Author(s):  
CHRISTOPH A. HERRMANN ◽  
CHRISTIAN LENGAUER

Metaprogramming is a paradigm for enhancing a general-purpose programming language with features catering for a special-purpose application domain, without a need for a reimplementation of the language. In a staged compilation, the special-purpose features are translated and optimised by a domain-specific preprocessor, which hands over to the general-purpose compiler for translation of the domain-independent part of the program. The domain we work in is high-performance parallel computing. We use metaprogramming to enhance the functional language Haskell with features for the efficient, parallel implementation of certain computational patterns, called skeletons.


2018 ◽  
Vol 214 (2) ◽  
pp. 1-8
Author(s):  
Dr. Buthainah F. AL-Dulaimi

This paper presents a novel to model application domain. Application domain description precedes requirements engineering, and is the basis for the development of a software or information system that satisfies all expectations of its users. The domain model is used to generate project specific process models.  Our aim is to develop a model description for processes which permits to create comprehensive scenarios. Modeling can be divided into a structural, and behavioral. This paper projects that an important future direction in software engineering is domain-specific software engineering. From requirements specification to design, and then implementation, a tighter coupling between the descriptions of a software system with its application domain has the potential to improve both the correctness and reliability of the software system. The greatest challenge in this area is the evolution of the application domain itself. We show how the application domain description can be mapped to requirements and discuss engineering of application domain descriptions.


Author(s):  
Nozomi Hitomi ◽  
Daniel Selva

Heuristics and meta-heuristics are often used to solve complex real-world problems such as the non-linear, non-convex, and multi-objective combinatorial optimization problems that regularly appear in system design and architecture. Unfortunately, the performance of a specific heuristic is largely dependent on the specific problem at hand. Moreover, a heuristic’s performance can vary throughout the optimization process. Hyper-heuristics is one approach that can maintain relatively good performance over the course of an optimization process and across a variety of problems without parameter retuning or major modifications. Given a set of domain-specific and domain-independent heuristics, a hyper-heuristic adapts its search strategy over time by selecting the most promising heuristics to use at a given point. A hyper-heuristic must have: 1) a credit assignment strategy to rank the heuristics by their likelihood of producing improving solutions; and 2) a heuristic selection strategy based on the credits assigned to each heuristic. The literature contains many examples of hyper-heuristics with effective credit assignment and heuristic selection strategies for single-objective optimization problems. In multi-objective optimization problems, however, defining credit is less straightforward because there are often competing objectives. Therefore, there is a need to define and assign credit so that heuristics are rewarded for finding solutions with good trades between the objectives. This paper studies, for the first time, different combinations of credit definition, credit aggregation, and heuristic selection strategies. Credit definitions are based on different applications of the notion of Pareto dominance, namely: A1) dominance of the offspring with respect to the parent solutions; A2) ability to produce non-dominated solutions with respect to the entire population; A3) Pareto ranking with respect to the entire population. Two different credit aggregation strategies for assigning credit are also examined. A heuristic will receive credit for: B1) only the solutions it created in the current iteration or B2) all solutions it created that are in the current population. Different heuristic selection strategies are considered including: C1) probability matching; C2) dynamic multi-armed bandit; and C3) Hyper-GA. Thus, we conduct an experiment with three factors: credit definition (A1, A2, A3), credit aggregation (B1, B2), and heuristic selection (C1, C2, C3) and conduct a full factorial experiment. Performance is measured by hyper-volume of the last population. All algorithms are tested on a design problem for a climate monitoring satellite constellation instead of classical benchmarking problems to apply domain-specific heuristics within the hyper-heuristic.


2020 ◽  
Vol 29 (04) ◽  
pp. 2030001
Author(s):  
Martin Macak ◽  
Mouzhi Ge ◽  
Barbora Buhnova

Nowadays, a variety of Big Data architectures are emerging to organize the Big Data life cycle. While some of these architectures are proposed for general usage, many of them are proposed in a specific application domain such as smart cities, transportation, healthcare, and agriculture. There is, however, a lack of understanding of how and why Big Data architectures vary in different domains and how the Big Data architecture strategy in one domain may possibly advance other domains. Therefore, this paper surveys and compares the Big Data architectures in different application domains. It also chooses a representative architecture of each researched application domain to indicate which Big Data architecture from a given domain the researchers and practitioners may possibly start from. Next, a pairwise cross-domain comparison among the Big Data architectures is presented to outline the similarities and differences between the domain-specific architectures. Finally, the paper provides a set of practical guidelines for Big Data researchers and practitioners to build and improve Big Data architectures based on the knowledge gathered in this study.


Author(s):  
Oliver Reinhardt ◽  
Tom Warnke ◽  
Adelinde M. Uhrmacher

AbstractConducting simulation studies within a model-based framework is a complex process, in which many different concerns must be considered. Central tasks include the specification of the simulation model, the execution of simulation runs, the conduction of systematic simulation experiments, and the management and documentation of the model’s context. In this chapter, we look into how these concerns can be separated and handled by applying domain-specific languages (DSLs), that is, languages that are tailored to specific tasks in a specific application domain. We demonstrate and discuss the features of the approach by using the modelling language ML3, the experiment specification language SESSL, and PROV, a graph-based standard to describe the provenance information underlying the multi-stage process of model development.


2010 ◽  
Vol 3 ◽  
pp. 161-178 ◽  
Author(s):  
Masaharu Imai ◽  
Yoshinori Takeuchi ◽  
Keishi Sakanushi ◽  
Nagisa Ishiura

Sign in / Sign up

Export Citation Format

Share Document