Answered step by step
Verified Expert Solution
Link Copied!

Question

1 Approved Answer

6. Load balancing on 3 machines. Consider again the load balancing problem from class. In this problem, you have m machines and n jobs, where

image text in transcribed
6. Load balancing on 3 machines. Consider again the load balancing problem from class. In this problem, you have m machines and n jobs, where job j has running time t; > 0 for j = 1,..., n. The goal is to assign jobs to machines so that the max load is minimized. Here, the load of any one machine is the sum of the running times of the jobs assigned to it, and the max load is the maximum of the loads of the machines. Your task is to design an algorithm to compute the optimal max load for the case where m= 3. You may also assume that each t, is a positive integer. Your algorithm only needs to compute the optimal max load, and not an assignment. Your algorithm should run in time O(nt), where t := {j=1t;. You should argue (briefly) why your algorithm runs in the stated time. Hint: Use Dynamic Programming. Approach the problem as in Problem 3: first design a recursive algorithm, identify the subproblems, and then memoize. However, you don't need to give an iterative algorithm, and you don't even have to give the details of memoization. Hint: Unlike the 2-machine problem discussed in class, you should not attempt to reduce this to subset sum 6. Load balancing on 3 machines. Consider again the load balancing problem from class. In this problem, you have m machines and n jobs, where job j has running time t; > 0 for j = 1,..., n. The goal is to assign jobs to machines so that the max load is minimized. Here, the load of any one machine is the sum of the running times of the jobs assigned to it, and the max load is the maximum of the loads of the machines. Your task is to design an algorithm to compute the optimal max load for the case where m= 3. You may also assume that each t, is a positive integer. Your algorithm only needs to compute the optimal max load, and not an assignment. Your algorithm should run in time O(nt), where t := {j=1t;. You should argue (briefly) why your algorithm runs in the stated time. Hint: Use Dynamic Programming. Approach the problem as in Problem 3: first design a recursive algorithm, identify the subproblems, and then memoize. However, you don't need to give an iterative algorithm, and you don't even have to give the details of memoization. Hint: Unlike the 2-machine problem discussed in class, you should not attempt to reduce this to subset sum

Step by Step Solution

There are 3 Steps involved in it

Step: 1

blur-text-image

Get Instant Access to Expert-Tailored Solutions

See step-by-step solutions with expert insights and AI powered tools for academic success

Step: 2

blur-text-image

Step: 3

blur-text-image

Ace Your Homework with AI

Get the answers you need in no time with our AI-driven, step-by-step assistance

Get Started

Students also viewed these Accounting questions