lollcat / DistillationTrain-Gym

Deep reinforcement learning for design of distillation column trains (chemical engineering process synthesis)

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Distillation-Gym

  • See paper for complete description, also available at https://arxiv.org/abs/2009.13265
  • Designing chemical engineering distillation processes with reinforcement learning
  • Using COCO simulator and ChemSep for Simulation
  • To run the agent, try this file and see details in "About this repo" at the bottom of this page
  • See repository and report here which this work builds upon. This repository contains a simpler illustrative example of RL for chemical engineering process synthesis, with a colab notebook that can be run in your browser.

Abstract

This paper demonstrates the application of reinforcement learning (RL) to process synthesis by presenting Distillation Gym, a set of RL environments in which an RL agent is tasked with designing a distillation train, given a user defined multi-component feed stream. Distillation Gym interfaces with a process simulator (COCO and ChemSep) to simulate the environment. A demonstration of two distillation problem examples are discussed in this paper (a Benzene, Toluene, P-xylene separation problem and a hydrocarbon separation problem), in which a deep RL agent is successfully able to learn within Distillation Gym to produce reasonable designs. Finally, this paper proposes the creation of Chemical Engineering Gym, an all-purpose reinforcement learning software toolkit for chemical engineering process synthesis.

Agents

  • Soft Actor Critic (SAC) - this is the main agent that was used
  • Deep Deterministic Policy Gradient (DDPG)

Example Problems

Distillation-Gym can be applied to any initial starting stream component selection and composition. The following examples are given:

Benzene Toluene p-Xylene (taken from ChemSep Examples)

alt text

Hydrocarbon Distillation

Agent is able to design sequence that achieves much higher revenue (through good recovery) than cost
alt text

About this Repo

The important folders are:

  • Env: Contains the RL environment (where python and COCO simulator speak using the COM interface)
  • SAC: The main agent
  • Utils: Some useful extra stuff (e.g. BFD generator)\

The other folders and files are just playing around with some other stuff (e.g. DDPG agent)
See requirements.txt for required packages
Both COCO and ChemSep need to be installed: To install these go to https://www.cocosimulator.org/index_download.html

To cite please use:

@article{midgley2020deep, title={Deep Reinforcement Learning for Process Synthesis}, author={Midgley, Laurence Illing}, journal={arXiv preprint arXiv:2009.13265}, year={2020} }

About

Deep reinforcement learning for design of distillation column trains (chemical engineering process synthesis)


Languages

Language:Python 100.0%