Debido a las actuales tendencias empresariales como la necesidad de tener un catálogo de productos amplio, pedidos que aumentan en frecuencia pero no en tamaño, la globalización y un mercado donde la competitividad aumenta, el sector de la producción encara un entorno económico cada vez más duro. Todo esto requiere de una programación de la producción con la máxima eficiencia y eficacia. Las primeras publicaciones científicas sobre la programación de la producción aparecieron hace más de medio siglo. Sin embargo, muchos autores han reconocido una brecha entre la literatura y la problemática industrial. La mayoría de la investigación se concentra en problemas de optimización que no son más que una versión muy simplificada de la realidad. Esto permite el uso de métodos sofisticados y garantiza la obtención de soluciones óptimas en muchos casos. No obstante, la exclusión de restricciones existentes en el mundo real complica la aplicabilidad de dichos métodos. Lo que necesita la industria son sistemas de programación de la producción optimizada que se ajusten exactamente a la situación de la planta y que den buenas soluciones en muy poco tiempo. El objetivo de esta tesis doctoral es precisamente este, el de tratar problemas de programación más realistas y el de ayudar a cerrar la brecha entre la literatura y la práctica. El problema de producción tratado es conocido como taller de flujo híbrido, que consiste en un conjunto de trabajos que pasan por varias etapas productivas. En cada etapa se visita una de las máquinas que pertenecen a la etapa. Se consideran una serie de restricciones que incluyen la posibilidad de saltar etapas, máquinas no elegibles, relaciones de precedencia, solapes y esperas y tiempos de cambio dependientes de la secuencia. Hasta la fecha, en la literatura no se ha considerado tal cantidad de restricciones simultáneamente. En conclusión, en esta tesis se estudia un problema muy realista de programación de la producción. Para este problema, se presentan varios métodos de optimización. Se propone un modelo matemático para obtener soluciones exactas en casos limitados y para analizar la complejidad de cada una de las restricciones. Se proponen siete heurísticas con el fin de obtener soluciones rápidas en casos generales. Diversos métodos metaheurísticos avanzados se estudian en detalle, empezando con cinco algoritmos genéticos que permiten el estudio del efecto de la representación de la solución. Se proponen tres métodos basados en búsqueda local, algo muy novedoso si se tiene en cuenta la enorme dificultad del problema estudiado. Adicionalmente, se estudian métodos novedosos que cambian de representación de solución durante el proceso de búsqueda para así obtener soluciones de muy alta calidad. Los resultados conseguidos avalan el uso de estas nuevas técnicas cambiantes. En la literatura apenas hay publicaciones que tratan sobre la optimización multi-objetivo del taller de flujo híbrido. En esta tesis doctoral se presentan dos metaheurísticas que producen como resultado fronteras de Pareto para este problema. Se demuestra que no es obvia la manera de medir los resultados y se propone una metodología para ello, usando técnicas consideradas como estado del arte. Finalmente, se comentan aplicaciones prácticas en el ámbito de la transferencia tecnológica hacia empresas.