【视频】Python用GM(1,1)灰色模型预测模型对电力预测

简介: 【视频】Python用GM(1,1)灰色模型预测模型对电力预测

全文链接:http://tecdat.cn/?p=32561

分析师:Dongsheng Hang


负荷预测是电力系统的重要工作之一,对电力系统各个部门的工作都起着非常重要的作用点击文末“阅读原文”获取完整代码数据


科学准确的负荷预测可以让电力决策部门经济合理地安排发电机组的启停,调整线路的潮流,使其更加合理,提前制订设备的检修计划,从而确保电网在安全稳定运行的前提下,系统运行的经济效益也能得到很大的提高。本文重点介绍了GM (1,1)模型的基本理论和建模步骤,结合Python软件对数据的分析,得出了影响模型精度的主要因素,对模型的改进提供了可行性的建议,这对未来灰色理论模型的进一步研究具有十分重要的意义。


GM(1,1)灰色模型


灰色系统理论灰色系统理论与方法的核心是灰色动态模型,其特点是生成函数和灰色微分方程。灰色动态模型是以灰色生成函数概念为基础,以微分拟合为核心的建模方法,灰色系统理论认为:一切随机量都是在一定范围内、一定时段上变化的灰色量和灰过程,对于灰色量的处理不是寻求它的统计规律和概率分布,而是将杂乱无章的原始数据列,通过一定的方法处理,变成比较有规律的时间序列数据,即以数找数的规律,再建立动态模型。

对于原始数据以一定方法进行处理,其目的有二:一是为建立模型提供中间信息;二是将原始数据的波动性弱化。


点击标题查阅往期内容


灰色关联分析(Grey Relation Analysis,GRA)中国经济社会发展指标


01

02

03

04


模型构建


灰色系统理论是基于关联空间、光滑离散函数等概念定义灰导数与灰微分方程, 进而用离散数据列建立微分方程形式的动态模型,即灰色模型是利用离散随机数经过生成变为随机性被显著削弱而且较有规律的生成数,建立起的微分方程形式的模型,这样便于对其变化过程进行研究和描述。G表示grey(灰色),M表示model(模型)

定义灰导数为

d(k)=x(0)(k)=x(1)(k)一x(1)(k-1)

灰色预测模型适用范围、优缺点


适用范围:该模型使用的不是原始数据的序列,而是生成的数据序列。核心体系是Grey Model,即对原始数据作累加生成(或其他处理生成)得到近似的指数规律再进行建模的方法。

优点:在处理较少的特征值数据,不需要数据的样本空间足够大,就能解决历史数据少、序列的完整性以及可靠性低的问题,能将无规律的原始数据进行生成得到规律较强的生成序列。

缺点:只适用于中短期的预测,只适合近似于指数增长的预测。

电力负荷数据


定义GM(1,1)灰色模型


class GM11():
    def __init__(self):
        self.f = None
    def train(self, X0):
        X1 = X0.cumsum()
        Z = (np.array([-0.5 * (X1[k - 1] + X1[k]) for k in range(1, len(X1))])).reshape(len(X1) - 1, 1)
        # 数据矩阵A、B
        A = (X0[1:]).reshape(len(Z), 1)
        B = np.hstack((Z, np.ones(len(Z)).reshape(len(Z), 1)))


训练预测模型


model.train(X_train)  # 训练
    Y_pred = model.predict(len(X))  # 预测
    Y_train_pred = Y_pred[:len(X_train)]

模型检验结果


相关文章
|
28天前
|
数据采集 数据可视化 数据挖掘
金融波动率的多模型建模研究:GARCH族与HAR模型的Python实现与对比分析
本文探讨了金融资产波动率建模中的三种主流方法:GARCH、GJR-GARCH和HAR模型,基于SPY的实际交易数据进行实证分析。GARCH模型捕捉波动率聚类特征,GJR-GARCH引入杠杆效应,HAR整合多时间尺度波动率信息。通过Python实现模型估计与性能比较,展示了各模型在风险管理、衍生品定价等领域的应用优势。
251 66
金融波动率的多模型建模研究:GARCH族与HAR模型的Python实现与对比分析
|
1月前
|
前端开发 搜索推荐 编译器
【01】python开发之实例开发讲解-如何获取影视网站中经过保护后的视频-用python如何下载无法下载的视频资源含m3u8-python插件之dlp-举例几种-详解优雅草央千澈
【01】python开发之实例开发讲解-如何获取影视网站中经过保护后的视频-用python如何下载无法下载的视频资源含m3u8-python插件之dlp-举例几种-详解优雅草央千澈
111 34
【01】python开发之实例开发讲解-如何获取影视网站中经过保护后的视频-用python如何下载无法下载的视频资源含m3u8-python插件之dlp-举例几种-详解优雅草央千澈
|
2月前
|
机器学习/深度学习 数据可视化 TensorFlow
使用Python实现深度学习模型的分布式训练
使用Python实现深度学习模型的分布式训练
195 73
|
2月前
|
机器学习/深度学习 数据采集 供应链
使用Python实现智能食品消费需求分析的深度学习模型
使用Python实现智能食品消费需求分析的深度学习模型
98 21
|
2月前
|
机器学习/深度学习 数据采集 搜索推荐
使用Python实现智能食品消费偏好预测的深度学习模型
使用Python实现智能食品消费偏好预测的深度学习模型
115 23
|
2月前
|
机器学习/深度学习 数据采集 数据挖掘
使用Python实现智能食品消费习惯预测的深度学习模型
使用Python实现智能食品消费习惯预测的深度学习模型
161 19
|
2月前
|
机器学习/深度学习 数据采集 数据挖掘
使用Python实现智能食品消费趋势分析的深度学习模型
使用Python实现智能食品消费趋势分析的深度学习模型
156 18
|
2月前
|
机器学习/深度学习 数据采集 数据挖掘
使用Python实现智能食品消费模式预测的深度学习模型
使用Python实现智能食品消费模式预测的深度学习模型
84 2
|
2月前
|
人工智能 数据可视化 数据挖掘
探索Python编程:从基础到高级
在这篇文章中,我们将一起深入探索Python编程的世界。无论你是初学者还是有经验的程序员,都可以从中获得新的知识和技能。我们将从Python的基础语法开始,然后逐步过渡到更复杂的主题,如面向对象编程、异常处理和模块使用。最后,我们将通过一些实际的代码示例,来展示如何应用这些知识解决实际问题。让我们一起开启Python编程的旅程吧!
|
2月前
|
存储 数据采集 人工智能
Python编程入门:从零基础到实战应用
本文是一篇面向初学者的Python编程教程,旨在帮助读者从零开始学习Python编程语言。文章首先介绍了Python的基本概念和特点,然后通过一个简单的例子展示了如何编写Python代码。接下来,文章详细介绍了Python的数据类型、变量、运算符、控制结构、函数等基本语法知识。最后,文章通过一个实战项目——制作一个简单的计算器程序,帮助读者巩固所学知识并提高编程技能。

热门文章

最新文章

推荐镜像

更多