Multi-objective optimization in rule-based design space exploration
Abstract
Design space exploration (DSE) aims to find optimal design candidates of a domain with respect to different objectives where design candidates are constrained by complex structural and numerical restrictions. Rule-based DSE aims to find such candidates that are reachable from an initial model by applying a sequence of exploration rules. Solving a rule-based DSE problem is a difficult challenge due to the inherently dynamic nature of the problem. In the current paper, we propose to integrate multi-objective optimization techniques by using Non-dominated Sorting Genetic Algorithms (NSGA) to drive rule-based design space exploration. For this purpose, finite populations of the most promising design candidates are maintained wrt. different optimization criteria. In our context, individuals of a generation are defined as a sequence of rule applications leading from an initial model to a candidate model. Populations evolve by mutation and crossover operations which manipulate (change, extend or combine) rule execution sequences to yield new individuals. Our multi-objective optimization approach for rule-based DSE is domain independent and it is automated by tooling built on the Eclipse framework. The main added value is to seamlessly lift multi-objective optimization techniques to the exploration process preserving both domain independence and a high-level of abstraction. Design candidates will still be represented as models and the evolution of these models as rule execution sequences. Constraints are captured by model queries while objectives can be derived both from models or rule applications.
BibTeX
@inproceedings{Abdeen-al:ASE14,
author = {Hani Abdeen and
D{\'{a}}niel Varr{\'{o}} and
Houari A. Sahraoui and
Andr{\'{a}}s Szabolcs Nagy and
Csaba Debreceni and
{\'{A}}bel Heged{\"{u}}s and
{\'{A}}kos Horv{\'{a}}th},
title = {Multi-objective optimization in rule-based design space exploration},
booktitle = {ASE},
pages = {289--300},
publisher = {{ACM}},
year = {2014},
}