快捷搜索:  汽车  科技

apriori算法实现实验总结(基于Apriori算法的水库优化调度规则提取方法)

apriori算法实现实验总结(基于Apriori算法的水库优化调度规则提取方法)湖北省教育厅科学技术研究计划重点项目(D20201201);基金:作者简介:聂盼盼(1997—) 女,硕士研究生,主要从事水库调度与数据挖掘方面的研究。E-mail:niepanpan22@126.com;*李英海(1981—) 男,副教授,博士,主要从事流域水库群优化调度方面的研究。E-mail:liyinghai@ctgu.edu.cn;

摘 要:

水电站水库长期积累的调度运行数据必然隐藏了一些重要的调度规律,数据挖掘作为从海量数据中自动搜索隐藏于其中的数据规律的技术,具有从水库运行数据中提取隐含调度规则的潜在能力。因此,引入Apriori数据挖掘算法,通过水库优化调度模拟得到长系列调度方案集,进而从调度方案集中找到频繁项集,建立入库径流、发电出力和库水位之间强关联规则,通过此规则制定水库调度方案。将该方法应用于三峡水库年发电优化调度规则提取问题,结果表明,计算得到的年发电量虽然低于优化调度结果,但明显优于常规调度图调度结果,验证了该水库优化调度规则提取方法的合理性和有效性。而且,根据该方法得到的关联规则表结构简单、可操作性强,为解决水库优化调度问题提供了一种新的思路。

关键词:

数据挖掘; Apriori 算法; 调度规则; 三峡水库;

作者简介:

聂盼盼(1997—) 女,硕士研究生,主要从事水库调度与数据挖掘方面的研究。E-mail:niepanpan22@126.com;

*李英海(1981—) 男,副教授,博士,主要从事流域水库群优化调度方面的研究。E-mail:liyinghai@ctgu.edu.cn;

基金:

湖北省教育厅科学技术研究计划重点项目(D20201201);

国家自然科学基金项目(51909010);

三峡库区生态环境教育部工程研究中心开放基金课题(KF2019-13);

引用

聂盼盼 李英海 王永强 等. 基于 Apriori 算法的水库优化调度规则提取方法[ J] . 水利水电技术(中英文) 2021 52(10): 164- 171.

NIE Panpan LI Yinghai WANG Yongqiang et al. Apriori algorithm-based method for extraction of reservoir optimal operation rules [J]. Water Resources and Hydropower Engineering 2021 52(10): 164- 171.


0 引 言

数据挖掘是指从数据库的大量数据中揭示出隐含的、先前未知的并有潜在价值的信息的过程,越来越被人们重视并且广泛应用到各个领域。对水电站水库而言,长期积累的调度运行资料包含了大量数据,这些数据中极有可能隐藏了一些重要的调度规律。数据挖掘技术正好对于寻找水库调度方案集中隐含的调度规则提供了全新思路和有效手段。常用的数据挖掘算法包括关联规则算法、支持向量机、人工神经网络、决策树等 以及这些算法能够从不同角度对数据中的有用信息进行挖掘。近年来国内外越来越多的学者将其与水库调度的研究相结合。刘志刚等通过关联规则算法得到水库调度模式,并建立云模型规则发生器拟合得到调度函数,应用于江垭电站,结果证明了该算法的有效性。针对支持向量机原理的应用,纪昌明等提出基于粗糙集和支持向量机理论的水电站发电调度规则提取方法来指导金中梯级水电站运行。在人工神经网络应用方面,杨迎等采用大渡河下游梯级电站长系列调度结果建立基于RBF神经网络的调度函数模型,其结果更准确地映射优化调度过程中各个变量之间的关系,提升了调度函数的拟合精度;李基栋等以雅砻江下游梯级水库为研究对象,分别建立BP人工神经网络模型、多元线性回归模型和门限回归模型模拟其联合调度过程,结果证明采用数据挖掘算法的两个模型比传统回归模型模拟效果更佳。关于决策树算法的应用,刁艳芳等以丁东水库为研究对象,采用决策树C4.5算法从优化调度结果中提取提水决策树调度规则,结果显示该方法提高了供水保证率;汪洋等采用决策树C4.5算法进行提取发电调度规则决策树,最后构建水库调度模型,调度模拟结果验证了决策树调度规则的有效性。以上主要是单一算法的研究,对于多种算法相结合的应用,BOZORG-HADDAD等利用支持向量机和神经网络两种数据挖掘技术克服了数据的不确定性,能够实现水库的最优调度。MOHAN等将人工神经网络和支持向量回归用于单一水库调度数据挖掘建模框架,结果显示此模型在探索存在于单一水库系统中的隐藏关系方面是有效的。上述研究将不同类型的数据挖掘算法与水库调度相结合,验证了数据挖掘在解决水库调度问题上具有一定的有效性,丰富了水库调度规则的表现形式,必然是水库调度新的研究方向。但是,这些算法存在一定的局限性,支持向量机难以应用于大规模训练样本,对于解决多分类问题存在困难;BP人工神经网络学习速度较慢,容易陷入局部最优;决策树是一种较为常见的应用于水库调度中的算法,其计算原理简单,输出结果易于理解,但会产生过度拟合问题。

Apriori算法作为从数据集中挖掘关联规则的经典算法,通过从海量原始数据中找出频繁项集,进而产生数据间隐含的强关联规则,从而可以根据一个数据项的出现推导出其他数据项的出现,这一特性使得Apriori算法具备了从水库调度运行数据集中挖掘隐含调度规律的潜在能力。相较于上述算法,Apriori算法没有复杂的理论推导,计算过程简单,易于实现。ZHONG等将Apriori算法与Copula函数相结合,用于美国亚利桑那州的洪水风险分析,其结果对于山洪灾害风险分析和决策具有参考价值。王晓宇采用Apriori算法从黄河流域各水库中提取水库调度关联规则,并统计供水效益,结果验证了Apriori算法在提取调度规则的适用性。肖胜贤以江垭电站为例,先通过云模型将定量数据样本转化为定性数据样本,再采用Apriori算法从样本数据中挖掘关联规则,最后建立云模型规则发生器,结果表明云模型调度规则在多年平均发电量和出力保证率都有一定的优势。本文将Apriori算法引入到水库发电调度问题,探索从优化调度方案集中找出频繁项集的方式,研究产生入库径流、发电出力和库水位之间的强关联规则的方法,进而将其应用于三峡水库年发电优化调度实例,通过从构造的长系列优化调度方案集中挖掘优化调度规则,并将其与优化调度和常规调度结果进行比较分析,对该方法的可行性和有效性进行验证。

1 Apriori数据挖掘算法

Apriori算法是一种广泛应用于挖掘出数据关联规则的经典的数据挖掘算法,关联规则是表示数据库中一组对象之间某种关联关系的规则。关联规则的形式化描述如下:

设事务数据库D={T1 T2 … Tn}是所有事务的集合,I={i1 i2 … im}是D中所有项目的集合。事务Ti是一些项目的集合,每个事务可以用唯一的标识符TID来标识。项的集合称为项集,包含k个项的项集称为k项集。设X为某些项目的集合,如果X⊆Ti中,则称事务Ti包含项集X 关联规则表示为:形如(X⊆Ti)X→Y(Y⊆Ti)的蕴涵式,其中X⊂I Y⊂I 并且X∩Y=∅。数据库D中的规则X→Y是由支持度s(support)和置信度c(confidence)来决定的。

支持度是对关联规则重要性的衡量,体现关联规则的代表性。记为support(X→Y)。

一个项集i1⊆I在D上的支持度是包含i1的事务在D中所占的百分比,即

apriori算法实现实验总结(基于Apriori算法的水库优化调度规则提取方法)(1)

对于形如X→Y的关联规则,其支持度定义为

apriori算法实现实验总结(基于Apriori算法的水库优化调度规则提取方法)(2)

对于I的非空项集i1 若其支持度大于或等于预先设定的最小支持度阈值min_sup 则称i1为频繁项集。若i1包含k个项,则又称之为频繁k项集。

置信度是对关联规则准确度的衡量,体现关联规则的强度。记为confidence(X→Y)。即在所有出现X的事务中出现Y的频率。定义为

apriori算法实现实验总结(基于Apriori算法的水库优化调度规则提取方法)(3)

强关联规则:关联规则的置信度和支持度均满足预先设定的最小值。

关联规则的挖掘过程主要包括两个阶段:

(1)从海量原始数据中找出所有的频繁项集。

设Lk为频繁k项集的集合,Lk 1为频繁(k 1)项集的集合。从频繁1项集开始,由频繁k项集去搜索频繁(k 1)项集,具体可通过剪枝和连接来实现。剪枝为去除非频繁项集;连接为若两个项集相同项为{a1 a2 … ak-2} 不同项分别为ak-1和bk-1 则两者可连接产生一个k项集{a1 a2 … ak-2 ak-1 bk-1}。

(2)从频繁项集中产生关联规则。

找出事务数据库D中的频繁项集之后,可以根据频繁项集和最小置信度阈值产生强关联规则。针对每个频繁项集l产生其所有非空真子集s 若support(l)/support(s)≥min_conf 则输出规则s→(l-s) min_conf为最小置信度阈值。

Apriori算法采用逐层搜索迭代的方法找出最大的k项频繁集。首先遍历数据库,搜索得到候选1项集及其支持度,若其支持度低于最小支持度,则进行剪枝去掉,得到频繁1项集。然后对得到的频繁1项集进行连接,得到候选2项集及其支持度,以此类推进行迭代,直到无法得到频繁k 1项集为止,对应的频繁k项集即为输出结果。其具体步骤如图1所示。

apriori算法实现实验总结(基于Apriori算法的水库优化调度规则提取方法)(4)

图1 Apriori算法流程

2 基于Apriori算法的水库调度规则提取方法

水库长系列调度方案集中积累了大量运行数据,这些数据包括入库径流、库水位、下游水位、下泄流量、发电出力等,根据水头、流量和出力之间的关系,这些数据之间存在着必然联系,也隐藏着一些重要的调度规律。引入Apriori算法的水库调度规则提取技术,首先对优化调度结果进行离散处理,然后遍历调度结果并根据支持度阈值进行剪枝和连接得到频繁项集,再最后根据频繁项集和置信度阈值建立入库径流、库水位、出力之间的关联规则,进而输入未来入库径流数据,获取未来长系列优化调度方案集。其基本过程如下:

步骤一,将优化调度结果进行离散处理,处理后的数据作为事务数据库D={A1 A2 … Ai … An}。事务Ai表示第i年优化调度结果构成的项集。每个项集中包含三项,入库流量ri t、水位si t和出力ci t 即Ai={ri t si t ci t}。根据某一具体水库对象中这三项数值范围,将其用布尔型数值表示。

步骤二,设置最小支持度和最小置信度。一般可将最小支持度和最小置信度的值设置偏小,如最小支持度设置为3%~5% 最小置信度设置为30%~50% 以获得较多的规则,之后再进一步从中进行有针对性地筛选和分析。

步骤三,遍历数据库,搜索得到候选1项集{ri t} {si t} {ci t}及其支持度。候选1项集即数据库D中的所有项集,支持度根据式(1)计算得出,分别计算入库流量ri t、水位si t和出力ci t每一项在数据库D中所占百分比。若其支持度低于最小支持度,则进行剪枝去掉,得到频繁1项集。频繁1项集是遍历数据库之后得到的满足最小支持度的所有1项项集,即{ri t} {si t} {ci t}。

步骤四,将得到的频繁1项集进行自连接,得到候选2项集{ri t si t} {ri t ci t} {si t ci t}及其支持度。支持度根据式(2)计算得出,分别计算数据库D中包含{ri t si t} {ri t ci t} {si t ci t}的项集数占数据库D中总项集数的百分比。若其支持度低于最小支持度,则进行剪枝去掉,得到频繁2项集。频繁2项集是频繁1项集连接之后得到的2项项集,即{ri t si t} {ri t ci t} {si t ci t}。

步骤五,将得到的频繁2项集进行连接并剪枝去除非频繁项集,得到候选3项集{ri t si t ci t}及其支持度。同理,支持度为{ri t si t ci t}项集数占数据库D数中总项集的百分比。若其支持度低于最小支持度,则进行剪枝去掉,得到频繁3项集。频繁3项集是频繁2项集连接之后得到的3项项集,即{ri t si t ci t}。

步骤六,由上可找出最大的3项频繁集,满足最小置信度的即为建立的强关联规则。置信度根据式(3)计算得出,如形如ri t→si t→ci t的规则,置信度为D中同时含有ri t si t ci t的项集数与D中仅包含ri t si t项集数的比值。

步骤七,根据建立起来的强关联规则,输入面临时段水电站时段入库流量数据,得到出力、水位过程。

3 实例应用

三峡水利枢纽具有防洪、发电、航运、补水等多种功能,综合效益巨大,制定科学的优化调度规则对指导三峡水电站合理运行,充分发挥兴利效益具有重要作用。三峡水电站年发电调度方案的制定主要包括依据常规调度和优化调度两种形式:常规调度方案可通过调度图得到(见图2);为获得优化调度规则,需构建三峡年发电优化调度模型,通过优化调度计算获得长系列优化调度方案集,进而采用Apriori算法提取水库优化调度规则。

apriori算法实现实验总结(基于Apriori算法的水库优化调度规则提取方法)(5)

图2 三峡电站调度图

3.1 三峡水电站优化调度规则提取

以年发电量最大为目标,建立三峡水电站优化调度模型,对1900—2008年长系列月入库径流过程采用动态规划法进行求解 得到逐年优化调度方案集。其中,采用1900—1999年长系列优化调度结果构成数据集样本,用于提取优化调度规则,用2000—2008年优化调度结果对优化调度规则的合理性进行检验。三峡水电站年发电量目标函数可表示如下

apriori算法实现实验总结(基于Apriori算法的水库优化调度规则提取方法)(6)

式中,T为调度时段总数;Ni为时段i的出力值;A为出力系数,取8.5;Qi为时段i的发电流量;Hi为时段i的发电水头;Δt为时段长度。

式(4)约束条件主要包括水量平衡约束、水库水位约束、水库下泄流量约束、发电出力约束等。

Apriori算法作为一个挖掘布尔型关联规则的算法,需对优化调度结果进行处理。根据常规调度图出力区的划分,将出力按照其大小划分为0.9倍降低出力区、保证出力、550 MW出力区、600 MW出力区、800 MW出力区和预想出力区,分别记为符号m、n、s、t、x和y; 水位根据三峡水库水位上下限划分为低水位区(145~155 m)、中水位区(155~165 m)及高水位区(165~175 m) 分别记为符号a、b和c; 入库径流按照其设计频率分为10个区,分别记为1至10。数据处理如表1所列。

apriori算法实现实验总结(基于Apriori算法的水库优化调度规则提取方法)(7)

在参数设置中,最小支持度设置为3% 最小置信度设置为30% 进而得到各月优化调度关联规则,其中,有代表性的枯水期1月、汛期7月、蓄水期10月关联规则如表2所列。采用关联规则进行调度时,应该优先考虑支持度高的规则,如果支持度相同,再根据置信度的大小进行选择。在表2中,1月的关联规则(1 c n)表示当入库流量小于10%设计频率时,水库水位为165~175 m之间,水库的出力为保证出力,这条关联规则的支持度为5% 置信度为63% 均满足先前设置的最小支持度和最小置信度,说明这条规则是强关联规则。

apriori算法实现实验总结(基于Apriori算法的水库优化调度规则提取方法)(8)

3.2 结果比较与分析

在获得三峡水库各月关联规则基础上,将2000—2008年各年月径流过程作为输入条件,得到各年出力过程。在关联规则中,由于水库水位是一个区间范围值,因此根据出力计算公式和水量平衡方程反推求出对应时段水库水位的确切数值。采用常规调度、优化调度和基于优化调度规则计算得到的2000—2008年逐月出力、水位和流量过程如图3—图5所示,各年发电量统计结果如表3所列。

apriori算法实现实验总结(基于Apriori算法的水库优化调度规则提取方法)(9)

图3 三峡水电站调度出力过程

apriori算法实现实验总结(基于Apriori算法的水库优化调度规则提取方法)(10)

图4 三峡水电站调度水位过程线

apriori算法实现实验总结(基于Apriori算法的水库优化调度规则提取方法)(11)

图5 三峡水电站流量过程线

apriori算法实现实验总结(基于Apriori算法的水库优化调度规则提取方法)(12)

根据图3—图5三峡水电站调度过程分析,基于优化调度规则得到的各年水位、出力和流量过程均满足相应约束条件,其下泄流量、水位和出力过程与另外两种方法趋势大致相同,说明调度结果合理可行。由图3可见,在枯水期,优化调度规则与优化调度出力结果误差较小,说明Apriori算法拟合效果较好。蓄水期拟合效果稍次,误差基本在10亿kWh以内。在汛期,Apriori算法在来水量较大的年份拟合效果较好,其优化调度规则与优化调度出力结果基本一致,但在来水量较小的年份拟合效果稍次。

由表3可见,基于常规调度、优化调度、优化调度规则得到的检验期年平均发电量分别为741.91亿kWh、821.29亿kWh、799.72亿kWh。其中,优化调度规则得出的年平均发电量低于优化调度的结果2.6% 但明显优于常规调度结果7.8% 其中有6年,超过常规调度结果约50亿kWh。

4 结 论

本文将Apriori数据挖掘算法引入水库调度领域,提出了基于Apriori算法的水库优化调度规则提取方法。通过三峡水电站年发电调度实例研究表明:

(1)基于Apriori算法的水库优化调度规则提取方法能够从优化调度方案集中挖掘入库流量与库水位、出力三者之间的隐含优化关系形成关联规则,得到的调度方案合理可行。

(2)该方法计算得到年发电量结果,虽然低于优化调度结果,但明显优于常规调度图调度结果。

(3)关联规则表结构简单,可操作性强,具备了解决水库群优化调度维数灾问题的潜在能力。

数据挖掘算法的核心在于数据,受限于三峡水电站全面建成投产运行时间有限,同一运行条件下的调度数据集还在不断积累,本研究采用的数据集仅为模拟的优化调度方案数据集。此外,如何进一步对该方法进行改进以提高水库优化调度规则的提取精度和优化效果,以及当水库调度需要同时考虑发电、防洪、生态等多种要求时,其多目标调度规则提取方法还有待进一步研究。


水利水电技术(中英文)

水利部《水利水电技术(中英文)》杂志是中国水利水电行业的综合性技术期刊(月刊),为全国中文核心期刊,面向国内外公开发行。本刊以介绍我国水资源的开发、利用、治理、配置、节约和保护,以及水利水电工程的勘测、设计、施工、运行管理和科学研究等方面的技术经验为主,同时也报道国外的先进技术。期刊主要栏目有:水文水资源、水工建筑、工程施工、工程基础、水力学、机电技术、泥沙研究、水环境与水生态、运行管理、试验研究、工程地质、金属结构、水利经济、水利规划、防汛抗旱、建设管理、新能源、城市水利、农村水利、水土保持、水库移民、水利现代化、国际水利等。

apriori算法实现实验总结(基于Apriori算法的水库优化调度规则提取方法)(13)

猜您喜欢: