基于纳什博弈的多微网主体电热双层共享策略(matlab代码)

目录

​1 主要内容

2 部分代码

3 程序结果

4 下载链接


​1 主要内容

该程序复现《Multi-Micro-Grid Main Body Electric Heating Double-Layer Sharing Strategy Based on Nash Game》模型,主要做的是构建基于纳什博弈的多微网主体电热双层共享模型,将其分解为收益最大化子问题和收益再分配子问题。在收益最大化子问题中,考虑含碳配额和阶梯碳交易的运行成本最低为目标,采用交替方向乘子法进行分布式求解以保护隐私;在收益再分配子问题中,通过构建分时段、分能源类型的非对称能量映射贡献度函 数,实现收益合理再分配。下载链接包括中文版文献资料和代码,注释清晰,方便学习!

  • 多微网主体P2P电热双层模型

图中,不同颜色线条代表不同的能源形式,图例中依次代表电能流、热能流、数据流、配网电能流、天然气能流,各个微网主体即可实现内部能量交互和供给,也可通过外部联络实现各个主体间的能量交互。

基于低碳改造的微网独立运行模型

其对应的中文版本图如下:

本文研究考虑热电联产的电热气多能流协同的微网,由于微网中热电机组运行会产生大量二氧化碳,不符合低碳要求,因此本文对其进行低碳改造。引入了烟气分流、储液式碳捕集 与存储和甲烷化装置等,完成 P2G 的三个阶段改造,并考虑与外界电网、气网交互和微网间能源共享,形成引入P2G 和能源共享的低碳微网架构。

ADMM算法求解纳什均衡解

纳什博弈是一种合作博弈,常用于应对市场竞争,它是寻求最优策略的方法,
当每个博弈者的平衡策略都达到了自己期望收益的最大值时,其选择的策略是最优的,那么这个组合就被定义为纳什均衡,也被称为最优策略。因此,其标准形式是乘积的最大值作为均衡解。但是,在实际模型应用中,模型非线性导致无法直接求解, 因此需要借助于分布式算法,本文采用的即是ADMM算法,具体步骤为:

该ADMM算法是常规算法,再此不再赘述。
  • 文章亮点
简单来说,本文的亮点在于引入三阶段低碳化改造模型,这个不是简单的一部分的创新,这种细化设置提升了整个模型的深度,大家可以注意一下近几年的文章,模型细化创新逐步在赶超方法应用创新,对方法创新没有思路的同学可以考虑转型该方向,对整个能量流过程的深入思考同样可以成为核心竞争力。

部分代码

C=[];       
%微网的电/热负荷需求响应部分            
for t=1:24               C=[C,                     L_e(t)==L_e0(t)-P_e_cut(t)-P_e_tran(t), %微网的电负荷功率平衡约束                L_h(t)==L_h0(t)-P_h_DR(t), %微网的热负荷功率平衡约束            0 <=P_e_cut(t)<= 0.05*L_e0(t), %微网的可削减电功率上下限约束               -0.1*L_e0(t)<=P_e_tran(t) <= 0.1*L_e0(t), %微网的可转移电功率上下限约束              -0.1*L_h0(t)<=P_h_DR(t)<=0.1*L_h0(t), %微网的可削减热功率上下限约束                ];
end
C=[C,sum(P_e_tran)==0,]; %转移的电负荷总量为0约束  
C=[C,sum(P_h_DR  )==0,]; %转移的热负荷总量为0约束  
%微网的储电设备约束部分             
%储能电站荷电状态连续性约束               
C=[C,E_bat(1)== 1000+0.95*P_batc(1)-P_batd(1)/0.96,]; %1时段约束           
for t=2:24          C=[C,E_bat(t)==E_bat(t-1)+0.95*P_batc(t)-P_batd(t)/0.96,]; %储电设备容量变化约束              
end               
%储能容量大小约束
for t=1:24C=[C,500<=E_bat(t)<=2500,];  %储电量上下限约束
end
%始末状态守恒
C=[C,E_bat(24)==1000,];
%储能电站的充放电功率约束,Big-M法进行线性化处理
M=1000; %这里的M是个很大的数
for t=1:24C=[C,0<=P_batc(t)<=400,0<=P_batc(t)<=U_abs(t)*M,     0<=P_batd(t)<=400,      0<=P_batd(t)<=U_relea(t)*M,U_abs(t)+U_relea(t)<=1,];
end
%带P2G和CCS的CHP运行约束         
C=[C,       0-P_e3-P_e2<=P_e1<=6000-P_e3-P_e2 , %CHP的供电功率约束0<=P_e2,P_e2<=1200, %CCS设备的耗电功率约束0<=P_e3,P_e3<=1500, %P2G设备的耗电功率约束0<=P_e1,P_e1<=6000, %CHP的供电功率上下限约束,公式(11)    0<=P_e1, %CHP的供电功率非负性约束max((0-0.15*P_h-P_e3-P_e2),(0.85*(P_h)-P_e3-P_e2))<=P_e1<=6000-0.20*P_h-P_e3-P_e2, %CHP的热电耦合约束    式(13)max((0-0.15*P_h),(0.85*(P_h-50)-600-1200))<=P_e1<=6000-0.20*P_h-0-0, %考虑P2G和CCS后的CHP的热电耦合约束       式(15)(0.55/(1+0.5*1.02))*max((0-0.15*P_h-P_e1),(0.85*(P_h-50)-P_e1))<=P_gs<=(0.55/(1+0.5*1.02))*(6000-0.20*P_h-P_e1), %产气功率上下限约束  式(17)-1000<=(P_e1(2:24)+P_e3(2:24)+P_e2(2:24))-(P_e1(1:23)+P_e3(1:23)+P_e2(1:23))<=1000, %CHP的爬坡约束   P_h_GT == P_h;P_gs==0.55*P_e3, %P2G产气功率与耗电量约束  式(2)C_ccs==P_e2/0.55, %CCS的耗电量与碳捕集量约束   式(4)C_p2g==1.02*P_e3, %P2G运行所需要的二氧化碳量与电功率约束  式(3)

程序结果

4 下载链接

见下方联系方式 

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

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

相关文章

java项目之木里风景文化管理平台(ssm+vue)

项目简介 木里风景文化管理平台实现了以下功能&#xff1a; 前台功能&#xff1a;用户进入系统可以实现首页&#xff0c;旅游公告&#xff0c;景区&#xff0c;景区商品&#xff0c;景区美食&#xff0c;旅游交通工具&#xff0c;红黑榜&#xff0c;个人中心&#xff0c;后台…

squid代理服务器(传统代理、透明代理、反向代理、ACL、日志分析)

一、Squid 代理服务器 &#xff08;一&#xff09;代理的工作机制 1、代替客户机向网站请求数据&#xff0c;从而可以隐藏用户的真实IP地址。 2、将获得的网页数据&#xff08;静态 Web 元素&#xff09;保存到缓存中并发送给客户机&#xff0c;以便下次请求相同的数据时快速…

Stable Diffusion XL网络结构-超详细原创

强烈推荐先看本人的这篇 Stable Diffusion1.5网络结构-超详细原创-CSDN博客 1 Unet 1.1 详细整体结构 1.2 缩小版整体结构 以生成图像1024x1024为例&#xff0c;与SD1.5的3个CrossAttnDownBlock2D和CrossAttnUpBlock2D相比&#xff0c;SDXL只有2个&#xff0c;但SDXL的Cros…

Rust语言精讲:数据类型全解析

大家好&#xff01;我是lincyang。 今天&#xff0c;我们将深入探讨Rust语言中的数据类型&#xff0c;这是理解和掌握Rust的基础。 Rust语言数据类型概览 Rust是静态类型语言&#xff0c;所有变量类型在编译时确定。Rust的数据类型分为两类&#xff1a;标量类型和复合类型。…

动态神经网络时间序列预测

大家好&#xff0c;我是带我去滑雪&#xff01; 神经网络投照是否存在反锁与记忆可以分为静态神经网络与动态神经网络。动态神经网络是指神经网络带有反做与记忆功能&#xff0c;无论是局部反馈还是全局反锁。通过反馈与记忆&#xff0c;神经网络能将前一时刻的数据保留&#x…

【ARM AMBA AXI 入门 15 -- AXI-Lite 详细介绍】

请阅读【ARM AMBA AXI 总线 文章专栏导读】 文章目录 AXI LiteAXI-Full 介绍AXI Stream 介绍AXI Lite 介绍AXI Full 与 AIX Lite 差异总结AXI Lite AMBA AXI4 规范中包含三种不同的协议接口,分别是: AXI4-FullAXI4-LiteAXI4-Stream 上图中的 AXI FULL 和 AIX-Lite 我们都把…

【GUI】-- 12 贪吃蛇小游戏之让小蛇动起来

GUI编程 04 贪吃蛇小游戏 4.3 第三步&#xff1a;让小蛇动起来(键盘控制) 首先&#xff0c;在构造器中要获取焦点事件、键盘监听事件并加入定时器(定时器定义需要实现ActionListener接口并重写actionPerformed方法)&#xff1a; //构造器public GamePanel() {init();this.s…

jbase仪器接口设计

jbase的计划有借助虚拟M来实现连仪器&#xff0c;之前陆续写了些TCP逻辑&#xff0c;今天终于整理完成了仪器设计。首先用java的cs程序测试TCP的服务和客户端。 javafx的示例加强 package sample;import javafx.application.Application; import javafx.event.EventHandler; …

Web 自动化神器 TestCafe—页面基本操作篇

前 言 Testcafe是基于node.js的框架&#xff0c;以操作简洁著称&#xff0c;是web自动化的神器 今天主要给大家介绍一下testcafe这个框架和页面元素交互的方法。 一、互动要求 使用 TestCafe 与元素进行交互操作&#xff0c;元素需满足以下条件&#xff1a;☟ 元素在 body 页…

专访特斯拉工程师杨硕:跟着机器人上天入地、探索地外行星丨智源独家

导读 十几岁时&#xff0c;他痴迷《终结者》&#xff0c;曾在百科全书中窥见卡内基梅隆大学机械臂的介绍&#xff0c;从而得知了研究机器人「圣地」的存在。 在CMU&#xff0c;他深耕足式机器人感知定位算法&#xff0c;期待未来涉足太空&#xff0c;走上火星。 在大疆&#xf…

瑞格心理咨询系统设置多个管理员的操作方法

使用瑞格心理咨询系统&#xff0c;需要设置多个admin权限的管理员账号来管理&#xff0c;咨询厂家答复只能有1个管理员&#xff0c;个人觉得不可能&#xff0c;于是开始折腾。 解决办法&#xff1a; 在没有数据字典的情况下&#xff0c; 通过遍历数据库&#xff0c;发现用户信…

『 Linux 』使用fork函数创建进程与进程状态的查看

文章目录 &#x1f5a5;️ 前言 &#x1f5a5;️&#x1f5a5;️ 通过系统调用获取进程标识符 &#x1f5a5;️&#x1f4bb; 进程标识符PID&#x1f4bb; 父进程标识符PPID &#x1f5a5;️ 通过系统调用创建子进程 fork() &#x1f5a5;️&#x1f4bb; 那么为什么在fork()函…

线程池简介及其简单实现

如果需要频繁的创建销毁线程, 就需要想办法降低创建和销毁的开销, 而线程池就是一个很好的选择: 提前创建好一些线程, 等到需要使用线程的时候, 直接从池子里拿一个就好了, 当不再使用该线程时, 就放回到池子里. 那么此时就从 创建/销毁线程 -> 池子里取线程/将线程还到池子…

构建智能医患沟通:陪诊小程序开发实战

在医疗科技的浪潮中&#xff0c;陪诊小程序的开发成为改善医患沟通的创新途径之一。本文将介绍如何使用Node.js和Express框架构建一个简单而强大的陪诊小程序&#xff0c;实现患者导诊和医生咨询功能。 1. 安装Node.js和Express 首先确保已安装Node.js&#xff0c;然后使用以…

Linux procps-ng - top

procps-ng 是一个开源的进程管理工具集&#xff0c;它提供了一系列用于监控和管理系统进程的命令行工具。它是 procps 工具集的一个分支&#xff0c;旨在改进和增强原有的 procps 工具。 procps-ng 包括了一些常用的命令行工具&#xff0c;例如&#xff1a; ps&#xff1a;用于…

机器学习笔记 - 创建CNN + RNN + CTC损失的模型来识别图像中的文本

我们将创建一个具有CTC损失的卷积循环神经网络来实现我们的OCR识别模型。 一、数据集 我们将使用 Visual Geometry Group 提供的数据。 Visual Geometry Group - University of OxfordComputer Vision group from the University of Oxfordhttps://www.robots.ox.ac.uk/~vgg/d…

最新AIGC创作系统ChatGPT系统源码,支持最新GPT-4-Turbo模型,支持DALL-E3文生图,图片对话理解功能

一、AI创作系统 SparkAi创作系统是基于OpenAI很火的ChatGPT进行开发的Ai智能问答系统和Midjourney绘画系统&#xff0c;支持OpenAI-GPT全模型国内AI全模型。本期针对源码系统整体测试下来非常完美&#xff0c;可以说SparkAi是目前国内一款的ChatGPT对接OpenAI软件系统。那么如…

leetcode:415. 字符串相加(模拟竖式计算)

一、题目 链接&#xff1a; 415. 字符串相加 - 力扣&#xff08;LeetCode&#xff09; 函数原型&#xff1a;char* addStrings(char* num1, char* num2) 二、思路&#xff1a; 本题本质是将两个字符型数字相加&#xff0c;字符型数字相加就一定需要进行字符与数字的相互转换 详…

秋招JAVA面经总结

面试的范围是Java基础+Java并发+Java框架+mysql+网络。 Java基础 重载与重写有什么区别? 重载(Overloading)指的是在同一个类中,可以有多个同名方法,它们具有不同的参数列表(参数类型、参数个数或参数顺序不同),编译器根据调用时的参数类型来决定调用哪个方法。 重写…

笔试强训2

目录 &#x1f449;&#x1f3fb;字符串反转&#x1f449;&#x1f3fb;公共子串计算 &#x1f449;&#x1f3fb;字符串反转 mycode:100% #include <iostream> #include<algorithm> using namespace std;int main() {string s;cin>>s;reverse(s.begin(),s.…