Skip to main content

Dynamic optimization toolbox for flow chemistry

Project description

logo

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


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

dynopt-0.2.3.tar.gz (13.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

DynOpt-0.2.3-py3-none-any.whl (11.5 kB view details)

Uploaded Python 3

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

Hashes for dynopt-0.2.3.tar.gz
Algorithm Hash digest
SHA256 45852657625b706c1f4618ce534f8bbbab5d331add684fe56ecaa2829b19c1ea
MD5 cb4fb82a37aca094ff9aa3041610710c
BLAKE2b-256 d982b5cb3776e6c07e34b6d7b513fb5b9cf6ef36d9076d5f7828afe6df97b59d

See more details on using hashes here.

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

Hashes for DynOpt-0.2.3-py3-none-any.whl
Algorithm Hash digest
SHA256 fdfa8a75ecbe1679162c1f71cf1c68ffc3af3a1390ba6fb5c79df5ee13447f56
MD5 d7d84cf928abb0aaecd726fb902fcf5a
BLAKE2b-256 62b428d8a90ed5b365ee63739dd2d82e4ca4bc3c4f46d1527379dbdd8f897eb2

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page