Cyclic scheduling: an introduction

Size: px
Start display at page:

Download "Cyclic scheduling: an introduction"

Transcription

1 Cyclic scheduling: an introduction Claire Hanen Université Paris X Nanterre / LIP6 UPMC Cyclic scheduling for EPIT 00 p. /?

2 Summary Definition Uniform precedence constraints Feasibility Periodic schedules Earliest schedule Resource constraints Periodicity and Patterns Complexity approximation ILP formulations Perspectives Cyclic scheduling for EPIT 00 p. /?

3 Definition A set of tasks T to be repeated many times assumed infinite For i T, < i,k > denotes k th occurrence of i An infinite schedule σ defines: k 0 t σ (< i,k >) starting time of < i,k > Resources for each task execution Cyclic scheduling for EPIT 00 p. /?

4 Optimizing Minimizing the average cycle time : A(σ) = max A(σ,i) = limsup t σ (< i,k >) k + i T k Maximizing the throughput: D(σ) = A(σ) For a given average cycle time, minimizing the amount of resources per time units (ex: nb of processors, nb of registers,...) Cyclic scheduling for EPIT 00 p. /?

5 Applications and models Implementing loops on parallel architectures compiling, code generation embedded applications litterature on software pipelining and dataflow computations Mass production Cyclic shop problems Hoist scheduling problem. litterature on cyclic scheduling in production systems Models of parallelism timed Petri Nets Graphs Max + algebra litterature on parametric paths, timed event graphs, Max + Cyclic scheduling for EPIT 00 p. 5/?

6 Infinite schedule? Algorithms-> finite description Static schedule Must be regular /time and resources Dynamic policy examples: earliest schedule, regular priorities on resources assignment Cyclic scheduling for EPIT 00 p. 6/?

7 Loop example Assume arrays A, B, C, D, and that the processor can compute several instructions in parallel : for I = to N do B(I) = A(I ) + task <, k > precedes <, k > C(I) = B(I) + 5 task <, k > precedes <, k > D(I) = B(I ) D(I) task <, k > precedes <, k > A(I) = C(I ) + D(I) task <, k >, <, k > precede <, k > Precedence constraints are uniforms: if < i, k > precedes < j, l > then for all integers δ, < i, k + δ > precedes < j, l + δ > Cyclic scheduling for EPIT 00 p. /?

8 yclic scheduling with uniform precedence A set T of n generic tasks with processing times p,..., p n non reentrance: < i, k > precedes < i, k + > k A multi-graph G = (T, A) of uniform constraints For each arc a A, A value called length L(a) Z also mentioned as latency or delay A value called height H(a) Z also called dependence distance (L(a), H(a)) If i = b(a) et j = e(a), k, t σ (< i, k >) + L(a) t σ (< j, k + H(a) >) b(a) e(a) Find an infinite feasible schedule minimizing the average cycle time. Definition. The Length of path µ, denoted L(µ) = sum of arcs length. Height of µ, denoted by H(µ) = sum of arcs height. Remark. Non-reentrance can be expressed with uniform constraints : arcs (i, i) with length p i and height. Cyclic scheduling for EPIT 00 p. 8/?

9 Example Negative length can be used to model deadlines : t σ (< 5,k >) t σ (<,k >) + 0 Cyclic scheduling for EPIT 00 p. 9/?

10 Questions Feasibility Construction and properties of schedules. Periodic schedules Earliest schedule Performance Cyclic scheduling for EPIT 00 p. 0/?

11 Feasibility For any path µ from i to j, k max(, H(C)), t σ (< i, k >) + L(µ) t σ (< j, k + H(µ) >) For any circuit C of G, and task i in C: k max(, H(C)), t σ (< i, k >) + L(C) t σ (< i, k + H(C) >) Non reentrance Lemma. [Lee 05][Munier 06] If G is feasible then for any circuit C such that H(C) 0, L(C) 0. If H N this condition is sufficient [many authors] [Chretienne 85] If H(C) > 0, k = qh(c) + r then t σ (< i, k >) ql(c) + t σ (< i, r >). If H(C) < 0 and k = qh(c) + r then t σ (< i, k >) ql(c) + t σ (< i, r >) Lemma. If H(C) 0, A(σ, i) = limsup k + If H(C) < 0, A(σ, i) L(C) H(C) t σ (< i, k >) k L(C) H(C). Cyclic scheduling for EPIT 00 p. /?

12 Feasibility and performance bounds For a circuit C the Index of C: α(c) = L(C) H(C) C + (i) set of circuits C s.t. i C and H(C) 0. C (i) set of circuits C s.t. i C and H(C) < 0. C + = i T C + (i) C = i T C (i) Corollary. If G is feasible then for any task i, and for any schedule σ max α(c) A(σ, i) min C C + (i) α(c) C C (i) A critical circuit is a circuit C C + s.t α(c) is maximum : lower bound on A(σ). Cyclic scheduling for EPIT 00 p. /?

13 Periodic schedules Definition. A schedule σ is periodic if each task i has a period w i such that: t σ (< i,k >) = t σ (< i, >) + (k )w i Let a be an arc from b(a) to e(a) k, t σ (< b(a), >) + (k )w b(a) + L(a) t σ (< e(a), >) + (k )w e(a) + H(a)w e(a) t σ (< e(a), >) t σ (< b(a), >) L(a) w e(a) H(a) + (k )(w b(a) w e(a) ) Cyclic scheduling for EPIT 00 p. /?

14 Existence of a periodic schedule Lemma. for any arc a, w b(a) w e(a). We denote by C,...,C q the strong components of G. Let α + (C s ) = Corollary. max α(c) and C C s,h(c)>0 α (C s ) = min α(c) C C s,h(c)<0 s, i,j C s,w i = w j = W s and α + (C s ) W s α (C s ) Moreover, if there is an arc a s.t. b(a) C s,e(a) C s then W s W s Cyclic scheduling for EPIT 00 p. /?

15 Example C = {,,}, C = {,5}, C = {6} α + (C ) = 0, α (C ) =, α + (C ) =, α (C ) =, α + (C ) = 5 0 W, W, 5 W, W W, W W W = 0, W =, W = 0. Notice that W = W = W = 0 is also a solution. Cyclic scheduling for EPIT 00 p. 5/?

16 Feasibility Theorem. [Munier 06] G is feasible if and only if there exists a periodic schedule. Idea : If no periodic schedule exists, build paths µ x between i and j in G such that H(µ x )= h and for some k. lim L(µ x) +, which contradicts x + t σ (< j,k >) t σ (< i,k + h >) L(µ x ) Cyclic scheduling for EPIT 00 p. 6/?

17 Computation of a periodic schedule For a strong connected graph G and a given W : a, t σ (< e(a), >) t σ (< b(a), >) L(a) W.H(a) Let V W (a) = L(a) W.H(a) If (G,V W ) has positive circuits then infeasibility. otherwise t σ (< i, >) = longest path to i in (G,V W ) is a solution. Bellman-Ford algorithm Cyclic scheduling for EPIT 00 p. /?

18 Computation of critical circuits [Dasdan et al 99] Polynomial algorithms : Binary search on W: at each step check if (G, V W ) has positive circuits 0(nm(log n + log max a (L(a), H(a)))) [Lawler 9][Gondran-Minoux 85] Linear programming with primal dual approach O(n m) [Burns 9] An efficient pseudo polynomial algorithm: Howard s algorithm[cochet-terrasson et al 98] W = lower bound At each step check if G, V W ) has positive circuit C with breadth first search. If H(C) <= 0 stop. Otherwise set W = α(c). complexity O(m.X), X product of degrees of nodes. Cyclic scheduling for EPIT 00 p. 8/?

19 mputation of an optimal periodic schedu Compute the strong components of G O(n + m) Check feasibility for each component C s, and the critical circuit value α s.o(nm log(n) + log(v max )) Compute the reduced graph of components.o(n + m) Sort the components by topological order.o(n + m) for each component C s. if C s has no predecessor, set W s = α s. if C x,..., C xr are predecessors of C s. Let β s = max i W xi If α s β s set W s = α s. otherwise check if (C s, V βs ) has some positive circuit.o(nm) if so,infeasibility otherwise set W s = β s. Compute the longest paths from a dummy source node to any node i on G with on each component value V Ws and on each intermediate arc between C s, C s value V Ws. O(nm) t σ (< i, >) = longest path to i. Cyclic scheduling for EPIT 00 p. 9/?

20 Example Graph with L W s H values: A periodic schedule: period of,,,6 is 0, period of,5 is Cyclic scheduling for EPIT 00 p. 0/?

21 Positive heights The problem has been studied earlier [Chretienne 85][many authors] Theorem. For any w max C circuit α(c) there is a periodic schedule, all tasks have period w. No need to compute strong components. Cyclic scheduling for EPIT 00 p. /?

22 K-periodic schedules Definition. In a K-periodic schedule σ, a schedule of K i occurrences of task i is repeated every W i time units: l l 0, t σ (< i,l + K i >) = t σ (< i,l >) + W i Lemma. The average cycle time of task i in a K periodic schedule is A(σ,i) = W i K i. Un ordonnancement -périodique (pour chaque tâche) Cyclic scheduling for EPIT 00 p. /?

23 Properties of the earliest schedule [Romanovskii 6,Chretienne 85, Munier 06] Theorem. If G is feasible, the earliest schedule σ is K-periodic and A(σ ) = max C C + α(c) After a transitory time, the earliest schedule becomes regular and its behavior is ruled by the critical circuit index. Remark. K might be large product of heights of critical circuits. Open questions Length of the transitory time? Exact measure of K. Cyclic scheduling for EPIT 00 p. /?

24 Stability/boundedness cycle time w cycle time w (L(a), H(a)) b(a) e(a) If w < w then b(a) produces pieces or results faster than e(a). Unstability Moreover the iteration delay: D σ (k) = max i T tσ (< i,k >) min i T tσ (< i,k >) k + + This might occur in earliest schedule and in periodic schedules for general uniform graphs. Cyclic scheduling for EPIT 00 p. /?

25 Example if task has processing time : (,0) (,0) (,) (,) (,) 5 (,) (,0) 6 (,0) There are strong components C = {,, }, C = {}, C = {5,6, } α(c ) =, α(c ) =, α(c ) = 5 The earliest schedule of i is periodic with period 6. The earliest schedule of {5, 6,} is periodic with period 5. Unstable schedule Here a static -periodic schedule with period 5 can be built. Cyclic scheduling for EPIT 00 p. 5/?

26 Cyclic problems with resources Complexity of a cyclic problem/ its non cyclic version. Tools for constructing periodic schedules: circuits and patterns Polynomial problems Are periodic schedules optimal? Decomposed scheduling: a general approach Approximation of decomposed scheduling ILP formulations Cyclic scheduling for EPIT 00 p. 6/?

27 Complexity Consider a problem resources prec C max which is NP-hard. A simple Reduction: precedence graph G Add two dummy nodes to G (source s, sink t with unit proce s G t set H(a) = 0 for all arcs in G and arcs from s and arcs to t. Add an arc from t to s with height. Any schedule σ of G is a sequence of schedules of G. Corollary. Its average cycle time A(σ ) is the mean of makespan of G schedules A(σ ) B C max (G) B P uniform prec, p i = A, pre assigned processors uniform prec A, cyclic job-shop with uniform constraints are NP-hard Cyclic scheduling for EPIT 00 p. /?

28 Circuits Consider a uniform graph G =circuit, such that for any arc a L(a) = p b(a) : usual precedence constraints. Lemma 5. In any schedule of G no more than H(G) tasks are performed in parallel. Corollary. [Munier 9] The problem P circuit,l(a) = p b(a) A is solvable in polynomial time. Idea : if H(G) m then any schedule meets the resource constraint. If H(G) > m, then we can reduce the height of some arcs so that H(G) = m without modifiying the lower bound on A(σ) max(max p i T i, p i i T m ) Cyclic scheduling for EPIT 00 p. 8/?

29 Patterns Let σ be a periodic schedule with unique period w. t σ (< i,k >) = t σ (< i, >) + (k )w Definition. The Pattern of σ is defined by: π σ (i) = t σ (< i, >)modw. The iteration setting of σ is η σ (i) Z, s.t. t σ (< i, >) = π σ (i) + η σ (i)w Cyclic scheduling for EPIT 00 p. 9/?

30 Patterns The pattern defines the schedule of tasks in an interval [kw, (k + )w] for enough large k The iteration setting indicates which occurrences of tasks are involved in this interval In the interval [kw, (k + )w], i starts at kw + π σ (i) its occurrence < i,k + η σ (i) > Cyclic scheduling for EPIT 00 p. 0/?

31 Feasibility of a pattern Question: Given a pattern π,and a period w is there an iteration setting η such that the uniform constraints are met by the periodic schedule? For an arc a, t(< e(a), >) t(< b(a), >) L(a) wh(a). Lemma 6. An iteration setting satisfies for any arc a L(a) + π(b(a)) π(e(a)) η(e(a)) η(b(a)) H(a) = E w,π (a) w Lemma. An iteration setting exists iff (G,E w,π ) has no positive circuit. can be checked in polynomial time Cyclic scheduling for EPIT 00 p. /?

32 Polynomial problems Corollary 5. if G has no other circuit than the non-reentrance loops, any pattern has an iteration setting. Theorem. [Munier 9] P acyclic unif orm prec A is sovlable in polynomial time. Idea: Consider tasks as independent, and schedule them on m processors using Mc-Naughton algorithm (preemptive scheduling). Use the schedule as a Pattern of a periodic schedule and compute the iteration setting. Theorem 5. dedicated processors acyclic unif orm prec A is solvable in polynomial time. In particular non-reentrant job-shop or flow-shop. Idea: schedule operations on each machine as independent. Set W = C max (which is a lower bound on A(σ) in this case). Use the schedule as a Pattern of a periodic schedule and compute the iteration setting. [Robert, Legrand] also used similar ideas to build schedules for a broadcasting problem on a heterogeneous platform with net contentions. Cyclic scheduling for EPIT 00 p. /?

33 Example h= 6 5 h= Cyclic scheduling for EPIT 00 p. /?

34 Optimality of periodic schedules? In general, periodic schedules are not optimal schedules. Example: cyclic problem with two processors h= 6 5 h= However, periodic schedules are simple to implement and easier to compute. Cyclic scheduling for EPIT 00 p. /?

35 ecomposed scheduling: a general approac Also known as Decomposed software pipelining[eisenbeis, Darte, Gasperoni, Schwiegelsohn, de dinechin, Munier,...] OR Build a non cyclic schedule S of T that meets the resource constraints and eventually some precedence constraints. Consider this schedule as a pattern, and set W = C max (S) Build a feasible iteration setting for the pattern. (if possible) Build an iteration setting. Deduce from the iteration setting precedence relations between tasks in a pattern Build a non cyclic schedule S of T that meets the resource constraints and these precedence constraints. Consider this schedule as a pattern, and set W = C max (S) Cyclic scheduling for EPIT 00 p. 5/?

36 Gasperoni-Schwiegelsohn algorithm An algorithm for P uniform with L(a) = p b(a) A. Compute an optimal schedule σ on infinitely many processors. Consider the pattern π σ and remove arcs a from G such that π σ (b(a)) + p b(a) > π σ (e(a)) G. Schedule G on the m processors according to a list scheduling algorithm schedule S. Set S as a pattern with w = C max (S) and combine with the iteration setting of σ periodic feasible schedule σ. Cyclic scheduling for EPIT 00 p. 6/?

37 Example (,) (,0) (,0) (,) (,) 5 (,) (,0) 6 (,0) G has arcs 6 5 Schedule on processors periodic schedule with period 6 Cyclic scheduling for EPIT 00 p. /?

38 Bounds Theorem 6. [Gasperoni-Schwiegelsohn] A(σ) ( m )A(σopt ) + max i T p i [Darte et al] generalized the algorithm by choosing a convenient G using retiming. Cyclic scheduling for EPIT 00 p. 8/?

39 Disjunctive constraints Assume that two tasks i and j use the same resource: k, l, either t σ (< i, k >) + p i t σ (< j, l >) or t σ (< j, l >) + p j t σ (< i, k >). If σ is periodic with period w, in time interval [xw, (x + )w)] there is only one occurrence < i, u i (x) >. < j, u i (x) + h ij > next occurrence of j. < j, u i (x) + h ij > < i, u i (x) > < j, u i (x) + h ij > < j, u i (x) + h ij > precedes < i, u i (x) >. Hence setting h ij Z as a variable, the disjunctive constraints can be expressed as: xw (x + )w t σ (< j, >) t σ (< i, >) p i wh ij t σ (< i, >) t σ (< j, >) p j wh ji h ij + h ji = Cyclic scheduling for EPIT 00 p. 9/?

40 ILP model General form of constraints: t σ (< e(a), >) t σ (< b(a), >) L(a) wh(a) Heights might be either fixed or variables. Additional linear constraints on variable heights might be added. Remark. For a fixed w, the constraint is linear. Remark. Once disjunctive variables of this ILP are fixed, it remains a uniform graph scheduling problem. Many problems with disjunctive resources (shop-problems, but also Hoist scheduling problems)[roundy],[brucker], [Levner et al] [Chu et al][lei et al]can be formulated, for a fixed w as an mixed integer linear program. Cyclic scheduling for EPIT 00 p. 0/?

41 Algorithms for disjunctive problems Branch and bound algorithms For cyclic job-shop problems [Roundy,Hanen, Kampmeyer and Brücker] For hoist scheduling[lei and Wang, Chu and Proth] Metaheuristics [Kampmeyer and Brücker] Cyclic scheduling for EPIT 00 p. /?

42 Some Open problems Transitory state of the earliest schedule. Complexity of the cyclic problem with unit lengths an processors. How to use results on scheduling problems in their cyclic version? Efficiency of Jackson algorithm for the -machine problem Specific list schedules for parallel machines problems. Defining regular dynamic policy and study their behaviour. Regularity of the schedule, performance bounds. Cyclic scheduling for EPIT 00 p. /?

Scheduling Shop Scheduling. Tim Nieberg

Scheduling Shop Scheduling. Tim Nieberg Scheduling Shop Scheduling Tim Nieberg Shop models: General Introduction Remark: Consider non preemptive problems with regular objectives Notation Shop Problems: m machines, n jobs 1,..., n operations

More information

5 INTEGER LINEAR PROGRAMMING (ILP) E. Amaldi Fondamenti di R.O. Politecnico di Milano 1

5 INTEGER LINEAR PROGRAMMING (ILP) E. Amaldi Fondamenti di R.O. Politecnico di Milano 1 5 INTEGER LINEAR PROGRAMMING (ILP) E. Amaldi Fondamenti di R.O. Politecnico di Milano 1 General Integer Linear Program: (ILP) min c T x Ax b x 0 integer Assumption: A, b integer The integrality condition

More information

Classification - Examples

Classification - Examples Lecture 2 Scheduling 1 Classification - Examples 1 r j C max given: n jobs with processing times p 1,...,p n and release dates r 1,...,r n jobs have to be scheduled without preemption on one machine taking

More information

! Solve problem to optimality. ! Solve problem in poly-time. ! Solve arbitrary instances of the problem. #-approximation algorithm.

! Solve problem to optimality. ! Solve problem in poly-time. ! Solve arbitrary instances of the problem. #-approximation algorithm. Approximation Algorithms 11 Approximation Algorithms Q Suppose I need to solve an NP-hard problem What should I do? A Theory says you're unlikely to find a poly-time algorithm Must sacrifice one of three

More information

Introduction to Scheduling Theory

Introduction to Scheduling Theory Introduction to Scheduling Theory Arnaud Legrand Laboratoire Informatique et Distribution IMAG CNRS, France arnaud.legrand@imag.fr November 8, 2004 1/ 26 Outline 1 Task graphs from outer space 2 Scheduling

More information

! Solve problem to optimality. ! Solve problem in poly-time. ! Solve arbitrary instances of the problem. !-approximation algorithm.

! Solve problem to optimality. ! Solve problem in poly-time. ! Solve arbitrary instances of the problem. !-approximation algorithm. Approximation Algorithms Chapter Approximation Algorithms Q Suppose I need to solve an NP-hard problem What should I do? A Theory says you're unlikely to find a poly-time algorithm Must sacrifice one of

More information

Chapter 11. 11.1 Load Balancing. Approximation Algorithms. Load Balancing. Load Balancing on 2 Machines. Load Balancing: Greedy Scheduling

Chapter 11. 11.1 Load Balancing. Approximation Algorithms. Load Balancing. Load Balancing on 2 Machines. Load Balancing: Greedy Scheduling Approximation Algorithms Chapter Approximation Algorithms Q. Suppose I need to solve an NP-hard problem. What should I do? A. Theory says you're unlikely to find a poly-time algorithm. Must sacrifice one

More information

Scheduling Single Machine Scheduling. Tim Nieberg

Scheduling Single Machine Scheduling. Tim Nieberg Scheduling Single Machine Scheduling Tim Nieberg Single machine models Observation: for non-preemptive problems and regular objectives, a sequence in which the jobs are processed is sufficient to describe

More information

Algorithm Design and Analysis

Algorithm Design and Analysis Algorithm Design and Analysis LECTURE 27 Approximation Algorithms Load Balancing Weighted Vertex Cover Reminder: Fill out SRTEs online Don t forget to click submit Sofya Raskhodnikova 12/6/2011 S. Raskhodnikova;

More information

11. APPROXIMATION ALGORITHMS

11. APPROXIMATION ALGORITHMS 11. APPROXIMATION ALGORITHMS load balancing center selection pricing method: vertex cover LP rounding: vertex cover generalized load balancing knapsack problem Lecture slides by Kevin Wayne Copyright 2005

More information

Single machine parallel batch scheduling with unbounded capacity

Single machine parallel batch scheduling with unbounded capacity Workshop on Combinatorics and Graph Theory 21th, April, 2006 Nankai University Single machine parallel batch scheduling with unbounded capacity Yuan Jinjiang Department of mathematics, Zhengzhou University

More information

Approximation Algorithms

Approximation Algorithms Approximation Algorithms or: How I Learned to Stop Worrying and Deal with NP-Completeness Ong Jit Sheng, Jonathan (A0073924B) March, 2012 Overview Key Results (I) General techniques: Greedy algorithms

More information

Approximability of Two-Machine No-Wait Flowshop Scheduling with Availability Constraints

Approximability of Two-Machine No-Wait Flowshop Scheduling with Availability Constraints Approximability of Two-Machine No-Wait Flowshop Scheduling with Availability Constraints T.C. Edwin Cheng 1, and Zhaohui Liu 1,2 1 Department of Management, The Hong Kong Polytechnic University Kowloon,

More information

Applied Algorithm Design Lecture 5

Applied Algorithm Design Lecture 5 Applied Algorithm Design Lecture 5 Pietro Michiardi Eurecom Pietro Michiardi (Eurecom) Applied Algorithm Design Lecture 5 1 / 86 Approximation Algorithms Pietro Michiardi (Eurecom) Applied Algorithm Design

More information

Discrete Optimization

Discrete Optimization Discrete Optimization [Chen, Batson, Dang: Applied integer Programming] Chapter 3 and 4.1-4.3 by Johan Högdahl and Victoria Svedberg Seminar 2, 2015-03-31 Todays presentation Chapter 3 Transforms using

More information

Scheduling a sequence of tasks with general completion costs

Scheduling a sequence of tasks with general completion costs Scheduling a sequence of tasks with general completion costs Francis Sourd CNRS-LIP6 4, place Jussieu 75252 Paris Cedex 05, France Francis.Sourd@lip6.fr Abstract Scheduling a sequence of tasks in the acceptation

More information

Dynamic programming. Doctoral course Optimization on graphs - Lecture 4.1. Giovanni Righini. January 17 th, 2013

Dynamic programming. Doctoral course Optimization on graphs - Lecture 4.1. Giovanni Righini. January 17 th, 2013 Dynamic programming Doctoral course Optimization on graphs - Lecture.1 Giovanni Righini January 1 th, 201 Implicit enumeration Combinatorial optimization problems are in general NP-hard and we usually

More information

Discuss the size of the instance for the minimum spanning tree problem.

Discuss the size of the instance for the minimum spanning tree problem. 3.1 Algorithm complexity The algorithms A, B are given. The former has complexity O(n 2 ), the latter O(2 n ), where n is the size of the instance. Let n A 0 be the size of the largest instance that can

More information

Introducción a Calendarización en Sistemas Paralelas, Grids y Nubes

Introducción a Calendarización en Sistemas Paralelas, Grids y Nubes CICESE Research Center Ensenada, Baja California Mexico Introducción a Calendarización en Sistemas Paralelas, Grids y Nubes Dr. Andrei Tchernykh CICESE Centro de Investigación Científica y de Educación

More information

THE SCHEDULING OF MAINTENANCE SERVICE

THE SCHEDULING OF MAINTENANCE SERVICE THE SCHEDULING OF MAINTENANCE SERVICE Shoshana Anily Celia A. Glass Refael Hassin Abstract We study a discrete problem of scheduling activities of several types under the constraint that at most a single

More information

CHAPTER 9. Integer Programming

CHAPTER 9. Integer Programming CHAPTER 9 Integer Programming An integer linear program (ILP) is, by definition, a linear program with the additional constraint that all variables take integer values: (9.1) max c T x s t Ax b and x integral

More information

Complexity Theory. IE 661: Scheduling Theory Fall 2003 Satyaki Ghosh Dastidar

Complexity Theory. IE 661: Scheduling Theory Fall 2003 Satyaki Ghosh Dastidar Complexity Theory IE 661: Scheduling Theory Fall 2003 Satyaki Ghosh Dastidar Outline Goals Computation of Problems Concepts and Definitions Complexity Classes and Problems Polynomial Time Reductions Examples

More information

Embedded Systems 20 REVIEW. Multiprocessor Scheduling

Embedded Systems 20 REVIEW. Multiprocessor Scheduling Embedded Systems 0 - - Multiprocessor Scheduling REVIEW Given n equivalent processors, a finite set M of aperiodic/periodic tasks find a schedule such that each task always meets its deadline. Assumptions:

More information

Duplicating and its Applications in Batch Scheduling

Duplicating and its Applications in Batch Scheduling Duplicating and its Applications in Batch Scheduling Yuzhong Zhang 1 Chunsong Bai 1 Shouyang Wang 2 1 College of Operations Research and Management Sciences Qufu Normal University, Shandong 276826, China

More information

2.3.5 Project planning

2.3.5 Project planning efinitions:..5 Project planning project consists of a set of m activities with their duration: activity i has duration d i, i = 1,..., m. estimate Some pairs of activities are subject to a precedence constraint:

More information

A generalized job-shop problem with more than one resource demand per task

A generalized job-shop problem with more than one resource demand per task A generalized job-shop problem with more than one resource demand per task Joachim Schauer Cornelius Schwarz Abstract We study a generalized job-shop problem called the Laser Sharing Problem with fixed

More information

Minimizing the Number of Machines in a Unit-Time Scheduling Problem

Minimizing the Number of Machines in a Unit-Time Scheduling Problem Minimizing the Number of Machines in a Unit-Time Scheduling Problem Svetlana A. Kravchenko 1 United Institute of Informatics Problems, Surganova St. 6, 220012 Minsk, Belarus kravch@newman.bas-net.by Frank

More information

Embedded Systems 20 BF - ES

Embedded Systems 20 BF - ES Embedded Systems 20-1 - Multiprocessor Scheduling REVIEW Given n equivalent processors, a finite set M of aperiodic/periodic tasks find a schedule such that each task always meets its deadline. Assumptions:

More information

Cost Model: Work, Span and Parallelism. 1 The RAM model for sequential computation:

Cost Model: Work, Span and Parallelism. 1 The RAM model for sequential computation: CSE341T 08/31/2015 Lecture 3 Cost Model: Work, Span and Parallelism In this lecture, we will look at how one analyze a parallel program written using Cilk Plus. When we analyze the cost of an algorithm

More information

An improved on-line algorithm for scheduling on two unrestrictive parallel batch processing machines

An improved on-line algorithm for scheduling on two unrestrictive parallel batch processing machines This is the Pre-Published Version. An improved on-line algorithm for scheduling on two unrestrictive parallel batch processing machines Q.Q. Nong, T.C.E. Cheng, C.T. Ng Department of Mathematics, Ocean

More information

Why? A central concept in Computer Science. Algorithms are ubiquitous.

Why? A central concept in Computer Science. Algorithms are ubiquitous. Analysis of Algorithms: A Brief Introduction Why? A central concept in Computer Science. Algorithms are ubiquitous. Using the Internet (sending email, transferring files, use of search engines, online

More information

How To Find An Optimal Search Protocol For An Oblivious Cell

How To Find An Optimal Search Protocol For An Oblivious Cell The Conference Call Search Problem in Wireless Networks Leah Epstein 1, and Asaf Levin 2 1 Department of Mathematics, University of Haifa, 31905 Haifa, Israel. lea@math.haifa.ac.il 2 Department of Statistics,

More information

The Goldberg Rao Algorithm for the Maximum Flow Problem

The Goldberg Rao Algorithm for the Maximum Flow Problem The Goldberg Rao Algorithm for the Maximum Flow Problem COS 528 class notes October 18, 2006 Scribe: Dávid Papp Main idea: use of the blocking flow paradigm to achieve essentially O(min{m 2/3, n 1/2 }

More information

5.1 Bipartite Matching

5.1 Bipartite Matching CS787: Advanced Algorithms Lecture 5: Applications of Network Flow In the last lecture, we looked at the problem of finding the maximum flow in a graph, and how it can be efficiently solved using the Ford-Fulkerson

More information

Fairness in Routing and Load Balancing

Fairness in Routing and Load Balancing Fairness in Routing and Load Balancing Jon Kleinberg Yuval Rabani Éva Tardos Abstract We consider the issue of network routing subject to explicit fairness conditions. The optimization of fairness criteria

More information

Software Pipelining. Y.N. Srikant. NPTEL Course on Compiler Design. Department of Computer Science Indian Institute of Science Bangalore 560 012

Software Pipelining. Y.N. Srikant. NPTEL Course on Compiler Design. Department of Computer Science Indian Institute of Science Bangalore 560 012 Department of Computer Science Indian Institute of Science Bangalore 560 2 NPTEL Course on Compiler Design Introduction to Overlaps execution of instructions from multiple iterations of a loop Executes

More information

Abstract Title: Planned Preemption for Flexible Resource Constrained Project Scheduling

Abstract Title: Planned Preemption for Flexible Resource Constrained Project Scheduling Abstract number: 015-0551 Abstract Title: Planned Preemption for Flexible Resource Constrained Project Scheduling Karuna Jain and Kanchan Joshi Shailesh J. Mehta School of Management, Indian Institute

More information

Proximal mapping via network optimization

Proximal mapping via network optimization L. Vandenberghe EE236C (Spring 23-4) Proximal mapping via network optimization minimum cut and maximum flow problems parametric minimum cut problem application to proximal mapping Introduction this lecture:

More information

A Linear Programming Based Method for Job Shop Scheduling

A Linear Programming Based Method for Job Shop Scheduling A Linear Programming Based Method for Job Shop Scheduling Kerem Bülbül Sabancı University, Manufacturing Systems and Industrial Engineering, Orhanlı-Tuzla, 34956 Istanbul, Turkey bulbul@sabanciuniv.edu

More information

4.6 Linear Programming duality

4.6 Linear Programming duality 4.6 Linear Programming duality To any minimization (maximization) LP we can associate a closely related maximization (minimization) LP. Different spaces and objective functions but in general same optimal

More information

Minimizing costs for transport buyers using integer programming and column generation. Eser Esirgen

Minimizing costs for transport buyers using integer programming and column generation. Eser Esirgen MASTER STHESIS Minimizing costs for transport buyers using integer programming and column generation Eser Esirgen DepartmentofMathematicalSciences CHALMERS UNIVERSITY OF TECHNOLOGY UNIVERSITY OF GOTHENBURG

More information

Throughput constraint for Synchronous Data Flow Graphs

Throughput constraint for Synchronous Data Flow Graphs Throughput constraint for Synchronous Data Flow Graphs *Alessio Bonfietti Michele Lombardi Michela Milano Luca Benini!"#$%&'()*+,-)./&0&20304(5 60,7&-8990,.+:&;/&."!?@A>&"'&=,0B+C. !"#$%&'()* Resource

More information

A Practical Scheme for Wireless Network Operation

A Practical Scheme for Wireless Network Operation A Practical Scheme for Wireless Network Operation Radhika Gowaikar, Amir F. Dana, Babak Hassibi, Michelle Effros June 21, 2004 Abstract In many problems in wireline networks, it is known that achieving

More information

Beyond the Stars: Revisiting Virtual Cluster Embeddings

Beyond the Stars: Revisiting Virtual Cluster Embeddings Beyond the Stars: Revisiting Virtual Cluster Embeddings Matthias Rost Technische Universität Berlin September 7th, 2015, Télécom-ParisTech Joint work with Carlo Fuerst, Stefan Schmid Published in ACM SIGCOMM

More information

JUST-IN-TIME SCHEDULING WITH PERIODIC TIME SLOTS. Received December May 12, 2003; revised February 5, 2004

JUST-IN-TIME SCHEDULING WITH PERIODIC TIME SLOTS. Received December May 12, 2003; revised February 5, 2004 Scientiae Mathematicae Japonicae Online, Vol. 10, (2004), 431 437 431 JUST-IN-TIME SCHEDULING WITH PERIODIC TIME SLOTS Ondřej Čepeka and Shao Chin Sung b Received December May 12, 2003; revised February

More information

Parallel machines scheduling with applications to Internet ad-slot placement

Parallel machines scheduling with applications to Internet ad-slot placement UNLV Theses/Dissertations/Professional Papers/Capstones 12-2011 Parallel machines scheduling with applications to Internet ad-slot placement Shaista Lubna University of Nevada, Las Vegas Follow this and

More information

Analysis of Algorithms I: Binary Search Trees

Analysis of Algorithms I: Binary Search Trees Analysis of Algorithms I: Binary Search Trees Xi Chen Columbia University Hash table: A data structure that maintains a subset of keys from a universe set U = {0, 1,..., p 1} and supports all three dictionary

More information

Common Approaches to Real-Time Scheduling

Common Approaches to Real-Time Scheduling Common Approaches to Real-Time Scheduling Clock-driven time-driven schedulers Priority-driven schedulers Examples of priority driven schedulers Effective timing constraints The Earliest-Deadline-First

More information

Scheduling Jobs and Preventive Maintenance Activities on Parallel Machines

Scheduling Jobs and Preventive Maintenance Activities on Parallel Machines Scheduling Jobs and Preventive Maintenance Activities on Parallel Machines Maher Rebai University of Technology of Troyes Department of Industrial Systems 12 rue Marie Curie, 10000 Troyes France maher.rebai@utt.fr

More information

Minimum cost maximum flow, Minimum cost circulation, Cost/Capacity scaling

Minimum cost maximum flow, Minimum cost circulation, Cost/Capacity scaling 6.854 Advanced Algorithms Lecture 16: 10/11/2006 Lecturer: David Karger Scribe: Kermin Fleming and Chris Crutchfield, based on notes by Wendy Chu and Tudor Leu Minimum cost maximum flow, Minimum cost circulation,

More information

Single machine models: Maximum Lateness -12- Approximation ratio for EDD for problem 1 r j,d j < 0 L max. structure of a schedule Q...

Single machine models: Maximum Lateness -12- Approximation ratio for EDD for problem 1 r j,d j < 0 L max. structure of a schedule Q... Lecture 4 Scheduling 1 Single machine models: Maximum Lateness -12- Approximation ratio for EDD for problem 1 r j,d j < 0 L max structure of a schedule 0 Q 1100 11 00 11 000 111 0 0 1 1 00 11 00 11 00

More information

Optimization Modeling for Mining Engineers

Optimization Modeling for Mining Engineers Optimization Modeling for Mining Engineers Alexandra M. Newman Division of Economics and Business Slide 1 Colorado School of Mines Seminar Outline Linear Programming Integer Linear Programming Slide 2

More information

Real Time Scheduling Basic Concepts. Radek Pelánek

Real Time Scheduling Basic Concepts. Radek Pelánek Real Time Scheduling Basic Concepts Radek Pelánek Basic Elements Model of RT System abstraction focus only on timing constraints idealization (e.g., zero switching time) Basic Elements Basic Notions task

More information

On some Potential Research Contributions to the Multi-Core Enterprise

On some Potential Research Contributions to the Multi-Core Enterprise On some Potential Research Contributions to the Multi-Core Enterprise Oded Maler CNRS - VERIMAG Grenoble, France February 2009 Background This presentation is based on observations made in the Athole project

More information

ONLINE DEGREE-BOUNDED STEINER NETWORK DESIGN. Sina Dehghani Saeed Seddighin Ali Shafahi Fall 2015

ONLINE DEGREE-BOUNDED STEINER NETWORK DESIGN. Sina Dehghani Saeed Seddighin Ali Shafahi Fall 2015 ONLINE DEGREE-BOUNDED STEINER NETWORK DESIGN Sina Dehghani Saeed Seddighin Ali Shafahi Fall 2015 ONLINE STEINER FOREST PROBLEM An initially given graph G. s 1 s 2 A sequence of demands (s i, t i ) arriving

More information

6.852: Distributed Algorithms Fall, 2009. Class 2

6.852: Distributed Algorithms Fall, 2009. Class 2 .8: Distributed Algorithms Fall, 009 Class Today s plan Leader election in a synchronous ring: Lower bound for comparison-based algorithms. Basic computation in general synchronous networks: Leader election

More information

FIND ALL LONGER AND SHORTER BOUNDARY DURATION VECTORS UNDER PROJECT TIME AND BUDGET CONSTRAINTS

FIND ALL LONGER AND SHORTER BOUNDARY DURATION VECTORS UNDER PROJECT TIME AND BUDGET CONSTRAINTS Journal of the Operations Research Society of Japan Vol. 45, No. 3, September 2002 2002 The Operations Research Society of Japan FIND ALL LONGER AND SHORTER BOUNDARY DURATION VECTORS UNDER PROJECT TIME

More information

Introduction to Logic in Computer Science: Autumn 2006

Introduction to Logic in Computer Science: Autumn 2006 Introduction to Logic in Computer Science: Autumn 2006 Ulle Endriss Institute for Logic, Language and Computation University of Amsterdam Ulle Endriss 1 Plan for Today Now that we have a basic understanding

More information

Solutions to Homework 6

Solutions to Homework 6 Solutions to Homework 6 Debasish Das EECS Department, Northwestern University ddas@northwestern.edu 1 Problem 5.24 We want to find light spanning trees with certain special properties. Given is one example

More information

2.3.4 Project planning

2.3.4 Project planning .. Project planning project consists of a set of m activities with their duration: activity i has duration d i, i =,..., m. estimate Some pairs of activities are subject to a precedence constraint: i j

More information

Scheduling Home Health Care with Separating Benders Cuts in Decision Diagrams

Scheduling Home Health Care with Separating Benders Cuts in Decision Diagrams Scheduling Home Health Care with Separating Benders Cuts in Decision Diagrams André Ciré University of Toronto John Hooker Carnegie Mellon University INFORMS 2014 Home Health Care Home health care delivery

More information

Efficient and Robust Allocation Algorithms in Clouds under Memory Constraints

Efficient and Robust Allocation Algorithms in Clouds under Memory Constraints Efficient and Robust Allocation Algorithms in Clouds under Memory Constraints Olivier Beaumont,, Paul Renaud-Goud Inria & University of Bordeaux Bordeaux, France 9th Scheduling for Large Scale Systems

More information

MapReduce and Distributed Data Analysis. Sergei Vassilvitskii Google Research

MapReduce and Distributed Data Analysis. Sergei Vassilvitskii Google Research MapReduce and Distributed Data Analysis Google Research 1 Dealing With Massive Data 2 2 Dealing With Massive Data Polynomial Memory Sublinear RAM Sketches External Memory Property Testing 3 3 Dealing With

More information

Aperiodic Task Scheduling

Aperiodic Task Scheduling Aperiodic Task Scheduling Jian-Jia Chen (slides are based on Peter Marwedel) TU Dortmund, Informatik 12 Germany Springer, 2010 2014 年 11 月 19 日 These slides use Microsoft clip arts. Microsoft copyright

More information

Software Pipelining - Modulo Scheduling

Software Pipelining - Modulo Scheduling EECS 583 Class 12 Software Pipelining - Modulo Scheduling University of Michigan October 15, 2014 Announcements + Reading Material HW 2 Due this Thursday Today s class reading» Iterative Modulo Scheduling:

More information

Batch Production Scheduling in the Process Industries. By Prashanthi Ravi

Batch Production Scheduling in the Process Industries. By Prashanthi Ravi Batch Production Scheduling in the Process Industries By Prashanthi Ravi INTRODUCTION Batch production - where a batch means a task together with the quantity produced. The processing of a batch is called

More information

GameTime: A Toolkit for Timing Analysis of Software

GameTime: A Toolkit for Timing Analysis of Software GameTime: A Toolkit for Timing Analysis of Software Sanjit A. Seshia and Jonathan Kotker EECS Department, UC Berkeley {sseshia,jamhoot}@eecs.berkeley.edu Abstract. Timing analysis is a key step in the

More information

Dynamic programming formulation

Dynamic programming formulation 1.24 Lecture 14 Dynamic programming: Job scheduling Dynamic programming formulation To formulate a problem as a dynamic program: Sort by a criterion that will allow infeasible combinations to be eli minated

More information

Dependability Driven Integration of Mixed Criticality SW Components

Dependability Driven Integration of Mixed Criticality SW Components Dependability Driven Integration of Mixed Criticality SW Components Shariful Islam, Robert Lindström and Neeraj Suri Department of Computer Science TU Darmstadt, Germany {ripon,rl,suri}@informatik.tu-darmstadt.de

More information

A Constraint Programming based Column Generation Approach to Nurse Rostering Problems

A Constraint Programming based Column Generation Approach to Nurse Rostering Problems Abstract A Constraint Programming based Column Generation Approach to Nurse Rostering Problems Fang He and Rong Qu The Automated Scheduling, Optimisation and Planning (ASAP) Group School of Computer Science,

More information

Instruction Scheduling. Software Pipelining - 2

Instruction Scheduling. Software Pipelining - 2 and Software Pipelining - 2 Department of Computer Science and Automation Indian Institute of Science Bangalore 560 012 NPTEL Course on Principles of Compiler Design Outline Simple Basic Block Scheduling

More information

CMSC 858T: Randomized Algorithms Spring 2003 Handout 8: The Local Lemma

CMSC 858T: Randomized Algorithms Spring 2003 Handout 8: The Local Lemma CMSC 858T: Randomized Algorithms Spring 2003 Handout 8: The Local Lemma Please Note: The references at the end are given for extra reading if you are interested in exploring these ideas further. You are

More information

Branch-and-Price Approach to the Vehicle Routing Problem with Time Windows

Branch-and-Price Approach to the Vehicle Routing Problem with Time Windows TECHNISCHE UNIVERSITEIT EINDHOVEN Branch-and-Price Approach to the Vehicle Routing Problem with Time Windows Lloyd A. Fasting May 2014 Supervisors: dr. M. Firat dr.ir. M.A.A. Boon J. van Twist MSc. Contents

More information

A Branch and Bound Algorithm for Solving the Binary Bi-level Linear Programming Problem

A Branch and Bound Algorithm for Solving the Binary Bi-level Linear Programming Problem A Branch and Bound Algorithm for Solving the Binary Bi-level Linear Programming Problem John Karlof and Peter Hocking Mathematics and Statistics Department University of North Carolina Wilmington Wilmington,

More information

THE PROBLEM WORMS (1) WORMS (2) THE PROBLEM OF WORM PROPAGATION/PREVENTION THE MINIMUM VERTEX COVER PROBLEM

THE PROBLEM WORMS (1) WORMS (2) THE PROBLEM OF WORM PROPAGATION/PREVENTION THE MINIMUM VERTEX COVER PROBLEM 1 THE PROBLEM OF WORM PROPAGATION/PREVENTION I.E. THE MINIMUM VERTEX COVER PROBLEM Prof. Tiziana Calamoneri Network Algorithms A.y. 2014/15 2 THE PROBLEM WORMS (1)! A computer worm is a standalone malware

More information

Distributed and Scalable QoS Optimization for Dynamic Web Service Composition

Distributed and Scalable QoS Optimization for Dynamic Web Service Composition Distributed and Scalable QoS Optimization for Dynamic Web Service Composition Mohammad Alrifai L3S Research Center Leibniz University of Hannover, Germany alrifai@l3s.de Supervised by: Prof. Dr. tech.

More information

2.3 Convex Constrained Optimization Problems

2.3 Convex Constrained Optimization Problems 42 CHAPTER 2. FUNDAMENTAL CONCEPTS IN CONVEX OPTIMIZATION Theorem 15 Let f : R n R and h : R R. Consider g(x) = h(f(x)) for all x R n. The function g is convex if either of the following two conditions

More information

Minimal Cost Reconfiguration of Data Placement in a Storage Area Network

Minimal Cost Reconfiguration of Data Placement in a Storage Area Network Minimal Cost Reconfiguration of Data Placement in a Storage Area Network Hadas Shachnai Gal Tamir Tami Tamir Abstract Video-on-Demand (VoD) services require frequent updates in file configuration on the

More information

AN IMPLEMENTATION OF SWING MODULO SCHEDULING WITH EXTENSIONS FOR SUPERBLOCKS TANYA M. LATTNER

AN IMPLEMENTATION OF SWING MODULO SCHEDULING WITH EXTENSIONS FOR SUPERBLOCKS TANYA M. LATTNER AN IMPLEMENTATION OF SWING MODULO SCHEDULING WITH EXTENSIONS FOR SUPERBLOCKS BY TANYA M. LATTNER B.S., University of Portland, 2000 THESIS Submitted in partial fulfillment of the requirements for the degree

More information

Discrete Mathematics & Mathematical Reasoning Chapter 10: Graphs

Discrete Mathematics & Mathematical Reasoning Chapter 10: Graphs Discrete Mathematics & Mathematical Reasoning Chapter 10: Graphs Kousha Etessami U. of Edinburgh, UK Kousha Etessami (U. of Edinburgh, UK) Discrete Mathematics (Chapter 6) 1 / 13 Overview Graphs and Graph

More information

Batch Splitting in an Assembly Scheduling Environment

Batch Splitting in an Assembly Scheduling Environment Batch Splitting in an Assembly Scheduling Environment Satyaki Ghosh Dastidar Rakesh Nagi 1 420 Bell Hall, Department of Industrial Engineering, University at Buffalo (SUNY), Buffalo, NY 14260, USA. This

More information

Load-Balanced Virtual Backbone Construction for Wireless Sensor Networks

Load-Balanced Virtual Backbone Construction for Wireless Sensor Networks Load-Balanced Virtual Backbone Construction for Wireless Sensor Networks Jing (Selena) He, Shouling Ji, Yi Pan, Zhipeng Cai Department of Computer Science, Georgia State University, Atlanta, GA, USA, {jhe9,

More information

REAL TIME OPERATING SYSTEMS. Lesson-18:

REAL TIME OPERATING SYSTEMS. Lesson-18: REAL TIME OPERATING SYSTEMS Lesson-18: Round Robin Time Slicing of tasks of equal priorities 1 1. Common scheduling models 2 Common scheduling models Cooperative Scheduling of ready tasks in a circular

More information

Reinforcement Learning

Reinforcement Learning Reinforcement Learning LU 2 - Markov Decision Problems and Dynamic Programming Dr. Martin Lauer AG Maschinelles Lernen und Natürlichsprachliche Systeme Albert-Ludwigs-Universität Freiburg martin.lauer@kit.edu

More information

Hacking-proofness and Stability in a Model of Information Security Networks

Hacking-proofness and Stability in a Model of Information Security Networks Hacking-proofness and Stability in a Model of Information Security Networks Sunghoon Hong Preliminary draft, not for citation. March 1, 2008 Abstract We introduce a model of information security networks.

More information

Optimal Index Codes for a Class of Multicast Networks with Receiver Side Information

Optimal Index Codes for a Class of Multicast Networks with Receiver Side Information Optimal Index Codes for a Class of Multicast Networks with Receiver Side Information Lawrence Ong School of Electrical Engineering and Computer Science, The University of Newcastle, Australia Email: lawrence.ong@cantab.net

More information

Clustering and scheduling maintenance tasks over time

Clustering and scheduling maintenance tasks over time Clustering and scheduling maintenance tasks over time Per Kreuger 2008-04-29 SICS Technical Report T2008:09 Abstract We report results on a maintenance scheduling problem. The problem consists of allocating

More information

Permutation Betting Markets: Singleton Betting with Extra Information

Permutation Betting Markets: Singleton Betting with Extra Information Permutation Betting Markets: Singleton Betting with Extra Information Mohammad Ghodsi Sharif University of Technology ghodsi@sharif.edu Hamid Mahini Sharif University of Technology mahini@ce.sharif.edu

More information

The degree of a polynomial function is equal to the highest exponent found on the independent variables.

The degree of a polynomial function is equal to the highest exponent found on the independent variables. DETAILED SOLUTIONS AND CONCEPTS - POLYNOMIAL FUNCTIONS Prepared by Ingrid Stewart, Ph.D., College of Southern Nevada Please Send Questions and Comments to ingrid.stewart@csn.edu. Thank you! PLEASE NOTE

More information

Portable Bushy Processing Trees for Join Queries

Portable Bushy Processing Trees for Join Queries Reihe Informatik 11 / 1996 Constructing Optimal Bushy Processing Trees for Join Queries is NP-hard Wolfgang Scheufele Guido Moerkotte 1 Constructing Optimal Bushy Processing Trees for Join Queries is NP-hard

More information

The Complexity of DC-Switching Problems

The Complexity of DC-Switching Problems arxiv:1411.4369v1 [cs.cc] 17 Nov 2014 The Complexity of DC-Switching Problems Karsten Lehmann 1,2 Alban Grastien 1,2 Pascal Van Hentenryck 2,1 Abstract: This report provides a comprehensive complexity

More information

THROUGHPUT OPTIMIZATION IN ROBOTIC CELLS

THROUGHPUT OPTIMIZATION IN ROBOTIC CELLS Contents Preface xv 1. ROBOTIC CELLS IN PRACTICE 1 1.1 Cellular Manufacturing 2 1.2 Robotic Cell Flowshops 3 1.3 Throughput Optimization 7 1.4 Historical Overview 9 1.5 Applications 11 2. A CLASSIFICATION

More information

1 Introduction. Linear Programming. Questions. A general optimization problem is of the form: choose x to. max f(x) subject to x S. where.

1 Introduction. Linear Programming. Questions. A general optimization problem is of the form: choose x to. max f(x) subject to x S. where. Introduction Linear Programming Neil Laws TT 00 A general optimization problem is of the form: choose x to maximise f(x) subject to x S where x = (x,..., x n ) T, f : R n R is the objective function, S

More information

Introduction to Support Vector Machines. Colin Campbell, Bristol University

Introduction to Support Vector Machines. Colin Campbell, Bristol University Introduction to Support Vector Machines Colin Campbell, Bristol University 1 Outline of talk. Part 1. An Introduction to SVMs 1.1. SVMs for binary classification. 1.2. Soft margins and multi-class classification.

More information

Real-Time Scheduling (Part 1) (Working Draft) Real-Time System Example

Real-Time Scheduling (Part 1) (Working Draft) Real-Time System Example Real-Time Scheduling (Part 1) (Working Draft) Insup Lee Department of Computer and Information Science School of Engineering and Applied Science University of Pennsylvania www.cis.upenn.edu/~lee/ CIS 41,

More information

The Binary Blocking Flow Algorithm. Andrew V. Goldberg Microsoft Research Silicon Valley www.research.microsoft.com/ goldberg/

The Binary Blocking Flow Algorithm. Andrew V. Goldberg Microsoft Research Silicon Valley www.research.microsoft.com/ goldberg/ The Binary Blocking Flow Algorithm Andrew V. Goldberg Microsoft Research Silicon Valley www.research.microsoft.com/ goldberg/ Theory vs. Practice In theory, there is no difference between theory and practice.

More information

Partitioned real-time scheduling on heterogeneous shared-memory multiprocessors

Partitioned real-time scheduling on heterogeneous shared-memory multiprocessors Partitioned real-time scheduling on heterogeneous shared-memory multiprocessors Martin Niemeier École Polytechnique Fédérale de Lausanne Discrete Optimization Group Lausanne, Switzerland martin.niemeier@epfl.ch

More information

Module: Software Instruction Scheduling Part I

Module: Software Instruction Scheduling Part I Module: Software Instruction Scheduling Part I Sudhakar Yalamanchili, Georgia Institute of Technology Reading for this Module Loop Unrolling and Instruction Scheduling Section 2.2 Dependence Analysis Section

More information

vii TABLE OF CONTENTS CHAPTER TITLE PAGE DECLARATION DEDICATION ACKNOWLEDGEMENT ABSTRACT ABSTRAK

vii TABLE OF CONTENTS CHAPTER TITLE PAGE DECLARATION DEDICATION ACKNOWLEDGEMENT ABSTRACT ABSTRAK vii TABLE OF CONTENTS CHAPTER TITLE PAGE DECLARATION DEDICATION ACKNOWLEDGEMENT ABSTRACT ABSTRAK TABLE OF CONTENTS LIST OF TABLES LIST OF FIGURES LIST OF ABBREVIATIONS LIST OF SYMBOLS LIST OF APPENDICES

More information

Scheduling Parallel Jobs with Linear Speedup

Scheduling Parallel Jobs with Linear Speedup Scheduling Parallel Jobs with Linear Speedup Alexander Grigoriev and Marc Uetz Maastricht University, Quantitative Economics, P.O.Box 616, 6200 MD Maastricht, The Netherlands. Email: {a.grigoriev,m.uetz}@ke.unimaas.nl

More information