基于粒子群算法的配电网重构研究matlab程序

news2025/7/11 2:47:59

基于粒子群算法的配电网重构研究matlab程序
参考文献:基于改进灰狼算法的含分布式电源配电网重构研究

(本文未考虑分布式电源)
摘要:使用基本环矩阵编码的智能优化算法在处理配电网重构问题中,通常使用无序的解空间,解空间中局部峰值较多,使得智能优化算法难以发挥自身优势,耗时严重且难以寻找到最优解。针对以上问题,提出一种有序环网编码方式,并基于粒子群算法求解配电网的重构。用粒子群算法求解 IEEE 33 配电网,有效地降低系统网损并且提高了系统内的最低电压。经验证,该方法有效可行、算法简单、快速性高,得到的结果更优。
关键词:配电网重构;粒子群算法;有序环网

1 配电网重构模型
本文使用配电网有功功率损耗最小作为目标函数:
在这里插入图片描述

式中:i 表示支路的编号;T 则为该配电网中闭合支路的集合;ri 为第 i 条支路的电阻;Ui 为第 i条支路末端节点的电压有效值;Pi 和 Qi 分别为第 i 条支路末端流过的有功和无功功率。
约束条件如下。
1)节点电压约束:
在这里插入图片描述

2)支路容量约束:
在这里插入图片描述

3)连通辐射状结构约束:
在这里插入图片描述

式中:Ui、 Uimin 、Uimax 分别为第 i 支路末端节点实际电压及其电压的上下限;S i 、S imax 分别为第 i 支路实际流过的功率及其允许流过的最大功率;g 为配电网重构后的网络拓扑结构;G 为连通辐射状拓扑结构的集合。

2 有序环网矩阵编码
智能优化算法在寻优过程中,均是以当前最优个体为基础产生新的个体,进而搜索到更优质个体。然而在求解多峰值函数问题时,由于峰值 (或谷值) 较多。寻优时,有可能搜寻到一个峰值 (或谷值),并以此为基础产生新解,或影响其他个体的寻优,进而使得算法陷入局部最优,需要寻找到优于该峰值 (或谷值) 的解,才可以跳出局部最优。然而在单峰值函数中,则不存在这种陷入局部最优的状况。且多峰值函数的峰值越多,则智能优化算法对其寻优就越容易陷入局部最优。因此,智能优化算法在处理多峰值问题时,若可以对其解空间进行重新排序,使其变为单峰值或减少其峰值时,则可以大大降低搜索难度, 既可以提升解的质量,又可以降低迭代次数。
1)将系统中的各个支路进行标号,0代表支路上的开关是断开的,1代表支 路上的开关是闭合的。
2)利用图论决定基本的环路,环路的个数与联络开关的个数是一样的,对33 节点系统而言即5个。
3)根据基本的环路列出环网矩阵。环网矩阵的行数即基本环的个数, 列数为支路数最多的那个环的支路数,其他小一些的环中没有这么多支路的空余 的地方值都填充为0。

3 IEEE33节点系统算例
系统结构
在这里插入图片描述

环网矩阵
在这里插入图片描述

程序运行结果
1)电压结果
在这里插入图片描述

2)潮流与重构结果
在这里插入图片描述

4 matlab程序

clc
clear
tic
close all
%% (INITIALIZING SWARM PARAMETER)初始化群参数)
n=20;%粒子数
%利用图论决定基本的环路,环路的个数与联络开关的个数是一样的,对33 节点系统而言即5个
dim=5;% Dimmension of searching space搜索空间维度(5个联络开关),变量
x=load('swarm33.m');% Creating a swarm创建一个群体
vnew=rand(n,dim);% Creating a randomized initial velocity创建随机初始速度
sig=zeros(n,dim);
vold=vnew;
fitness=zeros(1,n);
pbest=load('swarm33.m');% Creating pbest matrice创建 pbest 矩阵,个体最优
gbest=[4 10 24 30 12];% Introducing a randomized gbest,种群蕞有
wmax=0.9;
wmin=0.4;
r1=rand(n,dim);% Creating a randomized matrice, size (20x5)创建一个随机矩阵
r2=rand(n,dim);% Creating a randomized matrice, size (20x5)创建一个随机矩阵
iter=0;
maxiter=60;% Maximum iteration最大迭代
%根据基本的环路列出基本环矩阵ssm。 ssm的行数即基本环的个数, 列数为支路数最多的那个环的支路数,
%其他小一些的环中没有这么多支路的空余 的地方值都填充为0。为了更简便,每条支路,包括环共有的支路,
% 都只会包含在一个支路环里,这样就省略了节点分类以及还需创建其他支路的麻烦
% 从矩阵ssm的每一行中选取一个非零元素,在每一次的网络重构中,每个环路中的都有且只有一条支路(非零元素)能被选为断开,
% 每个环中被选中的断开的支路开关状态改为0,其余支路的开关状态都保持为1
ssm=[8  9   10  11  21  33  35  0   0
    22  23  24  25  26  27  28  37  0
    15  16  17  29  30  31  32  36  0
    12  13  14  34  0   0   0   0   0
    2   3   4   5   6   7   18  19  20];
sm=ssm';
%%  Establish the incidence matrix-p建立关联矩阵-p
data=loadcase('case33');
doc=data.branch;
nbr=37;%branches-p
nbus=33;%load busses -p
matrix=zeros(nbr,nbus);
    frbus=doc(:,1);%from branch
    tbus=doc(:,2);%to branch
for i=1:nbr%nhanh=37
matrix(i,frbus(i))=1;
matrix(i,tbus(i))=1;
end
matrix;
 %%  Calculating fitness function for pbest初始化 fpbest 的适应度函数
 fpbest=zeros(1,n);
 for i=1:n
     fpbest(i)=50000;
 end
 。。。。。。。略

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/39092.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

机械硬盘,Win10系统,磁盘100%

问题描述 使用机械硬盘,装了Win10系统,打开文件夹或程序,非常的慢,通过任务管理器查看性能,显示磁盘一直处于100%的状态。电脑概览如下: 电脑型号 技嘉 B460MAORUSPRO 操作系统 Microsoft Windows 10 专业…

PyQt5学习笔记--多线程处理、数据交互

目录 1--引入多线程的原因 2--PyQt多线程的基本知识 3--多线程登录程序的实例 4--参考 1--引入多线程的原因 ① 如果Qt只采用单线程任务的方式,当遇到数据处理慢的情形时,会出现GUI卡死的情况。 ② 使用下述例子展示单线程任务的缺陷: …

Java学习之继承的本质(重要)

目录 目录 一、一个继承的代码案例 二、子类创建的内存布局 三、查找顺序 一、son.name的输出结果 二、son.age的输出结果 三、son.hobby的输出结果 一、一个继承的代码案例 package com.hspedu.entends_;/*** 讲解继承的本质*/ public class ExtendsTheory {public sta…

Spring Boot 项目的创建和简单使用

目录 1. 什么是 Spring Boot, Spring Boot 框架有什么优点 2. Spring Boot 项目的创建 2.1 在 IDEA 下安装 Spring Boot Helper 插件: 2.2 创建 Spring Boot 项目: 2.3 网页版创建 Spring Boot 项目 3. Spring Boot 通过路由映射到本地程序 1. 什么是 Spring Boot, Spring …

MFC编辑框控件属性和用法

目录 一、编辑框的属性 1.want return 2.Multiline 3.滚动条 4.添加完效果 二、初始化编辑框内容 三、复制与退出 四、edit control的值类型 五、思维拓展 一、编辑框的属性 默认情况下编辑框edit control 是可以横向无限输入的 1.want return 支持换行,…

dreamweaver作业静态HTML网页设计模板——迪士尼影视电影(6页)带音乐

HTML实例网页代码, 本实例适合于初学HTML的同学。该实例里面有设置了css的样式设置,有div的样式格局,这个实例比较全面,有助于同学的学习,本文将介绍如何通过从头开始设计个人网站并将其转换为代码的过程来实践设计。 文章目录一、网页介绍一…

Private Execution on Blockchain

1.Alan Szepieniec: Ghost-Queen Chess——复杂金融合约 Alan Szepieniec为Neptune合伙人。 为何需关注decentralized Finance? 1)从学术角度来看:是 密码学 ∩\cap∩ 分布式系统 ∩\cap∩ 经济学 ∩\cap∩ …的集合。2)从工程…

基于蚁群算法的多配送中心的车辆调度问题的研究附Matlab代码

✅作者简介:热爱科研的Matlab仿真开发者,修心和技术同步精进,matlab项目合作可私信。 🍎个人主页:Matlab科研工作室 🍊个人信条:格物致知。 更多Matlab仿真内容点击👇 智能优化算法 …

BUUCTF Misc ningen1 小明的保险箱1 爱因斯坦1 easycap1

ningen1 下载文件 使用kali中的binwalk查看 binwalk xxx.jpg 分离文件 打开 压缩包加密了,爆破 爆破成功,密码:8368 得到flag flag{b025fc9ca797a67d2103bfbc407a6d5f} 小明的保险箱1 下载文件 用010 editor打开 可以看到图…

Java初识泛型

什么是泛型 泛型是jdk1.5引入的新语法,泛型就是适用于许多许多类型,就是对类型实现了参数化。实现一个类,类中包含一个数据成员,使得数组中可以存放任何类型的数据,也可以根据成员方法返回数组中某个下标的值 class M…

linux-免费ssl证书

title: linux-免费ssl证书 categories: Linux tags: [linux, xshell] date: 2022-09-10 19:29:55 comments: false mathjax: true toc: true linux-免费ssl证书 前篇 33种免费获取SSL证书的方式 - https://zhuanlan.zhihu.com/p/174755007 HTTPS 证书文件格式转换 HTTPS证书文…

基于多目标粒子群优化算法的冷热电联供型综合能源系统运行优化附Matlab代码

✅作者简介:热爱科研的Matlab仿真开发者,修心和技术同步精进,matlab项目合作可私信。 🍎个人主页:Matlab科研工作室 🍊个人信条:格物致知。 更多Matlab仿真内容点击👇 智能优化算法 …

acm退役小记

本人大学是接近一本线的二本大学,目前能打的区域赛场基本打完了,桂林rank105和沈阳rank140是有两个区域赛铜。如果我是强校的话,也会说下只能拿废物铜耻辱退役 这里简单记下我的acm生涯 其实我一直觉得对于我们这种弱校,虽然打a…

delete删除后怎么恢复文件?四种方法进行找回

演示机型:技嘉 H310M HD22.0 系统版本:Windows 10 专业版 很多小伙伴在日常工作或生活中,喜欢通过delete键进行删除文件,虽然这种删除方式快捷方便,但是也容易出现误删的情况,那么用delete键删除的文件可以…

【语音识别】高斯混合模型(GMM)说话人识别【含Matlab源码 574期】

⛄一、高斯混合模型简介 GMM基本框架 类似的还有GMM-UBM(Universal background model)算法,其与GMM的区别在于:对L类整体样本训练一个大的GMM,而不像GMM对每一类训练一个GMM模型。SVM的话MFCC作为特征,每一帧作为一个样本&#…

golang的new和make

golang 变量定义的方式 可以通过 var变量名称变量类型 进行声明变量,当我们没有给它赋值的时候,它们的结果是变量类型的零值,例如: string 的零值是"",int 的零值是0,引用类型的零值是nil。 前面两种类型…

Android加载第三方so库

本篇文章使用的android studio版本是:Android Studio Bumblebee | 2021.1.1 Patch 2 上一篇文章:Android开发java调用C简单示例 演示了java调C,那么so文件能否复用到别的项目了? 这次我们尝试用上一篇文章生成的so库,调用里面的…

APK 签名 v1 v2 步骤

APK 签名 v1 v2 步骤 需要工具 **apksigner.jar jarsinger.exe keytool.exe zipalign.exe ** 1.生成 keystore keytool -genkey -v -keystore my.keystore -alias liuhan -keyalg RSA -keysize 2048 -sigalg SHA256withRSA -dname "cnTest,ouTest,cCA" -validity …

【机器学习入门项目10例】(六):KMeans聚类

💥 项目专栏:【机器学习入门项目10例】 文章目录 一、KMeans聚类二、数据集介绍三、KMeans聚类算法介绍四、定义KMeans模型4.1 kmeans算法入口4.2 初始化簇4.3 计算DBI优化指标4.4 计算每个样本到簇中心的距离4.5 更新每个样本所属的簇分类4.6 更新每个簇的中心4.7 官方实现…

百行代码实现VLC简易视频播放器【详细环境配置过程+可执行源码注释完整】

文章目录❓什么是VLC🚀VLC 库的集成⭐VLC环境配置演示【win10系统vs2017win64】🍎VLC 库的基本使用🎂视频播放器实现⭐自定义函数Unicode2Utf8讲解🏠总结❓什么是VLC VLC 是 Video Lan Client 的缩写,原先是几个法国的…