Abstract
Genetic algorithms can be used to generate input data in a real-time system that produce the worst-case execution time of a task. While generating the test data, the fitness function is normally evaluated using a cycle-accurate simulator of the processor architecture, which consumes a significant computational effort and time. We propose to replace the simulator-based actual execution with a predictive model that is trained using the samples acquired on the simulator. The feasibility of this proposal was evaluated using four distinct predictive models, namely artificial neural networks, generalized linear regression, gaussian process regression and support vector regression. The results obtained on the four benchmarks Bubble sort, Insertion Sort, Gnome sort and Shaker sorts indicate that the proposed use of prediction models can significantly reduce the temporal verification time. The time gain achieved is up to 17.7 times and the best accuracy achieved is 98.5%.
Similar content being viewed by others
References
Abella J, Hernandez C, Quinones E, Cazorla FJ, Conmy PR, Azkarate-askasua M, Jon P, Enrico M, Tullio V (2015) WCET analysis methods: pitfalls and challenges on their trustworthiness. In: 10th IEEE International Symposium on Industrial Embedded Systems, Siegen, Germany, pp 1–5
Agresti A (2013) Categorical Data Analysis, 3rd edn. Wiley, New York, p 744
Akaike H (1998) Information theory and an extension of the maximum likelihood principle. In: Selected papers of hirotugu akaike. Springer, pp 199–213
Alghamdi MI, Jiang X, Zhang J, Zhang J, Jiang M, Qin X (2017) Towards two-phase scheduling of real-time applications in distributed systems. J Netw Comput Appl 84:109–117
Armaghani DJ, Hasanipanah M, Mahdiyar A, Majid MZ, Anieh HB, Tahir MM (2018) Airblast prediction through a hybrid genetic algorithm-ANN model. Neural Comput Appl 29(9):619–629
Aziz MW, Shah SAB (2015) Test-data generation for testing parallel real-time systems. In: IFIP International conference on testing software and systems. Springer, pp 211–223
Bambagini M, Marinoni M, Aydin H, Buttazzo G (2016) Energy-aware scheduling for real-time systems: a survey. ACM Trans Embed Comput Syst 15(1):1–34
Baruah S, Bertogna M, Buttazzo G (2015) Multiprocessor scheduling for real-time systems. Springer, New York
Bate I, Khan U (2011) WCET analysis of modern processors using multi-criteria optimisation. Empir Softw Eng 16(1):5–28
Bhandari D, Murthy CA, Pal SK (2012) Variance as a stopping criterion for genetic algorithms with Elitist model. Fundam Inform 120(2):145–164
Binkert N, Beckmann B, Black G, Reinhardt SK, Saidi A, Basu A, Hestness J, Hower DR, Krishna T, Sardashti S, Sen R, Sewell K, Shoaib M, Vaish N, Hill MD, Wood DA (2011) The gem5 simulator. ACM SIGARCH Comput Archit News 39(2):1–7
Bunte S, Zolda M, Kirner R (2011) Let’s get less optimistic in measurement-based timing analysis. In: 6th IEEE international symposium on industrial and embedded systems, Vasteras, pp 204–212
Bunte S, Zolda M, Tautschnig M, Kirner R (2011) Improving the confidence in measurement-based timing analysis. In: 14th International symposium on object/component/service-oriented real-time distributed computing. IEEE, pp 144–151
Buret P, Iguchi-Cartigny J, Grimaud G (2014) Genetic algorithm for DWCET evaluation on complex platform. In: Proceedings of the 9th IEEE international symposium on industrial embedded systems, Pisa, pp 1–4
Burnham KP, Anderson DR (2004) Model selection and multi-model inference, vol 63, 2nd edn. Springer-Verlag, New York
Butko A, Garibotti R, Ost L, Sassatelli G (2012) Accuracy evaluation of GEM5 simulator system. In: 7th International workshop on reconfigurable and communication-centric systems-on-chip (ReCoSoC), pp 1–7
Cazorla FJ, Kosmidis L, Mezzetti E, Hernandez C, Abella J, Vardanega T (2019) Probabilistic worst-case timing analysis: taxonomy and comprehensive survey. ACM Comput Surv 52(1):1–35
Deng N, Tian Y, Zhang C (2012) Support vector machines: optimization based theory, algorithms, and extensions. Data Mining and Knowledge Discovery Series. Chapman & Hall/CRC, Taylor & Francis, London, p 363
Dharmajee Rao DTV, Ramesh B (2012) Experimental based selection of best sorting algorithm. Int J Mod Eng Res 2(4):2908–2912
Fahrmeir L, Tutz G (2013) Multivariate statistical modelling based on generalized linear models. Springer Science & Business Media, Berlin, p 426
Glorot X, Bengio Y (2010) Understanding the difficulty of training deep feedforward neural networks. In: Proceedings of the thirteenth international conference on artificial intelligence and statistics, pp 249–256
Gustafsson J, Betts A, Ermedahl A, Lisper B (2010) The Malardalen WCET benchmarks: past, present and future. In: International Workshop on Worst-case Execution time Analysis. Brussels, Belgium, pp 137–147
Haftka RT, Villanueva D, Chaudhuri A (2016) Parallel surrogate-assisted global optimization with expensive functions: a survey. Struct Multidiscip Optim 54(1):3–13
Hagan MT, Menhaj MB (1994) Training feedforward networks with the Marquardt algorithm. IEEE Trans Neural Netw 5(6):989–993
Hagan Martin T, Demuth Howard B, Beale Mark H, Jesus Orlando D (2014) Neural Network Design, 2nd edn. Martin Hagan, Dame
Jain BJ, Pohlheim H, Wegener J (2001) On termination criteria of evolutionary algorithms. In: Proceedings of the 3rd annual conference on genetic and evolutionary computation. Morgan Kaufmann Publishers San Francisco, California, USA, p 768
Kelter T, Falk H, Marwedel P, Chattopadhyay S, choudhury AR (2014) Static analysis of multi-core TDMA resource arbitration delays. Real-Time Syst 50(2):185–229
Kim W, Cho W, Choi J, Kim J, Park C, Choo J (2019) A comparison of the effects of data imputation methods on model performance. In: 21st international conference on advanced communication technology (ICACT). IEEE, pp 592–599
Koopialipoor M, Armaghani DJ, Haghighi M, Ghaleini EN (2019) A neuro-genetic predictive model to approximate overbreak induced by drilling and blasting operation in tunnels. Bull Eng Geol Environ 78(2):981–990
Kozyrev VP (2016) Estimation of the execution time in real-time systems. Program. Comput. Softw. 42(1):41–48
Kudjo PK, Ocquaye E, Ametepe W (2017) Review of genetic algorithm and application in software testing. Int J Comput Appl 160(2):1–6
Law S, Bate I (2016) Achieving Appropriate test coverage for reliable measurement-based timing analysis. In: 28th Euromicro conference on real-time systems (ECRTS), Toulouse, pp 189–199
Moayedi H, Moatamediyan A, Nguyen H, Bui X-N, Bui DT, Rashid AS (2019) Prediction of ultimate bearing capacity through various novel evolutionary and neural network models. In: Engineering with computers. Springer, pp -17
Myung IJ (2000) The importance of complexity in model selection. J Math Psychol 44(1):190–204
Nélis V, Yomsi PM, Pinho LM (2015) Methodologies for the WCET analysis of parallel applications on many-core architectures. In: Proceedings of the 2015 Euromicro conference on digital system design, Washington, DC, USA, pp 748–755
Njikam ANS, Zhao H (2016) A novel activation function for multilayer feed-forward neural networks. Appl Intell 45(1):75–82
Nwankpa C, Ijomah W, Gachagan A, Marshall S (2018) Activation functions: comparison of trends in practice and research for deep learning. In: arXiv preprint arXiv:1811.03378
Pongcharoen P, Hicks C, Braiden PM, Stewardson DJ (2002) Determining optimum genetic algorithm parameters for scheduling the manufacturing and assembly of complex products. Int J Prod Econ 78(3):311–322
Puschner PP (1999) Real-time performance of sorting algorithms. Real-Time Syst 16(1):63–79
Rapita Systems Ltd. (2017) Rapita verification suite, http://www.rapitasystems.com/products/rvs. (2017)
Rasmussen CE, Williams CKI (2006) Gaussian processes for machine learning, vol 1. MIT Press, Cambridge
Reineke J, Wilhelm R (2016) Static timing analysis: what is special? In: Semantics, Logics, and Calculi, Volume 9560 of the series Lecture Notes in Computer Science, pp 74–87
Rodriguez-Roman D (2018) A surrogate-assisted genetic algorithm for the selection and design of highway safety and travel time improvement projects. Saf Sci 103:305–315
Sastry K, Goldberg DE, Kendall G (2014) Genetic algorithms. Springer, Boston, MA, pp 93–117
Sha L, Caccamo M, Mancuso R, Kim J-E, Yoon M-K, Pellizzoni R, Yun H, Kegley RB, Perlman DR, Arundale G, Bradford R (2016) Real-Time computing on multicore processors. IEEE Comput 49(9):69–77
Shah SAB, Rashid M, Arif M (2017) A prediction model for measurement-based timing analysis. In: Proceedings of 6th ACM International Conference on Software and Computer Applications (ICSCA), Thailand, pp 9–14
Smola AJ, Scholkopf B (2004) A tutorial on support vector regression. Stat Comput 14(3):199–222
Srinivas M, Patnaik LM (1994) Adaptive probabilities of crossover and mutation in genetic algorithms. IEEE Trans Syst Man Cybern 24(4):656–667
Surendran A, Samuel P (2016) Evolution or revolution: the critical need in genetic algorithm based testing. Artif Intell Rev, pp 1–47
Tracey N, Clark J, McDermid J, Mander K (2002) A search-based automated test-data generation framework for safety-critical systems. In: Systems Engineering for Business Process Change, pp 174–213
Vapnik V (2000) The nature of statistical learning theory, vol 2. Springer-Verlag, New York, p 314
Wegener J, Grimm K, Grochtmann M, Sthamer H, Jones B (1996) Systematic testing of real-time systems. In: 4th International conference on software testing analysis and review
Wenzel I, Kirner R, Rieder B, Puschner P (2008) Measurement-based timing analysis. In: International symposium on leveraging applications of formal methods, verification and validation. Springer, pp 430–444
Zhang P, Shen C (2019) Choice of the number of hidden layers for back propagation neural network driven by stock price data and application to price prediction. J Phys 1302(2):022017
Zhang Q, Lin M, Yang LT, Chen Z, Li P (2019) Energy-efficient scheduling for real-time systems based on deep Q-learning model. IEEE Trans Sustain Comput 4(1):132–141
Acknowledgements
This research was primarily conducted at Science and Technology Unit, Umm Al-Qura University, Makkah. The first author worked on the revisions while being affiliated with the University of South Australia. We acknowledge the funding support of KACST (King Abdul Aziz City for Science and Technology) and NSTIP (National Science Technology, Innovative Plan), Kingdom of Saudi Arabia for this project (12-INF2281-10).
Author information
Authors and Affiliations
Corresponding author
Additional information
Publisher's Note
Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.
Rights and permissions
About this article
Cite this article
Shah, S., Rashid, M. & Arif, M. Estimating WCET using prediction models to compute fitness function of a genetic algorithm. Real-Time Syst 56, 28–63 (2020). https://doi.org/10.1007/s11241-020-09343-2
Published:
Issue Date:
DOI: https://doi.org/10.1007/s11241-020-09343-2