NP-completeness and the real world. NP completeness. NP-completeness and the real world (2) NP-completeness and the real world
|
|
|
- Andra Patrick
- 10 years ago
- Views:
Transcription
1 -completeness and the real world completeness Course Discrete Biological Models (Modelli Biologici Discreti) Zsuzsanna Lipták Imagine you are working for a biotech company. One day your boss calls you and tells you that they have invented a new sequencing technology. It generates lots of fragments of the target molecule, which may overlap. Your job as chief algorithm designer is to write a program that reconstructs the target molecule. You get to work... Laurea Triennale in Bioinformatica a.a. 204/5, fall term 2/39 -completeness and the real world Imagine you are working for a biotech company. One day your boss calls you and tells you that they have invented a new sequencing technology. It generates lots of fragments of the target molecule, which may overlap. Your job as chief algorithm designer is to write a program that reconstructs the target molecule. You get to work... you find that... you need a superstring (of all fragments) ashortestsuperstring you need to maximize the overlaps any superstring is just a permutation of the fragments you need the/a best permutation (which maximizes total overlap) -completeness and the real world (2) But after weeks and weeks and weeks... all you have come up with is: Exhaustive algorithm List all possible permutations and choose the best. 2/39 3/39 -completeness and the real world (3) So you can go to your boss and say: This is no good, since for,000 fragments (typical experiment) this would need far longer than the age of the universe. Why? 000! permutations source: Wolfram Alpha say we need 000 operations per permutation (summing overlaps) if we have a computer that does billion (= 0 9 ) operations/sec it can handle million (0 6 ) permutations per second So it will take /0 6 = seconds Age of the universe: about 4 billion years seconds source: Wikipedia We can see that a million (0 6 ) or a billion (0 9 ) times faster computer wouldn t help much, either. Nor would faster handling of the permutations. Bad idea, you may get fired! source: Garey & Johnson, A Guide to the Theory of -completeness, 979 4/39 5/39
2 Or you could say: You prove that the reconstruction problem is -complete, and you say: Unfortunately, it is very hard to do impossibility proofs... source: Garey & Johnson, A Guide to the Theory of -completeness, 979 6/39 So it makes no sense to fire you and get another expert! source: Garey & Johnson, A Guide to the Theory of -completeness, 979 7/39 Overview Overview - class of that can be solved e ciently (i.e., in polynomial time) - class of that can solved in polynomial time by a non-deterministic Turing machine (nicer definition to follow) -complete -maximallydi cult in : every other problem can be transformed into these in polynomial time (details later) -hard - like -complete, but not necessarily in Usual way of drawing the classes and :!complete!hard 8/39 9/39 The class Definition A decision problem X is in if there is a polynomial time algorithm A which solves X. A decision problem is one that allows only YES or NO answers. s Given a sorted array of n numbers, is number x present? O(log n) time Given an array of n numbers, is number x present? O(n) time Given a graph G, isg Eulerian? O(n + m) time, where n = V, m = E(G). Details: Determine for each vertex whether it has even degree (or whether it is balanced if G is a digraph) in O(n) time;determinewithbfswhetherg is connected in O(n + m) time. 0 / 39 olynomial time algorithms Algorithm A is polynomial time if there is a polynomial p s.t. for every input I of size n, A terminates in at most p(n) steps. size is usually measured in bits, number of elements (for an integer array), number of vertices and edges (for graphs), number of characters (for strings) / 39
3 The class - class of that can solved in polynomial time by a non-deterministic Turing machine (non-deterministic polynomial time) alternative definition: = class of polynomial time checkable Whenever the answer is YES, there must exist a certificate (proof) of this, and it must be checkable (verifiable) in polynomial time. roblem: Given a graph G =(V, E), is G Hamiltonian (i.e. does it have a Hamiltonian cycle)? Certificate: A Hamiltonian cycle: check whether it is a cycle, and whether it contains every vertex exactly once, in O(n) time,wheren = V. 2 / 39 The class = class of polynomial time checkable Whenever the answer is YES, there must exist a certificate (proof) of this, and it must be checkable (verifiable) in polynomial time. roblem: Given a fragment set F of m fragments, does a superstring of length apple k exist? Certificate: asuperstrings of length apple k: checkforeveryf whether f is substring of S, ino( f + S ) time; altogether O( F + m S ) time,so polynomial in input size. input: F, inputsize: F = m i= fi, S apple i fi, som S apple F 2 3 / 39 The class and = class of polynomial time checkable Whenever the answer is YES, there must exist a certificate (proof) of this, and it must be checkable (verifiable) in polynomial time.!complete roblem: Given a complete digraph G =(V, E) with non-negative weights on edges, does it have a Hamiltonian path of weight at least r? Certificate: a Ham. path of weight r: check weight of path, check whether it contains every vertex exactly once, in O(n) time,wheren = V!hard 4 / 39 5 / 39 The = question The = question One of the big open question of computer science is: Is =? Since is clear, the question is:? Can every problem in be solved e ciently? I.e. is the shaded area empty?!complete!hard Most people believe: 6=. N.B.: There is a US $,000,000 prize for solving this question. 6 / 39 7 / 39
4 -complete and -hard -complete A problem X is -complete if it is in every problem in can be transformed/reduced to it in polynomial time (details soon) -hard A problem X is -hard if every problem in can be transformed/reduced to it in polynomial time (details soon) i.e., the only di erence is that it is not necessarily itself in. -complete and -hard Theorem Let X be an -complete or -hard problem. If we find a polynomial time algorithm for X,then =. Corollary Let X be an -complete or -hard problem. Then there is no polynomial time algorithm for X,unless =. Since we all believe that 6=, thismeansinpracticalterms: In practice Let X be an -complete or -hard problem. Then there is no polynomial time algorithm for X, fullstop. 8 / 39 9 / 39 -complete -complete Contains a list of known -complete : Michael R. Garey, David S. Johnson, Computers and Intractability - A Guide to the Theory of -completeness, 979 one of the best known and most cited books ever in computer science 20 / 39 2 / 39 -complete You have found your problem (the Shortest Common Superstring roblem) in the Garey-Johnson: Decision vs. optimization Optimization problem Given F, find a shortest common superstring S. Decision problem Given F, does a common superstring S exist with S apple k? N.B. If I can solve the decision problem, then I can also solve a reduced version of the optimization problem: determining the length of an SCS. Use log( F ) many calls to the decision problem. (Details: Determine the length of an SCS using binary search: Let N = F. We know that a common superstring exists with length N, namely the concatenation of all f 2 F. Nowsetk = N/2; if the answer is YES, continue with k = N/4, else with k =3N/4, etc.) 22 / / 39
5 Decision vs. optimization olynomial time reductions/transformations!complete!hard Now we want to talk about -complete. These are the ones to which all others in can be reduced in polynomial time. What does this mean? Many -hard are optimization versions of -complete. If the decision version is -complete, then the optimization version is automatically -hard. (Why?) So it s enough to prove that the decision version is -complete. (Or to find it in the Garey-Johnson.) Translate problem X to problem Y in polynomial time Definition We say that problem X is polynomial time reducible to problem Y, X apple p Y, if there is an algorithm A and a polynomial p, s.t.forevery instance I of X, A constructs an instance J of Y in time p( I ) such that: I is a YES-instance of X, J is a YES-instance of Y. 25 / / 39 An example reduction An example reduction SCS-decision Given: Fragment set F Question: Does a superstring of length apple k exist? {TACC, CGGACT, ACTAC, ACGGA} Weighted Hamiltonian path-decision Given: A weighted complete digraph G. Question: Does G have a Ham. path of weight F k? a = TACC c = CGGACT Let F contain m fragments of length r. Time for transformation: O(m 2 r 2 ), (or even faster): the time of the transformation is dominated by the time for computing the overlaps between the fragments, i.e. the weights on the edges This is polynomial in the input size F = mr (namely, with polynomial p(n) =n 2 ). YES on the left, YES on the right Therefore we have shown: SCS-decision apple p Weighted Hamiltonian path-decision b = ACTAC 2 d = ACGGA 27 / / 39 olynomial time reductions/transformations Definition (again) We say that problem X is polynomial time reducible to problem Y, X apple p Y, if there is an algorithm A and a polynomial p, s.t.forevery instance I of X, A constructs an instance J of Y in time p( I ) such that: N.B. I is a YES-instance of X, J is a YES-instance of Y. Think of X apple p Y as meaning: X is not harder than Y Note that we are still paying for the reduction/transformation: it takes polynomial time! olynomial time reductions/transformations -complete A problem X is -complete if it is in for every problem Y 2 : Y apple p X. Theorem Let X be an -complete problem. If we find a polynomial time algorithm for X,then =. There are important technical di erences between Karp-reductions/transformations (R. Karp, 972), and Turing-reductions (S. Cook, 97), which we are ignoring here. 29 / / 39
6 olynomial time reductions/transformations Is your problem -complete? Theorem Let X be an -complete problem. If we find a polynomial time algorithm for X,then =. roof Let A be a polytime algorithm for X.Wehavetoshow:. LetY be any problem in. We will now give a polytime algorithm for Y.LetI be an instance of Y.SinceX is -complete, there is an algorithm B which transforms any instance I of Y into an instance J of X in polynomial time, say in p B ( I ). In particular this implies J apple p B ( I ). The algorithm A for X solves J in time p A ( J ) apple p A (p B ( I )) (since all parameters are positive). Thus, we have an algorithm C = A B (B followed by A) fory, which gives an answer to instance I in time at most p C ( I ) :=p B ( I )+p A (p B ( I )), which, being a sum and composition of polynomials, is a polynomial in I. So if you have a computational problem, and you think it might be -complete, then Find it in the Garey-Johnson, or some other compendium of -complete/-hard, or prove that it is -complete. This is far beyond the scope of this course... You will learn how to do this in an advanced course on algorithms/complexity. 3 / / 39 Recap Why do we believe that 6=? : which are polynomial-time checkable (for YES-instances, a certificate exists which can be verified in polynomial time) polynomial time reduction/transformation, X apple p Y,means:instances of X can be transformed to instances of Y in polynomial time -complete : in to which all in can be polytime reduced -hard : like -complete but not necessarily in An e cient (=polytime) algorithm for an -complete or -hard problem would imply: =, which nobody believes is true Therefore, no e cient algorithm can exist for these (we all believe) Many, many important real-life are -complete or -hard. Finding an e cient algorithm for just one of these would prove =. Much much work has gone into finding e cient algorithms for these. By some of the best mathematicians and computer scientists on earth. No one has been able to find an e cient algorithm for any one of these so far. 33 / / 39 Why do we believe that 6=?... by some of the best mathematicians and computer scientists on earth... What to do next? If we find that our computational problem is -complete or -hard, then what can we do? despair/give up Run an exhaustive search algorithm This is often possible for small instances, often combined with specific tricks. Verify that your instances are really general. Often, the general case is -complete, but many special cases are not! E.g. the SBH-sequencing problem is not -complete: otherwise we could not have found a better formulation (Euler cycles in de Bruijn graphs) which is polynomially solvable! (continued on next page) 35 / / 39
7 What to do next? Summary (continued from previous page) Devise heuristics: algorithms that work well in practice but without guaranteeing the quality of the solution. olynomial time approximation algorithms: Algorithms that do not guarantee the optimal solution, but a solution which approximates the optimum. E.g. the Greedy Algorithm for SCS guarantees a solution which is at most 4 times longer than the optimum. and, and, and... There are certain for which no e cient algorithms exist (very, very, very, very probably) These are called -complete (decision ) or -hard (optimization ) Many real-life, also in computational biology/bioinformatics, are -complete/-hard There are ways of dealing with this (see previous list) 37 / / 39 Summary Merry Christmas! 39 / 39
Computer Algorithms. NP-Complete Problems. CISC 4080 Yanjun Li
Computer Algorithms NP-Complete Problems NP-completeness The quest for efficient algorithms is about finding clever ways to bypass the process of exhaustive search, using clues from the input in order
NP-complete? NP-hard? Some Foundations of Complexity. Prof. Sven Hartmann Clausthal University of Technology Department of Informatics
NP-complete? NP-hard? Some Foundations of Complexity Prof. Sven Hartmann Clausthal University of Technology Department of Informatics Tractability of Problems Some problems are undecidable: no computer
NP-Completeness. CptS 223 Advanced Data Structures. Larry Holder School of Electrical Engineering and Computer Science Washington State University
NP-Completeness CptS 223 Advanced Data Structures Larry Holder School of Electrical Engineering and Computer Science Washington State University 1 Hard Graph Problems Hard means no known solutions with
Outline. NP-completeness. When is a problem easy? When is a problem hard? Today. Euler Circuits
Outline NP-completeness Examples of Easy vs. Hard problems Euler circuit vs. Hamiltonian circuit Shortest Path vs. Longest Path 2-pairs sum vs. general Subset Sum Reducing one problem to another Clique
On the Relationship between Classes P and NP
Journal of Computer Science 8 (7): 1036-1040, 2012 ISSN 1549-3636 2012 Science Publications On the Relationship between Classes P and NP Anatoly D. Plotnikov Department of Computer Systems and Networks,
Page 1. CSCE 310J Data Structures & Algorithms. CSCE 310J Data Structures & Algorithms. P, NP, and NP-Complete. Polynomial-Time Algorithms
CSCE 310J Data Structures & Algorithms P, NP, and NP-Complete Dr. Steve Goddard [email protected] CSCE 310J Data Structures & Algorithms Giving credit where credit is due:» Most of the lecture notes
Why? A central concept in Computer Science. Algorithms are ubiquitous.
Analysis of Algorithms: A Brief Introduction Why? A central concept in Computer Science. Algorithms are ubiquitous. Using the Internet (sending email, transferring files, use of search engines, online
1. Nondeterministically guess a solution (called a certificate) 2. Check whether the solution solves the problem (called verification)
Some N P problems Computer scientists have studied many N P problems, that is, problems that can be solved nondeterministically in polynomial time. Traditionally complexity question are studied as languages:
Introduction to computer science
Introduction to computer science Michael A. Nielsen University of Queensland Goals: 1. Introduce the notion of the computational complexity of a problem, and define the major computational complexity classes.
SIMS 255 Foundations of Software Design. Complexity and NP-completeness
SIMS 255 Foundations of Software Design Complexity and NP-completeness Matt Welsh November 29, 2001 [email protected] 1 Outline Complexity of algorithms Space and time complexity ``Big O'' notation Complexity
OHJ-2306 Introduction to Theoretical Computer Science, Fall 2012 8.11.2012
276 The P vs. NP problem is a major unsolved problem in computer science It is one of the seven Millennium Prize Problems selected by the Clay Mathematics Institute to carry a $ 1,000,000 prize for the
A Working Knowledge of Computational Complexity for an Optimizer
A Working Knowledge of Computational Complexity for an Optimizer ORF 363/COS 323 Instructor: Amir Ali Ahmadi TAs: Y. Chen, G. Hall, J. Ye Fall 2014 1 Why computational complexity? What is computational
JUST-IN-TIME SCHEDULING WITH PERIODIC TIME SLOTS. Received December May 12, 2003; revised February 5, 2004
Scientiae Mathematicae Japonicae Online, Vol. 10, (2004), 431 437 431 JUST-IN-TIME SCHEDULING WITH PERIODIC TIME SLOTS Ondřej Čepeka and Shao Chin Sung b Received December May 12, 2003; revised February
CAD Algorithms. P and NP
CAD Algorithms The Classes P and NP Mohammad Tehranipoor ECE Department 6 September 2010 1 P and NP P and NP are two families of problems. P is a class which contains all of the problems we solve using
Tutorial 8. NP-Complete Problems
Tutorial 8 NP-Complete Problems Decision Problem Statement of a decision problem Part 1: instance description defining the input Part 2: question stating the actual yesor-no question A decision problem
P versus NP, and More
1 P versus NP, and More Great Ideas in Theoretical Computer Science Saarland University, Summer 2014 If you have tried to solve a crossword puzzle, you know that it is much harder to solve it than to verify
Approximation Algorithms
Approximation Algorithms or: How I Learned to Stop Worrying and Deal with NP-Completeness Ong Jit Sheng, Jonathan (A0073924B) March, 2012 Overview Key Results (I) General techniques: Greedy algorithms
The Classes P and NP
The Classes P and NP We now shift gears slightly and restrict our attention to the examination of two families of problems which are very important to computer scientists. These families constitute the
1 Approximating Set Cover
CS 05: Algorithms (Grad) Feb 2-24, 2005 Approximating Set Cover. Definition An Instance (X, F ) of the set-covering problem consists of a finite set X and a family F of subset of X, such that every elemennt
NP-Completeness I. Lecture 19. 19.1 Overview. 19.2 Introduction: Reduction and Expressiveness
Lecture 19 NP-Completeness I 19.1 Overview In the past few lectures we have looked at increasingly more expressive problems that we were able to solve using efficient algorithms. In this lecture we introduce
Theoretical Computer Science (Bridging Course) Complexity
Theoretical Computer Science (Bridging Course) Complexity Gian Diego Tipaldi A scenario You are a programmer working for a logistics company Your boss asks you to implement a program that optimizes the
Complexity Theory. IE 661: Scheduling Theory Fall 2003 Satyaki Ghosh Dastidar
Complexity Theory IE 661: Scheduling Theory Fall 2003 Satyaki Ghosh Dastidar Outline Goals Computation of Problems Concepts and Definitions Complexity Classes and Problems Polynomial Time Reductions Examples
Lecture 7: NP-Complete Problems
IAS/PCMI Summer Session 2000 Clay Mathematics Undergraduate Program Basic Course on Computational Complexity Lecture 7: NP-Complete Problems David Mix Barrington and Alexis Maciel July 25, 2000 1. Circuit
Introduction to Algorithms. Part 3: P, NP Hard Problems
Introduction to Algorithms Part 3: P, NP Hard Problems 1) Polynomial Time: P and NP 2) NP-Completeness 3) Dealing with Hard Problems 4) Lower Bounds 5) Books c Wayne Goddard, Clemson University, 2004 Chapter
8.1 Min Degree Spanning Tree
CS880: Approximations Algorithms Scribe: Siddharth Barman Lecturer: Shuchi Chawla Topic: Min Degree Spanning Tree Date: 02/15/07 In this lecture we give a local search based algorithm for the Min Degree
Lecture 19: Introduction to NP-Completeness Steven Skiena. Department of Computer Science State University of New York Stony Brook, NY 11794 4400
Lecture 19: Introduction to NP-Completeness Steven Skiena Department of Computer Science State University of New York Stony Brook, NY 11794 4400 http://www.cs.sunysb.edu/ skiena Reporting to the Boss Suppose
How To Solve A Minimum Set Covering Problem (Mcp)
Measuring Rationality with the Minimum Cost of Revealed Preference Violations Mark Dean and Daniel Martin Online Appendices - Not for Publication 1 1 Algorithm for Solving the MASP In this online appendix
Million Dollar Mathematics!
Million Dollar Mathematics! Alissa S. Crans Loyola Marymount University Southern California Undergraduate Math Day University of California, San Diego April 30, 2011 This image is from the Wikipedia article
Discuss the size of the instance for the minimum spanning tree problem.
3.1 Algorithm complexity The algorithms A, B are given. The former has complexity O(n 2 ), the latter O(2 n ), where n is the size of the instance. Let n A 0 be the size of the largest instance that can
CSC 373: Algorithm Design and Analysis Lecture 16
CSC 373: Algorithm Design and Analysis Lecture 16 Allan Borodin February 25, 2013 Some materials are from Stephen Cook s IIT talk and Keven Wayne s slides. 1 / 17 Announcements and Outline Announcements
Tetris is Hard: An Introduction to P vs NP
Tetris is Hard: An Introduction to P vs NP Based on Tetris is Hard, Even to Approximate in COCOON 2003 by Erik D. Demaine (MIT) Susan Hohenberger (JHU) David Liben-Nowell (Carleton) What s Your Problem?
Computational complexity theory
Computational complexity theory Goal: A general theory of the resources needed to solve computational problems What types of resources? Time What types of computational problems? decision problem Decision
136 CHAPTER 4. INDUCTION, GRAPHS AND TREES
136 TER 4. INDUCTION, GRHS ND TREES 4.3 Graphs In this chapter we introduce a fundamental structural idea of discrete mathematics, that of a graph. Many situations in the applications of discrete mathematics
MapReduce and Distributed Data Analysis. Sergei Vassilvitskii Google Research
MapReduce and Distributed Data Analysis Google Research 1 Dealing With Massive Data 2 2 Dealing With Massive Data Polynomial Memory Sublinear RAM Sketches External Memory Property Testing 3 3 Dealing With
Applied Algorithm Design Lecture 5
Applied Algorithm Design Lecture 5 Pietro Michiardi Eurecom Pietro Michiardi (Eurecom) Applied Algorithm Design Lecture 5 1 / 86 Approximation Algorithms Pietro Michiardi (Eurecom) Applied Algorithm Design
Universality in the theory of algorithms and computer science
Universality in the theory of algorithms and computer science Alexander Shen Computational models The notion of computable function was introduced in 1930ies. Simplifying (a rather interesting and puzzling)
Boulder Dash is NP hard
Boulder Dash is NP hard Marzio De Biasi marziodebiasi [at] gmail [dot] com December 2011 Version 0.01:... now the difficult part: is it NP? Abstract Boulder Dash is a videogame created by Peter Liepa and
ON THE COMPLEXITY OF THE GAME OF SET. {kamalika,pbg,dratajcz,hoeteck}@cs.berkeley.edu
ON THE COMPLEXITY OF THE GAME OF SET KAMALIKA CHAUDHURI, BRIGHTEN GODFREY, DAVID RATAJCZAK, AND HOETECK WEE {kamalika,pbg,dratajcz,hoeteck}@cs.berkeley.edu ABSTRACT. Set R is a card game played with a
Discrete Mathematics & Mathematical Reasoning Chapter 10: Graphs
Discrete Mathematics & Mathematical Reasoning Chapter 10: Graphs Kousha Etessami U. of Edinburgh, UK Kousha Etessami (U. of Edinburgh, UK) Discrete Mathematics (Chapter 6) 1 / 13 Overview Graphs and Graph
SHARP BOUNDS FOR THE SUM OF THE SQUARES OF THE DEGREES OF A GRAPH
31 Kragujevac J. Math. 25 (2003) 31 49. SHARP BOUNDS FOR THE SUM OF THE SQUARES OF THE DEGREES OF A GRAPH Kinkar Ch. Das Department of Mathematics, Indian Institute of Technology, Kharagpur 721302, W.B.,
Euler Paths and Euler Circuits
Euler Paths and Euler Circuits An Euler path is a path that uses every edge of a graph exactly once. An Euler circuit is a circuit that uses every edge of a graph exactly once. An Euler path starts and
Notes on NP Completeness
Notes on NP Completeness Rich Schwartz November 10, 2013 1 Overview Here are some notes which I wrote to try to understand what NP completeness means. Most of these notes are taken from Appendix B in Douglas
Cloud Computing is NP-Complete
Working Paper, February 2, 20 Joe Weinman Permalink: http://www.joeweinman.com/resources/joe_weinman_cloud_computing_is_np-complete.pdf Abstract Cloud computing is a rapidly emerging paradigm for computing,
Complexity Classes P and NP
Complexity Classes P and NP MATH 3220 Supplemental Presentation by John Aleshunas The cure for boredom is curiosity. There is no cure for curiosity Dorothy Parker Computational Complexity Theory In computer
Why Study NP- hardness. NP Hardness/Completeness Overview. P and NP. Scaling 9/3/13. Ron Parr CPS 570. NP hardness is not an AI topic
Why Study NP- hardness NP Hardness/Completeness Overview Ron Parr CPS 570 NP hardness is not an AI topic It s important for all computer scienhsts Understanding it will deepen your understanding of AI
Analysis of Algorithms, I
Analysis of Algorithms, I CSOR W4231.002 Eleni Drinea Computer Science Department Columbia University Thursday, February 26, 2015 Outline 1 Recap 2 Representing graphs 3 Breadth-first search (BFS) 4 Applications
Answer: (a) Since we cannot repeat men on the committee, and the order we select them in does not matter, ( )
1. (Chapter 1 supplementary, problem 7): There are 12 men at a dance. (a) In how many ways can eight of them be selected to form a cleanup crew? (b) How many ways are there to pair off eight women at the
Quantum and Non-deterministic computers facing NP-completeness
Quantum and Non-deterministic computers facing NP-completeness Thibaut University of Vienna Dept. of Business Administration Austria Vienna January 29th, 2013 Some pictures come from Wikipedia Introduction
Introduction to Logic in Computer Science: Autumn 2006
Introduction to Logic in Computer Science: Autumn 2006 Ulle Endriss Institute for Logic, Language and Computation University of Amsterdam Ulle Endriss 1 Plan for Today Now that we have a basic understanding
A greedy algorithm for the DNA sequencing by hybridization with positive and negative errors and information about repetitions
BULLETIN OF THE POLISH ACADEMY OF SCIENCES TECHNICAL SCIENCES, Vol. 59, No. 1, 2011 DOI: 10.2478/v10175-011-0015-0 Varia A greedy algorithm for the DNA sequencing by hybridization with positive and negative
Diagonalization. Ahto Buldas. Lecture 3 of Complexity Theory October 8, 2009. Slides based on S.Aurora, B.Barak. Complexity Theory: A Modern Approach.
Diagonalization Slides based on S.Aurora, B.Barak. Complexity Theory: A Modern Approach. Ahto Buldas [email protected] Background One basic goal in complexity theory is to separate interesting complexity
Chapter. NP-Completeness. Contents
Chapter 13 NP-Completeness Contents 13.1 P and NP......................... 593 13.1.1 Defining the Complexity Classes P and NP...594 13.1.2 Some Interesting Problems in NP.......... 597 13.2 NP-Completeness....................
Mathematical Induction. Lecture 10-11
Mathematical Induction Lecture 10-11 Menu Mathematical Induction Strong Induction Recursive Definitions Structural Induction Climbing an Infinite Ladder Suppose we have an infinite ladder: 1. We can reach
! Solve problem to optimality. ! Solve problem in poly-time. ! Solve arbitrary instances of the problem. #-approximation algorithm.
Approximation Algorithms 11 Approximation Algorithms Q Suppose I need to solve an NP-hard problem What should I do? A Theory says you're unlikely to find a poly-time algorithm Must sacrifice one of three
Small Maximal Independent Sets and Faster Exact Graph Coloring
Small Maximal Independent Sets and Faster Exact Graph Coloring David Eppstein Univ. of California, Irvine Dept. of Information and Computer Science The Exact Graph Coloring Problem: Given an undirected
NP-Completeness and Cook s Theorem
NP-Completeness and Cook s Theorem Lecture notes for COM3412 Logic and Computation 15th January 2002 1 NP decision problems The decision problem D L for a formal language L Σ is the computational task:
! X is a set of strings. ! Instance: string s. ! Algorithm A solves problem X: A(s) = yes iff s! X.
Decision Problems 8.2 Definition of NP Decision problem. X is a set of strings. Instance: string s. Algorithm A solves problem X: A(s) = yes iff s X. Polynomial time. Algorithm A runs in polytime if for
Industrial Optimization
Industrial Optimization Lessons learned from Optimization in Practice Marco Lübbecke Chair of Operations Research RWTH Aachen University, Germany SICS Stockholm Feb 11, 2013 Discrete Optimization: Some
Introduction to NP-Completeness Written and copyright c by Jie Wang 1
91.502 Foundations of Comuter Science 1 Introduction to Written and coyright c by Jie Wang 1 We use time-bounded (deterministic and nondeterministic) Turing machines to study comutational comlexity of
Welcome to... Problem Analysis and Complexity Theory 716.054, 3 VU
Welcome to... Problem Analysis and Complexity Theory 716.054, 3 VU Birgit Vogtenhuber Institute for Software Technology email: [email protected] office hour: Tuesday 10:30 11:30 slides: http://www.ist.tugraz.at/pact.html
The Goldberg Rao Algorithm for the Maximum Flow Problem
The Goldberg Rao Algorithm for the Maximum Flow Problem COS 528 class notes October 18, 2006 Scribe: Dávid Papp Main idea: use of the blocking flow paradigm to achieve essentially O(min{m 2/3, n 1/2 }
Bicolored Shortest Paths in Graphs with Applications to Network Overlay Design
Bicolored Shortest Paths in Graphs with Applications to Network Overlay Design Hongsik Choi and Hyeong-Ah Choi Department of Electrical Engineering and Computer Science George Washington University Washington,
Arithmetic Coding: Introduction
Data Compression Arithmetic coding Arithmetic Coding: Introduction Allows using fractional parts of bits!! Used in PPM, JPEG/MPEG (as option), Bzip More time costly than Huffman, but integer implementation
The Union-Find Problem Kruskal s algorithm for finding an MST presented us with a problem in data-structure design. As we looked at each edge,
The Union-Find Problem Kruskal s algorithm for finding an MST presented us with a problem in data-structure design. As we looked at each edge, cheapest first, we had to determine whether its two endpoints
Classification - Examples
Lecture 2 Scheduling 1 Classification - Examples 1 r j C max given: n jobs with processing times p 1,...,p n and release dates r 1,...,r n jobs have to be scheduled without preemption on one machine taking
5.1 Bipartite Matching
CS787: Advanced Algorithms Lecture 5: Applications of Network Flow In the last lecture, we looked at the problem of finding the maximum flow in a graph, and how it can be efficiently solved using the Ford-Fulkerson
CoNP and Function Problems
CoNP and Function Problems conp By definition, conp is the class of problems whose complement is in NP. NP is the class of problems that have succinct certificates. conp is therefore the class of problems
Chapter 11. 11.1 Load Balancing. Approximation Algorithms. Load Balancing. Load Balancing on 2 Machines. Load Balancing: Greedy Scheduling
Approximation Algorithms Chapter Approximation Algorithms Q. Suppose I need to solve an NP-hard problem. What should I do? A. Theory says you're unlikely to find a poly-time algorithm. Must sacrifice one
Data Structures and Algorithms Written Examination
Data Structures and Algorithms Written Examination 22 February 2013 FIRST NAME STUDENT NUMBER LAST NAME SIGNATURE Instructions for students: Write First Name, Last Name, Student Number and Signature where
Factoring & Primality
Factoring & Primality Lecturer: Dimitris Papadopoulos In this lecture we will discuss the problem of integer factorization and primality testing, two problems that have been the focus of a great amount
A REMARK ON ALMOST MOORE DIGRAPHS OF DEGREE THREE. 1. Introduction and Preliminaries
Acta Math. Univ. Comenianae Vol. LXVI, 2(1997), pp. 285 291 285 A REMARK ON ALMOST MOORE DIGRAPHS OF DEGREE THREE E. T. BASKORO, M. MILLER and J. ŠIRÁŇ Abstract. It is well known that Moore digraphs do
Offline sorting buffers on Line
Offline sorting buffers on Line Rohit Khandekar 1 and Vinayaka Pandit 2 1 University of Waterloo, ON, Canada. email: [email protected] 2 IBM India Research Lab, New Delhi. email: [email protected]
Distributed Computing over Communication Networks: Maximal Independent Set
Distributed Computing over Communication Networks: Maximal Independent Set What is a MIS? MIS An independent set (IS) of an undirected graph is a subset U of nodes such that no two nodes in U are adjacent.
! Solve problem to optimality. ! Solve problem in poly-time. ! Solve arbitrary instances of the problem. !-approximation algorithm.
Approximation Algorithms Chapter Approximation Algorithms Q Suppose I need to solve an NP-hard problem What should I do? A Theory says you're unlikely to find a poly-time algorithm Must sacrifice one of
5 INTEGER LINEAR PROGRAMMING (ILP) E. Amaldi Fondamenti di R.O. Politecnico di Milano 1
5 INTEGER LINEAR PROGRAMMING (ILP) E. Amaldi Fondamenti di R.O. Politecnico di Milano 1 General Integer Linear Program: (ILP) min c T x Ax b x 0 integer Assumption: A, b integer The integrality condition
Mathematics for Algorithm and System Analysis
Mathematics for Algorithm and System Analysis for students of computer and computational science Edward A. Bender S. Gill Williamson c Edward A. Bender & S. Gill Williamson 2005. All rights reserved. Preface
Graph Theory Problems and Solutions
raph Theory Problems and Solutions Tom Davis [email protected] http://www.geometer.org/mathcircles November, 005 Problems. Prove that the sum of the degrees of the vertices of any finite graph is
Reading DNA Sequences:
Reading DNA Sequences: 18-th Century Mathematics for 21-st Century Technology Michael Waterman University of Southern California Tsinghua University DNA Genetic information of an organism Double helix,
The Basics of Graphical Models
The Basics of Graphical Models David M. Blei Columbia University October 3, 2015 Introduction These notes follow Chapter 2 of An Introduction to Probabilistic Graphical Models by Michael Jordan. Many figures
On the k-path cover problem for cacti
On the k-path cover problem for cacti Zemin Jin and Xueliang Li Center for Combinatorics and LPMC Nankai University Tianjin 300071, P.R. China [email protected], [email protected] Abstract In this paper we
International Journal of Advanced Research in Computer Science and Software Engineering
Volume 3, Issue 7, July 23 ISSN: 2277 28X International Journal of Advanced Research in Computer Science and Software Engineering Research Paper Available online at: www.ijarcsse.com Greedy Algorithm:
Near Optimal Solutions
Near Optimal Solutions Many important optimization problems are lacking efficient solutions. NP-Complete problems unlikely to have polynomial time solutions. Good heuristics important for such problems.
CS 3719 (Theory of Computation and Algorithms) Lecture 4
CS 3719 (Theory of Computation and Algorithms) Lecture 4 Antonina Kolokolova January 18, 2012 1 Undecidable languages 1.1 Church-Turing thesis Let s recap how it all started. In 1990, Hilbert stated a
Graphical degree sequences and realizations
swap Graphical and realizations Péter L. Erdös Alfréd Rényi Institute of Mathematics Hungarian Academy of Sciences MAPCON 12 MPIPKS - Dresden, May 15, 2012 swap Graphical and realizations Péter L. Erdös
CSC2420 Fall 2012: Algorithm Design, Analysis and Theory
CSC2420 Fall 2012: Algorithm Design, Analysis and Theory Allan Borodin November 15, 2012; Lecture 10 1 / 27 Randomized online bipartite matching and the adwords problem. We briefly return to online algorithms
THE PROBLEM WORMS (1) WORMS (2) THE PROBLEM OF WORM PROPAGATION/PREVENTION THE MINIMUM VERTEX COVER PROBLEM
1 THE PROBLEM OF WORM PROPAGATION/PREVENTION I.E. THE MINIMUM VERTEX COVER PROBLEM Prof. Tiziana Calamoneri Network Algorithms A.y. 2014/15 2 THE PROBLEM WORMS (1)! A computer worm is a standalone malware
Algorithm Design and Analysis
Algorithm Design and Analysis LECTURE 27 Approximation Algorithms Load Balancing Weighted Vertex Cover Reminder: Fill out SRTEs online Don t forget to click submit Sofya Raskhodnikova 12/6/2011 S. Raskhodnikova;
Approximated Distributed Minimum Vertex Cover Algorithms for Bounded Degree Graphs
Approximated Distributed Minimum Vertex Cover Algorithms for Bounded Degree Graphs Yong Zhang 1.2, Francis Y.L. Chin 2, and Hing-Fung Ting 2 1 College of Mathematics and Computer Science, Hebei University,
Dynamic programming. Doctoral course Optimization on graphs - Lecture 4.1. Giovanni Righini. January 17 th, 2013
Dynamic programming Doctoral course Optimization on graphs - Lecture.1 Giovanni Righini January 1 th, 201 Implicit enumeration Combinatorial optimization problems are in general NP-hard and we usually
What mathematical optimization can, and cannot, do for biologists. Steven Kelk Department of Knowledge Engineering (DKE) Maastricht University, NL
What mathematical optimization can, and cannot, do for biologists Steven Kelk Department of Knowledge Engineering (DKE) Maastricht University, NL Introduction There is no shortage of literature about the
(67902) Topics in Theory and Complexity Nov 2, 2006. Lecture 7
(67902) Topics in Theory and Complexity Nov 2, 2006 Lecturer: Irit Dinur Lecture 7 Scribe: Rani Lekach 1 Lecture overview This Lecture consists of two parts In the first part we will refresh the definition
Introduction to Automata Theory. Reading: Chapter 1
Introduction to Automata Theory Reading: Chapter 1 1 What is Automata Theory? Study of abstract computing devices, or machines Automaton = an abstract computing device Note: A device need not even be a
CPSC 121: Models of Computation Assignment #4, due Wednesday, July 22nd, 2009 at 14:00
CPSC 2: Models of Computation ssignment #4, due Wednesday, July 22nd, 29 at 4: Submission Instructions Type or write your assignment on clean sheets of paper with question numbers prominently labeled.
Graph Security Testing
JOURNAL OF APPLIED COMPUTER SCIENCE Vol. 23 No. 1 (2015), pp. 29-45 Graph Security Testing Tomasz Gieniusz 1, Robert Lewoń 1, Michał Małafiejski 1 1 Gdańsk University of Technology, Poland Department of
School Timetabling in Theory and Practice
School Timetabling in Theory and Practice Irving van Heuven van Staereling VU University, Amsterdam Faculty of Sciences December 24, 2012 Preface At almost every secondary school and university, some
Offline 1-Minesweeper is NP-complete
Offline 1-Minesweeper is NP-complete James D. Fix Brandon McPhail May 24 Abstract We use Minesweeper to illustrate NP-completeness proofs, arguments that establish the hardness of solving certain problems.
Degree Hypergroupoids Associated with Hypergraphs
Filomat 8:1 (014), 119 19 DOI 10.98/FIL1401119F Published by Faculty of Sciences and Mathematics, University of Niš, Serbia Available at: http://www.pmf.ni.ac.rs/filomat Degree Hypergroupoids Associated
V. Adamchik 1. Graph Theory. Victor Adamchik. Fall of 2005
V. Adamchik 1 Graph Theory Victor Adamchik Fall of 2005 Plan 1. Basic Vocabulary 2. Regular graph 3. Connectivity 4. Representing Graphs Introduction A.Aho and J.Ulman acknowledge that Fundamentally, computer
