如何做好配电网重构研究?不如看看改进二进制粒子群算法在配电网重构中的应用程序代码!

本文探讨了如何利用改进的二进制粒子群算法处理分布式电源快速发展带来的配电网复杂性问题,通过优化有功网损和节点电压偏移,实现在IEEE33节点系统的高效重构。文章详细介绍了模型构建、算法改进、编码方式和计算方法,提供了Matlab程序示例。
摘要由CSDN通过智能技术生成

前言

近年来,随着分布式电源(Distributed Generation,DG)的快速发展,为了提高配电网的安全性与电能质量,大量DG被接入到配电网中,这使得传统数学算法在复杂的配电网中不再适用,国内外学者常采用人工智能算法来进行配电网优化。综合考虑已有研究,以有功网损和节点电压偏移作为目标函数,建立配电网重构模型,并对传统二进制粒子群算法(Binary Particle Swarm Optimization,BPSO)进行改进,在IEEE33节点配电系统上进行分析,可以有效增强算法性能,提升网络重构效率。

配电网重构模型

通过改变配电网中开关分合状态,达到有功网损与节点电压偏移最小的目标。配电网重构模型需要考虑优化目标与约束条件,具体如下:

1)有功网损最小目标;2)节点电压偏移最小目标;

程序介绍

程序对传统的二进制粒子群算法进行了改进,将自适应比例选择策略与混沌搜索引入算法中,避免传统算法容易陷入局部最优、收敛速度较慢等问题。以IEEE33节点配电系统为研究对象,考虑了含有多种分布式电源的情况,以有功网损和节点电压偏移作为目标函数,进行了配电网重构的仿真试验。程序算例丰富、注释清晰、干货满满,可扩展性和创新性很高!下面对文章和程序做简要介绍!

仿真平台:Matlab+Yalmip+Cplex

建模方法

网络编码方式

传统研究中常采用二进制编码策略,但会得到许多不可行解,计算效率低,为了提高算法性能,采用环路编码方式。在编码时,每个粒子的维数与开关数相等,用0和1表示开关的分合。步骤如下:

1)使配电系统处于正常运行状态;

2)依次闭合第 1-5 个联络开关,形成 Loop1⋯⋯Loop5;

3)用变量 x 表示 Loop 中的开关编号。例如集合x1包含了支路 2、3、4、5、6、7、18、19、20、33上的开关。

对于不可行解的剔除

接入大量 DG 时,会使配电系统变得更加复杂,但配电网辐射状运行的结构不变。基于图论和树状结构的理论分析得出正常运行判据,即闭合支路数=有效节点数-1。通过剔除不可行解提高计算效率。

潮流计算方法

由于配电网呈辐射状运行,故采用前推回代算法进行潮流计算。

改进算法流程图如图所示

程序结果

部分程序

%% 设置种群参数
sizepop = 50;    ​% 初始种群个数
dim = 37;        ​% 空间维数
ger = 22;        ​% 最大迭代次数    
[xlimit_max,xlimit_min,vlimit_max,vlimit_min] = set_up_2();
c_1 = 0.8;       ​% 惯性权重
c_2 = 1.5;       ​% 自我学习因子
c_3 = 1.5;       ​% 群体学习因子 
%% 生成初始种群
%  首先随机生成初始种群位置​%  然后随机生成初始种群速度
%  然后初始化个体历史最佳位置,以及个体历史最佳适应度
%  然后初始化群体历史最佳位置,以及群体历史最佳适应度
%  设置禁忌对象和其对应的持续迭代次数
[pop1,pop2,pop3,pop_v] = CreatPSO_2(sizepop,vlimit_max,vlimit_min);
pop=[pop1,pop2,pop3];gbest = pop1;   ​% 每个个体的历史最佳位置
success = huanlu(pop2);
L=5;%禁忌对象对应的持续迭代次数
​[SAIFI,SAIDI,CAIDI,ASAI,Lambda_load,Gamma_load,U_load] = reliability(pop1(j,:));
fitness_gbest(j) = SAIDI;    ​ % 每个个体的历史最佳适应度
zbest = pop1(1,:);  % 种群的历史最佳位置​forbidden=zbest;    % 种群的禁忌对象
fitness_zbest = fitness_gbest(1);  % 种群的历史最佳适应度​
​​fitness_gbest(j) < fitness_zbest % 如果求最小值,则为<; 如果求最大值,则为>; 
​zbest = pop1(j,:);fitness_zbest=fitness_gbest(j);

部分内容源自网络,侵权联系删除!

欢迎感兴趣的小伙伴关注并私信获取完整版代码,小编会不定期更新高质量的学习资料、文章和程序代码,为您的科研加油助力!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值