Este projeto explora dados públicos do setor energético com o objetivo de aplicar técnicas de ciência de dados e inteligência artificial (IA). Utilizamos algoritmos de agrupamento, modelagem preditiva e detecção de anomalias para identificar padrões ocultos e apoiar decisões estratégicas.
# Dados simulados de energia
set.seed(123)
ufs <- state.abb[1:20]
dados <- tibble(
UF = ufs,
capacidade_total_mw = runif(20, 100, 1500),
DEC = runif(20, 5, 40),
FEC = runif(20, 2, 20)
)dados %>%
kable("html", caption = "Dados simulados por UF") %>%
kable_styling(bootstrap_options = c("striped", "hover", "condensed"))| UF | capacidade_total_mw | DEC | FEC |
|---|---|---|---|
| AL | 502.6085 | 36.133876 | 4.570400 |
| AK | 1203.6272 | 29.248119 | 9.461834 |
| AZ | 672.5677 | 27.417738 | 9.447038 |
| AR | 1336.2244 | 39.799442 | 8.639218 |
| CA | 1416.6542 | 27.949703 | 4.744006 |
| CO | 163.7791 | 29.798566 | 4.498509 |
| CT | 839.3477 | 24.042311 | 6.194614 |
| DE | 1349.3867 | 25.794971 | 10.387324 |
| FL | 872.0090 | 15.120591 | 6.787508 |
| GA | 739.2606 | 10.148978 | 17.440899 |
| HI | 1439.5667 | 38.705848 | 2.824961 |
| ID | 734.6678 | 36.580467 | 9.959601 |
| IL | 1048.5989 | 29.174685 | 16.380647 |
| IN | 901.6868 | 32.841360 | 4.194187 |
| IA | 244.0946 | 5.861479 | 12.097064 |
| KS | 1359.7550 | 21.722859 | 5.717565 |
| KY | 444.5228 | 31.546084 | 4.295570 |
| LA | 158.8833 | 12.574278 | 15.559542 |
| ME | 559.0890 | 16.136335 | 18.110816 |
| MD | 1436.3051 | 13.106903 | 8.740330 |
ggplot(dados, aes(x = capacidade_total_mw, y = DEC)) +
geom_point(color = "darkgreen", size = 3) +
geom_smooth(method = "lm", se = FALSE, color = "blue") +
labs(title = "Correlação entre Capacidade Instalada e DEC", x = "Capacidade (MW)", y = "DEC (h)") +
theme_minimal()matriz <- scale(dados[, c("capacidade_total_mw", "DEC", "FEC")])
k3 <- kmeans(matriz, centers = 3, nstart = 25)
dados$cluster <- as.factor(k3$cluster)
fviz_cluster(k3, data = matriz, geom = "point", palette = "jco", ggtheme = theme_minimal())modelo_rf <- randomForest(DEC ~ capacidade_total_mw + FEC, data = dados, importance = TRUE)
print(modelo_rf)##
## Call:
## randomForest(formula = DEC ~ capacidade_total_mw + FEC, data = dados, importance = TRUE)
## Type of random forest: regression
## Number of trees: 500
## No. of variables tried at each split: 1
##
## Mean of squared residuals: 104.416
## % Var explained: -9.18
q1 <- quantile(dados$DEC, 0.25)
q3 <- quantile(dados$DEC, 0.75)
iqr <- q3 - q1
limite_sup <- q3 + 1.5 * iqr
anomalias <- dados %>% filter(DEC > limite_sup)
anomalias %>%
kable("html", caption = "Anomalias de DEC identificadas (método IQR)") %>%
kable_styling(full_width = F)| UF | capacidade_total_mw | DEC | FEC | cluster |
|---|---|---|---|---|
Aplicando técnicas de IA como K-Means, Random Forest e IQR, foi possível demonstrar como dados energéticos podem revelar padrões relevantes para estratégias de eficiência. Mesmo em um cenário simulado, os métodos aplicados se mostram úteis para aplicações reais no setor.