没有合适的资源?快使用搜索试试~ 我知道了~
软件影响9(2021)100092原始软件出版物Gym-ANM:开源软件,用于在研究和教育罗宾·亨利a,达明安·恩斯特ba工程学院,Sanderson Building,The University of Edinburgh,Edinburgh,EH9 3FB,UKb比利时列日大学蒙蒂菲奥雷学院电气工程和计算机科学系,B-4000列日,A R T I C L E I N F O保留字:Gym-ANM强化学习主动网络管理配电网可再生能源A B标准Gym-ANM是一个Python包,用于设计强化学习(RL)环境,对电力网络中的主动网络管理(ANM)任务进行建模。在这里,我们描述了如何实现新的环境,以及如何编写代码来与已有的环境进行交互。我们还提供了ANM 6-Easy的概述,这是一个旨在突出常见ANM挑战的环境。最后,我们讨论了Gym-ANM对科学界的潜在影响,包括研究和教育方面。我们希望这个包将促进电力系统和RL社区之间的合作,以寻找控制未来能源系统的算法。代码元数据当前代码版本1.0.1用于此代码版本的代码/存储库的永久链接https://github.com/SoftwareImpacts/SIMPAC-2021-56可再生胶囊的永久链接https://codeocean.com/capsule/2156962/tree/v1法律代码许可证MIT许可证(MIT)使用git的代码版本控制系统使用Python、JavaScript的软件代码语言、工具和服务编译要求,操作环境依赖Python 3.7如果可用,链接到开发人员文档/手册https://gym-anm.readthedocs.io/en/latest/问题支持电子邮件robin@robinxhenry.com1. 介绍配电网的主动网络管理(ANM)是为了特定目的(例如,最大限度地降低运行成本,将电压和电流保持在运行限制范围内)[1]。现代化随着分布式可再生能源和存储设备的增加,配电网络的变化正在发生。这种向可持续能源系统过渡的尝试使配电网络运营商(DNO)面临许多新的复杂ANM问题(过电压、输电线路拥塞、电压协调、投资问题等)。[2]的文件。越来越多的人相信,强化学习(RL)算法有可能比传统的优化方法更有效地解决这些复杂的ANM挑战。这种乐观情绪源于RL方法已成功并广泛应用于具有类似困难决策问题的广泛领域,包括游戏[3本文中的代码(和数据)已由Code Ocean认证为可复制:(https://codeocean.com/)。更多关于生殖器的信息徽章倡议可在https://www.elsevier.com/physical-sciences-and-engineering/computer-science/journals上查阅。∗ 通讯作者。电子邮件地址:robin@robinxhenry.com(R. Henry),dernst@uliege.be(D. Ernst)。https://doi.org/10.1016/j.simpa.2021.100092接收于2021年5月18日;接受于2021年5月27日2665-9638/©2021作者。由Elsevier B.V.出版。这是一篇开放获取的文章,使用CC BY许可证(http://creativecommons.org/licenses/by/4.0/)。可在ScienceDirect上获得目录列表软件影响杂志 首页:www.journals.elsevier.com/software-impactsR.亨利和D。Ernst软件影响9(2021)1000922游戏、机器人技术和自动驾驶都有什么共同点 做出决定的环境 可以使用开源软件模拟器有效地复制。此外,这些软件库通常提供为RL研究编写代码而定制的接口。因此,这些软件包的可用性使RL研究人员更容易将其算法应用于这些领域的决策问题,而无需首先深入了解其代理交互的环境的底层动态。简而言之,我们相信,如果开源软件模拟器可以对ANM相关问题进行建模并提供支持,那么与ANM相关的问题将受益于RL社区的类似关注。一个用于编写RL研究代码的简单界面。 考虑到这一点,我们设计了Gym-ANM,这是一个开源的Python包,它有助于设计和实现对ANM任务建模的RL环境[14]。它的主要特点,使其区别于传统的电力系统建模软件(例如,[15],pandapower [16])是:• 在电力系统建模的背景很少是必需的,因为大多数复杂的动态是抽象远离用户。• 使用Gym-ANM构建的环境(任务)遵循Ope- nAI Gym接口[17],其中大部分RL社区已经熟悉。• Gym-ANM的灵活性及其不同的可定制组件使其成为一个合适的框架,可以对各种ANM任务进行建模,从可用于教育目的的简单任务到旨在进行高级研究的复杂任务。最后,作为可以使用Gym-ANM构建的环境类型的示例,我们还发布了ANM 6-Easy,这是一个突出6总线配电网络中常见ANM挑战Gym-ANM框架和ANM 6-Easy环境,包括详细的数学公式,之前在[14]中介绍过。在这里,我们的目标是提供一个简短的实用指南,使用该软件包,并讨论它可能对研究界的影响。2. Gym-ANM软件包Gym-ANM包被设计用于两个特定的用例。首先是设计新的环境(ANM任务),这需要编写代码来模拟连接到电网的每个设备的发电和需求曲线(第2.1节)。 第二个用例是在现有环境中训练RL算法(第2.2节)。2.1. 设计Gym-ANM环境Gym-ANM环境的内部结构如图所示。1.一、在每一个时间步,智能体都向环境传递一个动作请求。��� 后者通过调用next_vars()函数,然后将其与PHP一起用于模拟���分配网络和过渡到一个新的状态���+1。最后environment������������通过observation()和reward()函数输出观察向量+1和奖励。电力系统建模的核心是在next_state()调用中从用户那里抽象出来的。灰色块next_vars()和observation()是设计新Gym-ANM环境时唯一完全可自定义的组件在实践中,新的环境是通过实现ANMEnv的一个子类来创建的.清单1显示了要遵循的通用模板。 更详细的描述以及示例可以在附图中找到在线文档。11https://gym-anm.readthedocs.io/en/latest/topics/design_new_env.html。2.2. 使用Gym-ANM环境一个代码片段说明了如何将自定义Gym-ANM环境与RL代理实现一起使用,如清单2. 请注意,为了清楚起见,这个例子省略了代理学习过程。由于Gym-ANM是建立在Gym工具包之上的,所有Gym-ANM环境都提供与传统Gym环境相同的界面,如其在线文档中所述23. 示例:ANM 6-Easy环境ANM 6-Easy是我们发布的第一个Gym-ANM环境[14]。它模拟了一个6总线网络,旨在突出网络运营商面临的一些最常见的ANM挑战。显示了环境渲染的屏幕截图图二、为了限制任务的复杂性,环境被设计为完全确定性的:负载的需求(1:住宅区,3:工业综合体,5:电动汽车充电车库)和可再生能源的最大发电量(限电前)曲线(2:太阳能发电场,4:风力发电场)都被建模为固定的24小时时间序列,每天重复,无限期。有关ANM 6-Easy环境的更多信息,请参阅在线文档。34. 研究和教育影响许多软件应用程序都可以用于工业环境中的稳态电力系统建模,例如 PowerFactory [18] , ERACS [19] , ETAP [20] , IPSA [21] 和PowerWorld [22],所有这些都需要付费许可证。此外,这些程序并不适合进行RL研究,因为它们不能很好地与RL社区最常用的两种编程语言(MATLAB和Python)集成。在不需要额外许可证且与这些编程语言兼容的电力系统软件包中,电力系统管理研究中常用的有MATPOWER(MATLAB)[15]、PSAT(MATLAB)[23]、PY-POWER ( MATPOWER 的 Python 接 口 ) [24] 和 pandapower(Python)[16]。然而,使用上述软件库来设计模拟ANM任务的RL环境并不理想。首先,用户需要熟悉库的建模语言,这已经要求很好地理解组成电力系统的各种组件的内部工作原理及其相互作用。其次,这些软件包通常包括大量的高级功能,这很可能会让没有经验的用户不知所措,in theway of designing设计even simple简单ANM ANM的scenarios方案. 第三,因为这些库被设计为促进广泛的模拟和分析,所以它们通常以更慢地解决更简单的问题为代价(例如,简单AC负载流)。第四,在没有一个编程框架的RL研究社区有兴趣解决能源系统管理问题,各种研究团队可能会花费时间和资源来实现相同的基本动态共同所有这些问题。通过发布Gym-ANM,我们希望解决上一段中描述的传统建模包的所有缺点。具体而言:• 环境的设计(第2.1节)和RL代理的训练(第2.2节)之间的分离鼓励了在电力系统建模和RL算法方面经验丰富的研究人员之间的合作。由于Gym-ANM提供的通用框架,每个研究人员都可以专注于他们的特定专业领域(设计或解决环境),而不必担心协调他们的实现。2 https://gym.openai.com/docs/。3https://gym-anm.readthedocs.io/en/latest/topics/anm6_easy.html。R.亨利和D。Ernst软件影响9(2021)1000923fromgym_anmimportANMEnvclasCustomEironment(ANMEnv):def__init__(self):network={“baseMVA”:. . ,'bus':.. . 、'device':.. . ,'branch':. }# 功率网格规格observation=.. .#observicevationspaceK=.. .#numberofauxiliaryvariablesdelta_t=.. .#timestepintervalsgamma=.. .#discountfactorlamb=. . .#penaltyhyperparameteraux_bounds=. . .#boundsonauxiliaryvariablecosts_clipping=. . .#rewardclippingparametersseed =. #随机种子supeper(). __init__(network,observation,K,delta_t,gamma,lamb,aux_bounds,costs_clipping,seed)#Returnanitialstevector���0���0()。defi n i t _state(self):...#重新设置新的xts,以使其具有可访问性。defnext_vars(self,s_t):...#恢复业务服务器空间的备份。defobservation_bounds(self):#optional...Fig. 1. Gym-ANM环境的内部结构。来源:摘自[14]。清单1:新Gym-ANM环境的实现模板。• 这种分离也意味着RL研究人员能够解决Gym-ANM环境建模的ANM任务,而无需首先了解系统的复杂动力学。因此,现有的Gym-ANM环境可以被RL社区中的许多人探索,从新手到有经验的研究人员。所有Gym-ANM环境都实现了Gym接口,这使得RL用户可以将自己的算法应用于任何Gym-ANM任务,只需很少的代码修改(假设他们过去使用过Gym)。• Gym-ANM专注于ANM问题的特定子集。这种特异性有两个优点。首先,它简化了设计新环境的过程,因为用户只需要实现几个组件。 第二,在执行一揽子计划期间,它使我们能够专注于简单和速度。也就是说,我们没有像大多数其他软件包那 样 提 供 大 范 围 的 建 模 功 能 , 而 是 专 注 于 优 化 图 1 的next_state()块后面的计算步骤(即,求解AC负载流)。这有效地减少了在Gym-ANM构建的环境Gym-ANM可用于电力系统建模和RL社区的简单性具有额外的优势:它是一个很好的教学工具。这对于那些对电力系统管理和RL研究的交叉点感兴趣的人来说尤其如此。作者之一Damien Ernst最近开始将ANM 6-Easy任务纳入他在列日大学的RL课程“复杂系统的最优决策”中。R.亨利和D。Ernst软件影响9(2021)1000924env= gym.make(' M y AN M E n v ')# Init i a liz e t h e n v i r o n m e n t.bs= env. resett()#Resettthenv.并将其冷却至���0。对于inrangge(1,T):en. r_end_r()#你把这个r_end_r设置成一个字符串。a= agent。act(obs)#Agentakes������ 这������是一个很好的选择。obs,r,done,info = env.step(a)#Theheactionshoes��� 这是一个PPLIED,并记录了输出:#-oBs:新的B服务器版本 号+1,���#-r:thereward(,,+1),���������������#-done:如果Truei=1,������#-info:extrainfoabuthetransitin。清单2: 说明环境-代理交互的Python代码片段[14]。图二. ANM 6-Easy Gym-ANM环境。来源:摘自[14]。最后,我们还比较了软行动者-批评者(SAC)和近端策略优化(PPO)RL算法与最优模型预测控制(MPC)策略在ANM 6- Easy任务上的性能[14]。我们发现,几乎没有超参数调整,RL策略已经能够达到接近最优的性能。这些结果表明,最先进的强化学习方法有可能与配电网络管理中的传统优化方法竞争,甚至优于传统优化方法。 当然,ANM6-Easy只是一个玩具例子,要证实这一假设需要设计更复杂和更先进的Gym-ANM环境。5. 结论和今后的工作在本文中,我们讨论了在[14]中首次介绍的Gym-ANM软件包的使用,以及它对研究社区的潜在影响。我们创建了Gym-ANM作为RL和能源系统管理社区合作解决配电网络中ANM问题的框架。 因此,我们希望为RL技术的应用提供动力,以应对减缓向更可持续能源系统过渡的挑战。在未来,我们计划设计和发布Gym-ANM环境,与ANM 6-Easy相比,它更准确地模拟真实世界的分销网络。然而,我们也非常鼓励其他团队设计和发布他们自己的Gym-ANM任务和/或尝试解决现有的任务。竞合利益作者声明,他们没有已知的竞争性财务利益或个人关系,可能会影响本文报告的工作致谢我 们 要 感 谢 列 日 大 学 的 Raphael Fonteneau 、 Quentin Gemine 和Sébastien Mathieu 提 供 的 宝 贵 的 早 期 反 馈 和 建 议 , 以 及 GaspardLambrechts和Bardhyl Miftari作为Gym-ANM的第一批用户提供的反馈引用[1]S.吉尔岛Kockar,G.W.刘文,配电网动态最优潮流计算,电 力 工 程 学报。电源系统29(1)(2013)121R.亨利和D。Ernst软件影响9(2021)1000925[2] J.McDonald , Adaptiveintelligentpowersystems : Activedistribution networks,Energy Policy 36(12)(2008)4346-4351。[3]V.姆尼赫,K.卡武克库奥卢D. Silver,黑胫拟天蛾A.格雷夫斯岛Antonoglou,D.Wierstra,M. Riedmiller,Playing atari with deep reinforcement learning,2013,arXiv preprintarXiv:1312.5602.[4]V.姆尼赫,K.卡武克库奥卢D.银,A.A.首页-期刊主要分类-期刊细介绍贝勒马尔A. 格雷夫斯,M。里德米勒公司菲杰兰湾Ostrovski等人,通过深度强化学习实现人类水平的控制,Nature 518(7540)(2015)529-533。[5]D. Silver , 黑 胫 拟 天 蛾 A. 作 者 : Huang , C.J. 盖 兹 湖 Sifre , G. Van DenDriessche,J. 施里特维泽岛作者:王志华Lanctot等人,Masteringthe gameof go with deep neural networks and tree search , Nature 529 ( 7587 )(2016)484.[6]O.维尼亚尔斯岛巴布施金恰尔内茨基湾Mathieu,A. Dudzik,J. Chung,D. H.崔河,巴西-地鲍威尔,T. Ewalds,P. Georgiev等人,星际争霸II中的大师级使用多智能体强化学习,Nature 575(7782)(2019)350-354。[7]M.P. Deisenroth,G. Neumann,J. Peters等人,一项关于机器人技术政策研究的调查, 发现。趋势机器人2(1[8]P. Kormushev , S. 卡 利 农 Caldwell , Reinforcement learning in robotics :Applicationsand real-world challenges,Robotics 2(3)(2013)122-148。[9] J.Kober , J.A. Bagnell , J. Peters , Reinforcement learning in robotics : Asurvey,Int.J. Robot。第32(11)(2013)号决议第1238[10] S. Gu , E. 霍 利 , T. 利 利 克 莱 普 S 。 Levine , Deep reinforcement learning forroboticmanipulationwithasynchronousoff-policyupdates , 2017IEEEInternationalConferenceon Robotics and Automation(ICRA),IEEE,2017,pp.3389-3396。[11] A.E. 萨 拉 布 湾 Abdou , E. Perot , S. Yogamani , Deep ReinforcementLearningFrameworkfor Autonomous Driving,Electronic。影像学 2017(19)(2017)70[12] M. O'Kelly,A. Sinha,H.南孔河Tedrake,J.C. Duchi,通过罕见事件模拟进行可扩展的端到端自动驾驶汽车测试,在:神经信息处理系统的进展,2018年,第10页。9827-9838。[13] D. Li , D. 赵 , 英 - 地 Zhang , Y. Chen , Reinforcement learning and deeplearningbased lateral control for autonomous driving [application notes], IEEEComput. 内特尔Magaz 14(2)(2019)83-98。[14] R. Henry,D. Ernst,Gym-ANM:配电系统中主动网络管理任务的强化学习环境,2021,arXiv预印本arXiv:2103.07932。[15] R.D. Zimmerman,C.E. Murillo-Sánchez,R. J. Thomas,MATPOWER:稳定- 状态操作,规划,电力系统研究和教育的分析工具,IEEE Trans. 电源系统26(1)(2010)12[16] L. Thurner,A. Scheidler,F. Schäfer,J.Menke,J.Dollichon,F.迈耶,S。Meinecke,M.Braun,Pandapower-一种用于方便建模、分析和优化电力系统的 开 源 Python 工 具 , IEEE Trans. Power Syst. 33 ( 6 ) ( 2018 ) 6510http://dx.doi.org/10.1109/TPWRS.2018。 2829021[17] G.作者:A. Pettersson,J.Schneider,J.Schulman,J.Tang,W. Zaremba,Openai gym,2016,arXiv preprintarXiv:1606.01540.[18] F.M. Gonzalez-Longatt , J.L.Rueda, PowerFactory 应 用 于 电 力 系 统 分 析 ,Springer,2014年。[19] H.兰利,K。Wright,ERACS--一个用于PC机的综合软件包,在:IEE交互式图形电力系统分析程序座谈会,IET,1992,p. 3/1-3/7。[20] K.布朗角,澳-地Shokooh,H. Abcede,G.电力系统的交互式仿真:ETAP应用和技术,在:1990年IEEE工业应用协会年会会 议 记 录 ,IEEE,1990年,第 100 页。1930-1941年。[21] TNEI,交互式电力系统分析(IPSA)软件,https://www.ipsa-power.com,(于2021年5月12日访问)。[22] PowerWorldCorporation,PowerWorldsoftware,https://www.powerworld.com,(访问日期:2021年5月12日)。[23] F.李国忠,电力系统分析工具箱,电力系统学报,2005年第3期,第1199-1206页。[24] R. Lincoln,PYPOWER library,https://github.com/rwl/PYPOWER,(于2021年5月12日访问)。[25] D.Ernst , 大 学 复 杂 问 题 的 最 优 决 策 课 程 -列 日 市 ,http://blogs.ulg.ac.be/damien-ernst/info8003-1-optimal-decision-making-for-complex-problems,(访问日期:2021年5月13日)。
下载后可阅读完整内容,剩余1页未读,立即下载
cpongm
- 粉丝: 5
- 资源: 2万+
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 黑板风格计算机毕业答辩PPT模板下载
- CodeSandbox实现ListView快速创建指南
- Node.js脚本实现WXR文件到Postgres数据库帖子导入
- 清新简约创意三角毕业论文答辩PPT模板
- DISCORD-JS-CRUD:提升 Discord 机器人开发体验
- Node.js v4.3.2版本Linux ARM64平台运行时环境发布
- SQLight:C++11编写的轻量级MySQL客户端
- 计算机专业毕业论文答辩PPT模板
- Wireshark网络抓包工具的使用与数据包解析
- Wild Match Map: JavaScript中实现通配符映射与事件绑定
- 毕业答辩利器:蝶恋花毕业设计PPT模板
- Node.js深度解析:高性能Web服务器与实时应用构建
- 掌握深度图技术:游戏开发中的绚丽应用案例
- Dart语言的HTTP扩展包功能详解
- MoonMaker: 投资组合加固神器,助力$GME投资者登月
- 计算机毕业设计答辩PPT模板下载
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功