
简介面向风光综合消纳的电力系统广域储能容量优化配置研究是一份电力系统储能规划方向的学术论文PDF内容聚焦大规模风电、光伏接入场景下的广域储能选址定容问题适合电力系统规划、新能源消纳、储能技术方向的科研人员和工程技术人员阅读参考。论文采用K-means聚类方法从风电、光伏出力与负荷的时序数据中抽取典型日场景以年弃风成本、弃光成本与储能等效年投资成本三者之和最小为优化目标构建混合整数线性规划模型并结合智能优化算法求解同时以宁夏电网实际运行数据验证模型合理性对电网储能规划与风光消纳提升具有直接借鉴意义。整个资源仅含1个PDF文件大小约1.46MB内容涵盖引言、模型构建、算例验证与结论等完整章节目前已有115人学习/下载适合作为储能优化配置领域课题研究的参考范文或建模基础。1. 广域储能优化为什么必须走“场景聚类 分层求解”这条路针对含大规模风光接入的电力系统弃风、弃光已经不单是调度问题更是规划问题。储能放在哪些节点、配多大功率和容量直接决定新能源消纳率和投资回报这就是广域储能容量优化配置要回答的核心问题。可如果直接对着全年 8760 小时的风光负荷时序数据做混合整数规划变量规模会迅速膨胀普通服务器几小时都解不动。这篇研究的思路是先用 K-means 聚类把全年运行方式压缩成少数典型日场景再把电网按行政区域分解成多个分区滚动优化最终把储能投资最小化和风光消纳最大化统一进一个目标函数。适合做电网规划、储能项目前期研究的人参考也适合刚接触储能选址定容的工程师看清模型边界。2. K-means 时序场景聚类从 8760 小时到典型日场景集2.1 为什么典型日场景集要同时包含风、光、负荷三通道储能配置不能只看平均出力而要看风电、光伏和负荷在时序上的错配程度。深夜风电大发而负荷处于低谷光伏午间出力高峰又常落在负荷爬坡之前这些反调峰特性才是弃风弃光的直接来源。如果只对风电出力聚类、对负荷取平均会抹掉峰谷错位储能容量算出来必然偏小。所以这里采用多维时序样本每日以 15 分钟为一个采样点得到 96 点数据每组样本同时包含负荷序列、风电出力序列和光伏出力序列三通道作为一个整体参与聚类。这样得到的典型日场景集保留了风、光、负荷之间的时段耦合关系后续优化模型在场景上的约束才有实际意义。2.2 改进 K-means 聚类与 CH 指标定 k经典 K-means 需要预先指定聚类数 k而 k 直接决定场景集的信息保留程度。k 太小场景差异被平滑掉储能容量失去代表性k 太大典型场景数量多混合整数线性规划模型规模成倍增加。研究里采用 CHCalinski-Harabasz指标作为聚类有效性判据CH 值越大说明类内紧凑、类间分离当 CH 值随 k 增大出现峰值后回落峰值位置就是合理取值。中卫地区在 k3 时 CH 指标最大因此全年 365 个样本被压缩成 3 个典型场景。改进 K-means 通常指对初始聚类中心做优化避免随机初始化导致局部最优。常见做法是先用 k-means 选定初始质心再执行标准迭代也有用多次随机重启取 CH 指标最优的做法。对电力时序数据我会先做 z-score 归一化否则风电出力范围远大于负荷或光伏时距离度量会被量纲最大的通道主导。提示固定随机种子再跑聚类。同一份数据如果每次聚类结果漂移后面 MILP 的储能容量可能差几十兆瓦。2.3 MATLAB 中的聚类实现与参数说明在 MATLAB R2017b 平台上标准 K-means 可以直接调用但需要把三通道数据改造成二维样本矩阵每一行是一个样本日列数为 96 乘以 3。代码如下% 样本构建wind、pv、load均为365x96矩阵 X [wind, pv, load]; % 365行288列三通道时序拼接 [Xn, mu, sigma] zscore(X); % 各列标准化消除量纲差异 % 评估k2到8的CH指标 eva evalclusters(Xn, kmeans, CalinskiHarabasz, ... KList, 2:8, Distance, sqeuclidean); k_opt eva.OptimalK; % 取CH指标最大值对应的k % 用最优k做正式聚类20次重复避免局部最优 rng(2020); [cluster_idx, centroid, sumd] kmeans(Xn, k_opt, ... Distance, sqeuclidean, Replicates, 20, ... MaxIter, 300, Display, iter);代码逻辑说明X把风、光、负荷三个通道横向拼接每个样本日的 96 个点按顺序排成 288 维向量这样聚类时能够保留时段先后关系而不是把三通道单独聚类。zscore按列标准化避免风电功率数值范围压制负荷和光伏通道。evalclusters计算 CH 指标Replicates设为 20 表示随机初始化 20 次、取组内误差最小的结果这对改善局部最优很关键。Distance用平方欧氏距离符合 K-means 默认假设。聚类完成后cluster_idx给出每个样本日归属的典型场景编号centroid就是典型场景的风光负荷曲线除以mu和sigma恢复原始量纲后即可送入优化模型。实际工程里每日采样点、样本日数、聚类数 k、归一化方式这几个参数应当写在规划程序的配置头文件里方便复现和调整。k 的搜索范围不应超过 10因为典型场景过多会直接拖垮后续 MILP 求解这也是“以计算效率换精度”的典型取舍。3. 混合整数线性规划模型目标函数与约束的完整拆解3.1 目标函数弃风弃光成本与储能等效年投资成本之和最小整个优化模型的核心是把经济性和消纳水平统一到一个目标函数里而不是分别算两本账。目标函数包含三项储能等效年投资成本、年弃风成本、年弃光成本。储能投资并非一次性支出而是通过资金回收系数折算到每年相当于把设备采购、安装、运维按贴现率分摊到寿命期内的每一年这样才能和当年弃风弃光成本放在同一个时间维度上比较。资金回收系数的本质是等额年金换算贴现率越高每年分摊越重。用公式表示就是f f_ess f_wind f_pv。其中储能年投资成本是资金回收系数乘以节点 k 上固定安装成本和可变功率成本之和弃风弃光成本则是对所有典型场景、所有电站、所有时段的弃电量求和乘以对应电价。注意场景要乘上该场景包含的样本数 days因为不同场景出现概率不同经济成本是全年尺度。下表给出模型主要符号的含义方便对照推导符号含义类型x_ess,k节点 k 是否配置储能的 0-1 决策变量整数P_ess,k节点 k 配置的储能功率MW连续E_ess,k节点 k 配置的储能容量MWh连续P_wind,t,s场景 s 时段 t 风电实际出力连续P_pv,t,s场景 s 时段 t 光伏实际出力连续P_gen,t,s火电机组出力连续θ_i,t,s节点电压相角连续c_wind, c_pv单位弃风、弃光电价常数从这里能看出x_ess,k 是“装不装”的选址变量P_ess,k 和 E_ess,k 是“装多大”的定容变量三者在约束中相互绑定。求解结果既给储能位置又给每个位置的功率和容量这才算完整的广域储能容量优化配置输出。3.2 关键约束群功率平衡、储能充放电、旋转备用等式约束里最重要的是节点功率平衡线路注入功率加上火电、风电、光伏出力减去储能充电功率等于负荷。这里储能充电作为负荷项处理放电则通过 P_ess 的正负号约定来表达。直流潮流方程把线路有功与两端相角差用电纳关联起来平衡节点相角取 0这是全模型的基础。不等式约束里储能约束最需要仔细处理。储能运行时充电和放电都受额定功率限制所以 P_ess,k,t,s 被限制在 [-P_ess,k, P_ess,k] 区间负值表示充电正值表示放电。额定功率本身又受上下限约束且只有安装了储能的节点x_ess,k1才有非零功率这是通过大 M 法或乘积形式实现的。存储能量 E_ess,k,t,s 有上下界首末时段能量要相等或用递推式衔接避免储能“一天结束后还剩不少能量”这种不物理的状态出现在模型边界。旋转备用约束容易被忽略但它决定多装储能是否挤占系统调峰能力。系统要求火电最大出力加风电出力减储能充电功率后仍要大于等于负荷加备用需求。这条约束保证了低谷时段储能充电不会把系统备用吃掉实际调试时经常因为这条约束导致储能配置功率上不去需要对备用需求 R_t,s 按场景比例放宽。3.3 决策变量与 GUROBI 求解流程这个模型是典型的混合整数线性规划求解器可以直接处理。研究里在 MATLAB 中调用 GUROBI用 intlinprog 或 gurobi 接口都行关键是组织好矩阵形式。GUROBI 处理 0-1 变量采用分支定界加割平面对含几百个整数变量的储能选址问题是可接受的。在 MATLAB 中的调用框架大致如下% model为结构体包含目标系数、约束矩阵、变量类型定义 model.A sparse([A_balance; A_line; A_ess; A_reserve]); % 各约束矩阵纵向拼接 model.obj [cost_inv; cost_wind; cost_pv]; % 目标函数系数与变量顺序一致 model.rhs [rhs_balance; rhs_line; rhs_ess; rhs_reserve]; model.sense [repmat(, n_balance, 1); repmat(, n_line, 1); ... repmat(, n_ess, 1); repmat(, n_reserve, 1)]; model.vtype vtype_list; % 储能位置变量为B其余为C model.lb lb; model.ub ub; params.outputflag 1; % 输出求解日志 params.mipgap 0.01; % 1%最优性间隙工程上足够 result gurobi(model, params);参数说明model.A是稀疏矩阵每一行对应一条约束变量排序必须全局统一否则约束会对错列。model.obj与变量顺序完全对应顺序错位会导致储能容量配到错误节点。model.vtype中 0-1 变量用B连续变量用C这个声明比任何其他设置都重要。mipgap设为 0.01 可以显著缩短求解时间实际电网规划中追求 1% 以内的相对间隙已经满足工程精度不必强求整数最优解。求解完成后result.x按变量顺序给出储能选址和功率再从日志里提取 objective 值和 gap 值判断是否需要调整模型或放宽约束。4. 多区域分解协调广域储能配置如何从整网模型落地4.1 为什么整网直接求解不现实要按行政区域分区宁夏电网覆盖 6 个地市主网涵盖 750 kV、330 kV、220 kV 三个电压等级新能源装机突破 1.8 万 MW。如果所有节点、线路、机组和候选储能站址放进一个 MILP整数变量和连续变量数量成倍增加而且输电约束和机组爬坡约束在时间序列上强耦合分支定界树会迅速膨胀。分解的思路是拆成 N 个子问题各分区独立优化再用边界条件协调。按行政区域划分的另一个好处是工程可解释性。储能规划最终要落到变电站和土地资源按地市分区后各分区内部网架结构相对清晰新能源场站可以按地区合并统计避免对单个风电场逐台建模。相比按电气距离或社团结构分区按行政区域划分不会因网架改造而失效电网公司也容易接收入库。4.2 多区域迭代求解流程与边界节点处理分区后每个分区与原网架有联络线。论文中的做法是把线路 ij 的边界节点 j 同时划归两个区域区域 1 计算时把节点 j 的电压相角作为常数这样区域 1 的潮流约束就闭合了区域 2 同理在自身计算时把区域 1 给的边界相角固定住。两轮之间用松弛迭代不断更新直到边界条件不再变化。具体滚动优化流程是先做全网基态潮流计算得到初始边界条件然后按分区编号逐区优化第 i 分区优化时已优化分区1 到 i-1的边界节点取上次优化结果尚未优化的分区i1 到 N取基态潮流或上次结果每一轮扫描完所有分区后检查每个分区目标函数相对上次变化的绝对值是否小于给定精度若不满足则继续下一轮满足则输出全网配置结果。这个“单区域优化—区域间滚动—广域优化结果”的模式本质上是一种 Gauss-Seidel 型分解算法。MATLAB 中可以用 while 循环实现伪代码如下% 初始化基态潮流结果作为边界相角初值 theta_boundary base_theta; delta inf; max_round 20; round 0; while delta precision round max_round round round 1; obj_prev obj_total; % 按分区编号顺序优化 for i 1:N % 构造分区i的子模型固定边界相角为theta_boundary sub_model build_sub_model(i, theta_boundary); result_i gurobi(sub_model, params); % 更新分区i的边界节点相角 theta_boundary update_boundary(theta_boundary, result_i, i); end % 计算所有分区目标函数之和 obj_total sum_region_objective(); % 收敛判据目标函数变化量小于阈值 delta abs(obj_total - obj_prev); end这里需要说明两点。第一build_sub_model构建的只是该分区的约束矩阵边界节点的相角作为常数项移到等式右边第二update_boundary只更新与当前分区相连的联络线边界节点不要全量覆盖。收敛精度我一般取目标函数相对变化量小于 1e-4太严会导致迭代次数过多且没有实际意义。整个流程的计算瓶颈是反复调用 GUROBI 时的模型重建开销可以在循环外预分配变量索引避免每次都重新查矩阵维度。4.3 分区粒度选择的边界约束分区不是越细越好。分区过多边界节点数量大迭代协调次数增加收敛可能变慢分区太少每个子问题规模仍然很大。对省级电网按地市级行政区划成 6 到 10 个区是比较常见的做法。另外每个分区内的新能源和常规电源配比要相对均衡如果某分区几乎全是风电场而没有负荷支撑储能配置结果会显著偏高影响全局最优性。遇到这种情况可以把该分区与相邻负荷中心合并处理而不是机械按行政区切。5. 宁夏电网算例从成本敏感性到配置结果的验证5.1 典型场景概率与成本系数拐点中卫地区最佳聚类数为 3三个典型场景概率分别为 0.368、0.421、0.211三者和为 1说明全年 365 天都被完整覆盖。这些概率作为场景权重进入目标函数对应公式中的天数参数。储能成本系数 γ_ess 从 1.0 往下调时弃风弃光成本曲线在 0.7 附近出现明显拐点大于 0.7 时储能配置总功率很低小于 0.7 时总功率迅速上升弃风弃光成本显著下降。这说明储能单位成本是决定配置规模的触发条件规划时应按成本上下浮动 30% 给出方案区间。5.2 广域配置结果与关键经济指标成本系数 0.7 对应的配置结果分散在宁夏电网各分区福祥 300 MW、步桥 280 MW、月牙湖 300 MW、平吉堡 300 MW、枣园 260 MW、中卫 340 MW、宁安 300 MW、启明 400 MW、固原 300 MW。选址不是集中在某一新能源富集区而是呈广域分散布局这正是广域储能与场站侧储能的区别前者通过全网调峰改善消纳后者只能就地平滑波动。安装地点配置容量/MW安装地点配置容量/MW福祥300中卫340步桥280宁安300月牙湖300启明400平吉堡300固原300枣园260--配套经济性指标储能成本 27.8 亿元年减少弃风弃光成本 2.68 亿元弃风率 12.25%弃光率 7.83%。计算投资回收期时不能简单用 27.8 除以 2.68因为减少弃风弃光只是收益的一部分还要考虑储能参与调峰、备用等辅助服务收益以及循环寿命衰减带来的置换成本。5.3 一个验证技巧用时序回代检查潮流越限拿到储能配置结果后把配置参数带回基态潮流对三种典型场景各 96 个时段做时序回代计算。重点检查储能充电时段是否引起线路反向过载放电时段是否让关键断面潮流越限。如果配置前后线路潮流变化不大说明储能功率偏小约束没有充分起作用如果某个边界节点电压相角连续两轮优化结果相差超过 0.01 弧度说明分区收敛精度设置过严可以放宽到 0.05 弧度。这个闭环验证正是把广域储能优化配置从理论模型落成可交付规划方案的关键一步。本文还有配套的精品资源点击获取