Closing the Loop on Lab Automation - Machines Running Machines
Sounds tricky right? We accomplished this infrastructure by developing custom software tools. The different platforms described below show the required pieces of the puzzle.

Instrument Control
The most crucial aspect is our Instrument Control web app, built to monitor and directly control the robotics platforms. The application wields control over the robots through the Application Programmer Interface (API) of the instruments. Essentially this means that we are able to use our own interface instead of the vendor's interface, but we send commands to the instruments that they understand. This is ideal for us because it allows our application to be device agnostic, and new devices can readily be integrated.
We provide a calendar scheduling interface to accept jobs and manage the workload of the lab instruments. This is important for traceability because it also provides a platform to readily sort the machine logs and errors by experiment to be recalled whenever for reference. So you can use this application to either launch runs now, or put items on the calendar to be launched automatically by the application when the time comes. The magic happens when we provide our own API to the Instrument Control webapp, which allows other software interfaces to get information about the calendar, or schedule runs on the calendar, or launch a run now.

Experiment Database
The software system generating experiments is typically referred to as the lab information management system (LIMS / Lab IT), and this has a different function. Primarily we want this to hold our scientific data, cut experiments and then tie the data back there for viewing and analysis. By developing our own API for the Instrument control app, we expose an interface to allow users to access that job queue system directly from that LIMS interface to add their experiment onto the job queue for the instruments. So instead of switching apps after cutting a new experiment, you just schedule it then and there.

Naturally, the LIMS also has an API to similarly allow other software systems to create and launch experiments, which can then provide details to the instrument control app to physically launch robotic experiments. This means that yet another software system could register new experiments in an automated fashion.
AI and Machine Learning
So with this infrastructure above, we have a software systems that control our experiments and control our instruments, and we can leverage those without using the user interface if we want. We are also working on Machine Learning and AI processes that can generate experiments like the users were doing. This is a huge piece of the puzzle when it comes to the automation loop.
Assuming that the AI software model has been trained to generate a list of inputs as required for to launch the experiment via LIMS API, it will be able to also have the ability to launch that same experiment on the robots via Instrument Control app API.
These systems don't start out intelligent, but they have to be trained. This means you have to generate a lot of data to feed into the models. Right now, our AI models suggest new experiments for our scientists, but they aren't quite sophisticated enough to launch their own experiments. Overtime, success with a platform like this will lead to these AI software systems to become more eloquent at suggesting research experiments. We aren't quite there yet, but when the day comes that our AI models are ready to launch their own experiments, all the infrastructure is there to allow the closed loop. I'm excited to see what they come up with.