134 Pages

lec19

Course: CS 473, Fall 2008
School: University of Illinois,...
Rating:
 
 
 
 
 

Word Count: 7316

Document Preview

473ug: CS Algorithms Mahesh Viswanathan vmahesh@cs.uiuc.edu 3232 Siebel Center University of Illinois, Urbana-Champaign Spring 2008 Viswanathan CS473ug Complementation Self Reduction Part I Complementation and Self-Reduction Viswanathan CS473ug Complementation Self Reduction Motivation co-NP Denition Relationship between P, NP and co-NP Asymmetry of NP Observation To show that a problem is in NP we only...

Register Now

Unformatted Document Excerpt

Coursehero >> Illinois >> University of Illinois, Urbana Champaign >> CS 473

Course Hero has millions of student submitted documents similar to the one
below including study guides, practice problems, reference materials, practice exams, textbook help and tutor support.

Course Hero has millions of student submitted documents similar to the one below including study guides, practice problems, reference materials, practice exams, textbook help and tutor support.
473ug: CS Algorithms Mahesh Viswanathan vmahesh@cs.uiuc.edu 3232 Siebel Center University of Illinois, Urbana-Champaign Spring 2008 Viswanathan CS473ug Complementation Self Reduction Part I Complementation and Self-Reduction Viswanathan CS473ug Complementation Self Reduction Motivation co-NP Denition Relationship between P, NP and co-NP Asymmetry of NP Observation To show that a problem is in NP we only need short, eciently checkable certicates for yes-instances. What about no-instances? Viswanathan CS473ug Complementation Self Reduction Motivation co-NP Denition Relationship between P, NP and co-NP Examples SAT versus Tautology: A boolean formula is a tautology if it is true under all assignments Viswanathan CS473ug Complementation Self Reduction Motivation co-NP Denition Relationship between P, NP and co-NP Examples SAT versus Tautology: A boolean formula is a tautology if it is true under all assignments We can prove that a formula is satisable by exhibiting a satisfying assignment Viswanathan CS473ug Complementation Self Reduction Motivation co-NP Denition Relationship between P, NP and co-NP Examples SAT versus Tautology: A boolean formula is a tautology if it is true under all assignments We can prove that a formula is satisable by exhibiting a satisfying assignment Is there short, eciently checkable proof to show that a formula is a tautology? Viswanathan CS473ug Complementation Self Reduction Motivation co-NP Denition Relationship between P, NP and co-NP Examples SAT versus Tautology: A boolean formula is a tautology if it is true under all assignments We can prove that a formula is satisable by exhibiting a satisfying assignment Is there short, eciently checkable proof to show that a formula is a tautology? What about unsatisability? Viswanathan CS473ug Complementation Self Reduction Motivation co-NP Denition Relationship between P, NP and co-NP Examples SAT versus Tautology: A boolean formula is a tautology if it is true under all assignments We can prove that a formula is satisable by exhibiting a satisfying assignment Is there short, eciently checkable proof to show that a formula is a tautology? What about unsatisability? Hamiltonian Cycle versus No Hamiltonian Cycle Viswanathan CS473ug Complementation Self Reduction Motivation co-NP Denition Relationship between P, NP and co-NP Examples SAT versus Tautology: A boolean formula is a tautology if it is true under all assignments We can prove that a formula is satisable by exhibiting a satisfying assignment Is there short, eciently checkable proof to show that a formula is a tautology? What about unsatisability? Hamiltonian Cycle versus No Hamiltonian Cycle We can prove that a graph has a Hamiltonian Cycle by listing out the Hamiltonian Cycle Viswanathan CS473ug Complementation Self Reduction Motivation co-NP Denition Relationship between P, NP and co-NP Examples SAT versus Tautology: A boolean formula is a tautology if it is true under all assignments We can prove that a formula is satisable by exhibiting a satisfying assignment Is there short, eciently checkable proof to show that a formula is a tautology? What about unsatisability? Hamiltonian Cycle versus No Hamiltonian Cycle We can prove that a graph has a Hamiltonian Cycle by listing out the Hamiltonian Cycle Is there a short, eciently checkable proof to show that there is no Hamiltonian Cycle? Viswanathan CS473ug Complementation Self Reduction Motivation co-NP Denition Relationship between P, NP and co-NP NP and co-NP NP Decision problems with a polynomial certier. Examples, SAT, Hamiltonian Cycle, 3-Colorability Viswanathan CS473ug Complementation Self Reduction Motivation co-NP Denition Relationship between P, NP and co-NP NP and co-NP NP Decision problems with a polynomial certier. Examples, SAT, Hamiltonian Cycle, 3-Colorability Denition Given a problem X , its complement X is the collection of all instances s such that s X Viswanathan CS473ug Complementation Self Reduction Motivation co-NP Denition Relationship between P, NP and co-NP NP and co-NP NP Decision problems with a polynomial certier. Examples, SAT, Hamiltonian Cycle, 3-Colorability Denition Given a problem X , its complement X is the collection of all instances s such that s X Denition co-NP is the class of all decision problems X such that X NP. Examples, Tautology, No Hamiltonian Cycle, Graph is not 3-colorable. Viswanathan CS473ug Complementation Self Reduction Motivation co-NP Denition Relationship between P, NP and co-NP Open Problem: Does NP = co-NP? Viswanathan CS473ug Complementation Self Reduction Motivation co-NP Denition Relationship between P, NP and co-NP Open Problem: Does NP = co-NP? Consensus: No Viswanathan CS473ug Complementation Self Reduction Motivation co-NP Denition Relationship between P, NP and co-NP P, NP, and co-NP Proposition If NP = co-NP then P = NP Viswanathan CS473ug Complementation Self Reduction Motivation co-NP Denition Relationship between P, NP and co-NP P, NP, and co-NP Proposition If NP = co-NP then P = NP Proof. Viswanathan CS473ug Complementation Self Reduction Motivation co-NP Denition Relationship between P, NP and co-NP P, NP, and co-NP Proposition If NP = co-NP then P = NP Proof. P is closed under complementation Viswanathan CS473ug Complementation Self Reduction Motivation co-NP Denition Relationship between P, NP and co-NP P, NP, and co-NP Proposition If NP = co-NP then P = NP Proof. P is closed under complementation The polynomial time algorithm that solves X also solves X (with answers reversed) Viswanathan CS473ug Complementation Self Reduction Motivation co-NP Denition Relationship between P, NP and co-NP P, NP, and co-NP Proposition If NP = co-NP then P = NP Proof. P is closed under complementation The polynomial time algorithm that solves X also solves X (with answers reversed) Suppose P = NP. Then X NP Viswanathan CS473ug Complementation Self Reduction Motivation co-NP Denition Relationship between P, NP and co-NP P, NP, and co-NP Proposition If NP = co-NP then P = NP Proof. P is closed under complementation The polynomial time algorithm that solves X also solves X (with answers reversed) Suppose P = NP. Then X NP X P Viswanathan CS473ug Complementation Self Reduction Motivation co-NP Denition Relationship between P, NP and co-NP P, NP, and co-NP Proposition If NP = co-NP then P = NP Proof. P is closed under complementation The polynomial time algorithm that solves X also solves X (with answers reversed) Suppose P = NP. Then X NP X P X P Viswanathan CS473ug Complementation Self Reduction Motivation co-NP Denition Relationship between P, NP and co-NP P, NP, and co-NP Proposition If NP = co-NP then P = NP Proof. P is closed under complementation The polynomial time algorithm that solves X also solves X (with answers reversed) Suppose P = NP. Then X NP X P X P X NP Viswanathan CS473ug Complementation Self Reduction Motivation co-NP Denition Relationship between P, NP and co-NP P, NP, and co-NP Proposition If NP = co-NP then P = NP Proof. P is closed under complementation The polynomial time algorithm that solves X also solves X (with answers reversed) Suppose P = NP. Then X NP X P X P X NP X co-NP Viswanathan CS473ug Complementation Self Reduction Motivation co-NP Denition Relationship between P, NP and co-NP P, NP, and co-NP Proposition If NP = co-NP then P = NP Proof. P is closed under complementation The polynomial time algorithm that solves X also solves X (with answers reversed) Suppose P = NP. Then X NP X P X P X NP X co-NP X co-NP Viswanathan CS473ug Complementation Self Reduction Motivation co-NP Denition Relationship between P, NP and co-NP P, NP, and co-NP Proposition If NP = co-NP then P = NP Proof. P is closed under complementation The polynomial time algorithm that solves X also solves X (with answers reversed) Suppose P = NP. Then X NP X P X P X NP X co-NP X co-NP X NP Viswanathan CS473ug Complementation Self Reduction Motivation co-NP Denition Relationship between P, NP and co-NP P, NP, and co-NP Proposition If NP = co-NP then P = NP Proof. P is closed under complementation The polynomial time algorithm that solves X also solves X (with answers reversed) Suppose P = NP. Then X NP X P X P X NP X co-NP X co-NP X NP X P Viswanathan CS473ug Complementation Self Reduction Motivation co-NP Denition Relationship between P, NP and co-NP P, NP, and co-NP Proposition If NP = co-NP then P = NP Proof. P is closed under complementation The polynomial time algorithm that solves X also solves X (with answers reversed) Suppose P = NP. Then X NP X P X P X NP X co-NP X co-NP X NP X P X P Viswanathan CS473ug Complementation Self Reduction Motivation co-NP Denition Relationship between P, NP and co-NP P, NP, and co-NP Proposition If NP = co-NP then P = NP Proof. P is closed under complementation The polynomial time algorithm that solves X also solves X (with answers reversed) Suppose P = NP. Then X NP X P X P X NP X co-NP X co-NP X NP X P X P X NP Viswanathan CS473ug Complementation Self Reduction Motivation co-NP Denition Relationship between P, NP and co-NP P, NP, and co-NP Proposition If NP = co-NP then P = NP Proof. P is closed under complementation The polynomial time algorithm that solves X also solves X (with answers reversed) Suppose P = NP. Then X NP X P X P X NP X co-NP X co-NP X NP X P X P X NP Thus, NP = co-NP, which contradicts our assumption Viswanathan CS473ug Complementation Self Reduction Motivation co-NP Denition Relationship between P, NP and co-NP NP co-NP Complexity Class NP co-NP Problems in this class have Ecient certiers for yes-instances Ecient disqualiers for no-instances Problems have a good characterization property, since for both yes and no instances we have short eciently checkable proofs Viswanathan CS473ug Complementation Self Reduction Motivation co-NP Denition Relationship between P, NP and co-NP NP co-NP: Example Example Bipartite Matching: Given bipartite graph G = (U V , E ), does G have a perfect matching? Bipartite Matching NP co-NP Viswanathan CS473ug Complementation Self Reduction Motivation co-NP Denition Relationship between P, NP and co-NP NP co-NP: Example Example Bipartite Matching: Given bipartite graph G = (U V , E ), does G have a perfect matching? Bipartite Matching NP co-NP If G is a yes-instance, then proof is just the perfect matching Viswanathan CS473ug Complementation Self Reduction Motivation co-NP Denition Relationship between P, NP and co-NP NP co-NP: Example Example Bipartite Matching: Given bipartite graph G = (U V , E ), does G have a perfect matching? Bipartite Matching NP co-NP If G is a yes-instance, then proof is just the perfect matching If G is a no-instance, then by Halls Theorem, there is a subset of vertices A U such that |N(A)| < |A| Viswanathan CS473ug Complementation Self Reduction Motivation co-NP Denition Relationship between P, NP and co-NP Good Characterization = Ecient Solution ? Bipartite Matching has a polynomial time algorithm Viswanathan CS473ug Complementation Self Reduction Motivation co-NP Denition Relationship between P, NP and co-NP Good Characterization = Ecient Solution ? Bipartite Matching has a polynomial time algorithm Do all problems in NP co-NP have polynomial time algorithms? Viswanathan CS473ug Complementation Self Reduction Motivation co-NP Denition Relationship between P, NP and co-NP Good Characterization = Ecient Solution ? Bipartite Matching has a polynomial time algorithm Do all problems in NP co-NP have polynomial time algorithms? Many problems in NP co-NP have been proved to be in P many years later Viswanathan CS473ug Complementation Self Reduction Motivation co-NP Denition Relationship between P, NP and co-NP Good Characterization = Ecient Solution ? Bipartite Matching has a polynomial time algorithm Do all problems in NP co-NP have polynomial time algorithms? Many problems in NP co-NP have been proved to be in P many years later Linear programming (Khachiyan 1979) Viswanathan CS473ug Complementation Self Reduction Motivation co-NP Denition Relationship between P, NP and co-NP Good Characterization = Ecient Solution ? Bipartite Matching has a polynomial time algorithm Do all problems in NP co-NP have polynomial time algorithms? Many problems in NP co-NP have been proved to be in P many years later Linear programming (Khachiyan 1979) Primality Testing (Agarwal-Kayal-Saxena 2002) Viswanathan CS473ug Complementation Self Reduction Motivation co-NP Denition Relationship between P, NP and co-NP P = NP co-NP (contd) ? Some problems in NP co-NP still cannot be proved to have polynomial time algorithms Viswanathan CS473ug Complementation Self Reduction Motivation co-NP Denition Relationship between P, NP and co-NP P = NP co-NP (contd) ? Some problems in NP co-NP still cannot be proved to have polynomial time algorithms Solving Parity Games Viswanathan CS473ug Complementation Self Reduction Motivation co-NP Denition Relationship between P, NP and co-NP P = NP co-NP (contd) ? Some problems in NP co-NP still cannot be proved to have polynomial time algorithms Solving Parity Games Factoring Viswanathan CS473ug Complementation Self Reduction Motivation co-NP Denition Relationship between P, NP and co-NP P = NP co-NP (contd) ? Some problems in NP co-NP still cannot be proved to have polynomial time algorithms Solving Parity Games Factoring; an ecient solution for this problem breaks RSA Viswanathan CS473ug Complementation Self Reduction Introduction Self Reduction SAT is Self Reducible Back to Decision versus Search Recall, decision problems are those with yes/no answers, while search problems are general problems Viswanathan CS473ug Complementation Self Reduction Introduction Self Reduction SAT is Self Reducible Back to Decision versus Search Recall, decision problems are those with yes/no answers, while search problems are general problems Example Viswanathan CS473ug Complementation Self Reduction Introduction Self Reduction SAT is Self Reducible Back to Decision versus Search Recall, decision problems are those with yes/no answers, while search problems are general problems Example Satisability Viswanathan CS473ug Complementation Self Reduction Introduction Self Reduction SAT is Self Reducible Back to Decision versus Search Recall, decision problems are those with yes/no answers, while search problems are general problems Example Satisability Decision: Is the formula satisable? Viswanathan CS473ug Complementation Self Reduction Introduction Self Reduction SAT is Self Reducible Back to Decision versus Search Recall, decision problems are those with yes/no answers, while search problems are general problems Example Satisability Decision: Is the formula satisable? Search: Find assignment that satises Viswanathan CS473ug Complementation Self Reduction Introduction Self Reduction SAT is Self Reducible Back to Decision versus Search Recall, decision problems are those with yes/no answers, while search problems are general problems Example Satisability Decision: Is the formula satisable? Search: Find assignment that satises Graph coloring Viswanathan CS473ug Complementation Self Reduction Introduction Self Reduction SAT is Self Reducible Back to Decision versus Search Recall, decision problems are those with yes/no answers, while search problems are general problems Example Satisability Decision: Is the formula satisable? Search: Find assignment that satises Graph coloring Decision: Is graph G 3-colorable? Viswanathan CS473ug Complementation Self Reduction Introduction Self Reduction SAT is Self Reducible Back to Decision versus Search Recall, decision problems are those with yes/no answers, while search problems are general problems Example Satisability Decision: Is the formula satisable? Search: Find assignment that satises Graph coloring Decision: Is graph G 3-colorable? Search: Find a 3-coloring of the vertices of G Viswanathan CS473ug Complementation Self Reduction Introduction Self Reduction SAT is Self Reducible Decision reduces to Search Ecient algorithm for search implies ecient algorithm for decision Viswanathan CS473ug Complementation Self Reduction Introduction Self Reduction SAT is Self Reducible Decision reduces to Search Ecient algorithm for search implies ecient algorithm for decision If decision problem is dicult then search problem is also dicult Viswanathan CS473ug Complementation Self Reduction Introduction Self Reduction SAT is Self Reducible Decision reduces to Search Ecient algorithm for search implies ecient algorithm for decision If decision problem is dicult then search problem is also dicult Can an ecient algorithm for decision imply an ecient algorithm for search? Viswanathan CS473ug Complementation Self Reduction Introduction Self Reduction SAT is Self Reducible Decision reduces to Search Ecient algorithm for search implies ecient algorithm for decision If decision problem is dicult then search problem is also dicult Can an ecient algorithm for decision imply an ecient algorithm for search? Yes, for all the problems we have seen. Viswanathan CS473ug Complementation Self Reduction Introduction Self Reduction SAT is Self Reducible Self Reduction Denition A problem is said to be self reducible if the search problem reduces (by Cook reduction) in polynomial time to decision problem. In other words, there is an algorithm to solve the search problem that has polynomially many steps, where each step is either A conventional computational step, or A call to subroutine solving the decision problem Viswanathan CS473ug Complementation Self Reduction Introduction Self Reduction SAT is Self Reducible Back to SAT Proposition SAT is self reducible In other words, there is a polynomial time algorithm to nd the satisfying assignment if one can periodically check if some formula is satisable Viswanathan CS473ug Complementation Self Reduction Introduction Self Reduction SAT is Self Reducible First Ideas Possible Algorithm Viswanathan CS473ug Complementation Self Reduction Introduction Self Reduction SAT is Self Reducible First Ideas Possible Algorithm 1 Pick an unassigned variable. Set it to true. Viswanathan CS473ug Complementation Self Reduction Introduction Self Reduction SAT is Self Reducible First Ideas Possible Algorithm 1 2 Pick an unassigned variable. Set it to true. Ask if this partial truth assignment can be extended to a satisfying truth assignment for formula. Viswanathan CS473ug Complementation Self Reduction Introduction Self Reduction SAT is Self Reducible First Ideas Possible Algorithm 1 2 Pick an unassigned variable. Set it to true. Ask if this partial truth assignment can be extended to a satisfying truth assignment for formula. If no, set variable to false and again check if it can be extended. (If the answer is still no, then formula is unsatisable.) 3 Viswanathan CS473ug Complementation Self Reduction Introduction Self Reduction SAT is Self Reducible First Ideas Possible Algorithm 1 2 Pick an unassigned variable. Set it to true. Ask if this partial truth assignment can be extended to a satisfying truth assignment for formula. If no, set variable to false and again check if it can be extended. (If the answer is still no, then formula is unsatisable.) Repeat the above process for the next unassigned variable 3 4 Viswanathan CS473ug Complementation Self Reduction Introduction Self Reduction SAT is Self Reducible First Ideas Possible Algorithm 1 2 Pick an unassigned variable. Set it to true. Ask if this partial truth assignment can be extended to a satisfying truth assignment for formula. If no, set variable to false and again check if it can be extended. (If the answer is still no, then formula is unsatisable.) Repeat the above process for the next unassigned variable 3 4 Running time = 2 (Time to check if assignment can be extended) n. (Number of variables is n.) Viswanathan CS473ug Complementation Self Reduction Introduction Self Reduction SAT is Self Reducible Problems with Algorithm Why previous algorithm is not a self-reduction We only get to ask satisability questions in a reduction, not questions about the extensibility of partial assignments. Can we change the question of whether a partial assignment can be extended to a question about the satisability of a formula? Viswanathan CS473ug Complementation Self Reduction Introduction Self Reduction SAT is Self Reducible Search Algorithm Input: CNF formula if (satisfy() = no) return formula not satifiable else = for each variable xi (i from 1 to n) if (satisfy( xi ) = yes) = xi a(xi ) = true else = xi a(xi ) = false return a satisfy is an algorithm that checks if formula is satisable. Viswanathan CS473ug Introduction Load Balancing Part II Approximation Algorithms Viswanathan CS473ug Introduction Load Balancing Solving NP-complete Problems If X is NP-complete, it is unlikely to be solvable eciently. Then you have 3 choices Viswanathan CS473ug Introduction Load Balancing Solving NP-complete Problems If X is NP-complete, it is unlikely to be solvable eciently. Then you have 3 choices Use an algorithm that does not run in polynomial time Viswanathan CS473ug Introduction Load Balancing Solving NP-complete Problems If X is NP-complete, it is unlikely to be solvable eciently. Then you have 3 choices Use an algorithm that does not run in polynomial time SAT-solvers Viswanathan CS473ug Introduction Load Balancing Solving NP-complete Problems If X is NP-complete, it is unlikely to be solvable eciently. Then you have 3 choices Use an algorithm that does not run in polynomial time SAT-solvers Solve problem in special cases Viswanathan CS473ug Introduction Load Balancing Solving NP-complete Problems If X is NP-complete, it is unlikely to be solvable eciently. Then you have 3 choices Use an algorithm that does not run in polynomial time SAT-solvers Solve problem in special cases Optimal vertex cover can be computed in polynomial time for trees (exercise) Viswanathan CS473ug Introduction Load Balancing Solving NP-complete Problems If X is NP-complete, it is unlikely to be solvable eciently. Then you have 3 choices Use an algorithm that does not run in polynomial time SAT-solvers Solve problem in special cases Optimal vertex cover can be computed in polynomial time for trees (exercise) Register allocation for programs in static single-assignment (SSA) form is polynomial time [Hack-Grund-Goos 2006] Viswanathan CS473ug Introduction Load Balancing Solving NP-complete Problems If X is NP-complete, it is unlikely to be solvable eciently. Then you have 3 choices Use an algorithm that does not run in polynomial time SAT-solvers Solve problem in special cases Optimal vertex cover can be computed in polynomial time for trees (exercise) Register allocation for programs static in single-assignment (SSA) form is polynomial time [Hack-Grund-Goos 2006] Solve problem approximately! Viswanathan CS473ug Introduction Load Balancing Approximation Algorithms Denition Let X is an optimization problem such that opt(s) is the optimum value on input instance s. An algorithm A is a -approximation algorithm for X if Viswanathan CS473ug Introduction Load Balancing Approximation Algorithms Denition Let X is an optimization problem such that opt(s) is the optimum value on input instance s. An algorithm A is a -approximation algorithm for X if 1 On all inputs s, A(s) runs in polynomial time Viswanathan CS473ug Introduction Load Balancing Approximation Algorithms Denition Let X is an optimization problem such that opt(s) is the optimum value on input instance s. An algorithm A is a -approximation algorithm for X if 1 2 On all inputs s, A(s) runs in polynomial time On all inputs s, the output A(s) is within a -ratio of the optimal value opt(s) Viswanathan CS473ug Introduction Load Balancing Approximation Algorithms Denition Let X is an optimization problem such that opt(s) is the optimum value on input instance s. An algorithm A is a -approximation algorithm for X if 1 2 On all inputs s, A(s) runs in polynomial time On all inputs s, the output A(s) is within a -ratio of the optimal value opt(s), i.e., if X is a maximization problem then A(s) opt(s)/ and if X is a minimization problem then A(s) opt(s) Viswanathan CS473ug Introduction Load Balancing Approximation Algorithms Denition Let X is an optimization problem such that opt(s) is the optimum value on input instance s. An algorithm A is a -approximation algorithm for X if 1 2 On all inputs s, A(s) runs in polynomial time On all inputs s, the output A(s) is within a -ratio of the optimal value opt(s), i.e., if X is a maximization problem then A(s) opt(s)/ and if X is a minimization problem then A(s) opt(s) Thus, on all inputs A runs in polynomial time, and gives an answer that is guaranteed to be close to the optimal value. Viswanathan CS473ug Introduction Load Balancing The Problem Greedy Algorithm Analysis of Greedy Algorithm Analysis of Improved Algorithm Load Balancing Problem Input: m identical machines, n jobs with ith job having processing time ti Goal: Schedule jobs to computers such that Jobs run contiguously on a machine Viswanathan CS473ug Introduction Load Balancing The Problem Greedy Algorithm Analysis of Greedy Algorithm Analysis of Improved Algorithm Load Balancing Problem Input: m identical machines, n jobs with ith job having processing time ti Goal: Schedule jobs to computers such that Jobs run contiguously on a machine A machine processes only one job a time Viswanathan CS473ug Introduction Load Balancing The Problem Greedy Algorithm Analysis of Greedy Algorithm Analysis of Improved Algorithm Load Balancing Problem Input: m identical machines, n jobs with ith job having processing time ti Goal: Schedule jobs to computers such that Jobs run contiguously on a machine A machine processes only one job a time Makespan or maximum load on any machine is minimized Viswanathan CS473ug Introduction Load Balancing The Problem Greedy Algorithm Analysis of Greedy Algorithm Analysis of Improved Algorithm Load Balancing Problem Input: m identical machines, n jobs with ith job having processing time ti Goal: Schedule jobs to computers such that Jobs run contiguously on a machine A machine processes only one job a time Makespan or maximum load on any machine is minimized Denition Let A(i) be the set of jobs assigned to machine i. The load on i is Ti = jA(i) tj . Viswanathan CS473ug Introduction Load Balancing The Problem Greedy Algorithm Analysis of Greedy Algorithm Analysis of Improved Algorithm Load Balancing Problem Input: m identical machines, n jobs with ith job having processing time ti Goal: Schedule jobs to computers such that Jobs run contiguously on a machine A machine processes only one job a time Makespan or maximum load on any machine is minimized Denition Let A(i) be the set of jobs assigned to machine i. The load on i is Ti = jA(i) tj . The makespan of A is T = maxi Ti Viswanathan CS473ug Introduction Load Balancing The Problem Greedy Algorithm Analysis of Greedy Algorithm Analysis of Improved Algorithm Load Balancing: Example Example Consider 6 jobs whose processing times is given as follows Jobs ti 1 2 2 3 3 4 4 6 5 2 6 2 Viswanathan CS473ug Introduction Load Balancing The Problem Greedy Algorithm Analysis of Greedy Algorithm Analysis of Improved Algorithm Load Balancing: Example Example Consider 6 jobs whose processing times is given as follows Jobs ti 3 2 1 5 4 1 2 2 3 3 4 4 6 5 2 6 2 Consider the following schedule on 3 machines 6 Viswanathan CS473ug Introduction Load Balancing The Problem Greedy Algorithm Analysis of Greedy Algorithm Analysis of Improved Algorithm Load Balancing: Example Example Consider 6 jobs whose processing times is given as follows Jobs ti 3 2 1 5 4 1 2 2 3 3 4 4 6 5 2 6 2 Consider the following schedule on 3 machines 6 The loads are: T1 = 8, T2 = 5, and T3 = 6. So makespan of schedule is 8 Viswanathan CS473ug Introduction Load Balancing The Problem Greedy Algorithm Analysis of Greedy Algorithm Analysis of Improved Algorithm Greedy Algorithm 1 2 Consider the jobs in some xed order Assign job j to the machine with lowest load so far Example Jobs ti 1 2 2 3 3 4 4 6 5 2 6 2 Viswanathan CS473ug Introduction Load Balancing The Problem Greedy Algorithm Analysis of Greedy Algorithm Analysis of Improved Algorithm Greedy Algorithm 1 2 Consider the jobs in some xed order Assign job j to the machine with lowest load so far Example Jobs ti 1 2 2 3 3 4 4 6 5 2 6 2 1 Viswanathan CS473ug Introduction Load Balancing The Problem Greedy Algorithm Analysis of Greedy Algorithm Analysis of Improved Algorithm Greedy Algorithm 1 2 Consider the jobs in some xed order Assign job j to the machine with lowest load so far Example Jobs ti 1 2 2 3 3 4 4 6 5 2 6 2 2 1 Viswanathan CS473ug Introduction Load Balancing The Problem Greedy Algorithm Analysis of Greedy Algorithm Analysis of Improved Algorithm Greedy Algorithm 1 2 Consider the jobs in some xed order Assign job j to the machine with lowest load so far Example Jobs ti 3 2 1 1 2 2 3 3 4 4 6 5 2 6 2 Viswanathan CS473ug Introduction Load Balancing The Problem Greedy Algorithm Analysis of Greedy Algorithm Analysis of Improved Algorithm Greedy Algorithm 1 2 Consider the jobs in some xed order Assign job j to the machine with lowest load so far Example Jobs ti 3 2 1 4 1 2 2 3 3 4 4 6 5 2 6 2 Viswanathan CS473ug Introduction Load Balancing The Problem Greedy Algorithm Analysis of Greedy Algorithm Analysis of Improved Algorithm Greedy Algorithm 1 2 Consider the jobs in some xed order Assign job j to the machine with lowest load so far Example Jobs ti 3 2 1 5 4 1 2 2 3 3 4 4 6 5 2 6 2 Viswanathan CS473ug Introduction Load Balancing The Problem Greedy Algorithm Analysis of Greedy Algorithm Analysis of Improved Algorithm Greedy Algorithm 1 2 Consider the jobs in some xed order Assign job j to the machine with lowest load so far Example Jobs ti 3 2 1 5 4 1 2 2 3 3 4 4 6 6 5 2 6 2 Viswanathan CS473ug Introduction Load Balancing The Problem Greedy Algorithm Analysis of Greedy Algorithm Analysis of Improved Algorithm Putting it together for each machine i Ti = 0 (* initially no load *) A(i) = (* initially no jobs *) for each job j Let i be machine with smallest load A(i) = A(i) {j} (* schedule j on i *) Ti = Ti + tj (* compute new load *) Running Time Viswanathan CS473ug Introduction Load Balancing The Problem Greedy Algorithm Analysis of Greedy Algorithm Analysis of Improved Algorithm Putting it together for each machine i Ti = 0 (* initially no load *) A(i) = (* initially no jobs *) for each job j Let i be machine with smallest load A(i) = A(i) {j} (* schedule j on i *) Ti = Ti + tj (* compute new load *) Running Time First loop takes O(m) time Viswanathan CS473ug Introduction Load Balancing The Problem Greedy Algorithm Analysis of Greedy Algorithm Analysis of Improved Algorithm Putting it together for each machine i Ti = 0 (* initially no load *) A(i) = (* initially no jobs *) for each job j Let i be machine with smallest load A(i) = A(i) {j} (* schedule j on i *) Ti = Ti + tj (* compute new load *) Running Time First loop takes O(m) time Second loop has O(n) iterations Viswanathan CS473ug Introduction Load Balancing The Problem Greedy Algorithm Analysis of Greedy Algorithm Analysis of Improved Algorithm Putting it together for each machine i Ti = 0 (* initially no load *) A(i) = (* initially no jobs *) for each job j Let i be machine with smallest load A(i) = A(i) {j} (* schedule j on i *) Ti = Ti + tj (* compute new load *) Running Time First loop takes O(m) time Second loop has O(n) iterations Viswanathan CS473ug Introduction Load Balancing The Problem Greedy Algorithm Analysis of Greedy Algorithm Analysis of Improved Algorithm Putting it together for each machine i Ti = 0 (* initially no load *) A(i) = (* initially no jobs *) for each job j Let i be machine with smallest load A(i) = A(i) {j} (* schedule j on i *) Ti = Ti + tj (* compute new load *) Running Time First loop takes O(m) time Second loop has O(n) iterations Body of loop takes O(log m) time using a priority heap Viswanathan CS473ug Introduction Load Balancing The Problem Greedy Algorithm Analysis of Greedy Algorithm Analysis of Improved Algorithm Putting it together for each machine i Ti = 0 (* initially no load *) A(i) = (* initially no jobs *) for each job j Let i be machine with smallest load A(i) = A(i) {j} (* schedule j on i *) Ti = Ti + tj (* compute new load *) Running Time First loop takes O(m) time Second loop has O(n) iterations Body of loop takes O(log m) time using a priority heap Total time is O(n log m + m) Viswanathan CS473ug Introduction Load Balancing The Problem Greedy Algorithm Analysis of Greedy Algorithm Analysis of Improved Algorithm Optimality Problem Is the greedy algorithm optimal? Viswanathan CS473ug Introduction Load Balancing The Problem Greedy Algorithm Analysis of Greedy Algorithm Analysis of Improved Algorithm Optimality Problem Is the greedy algorithm optimal? No! For example, on Jobs ti 1 2 2 3 3 4 4 6 5 2 6 2 the greedy algorithm gives schedule with makespan 8, but optimal is 7 Viswanathan CS473ug Introduction Load Balancing The Problem Greedy Algorithm Analysis of Greedy Algorithm Analysis of Improved Algorithm Optimality Problem Is the greedy algorithm optimal? No! For example, on Jobs ti 1 2 2 3 3 4 4 6 5 2 6 2 the greedy algorithm gives schedule with makespan 8, but optimal is 7 In fact, the load balancing problem is NP-complete. Viswanathan CS473ug Introduction Load Balancing The Problem Greedy Algorithm Analysis of Greedy Algorithm Analysis of Improved Algorithm Quality of Solution Viswanathan CS473ug Introduction Load Balancing The Problem Greedy Algorithm Analysis of Greedy Algorithm Analysis of Improved Algorithm Quality of Solution Theorem (Graham 1966) The makespan of the schedule output by the greedy algorithm is at most 2 times the optimal make span. In other words, the greedy algorithm is a 2-approximation. Challenge How do we compare the output of the greedy algorithm with the optimal? How do we get the value of the optimal solution? Viswanathan CS473ug Introduction Load Balancing The Problem Greedy Algorithm Analysis of Greedy Algorithm Analysis of Improved Algorithm Quality of Solution Theorem (Graham 1966) The makespan of the schedule output by the greedy algorithm is at most 2 times the optimal make span. In other words, the greedy algorithm is a 2-approximation. Challenge How do we compare the output of the greedy algorithm with the optimal? How do we get the value of the optimal solution? We will obtain bounds on the optimal value Viswanathan CS473ug Introduction Load Balancing The Problem Greedy Algorithm Analysis of Greedy Algorithm Analysis of Improved Algorithm Bounding the Optimal Value Lemma T maxj tj , where T is the optimal makespan Viswanathan CS473ug Introduction Load Balancing The Problem Greedy Algorithm Analysis of Greedy Algorithm Analysis of Improved Algorithm Bounding the Optimal Value Lemma T maxj tj , where T is the optimal makespan Proof. Some machine will run the job with maximum processing time Viswanathan CS473ug Introduction Load Balancing The Problem Greedy Algorithm Analysis of Greedy Algorithm Analysis of Improved Algorithm Bounding the Optimal Value Lemma T maxj tj , where T is the optimal makespan Proof. Some machine will run the job with maximum processing time Lemma T 1 m j tj , where T is the optimal makespan Viswanathan CS473ug Introduction Load Balancing The Problem Greedy Algorithm Analysis of Greedy Algorithm Analysis of Improved Algorithm Bounding the Optimal Value Lemma T maxj tj , where T is the optimal makespan Proof. Some machine will run the job with maximum processing time Lemma T Proof. 1 m j tj , where T is the optimal makespan Viswanathan CS473ug Introduction Load Balancing The Problem Greedy Algorithm Analysis of Greedy Algorithm Analysis of Improved Algorithm Bounding the Optimal Value Lemma T maxj tj , where T is the optimal makespan Proof. Some machine will run the job with maximum processing time Lemma T 1 m j tj , where T is the optimal makespan Proof. Total processing time is j tj Viswanathan CS473ug Introduction Load Balancing The Problem Greedy Algorithm Analysis of Greedy Algorithm Analysis of Improved Algorithm Bounding the Optimal Value Lemma T maxj tj , where T is the optimal makespan Proof. Some machine will run the job with maximum processing time Lemma T 1 m j tj , where T is the optimal makespan Proof. Total proce...

Find millions of documents on Course Hero - Study Guides, Lecture Notes, Reference Materials, Practice Exams and more. Course Hero has millions of course specific materials providing students with the best way to expand their education.

Below is a small sample set of documents:

University of Illinois, Urbana Champaign - CS - 473
CS 473: AlgorithmsAssigned: Friday January 18, 2008 Homework Problems Before Starting! 1. Read the webpage http:/www.cs.uiuc.edu/class/sp08/cs473/hwfaq.html for homework instructions! 2. This Homework is to be done individually. 3. Each problem MUST
University of Illinois, Urbana Champaign - CS - 473
Head-Banging Session 6CS 473: AlgorithmsProblem 1. Overlap alignment for two sequences x = x1 . . . xn and y = y1 . . . ym is an alignment between a sux of x and a prex of y. This type of alignment is useful when you are attempting to assemble the
University of Illinois, Urbana Champaign - CS - 473
Head-Banging Session 2CS 473ug: AlgorithmsProblem 1.[Algebraic Manipulation] 1. Prove the following identity:nm=im i=n+1 i+12. Using the previous identity, evaluate 3. Provek c t=1 tk t=1t andk 2 t=1 t .= (k c+1 ), for any c N
University of Illinois, Urbana Champaign - CS - 473
CS 473: AlgorithmsAssigned: Friday February 22, 2008 Due on: February 29, 2008Homework 4Instructions: Solve the homework in groups of at most 3. Solution to each problem must start on a separate sheet. Please staple the pages for each problem bu
University of Illinois, Urbana Champaign - CS - 473
Head-Banging Session 3CS 473ug: AlgorithmsProblem 1.[Preliminaries] 1. Fast Exponentiation: (a) Given a constant c we are interested in computing n = c2 . Give an algorithm to compute n in time polynomial in k. (b) Given a constant c we are interes
University of Illinois, Urbana Champaign - CS - 473
CS 473: AlgorithmsAssigned: Friday February 8, 2008 Due on: February 15, 2008Homework 3Instructions: Solve the homework in groups of at most 3. Solution to each problem must start on a separate sheet. Please staple the pages for each problem but
University of Illinois, Urbana Champaign - CS - 473
Head-Banging Session 5CS 473: AlgorithmsProblem 1. [Maximum Weight Independent Set] Given an undirected graph G = (V, E), an independent set in G is a subset S V of nodes such that for any u, v S, the edge (u, v) E. Assume that each node v has
University of Illinois, Urbana Champaign - CS - 473
CS 473ug: AlgorithmsAssigned: Friday February 1, 2008 Due on: February 8, 2008Homework 2Instructions: Solve the homework in groups of at most 3. Solution to each problem must start on a separate sheet. Please staple the pages for each problem bu
University of Illinois, Urbana Champaign - CS - 473
CS 473: AlgorithmsAssigned: Friday February 29, 2008 Due on: March 7, 2008Homework 5Instructions: Solve the homework in groups of at most 3. Solution to each problem must start on a separate sheet. Please staple the pages for each problem but do
University of Illinois, Urbana Champaign - CS - 473
Sample Inductive ProofCS 473ug: AlgorithmsProblem 1. Consider a 2n 2n chess board with one (arbitrarily chosen) square removed. Prove that any such chessboard can be tiled without gaps or overlaps by L-shaped pieces consisting of 3 squares each. So
University of Illinois, Urbana Champaign - CS - 473
Practice HomeworkCS 473: AlgorithmsAssigned: Friday March 14, 2008 Due on: NeverInstructions: Please do not turn in solutions to this homework. Recommended Reading: Chapter 7 of the textbook and lecture notes 13 through 15 on the web. Homework Pr
University of Illinois, Urbana Champaign - CS - 473
How to Present a Paper in Theoretical Computer Science: A Speaker's Guide for StudentsIan Parberryy Department of Computer Sciences University of North Texas July 29, 1993There are many points in your career at which you will be called upon to pres
University of Illinois, Urbana Champaign - CS - 473
CS 473: AlgorithmsAssigned: Friday April 4, 2008 Due on: April 11, 2008Homework 8Instructions: Solve the homework in groups of at most 3. Solution to each problem must start on a separate sheet. Please staple the pages for each problem but do no
University of Illinois, Urbana Champaign - CS - 473
CS 473: AlgorithmsAssigned: Friday March 28, 2008 Due on: April 4, 2008Homework 7Instructions: Solve the homework in groups of at most 3. Solution to each problem must start on a separate sheet. Please staple the pages for each problem but do no
University of Illinois, Urbana Champaign - CS - 473
CS 473ug: AlgorithmsMahesh Viswanathan vmahesh@cs.uiuc.edu 3232 Siebel CenterUniversity of Illinois, Urbana-ChampaignSpring 2008ViswanathanCS473ugSet CoverPart I Set CoverViswanathanCS473ugSet CoverThe Problem Greedy Heuristic Ana
University of Illinois, Urbana Champaign - CS - 473
CS 473ug: AlgorithmsMahesh Viswanathan vmahesh@cs.uiuc.edu 3232 Siebel CenterUniversity of Illinois, Urbana-ChampaignSpring 2008ViswanathanCS473ugBipartite Matching Edge Disjoint PathsPart I Network Flow Applications IViswanathanCS473
University of Illinois, Urbana Champaign - CS - 473
CS 473ug: AlgorithmsMahesh Viswanathan vmahesh@cs.uiuc.edu 3232 Siebel CenterUniversity of Illinois, Urbana-ChampaignSpring 2008ViswanathanCS473ugPreliminaries NP Cook-Levin TheoremPart I NP CompletenessViswanathanCS473ugPreliminari
University of Illinois, Urbana Champaign - CS - 473
CS 473ug: AlgorithmsMahesh Viswanathan vmahesh@cs.uiuc.edu 3232 Siebel CenterUniversity of Illinois, Urbana-ChampaignSpring 2008ViswanathanCS473ugMaximum Flow Algorithms Correctness and Analysis Polynomial Time AlgorithmsPart I Network Fl
University of Illinois, Urbana Champaign - CS - 473
Basic Graph Theory Breadth First search Depth First Search Directed GraphsCS 473ug: AlgorithmsMahesh Viswanathan vmahesh@cs.uiuc.edu 3232 Siebel CenterUniversity of Illinois, Urbana-ChampaignSpring 2008ViswanathanCS473ugBasic Graph Theory
University of Illinois, Urbana Champaign - CS - 473
Head-Banging Session 8CS 473: AlgorithmsProblem 1. Tonian Paths: The problem of Finding a Tonian path in a graph is that of nding a simple path that goes through more than half the vertices of a graph. (Where a simple path is one with no repeated v
University of Illinois, Urbana Champaign - CS - 473
Head-Banging Session 9CS 473: AlgorithmsProblem 1. Consider a set A = {a1 , ., an } and a collection B1 , B2 , ., Bm of subsets of A (i.e. Bi A for each i). We say that a set H A is a hitting set for the collection B1 , B2 , .Bm if H contains at
University of Illinois, Urbana Champaign - CS - 473
CS 473ug: AlgorithmsMahesh Viswanathan vmahesh@cs.uiuc.edu 3232 Siebel CenterUniversity of Illinois, Urbana-ChampaignSpring 2008ViswanathanCS473ugMinimum Spanning TreePart I Greedy Algorithms: Minimum Spanning TreeViswanathanCS473ug
University of Illinois, Urbana Champaign - CS - 473
CS 473ug: AlgorithmsMahesh Viswanathan vmahesh@cs.uiuc.edu 3232 Siebel CenterUniversity of Illinois, Urbana-ChampaignSpring 2008ViswanathanCS473ugImage Segmentation Project Selection Baseball Pennant RacePart I Applications of Max-Flow Mi
University of Illinois, Urbana Champaign - CS - 473
CS 473ug: AlgorithmsMahesh Viswanathan vmahesh@cs.uiuc.edu 3232 Siebel CenterUniversity of Illinois, Urbana-ChampaignSpring 2008ViswanathanCS473ugPricing MethodPart I Pricing Method: Vertex CoverViswanathanCS473ugPricing MethodThe
University of Illinois, Urbana Champaign - CS - 473
CS 473ug: AlgorithmsMahesh Viswanathan vmahesh@cs.uiuc.edu 3232 Siebel CenterUniversity of Illinois, Urbana-ChampaignSpring 2008ViswanathanCS473ugThe Problem Algorithmic Solution Running Time AnalysisPart I Closest PairViswanathanCS47
University of Illinois, Urbana Champaign - CS - 473
Head-Banging Session 11CS 473: AlgorithmsProblem 1. 3-Coloring: Model the 3-Coloring problem with an Integer Linear Program. The 3-Coloring problem is: Given a graph, is it possible to color each node either red, green, or blue, so that no two node
University of Illinois, Urbana Champaign - CS - 473
Head-Banging Session 7CS 473: AlgorithmsProblem 1. Which of the following statements are true and which are false? Justify your answer. 1. If all directed edges in a network have distinct capacities, then there is a unique max ow. 2. If we replace
University of Illinois, Urbana Champaign - CS - 273
CS 273: Intro to Theory of Computation, Spring 2008 Problem Set 4 SolutionsThis homework contains four problems. As usual, please submit each problem on a separate sheet of paper. Turn in your homework at Elaine Wilson's office (3229 Siebel). 1. NFA
University of Illinois, Urbana Champaign - CS - 273
CS 273: Intro to Theory of Computation, Spring 2008 Problem Set 12 Solutions1. Decidable problems. Prove that L is a decidable language: L= D, k D accepts no string of length k, and D is a NFA .Solution:L is decidable because we can design a dec
University of Illinois, Urbana Champaign - CS - 414
Homework 2 CS414, Multimedia Systems (Instructor: Klara Nahrstedt)Posted: April 18, 2008 Due: April 25, 2008 at 11:59pm CSTImportant InstructionsThis homework assignment should be done individually. Penalties for cheating as described in the grad
University of Illinois, Urbana Champaign - CS - 273
CS 273: Intro to Theory of Computation, Spring 2008 Problem Set 7 Due Monday, March 3rd, 4pm.Version: 1.01 This homework contains four problems. Please submit each on a separate sheet of paper. This will help us grade your homeworks more quickly. Tu
University of Illinois, Urbana Champaign - CS - 273
CS 273: Intro to Theory of Computation, Spring 2008 Problem Set 5 SolutionsSolution: 1: The original NFA. 2: Normalizing it.=3: Remove state A. 4: Redrawn without old edges.==5: Removing B.=16: Redrawn. =7: Removing C and redrawn.
University of Illinois, Urbana Champaign - CS - 273
CS 273: Intro to Theory of Computation, Spring 2008 Problem Set 1 (due Tuesday, January 22nd, 4pm)1. Set theory (10 points) Let A = {1, 2, 3} , B = {, {1}, {2} and C = {1, 2, {1, 2} . Compute A B, A B, B C, A C, A B, A C, C - A, C - B, A B C
University of Illinois, Urbana Champaign - CS - 273
CS 273: Intro to Theory of Computation, Spring 2008 Problem Set 8 Solutions1. Extract language from PDA. Give the language of the following PDA. b, , , b, , c, a ,$ b, a ,$ a, aa , $b, Solution:L = an bm |m| 2|n| an bm ck |k| = 2n,
University of Illinois, Urbana Champaign - CS - 273
CS 273: Intro to Theory of Computation, Spring 2008 Problem Set 14 Solutions1. Dovetailing (a) Briey sketch an algorithm for enumerating all Turing machine encodings. Remember that each encoding is just a string, with some specic internal syntax (e.
University of Illinois, Urbana Champaign - CS - 273
CS 273: Intro to Theory of Computation, Spring 2008 Problem Set 5 (due Monday, February 18th, 4pm)This homework contains only one problem, intended to help you study for the rst midterm. As usual, please turn in your homework at Elaine Wilsons oce (
University of Illinois, Urbana Champaign - CS - 579
PCPLecture 26 And Hardness of ApproximationThursday, April 24, 20081Promise ProblemsDecision problems, but with dont cares Specied by a Yes set and a No set, disjoint A TM is said to decide a promise problem if it correctly answers Yes or No
University of Illinois, Urbana Champaign - CS - 273
CS 273 Lecture 26: Posts Correspondence Problem and Tilings24 April 2008This lecture covers Posts Correspondence Problem (section 5.2 in Sipser). Undecidability of this problem implies the undecidability of CFG ambiguity. We will also see how to si
University of Illinois, Urbana Champaign - CS - 598
CS 598CSC: Approximation Algorithms Instructor: Chandra ChekuriLecture date: January 23, 2009 Scribe: Sungjin ImIn the previous lecture, we had a quick overview of several basic aspects of approximation algorithms. We also addressed approximation
University of Illinois, Urbana Champaign - CS - 373
CS 373: Theory of Computation Sariel Har-Peled and Madhusudan ParthasarathyProblem Set 0Due: Thursday Jan 29 at 12:30 in class (i.e., SC 1105) This homework contains four problems (and one extra credit problem). Please follow the homework forma
University of Illinois, Urbana Champaign - CS - 373
CS 273 Lecture 26: Posts Correspondence Problem and Tilings24 April 2008This lecture covers Posts Correspondence Problem (section 5.2 in Sipser). Undecidability of this problem implies the undecidability of CFG ambiguity. We will also see how to si
University of Illinois, Urbana Champaign - CS - 373
CS 273, Lecture 22 Reductions10 April 2008This lecture covers basic undecidability reductions. This is the rst half of Sipser section 5.1 (through most of p. 192).1What is a reduction?Last lecture we proved that ATM is undecidable. Now that w
University of Illinois, Urbana Champaign - CS - 373
CS 273 Lecture : Review of topics coveredThis review of the class notes was written by Madhusudan Parthasarathy.1IntroductionThe theory of computation is perhaps the fundamental theory of computer science. It sets out to dene, mathematically,
University of Illinois, Urbana Champaign - CS - 373
CS 373: Theory of Computation Sariel Har-Peled and Madhusudan ParthasarathyDiscussion 2: Examples of DFAs27 January 2009Purpose: This discussion demonstrates a few constructions of DFAs. How-ever, its main purpose is to show how to move fr
University of Illinois, Urbana Champaign - CS - 373
CS 273, Lecture 24 Linear Bounded Automata17 April 2008This lecture covers Linear Bounded Automata, an interesting compromise in power between Turing machines and the simpler automata (DFAs, NFAs, PDAs). We will use LBAs to show two CFG grammar pro
University of Illinois, Urbana Champaign - CS - 579
Complexity Homework 1Released: January 27, 2008 Due: February 10, 2008 For problems that involve nondeterministic complexity classes, the solutions maybe simpler when phrased in terms of certicates (instead of non-determinism). Problem 1: (a) Let L1
University of Illinois, Urbana Champaign - CS - 477
Homework Problem Set 1CS 477 Spring 2009Assigned: February 3, 2009 Due: February 10, 2009Instructions: You are welcome to collaborate while working out the ideas for a solution. However, you must write down the solutions independently, and must
University of Illinois, Urbana Champaign - CS - 579
Computational ComplexityLecture 1 in which we talk about Time Complexity, P, NP and coNPEvolution of ComputationEvolution of ComputationThe program (Turing Machine) starts in an initial conguration (tape-contents, control-state, headposition)
University of Illinois, Urbana Champaign - CS - 418
Some Sample Triangle MeshesWhat Polygon Meshes AreExplicit mesh description a list of polygonal faces F = ( f1, f2, , fn ) each polygon fi is a list of points this is sometimes called a polygon soup model vertices will be duplicated several ti
University of Illinois, Urbana Champaign - CS - 438
CS/ECE 438: Communication Networks Machine Problem 2Spring 2009 Due: 11:59 PM, Friday, March 20thReliable File TransferPlease read all sections of this document before you begin to code. Also, note that this is a challenging MP. It is not possib
University of Illinois, Urbana Champaign - CS - 438
CS/ECE 438: Communication Networks for Computers Problem Set 1Network Overview, Utilities and Basic ProbabilityAll problems carry equal weight. To receive full credit, show all of your work. 1.Spring 2009 SolutionsYou need 4TB / 8 GB = 500 flas
University of Illinois, Urbana Champaign - CS - 438
CS/ECE 438: Communication Networks Problem Set 3Fall 2007 Due Wednesday, Oct 17NOTE: There will be no automatic extension for this assignment. If you do not hand in the assignment by the start of class on Oct 17, you will get no credit for the as
University of Illinois, Urbana Champaign - CS - 438
CS/ECE 438: Communication Networks Problem Set 51. Slow StartFall 2007 Due Wednesday, Dec 5Assume a connection with RTT=50ms, MSS=1000 bytes. Ignoring overhead spent on headers, calculate the transfer time and the eective throughput for transfer
University of Illinois, Urbana Champaign - CS - 411
CS411 Database SystemsFall 2007HW#1Due: 3:00pm CST, 09/26/07Note: Print your name and NetID in the upper right corner of every page of your submission. Handin your stapled homework to Donna Coleman in 2120 SC. In case Donna is not in oce, slide
University of Illinois, Urbana Champaign - CS - 425
CS 425 Distributed Systems, Fall 2007, University of Illinois at Urbana-ChampaignMachine Problem 0 - TutorialDue Date - NoneOverviewThe machine programming (MP) part of the course this semester involves building a peer to peer application. We w
University of Illinois, Urbana Champaign - CS - 473
CS 473U: Algorithms, Fall 2007 Review and Practice Problems for Finals1. Recurrences and growth of functions. Review the problems in the homeworks and in midterm 1 and see if you can solve them now (without looking at the solutions!). 2. Problems 4.
University of Illinois, Urbana Champaign - CS - 373
CS 373: Theory of ComputationAssigned: October 16, 2008 Due on: October 23, 2008Problem Set 6Instructions: This homework has two parts. The rst part has practice problems from the textbook many of whose solutions can be found in the textbook its
University of Illinois, Urbana Champaign - CS - 373
Problem Set 2CS 373: Theory of ComputationAssigned: September 11, 2008 Due on: September 18, 2008Instructions: This homework has two parts. The rst part has practice problems from the textbook many of whose solutions can be found in the textbook
University of Illinois, Urbana Champaign - CS - 373
CS 373: Theory of ComputationAssigned: October 23, 2008 Due on: October 30, 2008Problem Set 6Instructions: This homework has two parts. The rst part has practice problems from the textbook many of whose solutions can be found in the textbook its
University of Illinois, Urbana Champaign - CS - 373
Problem Set 7CS 373: Theory of ComputationAssigned: October 23, 2008 Due on: October 30, 2008Instructions: This homework has two parts. The rst part has practice problems from the textbook many of whose solutions can be found in the textbook itse
University of Illinois, Urbana Champaign - CS - 440
Searching as Problem SolvingExample of Analytic Models(slightly more standard than textbook) N.B.: Lectures supercede textbook! World State Operators Preconditions Effects Goal Initial Stateattributes mechanism of change of operators of o