文章解读与仿真程序复现思路——电网技术EI\CSCD\北大核心《考虑抽水蓄能电站参与容量交易辅助服务的双层优化策略》

本专栏栏目提供文章与程序复现思路,具体已有的论文与论文源程序可翻阅本博主免费的专栏栏目《论文与完整程序》

论文与完整源程序_电网论文源程序的博客-CSDN博客icon-default.png?t=N7T8https://blog.csdn.net/liang674027206/category_12531414.html

电网论文源程序-CSDN博客电网论文源程序擅长文章解读,论文与完整源程序,等方面的知识,电网论文源程序关注python,机器学习,计算机视觉,深度学习,神经网络,数据挖掘领域.https://blog.csdn.net/LIANG674027206?type=download

这个标题涉及到能源领域中的两个主要概念:抽水蓄能电站和容量交易辅助服务,以及一种用于优化这些服务参与的双层策略。

  1. 抽水蓄能电站:抽水蓄能电站是一种通过将水从低处抽到高处蓄能,然后在需要时释放水以产生电力的设施。它们被认为是一种有效的储能方式,能够调节电力系统的负荷平衡,提高电力系统的灵活性和稳定性。

  2. 容量交易辅助服务:容量交易是电力市场中的一种形式,其中参与者可以出售或购买电力容量,以确保电力系统在高负荷期间有足够的供电能力。辅助服务是一种特殊的电力服务,用于提高电力系统的稳定性和可靠性,包括调频、备用电力和电压支持等。

  3. 双层优化策略:这指的是一种优化方法,其中有两个层次的决策。在这种情况下,第一层可能是针对抽水蓄能电站的内部运营优化,例如最大化其利润或效率。第二层可能是针对抽水蓄能电站参与容量交易市场的优化,以便最大化其在市场中的收益或对电力系统的贡献。

因此,这个标题表明了一种研究方法,旨在探讨如何通过双层优化策略来最大化抽水蓄能电站在容量交易辅助服务中的参与,并提高电力系统的灵活性和可靠性。

摘要:抽水蓄能电站是重要的调峰调频的资源。目前抽水蓄能电站在运行中始终处于被动调度,其成本由两部制电价弥补,导致抽蓄参与辅助服务市场的积极性不高。新能源发展带来了强不确定性与间歇性,亟需加快确立抽水蓄能电站的独立市场主体地位,促进新能源的稳定消纳。本文设计了一种抽蓄作为独立主体同时参与辅助服务市场及日前市场的运行机制,建立了捆绑容量优化—日前调度双层优化模型,实现抽蓄、风光合作及与电网的友好互动。上层构建风险效用函数量化抽蓄收益期望底线与风光捆绑容量的函数关系,定义抽蓄与风光合作的理论判据,并建立讨价还价博弈模型进行双方收益的合理分配,以风光收益期望最大为目标进行捆绑容量优化;下层考虑多电源类型结构,以社会发电成本最小为目标,模拟日前市场抽蓄出力、工况、日前收益对容量交易的影响。最后,以某省2020年实际数据为例,用粒子群双层算法求解双层优化模型得到最优捆绑容量、收益分配方案,测算结果表明在有效降低风光出力偏差的同时,抽蓄、风光收益均能显著提高,充分发挥了灵活调节资源的调节作用。

这段摘要描述了一项研究,主要关注抽水蓄能电站作为调峰调频资源的重要性以及当前其在运行中的被动调度导致参与辅助服务市场积极性不高的问题。以下是对摘要的详细解读:

  1. 抽水蓄能电站的背景

    • 抽水蓄能电站被认为是调峰调频的关键资源,可以在电力系统中提供灵活性,调节电力的供需平衡。
  2. 问题陈述

    • 目前抽水蓄能电站处于被动调度状态,其成本由两部制电价弥补。这可能是因为传统的电价结构不够激励抽水蓄能电站积极参与辅助服务市场。
  3. 新能源发展的影响

    • 新能源的发展引入了强烈的不确定性和间歇性,需要更好地整合和利用抽水蓄能电站等资源来稳定新能源的消纳。
  4. 研究设计

    • 文章提出了一种新的运行机制,将抽水蓄能电站作为独立主体同时参与辅助服务市场和日前市场。这种机制旨在建立捆绑容量优化和日前调度的双层优化模型。
  5. 优化目标和模型结构

    • 上层优化目标是构建风险效用函数,以量化抽蓄收益期望底线与风光捆绑容量之间的函数关系。定义了抽蓄与风光合作的理论判据,并通过讨价还价博弈模型进行双方收益的合理分配,以最大化风光收益为目标进行捆绑容量优化。
    • 下层考虑了多电源类型结构,以社会发电成本最小为目标,通过模拟日前市场抽蓄出力、工况、日前收益对容量交易的影响。
  6. 实例和结果

    • 以某省2020年实际数据为例,使用粒子群双层算法求解双层优化模型,得到最优捆绑容量和收益分配方案。结果显示,在有效降低风光出力偏差的同时,抽蓄和风光收益均显著提高,充分发挥了灵活调节资源的作用。

总体而言,这项研究旨在提高抽水蓄能电站参与辅助服务市场积极性,通过建立创新的双层优化模型来实现抽蓄与新能源的合作,以促进电力系统的稳定和新能源的有效消纳。

关键词:    联合运行;抽水蓄能;容量优化;收益分配;辅助服务;

  1. 联合运行:指不同类型的发电设施或能源资源在电力系统中协同运行,以实现系统的稳定性、经济性和可靠性。在这个上下文中,可能指抽水蓄能电站与其他能源资源(如风电、光伏等)以及电网之间的协同运行。

  2. 抽水蓄能:是一种利用水能进行储能的技术,通常包括一个上游水库和一个下游水库,通过在电力需求低谷时把水从下游泵送至上游,电力需求高峰时释放水通过水轮机发电的过程。

  3. 容量优化:指在电力系统中,对于各种发电设备和储能设备的容量(如抽水蓄能电站的容量)进行优化配置,以最大化系统的效益和经济性。

  4. 收益分配:指在多方合作或交易中,将产生的收益或利润按照一定的原则或协议进行分配的过程。在这个上下文中,可能指抽水蓄能电站与其他资源或电网之间的收益分配方式,确保各方的利益得到合理保障。

  5. 辅助服务:是指在电力系统运行中,除了基础的电能供应外,提供的各种支持性服务,如频率调节、电压控制、备用容量等。抽水蓄能电站通常可以提供这些服务,有助于维持电力系统的稳定性和可靠性。

仿真算例:

为验证模型和算法的有效性,本文选取某省 典型日数据为例。该地区拥有39台火电机组、总 容量为1200MW的定速抽蓄电站(由4台300MW 抽蓄机组组成)、装机总容量为6690MW的风电厂 以及总容量为4810MW的光伏电站,另有总容量 为17090MW的水电站,日前调度周期为24h,时 间步长为1h。以风光出力预测误差从5%到20%分 别生成多组风光场景集i A;还以风光出力预测误差(以下简称风光预测误差)为 10%单独生成一 组风光场景集B。系统组成、抽蓄机组、火电机组 等机组的参数及能源电价(见附录D表D1-D3)。

仿真程序复现思路:

import numpy as np
import pandas as pd

# 系统组件参数定义
power_system_params = {
    "thermal_units": 39,
    "pumped_storage_capacity": 1200,  # MW
    "wind_capacity": 6690,  # MW
    "solar_capacity": 4810,  # MW
    "hydro_capacity": 17090,  # MW
}

# 假设的小时电力需求(24小时)
hourly_demand = np.array([15000, 14500, 14000, 13500, 13000, 12500, 12000, 11500, 11000, 10500, 10000, 9500, 9000, 8500, 8000, 7500, 7000, 6500, 6000, 5500, 5000, 4500, 4000, 3500])

# 能源电价信息(简化处理,实际中应有更详细数据)
energy_prices = {"thermal": 0.05, "pumped_storage": 0.06, "wind": 0.02, "solar": 0.02, "hydro": 0.03}  # 每kWh的美元

def generate_scenarios(capacity, error_pct):
    # 假定出力为容量的50% ± error_pct
    base_output = capacity * 0.5
    min_output = base_output * (1 - error_pct)
    max_output = base_output * (1 + error_pct)
    return np.random.uniform(min_output, max_output, 24)

def simulate_hourly_operation(hourly_demand, wind_output, solar_output, system_params, energy_prices):
    # 初始化结果DataFrame
    df_results = pd.DataFrame(columns=["Hour", "Demand", "Wind_Output", "Solar_Output", "Thermal_Output", "Pumped_Storage_Output", "Hydro_Output", "Total_Supply", "Cost"])
    
    for hour in range(24):
        demand = hourly_demand[hour]
        wind = min(wind_output[hour], system_params["wind_capacity"])
        solar = min(solar_output[hour], system_params["solar_capacity"])
        remaining_demand = demand - wind - solar

        # 简化逻辑:首先使用水电,其次抽蓄,最后火电
        hydro_output = min(remaining_demand, system_params["hydro_capacity"])
        remaining_demand -= hydro_output
        
        pumped_storage_output = min(remaining_demand, system_params["pumped_storage_capacity"])
        remaining_demand -= pumped_storage_output
        
        thermal_output = min(remaining_demand, system_params["thermal_units"] * 300)  # 假设每个火电单位300MW
        total_supply = wind + solar + hydro_output + pumped_storage_output + thermal_output
        
        # 简化计算成本
        cost = (wind + solar) * energy_prices["wind"] + hydro_output * energy_prices["hydro"] + pumped_storage_output * energy_prices["pumped_storage"] + thermal_output * energy_prices["thermal"]
        
        df_results = df_results.append({"Hour": hour, "Demand": demand, "Wind_Output": wind, "Solar_Output": solar, "Thermal_Output": thermal_output, "Pumped_Storage_Output": pumped_storage_output, "Hydro_Output": hydro_output, "Total_Supply": total_supply, "Cost": cost}, ignore_index=True)
        
    return df_results

def main():
    wind_error = solar_error = 0.1  # 风光预测误差10%
    wind_capacity = power_system_params["wind_capacity"]
    solar_capacity = power_system_params["solar_capacity"]

    wind_output = generate_scenarios(wind_capacity, wind_error)
    solar_output = generate_scenarios(solar_capacity, solar_error)

    simulation_results = simulate_hourly_operation(hourly_demand, wind_output, solar_output, power_system_params, energy_prices)
    print(simulation_results)

if __name__ == "__main__":
    main()

本专栏栏目提供文章与程序复现思路,具体已有的论文与论文源程序可翻阅本博主免费的专栏栏目《论文与完整程序》

论文与完整源程序_电网论文源程序的博客-CSDN博客icon-default.png?t=N7T8https://blog.csdn.net/liang674027206/category_12531414.html

电网论文源程序-CSDN博客电网论文源程序擅长文章解读,论文与完整源程序,等方面的知识,电网论文源程序关注python,机器学习,计算机视觉,深度学习,神经网络,数据挖掘领域.https://blog.csdn.net/LIANG674027206?type=download

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

IntelliJ IDEA 2023.3.4创建JavaWeb应用和集成Tomcat服务器

1. 创建项目 如下图所示,只需要给项目起一个项目名称,然后点击Create即可: 2. Project Structure 设置 创建完成后如下图 3. 集成Tomcat服务器 4. 实现Servlet接口 当我们实现Servlet接口时,发现没有Servlet相关的依赖时&am…

碳素光线疗法与中医

看得见的穴位碳素光线疗法 最近日本的医疗随着科学技术的发达,在基础研究、临床各领域取得了显著的发展。日本人的平均寿命比战前大幅延长,结核及其他疑难杂症、癌症等疾病也在逐渐被压制。其中,作为癌症的辅助疗法,日本癌症学会等…

布隆过滤器原理介绍和典型应用案例

整理自己过去使用布隆过滤器的应用案例和理解 基本介绍 1970年由布隆提出的一种空间效率很高的概率型数据结构,它可以用于检索一个元素是否在一个集合中,由只存0或1的位数组和多个hash算法, 进行判断数据 【一定不存在或者可能存在的算法】 如果这些…

C#求水仙花数

目录 1.何谓水仙花数 2.求三位数的水仙花数 3.在遍历中使用Math.DivRem方法再求水仙花数 1.何谓水仙花数 水仙花数(Narcissistic number)是指一个 n 位正整数,它的每个位上的数字的 n 次幂之和等于它本身。例如,153 是一个 3 …

数据类型【mysql数据库】

一、数值类型 默认都是有符号,无符号要在对应的类型后跟unsigned 在语言上,可能会有截断,但mysql会对不合法的数据做拦截。所以,mysql中,数据类型本身也是一种约束(约束使用者),保证…

后端系统开发之——创建SpringBoot工程

原文地址:后端框架系统开发之——创建SpringBoot工程 - Pleasure的博客 下面是正文内容: 前言 现在的市场环境,如果你单单只是作为前端工程师或者是后端工程师,在开发Web应用的时候都需要去读取企业提供的接口文档。而当你前后端…

编程开发语言工具之透明滑动标尺构件用法

编程开发语言工具之透明滑动标尺构件用法 一、前言 今天给大家分享的编程开发语言工具资料如下: 编程入门视频教程链接 https://edu.csdn.net/course/detail/39036 编程工具及实例源码文件下载可以点击最下方官网卡片——软件下载——常用工具下载——编程工具…

数据仓库数据分层详解

数据仓库中的数据分层是一种重要的数据组织方式,其目的是为了在管理数据时能够对数据有一个更加清晰的掌控。以下是数据仓库中的数据分层详解: 原始数据层(Raw Data Layer):这是数仓中最底层的层级,用于存…

编译原理-实现识别无符号数的词法分析器——沐雨先生

实验任务: 实现识别无符号数的词法分析器 实验要求: 根据编译原理理论课教材中图2.4“无符号数的转换图”,用C语言编写识别无符号数的词法分析器,以文本文件为输入,控制台(或文件)输出识别出…

【Sql Server】通过Sql语句批量处理数据,使用变量且遍历数据进行逻辑处理

欢迎来到《小5讲堂》,大家好,我是全栈小5。 这是《Sql Server》系列文章,每篇文章将以博主理解的角度展开讲解, 特别是针对知识点的概念进行叙说,大部分文章将会对这些概念进行实际例子验证,以此达到加深对…

2024Vue高频面试题

前言: Vue 在前端开发领域拥有强劲的发展势头,以下是一些 Vue 的发展趋势: 1.持续增长的用户数量: Vue 作为一款轻量级、易学易用的前端框架,吸引了越来越多的开发者和企业选择使用。其活跃的社区和丰富的资源也促进了用户数量的不断增长。 2.生态系统不断丰富: 随着 V…

第七节:Vben Admin权限-后端获取路由和菜单

系列文章目录 第一节:Vben Admin介绍和初次运行 第二节:Vben Admin 登录逻辑梳理和对接后端准备 第三节:Vben Admin登录对接后端login接口 第四节:Vben Admin登录对接后端getUserInfo接口 第五节:Vben Admin权限-前端控制方式 第六节:Vben Admin权限-后端控制方式 第七节…

【启动npm run serve 奇怪的报错】

报错如下: INFO Starting development server... utils.js:587Uncaught TypeError [ERR_INVALID_ARG_VALUE]: The argument path must be a string or Uint8Array without null bytes. Received E:\\#\u0000#idea-workspace\\wonderful-search\\wonderful-search-v…

【JAVA】JAVA方法的学习和创造

🌈个人主页: Aileen_0v0 🔥热门专栏: 华为鸿蒙系统学习|计算机网络|数据结构与算法|MySQL| ​💫个人格言:“没有罗马,那就自己创造罗马~” 前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不…

影像质感再升级:JOEL FAMULARO Phantom LUTs让作品焕然一新

JOEL FAMULARO Phantom LUTs是一套专业的电影级别的预设,旨在为电影制作人和视频编辑人员提供高质量的颜色校正和调整工具。它为用户提供了一系列精心设计的色彩预设,旨在帮助摄影师在电影、电视和照片后期制作中快速实现专业且一致的色彩风格。这些预设…

自动化测试工具:提升软件质量的利器

🤍 前端开发工程师、技术日更博主、已过CET6 🍨 阿珊和她的猫_CSDN博客专家、23年度博客之星前端领域TOP1 🕠 牛客高级专题作者、打造专栏《前端面试必备》 、《2024面试高频手撕题》 🍚 蓝桥云课签约作者、上架课程《Vue.js 和 E…

网络编程套接字——实现简单的UDP网络程序

目录 1、预备知识 1.1、认识端口号 1.2、端口号 vs 进程pid 1.3、认识TCP协议 1.4、认识UDP协议 1.5、网络字节序 2、socket编程接口 2.1、socket常见API 2.2、sockaddr结构 3、实现一个简易的UDP服务器和客户端通信 log.hpp UdpServer.hpp UdpClient.cc Main.cc…

【Maven入门篇】(2)IDEA集成Maven环境的具体操作

🎊专栏【Maven入门篇】 🍔喜欢的诗句:更喜岷山千里雪 三军过后尽开颜。 🎆音乐分享【The truth that you leave】 🥰欢迎并且感谢大家指出我的问题 文章目录 🍔配置Maven环境⭐方法一(当前工程&…

EPICS和Arduino Uno之间基于串行文本协议的控制开发

Arduino Uno的串口服务程序设置如文本的串口通信协议设计以及在Arduino上的应用-CSDN博客中所示。通过在串口上发送约定的文本协议,它实现的功能如下: 实现功能: 读取三路0.0V~5.0V模拟量输入,读取端口A0~A2设置三路0.0V~5.0V的模…

光伏电站信息化管理系统如何优化能源管理

随着可再生能源的快速发展,光伏电站作为其中的重要组成部分,其运营管理面临着越来越多的挑战。为了提升光伏电站的能源管理效率,信息化管理系统成为了不可或缺的工具,那么如何优化能源管理呢? 1.数据实时监控 信息化管…