RESOURCES, TRADE-OFFS, AND LIMITATIONS Group 5 8/27/2014.

Slides:



Advertisements
Similar presentations
Analysis of Algorithms
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,
The Theory of NP-Completeness
CPE702 Complexity Classes Pruet Boonma Department of Computer Engineering Chiang Mai University Based on Material by Jenny Walter.
© The McGraw-Hill Companies, Inc., Chapter 8 The Theory of NP-Completeness.
Computational problems, algorithms, runtime, hardness
CSE332: Data Abstractions Lecture 27: A Few Words on NP Dan Grossman Spring 2010.
Tractable and intractable problems for parallel computers
1 NP-Completeness Objectives: At the end of the lesson, students should be able to: 1. Differentiate between class P, NP, and NPC 2. Reduce a known NPC.
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
Analysis of Algorithms CS 477/677
Chapter 11: Limitations of Algorithmic Power
Complexity 19-1 Parallel Computation Complexity Andrei Bulatov.
CS10 The Beauty and Joy of Computing Lecture #23 : Limits of Computing Thanks to the success of the Kinect, researchers all over the world believe.
Chapter 11 Limitations of Algorithm Power Copyright © 2007 Pearson Addison-Wesley. All rights reserved.
1.1 Chapter 1: Introduction What is the course all about? Problems, instances and algorithms Running time v.s. computational complexity General description.
Complexity Classes Kang Yu 1. NP NP : nondeterministic polynomial time NP-complete : 1.In NP (can be verified in polynomial time) 2.Every problem in NP.
Programming & Data Structures
1 Introduction to Approximation Algorithms. 2 NP-completeness Do your best then.
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.
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.
1 Introduction to Approximation Algorithms. 2 NP-completeness Do your best then.
Lecture 30. P, NP and NP Complete Problems 1. Recap Data compression is a technique to compress the data represented either in text, audio or image form.
Tonga Institute of Higher Education Design and Analysis of Algorithms IT 254 Lecture 8: Complexity Theory.
CS 345: Chapter 10 Parallelism, Concurrency, and Alternative Models Or, Getting Lots of Stuff Done at Once.
Approximation Algorithms
Major objective of this course is: Design and analysis of modern algorithms Different variants Accuracy Efficiency Comparing efficiencies Motivation thinking.
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.
More Computational Complexity Shirley Moore CS4390/5390 Fall August 29,
Cliff Shaffer Computer Science Computational Complexity.
1 The Theory of NP-Completeness 2 Cook ’ s Theorem (1971) Prof. Cook Toronto U. Receiving Turing Award (1982) Discussing difficult problems: worst case.
Beauty and Joy of Computing Limits of Computing Ivona Bezáková CS10: UC Berkeley, April 14, 2014 (Slides inspired by Dan Garcia’s slides.)
SNU OOPSLA Lab. 1 Great Ideas of CS with Java Part 1 WWW & Computer programming in the language Java Ch 1: The World Wide Web Ch 2: Watch out: Here comes.
CS10: The Beauty and Joy of Computing Lecture #22 Limits of Computing Warning sign posted at Stern Hall. Also, Apple releases new operating.
Massive Data Sets and Information Theory Ziv Bar-Yossef Department of Electrical Engineering Technion.
Fundamentals of Informatics Lecture 14 Intractability and NP-completeness Bas Luttik.
CSCI 2670 Introduction to Theory of Computing November 17, 2005.
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.
The Beauty and Joy of Computing Lecture #23 Limits of Computing Researchers at Facebook and the University of Milan found that the avg # of “friends” separating.
CS 461 – Nov. 18 Section 7.1 Overview of complexity issues –“Can quickly decide” vs. “Can quickly verify” Measuring complexity Dividing decidable languages.
Lecture 7 Jianjun Hu Department of Computer Science and Engineering University of South Carolina CSCE350 Algorithms and Data Structure.
Copyright © 2012 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Computer Science: An Overview Eleventh Edition by J. Glenn Brookshear Chapter.
NPC.
Optimization/Decision Problems Optimization Problems – An optimization problem is one which asks, “What is the optimal solution to problem X?” – Examples:
Onlinedeeneislam.blogspot.com1 Design and Analysis of Algorithms Slide # 1 Download From
Lecture. Today Problem set 9 out (due next Thursday) Topics: –Complexity Theory –Optimization versus Decision Problems –P and NP –Efficient Verification.
Graph Indexing From managing and mining graph data.
1 P and NP. 2 Introduction The Traveling Salesperson problem and thousands of other problems are equally hard in the sense that if we had an efficient.
CS 154 Formal Languages and Computability May 10 Class Meeting Department of Computer Science San Jose State University Spring 2016 Instructor: Ron Mak.
ICS 353: Design and Analysis of Algorithms NP-Complete Problems King Fahd University of Petroleum & Minerals Information & Computer Science Department.
Advanced Algorithms Analysis and Design
NP-completeness Ch.34.
Chapter 10 NP-Complete Problems.
Chapter 12: Theory of Computation
WABI: Workshop on Algorithms in Bioinformatics
Analysis and design of algorithm
ICS 353: Design and Analysis of Algorithms
Objective of This Course
Chapter 11 Limitations of Algorithm Power
Algorithms CSCI 235, Spring 2019 Lecture 36 P vs
Invitation to Computer Science 5th Edition
Complexity Theory: Foundations
Presentation transcript:

RESOURCES, TRADE-OFFS, AND LIMITATIONS Group 5 8/27/2014

INTRODUCTION This chapter discusses the current state of the art and gaps in fundamental understanding of computations over massive data sets. Massive data computation uses three types of resources Computational resources Statistical/information-theoretic resources Physical resources 2Resources, Trade-offs, and Limitations

RELEVANT ASPECTS OF THEORETICAL CS Theoretical Computer Science Discover and analyze algorithms for key computational problems that are efficient in terms of resources used Understand the inherent limitations of computation with bounded resources. Relevant aspects: Tractability and Intractability Sublinear, Sketching, and Streaming Algorithms Communication Complexity External Memory Parallel Algorithms Computational Learning Theory 3Resources, Trade-offs, and Limitations

TRACTABILITY AND INTRACTABILITY Tractable: problems that have polynomial-time algorithms Intractable: problems for which such algorithms are conjectured to not exist NP: problems for which it takes polynomial time to verify the solution NP-complete problems: if any of them can be solved in polynomial time, then all of them can. E.g., Traveling Salesman Problem: given a set of cities and distances between them, is there a tour of a given length that visits all cities? P v.s. NP: whether an NP-complete problem can be solved in polynomial time 4Resources, Trade-offs, and Limitations

SUBLINEAR, SKETCHING, AND STREAMING ALGORITHMS Sublinear algorithms: using an amount of resources that is much smaller than the input size, often exponentially smaller. Stream model: the algorithm can make only a single pass over the data, and the storage used by the algorithm can be much smaller than the input size. Sketch: a summary of the input, which is much shorter but nevertheless sufficient to approximate the desired quantity. E.g., counting the number of distinct elements in a stream Sublinear time computation: the algorithm is restricted to using an amount of time that scales sublinearly with the input size. Approximate property testing: one tests whether the input satisfies a certain property using few data samples. Resources, Trade-offs, and Limitations5

COMMUNICATION COMPLEXITY Definition The amount of information that needs to be extracted from the input, or communicated between two or more parties sharing parts of the input, to accomplish a given task. E.g., “sketching” to sublinear computation Some tasks cannot be accomplished using limited communication. E.g., set disjointness problem: two parties want to determine whether two data sets of equal size, each held locally by one of the parties, contain any common items. Resources, Trade-offs, and Limitations6

EXTERNAL MEMORY The cost of transferring data between the fast local memory and slow external memory The External Memory Model: The data are exchanged between the main and external memories via a sequence of input/output (I/O) operations. The complexity of an algorithm is then measured by the total number of I/O operations that the algorithm performs. “cache-aware” Algorithms must be supplied with the amount of available main memory before they can proceed. Resources, Trade-offs, and Limitations7

PARALLEL ALGORITHMS “For which problems one can obtain a speedup using parallelism?” Problems having polynomial-time sequential algorithms One can obtain exponential speedups by using parallelism. E.g., finding a perfect matching in a graph: finding a subset of edges that contains exactly one edge incident to any vertex, given a set of nodes and edges between them. Resources, Trade-offs, and Limitations8

COMPUTATIONAL LEARNING THEORY “How much data and computational resources are needed in order to ‘learn’ a concept of interest with a given accuracy and confidence? “ For example, to infer a linear classifier that can separate data into positive and negative classes, given a sequence of labeled examples and using a bounded amount of computational resources. Resources, Trade-offs, and Limitations9

CHALLENGES FOR COMPUTER SCIENCE Computational Hardness of Massive Data Set Problems Polynomial-time is typically not a sufficient condition for tractability when the input to a problem is very large. Quadratic time is a natural boundary of intractability for problems over massive data. Versatile tools are lacking that would help determine whether a given problem has a sub-quadratic-time algorithm or not Linear running time is a gold standard of algorithmic efficiency. The Role of Constants Algorithm engineering rather than algorithm design Time-dependent v.s. platform-dependent New Models for Massive Data Computation MapReduce, Hadoop and variations, multicores, graphic processing units (GPUs), and parallel databases. 10Resources, Trade-offs, and Limitations

NEW MODEL: MAPREDUCE Resources, Trade-offs, and Limitations 11

CHALLENGES FOR OTHER DISCIPLINES Statistics The more data is available, the easier it becomes to solve them. Data – a sequence of samples from some distribution or that the data have sparsity or other structural properties Quantitative trade-offs: the computational limitations are typically specified in terms of polynomial-time computability, and thus the limitations of that topic apply. Privacy: “how much information about the data must be revealed in order to perform some computation or answer some queries about the data?” Physical Resources Optimizing energy use; Green computing Reversible computing aims to understand the necessary condition for computation to be energy efficient. Resources, Trade-offs, and Limitations12

QUESTIONS? Resources, Trade-offs, and Limitations13