Time-optimal scheduling for high throughput screening processes using cyclic discrete event models

Similar documents
Modeling and Control of Nested Manufacturing Processes using Dioid Models

Planning and Scheduling of batch processes. Prof. Cesar de Prada ISA-UVA

Cyclic short-term scheduling of multiproduct batch plants using continuous-time representation

Estimating analytically the capacity of batch plants with shared equipment: a yoghurt plant case study

Algorithm Design. Scheduling Algorithms. Part 2. Parallel machines. Open-shop Scheduling. Job-shop Scheduling.

A polynomial-time approximation scheme for the two-machine flow shop scheduling problem with an availability constraint

OPTIMAL TOKEN ALLOCATION IN TIMED CYCLIC EVENT GRAPHS

Scheduling with Constraint Programming. Job Shop Cumulative Job Shop

Stacy L. Janak, Xiaoxia Lin, and Christodoulos A. Floudas*

CMSC 722, AI Planning. Planning and Scheduling

Effective Continuous-Time Formulation for Short-Term Scheduling. 3. Multiple Intermediate Due Dates 1,2

SCHEDULING DUAL GRIPPER ROBOTIC CELL : ONE-UNIT CYCLES. Inna G. Drobouchevitch. Suresh P. Sethi. Chelliah Sriskandarajah

LPT rule: Whenever a machine becomes free for assignment, assign that job whose. processing time is the largest among those jobs not yet assigned.

A Branch and Bound Algorithm for the Project Duration Problem Subject to Temporal and Cumulative Resource Constraints

Chapter 6: CPU Scheduling

Sub-Optimal Scheduling of a Flexible Batch Manufacturing System using an Integer Programming Solution

Practical Tips for Modelling Lot-Sizing and Scheduling Problems. Waldemar Kaczmarczyk

On Preemptive Scheduling on Uniform Machines to Minimize Mean Flow Time

Lecture 13. Real-Time Scheduling. Daniel Kästner AbsInt GmbH 2013

On the Complexity of Mapping Pipelined Filtering Services on Heterogeneous Platforms

A comparison of sequencing formulations in a constraint generation procedure for avionics scheduling

1 Algebraic Methods. 1.1 Gröbner Bases Applied to SAT

An improved approximation algorithm for two-machine flow shop scheduling with an availability constraint

Minimizing Mean Flowtime and Makespan on Master-Slave Systems

Exercises Solutions. Automation IEA, LTH. Chapter 2 Manufacturing and process systems. Chapter 5 Discrete manufacturing problems

Embedded Systems Development

Module 5: CPU Scheduling

2/5/07 CSE 30341: Operating Systems Principles

HYBRID FLOW-SHOP WITH ADJUSTMENT

On mathematical programming with indicator constraints

On Two Class-Constrained Versions of the Multiple Knapsack Problem

CPU Scheduling. CPU Scheduler

Max-Consensus in a Max-Plus Algebraic Setting: The Case of Fixed Communication Topologies

An efficient ILP formulation for the single machine scheduling problem

Technion - Computer Science Department - Technical Report CS On Centralized Smooth Scheduling

CHAPTER 4. Networks of queues. 1. Open networks Suppose that we have a network of queues as given in Figure 4.1. Arrivals

Embedded Systems 14. Overview of embedded systems design

No-Idle, No-Wait: When Shop Scheduling Meets Dominoes, Eulerian and Hamiltonian Paths

Scheduling of unit-length jobs with bipartite incompatibility graphs on four uniform machines arxiv: v1 [cs.

Proceedings of the 2012 Winter Simulation Conference C. Laroque, J. Himmelspach, R. Pasupathy, O. Rose, and A.M. Uhrmacher, eds

M 2 M 3. Robot M (O)

Solving Fuzzy PERT Using Gradual Real Numbers

Optimization of Batch Processes

4 Sequencing problem with heads and tails

Metode şi Algoritmi de Planificare (MAP) Curs 2 Introducere în problematica planificării

Partial job order for solving the two-machine flow-shop minimum-length problem with uncertain processing times

Single Machine Problems Polynomial Cases

Aperiodic Task Scheduling

Transfer Line Balancing Problem

Non-Work-Conserving Non-Preemptive Scheduling: Motivations, Challenges, and Potential Solutions

Paper Presentation. Amo Guangmo Tong. University of Taxes at Dallas January 24, 2014

A Study of Time Representation in a Class of Short Term Scheduling Problems

Batch delivery scheduling with simple linear deterioration on a single machine 1

Computers and Mathematics with Applications. Module-based architecture for a periodic job-shop scheduling problem

Multi-Skill Resource-Constrained Project Scheduling: Formulation and Inequalities

Single Machine Scheduling with Generalized Total Tardiness Objective Function

Clock-driven scheduling

An Effective Chromosome Representation for Evolving Flexible Job Shop Schedules

Online Appendix for Coordination of Outsourced Operations at a Third-Party Facility Subject to Booking, Overtime, and Tardiness Costs

2. Project management

Operator assignment problem in aircraft assembly lines: a new planning approach taking into account economic and ergonomic constraints

Contents college 5 and 6 Branch and Bound; Beam Search (Chapter , book)! general introduction

On Machine Dependency in Shop Scheduling

The tool switching problem revisited

Minimizing total weighted tardiness on a single machine with release dates and equal-length jobs

A Global Constraint for Parallelizing the Execution of Task Sets in Non-Preemptive Scheduling

Exact Mixed Integer Programming for Integrated Scheduling and Process Planning in Flexible Environment

Project Management Prof. Raghunandan Sengupta Department of Industrial and Management Engineering Indian Institute of Technology Kanpur

Improved Bounds for Flow Shop Scheduling

Chapter 3: Discrete Optimization Integer Programming

Scheduling Lecture 1: Scheduling on One Machine

Recoverable Robustness in Scheduling Problems

Project scheduling with calendars

Timed Discrete Event Control of Parallel Production Lines with Continuous Outputs

1 Ordinary Load Balancing

RCPSP Single Machine Problems

Logic, Optimization and Data Analytics

Temporal Constraint Networks

Integer and Constraint Programming for Batch Annealing Process Planning

Single processor scheduling with time restrictions

Application 1 - People Allocation in Line Balancing

On bilevel machine scheduling problems

System Model. Real-Time systems. Giuseppe Lipari. Scuola Superiore Sant Anna Pisa -Italy

The Tool Switching Problem Revisited

The resource transfer problem

CPU Scheduling. Heechul Yun

Scheduling and Optimization Course (MPRI)

Selected partial inverse combinatorial optimization problems with forbidden elements. Elisabeth Gassner

ISyE 6644 Fall 2014 Test #2 Solutions (revised 11/7/16)


CPU Scheduling Exercises

Matrices and Vectors

Exam Spring Embedded Systems. Prof. L. Thiele

Continuous-time versus discrete-time approaches for scheduling of chemical processes: a review

Lecture 2: Scheduling on Parallel Machines

Equitable and semi-equitable coloring of cubic graphs and its application in batch scheduling

Temporal Constraint Networks

Flow Shop and Job Shop Models

Real-Time Systems. Lecture 4. Scheduling basics. Task scheduling - basic taxonomy Basic scheduling techniques Static cyclic scheduling

Average-Case Performance Analysis of Online Non-clairvoyant Scheduling of Parallel Tasks with Precedence Constraints

Transcription:

Mathematics and Computers in Simulation 66 2004 181 191 ime-optimal scheduling for high throughput screening processes using cyclic discrete event models E. Mayer a,, J. Raisch a,b a Fachgruppe System und Regelungstheorie, Max-Planck-Institut für Dynamik Komplexer echnischer Systeme, 39106 Magdeburg, Germany b Lehrstuhl für Systemtheorie echnischer Prozesse, Otto-von-Guericke-Universität, 39016 Magdeburg, Germany Available online 15 January 2004 Abstract A method for solving the scheduling problem for a class of cyclic systems with respect to throughput maximization is presented. A strictly cyclic mode of operation is considered, where the time offset between the start of consecutive jobs is always constant. All jobs have to follow an identical time scheme. he time scheme may be restricted by due dates or time window constraints. here are no buffers between the resources of the system. Based on discrete events systems DES modeling, this job shop scheduling problem can be formulated as a mixed integer linear optimization problem. hroughput is maximized by minimization of the cycle time. he method is applied to high throughput screening HS problems and illustrated by means of a small example. 2003 IMACS. Published by Elsevier B.V. All rights reserved. Keywords: Cyclic scheduling; hroughput maximization; Mixed integer optimization; Discrete event systems; High throughput screening 1. Introduction High throughput screening HS plants are used for the analysis of chemical or biological substances. ypically, several operations have to be executed in the same specific time scheme for a large number of sample batches. For such processes, the task of throughput maximization is very important. Determining the throughput-optimal sequence and timing for all operations of a run of several hundreds of batches assay can yield significant savings in operating time and costs. Such scheduling problems are known to be np-hard in most cases. For several specialized HS plants, a number of scheduling approaches with a variety of objectives exist, e.g. [1,3]. However, as development goes towards large flexible HS plants, Corresponding author. E-mail address: eckart.mayer@mpi-magdeburg.mpg.de E. Mayer. 0378-4754/$30.00 2003 IMACS. Published by Elsevier B.V. All rights reserved. doi:10.1016/j.matcom.2003.11.004

182 E. Mayer, J. Raisch / Mathematics and Computers in Simulation 66 2004 181 191 a general scheduling approach is needed which can be used independently of the specific combination of machines and transport devices. HS scheduling differs from other scheduling problems, e.g.in chemical engineering [2,4], in the following aspects: while progressing through the operations, each single batch may pass the same machine more than once. More than one batch will be present in the system at the same time. here are no buffers between the machines. Moreover, a batch may occupy two or more machines simultaneously when being transferred from one machine to another. Additionally, there will be upper time bounds due dates or time window constraints stated by the user. In many cases, due to the specific nature of the substances to be screened, operating schemes have to be strictly cyclic. his means that the time distance between two consecutive batches is required to be always constant. We show how this cyclic scheduling problem can be formulated as a mixed integer linear optimization problem. Its solution leads to a globally optimal schedule with maximum throughput, i.e. minimum cycle time, and therefore to minimum overall processing time makespan. his paper is arranged as follows: first, a DES model for cyclic high throughput screening systems is discussed. he search space of the scheduling problem is reduced by simplification of the model without affecting the globally optimal solution. Subsequently, the scheduling problem for throughput maximization is derived. Its formulation as a mixed integer optimization problem is presented. Finally, a small example is treated to illustrate the basic solution approach. 2. A cyclic DES model for a HS plant he HS plant is assumed to consist of m resources, i.e. incubators, readers, transport devices, etc. Substances are aggregated in batches, which are realized by so called microplates holding up to 1536 substances. hey pass the plant following a time scheme given by the user. As a basic principle, the time scheme is identical for each batch called single-batch time scheme. It consists of i max activities. Each activity i allocates one of the resources, which is denoted by J i {1...m}. For each activity i, i = 1...i max, the respective resource is allocated starting from time o i starting event until time r i, where r i >o i release event. As all resources have capacity one, no other activity can use the same resource during this period. he sequence of activities on each single resource is assumed to be fixed: o i2 r i1 {i1,i2, i2 >i1,j i1 = J i2 }. 1 Note that the time instants where activities start and end are not necessarily identical to the time instants at which the corresponding plates enter respectively leave the resources, as there may be additional pre- or post-processing. ransfers of plates between the resources are modeled by transfer events, which connect activities on different resources. One possibility of modeling temporal interdependency between the events of the single-batch time scheme is the use of a timed graph. A short explanation of such a model will be given in the following. he nodes of the graph represent the events within the single-batch time scheme. As discussed above, there are three types of events: starting events: start of activity time o i, release events: end of activity time r i, and

E. Mayer, J. Raisch / Mathematics and Computers in Simulation 66 2004 181 191 183 Fig. 1. Graph model for the single-batch time scheme. transfer events: transfer of a plate between two resources. A transfer event always takes place simultaneously to at least one corresponding transfer event associated with another resource. he directed arcs of the graph represent temporal interdependencies. A label is assigned to every arc, describing the minimum time which has to elapse between the two events. An arc leading from node a to node b, labeled with time t l R implies that at least time t l has to pass between occurrence of the event represented by a and occurrence of the event represented by b. It is also possible to model upper bounds for the time interval between two events. For example if the time interval between a and b is less or equal to t u, the graph contains an arc from b to a labeled by t u. emporal interdependencies may originate from the following requirements: Operations i.e. activities or parts thereof require a certain minimum time interval for processing, e.g. a plate can never leave a machine before work is finished. In HS, these constraints are normally investigated by test runs on the real plant. Starting of one operation depends on completion of another operation, e.g. an operation for a plate cannot start before the preceding operation has been finished. Due to chemical requirements, the time that is allowed to elapse between two not necessarily consecutive operations is restricted by lower and/or upper bounds. Such requirements will be prescribed by the user. An example for such a graph defining temporal interdependencies for the events of a single-batch time scheme is given in Fig. 1. he graph representation could, of course, be directly translated into mathematical inequality constraints arc by arc. In this case, one would need one variable for each event describing the time when this event occurs. he number of variables would therefore equal the number of nodes and each arc would provide one inequality restriction, implying that the mathematical formulation becomes unnecessarily complex and often unmanageable. Often, the mathematical form can be substantially simplified by suitably parameterizing the time instants o i and r i. 1 We represent the o i and r i as linear combinations of K time variables θ k R + 0,k = 1...K, where normally K 2i max : o i = χ i,0 + K χ i,k θ k... ime, when activity i starts, r i = ψ i,0 + K ψ 2 i,k θ k... ime, when activity i ends. 1 he time instants for the transfer events are not needed to formulate the constraints for the scheduling problem.

184 E. Mayer, J. Raisch / Mathematics and Computers in Simulation 66 2004 181 191 Resource 1 Resource 2 Resource 3 i=2 i=1 i=3 i=4 i=5 i=6 ime Fig. 2. Example for a single-batch time scheme Gantt chart. his means that the single-batch time scheme is described by fixed parameters χ i,0, ψ i,0, χ i,k, and ψ i,k, i = 1...i max, and yet unknown variables θ k, k = 1...K. he constraints on the variables o i and r i are represented by bounds for the time variables θ k : 0 θ k θ k,max, k = 1...K 3 and, if necessary, by additional linear constraints of the form κ p,k θ k ϑ p, p = 1...P. 4 Fixing the event times for the single-batch time scheme defines all event times within all batches, because all batches follow each other in a strictly cyclic manner. his means that the time instants for start and release events for activity i of batch ρ, ρ Z are o ρ i = o i + ρ and r ρ i = r i + ρ 5 respectively, where is called period or cycle time, i.e. is the time which elapses between the same event within two consecutive batches. Normally, several batches are present in the plant simultaneously. An example for a single-batch time scheme, pictured as a Gantt chart, is given in Fig. 2. An extract of a corresponding cyclic schedule is given in Fig. 3. An additional condition for the cycle time is that it can never be smaller than the sum of activity durations on any resource during the single-batch time scheme: i max r i o i δ Ji j, j = 1...m, 6 i=1 { 0 for Ji j where δ Ji j = 1 for J i = j. Having defined a mathematical model for cyclic operating sequences, we can now formulize the cyclic scheduling problem and its solution. Fig. 3. Extract from cyclic schedule for the single-batch time scheme from Fig. 2.

E. Mayer, J. Raisch / Mathematics and Computers in Simulation 66 2004 181 191 185 3. he cyclic scheduling problem hroughput maximization for a cyclic system is equivalent to the following scheduling problem: Find θ k,k = 1...Ksuch that the cycle time is minimized subject to constraints 3, 4, 6 and the additional constraint that no allocation conflicts arise. As all resources have capacity one, a resource can never be allocated by two activities simultaneously 2. his has not only to hold for the single-batch time scheme but also with regard to all batches that are present in the plant at the same time. his requirement leads to mathematical conditions, which are often called disjunctive constraints. For two activities i1,i2 of the same resource J i1 = J i2 belonging to batch ρ1 and ρ2, respectively, the following condition ensures exclusion of overlapping: 3 o ρ2 i1 r ρ1 i2 OR o ρ1 i2 r ρ2 i1. 7 his condition has to be met for each pair of activities using the same resource, including activities within the same batch and including the same activity within different batches. Condition 6 ensures 7 for i1 = i2. It is also assumed that the constraints for the single-batch time scheme as defined in Section 2 ensure Condition 7 for all pairs of activities within the same batch, i.e. for ρ1 = ρ2. For the remaining cases i1 i2, ρ1 ρ2, due to assumption 1, itissufficient to ensure 7 for i1 <i2 and ρ1 <ρ2. Moreover, as cyclically repeated sequences are considered, this can be narrowed down to ρ1 = 0 and ρ2 =: ρ, ρ = 1, 2,... Eq. 7 can then be reformulated using 5: o i1 + ρ r i2, 8a OR o i2 r i1 + ρ ρ = 1, 2,.... 8b We now derive a necessary and sufficient condition for 8.As8 has to hold for any ρ, either 8a or 8b has to hold for oi2 r i1 ρ = + 1, 9 where x denotes the floor function, i.e. the largest integer less or equal to x. For9, Constraint 8b cannot be satisfied. Hence, Constraint 8a has to hold. Substituting 9 into 8a gives a necessary condition for 8: oi2 r i1 + 1 r i2 o i1 0. 10 2 However, there are no switching times, i.e. two allocations of the same resource can immediately follow each other. 3 In 7, OR and XOR are equivalent as only one part of Condition 7 can be satisfied.

186 E. Mayer, J. Raisch / Mathematics and Computers in Simulation 66 2004 181 191 We now show that Condition 10 is also sufficient for 8. In order to prove sufficiency, we will consider two cases: oi2 r i1 For ρ + 1, Condition 10 implies ρ r i2 o i1 0, and therefore 8a. For ρ< o i2 r i1 + 1, we get ρ oi2 r i1, because ρ is defined to be an integer number. Hence, ρ o i2 r i1 0, and therefore 8b. Condition 10 is now formulated in a more useful way by introducing a new integer variable z i1,i2 : oi2 r i1 z i1,i2 :=. 11 Obviously, Condition 10 is equivalent to z i1,i2 + 1 r i2 o i1 0, 12 with the additional restrictions z i1,i2 Z + 0, 13 z i1,i2 > o i2 r i1 1, 14 z i1,i2 o i2 r i1. 15 In fact, as r i1 >o i1 and r i2 >o i2, 14 is implied by 12. Hence, equations 12, 13 and 15 constitute a necessary and sufficient condition for 8. o sum up, exclusion of allocation conflicts is guaranteed if z i1,i2 o i2 r i1 0, z i1,i2 + 1 r i2 o i1 0, 17 holds for each pair of activities i1,i2, i1 < i2,j i1 = J i2, where z i1,i2 is a non-negative integer: z i1,i2 Z + 0. 16 4. Formulation of the mixed integer optimization problem In order to formulate the scheduling problem as an optimization problem, we take cycle time as the objective function to be minimized subject to the constraints given by equations 16 and 17 as well as 3, 4, and 6. he search space for the optimization problem is defined by the variables R +, θ k R + 0, and z i1,i2 Z + 0. Using 2, the HS scheduling problem can therefore be written as the following mixed

E. Mayer, J. Raisch / Mathematics and Computers in Simulation 66 2004 181 191 187 integer nonlinear optimization program MINLP, i.e. as an optimization problem involving both, real and integer variables: Min s. th. z i1,i2 χ i2,0 + χ i2,k θ k ψ i1,0 z i1,i2 + 1 ψ i2,0 + ψ i1,k θ k 0 ψ i2,k θ k χ i1,0 χ i1,k θ k 0 for {i1,i2, i2 >i1, J i1 = J i2, i1,i2 {1...i max }} 18 θ k θ k,max for k = 1...K κ p,k θ k ϑ p for p = 1...P 20 i max ψ i,0 + δ Ji j = i=1 ψ i,k θ k χ i,0 { 0 for Ji j 1 for J i = j χ i,k θ k δ Ji j for j = 1...m, Several software packages are available to address mixed integer nonlinear problems 4. However, a straightforward application of such software packages to the above optimization problem can result in long computation times even for small problems. Moreover, in many cases, globally optimal solutions will not be found. Fortunately, it is possible to transform 18 21 to linear form using := 1, θ k := θ k, k = 1...K. 22 he HS optimization problem can then be reformulated as follows: Max s. th. z i1,i2 χ i2,0 + χ i2,k θ k ψ i1,0 z i1,i2 + 1 ψ i2,0 + 19 21 ψ i1,k θ k 0 23 ψ i2,k θ k χ i1,0 χ i1,k θ k 0 for{i1,i2, i2 >i1, J i1 = J i2, i1,i2 {1...i max }} 24 θ k θ k,max 0 for k = 1...K 25 4 For example GAMS/SBB http://www.gams.com.

188 E. Mayer, J. Raisch / Mathematics and Computers in Simulation 66 2004 181 191 κ p,k θ k ϑ p 0 for p = 1...P 26 i max ψ i,0 + i=1 ψ i,k θ k χ i,0 { 0 for Ji j for j = 1...m,δ Ji j = 1 for J i = j χ i,k θ k δ Ji j 1 0 his problem can be solved using advanced branch and bound techniques, e.g. the CPLEX library http://www.ilog.com/products/cplex. Attention has to be paid to numerical aspects due to the fact that now the reciprocal of the original objective function is used. 27 5. A simplified example In this section, the proposed method will be illustrated by a simple example. A cyclic schedule has to be derived for the single-batch time scheme pictured in Fig. 2. It consists of i max = 6 activities. One activity takes place on both, resource 1 and 2: J 2 = 1, J 5 = 2. Four activities take place on resource 3: J 1 = J 3 = J 4 = J 6 = 3. he corresponding graph is given in Fig. 1. Arcs are labeled with minimum time distances as described in Section 2. he events for those pairs of nodes that are connected with arcs labeled with time 0 in both directions need to happen simultaneously. hese events represent the transfer of a plate between resources. he arcs labeled by * are constraints stated by the user: the transfer event associated with node b occurs at least 47 and at most 82 time units after the event associated with node a. Hence, the relative timing of both events can vary by up to 35 time units. Only three variables θ k are needed to describe the degrees of freedom that have to be preserved in order to get a globally optimal solution. he linear combination 2 is chosen in such a way that the time variables θ 1...θ 3 can be interpreted as delays, which are inserted in the sequence of activities at the following positions: Variable θ 1 describes a delay during activity i = 2, just before the transfer event associated with node a, variable θ 2 describes an extension of the time interval between activity i = 3 and activity i = 4 No resource is allocated by the plate at that time, variable θ 3 describes a delay during activity i = 5, just before the transfer event associated with node c. hus, the parameters χ i,0, ψ i,0, χ i,k, and ψ i,k take the following values: χ 1,0 = 0 χ 1,1 = 0 χ 1,2 = 0 χ 1,3 = 0 ψ 1,0 = 11 ψ 1,1 = 0 ψ 1,2 = 0 ψ 1,3 = 0 χ 2,0 = 3 χ 2,1 = 0 χ 2,2 = 0 χ 2,3 = 0 ψ 2,0 = 25 ψ 2,1 = 1 ψ 2,2 = 0 ψ 2,3 = 0 χ 3,0 = 23 χ 3,1 = 1 χ 3,2 = 0 χ 3,3 = 0 ψ 3,0 = 32 ψ 3,1 = 1 ψ 3,2 = 0 ψ 3,3 = 0 χ 4,0 = 63 χ 4,1 = 1 χ 4,2 = 1 χ 4,3 = 0 ψ 4,0 = 73 ψ 4,1 = 1 ψ 4,2 = 1 ψ 4,3 = 0 χ 5,0 = 70 χ 5,1 = 1 χ 5,2 = 1 χ 5,3 = 0 ψ 5,0 = 99 ψ 5,1 = 1 ψ 5,2 = 1 ψ 5,3 = 1 χ 6,0 = 90 χ 6,1 = 1 χ 6,2 = 1 χ 6,3 = 1 ψ 6,0 = 100 ψ 6,1 = 1 ψ 6,2 = 1 ψ 6,3 = 1 28

E. Mayer, J. Raisch / Mathematics and Computers in Simulation 66 2004 181 191 189 Note that we could immediately find two suboptimal solutions to the scheduling problem: One suboptimal solution is to start each batch at the time when the previous batch is finished. he single-batch time scheme is chosen in such a way that the batch is finished as fast as possible. his obviously yields a cycle time of 1 = ψ 6,0 χ 1,0 = 100. o find another suboptimal solution, we remove degrees of freedom by setting θ 1 = θ 2 = θ 3 = 0. Hence, the only remaining degree of freedom is and we determine the smallest for which activities on the same resource do not overlap. his solution can be found by simple algorithms in polynomial time. It is pictured in Fig. 3 and has a cycle time of 2 = 50. In order to find a globally optimal solution to the scheduling problem, the search space is now enlarged by allowing variables θ k,k = 1...3 to be greater than zero. In order to include the condition represented by the arc labeled by 87, we need to introduce an upper bound for θ 2 : θ 2 θ 2,max = 35. 29 he values 28 and 29 are now substituted into the equations for the mixed integer nonlinear program 18 21. here are six pairs of activities i1,i2, i2 >i1,j i1 = J i2 for which constraints 18 need to be considered: i1,i2 {1, 3, 1, 4, 1, 6, 3, 4, 3, 6, 4, 6}. his means we need to introduce the integer variables z 1,3, z 1,4, z 1,6, z 3,4, z 3,6, and z 4,6 together with six pairs of constraints of the form 18: z 1,3 12 + θ 1 0 z 1,3 + 1 32 + θ 1 0 z 1,4 52 + θ 1 + θ 2 0 z 1,4 + 1 73 + θ 1 + θ 2 0 z 1,6 79 + θ 1 + θ 2 + θ 3 0 z 1,6 + 1 100 + θ 1 + θ 2 + θ 3 0 z 3,4 31 + θ 2 0 z 3,4 + 1 50 + θ 2 0 z 3,6 58 + θ 2 + θ 3 0 z 3,6 + 1 77 + θ 2 + θ 3 0 z 4,6 17 + θ 3 0 z 4,6 + 1 37 + θ 3 0 With 29, Condition 19 gives θ 2 35. With values 28, Condition 21 results in 29 + θ 3, 22 + θ 1, 40. 32 30 31

190 E. Mayer, J. Raisch / Mathematics and Computers in Simulation 66 2004 181 191 Fig. 4. Cyclic schedule for the single-batch time scheme from Fig. 2 with modified timing. Hence, the mixed integer nonlinear program, which has to be solved in order to obtain a globally optimal solution to the scheduling problem is the following: Min over R +, θ k R + 0, z i1,i2 Z + 0, k {1, 2, 3}, i1,i2 {1, 3, 1, 4, 1, 6, 3, 4, 3, 6, 4, 6} such that conditions 30, 31 and 32 hold. he solution to this problem can be found using a MINLP solver or, of course, by transforming the problem into a mixed integer linear program using 22. A globally optimal solution is = 40, θ 1 = 8, θ 2 = 30, θ 3 = 3, z 1,3 = 0, z 1,4 = 2, z 1,6 = 3, z 3,4 = 1, z 3,6 = 2, z 4,6 = 0. A graphical representation of the resulting cyclic schedule is given in Fig. 4. As additional degrees of freedom have been added, it is no surprise that this solution is better than the suboptimal solutions 1 = 100 and 2 = 50. his example illustrated the main solution procedure of the proposed method for a simple problem. However, the approach has also been applied to real-world problems as they arise for modern, fully flexible HS systems. Globally optimal solutions have been determined for assays involving up to 10 resources and 150 activities per single batch using GAMS/CPLEX http://www.gams.com. When solving mixed integer optimization problems, it is generally impossible to provide guaranteed bounds for computation times, as small changes to the problem structure may have significant impact on the computation time of the solver algorithm. Nevertheless, for all problems we considered computation of the globally optimal solution took only a few seconds and is therefore highly acceptable for the user. 6. Conclusion he problem of finding a throughput-optimal schedule for the cyclic operation of High-hroughput- Screening plants has been treated. It has been shown that the constraints of this scheduling problem can be formulated using discrete event modeling. he problem can be cast into a mixed integer linear program and a globally optimal solution can be determined. he method has been illustrated by means of a basic example. Problem instances for real HS plants result in optimization problems of reasonable size which can be solved within short computation time. However, the method is not limited to HS applications. It may also be extended to similar problems in chemical engineering, flexible manufacturing or transportation systems.

Acknowledgements E. Mayer, J. Raisch / Mathematics and Computers in Simulation 66 2004 181 191 191 he authors gratefully acknowledge funding by CyBio AG, Jena, Germany and the German Ministry of Economics and echnology via the PRO INNO project Just-In-ime Optimierung verteilter Prozessabläufe im HS-Labor. References [1] A. Donzel, J. Carmona, L.A. Corkan, Perspectives on scheduling, in: J.P. Devlin Ed., High throughput screening, Marcel Dekker, New York, 1997, 525 544. [2] M.G. Ierapetritou, C.A. Floudas, Effective Continuous-ime Formulation for Short-erm Scheduling. 1. Multipurpose Batch Processes, Ind. Eng. Chem. Res. 37 1998 4341 4359. [3] C. Murray, C. Anderson, Scheduling Software for High-hroughput Screening, Laboratory Robotics & Automation 8 5 1996 295 305. [4] G. Schilling, C.C. Pantelides, Optimal periodic scheduling of multipurpose plants, Computers and Chemical Engineering 23 1999 635 655.