Categorical Variables
Define a choice from a list of named options.
A categorical variable represents a discrete choice — like picking a solvent, a catalyst, or a reactor type. The optimizer selects from the list of categories you define.
Required Settings
Setting | Description | Example |
Name | A unique name for the variable | Solvent |
Categories | The list of options the optimizer can choose from | Ethanol, Methanol, Acetone |
Optional Settings
Setting | Description | Example |
Properties | Numerical metadata attached to each category (helps the optimizer understand similarity) | Molecular weight, Boiling point, Cost |
Description | Free-text note for collaborators | "Primary reaction solvent" |
Batch-constrained | If on, this variable stays the same across all experiments in a batch | Reactor type shared across a plate |
Category Properties
Properties attach numerical information to each category. This helps the optimizer understand how similar categories are to each other, leading to better suggestions.
Example: Solvents with properties
Category | Boiling Point (°C) | Polarity Index | Cost ($/L) |
Ethanol | 78.4 | 5.2 | 15 |
Methanol | 64.7 | 5.1 | 12 |
Acetone | 56.1 | 5.1 | 18 |
Toluene | 110.6 | 2.4 | 22 |
Without properties, the optimizer treats all categories as equally different. With properties, it knows that Ethanol and Methanol are more similar to each other than to Toluene.
Examples
Simple — Solvent selection
Name: Solvent
Categories: Ethanol, Methanol, Acetone, Toluene, DCM
With properties — Catalyst screening
Name: Catalyst
Categories: Pd/C, Pt/Al2O3, Ru/C
Properties: Molecular weight (g/mol), Loading (wt%), Price ($/g)
Good to Know
Category names must be unique within the variable.
Adding properties is optional but recommended — it gives the optimizer more information to make better suggestions.
Properties are numerical values only. If you need to encode a non-numerical attribute, consider splitting it into separate variables.
You can exclude specific categories using Constraints.
