💥💥💞💞欢迎来到本博客❤️❤️💥💥
🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。
⛳️座右铭:行百里者,半于九十。
📋📋📋本文目录如下:🎁🎁🎁
目录
⛳️赠与读者
👨💻做科研,涉及到一个深在的思想系统,需要科研者逻辑缜密,踏实认真,但是不能只是努力,很多时候借力比努力更重要,然后还要有仰望星空的创新点和启发点。当哲学课上老师问你什么是科学,什么是电的时候,不要觉得这些问题搞笑。哲学是科学之母,哲学就是追究终极问题,寻找那些不言自明只有小孩子会问的但是你却回答不出来的问题。建议读者按目录次序逐一浏览,免得骤然跌入幽暗的迷宫找不到来时的路,它不足为你揭示全部问题的答案,但若能让人胸中升起一朵朵疑云,也未尝不会酿成晚霞斑斓的别一番景致,万一它居然给你带来了一场精神世界的苦雨,那就借机洗刷一下原来存放在那儿的“躺平”上的尘埃吧。
或许,雨过云收,神驰的天地更清朗.......🔎🔎🔎
💥1 概述
参考文献:
摘要:
基于强化学习(RL)的博弈论方法和模拟通常用于分析电力市场均衡。然而,前者仅限于信息完全的简单市场环境,难以直观地反映隐性合谋;而传统的RL算法仅限于低维离散状态和动作空间,并且收敛不稳定。为了解决上述问题,本文采用深度确定性策略梯度(DDPG)算法来模拟发电公司(GenCos)的竞价策略。包括GenCo、负载和网络的不同设置的仿真实验表明,所提出的方法比传统的RL算法更准确,即使在信息不完整的环境中,也可以收敛到完全信息的纳什均衡。此外,所提出的方法可以通过定量调整GenCos的耐心参数直观地反映不同的隐性合谋程度,这可以成为分析市场策略的有效手段。
创新点:
-
我们创新性地构建了一个基于深度确定性策略梯度算法的电力市场仿真模型。该模型利用深度神经网络的优势,显著提升了处理高维连续数据的能力,从而避免了传统方法中状态/动作空间的离散化处理。
-
为了深入分析市场力量,我们提出了一种新方法。该方法通过灵活调整代理的等待时间参数,能够精确模拟不同竞价水平下的市场动态,进而有效表征市场竞争程度和潜在的市场力量。
主要工作内容:
在电力市场均衡分析领域,基于强化学习(RL)的博弈论方法和仿真技术得到了广泛应用。然而,这些方法存在局限性:基于博弈论的方法通常局限于信息完整的简单市场环境,难以直观揭示策略间的默契;而传统的RL算法则受限于低维离散状态和动作空间,导致收敛不稳定。
针对这些挑战,我们采用了深度确定性策略梯度(DDPG)算法对发电商的投标策略进行建模。通过一系列仿真实验,包括发电商、负载和网络的不同配置,我们验证了该方法相较于传统RL算法具有更高的准确性。即便在不完全信息环境下,该方法也能成功收敛到完全信息的纳什均衡。
此外,通过定量调整发电商的等待时间参数,该方法能够直观地展示不同默契合谋水平对市场的影响,为市场策略分析提供了有力工具。
算法训练过程简述:
在算法训练过程中,我们利用深度神经网络对发电商的投标策略进行建模,并通过DDPG算法进行优化。通过不断迭代训练,模型逐渐学习到如何在不同市场环境下制定最优投标策略。同时,我们利用仿真实验对模型的性能进行验证和评估,确保其在实际应用中的准确性和可靠性。
📚2 运行结果
2.1 文献结果
2.2 代码运行结果
部分代码:
n_agents = 2action_space = np.arange(0, 3.1, 0.2)
n_steps = 10000a_real = np.array([15.0, 18.0])
obs = 5strategic_variables = np.zeros((n_steps, n_agents))
multi_agents = QLearningAgents(n_agents, action_space)
action = multi_agents.select_action(str(obs))
lpha = action * a_real
nodal_price, profit = market_clearing(alpha)
strategic_variables[step] = alpha
mean_price = nodal_price.mean()
obs_ = mean_price // 10
multi_agents.learn(str(obs), action, profit, str(next_obs))
print('Step:', step + 1, 'a1: %.2f' % alpha[0], 'a2: %.2f' % alpha[1],
'r1: %.3f' % profit[0], 'r2: %.3f' % profit[1])
C = np.array([[0.36, 0.58, 0.75],[0.92, 0.28, 0.29]])
plt.plot(strategic_variables[:, 0], lw=0.5, color=C[0], alpha=0.5, label=r"$\alpha_{1t}$")
plt.plot(strategic_variables[:, 1], lw=0.5, color=C[1], alpha=0.5, label=r"$\alpha_{2t}$")
plt.plot([0, 10000], [20.29, 20.29], '--', color=C[0], label=r"$\alpha_{1t}^\ast$")
plt.plot([0, 10000], [22.98, 22.98], '--', color=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 参考文献
文章中一些内容引自网络,会注明出处或引用为参考文献,难免有未尽之处,如有不妥,请随时联系删除。(文章内容仅供参考,具体效果以运行结果为准)
Y. Liang, C. Guo, Z. Ding and H. Hua, "Agent-Based Modeling in Electricity Market Using Deep Deterministic Policy Gradient Algorithm," in IEEE Transactions on Power Systems, vol. 35, no. 6, pp. 4180-4192, Nov. 2020.
🌈4 Matlab代码实现
资料获取,更多粉丝福利,MATLAB|Simulink|Python资源获取