Efficient parallel multi-objective optimization for real-time systems software design exploration

Real-time embedded systems may be composed of a large number of time constrained functions. During software architecture design, these functions must be assigned to tasks that will run the functions on the top of a real-time operating systems (RTOS). This is a challenging work due to the large number of valid candidate functions to tasks assignment solutions. Moreover, the impact of the assignment on the system performance criteria (often conflicting) should be taken into account in the architecture exploration. The automation of the design exploration by the use of metaheuristics such as multi-objective evolutionary algorithm (MOEA) is a suitable way to help the designers. MOEAs approximate near-optimal alternatives at a reasonable time when compared to an exact search method. However, for large-scale systems even a MOEA method is impractical due to the increased time required to solve a problem instance. To tackle this problem, we present in this article a parallel implementation of the Pareto Archived Evolution Strategy (PAES) algorithm used as a MOEA for the design exploration. The proposed parallelization method is based on the well-known Master-Slave paradigm. Additionally, it involves a new selection scheme in the PAES algorithm. Results of experimentations provide evidence that, on one hand, the parallel approach can considerably speed up the design exploration and the optimization processes. On the other hand, the proposed selection strategy improves the quality of obtained solutions as compared to the original PAES selection schema.

[1]  GoossensJoël,et al.  Periodicity of real-time schedules for dependent periodic tasks on identical multiprocessor platforms , 2016 .

[2]  Heiko Koziolek,et al.  PerOpteryx: automated application of tactics in multi-objective software architecture optimization , 2011, QoSA-ISARCS '11.

[3]  Alain Plantec,et al.  Can We Increase the Usability of Real Time Scheduling Theory? The Cheddar Project , 2008, Ada-Europe.

[4]  Joël Goossens,et al.  Limitation of the hyper-period in real-time periodic task set generation , 2001 .

[5]  Mohamed Jmaiel,et al.  Architecture Exploration of Real-Time Systems Based on Multi-objective Optimization , 2015, 2015 20th International Conference on Engineering of Complex Computer Systems (ICECCS).

[6]  Giorgio C. Buttazzo,et al.  Measuring the Performance of Schedulability Tests , 2005, Real-Time Systems.

[7]  David W. Corne,et al.  Approximating the Nondominated Front Using the Pareto Archived Evolution Strategy , 2000, Evolutionary Computation.

[8]  Gary B. Lamont,et al.  Evolutionary Algorithms for Solving Multi-Objective Problems , 2002, Genetic Algorithms and Evolutionary Computation.

[9]  Julio Ortega Lopera,et al.  Comparison of parallel multi-objective approaches to protein structure prediction , 2011, The Journal of Supercomputing.

[10]  Michael T. M. Emmerich,et al.  An evolutionary multiobjective optimization approach to component-based software architecture design , 2011, 2011 IEEE Congress of Evolutionary Computation (CEC).

[11]  Lothar Thiele,et al.  A Tutorial on the Performance Assessment of Stochastic Multiobjective Optimizers , 2006 .

[12]  Sanghamitra Bandyopadhyay,et al.  Some Single- and Multiobjective Optimization Techniques , 2013 .

[13]  Enrique Alba,et al.  Parallelism and evolutionary algorithms , 2002, IEEE Trans. Evol. Comput..

[14]  Laurent Pautet,et al.  Automatic selection and composition of model transformations alternatives using evolutionary algorithms , 2015, ECSA Workshops.

[15]  References , 1971 .

[16]  Enrique Alba,et al.  Parallel Evolutionary Multiobjective Optimization , 2006, Parallel Evolutionary Computations.

[17]  Gary B. Lamont,et al.  Evolutionary Algorithms for Solving Multi-Objective Problems (Genetic and Evolutionary Computation) , 2006 .