A heuristic function is an estimate of the cost to reach a goal state from a given node in a search problem, used to guide algorithms like A* towards promising solutions more efficiently than uninformed search. It is a domain-specific, problem-solving rule of thumb that evaluates the 'promise' of a state, trading off computational speed for optimality. In automated planning, a good heuristic dramatically reduces the number of states an agent must explore by prioritizing paths that appear closer to the goal.
