Long Ouyang Computer systems

Slides:



Advertisements
Similar presentations
Reducibility Class of problems A can be reduced to the class of problems B Take any instance of problem A Show how you can construct an instance of problem.
Advertisements

What is Intractable? Some problems seem too hard to solve efficiently. Question 1: Does an efficient algorithm exist?  An O(a ) algorithm, where a > 1,
1 The TSP : Approximation and Hardness of Approximation All exact science is dominated by the idea of approximation. -- Bertrand Russell ( )
NP-complete and NP-hard problems Transitivity of polynomial-time many-one reductions Concept of Completeness and hardness for a complexity class Definition.
The Theory of NP-Completeness
Theory of Computing Lecture 16 MAS 714 Hartmut Klauck.
CSC5160 Topics in Algorithms Tutorial 2 Introduction to NP-Complete Problems Feb Jerry Le
Introduction to Approximation Algorithms Lecture 12: Mar 1.
Computational problems, algorithms, runtime, hardness
CSE332: Data Abstractions Lecture 27: A Few Words on NP Dan Grossman Spring 2010.
Complexity Theory CSE 331 Section 2 James Daly. Reminders Project 4 is out Due Friday Dynamic programming project Homework 6 is out Due next week (on.
NP-complete and NP-hard problems Transitivity of polynomial-time many-one reductions Definition of complexity class NP –Nondeterministic computation –Problems.
The Theory of NP-Completeness
NP-complete and NP-hard problems
Analysis of Algorithms CS 477/677
Computational Complexity, Physical Mapping III + Perl CIS 667 March 4, 2004.
Chapter 11: Limitations of Algorithmic Power
Chapter 11 Limitations of Algorithm Power Copyright © 2007 Pearson Addison-Wesley. All rights reserved.
Complexity Issues Mark Allen Weiss: Data Structures and Algorithm Analysis in Java Lydia Sinapova, Simpson College.
Chapter 11 Limitations of Algorithm Power Copyright © 2007 Pearson Addison-Wesley. All rights reserved.
1 The Theory of NP-Completeness 2 NP P NPC NP: Non-deterministic Polynomial P: Polynomial NPC: Non-deterministic Polynomial Complete P=NP? X = P.
Programming & Data Structures
1 Introduction to Approximation Algorithms. 2 NP-completeness Do your best then.
1 CSC 421: Algorithm Design & Analysis Spring 2013 Complexity & Computability  lower bounds on problems brute force, decision trees, adversary arguments,
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:
CSCE350 Algorithms and Data Structure
Computational Complexity Polynomial time O(n k ) input size n, k constant Tractable problems solvable in polynomial time(Opposite Intractable) Ex: sorting,
Scott Perryman Jordan Williams.  NP-completeness is a class of unsolved decision problems in Computer Science.  A decision problem is a YES or NO answer.
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.
Complexity Classes (Ch. 34) The class P: class of problems that can be solved in time that is polynomial in the size of the input, n. if input size is.
TECH Computer Science NP-Complete Problems Problems  Abstract Problems  Decision Problem, Optimal value, Optimal solution  Encodings  //Data Structure.
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.
CSE 3813 Introduction to Formal Languages and Automata Chapter 14 An Introduction to Computational Complexity These class notes are based on material from.
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.
CSE332: Data Abstractions Lecture 24.5: Interlude on Intractability Dan Grossman Spring 2012.
CSCI 3160 Design and Analysis of Algorithms Tutorial 10 Chengyu Lin.
NP-Complete Problems. Running Time v.s. Input Size Concern with problems whose complexity may be described by exponential functions. Tractable problems.
NP-Complete problems.
Design and Analysis of Algorithms - Chapter 101 Our old list of problems b Sorting b Searching b Shortest paths in a graph b Minimum spanning tree b Primality.
NP-Complete Problems Algorithm : Design & Analysis [23]
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.
NP-Completeness (Nondeterministic Polynomial Completeness) Sushanth Sivaram Vallath & Z. Joseph.
CSE 589 Part V One of the symptoms of an approaching nervous breakdown is the belief that one’s work is terribly important. Bertrand Russell.
Fundamentals of Informatics Lecture 14 Intractability and NP-completeness Bas Luttik.
“One ring to rule them all” Analogy (sort of) Lord of The Rings Computational Complexity “One problem to solve them all” “my preciousss…”
LIMITATIONS OF ALGORITHM POWER
CPS Computational problems, algorithms, runtime, hardness (a ridiculously brief introduction to theoretical computer science) Vincent Conitzer.
CS6045: Advanced Algorithms NP Completeness. NP-Completeness Some problems are intractable: as they grow large, we are unable to solve them in reasonable.
Chapter 11 Introduction to Computational Complexity Copyright © 2011 The McGraw-Hill Companies, Inc. Permission required for reproduction or display. 1.
CSC 413/513: Intro to Algorithms
Optimization/Decision Problems Optimization Problems – An optimization problem is one which asks, “What is the optimal solution to problem X?” – Examples:
CSCI 2670 Introduction to Theory of Computing December 2, 2004.
1 CPSC 320: Intermediate Algorithm Design and Analysis July 30, 2014.
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.
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.
Great Theoretical Ideas in Computer Science.
Conceptual Foundations © 2008 Pearson Education Australia Lecture slides for this course are based on teaching materials provided/referred by: (1) Statistics.
ICS 353: Design and Analysis of Algorithms NP-Complete Problems King Fahd University of Petroleum & Minerals Information & Computer Science Department.
NP-Complete Problems.
NP-completeness Ch.34.
EMIS 8373: Integer Programming
Analysis and design of algorithm
ICS 353: Design and Analysis of Algorithms
Intro to NP Completeness
Chapter 11 Limitations of Algorithm Power
Approximation Algorithms
Our old list of problems
RAIK 283 Data Structures & Algorithms
Presentation transcript:

Long Ouyang Computer systems Approaching P=NP: Can Soap Bubbles Solve The Steiner Tree Problem In Polynomial Time? Long Ouyang Computer systems

Introduction Decision problems – Ask yes/no questions. Two classes of problems, P and NP P: Problems that can be solved in time polynomial to the size of the input by a deterministic Turing machine. NP: Problems that can be solved in time polynomial to the size of the input by a nondeterministic Turing machine.

Turing machines (not important) Deterministic: -At most one entry for each combination of symbol and state. Non-deterministic: -More than one entry for each combination of symbol and state.

What does this mean? With regards to modern computers: Problems in P can be solved in polynomial time. Solutions to problems in NP can be verified in polynomial time. Problems in P take relatively less time to solve, problems in NP take relatively more.

NP Problems in NP: Traveling salesman problem Hamiltonian path problem Partition problem Multiprocessor scheduling Bin packing Sudoku Tetris

Who cares? If P=NP, hard problems are actually relatively easy. Implications: Cryptography, Mapquest, compression, scheduling, computation

How? Try to devise P algorithms to NP-Complete problems. Problem: Turing arguments, Razborov-Rudich barrier

So what do we do? Physical systems – often in nature, physical systems reduce a situation to its lowest energy state (optimizing energy). Soap films Spin glasses Folding proteins Bubbles

Additional methods Quantum computing Using DNA as non-deterministic Turing machines. Time travel Anthropic principles

We’ll take the soap, please Pros: It’s inexpensive, compared to time travel. Reduces P=NP to a problem in digital physics. Cons: Makes formal proof at the least, very difficult Optimistically, at best, provides experimental run-time data

The Steiner Problem Soap is rumored to solve the Steiner Tree Problem (STP). Steiner Tree Problem: Description: Given a weighted graph G, G(V,E,w), where V is the set of vertices, E is the set of edges, and w is the set of weights, and S, a subset of V, find the subset of G that contains S and has the minimum weight. Simply put: Find the minimum spanning tree for a bunch of vertices, given that you can add additional points.

How does soap do this? Soap, in water, acts as a surfactant, which decreases the surface tension of the water. This acts to minimize the surface energy of the liquid. This should minimize surface area (graph weight), and solve the problem.

Tools used OpenFOAM (computational fluid physics engine) Paraview (visualization engine) GeoSteiner '96 (exact STP solver)

Design Generation of random vertices, appropriate mesh for OpenFOAM Solution of STP (where nodes are the random vertices) by GeoSteiner '96 OpenFOAM computation of soap action on vertices Comparison of exact solution with soap solution

Soap model Thin box filled with soap water. Pegs connect the same parallel faces of the box (nodes) There's a small drain at the bottom of the box.

Ideal soap solution

Conclusions Agent-based modeling sucks for modeling fluids. Rigid-body physics sucks for modeling fluids.