five

PC-Gym

收藏
arXiv2024-10-30 更新2024-10-31 收录
下载链接:
https://github.com/MaximilianB2/pc-gym
下载链接
链接失效反馈
官方服务:
资源简介:
PC-Gym是由帝国理工学院开发的用于化学过程控制问题的强化学习算法评估的开源工具。该数据集包含多个模拟化学过程的环境,涉及非线性动力学、扰动和约束条件。数据集提供了自定义的约束处理、扰动生成和奖励函数设计功能,旨在加速机器学习与过程系统工程交叉领域的研究。PC-Gym通过提供标准化的平台,连接理论强化学习进展与实际工业过程控制应用,为研究人员提供了一个探索数据驱动控制解决方案的工具。

PC-Gym is an open-source tool developed by Imperial College London for evaluating reinforcement learning algorithms in chemical process control tasks. This dataset features multiple environments that simulate chemical processes, incorporating nonlinear dynamics, disturbances, and operational constraints. It offers customizable functionalities for constraint handling, disturbance generation, and reward function design, with the goal of accelerating research at the intersection of machine learning and process systems engineering. PC-Gym provides researchers with a standardized platform that bridges theoretical advancements in reinforcement learning and real-world industrial process control applications, serving as a practical tool for exploring data-driven control solutions.
提供机构:
帝国理工学院
创建时间:
2024-10-29
原始信息汇总

pc-gym 数据集概述

数据集简介

pc-gym 是一个用于过程控制强化学习的环境集合。它提供了多个模拟环境,用于训练和测试强化学习算法在过程控制中的应用。

快速开始

以下是一个简单的示例代码,展示了如何设置一个连续搅拌反应器(CSTR)环境,并进行模拟:

python import pcgym

模拟变量

nsteps = 100 T = 25

设定点

SP = {Ca: [0.85 for i in range(int(nsteps/2))] + [0.9 for i in range(int(nsteps/2))]}

动作和观测空间

action_space = {low: np.array([295]), high: np.array([302])} observation_space = {low: np.array([0.7,300,0.8]),high: np.array([1,350,0.9])}

构建环境参数字典

env_params = { N: nsteps, # 时间步数 tsim:T, # 模拟时间 SP :SP, o_space : observation_space, a_space : action_space, x0: np.array([0.8, 330, 0.8]), # 初始条件 [Ca, T, Ca_SP] model: cstr_ode, # 选择模型 }

创建环境

env = pcgym.make_env(env_params)

重置环境

obs, state = env.reset()

采样一个随机动作

action = env.action_space.sample()

在环境中执行一步

obs, rew, done, term, info = env.step(action)

文档

完整的文档可以在 这里 找到。

安装

可以通过 PyPI 安装最新版本的 pc-gym:

bash pip install pcgym

示例

示例笔记本包含了训练演练、实现约束、干扰和策略评估工具的示例,可以在 这里 找到。

实现的过程控制环境

环境名称 参考文献 源代码 文档
CSTR Hedengren, 2022 Source
一阶系统 N/A Source
多级萃取柱 Ingham et al, 2007 (pg 471) Source
非光滑控制 Lim,1969 Source

引用

如果在研究中使用了 pc-gym,请使用以下引用:

@software{pcgym2024, author = {Max Bloor and Jose Neto and Ilya Sandoval and Max Mowbray and Akhil Ahmed and Mehmet Mercangoz and Calvin Tsay and Antonio Del Rio-Chanona}, title = {{pc-gym}: Reinforcement Learning Environments for Process Control}, url = {https://github.com/MaximilianB2/pc-gym}, version = {0.1.6}, year = {2024}, }

搜集汇总
数据集介绍
main_image_url
构建方式
PC-Gym 是一个开源工具,旨在促进强化学习(RL)算法在化学过程控制问题中的开发和评估。它提供了一系列模拟化学过程的环境,这些环境包含了非线性动态、过程扰动和约束条件。数据集的构建方式包括灵活的约束处理机制、可定制的扰动生成以及模块化的奖励函数设计。该框架允许对最先进的 RL 算法进行基准测试,将其与非线性模型预测控制(NMPC)进行比较,并在各种过程控制场景中进行评估。
特点
PC-Gym 的特点在于其能够模拟多种化学过程,包括连续搅拌反应器、多级萃取过程和结晶反应器。它提供了灵活的约束处理机制,允许研究人员测试算法在各种扰动下的鲁棒性。此外,PC-Gym 还提供了政策可视化和评估工具,便于分析和解释算法行为。通过提供一系列化学过程控制场景、扰动和约束生成能力,PC-Gym 成为研究人员和从业者的宝贵资源。
使用方法
PC-Gym 的使用方法包括定义环境参数、选择模型规范、时间步长、设定点和约束条件。用户可以通过 make_env.py 模块创建环境,并使用 Gymnasium 接口的标准方法(如 .reset() 和 .step())进行初始化和推进模拟。PC-Gym 的模块化设计允许用户轻松实现自定义环境,并将其集成到现有的 RL 工作流程中。此外,PC-Gym 还提供了政策评估工具,使用性能和分散度指标来评估训练策略的性能。
背景与挑战
背景概述
PC-Gym,由帝国理工学院化学工程系开发,是一个开源工具,旨在促进强化学习(RL)算法在化学过程控制问题中的开发和评估。该工具提供了一系列模拟化学过程的环境,这些环境包含了非线性动态、过程扰动和约束条件。PC-Gym的核心功能包括灵活的约束处理机制、可定制的扰动生成和模块化的奖励函数设计。通过提供一个标准化的平台,PC-Gym旨在加速机器学习与过程系统工程交叉领域的研究,填补了RL理论进展与工业过程控制实际应用之间的空白。
当前挑战
PC-Gym面临的挑战主要集中在处理化学过程的复杂性和不确定性上。化学过程通常涉及多个相互作用的变量、非线性行为和时变参数,这使得使用标准RL技术进行控制变得尤为困难。此外,化学过程往往受到严格的安全、环境和经济约束,这些约束必须在控制策略中得到仔细考虑。违反这些约束可能导致严重的后果,如设备损坏、产品质量下降甚至人身伤害。因此,如何在满足这些约束的同时,有效地训练和评估RL算法,是PC-Gym需要解决的关键问题。
常用场景
经典使用场景
PC-Gym 在化学过程控制问题中提供了一个开放源代码工具,旨在促进强化学习(RL)算法的发展和评估。它包含了一系列模拟化学过程的环境,这些环境考虑了非线性动态、过程扰动和约束条件。PC-Gym 的关键特性包括灵活的约束处理机制、可定制的扰动生成和模块化的奖励函数设计。该框架使得在各种过程控制场景中,能够对最先进的 RL 算法与非线性模型预测控制(NMPC)进行基准测试。
实际应用
PC-Gym 在实际应用中为研究人员和从业者提供了一个有价值的工具,用于探索复杂化学过程的数据驱动控制解决方案。通过提供化学过程控制场景、扰动和约束生成功能以及策略可视化和评估工具,PC-Gym 成为了一个宝贵的资源。它不仅能够评估 RL 算法在处理现实扰动和约束方面的鲁棒性,还能通过与 NMPC 的比较,展示 RL 算法在过程控制中的实用性和改进潜力。
衍生相关工作
PC-Gym 的开发和应用催生了一系列相关工作,特别是在化学过程控制领域。例如,早期应用 RL 于化学过程控制的工作主要集中在模型无关的跟踪控制和优化上。此外,一些研究探索了将控制结构(如比例-积分-微分控制器)与 RL 算法结合,以提高算法的可扩展性和样本效率。这些工作都依赖于创建离散控制环境,这激发了其他科学社区创建开源可访问环境的兴趣。
以上内容由遇见数据集搜集并总结生成
5,000+
优质数据集
54 个
任务类型
进入经典数据集
二维码
社区交流群

面向社区/商业的数据集话题

二维码
科研交流群

面向高校/科研机构的开源数据集话题

数据驱动未来

携手共赢发展

商业合作