Maximum clique. 1Introduction 2Theoretical background Biochemistry/molecular biology 3Theoretical background computer science 4History of the field 5Splicing.

Slides:



Advertisements
Similar presentations
NP-Hard Nattee Niparnan.
Advertisements

FORMAL LANGUAGES, AUTOMATA AND COMPUTABILITY
The Theory of NP-Completeness
1 NP-Complete Problems. 2 We discuss some hard problems:  how hard? (computational complexity)  what makes them hard?  any solutions? Definitions 
CSC5160 Topics in Algorithms Tutorial 2 Introduction to NP-Complete Problems Feb Jerry Le
CSE332: Data Abstractions Lecture 27: A Few Words on NP Dan Grossman Spring 2010.
1 CSE 417: Algorithms and Computational Complexity Winter 2001 Lecture 21 Instructor: Paul Beame.
NP-Complete Problems Reading Material: Chapter 10 Sections 1, 2, 3, and 4 only.
The Theory of NP-Completeness
NP-Complete Problems Problems in Computer Science are classified into
1 CSE 417: Algorithms and Computational Complexity Winter 2001 Lecture 23 Instructor: Paul Beame.
Analysis of Algorithms CS 477/677
Chapter 11: Limitations of Algorithmic Power
1 CSE 417: Algorithms and Computational Complexity Winter 2001 Lecture 22 Instructor: Paul Beame.
Chapter 11 Limitations of Algorithm Power Copyright © 2007 Pearson Addison-Wesley. All rights reserved.
Clique Cover Cook’s Theorem 3SAT and Independent Set
P, NP, and NP-Complete Suzan Köknar-Tezel.
The Theory of NP-Completeness 1. Nondeterministic algorithms A nondeterminstic algorithm consists of phase 1: guessing phase 2: checking If the checking.
The Theory of NP-Completeness 1. What is NP-completeness? Consider the circuit satisfiability problem Difficult to answer the decision problem in polynomial.
MCS312: NP-completeness and Approximation Algorithms
Chapter 11 Limitations of Algorithm Power. Lower Bounds Lower bound: an estimate on a minimum amount of work needed to solve a given problem Examples:
1 The Theory of NP-Completeness 2012/11/6 P: the class of problems which can be solved by a deterministic polynomial algorithm. NP : the class of decision.
Nattee Niparnan. Easy & Hard Problem What is “difficulty” of problem? Difficult for computer scientist to derive algorithm for the problem? Difficult.
Tonga Institute of Higher Education Design and Analysis of Algorithms IT 254 Lecture 8: Complexity Theory.
Lecture 22 More NPC problems
The Complexity of Optimization Problems. Summary -Complexity of algorithms and problems -Complexity classes: P and NP -Reducibility -Karp reducibility.
CSC 413/513: Intro to Algorithms NP Completeness.
Week 10Complexity of Algorithms1 Hard Computational Problems Some computational problems are hard Despite a numerous attempts we do not know any efficient.
CSE 024: Design & Analysis of Algorithms Chapter 9: NP Completeness Sedgewick Chp:40 David Luebke’s Course Notes / University of Virginia, Computer Science.
1 Lower Bounds Lower bound: an estimate on a minimum amount of work needed to solve a given problem Examples: b number of comparisons needed to find the.
EMIS 8373: Integer Programming NP-Complete Problems updated 21 April 2009.
CSCI 3160 Design and Analysis of Algorithms Tutorial 10 Chengyu Lin.
1 The Theory of NP-Completeness 2 Cook ’ s Theorem (1971) Prof. Cook Toronto U. Receiving Turing Award (1982) Discussing difficult problems: worst case.
NP-Complete Problems. Running Time v.s. Input Size Concern with problems whose complexity may be described by exponential functions. Tractable problems.
1 Chapter 34: NP-Completeness. 2 About this Tutorial What is NP ? How to check if a problem is in NP ? Cook-Levin Theorem Showing one of the most difficult.
NP-COMPLETE PROBLEMS. Admin  Two more assignments…  No office hours on tomorrow.
NP-Complete problems.
Limits to Computation How do you analyze a new algorithm? –Put it in the form of existing algorithms that you know the analysis. –For example, given 2.
CS 3343: Analysis of Algorithms Lecture 25: P and NP Some slides courtesy of Carola Wenk.
NP-Algorithms Tractable vs Intractable Some problems are intractable: as they grow large, we are unable to solve them in reasonable time.
DNA computing on a chip Mitsunori Ogihara and Animesh Ray Nature, 2000 발표자 : 임예니.
1 Biological Computing – DNA solution Presented by Wooyoung Kim 4/8/09 CSc 8530 Parallel Algorithms, Spring 2009 Dr. Sushil K. Prasad.
CS6045: Advanced Algorithms NP Completeness. NP-Completeness Some problems are intractable: as they grow large, we are unable to solve them in reasonable.
Theory of computing, part 4. 1Introduction 2Theoretical background Biochemistry/molecular biology 3Theoretical background computer science 4History of.
Chapter 11 Introduction to Computational Complexity Copyright © 2011 The McGraw-Hill Companies, Inc. Permission required for reproduction or display. 1.
NP Completeness Piyush Kumar. Today Reductions Proving Lower Bounds revisited Decision and Optimization Problems SAT and 3-SAT P Vs NP Dealing with NP-Complete.
CSC 413/513: Intro to Algorithms
1 Ch 10 - NP-completeness Tractable and intractable problems Decision/Optimization problems Deterministic/NonDeterministic algorithms Classes P and NP.
Lecture. Today Problem set 9 out (due next Thursday) Topics: –Complexity Theory –Optimization versus Decision Problems –P and NP –Efficient Verification.
CSCI 2670 Introduction to Theory of Computing December 2, 2004.
CSCI 2670 Introduction to Theory of Computing December 7, 2005.
COSC 3101A - Design and Analysis of Algorithms 14 NP-Completeness.
1 The Theory of NP-Completeness 2 Review: Finding lower bound by problem transformation Problem X reduces to problem Y (X  Y ) iff X can be solved by.
Computability Examples. Reducibility. NP completeness. Homework: Find other examples of NP complete problems.
The NP class. NP-completeness Lecture2. The NP-class The NP class is a class that contains all the problems that can be decided by a Non-Deterministic.
34.NP Completeness. Computer Theory Lab. Chapter 34P.2.
Molecular Evolutionary Computing (MEC) for Maximum Clique Problems March 9, 2004 Biointelligence Laboratory School of Computer Science and Engineering.
ICS 353: Design and Analysis of Algorithms NP-Complete Problems King Fahd University of Petroleum & Minerals Information & Computer Science Department.
The NP class. NP-completeness
P & NP.
Chapter 10 NP-Complete Problems.
Advanced Algorithms Analysis and Design
NP-Completeness (2) NP-Completeness Graphs 7/23/ :02 PM x x x x
DNA Solution of the Maximal Clique Problem
NP-Completeness Yin Tat Lee
ICS 353: Design and Analysis of Algorithms
NP-Complete Problems.
NP-Completeness Yin Tat Lee
DNA Solution of the Maximal Clique Problem
Lecture 23 NP-Hard Problems
Presentation transcript:

Maximum clique

1Introduction 2Theoretical background Biochemistry/molecular biology 3Theoretical background computer science 4History of the field 5Splicing systems 6P systems 7Hairpins 8Detection techniques 9Micro technology introduction 10Microchips and fluidics 11Self assembly 12Regulatory networks 13Molecular motors 14DNA nanowires 15Protein computers 16DNA computing - summery 17Presentation of essay and discussion Course outline

NP complete continued

 Some problems are undecidable: no computer can solve them.  e.g. Turing’s “Halting Problem”  Other problems are decidable, but intractable: as they grow large, we are unable to solve them in reasonable time  What constitutes “reasonable time”? tractibility

 P =set of problems that can be solved in polynomial time  NP =set of problems for which a solution can be verified in polynomial time  P  NP  The big question: Does P = NP? P and NP summary

 The NP-Complete problems are an interesting class of problems whose status is unknown  No polynomial-time algorithm has been discovered for an NP-Complete problem  No suprapolynomial lower bound has been proved for any NP-Complete problem, either  Intuitively and informally, what does it mean for a problem to be NP-Complete? NP-complete problems

 A problem P can be reduced to another problem Q if any instance of P can be rephrased to an instance of Q, the solution to which provides a solution to the instance of P. This rephrasing is called a transformation  Intuitively: If P reduces in polynomial time to Q, P is “no harder to solve” than Q reduction

 Though nobody has proven that P != NP, if you prove a problem NP-Complete, most people accept that it is probably intractable  Therefore it can be important to prove that a problem is NP-Complete  Don’t need to come up with an efficient algorithm  Can instead work on approximation algorithms Why prove NP-completenss

 What is a clique of a graph G?  Answer: a subset of vertices fully connected to each other, i.e. a complete subgraph of G  The clique problem: how large is the maximum- size clique in a graph?  Can we turn this into a decision problem?  Answer: Yes, we call this the k-clique problem  Is the k-clique problem within NP? clique

 What should the reduction do?  Answer: Transform a 3-CNF formula to a graph, for which a k-clique will exist (for some k) iff the 3-CNF formula is satisfiable clique

The reduction:  Let B = C 1  C 2  …  C k be a 3-CNF formula with k clauses, each of which has 3 distinct literals  For each clause put a triple of vertices in the graph, one for each literal  Put an edge between two vertices if they are in different triples and their literals are consistent, meaning not each other’s negation  Run an example: B = (x   y   z)  (  x  y  z )  (x  y  z ) clique

Prove the reduction works:  If B has a satisfying assignment, then each clause has at least one literal (vertex) that evaluates to 1  Picking one such “true” literal from each clause gives a set V’ of k vertices. V’ is a clique (Why?)  If G has a clique V’ of size k, it must contain one vertex in each clique (Why?)  We can assign 1 to each literal corresponding with a vertex in V’, without fear of contradiction clique

 A clique of a graph G=(V,E) is a subgraph C that is fully-connected (every pair in C has an edge).  CLIQUE: Given a graph G and an integer K, is there a clique in G of size at least K?  CLIQUE is in NP: non-deterministically choose a subset C of size K and check that every pair in C has an edge in G. This graph has a clique of size 5 Clique problem, summary

Maximum clique with DNA

 Clique a set of vertices defined as a set of vertices in which every vertex is connected to every other vertex by an edge  Maximal clique problem Given a network containing N vertices and M edges, how many vertices are in the largest clique? Finding the size of the largest clique has been proven to be an NP- complete problem Introdcution

complete data pool Step 1 Make the complete data pool For a graph with N vertices, each possible clique is represented by an N-digit binary number 1: a vertex in the clique 0: a vertex out of the clique i.e. i.e. clique (4,1,0)  binary number Step 2 Find pairs of vertices in the graph that are not connected by an edge (0,2) (0,5) (1,5) (1,3) The complementary graph Algorithm

Step 3 Eliminate from the complete data pool all numbers containing connections in the complementary graph  xxx1x1 or 1xxxx1 or 1xxx1x or xx1x1x Step 4 Sort the remaining data pool to find the data containing the largest number of 1’s the largest number of 1’s size  the clique with the largest number of 1’s tells us the size of the maximal clique Algorithm

two DNA sections bit’s value bit’s value (Vi) V 0 ~V 5 0 bp when V i =1 10 bp when V i =0 position value position value (Pi) P 0 ~P 6 20 bp Longest = 6   20 = 200bp (000000) Shortest = 6   20 = 140bp(111111) dsDNA Construction of DNA molecules

sequence construction - randomly generated  to avoid mispairing, avoid accidental homologies longer than 4bp restriction sequences  embedded restriction sequences within each V i =1  POA (parallel overlap assembly) Construction of DNA molecules

POA (parallel overlap assembly) with 12 oligonucleotides P i V i P i+1 for even i for odd i P 0 V 0 P 1 P 2 V 2 P 3 P 4 V 4 P 5 PCR with P 0 and as primers (lane2 in fig3) POA

Construction of DNA molecules

 Break DNA : internal sequence V i =1  PCR with P 0 and as primers  broken sting were not amplified  Division of the data pool into two test tube  t 0 : Alf IIcut V o =1  t 1 : Spe Icut V 2 =1  combine t 0 and t 1 into test tube t, which did not contain xxx1x1 Digestion of restriction enzymes

 Elimination all strings connected by edges xxx1x1, 1xxxx1, 1xxx1x, xx1x1x  PCR amplification of remaining data DNA ( Fig 3),  Lane 5: digestion result  Lane 6: PCR result Digestion and PCR amplification

 Reading the size of the largest clique(s) shortest length : 160bp  four vertices  What is the maximal clique?  6 C 4 = 15, 15 different strings  read the answer by molecular cloning 1 insertion the DNA into M13 bacteriophage through site-directed mutagenesis 2 transfection of the mutagenized M13 phase DNA into E.coli 3 cloning 4 DNA extraction and sequencing Readout

correct answer Readout

 Production of ssDNA during PCR  cannot be cut by restriction enzymes  solution : digestion of the ssDNA with S1 nuclease before restriction digestion  Incomplete cutting by restriction enzymes  repetition of digestion-PCR process  increase the signal-to-noise discussion - major error

Strengths  high parallelism Weaknesses  limitation on the number of vertices that this algorithm can handle  maximum number of vertices with picomole operations = 27 (36 vertices with nanomole)  exponential increase in the size of the pool with the size of the problem  Further scale-up becomes impractical  New algorithms are needed Discussion - strengths and weaknesses

Rapid and accurate data access is needed  biotin-avidin purification  electrophoresis  DNA cloning  too slow/ too noising  biochip is needed to accelerate readout Discussion – future direction

Clique in microreactors

all possible solutions {000} {001} {010} {011} {100} {101} {110} {111} clauses (x=1)^(y=0)^(z=1) Selection principle

Positive selection

Negative selection

Logical operations

logical NOT operations Logical operations

a  ba  b logical AND operations Logical operations

a  ba  b logical OR operations Logical operations

magnet Microreactor structure

magnet Microreactor structure

Selection principle

DNA input and transport principle

6 nodes, 2 initial answers 6 Max: S ABCDE = Maximal cliques

ABCDEF A B C D E F Maximal cliques – connectivity matrix

SA=0SA=0 SE=0SE=0 SD=0SD=0 SC=1SC=1SC=0SC=0 SB=0SB=0 SA=0SA=0SA=1SA=1 SF=0SF=0 SF=1SF=1 Maximal cliques – flow diagram

0xxxxx 00xxxx 0xx0xx 00x0xx 0xxx0x 00xx0x 0xx00x x0x00x 00x00x 0xxxxx 00xxxx 0xx0xx x0x0xx 00x0xx 0xxxxx x0xxxx 00xxxx 0xxxxx xxxxxx XXXXXX with x={0,1} SA=0SA=0 SA=0SA=0 SA=0SA=0 SA=0SA=0SE=0SE=0 SD=0SD=0 SC=1SC=1SC=0SC=0 SB=0SB=0 SA=0SA=0SA=0SA=0SA=1SA=1 SA=0SA=0SF=0SF=0SF=1SF=1 Maximal cliques – flow diagram

DNA in DNA out Optical control DNA computer design

DNA computer design – selection modules

DNA information flow

100  m Flow separation – laminar flow

100  m Flow separation – laminar flow

Micro fabrication

DNA computer design – 20 nodes

 word codes  optical programmability  usage of masks to programme  immobilisation of DNA to paramagnetic beads  hybridisation of DNA-strands DNA sequence handling

The DNA library

PBS1: 5'-GCCCTAAAGGATCCACGTAAGGTCCTATGC V0-1: 5'-AACCACCAACCAAACC V0-0: 5'-AAAACGCGGCAACAAG V1-1: 5'-TCAGTCAGGAGAAGTC V1-0: 5'-TCTTGGGTTTCCTGCA V2-1: 5'-TTTTCCCCCACACACA V2-0: 5'-TTGGACCATACGAGGA V3-1: 5'-CGTTCATCTCGATAGC V3-0: 5'-AGAGTCTCACACGACA V4-1: 5'-AAGGACGTACCATTGG V4-0: 5'-CTCTAGTCCCATCTAC V5-1: 5'-CAACGGTTTTATGGCG V5-0: 5'-GCGCAATTTGGTAACC V6-1: 5'-TAGCAGCTTCCTTACG V6-0: 5'-ACACTGTGCTGATCTC V7-1: 5'-CACATGTGTCAGCACT V7-0: 5'-TGTGTGTGCCTACTTG V8-1: 5'-GATGGGATAGAGAGAG V8-0: 5'-AATCCCACCAGTTGAC V9-1: 5'-ATGCAGGAGCGAATCA V9-0: 5'-GCTTGTTCAACCTGGT V10-1: 5'-CCCAGTATGAGATCAGV10-0: 5'-CTGTCCAAGTACGCTA V11-1: 5'-ATCGAGCTTCTCAGAGV11-0: 5'-TGTAGAGGCTAGCGAT PBS2: 5'-TGGTTTGGCGGCTTTAGAATTCTGTGACAC The DNA library

DNA hybridisation

100  m DNA hybridisation

liquid handling DNA computer robotics detection system sorting module computer control DNA computer control

3.5mm