Skip to main content
Science and Technology Partnerships and Outreach

Polybot: An AI-Integrated Robotic Software Environment (ANL-SF-21-142)

Polybot is a modular self-driving laboratory software environment that combines artificial intelligence (AI), automation, and experimentations. The robotics software of Polybot facilitates the rapid setup of hardware modules, implementation of experimenta
Intellectual Property Available to License

A flexible user scripting interface for the definitions of robot-performed experimental procedures

Opportunity & Solution

Autonomous experiments require orchestrating robotic movements and functions of hardware modules to perform a sequence of experimental steps designed and specified by a user who is familiar with the type of experiments (peptide synthesis, nanostructure characterization, etc.), but not necessarily accustomed to robotics hardware or computer programming. Our workflow scripting interface utilizes the Python programming language to simplify the scripting of hardware control sequences, and organizes them into logical entries that represent experimental steps. The entire experimental procedure is encompassed within a single script, allowing easy archival. The design enables sophisticated backend processing of the workflow script to enable seamless integration with machine learning/optimization frameworks and the robotics system control. Since the experimental procedure is presented in a form that resembles the original hardware control sequences, a wide range of experimental workflows and hardware configurations can be programmed with ease due to the readability and flexibility of the Python scripting language.


  • flexible scripting (no hidden codes)
  • experimental steps embedded clearly in control sequences
  • minimal programming skills required


A ML-based scheduler for concurrent sample processing in autonomous experiments

Opportunity & Solution

A scheduler is as a software component that orchestrates the execution of steps (e.g., robot arm movement, solution stirring, temperature annealing, etc.) for performing an autonomous experiment. It is challenging to build a scheduler that enables seamless integration of non-vendor specific hardware and can efficiently optimize the execution order of steps in an experiment involving multiple hardware modules and concurrent processing of samples. Our software comprises a new scheduler using the widely used Python programming language. Since it is built using a general language that is increasingly common in the robotics and scientific fields, one can easily couple it with script-based hardware APIs and utilize machine learning to provide automatic data-driven tuning and hardware-aware scheduling of experimental steps. The ease of integration with existing software codes enables faster progress to be made across laboratories and reduces the cost of autonomous systems thus making them available to less well-funded laboratories.


  • Enables high-throughput material processing and synthesis
  • Leverages machine learning for closed-loop experiments
  • Fully autonomous


Data structure and data workflow for handling material samples in high-throughput experiments

Opportunity & Solution

High-throughput experiments enabled by robotics generate large volumes of heterogeneous data, coming from multiple hardware modules in different data formats. There needs to be an easy way to standardize data and store them in a universal format such that data and metadata of individual material samples are well organized. This software consists of a material sample data class/object that utilizes JSON file in the backend for data storage. The sample data class is implemented using the Python programming language. It couples the flexibility of JSON files with rigid schema to make data files compatible with database handling. There are also functions for smart creation of unique sample ID based on workflow and input parameters, as well as handling the underlying data writing and conversion. Instead of the traditional approach of specifying file paths within an experimental workflow, we developed an object/data-oriented approach that initiates actions from the sample data class, providing an elegant way of handling the file path related issues in concurrent/parallel processing of material samples.


  • Designed to handle autonomous workflow
  • User-friendly content addition and editing
  • Data hierarchy designed for material samples


Inventions, Applications, Industries:

  • Autonomous material discovery
  • Combinatorial experiments
  • High-dimensional processing-property relationships


Lab automation:

  • Facilitates integration solutions for new instruments
  • Avoids resource deadlocks
  • Dynamic workflow adjustments