【电网技术复现】考虑实时市场联动的电力零售商鲁棒定价策略(Matlab代码实现)

news2024/11/18 15:45:19

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

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

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

📋📋📋本文目录如下:🎁🎁🎁

目录

💥1 概述

📚2 运行结果

🎉3 参考文献

🌈4 Matlab代码、数据、讲解


💥1 概述

文献来源:

摘要:电力零售商作为连接电力批发市场与零售市场的桥梁,是电力市场化改革中的重要主体,其经营效率直接决定了市场化改革的成败。然而电力零售商在运营过程中面临着用电量需求和价格双重不确定性的市场风险,亟需通过优化市场行为以保障自身的利益。为此提出了考虑实时市场联动的电力零售商鲁棒定价策略,以提升其抗风险能力。首先,考虑电力零售商日前定价、日前购电、实时能量管理、电动汽车用户需求响应和电力市场统一出清价格等因素,建立了考虑电动汽车不确定性的电力零售商鲁棒定价模型。然后,通过线性化方法将鲁棒定价模型转化为两阶段混合整数规划,并通过列与约束生成算法迭代求解。最后,在IEEE-33节点测试系统上进行了仿真,结果表明所提策略充分考虑了市场不确定性因素的影响,利用对冲机制降低了市场风险,提高了电力零售商的经营效率。

关键词:

电力现货市场;需求响应;零售定价;鲁棒优化;

随着电力市场化改革的深入进行,工商业目录销售电价退出了历史舞台[1],电力现货价格作为内

生变量,完全由市场供需平衡决定,这意味着市场主体将面临更大的价格波动风险。但另一方面,工商业用户全部进入电力市场也为售电公司等市场主体带来了新的机遇。售电公司是电力市场化改革过程中培育的重要市场主体[2],其本质是电力零售商,能够代表电力用户参与现货市场交易,连接了电力批发市场与零售市场。电力零售商的经营效率是反映市场活力的重要指标[3],因此如何提升电力零售商的收益成为了当下热门的研究课题。电力零售商的市场行为可以简单归结为:代表

用户参与日前和实时批发市场交易,按照零售电价与电力终端用户完成交易,并从中赚取差价[4]。因此零售商能够通过协调日前和实时的交易策略[5]以及制定合理的零售价格[6]优化自身的市场行为,具有提升自身经营效率的潜力。其中,日前和实时交易策略的协调是指电力零售商利用实时市场与日前市场的联动机制表现出的套期保值、套利或投机等市场行为[7]。

以电动汽车运营商为例,电力零售商典型的运营模式如图 1 所示。

📚2 运行结果

IEEE 33节点配电系统的网络参数如下所示:

IEEE 33节点配电系统共有32个配电变压器,32条支路,其电压等级为12.66kV,功率基准值为100MVA,最大基础负荷为3715+j2300kVA,节点0为平衡节点,其电压为1.05 p.u.,其拓扑结构如图1所示,线路与配变参数如表1所示。

表1 IEEE 33节点配电系统参数

节点i

节点 j

阻抗 (Ω)

负荷 (kVA)

节点i

节点j

阻抗 (Ω)

负荷 (kVA)

0

1

0.0922+j0.047

100+j60

16

17

0.3720+j0.5740

90+j40

1

2

0.4930+j0.2511

90+j40

1

18

0.1640+j0.1565

90+j40

2

3

0.3660+j0.1864

120+j80

18

19

1.5042+j1.3554

90+j40

3

4

0.3811+j0.1941

60+j30

19

20

0.4095+j0.4784

90+j40

4

5

0.8190+j0.7070

60+j20

20

21

0.7089+j0.9373

90+j40

5

6

0.1872+j0.6188

200+j100

2

22

0.4512+j0.3083

90+j50

6

7

0.7114+j0.2351

200+j100

22

23

0.8980+j0.7091

420+j200

7

8

1.0300+j0.7400

60+j20

23

24

0.8960+j0.7011

420+j200

8

9

1.0440+j0.7400

60+j20

5

25

0.2030+j0.1034

60+j25

9

10

0.1966+j0.0650

45+j30

25

26

0.2842+j0.1447

60+j25

10

11

0.3744+j0.1238

60+j35

26

27

1.0590+j0.9337

60+j20

11

12

1.4680+j1.1550

60+j35

27

28

0.8042+j0.7006

120+j70

12

13

0.5416+j0.7129

120+j80

28

29

0.5075+j0.2585

200+j600

13

14

0.5910+j0.5260

60+j10

29

30

0.9744+j0.9630

150+j70

14

15

0.7463+j0.5450

60+j20

30

31

0.3105+j0.3619

210+j100

15

16

1.2890+j1.7210

60+j20

31

32

0.3410+j0.5362

60+j40

 

表2 日前电力批发市场基础电价

时段

1

2

3

4

5

6

7

8

电价(元/kWh)

0.4148

0.3931

0.3875

0.3856

0.3900

0.4062

0.4664

0.5442

时段

9

10

11

12

13

14

15

16

电价(元/kWh)

0.5836

0.5718

0.5432

0.5324

0.5321

0.5122

0.5066

0.5028

时段

17

18

19

20

21

22

23

24

电价(元/kWh)

0.4933

0.5168

0.5572

0.5651

0.5442

0.5258

0.4911

0.4278

论文将1000个历史电动汽车数据聚类成10类,每类电动汽车的参数如表3所示。零售商平均每天服务的电动汽车数量为50,电动汽车的充放电效率均为0.95,电动汽车电池荷电状态的安全范围为20%至95%,假设电动汽车的期望电量均为95%的电池容量,置信度和均为0.99。

另外,算例中的最大日前购电量为500kWh,零售电价的下限为节点边际电价的0.8倍,零售电价的上限为节点边际电价的1.2倍,零售电价的平均值等于全天节点边际电价的平均值。储能系统的容量为1000kWh,最大充放电功率均为250kW,储能系统的充放电效率均为0.95,储能系统荷电状态的安全范围为20%至95%,在08:00时储能系统的电量为500kWh,最大实时购售电量均为500kWh。

表3 不同类型电动汽车的参数

电动汽车类型

最大充放电功率

(kW)

电池容量

(kWh)

初始电量

(kWh)

到达时间

离开时间

频数

EV1

6

40

15

17:00

次日08:00

105

EV2

6

32

16

09:00

17:00

132

EV3

3

24

8

18:00

次日07:00

89

EV4

6

24

12

20:00

次日06:00

97

EV5

6

40

25

08:00

16:00

101

EV6

6

40

16

19:00

次日07:00

175

EV7

3

24

8

17:00

次日08:00

35

EV8

10

40

20

09:00

17:00

88

EV9

10

40

18

18:00

次日08:00

112

EV10

10

64

25

18:00

次日07:00

66

假设场景生成和场景削减得到了10个实时节点边界电价场景,每个场景的电价曲线与概率如图4所示。

图4 实时节点边际电价场景与概率

考虑电动汽车慢充场景,即认为电动汽车的单位效用均为1元/kWh,而对时序不敏感。论文以第9个时段为仿真起点,对24个时间断面进行仿真,即仿真时间为08:00至次日08:00。

%确定性,全局优化,假设只有实时市场,确定实时节点边际电价
clear
clc
N=50;%电动汽车数量
%电价数据
load DLMP_data
a_data=[a_data(9:24);a_data(1:8)];b_data=[b_data(9:24);b_data(1:8)];
%电动汽车聚类数据(08:00-09:00为时段1)
EVdata=[6,40,15,10,24,105;6,32,16,2,9,132;3,24,8,11,23,89;6,24,12,13,22,97;6,40,25,1,8,101;6,40,16,12,23,175;3,24,8,10,24,35;10,40,20,2,8,88;10,40,18,11,24,112;10,64,25,11,23,66];
xiaoyong=ones(10,24);
ratio=EVdata(:,6)/1000;%经验分布
%电动汽车状态矩阵
X=zeros(24,10);Y=zeros(24,10);
for i=1:10
    X(EVdata(i,4):EVdata(i,5),i)=1;%电动汽车停泊矩阵
end
%建模
price_EV=sdpvar(24,1);KKTsystem=[];
pch=sdpvar(24,10);%电动汽车充电
pdis=sdpvar(24,10);%电动汽车放电
S_EV=sdpvar(24,10);%电动汽车电量状态
for n=1:10
    obj_DR=price_EV'*(pch(:,n)-pdis(:,n))-xiaoyong(n,:)*(0.95*pch(:,n)-pdis(:,n)/0.95);%电动汽车目标函数
    C_EV=[0<=pch(:,n)<=ones(24,1)*EVdata(n,1).*X(:,n),0<=pdis(:,n)<=ones(24,1)*EVdata(n,1).*X(:,n),
        0.2*ones(24,1)*EVdata(n,2).*X(:,n)<=S_EV(:,n)<=0.95*ones(24,1)*EVdata(n,2).*X(:,n)];%电动汽车边界约束条件
    C_EV=[C_EV,S_EV(EVdata(n,4)+1:EVdata(n,5),n)==S_EV(EVdata(n,4):EVdata(n,5)-1,n)+0.95*pch(EVdata(n,4)+1:EVdata(n,5),n)-pdis(EVdata(n,4)+1:EVdata(n,5),n)/0.95,
        S_EV(EVdata(n,4),n)==EVdata(n,3)+0.95*pch(EVdata(n,4),n)-pdis(EVdata(n,4),n)/0.95,
        S_EV(EVdata(n,5),n)==0.95*EVdata(n,2)];%电动汽车电量约束条件
    ops=sdpsettings('kkt.dualbound',0);%不进行对偶边界估计
    [KKTsystem_single,details]=kkt(C_EV,obj_DR,price_EV,ops);%将电动汽车问题转化为KKT系统
    KKTsystem=[KKTsystem,KKTsystem_single];%合成KKT系统
    obj_EV(n)=xiaoyong(n,:)*(0.95*pch(:,n)-pdis(:,n)/0.95)-(details.b'*details.dual+details.f'*details.dualeq);
end
Pch=sdpvar(24,1);%储能系统充电
Pdis=sdpvar(24,1);%储能系统放电
S_ESS=sdpvar(24,1);%储能系统电量状态
Ps=sdpvar(24,1);%充电站与电网的交换功率
price_E=a_data.*Ps+b_data;%节点边际电价
C_price=[mean(price_EV)<=mean(price_E),0.8*price_E<=price_EV<=1.2*price_E];%零售电价约束条件
C_ESS=[0<=Pch<=250,0<=Pdis<=250,200<=S_ESS<=950,
    S_ESS(1,:)==500+0.95*Pch(1,:)-Pdis(1,:)/0.95,
    S_ESS(2:24,:)==S_ESS(1:23,:)+0.95*Pch(2:24,:)-Pdis(2:24,:)/0.95,
    S_ESS(24,:)==500];%储能系统约束条件
C_CS=[-1000<=Ps<=1000,Ps+Pdis+N*pdis*ratio==Pch+N*pch*ratio];%零售商约束条件
Constraints=[C_price,C_ESS,C_CS,KKTsystem];%总的约束条件
obj=-price_E'*Ps+N*obj_EV*ratio
result=optimize(Constraints,-obj,ops)%求解最大化问题
Pch=double(Pch);Pdis=double(Pdis);Ps=double(Ps);price_E=double(price_E);price_EV=double(price_EV);
price_E=[price_E(17:24);price_E(1:16)];

🎉3 参考文献

部分理论来源于网络,如有侵权请联系删除。

[1]詹祥澎,杨军,王昕妍等.考虑实时市场联动的电力零售商鲁棒定价策略[J].电网技术,2022,46(06):2141-2153.DOI:10.13335/j.1000-3673.pst.2021.2157.

🌈4 Matlab代码、数据、讲解

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

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

相关文章

动画制作选择Blender还是Maya

Blender和Maya是两种最广泛使用的 3D 建模和动画应用程序。许多经验丰富的用户表示&#xff0c;Blender 在雕刻工具方面远远领先于 Maya&#xff0c;并且在 3D 建模方面达到了相同的质量水平。对于刚接触动画行业的人来说&#xff0c;您可能会问“我应该使用 Blender 还是 Maya…

二、数据结构10:堆 模板题+算法模板(堆排序,模拟堆)

文章目录 算法模板堆题目代码模板堆的原理down操作理解&#xff1a;up操作理解建堆操作关于heap_swap中存的映射数组理解&#xff08;模拟堆题目中用到&#xff09; 模板题堆排序原题链接题目思路题解 模拟堆原题链接题目思路题解 算法模板 堆题目代码模板 // h[N]存储堆中的…

【啥都生】分类项目中的模型搭建代码解析

def build_model(cfg):if isinstance(cfg, list):modules [eval(cfg_.pop("type"))(**cfg_) for cfg_ in cfg]return Sequential(*modules)else:return eval(cfg.pop("type"))(**cfg)b站up啥都生维护的分类项目 这段代码的功能是完成模型搭建&#xff0c;…

Cesium态势标绘专题-文本标注(标绘+编辑)

标绘专题介绍:态势标绘专题介绍_总要学点什么的博客-CSDN博客 入口文件:Cesium态势标绘专题-入口_总要学点什么的博客-CSDN博客 辅助文件:Cesium态势标绘专题-辅助文件_总要学点什么的博客-CSDN博客 本专题没有废话,只有代码,代码中涉及到的引入文件方法,从上面三个链…

Vue模版语法

先看以下例题是回顾vue的用法 <body><div id"box">{{myname}} - {{myage}}</div><script>var vm new Vue({el:"#box",data:{myname:"lyx",myage:26}})</script></body> 运行结果如下&#xff1a;vue对象被…

什么是熵?

熵&#xff08;Entropy&#xff09;是一个重要的概念&#xff0c;最初出现在热力学领域&#xff0c;用于描述系统的混乱程度或不确定性。熵也被广泛应用于信息理论、统计学和计算机科学等领域。通常来讲&#xff0c;熵&#xff0c;是对混乱程度、不确定程度的度量。熵越大&…

【测试学习三】软件测试的生命周期 BUG的相关知识

目录 一、软件测试的生命周期&#xff08;重要&#xff09; &#x1f351;1、软件的生命周期&#xff1f; &#x1f351;2、软件测试的生命周期&#xff1f; 二、关于BUG &#x1f351;1、如何描述与定义一个BUG&#xff1f;&#xff08;了解&#xff09; &#x1f351;2…

分时电价调整后上海储能项目投资回收期分析-安科瑞黄安南

2022年12月16日&#xff0c;上海市发改委发布《关于进一步完善我市分时电价机制有关事项的通知》(沪发改价管〔2022〕50号)。通知明确上海分时电价机制&#xff0c;一般工商业及其他两部制、大工业两部制用电夏季&#xff08;7、8、9月&#xff09;和冬季&#xff08;1、12月&a…

Tomcat安装与管理

文章目录 Tomcat安装及管理Tomcat gz包安装&#xff1a;JDK安装&#xff1a;Tomcat安装&#xff1a;修改配置文件&#xff08;如下&#xff09;&#xff1a;服务启动配置&#xff1a; Tomcat-管理(部署jpress)&#xff1a;修改允许访问的主机修改允许管理APP的主机进入管理&…

实用干货!一文读懂Salesforce中6种数据关系类型!

Salesforce中对象之间的数据关系可能是一个棘手的话题。对于创建自定义对象的业务场景&#xff0c;需要决定使用哪些关系类型来扩展Salesforce数据模型。 01 查找关系 查找关系&#xff08;Lookup Relationships&#xff09;是一种松散耦合&#xff08;loosely coupled&…

【SQL】-【计算两个varchar类型的timestamp的毫秒差】

背景 TRANSTAMP3、TRANSTAMP2在Oracle数据库中的类型为varchar&#xff0c;但实际保存的值是时间戳timestamp类型&#xff0c;现在要计算二者的毫秒差 Oracle或MySQL extract(second from (to_timestamp(TRANSTAMP3,yyyy-mm-dd hh24:mi:ss.ff) - to_timestamp(TRANSTAMP2,yyy…

盘点那些不想骑车的原因和借口。

在自行车骑行的热潮中&#xff0c;我们都会找到各种千奇百怪的借口来解释我们为什么不想骑。本文将结合当前热点话题和趋势&#xff0c;从心理学、文化等多个角度&#xff0c;深入探讨这些借口背后的原因。 首先&#xff0c;我们不能忽视的是&#xff0c;骑行是一项需要耐力和毅…

web集群学习

目录 简述静态网页和动态网页的区别 Webl.0 和 Web2.0 的区别 安装tomcat8&#xff0c;配置服务启动脚本&#xff0c;部署jpress应用 1、安装jdk文件&#xff1a; 2、下载tomcat的二进制包&#xff1a; 3、创建用户组和用户 创建Tomcat的登录服务脚本 此处创建的登录服务…

代码随想录算法训练营第三十二天 | 全是没接触过的知识点,要复习

以下题目多次复习 200 岛屿数量未看解答自己编写的青春版重点本题的解题思路&#xff0c;也是之前没有接触过的&#xff0c;四字总结&#xff1a;学会感染&#xff01; 题解的代码日后复习重新编写 32 最长有效括号未看解答自己编写的青春版重点这道题&#xff0c;动态规划的思…

19-2.vuex

目录 1 安装 2 挂载 2.1 vue2写法 2.2 vue3写法 3 state 3.1 声明数据 3.2 使用数据 3.3 处理数据 4 mutations 4.1 基本使用 4.2 传递参数 4.3 mutations中不能写异步的代码 5 actions 5.1 基本使用 5.2 传递参数 6 getters Vuex是做全局数据…

CAS原理解析

CAS是一种乐观锁机制&#xff0c;一种比较并交换的过程和理念&#xff0c;用来解决线程安全问题&#xff0c;具体来讲就是对共享变量值的安全更新机制。能够保证原子、可见、一致性。这种交换过程是在Unsafe类中实现。 从一段简单的代码开始来对源码做分析 public static void…

坚鹏:常德市银行业协会BLM银行数字化转型战略培训圆满结束

常德市银行业协会BLM银行数字化转型战略培训圆满结束 在数字化转型背景下&#xff0c;常德市银行业协会为了落实监管政策《关于银行业保险业数字化转型的指导意见》&#xff0c;充分认识到学习银行银行数字化转型战略的价值和重要性&#xff0c;特别举办《2023年数字化转型战略…

06 Ubuntu22.04上的miniconda3安装、深度学习常用环境配置

下载脚本 我依然是在清华镜像当中寻找的脚本。这里找脚本真的十分方便&#xff0c;我十分推荐。 wget https://mirrors.tuna.tsinghua.edu.cn/anaconda/miniconda/Miniconda3-latest-Linux-x86_64.sh 下载十分快速&#xff0c;10秒解决问题 运行miniconda3安装脚本 赋予执…

邀请媒体现场报道,有哪些作用?

传媒如春雨&#xff0c;润物细无声&#xff0c;大家好&#xff0c;我是51媒体网胡老师。 邀请媒体现场报道活动具有多种重要作用和意义&#xff0c;可以为你的活动带来广泛的曝光和正面影响。以下是一些邀请媒体现场报道的作用和意义&#xff1a; 1. 增加活动曝光度&#xff…

Android 自定义按钮(可滑动、点击)

按钮图片素材 https://download.csdn.net/download/Lan_Se_Tian_Ma/88151085 px 和 dp 转换工具类&#xff08;Java&#xff09; // px 和 dp 转换工具类 public class DensityUtil {/*** 根据手机的分辨率从 dip 的单位 转成为 px(像素)*/public static int dip2px(Conte…