Gen-Heu-Pt1-581-F09-stu

Gen-Heu-Pt1-581-F09-stu - fill-in animation only Heuristic...

Info iconThis preview shows pages 1–7. Sign up to view the full content.

View Full Document Right Arrow Icon
2/8/05, 11/09 M. A. Breuer 1 fill-in animation only Heuristic techniques in design automation EE581 Fall 2009 Melvin A. Breuer Ming Hsieh Department of Electrical Engineering Viterbi School of Engineering University of Southern California
Background image of page 1

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
2/8/05, 11/09 M. A. Breuer 2 Definition of a heuristic Dictionary: Serving to discover A. I.: A technique to search a solution space for a “ good” feasible solution S. Lin: Any technique, procedure, method or algorithm that produces a feasible solution acceptable to the design engineer within limits of computing time. Others: Combination of mathematics and plausible arguments
Background image of page 2
2/8/05, 11/09 M. A. Breuer 3 Approximation algorithms An approximation algorithm is a procedure that runs in polynomial time and is evaluated by the worst case possible error over all possible instances of the problem. An algorithm A is said to be a δ -approximation algorithm for a minimization problem P if, for every instance I of P it delivers a solution that is at most times the optimal, where >1.
Background image of page 3

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
2/8/05, 11/09 M. A. Breuer 4 Another view of a heuristic “Two fundamental goals in computer science are finding algorithms with provably good run times and with provably good or optimal solution quality. A heuristic is an algorithm that gives up one or both of these goals; for example, it usually finds pretty good _______ , but there is no ______ the solutions could not get arbitrarily bad; or it usually runs reasonably quickly, but there is no argument that this will always be the case. Often, one can find specially crafted problem instances where the heuristic will in fact produce very bad results or run very slowly; however, these instances might never occur in practice because of their special structure. Therefore, the use of heuristics is very common in real world implementations.” fill-in
Background image of page 4
2/8/05, 11/09 M. A. Breuer 5 Why we need heuristics? Well-Structured” problems, i.e., clear mathematical formulation Many such problems are NP-hard, and problem size ( n) is also large Example – Traveling salesperson problem Reduce “size” (time and space) of P (polynomial) problems (for large n) Example – The assignment problem “Design” problems, i.e., not well structured) Modeling problem is difficult Constraints and objective functions are fuzzy concepts of have many exceptions Size might be extremely large Example – The stock market
Background image of page 5

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
2/8/05, 11/09 M. A. Breuer 6 Heuristic procedures A specific method for solving a specific problem May not always find the _______ (correct) answer May not always terminate Usually significantly faster than an algorithm for solving the same problem ________ the solution satisfies the constraints Recall use of LP formulation as a check Evaluation of a heuristic Subclass for which optimal may be obtained Average “error” ________ bound on error Space and time complexity fill-in
Background image of page 6
Image of page 7
This is the end of the preview. Sign up to access the rest of the document.

Page1 / 37

Gen-Heu-Pt1-581-F09-stu - fill-in animation only Heuristic...

This preview shows document pages 1 - 7. Sign up to view the full document.

View Full Document Right Arrow Icon
Ask a homework question - tutors are online