Algoritmo Baseado na Meta-heurística Particle Swarm Optimization para Configuração de Pools de Threads em Motores de Execução de Plataformas de Integração
Resumo
Este artigo relata a experiência de usar um algoritmo de otimização para encontrar a configuração ideal de pools de threads para executar processos de integração que recebem um grande volume de dados. Threads são recursos computacionais no sistema de tempo de execução de plataformas de integração. Os modelos de execução baseados em um único pool de threads apresentam problemas de desempenho quando usados em contextos nos quais há um grande volume de dados. Um modelo de execução baseado em vários pools locais de threads pode evitar problemas de desempenho, desde que esses pools sejam configurados com o número ideal de threads. No entanto, encontrar esse número ideal de threads não é uma tarefa trivial, pois não há uma maneira automática de realizar esse cálculo. Neste artigo, exploramos o uso da meta-heurı́stica Particle Swarm Optimization para encontrar o número ideal de threads para cada pool local.
Palavras-chave:
Integração de Aplicações, Otimização, Otimização por Enxame de Partículas
Referências
Alexander, C. (1977). A pattern language: towns, buildings, construction. Oxford University Press.
Alkhanak, E. N., Lee, S. P., Rezaei, R., and Parizi, R. M. (2016). Cost optimization approaches for scientific workflow scheduling in cloud and grid computing: A review, classifications, and open issues. Journal of Systems and Software, 113:1–26.
Bilgaiyan, S., Sagnika, S., and Das, M. (2014). Workflow scheduling in cloud computing environment using cat swarm optimization. In 2014 IEEE International Advance Computing Conference (IACC), pages 680–685. IEEE.
Blythe, J., Jain, S., Deelman, E., Gil, Y., Vahi, K., Mandal, A., and Kennedy, K. (2005). Task scheduling strategies for workflow-based applications in grids. In IEEE International Symposium on Cluster Computing and the Grid, 2005., volume 2, pages 759–767.
Boehm, M., Habich, D., Preissler, S., Lehner, W., and Wloka, U. (2011). Cost-based vectorization of instance-based integration processes. Information Syst., 36(1):3–29.
Bozorgnezhad, F., Asadi-Gangraj, E., and Mahdi, M. (2019). A simultaneous worker assignment and scheduling problem for minimizing makespan in flexible flow shop via metaheuristic approaches.
Chirkin, A. M., Belloum, A. S., Kovalchuk, S. V., Makkes, M. X., Melnik, M. A., Visheratin, A. A., and Nasonov, D. A. (2017). Execution time estimation for workflow scheduling. Future Generation Computer Systems, 75:376–387.
Eberhart, R. and Kennedy, J. (1995). Particle swarm optimization. In Proceedings of the IEEE intl. conference on neural networks, volume 4, pages 1942–1948. Citeseer.
Frantz, R. Z., Corchuelo, R., and Molina-Jiménez, C. (2012). A proposal to detect errors in enterprise application integration solutions. Journ. of Syst. and Soft., 85(3):480–497.
Freire, D. L., Frantz, R. Z., and Roos-Frantz, F. (2019a). Ranking enterprise application integration platforms from a performance perspective: An experience report. Software: Practice and Experience, 49(5):921–941.
Freire, D. L., Frantz, R. Z., Roos-Frantz, F., and Sawicki, S. (2019b). Survey on the runtime systems of enterprise application integration platforms focusing on performance. Software: Practice and Experience, 49(3):341–360.
Haugg, I. G., Frantz, R. Z., Roos-Frantz, F., Sawicki, S., and Zucolotto, B. (2019). Towards optimisation of the number of threads in the integration platform engines using simulation models based on queueing theory. Rv. Br. de Cmp. Ap., 11(1):48–58.
Hohpe, G. and Woolf, B. (2003). Enterprise Integration Patterns: Designing, Building, and Deploying Messaging Solutions. Addison-Wesley.
Irman, A., Febianti, E., and Khasanah, U. (2019). Minimizing makespan on flow shop scheduling using campbel dudek and smith, particle swarm optimization, and proposed heuristic algorithm. In IOP Conference Series: Materials Science and Engineering, volume 673, page 012099. IOP Publishing.
Jedlitschka, A. and Pfahl, D. (2005). Reporting guidelines for controlled experiments in software engineering. In Intl. Symposium on Empirical Software Eng., pages 95–104.
Khosiawan, Y., Khalfay, A., and Nielsen, I. (2018). Scheduling unmanned aerial vehicle and automated guided vehicle operations in an indoor manufacturing environment using differential evolution-fused particle swarm optimization. International Journal of Advanced Robotic Systems, 15(1):1729881417754145.
Leonard, N. E. and Levine, W. S. (1995). Using MATLAB to analyze and design Control Systems. Benjamin-Cummings Publishing Company.
Manikas, K. (2016). Revisiting software ecosystems research: A longitudinal literature study. Journal of Systems and Software, 117:84–103.
Perry, D. E., Porter, A. A., and Votta, L. G. (2000). Empirical studies of software engineering: A roadmap. In Proc. of the Conf. on The Future of Soft. Eng., pages 345–355.
Pusukuri, K. K., Gupta, R., and Bhuyan, L. N. (2011). Thread reinforcer: Dynamically determining number of threads via os level monitoring. In IEEE Iinternational Simposium on Workload Characterization (IISWC), pages 116–125.
Romero, D. and Vernadat, F. (2016). Enterprise information systems state of the art: Past, present and future trends. Computers in Industry, 79:3–13.
Sarathambekai, S. and Umamaheswari, K. (2017). Task scheduling in distributed systems using heap intelligent discrete particle swarm optimization. Computational Intelligence, 33(4):737–770.
Shi, Y. and Eberhart, R. C. (1999). Empirical study of particle swarm optimization. In Proceedings of the 1999 congress on evolutionary computation-CEC99 (Cat. No. 99TH8406), volume 3, pages 1945–1950. IEEE.
Teekeng, W., Thammano, A., Unkaw, P., and Kiatwuthiamorn, J. (2016). A new algorithm for flexible job-shop scheduling problem based on particle swarm optimization. Artificial Life and Robotics, 21(1):18–23.
Wohlin, C., Runeson, P., Hst, M., Ohlsson, M. C., Regnell, B., and Wessln, A. (2012). Experimentation in Software Engineering. Springer.
Zarrouk, R. and Jemai, A. (2018). Performance evaluation of particles coding in particle swarm optimization with self-adaptive parameters for flexible job shop scheduling problem. In International Conference on Industrial, Engineering and Other Applications of Applied Intelligent Systems, pages 396–407. Springer.
Zhang, L. and Wu, J. (2014). A pso-based hybrid metaheuristic for permutation flowshop scheduling problems. The Scientific World Journal, 2014.
Alkhanak, E. N., Lee, S. P., Rezaei, R., and Parizi, R. M. (2016). Cost optimization approaches for scientific workflow scheduling in cloud and grid computing: A review, classifications, and open issues. Journal of Systems and Software, 113:1–26.
Bilgaiyan, S., Sagnika, S., and Das, M. (2014). Workflow scheduling in cloud computing environment using cat swarm optimization. In 2014 IEEE International Advance Computing Conference (IACC), pages 680–685. IEEE.
Blythe, J., Jain, S., Deelman, E., Gil, Y., Vahi, K., Mandal, A., and Kennedy, K. (2005). Task scheduling strategies for workflow-based applications in grids. In IEEE International Symposium on Cluster Computing and the Grid, 2005., volume 2, pages 759–767.
Boehm, M., Habich, D., Preissler, S., Lehner, W., and Wloka, U. (2011). Cost-based vectorization of instance-based integration processes. Information Syst., 36(1):3–29.
Bozorgnezhad, F., Asadi-Gangraj, E., and Mahdi, M. (2019). A simultaneous worker assignment and scheduling problem for minimizing makespan in flexible flow shop via metaheuristic approaches.
Chirkin, A. M., Belloum, A. S., Kovalchuk, S. V., Makkes, M. X., Melnik, M. A., Visheratin, A. A., and Nasonov, D. A. (2017). Execution time estimation for workflow scheduling. Future Generation Computer Systems, 75:376–387.
Eberhart, R. and Kennedy, J. (1995). Particle swarm optimization. In Proceedings of the IEEE intl. conference on neural networks, volume 4, pages 1942–1948. Citeseer.
Frantz, R. Z., Corchuelo, R., and Molina-Jiménez, C. (2012). A proposal to detect errors in enterprise application integration solutions. Journ. of Syst. and Soft., 85(3):480–497.
Freire, D. L., Frantz, R. Z., and Roos-Frantz, F. (2019a). Ranking enterprise application integration platforms from a performance perspective: An experience report. Software: Practice and Experience, 49(5):921–941.
Freire, D. L., Frantz, R. Z., Roos-Frantz, F., and Sawicki, S. (2019b). Survey on the runtime systems of enterprise application integration platforms focusing on performance. Software: Practice and Experience, 49(3):341–360.
Haugg, I. G., Frantz, R. Z., Roos-Frantz, F., Sawicki, S., and Zucolotto, B. (2019). Towards optimisation of the number of threads in the integration platform engines using simulation models based on queueing theory. Rv. Br. de Cmp. Ap., 11(1):48–58.
Hohpe, G. and Woolf, B. (2003). Enterprise Integration Patterns: Designing, Building, and Deploying Messaging Solutions. Addison-Wesley.
Irman, A., Febianti, E., and Khasanah, U. (2019). Minimizing makespan on flow shop scheduling using campbel dudek and smith, particle swarm optimization, and proposed heuristic algorithm. In IOP Conference Series: Materials Science and Engineering, volume 673, page 012099. IOP Publishing.
Jedlitschka, A. and Pfahl, D. (2005). Reporting guidelines for controlled experiments in software engineering. In Intl. Symposium on Empirical Software Eng., pages 95–104.
Khosiawan, Y., Khalfay, A., and Nielsen, I. (2018). Scheduling unmanned aerial vehicle and automated guided vehicle operations in an indoor manufacturing environment using differential evolution-fused particle swarm optimization. International Journal of Advanced Robotic Systems, 15(1):1729881417754145.
Leonard, N. E. and Levine, W. S. (1995). Using MATLAB to analyze and design Control Systems. Benjamin-Cummings Publishing Company.
Manikas, K. (2016). Revisiting software ecosystems research: A longitudinal literature study. Journal of Systems and Software, 117:84–103.
Perry, D. E., Porter, A. A., and Votta, L. G. (2000). Empirical studies of software engineering: A roadmap. In Proc. of the Conf. on The Future of Soft. Eng., pages 345–355.
Pusukuri, K. K., Gupta, R., and Bhuyan, L. N. (2011). Thread reinforcer: Dynamically determining number of threads via os level monitoring. In IEEE Iinternational Simposium on Workload Characterization (IISWC), pages 116–125.
Romero, D. and Vernadat, F. (2016). Enterprise information systems state of the art: Past, present and future trends. Computers in Industry, 79:3–13.
Sarathambekai, S. and Umamaheswari, K. (2017). Task scheduling in distributed systems using heap intelligent discrete particle swarm optimization. Computational Intelligence, 33(4):737–770.
Shi, Y. and Eberhart, R. C. (1999). Empirical study of particle swarm optimization. In Proceedings of the 1999 congress on evolutionary computation-CEC99 (Cat. No. 99TH8406), volume 3, pages 1945–1950. IEEE.
Teekeng, W., Thammano, A., Unkaw, P., and Kiatwuthiamorn, J. (2016). A new algorithm for flexible job-shop scheduling problem based on particle swarm optimization. Artificial Life and Robotics, 21(1):18–23.
Wohlin, C., Runeson, P., Hst, M., Ohlsson, M. C., Regnell, B., and Wessln, A. (2012). Experimentation in Software Engineering. Springer.
Zarrouk, R. and Jemai, A. (2018). Performance evaluation of particles coding in particle swarm optimization with self-adaptive parameters for flexible job shop scheduling problem. In International Conference on Industrial, Engineering and Other Applications of Applied Intelligent Systems, pages 396–407. Springer.
Zhang, L. and Wu, J. (2014). A pso-based hybrid metaheuristic for permutation flowshop scheduling problems. The Scientific World Journal, 2014.
Publicado
11/11/2020
Como Citar
BRIGO, Maira S.; FRANTZ, Rafael Z. ; FREIRE, Daniela L. .
Algoritmo Baseado na Meta-heurística Particle Swarm Optimization para Configuração de Pools de Threads em Motores de Execução de Plataformas de Integração. In: ESCOLA REGIONAL DE ENGENHARIA DE SOFTWARE (ERES), 4. , 2020, Evento Online.
Anais [...].
Porto Alegre: Sociedade Brasileira de Computação,
2020
.
p. 265-274.
DOI: https://doi.org/10.5753/eres.2020.13737.