Matlab|基于关键场景辨别算法的两阶段鲁棒微网优化调度

目录

主要内容   

  部分代码   

  结果一览   

下载链接


主要内容   

该模型主要求解的是微网两阶段鲁棒优化调度问题,与目前大部分用CCG算法不同,模型创新性的采用关键场景辨别法,通过少量的迭代辨别出最恶劣的场景,针对光伏出力的随机性与间歇性,采用动态鲁棒优化法对其进行处理。构建了考虑光伏出力不确定性的微网两阶段鲁棒优化调度模型,并采用恶劣场景辨别算法将原问题分解为主问题和子问题进行迭代求解。子问题用来辨别最恶劣的光伏出力情景,并通过主问题对该情景下的单层优化模型进行求解,从而极大地削减了所需求解情景数量,提高了模型的计算效率。程序采用matlab+cplex求解,在创新性上提供了一个思路,通过辨识最恶劣的某几个场景后,将场景法应用到整体模型中进行分析求解,之前很多文献的场景法直接采用典型日进行计算,缺少恶劣场景辨别,这正是该模型值得借鉴之处!

  部分代码   

P_SP=0;%定义初始值
k=0;%定义迭代次数
​
%设置程序大循环
while(P_MP>P_SP)display(['迭代还未收敛,当前迭代第 ', num2str(k+1),' 次']);P_RES=Spv(:,j)';kk=length(j);Obj_MP=zeros(kk,24);P_MP=zeros(1,1);P_DA=zeros(kk,24);S_DA=zeros(kk,24);u_GT=zeros(kk,24);u_GTon=zeros(kk,24);u_GToff=zeros(kk,24);[Obj_MP,P_MP,P_DA,S_DA,u_GT,u_GTon,u_GToff]=Fun_MP(j,P_RES);display(['第 ', num2str(k+1),' 次','求解主问题,结束!']);P_MP=value(P_MP);P_DA_SP=value(P_DA);S_DA_SP=value(S_DA);u_GT_SP=value(u_GT);u_GTon_SP =value(u_GTon);u_GToff_SP =value(u_GToff);P_SP_b=[];%定义临时矩阵
​
%%%%%%%%%%求解子问题各光伏场景的P_SP%%%%%%%%%
%筛选出主问题中的光伏场景
j_SP=[];
for i=1:50 %这里根据场景数修改,1000场景则改为1000if ismember(i,j)~=1 j_SP=[j_SP,i];end
end
%定义子问题光伏索引
P_RES_SP=Spv(:,j_SP)';   

  结果一览   

下载链接

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

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

相关文章

obs直播推流 + ffmpeg参数

OBS 启动参数设为 --startstreaming , 可以让它启动后自动开始直播 对应ffmpeg参数: echo off :loop ffmpeg -re -i a.mp4 -r 24 -c:v libx264 -preset ultrafast -profile:v baseline -g 24 -keyint_min 24 -x264-params nal-hrdcbr -b:v 2500k -minr…

mybatis批量新增数据

数据量大的时候如果在循环中执行单条新增操作,是非常慢的。那么如何在mybatis中实现批量新增数据呢? 方法 insert 标签的 foreach 属性可以用于批量插入数据。您可以使用 foreach 属性遍历一个集合,并为集合中的每个元素生成一条插入语句。…

洛谷P1000超级玛丽游戏题解[Python, Rust, Go]

题目 打印超级玛丽字符图像 小技巧 直接复制题目的超级玛丽符号首行会有空格问题,一直AC不过,一行一行地复制就OK了👌。 Rust 题解 fn main() {println!(" ********************####....#.#..###.....##....###...…

pip和conda 设置安装源

pip和conda 设置安装源 conda查看 channels添加 channels移除 channelschannels 配置文件 pip查看 index-url添加 index-url移除 index-urlindex-url 配置文件 常用源 conda 查看 channels conda config --show channels添加 channels conda config --add channels https:/…

企业周年庆3d云展厅促进了客企间交流与互动

在数字化浪潮席卷而来的今天,传统的展示方式已难以满足现代人对信息获取与体验的高标准需求。为此,一种革命性的展示方式——线上3D虚拟展厅应运而生,以其独特的魅力逐渐引领展示方式的革新。 线上3D虚拟展厅开发,不仅为参与者带来…

JVM垃圾收集——相关概念

本贴讲解的内容包括System.gc()、内存溢出、内存泄漏、STW机制以及垃圾收集的串行、并行、并发三种情况,还有强引用、软引用、弱引用、虚引用四种引用。 1、System.gc()的理解 在默认情况下,通过System.gc()或者Runtime.getRuntime().gc()的调用&#…

k8s 加 jenkins 和 gitlab 结合 maven生成快速devops平台内网快速部署

要实现Docker、Jenkins和GitLab的结合,以及通过Maven生成快速DevOps平台内网快速部署,可以按照以下步骤进行操作: 安装Docker:首先需要在服务器上安装Docker,可以根据操作系统的不同,参考Docker官方文档进行…

提升常州小程序软件开发的搜索排名:关键步骤解析

在移动互联网的浪潮中,小程序作为连接用户与服务的桥梁,其重要性日益凸显。对于常州的小程序软件开发企业来说,如何让自己的产品在浩如烟海的互联网信息中脱颖而出,提升搜索排名,成为了亟待解决的问题。本文将为您解析…

HarmonyOS 应用开发之自定义组件冻结功能

自定义组件处于非激活状态时,状态变量将不响应更新,即Watch不会调用,状态变量关联的节点不会刷新。通过freezeWhenInactive属性来决定是否使用冻结功能,不传参数时默认不使用。支持的场景有:页面路由,TabCo…

完美解决layui多图上传时,动态给每个图片增加参数

需求:当我在使用layui框架上传多图时,我想动态给每一张图都把它的名称传给后台 data: {id: function(){return $(#id).val();} } 这是官网给的动态传参的方法 我自己根据官网给的案例设置 data:{filesIndex:function(index, file){return file.name}},…

什么是智慧公厕?智慧旅游下的智慧公厕功能和特点

智慧旅游下的智慧公厕功能和特点?智慧旅游是景区、公园、游乐场、文化场馆等领域的一种信息化解决方案,智慧公厕是智慧旅游极为重要的一部分,能大大提升游客满意度。智慧公厕采用物联网、互联网、大数据、云计算等技术,实现旅游景…

gitlab备份与恢复

1.1.1 查看系统版本和软件版本 cat /etc/debian_version cat /opt/gitlab/embedded/service/gitlab-rails/VERSION 1.1.2 数据备份 打开/etc/gitlab/gitlab.rb配置文件,查看一个和备份相关的配置项 sudo vim /etc/gitlab/gitlab.rb gitlab_rails[backup_path] &q…

ffmpeg点对点音视频udp协议传输

参考:https://zhuanlan.zhihu.com/p/636152437?utm_id0 ffmpeg查看可用设备: ffmpeg -list_devices true -f dshow -i dummy1、音频 局域网内两台设备间 设备1-音频: ffmpeg -f dshow -i audio"麦克风阵列 (适用于数字麦克风的英特…

使用Excel连接Azure DevOps自动退出的问题

Azure DevOps Server (原名TFS)是微软公司的软件开发管理平台,也是著名的软件开发过程管理工具;系统中记录了软件开发过程中的需求、问题、缺陷和迭代计划等各种软件开发工作项数据。 对于工作项数据的批量操作(例如新增和编辑),Excel是一个非…

zabbix图表时间与服务器时间不一致问题

部署完zabbix后,有时候会发现zabbix服务器的时间明明是对的,但是图标的时间不对,通过以下的配置可以快速解决。 登录zabbix-nginx容器 docker exec -u root -it docker-compose-zabbix-zabbix-web-nginx-mysql-1 bash修改php配置文件 vi /e…

SpringData ElasticSearch - 简化开发,完美适配 Spring 生态

目录 一、SpringData ElasticSearch 1.1、环境配置 1.2、创建实体类 1.3、ElasticsearchRestTemplate 的使用 1.3.1、创建索引 设置映射 1.3.2、简单的增删改查 1.3.3、搜索 1.4、ElasticsearchRepository 1.4.1、使用方式 1.4.2、简单的增删改查 1.4.3、分页排序查…

Linux系统下安装jdk与tomcat【linux】

一、yum介绍 linux下的jdk安装以及环境配置,有两种常用方法: 1.使用yum一键安装。 2.手动安装,在Oracle官网下载好需要的jdk版本,上传解压并配置环境。 这里介绍第一种方法,在此之前简单了解下yum。 yum 介绍 yum&…

57 npm run build 和 npm run serve 的差异

前言 npm run serve 和 npm run build 的差异 这里主要是从 vue-cli 的流程 来看一下 我们经常用到的这两个命令, 他到传递给 webpack 打包的时候, 的一个具体的差异, 大致是配置了那些东西? 经过了那些流程 ? vue-cli 的 vue-plugin 的加载 内置的 plugin 列表如下, 依次…

【Servlet】session保存作用域

session保存作用域:一次会话范围都有效 Java的服务器端,有一块内存专门存储在session保存作用域的数据。 session保存作用域是和具体的某一个session对应的。 常用API: void session.setAttribute(k, v)Object session.getAttrivute(k) —…

平滑处理在眼动追踪数据分析中的应用

眼动追踪数据的平滑处理技术 眼动追踪技术作为研究人类视觉注意、界面设计效果评估以及增强现实(AR)和虚拟现实(VR)中交云互动的重要工具,其准确性和流畅性对实验结果和用户体验至关重要。然而,由于测量误…