Heuristics: Intelligent Search Strategies for Computer Problem Solving