(文章复现)基于主从博弈的售电商多元零售套餐设计与多级市场购电策略

参考文献:

[1]潘虹锦,高红均,杨艳红,等.基于主从博弈的售电商多元零售套餐设计与多级市场购电策略[J].中国电机工程学报,2022,42(13):4785-4800.

1.摘要

        随着电力市场改革的发展,如何制定吸引用户选择的多类型零售套餐成为提升售电商利润的研究重点。为此该文结合激励手段和价格信号为售电商设计了多类提升市场竞争力的零售套餐,并基于多时间尺度、多交易类型的市场背景为其提出购电策略。首先,搭建售电商与多元用户之间的主从博弈架构,分析售电商参与日前、月度、年度多级市场下与发电商、电力交易中心等主体之间的多种购电交易类型,设计峰谷分时电价、昼夜用电捆绑、峰谷惩罚补偿、阶梯递增电价、固定单一电价 5 种月度零售套餐。其次,分别以考虑风险因素的售电商效益最大化、多元用户自身综合满意度最大化为目标,构建主方购售电组合决策模型和从方零售套餐选择模型,并阐述主从博弈互动过程。接着,采用粒子群优化算法和 CPLEX 优化软件求解模型的纳什均衡解。最后,利用算例仿真验证主从博弈模型的迭代求解具有较好的收敛性,多级市场购电策略和多元零售套餐的提出有利于售电商提升自身利润的同时提高用户满意度,从而扩大市场份额。

2.原理介绍

2.1 多级市场购电与多元零售套餐设计

        售电商在参与电力市场竞争的过程中既要参与多级时间尺度市场进行购电,同时需要设计适应不同类型用户的多元零售套餐,以提升市场份额。在购电侧,本文重点考虑售电商参与日前、月度、年度多级市场,其中月度和年度市场往往签订双边合约,而期权、期货合同等双边交易类型可以有效控制市场风险,因此考虑售电商与发电商签订月度期权合同和年度期货合同。同时售电商还可以与其他售电商签订月度电力转让交易合同,以减轻双方的营业风险。在日前市场,售电商通过集中竞价交易的方式购电,主要用于填补中长期交易以外的电量差额,规避高额偏差考核费用的风险。在售电侧,本文主要设计多元零售套餐以适应具有不同用电特性的电力用户,提升用户满意度。售电商参与购售电交易的过程中,与代表需求侧利益的多个终端用户间存在主从博弈关系,构成一主多从的博弈格局。含售电商参与的主从博弈架构如图 1 所示。

2.2 主从博弈模型

2.2.1 主方(售电商)购售电组合决策模型

(1) 目标函数

        售电商通过参与年度、月度和日前多级时间尺度市场组合购电,以及基于价格和激励的需求响应设计多元零售套餐组合售电,提升自身利润,实现自身效益最大化。同时,由于日前市场电价的不确定性,售电商可能面临一定的风险损失,因此本文利用条件风险价值法对售电商进行风险评估,并以考虑风险因素的售电商效益最大化为目标,构建了基于需求响应的售电商购售电组合决策模型,数学表达如下:

(2)约束条件

        售电商在参与市场竞争制定购售电策略的过程中需要考虑购售电量平衡约束、期货与转让交易约束、日前市场交易约束、套餐价格约束和风险水平约束。

1)购售电量平衡约束

2)各交易机制的购电量约束。

3)套餐价格约束。

4)风险约束。

2.2.2 从方(用户)零售套餐选择模型

(1) 目标函数

        针对于需求侧终端用户,本文以不同套餐下的自身综合用电满意度最大为目标进行套餐选择和用电方式的决策,数学表达如下:

(2) 约束条件

用户在选择零售套餐以提升用电综合满意度的同时,需考虑用电量上下限约束:

2.2.3 主从博弈数学模型

主从博弈结构可由以下数学模型表达:

含售电商参与的主从博弈互动过程可描述为:售电商结合供给侧各主体制定的多级市场出清电价和用户初始负荷需求曲线,根据考虑风险因素的自身效益最大化原则,确定各级市场的购电量,并制定多元零售套餐的价格参数下发给用户;各用户结合自身用电特性,基于自身综合用电满意度最大化原则,确定所选套餐类型与各时段的用电量上报给售电商;售电商根据各用户上报数据,结合自身利润、风险重新制定各级市场购电量和多元零售套餐价格参数与用户进行二次博弈互动,如此进行迭代求解直到售电商、用户二者均达到自身目标的最值,且任何一方交易主体策略的改变不会导致另一方交易主体改变自身策略时,才能得到博弈互动的最优决策方案,即纳什均衡解。

2.3 主从博弈模型求解方法

        粒子群优化算法具有原理简单容易实现、收敛速度较快、需要调整的参数较少等特点,且有一定的记忆性和进化性,能完整保存迭代过程中所有粒子的局部最优解和全局最优解,对分析具体的博弈互动过程有一定的帮助。

        粒子群优化算法还可以根据算子更新个体历史最优和群体全局最优,对于本文而言能较好的模拟售电商与用户间博弈互动的过程,同时个体和群体的协同优化有助于快速寻找博弈的均衡解。因此本文考虑采用粒子群优化算法和 Matlab2016a平台下YALMIP工具箱中CPLEX12.6优化软件相结合的方法求解模型的纳什均衡解。对于主方售电商,既采用粒子群优化算法,以售电商利润为纳什适应度函数,求解迭代过程中的最优多元零售套餐参数,又采用CPLEX求解售电商最优多级市场购电策略;对于从方用户,则直接采用CPLEX求解用电策略,保证解的计算效率。模型求解步骤如图 4 所示。

3.编程思路

3.1参数和变量定义

3.2编程思路

根据对文献内容的解读,可以设计下面的编程思路:

步骤1:输入所需数据

        这一步比较简单,所需数据文中基本都已给出,按照表1的格式输入matlab中即可,没有给定的参数可以自己假设一个合理的数值。

步骤2定义上层套餐价格的决策变量

        这一步需要按照表2,初始化粒子群算法的决策变量,可以写成下面的形式:

        决策变量共有11个,可知粒子群算法的空间维度为11。此外,套餐价格还需满足一定约束条件,主要包括:

  1. 平时段电价和固定单一电价相等。
  2. 峰时段电价应高于谷时段电价。
  3. 白天电价应高于夜间电价。
  4. 峰谷惩罚补偿套餐的基准电价和固定单一电价相同。
  5. 阶梯递增电价套餐中第1档电价<第2档电价<第3档电价

相等的电价,可以通过减少决策变量来实现,其他的约束可以通过修复粒子的位置进行实现。减少后的决策变量如下:

其中决策变量共有9个,粒子群算法的空间维度为9。

步骤3:编写用户套餐优选子程序

        用户套餐优选子程序,就是需要根据售电商设定的套餐价格,确定使用户满意度最高的套餐选择方案。原文中提到,用户的决策变量只有Qit。但实际上计算用户用电成本时涉及到一些判断项目,需要引入中间变量,因此实际优化中决策变量的数目更多。

步骤4:编写售电商优化子程序

        售电商优化子程序就是通过参与年度、月度和日前多级时间尺度市场组合购电,以及基于价格和激励的需求响应设计多元零售套餐组合售电,提升自身利润,实现自身效益最大化。

步骤5:迭代求主从博弈最优解

        通过编写粒子群算法主程序,迭代求主从博弈的最优解。文献中并未解释粒子群算法的适应度函数是如何选取的,代码中使用了归一化的用户满意度和售电商利润作为粒子群算法适应度函数。同时设定了连续5次博弈结果误差不超过0.0001时,认为博弈结束,可以输出结果。

4.matlab代码

文件中共有6个m文件和2个mat文件,功能分别如下:

4.1 main_PSO.m

代码的主程序,运行即可得到优化结果。初始设定种群数为50,最大迭代次数为70,大约需要5小时得到结果。种群数和迭代次数可以调整。

4.2 fitnessfun.m

计算适应度函数。

4.3 main_price.m

使用蒙特卡洛模拟法得到典型电价场景。

4.4 repair_pop.m

对于不满足约束的粒子进行修复。

4.5 sub_retailer.m

售电商优化子程序。

4.6 sub_user.m

用户优化子程序。

5.代码运行结果

6.代码获取方式


(文章复现)基于主从博弈的售电商多元零售套餐设计与多级市场购电策略matlab代码资源-CSDN文库

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

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

相关文章

wms中对屏幕进行修改wm size设置屏幕宽高原理剖析

背景&#xff1a; 上面是正常屏幕1440x2960的屏幕大小&#xff0c;如果对display进行相关的修改&#xff0c;可以使用如下命令&#xff1a; adb shell wm size 1080x1920 得出如下的画面 明显看到差异就是屏幕上下有黑边了&#xff0c;那么下面就来调研这个wm size是怎么做的…

水库大坝安全监测系统建设方案

一、背景 随着自动化技术的进步&#xff0c;大部分水库大坝不同程度地实现了安全监测自动化。但仍存在以下问题&#xff1a; 1、重建轻管&#xff0c;重视安全监测系统建设&#xff0c;不够重视运行维护。 2、缺乏系统性、综合性及相关性的资料分析功能。 3、软件大多为数据…

harbor 只读模式修改

The system is in read only mode. Any modification is prohibited。 使用harbor时&#xff0c;做了一个定时清理任务&#xff0c;可能是因为任务失败或者某种原因导致的&#xff0c;系统一直处于只读模式&#xff0c;以为是要看一些表结构&#xff0c;然后去修改参数&#xf…

2.2数据的表示和运算--原码、反码、补码、移码

2.数据的表示和运算 2.2原码、反码、补码、移码 &#x1f53a;问题&#xff1a;真值与对应的原码、反码、补码变换规则&#xff1f; 答&#xff1a; 正数&#xff1a;原码、反码、补码都一样。 负数&#xff1a;原码不变、反码除符号位其它各位取反、补码在反码基础上再加…

结合视差补偿与3D数据处理的盲光场图像质量评价

摘要&#xff1a;与传统的2D图像相比&#xff0c;光场图像记录了场景中光线的强度和方向信息&#xff0c;在多媒体技术应用领域中占据着重要的地位。但在光场图像的产生、传输等处理过程中会不可避免地引入失真&#xff0c;影响用户视觉体验&#xff0c;因而需构建有效、准确的…

从 0 到 1 带你认识 Git 在个人和企业开发中的原理及应用

文章目录 学习目标Git 初识提出问题如何解决&#xff1f;—— 版本控制器注意事项 Git 安装Linux CentOSLinux UbuntuWindows Git 基本操作创建 Git 本地仓库配置 Git 认识工作区、暂存区、版本库添加文件——场景一查看 .git 文件 添加文件——场景二 修改文件版本回退 学习目…

浏览器渲染优--防抖节流懒加载

合理选择css选择器 相比于.content-title-span&#xff0c;使用.content .title span时&#xff0c;浏览器计算样式所要花费的时间更多。使用后面一种规则&#xff0c;浏览器必须遍历页面上所有 span 元素&#xff0c;先过滤掉祖先元素不是.title的&#xff0c;再过滤掉.title…

SpringBoot接口防抖(防重复提交)

TOC 啥是防抖 所谓防抖&#xff0c;一是防用户手抖&#xff0c;二是防网络抖动。在Web系统中&#xff0c;表单提交是一个非常常见的功能&#xff0c;如果不加控制&#xff0c;容易因为用户的误操作或网络延迟导致同一请求被发送多次&#xff0c;进而生成重复的数据记录。要针对…

学习小心意——python的构造方法和析构方法

构造方法和析构方法分别用于初始化对象的属性和释放类占有的资源 构造方法_init_() 语法格式如下&#xff1a; class 类名:def __init__(self, 参数1, 参数2, ...):# 初始化代码self.属性1 参数1self.属性2 参数2# ... 示例代码如下 class Student:def __init__(self):s…

如何利用CXL技术突破内存墙?-2

为了解决这些问题&#xff0c;业界正积极寻求新的技术和标准&#xff0c;比如Compute Express Link (CXL)&#xff0c;它旨在通过提供标准化的高速互连来提高内存带宽、降低延迟&#xff0c;并简化内存扩展的软件集成&#xff0c;从而有效地打破内存墙的限制。 通过使用CXL&am…

uniapp3步使用goeasy完成本地消息推送

1.注册登录goeasy&#xff0c;下载测试demo 2.替换demo中main.js中的key 3.打包一个H5&#xff0c;一个自定义基座。 h5发消息&#xff0c;app收消息&#xff0c;然后创建消息通知就好了。记得打开app的消息通知 demo很简单&#xff0c;demo都跑通了&#xff0c;在搬到自己项目…

NAVICAT从MYSQL链接到ORCAL数据库

1、工具-选线 2、环境&#xff0c;将原有的mysql的oci.dll文件改为oracle的 3、新建连接 填写对应数据

axios拦截器

定义 在客户端通过axios发送请求或响应被 then 或 catch 处理前拦截它们。顾名思义&#xff0c;在axios发送请求之前在请求数据内添加条件或者验证&#xff0c;并通过函数返回错误。在收到服务器的响应数据进行返回&#xff0c;遇到无法响应的情况在catch之前拦截错误信息进行…

迈普 多业务融合网关 send_order.cgi 前台RCE漏洞复现

0x01 产品简介 迈普多业务融合网关是迈普通信技术股份有限公司自主研发的多业务无线融合网关&#xff0c;拥有融合网关功能、精准流控、上网行为管理、智能选路…等强大功能&#xff0c;并支持对接迈普云平台&#xff0c;实现远程运维和集中管理&#xff0c;很好的满足了医疗/…

python API自动化(Jsonpath断言、接口关联及加密处理)

JsonPath应用及断言 重要 自动化要解决的核心问题 &#xff1a;进行自动测试-自动校验&#xff08;进行结果的校验 主要能够通过这个方式提取数据业务场景&#xff1a;断言 、接口关联 {key:value}网址&#xff1a;附&#xff1a;在线解析 JSONPath解析器 - 一个工具箱 - 好用…

2024年【N2观光车和观光列车司机】考试报名及N2观光车和观光列车司机最新解析

题库来源&#xff1a;安全生产模拟考试一点通公众号小程序 N2观光车和观光列车司机考试报名考前必练&#xff01;安全生产模拟考试一点通每个月更新N2观光车和观光列车司机最新解析题目及答案&#xff01;多做几遍&#xff0c;其实通过N2观光车和观光列车司机很简单。 1、【多…

使用system verilog进行流水灯和VGA打印字符

使用system verilog进行流水灯和VGA打印字符 目录 **使用system verilog进行流水灯和VGA打印字符****system verilog的优点****VGA程序编写**VGA 控制器模块字符生成模块顶层模块测试基准程序**效果** **流水灯程序设计****效果** **总结** system verilog的优点 面向对象编程…

618购物狂欢,好物榜单揭晓!一文了解那些值得入手的数码产品

随着618购物狂欢节的脚步渐近&#xff0c;想必各位消费者已经开始规划自己的购物清单了。毕竟&#xff0c;这样的年度大促是难得的省钱良机&#xff0c;许多平日里心仪已久的大牌商品和高价宝贝都在等待着这一天的优惠。错过了618&#xff0c;恐怕又要等上半年才能遇到如此诱人…

如何制作不限扫描次数的视频二维码?1分钟教程

不可否认的是&#xff0c;视频二维码正在各行各业发挥重要作用。不论是在线上宣传、线下活动&#xff0c;还是产品包装、展览展会上&#xff0c;只需要扫描视频二维码&#xff0c;就能在手机端获得专业的视频教程、查看品牌宣传视频、了解活动流程、快速获取关键信息等&#xf…