O presente repositório foi criado para documentar os resultados do projeto final da disciplina de Aprendizado de Máquina do Professor Danilo Silva da Universidade Federal de Santa Catarina. O trabalho foi feito por mim, Gustavo, com auxílio do professor Danilo durante o semestre de 2025/1.
A previsão de curto prazo da geração solar é um grande desafio devido à alta volatilidade das condições meteorolóigcas. Dentre um dos fatores de maior influência na geração, está a cobertura das nuvens: em dias parcialmente nublados, por exemplo, a geração dos painéis pode cair a valores próximos de zero em questão de minutos. Dessa forma, este projeto explora o uso de imagens do céu para prever a geração instantânea (nowcasting) de painéis fotovoltaicos, utilizando Redes Neurais Convolucionais (CNNs), de forma a extrair informações complexas que modelos tradicionais não conseguem capturar.
Amostra do dataset utilizado no projeto, o qual pode ser encontrado em [4].

Neste trabalho, duas arquiteturas de CNN foram implementadas e avaliadas:
- A arquitetura SUNSET, proposta por Sun et al. em [1], utilizada como nosso baseline.
- Uma ResNet50V2 pré-treinada, que passou por um processo de fine-tuning para comparar seu desempenho com o modelo de referência.
OBS: Para informações detalhadas sobre todo o desenvolvimento do projeto, bem como os códigos utilizados, consultar o relatório e o notebook jupyter disponibilizados no repositório.
Modelo | Métrica | Dias Ensolarados | Dias Nublados | Geral (Teste) |
---|---|---|---|---|
SUNSET | RMSE | 0.865 | 3.356 | 2.453 |
MAE | 0.718 | 2.361 | 1.541 | |
ResNet50V2 | RMSE | 0.917 | 3.786 | 2.757 |
MAE | 0.631 | 2.642 | 1.639 |
-
O modelo SUNSET, usado como referência, apresentou um ótimo desempenho geral (RMSE de 2.453). Fica evidente, tanto na tabela (RMSE de 0.865) quanto na imagem, sua alta precisão em dias de céu limpo. Contudo, em dias nublados, o modelo tende a "suavizar" as previsões, não conseguindo capturar as variações rápidas e bruscas da geração, o que resulta em um erro maior (RMSE de 3.356).
-
A arquitetura ResNet50V2, mais complexa e adaptada com fine-tuning, mostrou um potencial significativo. Mesmo sem uma otimização aprofundada de seus hiperparâmetros, seus resultados foram muito próximos aos do baseline (RMSE de 2.757). O padrão se repete: excelente performance em dias ensolarados e maior dificuldade em dias de alta variabilidade. Isso sugere que, com uma otimização dedicada, a ResNet50V2 pode superar o modelo de referência.
De forma geral, podemos ver que ambos os modelos aprenderam bem a relação entre a geração com a posição solar nas imagens. Mesmo em dias nublados, ambos seguem bem a tendência de uma curva parabólica, típica da geração solar.
[1] Sun, Y., Szűcs, G., Brandt, A.R., 2018. Solar PV output prediction from video streams using convolutional neural networks. Energy Environ. Sci. 11, 1811–1818.
[2] Nie, Y., Li, X., Scott, A., Sun, Y., Venugopal, V., & Brandt, A. (2023). SKIPP’D: A SKy Images and Photovoltaic Power Generation Dataset for short-term solar forecasting. Solar Energy, 255, 171-179.
[3] Sun, Y., Venugopal, V., Brandt, A.R., 2019. Short-term solar power forecast with deep learning: Exploring optimal input and output configuration. Sol. Energy 188, 730–741.
[4] Y. Nie, A. Scott, V. Venugopal, X. Li, Y. Sun, and A. Brandt, “SKIPP’D: A SKy Images and Photovoltaic Power Generation Dataset (Benchmark Data),” https://purl.stanford.edu/dj417rh1007, 2022, acessado em: 7 de julho de 2025.