<h1 align="center">Lightning</h1>
<div align="center">
<a href="https://github.com/SnowNation101/Lightning/network/members">
<img src="https://img.shields.io/github/forks/SnowNation101/Lightning?label=Forks" alt="Forks">
</a>
<a href="https://github.com/SnowNation101/Lightning/stargazers">
<img src="https://img.shields.io/github/stars/SnowNation101/Lightning?color=green&label=Stars" alt="Stars">
</a>
</div>
## 项目介绍(Introduction)
### 项目简介
本项目主体围绕着“基于深度学习算法的短期光伏发电功率预测模型”而构建。旨在设计出一款面向电力公司和光伏发电业主的系统,其具有辅助决策、风险预测的能力,强大的数据提取、统计与分析能力和清晰的数据相关性、影响性的可视化展示功能。
### 项目背景
随着光伏发电网规模的扩大和应用的普及,对于光伏发电的并网需求持续增大,但是光伏发电所具有的波动性和间歇性的特性势必会对并网系统的稳定性产生一定的影响。诸如太阳辐射强度、空气湿度、气压、环境温度等因素是导致光伏发电的波动性和间歇性产生的首要因素,若对于光伏发电缺少相应的技术手段预测功率和调整模式,势必在并网时会不利于电力系统的调整,并且为电网调度人员产生困扰。
在此背景之下,设计出合理且有效的光伏发电功率预测模型一方面可以提升并网后电力系统运行的安全性和稳定性;另一方面也有利于光伏电站业主或调度人员的协调调度,进一步提升电能资源利用率。
### 项目目的
通过设计出合理的“基于深度学习算法的短期光伏发电功率预测模型”以及对该模型的进一步优化,在大规模分布式光伏发电的电力管理层面,为管理人员提供短期内环境因素的具体数据以及光伏发电功率的预测结果,帮助管理人员进行协调调度,从而提升电能利用率;在个人中小规模分布式光伏电站业主层面,提供短期内光伏发电功率的预测结果并给出调整策略建议,保障中小型分布式光伏电站并网后电网运行的稳定性和供电可靠性,同时对于一种更加互利且合理的个人光伏发电并网后差额电量的补偿和外送机制进行展望。
## 技术选型(Technics)
### 项目架构
该项目采用B/S架构,后端调用算法模型,展示在前端。
### 算法技术
主要语言:Python
- Keras
- Sci-kit Learn
### 后端技术
主要语言:Java
- Spring Boot
- MySQL
### 前端技术
- Vue
## 研究成果(Results)
- 光伏发电功率预测模型(包括数据集异常值、缺失值等预处理过程)
- 模型基于 `keras` 库中的梯度提升模型(Gradient Boosting Regressor, GBR)实现预测功能,基于 `sklearn` 库的 `joblib` 方法将模型固化。模型可用于提供未来每24小时内的96个光伏发电功率数据预测值。模型的技术指标可实现:光伏发电功率预测模型预测结果与实际功率对比,预测准确率不低于80%
- 模型评分反应模型在误差内的准确率,该模型的评分达到94.7%
- 一个用于分布式光伏发电功率预测及数据分析的web系统搭建完成
- 数据展示:实时数据动态折线图展示,将重要天气数据及发电功率在大屏中清晰展现。另有实时预测接口,可对自定义天气数据进行单点预测。
- 数据分析功能:对电力公司的数据进行处理并进行全方面的分析,对于电力输送状况的各方面详细信息进行记录、统计与关联性分析。
- 数据预测:在处理温度、日照、风速、湿度等数据后,基于深度学习算法及天气数据,对于未来光伏发电进行实时预测,电力公司方可查看详细的误差分析报告。提供未来每24小时内的96个数据预测值与预测误差,且提供短时(15分钟以内)的实时总功率预测。
- 辅助决策:根据历史数据以及预测的数据进行风险预测、电力调度的最优方案辅助决策、市场交易的辅助决策等,保障安全与效率最大化。如对于光伏发电在正午的峰值和在夜间的谷值进行相应的电力调度处理,根据预测值和真实值产生的不匹配现象进行异常分析(如发电板破损、污浊),并反馈给用户。
## 获奖(Awards)
- "用友·北邮特软杯" 企业云服务开发者大赛 一等奖
- 北京邮电大学大学生创新创业实践成果展(大创展) 三等奖
## 贡献成员(Contributors)
| Name | E-mail |
| -------------- | ------------------------- |
| Penghui Xiao | xph@bupt.edu.cn |
| Chenghao Zhang | davidzhang101@outlook.com |
| Aijia Lei | leiaijia@bupt.edu.cn |
| Boxuan Xu | XuBoxuan@bupt.edu.cn |
| Yiting Huang | hyt19900420@163.com |