Aprendizaje computacional y algoritmos heurísticos para la resolución de problemas