【顶刊|修正】多区域综合能源系统热网建模及系统运行优化【复现+延伸】

本文主要是介绍【顶刊|修正】多区域综合能源系统热网建模及系统运行优化【复现+延伸】,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

目录

主要内容   

  部分代码   

  结果一览   

下载链接 


主要内容   

该程序复现《多区域综合能源系统热网建模及系统运行优化》模型并进一步延伸,基于传热学的基本原理建立了区域热网能量传输通用模型,对热网热损方程线性化实现热网能量流建模,在冷热电联供系统运行优化模型基础上建立了含有热网的多区域 IES 优化混合整数线性规划模型,以从电网购电费用、向电网售电所得费用、燃气费、弃光成本和热网运行费用之和为目标,包括CCHP、热网和耦合关系约束条件,采用蒙特卡洛和kmeans聚类生成可再生能源出力随机优化场景,并将原确定性模型调整为日前确定、实时鲁棒优化模型。程序采用matlab+gurobi编程,本次对程序进行了修正优化,IES方向的同学可以下载学习!

本次主要对程序做了三方面的修正:

1.解决了求解速度慢的问题,通过优化程序代码,目前求解时间为5min左右。

2.修正了热功率失衡问题。

3.通过addpath命令应用解决了程序对文件夹依赖问题,程序下载后可直接运行,无需修改文件夹路径及名称。

  部分代码   

%上述模型为 0-1 混合整数线性规划模型,其中决策变量有:CCHP 中各设备出力、储能装置输入输出
% 电网购电、售电量、转换设备输入以及热网中各管段输入输出热功率。目前该模型已有成熟的求解算法
% 导入参数
%居民区 CCHP 1;
%商业区 CCHP 2
%工业区 CCHP 3
%办公区 CCHP 4
%--------------------------------------------------------------------------第一阶段
warning off
addpath('..\data')
addpath('..\子函数')
clc
clear
close all
Params = LoadParams();
​
NumOfScence = 3;                                              % 场景数
NumOfDistract = 4;                                             % 区域数
​
Params = WindSceneProduce(Params,NumOfScence,1000);           % 光伏不确定性场景
​
​
p = ones(1,NumOfScence) /NumOfScence;
​
Preal =  Params.CCHP1.P';                 % 真实场景概率
R = 4;               % 循环水泵的数量
​
StateParams = StateParamsInit(NumOfDistract);
% 主问题热网变量
StateTemData = cell(1,24);
for i = 1:24
StateTemData{i} = TemFlowRate(Params);
end
​
​
% 实时情况
DifferentScence = NowParamsInit(NumOfScence,NumOfDistract);
% 子问题热网变量
DifferentTemData = cell(1,NumOfScence);
​
for j = 1:NumOfScencea = cell(1,24);for i = 1:24a{i} = TemFlowRate(Params);endDifferentTemData{j} = a;
end
clear a i j 

  结果一览   

主场景

由于出图结果较多,其他场景出图结果不再展示,有兴趣的可以获取程序源码进一步了解。

下载链接 

这篇关于【顶刊|修正】多区域综合能源系统热网建模及系统运行优化【复现+延伸】的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/712906

相关文章

uniapp接入微信小程序原生代码配置方案(优化版)

uniapp项目需要把微信小程序原生语法的功能代码嵌套过来,无需把原生代码转换为uniapp,可以配置拷贝的方式集成过来 1、拷贝代码包到src目录 2、vue.config.js中配置原生代码包直接拷贝到编译目录中 3、pages.json中配置分包目录,原生入口组件的路径 4、manifest.json中配置分包,使用原生组件 5、需要把原生代码包里的页面修改成组件的方

eclipse运行springboot项目,找不到主类

解决办法尝试了很多种,下载sts压缩包行不通。最后解决办法如图: help--->Eclipse Marketplace--->Popular--->找到Spring Tools 3---->Installed。

22.手绘Spring DI运行时序图

1.依赖注入发生的时间 当Spring loC容器完成了 Bean定义资源的定位、载入和解析注册以后,loC容器中已经管理类Bean 定义的相关数据,但是此时loC容器还没有对所管理的Bean进行依赖注入,依赖注入在以下两种情况 发生: 、用户第一次调用getBean()方法时,loC容器触发依赖注入。 、当用户在配置文件中将<bean>元素配置了 lazy-init二false属性,即让

21.手绘Spring IOC运行时序图

1.再谈IOC与 DI IOC(lnversion of Control)控制反转:所谓控制反转,就是把原先我们代码里面需要实现的对象创 建、依赖的代码,反转给容器来帮忙实现。那么必然的我们需要创建一个容器,同时需要一种描述来让 容器知道需要创建的对象与对象的关系。这个描述最具体表现就是我们所看到的配置文件。 DI(Dependency Injection)依赖注入:就是指对象是被动接受依赖类

通信系统网络架构_2.广域网网络架构

1.概述          通俗来讲,广域网是将分布于相比局域网络更广区域的计算机设备联接起来的网络。广域网由通信子网于资源子网组成。通信子网可以利用公用分组交换网、卫星通信网和无线分组交换网构建,将分布在不同地区的局域网或计算机系统互连起来,实现资源子网的共享。 2.网络组成          广域网属于多级网络,通常由骨干网、分布网、接入网组成。在网络规模较小时,可仅由骨干网和接入网组成

java中查看函数运行时间和cpu运行时间

android开发调查性能问题中有一个现象,函数的运行时间远低于cpu执行时间,因为函数运行期间线程可能包含等待操作。native层可以查看实际的cpu执行时间和函数执行时间。在java中如何实现? 借助AI得到了答案 import java.lang.management.ManagementFactory;import java.lang.management.Threa

Linux系统稳定性的奥秘:探究其背后的机制与哲学

在计算机操作系统的世界里,Linux以其卓越的稳定性和可靠性著称,成为服务器、嵌入式系统乃至个人电脑用户的首选。那么,是什么造就了Linux如此之高的稳定性呢?本文将深入解析Linux系统稳定性的几个关键因素,揭示其背后的技术哲学与实践。 1. 开源协作的力量Linux是一个开源项目,意味着任何人都可以查看、修改和贡献其源代码。这种开放性吸引了全球成千上万的开发者参与到内核的维护与优化中,形成了

【第十三课】区域经济可视化表达——符号表达与标注

一、前言 地图最直接的表达就是使用符号表达。使用符号可以把简单的点线面要 素渲染成最直观的地理符号,提高地图的可读性。只要掌握了 ArcGIS 符号制 作的技巧,分析符号并总结出规则,就可以制作符合要求的地图+符号。 (一)符号的选择与修改 符号的选择在制图中至关重要,使用符号选择器对话框可从多个可用样式 中选择符号,并且每个符号都有一个标签用来描述其图形特征,如颜色或类型, 利用这些标签可

服务器雪崩的应对策略之----SQL优化

SQL语句的优化是数据库性能优化的重要方面,特别是在处理大规模数据或高频访问时。作为一个C++程序员,理解SQL优化不仅有助于编写高效的数据库操作代码,还能增强对系统性能瓶颈的整体把握。以下是详细的SQL语句优化技巧和策略: SQL优化 1. 选择合适的数据类型2. 使用索引3. 优化查询4. 范式化和反范式化5. 查询重写6. 使用缓存7. 优化数据库设计8. 分析和监控9. 调整配置1、

开启青龙 Ninja 扫码功能失效后修改成手动填写CK功能【修正Ninja拉库地址】

国内:进入容器docker exec -it qinglong bash #获取ninjagit clone -b main https://ghproxy.com/https://github.com/wjx0428/ninja.git /ql/ninja#安装cd /ql/ninja/backend && pnpm install cp .env.example .env