Este documento describe los conceptos básicos de la programación dinámica. Explica que la programación dinámica resuelve problemas dividiéndolos en etapas más pequeñas de forma recursiva para encontrar la solución óptima. Luego presenta un ejemplo de cómo aplicar la programación dinámica para determinar la ruta más segura para un vendedor que debe viajar entre varios estados.