
Optimization Algorithms
Alaa Khamis
- Editorial
- Manning
- Año
- 2024
- Páginas
- ~669
- Nivel
- Intermedio
De qué trata
Manual integral y aplicado publicado por Manning a finales de 2024, en el que Alaa Khamis explica cómo resolver problemas del mundo real complejos, ruidosos y desestructurados mediante algoritmos de búsqueda y optimización basados en inteligencia artificial. Está diseñado para desarrolladores de software, ingenieros de operaciones y científicos de datos de nivel intermedio que cuentan con un manejo solvente de Python y nociones de estructuras de datos y aprendizaje automático, pero que buscan dominar técnicas de optimización libres de derivadas sin tener que descifrar demostraciones matemáticas formales.
El texto explora en detalle una extensa variedad de paradigmas algorítmicos implementados con el ecosistema de Python: algoritmos de búsqueda determinista (búsqueda ciega y búsqueda informada con A* y diseño de heurísticas), métodos basados en trayectoria (recocido simulado / simulated annealing y búsqueda tabú), computación evolutiva (algoritmos genéticos y sus variantes de cruce, selección y mutación) e inteligencia de enjambre (optimización por enjambre de partículas o PSO, colonias de hormigas y algoritmos bioinspirados). También cubre la intersección entre optimización y machine learning, incluyendo técnicas de aprendizaje supervisado, no supervisado y aprendizaje por refuerzo (RL), apoyándose en librerías especializadas como SciPy, NetworkX, PySwarms, PuLP y entornos tipo Gymnasium.
A lo largo de los capítulos se desarrollan casos de estudio reales vinculados a la industria y los servicios modernos: planificación de trayectorias y ruteo en movilidad urbana inteligente, balanceo de líneas de ensamble en fábricas, optimización dinámica de precios, calce entre oferta y demanda en logística, y sintonización de hiperparámetros. La obra sobresale por clarificar el compromiso crítico entre exploración y explotación del espacio de soluciones, e incluye un apéndice con ejercicios y soluciones. Deja deliberadamente fuera el cálculo multivariable avanzado y la optimización convexa analítica para centrarse en metaheurísticas computacionales directamente aplicables al código.
- Python
- Algoritmos de optimización
- Búsqueda informada (A*)
- Recocido simulado
- Búsqueda tabú
- Algoritmos genéticos
- Optimización por enjambre (PSO)
- Aprendizaje por refuerzo
- NetworkX
- PySwarms
- SciPy
- Planificación de rutas
¿Cómo enseña?
Teoría + práctica
- ✓ Incluye ejercicios
- ✓ Incluye proyectos
Proyectos
Planificador de rutas y movilidad inteligente
Solución de problemas de navegación en redes espaciales y ruteo óptimo de flotas urbanas utilizando NetworkX y algoritmos de búsqueda informada como A*.
Balanceo de líneas de ensamble y programación industrial
Sistema de optimización combinatoria que minimiza tiempos muertos y asigna tareas en líneas de fabricación mediante algoritmos genéticos y recocido simulado.
Optimizador de precios dinámicos y balance oferta-demanda
Modelo de optimización continua multivariable que ajusta precios en tiempo real y asigna recursos logísticos apoyándose en PySwarms y metaheurísticas de enjambre.
Ajuste de hiperparámetros y control con aprendizaje por refuerzo
Agente autónomo implementado en Python que interactúa con entornos de simulación para guiar la búsqueda de parámetros y optimizar políticas de control.

