当前位置: 首页 > news >正文

构建电气距离邻接矩阵

含高比例分布式光伏的配电网集群电压协调控制 摘要:代码主要做的是基于网络划分的双层电压控制策略,通过优化光伏变流器的有功和无功输出功率实现光伏发电损失和线路有功损耗最小,在集群划分基础上,研究包含群内自治优化和群间分布式协调的双层电压控制策略,集群自治优化控制通过交替更新群内最优解和虚拟平衡节点电压实现群内电压的实时快速控制。 长时间尺度的群间分布式协调控制基于交换方向乘子法,通过相邻集群的有限边界数据交换实现对分布式光伏输出功率的全局优化控制。 复现结果非常良好,结果图展示如下:

最近在配电网里搞事情的朋友肯定深有体会——光伏占比一高,母线电压就跟过山车似的忽上忽下。传统方法要么反应慢半拍,要么各管各的容易打架,这不前几天刚复现了个双层电压控制的策略,实测效果比喝冰镇可乐还舒爽。

先说说这招的核心思路:把整个配电网切成若干小团体,每个小团体内部自己搞定电压调节,团体之间再搞点情报共享。这就好比把大排档改造成美食城,每家店自己把控菜品质量(自治优化),商户联盟再来协调整体客流量(群间协调)。

咱们先看怎么切分这个网络。用社区发现算法把电气距离近的节点划到同一个集群,Python里networkx的greedy_modularity社区划分用着挺顺手:

import networkx as nx from sklearn.metrics import pairwise_distances electrical_distance = pairwise_distances(node_features, metric=custom_distance_metric) G = nx.from_numpy_matrix(electrical_distance) communities = nx.algorithms.community.greedy_modularity_communities(G)

划完地盘就该处理内部矛盾了。每个集群内部玩的是交替更新策略——先假设虚拟平衡节点电压固定,求解光伏出力最优解;接着用这个解反推虚拟节点电压。这俩步骤就跟打乒乓球似的来回传递:

while not converge: # 固定虚拟节点电压求解光伏出力 pv_opt = solve_optimization(virtual_v) # 更新虚拟节点电压 virtual_v = calculate_virtual_v(pv_opt) # 检查收敛条件 error = np.linalg.norm(current_v - previous_v)

重点是这个优化问题得同时考虑有功损耗和光伏弃光量,目标函数里两个加权项互相较劲。这里用cvxpy建模特别方便,几行代码就能把二次规划问题安排得明明白白。

等各个小团体把自己收拾利索了,重头戏来了——群间协调。这里祭出分布式优化的神器ADMM(交替方向乘子法)。相邻集群只需要交换边界节点的电压和功率信息,跟对暗号似的:

def admm_update(cluster): # 本地优化 local_opt = solve_local_problem(neighbor_data) # 发送边界数据给邻居 send_to_neighbors(local_opt.boundary_info) # 接收邻居数据更新拉格朗日乘子 update_multipliers(received_data)

实测时看着各集群的残差逐渐收敛,就像看一群吵架的小朋友慢慢达成共识,整个过程充满治愈感。最终结果也够硬核——电压波动幅度压到0.95-1.05p.u.的安全范围,系统总有功损耗比传统方法降了15%,光伏弃光率更是砍到个位数。

要说这方法的精髓,就是把握住了"大事化小,小事化了"的哲学。既让每个集群快速响应本地变化,又通过全局协调避免各自为政。下次要是碰上光伏出力剧烈波动的场景,不妨试试这套组合拳,保准能让电压稳得跟开了电子稳定程序似的。

http://www.jsqmd.com/news/178257/

相关文章:

  • 直接上代码!咱们先搞明白怎么用坐标算曼哈顿距离。比如机器人坐标(3,5),任务点(7,2),距离就是|x1-x2|+|y1-y2|=4+3=7
  • 教育AI架构师必学的4个机器学习算法,从线性回归到Transformer
  • 根据以上内容,适合的标题可以是:“MATLAB仿真模拟光纤激光器中耗散孤子共振(DSR)的演化...
  • 深度学习计算机毕设之基于YOLOv8的人物目标检测和分割(跟踪)
  • 威纶通触摸屏宏指令:简易红绿灯控制程序实战教程
  • 深度学习计算机毕设之基于随机森林的贷款可能性预测系统实现
  • 半桥LLC谐振变换器仿真模型,采用变频控制电压闭环控制,完美跟踪给定电压,可实现软开关
  • Numpy 数组操作
  • CST仿真超表面吸波器:全流程编码分束涡旋聚焦极化转换录屏教学
  • 学长亲荐8个AI论文网站,助你搞定本科生毕业论文!
  • Highcharts 配置语法详解
  • 深度学习毕设项目:基于YOLOv8的人物目标检测和分割(跟踪)
  • 【课程设计/毕业设计】基于随机森林的贷款可能性预测系统实现
  • FOC无刷电机控制方案:原理图、PCB及C语言代码源
  • Linux 文件与目录管理
  • 斜拉桥建模这事儿,得从材料属性开始抠细节。钢混组合梁的弹性模量可不能随便填,得按实际配筋率换算等效刚度。先上段材料定义的硬核操作
  • OpenEnler等Linux系统中安装git工具的方法
  • Go 语言基础语法
  • 【毕业设计】基于随机森林的贷款可能性预测系统实现
  • 【课程设计/毕业设计】基于YOLOv8的人物目标检测和分割(跟踪)
  • 如何通过数据分析实现精准市场营销
  • Razor C# 循环
  • Nodejs-HardCore: 模块管理与I/O操作详解
  • fast.ai携手AI:对话式工程解锁编程新纪元
  • 【毕业设计】基于YOLOv8的人物目标检测和分割(跟踪)
  • 生成式数据增强方法全解析
  • 深度学习毕设选题推荐:基于随机森林的贷款可能性预测系统实现
  • vscode c++可以找到声明却无法自动补全
  • Day5if单,双,多分支语句详解及其使用案例
  • 11. 图像轮廓