Skip to content
Federico Florit edited this page Jan 14, 2025 · 8 revisions

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 be performed in an experimental setup. For details about theory see the paper on dynamic experiments and the one on optimization.

DynO

DynO is a Python class which guides the user through a single objective optimization experimentally. The user provides data to the algorithm and DynO returns the next experiment to perform aiming at the maximum of the objective. The procedure is repeated iteratively until the algorithm stopping criteria are met.

flowchart LR
    B(("`Define
    problem`")) ==> Ic{"`Init. type`"}

    subgraph Initialization
        Ic ===>|Dynamic| DI["`Invoke
        SuggestInit()`"]
        Ic -->|Steady data| RI>"`Collect data
        randomly`"]
        RI --> FS["`Add data with
        AddResults()`"]
    end

    FS --> C
    DI ==> R>"`Run dynamic
    experiment`"]

    subgraph Iterative procedure
        R ==> F["`Add data with
        AddData()`"]
        F ==> C{"`Convergence
        criteria met?`"}
        C -->|No| Iter["Invoke CalculateNewTrajectory()"]
        Iter --> R
    end

    C --->|Yes| Z([Optimum])
Loading

Clone this wiki locally