Solution methods for NP-hard Discrete Optimization Problems Three main directions to solve NP-hard discrete optimization problems: • Integer programming techniques • Approximation algorithms • Heuristics On time-accuracy tradeoff schedule: Brute force Integer programming Approximation algorithms Heuristics Most accuracy Least accuracy Worst time Best time Heuristics • Based on common sense, intuition • Sometimes are based on physical, biological phenomena (e.g., simulated annealing, genetic algorithm) • Normally very time-efficient • No rigorous mathematical analysis • Don’t guarantee optimal solution • Hopefully will produce fairly good solutions at least some of the time Example: The nearest neighbor algorithm for TSP Approximation Algorithms • Time-efficient (sometimes not as efficient as heuristics) • Don’t guarantee optimal solution • Guarantee good solution within some factor of the optimum • Rigorous mathematical analysis to prove the approximation guarantee • Often use algorithms for related problems as subroutines Later we will consider an approximation algorithm for TSP. IP-based Solution Methods • Most discrete optimization problems can be formulated as integer programs • Guarantee optimal solution most of the time • Sometimes might be time-inefficient • Is the preferred method for most companies, especially with the advent of modern superfast computers We will consider IP-based solution methods in details. Solving Integer Programs (IP) vs solving Linear Programs (LP) The algorithms for solving LPs are much more time-efficient than the algorithms for IPs. LP algorithms – Simplex Method (considered in Math442/542) – Interior-point methods IP algorithms use the above-mentioned LP algorithms as subroutines. Thus, we will start by recalling the main features of Simplex Method. (see Chapter 4 of H&L)
© Copyright 2025 Paperzz