02-16-2017, 09:41 AM
CS502 Fundamentals of Algorithms GDB Solution 2017
Semester Fall 2016
Graded Discussion Board Topic:
An optimization problem is one in which you want to find, not just a solution, but the best solution. A "greedy algorithm" sometimes works well for optimization problems.
You are required to support or contradict above statement by giving solid reasoning.
Solution:
A greedy algorithm works in phases, at each phase:
The advantage of using a greedy algorithm is that solutions to smaller instances of the problem can be straightforward and easy to understand. The disadvantage is that it is entirely possible that the most optimal short-term solution may lead to the worst possible long-term outcome. In many problems, a greedy strategy does not in general produce an optimal solution, but nonetheless a greedy heuristic may yield locally optimal solutions that approximate a global optimal solution in a reasonable time. Greedy algorithms mostly (but not always) fail to find the globally optimal solution, because they usually do not operate exhaustively on all the data.
Semester Fall 2016
Graded Discussion Board Topic:
An optimization problem is one in which you want to find, not just a solution, but the best solution. A "greedy algorithm" sometimes works well for optimization problems.
You are required to support or contradict above statement by giving solid reasoning.
Solution:
A greedy algorithm works in phases, at each phase:
- You take the best you can get right now, without regard for future consequences.
- You hope that by choosing a local optimum at each step, you will end up at a global optimum.
The advantage of using a greedy algorithm is that solutions to smaller instances of the problem can be straightforward and easy to understand. The disadvantage is that it is entirely possible that the most optimal short-term solution may lead to the worst possible long-term outcome. In many problems, a greedy strategy does not in general produce an optimal solution, but nonetheless a greedy heuristic may yield locally optimal solutions that approximate a global optimal solution in a reasonable time. Greedy algorithms mostly (but not always) fail to find the globally optimal solution, because they usually do not operate exhaustively on all the data.