Módulo para suporte à parametrização dinâmica de Métodos de Otimização Multi-objetivo utilizando técnicas de refatoração: um relato de caso sobre o framework pymoo
Resumo
Este artigo descreve um estudo de caso sobre a criação de um módulo adicional à biblioteca de otimização multi-objetivo pymoo, no contexto das pesquisas do ramo que estudam propostas de parametrização dinâmica destas técnicas. Partindo de um script de uma prova de conceito, que utilizou as ferramentas disponíveis na biblioteca para realizar efetivamente a parametrização dinâmica das taxas de mutação e cruzamento do NSGA-II, foram aplicadas sequências de refatorações que resultaram em um wrapper, bem como outras classes auxiliares, que permitem a resolução de problemas e controle dinâmico de parâmetros de forma simplificada por meio da biblioteca utilizada. O resultado principal do trabalho, além da documentação deste processo de refatoração, é uma proposta de móduloútil para pesquisas e implementações que aplicam controle dinâmico à parametrização de métodos multi-objetivo.
Referências
J. Blank and K. Deb, “pymoo: Multi-objective optimization in python,” IEEE Access, vol. 8, pp. 89 497–89 509, 2020. [Online]. DOI: 10.1109/ACCESS.2020.2990567
F. C. Y. Benureau and N. P. Rougier, “Re-run, repeat, reproduce, reuse, replicate: Transforming code into scientific contributions,” Frontiers in Neuroinformatics, vol. 11, Jan. 2018. [Online]. DOI: 10.3389/fninf.2017.00069
A. Trisovic, M. K. Lau, T. Pasquier, and M. Crosas, “A large-scale study on research code quality and execution,” Scientific Data, vol. 9, no. 1, Feb. 2022. [Online]. DOI: 10.1038/s41597-022-01143-6
J. Li and E. Sopov, “A comparative study of state-of-the-art multiobjective optimization algorithms,” ITM Web of Conferences, vol. 59, p. 02024, 2024. [Online]. DOI: 10.1051/itmconf/20245902024
M. Gomes Pereira de Lacerda, L. F. de Araujo Pessoa, F. Buarque de Lima Neto, T. B. Ludermir, and H. Kuchen, “A systematic literature review on general parameter control for evolutionary and swarm-based algorithms,” Swarm and Evolutionary Computation, vol. 60, p. 100777, Feb. 2021. [Online]. DOI: 10.1016/j.swevo.2020.100777
A. Pǎtrǎus, anu, A. Florea, M. Neghinǎ, A. Dicoiu, and R. Chis, , “A systematic review of multi-objective evolutionary algorithms optimization frameworks,” Processes, vol. 12, no. 5, p. 869, Apr. 2024. [Online]. DOI: 10.3390/pr12050869
M. Fowler, Refactoring: improving the design of existing code. Addison-Wesley Professional, 2018.
M. Jerzyk and L. Madeyski, “Code smells: A comprehensive online catalog and taxonomy,” in Developments in Information and Knowledge Management Systems for Business Applications: Volume 7. Springer, 2023, pp. 543–576. [Online]. DOI: 10.1007/978-3-031-25695-0_24
D. Marchetti, “dmgiacomel/dynamic-parameterization-on-pymoo: v1.0.” Oct. 2025. [Online]. DOI: 10.5281/zenodo.17316684
