Skip to content

SamuelMallick/mpcrl-greenhouse

Repository files navigation

Reinforcement Learning-Based Model Predicitive Control for Greenhouse Climate Control

Source Code License Python 3.11 Code style: black

This repository contains the source code used to produce the results obtained in Reinforcement Learning-Based Model Predicitive Control for Greenhouse Climate Control submitted to Computers and Electronics in Agriculture.

In this work we propose an integrated model predictive control and reinforcement learning approach for greenhouse climate control.

If you find the paper or this repository helpful in your publications, please consider citing it.

@article{mallick2023multi,
  title = {Reinforcement Learning-Based Model Predicitive Control for Greenhouse Climate Control},
  author = {Mallick, Samuel and Airaldi, Filippo and Dabiri, Azita and Sun, Congcong and De Schutter, Bart},
  journal={arXiv preprint arXiv:2409.12789},
  year = {2024},
  url = {https://arxiv.org/abs/2409.12789}
}

Installation

The code was created with Python 3.11. To access it, clone the repository

git clone https://github.com/SamuelMallick/mpcrl-greenhouse
cd mpcrl-greenhouse

and then install the required packages by, e.g., running

pip install -r requirements.txt

Structure

The repository code is structured in the following way

  • agents contains the classes defined for RL agents.
  • data contains weather disturbance data.
  • greenhouse contains the model and environments classes for the greenhouse system.
  • mpcs contains the classes for all mpc controllers.
  • sims/configs contains configuration files for simulations.
  • utils contains plotting and evalation scripts used to generate images and data used in Reinforcement Learning-Based Model Predicitive Control for Greenhouse Climate Control
  • nominal_greenhouse.py simulates the nominal mpc controller.
  • sample_greenhouse.py simulates the sample based mpc controller.
  • q_learning_greenhouse.py trains the RL-based mpc controller.
  • train_ddpg.py trains the DDPG-based RL controller.
  • visualization.py vizualizes data saved from simulations.

License

The repository is provided under the GNU General Public License. See the LICENSE file included with this repository.


Author

Samuel Mallick, PhD Candidate [[email protected] | [email protected]]

Delft Center for Systems and Control in Delft University of Technology

This research is part of a project that has received funding from the European Research Council (ERC) under the European Union’s Horizon 2020 research and innovation programme (Grant agreement No. 101018826 - CLariNet).

Copyright (c) 2024 Samuel Mallick.

Copyright notice: Technische Universiteit Delft hereby disclaims all copyright interest in the program “mpcrl-greenouse” (Reinforcement Learning-Based Model Predicitive Control for Greenhouse Climate Control) written by the Author(s). Prof. Dr. Ir. Fred van Keulen, Dean of 3mE.

About

Combining RL and MPC for greenhouse control.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published