A heuristic is a technique that is used to solve a problem faster than the classic methods. These techniques are used to find the approximate solution of a problem when classical methods do not. Heuristics are said to be the problem-solving techniques that result in practical and quick solutions.
Heuristics are strategies that are derived from past experience with similar problems. Heuristics use practical methods and shortcuts used to produce the solutions that may or may not be optimal, but those solutions are sufficient in a given limited timeframe.
2. INTRODUCTION TO HEURISTIC SEARCH
HEURISTICS ARE FORMALIZED AS RULES FOR CHOOSING THOSE
BRANCHES IN A STATE SPACE THAT ARE MOST LIKELY TO LEAD TO AN
ACCEPTABLEPROBLEM SOLUTION.
MUCH MORE EFFICIENT THAN UN-INFORMED SEARCHES.
HEURISTICS ARE EMPLOYED IN TWO BASIC SITUATIONS:
1. A PROBLEM MAY NOTHAVE AN EXACT SOLUTION BECAUSE OF
INHERENT AMBIGUITIES IN THE PROBLEM STATEMENT OR AVALIABLE
DATA.
2. A PROBLEM MAY HAVE AN EXACT SOLUTION; BUT THE COMPUTATION
COST OF FINDING IT MAY BE PROHIBITIVE.
ONE OF THE EXAMPLES OF HEURISTIC SEARCH IS HILL CLIMBING SEARCH
3. HILL CLIMBING SEARCH
THE SIMPLEST WAY TO IMPLEMENT A HEURISTIC
SEARCH.
LIKE CLIMBING THE MOUNT EVEREST IN THICK FOG
WITH AMNESIA
HILL CLIMBING STRATEGIES EXPAND THE CURRENT
STATE IN THE SEARCH AND EVALUATE ITS CHILDREN
THE BEST CHILD IS SELECTED FOR FURTHER
EXPANSION; NEITHER ITS PARENT OR ITS SIBLINGS ARE
RETAINED
SEARCH HALTS WHEN IT REACHES A STATE THAT
BETTER THAN ANY ITS CHILDREN
4. TYPES OF HILL CLIMBING ALGORITHM IN ARTIFICIAL INTELLIGENCE
Simple Hill Climbing:
Simple hill climbing is the simplest way to implement a hill climbing algorithm. It
only evaluates the neighbour node state at a time and selects the first one which
optimizes current cost and set it as a current state.
Steepest-Ascent hill climbing:
The steepest-Ascent algorithm is a variation of simple hill climbing algorithm. This
algorithm examines all the neighbouring nodes of the current state and selects one
neighbour node which is closest to the goal state. This algorithm consumes more
time as it searches for multiple neighbours.
Stochastic hill climbing:
Stochastic hill climbing does not examine for all its neighbour before moving. Rather,
this search algorithm selects one neighbour node at random and decides whether to
choose it as a current state or examine another state.