# 07 - Heuristics

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

heuristically improbable

the only way forward

possible or practical

impossible or impractical

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

All of the listed options are valid answers

using an educated guess

using a rule of thumb

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).```

TRUE

FALSE

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.

divide and conquer

trial and error

algorithmic inoperability

binary search

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 right solution

ranks alternatives in search algorithms at each branching step

finds the fastest and always the 100% accurate solution

finds the slowest, but the most accurate solution

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

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

in a reasonable time frame

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.

TRUE

FALSE

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 underestimate the cost to get from the node to the goal by a factor of 2

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

always 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

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.```

TRUE

FALSE