Titulo Estágio
Otimização de Consumo Energético em Dispositivos IoT com Alteração Dinâmica do Governor via Inteligência Artificial
Áreas de especialidade
Sistemas Inteligentes
Comunicações, Serviços e Infraestruturas
Local do Estágio
DEI-FCTUC
Enquadramento
As redes de Internet das Coisas (IoT) são constituídas por um elevado número de dispositivos com recursos limitados, como sensores, atuadores e microcomputadores do tipo Raspberry Pi. Estes dispositivos, sendo frequentemente operados em ambientes energicamente restritivos (por exemplo, alimentados por bateria ou energia solar), exigem uma gestão eficiente do consumo energético.
Uma das formas clássicas de poupança energética em dispositivos baseados em Linux passa pelo controlo do governor da CPU através das políticas do CPUFreq, que permitem ajustar dinamicamente a frequência do processador consoante a carga de trabalho. No entanto, na prática, os governors mantêm frequentemente uma política estática ou pouco adaptada ao contexto real do dispositivo, a menos que haja intervenção manual ou administrativa — uma abordagem impraticável em larga escala.
Neste contexto, torna-se pertinente explorar se é possível recorrer à inteligência artificial (IA) para monitorizar a carga de trabalho local (uso de CPU e RAM) e ajustar automaticamente a política do governor, promovendo assim uma gestão mais eficiente da energia e melhor desempenho em dispositivos como o Raspberry Pi.
Objetivo
O objetivo principal desta dissertação é desenvolver uma solução baseada em IA capaz de adaptar automaticamente a política do governor da CPU em dispositivos Raspberry Pi, de forma a otimizar o consumo energético com base na carga de trabalho observada.
Objetivos específicos:
- Estudar o funcionamento do sistema de governação do CPU em Raspberry Pi (CPUFreq e respetivas políticas).
- Implementar um mecanismo de monitorização de métricas de desempenho local (uso de CPU, RAM e temperatura).
- Recolher e tratar dados reais para treinar modelos de IA simples (ex: regressão linear, árvore de decisão) que consigam prever a carga de trabalho.
- Desenvolver um sistema autónomo que aplique a política do governor mais adequada consoante o estado atual e/ou esperado do sistema.
- Avaliar experimentalmente o impacto da solução proposta em termos de consumo energético e desempenho.
Plano de Trabalhos - Semestre 1
Mês 1: Levantamento do Estado da Arte
- Pesquisa bibliográfica sobre técnicas de gestão energética em IoT.
- Estudo de políticas de escalonamento de CPU em Linux (CPUFreq: powersave, ondemand, performance, etc.).
- Análise de abordagens baseadas em IA aplicadas a gestão de energia.
- Estudo sobre métodos de monitorização de recursos no Raspberry Pi (por ex., psutil, vcgencmd, Telegraf, etc.).
Mês 2-3: Ambiente de Testes e Recolha de Dados
- Configuração de ambiente de monitorização num ou mais Raspberry Pi.
- Desenvolvimento de scripts em Python para recolha de métricas (uso de CPU, RAM, temperatura, frequência do CPU, consumo estimado).
- Armazenamento de dados num formato tratável (CSV ou base de dados).
Mês 4: Análise de Dados e Modelos Preliminares
- Análise exploratória dos dados recolhidos.
- Implementação de modelos de regressão simples (ex.: regressão linear, árvores de decisão) para prever a carga.
- Avaliação preliminar da viabilidade de predição de carga e decisões de mudança de governor.
Mês 5: Preparação do Plano Experimental
- Definição de cenários de teste com diferentes tipos de carga (baixa, moderada, elevada).
- Planeamento dos testes comparativos: uso do governor estático vs. solução dinâmica baseada em IA.
Plano de Trabalhos - Semestre 2
Mês 1-2: Desenvolvimento do Mecanismo de Controlo Autónomo
- Integração do modelo de IA com scripts de alteração do governor (cpufreq-set ou interface Python).
- Testes de consistência e validação do sistema em tempo real.
Mês 3-4: Avaliação Experimental
- Execução de testes comparativos com e sem o sistema baseado em IA.
- Avaliação do impacto no consumo energético (medição direta ou via proxy, ex.: temperatura, tempo de execução de tarefas).
- Avaliação do desempenho (tempo de resposta, throughput, temperatura).
Mês 5: Discussão e Otimização
- Análise crítica dos resultados obtidos.
- Ajustes nos modelos e na lógica de controlo para melhorar os ganhos energéticos.
Mês 4-6: Escrita e Apresentação
- Redação da dissertação.
- Preparação da defesa oral.
Condições
O trabalho será realizado no grupo NCS (Departamento de Engenharia Informática, Universidade de Coimbra)
Observações
Existe a possibilidade de atribuição de uma bolsa de estágio, de acordo com o perfil do candidato e disponibilidade financeira.
Orientador
Karima Velasquez
kcastro@dei.uc.pt 📩