362,465 research outputs found
Search-Based Model Transformations
Huge efforts have been invested in the last decade concerning the establishment of dedicated analysis methods and techniques for model transformations. The analysis of general properties such as termination and confluence as well as specific properties defined for one particular transformation have been studied for different transformation kinds and languages. What most transformation analyses have in common is that they consider the transformation specifications as their primary source. However, as I will show in my presentation, methods and techniques deployed for analysing potential transformation executions at runtime are needed as well. As transformation executions quickly span huge transformation spaces, I will show how to effectively analyse and guide transformation executions towards fulfilling multiple, potentially conflicting transformation goals by employing search-based techniques.Universidad de Málaga. Campus de Excelencia Internacional Andalucía Tech
Search‐based model transformations
Model transformations are an important cornerstone of model‐driven engineering, a discipline which facilitates the abstraction of relevant information of a system as models. The success of the final system mainly depends on the optimization of these models through model transformations. Currently, the application of transformations is realized either by following the apply‐as‐long‐as‐possible strategy or by the provision of explicit rule orchestrations. This implies two main limitations. First, the optimization objectives are implicitly hidden in the transformation rules and their orchestration. Second, manually finding the best orchestration for a particular scenario is a major challenge due to the high number of possible combinations.
To overcome these limitations, we present a novel framework that builds on the non‐intrusive integration of optimization and model transformation technologies. In particular, we formulate the transformation orchestration task as an optimization problem, which allows for the efficient exploration of the transformation space and explication of the transformation objectives. Our generic framework provides several search algorithms and guides the user in providing a proper search configuration. We present different instantiations of our framework to demonstrate its feasibility, applicability, and benefits using several case studiesEuropean Commission ICT Policy Support Programme 317859Ministerio de Economia y Competitividad TIN2015-70560-RJunta de Andalucía P10-TIC-5960Junta de Andalucía P12-TIC-186
Search-Based Model Transformations with MOMoT
Many scenarios require flexible model transformations as
their execution should of course produce models with the best possible
quality. At the same time, transformation problems often span a very
large search space with respect to possible transformation results. Thus,
guidance for transformation executions to find good solutions without
enumerating the complete search space is a must.
This paper presents MOMoT, a tool combining the power of model
transformation engines and meta-heuristics search algorithms. This
allows to develop model transformation rules as known from existing
approaches, but for guiding their execution, the transformation engineers
only have to specify transformation goals, and then the search
algorithms take care of orchestrating the set of transformation rules to
find models best fulfilling the stated, potentially conflicting transformation
goals. For this, MOMoT allows to use a variety of different search
algorithms. MOMoT is available as an open-source Eclipse plug-in providing
a non-intrusive integration of the Henshin graph transformation
framework and the MOEA search algorithm framework
Transformation As Search
In model-driven engineering, model transformations are con- sidered a key element to generate and maintain consistency between re- lated models. Rule-based approaches have become a mature technology and are widely used in different application domains. However, in var- ious scenarios, these solutions still suffer from a number of limitations that stem from their injective and deterministic nature. This article pro- poses an original approach, based on non-deterministic constraint-based search engines, to define and execute bidirectional model transforma- tions and synchronizations from single specifications. Since these solely rely on basic existing modeling concepts, it does not require the intro- duction of a dedicated language. We first describe and formally define this model operation, called transformation as search, then describe a proof-of-concept implementation and discuss experiments on a reference use case in software engineering
Model Transformation Modularization as a Many-Objective Optimization Problem
Model transformation programs are iteratively refined, restructured, and evolved due to many reasons such as fixing bugs
and adapting existing transformation rules to new metamodels version. Thus, modular design is a desirable property for model
transformations as it can significantly improve their evolution, comprehensibility, maintainability, reusability, and thus, their overall
quality. Although language support for modularization of model transformations is emerging, model transformations are created as
monolithic artifacts containing a huge number of rules. To the best of our knowledge, the problem of automatically modularizing model
transformation programs was not addressed before in the current literature. These programs written in transformation languages, such
as ATL, are implemented as one main module including a huge number of rules. To tackle this problem and improve the quality and
maintainability of model transformation programs, we propose an automated search-based approach to modularize model
transformations based on higher-order transformations. Their application and execution is guided by our search framework which
combines an in-place transformation engine and a search-based algorithm framework. We demonstrate the feasibility of our approach
by using ATL as concrete transformation language and NSGA-III as search algorithm to find a trade-off between different well-known
conflicting design metrics for the fitness functions to evaluate the generated modularized solutions. To validate our approach, we apply
it to a comprehensive dataset of model transformations. As the study shows, ATL transformations can be modularized automatically,
efficiently, and effectively by our approach. We found that, on average, the majority of recommended modules, for all the ATL programs,
by NSGA-III are considered correct with more than 84% of precision and 86% of recall when compared to manual solutions provided
by active developers. The statistical analysis of our experiments over several runs shows that NSGA-III performed significantly better
than multi-objective algorithms and random search. We were not able to compare with existing model transformations modularization
approaches since our study is the first to address this problem. The software developers considered in our experiments confirm the
relevance of the recommended modularization solutions for several maintenance activities based on different scenarios and interviews.Comisión Interministerial de Ciencia y Tecnología TIN2015-70560-RJunta de Andalucía P12-TIC-186
Automatic Feature Engineering through Monte Carlo Tree Search
The performance of machine learning models depends heavily on the feature space and feature engineering. Although neural networks have made significant progress in learning latent feature spaces from data, compositional feature engineering through nested feature transformations can reduce model complexity and can be particularly desirable for interpretability. To find suitable transformations automatically, state-of-the-art methods model the feature transformation space by graph structures and use heuristics such as -greedy to search for them. Such search strategies tend to become less efficient over time because they do not consider the sequential information of the candidate sequences and cannot dynamically adjust the heuristic strategy. To address these shortcomings, we propose a reinforcement learning-based automatic feature engineering method, which we call Monte Carlo tree search Automatic Feature Engineering (mCAFE). We employ a surrogate model that can capture the sequential information contained in the transformation sequence and thus can dynamically adjust the exploration strategy. It balances exploration and exploitation by Thompson sampling and uses a Long Short Term Memory (LSTM) based surrogate model to estimate sequences of promising transformations. In our experiments, mCAFE outperformed state-of-the-art automatic feature engineering methods on most common benchmark datasets
Modeling lexical decision : the form of frequency and diversity effects
What is the root cause of word frequency effects on lexical decision times? W. S. Murray and K. I. Forster (2004) argued that such effects are linear in rank frequency, consistent with a serial search model of lexical access. In this article, the authors (a) describe a method of testing models of such effects that takes into account the possibility of parametric overfitting; (b) illustrate the effect of corpus choice on estimates of rank frequency; (c) give derivations of nine functional forms as predictions of models of lexical decision; (d) detail the assessment of these models and the rank model against existing data regarding the functional form of frequency effects; and (e) report further assessments using contextual diversity, a factor confounded with word frequency. The relationship between the occurrence distribution of words and lexical decision latencies to those words does not appear compatible with the rank hypothesis, undermining the case for serial search models of lexical access. Three transformations of contextual diversity based on extensions of instance models do, however, remain as plausible explanations of the effect
Costing JIT Traces
Tracing JIT compilation generates units of compilation that
are easy to analyse and are known to execute frequently. The AJITPar
project aims to investigate whether the information in JIT traces can be
used to make better scheduling decisions or perform code transformations
to adapt the code for a specific parallel architecture. To achieve this goal,
a cost model must be developed to estimate the execution time of an
individual trace.
This paper presents the design and implementation of a system for extracting
JIT trace information from the Pycket JIT compiler. We define
three increasingly parametric cost models for Pycket traces. We perform
a search of the cost model parameter space using genetic algorithms to
identify the best weightings for those parameters. We test the accuracy
of these cost models for predicting the cost of individual traces on a set
of loop-based micro-benchmarks. We also compare the accuracy of the
cost models for predicting whole program execution time over the Pycket
benchmark suite. Our results show that the weighted cost model
using the weightings found from the genetic algorithm search has the
best accuracy
- …