Premiado em evento internacional, experimento dialoga com a necessidade do mercado por projetos com mais sustentabilidade. Conclusão é de que a escolha da linguagem da programação deve ser discutida preliminarmente nos projetos ROS para melhorar o desempenho energético.
Um experimento feito por pesquisadores do projeto IntelAgir do Campus Francisco Beltrão demonstrou, em um artigo premiado no Workshop Internacional em Engenharia de Software para Robótica, em Portugal, que a linguagem de programação é um dos pontos preliminares a serem discutidos em projetos Robot Operating System (ROS) quando se trata de melhoria de eficiência energética.
O ROS é muito usado na programação de sistemas robóticos e principalmente com suporte para as linguagens C++ e Python.
Um desafio é melhorar a eficiência energética em diferentes linguagens e, para isso, os pesquisadores Michel Albonico, Paulo Júnior Varela e Adair José Rohling, em conjunto com o professor Andreas Wortmann da Universidade de Stuttgart, Alemanha, desenvolveram o experimento que foi premiado em Lisboa.
“A grosso modo, diferentes linguagens de programação são processadas pelo computador de uma maneira distinta, fazendo com que algumas usem mais recursos computacionais, como CPU e, consequentemente, acabam por consumir mais energia”, explica Albonico.
A eficiência energética é um dos requisitos de qualidade mais recorrentes na área de Engenharia de Software. O estudo dos pesquisadores avaliou até que ponto a linguagem da programação impacta nestas estatísticas. Os resultados indicam que não há diferenças significativas, no entanto, a linguagem C++ apresentaram uma eficiência energética consistentemente melhor.
“Com vários assinantes, a biblioteca cliente C++ se torna mais eficiente em termos de energia e tem melhor escalabilidade, o que consideramos estar relacionado à implementação nativa de multithreading”, diz o texto
Metodologia
A utilização de robôs é comum em indústria da manufatura, transporte e aliados domésticos, como o aspirador de pó “robozinho”, presente em muitos lares. Esses equipamentos usam softwares complexos, os chamados “ROS”. Isso também dialoga com a demanda cada vez mais latente do mercado por projetos que apresentem sustentabilidade.
De acordo com o estudo, o experimento foi definindo a partir do modelo Goal Question Metric (GQM) que funciona assim: um objetivo definido, refinado em questões de pesquisa que medem o sistema de software usando métricas objetivas ou subjetivas.
A pesquisa levantou dados experimentais e a conclusão foi que a escolha da linguagem da programação deve ser discutida preliminarmente nos projetos ROS para melhorar o desempenho energético.
“Dependendo da linguagem escolhida, um robô consome mais ou menos energia, influenciando primeiramente o tempo de carga da sua bateria. Além potencialmente aumentar a tempo de vida das baterias, a geração de energia elétrica é um dos fatores responsáveis pelo aumento de gases do efeito estufa. Portanto, quando diminuímos o consumo energético estamos fazendo nossa parte na conservação do planeta”, destaca o professor Michel Albonico, da UTFPR.
Os professores também descobriram que o design das bibliotecas clientes de linguagens de programação também tem influência sobre a eficiência energética.
Conforme os pesquisadores, trabalhos futuros nesta linha deverão ampliar a investigação de forma mais profunda sobre a eficiência energética dos ROS em cenários mais complexos.
Fonte: UTFPR