【顶级EI复现】计及连锁故障传播路径的电力系统 N-k 多阶段双层优化及故障场景筛选模型(Matlab代码实现)

       💥💥💞💞欢迎来到本博客❤️❤️💥💥

🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。

⛳️座右铭:行百里者,半于九十。

 ⛳️赠与读者

👨‍💻做科研,涉及到一个深在的思想系统,需要科研者逻辑缜密,踏实认真,但是不能只是努力,很多时候借力比努力更重要,然后还要有仰望星空的创新点和启发点。建议粉丝按目录次序逐一浏览,免得骤然跌入幽暗的迷宫找不到来时的路,它不足为你揭示全部问题的答案,但若能让人胸中升起一朵朵疑云,也未尝不会酿成晚霞斑斓的别一番景致,万一它给你带来了一场精神世界的苦雨,那就借机洗刷一下原来存放在那儿的“躺平”上的尘埃吧。

     或许,雨过云收,神驰的天地更清朗.......🔎🔎🔎

💥1 概述

为了复现文章中的上层模型,我们以IEEE39节点系统作为实例,旨在最小化负荷损失。在此模型中,我们模拟了调度中心如何通过调整发电机的输出功率和负荷规模来有效抑制故障的级联传播。具体方法包括设定一系列级联故障变量,如线路状态、跳闸状态以及节点相角等,同时,我们将攻击线路数量、源发阶段的线路状态、线路潮流以及系统功率平衡等因素作为系统的约束条件。借助Matlab与Cplex平台的联合求解,我们最终确定了k重源发故障线路以及级联传播的故障线路,并得出了在故障传播过程中负荷损失的详细情况,这些均为模型运行的关键结果。

摘要:随着电力系统规模扩大与复杂度提升,连锁故障引发的停电事故频发,严重威胁系统安全稳定运行。传统 N-k 安全分析因忽略故障动态传播过程,结果偏保守。本文提出计及连锁故障传播路径的电力系统 N-k 多阶段双层优化及故障场景筛选模型,上层以负荷损失最大为目标筛选高危源发故障场景,下层以负荷损失最小为目标优化调度策略抑制故障传播。通过引入两阶段网络流算法消除非线性项,实现模型高效求解。以 IEEE 39 节点系统为例进行仿真验证,结果表明该模型能有效辨识高危故障场景,优化调度策略可显著降低负荷损失,提升系统可靠性。

关键词:电力系统;连锁故障传播路径;N-k 多阶段双层优化;故障场景筛选;负荷损失

一、引言

电力系统作为关键基础设施,其稳定性和可靠性对社会经济发展至关重要。然而,随着电网规模扩大和复杂度增加,连锁故障发生概率显著提升。连锁故障通常由初始故障引发潮流转移,导致后续元件过载跳闸,形成多米诺骨牌效应,最终引发大面积停电事故,造成巨大经济损失和社会影响。

传统 N-k 安全分析方法通过筛选危害最大的 k 重预想事故场景评估系统安全性,但该方法仅考虑源发故障阶段,忽略故障动态传播过程,导致分析结果偏保守,无法准确反映系统在连锁故障下的实际运行状态。因此,构建考虑连锁故障传播路径的电力系统 N-k 优化模型,对于提高系统安全运行水平和故障预防能力具有重要意义。

二、相关研究现状

2.1 传统 N-k 安全分析方法

传统 N-k 安全分析方法以危害最大为目标筛选源发故障事故集,通过评估系统在预想事故下的运行状态,判断系统是否满足安全约束条件。该方法假设系统运行参数固定,未考虑调度调整对故障传播的抑制作用,且仅关注源发故障阶段,忽略故障级联传播过程,导致分析结果与实际系统运行情况存在偏差。

2.2 考虑连锁故障的电力系统模型研究

近年来,部分学者开始关注连锁故障传播过程对电力系统安全性的影响。文献提出基于交流潮流的电力系统多元件 N-k 故障模型,通过交流潮流和最优潮流分析捕捉支路过载、母线负荷削减和支路故障等情况,考虑多元件故障对系统重要性的影响。但该模型未建立完整的双层优化框架,无法实现故障场景筛选与调度策略优化的协同。

文献提出计及跨域连锁故障的电力信息物理系统 N-k 协同故障场景筛选双层优化模型,考虑信息 - 物理交互作用的协同放大效应及跨域连锁故障传播过程,但模型复杂度较高,求解难度较大。

三、计及连锁故障传播路径的电力系统 N-k 多阶段双层优化模型

3.1 模型框架

本文提出的计及连锁故障传播路径的电力系统 N-k 多阶段双层优化模型框架如图 1 所示。上层模型以负荷损失最大为目标,筛选 k 重源发故障及其故障传播路径,生成高危故障场景集;下层模型针对每个高危故障场景,以负荷损失最小为目标,模拟调度中心调整发电机出力和负荷规模,抑制故障级联传播,优化系统运行状态。

3.2 上层模型:故障场景筛选

3.2.1 目标函数

上层模型的目标函数为最大化负荷损失,表示为:

3.2.2 约束条件

3.3 下层模型:调度策略优化

3.3.1 目标函数

下层模型的目标函数为最小化负荷损失,表示为:

3.3.2 约束条件

下层模型的约束条件与上层模型类似,包括故障传播约束、节点功率平衡约束和发电机约束。此外,下层模型还需考虑调度调整的可行性,如发电机爬坡率约束、负荷调整范围约束等。

3.4 模型求解方法

原双层优化模型通过对偶理论转化为单层模型求解时,会引入非线性项,导致收敛速度慢。本文提出两阶段网络流算法,通过确定对偶变量上下界消除非线性项,缩小模型可行域,提高求解效率。具体步骤如下:

  1. 第一阶段:将下层潮流模型转化为线性网络流问题,求解得到对偶变量上下界。
  2. 第二阶段:将第一阶段得到的对偶变量上下界代入上层模型,将双层模型转化为单层混合整数线性规划问题,利用 Gurobi 等优化求解器求解。

四、仿真验证

4.1 仿真系统与参数设置

以 IEEE 39 节点系统为例进行仿真验证。该系统包含 10 台发电机、39 个节点和 46 条输电线路,总负荷为 6254.2 MW。设置源发故障线路数 k=3,故障阶段数 m=3。发电机输出功率上下限、线路功率承载极限等参数参考 IEEE 39 节点系统标准数据。

4.2 仿真结果分析

4.2.1 高危故障场景筛选结果

通过上层模型筛选得到多个高危故障场景,不同故障场景下的负荷损失情况如图 2 所示。从图中可以看出,不同故障场景对系统负荷损失的影响存在显著差异。例如,故障场景 1 导致负荷损失为 1200 MW,而故障场景 2 的负荷损失仅为 600 MW。这表明不同源发故障及其传播路径对系统安全性的影响程度不同,通过上层模型筛选高危故障场景,可为调度人员提供有针对性的预防措施。

4.2.2 调度策略优化结果

针对每个高危故障场景,下层模型进行调度策略优化,优化前后的负荷损失对比结果如图 3 所示。从图中可以看出,通过优化调度策略,系统负荷损失得到显著降低。例如,在故障场景 1 中,优化前负荷损失为 1200 MW,优化后负荷损失降低至 400 MW,降幅达 66.7%。这表明下层模型通过调整发电机出力和负荷规模,有效抑制了故障级联传播,提高了系统可靠性。

五、结论与展望

5.1 研究结论

本文提出计及连锁故障传播路径的电力系统 N-k 多阶段双层优化及故障场景筛选模型,通过构建上层故障场景筛选模型和下层调度策略优化模型,实现了高危故障场景辨识与调度策略优化的协同。仿真结果表明,该模型能有效筛选高危故障场景,优化调度策略可显著降低负荷损失,提高电力系统可靠性。

5.2 研究展望

未来研究可进一步考虑以下方向:

  • 考虑不确定因素:引入可再生能源出力不确定性、负荷波动等不确定因素,构建鲁棒优化模型,提高模型对不确定环境的适应能力。
  • 多时间尺度优化:将多阶段优化扩展至更长时间尺度,考虑故障恢复过程对系统运行的影响,实现故障预防、应急处置和恢复重建的全过程优化。
  • 与其他系统耦合:考虑电力系统与天然气系统、交通系统等其他能源系统的耦合关系,构建综合能源系统 N-k 优化模型,提高综合能源系统的安全性和可靠性。

📚2 运行结果

分析结果显示,随着初始故障及后续连锁故障的出现,系统所承受的负荷损失逐渐加剧。接下来,关键在于管理连锁故障导致的负荷损失。原先的研究采用了底层模型进行调度优化,并通过对偶转换将双层模型简化为单层处理。对于正在该领域探索的学者,可在这一基础上探索新的减少负荷损失的策略模型,以此作为创新点,将有助于更简洁地撰写研究论文。 

程序能够识别并输出初始故障导致的停运线路以及后续级联故障传播影响的线路。接下来,我们探讨如何评估这些结果的准确性。

首先,考察初始故障阶段停运的三条线路——37、39和46。在网络图中模拟断开这三条线路后,确认所有负荷节点依然保持网络连接,未出现负荷损失。

接着,分析初始故障叠加级联传播阶段1的情况,即在网络图中模拟断开总共8条故障线路。通过观察,我们发现负荷节点21、23和24出现了停电。结合39节点的网络负荷数据,这三个节点的负荷量分别为274、247.5和308.6(具体参数可参考程序生成的mpc文件),这三者之和与第一幅负荷损失图中s=2对应的折线值相吻合,从而验证了结果的准确性。

部分代码:

%% 求解结果

if result.problem == 0

% 提取最优解

attack_lines = find(value(ul) <= 0.1);

total_load_loss = value(Objective);

fprintf('需要攻击的线路序号为:%s\n', mat2str(attack_lines'));

fprintf('对应的最终负荷损失总和为:%.2f MW\n', total_load_loss);

% 每个阶段的负荷损失

loss_per_stage = zeros(m,1);

for s = 1:m

loss_per_stage(s) = sum(Dd0) - sum(value(Ds(:,s)));

end

% 绘制负荷损失曲线

figure;

plot(1:m, loss_per_stage, '-ko', 'LineWidth', 2);

xlabel('阶段 s');

ylabel('负荷损失总和 (MW)');

title('每个阶段的负荷损失曲线');

grid on;

% 输出每个阶段停运的线路

fprintf('源发阶段停运的线路:%s\n', mat2str(attack_lines'));

for s = 2:m

els_value = value(els(:,s));

out_of_service_lines = find(els_value == 1);

fprintf('级联传播阶段 %d 停运的线路:%s\n', s-1, mat2str(out_of_service_lines'));

end

else

disp('求解器未能找到最优解。');

disp(result.info);

% % 显示不可行性的诊断信息

% infeasibility = check(Constraints);

% disp('约束的不可行性检查:');

% for i = 1:length(Constraints)

% fprintf('约束 %d 的不可行性程度:%g\n', i, infeasibility(i));

% end

end

🎉3 参考文献

文章中一些内容引自网络,会注明出处或引用为参考文献,难免有未尽之处,如有不妥,请随时联系删除。(文章内容仅供参考,具体效果以运行结果为准)

[1]蔡晔,孙溶佐,王炜宇,等.计及连锁故障传播路径的电力系统N-k多阶段双层优化及故障场景筛选模型[J/OL].中国电机工程学报,1-15[2024-12-15].

🌈Matlab代码实现

资料获取,更多粉丝福利,MATLAB|Simulink|Python资源获取

                                                           在这里插入图片描述

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值