The Experiment Orchestration System (EOS)#
Note
EOS is currently in the alpha development stage. Much additional functionality and enhancements are planned. It currently has a core feature set to use for research. Please report any issues, make feature requests, or contribute to development!
The Experiment Orchestration System (EOS) is a comprehensive software framework and runtime for laboratory automation, designed to serve as the foundation for one or more automated or self-driving labs (SDLs).
EOS provides:
A common framework to implement laboratory automation
A plugin system for defining labs, devices, experiments, tasks, and optimizers
A package system for sharing and reusing code and resources across the community
Extensive static and dynamic validation of experiments, task parameters, and more
A runtime for executing tasks, experiments, and experiment campaigns
A central authoritative orchestrator that can communicate with and control multiple devices
Distributed task execution and optimization using the Ray framework
Built-in Bayesian experiment parameter optimization
Optimized task scheduling
Device and sample container allocation system to prevent conflicts
Result aggregation such as automatic output file storage