The Overlord™ suite of laboratory automation system control software is the most extensive available for laboratory automation. Offering both static, time-related and event driven scheduling options, Overlord™ allows assays to be run as efficiently as possible whilst obeying any critical constraints such as incubation times. Overlord can link all types of laboratory instrumentation from multiple vendors into a single, fully integrated system. See our Overlord Device Drivers list for full details of what we can control. If an instrument is not on the list, we have a Software Development Kit that allows you or us to simply get the instrument into Overlord™.
Overlord™ can be configured to control any number of what we call Instrument Driver and Data Driver commands, illustrated in the image below. Instrument Driver commands allow us to interface with laboratory devices, such as a liquid handler, a plate reader or a dispenser to name but a few instrument types. We can control devices using their own native software or through direct control, basically whatever allows us to create the simplest integration with the required functionality. Our Data driver commands allow us to connect to a variety of data sources, either directly using the Microsoft ODBC components or in-directly through third-party software and increasingly, through a web-service. The number of drivers is increasing all of the time and the methods of integration changing as new technologies appear.
Overlord Workstation (Overlord1, real-time, event driven scheduler) was written to control the National DNA database sample preparation and analysis system at the Forensic Science Service in the UK in the mid-1990s. Overlord Scheduler (static scheduler) was commissioned from PAA by GlaxoSmithKline in 2002. This was to develop a competing automation package for SAMI but easier to use for simple systems. The increasing popularity of Overlord Workstation led us to develop Overlord2 which was a complete rewrite of the Overlord Workstation product using the Microsoft .NET Framework which we continue to use now. We also took the opportunity to separate the user interface from the runtime engine. This led to the replacement of the flow chart user interface with Assay Manager and later Harmony, an extremely simple interface that hides the more complex functions available.
The current version, Overlord3 took the successful Overlord2 interface with its real-time, event driven scheduler runtime engine and added a static/dynamic runtime engine for complete scheduling flexibility. As of 2016, we are putting the finishing touches to Overlord4, an evolution of the core Overlord procedure designer along with a brand new user interface for describing workflows that makes using an automated system as easy as possible.
Scheduling is an important component of a laboratory automation software package. The benefit of using laboratory automation is that multiple plates within an experiment or assay can be processed automatically. Overlord provides a number of methods for automating assay processes, offering a unique service whereby you can select the best method for the job. All available control systems on the market provide a method of scheduling and the different methods are described below.
Also known as round robin scheduling, this is the method of running an assay when events occur such as device state change. The user instructs the system how to move the plates through the different instruments on the system based upon the implemented rules. The advantage of such a scheduler is that as soon as a task completes, the samples can be moved onto the next stage of the assay immediately. It is irrelevant if a task is quicker or takes longer to run than originally estimated, the assay will continue to run without any need to run a scheduling algorithm. This also allows decisions to be made at runtime without any adverse effect to the entire system. The decision to increase incubation times as described in the static scheduling section is easily handled in an event driven configuration. Due to the increased flexibility of event driven scheduling, the additional options available in the software means it is also more complicated to use than a static or dynamic scheduler. The steps required to define an assay require more input from the user and even the most basic rules on what to do when an event occurs requires a level of understanding of the process that is greater than that required for a static scheduler.
Static scheduling takes the tasks required to run the assays and prepares a pre-emptive plan on how and when to execute each task. By knowing how long each task takes to complete, the scheduling algorithm can, using either a deterministic or heuristic approach, calculate an optimal or near optimal path for executing the tasks in the shortest amount of time.
Dynamic scheduling is an evolution of static scheduling. The advantages of static scheduling are retained however, with a dynamic schedule it is possible for the schedule to deal with “events” that effect the task durations. If a task has been scheduled to run for 10 minutes but takes 5 minutes instead, a dynamic scheduler can use this time gained and start the execution of the next task in the assay. This is because dynamic schedulers can reschedule “on the fly” at runtime.