💥💥💞💞欢迎来到本博客❤️❤️💥💥
🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。
⛳️座右铭:行百里者,半于九十。
⛳️赠与读者
👨💻做科研,涉及到一个深在的思想系统,需要科研者逻辑缜密,踏实认真,但是不能只是努力,很多时候借力比努力更重要,然后还要有仰望星空的创新点和启发点。当哲学课上老师问你什么是科学,什么是电的时候,不要觉得这些问题搞笑。哲学是科学之母,哲学就是追究终极问题,寻找那些不言自明只有小孩子会问的但是你却回答不出来的问题。建议读者按目录次序逐一浏览,免得骤然跌入幽暗的迷宫找不到来时的路,它不足为你揭示全部问题的答案,但若能让人胸中升起一朵朵疑云,也未尝不会酿成晚霞斑斓的别一番景致,万一它居然给你带来了一场精神世界的苦雨,那就借机洗刷一下原来存放在那儿的“躺平”上的尘埃吧。
或许,雨过云收,神驰的天地更清朗.......🔎🔎🔎
💥1 概述
摘要:
基于强化学习(RL)的博弈论方法和模拟通常用于分析电力市场均衡。然而,前者仅限于信息完全的简单市场环境,难以直观地反映隐性合谋;而传统的RL算法仅限于低维离散状态和动作空间,并且收敛不稳定。为了解决上述问题,本文采用深度确定性策略梯度(DDPG)算法来模拟发电公司(GenCos)的竞价策略。包括GenCo、负载和网络的不同设置的仿真实验表明,所提出的方法比传统的RL算法更准确,即使在信息不完整的环境中,也可以收敛到完全信息的纳什均衡。此外,所提出的方法可以通过定量调整GenCos的耐心参数直观地反映不同的隐性合谋程度,这可以成为分析市场策略的有效手段。
本文旨在解决先前研究的局限性市场均衡建模方法。例如,博弈理论方法通常仅限于解决以下问题的NE完全信息静态博弈。尽管传统的RL算法可以动态模拟不完全信息的重复博弈,但仅限于低维离散状态/动作空间,收敛结果为不稳定。考虑到上述所有因素DDPG算法用于对GenCo代理进行建模,该算法使用DNN以提高性能并避免离散化状态/动作空间。使用拟议的方法进行模拟多种市场场景,包括不同的耐心设置基因组特性、不同数量的基因组和时变负载。模拟结果证明了通过与流行方法进行比较,提出的方法的有效性博弈论方法和传统RL方法。总之,本文的主要贡献是总结如下:
1)基于DDPG的电力市场仿真模型
提出了算法。使用DNN可以提高所提出的模型在处理高维连续数据方面的性能,从而避免状态/动作空间的离散化。
2)基于代理的建模的准确性和稳定性是显著改善。实验证明所提出的模型可以收敛到完全的NE
即使在信息不完整的环境中,也能获得信息。
3)提出了一种分析市场力量的方法。所提出的模型可以准确地模拟不同的通过定量调整投标人的耐心来设定投标水平该试剂可用于表征分析市场竞争,并分析潜在市场力量。
创新点:
-
我们创新性地构建了一个基于深度确定性策略梯度算法的电力市场仿真模型。该模型利用深度神经网络的优势,显著提升了处理高维连续数据的能力,从而避免了传统方法中状态/动作空间的离散化处理。
-
为了深入分析市场力量,我们提出了一种新方法。该方法通过灵活调整代理的等待时间参数,能够精确模拟不同竞价水平下的市场动态,进而有效表征市场竞争程度和潜在的市场力量。
主要工作内容:
在电力市场均衡分析领域,基于强化学习(RL)的博弈论方法和仿真技术得到了广泛应用。然而,这些方法存在局限性:基于博弈论的方法通常局限于信息完整的简单市场环境,难以直观揭示策略间的默契;而传统的RL算法则受限于低维离散状态和动作空间,导致收敛不稳定。
针对这些挑战,我们采用了深度确定性策略梯度(DDPG)算法对发电商的投标策略进行建模。通过一系列仿真实验,包括发电商、负载和网络的不同配置,我们验证了该方法相较于传统RL算法具有更高的准确性。即便在不完全信息环境下,该方法也能成功收敛到完全信息的纳什均衡。
此外,通过定量调整发电商的等待时间参数,该方法能够直观地展示不同默契合谋水平对市场的影响,为市场策略分析提供了有力工具。
算法训练过程简述:
在算法训练过程中,我们利用深度神经网络对发电商的投标策略进行建模,并通过DDPG算法进行优化。通过不断迭代训练,模型逐渐学习到如何在不同市场环境下制定最优投标策略。同时,我们利用仿真实验对模型的性能进行验证和评估,确保其在实际应用中的准确性和可靠性。

本文基于市场模拟模型提出了DDPG算法,并在3节点系统上进行了测试以及IEEE 30节点系统。实验结果表明所提出的模型可以收敛到完全的NE即使在信息不完整的环境中。收敛结果为相应阶段的NE当折扣系数较小时,游戏。相比之下当折扣系数接近时,结果变得默契勾结足以1。所提出的模型可以反映不同的竞争水平,并找出触发临界值通过定量调整折扣系数进行默示勾结,这可能是分析战略行为的有效手段市场参与者。当前多智能体DRL方法的一个开放问题是缺乏对它们趋同的理论认识物业。然而,我们的实验结果表明所提出的方法在一般情况下具有良好的收敛性。如果只有NE需要解决,博弈论方法具有完全信息仍然是首选。我们提出的方法可以被视为博弈论方法的补充,用于分析GenCos在不完全信息下的策略信息。未来的工作主要包括以下三个方向。首先,应用所提出的方法来比较水平不同市场模式下的竞争。第二个旨在增强GenCo代理的功能,例如参与多层次电力市场,实施负荷管理预测、自我调度和风险管理。第三个是将模型扩展到其他类型的市场参与者,例如零售商和消费者。
📚2 运行结果
2.1 文献结果


2.2 代码运行结果



- Python 3.7
- Pytorch 1.0.1
部分代码:
# 市场出清,考虑网络阻塞
def market_clearing(a_declare):
# 供给曲线的截距和斜率
a_real = np.array([18.0, 20.0, 25.0, 22.0, 22.0, 16.0])
b_real = np.array([0.25, 0.20, 0.20, 0.20, 0.20, 0.25])
# 需求曲线的截距和斜率
c_real = np.array([120.0, 130.0, 120.0, 135.0, 150.0, 95.0, 150.0, 125.0, 100.0, 150.0,
90.0, 95.0, 90.0, 90.0, 160.0, 120.0, 150.0, 100.0, 95.0, 125.0]) * -1
d_real = np.array([5.0, 5.5, 4.5, 5.0, 5.0, 3.0, 5.5, 4.0, 4.5, 5.0,
3.5, 3.5, 3.5, 3.5, 6.0, 5.0, 6.0, 4.5, 3.5, 4.5])
# 机组功率上下限
p_min = np.array([5.0, 5.0, 5.0, 5.0, 5.0, 5.0])
p_max = np.array([100.0, 80.0, 50.0, 80.0, 50.0, 120.0])
# 负荷需求上下限
q_min = np.zeros(20)
q_max = np.array([24.0, 23.63636364, 26.66666667, 27.0, 30.0,
31.66666667, 27.27272727, 31.25, 22.22222222, 30.0,
25.71428571, 27.14285714, 25.71428571, 25.71428571, 26.66666667,
24.0, 25.0, 22.22222222, 27.14285714, 27.77777778])
.....
plt.plot(strategic_variables[:, 0], lw=0.5, C=C[0], alpha=0.5, label=r"$\alpha_{1t}$")
plt.plot(strategic_variables[:, 1], lw=0.5, C=C[1], alpha=0.5, label=r"$\alpha_{2t}$")
plt.plot([0, 10000], [20.29, 20.29], '--', C=C[0], label=r"$\alpha_{1t}^\ast$")
plt.plot([0, 10000], [22.98, 22.98], '--', C=C[1], label=r"$\alpha_{2t}^\ast$")
plt.xlabel(r"$t$")
plt.ylabel(r"$\alpha_{gt}$ (\$/MHh)")
plt.title("Q-Learning (3-Bus System)")
plt.legend()
plt.savefig('Q-Learning.png', dpi=600)
plt.show()
🎉3 参考文献
文章中一些内容引自网络,会注明出处或引用为参考文献,难免有未尽之处,如有不妥,请随时联系删除。(文章内容仅供参考,具体效果以运行结果为准)
🌈4 Python代码、数据、文章
资料获取,更多粉丝福利,MATLAB|Simulink|Python资源获取

983

被折叠的 条评论
为什么被折叠?



