solutions for scheduling assays

26
Solutions for Scheduling Assays

Upload: nat

Post on 18-Jan-2016

24 views

Category:

Documents


1 download

DESCRIPTION

Solutions for Scheduling Assays. Improve quality control (QC) Free resources Reduce sa fety risks Automatic data handling Increase sample throughput. Why do we use laboratory automation?. Scheduling Example. Sequential Processing. Running - Wash. Input. Output. Running - Dispense. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Solutions for Scheduling Assays

Solutions for Scheduling Assays

Page 2: Solutions for Scheduling Assays

Why do we use laboratory automation?

Improve quality control (QC)Free resourcesReduce sa fety risksAutomatic data handlingIncrease sample throughput

Page 3: Solutions for Scheduling Assays

Scheduling Example

Task Time(s)

Get plate from Stack and move to Washer

15

Run Washer 60

Move plate from Washer to Dispenser

10

Run Dispenser 40

Move plate from Dispenser to Stack

15

Page 4: Solutions for Scheduling Assays

Running - Wash

Running - Dispense

Input

Output

Sequential Processing

Page 5: Solutions for Scheduling Assays

Sequential Processing – Gantt View

0 60 120 180 240

Plate 1 Dispense

Time (s)

Wash

Plate 2 Dispense Wash

300

Total Processing Time: 420 seconds

Dispense WashPlate 3

360 420

Page 6: Solutions for Scheduling Assays

Running - Wash

Running - Dispense

Input

Output

Optimized Scheduling

Page 7: Solutions for Scheduling Assays

Optimized Scheduling – Gantt View

0 60 120 180 240

Plate 1 Dispense

Time (s)

Wash

Plate 2 Dispense Wash

300

Total Processing Time: 310 seconds

Dispense WashPlate 3

Page 8: Solutions for Scheduling Assays

Scheduling Definition

An improved throughput is achieved by having efficient scheduling

Scheduling is the process of optimally processing tasks or jobs. The objectives include– Minimizing the time– Maximizing the utilization of the rate

determining resource All constraints, time and resource specific

must be obeyed

Page 9: Solutions for Scheduling Assays

Static Scheduling

Prepares a pre-emptive plan on how the plates will be processed

A mathematical, exact or heuristic approach to calculating an optimal schedule

Complex algorithms have to evaluate all the scheduling permutations

Problem in laboratory automation is similar to the Job Shop Scheduling problem

Page 10: Solutions for Scheduling Assays

Job Shop Scheduling Problem

A fixed set of n jobs Each job consists of a chain of operations A fixed set of m machines that each operation

uses Each machine can handle at most one operation

at a time Each operation needs to be processed during

an uninterrupted time period of a given length on a given machine

Aim is to find a schedule that has minimal length

Page 11: Solutions for Scheduling Assays

Job Shop Scheduling Problem

The schedules required for this problem are the most difficult to solve1

The problem is NP hard (non-deterministic polynomial time hard)

10 operations requires 3,628,800 scheduling permutations to be analyzed

Page 12: Solutions for Scheduling Assays

Job Shop Example

10 Job, 10 machine problem. An MIP solver takes 5 minutes to solve this

Page 13: Solutions for Scheduling Assays

DES Event Model

Problem can be simplified. The sequence of operations have to be in a set order, and the operations for each Job are the same

Cyclic scheduling methods can be adopted Allowable time delays are introduced. Plate cycle

time increases, but throughput increases as well

Page 14: Solutions for Scheduling Assays

DES Event Model Example

Single Plate Gantt Chart

The Event Model

Page 15: Solutions for Scheduling Assays

Scheduling techniques for Job Shop Problem

Many Solver tools available for solving scheduling problems.

The General Algebraic Modeling System (GAMS) Microsoft Solver Foundation IBM Optimization Subroutine Library

Mathematical SolversExact methodsLocal search methods, heuristics

Scheduling, Theory, Algorithms and Systems – Michael L.Pinedo

•Linear•Non-linear•MIP•Branch and Bound

•Dynamic Programming•Cutting plane

•Simulated annealing•Tabu Search•Adaptive Search

Page 16: Solutions for Scheduling Assays

Static Schedulers

Each plate can be processed in exactly the same way

Incubation times can run for the exact specified time.

Allow the user to see how the assay will run See the effect of speeding up tasks or adding

more instruments (e.g. pooling) Assay cannot react to events Error states cannot be handled automatically

Page 17: Solutions for Scheduling Assays

Dynamic Scheduling

Schedule is determined before the run starts

Schedule is recalculated at runtime based upon events

In the simplest form, rescheduling occurs when task durations differ

True dynamic scheduling responds to all events that deviate from current schedule

Page 18: Solutions for Scheduling Assays

Event Driven Scheduling

A method of running a process when events occur such as device state change

The system is told how to process plates through the different instruments on the system based upon a set of rules

Stage Activity Rules

1 Load Plate onto Washer and start running

Washer instrument is idleWasher has no plate loaded

2 When washer has finished, move plate to dispenser and start running

Washer is idleWasher has a plate loadedDispenser is idleDispenser has no plate loaded

3 When dispenser has finished unload plate

Dispenser is idleDispenser has a plate loaded

Page 19: Solutions for Scheduling Assays

Running - Wash

Running - Dispense

Input

Output

Event Driven Scheduling Example

Page 20: Solutions for Scheduling Assays

Running - Wash

Running - Dispense

Input

Output

Deadlock

DEADLOCK!!X

X

Page 21: Solutions for Scheduling Assays

Deadlock Solutions

Detect deadlocks by using Petri Nets1

Control the addition of new plates using pacing timers

This slows the throughput as the degree of interleaving is reduced

Alternatively, use buffers (relief nests)

Page 22: Solutions for Scheduling Assays

Running - Wash

Running - Dispense

Input

Output

Buffer relief nests

Buffer

Page 23: Solutions for Scheduling Assays

Event Driven Scheduling

No need for CPU intensive scheduling System can easily react to events as the

run proceeds Ideal for assays where the process is

unknown before the run starts Increased flexibility invariably leads to

increased complexity Deadlock situations need to be determined

and eliminated

Page 24: Solutions for Scheduling Assays

Maximizing rate limiting resource utilization

Input Output

Transferring

Page 25: Solutions for Scheduling Assays

Summary

There are different ways to schedule and process plates through an automated system

Choose the right scheduler for your application Determine the rate limiting step in the process

and maximize its utilization Avoid deadlocks

Page 26: Solutions for Scheduling Assays

Overlapping Tasks

Robot: Move to Storage Unit (10s)

SU: Unload Plate (20s)

Robot: Pickup plate from SU (5s)AD: Open Drawer (5s)

Robot: Put plate on AD (10s)

AD: Close Drawer (10s)

AD: Acoustic DispenserSU: Storage Unit

DON’T WAIT!

Serial: 60sOverlapping: 30s