Preview

07 - Heuristics

 1. Where finding an optimal solution is ___________________________, heuristic methods can be used to speed up the process of finding a satisfactory solution.

  possible or practical

  heuristically improbable

  the only way forward

  impossible or impractical

 2. Heuristics can be mental shortcuts that ease the cognitive load of making a decision. Examples that employ heuristics include:

  using a rule of thumb

  using an educated guess

  All of the listed options are valid answers

  using an intuitive judgement or common sense

 3. Heuristics are often the strategies derived from previous experiences with similar problems
Here are a few other commonly used heuristics, from George PĆ³lya's 1945 book, How to Solve It:

If you are having difficulty understanding a problem, try drawing a picture.
If you can't find a solution, try assuming that you have a solution and seeing what you can derive from that ("working backward").
If the problem is abstract, try examining a concrete example.
Try solving a more general problem first (the "inventor's paradox": the more ambitious plan may have more chances of success).

  FALSE

  TRUE

 4. The most fundamental heuristic is ________________, which can be used in everything from matching nuts and bolts to finding the values of variables in algebra problems.

  trial and error

  divide and conquer

  binary search

  algorithmic inoperability

 5. The use of a heuristic can often result in trading optimality, completeness, accuracy, or precision for ________.

  stealth (slow but accurate processing)

  speed

  nothing concrete

  even greater accuracy

 6. A heuristic function, also called simply a heuristic, is a function that_______________________ based on available information to decide which branch to follow

  finds the fastest and always the 100% accurate solution

  finds the right solution

  finds the slowest, but the most accurate solution

   ranks alternatives in search algorithms at each branching step

 7. The objective of a heuristic is to produce a solution_______________________ that is good enough for solving the problem at hand.

   in a reasonable time frame

  in n / 2 time where n stands for the number of elements in the list (if the problem contains a list)

  in the longest amount of time

  with no compromise on accuracy whatsoever

 8. Heuristics underlie the whole field of Artificial Intelligence and the computer simulation of thinking, as they may be used in situations where there are no known algorithms.

  

  FALSE

  TRUE

  

 9. Fill in the blanks for the following excerpt.
A* guarantees to find the lowest cost path in a graph with nonnegative edge path costs,
 provided that you use an appropriate heuristic. 

What makes a heuristic function appropriate?

First, it must be admissible, i. e. it should, for any node, produce either an underestimate 
or a correct estimate for the cost of the cheapest path from that node to any of goal nodes.

This means the heuristic should ______________________________________________________________.

  always overestimate the cost to get from the node to the goal

  never overestimate the cost to get from the node to the goal.

  always find the exact best route with 100% accuracy to get to the destination

  always underestimate the cost to get from the node to the goal by a factor of 2

 10. Decide whether the following excerpt is true or false.
Antivirus software often uses heuristic rules for detecting viruses and other forms of malware. 

Heuristic scanning looks for code and/or behavioral patterns common to a class or family of 
viruses, with different sets of rules for different viruses. 

If a file or executing process is found to contain matching code patterns and/or to be performing 
that set of activities, then the scanner infers that the file is infected.

  FALSE

  TRUE