Algoritmo genético permutacional para el despliegue y la planificación de sistemas de tiempo real distribuidos

The deployment and scheduling of tasks and messages in distributed real-time systems are NP-hard problems, so there are no optimal methods to solve them in polynomial time. Consequently, these problems are suitable to be approached with generic search and optimisation algorithms. In this paper we propose a multi-objective genetic algorithm based on a permutational solution encoding for the deployment and scheduling of distributed real-time systems. Besides deploying and scheduling tasks and messages, the algorithm can minimize the number of the used computers, the utilization of computing and networking resources and the average worst-case response times of the applications. The experiments show that this genetic algorithm can successfully synthesize complex distributed real-time systems in reasonable times.

[1]  C. Ribeiro,et al.  A Tabu Search Approach to Task Scheduling on Heterogeneous Processors under Precedence Constraints , 1995, Int. J. High Speed Comput..

[2]  John A. Clark,et al.  Holistic schedulability analysis for distributed hard real-time systems , 1994, Microprocess. Microprogramming.

[3]  Kalyanmoy Deb,et al.  A fast and elitist multiobjective genetic algorithm: NSGA-II , 2002, IEEE Trans. Evol. Comput..

[4]  Niraj K. Jha,et al.  MOGAC: a multiobjective genetic algorithm for hardware-software cosynthesis of distributed embedded systems , 1998, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[5]  P. Ramanathan,et al.  A genetic approach for scheduling non-preemptive tasks with precedence and deadline constraints , 1993, [1993] Proceedings of the Twenty-sixth Hawaii International Conference on System Sciences.

[6]  Michael González Harbour,et al.  Schedulability analysis for tasks with static and dynamic offsets , 1998, Proceedings 19th IEEE Real-Time Systems Symposium (Cat. No.98CB36279).

[7]  Lawrence. Davis,et al.  Handbook Of Genetic Algorithms , 1990 .

[8]  Fred W. Glover,et al.  Future paths for integer programming and links to artificial intelligence , 1986, Comput. Oper. Res..

[9]  Petru Eles,et al.  Immune Genetic Algorithms for Optimization of Task Priorities and FlexRay Frame Identifiers , 2009, 2009 15th IEEE International Conference on Embedded and Real-Time Computing Systems and Applications.

[10]  Ravi Sethi,et al.  The Complexity of Flowshop and Jobshop Scheduling , 1976, Math. Oper. Res..

[11]  John A. Stankovic,et al.  Applicability of simulated annealing methods to real-time scheduling and jitter control , 1995, Proceedings 16th IEEE Real-Time Systems Symposium.

[12]  Alberto L. Sangiovanni-Vincentelli,et al.  Optimizing End-to-End Latencies by Adaptation of the Activation Events in Distributed Automotive Systems , 2007, 13th IEEE Real Time and Embedded Technology and Applications Symposium (RTAS'07).

[13]  Li Shang,et al.  SLOPES: Hardware–Software Cosynthesis of Low-Power Real-Time Distributed Embedded Systems With Dynamically Reconfigurable FPGAs , 2007, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.

[14]  John H. Holland,et al.  Adaptation in Natural and Artificial Systems: An Introductory Analysis with Applications to Biology, Control, and Artificial Intelligence , 1992 .

[15]  Scott Kirkpatrick,et al.  Optimization by simulated annealing: Quantitative studies , 1984 .

[16]  Petru Eles,et al.  Design optimization of mixed time/event-triggered distributed embedded systems , 2003, First IEEE/ACM/IFIP International Conference on Hardware/ Software Codesign and Systems Synthesis (IEEE Cat. No.03TH8721).

[17]  Petru Eles,et al.  Schedulability analysis and optimization for the synthesis of multi-cluster distributed embedded systems , 2003, 2003 Design, Automation and Test in Europe Conference and Exhibition.

[18]  Tobias Achterberg,et al.  SCIP: solving constraint integer programs , 2009, Math. Program. Comput..

[19]  Judea Pearl,et al.  Heuristics : intelligent search strategies for computer problem solving , 1984 .

[20]  Rolf Ernst,et al.  A framework for modular analysis and exploration of heterogeneous embedded systems , 2006, Real-Time Systems.

[21]  Anne-Marie Déplanche,et al.  A genetic algorithm for scheduling tasks in a real-time distributed system , 1998, Proceedings. 24th EUROMICRO Conference (Cat. No.98EX204).

[22]  Ekain Azketa,et al.  Permutational genetic algorithm for fixed priority scheduling of distributed real-time systems aided by network segmentation , 2011 .

[23]  J. Javier Gutiérrez,et al.  An empirical study of permutational genetic crossover and mutation operators on the fixed priority assignment in distributed real-time systems , 2012, 2012 IEEE International Conference on Industrial Technology.

[24]  Michael González Harbour,et al.  Exploiting precedence relations in the schedulability analysis of distributed real-time systems , 1999, Proceedings 20th IEEE Real-Time Systems Symposium (Cat. No.99CB37054).

[25]  Hadrien Cambazard,et al.  Solving a real-time allocation problem with constraint programming , 2008, J. Syst. Softw..

[26]  Alan Burns,et al.  Allocating hard real-time tasks: An NP-Hard problem made easy , 1992, Real-Time Systems.

[27]  I ScottKirkpatrick Optimization by Simulated Annealing: Quantitative Studies , 1984 .

[28]  Petru Eles,et al.  Flexibility Driven Scheduling and Mapping for Distributed Real-Time Systems , 2002 .

[29]  Marga Marcos,et al.  Schedulability analysis of multi-packet messages in segmented CAN , 2012, Proceedings of 2012 IEEE 17th International Conference on Emerging Technologies & Factory Automation (ETFA 2012).

[30]  Celso C. Ribeiro,et al.  Performance evaluation of a parallel tabu search task scheduling algorithm , 2000, Parallel Comput..

[31]  Wei Zheng,et al.  Definition of Task Allocation and Priority Assignment in Hard Real-Time Distributed Systems , 2007, 28th IEEE International Real-Time Systems Symposium (RTSS 2007).

[32]  J. Javier Gutiérrez,et al.  Optimized priority assignment for tasks and messages in distributed hard real-time systems , 1995, Proceedings of Third Workshop on Parallel and Distributed Real-Time Systems.

[33]  Wun-Hwa Chen,et al.  A hybrid heuristic to solve a task allocation problem , 2000, Comput. Oper. Res..

[34]  Alexander Schrijver,et al.  Theory of linear and integer programming , 1986, Wiley-Interscience series in discrete mathematics and optimization.

[35]  Christian Herde,et al.  RTSAT-- An Optimal and Efficient Approach to the Task Allocation Problem in Distributed Architectures , 2006, 2006 27th IEEE International Real-Time Systems Symposium (RTSS'06).

[36]  David K. Smith,et al.  Mathematical Programming: Theory and Algorithms , 1986 .

[37]  Stephen P. Boyd,et al.  A tutorial on geometric programming , 2007, Optimization and Engineering.

[38]  Alberto L. Sangiovanni-Vincentelli,et al.  Optimizing Extensibility in Hard Real-Time Distributed Systems , 2009, 2009 15th IEEE Real-Time and Embedded Technology and Applications Symposium.

[39]  Alberto L. Sangiovanni-Vincentelli,et al.  Period Optimization for Hard Real-time Distributed Automotive Systems , 2007, 2007 44th ACM/IEEE Design Automation Conference.

[40]  Marga Marcos,et al.  Permutational Genetic Algorithm for the Optimized Assignment of Priorities to Tasks and Messages in Distributed Real-Time Systems , 2011, 2011IEEE 10th International Conference on Trust, Security and Privacy in Computing and Communications.

[41]  Edward P. K. Tsang,et al.  Foundations of constraint satisfaction , 1993, Computation in cognitive science.