Dynamic optimization toolbox for flow chemistry
Project description
DynOpt
DynOpt is a toolbox for chemical reaction optimization using dynamic experiments in a flow-chemistry setup, leveraging Bayesian optimization to suggest new dynamic experiments to perform in an experimental setup.
Data provided to the algorithm can come from both steady or dynamic experiments under different conditions (e.g., composition, temperature, residence time, ...) in a continuous/Euclidean chemical design space. The algorithm will provide a trajectory (optimization parameters as a function of time) to explore such design space. Such trajectory can be run experimentally using a single dynamic experiment or (less efficiently) with a series of steady experiments in discrete location of the trajectory. After providing the new data to the algorithm (re-training), the procedure is repeated until the algorithm stopping criteria are met.
DynO (a tool for single objective optimization) is compatible with Python 3 (>= 3.6). For details about theory see the paper on dynamic experiments and the one on optimization.
Installation
Pip installable package:
pip install DynOpt
PyPI: DynOpt
Dependencies
- Math
- numpy (1.19.5)
- scipy (1.7.3)
- Gaussian Processes
- scikit-learn (0.24.2)
- Data management
- pandas (1.1.5)
- Display
- matplotlib (3.3.4)
Use
Refer to the Wiki and the examples.
Contributors
Federico Florit: github
Citation
If you use any part of this code in your work, please cite the paper.
@article{DynO,
author = {Florit, Federico and Nandiwale, Kakasaheb Y. and Armstrong, Cameron T. and Grohowalski, Katharina and Diaz, Angel R. and Mustakis, Jason and Guinness, Steven M. and Jensen, Klavs F.},
title = {Dynamic flow experiments for Bayesian optimization of a single process objective},
journal = {React. Chem. Eng.},
year = {2025},
volume = {-},
number = {-},
pages = {-},
doi = {10.1039/D4RE00543K}
}
License
This software is released under a BSD 3-Clause license. For more details, please refer to LICENSE.
"Copyright 2025 Federico Florit"
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file dynopt-0.2.3.tar.gz.
File metadata
- Download URL: dynopt-0.2.3.tar.gz
- Upload date:
- Size: 13.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.0.1 CPython/3.13.1
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
45852657625b706c1f4618ce534f8bbbab5d331add684fe56ecaa2829b19c1ea
|
|
| MD5 |
cb4fb82a37aca094ff9aa3041610710c
|
|
| BLAKE2b-256 |
d982b5cb3776e6c07e34b6d7b513fb5b9cf6ef36d9076d5f7828afe6df97b59d
|
File details
Details for the file DynOpt-0.2.3-py3-none-any.whl.
File metadata
- Download URL: DynOpt-0.2.3-py3-none-any.whl
- Upload date:
- Size: 11.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.0.1 CPython/3.13.1
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
fdfa8a75ecbe1679162c1f71cf1c68ffc3af3a1390ba6fb5c79df5ee13447f56
|
|
| MD5 |
d7d84cf928abb0aaecd726fb902fcf5a
|
|
| BLAKE2b-256 |
62b428d8a90ed5b365ee63739dd2d82e4ca4bc3c4f46d1527379dbdd8f897eb2
|