Approximation Algorithms (Load Balancing)

Size: px
Start display at page:

Download "Approximation Algorithms (Load Balancing)"

Transcription

1 July 6, 204

2 Problem Definition : We are given a set of n jobs {J, J 2,..., J n }. Each job J i has a processing time t i 0. We are given m identical machines.

3 Problem Definition : We are given a set of n jobs {J, J 2,..., J n }. Each job J i has a processing time t i 0. We are given m identical machines. Goal : We want to assign (load) the jobs to machines such that the maximum load is minimized. In other words, we would like to balance the loads.

4 Let A(i) be the set of jobs that are assigned to M i. Then the load of M i denoted by T i = j A(i) t i. We wish to minimize T = max i T i.

5 Let A(i) be the set of jobs that are assigned to M i. Then the load of M i denoted by T i = j A(i) t i. We wish to minimize T = max i T i. The load balancing problem in NP-complete. Even when there are two machines.

6 J J 2 J 3 J 4 J 5 J M M 2 M 3

7 J J 2 J 3 J 4 J 5 J M M 2 M 3

8 J J 2 J 3 J 4 J 5 J M M 2 M 3

9 Greedy-Balance. Set T i = 0 and A(i) = for all machines M i. 2. for j = to n 3. Let M i be a machine with minimum load (min k T k ). 4. Assign job j to machine M i. 5. Set A(i) A(i) {J j } 6. Set T i T i + t j

10 ) The optimal load T is at least T m j t j

11 ) The optimal load T is at least T m j t j 2) T max j t j.

12 ) The optimal load T is at least T m j t j 2) T max j t j. Lemma Algorithm Greedy-Balance produces an assignment of jobs to machines with max load T 2T.

13 Lemma Algorithm Greedy-Balance produces an assignment of jobs to machines with max load T 2T. Proof. Consider the time we add job j into machine M i. The load of machine M i was T i t j before adding J j to M i.

14 Lemma Algorithm Greedy-Balance produces an assignment of jobs to machines with max load T 2T. Proof. Consider the time we add job j into machine M i. The load of machine M i was T i t j before adding J j to M i. Also T i t j was the smallest load. Every other machine has load at least T i t j. Therefore :

15 Lemma Algorithm Greedy-Balance produces an assignment of jobs to machines with max load T 2T. Proof. Consider the time we add job j into machine M i. The load of machine M i was T i t j before adding J j to M i. Also T i t j was the smallest load. Every other machine has load at least T i t j. Therefore : m(t i t i ) k T k

16 Lemma Algorithm Greedy-Balance produces an assignment of jobs to machines with max load T 2T. Proof. Consider the time we add job j into machine M i. The load of machine M i was T i t j before adding J j to M i. Also T i t j was the smallest load. Every other machine has load at least T i t j. Therefore : m(t i t i ) k T k Also we know that k T k j t j. Therefore

17 Lemma Algorithm Greedy-Balance produces an assignment of jobs to machines with max load T 2T. Proof. Consider the time we add job j into machine M i. The load of machine M i was T i t j before adding J j to M i. Also T i t j was the smallest load. Every other machine has load at least T i t j. Therefore : m(t i t i ) k T k Also we know that k T k j t j. Therefore T i t j m j t j T.

18 Lemma Algorithm Greedy-Balance produces an assignment of jobs to machines with max load T 2T. Proof. Consider the time we add job j into machine M i. The load of machine M i was T i t j before adding J j to M i. Also T i t j was the smallest load. Every other machine has load at least T i t j. Therefore : m(t i t i ) k T k Also we know that k T k j t j. Therefore T i t j m j t j T. Also we know that t j T.

19 Lemma Algorithm Greedy-Balance produces an assignment of jobs to machines with max load T 2T. Proof. Consider the time we add job j into machine M i. The load of machine M i was T i t j before adding J j to M i. Also T i t j was the smallest load. Every other machine has load at least T i t j. Therefore : m(t i t i ) k T k Also we know that k T k j t j. Therefore T i t j m j t j T. Also we know that t j T. Therefore load of M i after adding J j is T i = (T i t j ) + t j 2T.

20 The Greedy-Balance could actually be as close as possible to 2T. J J 2 J 3 J 4 J 5 J 6 J 7 J 8 J 9 J 0 J J 2 J 3 Greedy Algorithm 4 Optimal 4 M M 2 M 3 M 4 M M 2 M 3 M 4

21 The Greedy-Balance could actually be as close as possible to 2T. J J 2 J 3 J 4 J 5 J 6 J 7 J 8 J 9 J 0 J J 2 J 3 Greedy Algorithm 4 Optimal 4 M M 2 M 3 M 4 M M 2 M 3 M 4

22 In general suppose there are m machines and n = m(m ) + jobs.

23 In general suppose there are m machines and n = m(m ) + jobs. The first m(m ) jobs each with time t j = and the last job n = m(m ) + has time t n = m.

24 In general suppose there are m machines and n = m(m ) + jobs. The first m(m ) jobs each with time t j = and the last job n = m(m ) + has time t n = m. The optimal has T = m while the Greedy algorithms has max load 2m.

25 An Improved Approximation Algorithm Sort-Balance. Set T 0 = 0 and A(i) = for all machines M i. 2. Sort the jobs in decreasing order of processing times t j. 3. Assume t t 2... t n. 4. for j = to n 5. Let M i be a machine with minimum load (min k T k ). 6. Assign job j to machine M i. 7. Set A(i) A(i) {J j } 8. Set T i T i + t j

26 If there are more than m jobs, then T 2t m+.

27 If there are more than m jobs, then T 2t m+. Lemma Algorithm Sort-Balance produces an assignment of jobs to machines with max load T 3 2 T. Using similar analysis as in the previous lemma (leave it as exercise)

28 There exists an algorithm that find a solution for Load balancing very close to optimal T

29 There exists an algorithm that find a solution for Load balancing very close to optimal T In fact there is an algorithm that for every ɛ > 0 it finds a solution that is not worse that ( + ɛ)t.

30 There exists an algorithm that find a solution for Load balancing very close to optimal T In fact there is an algorithm that for every ɛ > 0 it finds a solution that is not worse that ( + ɛ)t. But the running time of the algorithm is where n is the number of jobs. O(n ( ɛ ).5 )

More Approximation Algorithms

More Approximation Algorithms CS 473: Algorithms, Spring 2018 More Approximation Algorithms Lecture 25 April 26, 2018 Most slides are courtesy Prof. Chekuri Ruta (UIUC) CS473 1 Spring 2018 1 / 28 Formal definition of approximation

More information

1 Ordinary Load Balancing

1 Ordinary Load Balancing Comp 260: Advanced Algorithms Prof. Lenore Cowen Tufts University, Spring 208 Scribe: Emily Davis Lecture 8: Scheduling Ordinary Load Balancing Suppose we have a set of jobs each with their own finite

More information

Bin packing and scheduling

Bin packing and scheduling Sanders/van Stee: Approximations- und Online-Algorithmen 1 Bin packing and scheduling Overview Bin packing: problem definition Simple 2-approximation (Next Fit) Better than 3/2 is not possible Asymptotic

More information

This means that we can assume each list ) is

This means that we can assume each list ) is This means that we can assume each list ) is of the form ),, ( )with < and Since the sizes of the items are integers, there are at most +1pairs in each list Furthermore, if we let = be the maximum possible

More information

CSE101: Design and Analysis of Algorithms. Ragesh Jaiswal, CSE, UCSD

CSE101: Design and Analysis of Algorithms. Ragesh Jaiswal, CSE, UCSD Course Overview Material that will be covered in the course: Basic graph algorithms Algorithm Design Techniques Greedy Algorithms Divide and Conquer Dynamic Programming Network Flows Computational intractability

More information

Lecture 4 Scheduling 1

Lecture 4 Scheduling 1 Lecture 4 Scheduling 1 Single machine models: Number of Tardy Jobs -1- Problem 1 U j : Structure of an optimal schedule: set S 1 of jobs meeting their due dates set S 2 of jobs being late jobs of S 1 are

More information

CSE 421 Greedy Algorithms / Interval Scheduling

CSE 421 Greedy Algorithms / Interval Scheduling CSE 421 Greedy Algorithms / Interval Scheduling Yin Tat Lee 1 Interval Scheduling Job j starts at s(j) and finishes at f(j). Two jobs compatible if they don t overlap. Goal: find maximum subset of mutually

More information

APTAS for Bin Packing

APTAS for Bin Packing APTAS for Bin Packing Bin Packing has an asymptotic PTAS (APTAS) [de la Vega and Leuker, 1980] For every fixed ε > 0 algorithm outputs a solution of size (1+ε)OPT + 1 in time polynomial in n APTAS for

More information

P C max. NP-complete from partition. Example j p j What is the makespan on 2 machines? 3 machines? 4 machines?

P C max. NP-complete from partition. Example j p j What is the makespan on 2 machines? 3 machines? 4 machines? Multiple Machines Model Multiple Available resources people time slots queues networks of computers Now concerned with both allocation to a machine and ordering on that machine. P C max NP-complete from

More information

Lecture 2: Scheduling on Parallel Machines

Lecture 2: Scheduling on Parallel Machines Lecture 2: Scheduling on Parallel Machines Loris Marchal October 17, 2012 Parallel environment alpha in Graham s notation): P parallel identical Q uniform machines: each machine has a given speed speed

More information

R ij = 2. Using all of these facts together, you can solve problem number 9.

R ij = 2. Using all of these facts together, you can solve problem number 9. Help for Homework Problem #9 Let G(V,E) be any undirected graph We want to calculate the travel time across the graph. Think of each edge as one resistor of 1 Ohm. Say we have two nodes: i and j Let the

More information

CS6999 Probabilistic Methods in Integer Programming Randomized Rounding Andrew D. Smith April 2003

CS6999 Probabilistic Methods in Integer Programming Randomized Rounding Andrew D. Smith April 2003 CS6999 Probabilistic Methods in Integer Programming Randomized Rounding April 2003 Overview 2 Background Randomized Rounding Handling Feasibility Derandomization Advanced Techniques Integer Programming

More information

Linear Programming. Scheduling problems

Linear Programming. Scheduling problems Linear Programming Scheduling problems Linear programming (LP) ( )., 1, for 0 min 1 1 1 1 1 11 1 1 n i x b x a x a b x a x a x c x c x z i m n mn m n n n n! = + + + + + + = Extreme points x ={x 1,,x n

More information

Chapter 11. Approximation Algorithms. Slides by Kevin Wayne Pearson-Addison Wesley. All rights reserved.

Chapter 11. Approximation Algorithms. Slides by Kevin Wayne Pearson-Addison Wesley. All rights reserved. Chapter 11 Approximation Algorithms Slides by Kevin Wayne. Copyright @ 2005 Pearson-Addison Wesley. All rights reserved. 1 Approximation Algorithms Q. Suppose I need to solve an NP-hard problem. What should

More information

Single Machine Models

Single Machine Models Outline DM87 SCHEDULING, TIMETABLING AND ROUTING Lecture 8 Single Machine Models 1. Dispatching Rules 2. Single Machine Models Marco Chiarandini DM87 Scheduling, Timetabling and Routing 2 Outline Dispatching

More information

Approximation Algorithms

Approximation Algorithms Approximation Algorithms What do you do when a problem is NP-complete? or, when the polynomial time solution is impractically slow? assume input is random, do expected performance. Eg, Hamiltonian path

More information

COSC 341: Lecture 25 Coping with NP-hardness (2)

COSC 341: Lecture 25 Coping with NP-hardness (2) 1 Introduction Figure 1: Famous cartoon by Garey and Johnson, 1979 We have seen the definition of a constant factor approximation algorithm. The following is something even better. 2 Approximation Schemes

More information

Solutions to Exercises

Solutions to Exercises 1/13 Solutions to Exercises The exercises referred to as WS 1.1(a), and so forth, are from the course book: Williamson and Shmoys, The Design of Approximation Algorithms, Cambridge University Press, 2011,

More information

An Approximate Pareto Set for Minimizing the Maximum Lateness and Makespan on Parallel Machines

An Approximate Pareto Set for Minimizing the Maximum Lateness and Makespan on Parallel Machines 1 An Approximate Pareto Set for Minimizing the Maximum Lateness Makespan on Parallel Machines Gais Alhadi 1, Imed Kacem 2, Pierre Laroche 3, Izzeldin M. Osman 4 arxiv:1802.10488v1 [cs.ds] 28 Feb 2018 Abstract

More information

Knapsack. Bag/knapsack of integer capacity B n items item i has size s i and profit/weight w i

Knapsack. Bag/knapsack of integer capacity B n items item i has size s i and profit/weight w i Knapsack Bag/knapsack of integer capacity B n items item i has size s i and profit/weight w i Goal: find a subset of items of maximum profit such that the item subset fits in the bag Knapsack X: item set

More information

CS 580: Algorithm Design and Analysis. Jeremiah Blocki Purdue University Spring 2018

CS 580: Algorithm Design and Analysis. Jeremiah Blocki Purdue University Spring 2018 CS 580: Algorithm Design and Analysis Jeremiah Blocki Purdue University Spring 2018 Chapter 9 PSPACE: A Class of Problems Beyond NP Slides by Kevin Wayne. Copyright @ 2005 Pearson-Addison Wesley. All rights

More information

Dynamic Programming( Weighted Interval Scheduling)

Dynamic Programming( Weighted Interval Scheduling) Dynamic Programming( Weighted Interval Scheduling) 17 November, 2016 Dynamic Programming 1 Dynamic programming algorithms are used for optimization (for example, finding the shortest path between two points,

More information

Homework 4 Solutions

Homework 4 Solutions CS 174: Combinatorics and Discrete Probability Fall 01 Homework 4 Solutions Problem 1. (Exercise 3.4 from MU 5 points) Recall the randomized algorithm discussed in class for finding the median of a set

More information

On Two Class-Constrained Versions of the Multiple Knapsack Problem

On Two Class-Constrained Versions of the Multiple Knapsack Problem On Two Class-Constrained Versions of the Multiple Knapsack Problem Hadas Shachnai Tami Tamir Department of Computer Science The Technion, Haifa 32000, Israel Abstract We study two variants of the classic

More information

1 The Knapsack Problem

1 The Knapsack Problem Comp 260: Advanced Algorithms Prof. Lenore Cowen Tufts University, Spring 2018 Scribe: Tom Magerlein 1 Lecture 4: The Knapsack Problem 1 The Knapsack Problem Suppose we are trying to burgle someone s house.

More information

CS 374: Algorithms & Models of Computation, Spring 2017 Greedy Algorithms Lecture 19 April 4, 2017 Chandra Chekuri (UIUC) CS374 1 Spring / 1

CS 374: Algorithms & Models of Computation, Spring 2017 Greedy Algorithms Lecture 19 April 4, 2017 Chandra Chekuri (UIUC) CS374 1 Spring / 1 CS 374: Algorithms & Models of Computation, Spring 2017 Greedy Algorithms Lecture 19 April 4, 2017 Chandra Chekuri (UIUC) CS374 1 Spring 2017 1 / 1 Part I Greedy Algorithms: Tools and Techniques Chandra

More information

Multiprocessor Scheduling I: Partitioned Scheduling. LS 12, TU Dortmund

Multiprocessor Scheduling I: Partitioned Scheduling. LS 12, TU Dortmund Multiprocessor Scheduling I: Partitioned Scheduling Prof. Dr. Jian-Jia Chen LS 12, TU Dortmund 22/23, June, 2015 Prof. Dr. Jian-Jia Chen (LS 12, TU Dortmund) 1 / 47 Outline Introduction to Multiprocessor

More information

Santa Claus Schedules Jobs on Unrelated Machines

Santa Claus Schedules Jobs on Unrelated Machines Santa Claus Schedules Jobs on Unrelated Machines Ola Svensson (osven@kth.se) Royal Institute of Technology - KTH Stockholm, Sweden March 22, 2011 arxiv:1011.1168v2 [cs.ds] 21 Mar 2011 Abstract One of the

More information

U.C. Berkeley CS294: Beyond Worst-Case Analysis Handout 2 Luca Trevisan August 29, 2017

U.C. Berkeley CS294: Beyond Worst-Case Analysis Handout 2 Luca Trevisan August 29, 2017 U.C. Berkeley CS94: Beyond Worst-Case Analysis Handout Luca Trevisan August 9, 07 Scribe: Mahshid Montazer Lecture In this lecture, we study the Max Cut problem in random graphs. We compute the probable

More information

Minimizing the Number of Tardy Jobs

Minimizing the Number of Tardy Jobs Minimizing the Number of Tardy Jobs 1 U j Example j p j d j 1 10 10 2 2 11 3 7 13 4 4 15 5 8 20 Ideas: Need to choose a subset of jobs S that meet their deadlines. Schedule the jobs that meet their deadlines

More information

10.3 Matroids and approximation

10.3 Matroids and approximation 10.3 Matroids and approximation 137 10.3 Matroids and approximation Given a family F of subsets of some finite set X, called the ground-set, and a weight function assigning each element x X a non-negative

More information

princeton univ. F 17 cos 521: Advanced Algorithm Design Lecture 6: Provable Approximation via Linear Programming

princeton univ. F 17 cos 521: Advanced Algorithm Design Lecture 6: Provable Approximation via Linear Programming princeton univ. F 17 cos 521: Advanced Algorithm Design Lecture 6: Provable Approximation via Linear Programming Lecturer: Matt Weinberg Scribe: Sanjeev Arora One of the running themes in this course is

More information

(a) Write a greedy O(n log n) algorithm that, on input S, returns a covering subset C of minimum size.

(a) Write a greedy O(n log n) algorithm that, on input S, returns a covering subset C of minimum size. Esercizi su Greedy Exercise 1.1 Let S = {[a 1, b 1 ], [a 2, b 2 ],..., [a n, b n ]} be a set of closed intervals on the real line. We say that C S is a covering subset for S if, for any interval [a, b]

More information

Algorithms Design & Analysis. Approximation Algorithm

Algorithms Design & Analysis. Approximation Algorithm Algorithms Design & Analysis Approximation Algorithm Recap External memory model Merge sort Distribution sort 2 Today s Topics Hard problem Approximation algorithms Metric traveling salesman problem A

More information

Proof methods and greedy algorithms

Proof methods and greedy algorithms Proof methods and greedy algorithms Magnus Lie Hetland Lecture notes, May 5th 2008 1 Introduction This lecture in some ways covers two separate topics: (1) how to prove algorithms correct, in general,

More information

Chapter 11. Approximation Algorithms. Slides by Kevin Wayne Pearson-Addison Wesley. All rights reserved.

Chapter 11. Approximation Algorithms. Slides by Kevin Wayne Pearson-Addison Wesley. All rights reserved. Chapter 11 Approximation Algorithms Slides by Kevin Wayne. Copyright @ 2005 Pearson-Addison Wesley. All rights reserved. 1 P and NP P: The family of problems that can be solved quickly in polynomial time.

More information

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

Algorithm Design. Scheduling Algorithms. Part 2. Parallel machines. Open-shop Scheduling. Job-shop Scheduling. Algorithm Design Scheduling Algorithms Part 2 Parallel machines. Open-shop Scheduling. Job-shop Scheduling. 1 Parallel Machines n jobs need to be scheduled on m machines, M 1,M 2,,M m. Each machine can

More information

4 Sequencing problem with heads and tails

4 Sequencing problem with heads and tails 4 Sequencing problem with heads and tails In what follows, we take a step towards multiple stage problems Therefore, we consider a single stage where a scheduling sequence has to be determined but each

More information

Lecture 9: Dynamics in Load Balancing

Lecture 9: Dynamics in Load Balancing Computational Game Theory Spring Semester, 2003/4 Lecture 9: Dynamics in Load Balancing Lecturer: Yishay Mansour Scribe: Anat Axelrod, Eran Werner 9.1 Lecture Overview In this lecture we consider dynamics

More information

Arkansas Tech University MATH 2924: Calculus II Dr. Marcel B. Finan

Arkansas Tech University MATH 2924: Calculus II Dr. Marcel B. Finan Arkansas Tech University MATH 2924: Calculus II Dr. Marcel B. Finan 8. Sequences We start this section by introducing the concept of a sequence and study its convergence. Convergence of Sequences. An infinite

More information

Combinatorial Auction-Based Allocation of Virtual Machine Instances in Clouds

Combinatorial Auction-Based Allocation of Virtual Machine Instances in Clouds Combinatorial Auction-Based Allocation of Virtual Machine Instances in Clouds Sharrukh Zaman and Daniel Grosu Department of Computer Science Wayne State University Detroit, Michigan 48202, USA sharrukh@wayne.edu,

More information

The knapsack problem

The knapsack problem Moderne Suchmethoden der Informatik The knapsack problem Florian Pawlik December 1, 2014 Abstract Have you ever wondered about how heavy one can fill his knapsack? No? That does not matter You will get

More information

Smith s Rule in Stochastic Scheduling

Smith s Rule in Stochastic Scheduling Smith s Rule In Stochastic Scheduling Caroline Jagtenberg Uwe Schwiegelshohn Utrecht University Dortmund University University of Twente Aussois 2011 The (classic) setting Problem n jobs, nonpreemptive,

More information

CS 561, Lecture: Greedy Algorithms. Jared Saia University of New Mexico

CS 561, Lecture: Greedy Algorithms. Jared Saia University of New Mexico CS 561, Lecture: Greedy Algorithms Jared Saia University of New Mexico Outline Greedy Algorithm Intro Activity Selection Knapsack 1 Greedy Algorithms Greed is Good - Michael Douglas in Wall Street A greedy

More information

10.4 The Kruskal Katona theorem

10.4 The Kruskal Katona theorem 104 The Krusal Katona theorem 141 Example 1013 (Maximum weight traveling salesman problem We are given a complete directed graph with non-negative weights on edges, and we must find a maximum weight Hamiltonian

More information

Introduction to Computer Science and Programming for Astronomers

Introduction to Computer Science and Programming for Astronomers Introduction to Computer Science and Programming for Astronomers Lecture 8. István Szapudi Institute for Astronomy University of Hawaii March 7, 2018 Outline Reminder 1 Reminder 2 3 4 Reminder We have

More information

Today s Outline. CS 561, Lecture 15. Greedy Algorithms. Activity Selection. Greedy Algorithm Intro Activity Selection Knapsack

Today s Outline. CS 561, Lecture 15. Greedy Algorithms. Activity Selection. Greedy Algorithm Intro Activity Selection Knapsack Today s Outline CS 561, Lecture 15 Jared Saia University of New Mexico Greedy Algorithm Intro Activity Selection Knapsack 1 Greedy Algorithms Activity Selection Greed is Good - Michael Douglas in Wall

More information

Partition is reducible to P2 C max. c. P2 Pj = 1, prec Cmax is solvable in polynomial time. P Pj = 1, prec Cmax is NP-hard

Partition is reducible to P2 C max. c. P2 Pj = 1, prec Cmax is solvable in polynomial time. P Pj = 1, prec Cmax is NP-hard I. Minimizing Cmax (Nonpreemptive) a. P2 C max is NP-hard. Partition is reducible to P2 C max b. P Pj = 1, intree Cmax P Pj = 1, outtree Cmax are both solvable in polynomial time. c. P2 Pj = 1, prec Cmax

More information

Algorithms. Outline! Approximation Algorithms. The class APX. The intelligence behind the hardware. ! Based on

Algorithms. Outline! Approximation Algorithms. The class APX. The intelligence behind the hardware. ! Based on 6117CIT - Adv Topics in Computing Sci at Nathan 1 Algorithms The intelligence behind the hardware Outline! Approximation Algorithms The class APX! Some complexity classes, like PTAS and FPTAS! Illustration

More information

Algorithms Exam TIN093 /DIT602

Algorithms Exam TIN093 /DIT602 Algorithms Exam TIN093 /DIT602 Course: Algorithms Course code: TIN 093, TIN 092 (CTH), DIT 602 (GU) Date, time: 21st October 2017, 14:00 18:00 Building: SBM Responsible teacher: Peter Damaschke, Tel. 5405

More information

5 Integer Linear Programming (ILP) E. Amaldi Foundations of Operations Research Politecnico di Milano 1

5 Integer Linear Programming (ILP) E. Amaldi Foundations of Operations Research Politecnico di Milano 1 5 Integer Linear Programming (ILP) E. Amaldi Foundations of Operations Research Politecnico di Milano 1 Definition: An Integer Linear Programming problem is an optimization problem of the form (ILP) min

More information

CS2223 Algorithms D Term 2009 Exam 3 Solutions

CS2223 Algorithms D Term 2009 Exam 3 Solutions CS2223 Algorithms D Term 2009 Exam 3 Solutions May 4, 2009 By Prof. Carolina Ruiz Dept. of Computer Science WPI PROBLEM 1: Asymptoptic Growth Rates (10 points) Let A and B be two algorithms with runtimes

More information

Algorithm Design and Analysis

Algorithm Design and Analysis Algorithm Design and Analysis LECTURE 6 Greedy Algorithms Interval Scheduling Interval Partitioning Scheduling to Minimize Lateness Sofya Raskhodnikova S. Raskhodnikova; based on slides by E. Demaine,

More information

Hamiltonian paths in tournaments A generalization of sorting DM19 notes fall 2006

Hamiltonian paths in tournaments A generalization of sorting DM19 notes fall 2006 Hamiltonian paths in tournaments A generalization of sorting DM9 notes fall 2006 Jørgen Bang-Jensen Imada, SDU 30. august 2006 Introduction and motivation Tournaments which we will define mathematically

More information

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

LPT rule: Whenever a machine becomes free for assignment, assign that job whose. processing time is the largest among those jobs not yet assigned. LPT rule Whenever a machine becomes free for assignment, assign that job whose processing time is the largest among those jobs not yet assigned. Example m1 m2 m3 J3 Ji J1 J2 J3 J4 J5 J6 6 5 3 3 2 1 3 5

More information

15-855: Intensive Intro to Complexity Theory Spring Lecture 16: Nisan s PRG for small space

15-855: Intensive Intro to Complexity Theory Spring Lecture 16: Nisan s PRG for small space 15-855: Intensive Intro to Complexity Theory Spring 2009 Lecture 16: Nisan s PRG for small space For the next few lectures we will study derandomization. In algorithms classes one often sees clever randomized

More information

Scheduling Online Algorithms. Tim Nieberg

Scheduling Online Algorithms. Tim Nieberg Scheduling Online Algorithms Tim Nieberg General Introduction on-line scheduling can be seen as scheduling with incomplete information at certain points, decisions have to be made without knowing the complete

More information

Aditya Bhaskara CS 5968/6968, Lecture 1: Introduction and Review 12 January 2016

Aditya Bhaskara CS 5968/6968, Lecture 1: Introduction and Review 12 January 2016 Lecture 1: Introduction and Review We begin with a short introduction to the course, and logistics. We then survey some basics about approximation algorithms and probability. We also introduce some of

More information

Coin Changing: Give change using the least number of coins. Greedy Method (Chapter 10.1) Attempt to construct an optimal solution in stages.

Coin Changing: Give change using the least number of coins. Greedy Method (Chapter 10.1) Attempt to construct an optimal solution in stages. IV-0 Definitions Optimization Problem: Given an Optimization Function and a set of constraints, find an optimal solution. Optimal Solution: A feasible solution for which the optimization function has the

More information

/633 Introduction to Algorithms Lecturer: Michael Dinitz Topic: Matroids and Greedy Algorithms Date: 10/31/16

/633 Introduction to Algorithms Lecturer: Michael Dinitz Topic: Matroids and Greedy Algorithms Date: 10/31/16 60.433/633 Introduction to Algorithms Lecturer: Michael Dinitz Topic: Matroids and Greedy Algorithms Date: 0/3/6 6. Introduction We talked a lot the last lecture about greedy algorithms. While both Prim

More information

Lecture 12 : Graph Laplacians and Cheeger s Inequality

Lecture 12 : Graph Laplacians and Cheeger s Inequality CPS290: Algorithmic Foundations of Data Science March 7, 2017 Lecture 12 : Graph Laplacians and Cheeger s Inequality Lecturer: Kamesh Munagala Scribe: Kamesh Munagala Graph Laplacian Maybe the most beautiful

More information

Design and Analysis of Algorithms

Design and Analysis of Algorithms CSE 0, Winter 08 Design and Analysis of Algorithms Lecture 8: Consolidation # (DP, Greed, NP-C, Flow) Class URL: http://vlsicad.ucsd.edu/courses/cse0-w8/ Followup on IGO, Annealing Iterative Global Optimization

More information

the tree till a class assignment is reached

the tree till a class assignment is reached Decision Trees Decision Tree for Playing Tennis Prediction is done by sending the example down Prediction is done by sending the example down the tree till a class assignment is reached Definitions Internal

More information

Scheduling: Open Shop Problems. R. Chandrasekaran

Scheduling: Open Shop Problems. R. Chandrasekaran Scheduling: Open Shop Problems R. Chandrasekaran 0.0.1 O C max Non-preemptive: Thissectiondealswithopenshopproblems. Herewehaveasetofjobsanda set of machines. Each job requires processing by each machine(if

More information

variance of independent variables: sum of variances So chebyshev predicts won t stray beyond stdev.

variance of independent variables: sum of variances So chebyshev predicts won t stray beyond stdev. Announcements No class monday. Metric embedding seminar. Review expectation notion of high probability. Markov. Today: Book 4.1, 3.3, 4.2 Chebyshev. Remind variance, standard deviation. σ 2 = E[(X µ X

More information

Knapsack and Scheduling Problems. The Greedy Method

Knapsack and Scheduling Problems. The Greedy Method The Greedy Method: Knapsack and Scheduling Problems The Greedy Method 1 Outline and Reading Task Scheduling Fractional Knapsack Problem The Greedy Method 2 Elements of Greedy Strategy An greedy algorithm

More information

On the Structure and Complexity of Worst-Case Equilibria

On the Structure and Complexity of Worst-Case Equilibria On the Structure and Complexity of Worst-Case Equilibria Simon Fischer and Berthold Vöcking RWTH Aachen, Computer Science 1 52056 Aachen, Germany {fischer,voecking}@cs.rwth-aachen.de Abstract. We study

More information

Machine Learning. Regularization and Feature Selection. Fabio Vandin November 13, 2017

Machine Learning. Regularization and Feature Selection. Fabio Vandin November 13, 2017 Machine Learning Regularization and Feature Selection Fabio Vandin November 13, 2017 1 Learning Model A: learning algorithm for a machine learning task S: m i.i.d. pairs z i = (x i, y i ), i = 1,..., m,

More information

1 Basic Definitions. 2 Proof By Contradiction. 3 Exchange Argument

1 Basic Definitions. 2 Proof By Contradiction. 3 Exchange Argument 1 Basic Definitions A Problem is a relation from input to acceptable output. For example, INPUT: A list of integers x 1,..., x n OUTPUT: One of the three smallest numbers in the list An algorithm A solves

More information

Minimizing Mean Flowtime and Makespan on Master-Slave Systems

Minimizing Mean Flowtime and Makespan on Master-Slave Systems Minimizing Mean Flowtime and Makespan on Master-Slave Systems Joseph Y-T. Leung,1 and Hairong Zhao 2 Department of Computer Science New Jersey Institute of Technology Newark, NJ 07102, USA Abstract The

More information

CS 6783 (Applied Algorithms) Lecture 3

CS 6783 (Applied Algorithms) Lecture 3 CS 6783 (Applied Algorithms) Lecture 3 Antonina Kolokolova January 14, 2013 1 Representative problems: brief overview of the course In this lecture we will look at several problems which, although look

More information

hal , version 1-27 Mar 2014

hal , version 1-27 Mar 2014 Author manuscript, published in "2nd Multidisciplinary International Conference on Scheduling : Theory and Applications (MISTA 2005), New York, NY. : United States (2005)" 2 More formally, we denote by

More information

Lecture 3: Big-O and Big-Θ

Lecture 3: Big-O and Big-Θ Lecture 3: Big-O and Big-Θ COSC4: Algorithms and Data Structures Brendan McCane Department of Computer Science, University of Otago Landmark functions We saw that the amount of work done by Insertion Sort,

More information

EECS 358 Introduction to Parallel Computing Final Assignment

EECS 358 Introduction to Parallel Computing Final Assignment EECS 358 Introduction to Parallel Computing Final Assignment Jiangtao Gou Zhenyu Zhao March 19, 2013 1 Problem 1 1.1 Matrix-vector Multiplication on Hypercube and Torus As shown in slide 15.11, we assumed

More information

Network Design and Game Theory Spring 2008 Lecture 2

Network Design and Game Theory Spring 2008 Lecture 2 Network Design and Game Theory Spring 2008 Lecture 2 Instructor: Mohammad T. Hajiaghayi Scribe: Imdadullah Khan February 04, 2008 MAXIMUM COVERAGE In this lecture we review Maximum Coverage and Unique

More information

8 Knapsack Problem 8.1 (Knapsack)

8 Knapsack Problem 8.1 (Knapsack) 8 Knapsack In Chapter 1 we mentioned that some NP-hard optimization problems allow approximability to any required degree. In this chapter, we will formalize this notion and will show that the knapsack

More information

QueueTraffic and queuing theory

QueueTraffic and queuing theory QueueTraffic and queuing theory + Queues in everyday life You have certainly been in a queue somewhere. Where? How were they different? At ticket vending machines, cash desks, at the doctors, at printers,

More information

Minimizing Class-Based Completion Time Variance on a Single Machine

Minimizing Class-Based Completion Time Variance on a Single Machine Minimizing Class-Based Completion Time Variance on a Single Machine Xueping Li Yuerong Chen University of Tennessee Yang Sun Arizona State University Outline Background & motivation Introduction to CB-CTV

More information

Final exam study sheet for CS3719 Turing machines and decidability.

Final exam study sheet for CS3719 Turing machines and decidability. Final exam study sheet for CS3719 Turing machines and decidability. A Turing machine is a finite automaton with an infinite memory (tape). Formally, a Turing machine is a 6-tuple M = (Q, Σ, Γ, δ, q 0,

More information

A Robust APTAS for the Classical Bin Packing Problem

A Robust APTAS for the Classical Bin Packing Problem A Robust APTAS for the Classical Bin Packing Problem Leah Epstein 1 and Asaf Levin 2 1 Department of Mathematics, University of Haifa, 31905 Haifa, Israel. Email: lea@math.haifa.ac.il 2 Department of Statistics,

More information

CS 6901 (Applied Algorithms) Lecture 3

CS 6901 (Applied Algorithms) Lecture 3 CS 6901 (Applied Algorithms) Lecture 3 Antonina Kolokolova September 16, 2014 1 Representative problems: brief overview In this lecture we will look at several problems which, although look somewhat similar

More information

6.854J / J Advanced Algorithms Fall 2008

6.854J / J Advanced Algorithms Fall 2008 MIT OpenCourseWare http://ocw.mit.edu 6.854J / 18.415J Advanced Algorithms Fall 2008 For information about citing these materials or our Terms of Use, visit: http://ocw.mit.edu/terms. 18.415/6.854 Advanced

More information

The Greedy Method. Design and analysis of algorithms Cs The Greedy Method

The Greedy Method. Design and analysis of algorithms Cs The Greedy Method Design and analysis of algorithms Cs 3400 The Greedy Method 1 Outline and Reading The Greedy Method Technique Fractional Knapsack Problem Task Scheduling 2 The Greedy Method Technique The greedy method

More information

Algorithms for Bioinformatics

Algorithms for Bioinformatics Adapted from slides by Alexandru Tomescu, Leena Salmela, Veli Mäkinen, Esa Pitkänen 582670 Algorithms for Bioinformatics Lecture 5: Combinatorial Algorithms and Genomic Rearrangements 1.10.2015 Background

More information

NCG Group New Results and Open Problems

NCG Group New Results and Open Problems NCG Group New Results and Table of Contents PoA for NSP 1 PoA for NSP 2 3 4 5 2 / 21 PoA for NSP 3 / 21 PoA for NSP Lemma The PoA for the NSP is in Θ(diam(G)), even when only reachable friendship situations

More information

Algorithms: COMP3121/3821/9101/9801

Algorithms: COMP3121/3821/9101/9801 NEW SOUTH WALES Algorithms: COMP3121/3821/9101/9801 Aleks Ignjatović School of Computer Science and Engineering University of New South Wales TOPIC 4: THE GREEDY METHOD COMP3121/3821/9101/9801 1 / 23 The

More information

A New Task Model and Utilization Bound for Uniform Multiprocessors

A New Task Model and Utilization Bound for Uniform Multiprocessors A New Task Model and Utilization Bound for Uniform Multiprocessors Shelby Funk Department of Computer Science, The University of Georgia Email: shelby@cs.uga.edu Abstract This paper introduces a new model

More information

ERROR AND SENSITIVTY ANALYSIS FOR SYSTEMS OF LINEAR EQUATIONS. Perturbation analysis for linear systems (Ax = b)

ERROR AND SENSITIVTY ANALYSIS FOR SYSTEMS OF LINEAR EQUATIONS. Perturbation analysis for linear systems (Ax = b) ERROR AND SENSITIVTY ANALYSIS FOR SYSTEMS OF LINEAR EQUATIONS Conditioning of linear systems. Estimating errors for solutions of linear systems Backward error analysis Perturbation analysis for linear

More information

NETS 412: Algorithmic Game Theory March 28 and 30, Lecture Approximation in Mechanism Design. X(v) = arg max v i (a)

NETS 412: Algorithmic Game Theory March 28 and 30, Lecture Approximation in Mechanism Design. X(v) = arg max v i (a) NETS 412: Algorithmic Game Theory March 28 and 30, 2017 Lecture 16+17 Lecturer: Aaron Roth Scribe: Aaron Roth Approximation in Mechanism Design In the last lecture, we asked how far we can go beyond the

More information

A fast 5/2-approximation algorithm for hierarchical scheduling

A fast 5/2-approximation algorithm for hierarchical scheduling A fast 5/2-approximation algorithm for hierarchical scheduling Marin Bougeret 1, Pierre-François Dutot 1, Klaus Jansen 2, Christina Otte 2, and Denis Trystram 1 1 Grenoble University 38330 Montbonnot Saint

More information

MVE165/MMG630, Applied Optimization Lecture 6 Integer linear programming: models and applications; complexity. Ann-Brith Strömberg

MVE165/MMG630, Applied Optimization Lecture 6 Integer linear programming: models and applications; complexity. Ann-Brith Strömberg MVE165/MMG630, Integer linear programming: models and applications; complexity Ann-Brith Strömberg 2011 04 01 Modelling with integer variables (Ch. 13.1) Variables Linear programming (LP) uses continuous

More information

4. How to prove a problem is NPC

4. How to prove a problem is NPC The reducibility relation T is transitive, i.e, A T B and B T C imply A T C Therefore, to prove that a problem A is NPC: (1) show that A NP (2) choose some known NPC problem B define a polynomial transformation

More information

Introduction to Analysis Constructing R from Q

Introduction to Analysis Constructing R from Q Introduction to Analysis Constructing R from Q Definition. A subset A Q is called a cut if it posses the following three properties. A and A Q. 2. If r A, then also A contains every rational q < r. 3.

More information

Computer Arithmetic. MATH 375 Numerical Analysis. J. Robert Buchanan. Fall Department of Mathematics. J. Robert Buchanan Computer Arithmetic

Computer Arithmetic. MATH 375 Numerical Analysis. J. Robert Buchanan. Fall Department of Mathematics. J. Robert Buchanan Computer Arithmetic Computer Arithmetic MATH 375 Numerical Analysis J. Robert Buchanan Department of Mathematics Fall 2013 Machine Numbers When performing arithmetic on a computer (laptop, desktop, mainframe, cell phone,

More information

Approximation Schemes for Job Shop Scheduling Problems with Controllable Processing Times

Approximation Schemes for Job Shop Scheduling Problems with Controllable Processing Times Approximation Schemes for Job Shop Scheduling Problems with Controllable Processing Times Klaus Jansen 1, Monaldo Mastrolilli 2, and Roberto Solis-Oba 3 1 Universität zu Kiel, Germany, kj@informatik.uni-kiel.de

More information

A note on semi-online machine covering

A note on semi-online machine covering A note on semi-online machine covering Tomáš Ebenlendr 1, John Noga 2, Jiří Sgall 1, and Gerhard Woeginger 3 1 Mathematical Institute, AS CR, Žitná 25, CZ-11567 Praha 1, The Czech Republic. Email: ebik,sgall@math.cas.cz.

More information

A lower bound for scheduling of unit jobs with immediate decision on parallel machines

A lower bound for scheduling of unit jobs with immediate decision on parallel machines A lower bound for scheduling of unit jobs with immediate decision on parallel machines Tomáš Ebenlendr Jiří Sgall Abstract Consider scheduling of unit jobs with release times and deadlines on m identical

More information

Algorithms CMSC Basic algorithms in Number Theory: Euclid s algorithm and multiplicative inverse

Algorithms CMSC Basic algorithms in Number Theory: Euclid s algorithm and multiplicative inverse Algorithms CMSC-27200 Basic algorithms in Number Theory: Euclid s algorithm and multiplicative inverse Instructor: László Babai Last updated 02-14-2015. Z denotes the set of integers. All variables in

More information

( ) = 0. ( ) does not exist. 4.1 Maximum and Minimum Values Assigned videos: , , , DEFINITION Critical number

( ) = 0. ( ) does not exist. 4.1 Maximum and Minimum Values Assigned videos: , , , DEFINITION Critical number 4.1 Maximum and Minimum Values Assigned videos: 4.1.001, 4.1.005, 4.1.035, 4.1.039 DEFINITION Critical number A critical number of a function f is a number c in the domain of f such that f c or f c ( )

More information

Lecture 4: An FPTAS for Knapsack, and K-Center

Lecture 4: An FPTAS for Knapsack, and K-Center Comp 260: Advanced Algorithms Tufts University, Spring 2016 Prof. Lenore Cowen Scribe: Eric Bailey Lecture 4: An FPTAS for Knapsack, and K-Center 1 Introduction Definition 1.0.1. The Knapsack problem (restated)

More information