配电网可靠性评估(一)—最小路法和非序贯蒙特卡洛模拟法的matlab实现

简介: 电力系统的可靠性研究是相关领域的热点问题。根据研究对象的不同,又可分为发电系统的可靠性,输电系统的可靠性和配电系统的可靠性。配电网在电力系统中处于最末端的位置,直接和用户相连,一旦出现故障情况,就会在用户侧表现为停电事故。因此对配电网的可靠性评估有着重大意义。

一、简介

电力系统的可靠性研究是相关领域的热点问题。根据研究对象的不同,又可分为发电系统的可靠性,输电系统的可靠性和配电系统的可靠性。配电网在电力系统中处于最末端的位置,直接和用户相连,一旦出现故障情况,就会在用户侧表现为停电事故。因此对配电网的可靠性评估有着重大意义。


一、可靠性评估的主要指标

1.负荷可靠性指标

1.1故障率$\lambda$

表示负荷在单位时间内因元件故障而发生停电事故的频率,单位为(次/年),计算公式为:$$\lambda=\sum_{i∈D}\lambda_i$$
式中,$D$表示会影响该负荷的元件集合,$\lambda_i$表示第$i$个元件的故障率。

1.2停电持续时间$\gamma$

表示负荷每次发生停电事故的平均持续时间,单位为(小时/次),计算公式为:$$\gamma=\frac{\sum_{i∈D}\lambda_i\gamma_i}{\sum_{i∈D}\lambda_i}$$
式中,$\gamma_i$表示第$i$个元件的平均故障时间。

1.3年平均停电时间$U$

表示负荷在一年内停电的平均时间,单位为(小时/年),计算公式为:$$U=\gamma\lambda$$

2.系统可靠性指标

2.1系统平均停电频率$SAIFI$

表示在该系统中每个用户在一年内的平均停电次数,单位是(次/(户·年))。

2.2系统平均停电时间$SAIDI$

表示在该系统中每个用户在一年内的平均停电时间,单位是(小时/(户·年))。

2.3供电可靠率$ASAI$

表示单位时间内用户有效供电小时数与总时间的比值。

二、可靠性评估方法

1.解析法

解析法,顾名思义就是用能解析的方法求解可靠性。一般都是是通过列举分析所有的系统故障状态来计算可靠性指标,主要有故障模式后果分析法、网络等值法、故障扩散法、最小路法等。这里主要介绍最小路算法:

应用最小路算法时,首先可以求出每个负荷与电源之间的最短路径,也就是负荷的最小路。那么对这个负荷来说,整个配电网上的元件就可以分成最小路上的元件和非最小路上的元件。在最小路上的元件,故障时都会对负荷造成影响;对于非最小路上的元件,可以根据该元件所处的位置,保护配置等判断是否对负荷有影响,最终求出负荷的可靠性指标,再由负荷的可靠性指标便可以求出系统的可靠性指标。以下面简单的配电网为例:
image.png

对于负荷1来说,最小路上的元件包括断路器QF1、线路1和线路2、熔断器FU1、变压器T1,其中每一个元件停运,都会引起负荷停运,引起负荷的停运时间就是元件的故障恢复时间。非最小路上的元件包括线路3-8,变压器2-4,其中线路4和线路8、变压器2和4存在熔断器保护,因此故障时不会影响负荷1。剩余的元件中,线路3和线路5故障时,断路器QF1动作影响负荷1供电,且引起负荷的停运时间为元件的故障恢复时间;线路6、线路7和变压器3故障时分段开关S会动作,理论上开关动作时负荷1会短暂停电,引起负荷1停电时间就是开关的动作时间。

其余节点的分析和对负荷1的分析完全相同。

算例采用IEEE RBTS BUS6系统,非常经典的配电网可靠性测试系统,数据很全也比较好找:
image.png

数据文件如下:
image.png

采用matlab编程,应用最小路法求负荷以及系统的可靠性:

clc;clear;
tic
%读取数据
[line_num,line,load_num,load] = IEEE_RBTS_BUS6_F4;
%初始化负荷点可靠性指标
Lambda_load=zeros(1,load_num);
Gamma_load=zeros(1,load_num);
load_users=zeros(1,load_num);
%求每个负荷的可靠性参数
for i=1:load_num
    省略……
end
SAIFI=Lambda_load*(load_users')/(sum(load_users))
SAIDI=U_load*(load_users')/(sum(load_users))
CAIDI=SAIDI/SAIFI
ASAI=1-SAIDI/8760

运行结果如下:
image.png

image.png

image.png

2.模拟法

模拟法就是指蒙特卡洛模拟法。在进行供电可靠性评估时,通过随机抽样获取系统的状态,再结合统计学的方法得到可靠性指标的估计值。解析法求解的可靠性指标是精确值,但模拟法通过仿真求解,得到的结果并不是完全精确的,结果的精确度和抽样次数有很大的关系。蒙特卡洛模拟法又可以分为序贯蒙特卡洛模拟法和非序贯蒙特卡洛模拟法。下面重点介绍非序贯蒙特卡洛模拟法。

非序贯蒙特卡洛模拟法基本原理如下:

首先假设配电系统中的每个元件都存在故障和正常运行两种状态,且每个元件的状态是相互独立的;然后用$s_i$表示第$i$个元件的状态,且该元件故障率为$\lambda_i$,平均修复时间为$\gamma_i$;最后,对该元件产生一个在$[0,1]$之间均匀分布的随机数$E_i$,如果$E_i$在$[0,\lambda_i]$之间,表示该元件发生故障,否则可以认为元件处于正常工作状态。

元件保持在正常状态的时间记为正常运行时间TTF,元件故障的时间记为修复时间TTR,分段开关切换时间记为开关切换时间TTS,可以近似认为元件的故障修复时间服从指数分布,求出TTF、TTR和TTS。

那么求解的具体步骤就是:首先确定系统中每个元件的状态,再由故障元件确定受影响的负荷和负荷的停运时间,这样一次就完成了一次系统状态抽样的过程,重复多次便可以得到负荷的停电频率和停电持续时间,再进一步求得系统的可靠性指标。
matlab代码如下:

clc;clear;
%读取数据
[line_num,line,load_num,load] = IEEE_RBTS_BUS6_F4;
%生成图
g=digraph(line(:,1),line(:,2),line(:,3));
%初始化影响矩阵
equipment_load=zeros(line_num,load_num);
operator_load=zeros(line_num,load_num);
%利用节点网络分析法确定影响负荷的元件
tic
for i=1:load_num
    省略……
end
load_fault=zeros(1,load_num);%故障次数
load_fault_time=zeros(1,load_num);%故障时间
Lambda=zeros(1,line_num);
Gamma1=zeros(1,line_num);
Gamma2=zeros(1,line_num);
%非序贯蒙特卡洛模拟法
N=1000000;%仿真次数
for i=1:N
    省略……
end
Lambda_load=load_fault/N;
U_load=load_fault_time/N;
Gamma_load=U_load./Lambda_load;
SAIFI=Lambda_load*(load_users')/(sum(load_users))
SAIDI=U_load*(load_users')/(sum(load_users))
CAIDI=U_load*(load_users')/(Lambda_load*(load_users'))
ASAI=1-U_load*(load_users')/(sum(load_users*8760))

运行结果如下:
image.png

image.png

image.png

如果运行过的代码的朋友可以发现,解析法每次求出来的结果是不变的,而模拟法的结果是一直都在变化。所以还需要分析一下模拟法的误差。从下面的图可以看到,在仿真次数取一百万次时,结果还是比较精确的,和精确值的误差数量级在$10^{-3}$。image.png
image.png

image.png

相关文章
|
存储 算法 测试技术
配电网可靠性评估(4)—(顶刊复现)基于优化模型的配电网可靠性评估
顶刊论文《Reliability Assessment for Distribution OptimizationModels: A Non-Simulation-Based Linear Programming Approach》,介绍了一种基于线性规划方法的配电网可靠性评估模型,首次将数学优化方法应用到配电网可靠性评估当中。这篇博客就是对该文献的详细解读及完整代码复现。
配电网可靠性评估(二)—序贯蒙特卡洛模拟法的matlab实现
电力系统的可靠性研究是相关领域的热点问题。根据研究对象的不同,又可分为发电系统的可靠性,输电系统的可靠性和配电系统的可靠性。配电网在电力系统中处于最末端的位置,直接和用户相连,一旦出现故障情况,就会在用户侧表现为停电事故。因此对配电网的可靠性评估有着重大意义。
配电网可靠性评估(三)——含分布式电源的配电网可靠性评估
基于matlab平台,分别采用DG的概率模型+最小路法、DG的时序模型及序贯蒙特卡洛模拟法对含DG的配电网进行可靠性评估,对比了结果并提供了完整的matlab代码。
|
11月前
|
运维 大数据 决策智能
配电网可靠性评估—序贯蒙特卡洛模拟法研究(Matlab代码实现)
配电网可靠性评估—序贯蒙特卡洛模拟法研究(Matlab代码实现)
245 5
【免费资料】IEEE33节点系统参数及拓扑图visio
初学者入门配电网可参考经典的IEEE 33节点系统,此系统在文献中广泛应用。资源包括节点和支路参数的Excel表格及Visio的网络拓扑图,可免费下载。配电网以闭环设计增强灵活性和可靠性,故障恢复涉及网络拓扑约束。提供的MATLAB相关链接探讨了孤岛、重构及故障恢复策略。
双层优化入门(1)—基本原理与求解方法(附matlab代码)
双层优化问题(Bilevel Programming Problems),也被称为双层规划,最早由Stackelberg与1934年在经济学相关研究中提出,因此也被称为Stackelberg问题。双层规划问题一般具有层次性、独立性、冲突性、优先性和自主性等特点。 本文介绍了双层优化的原理与求解方法,并提供了相应的matlab代码供参考学习。
|
存储 机器学习/深度学习 人工智能
TaoAvatar:手机拍出电影级虚拟人!阿里3D高斯黑科技让动捕设备下岗
阿里巴巴最新推出的TaoAvatar技术,通过3D高斯溅射实现照片级虚拟人实时渲染,支持多信号驱动与90FPS流畅运行,将彻底改变电商直播与远程会议体验。
1043 8
TaoAvatar:手机拍出电影级虚拟人!阿里3D高斯黑科技让动捕设备下岗
|
存储 算法 新能源
储能运行约束的Matlab建模方法
储能运行约束的matlab建模方法,分别使用引入一组0-1变量,引入两组0-1变量,以及智能优化算法中的简化表示对储能的运行进行建模。 使用一个风光储系统的实际算例验证了三种方法的有效性: 某地有一个风-光-储互补系统,某一天中风电、光伏出力以及负荷需求都是已知的,现在需要控制储能的充放电策略,尽可能降低负荷短缺以及弃风弃光的现象。其中,储能系统的额定容量为40MW,额定功率为20MW,充放电效率分别为0.95和0.96,最大和最小荷电状态分别为15%和90%,初始荷电状态为30%
储能运行约束的Matlab建模方法
|
并行计算 算法 关系型数据库
开源代码分享(9)—面向100%清洁能源的发输电系统扩展规划(附matlab代码)
本文提出了一种新颖的建模框架和基于分解的解决策略,将随机规划(SP)和鲁棒优化(RO)相结合,以应对协调中长期电力系统规划中的多重不确定性。从独立系统运营商(ISO)的角度出发,问题被建模为一个多年的发电和输电规划问题,旨在最小化二进制和连续不确定性下的扩展和运营成本,即系统元件事故和负荷/发电变化。RO利用经修正的事故准则来捕捉N-k事故,而SP嵌入RO通过使用具有时空相关性的历史数据生成操作场景来考虑负荷/发电不确定性。原始混合模型非常复杂,但通过基于列-约束生成和L型算法的分解策略可以减轻其复杂性。我们应用我们的模型来进行长期系统规划,研究了高比例可再生能源渗透度的情况,以及长期规划中1
|
存储 数据处理 C++
相见恨晚的Matlab编程小技巧(4)-程序运行太慢了咋解决——合理使用循环语句(2)
        上一篇博客介绍了通过向量化运算、预分配空间两种常用的方式提高代码的运行效率。实际上,matlab还有几种内置函数来避免循环语句的使用,分别为arrayfun、cellfun以及structfun函数。由于这几种函数需要用到匿名函数以及函数句柄的概念,很多人可能不太清楚,所以我才单独写一篇博客进行介绍。

热门文章

最新文章