Advertisement

Real-Time Systems

, Volume 54, Issue 2, pp 424–483 | Cite as

Multi-objective design exploration approach for Ravenscar real-time systems

  • Rahma Bouaziz
  • Laurent Lemarchand
  • Frank Singhoff
  • Bechir Zalila
  • Mohamed Jmaiel
Article

Abstract

This article deals with the design exploration and verification of real-time critical systems. Assigning the functions to the tasks of the target real-time operating system is a part of the design process. Finding a suitable design involves many important design decisions that have a strong impact on the system quality criteria. However, with the increasing complexity and scale of today’s systems and the large number of possible design solutions, making design decisions while balancing conflicting quality criteria becomes error-prone and unmanageable for designers. We propose an automated method using a multi-objective evolutionary algorithm guided by an architectural clustering technique. This method allows designers to search the design space for schedulable solutions with respect to multiple competing performance criteria. To assess our method, several evaluations were performed. One of them shows that we were able to produce the exact optimal solution sets for \(55\%\) of the studied problem instances.

Keywords

Real-time critical systems Design exploration Multi-objective optimization (MOO) Evolutionary algorithms (EAs) Scheduling analysis Shared resources 

Notes

Acknowledgements

The authors sincerely thank the reviewers, whose remarks really helped to improve the article. The Cheddar scheduling framework is supported by Brest Métrople, Ellidiss Technologies, CR de Bretagne, CG du Finistère, and Campus France.

References

  1. Audsley N, Burns A, Richardson M, Tindell K, Wellings AJ (1993) Applying new scheduling theory to static priority preemptive scheduling. Softw Eng J 8(5):284–292CrossRefGoogle Scholar
  2. Bandyopadhyay S, Saha S (2013) Some single- and multiobjective optimization techniques. Unsupervised classification. Springer, Berlin, pp 17–58CrossRefGoogle Scholar
  3. Bartolini C, Lipari G, Di Natale M (2005) From functional blocks to the synthesis of the architectural model in embedded real-time applications. In: Proceedings of the \(11^{th}\) IEEE real time and embedded technology and applications symposium, pp 458–467Google Scholar
  4. Bertout A, Forget J, Olejnik R (2014) Minimizing a real-time task set through task clustering. In: Proceedings of the 22nd international conference on real-time networks and systems. ACM, pp 23–31Google Scholar
  5. Bini E, Buttazzo GC (2005) Measuring the performance of schedulability tests. Real Time Syst 30(1–2):129–154.  https://doi.org/10.1007/s11241-005-0507-9 CrossRefzbMATHGoogle Scholar
  6. Bouaziz R, Lemarchand L, Singhoff F, Zalila B, Jmaiel M (2015) Architecture exploration of real-time systems based on multi-objective optimization. In: Proceedings of the 20th international conference on engineering of complex computer systems, pp 1–10Google Scholar
  7. Bouaziz R, Lemarchand L, Singhoff F, Zalila B, Jmaiel M (2016) Efficient parallel multi-objective optimization for real-time systems software design exploration. In: Proceedings of the 27th international symposium on rapid system prototyping: shortening the path from specification to prototype. ACM, New York, pp 58–64Google Scholar
  8. Burns A (1999) The ravenscar profile. ACM SIGAda Ada Lett 19(4):49–52CrossRefGoogle Scholar
  9. Buttazzo G (2011) Hard real-time computing systems: predictable scheduling algorithms and applications, vol 24. Springer, BerlinzbMATHGoogle Scholar
  10. Carlsson C, Fullér R (1995) Multiple criteria decision making: the case for interdependence. Comput. Oper. Res. 22(3):251–260CrossRefzbMATHGoogle Scholar
  11. Coello Coello CA, Lamont GB, Veldhuizen DAV (2007) Evolutionary algorithms for solving multi-objective problems. Springer, BerlinzbMATHGoogle Scholar
  12. Deb K (2001) Multi-objective optimization using evolutionary algorithms, vol 16. Wiley, New YorkzbMATHGoogle Scholar
  13. Deb K, Saxena D (2006) Searching for pareto-optimal solutions through dimensionality reduction for certain large-dimensional multi-objective optimization problems. In: Proceedings of the world congress on computational intelligence, pp 3352–3360Google Scholar
  14. Deb K, Pratap A, Agarwal S, Meyarivan T (2002) A fast and elitist multiobjective genetic algorithm: Nsga-ii. IEEE Trans Evolut Comput 6(2):182–197CrossRefGoogle Scholar
  15. Feiler PH, Gluch DP (2012) Model-based engineering with AADL: an Introduction to the SAE architecture analysis & design language. Addison-Wesley, Upper Saddle RiverGoogle Scholar
  16. Fonseca CM, Knowles JD, Thiele L, Zitzler E (2005) A tutorial on the performance assessment of stochastic multiobjective optimizers. In: Proceedings of the 3rd international conference on evolutionary multi-criterion optimization, vol 216, p 240Google Scholar
  17. Fonseca CM, Paquete L, López-Ibánez M (2006) An improved dimension-sweep algorithm for the hypervolume indicator. In: IEEE congress on evolutionary computation. IEEE, pp 1157–1163Google Scholar
  18. Fürst S, Mössinger J, Bunzel S, Weber T, Kirschke-Biller F, Heitkämper P, Kinkelin G, Nishikawa K, Lange K (2009) Autosar—a worldwide standard is on the road. In: Proceedings of the 14th international VDI congress electronic systems for vehicles, Baden-Baden, vol 62Google Scholar
  19. Gal T, Hanne T (1999) Consequences of dropping nonessential objectives for the application of mcdm methods. Eur J Oper Res 119(2):373–378CrossRefzbMATHGoogle Scholar
  20. Goossens J, Macq C (2001) Limitation of the hyper-period in real-time periodic task set generation. In: Proceedings of the real-time embedded systemsGoogle Scholar
  21. Goossens J, Grolleau E, Cucu-Grosjean L (2016) Periodicity of real-time schedules for dependent periodic tasks on identical multiprocessor platforms. J Real Time Syst 52(6):808–832CrossRefzbMATHGoogle Scholar
  22. Haubelt C, Gamenik J, Teich J (2005) Initial population construction for convergence improvement of moeas. In: Proceedings of the 3rd international conference on evolutionary multi-criterion optimization (EMO’05). Springer, Berlin, pp 191–205Google Scholar
  23. Hruschka ER, Campello RJGB, Freitas AA, De Carvalho ACPLF (2009) A survey of evolutionary algorithms for clustering. Trans Syst Man Cybern Part C 39(2):133–155.  https://doi.org/10.1109/TSMCC.2008.2007252 CrossRefGoogle Scholar
  24. Klein MH, Ralya T, Pollak B, Obenza R, Harbour MG (1993) A practitioners handbook for real-time analysis: guide to rate monotonic analysis for real-time systems. Springer, New YorkCrossRefGoogle Scholar
  25. Knowles JD, Corne DW (2000) Approximating the nondominated front using the pareto archived evolution strategy. Evol Comput 8(2):149–172.  https://doi.org/10.1162/106365600568167 CrossRefGoogle Scholar
  26. Koziolek A, Koziolek H, Reussner R (2011) Peropteryx: automated application of tactics in multi-objective software architecture optimization. In: Proceedings of the joint ACM SIGSOFT conference—QoSA and ACM SIGSOFT symposium—ISARCS on Quality of software architectures—QoSA and architecting critical systems—ISARCS. ACM, pp 33–42Google Scholar
  27. Leung JYT, Whitehead J (1982) On the complexity of fixed-priority scheduling of periodic, real-time tasks. Perform Eval 2(4):237–250MathSciNetCrossRefzbMATHGoogle Scholar
  28. Li R, Etemaadi R, Emmerich MT, Chaudron MR (2011) An evolutionary multiobjective optimization approach to component-based software architecture design. In: IEEE congress on evolutionary computation. IEEE, pp 432–439Google Scholar
  29. Liu CL, Layland JW (1973) Scheduling algorithms for multiprogramming in a hard-real-time environment. J ACM 20(1):46–61.  https://doi.org/10.1145/321738.321743 MathSciNetCrossRefzbMATHGoogle Scholar
  30. López Jaimes A, Coello Coello CA, Chakraborty D (2008) Objective reduction using a feature selection technique. In: Proceedings of the 10th annual conference on genetic and evolutionary computation. ACM, pp 673–680Google Scholar
  31. López Jaimes A, Coello Coello CA, Urías Barrientos JE (2009) Online objective reduction to deal with many-objective problems. Springer, Berlin, pp 423–437Google Scholar
  32. López Jaimes A, Coello Coello CA, Aguirre H, Tanaka K (2014) Objective space partitioning using conflict information for solving many-objective problems. Inf Sci 268:305–327MathSciNetCrossRefzbMATHGoogle Scholar
  33. Maticu F, Pop P, Axbrink C, Islam M (2016) Automatic functionality assignment to AUTOSAR multicore distributed architectures. Society of Automotive Engineers, Incorporated.  https://doi.org/10.4271/2016-01-0041
  34. McCormick JW, Singhoff F, Hugues J (2011) Building parallel, embedded, and real-time applications with Ada, vol 1. Cambridge University Press, CambridgeCrossRefGoogle Scholar
  35. Mehiaoui A, Wozniak E, Tucci-Piergiovanni S, Mraidha C, Di Natale M, Zeng H, Babau JP, Lemarchand L, Gerard S (2013) A two-step optimization technique for functions placement, partitioning, and priority assignment in distributed systems. ACM SIGPLAN Not 48(5):121–132CrossRefGoogle Scholar
  36. Monot A, Navet N, Bavoux B, Simonot-Lion F (2012) Multisource software on multicore automotive ecuscombining runnable sequencing with task scheduling. IEEE Trans Ind Electron 59(10):3934–3942CrossRefGoogle Scholar
  37. Mraidha C, Tucci-Piergiovanni S, Gerard S (2011) Optimum: a marte-based methodology for schedulability analysis at early design stages. ACM SIGSOFT Softw Eng Notes 36(1):1–8CrossRefGoogle Scholar
  38. Mzid R, Mraidha C, Mehiaoui A, Tucci-Piergiovanni S, Babau JP, Abid M (2013) Dpmp: a software pattern for real-time tasks merge. In: European conference on modelling foundations and applications, vol 7949. Springer, Berlin, pp 101–117Google Scholar
  39. Pagetti C, Forget J, Boniol F, Cordovilla M, Lesens D (2011) Multi-task implementation of multi-periodic synchronous programs. Discret Event Dyn Syst 21(3):307–338MathSciNetCrossRefzbMATHGoogle Scholar
  40. Purshouse RC, Fleming PJ (2007) On the evolutionary optimization of many conflicting objectives. IEEE Trans Evol Comput 11(6):770–784CrossRefGoogle Scholar
  41. Rahmoun S, Borde E, Pautet L (2015a) Automatic selection and composition of model transformations alternatives using evolutionary algorithms. In: Proceedings of the 9th European conference on software architecture workshops. ACM, p 25Google Scholar
  42. Rahmoun S, Borde E, Pautet L (2015b) Multi-objectives refinement of AADL models for the synthesis embedded systems (mu-RAMSES). In: Proceedings of the 20th international conference on engineering of complex computer systems, pp 21–30Google Scholar
  43. Rota GC (1964) The number of partitions of a set. Am Math Mon 71(5):498–504MathSciNetCrossRefzbMATHGoogle Scholar
  44. Saidi SE, Cotard S, Chaaban K, Marteil K (2015) An ILP approach for mapping AUTOSAR runnables on multi-core architectures. In: Proceedings of the 2015 workshop on rapid simulation and performance evaluation: methods and tools. ACM, p 6Google Scholar
  45. Santinelli L, Puffitsch W, Dumerat A, Boniol F, Pagetti C, Victor J (2014) A grouping approach to task scheduling with functional and non-functional requirements. In: Proceedings of the 2nd embedded real-time software and systemsGoogle Scholar
  46. Saxena DK, Duro JA, Tiwari A, Deb K, Zhang Q (2013) Objective reduction in many-objective optimization: linear and nonlinear algorithms. IEEE Trans Evol Comput 17(1):77–99CrossRefGoogle Scholar
  47. Scheickl O, Rudorfer M (2008) Automotive real-time development using a timing-augmented AUTOSAR specification. In: Proceedings of the 4th international congress on embedded real-time systemsGoogle Scholar
  48. Sha L, Rajkumar R, Lehoczky JP (1990) Priority inheritance protocols: an approach to real-time synchronization. IEEE Trans Comput 39(9):1175–1185MathSciNetCrossRefGoogle Scholar
  49. Singhoff F, Legrand J, Nana L, Marcé L (2004) Cheddar: a flexible real time scheduling framework. Ada Lett XXIV(4):1–8CrossRefGoogle Scholar
  50. Singhoff F, Plantec A, Rubini S, Tran H, Gaudel V, Boukhobza J, Lemarchand L, Li S, Borde E, Pautet L et al (2015) Teaching real-time scheduling analysis with cheddar. In: 9ème édition de l’Ecole d’Eté Temps RéelGoogle Scholar
  51. Stankovic JA (1988) Misconceptions about real-time computing: a serious problem for next-generation systems. Computer 21(10):10–19CrossRefGoogle Scholar
  52. Taft ST, Duff RA, Brukardt RL, Ploedereder E, Leroy P, Schonberg E (2014) Ada 2012 reference manual. Language and standard libraries: international standard ISO/IEC 8652/2012 (E), vol 8339. Springer, BerlinGoogle Scholar
  53. Van Veldhuizen DA, Lamont GB (1998) Multiobjective evolutionary algorithm research: a history and analysis. Technical Report TR-98-03, Department of Electrical and Computer Engineering, Air France Institute of Technology, OhioGoogle Scholar
  54. Wang H, Yao X (2016) Objective reduction based on nonlinear correlation information entropy. Soft Comput 20(6):2393–2407.  https://doi.org/10.1007/s00500-015-1648-y CrossRefGoogle Scholar
  55. Westfall PH, Young SS (1993) Resampling-based multiple testing: examples and methods for p-value adjustment, vol 279. Wiley, New YorkzbMATHGoogle Scholar
  56. Wozniak E, Mehiaoui A, Mraidha C, Tucci-Piergiovanni S, Gerard S (2013) An optimization approach for the synthesis of autosar architectures. In: Proceedings of the 18th IEEE conference on emerging technologies & factory automation. IEEE, pp 1–10Google Scholar
  57. Zhang Q, Zhou A, Zhao S, Suganthan PN, Liu W, Tiwari S (2008) Multiobjective optimization test instances for the CEC 2009 special session and competition. University of Essex, Colchester, UK and Nanyang technological University, Singapore, special session on performance assessment of multi-objective optimization algorithms, technical report 264Google Scholar
  58. Zitzler E, Thiele L (1998) Multiobjective optimization using evolutionary algorithms-a comparative case study. In: Proceedings of the international conference on parallel problem solving from nature. Springer, Berlin, pp 292–301Google Scholar

Copyright information

© Springer Science+Business Media, LLC, part of Springer Nature 2018

Authors and Affiliations

  • Rahma Bouaziz
    • 1
  • Laurent Lemarchand
    • 2
  • Frank Singhoff
    • 2
  • Bechir Zalila
    • 1
  • Mohamed Jmaiel
    • 1
    • 3
  1. 1.ReDCAD LaboratoryUniversity of Sfax, ENISSfaxTunisia
  2. 2.Lab-STICC Laboratory, Univ. Bretagne OccidentaleBrest Cedex 3France
  3. 3.Digital Research Center of SfaxSfaxTunisia

Personalised recommendations