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

MATLAB|基于多主体主从博弈的区域综合能源系统低碳经济优化调度

目录

主要内容   

程序亮点:

  模型研究   

一、综合能源模型

二、主从博弈框架

  部分代码   

  结果一览   

下载链接


主要内容   

程序参考文献《基于多主体主从博弈的区域综合能源系统低碳经济优化调度》,采用了区域综合能源系统多主体博弈协同优化方法,同时考虑奖惩阶梯型碳交易机制和双重激励综合需求响应策略。首先,为充分考虑系统的低碳性,在博弈模型中引入奖惩阶梯型碳交易机制限制各主体碳排放量,并在用户侧提出了基于价格和碳补偿双重激励的综合需求响应策略。其次,以能源管理商为领导者,供能运营商和用户为跟随者,建立了基于碳交易和博弈协同优化的多主体低碳交互机制,并构建了各主体的交易决策模型。最后,采用改进粒子群算法结合gurobi对所提模型进行求解。仿真结果验证了所提模型和方法的有效性。程序运行可靠,注释清晰,采用matlab+gurobi进行求解。

程序亮点:

①程序在用户满意度指标部分用到了二次函数,二次函数一般可以通过线性化处理的方式来实现求解通用性,但是在该代码中采用gurobi+的求解器调用方式来精确计算含二次函数的目标最优化问题。

②碳交易分段线性化处理,通过辅助变量的引入实现碳交易的线性化处理,方便模型求解!

③程序实现了智能算法和混合整数规划算法的组合,通过这种分层计算方式构建了主从博弈模型,既能优化得到电价信息,也能得到各主体出力特性,值得大家借鉴!

  模型研究   

一、综合能源模型

综合能源模型集合了电能流、热能流、冷能流和气能流四部分,不同能源流之间存在耦合断面,如气能通过GT(燃气轮机)和GB(燃气锅炉)可转化为热能,热能通过AR(冰蓄冷空调)可转化为冷能,等等。

二、主从博弈框架

综合能源系统需要综合考量各方利益,如EGO、ESO和用户等。

EGO 以 CCHP 机组为核心,考虑 CCHP 和 GB运行过程中产生的碳排放量,以售能收益最大、燃料成本和碳交易成本最小为目标函数优化各设备出力。

ESO 根据价格信息在 EMO 和用户之间通过低充高放优化自身充、放能功率,从而实现套利。

在用户侧,引入一定比例的可调节负荷,综合考虑购能成本、用能舒适性和碳补偿,以最大化用户侧综合效益调整用能需求,其调整后的实际用能需求也会反过来影响各个利益主体自身收益。

流程图可参考:

  部分代码   

Constraints =[];
%新能源消纳约束
Constraints = [Constraints,0.8*WT<= E_WT<=WT]; 
Constraints = [Constraints,0.8*PV<= E_PV<=PV]; 
%购能约束
Constraints = [Constraints, 0<=E_BUY<=1000]; 
Constraints = [Constraints, 0<=G_BUY<=2000];
%%CCHP约束
Constraints = [Constraints,0<=E_GT<=1500];
Constraints = [Constraints,0<=H_AR<=800];
for i=1:23Constraints = [Constraints,-700<=E_GT(i+1)-E_GT(i)<=700]; Constraints = [Constraints,-400<=H_AR(i+1)-H_AR(i)<=400]; 
end
%燃气锅炉约束
Constraints = [Constraints,0<= H_GB<=1500];
for i=1:23Constraints = [Constraints,-700<=H_GB(i+1)-H_GB(i)<=700]; 
end
%冰蓄冷空调约束
Constraints = [Constraints,0<= E_ISAC<=500];
for i=1:23Constraints = [Constraints,-200<=E_ISAC(i+1)-E_ISAC(i)<=500]; 
end
%储能约束

  结果一览   

下载链接

http://www.lryc.cn/news/453245.html

相关文章:

  • Django 后端数据传给前端
  • elasticsearch 写入新数据测试(二)
  • android navigation 用法详细使用
  • uni-app在线预览pdf
  • SpringBoot--为什么Controller是串行的?怎样才能并行?
  • C/C++ 中的未定义行为(Undefined Behavior, UB)
  • AJAX 1——axios体验、认识URL、常用请求方法、HTTP协议、错误处理、form-serialize插件
  • Java-运算符
  • ubutun nginx 安装和解决端口占用问题
  • 螺蛳壳里做道场:老破机搭建的私人数据中心---Centos下Docker学习01(环境准备)
  • 解决:使用layui.treeTable.updateNode,更新表格数据后,done里面的事件丢失问题
  • 【Linux】环境变量(初步认识环境变量)
  • 79. 单词搜索
  • [单master节点k8s部署]28.Istio流量管理(四)
  • Windows 11 安装配置 Git 教程
  • Go基础学习11-测试工具gomock和monkey的使用
  • PHP基础教程
  • Python或R时偏移算法实现
  • 华为云LTS日志上报至观测云最佳实践
  • Python--加载Hugging Face模型文件异常处理
  • 补码加/减运算的具体示例
  • macOS编译和运行prometheus2.54
  • flume系列之:flume jmx页面导出flume、java进程等全部指标
  • (17)MATLAB使用伽马(gamma)分布生成Nakagami-m分布的方法1
  • NFT 是什么?
  • mysql的学习
  • 微服务之间的相互调用的几种常见实现方式对比
  • FPGA时序分析和约束学习笔记-(1、FPGA基本原理)
  • 华为仓颉语言入门(9):for-in表达式
  • Vue3中使用axios