Size of a problem instance: Bigger instances take

Similar documents
Introduction to Mathematical Programming IE406. Lecture 20. Dr. Ted Ralphs

CSE 417 Branch & Bound (pt 4) Branch & Bound

Notes for Lecture 24

CS 473: Algorithms. Ruta Mehta. Spring University of Illinois, Urbana-Champaign. Ruta (UIUC) CS473 1 Spring / 36

Computational problems. Lecture 2: Combinatorial search and optimisation problems. Computational problems. Examples. Example

Algorithms for Integer Programming

Combinatorial Optimization

Mathematical Tools for Engineering and Management

Approximation Algorithms

Chapter 9 Graph Algorithms

Chapter 9 Graph Algorithms

P and NP (Millenium problem)

Lecture 21: Other Reductions Steven Skiena

1. Lecture notes on bipartite matching February 4th,

On Covering a Graph Optimally with Induced Subgraphs

Partha Sarathi Mandal

Reductions. Linear Time Reductions. Desiderata. Reduction. Desiderata. Classify problems according to their computational requirements.

COT 6936: Topics in Algorithms! Giri Narasimhan. ECS 254A / EC 2443; Phone: x3748

Decision Problems. Observation: Many polynomial algorithms. Questions: Can we solve all problems in polynomial time? Answer: No, absolutely not.

Time Complexity of an Algorithm

Theorem 2.9: nearest addition algorithm

Notes for Lecture 20

1 The Traveling Salesperson Problem (TSP)

Lecture 21: Other Reductions Steven Skiena. Department of Computer Science State University of New York Stony Brook, NY

MVE165/MMG631 Linear and integer optimization with applications Lecture 9 Discrete optimization: theory and algorithms

Graphs and Network Flows IE411. Lecture 21. Dr. Ted Ralphs

Mathematical and Algorithmic Foundations Linear Programming and Matchings

12 Introduction to LP-Duality

NP-complete Reductions

15-854: Approximations Algorithms Lecturer: Anupam Gupta Topic: Direct Rounding of LP Relaxations Date: 10/31/2005 Scribe: Varun Gupta

APPROXIMATION ALGORITHMS FOR GEOMETRIC PROBLEMS

MA4254: Discrete Optimization. Defeng Sun. Department of Mathematics National University of Singapore Office: S Telephone:

Copyright 2007 Pearson Addison-Wesley. All rights reserved. A. Levitin Introduction to the Design & Analysis of Algorithms, 2 nd ed., Ch.

All lecture slides will be available at CSC2515_Winter15.html

Primal-Dual Methods for Approximation Algorithms

Greedy Algorithms 1 {K(S) K(S) C} For large values of d, brute force search is not feasible because there are 2 d {1,..., d}.

Approximation Algorithms

Best known solution time is Ω(V!) Check every permutation of vertices to see if there is a graph edge between adjacent vertices

Module 6 NP-Complete Problems and Heuristics

Copyright 2000, Kevin Wayne 1

1. Lecture notes on bipartite matching

V1.0: Seth Gilbert, V1.1: Steven Halim August 30, Abstract. d(e), and we assume that the distance function is non-negative (i.e., d(x, y) 0).

Advanced Operations Research Techniques IE316. Quiz 1 Review. Dr. Ted Ralphs

15-451/651: Design & Analysis of Algorithms November 4, 2015 Lecture #18 last changed: November 22, 2015

Introduction to Algorithms

Error correction guarantees

Algorithm Design and Analysis

MVE165/MMG630, Applied Optimization Lecture 8 Integer linear programming algorithms. Ann-Brith Strömberg

Unit 8: Coping with NP-Completeness. Complexity classes Reducibility and NP-completeness proofs Coping with NP-complete problems. Y.-W.

3 INTEGER LINEAR PROGRAMMING

DM545 Linear and Integer Programming. Lecture 2. The Simplex Method. Marco Chiarandini

Integer Programming ISE 418. Lecture 1. Dr. Ted Ralphs

! Greed. O(n log n) interval scheduling. ! Divide-and-conquer. O(n log n) FFT. ! Dynamic programming. O(n 2 ) edit distance.

Treewidth and graph minors

Marginal and Sensitivity Analyses

Introduction to Approximation Algorithms

Introduction to Mathematical Programming IE496. Final Review. Dr. Ted Ralphs

The complement of PATH is in NL

Lecture 7. s.t. e = (u,v) E x u + x v 1 (2) v V x v 0 (3)

8 Matroid Intersection

Polynomial time approximation algorithms

Approximation Algorithms: The Primal-Dual Method. My T. Thai

1 The Traveling Salesman Problem

Chapter 9 Graph Algorithms

Machine Learning for Software Engineering

COMP260 Spring 2014 Notes: February 4th

11/22/2016. Chapter 9 Graph Algorithms. Introduction. Definitions. Definitions. Definitions. Definitions

Lecture 14: Linear Programming II

Integer Programming Theory

Approximation Basics

Approximation Algorithms

CS261: A Second Course in Algorithms Lecture #16: The Traveling Salesman Problem

1 The Traveling Salesman Problem

Approximation slides 1. An optimal polynomial algorithm for the Vertex Cover and matching in Bipartite graphs

and 6.855J Lagrangian Relaxation I never missed the opportunity to remove obstacles in the way of unity. Mohandas Gandhi

Assignment No 2 (Group B)

February 19, Integer programming. Outline. Problem formulation. Branch-andbound

Outline. Column Generation: Cutting Stock A very applied method. Introduction to Column Generation. Given an LP problem

Column Generation: Cutting Stock

EARLY INTERIOR-POINT METHODS

3 No-Wait Job Shops with Variable Processing Times

Practice Final Exam 1

Foundations of Computing

(b) Linking and dynamic graph t=

Discrete Optimization. Lecture Notes 2

11.1 Facility Location

5.3 Cutting plane methods and Gomory fractional cuts

Algorithms for Euclidean TSP

NP Completeness. Andreas Klappenecker [partially based on slides by Jennifer Welch]

Homework 2: Multi-unit combinatorial auctions (due Nov. 7 before class)

Lecture 7: Counting classes

CS 580: Algorithm Design and Analysis. Jeremiah Blocki Purdue University Spring 2018

Reductions and Satisfiability

CSE101: Design and Analysis of Algorithms. Ragesh Jaiswal, CSE, UCSD

31.6 Powers of an element

Integer Programming ISE 418. Lecture 7. Dr. Ted Ralphs

CMPSCI611: Approximating SET-COVER Lecture 21

CS599: Convex and Combinatorial Optimization Fall 2013 Lecture 14: Combinatorial Problems as Linear Programs I. Instructor: Shaddin Dughmi

An Introduction to Dual Ascent Heuristics

Practice Final Exam 2: Solutions

Transcription:

2.1 Integer Programming and Combinatorial Optimization Slide set 2: Computational Complexity Katta G. Murty Lecture slides Aim: To study efficiency of various algo. for solving problems, and to classify algos. as good abd bad. Also, to classify problems into easy and hard. Origin of subject: Goes back to 1960 s. Size of a problem instance: Bigger instances take more effort to solve in general. Need to develop a measure of how large an instance is. Consider 2 instances of a system of 2 eqs. in 2 unknowns. x 1 + x 2 = 2 2937560086x 1 97635004389x 2 = 1132003058 2x 1 + x 2 = 1 8790204137x 1 713255436859x 2 = 950786341 48

Right instance has lerger nos. than left, hence takes more work. So, should consider right instance to be larger than the left. All problems involve data (we assume integral), stored in binary form in computer. Commonly used measure of largeness, Size = amount of memory space to store data; i.e., total no. binary digits in data (1 + log 2 (1 + a ) : over data elements a). Running time of algo. proportional to computational effort (measured in terms of additions, multiplications, divisons & comparisons). This expected to with size, but problems with same size take different times because of differences in data. How to develop a measure of running time as a function of size? 3 approaches. Empirical analysis: Solve large no. of representative instances of various sizes, & fit a function for running time in terms of size. Used very much in practice, but measure depends on programming skill, & patterns of data in examples solved. Not suitable for developing a mathematical theory. 49

Avarage case analysis: Assumes a probability distribution for data, & derives asymptotic expected running time in terms of size by statistical arguments. Analysis highly complicated even under simple distributions. Also, not clear which distributions are representative. Worst case analysis: Determines an upper bound on running time in terms of size, for all possible data. So, gives guaranteed max. running time. Basis for computational complexity theory. Drawback: depends on pathological instances which may be very rare. Worst case complexity of an algo. is O(n β ) where n =size running time αn β where α, β are constants. In this case algo. said to be polynomially bounded. 50

Decision problems: Those for which answer is yes or no. NP-completeness theory deals with these. Each opt. problem has a decision problem version (also called recognition version, or feasibility version). TSP Decision problem: Given n, integer cost matrix C n n, integer α; is there a tour with cost α?. An opt. problem, & its decision problem version are equivalent in terms of being poly. bounded. 51

Problem reductions & Problem transformations Problem X 1 polynomially reducible to problem X 2 if an algo. for X 1 using as a subroutine an algo. for X 2, calling it a polynomial no. of times (poly. in size of X 1 ). S. Cook (1971) introduced it. X 1 polynomially transforms to X 2 (a special type of poly. reduction) if X 1 can be transformed with at most a poly. blow-up in size into X 2. If X 1 poly. reducible (transforms) to X 2 & X 2 poly. bounded, so is X 1 (X 2 is at least as hard as X 1 in terms of polynomial solvability). 52

Example: Set packing: Given A m n =(a ij ),e = (1,...,1) T R n, integer c R n and α x R n feasible to: Ax e cx α x j binary j. Node packing: Same as above, but each row of A has exactly 2 nonzero entries of 1. Theorem: Set packing polynomially transforms to node packing. 53

P, NP, NP complete, NP hard classes P = class of all problems solvable by a poly. bounded algo. Criterion of poly. time as characterization of a good algo. proposed by J. Edmonds, A. Cobham in early 1960 s. Examples: LP, linear constraints, etc. Certificate for a decision problem: For a decision problem with yes-answer, it is info. that can be used (by a certificate checking algo.) to verify that yes is correct answer in poly. time. For TSP-decision problem, a tour with cost α is a certificate. NP: class of decision problems whose yes-instances have a certificate & a certificate checking algo. Examples: all problems in P, 0-1 IP, pure & MIP, TSP, etc. Certificate of optimality or good characterization: Information that can be used to check optimality in poly. time. Example: LP, a certificate is a primal & dual pair of opt. sols. NP-hard: Class of problems (not necessarily in NP) s. th. 54

every problem in NP polynomially rduces to it. NP-complete: NP NP hard. S. Cook (1971) introduced concepts of NP, NP-complete, NPhard & poly. reducibility by proving: Theorem: Satisfiability problem is NP-complete. 0-1 IP version of satisfiability: Data: N = {1,...,n}. Given m pairs of subsets of N, (S + i,s i ), i =1tom. Is there a feasible sol. to: j S + i x j + j S i (1 x j) 1, for i =1to m; x j binary j. How to show a problem X 2 is NP-complete: If X 2 NP and a known NP-complete problem X 1 polynomially reduces (or transforms) to X 2, then X 2 is NP-complete. 55

Example: Consider Subset sum: Data: positive integers d 0 ; d 1,...,d n. Is there a sol. to:? n j=1 d j x j = d 0 all x j binary Set partitioning feasibility: Data: A m n =(a ij ), e = (1,...,1) T R n. Is there a sol. to: Ax = e, x binary? Theorem: Given that set partitioning feasibility is NP-complete, so is subset sum. Reference: MRGarey&DSJohnson,Computers and Intractability: A Guide to the Theory of NP-Completeness, Freeman, 1979. Differences Between LP and IP Models: 56

LP 1. Theoretically proven IP No known opt. conds. nec. and suff. optimality conditions exist. Useful to check whether a given feasible solution optimal to check whether a given feasible sol. is opt., other than to compare it with every other feasible solution implicitly or explicitly. All existing 2. Algos. are algebriac methods based on opt. conds. methods are enumerative methods based on partial enumeration. 3. Excellent software Performance of algorithms packages available. Very is very highly dependent large models can be solved on problem data. For within reasonable times using them. most models, only moderate sized problems can 57 be solved within reasonable times.