Está en la página 1de 431

16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

Página 1

OPTIMIZACIÓN COMBINATORIA Y
PROGRAMACIÓN LINEAL

Modelos y algoritmos

Página 2

https://translate.googleusercontent.com/translate_f 1/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

Complete el formulario de registro al final de este


reservar y recibir gratis
información de lanzamiento
y promociones de Elsevier.

Vea nuestro catálogo completo,


últimos lanzamientos y servicios en el sitio web
www.elsevier.com.br

Página 3

OPTIMIZACIÓN COMBINATORIA Y
PROGRAMACIÓN LINEAL
https://translate.googleusercontent.com/translate_f 2/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

Modelos y algoritmos

Página 4

© 2005, Elsevier Editora Ltda.

Todos los derechos reservados y protegidos por la Ley n el 9.610 del 19/02/1998.
Ninguna parte de este libro, sin la autorización previa por escrito del editor,
podrá reproducirse o transmitirse por cualquier medio empleado:
electrónicos, mecánicos, fotográficos, de grabación o cualesquiera otros.

Publicación electrónica
Estudio Castellani

Revisión gráfica
Roberto Mauro Facce
Traducciones singulares y servicios editoriales

Proyecto gráfico
Elsevier Editora Ltda.
Conocimiento sin fronteras
Rua Sete de Setembro, 111 - Piso 16
20050-006 - Centro - Río de Janeiro - RJ - Brasil

Rua Quintana, 753 - Piso 8


04569-011 - Brooklin - São Paulo - SP - Brasil

Servicio de atención al cliente


0800-0265340
sac@elsevier.com.br

ISBN 978-85-352-1520-5

https://translate.googleusercontent.com/translate_f 3/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
Nota: Se utilizó mucho celo y técnica en la edición de este trabajo. Sin embargo, pueden ocurrir errores tipográficos,
impresión conceptual o duda. En cualquier caso, solicitamos la comunicación a nuestro Servicio.
Servicio al cliente, para que podamos aclarar o abordar el problema.
Ni el editor ni el autor asumen responsabilidad alguna por daños o pérdidas a personas
o bienes, derivados del uso de esta publicación.

CIP-Brasil. Catalogación en origen.


Unión Nacional de Editores de Libros, RJ

G654o
2.ed.
Goldbarg, Marco Cesar
Optimización combinatoria y programación lineal: modelos y
algoritmos / Marco Cesar Goldbarg, Henrique Pacca L. Luna.
-2.ed. - Río de Janeiro: Elsevier, 2005 - 10 la reimpresión.
Illinois.

Incluye bibliografía
ISBN 978-85-352-1520-5

1. Optimización combinatoria. 2. Programación lineal.


I. Luna, Henrique Pacca L. (Henrique Pacca Loureiro).
II. Título.

04-2886. CDD - 519.4


CDU - 519,68

Página 5

PREFACIO

Los autores son profesores de renombre en las áreas de optimización, programación matemática e investigación.
Operacional. Guiar tesis de posgrado, impartir cursos de pregrado y posgrado.
en los temas tratados en este libro, publicar en revistas científicas indexadas y ejercitar
en sus universidades.
Marcos C. Goldbarg y Henrique PL Luna estaban felices de lanzar este libro, ya que eligieron un
momento favorable cuando hay muchos estudiantes y profesionales en Brasil interesados en los procesos
apoyo para la toma de decisiones.
Optimización combinatoria y programación lineal: modelos y algoritmos logra un equilibrio entre
arte del modelado matemático en optimización y los algoritmos para resolver estos modelos. Comenzando
del método simplex para resolver problemas de programación lineal, los autores revisan
de manera muy didáctica temas importantes como el flujo en redes, el camino más corto en un gráfico y
mínimo árbol generador de un gráfico, donde el lector puede percibir la necesidad o no
para orientar un gráfico. La noción de programación lineal con variables integrales está muy bien introducida
y sus aplicaciones en problemas de decisión, en los que algunas variables son bivalentes (0-1). Maestro-
La eliminación 0-1 es muy útil para problemas de ubicación de instalaciones, diseño de redes
servicio, rutas vehiculares.
Existen problemas clásicos de optimización combinatoria para los que métodos de programación específicos
Se desarrolló información lineal con variables bivalentes. Entre estos problemas, los autores
los siguientes son muy claros: del viajante de comercio, del tabique, del revestimiento, del
corte, carga, embalaje y desplazamiento de vehículos.
Dada la explosión combinatoria de algunos problemas de optimización combinatoria, muchas veces
si puede obtener una solución óptima; por lo tanto, los autores también consideraron métodos heurísticos
con complejidad numérica polinomial, con el objetivo de buscar buenas soluciones.
El libro está bien escrito, bien ilustrado, contiene buenos ejercicios y una bibliografía actualizada.
Lo considero un trabajo esencial para la enseñanza de la optimización combinatoria en Brasil.

https://translate.googleusercontent.com/translate_f 4/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

N ELSON M ACULAN
Secretario de Educación Superior del Ministerio de Educación
Profesor titular
Universidad Federal del Rio de Janeiro

Página 6

INTRODUCCIÓN A LA SEGUNDA EDICIÓN

Llega la segunda edición del libro Combinatory Optimization and Linear Programming: Models and Algorithms
en un momento oportuno, cuando la necesidad de actualizar el asunto y la madurez de
autores en relación con la obra. Han pasado cinco años, se han impreso cuatro mil, con un
más de una tirada al año. Las mejoras ahora introducidas se basan en la experiencia
del uso del libro en el aula y de los comentarios de compañeros docentes que nos honran
con el uso de la primera edición.
Constituir una versión actualizada que conserve el contenido original y mejore la forma en que se presenta.
presentación, esta segunda edición incluye una importante inclusión de referencias a la producción científica
del primer candelabro del nuevo milenio. La actualización resultó en un saldo positivo de decenas de
páginas, con la eliminación de algunas páginas del apéndice que no fueron referenciadas en el texto principal
de la primera edición. La rica ilustración del libro se reorganizó con la numeración restringida al alcance de
cada capítulo, incluyendo referencias a figuras, ecuaciones, tablas y tablas, que a su vez
presentación estandarizada.
La presente edición buscó principalmente actualizar las citas bibliográficas, especialmente en el
en relación con los algoritmos para resolver los problemas de optimización combinatoria abordados, y
las taxonomías utilizadas en los capítulos aplicados. Por ejemplo, el Capítulo 9, que trata sobre "Problema
pero enrutamiento ”, ha sido completamente rehecho con un esquema de clasificación más actual para
estructura relevante. A su vez, los capítulos 8 y 10, que tratan, respectivamente, del problema del secretario
Traveller y los problemas de "Cobertura, Partición y Ubicación" también se enriquecieron
y actualizado. Algunos materiales migraron del capítulo, con el fin de reunir materiales relacionados y dar mayor
adherencia a los nombres que etiquetan los capítulos.
Esta segunda edición llega en un momento en el que se consolida el vínculo entre optimización combinatoria
Programación lineal, que confirma la exactitud del nombre del libro y la importancia del material.
cualquier cosa. Otra tendencia que ya se había anticipado en la primera edición se refiere al interés
el uso de heurísticas clásicas y metaheurísticas para abordar problemas de optimización combinados
nativo. Estas dos tendencias mundiales se destacan en el libro y se reflejan en el trabajo de
investigación de los autores y sus estudiantes de posgrado, cuyos artículos científicos, tesis y disertaciones
más avanzado y complementario al tema basado en el libro. Dentro del alcance de
combinatoria, se busca un equilibrio entre la enseñanza de algoritmos exactos, que por regla general
mediante el uso de programación lineal de enteros mixtos y algoritmos aproximados, que como regla
utilizar metaheurísticas. El alumno debe darse cuenta de que la búsqueda de la optimalidad global es siempre
un ideal a perseguir, pero que frente a la complejidad de los problemas del mundo real
necesario idear un método heurístico para resolver el problema en cuestión. La lección es que el
El sentido común, la evaluación crítica y la competencia deben prevalecer al abordar un problema, evitando
tanto el miedo a la complejidad como la obsesión por la precisión.
Lanzada al comienzo del segundo candelabro del nuevo milenio, esta segunda edición se beneficia enormemente de
un momento en el que las redes de comunicación se han convertido en un agente eficaz para apoyar la enseñanza y las personas
desear. La falta de buenas bibliotecas ya no es, en términos de capacidad de búsqueda de conocimiento,

https://translate.googleusercontent.com/translate_f 5/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
uno de los factores determinantes de las desigualdades regionales.

Página 7

XIV OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

Del Nordeste brasileño, los autores obtuvieron prácticamente toda la colección de producción científica,
cuya referencia se agrega en esta segunda edición. Naturalmente, le corresponde al lector hacer un uso directo de
de esta rica información electrónica. Durante este período entre la primera y la segunda edición,
accesibilidad al conocimiento generado en el mundo. El material complementario que los autores ponen a disposición
en la Web es solo una parte de la información que el lector más interesado debería recuperar. Nuestro ambiente
Es necesario alentar al académico a aprovechar al máximo las fuentes de información enriquecidas y gratuitas
Internet y, principalmente, el pago y difusión por CAPES de las ediciones electrónicas de los principales
las principales revistas científicas.
Hay muchos ejercicios resueltos en el libro y, aunque la mayoría de los ejercicios propuestos son
posible, hay todo grado de dificultad en los ejercicios sugeridos, algunos constituyen problemas en
disertaciones de maestría o incluso tesis doctorales. Es normal, por tanto, que haya algunos ejercicios
abierto, y el lector maestro o alumno debe entender que en estos casos la resolución puede
ser obtenido después de un esfuerzo de investigación que aún no ha sido realizado ni siquiera por
res. En este sentido, el libro debe entenderse como un trampolín para la actividad investigadora, y es
esto también sirve para cursos de posgrado.
Por cierto, además del sitio web del editor, el lector interesado también puede recuperar información
en repositorios de posgrados y laboratorios de investigación. CAPES
actualmente recomienda transparencia y contenido electrónico para cada posgrado,
hacer que su material didáctico esté disponible en la red y fomentar las páginas de inicio para los propios estudiantes,
el cual debe mostrar sus ejercicios resueltos y su trabajo de computación científica. Esta
Recomendación adoptada en el Programa de Posgrado en Modelado Computacional del Conocimiento.
UFAL, en Maceió ( http://www.tci.ufal.br/mcc ). En particular, este programa está lanzando
Los once alumnos matriculados en el segundo semestre de 2004 en el
Optimización continua y combinatoria, impartido por el autor Henrique Pacca L. Luna, en el que
se adopta el libro y los estudiantes deben ejecutar en diferentes paquetes de optimización muchos de los ejercicios
resuelto y propuesto en el libro. Debido a una gran cantidad de información, con el debido
cuidado, el lector puede utilizar directamente este tipo de página de inicio como fuente de información completa
suplemento del libro. Otra fuente de carácter complementario se encuentra en las webs de los laboratorios de investigación.
quisa y CNPq, en particular el sistema Lattes, en el que se reanuda y
Grupos de investigación brasileños. En particular, el Centro de Excelencia en Optimización de Sistemas
Complexes, que articula un consorcio de investigación de instituciones del noreste, mineras y francesas
sas, y proporciona material digital en http://nexos.tci.ufal.br , en el que artículos, tesis,
disertaciones, conferencias, figuras, modelos computacionales y ejercicios resueltos de nuestros libros y
Apuntes de clase.
Reafirmamos nuestro agradecimiento a todos los que fueron citados explícita o implícitamente en el
introducción a la primera edición. A ellos se unen colegas docentes y estudiantes de pregrado y posgrado.
estudios de posgrado, de los cuales muchos se graduaron o se convirtieron en maestros y doctores en este período de
años entre la primera y la segunda edición del libro. Los compañeros de campo todavía están aquí
representado por el profesor Nelson Maculan, hoy Secretario de Educación Superior del MEC, quien
Nos honró enormemente con la presentación del libro. Profesora Elizabeth Ferreira Gouveia, de UFRN,
también nos ayudó en esta segunda edición y merece un agradecimiento especial. Esta vez tambien
a pesar de todos los esfuerzos de revisión, los errores que eventualmente persisten son responsabilidad
de los autores, que siguen estando disponibles a través de las direcciones de correo electrónico gold@dimap.ufrn.br y
pacca@tci.ufal.br para recibir críticas y sugerencias. Y finalmente agradecemos a los lectores, cuyo interés
La viabilidad económica de esta segunda edición se planteó sobre un tema que tanto nos fascina.

Marco C. Goldbarg
Henrique PL Luna
Noviembre de 2004

Página 8

https://translate.googleusercontent.com/translate_f 6/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

INTRODUCCIÓN A LA PRIMERA EDICIÓN

El uso de la herramienta "Investigación operativa" para promover la eficiencia y eficacia organizacional


en todos los niveles de gestión es una realidad viabilizada por la microcomputadora y el avance
el estado del arte. De hecho, la relevancia del área de los sistemas de apoyo a la decisión ha ido creciendo con la
advenimiento de las estaciones de trabajo, que a bajo costo y con mayor proximidad física a los ejecutivos
ofrecen recursos de cálculo, almacenamiento y gráficos disponibles anteriormente solo
en máquinas grandes.
Dentro de este escenario, el dominio total de esta herramienta se vuelve cada vez más crucial, especialmente
profesionales en los campos de las ciencias exactas y la administración. En este sentido, el presente trabajo
fue diseñado para facilitar el acceso y el dominio de técnicas de optimización combinatoria y programática
definición lineal.
El libro busca llenar un vacío en la literatura nacional sobre desarrollo.
habilidades necesarias para el modelado matemático y la solución de importantes
mejoramiento. El objetivo principal de este trabajo es brindar subsidios técnicos, describir modelos matemáticos
discutir algoritmos de solución y sugerir temas de aplicación, dentro de la visión cuantitativa del análisis.
el fenómeno de la toma de decisiones, principalmente para estudiantes de pregrado en ingeniería,
Recursos de administración e informática.
Aceptado como texto introductorio, el libro también se puede utilizar en el contexto de la publicación
Graduado universitario. Apuntando a esta posibilidad, la revisión bibliográfica que acompaña
cada tema específico, para que el estudiante de posgrado pueda llegar más fácilmente
la profundidad necesaria.
El contenido del programa cubierto por los Capítulos 1 al 5 abarca lo que normalmente se requiere
en disciplinas que se denominan clásicamente "Investigación operativa", "Optimización del sistema"
Temas de ingeniería ”,“ Programación lineal ”, etc. El profesor de estas disciplinas de pregrado puede
también optar por reemplazar el Capítulo 5 con las partes iniciales de los Capítulos 6 y 7, principalmente
si el curso tiene una sola disciplina básica en esta área de conocimiento.
El contenido de los capítulos 6 al 10 aborda temas de optimización combinatoria que son el tema de
como "Optimización combinatoria", "Algoritmos de gráficos", "Flujos de red", etc. Esta
La segunda parte del libro contiene material un poco más avanzado, que normalmente sirve para disciplinas opcionales.
de nuestros cursos de pregrado o posgrado.
De esta forma, el texto fue organizado para ayudar a los docentes en el transcurso de su tarea de incentivar
y facilitar el proceso de construcción del conocimiento de los estudiantes poniendo a disposición
marco de consulta adecuado, coherente y compacto.
Otra característica sorprendente de este trabajo son las diversas aplicaciones prácticas tomadas de la
Calidad brasileña, que permite acercar la disciplina a la rutina diaria del alumno, aumentando la
motivación. En el contexto de la programación lineal, el libro se caracteriza por el uso intensivo de
interpretación económica del método simplex y de las relaciones de dualidad y sensibilidad. La idea es insistir
hasta el punto que las herramientas de optimización indican las actividades más productivas en las empresas
y que el uso de estas herramientas también indica los precios más competitivos.
En el ámbito de la optimización combinatoria, como sugiere su nombre, el libro se caracteriza por
Presentación del problema mediante el uso deliberado de formulaciones completas de programación lineal.
mezclado. Además del interés teórico, la formulación de problemas combinatorios mediante programación interna

Página 9

XVI OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

abre el camino para el uso de paquetes de programación matemática comerciales eficientes, cuyo
El progreso en la solución exacta de importantes problemas prácticos ha sido notable. Incluso para heurística
ciones que no requieren la formulación de una programación lineal completa, calidad
a menudo se hace usando la relajación del problema de programación lineal.
Lanzado en el cambio de milenio, el libro se beneficia de una época en la que las redes de comunicación
se convirtió en un eficaz agente de apoyo a la enseñanza, como parte de una propuesta del editor
Poner a disposición material complementario a través de Internet, principalmente para profesores registrados.
Desde. Se proporcionarán más detalles en el sitio web correspondiente, en función de la dinámica de interacción con
profesores y alumnos. Para ayudarlo a aprovechar al máximo este libro, hemos colocado algunos íconos
asociados a los ejercicios resueltos y por resolver. Así, los símbolos J, K, L, M y N indican el grado de
dificultad del ejercicio, en orden ascendente.
El material de esta primera edición fue probado y revisado durante un año, en
cursos de pregrado y posgrado, tanto en la UFRN como en la UFMG. La lista sería muy larga, pero gracias
Prestamos especial atención a todos estos estudiantes que sirvieron como conejillos de indias. Algunos compañeros de la zona

https://translate.googleusercontent.com/translate_f 7/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
ayudó de diferentes maneras, y entendemos que todos están representados aquí por el profesor Nelson
Maculan, quien nos honra con la presentación del libro. También desempeñó un papel importante el
personal de seguimiento de las disciplinas de Investigación Operativa en la UFMG durante 1999. El estudiante de doctorado
Ricardo Poley Martins Ferreira produjo una serie de transparencias que permitieron
libro en clase. Estudiante de maestría Renata Couto Moreira ( renatacm@lapo.dcc.ufmg ) y estudiante de posgrado
Adriano César Machado Pereira ( adrianoc@dcc.ufmg.br ) continúa trabajando con nosotros en apoyo de
bell y la producción de material didáctico, especialmente en la resolución de ejercicios. Fue gracias a eso
apoyo que pudimos poner a disposición material complementario en Internet.
A la profesora Elizabeth Ferreira Gouvêa nuestro agradecimiento por las importantes observaciones realizadas
en la fase de revisión final.
A pesar de todos los esfuerzos de revisión, los errores que eventualmente persisten son naturalmente
responsabilidad de los autores, que se ponen a disposición a través de las direcciones de correo electrónico gold@dimap.ufrn.br
y pacca@dcc.ufmg.br , para recibir comentarios, críticas y sugerencias que se consideren oportunas. Esperamos que el
vro contribuye a apoyar la enseñanza de esta área del conocimiento que tanto nos fascina.

MC Goldbarg
HPL Luna
Noviembre de 1999

Página 10

1 MODELADO
PROBLEMAS

1.1 - PRINCIPIOS DEL PROCESO DE MODELADO

1.1.1 - Concepto de modelo intuitivo


El hombre siempre ha querido comprender su planeta y el mundo en general. Las imposiciones de la supervivencia
así lo determinaron. Rodeado de elementos materiales, se satisfizo la primera necesidad de la humanidad
para tomar el control de su entorno. Seguridad contra depredadores y fenómenos naturales, la búsqueda
la alimentación, la organización social de los núcleos humanos, etc. despertó las primeras preguntas
aspectos del hombre, privilegiando la acción sobre lo concreto. Como las necesidades del espíritu humano

https://translate.googleusercontent.com/translate_f 8/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
se hizo más complejo, las necesidades para mejorar el proceso de comprensión crecieron
del mundo. En la antigüedad, se presentaron innumerables y sofisticadas estructuras de abstracción
representar las propiedades y los diferentes grados de interacción entre los diversos interferentes de este
todo. Ante la imposibilidad de abordar directamente la complejidad del mundo, el hombre se ha mostrado
cada vez más hábiles en la creación de metáforas para la representación y solución de su relación con este
mismo mundo.
Este proceso de buscar una visión bien estructurada de la realidad (aclaración) es fundamentalmente
un fenómeno de modelado. La palabra modelo puede tener varios significados. Modelo como
La representación sustitutiva de la realidad se distingue del verbo modelar. El verbo introduce la idea de
modulación de la realidad, que es más amplia que la simple representación.
Un modelo es un vehículo para una visión bien estructurada de la realidad . Un modelo también puede ser
visto, con el debido cuidado, como una representación sustituta de la realidad .
Todos hemos tratado con modelos, incluso en ocasiones en las que no lo hicimos
ser consciente de. Cuando le explicamos algo a una persona mediante fotografías o gráficos, o cuando representamos
nos sentamos planos o sólidos a través de ecuaciones matemáticas, no estamos haciendo nada más que
transmitir e interpretar la extraña realidad a través de metáforas o modelos de sustitución .
La geometría euclidiana es un modelo que satisface un conjunto de axiomas, o un modelo de
contexto axiomático. Del mismo modo, en esta línea, podemos identificar otros modelos que
desde las transformaciones de Laplace y su Mécanique Céleste hasta la Teoría Cuántica y el átomo de Bohr.
Evidentemente, no solo existen modelos axiomáticos. El contexto epistemológico es un ejemplo diferente
solamente. Tratando con lo concreto o dirigiéndose a lo imaginario, la mente del hombre trabaja con estructuras de
“Sustitución” que pretenden facilitar el razonamiento, estructuras que denominaremos genéricamente
de modelos.
Los modelos, para ser implementables, deben estar libres de pequeños detalles costosos. En esto
enfoque la importancia de la simplificación del equilibrio tiempos de validez es básica. Concluimos que:

Página 11

dos OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

Los modelos son representaciones simplificadas de la realidad.


que preservan, para determinadas situaciones y enfoques,
equivalencia adecuada

El poder de representatividad es la característica del modelo que lo hace deseable. La habilidad para
la simplificación le da viabilidad operativa. Hay varios criterios para medir la idoneidad
o adherencia del modelo a la realidad representada. En varias ocasiones la representatividad del modelo
se puede mejorar de forma interactiva. El proceso de verificación de representatividad se llama
validación del modelo de accidente cerebrovascular , y un paso necesario en cualquier procedimiento científico.

1.1.2 - Despliegue del concepto - Tratamiento de la eficiencia

El concepto de modelo como representación sustituta de la realidad tiene un alcance limitado. O


El aspecto de la eficiencia es clave. Para lograr modelos eficientes, al menos
tres habilidades:

4 Enfoque holístico
Cuando buscamos solucionar un problema, en la mayoría de ocasiones la preocupación
Concatenar y gestionar los diversos impactos de nuestra solución en otros contextos es
significativo. Si nuestra solución puede crear otros problemas que posteriormente puedan cancelar
Para mostrar la contribución de nuestro esfuerzo, es indispensable un enfoque holístico.

4 Tratamiento ecléctico de la dimensión de análisis


Los métodos de solución que se utilizarán deben ser los más disponibles. Epistemol-
y la axiología no deben considerarse bases de modelado dicotómicas, sino complementarias
mentira. La construcción de modelos es un proceso que, como Janus, tiene dos caras: la cara
que articula la teoría (hipotético-deductivo) y el rostro que representa la validez de la deducción (inductiva)
va) en la práctica.

4 Traducción adecuada
Un buen modelo requiere una traducción contextual conveniente. Una buena traducción contextual
se puede expresar mediante un correcto isomorfismo entre el fenómeno y su modelo. La figura
1.1 aclara el proceso de traducción, enfatizando su aspecto simplificador y estructurador.

Atención
Simplificador
Traducción

Modelo

https://translate.googleusercontent.com/translate_f 9/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

Realidad
Complejo

FIGURA 1.1 El proceso de traducción.

Evidentemente, no todos los problemas son iguales. El proceso de traducción contextual debe poder
identificar los elementos fundamentales del tema y transportarlos a una representación capaz de
ser manipulado mediante engaños o métodos de solución. Las dificultades de la traducción y
son de naturaleza diferente, pero interfieren profundamente. La traducción apunta claramente a

Pagina 12

MODELADO DE PROBLEMAS 3

cooperar con un determinado enfoque de solución. Como la traducción produce un representante


más o menos tratable por los métodos existentes, se define la usabilidad del modelo. La estafa-
El concepto que representa este fenómeno de la interferencia de la traducción en la posibilidad de solución se denomina
de complejidad .
Los modelos "menos complejos" o "simples" se abordan más fácilmente mediante métodos empíricos,
mientras que es poco probable que los modelos complejos necesiten el apoyo de técnicas hipotéticas.
co-deductivo. Observamos que la facilidad de comprensión del modelo, o su inteligibilidad, no
puede confundirse con la complejidad de su solución. Algunos de los problemas más difíciles combinados
Tienen modelos de fácil comprensión y representación, pero de extraordinaria dificultad.
de solución. En este sentido, es fundamental esclarecer mejor el fenómeno de la complejidad .

1.1.3 - Desarrollo del concepto - Tratamiento de la complejidad

Para definir la "complejidad" elegiremos identificar las propiedades que causan e interfieren
con el fenómeno. Esta opción permite una vista muy operativa sin comprometer una posible
profundización teórica. El primer aspecto a destacar en la constitución de la complejidad de un modelo
es su "permeabilidad" al medio ambiente circundante. Un modelo simple tiene un perímetro
de interferencia simple y bien definida. Un segundo punto se refiere a su estructura interna. un
modelo simple tiene una estructura homogénea, morfología uniforme y un pequeño número
de variables. La última dimensión engloba la dinámica, correspondiente a la consideración de cómo
la estructura interna cambia con el tiempo.
Analizando estas tres dimensiones principales, a saber (ver Figura 2):

• Medio ambiente.
• Dominio.
• Dinámica.
Diremos que un modelo es simple cuando:

• Está poco influenciado por variaciones en su entorno.


• Es estructuralmente estable, homogéneo y tiene pocas variables.
• Tiene un comportamiento fácilmente predecible.

1.2 - EL METAMODELO SISTÉMICO

1.2.1 - Concepto de sistema


La Ingeniería de Sistemas hizo una contribución significativa al proceso de estructuración
Reducir y sistematizar los esfuerzos de modelado. Como explicamos anteriormente, el fenómeno de
La producción de traducciones para entidades del mundo real es un proceso extremadamente complejo y
difícil de realizar en un solo paso. El metamodelo sistémico 1 aparece como
interesante propuesta para ayudar, al más alto nivel, al proceso de traducción.
El concepto de sistema permite configurar un premapeo extremadamente útil entre
el modelo de representación. Dentro del enfoque sistémico, modelar significa representar la reacción
los sistemas originales a través de otros sistemas de sustitución , estructurados y comparables,
modelos nombrados.

1
Usamos el término metamodelo porque este modelo es un gran enfoque que apoya la elaboración de otros modelos.
ellos más específicos.

https://translate.googleusercontent.com/translate_f 10/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

Página 13

4 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

Definimos un sistema como cualquier unidad conceptual o física,


compuesto de partes interrelacionadas e interactivas
e interdependiente

Los sistemas son componentes no atómicos (desde el punto de vista de la observación) de una unidad determinada
verso. Los sistemas, en general, todavía tienen las siguientes propiedades:

4 Simbiosis interna o propiedad de función compartida que hace que cada parte sea indispensable
dentro de la constitución del sistema.

4 Simbiosis externa o propiedad de ser participante y componente indispensable (al menos


en teoría) de un ecosistema social.

4 Sinergia o efecto multiplicador que permite que el sistema alcance niveles de rendimiento
superior al obtenido por la suma del rendimiento de cada parte aislada.

4 Homeostasis o la capacidad de mantener su estado de equilibrio.

4 Entropía negativa o la capacidad de importar la energía necesaria de su ecosistema social


para compensar la degradación entrópica natural y realizar autoajustes hacia el equilibrio
ambiente organizacional.

Otro elemento fundamental del concepto es el diseño de propiedad recursiva. Las partes de un sistema
El tema también puede considerarse subsistemas que disfrutan de la misma naturaleza de propiedades.
previsto para el conjunto. Esta propiedad permite una enorme flexibilidad de razonamiento. Con ese
de esta herramienta, muchas situaciones complejas de la realidad, antes de ser difíciles de abordar, podrían ser
Conceptualmente "organizado" con facilidad. De hecho, el enfoque sistémico ha facilitado enormemente
representación de la realidad y, en consecuencia, su mejor comprensión.

Podemos llamar modelo a cada interpretación de un modelo


sistema formal creado axiomáticamente

En el proceso de representación sustitutiva, hay muchos factores a considerar. De hecho, es prácticamente


imposible tener en cuenta todos los elementos que intervienen en un problema real. Como el
El objetivo básico del proceso es lograr una comprensión aceptable de la realidad, los modelos deben ser
formulado con el fin de " capturar " solo los "elementos fundamentales" en el proceso de traducción,
simplificando el método de solución que se utilizará.
Los modelos tienen varias ventajas, además de simplificar la representación de ciertos
sistema de mina. Los modelos pueden revelar relaciones no aparentes, así como facilitar la experiencia.
experimentación (o aprendizaje controlado por ensayo y error), que normalmente no es factible en
sistemas reales. Como la estructura del modelo es independiente de los datos de operación o instancia, el análisis es
muy ayudado. Buscando satisfacer requisitos de calidad , modelos de optimización cuantitativa
buscar alternativas de máxima productividad y, algunas de ellas, determinar automáticamente
precios máximos competitivos.

1.3 - MODELOS DE OPTIMIZACIÓN

1.3.1 - El contexto de los modelos de optimización

Un modelo no es lo mismo que la realidad, pero lo suficientemente similar para las conclusiones obtenidas a través de
el análisis y / o la operación pueden extenderse a la realidad.
En consecuencia, para la formalización de este modelo es fundamental definir:

Página 14

MODELADO DE PROBLEMAS 5

4 La estructura relacional del sistema representado.

4 El comportamiento funcional de cada subsistema o componente atómico.

4 La interrelación fluye .

https://translate.googleusercontent.com/translate_f 11/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

Como nuestro objetivo es perseguir una propuesta de modelado factible, examinaremos las condiciones
instrucciones para realizar una buena traducción a la luz de la complejidad. La figura 1.2 resume las tres dimensiones
batidos en el ítem número 1 y que representan las posibilidades de aplicación práctica del sistema
(Suntherland [1975] y Bertalanffy [1968]).

Dinámica

Indeterminado

Estocástico

Pocas variables Muchas variables


y homogeneidad y heterogeneidad
Determinista
Dominio
Tratable

Intratable

Medio ambiente

FIGURA 1.2 Dimensiones de la complejidad del modelo.

Está claro que el iconógrafo de la figura se puede aplicar para el análisis de todo tipo de sistemas, incluyendo
incluido el socioeconómico (quién puede representar a una sociedad o un país). Enfoque
en el objetivo del presente trabajo, los modelos de optimización, podemos identificar su área de restricción
la complejidad de la traducción entre los dos planos representados en la Figura 1.3. El plan integrado
que determina modelos deterministas, tratables y pequeños, se denomina
canismos.
La estructura relacional de los sistemas modelados se puede representar mediante dibujos o símbolos.
El comportamiento funcional se puede representar mediante funciones de desempeño en las que el posible
las posibles entradas en los subsistemas están asociadas con las salidas que genera.
Desde la propia definición del modelo y sus objetivos, las principales características de
modelos de optimización:

4 El primer tema se refiere a la obtención de las propiedades analíticas del modelo.

4 Elsegundo tema es el énfasis en la mejora mensurable en el proceso. En ese momento están involucrados
Los conceptos de optimización se enfrentaron en vista de las posibilidades de que el problema tuviera más de una solución.
posible. Los modelos de optimización suelen estar respaldados por variables cuantitativas
bien definido como muestra el iconógrafo.

4 El tercer tema es el reconocimiento explícito de interacciones en el modelo y en el modelo.

Página 15

6 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

Dinámica

Indeterminado

Estocástico

Muchas variables
y heterogeneidad
Determinista
Dominio
Tratable

Intratable

Medio ambiente

https://translate.googleusercontent.com/translate_f 12/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
FIGURA 1.3 Espacio viable para el desempeño de modelos de optimización.

Un problema de optimización continua se puede formalizar matemáticamente de la siguiente manera (ver


Luenberger [1984]):

Minimizar f (x)
sujeto a:
h yo (x) = 0 , yo = 1 , ..., m h
g j (x) £ 0 , j = 1 , ..., m g
xÎÂn

Donde f: Â n ® Â, h: Â n ® Â yg: Â n ® Â son funciones continuas, generalmente diferenciables en problemas


pero grande tratable. Dado un conjunto finito E = {1, 2, 3, ..., n } y una colección de subconjuntos
mentos F a E expresados como:

Y
∅ ≠ ⊆F dos

y una función objetivo:

C: F ® Â

un problema de optimización discreta puede entenderse como el deseo de obtener un conjunto satisfactorio S * Î F
zendo:

C (S * ) ³ C (S), "S Î F (problema de maximización)


C (S * ) £ C (S), "S Î F (problema de minimización)

y sujeto a una serie de restricciones.


S también se denomina configuración de problemas. S * es llamado el mejor entre todos los confi-
configuraciones según el criterio de optimización C (S). F es el espacio de configuración. C es la función objetivo. Ese
la formalización es bastante general, obviamente volveremos a este modelo adoptando las nomenclaturas clásicas
para configuraciones S (también llamadas soluciones viables) y F (espacio para soluciones viables).

Página 16

MODELADO DE PROBLEMAS 7

1.4 - CLASIFICACIÓN DEL MODELO


Los modelos se pueden construir bajo diferentes arquitecturas. Como hay muchos enfoques por
que podemos abordar el proceso de construcción del modelo, podemos distinguir varias clasificaciones
posible:

Clasificación según la naturaleza del modelo

La figura 1.4 presenta una clasificación con respecto a la naturaleza de los modelos:

Físicos
Hormigón
Geométrico

Modelos Matemáticos

Resumen Lógica

Esquemático

FIGURA 1.4 Una clasificación general de los modelos.

1.4.1 - Clasificación de las propiedades del modelo


Es posible abordar la clasificación de modelos por las propiedades que son capaces de
presente. Al respecto, según Ackoff (1971), se destacan los siguientes grupos:

- Modelos icónicos .

- Modelos analógicos .

- Modelos simbólicos .

En modelos icónicos, las propiedades relevantes de los objetos reales se representan como tales. En esto

https://translate.googleusercontent.com/translate_f 13/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
si es tipo de modelo, una de las diferencias más significativas entre la realidad y el modelo está en la escala.
Los modelos icónicos son imágenes de la realidad. Algunos ejemplos de este tipo de modelo son fotografías
y mapas. Los modelos icónicos son generalmente concretos y difíciles de manipular experimentalmente.
Los modelos analógicos utilizan un conjunto de propiedades inherentes al modelo para representar la
conjunto de propiedades de la realidad. Un ejemplo clásico es la sustitución de sistemas hidráulicos por
eléctrico. Los gráficos son modelos analógicos que utilizan cantidades geométricas y posiciones en el plano para
representan varias variables y sus relaciones, representando, en muchas situaciones, problemas de decisión.
Los modelos simbólicos utilizan letras, números y otros símbolos para representar las variables y sus relaciones.
ciones. En la mayoría de los casos, toman la forma de relaciones lógicas o matemáticas (ecuaciones). De una
En general, todos los modelos y, en particular, los modelos simbólicos se desarrollan de forma integrada.
por aproximaciones. Los diagramas de flujo y DFD (diagrama de flujo de datos) son modelos típicos
desarrollos simbólicos, generalmente en etapas de aproximación. Los modelos desarrollados en el primer
Las diferentes fases del modelado a menudo se denominan modelos conceptuales . En estos modelos conceptuales
las relaciones entre los elementos del sistema a menudo se describen cualitativamente. DFD y
Las placas de Petri son ejemplos de esto. La optimización tiene como objetivo, siempre que sea posible, construir modelos
simbólicos porque permiten el tratamiento cuantitativo del sistema y sus propiedades.

1.4.2 - Clasificación de variables controladas


Se puede hacer otra distinción importante entre los modelos a través de la naturaleza de las variables
desarrollado. Algunos modelos tienen variables controlables, otros no. En general, modelos con
Las variables controlables son explicativas y el resto descriptivas .

Página 17

8 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

1.4.3 - Clasificación de Emshoff (1970)

Según Emshoff, los modelos se pueden clasificar en:

4 Descripción.

4 físicos.

4 Simbólico.

4 Procesal.

Los modelos descriptivos se expresan en el lenguaje actual. Son muy limitados, ya que su
El método de predicción es interno.
Los modelos físicos van desde representaciones en miniatura para la organización del diseño hasta
los túneles de viento. Tienen un coste elevado y son muy específicos.
Los modelos procedimentales también pueden denominarse simulación.

1.5 - EL PROCESO DE MODELADO

1.5.1 - Pasos para modelar


Es posible, de forma muy general, resumir el proceso de modelado o construcción de modelos
desde una perspectiva operativa, los pasos sugeridos por el diagrama de flujo en la Figura 1.5.
Definir el problema es una de las fases más importantes del proceso e incluye una clara
concepción del desafío planteado. El problema debe traducirse en elementos tangibles que incluyan:

4 objetivos.

4 Variables de decisión o control.

4 niveles de detalle.

Definición del problema

Formulación y construcción
del modelo inicial

Simulación de modelos Modelo de validación

https://translate.googleusercontent.com/translate_f 14/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

Reformulación del modelo

Aplicación del modelo

FIGURA 1.5 El proceso de construcción del modelo.

Página 18

MODELADO DE PROBLEMAS 9

El secreto del éxito del modelo de optimización depende de la adecuación de su traducción, también
llamado "formulación". El término "formular", ampliamente utilizado para expresar el proyecto
proceso de construcción de modelos de optimización, trae consigo una enorme cantidad cuantitativa y matemática
ca . Por otro lado, la adecuación pretendida también depende de elementos que escapan al contenido
estrictamente técnico, que implica la percepción del diseñador del modelo (o equipo de diseño),
una facultad cognitiva de alto nivel. Las fórmulas o ecuaciones en el modelo no existen listas y
en la naturaleza, tienen que ser identificados o creados. Curiosamente, se obtiene la precisión de la traducción
mediante procesos menos rigurosos o conocidos, que involucran:

4 Intuición.

4 Experiencia.

4 Creatividad.

4 Poder de síntesis, etc.

De ahí que tengamos dos consecuencias inmediatas para el desarrollo de modelos:

4 Existe una enorme dificultad para modelar el proceso de formulación.

4 Existe una fuerte tendencia a considerar la actividad de formular un modelo como un arte .

El enfoque artístico del fenómeno de la formulación tiene sus justificaciones, pero puede traer
en sí mismo un elemento perverso: cambiar el enfoque del desarrollo de técnicas de modelado a un
contexto poco conocido y controlable. Si, por un lado, la construcción de un modelo es innegable
actividad subjetiva, que puede requerir características innatas del modelador, por otro lado, en la mayoría
En ocasiones, conjugar el verbo modelar requerirá un esfuerzo absolutamente técnico. A pesar del lado brillante
y casi místico, en la mayoría de los casos de la vida real, se conocerán los factores predominantes de elaboración
conocimientos y habilidades parroquiales, cuyo aprendizaje y desarrollo serán perfectamente
cáncer del individuo medio.
En la fase de formulación del modelo de optimización, los tipos de variables que se utilizarán en la
presentación, así como el nivel apropiado de agregación de estas variables. Todavía en la formulación,
Las restricciones del problema están representadas , tanto cuantitativas como lógicas. El modelo
Ser apropiado a la naturaleza de los datos de entrada y salida, además de poder expresar las funciones.
cambios de rendimiento que probablemente sean necesarios en el proceso de optimización. Las funciones de
el desempeño, como regla, se llamará funciones objetivas . La formulación se completará con el
establecimiento de hipótesis de representación que guiarán la elección y posible uso de
datos existentes y técnicas de solución (exactas, heurísticas, etc.) para el caso.
La construcción de modelos determina la inclusión de parámetros y constantes que serán responsables
definiendo y dimensionando las relaciones entre las variables del modelo ( constantes de similitud ).
En la fase de validación del modelo, es necesario comparar su comportamiento con la realidad y, si es necesario,
Actuar sobre estos elementos para aproximar el comportamiento del sistema modelo tanto como sea posible.
el del sistema real.

1.5.2 - Estándares para modelos de optimización de edificios


Aunque no consideramos que la técnica de construcción de modelos sea realmente un arte,
sería fácilmente posible reunir en un algoritmo específico y autónomo todos los pasos necesarios
para modelar un sistema genérico. Buscando el equilibrio entre arte y técnica, podemos
proponer una sistematización, si no completa, al menos parcial de este proceso. Según Ackoff
(1971), se pueden considerar cinco patrones de construcción de modelos:

Estándar 1 : cuando la estructura del sistema es lo suficientemente simple y evidente como para ser entendida por
inspección. En este caso, el modelo se puede construir fácilmente, lo que no significa que no pueda

https://translate.googleusercontent.com/translate_f 15/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

Página 19

10 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

Ser muy difícil o incluso imposible evaluar las variables no controladas y varios otros parámetros.
metros. El número de variables controladas también puede hacer imposible la solución práctica del proyecto.
blema. El patrón de modelado 1 se aplica claramente a los sistemas que pertenecen al plano de la mecánica
el iconógrafo de la Figura 1.3.

Patrón 2 : cuando la estructura del sistema es relativamente aparente, pero la representación simbólica no es tan aparente
cerrar . En esta situación, la búsqueda de un sistema analógico con una estructura conocida es una buena opción. O
Un sistema análogo puede ayudar a descubrir las propiedades del sistema en estudio.
Ejemplificamos la aplicación del patrón 2 en el caso del modelo de recocido simulado, en el que el máximo
Las funciones complejas se investigan mediante una analogía con el proceso de recocido.
ciertos materiales.

Patrón 3 : cuando la estructura del sistema no es aparente , sin embargo, un análisis estadístico del mismo puede
cumplir con lo deseado. En este caso, el sistema se considera una caja negra, en la que sabemos, con
seguridad, respuestas a ciertos estímulos.

Patrón 4 : cuando la estructura del sistema no es aparente y no es posible aislar los efectos de las distintas variables
mediante análisis estadístico . En este caso, una buena política será el diseño de experimentos, con el fin de
determinar las variables y correlaciones relevantes y reducir el caso al estándar 3.

Patrón 5 : cuando comprobamos las situaciones del patrón 4, pero los posibles experimentos en el modelo
se limitan al fin deseado. ¿Será el final de la línea? En este caso, todavía existen modelos de conflicto
y juegos de operaciones (véase Ackoff [1971]). Si eso todavía no es suficiente, entonces la dimensión creativa de
el modelado debe estar activado.

1.6 - MODELADO MATEMÁTICO

1.6.1 - Fundamentos del modelado matemático

Conceptos básicos

Las técnicas y algoritmos que abordaremos en el presente trabajo tienen como finalidad estructurar y resolver
los modelos cuantitativos que se pueden expresar matemáticamente. En esta rama del conocimiento
desarrollo humano, destaca la Investigación Operativa (PO), disciplina tradicional que aglutina a diferentes
versos de las técnicas más reconocidas de modelado matemático. Los modelos de PO son estructuralmente
lógicamente y apoyado por la herramienta matemática de representación, claramente
determinar las mejores condiciones operativas para los sistemas representados. los
Los principales modelos de PO se denominan Programación Matemática y constituyen uno de los más
variedades importantes de modelos cuantitativos. Inicialmente, es necesario deshacer una pequeña duda.
de lo que les puede pasar a los principiantes, especialmente debido al uso de la palabra "programación". Programa
La información aquí se entiende en el sentido de planificación. Aunque el término se ha utilizado recientemente
asociado con el proceso de comando computacional o la "programación" computacional, es
igualmente adecuado para expresar actividades genéricas de programación de actividades. Inevit-
Sin embargo, la programación matemática implicará programación computacional, ya que
que el número de variables de decisión y limitaciones es enorme en la práctica. Obviamente, esto se tomará
en cuenta las técnicas de modelado y solución empleadas. En el momento adecuado,
hagámoslo.
El campo de la Programación Matemática es enorme, y sus técnicas han sido consagradas en vista de su
gran utilidad en la resolución de problemas de optimización. Debido a las diversas peculiaridades
inherentes a los diferentes contextos de programación (planificación), los métodos de solución han sufrido
especializaciones y especializaciones. El proceso de modelado matemático en sí mismo varía poco;
sin embargo, las técnicas de solución terminaron agrupadas en varias subáreas como:

Página 20

MODELADO DE PROBLEMAS 11

Programación lineal

Un caso particular de modelos de programación en el que las variables son continuas y tienen
comportamiento lineal, tanto en relación a las restricciones como a la función objetivo. Caso extremadamente importante
importante debido a la eficiencia de los algoritmos de solución existentes y la posibilidad de transformar
Modelos de programación no lineal en modelos de programación lineal. La literatura en esta clase de
problemas es particularmente rico, incluidos los autores brasileños Barroso y Ellenrieder
(1971), Puccini (1975), Maculan y Pereira (1980), Humes y Humes (1987) y Gonzaga (1989).

https://translate.googleusercontent.com/translate_f 16/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

Programación no lineal

Un modelo de optimización es un problema de programación no lineal si muestra cualquier tipo


no linealidad, ya sea en la función objetivo o en alguna de sus restricciones. La introducción de
La proximidad es muy tratable en casos de convexidad, situación en la que se conservan propiedades importantes.
importante tanto desde la perspectiva de la programación matemática como de la teoría económica. En tales casos, algo-
ritmos eficientes pueden resolver grandes problemas reales, y el comportamiento descentralizado de
la maximización de beneficios está en consonancia con la maximización del beneficio social neto en el sector económico
preocupado.

Programación completa

Un modelo de optimización constituye un problema de programación entera si alguna variable no puede


asumir valores continuos, estando condicionado a asumir valores discretos. El requisito de que
Las variables deben ser enteras, por lo general, implica una mayor complejidad computacional que la
que surgen de situaciones de no linealidad de funciones. El libro de Maculan (1978) es una referencia tradicional
Literatura brasileña en esta área.
Cada tema relacionado desarrolla técnicas y modelos específicos para resolver una familia.
leer de problemas del mundo real. Muchas de estas técnicas y modelos encuentran enfoques similares
en otros campos del conocimiento. Un ejemplo de esto son algunas técnicas de búsqueda del Programa-
Metáforas de uso completo como la evolución genética o el enfriamiento de metales.

1.6.2 - Las situaciones de toma de decisiones y el contexto de la programación matemática


Sin duda, el estudio del diletantismo es atractivo para algunas personas, pero no para todas. En
De hecho, la mayoría de las personas se sienten más motivadas para estudiar cuando pueden ver que
El conocimiento adquirido será útil, marcará la diferencia en su vida. Imaginamos que este es el caso del lector. antes de
para investigar las elegantes y, eventualmente, laboriosas técnicas de Programación Matemática
es necesario establecer la convicción de su utilidad. En este punto, es interesante responder a la pregunta
siguiente pregunta:

¿En qué situaciones de la vida real podemos usar


Programación matemática?

La programación matemática, en la práctica, está fuertemente dirigida a apoyar la toma de decisiones en el


gestión de grandes sistemas, especialmente en lo que respecta al tratamiento de variables.
cuantificado. La técnica permite modelar las interrelaciones entre variables que son difíciles de
visible de forma intuitiva. Con el uso de medios automáticos de procesamiento de datos, los datos
Los así llamados programas de programación matemática pueden examinar numerosas configuraciones viables de
problema propuesto por el decisor y seleccionar, dentro de ciertos criterios, el “mejor”.
La toma de decisiones es un tema de gran importancia en el mundo actual. Las decisiones y acciones son el
producto final del trabajo de gerentes, ejecutivos, ingenieros y políticos. La toma de decisiones es el acto

Página 21

12 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

seleccionar, entre varias decisiones posibles, la más adecuada para lograr un determinado objetivo. Oración-
esta elección, generalmente, un elaborado proceso de:

4 Representación adecuada de las variables y restricciones del problema.

4 Estudio de alternativas viables.

4 Establecimiento de criterios de evaluación de estas alternativas.

4 Comparación de alternativas.

4 Análisis del impacto de la toma de decisiones.

Los pasos mencionados no se realizan fácilmente, ya que existen muchas razones y obstáculos
que obstruyen el proceso. Quizás el primer obstáculo sea la propia deficiencia de información.
medio ambiente e incertidumbre sobre el futuro. Otro paquete problemático radica en el
conflictos de interés y dificultad para estandarizar los valores de evaluación. Para superar estos desafíos,
Surgió la Teoría de la Decisión , una disciplina orientada a la toma de decisiones, a través de un enfoque
metodología sistemática, cuantitativa y normativa. Por tanto, la teoría de la decisión busca explicar el comportamiento
comportamiento del hombre racional, y tiene como objetivo el desarrollo de métodos y técnicas capaces de ayudar
tomadores de decisiones para tomar decisiones de manera eficiente y efectiva.
Podemos contextualizar la Teoría de la Decisión como una disciplina que incorpora la Teoría de la Utilidad.
de , teoría de la probabilidad e investigación operativa . La teoría de la utilidad tiene como objetivo estudiar un

https://translate.googleusercontent.com/translate_f 17/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
para la comparación de diferentes valores y riesgos, proporcionando conocimiento de preferencias
agentes económicos. La teoría de la probabilidad proporciona un mecanismo para lidiar con la incertidumbre o
con información incompleta. Finalmente, la Investigación Operativa tiene como objetivo el desarrollo de métodos
y técnicas para la resolución de problemas y la toma de decisiones. Los siguientes elementos son comunes
en la toma de decisiones, independientemente de la naturaleza o situación:

4 Tomador de decisiones : se refiere a la persona o grupo de personas responsables de elegir la estrategia


seguir.

4 Objetivo : es la especificación de lo que quieres lograr.

4 Escala de valor o preferencia : se refiere al criterio adoptado por el decisor para seleccionar
alternativa, midiendo la situación o valor de utilidad que el tomador de decisiones asocia con cada resultado.

4 Soluciones o estrategias alternativas : corresponden a las diferentes alternativas de acción que el


poder elegir.

4 Estado de naturaleza o medio ambiente : se refiere a la condición del medio ambiente en el que se toman las decisiones.
generalmente fuera del control de quien toma las decisiones.

4 Resultado o consecuencia: se refiere al resultado que puede ocurrir en la implementación de un


determinada estrategia en un determinado estado natural o medioambiental.

El objetivo principal de la toma de decisiones comerciales es maximizar la utilidad del tomador de decisiones,
en la práctica traducido maximizando los beneficios o minimizando los costes. Este objetivo se da en
Cualquiera de las siguientes situaciones en las que se puede contemplar el uso de un sistema de apoyo a la toma de decisiones
decisión:

Situación de certeza : donde tienes información completa, conociendo a priori el resultado asociado
cada acción. Esta situación suele estar indicada para el uso de técnicas de programación matemática.

Situación de riesgo o incertidumbre : donde hay información parcial, sabiendo que para cada acción
Pueden resultar dos o más consecuencias, cada una asociada con un estado de naturaleza cuya probabilidad
se conoce la estabilidad. La complejidad computacional impuesta por estos modelos puede inducirnos
el uso de métodos heurísticos, en detrimento del ideal de optimización.

Página 22

MODELADO DE PROBLEMAS 13

Situación de conflicto : es aquella en la que el estado de naturaleza es reemplazado por un oponente racional que
tiene como objetivo, al mismo tiempo, maximizar su utilidad y minimizar la utilidad del oponente. Enchufe
en situaciones de conflicto se estudia en Teoría de Juegos .

La programación matemática generalmente apoya la investigación operativa en su contexto de actividad.


perro. En general, podemos decir que la contribución de la Programación Matemática dentro del
Modelar y resolver problemas de decisión se dirige preferentemente a situaciones de certeza.
permitiendo, en casos reales:

4 Establecer mejoras medibles en el funcionamiento del sistema.

4 Automatizar procesos e identificar cuellos de botella operativos.

4 Proporcionarpuntos de referencia para el análisis y la evaluación de la adecuación de los planes maestros y


planes operacionales.

4 Asistir en la toma de decisiones sobre las necesidades de ampliar instalaciones o implementar


nuevas infraestructuras.

4 Desarrollar análisis comparativos del desempeño operativo.

4 Determinarvalores de referencia para los diferentes productos en diferentes etapas de la cadena de suministro.
producción, procesamiento, almacenamiento y transporte.

Como veremos en el transcurso de este trabajo, la Programación Matemática puede ser útil en casi cualquier
áreas de actividades productivas. En este punto, podemos completar la presentación del
gran marco que enmarca el proceso de modelado, abordando la dimensión del flujo de información
ciones que impregna la actividad. La figura 1.6 será útil a este respecto. El esquema complementa el diagrama de flujo
Figura 1.5, en la medida en que detalla la interrelación entre el desarrollo del modelo y el proceso
desarrollo cognitivo del modelador.
La fase de adquisición de conocimientos sobre el sistema suele iniciarse mediante un enfoque
aproximación analítica. El sistema se examina y, por regla general, se descompone en una red de relaciones.
causa x efecto para que su arquitectura y desempeño puedan ser entendidos y justificados. Después del análisis
si, le corresponde al modelador identificar las partes más importantes y significativas del sistema, elaborando,
para el caso, una representación simplificada y eficiente. El proceso de síntesis avanza hacia
verso al análisis, reorganizando las partes ya analizadas anteriormente sólo ahora en un nuevo
estructura, la del modelo. La síntesis se elabora sobre una representación tentativa que se adapta
https://translate.googleusercontent.com/translate_f 18/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
en la medida de su construcción. Esta es una etapa inexacta, considerada por algunos como

Síntesis

Descomposición
Sistema real

Dado Información del contacto


Aplicación del modelo

Retroalimentación

Consistencia

FIGURA 1.6 Modelado matemático.

Página 23

14 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

como arte , lo que da como resultado un modelo prototipo. Completado el diseño del modelo, debe ser probado
junto con el problema real. La fase de confrontación entre el modelo y el sistema representado también es
nominado para validación , y su aplicación prospectiva de simulación (ver Figura 1.5). Como regla general, la
La validación requiere un procedimiento iterativo que refina gradualmente el ajuste entre el modelo y
la realidad. La base de la validación es el funcionamiento del modelo cuando se alimenta con datos reales y
su comparación con el rendimiento del sistema original. En la mayoría de las ocasiones, esto es posible
hecho, pero no siempre. La operación de retroalimentación o retroalimentación en la Figura 1.6 representa este proceso
ajuste iterativo (ver también paso de reformulación del modelo ), observado bajo la cara de la interferencia
consolidar la información y transformarla en conocimiento.

1.6.3 - Características de los modelos de programación matemática

Dado que el proceso de modelado depende del espíritu creativo del hombre, es posible que no podamos
definiendo con claridad los límites de los modelos de Programación Matemática y sus aplicaciones. A pie-
Como resultado, podría decirse que están más calificados para abordar el contexto tecnológico (lo que sugiere
uso de variables numéricas) dentro de decisiones en situaciones de certeza. Genéricamente, podríamos
digamos que su trabajo clásico sería:

Asignar de manera eficiente recursos limitados que puedan


ser peleado por actividades alternativas

En modelos matemáticos, la representación de un sistema dado generalmente se realiza mediante


un conjunto de ecuaciones o expresiones matemáticas. Si hay n decisiones cuantificables por tomar
entonces se puede asociar una variable del modelo a cada decisión,
variable de decisión única , cuyos valores debe determinar el propio modelo. Simbólicamente, las variables
Los niveles de decisión están representados por letras minúsculas con índices como: x i , i = 1, 2, ..., n .
Para expresar la medida de efectividad buscada, generalmente una función numérica de las variables de
la decisión está estructurada. Esta función z = f ( x i , ...., x n ) generalmente se denomina función objetivo . Con-
El comportamiento matemático de esta función puede ser lo más variado posible. En la programación lineal este
función y todas las restricciones impuestas a las variables son expresiones lineales.
La limitación de recursos puede traducirse en el modelo a través de restricciones en los valores de
que se puede expresar matemáticamente usando ecuaciones y desigualdades .
Podemos resumir sucintamente los pasos del proceso de análisis cuantitativo como se expresa
en la Figura 1.7:

Formulación de Construcción de Ejecución de Implementación y


problema Modelo Reseñas Utilizar

FIGURA 1.7 Flujo de análisis cuantitativo.

Como modelo complejo, por regla general, no se puede elaborar en un solo paso, las características
Las fases descritas en la Figura 1.7 son:
La etapa de formular o traducir las condiciones del problema al contexto del modelado:

4 La definición de controlable (decisión o control) y no controlable (externo o

https://translate.googleusercontent.com/translate_f 19/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
estado).

4 La elaboración de la función objetivo y el criterio de optimización.

4 La formalización de las restricciones del modelo.

Página 24

MODELADO DE PROBLEMAS 15

La etapa de construcción del modelo incluye:

4 La elaboración de la estructura de entrada y salida de información.

4 Las fórmulas interrelacionadas.

4 Horizontes de tiempo.

La etapa de ejecución del análisis comprende:

4 Análisis de la sensibilidad de la solución.

4 Encuesta de exactitud de los datos.

4 Estudio de estabilidad computacional.

4 Levantamiento de las demás especificaciones del modelo.

La etapa de implementación de los resultados y actualización del modelo comprende:

4 Un gran proceso de retroalimentación pasando por los pasos anteriores, experimentando el uso del modelo en el
sistema de producción o prestación de servicios.

Un modelo creado como se describe anteriormente también se denomina modelo de optimización.


ción . Es interesante notar que los modelos de optimización , porque tienen como objetivo reducir el contexto
en busca de simplificación, se puede caracterizar por las siguientes dicotomías:

Û
Determinista Probabilístico
Restringido
Û Irrestricto
Monocriter Û Multicriterio
Continuo Û Discreto
Unidecisor Û Varios tomadores de decisiones
Univariante Û Multivariante
Lineal Û No lineal
Uniobjetivo Û Multiobjetivo

1.6.4 - Dificultades de representación en el modelado matemático


La dificultad de formular un problema es similar a la de representar adecuadamente un sistema de
mundo real. El primer nivel de dificultad concierne al modelador (o al equipo) y está asociado con
su capacidad para percibir las relaciones entre causa y efecto y encontrar las causas fundamentales
tal. Un segundo nivel abarca el dominio de las técnicas para representar el fenómeno en un contexto.
diferente del original, el contexto del modelo. Solo para presentar el tema, plantearemos algunos
modelado modelado:

Dificultad con los instrumentos de representación


No todos los fenómenos pueden expresarse en términos de lógica convencional, o pueden tener su
comportamiento representado por variables de decisión. Eventualmente será necesario identificar
ficación o la creación de variables "artificiales" o lógicas para la compatibilidad y consistencia de la
presentación.

Página 25

https://translate.googleusercontent.com/translate_f 20/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
dieciséisOPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

Dificultad ante el grado de incertidumbre en el comportamiento de las variables


Como vimos anteriormente, existen situaciones de riesgo y conflicto que hacen difícil predecir la
comportamiento de las variables en el futuro, incluso cuando están bien definidas. Algunos fenomenos
Sin embargo, pueden exceder los límites de riesgo y comportarse de manera impredecible por naturaleza.
orar. Estos casos se estudian actualmente dentro de la Teoría del Caos . En algunos casos, solo parte de la
Este problema tiene esta característica, que representa un desafío aún mayor para las hipótesis simples.
amplificando.

Dificultad con la herramienta de solución


Los modelos deben ser implementables. Actualmente, la herramienta de consenso para el análisis cuantitativo
es la computadora. A pesar de sus extraordinarios recursos, en algunas situaciones, dada la naturaleza
variables de decisión y su interrelación, incluso puede ser inadecuado para representar
necesario. Desafortunadamente, este instrumento puede imponer severas restricciones a las conclusiones teóricas de
rendimiento debido, por ejemplo, a la degeneración numérica. La figura 1.8 resume las brechas
acumulados en las etapas de traducción y construcción de un modelo de optimización.

Hiato lógico Herramientas de pausa

Problema Modelo Modelo


Real Lógico Computacional

FIGURA 1.8 Pasos para traducir un modelo matemático.

Las dificultades enumeradas anteriormente implican un número significativo de situaciones, que el


el modelo termina alejándose del ideal destinado a la optimización, o porque se vuelve demasiado complejo,
o el estado de la técnica no cuenta con las técnicas exactas requeridas. En ese caso, los modelos pueden
resuelto por técnicas no necesariamente exactas llamadas heurísticas. De esa forma,
una técnica heurística admite sacrificar el ideal de perfección sugerido por la optimización a cambio de
mejorar la eficiencia de un proceso de búsqueda. Recalcamos que esta alternativa es razonable solo
cuando no hay otra alternativa computacionalmente aceptable, o cuando el modelo en sí ya ha
renunció al ideal de perfección.
Murphy (1997) presenta una interesante revisión y taxonomía de la evolución del Pro-
Programación lineal. Es un texto de referencia para quienes quieran comenzar a profundizar
tema.

1.6.5 - Otras técnicas para la solución de sistemas de toma de decisiones


En condiciones donde el ideal de optimización se vuelve casi irrazonable, otros enfoques
son bastante competitivos. Entre ellos destacaremos: Simulación (SM) e Inteligencia Artificial
cial (IA).

Simulación
El enfoque de simulación se aplica cuando se presentan situaciones de incertidumbre o la complejidad del propio sistema
Este tema dificulta la comprensión de la ecuación exacta del sistema, o cuando la magnitud
el modelo de optimización lo hace computacionalmente inviable. Los modelos de simulación contorneados
estas dificultades con un uso más intensivo de datos estadísticos y con un mayor esfuerzo

Página 26

MODELADO DE PROBLEMAS 17

de validación del modelo. La desventaja de este enfoque es la necesidad de un mayor esfuerzo


expertos en identificar soluciones no examinadas por el modelo.

Inteligencia artificial

La Inteligencia Artificial (IA) es la rama de la tecnología de la información que se ocupa de la automatización del comportamiento intelectual.
gente. En su surgimiento, las expectativas de la disciplina abarcaron una rama del conocimiento que buscaba
sería posible retratar la mente usando simulaciones por computadora (ver LeDoux [1996]). Los primeros problemas
pero en IA involucraron juegos (el ajedrez sobresalió inicialmente) y pruebas automáticas de teoremas, porque
estos problemas implican claramente funciones cognitivas superiores. Esta tradición construyó un puente entre

https://translate.googleusercontent.com/translate_f 21/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
entre
lógicaIA y PO, tanto porcompleta
y programación el carácter lógico-matemático
(que se analizarán en eldecapítulo
estos primeros
5 de esteproblemas, como
libro). Otro porenlas
punto relaciones
común dijo entre
respecto al uso inevitable de las entonces emergentes técnicas de búsqueda de gráficos. Desde entonces,
que la inteligencia también requiere la manipulación de una base de conocimientos conveniente y que no
La computadora sería lo suficientemente rápida para superar la explosión combinatoria que resultó de estos problemas.
Esta realidad volvió a unir AI y PO en la búsqueda de algoritmos eficientes para procesar el conocimiento.
cemento. Además de varias cuestiones filosóficas que involucran la definición misma de inteligencia, la conciencia
etc., el área de la IA es rica en formalismos lógico-matemáticos que involucran representación y procesamiento
del conocimiento. El fundamento filosófico de la disciplina se desarrolló principalmente asociado con el
(ver Neisser ([1976])). Las técnicas de IA y PO se complementan en varios contextos, siendo
cantar el uso, por ambos, de técnicas heurísticas.
Quizás uno de los mayores obstáculos para la integración entre las técnicas de PO e IA radica en las diferencias
diferencias conceptuales entre los paradigmas utilizados para la representación del conocimiento en cada uno de los
enfoques. El iconógrafo de la Figura 1.3, propuesto por Suntherland (1975), puede ayudar en esta comprensión
sion. Los modelos de optimización son menos sensibles que los modelos de IA con respecto a las variaciones en el eje
dominio y más sensible en relación con el eje dinámico. Por otro lado, poder retratar
procesos mentales de toma de decisiones, incluso en consonancia con el funcionalismo, el aspecto de la redundancia
La arquitectura neuronal del cerebro es difícil de modelar en ambas técnicas. Trabajo moderno
en la línea de la inteligencia computacional indican nuevos paradigmas de representación del conocimiento
ment, como el holográfico. También insinúa la inclusión de enfoques filosóficos
más amplio que el propuesto por el funcionalismo (ver Emery [1969], Pribram [1976] y Teuber [1972],
[1974]).

1.7 - EL PAPEL DE LOS MODELOS CUANTITATIVOS DENTRO DE LA GESTIÓN MODERNA


A pesar del contenido predominantemente especializado y técnico de este libro, creemos que es oportuno
abordar, aunque sea rápidamente, el contexto más amplio en el que se utilizará esta tecnología sofisticada.
da. De hecho, esta es una tendencia cada vez más visible en la ciencia, su cuestionamiento a favor del fin
más grande es el hombre y su calidad de vida. Creemos que es fundamental concienciar a
la importancia creciente del uso intensivo de herramientas cuantitativas dentro de los sistemas de producción
eventos actuales, así como alertarlos sobre sus límites y desafíos futuros.

1.7.1 - El problema de la gestión en un mundo en crisis

El debate sobre la búsqueda de la calidad y la productividad como estrategia para incrementar la competitividad es,
hoy, un punto central para la gestión. El mundo globalizado está sufriendo una extraordinaria
cambiando hacia la expansión de la conciencia de los clientes. Los cambios actuales son tan sustanciales
que algunas empresas incluso cuestionan la naturaleza de sus problemas. Comportamiento humano
hermano, presiones sociales, injerencia estatal, ecología, etc. terminó transformando el medio ambiente
organizacional en una sopa de letras. Es fundamental para quienes pretenden invertir en una herramienta
más sofisticado para que el apoyo a la toma de decisiones pueda responder bien las siguientes preguntas:

Página 27

18 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

4 ¿Cómo podemos estar seguros de que de hecho estaremos lidiando con "el problema principal" cuando
¿Utilizamos modelos cuantitativos para resolver nuestros casos?

4 Los modelos cuantitativos no se "simplificarían" ni "eliminarían" demasiado del complejo e incierto


realidad organizacional?

Este punto es tan grave que usaremos las palabras del filósofo Karl R. Popper para resumirlo:

"Para entender un problema , tenemos que intentar al menos algunos


las soluciones más obvias y descubre que fallan;
luego, redescubrimos que hay una dificultad, un problema "
Karl R. Popper

Para poder responder sinceramente a las preguntas previamente respondidas y comprender


que en la práctica la teoría es diferente especialmente en el caso de modelos incompletos o mal formulados , es indispensable
pensar en desarrollar la visión estratégica del papel de los modelos cuantitativos dentro del proceso de
apoyo a la toma de decisiones. En la realidad práctica, una empresa tiene como objetivo:

4 Proporcionar empleo eficiente a los factores de producción.

4 Proporcionar un rendimiento justo de los factores de entrada.

4 Satisfacer las necesidades y expectativas de los clientes en bienes

https://translate.googleusercontent.com/translate_f 22/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
y servicios.

4 Proporcionar condiciones para satisfacer las necesidades


de los empleados.

4 Incrementar el bienestar de la sociedad.

En vista de un conjunto tan amplio de objetivos, es natural imponer el establecimiento de


prioridades. La búsqueda de la productividad, el énfasis en la optimización de tareas y el principio de maximizar
ción 2 no son atractores aleatorios. Las organizaciones son fenómenos en los que el esfuerzo por reducir la
La confiabilidad de las respuestas es una tarea crítica y, por lo tanto, requiere una atención y un esfuerzo considerables. El PRI-
la estabilidad a través de la estabilización del proceso y la previsibilidad termina dando como resultado una polarización natural
centrarse en la optimización de procesos. Por supuesto, debemos reconocer que hay otros importantes
aspectos a considerar para desarrollar una buena estrategia de gestión. No es solo ideal
Los problemas cuantitativos se agotan, el hombre es el centro. Es exactamente reconocer esto que
podemos comprender mejor la importancia de apoyar las técnicas de OP en la toma de decisiones.
Un buen gerente debe ser capaz de comprender que no todo se puede cuantificar y que su
la primera prioridad es, de hecho, el ser humano. Un buen gerente debe saber que es el material humano lo que
la diferencia; sin embargo, también debes saber que para conocer la dimensión humana, tu forma de gestionar
la gestión debe equilibrar lo emocional con lo racional. Dominar la dimensión de la acción racional no es un
opción política o una buena peculiaridad personal , es en la actualidad algo absolutamente indispensable, un
obligación.
Es cierto que no es en la optimización de recursos donde se verá la supervivencia a largo plazo de la empresa.
garantizado, pero sin él la organización no tiene posibilidades en el futuro. El problema de la gestión

dos
Este principio establece que las organizaciones siempre buscarán adquirir más de los recursos que les proporcionarán energía.
invertido en producción. Esto da como resultado fusiones y crecimiento de funciones en un intento de controlar el entorno externo.

Página 28

MODELADO DE PROBLEMAS 19

en un mundo globalizado ha cambiado su eje competitivo hacia la creatividad y la motivación humana


mana, esto es indiscutible, pero siempre es necesario advertir que sin hacer las cosas bien , no hay forma de hacer las cosas
ciertas formas económicamente aceptables. Sin perseguir el ideal de optimización, no podemos crear
una plataforma firme en la que se sustenta la creatividad y la visión empresarial.

1.7.2 - El dilema de la competitividad ´Vividez

Las reglas del éxito de la década de 1980 apuntaban a un binomio que se denominaba convencionalmente
nar: calidad y productividad. Muchos de nosotros hoy decimos automáticamente esas palabras cuando
pensamos en competitividad. En el momento en que se difundió este binomio, se vio la calidad
como elemento adjetivo del producto y factor de atracción y valor. Productividad, por otro lado
Por un lado, abordaría el aspecto de la salud organizacional. En resumen, podríamos decir que la productividad
consistiría en hacer lo correcto , mientras que la calidad en hacer lo correcto.
Desde este punto de vista, los modelos cuantitativos estarían más fuertemente asociados con el aspecto de la productividad.
que la calidad. Pensando así, algunos incluso estarían tentados a arriesgarse a lo viejo y equivocado.
que "la calidad cuesta más". Edward Deming, con su extraordinaria visión, ya en
La década de 1970 sugirió la insuficiencia de la dicotomía calidad-productividad. El problema de
mental es que suelen acabar interfiriendo con la realidad que intentaban comprender. Un
La visión simplista de la organización contribuye a la creación de una realidad igualmente simplista. Una compañía
El pensamiento de presa sólo desde un punto de vista acaba en realidad reducido a eso. Ni máquina ni
caridad, una empresa es casi un organismo vivo que debería ser capaz de equilibrar
la sustancia técnica y la excelencia en la acción de forma sana, con el ser humano motivado por tener
sus necesidades y expectativas respetadas en la sociedad capitalina. Encontrarás el equilibrio.
El problema actual es que las empresas deben adaptarse cada vez más para sobrevivir.
ver en un mundo cambiante. Ser adaptativo no es una tarea fácil.

“La adaptación es un concepto especial y costoso, que


debe usarse solo cuando sea necesario ".
GC Willians

Hoy en día es importante saber cuál es la mejor estrategia a adoptar para conciliar las respuestas
las respuestas de las empresas a los cambios constantes en el entorno organizacional. En esta búsqueda de respuestas
Al menos cuatro son los factores a tener en cuenta:

Previsibilidad de cambios

https://translate.googleusercontent.com/translate_f 23/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

Los cambios impredecibles generalmente no tienen respuestas predefinidas en los esquemas organizacionales.
En este caso, no hay nada que optimizar , hay algo que crear .

Complejidad de los esquemas disponibles

Cuanto más pequeños y simples sean los esquemas de la organización en el momento de la crisis, menos posibilidades hay
¿Tendrá que tener éxito con el uso de una sola estrategia de
(estrategia ofensiva).

Tiempo máximo de respuesta

Las estrategias requieren tiempo para implementarse. La estrategia defensiva es más rápida que
profunda reestructuración del tejido organizativo (estrategia evolutiva). La optimización proporciona
mejor desempeño organizacional.

Página 29

20 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

Naturaleza de los cambios ambientales que se han producido

Cuanto más profundos sean los cambios, las respuestas menos apropiadas basadas en pequeños
reestructuración.

La estrategia de vivacidad para la supervivencia

Si hablamos de supervivencia frente a la competencia vía competitividad, estamos considerando que la


Se fijarán las reglas que definirán qué es la competitividad, lo que significa que estamos hablando de
competencia leal, libre mercado, etc. Es dentro de este tipo de competencia que el modelo biológico sugiere
Estrategias de adaptación defensiva. En la realidad actual del mundo de los negocios, com-
La petición biológica tradicional es cada vez más rara. Como la ocurrencia de cambios ambientales
en la actualidad no es una hipótesis posible sino un hecho esperado, una conclusión importante puede
alcanzarse en relación con las conocidas estrategias para incrementar la competitividad:

Estrategias que apuestan por la competitividad como solución


apuestan a que el enfoque adaptativo defensivo es
el camino para reducir las amenazas organizacionales.

Como no todas las situaciones de cambio son iguales, vale la pena pensar en la posibilidad de otras
patrones de respuesta. Usar la misma solución para diferentes problemas puede no ser una buena idea. Si el
cambios ambientales, parece prudente utilizar una estrategia dirigida a fuera de la organización, es decir,
una estrategia ofensiva. Esto implicaría pensar en la “seguridad” organizacional teniendo en cuenta
términos como:

4 Promover tantos esquemas diferentes como sea posible en competencia dentro de la organización.

4 Flexibilidad para adoptar los nuevos esquemas.

4 Buena salud organizacional para resistir el estrés constante de la reestructuración.

La supervivencia es un resultado intrincado de una red de relaciones. Desde la perspectiva de la supervivencia


a los cambios ambientales, lo deseable no es simplemente una capacidad competitiva relativa
pero, en última instancia, una habilidad definida para adaptarse más profundo o de segundo orden:
la vivacidad .

La vivacidad organizacional puede entenderse como la


resultado final obtenido por un sano, entrenado y
adaptado a su entorno.

El poder de la vivacidad es un resultado complejo obtenido de la interacción de los innumerables actuadores


del ecosistema organizacional. Un detalle muy interesante de vivacidad es que representa,
en definitiva, una estrategia amplia de cambio y, en consecuencia, generalista. Con
tiene una buena capacidad para resistir la competencia siempre que el escenario de cambio sea amplio.
o intensa, incluida la innovación (Porter [1990]). Buscando vivacidad, el organismo organizativo
nal se prepara para resistir fuertes cambios ambientales y ser competitivo para la innovación. Mediante
estrategias defensivas, la organización se prepara para ser competitiva mediante la optimización de
marco antiguo.
Un aspecto importante es darse cuenta de que las necesidades y expectativas de una organización razonablemente
complejo, debe abordar ambas amenazas: la competencia y el cambio ambiental.

https://translate.googleusercontent.com/translate_f 24/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
En este sentido, la preservación de la vivacidad parece ser una necesidad más urgente que el enfoque
único en la competencia por tres razones:

Página 30

MODELADO DE PROBLEMAS 21

4 La viveza trae automáticamente consigo un grado razonable de competitividad .

4 Independientemente de la dirección del cambio. Es una disposición general para la supervivencia.


invirtiendo en el propio cuerpo.

4 Debido a que está fuertemente asociado con elementos internos, tiene un impacto directo sobre ellos. La palabra
La competitividad puede sonar como una abstracción para el tejido organizacional, sin embargo la salud
de la entidad y sus intercambios con el medio ambiente tienen un impacto directo en las personas.

Otra forma de entender la importancia de la vivacidad como habilidad fundamental para el social
brevedad es darse cuenta de que la esencia de los movimientos hacia la autoadaptación está mucho más asociada
la búsqueda de objetivos para compensar los desequilibrios y armonizar con el medio ambiente,
que el ejercicio del poder en beneficio propio. Edward Deming (Deming [1990]) notó esto
verdad y por tanto advirtió que, en general, la competencia exacerbada es, contraria a lo
mucha gente piensa, altamente dañino tanto para la cultura (Judd [1995] y Winder [1994]) como para la
mejorando un contexto. La lógica de "razonar al ganador" crea perversos desequilibrios que
será en última instancia responsable de reducir la vivacidad de todos los participantes en el contexto. La lógica
la armonía y el autoajuste enfatizan que no es suficiente simplemente sobrevivir . La supervivencia es un
capacidad para ejercitarse de forma continua y sostenible. La lógica de la lucha por un lugar al sol o
La consecución de los primeros puestos puede no incluir los principales elementos de sostenibilidad.
desde esa misma posición. Optimizando el cuerpo organizativo para una lucha encarnizada en el presente, la gestión
puede estar eliminando la posibilidad de la continuidad de este organismo altamente especializado
cuando cambian las reglas. El propósito de la armonización es más amplio y poderoso. Vivacidad como
La habilidad maestra está orientada a garantizar el desempeño futuro. No sirve de nada ganar una pelea
usted y pierde la guerra.

La capacidad de vencer a la competencia no mantiene la


vivacidad en el tiempo.

La vivacidad incluye preservar la capacidad de una organización para responder a las incertidumbres.
realidad fluida y representa una etapa más allá del dominio del mercado, el beneficio neto o
productividad. El truco está asociado con identificar los atractores más adecuados y desarrollar
interrupción y reestructuración de los “esquemas” de respuesta. Está en la interacción con el
medio ambiente y sus peculiaridades esa es la respuesta. Pero hablando de seguridad, ¿cuánto tiempo estás seguro?
"Seguro hasta el próximo cambio ..."
Volviendo al punto de debate: en el corazón del problema encontramos la necesidad de realizar una
Entidad casi viva por los caminos o desvíos de la realidad desnuda y cruda. En la periferia
necesitamos entender qué es fundamental y qué es accesorio en este proceso.
Cuando algo cambió en la Tierra y provocó la desaparición de los dinosaurios, ¿qué sucedió?
no fue un problema de competencia. Grandes o pequeños, carnívoros o herbívoros, después
de millones de años de éxito continuo ... todos murieron.

Lo que provocó la extinción de los dinosaurios no fue un


competencia fraticida. Posiblemente fue una sorpresa
cambio ambiental que los barrió de la faz de la Tierra.

Lo que pasa es que siempre que hay un cambio, alguien sabrá aprovechar el hecho y que
no es un problema si hay una guerra o no. La capacidad de aprovechar la situación.
depende de la capacidad de adaptación o incluso de la suerte. Tener éxito en un nuevo contexto es
completamente diferente de vencer al competidor dentro del contexto anterior. En el caso organizacional, el
El marketing desenfrenado prepara al organismo organizativo para el momento actual, pero acaba creando su mayor

Página 31

22 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

fragilidad futura: la falta de esquemas redundantes que puedan competir para ayudar en su futura adaptación ...

https://translate.googleusercontent.com/translate_f 25/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
y en algunas áreas, ahora parece ser tan o más importante que la amenaza de
competencia. Un buen modelo de diseño de gestión debe buscar un puesto que optimice todas las variables
riesgo y no solo los asociados con la supervivencia inmediata. Es necesario encontrar un puesto de
equilibrio entre la realización de potenciales adaptativos a través de la especialización y su preservación en
Bush generalista para tiempos futuros.

Vivacity representa una posición de especialización flexible.

Básicamente, el tema que estamos discutiendo está relacionado con dos estrategias de supervivencia.
con modelos mentales sutilmente diferentes. La estrategia de competitividad centra la atención en
Amenazas de competencia y depredadores. Su modelo mental es el de la confrontación y la conquista. La mitad
El ambiente se nota poco en los aspectos oportunistas y más percibido en los puntos amenazantes. A
Las técnicas de este modelo de diseño dan prioridad a la productividad y los impactos a corto y medio
término, ya que cada nuevo momento es una nueva batalla. La idea básica es que el futuro pertenece a quien sea
ganador en el presente . Su filosofía se podría resumir en dos pensamientos falaces:

4 Si no sobrevivimos hoy, no alcanzaremos el futuro.

4 Si siempre somos los primeros, siempre estaremos vivos.

La estrategia de vivacidad centra la atención en el ser humano y su adaptación al entorno.


tú. El impacto de las acciones organizacionales en el medio ambiente es uno de los factores fundamentales en la medición
esta adecuación. Es evidente que la amenaza de competencia se percibe como uno de los componentes
el mismo entorno, sin embargo, el modelo de respuesta no es necesariamente la confrontación
directo y ni siquiera exige la victoria. La estrategia tiene como objetivo armonizar con el medio ambiente y está dentro de este contexto
texto que los competidores serán considerados. En la mentalidad de vivacidad, el objetivo no es ser el primero
primero y siempre estar bien todo el tiempo. El objetivo no es ser el más grande o el mejor, sino ser
estoy bien. El objetivo no es conquistar a todos los clientes del mundo, sino a los clientes adecuados . No es necesario ser el
campeón en todas las competencias para lograr calidad de vida; por el contrario, el estrés de la lucha
paranoico vacía los laureles de la victoria y erradica la salud.
Este es uno de los paradigmas más dañinos que impone la mentalidad competitiva: el éxito sólo puede
se puede lograr después de ganar la guerra de competencia . Quizás la victoria sobre la competencia solo pueda
lograrse con una hermosa guerra, sin embargo, las encuestas de desempeño estadístico no permiten
afirmar que para lograr una vida larga, saludable y fructífera, alguien debe
Involúcrate y gana guerras. La historia de esta mentalidad parece estar llena de ganadores, pero ha
pocos supervivientes . Un estudio trivial nos muestra que los ganadores anteriores simplemente desaparecen
ram . Eran tan expertos en conquistar el mercado ... ¿y qué? Su único legado es la mentalidad que queda
petua, un modelo mental que capitaliza las glorias y transmite los fracasos a otros culpables . por suerte
no todo el mundo piensa que los ganadores tienen razón.

1.7.3 - Modelos cuantitativos y vivacidad

Como herramientas sofisticadas y poderosas, los modelos cuantitativos pueden


tomador de decisiones la expansión necesaria en su campo de visión. Las técnicas de optimización permiten
Mínimo:

4 Mayor conocimiento sobre el comportamiento del entorno organizacional.

4 Mayor conocimiento sobre la propia organización.

4 Anticipar impactos y simular políticas de actuación.

4 La economía de medios y recursos.

Página 32

MODELADO DE PROBLEMAS 23

Los modelos cuantitativos no pueden, por sí solos, hacer que una empresa tenga éxito en la tarea.
estar bien, pero evitar que las energías se gasten irracionalmente. Permitir al asegurado
decisión puede hacer el mejor uso posible de lo que tiene. Los modelos cuantitativos no
definir una estrategia para el futuro, pero es posible que pueda examinar numerosos escenarios y ayudar
el gerente para informar sus "sentimientos" de las posibilidades más probables. Es imposible para el tejido de órganos
lograr un nivel razonable de vivacidad trabajando lejos del mejor desempeño de
sus potenciales.
El papel de los modelos cuantitativos en la actualidad es proporcionar herramientas poderosas para ayudar
lleve al tomador de decisiones y protéjalo de errores evitables. Quizás una de las peores decisiones que alguien toma
actualmente puede tomar en el mundo empresarial si infrautilizar o ignorar el uso de las herramientas
cuantitativo, porque esa puede no ser la decisión de sus competidores o socios.

1.7.4 - Conclusión

https://translate.googleusercontent.com/translate_f 26/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
En el contexto descrito, en el que hay muchas dudas y pocas certezas, los modelos cuantitativos
Permitir la expansión de la capacidad para abordar racionalmente lo que se puede hacer. La mo-
Los datos cuantitativos son instrumentos poderosos para que el gerente expanda su sentido y su percepción.
concepto, ahorrando energía y aprovechando oportunidades. Finalmente:

Los modelos cuantitativos no toman decisiones,


pero pueden hacerlos mucho más claros y fáciles.

Página 33

2 MODELOS DE
PROGRAMACIÓN LINEAL

2.1 - MODELOS DE PROGRAMACIÓN LINEAL

2.1.1 - Características del modelo de programación lineal

Entre los varios modelos ya mencionados, centraremos nuestra atención inicialmente en la Programación
Información lineal (PL). Este modelo es básico para comprender todos los demás modelos del Programa.
Ción matemática. Los conceptos allí establecidos se extenderán a los demás, otorgando apoyo a los estudios.
de los más avanzados. Otra ventaja de este modelo es la extraordinaria eficiencia de los algoritmos
soluciones existentes, ofreciendo alta capacidad de cálculo y siendo fácilmente
https://translate.googleusercontent.com/translate_f 27/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
implementado incluso a través de hojas de cálculo y con la ayuda de microcomputadoras personales.
Los modelos de programación lineal son un tipo especial de modelo de optimización. por
que un sistema dado se puede representar a través de un modelo PL, debe tener
las siguientes características:

Proporcionalidad : la cantidad de recursos consumidos por una actividad determinada debe ser proporcional
nivel de esta actividad en la solución final del problema. Además, el costo de cada actividad se
proporcional al nivel de funcionamiento de la actividad.

No negatividad : siempre debe ser posible desarrollar una determinada actividad en cualquier nivel no negativo
y cualquier proporción de un recurso dado debe ser siempre utilizable.

Aditividad : el costo total es la suma de las parcelas asociadas a cada actividad.

Separabilidad : el costo específico (o consumo de recursos) se puede identificar por separado


operaciones de cada actividad.

Un modelo de programación lineal es un modelo de optimización matemática en el que todas las funciones
Las relaciones son lineales para la variable continua x .

Formulación algebraica general

Podemos formular en general el problema de programación lineal (PPL) de la siguiente manera:

Página 34

26 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

norte

Optimizar z = ∑ cjxj
j= 1

sujeto a:
norte

∑ a ij x j ³ b i i = 1, 2, ..., p
j= 1

norte
∑ a ij x j = b yo i = p + 1, p + 2,…, m
j= 1

x j ³ 0 , j = 1, 2, ..., q

x j Î Â, j = q + 1, q + 2, ..., n

Adoptaremos las siguientes notaciones:

M = {1, 2, ..., m }, el conjunto de índices de las restricciones del problema;


N = {1, 2, ..., n } el conjunto de índices de las variables.

M1ÌMyN1ÌN;

A = { a ij } ésima matriz de restricciones;


la j- ésima j- ésima columna de A ;
x = ( x j ), j Î N / vector columna de n componentes;
c = ( c j ), j Î N / vector lineal de n componentes;
d = ( d i ), i Î M / vector columna de m componentes.

El término optimizar se utiliza aquí para representar genéricamente las posibilidades de maximizar
o minimizar la función objetivo. El problema es que, dada la matriz A y los vectores b y c , la búsqueda de la
de variables continuas x que satisfaga el conjunto de restricciones y que optimice el valor del criterio z .

2.1.2 - Formulaciones equivalentes

Además de la forma mixta , hay dos formas diferentes de desarrollar una PPL:

Forma canónica

Optimizar z = cx

sujeto a:
https://translate.googleusercontent.com/translate_f 28/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
≤ obAx b
Hacha ≥

x³0

Forma estándar

Optimizar z = c x

sujeto a:
Ax = b
x³0
y b ³ 0 datos.

Página 35

MODELOS DE PROGRAMACIÓN LINEAL 27

Las formulaciones son absolutamente equivalentes porque a través de operaciones elementales podemos
transformarlos de acuerdo con la Figura 2.1.

Canónico Estándar

Mezclado

FIGURA 2.1 Transformaciones de formulaciones.

Operaciones elementales
El mismo modelo PL, compuesto por el conjunto de ecuaciones presentado anteriormente, puede,
sin pérdida alguna para sus propiedades matemáticas, para ser reescrito en cada una de las formas básicas
cas. Este proceso de traducción se realiza mediante las siguientes operaciones elementales:

Operación 1 : cambio en el criterio de optimización, es decir, transformación de maximización a minimización


ción y viceversa. Este cambio se puede realizar mediante la siguiente propiedad:

Maximizar ( f ( x )) corresponde a Minimizar (- f ( x )) y


Minimizar ( f ( x )) corresponde a Maximizar (- f ( x )).

Operación 2 : transformación de una variable libre ( x j Î Â), en una variable no negativa. En este caso, el cambio
La danza requerirá reemplazar la variable transformadora con dos variables auxiliares, las cuales
res o igual a cero, pero cuya suma es igual a la variable original, es decir:

1 dos 1 dos
xn=x -
norte X nortey x ≥
norte
≥ 0
0 , X norte

Operación 3 : transformar desigualdades en igualdades y viceversa. En esta situación, tenemos dos


examinar:

4 Caso de transformación de restricciones menores o iguales en restricciones de igualdad

Suponiendo la siguiente restricción:

x 1 + x 2 +… + x n £ b

Para transformarlo en una restricción de igualdad, podemos introducir una variable de holgura x n +1 ca-
paz de “completar” la desigualdad, que permite representar la restricción de la siguiente manera:

x 1 + x 2 +… + x n + x n +1 = b , x n +1 ³ 0

4 Caso de transformación de restricciones mayores o iguales a restricciones de igualdad

Suponiendo la siguiente restricción:

x 1 + x 2 +… + x n ³ b

https://translate.googleusercontent.com/translate_f 29/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

Página 36

28 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

Para transformarlo en una restricción de igualdad, podemos introducir una variable de holgura x n +1
con un coeficiente negativo capaz de “completar” la desigualdad, comenzando a representar la restricción de
como sigue:

x 1 + x 2 +… + x n - x n +1 = b , x n +1 ³ 0

2.2 - PROBLEMAS DE MODELADO MEDIANTE PROGRAMACIÓN LINEAL

2.2.1 - Pasos para formular una PPL

Podemos desglosar el proceso de organización de un modelo de programación lineal en los siguientes


etapas:

4 Definición de actividades
Tras analizar el problema, se definen las actividades que lo componen. Generalmente asociado
se debe adoptar una unidad de medida para cada actividad.

4 Definición de recursos

Considerando los insumos disponibles dentro de cada actividad, los recursos que
se utilizan y producen en cada uno.

4 Cálculo de coeficientes insumo / producción

Es fundamental establecer claramente cómo se relacionan las actividades y los recursos en términos de
recursos necesarios por unidad de actividad producida.

4 Determinación de condiciones externas

Considerando que los recursos son limitados, es necesario determinar la cantidad de cada recurso disponible
disponible para el proceso modelado. Estas son las llamadas condiciones externas del modelo.

4 Formalización del modelo

Consiste en asociar cantidades no negativas x 1 , x 2 , ..., x n a cada una de las actividades, escribiendo el
equilibrar ecuaciones e indicar el uso de cada recurso.

Para ejemplificar el proceso descrito anteriormente, ahora presentaremos una serie de ejemplos.
formulación de modelos de programación lineal (PL). Estos problemas de formulación presentan
Presentan pequeñas dificultades de traducción y tienen como objetivo ejemplificar el proceso de identificación de variables.
y constitución de la estructura del programa. Al examinar las formulaciones propuestas, puede
comprenderá los matices básicos del modelado matemático. En el lado izquierdo de cada
formulación sugeriremos un icono de acuerdo con la siguiente escala:

J - fácil
K - pequeño grado de dificultad
L - grado de dificultad razonable
M - difícil
N - desafío

lo cual estará asociado a su dificultad de elaboración. Es una graduación subjetiva que apunta solo a
para permitir orientación al lector. En la Sección 2.2.2, ejemplificamos modelos PL en los que todos
Las variables son continuas, lo que facilita el cálculo del óptimo. En la Sección 2.2.3, presentamos ejemplos donde
las variables completas se pueden aproximar mediante valores continuos. Finalmente, en la Sección 2.2.4, mostramos
ejemplos donde esta aproximación no es válida, resultando en los modelos de programación lineal entera,
de mucha mayor dificultad computacional.

Página 37

MODELOS DE PROGRAMACIÓN LINEAL 29

2.2.2 - Ejemplos de modelado continuo de problemas de PL

1 - El problema de las aleaciones metálicas J


Un metalúrgico quiere maximizar sus ingresos brutos . La tabla 2.1 ilustra la proporción de cada material
https://translate.googleusercontent.com/translate_f 30/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
en la mezcla para obtener las aleaciones que se pueden fabricar. El precio se cotiza en reales por tonelada.
de la aleación fabricada. También en toneladas están las restricciones sobre la disponibilidad de material.
reír a carcajadas. Formular el modelo de programación matemática.

TABLA 2.1 EJEMPLO 1 RESTRICCIONES / COSTOS

Liga baja especial Liga Especial de Disponibilidad


Resistencia (*) Alta resistencia (*) de materia prima

Cobre 0,5 0,2 16 toneladas

Zinc 0,25 0,3 11 toneladas

Plomo 0,25 0,5 15 toneladas

Precio de venta Tonelada de mineral


R $ 3.000 R $ 5.000 (*)
(R $ por tonelada) Tonelada de aleación

Solución

El primer paso hacia la creación de un modelo de programación matemática generalmente se refiere


la definición de variables de decisión. Este paso es simple cuando la función objetivo y las restricciones
están directamente asociados con estas variables. En el ejemplo, el objetivo es maximizar los ingresos de un
producción cuyas cantidades relativas son programables . El problema se plantea exactamente
en la planificación de estas cantidades; por tanto, nada más natural que las variables del programa
el cuantitativo de las aleaciones producidas.

1. Elección de la variable de decisión


x i º cantidad en toneladas producida de la aleación especial de baja resistencia ( i = 1) y la especial
alta resistencia ( i = 2).

Con las variables de decisión elegidas debemos expresar la función objetivo como una función
de estas variables:

2.Desarrollo de la función objetivo


z = Maximizar { f ( x ) = 3,000 x 1 + 5,000 x 2 }
Ingresos brutos en reales debido a la cantidad producida en toneladas de aleaciones especiales bajas y altas
alta resistencia.

Evidentemente, en programas lineales, las variables de decisión deben estar sujetas a limitaciones
tecnológico y / o económico. En el presente ejemplo, las restricciones a la producción de aleaciones están asociadas
a la disponibilidad de metales composicionales. En cuanto a cada metal hay un nivel máximo de stock
como máximo, tendremos tres restricciones de disponibilidad de material. Eventualmente, una restricción puede incluir
excluir más de un requisito de la declaración, otras veces un requisito puede necesitar varias respuestas
limitaciones tecnológicas a modelar.

3. Formulación de restricciones tecnológicas


a) Restricción asociada a la disponibilidad de cobre:

0,5 x 1 + 0,2 x 2 £ 16

Página 38

30 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

b) Restricción asociada a la disponibilidad de zinc:

0,25 x 1 + 0,3 x 2 £ 11

c) Restricción asociada a la disponibilidad de plomo:

0,25 x 1 + 0,5 x 2 £ 15

En la mayoría de los problemas reales, las variables solo pueden asumir valores nulos o no negativos. Son
ejemplos típicos de variables que incluyen peso, espacio, número de elementos, configuraciones, personas, etc.
Eventualmente podemos dar sentido a valores de tiempo negativos, unidades monetarias, etc. Por último,
análisis, sin embargo, los valores negativos de las variables se pueden eliminar por convenientes
formaciones de variables dentro de los modelos de Programación Matemática (ver Figura 2.1 y operación
elemental 2). Por tanto, trabajaremos con variables no negativas.

4. Restricciones de la no negatividad
x 1 ³ 0, x 2 ³ 0

https://translate.googleusercontent.com/translate_f 31/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
Finalmente llegando al problema completo:

Maximizar z = 3,000 x 1 + 5,000 x 2


sujeto a:
0,5 x 1 + 0,2 x 2 £ 16
0,25 x 1 + 0,3 x 2 £ 11
0,25 x 1 + 0,5 x 2 £ 15
x 1 ³ 0, x 2 ³ 0

2 - El problema de la dieta J
El objetivo del presente programa es determinar, en una dieta hipocalórica, las cantidades
ciertos alimentos que deben comerse a diario, de modo que ciertos
se cumplen a un costo mínimo. Hay varios problemas al abordar este tema, el presente
El ejemplo es uno de los más simples posibles.
Supongamos, por razones justificadas, que cierta dieta se restrinja a la leche desnatada,
ternera magra, carne de pescado y una ensalada de conocida composición. Sabiendo además que
Los requerimientos nutricionales se expresarán en términos de vitaminas A, C y D y estarán controlados por su
cantidades mínimas (en miligramos), ya que son indispensables para la preservación de la salud del
persona que se someterá a la dieta. La Tabla 2.2 resume la cantidad de cada vitamina en
disponibilidad en los alimentos y su necesidad diaria para la buena salud de una persona.

TABLA 2.2 RESTRICCIONES DE NUTRIENTES EN LA DIETA ALIMENTARIA DEL EJEMPLO 6

Requisito
Vitamina Leche (litro) Carne (kg) Pescado (kg) Ensalada (100g) Nutricional
Mínimo

LA 2 mg 2 mg 10 mg 20 mg 11 magnesio

C 50 mg 20 mg 10 mg 30 mg 70 magnesio

re 80 magnesio 70 magnesio 10 mg 80 magnesio 250 magnesio

Costo 2 reales 4 reales 1,5 reales 1 Real

Formular el programa para la optimización de los recursos involucrados:

Página 39

MODELOS DE PROGRAMACIÓN LINEAL 31

Solución

1. Elección de la variable de decisión


x i º cantidad de alimentos de tipo i = (l-leche, c-carne, p-pescado, s-ensalada) para ser utilizado en la dieta escuela.
leer.

2.Desarrollo de la función objetivo


z = Minimizar { f ( x ) = 2 x l + 4 x c + 1.5 x p + x s }
Número total de unidades monetarias gastadas en la dieta.

3. Formulación de restricciones tecnológicas


a) Restricción asociada a la demanda de vitamina A:
2 x l + 2 x c + 10 x p + 20 x s ³ 11

b) Restricción asociada a la demanda de vitamina C:


50 x l + 20 x c + 10 x p + 30 x s ³ 70

c) Restricción asociada a la demanda de vitamina D:


80 x l + 70 x c + 10 x p + 80 x s ³ 250

4. Restricciones de la no negatividad
x l ³ 0, x c ³ 0, x p ³ 0, x s ³ 0.

3 - El problema del sitio K


Un agricultor está planificando su estrategia de siembra para el próximo año. Para obtener información de
agencias gubernamentales, sabe que los cultivos de trigo, arroz y maíz serán los más rentables en el próximo
cosecha. Por experiencia, ¿sabe que la productividad de su tierra para los cultivos deseados es la constante en
Tabla 2.3:

https://translate.googleusercontent.com/translate_f 32/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
TABLA 2.3 RESTRICCIONES DEL PROBLEMA DE PLANTACIÓN

Beneficio por kg de producción


Cultura Productividad en kg por m 2 (experiencia)
(Información del gobierno)

Trigo 0,2 10,8 centavos

Arroz 0,3 4,2 centavos

Maíz 0.4 2,03 centavos

Debido a la falta de un lugar de almacenamiento propio, la producción máxima, en toneladas, es limitada


a 60. La superficie cultivable del sitio es de 200.000 m 2 . Para satisfacer las demandas de su propio sitio, es
que se siembren 400 m 2 de trigo, 800 m 2 de arroz y 10.000 m 2 de maíz.

Solución

1. Elección de la variable de decisión


En este ejemplo, podríamos tener dudas sobre qué variable de decisión utilizar: cantidad de
kilos a producir en cada cultivo o zona a plantar. Elegiremos la zona a plantar
como consecuencia, las variables en área.
x i º área en m 2 a sembrar para el tipo i = cultivo ( T- Trigo, A- Arroz, M- Maíz).

2.Desarrollo de la función objetivo

Página 40

32 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

Los coeficientes de la función objetivo deben calcularse multiplicando la productividad por kilo
el beneficio esperado por cada kilo. El resultado del coeficiente será una unidad monetaria , en este caso, el
centavo.

z = Maximizar { f ( x ) = 2,16 x T + 1,26 x A + 0,812 x F }


Beneficio en centavos.

3. Formulación de restricciones tecnológicas


a) Restricciones asociadas con la demanda del sitio (en área unitaria - m 2 ):
x T ³ 400
x A ³ 800
x M ³ 10,000

b) Restricción asociada al área total disponible:


x T + x A + x M £ 200 000

c) Restricción asociada al almacenamiento (en kilogramos):


En ese caso tendremos que utilizar los coeficientes de productividad por unidad de área para obtener un
valor final en kilogramos:
0,2 x t + 0,3 x A + 0,4 x M £ 60 000

4. Restricciones de la no negatividad
x T ³ 0, x A ³ 0, x M ³ 0

4 - El problema de las cooperativas agrícolas K


Una cooperativa agrícola opera tres fincas que tienen aproximadamente la misma productividad
entre si. La producción total por finca depende fundamentalmente del área disponible para la siembra y
agua de riego. La cooperativa busca diversificar su producción para plantar este
año tres tipos de cultivos en cada finca, a saber: maíz, arroz y frijoles. Cada tipo de cultura exige
por una cierta cantidad de agua. Reducir el conflicto en el uso de cosechadoras, que se alquilan
por la cooperativa se establecieron límites de área de producción dentro de cada tipo de cultivo. por
evitar la competencia entre los miembros de la cooperativa, se acordó que la proporción de área cultivada debe ser la misma
para cada una de las fincas. Las tablas 2.4 y 2.5 resumen los datos tecnológicos. Se solicita la elaboración
un programa de producción que define el área de cada cultivo que se sembrará en cada finca, en
con el fin de optimizar el beneficio total de la producción de la cooperativa.

TABLA 2.4 AGUA DISPONIBLE Y SUPERFICIE DE GRANJA POR GRANJA

Granja Área total de cultivo (acres) Agua disponible (litros)

1 400 1.800

dos 650 2.200

https://translate.googleusercontent.com/translate_f 33/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
3 350 950

Solución
1. Elección de la variable de decisión
La variable de decisión se impone al propio enunciado.
x ij º superficie que, en la finca i ( i = 1, 2, 3), se utilizará para el cultivo j ( j = M - Maíz, A - Arroz, F - Frijoles).

Página 41

MODELOS DE PROGRAMACIÓN LINEAL 33

CUADRO 2.5 CONSUMO DE AGUA, SUPERFICIE DE CULTIVO Y BENEFICIO POR CULTURA

Área máxima de cultivo Consumo de agua Lucro


Cultura
(Hectáreas) (Litros por acre) (R $ / Acre)

Maíz 660 5.5 5,000

Arroz 880 4 4000

Frijol 400 3,5 1.800

2.Desarrollo de la función objetivo


z = Maximizar { f ( x ) = 5,000 ( x 1 M + x 2 M + x 3 M ) + 4,000 ( x 1 A + x 2 A + x 3 A ) + 1,800 ( x 1 F + x 2 F + x 3 F )} - suma de
ganancias en cada cultivo en cada finca.

3. Formulación de restricciones tecnológicas

a) Restricciones asociadas al área de cultivo:

• Granja 1
x 1 M + x 1 A + x 1 F £ 400

• Granja 2
x 2 M + x 2 A + x 2 F £ 650

• Granja 3
x 3 M + x 3 A + x 3 F £ 350

b) Restricciones asociadas al consumo de agua:

• Granja 1
5,5 x 1 M + 4 x 1 A + 3,5 x 1 F £ 1.800

• Granja 2
5,5 x 2 M + 4 x 2 A + 3,5 x 2 F £ 2,200

• Granja 3
5,5 x 3 meses + 4 x 3 A + 3,5 x 3 F 950 libras esterlinas

c) Restricciones asociadas a la siembra por cultivo:

• Maíz
x 1 M + x 2 M + x 3 M £ 660

• Arroz
x 1 A + x 2 A + x 3 A £ 880

• Frijoles
x 1 F + x 2 F + x 3 F £ 400

d) Restricciones asociadas a la proporción de superficie cultivada:

X 1 METRO
+ X 1 LA+ X 1 F X dosMETRO
+ X dos
LA+ X dos
F X 3 METRO
+ X 3 LA+ X 3 F
= =
400 650 350

4. Restricciones de la no negatividad
x 1 M ³ 0, x 1 A ³ 0, x 1 F ³ 0, x 2 M ³ 0, x 2 A ³ 0, x 2 F ³ 0, x 3 M ³ 0, x 3 A ³ 0, x 3 F ³ 0

https://translate.googleusercontent.com/translate_f 34/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

Página 42

34 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

5 - El problema de la mezcla de aceite K


Una refinería procesa varios tipos de aceite. Cada tipo de aceite tiene una hoja de cálculo de costos
diferente, expresando condiciones de transporte y precios en origen. Por otro lado, cada tipo de aceite
El aceite representa una configuración diferente de subproductos de la gasolina. En la medida en que cierto
tipo de aceite que se utiliza en la producción de gasolina, es posible programar
bronceado y otros requisitos. Estos requisitos implican la clasificación del tipo de gasolina obtenida.
Suponiendo que la refinería trabaja con una línea de cuatro tipos diferentes de petróleo y desea
producir gasolinas amarillas, azules y super azules, programar la mezcla de los tipos de aceite teniendo en cuenta
las siguientes condiciones en las Tablas 2.6 y 2.7:

TABLA 2.6 CANTIDAD DE ACEITE DISPONIBLE

Cantidad máxima disponible Costo por barril / día


Tipo de aceite
(Barril / día) (R $)

1 3500 19

dos 2.200 24

3 4.200 20

4 1.800 27

TABLA 2.7 PORCENTAJES DE LÍMITES DE CALIDAD DE GASOLINA

Precio de venta
Tipo de gasolina Especificación
R $ / Barril

Superblue No más del 30% de 1 35


No menos del 40% de 2
No más del 50% de 3

Azul No más del 30% de 1 28


No menos del 10% de 2

Amarillo No más del 70% de 1 22

Solución

1. Elección de la variable de decisión


Para ayudar en la percepción de la variable de decisión a adoptar, el siguiente esquema puede ser útil.

Verificamos en el esquema que hay una cantidad de cada tipo de aceite en cada tipo de gas
(en este caso, gasolina azul). En este problema podemos adoptar como variable de decisión:
x ij º número de barriles de petróleo del tipo j , j = 1, 2, 3, 4, que se utilizarán para producir gasolina.
en i , ( i = A-gasolina amarilla, Z-gasolina aZul, S-gasolina Superazul).

2.Desarrollo de la función objetivo


z = Maximizar { f ( x ) = 22 ( x A1 + x A2 + x A3 + x A4 ) +28 ( x Z1 + x Z2 + x Z3 + x Z4 ) +35 ( x S1 + x S2 + x S3 + x S4 ) - 19
( x A1 + x Z1 + x S1 ) –24 ( x A2 + x Z2 + x S2 ) –20 ( x A3 + x Z3 + x S3 ) –27 ( x A4 + x Z4 + x S4 ) = suma de beneficios resultado
la venta de diferentes tipos de gasolina, después de deducir los costos de los diferentes tipos de aceite utilizados
usado.

Página 43

MODELOS DE PROGRAMACIÓN LINEAL 35

dos
Mezcla de tipos
Gasolina
de aceite para
azul
conseguir gasolina
azul 3

https://translate.googleusercontent.com/translate_f 35/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

FIGURA 2.2 Porcentaje de mezcla de aceite.

3. Formulación de restricciones tecnológicas


a) Restricciones asociadas a la cantidad de aceite disponible:

• Tipo 1
x A 1 + x Z 1 + x S 1 £ 3500

• Tipo 2
x A 2 + x Z 2 + x S 2 2200 £

• Tipo 3
x A 3 + x Z 3 + x S 3 £ 4200

• Tipo 4
x A 4 + x Z 4 + x S 4 £ 1.800

b) Restricciones asociadas a las especificaciones de la mezcla:

• Para gasolina súper azul


x S1 £ 0,3 ( x S1 + x S2 + x S3 + x S4 )
x S2 ³ 0.4 ( x S1 + x S2 + x S3 + x S4 )
x S3 £ 0.5 ( x S1 + x S2 + x S3 + x S4 )

• Para gasolina azul


x Z1 £ 0,3 ( x Z1 + x Z2 + x Z3 + x Z4 )
x Z1 ³ 0,1 ( x Z1 + x Z2 + x Z3 + x Z4 )

• Para gasolina amarilla


x A1 0,7 € ( x A1 + x A2 + x A3 + x A4 )

4. Restricciones de la no negatividad

x A1 ³ 0, x A2 ³ 0, x A3 ³ 0, x A4 ³ 0, x Z1 ³ 0, x Z2 ³ 0, x Z3 ³ 0, x Z4 ³ 0,

x S1 ³ 0, x S2 ³ 0, x S3 ³ 0, x S4 ³ 0.

6 - El problema del flujo de petróleo en la refinería L


Una refinería produce dos tipos de aceite, I y II, que se refinan en cuatro centros de procesamiento.
de acuerdo con la Figura 2.3. Las líneas completas del gráfico indican el flujo de refinación normal de los aceites.

Página 44

36 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

tipo I y II. Si hay capacidad inactiva, es posible procesar aceite tipo I utilizando el esquema alternativo
nativo representado por líneas discontinuas.
En el esquema de producción, se sabe que la distribución de costos ´ capacidad de producción es:

Aceite I

Centro 2

Fluir
Tipo 1
Centro 1 Centro 4

Fluir Aceite II

Tipo 2
Centro 3

Flujo Tipo I - Alternativa Aceite I

FIGURA 2.3 Flujos de aceite.

https://translate.googleusercontent.com/translate_f 36/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
CUADRO 2.8 COSTOS Y CAPACIDADES DE PRODUCCIÓN

Producto centrar Capacidad l / h % de recuperación Costo $ / h

1 300 90 150
dos 450 95 200
yo 4 250 85 180
dos 400 80 220
3 350 75 250

1 500 90 300
II 3 480 85 250
4 400 80 240

Por otro lado, las relaciones económicas que rigen la función de beneficio son:

TABLA 2.9 COSTOS / PRECIOS DE LOS PRODUCTOS

Costo de precio desde Venta diaria


Producto
Materia prima ($ / l) Venta ($ / l) Máximo (l)

yo 5 20 1.700

II 6 18 1500

Los centros 1 y 4 funcionan 16 horas al día. Los centros 2 y 3 funcionan 12 horas al día. La refinería
sui la capacidad para transportar solo 2.500 l / día, ya que su tubería está en mantenimiento. Formular
matemáticamente el problema de optimizar la producción de ambos tipos de aceite.

Solución
1. Elección de la variable de decisión
x i º número de litros de aceite de tipo i , ( i = I, para aceite de tipo I, II, para aceite de tipo II) refinado diariamente
diario. En este caso, necesitaremos distinguir el esquema de refinamiento en la variable de decisión. Entonces,

Página 45

MODELOS DE PROGRAMACIÓN LINEAL 37

podemos implementar la variable x I en una suma de dos parcelas, a saber: la porción de flujo de tipo I normal
malo, x yoN , y la porción obtenida mediante flujo alternativo tipo I, x I A:

LA
x yo = x yoN + x I

2. Formulación de restricciones tecnológicas


En este problema, es más interesante centrarse inicialmente en las restricciones tecnológicas. LA
La función objetivo dependerá de los coeficientes de utilización de refino que se calcularán en el
la organización de restricciones tecnológicas.
Inicialmente, es esencial darse cuenta de que a medida que el aceite se refina en cada
centro, hay un porcentaje de pérdida en la materia prima. Esta pérdida se acumula en cada circuito. El seguimiento
a continuación, representamos el flujo de pérdida de x I y ex II .

a) Pérdida de flujo de x I:

norte
0.9 × 0.95 × 0.85 × 0.8 x I
centro 2

centro 1 1
centrar centro 2 dos
centrar centro 4 4
centrar
X yo ⎯ ⎯ ⎯⎯ → 09, X yo ⎯ ⎯ ⎯⎯ → 09, 095
× , X yo ⎯ ⎯ ⎯⎯ → 0 ,9 0× 95 ,0 85× , x yo

centro 3
LA
0,9 × 0,95 × 0,85 × 0,75 x I

b) Pérdida de flujo de x II:

centro 1 centro 3 centro 4


centrar 1
X II ⎯ ⎯ ⎯⎯ → 09, X ⎯ centrar
⎯ ⎯⎯ 3
→ 09, 085
× , centavo
X II ⎯ ⎯ ⎯⎯
ro 4
→ 0 ,9 0×85 ,0 80× , X II
II

c) Restricciones asociadas a la capacidad de procesamiento:

Centro 1:

LA norte
X yo X yo X II

https://translate.googleusercontent.com/translate_f 37/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
+ 500 +
300 300 ≤ dieciséis

Centro 2:

norte LA norte
0 ,9 X yo 0 ,9 X yo 0 ,9 0× 95 ,0 85× , X yo
+ + ≤ 12
450 450 400

Centro 3:

LA
0 ,9 X II 0 ,9 0× 95 ,0 85× , X yo
+ ≤ 12
480 350

Centro 4:

0 ,9 0×85 ,
norte LA
0 ,9 0× 95 , X yo 0 ,9 0×95 , X yo X II
+ + ≤ dieciséis
250 250 400

Página 46

38 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

d) Restricción de transporte:

norte LA
0.9 × 0.95 × 0.85 × 0.8 x I + 0,9 × 0,95 × 0,85 × 0,75 x I + 0,9 × 0,85 × 0,80 x II 2500 £

e) Restricción de ventas:

• Aceite de tipo I
norte A£ 1,700
0.9 × 0.95 × 0.85 × 0.8 x I + 0,9 × 0,95 × 0,85 × 0,75 x I

• Aceite tipo II
0,9 × 0,85 × 0,80 x II £ 1,500

3. Restricciones de no negatividad

x yo ³ 0, x yo N ³ 0, x I A³ 0

4.Desarrollo de la función objetivo

Estilo por: a N = 0,9 × 0,95 × 0,85 × 0,8


a A = 0.9 × 0.95 × 0.85 × 0.75 y
b = 0,9 × 0,85 × 0,80

z = Maximizar { f ( x ) = Ingresos - Gastos }, donde

Receta:
norte LA
20 a N x I + 20 hacia A x+I 18 bx II

Gastos:

• Materia prima
norte LA
5 x yo + 5 x yo + 6 x II

• Costos operativos:
Centro 1:
norte LA norte
150 X yo 150 X yo 300 X yo
+ +
300 300 500

Centro 2 :
norte LA norte
200 0×9 , X yo 200 0×9 , X yo 220 0×9 0,95×0 85, × , X yo
+ +
450 450 40 0

Centro 3:

LA
250 0× 9 , X II 250 0× 9 0, 95×0 85, × , X yo
+

https://translate.googleusercontent.com/translate_f 38/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
480 350
Centro 4:

norte LA
180 0×9 0,95× , X yo 180 0× 9 0, 95× , X yo 240 0× 9 0, 85× , X II
+ +
250 250 400

Página 47

MODELOS DE PROGRAMACIÓN LINEAL 39

Representación matricial

Como podemos ver fácilmente, el número de variables en los problemas PL puede ser muy grande,
de modo que la representación que adoptemos en los ejemplos de la serie introductoria pueda convertirse rápidamente
poco práctico, recomendando la forma matricial.

7 - El problema de la optimización del patrón de corte L


Una fábrica necesita cortar una tira de acero de 12 cm de ancho en tiras de 2,4 cm, 3,4 cm y 4,5 cm de ancho.
figura. Las necesidades globales de las tiras son:

TABLA 2.10 NECESIDADES GLOBALES DE TIRAS

Tipo de tira Ancho (cm) Longitud mínima

Tira 1 2.4 2500 m

Tira 2 3.4 4.500 metros

Tira 3 4.5 8.000 m

Formular el problema que permita optimizar el consumo de la cinta a cortar, minimizando la pérdida de
material.

Solución

A diferencia del modelo 11, los posibles ajustes de corte aún no están definidos. El Fi-
La figura 2.4 muestra una de las configuraciones de corte viables. La Tabla 2.11 resume las otras configuraciones:

12 cm

Tipo de tira III

Perdida de
0,6 cm
Tira tipo I

4,5 cm 4,5 cm 2,4 cm

FIGURA 2.4 Patrón de corte número 5 (ver Tabla 2.11).

Página 48

https://translate.googleusercontent.com/translate_f 39/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
40 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

TABLA 2.11 PATRONES DE CORTE DE CINTA

Estándar de Número de tiras tipo Número de tiras tipo Número de tiras tipo
Pérdida estándar (P i )
Cortar (i) 1 - 2,4 cm 2 - 3,4 cm 3 - 4,5 cm

Estándar 1 5 0 0 0

Estándar 2 3 1 0 1.4

Patrón 3 3 0 1 0,3

Patrón 4 dos dos 0 0.4

Patrón 5 1 0 dos 0,6

Estándar 6 0 3 0 1.8

Patrón 7 0 dos 1 0,7

1. Elección de la variable de decisión


x i º longitud de corte en el patrón i , ( i = l, ..., 7) y espacio libre de las restricciones a), b) yc) ( i = 8, 9, 10), para ser
utilizado en producción.

Tipo de tira III

X 5 - Longitud de
corte en el patrón 5

Tira tipo I

FIGURA 2.5 Variable de decisión: longitud de corte en el patrón i.

2. Formulación de restricciones tecnológicas

a) Restricción asociada a la demanda de franja Tipo I:

5 x 1 + 3 x 2 + 3 x 3 + 2 x 4 + x 5 ³ 2500

b) Restricción asociada a la demanda de franja Tipo II:

x 2 + 2 x 4 + 3 x 6 + 2 x 7 ³ 4500

c) Restricción asociada a la demanda de franja tipo III:

x 3 + 2 x 5 + x 7 ³ 8.000

3.Desarrollo de la función objetivo


z = Minimizar { pérdidas de patrón + pérdidas excesivas de tira }

Página 49

MODELOS DE PROGRAMACIÓN LINEAL 41

a) Pérdidas en patrones de corte:

1,4 x 2 + 0,3 x 3 + 0,4 x 4 + 0,6 x 5 + 1,8 x 6 + 0,7 x 7

b) Pérdida por exceso de tiras:


Llamar x 8 , x 9 ex 10 (metros) las restricciones de espacio libre, byc, respectivamente, son:

2,4 x 8 + 3,4 x 9 + 4,5 x 10

4. Restricciones de la no negatividad

https://translate.googleusercontent.com/translate_f 40/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

x 1 ³ 0, x 2 ³ 0, x 3 ³ 0, x 4 ³ 0, x 5 ³ 0, x 6 ³ 0, x 7 ³ 0, x 8 ³ 0, x 9 ³ 0, x 10 ³ 0.

8 - El problema de la competencia entre ingenieros norte


Dos equipos de fabricantes de coches de carreras están prácticamente compitiendo solo por el campeón.
a. Cada mes se realizan tres eventos. El equipo ganador es el que más acumula
de victorias durante todas las carreras del año. Tan pronto como comenzó el campeonato, el equipo B comenzó a
venció al Equipo A en aproximadamente el 60% de los eventos. El coche del equipo B siempre acababa adelantando
curvas del coche del equipo A. Tratando de anular esa ventaja, los ingenieros del equipo A desarrollaron
agregaron un perfil aerodinámico especial para darle al automóvil más estabilidad en las curvas. A pesar de quedarse con el auto
más pesado, el piloto del equipo A ahora podía usar su habilidad y evitar que el automóvil adelantara
Equipo B en las curvas, manteniendo o ganando su posición en las rectas. Con mejora tecnológica,
El equipo A ganó alrededor del 80% de las carreras. Al ver que se acerca el desastre, ingenieros
El equipo B contraatacó creando un estabilizador de suspensión para mejorar la maniobrabilidad
en las curvas. El resultado anuló la capacidad del piloto del Equipo A para bloquear el auto del Equipo B
en las curvas y este empezó a ganar alrededor del 80% de las pruebas. Acorralado e incapaz de aumentar aún más el
agarre del coche en las curvas, el equipo A, en una reunión de emergencia, intentó una estrategia suiza
cida: quitar el perfil aerodinámico para ganar peso y tratar de compensar lo que
perdería en las curvas. Sorprendentemente, con esta estrategia empezó a ganar el 80% de las pruebas, ya que el
El estabilizador de suspensión especial para los coches del equipo B era muy pesado e inútil en las rectas,
mejorando enormemente el rendimiento del coche fuera de las curvas. Inmediatamente, el Equipo B retiró su
equipo y los equipos volvieron al punto de partida con ventaja nuevamente para el Equipo B.
En este punto del campeonato, los dos equipos estaban estrictamente empatados en número de victorias.
rias. El jefe del equipo A decidió contratar a un asesor de investigación operativa para decidir el
mejor política para tu equipo y, quién sabe, darte el título de ese año convulso. Formular y resolver
ne el problema de encontrar la política de equipamiento óptima para el coche del equipo A. Se sabe que la instalación
La instalación del estabilizador especial y el perfil aerodinámico tarda unas 4 horas y no se puede deshacer sobre el
carrera, y que los boxes de cada equipo se puedan cerrar, para que el equipo competidor no se vaya
ba qué configuración será adoptada en una carrera por su oponente.

Solución

Lo que el consultor de investigación operativa debería poder responder es la frecuencia con la que
Los automóviles del Equipo A, su contratista, deben estar equipados con el perfil aerodinámico.

1. Elección de la variable de decisión:


Sea x 1 la probabilidad de que el equipo A resuelva equipar su automóvil con el perfil aerodinámico. En este caso, x 2 = 1– x 1
será la probabilidad de que no se utilice el perfil aerodinámico. Por las experiencias declaradas en el comunicado, la
La situación de enfrentamiento tecnológico se puede resumir en:

Página 50

42 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

Equipo B

Estrategia Sin estabilizador Con estabilizador

Sin perfil aerodinámico 40% 80%


Equipo A
Con perfil aerodinámico 80% 20%

La variable de decisión debe ser evaluada por el valor esperado E (.) De la “ganancia” obtenida por el Equipo A
en condiciones de respuesta del equipo B, es decir, con o sin estabilizador.
Inicialmente consideraremos el evento S 1 , la condición ganadora del Equipo A, cuando el Equipo B
Se queda sin su fantástico estabilizador de suspensión. En este caso, la esperanza de victoria del equipo
A será:

E ( S 1 ) = 40 x 1 + 80 (1 - x 1 ) = 80 - 40 x 1

Tenemos otra condición más a tener en cuenta: el caso de que el Equipo B esté usando su estabilizador.
usuario. Llamemos a este evento S 2 . En esta alternativa, la esperanza de victoria del Equipo A se convierte en:

E ( S 2 ) = 80 x 1 + 20 (1 - x 1 ) = 60 x 1 + 20

2. Formulación de restricciones tecnológicas


Sea G la "ganancia" más pequeña obtenida por el equipo A cuando utiliza su política. En ese caso:

https://translate.googleusercontent.com/translate_f 41/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
E(S1)³G
E(S2)³G

o sea:

40 x 1 + G £ 80

–60 x 1 + G £ 20

Las ecuaciones anteriores pueden considerarse restricciones de un programa lineal en el que la variable
decisión es la probabilidad de que el Equipo A utilice su perfil aerodinámico. Representan el conjunto de pos-
a la G valor de ganancia .
3. Función objetivo
Es obvio que el Equipo A quiere maximizar su "ganancia", es decir:

z = Maximizar { f ( x ) = G }

4. Restricción de la no negatividad y definición del valor probabilístico


Como sabemos que la probabilidad varía entre 0 y 1:

1³x1³0

Para aclarar mejor la solución de este interesante modelo, presentamos en la Figura 2.6 la solución
gráfico del problema 8.

Página 51

MODELOS DE PROGRAMACIÓN LINEAL 43

5. Solución gráfica

GRAMO

- 60 X 1 + GRAMO
= 20
80

60
G * = 56%

x1=1
40

40 x 1 + G = 80
20

x1
1 dos

FIGURA 2.6 Solución gráfica al problema de los equipos de carreras.

Lo que nos lleva a los valores de x 1 = 0.6 y G = 56%. Con esto concluimos que el Equipo A puede ser
si tiene, además de un piloto tan bueno, la asistencia de Operational Research!

2.2.3 - Ejemplos de modelado de problemas de LP completos


con posibilidad de acercamiento continuo

1 - El problema de la fábrica de muebles J


Una gran fábrica de muebles tiene un stock de 250 metros de tableros, 600 metros de tableros y
500 metros de paneles de conglomerado. La fábrica suele ofrecer una línea de muebles con
planteada por un modelo de escritorio, una mesa de conferencias, un armario y una estantería. Cada clase
los muebles consumen una determinada cantidad de materia prima, según el cuadro 2.12. El escritorio es
vendido por 100 unidades monetarias (una), la mesa por 80 μm, el gabinete por 120 μm y la plata
por 20 um Se solicita mostrar un modelo de Programación Lineal que maximice los ingresos de la venta
de los muebles.

https://translate.googleusercontent.com/translate_f 42/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

TABLA 2.12 EJEMPLO 2 RESTRICCIONES / COSTOS

Cantidad de material en metros


Disponibilidad de recursos (m)
consumido por unidad de producto

Escritorio Mesa guardarropa Estante

Tablero 1 1 1 4 250

Tablero 0 1 1 dos 600

Paneles 3 dos 4 0 500

Valor de
100 80 120 20
Reventa (uno)

Página 52

44 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

Solución
En este caso, la elección de las variables de decisión sigue el mismo razonamiento que el modelo anterior. El objetivo
Queda por maximizar los ingresos de una producción cuyas cantidades relativas son susceptibles de
planificación. La diferencia se debe al mayor número de magnitudes (o variables a programar
mar).

1. Elección de la variable de decisión


x i º cantidad en unidades a producir del producto mesa ( i = 1), mesa ( i = 2), armario
( i = 3), estante ( i = 4).

Con las variables de decisión elegidas, debemos expresar la función objetivo como una función
de estas variables:

2.Desarrollo de la función objetivo


z = Maximizar { f ( x ) = 100 x 1 + 80 x 2 + 120 x 3 + 20 x 4 }
Ingresos brutos en unidades monetarias según el número de unidades producidas para cada tipo de
móvil.

El levantamiento de las restricciones de producción apunta a la disponibilidad de tipos de madera.

3. Formulación de restricciones tecnológicas


a) Restricción asociada a la disponibilidad de tableros:
x 1 + x 2 + x 3 + 4 x 4 £ 250

b) Restricción asociada a la disponibilidad de tableros:


x 2 + x 3 + 2 x 4 600 €

c) Restricción asociada a la disponibilidad de paneles:


3 x 1 + 2 x 2 + 4 x 3 £ 500

4. Restricciones de la no negatividad

x 1 ³ 0, x 2 ³ 0, x 3 ³ 0, x 4 ³ 0

2 - El problema del deportista indeciso J


Un joven deportista se siente atraído por la práctica de dos deportes: natación y ciclismo. Usted sabe por experiencia que:
Una natación requiere un gasto en el club mensual y desplácese hacia abajo hasta la piscina que se puede ex-
presión a un costo promedio de 3 (tres) reales por sección de entrenamiento de dos horas.
El ciclismo , más simple, termina costando alrededor de dos (2) por el mismo tiempo de práctica real.
El presupuesto del niño tiene 70 reales para su entrenamiento.
Sus deberes de estudiante de pregrado le dan la libertad de emplear, como máximo,
18 horas mensuales y 80.000 calorías por esfuerzo físico.
Cada sección de natación consume 1500 calorías, mientras que cada etapa de ciclismo cuesta 1000 calorías.
rias. Considerando que al chico le gustan ambos deportes por igual, el problema es planificar
agita tu entrenamiento para maximizar el número de secciones de entrenamiento.

Solución

https://translate.googleusercontent.com/translate_f 43/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
El
no presente
se limitanmodelo es undatos
a modelar ejemplo de programación
cuantitativos de actividades.
que se relacionan Obviamente
solo con productos.las variables
Surge de decisión
el problema
se propone abordar el número de secciones deportivas.

Página 53

MODELOS DE PROGRAMACIÓN LINEAL 45

1. Elección de la variable de decisión


x i º número de prácticas de natación ( i = 1) y ciclismo ( i = 2).

2.Desarrollo de la función objetivo


z = Maximizar { f ( x ) = x 1 + x 2 }
Número total de secciones deportivas.

En cuanto a las restricciones, el problema actual se diferencia de los anteriores en que incluye varios aspectos
asociado con la práctica deportiva del niño.

3. Formulación de restricciones tecnológicas


a) Restricción asociada a los recursos económicos del niño:
3 x 1 + 2 x 2 £ 70

b) Restricción asociada a la disponibilidad de energía:


1500 x 1 +1000 x 2 80 000 £

c) Restricción asociada a la disponibilidad de tiempo:


2 x 1 + 2 x 2 £ 18

4. Restricción de la no negatividad
x 1 ³ 0, x 2 ³ 0.

3 - El problema de la pequeña fábrica J


Considere la situación de decidir el número de unidades que producirá un determinado fabricante.
de dos tipos diferentes de producto.
Los beneficios por unidad de producto_1 y producto_2 son, respectivamente, 2 y 5 um Cada unidad
de product_1 requiere 3 horas máquina y 9 unidades de materia prima, mientras que product_2 requiere
4 horas de máquina y 7 unidades de materia prima.
Los tiempos máximos disponibles por horas de máquina y materia prima son 200 horas y 300 unidades.
actividades, respectivamente.
Formule el problema para optimizar el beneficio total.

Solución

1. Elección de la variable de decisión


x i º número de unidades de producto_1 ( i = 1) y producto_2 ( i = 2) fabricadas.

2.Desarrollo de la función objetivo


z = Maximizar { f ( x ) = 2 x 1 + 5 x 2 }
Número total de unidades monetarias obtenidas como beneficio de la venta de los productos 1 y 2. En este
si “optimizar” el beneficio total es sinónimo de maximizar. En ocasiones, la función objetivo puede no
ser resaltado explícitamente.

3. Formulación de restricciones tecnológicas


a) Restricción asociada a la disponibilidad de tiempo de la máquina:
3 x 1 + 4 x 2 £ 200

b) Restricción asociada a la disponibilidad de materias primas:


9 x 1 + 7 x 2 300 €

4. Restricciones de la no negatividad
x 1 ³ 0, x 2 ³ 0.

Página 54

46 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

4 - El problema de la fábrica de camisas J


https://translate.googleusercontent.com/translate_f 44/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

Una empresa produce dos tipos de camisas: manga larga y manga corta. En la empresa, el único
el punto crítico es la mano de obra disponible.
La camisa de manga larga consume un 50% más de trabajo que la camisa de manga corta. Es sabido
También que si toda la producción se concentrara en hacer que las camisas de manga corta estuvieran disponibles para
La empresa podía entregar 400 camisas de manga corta al día.
El mercado limita la producción diaria de camisetas a 150 mangas largas y 300 mangas cortas. El lu-
cro bruto por camisa de manga larga es de 5.00 um y por camisa de manga corta 3.5 um
Formular el problema para determinar las cantidades de camisas a producir.
para optimizar los beneficios.

Solución

1. Elección de la variable de decisión


x i º número de camisas de manga larga ( i = 1) y manga corta ( i = 2) a fabricar
das.

2.Desarrollo de la función objetivo


z = Maximizar { f ( x ) = 5 x 1 + 3.5 x 2 }
Número total de unidades monetarias obtenidas como beneficio de la venta de las camisetas.

La novedad que introduce el presente problema es la existencia de un acoplamiento de variables.


Una restricción tecnológica resalta los límites para cada una de las variables; sin embargo, otro se ocupa de
de las dos variables concomitantemente.

3. Formulación de restricciones tecnológicas


a) Restricción asociada a la demanda del mercado:
x 1 £ 150
x 2 £ 300

b) Restricción asociada al acoplamiento de variables:


(3/2) x 1 + x 2 = 400

Tenga en cuenta que la relación entre las variables es lineal . El enunciado del problema proporciona
independiente de la ecuación general de la línea, 400, a través del punto (0.400) donde la producción de camisas
manga larga es nula. El segundo dato necesario para determinar la ecuación proviene de la relación entre
coeficientes de las variables: 1 y 1 + 0.5 o 1 y 3/2.

4. Restricciones de la no negatividad
x 1 ³ 0, x 2 ³ 0

5 - El problema de la optimización del patrón de producción L


Cierta fábrica produce macetas de metal medianas y grandes a partir de elementos circulares.
diámetros de 0,25 y 0,40 metros, respectivamente. La primera operación para obtener las cacerolas es una
corte de estos elementos circulares en placas con dimensiones de 1,40 × 0,50 metros. Los elementos planos
las circulares se transforman en cacerolas en una segunda operación de estampado. Para el corte existente
tiene cuatro tipos de matrices como se muestra en la Figura 2.7. La fábrica quiere una producción diaria mínima
500 cacerolas medianas (obtenidas del elemento circular de diámetro 0,25) y 350 cacerolas grandes (obtenidas de
elemento circular con un diámetro de 0,40). Los costos en reales por placa por el uso de cada troquel de corte
son respectivamente: 1, 2, 3, 2. Desarrollar el modelo de Programación Lineal que planifica la producción de
para minimizar el costo de usar las placas.

Página 55

MODELOS DE PROGRAMACIÓN LINEAL 47

Matriz 1 Matriz 2

Matriz 3 Matriz 4

https://translate.googleusercontent.com/translate_f 45/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

FIGURA 2.7 Patrones de corte del problema 5.

Solución

1. Elección de la variable de decisión


x i º cantidad de hojas cortadas según la matriz, ( i = 1, 2, 3, 4), para ser utilizadas en la producción
perro.

2.Desarrollo de la función objetivo


z = Minimizar { f ( x ) = x 1 + 2 x 2 + 3 x 3 + 2 x 4 } - Número total de reales gastados en producción.

3. Formulación de restricciones tecnológicas

a) Restricción asociada a la demanda de recipientes medianos (elemento de 0,25 de diámetro):

8 x 1 + 4 x 2 + 2 x 3 ³ 500

b) Restricción asociada a la demanda de macetas grandes (elemento 0.40 de diámetro):

x 2 + 2 x 3 + 3 x 4 ³ 350

4. Restricciones de la no negatividad

x 1 ³ 0, x 2 ³ 0, x 3 ³ 0, x 4 ³ 0.

2.2.4 - Ejemplos de modelado de problemas de LP completos sin un enfoque continuo

1 - El problema de la asignación de personal J


Un hospital trabaja con atención variable bajo demanda las 24 horas del día. Las necesidades
las necesidades se distribuyen de acuerdo con la Tabla 2.13:

Página 56

48 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

TABLA 2.13

Turno de trabajo Calendario Número mínimo de enfermeras

1 08: 00-12: 00 50
dos 12: 00-16: 00 60
3 16: 00-20: 00 50
4 20: 00-00: 00 40
5 00: 00-04: 00 30
6 04: 00-08: 00 20

El horario de trabajo de una enfermera es de ocho horas cuando ingresa a los turnos 1, 2, 3, 4 y 6.
La enfermera que ingresa al turno 4 recibe una bonificación del 50% sobre el salario y la enfermera que ingresa
El turno 5 funciona solo cuatro horas.
Desarrolle todo el modelo de programación lineal que minimice los costos laborales.

Solución:

1. Elección de la variable de decisión

x i º número de enfermeras que ingresan al servicio al inicio del turno i , ( i = 1, 2, ..., 6).

2.Desarrollo de la función objetivo

Como prácticamente todas las enfermeras ganan el mismo salario, podemos considerar que el mini
optimizar el gasto en mano de obra equivaldrá a minimizar el número total de trabajadores,
considerando el número de trabajadores en el cuarto turno en términos de sus salarios, entonces:

z = Minimizar { f ( x ) = x 1 + x 2 + x 3 + 1, 5 x 4 + 2 x 5 + x 6 } El numero total de

https://translate.googleusercontent.com/translate_f 46/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
enfermeras
trabajando en un día.

El coeficiente de 1, 5 para las enfermeras que ingresan al cuarto turno y 2 para las que ingresan al
quinto igual, en términos de salario, la contribución de estos cambios en el gasto. Trabajadores en el
quinto turno gana un salario completo por medio día, es decir, gana el doble
primeros turnos 1, 2, 3 y 6.

3. Formulación de restricciones tecnológicas

a) Restricción asociada a los seis turnos:

4 primero el turno:

x 6 + x 1 ³ 50

4 2 el turno:

x 1 + x 2 ³ 60

4 3 el turno:

x 2 + x 3 ³ 50

4 4 el turno:

x 3 + x 4 ³ 40

4 5 el turno:
x 4 + x 5 ³ 30

4 6 el turno:

x 6 ³ 20

Página 57

MODELOS DE PROGRAMACIÓN LINEAL 49

4. Condiciones de integridad y no negatividad

x 1 , x 2 Î Z + (conjunto de enteros positivos).

2 - El problema de la cena de Nero J


El emperador romano Nerón, en un momento de inspiración, decidió promover una cena para eliminar
sus "mejores" enemigos. Consultando a su médico de confianza, supe que tenía dos
tipos de venenos, alfa y beta. Eran drogas para mezclar con la salsa de
RAM. En las existencias de farmacia de la farmacia opcional había 0,5 kg de veneno alfa y 2 kg de veneno beta opcionales. por
los invitados no saborearon el veneno, era fundamental mezclar tres porciones por peso
de veneno alfa por cada porción de beta. Cada 12 gramos de alfa o 6 beta fueron capaces de hacer solos
liquidar a un hombre. El efecto del veneno en las mujeres fue aproximadamente un 50% más poderoso que
sobre los hombres. Nero, satisfecho con la información, dio sus órdenes al médico: prepare la mezcla
más eficiente y eliminar al menos 20 hombres y 10 mujeres!
Desarrollar el modelo de programación matemática que maximice el efecto del veneno en el
enemigos del emperador y evitar que el médico pierda su trabajo y acabe quemado vivo en dicha cena.

Solución:

1. Elección de la variable de decisión

x ij º número de envenenados i , macho ( i = 1), hembra ( i = 2), por veneno j , veneno alfa
( j = A), veneno beta ( j = B).

2.Desarrollo de la función objetivo

z = Maximizar { f ( x ) = x 1 A + x 2 A + x 1 B + x 2 B } número total de envenenados.

3. Formulación de restricciones tecnológicas

a) Restricciones de disponibilidad de veneno

4 tipo alfa:
12 x 1 A + 6 x 2 A 500 €

4 tipo Beta:
6 x 1 B + 3 x 2 B £ 2,000

b) Restricción por gusto

12 X 1 LA + 6 X dosLA
=3
https://translate.googleusercontent.com/translate_f 47/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
6 X 1 segundo
+ 3 X dossegundo

c) Restricciones de demanda

4 Hombres envenenados:
x 1 A + x 1 B ³ 20

4 mujeres envenenadas
x 2 A + x 2 B ³ 10

4. Condiciones de integridad y no negatividad

x 1 A , x 2 A , x 1 B , x 2 B Î Z + (conjunto de enteros positivos).

Página 58

50 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

3 - El problema de la optimización del patrón de corte K


Una empresa metalúrgica debe entregar un lote de 2.500 placas rectangulares de 2 ´ 4 cm (placas tipo I)
y 1.000 de 4 ´ 11 cm (placas tipo II). Hay, en stock, una tira metálica de 15 cm de ancho y
20 metros de largo y otros 14 centímetros de ancho y 30 metros de largo. Las tiras
30 metros de largo son aproximadamente un 20% más caros por kilo que 20 metros, debido a
problemas de transporte. Las siguientes configuraciones de corte o patrones de corte son posibles en el
equipo de la empresa:

Estándar 1

4 cm

Patrón 3

2 cm 12 cm
4 cm

Estándar 2

2 cm 11 cm

2 cm

4 cm 11 cm

FIGURA 2.8 Patrones de corte.

Formule el modelo para minimizar la pérdida por corte. 1

Solución:

1. Elección de la variable de decisión

x ij º número de veces que se aplicará el patrón i , i = 1, 2, 3 de corte a la placa j de 15 ´ 2,000


( j = A) y 14 ´ 3000 ( j = B).

c ijº pérdidas de configuración i aplicadas a la placa j .

2. Formulación de restricciones tecnológicas

a) Restricciones de demanda:

4 platos 2 ´ 4:
7 x 1 A + 7 x 1 B + 2 x 2 A + x 3 A + x 3 B ³ 2500

4 platos 4 ´ 11:
x 2 A + x 3 A + x 2 B + x 3 B ³ 1.000

1. Se encuentran trabajos interesantes sobre el tema de la reducción de pérdidas en Hinxman (1980), Farley (1988) y
(1990), Álvares-Valdi et al . (2002), Morabito y Arenales (2000).

https://translate.googleusercontent.com/translate_f 48/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

Página 59

MODELOS DE PROGRAMACIÓN LINEAL 51

b) Restricción de disponibilidad de stock:

4 Plato 15 ´ 2000:
4 x 1 A + 4 x 2 A + 4 x 3 A 2000 €

4 Plato 14 ´ 3,000:
4 x 1 B + 4 x 3 B £ 3,000

3.Desarrollo de la función objetivo

z = Minimizar { f ( x ) = x 1 A + x 3 A + 1, 2 x 3 B } pérdida total.

4. Condiciones de integridad y no negatividad

x 1 A , x 2 A , x 3 A , x 1 B , x 2 B , x 3 B Î Z + (conjunto de enteros positivos)

4 - El problema de las cámaras de seguridad K


Un laboratorio biológico está construyendo una sala de desinfección y seguridad para proteger la entrada
de sus instalaciones más peligrosas. El propósito de la sala es aislar agentes biológicos como virus y bacterias.
que se manipulan en instalaciones herméticamente selladas, pero que permiten el tránsito
investigadores y otros materiales. La sala consta de tres cámaras para aumentar la seguridad.
(ver Figura 2.9).
La desinfección se realiza básicamente mediante una sofisticada unidad de irradiación. Me gusta esto
La unidad es extremadamente sensible y el objeto en tránsito puede comportarse inesperadamente,
una probabilidad de falla del funcionamiento de una unidad de desinfección aislada. Esta probabilidad
básicamente varía en función de la cámara en la que se encuentra la unidad. Hay restricciones sobre
espacio y peso para la distribución de unidades de desinfección en el techo de las cámaras. Costo unitario
también varían según la cámara debido a la variación de temperatura y el aislamiento de la humedad, todos
formar la Tabla 2.14, a continuación.

Espacio
Unidad de Asignación
Desinfección
Zona
Actuación
Recubrimiento
Eficaz
Perfil

Cámara 1 Cámara 2 Cámara 3

El acceso a los Acceso


Zona a
Externo Laboratorios

Posibles Posiciones Planta


Asignación
Unidades en Cámaras

FIGURA 2.9 Planta y perfil de la cámara.

Página 60

52 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

TABLA 2.14

Espacio Peso Costo Probabilidad de falla


Cámara
(m 3 ) (kg) (R $) unidad

https://translate.googleusercontent.com/translate_f 49/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
1 2.5 150 30.000 0,20
dos 4.0 130 70.000 0,15
3 3,0 100 40.000 0,30

Limitaciones 60 1500 600.000

Formular el problema de minimizar la probabilidad de que ocurra tráfico en la sala de desinfección.


sin una perfecta desinfección, considerando que más del 3% de la probabilidad es inaceptable
que una cámara aislada no puede desinfectar.

1. Elección de la variable de decisión

x j º número de unidades de desinfección asignados en cámara de j , ( j = 1, 2, 3).

xj
PAGS≡probabilidad de falla ( j = 1, 2, 3).
j

2. Formulación de restricciones tecnológicas

a) Restricciones de espacio:

2,5 x 1 + 4 x 2 + 3 x 3 £ 60

b) Restricción de peso:

150 x 1 + 130 x 2 + 100 x 3 £ 1,500

c) Restricción de costos:

30 x 1 + 70 x 2 + 40 x 3 600 €

d) Restricción de avería de una cámara:

con p 1 = 0,2; p 2 = 0,15; p 3 = 0,3

xj
PAGS0,03 £, j = 1, 2, 3
j

3. Elaboración de la función objetivo


X1 X dos X
z = Minimizar { f ( x ) = dpi 3} - probabilidad de falla total.
1 dos 3

4. Condiciones de integridad y no negatividad

x 1 , x 2 , x 3 ÎZ + (conjunto de enteros positivos).

5. Transformaciones de linealización

xj
PAGS≤ 003
,, j = 1 ,,2 3 → (1n p j ) x j £ log (0,03)
j

fx() = ppp
1
1 X X dos X 3
dos 3
→ en (())
fx = ∑ (1n p j ) x j
j= 1

Página 61

MODELOS DE PROGRAMACIÓN LINEAL 53

5 - El problema de carga de la aeronave J


Un avión de transporte tiene cuatro compartimentos de carga , a saber : compartimento delantero,
compartimento central, compartimento trasero y bodega. Los primeros tres compartimentos
solo pueden recibir carga en contenedores , mientras que la bodega contiene material a granel. La tabla 2.15 resume
yo la capacidad del dispositivo:

TABLA 2.15

Peso máximo Espacio maximo


Compartimiento
(tonelada) (m 3 )

Compartimento delantero 5 35
Compartimento central 7 55
Compartimento trasero 6 30
Sótano a granel 7 30

Con el objetivo de equilibrar el vuelo, es esencial que la distribución de la carga sea proporcional entre

https://translate.googleusercontent.com/translate_f 50/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
entre los compartimentos. Para cargar el avión, existen tres tipos de contenedores y dos cargas a granel.
Los dos tipos de carga a granel se pueden transportar fácilmente juntos, por lo que
Se acepta ga en cualquier cantidad.

TABLA 2.16

Peso por contenedor o Volumen por contenedor Lucro


Tipo de carga
por m 3 - (tonelada) (m 3 ) $ / tonelada

1 ( contenedor ) 0,7 0,5 200


2 ( contenedor ) 0,9 1 220

3 ( contenedor ) 0,2 0,25 175

4 (a granel) 1,2 / m 3 - 235

5 (a granel) 1,7 / m 3 - 180

Desarrollar el problema de programación lineal que optimiza la distribución de la carga para maximizar
optimizar el beneficio del vuelo del carguero.

1. Elección de la variable de decisión

x ij º cantidad de carga de tipo i ( i = 1, 2, 3 - número de contenedores , i = 4, 5 - toneladas de granel i ), asignado


cada uno al compartimento j ( j = 1 - frente, j = 2 - centro, j = 3 - cola, j = 4 - mantener).

2. Formulación de restricciones tecnológicas

a) Restricciones de peso por compartimento:

3 ⎧
⎪ 5, j= 1
∑ ≤Xij ⎨7 , j = dos
yo =1 ⎩⎪
6, j= 3

1,2 x 4 j + 1,7 x 5 j £ 7, j = 4

Página 62

54 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

b) Restricciones de espacio:


⎪ 35 , j= 1
0,5 x 1 j + x 2 j + 0,25 x 3 j £ ⎨55 , j = dos
⎩⎪
30 , j= 3

x 4 j + x 5 j £ 30, j = 4; *

c) Restricciones generales de equilibrio

3 3 3

∑ Xyo1 ∑ Xyodos ∑ Xyo3


= 1
yo = 1
yo = 1
yo 12, X 44 + 17, X 54
= = =
5 7 6 7

Cabe señalar que esta restricción probablemente debería tener límites de tolerancia, ya que
dado que las variables involucradas en la suma son enteros, lo que posiblemente haría que el
Cumplimiento simultáneo de este conjunto de restricciones. Esta tolerancia también está perfectamente justificada
cada uno en la vista práctica de la carga de aviones. En este caso, una de las posibilidades de
La situación sería como:

3 3 3

∑ Xyo1 ∑ X yodos ∑ X yo3


= 1
yo yo= 1 = 1
yo 1 ,2 X 44 + 1 , 7X 54
+ X = + X = + X = + xf
F1 F dos F3 4
5 7 6 7

para variables de tolerancia adecuadas x fi Î Â, i = {1, ..., 4}

3.Desarrollo de la función objetivo

https://translate.googleusercontent.com/translate_f 51/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
z = Maximizar

3 3 3

{()
fx = 200 ∑ X1j + 220 ∑ X dosj + 175 ∑ X 3 j + 1 ,2235
× X 44 + 1 ,7 180
× X 54 }
j= 1 j= 1 j= 1

4. Condiciones de integridad y no negatividad

x 1 j , x 2 j , x 3 j ÎZ + , j = 1, 2, 3 ; x 4 j , x 5 j £ 0, j = 4.

6 - El problema de la auditoría bancaria K

Fase 1: proceso de auditoría normal


Un banco debe decidir cuántos auditores contratar en un período de seis meses.
operación a saber: marzo - agosto. Las necesidades del esfuerzo de auditoría se tienen en cuenta en términos de
la fuerza laboral de auditores experimentados de la siguiente manera:

* Los coeficientes volumétricos a granel se consideran iguales a 1 por seguridad.

Página 63

MODELOS DE PROGRAMACIÓN LINEAL 55

TABLA 2.17

Mes Necesidad en hombres x hora

marzo 7.000
abril 8.000
Mayo 10,000
junio 11.000
julio 7.000
agosto 11.000

Cada auditor contratado como empleado bancario, a pesar de estar capacitado y aprobado en un concurso,
tiene que ser entrenado durante un mes antes de que pueda actuar plenamente en su papel. En esta formación,
auditores experimentados del propio banco, que, no trabajando en la auditoría normal,
Asignar 100 horas para que cada auditor sea capacitado. Un auditor trabaja 150 horas al mes. En uno de los de
Febrero el banco cuenta con 60 auditores experimentados. El programa de contratación se iniciará el 1 de la
de marzo.
También se sabe que el mercado laboral de los auditores es muy inestable, por lo que el 10%
de la plantilla de estos experimentados profesionales sale del banco cada mes en busca de una mejor salud
larys. Un auditor experimentado recibe del banco aproximadamente R $ 2.000,00 mensuales, mientras que el auditor en formación
sólo recibe un subsidio de R $ 150,00. Cuando el número de auditores supera las necesidades
actividades, la carga de trabajo se reduce, pero no se realizan despidos debido al alto costo del proceso
En la corte. Cuando esto sucede, no se contratan nuevos auditores y la evasión normal equivale
golpear a la fuerza laboral.
Formule el problema para minimizar los costos operativos del sistema de auditoría.

Fase 2: Uso del proceso de subcontratación

Paralelamente al sistema formal de contratación de auditores, existe la posibilidad de obtener la


mano de obra para auditorías a través de una empresa de subcontratación: burócratas a su servicio.
Esta organización ofrece auditores experimentados (posiblemente evadidos del sistema normal) y
acreditado por la Cámara de Auditores Jurados. Este profesional cuesta R $ 2.500,00 por mes y
Se puede incluir y quitar de la hoja en cualquier mes sin ningún costo de admisión o despido.
Burocráticos solo requiere la garantía mínima de un mes de trabajo para el profesional y que no
Trabajar en la formación, sobre todo porque la empresa promueve el curso para otorgar licencias a auditores jurados.
como servicio adicional. Reformular el problema teniendo en cuenta esta nueva posibilidad
calidad.

Desafío : reformular el problema en caso de que la empresa burocrática comience a exigir una garantía
mínimo de tres meses de empleo para sus auditores y una indemnización proporcional a K veces el número
número de meses trabajados más allá de esos tres meses.

Solución

Fase 1
https://translate.googleusercontent.com/translate_f 52/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

1. Elección de la variable de decisión

x j º número de auditores en formación en el mes j , ( j = 0, ..., 6).


i será utilizado como un índice auxiliar, i = 1, ..., 6.
d i º vector de demanda = (7.000, 8.000, 10.000, 11.000, 7.000, 11.000)

Página 64

56 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

2. Formulación de restricciones tecnológicas

a) Restricciones de demanda:

x 0 = 60

yo- 1
⎛ ⎞

150 ⎝ ∑ 0 ,9
ij - ⎟– 100 x i ³ d i ,
xj ⎠ i = 1, ..., 6
j= 0

El número de auditores experimentados que inician el proceso de planificación se puede considerar, en


términos de modelado, como se entrenó en febrero. Un auditor capacitado, es decir, con experiencia,
cuota de evasión a fin de mes. En últimas palabras, el 10% de los profesionales capacitados evaden la
primer mes comportándose, a efectos de la fuerza laboral, como auditores experimentados. Es necesario,
todo, recuerda que solo reciben una mesada en ese primer mes.

b) Restricción de la capacidad de formación

Considerando la restricción a) que establece las condiciones iniciales para el número de auditores senior,
Entonces:

yo- 1

∑ 0 ,9 ij - X j ≥ 15 Xyo, i = 1, ..., 6
j= 0

3. Configuración de la función objetivo

6 yo- 1
⎛ ⎞
z = Minimizar {() fx = ∑ ⎜
⎝ 2000 (
∑ 0 ,9
ij -
x j ) +150 x i ⎟}

yo= 1 j= 0

4. Condiciones de integridad y no negatividad

x j Î Z + , j = 1, ..., 6.

Nivel 2

1. Elección de la variable de decisión

Lo mismo y más:
y i º número de auditores jurados contratados para trabajar en el mes i , i = 1, ..., 6

2. Formulación de restricciones tecnológicas

a) Restricciones de demanda:

x 0 = 60

yo- 1
⎛ ⎞ 100 x i ³ d i ,

150⎝ ∑ 0 ,9
ij - ⎟–
x j + y yo ⎠ i = 1, ..., 6
j- 0

https://translate.googleusercontent.com/translate_f 53/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

Página 65

MODELOS DE PROGRAMACIÓN LINEAL 57

b) Restricción de la capacidad de formación:

Lo mismo que en la primera fase.

3.Desarrollo de la función objetivo

6 ⎛ yo- 1 ⎞
z = Minimizar {() fx = ∑ ⎜⎜2000
.( ∑ 0 ,9 ij- X j ) + 150 Xyo + 2500
.

y yo⎟}
yo =1⎝ j= 0 ⎠

4. Condiciones de integridad y no negatividad

x j Î Z + , j = 1, ..., 6; y yo Î Z + , yo = 1, ..., 6.

7 - El problema de los incendios forestales - Ataque masivo K

Fase 1: ataque masivo


Una reserva forestal está en llamas y el gobierno está planeando una gran operación para combatir
fuego para mañana. El fuego es de pequeñas proporciones y se propaga lentamente, y
extinguirse en unas tres horas de funcionamiento poco después del amanecer. Se están desplegando aviones
y helicópteros especializados en este tipo de operaciones. Las características de los dispositivos se muestran en la
hermoso 2.18:

TABLA 2.18

Eficiencia en Costo Necesito en


Dispositivo
Fuego (m 2 / hora) (R $ / Hora) Gente

Helicóptero AH-1 15.000 2000 2 pilotos


Avión tanque 40.000 4000 2 pilotos - 1 operador

Avión B67 85.000 10,000 2 pilotos - 3 operadores

El área de bosque a ser cubierta por la extinción de incendios es de 3.000.000 m 2 , involucrando el frente de fuego
(para detener el avance del daño), áreas ya quemadas que necesitan ser rescatadas (para protección
de animales y seguridad contra el reclutamiento) y áreas de acceso (protección preventiva indispensable).
En las bases de apoyo se encuentran disponibles 14 pilotos de avión y 10 pilotos de helicóptero, así como 22 operadores especializados.
especializado en combate aéreo de fuego.
Formule el problema de programación matemática que minimice los costos de la operación.

Solución:

1. Elección de la variable de decisión

x i º número de dispositivos a utilizar i ( i = 1 - Helicóptero; i = 2 - Aeronave tanque; i = 3 - Avión


B67).

2. Formulación de restricciones tecnológicas

a) Restricción de la demanda del área de incendio:

Página 66

58 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

Como la operación debe completarse en tres horas, podemos imaginar un horizonte de planificación
genial durante una hora que se repite tres veces, luego:

15 x 1 + 40 x 2 + 85 x 3 ³ 1.000

b) Restricción de disponibilidad de mano de obra

4 helicópteros:

https://translate.googleusercontent.com/translate_f 54/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
2 x 1 £ 10 (jinetes)
4 aviones:

2 x 2 + 2 x 3 £ 14 (pasajeros)
x 2 + 3 x 3 £ 22 (operadores)

3.Desarrollo de la función objetivo

z = Minimizar { f ( x ) = 2,000 x 1 + 4,000 x 2 + 10,000 x 3 }

4. Condiciones de integridad y no negatividad

x j Î Z + , j = 1, 2, 3.

8 - El problema del sistema de defensa aérea K

Fase 1: asignación de armas de Target X


Se distribuye un cierto conjunto de armas antiaéreas para defender una ciudad de una
ataque. Hay n plataformas de misiles. Se sabe que d ij es la distancia entre la plataforma del arma i y la amenaza
ça j (avión o misil enemigo), que el alcance máximo de los misiles es de r i , que el costo de cada disparo en
una amenaza j es de c ij y el valor de neutralizar la amenaza es v j . En cada ataque, el sistema de defensa
debe seleccionar, entre m amenazas, sólo k posibles objetivos.
Desarrollar el modelo matemático de asignación de armas objetivo que minimice el costo de defensa.

Fase 2: consideración de la eficacia

Se sabe que cada asignación de arma 'objetivo debería ser despedido p ij misiles al objetivo es neu-
tralizado. Sabiendo que hay m i misiles disponibles en cada plataforma, replantee el problema
para minimizar el costo de la defensa.

Solución:

Asignación de armas Target X

1. Elección de la variable de decisión

⎧1 , si el arma está asignada


yo a la amenaza j⎫
x ij = ⎨ ⎬ yo= 1 , ...,; nortej = 1 , ..., metro
⎩0 , caso contrario ⎭

2. Formulación de restricciones tecnológicas

a) Restricción de alcance, para no permitir que un arma dispare a un objetivo más allá de su alcance:

Página 67

MODELOS DE PROGRAMACIÓN LINEAL 59

( r i - d ij ) x ij ³0 i = 1, ..., n j j = 1, ..., k , ..., m

b) Restricción del número de asignaciones de objetivos, con el objetivo de que el sistema global actúe sobre k objetivos.

norte metro

∑ ∑ = X ij k
yo= 1 j= 1

c) Restricción de disparo que evita que un objetivo sea asignado a más de un arma.

norte
∑ x ij £ 1, j = 1, ..., m
yo= 1

d) Restricción de disparo que evita que un arma sea asignada a más de un objetivo.

metro

∑ x ij £ 1, i = 1, ..., n
j= 1

https://translate.googleusercontent.com/translate_f 55/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
3.Desarrollo de la función objetivo

metro norte norte

z = Maximizar { f ( x ) = ∑ (vj ∑ x ij - ∑ c ij x ij )}
j= 1 = 1
yo = 1
yo

Consideración de efectividad

1. Elección de la variable de decisión

⎧1, si al arma se le asigna


yo la amenaza j⎫
x ij = ⎨
⎩0, caso contrario
⎬ i = 1, ..., n ; j = 1, ..., m

2. Formulación de restricciones tecnológicas

a) Restricciones de alcance, asignación a k objetivos y una única plataforma asignada a un objetivo y viceversa
permanece igual.

b) Restricción al número de disparos.


En el modelo anterior, la asignación de armas objetivo y el disparo constituían la misma decisión. En el presente
si la asignación implica p ij disparos. Para que una asignación sea válida ahora es necesario que m i ³ p ij , j = 1,
... m, entonces:

metro

∑ x ij p ij £ m yo yo = 1, ..., n
j= 1

3.Desarrollo de la función objetivo

metro norte norte

z = Maximizar { f ( x ) = ∑ (vj ∑ x ij - ∑ c ij p ij x ij )}
j= 1 yo= 1 = 1
yo

Página 68

60 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

9 - El problema de los anuncios de la red de televisión K


Una cadena de televisión decidió establecer precios competitivos por tiempo comercial en ciertos
horarios. Hay tres horarios para la publicidad en la red: horario de máxima audiencia (horas
río 1), tarde los fines de semana (hora 2), tarde los días de semana (hora 3). O
El precio de un módulo de publicidad mínimo a cada hora es p 1 , p 2 y p 3 , respectivamente. La red
vende grandes espacios de tiempo dentro del horario, llamados paquetes promocionales. los
los anunciantes desean unirse al programa de paquetes de publicidad promocional porque pueden obtener
teniendo así mejores precios unitarios. Un paquete representa un esquema de descuento basado en
economías de escala. Hay tres rangos de precios que se practican en los paquetes. Pista 1, o
descuento cero, rango 2, donde el descuento es de 10 unidades monetarias y rango 3, con descuento de 30
unidades monetarias. La siguiente tabla resume las reglas de la promoción:

TABLA 2.19 REGLAS DE PROMOCIÓN

Importe de descuento
Descuentos Suma de tiempo
(en unidades monetarias)

Pista 1 sin requisito 0

compra al menos
Pista 2 10
f unidades de tiempo

compra al menos
Pista 3 30
g unidades de tiempo

Los anunciantes que compiten en la disputa por el uso de medios son n y cada uno tiene s n
unidades monetarias para invertir en publicidad.
Los anunciantes, reunidos en asociación, quieren establecer la mejor estrategia de negociación
con la red, con el objetivo de maximizar, dentro de la disponibilidad presupuestaria de cada cliente, la
tiempo total de uso de medios.
Formule el modelo que maximice las ganancias de los anunciantes.

Solución:

Desde el punto de vista de los anunciantes, es deseable maximizar el descuento, dadas las restricciones
de cada anunciante.

https://translate.googleusercontent.com/translate_f 56/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

1. Elección de la variable de decisión

t i º tiempo disponible para publicidad en el tiempo i , i = 1, 2, 3.


x ik º tiempo adquirido en el tiempo i , i = 1, 2, 3, por el anunciante k , k = 1, ..., n .

⎧1, si el anunciante ha comprado


k más de Fmódulos de tiempo ⎫
ykº ⎨
⎩0 , caso contrário

⎧1, si el anunciante ha comprado


k más de gramo
módulos de tiempo ⎫
wkº ⎨
⎩0 , caso contrário

s kº cantidad máxima de recursos aportados por el anunciante k


p i º precio de la hora del anuncio en el momento i .
c kº coste total que será pagado por el anunciante k , respecto al descuento total al que tiene derecho.

2. Formulación de restricciones tecnológicas

a) Restricciones sobre el importe abonado por el anunciante, dados los posibles descuentos

Página 69

MODELOS DE PROGRAMACIÓN LINEAL 61

pg k = ∑ x ik p yo k = 1, ..., n
yo =1

c k = pg k - 10 y k - 20 w k
sk³ck k = 1, ..., n

b) Restricción del tiempo máximo disponible en horarios

norte

∑ Xik £ t i i = 1, 2, 3
k= 1

3.Desarrollo de la función objetivo

3 norte

z = Maximizar { f ( x ) = ∑∑ x ik }
yo= 1 k= 1

4. Condiciones de no negatividad

x ik ³ 0, i = 1, 2, 3, k = 1, ..., n.

10 - El problema del equipo de natación norte

Problema 1: La constitución de un grupo para una competición.


Un club de natación, Flamingo, fue desafiado por Botabolo en una competencia de relevos
cuatro estilos en 200 m. Hay 100 nadadores entrenando en el club. El departamento técnico tiene la
registro de cada nadador mostrando los tiempos en los estilos pecho (P), espalda (C), mariposa (B) y libre (L),
por 200 metros. El entrenador quiere seleccionar el mejor equipo de los nadadores en entrenamiento.
posible. Formular el problema de programación matemática que asiste al técnico en su tarea.

Problema 2: La constitución de un equipo de entrenamiento

Desafortunadamente, el Flamingo terminó derrotado en el desafío con su archienemigo en la natación por un evento.
tejido imprevisto: uno de sus nadadores, el mejor en estilo mariposa, fieltro, junto a la piscina,
una pequeña tensión en el brazo que empezó a entorpecer los movimientos de esa especialidad.
Como era un nadador que tenía un excelente tiempo en estilo libre, el entrenador trató de reorganizarse en
la designación de estilos. El problema es que su equipo era de especialistas. Los otros tenían
malos momentos ajenos a tu especialidad. Se hizo el mejor intercambio posible, pero el equipo acabó perdiendo
girado por el tiempo bajo en el golpe de mariposa. El entrenador, disgustado por el incidente, decidió tomar
dos medidas:

a) Constituir un equipo de entrenamiento de élite con 4 equipos de 4 nadadores, evitando


problemas de salud de última hora.

https://translate.googleusercontent.com/translate_f 57/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

b) Identificar nadadores polivalentes.

Formular el problema de programación matemática que asiste al técnico en su tarea.

Página 70

62 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

Problema 3: Selección de un equipo de competición

Flamingo no podía irse sin una respuesta a la derrota en el torneo. Entrenando al equipo de élite el técnico
El único del club se sintió seguro al devolver el desafío. Solo que esta vez las reglas serían diferentes: el
El equipo tendría una reserva de usos múltiples. Formular el problema de ayudar a Flamingo a elegir lo mejor.
equipo para una competencia, considerando que el grupo incluye un nadador de reserva. Justifica el
criterios que se han adoptado.

Problema 4: La competencia final (desafío)

En la carrera de relevos, el equipo pórtico (Flamingo) ganó el Botabolo. Esta vez fue un
de los nadadores de Botabolo que se hundieron en la piscina. Los bolenianos se volvieron locos. El tablero, irritado
da, culpó a la alineación de los equipos ya su entrenador que “no entendía nada sobre reservas”. Para tomar el
duda sobre cuál de los dos clubes sería el rey de las quinielas, Botabolo desafió esta vez a Flamingo
para un gran concurso de natación. Un todo o nada. La idea sería promover la competencia entre
tres equipos de los dos clubes. La puntuación la haría el equipo desde el primero hasta el último lugar,
para eliminar la posibilidad de un accidente ocasional y poner fin al historial de reservas (que
había beneficiado "claramente" a Flamingo). Según el director de Botabolo: “Entonces
vamos a ver quién es el bueno en el agua ... vamos a acabar con la lotería de torneos aislados y
trucos de los técnicos ". La puntuación desde el primer al último lugar para los seis equipos sería respectivamente
mente: 8, 6, 4, 3, 2, 1. Humillados, los Bolenses decidieron jugar duro: se llevaron las fichas con el
tiempos de limícolas y te contrató para formular el problema de elegir tus tres equipos
con el fin de maximizar las posibilidades de un resultado positivo y ahogar las horquillas en la piscina con
dos metros de agua encima. Hay 100 nadadores entrenando en Botabolo y sus mejores momentos
también están disponibles.

Solución:

Constitución de un equipo de competición

1. Elección de la variable de decisión

⎧1, si el nadador está asignado


yo a nadar el estilo O j⎫
x ij ⎨ ⎬ i = 1, ..., 100; j Î { P , C , B , L }
⎩0 , caso contrário ⎭

t ij º tiempo del nadador i en estilo j (para 200 m).

2. Formulación de restricciones tecnológicas

a) Restricción que garantiza que todos los estilos tendrán un nadador asignado:

100
∑ x ij = 1 j Î { P , C , B , L }
yo =1

b) Restricción que garantiza que un nadador no será asignado a más de un estilo:

∑ x ij £ 1, i = 1, ..., 100
j=P

Página 71

https://translate.googleusercontent.com/translate_f 58/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
MODELOS DE PROGRAMACIÓN LINEAL 63

3.Desarrollo de la función objetivo

100 L

z = Minimizar { f ( x ) = ∑∑ t ij x ij }
yo= 1 j=P

4. Condiciones de integridad y no negatividad

x ijk ∈ {,} 0 1

Formación del equipo de entrenamiento con 16 nadadores polivalentes

1. Elección de la variable de decisión

⎧1, si el nadador está asignado


yo a nadar el estilo j⎫
k
Xij ⎨ en el equipo k ⎬ i = 1, ..., 100; j Î { P , C , B , L};
⎩0, de lo contrario ⎭
k = 1, 2, 3, 4

t ij º tiempo del nadador i en estilo j (para 200 m).

2. Formulación de restricciones tecnológicas

a) Restricción que garantiza que todos los estilos en cada equipo tendrán un nadador asignado:

100

∑ k
x ij = 1 j Î { P , C , B , L }; k = 1, 2, 3, 4
yo =1

b) Restricción que garantiza que un nadador no será asignado a más de un estilo:

∑ x£ kij1, i = 1, ..., 100; k = 1, 2, 3, 4


j=P

3. Configuración de la función objetivo de los equipos

4 100 L

z = Minimizar { f ( x ) = ∑∑∑ ()txij ij k }


k = 1 yo
= 1 j=P

4. Condiciones de integridad y no negatividad (destacando la condición)

x ijk ∈ 0 {1, }

5. Identificación de nadadores polivalentes

Relajar la restricción 2 b), permitiendo que un nadador sea asignado a más de un estilo en la lista de 16.
nadadores de élite. Los polivalentes serán aquellos con múltiples dotaciones.

Página 72

64 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

Solución:

Constitución del equipo de competición 4 X 200 con reserva

El equipo de competición elegido según los criterios del problema 1, la reserva, un nuevo componente
grupo, podría ser elegido por los criterios de versatilidad del problema 2 o minimizando el aumento de
tiempo del equipo dedicado a eliminar a uno de sus miembros, como se muestra a continuación:

1. Elección de la variable de decisión



⎩ ⎬


https://translate.googleusercontent.com/translate_f 59/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
xiº ⎨
⎩10 ,, sicaso
⎧ el nadador está designado
contrário yo como reserva ⎭ i = 1, ..., 96

t ij , tiempo del nadador i en estilo j (para 200 m).

Considerando el índice de nadadores seleccionados por los criterios de los expertos como: a, b, f, q

2. Formulación de restricciones tecnológicas

a) Restricción que garantiza que un nadador esté indicado como reserva:

96
∑ x yo= 1
= 1
yo

3. Configuración de la función objetivo que minimiza la reducción de tiempo reemplazando uno de los
nadadores.

z = Minimizar

⎛ 96 ⎞ ⎛ 96 ⎞ ⎛ 96 ⎞ ⎛ 96 ⎞
{()
fx

=⎜ ∑ txiP i
⎟ ⎜
- t α PAGS
⎟ +⎜ ∑
txiC i - t βC
⎟ ⎜
⎟ +⎜ ∑ txiB i
⎟ ⎜
- t φ segundo
⎟ +⎜ ∑
txiL i

- t θ L ⎟}
⎝yo= 1 ⎠ ⎝yo= 1 ⎠ ⎝yo= 1 ⎠ ⎝yo= 1 ⎠

11 - El problema de la expedición de investigación a Marte METRO


Después de cuidadosos estudios, cierto país decidió enviar una expedición de investigación al planeta.
Marte. Elegir una tripulación adecuada para el esfuerzo del viaje y el trabajo en el planeta es una de las más
dificultades de mando de la misión. El centro de formación, con más de 300 candidatos
calificado, decidió utilizar un modelo matemático para ayudar en esta tarea. Adquirir confianza
el modelo, el mando tipo misión decidió simularlo en un pequeño grupo de candidatos
altamente cualificado y, en este grupo más reducido, estudiar las ventajas del modelo. La tabla 2.20 resume
me los atributos del grupo de 11 personas seleccionadas para probar el modelo:

TABLA 2.20

Hombres Mujer

Criterio Fábio Gallo Saul Paulo José Bruno Maria A-N-A Hermoso Dina Carla

Peso 80 85 70 sesenta y cinco 90 75 50 45 55 60 sesenta y cinco

Salud 150 150 95 140 90 105 145 145 105 140 95

Página 73

MODELOS DE PROGRAMACIÓN LINEAL sesenta y cinco

TABLA 2.20 CONTINUACIÓN

Hombres Mujer

Criterio Fábio Gallo Saul Paulo José Bruno Maria A-N-A Hermoso Dina Carla

Areas de Y METRO F Y C LA F F METRO PAGS PAGS


Calificación C F segundo LA yo C segundo Y Y C segundo
yo C LA LA METRO GRAMO yo yo METRO
GRAMO yo

Formación
en el simulador 150 200 180 240 220 100 200 250 200 180 100
(H)

Incompat. José - - - Fábio Hermoso - - Bruno A-N-A -

Consumo
Enérgico 20 29 30 35 23 40 25 30 25 17 15
(kcal)

equipaje
35 25 30 40 17 40 30 40 30 20 30
(kg)

Siglas de las especialidades: medicina (M), ingeniería (E), geología (G), psicología (P), física (F), astronomía (A), comando (C),
tecnología de la información (I) y biología (B).

Los requisitos del mando tipo misión se pueden resumir, inicialmente, como:
El barco llevará a 5 personas, al menos 2 hombres y 1 mujer. Hay 2 vacantes a bordo para
personas calificadas en el mando (C) que deben ser empleadas. Otras habilidades
son indispensables para el cumplimiento de la misión en Marte y en el viaje. Para ello, sigue siendo necesario

https://translate.googleusercontent.com/translate_f 60/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
junta al menos:

- 2 personas tituladas en medicina (M).


- 1 persona titulada en psicología (P).
- 1 persona en astronomía (A).
- 1 persona en informática (I).

Para los ingenieros de mando tipo misión, el factor principal de optimización es el peso. Ahí está el peso
fijo, independientemente de la tripulación, y el peso variable. La optimización de este paso debe centrarse
sobre el peso de la tripulación y su equipaje. Los costos estimados son R $ 10.000,00 por kg de peso del
tripulación o equipaje. El mando tipo misión comprende por equipaje los elementos necesarios para ejercitar
calificación de cada miembro de la tripulación. Si el peso total de personas y equipaje supera los 1.000 kg, el
healthy necesitará un módulo de empaque adicional a un costo de aproximadamente R $ 10 millones.
También existen graves limitaciones para el uso del simulador de vuelo, que es un equipo muy caro y
que no tiene la capacidad de expandirse. Hasta el lanzamiento, de hecho, estarán disponibles 1000 horas.
para entrenamiento. La tabla resume el tiempo que aún se necesita para capacitar a cada componente del grupo en
analizar.
Según estudios clínicos de contagio y progresión epidemiológica en poblaciones aisladas,
Para proteger la misión, ningún subgrupo de tres miembros de la tripulación puede obtener menos de 290 puntos en el
prueba de salud.
Si el consumo energético de la tripulación y sus actividades profesionales supera las 150 kcal / día,
serán posibles dos soluciones: equipar el barco con una batería extra de energía a un costo de R $ 10 millones
mil millones o con un módulo de reciclaje y balance energético biológico en el que cada kcal de demanda
la adición de 150 kcal costará R $ 55.000,00 más.
Formule el problema de elegir la tripulación para minimizar los costos totales.

Después de algunas reuniones técnicas, el mando tipo misión se vio obligado a repensar algunos puntos.
Criteria de selección:
Basado en un estudio de psicología del trabajo en equipos:

Página 74

66 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

• Si el número de hombres en la tripulación supera al de mujeres en más de dos personas, el comando


antes del barco debe ser una mujer y viceversa.

• Las personas designadas en una vacante de mando no ejercerán otra calificación.


• Las personas que estén calificadas para mandar pero que no hayan sido asignadas para hacerlo pueden
llenar cualquier otra vacante.

Basado en un estudio técnico:

• En el caso de que el dispositivo de reciclaje ambiental equipe el barco, la presencia de un biólogo será
indispensable en la tripulación.

Reformular el problema de la elección de la tripulación para tener en cuenta también las restricciones derivadas
el estudio de la psicología del trabajo en equipo y la exigencia del reciclaje ambiental.

Solución de primer orden

Elegiremos una variable binaria para decidir la elección de cada persona para componer la misión. Me gusta
los requisitos implican distinción de género, las variables tendrán esto en cuenta:

1. Elección de la variable de decisión

⎧1, si el hombre es elegido


yo ⎫
hiº ⎨
⎩0, de lo contrario
⎬ i = F , G , S , P , J , B , el índice de hombres en este grupo.

⎧1, si la mujer es elegidaj ⎫


mjº ⎨
⎩0, de lo contrario
⎬ j = M , A , L , D , C , el índice de mujeres en el mismo grupo.

2. Formulación de restricciones tecnológicas

a) Restricción asociada al número de hombres y mujeres en la misión:

segundo

∑ ≥h 2i
Si=

https://translate.googleusercontent.com/translate_f 61/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

Σ mj³1
j=M

(*) El comunicado no deja claro por qué el número mínimo de vacantes para cada sexo tiene esta distribución
asignación aparentemente discriminatoria.

b) Restricción asociada con el requisito de habilidad de mando:

hF+hG+hJ+hB+mD³2

c) Restricción asociada con el requisito de habilidad psicológica:

mD+mc³1

Página 75

MODELOS DE PROGRAMACIÓN LINEAL 67

d) Restricción asociada con el requisito de conocimientos de astronomía:

hP+hB+hS³1

e) Restricción asociada a la exigencia de conocimientos informáticos:

hF+hJ+mM+mL+mD³1

f) Restricción asociada al uso del simulador:

15 h F + 20 h G + 18 h J + 24 h P + 22 h J + 10 h B + 20 m M + 25 m A + 20 m L + 18 m D + 10 m C £ 1,000

g) Restricción de compatibilidad personal:

hF+hJ £ 1 (Fábio y José)

h B + m L £ 1 (Bruno y Linda)
m D + m A £ 1 (Dina y Ana)

h) Restricción asociada a aspectos epidemiológicos:

Esta restricción puede ser un problema significativo para el modelo porque su número es básicamente
oclusivo, ya que resulta de combinar el número de candidatos de tres a tres. Considerando el
desempeño sanitario s i y s j asociado con miembros masculinos de la tripulación (índice i ) y mujeres
minino (índice j ), considerando también los conjuntos jÌ { F , G , S , P , J , B } y pÌ { M , A , L , D , C }, podemos
modele el requisito a través de las siguientes restricciones:

∑ shii + ∑ smj j
≥ 290
yo∈ ϕ j∈ π
ϕ + =π 3

En el presente caso, es visible que varias de las restricciones serían redundantes.

3.Desarrollo de la función objetivo

Debido a la complejidad de FO lo dividiremos en tres partes, a saber:

z = Minimizar { f ( x ) = A + B + C }

Dónde:

R : Es la parte relacionada con el costo por el peso de la tripulación y su equipaje.


B : Es la porción del módulo de transporte adicional (agregado si la carga variable total supera los 1.000 kg).
C : Es la porción debida al módulo energético o al reciclador biológico.

4 plazo A

A = 10 4 [suma del peso transportado] =


= 10 4 [(35 + 80) h F + (25 + 85) h G + (30 + 70) h S + (40 + 60) h P + (17 + 90) h J + (40 + 75) h B +

https://translate.googleusercontent.com/translate_f 62/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
+ (30 + 50) m M + (40 + 45) m A + (30 + 55) m L + (20 + 60) m D + (30 + 65) m C ]

Página 76

68 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

4 Porción B

El modelado de esta parte requiere un razonamiento complementario. El problema dice que si el peso
contabilizado en el paquete A supera los 1000 kg, se debe agregar un nuevo paquete a la función objetivo
tivo. Resumiendo:
Si [suma de pesos del transportados] entonces existe> 1000 la parte B . Modelemos esta condición
a través de la variable binaria s de la siguiente manera:

Si [åpesos> 1.000] Þ s = 1
Si [åpesos £ 1,000] Þ s = 0

La condición lógica definida previamente se puede representar mediante la siguiente restricción:

(åpesos - 1.000) s ³ 0, para s una variable binaria {0.1}.

Con la variable binaria podemos entonces controlar la condición de activación de la cuota de R $ 10 7 en el fondo.
declaración de objetivos. En ese caso:

B = 10 7 s

con la siguiente restricción lógica que se agregará al conjunto de restricciones del problema:

{( 115 h F + 110 h G + 100 h S + 100 h P + 107 h J + 115 h B + 80 m M +


85 + m A + 85 m L + 80 m D 95 + m C ) -1.000 } s ³ 0

4 plazo C

La sección C requiere el control de la condición de activación para dos situaciones diferentes. Cuando la suma
el gasto energético supera las 150 kcal / día, dos hipótesis pueden ser posibles: la activación de
un módulo de reciclaje biológico o un módulo de batería. En este caso, necesitamos dos variables
Los parámetros de control y la condición de la decisión lógica del modelado se pueden describir como sigue:

a=1

Si [å Demanda de energía> 150 kcal] o (exclusivo)

b=1

Condición que se puede formular como:

(åDemanda - 150) (a + b) ³ 0 e
(a + b) £ 1
con a, b Î {0, 1}
o sea:

a - {(20 h F + 29 h G +30 h S +35 h P +23 h J +40 h B +25 m M + 30 m A + 25 m L +

+ 17 m D + 15 m C ) –150 } (a + b) ³ 0
b - (a + b) £ 1

Agregar las dos restricciones anteriores al conjunto de restricciones del problema y usar la
dos variables binarias para controlar la decisión de la función objetivo, podemos escribir la gráfica C como:

Página 77

MODELOS DE PROGRAMACIÓN LINEAL 69

https://translate.googleusercontent.com/translate_f 63/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
C = 10+ 725
a +m55,000 m{A(+20
M + 30 b 25hmF L+ +2917h m
G+D 30 h Sm+C35
+ 15 ) -h150}
P + 23 h J + 40 h B +

Observamos que la inclusión de restricciones lógicas de esta naturaleza hace que el problema no sea lineal.

Solución de segundo orden

4 Requisito de dedicación exclusiva al mando

La consideración de una distinción entre las personas que ocupan la vacante de mando en la designación de
no es posible rehacer en el modelo anterior. Para cumplir con la solicitud del mando tipo misión, el
modelo debe recibir una variable que haga posible este control, entonces:
x i , variable binaria que toma el valor 1 cuando el miembro de la tripulación i es asignado a la ola de comando
y 0 en caso contrario, i = F , ..., C .
La consideración de la variable x i nos lleva a una implicación lógica. Si x i = 1, obviamente h i y m i correspondientes
Los encuestados también serán 1 (nadie puede ocupar una vacante de mando si no está asignado a la
misión). En ese caso, la restricción de comando, que estaba en la primera solicitud escrita en términos de h i y m i ,
ahora se puede reescribir con la nueva variable de decisión.
Garantizar la condición lógica de que si x i = 1 Þ h i = 1 om i = 1, en los índices correspondientes
tenemos la posibilidad de introducir las siguientes restricciones:

x yo - h yo £ 0 o x yo - m yo £ 0

Por lo tanto, agregaremos las siguientes restricciones al modelo:

x F - h F £ 0; x M - m M £ 0; x G - h G £ 0 o x A - m A £ 0, etc.

más la nueva restricción para el comando que reemplaza a la del orden 1:

b) Restricción asociada con el requisito de habilidad de mando

xF+xG+xJ+xB+xD³2

En este punto, insistimos en que el control sobre el sexo de la tripulación representado por
La variable x es perfectamente posible de realizar por su índice. Esto podría haberse tenido en cuenta
desde el primer pedido.

4 Demanda de equilibrio de poder entre los sexos

El mando tipo misión quiere equilibrar el poder entre los sexos de la tripulación. Llamar a R lo siguiente
equilibrio entre la tripulación:

⎛ segundo C ⎞

R= ⎜ ∑Hyo - ∑ metro ⎟
yo - dos

⎝Si= =
soy

Entonces:

Si R > 0, al menos una mujer será asignada al comando.


Si R <0, al menos un hombre será asignado al comando.
Si R = 0 se mantienen las condiciones de orden 1.

Página 78

70 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

La solicitud nos lleva a la necesidad de controlar la activación y desactivación de restricciones en el problema de


como sigue:

Si R > 0 Þ ∑ x i ³ 1, donde V es el grupo de mujeres calificadas para mandar.


yo∈V

Si R <0 Þ ∑ x i ³ 1, donde W es el conjunto de hombres calificados para mandar.


yo∈W

Para el caso:

a) 5 x D - R ³ 0
b) 5 ( x F + x G + x J + x B ) + R ³ 0

https://translate.googleusercontent.com/translate_f 64/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

Tenga en cuenta que si R <0, la restricción a) se cumple trivialmente, y para R > 0, es la restricción (b)
eso será respondido trivialmente.

El valor del coeficiente 5 se eligió convenientemente igual al número de miembros de la tripulación en el barco.
para evitar problemas de inconsistencia, como impedir que una de las personas del grupo
la minoría sería asignada al mando.

4 Requisito de presencia de biólogo

La presencia de un biólogo se puede controlar mediante la variable b . La restricción de la obligación de precio


La presencia de un biólogo se activará cuando b = 1. En el caso específico:

(hS+mM+mC)-b³0

Tenga en cuenta que cuando b = 0 la condición se cumple trivialmente.

12 - El problema del estanque de estabilización norte


Se diseñó un sistema de tratamiento de aguas residuales específico para estructurar la recolección de efluentes.
entidades industriales y domésticas y reducir el flujo de oxígeno en las aguas residuales (DBO) a través de
tratamientos aeróbicos en dos estanques de estabilización y un canal de conexión. La figura 2.9 aclara el
arquitectura general de recogida y tratamiento:
Los estándares de protección ambiental requieren que las aguas liberadas por el emisario al mar
como máximo 2% de residuos sin procesar de las lagunas y canal del sistema de tratamiento. Ambos
las lagunas reciben cargamento de aguas residuales sin tratar y efluentes industriales sin tratar. El volumen de contaminación
Ser tratado con cada descarga P i , varía en porcentaje según el tipo de descarga. El tratamiento
Consiste en una descomposición de la contaminación a través de bacterias y aireación. Básicamente los elementos
Los procesos principales son una profundidad conveniente (garantizada por ingeniería) de las lagunas y
un tiempo adecuado de retención de contaminantes. La porción de aireación estará garantizada por la pendiente
del canal (tendrá pasos de aireación). La retención estará garantizada por el volumen de cada estanque. Considerar
considerando que los vertidos industriales tienen un porcentaje de contaminación del 40% en volumen y que
alcantarillado doméstico en un 10%. Considerando además que:

• Las descargas de infiltración de la capa freática no tienen porcentaje de contaminación.


• En cada hora de retención en las lagunas, el efluente pierde, por descomposición biológica, alrededor del 3%
contenido de contaminación.

• En cada kilómetro del canal de aireación, el efluente se reduce en un 2% en contaminación.

Página 79

MODELOS DE PROGRAMACIÓN LINEAL 71

Laguna 1 Alcantarilla
Doméstico
Alcantarilla
Doméstico
Canal de conexión

Efluentes
Industrial
Laguna 2

Efluentes
Industrial
Emisario

Costa

FIGURA 2.10 Conjunto de lagunas.

Formular el problema de determinar los volúmenes de las dos lagunas y la longitud del canal que
minimizar el costo del trabajo.
Otros datos: la longitud del canal puede variar entre 1.500 my 3.000 m. El volumen de las lagunas
puede variar entre 10 6 m 3 y 10 8 m 3 . Cada metro del canal cuesta R $ 1.200,00. Cada m 3 de la primera laguna
cuesta R $ 1,02, ya partir del segundo, R $ 1,1. Los caudales de efluentes son:

TABLA 2.21

https://translate.googleusercontent.com/translate_f 65/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

Tipo de descarga Valor de descarga (m 3 ) Ubicación

Alcantarillado Doméstico p1 Laguna 1

Efluente industrial p2 Laguna 1

Infiltración subterránea p3 Laguna 1

Alcantarillado Doméstico p4 Laguna 2

Efluente industrial p5 Laguna 2

Infiltración subterránea pág 6 Laguna 2

Las leyes ambientales establecen que en la primera laguna el índice de contaminación no supera el 5% y en el
si las aguas tratadas se arrojan al mar, no habrá más del 1% de contaminación en el efluente.

Solución:

1– Elección de variables de decisión


v i º el volumen de la laguna i , i = 1, 2
L º longitud del canal de conexión.
p j º volumen de descarga de efluentes j , j = 1, ..., 6.
h i º tiempo de retención en laguna i , i = 1, 2.

Página 80

72 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

2. Formulación de restricciones tecnológicas

a) Restricción de los volúmenes del estanque:

10 6 £ v i £ 10 8 , i = 1, 2

b) Restricción de la longitud del canal de aireación:

£ 1,500 L £ 3,000

c) Restricciones de retención

v1=h1(p1+p2+p3)
v2=h2(p1+p2+p3+p4+p5+p6)

d) Restricciones a la depuración biológica en la primera laguna:

⎛ 01, PAGS+ 04, PAGS ⎞


⎜ 1 dos⎟ H1
(,)0 97 ≤ 0 ,05
⎝ PAGS + PAGS + PAGS ⎠
1 dos 3

e) Restricciones de depuración de canales:

Nombrado p 7 el índice de contaminación del efluente al final del canal tenemos:

p 7 = (( p 1 + p 2 + p 3 ) 0.05) 0.98 L

f) Restricciones de limpieza biológica en la segunda laguna:

⎛ PAGS + 01, PAGS


+ 04, PAGS + PAGS ⎞
⎜ 7 4 5 6 ⎟ (,) H dos
0 97 ≤ 0 01,
1
+
⎝ PAGS PAGS
dos
+ +
PAGS
3 PAGS
4
+ PAGS
5
+ PAGS
6

3. Configuración de la función objetivo

https://translate.googleusercontent.com/translate_f 66/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

z = Minimizar { f ( x ) = 1.02 v 1 + 1.1 v 2 + 1.2 (10 6 L )}

13 - El problema de la programación de la dieta en un hogar de ancianos L


Un asilo de ancianos recibe a unos 50 pacientes durante un fin de semana para hacer ejercicio y desinfectar
toxicidad alimentaria. Uno de los puntos fundamentales de la planificación clínica es la elección de
preparación de comida. Debido al alto consumo de alimentos, la clínica normalmente compra
géneros al por mayor. La Tabla 2.22 describe la constitución nutricional de las comidas que
prepárese de acuerdo con las dietas elegidas para los próximos grupos de visitantes.

Página 81

MODELOS DE PROGRAMACIÓN LINEAL 73

CUADRO 2.22 CONSTITUCIÓN NUTRITIVA

Proteinas Carbohidratos Minerales Vitaminas Fibras


Grupos Comidas
gramo gramo mg Unidades gramo

Dieta 1 60 100 300 10 A; 20 - C 150


Dieta 2 80 50 350 20 - A; 10 - C 100
yo
Dieta 3 80 20 100 40 - A; 20 - C 90
Dieta 4 100 25 100 25 - A; 10 - C 100

Dieta 5 40 30 300 10 A; 20 - C 150


II Dieta 6 50 35 350 20 - A; 10 - C 200
Dieta 7 - 50 100 40 - A; 20 - C 90

Dieta 8 40 25 100 25 - A; 10 - C 80
III
Dieta 9 80 10 250 40 - A; 50 - C 100

Cada dieta consta de los siguientes ingredientes o alimentos:

TABLA 2.23 CONSUMO DE INGREDIENTES

Carne de vaca Cereales Pastas Vegetales Leche Fruta


Grupos Comidas
gramo gramo gramo gramo ml gramo

Dieta 1 60 50 80 60 50 100
Dieta 2 30 60 30 100 40 150
yo
Dieta 3 20 60 20 60 60 120
Dieta 4 20 40 30 80 30 80

Dieta 5 40 80 - 80 - 150
II Dieta 6 50 50 - 100 - 100
Dieta 7 - 100 - 100 - 100

Dieta 8 - 50 20 120 50 50
III
Dieta 9 - 40 10 150 100 40

Precio
4,00 6,00 1,50 0,9 1.0 0,7
por kg

Para la ejecución del programa de entrenamiento, la clínica debe elegir una dieta dentro de cada
grupo (desayuno, almuerzo y cena), para que el cocinero pueda preparar las comidas.

Solicitud 1 : sabiendo que hay dos programas de formación y que para cada programa las necesidades
Los nutrientes diarios por persona están relacionados con el seguimiento, la programación de la compra de ingredientes.
para minimizar los gastos de alimentación.

TABLA 2.24 DEMANDA DE PROGRAMAS DE CAPACITACIÓN

Programa de Proteinas Carbohidratos Minerales Vitaminas Fibras Personas


Formación gramo gramo mg Unidades gramo Inscrito

30 - A
Programa 1 150 200 400 250 20
40 - C

20 - A
Programa 2 180 220 500 300 30
60 - C

https://translate.googleusercontent.com/translate_f 67/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

Página 82

74 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

Pedido 2 : debido a un problema logístico, se sabe que no es deseable preparar menos de 10 comidas con
basado en la dieta tipo 4, si se elige. Reformule el problema anterior teniendo esto en cuenta.

Solicitud 3 : tras un rápido análisis por parte del nutricionista, se constató que la dieta 1 y la dieta 9 eran incompatibles
patible, y la dieta 2 siempre debe ir acompañada de la dieta 8. Reformar el orden 1 teniendo en cuenta
cuenta la nueva información.

Solicitar solución 1

1. Elección de las variables de decisión

⎧1, si se elige la dieta para ser adoptada ⎫


x yo ≡ ⎨ ⎬ yo= 1, ..., 9
⎩0, de lo contrario ⎭

y i º número de comidas preparadas en base a la dieta i , i = 1, ..., 9.

A = [ a ij ] / matriz de constitución nutritiva, i = 1, ..., 9 yj = Pr, Cr, Mi, Vi, Fi;

B = [ b ij ] / matriz de consumo de ingredientes, i = 1, ..., 9 yj = Ca, Ce, Ma, Ve, Le, Fr;

c j el costo unitario del ingrediente j , j = Ca, Ce, Ma, Ve, Le, Fr;

N sj No. necesidad para el programa de s , s = 1,2 con respecto al nutriente j = Pr, Cr, Mi, vi, fi.

2. Formulación de restricciones tecnológicas

a) Restricción asociada a las necesidades nutricionales de los programas de formación:


El programa de formación cubre dos días, es decir, el doble de la demanda de la mesa del programa.
formación; sin embargo, no existe ninguna condición que requiera planificación para distinguir días,
por lo tanto, el programa puede planificarse para un día y repetirse al día siguiente (debido a las condiciones del
solicitud 1). La demanda general se obtiene producto del número de personas inscritas en el programa
veces las necesidades diarias de nutrientes.

Sea el cálculo de la demanda de proteínas por día:


En el programa 1 tenemos: 150 gramos ´ 20 personas = 3000 g de consumo.
En el programa 2 tenemos: 180 gramos ´ 30 personas = 5.400 g de consumo.

Repitiendo este cálculo para cada nutriente que tenemos:

• Programa 1 : 3.000 g de proteínas, 4.000 g de carbohidratos, 8.000 U de minerales, 600 U de vitamina


A, 800 U de vitamina C y 5.000 g de fibra.

• Programa 2 : 5.400 g de proteína, 3.600 g de carbohidratos, 15.000 U de minerales, 600 U de vitamina


A, 1.800 U de vitamina C y 9.000 g de fibra.

La demanda de los programas debe satisfacerse con tres comidas diarias, una dentro de cada grupo.
polvo. Para el caso de la proteína, por ejemplo, los 3.000 g + 5.400 g = 8.400 g se cumplirán con lo siguiente
comidas:

60 y 1 + 80 y 2 + 80 y 3 + 100 y 4 + 40 y 5 + 50 y 6 + 40 y 8 + 80 y 9 ³ 8.400

Página 83

MODELOS DE PROGRAMACIÓN LINEAL 75

Usando notación matricial:

9 dos

∑ el ij y i ³ ∑ N sj , j = Pr, Ca, Mi, Vi, Fi.

https://translate.googleusercontent.com/translate_f 68/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
yo = 1 s= 1

b) Restricción asociada a la distribución de dietas en las tres comidas diarias:


Este es un caso interesante en el que debemos desarrollar variables lógicas independientes de la
niveles reales del problema. El razonamiento para modelar es el siguiente:
Si la comida a elegir pertenece a una dieta del grupo g ( g = I, II, III) ninguna otra dieta
de ese grupo se puede activar. Si imaginamos una variable de decisión binaria x i para describir esto
condición de pertinencia, entonces la condición de modelado lógico será:

(x1ox2ox3ox4)e(x5ox6ox7)e(x8ox9)

Cuando la condición o es exclusiva, implica solo una de las variables activadas. El conjunto de
Las restricciones que pueden cumplir esta condición lógica para las variables binarias son:

x1+x2+x3+x4=1
x5+x6+x7=1
x8+x9=1

No debemos olvidar que las variables binarias deben estar "vinculadas" a las variables reales del problema
decidir el número de comidas que se prepararán. La condición lógica de este "enlace"
dice que si se elige una dieta se permite calcular el número de comidas que dará lugar
responsable del programa. Si no se elige la dieta, el número correspondiente de comidas debe ser,
obviamente, cero. La condición lógica se puede reescribir como:

x1=0Þy1=0
x1=1Þy1³0

Esta condición lógica se puede modelar como:

y yo - Mx i £ 0

Donde M es un número suficientemente grande. En este caso, 50 es un número apropiado porque es el límite
de comidas en cada grupo, por lo que la restricción se puede escribir como:

y i - 50 x i £ 0, i = 1,…, 9

c) Restricción asociada al total de comidas diarias (50 ´ 3) = 150:

∑ y yo = 50
yo = 1

∑ y yo = 50
yo=5

Página 84

76 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

9
∑ y yo = 50
yo=8

3.Desarrollo de la función objetivo


La función objetivo debe expresarse en términos de ingredientes, que son los elementos enumerados
que debe comprarse al por mayor. La suma de las cantidades de cada ingrediente varía
con el tipo de dieta que sustenta la comida, que se resume en la tabla de consumo de ingredientes.
camisetas. Por tanto, la cantidad de un determinado ingrediente viene dada por:

9
∑ b ij y yo j = Ca, Ce, Ma, Ve, Le, Fr
yo = 1

Entonces:

z = Minimizar { f ( x ) = cj ∑ b ij y yo j = Ca, Ce, Ma, Ve, Le, Fr}

https://translate.googleusercontent.com/translate_f 69/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
yo = 1

cantidad total gastada en ingredientes.

4. Restricción de la no negatividad

y i ³ 0, x i ³ 0, i = 1,…, 9

Orden 2 solución

Solo necesitamos cambiar una de las restricciones en la solución para el orden 1. La condición lógica que unía a
ciones fue:

x1=0Þy1=0
x1=1Þy1³0

Esta condición lógica debe reescribirse, en el caso de la dieta 4, en la forma:

x4=0Þy4=0
x 4 = 1 Þ y 4 ³ 10

La restricción de orden 1, y 4 - 50 x 4 £ 0, garantiza solo un límite superior para x 4 = 1 en forma de:

y 4 £ 50

El segundo pedido también requiere un límite inferior para el número variable de comidas. Para tal,
deberíamos agregar una restricción como:

y i - Lx i ³ 0

En este caso, con el valor límite L = 10:

y 4 - 10 x 4 ³ 0

Página 85

MODELOS DE PROGRAMACIÓN LINEAL 77

Orden 3 solución

Para el primer requisito: si dos dietas i - j son incompatibles, entonces la condición de modelado lógico
será:

x yo = 1 Þ x j = 0
x j = 1 Þ x yo = 0

En el caso de las variables binarias, esta condición de incompatibilidad se puede expresar mediante la ecuación:

x yo + x j £ 1

En este caso, entonces, debemos agregar la siguiente desigualdad al conjunto de restricciones:

x 1+ x 9 £ 1

Para el segundo requisito, la condición lógica es del tipo:

x yo = 1 Þ x j = 1
xj=1Þxi=0o1

En el caso de las variables binarias, esta condición se expresa mediante la ecuación:

xi-xj£0

En el caso de la tercera solicitud, debemos agregar al conjunto de restricciones lo siguiente


cita:

x 2- x 8 £ 0

https://translate.googleusercontent.com/translate_f 70/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
14 - El problema del matrimonio y la propiedad de la vivienda L
Una agencia matrimonial busca promover la mejor unión posible entre parejas en su vasto banco.
datos (sobre R = {1, ..., r } niños y M = {1, ..., m } niñas). Para solucionar este problema hay
una serie de criterios a adoptar. El índice de compatibilidad final, que se calcula teniendo en cuenta
factores condicionantes, es el factor predominante. El sistema de datos de la agencia puede obtener fácilmente
adecuación femenina f ij , es decir, la variable que dice qué cantidad de niña i es adecuada para el niño j, y masculino
na, h ij , que expresa la situación opuesta. Cuando los valores de f y h están dentro de ciertos límites, la
se puede formar pareja, con una formación cada vez más adecuada, a medida que
de estos factores. Además de este indicador, hay una gran restricción económica a tener en cuenta.
cuenta: casa propia. Las experiencias de la agencia dicen que una pareja solo está permitida cuando ambos
tiene un interés en la misma casa, se puede poner a disposición y su precio está dentro de la posesión
de la pareja. Hay W = {1, ..., w } casas en la base de datos.
Formule el problema de maximizar el número de combinaciones estables dentro de la base de datos.

Solución

1. Elección de las variables de decisión

⎧1, si la pareja es joven yo× chico viviendo


j en ⎫
Xijk ≡ ⎨ se forma
k la casa ⎬ yo =1, ..., metro
⎩ 0, de lo contrario ⎭

Página 86

78 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

j = 1, ..., r ; k = 1, ..., w
f ij º adecuación de la niña i al niño j .
Hji º adecuación del niño j a la niña i.
l límite inferior de idoneidad de niñas para niños.
u límite inferior de idoneidad de niños para niñas.
v i Iº capacidad económica de la niña i = 1, ..., m .
w j º capacidad económica del niño j = 1, .., r.
c i º costo de la casa k , k = 1, ...., w.

2. Formulación de restricciones tecnológicas

a) Restricción asociada a límites de compatibilidad:

w metro

∑ ∑ f ijX³ijkl , j = 1, ..., r
k = 1i = 1

w r
∑ ∑ h ijX³ijku , i = 1, ..., m
k=1j=1

b) Restricciones asociadas a la monogamia:

w r
∑ ∑ £ l,Xiijk= 1, ..., m
k=1j=1

w metro

∑ ∑ £ l,X ijjk = 1, ..., r


k = 1i = 1

c) Restricción relacionada con la capacidad financiera:


La condición se puede expresar lógicamente como:

metro r
∑ ∑ ( vXi ijk+ w j ) ³ c k , k = 1, ..., w
i=1j=1

d) Restricción asociada a la disponibilidad de la casa:


La condición se puede interpretar como la imposibilidad de que dos parejas reciban la misma casa,
o sea:

metro r

https://translate.googleusercontent.com/translate_f 71/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
k
∑ ∑ ≤ X ij 1, k = 1, ..., w
i=1j=1

3.Desarrollo de la función objetivo

w metro r

z = Maximizar { f ( x ) = ∑ ∑ ∑ }: número
k
X ij total de uniones.
k = 1 yo = 1 j= 1

Página 87

MODELOS DE PROGRAMACIÓN LINEAL 79

2.3 - PROBLEMAS PROPUESTOS

1 - El problema de los pantalones y las camisas J


Cierta empresa de ropa opera con dos productos: pantalones y camisas. Como son productos
similares, tienen una productividad comparable y comparten los mismos recursos. El PRO-
La programación de la producción se realiza por lotes de producto.
El departamento de producción informa que se necesitan 10 horas hombre para un lote de pantalones y
20 hombres por hora por un lote de camisas. Se sabe que no es necesaria mano de obra especializada para
la producción de pantalones, pero se necesitan 10 hombres por hora de este tipo de trabajo para producir un
muchas camisas. El departamento de personal informa que la fuerza laboral máxima disponible es de 30
hombres por hora de trabajadores calificados y 50 hombres por hora de trabajadores no calificados.
Desde la planta de producción sabemos que solo hay dos máquinas capaces de producir
ambos tipos de producto, la máquina 1 puede producir un lote de pantalones cada 20 horas y uno
lote de camisas cada 10 horas, y no puede utilizarse durante más de 80 horas en el período considerado
del. La máquina 2 puede producir un lote de pantalones cada 30 horas y un lote de camisas cada 35 horas.
no puede utilizarse durante más de 130 horas en el período considerado.
Se necesitan dos tipos de materia prima para producir pantalones y camisas. En la producción de un
lote de pantalones se utilizan 12 kilos de materia prima A y 10 de B. En la producción de un lote de camisas
Se utilizan 8 kilos de materia prima A y 15 kilos.
El almacén informa que, por restricciones de espacio, solo puede suministrar 120 kilos de A y 100 kilos
B en el período considerado.
Sabiendo que la ganancia de la venta es de 800 reales en los lotes de camisetas y 500 reales en los lotes de zapatos.
Formular el problema de maximizar el beneficio de la operación productiva en cuestión.

2 - El problema de la solicitud de ayuda J


Una emisora de radio capta el siguiente mensaje: “ Naufragamos del barco Intrepid. Estamos aislados en
una isla de coordenadas ... En este momento sufrimos de varios problemas: serpientes venenosas, algunas personas
con diarrea, caníbales autóctonos y falta de agua y comida. Tenemos dos armas, pero la munición es prácticamente
al final. Solo tenemos una ampolla de suero antiofídico y el suministro de agua y comida se ha agotado. Somos 20 personas,
enviar ayuda !! ” . El jefe de la patrulla de rescate de la zona cuenta con un solo helicóptero, que, a su vez,
solo puedes hacer un viaje de rescate a la aislada y lejana isla. El grupo de rescate sabe que el
El rescate marítimo tardará tres días en llegar. Para sobrevivir, el grupo necesita seis cajas de comida.
cuatro de agua, dos de munición y dos de medicinas y suero antifágico. En valor para el
brevedad, las cajas de municiones y medicinas son dos veces más importantes que el agua y
cuatro veces más importante que la comida. Sabiendo que solo siete cajas pueden ser
transportados en helicóptero, desarrollar el programa que optimice la carga de rescate.

3 - El problema de la refinería K
En una refinería determinada, el petróleo crudo se somete al siguiente procesamiento antes de ser transferido
formado en gas / petróleo o gasolina cruda:

Agrietamiento Gas
Aceites

Petróleo
Destilación
Bruto
Atmosférico
Desulfuración Reformar

Gasolina

FIGURA 2.11 Esquema de refinación.

https://translate.googleusercontent.com/translate_f 72/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

Página 88

80 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

La Tabla 2.25 representa la capacidad máxima de procesamiento de cada unidad operativa.


Formule el problema para maximizar las ganancias totales, resolviéndolo gráficamente.

TABLA 2.25 CAPACIDAD MÁXIMA DE PROCESAMIENTO

Producto Producto
Operación
Gasolina bruta (tonelada / año) Gas / Petróleo (Ton / año)

Destilación 500 000 600.000


Desulfuración 700.000 500 000
Reformar 400.000
Agrietamiento 450.000

Beneficios unitarios 10.00 reales / tonelada 7.00 reales / tonelada

4 - El problema de la reforestación J
Una empresa de reforestación ha plantado áreas en cuatro municipios. La empresa considera
había utilizado especies de árboles: pino, roble, nogal y araucaria. La tabla 2.26 resume los datos
del problema:

TABLA 2.26 DATOS DE PLANTACIÓN Y PRODUCTIVIDAD

Producción anual esperada Ingresos anuales esperados


Ciudad
m 3 / Hectárea Unidad monetaria / hectárea

Zona
Pinus Carvalho Nuez Araucaria Pinus Roble Nuez Araucaria
Disponible

1 1500 17 14 10 9 dieciséis 12 20 18

dos 1.700 15 dieciséis 12 11 14 13 24 20

3 900 13 12 14 8 17 10 28 20

4 600 10 11 8 6 12 11 18 17

Producción
Mínimo en 225 9 4.8 3,5
1000 x 3

Formular el problema de la designación de áreas de siembra por municipio para maximizar los ingresos.

5 - El problema del hospital J


El director de un hospital debe elegir un esquema de designación de camas y habitaciones en un nuevo
ala a construir.
Hay tres tipos de habitaciones posibles:

• Con una cama.


• Con dos camas.
• Con tres camas.
El número total de habitaciones a construir no puede exceder las 70. Debido a los requisitos de la demanda,
se ofrecen al menos 120 camas más. El porcentaje de habitaciones en una cama debe restringirse entre
15% a 30% del total de habitaciones. La necesidad en el área construida es:

Página 89

MODELOS DE PROGRAMACIÓN LINEAL 81

• 10 m 2 por habitación con cama.


• 14 m 2 por habitación con dos camas.
• 17 m 2 por habitación con tres camas.
Los pacientes en habitaciones con dos y tres camas requieren solo el 80% de la fuerza laboral que los que están en habitaciones
individual. Lo que recibe el hospital por cada paciente hospitalizado es inversamente proporcional al

https://translate.googleusercontent.com/translate_f 73/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
ciudad del número de personas en la habitación en la que está hospitalizado. Considerando que el hospital es siempre
formuló el problema para:

• Minimizar el esfuerzo de la mano de obra en apoyo médico y administrativo.


• Maximizar los ingresos globales.
• Maximice el número de camas.
• Minimice el espacio necesario para la nueva ala.

6 - El problema de comprar aviones a VAB J


Viação Aérea Brasileira estudia la compra de tres tipos de aeronaves: Boeing 717 para puentes aéreos
áreas de corto recorrido, Boeing 737-500 para vuelos nacionales e internacionales de medio recorrido y
MD-11 para vuelos internacionales de larga distancia. En un estudio preliminar, se consideró que el
El número máximo de aviones a comprar siempre se llenará con fines de planificación.
Los datos de planificación se muestran en la Tabla 2.27:

TABLA 2.27 DATOS OPERATIVOS DE LA AERONAVE

Costo Receta teórica


Tipo de avión Pilotos aptos
Millones de US $ Millones de US $

BOEING 717 5.1 330 30

BOEING 737-500 3.6 300 20

MD-11 6,8 420 10

El monto disponible para compras es de 220 millones de dólares. Los pilotos del MD-11 pueden pilotar
todos los aviones de la empresa, pero los demás pilotos solo pueden asignarse a la aeronave a la que fueron asignados
habilitado. Cada avión requiere dos pilotos para operar. Los talleres de mantenimiento pueden
admite hasta 40 Boeing 717. Un Boeing 737-500 es equivalente, en esfuerzo de mantenimiento, a 3/4, y uno
MD-11 a 5/3, al referirse al Boeing 717. Formular el modelo PL del problema de optimización
compras de aviones.

7 - El problema de la flota de autobuses K


Suponga que el número de autobuses necesarios para satisfacer la demanda de un determinado
corredor de transporte para la i- ésima hora del día es b i , i = 1, 2, ..., 24, donde cada autobús viaja seis
horas consecutivas. Si el número de autobuses en el período i excede el mínimo requerido b i , esto resultaría
con un costo adicional c i por bus / hora. Formule el problema como un PPL para que el costo
El costo adicional resultante se minimiza.

Página 90

82 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

8 - El problema del corredor de transporte K


Un sistema de transporte por ferrocarril suburbano da fluya principalmente a las demandas de una , d b y d c
desde tres grandes barrios, A, B y C, hacia el centro de la ciudad. Entre cada uno de estos barrios hay
una pequeña reducción de la demanda de transporte debido al tráfico regional. Esta reducción se calcula
porcentaje en un 5% en cada intervalo entre barrios grandes. El sistema ferroviario es, en principio,
pio, insuficiente para cubrir toda la demanda y necesita una carretera complementaria, bajo
siento colapsar. Ante este hecho, podemos considerar que el sistema ferroviario funciona
trabaje siempre a su máxima capacidad. Junto a cada estación de tren hay una opción de embarque.
para un sistema de liberación de carreteras. El porcentaje de reducción de la demanda proporcionado por
corredor de carreteras a pedido del sistema ferroviario se llama el nivel de alivio. El costo
total del sistema de carreteras es directamente proporcional a la suma de las parcelas de alivio en cada
perro. La capacidad operativa del sistema ferroviario está asociada al tramo considerado en el transporte,
llamándose c 1 , c 2 , c 3 unidades de demanda, como se muestra en la Figura 2.12.

Flujo total ≤ c 1 Flujo total ≤ c 2 Flujo total ≤ c 3

centrar

Transporte ferroviario

Parte

https://translate.googleusercontent.com/translate_f 74/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
atendido por
ferrocarril
Estación Estación Estación
LA segundo C
da db dc

Barrio A Barrio B Barrio C


Lanzamiento
la carretera

Corredor vial

FIGURA 2.12 Esquema del sistema de transporte.

Determinar el porcentaje de alivio que debe tener el sistema vial en cada estación.
para que, en cualquier tramo de la vía férrea, la demanda no supere los valores estipulados y así
Minimizar el costo del sistema global. La ruta de transporte se inicia sin demanda previa en el
ción A.

9 - El problema de la fábrica de plásticos K


Una empresa fabrica maletas, bolsos, maletines y bolsas de plástico. Compra su materia prima en
con un ancho determinado y cortado en tiras adecuadas para cada tipo de objeto producido. Sabiendo que
hay tres tamaños para cada artículo, las posibilidades de cortes se resumen en la Tabla 2.28:

TABLA 2.28 CUANTITATIVAS DE CORTE

Cantidad de artículos dentro de cada método de corte


1 dos 3 4 5 6 7 8 9
PAGS dos 1 1 - - - - 1

Pantalón METRO 1 dos 1 1 - - - 3 -


GRAMO 1 - - - - dos dos - -
PAGS dos 1 - dos - - - - 1
Bolsos METRO 3 - 1 4 1 dos - 3 -
GRAMO - - 1 1 - dos dos - -

Página 91

MODELOS DE PROGRAMACIÓN LINEAL 83

TABLA 2.28 CONTINUACIÓN

Cantidad de artículos dentro de cada método de corte


1 dos 3 4 5 6 7 8 9
PAGS 6 4 dos 1 - - - - 1
Carpetas METRO 1 1 1 1 - dos - 4 1
GRAMO - dos 1 1 dos dos 3 - 1
PAGS - dos - 1 dos - - - 1
Pantalón METRO - - dos 1 dos - - dos 1
GRAMO - 1 1 - dos - 3 - 1
Pérdida 3 5 5 dos 4 7 1 3 8

En un día determinado, los pedidos de fabricación son (pequeños, medianos, grandes):

maletas: 10, 20, 13; bolsas: 5, 2, 6; carpetas: 4, 3, 12; bolsas: 5, 5, 3.

Formule el problema PL asociado con cada uno de los siguientes criterios:

• Minimizar las pérdidas de material.


• Minimizar el volumen no vendido de piezas agregadas a pérdidas de material.
• Minimizar el inventario no vendido.

10 - El problema de las camisetas METRO


Cierta fábrica de camisetas quiere aprovechar las finales de un campeonato de fútbol para vender
der camisetas de los equipos implicados. Los juegos durarán cuatro semanas. El costo de producir
cada camiseta cuesta R $ 2,00 en las dos primeras semanas y subirá a R $ 2,50 en las dos últimas, cuando
la competencia demanda material en el mercado. La demanda semanal de camisetas será
5,000, 10,000, 30,000 y 60,000. La capacidad máxima de producción de la empresa es de 25.000 camisetas.
En la primera y segunda semana, la empresa podrá, en un esfuerzo excepcional,
trabajar horas extras y fabricar otras 10,000 camisetas cada semana. En este caso, el costo de estos
las camisetas costarán R $ 2,80. El exceso de producción se puede almacenar a un costo de R $ 0,20 por unidad.

https://translate.googleusercontent.com/translate_f 75/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
por semana.

Orden 1 : Formule el modelo PL que minimice los costos.

Orden 2 : Tras la planificación previa, la dirección de la empresa verificó que la demanda variaría
sustancialmente dentro de los cuatro modelos de camiseta que representan los cuatro equipos disponibles
Los finales. Aunque la demanda total es exactamente la que se planteó anteriormente, el valor
de las camisetas variaría según el equipo y su posición en el campeonato. En los dos primeros
cada semana todos los equipos estarían en pie de igualdad hasta que se decidieran los dos finalistas. LA
a partir de entonces, las camisetas de los equipos eliminados bajarían de valor y demanda en el mercado, y las de los
los finalistas ascenderían de acuerdo con la Tabla 2.29:

Página 92

84 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

TABLA 2.29 DEMANDA DE CAMISETAS

Semana

1 dos 3 4

Demanda Valor Demanda Valor Demanda Valor Demanda Valor

Equipo A 1250 5 2500 6 500 3 - -

Equipo B 1250 5 2500 6 500 3 - -

Equipo
1250 5 2500 6 14.500 8 30.000 9
Finalista C

Equipo
1250 5 2500 6 14.500 8 30.000 9
Finalista D

Sabiendo que existe un completo equilibrio entre los cuatro finalistas, formulando el modelo
que maximiza los beneficios de la empresa de fabricación de camisetas.

11 - El problema del huevo de Pascua L


Un fabricante de huevos de pascua trabaja durante todo el año para satisfacer la gran demanda de huevos para
Ocasión de Pascua. La fábrica produce cuatro tipos de huevos y dos pasteles. Entradas básicamente críticas
son los mismos, varían solo cuantitativamente y se pueden resumir en la tabla siguiente.
seguir. Los costos finales de los productos se cotizan en unidades monetarias.

TABLA 2.30 CONSUMO DE ENTRADAS PARA HUEVOS DE PASCUA

Entradas críticas

Productos Chocolate Relleno Embalaje Mano de obra Costo final

Huevo 15 100 gramos 5 unidades 1 hoja 0,05 h 1 UNO

Huevo 20 150 g 10 unidades 1,5 hojas 0,08 h 2 UNO

Huevo 25 200 g 20 Unidades 2.0 hojas 0,1 h 3 UNO

Huevo 30 400 g 30 Uds. 2,5 hojas 0,12 h 4 UNO

Tipo de pastel1 100 gramos 7 Unidades 2.0 hojas 0,1 h 3 UNO

Tipo de pastel2 200 g 12 Unidades 3,0 hojas 0,15 h 4 UNO

Las cantidades totales de insumos disponibles para la empresa, dentro de la calidad requerida, son:

TABLA 2.31 CUANTITATIVAS DISPONIBLES DE ENTRADAS

Periodos Chocolate Relleno Embalaje Mano de obra

Abr-mayo 5,000 kilogramos 10 4 Uds. 5 x 10 3 hojas 1,000 hs

Junio-septiembre 70.000 kilogramos 10 4 Uds. 8 x 10 5 hojas 1,500 hs

https://translate.googleusercontent.com/translate_f 76/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

Oct-ene 40.000 kilogramos 10 4 Uds. 7 x 10 3 hojas 1,000 hs

Feb-Mar 20.000 kilogramos 10 4 Uds. 8 x 10 4 hojas 2.000 horas

Las entregas de huevos y pasteles fabricados se pueden realizar en el siguiente esquema:

Página 93

MODELOS DE PROGRAMACIÓN LINEAL 85

CUADRO 2.32 DEMANDA (D) Y PRECIO (P) DE HUEVOS Y TORTAS

Huevo 15 Huevo 20 Huevo 25 Huevo 30 Pastel T1 Pastel T2

Periodos re PAGS re PAGS re PAGS re PAGS re PAGS re PAGS

Abr-mayo 4 x 10 5 3U.M. 2 x 10 5 5U.M. 10 5 7U.M. 4 x 10 4 9U.M. 2 x 10 5 6U.M. 2 x 10 4 7U.M.

Junio-septiembre (*) - - - - - - - - - - - -

Oct-ene 10 4 2U.M. 10 4 3U.M. 10 3 4U.M. 10 3 6U.M. 10 3 4U.M. - -

Feb-Mar 10 5 2U.M. 10 5 3U.M. 2 x 10 4 4U.M. 10 4 6U.M. 4 x 10 4 4U.M. 10 3 5U.M.

Costos
Almacenamiento 0,2 CU 0.3 CU 0.4 CU 0.5 CU 0.5 CU 0.5 CU
(por período)

Capacidad de
Almacenamiento
4 x 10 5 6 x 10 5 4 x 10 5 6 x 10 4 10 5 4 x 10 4
Total (en
Unidades)

(*) Las celdas vacías indican que no hay previsión de demanda para el período, sin embargo puede haber producción para el stock.

Formule el problema de planificar el mejor esquema para la producción y venta de huevos de Pascua.

12 - El problema de la evacuación de emergencia L


Cierta región está amenazada por la ruptura de una presa y debe ser evacuada en,
máximo diez horas. Se transporta a un total de 8.000 hombres, 7.900 mujeres y 1.850 niños. Cada
persona puede llevar hasta diez kilos de equipaje personal. Toda la región estaba aislada y solo vehículos
autorizado para evitar accidentes y embotellamientos. Para realizar la evacuación, hay
los medios son posibles:

TABLA 2.33 RESUMEN DE DATOS OPERATIVOS

Tipo Vehículo
Vehículo Vehículo
Ejército de 6 toneladas
¼ de tonelada Helicóptero Autobús Micro bus
Excursión
Información Ejército

Cantidad
de unidades 10 20 15 10 5 60
Disponible

Capacidad
20 personas 5 personas 10 personas 30 personas 15 personas 5 personas
de transporte

Capacidad
1 tonelada 20 kilogramos 50 kilogramos 1 tonelada 500 kilogramos 100 kilogramos
para equipaje

Costo por
10 um 4 uno 75 um 5 um 3 uno 2 uno
Viaje

Tiempo de
1 hora 45 min 10 minutos 45 min 30 minutos 30 minutos
Viaje

Para minimizar el pánico, los niños deben viajar con sus madres. Hay 10
familias con 5 hijos, 25 con 4 hijos, 150 con 3, 450 con 2 y 350 con 1. Los vehículos de pasajeros solo pueden
realizar un viaje de evacuación, quedando, por seguridad, retenido fuera de la zona de peligro.
Formular un programa de evacuación que minimice los costos finales de la operación.

Página 94

https://translate.googleusercontent.com/translate_f 77/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
86 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL
ELSEVIER

13 - El problema del estudiante ocupado L


Cierto estudiante está en el último año de secundaria y se está preparando para el examen de ingreso. En esto
fase difícil, necesita equilibrar su carga de estudio y ocio, ya que este es uno de los factores importantes
para tener éxito en este examen. La tabla 2.34, proporcionada por su universidad, muestra la distribución de
carga de clases a lo largo de los meses del año:

TABLA 2.34 DISTRIBUCIÓN DE CARGA HORAS

Mar abr Mayo jun ago Conjunto Afuera nov Diez

Matemáticas 24 24 30 24 30 24 20 28 24

Química 20 18 24 18 20 18 18 28 20

Física 20 18 20 18 18 24 18 20 36

Biología 24 18 20 20 18 18 18 24 36

portugués dieciséis dieciséis dieciséis dieciséis 14 dieciséis dieciséis dieciséis dieciséis

Idiomas 8 8 8 8 6 8 8 8 8

Geografía 8 10 8 10 6 10 8 10 8

Historia 10 8 10 8 8 8 10 8 10

Y la siguiente distribución de trabajos (T) y exámenes (P) en el segundo grado:

TABLA 2.35 DISTRIBUCIÓN DE PRUEBAS

Mar abr Mayo jun ago Conjunto Afuera nov Diez

Matemáticas PAGS PAGS PAGS PAGS 2P T PAGS PAGS PAGS

Química T PAGS PAGS T 2P T PAGS PAGS PAGS

Física PAGS T PAGS PAGS 2P PAGS T PAGS PAGS

Biología T PAGS PAGS T 2P T PAGS PAGS PAGS

portugués PAGS T PAGS PAGS 2P PAGS T PAGS PAGS

Idiomas PAGS PAGS PAGS PAGS PAGS PAGS PAGS PAGS PAGS

Geografía T PAGS PAGS T PAGS T PAGS T PAGS

Historia PAGS T T PAGS PAGS PAGS T PAGS T

Cada prueba requiere una preparación de estudio de 10 horas. Cada trabajo escolar consume 4 horas
de esfuerzo. Se considera que el mes son cuatro semanas de siete días y el estudiante duerme 8 horas al día,
no estudia los domingos, pasa una hora al día desplazándose y dos horas con las comidas. Es sabido
aunque es deseable que el alumno disponga de al menos 20 horas de ocio al mes y 250 horas más
nueve meses de preparación, además del resto de las vacaciones de domingo y julio, para evitar
tafa. Formular el problema de maximizar la utilización del estudio, teniendo en cuenta que la
hora de estudio gastada en un mes en el que el resto es igual a 20 horas tiene solo el 50% de la
eficiencia de los meses en que el resto es mayor o igual a 40 horas y 70% de los meses en que este valor
varía entre 20 y 40 horas.

Página 95

MODELOS DE PROGRAMACIÓN LINEAL 87

14 - El problema de la distribución de instalaciones norte


Escena 1
Una empresa tiene dos fábricas, una en São Paulo y la otra en Curitiba. La empresa también tiene
también cuatro almacenes que facilitan la distribución de sus productos: uno en Manaus y los otros en
tales, Río de Janeiro y Belo Horizonte. La empresa vende sus productos al por mayor en ciudades donde
tiene fábricas o almacenes y otros seis lugares. La distribución de los costos unitarios x origen
El destino, incluido el transporte y los impuestos, se resume en la siguiente tabla (costos en R $ 10 por tonelada):

https://translate.googleusercontent.com/translate_f 78/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
TABLA 2.36 COSTO DE OPERACIÓN DE LOS DEPÓSITOS

Fuente Suerte Depósitos

Destino SP CRT MALO RJ NAT BH

Manaus 1,5 -

Río 0,5 0,3

Navidad 1.0 0,5

Belo Horizonte 0,2 0,2

P1 1.0 2.9 - 1.0 - -

P2 2.5 - 1.0 3,5 2.5 -

P3 1,5 - 0,5 0,5 2.0 0,2

P4 2.5 - 1,5 1.0 1,5 1.0

P5 - 3,5 - 2.0 0,5 1,5

P6 1.0 - 1.0 - 1,5 1,5

Algunos clientes expresan su preferencia por ser atendidos de la siguiente manera:

TABLA 2.37 REQUISITOS DEL CLIENTE

Origen del cliente SP CRT RJ NAT

P1 X

P2 X

P3 X

P4 X

P5 X

P6 X

Cada fábrica tiene una capacidad de producción mensual y los depósitos tienen un límite de almacenamiento.
como sigue:

São Paulo: 450.000 toneladas


Curitiba: 250.000 toneladas
Manaos: 200.000 toneladas
Río de Janeiro: 100.000 toneladas
Natal: 80.000 toneladas
Belo Horizonte: 150.000 toneladas

Página 96

88 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

Cada cuadrado demanda el siguiente volumen de producción:

São Paulo: 50.000 toneladas


Curitiba: 20.000 toneladas
Manaos: 100.000 toneladas
Río de Janeiro: 60.000 toneladas
Navidad: 50.000 toneladas
Belo Horizonte: 30.000 toneladas

P 1 : 50.000 toneladas; P 2 : 10,000 toneladas;


P 3 : 40.000 toneladas; P 4 : 35 000 toneladas;
P 5 : 60.000 toneladas; P 6 : 80.000 toneladas

1. Formular el modelo que minimice el costo total de distribución de la producción.


2. Considerando que existe un costo de transbordo y almacenamiento, no incluido en los cuadros anteriores
res, C i , i = 1, 2, 3, 4, asociado a cada depósito, reformula el problema.
3. ¿Cuál es el efecto inmediato de un posible aumento de la capacidad de los depósitos? Considere eso
la política de inversión para la expansión de los depósitos sería motivo de otro estudio más adecuado
fundado.
4. ¿Sería posible satisfacer todas las preferencias de los clientes? Estas preferencias pueden ser
incluido en el modelo de programación de alguna manera?

Escenario 2

https://translate.googleusercontent.com/translate_f 79/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

En el problema anterior, es posible abrir un nuevo almacén en Salvador y uno en Recife o ampliar
los yacimientos de Natal y Río de Janeiro. La Tabla 2.38 resume los impactos, mostrando los costos financieros
alternativas.

TABLA 2.38 ESTUDIO DE MODIFICACIÓN DEL SISTEMA

Consecuencia de la expansión x nuevos depósitos

Costos Capacidad
(R $ 10 4 ) (1.000 toneladas)

salvador 12 40.000

Recife 10 30.000

Navidad 5 40.000

Rio de Janeiro 3 35.000

Ahorros generados por cierre


(R $ 10 4 )

Manaus 10
Belo Horizonte 5

Como la empresa no acepta operar más de cinco depósitos, los depósitos de


Belo Horizonte o Manaus, logrando algunos ahorros de cara a este cierre. La distribución
Los costos operativos de los nuevos depósitos y sus capacidades de servicio se resumen en el
siguiente tabla:

Página 97

MODELOS DE PROGRAMACIÓN LINEAL 89

TABLA 2.39 DISTRIBUCIÓN DE COSTOS OPERATIVOS

Fuente Suerte Depósitos

Destino SP CRT SAL REC

salvador 1.0 1,5

Recife 1,5 2.0

P1 - -

P2 1,5 2.5

P3 0,3 0,5

P4 0,5 0,5

P5 0.0 0,3

P6 0,5 0.0

Manaus 2.5 2.0

Belo Horizonte 2.0 2.5

Formular el programa de Programación Matemática para optimizar la toma de decisiones al elegir el


política de ubicación de recursos.

https://translate.googleusercontent.com/translate_f 80/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

Página 98

3 MÉTODO
SIMPLEX

3.1 - SOLUCIÓN EXACTA PARA MODELOS PL


El modelo de programación lineal reduce un sistema real a un conjunto de ecuaciones o desigualdades en
que pretendemos optimizar una función objetivo. El conjunto de ecuaciones debería, en principio, ser un
conjunto indeterminado, por lo que el número de las llamadas soluciones "viables" es infinito. Incluso sabiendo
que alguna solución óptima se encontrará en un punto extremo del conjunto de soluciones viables,
nuestro trabajo no será pequeño si queremos determinarlo. Desafortunadamente, esa cantidad de puntos
los extremos o vértices pueden ser muy grandes, en número exponencial, en relación con las variables. Podemos
resumir en dos bloques las dificultades que deben superar quienes quieren encontrar lo mejor
posible solución para un sistema indeterminado de ecuaciones lineales, según cualquier criterio.

4 Cómo obtener soluciones viables básicas al sistema de ecuaciones.

4 Cómo evitar probar todas las posibles soluciones básicas viables para asegurar la optimización de la
sistema.

Es en este contexto que el algoritmo simplex se destaca como una de las principales contribuciones a la
gramática matemática de este siglo. Es un algoritmo general extremadamente eficiente para
sistemas lineales y adaptable a cálculos computacionales (a pesar de algunas dificultades
clásicos), y cuya comprensión funcional apoyará varios otros métodos. El estudio de este algoritmo
es indispensable para el profesional que quiere dominar las técnicas cuantitativas de análisis y
resolver problemas en un contexto razonablemente avanzado.

3.2 - FUNDAMENTOS TEÓRICOS SIMPLEX


El simplex es un algoritmo. Genéricamente, podemos entender por algoritmo cualquier estrategia para resolver
proporcionar problemas; sin embargo, seremos más precisos, reservando un concepto diferente para la palabra algoritmo
procedimiento. Diremos que:

Un procedimiento es una secuencia finita de instrucciones .

es que:

https://translate.googleusercontent.com/translate_f 81/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
Un algoritmo es un procedimiento que termina en un número
número finito de operaciones (pasos) .

Página 99

92 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

El símplex es un algoritmo que utiliza una herramienta basada en álgebra lineal para determinar
socavar, mediante un método iterativo, la solución óptima de un problema de programación lineal (PPL). Tu
El diseño básico es simple y, por lo tanto, eficiente. En líneas muy generales, el algoritmo parte de
una solución viable del sistema de ecuaciones que constituyen las restricciones de PPL, una solución que normalmente
mente extrema (vértice). A partir de esta solución inicial, identifica nuevas soluciones viables de diferentes
igual o mejor que el actual. El algoritmo, por tanto, tiene un criterio de elección que permite
encontrar siempre nuevos y mejores vértices de la envolvente convexa del problema, y otro criterio
que puede determinar si el vértice elegido es un vértice óptimo o no.
Antes de desarrollar el algoritmo en sí, es necesario recordar algunos conceptos.
matemáticos que utilizará el método.

Definición 3.1:
Una base de una matriz A ( m Xn ) es una matriz cuadrada de m vectores columna lineales
independiente en  m . Las variables asociadas con estas columnas se llamarán
variables básicas .

Podemos descomponer el vector de variables x en (ver Figura 3.1):


x = ( x B , x R ), donde:
x B representa el vector de las variables básicas de m componentes y
x R es el vector de las n - m variables no básicas restantes .
I es el conjunto de índices correspondientes a las variables básicas.
J es el índice de variables no básicas.

xB xR

metro n-m

FIGURA 3.1 Descomposición del vector de variables.

¿Cómo podemos resolver el conjunto de ecuaciones m X m solo en función de las variables básicas
tenemos: x = ( x B, 0). Si ampliamos el razonamiento a la matriz A , podemos dividirlo igualmente en un
matriz m X m , matriz que llamaremos B , de rango = my otra m X (n - m) , matriz que llamaremos
paletas R .

segundo R

r1 ... ... rn-m

A=m

metro n-m

FIGURA 3.2 Descomposición de la matriz A.

Respecto a la división propuesta por la Figura 3.2, podemos afirmar que:

Definición 3.2:
Sea B una matriz A de base asociada . El vector compuesto por x B = B –1 b y x R = 0 se llama
la solución básica .

Página 100

MÉTODO SIMPLEX 93

https://translate.googleusercontent.com/translate_f 82/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

E incluso si:

Definición 3.3:
Una solución básica sin componentes negativos se denomina solución básica viable .

- 1 segundo
segundo xR

X= 00 .... 00

metro n-m

FIGURA 3.3 Descomposición del vector x.

Para arreglar la configuración anterior; ser el siguiente sistema de ecuaciones que constituye un conjunto
restricciones de algún problema de programación lineal:

x1+2x2£4
x2£1

Pasando a la forma estándar de representación tenemos:

x1+2x2+x3=4
x2+x4=1

En este pequeño ejemplo, la división de la matriz A podría ser:

+1 + dos + 1 0 +1 0
A= + 1 + 1 B=
0 0 0 +1

En este caso x B = ( x 3 , x 4 ) y x R = ( x 1 , x 2 )

Definición 3.4:
El conjunto C = { x tal que Ax = b , x ³ 0} se denomina conjunto de soluciones viables.

De la definición 3.4, los siguientes teoremas y corolarios son importantes para comprender la
método simplex:

Teorema 3.1:
El conjunto C de las soluciones viables de un modelo de programación lineal es un conjunto
convexo .

Demostración:

Sea C el conjunto formado por los puntos x tales que:

Ax=b
x³0

Página 101

94 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

Si C es convexo, entonces (ver la definición de conjunto convexo en el anexo) para cualquier com-
planteada por dos puntos distintos x 1 , x 2 pertenecientes a C , la combinación lineal convexa de estos puntos también
también pertenece a C , lo que equivale a decir que:

⎧x = x α + (-)
1X α ∈ C
{x1,x2}ÎCÞ ⎨ 1
⎩0 ≤ α ≤ 1
dos

Sean dos soluciones viables de C , x 1 , x 2 , tales que x 1 ¹ x 2 , entonces:

https://translate.googleusercontent.com/translate_f 83/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
1
Hacha dos
X1 ≥=0 segundo
y Hacha
Xdos ≥=0 segundo

y se:

X = α X1 + (-)
1 α Xdos
0 ≤ ≤α 1

Entonces:

Ax = A [a x 1 + (1 - a) x 2 ] =
= a Ax 1 + (1 - a) Ax 2 =
= a b + (1 - a) b = b

y x ³ 0, ya que:

x = a x 1 + (1 - a) x 2 ³ 0

x 1 ³ 0, x 2 ³ 0 y £ 0 a £ 1

Teorema 3.2:
Toda solución básica viable del sistema Ax = b es un punto extremo del conjunto de soluciones
viable, es decir, un extremo del conjunto C .

Demostración:
Sea C el conjunto formado por los puntos x tales que:

Ax = b
x³0

Sea x una solución viable de cualquier tamaño n , en la que, sin pérdida de generalidad,
las variables básicas son las primeras m :

X1
METRO
xm
X= con todos los componentes x i ³ 0
0
METRO
0

Página 102

MÉTODO SIMPLEX 95

Supongamos, absurdamente, que x no es un punto extremo del conjunto convexo C , definido antes
previamente. Entonces x puede obtenerse mediante una combinación convexa de otros dos puntos distintos de ese
mismo conjunto. Llamando a estos dos puntos y y z , tenemos:

x = a y + (1 - a) z
£0a£1

Desde Y y Z pertenecerá a la serie C , las siguientes relaciones son válidas pertinencia:

Ay b= y Az b
=
y ≥0 z≥0

La relación x = ay + (1 - a) z , colocada en términos de las coordenadas de cada uno de los tres vectores, proporciona
las siguientes relaciones:

x 1 = a y 1 + (1 - a) z 1
x 2 = a y 2 + (1 - a) z 2
...............................................

x m = una y m + (1 - a) z m
0 = a y m +1 + (1 - a) z m +1
...............................................

https://translate.googleusercontent.com/translate_f 84/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
0 = a y n + (1 - a) z n

Debido a las relaciones £ 0 a £ 1, y ³ 0 yz ³ 0 las últimas ( n - m ) relaciones del conjunto descrito anteriormente solamente
puede satisfacerse en uno de los siguientes casos:

1. 0 <a <1 y y m + i = z m + i = 0 para i = 1, ..., n - m .

En este caso tendríamos x = y = z , ya que tanto y como z son soluciones básicas del sistema bajo análisis, calculado
con las mismas variables básicas.

dos. a = 0 yz m + i = 0 para i = 1, ..., n - m .

Razonando de forma análoga al caso anterior, deducimos que x = z . Además, como a = 0, se sigue que
x=y=z.

3. a = 1 y y m + i = 0 para i = 1, ..., n - m .

Por razones similares, se sigue que x = y = z .


Así, se demuestra que no existen soluciones viables y y z , distintas a la solución básica x
que satisfacen la relación x = a y + (1 - a) z . Contradiciendo la hipótesis inicial, entonces,
que x es un punto extremo de la convexa C .
La relación entre los puntos finales C y las soluciones viables básicas de un PPL es una correspondencia
experiencia bidireccional, como se muestra en la Figura 3.4.

Puntuación Solución básica


Extremo Viable

FIGURA 3.4 Solución básica de correspondencia x punto extremo de un PPL.

Página 103

96 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

El teorema 3.2 demuestra la correspondencia hacia una solución básica viable para un punto extremo
mo, y el teorema 3.3 completa la asociación.

Teorema 3.3:
Un punto x es extremo en un conjunto de soluciones viables a un problema de programación.
información lineal si y solo si x ≥ 0 es una solución básica del sistema de ecuaciones lineales
res Ax b =

También observamos que un punto x es extremo en un conjunto de soluciones viables de una PPL si
y solo si x ³ 0 es una solución básica del sistema de ecuaciones lineales Ax = b .

Corolario 3.1:
El conjunto de puntos extremos en un conjunto de soluciones viables es finito y limitado

en C n
m .

Corolario 3.2:
Si existe una solución viable, entonces existe una solución básica viable .

Finalmente, el último soporte necesario de la teoría para comprender y justificar la estrategia


El método simplex se refiere al valor óptimo alcanzado por la función objetivo. Cual seria el
asociación entre los puntos extremos y el valor de la función objetivo? ¿Existe alguna garantía de que el
el valor óptimo se alcanza en los puntos extremos de C ? El teorema 3,4 aclara la pregunta.

Teorema 3.4 :
1. Si una función objetivo tiene un máximo o mínimo finito, entonces al menos
una solución óptima es un punto extremo del conjunto convexo C del teorema 1.
2. Si la función objetivo asume el máximo o el mínimo en más de un punto extremo,
entonces toma el mismo valor para cualquier combinación convexa de estos puntos.

https://translate.googleusercontent.com/translate_f 85/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
La figura 3.5 resume de forma simplificada los aspectos teóricos que garantizan el buen funcionamiento
del método simplex. El método básicamente experimentará una secuencia de soluciones viables básicas
en la búsqueda del valor óptimo para la función objetivo, y este es uno de los aspectos que permiten
buen desempeño y la garantía de su convergencia en un número finito de pasos.

Solución Puntuación Solución básica


Excelente Extremo Viable

FIGURA 3.5 Correspondencia con la solución óptima.

3.3 - EL ALGORITMO PRIMAL SIMPLEX

3.3.1 - Descripción general del algoritmo

El algoritmo simplex describe una secuencia de pasos para resolver sistemas de ecuaciones lineales.
sujeto a una función objetivo. Básicamente, proporciona tres situaciones:

Página 104

MÉTODO SIMPLEX 97

1. Un método para invertir la matriz básica m ' m deducida de las restricciones de una matriz m ' n .

2. Las condiciones para cambiar variables dentro de la matriz básica, de manera que exista garantía de mejora de
solución a lo largo del desarrollo de los pasos del algoritmo.

3. Las reglas de parada del algoritmo y la interpretación de esta situación final.

Eventualmente, el algoritmo puede adaptarse para promover la elección de la base viable inicial, o
solución de partida viable. Sin embargo, la esencia del método ignora el problema de elegir un
base viable inicial.
La discusión del primer aspecto involucrado en el algoritmo, es decir, el método de inversión matricial
básico, es bastante evidente en la presentación de las "imágenes" del simplex y sus operaciones de "pivote".
ment ”. El método generalmente sugerido en la literatura es el de operaciones elementales . Esta tecnica
permite que en cada paso del algoritmo el esfuerzo de inversión ya gastado en iteraciones anteriores sea
aprovechado completamente. Es importante comprender que, de hecho, no existe ningún compromiso por parte del
algoritmo con un método de inversión específico para la matriz básica. En definitiva, el método
simplex no requiere que la matriz se invierta mediante un método pivotante, aunque
todo su razonamiento se aplica tradicionalmente junto con esta técnica.
El segundo punto se aborda mediante un criterio muy sencillo que implica calcular los posibles
posible contribución al aumento o disminución de la función objetivo (según sea el caso:
o minimización) con la posible entrada en la base de una variable no básica. El criterio apunta a
elección de la variable con mayor contribución inmediata. La eficiencia del método simplex y su extracción.
La potencia dinámica para funcionar en la práctica está asociada al criterio adoptado en este cálculo.
El tercer tema se refiere a la prueba de parada, que incluye la identificación de condiciones en las que
existe más la posibilidad de que un intercambio de variables en la base pueda mejorar el criterio de optimización
o situaciones en las que se identifica un comportamiento patológico de crecimiento indefinido
del problema.

3.3.2 - Ejemplo de solución para un programa de programación lineal

Un pequeño metalúrgico quiere maximizar sus ingresos vendiendo dos tipos de


aceros que difieren en calidad en el acabado de corte. Las cintas se producen a partir del
cortando bobinas grandes. Hay dos máquinas en funcionamiento. Una de las maquinas es
mayor y permite el corte diario de 4.000 m de cinta. El más nuevo corta hasta 6.000 m. La venta
de los platos en el mercado varía con la calidad de cada uno. Cintas producidas en la vieja máquina
Permitir una ganancia de 3 um por mil metros de producción. Cintas cortadas en máquina moderna
producir una ganancia de 5 um por mil metros de producción. Cada mil metros de cinta cortada en la máquina
anciano consume 3 hombres ´ hora de trabajo. En la máquina moderna, solo se gastan 2 horas
mensual. Se dispone de 18 horas hombre diarias para el funcionamiento de ambas máquinas.
nas. Determinar la producción que optimiza el beneficio metalúrgico.
El modelado de este problema de programación lineal, que llamaremos "las cintas" o Tape_1, es
simple y se puede realizar de la siguiente manera:

1. Elección de la variable de decisión


x i º longitud de la cinta cortada en la máquina vieja ( i = 1) y longitud de la cinta cortada en la máquina
en el nuevo ( i = 2).

https://translate.googleusercontent.com/translate_f 86/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

2.Desarrollo de la función objetivo


z = Maximizar { f ( x ) = 3 x 1 + 5 x 2 } - número total de unidades monetarias obtenidas de la venta de fondos
diferentes longitudes.

3. Formulación de restricciones tecnológicas


Considerando la unidad de longitud de cinta igual a 1000 m tenemos:

Página 105

98 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

a) Restricción asociada a la disponibilidad de mano de obra:


3 x 1 + 2 x 2 £ 18

b) Restricción de la longitud de las chapas fabricadas en la máquina antigua:


x1£4

c) Restricción de longitud de las hojas fabricadas en la nueva máquina:


x2£6

4. Restricciones de la no negatividad
x 1 ³ 0, x 2 ³ 0.
Podemos resumir el modelo Tape_1 de la siguiente manera:

Maximizar z = 3 x 1 + 5 x 2
Sujeto a:
x1£4
x2£6
3 x 1 + 2 x 2 £ 18
x 1 ³ 0, x 2 ³ 0

Como se nos pidió, además del modelo, mostrar el mejor esquema de producción,
buscamos solucionar el problema. Habiendo examinado el modelo Tape_1, encontramos la necesidad de
aproximación de una función lineal sujeta a un conjunto de tres desigualdades. Colocado en forma de ecuaciones,
el sistema de restricción es una matriz con m filas yn columnas, donde n > m . Suponiendo que este sistema de
ecuaciones tiene alguna solución, entonces esa solución se puede obtener a través de un determinante de
orden de m , correspondiente a una determinada submatriz m ' m derivada de la matriz de restricciones Fita_1.
En este caso, deducimos que la matriz de restricciones de Fita_1 representa un conjunto de ecuaciones independientes
terminado, es decir, tener infinitas soluciones aceptables. En resumen: si Fita_1 tiene una solución, entonces
tendremos que perseguirlo maximizando la función z sobre un conjunto infinito de soluciones viables. Lo haremos
ejemplificar la naturaleza de la dificultad del problema propuesto a través de la representación gráfica de
Ribbon_1. Representaremos la variable x 1 en el eje xy la variable x 2 en el eje y .
Como podemos ver en la Figura 3.6, los puntos O, A, B, C, D y E son ejemplos de soluciones para
conjunto de restricciones de cinta_1. La tabla 3.1 muestra el valor supuesto de la función objetivo z en cada
puntos seleccionados:

x2

X2=4

re C
X2=6
6

Y
segundo

3X + 2X = 18
1 dos

LA

O 4 x1

FIGURA 3.6 Representación gráfica de Fita_1.

https://translate.googleusercontent.com/translate_f 87/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

Página 106

MÉTODO SIMPLEX 99

TABLA 3.1

Coordenadas Valor de función


Puntos examinados
(x 1 , x i ) z = 3x 1 + 5x 2

O (0, 0) 0
LA (4,0) 12

segundo (4, 3) 27
C (2, 6) 36

re (0, 6) 30

Y (2, 3) 21

Entre los puntos examinados, la solución que lleva al valor z más alto es la que corresponde al vértice
C . ¿Sería este el valor máximo de la función z ? Obviamente, no podemos examinar los puntos infinitos del
Poliedro OABCD, aunque todas son soluciones posibles o viables. Afortunadamente, el
La figura 3.5 nos asegura que la solución óptima para Fita_1 está en uno de los puntos extremos de su poliedro.
soluciones viables. De hecho, no tiene sentido examinar un punto interno como el
Y (solo en sentido didáctico), el punto z óptimo nunca ocurrirá allí. La figura 3.7 es útil para
podemos visualizar gráficamente el proceso de optimización z sobre todas las soluciones viables. En el
ejemplo bidimensional actual, está representado por el desplazamiento de una línea. En el caso general,
hiperplano que representa una curva de nivel de la función objetivo z que pasa por algún punto
del poliedro de restricciones.

X2

7 z = 56

X2

z = 24
3
Sentido de
crecimiento z

O 3 7
X1
re C
3X + 5X = z
1 dos
6

z = 36

Mayor crecimiento
posible para z
Y
segundo

LA

O 4 X1

FIGURA 3.7 Crecimiento de la función z en Fita_1.

Examinando la ecuación general de las líneas asociadas con las curvas de nivel de la función objetivo, podemos ver
que cada valor numérico de z corresponde al término independiente de alguna línea perpendicular a la dirección
gradiente, configurado por los coeficientes de beneficio en el modelo. Específicamente, para el ejemplo en
maximizar z corresponde a cambiar la dirección proporcionada por la línea 3 x 1 + 5 x 2 hasta el máximo
el valor de su término independiente. Por supuesto, la línea z debe tener al menos un punto común
con la figura geométrica correspondiente a las restricciones o no podrá cumplirlas. Ese punto en

Página 107

100 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

Common es la solución que estamos buscando. Por supuesto, no todas las direcciones de viaje serán útiles.
para maximizar el término independiente de z . En el caso que se examina, la mejor dirección de viaje es la
del gradiente que corresponde a una dirección ortogonal al apoyo de la línea z . La dirección del crecimiento máximo
función de z no depende del formato o número de ecuaciones de la
modelo de programación lineal. La pendiente de z = c 1 x 1 + c 2 x 2 es independiente del valor de z y
igual ac 1 / c 2 . La dirección de mayor crecimiento de z corresponde a una línea recta ortogonal az , siendo por tanto
https://translate.googleusercontent.com/translate_f 88/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
a, igual ac 2 / c 1 . En este caso, optimizar z sobre un conjunto de restricciones lineales se reduce a encontrar,
hacia el mayor crecimiento de la función, el punto más alejado del universo de soluciones viables
calculado por la matriz de restricciones. La figura 3.7 nos sugiere visualmente que la mejor solución para
Fita_1 se ubicará en los bordes del polígono OABCD. El teorema 3.4 nos garantiza que nuestro
“Feeling” es siempre cierto, ¡ya que el polígono OABCD es convexo!
Como establece la segunda parte del Teorema 4, es posible que la dirección de búsqueda encuentre infinitos
puntos que harían que z asumiera un valor óptimo. Si la ganancia de vender las cintas del nuevo
nuestro ejemplo eran 2 unidades monetarias y no 5, ocurriría un hecho interesante. Pasando lo nuevo
Si la función z fuera 3x 1 + 2x 2 , su dirección se volvería paralela a la restricción impuesta por el trabajo. los
las soluciones viables no cambiarían de forma, ya que las restricciones no se han modificado,
pero la nueva dirección de crecimiento de la función objetivo encontraría simultáneamente los puntos extremos
It C y B. Para este ejemplo, cualquier punto de la cara CB es una solución óptima, como se muestra en la Figura
3.8. En términos del algoritmo simplex, este se caracteriza, como veremos a su debido tiempo, por la
variables no básicas j Î J con costos reducidos iguales a cero ( z j - c j = 0 ) en la solución
Situación óptima.

X2

7 z = 35

X2

z = 15
3
Nuevo sentido de
3X +2 X = z
1 dos crecimiento z

re C O 3 7 X1

6
z = 18

La dirección de la función z
coincide con el sentido de
Y
una de las restricciones extremas
segundo

LA

O 4 X1

FIGURA 3.8 Caso de infinitas soluciones para Fita_1.

Otra posible ocurrencia para el conjunto de soluciones viables de una PPL se refiere a su forma.
malo. Eventualmente, la matriz de restricciones puede no corresponder a una figura cerrada. Figura 3.9
muestra la situación en la que el conjunto de soluciones viables no es limitado. A pesar de representar un caso
Curiosa, esta característica no siempre presentará ninguna dificultad para el proceso de solución.
Examinando el ejemplo propuesto, podemos ver fácilmente que si la dirección de "crecimiento" de la función z
tiene la dirección opuesta a la que se muestra en la figura, por lo que apunta a la región del punto B,
la solución a este problema será limitada. Para la región del punto B, el conjunto de restricciones es limitado, un

Página 108

MÉTODO SIMPLEX 101

X2

Dirección de crecimiento
de nozbloqueado

X - dosX <_ 2
1 dos

z =3 X +2 X
1 dos
segundo

3X +5 X > _ 15
1 dos

X1

FIGURA 3.9 PPL ilimitado.

Dado que la dirección de crecimiento de z terminará bloqueada por el encuentro de caras del poliedro (dos restricciones

https://translate.googleusercontent.com/translate_f 89/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
para el caso
Otra bidimensional)
posibilidad o un punto
topológica para elextremo.
conjunto de soluciones viables es la del conjunto vacío. En
En términos generales, no hay garantía de que un problema correctamente formulado tenga solución. En eso
En este caso, la PPL se denomina inviable o imposible . En la interpretación geométrica, este hecho se caracteriza
por una región factible vacía . La figura 3.10 muestra un ejemplo de una PPL inviable.
Desafortunadamente, los problemas de la programación lineal no permiten, en la abrumadora mayoría de
la posibilidad de una solución gráfica, ya que esto solo es factible cuando el problema tiene dos
viable. Una forma de encontrar de manera eficiente el punto extremo de C a la que la solución óptima de z occurs-
ra ha sido objeto de un gran esfuerzo e investigación. Es en este sentido que, durante más de medio siglo, la
El algoritmo simplex es muy importante.

X2

X -dos X >2
1 dos

x 2 <1
dos

X1

FIGURA 3.10 PPL no viable.

3.3.3 - El criterio de mejora de la solución básica


Considerando que existe una solución básica viable al siguiente problema de programación lineal:

Minimizar z = cx
Sujeto a: Ax = b
x³0

Página 109

102 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

donde A es una matriz m ´ n , con rango m (todas líneas linealmente independientes), podemos descomponer
el vector c en sus componentes básicos y no básicos, c = (c B , c R ) , y suponga que la solución básica viable
⎛ - 1 ⎞
existente está representado por un vector x = ⎜B b ⎟cuyo valor asociado viene dado por la siguiente expresión
⎝ 0 ⎠
son:

⎛ - 1 ⎞ ⎛ - 1 ⎞
z 0 = cB⎜b ) B b ⎟= c B B –1 b
⎟= ( c B , c R ⎜
⎝ 0 ⎠ ⎝ 0 ⎠

El vector x se puede escribir , dependiendo de las variables básicas y no básicas, de la siguiente manera:

⎛ X segundo

x= ⎜ ⎟e b = Ax Bx = B + R x R .
⎝XR ⎠

Multiplicando por B –1 la expresión de z 0 tiene:

x B = B –1 b - B –1 Rx R

= B –1 b - ∑ asegundo
-1
jx j

j J∈

así, la expresión z = cx se puede reescribir de la siguiente manera:

z = cx
= cx + cx
cama y desayuno
RR

⎛ ⎞
⎜ ⎟
= c B ⎜ B b- 1 - ∑ asegundo
-1
jx j ⎟+ ∑ cjxj
⎝ ∈ ⎠ ∈

https://translate.googleusercontent.com/translate_f 90/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
jJ jJ (3,1)
= z
0-
∑ (z j - c j ) x j
j J∈

donde z j = c B B –1 a j para cada variable no básica.


La ecuación (3.1) muestra la posibilidad de establecer un criterio de optimización para la verificación
mejora o mejora de una solución básica. Cuando el valor del término z j - c j es estrictamente mayor que
cero existe la posibilidad, con la entrada de la variable índice j en la base, de reducir el valor de la función
objetivo en ( z j - c j ) x j , siempre que esta variable pueda asumir un valor positivo. El término z j - c j puede ser
interpretado como el coeficiente de utilidad relativa de la variable x j , y su valor negativo c j - z j es común
llamado de bajo costo. Si llamamos k al índice de esta variable no básica tenemos:

z=z0-(zk-ck)xk (3,2)

Examinando (3.2) es fácil concluir que, en general, el proceso de optimización será


que la variable x k se incrementa al máximo. Con el crecimiento de x k, el valor de z disminuye
en la nueva solución básica, en proporción al valor del coste reducido asociado. Cómo lo sabemos:

x B = B –1 segundo - B –1 a k x k = segundo– y k x k (3,3)

Dónde

y k = B –1 a k y b = B –1 b (3.4)

Página 110

MÉTODO SIMPLEX 103

Denotando las componentes del vector x B y b respectivamente por x , X segundo


segundo , ..., X Bm y cama
1 ,, ...,
ydosdesayuno
segundo
metro
1 dos

finalmente tenemos la siguiente expresión:

⎡ X segundo
⎤ ⎡ ⎤ ⎡ y ⎤
1 segundo
1 1k
⎢ ⎥ ⎢ ⎥ ⎢ ⎥
X segundo segundo y dos
⎢ dos =
⎥ ⎢ dos k
⎥ - ⎢ METRO ⎥ Xk
METRO METRO (3,5)
⎢ ⎥ ⎢ ⎥ ⎢ ⎥⎦
⎣ X Bm ⎦ ⎣ ⎦
segundo
metro
⎣ y mk

La expresión (3.5) nos muestra que si hay algún elemento de y ik , y ik, £ 0, entonces la x Bi asociado
puede crecer indefinidamente con el crecimiento de x k . Si y ik > 0 existe , entonces x Bi disminuye con el
ment de x k . Para satisfacer las condiciones de no negatividad de una solución básica viable, el nuevo
variable x k solo puede crecer hasta que el primer componente x Bi reducido a cero, que corresponde a

al mínimo entre todos segundo


yo para los valores positivos de y ik , o:
y ik

segundo
s Mínimo ⎧ segundo ⎫
= ⎨ yo : y ik > 0 ⎬ ⇒ x s
1≤ ≤ soy ⎩ ⎭ (3,6)
y sk y ik

Nótese que para garantizar la independencia lineal de la columna k con las otras columnas existentes en
base es esencial que y sk ¹ 0. Por el criterio sugerido en (3.2), la variable x k sería la que entraría en el
base mejorando el valor de la función objetivo, y la variable x s , linealmente dependiente de x k , dejaría la
base al tener su valor numérico completamente agotado por el crecimiento de x k .

Ejemplo de aplicación del criterio de mejora

Sea el problema de hacer las cintas en el ítem 3.2. Podemos reescribirlo en la forma estándar, considerando
la transformación a una PPL de minimización, de la siguiente manera:

Minimizar z = - 3 x 1 - 5 x 2
Sujeto a:
x1 +x3 =4
x2 +x4 =6
3x1+2x2 + x 5 = 18
x 1 ³ 0, x 2 ³ 0, x 3 ³ 0, x 4 ³ 0, x 5 ³ 0

Donde identificamos la matriz de restricciones, costos y términos independientes de la siguiente manera:

⎡ 10100 ⎤

⎢ ⎥
https://translate.googleusercontent.com/translate_f 91/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
A = [ a 1 , a 2 , a 3 , a 4 , a 5 ] =⎢⎣ 0 1 0 1 0 ⎥⎦
32001

⎡ 4 ⎤
b = ⎢ 6 ⎥ yc = [–3, –5, 0, 0, 0]
⎢⎣ 18 ⎥⎦

Consideremos la base compuesta por las variables x 3 , x 2 , x 5 , es decir:

⎡ 100 ⎤
B = [ a 3 , a 2 , a 5 ] =⎢ 0 1 0 ⎥
⎢⎣ 0 2 1 ⎥⎦

Página 111

104 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

En este caso, las variables x 1 y x 4 no son básicas. I = {3, 2, 5}, J = {1, 4}


Calculando la inversa de la base tenemos:

⎡ 100 ⎤
B –1 = ⎢ 0 1 0 ⎥
⎣ 0 -21 ⎦

Con la inversa de la base se puede calcular el vector x B , x R y Z como sigue:

⎡ X ⎤ ⎡ 100 ⎤⎡ 4 ⎤ ⎡ 4⎤
3
x B = ⎢ X dos⎥ = B –1 b = ⎢ 0 1 0 ⎥⎢ 6 ⎥ = ⎢ 6⎥
⎣ X5 ⎦ ⎣ 0 -21 ⎦ ⎣ 18 ⎦ ⎣ 6 ⎦

⎡ X 1 ⎤ ⎡ 0⎤
xR=⎣ =
X 4 ⎦ ⎣ 0⎦

⎡ 4⎤
z D = cx = c B x B + c R x R = [0 –5 0] ⎢ 6 ⎥ = –30
⎣ 6⎦

La base elegida corresponde al punto D de la Figura 3.6. Para mejorar la solución z D , necesitará
calcular los valores ( z j - c j ) para j Î J , es decir:

z 1 - c 1 = c B B –1 a 1 - c 1

⎡ 100 ⎤⎡ 1⎤
= [0 –5 0] ⎢ 0 1 0 ⎥ ⎢ 0 ⎥– (–3)
⎣ 0 -21 ⎦ ⎣ 3⎦

=3

z 4 - c 4 = c B B –1 a 4 - c 4

⎡ 100 ⎤ ⎡ 0⎤
= [0 –5 0] ⎢ 0 1 0 ⎥ ⎢ 1 ⎥– (0)
⎣ 0 -21 ⎦ ⎣ 0⎦

=-5

Piel criterio
adoptado, el variable x1 entrara a base salir los variable
segundo ⎧ segundo ⎫
s Mínimo = ⎨ yo : y > 0,⎬que en este caso es x 5 .
=
y sk 1 ≤ ≤ yo metro⎩ y ik

ik

⎡ X ⎤ ⎡ 4⎤ ⎡ 1⎤ ⎡ 4⎤
3
⎢ X dos⎥ = ⎢ 6 ⎥ / ⎢ 0 ⎥ = ⎢ - ⎥
⎣ X 5 ⎦ ⎣ 6 ⎦ ⎣ 3 ⎦ ⎣ dos ⎦

La nueva base estará formada por las variables x 3 , x 2 , x 1 , es decir:

⎡ 101 ⎤
B ' = [ a 3 , a 2 , a 1 ] =⎢ 0 1 0 ⎥
⎣ 023 ⎦

https://translate.googleusercontent.com/translate_f 92/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

Página 112

MÉTODO SIMPLEX 105

Correspondiente a la solución óptima del problema, o vértice C de la Figura 3.6.


Podemos formalizar el proceso de elección de la base de cálculo inicial, criterios de cambio de variables
en la regla de base y parada en un algoritmo de la siguiente manera:

Puesta en marcha:

La determinación de una inicial básica solución x B . Sea I el conjunto de índices de las columnas de A pertenecientes al
base y J = N \ I (establecer operación de diferencia).

Paso 1 : Calcule la matriz Y = ( y j ) = ( y sj ), s Î I y j Î J y los valores z j - c j , " j Î J de la siguiente manera:

Y = B –1 R
zj=cByj,jÎJ

• Si z j - c j £ 0 " j Î J entonces la solución básica viable x B es óptima. ¡Alto!

• De lo contrario, haga que J 1 = { j Î J | z j - c j > 0}

Paso 2 :
• Si y i £ 0 para al menos un j Î J 1 , no hay una solución óptima finita. ¡Detener!
• De lo contrario, determine k de modo que z k - c k = max {-} zj Cj
j J∈

segundoXs ⎧ segundo ⎫
s
En la columna k encuentre la relación: = = min ⎨ yo : y > 0⎬ ⇒ X s
ik
y sk y sk 1 ≤ ≤ soy ⎩ y ik ⎭

Paso 3 : Considere la nueva base B deducida de la anterior reemplazando a s con a k .

B = ( B \ { a s } È { a k })

Calcule la nueva solución básica viable:

x B = B –1 b

X Bs
z0=z0-(zk-ck)
y sk

Actualizar:

R = ( R \ { a k }) È { a s }

Yo = ( yo \ { s }) È { k }

J = ( J \ { k }) È { s }

Regrese al paso 1 .

Página 113

106 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

3.3.4 - El marco simplex

https://translate.googleusercontent.com/translate_f 93/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
Para facilitar la ejecución de cálculos manuales, tradicionalmente usamos un formato tabular
para el desarrollo del algoritmo simplex. Observamos que este formato es solo una característica
para que podamos seguir mejor los cálculos propuestos en el ítem 3.3. En general, describimos
vemos un problema de programación lineal como:

Mínimo z = c 1 x 1 + c 2 x 2 +… + c s x s + 0 x s +1 + 0x s +2 + ... + 0 x n

Sujeto a:

hasta 11 x 1 + hasta 12 x 2 +… + hasta 1 s x s + x s +1 + 0 + 0 +… + 0 = b 1

hasta 21 x 1 + hasta 22 x 2 +… + hasta 2 s x s + 0+ x s +2 + 0 +… + 0 = b 2


METRO M=M

a metro 1 x 1 + a metro 2 x 2 +… + a ms x s + 0 + 0 + 0 +… + x n = b m

x 1 , x 2 , ..., x n ³ 0

Organicemos ahora una tabla inicial para el cálculo de acuerdo con el siguiente dibujo:

Marco inicial :

TABLA 3.1 TABLA INICIAL SIMPLEX EN FORMATO TABULAR

x 1 .............. x k .................. x s x s +1 .............. x s + r ......... x n

z c 1 .............. c 1 k ................ c s c s +1 .............. c s + r ......... c n

x s +1 b1 hasta 11 .............. hasta 1 k .............. hasta 1 s 1 ... 0 ... 0


0 ... 0 ... 0
METRO METRO METRO METRO METRO METRO METRO METRO
segundo
s
x s+r br a r 1 .............. a rk .............. a rs 0 ... 1 ... 0 los
sk

METRO METRO METRO METRO METRO METRO METRO METRO

xn bm hasta m 1 ............. hasta mk ............. hasta ms 0 ... 0 ... 1

Término Matriz de restricciones Variables de holgura


Indiana (m´m-n) (m´m)

Esto corresponde a la siguiente configuración matemática asociada con la Tabla 3.1:

TABLA 3.2 IDENTIFICACIÓN DE MATRICES Y VARIABLES EN FORMATO TABULAR SIMPLEX

Índice variable

Valor de FO Valor de z j - c j

Índice
Zona
de
xB Y = B –1 R B –1 en
Variables
Cálculos
Básico

Variables no básicas Variables basicas

Eso a lo largo de las iteraciones del algoritmo corresponde a la siguiente forma canónica:

Página 114

MÉTODO SIMPLEX 107

Tabla general :

TABLA 3.3 MARCO GENERAL DE SIMPLEX

x 1 .............. x k .............. x s x s +1 .............. x s + r .............. x n

z z 1 - c 1 .... z k - c k .... z s - c s z s +1 - c s +1 ... z s + r - c s + r ... z n - c n

xB1 b1 y 11 .............. y 1 k .............. y 1 s

METRO METRO METRO METRO METRO


segundo
s
XBr br y r 1 .............. y rk .............. Y rs
B –1
y sk
METRO METRO METRO METRO METRO

XBm bm y m 1 ............. y mk ............. y ms

https://translate.googleusercontent.com/translate_f 94/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

Con la ayuda de la tabla anterior seguiremos estos pasos para resolver el sistema de desigualdades
líneas sujetas a una función objetivo:

Paso 1 : Organice la tabla inicial como se indica, partiendo de un PPL en forma canónica .

Paso 2 : Realice la prueba de parada:

• Si todo z j
- Cj £ 0 ( j Î J ), por lo que se ha alcanzado la solución óptima.

• De lo contrario, elija la z más grande - C ³ 0, digamos z k - c k , eligiendo el vector asociado x k para


j j

entrar en la base.

Paso 3 : Defina la variable que saldrá de la base:

• Si y ik £ 0 para todo i = 1, ..., m , entonces la variable x k puede disminuirse indefinidamente y el valor


El valor z tenderá a infinito negativo. En ese caso, la solución será ilimitada.
• Si y ik > 0 para algún i , i = 1, ..., m , entonces haga: segundo
yo
Calcula r , donde r es la variable básica relacionada con el mínimo entre los coeficientes . El elemento
y rk se llama "pivote". y ik

Paso 4 : Reemplace lavariable r- ésima, correspondiente a laecuación r- ésima con la variable x k , que
unirá la nueva base, y recalculará las matrices B -1 , Y y los vectores z j - c j , x B y z 0 . Volver
al paso 2.

Para recalcular las matrices y los vectores del método, podemos usar directamente las fórmulas
en el ítem 3.3 o, con base en la tabla propuesta anteriormente, utilizar el método de inversión de
matrices por operaciones elementales, considerando que las variables que quedaron en la base ya han
sudan sus columnas canonizadas, es decir, transformadas en vectores canónicos. Para canonizar la columna
de la nueva variable dividiremos la recta r por el elemento pivote, obteniendo 1 en la posición del pivote. Para reducir
los otros elementos de la columna a cero, usaremos la suma de múltiplos de la línea (más preguntas, ver
método de inversión matricial por operaciones elementales en el anexo).
El uso directo de ecuaciones algebraicas tiene una gran desventaja para el cálculo manual,
porque dificulta el seguimiento de las operaciones. Este método es adecuado para implementaciones informáticas.
tacional. El formato enmarcado, a pesar de requerir un mayor número de operaciones algebraicas y espaciales
en la memoria (si está automatizado), ya que funciona con toda la matriz Y ,
mejor visión de la evolución lógica del algoritmo. La propiedad algebraica de la inversión de matrices aumenta
da permite que los vectores z j - c j , x B y z 0 se obtengan por igual cuando el nuevo
matriz B a través de operaciones elementales (ver anexo - Temas en Álgebra Lineal y Convexidad).

Página 115

108 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

Marco pivotante

Cuando el algoritmo simplex introduce una nueva variable en la base y estamos usando el marco para el
cálculo, todo sucede como si una de las columnas de la matriz aún no hubiera sido calculada por el método
reversión de las operaciones elementales para obtener inversa completa de B . Variables que no
alterados conservan sus columnas canonizadas, lo cual es muy conveniente de calcular,
el trabajo de inversión realizado en el paso anterior. La operación que llamamos "pivotar"
to ”representa, en última instancia, la aplicación de las reglas del método de inversión matricial por operaciones
cambios elementales al marco propuesto.
El primer paso para la inversión de la nueva base formada con la entrada de la variable x k y la salida
de x r es exactamente para obtener un valor unitario en la posición del elemento pivote. Esto se logra mediante la división de
toda la línea de pivote por el valor de este elemento en la columna x k . Dado que el marco es una matriz ampliada,
la línea de pivote se extiende hasta el término independiente asociado. Con el mismo razonamiento, podemos fácilmente
comprender por qué la posición de la línea de z j - c j también será parte de las columnas de variables.
Desafortunadamente, el aspecto matemático de las ecuaciones que se forman cuando tratamos algebraicamente un
La operación pivotante puede considerarse un poco complicada, pero es solo a través de la
comprensión de estas expresiones seremos capaces de automatizar el proceso.
Suponga que se ha elegido la variable x k , en una iteración dada de la simulación.
plex, para ingresar a la base, porque tenía el valor más alto de z j - c j en la tabla, y la variable x r fue la primera
el cual agotó su valor positivo con el crecimiento de x k , por lo que debería dejar la base. En este caso, el
pivote será el elemento y rk (columna k , línea r ). Como la nueva columna, cuando sea canonizada, ocupará el puesto
ción r de los vectores canónicos que comprenden la base, el elemento y rk debe transformarse en un valor
unidad para una operación elemental válida. La operación más adecuada para el caso es la división de la línea.
del pivote por su propio valor.
Después de ajustar el pivote, toda la columna del pivote debe reducirse a cero para completar la operación.
Inversión recomendada por el método de operaciones elementales. Como el pivote es unitario, cada persona

https://translate.googleusercontent.com/translate_f 95/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
la posición se puede cancelar agregando un valor simétrico obtenido al multiplicar la línea de pivote
por –1 veces el valor del elemento a cancelar. Todas las operaciones necesarias son independientes
entre ellos y suficientes para completar la inversión de base. La siguiente secuencia de tablas aclara
la operación pivotante:

TABLA 3.4 IDENTIFICACIÓN DE VARIABLES QUE ENTRAN Y SALEN DE LA BASE

Valor más alto en el tablero

x 1 .............. x k .............. x s x s +1 .............. x s + r .............. x n

z z 1 - c 1 .... z k - c 1 k .... z s - c s z s +1 - c s +1 ... z s + r - c s + r ... z n - c n

y 11 .............. y 1 k .............. y 1 s 1 ... 0 ... 0


x s +1 b1
0 ... 0 ... 0

METRO METRO METRO METRO METRO METRO METRO METRO

x s+r br y r 1 .............. y rk .............. Y rs 0 ... 1 ... 0

METRO METRO METRO METRO METRO METRO METRO METRO

xn bm y m 1 ............. y mk ............. y ms 0 ... 0 ... 1

Línea asociada
segundo
s
al valor mínimo
y sk

Página 116

MÉTODO SIMPLEX 109

Tabla después de la división por pivote

TABLA 3.5 OPERACIÓN DE PIVOTE

x 1 .............. x k .............. x s x s +1 .............. x s + r .............. x n

z z 1 - c 1 .... z k - c k .... z s - c s z s +1 - c s +1 ... z s + r - c s + r ... z n - c n

y 11 .............. y 1 k .............. y 1 s 1 ... 0 ... 0


x s+1 b1
0 ... 0 ... 0

METRO METRO METRO METRO METRO METRO METRO METRO

segundo
r y r1 y rk y Jajaja 1
xk ............. ............. 0 ... ... 0
y rk y rk y rk y rk y rk

METRO METRO METRO METRO METRO METRO METRO METRO

xn bm y m 1 ............. y mk ............. y ms 0 ... 0 ... 1

1 Elemento pivote

La mesa después de la canonización de la columna de pivote

TABLA 3.6 TABLA FINAL

x 1 .............. x k .............. x s x s +1 .............. x s + r .............. x n

y rj
(zj-cj)- (zk-ck)
cBB- y rk
segundo
r
-(zk-ck)- Ck - z k
y rk 0 ...... ...... 0
0 y rk

y r1 y Jajaja
x s+ y1 kb r y 11 + (- y 1 k ) 0 y 1 s + (- y 1 k ) - y1k
b1- y rk y rk 1… …0
1 y rk y rk

METRO METRO METRO METRO METRO 0 METRO 0

https://translate.googleusercontent.com/translate_f 96/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
segundo
r y r 1 ............. 1 ............. y Jajaja 0 ... 1 …0
xk
y rk y rk y rk y rk

METRO METRO METRO METRO METRO 0 METRO 0


y mk y r1 y r1 - y mk
xn bm- br a m1 (- y mk ) 0 y ms (- y mk ) 0 ... …1
y1 k y rk y rk y rk

Página 117

110 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

3.3.5 - Un ejemplo numérico

Sea el siguiente problema de programación lineal:

Maximizar z = 4 x 1 + 5 x 2 + 9 x 3 + 11 x 4

sujeto a:

x 1 + x 2 + x 3 + x 4 £ 15

7 x 1 + 5 x 2 + 3 x 3 + 2 x 4 £ 120

3 x 1 + 5 x 2 + 10 x 3 + 15 x 4 £ 100

x 1 ³ 0, x 2 ³ 0, x 3 ³ 0, x 4 ³ 0

1. Transformación del modelo al formato estándar:

Maximizar z = 4 x 1 + 5 x 2 + 9 x 3 + 11 x 4 + 0 x 5 + 0 x 6 + 0 x 7

sujeto a:

x1+x2+x3+x4+x5 = 15

7x1+5x2+3x3+2x4+x6 = 120

3 x 1 + 5 x 2 + 10 x 3 + 15 x 4 + x 7 = 100

2. Tabla de cálculo inicial, Paso 1 del algoritmo:

x1 x2 x3 x4 x5 x6 x7

z 0 4 5 9 11 0 0 0

x5 15 1 1 1 1 1 0 0

x6 120 7 5 3 dos 0 1 0

x7 100 3 5 10 15 0 0 1

Observe que en la Tabla 1 las variables de holgura constituyen una base canónica, siendo innecesario
determinación de su inverso.

3. Paso 2 del algoritmo: regla de parada.

Como hay z j - c j > 0, una variable debe entrar en la base. El elegido es x 4 porque z 4 - c 4 = 11 es el valor más alto
entre z j - c j . La flecha indica la entrada de x 4 en la base.

Valor más alto z j - c j en la tabla

x1 x2 x3 x4 x5 x6 x7

z 0 4 5 9 11 0 0 0

https://translate.googleusercontent.com/translate_f 97/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
x5 15 1 1 1 1 1 0 0
x6 120 7 5 3 dos 0 1 0

x7 100 3 5 10 15 0 0 1

Página 118

MÉTODO SIMPLEX 111

4. Paso 3 del algoritmo: determinación de la variable que sale de la base (determinación del pivote).

La variable x 7 sale de la base ya que 100/15 es el valor más bajo para el crecimiento de x 4 . La flecha horizontal
esto indica la salida de x 7 desde la base.

x1 x2 x3 x4 x5 x6 x7

z 0 4 5 9 11 0 0 0

x5 15 1 1 1 1 1 0 0 15/1

x6 120 7 5 3 dos 0 1 0 120/2

x7 100 3 5 10 15 0 0 1 100/15

s Pivote

5. Paso 4 del algoritmo: operación para calcular los valores de solución asociados a la nueva base.

En el caso de utilizar el marco simplex, esta fase corresponde al llamado pivotaje, que permite la
cálculo de las matrices de problemas utilizando el método de operaciones elementales. La línea de pivote es
dividido por 15, que es el valor de pivote.

Etapa 1 - Construcción del pivote:

x1 x2 x3 x4 x5 x6 x7

z 0 4 5 9 11 0 0 0

x5 15 1 1 1 1 1 0 0

x6 120 7 5 3 dos 0 1 0

x7 20/3 1/5 1/3 2/3 1 0 0 15/1

Etapa 2 - Construcción de la columna de pivote:

x1 x2 x3 x4 x5 x6 x7

z –220/3 9/5 4/3 5/3 0 0 0 –11/15

x5 3/25 4/5 2/3 1/3 0 1 0 –1/15

x6 320/3 5/3 3/13 5/3 0 0 1 –2/15

x4 20/3 1/5 1/3 2/3 1 0 0 15/1

6. Paso 2 del algoritmo: aplicación de la regla de parada.

En este caso, el mayor z j - c j corresponde a z 1 - c 1 = 9/5, lo que lleva a la variable x 1 a entrar en la base.

Página 119

https://translate.googleusercontent.com/translate_f 98/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
112 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

7. Paso 3 del algoritmo: determinación de la variable que sale de la base (determinación del pivote).

x1 x2 x3 x4 x5 x6 x7

z –220/3 9/5 4/3 5/3 0 0 0 –11/15

x5 3/25 4/5 2/3 1/3 0 1 0 –1/15 125/12

x6 320/3 5/3 3/13 5/3 0 0 1 –2/15 1600/99

x4 20/3 1/5 1/3 2/3 1 0 0 15/1 100/3

8. Paso 4 del algoritmo: operación para calcular los valores de solución asociados a la nueva base.

Etapa 1 - Construcción del pivote:

x1 x2 x3 x4 x5 x6 x7

z –220/3 9/5 4/3 5/3 0 0 0 –11/15

x1 125/12 1 5/6 5/12 0 5/4 0 –1/12

x6 320/3 5/3 3/13 5/3 0 0 1 –2/15

x4 20/3 1/5 1/3 2/3 1 0 0 15/1

Etapa 2 - Construcción de la columna de pivote:

x1 x2 x3 x4 x5 x6 x7

z –1105/12 0 –1/6 12/11 0 0 0 –11/15

x1 125/12 1 5/6 5/12 0 5/4 0 –1/12

x6 455/12 0 –7/6 –13/12 0 –33/4 1 5/12

x4 55/12 0 1/6 12/7 1 –1/4 0 1/12

9. Paso 2 del algoritmo: aplicación de la regla de parada.

Todavía tenemos z 3 - c 3 = 11/12, lo que lleva a la variable x 3 a entrar en la base.

10. Paso 3 del algoritmo: determinación de la variable que sale de la base (determinación del pivote).

x1 x2 x3 x4 x5 x6 x7

z –1105/12 0 –1/6 12/11 0 –9/4 0 –7/12

x1 125/12 1 5/6 5/12 0 5/4 0 –1/12 25

x6 455/12 0 –7/6 –13/12 0 –33/4 1 5/12

x4 55/12 0 1/6 12/7 1 –1/4 0 1/12 55/7

Pivote

Página 120

MÉTODO SIMPLEX 113

11. Paso 4 del algoritmo: operación para calcular los valores de solución asociados a la nueva base.

x1 x2 x3 x4 x5 x6 x7

z –695/7 0 –3/7 0 –11/7 –13/7 0 –5/7

x1 50/7 1 5/7 0 –5/7 10/7 0 –1/7

x6 325/7 0 –6/7 0 13/7 –61/7 1 4/7

x3 55/7 0 2/7 1 12/7 –3/7 0 1/7

https://translate.googleusercontent.com/translate_f 99/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

12. Paso 2 del algoritmo: aplicación de la regla de parada.

Todo z j - c j £ 0, lo que conduce a la regla de parada. Se encontró la solución óptima.

El valor óptimo de z es 695/7, con x 1 = 50/7; x 6 = 325/7 y x 3 = 55/7.

3.3.6 - El caso en el que la base viable inicial no está disponible

En el algoritmo descrito se consideró superada la fase de obtención de una base viable para el problema .
De hecho, cuando, al incluir variables de holgura en el pasaje de la descripción del
del estándar al estándar obtenemos una base inicial (y canónica), el algoritmo descrito
aborda bien el problema. Pero ¿qué pasa cuando no lo hace? Tome el siguiente ejemplo:

Minimizar z = - 3 x 1 - 5 x 2

sujeto a:

x1 £4

x2 £6

3x1+2x2 ³ 18

x 1 ³ 0, x 2 ³ 0

Que cuando se convierta a la forma estándar será:

Minimizar z = - 3 x 1 - 5 x 2 + 0 x 3 + 0 x 4 + 0 x 5

sujeto a:

x1+x3 =4

x2+x4 =6

3 x 1 + 2 x 2 - x 5 = 18

x 1 ³ 0, x 2 ³ 0, x 3 ³ 0, x 4 ³ 0, x 5 ³ 0

Obviamente la matriz formada por las variables de holgura no es una base viable: 1

⎡ 100 ⎤
B= ⎢ 010 ⎥
⎣ 0 0 1– ⎦

1. B es una base, sin embargo, no cumple con el requisito de conducir a una solución en la que todas las variables serán mayores o
igual a cero.

Página 121

114 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

La figura 3.11 muestra gráficamente que el punto de origen (todas las variables reales iguales a cero) no
pertenece al espacio de soluciones viables a este problema, es decir, la base tradicionalmente considerada
como un fracaso inicial para ser viable.

X2

6 LA segundo

X1
0 dos 4

https://translate.googleusercontent.com/translate_f 100/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
FIGURA 3.11 Espacio de soluciones viables en el ejemplo.

En este punto, tenemos dos caminos a seguir:

• Encuentre una base viable (puntos A, B o C) por cualquier otro método y luego aplique el
simplex desde esa base.

• Utilice el simplex en sí mismo para generar una base viable, a partir de cualquier base que no sea viable.
Elegiremos la segunda alternativa. En este caso, inicialmente, el algoritmo buscará una base viable
posible buscar posteriormente el óptimo del propio programa. Tal método de solución generalmente tendrá
dos frases. Podemos describir estos pasos de la siguiente manera:

• Primera Fase : el procedimiento utilizará el símplex para encontrar una base de solución viable.
• Segunda Fase : en posesión de la base calculada en la primera fase, aplicaremos el método simplex tradicional
en busca del óptimo del programa.
Para operacionalizar la búsqueda de la base viable inicial, existen dos alternativas, todas basadas en la
idea de “variables artificiales”. Definiremos como variables artificiales las que introduciremos
en el programa de optimización para que tengamos la base viable inicial que tanto necesitamos. Estas variables
necesidad de tener alguna conexión con la realidad de modelar el problema, de ahí el nombre
artificial ”. En el ejemplo anterior, dado que solo una de las columnas base tiene un valor negativo en su
componente canónico (tercera columna), es decir, solo hay una variable de aclaramiento negativo, en el
una artificial será suficiente para corregir esta anomalía. Podemos obtener una base canónica viable para el pro-
programa de ejemplo con la introducción de una variable artificial como se muestra a continuación:

los
Minimizar z = - 3 x 1 - 5 x 2 + 0 x 3 + 0 x 4 +0 x 5 +? X 6

sujeto a:
x1 x3 =4
x2 x4 =6
los
3x1+2x2 -x5+x 6 = 18
los
x 1 ³ 0, x 2 ³ 0, x 3 ³ 0, x 4 ³ 0, x 5 ³ 0, x
6³ 0

Página 122

MÉTODO SIMPLEX 115

En consecuencia, ahora podemos tener la siguiente base canónica:

los
xxx
3 4 6

100
= 010
segundo
001

El signo de interrogación en el costo de la variable artificial es un aspecto fundamental para nuestra discusión.
cussion, y es ahí donde los dos métodos de solución más conocidos difieren. Mientras que las variables de
El despacho no tiene costes, a pesar de estar ligado al sentido lógico del modelo, los artificiales son
vinculado únicamente a la estrategia adoptada para obtener una base viable para el simplex. Cómo ellos
tienen un significado dentro de una estratagema matemática, su "costo" asociado puede ser útil en este
s estrategia.
El razonamiento es simple: si solo queremos, en una primera fase, obtener una base real viable para
el programa, tendremos que deshacernos de esas variables artificiales en algún momento. Pensando en
términos del funcionamiento del algoritmo simplex, será de nuestro interés que las variables artificiales
deje la base que se calculará en cada iteración lo antes posible. Ninguno de esos
Las bases constituidas artificialmente pueden utilizarse directamente para optimizar el problema real (mediante
menos en teoría) y representan un esfuerzo de cálculo. Una forma natural de pensar en una salida sería
asocian estas variables “intrusivas” con un costo extraordinariamente alto. Obviamente, si usamos el
simplex para minimizar un problema donde hay variables extraordinariamente grandes en la base,
el método tendrá como prioridad cambiarlos por otros más económicos, lo que, en teoría, conduciría a una solución
educación viable.
La estrategia descrita anteriormente se conoce como el método de la gran M , donde M es la
ganteque que atribuimos a los costes de las variables artificiales. La principal desventaja de este método.
lado en la posibilidad de dificultades numéricas cuando se implementa computacionalmente. Cuando
de M es un valor muy grande, pueden producirse errores de redondeo numérico en las divisiones resultantes
diferente, especialmente cuando la diferencia entre M y los valores de los otros costos del marco es
grande.
Por otro lado, cuando M se adopta de forma inconvenientemente pequeña, los efectos de
delagem. En esta alternativa, las variables artificiales pueden ser tomadas por el programa por variables
real. Para evitar las dificultades que puede presentar el método de la gran M al elegir el valor de M,

https://translate.googleusercontent.com/translate_f 101/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
tenemos la posibilidad
función objetivo de separar
diferente completamente
para cada etapa. las dos fases de cálculo, eligiendo, incluso, una
En la fase inicial podemos utilizar una función objetivo que minimiza el número de variables artificiales
base. Como una base real no tiene ninguna variable artificial distinta de cero,
primera fase, procederemos normalmente con los cálculos con la función objetivo original del
blema. Este procedimiento general de dividir la optimización en dos etapas, con diferentes funciones objetivo
diferentes métodos , se denomina método de dos fases . El nombre del método está vinculado a la existencia de dos
funciones objetivo, una para cada fase, ya que el método M grande también
en dos fases.
Para aclarar cómo podemos realizar estos cálculos en la práctica, procederemos con la solución
el ejemplo sugerido. Inicialmente, usaremos la tabla simplex para seguir los cálculos.
cada iteración. Haremos un pequeño cambio en la mesa para que pueda
seguir las dos fases del método, a saber: una línea para cada función objetivo como
que se muestra en la Tabla 3.7. La función objetivo de la primera fase será minimizar el número de variables
artificial. Nombraremos la función de la primera fase por q y la expresaremos, por ejemplo, de la
siguiente manera:

los
Minimizar q = 0 x 1 + 0 x 2 + 0 x 3 + 0 x 4 + 0 x 5 +1 x 6

que nos llevará a la Tabla 3.7:

Página 123

116 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

TABLA 3.7 UN EJEMPLO DEL MÉTODO DE DOS FASES

los
x1 x2 x3 x4 x5 X6

q 0 0 0 0 0 -1 Función 1 a Fase

z 3 5 0 0 0 0 Función 2 a Fase

x3 4 1 0 1 0 0 0

x4 6 0 1 0 1 0 0
los
X6 18 3 dos 0 0 -1 1

Observamos que simplemente transcribiendo los costos de las variables básicas en la tabla,
como hicimos en el método tradicional, no consideramos que el vector de las variables básicas no es
nulo. En el marco del método clásico, los costos de las variables siempre fueron cero, lo que
término z j en la primera iteración. En este caso, fue correcto transcribir al tablero la línea de la función objetivo
con la señal intercambiada. Ahora la variable básica artificial x 6 a tiene un costo unitario y z j no se incrementará

automáticamente igual a cero y debe calcularse. Esto se debe precisamente a que estamos "forzando
"la variable artificial para pertenecer a la base. Sin embargo, observamos que el término c j es nulo para todas las variables
con la excepción de la variable x 6 a , lo que nos lleva a:

z j - c j = c B B –1 a j - c j

que, en este caso, será:

⎡ 100 ⎤ ⎡ 0⎤
z 6 - C6 = [ 0 0 1 ]⎢ 0 1 0 ⎥ ⎢ 0⎥ - 1 =
0
⎣ 001 ⎦ ⎣ 1⎦

⎡ 100 ⎤ ⎡ 1⎤
z 1 - C1 = [ 0 0 1 ]⎢ 0 1 0 ⎥ ⎢ 0⎥ - 0 =
3
⎣ 001 ⎦ ⎣ 3⎦

⎡ 100 ⎤ ⎡ 0⎤
z dos- Cdos= [ 0 0 1 ]⎢ 0 1 0 ⎥ ⎢ 1⎥ - 0=
2
⎣ 001 ⎦ ⎣ dos

⎡ 100 ⎤ ⎡ 1⎤
z 3 - C3 = [ 0 0 1 ]⎢ 0 1 0 ⎥ ⎢ 0⎥ - 0 =
0
⎣ 001 ⎦ ⎣ 0⎦

⎡ ⎤ ⎡ ⎤
https://translate.googleusercontent.com/translate_f 102/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
⎡ 100 ⎤ ⎡ 0⎤
z 4 - C4 = [ 0 0 1 ]⎢ 0 1 0 ⎥ ⎢ 1⎥ - 0 =
0
⎣ 001 ⎦ ⎣ 0⎦

⎡ 100 ⎤ ⎡ 0 ⎤
z 5 - C5 = [ 0 0 1 ]⎢ 0 1 0 ⎥ ⎢ 0 ⎥ - 0= -1
⎣ 001 ⎦ ⎣ - 1⎦

Página 124

MÉTODO SIMPLEX 117

El valor de los costos reducidos de las variables no básicas, para este caso, termina siendo igual al valor de la
coeficientes de las variables de la línea donde se introduce la variable artificial. Si hay mas de uno
variable artificial, el producto c B B -1 a j corresponde a sólo tiene que añadir estos coeficientes para el
líneas en las que estas variables son necesarias, ya que habrá un elemento unitario en el vector
costos básicos para cada una de estas líneas. Ésta es la razón matemática que lleva a algunos textos a
afirmar que, para obtener la función objetivo de la primera fase del marco simplex, debemos agregar la
líneas de variables artificiales a la línea de la función objetivo .
Otra forma de justificar esta regla es recordar que en el marco simplex siempre estamos trabajando
con una matriz ampliada, es decir, debemos canonizar las columnas de las variables artificiales (que
conducir a agregar las líneas de la matriz A a la función objetivo, exactamente como se predijo en la regla anterior cuando
para cancelar el costo reducido de la columna artificial).
los
Girar sobre el elemento unitario de x
6 llegamos a la imagen inicial:

los
x1 x2 x3 x4 x5 X6

(+) q 18 3 dos 0 0 -1 0 Función 1 a Fase

z 3 5 0 0 0 0 Función 2 a Fase

x3 4 1 0 1 0 0 0

x4 6 0 1 0 1 0 0
los
X 18 3 dos 0 0 -1 1
6

Lo que conducirá x 1 dentro y x 3 fuera de la base, según la tabla siguiente:

los
x1 x2 x3 x4 x5 X6

q 18 3 dos 0 0 -1 0 Función 1 a Fase

z 3 5 0 0 0 0 Función 2 a Fase

x3 4 1 0 1 0 0 0 4/1 = 4

x4 6 0 1 0 1 0 0 -
los
X6 18 3 dos 0 0 -1 1 3/18 = 6

Lo que resultará en:

los
x1 x2 x3 x4 x5 X6

q 6 0 dos –3 0 -1 0 Función 1 a Fase

z –12 0 5 –3 0 0 0 Función 2 a Fase

x1 4 1 0 1 0 0 0 -

x4 6 0 1 0 1 0 0 6
los
X6 6 0 dos –3 0 -1 1 3

Lo cual, finalmente, nos llevará al marco en el que se ha optimizado la función objetivo de la primera fase (término
el primer punto de fase c de la Figura 3.11).

https://translate.googleusercontent.com/translate_f 103/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

Página 125

118 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

x1 x2 x3 x4 x5 cha
6

q 6 0 0 0 0 0 -1 Función 1 a Fase

z –27 0 0 9/2 0 5/2 -1 Función 2 a Fase

x1 4 1 0 1 0 0 0 -

x4 3 0 0 3/2 1 1/2 –1/2 6

x2 3 0 1 –3/2 0 –1/2 1/2 3

De esta tabla, la variable x 6 a puede ser ignorado del proceso sin ninguna pérdida de

información para el programa. Se recomienda, por tanto, que se marque para que no se produzca
cálculos inútiles de “costo reducido”. Reanudando el proceso, en la segunda fase tenemos:

los
x1 x2 x3 x4 x5 X6

z –27 0 0 9/2 0 5/2 Función 2 a Fase

x1 4 1 0 1 0 0 0 4

x4 3 0 0 3/2 1 1/2 –1/2 dos

x2 3 0 1 –3/2 0 –1/2 1/2 -

Lo que lleva a la imagen:

los
x1 x2 x3 x4 x5 X6

z –36 0 0 0 –3 1 Función 2 a Fase

x1 dos 1 0 1 –2/3 –1/3 1/3 -

x3 dos 0 0 1 2/3 1/3 –1/3 6

x2 6 0 1 0 1 0 0 -

Lo que nos lleva al siguiente marco óptimo:

los
x1 x2 x3 x4 x5 X6

z - 42 0 0 –3 –5 0 Función 2 a Fase

x1 4 1 0 0 0 0 0 -

x5 6 0 0 0 dos 1/3 -1

x2 6 0 1 0 1 0 0 -

El gráfico de la Figura 3.12 muestra, geométricamente, la secuencia de las bases generadas en las dos fases de la
método:
Se sugiere que el lector resuelva este mismo ejemplo usando algún M de alto costo, asociado con el
los
variable artificial x
6.

Página 126

MÉTODO SIMPLEX 119

X2 X2

6 6 z = –36 z = –42

https://translate.googleusercontent.com/translate_f 104/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

q=0 z = –27

q=6 z = –12
q = 18 z=0

0 dos 4 X1 0 dos 4 X1

FIGURA 3.12 Ruta de la secuencia de bases.

3.4 - CASOS ESPECIALES PARA SIMPLEX

3.4.1 - Degeneración y ciclos

La convergencia del algoritmo simplex está garantizada por la certeza de que, en cada paso, el criterio de elección
Cambiar una variable base dará como resultado una mejora en el valor de la función objetivo. Mismo
que era necesario examinar un número exponencial de combinaciones de variables para formar el
base óptima (también llamadas configuraciones de solución), en paso finito, el algoritmo terminaría.
Sin embargo, en algunas situaciones especiales, podemos encontrar configuraciones que invaliden el uso
perfecto de los criterios descritos anteriormente. Estas configuraciones patológicas resultan de situaciones
en el que el z j - c j asociado con algunas variables tienen valores iguales, y lo mismo ocurre en relación
segundo
s
al valor mínimo . La siguiente tabla muestra la situación descrita:
y sk

TABLA 3.8 EJEMPLO DE VINCULOS EN LOS CRITERIOS DE SELECCIÓN DE VARIABLES

x1 x2 x3 x4 x5 x6 x7

z 0 0 0 1 1 -1 0

x1 0 1 0 0 1 3 1 0 0

x2 1 0 1 0 0 -dos -1 0

x7 0 0 0 0 1 dos 0 1 0

x3 dos 0 0 1 1 0 0 0

En cuanto al criterio para salir de la base, lo que ocurre es que existen variables básicas con un
nulo. Cuando esto sucede, el producto ( z j - c j ) x j , responsable de asegurar la disminución de la función
objetivo (criterio de minimización), fallará, no porque ya no exista la posibilidad de que un
intercambio de variables puede mejorar la función objetivo, sino porque la variable x j que entra no puede
valor faltante distinto de cero. La llamada salida de "extracción" también se conoce como degeneración y
corresponde a una situación en el hiperespacio de actividades, como se muestra en la Figura 3.13.
Cuando un cierto punto extremo en el conjunto C de las soluciones viables del modelo de programación
Las matemáticas están asociadas con más restricciones de las estrictamente necesarias para la definición de este
En el mismo punto, el conjunto de restricciones es linealmente dependiente y existe la posibilidad de que
en una determinada etapa en el desarrollo del algoritmo, una degeneración en el criterio de salida del

Página 127

120 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

X2

C P2
re P1

segundo

P3

O LA X1

FIGURA 3.13 Ciclismo del algoritmo Simplex.

https://translate.googleusercontent.com/translate_f 105/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

base. La aparición del valor nulo en la tabla se debe al hecho de que las autorizaciones asociadas a la
las restricciones redundantes se agotan simultáneamente.
Aunque algunos autores afirman que el ciclo del algoritmo simplex es un hecho desconocido
En problemas prácticos, el primer autor de este texto se encontró con varios ejemplos de ciclismo en el
resolución de problemas grandes de particiones no ponderadas. En ocasiones cuando es
que el proceso de solución maneja muchas variables candidatas simultáneamente para ingresar
base y alto porcentaje de degeneración, 2 la Regla Bland se vuelve indispensable (ver
Bland [1977]).

Regla suave
• Entre todos los candidatos para ingresar a la base, seleccione la variable x k que tenga el menor
índice.
• Entre todos los candidatos a dejar la base, seleccione la variable x r que tenga el menor
dado.

La regla simple del índice más bajo es capaz de agotar toda la discusión sobre el ciclismo en el simple
plex, como el método lexicográfico (ver Chvátal [1983]). Tenga en cuenta que no hay problema si
cambiamos la regla con el índice más bajo al índice más alto.

3.4.2 - Múltiples soluciones óptimas

La figura 3.8 ejemplifica gráficamente un caso de múltiples soluciones óptimas en un modelo de programa
información lineal. De forma intuitiva, se lleva al lector a comprender que en este caso la dirección de la función
El objetivo debe alcanzar más de un punto extremo de la envolvente convexa del modelo.
Como mediante la combinación lineal de los puntos extremos podemos generar infinitos puntos que serán
pertenecientes a la envolvente convexa del modelo (una cara de esa envolvente), el modelo tendrá infinitamente
estas grandes soluciones.
La pregunta que surge es cómo podríamos identificar tal situación en el desarrollo de la
simplex. Para ejemplificar el caso en estudio, resolveremos el siguiente problema:

2. El autor se refiere al caso de resolución de problemas de particiones no ponderadas en el que el porcentaje de grados
Los números de línea rondan el 95% (véase Goldbarg [1990]).

Página 128

MÉTODO SIMPLEX 121

Minimizar z = - x 1 - 2 x 2

sujeto a:

x1 £3

x2£4

x1+2x2£9

x 1 ³ 0, x 2 ³ 0

Eso corresponde a la siguiente tabla inicial, luego de la inclusión de las tres variables de holgura necesarias:

x1 x2 x3 x4 x5

z 0 1 dos 0 0 0

x3 3 1 0 1 0 0

x4 4 0 1 0 1 0 4/1 = 4

x5 9 1 dos 0 0 1 9/2 = 4,5

Lo cual, después de que x 2 entra en la base y pivota, se reduce a:

x1 x2 x3 x4 x5

z –8 1 0 0 -dos 0

x3 3 1 0 1 0 0

x2 4 0 1 0 1 0

x5 1 1 0 0 -dos 1

https://translate.googleusercontent.com/translate_f 106/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

En la nueva tabla, la variable x 1 es candidata a entrar en la base y la variable x 5 debe salir.

x1 x2 x3 x4 x5

z –8 1 0 0 -dos 0

x3 3 1 0 1 0 0 3

x2 4 0 1 0 1 0

x5 1 1 0 0 -dos 1 1

Resultando, después de pivotar, en la siguiente tabla.

x1 x2 x3 x4 x5

z –9 0 0 0 0 -1

x3 dos 0 0 1 dos -1

x2 4 0 1 0 1 0

x1 1 1 0 0 -dos 1

El cuadro anterior es excelente y la regla de parada simplex lo atestigua. La solución final es:

z = –9, x 3 = 2; x 2 = 4; x 1 = 1

Página 129

122 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

Sin embargo, es posible generar otra base (punto extremo) con el mismo valor que la función objetivo,
es decir, con el mismo valor óptimo. Con este fin, continuaremos el proceso pivotante que incluye el
variable x 4 en la solución. La siguiente tabla muestra que la variable que se generará es x 3 .

x1 x2 x3 x4 x5

z –9 0 0 0 0 -1

x3 dos 0 0 1 dos -1 2/2 = 1

x2 4 0 1 0 1 0 (valor nulo)

x1 1 1 0 0 -dos 1 (valor negativo)

Lo que conduce a una excelente imagen a seguir con z = –9, x 4 = 1; x 2 = 3; x 1 = 3:

x1 x2 x3 x4 x5

z –9 0 0 0 0 -1

x4 1 0 0 1/2 1 –1/2

x2 3 0 1 –1/2 0 1/2

x1 3 1 0 1 0 0

La figura 3.14 muestra los dos puntos extremos representados por la base del primero y el segundo
gran foto. Tenga en cuenta que la función z tiene una dirección paralela a la restricción representada por los puntos B y C, o
es decir, x 1 + 2 x 2 £ 9. La variable x 3 es el espacio libre asociado con la restricción representada por el segmento de línea recta CD,
por lo tanto, está presente en la base que representa el punto C. Cuando, al pivotar, el algoritmo
elija el punto B como la solución, la variable x 3 se reemplaza por x 4 , el despeje de la restricción asociada con CB.

x2 x1=1

x2=4
re C

z= x 1 + 2x
x1=3 dos

x2=3

segundo

LA
X1
O

https://translate.googleusercontent.com/translate_f 107/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
FIGURA 3.14 Caso de infinitas soluciones óptimas.

3.5 - PROBLEMAS PROPUESTOS

1 - Revisión de la teoría J
Responda con lo correcto o incorrecto justificando su elección:

1. Si en un sistema con n incógnitas y m ecuaciones ( n > m ), puede seleccionar un conjunto de m in-


cognitas formando una matriz m ' m para determinar distinto de cero, entonces:

Página 130

MÉTODO SIMPLEX 123

Los. () Se determina el sistema m ´ m.


SEGUNDO. () El sistema está determinado, pero puede que no haya solución.
C. () El sistema está determinado y puede tener una solución infinita.
re. () El sistema puede tener infinitas soluciones.
y. () El símplex puede resolver este sistema siempre que la solución no sea negativa.

2. Sea x * una solución óptima para un PPL y M el conjunto de todas sus soluciones viables. Entonces:

Los. () x * siempre se puede obtener mediante una combinación lineal convexa de dos o más puntos distintos
tos M .
SEGUNDO. () x * solo puede obtenerse mediante una combinación lineal convexa de dos o más puntos distintos de
M si M es limitado.
C. () x * siempre corresponde a un vértice de la envolvente convexa de M , incluso cuando M es ilimitado.
re. () x * es un vértice solo en caso de que no haya degeneración.

3. Si el conjunto de soluciones PPL viables no es limitado, entonces:

Los. () La solución al problema es imposible o ilimitada.


SEGUNDO. () Es posible que la solución no ocurra en un vértice porque el espacio solución no es convexo.

4. Si el conjunto de soluciones PPL viables no se limita a ninguna iteración del algoritmo simplex:

Los. () Usamos el método de dos fases para obtener la inviabilidad.


SEGUNDO. () Se forma al menos una de las columnas correspondientes a las variables no básicas con z j - c j ³ 0
por elementos nulos y negativos.
C. () Solo la variable no básica con mayor z j - c j está formada por elementos nulos o negativos.
re. () Hay más de una variable candidata no básica para ingresar a la base de datos con el mismo valor
de z j - c j ³ 0.

5. Si, en una iteración de algoritmo simplex dada:

Los. () Una variable sale de la base, en la siguiente iteración no podrá volver a entrar a la base.
SEGUNDO. () Una variable entra en la base, en la siguiente iteración no puede salir.
C. () Hay una variable artificial en la base y hay variables no básicas con z j - c j ³ 0, la primera
La fase del método de dos fases aún no ha llegado a su fin.
re. () Todas las variables no básicas tienen z j - c j £ 0, se ha alcanzado la solución óptima.
y. () Todas las variables no básicas tienen z j - c j £ 0, la solución es limitada.

6. Cuando hay variables no básicas con z j - c j = 0 en el marco simplex óptimo, entonces:

Los. () Hay degeneración.


SEGUNDO. () Hay infinitas soluciones óptimas al problema.
C. () Este hecho es absolutamente normal en la condición de parada y la solución es única.
re. () Las variables no básicas con z j - c j = 0 se pueden introducir en la base, generando
grandes soluciones óptimas.

7. Cuando hay un empate en el criterio de salida base, entonces:

Los. () Hay degeneración.


SEGUNDO. () Hay infinitas soluciones óptimas al problema.
C. () Este hecho es absolutamente normal en la condición de parada y la solución es única.
re. () El conjunto de restricciones es linealmente dependiente.
y. () Podemos eliminar del problema una de las restricciones que generó el empate.
F. () A partir del empate, los espacios de las líneas atadas siempre serán iguales a cero.
para todas las demás iteraciones simplex.
https://translate.googleusercontent.com/translate_f 108/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

Página 131

124 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

2 - Solución de problemas de programación lineal J


Resuelva los siguientes problemas de programación lineal utilizando el método simplex y gráficamente:

Los) Maximizar z = 4 x 1 + 7 x 2
sujeto a:
x1 £6
x2£8
4 x 1 - 2 x 2 £ 10
x 1 ³ 0, x 2 ³ 0

SEGUNDO) Minimizar z = - 2 x 1 –3 x 2
sujeto a:
x1 £8
x2 £4
-2x1+x2£5
x 1 ³ 0, x 2 ³ 0

c) Una empresa produce dos tipos de bolsas de plástico ( B 1 , B 2 ) cuyos mercados absorben respectivamente
80 y 60 unidades diarias. El proceso de producción consume dos tipos de materia prima: hojas
de plásticos y sujetadores. Cada unidad de B 1 consume dos láminas de plástico y cuatro sujetadores. Cada unidad
de B 2 consume tres láminas de plástico y tres hebillas. 200 hojas de plástico están disponibles diariamente
con 240 sujetadores. Los beneficios unitarios de la venta de productos son de R $ 20 y R $ 25, respectivamente. Cúal
¿Debería el esquema de producción generar el mayor beneficio posible?

3 - Solución de problemas de programación lineal J


Determine todas las soluciones básicas viables a partir del siguiente conjunto de restricciones:

-x1+x2+x3+x4-2x5=4

+x1-2x2+x4-x5=3

x 1 ³ 0, x 2 ³ 0, x 3 ³ 0, x 4 ³ 0, x 5 ³ 0

4 - Método de dos fases J


Resuelva los siguientes problemas de programación lineal utilizando el método símplex:

Los) Maximizar z = 2 x 1 + 5 x 2 + x 3
sujeto a:
x1+x2 ³6
x2-x3 ³4

4x1+2x2+x3 £ 15

x 1 ³ 0, x 2 ³ 0, x 3 ³ 0

Página 132

MÉTODO SIMPLEX 125

https://translate.googleusercontent.com/translate_f 109/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
SEGUNDO) Minimizar z = x 1 - 3 x 2 - 5 x 3 - x 4
sujeto a:
x1 + x4£8
x2+x3 £8
-x1+x2+x3+x4³4
x 1 ³ 0, x 2 ³ 0, x 3 ³ 0, x 4 ³ 0

5 - Interpretación gráfica K
Sabiendo que la Figura 3.15 representa gráficamente la región de las soluciones viables de una PPL y que
la secuencia de puntos extremos indicada muestra la ruta de solución del algoritmo simplex utilizado
hacer ( B es el óptimo), preguntamos:

a) Representar las bases asociadas a los puntos extremos visitados por las iteraciones.
b) Representar matricialmente la solución asociada con el punto F (punto interno).
c) ¿Cómo podríamos transformar la solución asociada con el punto F en una solución básica viable?

X2

LA
3

dos

F
segundo
1

0 C X1
dos 4

FIGURA 3.15 Una trayectoria del símplex.

6 - Método simplex - Fundamentos teóricos


L
João, muy nervioso, está terminando su prueba de programación lineal cuando descubre que se equivocó,
en la primera tabla, las cuentas en el cálculo de los costos reducidos ( z j - c j ) de una de las preguntas. Des-
corrió hacia el profesor y le pidió más tiempo para poder rehacer las imágenes y no ser lastimado
dictado por un error tan simple. El profesor, examinando la imagen final e inicial del problema, dio a la
siguiente solución:

“João, simplemente vuelve a hacer los cálculos para la última mesa. Eso será suficiente. En ese caso, consideraré
la pregunta correcta! Ni siquiera necesité, pero te doy cinco minutos más ... mucha suerte ”.

Ayuda a João a corregir su error sin tener que rehacer todos los pivotes anteriores.

Página 133

126 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

Cuadro inicial copiado con error (celda sombreada):

x1 x2 x3 x4 x5 x6

z 0 -1 –3 4 0 0 0

x4 9 1 1 dos 1 0 0

x5 dos 1 1 -1 0 1 0

x6 4 -1 1 1 0 0 1

Mesa final con errores acumulados surgidos

x1 x2 x3 x4 x5 x6

https://translate.googleusercontent.com/translate_f 110/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
z –17 0 –6 0 -1 0 -dos

x1 1/3 1 –1/3 0 1/3 0 –2/3

x5 6 0 dos 0 0 1 1

x3 3/13 0 2/3 1 1/3 0 1/3

Error cometido : el valor correcto de z 2 - c 2 en el primer cuadro era –1.

7 - Método simplex - Fundamentos teóricos L


Sea el siguiente problema:

Maximizar z = 3 x 1 + 2 x 2 - 2 x 3 + 5 x 4
sujeto a:
x1+x2+3x3+x4£8
3 x 1 - x 2 + x 3 + 2 x 4 £ 10
x1- x3 £6
x 1 ³ 0, x 2 ³ 0, x 3 ³ 0, x 4 ³ 0

Determina una solución al problema con las variables x 1 , x 2 , x 3 . ¿Es genial esta solución? Si no,
tomándolo como base inicial, determine la solución óptima.

8 - Método simplex - Fundamentos teóricos L


x1 x2 x3 x4 x5 x6

z –40 segundo re 0 0 F 0

x2 4 C 1 0 y dos gramo

x4 -1 –5 0 1 -1 1 0

x6 los dos 0 0 0 3 1

Determine los parámetros libres en la tabla para que:

a) El marco es óptimo y conduce a una solución única.


b) La solución de la tabla es óptima, pero hay al menos otra solución óptima.
c) La solución no es viable.
d) La solución es viable pero ilimitada.
e) La tabla representa una solución viable que se puede mejorar ingresando x 1 en la base y la salida
de x 6 .

Página 134

MÉTODO SIMPLEX 127

9 - Método simplex - Fundamentos teóricos norte


Resuelva el problema a continuación utilizando el método de dos fases mediante la introducción de una variable de índice artificial
⎡ - 1⎤
5 ( x 5 ) con costo igual a 1 y con un vector de actividades igual a: ⎣ - 1 ⎦.

Minimizar z = 2 x 1 + 3 x 2

sujeto a:

-x1-x2+x3 =-3

-2x1-x2+x4 =-2

x 1 ³ 0, x 2 ³ 0, x 3 ³ 0, x 4 ³ 0

¿Podría generalizarse este método a cualquier PPL? Si es posible, describa la generalización;


de lo contrario, justifique la imposibilidad.

10 - Método simplex - Interpretación geométrica norte


Determine el valor de K más pequeño para que el problema siguiente sea viable:

Minimizar z = 2 x 1 + 3 x 2

sujeto a:

https://translate.googleusercontent.com/translate_f 111/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

-2x1-x2+3x2 ³4

x1+2x2 ³6

3x1- x2+2x3 £7

-x1+5x2+x3 £K

x 1 ³ 0, x 2 ³ 0, x 3 ³ 0

11 - Método simplex - Aplicación J


a) Solucione manualmente los problemas del 1 al 7 en la serie de ejemplos resueltos en el Capítulo 2.
b) Resolver los otros problemas propuestos en el Capítulo 2 con la ayuda de un programa de computadora
final apropiado.

12 - Método simplex - Aplicación J


Una empresa debe producir 500 herramientas para uno de sus clientes en un período de tiempo determinado.
polvo. Tiene dos máquinas que pueden producir las herramientas según la distribución de costos.
en la siguiente tabla:

TABLA 3.2 COSTOS Y LÍMITES DE PRODUCCIÓN

Costo unitario de producción Costo de montaje Límite de producción


Máquina
(EL DÓLAR AMERICANO $) de máquinas (US $) en el tiempo disponible

1 1.12 60 300

dos 1,23 50 270

Página 135

128 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

a) Resuelva el problema para minimizar el costo total de producción.


b) ¿Sería posible resolver este problema usando el símplex? Justifica la respuesta.

13 - Método simplex - Aplicación K


Determine las condiciones necesarias y suficientes para que los valores de los parámetros k y p en el problema
siga para que el modelo sea:

Minimizar z = x 1 + x 2
sujeto a:
kx 1 + px 2 ³1
x 1 ³ 0, x 2 ³ 0

1. Ilimitado.
2. Imposible.
3. No viable.

https://translate.googleusercontent.com/translate_f 112/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

Página 136

4 DUALIDAD
Y SENSIBILIDAD

4.1 - CONCEPTO DE DUALIDAD EN PROGRAMACIÓN MATEMÁTICA


La dualidad es un concepto amplio que engloba la posibilidad de tratar dos naturalezas distintas
de la misma entidad. Innumerables fenómenos físicos y químicos pueden representarse mediante modelos
aquellos cuyas estructuras y comportamientos son los mismos; sin embargo, se pueden interpretar
diferente. En economía, ingeniería y física estos casos son incluso comunes. Vamos, a modo de
Por ejemplo, muestre este fenómeno en el contexto de los circuitos eléctricos. Dejemos que los circuitos estén representados
Figura 4.1 compone de una resistencia R , una inductancia L y una capacitancia C .

L
yo

es ()

R C ~ y R L C

et ()

Circuito 1 Circuito 2

FIGURA 4.1 Circuitos dobles.

La ecuación que relaciona la corriente con el voltaje en función del tiempo para el circuito 1 es:

di (4,1)
L + Risa+ ∫ 1yo dt=et ()
dt C

La ecuación que relaciona el voltaje con la corriente aplicada en función del tiempo para el circuito 2 es:

https://translate.googleusercontent.com/translate_f 113/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

en (4,2)
C + Ge + ∫ 1y dt it= ()
dt L

donde G = 1 / R . Es evidente que las ecuaciones (12) y (13) tienen la misma forma general, a saber:

Página 137

130 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

dx (4,3)
los + +bi cu dt yt ∫ = ()
dt

Como la ecuación general (4.3) describe tanto el circuito 1 como el circuito 2, podemos decir que
son duales. En el caso de los modelos matemáticos, la definición de dualidad tiene carácter propio y está asociada
al proceso de solución y aplicación práctica de los modelos. En ambos aspectos, la dualidad es hoy
una herramienta indispensable.
Definiremos como duales un par de modelos de programación matemática llamados primarios y
dual , que conservan las siguientes condiciones:

• Tienen funciones simétricas objetivas, es decir, si el primal es de minimización el dual será de maximización
y viceversa.
Algunos autores fijan lo primario como un problema de minimización o maximización, sin embargo
Esto no es necesario para caracterizar la dualidad. Como hemos utilizado la forma estándar como
problema de minimización, consideraremos por conveniencia, casi siempre, el primario como un
problema de minimización. Fijar un modelo como representante de una de las clases en esta relación es
al menos inconveniente porque la relación es reflexiva, es decir, lo dual de lo dual es lo primario.

• Tienen simetría en la descripción de las restricciones, es decir, si en la forma canónica el primario tiene restricciones
ciones £ entonces el dual tendrá restricciones ³.

• Los términos independientes en el primario aparecen como los coeficientes de la función objetivo en el dual y
ce-versa.

• El número de restricciones primarias es igual al número de variables en el dual y viceversa.


• La matriz de restricciones del primario se transpone de la matriz de restricciones del dual y viceversa.
Considerando la siguiente convención en los índices:

M = {1, ..., m }; N = {1, ..., n }; A = [ a ij ];

M 1= M \ M 1y N 1= N \ N 1

Recordando que x es un vector columna yu un vector lineal, definiremos el par de modelos primarios ´
dual como se muestra en la Tabla 4.1.

TABLA 4.1 MODELOS PRIMAL × DUAL

Primitivo Doble

Minimizar : z = ∑c jx j Maximizar: w = ∑b iu i

j ∈ norte yo∈ METRO

sujeto a sujeto a

∑a ij x j ³ bi
iÎM1 u yo ³ 0
j ∈ norte

∑a ij x j = b yo
iÎM1 uiÎR
j ∈ norte

xj³0 jÎN1
Yo a ij u i £ cj
yo∈ METRO

xjÎR jÎN1
∑ una ij u yo = cj
yo∈ METRO

https://translate.googleusercontent.com/translate_f 114/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

Página 138

DUALIDAD Y SENSIBILIDAD 131

O, considerando las formas estándar y canónica por separado:

TABLA 4.2 FORMA ESTÁNDAR Y CANÓNICA

Primitivo Doble

Mín z = cx Max w = ub

Forma canónica sujeto a: sujeto a:


Hacha ³ b uA £ c
x³0 u³0

Mín z = cx Max w = ub

Forma estándar sujeto a: sujeto a:


Ax = b uA £ c
x³0 uÎR

4.2 - EJEMPLOS DE PARES DOBLES PRIMAL X


Ejemplo 1 : Determine el dual del siguiente modelo de programación lineal:

(P) Maximizar z = 6 x 1 + 2 x 2 + x 3
sujeto a:
x 1- x 2+ 7 x 3£ 4
2 x 1+ 3 x 2+ x 3£ 5

x 1³ 0 , x 2³ 0 , x 3³ 0

Aplicando las reglas de la dualidad tenemos que:

(D) Minimizar w = 4 u 1 + 5 u 2
sujeto a:

u 1+ 2 u 2³ 6
- u 1+ 3 u 2³ 2
7 u 1+ u 2³ 1
u 1³ 0 , u 2³ 0

Ejemplo 2 : Determine el dual del siguiente modelo de programación lineal, graficando


ambos modelos.

(P) Maximizar z = 3 x 1 + 4 x 2
sujeto a:
x 1- x £ 2- 1

- x 1+ x 2£ 0
x 1³ 0 , x 2³ 0

Página 139

132 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

Solución

(D) Minimizar w = –u 1 + 0 u 2
sujeto a:

https://translate.googleusercontent.com/translate_f 115/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
u 1- u 2³ 3
- u 1+ u 2³ 4
u 1³ 0 , u 2³ 0

La figura 4.2 compara los gráficos de los dos modelos. Tenga en cuenta que ambos son inconsistentes.

-u + tu dos= 4
x2 u2 1

X - X = –1 4
1 dos

X 1 = X dos

tu1 - tudos= 3
1

x1 3 tú 1

FIGURA 4.2 Representación gráfica del par primal x dual.

4.3 - TEOREMA DE LIBERACIÓN COMPLEMENTARIO

4.3.1 - Fundamento teórico

Algunas propiedades importantes vinculan pares primarios x duales. El primero se refiere al valor
valor de las funciones z 0 y w 0 cuando alcanzan sus valores óptimos. Ser el siguiente par de modelos primarios x
doble:

(P) Mín z = cx (D) Max w = ub


sujeto a: sujeto a:
Hacha ³ b uA £ c
x³0 u³0

Proposición 4.1

Si x y u son soluciones viables a los problemas (P) y (D) respectivamente, entonces: cx ³ ub .

Página 140

DUALIDAD Y SENSIBILIDAD 133

Prueba:

Conocemos las restricciones del problema primario que Ax ³ b .

Si pre-multiplicamos la expresión por u tenemos:

uAx ³ ub , ya que u ³ 0 (4,4)

Cuando llegamos uA £ c , razonamiento similar a:

uAx £ cx , ya que x ³ 0 (4,5)

Comparando las expresiones (10) y (11) tenemos:

ub £ uAx £ cx \ cx ³ ub

https://translate.googleusercontent.com/translate_f 116/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

Proposición 4.2

Si x y u son soluciones viables a los problemas (P) y (D), respectivamente, satisfaciendo cx = ub , entonces
ambos son soluciones óptimas a los problemas correspondientes.

Prueba :

Suponga que x no es una solución óptima del primario y cx = ub .


Si u es una solución óptima del dual yx no es una solución óptima del primario, entonces, en este caso, hay x * tal que cx * <
ub , que va en contra de la proposición 1.
Supongamos ahora que u no es una solución óptima del dual, sino cx = ub , donde x es la solución óptima del primario.
En este caso, habrá u * tal que u * b > ub , y por lo tanto u * b > c x , lo que nuevamente va en contra de la proposición 1.
Por lo tanto, si no hay x * y u * que puedan violar los dos supuestos anteriores, x y u son soluciones óptimas.
El par de problemas primarios duales también está vinculado a través de propiedades más amplias que limitan
sus universos de soluciones viables. La tabla 4.1 resume las posibles situaciones.

TABLA 4.1 SITUACIONES DE VIABILIDAD DE PROBLEMAS PRIMAL X DUAL

Doble

Viable No viable (U = 0)

Viable Min cx = Max ub cx = - ¥


Primitivo
No viable (X = 0) ub = + ¥ posible

El siguiente teorema garantiza la validez de la tabla 4.1:

Teorema de existencia
Para un par de problemas duales, uno y solo uno de los
a continuación es cierto:

• Ninguno de los problemas tiene solución.


• Uno no tiene una solución viable y el otro tiene una solución óptima
ilimitado.
• Ambos tienen una solución óptima finita.

Página 141

134 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

Prueba:

Son los conjuntos de soluciones viables para (P) y (D):

X = { x / Ax ³ b , x ³ 0}
U = { u / uA £ c , u ³ 0}

Suponga que el programa dual (D) tiene una solución viable, pero que no tiene un final óptimo.
OKAY. Entonces:

{ W = ub } máx .> + ¥

Para que ocurra la proposición 4.1, debe haber x Î X tal que cx > + ¥, lo cual no tiene sentido, a
el primario (P) se minimiza, por lo tanto:

X=Æ

Si asumimos que el programa primario no tiene una solución óptima finita, se aplicará el mismo razonamiento
aplicable al dual, que debe tener U = Æ.
Por otro lado, si X = Æ implica que no existen límites para el valor de las soluciones al problema
dual, es decir, este problema será vacío o ilimitado. Como la relación de dualidad es reflexiva, lo mismo
el razonamiento se aplica al primario cuando U = Æ.
Finalmente, para demostrar el tercer enunciado, sea Ax - Ix y = b el sistema primario que incluye el
variables de holgura x y .
Consideremos B una base viable óptima del primario yx B = B –1 b la solución básica viable óptima respectiva

https://translate.googleusercontent.com/translate_f 117/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
malo. Como la solución es óptima, por hipótesis, tenemos:

z j - c j £ 0, " j Î N = I È J

o sea:

c B B –1 a j - c j £ 0 \

c B B –1 a j £ c j , "jÎN

Haciendo:

c B B –1 = u

tenemos:

ua j £ c j , " j Î N \

uA £ c

es decir, u es una solución del programa dual. Para verificar la factibilidad, considere z j - c j para
las variables de holgura. Entonces:

c B B -1 a j £ c j , donde un j = - y i y c j = 0 \

- c B B –1 y yo £ 0 \

ue i ³ 0 o u i ³ 0 o uI ³ 0 y u ³ 0

Página 142

DUALIDAD Y SENSIBILIDAD 135

Así,

U¹Æ

Nos queda mostrar que la solución u es óptima. Representando por (*) la situación óptima asociada a la
vector o matriz en consideración tenemos:

w = ub = c B B –1 segundo = c B x B e

z * = cxsegundo
segundo

* *
Logotipo w = yzpor lo tanto u es genial.

En aras de la claridad, presentamos el ejemplo 3 que aborda una situación de existencia primaria
mal ´ dual ¥ ÞÆ.

Ejemplo 3 : Determine el modelo de programación lineal dual a continuación, que representa tanto
gramos gráficamente.

(P) Maximizar z 0 = –3 x 1 + 2 x 2
sujeto a:
x1£3
x1-x2£0
x 1 ³ 0, x 2 ³ 0

Solución:

El dual de (P) será un programa de minimización cuya matriz de restricciones será la transposición de (P), tendrá
el término independiente es igual al vector de costos, el vector de costos es igual al término independiente de (P). Entonces:

(D) Minimizar w 0 = –3 u 1 + 0 u 2
sujeto a:
u 1 + u 2 ³ –3

https://translate.googleusercontent.com/translate_f 118/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
u 2 £ –2
u 1 ³ 0, u 2 ³ 0

La figura 4.3 muestra que el programa primario es ilimitado y el programa dual no es viable, es decir, X = ¥ y U = Æ.
Tenga en cuenta que el dual no se describió en forma canónica.

4.3.2 - Teorema de holguras complementarias


En el ítem anterior desarrollamos los elementos que permitieron establecer una relación entre el
de las soluciones óptimas del par dual primario ´. Además de los valores numéricos en sí mismos, observamos que hay,
incluyendo una dependencia entre la condición de viabilidad de cada uno de estos modelos. En el presente
iremos más allá, explorando las condiciones de comportamiento entre las variables de estos pro-
gramos.

Página 143

136 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

X2 u2
x1=3

X 1 = X dos
-3

X1 tú 1

u = –2
dos

- dos

-3

u + u = –3
1 dos

FIGURA 4.3 Ejemplo de un par primario.

Teorema de holguras complementarias


Dado un par de programas duales, una condición necesaria y suficiente para el
soluciones x y u son óptimas es que las siguientes relaciones complementarias
despeje:

u ( Ax - b ) = 0
( c - uA ) x = 0

Prueba:

Dado que x y u son soluciones viables tendremos:

≥ b ∴
⎧ Hacha - ≥ b 0 ∴ u (Ax b - ≥ ) 0
Hacha

≤∴-
⎩ Aceptaste c uA ≥ 0 ∴ ( c -uA x ) ≥ 0

Haciendo

⎧α = u (Ax b - )

⎩ β = -( c uA x )

tendremos:

α+β= u (Ax b - + - ) ( c uA x ) =

https://translate.googleusercontent.com/translate_f 119/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

= - + ub
≥ cx 0

Página 144

DUALIDAD Y SENSIBILIDAD 137

Si x y u son soluciones óptimas, tenemos:

ub = cx

Pronto,

a + b = 0 con a, b ³ 0, es decir:

a=b=0

Así que finalmente llegamos a:

⎧α = u (Ax b - = ) 0

⎩ β = -( c uA x ) = 0

4.3.3 - Aplicación del teorema de holguras complementarias

Aclararemos las aplicaciones matemáticas de los teoremas de dualidad a través de un ejemplo numérico.
Rico. En un tema específico comentaremos las interpretaciones económicas de los teoremas.

Ejemplo 4 : Resuelva el siguiente modelo de programación lineal con la ayuda de las relaciones expresadas
a través de la dualidad.

(P) Minimizar z 0 = 2 x 1 + x 2 + 4 x 3
sujeto a:
–2 x 1 + x 2 + x 3 ³ 1
-x1+2x2-x3£1
x 1 ³ 0, x 2 ³ 0, x 3 ³ 0

Solución:

Elegiremos resolver gráficamente (P) a través de su dual. Como ya sabemos, el dual de este
El programa tendrá solo dos variables reales (número de líneas en el primario) y, por lo tanto,
gráficamente rentable. El dual de (P) será:

(D) Maximice w 0 = u 1 - u 2
sujeto a:
–2 u 1 + u 2 £ 2
u1-2u2£1
u1+u2£4
u 1 ³ 0, u 2 ³ 0

cuya representación gráfica se representa en la Figura 4.4.


Con el valor de las variables duales conocidas, ¿podemos calcular las variables primarias? Aplicando
las relaciones de holgura complementaria tenemos:

u ( Ax - b ) = 0 y ( c - uA ) x = 0

https://translate.googleusercontent.com/translate_f 120/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

Página 145

138 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

u2

w*0=2

dos

tú 1
1 u* =( 3, 1, 0, 0, 0 )

FIGURA 4.4 Solución gráfica.

En consecuencia,

⎡ * * * * * * * *
tu1 (- dosX 1 + X dos+ X 3 -) 1 = 0 , me gustatu1 = 3 , Entonces- dos
X 1 + X dos+ X 3 - 1 =
0
⎢ * * * * * * * *
uxdos(- 1 dos X dos+ X 3 + =1) 0 , me gustatudos= 1 , Entonces X 1 - dos
X dos+ X 3 + =1 0
⎢ * * * *
⎢ tu1 + tudos -) dos= ∴0
X 1 (- dos X1 =0
* * * *
⎢ xudos(- 1 tudos-) 1 = ∴0
dos X dos≥ 0
⎢⎣ *
xu3 (
*
+ *
tudos-) 4 = ∴0
*
X3 ≥ 0
1

Lo que nos permite concluir en relación al primario que:

* *
X dos+ X 3 = 1
* *
- dos
X dos+ X 3 = - 1

Sistema decidido que, al resolverse, nos lleva a:

*
X dos= 2 3
*
X3 = 1 3

y, finalmente, a la solución primaria:

* *
z 0 = dos
, X = (0, 2/3, 1/3, 0, 0)

4.4 - UN ALGORITMO DUAL PARA EL MÉTODO SIMPLEX

4.4.1 - Un ejemplo de cómo funciona Primal Simplex en Dual

Una forma simple y directa de darse cuenta de lo que es el proceso pivotante del
simplex goritmo es seguir su desarrollo simultáneo en un par de problemas primarios ´
doble. Serán los siguientes problemas:

Página 146

DUALIDAD Y SENSIBILIDAD 139

(P) Máx .: z 0 = 6 x 1 + 2 x 2 + x 3 (D) Mín: w 0 = 4 u 1 + 5 u 2


sujeto a: sujeto a:
x1-x2+7x3£4 u1+2u2³6
2x1+3x2+x3£5 -u1+3u2³2

https://translate.googleusercontent.com/translate_f 121/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
x 1 ³ 0, x 2 ³ 0, x 3 ³ 0 7u1+u2³1
u 1 ³ 0, u 2 ³ 0

que se puede escribir en dos tablas de cálculo sin las variables artificiales y con las variables de holgura
positivo (obtenido al multiplicar la primera y segunda líneas del dual por –1) de la siguiente manera:

tú 1 u2 tú 3 tú 4 tú 5 x1 x2 x3 x4 x5

w –4 –5 0 0 0 z 6 dos 1 0 0

tú 3 –6 -1 -dos 1 0 0 x4 4 1 -1 7 1 0

tú 4 -dos 1 –3 0 1 0 x5 5 dos 3 1 0 1

tú 5 -1 –7 -1 0 0 1

TABLA 4.2 TABLA 4.3

Si intentamos aplicar las reglas de pivote al personal capacitado, no tendremos ningún problema con
Cuadro 4.3, que corresponde al primario; sin embargo, la Tabla 4.2 no es factible. Hay valores en el vector
x B negativo. Aún más interesante es que los "costos reducidos" de esta primera tabla indican
gráfico de parada, con todo z j - c j £ 0. Sin condiciones para resolver la tabla 4.2, realizaremos
tan fundamental en el recuadro 4.3 y siga lo que sucede en el recuadro 4.2 al buscar
Hágalo compatible con la Tabla 4.3.
Elección de variables que entran y salen de la base:

tú 1 u2 tú 3 tú 4 tú 5 x1 x2 x3 x4 x5

w –4 –5 0 0 0 z 6 dos 1 0 0

tú 3 –6 -1 -dos 1 0 0 x4 4 1 -1 7 1 0

tú 4 -dos 1 –3 0 1 0 x5 5 dos 3 1 0 1

tú 5 -1 –7 -1 0 0 1

TABLA 4.2 PIVOTE TABLA 4.3 PIVOTE

Pivotante:

tú 1 u2 tú 3 tú 4 tú 5 x1 x2 x3 x4 x5

w 15 –3/2 0 –5/2 0 0 z -15 0 –7 -dos 0 –3

u2 3 1/2 1 –1/2 0 0 x1 3/2 0 –5/2 2/13 1 –1/2

tú 4 7 5/2 0 –3/2 1 0 x5 5/2 1 3/2 1/2 0 1/2

tú 5 dos 2/13 0 1/2 0 1

TABLA 4.2 DESPUÉS DEL PIVOTE FORZADO TABLA 4.3 DESPUÉS DEL PIVOTE PRIMAL

En este caso, ahora encontramos condiciones de viabilidad y regla de parada en las dos tablas. Si
Imaginemos que nuestro problema estuviera constituido por el Recuadro 4.2, el proceso de compatibilidad
con la Tabla 4.3 terminó forzando un pivote sobre una línea inviable, que no fue
una operación válida para el algoritmo simplex primario. A pesar de este hecho singular ocurrido en la primera

Página 147

140 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

mal, en el dual se cumplen perfectamente las reglas del símplex. En ese caso, si
aplicando el algoritmo simplex al dual, llegaremos a la solución óptima, lo que sugiere que el
El proceso adaptado al primario también podrá converger en una solución. En el ejemplo, el programa
primal (Tabla 4.2) no tenía una solución de partida viable, pero dual sí. De hecho, al usar
utilizar el algoritmo simplex para resolver, a través de un problema dual, un problema primario cuya base viable
El nivel inicial no estaba disponible, estamos diseñando un nuevo algoritmo. Podemos describir esto
goritmo de la siguiente manera:

• Elija el término x B más negativo para dejar la base.

• Si existen coeficientes de £ 0 (negativos) en la línea, elija la relación más pequeña entre los coeficientes
z - Cs ⎧z - C ⎫
s
y "costos reducidos", es decir: = Mínimo ⎨ yo yo
: y ik > 0⎬ ⇒ X s , determinado
y sk
1 ≤ ≤ soy ⎩ y ik ⎭

sumando así la variable que sale de la base.

https://translate.googleusercontent.com/translate_f 122/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
• De lo contrario, el problema es ilimitado. Detener.
• Realice la operación de pivote (en el pivote negativo) y canonice la columna de pivote que entra
base, como se predice en el algoritmo simplex.

• Verificar la viabilidad del problema. Si x B ≥ 0, entonces se encontró el óptimo; caso


de lo contrario, vuelva al procedimiento de intercambio de variables en la base.

Verificamos que la condición de parada en el primario corresponde a la condición de viabilidad en el dual y


viceversa.

4.5 - INTERPRETACIÓN ECONÓMICA

4.5.1 - Aplicaciones de métodos cuantitativos en el contexto de una economía racional


La escala de la globalización y la búsqueda de la eficacia organizativa ha obligado cada vez más al uso de
técnicas cuantitativas avanzadas para la toma de decisiones en sistemas productivos. En ese contexto,
la programación matemática se convierte en una herramienta segura para el análisis económico racional,
principalmente porque permite la creación de modelos muy sofisticados y específicos para la representación
presentación de fenómenos económicos.
La filosofía del sustrato para utilizar el método simplex para ayudar en un análisis económico
se basa en el concepto del equilibrio perfecto entre el valor agregado por un proceso a un producto
y su hoja de cálculo desglosada en entradas de constitución (teoría del costo de oportunidad, Menger
[1871]).
Si un sistema de producción es modelado por un programa lineal cuya función objetivo es, por ejemplo,
ejemplo, para maximizar el valor de los productos fabricados y cuyas restricciones están en la disponibilidad de factores,
que, en el balance de la solución óptima, el valor de una variable dual asociada con un factor satisface la
siguiente declaración de esa teoría:

El valor unitario marginal de un factor de producción es


igual al valor máximo de producción que se podría obtener
usando esa unidad de factor.

Además de esta interpretación clásica de la teoría marginalista, existen otras propiedades económicas
de programación lineal que no han sido enfatizados en textos sobre el tema. Además de estar asociado
a valores marginales, las variables duales también se asocian con valores de equilibrio financiero

Página 148

DUALIDAD Y SENSIBILIDAD 141

(es decir, de manera que el costo sea igual al ingreso) para las actividades económicas consideradas. Así que con
las variables duales obtienen un tipo de información local (es decir, marginal) sobre el sistema. Pero tambien hay
también un tipo de información global que deseamos enfatizar en nuestra interpretación económica de la
todo simplex y dualidad en programación lineal.
Proponemos un enfoque complementario al desarrollado clásicamente. Intercambiaremos la opinión de
maximización de ganancias (diferencia entre beneficio y costo) en el lado primario, minimizando costos.
Consideraremos el beneficio de la producción en el aspecto dual.
Este modelo tiene como objetivo comprender el proceso de interacción entre el sistema y su entorno
medio ambiente, en perfecta armonía con las más modernas filosofías de calidad total y gestión para el
excelencia. Al proponerse producir, el sistema asume ciertos compromisos con el entorno original.
organización que llamaremos bonos . Supongamos que tales vínculos son medibles y que el
El sistema tiene escalas lineales de utilidad (precios) de los productos. Admitamos también que cada
El producto tiene escalas lineales de participación dentro de cada enlace.
En este modelo, el sistema tomará decisiones guiadas por el objetivo de maximizar la utilidad de
producción o minimizar los costos de enlace. Cualquier solución donde la utilidad del proyecto
la producción (ingresos) es mayor o igual que el costo de los bonos valdrá la pena. Por otro lado, un
solución donde la utilidad de transformar es menor que el costo no será factible. Veremos eso
una solución genérica del método simplex, aplicada a un problema primario cuyo objetivo es maximizar
Para mejorar la utilidad de los productos, las variables duales corresponden a los límites máximos de
costes de los enlaces para los que la producción calculada es todavía económicamente viable o no
ficticio. En otras palabras, para cada solución del método simplex, los costos de recursos se calculan
por lo que el precio de cada producto elaborado es exactamente igual a su costo de producción.
Si la solución actual aún no es óptima, la prueba de optimización simplex identifica al menos
un producto no presente en la solución (no básico) cuya utilidad relativa (beneficio) es positiva. Eso significa
que si ese producto participa en una nueva solución en detrimento de la participación de los productos de
presente solución, tendremos una mejora en relación a esta escala lineal con el coeficiente igual a la utilidad

https://translate.googleusercontent.com/translate_f 123/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
de pariente. Esta utilidad relativa de un producto corresponde al grado de inviabilidad de la restricción de
asociado con ese producto. Es decir, el nivel de inviabilidad de una restricción dual asociada con
un producto dado que no se produce es igual a la utilidad marginal de su producción.
La consecuencia inmediata de la realización incompleta de la utilidad marginal es la negación de la solución
estupendo. Siempre que haya una utilidad marginal positiva, aún es posible mejorar la solución. La restricción
dual en el marco simplex nos dice que esta utilidad marginal es la diferencia entre la utilidad (ingresos)
de una unidad del producto y el costo asociado con la producción de esa unidad, si el costo de los bonos fue
evaluado con el fin de permitir el equilibrio financiero para la solución actual.
La figura 4.5 resume el aspecto del flujo de información que transita entre el par primario dual durante
un proceso para resolver el algoritmo simplex. Vemos claramente la dinámica de la búsqueda del equilibrio
de un mínimo ´ máximo global.

4.5.2 - Ejemplo de interpretación económica del método simplex


Supongamos el caso hipotético de una empresa pública que monopoliza el sector petroquímico de una
economía nacional o regional. Digamos que el objetivo de la empresa es minimizar el costo global de
producción de gasolina y aceite, comprometiéndose a satisfacer las demandas de estos productos desde
niveles estipulados de 5 millones de barriles y 3 millones de barriles respectivamente. Suponer que
La empresa decide realizar dos actividades principales con el fin de satisfacer la demanda. LA
La primera actividad es explorar y refinar el petróleo nacional. Cada 1 millón de barriles procesados cuesta
8 millones de dólares y genera 1 millón de barriles de gasolina y 1 millón de barriles de petróleo. La segunda actividad
es importar y refinar petróleo extranjero. En este caso, cada millón de barriles importados cuesta 12
millones de dólares y genera 2 millones de barriles de gasolina y 1 millón de barriles de petróleo.
Denominando x i , i = 1, 2, el valor de operación de cada una de estas actividades, el problema de
La programación de la compra y refinación de petróleo se puede modelar y resolver mediante el programa descrito.
seguir:

Página 149

142 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

Primitivo

Doble

Min = xz C
Modelos lineales w = ub
≥ b
Hacha Max
decisión y análisis
x ≥0 tu A≤ C

u ≥0

Dice qué vector de precio tu


Dice qué vector de asociado con los ingresos máximos
actividades x que minimiza
se puede obtener en condiciones
el costo de producir el sin fines de lucro (los ingresos asociados
cantidades segundo
yo de los productos.
yo
lostu es exactamente igual al costo
producción mínima).

FIGURA 4.5 Información entre el par primario.

Minimizar z = 8 x 1 + 12 x 2
sujeto a:
x1+2x2 ³5
x1+x2 ³3
x 1 ³ 0, x 2 ³ 0

*
cuya solución es z = 32 , X = 1 , X = como podemos ver en la Figura 4.6.
0 1 dos dos

X2

https://translate.googleusercontent.com/translate_f 124/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

Región viable
3
del Primigenio

(1,2)

X1 + Xdos= 3 X1 +2 =X5dos

X1
3 5

FIGURA 4.6 Representación gráfica del problema.

Página 150

DUALIDAD Y SENSIBILIDAD 143

El sector de nuevos proyectos de la compañía está desarrollando un proceso de transformación de esquisto


campo petrolífero en el que gasta 15 millones de dólares por cada millón de toneladas de esquisto procesado,
2 millones y 1,5 millones de toneladas de gasolina y aceite. El problema a resolver, en este nuevo escenario,
río, se convierte en:

Minimizar z = 8 x 1 + 12 x 2 + 15 x 3
sujeto a:
x1+2x2+2x3³5
x 1 + x 2 +32 x 3 ³ 3
x 1 ³ 0, x 2 ³ 0, x 3 ³ 0

Podemos resolver el problema ahora mediante el método simplex, sumando las variables de brecha x 4 y
x 5 , asociado con las restricciones 1 y 2. También debemos sumar variables artificiales x 6 y x 7 para obtener
una base viable inicial, ya que las variables de holgura son negativas debido a restricciones de mayor o
igual. Podemos utilizar el artificio de penalizar fuertemente las variables artificiales para que
fijar la base y permitir la constitución de una base viable real en el desarrollo del algoritmo. Podemos
luego constituya el programa a continuación:

Minimizar z = 8 x 1 + 12 x 2 + 15 x 3 + 0 x 4 + 0 x 5 + 40 x 6 + 18 x 7
sujeto a:
x1+2x2 +2x3 -x4 +x6 =5
x1 +x2 +32 x 3 -x5 +x7=3
x1 ³ 0, x 2 ³ 0, x 3 ³ 0, x 4 ³ 0, x 5 ³ 0, x 6 ³0, x 7 ³0

Es interesante notar que, en el programa, todas las variables utilizadas tienen una interpretación económica
mica. Las variables de holgura x 4 y x 5 pueden verse como cantidades de almacenamiento de aceite y gasolina.
En este caso, se asume que no hay costo de almacenamiento para cada tipo de producto. Las variables artificiales representadas
representan los costos exorbitantes de 40 y 18 millones de dólares por 1 millón de barriles de, respectivamente,
gasolina y aceite importados. La idea de la fase 1 por el método de la gran M es que, al establecer un
costo exorbitante ( M grande) para cada variable artificial si se inhibe el uso de esta variable.

Actividad Para explorar Importar y Para explorar Valores Valores importar importar Demanda
Petróleo Refinar Esquisto Gasolina Petróleo Gasolina Petróleo (Millones de
Nacional Petróleo Barriles)
Productos x1 x2 x3 x4 x5 x6 x7

Gasolina 1 dos dos -1 0 1 0 5

Petróleo 1 1 3/2 0 -1 0 1 3

Costos 8 12 15 0 0 40 18 -

Ahora resolveremos el programa usando el método simplex revisado. Haremos lo necesario


intervenciones para justificar los pasos de solución adoptados desde la perspectiva de la visión económica.

Paso 0: Inicialmente identificamos los elementos de cálculo, que son la matriz A, el veto by el vector c :

⎡ 12 1 -1 010 ⎤
⎣ ⎦
https://translate.googleusercontent.com/translate_f 125/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
A = [ a 1 , a 2 , a 3 , a 4 , a 5 , a 6 , a 7 ⎣] =
1132 0 -101 ⎦

⎡ 5⎤
b = ⎣ El c = [8 12 15 0 0 40 18]
3

Página 151

144 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

Consideremos la base compuesta por las variables x 6 , x 7 , es decir:

⎡ 10 ⎤
B = [ a 6 , a 7 ] =⎣ ⎦ = B –1
01

1 - ⎜1 0
⎛ ⎞
⎟=
tu= ( uu1 2 ) = Csegundo
× segundo
= ( 40 18 )⎝ ⎠ ( 40 18 )
01

En este caso, las variables x 1 , x 2 , x 3 , x 4 y x 5 no son básicas. J = {1, 2, 3, 4, 5}, I = {6, 7}

⎡ X6 ⎤
= B b- 1 = ⎡ 5

X ⎣ 3⎦
b = ⎣ X7 ⎦

⎡ X1 ⎤ ⎡ 0⎤
⎢ X dos⎥ ⎢ 0⎥
X ⎢ X3 ⎥ = ⎢ 0⎥
R=
⎢ X4 ⎥ ⎢ 0
⎣ ⎥
⎣ X5 ⎦ 0⎦

Pasemos ahora a la fase de solución.

Paso 1: elige la variable que entrará en la base.

Como el vector c B está compuesto por variables artificiales que tienen costos exorbitantes ( c B es diferente de
cero desde la primera iteración) tenemos que calcular el z j - c j para j Î J, para obtener el criterio de elección
de la variable que debe ingresar a la base de la siguiente manera:
Elija la variable k para ingresar la base tal que z k
- Ck = max {-}z j Cj . Entonces:
j ∈J 1

z 1 - c 1 = c B B –1 a 1 - c 1
⎡ 10 ⎤ ⎡ 1⎤
= [40 18] = 50
⎣ 01 ⎦ ⎣ 1 ⎦ - () 8

z2-c2=
⎡ 10 ⎤ ⎡ dos

= [40 18] = 86
⎣ 01 ⎦ ⎣ 1 ⎦ - ()12

z3-c3=
⎡ 10 ⎤ ⎡ dos⎤
= [40 18] = 92
⎣ 01 ⎦ ⎣ 3 2 ⎦ - ()15

z4-c4=
⎡ 10 ⎤ ⎡ - 1⎤
= [40 18] =
⎣ 01 ⎦ ⎣ 0 ⎦ - () 0- 0 4

z5-c5=
⎡ 10 ⎤⎡ 0 ⎤
= [40 18] =
⎣ 01 ⎦ ⎣ ––1 ⎦() - 0 18

Del cálculo anterior elegiremos la variable 3 para ingresar a la base porque tiene el máximo entre
el positivo z j - c j , es decir, z 3 - c 3 = 92. La interpretación económica es que, si los precios de la gasolina y el gas
petróleo son 40 y 18 respectivamente, la actividad de exploración de lutitas produciría la fabulosa ganancia de z 3 - c 3 =
92, ya que a estos precios de productos el ingreso unitario de la operación de esquisto sería 40.2 + 18. 3
2= 107,
contra un costo de solo 15.
Al elegir una variable para ingresar a la base, buscamos actividades más rentables
que la solución actual. Las actividades 1, 2 y 3 son más rentables que las importaciones exorbitantes

https://translate.googleusercontent.com/translate_f 126/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

Página 152

DUALIDAD Y SENSIBILIDAD 145

importante. Este era un hecho esperado; sin embargo, no pudimos evitarlo ya que no estaba disponible, inicialmente
un esquema viable. Partiendo de un "absurdo", pensamos en usar el símplex para encontrar
en contra de una solución tan "razonable" (básica viable) de la que carecíamos.
Esta estrategia sugiere prácticamente dos fases de solución:

• Fase de búsqueda de viabilidad económica.


• Fase de búsqueda de la mejor solución factible posible.
La interpretación económica en este punto va más allá. Si, por alguna razón, el algoritmo ofrece
al final de su desarrollo, sigue siendo una solución "absurda", es decir, que incluye la importación
exorbitante, por lo que podemos estar seguros de que no hay mejor solución "razonable". En otra-
En otras palabras, si el algoritmo no puede encontrar al menos una salida "razonable", es porque
no existe, y el problema es económicamente absurdo (inviable) desde el principio.
Continuando con el cálculo, vamos al Paso 2.

Paso 2: comprobar la viabilidad y elegir la variable que sale de la base.

Por el criterio adoptado para la mejora, la variable x 3 entrará en la base dejando la variable
⎧ ⎫
segundo
s segundo
= Mínimo ⎨ yo : y > 0⎬, que en este caso es x 7 , como se muestra en el cálculo a continuación:
ik
y sk 1 ≤ ≤ soy ⎩ y ik ⎭

⎡ ⎤ ⎡ dos⎤
= 5 y y =
segundo
⎣ 3⎦ 3 ⎣ 3 2 ⎦ pronto:

⎡ X 6 ⎤ ⎡ 5 ⎤ ⎡ dos⎤ ⎡ 2 ,5 ⎤
=
⎣⎢ X 7 ⎦⎥ =⎣ 3 ⎦ / ⎣ 3 2 ⎦ ⎣ dos⎦

Valor mínimo, ( s = 2 - segunda línea)

La nueva base estará formada por las variables x 6 , x 3 , es decir:

⎡ dos⎤
′ = [ Automóvil
segundo = 1 británico
6 , 3 ] club
⎣ 032 ⎦

Paso 3: actualice los elementos de cálculo.

El elemento fundamental del cálculo es el inverso de la base. Es con él que podemos actualizar los demás.
vectores. El método de inversión de bases, de hecho, no caracteriza al método simplex; sin embargo, tradicionalmente
finalmente se hace pivotando por la razón que discutimos en el capítulo anterior. Podemos-
verter la base usando pivotar en el contexto del método simplex revisado. En ese caso, haremos el
inversión de la matriz aumentada B –1 | y 3 , mediante la canonización de la columna 3 (generalmente la columna k ) junto
a la matriz ya invertida en el paso anterior (nótese que solo en el primer paso tendremos B = B –1 ). La flecha significa el
operación pivotante:

⎡ ⎤ ⎡ ⎤
0
⎢ ⎥ ⎢ ⎥
METRO
⎢ viejo B -1
y ⎥ ⎯ Pivotante
⎯⎯⎯⎯⎯ -1
→ ⎢ nuevo segundo 1⎥
k
⎢ ⎥ ⎢ METRO

⎢⎣ ⎥⎦ ⎢⎣ 0 ⎥⎦

Página 153

146 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

o sea:

⎡ 10 ⎤ ⎡ dos⎤ ⎡ 1 - 4 3 ⎤ ⎡ 0⎤
⎯⎯⎯⎯⎯ →
⎣ 01 ⎦ ⎣ 2 3 ⎦⎯ Pivotante ⎣ 023 ⎦ ⎣ 1 ⎦∴

https://translate.googleusercontent.com/translate_f 127/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

-1 ⎡ 1 -43 ⎤
=
segundo⎣ 023 ⎦

-1 ⎡ 1 - 4 3 ⎤ ⎡ 5⎤ 1⎤
X bBb =
B= = ⎣ 023 ⎦ ⎣ 3 ⎦ = ⎡⎣ dos

-1 ⎡ 1 -43 ⎤
tu= ( uu1 2 ) = c segundo
B = [ 40 15 ]⎣ =
⎦ [ 40 - 130 3 ]
023

XB2 dos
z=z-(z3-c3) = 254 - 92 = 70
y 23 1

También podemos calcular z usando:

⎡ 1⎤
z = c B x B = [40 15] ⎦ = 70
⎣ dos

En este punto, las variables x 1 , x 2 , x 4 , x 5 y x 7 no son básicas. J = {1, 2, 4, 5, 7},


I = {6, 3}.
Vayamos de nuevo al paso 1.

Paso 1 : elige la nueva variable que ingresará a la base de datos.

⎡ 1⎤
z 1 - c 1 = agua 1 - c 1 = [40 - 130/3] ⎣ 1 ⎦– (8) = - 34/3

⎡ dos

z 2 - c 2 = [40 - 130/3] ⎣ 1 ⎦– (12) = 74/3

⎡ -1 ⎤
z 4 - c 4 = [40 - 130/3] ⎣ 0 ⎦– (0) = - 40

⎡ 0 ⎤
z 5 - c 5 = [40 –130/3] ⎣ 1- ⎦– (0) = 130/3

⎡ 0⎤
z 7 - c 7 = [40 –130/3] ⎣ 1 ⎦– (18) = - 184/3

Del cálculo anterior elegiremos la variable 5 para ingresar a la base porque tiene el máximo entre
z j - c j positivo, es decir, z 5 - c 5 = 130/3.
Continuando con el cálculo vamos al paso 2.

Página 154

DUALIDAD Y SENSIBILIDAD 147

Paso 2 : comprobar la viabilidad y elegir la variable que sale de la base.

Por el criterio adoptado para la mejora, la variable x 5 entrará en la base dejando la variable
⎧ ⎫
segundo
s segundo
= Mínimo ⎨ yo : y > 0⎬. El cálculo no se puede realizar sin obtener primero la columna transformada de
ik
y sk 1 ≤ ≤ soy ⎩ y ik ⎭

Variable x 5 directamente a partir de la matriz A . En la iteración anterior, el inverso de la base era la identidad misma y
y yo = ryo ∀ j∈.J En la iteración actual:

⎡ 1 - 4 3 ⎤⎡ 0 ⎤ ⎡ 4 3 ⎤
y 5 = B –1 a 5 = ⎣⎢ =
023 ⎦⎥⎣ - 1 ⎦ ⎣⎢ - 2 3 ⎦⎥

Entonces,

⎡ 1⎤ ⎡ 43 ⎤
= =
⎣ ⎦ ⎣⎢ ⎦⎥
https://translate.googleusercontent.com/translate_f 128/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
segundo
⎣ dos
⎦ yy 5 ⎣⎢ - 2 3 ⎦⎥ pronto

⎡ X6 ⎤ ⎡ 1⎤ ⎡ 4 3 ⎤ ⎡ 3 4 ⎤
⎦ / ⎣⎢ - 2 3 ⎦⎥ =⎣⎢ - ⎦⎥
⎣⎢ X 3 ⎦⎥ =⎣ dos

Valor negativo Valor mínimo ( s = 1)

Por tanto, x 6 debe ser la variable que saldrá de la base.

La nueva base estará formada por las variables x 5 y x 3 , es decir:

⎡ 0 dos⎤
′ = [,los
segundo los3 ] =- ⎣
5 132 ⎦

Paso 3 : actualice los elementos de cálculo.

Invertiremos la nueva base aprovechando los cálculos de la iteración anterior, es decir,

⎡ 1 -43 ⎤⎡ 43 ⎤ ⎡ 34 - 1⎤ ⎡ 1 ⎤
⎯⎯⎯⎯⎯ → ∴
⎣⎢ 0 2 3 ⎦⎥⎣⎢ - 2 3 ⎦⎥⎯ Pivotante ⎣⎢ 1 2 0 ⎦⎥⎣ 0 ⎦

⎡ 34 - 1⎤
B –1 = ⎣⎢ ⎦⎥
120

-1 ⎡ 34 - 1⎤ ⎡ 5⎤ ⎡ 3 4 ⎤
X bBb = =
B= = ⎣⎢ 1 2 0 ⎦⎥⎣ 3 ⎦ ⎣⎢ 5 2 ⎦⎥

⎡ w ⎤ -1 ⎡ 34 - 1⎤
w = ⎣⎢ = [ 0 15
1
w ⎦⎥ = c segundo
dos
B ] ⎣⎢
120 ⎦⎥ = [15 2 ,] 0

XB1
z0=z0-(z5-c5) = 70 - (130/3) (3/4) = 75/2
y 15

o:

Página 155

148 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

⎡ 34 ⎤
z 0 = c B x B = [0 15] ⎣⎢ 5 2 ⎦⎥ = 75/2

En este punto, las variables x 1 , x 2 , x 4 , x 6 y x 7 no son básicas. I = {1, 2, 4, 6, 7}, J = {5, 3}. Después del segundo
iteración, las variables artificiales han abandonado la base y se completa la primera fase del símplex. De hecho,
ya no es necesario tener en cuenta estas variables. Vayamos de nuevo al paso 1.

Paso 1 : elige la nueva variable que entrará en la base.

z 1 - c 1 = agua 1 - c 1

⎡ 1⎤
= [2/15 0] ⎣ 1 ⎦ - (8) = - ½

⎡ dos

z 2 - c 2 = [15/2 0] ⎣ 1 ⎦ - (12) = 3

⎡ -1 ⎤
z 4 - c 4 = [15/2 0] ⎣ 0 ⎦ - (0) = –15/2

Del cálculo anterior elegiremos la variable 2 para ingresar a la base porque tiene el máximo entre
el positivo z j - c j , es decir, z 2 - c 2 = 3. Continuando con el cálculo, vamos al paso 2.

https://translate.googleusercontent.com/translate_f 129/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

Paso 2 : comprobar la viabilidad y elegir la variable que sale de la base.

Por el criterio adoptado para la mejora, la variable x 2 entrará en la base dejando la variable
⎧ segundo ⎫
segundo
s
= Mínimo ⎨ yo : y > 0⎬.
≤ ≤ ik
y sk 1 soy ⎩ y ik ⎭
Nuevamente, necesitamos obtener la columna para la variable x 2 como hicimos en la iteración anterior. En eso
caso:

⎡ 34 - 1 ⎤ ⎡ dos
⎤ ⎡ 12 ⎤
y 2 = B –1 a 2 = ⎣⎢ =
120 ⎦⎥⎣ 1 ⎦ ⎣⎢ 1 ⎦⎥

Entonces,

⎡ 34 ⎤ ⎡ 12 ⎤
=
segundo =
⎣⎢ 5 2 ⎦⎥ y y dos ⎣⎢ 1 ⎦⎥ pronto

⎡ X5 ⎤ ⎡ 3 4 ⎤ ⎡ 1 2 ⎤ ⎡ 3 2 ⎤
⎣⎢ X 3 ⎦⎥ =⎣⎢ 5 2 ⎦⎥/ ⎣⎢ 1 ⎦⎥ =⎣⎢ 5 2 ⎦⎥

Valor mínimo ( s = 1)

La nueva base estará formada por las variables x 2 , x 3 , es decir:

⎡ dos dos⎤
′ = [,los
segundo los3 ] = ⎣
dos 132 ⎦

Página 156

DUALIDAD Y SENSIBILIDAD 149

Paso 3 : actualice los elementos de cálculo.

Invertiremos la nueva base por el método de operaciones elementales, es decir:

⎡ 34 - 1⎤ ⎡ 1 2 ⎤ ⎡ 32 ⎤ ⎡ 1⎤
- dos
⎯ ⎯⎯⎯⎯⎯ →
⎣ 120 ⎦ ⎣ 1 ⎦ Pivotante ⎣ -1 ⎦ ⎣ 0 ⎦∴
- dos

⎡ 32 ⎤
- dos
B –1 = ⎣ ⎦
-1 - dos

-1 ⎡ 32 ⎤ ⎡ 5⎤ ⎡ 3 2 ⎤
- dos
X bBb =
B= = ⎣ -1 ⎦ ⎣ 3 ⎦ = ⎣ - 11 ⎦
- dos

⎡ 32 ⎤
- dos
u = ( uu 1 2 =) c B B –1 = [ 12 15 ]⎣ = [3 - 54 ]
-1 ⎦
- dos

32 ⎤
z0=cB xB= [12 15 ] ⎡ = 33
⎣ 1 ⎦

En este punto, las variables x 1 , x 5 , x 7 , x 4 y x 6 no son básicas. I = {1, 4, 5, 6, 7}, J = {2, 3}. Regresamos a Pas-
solo 1.

Paso 1 : elige la nueva variable que entrará en la base.

⎡ 1⎤
z 1 - c 1 = agua 1 - c 1 = [3 6] ⎣ 1 ⎦– (8) = 1

⎡ -1 ⎤
z 4 - c 4 = [3 6] ⎣ 1 ⎦– (0) = –3

⎡ ⎤
https://translate.googleusercontent.com/translate_f 130/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

z 5 - c 5 = [3 6] ⎡ 0 ⎤
⎣ 1- ⎦– (0) = –6

La variable índice 1 entra en la base, ya que es la única con z j - c j positivo. Continuando con el cálculo
, vayamos al Paso 2.

Paso 2 : comprobar la viabilidad y elegir la variable que sale de la base.

Nuevamente necesitamos obtener la columna de la variable x 1 como hicimos en la iteración anterior para calcular
la variable de bloqueo al crecimiento de x 1 . En ese caso,

⎡ 32 ⎤ ⎡ 1⎤ ⎡ - 1 2 ⎤
- dos
y 1 = B –1 a 1 = ⎣ ⎦ ⎣ 1⎦ = ⎣ 1 ⎦
-1 dos

Página 157

150 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

Entonces,

⎡ 32 ⎤ ⎡ -12 ⎤
= =
segundo
⎣ 1 ⎦ yy 1 ⎣ 1 ⎦ pronto

⎡ X dos⎤ ⎡ 3 2 ⎤ ⎡ - 1 2 ⎤ ⎤
= =⎡ -
⎣ X3 ⎦ ⎣ 1 ⎦ / ⎣ 1 ⎦ ⎣ 1⎦

La nueva base estará formada por las variables x 2 y x 1 , es decir:


′ = [ los los ] = ⎡ 2 1
segundo dos 1 ⎣ 11 ⎦

Paso 3 : actualice los elementos de cálculo.

Invirtiendo la base tenemos:

⎡ 32 - dos
⎤⎡ - 1 2 ⎤
⎯ ⎯⎯⎯⎯⎯⎡ → 1 - 1 ⎤ ⎡ 0⎤
⎣ -1 ⎦ ⎣ 1 ⎦ Pivotante
dos ⎣ -12 ⎦ ⎣ 1 ⎦∴

-1
=⎡ 1
segundo
- 1⎤
⎣ -12 ⎦

-1
=⎡ 1 - 1⎤ ⎡ 5⎤ ⎤
dos
X B = =b B b ⎣ -12 ⎦ ⎣ 3 ⎦ = ⎡⎣ 1 ⎦

⎡ 1 - 1⎤
u = ( uu 1 2 =) c B B –1 = [ 12 8 ]⎣ ⎦=
[]4 4
-12

[12 8 ] ⎡⎣ dos

z 0 = cxsegundo 32
B= 1⎦ =

En este punto: I = {3, 4, 5, 6, 7}, J = {2, 1} y regresamos al Paso 1.

Paso 1 : elige la nueva variable que entrará en la base.

⎡ dos⎤
z 3 - c 3 = agua 1 - c 1 = [4 4] ⎣ 3 2 ⎦– (15) = –1

⎡ -1 ⎤
z 4 - c 4 = [4 4] ⎣ 0 ⎦– (0) = –4

⎡ 0 ⎤
⎣ ⎦
https://translate.googleusercontent.com/translate_f 131/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
z 5 - c 5 = [4 4] ⎣ 1- ⎦– (0) = –4

Como todo z j - c j £ 0, estamos en una condición de parada. Se ha logrado lo óptimo.


Exploremos ahora las relaciones duales y su interpretación económica. El dual del problema anterior
previamente resuelto es:

Página 158

DUALIDAD Y SENSIBILIDAD 151

Maximizar w = 5 y 1 + 3 y 2
sujeto a:
u2+u2£8
2 u 1 + u 2 £ 12
2 u 1 + 3/2 u 2 £ 15
u 1 ³ 0, u 2 ³ 0

donde las variables u están asociadas a los precios de los productos demandados por el mercado. De hecho, el
El objetivo de maximización se puede interpretar como la búsqueda del mayor valor posible para el suministro de
combustible sin obtener ganancias. El problema dual permite una solución gráfica como
muestra la Figura 4.7.

X2

C W=5 tu 1 + 3 tudos
8 dos
tu1 + (3 2 /) tudos= 15

dos
tu1 + tudos = 12

segundo

tu1 + tu dos= 8

LA

O 4 U1

FIGURA 4.7 Solución de gráficos duales.

Tenga en cuenta que cualquier punto en el conjunto de soluciones viables al problema dual está asociado
a precios de gasolina y petróleo para los que ninguna actividad genera una ganancia positiva. En el ejemplo, el
La solución dual óptima nos proporciona los precios de los productos demandados para los que existe un perfecto
equilibrio económico, con un costo total igual a los ingresos totales. En el mejor de los casos, ninguna actividad básica es
con pérdidas o rentables. Por otro lado, sería deficiente introducir alguna actividad no básica
el esquema de producción. La solución dual óptima, que se puede obtener gráficamente, nos lleva
a w = 32 y u 1 = 4 y u 2 = 4. Para este resultado, podríamos haber evitado el cálculo de optimización después
inclusión de la actividad de exploración de lutitas. La primera solución obtenida sin la alternativa de la pizarra
se mantendría.

4.6 - ANÁLISIS DE SENSIBILIDAD

4.6.1 - Consideraciones generales sobre el tema

El análisis de sensibilidad es básicamente una técnica utilizada para evaluar los impactos que el programa
ma sufre cuando hay cambios en las condiciones de modelado. El análisis de sensibilidad es básicamente
En particular, el estudio de un modelo de programación matemática sometido a cambios en sus condiciones
información inicial. Los cambios pueden incluir:

https://translate.googleusercontent.com/translate_f 132/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

Página 159

152 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

• Cambio en el vector de costos.


• Cambio en el vector de términos independientes.
• Cambio en los coeficientes de las variables.
• Adición de restricciones.
• Adición de nuevas variables.
Para ilustrar los cambios, examinaremos cada caso dentro de un ejemplo numérico.

Minimizar z = 8 x 1 + 12 x 2 + 15 x 3 + 0 x 4 + 0 x 5 + 40 x 6 + 18 x 7
sujeto a:
x1+2x2+2x3-x4+x6=5
x 1 + x 2 + (3/2) x 3 - x 5 + x 7 = 3
x 1 ³ 0, x 2 ³ 0, x 3 ³ 0, x 4 ³ 0, x 5 ³ 0, x 6 ³ 0, x 7 ³ 0

con el siguiente sistema asociado a la solución óptima:

x1 x2 x3 x4 x5
z 32 0 0 -1 –4 –4
x4 1 1 0 1 4 -dos
x5 dos 0 1 1/2 -1 1

4.6.2 - Cambios en el vector de costos

Los cambios en el vector de costos pueden afectar dos tipos de variables: básicas y no básicas.

• Cambio de costos de variables no básicas


La fórmula básica para calcular los costos reducidos es:

z j - c j = c B B –1 a j - c j

Observamos que para una variable no básica el término c B B -1 a j no cambia, lo que significa que la
los cambios en los costos reducidos se propagan directamente con la variación del término c j . Ser lo más posible
variación en el costo igual a d. Para que la variable de índice j Î J sea candidata a ingresar a la base de datos, es necesario
que z j - ( c j + d)> 0 o d < z j - c j .

Ejemplo 1: Estudiaremos la posibilidad de cambios en el vector de costos en el problema de combustible del


artículo anterior. Sabemos que el programa inicial fue:

Minimizar z = 8 x 1 + 12 x 2 + 15 x 3 + 0 x 4 + 0 x 5 + 40 x 6 + 18 x 7
sujeto a:
x1+2x2+2x3-x4+x6=5
x 1 + x 2 + 3/2 x 3 - x 5 + x 7 = 3
x 1 ³ 0, x 2 ³ 0, x 3 ³ 0, x 4 ³ 0, x 5 ³ 0, x 6 ³ 0, x 7 ³ 0

con el siguiente sistema asociado a la solución óptima:

Página 160

DUALIDAD Y SENSIBILIDAD 153

x1 x2 x3 x4 x5
z 32 0 0 -1 –4 –4
x1 1 1 0 1 1 -dos

https://translate.googleusercontent.com/translate_f 133/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
x2 dos 0 1 1/2 -1 1

Examinemos el caso de posibles cambios en el costo del esquisto.


Denominando por la variación de c 3 (costo de lutita) tendremos que z 3 - ( c 3 + d)> 0 es la condición de
encontrar la solución óptima. Sustituyendo los valores que tenemos:

- d + (–1)> 0 Þ - d> 1 o d <- 1.

En este caso, si el coste del esquisto se reduce en 2 unidades, por ejemplo, se volverá atractivo y formará parte de la sociedad.
solución óptima, que conduce al siguiente escenario óptimo:

x1 x2 x3 x4 x5
z 31 -1 0 0 –8 -dos
x3 1 1 0 1 4 -dos

x2 3/2 –1/2 1 0 –3 3

• Cambio de costos de variables básicas


Obviamente, si los valores de costo de las variables básicas cambian en el sentido de convertirse
aún más deseable, nunca dejarán la base; sin embargo, no podemos saber qué pasaría
en el caso contrario. Lo que queremos en este caso es conocer el rango de variación permisible en el vector
costo de una determinada variable para permanecer en la base sin cambiar la base calculada.

Ejemplo 2: Examinaremos los cambios en los precios del petróleo importado (variable x 2 ). La solucion optima
tenemos que:

⎡ 1 - 1⎤
u = ( uu1 ) [12 + δ 8 ]⎣ - 1 2 ⎦=
[4 + δ 4 - δ]
2= c B B –1 =

⎡ dos⎤
z 3 - c 3 = agua 1 - c 1 = [4 + d 4 - d] d/2
⎣ 3 2 ⎦– (15) = –1 +

⎡ -1 ⎤
z 4 - do 4 = [4 + d 4 - d] re
⎣ 0 ⎦– (0) = –4 -

⎡ 0 ⎤
z 5 - do 5 = [4 + d 4 - d] re
⎣ 1- ⎦– (0) = –4 +

De ahí extraemos el siguiente conjunto de relaciones para mantener la misma base óptima.

-1+d/2£0∴d£2
–4 - £ 0 ∴d³-4
-4+d£0 £4

Página 161

154 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

Lo que significa que en el rango £ 4 £ £ 2 la solución no cambiará su base. fuera de eso


intervalo, la base no es óptima. Con estas ecuaciones podemos examinar la variación de costos simultánea
más de una variable (básica o no) mediante la constitución de sistemas de ecuaciones.

4.6.3 - Cambio en el vector de demanda o término independiente


El impacto del cambio en el vector b se calcula utilizando la siguiente fórmula:

B –1 ( b + D b )

donde D b indica la variación en el vector b .

En caso de que exijamos viabilidad primaria, entonces:

https://translate.googleusercontent.com/translate_f 134/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
B –1 ( b + D b ) ³ 0

Ejemplo 3 : Para el problema del combustible,

⎡ 1 - 1⎤ ⎡ 5 + Δ segundo

1 ³0
B -1 ( segundo + D⎣ segundo )⎦ =⎣ Δ segundo

-12 3 + dos

2+Db1-Db2³0
1 - D b 1 - 2D b 2 ³ 0

lo que implica la solución de un sistema de desigualdades para el análisis del cambio del término independiente.

Ejemplo 4 : En este caso, examinaremos en detalle el programa que se representa a continuación.

Maximizar z = x 1 + x 2
sujeto a:
x1 £3

2 x 1 + 3 x 2 £ 24
x 1 ³ 0, x 2 ³ 0

con el siguiente sistema asociado a la solución óptima:

x1 x2 x3 x4
z 9 0 0 –1/3 –1/3

x1 3 1 0 1 0
x2 6 0 1 –2/3 1/3

3 ⎤ 1⎤
4 Suponga que el vector b = ⎡ b = ⎣⎡
⎣ 24 ser
⎦ cambiado a 18,⎦¿qué pasará?

El impacto de cambiar el vector b se puede calcular fácilmente:

-1
=⎡ 1 0 ⎤⎡ 1 ⎤ 1 ⎤
X Bb ⎣ -2313 ⎦ ⎣ 18 ⎦ = ⎡⎣ 16 3 ⎦
B =

Página 162

DUALIDAD Y SENSIBILIDAD 155

Así,

⎡ X segundo
⎤ ⎡ 1 ⎤
= 1
X segundo
⎦⎥ =⎣ 16 3 ⎦
⎣⎢ X segundo
dos

La base se mantuvo genial (casualmente). Entonces, como vimos en el ejemplo anterior, podemos
interesarse en los intervalos en los que los componentes de b podrían variar para mantener la viabilidad.
solución actual.

4 Determinemos, para el caso actual, el valor más pequeño de b 2 para que la solución siga siendo óptima.

-1 =⎡ 1 0 ⎤ ⎡ 3⎤ ⎡ 3 ⎤

X Bb ⎣ -2313 + Δ 3 ⎦≥ 0
⎦ ⎣ Δ ⎦ = ⎣ - dos
B =

D³6

⎡ dos

4 Suponiendo ahora que b = ⎣ 3 ¿Qué pasaría?

En ese caso:

=⎡ 1 0 ⎤ ⎡ dos dos ⎤
-1 ⎤
X Bb ⎣ -2313 ⎦ ⎣ 3 ⎦ = ⎡⎣ - 1 3 ⎦
B =

https://translate.googleusercontent.com/translate_f 135/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
Es decir, la base óptima, con la modificación del vector b , ya no es viable. Para solucionar esto
problema, podemos aplicar el algoritmo simplex dual de la siguiente manera:

x1 x2 x3 x4

z 1 0 0 –1/3 –1/3

x1 dos 1 0 1 0

x2 –1/3 0 1 –2/3 1/3

lo que nos lleva a la siguiente imagen óptima:

x1 x2 x3 x4

z 1/2 0 –1/2 0 –1/2

x1 1/2 1 3/2 0 1/2

x2 3/2 0 –3/2 1 –1/2

4.6.4 - Cambio en las restricciones

4 Elprimer caso a estudiar se refiere a la adición de una nueva restricción al problema. Siempre que
esto ocurre en un programa matemático, hay una reducción en el espacio de soluciones viables,
que aumenta / reduce (minimiza / maximiza) el valor de la función objetivo, o no cambia el
encontró. Bajo ninguna circunstancia agregar una restricción "mejora" el valor numérico
de la función objetivo. Como procedimiento general para este caso, podemos sugerir que existe un
si agregar la restricción cambia la solución o no. En caso de que se configure el cambio, debemos
Continuar resolviendo el "nuevo" problema.

Página 163

156 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

Ejemplo 5 : En este caso, veamos el programa a continuación.

Maximizar z = x 1 + 3 x 2
sujeto a:
x1 £3
2 x 1 + 3 x 2 £ 24
x 1 ³ 0, x 2 ³ 0

que, cuando se resuelve, tiene el siguiente marco óptimo:

x1 x2 x3 x4

z 24 -1 0 0 -1

x3 3 1 0 1 0

x2 8 2/3 1 0 1/3

Supongamos ahora que queremos agregar la siguiente restricción al programa:

x 1 + 6 x 2 £ 30

Para comprobar si se ha cortado la solución óptima calculada anteriormente, simplemente reemplace los valores
⎡ X segundo
⎤ 3⎤
segundo
= 1 ´ 8 ³ 30, lo que demuestra que habrá
x res
⎣⎢ X ⎦⎥ =⎣⎡ 8 ⎦en la restricción, lo que resultará en: 0 + 6
segundo
dos

en la solución, ya que la solución que se encuentra en el marco óptimo provoca la violación de la nueva restricción.
perro. La nueva restricción reducirá el tamaño del espacio para soluciones viables al problema y, en consecuencia,
disminuirá su valor en el óptimo. Resolver el problema que surge de la agregación de los nuevos
trición, la agregaremos al marco inicial. Como se está creando una nueva línea en la matriz de respuesta
restricciones, se debe tener cuidado de introducir la variable de holgura respectiva para mantener una base viable.
nivel inicial. En este ejemplo, la variable de brecha será x 5 . Entonces tendremos:

x1 x2 x3 x4 x5

z 24 -1 0 0 -1 0

x3 3 1 0 1 0 0

https://translate.googleusercontent.com/translate_f 136/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
x2 8 2/3 1 0 1/3 0
x5 30 1 6 0 0 1

La columna de x 2 , una variable básica, no es canónica, ya que hay un valor de 6 en la última fila. Utilizando el
método de operaciones elementales para completar la inversión base tenemos:

x1 x2 x3 x4 x5

z 24 -1 0 0 -1 0

x3 3 1 0 1 0 0

x2 8 2/3 1 0 1/3 0

x5 –18 –3 0 0 -dos 1

Aplicando el algoritmo dual simplex, luego de dos pivotajes, llegaremos a la siguiente tabla:

Página 164

DUALIDAD Y SENSIBILIDAD 157

x1 x2 x3 x4 x5

z 2/33 0 0 –1/2 0 –1/6

x4 9/2 0 0 –3/2 1 1/2

x2 9/2 0 1 –1/6 0 1/6

x1 3 1 0 1 0 0

4 Elsegundo caso es la eliminación de una restricción. En esta alternativa encontramos algunos


sub-casos, a saber:

• La restricción eliminada es de desigualdad.


Si la variable básica relacionada con esta restricción es la variable de holgura asociada a ella, entonces la
la restricción está inactiva y su eliminación no provocará ninguna modificación a la solución óptima.
Si la variable básica es real, no podemos decir nada y debemos reanudar el proceso de solución.
como un nuevo problema.

• La restricción eliminada es igual.


En ese caso, debemos comenzar la solución nuevamente a partir de la eliminación de la restricción.

4 El tercer caso corresponde al cambio de coeficientes en una restricción existente. En esta hipótesis
ya no será necesario ingresar la variable de holgura para completar la base. A partir de entonces,
en caso de agregar una nueva restricción.

4.6.5 - Cambio de Variables

4 El primer caso posible de cambio en la variable es la eliminación que comprende dos sub-casos:

• La variable eliminada no es básica.


Evidentemente, cuando eliminamos una variable no básica del programa en el marco óptimo,
tendremos la solución, ya que las variables no básicas son nulas.

• La variable eliminada es básica.


No podemos simplemente eliminar una variable básica porque la inversa de la base se calculó en
su función. Si hacemos esto tendremos que volver a iniciar la solución desde el paso inicial. Lo que podemos hacer es
migrar a una base vecina que no contenga esta variable y posteriormente eliminarla del programa
ma como variable no básica. Para llevar a cabo esta migración, debemos forzar un pivote. El criterio
Los criterios para elegir este pivote se discutirán a continuación.

Ejemplo 6:

Maximizar z = 5 x 1 + 5 x 2 + 13 x 3
sujeto a:
-x1+x2+3x3 £ 20

12 x 1 + 4 x 2 + 10 x 3 £ 90

x 1 ³ 0, x 2 ³ 0, x 3 ³ 0

https://translate.googleusercontent.com/translate_f 137/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

que tiene el siguiente marco óptimo:

Página 165

158 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

x1 x2 x3 x4 x5

z –100 0 0 -dos –3 0

x2 20 -1 1 3 1 0

x5 10 dieciséis 0 -dos –4 1

Suponiendo que la variable x 2 debe eliminarse del problema, entonces podemos sustituirla en la base
por x 3 que, entre las variables no básicas, tiene el costo reducido menos desfavorable. en un
Situación donde se presenta la condición de parada para el simplex (imagen óptima) las variables
básicos o tienen costos reducidos cero o negativos. En esta situación, sustituyendo una variable básica
uno no básico probablemente empeorará el valor de la solución representada en la tabla. El pivote
teamento se configura de la siguiente manera:

x1 x2 x3 x4 x5

z –100 0 0 -dos –3 0

x2 20/3 -1 1 3 1 0

x5 10 dieciséis 0 -dos –4 1

lo que nos lleva al siguiente vértice junto al anterior, genial dentro del nuevo marco:

x1 x2 x3 x4 x5

z –260/3 –2/3 2/3 0 –7/3 0

x3 20/3 –1/3 1/3 1 1/3 0

x5 50/3 46/3 2/3 0 –10/3 1

4 El segundo caso se refiere a la adición de una nueva variable.

De hecho, la introducción de una nueva variable ( x l ) requiere volver a calcular los costos reducidos y la columna
( L ) de la matriz Y .

Ejemplo 7:

Maximizar z = x 1 + 2 x 2 + 7 x 3
sujeto a:
x1 + 2x 3 £4

x2+3x3 £5

-x1 +x2 £0
x 1 ³ 0, x 2 ³ 0, x 3 ³ 0

lo que nos lleva a la siguiente imagen óptima:

x1 x2 x3 x4 x5 x6

z –13 0 0 0 -dos -1 -1

x1 dos 1 0 0 3 -dos dos

x2 dos 0 1 0 3 -dos 3

x3 1 0 0 1 -1 1 -1

https://translate.googleusercontent.com/translate_f 138/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

Página 166

DUALIDAD Y SENSIBILIDAD 159

Supongamos que queremos agregar una actividad más, x 7 , con los siguientes elementos:

⎡ 0⎤
x 7 = ⎢ 1 Ce c 7 = 4
⎣ dos

Podemos calcular el valor de z 7 - c 7 a partir de su expresión general:

⎡ 3 ⎤ ⎡ 0⎤
- dos dos
z 7 - c 7 = c B B –1 a 7 - c 7 = [–1 –2 –7] ⎢ 3 - dos 3 ⎥ ⎢ 1 ⎥– (–4) = 1
⎣ -1 1 - 1 ⎦ ⎣ dos

Del mismo modo, calculamos la columna y 7 .

⎡ 3 ⎤ ⎡ 0 ⎤ ⎡ dos⎤
- dos dos
y7=⎢ 3 - dos 3 ⎥ ⎢ 1 ⎥ = ⎢ 4 ⎥
⎣ -1 1 - 1 ⎦ ⎣ dos
⎦ ⎣ 1- ⎦

Añadiendo la nueva columna en la tabla tenemos:

x1 x2 x3 x4 x5 x6 x7

z –13 0 0 0 -dos -1 -1 1

x1 dos 1 0 0 3 -dos dos dos

x2 dos 0 1 0 3 -dos 3 4

x3 1 0 0 1 -1 1 -1 -1

cuyo pivote conduce a:

x1 x2 x3 x4 x5 x6 x7

z –27/2 0 –1/4 0 –11/4 –1/2 –7/4 0

x1 1 1 –1/2 0 3/2 -1 1/2 0

x7 1/2 0 1/4 0 3/4 –1/2 3/4 1

x3 3/2 0 1/4 1 –1/4 1/2 -1/4 0

4 Eltercer caso de cambio en las variables aborda el cambio en los coeficientes de una variable existente
tratar.

Son posibles dos sub-casos:

• La variable modificada no es básica.


En este caso, vuelva a calcular la columna ( l ) como en el ejemplo anterior.

• La variable modificada es básica.


Podemos recalcular la columna ( l ), insertarla en la tabla y completar el proceso de inversión de
base.

Página 167

160 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

Ejemplo 8:
Sea la imagen óptima del ejemplo 6:

x1 x2 x3 x4 x5

https://translate.googleusercontent.com/translate_f 139/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
z –100 0 0 -dos –3 0

x2 20 -1 1 3 1 0

x5 10 dieciséis 0 -dos –4 1

⎡ 1⎤
Supongamos ahora que x 2 = ⎣ 3 ⎦ . Lo sabemos:

⎡ 10 ⎤ ⎡ 1⎤ ⎡ 1 ⎤
y 2 = B –1 a 2 = ⎣ ⎦ ⎣ 3 ⎦ = ⎣ 1- ⎦
-41

Sin embargo, como la variable es básica tenemos:

x1 x2 x3 x4 x5

z –100 0 0 -dos –3 0

x2 20 -1 1 3 1 0

x5 10 dieciséis -1 -dos –4 1

Y podemos proceder con la inversión de la base por el método de operaciones elementales alcanzando:

x1 x2 x3 x4 x5

z –100 0 0 -dos –3 0

x2 20 -1 1 3 1 0

x5 30 15 0 1 –3 1

4.7 - PROBLEMAS PROPUESTOS

1 - Revisión de la teoría J
Responda con lo correcto o incorrecto justificando su elección:

1. Para un par de problemas primarios en la solución óptima tenemos:

Los. () Cuando la solución de cada problema es finita, los valores de las soluciones óptimas del par son iguales.
SEGUNDO. () El número de variables de holgura en un problema corresponde al número de variables reales
del otro.
C. () Siempre que una variable de holgura sea diferente de cero, la variable dual correspondiente es igual a
cero.
re. () Si uno de los sistemas tiene infinitas soluciones, el otro también las tendrá.
y. () Si uno de los sistemas no es viable, el otro también lo será.
F. () El número de iteraciones del algoritmo simplex necesarias para resolver un problema será el
incluso para cada sistema.
gramo. () La condición de parada en el problema primario corresponde a la condición de viabilidad en el problema
doble.

Página 168

DUALIDAD Y SENSIBILIDAD 161

2 - Aplicación de la teoría de la dualidad J


Para el problema siguiente:

Maximizar z = 2 x 1 + 3 x 2 + 6 x 3 + 8 x 4
sujeto a:
x1+2x2+3x3+x³3
–2 x 1 + x 2 - x 3 + 3 x 4 £ –4
x j ³ 0, j = 1, 2, 3, 4

1. Escribe el problema dual.


2. Resuelva el dual gráficamente.
3. De la solución dual, obtenga la solución primaria.

https://translate.googleusercontent.com/translate_f 140/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
3 - Aplicación de la teoría de la dualidad J
Para el problema siguiente:

Maximizar z = 2 x 1 + 3 x 2 + 6 x 3
sujeto a:
x 1 + 2 x 2 + x 3 £ 12
x1-x2+3x3£7
x j ³ 0, j = 1, 2, 3

1. Resuélvalo mediante el algoritmo simplex.


2. Escribe tu dual.
3. Resuelva el problema dual gráficamente.
4. Calcule, utilizando las condiciones de dualidad y la solución gráfica, el marco simplex óptimo para el dual.

4 - Aplicación de la teoría de la dualidad J


Para el problema siguiente:

Maximizar z = x 1 - x 2 + 2 x 3
sujeto a:
x1+x2+x3£6
-x1+2x2+3x3 £9
x j ³ 0, j = 1, 2, 3

1. Resuélvalo por el método simplex.


2. Escribe el problema dual y determina gráficamente su solución.
3. Suponiendo que b 1 (primer elemento del término independiente) se suma en una unidad, que
pasará con el valor de la función objetivo?
4. Suponiendo que el vector de costos se cambia a (2, 1, 1), ¿qué pasará con la solución encontrada?
en el primer orden?
5. Suponiendo que el vector de términos independientes se cambia a (5 10) t , ¿qué pasará con el
solución encontrada en el primer orden?
6. Si se incluye una nueva variable en el problema con el costo igual a -1 y con un vector de restricción
igual a (2 1) t , ¿qué pasará con la solución encontrada en el primer orden?
7. Si el vector de costos del problema se cambia a (1, –1, 2) + l (1, 4, –1), determine las soluciones óptimas para
todos los valores l .

Página 169

162 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

5 - Ejercicio práctico J
Una pequeña empresa siderúrgica recibe un pedido de un lote de lingotes de hierro que debería sumar 240
toneladas de contenido de hierro (Fe). El cliente admitirá que el lote homogéneo tiene
elemento de silicio adicional (Si), pero por cada tonelada de Si debe haber al menos en la aleación
15 toneladas de Fe. La firma tiene más que suficiente en stock:

• Mineral tipo A (min A), que cuesta R $ 6.000,00 cada cien toneladas y tiene 2% de Si y
60% Fe.

• Mineral tipo B (min B), que cuesta R $ 3.000,00 cada cien toneladas y tiene 4% de Si y
40% Fe.

La empresa también tiene la oportunidad de utilizar chatarra de buena calidad como materia prima, que
cuesta R $ 2.500,00 la tonelada, y tiene prácticamente el 100% de Fe.

1. Formule el problema de programación lineal que calcule la combinación mínima de costos de materias primas.
necesario para la producción de los lingotes pedidos.

2. Formule el problema dual.

3. Ponga los problemas en forma estándar.

4. Resuelva el problema usando el método simplex.

5. ¿Cuánto varía el costo mínimo por tonelada de Fe para agregar al lote pedido?

6. ¿Qué interpretación económica puede dar al problema dual y sus variables?

7. Suponga que aparece un nuevo proveedor de mineral tipo C (min C), que cuesta R $ 4.000,00

https://translate.googleusercontent.com/translate_f 141/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
por
grancien
liga?toneladas
Si es así,y¿cuál
que tiene
será 2% Si y 50%
la nueva Fe. Habrá un cambio en la composición de la
composición?

8. ¿Cuál es el precio máximo que puede tener la chatarra para ser económicamente ventajoso para el
producción de la liga en cuestión?

9. ¿Dentro de qué rango de costos el mineral tipo A (min A) será atractivo para permanecer en el
¿solucion optima?

6 - Ejercicio práctico J
Una fábrica fabrica cinco tipos de estanterías ( p 1 , ..., p 5 ) utilizando dos procesos de producción
(proceso normal - N y proceso acelerado - A). Cada producto requiere un cierto número de horas.
a trabajar dentro de cada proceso y algunos productos solo se pueden fabricar a través de
de uno de los tipos de procesos. La Tabla 4.4 resume el consumo (en horas) dentro de cada esquema
y las ganancias obtenidas (en reales) después de deducir los costos de producción.

TABLA 4.4 Consumo de horas en esquemas de fabricación

Estantería p1 p2 p3 p4 p5

Beneficios / Unidad (R $) 550 600 350 400 200

Proceso normal (horas) 12 20 - 25 15

Proceso acelerado (horas) 10 8 dieciséis - -

El montaje final de cada estante requiere 20 horas de mano de obra por unidad. La fabrica tiene
tres máquinas para el proceso normal y dos para el proceso acelerado. Las maquinas trabajan en

Página 170

DUALIDAD Y SENSIBILIDAD 163

dos turnos de 8 horas por día, sobre una base semanal de 6 horas. Un equipo de 8 hombres trabaja
en un solo turno de 8 horas y durante seis días, armando las estanterías con los clientes.

1. Formule el problema de programación lineal que calcule el mejor esquema de producción.

2. Formule el problema dual.

3. Ponga los problemas en forma estándar.

4. Resuelve ambos problemas usando el método simplex.

5. ¿Existe algún proceso que no se esté utilizando por completo? ¿Por qué está pasando esto?

6. ¿Qué pasaría con las ganancias totales si se contratara temporalmente a un nuevo trabajador (pagado
por hora trabajada).

7. ¿Cuál debería ser el precio de los productos que no se eligieron fabricar para que
se vuelven económicamente atractivos?

8. ¿Cuál es el valor económico de una hora extra de capacidad de producción en cada proceso?

9. Justifique el costo del estante 1 analizando el valor de las horas trabajadas agregadas por el
Procesos de fabricación y montaje.

7 - Ejercicio práctico J
Considere el siguiente problema de programación lineal:

Maximizar z = 2 x 1 + 4 x 2 + x 3 + x 4
sujeto a:
x1+3x2 +x4£8
2x1+x2 £6
x2+4x3+x4£6
x j ³ 0, j = 1, ..., 4

El modelo corresponde a un proceso de producción en el que las variables son determinados productos
facturas que se venden en el mercado. Se indica la devolución a la venta de los productos, en unidades
monetaria, por la función objetivo. Las restricciones representan las limitaciones de disponibilidad del
A (restricción 1), entrada B (restricción 2) y entrada C (restricción 3), que se consumen

https://translate.googleusercontent.com/translate_f 142/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
en el proceso de obtención de cada producto.
Llamamos x 5 , x 6 y x 7 las variables de holgura asociadas con la primera, segunda y
terceras restricciones y b = ( b 1 , b 2 , b 3 ) el término independiente. Sabiendo que la inversa de la base óptima (
planteado por x 1 , x 3 y x 2 ) corresponde a:

⎡ 1 3 ⎤
- 0
⎢ 5 5 ⎥
- =1 ⎢ 1 1 1⎥
segundo -
⎢ 10 20 4⎥
⎢ dos 1 ⎥
⎣ - 0⎦
5 5

Responde las siguientes preguntas:


1. ¿Qué pasaría con la devolución del sistema de producción si se pusiera a disposición una unidad más?
de entrada

Página 171

164 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

1.1 A.

1.2 B.

1.3 C.

2. ¿En qué rango de variación de disponibilidad la entrada A fluctuará de modo que la base óptima
no ser cambiado?
3. ¿Cuál es la solución óptima si b 1 = 5? ¿Y si b 1 = 25?

4. Si hay 3 unidades más de la entrada 1 disponibles, ¿cuál será el valor de retorno óptimo obtenido con el
venta de productos?
5. ¿Cuánto vale la unidad del insumo A para la empresa? ¿Y la unidad B?

6. La empresa decidió introducir un nuevo producto en su línea de producción ( x 8 ). Cada unidad


a X 8 se puede comercializar por 3 unidades monetarias y consumir la unidad de entrada 1 A, 1
entrada B y ninguna de C. A partir de la situación de disponibilidad de entrada inicial, que
será la nueva política de producción de la empresa? En ese caso, valdrá la pena aumentar la disponibilidad
de la entrada B? ¿Por qué? En este caso, ¿ha cambiado el valor del insumo A para la empresa?
7. Un cambio repentino en la preferencia del cliente ha mejorado el producto 4, otorgándole un retorno de
5 unidades monetarias. Estudie el efecto de esta recuperación en la solución inicial. En este caso, que
¿Sería el valor del insumo C para la producción de la empresa?

8 - Aplicación de la teoría de la dualidad J


A continuación se muestra una transcripción de la imagen óptima de un problema de programación lineal dado, cuya función
El objetivo era maximizar y las restricciones eran todas £.

x1 x2 x3 x4 x5

z –20 -dos 0 -dos –3 0

x2 5 -dos 1 1 1 0

x5 10 4 0 -dos 4 1

1. Escribe el problema original.

2. Escribe el dual de este problema.

3. Obtenga la solución óptima al problema dual de la tabla anterior.

9 - Aplicación de la teoría de la dualidad J


Solucione el problema a continuación:

Maximizar z = x 1 + 8 x 2
sujeto a:
x1+x2 ³2
x1+4x2£4

https://translate.googleusercontent.com/translate_f 143/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
x j ³ 0, j = 1, 2

Página 172

DUALIDAD Y SENSIBILIDAD 165

10 - Aplicación de la teoría de la dualidad J


Es necesario realizar la programación diaria del montaje de placas base para microcomputadoras en
una pequeña fabricación. Cada tipo de tarjeta se puede ensamblar con dos tipos de CPU. La mesa para
A continuación se representa la distribución del valor agregado en US $ con el montaje de una placa madre en
función del esquema de tipo de placa base ´ CPU utilizada.

TABLA 4.3 ESQUEMA DE LA PLACA MADRE × CPU / US $

Tipo 1 Tipo 2

CPU 1 50 70

CPU 2 25 60

Cada combinación de CPU y tipo de placa base requiere un tiempo de montaje peculiar y pruebas que
se puede resumir en horas hombre por lote de 25 placas en la siguiente tabla:

TABLA 4.4 ESQUEMA DE LA PLACA MADRE × CPU / MEN × TIEMPO

Tipo 1 Tipo 2

CPU 1 1 3

CPU 2 0,7 5

50 horas hombre de mano de obra técnica están disponibles para el montaje. El flujo de montaje
de las computadoras requiere al menos 500 placas (consideradas en cualquier esquema de ensamblaje) y
las cantidades máximas por esquema, de acuerdo con la siguiente tabla:

TABLA 4.5 ESQUEMA DE LA PLACA MADRE × CPU / CANTIDADES MÁXIMAS

Tipo 1 Tipo 2

CPU 1 250 250

CPU 2 150 250

1. Resuelva el problema de maximizar la agregación de ganancias ensamblando las placas base, utilizando
utilizando el algoritmo dual simplex.

2. ¿Cuál debería ser el valor mínimo asociado con el esquema de CPU 2 de Tarjeta Tipo 1, para que
atractivo montaje?

3. ¿Qué pasaría si, en un día determinado, el flujo de montaje requiriera la preparación de 600 placas?
En este caso, ¿cómo se comportaría el valor añadido medio por plato? (¿Aumentar Disminuir?)

11 - Ejercicio integral J
Una empresa siderúrgica, productora de aceros especiales, necesita programar su producción para el próximo
tres meses. Todos sus productos, obtenidos fundamentalmente a partir de materias primas Ni, Cr y chatarra
de Fe, pasan por el desbastador, cuya capacidad de laminación es como máximo de 50 mil toneladas
toneladas de acero por mes. El stock actual de Ni es de 6.000 toneladas y su único proveedor de Ni
tiene capacidad de extracción y procesamiento de un máximo de 3 mil toneladas mensuales. El stock actual
Cr es 10 mil toneladas, pero la posibilidad de importar este metal en un plazo mínimo de un mes
permite el consumo en cualquier cantidad a partir del segundo mes del horizonte de planificación.

https://translate.googleusercontent.com/translate_f 144/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

Página 173

166 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

ment. La chatarra de hierro y otras materias primas están disponibles en cantidades sueltas. La compañia
que tiene un monopolio de acero especial, considera para los próximos tres meses solo los siguientes
siguientes alternativas de producción:

4 Acero tipo ABNT 301, que contiene un máximo de 0,15% C, un máximo de 2% de Mn y un máximo de 1% de Si.
Este tipo de acero, utilizado para fines estructurales, debe contener entre un 16% y un 18% de Cr y entre un 6% y un 8% de Ni.

4 Acero tipo ABNT 302, que debe cumplir los mismos límites que el acero ABNT 301 para C, Mn y Si.
Pero como debe usarse en equipos hospitalarios y de la industria alimentaria (debe ser
muy resistente a la corrosión) debe contener entre un 17% y un 19% de Cr y entre un 8% y un 10% de Ni.

4 Acero tipo ABNT 409, que contiene un máximo de 0,08% C, 1% Mn y 1% Si. Este tipo de acero es
utilizado para gases de escape y motores de explosión, y debe contener 10,5% a 11,75% Cr,
estar libre de Ni y tener un porcentaje de Ti al menos 6 veces mayor que el porcentaje
de C y como máximo igual a 0,75 del peso total de la aleación.

Suponga que la empresa ha hecho compromisos de ventas de al menos 10,000 toneladas.


por mes de acero ABNT 301 y que se ha comprometido a suministrar, al final del tercer mes, al menos
en las 30 mil toneladas de acero ABNT 302. La empresa también sabe que, aunque su mercado es bueno,
no podrá vender más del triple de las cantidades ya pedidas para estos dos tipos de aceros con
Ni. Por otro lado, la demanda de acero ABNT 409 es prácticamente ilimitada, dados sus buenos precios.
servicios y un entorno favorable en los mercados (nacional e internacional) de motores de explosión.
Asumiendo y explicando las hipótesis que estime necesarias (para los stocks iniciales de la
productos, etc.), responda las siguientes preguntas:

1. Sin tener en cuenta las restricciones relacionadas con el contenido de Ti en el acero tipo ABNT 409, cite las principales
variables de decisión en el problema en cuestión.
2. ¿Cuáles son los recursos limitados en este problema de planificación de la producción y almacenamiento?
¿empresa? Anote explícitamente las principales tasas de disponibilidad de estos recursos.

3. Escriba implícitamente las principales restricciones de servicio al cliente.


4. Arbitrar los precios por tonelada de los distintos tipos de acero (del orden de algunos miles de dólares estadounidenses),
Formular una función objetivo que maximice los ingresos totales de la empresa en los tres meses en cuestión.
5. Muestre el cuadro del problema de programación matemática que modela este problema de planificación.
ment y producción.
6. Suponiendo que la reducción de C en una aleación es un procedimiento costoso y que el precio del Ti es
alto, cómo el requisito de calidad que relaciona los niveles C se puede acomodar en el modelo PL
y Ti en la producción de acero ABNT 409.
7. Resuelva el problema utilizando algún software adecuado.
8. ¿Cuál es la mejor política para producir y almacenar? ¿Hay alternativas?
9. Si existe, nombre un tipo de acero cuya producción sea antieconómica en algún momento. Cuál es el
por qué, por unidad a nivel de actividad, este tipo de acero daría si la dirección de producción insistiera en
si en su fabricacion en ese periodo? Si el precio del acero sube, ¿a partir de qué aumento empieza a
ser parte del esquema de producción óptimo?
10. ¿Hay algún recurso suelto? ¿Cual? Cuánto estos recursos pueden tener su disponibilidad
producido sin cambiar el esquema de producción óptimo?
11. Suponiendo que se mantienen todas las demás condiciones, dentro de qué rango de precios cada
¿Puede la actividad básica variar sin ser descartada del programa de producción óptimo?
12. Cotizar precios de equilibrio financiero para la empresa, incluidos los valores de los productos y
mos. Manteniendo estos valores como base, suponga que actualmente el costo de Ni para la empresa es
de US $ 8.000,00 por tonelada. Incluso cuando ese precio puede subir, sin incurrir en pérdidas para el
¿empresa?
13. ¿Cuáles son los valores marginales de los diversos productos e insumos?

Página 174

https://translate.googleusercontent.com/translate_f 145/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

5 PROGRAMACIÓN DINÁMICA
PROGRAMACIÓN COMPLETA Y

5.1 - CARACTERÍSTICAS DE LOS MODELOS LINEALES DE TODA LA PROGRAMACIÓN


Sea el siguiente problema de programación lineal:
Una confitería produce dos tipos de tartas heladas: chocolate y nata. Cada lote de pastel de sepia
se vende tarde con una ganancia de 3 unidades monetarias y mucha nata con una ganancia de 1. Contratos
con varias tiendas requieren que se produzcan al menos 10 lotes de pasteles de chocolate por día y que el
el total de lotes fabricados nunca es inferior a 20. El mercado solo puede consumir hasta 40 lotes de pasteles
crema y chocolate 60. Las heladeras ofrecen 180 horas de funcionamiento
cada lote de pasteles de chocolate consume 2 horas de trabajo y cada lote de pasteles de crema
3 horas. Determinar el esquema de producción que maximice los beneficios de la venta de tortas heladas.
El modelado de este problema de programación matemática que llamaremos "las muchas burbujas
helado ”, o BS, es simple y se puede realizar de la siguiente manera:

1. Elección de la variable de decisión

x i º número de lotes de pasteles helados ( i = 1) y chocolate ( i = 2) manufacturados.

2.Desarrollo de la función objetivo

z = Maximizar { f ( x ) = x 1 + 3 x 2 }
Número total de unidades monetarias obtenidas por la venta de lotes de tortas de nata y chocolate
colate.

3. Formulación de restricciones tecnológicas

a) Restricción asociada a la disponibilidad de maquinaria:


3 x 1 + 2 x 2 £ 180
b) Restricción al número de lotes de tortas de crema en el mercado:
x 1 £ 40
c) Restricción al número de lotes de tartas de chocolate en el mercado:
x 2 £ 60
d) Restricciones asociadas a los contratos con tiendas:
x 2 ³ 10
x 1 + x 2 ³ 20

Página 175

168 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

4. Restricciones de la no negatividad

x 1 ³ 0, x 2 ³ 0

Podemos resumir el modelo BS de la siguiente manera:

( BS ) Maximizar z = x 1 + 3 x 2
sujeto a:
x1 £ 40

x 2 £ 60
x 2 ³ 10
x1+x2 ³ 20

3 x 1 + 2 x 2 £ 180
x 1 ³ 0, x 2 ³ 0

Como se nos pidió, además del modelo, mostrar el mejor esquema de solución para
https://translate.googleusercontent.com/translate_f 146/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
producción, buscaremos la solución del problema. Una primera duda surge inmediatamente cuando
analizar el conjunto de restricciones: ¿sería posible producir medio lote de tortas de chocolate?
Si el lote tiene un número impar de pasteles, alguien debería comprar una fracción de pastel.
chocolate.
Este problema es de extraordinaria importancia. En innumerables situaciones, las variables de decisión
no pueden admitir un valor continuo. Ocasiones en las que se trata de personas, configuraciones
ciones, objetos físicos, etc., las soluciones fraccionarias pierden su significado práctico. Podríamos pensar que esto
El problema no sería tan grave si trabajáramos con una formulación continua y, tras la solución final,
proporcionar alguna estrategia de redondeo. Lo que ingenuamente puede parecer un
La solución "razonable" puede ser una mala idea en la práctica. Ejemplifiquemos la insuficiencia de la solución
mediante redondeo más tarde, pero en este momento es necesario "corregir" nuestro modelo reemplazando el
condición de no negatividad debido a una condición más exigente:

4. Condiciones de integridad

x 1 , x 2 Î Z + (conjunto de enteros positivos).

La figura 5.1 muestra la representación gráfica de la matriz de restricciones del problema BS.

x2

90
x 1 = 40

C
60
x 2 = 60
re

X 1 + X dos= 20 segundo

3 x 1 + 2x = 180
dos
20
Y
x 1 = 10
F LA

O 20 40 60 x1

Figura 5.1 Representación gráfica de BS.

Página 176

PROGRAMACIÓN COMPLETA Y PROGRAMACIÓN DINÁMICA 169

Como podemos ver en la Tabla 5.1, los puntos A, B, C, D, E y F del polígono de pos-
Soporta coordenadas enteras. Tal fenómeno es un hecho raro. Obviamente, cuando los puntos extremos
poliedro de soluciones viables tienen valores enteros, resuelve un problema de programación
lineal con variables continuas equivale a resolver un problema de programación completo.

TABLA 5.1

Coordenadas Valor de función


Puntos examinados
(x 1 , x 2 ) z = x 1+ 3 x 2

LA (40,10) 70
segundo (40,30) 130
C (20,60) 200
re (0,60) 180
Y (0,20) 60
F (10,10) 40

La solución que conduce al valor más alto es la correspondiente al vértice C. Pero, ¿qué pasa con el problema de redondeo?
ment? Todavía no hemos visto por qué es grave. Sea el siguiente programa:

Maximizar z = x 1 + 19 x 2
sujeto a:
x 1 + 20 x 2 £ 50
x 1 + x 2 ³ 20
x 1 , x 2 variables enteras

* 8* 11 * 8
cuya solución óptima es: x = 18, X dos= 1 y z 0 = 48 .
1
9 19 19
Aplicar la estrategia de redondeo, ya que los valores óptimos son fraccionarios, y
viendo una búsqueda racional alrededor del punto óptimo continuo tendríamos:

https://translate.googleusercontent.com/translate_f 147/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

TABLA 5.2

Valor de función
Puntos examinados - Coordenadas
z = x 1 + 19 x 2
* *
x 1 = 19 x2 =2 impracticable

* *
x1 = 19 x2 =1 z = 38

* *
x1 = 18 x2 =2 impracticable

* *
x1 = 18 x2 =1 z = 37

* * *
Sin embargo, la solución óptima se obtiene con, x 1 = 10, x 2 = 2e z 0 = 48, es decir, el error es del 21% en el
tratamiento. Con un mayor número de variables y con este margen de error, la técnica de redondeo
puede resultar en un desglose completo del esfuerzo de modelado y solución, imponiendo otros
métodos de solución.
Existen varios métodos específicos para obtener la solución completa exacta a un problema de
programación lineal (ver Dantzig [1959], Gomory [1960], Glover [1965], Lawler y Wood [1966], Reiter y
Rice [1966], Shapiro [1968], Nemhauser y Ullman [1968], Padberg [1970], Wolsey [1972], Pierce y Lasky
[1973], Nemhauser y Garfinkel [1972], Geoffrion y Marsten [1972], Shamir [1984]] y soluciones aproximadas
(ver Chvatal [1979], Davis [1987], Goldberg [1988]). A continuación, presentaremos una
una heurística para resolver este tipo de problemas, pero primero ejemplificaremos el amplio espectro
potencial de modelado a través de una serie de ejemplos.

Página 177

170 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

5.2 - EL PROBLEMA DE LA MOCHILA Y LOS MÉTODOS DE SOLUCIÓN


EXACTO PARA TODA LA PROGRAMACIÓN
Este tema discutirá un modelo importante de programación lineal entera (PLI) llamado
el problema de la mochila (PK) y los métodos exactos para resolver los modelos PLI.

5.2.1 - El problema de la mochila - PK

4 La importancia del problema y su contexto

El llamado problema de la mochila o mochila se caracteriza por una estrecha relación con
una gran cantidad de otros modelos de programación. Su importancia se asocia exactamente con
este hecho. Metafóricamente, podemos entenderlo como el desafío de llenar una mochila sin
un cierto límite de peso, optimizando el valor del producto cargado. Posiblemente fue
portado por primera vez en la literatura por Dantzig (1957) y constituye un hito de las técnicas de programación
formación completa, optimización combinatoria y programación dinámica. Además del aspecto matemático, el
El modelo en sí se puede aplicar directamente en casos prácticos como:

• Inversión de capital (véase Weingartner [1968]).


• En el problema del corte y empaquetado (ver Gilmore y Gomory [1965] y [1963], Pirce [1964],
Goulimis [1990], Vahrenkamp [1996]).

• Carga de vehículos (ver Bellman y Dreyfus [1962] y Capítulo 9).


• Presupuesto.
Un texto detallado sobre el tema se puede encontrar en Kellorer (2004).

4 La formulación del problema

Podemos formular el problema de la mochila (PK) de la siguiente manera:

norte

(PK) Maximizar z = ∑ cjxj


j= 1

sujeto a:
norte

∑ wjxj£b
j= 1

x j ³ 0 y entero.

donde x j representa el número de objetos de tipo j seleccionados para ser incluidos en una mochila,

https://translate.googleusercontent.com/translate_f 148/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
representado metafóricamente por la restricción del modelo. La mochila tiene una capacidad total de b
unidades. La variable c j representa el valor económico de cada artículo y w j , el peso del artículo. La literatura utilizada
intensivamente y, sin ninguna pérdida de generalidad, los coeficientes de restricción como pertenecientes
enteros. En ese caso:

norte

∑ w j > b y w j £ b , j = 1, ..., n
j= 1

y w Î Á, b Î Á.

Página 178

PROGRAMACIÓN COMPLETA Y PROGRAMACIÓN DINÁMICA 171

Considerando que solo hay un objeto de cada tipo a elegir, el problema está definido
de mochila 0-1, donde la restricción de toda la variable se reemplaza por x j Î {0, 1}. Llamaremos a esto
formulación de (PKI). El problema así definido también se suele denominar problema de
Mochila unidimensional (ya que solo tiene una restricción de tipo de mochila).

norte

(PKI) Maximizar z = ∑ cjxj


j= 1

sujeto a:
norte

∑ wjxj£b
j= 1

x j Î {0, 1} j = 1, ..., n

Un caso particular bien conocido de PKI es aquel en el que las variables de decisión son números enteros
y limitado a ciertos valores máximos. Este problema se llama mochila de límites (PKL) y
se puede formular de la siguiente manera:

norte

(PKL) Maximizar z = ∑ cjxj


j= 1

sujeto a:
norte

∑ wjxj£b
j= 1

xj£lj j = 1, ..., n

xjÎÁ+

Los límites impuestos por los valores l j no permiten que la mochila se llene con un número
cualquiera de los objetos x j .
El (PK) es NP-extenuante (ver Garey y Johnson [1979]). El caso de la mochila lineal, es decir, aquella en la que
Las variables son continuas, se pueden resolver de manera extremadamente eficiente, en O ( n ), donde n representa
el número de variables del problema, pudiendo ser resuelto por el algoritmo simplex (ver
Chvátal [1983]), como, por ejemplo, por el método de los puntos interiores (ver Gonzaga [1989]). Esto podría ser
es uno de los problemas de optimización en el que más fácilmente podemos percibir la diferencia de dificultad.
solución entre todos los problemas de programación y programación lineal, ya que solo
se considera una restricción. Ejemplificar la naturaleza combinatoria del problema PKI presentado
La figura 5.2 muestra el árbol de enumeración para el siguiente caso:

Maximizar z = 7 x 1 + 10 x 2 + 12 x 3 + 14 x 4

sujeto a:
z = 41x 1 + 55 x 2 + 60 x 3 + 70 x 4 £ 160

4 Problemas relacionados

Presentaremos en este artículo una serie de variantes para el problema de la mochila. Esta colección,
además de probar las diversas aplicaciones del modelo, permite vislumbrar su importancia.

https://translate.googleusercontent.com/translate_f 149/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

Página 179

172 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

X1 X2 X3 X4

dos 6 15 28 Z = 21
X=
1
3 X=
dos
0 X=
3
0 X=
4
0

dieciséis 29 Z = 29
X=
3 1 X=
4 0

X= 0 X= 0
3 4
7 17 30 Z = 17
X= 1
dos

X= 1 X= 0 X= 0 X= 1
1 dos 3 4
3 8 18 31 Z = 21

X= dos X= 0 X= 0
dos 3 4
9 19 32 Z = 27

X=
3
1 X=
4
0
10 20 33 Z = 22
X= 1
dos X=
4 1
X= 1 21 Z = 26
3 34

X=
1 0 X=
dos 0 X=
3 0 X=
4 dos
1 4 11 22 35 Z = 28

X= dos X=
4
0
3 23 36 Z = 24

X=
dos dos X=
4 0
12 24 37 Z = 20
X=
3 0

X= dos X= 0 X= 0 X= 1
1 dos 3 4
5 13 25 38 Z = 28

X= 0
4
X= 1 26 Z = 26
3 39

X= 1
dos 14 27 40 Z = 24
X= 0 X= 0
3 4

FIGURA 5.2 Árbol de enumeración del ejemplo del problema de la mochila.

• Problema de suma de subconjuntos (SSP):


Dos problemas están fuertemente correlacionados con PK. El primero es un caso especial cuando
los costos tienen el mismo valor que los pesos. En este caso, c j = w j, por lo que se define el problema de suma de subconjuntos (SSP)
(también nombrado por Christofides [1979] para el problema de la mochila independiente del valor ):

norte

(SSP) Maximizar z = ∑ wjxj


j= 1

sujeto a:
norte

∑ wjxj£b
j= 1

x j Î {0, 1} j = 1, ..., n .

Página 180

PROGRAMACIÓN COMPLETA Y PROGRAMACIÓN DINÁMICA 173

• Mochila múltiple 0-1 (PKM)


Este problema va en la dirección opuesta a SSP, ya que es una generalización de PK. En eso
si hay m mochilas para cargar, cada una con una capacidad de b i , i = 1, ..., m . PKM se reduce a PK
cuando m = 1. Las variables de decisión del problema se ven afectadas por dos índices; es decir, x ij es una variable
nivel binario con 0, 1 que representa la inclusión del producto i en la mochila j . Los pesos de los productos y su

https://translate.googleusercontent.com/translate_f 150/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
Las
Eviteflores soneliguales
incluir mismopara todasen
producto lasmás
mochilas.
de una Es necesario
mochila. incluirformular
Podemos en el modelo una restricción
este problema de adicional que
como sigue:

metro norte

(PKM) Maximizar z = ∑ ∑ c j x ij
= 1j
yo = 1

sujeto a:
norte

∑ w j x ij £ b i i = 1 , ..., m
j= 1

metro

∑ x ij £ 1 j = 1 , ..., n
= 1
yo

x ij Î {0, 1} i = 1 , ..., m; j = 1 , ..., n.

Hay versiones limitadas o no limitadas para el caso múltiple.

• Mochila multidimensional 0-1 ( PK- n -Dimensional)


Si pagamos un p i por cada artículo comprado y
existe una limitación p en el capital disponible para dicha adquisición, se puede definir un nuevo problema:
Lleve la mochila con la carga de mayor valor posible, dada la disponibilidad presupuestaria.
Podemos formular el problema como un caso sujeto a dos restricciones o bidimensional (PKB),
siguiente manera:

norte

(PKB) Maximizar z = ∑ cjxj


j= 1

sujeto a:
norte

∑ wjxj£b
j= 1

norte

∑ pjxj£p
j= 1

x j Î {0, 1} j = 1 , ..., n.

El modelo puede generalizarse en la medida en que existan otras restricciones que limiten el uso
uso de objetos para llenar la mochila, de ahí la designación multidimensional para este
tipo de modelo. Como en el caso de la mochila múltiple, podemos encontrar para el problema el
limitado y no limitado.

• Mochila Max-Min 0-1 (PKMM)


En varias situaciones, los problemas modelados por la mochila pueden involucrar elementos que
valores pendientes de un escenario. Un ejemplo de esta situación se refiere a la preparación de un
equipaje para una excursión. El valor de una capa impermeable o un abrigo grueso depende de la
probabilidad asociada con lluvia o frío en el intervalo de viaje.

Página 181

174 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

Dados n elementos y un conjunto S de escenarios, y una mochila que tiene el valor del elemento asociado con
s
v yo, el valor del artículo i dentro del escenario S , y también considerando w i el peso del artículo i , yb la capacidad
de la mochila, una mochila max-min 0-1 se define de la siguiente manera:


⎪ ⎛ metro ⎞⎫


(PKMM) Maximizar mínimo

⎜ ∑ s
vxyo yo⎟
⎟⎬
X ⎩⎪ s ∈ s ⎝yo= 1 ⎠⎭⎪

sujeto a:
norte
∑ wixi£b i = 1 , ..., m
= 1
yo

x i Î {0, 1} i = 1 , ..., m;

PKI es un caso particular de PKMM cuando solo hay un escenario a considerar. los
PKMM se aplica a problemas de cartera de inversiones donde el valor de retorno esperado
depende del escenario futuro. La consideración de un objetivo mínimo-máximo es uno de los tres criterios utilizados
en un contexto más amplio de problemas de optimización más recientemente llamado optimización
robusto (ver Kouvelis y Yu [1993]). Los problemas min-max o max-min con variables continuas fueron

https://translate.googleusercontent.com/translate_f 151/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
estudiado, entre otros, por Kaplan (1974), Luss y Smith (1986), Pang y Yu (1989), Klein et al. (1993). O
El problema discreto mínimo-máximo fue abordado por Jacobsen (1971), Porteus y Yormark (1972), Ichimori
(1984), Tang (1988). Un trabajo interesante que aborda el problema máximo-mínimo es el de Rangan y Govin-
dan (1992). Eiselt (1986) estudió el problema continuo máximo-mínimo de la mochila. Yu (1996) presenta
un algoritmo B&B para la solución PKMM, así como una heurística miope para generar
soluciones viables y límites inferiores.

• Mochila de opción múltiple (PKEM)


Si el conjunto N de las variables se divide en m clases N k , k = 1, ..., my se requiere que exactamente
se elige una variable de cada clase para integrar una solución, luego llamaremos a este modelo
plantilla de mochila de opción múltiple. Dudzinski y Walukiewicz (1987) formulan PKEM de la siguiente manera:
molde:

metro

(PKEM) Maximizar z = ∑∑ cjxj


k= 1 j∈
Nk

sujeto a:
metro
∑∑ wjxj£1
k= 1 j ∈Nk

Σ x j = 1 k metro yo = {1 , ..., m }
j ∈Nk

metro

x i Î {0, 1} j Î N = U norte
= {1,
k
..., n}.
k= 1

Sinha y Zoltner (1979) y Nauss (1979) sugieren varias aplicaciones para PKEM. Zemel (1984) presenta
un algoritmo O ( n ) para resolver el caso continuo del problema. Johnson y Padberg (1981)

abordar el problema de las restricciones de embalaje ∑ x j £ 1 . Ibarra y Kim (1978) reemplazan las restricciones
j ∈Nk

declaraciones de opción múltiple debido al único requisito de que al menos una de las variables pertenecientes a N k ,
k = 1, ..., m , ser positivo en la solución (no necesariamente completo). La relajación lineal de este problema

Página 182

PROGRAMACIÓN COMPLETA Y PROGRAMACIÓN DINÁMICA 175

tiene un método de solución dual eficiente con complejidad O ( n ) (Dyer [1984]). Ex-
da como resultado la reducción de PKEM (Sinha y Zoltner [1979]). El problema se puede resolver
mediante programación dinámica en operaciones O ( nb ) (ver Dudzinski [1984]).

• La mochila encapsulada (PKE)


Este modelo encaja en la clase de aquellos destinados a formular problemas de secuenciación.
Tareas. Dudzinski y Walukiewicz (1987) formulan el PKE de la siguiente manera:

(PKE) Maximizar z = ∑ c jx j
j ∈S

sujeto a:
∑ w jx j £ b i i = 1, ..., m
j ∈Si

x j Î {0, 1}, j Î S

metro

donde S i Ç S k = Æ o ( S i Í S k o S k Í S i ) para i ¹ k, con S = T S. Podemos


i asumir sin ninguna pérdida de
=1
yo

generalidad que S i ¹ S k , y, si S i Ì S k , entonces b i £ b k para cada i ¹ k. PK es un caso especial de PKE cuando


do m = 1. La restricción de mochila del modelo se comporta "anidada" o "encapsulada" (por lo tanto
nombre) y se puede representar en un gráfico dirigido G = ( V, A ), donde V = {1, ..., m } y los bordes
( I, k ) Î A , si y sólo si S i à S k y hay r Î V tal que S i Ì S r Ì S k , y S un subconjunto de C . O
El gráfico G es un bosque. Dos casos particulares de PKE son importantes debido a su aplicación práctica y
por Dudzinski y Walukiewicz (1987), a saber:

• El problema de la mochila descompuesta (PKD)

(PKD) Maximizar z = ∑ c jx j
j∈
S

sujeto a:

https://translate.googleusercontent.com/translate_f 152/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

∑ w jx j £ b i
j ∈Si i = 1, ..., m

∑ w jx j £ b
j ∈S

x i Î {0, 1}, j Î S

metro

donde S i Ç S k = Æ para i , k = 1, ..., m , i ¹ k, con S = U Syi S m + 1 = S


=1
yo

• El problema de la mochila de varios períodos (PKMP)


Es un modelo con aplicaciones en programación industrial y mercados de capitales (ver también
Salkin [1975]).

metro

(PKMP1) Maximizar z = ∑∑ cjxj


k= 1 j ∈Rk

sujeto a:
yo

∑∑ w j x j £ b yo i = 1, ..., m
k= 1 j ∈Rk

x j Î {0, 1}, j Î R k , k = 1, ..., m

Página 183

176 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

yo

donde para i , k = 1, ..., m , i ¹ k, con S yo


= U Ry kS = S m con R i Ç R k = Æ, para i ¹ k.
k= 1

El problema de programar tareas con fechas límite es un caso especial de


período. En este caso, hay n tareas a realizar en una máquina con un tiempo de procesamiento
inversión asociada igual at j y una ganancia resultante de p j . Las limitaciones de tiempo están representadas por d j
³ t j para todas las tareas j , j = 1, ..., m . Si una tarea se termine a tiempo, entonces el beneficio p j se realiza
la devolución es nula si no. Si las tareas se vuelven a indexar para que:

d 1 £ d 2 £ ... £ d n

podemos reformular PKMP1 de la siguiente manera:

norte

(PKMP2) Maximizar z = ∑ pjxj


j= 1

sujeto a:
yo

∑ tjxj£di i = 1, ..., n
j= 1

x j Î {0, 1}, j = 1, ..., n .

donde x i = 0 si la tarea viola la restricción de tiempo y x i = 1 si está a tiempo. En este caso R i = {i} y S = {1, ..., i }
para i = 1, ..., n y m = n .

• El problema de la mochila cuadrática (PKQ)


Este problema generaliza la mochila multidimensional 0-1 para que las variables sean enteros y el
La función objetivo es una función cuadrática. Este modelo se aplica en:

• Estudio de escenarios de inversión de capital (Djerdjour et al. [1998]).


• Ubicación de estaciones de recepción terrestres para comunicaciones por satélite (Witzgall [1975]).
• Ubicación de estaciones de autobuses y puentes móviles para acceso a aeronaves ( dedos ) (Billionnet y
Calmels [1996]).

• Ubicación de estaciones de medición pluviométrica y selección de carteras de inversión


(Laughhunn [1970]).

• Enrutamiento de mensajes por satélite con limitación de memoria (Billionnet et al. [1989]).
Gallo y col. (1980) formulan el PKQ de la siguiente manera:

norte

(PKQ) Maximizar z = ∑ q ii x i + ∑ q ij x i x j
=

https://translate.googleusercontent.com/translate_f 153/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
yo 1 1≤ <≤ijn
sujeto a:
norte

∑ wixi£b
= 1
yo

x i Î {0, 1}, i = 1, ..., n .

Página 184

PROGRAMACIÓN COMPLETA Y PROGRAMACIÓN DINÁMICA 177

norte

Donde el coeficiente q ij y el valor b son no negativos y enteros tales que 0 ∑


<< segundo w i . PKQ es
yo= 1

NP-completo, porque para el caso donde q ij = 0 se reduce al PK tradicional. Este problema ha sido estudiado
dado por varios autores como Carter (1984), Barahona et al. (1989), Pardalos y Rodgers (1990), Billion-
net et al. (1994), Chardaire y Sutter (1995) y Holmberg et al . (2000).
Para ejemplificar el uso del modelo PKQ, examinaremos el enrutamiento de mensajes por satélite
limitación de memoria lite propuesta por Billionnet et al. (1989). Este problema tiene una descripción
bastante interesante y rico. Suponiendo que un satélite de comunicaciones tiene un
trabajo por hacer, este programa se divide en tareas T = {1, ..., n }, la pregunta es cómo
Asignar estas tareas entre el procesador satélite y el procesador terrestre. Típicamente,
Los dolores son homogéneos, pero las tareas obviamente requieren un tiempo de procesamiento diferente. O
el costo de la tarea de procesamiento i en el procesador j es conocido e igual a e ij . Cada tarea que requiere el uso de
un segmento m i de la memoria del procesador. El procesador satélite tiene un límite de memoria
igual a M y el procesador de tierra tiene una capacidad ilimitada. Capacidades
para el flujo de datos entre la tierra ´ satélite y satélite ´ también se consideran las conexiones terrestres
(además de la posible demanda generada a través del satélite). Si las tareas i y j son transmitidas, a continuación, c ij re-
tiene un costo de comunicación conocido entre las tareas i y j cuando no están asignadas en el
mismo procesador (costo solo para cambiar). El problema se define como el objetivo de minimizar
costos totales de comunicación al cumplir con las condiciones límite para la memoria del procesador
satélite. Billionnet y Camels (1996) formulan el problema de la siguiente manera:

norte norte norte - 1


yo
⎛ e yo l - e yo 2 + ⎞
(PKSat) Maximizar z = ∑ y yo 2 - ∑ x yo⎜

∑ c ij + ∑ c ij ⎟

yo= 1 = 1
yo Ji= + 1 j= 1

+ dos ∑ c ij x i x j
1≤ijn
<≤

sujeto a:
norte

∑ mixi£M
= 1
yo

x i Î {0, 1}, i = 1, ..., n .

donde x i = 1 si la tarea i se asignó al procesador del satélite i y 0 si se asignó al procesador en


Tierra.

• Algoritmos de solución
Los trabajos de Wolsey (1988) y Martello y Toth (1990) presentan una extensa bibliografía que resulta
me varios enfoques. De forma resumida podemos clasificar los principales algoritmos de solución,
como se hace normalmente, en los enfoques exacto y heurístico como se muestra en la Tabla 5.3.

TABLA 5.3 ALGORITMOS DE SOLUCIÓN PARA PK

Problema Año Investigador Trabajo

Enfoque exacto

1973 Ingargiola y Korsh Algoritmos de reducción


Problema
1974 Horowitz y Sahni Enumeración implícita
Mochila
1975 Ahrens y Finke Programación dinámica

1977 Martello y Toth Enumeración implícita

https://translate.googleusercontent.com/translate_f 154/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
Página 185

178 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

TABLA 5.3 CONTINUACIÓN

Problema Año Investigador Trabajo

Enfoque exacto

1977 Martello y Toth Enumeración implícita

1978 Zoltners cama y desayuno

1978 Martello y Toth cama y desayuno

1980 Toth Programación dinámica

1980 Bullets y Zemel cama y desayuno

1981 Martello y Toth B&B y Relajación Lagrangiana

mil novecientos ochenta y dos Fayard Relajación lagrangiana

1983 Maculan Relajación lagrangiana

1984 Pintor Método dual para relajación lineal


Problema
1984 Camerini y Vercellis Mochila en estructura matroid
Mochila
1985 Martello y Toth cama y desayuno

1987 Dudzinski y Walukiewicz Varios métodos exactos

1988 Djerdjour et. al . sustituto de relajaciones

1996 Bagchi et. Alabama. Relajación lineal

1996 Amado y Barcia Límites para la mochila matroid

Enfoque heurístico

1975 Ibarra y Kim Heurística de IK

1975 Sahni Heurística SA - O ( n 3 )

1979 Lawler Mejora de la heurística de IK

1981 Revista y Oguz MO Heurística

4 Transformando problemas de programación completos en problemas de mochila

Considere el problema clásico de programación completa (PPI) de la siguiente manera:

norte

(PPI) Maximizar z = ∑ cjxj


j= 1

sujeto a:
norte

∑ w ij x j = b i , i = 1, 2, ..., m
j= 1

x j ³ 0 y entero

0£xj£uj

donde u j es un límite superior para la variable x j con valor entero y todos b i y w ij son igualmente
toda la res. Para que el modelo PPI sea equivalente al modelo PKI, es necesario poder transferir
para formar PPI en PK eliminando dos diferencias básicas:

Página 186

PROGRAMACIÓN COMPLETA Y PROGRAMACIÓN DINÁMICA 179

1. Las restricciones de PPI son estrictamente iguales.


2. PPI tiene m restricciones.

La primera diferencia se puede eliminar fácilmente mediante la inclusión de variables de holgura y la


recálculo del límite superior. La segunda diferencia se puede eliminar con el siguiente procedimiento:
Reemplazamos las restricciones m del modelo PPI por solo una moda:

norte

https://translate.googleusercontent.com/translate_f 155/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

∑ wjxj£b
j= 1

x j Î {0, 1}, j = 1 , ..., n.

donde cada w j tiene un valor entero. Los dos problemas son equivalentes porque tienen la misma función objetivo.
y todas las soluciones viables al conjunto de restricciones de PPI también son viables para PKI, y
ce-versa. Vamos a ejemplificar el proceso de agregar dos restricciones en una, al
Población de los límites y valor del vector w j . Aquí hay dos restricciones:

norte

∑ r j x j = segundo 1
j= 1

norte
∑ sjxj=b2
j= 1

Así que hagámoslo:

norte

m1= ∑ [Máximo (0, s j )] U j - b 1


j= 1

norte

m2= ∑ [Mínimo (0, s j )] U j - b 1


j= 1

m = Máximo ( m 1 , | m 2 |)

Y podemos reemplazar las dos restricciones con la siguiente restricción derivada de los valores anteriores:

norte

∑ ( r j - Ms j ) x j = b 1 + Mb 2
j= 1

donde M es cualquier número entero tal que | M | > m .

5.2.2 - Descripción general de los métodos de solución para PPI


Existen varias técnicas desarrolladas para buscar la solución completa a los problemas de programación.
definición lineal, de la cual podemos mencionar:

Técnicas de enumeración:

- Separación y valoración progresiva o Branch-and-Bound (B&B).


- Enumeración implícita.
- Restricciones sustitutas .

Página 187

180 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

Técnicas de corte:

- Cortes enteros (primarios y duales).


- Cortes combinatorios.
- Cortes de intersección.
- Método de descomposición de Benders.

Técnicas híbridas:

- Rama y corte.
- Teoría de grupos.

En la mayoría de ocasiones, las técnicas de solución están especializadas para los muchos tipos de productos.
problemas de programación, desarrollando enfoques y algoritmos específicos para cada situación
perro. Ahora presentaremos dos técnicas exactas ampliamente utilizadas para resolver problemas PLI.

5.2.3 - Bifurcación y límite

El método denominado Branch-and-Bound (B&B) se basa en la idea de desarrollar una enumeración


de candidatos apunta a la solución óptima completa de un problema. El término rama se refiere a la
hecho de que el método se divide en el espacio de la solución. El término encuadernado enfatiza que la prueba de
La realidad de la solución utiliza límites calculados a lo largo de la enumeración. Definiendo:

https://translate.googleusercontent.com/translate_f 156/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

( P ) = Maximizar { cx | Ax = b , x ³ 0, x Î Z + }
y
( P ) = Maximizar { cx | Ax = b , x ³ 0, x Î R + }

También definiendo V * ( P ) y V * ( P ) los valores de las funciones objetivo en el óptimo de ( P ) y ( P ) respectivamente


te tenemos:

V*(P)£V*(P)

Considerando cualquier solución viable ~ x de (P) y llamando a V x (~) el valor de la función objetivo
vo en el punto ~ x , entonces:

V (~ x ) £ V * ( P )

y entonces V * ( P ) es un límite superior para ( P ) y cualquiera de sus soluciones viables. Si x es la solución


óptimo de ( P ) tal que x j no es entero tendremos:

(5,1)
xj³ ⎣ ⎦x j
+1oxj£ ⎣⎦ xj

en cada solución viable de ( P ). Por tanto, el problema ( P ) se puede dividir en dos nuevos problemas
( P 1 ) y ( P 2 ) en las que la envolvente convexa C de ( P 1 ) È ( P 2 ) o Conv (( P 1 ) È ( P 2 )) está estrictamente contenida
en la envolvente de ( P ) o Conv (( P 1 ) È ( P 2 )) Ì Conv (( P )).
Ejemplifiquemos el proceso de dividir la envolvente convexa de ( P ) con el siguiente ejemplo:

Maximizar z = 5 x 1 + 8 x 2
sujeto a:
z = x1+ x2£ 6
z 5x 1 + 9 x 2 £ 45
z x1, x2Î Z +

Página 188

PROGRAMACIÓN COMPLETA Y PROGRAMACIÓN DINÁMICA 181

Que se puede representar gráficamente como en la Figura 5.3. La solución óptima continua del
9 15 1
blema se encuentra en: x = ; X dos= lo que lleva a z = 41 . Desarrollando la idea de separación de
1
4 4 4
envolvente convexa en relación a la variable x 2 podemos organizar la siguiente ecuación disyuntiva:

⎢ 15 ⎥ ⎢ 15 ⎥
x 2 ³ ⎣⎢ ⎦⎥ + 1 ³ 4 o x 2 £ ⎣⎢ 4 ⎦⎥ £ 3
4

X2

Soluciones completas

LA
z = 5x + 8x
1 dos

segundo

5x +1 9x = 45 dos

x+
1 x = 6 dos

O C X1

FIGURA 5.3 Solución gráfica del ejemplo.

La ecuación anterior produce dos restricciones disyuntivas que, cuando se agregan al problema original
nal son capaces de crear dos nuevos problemas que ya no tienen la óptima solución continua en su
envoltura convexa.
La Figura 5.4 muestra el efecto de aplicar la ecuación disyuntiva generada en relación a la variable x 2 , en la
ejemplo.

https://translate.googleusercontent.com/translate_f 157/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

X2

()P 1

LA

segundo

()P 2

O C X1

FIGURA 5.4 Resultado de la rama (división o rama).

Con la disyunción en mente, el problema original se reducirá a dos nuevos problemas.


pero, a saber:

Página 189

182 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

( P 1 ) Maximizar z = cx ( P 2 ) Maximizar z = cx
sujeto a: sujeto a:
Hacha £ b Hacha £ b
0 0
x yo
x yo £ ⎣⎦ x yo £ ⎣ x⎦yo +1

xiÎZ xiÎZ

La estrategia de separación crea problemas nuevos y más restringidos que normalmente serán más
solución fácil. En el ejemplo, el problema ( P ) se divide en dos problemas ( P 1 ) y ( P 2 ) siendo x 2 el valor
seleccionado para la separación. La estrategia de separación se puede volver a aplicar a estos problemas en
función, por ejemplo, de la variable x 1 . Enumeraremos a través de un árbol las posibilidades de solución.
problemas que se generarán mediante la división de ( P ). En el árbol de la Figura 5.5, cada nivel representa
hay una separación o rama en relación a una variable.

P0

x 1 = 2,25 x 2 = 3,75
z = 41, 25

x 2 ³ 4.0 x 2 £ 3,0

P2 P1
x 1 = 1,8 x 2 = 4.0 x 1 = 3,0 x 2 = 3,0
z = 41 z = 39

x1 ³ 2.0 x 1 £ 1.0

P4
P3
x 1 = 1,0 x 2 = 4,25
Impracticable
z = 40,4

x 2 ³ 5,0 x 1 £ 4.0

P5 P6
x1=0 x2=5 x 1 = 1,0 x 2 = 4.0
z = 40 z = 37

FIGURA 5.5 Ejemplo de árbol de rama .

Para comprender el efecto de la cota , suponga que hemos elegido la secuencia de ramas de la
Figura 5.6, no resolviendo los problemas marcados:
*
Las soluciones continuas son un límite superior para el valor de z 0 , en las condiciones establecidas en
vértices del árbol, mientras que las soluciones completas generan un límite inferior. Como ( P 4 ), un problema con
solución continua, tiene Z = 40, 4 y ( P 5 ), un problema con una solución completa, tiene Z = 40, el problema
( P 6 ) ya no necesita ser resuelto, ya que entre 40, 4 y 40 no hay posibilidad de otra
* £ 40, 4). El problema ( P 2 ), con z = 41, puede dar lugar, sin embargo, a
solución completa mejor que 40 (£ 40 z 0

sigue siendo un problema con una solución completa de valor 41 (£ 40 z 0 *£ 41), que requiere desarrollo

de ( P 3 ). De manera similar, ( P 0 ), con z = 41, 25 también puede dar lugar a un problema con la solución
https://translate.googleusercontent.com/translate_f 158/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

valor 41 (£ 40 z 0 *£ 41, 25), que requiere el desarrollo de ( P 1 ).

La reducción por el límite inferior ( límite ) de un solo vértice del árbol de enumeración de ejemplo
puede parecer pequeño, pero debemos recordar que este problema también es pequeño. En tantos casos
realidades, se muestra el poder de simplificación del límite inferior (o superior en el problema de minimización)
significativo, siendo extremadamente útil en el proceso de solución.

Página 190

PROGRAMACIÓN COMPLETA Y PROGRAMACIÓN DINÁMICA 183

P0

x 1 = 2,25 x 2 = 3,75
z = 41, 25

x 2 ³ 4.0 x 2 £ 3.0

P2
P1
x 1 = 1,8 x 2 = 4.0
Espere
z = 41

x 1 ³ 2,0 x 1 £ 1.0

P4
P3
x 1 = 1,0 x 2 = 4,25
Espere
z = 40,4

x 2 ³ 5,0 x 1 £ 4.0

P5
P6
x1=0 x2=5
Espere
z = 40

FIGURA 5.6 El efecto de reducir el límite .

Uno de los puntos fundamentales para el éxito del B&B es la calidad del límite generado por la solución
todo. En diversas situaciones, estos límites se pueden alcanzar mediante procedimientos heurísticos.
La calidad del límite alcanzado suele depender, para cada problema, de la
el árbol de búsqueda. Básicamente, existen dos estrategias principales de división o rama . LA
La figura 5.7 muestra la apariencia de los árboles desarrollados mediante la búsqueda en profundidad y la búsqueda en
anchura.

P0
P0

P1 P2

P1 P2

P3 P4

P3 P4 P5 P6
P5 P6

Búsqueda de profundidad Búsqueda de ancho

FIGURA 5.7 Estrategias de división.

El B&B es una técnica de amplia aplicación. La idea general está sujeta a numerosas adaptaciones y estrategias de
Implementación. Básicamente, los aspectos involucrados son:

Técnicas para desarrollar el árbol de enumeración (elección del problema):


- Búsqueda en profundidad.
- Amplia búsqueda.
- Variantes híbridas.

Página 191

https://translate.googleusercontent.com/translate_f 159/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
184 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

Técnicas de formación de árboles (elección de la variable de separación):


- Variante de Dank (1960).
- Variante de Land y Doig (1965).
- Variante de Spielberg (1968).
- Método de Sanciones (1965).
- Método de Taha (1971).
- Estrategias dinámicas (1976).
- Otras variantes.

Técnicas complementarias para la obtención de los límites:


- Relajación lineal (ver Pirce [1964], Bagchi et al . [1996], Pardulos et al .
[1996]).
- Relajación lagrangiana (véase Fisher [1981], Fisher [1985] y Beasley [1985],
Desrosiers y col. [1988], Kohl y Madsen [1997] y Holmberg y Yuan [2000]).
- Algoritmos heurísticos y metaheurísticos (ver Puckinger [2004]).
- Cortés.

4 variante húmeda
Este autor propone que la variable a elegir para la división en un determinado nivel del árbol es la que
tienen el residuo más grande en relación a la solución completa, es decir, considerando que ~ x j es la variable que es
cosecharemos para la separación propuesta por la ecuación (5.2), entonces:

~x j = Máximo {( x j - ë x j û)} y {( x j - es x j ù)} (5,2)

Si la solución continua del nodo a expandir se presenta como en la Figura 5.8 (a), entonces, por
propuesto por Dank, el nodo ~ x j será x 2 , ya que tiene un residuo igual a 0,75, mayor que el de x 1 .

Pn Pn

x 1 = 7,25 x 2 = 11,75 x 1 = 7,25 x 2 = 11,75

X o X ? res ( X ) = 0,25
1 dos 1
res ( X ) = 0,75
dos

(Los) (SEGUNDO)

FIGURA 5.8 Estrategias de división de humedad.

4 variante Land y Doig


Este enfoque sugiere que el árbol de enumeración se amplíe con varios valores simultáneos
para la variable de división, como se muestra en la Figura 5.9.

4 variante de Spielberg
Desarrolla el nodo con el valor z * más alto y el calculado más recientemente, utilizando Land y
Doig para aumentar la eliminación de espacio continuo alrededor del nodo buscado. Es una busqueda
en profundidad asociados a los criterios Land y Doig.

4 Método de sanciones
Esta estrategia se puede describir en los siguientes pasos:

Página 192

PROGRAMACIÓN COMPLETA Y PROGRAMACIÓN DINÁMICA 185

X2

Pn

x 1 = 7,25 x 2 = 11,75

x 2 <_ 10 x 2 > _ 12

x 2 = 11

X1

https://translate.googleusercontent.com/translate_f 160/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

FIGURA 5.9 Estrategias de división de tierras y Doig.

• Determina una estimación de la disminución en la función objetivo cuando forzamos a las variables a
asumir valores enteros.

• Elija el nodo de la lista de nodos abiertos con la disminución estimada más baja (utiliza un pivote
teamento asociado a la variable ~ x j ).

• Aproveche las posibles reducciones cuando la estimación de disminución exceda el límite inferior
cadena.

5.3 - PROGRAMACIÓN DINÁMICA


La programación dinámica es una técnica que se utiliza para optimizar los procesos de decisión de varias etapas.
etapas. A un proceso de toma de decisiones de varias etapas lo llamamos uno que puede ser
número de pasos o etapas secuenciales. Las alternativas incluidas en la realización de una pasantía
se llaman decisiones . La condición del proceso dentro de cada etapa se llama estado. Cada
etapa incluye tomar una decisión que puede o no cambiar el estado del proceso, pero que,
en teoría, representa una transición entre el estado actual y el estado futuro del proceso. Un proceso
El proceso de toma de decisiones de varias etapas se denomina finito cuando solo hay un número finito de etapas en el
proceso y un número finito de posibles estados asociados con cada etapa. Dentro del proceso de múltiples etapas
El objetivo del tomador de decisiones es encontrar una política óptima (también llamada
óptimo) en relación con la rentabilidad obtenida de las decisiones. Se determina un proceso de decisión de múltiples etapas
si el resultado de cada decisión se conoce con exactitud. La figura 5.10 muestra la imagen del
toma de decisiones en varias etapas:
La determinación de una política óptima para un proceso de toma de decisiones en varias etapas es teóricamente
basado en el principio de optimalidad de Bellman, que se puede enunciar de la siguiente manera:

Una política óptima presenta la propiedad de que,


a pesar de las decisiones tomadas para asumir un estado
particular en una determinada etapa, las decisiones restantes de
de este estado debería constituir una política óptima.

El principio de Bellman se parece a la estrategia codiciosa o miope, que determina


que la decisión a tomar en cada etapa es siempre la que produce el mayor aumento de la
mejoramiento. La estrategia codiciosa trata todos los procesos como si fueran de varias etapas y considera todos
toma de decisiones solo dentro de las condiciones vigentes para las variables en la pasantía. En caso de que el proyecto
problema abordado para ser realmente susceptible a la descomposición de múltiples etapas y el proceso de decisión a ser

Página 193

186 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

Etapa n Prácticas norte


+1

Decisión estado norte


+1
Estado n

Proceso de decisión

FIGURA 5.10 Un proceso de decisión de múltiples etapas .

las características de la función de evaluación, completamente independiente en cada etapa, la estrategia rectora
losa se confunde con el de la programación dinámica y la solución a través del algoritmo codicioso conduce al óptimo.
Esto sucede cuando el problema se basa en un matoide (una estructura de independencia -
Ver el anexo). Este caso particular resume toda la posibilidad de similitud entre los Bell-
hombre y estrategia codiciosa .

https://translate.googleusercontent.com/translate_f 161/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
Para implementar el principio Bellman, en la práctica se parte de la última etapa de un proyecto.
proceso con n etapas y se determina la mejor política para salir de esa etapa y completar el
proceso. Luego pasa del final al comienzo del proceso, etapa tras etapa, repitiendo el
razonamiento. En cada etapa, para cada estado, se determina la mejor política para salir de la etapa
y completar el proceso, asumiendo que las etapas anteriores se han completado en un
estupendo. Los cálculos siempre se utilizan de una etapa a la siguiente. Los elementos correspondientes
correspondientes a la última etapa del proceso suelen obtenerse directamente. Los otros elementos
los elementos se calculan de forma recursiva. La expresión de recurrencia depende del problema y debe ser
obtenido para cada tipo de proceso de múltiples etapas. Si queremos solucionar el problema DIM:

(DIM) Optimizar z = f 1 ( x 1 ) + f 2 ( x 2 ) + ... + f n ( x n )


sujeto a:
x 1 + x 2 + ..... + x n £ b
xiÎÁ+

en el que las funciones posiblemente no lineales f 1 ( x 1 ) , f 2 ( x 2 ) , ..., f n ( x n ) se conocen a partir de una variable,
b es un valor entero y no negativo conocido y el problema se puede modelar como un multiproceso
puesta en escena. La etapa 1 implica la decisión sobre la variable x 1 , con una contribución resultante de f 1 ( x 1 ) .
Los estados son 1, 2, 3, ...., b , que representan los valores posibles para el número de unidades disponibles
para la asignación. Considerando:

uº variable de estado cuyos valores especifican los estados.


m j ( u ) th retorno óptimo para completar el proceso comenzando en
etapa j con estado u .
d j ( u ) º decisión tomada en la etapa j que obtiene m j ( u ).

Para el modelo DIM los valores de m j ( u ) vendrán dados por la siguiente expresión:

m n ( u ) = genial { f n ( x )}
0≤≤ X tu

Página 194

PROGRAMACIÓN COMPLETA Y PROGRAMACIÓN DINÁMICA 187

que conduce a la ecuación de recurrencia:

m j ( u ) = genial { f j ( x ) + m j +1 ( u - x )}
0≤≤ X tu

*
Considerando el vector de decisión óptimo x = 1xx* , * *
dos, ..., x n que toma el criterio de decisión de asumir el
z * valor , los componentes del vector se pueden encontrar de forma secuencial con la siguiente recurrencia:

*
x 1 = d 1 ( b );
* *
x2 =d2(b-x1 )
.... = .......
* * * *
x n = d n ( b –x 1 - X dos - ... - x n- 1)

Para comprender la aplicación del principio Bellman, presentaremos ahora algunas


algunos ejemplos prácticos:

4 Ejemplo 1: Camino más corto


A pesar de la eficiencia del algoritmo de Dijkstra para el camino más corto (ver Capítulo 6), este problema
tiene una solución muy interesante cuando se aborda mediante la técnica de programación dinámica
aquí. En el gráfico de la Figura 5.11, el problema propuesto es encontrar el camino más corto entre
perros A y J.

segundo 8 Y

6 6
4 9
H

5
10 8

LA 5 C 8 F J

12
7 5

3 yo
13
9

https://translate.googleusercontent.com/translate_f 162/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
3

re 11 GRAMO

FIGURA 5.11 Gráfico del ejemplo 1.

Como el gráfico de la Figura 5.11 es un gráfico en capas (cualquier gráfico se puede transformar en
un gráfico en capas - ver Hu [1982]), podemos descomponer el problema de encontrar la mayoría
entre los vértices A y J en un proceso de toma de decisiones de varias etapas. Las fases de decisión del
problema se muestran en la Figura 5.12.
De hecho, varios problemas de decisiones secuenciales admiten un gráfico de toma de decisiones separado
similar al gráfico de ruta más corta. En este sentido, estudiar la aplicación de la programación dinámica
La forma más corta es estudiar el caso de muchos otros modelos. Aplicar directamente el principio
Pío de Bellman al problema, estableceremos las condiciones para la toma de decisiones en la primera fase
(fase final del camino) del problema de varias etapas. La figura 5.13 destaca las posibilidades de políticas
tiempo óptimo de llegada a los vértices H e I, comenzando en J, considerando que el camino a los vértices en
también se llevará a cabo de manera óptima:

Página 195

188 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

4 3 dos 1

segundo 8 Y

6 6
9
4
H
5
8
10
LA 5 C 8 F J
12
7 5

3 yo
13
9
3

re 11 GRAMO

FIGURA 5.12 Fases de decisión del camino más corto.

1
8

yo

FIGURA 5.13 Primera fase de decisión: posible política para los vértices H e I.

Con la toma de decisiones realizada en la fase 1 podemos, a partir de la política óptima para H e I, calcular
la política óptima para E, F y G, como se muestra en la Figura 5.14.
A partir de los vértices E, F y G podemos desarrollar la tercera fase de decisión. La figura 5.15 muestra
que la información contenida en la primera fase (vértices H e I) ya no es necesaria para ello.
Finalmente, podemos completar los cálculos determinando el camino más corto y su valor (la etiqueta
de A), como se muestra en la Figura 5.16.

4 Ejemplo 2: El problema de selección de proyectos


Las fases de toma de decisiones más habituales están asociadas a una única variable. En este sentido, cada etapa
le permite analizar la política óptima para una variable. Sea el siguiente problema:
Un inversor tiene 3 unidades de capital que se pueden invertir en 3 actividades diferentes
productivo. Para cada actividad productiva se espera un cierto rendimiento del capital, que es función de la

https://translate.googleusercontent.com/translate_f 163/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
cantidad invertida en la propia actividad. Los montos de capital se refieren a lotes de acciones y
por lo tanto, puede considerarse completo. Los ingresos obtenidos a cambio son independientes entre
sí mismo. La Tabla 5.4 muestra el panorama del retorno de la inversión dentro de cada proyecto productivo.

Página 196

PROGRAMACIÓN COMPLETA Y PROGRAMACIÓN DINÁMICA 189

14 14

Y
dos 1 Y

8 8
6
9
H H
17 17
10 8

F J F J

12
5

yo yo
13
3 5 5

GRAMO GRAMO
8 8

Cálculo final para los vértices E, F y G Rutas asociadas con la política óptima

FIGURA 5.14 Segunda fase de decisión: política para los vértices E, F y G.

22 3 14
22
14

segundo Y
segundo 8 Y

6
H

17 15 17
15 5

C F J
C 8 F

7
yo

re GRAMO
re 11 GRAMO
8
8
19 19

Cálculo final para los vértices B, C y D Rutas asociadas con la política óptima

FIGURA 5.15 Tercera fase de decisión: política para los vértices B, C y D.

4 22

segundo segundo Y

4 H
20 15
15
20 J
LA C F
LA 5 C

yo

5
3
re GRAMO
8

re

19

Cálculo final para el vértice A Ruta más corta

FIGURA 5.16 Fase de decisión final.

Página 197

190 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

https://translate.googleusercontent.com/translate_f 164/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

TABLA 5.4 SITUACIÓN INVERSIÓN X RENTABILIDAD

Cantidad de recursos Ingresos


aplicado (10 3 reales) Proyecto 1 Proyecto 2 Proyecto 3

0 0 0 0
1 dos 1 3

dos 4 5 5
3 6 6 6

Para este problema definiremos la variable de decisión x j , j = 1, 2, 3, como la cantidad de recurso


aplicado en el proyecto productivo j , x j Î {0, 1, 2, 3}.
Tenemos una restricción para este problema: la cantidad total de capital disponible que no se puede
exceder las 3 unidades. La función objetivo es discontinua y no lineal y se puede representar mediante:

z=f1(x1)+f2(x2)+f3(x3)

con los valores de la tabla.


De esta forma, podemos formular el problema de selección y asignación en proyectos de la siguiente manera:

(Proyecto_1) z = ∑ fj(xj)
j= 1

sujeto a:
x1+x2+x3£3
x j ³ 0 y entero j = 1, 2, 3.

Decisiones :

x j º cuánto se asignará al proyecto j.

Pasantías :

k = 0, antes de cualquier decisión.


k = 1, después de decidir el valor de x 1 .
k = 2, después de decidir el valor de x 2 (e x 1 ).
k = 3, después de decidir el valor de x 3 (e x 1 y x 2 ).

Estados:

Están definidos en cada etapa por el capital aún disponible para su aplicación.

Proceso :

El inversor, capital disponible y proyectos.

De manera similar al ejemplo 1, podemos construir un diagrama que nos permita seguir gráficamente
el comportamiento de estado-etapa del proceso. Representaremos los valores del capital
dentro de rectángulos. La política óptima estará representada por una trayectoria o ruta en el diagrama.

Página 198

PROGRAMACIÓN COMPLETA Y PROGRAMACIÓN DINÁMICA 191

0 0 0

1 1

dos dos

https://translate.googleusercontent.com/translate_f 165/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

0 3 3

k=0 k=1 k=2 k=3


FIGURA 5.17 Diagrama de estado-etapa.

capaz de etiquetar el nodo final con el valor más alto posible. Los cálculos se realizarán paso a paso,
como en la gráfica del camino más corto, aprovechando todas las conclusiones obtenidas en cada etapa
para la toma de decisiones en etapas anteriores.
Colocaremos junto a la esquina superior derecha de cada rectángulo el valor de retorno correspondiente al
toma de decisiones asociada. La solución comienza en la última etapa al decidir la variable x 3 .
El rendimiento obtenido con una inversión en el proyecto 3 (variable x 3 ) es la columna del proyecto 3 en la Tabla 5.4. LA
La transición de la etapa 2 ( k = 2) a la 3 ( k = 3) decide la variable 3. Las posibilidades de esta decisión pueden
resumido en la Figura 5.18.

0
0 0 0

3
1 1

5
dos dos

6
0 3 3

k=0 k=1 k=2 k=3

FIGURA 5.18 Primera fase de decisión: política para la variable x 3 .

Las opciones para la variable x 2 se pueden analizar en la Figura 5.19, desde la primera fase de decisión.
Finalmente, al llegar al análisis de x 1 , encontramos la política óptima (trayectoria) de la Figura 5.20.

Página 199

192 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

0 0
0 0

3 3
1 1

5 5
dos dos

8 6
3 3

k=1 k=2

FIGURA 5.19 Política óptima para x 2 .

0 0
0 0 0

3 3

https://translate.googleusercontent.com/translate_f 166/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
1 1

5 5
dos dos

8 8 6
0 3 3

k=0 k=1 k=2 k=3

x 1= 0 x dos
= dos x 3= 1

FIGURA 5.20 Diagrama final del ejemplo 2.

4 Ejemplo 3: El problema de la producción y el almacenamiento


Un fabricante de vagones de ferrocarril firma un contrato con una empresa ferroviaria
para el suministro de 100 vagones refrigerados durante un período de cinco años. En enero de cada año es
Se prevé la entrega de 20 vagones. El costo de producción anual por lote de 10 vagones, según proyecciones
departamento de ingeniería, debe variar según se especifica en la Tabla 5.5.

TABLA 5.5 COSTOS DE PRODUCCIÓN DE VAGONES

Producción anual 0 1 dos 3 4 5

Costo (unidad monetaria) 5 12 dieciséis 19 21 22

Página 200

PROGRAMACIÓN COMPLETA Y PROGRAMACIÓN DINÁMICA 193

La capacidad de almacenamiento del fabricante es de 4 lotes (40 vagones), con


agregue mantenimiento, movilización del área y seguridad, una unidad monetaria por lote almacenado
por año.
El fabricante inicia la producción el 10 de enero y finaliza el 31 de diciembre, con costos
Los costos de almacenamiento del lote a lo largo del año de producción ya se calculan en la Tabla 5.5. En el
no hay vagones refrigerados en stock y no hay interés en
los vagones permanecen después de la finalización del contrato. Establecer la política óptima de producción, entrega y almacenamiento
para la industria contratada.

Decisiones :

x j º número de lotes a producir en el año j , j = 1, 2, 3, 4, 5

Pasantías :

k = 0, antes de que se produzca cualquier lote.


k = j , después de decidir el valor de x j .

Estados:

Número de lotes en stock al final de cada etapa, según Tabla 5.6.

TABLA 5.6 STOCK DE VAGONES

k Estados viables
0 0
1 0123
dos 01234
3 01234
4 012
5 0

Variable de decisión auxiliar

u j el número de lotes almacenados al comienzo del año j , j = 1, 2, 3, 4, 5

https://translate.googleusercontent.com/translate_f 167/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
Restricciones
5

∑ x j = 10
j= 1

0 £ x j £ 5 y todo
0 £ u ya £ 4 y todo
u1=0
u6=0

Proceso :
El fabricante, el cliente, la capacidad de fabricación y el stock.

Podemos formular el problema de planificación de la producción y almacenamiento de la siguiente manera:

Página 201

194 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

Mín z = ∑ fj(xj,uj)
j= 1

sujeto a:
5

∑ x j = 10
j=1

0 £ x j £ 5, j = 1, ..., 5
u j+1 = x j + u j - 2
0 £ u j £ 4, j = 1, ..., 6
u1=0
u6=0
x j ³ 0 y entero, j = 1, ..., 5
u j ³ 0 y entero, j = 1, ..., 6

El problema se puede representar mediante el diagrama de la figura 5.21. La representación está en


función de la variable stock. Las variables u 1 = u 6 = 0. Del diagrama tenemos u 2 = 3, es decir, en la primera
Durante el año se producirán cinco unidades, se entregarán dos y se mantendrán en stock tres. u 3 = 1 significa que
en el segundo año no habrá producción. u 4 = 1 implica que en el tercer año se producirán cinco más
unidades que, sumadas a una en stock, acumularán seis lotes. Cómo se entregarán dos lotes

42 dieciséis
4 4

47 35 21
3 3 3

50 35 23 7
dos dos dos dos

55 39 27 13
1 1 1 1

69 56 43 28 dieciséis
0 0 0 0 0 0

k=0 k=1 k=2 k=3 k=4 k=5

u2 tú 3 tú 4 tú 5 tú 6

Año 1 dos 3 4 5

Producción 5 0 5 0 0

https://translate.googleusercontent.com/translate_f 168/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

FIGURA 5.21 Solución del ejemplo 3.

Página 202

PROGRAMACIÓN COMPLETA Y PROGRAMACIÓN DINÁMICA 195

al final del tercer año, quedarán cuatro en stock. A partir de entonces, las dos próximas entregas
será servido por la acción. La tabla año / producción resume el valor de las variables x .
La programación dinámica es una técnica ampliamente utilizada para la solución de modelos combinatorios.
ríos (ver Haims y Freeman [1970], Psaraftis [1980], Carraway et al. (1989), Potts et al. (1995), Faaland y
Brigs [1984]).

5.4 - SOLUCIONES HEURÍSTICAS PARA PLI


Mientras que los problemas lineales continuos tienen un algoritmo muy eficiente para
solución exacta, los problemas lineales discretos, excepto en algunos casos particulares, generalmente carecen
igualmente. El estudio de Garey y Johnson (Garey y Johnson [1979]) es un hito para comprender
de los obstáculos que se interponen entre una posible solución teórica a un problema de programación
información discreta y su implementación práctica a través de los instrumentos computacionales actuales.
El corazón de la dificultad del abordaje exacto de los problemas llamados NP-arduos, que, por cierto,
representan una gran parte de los problemas PLI realmente interesantes, está en la explosión combinada
de métodos enumerativos. Es fácil ver que un árbol B&B puede involucrar un número
el orden de los nodos, donde n representa la altura (distancia entre el nodo raíz y el nodo más extremo, también
hoja de árbol) del árbol de enumeración. Para que podamos comprender mejor esta dificultad
resolveremos el siguiente problema (PAT):

(PAT) Maximizar z = x 1
sujeto a:
2x1+2x2+2x3=3
x 1 , x 2 , x 3 Î {0, 1}

Como vimos en el ítem 5.1, PAT es un modelo que pertenece a la clase de problemas de mochila. Si
decidimos resolver PAT usando una estrategia básica de B&B, el árbol de enumeración
sería el que se representa en la Figura 5.22.

P0
X1 = 1 X dos= 1/2

x£20 x2³1

P1 P6
X1 = 1 X 3 = 1/2 X 1 = 1/2 X dos= 1

x£30 x3³1 x£10 x1³1

P2 P3 P7 P 10
Impracticable X 1 = 1/2 X3 = 1 X dos= 1 X 3 = 1/2 Impracticable

x£10 x1³1 x£30 x3³1

P4 P5 P8 P9
Impracticable Impracticable Impracticable Impracticable

FIGURA 5.22 Árbol B&B de PAT.

Página 203

196 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

Para concluir que PAT no era viable, se tuvieron que desarrollar 11 problemas. Es fácil demostrar que
https://translate.googleusercontent.com/translate_f 169/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
n+ 1

este algoritmo aplicado a un problema con n variables desarrollará al menos alrededor de 2 dos nosotros.
Si el problema tiene 201 variables (los problemas reales pueden ser del orden de miles o miles
millones de variables), entonces el árbol será del orden de 2 100 nudos. Una computadora capaz de examinar 1.5
billones de nudos por segundo de ese árbol tardarían unos 537 millones de años en agotar todos
posibilidades existentes !! A pesar de todos los avances en las técnicas actuales que, obviamente, harían
en lugar de desarrollar el árbol de enumeración PAT completo para determinar la inviabilidad de la
problema, la dificultad impuesta por la explosión combinatoria de este tipo de problemas aún
malo. Ante esta realidad, en los últimos años ha surgido una importante
conjunto de técnicas y algoritmos computacionalmente eficientes que no garantizan la
solución óptima de todo el problema de programación lineal. Estos algoritmos se denominan heu-
rísticos o aproximados (para más detalles ver adjunto, complejidad de algoritmos).
El término heurística se deriva del griego heuriskein, que significa descubrir o encontrar. Pero el
de la palabra en la investigación operativa va un poco más allá de su raíz etimológica. Podemos decir eso
una heurística, en el sentido dado al término, se refiere a un método de búsqueda de soluciones en el que
no hay garantía de éxito. El éxito del método puede expresarse cuantitativa o cualitativamente.
de nuevo. En un problema de optimización, el éxito se puede representar obteniendo la solución
estupendo. Algunos autores creen que la posibilidad de falla es amplia incluso para obtener
una solución viable. No compartimos esta opinión. Definiremos el término de la siguiente manera:

Una heurística es una técnica que busca lograr una buena solución
utilizando un esfuerzo computacional considerado razonable, siendo
capaz de garantizar la viabilidad o la optimización de la solución
encontrado o, en muchos casos, ambos, especialmente en
ocasiones en las que esta búsqueda comienza desde un
solución viable cercana a la óptima.

Históricamente, la heurística ha comenzado su desarrollo a partir de problemas específicos.


Las primeras heurísticas reportadas en la literatura estaban destinadas a resolver problemas específicos y no
por regla general, podían utilizarse en otros problemas. El clásico
teamento son un buen ejemplo de esto.
También podemos considerar que los primeros métodos generales clásicos se asociaron con
estrategias de enumeración incompletas, solución parcial o relajaciones. Entre las muchas clasificaciones
posible para la heurística, sugerimos la constante en la Figura 5.23.
Usando un diagrama similar al sugerido en el ítem 5.2, podemos examinar el comportamiento
típico de una búsqueda heurística miope. La figura 5.24 representa, dentro de los círculos, el valor final
de la solución obtenida en la etapa i de la búsqueda. En este caso, podemos visualizar el esfuerzo de búsqueda en la medida
en el que se exploran las posibles combinaciones entre las variables n y n - 1. El gráfico es fácil
notable que, a medida que crece el número de opciones, representado por la longitud de las opciones,
columnas del diagrama, el esfuerzo crece exponencialmente. En el caso de la Figura 5.24, solo la vecindad
se explora la solución (o configuración) (la de mayor valor en la etapa i de la búsqueda). Entender-
le dimos a la vecindad de una configuración las configuraciones que difieren de la configuración base por
valor asignado a una variable.
Por supuesto, podemos mejorar el examen de soluciones vecinas y reducir el grado de miopía de
Toma de decisiones. La figura 5.24 muestra esta posibilidad. En ese caso, la exploración ahora se extiende al
vecindad de dos configuraciones (las dos mejores según el criterio del valor de f ( s )). La penalidad
que debemos pagar por la eliminación de la miopía es el crecimiento en el número de configuraciones admitidas
como candidatos para el examen. Obviamente, si miramos todos los ajustes, encontraríamos el
solución óptima, pero es exactamente este enorme trabajo lo que queremos evitar. Hay dos
mentos que permitan la gestión del riesgo de no encontrar la solución óptima:

Página 204

PROGRAMACIÓN COMPLETA Y PROGRAMACIÓN DINÁMICA 197

Procedimientos
Aproximados

Heurísticas Relajaciones

Estocástico Clásicos Analógicas Lagrangeano Lineal

- Miope

• Constructivo
- Anneling simulado - Redes neuronales
• Por economía
- Búsqueda tabú - Computación evolutiva - Subgraduado

https://translate.googleusercontent.com/translate_f 170/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
- Busqueda local - Ascenso doble
• Clásico • Algoritmos genéticos - Ajuste múltiple
• Método descendente
• Reactivo • Búsqueda de dispersión
• Método aleatorio
- GRASP • Colonia de hormigas
- Fraccionamiento /

Agrupamiento

FIGURA 5.23 Clasificación de aproximaciones aproximadas.

dieciséis
13
11
10
9 9
8
7
6
4

0
1 dos 3 4 s

FIGURA 5.24 Toma de decisiones miope.

• Intente examinar un número creciente de combinaciones entre las variables seleccionadas en


una determinada etapa de la decisión y las variables de las etapas siguientes (intensificación o
mejora de la calidad de la solución).

• Buscando considerar un número creciente de variables en cada nivel (diversificación o


rango de búsqueda [diámetro]).

Podemos percibir visualmente cómo la inclusión de la segunda configuración parcial más valorada
en cada nivel (diversificación) aumenta con el número de combinaciones para definir la configuración
ción S (escala) representada por flechas. El aumento en el esfuerzo de búsqueda trae sus resultados: la
las decisiones 1 y 3 de la figura 5.25 ya no pueden considerarse simplemente codiciosas. Si el procedimiento adoptado
lo suficientemente inteligente podemos encontrar el equilibrio entre la diversificación y la intensificación
cación, caminar económicamente en relación al esfuerzo de búsqueda, a través del máximo (o mínimo)
local) hasta el máximo (o mínimo) global, como se muestra en la Figura 5.26. En este caso, la inteligencia fue
expresado por la estrategia de explorar las tres soluciones más interesantes en cada etapa. Desafortunadamente,
no podemos deducir a priori cuál sería esta estrategia inteligente, ya que depende de la
cada problema.

Página 205

198 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

f S ()

22
20 20

dieciséis dieciséis
13
11
10 9 9
8
7
6
4

0
1 dos 3 4 s

FIGURA 5.25 Incremento de la decisión miope.

Máximo
Global
Máximo
Máximo
Sitio
f S () Sitio 26
24
23
22
20 20

dieciséis dieciséis
13

https://translate.googleusercontent.com/translate_f 171/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
11
10
9 9
8
7
6
4

0
s
1 dos 3 4

FIGURA 5.26 Esfuerzo óptimo para la búsqueda heurística.

La figura 5.23 busca resumir los diversos enfoques conocidos para los procedimientos heurísticos.
de solución. En la línea clásica, es bastante común, como se señaló anteriormente, que la heurística
explorar la estructura del problema caso por caso, sin que normalmente se pueda definir claramente
una estrategia de solución universal. En el caso de las llamadas metaheurísticas, que implican llamadas
heurística estocástica y analógica, siempre hay una estrategia de solución general,
simplemente adaptándolo al caso específico. La heurística moderna ha despertado un interés creciente
la comunidad científica, tanto por la buena retribución dada al compromiso objetivo, como en virtud
calidad de las soluciones encontradas, convirtiéndola en una alternativa cada vez más interesante
para la solución de la mayoría de las aplicaciones reales de modelos combinatorios. Entre los mas recientes
trabajo extenso y extenso en el área, destacamos Aarts y Lenstra (1996), Osman y Kelly (1996), Osman y
Lapport (1996), Rayward-Smith et al. (1996). Entre las heurísticas modernas se encuentran:

Página 206

PROGRAMACIÓN COMPLETA Y PROGRAMACIÓN DINÁMICA 199

4 Algoritmos genéticos
Los algoritmos genéticos se detallan en el Capítulo 8, sin embargo, la Tabla 5.7 enumera una serie de
trabajo reciente aplicado a problemas de optimización combinatoria.

TABLA 5.7 APLICACIONES DE ALGORITMOS GENÉTICOS EN OPTIMIZACIÓN COMBINATORIA

Año Autores Que se acerca

1985 Grefenstette AG aplicada a la solución Travelling Salesman

1990 Karr y Goldberg AG aplicados a la separación de minerales

1991 Davidor AG aplicada a la robótica

1996 Arslan y col . AG en la optimización de circuitos VSLI

1996 Notredame y Higgins AG en la solución del alineamiento genético

1996 Jakobs AG en la solución de alojamiento poligonal

1996 Anderson y Gerbert AG en el diseño de alas de aviones

1997 Mavridou y gorriones AG y recocido simulado: problema de diseño

1997 Zhou y Gen AG en la solución de árbol de expansión con restricción k

1997 Ingleston y Smith AG en asistencia de combate aéreo

1998 Kim y col. AG en el equilibrio de las líneas de montaje

1998 Pierrot y Hinterding AG en la solución de programación completa mixta

1999 Azadivar y Tompkins AG en la simulación del proceso de optimización

2000 Dellaert y col. AG en la optimización de lotes de producción

2001 Preston y Kozan AGs en la distribución de contenedores en puertos

2001 Vico y col. GA en la planificación de la cirugía

2002 Gantovnik y col. AG en optimización de laminado

2002 Ray y Mahajan AG en configuración de sensor óptima

2002 Lambert AG en el desmontaje de equipos electrónicos

2002 Sato y col. AG en diseño arquitectónico

2002 Carter y Ragsdale AG en la planificación de periódicos

2002 Aytug y Saydam AG en la optimización de problemas de localización

2003 Hageman y col. AG y tabú en la optimización de la pintura

2003 Zhou y col . AG en la planificación de asignación de bicriterio

https://translate.googleusercontent.com/translate_f 172/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

2003 Hassini y Vickson AG en la optimización de la asignación de carrusel

2003 Valdés et al. AG en la optimización térmica de turbinas de gas

2003 Topcuoglua y col. AG en la localización de enrutadores de red

2003 Park y col. AG en la solución de planificación de tareas

2003 Ho y Ji AG en optimización de chips electrónicos

2004 Lim y col. AG en la optimización de la mezcla de hormigón

2004 Liew GA en la optimización de problemas geométricos

2004 Chung y Jung AG en la optimización de accesorios de seguridad

2004 Kasprzyk y Jaskua AG híbridos (Simplex) para análisis químico

Página 207

200 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

TABLA 5.7 CONTINUACIÓN

Año Autores Que se acerca

2004 Mohamed Jenkins AG en configuración de membrana

2004 Fühner y Jung AG en la optimización del crecimiento cristalino

2004 Kulkarni y col. AG en la optimización microestructural de aleaciones

2004 Ozturk y col. AG en la estimación de la "exergía" del hogar

2004 Cordoba et al. AGs en la optimización de sistemas contra incendios

2004 Aydin y Yildirim AG en el control de un sistema láser

2004 Ge y Chen AG en el control de naves espaciales

2004 Shin y col . AG en la reconfiguración de redes eléctricas

2004 Shokooh-Saremi y col. AG en la optimización de polarizadores

Entre los trabajos más recientes y completos en el área, Goldberg (1989), Davis
(1991), Whitley (1994), Aarts y Lenstra (1996), Osman y Kelly (1996), Osman y Lapport (1996), Ray-
Ward-Smith y col. (1996), Reeves (1996), Bäck et al . (1997), Fogel (1998), Vose (1998), Mitchell (1999), Co-
ley (1999), Spears (2000), Spears et al . (2000), Mühlenbein y Mahnig (2001), Lance (2001), Blum y Roli
(2003). La Tabla 5.8 presenta trabajos que introducen temas innovadores al enfoque.

TABLA 5.8 ALGORITMOS GENÉTICOS

Año Autores Que se acerca

1986 Grefenstette Optimización de los parámetros de control de AG

1987 Davis Algoritmos genéticos y anneling simulado

1990 De Jong GA aplicadas al aprendizaje

1993 Juliff Técnica de cromosomas múltiples

1996 Wineberg y Oppacher AG con intrones

1997 Ronald y col . Técnica de cromosomas múltiples

1997 Hinterding Autoadaptación y cromosomas múltiples

2000 Cantú-Paz AG paralelos

2001 Beyer Teorías para estrategias de evolución

2001 Jansen y Wegener Utilidad de la población GA

2002 Beyer y col. Metodología de análisis para GA

2003 Aickelin y Bull GA coevolucionarios

2003 Ghosh y col. Estudio de la influencia de las generaciones en la evolución

La Tabla 5.9 presenta trabajos en aplicaciones originales que se correlacionan con la optimización.
combinacional

TABLA 5.9 ALGORITMOS GENÉTICOS APLICADOS A PROBLEMAS ESPECIALES

Año Autores Que se acerca

1991 Caldwell y Johnston GA en la identificación de rostros humanos

1991 Gibson y Byrne AG aplicada a la composición musical

https://translate.googleusercontent.com/translate_f 173/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

Página 208

PROGRAMACIÓN COMPLETA Y PROGRAMACIÓN DINÁMICA 201

TABLA 5.9 CONTINUACIÓN

Año Autores Que se acerca

1996 Hanebeck y Schmidt AG en el entrenamiento de redes neuronales

1998 Nayebzadeh y col. GA en la determinación de la arritmia fetal

1998 Reid AG en la construcción de redes de Petri

2003 Ng y Perera, AG en el control de la calidad del agua

2004 Zhang y col. AG en la estimación de la transferencia de calor

2004 Ozturk y col. AG en la estimación de la "exergía" del hogar

2004 Roychowdhury AG en el diagnóstico de enfermedades

2004 Sarkar y Modak AG en la optimización del funcionamiento de biorreactores

2004 Kim y col. AG en la estimación de la emisión de radiación

2004 Mwembeshi y col. AG en el control del pH del reactor

2004 Imai y col. AG en la operación de terminales portuarias

4 Genética híbrida
Los algoritmos genéticos son una fuente prometedora de hibridación, una mezcla de técnicas aproximadas. los
Los trabajos que se enumeran en la Tabla 5.10 exploran esta posibilidad.

TABLA 5.10

Año Autores Que se acerca

1990 Ulder y col. Genética con búsqueda local

1992 Schaffer y col. Genética y redes neuronales

1994 Fleurent y Ferland Genética híbrida para asignación cuadrática

1996 Kim y Lee Genética con "aprendizaje por refuerzo"

1997 Tsutsui y Ghosh Genética con búsqueda local

1998 Cotta y col. Genética híbrida para mochila 0-1

2000 Él y Mort Híbrido en la solución de red de comunicaciones

2000 Hiroyasu y col. Genético con recocido simulado

2000 Matsumura et al. Genética con búsqueda tabú

2001 Luo et al Genética con programación lineal

2001 Savchenko y Schmitt Genético con recocido simulado

2001 French y col. Genética y B&B

2002 Lim y Yuan Genética híbrida aplicada a la asignación cuadrática

2003 Ting y col. Genética con búsqueda tabú

Enlaces útiles:
http://garage.cps.msu.edu/papers/papers-index.html
http://www-illigal.ge.uiuc.edu/index.php3
http://www.shef.ac.uk/~gaipp/links/

Página 209

202 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

4 Algoritmos meméticos (Genética con búsqueda local, Genética Lamarckiana, Genética Baldwin)
nianos).

https://translate.googleusercontent.com/translate_f 174/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
Los algoritmos meméticos utilizan el concepto de "evolución cultural". En este paradigma la adaptabilidad
de un individuo puede ser modificado por acciones no programadas en su repositorio genético. Para usted-
Para modular el efecto de la acción "cultural", los algoritmos meméticos se permiten utilizar principalmente
técnicas de búsqueda local para mejorar el cromosoma. La llamada alteración memética del genoma se produce fuera de
el mecanismo clásico de reproducción / mutación de algoritmos genéticos. Mejoras en los cromosomas
debido a la búsqueda local se conservan, caracterizando lo que se llama convencionalmente
Evolución “lamarkiana” - evolución que hereda los éxitos obtenidos por los individuos. Bajo varios puntos
Los algoritmos de visualización memética pueden considerarse una forma híbrida de algoritmos genéticos.
La Tabla 5.11 resume algunos trabajos de aplicación en Optimización combinatoria en los que el
Se utiliza el enfoque memético / lamarckiano.

TABLA 5.11 APLICACIONES DE ALGORITMOS MEMÉTICOS EN OPTIMIZACIÓN COMBINATORIA

Año Autores Que se acerca

1990 Ulder y col. Aplicado a la solución PCV

1992 Moscato y Norman Aplicado a la solución PCV

1997 Cotta y Troya Aplicación al problema de la mochila

1997 Dengiz y col. Aplicado a la confiabilidad en redes

1998 Charon y Hudry Al resolver implicaciones lógicas

1998 Morris y col. Modelado molecular

1999 Burke y Smith Aplicado al problema del plan de mantenimiento

1999 Tesfaldet y Hermosilla Aplicado a la solución PCV

2000 Knowles y Corne Optimización multiobjetivo

2001 Burke y col. Planificación del trabajo de enfermería

2002 Lim y Yuan Solución de la cuadrática de asignación

2002 Kersting y col. Solución al problema de conectividad

2002 Velenzuela y Smith Aplicación al sector de la distribución de energía

2003 Quintero y Pierre Designación de células en redes móviles

2003 Ljubic y Raidl Algoritmo gráfico

2004 Lima et al. Ruta de vehículos con flota heterogénea

2004 Krasnogor y Gustafson, Experimentación de autogeneración

2004 Berreta y Rodrigues Optimización de lotes de producción

La Tabla 5.12 presenta trabajos que desarrollan los fundamentos del enfoque.

TABLA 5.12 TRABAJOS ASOCIADOS CON LOS FUNDAMENTOS DEL ENFOQUE

Año Autores Que se acerca

1987 Hinton y Nowlan Evolución guiada

1988 Muhlenbein y col . Conceptos de evolución artificial

1989 Moscato Conceptos básicos de la metáfora

Página 210

PROGRAMACIÓN COMPLETA Y PROGRAMACIÓN DINÁMICA 203

TABLA 5.12 CONTINUACIÓN

Año Autores Que se acerca

1989 Jog y col. Mejora local

1994 Merz y Freisleben Descripción formal de un algoritmo memético

1994 Radcliffe y Surry Descripción formal de un algoritmo memético

1998 Ku y Mak Estudio del efecto Baldwin

1999 Merz y Freisleben, Estudio algorítmico

1999 Moscato Conceptos básicos de la metáfora

2000 Merz Profundizando el tema

4 Recocido simulado
La metáfora está respaldada por la distribución de Boltzman y tiene como objetivo simular un proceso de enfriamiento típico.

https://translate.googleusercontent.com/translate_f 175/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
pico de metales. La distribución de Boltzman especifica la probabilidad de alcanzar un nivel de energía
estrategia E = f (s) donde s es un estado del sistema, a una temperatura dada t . La tabla 5.13 resume algunos
trabajo sobre el tema y aplicado a problemas de Optimización Combinatoria.

TABLA 5.13 APLICACIONES DE RECOCIDO SIMULADO PARA OPTIMIZACIÓN COMBINATORIA

Año Autores Que se acerca

1953 Metropolis y col. Obra pionera

1982 Kirkpatrick y col. Obra pionera

1985 Cerny y col. Obra pionera

1984 Bonomi y Lutton Aplicado en la solución PCV

1986 Lundy y Mess Estudio de convergencia

1986 Bohachevsky y col. Aplicado a la optimización de funciones

1986 Mitra y col. Estudio de convergencia

1987 Laarhoven y Aarts Varias aplicaciones

1987 Wilhelm y col. Aplicado a la cuadrática de asignación

1988 Goldstein y Waterman Estudio del tamaño del vecindario

1989 Ingber Técnicas de mejora del desempeño

1989 Aarts y Krost Varias aplicaciones

1989 Johnson y col. Estudio algorítmico en diversas aplicaciones

1989 Osman y Potts Aplicación al taller de flujo de permutación

1990 Dueck y Scheuer Uso de "theershold accept"

1990 Eglese Varias aplicaciones

1991 Cheh y col. Barrios eficientes

1991 Yao Barrios extendidos

1993 Downsland Estudio algorítmico

1993 Osman Aplicación a la generación de rutas de vehículos

1994 Moccelin Comprar solución de secuenciación

Página 211

204 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

TABLA 5.13 CONTINÚA

Año Autores Que se acerca

1996 Bölte y Thonemann Hibridación con programación genética

1996 Andricioaei et al. Generalización del enfoque

1996 Desai y Patil Recocido simulado y búsqueda local

1996 Ingber Recocido simulado adaptativo

1997 Mavridou y gorriones Algoritmos genéticos y de recocido simulado

1998 Chiang y Russel Aplicación a la generación de rutas de vehículos

1998 Tracey et al. Pruebas de software

1999 Brooke y col. Recocido cuántico

2000 Kliewer y Tschöke Aplicaciones de la industria aérea

2000 Locatelli Condiciones de convergencia

2000 Hamam e hindi Distribución de módulos de programación

2000 Hiroyasu y col. Recocido simulado en arquitectura paralela

2001 Hindi y Mhlanga Solución de problemas de "Programación"

2002 Yarkhan y Dongarra Solución de problemas de "Programación"

2003 Serrurier et al. Solución completa de programación lineal

2003 Schwarzfischer Solución de problemas de "Programación"

2003 Bouleimen y Lecocq Resolución de problemas de limitaciones de recursos

2003 Gaetan y Yao Implementación múltiple

2003 Wrighton y DeHon Solución asistida

https://translate.googleusercontent.com/translate_f 176/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
2004 Neumann y Muncill Estimación de propiedades oceánicas

Enlaces útiles:
http://www.taygeta.com/annealing/simanneal.html

4 nubes de partículas (enjambre de partículas) y colonia de hormigas


Particle Clouds es una técnica de optimización estocástica basada en poblaciones desarrollada
por Kennedy y Eberhart (1995) inspirados en el comportamiento social de aves y bancos de peces.
Las colonias de hormigas es otra técnica estocástica que sigue la misma línea de biomimética social para
el caso del comportamiento de hormigas y termitas, presentado por Dorigo et al. (1991), Dorigo (1992). LA
La Tabla 5.14 resume algunos trabajos sobre el tema y aplicados a problemas de Optimización Combinatoria.

TABLA 5.14 APLICACIONES BIOMIMÉTICAS SOCIALES

Año Autores Que se acerca

1992a Colorni et al. Fundamentos de la colonia de hormigas

1992b Colorni y col. Propiedades de la colonia de hormigas

1994 Maniezzo y col. Colonia de hormigas para asignación cuadrática

1994 Arturo Colonia de hormigas en la solución PCV

1996 Dorigo y col. Fundamentos de la colonia de hormigas

Página 212

PROGRAMACIÓN COMPLETA Y PROGRAMACIÓN DINÁMICA 205

TABLA 5.14 CONTINUACIÓN

Año Autores Que se acerca

1997 Costa y Hertz Colonia de hormigas en coloración gráfica

1997 Kennedy y Eberhart Fundamentos de la nube de partículas

1998 Angeline Nubes de partículas con selección

1999 Gambardella y col. Colonia de hormigas para asignación cuadrática

1999 Taillard Fundamentos de la colonia de hormigas

1999 Clerc Nubes de partículas deterministas y adaptativas

1999 Dorigo y Di Caro Varios ejemplos

1999 Bullnheimer y col. Estudio computacional

1999 Yoshida y col. Nubes de partículas en el control de voltaje

2000 Dorigo y col. Conceptos de colonia de hormigas

2000 Stützle y Hoos Colonia de hormigas para el caso Max-Min

2001 Eberhart y Shi Aplicaciones para nubes de partículas

2002 Cordon y col. Revisión del enfoque de la colonia de hormigas

2002 Ray y Liew Nubes de partículas para multiobjetivo

2002a Parsopoulos y Vrahatis Revisión del enfoque de nubes de partículas

2002b Parsopoulos y Vrahatis Nubes de partículas para multiobjetivo

2002 Ciuprina y col. Nubes de partículas electromagnéticas

2002 Salman y col. Nubes de partículas para la asignación de tareas

2002 Laskari y col. Nubes de partículas para toda la programación

2002 Middendorf y col. Multicolonia de hormigas

2003 Abd-El-Barr Colonia de hormigas para circuitos digitales

2003 Bonabeau y col. Conceptos de nube de partículas

2003 Coello y col. Colonia de hormigas para circuitos lógicos

2003 Carbonato y Maniezzo Conceptos de colonia de hormigas

2003 Ting y col. Nube de partículas para generación de energía

2004 Maniezzo y col. Texto didáctico

2004 Onwubolu y Clerc Nube de partículas para perforación automática

2004 Chang y col. Nube de partículas para bioquímica

2004 Coello y col. Nube de partículas para multiobjetivo

https://translate.googleusercontent.com/translate_f 177/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

Enlaces útiles:
http://www.particleswarm.net/
http://www.swarm-bots.org/

4 estrategias de arranque múltiple y GRASP (procedimiento de búsqueda adaptativa aleatoria codiciosa)


Las técnicas de arranque múltiple se componen de procedimientos que, desde una solución dada hasta
el problema, encuentre una nueva solución viable. Luego, se examina la vecindad de la nueva solución generada
nada mediante un procedimiento de búsqueda local para intensificar el resultado. GRASP es una variante

Página 213

206 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

Multiart en el que se encuentran soluciones viables mediante un procedimiento casi glotón - es-
tocastic con sesgo codicioso. La Tabla 5.15 enumera trabajos que desarrollan la metáfora o representan
aplicaciones para la solución de problemas de optimización combinatoria.

TABLA 5.15 APLICACIONES GRASP

Año Autores Que se acerca

1989 Feo y Resende Obra pionera

1992 Betrò y Schoen Estudio sobre reglas de parada para arranque múltiple

1994 Boese y col. Multistar adaptable

1994 Li y col. GRASP para asignación cuadrática

1995 Battiti y Protasi Multistar reactivo

1997 Fleurent y Glover Multistar constructivo para asignación cuadrática

1997 Hickernell y Yuan Multistar para optimización global

1998 Atkinson GRASP para programación de vehículos

1998 Ciervo Estudio de reglas de parada para arranque múltiple

1998 Deshpande y Triantaphyllou GRASP para problemas de inferencia

1998 Resende GRASP para el problema de máxima cobertura

1999 Fleurent y Glover Arranque múltiple constructivo para asignación cuadrática

1999 Fernandez GRASP para diseño aerofotogramétrico

1999 Pardalos y col. GRASP para "Problema de conjunto de vértices de retroalimentación"

2000 Melián-Batista et al. Multistar de aplicación genérica

2001 Robertson GRASP para asignación multidimensional

2001 Brunato y Battiti GRASP para problemas de control de tráfico

2001 Hammer y Rader GRASP para cubrir problemas

2001 Jagota y Sanchis GRASP para problemas de clics máximos

2002 Schoen Resumen de los métodos de arranque múltiple

2002 Corberán et al. GRASP para cartero chino en gráfico mixto

2003 Martí Resumen de los métodos de arranque múltiple

2003 Chaovalitwongse y col. GRASP: enrutamiento de vehículos con ventana de tiempo

2003 Osman y col . (2003) GRASP para problemas de planaridad en gráficas

2003 Ahuja y col. GRASP para árbol generador mínimo calificado

4 Búsqueda tabú
Es una metaheurística basada en procedimientos de búsqueda locales enriquecidos por
manipulación de la memoria para evitar que las configuraciones ya examinadas sean reexaminadas durante
el desarrollo del algoritmo. La tabla 5.16 enumera trabajos que, o desarrollan la metáfora,
o representar aplicaciones para la solución de problemas de optimización combinatoria.

https://translate.googleusercontent.com/translate_f 178/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

Página 214

PROGRAMACIÓN COMPLETA Y PROGRAMACIÓN DINÁMICA 207

TABLA 5.16 APLICACIONES DE BÚSQUEDA DE TABU

Año Autores Que se acerca

1968 Glover Obra pionera

1987 Glover Obra pionera

1989 Glover Texto didáctico

1989 De Werra y Hertz Texto didáctico

1990a Glover Varias aplicaciones

1990b Glover Varias aplicaciones

1990 Hansen y Jaumard Tabú sobre la solución del problema de la satisfacibilidad

1991 Glover y Laguna Tabú para resolver el problema del empaque

1991 Taillard Tabulación para asignación cuadrática

1992 Faigle y Kern Estudio de convergencia

1992 Cook y Han Tabú para el problema del embalaje múltiple

1993 Glover y col. Profundizando el enfoque

1994b Glover Tabú para la programación no lineal

1994 Battiti y Tecchiolli Tabú reactivo

1995 Laguna y col . Tabú para el problema de asignación generalizado

1995 Battiti y Çela Búsqueda tabú reactiva

1996 Zachariasen y Dam Tabú geométrico PCV

1996 Kolohan y Liang Solución tabú para operaciones de perforación

1997 Cordeau y col. Tabú para las rutas periódicas de los vehículos

1997 Sharaiha y col. Tabu para una solución de árbol generador calificado

1997 Consiglio y Zenios Tabú para los modelos de licitación

1998 Thesen Tabú acercándose por los caminos más cortos

1998 Hao y col. Tabú para la asignación de frecuencias

1998 Woodruff Tabú con información seleccionada

1998 Løkketangen y Glover Tabú para programación mixta

1999 Gendreau y col. Tabú del árbol Steiner

1999 Nowicki Tabú para la tienda de flujo de permutación

2000 Yin Tabú para la aproximación de curvas digitales

2000 Cullenbine Tabú para la asignación de armas × objetivo

2000 Berger y col . Tabú para problemas de red

2000 Morley y Grover Tabú para problemas de red

2002 Crainic y Gendreau Tabú para el problema de las redes habilitadas

2002 Ware y col. Tabú para la generación automática de mapas

2002 Zhang y Sun Tabú para la selección de características.

2002 Yamamoto y col. Tabú de cartografía

2002 Klau y col. Búsqueda tabú guiada por un operador humano

Página 215

208 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

TABLA 5.16 CONTINUACIÓN

Año Autores Que se acerca

2002 Sait y Zahra Tabú para la optimización del circuito

https://translate.googleusercontent.com/translate_f 179/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
2003 Kulturel-Konak et al. Tabú para resolver la redundancia de asignación

2003 Blum y Roli Visión general

2003 Greistofer Búsqueda tabú y dispersa

2004 Riaz y col. Tabú para problemas de alineación

4 Búsqueda en vecindad variable (BVV) y descomposición en vecindad variable (DVV)

Las presentes metaheurísticas apuntan a examinar sistemáticamente las estructuras de los vecindarios. La mesa
5.17 enumera trabajos que desarrollan la metáfora o representan aplicaciones para la solución del proyecto
Problemas de optimización combinatoria.

TABLA 5.17 APLICACIONES DE BÚSQUEDA EN BARRIO VARIABLE

Año Autores Que se acerca

1996 Vahrenkamp Búsqueda aleatoria del problema de corte

1997a Hansen y Mladenovic Obra pionera

1997b Hansen y Mladenovic Trabajo conceptual

1997c Hansen y Mladenovic BVV para PCV con vecindario de 2 opciones

1999 Caporossi y Hansen BVV para gráficos en modelo energético

1999 Hansen y Mladenovi Trabajo didáctico

2001 Gonzáles y Pérez-Brito BVV para el problema de pedidos lineales

2001 Hansen y Mladenovi Aplicaciones industriales de BVV

2001 Hansen y col. Propuesta de DVV

2002 Lalonde y Gagnon BVV para patrones geométricos deformables

2002 Costa y col. BVV para el problema de ubicación del cable

2002 García-López et al. BVV para el problema de la p-mediana

2003 Avanthay y col. BVV para problemas de coloración de vértices

2003 Bräysy BVV reactivo para rutas de vehículos

2003 Burke y col. BVV para programar tareas de enfermería

2003 Hansen y Mladenovi Trabajo integral

2004 Fleszar y hindi BVV para el problema de la clase de "programación"

4 Búsqueda de dispersión y vinculación de rutas


Las metaheurísticas Scatter Search y Path Relinking están inspiradas en el mismo objetivo: basado en
en soluciones bien conocidas encontramos nuevas y mejores soluciones. Scatter Search propone hacer una
“Mezcla” de buenas soluciones utilizando el enfoque de algoritmos genéticos. Así que Scatter Search
sugiere que más de dos cromosomas se consideran donantes de material genético (padres)
para formar un cromosoma infantil. En el caso de Path Relinking, la técnica indica que, para un par dado
soluciones, se encuentra una secuencia de soluciones alteradas: soluciones intermedias o mixtas
- que representan una ruta de transformación desde la solución inicial a la solución de destino. Cuadro 5.18

Página 216

PROGRAMACIÓN COMPLETA Y PROGRAMACIÓN DINÁMICA 209

proporciona trabajos que desarrollan la metáfora o representan aplicaciones para resolver


optimización combinatoria.

TABLA 5.18 APLICACIONES DE BÚSQUEDA DE DISTRIBUCIÓN Y RELACIÓN DE RUTA

Año Autores Que se acerca

1994a Glover Trabajo pionero en búsqueda de dispersión

1997 Glover Enfoque general Búsqueda de dispersión y vinculación de ruta

1996 Kelly y col. Búsqueda dispersa para entrenamiento de redes neuronales

1996 Cung y col. Búsqueda de dispersión para asignación cuadrática

1996 Fleurent y col. Búsqueda de dispersión para optimización sin restricciones

1998 Reeves Algoritmo genético con cambio de ruta

2000 Laguna y Martí GRASP y cambio de ruta

2000 Glover y col. Fundamentos de la búsqueda de dispersión y la vinculación de rutas

https://translate.googleusercontent.com/translate_f 180/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
2001 Beausoleil Búsqueda de dispersión multicriterio
2001 Campos y col. Búsqueda de dispersión para el problema de clasificación lineal

2003 Laguna y Martí Texto para búsqueda de dispersión

2003 Glover y col. Texto para búsqueda de dispersión

2003 Greistofer Búsqueda de tabú y dispersión para enrutamiento de arco

2003 Oliveira y col. GRASP y enlace de ruta para asignación cuadrática

2004 Dell'Amico y col. Búsqueda de dispersión para P || Cmax

4 algoritmos culturales
Los algoritmos culturales (AC) se basan en la noción de que en las sociedades avanzadas el desarrollo
El desarrollo del individuo puede lograrse mediante la selección natural y las reglas de selección cultural. Cul-
en el sentido de algoritmos culturales, se ve como el conjunto de información acumulada por
experiencia de la sociedad de los individuos. Los algoritmos culturales proponen utilizar el dominio del conocimiento
"Cultura" para guiar su búsqueda estocástica. Los AC funcionan en dos espacios de
decisión de conocer: la población y el conjunto de creencias. La tabla 5.19 enumera los trabajos que, o desarrollados
desarrollar la metáfora, o representar aplicaciones para la solución de problemas de optimización combinatoria.

TABLA 5.19 APLICACIONES DE ALGORIMAS CULTURALES

Año Autores Que se acerca

1994a Reynolds Obra pionera

1994b Reynolds Obra pionera

1995 Reynolds y col. Aplicación a la manipulación de restricciones

2002 Coello y Becerra Aplicación a la optimización restringida

2002 Xidong y Reynolds Aplicación a la minería de datos

2004 Coello y Becerra Técnica de mapeo del espacio de creencias

Página 217

210 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

4 Algoritmos transgenéticos
La Transgenética Computacional (TC) replica el paradigma simbiótico, en el que criaturas de diferentes
estas especies intercambian información, posiblemente incluso material genético, con el fin de facilitar la adaptación al
medio ambiente. El proceso evolutivo de la TC se lleva a cabo en base al intercambio de información entre
poblaciones de individuos de diferente naturaleza. La población de cromosomas objetivo es el primer nivel
evolución, el nivel que da forma a la solución del problema. Una población de vectores de manipulación.
constituye el segundo nivel. Finalmente, un tercer nivel contiene las reglas que coordinan y alimentan la
simbiogénesis: el intercambio de información entre poblaciones. Los vectores de manipulación también se denominan
vectores transgenéticos y pueden transportar información obtenida a priori o durante la evolución
perro. Tenga en cuenta que en la TC los cromosomas no intercambian material genético entre sí, no hay proceso
reproducción clásica o recombinación. La información a priori puede provenir de varias fuentes, como
como conocimiento teórico y heurístico. La tabla 5.20 enumera trabajos que desarrollan la metáfora
out, o representar aplicaciones para la solución de problemas de optimización combinatoria.

TABLA 5.20 APLICACIONES DE TRANSGENÉTICA COMPUTACIONAL

Año Autores Que se acerca

2001 Gouvêa Obra pionera

2001 Goldbarg y col. Aplicación al problema de coloración de vértices

2001 Gouvêa y Goldbarg Aplicación a la cuadrática de asignación

2002 Goldbarg y Goldbarg Aplicación a la cuadrática de asignación

2002 Goldbarg y col. Aplicación a la explotación petrolera

2002 Gouvêa y col. Aplicación a la programación de sondas de producción

2002 Goldbarg y col. Aplicación a la ubicación de pozos petroleros.

2002 Castro y col. Aplicación de gas de elevación

2003 Goldbarg y col. Solicitud de PCV

2003 Ramos y col. Solicitud de PCV

https://translate.googleusercontent.com/translate_f 181/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
2004a Goldbarg y col. Aplicación a sistemas de cogeneración

2004b Goldbarg y col. Aplicación a la explotación petrolera

2004c Goldbarg y col. Aplicación al taller de flujo de permutación

2004d Goldbarg y col. Aplicación a la distribución de gas natural

2004 Leite y col. Aplicación a la distribución de videos

4 El paradigma hiperheurístico
En vista de la inexorable limitación de cualquier método heurístico aislado, en términos de solución
uso eficiente de NP-Arduous y otros problemas combinatorios, el paradigma hiperheurístico propone un
Arquitectura que permite la selección de algoritmos.
Básicamente, el paradigma es una arquitectura de toma de decisiones en la que se seleccionan las heurísticas.
y organizado por una capa superior compuesta por otras heurísticas. El enfoque
meta-heurísticas trabajando en conjunto con otras meta-heurísticas, sin embargo, en lugar de ser complementarias
dentro de un proceso de búsqueda, como se practica tradicionalmente en la heurística híbrida,
se orientan. Antes de la denominación de hiperheurística, la propuesta recibió otros nombres como
“Combinación de heurísticas” (Hart y Ross [1998]), “dirección heurística evolutiva” (Hart et al.
[1998]), “estrategia de evolución de las restricciones de satisfacción” (Terashima-Marin et al. [1999] o “algoritmo-
modelo evolutivo de múltiples etapas ”(Burke y Newall [1999]). La figura 5.27 resume la estructura general
de la propuesta del paradigma hiperheurístico. El enfoque se ha llamado recientemente híbrido
perheurístico (Burke et al. [2003a] y [2003b]).

Página 218

PROGRAMACIÓN COMPLETA Y PROGRAMACIÓN DINÁMICA 211

Hiperheurística

Flujo de información
extradominio

Barrera de dominio

Flujo de información
extradominio

Conjunto heurístico

h1 hn

Función de evaluación

FIGURA 5.27 Arquitectura para hiperheurística [01].

La figura 5.27 muestra que la arquitectura del paradigma separa el dominio del problema del dominio
hiperheurístico. La hiperheurística no tiene conocimiento del dominio del problema,
dándole la tarea de administrar la heurística a nivel de solución. El proceso de gestión se realiza de forma independiente
el problema tratado a nivel heurístico (Cowling et al [2002]). La única información
que surgen en el contexto de la hiperheurística son los datos que son comunes a los diversos tipos de problemas
pero ¿qué pasa con los datos que la hiperheurística decide registrar como parte de su estado interno? Por ejemplo,
una hiperheurística puede almacenar cuánto tiempo una heurística dada se usó en su última
si hubo un cambio en la función de evaluación cuando se llamó a la heurística o cuánto tiempo
el procesamiento ha pasado desde la última llamada de una determinada heurística. Las hiperheurísticas no lo saben
incluso qué problema está siendo resuelto por su heurística esclava.
Experimentos con búsqueda tabú (Burke et al. [2003a]) y algoritmos genéticos (Hart y
Ross [1998]).

4 Aprendizaje por refuerzo - Aprendizaje por refuerzo


Es un método estocástico y constructivo en el que se premian las mejores soluciones. los
Las nificaciones se utilizan para orientar la obtención de nuevas soluciones. Los fundamentos del enfoque estratégico
así descrito en Barto et al . (1981). La estrategia se utiliza ampliamente en robótica (Stone et al. [2001]).
La Tabla 5.21 resume las aplicaciones reportadas para resolver problemas de optimización combinatoria.

TABLA 5.21 APLICACIONES DEL APRENDIZAJE MEDIANTE EL FORTALECIMIENTO

Año Autores Que se acerca

1992 Barto Conceptos

1995 Dietterich y col . Aplicación a la programación de talleres

1996 Kaelbling y col. Revision de literatura

1997 Singh y Bertsekas Asignación dinámica de canales de telefonía celular

https://translate.googleusercontent.com/translate_f 182/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
1998 Moody y col. Solicitud de cartera de inversiones
1998 Sutton y Barto Trabajo didáctico

1999a Miagkikh y Punch Solución para optimización combinatoria

1999b Miagkikh y Punch Solución para optimización combinatoria

2002 Gosavi y col. Aplicación a la asignación de asientos en aviones

2002 Pontrandolfo y col. Gestión de la cadena de suministro

2004 Hong y Prabhu Control de producción y stock

Página 219

212 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

Las relajaciones son útiles tanto para la generación de soluciones aproximadas, como especialmente para la
disponibilidad de límites que se utilizan en algoritmos de solución exacta como B&B y otros.
Las relajaciones más utilizadas son las lineales y lagrangeanas.
La heurística clásica se desarrolla específicamente para un cierto tipo de modelo,
explorando, por regla general, sus peculiaridades. Para cada problema de optimización, por lo tanto, es posible
es posible desarrollar estrategias aproximadas que tengan en cuenta las particularidades del modelo. En el
En el presente trabajo abordaremos la heurística clásica principalmente para problemas de enrutamiento.
tapa, tapa, ubicación y conexión. Con un ejemplo complementario de uso de estas técnicas
problemas de optimización, enumeraremos a continuación algunos trabajos para problemas de optimización.
corte, empaque y carga, problemas que, aunque importantes, no serán
abordado en el texto:

4 Heurísticas para el problema de corte, empaque y carga

Johnson y col. (1974), Chistofides y Whitlock (1977), Steudel (1979), George y Robinson (1980), Coff-
man et al (1980), Sarin (1983), Wang (1983), Baker y Schwartz (1983), Chanzelle (1983), Roberts (1984),
Marcotte (1986), Voight (1987), Dagli y Tatoglu (1987), Farley (1988), Tsai et al . (1988), Schneider
(1988), Haessler (1988), Han et al. (1989), Daniels y Ghandforoush (1990), Yanasse et al. (1900), Haess-
ler y Talbot (1990), Gehring et al . (1990), Coffman y Shor (1990), Yanasse et al. (1990), Sweeney y Ha-
essler (1990), George (1992), Mohanty et al. (1994), Bischoff y Ratcliff (1995), Bischoff et al. (1995), Azar
y Epstein (1997), Coffman et al. (1997), Hifi (1997), Fayard et al. (1998), de Werra (1997), Csirik et al.
(1999), Vanderbeck (1999), Gradisar et al. (1999), Chu y Antonio (1999), Csirik et al. (2001), Hopper y
Turton (2001), Liang et al . (2002), Alvarez-Valdés et al . (2002), Valério de Carvalho (2002), Zhang et al.
(2002), Gradisar et al. (2002), Onwubolu y Mutingi (2003), Martello et al. (2003), Ragsdale y Zobel
(2004), Shahin y Salem (2004).

En la actualidad, los procedimientos heurísticos también se utilizan ampliamente junto con


métodos exactos, especialmente para producir soluciones y límites viables de buena calidad. Me gusta
objetivo de ejemplificar un algoritmo heurístico para resolver el problema de la mochila presentado
el llamado método miope o codicioso.

4 Heurística codiciosa para la solución (PK)

Algoritmo codicioso para PK

COMIENZO
Lea el vector de peso w j , el vector de costo c j y el término independiente b .
Inicializar variables z ¬ 0, x j ¬ 0, j = 1, ..., n
Cj Cj + 1
Ordene las variables para que: ≥ , j = 1, ..., n - 1
w j w j+ 1

Para j = 1 an mientras b ¹ 0, haga:

comienzo
⎡ ⎢ ⎥

⎢ X j ⎣⎢ b wj ⎦⎥
← -(
⎢ bbw × X );
j j
←+
⎢ zzcx
jj

Fin
Escribe { z, x j , j = 1, ..., n }
FIN

https://translate.googleusercontent.com/translate_f 183/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

Página 220

PROGRAMACIÓN COMPLETA Y PROGRAMACIÓN DINÁMICA 213

Esta es una heurística simple y compleja dominada por el procedimiento de ordenación, o


es decir, O ( n log 2 n ). Su relación de rendimiento es ½ (Fisher [1980]). La idea del algoritmo es básicamente
riega la mochila con los objetos más valiosos. Aplicaremos el procedimiento para encontrar una solución.
para la instancia de mochila representada por la tabla 5.22, con el valor del término independiente
igual a 14.

1. Lectura:
b = 14

TABLA 5.22 RELACIÓN DE ARTÍCULOS CON PESOS Y VALORES

j 1 dos 3 4 5 6 7 8 9 10 11 12 13 14 15 dieciséis

C 7 10 3 dos 4 12 3 5 8 9 7 dos 1 11 12 5

w 4 3 dos dos 7 3 4 3 6 7 9 4 10 1 5 dos

2. Pedido:

cj/wj 7/4 10/3 3/2 1 4/7 4 3/4 5/3 8/6 9/7 7/9 2/4 1/10 1/11 12/5 5/2

j 6 dos dieciséis 15 1 8 9 3 10 4 11 7 5 12 13 14

cj/wj 4 10/3 5/2 12/5 7/4 5/3 8/6 3/2 9/7 1 7/9 3/4 4/7 2/4 1/10 1/11

Para j = 1, .. n
b = 14; x 6 = ë 14 û = 4; z : = 0 + 7 ´ 4 = 28
3
b : = 14 - 12 = 2; x 2 = ë 2 û = 0; z : = 28 + 0 = 28;
3
b = 2 ; x 16 = ë 2 û = 1; z : = 28 + 1 ´ 3 = 31.
dos

5.5 - PROBLEMAS PROPUESTOS

1 - El problema de redondear soluciones completas J


Sea el siguiente programa:

Maximizar z = 2 x 1 + 3 x 2
sujeto a:
x 1 £ 4.2
x 2 £ 5.8
19 x 1 + 20 x 2 £ 156
x1,x2ÎZ+

que se puede representar gráficamente en la Figura 5.28.


Estudie la conveniencia de utilizar la técnica de redondeo de la solución completa para este problema.

Página 221

214 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

2 - El problema de la descarga de aire K


Después de un período de intensas lluvias, una vasta región del Amazonas se inunda mucho más allá del
Niveles normalmente permitidos. Varias ubicaciones están completamente aisladas en el acceso
por tierra. Las conexiones de barco son peligrosas ante el drenaje de los ríos. El gobierno resolvió
vino a proporcionar un puente de suministro que involucraba a Manaos y otras tres ciudades que
actuará como centros de distribución de medicamentos, productos básicos y combustible.

https://translate.googleusercontent.com/translate_f 184/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
La figura 5.29 muestra el mapa de la operación. Para realizar el transporte, el gobierno dispone de
dos tipos de aviones: el helicóptero Valente y el avión de carga Sucuri. Solo el helicóptero
Puede operar con una báscula, ya que solo abastece en Manaus. Sucuri tiene mayor autonomía y solo
Opera económicamente con dos escalas. Se reducen los costes (en reales) del kilómetro de vuelo
en la Tabla 5.23.
Sabiendo que Altamira necesita 10 toneladas de suministro diario, Tabatinga 21 toneladas y Humaitá 7
tonelada, y que, debido a la carga en Manaus, el suministro máximo que se puede enviar
helicóptero no supera las 15 toneladas. Formular demanda para minimizar costos
la operacion.

X2

9
x 1 = 4,2

6 C x 2 = 5,8

re 1 dos
3
segundo

X 1 = 156Xdos
19 +20

LA
O 4 6 X1

FIGURA 5.28 Entero PPL.

Manaus
Tabatinga
1.300 kilómetros

1.100 kilómetros

2.000 kilómetros
900 kilómetros
1.300 kilómetros

Altamira
1.800 kilómetros

Humaita

FIGURA 5.29 El mapa de operaciones.

Página 222

PROGRAMACIÓN COMPLETA Y PROGRAMACIÓN DINÁMICA 215

TABLA 5.23

Camino Valiente Anaconda

Vacío Cargado Vacío Cargado

Manaos Û Tabatinga 2, 5 3 dos 4

Manaos Û Humaitá dos 3 1,5 3, 5

Manaos Û Altamira dos 3, 5 dos 3, 5

Altamira Û Tabatinga - - - 3

Altamira Û Humaitá - - - 4

Humaitá Û Tabatinga - - - 2, 5

3 - El problema de las tarifas de alojamiento norte


Un cierto hotel con capacidad para 180 huéspedes distribuidos en 30 habitaciones individuales, 30 dobles y 30
triples tiene la intención de optimizar su política de precios. El hotel trabaja con cuatro tipos de clientes: tour

https://translate.googleusercontent.com/translate_f 185/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
(e), convenios (c), empresas (s) e individuos (a). Una consultora proporcionó una encuesta de
ecuaciones de demanda en función de los precios cobrados en relación a los clientes de excursiones y empresas
como sigue:

⎛ PAGS PAGS PAGS⎞ ⎛ PAGS ⎞


⎜ s + PAGS+ T ⎟e s p £ 100 - p ⎜ PAGS PAGS
y p £ 100 - + + T ⎟
⎝ dos ⎠ ⎝ s
3 4 4 dos⎠

Donde y P es el número de personas que compondrán una excursión según el p i o precio de los trimestres
habitaciones individuales, dobles y triples. Los precios pueden variar (en unidades monetarias) dentro de los siguientes
pistas:

20 £ p s £ 50
30 £ p d £ 80
£ 40 p T £ 90

Las convenciones tienen una demanda fija de 100 personas y requieren costos mínimos. Ocupar 20
habitaciones sencillas obligatoriamente. Las convenciones usan el salón de convenciones con una devolución de V
unidades monetarias. Cuando no se utiliza el salón, el hotel gasta R unidades monetarias
mantenimiento.
Los acuerdos con empresas garantizan la ocupación de 10 habitaciones simples a precio de mercado ( S p
³ 10).
Se sabe que los gastos prorrateados corresponden a los costos mínimos del precio de las habitaciones, que es
posible capturar 20 personas solas diariamente pagando el precio máximo de la mesa y ocupando salas
dobles y que al menos el 30% de las personas en excursiones se alojen en habitaciones individuales. Sabiendo que
Los tours con menos de cinco personas no son factibles y se pueden reservar habitaciones dobles o triples.
alquilado como simple (manteniendo los costos mínimos prorrateados). Establecer el programa de
explicación matemática para optimizar la ocupación hotelera.

Página 223

216 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

4 - El problema de las damas de ajedrez L


En un tablero de ajedrez vacío (estándar 8 ´ 8), se sabe que una asignación de una pieza de juego en
una casa negra vale el doble que una casa blanca. Determine la ubicación óptima para 8 (ocho) fichas
para que ninguno de ellos sea amenazado por los demás. Formule este problema como un PPL y el
beneficiarse con la ayuda del simplex.

5 - El problema de las piezas de ajedrez METRO


1 - Un jugador decidió distribuir las torres, alfiles y caballeros de una partida de ajedrez en un
para minimizar el número de casas no atacadas y no permitir que las piezas asignadas ataquen
emparejar directamente (considerando solo el ataque entre piezas de diferentes colores). Formule este pro-
problema como PPL y resolverlo con la ayuda del simplex.

2 - Formular y resolver el caso 1, considerando que el jugador puede tener tantas torres como quiera
y alfiles, pero las piezas son independientes, es decir, susceptibles de ser atacadas por piezas del mismo color.

3 - Formular y resolver el problema 2 considerando la casa de asignación de piezas como no casa


atacado.

6 - El problema del servicio bancario jubilado L


Cierto banco de una ciudad decidió redefinir su sistema de jubilación
agencias con el fin de maximizar la comodidad en el cuidado de estas personas mayores, ya que las medidas
La automatización y el acceso remoto no fueron suficientes para aliviar las dificultades en
equipo de mostrador. La demanda de servicio d i , i = 1, ..., n se discretizó dentro de n bloques geográficos.
cuadrado cos alrededor de 1.500 m en el lado, como se muestra en la Figura 5.30. Cada bloque fue considerado
en su centro de gravedad y representado por un nodo en un gráfico. Todos los nodos en este gráfico fueron
conectados por bordes a sus bloques vecinos (distancia de 1.500 metros entre cada nodo de la
discretización). Los nodos (bloques marcados), que incluían sucursales bancarias ya existentes, fueron
considerados como nodos de oferta, j = 1, ..., m , la oferta total de la agencia se cuenta como una oferta disponible
menos la demanda generada en su bloque de ubicación.
Sabiendo que la dirección del banco quiere:

https://translate.googleusercontent.com/translate_f 186/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
1.
2. Ningún
Ningún jubilado
jubilado tiene
gasta que
másrecorrer más demonetarias
de R unidades 4.500 m para
en ser atendido.
desplazamiento.
3. Que la demanda prevista por el área de financiamiento asignada a una agencia nunca exceda su oferta
nominal.

FIGURA 5.30 Discretización de demanda y servicio.

Página 224

PROGRAMACIÓN COMPLETA Y PROGRAMACIÓN DINÁMICA 217

Sabiendo también que para solucionar el problema de la demanda se puede ampliar una agencia ya tiene
uno existente a un costo de h j unidades monetarias por usuario, o implementar una nueva publicación que costará
porción fija de f j unidades monetarias, y cada usuario reasignado a estas estaciones de servicio
el sistema cuesta más c j unidades monetarias.
Sabiendo que el desplazamiento entre los nodos i y j del gráfico de discretización cuesta, en promedio, P ij ,
unidades monetarias, formulan el problema de minimizar gastos con la redefinición de la
servicio, abarcando la expansión de sucursales y la creación de puntos de atención en el banco.

7 - El problema de la distribución del agua K


Una empresa de agua y alcantarillado quiere implementar la red de suministro de agua de un vecindario
Recientemente ocupado y en proceso de urbanización. La figura 5.31 muestra que junto al barrio
una gran tubería que debe estar conectada a una red de distribución local que atraviesa las calles
el vecindario. Los costos de la red local son directamente proporcionales a la longitud lineal de las tuberías. LA
la red de agua no debe tener circuitos (tuberías conectadas de manera que formen un camino cerrado),
porque esta configuración, además de dificultar el mantenimiento, provoca problemas en el caudal de agua que acaba
Dañar las tuberías y las válvulas de presión. Formular el problema de la distribución del agua.
en todas las cuadras del barrio minimizando el costo total del sistema.

Límites de
Punto de llegada
proyecto
del aductor

FIGURA 5.31 Mapa de la red a implementar.

8 - El problema de los incendios forestales - Operación prolongada


norte
Tenga en cuenta las siguientes condiciones para el problema del ejemplo 7 en la página 57:

https://translate.googleusercontent.com/translate_f 187/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
Fase 2: Operación extendida

Cuando el programa de extinción de incendios de la fase 1 estaba a punto de implementarse y amaneció,


las condiciones climáticas en la zona del incendio han cambiado drásticamente. El fuego empezó a extenderse
a una velocidad insignificante impulsada por vientos de hasta 50 km por hora. Ahora ha pasado el tiempo
cruciales y las condiciones económicas del desastre ecológico se han vuelto predominantes. Ingenieros
los silvicultores calcularon el crecimiento global del área que será barrida por la operación a una tasa constante

Página 225

218 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

25% / hora. Las pérdidas también son directamente proporcionales a esta área y son
tabulado a R $ 10,00 por metro cuadrado de área que se alcanzará después de la expansión del fuego. Todas-
habían llegado los medios solicitados por los técnicos el día anterior y, además, una fuerza de reserva
no previsto. Un grupo de bomberos terrestres estará disponible en aproximadamente 2 horas. Este grupo
la capacidad de extinción de incendios puede aumentar en unos 20.000 m 2 / hora o utilizarse en acero
y reducir la expansión del fuego en aproximadamente un 0,5% por hora de trabajo. El costo operativo del grupo es
insignificante en el trabajo del acero y R $ 30.000 la hora en combate directo por riesgos personales
involucrado. Debido a un error de comunicación, llegaron 10 pilotos de helicópteros más con los aviones. Con
tantos pilotos de helicópteros resultó que también podían volar los aviones, con el
los pilotos de aviones no podían hacer lo contrario. La tabla 5.24 de disponibilidad es:

TABLA 5.24

Artilugio
Dispositivo Pilotos Operadores
Listo

Helicóptero AH-1 7 20
Avión tanque 5
14 22
Avión B67 5

Reformule el problema para minimizar los costos de la operación.

9 - El problema del profesor ocupado K


Un maestro recibió una oferta de trabajo en tres escuelas que son equivalentes en atributos como
enseñanza y oportunidad de mejora. Cada uno de ellos quisiera, si es posible, contratar
tenerlo a tiempo completo (dedicación exclusiva). Sin embargo, existen otras opciones para
Horas Laborales. Los módulos de trabajo son de ocho horas. La tabla 5.25 resume los diversos
propuestas que el profesor está examinando:

TABLA 5.25 PAGO EN CADA ESCUELA

# de módulos Escuela 1 Escuela 2 Escuela 3

1 105 135 150

dos 240 250 310

3 400 380 390

4 500 490 560

5 590 630 660

¿Qué esquema de trabajo maximiza el rendimiento financiero de su trabajo?

10 - El problema del repartidor de pizzas K


Un servicio de entrega rápida de pizza recibió un pedido urgente y especial. El pedido ha sido realizado
por un millonario hambriento y generoso. Si pueden entregar una pizza caliente y jugosa
gigante en solo cinco minutos tendrá una bonificación sustancial. La red de carreteras que separa el punto
donde se hace la pizza y su destino se representa en el diagrama de la Figura 5.32. En las calles aparece
el porcentaje de probabilidad de que le ocurra un problema al repartidor en ese tramo, lo que hace que
fecha límite. La figura 5.32 muestra la red de carreteras del problema.

Página 226
https://translate.googleusercontent.com/translate_f 188/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

PROGRAMACIÓN COMPLETA Y PROGRAMACIÓN DINÁMICA 219

7 dos

1 3 8
10

5 10 dos
25

Tienda 6 Cliente
8
25 7
15
15

20 8
dos 4 9
15

FIGURA 5.32 Rejilla de entrega de pizza.

Determine la ruta que maximice las posibilidades de que el repartidor de pizzas la entregue a tiempo.

11 - El problema de vender helado K


Una cadena de cafeterías tiene cuatro tiendas en una ciudad. Para hacer frente a la demanda de verano,
el superintendente regional de compras de la empresa adquirió siete envases de helado. Debido a la
En la ubicación de cada una de las sucursales existen diferentes potenciales para la venta de helados. En vista de
experiencia de ventas, el superintendente estimó la ganancia neta (en unidades monetarias) que sería
es posible obtener, dentro del horizonte habitual de ventas, en cada sucursal como sugiere la tabla 5.26:

TABLA 5.26 RENTABILIDAD DE LA INVERSIÓN.

Barras de merienda

# de contenedores Punta Negra Pirangi Neopolis Petrópolis

1 4 dos 6 1

dos 6 6 12 4

3 10 8 14 8

4 12 10 18 dieciséis

5 14 12 20 20

6 dieciséis dieciséis 22 21

7 18 20 22 24

Formule el problema de optimizar el beneficio total obtenido. Determinar la distribución óptima de los envases .

12 - El problema de la carpintería K
En una pequeña carpintería hay n tareas de corte a realizar. Cada tarea requiere p i minu-
para ser procesado en una máquina de sierra, i = 1, ..., n . Las tareas estarán listas para entregarse
a una máquina desde el tiempo a i y debe terminar hasta el tiempo b i (tiempos contados desde
inicio de las actividades diarias de carpintería). Formular el problema de minimizar el número de máquinas.
necesario para completar las n tareas.

Página 227

220 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

13 - El problema de la producción de turbinas K


Una industria fabrica tres tipos de turbinas de alta potencia (tipos I, II y III). Cada tipo de turbina
se puede vender por 150, 170 y 240 unidades monetarias, respectivamente. Las turbinas tienen tres
componentes críticos que se importan de empresas especializadas, a saber: el juego de cuchillas, rodillo
Inyectores e inyectores de combustible. La industria cuenta con cuatro proveedores de estos equipos, según
como se muestra en las Tablas 5.27 y 5.28:

TABLA 5.27

https://translate.googleusercontent.com/translate_f 189/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

Articulo
Eyector Juego de paleta Llevando
Proveedor

LA 6 - (18 CU) 40 - (1 CU) 280 - (1 CU)

segundo 4 - (20 CU) 60 - (1, 5 CU) 150 - (0, 8 CU)

C 6 - (17 CU) 100 - (2 u.m.) 120 - (1, 7 CU)

re 10 - (19 CU) 150 - (1, 7 CU) 170 - (1, 6 CU)

Cada turbina requiere las siguientes entradas:

TABLA 5.28

Entrada Conjunto Mano de obra


Eyector Llevando
Tipo de turbina de remos ( 0,01 UM / H x H )

yo 1 6 40 500 Hombre X hora

II 1 8 60 600 Hombre X hora

III dos 10 85 1200 Hombre X Hora

La industria dispone de 1.800 H X h para el montaje de las turbinas. También se sabe que una empresa
solo vende a la industria si su pedido total (gastos con eyectores, juegos de palas y cojinetes)
exceder las 400 unidades monetarias. El capital de trabajo de la industria es de 1300 unidades monetarias.
lo que limita las compras a ese techo. Se solicita:

1. Formule el problema de maximizar las ganancias de la producción de turbinas.


2. Una empresa ofrece mano de obra para ensamblar la turbina a 0.02 CU por H ´ h. los
¿Debería la industria comprar este servicio para maximizar sus ganancias?
3. Si un proveedor de la competencia ofrecía eyectores a 21 u.m. por unidad, el
¿Debería comprarlos la industria? Si es así, ¿cuántos? Si no, ¿cuál sería el más pequeño?
monto que la industria debería aceptar pagar?

14 - El problema de la producción de herrajes para ventanas de madera K


Una empresa metalúrgica produce manijas, cojinetes y guías para ventanas de madera. Estos hardware
se pueden broncear, pintar o anodizar. La tabla 5.29 resume el número máximo de lotes
susceptible de producirse en una semana en las máquinas de la empresa, así como el beneficio unitario de
venta por lotes.

Página 228

PROGRAMACIÓN COMPLETA Y PROGRAMACIÓN DINÁMICA 221

TABLA 5.29 LOTES MÁXIMAS DE PRODUCCIÓN RESPONSABLE

Broncearse Pintado Anodizado

Arrancador 25 - (2 u.m.) 30 - (1,3 CU) 15 - (3 CU)

Llevando 45 - (0,3 CU) 20 - (0,5 CU) 10 - (1 CU)

Guía 10 - (1.2 CU) 30 - (1 CU) 5 - (2 CU)

La empresa cuenta con 800 H xh semanales de mano de obra especializada. La tabla 5.30 resume el uso
uso de mano de obra por lote de los distintos equipos producidos.

TABLA 5.30 PARCELA DE TRABAJO POR LOTE

Mano de obra ( H ´ h ) por lote


Tipo
Broncearse Pintado Anodizado

Arrancador 1 dos 4

Llevando dos 3 3

Guía 1 dos 4

https://translate.googleusercontent.com/translate_f 190/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

Se sabe que, para un buen uso de la maquinaria, por cada 5 lotes de mangos producidos,
fabricamos entre 2 y 8 lotes de rodamientos y entre 1 y 9 lotes de guías.
Formule el problema de maximizar el beneficio metalúrgico.

15 - El problema del tratamiento químico de piezas metálicas K


En una industria metalúrgica después de la fabricación, todas las piezas se someten a un tratamiento químico.
contra la corrosión y la abrasión. La empresa produce varios tipos de piezas en su línea de fundición y
moldura. Para realizar el tratamiento se dispone de cuatro tanques de inmersión. Las partes metálicas son
fijado en un tendedero y sumergido en cada tanque durante un tiempo determinado. Los tanques contienen
diferentes elementos químicos y están dispuestos en una secuencia que produce, después de la inmersión, el efecto
querido. Durante todo el tiempo de inmersión, las piezas sufren la acción del proceso asociado a la respectiva
ir tanque. Cada pieza i , i = 1, ..., n , tiene un tiempo mínimo t ij , j = 1, 2, 3, 4 y un tiempo máximo r ij de
permanecer en el tanque j . Los costos del proceso son directamente proporcionales a la duración de la estadía
parte i en el tanque j y la constante de absorción asociada con el efecto del compuesto químico en el
tanque j en la parte i . Se conoce el peso p i de la parte i . Cada tendedero tiene cuatro posiciones (que no
debe ser llenado) para fijar las piezas y debe ser cargado con al menos
v kilos para que no haya problemas de fluctuación en el momento de la inmersión y, como máximo, w
libras para que no se rompa.
Sabiendo que existe una cierta disponibilidad de h horas para completar el tratamiento químico
del lote de n piezas, formule el problema de programar la secuencia de carga del
para minimizar los costos generales del proceso.

16 - El problema de equilibrio de las ruedas de un vehículo blindado L


Un cierto tipo de vehículo de combate blindado debe tener sus ruedas equilibradas mediante una posible cooperación.
ubicación de las cuñas en cuatro puntos específicos de sus llantas. Una cuña i , i = 1, ..., 16, cuando se adjunta al
posición j , j = 1, ..., 4, de la rueda k, k = 1, ..., 4, produce un desplazamiento horizontal en la dinámica de rotación del
k k
rueda igual a h ij y un desplazamiento vertical v ij . Estos valores pueden ser positivos o negativos. Cada

Página 229

222 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

la rueda tiene un desequilibrio dinámico de constitución igual ah k y v k , en los ejes horizontal y vertical,
respectivamente. No es necesario ocupar todas las posiciones adecuadas para la fijación de calzas
obligatoriamente. En una operación de campaña, para incrementar la eficiencia del proceso, en el sentido
acortar los tiempos de operación y eliminar el procedimiento de corrección artesanal,
estudios estadísticos que resultaron en la elaboración de un kit de equilibrado estándar con 16 calzas especiales
específico.
Sabiendo que la suma de los desequilibrios horizontales residuales de las ruedas delanteras del vehículo
ser menor o igual a la suma de los desequilibrios verticales de las ruedas traseras,
Problema de programación matemática capaz de planificar el uso del kit estándar para minimizar la
desequilibrio residual total de las ruedas blindadas.

17 - El problema del bibliotecario L


Un bibliotecario quiere organizar un nuevo lote de libros (clasificarlos) y esto se utilizará
una nueva área de biblioteca. Hay dos factores limitantes para el empaquetado de libros en
estanterías: la altura del libro y la longitud del estante. Un libro i tiene una altura h i y un grosor
sura w i . Obviamente, un libro solo se puede almacenar en un estante que tenga la misma altura
o mayor que el tuyo. Los libros no se pueden colocar uno encima del otro. No hay limitación en el
espacio físico, de modo que se puedan construir tantos estantes como sea necesario,
Sin embargo, el dinero que compra los libros es el mismo que se paga en los estantes, lo que sugiere que gastar en
los estantes deben minimizarse. La figura 5.33 ejemplifica la configuración de los estantes en
estantería.
Los estantes se fijan de tal manera que producen espacios de altura variable pero con un
longitud estándar igual a L metros. La creación de una nueva estantería cuesta R unidades monetarias (el valor
incluye las cantidades [paredes laterales] del estante). La altura máxima del estante (un conjunto de
estantes) es de S metros, descuidando el grosor del metal del estante. Espacio desocupado en
un estante se considera desperdiciado.

Librero 1 Librero 2

https://translate.googleusercontent.com/translate_f 191/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

s
Estantería
Libros

FIGURA 5.33 Diagrama de estantería.

Página 230

PROGRAMACIÓN COMPLETA Y PROGRAMACIÓN DINÁMICA 223

1. Formular el problema de clasificación de libros con el objetivo de minimizar el número de


ensamblado.

2. Considerando que libros iguales (copias del mismo libro) siempre deben clasificarse juntos
(en el mismo estante), reformule el problema anterior. Para el caso concreto, consideraremos que
no hay ningún caso en el que el grupo de libros repetidos supere el tamaño L de un estante.

3. En cierto comienzo del lote, los libros son muy pesados, por lo que los estantes pueden
experimentar deformaciones desagradables si no se tiene en cuenta este aspecto. Considerando p i el peso de
cada libro y V la capacidad máxima de un estante, reformule el problema 1 teniendo en cuenta
la capacidad en los estantes.

4. Reformule el problema 2, incluidas las restricciones de peso con la siguiente adaptación: permita
los libros similares se clasifican en un máximo de dos estantes.

18 - El problema del muro de contención L


Una determinada pendiente se estabilizará con un muro de contención formado por 33 placas premoldeadas en
hormigón de 1 m 2 de superficie y 20 cm de espesor, empotrado en una estructura metálica de soporte.
El terreno en pendiente es bastante heterogéneo y está sujeto a varias infiltraciones. En los estudios
preliminar al proyecto, se evaluó el levantamiento de carga a través de una sección transversal en el
terreno inclinado, eligiendo discretizar, dentro del patrón de las placas premoldeadas, las cargas
que esta pendiente daría lugar al muro de contención, como se muestra en la figura siguiente. La pared está pegada a la
posición vertical en relación al terreno, y su estructura metálica de soporte se basa en la
roca, cuyo perfil destaca la figura en una vista frontal.
Los esfuerzos de tracción provocados por la pendiente en el muro de contención serán absorbidos por la estructura
soporte metálico y un cómodo marco en las placas de hormigón. Los esfuerzos para
la presión será neutralizada por el hormigón de las placas, y es necesario dimensionarlo para ello. Resistencia a
La compresión de una losa de hormigón está asociada a varios factores, entre los cuales el porcentaje
del cemento utilizado en la “mezcla” (en la mezcla de cemento, arena y grava que constituirá el hormigón). Considerar
considerando que el consumo de hormigón (en una aproximación lineal justificada por el régimen de deformación)
a la que se someterá la estructura) está directamente asociada con la resistencia final del prefabricado y
que, debido al efecto conjunto de la estructura, la resistencia al esfuerzo de esfuerzo (cargas de la figura) de
cierta placa se ve favorecida por la resistencia de las placas vecinas de acuerdo con la siguiente fórmula:

⎛ ⎞

p ij = r ij + 0.1 ⎜ ∑ r sk


⎝ buscar ⎠

donde s y k representan los índices de las celdas vecinas a las celdas i - j , p ij representa el voltaje nominal máximo
máximo permitido para la celda i - j (dentro del modelo de discretización adoptado) y r ij la resistencia que se obtendrá
utilizado en la fabricación de la placa i - j . Considerando también que el costo del cemento que se utilizará en la fabricación
del hormigón en las placas corresponde a c unidades monetarias por cada unidad de resistencia
cançada (en kg / cm 2 , según norma brasileña 1 ):
Formular el problema de la fabricación del juego de placas de muro de contención minimizando el consumo
cemento.

https://translate.googleusercontent.com/translate_f 192/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

1. Resistencia obtenida en el ensayo de tracción a los 28 días.

Página 231

224 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

1 dos 3 4 5 6 7 8

9 10 11 12 13 14 15

dieciséis 17 18 19 20

21 22 23 24 25 Señales

26 27 28 29
Perfil de roca
apoyo
30 31 32

33

Configuración del muro de contención: vista frontal

Esquema de los esfuerzos que actúan sobre las placas.

200 150 120 100 100 130 160 200

230 200 200 220 230 240 250

280 230 230 250 280

300 270 250 270 310

320 310 315 330

350 320 360

400

Valor discreto de las tensiones resultantes de la compresión en las placas (kg / cm) 2

FIGURA 5.34 Vista frontal del muro de contención

19 - Elección de proyectos alternativos J


Un operador turístico asociado a un banco de inversión regional decidió invertir en la región
Región noreste de Brasil, estableciendo alianzas con hoteles y posadas de la región. Los proyectos son
dividido en tres categorías: inversión en construcción e infraestructura, eventos religiosos y
actividades históricas. Para proyectos de inversión en construcción e infraestructura existen propuestas A,
B y C de la cadena Sol, Mar y Recife, con el objetivo de modernizar varios de sus hoteles, a un coste de
US $ 7, US $ 5 y US $ 4 millones, respectivamente, Hotel Duna Branca con proyectos D y E a un costo
de US $ 7 y 8 millones, y Hotel Pirangi con el proyecto F a un costo de 4 millones. Para eventos religiosos
Se encuentran disponibles los proyectos G, H e I de Pousadas Natal, valorados en US $ 6, 2 y 3 millones.
pectively. Finalmente, promover y sostener programas en ciudades históricas,
están los proyectos J y K del Hotel do Virgulino y los proyectos L y M del Hotel da Volante, presupuestados en

Página 232

PROGRAMACIÓN COMPLETA Y PROGRAMACIÓN DINÁMICA 225

https://translate.googleusercontent.com/translate_f 193/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

US $ 6, 10, 12 y 4 millones, respectivamente. Deseando maximizar el retorno de la inversión, los proyectos


fueron examinados por un comité de expertos que atribuyeron, comparativamente, los siguientes
valor en puntos a los proyectos:
A = 3; B = 5; C = 8; D = 11; E = 6; F = 13; G = 15; H = 2; I = 7; J = 8, K = 7; L = 10; M = 9 puntos. El operador,
interesado en crear lazos diversificados en la zona, estableció que al menos un proyecto en cada zona
sería apoyado. Sabiendo que:

1. Los proyectos de modernización se consideran prioritarios, por lo que se apoyarán al menos tres
Desde.

2. Frente a problemas políticos, Hotel do Virgulino y Hotel Pirangi deben tener el mismo número de
Proyectos aprobados.

3. Hay $ 20 millones para invertir.

4 Planifique la mejor inversión posible del recurso disponible.

4 Una vez realizada la planificación, una información mostró que los costos de los proyectos de la
Hotel da Volante había sido evaluado de manera imprecisa, imponiendo una corrección del 30% más
por sus costos finales. ¿Cambia esto el marco de distribución de los proyectos? ¿De que forma?

4 Si este problema se repite con Hotel Sol, Mar y Recife (cuyas propuestas se ven con recelo)
por el operador turístico), ¿en qué medida pueden aumentar los costos sin cambiar la solución?

4 El Hotel Piscinas do Sertão decidió enviar, tarde, un proyecto de construcción y


infraestructura. Su costo total fue de US $ 5 millones y obtuvo una evaluación de 8 puntos. El Departamento
El banco de análisis del banco de inversión rechazó el proyecto porque, según sus palabras: “No fue
competitivo en comparación con los otros proyectos ganadores ". ¿Eso es verdad?

20 - El problema de los anuncios de la red de televisión norte


Paso 1: punto de vista de los anunciantes
Una cadena de televisión decidió establecer precios competitivos por tiempo comercial en ciertos
horarios. Hay 3 horarios de publicidad en la red: horario de máxima audiencia (horario
río 1), tarde los fines de semana (hora 2), tarde los días de semana (hora 3).
El precio de un módulo de publicidad mínimo en cada momento es p 1 , p 2 y p 3 , respectivamente. La red
vende grandes espacios de tiempo dentro del horario, llamados paquetes promocionales. los
los anunciantes desean unirse al programa de paquetes de publicidad promocional porque pueden obtener
teniendo así mejores precios unitarios. Un paquete representa un esquema de descuento basado en
homogeneización de la demanda y economías de escala. Se practican cuatro rangos de precios
en los paquetes. Rango 1 o descuento cero, rango 2 o 10% de descuento, rango 3 con descuento
20% y pista 4 con un 10% de descuento. Los descuentos se aplican a la suma total de veces
adquirido, siempre que el anunciante cumpla las condiciones de calificación. El descuento de rango 4 puede
sumado a los descuentos obtenidos en las bandas 2 y 3. Los descuentos en las bandas 2 y 3 no son acumulables
entre si.
Las condiciones de calificación se refieren a restricciones sobre el tiempo total mínimo de publicidad.
comprado y distribución de la programación del anunciante dentro de los tiempos de la emisora (1, 2 y 3).
La tabla 5.31 resume las reglas de promoción:

Página 233

226 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

TABLA 5.31

Condiciones de distribución
del horario
Descuentos Suma de tiempo Importe de descuento

Pista 1 sin requisito sin requisito 0%

compra al menos tiempo


Pista 2 sin requisito 10%
en dos momentos

compra al menos tiempo


Pista 3 sin requisitos 20%
a las tres veces

https://translate.googleusercontent.com/translate_f 194/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
compra al menos
Pista 4 sin requisitos 10%
f unidades de tiempo

Los anunciantes que compiten en la disputa por el uso de medios son n y cada uno tiene s n
unidades monetarias para invertir en publicidad.
Los anunciantes, reunidos en asociación, quieren establecer la mejor estrategia de negociación
con la red, con el objetivo de maximizar, dentro de la disponibilidad presupuestaria, el
uso de medios.

Paso 2: el punto de vista de la cadena de televisión

Como hay tiempo publicitario disponible no utilizado, la red decidió alentar


la demanda. Sabe que la inversión de los anunciantes depende de la estrategia de precios. Mediante
La investigación de mercado encontró que a medida que baja los precios básicos (en todos
(anunciantes n) tiende a crecer según la ecuación:

*
s n = s n + 10 d

*
donde s n representa el monto final de inversión disponible yd el descuento en unidades monetarias
rias. También sabe que si las inversiones se incrementan reduciendo los precios, el cliente
intentará minimizar sus costos finales mediante la estrategia descrita en el paso 1.
Formular el problema de establecer una política de precios que maximice el retorno total, manteniendo el
paquetes de promoción, sabiendo que el tiempo que no es comprado por los anunciantes se puede utilizar
utilizado por la propia red de televisión, con r i unidades monetarias por segundo, i = 1, 2, 3, dentro de cada
tiempo posible.

Sugerencias para la solución del paso 1


Desde el punto de vista de los anunciantes, es deseable maximizar el descuento, dadas las restricciones
de cada anunciante.

1 - Elección de la variable de decisión

t i º tiempo disponible para publicidad en el tiempo i , i = 1, 2, 3.

x ik º tiempo adquirido en el tiempo i , i = 1, 2, 3, por el anunciante k, k = 1, ..., n .


⎧1, si el anunciante ha adquirido
k tiempo en la hora rary ⎫
yo
y ik º ⎨ ⎩ 0, de lo contrario

⎧1, si el anunciante ha comprado


k más de F módulos de tiempo ⎫
w ik º ⎨
⎩0, de lo contrario

Página 234

PROGRAMACIÓN COMPLETA Y PROGRAMACIÓN DINÁMICA 227

s kº cantidad máxima de recursos aportados por el anunciante k .

p i ª precio del tiempo de publicidad en tiempo Me .

c kº coste total que será pagado por el anunciante k, respecto al descuento total al que tiene derecho.

2 - Formulación de restricciones tecnológicas (enfoque no lineal)

a) Restricciones sobre el importe abonado por el anunciante, dados los posibles descuentos

pg k = ∑ x ik p yo , k = 1, ..., n
yo =1

c k £ (3 - ∑ y ij ) 0,1 pg k + 0,8 pg k - 0,1 pg k (1 - w ij ), k = 1, ..., n


yo =1

s k ³ c k , k = 1, ..., n

Observamos que si el anunciante k hace cualquier anuncio, la suma de y ik en la segunda restricción es


al menos 1. La variable pg k acumula el gasto sin descuento.

21 - El problema de la operación de la flota de taxis norte


https://translate.googleusercontent.com/translate_f 195/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
Un operador de taxi controla a unos 120 asociados en una gran área metropolitana. El operado
fue creado para centralizar el funcionamiento de los vehículos. La central recibe llamadas entrantes
y designa los coches para las carreras. Tiene un sistema que permite el control de posicionamiento
vehículos, para que pueda tomar decisiones con una visión global del servicio. Hay tres
tipos de llamada: programada, normal y urgente. En la llamada normal, desde la perspectiva del cliente,
minimizando el tiempo de servicio, respetando las restricciones operativas. La llamada urgente
significa el coche más cercano al punto del pedido y da una expectativa de llegada al cliente. Llamadas
urgentes son un 50% más caras. Si el tiempo de llegada de la llamada urgente es superior a tres minutos
por lo que esta llamada se cobra normalmente, a pesar de que el automóvil designado es el más cercano. En todos los casos
(llamadas normales o urgentes), la posibilidad de contestar
máximo po r j , establecido por el cliente j . Las llamadas programadas determinan la presencia de un taxi
en el destino exactamente a la hora acordada. Para ello, las llamadas programadas se realizan con al menos
una hora antes.
Los taxistas, en realidad autónomos asociados en cooperativas, exigen que la central
hacer una designación equitativa bajo algunos criterios. La ciudad está dividida en cuatro áreas, como
muestra la Tabla 5.32.

TABLA 5.32

Zona
Urbano Suburbano
Actuación
Alto a1 a3

Bajo a2 hasta 4

Los profesionales quieren tener un equilibrio en el número de llamadas de cada taxi en cada
área, de modo que factores como la congestión del tráfico, los riesgos de seguridad, los "recorridos largos", etc.
aproximadamente lo mismo para todos. Otro punto a considerar es que los autos no tienen

Página 235

228 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

que viajan mucho para asistir a “tiradas cortas”. Formule el problema de asignar taxis a
llamadas como un programa de programación lineal.
Información adicional: el objetivo del sistema de designación por computadora debe ser optimizar
beneficios de la asistencia. Las ganancias son directamente proporcionales al número de kilómetros recorridos.
datos y pagado a R $ 1,0, y la bandera es R $ 1,5. Considere el horario comercial
con los 120 coches disponibles.

22 - El problema de la reforma piramidal L


Una pirámide construida hace miles de años con bloques cúbicos de piedra caliza de 1 m de lado es
necesita ser reformado. Varios bloques muestran grietas y pueden colapsar.
lo que conduciría a la destrucción del monumento histórico. Una encuesta sonora clasificó los siguientes bloques
según su riesgo de ruptura ( r i ), i = 1, ..., 380. Operacionalmente, para eliminar un bloque en la pirámide
es necesario eliminar, si corresponde, hasta nueve bloques más en el nivel superior, como se muestra en la Figura
Figura 5.35:

Base de la pirámide Segundo nivel Cima de la pirámide

r yo

r i (riesgo celular) Formación de niveles Nivel pasado

Base de la pirámide

3 3 3 3

dos dos dos dos dos dos 3

dos 1 dos dos 1 dos 3

dos dos dos dos dos dos 3

3 3 3 3

https://translate.googleusercontent.com/translate_f 196/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
Celda a eliminar Consecuencia en el segundo
º nivel Consecuencia en el 3er nivel
º
desde la base

FIGURA 5.35 Esquema de eliminación de bloques

El efecto de la remoción de un bloque se propaga en la pirámide debido a la imposición de estabilidad.


estructural. Para la remoción del bloque base de la pirámide marcado en negrita por el diagrama de la figura,
es necesario quitar otros 34 bloques. Si, por un lado, existe interés en sustituir bloques de mayor
riesgo, por otro lado, se debe evitar retirar una gran cantidad de bloques, so pena de desfigurar el
y provocar nuevas fracturas. De los 380 bloques originales, el número máximo de
que se puede eliminar.
Con el objetivo de reemplazar los bloques, formule el problema de determinar un movimiento de bloques.
que sea estable y que maximice la suma de los riesgos de rotura de sus bloques componentes.

Página 236

6 PROBLEMAS DE CONEXIÓN:
ARBOLES, CAMINOS
Y MARIDAJE

6.1 - INTRODUCCIÓN

6.1.1 - El origen del problema - Optimización de la conexión


En numerosas situaciones, el problema de optimización estará asociado con las alternativas de conexión entre
o entre clientes y sus instalaciones. Los problemas de ubicación caracterizan varias situaciones en las que
que es necesario examinar la distribución de la atención. Otro tipo de situación
obtener el estudio más detenido de los vínculos entre las demandas y sus puntos de servicio. En ese caso, el
El énfasis del modelo se desplaza hacia la conexión o forma de acceso o contacto. Para este tipo de problemas,
El tomador de decisiones debe poder mostrar una topología adecuada al modelo, formas de organización.
realice las configuraciones deseables dentro de esta topología y los criterios para elegir esas configuraciones. En eso
tipo de problemas en los que la toma de decisiones está polarizada por la arquitectura de conexión, tres
la representación es extremadamente importante:

4 caminos

Cuando el foco está en una trayectoria.

4 árboles

Cuando el foco está en la continuidad de la conexión y el establecimiento de una red troncal sobre un
conjunto de puntos exigentes.

4 emparejamientos (a juego )

Cuando el problema de conexión involucra a grupos pequeños.

El criterio más común para este tipo de problemas es minimizar la estructura del conector o
proceso de conexión, de ahí la importancia del camino más corto (la conexión más barata entre dos puntos
de los varios árboles mínimos (la estructura de conexión global más barata) y el mínimo de 1 coincidencia
(emparejamiento de dos o dos puntos a un costo mínimo). Eventualmente, estas estructuras pueden ser
asociado a objetivos de maximización como la ruta más larga y el árbol máximo generador. Metho-
https://translate.googleusercontent.com/translate_f 197/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
Desde el punto de vista clínico, existe un fuerte vínculo entre estas dos últimas estructuras (ver Fredman y Willard
[1994]), lo que hace conveniente su estudio conjunto desde un punto de vista algorítmico.

Página 237

230 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

6.2 - EL PROBLEMA DE CONEXIÓN SIMPLE


El problema más simple de esta clase es exactamente aquel en el que el objetivo es simplemente verificar
(problema de decisión) o establecer (problema de ubicación) la continuidad de la conexión entre los elementos
la estructura bajo análisis o diseño. Una interpretación de esta llamada "continuidad"
puede ser, por ejemplo, moverse de un vértice a otro en un gráfico a través de una arista o un arco. LA
La figura 6.1 muestra dos formas de conexión en un gráfico. Recordando que los bordes significan la posibilidad
conexión en ambas direcciones, en la Figura 6.1 (a) vemos que los vértices 3 y 1 solo están conectados
al nodo 2. En la Figura 6.1 (b), 3 pueden conectarse directamente a 1.

3 3

1 dos 1 dos

(Los) (SEGUNDO)

FIGURA 6.1 Formas de conexión.

Es evidente que la intensidad de la posibilidad de conexiones es un factor importante. Nosotros nombraremos


esta característica de conectividad. Puede variar desde el llamado estado desconectado, hasta el llamado estado fuerte
conectado. Los gráficos desconectados tienen uno o más vértices que no se conectan a ningún otro.
En los grafos fuertemente conectados, desde cualquier vértice de G es posible llegar a todos los demás a través de
de un agradable paseo por sus bordes o arcos. Los gráficos no dirigidos relacionados son por lo tanto
estrechamente conectado. Incluso si el gráfico está desconectado, es muy probable que tenga
subgrafos relacionados. Cada subgrafo conectado de G se llama componente conectado. Para la conexión
En general, el hecho de que un gráfico esté dirigido o no puede significar una diferencia importante.
tintura. Por esta razón, llamaremos a las gráficas dirigidas por G = ( V , E ), donde V representa la
conjunto de n vértices y E el conjunto de m arcos.
La verificación de la desconexión de un gráfico es un problema trivial y se puede resolver simplemente
ples examen de las estructuras de representación G . En general, podemos decir que el diseño de
buenos algoritmos para determinar elementos asociados con la conectividad en gráficos se asocia con
dominio de buenas técnicas de búsqueda de gráficos. Podemos describir una búsqueda en un gráfico de la siguiente manera
goritmo general:

Algoritmo de búsqueda general en gráficos relacionados

COMIENZO
Leer datos de G , {gráfico dirigido o no}
Elija y marque un vértice inicial x i ;
Mientras hay X j I n, j = 1, ..., n y anotó, con un borde ( x j , x k ) no -
efecto explotado
comienzo
Elija el vértice x j y explore la arista ( x j , x k ) {* condición variable en
conforme con
Tipo de búsqueda *}
Si x k no está marcado , marque x k
Fin
FIN

Página 238

PROBLEMAS DE CONEXIÓN: ÁRBOLES, CAMINOS Y EMPAREJAMIENTO 231

https://translate.googleusercontent.com/translate_f 198/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
El algoritmo de búsqueda general descrito examina al menos el doble de los bordes y vértices de G ,
por lo tanto, apoya la complejidad de O ( nm ). Como los criterios de selección de vértices pueden requerir
mayor esfuerzo computacional, la complejidad de la búsqueda también crecerá. Una búsqueda se llama
nada en profundidad si, para los criterios de selección de vértices, exigimos que la elección se haga en el
alcanzado más recientemente en la búsqueda y el incidente en algún borde sin marcar.
A continuación se describe un algoritmo clásico para determinar el fuerte
nexas en un gráfico G .

Algoritmo de Roy (componentes G fuertemente conectados)

COMIENZO
Leer datos de G = (V, E) {dirigido}
yo ¬ 0
Mientras que el efecto V ¹Æ
comienzo
Elija y marque cualquier vértice x i, x i Î V , con (+) y (-);
Marque con (+) cualquier vértice que no esté marcado con (+) y
que tiene como sucesor un vértice (+)
Marque con (-) cualquier vértice que no esté marcado con (-) y
que tiene como antecesor un vértice (-)
Si todos los vértices ya no pueden tener sus marcas
cambiado entonces
comienzo
yo ¬ yo + 1
S i ¬ los vértices que están marcados con
(+) y (-) simultáneamente
V ¬V \ { S i }
Fin
Fin
FIN

Aplicaremos el algoritmo de Roy para determinar los componentes fuertemente conectados del
gráfico G = ( V , E ) de la Figura 6.2.

7 5

1 dos 8 6

3 4

FIGURA 6.2 Ejemplo de gráfico para determinar componentes relacionados.

Página 239

232 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

Siempre decidiendo elegir el vértice de índice más bajo para continuar la búsqueda, el desarrollo
el etiquetado generado por el algoritmo se puede seguir en la Figura 6.3. El algoritmo se puede utilizar
en gráficos dirigidos o no.

+
-+ -
7 5 7 5

- + - + - - -
+ +
1 dos 8 6 1 dos 8 6

-
3 4 3 4
+ + -

https://translate.googleusercontent.com/translate_f 199/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
Letras del vértice 1 (+) Letras de Apex 1 (-)

- -
+ 5
7

- + - - -
+
1 dos 8 6

-
3 4
+ -

S: 1= {1,2,3,7}

+ +-
7 5 7 5

+ + + -+
1 dos 8 6 1 dos 8 - 6

3 4 3 4
+- +-

Letras del vértice 4 (+) Letras del vértice 4 (-)

+-
7 5

+ -+
-
1 dos 8 6

3 4
+-

S: dos
= {4,5,6,8}

FIGURA 6.3 Solución mediante el algoritmo de Roy.

6.3 - EL PROBLEMA DEL CAMINO MÁS CORTO (PCMC)


Desde u y v son dos vértices del gráfico G = ( N , A ), el camino más corto entre u y v es una secuencia de bordes
que, al pasar por distintos vértices, conecta u con v para acumular la longitud o distancia más corta
cia. Para que haya una ruta más corta entre los vértices u y v que es esencial que haya primero

Página 240

PROBLEMAS DE CONEXIÓN: ÁRBOLES, CAMINOS Y EMPAREJAMIENTO 233

En primer lugar, una conexión entre u y v , es decir, si hay un camino de u a v , significa que v es un
cesador de U en un paseo fresco durante todo el C . El problema del camino más corto es
actualizado dentro del problema más amplio de las rutas de los gráficos, que implica:

• Caminos más cortos.


• Caminos más largos.
• Cursos hamiltonianos y eulerianos.
El problema del camino más corto está estrechamente relacionado con la solución de varios problemas.
combinatoria como enrutamiento, programación y secuenciación de tareas, etc.
El problema de las rutas o recorridos es uno de los más conocidos y antiguos en la investigación operativa.
y su solución incluso ha sido sugerida en leyendas mitológicas de la antigua Grecia. El mas el-
optimizar caminos es el llamado problema del laberinto, en el que el objetivo es simplemente no
Repetir caminos ya tomados. En esta línea de razonamiento, encontramos el llamado algoritmo de Trémaux
(ver Boaventura [1996]). La característica de este algoritmo es que la estructura del gráfico (laberinto) no
es necesario conocerlo y, a medida que se leen los datos, se puede realizar el examen. Algoritmos
en esta línea de soluciones son hoy muy deseables, ya que la robótica exige cada vez más
buenos algoritmos para la navegación (Bar-Eli et al . [1994] y Papadrimitriou y Yannakakis [1989]) de acuerdo
textos con varios elementos de incertidumbre. Como la solución encontrada por Teseo en la leyenda del Minotauro
ro, el algoritmo de Trémaux marca cada borde cubierto por la búsqueda para evitar que el expedicionario
perderse en el camino. Los algoritmos de ruta más corta, sin embargo, tienen toda la información
posible en el gráfico, apunta a minimizar los esfuerzos de búsqueda.

6.3.1 - Formulación

https://translate.googleusercontent.com/translate_f 200/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
Podemos formular el problema del camino más corto como un problema de programación matemática.
como sigue:

(CMC) Minimizar z = ∑ cxij ij


(,)ij ∈A

sujeto a:
⎧- 1
⎪ Si io= ⎫

∑ X ij - ∑ =X ki ⎨ 0 Si yo≠ oidy ≠ ⎬
(,)ij A ∈ (,)ki A ∈
+ 1
⎩⎪ Si = de identidad
carné ⎭⎪

x ij Î {0, 1} ( i , j ) Î A

Donde vértices O y D representan los vértices inicial y final de la ruta. Es interesante observar
que, para esta formulación, la matriz de incidencia es totalmente unimodular, lo que permite, si se utiliza
usamos la regla de Cramer para obtener la solución de este sistema, que el requisito de integralidad se
laxo sin ningún daño a toda la solución.

6.3.2 - Problemas y aplicaciones relacionados


El problema del camino más corto está asociado con una gran cantidad de otros problemas en el área.
enrutamiento, fabricación, flujo de red, etc. Destacaremos dos modelos más recientes.

4 Ruta más corta con ventanas de tiempo (PCMC-JT)


Esta es la versión de la ruta más corta restringida a un intervalo de llegada de nodo, similar a
problemas de enrutamiento de la ventana de tiempo. Desrochers y Saumis (1988) estudian la adaptación
de los algoritmos de etiquetado para este caso.

Página 241

234 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

4 Ruta más corta en gráficos estocásticos (PCMC-GE)


En este caso, existen algunas líneas de trabajo que incluyen:

• Fallo de vértice (Jaillet [1992]).


• Costos estocásticos (Loui [1983]).
• Conexiones estocásticas (Psaraftis y Tsitsiklis [1993]).
Las estrategias de enfoque para la solución definen el "camino óptimo en condiciones de incertidumbre" como:

• Uno que no exceda la longitud de la ruta en valores preestablecidos (Henig [1990]).


• El que tiene más probabilidades de acercarse al camino más corto (Sigal et al . [1980]).
• Quien a priori minimiza la distancia esperada (Jaillet [1992]).
Murthy y Sarkar (1997) sugieren tres algoritmos exactos para PCMC-GE en la línea de maximización
utilidad esperada.

6.3.3 - Algoritmos de solución


Hay varios enfoques posibles para la solución PCMC. En el área de la programación matemática
encontramos la posibilidad de:

• Algoritmos con especialización simplex.


• Algoritmos de flujo.
Sin embargo, los algoritmos más eficientes de hoy están disponibles a través del enfoque gráfico.
En esta línea, entre varios, dominan dos grandes hilos (Frederickson [1987] y Chen [1990]):

• Algoritmos de ajuste sucesivos.


• Algoritmos de inducción y ajuste.
Respecto al problema en sí, hay tres situaciones diferentes:

• El camino más corto entre dos de nosotros.


• La ruta más corta entre todos los nodos del gráfico.

https://translate.googleusercontent.com/translate_f 201/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
• La ruta más corta entre un nodo de origen y varios nodos de destino.
4 algoritmo de Dijkstra
En 1959, Dijkstra sugirió un algoritmo de etiquetado para trayectorias en gráficos con arcos positivos, utilizando
mediante inducción y ajuste, implementación computacional eficiente y fácil. Vocación:

Lista F (lista de nodos cerrados) º el conjunto de vértices para los que ya se conoce una ruta mínima.

Lista A (lista de nodos abiertos) º el conjunto de nodos para los que aún no se conoce una ruta mínima.

t º contador de iteraciones.

Página 242

PROBLEMAS DE CONEXIÓN: ÁRBOLES, CAMINOS Y EMPAREJAMIENTO 235

V º que representa el conjunto de nodos etiquetados y abiertos en G.

r º índice de vértice que se cerrará en la iteración t .

C = [ c ij ] º matriz de costos que representa las distancias entre vértices conectados directamente.

d ij º la distancia entre los vértices x i y x j .

d tijº la distancia calculada entre los vértices x i y x j en la iteración t .

rot (i) es el vector que contiene el vértice que dio lugar a la distancia calculada para el vértice índice i .

Γ + () r ≡ conjunto de vecinos del vértice índice r .

Podemos describir el algoritmo como se resume en la siguiente tabla:

Algoritmo de Dijkstra (ruta más corta)

COMIENZO
Leer datos de G = ( N , A ), donde d ij es la distancia entre los nodos vecinos de G
Inicializar variables d 11 ¬ 0; { d 1 i ¬ ¥ "i Î N \ { x 1 }}; V ¬ { x 1 }; A ¬ { N }; F ¬Æ;
{rot (i) ¬ 0, "iÎ N}
Para t = 1 a n hacer
comienzo
r ¬ x i tal que d 1 i ← min d {}
1yo
xi A∈
F ¬ F È { r };
A ¬ A \ {r};
V¬AÇG+ (r)
Para que yo Î V haga
comienzo
t- 1
p ¬min { re1yo , ( re rese ríe
)}
1 r+
t 1-
Si p < d i 1 , a continuación,
comienzo
t
di
1¬ p ;
pudrición ( i ) ¬ r
Fin
Fin
Fin
FIN

La figura 6.4 muestra la secuencia de etiquetado y cierre de los nodos del algoritmo de Dijkstra
cuando se aplica al gráfico de la Figura 6.4 (a). La etiqueta que se coloca cerca de cada punto.
ce en su primera posición mantiene el origen de las letras. La segunda posición señala el valor de la
camino acumulado hacia el ápice. En cada iteración, el nodo examinado que acumula la distancia más corta se cierra
del. El foco de búsqueda de la búsqueda siempre se desplaza al último nodo cerrado (en la figura simbolizada
por el asterisco). Desde un nodo cerrado, se examinan los vecinos (G + ( r )). Las actualizaciones del examen

https://translate.googleusercontent.com/translate_f 202/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

Página 243

236 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

es obligatorio marcar ¥ que es (rot ( i )) asignado inicialmente a todos los nodos excepto al nodo
1 y, eventualmente, cuando se encuentre una distancia más corta. Un ejemplo de esta actualización por
una distancia menor ocurre en la Figura 6.4 (c) cuando la distancia desde el vértice 4 cambia de 5 a 4.
La complejidad del algoritmo de Dijkstra es O ( n 2 ). Este algoritmo no puede encontrar rutas.
carreras más cortas en presencia de arcos negativos, ya que en cada iteración, el vértice examinado
con la menor distancia acumulada se cierra. El algoritmo calcula las distancias más cortas desde un vértice
inicial para todos los demás.

∞ ∞ 1 dos ∞

dos 6 r=2 dos 6


∞ 1 5

dos dos dos 5 dos dos dos 5


*
0 0 1 5 4 1 5 0 ∞ 1 0 1 5 4 1 5 0 ∞

r=1
4 1 3 7 4 1 3 7

3 4 7 3 4 7

∞ ∞ 1 4 ∞

(a) Gráfico inicial (b) Cierre


º de 1 nodo (1) - = 1 t

* *
1 dos ∞ 1 dos 4 6

*
dos 6 dos 6
dos 4 dos 4

dos dos dos 5 dos dos dos 5


* *
1 0 1 5 4 r=4 1 5 ∞ 1 0 1 5 4 1 5 0 ∞

4 1 3 7 4 1 3 7

3 4 7 r=3 3 4 7

1 4 ∞ 1 4 4 7

(c) Cierre
º de 2 nodos (2) - = 2 t (d) Cierre
º de 3 nodos (4) - = 3 t

* *
1 dos 4 6 1 dos 4 6

dos * 6 r=6 dos * 6


dos 4 dos 4

dos dos dos 5 dos dos dos 5


* *
1 0 1 5 4 1 5 0 ∞ 1 0 1 5 4 1 5 6 11

4 1 3 7 4 1 3 7

3 4 7 3 4 7 r=7

1 4 4 7 1 4 4 7

* *
(e) Cierre
º de 4 nodos (3) - = 4 t (f) Cierre
º de 5 nodos (6) - = 5 t

FIGURA 6.4 Ejemplo de evolución del algoritmo de Dijkstra.

4 algoritmo de Ford-Moore-Bellman
El algoritmo Ford-Moore-Bellman, llamado así por el trabajo simultáneo
estos investigadores (ver Bellman [1958]), pero publicado en diferentes momentos,
un nodo en cada iteración, y examina todos los nodos hasta que las mejoras ya no son posibles,
con eso, acepta los bordes negativos. El criterio de parada está asociado a la no modificación de todos
etiquetas en una iteración. La idea básica de la iteración es que si un camino desde un vértice sa un j
contiene k bordes, un mejor camino de s a j contendrá en la mayoría de k + 1 bordes.

Llamado:
l ( s , j ) -ésimo longitud de un camino entre s y j .
l es la longitud de la ruta asociada con el nodo s .
k k El
l j longitud de camino más corta P sj utilizando como máximo k arcos, donde P k ⊂.
sj LAalgoritmo puede

describirse de la siguiente manera:

Página 244

PROBLEMAS DE CONEXIÓN: ÁRBOLES, CAMINOS Y EMPAREJAMIENTO 237

Algoritmo de Ford-Moore-Bellman

https://translate.googleusercontent.com/translate_f 203/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

COMIENZO
Lea los datos de G = ( N , A ), donde l ( i, j ) es la longitud del borde ( ij ) para
cualquier vecino i , j en G y S es el nodo inicial de la búsqueda.
o← 0} { l j ¬0, j = 1, ..., n - 1}; { l s1 ← l (s , j ) j = 1, ...,
Inicializar variables k ¬1; { l s ¬ l s

n –1}; { l (i, j) ¬ ¥ si ( i, j ) Ï A};


k– 1 ≠ ," k
Mientras yo j l j Î N hacer
j

comienzo

l jk +1 ¬ min
⎧ k
⎨l , min
⎩ j
[l k
yo
+ lij
(,) ]⎫⎬⎭ ijs≠ ,; j = 1 , ..., norte-
1
yo

k ¬ k +1
Fin
FIN

Apliquemos el algoritmo del ejemplo de la Figura 6.5 para encontrar la ruta entre los vértices S y 5.
Puesta en marcha:

1 dos 4

1 3

s 1 3 –3 5

3 dos

dos dos 3

FIGURA 6.5 Gráfico de ejemplo para el algoritmo de Ford-Moore-Bellman.

1 1
l 1 = 1; l 2 = 3
k=1

dos 1
l 1 = min { l 1 , - - -} = 1
dos 1 1
l 2 = min { l 2 ; ë l 1 + l (1, 2) û} = 2 (mejorado)
dos 1 1 1
l 3 = min { l 3 ; ë l 1 + 1 (1, 3); l 2 + l (2, 3) û} = 4 (mejorado)
dos 1 1 1
l 4 = min { l 4 ; ë l 1 + 1 (1, 4); l 3 + l (3, 4) û} = 3 (mejorado)
dos 1 1 1
l 5 = min { l 5 ; ë l 4 + 1 (4, 5); l 3 + ( l (3, 5) û} = ¥
k=2
3
l1 =1
3 dos dos
l 2 = min { l 2 ; ë l 1 + l (1, 2) û} = 2
3 dos dos dos
l 3 = min { l 3 ; ë l 1 + 1 (1, 3); l 2 + l (2, 3) û} = 4
3 dos dos dos
l 4 = min { l 4 ; ë l 1 + 1 (1, 4); l 3 + l (3, 4) û} = 1 (mejorado)
3 dos dos dos
l 5 = min { l 5 ; ë l 4 + 1 (4, 5); l 3 + l (3, 5) û} = 6 (mejorado)
k=3

Página 245

238 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

4
l1 =1
4 3 3
l 2 = min { l 2 ; ë l 1 + l (1, 2) û = 2
4 3 3 3
l 3 = min { l 3 ; ë l 1 + 1 (1, 3); l 2 + l (2, 3) û} = 4
4 3 3 3
l 4 = min { l 4 ; ë l 1 + 1 (1, 4); l 3 + l (3, 4) û} = 1
4 3 3 3
l 5 = min { l 5 ; ë l 4 + 1 (4, 5); l 3 + l (3, 5) û} = 4 (mejorado)
k=4

No habrá más mejoras y el algoritmo llega a su fin.

La ruta más corta se puede recuperar del nodo 5, de la siguiente manera: en la línea que se calcula
3
ticulado el camino más corto a la porción determinante era 5 l 4 + l (4, 5) = 4, dejando claro que el vértice

https://translate.googleusercontent.com/translate_f 204/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
c predecesor de 5 para el camino
3 más corto es 4 [pasó por l (4, 5)]. Al calcular la distancia hasta 4 3
determinar la celda es l 4 = 1, lo que determina que el vértice 3 es el antecedente del vértice 4 ya que l 4 Sus
dos
obtenido de la expresión l 3 + l (3, 4) [a l (3, 4 ) ], y así sucesivamente. El algoritmo calcula el más pequeño
entre todos los pares de vértices de un grupo G. La tabla 6.1 resume algunos de los más conocidos
algoritmos para el camino más corto.

TABLA 6.1 ALGORITMOS EXACTOS DE SOLUCIÓN PARA EL CAMINO MÁS CORTO

Año Autores descripción Complejidad

1959 Dijkstra Selecciona el nodo de menor potencial O(n2)

1956 Ford-Moore-Bellman Técnica de letras FIFO O ( mn )

1962 Ford-Fulkerson Técnica de letras FIFO O ( mn )

1962 Floyd-Warshall Técnica de "operación triple" O(n3)

1967 Hu Algoritmo de matriz O ( mn )

1969 Dijkstra por Dial "Cubos y FIFO" O ( m + Cn )

Incremental en un conjunto restringido de Q(n2n)


1974 Pape y Levit
nosotros

Incremental en un conjunto restringido de


1984 Pallottino O ( n 2m )
nosotros

Glover y Glover -
1984 Combinación de enfoques Dijkstra y FMB O ( mn )
Klingman

1988 Klein y Reif Algoritmos paralelos O (n 2/3 log 7/3 n (logn + logD)) *

1993 Goldberg-Radzik Manipulación de juegos de etiquetas O ( nm )

1993 Cohen Algoritmos paralelos O (log 4 n)

1996 Träff y Zaroliagis Algoritmos paralelos O ((n 2ε + n 1 - ε ) logn) **

* D es la suma de los pesos de los bordes


** 0 <ε <1/2

6.4 - ÁRBOL DE GENERACIÓN MÍNIMO (AGM)


Un árbol es un gráfico acíclico conectado. Un árbol de un gráfico G es un subgráfico de G = ( N , A )
fijo y acíclico. Un árbol de expansión de G es un árbol que contiene todos los nodos del gráfico. Un árbol
radora mínimo es la generación de un árbol cuya suma de la longitud de sus bordes es mínimo en G . LA

Página 246

PROBLEMAS DE CONEXIÓN: ÁRBOLES, CAMINOS Y EMPAREJAMIENTO 239

La importancia de esta estructura es enorme tanto en la práctica de problemas de optimización como como parte de la
varios otros modelos. Sus mayores aplicaciones en la investigación operativa están asociadas a
Problemas de comunicación y conexión. En informática, existen varias aplicaciones en el área de estructura
de dados. Una revisión de los resultados más recientes logrados en la determinación de la AGM puede ser
obtenido en Bazzlamaçci e Hindi (2001).

6.4.1 - Problemas y aplicaciones relacionados


Las conexiones de árbol todavía contienen dos modelos de optimización además de AGM, a saber:

4 árbol Min-Max
En este problema, también llamado optimización de "cuello de botella", el objetivo es determinar el árbol que
tiene el borde máximo más pequeño. El gráfico de la figura 6.6 presenta un cuello de botella igual a 3, ya que
los bordes más pequeños que caen en los vértices 7 y 8 tienen este valor. El árbol min-max es un
de AGM, ya que todo AGM es mínimo-máximo (debido a la estructura matroide), sin embargo, el recíproco
no es verdad.

8 7
3 3
dos dos 4

3 3
1 5
4 3 1

1 6
3 dos
3 dos 5

FIGURA 6.6 Ejemplo de árbol generador MinMax.

https://translate.googleusercontent.com/translate_f 205/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
4 Árbol de suma mínima-máxima-mínima (M 3 S)
El problema MinMax-Min-Sum se abordará en el Capítulo 10. Entre los problemas de optimización
La combinatoria, dos de las más conocidas, dada la cantidad de aplicaciones que tienen, son:
el cuello de botella , o cuello de botella , donde el objetivo es minimizar el costo máximo de todas las variables que
componen la solución, y los problemas de costos lineales, en los que el objetivo es minimizar la suma de costos
estas variables. (M 3 S) es una composición de estos dos problemas, en los que la función objetivo a minimizar
optimizado es la suma algebraica de las funciones objetivo de los problemas mencionados.
Datos p elementos de un conjunto E = { e 1 , e 2 , ..., yp } y F Ì P ( E ), donde P ( E ) es el conjunto de potencias de
Y , una familia finita de subconjuntos perfectamente definidos de E. Las instancias del conjunto F , o
familias de E , podrían ser, por ejemplo, los subárboles de un grafo, los caminos entre dos vértices de
un gráfico o conjuntos de bordes de máxima coincidencia .
Cada elemento e i , i = 1, 2, ..., p , están asociados con dos números reales, uno que representa el costo C i y
otro el peso P i .
Dado que S Î F , donde F es el conjunto de soluciones viables a un determinado problema, la función se define:

ZS() = Max {}
PAGS
yo
+ ∑ C yo
oye∈S
oye∈S

El problema (M 3 S) es el siguiente:

Min ()ZS

SF

Dado un gráfico no dirigido G = ( N , A ), donde N = n , y A = m , considerando un árbol T k = { u j },


j = 1, ..., n - 1, y T el conjunto de todos los árboles de G , podemos definir AG-M 3 S como:

Página 247

240 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

Z ( t k ) = Máx. { P i } + ∑ Ci
ui ∈ tk
ui ∈ tk

Min { Z ()
t k }
tk T∈

O como (M 3 S-MS)

⎧ ⎧ ⎫⎫
⎪ ⎪

Min PAGS k
+ Min ⎨ ∑
C yo⎬⎬
1≤ ≤kp k⎩ ⎭⎭⎪
⎩⎪ SF∈ ∈
yo y S

de modo que resolver el M 3 S-MS puede ser equivalente a resolver un subproblema p secuencia
pero Min_Sum. El algoritmo de Minoux (1989) se basa exactamente en este hecho.

4 Aplicaciones del problema M 3 S-MS


El modelo M 3 S-MS puede representar una serie de situaciones en las que existen dos criterios de valor asociados
asociado con las variables de decisión. Algunos autores denominan este tipo de problemas "con enlaces
equilibrado ”. El llamado modelo equilibrado tiene varias aplicaciones prácticas (Duin y Volgenant [1991]) que
cubrir:

• Enrutamiento de los recursos terrestres en la defensa de la costa (Moreira [1995]).


• Diseño de redes de comunicaciones (Punnen y Nair [1996]).
• Enrutamiento de vehículos con función multiobjetivo (peaje, condiciones de riesgo, etc.).
4 Árbol de generación mínima de grado restringido - (AGM-GR)

El árbol de generación mínima de grado restringido (AGM-GR) es un árbol de generación mínima cuyos vértices
tienen un cierto grado k , donde k > 2. Papadimitriou (1978) demostró que AGM-GR es
NP-Completo. El trabajo de Narula y Ho (1980) presenta un estudio pionero en algoritmos de solución
el problema. Son posibles varios enfoques de solución, como Savelsbergh y Volgenant
(1985) - Combinación de aristas, Fekete et al. (1997) - técnicas de flujo de red, Zhou y Gen (1997) y
Rothlauf y Goldberg (1999) - Algoritmos genéticos, Raidl (2000) - Computación evolutiva.

4 Árbol generador mínimo calificado


En el problema del Árbol Generador Mínimo Calificado (AGM-C), una planta sirve a un conjunto de
vértices N , N = {1, ... n }, de una red dada R (N, A, F), donde A representa el conjunto de arcos lineales
ción A = {1, ..., m } y F el flujo a través de cada arco R . Cada cliente de vértice i está asociado con un
caudal dj > 0. El flujo debe originarse en la central y llegar a cada cliente i . Entre cada par de nosotros
ij se puede establecer una conexión con el costo Cij > 0 y según una capacidad máxima mij > 0. La
El problema tiene como objetivo determinar el más económico que satisfaga la demanda demanda. Papadimitriou (1978)
demostró que AGM-C es NP-Complete. Recientemente destacan las obras de Domschke y Voß

https://translate.googleusercontent.com/translate_f 206/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
(1996) - búsqueda local, Krishnamoorthy et al. (1996) - varias heurísticas, Deo y Kumar (1998) - algoritmos
paralelo, Patterson (1999) - memoria adaptativa, Raidl y Drexel (2000) - computación evolutiva,
Ribeiro y Souza (2002) - Búsqueda en vecindad variable, Mao y Lang (2002), algoritmos paralelos y Fuka-
sawa et al (2003) - branch-and-cut-and-price.

4 Robusto árbol de generación mínima


Este problema corresponde a un modelo de optimización con incertidumbre. En el problema del
Fabricante mínimo robusto (AGM-R) los costos de los arcos están dentro de intervalos, en lugar de ser
números fijos y conocidos. En el caso de AGM-R, queremos encontrar un árbol generador que minimice
minimizar la desviación estándar máxima de su costo en relación a un árbol generador mínimo que toma en cuenta
todas las posibilidades de costo. En el tema destacan los siguientes trabajos: Andrade et al. (1999),
Yaman y col. (2001), Aron y Van Hentenryck (2003), Montemanni y Gambardella.

Página 248

PROBLEMAS DE CONEXIÓN: ÁRBOLES, CAMINOS Y EMPAREJAMIENTO 241

4 Número máximo de árboles generadores de hojas


Árbol generador que maximiza el número de hojas. El trabajo de Galbiati et al. (1994) demuestra que
el problema propuesto actualmente es APX-Complete. Lu y Ravi (1992) presentan algoritmos heurísticos
para su solución, y Fujie (2003) describe un algoritmo exacto para el problema.

6.4.2 - Algoritmos de solución

Cómo una AGM cumple con los requisitos a definir dentro de los matoides (ver concepto en el anexo)
esperamos solucionarlo de una manera muy eficiente e, incluso, mediante
LLAMADA DE SOCORRO. Tarjan (1981) presenta un método general que incluye todos los métodos basados en enfoques
miope. En este sentido, existen tres algoritmos clásicos que permiten una solución rápida y eficiente
para AGM, siendo los algoritmos de Kruskal (1956), Prim (1957) y Borüvka (Wai-Kai Chen,
1990). Los algoritmos de Kruskal y Prim se pueden considerar dos casos particulares del enfoque
joya codiciosa. En el caso de Prim, el árbol del generador se construye desde un borde agregando
nuevos bordes, aumentando la arborescencia inicial hasta incluir todos los nudos. En caso de
Kruskal se puede desarrollar varias arborescencias simultáneas hasta que un solo árbol incluya todas
de los nodos. En cualquier caso, el criterio para incluir aristas en los árboles es codicioso. Describir
veremos los dos algoritmos mencionados y una variación para Prim en los siguientes ítems.

4 algoritmo prim

Considerando los conjuntos S , T y V , donde S Í A , T Í N , V Í N , podemos escribir el algoritmo Prim de


como sigue:

Algoritmo Prim (árbol generador mínimo)

COMIENZO
Lee G = ( N , A ) y D = [ d ij ] matriz de distancias entre los nodos vecinos de G .
Elija cualquier vértice i Î N
T¬{i}
V¬N\{i}
Mientras T ¹ N Para todo j Î T , haga :
comienzo
Encuentre el borde más pequeño ( j, k ) Î A tal que j Î T , k Î V
T¬TÈ{k}
V¬V\{k}
S¬SÈ(j,k)
Fin
Escriba S {bordes del árbol de expansión mínimo}
FIN

La versión del algoritmo Prim que se muestra es O ( n 3 ), ya que el comando para encontrar el borde más pequeño
( j , k ) Î A requiere hasta O ( m ) operaciones ym es O ( n 2 ). Teniendo especial cuidado de no forzar el
goritmo para calcular todos los bordes incidentes en el árbol que se está expandiendo, es posible
reducir la complejidad de Prim. Llamaremos a este algoritmo refinado Prim_Colorido, siendo
formalizado en el marco del mismo título. Apliquemos las dos versiones del algoritmo Prim al gráfico
de la Figura 6.7. El algoritmo Prim_Colorido es O ( n 2 ).
Estilo de:

https://translate.googleusercontent.com/translate_f 207/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

Página 249

242 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

dos dos 4

1 3

1 1 3 –3 6

3 dos

3 dos 5

FIGURA 6.7 Gráfico de ejemplo para las versiones Prim.

T es de la misma en un árbol L .
l ( i , j ) º la longitud mínima del borde en el vértice j , i, j Î T s .

Podemos escribir Prim_Colorido de la siguiente manera:

Algoritmo Prim_Colorido (árbol de generación mínima)

COMIENZO
Lee G = ( N, A ) y D = [ d ij ] matriz de distancias entre los nodos vecinos de G .
elija cualquier vértice j Î N ;
i ¬ 0;
Ti¬{j}
Colorea el borde más pequeño en cada vértice j de T 0 con verde
Mientras i < n - 1 Do
comienzo
Seleccione el borde verde más pequeño ( j, k ) Î A , j Î T i y coloréelo
en azul
Haga que T i +1 ¬ T i È ( j, k )
Para cada borde ( k, z ), z Ï T i +1 , k Î T i + 1
comienzo
Si no hay incidencia de borde verde en z , color ( k, z )
con verde
Caso contrário
comienzo
Si hay un borde ( w, z ), w Î T i +1 , tal que l ( w, z )> l ( k, z ) color
con rojo ( w, z ) y verde ( k, z )
De lo contrario , no haga nada;
Fin
Fin
yo ¬ yo + 1
Fin
Escriba T i {bordes del árbol de expansión mínimo}
FIN

Al elegir el vértice 1 para iniciar el árbol, la Figura 6.8 muestra, de izquierda a derecha y desde
de arriba a abajo, la secuencia de inclusión de bordes generada por la versión clásica de Prim.
La figura 6.9 muestra las opciones y las marcas del algoritmo Prim_Colorido ( V representa los bordes ver-
des , los bordes resaltados son que el algoritmo pide azul , y los que están marcados con
una X, representan las rojas ) en caso de que la inicialización se realice con el nodo número 1.

Página 250

PROBLEMAS DE CONEXIÓN: ÁRBOLES, CAMINOS Y EMPAREJAMIENTO 243

dos dos 4 dos dos 4

1 3 1 3

1 1 3 –3 6 1 1 3 –3 6

https://translate.googleusercontent.com/translate_f 208/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
3 dos 3 dos

3 dos 5 3 dos 5

1 ªinclusión de borde 2 inclusión


ª de borde

dos dos 4 dos dos 4

1 3 1 3

1 1 3 –3 6 1 1 3 –3 6

3 dos 3 dos

3 dos 5 3 dos 5

3 ªinclusión de borde 4 ªinclusión de borde

dos dos 4

1 3

1 1 3 –3 6

3 dos

3 dos 5

Inclusión de último borde

FIGURA 6.8 Ejemplo de evolución del algoritmo Prim.

4 algoritmo de Kruskal
El segundo algoritmo clásico de AGM es el de Kruskal, que se puede formalizar como:

Algoritmo de Kruskal (árbol de generación mínima)

COMIENZO
Lee G = ( N , A ) y D = [ d ij ] matriz de distancias entre los nodos vecinos de G .
Ordene las aristas de G (conjunto A ) en orden no creciente del
distancias d ij en el vector H = [ h i ], i = 1, 2, ..., m
T¬h1
yo ¬ 2
Mientras | T | < n Toma h i Î H y haz
comienzo
Si T È h i es un gráfico (árbol) acíclico, entonces
comienzo
T ¬ T È h yo
yo ¬ yo + 1
Fin
Caso contrário
yo ¬ yo + 1
Fin
Escriba T {bordes del árbol de expansión mínimo}
FIN

Página 251

244 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

dos dos 4 dos dos 4


V
1 3 1 3

1 1 3 –3 6 1 1 3 –3 6

3 dos 3 dos

3 dos 5 3 dos 5

vértice 1 elegido para ser examinado Entre los bordes verdes, el más pequeño es
el borde (1, 2) es de color verde de color azul (e incluido en la solución)

V V
dos dos 4 dos dos 4

1 3 1 3

1 1 3 –3 6 1 1 3 –3 6

V
3 V V dos X V dos

3 dos 5 3 dos 5

vértice 2 elegido para ser examinado z =3 → borde (2, 3) de color azul


z = 4 → borde (2, 4) de color verde por ser el borde incidente más pequeño en T dos
z =5 → borde (2, 5) de color verde

https://translate.googleusercontent.com/translate_f 209/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
z = 3 → borde (2, 3) de color verde
y el borde de color rojo (1,3)
V V
dos dos 4 dos dos 4

1 3 1 3

1 1 X –3 6 1 1 X –3 6

X dos X dos

V
3 dos 5 3 dos 5

vértice 3 elegido para ser examinado Entre los bordes verdes algunos
z =5 → borde (2, 5) de color rojo (X) más pequeño, (3, 5) por ejemplo, está coloreado
z =5 → borde (3, 5) de color verde en azul (e incluido en la solución)

V
dos dos 4 dos X 4

1 3 1 3
V

1 1 X –3 6 1 1 X –3 6

V V
X dos X dos

3 dos 5 3 dos 5

vértice 5 elegido para ser examinado z = 4 → borde (2, 4) de color rojo


z = 6 → borde (5, 6) de color verde z = 4 → borde (5, 4) de color verde

dos X 4 dos X 4

1 3 1 X

1 1 X –3 6 1 1 X –3 6

X dos V X dos

3 dos 5 3 dos 5

Entre los bordes verdes, el más pequeño (5, 4) el vértice 4 se elige para ser examinado
es de color azul y se incluye en la solución → (4, 6) de color rojo y
z = 6 aristas
el borde (5, 6) es de color azul

FIGURA 6.9 Ejemplo de evolución del algoritmo Prim_Colorido.

La secuencia de inclusión de bordes del algoritmo de Kruskal es el vector H = {(4, 5); (1, 2); (2, 3); (2, 4);
(3, 5); (5, 6); (1, 3); (2, 5); (4, 6)}. La figura 6.10 muestra la ejecución del algoritmo.
La complejidad del procedimiento de Kruskal está dominada por el orden de los bordes,
ya que la elección de los bordes se hará en preparaciones O ( m ), y la verificación de la formación de
un ciclo al agregar un borde a un gráfico acíclico también es O (n) . Este procedimiento, si el
los bordes no tienen propiedades específicas, es O ( m log n ).

Página 252

PROBLEMAS DE CONEXIÓN: ÁRBOLES, CAMINOS Y EMPAREJAMIENTO 245

4 algoritmo de Borüvka
Finalmente, el algoritmo de Borüvka abre otra línea de abordaje del problema, desarrollada
ver simultáneamente un bosque mínimo en el gráfico G . Llamando por T j un subárbol de G , y por
Si es un bosque en G , podemos formalizar el algoritmo de la siguiente manera:

Algoritmo de Borüvka (árbol generador mínimo)

COMIENZO
Lee G = ( N , A ) y D = [ d ij ] matriz de distancias entre los nodos vecinos de G .
F 0 es un bosque inicial con n subárboles T j , j = 1, .., n de G (todos los nodos
aislado)
yo ¬ 0
Siempre que F i no sea un árbol, hazlo para cada T j Î F i
comienzo
Determine el borde más pequeño ( x los, y los) incidente en T j donde
Xa Î T j e y a ÏT j
⎡ ⎤
Hacer Fyo+ ←
1 Fyo ∪ ⎢ U (,)xyα α ⎥
⎣ α ⎦

yo ¬ yo + 1
Fin
Escriba F i {bordes del árbol de expansión mínimo}
FIN

dos dos 4 dos dos 4

https://translate.googleusercontent.com/translate_f 210/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
1 3 1 3

1 1 3 –3 6 1 1 3 –3 6

3 dos 3 dos

3 dos 5 3 dos 5

1 ªinclusión de borde 2 ªinclusión de borde

dos dos 4 dos dos 4

1 3 1 3

1 1 3 –3 6 1 1 3 –3 6

3 dos 3 dos

3 dos 5 3 dos 5

3 ªinclusión de borde 4 ªinclusión de borde

dos dos 4

1 3

1 1 3 –3 6

3 dos

3 dos 5

Última inclusión

FIGURA 6.10 Ejemplo de evolución del algoritmo de Kruskal

Página 253

246 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

dos dos 4 dos dos 4

1 3 1 3

1 1 3 –3 6 1 1 3 –3 6

3 dos 3 dos

3 dos 5 3 dos 5

1 ªiteración 2 ªinclusión de borde

FIGURA 6.11 Ejemplo de evolución del algoritmo de Borüvka.

El algoritmo, como se describió anteriormente, solo funciona correctamente si los bordes de G tienen
costos distintos. Para evitar que se produzcan inclusiones indebidas durante las uniones de las subregiones
Por lo tanto, es fundamental ordenar lexicográficamente las aristas de G antes de aplicar el algoritmo. En eso
si la complejidad del procedimiento será O ( n log n ).
Salehi-Fathabadi y Ahrabian (1995) sugieren un algoritmo que en ciertos casos puede funcionar en
El ( m ).

4 El algoritmo de Minoux para el problema M 3 S


El algoritmo de Minoux (1989) consiste básicamente en buscar equilibrar el MinMax y
Min-Sum denotado respectivamente por:

⎧ ⎫
(MM) ⎨ máximo
Mínimo {}PAGS⎬
yo

SF ⎩ oye∈S ⎭

⎧ ⎫
⎪ ⎪
(EM) Min ⎨ ∑
C yo⎬

SF
⎩⎪oye∈S ⎭⎪

Minoux señala que, para cualquier S Î F , existen p valores distintos para Max {}, y eso para
oye∈S yo P

cada P i existe asocia con una solución Min_Sum. El algoritmo polinomial propuesto por Minoux

mencionado en los siguientes puntos:

• Existe un algoritmo eficiente que resuelve el problema Min_Sum.


• Max
oye∈S
{} para cualquier S Î F puede asumir como máximo p = | E | valores distintos.
yo P

• Hay un umbral ( thereshold ) P que supuestamente está asociada con la solución de Max óptima {}.
yo P
oye∈S

https://translate.googleusercontent.com/translate_f 211/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
La estrategia general del algoritmo Minoux es examinar las soluciones óptimas de Min_Sum asociadas
los valores de cada uno de los valores de P = { P 1 , P 2 , ..., P p }, P i Î P . En este caso, la complejidad del
goritmo será O ( p ( O ( MS )), que representa p veces el examen de las soluciones Min_Sum.
Goldbarg y Gouvêa (1997) sugieren algoritmos heurísticos de buen desempeño para problemas
M 3 S-MS grande , uno de ellos, llamado Busca , se transcribe en la tabla respectiva. Considerar
rando Cl r = { u i ... u j ... u i } un ciclo r en G , tenemos:

Página 254

PROBLEMAS DE CONEXIÓN: ÁRBOLES, CAMINOS Y EMPAREJAMIENTO 247

Algoritmo de búsqueda M 3 S

COMIENZO
Lea los datos para G = ( N , A ), donde d e es el costo del borde y Î A , e P y su peso.
Procedimiento de búsqueda ( u i )
Marque el vértice u i
Siempre que haya una ventaja no examinada ( u i , u j )
Vamos y el borde ( u i , u j )
Si u j no está marcado entonces
Si P y > P color , entonces
P color ¬ P e
Z ¬ Z - P e + P color + d e
Caso contrário
Si P e = P color entonces Z ¬ Z + d e
De lo contrario, ciclo ( u i, u j )
Procedimiento de ciclo ( u i , u j )
Para cada arista e ' Î Cl r, calcule la contribución de e' en Z
Quite de Cl r el borde de la contribución más calculada.
En caso de empate, elija el borde con mayor peso.
Si P e = P color
Si e 'es el único borde que tiene el límite máximo en el
árbol entonces
Encuentra el nuevo techo
T ¬ 0, Z ¬ 0;
FIN

El procedimiento Ciclo ( u i , u j ) elimina del ciclo formado en O ( n ) el borde de mayor contribución dentro del
ciclo. Si el borde a eliminar tiene un peso igual al peso actual y es el único con esta propiedad,
Se debe encontrar un nuevo peso de funcionamiento. Este paso de búsqueda se puede realizar en O ( n ) sin la
ayuda de cualquier estructura de datos especial. El procedimiento de ciclo ( u i , u j ) se llamará m - n +1 veces.
Por lo tanto, el procedimiento de búsqueda ( u i ) tendrá una complejidad de O ( mn ).
Punnen y Nair (1996) presentan un algoritmo O ( m log n ) para el problema. La dificultad del
El ritmo es la necesidad de utilizar una estructura de datos especial para su implementación.

6.5 - EL PROBLEMA DE EMPAREJAMIENTO (PE)


Este problema está asociado con varios modelos de optimización. En los próximos capítulos comprobaremos
su conexión con otros problemas de la teoría de grafos. En el Capítulo 7 mostraremos la posibilidad de
su solución a través de algoritmos especializados en la determinación de flujos en redes. En este punto,
examinemos su relación con los problemas de conexión. De hecho, un emparejamiento o emparejamiento
no es más que una forma de encuentro o conexión entre dos elementos o, en el caso de los gráficos, dos ver-
tices. El llamado 1- Matching , o el problema de emparejamiento, en el que se realiza la unión válida
solo por un borde, es extremadamente útil para determinar grupos de afinidad y designaciones
asociaciones.

https://translate.googleusercontent.com/translate_f 212/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

Página 255

248 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

6.5.1 - Una descripción general


La literatura que aborda la solución del problema de emparejamiento es rica. Algunos de los mas importantes
Este trabajo en esta área se resume en la Tabla 6.2:

TABLA 6.2 ALGORITMOS EXACTOS DE SOLUCIÓN PARA PE

Año Investigador Algoritmos exactos

1965 Edmonds O(n4)

1973 Hopcroft y Karp O ( n 2 .5 )

1974 Kameda y Munro O ( mn )

1975 Incluso y Kariv O ( n 2,5 )

1975 Incluso y Tarjan O ( n 2.5 ) - gráficos divididos

1976 Gabow O(n3)

1976 Bondy y Murty O(n3)

1978 Mengido y Tamir O ( n log n ): - ciertas clases de gráficos

1980 Micali y Vazirani O ( min 1/2 )

mil novecientos
Papadimitriou
ochenta y ydos
Steiglitz O ( mn 1/2 ) - gráficos divididos

mil novecientos
Papadimitriou
ochenta y ydos
Steiglitz O ( n 4 ) y O (n 3 )

1988 Derigs O ( min 1/2 )

A pesar de la existencia de algoritmos exactos en orden polinomial para resolver el problema,


algunos casos pueden tener el orden de 10 6 o 10 7 puntos. Con un algoritmo similar
¡Derigs requeriría alrededor de 10 16 operaciones para una solución exacta! En ese caso,
se justifica la búsqueda de algoritmos aproximados más eficientes. Las técnicas utilizadas en estas heurísticas
los tics son:

• Curvas de Sierpinski y Hilbert (Bertholdi y Platzman [1982]).


• Curvas de Hilbert (Iri et al. [1983]).
• Estructura en espiral (Iri et al . [1983]).
La Tabla 6.3 resume algunos de estos esfuerzos:

TABLA 6.3 ALGORITMOS DE SOLUCIÓN HEURÍSTICA PARA PE

Año Investigador Algoritmo heurístico

1981 Iri y col . O(n)

mil novecientos ochenta y dosBertholdi y Platzman O ( n log n )

1983 Avis (varios)

1983 Iri y col. O ( n log n )

Página 256

PROBLEMAS DE CONEXIÓN: ÁRBOLES, CAMINOS Y EMPAREJAMIENTO 249

6.5.2 - Problemas y aplicaciones relacionados

4 El problema del emparejamiento estable


En cuanto al emparejamiento, el problema relacionado más conocido es el llamado emparejamiento estable
problema o problema de emparejamiento estable. Este problema tiene como objetivo determinar una asociación

https://translate.googleusercontent.com/translate_f 213/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
entre agentes
es obtener un donde cada
conjunto deuno tiene una (emparejamiento
asociaciones lista de prioridades independiente. de
o "matrimonio") Lamodo
solución
queano
este problema
haya
hay un par de agentes unidos donde ambos preferirían otros socios para la asociación. Ser la lista
de la Tabla 6.4

TABLA 6.4 LISTA DE PRIORIDADES PARA EL EMPAREJAMIENTO ESTABLE

Persona Lista de preferencias

1 2 - 3 - 4 - 5 -6

dos 3-4-5-6-1

3 4-5-6-1-2

4 5-6-1-2-3

5 6-1-2-3-4

6 1-2-3-4-5

La asociación 1-2; 3-4; 5-6; los individuos 1, 3 y 5 están asociados con su socio preferido, asistiendo
definir emparejamientos estables. La asociación 3-6, por ejemplo, no es estable.
Otra situación para el problema del emparejamiento estable es admitir el compromiso. Lo ves-
como situación de compromiso un requisito estricto de un socio. En este caso, el emparejamiento
El desarrollo estable se define como aquel en el que no hay dos individuos que violen el requisito de
compromiso en sus asociaciones.
Entre los problemas de esta clase destacamos:

4 Problema matrimonial
En este caso, el problema asocia H hombres y M mujeres en una coincidencia estable, es decir,
uno en el que cada socio cumpla la máxima prioridad de su cónyuge o, en el segundo caso,
que ambos son la máxima prioridad del otro. Obviamente, para cualquier caso del problema de
matrimonio no estricto existe al menos un matrimonio estable. Este matrimonio se puede obtener en
O ( n 2 ), donde n representa el número de hombres o mujeres (supuesto de la posibilidad de resolver
solución monógama viable). Gale y Shapley (1962) resuelven este problema para el caso del número de
los hombres sean iguales a las mujeres. Knut (1976) analiza el problema y los algoritmos de solución.

4 Problema de elección de acción


Este problema involucra un conjunto par de n elementos, cada uno con una lista de preferencias con
n - 1 agentes. El emparejamiento estable organiza al grupo en un conjunto de n / 2 pares que nunca
dos elementos ya asociados en pares extraños tienen una preferencia mutua. Este problema con
Los requisitos restringidos son NP-Complete . La tabla 6.5 muestra una situación en la que no es posible encontrar un
amigo a individuo 4. Sea la solución 1-2 y 3-4. En este caso, 3 prefiere 2 y 2 prefiere 3 en relación con su
propios compañeros. En todas las demás situaciones ocurrirá lo mismo, impidiendo la existencia de un
solución estable en este caso (ejemplo en Ronn [1990]).

Página 257

250 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

TABLA 6.5 LISTA DE PRIORIDADES PARA ELEGIR EL COMPARADO

Persona Lista de preferencias

1 2-3-4

dos 3-1-4

3 1-2-4

4 cualquiera

4 Problema de asignación interna


Es una versión generalizada del problema del matrimonio, es decir, una versión polígama en
que los individuos pueden estar asociados con más de un individuo. Un caso de aplicación práctica
esta forma de distribución se da en la distribución de médicos internos en varios hospitales. Cada anfitrión
pital tiene un cierto número de puestos a cubrir con una determinada prioridad asociada. Por
por otro lado, los médicos tienen preferencias y prioridades en relación con los hospitales.
Una asignación se considera no estable en este caso cuando:

1. El médico o el hospital prefieren que no se les asigne para participar en una asociación.

https://translate.googleusercontent.com/translate_f 214/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
2. Tanto el hospital como el médico tienen otro reclamo con mayor prioridad.

Roth (1984) define esta aplicación y presenta un algoritmo de solución para el problema.

4 Problema de asignación interna con parejas


El problema descrito anteriormente sufre una profunda transformación si se permite a los médicos
los médicos pueden unirse por parejas y unirse a sus listas de pretensiones. Este caso corresponderá a la posibilidad
la necesidad de que los pacientes hospitalizados estén casados y deseen estar ubicados geográficamente
cerca. Este problema es NP-Arduo (Ronn ([1990])).

4 Problema de emparejamiento de cuello de botella


Esta es la versión MinMax del emparejamiento. Lo interesante de esta pareja es
la existencia de un algoritmo muy eficiente y fácil de implementar con complejidad
O (( n log n ) 1/2 m ) (Gabow y Tarjan [1988]).

6.5.3 - Enfoques de solución


Existen algunos enfoques clásicos para resolver este problema, a saber:

• Enfoque de Edmonds: solución constructiva basada en enumeración


de Caminhos
Este enfoque está asociado con el desarrollo de rutas dentro del gráfico que permiten
aumentar el número de emparejamientos obtenidos. De acuerdo con los algoritmos de Edmonds, algunos conceptos
son fundamentales:

4 camino alterno
Si desarrollamos cualquier camino que comienza en el vértice 1, podemos construir un emparejamiento
entre los vértices del camino uniéndolos de dos en dos. Para ello, podemos imaginar un proyecto
proceso de etiquetado en los nodos, alternando etiquetas (+ y -, por ejemplo). Un emparejamiento válido
unirá vértices de signos opuestos. Al camino de i a j así etiquetado, llamamos al camino
alterno. La figura 6.12 muestra el proceso de emparejamiento usando cualquier ruta
en G .

Página 258

PROBLEMAS DE CONEXIÓN: ÁRBOLES, CAMINOS Y EMPAREJAMIENTO 251

1 4 5 6 1 4 5 6

dos 3 7 8 dos 3 7 8

9 10 9 10

Gráfico G Un camino desde el vértice 1

+ 1 4 5 6 + 1 4 5 6

dos 3 7 8 dos 3 7 8
- + - +
+ - + -

9 10 9 10
- + - +

Un etiquetado alternativo en camino Un emparejamiento asociado

FIGURA 6.12 Un emparejamiento de una ruta G.

En un gráfico G , en el que estamos considerando un emparejamiento de vértices M Í A , un camino


Nho se dice M -alternante sus bordes son alternativamente pertenecen a M y A \ M . En el caso de la figura
6.12, M = {(1, 2); (3, 9); (7, 10)}.

4 Camino creciente
Si en el examen de un gráfico al que ya se le ha asignado un emparejamiento (no óptimo, no máximo),
ver una ruta que conecta dos nodos no emparejados (no saturados, con señales opuestas), luego
podemos aumentar el número de emparejamientos asociados con la ruta alterna con solo
desplazamiento del esquema de emparejamiento (de positivo a negativo o viceversa).
La figura 6.13 ejemplifica una trayectoria creciente y muestra su efecto sobre el crecimiento del número de
ro Nos emparejado en G .

https://translate.googleusercontent.com/translate_f 215/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

- -
+ 1 4 5 6 + 1 4 5 6

dos 3 7 8 dos 3 7 8
- + - +
+ - + -

9 10 9 10
- + - +

Camino ascendente Nuevo emparejamiento

FIGURA 6.13 Camino ascendente .

Podemos eliminar inmediatamente de las estructuras previamente definidas una condición necesaria
es suficiente para que una coincidencia M sea máxima: una coincidencia M con G es máxima
si y sólo si no hay una trayectoria de aumento en G . Posibles rutas de aumento pueden
se pueden buscar sistemáticamente en G , a través de un árbol enraizado en un determinado nodo. LA
este árbol lo llamaremos árbol alterno. La figura 6.14 muestra el uso del árbol alterno para
una búsqueda de rutas de aumento, arraigada en el vértice 5 del gráfico de la figura 6.12. Formal-
podemos definir un árbol alterno T a = ( V, L ) en relación con una coincidencia M como
el que:

Página 259

252 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

1. Contiene un solo vértice aislado x 1 (o raíz de T a ).


2. Todo camino que une x 1 Î V a cualquier otro vértice x j Î V es un camino alterno;
3. Se contiene todos los bordes de M incidente sobre vértices V .

-
8

- + - +
+ 1 4 5 6 7 10 9

- - +
- dos 3 7 8
+ 5 3 dos
+ -

+
4
9 10
- +

-
1

Emparejamiento
Árbol alterno enraizado en 5
M = {(1, 4); (2, 3); (7, 8); (9, 10)}

-
8 6

- +
1 4 5 6
+ - +
7 10 9

dos 3 7 8 -
+
- - +
- +
5 3 dos

+ + 9 10 -
4

-
1

Camino ascendente ascendente Nuevo emparejamiento encontrado

FIGURA 6.14 Árbol alterno enraizado en 5.

Edmonds descubrió que los problemas de permutación en el etiquetado de rutas estaban asociados
enumeración de ciclos de longitud impar en G con vértices no apareados (llamados no
saturado). Estos conjuntos de vértices pertenecientes a un ciclo de longitud impar en el árbol de
enumeración, Edmonds llamó flores (algunos autores traducen el término por brote ). Los vértices
5, 6 y 8 forman una flor de longitud 3. Las flores permiten enumerar un borde.
más de una vez en un camino ascendente, causando problemas para el despliegue del árbol
alterno. Para evitar este problema, y basándose en un teorema (Papadimitriou y Steiglitz [1982]),
las flores deben identificarse y contraerse a un nodo, después de que se emparejan sus nodos.
El enfoque de Edmonds permite el desarrollo de una serie de algoritmos que exploran la
posibilidad de limitar la enumeración de trayectorias aumentadas, identificando eficazmente los bloques

https://translate.googleusercontent.com/translate_f 216/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
sonidos, etc.
Hopcroft y Karp funcionan exactamente en los casos en que la ruta de aumento ocurre en un
ruta más corta. En ese caso, la complejidad de la coincidencia mínima se puede reducir a
O ( n 2, 5 ).

• Enfoque de flujo en redes


Se desarrollará en el Capítulo 7, ítem 7.4.3.

Página 260

PROBLEMAS DE CONEXIÓN: ÁRBOLES, CAMINOS Y EMPAREJAMIENTO 253

6.6 - EL PROBLEMA DEL ÁRBOL STEINER


El problema de la gráfica de Steiner se deriva del conocido problema euclidiano de Steiner, propuesto
de hecho por Fermat en el siglo XVII. El problema en su versión simplificada era que los datos
tres puntos en el plano (de ahí el término euclidiano), encuentre un cuarto punto tal que la suma de las distancias
desde ese cuarto punto hasta los tres originales fue mínimo. A Torricelli (hacia 1640) se le atribuye la solución
del problema en su primera versión. Aunque Steiner no fue el causante del problema (o
incluso su solucionador) acabó siendo responsable de su difusión en el entorno científico, que
valió la pena el nombre en el problema. El caso general es determinar la minimización del peso de conexión entre
Tre n puntos en el plano. De hecho, la solución al problema consiste en un árbol que engloba el
puntos a conectar y los puntos de cruce a determinar (o puntos Steiner). A favor-
El problema de Steiner en los gráficos no dirigidos es el problema de conectar, a un costo mínimo, un conjunto
nodos G . Para caracterizar el problema, llamaremos L y X a los conjuntos resultantes de un
del conjunto N , es decir, L Í N y X Í N , donde L È X = N y L Ç X = Æ, | X | = r , | L | = s . A favor-
El problema será determinar un subconjunto de aristas B Í A que conecta todos los vértices x i Î X en un gráfico
conectado, i = 1, ..., r , para minimizar Σ donde
cj c j es el costo o la longitud de los bordes B . O
j∈
B

Este problema no requiere que la estructura de enlace utilice sólo los vértices de X , o que el número de
El número de aristas de B es mínimo, la única restricción es la conectividad de la solución. Los vértices de L que eran
rem utilizados en la solución se denominan nodos de Steiner . En la figura 6.15 tenemos L = {2, 4, 5, 6, 8, 9, 11,
12} y X = {1, 3, 7, 10}.

dos dos dos


4 6 3 4 6 3 4 6 3

1 8 1 8 1 8

9 9 9
10 10 10
7 7 7

11 11 11
5 5 5
12 12 12

X = { 1,3,7,10 } Solución sin Steiner Points Solución con Steiner Point (8)

FIGURA 6.15 Árbol de Steiner en gráficos.

Mirando la Figura 6.15, vemos que si | X | = 2, el problema se reduce al camino más corto
entre los dos nodos de X . Si L = {Æ}, la solución es un árbol de expansión mínimo, ya que, en este caso,
X = N . Aunque, como vimos en este capítulo, existen algoritmos eficientes para resolver
En estos dos casos específicos, la situación donde L¹Æ y X > 2 conduce a un problema NP-arduo como se muestra
tra Karp (1972). Un trabajo muy completo sobre las formulaciones de este problema se encuentra en
Goemans y Myung (1993).

6.6.1 - Una descripción general


La literatura que aborda la solución del problema de Steiner en gráficas es numerosa. Algunos de los mas importantes
El trabajo importante en el área exacta se resume en la Tabla 6.6:

TABLA 6.6 ALGORITMOS EXACTOS DE SOLUCIÓN PARA EL PROBLEMA STEINER EN GRÁFICOS

Año Investigador Algoritmos exactos

Algoritmo de enumeración basado en árbol de generación (STEA)

1971 Hakimi Primera formulación y presentación de STEA

1976 Lawer Cambios en STEA

1985 Balakrishnan y Patel Adición de nudos artificiales y solución de árbol generador de flujo

https://translate.googleusercontent.com/translate_f 217/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
Página 261

254 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

TABLA 6.6 CONTINUACIÓN

Año Investigador Algoritmos exactos

Algoritmo de enumeración topológica (TEA)

1971 Hakimi Modificación de un algoritmo para el problema euclidiano de Steiner

Algoritmos de programación dinámica

1971 Dreyfus y Wagner Desarrollo del subárbol Steiner

Algoritmos basados en el problema de cobertura

1980 Aneja Formulación vía PR, solución vía algoritmo de Bellmore y Ratliff (1971)

Algoritmos basados en enumeración implícita

mil novecientos
Shoreochenta
y col. y dos Uso de límites inferior y superior para limitar la enumeración

Algoritmos basados en la relajación lagrangeana

1984 Beasley y col. Límites obtenidos de RL para reducir el número de subárboles de Steiner

Algoritmos duales (media luna doble)

1984 Wong Límites obtenidos de la formulación dual para reducir la enumeración

Otros enfoques

1989 Duin y Volgenant Técnicas de reducción

1992 Chopra y col. "Ramificar y cortar"

1998 Koch y Martin "Ramificar y cortar"

1998 Lucena y Beasley "Ramificar y cortar"

2001a Técnicas de reducción de Polzin y Daneshmand

El trabajo de Hwang y Richards (1992) presenta una revisión bibliográfica muy actualizada. O
El problema también es rico en enfoques heurísticos, como se muestra en la tabla 6.7.

TABLA 6.7 ALGORITMOS HEURÍSTICOS PARA RESOLVER EL PROBLEMA


DE STEINER EN GRÁFICOS

Año Investigador Algoritmos heurísticos

1980 Takahashi y Matsuyama Heurística basada en la ruta más corta O ( r . N 2 )

1980 Takahashi y Matsuyama Heurísticas basadas en el árbol generador mínimo O ( n 2 )

1980 Aneja Heurística basada en el problema de cobertura O ( n 3 )

1981 Kou y col. Heurística basada en el gráfico de distancia inducida O ( r . N 2 )

Heurística basada en el gráfico de distancia inducida O (( n - r ) q . R 2 + n 3 )


1981 Plesnik
donde 0 £ q £ r - 2

1981 Plesnik Heurísticas basadas en la contracción We The ( n 3 )

1981 Herrero Heurística para el problema en la norma euclidiana O (nlogn)

1983 Rayward-Smith Heurística basada en distancias medias O ( n 3 )

1984 Wong Heurística basada en relajación del método de doble media luna

1991 Diané y Plesník Heurística híbrida O ( n 3 )

Página 262

PROBLEMAS DE CONEXIÓN: ÁRBOLES, CAMINOS Y EMPAREJAMIENTO 255

TABLA 6.7 CONTINUACIÓN

Año Investigador Algoritmos heurísticos

Heurística basada en árboles con restricción K

1993 Zelikovsky Relación de aproximación de 1.834

1994 Berman y Ramaiyer Relación de aproximación de 1,734

https://translate.googleusercontent.com/translate_f 218/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
1996 Zelikovsky Relación de aproximación de 1,694

1997 Promel y Steger Relación de aproximación de 1,667

1997 Karpinsky y Zelikovsky Relación de aproximación de 1,644

1999 Hougardy y Promel Relación de aproximación de 1,598

2000 Robins y Zelikovsky Relación de aproximación de 1,550

1989 Hesser y col. Algoritmos genéticos

1991 Dowsland Escalada y recocido simulado

1993 Williamson y col. Método primordial-dual

1995 Esbensen Algoritmos genéticos

1995 Agrawal y col. Heurísticas basadas en la unión de subárboles

1996 Verhoeven y col. Busqueda local

1997 Wade y Rayward-Smith Busqueda local

1998 Charikar y col. Algoritmos para el problema de Steiner en gráficas dirigidas

1999 Gendreau y col. Búsqueda tabú

1999 Duin y Voss Método codicioso con estrategia de memoria - Branch-and-Greedy

2000 Gröpl y col. Revisión de algoritmos heurísticos

2000 Martins y col. AGARRAR

2001b Polzin y Daneshmand Algoritmo heurístico

2002 Julstrom Algoritmo genético para PSG

2002 Satoh y col. Algoritmo heurístico

6.6.2 - Aplicaciones y problemas relacionados

Entre varias aplicaciones destacamos:

• Diseño de circuitos electrónicos (Smith et al . [1980] y Grötschel y Weismantel [1996]).


• Redes de comunicación (Hanan et al . [1975], Goel y Munagala [1999]).
• Planificación de redes de comunicación externas (Luna et al . [1987]).
• Redes de comunicación y tráfico (Frank y Frisch [1976]).
• Tuberías de petróleo y gas (Rothfarb [1970]).
• Proyectos de instalación eléctrica y mecánica (Smith y Liebman [1979]).

Página 263

256 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

• Distribución de agua para redes de riego y drenaje (Lee [1976]).


• Modelos para la realización de circuitos VLSI (Grötschel y Weismantel [1997]).
• Edificios (Smith y Liebman [1979]).
• Varias aplicaciones (Hwang y Richards ([1992]).
• Aplicaciones industriales (Cheng y Du [2001]).
Una serie de problemas y situaciones caracterizan los casos relacionados con el problema de Steiner en
fos. Algunos de ellos son:

4 El problema de Steiner en las normas lineales (PSNL)


Este es un caso particular del problema de Steiner en el plan. En este problema, las coordenadas
de los puntos a conectar, además de pertenecer a un plano y cumplir con el estándar euclidiano general,
cumplen con el estándar euclidiano llamado lineal , es decir, L x = | x 1 - x 2 | + | y 1 - y 2 |. Esta norma es aplicable
circuitos eléctricos, calles de la ciudad, sistemas mecánicos, etc. El problema fue formulado
de primera mano por Hanan (1966) y varias aplicaciones prácticas sugeridas por Smith y Liebman
(1979) así como una heurística O ( r 4 ) para su solución. Smith y col. (1980) presentan una heurística
ca O ( r log r ) basado en diagramas de Voronoi y gráficos duales para la solución PSNL. Para esto

https://translate.googleusercontent.com/translate_f 219/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
problema, todavía tenemos una heurística propuesta por Richards (1989) que, basada en la heurística de
Hanan (1966), originalmente O ( n 2 ), usa la geometría de la norma lineal para encontrar un implemento
ción O ( n log n ) para la misma heurística. Komlós y Shing (1985) desarrollan dos heurísticas
enfoque probabilístico, dividiendo los puntos de cruce obligatorios en pequeños
juntos para aplicar, en estos casos reducidos, el procedimiento exacto de Dreyfus y Wagner (1971).
Posteriormente, los subgrafos obtenidos se combinan y amplían para llegar a una solución global.
Beasley (1992) sugiere una heurística para el problema en  2 .

4 El problema de Steiner con la conexión estocástica (PSCE)


Los problemas en las redes de comunicaciones tienen muchas situaciones en las que mantener la efectividad
la calidad de un enlace es una variable aleatoria. Los bordes tienen cierta probabilidad de no ser
capaz de mantener una conexión considerada legal para el sistema. Valiant (1979) demuestra que este
El problema de optimización es NP-arduo. Richey y col . (1985) presenta un algoritmo eficiente para un caso
gráfico de comunicación particular.

4 El problema del recolector de premios Steiner Tree - Problema del árbol Steiner de recolección de premios
(PCPAS)
El problema del colector de primas Steiner Tree en un gráfico ponderado G con ganancias asociadas
nodos, consiste en determinar un subárbol en G que minimiza la suma de los pesos de los
aristas del subárbol sumadas al total de ganancias acumuladas en los vértices de G que no pertenecen al
subárbol. El presente problema se describe en Johnson et al. (2000) y resuelto en Canuto et al.
(2001) y Klaus et al. (2004). El modelo puede representar situaciones de implementación de red, como
ejemplo, distribución de gas donde sea necesario además de atender puntos de demanda a través de
red de distribución, elija qué puntos son más atractivos para apoyar la inversión del
construcción de la red de distribución. Los puntos de demanda están asociados con valores de atracción que
penalizar la función objetiva de minimización en caso de inasistencia. En la aplicación se describe el costo
de implantación se considera en el valor de los bordes.

4 El problema del árbol terminal Steiner (PST)

El problema del árbol terminal de Steiner, también conocido en la literatura como el Steneir completo
Problema de árbol o Problema de árbol terminal Steiner , representa un caso particular del problema Steiner

Página 264

PROBLEMAS DE CONEXIÓN: ÁRBOLES, CAMINOS Y EMPAREJAMIENTO 257

donde todos los X nodos terminales son hojas en el árbol. Los trabajos de Lin y Xue (2002) y Lu et al.
(2003) abordan el problema.

4 El problema del árbol de Steiner en clústeres (PSG)


También conocido en la literatura como “Group Steiner Tree”, consiste en determinar en una gráfica
conectados y ponderados y que contienen grupos disjuntos de nodos, un árbol de longitud mínima y al menos
al menos un nodo de cada grupo. Los nodos elegidos en los grupos se denominan nodos terminales. O
Este problema fue abordado por Reich y Widmayer (1989) y puede considerarse como una generalización.
ción del problema de cobertura mínima (problema de cobertura mínima de septiembre ). Bateman y col . (1997) dirección
aplicación del problema en el funcionamiento de las terminales portuarias y proponer un algoritmo aproximado
bastante eficiente. Even y Kortsarz (2002) desarrollan un algoritmo con una relación polilogarítmica
aproximación igual a O (log S ⋅log m / log log S ), donde m representa el número de grupos y S el número
de terminales.

4 El problema de Steiner generalizado (PEG)


Este caso es muy utilizado en redes de suministro de electricidad, agua o comunicaciones. En estos
casos, el modelo, por regla general, busca cumplir dos objetivos en conflicto:

• Minimizar los costos totales de operación e instalación.


• Maximizar la confiabilidad de la operación.
La confiabilidad a menudo se expresa a través de los grados de conectividad logrados por la confianza
bajo análisis. A través de los árboles Steiner es posible modelar el problema de los costos de conexión
conexiones. Es visible que la solución de conexión basada en una estructura de árbol tiene una gran vulnerabilidad.
ante una desconexión estocástica. Por cada falla que ocurra en las conexiones o en los vértices de la
Coste mínimo el servicio se interrumpirá al menos en una parte de la red. En este caso, la solución
de equilibrio buscará un k grado de conexión. El problema se puede formular (Winter [1987]) de la siguiente manera:
siguiente manera:

(PEG) Minimizar z = ∑ c ij x ij
ij ,A∈

sujeto a:

https://translate.googleusercontent.com/translate_f 220/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
kl
X ij ≥ y ij + y
kl "( i , j ) Î A ," k , l Î X , k ¹ l (6,1)
Ji

∑ ≥y klkj s kl "k,lÎX,k¹l (6.2)


(,)kj∈A

∑ ≥y Illinois
kl
s kl "k,lÎX,k¹l (6,3)
(,il A∈ )

∑ y
kl
pj - ∑ =y ip0kl " k , l Î X ," p Î N \ { k , l } (6,4)
(,pj A∈ ) (,ip A∈ )

x ij Î {0, 1} "( i, j ) Î A , (6,5)

kl ≥ 0
y yo " i , j : ( i , j ) Î N ," k, l Î X , k ¹ l (6,6)

Página 265

258 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

En que:

kl ≡ la cantidad de producto que se moverá de k a l a lo largo del borde ( i, j ) en la dirección de i


y yo

para j.
S = [ s ij ] º la matriz de requisitos de conectividad entre los pares de vértices i , j Î X, es decir, entre
los vértices i y j hay una s ij conectividad ( s ij bordes de conexión).
x ijº variable binaria donde 1 significa que la arista ( i, j ) pertenece a la solución y 0 en caso contrario.

La restricción (6.1) garantiza que el producto asociado con cada par fuente-destino ( k, l ) solo puede usar uno
arco (i, j) que es realmente activado por el modelo.
La restricción (6.2) indica que el flujo de producto ( k , l ) debe fluir desde el nodo k , a través de un número
número de nodos sucesores al menos igual al grado de conectividad requerido para el producto ( k , l ).
La restricción (6.4) asegura que las conexiones de producto ( k , l ) que salen de los vértices de Steiner son
al menos igual al número de conexiones entrantes.

4 El problema del diseño de redes y formulaciones multiproducto para el problema


Steiner (PSM)
El área de flujo ha experimentado, en los últimos años, un gran desarrollo en la dirección del modelado
y resolución de problemas de comunicación en la red. Hay, en esta línea de problemas prácticos,
casos, que van desde la etapa de definición de comunicaciones en escenarios restringidos, hasta los modelos
para la política global para la definición de equipos de comunicaciones y tráfico, considerando todos
los niveles necesarios y teniendo en cuenta diversos escenarios para la interpretación económica de
pero. Presentaremos dos formulaciones muy interesantes para esta importante aplicación de la investigación.
investigación operativa en el mundo actual. Considere la gráfica G = ( V , E ) de la Figura 6.16, donde las aristas
modelar la posibilidad de comunicación directa entre sus nodos. Supongamos que hay un nodo en el centro.
red de comunicación y fuente del flujo que circulará por la red y que hay necesidad de conectar
un número k , k = 1, ..., | K | nodos que tienen una demanda definida como d k , a ese centro de cooperación
comunicación.
Considerando que existe un conjunto de costos asociados con la implementación y operación del
comunicación, entonces este problema se puede resumir en la necesidad de determinar una arborescencia
en G que minimiza los costos operativos y de implementación, para un horizonte operativo conveniente
final del sistema. Este tipo de problema puede modelarse mediante formulaciones de flujo múltiple.
producto que presentaremos a continuación.

4 5 8

11 6 13 1 14 7 10 12

dos 3 9

Centro de Comunicaciones

Conexión de nodos (o de Steiner)

Nodos de demanda

https://translate.googleusercontent.com/translate_f 221/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

FIGURA 6.16 Gráfico del problema de diseño de la red - vista local.

El interés en las formulaciones multiproducto para el problema Steiner y sus extensiones radica en el hecho de que
Los laxantes de programación lineal a estos problemas pueden resolver con precisión varios casos importantes
(Luna y col . [1998]).

Página 266

PROBLEMAS DE CONEXIÓN: ÁRBOLES, CAMINOS Y EMPAREJAMIENTO 259

• Formulación de producto único (FPU)


Considerando la definición de costos estructurales y operativos adecuados, el problema propuesto consiste en
determinar un árbol de costo mínimo que conecte el centro de conmutación a todos los puntos
demanda, enfatizando que, en el modelo, todo flujo se originará en el centro de comunicaciones.
Definiendo en un gráfico G = ( V, E ):
⎧1, si una conexión directa usa el arco (,) ij
x ij º ⎨
⎩0, caso contrário

b ijº costo estructural fijo para instalar una línea de transmisión directa en el arco ( i, j )
b ij = bd ij , donde d ij es la distancia (en metros) entre los vértices i y j , ebo costo unitario (por metro) de conexión
perro.

c ij º costo operativo variable relacionado con la transmisión de una unidad de flujo a través del arco ( i, j )

x ij º g d ij , donde d ij es la distancia (en metros) entre los vértices i y j , por ejemplo, es el costo por metro para transmitir
una unidad de flujo.

f ijº flujo que pasa por el arco ( i, j ).

(FPU) Minimizar ∑ ( c ij f ij + b ij x ij )
(,)ij E ∈

sujeto a:
- ∑ Foj = - ∑ rek (6,7)
(,)oj E ∈ k∈
K

∑ Fik - ∑ Fkj = rek ∀ k∈K (6,8)


(,)ik ∈ Y (,)kj E ∈

∑ Fij - ∑ FJi = 0 ∀ j∈VK \ \ {} O (6,9)


(,)ij E ∈ (,)jl E ∈

⎛ ⎞

Fij ≤ ⎜ ∑⎟
dxk ⎟ ij , ()∀ yo, j∈E (6,10)
⎝k ∈K ⎠

∑ ≥X ij K (6,11)
(,)ij ∈E

x ij Î {0, 1}, "( i, j ) Î E (6,12)

La función objetivo tiene dos términos. El primero está asociado con el costo total de enviar flujo a través
a través de los arcos, el segundo acumula el costo fijo relacionado con el uso de los arcos. La restricción (6.7) asegura
que la capacidad del vértice de cambio es suficiente para satisfacer la demanda de los otros vértices. LA
Los modelos de restricción (6.8) exigen imposiciones, (6.9) asegura la conservación del flujo en los vértices de
Steiner. La restricción (6.10) asegura que no habrá flujo en los arcos que no sean elegidos por la solución.
y (6.11) establece que al menos | K | Se seleccionarán arcos, asegurando la conexión de todos
los nudos a través de un árbol. El modelo tiene una restricción de tipo (6.7), | K | restricciones de tipo (6.8),
| V | - | K | - 1 tipo de restricciones (6.9), | E | restricciones de tipo (6.10), una restricción de tipo (6.11) y | E |
variables de tipo (6.12).

Página 267

https://translate.googleusercontent.com/translate_f 222/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
260 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

• Formulación multiproducto (FPM)


Considerando la definición de costos estructurales y operativos adecuados, el problema propuesto
es determinar una arborescencia. Consideraremos las siguientes variables adicionales al modelo
(FPU):

c kijoperacional variable operativa que cuantifica el costo de tránsito de una unidad de producto k a través del arco

( yo, j ).

c kijº d k d ij , " k Î K , donde d k es el costo por metro para transmitir una unidad de flujo de producto k.

f ijk uxo Flujo que pasa por el arco ( i, j ) y se destina al punto de demanda k .

Este modelo permite asociar diferentes costos variables a productos y arcos.

⎛ ⎞
(FPM) Minimizar z = ∑ ⎜
⎜bxij ij + ∑ cfijk ij
k ⎟

(,)ij E ∈
⎝ k∈
K

sujeto a:

- ∑ =Fojk - rek para cada nodo o e " k Î K (6,13)


(,)ij E ∈

∑ =Fikk rek "kÎK (6,14)


(,)ik∈ Y

∑ k
Fij - ∑ =F0jlk "jÎV\K\{o} (6,15)
(,)ij E ∈ (,)jl E ∈

k
Fij ≤ dxk ij , "( i, j ) Î E y" k Î K (6,16)

∑ ≥1
x oj para el nodo el (6,17)
(,)oj∈E

∑ =X ik1 "kÎK (6,18)


(,)ik∈ Y

∑ X lj - ∑ ≥X Illinois
0 "lÎV\K (6,19)
(,)lj E ∈ (,)il E ∈

∑ X lj
(,)lj E ∈
∑ X Illinois
≥ "lÎV\K\{o} (6,20)
(,)il E ∈
∑1
(,)lj E ∈

f ijk ≥ 0 "( i, j ) Î E y" k Î K (6.21)

x ij Î {0, 1} "( i, j ) Î E (6.22)

Página 268

PROBLEMAS DE CONEXIÓN: ÁRBOLES, CAMINOS Y EMPAREJAMIENTO 261

La función objetivo tiene en cuenta no solo los costos fijos, sino los relacionados con el flujo de cada producto. LA
La restricción (6.13) asegura que la demanda total de un producto k es satisfecha por el flujo que se origina en el vértice
traspuesta. La restricción (6.14) impone que la demanda de un producto k es igual al flujo de ese producto que
alcanza el vértice k . La restricción (6.15) garantiza la conservación del flujo a través de los vértices de paso. LA
La restricción (6.16) fuerza el flujo cero a través de los arcos no elegidos para componer la solución. La restricción
(6.17) fuerza al menos un arco activo a conectar el vértice de conmutación a la red. Garantías de restricción (6.18)
que exactamente un arco activo conecta cada vértice de demanda. Restricción (6.19) asegura que la activación
cualquier arco que llegue a cualquier nodo Steiner implica la activación de uno o más arcos que salen
del nudo. Restricción (6.20) garantiza que la activación de arcos que salen de un nodo Steiner implica la activación
exactamente un arco incidente en el nodo. La restricción (6.21) asegura que el flujo no sea negativo.

https://translate.googleusercontent.com/translate_f 223/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
Los modelos FPU y FPM son muy útiles para formular problemas de diseño de redes.
comunicaciones (Randazzo y Luna [2001]), permitiendo el éxito en la resolución de grandes problemas
(todavía Geoffrion y Graves [1974], Boorstyn y Frank [1977], France y Luna [1982], Gavish [1982], Chris-
tofides y Beasley [1982], Cho [1983a] y [1983b], Magnanti y Wong [1984] y Balakrishnan y Altinkemer
[1992]).

4 El problema de Steiner con los vértices ponderados (PSVP)

Considere que, en las mismas condiciones que el problema de Steiner en gráficas en cada vértice de la gráfica G
= ( N , A ) se asocia un valor o peso, w i . Para un subconjunto dado de vértices XÍN una solución
(PSVP) es un árbol en G , T S = ( T , A r ), TEX , A r Í A que conecta el conjunto de vértices según
dando la siguiente función objetivo:

Minimizar z = ∑ w yo + ∑ Cij

eso (,)ij aire∈

Sin duda, esto es una generalización del PEG, ya que si el vector de peso w i es nulo el
PSVP se convierte en PEG. Las situaciones de ubicación de instalaciones en plantas industriales pueden ser
formulado a través de PSVP, (Wong [1984]). En estos casos, los vértices pueden representar clientes que exigen
servicio de presa. Los otros nodos del gráfico se pueden asociar con posibles ubicaciones de estaciones de servicio.
procedimiento. El vector c ij puede representar los costos de transporte entre los nodos i y j . El vector w i puedo cuantificar
los costos fijos de ubicar una instalación en el vértice I de la planta .

4 Problema de arborescencia de Steiner (PAS)


Este caso es una generalización del PSVP. El problema es presentado por Wong (1984) y detallado en
Duin y Volgenant (1987). Consideremos PSVP en un gráfico G = ( V, E ). El PSVP tiene como objetivo determinar
una arborescencia en T S en G , arraigado fuera de un conjunto c 0 Î X. Segev (1987) presenta una
transformación de costos que lo reduce a PSVP.

4 El problema del bosque de Steiner (PFS)


Algunas situaciones de modelado pueden no requerir que las estructuras de conexión formen un solo cor-
polvo. Este caso aborda problemas en los que hay varias estaciones de distribución de agua o aceite, o
posibilidad de establecer redes de información locales donde los costos más altos están asociados con
configuraciones de redes locales, con el costo de conexión al "exterior" (estación central, Internet
etc.) o interconexión de redes, no significativa en relación al costo local. Obviamente el
todos los puntos a través de ese enlace externo no serían una solución razonable por razones de seguridad, tráfico
tráfico y fiabilidad. En este caso, el requisito recae en la configuración mínima válida, es decir, en la
número mínimo de nodos que proporcionará un punto de servicio o número máximo de subredes
Servicio.
Podemos plantear este problema, entonces, de la siguiente manera: determine como máximo m subgrafos
conectado en G = ( N , A ), ( m < | X |), donde cada uno de estos subgrafos contiene al menos un vértice de
un cierto conjunto de vértices X , y que todos los vértices de ´ están contenidos en estos subgrafos, mini-
el costo total de los bordes utilizados en la solución.

Página 269

262 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

4 El problema de agrupación de árboles de Steiner (PAAS)


Este problema, al que se hace referencia en la literatura internacional sobre árboles steiner de empaque , es
diseño y fabricación de circuitos electrónicos (véase Grötschel y Weismantel [1996]). Considerar-
Figura 6.17, que representa un modelo de circuito integrado.

GRAMO LA GRAMO LA
C C
segundo segundo

F Y re F Y re

Distribución general del circuito Conectores asociados con las celdas D, F y G.

FIGURA 6.17 Un circuito integrado.

Normalmente, un diseño de circuito integrado, en relación con la disposición de los componentes en el


placa, implica al menos dos pasos:

https://translate.googleusercontent.com/translate_f 224/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

• El diseño lógico, que corresponde a aclarar cómo las operaciones lógicas necesarias
están asociados con unidades electrónicas (llamadas células) y cómo estas unidades pueden ser
conectados entre sí por las pistas (barras conductoras que corresponden a los "cables" de
clásico). Los puntos donde las vías hacen contacto con las células se denominan terminales.
En la Figura 6.17 los terminales están representados por puntos negros y los caminos por los guiones que
conecta los puntos. Las celdas son los rectángulos oscurecidos. Un conjunto de terminales se llama
datos de la red. Los terminales del conector se asignan a las celdas.

• El diseño físico que corresponde a la designación de las celdas dentro de un área determinada y el enrutamiento
de las redes.

Las conexiones entre celdas se ejemplifican en la Figura 6.18, en la que verificamos que existe la posibilidad
posibilidad de que algunas rutas se utilicen más de una vez para la conexión (bordes marcados
con la barra gruesa).

GRAMO LA GRAMO LA
C C
segundo segundo

F Y re F Y re

Una posible conexión DF Una posible conexión DG

FIGURA 6.18 Posibles conexiones entre celdas.

Página 270

PROBLEMAS DE CONEXIÓN: ÁRBOLES, CAMINOS Y EMPAREJAMIENTO 263

Normalmente, el problema combinatorio que se define en este circuito es el de desarrollar


entre las celdas de la placa para minimizar, por ejemplo, la longitud del
sin sobrecargar el tráfico en rutas comunes.
Llamando a N = {T 1 , ..., T norte ≥ 1 , con T k Í N , k = 1, ..., n , una lista de conjuntos de vértices de
}, norte
G = ( N , A ), y para cada borde ( i, j ) ÎA asociando un costo c ij y una capacidad de utilización w ij , el
El problema de agrupación de árboles de Steiner (PAAS) es determinar un grupo de conjuntos de aristas de
G , S 1 , ..., S n Í A tal que:

1. " S n Í A es un árbol de Steiner en G para las listas de vértices asociados T k , k = 1, ..., n .

norte
dos.
∑ s k
∩ (,)ij ≤ w para cada borde ( i, j ) Î A .
ij
k= 1

norte
3.
∑∑ Cij ser mínimo.
k = 1 (,) ij Sk ∈

4 El problema del árbol Steiner de MinMax (cuello de botella) (PASM)


Este es el caso MinMax para el árbol Steiner. Duin y Volgenant (1997) presentan un algoritmo
O ( n ) para la solución de este caso.

6.6.3 - Algoritmo de solución heurística

Aneja (1980) sugiere utilizar la solución del problema de cobertura para acelerar la convergencia
de un procedimiento B&B para la solución de PAS en gráficas. Según su procedimiento, podemos
organizar el siguiente procedimiento heurístico:

Algoritmo de cobertura de bordes

COMIENZO

https://translate.googleusercontent.com/translate_f 225/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
Leer datos de G = ( N , A ), donde d ij es la distancia entre los nodos vecinos
de G , y X el conjunto de nodos que se conectarán
Determine la cobertura mínima de los bordes para G
Identificar los subgrafos relacionados que contienen los nodos X
Conéctelos utilizando la distancia más corta posible
Elimina los bordes innecesarios del árbol Steiner
FIN

En la Figura 6.19 se encuentra un ejemplo de la aplicación de la heurística de cobertura.

Página 271

264 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

1 7 11 1 7 11

10 10
5 7 5 7
12 12
15 15
dos 4 3 dos 4 3
15 15
5 3 5 3
13 13
20 20
4 4 6 4 4 6

6 6
8 3 9 8 3 9

7 11 14 7 11 14

6 5 10 6 5 10

8 9 9 8 9 9

7 8 7 8

10 10

Gráfico inicial. Establecer X = {1, 4, 9} Solución de recubrimiento de bordes

1 7 11 1 7 11

10 10
5 7 5 7
12 12
15 15
dos 4 3 dos 4 3
15 15
5 3 5 3
13 13
20 20
4 4 6 4 4 6

6 6
8 3 9 8 3 9

7 11 14
7 11 14

6 5 10 6 5 10

8 9 9 8 9 9

7 8 7 8

10 10

Enlace entre grupos Solución óptima (no encontrada


con nosotros X por el algoritmo)
S = {1, 2, 4, 7, 9} = 23 S = {1, 2, 4, 6, 7, 9} = 22

FIGURA 6.19 Solución del algoritmo de cobertura de bordes.

6.7 - EL PROBLEMA DEL CAMINO CRÍTICO O PERT ( MÉTODO DEL CAMINO CRÍTICO )
Este modelo es extremadamente útil para resolver problemas que tienen un número muy grande
actividades que ocurren en paralelo y con duración variable y, además,
competencia e interdependencia. Las mayores aplicaciones se dan en la construcción civil y en la gestión de
grandes proyectos, especialmente en la fase de planificación y como herramienta de seguimiento.
Examinemos un ejemplo del uso de la red PERT para planificar una simulación de prototipo.

https://translate.googleusercontent.com/translate_f 226/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
pan industrial. Los pasos necesarios para realizar la simulación del prototipo se describen en la tabla
Figura 6.20. En aras de la claridad, le informamos que el tiempo requerido para la ejecución
de cada etapa de planificación debe ser objeto de un estudio específico. En general, es posible
posible considerar tiempos medios.

Página 272

PROBLEMAS DE CONEXIÓN: ÁRBOLES, CAMINOS Y EMPAREJAMIENTO 265

Actividad comienzo
Numero de actividades Duración
Requisito previo más temprano

0 Inicio del trabajo - 0 -

1 Proyecto de simulación 0 dos t1

dos Entrenamiento personal 1 9 t2

3 Construcción de Instalaciones Especiales 1 4 t2

4 Certificación de instalaciones 3.6 1 t3

5 Adquisición de material 1 1 t2

6 Medición de instrumentos 5 dos t4

7 Pruebas de materiales adquiridos 2.4 3 t5

8 Montaje de cabina de simulación 7 1 t6

9 Ejecución de simulación 8 dos t7

10 Fin 9 0 t8

FIGURA 6.20 Tabla de descripción de la actividad.

La tabla de actividad se puede representar mediante un gráfico de flechas como se muestra en la Figura 6.21.
En este gráfico, cada actividad está simbolizada por un nodo numerado. Los arcos (o flechas) representan la
restricciones de precedencia. En cada uno de nosotros podemos representar la duración de la actividad asociada a él.
sociados. Este gráfico también se conoce como red orientada a tareas o diagrama de flechas.
(una de las herramientas de calidad).

(9)
dos

(0) (dos) (4) (1) (3) (1) (dos) (0)


0 1 3 4 7 8 9 10

(1) (dos)
5 6

FIGURA 6.21 Red orientada a tareas.

Denominando por t 10 el tiempo más corto asociado con la obra en su conjunto (tiempo anterior
para la última actividad), entonces podemos definir la función objetivo de este programa como:

Minimizar z = t 10 - t 1

sujeto a las restricciones de precedencia de las actividades que serán impuestas por los arcos de los diferentes caminos
conectar el nodo 0 al nodo 10. Considerando la actividad 4, la certificación de instalaciones, por ejemplo, la
menor tiempo para la ocurrencia de esta actividad debe cumplir:

t 3 ³ t 2 + 4 (a lo largo de la trayectoria de la actividad 3)


t 3 ³ t 4 + 2 (a lo largo de la trayectoria de la actividad 6)

Página 273

266 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

https://translate.googleusercontent.com/translate_f 227/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

En general, si t j es el tiempo más corto asociado con un predecesor de t i , y d ij es la duración de la actividad.


ity ij , el tiempo t i se calcula como:

t i ³ t j + d ij

Calculando las restricciones asociadas con la t i (matriz T ) tenemos la tabla en la Figura 6.22 para el modelo
programación lineal:

min t1 t2 t3 t4 t5 t6 t7 t8

Valor Z -1 +1

Nosotros Duración de
actividad

2.3.5 dos -1 +1
4 4 -1 +1

6 1 -1 +1

7 9 -1 +1
7 1 -1 +1

4 dos +1 -1
8 3 -1 +1

9 1 -1 +1

10 dos -1 +1

FIGURA 6.22 Matriz de restricciones PERT orientadas a tareas.

El problema escrito de la forma anterior no es un problema de flujo de red, pero sí lo es. Nota-
que solo hay una entrada positiva y una negativa en las primeras líneas de la matriz de restricción
mal, lo que implica que la matriz transpuesta de T es la matriz de borde de nodo de una red. Considerando un
variable dual x ij asociada con cada línea del problema primario, es decir, que representa actividades, según
me la tabla en la Figura 6.23:
Para el programa de la figura 6.23 podemos expresar su programa dual como se muestra en la tabla
Figura 6.24.

Variable Actividades Actividad Duración


(Actividad) Requisito previo

x 01 Proyecto de simulación - dos


x 15 Entrenamiento personal x 01 9
x 12 Construcción de Instalaciones Especiales x 01 4
x 23 Certificación de instalaciones x 12 1
x 14 Adquisición de material x 01 1
x 43 Medición de instrumentos x 14 dos
x 35 Pruebas de materiales adquiridos X 23 , X43 3
x 56 Montaje de cabina de simulación X 15 , X35 1
x 67 Ejecución de simulación x 56 dos

FIGURA 6.23 Ejemplo de un programa PERT.

Página 274

PROBLEMAS DE CONEXIÓN: ÁRBOLES, CAMINOS Y EMPAREJAMIENTO 267

nosotros max x 01 x 15 x 12 x 23 x 14 x 43 x 35 x 56 x 67

W dos 9 4 1 1 dos 3 1 dos

0 +1 +1

1 0 -1 +1 +1 +1

dos 0 -1 +1

3 0 -1 +1 -1
4 0 -1 -1

5 0 -1 +1 -1

6 0 +1 -1
7 -1 +1

https://translate.googleusercontent.com/translate_f 228/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
FIGURA 6.24 Matriz de restricciones del problema PERT dual.

La formulación dual de la red PERT, orientada por tareas, tiene características interesantes y es
denominada red impulsada por eventos . La figura 6.25 ejemplifica la red impulsada por eventos del caso.
socavado.

Formación
(9)

(dos) Construcción Certificación prueba Montaje Simulación


0 1 dos 3 5 6 7
Proyecto (4) (1) (3) (1) (dos)

(1)
(dos)
Adquisición de Medición
Material
4

FIGURA 6.25 Red impulsada por eventos.

En esta red, un nodo representa el comienzo o el final de una actividad, un evento instantáneo. En el
modelo dual, los valores de duración de la actividad están en los arcos. La variable dual x ij representa una
actividad definida por los nodos i - j . Tenga en cuenta que el número de arcos en la red orientada a eventos es igual a
número de nodos en la red orientada a tareas (sin tener en cuenta los nodos inicial y final). Los tiempos del modelo
primal corresponden al número de nodos en la red dual. En la red impulsada por eventos, el problema de
terminar el tiempo más largo pronto se reduce a encontrar el camino más largo entre los nodos extremos del
red, considerando la longitud de cada arco i - j igual a la duración de la actividad asociada a él.
También hay una tercera representación para este tipo de problema de planificación. Esta red es
extremadamente extendido, sobre todo porque facilita la visualización de las variables de holgura del
por tareas. Otra ventaja de esta variante es que facilita la distinción entre actividades paralelas.
y / o correlacionados lógicamente. La red PERT / CPM, tal como se difunde en la literatura, es una red
por eventos con una corrección en la definición de los arcos. En él las actividades paralelas deben tener
extremos diferentes, incluso si comienzan y terminan en los mismos eventos. Para hacer esta distinción
entre las actividades, el modelo utiliza el concepto de actividad fantasma. Una actividad fantasma es un arco
en la red de eventos cuya duración es igual a cero (instantáneo). En el caso del ejemplo propuesto, la representación
PERT / CPM se muestra en la Figura 6.26.
Los arcos punteados representan actividades fantasmas. En la solución de red de eventos,
El camino más largo determinará una cadena dominante a lo largo del tiempo. Este camino representa
el cuello de botella durante todo el programa. Obviamente puede haber otros, más
cortos dentro de la red, pero estarán dominados durante más tiempo. La existencia de
caminos de duración variable en un mismo planeamiento implica que, en relación con el con-
En conclusión, algunas actividades terminarán asumiendo un papel destacado o crítico, mientras que otras

Página 275

268 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

dos

Formación

(9)

(dos) Construcción Certificación prueba Montaje Simulación


0 1 3 4 7 8 9
Proyecto (4) (1) (3) (1) (dos)

(1)
Adquisición de
Material
Medición
5 6
(dos)

FIGURA 6.26 Red PERT / CPM.

Etiqueta de nodo
Fecha posterior

Fecha anterior

Día libre

norte En el

FIGURA 6.27 Etiqueta del nodo en la red PERT / CPM.

https://translate.googleusercontent.com/translate_f 229/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

estará sujeto a menos presión. Esta información puede resultar muy útil en la redistribución de esfuerzos
y medios de planificación. Podemos examinar visualmente este fenómeno agregando a cada nodo del
Figura 6.26 la etiqueta representada en la Figura 6.27.
La red impulsada por eventos y etiquetada como se propone en la Figura 6.27 se puede resolver mediante
a través de la búsqueda de los caminos que conectan el evento inicial y el final. La figura 6.28 muestra la red etiquetada y la
Inicio del cálculo de las posibles rutas que conectan el nodo 0 con el nodo 7. A lo largo de cada ruta posible
los tiempos se van acumulando, lo que queda claro en la red orientada a tareas. Cuando se alcanza un nudo
más de un camino, una situación de conflicto en relación al tiempo

11
Formación
(9) dos

7 14
0 dos 6 12 14
5

(dos) Construcción Certificación prueba Montaje Simulación


0 1 3 4 7 8 9
Proyecto (4) (1) (3) (1) (dos)
11
10

(1)
Adquisición de
Material
(dos)
5 6
Medición

3 5

FIGURA 6.28 Cálculo del tiempo más temprano en conflicto.

Página 276

PROBLEMAS DE CONEXIÓN: ÁRBOLES, CAMINOS Y EMPAREJAMIENTO 269

asociado con el nodo. Como queremos encontrar la fecha lo antes posible pero eso tiene en cuenta la duración
de todas las actividades, esta fecha corresponderá al mayor valor acumulado en el tiempo. Esta situacion es
ejemplificado en el nodo 4 de la Figura 6.28. Se puede llegar a este nodo a través de la ruta 0-1-2-3, acumulando
un tiempo igual a 7 unidades ( (2) + ( 4 ) + ( 1 )), y por el camino 0-1-5-6-4, acumulando un tiempo de
5 unidades (( 2 ) + ( 1 ) + ( 2 )). El tiempo más temprano para el nodo 4 será 7, el valor más alto.
El mismo razonamiento se aplica al nodo 7. Por lo tanto, calculamos el tiempo más temprano posible para
Red completa, es decir, 14 unidades. Para encontrar los espacios libres existentes en los diferentes caminos.
posible, partiendo del nodo 9 (nodo final), intente llegar al nodo 0 (nodo inicial) descontando los valores
asociado a las actividades en los arcos. En caso de que ocurra que un nodo puede ser alcanzado por más
de una ruta de retorno, entonces debemos preservar el tiempo más corto. Esto sucede en el nodo 2, donde, al menos
ruta 9-8-7-2-1, el valor es 2, ruta 9-8-7-4-3-1 es 3 y ruta 9-8-7-4-6-5-1 es 5. El valor de
a registrar será 2. Después de los cálculos encontraremos los valores que se muestran en la Figura 6.29.

11
11
Formación
(9) dos

0 dos 7 78 12 14
0 dos 6 12 14
5

(dos) Construcción Certificación prueba Montaje Simulación


0 1 3 4 7 8 9
Proyecto (4) (1) (3) (1) (dos)
11 11
10

(1)
Adquisición de
Material
(dos)
5 6
Medición
6 8
3 5

FIGURA 6.29 Cálculo de la hora más temprana.

Finalmente, podemos llenar el campo vacío haciendo la diferencia entre la fecha anterior y la
más tarde de cada nodo. Las rutas que no tienen espacio libre se denominan rutas críticas. A
Figura 6.30, se resalta la ruta crítica.

11
11
0

https://translate.googleusercontent.com/translate_f 230/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
Formación
dos
(9)
0 dos 7 8 7 12 14
0 dos 6 12 14
0 0 1 1 5 0 0

(dos) Construcción Certificación prueba Montaje Simulación


0 1 3 4 7 8 9
Proyecto (4) (1) (3) (1) (dos)
11 11
(1) 0 10
Adquisición de
Material
(dos)
5 6
Medición
6 8
3 5
3 3

FIGURA 6.30 Cálculo del tiempo anterior.

Página 277

270 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

6.8 - PROBLEMAS PROPUESTOS

1 - El problema de las obras de saneamiento J


En un barrio determinado, la ciudad tiene la intención de instalar la infraestructura necesaria de agua y alcantarillado.
En la figura 6.31 se representa una sección del vecindario.

sentido de pendiente

red
da

ada Ayuntamiento
s
da y
ntido
llegado
Cuadrado
en
Agua da
en Pendiente
Puntuación
Area verde

Zona

verde

Zona

verde

Area verde

punto de recogida de alcantarillado

FIGURA 6.31 Vecindad del problema.

Las redes de agua deben pasar por al menos tres lados de un bloque habitado y los sistemas de alcantarillado
todas. Las excavaciones realizadas horizontalmente son cuatro veces más caras que las excavaciones verticales
tical. La plaza solo necesita ser alimentada con agua por un lado (cualquiera) y no necesita red
aguas residuales.
Para llevar a cabo la planificación de la obra y su respectivo presupuesto, el alcalde determinó al departamento
equipo de ingeniería para preparar un proyecto de distribución física inicial para las redes que
siguientes situaciones:

1. Proyectos independientes de redes de agua y alcantarillado.

2. Diseños de redes con el objetivo de utilizar las mismas excavaciones, siempre que sea posible.

Las tuberías de alcantarillado deben colocarse en la dirección de la pendiente del terreno. Tuberías
pueden seguir cualquier trayectoria, ya que trabajan bajo presión. Para evitar problemas de pérdida de carga
Las ramas de suministro de agua no deben tener más de 10 lados de los cuartos.
teirões cuadrados (sin tener en cuenta la longitud de las calles). Los bloques rectangulares y oblicuos
quos se consideran equivalentes a dos pequeños bloques en sus caras más largas.

2 - El problema del camino más corto en la ciudad correcta K


Cierta ciudad tiene un código de tráfico estricto y peculiar: sus calles nunca tienen permitido
un vehículo gira a la izquierda. Siempre que un conductor desee realizar un cambio de dirección
siempre tendrá que seguir la derecha. Todas las calles de la ciudad son de doble sentido. Una cooperativa
taxista decidió desarrollar un software para ayudar a los conductores a encontrar siempre su camino

https://translate.googleusercontent.com/translate_f 231/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
entre su posición y las llamadas salientes. Modifique el algoritmo de Dijkstra (si es necesario
necesario) para que pueda funcionar correctamente en este tipo de red viaria.

Página 278

PROBLEMAS DE CONEXIÓN: ÁRBOLES, CAMINOS Y EMPAREJAMIENTO 271

3 - El problema del repostaje de los coches eléctricos L


Una ciudad está activando un nuevo sistema de transporte personal para su región central. El sistema
ma se compone de pequeños coches eléctricos. El sistema tiene como objetivo reducir la contaminación, el ruido y
atascos de tráfico en la región, minimizando la presencia de vehículos convencionales. Pequeño y
Los ágiles coches eléctricos operan desde dos grandes aparcamientos articulados con las estaciones.
Conexiones de bus y metro. El principal problema de estos coches es que su alcance es pequeño y
deben rellenarse cada dos horas de funcionamiento continuo. En el centro y en el
Se han creado varios electróforos para brindar este servicio, pero obviamente tienen
mitigaciones de la demanda. Para ayudar al conductor a programar su trabajo, incluso fuera del centro
la ciudad, si es necesario, el coche tiene un software que te ayuda a encontrar tu mejor ruta,
en vista de los puntos de visita deseados. Desarrollar un algoritmo para este tipo de enrutamiento, haciendo
las consideraciones que estime pertinentes al caso.

4 - El problema del laberinto bifurcado L


El famoso héroe Teseo, después de escapar del laberinto del Minotauro, fue arrestado por un rey que se creía
muy experto. Este rey había creado un laberinto en el que todos los caminos estaban siempre bifurcados,
es decir, nunca hubo más de dos caminos a seguir. Según él, era posible irse sin tener
un ovillo de lana o sin dejar marcas en las paredes del laberinto. El rey propuso este desafío a Te-
la tuya a cambio de la mano de tu hija, la princesa Bela. Si fueras Teseo, ¿aceptarías el desafío? Justificar
su respuesta.

5 - El problema de la ruta más barata sujeto a peaje L


Un coche pretende cruzar un tramo de carreteras gestionado por una determinada empresa y sujeto a peajes,
viaja de la ciudad de S a la ciudad T . El costo del cruce es igual a la suma de la distancia total recorrida
con el monto del peaje. Las reglas del peaje son sencillas: el coche paga el peaje correspondiente.
correspondiente al tramo recorrido, descontando el monto pagado previamente en cualquier tramo administrativo
por la misma empresa. Con esta forma de carga, el vehículo pagará, como peaje en un
ruta, el valor de la tarifa más alta correspondiente a una parte de la misma. La figura 6.32 muestra en el campo (a) la
distancias entre las ciudades S y T dentro de las rutas posibles, y en el campo (b) las tarifas de peaje para cada
estiramiento que se puede utilizar.

1 [5] 4 [5] 7 1 (1) 4 (5) 7

[1] [4] (8) (1)


[4] [3] (5) (4)
[dos] (1)
[4] [3] [4] (6)

s [5] dos [4] 5 [10] T s (6) dos (4) 5 (1) T


[3] (1)
[6] (3)
[dos] (10)
[3] (3)
3 [8] 6 3 (1) 6

(a) Distancias entre ciudades (b) Tarifas de peaje por segmento

FIGURA 6.32 Distancias y tarifas por carretera.

4 Desarrolle un algoritmo polinomial para determinar con precisión la ruta de menor costo entre
entre S y T para un caso general.

4 Aplique este algoritmo al ejemplo resolviéndolo.

4 Calcule la complejidad del peor caso del algoritmo elaborado.

Página 279

272 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

6 - El problema de la red de comunicaciones L


https://translate.googleusercontent.com/translate_f 232/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

La red informática de la figura 6.33 es muy segura. Así, el diseño de su configuración


Siempre se debe considerar la posibilidad de la existencia física de dos rutas (una para uso actual y
seguridad) para conectar cualquier par de puntos de red.

1 (0.02) 4 (0,01) 7

(0,01) (0.02) (0.03) (0.02)


(0,01) (0.03)
(0,07) (0,05)

9 (0,01) dos (0,06) 5 (0.02) 8

(0,04) (0,01)
(0.03) (0,01) (0,1) (0,01)

3 (0,01) 6

(0,06)

FIGURA 6.33 Red informática.

Desarrollar un algoritmo que sea capaz de determinar la solución buscada para cualquier instalación.
de este tipo de problema. Aplicar el algoritmo a la red del problema encontrando la solución
deseado.

7 - Red PERT / CPM L


Desarrolle la red PERT / CPM para el problema que se describe a continuación, calculando la ruta crítica y los espacios libres
ocupaciones.

Numero de actividades Actividad de requisito previo Duración Arco Clima temprano

0 Comienzo del trabajo - 0 -

1 Terraplén 0 dos 0-1 t1

dos Cimientos 1 3 1-2 t2

3 Estructura dos 5 2-3 t3

4 Albañilería no estructural dos 5 2-4 t4

5 instalaciones dos 7 2-5 t5

6 Marcos 4 dos 4-6 t6

7 Suelo 4 dos 4-7 t7

8 Losa 3 3 3-8 t8

9 Techo 8 3 8-9 t9

10 Acabado interno 5.6.7.8 4 varios t 10

11 Acabado externo 6,9 5 varios t 11

12 Entrega de la Obra 10.11 0 - t 12

Página 280

PROBLEMAS DE CONEXIÓN: ÁRBOLES, CAMINOS Y EMPAREJAMIENTO 273

Marcos
(dos)

Suelo 11
4 7 Refinamiento
(dos)
Externo
(5)
Albañilería
(5) (4)
10 12
(dos) (3) instalaciones Refinamiento
0 1 dos 5
(7) Interno
Fundaciones de movimiento de tierras
(5)
Estructura
(3) (3)
3 8 9
Losa Techo

Red PERT / CPM asociada a la tabla

https://translate.googleusercontent.com/translate_f 233/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

8 - Red PERT / CPM K


La siguiente red PERT / CPM representa las actividades de desarrollo de software. los
El desarrollador está interesado en reducir el plazo del proyecto. Si una actividad de red es
de terceros, su tiempo se reducirá a cero dentro del modelo.

(dos) (3)

yo (dos)
L

(dos) (1) (dos)


(3) (5)

LA (3) H (5) K (5) O

(4)
(1) (7)
(4)
(1)
segundo (dos) C
METRO
(dos) (5)
(3)
GRAMO (6)
(1) (6)
(3)
F
re
(4) (1)
(4)
Y (3) norte

Red PERT / CPM

Sabiendo que los valores que se muestran en las flechas representan la duración esperada de la actividad
se pregunta:
1. ¿Cuál es el número máximo de actividades paralelas en esta red?
2. ¿Cuál es la ruta crítica de la red?
3. Si el desarrollador decidió contratar solo una actividad para mejorar el rendimiento del desarrollador
desarrollo, ¿cuál será elegido? Se asume que la actividad contratada debe maximizar el despacho final
entre el tiempo del proyecto (lo antes posible) y el tiempo contractual (un tiempo determinado más largo que el tiempo del proyecto).

Página 281

7 FLUJOS DE RED
Y LOGÍSTICA DE
DISTRIBUCIÓN

7.1 - CARACTERÍSTICAS DE LOS MODELOS DE FLUJO DE RED


Varios modelos importantes de programación lineal tienen una estructura especial que permite el desarrollo de
desarrollo de algoritmos eficientes y especializados en su solución. En esta familia de problemas, un
el más tradicional es el problema del transporte . En general, los llamados modelos de red

https://translate.googleusercontent.com/translate_f 234/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
permiten la solución de importantes problemas reales y son de extraordinaria aplicación práctica (ver casos en
Boorstyn y Frank [1977], Biros y Boros [1984], Carraresi y Gallo, [1984], Langevin et al . [1993], Phillips y
Westbrook [1993]). En la dimensión de la solución, estos modelos permiten la mejora de conocimientos y
técnicas tradicionales, con el fin de lograr una enorme eficiencia en su proceso de resolución.

7.2 - UNA TAXONOMÍA PARA PROBLEMAS DE FLUJO DE RED

7.2.1 - Descripción del problema de flujo de red


Los llamados problemas de flujo abordan el proceso de optimización de la distribución de productos originales.
puntos de suministro y consumidos en puntos de demanda dentro de una red de interconexiones
posible. Estos problemas suelen ocurrir dentro de plantas industriales, sistemas de comunicación
cación y transporte, distribución de agua, etc., sin embargo sirven de modelo para innumerables otras
situaciones absolutamente diferentes que le son similares por abstracción. Normalmente, el suministro de
cada producto, así como su demanda, tiene un valor conocido. El proceso de distribución de
productos no necesariamente se lleva a cabo desde un punto de producción hasta un punto de demanda, lo que permite
considerando que puntos intermedios, como depósitos o centros de concentración y distribución,
mermelada utilizada. Las interconexiones pueden tener restricciones en la capacidad de tráfico y costos variables.

7.2.2 - Formulación matemática del problema de flujo de red


Definimos una Red R = ( E, V, F ) como un grafo dirigido G = ( E , V ) atravesado por un Flujo F =
{ F 1 , f 2 , ... f m } sus m bordes circulantes . En una red, normalmente se destacan dos nodos: el nodo fuente
te y el nodo sumidero (ver los detalles de la definición en los Temas del Apéndice en Teoría de Gráficos ) . Podemos representar
Presentar el problema de flujo ilustrado en la Figura B.12 del Anexo mediante ecuaciones matemáticas y

Página 282

276 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

ejemplificado en la Figura B.13 del Anexo. Denominando por x ij el flujo que circulará en el arco ij puede
podemos representar las restricciones expresadas en los arcos de la siguiente manera:

4 restricciones de capacidad del arco

Todos los arcos de la red están habilitados, incluso cuando el límite superior es + ¥ y el límite inferior - ¥. En eso
si es esencial representar los límites de flujo dentro de cada arco. Representaremos el límite inferior
flujo de arco superior o inferior ( i, j ) Î E para l ij y superior o máximo para L ij . De esta forma, las restricciones
La configuración del límite de flujo se escribirá de la siguiente manera:

4 Arco ij
l ij £ x ij £ L ij

4 arco 1-2
£ 0 x £ 12 8

4 arco 2-5
£ 1 x £ 25 10 etc.

4 restricciones de equilibrio de flujo en cada nodo


Los nodos de la red, con la excepción de los nodos fuente y sumidero, son conservadores en relación con el flujo, es decir, el
el flujo que llega al nodo es igual al flujo que sale del nodo. Los puntos de oferta y demanda también pueden
representados como puntos de flujo conservadores, siempre que estén asociados artificialmente con un nodo fuente
(puntos de suministro) y un nodo sumidero (nodos de demanda). La ecuación de equilibrio de flujo general es:

⎧Flujo entrante ⎫ ⎧Flujo saliente ⎫


⎨ ⎬=⎨ ⎬
⎩ al nodo i ⎭ ⎩ del nodo i ⎭

Al representar el flujo a través del arco ( i, j ) Î E por la variable x ij , podemos escribir las ecuaciones
condiciones de equilibrio de flujo como sigue:

4 Equilibrio de flujo en los nodos

∑ x ki = ∑ x ij
(,)ki ∈ Y (,)yo j ∈ Y

4 Balance del nodo 2

x 12 - x 23 - x 25 = 0

https://translate.googleusercontent.com/translate_f 235/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

4 Equilibrio del nodo 1 (el arco 6-1 es el arco de equilibrio artificial)

x 61 - x 12 - x 14 = 0, etc.

4 posibles funciones objetivo


En el proceso de optimización de flujos en una red, podemos decir que dos objetivos son muy comunes
común: maximizar el flujo total a través de la red o minimizar el costo de un determinado flujo. Así:

4 Caudal máximo

Maximizar x 61

Página 283

FLUJOS DE RED Y LOGÍSTICA DE DISTRIBUCIÓN 277

4 Flujo de costo mínimo

Considerando que existe un costo unitario c ij asociado con el tránsito de cada unidad de flujo por
arc x ij entonces la función objetivo se puede escribir como:

Minimizar ∑ c ij x ij
(,)yo j ∈ Y

4 Características de la matriz de restricciones de una red

La matriz de restricciones de flujo, matriz A , tiene una configuración muy peculiar, como podemos ver
observe en la Figura 7.1, con la conferencia a la red ejemplificada en la Figura B.13.

Arcos

Nosotros x 12 x 23 x 25 x 36 x 14 x 45 x 56 x 61

1 +1 +1 +1

dos -1 +1 +1

3 -1 +1

4 +1

5 -1 -1 +1

6 -1 -1 -1 -1

FIGURA 7.1 Matriz de restricciones de flujo.

La configuración de la matriz A , que se ve en la Figura 7.1, le da una serie de propiedades que,


básicamente, serán responsables de la ganancia de eficiencia en la implementación de versiones especializadas
del algoritmo simplex para su solución. Al estructurar la matriz de incidencia de nudos en la Figura
7.1 hemos adoptado la convención de marcar la dirección de entrada del arco en un nodo como negativa y la dirección
salida como positiva. Al mirar la columna x 12 de la matriz, distinguimos que la dirección del arco
la conexión de los nodos 1 y 2 es del nodo 1 (signo positivo) al nodo 2 (signo negativo). La principal propiedad de
la matriz A es la unimodularidad total. Decimos que una matriz es completamente unimodular cuando su
terminante es siempre 0, 1 o –1 para la matriz y para todas sus submatrices cuadradas (ver teorema
Heller y Tompkins - Temas de álgebra lineal y convexidad - en el anexo). Una segunda propiedad
La calidad resultante se refiere a las soluciones de un sistema Ax = b , donde A es totalmente unimodular. En eso
En este caso, las soluciones del sistema obtenidas por el algoritmo simplex para ese sistema son enteros siempre que el
El término independiente b también es un número entero.

4 Formulación general de flujos en redes


En muchas ocasiones es interesante considerar el balance de flujo asociado a un vector de oferta o
demanda en cada nodo. La formulación así elaborada no requiere la consideración explícita de un nodo
fuente y un nodo sumidero, además de liberar la necesidad de considerar arcos artificiales que
guiar los nodos de suministro a una fuente y los nodos de demanda a un sumidero. De hecho, la esencia del modelado
el flujo por red permanece preservado; sin embargo, para ciertos propósitos, este enfoque es más efectivo
consciente. En este caso, la ecuación de equilibrio de flujo se puede reescribir como:

⎧Flujo entrante ⎫ ⎧Flujo producido ⎫ ⎧Flujo saliente ⎫ ⎧Flujo consumido ⎫


⎨ ⎬+⎨ ⎬= ⎨ ⎬+⎨ ⎬
⎩ al ápice ⎭ ⎩ en el ápice ⎭ ⎩ el ápice ⎭ ⎩ en el ápice ⎭

https://translate.googleusercontent.com/translate_f 236/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

Página 284

278 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

Si llamamos genéricamente d i al equilibrio final entre lo que se produce y se consume en


cada nodo, entonces podemos reescribir la formulación general del problema de flujo de red de la siguiente manera:

Minimizar z = ∑ c ij x ij
(,)yo j ∈ Y

sujeto a:

∑ x ij - ∑ x ki = d yo yo = 1, ..., n
(,)yo j ∈ Y (,)k yo ∈ Y

l ij £ x ij £ L ij "(i, j) Î E

La elección de la formulación más adecuada vendrá determinada por las circunstancias del problema y
algoritmo de solución adoptado.

4 Formulación restringida
En general, el problema de flujo de costo mínimo en una red con n = m + 2 nodos, donde m representa
el número de nodos reales yn el número de nodos en la red balanceada, también se pueden formular
bien como:

Minimizar z = ∑ c ij x ij
(,)yo j ∈ Y

sujeto a:

∑ x ij - ∑ x ki = 0 i = 1, ..., n
(,)yo j ∈ Y (,)k yo ∈ Y

l ij £ x ij £ L ij "(i, j) Î E

7.2.3 - Una taxonomía para el problema del flujo de red


Los problemas de red se pueden clasificar, en general, dentro de la siguiente jerarquía:

Problemas de flujo de red

Flujo de producto Formas Expansión de la red

3 Flujo maximo 3 Ruta más corta


3 Problema de ubicación
3 Flujo de costo mínimo 3 Camino mas largo
3 El problema de Steiner
3 Problema de transporte 3 PERT / CPM
3 Diseño de red
3 1- Pareo 3 Caminos eulerianos
3 Designacion 3 Caminos hamiltonianos
3 Transbordo

FIGURA 7.2 Taxonomía para problemas de flujo.

Página 285

FLUJOS DE RED Y LOGÍSTICA DE DISTRIBUCIÓN 279

7.3 - MODELOS ESPECIALES EN REDES

7.3.1 - El problema del transporte

https://translate.googleusercontent.com/translate_f 237/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
El problema de transporte es un problema de flujo en un gráfico bipartito, por lo que no hay nodos
transbordo o transición a intermediarios de flujo. En la visión clásica de este problema, los arcos no
tener un límite de capacidad para el caudal. En general, la descripción gráfica del problema puede
resumirse en la Figura 7.3:
Los vértices de la red en la Figura 7.3 se numeraron para resaltar la condición de salida (vértice).
oferta) y entrada de flujo (vértices de demanda). El problema del transporte puede verse como
un problema de flujo donde el objetivo es minimizar los costos de flujo a través de los arcos a nivel mundial
de una red de oferta a demanda similar a la de la Figura 7.4.

el 1 d1

d2
el 2

d3

el 3
d4

el 4 d5

danos danos
oferta (m) demanda (n)

FIGURA 7.3 Características de flujo en el problema del transporte.

o* d *1
1

(,el0,yo+) ? d *dos (,d0,j +) ?


o *dos

d*
3
F o *3 s

d *4

d *5
o *4

danos danos
oferta (m) demanda (n)

⎛ metro norte ⎞
⎜ ⎟
⎜ ∑
Oyo = ∑ rej ,, 0 ∞

⎝yo= 1 j= 1 ⎠

FIGURA 7.4 El problema del transporte en el formato de flujo en redes.

Página 286

280 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

4 Formulación restringida para el problema del transporte

También podemos considerar que el problema del transporte ocurre en un contexto


servativo. Agregar un nodo fuente ( f ) y un nodo receptor ( s ), y considerar límites inferiores para
oferta y la demanda iguales a la i y d j respectivamente, podemos formular el problema del transporte
como caso particular del problema de los flujos en la red de la Figura 7.4. En esta figura, los nodos de suministro y entrega
la demanda se marca con * para distinguirla de los valores límite de caudal.
Considerando un problema con R = {1, 2, .., r } nodos y | R | = m + n + 2. Estilo por O , O = {1, 2,
..., m } el conjunto de nodos de oferta, por D , D = {1, ..., n } el conjunto de nodos de demanda y por c ij el costo
de transportar una unidad de flujo a través del arco ij , tenemos:

Minimizar z = ∑ ∑ c ij x ij
yo∈ jO ∈ re

sujeto a:

∑ x ij - ∑ x ki = 0 iÎV
(,)yo Y (,)k Y

https://translate.googleusercontent.com/translate_f 238/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
j∈ yo ∈

x fi = la i yo Î O

x js = d j jÎD

x sf = ∑ d j = ∑ o yo

jD yo∈O

x ij ³ 0, (i,j)ÎE

4 Formulación clásica para el problema del transporte

Podemos formular el problema del transporte solo considerando las demandas y ofertas localizadas
en los nudos y sin los lazos y nudos artificiales como sigue:

metro norte

Minimizar z = ∑∑ c ij x ij
yo= 1 j= 1

sujeto a:
norte
∑ x ij = o yo i = 1, ..., m
j= 1

metro

∑ x ij = d j j = 1, ..., n
yo= 1

x ij ³ 0 i = 1, ..., m ; j = 1, ..., n

Observamos que la matriz de restricciones del problema del transporte en la formulación clásica aún
mantiene la propiedad de unimodularidad. Tome el ejemplo numérico de la Figura 7.5.

Página 287

FLUJOS DE RED Y LOGÍSTICA DE DISTRIBUCIÓN 281

LA
d LA
= 15
x ij

1
o 1= 25
segundo
d segundo
= 15

o dos
= 25

dos
d C= 20
C

FIGURA 7.5 Ejemplo 1 de un problema de transporte.

La formulación general del problema se puede desglosar de la siguiente manera:

Minimizar z = c 11 x 11 + ... + c 1 n x 1 n + c 21 x 21 + ... + c 2 n x 2 n + ... + c m 1 x m 1 + ... + c mn x mn


sujeto a:

x 11 ... + x 1 n =o1
x 21 + ... + x 2 n = el 2
... ... ... ...
+ x m 1 + ... + x mn = la m
x 11 + x 21 ... + x m1 =d1
... ... ... ...
x 1n + x 2n … + x mn = d n

https://translate.googleusercontent.com/translate_f 239/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
x ij ³ 0, i Î M , j Î N

Que para el ejemplo, considerando que el vector de costos es [ c ] = [2, 5, 3, 7, 4, 1] resultaría en:

Minimizar z = 2 x 1 A + 5 x 1 B + 3 x 1 C + 7 x 2 A + 4 x 2 B + 1 x 2 C
sujeto a:
x 1A + x 1B + x 1C = 25
x 2A + x 2B + x 2C = 25
x 1A + x 2A = 15
x 1B + x 2B = 15
x 1C + x 2C = 20

x ij ³ 0 i Î {1, 2}, jÎ{A,B,C}

Las variables asociadas con el flujo en los arcos i - j forman una interesante matriz de restricciones
A = { a ij }, totalmente unimodular y de rango ( A ) = m + n - 1, ya que hay m líneas en el conjunto
de restricciones de oferta yn en el conjunto de restricciones de demanda, pero con solo m + n - 1 grados de
metro norte

libertad, ya que ∑ la i = ∑ dj.


yo= 1 j= 1

Página 288

282 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

Enfoque de solución primaria


El proceso de resolución de este sistema de ecuaciones se puede simplificar enormemente en vista de la peculiaridad
de su matriz de restricciones. Considerando la siguiente matriz A ' , submatriz de rango m + n –1 de la matriz A
del modelo resultante del gráfico de la Figura 7.5, obtenido al eliminar la última restricción, así como la
primeras dos columnas de la matriz A :

X 1 C X dosLA X dossegundoC
X dos
⎡ 1 0 0 0⎤
′ = ⎢ 011 1 ⎥
LA
⎢ 001 0 ⎥
⎣ 000 1 ⎦

Tenga en cuenta que esta submatriz es una matriz triangular superior (tiene todas las posiciones debajo de la
diagonal igual a cero) y, por lo tanto, se puede descomponer en submatrices, a saber:

⎡ yometro R ⎤
LA′ = ⎣⎢
0 - 1 ⎦⎥
yonorte

donde I representa una matriz de identidad.


Supongamos ahora que hemos obtenido una base B cualquier Una . Dado que rango ( A ) = m + n –1,
al menos una columna de B debe contener solo una entrada positiva, o det B = 0. En ese
caso, intercambiando las filas y columnas de B para colocar su única entrada positiva en el
ocupado por I m podemos obtener:

⎡ ⎤
= 1
segundo
Q
⎣⎢ 0 B m n+ - ⎦⎥
dos

Aplicando el mismo razonamiento nuevamente a la matriz B m + n –2 podemos reescribir la matriz B, donde P es


una submatriz de B , como sigue:

⎡ 1 Q1 Q dos ⎤
= ⎢ 01
segundo PAGS ⎥
⎢⎣ 0 0 B m n+ - ⎥⎦
3

Lo que muestra que B es una matriz triangular. Dado que B es una matriz triangular, hay una cierta
mutación de B que resuelve el sistema Bx B = b solo con sustituciones elementales de valores de las variables
viable. Ejemplifiquemos lo que presentamos analíticamente en el ejemplo 1 (Figura 7.5). Podemos obtener
una base de A por la adición de una variable artificial x una al conjunto formado por las variables x 1 C , x 2 C , x 1 A , x 1 B

X 1 C X dosC X 1 LA xx1 segundo


los
⎡ 101 1 0⎤ ⎡ 25 ⎤
⎢ 010 0 0⎥ ⎢ 25 ⎥
yo
=⎢ 001
segundo 0 0⎥ []X
segundo
=⎢ 15 ⎥
⎢ 000 1 0⎥ ⎢ 15 ⎥

⎣ ⎦ ⎣ ⎦
https://translate.googleusercontent.com/translate_f 240/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
⎣ 111 0 1⎦ ⎣ 20 ⎦

que se puede triangular en: z

xxlos 1C X dosC X 1 LA X 1 segundo


⎡ 11100 ⎤ ⎡ 25 ⎤
⎢ 01011 ⎥ ⎢ 25 ⎥
yo
=⎢ 0
segundo 0100 ⎥ []
X
segundo
=⎢ 15 ⎥
⎢ 00010 ⎥ ⎢ 15 ⎥
⎣ 00001 ⎦ ⎣ 20 ⎦

Página 289

FLUJOS DE RED Y LOGÍSTICA DE DISTRIBUCIÓN 283

Con esta estructura favorable para obtener una solución al problema de inversión B,
Sería natural asumir que el algoritmo simplex podría especializarse para un mejor rendimiento.
Podemos resumir el problema en la tabla de la Figura 7.6, que llamaremos tabla de transporte, en
que cada celda de la tabla representa una variable, es decir, un arco de conexión, y el valor incluido en el
Un marco más pequeño significa el costo de la celda (costo de usar el arco). Entonces, por ejemplo, tenemos:

Demanda

Índices LA segundo C Valor

dos 5 3

x 1A x 1B x 1C
1 25

Oferta 7 4 1

dos x 2A x 2B x 2C 25

Valor 15 15 20

FIGURA 7.6 Diagrama de transporte del ejemplo 1.

Para que podamos especializarnos en el simplex, sería esencial que pudiéramos explorar el
el formato y las propiedades de la matriz A dentro de los siguientes pasos del método:

4 Obtención de una solución inicial.

4 Procedimiento de mejora de la solución actual.

4 Control de viabilidad y regla de parada.

Entonces, vayamos a los puntos en cuestión:

Punto 1: Obtención de la solución básica inicial


El marco de transporte es conveniente para determinar una base viable inicial para el simplex
debido a una propiedad interesante:

Proposición 7.1
La condición necesaria y suficiente para determinadas variables del problema de
transporte son linealmente dependientes es que forman un ciclo en el marco del transporte .

La Proposición 7.1 se puede verificar para el problema numérico del ejemplo en las tablas siguientes:
Las líneas que unen las casas sombreadas resaltan la formación de ciclos en el marco de la transformación.
tamaños (ver gráfico de ciclo - Figura 7.7 (c)). Podemos ver fácilmente que estos conjuntos de variables
asociados con los ciclos en el marco de transporte son linealmente dependientes (LI). Por otro lado, son
los conjuntos de variables que componen un árbol son muy independientes (consulte la definición de árbol

x 1A x 1B x 1C

x 1A x 1B x 1C x 1A x 1B x 1C

x 2A x 2B x 3C
x 2A x 2B x 2C x 2A x 2B x 2C

a) Ciclo { X 1B , X 1C , X2C , X 2B } b) Ciclo { X 1A , X 1B , X 2B , X 2A } c) Gráfico del ciclo


{ X 1B , X1C , X 2C , X2B }

FIGURA 7.7 Representación de ciclos en la gráfica de transporte.

https://translate.googleusercontent.com/translate_f 241/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

Página 290

284 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

en el Apéndice B) en ese mismo marco de transporte, cuando consideramos cada celda como un nodo de un
tenedor. En la Figura 7.8 ejemplificamos dos casos de variables LI Como son LI, tales variables pueden ser
utilizado para componer una base del algoritmo.
La literatura reporta algunas reglas para obtener bases iniciales de buena calidad, es decir, que
tienen valores cercanos al valor óptimo buscado. Los dos métodos más conocidos son:

x 1A x 1B x 1C x 1A x 1B x 1C

x 2A x 2B x 2C x 2A x 2B x 2C

FIGURA 7.8 Ejemplos de bases para el problema del transporte.

4 Método de la esquina noroeste

1. Comience con la celda (1, 1) del marco de transporte.

2. Hacer: x 11 = Mín {~, ~ ~ ~


sobredosis
1 d 1 por d 1 - x 11 .
1 } ~ y reemplace el uno por ~ el 1 - x 11 , y

~ ~ ~ ~
Si ~O1 >, vaya
re1 a la celda (1, 2) y haga: x 12 = Min {~, sobredosis
1 d 2 por d 2 - x 12 .
2 } ~ y reemplace el uno por ~ el 1 - x 12 , y

~ ~ ~ ~
Si ~O1 < re1 vaya a la celda (2, 1) y haga: x 21 = Min {~, sobredosis
dos d 1 por d 1 - x 21 .
1 } ~ y reemplace el 2 por ~ a 2 - x 21 , y

~
Si ~O1 = re1 (degeneración), haz: x 11 = 0 y ve a (2, 2) o (1, 3).

3. Si ya se ha alcanzado una solución, deténgase. De lo contrario, ignore las filas y columnas satisfechas y
aplicar las reglas anteriores haciendo que la celda actual ocupe la posición de la celda (1, 1).

Ilustremos cómo obtener la base inicial para el ejemplo numérico de la figura 7.5.

dos 5 3

x 1A x 1B x 1C 25

7 4 1

x 2A x 2B x 2C 25

15 15 20

Tabla inicial asociada con la Figura 7.5

~ ~ ~ ~
x 11 = Mín. {~,sobredosis
1 o 1 - 15 = 25 - 15 = 10; d 1 - 15 = 15 - 15 = 0 ~ O1 >, entonces:
re1
1 } = Mín. {25, 15} = 15 Þ

~ ~o 1 - 10 = 10 - 10 = 0; ~ ~
x 12 = Mín {~,sobredosis
1 d 2 - 10 = 15 - 10 = 5 ~ Odos> redos
2 } = Mín. {10, 15} = 10 Þ

~ ~ ~ ~
x 22 = Mín {~,sobredosis
dos o 2 - 5 = 25 - 5 = 20; d2-5=5-5=0~ Odos= re3
2 } = Mín. {25, 5} = 5 Þ

x 23 = 20

Página 291

FLUJOS DE RED Y LOGÍSTICA DE DISTRIBUCIÓN 285

dos 5 3

15 10 x 1C 25

7 4 1

x 2A 5 20 25

15 15 20

https://translate.googleusercontent.com/translate_f 242/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
Base inicial (árbol) asociada con la Figura 7.5

Lo que representa la siguiente base inicial:

4 Método de Vogel para obtener una solución inicial


1. Construya el diagrama de transporte de Vogel (consulte el diagrama de Vogel 1). Si la oferta total es diferente
de la demanda total crean un origen (o destino) ficticio para el equilibrio.

2. Determine la diferencia entre los dos costos más bajos para cada fila y cada columna.

3. Seleccione la fila (o columna) con la mayor diferencia. Si hay empate, elija al azar.

4. En la columna (o fila) elegida, asigne, en la celda de menor costo, la mayor cantidad posible de
suministro.

5. Actualice las ofertas (y demandas) restando la cantidad de suministro asignada. Las lineas o
las columnas en las que ya se ha satisfecho la oferta o la demanda deben eliminarse en los siguientes pasos.

6. Si no hay más filas o columnas para llenar, deténgase. De lo contrario, vuelva al punto 2.

Usando el método de Vogel para obtener la solución inicial de nuestro ejemplo numérico:
El problema ya está equilibrado, dejándonos construir la tabla de cálculo. La imagen de Vogel es la
misma tabla de transporte más áreas para registrar las diferencias entre los dos más pequeños
costos:

Comenzamos calculando las diferencias de costo entre celdas (filas y columnas)

Columna A = 5; columna B = 1; columna C = 2; línea 1 = 3; línea 2 = 6 (ver Tabla 1).

LA segundo C Diferencias

dos 5 3

1 25 1 (3 - 2)

7 4 1

dos X 25 3 (4 - 1)

15 15 20

5 1 dos

Diferencias (7 - 2) (5 - 4) (3 - 1)

Mesa Vogel 1

Página 292

286 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

Elegimos la celda de menor costo en la línea 2 (2, 3) para recibir la mayor cantidad de suministros.
posible, actualizando las demandas y ofertas como resultado de esta acción (ver Cuadro 2). Columna 3
se puede eliminar de la tabla recalculando las diferencias. La columna A tiene la mayor diferencia y
celda (1, 1) el costo más bajo.

columna eliminada en la primera iteración

LA segundo C Diferencias

dos 5 3

1 X 25 1 3 (5 - 2)

7 4 1 5

dos 20 25 3 3 (7 - 4)

15 15 20 0

5 1 dos

Diferencias 5 1

Mesa Vogel 2

https://translate.googleusercontent.com/translate_f 243/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

Con las actualizaciones, la columna A se puede eliminar. El proceso continúa hasta el cuadro final (Cuadro 4).

columna eliminada en la segunda iteración

LA segundo C Diferencias

dos 5 3 10

1 15 25 13 0

7 4 1 5

dos 20 25 33 0

15 0 15 20 0

5 1 dos

Diferencias 5 1
1

Mesa Vogel 3

LA segundo C Diferencias

dos 5 3 10 0

1 15 10 25 13 0

7 4 1 5 0

dos 5 20 25 33 0

15 0 15 0 20 0

5 1 dos

Diferencias 5 1
1

Mesa Vogel 4

Página 293

FLUJOS DE RED Y LOGÍSTICA DE DISTRIBUCIÓN 287

Punto 2: Procedimiento para mejorar la solución básica actual


Sabemos que el método simplex calcula la contribución generada al ingresar la base de cada variable
no básico, eligiendo la variable de mayor aporte para ingresar a la base. Esta contribución es
a través del valor de los costos reducidos, o z j - c j a j Î J , que se expresan, en el caso general del producto
Problema de programación lineal, debido a la relación ya conocida:

z j - c j = c B B –1 a j - c j

me gusta

B -1a j = y j

tenemos que

zj-cj=cByj-cj

Podemos reescribir la ecuación anterior en función del marco de transporte, en el que cada celda
presenta una variable (el valor del flujo en un arco). En ese caso, debemos asociar un valor de control
contribución utilizando la celda como variable básica. Como los costos están asociados con dos
dimensiones, la ecuación de costo reducido se puede reescribir de la siguiente manera:

z ij - c ij = c B y ij - c ij

Lo interesante en este caso es que la matriz de columnas transformadas y ij se puede obtener simplemente
por sumas y restas de las variables básicas, lo que permite una fuerte simplificación en los cálculos
necesario. Podemos calcular la contribución a la mejora de la solución actual, debido a la posible
posible entrada de una nueva variable en la base de datos a través del procedimiento primario sugerido a continuación:

j k s

tu +1 -1
el uj un nosotros

https://translate.googleusercontent.com/translate_f 244/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

l -1 +1
el lk el ls

yo +1
el ij el ik

Cálculo z ij - Cij = ( Cuj - Cnos + Cls - Clk + Cik ) - Cij

El cálculo se justifica fácilmente ya que la entrada en la base de una variable, en el contexto de la


tabla, implica la sustitución de variables que tienen un valor distinto de cero en la fila y columna de la variable
entra en. Usando esta propiedad, la expresión z ij - c ij se puede calcular solo a través del balance
contabilidad. Tenga en cuenta que la independencia lineal se puede caracterizar por el valor (+) y (-) asociado con las columnas
de las variables. Las variables con entradas (-) son LI en relación con la variable para la que se estructuró el examen
rado. Ejemplifiquemos el cálculo de z ij - c ij en la siguiente tabla:

Página 294

288 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

dos 5 3

x 1A x 1B x 1C

7 4 1

x 2A x 2B x 2C

Tabla de cálculo z - c ij ij

Dado que hay dos variables fuera de la base x 1 C y x 2 B , tenemos que calcular z 1 C - c 1 C y z 2 B - c 2 B para verificar
la posible contribución resultante de la entrada en la base de estas variables.

z 1C - c 1C = + 2 - 7 + 1 - 3 = - 7
z 2 B - do 2 B = + 7 - 2 + 5 - 4 = + 6

lo que nos muestra que la solución básica no es óptima y que x 2 B puede entrar en la base.
Ahora nos queda interpretar las condiciones para dejar la base. En el caso particular de la transmisión
tamaño, una variable que ingresa a la base reemplaza totalmente la demanda cubierta por la variable que sale.
Para evitar la aparición de inviabilidad en la solución (valores de caudal negativos) debemos considerar
la sustitución por el valor más bajo (D) existente entre todas las variables que tienen la asignación +1 como-
asociado con la variable de entrada. En el caso del ejemplo:

(D) = mínimo { x 2 A , x 1 B }.

Punto 3: Regla de parada

La regla de parada vendrá dada por z ij - c ij £ 0, " i , j en la tabla.


Para concluir nuestro estudio de la solución primaria especializada al problema del transporte, sería
interesante comparar la trama simplex con la trama de transporte asociada. Que se calcule la base
por el método de la esquina noroeste y su marco simplex asociado como se describe a continuación:

dos 5 3

15 10 x 1C 25

7 4 1

x 2A 5 20 25

15 15 20

Marco de esquina noroeste

x 1A x 1B x 1C x 2A x 2B x 2C xa

–120 0 0 -1 –6 0 0 0

x 1A 15 1 0 0 1 0 0 0

https://translate.googleusercontent.com/translate_f 245/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
x 1B 10 0 1 1 -1 0 0 0
x 2B 5 0 0 -1 1 1 0 0

x 2C 20 0 0 1 0 0 1 0

xa 0 0 0 0 0 0 0 1

Tablero simplex

Página 295

FLUJOS DE RED Y LOGÍSTICA DE DISTRIBUCIÓN 289

Enfoque usando la variable dual

El método para resolver el problema del transporte también se denomina método del ciclo. Propiedad
del marco inicial obtenido, por ejemplo, por el método de la esquina noroeste, el método calcula el z ij - c ij asociado
asociado a celdas no básicas y mejora con la entrada de una nueva variable (celda activa). El valor
de la variable entrante se calcula inmediatamente según la sustitución de la variable saliente y la
tabla actualizada.
Sin embargo, es posible otra forma de calcular z ij - c ij , como sigue:

z ij - c ij = c B B –1 a ij - c ij = c B y ij - c ij

El elemento y ij se determina construyendo un ciclo ocupando la celda ij , sin embargo


lo sabemos:

z ij - c ij = wa ij - c ij

Si hacemos que w i , i = 1, ..., m sea representado por u i , y w m + j , j = 1, ..., n por v j , entonces el vector dual w es
dada por:

w = ( u 1 , ..., u m , v 1 , ..., v n )

Como un ij tiene un 1 en el i - ésimo y ( m + j ) -ésimo posición, a continuación, wa ij = u i + v j . Entonces:

z ij - c ij = u yo + v j - c ij

Este método para calcular los costos reducidos se denomina método de variable dual. Como w =
c B B –1 , entonces w es una solución del sistema wB = c B , recordando que:

B = ( a pq , ..., a st y m + n )

c B = ( c pq , ..., c st , c a )

Donde la ' causa , ... el st son los m + n - 1 columnas de la base y c pq , ..., c ts son sus costos correspondientes. y m + n es el
columna de costo artificial c a , un vector de ceros con una asignación igual a 1 en la posición m + n . Remembranza-
que la variable artificial siempre se asignará a cero, el valor de c a es irrelevante (normalmente es
bit igual a cero). Dado que B es una matriz triangularizable, el sistema de ecuaciones asociado con
dual w se puede resolver fácilmente. El sistema:

( U 1 , ..., u m , v 1 , ..., v n ) ( un pq , ..., un st , y m + n ) = ( c pq , ..., un st , 0 )

Es equivalente desde el ij = y i + y m + j . Pronto:

u p + v q = c pq
METRO
u s + v t = c st
vn=0

Calculemos los valores de las variables duales para la tabla de nuestro ejemplo numérico: el
dual v 3 es artificial y se le asignará un valor de cero. Entonces:

Página 296

https://translate.googleusercontent.com/translate_f 246/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
290 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

vc=0
para la celda (2, C ) u 2 + v c = 1 Þ u 2 = 1
para la celda (2, A ) u 2 + v A = 7 Þ v A = 6
para la celda (1, A ) u 1 + v A = 2 Þ u 1 = –4
para la celda (1, B ) u 1 + v B = 5 Þ v B = 9

Con los valores duales podemos calcular z ij - c ij :

z 2 A - c 2 A = u 2 + v A - c 2 A = 1 + 6 - 7 = 0 (variable básica)
z 2B - C 2B=u 2 + v B - c 2B = 1 + 9 - 4 = + 6
z 1 C - C 1 C = u 1 + v C - c 1 c = –4 - 0 - 3 = –7

La solución de ejemplo numérico

En nuestro ejemplo, tanto el método de la esquina noroeste como el método de Vogel llegaron a la solución óptima. Su-
pongamos la base inicial elegida para ser diferente:

4 Obtener una solución inicial (el método de elegir cualquier árbol en el tablero de transporte):

dos 5 3
x 1A 5 20 25

7 4 1

15 10 x 2C 25

15 15 20

4 Procedimiento para mejorar la solución actual:

Con la base inicial, obtenemos x B y z ij - c ij (mediante el procedimiento primario, por ejemplo). En eso
caso:

z 1 A - do 1 B = + 5-4-7 = 2-5 = + 6
z 2C - c 2 C = + 4-5 + 3-1 = + 1

4 Comprobación de viabilidad y regla de parada:

Como hay z ij - c ij ³ 0 la base no es óptima y x 1 A debe entrar en la base. La variable que debe salir, entre los
que forman conjuntos LD con x 1 A , es el que tiene el valor de atribución más bajo, es decir, D =
Mínimo {15, 5}. D = 5 significa la retirada de la variable x 1 B . El marco evoluciona para:

dos 5 3

5 x 1B 20 25

7 4 1

10 15 x 2C 25

15 15 20

Página 297

FLUJOS DE RED Y LOGÍSTICA DE DISTRIBUCIÓN 291

4 Procedimiento para mejorar la solución actual:

En ese caso:

z 1B - c 1B = + 4 - 7 + 2 - 5 = - 6
z 2 C - c 2 C = + 7-2 + 3-1 = + 7

4 Comprobación de viabilidad y regla de parada:


Como hay z ij - c ij ³ 0 la base no es óptima y x 2 C debe ingresar a la base, es la que tiene el valor más bajo de
es decir, D = min {10, 20}. D = 10 implica la retirada de la variable x 2 A . El marco evoluciona para:

https://translate.googleusercontent.com/translate_f 247/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

dos 5 3

15 x 1B 10 25

7 4 1

x 2A 15 10 25

15 15 20

4 Procedimiento para mejorar la solución actual:


En ese caso:

z 1B - c 1B = + 3 - 1 + 4 - 5 + = 1
z 2 A - c 2 A = +2 - 5 + 4-7 = - 6

4 Comprobación de viabilidad y regla de parada:

Como hay z ij - c ij ³ 0 la base no es óptima y x 1 B debe entrar en la base. La variable que debe salir, entre los
que forman conjuntos LD con x 1 B , es el que tiene el valor de atribución más bajo, es decir, D =
min {10, 15}. D = 10 implica la retirada de la variable x 1 C . El marco evoluciona para:

dos 5 3

15 10 x 1C 25

7 4 1
x 2A 5 20 25

15 15 20

¡Ya sabemos que la imagen es genial!

7.3.2 - El problema de designación (asignación o asignación)

Uno de los casos más importantes del problema del transporte es cuando las ofertas y la demanda
son unitarios. Este problema se denomina problema de designación y, por lo tanto, puede formularse
lado:

Página 298

292 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

norte norte

Minimizar z = ∑∑ c ij x ij
yo= 1 j= 1

sujeto a:
norte
∑ x ij = 1 i = 1, ..., n
j= 1

norte

∑ x ij = 1 j = 1, ..., n
= 1
yo

x ij ³ 0 i = 1, ..., n ; j = 1, ..., n

El problema de designación puede entenderse como el problema de asignar n células de producción a


n tareas. Cada célula es capaz de cumplir la tarea de acuerdo a un coste c ij peculiar a cada
de las n células. La variable binaria x ij = 1 significa que a la celda i se le ha asignado la tarea j como designación en el
rango de trabajo y 0 en caso contrario. La matriz A de este problema conserva las mismas condiciones de
total unimodularidad, siendo la asignación de variables más simple, con solo 0 o 1. La
El problema de designación dual se puede escribir como:
norte norte

Maximizar w = ∑ tu yo + ∑ vj
= 1
yo j= 1

sujeto a:
u yo + v j £ c ij yo , j = 1, ..., n

https://translate.googleusercontent.com/translate_f 248/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
u i , v j sin restricciones yo, j = 1, ..., n

Por el teorema de las autorizaciones complementarias sabemos que, en el óptimo,

( c ij - u yo - v j ) x ij = 0, yo, j = 1, ..., n

Qué lleva a las relaciones llamadas "ortogonalidad"

⎧X ij > ⇒0 tuyo + v j
= C
ij

⎩X ij = ⇒0 tuyo + v j
≤ C
ij

Lo que significa que si encontramos un conjunto de variables u , v y x , satisfaciendo completamente


En cuanto a las condiciones de ortogonalidad, habremos encontrado el óptimo del problema. El interés del modelo
dual es simplificar al máximo la tarea de identificar las condiciones de viabilidad. En ese caso, el
La solución dual viable se puede encontrar simplemente por:

~tu yo= min { c ij } i = l, ..., n


1 ≤ ≤ jn

~
vj= min { c ij - ~ u i } j = 1, ..., n
1 ≤ ≤ en

Como vimos para el problema del transporte, ~ u i se puede obtener considerando el más pequeño en la línea i
e ~ v j como el menor c ij - ~ u i dentro de la columna j .
Seguiremos ahora la planificación de un algoritmo especializado que utilizará la información
las variables duales y el teorema de las holguras complementarias para resolver el problema de diseño
nación. La estrategia será obtener una solución dual viable (tarea fácil) y, en cada iteración del algoritmo,
conducir a condiciones de ortogonalidad insatisfechas (una tarea un poco más elaborada). Ser el siguiente
ejemplo numérico.
Queremos asignar cuatro tareas a cuatro máquinas que tienen una matriz de costos como
Figura 7.9. En esta matriz, cada celda representa el costo de asignar la máquina i (representada en
fila i ) a la tarea j (que se muestra en la columna j ).

Página 299

FLUJOS DE RED Y LOGÍSTICA DE DISTRIBUCIÓN 293

Tareas (columnas)

1 dos 3 4

1 3 4 4 dos

Maquinaria dos 7 3 5 1
(líneas)
3 4 6 dos 5

4 1 dos 1 1

FIGURA 7.9 Tabla de designación para el ejemplo numérico.

Dado que la viabilidad primaria del problema de designación requiere que cada fila y columna tenga una y
sólo una entrada positiva ( x ij = 1), una solución básica viable a este problema representado en el
forma de una tabla de designación, como en la Figura 7.10, se puede ilustrar con las soluciones de ejemplo
en las tablas de la Figura 7.10, donde el símbolo • representa que la celda tiene la variable asociada
ciado a 1 ( x ij = 1), las celdas restantes permanecen iguales a cero.

· ·
· ·
· ·
· ·

FIGURA 7.10 Soluciones viables básicas (en el primario) para el problema de designación.

Las relaciones que involucran las variables duales indican que los puestos candidatos para la designación
deben identificarse como puntos donde encontramos valores mínimos de costo, ya sea en
relación con filas (variables u i ) o columnas (variables v j ). Para buscar este tipo de configuración,
Podríamos desarrollar un procedimiento que reste el valor de costo más bajo dentro de cada línea y
columna. Cada valor mínimo encontrado, cuando se resta de toda la columna o fila, producirá al menos
menos una posición nula, una posición que señalaría una designación dual viable. Por ejemplo, si el
La tabla de designación tenía los valores que se describen a continuación:

1 dos 3 4 Valor de línea mínimo

1 1 3 4 5 1

https://translate.googleusercontent.com/translate_f 249/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
dos 4 dos 4 7 dos
3 6 7 8 3 3

4 5 4 dos 1 1

Nos llevaría, al restar de cada línea, a la tabla:

1 dos 3 4

1 0 dos 3 4

dos dos 0 dos 5

3 3 4 5 0

4 4 3 1 0

Valor mínimo en columna 0 0 1 0

Página 300

294 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

que nuevamente restado del valor mínimo de las columnas conduce a:

1 dos 3 4

1 0 dos dos 4

dos dos 0 1 5

3 3 4 4 0

4 4 3 0 0

Podemos ver que la distribución de celdas nulas (soluciones duales viables) contiene una configuración
primarias viables y dos no viables, dentro de las posibles distribuciones de cuatro asignaciones dentro del
tabla, como se muestra en la Figura 7.11.

· · ··
· · ·
· ··
· · · ·
Configuración 1 Configuración 2 Configuración 3

FIGURA 7.11 Posibles asignaciones.

La configuración 2 es viable y doblemente viable, por lo que es genial. La matriz resultante de la resta sucesiva
de los valores mínimos de costo pertenecientes a cada fila y columna en el problema de designación se llama
capa de matriz reducida . El número máximo de celdas con costo reducido cero tal que no más de
dos ocupan la misma línea es igual al número mínimo de líneas necesarias para cubrir todas las celdas
los nulos de la matriz. Estas células se denominan independientes . Un teorema importante se deriva de la
procedimiento para obtener soluciones duales viables en el marco del problema de designación:

Teorema 7.1:
El número máximo de celdas independientes en un marco reducido del problema
la designación es igual al número mínimo de líneas que pueden cubrir todos los ceros
de la matriz.

Claramente, la primera solución dual viable obtenida en el marco reducido no siempre presenta una
configuración de elementos nulos que permite la identificación de una base primaria viable. En el caso de
siguiente tabla de transporte. Aplicar la técnica descrita para obtener una solución dual viable
tenemos la matriz reducida de la siguiente manera:

1 dos 3 4 Valor de línea mínimo

1 3 4 4 dos dos

dos 7 3 5 1 1

3 4 6 dos 5 dos

4 1 dos 1 1 1

https://translate.googleusercontent.com/translate_f 250/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
que lleva al marco:

Página 301

FLUJOS DE RED Y LOGÍSTICA DE DISTRIBUCIÓN 295

1 dos 3 4

1 1 dos dos 0

dos 6 dos 4 0

3 dos 4 0 3

4 0 1 0 0

Valor mínimo en
0 1 0 0
Columna

que, cuando se resta del valor mínimo por columnas, conduce a la matriz reducida:

1 1 dos 0

6 1 4 0

dos 3 0 3

0 0 0 0

Observamos que, en el ejemplo que estamos desarrollando, no existe una solución primaria viable para
el marco reducido encontrado, ya que las dos primeras líneas están cubiertas por ceros ubicados
en la misma columna. Por tanto, es necesario modificar esta distribución de celdas asignadas
dentro del marco, con el fin de obtener la viabilidad primaria. Al desarrollar un algoritmo
soluciones con tal propósito, nos interesará encontrar una mejora en las condiciones de
viabilidad primaria violada (representada por los ceros ubicados en la misma fila o columna).
Considere la matriz reducida de la tabla de designación con ceros cubiertos por el número más pequeño
posibles líneas. Sea k el número de líneas necesarias. Sea S r = { i 1 , i 2 ,, ..., p } la con-
junto a las líneas no cubiertas por ceros y S c = { j 1 , j 2 , ..., q } el conjunto de columnas no cubiertas. Seguro
~ ~
cómo S r = N \ S r e S c = N \ S c , donde N = {1, ..., n }. Por último, dejar que p sea el número de líneas en S r y q el número
número de columnas en S c , entonces k = ( m - p ) + ( m - q ). Denominando por c 0 el elemento más pequeño no cubierto,
o sea:

c 0 = min {}
~C
ij >0
yo∈señor
j ∈Sc

Es fácil demostrar que se puede obtener una nueva solución dual (modificación en el marco inviable)
de la siguiente manera:

u yo = ~ u yo + c 0 iÎSr
~
u yo = ~ u yo yo Î S r

vj=~vj jÎSc
~
vj=~vj-c0 Ji S c

En resumen: en la matriz reducida, bajo el aspecto de mantener la viabilidad dual, hay un


equivalencia entre restar c 0 de cada fila no cubierta y sumar c 0 a cada columna cubierta. En el caso
que la tabla puede tener celdas que tengan doble cobertura, es equivalente a restar c 0 de las celdas
descubrimientos y agregarlo a las celdas de doble cubierta. Cómo se restan los valores mínimos
pertenecientes a S r y S c , la tabla permanece no negativa y se crea al menos un cero en cada línea y
columna. En el ejemplo tenemos:

Página 302

296 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

https://translate.googleusercontent.com/translate_f 251/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

1 1 dos 0
Conjunto
Descubierto 6 1 4 0
c 0 = 1 (valor más bajo en
dos 3 0 3 descubierto en el marco)

0 0 0 0

Usando esta técnica para mejorar las condiciones de ortogonalidad violadas, debemos por lo tanto
reste 1 de los elementos descubiertos y sume 1 a los elementos cubiertos por dos guiones, para obtener
una nueva solución dual viable. El resultado nos lleva a las soluciones que se enumeran a continuación, todas geniales:

0 0 1 0 0 0 1 0 0 0 1 0

5 0 3 0 5 0 3 0 5 0 3 0

dos 3 0 4 dos 3 0 4 dos 3 0 4

0 0 0 1 0 0 0 1 0 0 0 1

Solución 1 Solucion 2 Solución 3

FIGURA 7.12 Posibles asignaciones.

Podemos consolidar los resultados obtenidos en las consideraciones de iteraciones duales en un algoritmo
ritmo para el problema de designación, como sigue:

Algoritmo húngaro
1. Dibuje la menor cantidad posible de líneas que cubran los ceros en las columnas y filas del
matriz de designación. Si el número de líneas es n , se ha encontrado la solución óptima.

2. Determine el elemento más pequeño no cubierto por las líneas. Reste este elemento de todos los demás
no cubierto y agréguelo a los elementos doblemente cubiertos. Vuelve al paso anterior.

Y para guiar el proceso de cubrir filas y columnas de manera óptima, sugerimos lo siguiente
asignación de letras:

Algoritmo de etiquetado
1. Seleccione todas las líneas que no tienen asignaciones.
2. Marque todas las columnas que tengan ceros en las filas marcadas.
3. Seleccione líneas que tengan asignaciones en columnas seleccionadas.
4. Repita 1 y 2 hasta que ya no sea posible marcar filas o columnas.
5. Dibuje una línea sobre cada línea sin marcar y sobre cada columna marcada.

Presentaremos un ejemplo completo de este algoritmo en el ítem 7.3.4.

7.3.3 - El problema del transbordo


Un caso relacionado con el problema del transporte y la designación es el problema de la asignación calificada.
De hecho, este problema se une a los dos anteriores al modelar la posibilidad de un problema de

Página 303

FLUJOS DE RED Y LOGÍSTICA DE DISTRIBUCIÓN 297

El transporte debe desarrollarse con un conjunto de nodos intermedios entre los puntos de suministro y
envía. La figura 7:13 describe este problema de hacer llegar el flujo de puntos de suministro (puntos a )
puntos de demanda (puntos d ) que pasan por puntos intermedios de transbordo, o denominados
puntos de almacenamiento.

Vértices de suministro Almacenes Vértices de demanda


(índices) i (índice) k (índices) j

El 1 d1

a1

El 2 d2

.
https://translate.googleusercontent.com/translate_f 252/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

.
. .
.
. .
. una s .

La m dn

M = {1, ..., m} S = {1, ..., s} N = {1, ..., n}

FIGURA 7.13 El flujo del problema de desbordamiento no está habilitado.

Considerando:

f k º coste fijo de activación de un punto de desbordamiento o almacén k , k Î S , S = {1, ..., s }, el conjunto de


ofrecer puntos.
v kº variable binaria que asume el valor 1 si se activa el punto de desbordamiento y 0 en caso contrario.
a kº capacidad de almacenamiento proporcionada por el punto de transferencia k .
x ik º flujo que discurre por un arco ik .
y kjº caudal que discurre por un arco kj .
c ik º costo de atravesar el arco ik .
w kj º costo de atravesar el arco kj .
Podemos formular el problema del desbordamiento no calificado (PTNC):

metro s s norte s

(PTNC) Minimizar z = ∑∑ c ik x ik + ∑∑ w kj y kj + ∑ fkvk


= 1
yo k= 1 k= 1 j= 1 k= 1

sujeto a:
s

∑ x ik £ a k v k k = 1, ..., s (7,1)
yo= 1
s
∑ y kj = d j j = 1, ..., n (7,2)
k= 1
metro norte

∑ x ik = ∑ x kj k = 1, ..., s (7,3)
yo= 1 j= 1

Página 304

298 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

x ik ³ 0 iÎM,kÎS (7,4)

y kj ³ 0 kÎS,jÎN (7,5)

v k Î {0, 1} kÎS (7,6)

La restricción (7.1) describe el proceso de creación (o apertura) de almacenes, considerando el aspecto


demanda de flujo de oferta. La restricción (7.2) garantiza que se satisfaga la demanda. LA
la restricción (7.3) asegura la continuidad del flujo. Las otras restricciones cumplen los requisitos de no
gatividad y la naturaleza de las variables.
La formulación anterior describe un problema incondicional, es decir, sin restricciones asociadas
Fluye en los arcos. En muchas situaciones reales, el problema del transporte de transbordo tiene limitaciones
factores de flujo en sus arcos, ya que las carreteras, ferrocarriles o incluso aerovías tienen limitaciones
tráfico. En este caso, podemos reescribir (PTNC) usando la red alternativa en la Figura 7.14 que hace
facilita la incorporación de este tipo de restricción.

El 1 d1
X ik Y kj
Pk
A1 A'1

El 2 d2

. .
. Almacenes .
. .
. . .
.
. Ak A'k .

https://translate.googleusercontent.com/translate_f 253/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

La m dm

M = {, ...,
1 m} S = {, ...,1 s} N = {, ...,
1 n}

FIGURA 7.14 Red para el problema de desbordamiento habilitado.

Considerando:

g k º costo de almacenamiento en unidad k por unidad de flujo k Î S , S = {1, ..., s }.

H k y h k º Capacidades máximas y mínimas de almacenamiento en unidades de almacenamiento k , que


también corresponden a límites para el flujo en la red.

p kº caudal circulante en la unidad de almacenamiento k .


l ik º límite de caudal inferior en el arco ik .

L ik º límite de caudal superior en el arco ik .

Podemos escribir el problema del transbordo habilitado (PTC) de la siguiente manera:

metro s s norte s s

(PTC) Minimizar z = ∑∑ c ik x ik + ∑∑ v kj y kj + ∑ f kv k + ∑ gkpk


= 1
yo k= 1 k= 1 j= 1 k= 1 k= 1

sujeto a:

Página 305

FLUJOS DE RED Y LOGÍSTICA DE DISTRIBUCIÓN 299

metro

∑ x ik £ a k v k k = 1, ..., s (7,7)
yo= 1

s
∑ y kj = d j j = 1, ..., n (7,8)
k= 1

metro norte
∑ x ik = p k = ∑ x kj k = 1, ..., s (7,9)
yo= 1 j= 1

hk£pk£Hk k = 1, ..., S (7,10)


L ik £ x ik £ L ik i Î M, k Î S (7,11)
l kj £ y kj £ L kj kÎS,jÎN (7,12)
x ik ³ 0 iÎM,kÎS (7,13)
y kj ³ 0 k Î S, j Î N (7,14)
v k Î {0, 1} kÎS (7,15)

En este modelo, encontramos las restricciones de capacidad asociadas con los arcos en las restricciones (7.11) y
(7.12). El flujo en los puntos de almacenamiento está controlado por restricciones (7.10) y (7.9). La función objetivo
vo incluye los costes de almacenamiento del producto.

7.3.4 - La Denominación de problemas y ponderado 1- Matching


El problema de emparejamiento ponderado de 1 es el problema de obtener, en un gráfico G , una
dependiente de los bordes a un costo mínimo, como vimos en el ítem 5 del Capítulo 6. Sea G = ( N, A ), N = {1, ...,
2 n }, un gráfico bipartito en dos conjuntos de nodos con n componentes cada uno. En este caso el problema
se puede formular de la siguiente manera:

norte norte

(1_MAT) Minimizar z = ∑∑ c ij x ij
= 1
yo j= 1

sujeto a:
norte
∑ x ij = 1 i = 1, ..., n
j= 1

norte
∑ x ij = 1 j = 1, ..., n
= 1
yo

https://translate.googleusercontent.com/translate_f 254/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
x ij Î {0, 1} "( i, j ) Î A
En que:

⎧1 si el borde () está incluido


yo, j en la solución
x ij ≡ ⎨
⎩0 c de otra manera

c ij º El costo de la arista ( i, j ) a elegir para integrar la solución.

Según el modelo desarrollado en el ítem 7.3.2, el modelo (1_MAT) también representa el problema
de designación. En el caso del grafo bipartito, donde los dos conjuntos de vértices tienen el mismo
cardinalidad, podemos resolver el problema de designación como una coincidencia 1_ ponderada, y
hacerlo, si lo deseamos, a través de un modelo de flujo de red, de acuerdo con
7.15.

Página 306

300 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

c ij
1 1 1 1

. .
. .
. .
1 norte norte 1

i = 1., n j = 1., n

FIGURA 7:15 1- Coincidencia ponderada modelada por flujo de red.

Este modelo también se puede resolver con el algoritmo húngaro desarrollado previamente
del. Como ejercicio, resolveremos la correspondencia 1_ ponderada de la gráfica de la figura 7.16, asociada con la
La figura 7.17, como un problema de designación, muestra la asociación de los pasos del
algoritmo a la solución de flujo sugerida por el modelo en la Figura 7.15.

1 1 1 1

1 dos dos 1

1 3 3 1

1 4 4 1

FIGURA 7.16 Tabla para calcular el algoritmo húngaro.

Para un problema como este, que tiene una representación gráfica fácil de ver,
utilizar un diagrama que nos permitirá seguir las soluciones primarias y duales en cada iteración del
método. La matriz de costos C = [ c ij ] se muestra a la izquierda, con vectores duales en el lado izquierdo
cariño y abajo. El flujo asociado se representa a la derecha, como en la Figura 7.15.

1 1 1 1
1 dos 3 4 tu yo

1 1 dos dos 1
dos 3 5 8 dos
dos 7 5 1 4 1
3 3 dos 5 6 dos 1 3 3 1
4 7 3 dos 1 1

vj 1 4 4 1
0 0 0 0

Cuadro inicial Flujo asociado

FIGURA 7.17 Ejemplo numérico.

En este caso, ya en la primera iteración del algoritmo húngaro, llegamos a un flujo primario y dual
(óptimo) como se muestra en la Figura 7.18.
Tomemos ahora el ejemplo numérico sugerido por la nueva matriz de costos de la figura 7.20.
Cuando aplicamos el algoritmo húngaro en el caso del ejemplo de la figura 7.20, no obtenemos
primera distribución de los ceros, las condiciones de ortogonalidad necesarias como se muestra en la figura 7.21.
Como no es posible obtener una solución primaria viable, el flujo generado no corresponde a un
consejería (ver Figura 7.22).

https://translate.googleusercontent.com/translate_f 255/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

Página 307

FLUJOS DE RED Y LOGÍSTICA DE DISTRIBUCIÓN 301

1 1 1 1
1 dos 3 4 tu yo

1 0 1 3 dos 1 dos dos 1


6
dos 6 4 0 3 1
3 1 0 3 4 dos 1 3 3 1
4 6 dos 1 0

vj 0 0 0 0 1 4 4 1

Marco reducido Flujo asociado

FIGURA 7.19 Flujo viable.

1 dos 3 4 tu yo

1 94 1 54 68 1

dos 74 10 88 82 10 (cálculo de u) i
3 62 88 8 76 8

4 11 74 81 21 11
vj 0 0 0 0

FIGURA 7.20 Segundo ejemplo numérico.

1 dos 3 4 tu yo

1 93 0 53 67 1

dos 64 0 78 72 10 (cálculo de v) j
La cuarta columna
3 54 80 0 68 8
viola las condiciones
4 0 63 70 10 11 ortogonalidad
vj 0 0 0 0

FIGURA 7.21 Primera iteración del algoritmo húngaro.

1 dos 3 4 tu yo 1 1 1 1

1 93 0 53 57 1
1 dos dos 1
dos 64 0 78 62 10
3 54 80 0 58 8
4 0 63 70 0 11 1 3 3 1

vj 0 0 0 10

1 4 4 1

Marco reducido Flujo asociado

FIGURA 7.22 Flujo asociado con la solución primaria inviable.

Página 308

302 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

Aplicando el procedimiento de etiquetado, necesitamos tres líneas para cubrir los ceros ( n = 3 ¹ 4), el
lo que nos dice que la imagen no es genial. De ahí encontramos:

https://translate.googleusercontent.com/translate_f 256/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
1 dos 3 4 tu yo

1 93 0 53 57 1

dos 64 0 78 62 10
53 es el valor más bajo
3 54 80 0 58 8 descubierto

4 0 63 70 0 11

vj 0 0 0 10

FIGURA 7.23 Primer etiquetado del algoritmo húngaro.

que nos lleva a la tabla de la Figura 7.24:

1 dos 3 4 tu yo

1 40 0 0 4 0

dos 11 0 25 9 0

3 54 133 0 58 0

4 0 116 70 10 0

vj 0 0 0 0

FIGURA 7.24 Tabla de cálculo después del primer etiquetado.

lo cual sigue siendo inviable como podemos ver en la Figura 7.25.

1 dos 3 4 tu yo 1 1 1 1

1 36 0 0 0 0
1 dos dos 1
dos 7 0 25 5 0
3 50 133 0 58 0
4 0 120 70 0 0 1 3 3 1

vj 0 0 0 0
1 4 4 1

Marco reducido Flujo asociado

FIGURA 7.25 Segundo flujo inviable.

Continuando con la aplicación del algoritmo tenemos:

1 dos 3 4 tu yo

1 40 0 0 4 0

dos 11 0 25 9 0 4 es el valor más pequeño


descubierto
3 54 133 0 58 0

4 0 116 70 10 0

vj 0 0 0 0

FIGURA 7.26 Segundo etiquetado.

Página 309

FLUJOS DE RED Y LOGÍSTICA DE DISTRIBUCIÓN 303

El segundo etiquetado finalmente nos lleva a un flujo viable, como se muestra en la Figura 7.27:

1 dos 3 4 tu yo 1 1 1 1

1 36 0 0 0 0
1 dos dos 1
dos 7 0 25 5 0
3 50 133 0 54 0
4 0 120 74 0 0 1 3 3 1

vj 0 0 0 0
1 4 4 1

Marco reducido Flujo asociado

FIGURA 7.27 Flujo viable.

La distribución viable se identifica mediante el procedimiento de etiquetado del algoritmo, como se muestra en
Figura 7.28:
https://translate.googleusercontent.com/translate_f 257/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

1 dos 3 4 tu yo

1 36 0 0 0 0

dos 7 0 25 5 0
n=4
3 50 133 0 54 0 Gran foto

4 0 120 74 0 0

vj 0 0 0 0

FIGURA 7.28 Marco óptimo.

7.3.5 - El problema de la ruta más corta st en el modelo de red

Este problema, cuando consideramos las longitudes de las aristas o arcos de una gráfica como costos,
se puede ver como un caso de desbordamiento no calificado, como se muestra en la Figura 7.29.

1
4
dos T

dos
dos 3 1

3
1 1
1 5
s 1

1
1
4 1

FIGURA 7.29 Ruta más corta en el modelo de red.

En una red con n nodos, donde s es el nodo receptor y t es el nodo fuente, la formulación matemática de este
El problema se puede resumir de la siguiente manera:

Página 310

304 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

( CC ) Minimizar z = ∑ c ij x ij
(,)ij A ∈

sujeto a:
⎧1 si = es
(nodo fuente)
∑ x ij - ∑ x ki = ⎨ 0 otros casos
(,)ij A ∈ (,)ij A ∈ ⎩ –1 si i = t (nodo de suma
idouro)

x ij ³ 0 "( i, j) Î A

donde x ij representa el flujo que circula en el arco ( i, j ) Î A . En el caso del ejemplo de la figura 7.29 tendremos
la tabla de restricciones en la Figura 7.30.

Nudo - Arco xS1 xS3 x 12 x 32 x 34 x 45 x 25 x2T x 5 toneladas


Restricción de flujo

s 1 1 = 1

1 -1 1 = 0
dos -1 -1 -1 1 1 = 0

3 1 1 = 0
4 -1 1 = 0
5 -1 -1 1 = 0

T -1 -1 = -1

Costo 1 1 dos dos 1 1 3 4 1

FIGURA 7.30 Matriz de flujo para el problema de la ruta más corta st.

La solución del camino más corto en el gráfico de la figura 7.29 es s-3-4-5-t.

7.4 - PROBLEMAS DE FLUJO


https://translate.googleusercontent.com/translate_f 258/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

Los problemas más tradicionales en el contexto de la optimización del flujo de la red son:

• Problema de circulación.
• Problema de flujo máximo.
• Problema de flujo de costo mínimo.
Estudiaremos algunos de los algoritmos basados en la teoría de grafos para resolver los problemas de
caudal máximo. Para el caso del flujo de costo mínimo estudiaremos el hilo de los algoritmos tipo
primal-dual basado en la especialización del algoritmo simplex.

7.4.1 - El problema de la circulación


El problema de circulación es un problema básico en el área de flujo. Ya sea en la hipótesis de maximizar la
pasando por una red, si el objetivo es determinar un flujo de costo mínimo, antes
todo, es necesario dominar las condiciones de circulación de este flujo en la red.

4 conceptos básicos
El primer concepto que se examina dentro del problema de la circulación se refiere a su forma viable. un
el flujo viable debe respetar tanto las condiciones de capacidad de los arcos, o no podrá fluir,
como, en el caso de los modelos lineales y conservadores, las restricciones de conservación de su valor. El primero
La ley de Kirschoff es especialmente útil para determinar flujos viables en redes capaces.

Página 311

FLUJOS DE RED Y LOGÍSTICA DE DISTRIBUCIÓN 305

Teniendo en cuenta una red en la que sólo s y t nodos Tienes la oferta y la demanda de flujo, el nombre
nada se verifica la primera ley de Kirschoff para el flujo. No hay pérdida de generalidad cuando
consideran que todos los nodos de la red, con la excepción de s y t, son conservadoras, ya que es posible
Los nodos de oferta o demanda pueden estar representados por un par de nodos conservadores en relación con el flujo.
conectado a las s y t nodos con un arco en la capacidad estricta de su demanda, como se muestra en la Figura 7.31.
En la figura, los paréntesis asociados con algunos de los arcos artificiales representan el valor del límite inferior para
el flujo en el arco. En cada nodo conservador de una red R = ( E, V, F ) , se aplica la primera ley de Kirschhoff:

Primera ley de Kirschhoff


La suma de los flujos que ingresan a un nodo de la red es igual a la suma de los flujos que salen.

Equilibrio de arcos Equilibrio de arcos


5 9
Nudo artificial Nudo artificial

LA 1 4 segundo
1 4
(5, ...) (9, ...)

12 12
s dos 5 t
7 3
s dos 5 t

3 6

3 6

Arco de equilibrio

Red no conservadora Red equivalente conservadora

FIGURA 7.31 Transformación para nodos de oferta y demanda.

Podemos aplicar la primera ley de Kirschhoff para analizar el flujo representado en la Figura 7.32:

x2
x3

X dos
7

Y
x1
3
x4

x5

5
6

FIGURA 7.32 Flujo entre conjuntos de nodos.

https://translate.googleusercontent.com/translate_f 259/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
Sabiendo que el conjunto de nodos en la gráfica de la figura 7.32 es V = { x 1 , x 2 , x 3 , x 4 , x 5 } y representado por f
un flujo dado, es decir:

f(X,Y)=f1+f3+f4
f(Y,X)=f2+f6=f2+f5

Podemos establecer la ley de conservación del caudal como:

f ( x, V ) = f (V, x), "x Î V

Página 312

306 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

De hecho, exhibir un flujo viable en una red es una tarea elemental cuando los arcos tienen limitaciones.
Caudales mínimos iguales a cero. En esta hipótesis, el flujo nulo se presenta como una solución trivial.
Sin embargo, no siempre encontramos esa posibilidad en la práctica. En numerosos casos, los arcos de la red
imposiciones de flujo distintas de cero. Para la visualización de un flujo que cumple con las restricciones.
de límites superior e inferior de flujo en los arcos en cualquier red, es necesario tener una alternativa
goritmo. El siguiente algoritmo se basa en el principio de conservación del flujo y siempre será
tranquilidad, si la hay, flujo viable en una red capaz.
Definiendo la distancia de f ( i, j ) al intervalo [ l ij , L ij ] como:

⎧0, si l ij ≤ fij(,)L ≤
⎪ ij
d ( yo , j ) ⎨=l ij - (,), fij si ()fi,< jl ij
⎩⎪ fij(,)L -ij , si ()>fi, ()
j L i, j

Sea d ( f ) = ∑ d ( i , j ).
(,)ij A ∈

Entonces, si d ( f) = 0, f es un flujo viable. De lo contrario, hay al menos un arco ( i, j ) Î A con


d ( i , j )> 0. Con base en este hecho, el siguiente algoritmo buscará la viabilidad de los flujos en los arcos o probará
que esta condición no existe.

4 Algoritmo de circulación
Paso 1: ( inicialización )

• Construir una circulación f que satisfaga la ecuación de conservación en todos los nodos de la red, es decir,
f ( x , V) - f (V, x ) = 0 para " x Î V. La circulación f = 0 se puede utilizar en cualquier caso. Vaya al paso 2.

Paso 2: ( regla de parada )

• Si d ( f ) = 0, entonces f es una circulación viable. Fin.

De lo contrario, seleccione un arco ( x, y ) Î E , tal que d ( x, y )> 0.

Paso 3: ( regla de etiquetado )

• Si f ( x, y )> L ( x, y ) entonces, partiendo del nodo i , llegue al nodo j , etiquetando los nodos mediante el siguiente proceso:
• Empiece por etiquetar el nodo i con [ j - , x ( x ) = f (x, y) - L ( x , y )]. A continuación, seleccione un nodo etiquetado como aún no
examinó i , y etiquete los nodos no etiquetados j usando las siguientes reglas:
- Si ( i , j ) es un arco con f (i, j) <L ( i , j ) etiqueta j con:

[ i + , x ( j ) = min {x ( i ), L (i, j) - f (i, j) }]

- Si ( i, j ) es un arco con f ( i, j )> l (i, j )}] etiqueta j con:

[ i + , x ( j ) = min {x ( i ), f ( i, j ) - l ( i, j )}]

Continúe etiquetando hasta que ocurra una de las siguientes situaciones:

https://translate.googleusercontent.com/translate_f 260/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

Página 313

FLUJOS DE RED Y LOGÍSTICA DE DISTRIBUCIÓN 307

• El y- nodo se alcanza y se marcó. En este caso, modificar el flujo en los arcos del ciclo de x a y , formado
por los nodos etiquetados como sigue:
- A partir de x , recorre el ciclo restando x ( y ) en arcos inversos y sumando arcos directos. En el
para obtener y , reste x ( y ) de f ( x, y ). Regrese al paso 2.
- Si el y- nodo no puede ser alcanzado y etiquetado, no hay circulación viable. Fin.
- Si f (x, y) < l (x, y) , rotule el nodo y con:

[ x + , x ( y ) = l (x, y) - f (x, y) ]

y tratar de llegar a x a partir de y , aplicando las mismas reglas presentadas para el caso anterior.

- Continúe etiquetando hasta que ocurra una de las siguientes condiciones:

• Si el nodo x está etiquetado y, por lo tanto, se ha encontrado un ciclo de y a x , modifique el flujo agregando x ( x )
fluir en arcos inversos y restar x ( x ) en arcos directos de este ciclo y finalmente sumar x ( x ) a
f ( x, y ). Regrese al paso 2.

• Si el nodo x no está etiquetado, no hay circulación viable. Detener.


4 Ejemplo numérico de aplicación del algoritmo de circulación
Sea la red de la Figura 7.33. Deseamos hacer posible, si es posible, el flujo entre los nodos de la red. Los valores
tres paréntesis representan los límites de flujo para cada arco [límite inferior, límite superior] y los valores
los corchetes representan el flujo en el arco.

[1.3] [2.5]
(5) (5)

dos [0.3] (0) 4 (10)

(5) (5)

[1.6] [3.5]

(10)

FIGURA 7.33 Red con flujo inviable.

El caudal indicado para el arco (2, 3) viola el límite superior del arco, lo que significa que el caudal del
La figura 7.33 no es factible. Aplicando el algoritmo de etiquetado del nodo 1, considerado el caso del nodo i,
lo hubiéramos visto en la Figura 3.34.
Si se alcanza el nodo y y se etiqueta es porque hay un ciclo que incluye el arco ( x, y ) y los cambios
El flujo produce un nuevo flujo conservador que cumple con la ecuación:

[′ F ( x, y ) = f ( x, y ) ± x ( y )]

Cuando x (y)> 0, en cada ciclo se encontró que el flujo se acerca a x ( y ) unidades de la situación de viabilidad.
en los arcos no viables, con flujos en todos los arcos ( i, j ) del ciclo
que l (i, j) £ f (i, j) £ L (i, j) .

Página 314

308 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

[i,+ (y)ξ = 2]
y

[1, 3] [2, 5]

(5) 3 (5)

[y-, (x)ξ = 2] X [0, 3] (0) 2 k (10)

https://translate.googleusercontent.com/translate_f 261/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

(5) 3 (5)

[dieciséis] [3, 5]

[x-, (i)ξ = 2] yo

(10)

FIGURA 7.34 Red con flujo viable.

7.4.2 - El problema del caudal máximo


Este problema corresponde a la fuerza, por una determinada red sujeta a límites de capacidad de circulación
en los arcos, el mayor caudal posible. La figura 7.35 ejemplifica el problema, en el que los corchetes expresan
los valores mínimo y máximo para el caudal en cada arco.

1 [1.7] 4

[5.10] [0.10] [1.12]

? s [1, 8] [0, 9] [0.13] ?


dos 5 t

[0,7]
[0.15] [2, 8]
[dieciséis]

3 [0, 7] 6

FIGURA 7.35 Flujo máximo desconocido.

Antes de presentar algunos algoritmos de solución al problema, es necesario abordar ciertos aspectos
Aspectos teóricos y de nomenclatura.

Conceptos básicos

4 corte st :

Considerando la red R , cuyo sustrato gráfico es G = ( V, E ) y ( X , X ) una partición de V tal que X È X = V y


X Ç X = Æ , diremos que ( X , X) define un corte st en G = ( V , E ). La figura 7.36 ejemplifica un corte ts ,
donde X = { s, 1, 2, 3, 4}, X, = {2, t }.
Según el teorema de la circulación, la existencia de un flujo implica:

L (X, X) ³ l (X, X), "X, X Í V

donde L (X, X) y L (X, X) representan los límites inferior y superior del flujo total entre el conjunto de nodos X
y X. En este caso concluimos que:

Página 315

FLUJOS DE RED Y LOGÍSTICA DE DISTRIBUCIÓN 309

s 3 dos t

FIGURA 7.36 A st ..

1. El valor de flujo máximo f 0 *


en la primera red debe ser menor o igual a la capacidad neta de cualquier
corte st es decir:

*
F0 ≤ LX
(,)X- (,) lX X St corte st

https://translate.googleusercontent.com/translate_f 262/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

2. Cada f * flujo en la red st , tal que: f 0 *= min { L ( X , X) - l ( X, X)} es el máximo.


cortar - (st, )XX

4 Gráfico de aumento de flujo

Nos referiremos a la gráfica de aumento de flujo a la gráfica G f = ( V, E f ) que, teniendo solo arcos simples
simple, se construye de la siguiente manera:

• ( x , y ) Î E f si (x, y) Î E y f ( x, y ) < L ( x, y )
• ( y , x ) i E f si ( y, x ) i E y F ( x, y )> l ( x, y )
4 Espacio de proa

Llamamos a la holgura del arco ( x, y ) a los siguientes valores:

• x (x, y) = L (x, y ) - f ( x, y ) si f (x, y) <L (x, y)


~
• ξ (x, y) = f ( x, y ) - l (x, y) si f (x, y) > l (x, y)

~
Un arco ( x, y ) puede tener tanto ξ como ξ.

4 Ruta de aumento de flujo

Es un camino en G f que conecta directamente s a t . Tenga en cuenta que si hay una vía de conexión s a t en G f que es
porque hay un camino en G que, en relación al flujo de corriente, tiene un juego que se puede calcular
~
culminado por x = Min {ξ, ξ}. La conservación de los flujos en los vértices no se verá afectada si aumentamos x
flujo en los arcos directos y restar de x el flujo en los arcos inversos de la trayectoria de aumento de flujo.
La figura 7.37 aclara este proceso:

Teorema 7.2:
Dado un flujo f , si existe un camino directo desde s a t , en un gráfico de G f , entonces f no es
caudal máximo.

Página 316

310 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

f0+ξ +ξ +ξ f0+ξ
s 1 3 t


dos

FIGURA 7.37 Flujo aumentado.

4 Algoritmo de Ford-Fulkerson: uso de rutas directas en G f


Cualquier camino en el aumento de flujo gráfico que conecta s a t pueden aumentar el flujo total
de s a t en el valor de la diferencia más pequeña en ese camino. Un flujo que circula entre s y t con este
El valor se llama flujo ascendente. Ejemplifiquemos el proceso de obtención de una secuencia
de flujos crecientes en el gráfico G f de la figura 7.38. Las figuras 7.38 (b) y 7.38 (c) muestran la identificación de
un flujo creciente.

[0, 4] 3
1 4 [0, 6]
3
[0, 3] [0, 2] [0, 2] 3
0
4 s t 4
0 0 1
[0, 5] [0, 3]
1 dos 3 [0, 7]
[0, 1] 1

(a) Red atravesada por un flujo f = 4 1

ξ=+1
ξ=+3 1 4 ξ=-3
ξ=-3
ξ=+3
ξ=+2
s ξ=+4 ξ=+2ξ=+6 t
ξ=+3
ξ=-1 ξ=-1
dos 3
ξ=-1
(b) Gráfico de aumento de flujo asociado

https://translate.googleusercontent.com/translate_f 263/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

Menos espacio libre


1 4 1 4

ξ=+2
ξ=+4 dos
s t s dos dos t
ξ=+3
ξ=+6 dos
dos 3 dos 3

(c) Camino directo S t en el gráfico G f (d) Aumento del flujo

[0, 4] 3
3 1 4 [0, 6]
[0, 3] [0, 2] 3
dos [0, 2]
6 s t 6
0 dos 3
[0, 5] [0, 3]
3 dos 3 [0, 7]
[0, 1] 1

(e) Red atravesada por un flujo = 6 f2

FIGURA 7.38 Identificación de un flujo creciente.

Página 317

FLUJOS DE RED Y LOGÍSTICA DE DISTRIBUCIÓN 311

Podemos describir un algoritmo basado en una secuencia de flujos crecientes de los siguientes
molde:

Algoritmo de Ford-Fulkerson (flujo máximo)

comienzo
Leer datos de la red R = ( G , C ) donde G = ( V, E ) y C es el vector de
capacidades de flujo para arcos
Determinando un flujo f alcanzable por R {movimiento con el algoritmo,
por ejemplo}
Etiqueta s con [-, ¥]
Mientras una existe vértice sin examinar Do
comienzo
Encuentre un nodo etiquetado pero no examinado i
examen de la siguiente manera:
comienzo
Para un arco ( i, j ) si f ( i, j ) < L ( i, j ) yj no están etiquetados entonces
etiqueta j con [ i + , x ( j )] donde x ( j ) ¬ Min {x ( j ), L ( i, j ) - f ( i, j )}
Para un arco ( j, i ) si f (j, i )> l ( j, i ) yj no están etiquetados, entonces
etiqueta j con [ i - , x ( j )] donde x (j) ¬ Min {x ( i ), f ( j, i ) - l ( j, i )}
Si el nodo t está etiquetado, haz
comienzo
Comenzando en t , usa las etiquetas para construir
una ruta de flujo creciente
Incrementar el flujo sumando y restando flujos
en los arcos del valor x ( t ), como se indica en
etiquetas, es decir, si es [ i + , x ( j )], sume x ( t ),
de lo contrario reste.
Suma x ( j ) al valor de flujo actual
Cancelar todas las etiquetas excepto la correspondiente
al nodo s .
Fin
Fin
Fin
Fin

El algoritmo de Ford-Fulkerson ( F & F ) finaliza cuando ya no es posible etiquetar el nodo t . En ese caso,
El marcado y no marcado también definimos un mínimo de flujo en sección R . Este algoritmo
comportarse de manera bastante ineficiente o incluso no converger si el
las ciudades de los arcos tienen valores irracionales. En caso de que la capacidad de los arcos sea completa, entonces el
la complejidad de F&F será O ( mf máx ). La red de la figura 7.39 muestra un caso en el que el algoritmo F&F
se vuelve extremadamente ineficiente:
Es posible que el algoritmo elija alternativamente ( s , 1, 2, t ) y ( s , 2, 1, t ) como rutas de aumento
fluir. En ese caso, se necesitarán 2.10 n operaciones de aumento de flujo para encontrar el flujo máximo

https://translate.googleusercontent.com/translate_f 264/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
estupendo. Por supuesto, si la elección de la ruta es ( s , 2, t ) y ( s , 1, t ), solo tomará dos iteraciones,
sin embargo, nada en el algoritmo básico de F&F garantiza que el caso patológico no ocurrirá. Es fácil de ver
que el problema del caso patológico radica en la longitud del camino creciente. Si el algoritmo
para aumentar el flujo en el camino que presenta el menor número posible de arcos entonces el
La tasa de F&F será O ( m 2 n ) (ver Dinic [1970]). Esto se puede lograr modificando la secuencia de etiquetado.
examen de modo que los ganglios se examinen en el mismo orden en que recibieron su

Página 318

312 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

1
[0, 10] n [0, 10] n

[0, 1] t
s

[0, 10] n [0, 10] n


dos

FIGURA 7:39 caso patológico para el algoritmo de flujo máximo F y F.

títulos. El teorema de Edmonds y Karp calcula el orden del número de aumentos de flujo necesarios para
la terminación del algoritmo F&F cuando se introduce la modificación de etiquetado y examen.

Teorema (Edmonds y Karp )


Si cada aumento en el flujo se hace en un camino si s a t del número mínimo de
arcos, entonces se obtiene un flujo máximo después de un máximo de mn / 2 £ ( n 3 - n 2 ) / 2 aumentos
flujo (véase Lawler [1976]).

A medida que cada aumento de flujo requiere operaciones O ( m ), la complejidad del algoritmo
F&F modificado es O ( m 2 n ). Otro resultado muy interesante se refiere a la complejidad de la alternativa
goritmo óptimo para la solución del problema de caudal máximo.

Teorema 7.3:
Para cualquier red st hay una secuencia de incrementos en el flujo de la cual obtener
caudal máximo.

Supongamos que los caminos directos de s a t se enumeran y que forman una


cuadrícula de incidencia D = [ d ijk ] donde:

d ijk = 1 si ( i, j ) pertenece a la ruta k y 0 en caso contrario.

f k º el valor del flujo a través del camino k .

l = [ l ij ] el vector de capacidad.

Entonces, podemos formular el problema de flujo máximo como:

(PFM) Maximizar F = ∑ fk
k

sujeto a:

∑ df ijk k≤ l ij ( i, j ) Î V
k

fk³0

Como este problema tiene m restricciones, una para cada arco, habrá una solución básica
viable para el que como máximo m de los f k flujos son estrictamente positivos. Las variables no nulas del
los problemas representan aumentos en el flujo. Esta situación teórica sugiere la posibilidad de la existencia de
un algoritmo capaz de obtener el caudal máximo en O ( m 2 ).

Página 319

https://translate.googleusercontent.com/translate_f 265/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
FLUJOS DE RED Y LOGÍSTICA DE DISTRIBUCIÓN 313

4 Algoritmo de Malhotra, Pramodh-Kamar y Maheshwari (MPM) (1978)

El razonamiento de forzar el flujo a través de los arcos, a través de rutas que conectan s y t , se puede extender a
nosotros. Definiendo como el potencial de flujo de un vértice el flujo más grande capaz de ser forzado a través de ese
vértice, es trivial verificar que en cualquier camino que conecta sa t el flujo máximo que se puede insertar
será el que se refiera al nodo con menor potencial perteneciente a la ruta. La figura 7.40 muestra cómo
potencial de un nodo limita cualquier flujo que conecta s a t Obra a través de p.

- +
G - (p) G - (p)

s PAGS t

FIGURA 7.40 Limitación de flujo generada por un vértice de la red.

La idea del algoritmo MPM es agotar la capacidad de los nodos de la red R , en lugar de la capacidad de sus
bordes. Al hacer circular el flujo, el procedimiento intenta agotar los arcos que utiliza. Como el
los arcos están saturados, se eliminan de las siguientes iteraciones. El algoritmo para cuando s o t son
eliminado de la lista de nodos potencialmente activos, ya que todos sus accesos están saturados. El flujo-
La figura 7.41 resume las acciones del MPM:

Cálculo de potencial
de los vértices v j

Elija el vértice de referencia


v k = min {} v j
j YO
N

Fluir dev aj s t
por saturación

Elimina arcos saturados Elimina vértices sin sucesores

Eliminar arcos adyacentes a vértices


sin sucesores

Capacidades de actualización
en la red residual

norte s s
eliminado? FIN

FIGURA 7.41 Diagrama de flujo del algoritmo MPM.

Página 320

314 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

Sea la red de la figura 7.42. Aplicando el algoritmo MPM obtendremos la secuencia de flujos y eliminaremos
siguiente información:

1 [0, 3] 4 [0, 5] 7

[0,7] [0, 3]
[0, 4] [0, 8]

[0, 9] [0, 3]

s [0, 3] dos [0.5] 5 [0, 3] t

https://translate.googleusercontent.com/translate_f 266/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
[0, 2]
[0, 4] [0, 5]
[0, 6]

3 [0, 3] 6

FIGURA 7.42 Red de ejemplo.

Paso 1: Obtener el potencial de los vértices (valor más bajo entre la suma de las capacidades que entran o
dejando).

K s 1 dos 3 4 5 6 7 t
vk 11 4 3 4 8 6 5 8 19

El vértice de referencia es 2, con potencial v 2 = 3.

Paso 2 : Fluir 3 unidades de flujo desde el vértice 2, agotando los arcos que generaron el valor de potencia.
posible cuello de botella (arcos de entrada). Observamos que, al intentar forzar un flujo desde el
vértice de menor potencial del camino, este flujo siempre se podrá realizar.

1 4 7

[3] s [3] dos [1] 5 [1] t [3]

[dos]

[dos]

3 6

(*) La capacidad del arco (2, 6) se agota antes de entrar (2, 5).

FIGURA 7.43 Flujo forzado a través del vértice 2.

Paso 3 : Eliminaciones y regla de parada.

Arcos saturadas son eliminadas y el vértice s todavía tiene sucesores.

Página 321

FLUJOS DE RED Y LOGÍSTICA DE DISTRIBUCIÓN 315

1 [0, 3] 4 [0, 5] 7

[0, 7] [0, 3]
[0, 4] [0, 8]

[0, 9] [0, 3]

s dos [0, 4] 5 [0, 2] t

[0, 4] [0, 6] [0, 3]

3 [0, 3] 6

FIGURA 7.44 Primera actualización de los arcos y capacidades.

Paso 1 : Obtener el potencial de los vértices (valor más bajo entre la suma de las capacidades que entran o
dejando).

s 1 dos 3 4 5 6 7 t
vk 8 4 0 4 8 5 3 8 dieciséis

El vértice de referencia es 6, con potencial v 6 = 3.

https://translate.googleusercontent.com/translate_f 267/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
Paso 2 : Fluir 3 unidades de flujo más desde el vértice 6, agotando los arcos que generaron el valor de
posible cuello de botella (arcos de entrada).

1 4 7

[6] s dos 5 t [6]

[3] [3]

3 [3] 6

FIGURA 7.45 Flujo forzado a través del vértice 6.

Paso 3: Eliminaciones y regla de parada.

Se eliminan los arcos saturados y el vértice s aún tiene sucesores.

Paso 1: Obtener el potencial de los vértices (valor más bajo entre la suma de las capacidades que entran o
dejando).

s 1 dos 3 4 5 6 7 t
vk 8 4 0 1 8 5 0 8 13

El vértice de referencia es 3, con potencial v 3 = 1.

Página 322

316 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

1 [0, 3] 4 [0, 5] 7

[0, 7] [0, 3]
[0, 4] [0, 8]

[0, 9] [0, 3]

s dos [0, 4] 5 [0, 2] t

[0, 1] [0, 6]

3 6

(*) La capacidad de arco (3, 6) está agotada

FIGURA 7.46 Segunda actualización de los arcos y capacidades.

Paso 2 : Fluir 1 unidad de flujo más desde el vértice 3, agotando los arcos que generaron el valor de
posible cuello de botella (arcos de entrada).

1 4 7

[7] s dos 5 [1] t [7]

[1] [1]

3 6

FIGURA 7.47 Flujo forzado a través del vértice 3.

Paso 3: Eliminaciones y regla de parada.

Se eliminan los arcos saturados y el vértice s aún tiene sucesores.

https://translate.googleusercontent.com/translate_f 268/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

1 [0, 3] 4 [0, 5] 7

[0, 7] [0, 3]
[0, 4] [0, 8]

[0, 9] [0, 3]

s dos [0, 4] 5 [0, 1] t

[0, 5]

3 6

s
(*) La capacidad del arco (, 3) está agotada

FIGURA 7.48 Tercera actualización de los arcos y capacidades.

Página 323

FLUJOS DE RED Y LOGÍSTICA DE DISTRIBUCIÓN 317

Paso 1 : Obtener el potencial de los vértices (valor más bajo entre la suma de las capacidades que entran o
dejando).

K s 1 dos 3 4 5 6 7 t
vk 4 4 0 0 8 4 0 8 12

El vértice de referencia es el número 1, con potencial v 1 = 4. Tenga en cuenta que podríamos haber elegido el
vértice 5 también. En este caso, no podemos olvidar que el flujo de 5 sería forzado a través de vértices con
potencial efectivo, es decir, el vértice 2 no se calcularía para la ruta de flujo a pesar de ser predecesor
ese vértice.

Paso 2: Fluir 4 unidades de flujo más desde el vértice 1, agotando los arcos que generaron el valor de
potencial de cuello de botella (arcos de entrada).

1 [3] 4 7

[1] [3]
[4]

[11] s dos 5 [1] t [11]

3 6

FIGURA 7.49 Flujo forzado a través del vértice 1.

Paso 3: Eliminaciones y regla de parada

Se eliminan los arcos saturados y el vértice s tiene potencial cero y se eliminará. Fin.

1 4 [0, 5] 7

[0, 6]
[0, 8]

[0, 9] [0, 3]

s dos [0, 4] 5 t

[0, 5]

3 6

(*) Se agotan las capacidades de los arcos (, 1),s (1, 4), (4,) y (5,) t t

FIGURA 7.50 Termine con s aislamiento.

https://translate.googleusercontent.com/translate_f 269/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

El análisis de complejidad del algoritmo MPM se puede realizar dentro de cada paso de cálculo.
Dado que en cada iteración se elimina al menos un nodo (el de referencia), la complejidad de

Página 324

318 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

ese nodo es O ( n 2 ). La actualización de la capacidad de los arcos se puede hacer en una lista circular, mantenida
teniendo, para cada vértice, los arcos incidentes hacia el exterior. Por tanto, la complejidad de esta fase es
O ( n 2 ). El problema tiene m arcos y cada uno se saturará una sola vez, siendo eliminado
en seguida. En cada iteración, al menos un arco está saturado. Entonces las eliminaciones totales del arco son
El ( m ). Por lo tanto, cada iteración requiere como máximo O ( n 2 ) operaciones. Como existe, en el peor de los casos, la posibilidad
En cuanto a examinar n -2 vértices, el MPM, en esta propuesta de implementación, es O ( n 3 ). La gráfica de
La figura 7.51 resume la relación evolutiva de una serie de algoritmos desarrollados para el problema de
caudal máximo.

Flujo maximo

Algoritmos deterministas Algoritmos deterministas Algoritmos


Método simplex (Teoría de las gráficas) Probabilístico

dos dos
Goldfarb y Hao (1990) O (nm) 2 Ford y Fulkerson (1962) El mf( )0 Cheriyan Hagerup (1990) El mn
( + n log n )

dos 8/3
Goldfarb y Hao (1991) O (...) Edmonds y Karp (1972) El (mn ) Alon (1990) El (mn + n iniciar sesión
)

dos 2+Î
Dinic (1970) El (mn ) Rey et. Alabama.
(1992) El mn
( +n )

2+Î
Karzanov (1974) Luego
() 3 Phillips Westbrook (1993) O (mnlog n + log norte)
m/n

2 1/2
Cherkasky (1977) El nm
( ) Rey et. Alabama.
(1994) El (mnlog norte
mnlon )

Malhotra et al. (1978) Luego


() 3

dosnorte 5/2 2/3


O ( Nuevo Iniciar
Méjico sesión
) Galil y Naamad (1979)
Galil (1978) Luego
( metro )

Sleatore Tarjan (1980) El (nm Iniciarnorte


sesión)

Shiloach Vishkin (1982) Luego


() 3

El nm
( IniciarUsesión)
Gabow (1983)

Tarjan (1984) Luego


() 3

Goldberg (1985) Luego


() 3

Ahuja y Orlin (1986) El nm


( +n dos
IniciarUsesión)

Los mejores límites de hoy


dos
Goldberg y Tarjan (1988) El nm
( Iniciar nsesión
/m ()

FIGURA 7.51 Evolución de los algoritmos de caudal máximo.

7.4.3 - El problema del flujo de costo mínimo (PFCM)

Este caso corresponde a la necesidad de hacer circular un flujo en una red st pagando el mínimo posible
a través del tráfico. Normalmente se conoce el caudal a transportar y existen restricciones para el máximo y el mínimo
el caudal permisible en los arcos, así como un valor asociado al tránsito en cada arco por unidad de
flujo ( c ij ) [límite inferior, costo de flujo, límite superior], como se muestra en la Figura 7.52.
La figura 7.53 muestra un resumen evolutivo de algunos algoritmos recientes, basados en el simplex,
para el flujo a mínimo costo en redes:

Página 325

FLUJOS DE RED Y LOGÍSTICA DE DISTRIBUCIÓN 319

https://translate.googleusercontent.com/translate_f 270/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
1 [1, 7, 7] 4

[5, 4, 10] [0, 5, 10] [1, 3,1 2]

10 10
s [1, 6, 8] dos [0, 5, 9] 5 [0, 2, 13] t

[0, 1, 7]

[0, 7, 15] [2, 1, 8]

[1, 9, 6]

3 [0, 10, 7] 6

FIGURA 7.52 Ejemplo de flujo a costo mínimo.

Fulkerson y Minty (1961)


ver también Zadeh (1973)

Goldfarb y Hao (1992)

Orlin (1993) O (m Iniciar


n (m +n
sesión norte)
Iniciar sesión

Orlin et al. (1993) O (nm (m + n norte)


registro norte)
de registro
Mejores límites
del presente

Armstrong y Jin (1997) O (m + n Iniciar


n)sesión
B)

FIGURA 7.53 Evolución del desempeño de los algoritmos

4 El algoritmo simplex para ( PFCM )


En los ítems anteriores, mostramos que el algoritmo simplex podría usarse de manera eficiente para resolver
aclarar algunos casos específicos de flujos de red. Aplicaciones enfocadas al problema de
transporte, designación y emparejamiento de 1 ” . Con un poco más de esfuerzo podemos generalizar el uso
de este algoritmo en cualquier problema de flujo de red (formulado por el modelo estricto). Ser la red
de la Figura 7.54.

dos 5

1 6

3 4

FIGURA 7.54 Ejemplo de red para (PFCM).

Página 326

320 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

Tiene la siguiente matriz de incidencia de arco-nodo que se muestra en la Figura 7.55.

Nosotros Arcos

x 12 x 13 x 24 x 25 x 23 x 34 x 46 x 53 x 56 x 61

1 +1 +1 -1

dos -1 +1 +1 +1

3 -1 -1 +1 -1

4 -1 -1 +1

5 -1 +1 +1

6 -1 -1 +1

https://translate.googleusercontent.com/translate_f 271/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

FIGURA 7.55 Matriz de incidencia de la Figura 7.55.

Como ya sabemos, esta matriz A = [ a ij ] está formada por entradas unitarias en la i- ésima y j- ésima
posiciones de columna (asociadas con un arco i - j en la Figura 7.54). Debido a esta propiedad, podemos
expresar una como una suma vectorial de los vectores unitarios y s , como sigue:

a ij = e i - e j

Considerando T cualquier árbol del gráfico de sustrato de la red de ejemplo, entonces T , por definición, es
un subgrafo conectado de la red de ejemplo con m nodos y m– 1 bordes y que no contiene ciclos. Teniendo en
También tenga en cuenta que cualquier submatriz de A , por ejemplo A T , una matriz m ´ ( m - 1) de un árbol en el
ejemplo en la Figura 7.54, entonces si m ³ 2, este árbol tiene al menos un nodo terminal (un nodo con sólo
arcos incidentes). En este caso, la k-ésima fila de A T , contendrá sólo una entrada unitaria, según
La Figura 7.56 y la matriz A T en la Figura 7.57 aclaran.

dos 5

1 6

3 4

FIGURA 7.56 Un árbol en la red de ejemplo.

Arcos

Nosotros x 12 x 25 x 34 x 46 x 56

1 +1 ç (oferta)

dos -1 +1

3 +1 ç (oferta)

4 -1 +1

5 -1 +1

6 -1 -1 ç (demanda)

FIGURA 7.57 Una submatriz A T de A.

Página 327

FLUJOS DE RED Y LOGÍSTICA DE DISTRIBUCIÓN 321

Es fácil ver que la matriz A T de la figura 7.57 se puede triangular mediante permutaciones
entre sus filas y columnas. Evidentemente, en relación con la solución del sistema de ecuaciones resultante de
matriz de restricción una de las líneas de la matriz es redundante. Con la eliminación de una línea A T el
junto con las variables (arcos) que lo componen formarán una base. Si queremos trabajar con una matriz
m ' soy la alternativa es introducir una variable artificial que añadimos una unidad a la fila de
El . La matriz triangularizada A T , más la variable artificial, se muestra en la Figura 7.58.

x 12 x 25 x 34 x 46 x 56 xa

1 +1 ç (oferta)

dos -1 +1

3 +1 ç (oferta)

4 -1 +1

5 -1 +1

6 -1 -1 +1 ç (demanda)

FIGURA 7.58 Una matriz triangular básica (m ´ m).

La matriz de la Figura 7.58 corresponde al siguiente árbol en el gráfico de sustrato de la red de ejemplo:

dos 5

https://translate.googleusercontent.com/translate_f 272/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
1 6

3 4

FIGURA 7:59 El árbol asociado con una base en el .

Esta asociación entre árboles en el gráfico de sustrato de la red y las soluciones básicas del problema puede
ser formalizado por el siguiente teorema:

Teorema 7.3:
Un conjunto de m columnas linealmente independientes del nodo arco nodo
de una red de flujo corresponde a un árbol en el gráfico G = ( V , E ), sustrato en la red.

En vista de los ejemplos desarrollados previamente de la aplicación del símplex para calcular
flujos de red en situaciones específicas, creemos que ya estamos en condiciones de adaptar los tres
Pasos básicos del algoritmo para el cálculo de cualquier problema de flujo formulado en la norma.
trito:

4 Obtención de una solución inicial.

4 Procedimiento de mejora de la solución actual.

4 Control de viabilidad y regla de parada.

Página 328

322 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

Ejemplo numérico
Determine el flujo de menor costo de la red en la figura 7.60.

b=
1
3 b dos
=2 b=
3
–4
(dos) (3)
1 dos 3

(1) (4)
(5) (1) (1)

4 5 6
(dos) (dos)
b=
4 –2 b 5= 5 b=
6 –4

FIGURA 7.60 Ejemplo numérico.

El flujo en la red de la figura 7.60 se puede formular en un sistema de ecuaciones del tipo Ax = b , donde
A es la matriz de restricción de flujo y b = [ b i ] representa el término independiente para las restricciones de la ecuación.
asociados con los nodos de la red, de la siguiente manera:

Demanda
Arcos
Oferta

Nosotros x 14 x 12 x 23 x 24 x 26 x 45 x 52 x 56 x 61 b yo

1 +1 +1 -1 3

dos -1 +1 +1 +1 -1 dos

3 -1 –4

4 -1 -1 +1 = -dos

5 -1 +1 +1 X 5

6 -1 -1 +1 –4

4 Obtención de una solución inicial del sistema


Como sabemos, cada árbol de la red R es una solución básica del sistema de ecuaciones de equilibrio de

https://translate.googleusercontent.com/translate_f 273/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
fluir. Cada árbol que corresponde a un flujo viable es una base viable. Sea el árbol de la figura 7.61.
b 1= 3 b dos
=2 b 3= –4
(3)
1 dos 3
(Artificial)

(5) (1)

4 5 6
(dos) (dos)
b 4= –2 b 5= 5 b 6= –4

FIGURA 7.61 Una solución básica inicial.

Página 329

FLUJOS DE RED Y LOGÍSTICA DE DISTRIBUCIÓN 323

El árbol de la Figura 7.61 corresponde a la matriz triangularizada de incidencia en el arco de tiempos de la Figura 7.62.

Arcos

Nosotros x 14 x 45 x 56 x 63 x 23 xa di

1 +1 3

4 -1 +1 -dos

5 -1 +1 5

6 -1 +1 –4

dos +1 dos

3 -1 -1 +1 –4

FIGURA 7.62 Matriz triangularizada.

cuya solución es:


x 14 = 3; x 45 = 1; x 56 = 6; x 63 = 2; x 23 = 2 yx a = 0, que es una circulación viable, como se indica en la Figura
7.63, a un costo de 37 unidades.

3 dos

dos 4
1 dos 3
(Artificial)

3 dos

4 5 6
1 6

dos 4
5

FIGURA 7.63 La circulación viable asociada con la base.

Sin embargo, no todas las bases (árbol en R ) corresponden a una circulación viable. Pensando en
fácilmente tienen una base viable inicial, sería natural imaginar el uso de m variables artificiales que
tener en cuenta el flujo real, lo que automáticamente haría factible el flujo nulo para el otro
red. Cada variable artificial estaría asociado con una línea, suponiendo que el valor ± y i , como
el componente d i señal . Con el mismo razonamiento utilizado en el método simplex, llegaremos a la
conclusión de que una buena forma de eliminar estas variables sería dividir el esquema de solución en
dos frases. En el primero, el método intentaría eliminar las variables artificiales de la base alcanzando
una base viable para el problema. En el segundo, la optimización se procesaría como clásicamente
recomendado en el algoritmo primal simplex. La adición de variables artificiales está asociada con la
clusión de un nodo artificial, es decir, una línea más en la matriz de restricción, como se muestra en la tabla
de la Figura 7.64:

https://translate.googleusercontent.com/translate_f 274/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

Página 330

324 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

x 12 ... x 14 x 45 x 56 x 63 x 23 x1 x2 x3 x4 x5 x6 x7 di

1 +1 ... +1 +1 3

4 ... -1 +1 +1 -dos

5 ... -1 +1 -1 5

6 ... -1 +1 -1 –4

dos -1 ... +1 +1 dos

3 ... -1 -1 -1 –4

7 0 0 0 0 0 0 0 -1 -1 +1 +1 -1 +1 1 0

FIGURA 7.64 Tabla de la primera fase para el ejemplo numérico.

La base artificial corresponde a los arcos discontinuos de la Figura 7.65. Tenga en cuenta que para la primera fase del
método, los arcos artificiales recibieron un costo unitario igual a 1, mientras que los arcos reales se cuantificaron
0.

(1)
(1)
b = –4
3

b 1= 3 1 dos 3
(0) b=2 (0)
dos
(1)

(0) (0)
7
(0) (0) (0) b=0
7

b=5 (1)
(0) 5 (0)
b 4= –2 4 5 6

b=
6
–4
(1)
(1)

FIGURA 7.65 Primera fase del problema.

4 Procedimiento de mejora de la solución actual.


Continuaremos con nuestro ejemplo considerando la primera fase ya completada. El paso relativo al
costos reducidos - se puede realizar el cálculo de z ij - c ij - asociado con variables no básicas
como hemos visto antes, de dos formas:

Cálculo de z ij - c ij basado en las variables primarias :

En este caso, el valor de z ij - c ij se puede obtener directamente de la suma del arco no básico. Cuando
el árbol formado por los arcos en la base que recibe la adición del nuevo arco dejará de ser un gráfico sin ciclos.

Página 331

FLUJOS DE RED Y LOGÍSTICA DE DISTRIBUCIÓN 325

clos. En el ciclo formado y considerando la dirección del arco agregado al árbol como negativa,
calcularemos todos los costos de los arcos en la dirección opuesta al nuevo arco y restaremos los del mismo
del. Para el caso del ejemplo numérico calcularemos los costos reducidos de los arcos 2-6 y 1-2, arcos no

https://translate.googleusercontent.com/translate_f 275/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
básico.
z 26 - c 26 = –4 - 1 + 3 = –2 como podemos ver en la Figura 7.66:

b 1= 3 b= 2
dos
b=
3
- 4
(3)
1 dos 3
(Artificial)
(-)

(4) (1)
(5)

4 5 6
(dos) (dos)

b 4= - dos b=
5 5 b=
6
- 4

FIGURA 7.66 Cálculo de z 26 - c 26 .

z 12 - c 12 = –2 - 3 + 1 + 2 + 2 + 5 = +5, como se muestra en la Figura 7.67.

b 1= 3 b=2 b = –4
dos 3
(dos) (3)
1 dos 3
(Artificial)

(-)
(5) (1)

4 5 6
(dos) (dos)

b 4= –2 b=5 b = –4
5 6

FIGURA 7.67 Cálculo de z 12 - c 12 .

Cálculo de z ij - c ij basado en variables duales :

Lo sabemos:

z ij - c ij = wa ij - c ij
= W ( e i - e j ) - c ij
= w yo - w j - c ij

Por otro lado, podemos calcular la variable dual w por su definición, es decir:

wB = c B

Para el ejemplo numérico, podemos calcular e z 26 - c 26 y z 12 - c 12 usando las siguientes ecuaciones:

z 26 - do 26 = w 2 - w 6 - do 26
z 12 - do 12 = w 1 - w 2 - do 12

Página 332

326 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

y el vector w en el ejemplo se puede calcular usando su ecuación primaria:

⎡ 1 0 0 0 00 ⎤
⎢ -1 1 0 0 00 ⎥
0 -1 1 0 00
[ w 1w 4w 5w 6w 2w 3 ] ⎢ ⎥ = [5 2 2 1 3 0]
0 0 -1 1 00
⎢ ⎥
0 0 0 0 10
⎢⎣ 0 0 0 -1 -11 ⎥⎦

que produce:

w1-w4=5
w4-w5=2
w5-w6=2
w6-w3=1
w2-w3=3
w3=0

https://translate.googleusercontent.com/translate_f 276/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

Y finalmente: w 1 = 10, w 2 = 3, w 3 = 0, w 4 = 5, w 5 = 3 y w 6 = 1. Lo que conduce a:

z 26 - do 26 = w 2 - w 6 - do 26 = 3 - 1 - 4 = –2
z 12 - do 12 = w 1 - w 2 - do 12 = 10 - 3 - 2 = 5

Dado que hay un arco ( i, j ) tal que z ij - c ij ³ 0, la base actual no es óptima. Como es el mayor costo
reducida (se pide al lector que marque las demás) la variable x 12 debe entrar en la base. Con la entrada
a X 12 , se forma un bucle en el árbol de inducido L . Para que se forme una nueva base es necesario
que uno de los arcos del ciclo se elimina y se crea un nuevo árbol. El criterio de retirada
El arco se asociará con el crecimiento en el flujo del arco entrante. Llamando el valor de flujo por D
arco que entra en la base, a medida que D crece, el flujo en los arcos opuestos a la dirección disminuirá en la
mismo valor. La figura 7.68 muestra el efecto del crecimiento de D. El primer arco que cancela el flujo es el
arco 4-5 y D = 1. La variable x 45 debe salir de la base.

3 dos

Δ 2+Δ
4
1 dos 3
(Artificial)

Sentido 2-Δ
3-Δ
Negativo

4 5 6
1-Δ 6-Δ

dos 5 4

FIGURA 7.68 Identificación de la variable que sale de la base.

Desde la entrada en la base de una nueva variable, el flujo se actualiza como se muestra en la Figura
7.68, llegando a la solución : x 14 = 2, x 12 = 1, x 56 = 5, x 63 = 1, x 23 = 3 yx a = 0, que es una circulación viable,
como se indica en la Figura 7.69, a un costo de 32 unidades.
El algoritmo recalcula los valores de z ij - c ij . En este caso, z 24 - c 24 = –2 - 1 + 5 = 2. La variable x 2 4 es una candidata.
para entrar en la base. El ciclo que se forma se muestra en la figura 7.70. En este caso, D = 2 y la variable

Página 333

FLUJOS DE RED Y LOGÍSTICA DE DISTRIBUCIÓN 327

3 dos

1 3 4
1 dos 3
(Artificial)

dos 1

4 5 6
5

dos 5 4

FIGURA 7.69 Identificación de la variable que sale de la base.

x 14 sale de la base. El flujo en el arco 1-4 se cancela (la variable se vuelve no básica). La solución para el flujo
se convierte en: x 24 = 2, x 12 = 3, x 56 = 5, x 63 = 1, x 23 = 3 yx a = 0, a un costo de 28 unidades. En ese momento, todos
dos z ij - c ij £ 0 y el flujo es excelente.

3 dos
3
1 3 4
1 dos 3
(Artificial)

20 1

4 5 6
5

https://translate.googleusercontent.com/translate_f 277/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

dos 5 4

FIGURA 7.70 Ciclo formado al ingresar x 24 en la base.

7.5 - PROBLEMAS PROPUESTOS

1 - Consolidación de conceptos básicos J


Considere la red definida por la siguiente tabla:

# En el Oferta Demanda # Arco En por Costo unitario de flujo Capacidad de arco

1 12 1 1 1 1 0 4

dos 10 0 dos 1 3 3 3

3 5 0 3 dos 5 1 8

4 1 11 4 dos 4 6 8

5 0 3 5 3 4 5 10

6 3 5 4 12

7 5 4 1 15

Página 334

328 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

1. Construya esquemáticamente la red definida en la tabla, indicando una solución viable para un
flujo y su costo.
2. Determine la matriz de incidencia (nodo ´ borde) asociada a la red.
3. Crear un punto de demanda ficticia, con los respectivos arcos asociados, de tal forma que la oferta
total es igual a la demanda total, construyendo el esquema gráfico de la red así formada.
4. Reformule el problema de flujo para que haya un solo punto de oferta y un solo
punto de demanda.

2 - Flujo máximo K
Teniendo en cuenta la siguiente red, calcular el flujo más grande posible entre los vértices s y t usando:

1. Algoritmo de Ford-Fulkerson.

2. Algoritmo MPM.

s (1, 4) 4 (0, 4) 5 (0, 8) 6

(3, 8) (0, 5) (2, 3) (0,11) (0, 9) (1, 4)

1 (0, 5) 3 (1, 3) 8 (0, 6) 7

(0,11) (0, 5) (0, 5) (2, 3)

(0, 5) (1, 3) 9 (0,11) 10 (0,12) 11

(0, 5)
(0, 5)

dos (0, 5) 12

(0, 3) (0, 8) (0, 8)

13 (2, 8) T

3 - El problema de los ventiladores del Coringas Futebol Clube


K
Un gran número de fanáticos del Coringas, un equipo de fútbol, vive en São Paulo y
quiere asistir a un partido clave de su equipo que se disputará en Natal, Rio Grande do Norte. los
fanáticos, todos trabajadores ocupados, quieren irse el día del juego, llegando a Natal como mucho,
a las 19:00 (la salida será a las 21:30). Como la disponibilidad financiera de estas personas es limitada,
están optando por el vuelo más barato, incluso si eso significa más retrasos, conexiones, viajes

https://translate.googleusercontent.com/translate_f 278/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
circuitos aéreos, etc. La empresa elegida fue Manysteps Airlines. El tablero de vuelo de la empresa
se muestra a continuación.
Decidieron reunirse para comprar sus boletos en asociación con 150 fanáticos, y
Manysteps 50% de descuento en tramos (también llamados tramos de vuelo) que pasan por Brasil
leer (llegar o salir de la ciudad). Sabiendo que la afición se repartirá el gasto de los 150 pases
de manera uniforme, independientemente del esquema de vuelo que se ajuste a cada uno, formular el programa
problema de minimizar los gastos totales de desplazamiento del grupo de aficionados. Un esquema de vuelo
entre São Paulo y Natal es válido si, además de llegar antes de las 19:00:

Página 335

FLUJOS DE RED Y LOGÍSTICA DE DISTRIBUCIÓN 329

1. No tenga más de cinco piernas (o tramos entre ciudades).

2. Los tiempos de conexión programados (cambios de vuelo) no pueden ser inferiores a una hora.
Por ejemplo: no podemos componer el vuelo 501, que llega a Recife a las 17:00, con el vuelo 595 que
sale hacia Natal a las 17:30, porque el tiempo de conexión sería de solo 30 minutos.

Los vuelos tienen una capacidad de 200 asientos y los boletos reservados ya no se pueden vender
al grupo de fans.

Vuelo # Fuente Destino Salida Llegada Costo normal U $ Reservas ü

501 San Pablo Goiania 8 en punto 10:00 a.m 120,00 120


Goiania salvador 11:00 13:40 120,00 70
salvador Recife 15:50 17:00 100,00 80
Recife Navidad 18:00 18:45 80,00 100

513 San Pablo Brasilia 9 am 10:50 50,00 180


Brasilia Fortaleza 11:45 15:00 180,00 20
Fortaleza Recife 15:50 16:20 100,00 25

581 Curitiba Manaus 06:50 10:20 320,00 180


Manaus Belem 10:50 12:00 pm 100,00 20
Belem Fortaleza 12:50 14:20 100,00 35

587 Rio de Janeiro San Pablo 6:00 7:50 80,00 160


San Pablo Maceio 08:30 11:00 180,00 100
Maceio Recife 12:00 pm 1 pm 80,00 120
Recife Navidad 15:00 15:45 80,00 10

590 Puerto Alegre Curitiba 6:00 7:30 100,00 100


Curitiba Brasilia 10:00 a.m 11:45 150,00 140
Brasilia Recife 2 pm 16:30 150,00 120

592 Brasilia Maceio 12:00 pm 2:30 pm 100,00 180

593 Rio de Janeiro Brasilia 9 am 09:45 100,00 110

594 Rio de Janeiro victoria 05:00 6:00 100,00 130


victoria salvador 08:30 09:45 80,00 20
salvador Maceio 10:45 11:45 80,00 100
Maceio Navidad 16:45 18:00 100,00 50

595 Recife Navidad 17:30 6:15 pm 50,00 120

4 - El problema de transportar la producción de soja K


La producción de soja en Rio Grande do Sul se realiza principalmente en las regiones de Passo Fundo y Cruz
Alto, alcanzando valores del orden de 24 y 36 cientos de miles de toneladas al año. Podemos considerar
que prácticamente toda la producción se exporta por el puerto de Rio Grande, en forma de petróleo
de salvado y aceite. Las principales unidades de procesamiento están instaladas en el área de Porto Alegre o cerca
cerca del puerto de Rio Grande, con capacidades anuales de 50 y 16 cientos de miles de toneladas.
Las ciudades de Passo Fundo y Cruz Alta están distantes de Porto Alegre por, respectivamente, 240 y
360 kilómetros. Estas tres ciudades están, a su vez, a 600, 500 y 300 kilómetros de Río Grande.
metros, respectivamente. Todo el transporte entre Porto Alegre y Rio Grande es realizado por
capacidad de las vías navegables, limitada a 50 cientos de miles de toneladas por año; las otras llamadas
se realizan por transporte por carretera, a un costo por kilómetro dos veces mayor que el de la vía navegable.
Río. Suponiendo que el costo del transporte por carretera es directamente proporcional a la distancia (un
unidad monetaria por kilómetro) y que el precio del producto embarcado en el puerto es de 300,
las siguientes preguntas:

https://translate.googleusercontent.com/translate_f 279/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

Página 336

330 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

1. Formule el problema de programación lineal que calcula los flujos de exportación a un costo mínimo.
2. Muestre que este problema puede clasificarse como un problema de flujo en redes capaces.
3. Determine la solución óptima al problema (por cualquier método).
4. ¿Cuáles serán los precios que recibirán los productores de soja en las diferentes regiones productivas?

5 - El problema de la amistad J
Un grupo de discusión de Internet está interesado en formar pares para discutir temas de interés.
interes mutuo. Para cada individuo i se conoce el conjunto de n i personas que son compatibles,
n i = {1, ..., m }.
1. Formule el problema de maximizar la formación de pares compatibles mediante un modelo de
fluir en redes.
2. Qué cambiaría en el modelo anterior si, además de la compatibilidad, se necesitaran pares
fueron formados por un hombre y una mujer?

6 - El problema de ampliar una red de comunicaciones K


La red representada en la figura siguiente define el tráfico de mensajes entre las estaciones 1 y 2 (lado
izquierda de la red), y las estaciones 5, 6 y 7. El tráfico se realiza mediante el conmutador ubicado en el
vértices 3 y 4. La red actual tiene una cierta capacidad de tráfico t ij entre los vértices i y j .

1 3

dos 4

Red de comunicacion

Un plan de expansión prevé la posibilidad de que la capacidad de los arcos de comunicación sea
extendido y que los nodos de conmutación también pueden procesar un mayor número de mensajes.
Los costos unitarios c ij son conocidos por la expansión de los arcos que conectan los vértices y
ciervo. Los costos del aumento unitario del flujo en un cierto
cambiando v j , j = 3, 4. Sabiendo que la demanda esperada entre los vértices i y j será f ij , formule el
problema de encontrar la expansión que minimice el costo de operación de la red.

Página 337

https://translate.googleusercontent.com/translate_f 280/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

8
TELLER VIAJERO

PROBLEMA DEL
8.1 - INTRODUCCIÓN
8.1.1 - Los orígenes del problema
El problema del viajante de comercio (PCV) es uno de los problemas más tradicionales y conocidos de
explicación matemática (Melamed [1990] y Campello y Maculan [1994]). Los problemas de enrutamiento tratan en
mayormente con tours o tours bajo demanda o puntos de suministro. Estos puntos se pueden representar
ciudades, puestos de trabajo o estaciones de servicio, almacenes, etc. Entre los tipos de tours uno de
el más importante es el llamado hamiltoniano. Su nombre se debe a Willian Rowan Hamilton quien, en
1857, propuso un juego que llamó La vuelta al mundo . El juego se hizo en un dodecaedro en el que cada
El vértice se asoció con una ciudad importante en ese momento. El desafío fue encontrar una ruta
a través de los vértices del dodecaedro que comenzaba y terminaba en la misma ciudad sin repetir jamás
Una visita. El gráfico del problema se muestra en la Figura 8.1.

FIGURA 8.1 Juego de Hamilton.

Una solución al juego de Hamilton, en su honor, ha llegado a llamarse Hamilto-


niano. Hamilton no fue el primero en proponer este problema (Biggs et al. [1986]), pero su juego lo publicitó
gou. Una de las soluciones del juego se muestra en la Figura 8.2.
En la actualidad, la primera mención conocida del problema se debe a Hassler Whitney en 1934.
en un trabajo en la Universidad de Princeton. Independientemente del trabajo de Hamilton, el problema de las caídas
viajero (PCV) es un problema de optimización asociado con la determinación de

Página 338

332 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

FIGURA 8.2 Una solución al juego de Hamilton.

tonianos en cualquier gráfico. El objetivo del PCV es encontrar, en un gráfico G = (N, A), la ruta
Miltonian de menor costo.

8.1.2 - Importancia actual de la PCV

https://translate.googleusercontent.com/translate_f 281/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
La importancia de la PCV se debe al menos a tres de sus características:

4 Gran aplicación práctica (Bellmore y Nemhauser [1968], Burkard [1979], Reinelt [1994]).

4 Una enorme relación con otros modelos (Laporte et al. [1996]).

4 Grandificultad para encontrar una solución exacta (Papadimitriou y Steiglitz [1982], Gould [1991] y Zhang
[1997]).

Por tanto, la importancia del modelo es indiscutible, tanto desde el punto de vista práctico como teórico.
Considerado intratable por Garey y Jonhson (1979), Karp (1975) lo clasifica como NP-arduo.

8.2 - FORMULACIONES Y APLICACIONES

8.2.1 - Formulaciones
Hay varias formulaciones para este problema. Por su importancia, presentaremos los más
fusionado. Estas formulaciones pueden considerarse canónicas, tanto por su amplia difusión en la literatura.
ratura especializada a medida que desarrollan formas peculiares de caracterizar el problema. por
un enfoque más específico Lawler et al. (1985) presentan un buen estudio introductorio.

• Formulación de Dantzig-Fulkerson-Johnson (DFJ)


Dantzig, Fulkerson y Johnson (1954) (véase Christofides et al. [1979]) formularon la PCV como un problema
programar el código 0-1 en un gráfico G = (N, A), como sigue:

norte norte

(PCV1) Minimizar z = ∑∑ cx
ij ij
j= 1 = 1
yo

sujeto a:
norte
∑ =x ij 1 "jÎN (8,1)
yo= 1

Página 339

PROBLEMA DE RECLAMO DEL VIAJERO 333

norte
∑ =x ij 1 "iÎN (8,2)
j= 1

∑ ≤Xij s - 1 "YÌN (8,3)


ij ,S ∈

x ij Î {0, 1} " i, j Î N (8,4)

Donde la variable binaria x ij asume un valor de 1, si se elige el arco ( i , j ) Î A para integrar la suma
solución, y 0 en caso contrario, y S es un subgrafo de G , donde | S | representa el número de vértices de este
subgrafo. En esta formulación asumimos implícitamente que x ii no existe y que tendremos n (n - 1)
restricciones de números enteros 0 - 1 y O (2 n ). Las restricciones (8.1) y (8.2) son similares al problema de diseño
nación, por lo que configuraciones como las que se muestran en la Figura 8.3 serían válidas. El conjunto de respuestas
(8.3) determina la eliminación de estos circuitos pre-hamiltonianos.
Las ecuaciones en | S | ilegalizar los circuitos pre-hamiltonianos. La figura 8.3 muestra que la respuesta
trición a | S | = 5 elimina los circuitos pre-hamiltonianos con cinco vértices de la siguiente manera:

x 15 + x 54 + x 49 + x 96 + x 61 £ 4
x 23 + x 3 10 + x 10 8 + x 72 + x 87 £ 4

Para cada circuito pre-hamiltoniano posible, es necesaria una restricción de tipo (8.3), que justifique
por tanto, se aplica el número de restricciones de O (2 n ).
Esta formulación destaca un aspecto importante de la PCV que es su naturaleza combinatoria. Para el
Está claro que resolver una PCV es determinar una determinada permutación legal de costo mínimo.
La formulación de Dantzig también ayuda a comprender la conexión de PCV con
secuenciación de operaciones, tan común en la fabricación. Suponiendo que hay una cierta cantidad de
cada máquina para recibir una tarea, y que las tareas se pueden distribuir en múltiples
formas en el conjunto de máquinas existentes, el problema de encontrar una secuencia de operaciones
que minimiza el tiempo de preparación de la máquina y, por tanto, los costes laborales,
modelarse como un PCV.

• Formulación de Miller-Tucker-Zemlin

https://translate.googleusercontent.com/translate_f 282/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
Miller,
como seTucker y Zemlin
describe abajo: (1960) proponen una formulación para PCV llamada Folha de Cravo, según

dos dos
4 6 3 4 6 3

1 1

8
X 8
9 9

10 10
7 X 7

5 5

∑ x=
∑ ∑ ≤ 4
ij 5 x=
ij 5 X 5 –1
yo, j yo, j yo, j ij ≤⏐ ⏐

(a) solución ilegal (b) restricciones asociadas

FIGURA 8.3 Restricciones de cardinalidad para PCV.

Página 340

334 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

Denotaremos la ciudad 1 como la ciudad inicial o final o la ciudad local. El viajante debe visitar
las otras n - 1 ciudades exactamente una vez. Durante su viaje debe regresar a su ciudad de origen exactamente
mente t veces, incluido el regreso final, y no debe visitar más de p ciudades diferentes en un recorrido o
⎡ norte
- 1⎤
ciclo. La formulación requiere que Tennesse
- 1 , donde ⎡ ⎤a denota el número entero más pequeño mayor o igual que el valor
⎢⎢ PAGS ⎥⎥≤ ≤

valor de un , o techo de división, para asegurar la existencia de viajes viables. De esta forma, el PCV puede ser
modelado de la siguiente manera.

norte norte

(PCV2) Minimizar z = ∑∑ cx
ij ij
j= 1 = 1
yo

sujeto a:
norte
∑ Xyo1 = t (8,5)
yo= dos

norte

∑ x ji = 1 j = 2, ..., n (8,6)
= 1
yo

norte

∑ =x ji 1 i = 2, ..., n (8,7)
j= 1

u i - u j + px ij £ p - 1 2£i¹j£n (8,8)
u yo ³ 0 £2i£n (8,9)
x ij Î {0, 1} "i,jÎN (8,10)

El primer conjunto de restricciones (PCV2) garantiza que la ciudad de origen se visite exactamente t
veces. El arco ( i, j ) a través de la solución viable 0-1 de los primeros tres conjuntos de restricciones requiere la
conjunto de restricciones en p para convertirse en:

u yo - u j £ - 1

La formulación (PCV2) implica restricciones O ( n 2 ) en n 2 - 1 variables. Cuando t = 1 y p ³ n - 1 se mueve


su PCV.

• Formulación Fox-Gavish-Graves
Fox, Gavish y Graves (1980) formularon una generalización del PCV denominada dependiente del tiempo . En esto
formulación el costo de recorrer la ruta entre ciudades ij depende de la posición t del arco ( i, j ) en un
recorrido (o recorrido) de una ciudad de origen dada indexada por 1. Esta formulación fue originalmente
Fox, por el problema de la programación de n trabajos en 1 máquina . Las variables de decisión de este modelo z ij t
están triplemente indexados. z ijt = 1 si al arco i a j se le asigna la t -ésima posición del recorrido , z ijt = 0
de otra manera. Así tenemos:

norte norte norte

(PCV3) Minimizar z = ∑∑∑ czijt ijt

https://translate.googleusercontent.com/translate_f 283/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
yo
= 1 j= 1 t = 1

sujeto a:
norte norte norte
∑∑∑ z ijt = n (8,11)
= 1 j= 1 t = 1
yo

Página 341

PROBLEMA DE RECLAMO DEL VIAJERO 335

norte norte norte norte

∑∑ tz ijt - ∑∑ =tz ijt 1 i = 2, ..., n (8.12)


j= 1 t = dos j= 1 t= 1

z ijt Î {0, 1} " yo , j , t (8,13)

Las restricciones (8.11) o restricciones de agregación del problema de asignación tridimensional garantizan
que cada ciudad se visita exactamente una vez y que para cada puesto de recorrido hay un arco designado
del. El conjunto de restricciones (8.12) garantiza la eliminación de subtours .

• Formulación de Claus
Padberg y Sung (1988) presentan una importante formulación de la PCV debida a Claus, utilizando conceptos
flujos de red. Denotando por s el origen de la ciudad o fuente y girando todo hamiltoni- ciclo
año en un camino hamiltoniano, ya que también considera la ciudad de origen como destino t ,
interpretar el PCV como un problema de la determinación de un camino de Hamilton de s a t en el di-
gráfico G = ( V , E ), donde:

V = V 1 È { s , t }, V 1 = {1, ..., n } e

V = V * È { t } y E = {( i , j ), " i ¹ j Î V 1 } È {( s , i ), ( i , t )," i Î V 1 }.

Podemos interpretar la variable binaria x asociada con edge ( i , j ) como:


x ij = 1 si ( i , j ) pertenece a un camino hamiltoniano, 0 en caso contrario.

El flujo en la red involucra n + 1 comodidades. Claus define una variable auxiliar y ijk como el flujo de la
k -ésima conveniencia en el arco ( i , j ). Por tanto tenemos:

(PCV 4) Minimizar z = ∑ cxij ij


(,)ij ∈
E

sujeto a:
∑ Xij = ∑ XJi "iÎV1
j∈
V j∈
V

∑ yijk - ∑ =y jik 0 "iÎV1"kÎV*


j∈
V j ∈V

∑ y ikk = 1, ∑ y sik = 1 , ∑ y kik = 0 "kÎV*


yo yo yo

y ijk £ x ij " yo , j , k

x ij ³ 0 " yo , j

y ijk ³ 0 " yo , j , k

x ij , y ijk enteros " i , j , k

La formulación C implica un conjunto de restricciones del orden de n 3 y ( n 3 + n 2 + 3 n ) variables.

8.2.2 - Aplicaciones

El PCV, en sus diversas versiones, está presente en numerosos problemas prácticos. Sin extender
demasiado podemos destacar:

Página 342

https://translate.googleusercontent.com/translate_f 284/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
336 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

• Determinación del acceso a archivos computacionales (Henry-Labordere [1969]).


• Programación de asistencia social (Saskena [1970]).
• Manipulación de artículos en stock (Ratliff y Rosenthal [1981]).
• En la mayoría de los problemas de generación de rutas de vehículos (Bodin [1983] y Fagerholt barcos y
Christiansen [2000]).

• Programación del transporte entre celdas de fabricación (Finke y Kusiak [1985]).


• Programación de operaciones de máquinas en manufactura (Kusiak y Finke [1987]).
• Optimización del movimiento de herramientas de corte (Chauny et al. [1987]).
• Optimización de paletas en turbinas de gas (pante et al. [1987]).
• Análisis de estructuras cristalinas (Bland y Shallcross [1987]).
• Fabricación de chips VLSI (Korte [1988]).
• Optimización de la perforación de orificios en placas de circuito impreso (Reinelt [1989]).
• En la resolución de problemas de programación de tareas (Whitley [1991]).
• Trabajo administrativo (Laporte et al. [1996]).
• Ruta de entrega postal (Laporte et al. [1996]).
• En la resolución de problemas de programación y distribución de tareas en plantas (Salomon et al.
[1997]).

• Cortes de láminas de acero y vidrio (Hoeft y Palekar [1997]).


• Construcción de un árbol evolutivo y determinación de secuenciación genética (Korostensky y
Gonnet [2000]).

• Producción de acero (Tang et al. [2000]).


• Pruebas citológicas (Laporte y Palekar [2002]).
• Planificación de la producción (Ben-Arieh et al. [2003]).
• Planificación de sistemas nocturnos para la distribución de valores (Cordone y Calvo [2003]).

8.3 - PROBLEMAS RELACIONADOS

El PCV simétrico (PCVS)

Este caso particular de PCV es extremadamente importante, ya que representa muchas de las situaciones reales de
ment. Cuando la matriz de costos de PCV es simétrica, el problema se llama simétrico . Si c ik £ c ij + c jk ,
" i , j , k Î N el PCV satisface la llamada desigualdad triangular . Un PCV se llama euclidiano (PCVE)
cuando su matriz es simétrica y satisface la desigualdad triangular, característica de la métrica euclidiana.
Un caso especial de PCV simétrico es aquel en el que hay conjuntos de nodos que tienen restricciones.
condiciones que les obliguen a estar en una determinada secuencia de asistencia. Estos conjuntos de nodos
se llaman agrupaciones o grupos. El problema se conoce en la literatura como Sym-
Tric problema del viajante en racimos (SCTSP). El problema así definido tiene varias aplicaciones en
enrutamiento industrial y de vehículos (véase Jongens [1985]).

La PCV generalizada (PCVG)


Si, como su nombre indica, se trata de una generalización del PCV. Similar a (SCTSP) el problema es
sujeto a la agrupación de nodos, sólo, en este caso, para forzar una generalización en el Hamiltoniano-
en el. Cada grupo formado debe contribuir con un número de nodos al ciclo hamiltoniano del

Página 343

PROBLEMA DE RECLAMO DEL VIAJERO 337

empleado. Obviamente, cuando se visitan todos los nodos de los grupos, el problema radica en la
físico. Una versión de este problema, llamada igualdad, requiere que en cada conglomerado solo un vértice sea
visitó. Esta versión modela problemas de conexión en circuitos integrados donde los subcircuitos tienen
en varias posiciones de conexión posibles con el conjunto de placa. La figura 8.4 aclara la topología del
modelo que muestra una de las muchas alternativas de enrutamiento de cuatro tarjetas:
Otra aplicación del PCVG ocurre en el área de entrega de correspondencia administrativa y bancaria.

dos dos

3 3
11 15 11 15
8 8

https://translate.googleusercontent.com/translate_f 285/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
14 12 14 12

13 13

10 7 10 7

4 6 4 6
5 5

9 9
1 1

(a) Versión generalizada (b) Versión de igualdad

FIGURA 8.4 La PCV generalizada (PCVG).

risa. En este tipo de problemas siempre existe una red de estaciones de servicio (sucursales bancarias, sucursales,
etc.) donde un mensajero puede realizar una determinada actividad sin distinción. Suponer-
el problema es ejecutar r servicios en n estaciones posibles, n > r . Supongamos que cada tipo de servicio
El servicio se puede realizar indistintamente en un punto de los conjuntos homogéneos S r que dividen n , o
es decir, el mensajero debe pasar por al menos un punto perteneciente a cada conjunto S r para
realizar las tareas r . La solución PCVG a este problema es el ciclo hamiltoniano más corto
que visita un nodo en cada uno de los conjuntos de puntos S r donde n se divide. Laporte y col. (1996) presentó
Hay otras aplicaciones en tu trabajo.
Supongamos que el conjunto de nodos de G = ( N , A ) se divide en grupos disjuntos S 1 , S 2 , ..., S r ,
es decir, N = S 1 È S 2 È .... È S r . Sea R = {1, 2, ..., r } el conjunto de índices de los grupos. Asumiendo todavía
no hay arcos que conecten estos nodos, Noon y Bean (1991) presentan el siguiente modelo de
información completa para el PCVG:

(PCVG) Minimizar z = ∑ cxij ij


(,)ij ∈A

sujeto a:

∑∑ = 1 x ij (8,14)
yo∈SI j ∉SI

∑∑ = 1 x ij (8,15)
yo∉SI j ∈SI

∑ Xij - ∑ =X jk 0jN ∈ (8,16)


yo∈N k∈
N

∑ ∑ ∑ ∑ ≥1 X ij "R,£2|R|£r-2 (8,17)
IR∈ i SI JR∈ ∉ j ∈Sj

x ij Î {0, 1} (8,18)

Página 344

338 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

El PCV con Backhauls (PCVB)


Este problema puede considerarse un caso especial de (PCVG) en el que los nodos G están particionados.
en dos grupos llamados L (nodos linehauls ) y B (nodos backhauls ) (Kalan-
tari y col. [1985]). La matriz de costos del problema cumple con las condiciones del estándar euclidiano. Una ver-
del problema determina que se visiten inicialmente los nodos de L y, posteriormente, los nodos de L
B . La estrategia de esta versión es dar preferencia a la descarga de vehículos para después
Realizar la carga hacia el depósito (nodo inicial). La figura 8.5 ejemplifica el problema.
De hecho, este problema se puede reducir a PCV considerando convenientemente las sanciones.
gran mente entre los bordes que conectan los nodos L y B .

comienzo

4 4

7 7
8 5 8 5
L L
6 6
11 11
12 12

9 9
3 3
10 10

segundo segundo
1 1
dos dos

Una instancia de PCVB: conjuntos L y B Una solución para PCVB

https://translate.googleusercontent.com/translate_f 286/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

FIGURA 8.5 Ejemplo de una solución para PCVB.

El PCV con Windows of Time (PCVJT)


Si asociamos una variable t ij a cada arco del gráfico G = ( N , A ), que representa la duración del recorrido
entre los nodos i y j y supongamos que la matriz T = [ t ij ] satisface la desigualdad triangular, podemos
sugieren que la llegada a cada vértice de G puede estar asociada con un rango de valores para
módulo de tiempo dedicado a recorrer la ruta. De esta forma, el valor acumulado del tiempo de vestirse
debe estar entre un cierto intervalo de tiempo [ a i , b i ], llamado ventana de tiempo, para cada
vértice i ∈ N . Aún asociado a este tipo de problema con la restricción en los nodos, encontramos otros
variantes como PCVJT que incluyen restricciones de precedencia (PCVJT-RP). Restricciones de precaución
requieren que la llegada a ciertos vértices sea precedida por un cierto conjunto de otros
otras visitas. Considerando que el vértice x i es un vértice de backhaul , es decir, i Î B , (tiene una carga
depósito), típicamente los vértices x j , j Î L, representan un conjunto de precedencia.
Podemos considerar que tanto PCVB como PCVJT son casos particulares de PCVJT-RP.
Como los tiempos y costos en una ruta hamiltoniana suelen ser positivos y asociados
a G arcos , en algunas situaciones el PCV puede formularse de acuerdo con la minimización de
puntos de servicio. En este caso, el t ij también puede tener un impacto en el costo del viaje. El problema,
Por lo tanto, puede ser para minimizar el tiempo total de servicio, respetando los límites de la ventana de tiempo.
y gastos de viaje. Tal problema está constituido por PCVJT más restricciones de costos.

El PCV múltiple (PCVM)

Este problema consiste en obtener r recorridos , todos comenzando y terminando en un cierto vértice ( x 0 , por ejemplo
ejemplo) en G , normalmente asociado con r empleados, cuya suma total es mínima.

El PCV con cuello de botella o MinMax (PCV MinMax)

Este problema consiste en obtener un ciclo hamiltoniano tal que su borde más largo sea
mínimo. Burkard (1991) formaliza el problema. Es interesante notar que la solución PCV es un límite

Página 345

PROBLEMA DE RECLAMO DEL VIAJERO 339

menor para este problema de optimización. A pesar de ser un problema NP-arduo como el
anterior (Parker y Rardin [1984]) en varias situaciones puede admitir solución polinomial. Rebaba-
kard (1991) demostró que para el caso en que la matriz de costos de este problema C = [ c ij ] se puede descomponer
poner en un producto de dos vectores ( una i ) y ( b j ) de manera que en 1 £ a 2 £ .... £ un n y b 1 ³ b 2 ³ .... ³ b n , entonces el PCV
MinMax se puede resolver en O ( n 2 ), mientras que el PCV asociado sigue siendo NP-arduo.

El PCV con bonificación (PCV-B)

Este problema fue propuesto por Fischetti y Toth (1988) y también estudiado por Balas (1989). Asociar
Una bonificación del b i por cada vértice x i de un gráfico G = ( N , A ), PCV-B consiste en determinar un recorrido ha-
miltoniano de longitud mínima desde un vértice x 1 hasta un subconjunto S Í ( N \ { x 1 }) tal que el retorno
el total obtenido en bonificación en los vértices es al menos igual a un cierto valor p .
Consideremos que en el problema de la gráfica de la figura 8.6 (a), donde el vértice x 1 es el vértice 1,
se obtiene una bonificación mínima de 25 unidades y el subconjunto S de vértices de N tiene una cardinalidad igual a
6. El ciclo (c) sería una mejor solución que (b). Observamos que el ciclo hamiltoniano de (b) es menor que
el de (c) pero viola la condición de bonificación mínima. La solución 1-4-5-2-3-7-6-1 tiene una duración de ciclo
19 y bono 29, siendo la solución óptima. Observamos que la solución 1-6-7-3-2-5-4-1, que tiene un
19 y bonificación 30, es igualmente grande, ya que la condición de bonificación es solo restrictiva.

10 10 10

dos dos dos


dos 1 5 dos 1 5 dos 1 5
12 12 12
5 3 5 3 5 3
8 6 7 8 6 8 6
1
12 5 1 12 5 1 12 5 1
dos 3 3 dos 3
7 7 7
1 3 3 3
4 10 5 dos 6 4 10 5 dos 6 4 10 dos 6
6 6 6
5 5 5
3 4 4 3 4
1 1
1
9 5 5 9 5 5 9 5 5
5 5 5
4
1 1 1

(a) Gráfico G (b) Solución = 19; Bono = 24 (c) Solución = 20; Bono = 25

FIGURA 8.6 El PCV con bonificación.

La PCV selectiva (PCV-S)


Este problema fue estudiado por Laporte y Martello (1990). Como vimos en el ítem 3.7, el PCV-B usa el
bonificaciones como elemento restrictivo. Si la bonificación supera el límite mínimo, las soluciones con el mismo

https://translate.googleusercontent.com/translate_f 287/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
longitud pero con diferentes bonificaciones no son distintas. El PCV-S aborda la situación en la que, por
cierto subconjunto S Í ( N \ x 1 ), ahora queremos maximizar la bonificación, sujeto a la restricción de que la longitud
la duración del ciclo no supera un cierto valor r .
Considere que en el problema de la gráfica de la figura 8.7 (a), donde el vértice inicial x 1 corresponde
al nodo 1, y que no se requiere que la longitud del ciclo hamiltoniano sea superior a 25 unidades,
considerando | S | = 6. En el ejemplo de la Figura 8.7, los ciclos (b) y (c) son legales, pero el ciclo representado
La figura 8.7 (c) sería la solución buscada. Observamos que el ciclo hamiltoniano de (b) es menor que el
de (c), pero el criterio de optimización ahora se refiere a la bonificación.

El estocástico PCV
El PCV clásico considera que el ciclo hamiltoniano deseado, o el recorrido del secretario, se llevará a cabo en una gráfica
en el que los elementos constituyentes son deterministas. En el modelo estocástico, ventanas de tiempo,
vértices, tiempos y costos de aristas son elementos a los que podemos asociar distribuciones de
probabilidades que definirán su existencia o valor. Se han informado los siguientes casos
En literatura:

Página 346

340 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

10 10 10

dos dos dos


dos 1 5 dos 1 5 dos 5
12 12 12
5 5
3 3 3
8 6 7 8 6 8 6 7
1
5 1 5 1 5 1
12 3 12 3 12 3
dos dos
7 7 7
1 3 1 3 3
5
4 10 5 dos 6 4 10 5 6 4 10 6
6 6
5 5 5
3 4 4 3 4
1 1 1
1 1
1
9 5 9 9
5 5 5
5 5 5
4
1 1 1

(a) Gráfico G (b) Solución = 24; Bono = 26 (c) Solución = 25; Bono = 33

FIGURA 8.7 El PCV selectivo.

4 PCV con clientes estocásticos (PCV-CE)

En esta versión, el gráfico G = ( N , A ) tiene sus vértices ocupados por los clientes x i , i Î N según una probabilidad
p i . Por tanto, el modelo considera el caso en el que existe la posibilidad de que un vértice de G no exija una
visitar. El enfoque para mostrar un recorrido legal dentro de este modelo generalmente incluye dos pasos:

• Paso 1: muestra un recorrido por todos los vértices de G = (N , A) .


• Paso 2: formar un recorrido legal eliminando vértices no exigentes.
Este problema fue introducido por Jaillet (1985) quien demostró que la solución determinista puede
arbitrariamente malo para PCV-CE.

4 PCV con tiempo de viaje estocástico (PCV-TE)


En el llamado PCV-TE los coeficientes de costo c ij representan el tiempo de viaje entre los vértices ij y
son variables aleatorias. Los autores que han abordado este problema hasta ahora lo han hecho tratando de
determinar una solución a priori tal que la probabilidad de completar el recorrido , dentro de un período dado,
maximizado. Hasta el momento de la edición de este trabajo, la literatura no reporta, por lo general
medios de área, un modelo matemático para el problema. Kao (1978) es uno de los primeros
otros trabajos que proponen soluciones a este problema.

4 PCV múltiple con tiempo de viaje estocástico (PCV-MTE)


Esta es la versión múltiple de PCV-TE. En este caso, todas las rutas comienzan y terminan en el mismo nodo
(que obviamente representa un asiento para el secretario). El número de empleados (o vehículos) es una variable
decisión que tiene costos fijos asociados. Las obras que abordaron el tema impuesto
un límite de tiempo para la duración de los ciclos para cada empleado (una duración máxima para el ciclo),
ver Gendreau et al. (1996).

Suma mínima máxima-mínima de PCV (PCV-M 3 S)


Este caso corresponde al objetivo Min Max-Min Sum para la función de optimización PCV. Los problemas
pero los llamados cuellos de botella o cuellos de botella son tradicionales en el contexto de la optimización porque están asociados
diversas situaciones prácticas que implican el desplazamiento de instalaciones. Min Max-Min Sum es
una composición del clásico problema del cuello de botella, en el que la función objetivo a minimizar es la
Suma algebraica de las funciones objetivas de los problemas mencionados. Se les dan p elementos de una con-
juntos E = { e 1 , e 2 , ..., y p } y F Ì P ( E ), donde P ( E ) es el conjunto de alimentación de E , una familia finita de subconjuntos
elementos E perfectamente definidos. Las instancias de F pueden ser, por ejemplo, los subárboles de un gráfico,

https://translate.googleusercontent.com/translate_f 288/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
caminos que unen dos vértices de un gráfico o conjuntos de bordes no adyacentes de una coincidencia
máximo. Cada elemento e i , i = 1, 2, ..., p están asociados con dos números reales, uno representado por c i o
costo, y otro por p i o peso.

Página 347

PROBLEMA DE RECLAMO DEL VIAJERO 341

Dado que S Î F , donde F es el conjunto de soluciones viables a un determinado problema, la función se define:

Z ( S ) = Máx. { p i } + ∑ c yo
y 1∈ s
oye∈S

El problema de optimización Min Max-Min Sum se puede formular de la siguiente manera (M 3 S1) :

Min ZS ()
SF∈
Uno de los primeros trabajos que aborda un problema de optimización combinatoria bicriteraria en
El formato M 3 S fue informado por Hansen (1980) para el problema de la ruta más corta. Se informó OM 3 S
visto por primera vez como un problema distinto en el trabajo de Minoux (Minoux [1986]), apareciendo
como un subproblema del problema de descomposición de la matriz relacionado con la asignación óptima de
tráfico de comunicaciones en satélites. Posteriormente, el problema se asoció, entre otros, con
problemas de coloración de aristas en gráficas valoradas y partición de vértices y aristas (Minoux
[1987]). Martello y col. (1984) presenta un problema similar al M 3 S en el contexto de la asignación equilibrada
da. Berman, Einav y Handler (1990) abordan un problema de bicriterio con dos medidas de desempeño
que podrían modelarse como en M 3 S, pero que, en el estudio, se tratan por separado, un
problema como la restricción del otro. Casos de bicriterios similares se resuelven a través de superficies.
cias de Pareto en las obras de Braham (1966) y Frisch (1966). OM 3 S1 se puede formular en un
equivalente como se expresa a continuación que llamaremos (M 3 S2):

⎧ ⎧ ⎫⎫
Min ⎨PAGSk
+ Min ⎨ ∑ C ⎬⎬
yo
s ∈ F ⎩y ∈S ⎭⎭
1≤ ≤ kp k
⎩ yo

De modo que resolver M 3 S puede ser equivalente a resolver una secuencia del subproblema p
pero Min_Sum. El algoritmo de Minoux 1989 se basa exactamente en la formulación M 3 S2.
En el contexto de aplicaciones prácticas, el PCV-M 3 S puede modelar situaciones de enrutamiento entre celdas
instalaciones de producción donde el empleado representa un dispositivo de transporte y el movimiento de productos
entre celdas causan un impacto en el tamaño de las filas dentro de cada celda.

El PCV periódico (PCV-P)

El Problema del Vendedor Viajero Periódico (PCV-P) consiste en programar una visita diaria del
ro en un horizonte de planificación m días para visitar al menos una vez una de las n ciudades
un conjunto I = {1 ,…, i,… n }, considerando que el empleado regresa a su ciudad
diario. El objetivo del problema es minimizar la distancia total recorrida en los m días del horizonte
de planificación. Las ciudades se pueden visitar más de una vez en un período de m días, sin embargo
sólo una vez al día. No se permite un viaje diario vacío, no hay visitas. El PCV-P fue el primero
descrito por primera vez en el trabajo de Palleta (1992).

El PCV con colección (PCV-C)

Considerando que el vehículo del viajante tiene cierta capacidad y que el vendedor
debe entregar y recoger productos de sus clientes. Considerando que los productos recolectados pueden
puede ser entregado a otros clientes en ruta, el PCV con Recolección (PCV-C) consiste en programar un
proyecto que, satisfaciendo toda la demanda y oferta de los clientes dentro de la capacidad del vehículo, minimiza
la distancia recorrida. Los primeros trabajos sobre el tema se deben a Anily y Mosheiov (1994), y
Mosheiov (1994) quien describe una aplicación al transporte escolar. La variante actual tiene muchos
puntos en común con el problema de enrutamiento de Recolecciones y Entregas .

Página 348

342 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

https://translate.googleusercontent.com/translate_f 289/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
PCV con recompletación (PCV-R)
Mientras que los pesos enteros positivos w i se asignan a los nodos de un multigrafo dirigido G =
( N , A ) y que el peso de la trayectoria p es la suma de los pesos de los nodos a lo largo de p . Un subconjunto de los arcos es
llamado arcos recompletación ( recarga ) se observa para B Í A . Los otros arcos, denotados por
C = A \ B, se llaman ordinarios ( comunes ). Se dice que un camino es inviable si su peso excede uno
cierto límite de peso constante y si no contiene arcos de repleción; de lo contrario, es
viable. Una ruta es mínimamente inviable si todas sus subrutas son viables.
El problema del viajante de comercio con la reconstrucción de arcos denotado por (PCV-R) es encontrar un recorrido por
costo mínimo, es decir, un ciclo hamiltoniano dirigido, que no contiene subtrayectos no viables. En eso
contexto tiene sentido permitir la posibilidad de la existencia de dos arcos paralelos entre nosotros, uno es un
reconstruyendo el arco y el otro un arco ordinario, por lo que el arco ordinario tiene un costo menor.

La matriz circulante PCV (PCV-MC)


Este es el problema del Viajero Viajero en una gráfica cuya matriz de distancias está circulando (Kalman
y White [2001]). La complejidad de PCV-MC es un problema abierto. El primer trabajo
el tema se debe a Fink (1987). Yang y col. (1995) también aborda la solución a este problema.

La PCV selectiva euclidiana (PCV-E)


Considerando n ciudades ubicadas en el plano euclidiano, el PCV-E consiste en encontrar el menor
Carretera cerrada que visita todas las ciudades exactamente una vez.

El PCV de máxima propagación (PCV-ME)


Se trata de determinar en una gráfica ponderada y completa una trayectoria hamiltoniana en la que
se maximiza la longitud del borde más pequeño. Problema descrito en Arkin et al. (1997).

La PCV m-peripatética (PCV-mP)


Se trata de determinar en un grafo ponderado m ciclos hamiltonianos disyuntivos en arista para
Minimizar el costo acumulado de todos los ciclos. El problema se describió por primera vez en Krarup
(1975). De Kort (1991) presenta un límite inferior para el problema e informa sobre una rama
y unido a la solución (PCV-2p) en De Kort (1993). Duchenne y col. (2003) propone un algoritmo
ramificar y cortar para resolver el problema.

El PCV con objetivos móviles


Dado un conjunto S = { s 1 , s 2 , ..., s n } de s i objetivos móviles con velocidad constante v i y posición inicial p i , el pro-
El problema consiste en determinar una trayectoria que comienza y termina en una posición con velocidad V > | v yo
|, yo = 1, 2, ..., n . e interceptar todos los objetivos. El problema se describe por primera vez en Helvig et al. (2003).

PCV con desviación mínima


Este es un problema definido en el plano euclidiano. El objetivo es encontrar un camino que sea
rectas que pasan por un conjunto de puntos distribuidos en R 2 con el fin de minimizar el número de
número de líneas necesarias. El problema se describe en Stein y Wagner (2000).

El PCV en línea
Esta es la versión en línea del PCV, es decir, cuando se cambian los datos de entrada del problema
durante todo el proceso de solución.

Página 349

PROBLEMA DE RECLAMO DEL VIAJERO 343

El PCV remoto

Dado un gráfico completo y ponderado G = ( N , A ) y un número entero k , el problema es determinar un


subconjunto de nodos de cardinalidad k tal que el costo del PCV más bajo en el gráfico formado por los subconjuntos
los nodos seleccionados se maximizan. Problema abordado por Halldórsson et al. (1995).

La latencia mínima / máxima PCV


Dado un gráfico no dirigido G = ( N , A ) y cuyo peso de borde i es w i . Para un camino dado de com-
longitud P en G la latencia L j del j - ésimo vértice de la ruta está dada por la suma de todos los bordes de la ruta
a ese vértice:
j

Lj = ∑ w yo
yo= 1

https://translate.googleusercontent.com/translate_f 290/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

El PCV de latencia máxima es el circuito hamiltoniano en G cuya latencia acumulada en todos


los vértices se maximizan. Chalasani y Motwani (1999) abordan el problema. Giro Sarubbi
(2004) propone una formulación de flujos multiproducto para el problema de la latencia mínima.

PCV con costos dependientes del tiempo


La presente variante es un caso particular de PCV dinámico donde los costos de los bordes varían con el tiempo.
pasar el tiempo. Uno de los primeros trabajos sobre el tema se debe a Picard y Queyranne (1978). Brondén et al.
(2004) estudian un caso en el que el número de arcos con coste dependiente es limitado y proponen varios
algoritmos de solución heurística.

PCV con requisitos de separación


El problema es determinar un circuito hamiltoniano de costo mínimo que cumpla uno o
más de las siguientes restricciones:

• Restricciones de inclusión, para que se visite un determinado nodo i (mínimo / máximo / exacto
m ) nodos (antes o después) de un determinado nodo j.

• Restricciones de exclusión, para que no se visite un determinado nodo i (al menos / como máximo)
mes / exactamente) m nodos (antes o después) de un cierto nodo j.
La presente variante es descrita por Balas et al. (1995), y se propone una reformulación del problema
por Wang y Regan (2002).

El PCV Bipartito
El problema es determinar un circuito hamiltoniano de costo mínimo en una gráfica ponderada.
tiene n nodos rojos y n nodos azules, de modo que el circuito comienza en un nodo azul y los nodos viven
Los más pequeños del circuito siempre tienen colores diferentes. El problema se define en Chalasani et
Alabama. (1996) junto con algoritmos heurísticos para el problema.

8.4 - MÉTODOS Y ALGORITMOS DE SOLUCIÓN

8.4.1 - Una descripción general


La literatura que aborda la solución PCV en sus diversas versiones es una de las más ricas dentro del
investigación Operativa. Las tablas 8.1 a 8.5, sin ninguna intención de agotar el tema, organizan la
Obras principales en vista panorámica. Desde el trabajo de Bellmore y Nemhauser (1968),
Se han publicado varias compilaciones sobre PCV en la literatura. Recientemente, el trabajo de
Miller y Pekny (1991).

Página 350

344 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

TABLA 8.1 OBRAS PARA PCV CLÁSICO - SOLUCIÓN EXACTA

Problema Año Investigador Trabajo

Enfoques exactos

1954 Dantzig y col . Trabajo de referencia para PCV

1972 Christofides y Eilon Métodos exactos

1973 Laporte y Norbert Métodos exactos

1980 Carpaneto y Toth Criterios para los algoritmos B&B

1980 Crowder y Padberg cama y desayuno

1981 Bullets y Christofides Restricciones lagrangianas para PCV


Problema
1985 Fleischmann Algoritmo usando planes de corte
del secretario
Viajero 1991 Miller y Pekny Métodos exactos
(PCV)
1992 Gendreau y col. Procedimientos posteriores a la optimización

1995 Jünger y col. Relajaciones y B & Cut

1998 Applegate y col. B & Cut

2000 Jünger y col. Cortés

2001 Applegate y col. Cortés

2002 Focacci y col. Relajación en las limitaciones globales

2004 Marcotte y col. Programación multinivel

TABLA 8.2 ALGORITMOS HEURÍSTICOS PARA PCV CLÁSICA

Problema Año Investigador Trabajo

https://translate.googleusercontent.com/translate_f 291/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
1973 Lin y Kernighan Métodos heurísticos

1980 Golden et al . Varias heurísticas

Kanellakis y
1980 Busqueda local
Papadimitriou

1983 Adrabinski Experimentos comp para heurística

1985 Goldberg y Lingle Algoritmos genéticos

1985 Grefenstette y col . Algoritmos genéticos

1985 Cerny Métodos termodinámicos (Sí. Annel.)

1987 Laarhoven y Aarts Métodos termodinámicos (Sí. Annel.)

1988 Rebaba Métodos elásticos


Problema
1988 Angeniol y col . Mapa de autoorganización
del secretario
Viajero 1990 Johnson Optimización local
(PCV)
1990 Fiechter Búsqueda tabú paralela

1991 Ulder Algoritmos genéticos

1991 Whitley Algoritmos genéticos

1991 Glover Búsqueda tabú

1991 Xu y Tsai Redes neuronales

1992 Gendreau y col . Procedimientos posteriores a la optimización

1993 Reeves Métodos aproximados

1993 Potvin Redes neuronales

1994 Chandra y col. Procedimiento K-óptimo

1994 Valenzuela y Jones División y conquista y genética

Página 351

PROBLEMA DE RECLAMO DEL VIAJERO 345

TABLA 8.2 CONTINUACIÓN

Problema Año Investigador Trabajo

1994 Fiechter Búsqueda tabú paralela

1995 Jünger y col. Relajaciones y B & Cut

1995 Potts y Van de Velde Heurísticas híbridas de sustitución k

1995 Vakhutinsky y Golden Enfoque elástico

1996 Chatterjee y col. Algoritmos genéticos

1996 Potvin Algoritmos genéticos

1996 Cesari Estrategia de división y conquista para heurista

1997 Somhom y col . Redes neuronales / modelo autoorganizado

1997 Dorigo y Gambardella Colonias de hormigas

1998 Tsubakitani y Evans Búsqueda tabú

1999 Voudouris y Tsang Busqueda local

Problema 1999 Gutin y Yeo Barrios de búsqueda locales


del secretario
1999 Shin y col. Programación molecular
Viajero
(PCV) 1999 Coy y col. Suavizar heurísticas

1999 Okano Heurística constructiva

1999 Aras y col. Red de Kohonen con información estadística

1999 del Castillo Enfoque continuo

2000 Charon y Hudry Método de ruido

2000 Helsgaun Implementación eficiente Lin-Kernighan

2001 Munehisa y col. Actualización de la red / cooperativa de Hopfield

2001 Zeng y Martinez Reprogramación / Red Hopfield

2002 Ugajin Método de difusión inversa

2003 Eppstein PCV en gráficas cúbicas

2003 Li. Y Gong Colonia de hormigas

2003 Applegate y col. Heurística encadenada de Lin-Kernighan

TABLA 8.3 OBRAS DE REVISIÓN DE LITERATURA

Problema Año Investigador Trabajo

Revisión y análisis bibliográfico

1977 Rosenkrantz y col. Revisión de enfoques heurísticos

https://translate.googleusercontent.com/translate_f 292/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
1985 Lawler y col. Revisión del estado del arte - texto
1990 Melamed y col. Revisión del estado del arte

1992 Laporte Revisión del estado del arte

1994 Bianco y col. Revisión del estado del arte


Problema
del secretario 1994 Reinelt Estudio computacional
Viajero 1995 Juenger y col. Revisión del estado del arte - texto
(PCV)
1998 Burkard y col. Casos especiales de solución eficiente

1999 Larrañaga et al. Algoritmos genéticos para PCV

2001 Bullets y Simonetti Estudio algorítmico

2002 Johnson y McGeoch Análisis experimental para PCVS

2002 Punnen y Kabadi Análisis de dominancia entre heurísticas

2002 Johnson y col. Análisis experimental para PCVAS

Página 352

346 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

TABLA 8.4 OBRAS PARA DIFERENTES VERSIONES DE PCV - PARTE I

Problema Año Investigador Trabajo

1969 Henry-Labordere Programación dinámica

1985 Jonges y Volgenant Relajación lagrangiana

1987 Laporte y col. Algoritmo B&B para el caso simétrico

1991 Mediodía y frijol Formulación del problema completo

1994 Fischetti y col . Algoritmo B & Cut / caso simétrico

1996 Laporte y col . Aplicaciones prácticas del problema


PCV generalizada
1996 Gendreau y col . Algoritmos heurísticos
(PCVG)
1996 Laporte y col . Aplicaciones problemáticas

1997 Fischetti y col . Algoritmo B & Cut

1997 Chentsov y Korotayeva Programación dinámica

1998 Renaud y Boctor Heurística compuesta

1999 Laporte y Semet Procedimiento de transformación

1999 Balas Problemas de solución eficiente

1980 Padberg y Hong Estudio computacional del problema

1980 Jonker y col . Transformaciones de problemas

mil novecientos
Jonker
ochenta
y Volgenant
y dos cama y desayuno

1987 Stewart Heurística de PCVS

1989 Carpaneto y col . Límites al problema

1990 Padberg y Rinaldi Identificación de facetas

PCV simétrico 1991 Padberg y Rinaldi Algoritmos B & Cut

(PCVS) 1991 Grötschel y Holanda Resolver problemas importantes

1994 Knox Búsqueda tabú

1996 Zachariasen y Dam Búsqueda tabú

1996 Codenotti y col. Método de perturbación

1996 Renaud y col. Heurística compuesta

2002 Johnson y McGeoch, Análisis experimental

2002 Lorena y Narciso Información lógica y relajación lagrangiana

1991 Miller y Pekny Algoritmo exacto

1996 Freisleben y Merz Algoritmo genético con búsqueda local - memético

1996 Gambardella y Dorigo Colonia de hormigas

1998 Brest y Zerovnik Algoritmo heurístico

1999 Amin "Salto simulado"

2000 Zhang Búsqueda local y B&B


PCV asimétrico
(PCVAS) 2000 Ascheuer B & Cut

2001 Cirasella y col. Algoritmos e instancias de prueba

2001 Glover y col. Heurística constructiva

2002 B1aser Heurísticas para el máximo PCVAS

Lewenstein y
2003 Heurísticas para el máximo PCVAS
Sviridenko

2003 Choi y col. Algoritmos genéticos

https://translate.googleusercontent.com/translate_f 293/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

Página 353

PROBLEMA DE RECLAMO DEL VIAJERO 347

TABLA 8.4 CONTINUACIÓN

Problema Año Investigador Trabajo

1985 Kalantari y col. Algoritmos exactos para casos especiales

1989 Goetschalckx y JB Varios algoritmos

1994 Anily y Mosheiov Modelo de programación


PCV con Backhauls
1996 Gendreau y col. Algoritmos heurísticos
(PCVB)
1997 Gendreau y col. Algoritmo heurístico híbrido

1997 Hansen y Mladenovic Heurísticas de búsqueda vecinas. var.

2003 Gharizi y Osman Redes neuronales

1980 Psaraftis Programación dinámica

1983 Panadero cama y desayuno

1983 Psaraftis Algoritmo enumerativo

1986 Desrosiers y col. Programación dinámica

1992 Malandraki y Daskin Estudios y algoritmos heurísticos

1993 Langevin y col. Programación dinámica

1994 Bianco y col. Programación dinámica / límites

1995 Dumas et al . Pruebas de dominancia y programación dinámica

El PCV con J. Tempo 1995 Russell Heurística híbrida


(PCVJT)
1996 Malandraki y Dial Heurísticas progresivas dinámicas restringidas

1997 Mingozzin y col. Programación dinámica / límites

1998 Pesant y col. Programación lógica

1998 Gendreau y col. Heurística de inserción

1999 Ascheuer y col. B & Cut

2000 Calvo Heurística basada en asignaciones

Fagerholt y
2000 aplicaciones
Christiansen

2002 Focacci y col. Relajación en las limitaciones globales

1977 Russel

1988 Desrosiers y col. Relajación lagrangiana

1991 Cvetkovic Programación dinámica


El PCV múltiple
1995 França et al. PCVM con objetivo minmax
(PCVM)
2000 Espiga Aplicaciones modelo

2002 Sofge y col. Computación evolutiva

2003 Pérez y Gil Colonia de hormigas

TABLA 8.5 OBRAS PARA DIFERENTES VERSIONES DE PCV - PARTE II

Problema Año Investigador Trabajo

1992 Palleta Modelo heurístico y algoritmos

El PCV periódico 1995 Chao y col . Algoritmo heurístico

(PCV-P) 2002 Palleta Algoritmo heurístico

2004 Bertazzi y col . Algoritmo heurístico

Página 354

348 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

TABLA 8.5 CONTINUACIÓN

Problema Año Investigador Trabajo

https://translate.googleusercontent.com/translate_f 294/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
1992 Bentley Algoritmos heurísticos
1996 Zachariasen y Dam Búsqueda tabú

1998 Barvinok PCV geométrica máxima


El PCV geométrico
1999 Mitchell Heurística de subdivisiones poligonales
(PCV-G)
1999 Fekete PCV máximo geométrico

2002 Jonsson PCV en filas en el avión

2003 Barvinok y col . PCV geométrica máxima

1996 Arora Esquema de aproximación polinomial

1997 Cerf y col . Aproximación aleatoria

Al-Mulhem y
1998 Método elástico
Al-Maghrabi
El PCV euclidiano
(PCV-E) 1998 Arora Esquema de aproximación de tiempo lineal

2000 Aras y col . Mapa de autoorganización de KNIES

2000 Bonachea y col . Enfoque de inicio múltiple

2004 Dumitrescu y Mitchell Acercándose a los barrios en el avión

El PCV con 2000 Boland y col . Discreción del modelo


Terminación
(PCV-R) 2001 Mak Descripcion del modelo

1994 Mosheiov Modelo para PCV-C

1994 Anily y Mosheiov

1998 Mosheiov Particionamiento de heurísticas

1999 Gendreau y col. Heurística para el problema

1999 Anily y Bramel Heurística para el problema


PCV con colección
(PCV-C) 2002 Renaud y col. Heurística basada en perturbaciones
recoger-entrega)
2003 Baldacci y col. B & Cut

Salazar-González y
2003 Caso de entrega y recogida de un solo artículo
Hernández-Pérez

2003 Bruun y col. Formulación de flujo de red

Salazar-González y
2004 B & Cut
Hernández-Pérez

1995 Frania y col. Múltiples PCV con objetivo MinMax

El PCV Min-Max (PCV 1997 Averbakh y Berman Algoritmos heurísticos

Mínimo máximo)
1997 Golden et al . Heurística con memoria adaptativa

1999 Somhom y col. Redes neuronales

1988 Fischetti y Toth Algoritmo de solución

PCV con bonificación 1989 Balas Modelo y desigualdades para el problema

(PCV-B)
1996 Blum y col. Oh heurístico (log 2 k). k = nodos recolectados

1998 Dell'Amico y col. Heurística lagrangeana

El selectivo PCV
1990 Laporte y Martello Modelo selectivo de PCV
(PCV-S)

Página 355

PROBLEMA DE RECLAMO DEL VIAJERO 349

TABLA 8.5 CONTINUACIÓN

Problema Año Investigador Trabajo

1985 Jaillet Soluciones derivadas de PCV

1985 Jezezel Heurística económica

1987 Rossi y Gavioli Soluciones heurísticas


PCV con clientes
Estocásticos 1988 Jaillet Modelos
(PCV-CE)
1993 Bertsimas Soluciones heurísticas

1994 Laporte y col. Método en forma de L

2002 Bianchi y col. Colonia de hormigas

2003 Bowler y col. Características del problema

1978 Kao Heurísticas

El PCV con el tiempo 1981 Sniedovich Heurística mediante programación dinámica


de viaje
Estocástico (PCV-TE) 1989 Carraway y col. Programación dinámica generalizada

1999 Percus y Martin Heurística de predicción de cavidades

https://translate.googleusercontent.com/translate_f 295/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

Múltiples PCV con 1992 Laporte y col. Método en forma de L


Tiempo de viaje
Estocástico 1993 Lambert y col. Penalizaciones y algoritmos de ahorro
(PCV-MTE)

PCV con costos


2004 Choi y col. Una arquitectura para la heurística
Estocásticos

8.4.2 - Límites para PCV


Poder obtener buenos límites para el PCV es uno de los caminos al éxito en varios algoritmos de
B&B, B & Cut, enumeración implícita, etc. Se conocen varias formas de obtener límites,
destacan:

4 límites obtenidos del árbol generador mínimo ( T GM )

Llamando por F un circuito hamiltoniano en el gráfico G = (N , A) , un gráfico no dirigido, x i Î N uno


vértice de F, y A i es el conjunto de aristas incidentes en el vértice x i . Si quitamos x v , uno de los vértices
ces del ciclo, entonces tenemos un camino P de G . Si T GM es el eje mínimo del subgrafo
G = ( N \ { x v } , A \ A v } tan claramente T GM es un límite inferior para p . Los arcos eliminados de F, son
tan grande como los dos arcos incidentes más pequeños en v , ( i 1 , v ) y ( i 2 , v ) por ejemplo. Llamando por
G v = ( N v , A v ) la gráfica compuesta por los arcos de T GM y los arcos ( i 1 , v ) y ( i 2 , v ), y el nodo v . Está claro que el
El costo total de los arcos en G v es un límite inferior para F. El problema de determinar la gráfica G v que
Minimizar este límite puede expresarse mediante el programa lineal Lim_Arv. Otra forma de entender
esta relajación es darse cuenta de que si ignoramos las restricciones unitarias en estricta igualdad (restricciones
estructuras de asignación) la estructura resultante de la solución del problema formulado será un árbol 1. LA
la relajación así constituida puede obviamente resultar en un recorrido ilegal; sin embargo, su valor será un
Límite inferior para cualquier recorrido de Hamilton (legal) en G .

metro

(Lim_Arv) Minimizar z = ∑ cjxj


j= 1

sujeto a:
metro

∑ xj=n (8,19)
j= 1

Página 356

350 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

∑ xj³1 " K t º ( S t , S t ), S t Ì N (8,20)


j ∈Kt

∑ xj=2 (8,21)
j ∈Av

x j Î {0, 1} j = 1, ..., m (8.22)

donde S t = N \ S t , y K t º ( S t , S t ), S t Ì N representa el conjunto de arcos ( i , j ) en los que el vértice i Î S t y j Î S t .


K t también se denomina conjunto de arcos de corte G. En relación con una gira hamiltoniana, al menos
en uno de los arcos deben pertenecer a cualquier corte de montaje K t de L . x j es una variable binaria que
vale 1 si el arco j está en la solución y 0 en caso contrario. Se puede obtener un mejor límite considerando
mostramos todos los nodos del gráfico en el conjunto A v , desde la última restricción, es decir, v = 1, ..., n . Sin embargo, hacer esto
es acercar la formulación a la formulación original de la PCV. Otra forma es introducir esta restricción.
función objetivo mediante el uso de multiplicadores de Lagrange. En este caso, la función objetivo
de Lim_Arv se convertirá en:

⎛ metro ⎞ ⎛ ⎞

min ⎜ ∑
cxij ij

⎟+ ∑∑
λ ι⎜


X j - dos

X
⎝ j= 1 ⎠ yo∈ N ⎝ j ∈Ai ⎠

Por tanto, el problema Lim_Arv puede modelarse en función de l como:

⎡ metro ⎤
min ⎢ ∑ c j( + λ ij + λ kj ) - dos ∑ λ ⎥
yo
X ⎣ ⎦
j= 1 yo∈N

Sujeto a las otras restricciones de Lim_Arv, donde i j y k j son los dos nodos ( i y k ) que definen el arco j (re
mostrado en el índice). De hecho, la función objetivo en l representa una transformación de costos en el
https://translate.googleusercontent.com/translate_f 296/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
función original Lim_Arv tal que:

c j = c j + l ij + l kj

Los mejores valores para l (o penalizaciones) se obtienen al resolver el problema en función de


l. Los métodos para resolver el problema en l fueron sugeridos por Held y Karp (1970) Hansen y Krarup
(1974). Valenzuela y Jones (1997) resumen y analizan varios métodos derivados del límite de Held-Karp.

4 límites obtenidos del problema de emparejamiento (PE)


Para el caso de PCV simétrico es posible obtener un límite inferior normalmente de mejor calidad
que el anterior relajando el PCV como un EP. La relajación PCV se puede configurar
con el siguiente problema de programación lineal:

metro

(Lim_Emp) Minimizar z = ∑ cjxj


j= 1

sujeto a:

∑ xj=2
j ∈Ai

x j Î {0, 1} j = 1, ..., m

Página 357

PROBLEMA DE RECLAMO DEL VIAJERO 351

Esta formulación se puede obtener a partir de la relajación asociada al árbol generador mínimo mediante
las restricciones de continuidad de la estructura (el árbol es un subgrafo relacionado). Podemos, como
en el caso anterior, incluya la restricción en la función objetivo usando multiplicadores de lagrange. A favor-
El problema es esencialmente el mismo que antes y sus técnicas de solución análogas.

4 límites obtenidos del problema de asignación lineal (PAL)

Como se desprende de la formulación de PCV1, los dos primeros conjuntos de restricciones representan una
Problema de asignación lineal. Balas y Christofides (1976) sugieren la introducción de otras restricciones del
problema, en la medida de su violación en una relajación lineal, en la función objetivo, a través de
sensores de lagrange. Los detalles de la propuesta se pueden ver en Christofides (1979).

8.4.3 - Algoritmos de solución aproximados

En vista de la extrema importancia de obtener buenos límites para la posibilidad de una solución
identificación exacta de PCV en problemas de tamaño real (a menudo con decenas o cientos de miles de
clientes) y el alto grado de sofisticación de los algoritmos exactos de hoy (que están más allá del alcance de
de este artículo), centraremos nuestra atención en algunos enfoques aproximados.

4 Solución PCV a través de Algoritmos Genéticos (AG)


Los algoritmos genéticos son métodos de búsqueda basados en mecanismos de selección y evolución.
Natural. Los primeros trabajos de esta línea proceden de John Holland (Holland [1962] y [1970]), y
destinado a replicar los procesos utilizados por los sistemas autoadaptativos en un contexto informático.
onal. Evidentemente, no todos los mecanismos de evolución y adaptación de los sistemas biológicos están siendo
bien modelado, sin embargo, ya se conocen varios aspectos. Uno de los puntos bien aceptados es que el
El proceso de adaptación depende de una fuerte interacción entre una determinada configuración genética llevada
por el individuo y los aspectos ambientales. Lamark en 1809 formuló la primera hipótesis sistematizada
evolución, afirmando que los seres vivos evolucionarían sin saltos ni cataclismos y de forma lenta y
introduciendo el concepto de personajes adquiridos. Charles Darwin desarrolló una teoría completa
explicando cómo actuaría el entorno sobre los individuos, obligando a seleccionar a los más capaces.
Johann Gregor Mendel en 1866 presenta una nueva teoría para explicar cómo ocurrirían los fenómenos
hereditaria, que se convertiría en lo que ahora conocemos como genética.
Ya a mediados del siglo pasado, los científicos sabían, en el núcleo de células que se podían obtener
servidos por los primeros microscopios, filamentos enrollados llamados cromosomas. El nombre era
originados por la facilidad con la que fueron marcados por los tintes. Thomas Hunt Morgan descubrió que
Estos filamentos estaban formados por subgrupos que se denominaron genes, y que estos
entre otras cosas, el color de los ojos de ciertas moscas. Demostró que estos grupos eran
vididos y recomposidos que forman un fenómeno llamado cruce o reproducción sexual
Utilizando el modelo cromosómico para representar el proceso evolutivo, Holland (Holland
[1973] y [1975]) utilizaron una lista de símbolos binarios (0, 1) para representar las cadenas de ácido nucleico
co. De hecho, los objetivos del trabajo de Holland eran apoyar una teoría general de
Sin embargo, una adaptación robusta pudo encontrar una forma de aplicación práctica excelente e inmediata.
en la determinación del máximo y mínimo de funciones matemáticas. Esta aceptación facilitó enormemente
de AG en el ámbito académico. Varios autores contribuyeron a la consolidación de la obra de

https://translate.googleusercontent.com/translate_f 297/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
Holanda, como DeJong (1975), Grefenstette (1986), Goldberg (1989) y otros. En resumen, podemos encontrar
que AG es parte de la computación evolutiva que ha encontrado la posibilidad de aplicar
información general y que tiene las siguientes características generales:

• Operar en un conjunto de puntos (llamado población) y no desde puntos aislados.


• Operar en un espacio de soluciones codificadas y no directamente en el espacio de búsqueda.
• Necesitan como información sólo el valor de una función objetivo (llamada función de
adaptabilidad o aptitud ).

• Utilice transiciones probabilísticas y no reglas deterministas.

Página 358

352 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

En resumen, podemos entender que AG son parte de la computación evolutiva que encontramos
trajo la posibilidad de aplicación general. Los siguientes términos son utilizados ampliamente por aquellos
goritmos:

• Población: conjunto de individuos (es decir, conjunto de soluciones al problema).


• Cromosoma: representa a un individuo en la población (es decir, una configuración o solución). En-
normalmente definido como un vector componente.

• Aptitud : medida de la aptitud de un individuo (es decir, normalmente asociada con el valor de la función
objetivo para una solución dada).

• Gen: representa un componente del cromosoma (es decir, una variable problemática).
• Alelo o Alelo : describe los posibles estados de un atributo del individuo (es decir, los posibles
valores de una variable de problema).

• Locus : representa la posición del atributo en el cromosoma (es decir, la posición del componente en el vector
componentes).

• Operadores genéticos: son las reglas que permiten la manipulación de cromosomas que, básicamente
son:

• crossover , o el operador que permite obtener niños individuales de


la combinación (cruce) de los cromosomas de los padres.

• mutación o el operador que permite la producción de un nuevo individuo mediante cambios directos
en el cromosoma padre.
• Fenotipo: denota el cromosoma decodificado.
• Genotipo: representa la estructura del cromosoma codificado.
• Esquema : es un modelo de representación para una familia de cromosomas, generalmente se representa
sentado por símbolos * dentro del cromosoma.

La figura 8.8 ejemplifica algunos de los términos.

(Fenotipo)
1 5 dos

9
dos
1 1 * 6 5*4 3 2

6 dos 8 3
Esquema
3 dos
4
dos

5 3 4

165432 o 561432
s
Solución = {1,6,5,4,3,2}

gen g 3

165432 Fitness = 23
Genotipo = (,,,,,) gggggg
1 dos 3 4 5 6

Cromosoma

FIGURA 8.8 Un ejemplo de formación de cromosomas.

De hecho, los AG son algoritmos de búsqueda probabilística inteligente, con las siguientes características
básico:

• Los individuos están representados por cromosomas y compiten por los recursos y la posibilidad de reproducción .
Los cromosomas generalmente se asocian con soluciones a problemas modelados. Un
La población inicial se forma, en principio, a través de algún mecanismo de evaluación del desempeño.
mance. Cuando aún no se conoce este mecanismo, se puede formar la población

https://translate.googleusercontent.com/translate_f 298/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

Página 359

PROBLEMA DE RECLAMO DEL VIAJERO 353

aleatorio. Los individuos, en general, se codifican como una secuencia finita en un alfabeto.
binario {0, 1}. Se dice que cada componente de la secuencia es un gen. Es natural suponer que un gen es
asociado con una variable de problema. Desde la solución inicial, el mecanismo de reproducción
sera aplicado.

• Los individuos que tienen más éxito en las competiciones tienen más probabilidades de reproducirse que
aquellos con menor rendimiento . El mecanismo de reproducción consta de una función de evaluación
clasificación que clasifica a los individuos por su desempeño y por reglas que permitirán estos
los mejores individuos perpetúan y reproducen. Notamos la importancia de la función fitness o
Evaluación del desempeño. El llamado método de la rueda de la ruleta elige al individuo
un padre con una probabilidad igual a su idoneidad normalizada, es decir, el resultado de
su adecuación absoluta dividida por la adecuación media de la población evaluada. El recorrido
nmento extrae aleatoriamente k miembros de la población y, en este grupo, elige al individuo de
mejor presentación. Es importante comprender la naturaleza probabilística del proceso, con el objetivo
mantener la diversidad de la población.

• Los genes de los individuos evaluados como buenos se propagan a través de poblaciones, para que puedan ser
mejorado y generar una descendencia cada vez más adecuada. Los individuos seleccionados serán transformados
por operadores genéticos en nuevos individuos. Hay operadores asociados a la reproducción.
con el uso de uno o más de un individuo. El operador de reproducción principal utiliza
dos individuos, llamándose cruce o cruce . Hay varias formas de realizar una
cruzamiento entre individuos representados por cromosomas. Básicamente, el objetivo de
el cruce consiste en formar nuevos individuos a partir del intercambio de genes entre los padres individuales. Allí-
Para cada caso se especifican los grados que definen cómo se producirá este intercambio de genes.

La figura 8.9 muestra la posibilidad de una intersección donde se elige la posición de permutación
al azar.

Padres Niños

10101100111 1 1 0 1 1100 110

11011010100 10,101 0 1 0 1 0 0

Posición aleatoria

10101100111 11001100111

11011010100 10111010100

FIGURA 8.9 Cruce simple de posición aleatoria.

Después de la reproducción por cruzamiento, la población puede presentarse (no necesariamente).


te) a un proceso de mutación. Esta alternativa de generar nuevos individuos se puede hacer directamente
la mente de otro individuo. Este modo de reproducción se llama mutación . La figura 8.10 muestra
dos posibles tipos de mutación.

Página 360

354 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

Papá Hijo

Inversión
10101 0011 11 10101 1100 11

Papá Hijo

Mutación
101011 0 0011 101011 1 0011

https://translate.googleusercontent.com/translate_f 299/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
Puntual

FIGURA 8.10 Mecanismos de mutación.

Podemos definir formalmente un AG de la siguiente manera:

AG = ( N , P , F , Q, W, Y,)

Donde P es una población de N individuos, P = { S 1 , S 2 , ..., S N }. Cada individuo S i , i = 1, ..., N es un


o un conjunto de valores enteros de longitud n que representan una solución al problema. F
representa la función de fitness que devuelve un valor positivo y real en la evaluación de cada individuo.

F: S i → ℜ + , yo = 1, ..., N
Q es el operador de selección padre que elige r individuos de P
P: P ® { p 1 , p 2 , ..., p r }

W es un conjunto de operadores genéticos que incluye el cruce (llamado W C ), el operador de


mutación (llamada W M ) y cualquier otro operador específico que produzca s hijos de r padres.

W = {W C , W M , ...,}: { p 1 , p 2 , ..., p r } ® { f 1 , f 2 , ..., f s }

Y es el operador de remoción que elimina son individuos seleccionados en la población P , permitiendo, para
ejemplo, que son niños (nuevos individuos) se agregan a la nueva población P T + 1 :

P t +1 = P t - Ψ ( P t ) + { f 1 , f 2 , ..., f s }.

t es el criterio de parada
t: P t ® {verdadero, falso}

La propia concepción del modelo genético lo hizo flexible y abstracto. El significado de las cadenas de cromo
mosomes es completamente gratis. Lo que está en foco en el modelo es una concepción generalista de un
proceso adaptativo, por eso se le llama metaheurística . Cada situación depende del modelo
pintor para implementar el proceso de selección adaptativo y natural recomendado en la estrategia. La representación
de una solución dentro de una estructura cromosómica puede no ser una tarea trivial. El muy
La secuencia binaria propuesta por Holland puede ser inadecuada para muchos de los problemas de programación
definición lineal de enteros, por ejemplo, considerando números enteros. Abordaremos esto
tema en el momento adecuado. Un algoritmo genético requiere:

• Una representación genética de soluciones viables al problema combinatorio.


• La determinación de una población inicial de cromosomas.
• La definición de una función de evaluación cromosómica.
• La definición de los operadores que permitirán la producción de nuevos individuos y sus parámetros,
tales como: distribuciones de probabilidad de la posición de ruptura del cromosoma, el tipo de mutación
ción, etc.

Página 361

PROBLEMA DE RECLAMO DEL VIAJERO 355

• La definición de varios parámetros como: reglas de parada, tamaño de la población,


garantía de diversidad, etc.

Entonces podemos describir genéricamente un algoritmo genético de la siguiente manera:

Meta-algoritmo genético

COMIENZO
Genera una población inicial
Evaluar la aptitud de los individuos de la población.
Repetir
comienzo
Seleccionar un grupo de padres en la población
Criar a los padres para que se reproduzcan.
Evaluar la aptitud de los niños generados
Reemplazar a los niños considerados inadecuados
Fin
Hasta que se cumpla el criterio de detención

https://translate.googleusercontent.com/translate_f 300/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
FIN

Varios informes informan de buenos resultados en el uso de algoritmos genéticos para la solución PCV.
autores (Wetzel [1983], Grefenstette et al. [1985], Goldberg y Lingle [1985], Sirag y Weisser [1987]). Utilizar
Usaremos el gráfico de la Figura 8.11 para ejemplificar la terminología y los procedimientos de esta técnica.

1 dos

6 3

5 4

FIGURA 8.11 Gráfico de ejemplo del PCV.

Para poder aplicar la solución vía AG al PCV es imprescindible resolver lo siguiente


preguntas:

• Obtener una representación genética de soluciones PCV viables y asociar esta representación con un proceso de
reproducción .

Hay varias formas posibles de representación genética de las soluciones de PCV. El mas conocedor
das son:

1 - Cadena de enteros

En esta forma de representación, el cromosoma está formado por la secuencia de nodos en el ciclo, es decir, por
una solución PCV. En el ejemplo de la figura 8.12, un cromosoma podría ser p 1 = (1, 4, 2, 3, 6, 5), que
corresponde a la solución:

Página 362

356 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

1 dos

6 3

5 4

FIGURA 8.12 Una solución de PCV.

Esta representación también se conoce como rutas . Es la representación más natural para un
cromosoma, ya que el ciclo se expresa directamente. Grefenstette y col. (1985) reporta buenos resultados
resulta en el uso de esta representación; sin embargo, una de sus dificultades es que el crossover puede
producir ciclos inviables como:

PAGS= (,,,
123 | 4 5,,)6
1 Þ f 1 = (1, 2, 3, | 5, 1, 6) yf 2 = (4, 3, 2, | 4, 5, 6)
PAGS= 4 32|5
dos (,,, ,)dieciséis

Ante este problema, se han desarrollado operadores especiales que evitan la producción
de niños inviables (genéticamente abortivos), dado que los padres son representaciones de soluciones viables.
viable. Entre ellos destacamos:

• Operador y Crossover parcialmente mapeado (PMX)


El operador de PMX propone el siguiente procedimiento: considere un par de cromosomas y en
realizan un corte al azar. Si se generan dos hijos, f 1 y f 2 , los genes ubicados entre el
dos cortes de p 1 y p 2 se heredan en su totalidad, conservando el orden y posición de cada uno. Por
ejemplo:

PAGS= (,,,
123 | 4 , | 5, 6, 7 )
1 Þ f 1 = (1, 2, 3, | 5, | 5, 6, 7) yf 2 = (4, 3, 2, | 4, | 1, 7, 6)
PAGS= 4 32|,| 5
dos (,,, 1, 7, 6)

https://translate.googleusercontent.com/translate_f 301/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

Estos son ciclos inviables. Luego, el operador intentará poblar cada gen f 1 em de su padre p 1 , y
cada gen f 2 , de su padre p 2 , siempre que no formen un ciclo inviable para PCV. Entonces:

p 1 = (1, 2, 3, –––, 5, 6, 7) yp 2 = (4, 3, 2, –––, 1, 7, 6)


f 1 = (Ä, Ä, Ä, | 5, | Ä, Ä, Ä) yf 2 = (Ä, Ä, Ä, | 4, | Ä, Ä, Ä)

Lo que nos lleva a:

p 1 = (1, 2, 3, –––, 5, 6, 7) yp 2 = (4, 3, 2, –––, 1, 7, 6)


¯¯¯ ´¯¯ ´¯¯ ¯¯¯

f 1 = (1, 2, 3, | 5, | Ä, 6, 7) yf 2 = (Ä, 3, 2, | 4, | 1, 7, 6)

Tomamos la primera Ä de f 1 que debería ser 5, pero no es posible, porque 5 ya pertenece al gen
que fue heredado de p 2 . Ahora buscamos el valor que ocupó la posición de incompatibilidad en
f 1 , en cuarta posición. El número es 1. Este número es obviamente compatible con el gen 5 heredado
porque está en el padre. Desafortunadamente, 1 ya pertenece al cromosoma f 1 . Volvemos a mirar f 1

Página 363

PROBLEMA DE RECLAMO DEL VIAJERO 357

qué posición ocupa el número 1, el gen incompatible, y buscamos lo que le corresponde


en p 2 . En este caso, la posición se llena en p 2 por la ciudad 4, que ahora es compatible con el
frecuencia de f 1 , y obtenemos: f 1 = (1, 2, 3, | 5, | 4, 6, 7).

p 2 = (4, 3, 2, –––, 1, 7, 6)

f 1 = (1, 2, 3, | 5, Ä, 6, 7)

• Operador Order Crossover (OX)


Este operador construye un cromosoma hijo heredando una secuencia parcial de ciudades de uno de los
cromosomas parentales y manteniendo el orden relativo del otro. Considere el siguiente ejemplo:

PAGS= ( 1, 2, 3, 4, 5, 6 7, 8, 9 ) ⇒ Fdos= ⊗ ⊗⊗
(,,,,,,,) 456 ⊗⊗⊗
1
PAGS= F1 = ⊗(,, ⊗ ⊗
dos ( 4 , 3, 2, 1, 8, 5 6, 7, 9) ,,,,,)
185⊗⊗⊗

Los hijos f 1 y f 2 heredan las bandas entre los cortes uno y dos. A partir del segundo corte de un padre
(por ejemplo p 2 ), eliminamos de esa lista las ciudades contenidas entre los dos cortes del otro padre (en este caso
p 1 ), es decir: de 6, 7, 9, 4, 3, 2, 1 , 8 , 5 , quitaremos 4, 5, 6, obteniendo la secuencia: 7, 9, 3, 2, 1, 8. Esta
la frecuencia debe indexarse en f 1 desde su segundo corte:

2, 1, 8 7, 9, 3
¯¯¯ ¯¯¯

f 2 = (Ä, Ä, Ä, | 4, 5, 6, | Ä, Ä, Ä,)

de 7, 8, 9, 1, 2, 3, 4 , 5 , 6 , eliminemos 1, 8, 5, obteniendo la secuencia: 7, 9, 2, 3, 4, 6, que, indexada desde


del segundo corte de f 2 , nos da:

3, 4, 6 7, 9, 2
¯¯¯ ¯¯¯

f 1 = (Ä, Ä, Ä, | 1, 8, 5, | Ä, Ä, Ä,)

• Operador Cycle Crossover (CX)


Es un operador que conserva la posición absoluta de las ciudades en los cromosomas de sus padres. Se-
los siguientes padres:

p 1 = (1, 2, 3, 4, 5, 6, 7, 8, 9)
p 2 = (4, 3, 2, 6, 8, 9, 1, 5, 7)

El primer hijo, f 1 , se obtiene tomando primero la primera ciudad de p 1 y colocándola en la primera


primera posición del cromosoma de f 1 :

https://translate.googleusercontent.com/translate_f 302/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
p 1 = (1, 2, 3, 4, 5, 6, 7, 8, 9)
¯
f 1 = (1, Æ, Æ, Æ, Æ, Æ, Æ, Æ, Æ )

Después de definir la posición del último elemento en f 1 , buscamos en p 2 la posición correspondiente


a ese elemento definido:

Página 364

358 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

f 1 = (1, Æ, Æ, Æ, Æ, Æ, Æ, Æ, Æ )
¯
p 2 = (4, 3, 2, 6, 8, 9, 1, 5, 7)

Por lo tanto, el elemento de la primera posición en p 2 será heredado por el hijo f 1 , pero conservando
la posición que ocupa este elemento en el cromosoma p 1 de tu padre , es decir, la cuarta posición:

p 1 = (1, 2, 3, 4, 5, 6, 7, 8, 9)
¯ ¯
f 1 = (1, Æ, Æ, 4 , Æ, Æ, Æ, Æ, Æ )

Continuando, encontraremos el elemento que ocupa la cuarta posición en el padre p 2 , que es 6:

f 1 = (1, Æ, Æ, 4 , Æ, Æ, Æ, Æ, Æ )
¯ ¯
p 2 = (4, 3, 2, 6, 8, 9, 1, 5, 7)

Asimismo, 6 será heredado por f 1 en la posición que ocupa en p 1 , es decir, en la sexta posición. LA
La figura 8.13 resume el proceso:

PAGS 1, 2, 3, 4, 5, 6, 7, 8, 9
1=

PAGS= 4, 3, 2, 6, 8, 9, 1, 5, 7
dos

F 1,, ∅ ∅ , 4, 6, ∅7, 9 ∅
1=

FIGURA 8.13 Primera fase de CX.

Cuando el elemento visitado en p 2 pasa a ocupar la primera posición, y esto sucederá en la séptima
posición, diremos que se ha completado un ciclo. El ciclo de ejemplo se completó con la inclusión del
7. Cuando se completa un ciclo, las otras posiciones se llenan en el cromosoma p 2 .

p 2 = (4, 3, 2, 6, 8, 9, 1, 5, 7)
¯¯ ¯ ¯
f 1 = (1, Æ, Æ, Æ, Æ, Æ, Æ, Æ, Æ )

Resultando en:

f 1 = (1, 3, 2, 4, 8, 6, 7, 5, 9)

• Operador de cruce de recombinación de bordes (ERX)


Este operador busca construir niños maximizando la posibilidad de presencia de bordes que son
común a ambos padres. Esta intención está justificada por la representatividad genética. En un proceso
de reproducción racional, sería razonable esperar que los descendientes hereden de sus padres tantos genes
el mayor número posible. Interpretando esta directiva en el contexto de la PCV, diríamos que, en un proceso de

Página 365

https://translate.googleusercontent.com/translate_f 303/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
PROBLEMA DE RECLAMO DEL VIAJERO 359

reproducción que tenía como objetivo preservar la representatividad genética, deberíamos reducir la
introducción de aristas al azar en niños. El operador ERX fue desarrollado para este propósito. Sea la gráfica de Fi-
Figura 8.14:

1 dos

6 3

5 4

FIGURA 8.14 Gráfico para el PCV.

cuyas listas de aristas del problema son:

Ciudad Bordes

1 (1, 2), (1, 3), (1, 5), (1, 6)


dos (2, 1), (2, 3), (2, 4), (2, 6)

3 (3, 1), (3, 2), (3, 4), (3, 5)


4 (4, 2), (4, 3), (4, 5)
5 (5, 1), (5, 3), (5, 4), (5, 6)
6 (6, 1), (6, 2), (6, 5)

Sean los dos cromosomas:

p 1 = (1, 3, 2, 4, 5, 6)
p 2 = (2, 6, 5, 4, 3, 1)

que nos llevan a la siguiente lista de aristas:

Ciudad Bordes
1 (1, 2), (1, 3), (1, 6)
dos (2, 1), (2, 3), (2, 4), (2, 6)
3 (3, 1), (3, 2), (3, 4)
4 (4, 2), (4, 3), (4, 5)
5 (5, 4), (5, 6)
6 (1, 6), (6, 2), (6, 5), (6, 4)

Para usar ERX en la versión para la producción de un solo niño, seleccionaremos la ciudad de inicio
de uno de los dos cromosomas parentales (ciudad 1 o 2) que tiene el menor número de bordes incidentes en el
lista de bordes de cromosomas, es decir, se elige 1. La ciudad 1 está directamente vinculada a las ciudades 2,
3 y 6. Trabajaremos con la tabla de borde de cromosomas. Elegiremos, entre las ciudades
vinculado a 1, que tiene el menor número de bordes en la mesa de trabajo. Elegiremos el
Esta secuencia de elección está formando al individuo de la siguiente manera:

f 1 = (1, 3, Æ, Æ, Æ, Æ )

Página 366

360 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

Aplicando el razonamiento sucesivamente, incluiremos las ciudades 5, 6 y 2, respectivamente,


se envía el siguiente cromosoma infantil:

f 1 = (1, 3, 4, 5, 6, 2)

Los experimentos computacionales reportan cierta dificultad para que este operador reduzca la introducción
de aristas aleatorias en los descendientes, especialmente en los últimos aristas del circuito, cuando ya hay
poca flexibilidad para las inclusiones.

https://translate.googleusercontent.com/translate_f 304/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
2 - Lista de adyacencias
También podemos representar un cromosoma de la siguiente manera: la ciudad j del ciclo aparece en la posición
ción i si y sólo si, el ciclo va directamente de la ciudad i a la ciudad j . Por tanto, un cromosoma p = (3,
1, 5, 6, 4, 2) representa los siguientes arcos en un ciclo asociado con p :

Posición Nodo p Arco Solución


1 3 1®3
1 dos
dos 1 2®1
3 5 3®5
6 3
4 6 4®6
5 4 5®4
6 dos 6®2 5 4

Similar a la representación por secuencia de números enteros, esta representación también


puede generar cromosomas inviables, como p = (2, 3, 4, 6, 5, 1)

Posición Nodo p Arco Solución


1 dos 1®2 1 dos

dos 3 2®3
3 4 3®4
6 3
4 6 4®6
5 5 5®5
5 4
6 1 6®1

3 - Lista ordinal
En una lista ordinal, el ciclo (cromosoma) está representado por su posición en una lista ordenada de
Ciudades PCV. La lista 1 varía de 1 a n ciudades. El cromosoma es un vector para posicionar la ciudad
en la lista. Sea el problema de la Figura 180, entonces l = (1, 2, 3, 4, 5, 6). Un cromosoma p = (1, 2, 1, 3, 2, 1) re
presenta el siguiente ciclo (que representaremos por t = ( t 1 , t 2 , ..., t n ):

1. p = (1, 2, 1, 3, 2, 1) p 1 = 1 Þ primera posición en la lista c = (1, 2, 3, 4, 5, 6), es decir, t 1 = 1 y t = {1}; t = {1};

2. p = (1, 2, 1, 3, 2, 1) p 2 = 2 Þ segunda posición en la lista actualizada c = (Ä, 2, 3, 4, 5, 6), donde los valores anulan
los lados no se calculan, es decir, c = (2, 3, 4, 5, 6) y t 2 = 3, lo que conduce a t = {1, 3}

3. p = (1, 2, 1, 3, 2, 1) p 3 = 1 Þ primera posición en la lista actualizada c = (Ä, 2, Ä, 4, 5, 6), es decir, c = (2 , 4, 5, 6)


y t 3 = 2, lo que conduce a t = {1,3,2}

4. p = (1, 2, 1, 3, 2, 1) p 4 = 3 Þ tercera posición en la lista actualizada c = (Ä, Ä, Ä, 4, 5, 6), es decir, c = (4 , 5, 6) y


t 4 = 6 que conduce a t = {1, 3, 2, 6}

Página 367

PROBLEMA DE RECLAMO DEL VIAJERO 361

5. p = (1, 2, 1, 3, 2, 1) p 5 = 2 Þ segunda posición en la lista actualizada c = (Ä, Ä, Ä, 4, 5, Ä), es decir, c = (4 , 5) y


t 5 = 5 y t = {1, 3, 2, 6, 5}.

6. p 6 = 1 Þ primera posición en la lista c = (Ä, Ä, Ä, 4, Ä, Ä), es decir, t = {1, 3, 2, 6, 5, 4}

La representación ordinal es perfectamente coherente con los operadores de cruce clásicos.


Sigamos la siguiente intersección usando la representación ordinal:

c = (1, 2, 3, 4, 5, 6)
PAGS
1
= ( 2, 1, 3, | , 1, 2, 1 ) Þ p 3 = (2, 1, 3, | 1, 1, 1,) y p4 = (1, 2, 2 | 1, 2, 1)
PAGS=
dos ( 1, 2, 2, | , 1, 1, 1 )

p 1 responde al ciclo {2, 1, 5, 3, 6, 4}, ciclo {1, 3, 4, 2, 5, 6}, el niño al ciclo


{2, 1, 5, 3, 4, 6} yp 4 al ciclo {1, 3, 4, 2, 6, 5}.

• Determinar cómo obtendremos la población de cromosomas inicial.


Los cromosomas son soluciones de PCV. Para el caso del gráfico completo, cualquier permutación de los nodos es
una solución viable. Existen varias heurísticas para obtener soluciones aproximadas. Las heurísticas
para el problema de enrutamiento normalmente se puede aplicar para obtener soluciones viables.
disponible para PCV. Como el desarrollo de AG está fuertemente asociado con la herencia genética, el
La población inicial ciertamente influirá en el rendimiento de los algoritmos que se desarrollarán. Ese es
un tema de gran importancia.

https://translate.googleusercontent.com/translate_f 305/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

• Definir la función de evaluación de cromosomas y los criterios de renovación de la población.


Los costos totales son un indicador natural para evaluar la calidad de un cromosoma (una solución
perro). También es posible obtener límites para el valor óptimo del PCV mediante la solución de otras estructuras
en el gráfico del sustrato, como coincidencia mínima, eje mínimo, etc.

• Solución PCV a través de algoritmos heurísticos constructivos


Gran parte de los algoritmos heurísticos constructivos para el TSP utilizan la estrategia llamada gulo-
sa o solución miope . Esta estrategia finalmente se desarrolla, en cada paso de la heurística
constructiva, la idea de obtener el mayor beneficio o ganancia posible. Evidentemente, la política global de
la toma de decisiones no siempre implica acciones que conduzcan a los mayores beneficios inmediatos. Algunos-
pero las estructuras matemáticas tienen la propiedad de aceptar una forma de toma de decisiones mínima
P. Estas estructuras se denominan matroide (Edmonds [1971] y anexo). Examinaremos ahora algunos
heurística constructiva miope para PCV.

• Heurísticas de Bellmore y Nemhauser


La heurística consiste en, partiendo de cualquier vértice del grafo de sustrato del PCV, estructurar la
Camino hamiltoniano que conduce, en cada paso, al vértice más cercano al vértice anterior (Bellmo-
re y Nemhauser [1968]). La complejidad de esta heurística es O ( n 2 ). Una variación repite el algoritmo o
para todos los nodos o ciudades posibles para minimizar el efecto de la influencia de la elección de la ciudad inicial
Alabama. En este caso, la heurística se convierte en O ( n 3 ). La estrategia codiciosa se caracteriza por el hecho
que, en cada paso, el algoritmo toma la decisión de menor costo (nodo más cercano al nodo final).
Una variante de esta heurística permite que la inclusión ocurra en ambos nodos extremos del ciclo.
que se forma (ver Figura 8.14). En general, la heurística se puede escribir como:

Página 368

362 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

Heurísticas de Bellmore y Nemhauser

COMIENZO

Elija un vértice inicial v 1 ;

Encuentra el vértice v k más cercano a la último vértice

( de los vértices extremos ) incluidos en la solución;

Inserte el vértice v k después del último vértice (su vecino

más cerca);

Si el ciclo formado es hamiltoniano, deténgase .

De lo contrario, vuelva al paso 2 .

FIN

Apliquemos el algoritmo de Bellmore y Nemhauser al gráfico de la figura 8.15:

dos
1 dos
1 5
9 9

4 7
dos 1

6
6 3
1 8

dos 3

5 dos 4

FIGURA 8.15 Gráfico de ejemplo.

Partiendo del vértice 6 y aplicando la técnica del vecino más cercano, tenemos la secuencia de inserción
en la Figura 8.16.

1 1 1
1 1 1

1 1

6 6 3 6 3
1

https://translate.googleusercontent.com/translate_f 306/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

1 inserto
ª 2 ªinserción 3 ªinserción

1 1 dos 1 dos
1 1 5 1 5

1 1 7 1

6 3 6 3 6 3
1 1 1

5 4 5 4 5 4
dos dos dos

4 inserción
ª 5 ªinserción 6 inserción
ª - "forzada"

FIGURA 8.16 Ejemplo de aplicación de la heurística del vecino más cercano.

Lo que nos lleva a un valor final de 17.

Página 369

PROBLEMA DE RECLAMO DEL VIAJERO 363

• Heurística de inserción
Algunas heurísticas constructivas tienen un proceso de toma de decisiones más elaborado que
completamente codicioso. En este caso, intervienen tres niveles de decisión:

• La elección del vértice a insertar en la solución.


• La posición de inserción de este nuevo vértice.
• La decisión de un ciclo inicial.
Estas heurísticas se denominan inserción . Su proceso de toma de decisiones sigue siendo básicamente miope porque
mas elaborado. Típicamente, tales heurísticas comienzan desde un subtour inicial (un ciclo normalmente
longitud 3) y seleccione e inserte vértices aún no incluidos en la solución hasta
completar un ciclo. Algunos de los criterios más utilizados para la selección de vértices a agregar
los subtour son:

• Inserción del vértice más cercano.


• Inserción del vértice más distante.
• Inserción del vértice que conduce al ciclo más barato (inserción más barata).
• Inserción aleatoria.
En el caso de inserciones con los vértices más cercanos y más alejados de cualquier vértice del sub-
tour, habiendo elegido el vértice, depende de usted decidir cómo se insertará en el subtour . Como el vértice todavía pertenece
los dos bordes sutiles serán necesarios para incluirlo. Si la inclusión de este vértice ocurre entre nodos i
e i + 1, será necesario eliminar este borde para conservar el matiz . El criterio de decisión sobre el que
Las aristas que debemos utilizar en este proceso se expresan por el efecto del balance entrada ´ salida de aristas.
Considerando una inserción entre los vértices i e i + 1, el criterio para elegir el punto de inserción es
confunde con el criterio de elección de borde ( i , i + 1) que minimiza el siguiente equilibrio:

Minimizar { Cik + Cki + 1 - Cii + 1 }


En el caso de inserción más barata, el vértice en sí se elige por el criterio de saldo mínimo
considerando todas las inserciones posibles para todos los vértices que aún no pertenecen a subtour .
En general, la heurística de inserción se puede describir mediante los siguientes pasos:

Heurística de inserción

COMIENZO
Comience con un ciclo de vértice { v 1 v 2 v 3 };
Encuentre el vértice v k que no pertenece al ciclo, más
cerca / más lejos de cualquier vértice
perteneciente al ciclo;
Encuentre el borde ( i , i + 1) tal que Minimizar
{ c ik + c k i +1 - c i i +1 }
Inserta el vértice v k entre los vértices i e i + 1.
Si el ciclo formado es hamiltoniano, deténgase .

https://translate.googleusercontent.com/translate_f 307/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
De lo contrario, vuelva al paso 2.
FIN

Página 370

364 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

La inserción más barata realiza los pasos 2 y 3 en un procedimiento de la siguiente manera:


Encuentre v k que no pertenece al ciclo tal que su inserción entre i e i + 1 minimice { c ik + c k i +1 - c i i +1 }
Aplicaremos las heurísticas de inserción del vértice más cercano (como se muestra en la Figura 8.17) e inserción
más barato (según la Figura 8.18) que el gráfico de la Figura 8.15. A pesar de referirse al mismo gráfico, el
los ejemplos comenzarán con diferentes ciclos.
El resultado de aplicar la heurística de ápice más cercana al gráfico de la Figura 8.15
es un circuito con 15 unidades de longitud.

1 1 1
1 1
1
1 1 1

6 6 3 6 6 3 6 6 3
1 1

4 4

Ciclo inicial Elección de vértice más 1 ªinserto


siguiente

dos
1 1 dos 1 dos
5
1 1
1
1 1 1
6 3 6 3 6 3
1 1

dos 3 dos 3 dos 3

5 4 5 dos
4 5 dos
4

Elección de vértice más 2 inserción


ª 3 ªinserción - "forzada"
siguiente

FIGURA 8.17 Inserción del vértice más cercano.

El resultado de aplicar la heurística de inserción de vértices más barata al gráfico de la figura 8.15 es
un circuito con 15 unidades de longitud; sin embargo, destacamos el hecho de que, en este último heurismo,
la última inserción no fue completamente forzada. El efecto final de una política miope

dos dos dos


5 5 5
dos dos

7
7
3 6 3 6 3

8 8 8
dos dos 3

5 5 5 dos 4

Ciclo inicial 1 inserción


ª más económica. 2 inserción
ª más económica.
Economía = +3 Economía = +3

dos
1 dos
5
1
dos

6 3

dos 3

5 dos 4

3 inserción
ª más económica. Economía = –1

FIGURA 8.18 Inserción más económica.

Página 371

PROBLEMA DE RECLAMO DEL VIAJERO 365

https://translate.googleusercontent.com/translate_f 308/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
decisión de las heurísticas de inserción del ápice más cerca o más distante, está disminuida en la inserción
más barata.
Frendewey (véase Arthur [1959]) informa buenos resultados computacionales en el uso de estas heurísticas
para PCV en general. Para el caso de PCV euclidiana simétrica, se encontró superioridad en
calidad de solución para la inserción más distante.

• Heurística K -Sustituições o k -OPT


Las heurísticas de reemplazo son estrategias de mejora y comienzan desde un ciclo hamiltoniano inicial.
Uno de los ejemplos clásicos de estas heurísticas se encuentra en el trabajo de Lin y Kernighan (Lin y Kernighan
nighan [1973]). Hay informes de que tienen un buen rendimiento computacional, especialmente aquellos
2-Opt y 3-Opt (ver Golden et al. [1980]) y ahora forman parte de muchos otros algoritmos (Gerdessen
[1996]) entre las que destacamos:

n Heurística de Dynasearch

El algoritmo propuesto por Potts y Van de Velde (1995) combina una serie de movimientos 2-Opt para cada
paso del algoritmo para componer una nueva solución. La composición de los movimientos 2-Opt es limitada
en O ( n 2 ).

n Geni y Genius

Gendreau y col. (1992) presentan un procedimiento híbrido para ciclos de construcción con la ayuda de
un proceso de optimización local basado en el examen de configuraciones de 2 a 4 opciones. Considerando
un cierto orden de visitas, c 1 - c 2 -...- c n , el algoritmo puede comenzar desde una parte del ciclo, c 1 - c 2 - c 3 , para
ejemplo. Cada nueva ciudad que se agrega al ciclo en construcción ( c 4 , en el ejemplo) se prueba
en su punto de inclusión de modo que la posibilidad de una sustitución k -Opt, con 4
³ k ³ 2. Los posibles intercambios están restringidos a una cierta distancia ( p ) de la posición original de la ciudad. los
presentar el resultado de pruebas computacionales que comparan diferentes esquemas para
parámetros de optimización ( k y p ).
En general, las heurísticas de sustituciones k se pueden describir mediante los siguientes pasos:

Heurísticas de sustituciones K

COMIENZO
Comience con un ciclo hamiltoniano { v 1 , v 2 , ..., v n };
Elimina k vértices del ciclo actual, haciéndolo
incompleto;
Construya todas las soluciones viables que contengan el ciclo
anterior;
Elija la mejor solución entre las encontradas;
Condiciones de parada de prueba (número de iteraciones,
elementos en un subconjunto de control, límites para el
valor de la solución, etc.), ya sea que continúe o no en un nuevo
iteración.
FIN

La heurística de L&K se puede formalizar de la siguiente manera:

Página 372

366 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

• Keuristica Lin-Kernighan (1973)


1. Construya un ciclo hamiltoniano y calcule su costo c.
2. Asigne un mejor costo c_mejor ¬ c .
3. Eliminar un borde del ciclo creando una trayectoria hamiltoniana, H , mediante un criterio por definir
(por ejemplo, el borde más largo del ciclo).
4. Cree dos listas vacías: bordes salientes, L_Sai y bordes entrantes, L_Entra .
5. Incluya el último borde eliminado en L_Sai .
6. Seleccione una arista, y , entre algún vértice terminal y un vértice interno v de H , tal que e Ï L_Sai e

y Ï L_Entra .
Si no existe tal ventaja, vaya al paso 12.
De lo contrario, incluya el borde e en H y L_Entra , formando un ciclo en H.
7. Calcule la función de ganancia, g , sumando los pesos de los bordes en L_Sai menos el peso del

https://translate.googleusercontent.com/translate_f 309/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
bordes en L_Entra .
8. Retirar el borde de la adyacente v tal que la Ï L_Entra y una parte de do_ciclo recién formado. Si no
es posible encontrar el borde al que tiende el requisito y pasar al paso 12.
9. Calcule el costo, c_ind , del ciclo hamiltoniano inducido por H más la arista que une los vértices
minals.
10. Si c_ind < c_best , entonces c_best ¬ c_ind y guardar el ciclo hamiltoniano corresponde a c_ind .
11. Si g > 0, vuelva al paso 5.
12. Si c_melhor < c , vuelva al paso 3, considerando el ciclo hamiltoniano correspondiente a c_melhor
como la nueva solución de arranque. De lo contrario, END.

Paso 1. En la gráfica de la figura 8.11, sea la siguiente solución inicial: (1 4 2 3 6 5) c = 35


Paso 2. c_melhor = 35
Paso 3. Retire el borde (4, 2) de acuerdo con la figura 8.19 (a)
Paso 4. L_Sai = {}, L_Entra = {}
Paso 5. L_Sai = {(4, 2)}
Paso 6. Incluya el borde (4, 6) de acuerdo con la figura 8.19 (b)
Se forma el ciclo (4, 6, 5, 1). L_Entra = {(4, 6)}
Paso 7. g = peso de (4, 2) - peso de (4, 6) = 9 - 1 = 8
Paso 8. Retire el borde (6, 5) de acuerdo con la figura 8.19 (c) (se restaura la ruta)
Paso 9. c_ind = 32, el costo del ciclo hamiltoniano (5 1 4 6 3 2)
Paso 10. c_melhor = 32 y guarda (5 1 4 6 3 2)
Paso 11. (g> 0) vuelva al paso 5
Paso 5. L_Sai = {(4, 2), (6, 5)}
Paso 6. Incluya el borde (4, 5) de acuerdo con la figura 8.20 (a)
L_Entra = {(4, 6), (4, 5)}
Paso 7. g = (9 + 2) - (1 + 2) = 8
Paso 8. Retire (1, 4) de acuerdo con la figura 8.20 (b)
Paso 9. C_ind = 25, el costo del ciclo hamiltoniano (1, 5, 4, 6, 3, 2)
Paso 10. C_better = 25, guardia (1, 5, 4, 6, 3, 2)
Paso 11. Regrese al paso 5
Paso 5. L_Sai = {(4, 2), (6, 5), (1, 4)}
Paso 6. Incluya el borde (1, 6) de acuerdo con la figura 8.20 (c)
L_Entra = {(4, 6), (4, 5), (1, 6)}
Paso 7. 9 = (9 + 2 + 4) - (1 + 2 + 1) = 11
Paso 8. Retire el borde (4, 6), sin embargo (4, 6) Î L_Entra
Entonces, vaya al paso 12
Paso 12. c_melhor = 25 y c = 35
Entonces, regrese al paso 3, considerando el ciclo (1, 5, 4, 3, 2) como la nueva solución inicial

Página 373

PROBLEMA DE RECLAMO DEL VIAJERO 367

1 4 1 4 1 4

5 dos 5 dos 5 dos

6 3 6 3 6 3

(Los) (SEGUNDO) (C)

FIGURA 8.19 Primera parte de la ejecución del algoritmo de Lin-Kernighan.

1 4 1 4 1 4

dos dos dos


5 5 5

6 3 6 3 6 3

(Los) (SEGUNDO) (C)

FIGURA 8.20 Segunda parte de la ejecución del algoritmo de Lin-Kernighan.

• Ahorro o heurística de ahorro


Esta es la aplicación al PCV de una estrategia originalmente sugerida para el problema de enrutamiento.

https://translate.googleusercontent.com/translate_f 310/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
aincluyendo
(Clark y Wright
que es [1964]). Su aplicación
un enfoque eficiente
muy razonable para sugiere la necesidad
PCV euclidiana de un gráfico
y simétrica. completo, con
El algoritmo
se puede describir de la siguiente manera:

Heurística de economías

COMIENZO
Comenzar en el vértice k , seleccionado por algún criterio o
al azar
Considere todos los vértices conectados al vértice k , es decir,
un circuito no hamiltoniano que pasa n veces a través del nodo k .
Obtenga la lista de ahorros de la siguiente manera: S ij = c jk - c ij ,
i , j = 1, ..., n , donde S es la economía realizada si el vértice i es
conectado directamente al vértice j sin pasar por k .
Ordene los ahorros en una lista decreciente monótona;
Desplácese por la lista comenzando en la primera posición. Tratar de
conexión correspondiente al mayor S ij ;
Si inserta el borde ( i , j ) y quita el borde ( k , i ) y
( j , k ) dan como resultado una ruta que comienza en k y pasa por
otros vértices, eliminar de la lista.
De lo contrario , intente con la siguiente conexión de la lista.
Repita el procedimiento hasta obtener el ciclo hamiltoniano.
FIN

Página 374

368 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

La figura 8.21 ejemplifica el uso de herejes del ahorro en la gráfica de la figura 8.15.

ð S 45 = 11 S 36 = –2
dos
1
dos
dos S 56 = 8 S 23 = –2 1 dos

1
S 46 = 4 1 9 9 5
1
4 7
dos 1
S 25 = 4
6 9
4 3 6 6 3
S 35 = 2 1 8

3
S 34 = 2 dos

5 4 5 4
S 26 = 1 dos

Puesta en marcha Lista de economías Gráfico G 6

S 45 = 11 ð S 56 = 8
dos dos
1 dos ð S 56 = 8 1 dos ð S 46 = 4

1 1 S 46 = 4 1 1 S 25 = 4

S 25 = 4 6 3 S 35 = 2
6 9 4 3 4

S 35 = 2 S 34 = 2
dos

S 34 = 2 S 26 = 1
5 dos 4 5 dos 4
S 26 = 1 S 36 = –2

Ciclo debido a S 45 ,Ahorros ƒ Ciclo debido a S 56 "Ahorros

(Impracticable) (Impracticable) (Impracticable)


dos
ð S 46 = 4 ð S 25 = 4 ð S 35 = 2 1 dos

ð S 25 = 4 ð S 35 = 2 ð S 34 = 2 1 4

S 35 = 2 S 34 = 2 S 26 = 1 6 3
S 34 = 2 S 26 = 1 S 36 = –2
dos 3
S 26 = 1 S 36 = –2 S 23 = –2
5 dos 4
S 36 = –2 S 23 = –2

… Ahorros † Ahorros ‡ Ahorros ˆCiclo resultante de S 34

ð S 34 = 2
1 dos dos
ð S 26 = 1
dos 4
S 36 = –2

S 23 = –2 6 3

dos 3

5 dos 4

‰ Ahorros Š Ciclo debido a S 26 C = 12 (Solución óptima)

FIGURA 8.21 Etapas de la heurística de las economías.

https://translate.googleusercontent.com/translate_f 311/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

8.5 - PROBLEMAS PROPUESTOS

1 - Soluciones para PCV clásico K


Deje que el PCV simétrico se determine en el gráfico G = (N , A) , donde N = {1, 2, ..., 16} y la matriz de distancias
entre nodos se transcribe en la tabla 8.6.

Página 375

PROBLEMA DE RECLAMO DEL VIAJERO 369

TABLA 8.6 DISTANCIAS ENTRE VERTICAS DEL PROBLEMA 1

1 dos 3 4 5 6 7 8 9 10 11 12 13 14 15 dieciséis

1 3 5 14 7 11 6 3

dos 3 dos 4 9 1 18

3 dos 1 3 8 1 dos

4 dos 3 8 15

5 12 1 6 7 7 1

6 5 6 12

7 1 dos 11 1

8 7 13 6 17

9 5 1

10 1 3

11 5 9 4

12 9

13

14 dos 3

15 4

dieciséis

4 Desarrolle algoritmos para resolver el problema utilizando los siguientes enfoques:

1. Heurísticas de Bellmore y Nemhauser.


2. Heurísticas de 2 sustituciones o 2 óptimas.
3. Heurística de ahorro.

4 Implemente los algoritmos y compare los resultados del problema en cuestión.

2 - Soluciones para un caso de backhauls PCV (PCVB) K


Considerando la misma gráfica del problema 1 con B = {1, 2, 3, 15, 16} y L = {4, 5, 6, 7, 8, 9, 10, 11, 12, 13}, y no
teniendo en cuenta el requisito de la norma euclidiana:

4 Modifique los algoritmos anteriores para que puedan resolver este nuevo caso.

4 Comparar el desempeño de los métodos aplicados al problema actual con el resultado obtenido en el
problema 1, verificando el impacto, para el enfoque computacional, de la inclusión de la restricción de visitas
vértices (mejora, empeoramiento, independientemente del rendimiento y la calidad de la solución).

3 - Soluciones para un caso de PCV con una ventana de tiempo K


En la gráfica del problema 1, los tiempos de viaje entre los vértices se muestran en la tabla 8.7:

https://translate.googleusercontent.com/translate_f 312/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

Página 376

370 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

TABLA 8.7 TIEMPOS ENTRE VERTICAS DEL PROBLEMA 1

1 dos 3 4 5 6 7 8 9 10 11 12 13 14 15 dieciséis

1 1 dos 3 1 4 6 4

dos 4 4 1 1 1 1

3 1 6 1 6 6 dos

4 1 1 3 dos

5 1 dos 1 6 3 4

6 1 3 6

7 1 6 dos 1

8 3 1 8 1

9 1 dos

10 1 dos

11 8 8 dos

12 8

13

14 3 1

15 6

dieciséis

Se sabe que, para cada conjunto de cuatro nodos visitados, se cancela el tiempo de viaje acumulado. Sa-
También tenga en cuenta que ningún ciclo puede acumular más de 15 unidades de tiempo en su trayectoria, enfatizando
la regla anterior.

4 Modifique los algoritmos anteriores para que puedan resolver este nuevo caso.

4 Comparar el desempeño de los métodos aplicados al problema actual con el resultado obtenido en
problema 1, verificando el impacto, para el enfoque computacional, de la inclusión de la restricción
(mejora, empeoramiento, independientemente del rendimiento y la calidad de la solución).

Página 377

https://translate.googleusercontent.com/translate_f 313/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

9 Enrutamiento
PROBLEMAS

9.1 - INTRODUCCIÓN

9.1.1 - La importancia del problema y su contexto

Un sistema de enrutamiento puede considerarse como un conjunto organizado de medios que tiene como objetivo
satisfaciendo demandas ubicadas en los arcos o en los vértices de alguna red de transporte. O
El sistema de enrutamiento, como cualquier otro sistema operativo, se puede descomponer, desde la perspectiva de
operación, en tres partes, a saber:

4 Estratégico.

4 táctica.

4 Logística.

El principal objetivo de la logística es entregar suministros y / o servicios a puntos de consumo,


puntos de suministro (Bodin [1983]). Un sistema logístico completo debe incluir cuidados que
van desde el proceso de obtención, almacenamiento y distribución de productos a través de una red de demanda, hasta
los relacionados con el ser humano, política de inversiones y renovación de flota, etc. Un sistema
esta naturaleza es compleja y se compone de importantes subsistemas estrechamente acoplados. a pesar de
La comprensión del sistema requiere una visión global, es conveniente analizarlo a través de
subsistemas para reducir la complejidad de los modelos de solución. Como una regla,
Los aspectos del sistema los decide el empresario, independientemente de un modelo formal.
Por ejemplo, es común que se tomen decisiones sobre la elección de ubicaciones para la instalación de depósitos o
Las fábricas se toman en cuenta los argumentos derivados de la estrategia comercial y las oportunidades.
(posibles exenciones arancelarias, costo y tamaño del terreno, disponibilidad de financiamiento,
seguridad, etc.) y preceden al modelo de distribución de los artículos fabricados. Entre otras, decisiones
Los enfoques estratégicos involucran los temas de la Figura 9.1.
Las decisiones estratégicas suelen tener un impacto en todo el sistema y tienen un efecto duradero.
ro. Es interesante notar que decisiones estratégicas erróneas producirán serias dificultades para
ture el funcionamiento y optimización del sistema. Dado el marco general, dependerá del nivel táctico del
las decisiones que definirán las áreas de servicio, el dimensionamiento de la flota, el sistema de asignación de tres
vehículos y turnos de trabajo. Circunstancialmente el número de garajes y su ubicación
sistema de mantenimiento, así como las decisiones de almacenamiento aún pueden ser
el nivel táctico.

Página 378

372 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

Decisiones
Estratégico

þ Mercado operativo
þ Dimensiones de la calidad
þ Ubicación de fábricas y depósitos
þ Tipos de vehículos
þ Restricciones legales

FIGURA 9.1 Decisiones estratégicas para el problema de enrutamiento.

Decisiones

https://translate.googleusercontent.com/translate_f 314/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
Táctica

þ Número de rutas
þ Números de vehículos
þ Contratación de mano de obra
þ Régimen de trabajo
þ Ubicación de los garajes
þ Nivel de existencias

FIGURA 9.2 Decisiones tácticas para el problema de enrutamiento.

Normalmente, las decisiones sobre el funcionamiento de la flota de vehículos y el uso de


el trabajo se dejará al nivel operativo. La principal preocupación a nivel operativo será
proporcionando un plan económico y flexible para satisfacer la demanda de la red. Esta exactamente adentro
nivel operativo en el que se definirán los problemas tradicionales de generación de rutas para vehículos (PRV).
Sin embargo, a medida que avanza el estado de la técnica, los problemas a nivel táctico y estratégico tienden a
incorporar a las tradicionales PRV enriqueciendo los modelos y presionando para algoritmos más eficientes.
Los elementos de entrada más probables de las PRV tradicionales son:

4 Clientes atendidos por depósitos.

4 Demanda del cliente.

4 El tamaño de la flota asignada a cada depósito.

4 El tipo de vehículo utilizado (capacidad, velocidad, autorización de transporte, etc.).

4 Las reglas que definirán la carga / descarga.

4 La posibilidad de utilizar equipos de alquiler.

4 Capacidad de llamadas, costo operativo, disponibilidad, etc.

Con esta información en mente, el objetivo de la planificación será establecer la rotación del vehículo y
la programación ("programación") de actividades que conducen a minimizar el costo de la actividad.

Página 379

PROBLEMAS DE RUTA 373

En este punto, es pertinente enfatizar que el establecimiento de una función objetivo adecuada
no es una tarea trivial. El objetivo de reducir los costes puede perseguirse reduciendo:

4 Plazos de entrega (servicios de emergencia, productos perecederos, etc.).

4 Rutas a seguir (combustible, mantenimiento, tiempo de funcionamiento, etc.).

4 Asignación de mano de obra.

4 Riesgos de accidentes o averías.

4 Número de vehículos.

O rediseñar:

4 Descansos laborales (evitar atascos, tarifas de estacionamiento, etc.).

4 Carga (optimizando la carga / ruta / medio de transporte).

4 La asignación de medio de transporte × tarea (optimizando la carga / ruta / medio de transporte).

4 La política para satisfacer la demanda de los clientes. Tenga en cuenta que la demanda puede ser un
variable de naturaleza estocástica. El "valor de un cliente" puede ser una variable compuesta que
incluye desde la pérdida del cliente y el consiguiente avance de la competencia, hasta la dificultad de su
recuperación futura.

4 Lapolítica de control de inventarios e inversión en instalaciones y medios diversos (compra o


alquiler de vehículos, cronograma de mantenimiento y disponibilidad de flota, etc.).

Tales elementos intermedios sugieren que los problemas más complejos de generación de rutas para vehículos
suelen ser problemas multiobjetivo. También es importante enfatizar la importancia, dentro de la
Sistema de enrutamiento general, del subproblema de distribución. Esta importancia se debe, entre otros factores
tors, al hecho de que la distribución implica altos costos. Hollander (1987) muestra que un retraso en
La entrega de productos en el comercio internacional contribuye al costo final del producto con un

https://translate.googleusercontent.com/translate_f 315/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
5% por mes de retraso. Esta observación de Hollander es pertinente, ya que un ciclo en una ruta
El desarrollo marítimo puede implicar dos o más meses. Bodin (1983) muestra que la distribución física de
productos aporta alrededor del 16% del costo final del artículo. Por otro lado, ciertos productos carecen
distribución eficiente por razones económicas y de seguridad. Ejemplos de casos
anteriormente expuestos son medicamentos y combustibles.
Se ha prestado atención a los diversos problemas anidados bajo el tema de las rutas de vehículos.
de muchos investigadores en los últimos 30 años. Solo en los últimos 15 años se ha resuelto el problema
diseñado, mediante algoritmos exactos, para instancias del orden de 30 puntos de demanda (o nodos en la red)
forma Bodin (1983). Con la mejora en el rendimiento de los medios computacionales y la aparición de
nuevos modelos y enfoques, se encuentran en la literatura varios informes de buenos resultados, especialmente
para casos específicos (Desrosiers [1984]; Laporte [1986] y [1987]; Solomon [987]; Desrosiers et al. [1992];
Bianco y col . [1994]; Dumas et al . [1995]; Fisher y col . [1997]; Fischetti [1997]; Laporte y col. [2000]).

9.1.2 - Principales aplicaciones prácticas de PRV

Este problema tiene un número extraordinario de aplicaciones prácticas, ya que típicamente implica una
serie de situaciones reales que afectan principalmente a la industria, el comercio, el sector servicios, la seguridad
seguridad, salud pública y ocio. Entre otros, destacan los siguientes:

• Distribución de periódicos (Golden y Magnanti [1977]; Dillmann et al . [1996]).


• Distribución de productos manufacturados (Perl y Daskin [1985]).
• Distribución de varios productos (Dantzig y Ramser [1959], Klots et al . [1992]).

Página 380

374 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

• Distribución de bebidas (Golden y Wasil [1987]; Eibl et al. [1994]).


• Distribución de valores (Lambert et al . [1993]).
• Distribución de productos químicos (Ball et al. [1983]).
• Transporte escolar (Newton y Thomas [1974], Li y Fu [2002]).
• Recolección de basura (Beltrami y Bodin [1974], Kulcar [1996], Angelelli y Speranza [2002]).
• Entrega de correspondencia (Frederickson [1978]).
• Lectura de contadores eléctricos (Stern y Dror [1978]).
• Distribución de pan (Derigs y Grabenbauer [1993]).
• Recolección de caucho (Nambiar et al . [1989]).
• Rutas de helicópteros (Timlin y Pulleyblank [1990]).
• Enrutamiento de líneas aéreas (Marsten y Shepardson [1981] y Marsten et al . [1979], Yan y Tu
[1997]).

• Sistemas de transporte público urbano (taxi, autobús, metro) (Ceder y Stern


[1981]).

• Servicios de emergencia (Daskin [1987]).


• Distribución de productos derivados del petróleo (Ronen et al . [1987], Brown y Graves [1981]).
• Programación de sondas de producción (Goldbarg, et al. [2002]).
• Distribución de gas (Bell et al . [1983]).
• Encaminamiento entre celdas de fabricación flexibles (Finke y Kusiak [1985]).
• Transporte de piedras (Schneider (1985)).
• Entrega de correspondencia bancaria (Malmborg y Simons [1989]).
• Distribución de alimentos (Cassidy y Bennett (1972), Bartholdi et al . [1983]).
• Sistemas de protección contra incendios (Marianov y ReVelle [1992]).
• Distribución de material fotográfico (Solot et al . [1990]).
• Patrullas policiales y de seguridad (Larson [1972], Calvo y Cordone [2003]).
• Rutas de buques de largo recorrido (petroleros), cabotaje y logística (Brown et al. [1987],
Ronen [2002]).

• Distribución de vagones de ferrocarril (Haghani [1991]).


• Enrutamiento de auditores bancarios (Castellano y Bornstein [1989]).

https://translate.googleusercontent.com/translate_f 316/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
• Operación de vehículos de limpieza de hielo en calles y carreteras (Eglese [1992]).
• Limpieza de calles con vehículos escobas (Eglese [1991]).
• Mantenimiento de ascensores (Blakeley [2003]).
• Distribución y recolección de leche (Basnet et al . [1993], Sankaran y Ubgade [1994]).
• Programación de sistemas rollon-rollof (Bodin et al. [2000]).
• Ensamblaje de fragmentos de ADN (Pevzner et al . [2001]).

Página 381

PROBLEMAS DE RUTA 375

• Movimiento de plotter láser (Ghiani e Improta [2001]).


• Gestión de contenedores (Nishimura et al. [2004]).
• Entrega de pizza, comida rápida, comida congelada, etc. (Golden et al, [2001], Tarantilis y Kiranoudis
[2002]).

• Mantenimiento de boyas marinas (Cline et al. [1992]).


• Planificación del transporte de automóviles en camiones (Pape [1988]).
• Control de plagas (Solomon et al. [1992]).
• Transporte de azúcar a granel (van Vliet et al. [1992]).
• Cultivo de ostras (Wang et al. [1996]).
• Enrutamiento por satélite (Lee et al. [2003]).
• Justo a tiempo (Vaidyanathan et al. [1999]).
• Cosecha de caña de azúcar (Cruz [1998]).
• Explotación de pozos de petróleo no emergentes (Goldbarg et al. [2004]).
• Planificación de lotes rodantes (Chen et al. [1998]).
• Corte de chapa (Manber e Israni [1984]).
• Recolección de madera sobrante (Alves y Carvalho [2001]).
• Distribución de hormigón urbano.
• Diseño de anillos en redes de telecomunicaciones.
• Robots de enrutamiento en fabricación.
• Transporte de bienes muebles (mudanzas).
• Enrutamiento de paquetes en redes informáticas.
• Enrutamiento de flujos de comunicaciones en redes de telecomunicaciones.

9.2 - PROBLEMAS DE RUTA DE VEHÍCULOS

9.2.1 Taxonomías
Los problemas de generación de rutas para vehículos abordan básicamente la determinación de secuencias de visualización
que pretenden cumplir una determinada función objetivo. Las visitas pueden asociarse
conexiones (bordes) o puntos de visita (nodos) del gráfico que representa las posibles conexiones entre
puntos de visita (o puntos de conexión entre los bordes).
Los problemas de generación de rutas para vehículos se encuentran entre los más complejos en el área de optimización.
combinacional. Debido a la gran cantidad de variables, diversidad de restricciones y objetivos presentados,
se lleva a cabo un examen cuidadoso de la taxonomía para su mejor comprensión. Una de las taxonomías
El clásico es propuesto por Bodin y Golden (1981). Según los autores, el problema de enrutamiento de video
Los ículos se pueden clasificar de acuerdo con los siguientes criterios:

1. Es hora de servir un nudo o lazo en particular.


- Hora especificada y preestablecida.
- Ventana de tiempo.

https://translate.googleusercontent.com/translate_f 317/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

Página 382

376 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

2. Número de hogares
- Una casa.
- Más de un hogar.

3. Tamaño de la flota de vehículos


- Un vehículo.
- Más de un vehículo.

4. Tipo de flota disponible


- Homogéneo.
- Heterogéneo.

5. Naturaleza de la demanda y parámetros


- Determinista.
- Estocástico.

6. Ubicación de la demanda
- En los vértices.
- En los arcos.

7. Gráfico de sustrato
- Dirigido.
- No dirigido.
- Mezclado.

8. Restricciones de capacidad del vehículo


- Todo sujeto a las mismas restricciones.
- Diferentes restricciones.

9. Tiempo de enrutamiento
- Lo mismo para todos los vehículos.
- Tiempos diferentes.
- Sin restricciones de tiempo.
10. Costos
- Variables (asociadas a la ruta elegida).
- Fijo.

11. Operación
- De entrega.
- Recoger.
- Ambos.

12. Propósito
- Minimizar costes fijos.
- Minimizar los costes operativos en la ruta.
- Minimizar el número de vehículos.

13. Restricciones a la capacidad de proa


- Impuesto en todos los arcos.
- Impuesto sobre un subconjunto de arcos.
- Sin restricciones.

14. Otros

Página 383

PROBLEMAS DE RUTA 377

Otra forma de clasificar los problemas de enrutamiento es propuesta por Maganti (1981) y reforzada
impulsado por otros autores como Eiselt et al. (1995a y 1995b) y Letchford (1996), separando básicamente las
problemas de enrutamiento clásicos en gráficos de las otras variantes, más típicamente centrados en el
manejo de casos prácticos y privados. En este sentido, los problemas de enrutamiento en general pueden
podría clasificarse en dos clases principales: enrutamiento de gráficos y enrutamiento de vehículos
sí mismos. La clase general de problemas de enrutamiento de gráficos estaría constituida por los siguientes
subclases:
https://translate.googleusercontent.com/translate_f 318/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

1. Problema de enrutamiento en nodos (asociado a ciclos hamiltonianos).

2. Problemas de enrutamiento de arco (asociados con ciclos eulerianos).

Los problemas de enrutamiento en los nodos se presentan con variantes del problema del vendedor
cena que engloba principalmente los casos descritos en el capítulo 8 de este libro.
Los problemas de enrutamiento de bordes (o arcos) pueden ser del tipo habilitado o no habilitado.
Los principales problemas no calificados, la clase más común, se destacan en el ítem 9.2.2.

9.2.2 Problemas de enrutamiento en arcos no calificados: descripción general


En la literatura se describen al menos los siguientes problemas de enrutamiento de borde:

9.2.2.1 El problema del cartero chino (PCC)


Uno de los problemas más antiguos de la teoría de grafos es la determinación de un paseo en un
grafica G que contiene cada borde de G exactamente una vez (ver Karp (1975)). Tal circuito se llama
Euleriano, porque Euler fue el primero en informar un estudio sobre su determinación
(en el año 1736). Algunos autores incluso afirman que la teoría de grafos nació de esta
problema.
El CCP es un problema de optimización que tiene como objetivo cubrir todos los arcos con un paseo (o recorrido )
gráfico, minimizando la distancia total recorrida. El recorrido del cartero se distingue del circuito (o
Ciclo euleriano porque se permite, si es necesario, la repetición de aristas. Claramente si el
gráfico tiene circuitos eulerianos, tales circuitos resuelven el problema. El PCCh es un ejemplo de
problema de enrutamiento que admite solución en tiempo polinomial (Edmonds y Johnson [1973]). El Fi-
La figura 9.3 (b) representa la solución para un ciclo euleriano en la gráfica representada en la figura 9.3 (a). La CA-
la sección cerrada 1-2-6-7-2-3-4-5-1-6-8-1 es una solución para el caso.

dos 3
dos 3

7
7
1 6
1 6

8 8

5 5
4 4

(a) Gráfico G (b) Camino euleriano

FIGURA 9.3 Camino euleriano en el gráfico G.

Los siguientes trabajos presentan enfoques para resolver el problema:

Página 384

378 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

TABLA 9.1 TRABAJOS PARA RESOLVER EL PROBLEMA DE LA CARTERA CHINA

Año Investigador Trabajo

1962 Mei-Ko Descripción del problema

1965 Edmonds Algoritmo de solución

1995 Eiselt y col. Varios modelos de solución y algoritmos

La literatura informa variaciones del problema de enrutamiento en bordes que ni siquiera conservan
características polinomiales de la solución. Las principales variantes del problema son:

• El problema del cartero chino no dirigido (PCCND)


La solución del problema del cartero chino en grafos no orientados y eulerianos se reduce a la
el circuito euleriano. Un gráfico conectado G es euleriano cuando tiene un número par de aristas
accidentes en cada nodo. Si la gráfica no es euleriana, eventualmente será necesario pasar por algunos
bordes más de una vez para que el recorrido completo sea posible.
Kwan Mei-Ko fue el primero en informar el problema así formulado en una publicación fechada
1962 (Mei-Ko [1962]) en “Matemáticas chinas”. Por su origen, el problema acabó siendo
socavado como el problema por el cartero chino. Considerando una gráfica G = (N, A), el problema puede ser
formulado de la siguiente manera:

https://translate.googleusercontent.com/translate_f 319/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

norte norte

(PCC1) Minimizar z = ∑∑ c ij x ij
= 1
yo j= 1

sujeto a:
norte norte

∑ x ji - ∑ x ij = 0 i = 1, ..., n (9,1)
j= 1 j= 1

x ij + x ji ³ 1 "( i, j ) Î A (9,2)

x ij ³ 0 y entero (9,3)

Dónde:
x ij º número de veces que se atraviesa la arista ( i , j ) de i a j ;
c ij º longitud o el costo del borde ( i , j ).

En el modelo matemático propuesto, las restricciones 9.1 garantizan la continuidad del recorrido y
9.2 que no queden bordes fuera.
Como en todo grafo conectado hay un número par de nodos de grado impar, si lo llamamos d i o
grado del nodo i y por | E | = m el número de aristas, entonces ∑ d yo = ∑ d i + ∑ d i = 2 m , ya que cada borde
yo yo∈ extraño yo∈emparejo

tiene dos nodos extremos. Como la primera parte de la suma es par, la segunda será par. Haciendo
note por N i el conjunto de nodos de grado impar en G y por N p el conjunto de nodos de grado par, y también por
N el conjunto de todos los nodos, ya que el número de nodos de grado impar es par, | N i | es par. Utilizando
este hecho, podemos dividir N i en dos conjuntos y formar k = 1/2 | N i | caminos entre pares de nodos
distinto. Los bordes (aquí llamados E *) contenidos en estas rutas se agregan al gráfico original
Diario G como arcos artificiales, dando un gráfico G i ( E *). El problema luego se reduce a determinar la k
caminos que conectan los impares K pares de nodos (Christofides [1976]). El enfoque de Christofides es
transformar el PCC en un problema de determinación de un ciclo euleriano en un gráfico conveniente
luego expandido. La figura 9.4 aclara el proceso de obtención de un gráfico tan aumentado
de G i ( E *).

Página 385

PROBLEMAS DE RUTA 379

1 dos 1 dos

6 5

3 4 3 4

(a) Gráfico G (b) Nodos impares

Serie 1 1 dos 1 dos Serie 1

Conjunto 2 3 4 3 4 Conjunto 2

(c) =k2 posibles articulaciones

1 dos 1 dos

6 5 6 5

3 4 3 4

(d) Gráficos aumentados

FIGURA 9.4 Proceso de obtención de G i (E *).

El gráfico G de la figura 9.4 se transforma en un gráfico euleriano agregando aristas. El are-


Los pasos 1-3 y 2-4, así como 1-4 y 3-2 representan los caminos más cortos entre estos pares de vértices.
La solución al problema sería, entre las dos posibles alternativas, la ruta total más barata.
La solución exacta a este problema se puede obtener en O ( n 3 ) como lo muestra Papadimitriou (1992).
Edmonds y Johnson (1973) presentan un interesante algoritmo para la solución del PCC mediante emparejamiento (en
pareo). Podemos resumir el algoritmo de la siguiente manera:

Algoritmo del cartero chino

https://translate.googleusercontent.com/translate_f 320/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

COMIENZO
Lea el gráfico G = (N, A);
Si todos los nodos en G, el gráfico original, tienen un grado par
luego determine un ciclo euleriano en G y End.
Organice una gráfica K n de la siguiente manera:
Reúna todos los vértices de grado impar en el gráfico K n y
asociar con cada par de vértices i y j en el gráfico, una arista
( i , j ) con un peso igual al camino más corto que conecta i con j
el gráfico G .
Determine la coincidencia mínima de 1 en K n , M * .
Para cada borde que pertenezca a M *, asocie un nuevo
borde en G en la trayectoria mínima que representa,
obteniendo una gráfica G a .
Determine la solución del cartero chino que se representa
por un ciclo euleriano en G a
FIN

Página 386

380 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

Las figuras 9.5 y 9.6 ejemplifican el proceso descrito en el algoritmo del cartero chino. La solución para el
El problema con el gráfico de la Figura es la ruta: AêBêFêEêAêDêEêFêCêEêCêBêA con C = 19.

LA segundo LA segundo
1 4
1
5
dos
re 1 re
C C
3 3
1
Y F Y F

(a) Gráfico original (b) Vértices de grados impares

LA segundo
re 1 LA segundo
1
C
dos 3
re dos 3
C

3
Y F 3
Y F

(c) Caminos más cortos desde A (d) K 4

FIGURA 9.5 Obtención de K 4 .

En el caso del grafo orientado, una condición suficiente para la existencia del circuito euleriano es que el
la mitad interior de cada nodo es igual a la mitad exterior. Para solucionar el problema determinaremos
socavar dos conjuntos de nodos S y D . El primero corresponde a los nodos determinados de modo que
grado interno d ( i ) + excede el semigrail externo d (i) - (detalles del concepto de semigrau en el anexo), y el
segundo, de lo contrario. Podemos construir un gráfico bipartito con los nodos s j Î S y d tiene k Î D . Cada distancia
c jk entre dos nodos de este gráfico representará la ruta más corta entre el nodo s j y el nodo s k en el gráfico original. Tal
distancias se pueden determinar mediante la aplicación de un algoritmo de camino más corto en G . Si
hay un nodo s j que no tiene manera de conectar que a todos los nodos s k , entonces el CCP no tiene solución
viable. La figura 9.6 demuestra el hecho de una gráfica dirigida.
De hecho, la solución del PCC requiere la solución de un problema de emparejamiento 1- para la formación del
grafica G i ( E * ) y, posteriormente, la solución de un problema de circuito euleriano Como se muestra en el Capítulo
Capítulo 7, el problema de determinar 1 coincidencia en un gráfico bipartito (conjuntos S y D ) se puede resolver
destacado como un caso del problema de transporte en aproximadamente O ( n 2,5 ) operaciones, donde n = | N |.
Luego, asociar s j a puntos de oferta y d j a puntos de demanda, lo que constituye un problema
sistema de transporte según la siguiente formulación:

1 dos

-
3 4 d (4) = 2
+
d (4) = 0

- S = {5}
d (4) = 2
+
d (4) = 0 5 D = {4}

https://translate.googleusercontent.com/translate_f 321/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

FIGURA 9.6 PCC inviable .

Beltrani y Bodin (1982) también presentan una interesante heurística para la solución de este
blema.

Página 387

PROBLEMAS DE RUTA 381

LA segundo LA segundo

re
C C

F Y F

(a) Coincidencia de M en K 4 (b) Rutas asociadas

LA segundo

re
C

Y F

(c) Solución final

FIGURA 9.7 Solución final.

• El problema del cartero dirigido por chinos (PCCD)


Este es el caso del CCP con bordes dirigidos. Los trabajos de la Tabla 9.2 presentan enfoques
soluciones clásicas al problema.

TABLA 9.2 TRABAJOS PARA RESOLVER EL PCCD

Año Investigador Trabajo

1973 Edmonds y Johnson Algoritmo O ( n 3 )

1974 Beltrami y Bodin Algoritmo O ( mn 2 )

1988 Lin y Zhao El ( kn 2 ) flujo en redes

• El problema del cartero chino con bordes mixtos (PCCND)


Este es el caso del PCC con aristas mixtas. Este problema es NP-Arduo. La Tabla 9.3 presenta algunos
trabajo asociado al PCCND.

TABLA 9.3 TRABAJOS PARA RESOLVER EL PCCND

Año Investigador Trabajo

1973 Edmonds y Johnson Heurísticas Mix-1

1979 Frederickson Heurísticas Mix-2

1979 Kappauf y Koehler Programa completo

1979 Minieka Transformación en un problema de flujo

1984 Christofides y col. Algoritmo exacto

1993 Ralphs Resultados teóricos

1995 Pearn y Liu Modificaciones de Mix-1

1996 Nobert y Picard Planes de corte (Gomory)

Página 388

https://translate.googleusercontent.com/translate_f 322/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

382 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

TABLA 9.3 CONTINUACIÓN

Año Investigador Trabajo

1998 Yan y Thompson cama y desayuno

1998 Raghavachari y Veerasamy Algoritmos heurísticos

1999 Pearn y Chou Modificaciones Mix-1 y Mix-2

2002 Corberán et al. Algoritmo GRASP

2002 Yaoyuenyong y col. Algoritmo heurístico

• El cartero chino calificado (PCCC)


Este problema se refiere a definir un conjunto de rutas para un conjunto S = {1, ..., s } de carteros
que debe satisfacer la demanda suscitada en el gráfico G = ( V, E ). Golden y Wong (1981) formulan esto
problema de enrutamiento como un problema de flujo de la siguiente manera:

(PCC3) Minimizar z = ∑∑∑ PAGSPAGS


cxij ij
yo∈V j V p ∈S ∈

sujeto a:
∑ PAGS
X Ji - ∑ PAGS
X ij = 0 " i Î V, p Î S (9,4)
j ∈V j ∈V

s ⎡ q ij ⎤
∑ ( l ijPAGS+ l PAGS
Ji
)=⎢ ⎥ "( i, j ) Î E (9,5)
= 1 ⎢ w ⎥
PAGS

PAGS PAGS
X ij ≥ l ij "( i, j ) Î E , p Î S (9,6)
norte
∑∑ PAGS
lqij
PAGS
ij
≤ w pÎS (9,7)
yo∈ V j V ∈

∑ PAGS
Fij - ∑ PAGS
FJi = ∑ l ij
PAGS
" i Î E \ {1}, p Î S (9,8)
j ∈V j∈
V j∈
V

PAGS
Fijp £ ( n 2 ) x ij
"( i, j ) Î E , p Î S (9,9)

Fijp ³ 0 pÎS (9,10)

q ij > 0 "( i, j ) Î E (9,11)


PAGS
Fij , x ijp Î {0, 1} "( i, j ) Î E , p Î S (9,12)

Dónde:
C = [ c ij ] º matriz de longitud de arco.
Q = [ q ij ] º matriz de las demandas que se despiertan en los arcos y que deben ser atendidas por los carteros.
w º de la capacidad de los carteros, y W ³ max q ij "( i , j ) Î E .

l ijp º variable binaria que asume un valor de 1 cuando el cartero p atiende la demanda del arco ( i , j ), y 0 en el caso

contrario.
p variable de flujo º que asume un valor positivo si x PAGS pÎ Â+.
Fij ij = 1, f ij

El depósito central que recibirá el índice 1.

Las restricciones (9.4) garantizan la continuidad de las rutas de los carteros. Las restricciones (9.5) garantizan
que se considera la asistencia de carteros en solo uno de sus pases por el arco. Restricciones
(9.3) requieren que el cartero pase por los arcos a los que está asignado para atender. La restricción (9.4)

Página 389

PROBLEMAS DE RUTA 383

vela por que los servicios de los distintos carteros no superen su capacidad. Restricciones (9.5)
asegurarse de que el flujo de servicio sea el mismo que el calculado mediante la asignación de trabajadores postales.
Golden y Wong (1981) demostraron que este problema es NP-Arduo y presentan un estudio sobre
sobre la obtención de límites más bajos para el problema a través de 1 emparejamiento . En este trabajo destacamos
siguiente algoritmo para resolver el problema:

Algoritmo de Christofides

https://translate.googleusercontent.com/translate_f 323/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
COMIENZO
Lea el gráfico G = ( N , A );
Realiza todos los moños servidos en un circuito individual.
Comenzando con el circuito más grande disponible, verifique que un
arco de un circuito más pequeño puede ser servido por un
circuito más grande.
Sujeto a las restricciones del problema, intente componer dos
circuitos para obtener el mayor ahorro posible.
Repita la composición hasta que no haya composición que
ahorros para la solución;
FIN

El algoritmo se describe vagamente, según su autor, exactamente para permitir la absorción, en


cada paso, de varios procedimientos de optimización que ya existen. El paso 3, por ejemplo, puede ser
implementado con la ayuda de la heurística de Clark y Wright (1964).

• El problema del k-cartero chino (k-PCC)


Este es el caso del PCCh con al menos k carteros, k > 1, trabajando juntos. La instancia es una
gráfico G = ( V , E ) con vértice inicial s Î V . La solución es una colección de k ciclos que contienen el vértice inicial
s, de modo que colectivamente cada borde se atraviese al menos una vez. El objetivo es minimizar
la duración de los k ciclos formados. Pearn (1992) y Zhang (1992) presentan algoritmos de solución
al problema.

• El problema del k-cartero chino Min-Max (MM-k-PCC)


Es el caso del k-Postman chino para encontrar k rutas donde se minimiza el borde mayor. Ahr y King
nelt (2002) presentan heurísticas basadas en el procedimiento de Frederickson, Hecht y Kim (1978).

• El problema del cartero en el viento (PCW) - Windy Postman


Este es el caso del PCC en el que la matriz de costos del gráfico G es asimétrica y no necesariamente
se encuentra con la desigualdad triangular. La dirección de viaje más cara se llama "contra el viento" y el
más barato "a favor del viento". La tabla 9.4 presenta algunos trabajos relacionados con el problema

TABLA 9.4 FUNCIONES DE SOLUCIÓN PARA PCW

Año Investigador Trabajo

1979 Minieka Descripción del primer problema

1984 Guan Heurística que transforma PCW en PCC - O ( n 3 )

1989 Ganar Heurística de flujo mínimo O ( n 3 )

1992 Grötschel y Win Algoritmo del plan de corte

1994 Pearn y Lin Heurísticas que alteran las heurísticas de Guan y Win

Página 390

384 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

• El problema del cartero chino jerárquico (PCCH)


En esta variante, el cartero chino hace su recorrido dentro de grupos de arcos obedeciendo a relaciones de
precedencia entre grupos. El modelo tiene aplicación en la limpieza y corte de nieve. El problema
ma se resuelve en tiempo polinomial. La tabla 9.5 resume algunos trabajos relacionados con el tema.

TABLA 9.5 FUNCIONES DE SOLUCIÓN PARA PCW

Año Investigador Trabajo

1984 Manber e Israni Aplicación para cortar chapa

1987 Dror y col. Formalización del problema - algoritmo O ( kn 5 )

1995a Eiselt y col. Reformulación del problema

2000 Ghiani e Improta Algoritmo basado en emparejamientos y caminos El ( k 3 n 3 )

2002 Korteweg Algoritmo lexicográfico O ( kn 4 )

2004 Cabral y col. Formulación vía cartero rural

9.2.2.2 El problema del cartero rural (PCR)


El cartero rural es una variante del cartero chino en el que el conjunto de aristas que debe ser obligatorio
mente recorrida es un subconjunto de bordes de un gráfico G . El problema pretende encontrar el camino
menor costo en G que viaja a través de ese subconjunto de aristas. El problema clsico de Postman Ru-

https://translate.googleusercontent.com/translate_f 324/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
ral se formuló en gráficos no dirigidos. La tabla 9.6 presenta trabajos que abordan el problema.

TABLA 9.6 TRABAJOS DE SOLUCIÓN PARA PCR

Año Investigador Trabajo

1974 Orloff Descripción del problema

1988 Bola y Revista Heurística de inserción

1995 Eiselt y col. Algoritmo heurístico

1995 Pearn y Wu Algoritmos basados en Chistofides et al. 1986

1996 Lee y col. Algoritmo genético

1998 Fernandez de Córdoba et al . Algoritmo heurístico

1998 Cook y col. Algoritmo genético

1998 Kang y Han Algoritmo genético

1999 Hertz y col. Algoritmos heurísticos

2000 Ghiani y Laporte Algoritmo B & Cut

2003 Fernández et al. Formulación y límites

El problema es NP-Arduous y admite al menos las siguientes variantes:

• El problema del cartero rural dirigido (PCRD)


Este es el caso en el que el cartero rural se desarrolla sobre una gráfica dirigida. Por el problema
el trabajo de Christofides et al. (1986).

• El problema del cartero rural con bordes mixtos (PCRM)


En esta variante, el cartero rural se desarrolla en un gráfico mixto. Para el problema, destacamos el
obras que se muestran en la Tabla 9.7.

Página 391

PROBLEMAS DE RUTA 385

TABLA 9.7 FUNCIONES DE SOLUCIÓN PARA PCRM

Año Investigador Trabajo

1996 Anily et al. Estudio de caso

2000 Corberán et al. Algoritmo tabú

2002 Corberán et al. Cartero rural con sanciones

• El problema periódico del cartero (PCRP)


El caso periódico se aborda en el trabajo de Ghiani et al. (2003) que propone un algoritmo heurístico de
solución.
La literatura destaca el caso del Cartero Rural Cualificado (PCRC). El cartero rural
dinámica (PCRD) se aborda en Moreira et al. (2001).

9.2.2.3 El problema de la carretilla elevadora: transelevador mínimo (PMSC)

Es un enrutamiento de borde en un gráfico G = ( V , E , A ) en el que el objetivo es determinar, a partir del


quitar de un vértice s Î V un circuito de longitud mínima que pase al menos una vez por todos
los arcos E , que sirven a sus direcciones de tráfico. No hay restricciones a la repetición de versiones.
tices, arcos o aristas del circuito. La tabla 9.8 presenta algunos trabajos relacionados con el problema.

TABLA 9.8 FUNCIONES DE SOLUCIÓN PARA PMSC

Año Investigador Trabajo

1978 Frederickson y col . Descripción del problema y algoritmo aproximado de 9/5

1995 Burkard y col. Algoritmo de flujo en redes

1999 Righini y Trubian Límites al problema

2002 Hansen y Clausen Aplicación real

2003 Coja-Oghlan y col. Ampliación para el caso de las redes de transporte

9.2.3 Problemas de enrutamiento de arco: descripción general

9.2.3.1 Ruta de vehículos calificados (flota homogénea) - PRVC

https://translate.googleusercontent.com/translate_f 325/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
La literatura de los últimos años ha abordado el problema de las rutas de los vehículos principalmente en su
versión sin limitación de capacidad y número de vehículos (Golden y Skiscim [1986]; Van Bredam
[1996]). Actualmente, la mayor parte del trabajo se centra en el caso entrenado. El problema del enrutamiento
el número de vehículos calificados se informa con una flota de m vehículos de capacidad W y se basa en puntos
al garaje. En este caso, el objetivo es atender un conjunto de puntos de demanda ubicados en el
vértices del gráfico G = ( N , A ) para minimizar la longitud total de las rutas de los vehículos. La mesa
9.6 muestra algunos trabajos relacionados con el tema.

TABLA 9.9 FUNCIONES DE SOLUCIÓN PARA PRVC

Año Investigador Trabajo

1959 Dantzig y Ramser Obra de referencia para la zona

1973 Laporte Varias técnicas de solución

1980 Psaraftis Programación dinámica

1980 Crowder y Padberg cama y desayuno

Página 392

386 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

TABLA 9.9 CONTINUACIÓN

Año Investigador Trabajo

1981a Christofides y col. Relajación y dualidad lagrangiana

1981 Christofides Teoría de grafos

1981b Christofides y col. Teoría de grafos

1983 Laporte Varias técnicas

1984 Desrosier y col. Generación de columnas

1985 Fleischmann Planes de corte

1985 Laporte y col. Eliminación de subtours de PCV

1985 Salvelsbergh Busqueda local

1986 Desrosiers y col. Programación dinámica

1987 Laporte Varias técnicas

1989 Agarwal y col. Generación de columnas y B&B

1990 Haouari Generación de columnas

1990 Salvelsbergh Busqueda local

1991 Dumas et al. Generación de columnas

1991 Padberg y Rinaldi Rama y corte

1992 Desrochers et al . cama y desayuno

1994 Pescador Teoría de grafos

1995 Molinero Algoritmos exactos

1996 Vigo Algoritmos heurísticos

1996 Renaud y col. Heurística de pétalos

1997 Kohl y Madsen Relajación y dualidad lagrangiana

1998 Rodríguez Heurística de búsqueda local

1999 Barbarosoglu y Ozgur Búsqueda tabú

1999 Bullnheimer y col. Algoritmo de colonia de hormigas

2000 Hamacher y Hochstättler, Técnicas de agrupamiento

2000 Backer y col. Programación de restricciones y metaheurística

2000 Campos y Mota Algoritmos heurísticos

2001 Asano Enrutamiento de árboles

2001 Charikar Varios algoritmos

2001 Breedam Heurística y metaheurística

2002 Toth y Vigo Métodos exactos y relajaciones.

2002 Cordeau y col. Trabajo integral

2002 Letchford y col. Técnica de arranque múltiple

2003 Ralphs B & Cut

2003 Baker y Ayechew Algoritmos genéticos

2003 Jaszkiewicz y Kominek Busqueda local

2003 Tavares y col. Influencia de la representación para algoritmos evolutivos

2003 Toth y Vigo Algoritmo granular de tabú

2003 Achuthan y col. B & Cut

2004 Prins Algoritmo evolutivo

https://translate.googleusercontent.com/translate_f 326/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
2004 Tarantilis Algoritmo tabú

2004 Reimann Colonia de hormigas

Página 393

PROBLEMAS DE RUTA 387

9.2.3.2 Rutas para vehículos con múltiples depósitos - PRVMD


En esta variante, los vehículos pueden salir de varios depósitos. La tabla 9.10 presenta algunos estudios
refiriéndose al problema.

TABLA 9.10 TRABAJO DE SOLUCIÓN PARA PRVMD

Año Investigador Trabajo

1993 Dell'Amico y col. Algoritmo heurístico

1993 Chao y col. Algoritmo híbrido

1997 Filipec y col. Algoritmo heurístico

1998 Desaulniers y col. Depósito múltiple, ventana de tiempo y costo de espera

1998 Cordeau y col. Algoritmo tabú

1999 Modares et al Algoritmo de red neuronal autoorganizado

1999 Salhi y Nagy Heurísticas de inserción y agrupación

2000 Irnich Multidepósito, vehículos heterogéneos y entrega / recogida

2002 Wu y col. Algoritmo heurístico

2002 Giosa y col. Algoritmo de localización

9.2.3.3 Ruta de vehículos con ventanas de tiempo - PRVJT


En esta variante existe un intervalo de tiempo asociado a la demanda o puntos de recogida “ventana de
hora". La ventana de tiempo puede referirse a la hora de llegada, salida o duración del servicio.
En el cliente. La tabla 9.11 presenta algunos trabajos relacionados con el problema.

TABLA 9.11 FUNCIONES DE SOLUCIÓN PARA PRVJT

Año Investigador Trabajo

1991 Byong-Hun Ventana de tiempo y congestión

1992 Savelsbergh Minimizar la duración de la ruta

1993 Nagraj Algoritmo heurístico

1995 Kontoravdis y Bard Algoritmo GRASP

1995 Russell Algoritmo híbrido

1996 Chiang y Russell Algoritmo de recocido simulado

1996 Kelly y Xu Algoritmo tabú

1996 Potvin y Bengio Algoritmos genéticos

1997 Chiang y Russell Algoritmo tabú reactivo

1997 Bramel y Simchi-Levi Formulaciones de problemas de cobertura

1997 Kohl y Madsen Relajación lagrangiana

1997 Badeau y col. Tabú paralelo

1997 Marshall y col . Algoritmos de optimización

1999a Liu y Shen Visión general

1999b Liu y Shen Metaheurísticas de vecindario

1999 Schulze y Fahle Algoritmo paralelo

1999 Gambardella y col. Algoritmo de colonia de hormigas

1999 Homberger y Gehring, Algoritmos evolutivos

Página 394

388 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

https://translate.googleusercontent.com/translate_f 327/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
TABLA 9.11 CONTINUACIÓN

Año Investigador Trabajo

2001 Cordone y Calvo Algoritmo heurístico

2001 Bräysy Búsqueda de vecindario variable

2001 Gehring y Homberger Paralelización de metaheurísticas

2001 Ioannou y col. Algoritmo codicioso

2001a Tan y col. Algoritmo genético desordenado

2001b Tan y col. Algoritmo genético híbrido

2001c Tan et. Alabama Algoritmos heurísticos

2001 Cordone y Calvo Algoritmo heurístico

2002 Bard y col. B & Cut

2002 Cordeau y col. Varios algoritmos

2002 Rousseau y col. Operadores de restricción

2002 Jung y Moon Algoritmo genético híbrido

2002 Checa y Czarnas Algoritmo de recocido paralelo simulado

2003 Braysy Algoritmo de vecindad variable reactiva

2003 Chaovalitwongse y col. Algoritmo GRASP

2003 Li y Lim Algoritmo simulado de recocido y reinicio

2003 Berger y col. Algoritmo genético híbrido

2004 Cordeau y col. Algoritmo tabú

2004 Ioannou y Kritikos Resumen de varias heurísticas de asignación

9.2.3.4 Enrutamiento de vehículos estocásticos - PREV


En esta variante, algunos de los elementos de entrada del problema, como la demanda, el número de
el número de clientes, el costo de las llamadas, etc., es una variable aleatoria. La tabla 9.12 presenta algunos trabajos
refiriéndose al problema.

TABLA 9.12 TRABAJOS DE SOLUCIÓN ANTERIORES

Año Investigador Trabajo

1992 Polla y rinnooy kan Revisión de problemas

1993 Bertsimas y Van Ryzin Ruta euclidiana con varios vehículos

1993 Belgacem y col. Enrutamiento estocástico con entrega dividida

1995 Bertsimas y col. Varios algoritmos

1995 Gendreau y col. Algoritmos para el caso de clientes estocásticos / demanda

1996a Gendreau y col. Revision de literatura

1996b Gendreau y col. Algoritmo tabú

1996 Cheung y poder Modelos y algoritmos

1996 Teodorovic y Pavkovic Aplicación de la teoría de los conglomerados difusos

1997 Ong y col. Demanda estocástica y ventana de tiempo

2000 Yang y col. Enrutamiento estocástico con inventario

2001 Secomandi Enfoque de implementación

2001 Taniguchi y col. Enrutamiento con tiempo de viaje estocástico

Página 395

PROBLEMAS DE RUTA 389

TABLA 9.12 CONTINÚA

Año Investigador Trabajo

2003 Bianchi y col. Metaheurísticas

2003 Verweij y col. Método de muestreo estadístico

2003 Kenyon y Morton Muestreo de Banch-and-cut y Monte Carlo

9.2.3.5 Enrutamiento dinámico de vehículos - PRDV

En esta variante, los elementos del problema cambian durante el proceso de toma de decisiones. La mesa
9.13 presenta algunos trabajos relacionados con el problema.

https://translate.googleusercontent.com/translate_f 328/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
TABLA 9.13 FUNCIONES DE SOLUCIÓN PARA PRDV

Año Investigador Trabajo

1995 Psaraftis Revisión de métodos de solución

1998 Gendreau y Potvin Modelos de solución y algoritmo

1999 O'Rourke y col. Algoritmo tabú

1999 Jih y Hsu Algoritmo genético

1999 Swihart y Papastavrou Modelos para el problema

2000 Zhu y Ong Algoritmo reactivo

2002 Larsen y col. Problema parcialmente dinámico: modelos y algoritmos

2003 Montemanni y col. Algoritmo de colonia de hormigas

2004 Dua y col. Sistema híbrido compuesto por varios algoritmos clásicos

Una variante de este problema considera el programa de servicio en línea o fuera de línea de un cliente
conjunto de vehículos en una red de demanda estocástica. Los vehículos también se llaman
como sirvientes .
Psaraftis (1988) considerando que las demandas se ubican en los vértices de un grafo y que la
El vehículo (o servo) puede moverse entre cualquier par de vértices pasando el tiempo que viene
a los vértices. El objetivo es minimizar el tiempo medio de espera para recibir asistencia.
Batta y col. (1988) aborda un modelo de servicio igual al anterior con la obligación, siempre que el
El sirviente regresa a la base después de cada llamada.
Bertsimas y Ryzin (1991) estudian el caso en el que las demandas ocurren en cualquier punto de
una región dada del plano con una distribución de probabilidad uniforme. El sirviente
Ubicación entre los puntos de demanda, pasando tiempo proporcional a la distancia entre ellos.
puntos.
Bertsimas y Ryzin (1993) estudian el caso del servicio con múltiples sirvientes.
Tassiulas (1996) aborda un problema similar al de Bertsimas y Ryzin (1991), con el objetivo de
estudiar el rendimiento de varias políticas de enrutamiento, lo que sugiere un algoritmo llamado
Algoritmo de concentración de c ongestion .

9.2.3.6 Rutas periódicas de vehículos - PRPV


En esta variante, la planificación se lleva a cabo en un horizonte temporal que abarca más de una
día. La tabla 9.14 presenta algunos trabajos relacionados con el problema.

Página 396

390 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

TABLA 9.14 FUNCIONES DE SOLUCIÓN PARA PRPV

Año Investigador Trabajo

1984 Christofides y Beasley Presentación del problema

1984 Tan y Beasley Algoritmo heurístico

1992 Gaudioso y Paletta Algoritmo heurístico

1995 Chao y col. Algoritmo heurístico

1997 Cordeau y col. Algoritmo tabú para el problema de depósitos múltiples periódicos

2001 Shih y Chang Aplicación a la recogida de basura contaminada

2002 Angelelli y Speranza Algoritmo tabú en PRPV con instalaciones intermedias

2002 Baptista y col. Aplicación al problema de la recogida de papel reciclable

2002 Jaillet y col. Aplicación a problemas de distribución de stock

2003 Blakeley y col. Aplicación de mantenimiento de ascensores

2003 Rusdiansyah y Tsao Heurística híbrida

2004 Alegre y Laguna Aplicación a la recolección de materia prima para autopartes.

9.2.3.7 Enrutamiento con entrega dividida - PRED

En el caso de esta variante, varios vehículos sirven al cliente dividiendo la demanda. La mesa
9.15 presenta algunos trabajos relacionados con el problema.

TABLA 9.15 TRABAJOS DE SOLUCIÓN PARA PRED

https://translate.googleusercontent.com/translate_f 329/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
Año Investigador Trabajo
1990 Dror y Trudeau Modelo heurístico y algoritmos

1994 Dror y col. Modelo heurístico y algoritmos

1995 Frizzell y Giffin PRED con ventana de tiempo

2000 Belenguer y col. Límite inferior del problema

2002 Feillet Modelado PRED con ventana de tiempo

2003 Archetti y col. Algoritmo tabú

9.2.3.8 Enrutamiento con entrega prioritaria (Backhauls) - PREP


Esta es la variante actual de un problema de entrega y recogida, en el que los vehículos deben realizar todas las entregas.
antes de realizar cualquier retiro. La tabla 9.16 presenta algunos trabajos relacionados con el problema.

TABLA 9.16 SOLUCIÓN FUNCIONA PARA PREPARAR

Año Investigador Trabajo

1988 Casto y col. Modelos y algoritmos

1989 Goetschalckx y Jacobs-Blecha Modelos y algoritmos

1992 Min y col. Variante de depósito múltiple

1996 Thangiah y col. Algoritmos heurísticos

1996 Anily Algoritmo heurístico

1996 Potvin y col. Algoritmo genético

1997 Duhamel y col. Algoritmo tabú

Página 397

PROBLEMAS DE RUTA 391

TABLA 9.16 CONTINUACIÓN

Año Investigador Trabajo

1997 Toth y Vigo Algoritmo exacto

1999 Toth y Vigo Algoritmos heurísticos

1999 Mingozzi y col. Algoritmo exacto

2002 Reel y Baker Algoritmo GRASP

2002 Osman y Wassan Algoritmo tabú reactivo

2002 Dethloff Algoritmo de inserción heurística

2002 Wade y Salhi Algoritmo de inserción de lista de prioridad variable

2003 Currie y Salhi Heurística constructiva miope

2004 Wade y Salhi Algoritmo de colonia de hormigas

9.2.3.9 Enrutamiento con entrega y recogida (Recogidas y entregas) - PREC


Esta es la variante actual de un problema de entrega y recogida, en el que los vehículos deben realizar todas las entregas.
antes de realizar cualquier retiro. La tabla 9.17 muestra algunos trabajos relacionados con el problema.

TABLA 9.17 FUNCIONES DE SOLUCIÓN PARA PREC

Año Investigador Trabajo

1991 Dumas et al. PREC con ventana de tiempo

1993 Bruggen y col. Búsqueda en profundidad

1998 Mosheiov Algoritmo de partición de tour

1999 Swihart y Papastavrou Modelo para el caso estocástico

2000 Nanry y Barnes Tabú reactivo / algoritmo PREC con ventana de tiempo

2001 Landrieu y col. Algoritmo tabú para PREC con ventana de tiempo

2001 Lau y Liang Algoritmos y casos de prueba para PREC con j / tiempo

2002 Renaud y col. Heurística basada en el procedimiento de alteración

2002 Dethloff Heurística de inserción para varios problemas de enrutamiento

2003 Xu y col . Estudio de caso

2003 Malca1 y Semet Algoritmo tabú

2003 Caricato et. Alabama. Algoritmo tabú paralelo

https://translate.googleusercontent.com/translate_f 330/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

9.2.3.10 Enrutamiento de flota heterogéneo - PRFH


Esta es una variante donde el objetivo es determinar, simultáneamente, la composición de una flota.
de vehículos heterogéneos basados en un almacén y sus rutas de servicio (Taillard, 1999). A favor-
blema también se conoce como:

• El tamaño y la composición de la flota El problema del tamaño y la composición de la flota


Problema de generación de rutas para vehículos - Golden, [1984]; Renaud y Boctor, [2002]).

• El problema de la mezcla de flotas de vehículos - Salhi, [1992]; Wassan y


Osman, [2002]).

La literatura no reporta un algoritmo exacto para PRFH. La Tabla 9.18 presenta algunos estudios sobre la
problema.

Página 398

392 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

TABLA 9.18 TRABAJO DE SOLUCIÓN PARA PRFH

Año Investigador Trabajo

1984 Golden et al . Algoritmo de ahorro adaptado al PRFH

1984 Gheysens y col . Comparación de formulación completa mixta y heurística

1986 Gheysens y col . Heurística de dos fases

1988 Ferland y Michelon Algoritmos exactos y heurísticos

1991 Desrochers y Verhoog Algoritmo de coincidencia valorado

1992 Salhi y col. Algoritmo clásico de agrupamiento y enrutamiento adaptado a PRFH

1993 Salhi y Rand Algoritmo iterativo de perturbación

1996 Osman y Salhi Algoritmo tabú e intercambio l

1999 Liu y Shen Heurística y economía de inserción

1999 Han y Cho Metaheurísticas basadas en la aceptación de umbrales

1999 Taillard Algoritmo tabú y memoria adaptativa

1999 Gendreau y col. Algoritmo tabú basado en la heurística GENIUS

2002 Wassan y Osman Algoritmo tabú

2002 Renaud y Boctor Algoritmo basado en el algoritmo Swapp

2002 Dullaert y col. Heurística para PRFH con ventana de tiempo

2004 Tarantilis Bactracking y umbral de aceptación algoritmo

2004 Lima et al. Algoritmo memético

9.2.3.11 Enrutamiento multiobjetivo


La Tabla 9.19 presenta algunos trabajos que abordan el tema.

TABLA 9.19 TRABAJO DE SOLUCIÓN PARA PRFH

Año Investigador Trabajo

1988 Landeghem Enrutamiento con ventana de tiempo y bicriterio

1995 Gudaitis et al. Algoritmo multicriterio usando A *

1997 Golden et al. Algoritmo de memoria adaptativa en el problema minmax

1999 Hong y Park Algoritmo heurístico para PRVJT bi-objetivo

2002 Jozefowiez y col. Modelos paralelos híbridos

2002 Applegate y col. El problema minmax

9.2.3.12 Otros problemas

• Enrutamiento con instalaciones satelitales - PRFS


Esta es una variante en la que los vehículos pueden repostar en los puntos de depósito.
instalaciones satélite) distribuidas en la red de demanda. El problema fue sugerido recientemente por Bard et al.
(1998a). En Bard et al. Se sugiere un algoritmo de solución basado en la técnica Branch-and-cut . (1998b).

• Rutas con uso múltiple de vehículos


El problema se describe en Taillard et al. (1996), en el que se sugiere un algoritmo de solución. Hajri-Gabouj
y Darmoul (2003) desarrollan un algoritmo híbrido y evolutivo para la solución de un caso con
en ellos de tiempo.

https://translate.googleusercontent.com/translate_f 331/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

Página 399

PROBLEMAS DE RUTA 393

• Rutas con vehículos de cobertura múltiple


En este caso, el conjunto de picos de demanda debe ser atendido colectivamente por la flota de m vehículos.
El objetivo es minimizar la longitud total de las rutas. Hachicha y col . (2000) formulan el problema y
generar una heurística que combine el procedimiento de Balas y Ho (1980b) con la heurística GENIUS.

• Rutas con un número limitado de vehículos


Este es el problema del enrutamiento sujeto a una serie de vehículos. Lau y col . (2003) formulan el
problema y sugiere un límite superior para el problema de rotación limitada en el tiempo. O
el trabajo también sugiere una heurística tabú.

• Programación y enrutamiento de múltiples vehículos


El presente caso se refiere a la programación de rutas de varios vehículos. La flota, a diferencia de PRFH, es
fijo. Thompson y Psaraftis (1993) sugieren una heurística para el problema basada en una estrategia
llamadas transferencias cíclicas . Blanton y Wainwright (1993) desarrollan un algoritmo genético para la
Problema de múltiples vehículos con restricciones de tiempo y capacidad. Liu y Shen (1999) desarrollan el
resolución de varios vehículos con ventanas de tiempo.

• Ruta con restricción de combustible


Un problema que puede considerarse un caso particular de SLPR se aborda en Ichimori et al . (1981).

• Enrutamiento con restricción de tiempo de funcionamiento ( fecha límite )


La variante considera un tiempo máximo de servicio para cada nodo de demanda. El problema es un
caso especial de enrutamiento de ventana de tiempo. Thangiah y col . (1993) sugiere algoritmos para el pro-
blema. Bansal y col. (2004) sugiere un algoritmo O (log n) para el caso.

• Enrutamiento con remolques


Este es un caso interesante de enrutamiento en el que la permanencia en la cúspide de la ruta es susceptible de
prolongación significativa. Otro punto peculiar es que la unidad en ruta está compuesta por un vehículo
tractor y remolque. Los vehículos tractor pueden acoplarse o desacoplarse de los remolques de acuerdo con
con planificación. El estudio del funcionamiento de una flota de vehículos con remolques puede incluir
operaciones de transbordo o cambios de remolque. Gerdessen (1996) aborda el problema sugiriendo varios
características de la solución.

• Gestión de flotas
Es una variante compleja en la que se pueden considerar varias restricciones, tanto para los diferentes
medición de la flota en cuanto a su funcionamiento. Un ejemplo de un trabajo que aborda tal problema
se encuentra en Sherali et al. (1999).

• Enrutamiento con tarea en destino ( enrutamiento y programación )


La variante se refiere, por ejemplo, al caso del uso de una flota de vehículos de mantenimiento. En el caso de los vehículos
ellos, además de ser asignados para atender un conjunto de puntos de demanda - y en consecuencia-
seguir una ruta, deben realizar tareas en aquellos puntos cuya duración sea significativa en relación con
tiempo de viaje. La literatura moderna ha reclasificado ciertos casos que fueron previamente
genéricamente denominado enrutamiento y programación . La reclasificación cumple con las clases anteriores.
presentado en este capítulo, especialmente cuando el criterio más importante del proyecto
problema se refiere a las ventanas de tiempo, el comportamiento dinámico del problema o el dimensionamiento
la flota. Laporte y Norbert (1987) y Laporte et al. (1988) presentan una revisión de métodos exactos
al problema. El problema estocástico es abordado por Jaillet y Odoni (1988). Li y col . (1992) trata sobre
caso de minimización de flota. Baker y Schaffer (1986) y Solomon y Desrosiers (1988) reportan resultados
para el caso restringido en ventanas de tiempo. Malmborg (1996) informa un algoritmo genético para la
caso de minimizar el retraso del servicio.

Página 400

394 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

• El problema de la programación de la tripulación (PET - Programación de la tripulación )


El problema de la escala de tripulación consta de dos casos, a saber:

https://translate.googleusercontent.com/translate_f 332/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
1. El problema de emparejar, o "planificar los tramos a bordo", determina qué etapas de
viaje que será realizado por el tripulante. El problema puede incluir (no necesariamente) el
función a realizar por cada miembro de la tripulación. El problema de designar las funciones realizadas
por el miembro de la tripulación a bordo se denomina complemento de tripulación o problema de designación de actividades
actividades complementarias de la tripulación.

2. El problema de la clasificación o "planificación de las funciones generales de la tripulación" define las actividades
miembros de la tripulación, a bordo o no. En lista de vacaciones, revisión médica, capacitación.
a etc. se consideran obligaciones. Entonces, el problema de la lista incluye la designación del trabajo
miembros de la tripulación a bordo, o el problema del complemento de la tripulación , al menos como entrada. El Fi-
La figura 9.8 resume las entradas del problema.

Reglas Metas
Vacaciones y tiempo libre Minimización de costos
Límites de carga de trabajo Maximizando la robustez del sistema
Cualificación legal Cumplimiento de restricciones (generar soluciones
Restricciones a la constitución de la tripulación viable)

El problema de
Deberes de los miembros de la tripulación

Formación Historia y antigüedad


De guardia en tierra Calificación en servicio
Designación embarcada Designaciones anteriores
Otras actividades Otras Consideraciones

Actividades Tripulación
Designacion
Ocupaciones

FIGURA 9.8 insumos Listado de tripulaciones .

El problema de la planificación de los tramos a bordo es una secuencia de etapas de viajes a


cumplido, comenzando en un punto base y volviendo a ese punto base después de un cierto período de tiempo.
polvo. La planificación eficiente generalmente cubre las tareas requeridas por el servicio de transporte.
en el menor tiempo posible (Carraresi y Gallo [1984]; Karraziha et al . [2003]). El problema puede involucrar
restricciones, como la calificación de la tripulación (por ejemplo, el caso de los pilotos con licencia
para ciertos aviones o el requisito de la tripulación de dominar un determinado idioma), consideraciones
tráfico, retrasos, etc. La tabla 9.20 muestra algunos trabajos relacionados con el problema.

TABLA 9.20 FUNCIONES DE SOLUCIÓN PARA MASCOTAS

Año Investigador Trabajo

1969 Arabeyre, et al. Revision de literatura

1979 Marsten y col . Modelo de programación completo

1979 Baker y col. Heurística para el problema

Página 401

PROBLEMAS DE RUTA 395

TABLA 9.20 CONTINUACIÓN

Año Investigador Trabajo

1981 Marsten y Shepardson Solución a través del problema de particionamiento de conjuntos : particionamiento

1988 Smith y Wren Solución a través del problema de cobertura del conjunto : cobertura

1988 Lavoie y col . Generación de columnas

1989 Gershkoff Aplicación al problema de emparejamiento

1992 Anbil y col. Optimización global

1993 Graves y col. Caso aplicado a la planificación de United Airlines

1993 Hoffman y Padberg B & Cut

1995 Barnhart Flujo en redes

1996 Mathaisel Sistema de soporte de decisiones

1997 Crainic y Laporte Modelos de planificación para el transporte de carga

1997 Vance y col. Formulación y algoritmo de descomposición

https://translate.googleusercontent.com/translate_f 333/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
1997 Wei y col. Programación de la tripulación en funcionamiento irregular
1997 Chu y col. Graves problemas

1998 Stojkovic y col. Estudio centrado en los aspectos operativos del problema

1998 Andersson y col. Aplicación al problema de emparejamiento

1998 Gamache y col. Planos de corte y B&B. Aplicado al caso de Air Canada

1998 Caprara y col. Modelos de solución y algoritmo

1998 Lavoie y col. Generación de columnas para emparejamiento

1999 Lucic y Teodorovic Recocido simulado para listas multiobjetivo

1999 Emden-Weinert Recocido simulado

1999 Gamache y col. Algoritmo de generación de columnas para listas

1999 Christou y col. Aplicación al rostering

2000 Alefragis Modelo de programación completo para la programación de la tripulación

2000 König y Strauss Servicios de lista integrados

2001 Freling y col. Algoritmo de sucursal y precio

2001 Freling y col. Aplicación en programación de trenes en Alemania

2001 Cordeau y col. Descomposición de Benders

2001 Butchers et al. Aplicación al caso de Air New Zealand

2001 Klabjan y col. Generación de rutas aleatorias para la programación de la tripulación

2001 Dawid y col. Modelos de rostering

2002 Klabjan y col. Programación de la tripulación con ventana de tiempo

2002 Sellmann y col. Programación restringida para la programación de la tripulación

2002 Fahle y col. Programación restringida

2003 Freling y col. Modelos y algoritmos para enrutamiento y programación de tripulaciones

2004 Kohl y Karisch Trabajo ambiguo

2004 Makri y Klabjan Esquema de generación de columnas para la programación de la tripulación.

2004 Boschetti y col. Algoritmo exacto para una variante de programación de la tripulación

2004 Generación Goumopoulos y Housos Travel

2004 * Yen y Birge Programación estocástica para la programación de la tripulación

* Para ser publicado

Página 402

396 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

• Rutas con colección de bonificación (recogida de premios )


Se trata de una variante en la que se deben seleccionar los clientes a atender. Se considera
que cada arco de la ruta se recorre de acuerdo con un costo c ij , donde i y j son los nodos que definen el arco. O
servicio al cliente i ofrece una bonificación b i . El objetivo puede ser encontrar la ruta que minimice
diferencia entre la suma de los costos de la ruta y las bonificaciones obtenidas o la ruta más corta que garantiza un valor
mínimo para bonificaciones. Un caso especial del problema de la recaudación de bonificaciones se informa en Goldbarg et al .
(2004), donde el objetivo es maximizar la recaudación de bonificaciones y los vehículos están sujetos a restricciones de tiempo.
duración total del viaje.

• El corte de la caña de azúcar


Este es un caso muy interesante que aborda el tema del enrutamiento, ya que este paso es uno de los más
importante para la ejecución de esta actividad. Este es un problema con el encaminamiento y plantear las jornadas
con varias tareas asociadas. La figura 9.9 muestra un esquema básico del problema. La planta recoge
caña de azúcar de varias fincas de plantaciones. Cada finca se divide en secciones de corte y estas son
leones En Brasil, los métodos de corte y atado de caña más utilizados son:

• El método manual
La caña se corta y se empaqueta manualmente, lo que requiere tractores o cargadores para alimentar
camiones de transporte.

• El método mecanizado
En este caso, las cosechadoras cortan, empaquetan y cargan los camiones.

Planta de energía
Campo 8 Sección
Campo 7 Campo 1 4

Campo 6 Sección
Campo 2 Sección Sección
dos 3
1
Campo 5 Campo 3
Granja 1 Granja 2
Campo

https://translate.googleusercontent.com/translate_f 334/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
4 Granja 2
Granja 3
Sección 1

Disposición general de las áreas de corte División de una finca

FIGURA 9.9 Esquema de cosecha de caña de azúcar.

Para que una parcela sea cosechable, debe quemarse el día anterior. Las parcelas son
en secuencia de vecindad, ya que es necesario tener libre el camino de acceso a las vigas.
Los turnos de los conductores son normalmente de 12 horas. Los camiones utilizados para el transporte
carrocería o remolques adaptados, ya que se trata de una carga de gran volumen en cuanto a
su peso. Los camiones con uno o dos remolques son comunes, como se muestra en la Figura 9.10.

Romeo y Julieta Treminhão

FIGURA 9.10 Tipos de camiones adaptados para transportar caña de azúcar.

Los molinos trabajan con un depósito pulmonar en su centro de molienda para absorber las fluctuaciones.
en el flujo de caña originado por problemas operativos (pinchazos, roturas, etc.) y mantenimiento de
equipos y camiones (cuando el mantenimiento preventivo o la limpieza de la carrocería se realiza más de

Página 403

PROBLEMAS DE RUTA 397

direcciones de lo esperado) cambios de turno y variación en la longitud de la ruta a lo largo del día. O
El depósito pulmonar tiene un alto costo operativo, porque además de representar una etapa de transbordo
innecesario, ocupa un espacio más grande y requiere esfuerzos de gestión.
El problema de optimización generado en el corte y transporte de la caña de azúcar involucra lo siguiente
variables de decisión:

• La definición del frente de servicio.


• Número y tipos de camiones necesarios.
• Las rutas asociadas a cada camión.
• La distribución de tractores o cortadoras en el frente de servicio.
• El horario de turnos.
• Gestión de caudal para mantener la planta funcionando a plena carga.

9.3 - MODELOS Y ALGORITMOS DE SOLUCIÓN

9.3.1 Estrategias para formular problemas de enrutamiento


La importancia e influencia de cómo formular un problema de optimización, especialmente en áreas
los complejos, como enrutamiento, cobertura, etc., deben entenderse bien. La razón es evidente
te: la formulación tendrá un impacto directo en el rendimiento de los algoritmos de solución. Este hecho no es solo
intuitivo, tiene justificaciones teóricas. Por ejemplo, es fácil ver que habrá una relación entre
el tamaño del espacio para soluciones viables a un problema, así como sus características, con la
posibilidad de obtener buenos algoritmos de solución para el caso. Es un hecho común que cuanto mayor sea la
el número de variables y restricciones del mismo problema, generalmente mayor es el esfuerzo requerido
para encontrar tu solución. Como vimos en el Capítulo 1, el tamaño de las formulaciones influye en la
posibilidad de solución. La característica del espacio de solución es otro punto fundamental. El personaje
la integralidad, por ejemplo, es un factor de complicación conocido.
La intersección del poliedro de las restricciones de un problema con la red de los enteros, en algunos
espacio n-dimensional, establece una correspondencia bidireccional con el conjunto de configuraciones
proyectos que respeten el criterio de integralidad. De esta forma, el número de estos ajustes se puede
tan grande como el conjunto de números enteros.
Denotando por D el conjunto de estos puntos discretos y si D es un conjunto finito o si los datos de
formulación implica sólo valores racionales, por lo que la envolvente convexa D (o Conv ( D )) es una
poliedro bien definido como lo muestran Padberg y Sung (1988) (ver también Padberg y Rinaldi
(1990)). El teorema de Weyl garantiza la existencia de un conjunto finito de ecuaciones lineales o desiguales
que describen completamente el conjunto Conv ( D ). Esta descripción lineal completa también es
denominada formulación ideal.
Debido a las características NP-completitud de muchos problemas combinatorios, la fórmula
La situación ideal puede ser inalcanzable en términos prácticos. Por otro lado, ya hemos verificado exhaustivamente
https://translate.googleusercontent.com/translate_f 335/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
Trabajo con usted en que los problemas de optimización pueden admitir varias formulaciones diferentes. Como a
formular un problema puede interferir fuertemente en su proceso de solución, el estudio de
las posibles alternativas de formulación es un tema relevante.
Dadas dos formulaciones diferentes A y B para un determinado problema, hemos definido inmediatamente
dos poliedros X a y X b . Si X a Ì X b , entonces está claro que la formulación A es mejor que B, ya que
Los límites de su universo de soluciones son más restringidos y están más cerca del valor y límite óptimos
menor valor admitido por X b (por ejemplo, el caso de un problema de minimización).
En última instancia, se puede medir la idoneidad de la formulación de un problema P completo
por la aproximación del poliedro generado por la formulación y la envolvente completa del problema. Muchas diferentes

Página 404

398 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

Las formulaciones P a menudo conducen a la definición de diferentes conjuntos de vértices en el poliéter


dro. Suponga que dos formulaciones A y C modelan el mismo problema P pero en espacios
diferente n-dimensional, y la dimensión del espacio de C es mayor que la de la .
Observando por Z c y X un los poliedros asociados con las formulaciones A y C , si hay una transformación
afín T que mapea todos los puntos en Z c sobre todos los puntos en X a , entonces podemos calcular el
Imagen T ( Z c ) y compárala con X a . Si T ( Z c ) es X a , entonces la formulación A es evidentemente mejor que C , ya que
que C no proporciona ninguna información adicional sobre todo el convexo del problema. Si T ( Z c ) ES
X un poliedro T ( Z c ) no tiene que ser necesariamente una formulación del problema representado en
T ( Z c ). Si las variables de A están contenidas en el conjunto de variables de C entonces tendremos en A a
Proyección C que puede ser representada por un caso particular de T (Z c ). Eventualmente alguna proyección
de C puede incluso ser diferente de X a .
Estos conceptos fueron aplicados por Miller, Tucker y Zemlin (Padbeg y Sung [1988]), quienes demostraron
con la ayuda de n - 1 variables reales, que el problema asimétrico del vendedor ambulante puede ser
reducido del uso exponencial de restricciones a solo ( n 2 - n + 1) restricciones lineales, donde n significa el
número de ciudades involucradas, que se observa mejor en el ítem 8.2.1.
Para el desarrollo de formulaciones de problemas de enrutamiento y cuando no se observa nada
de lo contrario, consideraremos lo siguiente:

4 El gráfico si el sustrato no dirigido G = ( N , A )

4S *= N \ S para S Í N.

9.3.2 Formulación del problema general de enrutamiento

Presentar formulaciones útiles para PRV no es una tarea trivial. 1 Una de las formulaciones más utilizadas
Fisher y Jaikumar (1981) se basan en varios métodos de solución.

⎛ ⎞
(PRV) Minimizar z = ∑∑
⎜C
ij Xijk ⎟
ij,
⎝ k

sujeto a:

∑ y ik = 1 i = 2, ..., n (9,13)
k

∑ y ik = m i=1 (9,14)
k

Yo q i y ik £ Q k k = 1, ..., m (9,15)
yo

∑ x ijk = ∑ x jik = y ik i = 1, ..., nk = 1, ..., m (9,16)


j j

∑ x ijk £ | S | - 1 " Y Í {2, ..., n }, k = 1, ..., m (9,17)


ij ,S∈

y ik Î {0, 1} i = 1, ..., nk = 1, ..., m (9,18)

x ijk Î {0, 1} yo, j = 1, ..., nk = 1, ..., m (9,19)

1. Kulkarni y Bhave (1985) presentaron una formulación incorrecta en el European Journal of Operational Research (ver Brodie
and Waters [1988]).

https://translate.googleusercontent.com/translate_f 336/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

Página 405

PROBLEMAS DE RUTA 399

Dónde:

x ijk º variable binaria que asume el valor 1 cuando el vehículo k visita al cliente j inmediatamente después de hacer clic
entre i , 0 en caso contrario.
y ik º variable binaria que asume un valor de 1 si el cliente i es visitado por el vehículo k , 0 en caso contrario.
q i es la demanda del cliente i.
Q k es la capacidad del vehículo k.
c ij es el costo de viaje del cliente i al j .

Las restricciones (9.13) garantizan que un vehículo no visite a un cliente más de una vez. Las restricciones
(9.14) asegúrese de que el depósito reciba una visita de todos los vehículos. Las restricciones (9.15) requieren que
no se supera la capacidad del vehículo. Las restricciones (9.16) garantizan que los vehículos no se detengan
sus rutas en un cliente. Las restricciones (9.17) son las restricciones tradicionales para eliminar los subtours.

9.3.3 Estrategias para la solución de problemas de enrutamiento


Problemas en los que las variables asumen valores enteros o que tienen funciones objetivas con
Por lo general, las discontinuidades no pueden resolverse directamente mediante el algoritmo simplex. Ese
este es el caso de la mayoría de los denominados problemas de enrutamiento. Para tal, la Investigación Operacional desarrolló
Desarrollar las estrategias que se muestran en la Figura 9.11:

Problemas de generación de rutas para vehículos

Problemas polinomiales NP-arduos problemas

Algoritmos exactos Relajaciones Algoritmos exactos

Algoritmos
Aproximados

Figura 9.11 Estrategias para la solución de PRV.

9.3.4 Enfoques de solución heurística


Debido a la complejidad de los problemas de enrutamiento, este texto se centra en el enfoque
heurístico. Las heurísticas de la PRV se pueden clasificar de la siguiente manera:

• Heurística constructiva:
Para este tipo de procedimiento, encontramos variaciones en forma de:

• Ampliar rutas (criterios de economía, expansión radial, grupos de proximidad, etc.).


• Construir las rutas (secuenciales o paralelas).
Algunos ejemplos de heurística constructiva son:

Página 406

400 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

Procedimientos de economía e inserción


Estos enfoques construyen una solución a través de un conjunto de configuraciones que se actualizan en cada paso.
usado. Los algoritmos progresan de una configuración a otra según el criterio de minimización
función objetivo, también llamada ahorro o economía. Los arcos de menor costo deben reemplazar
tienen arcos más costosos dentro de la ruta que se está mejorando en términos de costo. En el
economía e inserción no hay obligación de que la ruta sea viable durante todo el proceso de mejora

https://translate.googleusercontent.com/translate_f 337/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
(Paessens, [1988]). Si alguna solución alcanzada es factible, entonces se obtiene un límite superior al problema.
del. Un trabajo clásico dentro de esta línea de acción es el de Clark y Wright (1964).

• Heurísticas de Clark y Wright


Considerando que el vector s ij representa el valor de los ahorros obtenidos por la reorganización de dos
escriba ( i - 1 - i ) y ( j - 1 - j) en un nuevo ( i , j ) como se muestra en la Figura 9.12.

yo yo

j j

1 1

Longitud = 2 C 1i + 2 C1j Longitud = C i1 + C 1j + C Ji

Economía = s ij = s Ji = Ci1 + C1j - CJi

FIGURA 9.12 El procedimiento de ahorro.

Algoritmo de Clark y Wright (secuencial)

COMIENZO
Lea G = ( N , A ), c ij . {* el nodo 1 es el depósito central para el enrutamiento *}
Inicializar ruta : = ( x 1 - x s - x 1) ,
Calcule la economía s ij : = c 1 j - c ij + c j 1 para el par completo de
clientes x i y x j {* nodos en G *}
Ordene los ahorros en orden no creciente y colóquelos
en una lista
Siempre que haya enlaces en la lista Make
Comenzando con los mayores ahorros en la lista de tareas pendientes
comienzo
Determine el primer vínculo de la lista que
se puede usar para agregar en
uno de los dos extremos de Rota ,
aumentando su longitud y la
eliminar de la lista;
Si la ruta no se puede expandir desde
forma anterior, así que elige la primera
enlace en la lista para comenzar una nueva
ruta y elimínela de la lista.
Fin
FIN

Página 407

PROBLEMAS DE RUTA 401

La figura 9.13 desarrolla un ejemplo numérico del procedimiento de Clark y Wright aplicado a la
gráfico de la Figura 9.13 (a).
A medida que se construye una ruta es posible realizar pruebas relacionadas con restricciones
capacidad del vehículo y, eventualmente, ventanas de tiempo. Respecto al comportamiento
el algoritmo tiene la característica de anidar clientes en las rutas que se van formando. A
En la figura 9.13 notamos que el nodo 3, después de la segunda mejora, se convirtió en una condición interna (sin
directamente con el vértice del depósito) y ya no es un candidato de mejora en la ruta, ya que
Se prueban los nodos extremos para la inserción, es decir, aquellos que se conectan directamente al nodo central.
(vértice 1).

3 3 3
9
4 4
4 6 4
dos dos dos
10

12 8
10
10
1 1 1
5
5 5 5

Lista de ahorros Lista de ahorros Lista de ahorros

https://translate.googleusercontent.com/translate_f 338/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
(2-3) = 14 (2-3) = 14 ü (2-3) = 14 ü

(3-4) = 13 (3-4) = 13 (3-4) = 13 ü

(2 - 4) = 12 (2 - 4) = 12 (2 - 4) = 12
(4 - 5) = 7 (4 - 5) = 7 (4 - 5) = 7
(2-5) = 3 (2-5) = 3 (2-5) = 3

los los
Puesta en marcha 1 Mejora 2 Mejora

FIGURA 9.13 Ejemplo de aplicación de las heurísticas de Clark y Wright.

• Heurísticas de Mole y Jameson


El algoritmo de Mole y Jameson (1976) ataca la fragilidad de los nodos internos que no son candidatos a
realizar parte de la prueba de ahorro, lo que permite introducir ahorros entre dos
nodos intermedios. El criterio para expandir la ruta incluyendo nuevos vértices en el algoritmo ha
dos condiciones:

1. e ( i , l , j ) = c es decir + c lj - mc ij .

2. s ( i, l, j ) = l c 0 l - e ( i, l, j ).

En general, el algoritmo procede de la siguiente manera:

Página 408

402 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

Algoritmo Mole y Jameson

COMIENZO
Lea G = (N, A), c ij . {* el nodo 1 es el depósito central para el enrutamiento *}
Inicializar F: = N \ { x 1 }
Mientras que F¹Æ hacer
comienzo
Ruta : = ( x 1 -x s -x 1 ) {* varios criterios pueden ser
usado en esta tarea *}
Para todos los vértices x l Î F
comienzo
comprobar la posible inserción en la ruta en
examen que cumple: e ( i 1 , l , j 1 ) = min [ e ( i , l , j )]
y considere todos los vértices vecinos x r y
l
x s Î Ruta donde e x j son los vértices entre

que x l se incluirá, y que representan


la mejor
elección ”(procedimiento MV);
Fin
l
Insertar el vértice en la ruta actual entre los vértices x i y
l
x j y haz F: = F \ { x l * }

Optimice la ruta R usando métodos r-óptimos 2


Fin
FIN

(*) Procedimiento MV (Best Vertex)

COMIENZO
Para todos los nodos x l aún no incluidos en la ruta R y viables, el
el "mejor vértice" x l * que se insertará es lo que: ( i l * , l * , j l * ) =
max [s ( i i , l , j l )]

https://translate.googleusercontent.com/translate_f 339/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
FIN

4 Ejemplo numérico del procedimiento de Mole y Jameson

Las heurísticas de Mole y Jameson tienen dos parámetros de control que se pueden modificar en
cumplimiento de los deseos de la estrategia de solución.

• l = 0 ym = 1 Þ la inserción se realizará teniendo en cuenta la minimización del incremento de ruta por


inclusión de un nuevo cliente.

• l = 0 ym = 0 Þ la inserción se realizará teniendo en cuenta la minimización de la distancia entre


dos nodos vecinos.

El caso donde 1 £ 1 £ 2; m = l - 1 es una generalización del criterio de Gaskell (1967).


l ® ¥, 0 <m <¥ Þ la inserción ocurrirá para el cliente más alejado del depósito.
Si l crece, el peso de la distancia entre el cliente y el almacén crece, lo que lleva a la formación de rutas.
más circular. Cuando m crece, las llamadas se penalizan.

2. Como el algoritmo de Lin y Kernighan , que se explorará más adelante.

Página 409

PROBLEMAS DE RUTA 403

Considerando l = 1 ym = 1 y la gráfica de la Figura 9.14 y considerando la ruta parcial de la Figura 9.14 (b)
donde los nodos fuera de ruta son 4 y 6.

3 3 3
30
4
dieciséis 4 4
8 dos dos dos

15
20
9 10
20
5
15
6 6 6
1
3 1 1

10
5 5 5

Red de enrutamiento Ruta parcial Inserción


(Los) (SEGUNDO) (C)

FIGURA 9.14 Ejemplo de aplicación de heurísticas de Mole y Jameson.

Para realizar una inserción, el algoritmo calcula inicialmente una lista de vecindarios de los siguientes
molde:

l=4 l=6

y (2, 4, 5) = 13 y (2, 6, 3) = 40

e (5, 4, 1) = 14 e (1, 6, 2) = 23

e (3, 4, 2) = 38

Como ejemplo, e (2,4,5) = 8 + 5 = 13. Dado que se elige el nodo 4 para la inserción (más cerca de los vecinos)
niños). Para realizar la inserción en sí, se utiliza el criterio de función s según la tabla
abajo:

Inserción entre l=4

2-5 s (2, 4, 5) = 20

1-5 s (5, 4, 1) = 5

2-3 s (3, 3, 2) = 14

Como ejemplo, s (2,4,5) = 18 + 15 - 13 = 20, lo que da como resultado la inserción que muestra la Figura 9.14 (c)
con ahorros de 20 unidades para la ruta anterior.

• Heurística de dos fases :


Básicamente, estas heurísticas tienen como objetivo unir a los clientes (fase de agrupación o agrupación )
conectar vehículos a grupos y encontrar la ruta dentro del grupo (fase de enrutamiento).
El orden de las fases puede ser agrupamiento × enrutamiento y enrutamiento × agrupamiento. Entre estos heu-
características destacamos:

https://translate.googleusercontent.com/translate_f 340/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
Procedimientos de agrupamiento primero y luego de enrutamiento
• Heurísticas de Gillet y Miller
Esta estrategia busca obtener una solución al problema en dos etapas distintas. El primero tiene como objetivo agrupar
puntos de demanda según algún criterio de proximidad, mientras que en la segunda etapa cada grupo
po (o cluster ) se resuelve de forma independiente. Un ejemplo de la aplicación de este enfoque puede

Página 410

404 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

puede encontrarse en el trabajo de Gillet y Miller (1974). La estrategia asume que las rutas
entre nosotros se desarrollará preferentemente entre vecinos. En la siguiente tabla,
tenemos una versión de la heurística que muestra su enorme eficiencia y simplicidad en el
agrupamiento. En algunas versiones de esta heurística, la fase de enrutamiento se sugiere después de que la organización
de todos los grupos.

Algoritmo de Gillet y Miller

COMIENZO
Lea G = (N, A), c ij . {* el nodo 1 es el depósito central para el enrutamiento *}
Obtener las coordenadas polares del cliente en relación con el depósito.
y ordenarlos en orden de crecimiento de valor y hacer :
comienzo
F: = N \ { x 1 }
Ponta_Rota: = { x 1 }
Ruta 1 : = { x 1 }
yo: = 1
Fin
Mientras F ¹ Æ Do {* Group *}
comienzo
Mientras que $ x s Î F dadas las condiciones de
viabilidad de la Ruta i
comienzo
Encuentra el vértice x s Î de la coordenada polar más
cerca de Ponta_Rota y Fazer
comienzo
Ruta i : = Ruta i È { x s }
Ponta_Rota: = { x s }
F: = F \ { x s }
j : = j + 1;
Si Control (j) = Verdadero, aplicar
Procedimiento K-óptimo (Ruta i ) {* Enrutamiento *}
Fin
Fin
yo : = yo + 1
Ponta_Rota: = { x 1 }
Ruta i : = { x 1 }
Fin
FIN

Procedimiento K-Optimal (Best Vertex) ver:


• Lin (1965) y Lin y Kernighan (1973);
• heurísticas k-óptimas en este capítulo y el capítulo 9,
heurística de k-sustituciones.

La figura 9.15 ejemplifica la aplicación del procedimiento de Gillet y Miller a la gráfica de la figura 9.15.
(Los). El escaneo se ejecuta desde el vértice 5 y en el sentido de las agujas del reloj.
En esta clase de heurísticas, también encontramos el procedimiento de Christofides et al. (1979). En esto
s enfoque los grupos se forman por proximidad y se incrementan con criterios de inserción y
mejora. Fisher y Jaikumar (1981) agrupan resolviendo un problema de designación.

Página 411

https://translate.googleusercontent.com/translate_f 341/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

PROBLEMAS DE RUTA 405

dos dos dos


4 6 3 4 6 3 4 6 3

1 8 1 8 1 8

9 9 9
10 10 10
7 7 7

5 5 5
Agrupamiento
formación

Procedimiento de agrupación Escanear Formato de ruta final


(Los) (SEGUNDO) (C)

FIGURA 9.15 Ejemplo de aplicación de las heurísticas de Gillet y Miller.

Primero procedimientos de enrutamiento y luego de agrupamiento


Esta estrategia realiza la operación inversa del número uno. La primera etapa del enfoque busca
la identificación de una ruta (normalmente inviable) que englobe todos los puntos de demanda. En una
En la segunda fase, el circuito se divide en pequeñas rutas viables. El trabajo de Newton y Thomas
(1974) aplica el enfoque actual.

Procedimientos de mejora o cambio (mejora o cambio)

Se basan en la aplicación de técnicas conocidas de ramificación de problemas, combinadas con


procedimientos heurísticos para realizar cambios en la solución. En cada paso, una solución viable es
con el fin de obtener una nueva solución igualmente viable y menos costosa. El procedimiento
continúa hasta que ya no sea posible una reducción de costos. En esta clase citamos el algoritmo de
Lin y Kernighan (1973), Christofides y Eilon (1972) y Russell (1977).

• Heurísticas de aproximación mediante programación matemática


Algunos algoritmos de solución se basan directamente en el uso de técnicas de programación matemática.
aquí. El trabajo de Fischer y Jaikumar (1981) es un ejemplo de este enfoque.

• Heurística por optimización interactiva


Esta estrategia permite absorber un alto grado de interacción humana en el proceso de solución. LA
La experiencia de los expertos se puede aprovechar durante el desarrollo del algoritmo. Normal-
El método también incluye una salida de pantalla en la que se pueden ver tanto las rutas como los puntos a servir.
sualizado. Jarvis y Ratliff (1981) presentan un interesante trabajo que desarrolla una serie de
modelos heurísticos en esta línea de razonamiento. Rosenkrantz y col. (1977) analiza varios procedimientos
heurísticas para la solución PCV, en un interesante trabajo comparativo.

• Heurística de búsqueda local


Este tipo de enfoque es parte de una solución inicial y básicamente tiene como objetivo mejorar la calidad de
solución obtenida. De hecho, la búsqueda local es una estrategia para reducir la explosión combinatoria de
todo tipo de problemas NP-arduos . Algunos algoritmos constructivos también podrían clasificarse
busqueda local.

Página 412

406 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

Algoritmo de búsqueda local

COMIENZO
Leer la función de costo f y la estructura de vecindad N
Seleccione una solución s 0
Mientras que f (s) < f (s 0 ) para algunos Sĩ N (s 0 ) Do
comienzo
Seleccione s Î N ( s 0 ) de modo que f ( s ) < f ( s 0 );
s0:=s;

https://translate.googleusercontent.com/translate_f 342/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
Fin
s 0 es una aproximación de la solución óptima
FIN

• k- Heurística óptima
La k- heurística óptima propuesta por Lin (1965) es un ejemplo de una heurística de búsqueda local. De hecho, el heurismo
tica propone una búsqueda en un vecindario de una solución de enrutamiento. La búsqueda se realiza por examen
la posibilidad de intercambiar k variables (arcos) entre s 0 y s. A medida que k crece, el procedimiento se acerca
como resultado de la enumeración total (en cuyo caso k = n - 2). La vecindad de s 0 crece exponencialmente en la forma
de n ! / [( n - k )! k !]. Para k = 2, el tamaño de la vecindad de s 0 es igual an ( n - 1) / 2. Soluciones de informes de literatura
eficiente solo para k = 2 y k = 3. La figura 9.16 ejemplifica un procedimiento de 2 intercambios

dos dos
4 6 3 4 6 3

1 8 1 8

9 9
10 10
7 7

5 5

Solución S 0 Solución S

FIGURA 9.16 Ejemplo de aplicación de las heurísticas de Gillet y Miller.

Los arcos 5-4 y 9-6 se reemplazan por los arcos 5-9 y 4-6. El arco 9-4 se atraviesa en reversa
de la solución s. Si el gráfico del sustrato no está dirigido, el procedimiento anterior suele ser dos
intercambios. Si la gráfica está dirigida, y los costos de atravesar el arco 9-4 son diferentes de los de atravesar 4-9, el
El procedimiento puede considerarse como tres intercambios.

9.4 - PROBLEMAS PROPUESTOS J

1 - Formulación
Suponga que la siguiente figura representa un vecindario al que sirve un refresco local
ubicado en el ápice rectangular. La región en negrita será atendida por cierto camión de reparto.

Los. Formular el problema de encontrar la salida del almacén, atender los puntos de demanda y
regreso al almacén minimizando la trayectoria recorrida.
SEGUNDO. Formule el problema de designar cuatro camiones de reparto para atender a todo el vecindario
para minimizar la longitud total de las rutas.

Página 413

PROBLEMAS DE RUTA 407

Planta de distribución

2 - Formulación L
Suponga que la siguiente figura representa el mismo vecindario que antes y ahora estamos interesados en encontrar
entregar los resultados de las pruebas de laboratorio y recopilar material para realizar más pruebas. Los resultados de
los exámenes se entregan en los hogares de los usuarios y se recogen los materiales para nuevos exámenes
puntos de recogida. Los vehículos que realizan la entrega también realizan la recogida. Cuando un vehculo
visitar un punto de recogida (círculo más grande) debe regresar inmediatamente al laboratorio con el
recolectados para minimizar el tiempo de exposición del material a los riesgos de transporte.

https://translate.googleusercontent.com/translate_f 343/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

Planta de distribución

Desarrollar el modelo de programación que minimice la longitud total a recorrer por los vehículos
ellos en caso de:

Los. Hay 3 vehículos.


SEGUNDO. Hay 4 vehículos.

3 - Modelado L
Analizar los siguientes problemas de enrutamiento y clasificarlos según la metodología propuesta por
Bodin y Golden (1981).

• Entrega de pizza, congelada, etc.


• Distribución y recogida de leche.

Página 414

408 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

• Distribución de hormigón urbano.


• Diseño de anillos en redes de telecomunicaciones.
• Distribución de vagones de ferrocarril.
• Robots de enrutamiento en fabricación.
• Transporte de bienes muebles (mudanzas).
• Enrutamiento de paquetes en redes informáticas.
• Enrutamiento de flujos de comunicaciones en redes de telecomunicaciones.
• Recolección de caña de azúcar.
• Patrulla policial.

https://translate.googleusercontent.com/translate_f 344/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

Página 415

10 COBERTURA,
PARTICIPACIÓN
Y UBICACIÓN

10.1 - INTRODUCCIÓN

10.1.1 - La importancia de los modelos y su contexto de aplicación


Los problemas de ubicación abarcan actualmente una amplia gama de aplicaciones para la investigación.
Operacional. Generalmente, en este tipo de problemas, la escala de compromiso con las variables económicas
es enorme. Las decisiones sobre la ubicación de las instalaciones incluyen altos costos fijos y, normalmente,
un análisis de rentabilidad a largo plazo. En otro aspecto de los modelos asociados al contexto
ubicación, encontramos una serie de problemas técnicos menores derivados del proceso
productivos, como la determinación de caudales en plantas, stocks, layout, etc. En cualquier caso, el personaje
característica más llamativa del contexto en el que los problemas de cobertura / división y ubicación
Se definen es el gran impacto económico derivado del uso de técnicas de optimización.

10.2 - PROBLEMAS DE RECUPERACIÓN, PARTICIONAMIENTO Y EMBALAJE

10.2.1 - Importancia y formulación


Problemas de cobertura (problema de cobertura de septiembre - PR) y partición ( problema de partición de septiembre -
PP) son problemas de programación lineal de enteros que entran en la clase de los problemas más difíciles
sino de optimización combinatoria existente. El problema del particionamiento (PP) es un caso particular
problema de cobertura (PR) y tiene aplicaciones, entre otras, en las siguientes áreas:

• Recuperación de información en bases de datos (Balas [1980]).


• Asignación de tripulaciones en líneas aéreas (Vance et al. [1997]).
• Distribución del tráfico de comunicaciones por satélite (Minoux [1984]), García [1990]).
• Asignación de servicios de emergencia (Benvenites [1982]).
https://translate.googleusercontent.com/translate_f 345/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
• Asignación de diferentes servicios (Revelle et al. [1970] y [1976]).
• Rutas de camiones cisterna (Ronen et al. [1987]).

Página 416

410 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

• Selección de listas (Dwyer et al. [1981]).


• Gestión estratégica (Garfinkel y Nemhauser [1970]).
• Lógica simbólica (Fridshal y North [1979]).
• Equilibrio de capacidad en líneas de producción (Salveson [1955]).
• PERT / CPM (Salveson [1955]).
• Rutas de vehículos terrestres (Cullen et al. [1981], Bramel y Simchi-Levi [1994]).
• Rutas de vehículos terrestres y barcos (Bodin [1990]).
• Distribución de distritos de ventas (Easingwood, [1980]).
• Problema de coloración (Came [1977]).
• Trayectorias gráficas (Bellmore et al. [1970]).
• Planificación de tareas (Bartholdi et al. [1980]).
• Diseño de circuitos (Christofides y Brooker [1976], Bartholdi [1981], Eben-Chaine et al. [1996]).
• Ubicación de las estaciones de radar (Goldbarg [1987]).
• Explotación de petróleo en campos submarinos (Goldbarg y Fampa [1995]).
• Análisis de muestras de sangre (Nawijn [1988]).
• Asignación de armas × objetivos (Campello y Goldbarg [1991]).
• Carga de palets (Dowsland [1990]).
• Almacenamiento (Cattrysse [1990]).
• Planificación del uso de herramientas de mecanizado y corte (Finke y Kusiak [1987]).
• Distribución de servicios médicos (Daskin y Stern [1981]).
• El problema del corte (Vasko et al. [1992]).
• Tomografía (Bonnet et al. [2002]).
• Para el problema de la asignación (Savelsbergh [1997]).
• Para la designación de bandas de telecomunicaciones (Parker y Rayan [1994]).
• En la planificación de cadenas de suministro (Cochrana y Uribeb [2004]).
• Al almacenar elementos sujetos a deterioro (Hwang, [2004]).

Considerando el conjunto finito M = {1, 2, ..., m }, y el conjunto F = { M 1 , M 2 , ..., M n } una familia de


subconjuntos de M , donde M j Í M , j Î J = {1, 2, ..., n }. Una portada es una colección de elementos F , por
ejemplo F * = { M j ( 1 ) , M j (2) , ..., M j ( p ) }, donde los índices F * pertenecen al conjunto P = {1, ..., p } y son deno-
extraído por J * = { j (1), j (2), ..., j ( p )}, que tiene la siguiente propiedad:

PAGS

U M (yo) = M
=1
yo

Página 417

COBERTURA, PARTICIONAMIENTO Y UBICACIÓN 411

https://translate.googleusercontent.com/translate_f 346/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
PAGS

La partición se diferencia de la cobertura por el hecho de que, además de U M ( i ) = M todavía se requiere


=1
yo

que F j ( i ) Ç M j ( k ) = a para todo i y j p i . En otras palabras, considerando el caso de un modelo representado


asentado por un conjunto de restricciones de tipo Ax = 1, para obtener una solución de partición
en este modelo, dos o más variables pertenecientes a la solución nunca pueden cubrir la misma línea
de La . En este ejemplo, el conjunto M representaría las filas de A y los conjuntos M j ( i ) las columnas. Obviamente
mente, una cubierta o una partición, es un subconjunto de las columnas A .
El costo de la cobertura F * es ∑ c j . El problema de cobertura ( PR) es determinar una cobertura
*
j∈
J

costo mínimo. Definiendo A = [ a ij ] una matriz m ´ n cuyas filas y columnas están asociadas con el
juntos M y F , respectivamente, y tal que:

M j = { i Î M | a ij = 1} y M j = { i Î M | a ij = 0}

luego formularemos los problemas en cuestión de la siguiente manera:

4 Formulación de cobertura clásica (PR)


Podemos formular PR como un problema de programación lineal de enteros de la siguiente manera:

norte

(PR) Minimiza z = ∑ cjxj


j= 1

sujeto a:
norte
∑ a ij x j ³ 1 i = 1, ..., m
j= 1

x j Î {0, 1}, " j

Dónde:

x j º variable binaria que adopta el valor 1 cuando la columna j de A está en la solución y 0, de lo contrario.
c j costo º unidad asociada con la variable x j .

4 Formulación de partición clásica (PP)


La diferencia entre el problema de la partición y el problema de la cubierta reside exclusivamente
en la naturaleza de las limitaciones del problema. En PP, el conjunto de restricciones de PR se reduce a igual
ocupaciones. De ese modo:

norte

(PP) Minimizar z = ∑ cjxj


j= 1

sujeto a:
norte
∑ a ij x j = 1 i = 1, ..., m
j= 1

x j Î {0, 1}, " j

Por supuesto, toda solución para el PP es también una solución para el PR asociado, pero el recíproco
ca no es cierto. Solo en ocasiones particulares puede el RP establecer límites para el PP (ver
Goldbarg [1995]).

Página 418

412 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

4 Formulación de empaque clásico (PK)

norte

(PK) Maximizar z = ∑ cjxj


j= 1

sujeto a:
norte
∑ a ij x j £ 1 i = 1, ..., m
j= 1

x j Î {0, 1}, " j

El modelo de empaque es de gran aplicación práctica para resolver problemas geométricos de corte,

https://translate.googleusercontent.com/translate_f 347/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
embalaje y carga de vehículos. Su relación con el PP es bien conocida y
fue objeto de estudios en profundidad en Nemhauser y Sigismondi (1989) y Nemhauser y Trotter (1975).

4 Transformación de (PP) en (PR)


La transformación de PP en PR es abordada por Garfinkel y Nemhauser (1966), como lo muestra el modelo
(PR 2 ) que sigue:

norte

(PR 2 ) Minimizar z = ∑ cjxj


j= 1

sujeto a:
norte

∑ a ij x j ³ 1 i = 1, ..., m
j= 1

norte
∑ |Mj|xj=m
j= 1

x j Î {0, 1}, " j

Como una solución PR 2 completa cumple con todas las restricciones (³) del modelo, la solución S * , la solución
PAGS

óptimo PR 2 , cumple T M ( i ) = M . Por otro lado, toda la solución S * también debe cumplir con restricciones
yo= 1

cardinalidad que requiere que la suma de las líneas cubiertas por cada variable sea exactamente
igual a M , es decir, M j ( i ) Ç M j ( k ) = Æ. Como PR 2 cumple las dos condiciones impuestas por PP, la solución
S * está particionando.
La transformación de PP a PR también se puede lograr simplemente cambiando los pesos del vehículo.
el costo del PP (ver Lemke, et al. [1971] y Hulme y Baca [1984]).

4 Transformación de PP en PK
El problema de la partición también puede considerarse un caso particular del problema de
embalaje . El conjunto de restricciones de empaque condiciona la recolección de F a ser desarticulada como en la partición.
PAGS

es decir, M j ( i ) Ç M j ( k ) = Æ. Pero la condición de cobertura se relaja para que T M ( i ) Í M . Debajo


=1
yo

Desde el punto de vista del universo de restricciones, los requisitos de partición abarcan tanto
ras de una cubierta como un embalaje para el conjunto de M . Podemos convertir un PP en un
PK usando un vector de costos conveniente. Billionnet (1978) demostró que el PP se puede transferir
formado en un PK de la siguiente manera:

Página 419

COBERTURA, PARTICIONAMIENTO Y UBICACIÓN 413

norte

(PK 1 ) Maximizar z = ∑ cx∇j j


j= 1

sujeto a:
norte

∑ a ij x j £ 1 i = 1, ..., m
j= 1

x j Î {0, 1}, " j

metro norte

donde c j

=L. ∑ a kj - c j y L > ∑ cj
k= 1 j= 1

La presente transformación puede ser útil en varias situaciones, especialmente debido a la posibilidad
de utilizar la correspondencia entre la política de embalaje con ciertos gráficos (ver Balas y Zemel
[1977]) para generar facetas del problema de la partición (ver también Nemhauser y Sigis-
Mondi [1989] y Nemhauser y Trotter [1975]).

10.2.2 - Ejemplos de aplicaciones y problemas relacionados

4 El problema de la cobertura del gráfico

Sea una gráfica G = ( N , A ), n = | N | nosotros y q = | A | bordes. Sea A G = [ a ij ] una matriz de incidencia n ´ q de


G . Guarda silencio y n el vector de nosotros y y q el vector de bordes. También considere B G = [ b ij ] la matriz transpuesta de
El G . Ejemplificaremos las diversas estructuras asociadas con el problema de cubrir la gráfica de
Figura 10.1.

https://translate.googleusercontent.com/translate_f 348/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
3 dos

6 7

9 8

4 5

FIGURA 10.1 gráfico G ejemplo C .

$* PS
• El nodo que cubre ( N ) es el problema de determinar el conjunto N de nosotros, de mini-
PS PS
cardinalidad N Í N , de modo que todo el borde en G incide al menos en un nodo de N . F ormal-
mente:

norte

(NC) Minimizar z = ∑ xj
j= 1

sujeto a:
metro
∑ b ij x j ³ 1 i = 1, ..., n
j= 1

x j Î {0, 1}, " j

Página 420

414 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

Dónde
PS
x j º variable binaria que toma el valor 1 cuando el nodo j está en la solución ( j Î N ) y 0, en caso contrario.
PS
La figura 10.2 muestra una cobertura en los nodos del gráfico G C , N = {2, 4, 6, 8}. Nombraremos el valor
óptimo de NC (cardinalidad de la solución) de b 0 o b (G) o número de absorción . En este caso, b ( G ) = 4.

3 dos

6 7

9 8

4 5

Figura 10.2 tapa A en nosotros para la gráfica G C .

$* PS PS
• El revestimiento del borde ( A ) es el problema de determinar el conjunto El de los bordes A Í
PS
A , con cardinalidad mínima, en la que cada vértice de G se ve afectado por al menos un borde de El .
Formalmente:

metro

(EC) Minimizar z = ∑ xj
j= 1

sujeto a:
norte
∑ a ij x j ³ 1 i = 1, ..., m
j= 1

x j Î {0, 1}, "j

Dónde
PS
x j º variable binaria que toma el valor 1 cuando la arista j está en la solución ( j Î A ) y 0, si
trario;

3 dos

6 7

https://translate.googleusercontent.com/translate_f 349/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

9 8

4 5

FIGURA 10.3 bordes cubierta A en el gráfico G a C .

La cubierta del borde se puede transformar en una combinación máxima de 1 ,


vea l - 1 de los l > 1 bordes que caen en el mismo nodo. En el caso de la solución de la figura 10.3, simplemente
borde de corte 1-8 o 7-8. Llamaremos al valor EC óptimo (cardinalidad de la solución) de b 1 o b 1 ( G ).
Otros dos problemas están asociados con el problema de cobertura en los gráficos, a saber:

Página 421

COBERTURA, PARTICIONAMIENTO Y UBICACIÓN 415

$ * PS
• El paquete de nodos o un subconjunto de nosotros T , T Í N de máxima cardinalidad, de modo que cada borde de
PS
G es incidente como máximo en un nodo T . Formalmente:

norte

(NP) Maximizar z = ∑ xj
j= 1

sujeto a:
metro
∑ b ij x j £ 1 i = 1, ..., n
j= 1

x j Î {0, 1}, " j

PS
x j º variable binaria que toma el valor 1 cuando el nodo j está en la solución ( j Î T ) y 0, en caso contrario.

$*
La figura 10.4 ejemplifica un empaquetamiento de nodos , T = {1, 3, 5, 7, 9}. Llamaremos al valor óptimo de
NP (cardinalidad de la solución) de un 0 a (G), número de estabilidad o número de independencia (también
$*
también llamado por algunos autores de estabilidad interna). Los subconjuntos de T constituyen
conjuntos también denominados estabilidad, estable o independiente . En el caso del ejemplo de
En la figura 10.1, tenemos la solución NP que conduce a a ( G ) = 5, como se muestra en la figura 10.4.

3 dos

6 7

9 8

4 5

Figura 10.4 Nodo Embalaje para el gráfico G C .

$* PS PS
• La coincidencia de bordes
M ) (es el problema de determinar el conjunto M de aristas, M Í A , máximo cardíaco
PS
nidad, en la que cada vértice de G se ve afectado por como máximo un borde de M . Formalmente:

metro

(EM) Maximizar z = ∑ xj
j= 1

sujeto a:
metro
∑ a ij x j £ 1 i = 1, ..., m
j= 1

x j Î {0, 1}, " j

PS
x j º variable binaria que toma el valor 1 cuando la arista j está en la solución ( j Î M ) y 0, en caso contrario.
$*
La figura 10.5 muestra una coincidencia óptima de 1 M = {(3, 2); (4, 5); (7, 6); (8, 9)}. Nombraremos el valor
modelo EM (cardinalidad de la solución) de 1 a 1 ( G ).
Un resultado interesante de Gallai (1958) vincula la solución a los cuatro problemas anteriores:

a0+b0=n=a1+b1

https://translate.googleusercontent.com/translate_f 350/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

Página 422

416 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

3 dos

6 7

9 8

4 5

FIGURA 10.5 Una gráfica G para Matching C .

• Núcleo o núcleo de un gráfico


Cuando un conjunto de nodos en G es simultáneamente una cobertura y un conjunto estable diremos
se trata de un núcleo de la gráfica G . Un gráfico puede no tener núcleo, como en el gráfico de la Figura
10.1, o tener más de uno, como en el gráfico de la Figura 10.6. En el último caso, identificamos los números
1-3-5 y 2-4-6.

1 dos 3dos

4 5 26

FIGURA 10.6 Un grano.

Los conceptos anteriores encuentran un gran número de aplicaciones prácticas. En el contexto de


servicios de emergencia, una cobertura de nodos representa una ubicación de instalaciones
sobre los nodos de G capaces de direccionar directamente o de manera vecinal todos los vértices del gráfico.

4 El problema de la cobertura sobre lo continuo


En algunos casos, el modelo de relaciones públicas puede modelar situaciones importantes y complicadas de ubicación social.
sobre el continuo. Este problema tiene una gran complejidad, especialmente en vista de la cantidad de
configuraciones viables (Mehrez y Stulman [1984] y Smallwood [1964]). Suponga que hay un problema
juntos de puntos en  2 de coordenadas ( x i , y i ), i = 1, ..., n , que deben cumplirse en alguna demanda
por la ubicación de las instalaciones P (puntos de suministro). Suponga además que hay, asociado con
cada uno de estos puntos, una cierta distancia euclidiana r ij que representa una distancia física aceptable
entre la ubicación del punto de demanda i y el punto de oferta j . La variable binaria x ij está definida
de la siguiente manera:

x ij = 1 si r ij ³ d ij , donde d ij representa la distancia entre la ubicación del punto j al punto i , y 0 para el


en cuyo caso r ij < d ij .

Sea K (.) Una función de cobertura no decreciente para el problema específico de modo que K (.)
no puede disminuir si se cubren nuevos puntos. En consecuencia, la función objetivo de
La cobertura máxima para el problema en el plan  2 se puede expresar de la siguiente manera:

norte ⎛ PAGS ⎞
(CCI) Maximizar z = ∑ K∑⎜⎜ ⎟
X ij ⎟
= 1
yo ⎝ j= 1 ⎠

Página 423

COBERTURA, PARTICIONAMIENTO Y UBICACIÓN 417

Para incorporar las restricciones del problema consideraremos S = {1, 2, ..., s } el conjunto de posibles
puntos candidatos a ocupar localizando una posición de suministro en el plano  2 y:

https://translate.googleusercontent.com/translate_f 351/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
un escalar ijº que será igual a 1 si la distancia d ij £ r ij y 0, en caso contrario.
y j º variable binaria que será igual a 1 si el punto j está ocupado por la ubicación de una instalación y
0, de lo contrario.

En ese caso, podemos reescribir la función objetivo de CC1 e incorporar restricciones de ubicación
en el plan, constituyendo el siguiente modelo CC2:

norte ⎛ PAGS ⎞
(CC2) Maximizar z = ∑ K∑⎜⎜ ⎟
síij yo ⎟
yo= 1 ⎝ j ∈S ⎠

sujeto a:

∑ yj=P
j ∈S

y j Î {0, 1}, " j

La visualización de la matriz A = [ a ij ] no es una tarea trivial, debido al número infinito de posibles


posiciones para los puntos j , esta dificultad fue discutida por White y Case (1980). Sin embargo, podemos
a través de un razonamiento simple, transformar CC2 en un
hacer, problema de cobertura de conjunto de cardinalidad mínima , (MCSCP) de la siguiente manera:

M = {1, ..., m } que representa el conjunto de puntos a servir.


N = {1, ..., n } que representa el conjunto de posiciones de asignación de instalaciones viables.
La matriz A = [ a ij ], donde a ij = 1 si el punto i puede ser atendido por la instalación ubicada en j y 0,
caso contrário.
x j variable binaria que será 1 si se elige el punto j para recibir una asignación y 0, en caso contrario.

La ubicación de una instalación en el punto j permitirá el servicio de un subconjunto de los puntos


exigir que se llame a la j . Estos puntos serán los que tengan una distancia d ij £ r ij . los
puntos j pertenecientes al conjunto N = {1, ..., n } se pueden determinar con precisión si consideramos
que ocurrirán hacia los límites de la distancia operativa, así como en regiones que
al menos proporcionar servicio simultáneo a más de una instalación. Si tal razonamiento no fuera válido
Sin embargo, la solución CC2 sería trivial con una facilidad asociada a cada demanda. En este caso, el problema
CC2 se puede reescribir con el modelo (PRM - problema de superposición mínima):

norte

(PRM) Minimizar z = ∑ xj
j= 1

sujeto a:
norte

∑ a ij x j ³ 1 i = 1, ..., m
j= 1

x j Î {0, 1}, " j

Teniendo cuidado de obtener la matriz A como se muestra en la Figura 10.7, con los puntos
ubicación de instalaciones discretizadas en las intersecciones de los círculos de máxima distancia.
Sin embargo, una topología similar a la anterior, utilizando un lugar geométrico rectangular (en
sustitución de círculos) es sugerido por Benveniste (1982). La formulación PRM se puede aplicar a
problemas de ubicación en el continuo. Un ejemplo es el problema de la ubicación de
alumbrado público, donde los puntos de demanda son los lugares donde se desea proporcionar iluminación
nación o incluso una malla de estos puntos. El problema de ubicar las cámaras de vigilancia, la asignación
la focalización y explotación de petróleo en pozos submarinos son otros casos que se pueden formar

Página 424

418 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

3
O dos
O
3
dos
R ij

O
yo
1
1

Puntos a ser Lugar geométrico Consideración de


dos
asistió en de una asignación j todas las demandas

Puntos de servicio

3 x2
x3 dos
x1 x2 x3 x4

1 1 1 1 1

https://translate.googleusercontent.com/translate_f 352/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
x1 1 x4 A= dos 0 0 1 1

3 1 1 0 0

Puntos de servicio Puntos de demanda

FIGURA 10.7 Obtención de la matriz A.

de esta manera (Goldbarg [1987]). Considerando que existe una posibilidad práctica de discreción
demanda, el modelo en cuestión se puede utilizar en otras situaciones relacionadas, como la ubicación
estaciones de metro y evacuación de emergencia en zonas amenazadas por catástrofes. La figura
10.8 (a) muestra el proceso de discretización de la demanda de un conjunto de bloques para el acceso a las escuelas.
estaciones de metro. En la Figura 10.8 (b) se asocian las restricciones máximas de desplazamiento previstas para
usuarios a un punto de acceso a la estación (en el ejemplo no se consideraron todos los puntos
solo para no sobrecargar el dibujo). La figura 10.8 (c) muestra una posible solución a la
de la estación buscada.

• Exploración de petróleo en un campo submarino: un estudio de caso


Una de las aplicaciones más interesantes de la formulación PRM se puede encontrar en la optimización de
figuración de la explotación de un campo petrolífero submarino. En este caso, la discretización de rango es
bastante adecuado tanto para abordar la necesidad de ubicación en el continuo como para el número
de las variables involucradas (Vibranovski et al. [1990]). Por otro lado, los enormes costos que implica la
La construcción y operación de sistemas de explotación petrolera submarina hacen que el proceso de optimización
tarea esencial.

Definición del problema : el petróleo se extrae de la roca matriz de un campo submarino a través de
perforado en el suelo. Estos pozos están dispuestos de manera que se optimice el volumen de petróleo extraído,
perforado perpendicular u oblicuamente al suelo. En el primer caso, el pozo
se llama vertical y en el segundo, direccional. El sitio submarino donde comenzará la perforación
se llama boca de pozo, y el lugar más profundo, donde la exploración se realiza correctamente
realizado se llama el punto objetivo. El alcance del pozo es la distancia entre las proyecciones de la cabeza.
y el punto objetivo en el plano definido por la superficie marítima. Cuando el pozo es vertical, el rango es
cero, sin embargo para pozos direccionales el alcance es una medida relevante debido a la necesidad de cumplir
cumplir con un estándar de longitud máxima para llegar a un pozo.
Todo el petróleo extraído de los pozos se envía a la unidad o plataforma de producción estacionaria
(UEP). En vista de las limitaciones operativas, el número de conexiones directas entre los pozos y el UEP es limitado.
tated. El control del número de conexiones directas a UEP se realiza mediante colectores que normalmente también
También se encuentran en el suelo submarino y funcionan como concentradores de petróleo.

Página 425

COBERTURA, PARTICIONAMIENTO Y UBICACIÓN 419

(a) Discretización de la demanda (b) Restricciones de rango

(c) Puntos de ubicación viables (d) Una solución

FIGURA 10.8 El caso de la ubicación de las entradas a una estación de metro.

Al igual que UEP, los colectores también están limitados en su capacidad de interconexión.
con los pozos. Por otro lado, debido a la necesidad de mantener la viabilidad económica,
los colectores deben funcionar con un número mínimo de conexiones. La conexión entre pozos y colectores es

https://translate.googleusercontent.com/translate_f 353/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
conveniencia, de modo que un pozo pueda conectarse directamente a UEP cuando sea económicamente
indicado. Las interconexiones entre pozos y colectores , colectores y UEP, y pozos y UEP se denominan
los paquetes .
La configuración del campo está influenciada por una gran cantidad de factores, entre los que destacan
por su significado:

• Coordenadas de los objetivos y profundidades del pozo.


• Perfil de profundidad de agua del campo.
• Número máximo de pozos que admite cada colector submarino.
• Número mínimo de pozos por colector , que corresponde al grado de uso de cada colector
en el proyecto.

• Tipos de plataformas disponibles y sus profundidades máximas de agua operativa.


• Número máximo de interconexiones de colectores o pozos ( haces ), que pueden
conectado a la unidad de producción estacionaria.

• Rango máximo permitido para pozos direccionales.


• Costos de equipo y servicio:
• Perforación.
• Colector submarino.

Página 426

420 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

• Paquete de conexión entre colector y plataforma.


• Paquete de conexión entre pozo y colector o plataforma.
Resolver el PCCS significa determinar los siguientes elementos para minimizar los costos de
implantación:

• Coordenadas del posicionamiento UEP y plataforma utilizada.


• coordenadas de posicionamiento (s) de colector ( s ) submarino (s), con pozos a lo (s) asociado.
• Coordenadas de cabezas de pozo.
Tenga en cuenta que otras partes de la solución para el PCCS son técnicamente posibles, especialmente
explotación en aguas profundas, de modo que la necesidad, por ejemplo,
el aceite se conduce a la plataforma flotante, o incluso si el UEP se encuentra en la superficie
del mar. Incluso en estos casos, sin embargo, el enfoque descrito aquí se puede utilizar para definir el
colectores .

UEP

Espada
Haz
agua
Colector / Plataforma
Jefe de
bien

Bien Bien Colector


vertical direccional

Puntos objetivos

FIGURA 10.9 Vista de perfil de un campo submarino.

Formulación matemática del PCCS: el PCCS1


Algunos de los factores enumerados anteriormente, aunque eventualmente significativos, son difíciles de
cuantificación y sujeto a un comportamiento incierto o variable en el tiempo. Por otro lado,

https://translate.googleusercontent.com/translate_f 354/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
pensando sólo en la asignación de múltiples , en un campo compuesto por m pozos y, incluso en posesión
criterio que reduce la ubicación en los puntos infinitos del plano a n ubicaciones viables para
las variedades , el número de soluciones viables a examinar sería n m . Teniendo en cuenta que el problema
completa requiere una consideración combinatoria adicional para la ubicación de los cabezales de pozo y
UEP, parece evidente la imposibilidad del tratamiento enumerativo de los grandes problemas reales
(donde al menos m > 100 yn > 50). El método heurístico propuesto divide el problema en tres etapas, la
saber:

• La primera etapa tiene como objetivo establecer el número de variedades que existirán en el campo, sus ubicaciones
y el conjunto de pozos conectados a ellos.

Página 427

COBERTURA, PARTICIONAMIENTO Y UBICACIÓN 421

Jefe de
bien

Puntuación Colector
objetivo
X
X

X UEP X

Haz
Bien / Colector

FIGURA 10.10 Plano esquemático de un campo submarino.

• La segunda etapa tiene como objetivo la ubicación definitiva de las bocas de pozo.
• El tercer paso tiene como objetivo ubicar la unidad de producción estacionaria.
Definir un radio operativo efectivo R para cada pozo r Î M = {1, ..., m }, como el más grande
distancia permisible entre el pozo y el colector al que está conectado, un pro-
procedimiento de discretización para PCCS1 capaz de reducir el conjunto infinito de ubicaciones viables
de colectores a un máximo junto con los componentes ( m 2 ) de la siguiente manera: teniendo en cuenta
Tener en cuenta los rayos operativos reales determinar, en el plano, puntos de ubicación para el manifiesto
pliegues N = {1, ..., n } en las intersecciones de los círculos centrados en los pozos, cuyos radios son equivalentes a sus radios
de operación. Estos puntos de intersección para permitir la interconexión entre al menos dos pozos y ma-
nifold ; sin embargo, pueden interconectar otros pozos cuyos círculos operativos los contengan. La utilización
El concepto de rayos operativos efectivos o rayos de sensibilidad introduce un nuevo enfoque para
la formulación de problemas de ubicación en el plan. En el caso de PCCS la solución obtenida en el plan
puede extenderse al perfil del fondo marino, considerando su proyección topográfica. Es im-
Importante señalar que la ubicación de los colectores , así como su designación en las cabezas de pozo, es
llevado a cabo en la primera fase sin que la posición definitiva de las cabezas de pozo haya sido aún perfectamente determinada
terminado . En principio, se consideran todos los pozos verticales, por lo que son coincidentes, en
planta, puntos objetivos y bocas de pozo. Por tanto, una configuración de explotación de
campo petrolero submarino se reconoce como permisible cuando todos los pozos r Î M ,
cubiertos por colectores asignados sobre los puntos viables i Î N , obtenidos por las intersecciones de los círculos
ellos. Considerando las variables 0-1, los costos y coeficientes se definen a continuación:

• Variable de decisión x j asociada con la ubicación de una variedad en un punto viable.


x j será igual a 1 si se asigna una variedad en un punto j , obtenido por la intersección de dos círculos y
0, de lo contrario.

• Matriz de cobertura A = [ a rj ].
a rj será igual a 1 si el pozo r se puede conectar al colector ubicado en el punto j , y 0 en caso contrario.

• c j , el costo de asignar un colector en j más el costo de interconectarlo a todos los pozos que se pueden
ser servido por él.

La matriz de cobertura A = [ a rj ] de dimensión m ´ n debe obtenerse para cada problema, dependiendo de


la ubicación de las cabezas de pozo. Esta matriz representa la capacidad de cada punto viable para cubrir
más de un pozo simultáneamente. Cada columna de la matriz representa un posible punto viable en
al que se le asignará un colector . Los costos c j de cada asignación j ahora se pueden calcular con mucho

https://translate.googleusercontent.com/translate_f 355/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

Página 428

422 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

buena precisión, teniendo en cuenta todos los factores considerados importantes para el puesto específico. Des-
De esta forma, tenemos el siguiente modelo:
norte

(PCCS1) Minimizar z = ∑ cjxj


j= 1

sujeto a:
norte
∑ a rj x j ³ 1 r = 1, 2, ..., m
j= 1

x j Î {0, 1}, j = 1, 2, ..., n

La restricción de cobertura asegura que todos los pozos estén conectados al menos a un colector . Me gusta
en el caso real, cada pozo debe estar conectado a un solo colector , la solución PCCS1 debe revisarse, eliminarse
socavar los recubrimientos (Leal [1993]). La solución revisada será una solución de partición.
menor costo que el obtenido en PCCS1.

Obtención de la matriz A

Ejemplificaremos a través de este problema la obtención de la matriz A para los demás casos de asignación
en el continuo. La matriz de cobertura PCCS1 se obtiene a partir de la generación de puntos viables de
Calibración de colectores con ayuda de círculos operativos. Sin embargo lo és
las restricciones restantes del problema; de lo contrario, la solución PCCS1 puede no ser viable para el PCCS. Fe-
Desafortunadamente, la consideración de estas restricciones se puede realizar en tiempo polinomial sobre N , en el momento
organización de la matriz A , de acuerdo con las siguientes reglas:

• Se garantizan las restricciones sobre el número máximo y mínimo de pozos servidos por un colector
mediante:

1. Considere todas las columnas en las que el número de pozos cubiertos es mayor que el límite inferior y
menor que el límite superior para la capacidad del colector . Considere todas las columnas en las que
el número de pozos cubiertos viola el límite superior de S unidades sobre la eliminación de S po-
más distante del punto de asignación.

2. Considere todas las columnas en las que el número de pozos cubiertos viola el límite inferior en R
unidades, incluyendo los pozos R más cercanos al punto de asignación. Las restricciones
en relación con la profundidad del agua se sirven eliminando las columnas asociadas con estas violaciones.

• La topografía, el acceso u otras restricciones pueden considerarse similares a la hoja


de agua. Una vez que se cambia la configuración de la columna, se debe volver a calcular el costo asociado con ella
directamente de los datos disponibles. Si hay pozos no cubiertos por colector , o
es decir, filas de la matriz A no cubiertas por ninguna columna, y no es posible asignarlas a múltiples
más juntas, estas líneas se eliminarán de la matriz. Este caso representa la situación de la conexión directa
entre un pozo y la plataforma.

• La designación de un pozo no servido por un colector se puede realizar de la siguiente manera


regla:
Se buscan los puntos k factibles para la asignación de colectores más cercanos al pozo. Se extiende,
luego, el radio de operación del pozo para permitir su conexión con todos aquellos entre los k
puntos que aún no están saturados dado un número de pozos equivalente al límite máximo
posibles conexiones para colectores . Por lo tanto, tenemos la rj = 1, donde j corresponde a las columnas
correspondiente. Sin embargo, todavía existe la posibilidad de que las k columnas estén saturadas. En esto
En este caso, la línea se elimina de la matriz y el pozo se conecta directamente al UEP. Con este enfoque relacionado
la segunda hipótesis planteada en el desarrollo de la formulación PCCS1, que no admitía
paquetes que conectan el pozo al UEP.

Página 429

COBERTURA, PARTICIONAMIENTO Y UBICACIÓN 423

• Además de las reducciones en filas y columnas necesarias para aplicar las restricciones impuestas al problema,
otras reducciones válidas para el problema de cobertura se pueden utilizar con el propósito de
simplifica el problema. Se pueden encontrar más detalles en Fampa (1992).

Después del preprocesamiento y la solución PCCS1, se definirá la ubicación de los colectores de campo
definidos, así como el conjunto de pozos conectados a ellos. El costo de cada columna viene dado por un costo
C m fijo de instalación de colector plus

https://translate.googleusercontent.com/translate_f 356/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

c paquete / pozo ´ ∑ d se ríe


r∈
Pi

donde c paquete / pozo es el costo del paquete que conecta el pozo al colector , donde d ri es la distancia euclidiana entre
el punto objetivo iy la boca del pozo r , y p j es el conjunto de pozos servidos por la asignación de un colector
en el punto viable j .

El PCCS2
En el desarrollo del segundo paso de resolución, el objetivo es establecer el mejor posicionamiento
para las cabezas de los pozos. Para ello, la hipótesis que estableció todos los pozos como pozos verticales es
laxos, admitiendo entonces la existencia de pozos direccionales, de manera que sus cabezas se ubican en
sobre la línea que une el objetivo del pozo y el colector al que está conectado, respetando, no obstante, el límite
impuesto por el rango máximo permitido. Es evidente que tal admisión es bastante razonable, ya que la
La calibración de la boca de pozo fuera de la línea mencionada implica un costo de implantación obviamente mayor debido a
mayor longitud del haz de eslabones y mayor complejidad en la geometría de perforación.
Así, el objetivo de la segunda etapa es determinar, entre los puntos viables de asignación de los jefes de
pozos, aquellos que conducen a un menor costo, representado por el costo de perforación del terreno
más el costo del paquete que conecta el pozo al colector .
Este paso se resuelve mediante un problema de programación no lineal unidimensional que
consiste en determinar x cr , y cr , z cr , r = 1, 2, ..., m , coordenadas definidas de cabezales de pozo (ver
cortes en Fampa [1992]), con el fin de minimizar la suma de los costos de perforación y el paquete de conexión
entre el pozo y el colector .
Para una ubicación conocida del colector , la ubicación óptima del cabezal de pozo no depende de la ubicación
otros pozos. La región viable para la asignación de la boca de pozo comprende la línea que
parte de la proyección de tu objetivo en el suelo hacia el colector que te sirve, siempre siguiendo el
topología del terreno. El final de la línea que representa los puntos candidatos para colocar el
La cabeza entonces se establecerá por el alcance máximo para pozos direccionales o la distancia entre la cabeza
pozo y colector , si es menor que el alcance máximo, como se muestra en la Figura 10.11.

Haz
Alcance efectivo Bien / Colector

Espada
agua
Colector

Región viable

Depositar

Punto objetivo

FIGURA 10.11 Región viable para la asignación de cabezas de pozo.

Página 430

424 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

4 El problema de planificación de la ubicación de cobertura máxima (MCLP)


Este modelo es una variante del problema de ubicación y cobertura sugerido por Church y ReVelle
(1974) y se encuentra con una clase de problemas muy parecidos a los de PRM. El modelo fue desarrollado en
evolución al modelo de Toregas y Revelle (1972) que, siendo un modelo con restricciones de
revestimientos clásicos, orientados a minimizar el número de instalaciones necesarias para satisfacer la demanda
respetó, como en el modelo PRM, indirectamente, las restricciones de distancia.
Church y ReVelle (1974) formularon el MCLP como:

metro

(MCLP1) Maximizar z = ∑ diyi


yo= 1

sujeto a:
norte
∑ a ij x j - y i ³ 0, i = 1, ..., m
j= 1

norte

∑ xj=p
j= 1

x j , y yo Î {0, 1}, i = 1, ..., m j = 1, ..., n

https://translate.googleusercontent.com/translate_f 357/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

Dónde:

y i º variable binaria que toma el valor 1 si el nodo i está cubierto y 0, de lo contrario.


x j º variable binaria que asume un valor de 1 si una instalación se encuentra en el vértice j y 0, de lo contrario.
a ij = 1 si la demanda i será cubierta por la instalación asignada en j y 0, en caso contrario;
d i º demando en el vértice i .
p. número de instalaciones a encontrar.

Church y Toregas formularon el MCLP considerando implícitamente


como sigue:

norte

(MCLP2) Minimizar z = ∑ xj
j= 1

sujeto a:
norte
∑ xj³1 i = 1, ..., n
j∈
Ni

x j Î {0, 1}, " j

Dónde:

x j variable binaria que es igual a 1 cuando el nodo j está ocupado por una instalación y 0, en caso contrario.
N i = { j | d ij £ R }, donde R es la distancia máxima que se espera para llegar al servicio desde su punto de
ubicación.
El modelo MCLP tiene una conexión estricta con los modelos p- mediana (Khumawala [1973]).

Para que sea posible considerar una restricción asociada al número máximo de instalaciones
asignable, una restricción a menudo necesaria en la práctica debido a limitaciones presupuestarias.
y maximizar el cumplimiento de una demanda de instalaciones dentro de un rango máximo de ese
service, Chung y Revelle (1986) reformularon el MCLP de la siguiente manera:

Página 431

COBERTURA, PARTICIONAMIENTO Y UBICACIÓN 425

(MCLP3) Maximizar z = ∑ a iy i
yo∈yo

sujeto a:
Σ x j ³ y ii Î I
yo∈Ni

∑ xj=p
yo∈J

x j , y j Î {0, 1}, " j

Dónde:

y i º variable binaria que toma el valor 1 si el nodo i está cubierto y 0, de lo contrario.


I = {1, ..., m } es el conjunto de nodos de demanda.
J = {1, ..., n } es el conjunto de nodos que reciben una asignación de instalaciones.
x j y N i : como se definieron previamente.
el i- ésimo vértice en demanda i .
p º el número de vértices en los que residen las instalaciones.

Este problema tiene varias aplicaciones en el área de ventas. Normalmente, su solución estará asociada
asociado a la mejor inversión en redes de distribución y representantes de productos, ventas
además de talleres autorizados y servicios públicos o de emergencia. Chung y Revelle (1986) sugirieron
una solicitud para el área de aplicación del gobierno. Almiñana y Pastor (1997) sugieren una
heurística (de la clase heurística sustituta ) para el problema, y Galvão y ReVelle (1996) otra
heurística basada en la relajación lagrangiana del problema. Una de las heurísticas más extendidas para la
El problema se llama algoritmo de adición codicioso . Este algoritmo comienza sin ninguna instalación localizada
y va, en cada una de las p etapas, asignando una facilidad al nodo que conduce al mayor crecimiento
cobertura.

4 El problema de la ubicación del concentrador (PLC)


El diseño de redes de comunicación de datos eficientes es hoy uno de los problemas más importantes en
área computacional. Este modelo es capaz de representar varias instancias del problema arquitectónico.

https://translate.googleusercontent.com/translate_f 358/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
redes centralizadas. El modelo considera la existencia de tres niveles en la estructura jerárquica de
una red de comunicaciones:

• Terminales, T i , i Î N , N = {1, ..., n }, generalmente idénticas, geográficamente dispersas y ubicadas


conocido.

• Concentradores, C j , j Î M , M = {1, ..., m }, unidades más grandes y capacidad que los terminales, pueden
si se encuentran o no junto a las terminales, y cuyo número y ubicación se suele dar
conocido.

• Unidad central, C 0 , equipo grande en comparación con los otros elementos y


ubicación normalmente conocida.

El problema es responder cinco preguntas:

1. ¿Cuántos concentradores se necesitarán?

2. ¿Dónde deberían ubicarse?

3. ¿Cómo se conectarán los concentradores a la planta?

4. ¿Qué terminales se asignarán a qué hubs?

5. ¿Cómo se conectarán los terminales a los concentradores asignados a ellos?

Página 432

426 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

La práctica adoptada en los proyectos sugiere que las terminales estén conectadas directamente a sus
controladores y concentradores directamente a la planta. También hay una restricción en la capacidad de
concentradores, por lo que no es recomendable que el concentrador C i no reciba más de k i termine
administrar. Considerando cómo d j el costo de implementar una unidad concentradora en el
punto j y c ij el costo de conectar un terminal T i al concentrador C j , el problema es encontrar la red
que minimiza los costos de implementación. Podemos formular el PLC de la siguiente manera:

norte metro metro

(PLC) Minimizar z = ∑∑ c ij x ij + ∑ djyj


yo= 1 j= 0 j= 1

sujeto a:
metro

∑ x ij = 1 i = 1, ..., n
j= 0

norte
∑ x ij £ k j y j j = 1, ..., m
yo= 1

x ij , y j Î {0, 1}, " i , j

Dónde:

y i es una variable binaria que asume el valor 1 si se elige el nodo i para el concentrador y 0, en caso contrario
Río.
x ij es una variable binaria que toma el valor 1 si el terminal T i está conectado al concentrador C j y 0, si
contrario.

El PLC es un problema de particiones (restricciones iguales) sujeto a una restricción de carga.


propósito.
Los problemas descritos anteriormente tienen aplicaciones prácticas que van desde
redes de comunicaciones a la ubicación de los servicios de emergencia y seguridad, así como asistencia con
logística.

4 Problema de programación de la tripulación de la aerolínea - ASP


El problema ASP consiste en asignar n tripulaciones a un conjunto de m vuelos, minimizando el costo
funcionamiento total. El problema puede estar sujeto a condiciones geográficas, de tiempo,
tripulaciones, número de aterrizajes y despegues para una tripulación, etc. Recientemente este problema
se ha formulado preferiblemente como un PP (Vance [1997]) de la siguiente manera:

(ASP) Minimizar z = Σ c py p
∈ PAGS
PAGS

sujeto a:
∑ y p = 1, iÎF
p: i ∈
P

y p Î {0, 1} , pÎP

donde F es el conjunto de segmentos de vuelo y P es el conjunto de todas las configuraciones de asistencia

https://translate.googleusercontent.com/translate_f 359/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
considerado. y p es una variable binaria que asume un valor de 1 si la configuración de la tripulación p Î P es
en la solución y 0, en caso contrario. La columna p tiene una entrada igual a 1 en la fila i si el vuelo i tiene servicio
por la configuración p y c p es el costo de configuración p . Para que podamos usar esta formulación cumple
generar escenarios viables para el problema. La dificultad de esta enumeración es discutida por Graves et
Alabama. 1993. ASP es un caso particular y muy importante del problema de generación de rutas para vehículos (con
actividades) que se cubrió en el Capítulo 9. Con una formulación similar es posible
Es posible lidiar con la programación de la escala de otros tipos de tripulaciones como los trenes.

Página 433

COBERTURA, PARTICIONAMIENTO Y UBICACIÓN 427

4 El problema del recorrido de cobertura o del recorrido de cobertura (CTP)


Es un problema interesante que permite, a través de su formulación, una visión clara de la interdependencia
Dependencia entre los problemas de la programación completa y la teoría de grafos. Este problema puede ser
también estudió junto con el problema del viajante de comercio (PCV). Sea G = ( V È W , E ) un gráfico
no dirigido donde V È W forman el conjunto de vértices y E = {( v i , v j ): v i , v j Î ( V È W ), i < j } o
conjunto de bordes. Podemos considerar que v 1 sería un depósito y V el conjunto de vértices que podrían
se puede visitar desde la v 1 . Llamaremos T , T Í V a un conjunto de vértices que deben ser
visitado ( v 1 Î T ) y W un conjunto que debe cubrirse. Se define una matriz C sobre E que satisface el
condición de desigualdad triangular. El CTP consiste en determinar un ciclo hamiltoniano de duración
mínimo sobre el conjunto V de modo que el recorrido formado contenga todos los vértices de T y todos
El vértice de W está cubierto por el recorrido, es decir, cada vértice de W está a una distancia máxima c de algún
vértice del recorrido. Considere la gráfica de la figura 10.12 (a) con todos los arcos de peso 1, independientemente
independientemente de su significado. Considerando que la distancia c también es igual a 1, v 1 = 3, W = {2, 4, 8, 14} y T = {3, 5,
6, 7, 8, 10, 13} en la figura 10.12 (b) se muestra una solución de CTP.

dos
13 dos
13
13
7 13
14
7
14

10

3 10
8
3
8

5 11

5 11
8

6 8

W 6

12
4 12
T
4

(Los) (SEGUNDO)

FIGURA 10.12 Solución CTP.

Podemos formular CTP como un problema de programación completo (ver Gendreau et al. [1997]) de
como sigue:

(CTP) Minimizar z = ∑ c ij x ij
ij<

sujeto a:
∑ y k ³ 1, v1ÎV (10,1)
vk ∈ Sl

∑ x ik + ∑ x kj = 2 y k vkÎV (10,2)
ik< j> k

∑ x ij ³ 2y t S Ì V , £ 2 | S | £ n - 2, T \ S ¹ Æ v t Î S (10,3)
∈ S, vj ∈ VS\
Sierra
o vj ∈ S, vi ∈ VS\

x ij Î {0, 1} 1£i<j£n (10,4)


yk=1 vkÎT (10,5)
y k Î {0, 1}, vkÎV\T (10,6)

Página 434

https://translate.googleusercontent.com/translate_f 360/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

428 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

donde y k = 1 si y solo si v k pertenece al tour. Para v i , v j Î V , y i < j , x ij = 1 si y solo si la arista ( v i ,


v j ) Î E está en el recorrido y 0, en caso contrario. Sin embargo, d lk = 1 si y solo si v k Î V y S l = { v k Î V | d lk =
1} para todos v l Î W .
La restricción de tipo (10.1) asegura que cada vértice de W esté cubierto por el recorrido. La restricción (10.2) garantiza
durante la continuidad del recorrido (grado dos por cada vértice del recorrido). La restricción de tipo (10.3) representa
las condiciones de continuidad o eliminación de subtours. Las otras restricciones representan los requisitos
integridad. Este problema fue resuelto por Gendreau et al. (1997), mediante un algoritmo
ramificación y corte y por un procedimiento heurístico. Instancias con
600 vértices.

4 Problemas de cobertura multiobjetivo


Entre los problemas de cobertura multiobjetivo, el más común es el que tiene como objetivo equilibrar costos
para establecer la cobertura de las instalaciones y satisfacer la demanda. Podemos ejemplificar
una cobertura multiobjetivo utilizando un modelo de cobertura bicriterial de la siguiente manera:

metro

(PRB) Maximizar z = ∑ diyi


= 1
yo
norte

Minimizar w = ∑ cjxj
j= 1

sujeto a:
norte
∑ a ij x j - y i ³ 0, i = 1, ..., m
j= 1

x j , y i Î {0, 1}, i = 1, ..., mj = 1, ..., n

Dónde:

y i º variable binaria que toma el valor 1 si el nodo i está cubierto y 0, de lo contrario.


x j º variable binaria que adopta el valor 1 si una instalación se encuentra en el vértice j y 0, de lo contrario.
a ij = 1 si la demanda i será cubierta por la instalación asignada en j y 0, en caso contrario.
c i º costo de ubicar una instalación en el vértice i .

El modelo de bicriterio anterior es muy similar a la formulación MCPL1. Este pro-


Church y Davis (1992) abordan el problema y sus soluciones.

4 problemas de cobertura capaz

Estos problemas corresponden a una serie de situaciones híbridas en las que la toma de decisiones implica
los conceptos de cobertura y ubicación.
Storbeck (1988) presenta el siguiente modelo llamado modelo capacitado de ubicación de cobertura máxima
del (CMCLP), o problema de ubicación en cobertura calificada, para los casos en que las instalaciones
pueden, de alguna manera, cumplir con los pedidos entrantes y no violar las restricciones de capacidad
Ciudad. Pirkul y Schilling (1989) estudian dos modelos similares al PRB, desarrollando un algoritmo
basado en la relajación y optimización lagrangiana por el método de subgradientes.

4 El problema de cobertura máxima de la ruta más corta (PCMCC)


Esta clase de problemas aborda el enrutamiento con la inclusión de aspectos de cobertura. La principal diferencia
La diferencia entre el contexto PCMCC y CTP es la consideración de objetivos múltiples. Las aplicaciones involucran:

• La definición de diseños de redes de energía eléctrica que puedan atender áreas de mayor demanda.
• El diseño de carreteras y corredores de flujo que satisfagan las distintas demandas de transporte.

Página 435

COBERTURA, PARTICIONAMIENTO Y UBICACIÓN 429

• Varios problemas de desbordamiento y enrutamiento bimodal (que involucran dos tipos de medios)
transporte), como la distribución aérea o por carretera en la que se seleccionan varios aeropuertos.
Dada la posibilidad de cobertura vial para conexión y distribución.

• Trazado de sistemas de transporte urbano en redes integradas de metro-bus.


En este modelo, las consideraciones de la interacción entre el trazado de la ruta y su entorno son
examen y consideraciones (Mesa y Boffey [1996]). Current et al. (1985) son los primeros en informar
este problema en la literatura y proponen la siguiente formulación:
Considerando una ruta entre los nodos O (nodo de suministro) y D (nodo de demanda) de un gráfico G =

https://translate.googleusercontent.com/translate_f 361/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
( N , A ) que maximiza la cobertura de la demanda satisfecha y minimiza los costos de implementación de la
te da forma:

(PCMCC) Maximizar z = Σ d ky k
k

Minimizar w = ∑ d ij x ij
ij ,

sujeto a:
⎡ -1 si j = 0 ⎤
∑ x ij - ∑ x jk = ⎢ 0 si j OD ∉ {,} ⎥
yo k ⎣ + 1 si j D = ⎦

∑ un jk ∑ ( x ik + x ki ) - 2 y yo ³ 0 j Ï { O , D }
k yo

x ij , y i Î {0, 1}, yo , j Î A

Dónde:

y k º variable binaria que asume un valor de 1 si el nodo k está cubierto y 0, en caso contrario ( y O y y D son fijos
igual a 1).
x ij º binaria variable que asume un valor de 1 si el arco (i , j ) está en el camino elegido y 0, de lo contrario;
a ik = 1 si k está cubierto con j y 0, en caso contrario.
d kº representa la demanda en el vértice k.
d ij º representa la longitud del arco ( i , j ).

• Servicios de respuesta móvil


Un problema asociado con PCMCC es lo que podemos llamar un servicio móvil. En este problema,
La cobertura del servicio se realiza en una ruta con varias paradas importantes en el tiempo. El tem-
las paradas son de un orden de magnitud similar al de los viajes. En este caso, el desarrollo
El desarrollo de caminos en los que el número de nodos es numéricamente limitado cumple con el contexto de la
delo. Como en la otra dimensión temporal tenemos las distancias de desplazamiento, la consideración de
ácaros para la longitud de los caminos es otra necesidad. La posibilidad de considerar un
La flota de servidores permite varias variantes del problema (Lindner-Dutton [1991]), incluida la
posibilidad de sucesivas visitas del mismo servidor al mismo pico de demanda y, en ese sentido
Sin embargo, el modelo se desvía del diseño básico de los modelos de enrutamiento. Un posible criterio para
abordar estas situaciones es minimizar los retornos al mismo punto de demanda (Malandraki y
Daskin [1993]).

Página 436

430 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

• Conexiones físicas
En diversas situaciones, las conexiones de circuitos eléctricos y distribución de agua pueden presentarse en
una configuración que es análoga a los modelos de servicio de contestador móvil. Para el caso de
conexiones de agua a presión, por ejemplo, los giros y contornos de una conexión representan
caída de presión (presión). En el caso de conexiones a una red eléctrica, la longitud de la línea y su
Las variaciones conducen a una menor confiabilidad y pérdida de voltaje. En ambos casos surge la necesidad de
imponer limitaciones al número total de nodos pertenecientes a la misma rama o circuito, así como
buscan minimizar las curvas y distancias recorridas. Se pueden encontrar modelos para tales problemas
en Current et al. [1986]). La figura 10.13 muestra el efecto de la disposición física en el diseño de un
red de servicio. La solución 2 se realiza en cuatro ramales sin cortes ni derivaciones en las conexiones
mientras que en la solución 1 hay divisiones.

1 4 5 6

dos 3 7 8

9 10 15

1 4 5 6
12 11 dieciséis

https://translate.googleusercontent.com/translate_f 362/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

dos 3 7 8

14 13

Solución 1

9 10 15

1 4 5 6

12 11 dieciséis

dos 3 7 8

12 13

3 7 8
Red para conectarse

12 3 dieciséis

12 13

Solucion 2

FIGURA 10.13 Soluciones para conectar una red.

10.2.3 Métodos de solución para PR y PP


Tanto PP, PR y PK son NP-arduos problemas (Karp [1975] y [1976]), lo que hace que sea extremadamente difícil
la expectativa de un buen desempeño de algoritmos exactos para problemas grandes. A
Las técnicas más utilizadas para la solución abordan dos aspectos principales: métodos directos, desarrollados
específicamente para la solución de estos problemas y los llamados métodos indirectos, es decir, métodos
creado para otros problemas y que también se aplican con éxito en la resolución de esos problemas.
Destacamos en las Tablas 10.1, 10.2 y 10.3 algunas de las principales obras de la zona.

Página 437

COBERTURA, PARTICIONAMIENTO Y UBICACIÓN 431

TABLA 10.1 SOLUCIONES EXACTAS

Año Autores Que se acerca

1971 Lemke Relajación lineal

1973 Martillo álgebra de Boole

1974 Marsten Enumeración implícita

1975 Bullets y Padberg Método de pivote completo y simplex

1975 Lin Generación de columnas

1975 Martillo álgebra de Boole

1977 Etcheberry Enumeración implícita

1977 Balas Planes de corte

1979 Nemhauser y Weber Relajación lagrangiana

1979 Bullets y Zemel Teoría de grafos

1980 Marsten et. Alabama Agregación de restricciones lógicas

1980b Balas y ho Planes de corte para cubrir

1980a Balas Planes de corte

mil novecientos
Ronen
ochenta y dos Generación de columnas

1984 Hulme y col. Restricciones booleanas

1984 Hulme y Baca Restricciones booleanas

1984a Vasko y Wilson cama y desayuno

1986 Fisher y Kedia Dualidad

1987 Beasley Relajación y dualidad lagrangiana

1987 Campello y Maculan Relajación lagrangiana

1988 RAM Agregación de restricciones lógicas

1989 Ali y Thiagarajan Relajación y dualidad lagrangiana

1990 Beasley y Jörnsten Relajación y dualidad lagrangiana

1990 Fisher y Kedia Dualidad

1990 Campello y Goldbarg Enumeración implícita y restricciones lógicas

1992 Desrochers et al. Generación de columnas

1992 El-Darzi y Mitra Teoría de grafos y relajación / partición-recuperación.

1992 Beasley y Jornsten Cortes de Gomory y estrategias de división

https://translate.googleusercontent.com/translate_f 363/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
1994 Harche y Thompson Restar columnas

1995 Saxena y Arora Técnicas de enumeración para problema multiobjetivo

1995 El_Darzi y Mitra Teoría de grafos y relajación / partición-recuperación.

1996 Bullets y Carrera B&B por problema de cobertura

1996 Coudert B&B / técnica de poda para cubrir el problema.

TABLA 10.2 REVISIONES DE LITERATURA

Año Autores Que se acerca

1966 Garfinkel y Nemhauser Revisión para particionamiento

1972 Garfinkel y Nemhauser Revisión de cobertura

1975 Christofides y Korman Revisión de cobertura

1976 Bullets y Padberg Revisión para particionamiento

1979 Bullets y Padberg Revisión para particionamiento

Página 438

432 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

TABLA 10.3 SOLUCIONES HEURÍSTICAS

Año Autores Que se acerca

1979 Chvatal Primario miope para cubrir

1981 Panadero Primario miope para cubrir

mil novecientos
Hochbaum
ochenta y dos Teoría de grafos para revestimiento

1984b Vasko y Wilson Primario miope para cubrir

1986 Vasko y Wilson Enfoque híbrido para cubrir

1988 Goldbarg Primario miope para cubrir

1988 Barceló y Fernández Enfoque híbrido (dual x primal) para particiones

1989 Feo y Resende Heurística GRASP para recubrimiento

1990 Fisher y Kedia Enfoque dual de la partición

1990 Beasley Basado en relajación para cubrir

1993 Peleg y col. Algoritmo de "vecindario completo"

1993 Goldschmidt y col. Algoritmo miope para cubrir

1993 Sen Algoritmo de anillado simulado para cubrir

1994 Almiñana y Pastor Enfoque primario

1994 Lorena y Lopes Heurística sustituto w / chapado

1994 Huang y col. Algoritmo genético para cubrir

1994 Aourid y Kaminska Redes neuronales para cubrir

1995 Caprara y col. Basado en relajaciones

1996 Beasley y Chu Algoritmos genéticos para cubrir

1996 Al-Sultan Algoritmos genéticos

1996 Levine Algoritmos genéticos para cubrir y particionar

1997 Almiñana y Pastor Basado en relajación para cubrir

1997 Grosman y lana Algoritmos neuronales para cubrir

1997 Haddadi Heurística basada en la relajación lagrangiana para cubrir

1997 Lorena e Souza Lopes Algoritmos genéticos para cubrir

1998 Monfroglio Heurística híbrida para recubrimiento

1998 Ceria Heurística basada en la relajación lagrangiana

1999 Caprara y col. Heurística basada en la relajación lagrangiana

2000 Caprara y col. Varios algoritmos heurísticos

2000 De alta fidelidad Red neuronal para cubrir

2000 checo Heurísticas de recocido simulado para particiones

2001 Ohlsson y col. Redes neuronales con retroalimentación para cubrir

2001 Linderoth y col. Heurística basada en programación lineal

2002 Haouari y Chaouachi Algoritmo GRASP para cubrir

2002 Solar et al . Algoritmo genético paralelo para cubrir

2002 Aickelin Algoritmo genético "indirecto" para cubrir

2002 Beraldi y Ruszczynski Versión probabilística del problema de cobertura

2002 José Esquema de descomposición para particiones.

https://translate.googleusercontent.com/translate_f 364/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
2004 van Krieken y col . Heurísticas basadas en la relajación lagrangiana

2004 Li y Kwan Metaheurísticas para recubrimiento

Página 439

COBERTURA, PARTICIONAMIENTO Y UBICACIÓN 433

4 Heurística de primates

La heurística de primates es una generalización de los procedimientos miopes. Básicamente, estas heurísticas
construir una portada paso a paso seleccionando las variables que minimizan un determinado
función de evaluación.

• Primeras heurísticas
Donde N i = { j Î N | a ij = 1}, i Î M , el conjunto de columnas que cubren la fila i , y M j = { i Î M | a ij = 1}, j
Î N , el conjunto de líneas cubiertas por la variable j . R sigue siendo el conjunto de líneas no cubiertas en el
matriz A en una iteración dada, entonces k j = | M j Ç R |, j Î M será el número de líneas que serán co-
con la introducción de la variable x j en la cobertura. Con esta información, una heurística primaria
El mal absolutamente natural para la solución de relaciones públicas sería el que seleccionara una secuencia de
grupos de variables que maximizan una función que tiene en cuenta el número de líneas a ser
cubierto por la variable y su costo. En ese caso podríamos escribirlo de la siguiente manera:

Algoritmo de cobertura principal

COMIENZO
Lea la matriz de cobertura A y el vector de costos c j .
Inicializar variables R ¬ M , S ¬ Æ, t ¬ 1.
Mientras R ¹ Æ hacer
comienzo
Elija i * Î R , tal que | N i * | = Mínimo | N yo |, yo Î R
Elija j ( t ) tal que f ( c j ( t ), k j ( t )) = mínimo { f ( c j , k j ) |
j Î N i * e k j > 0} {* Comando de evaluación *}
Donde k j = | M j Ç R |, " j Î N i *
Actualice R y S , ( R ¬ R \ M ), ( S ¬ S È { j ( t )}) y
aumentar la iteración ( t : ¬ t +1).
Fin
Clasifique la cobertura S en orden de costos no creciente, es decir:
S = { j 1 , j 2 , ..., j t } correspondiente a { c j (1) ³ c j (2) ³, ..., ³ c j (t) }
Para j = 1 para t hacer:
Si S \ { j } es cobertura, entonces S ¬ S \ { j }
De lo contrario, z 0 ¬ z 0 + c j
Escribe { S y z 0 }
FIN

Aplicar la heurística anterior a la siguiente instancia de PR representada por la matriz de restricciones A


y el vector de costos c , y adoptando la función de evaluación f ( c j , k j ) = c j / k j , una función capaz de cuantificar la
costo de cobertura por línea cubierta, tendremos:

Columna 1 dos 3 4 5 6 7 8
Línea
C=
dos 3 4 4 6 dos dos 3

1 1 0 0 0 0 0 0 1

dos 0 1 1 1 1 0 1 0
A=
3 1 1 0 1 1 0 0 0

4 0 0 1 1 0 0 0 1

5 0 0 1 1 0 1 0 1

6 0 0 0 0 1 1 1 0

Página 440

434 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

https://translate.googleusercontent.com/translate_f 365/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
Inicialización: R = {1, 2, 3, 4, 5, 6}, S = Æ y t = 1;
Mientras que la iteración t = 1:

min {| |}
norte
=yo| N 1 | = 2, por tanto i * = 1 (se elige cubrir la primera línea).
j∈
R

Las dos columnas que cubren la fila 1 de la matriz A son:

J 1 8

kj dos 3

cj dos 3

cj/kj 1 1

Min {1, 1} = f ( c 1 , k 1 ) por una elección arbitraria.


j (1) = 1
R = {2, 4, 5, 6}, S = {1}

Mientras que la iteración t = 2

min {| |}
norte
=yo| N 4 | = | N 6 | = 3, por lo tanto i * = 4 (la cuarta línea se elige al azar)
j∈
R

Las tres columnas que cubren la fila 4 de la matriz A son:

J 3 4 8

kj 3 3 dos

cj dos 4 3

cj/kj 2/3 4/3 3/2

Mín. {2/3, 4/3, 3/2} = f ( c 3 , k 3 ) = 2/3


j (2) = 3
R = {6}, S = {1, 3}

Mientras que la iteración t = 3

min {| |}
norte
=yo| N 6 | = 3 luego i * = 3 (línea única descubierta)
j∈
R

Las tres columnas que cubren la fila 4 son:

J 5 6 7

kj 1 1 1

cj 6 dos dos

cj/kj 6 dos dos

Min {6, 2, 2} = f ( c 6 , k 6 ) = 2 por elección aleatoria

j (3) = 6
R = {Æ}, S = {1, 3, 6}

Para j = 1 a t hacer

Página 441

COBERTURA, PARTICIONAMIENTO Y UBICACIÓN 435

Define que S es una cobertura Prime, es decir, no se puede reducir de ninguna de sus columnas
bajo pena de dejar de ser una tapadera.

Escriba { S = {1, 3, 6} yz 0 = 9}

La complejidad de la heurística de cobertura principal es O ( m 3 n ). De la comprensión de esta heurística


podemos comprender fácilmente otros algoritmos sugeridos en la literatura.

• Heurística de Chvatal
Aplicar la heurística Prime sin verificar la superposición (redundancia) que el comando
" Para j = 1 hasta que t do", y reemplazando N i en el ciclo del while R ¹Æ por N , entonces tendremos el
heurística minada de Chvatal (Chvatal [1979]). El trabajo de Chvatal se debió a la mejora
Propuestas de Johnson (1974) y Lovász (1975) que podrían aplicarse a

https://translate.googleusercontent.com/translate_f 366/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
rado. La heurística de Chvatal tiene un índice de rendimiento de Rp calculado a partir de:

H
z 0yo ()
Rp = ≤H(d)<H(m)
*
z yo
0 ()

Dónde:

metro

H(m)= ∑ e1 d = máx. {| M j |}
j= 1
j j ∈N

H
z yo
0 () ≡ valor de la solución heurística.
*
z yo
0 () Ótimo valor óptimo del problema.

De hecho, Ho (1982) demuestra que, para toda la clase de heurísticas primarias, la relación de rendimiento es la
igual que el de Chvatal (Campello y Maculan [1994]).

• Heurísticas Bullets y Ho
El procedimiento propuesto por Balas y Ho (1980) sugiere un cambio en las funciones de evaluar la heu-
Prime de la siguiente manera:

1. c j

2. c j / k j

3. c j / log 2 ( k j )

4. c j / k j .log 2 ( k j )

5. c j / k j . ln ( k j )

Si k j = 1 entonces log 2 ( k j ) e ln ( k j ) deben reemplazarse por 1.

• Heurísticas de Vasko y Wilson.


En el caso de Vasko y Wilson (1984b) las funciones utilizadas para la evaluación, además de las de Balas y Ho, son:

1. c j / ( k j ) 2

Cj
dos. dos
kj

Página 442

436 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

Los autores también sugieren, en el procedimiento Prime, una elección aleatoria, en cada iteración, de la
función de evaluación que se utilizará. El enfoque de Vasko y Wilson reporta buenos resultados (Vasko y
Wilson [1984a]). Los autores todavía proponen (Vasco y Wilson [1986]) un uso conjunto de las funciones de
evaluación y dos versiones para las heurísticas primarias, una similar a Prime y la otra sin la
comando Elija i * Î R, tal que | N i * | = Mínimo | N yo |, yo Î R.

• Heurística híbrida
Algunos procedimientos comprenden varios enfoques heurísticos y procedimientos exactos desarrollados
incompletamente. Estas heurísticas se denominan híbridos. El uso de técnicas de reducción.
problema (Nemhauser y Garfinkel [1972] páginas 302-304) para acelerar los procedimientos exactos también
también es un camino interesante en esta línea de solución (Goldbarg [1988]).

• Heurística del patrocinador


La heurística de Backer (1981) es interesante por su propuesta de componer dos soluciones de recubrimiento.
para obtener una tercera solución mejor. La estrategia de composición sugerida es igualmente válida
para particionar. La heurística de Backer se puede utilizar para ayudar en las operaciones de diafonía
ver de los algoritmos genéticos para PR / PP.

• Una aplicación de la metaheurística GRASP a la solución de relaciones públicas


El enfoque llamado GRASP ( codiciosos procedimientos de búsqueda adaptativa aleatoria ) es una técnica interactiva
que tiene como objetivo diversificar las soluciones encontradas a través de un criterio que equilibre una estrategia
elección y un procedimiento aleatorio para generar soluciones viables. La heurística es
se desarrolla en dos fases, una de diversificación y otra de intensificación. La fase de diversificación es
agregar al método. La siguiente tabla muestra la posibilidad de estructurar la fase de desvío.
para la solución de relaciones públicas.

https://translate.googleusercontent.com/translate_f 367/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
Algoritmo GRASP para relaciones públicas

Fase de organización de la solución


COMIENZO
Leer la matriz de cobertura A ( n x m ) y el vector de costos c j
0¬ M j
Para j = 1, ..., n . Hacer M j

J*®
AM 0≠ ∅∀,
j j = 1, ..., n Hacer
comienzo
0
X ¬ max {| M j |: 1 £ j £ n }
0
P¬{j:|Mj | ³ ax , 1 £ j £ n }

Si | P | > b luego organiza L con la mejor b


Candidatos P (de acuerdo con los criterios apropiados);
De lo contrario G ¬ P
Seleccione k Î L al azar;
J*¬J*È{k}
0¬ M 0 0
Para j = 1, ..., n ¿ M j j \ METRO
k

Fin
FIN

Ejemplificaremos la aplicación de la metaheurística GRASP a la solución de relaciones públicas a través de la solución


problema cuya matriz de restricciones y vectores de costos se presentan en la Figura 10.14, definiendo
los diversos parámetros del algoritmo anterior (L, a, b, etc.).

Página 443

COBERTURA, PARTICIONAMIENTO Y UBICACIÓN 437

Vector de costo

c1=1 c2=6 c3=4 c4=7 c5=2 c6=9 c7=3 c8=3 c9=8 c 10 = 4

Matriz de restricciones A

1 1 1 1 1 1

dos 1 1 1

3 1 1 1

4 1 1

5 1 1 1

6 1 1 1 1

7 1 1 1 1

8 1 1 1 1 1

FIGURA 10.14 Matriz de restricciones del ejemplo GRASP.

Como señalamos anteriormente, las heurísticas primarias, cuando se aplican a la solución PR,
explorar exhaustivamente los criterios miopes para la formación de una solución viable. El procedimiento
GRASP también usa esta idea, pero agrega una mayor flexibilidad de construcción.
Consideraremos que una opción miope adecuada para PR será la que pretenda seleccionar
un conjunto de variables M i que cubre tantas filas de la matriz A como sea posible que sean
aún descubierto, cuyo conjunto de índices está representado por M . La función adaptativa miope de
GRASP utilizará el criterio de decisión codicioso que, sin embargo, estará restringido a un cierto conjunto P de
variables. La diferencia introducida por GRASP en el uso de la estrategia miope se debe a la
flexibilidad del criterio, lo que permitirá su infracción parcial. El criterio de elección en este contexto
restringidos juntos (LRC - lista restringida de candidatos o L ) se referirá a un valor a, porcentaje
lejos del criterio miope. Esta forma de restringir la elección en la lista de candidatos se denomina
nada restricción de valor .
Podemos pensar de manera similar con respecto al tamaño de la lista de variables candidatas
fechas. En este caso, podemos considerar solo los mejores b elementos de esa lista, de acuerdo con los criterios
río miope, con la relajación previamente definida. b es una restricción de cardinalidad que excede
el tamaño de la L lista . Claramente, los dos parámetros tienen un impacto en el tamaño final de la lista.
L , ya que actúan implícitamente como restricciones lógicas asociadas con la búsqueda.
Tome la matriz de restricción de la figura 10.14 como ejemplo. Una simple elección miope, según
criterio de máxima cobertura, clasificaría las variables x 3 , x 4 , x 5 y x 6 como buenas candidatas para
componen una solución, ya que todas maximizan el número de líneas cubiertas por una elección.
(todos cubren 4 líneas de la matriz de restricción del problema). Considerando un porcentaje de relajación
este criterio de cobertura miope de, por ejemplo, 40% (es decir, a = 60%), estaríamos en condiciones de
aceptando incluir en la solución variables que van de 4 (100%) a 4 ´ 0.6 = 2.4 (60%), es decir, 3
líneas.

https://translate.googleusercontent.com/translate_f 368/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
Con la adopción del criterio relajado, el conjunto P de variables candidatas crece. En caso de
ejemplo P crece de {3, 4, 5, 6} a [{3, 4, 5, 6} È {2, 7}]. Si hubiera alguna restricción cardinal
como b = 5, entonces la CRL se obtendría de P eliminando una variable. un
El posible criterio para esta reducción podría ser el costo de la variable. En ese caso se obtendría el LRC o L
eliminando el conjunto P de la variable más cara, es decir, L = P \ {6} = {3, 4, 5, 7}.
Con la lista L estructurada, depende de usted decidir si incluir una variable en la solución. En este caso, el
GRASP utiliza el método aleatorio. De acuerdo con el algoritmo de la tabla, si el sorteo recayó en el
nivel 7, entonces se organizaría una solución parcial con las líneas 2, 3 y 4 cubiertas. los
0
establece M j se actualizaría debido a la inclusión de x 7 en la solución parcial, eliminando estas líneas
del conjunto de líneas aún por cubrir. La consecuencia de incluir la variable índice 7 en el
La solución parcial se puede representar mediante la reducción de la matriz de restricciones, como se muestra en la Figura 10.15.
En ese momento, todo el proceso se rehace nuevamente.

Página 444

438 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

Vector de costo

c1=1 c2=6 c3=4 c4=7 c5=2 c6=9 c7=3 c8=3 c9=8 c 10 = 4

Matriz de restricciones A

1 1 1 1 1 1

5 1 1 1

6 1 1 1 1

7 1 1 1 1

8 1 1 1 1 1

FIGURA 10.15 Matriz de restricción actualizada después de agregar x 7 a la solución.

Aplicando nuevamente el criterio codicioso para elegir columnas candidatas, encontramos el máximo
0
mo {| M j |} = 4, por lo tanto P = {3, 4, 5, 9}. Como b = 4 tenemos L : = P y dibujamos el nuevo miembro de la

solución actual.
Para estudiar la segunda fase del método asumiremos que la solución final encontrada por el
El proceso de restricción y extracción fue Sol = {1,6,7} con un costo total igual a 13. La segunda fase del algoritmo
mo es una etapa de intensificación elaborada por una búsqueda local. Consideraremos que examinaremos
Nótese el vecindario de {1, 6, 7} usando una estrategia económica para guiar la búsqueda. En ese caso el
La búsqueda estaría dirigida a identificar una solución viable y cercana a {1,6,7}, obtenida al intercambiar uno o
más variables solares y que, por el criterio descendente, llevaría a un valor inferior al encontrado para
Sol. En el caso del ejemplo podríamos reemplazar la columna 6 (la más cara) con las columnas 3 y 8. El nuevo Sol
encontrado sería {1, 3, 8, 7} a un costo de 11, dos unidades más bajo que la solución primitiva. Todavía dentro
de una estrategia de búsqueda local, la redundancia de Sol probablemente se eliminaría mediante una estrategia
estrategia de intensificación, dejando el conjunto {3, 7, 8} que representaría una gran ubicación. En este caso particular
encontrar la solución óptima para el vecindario {1, 6, 7} también sería globalmente óptimo.

10.3 - EL PROBLEMA K - DISPERSIÓN DISCRETA (PKD)

10.3.1 - Importancia y formulación


La solución de los problemas de dispersión está adquiriendo una importancia creciente, especialmente debido a la necesidad
proporcionar un destino adecuado para una variedad de materiales, desechos industriales y nucleares y
armamentos (Erkut y Neuman [1989]). Dado un conjunto de n facilidades asignadas sobre los nodos de un
gráfico, el problema de la dispersión k discreta (PKDD) consiste en seleccionar entre las n , k instalaciones, de
de modo que la distancia mínima entre cualquier par de las k características seleccionadas sea máxima. La aplicación
Este problema se refiere a:

• Ubicación de tanques de combustible.


• Asignación de agentes competitivos como franquicias, etc. (Kuby [1987]).
• Distribución de basureros (Church y Garfinkel [1978]).
• Ubicación de silos de misiles e instalaciones nucleares (Erkut y Neuman [1989]).
• Prisiones e instalaciones militares (Berman et al [1996]).
• Tratamiento de aguas residuales (Morales et al [1997]).
• Distribución de frecuencias en sistemas de comunicaciones.
• Experimentos estadísticos.
• Registro.

https://translate.googleusercontent.com/translate_f 369/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

Página 445

COBERTURA, PARTICIONAMIENTO Y UBICACIÓN 439

El problema de la dispersión k difiere de los otros problemas de ubicación en los que un conjunto
los usuarios o los puntos de demanda interactúan con un conjunto de posibles ubicaciones de instalaciones
como en los problemas de Anticentre, Antimediana etc. (Erkut y Neuman [1989], Churk y Garfin-
kel [1978] y Minieka [1983]). La formulación más conocida para este problema se llama Max-
Min. La siguiente redacción se debe a Erkut (1990).

(PKD1) Maximizar z = r
sujeto a:
r £ M (2 - y i - y j ) + d ij , £1i£j£n
norte
∑ y yo = k
= 1
yo

y i Î {0, 1} £1i£n

Dónde:

y i º variable binaria que adopta el valor 1 cuando la función i es seleccionado y 0, de lo contrario.


d ijº distancia entre las instalaciones i y j .
r º distancia mínima entre las instalaciones seleccionadas.
n- ésimo número de instalaciones potenciales, es decir, capaces de elegir.
kº número de instalaciones a ubicar.
Número M convenientemente grande en comparación con el mayor d ij .
1
Esta formulación contiene n ( n - 1) restricciones que involucran a R y una restricción con las variables y i . LA
dos
La relajación lineal de PKD1 se puede utilizar para definir un límite superior para r , ya que
las soluciones fraccionarias de y i conducen, en la mayoría de los casos, a valores de d ij mucho mayores que r . Un
Kuby (1987) sugiere una formulación mixta completa.

(PKD2) Maximizar z = ∑∑ zdij ij


yo Ji= + 1

sujeto a:
norte

∑ y yo = k
= 1
yo

z ij £ y i yo < j , j = 1, ..., n
z ij £ y j yo < j, j = 1, ..., n
y i Î {0, 1} " i
z ij Î {0, 1} " i , j

Dónde:

z ij es una variable binaria que asumirá un valor igual a 1, si las instalaciones están ubicadas en i y j, y 0,
de lo contrario, a pesar de su definición como variable continua. El control del valor de z ij se realiza
a través de restricciones sobre y i y y j . Solo si las variables y i y y j son ambas iguales a 1 z ij , esto
valor. La función objetivo cuenta la suma de las distancias entre todos los pares de instalaciones abiertas.
PKD2 es NP-completo. Un aspecto muy interesante de este problema es su relación con la
problema anti cubrimiento (PAC). El objetivo PKD maximizar la distancia de separación mínima r de k facilidades
entre sí, mientras que el PAC tiene como objetivo maximizar el número de instalaciones que se ubicarán en
para mantener una distancia de separación mínima r entre ellos. Moon y Chaudhry (1984) formulan el
CAP de la siguiente manera:

Página 446

440 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

(PAC) Maximizar z = ∑ xj
j∈
S

https://translate.googleusercontent.com/translate_f 370/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
sujeto a:
M (1 - x i ) ³ ∑ ,x j "iÎS
j∈
Qi

x j Î {0, 1}, "jÎS

Dónde:

x j º variable binaria que asume un valor de 1 si la instalación se encuentra en j y 0, de lo contrario.


S = {1, ..., n } es el conjunto de instalaciones potenciales.
M º un valor suficientemente grande numérico.
Q i = { j Î S tal que d ij < r , i ¹ j }, i Î S , el conjunto de ubicaciones que están a menos de r unidades
desde i , excluyendo i .

En este modelo, cuando x i = 1, todo x j debe ponerse a cero para j Î Q i . Entonces la restricción en
M representa la separación deseada d ij > r .
Erkut (1990) propone otra formulación similar para la PKD y la denomina separación r
de la siguiente manera:

norte

(PKD3) Minimizar z = ∑ x ij
yo= 1

sujeto a:
x i + x j ³ 1, i < j = 2, ..., n con d ij < r
x i Î {0, 1}, i = 1, ..., n

Dónde:

x j variable binaria que toma un valor de 1 si se selecciona la característica j para integrar la solución y
0, de lo contrario.

Esta formulación utiliza n variables y restricciones O ( n 2 ). El valor óptimo de la función objetivo será cero si
y solo si hay un conjunto independiente de tamaño k . en el subgrafo definido por los bordes con
d ij < r . Su similitud con la formulación del problema anti-cobertura y el conjunto independiente es fuerte
(Moon y Chaudhry [1984] y Chaudhry et al . [1986]).

10.3.2 - Ejemplos de aplicaciones y problemas relacionados

4 El problema de la ubicación de los implantes radiactivos


Este es uno de los ejemplos interesantes del uso de un enfoque cuantitativo en un área típica.
incorrecto. La implantación de materiales radiactivos sólidos en un tejido determinado es una técnica
utilizado para combatir tumores cancerosos en áreas extremadamente sensibles como el cerebro,
por ejemplo. El material implantado puede estar en forma de agujas o partículas. Una proximidad extraordinaria
el cese de los agentes provocará una sobredosis, y una salida demasiado lejos el efecto contrario.
Definido dentro del alcance de cada elemento radiactivo y el área a cubrir, el problema se puede modelar
como un problema de dispersión k en el continuo. Si los posibles puntos de ubicación de los elementos
Si los problemas están previamente definidos, el problema se puede reducir al PKD.

Página 447

COBERTURA, PARTICIONAMIENTO Y UBICACIÓN 441

4 El problema de la seguridad y la eficacia de las comunicaciones

Si estamos usando un alfabeto a = { x 1 , x 2 , ..., x n } para un proceso de comunicación y G = (a, q), donde
q representa las relaciones entre los signos del alfabeto que no se pueden confundir entre sí, haciendo clic en
(subgrafo completo de G ) de tamao k en G consta de k seales para las cuales no habr riesgo de
Fusión. Si el problema de la confusión de la señal está asociado con una determinada variable aleatoria de modo que
para cada borde ( i, j ) hay una probabilidad p ij de que ocurra la confusión, entonces podemos definir un
PKD de la siguiente manera: obtenga el conjunto de k signos del alfabeto en el que la probabilidad mínima de
dos señales que no deben confundirse es máximo.

4 El problema del marketing de productos


Considere un conjunto S = { s 1 , s 2 , ..., s n } de productos y P = { p 1 , p 2 , ..., p m } de propiedades para estos productos
como mantenibilidad, confiabilidad, apariencia, etc. La aplicación de PKD se define como la búsqueda de un
lanzamiento de k productos tales que, con una mínima diversidad de propiedades r , cubran la demanda
mercado de consumo. Definir x ij como una variable binaria que asume un valor de 1 si el producto
to i tiene la propiedad j y 0, de lo contrario. Obviamente, un producto tiene muchas más similitudes
con otro mayor es el número de coincidencias entre las propiedades de los dos productos. Entonces,
https://translate.googleusercontent.com/translate_f 371/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
definimos como la distancia d ik el número de coincidencias entre los vectores x ij y x kj , es decir, el número de
emparejamientos entre los componentes de estos dos vectores. También podemos representar este fenómeno
a través de una gráfica G = ( S , A ), donde el conjunto A de aristas ( i , j ) de G significa que los productos s i y s j son
similar. En este modelo, obtener un conjunto de productos diversos equivale a obtener un conjunto independiente
colgante de tamaño k , que se puede resolver como un caso particular de PKD.

4 El problema de seleccionar una cartera de inversión


Considerando el comportamiento del mercado que conserva una tendencia de correlación positiva entre
las tasas de rendimiento de las distintas inversiones posibles en las carteras. En esta situación, el problema de
La elección de una cartera de inversiones se describiría eligiendo k propuestas de un conjunto de n
posibles propuestas con el fin de maximizar la rentabilidad mínima para cada par de propuestas.

4 El problema de la interferencia del canal de comunicación


Este problema tiene una conexión con el problema de la coloración en T (Hale (1980) y anexo: temas en la teoría
gráficos). Considere una gráfica G = ( N , A ), donde el conjunto N = { f 1 , f 2 , ..., f n } representa las frecuencias
disponible para asignación en canales de comunicación y un borde ( i , j ) en G representa un vecindario
cambio de frecuencia (definido por una cierta cantidad de diferencia entre frecuencias). Entonces, la fórmula-
PKD en este contexto significa seleccionar para uso simultáneo, entre todas las n frecuencias disponibles
disponible, un conjunto de k frecuencias que maximiza la separación entre cada par de frecuencias que serán
adoptado.

4 El PKD y el problema del centro k


Shier (1977) estudió la dualidad entre el problema de la dispersión k y el del centro k .
Uno de los enfoques más comunes para la solución del centro k ha sido resolver una secuencia de
cubriendo problemas (Christofides [1975] y Tansel [1982]). Sea un grafo no orientado G = ( N ,
A ), con un conjunto de vértices N = { v 1 , v 2 , ..., v n } ei = {1, 2, ..., n } el conjunto de índices de vértice.
Dado que G está definido por el plano euclidiano, ya sea d ( v i , v j ), la distancia entre los vértices v i y v j que satisface la
siguientes propiedades:

1 d ( v i , v j ) ³ 0.
2 re ( v yo , v j ) = re ( v j , v yo ).
3 d ( v i , v j ) £ d ( v i , v k ) + d ( v k , v j ).

Página 448

442 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

Dadas las funciones f i , i Î I, la función f se define para U Ì N , como F ( U ) = max { f i ( d ( v i , U ), i Î I } el pro-


* * *
Problema de ubicación de Minmax, donde es necesario encontrar un k- centro absoluto U * = { uu 1 ,, ...,}
dos y tuk
un radio k tal que: r k = f ( U * ) = min { f ( U ): | U | = k , U Ì N }. El problema puede considerarse como el
ubicar k instalaciones o centros en un conjunto de nodos G con el fin de minimizar el máximo riesgo
predice una falla en el servicio de contestador. Para comprender el sentido de riesgo, suponemos
Creemos que el desplazamiento de los centros a los posibles lugares de demanda v i se puede interpretar
como un riesgo f i ( d ( v i , U )) ya que el viaje toma más tiempo. La función f i se puede tomar
de igual a la distancia d ( v i , U ). Si el conjunto de puntos a servir son todos los nodos G y la instalación está ubicada
calizar es solo uno ( k = 1), por lo que el problema se llama centro absoluto . Si el conjunto de instalaciones
potencial y potencial de demanda es el mismo, el problema se llama centro general (ver Minieka
[1978]). La figura 10.16 presenta un gráfico en el que las distancias entre los nodos valen una unidad de
longitud. Si encontramos la instalación que cubrirá todos los nodos G en el vértice 2, la mayor distancia
entre un vértice y una instalación (en el caso único) ocurrirá con el vértice 6 y será igual a tres
unidades. Si la ubicación se realiza en el vértice 1, la distancia cae a dos unidades en relación con
vértices 6 y 4. Si ubicamos la instalación en el medio del borde 1-3, la distancia cae a
1,5 unidades (esto no siempre es una solución legal). El centro 1 general de este gráfico son los vértices 1 y 3
y la distancia MinMax es 2.

7 7
7

5 1 3 6 5 1 3 6 5 1 3 6

dos 4 dos 4 dos 4

(a) Distancia MinMax = 3 (b) Distancia MinMax = 2 (c) Distancia MinMax = 1,5

FIGURA 10.16 Solución del centro k.

https://translate.googleusercontent.com/translate_f 372/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

El problema del doble centro k consiste en elegir k +1 puntos de demanda de manera que el mínimo
el radio calculado con respecto a todos los pares de demandas elegidos es lo más grande posible. SUS
Es posible una fuerte relación dual entre el problema de k -centro y k -dispersión en un árbol y cuando
no hay restricción en la asignación en los vértices para el problema del centro k . En este caso, la solución óptima
La dispersión ma MaxMin da ( k +1) es exactamente el doble de la solución MinMax de k -centros (Shier [1977]).
Bar-Ilan (1993) presenta varios algoritmos heurísticos para la solución de este problema en redes de
Comunicación.

10.3.3 - Soluciones heurísticas para PKD


Como es un problema NP-arduo, los enfoques heurísticos para la solución han sido intensamente
utilizado en grandes problemas.

4 la heurística de Erkut
Erkut (1990) sugiere una heurística que puede dividirse en una fase de solución miope y una fase de mejora.
El procedimiento, que está formalizado en el marco del algoritmo Erkut de dispersión k , tiene complejidad
O ( n 2 ) en la fase de construcción y O ( n 2 ) para cada iteración de mejora.

Página 449

COBERTURA, PARTICIONAMIENTO Y UBICACIÓN 443

Algoritmo k -dispersão Erkut

1 - Fase de construcción de la solución miópica

COMIENZO
Lea la gráfica G = (N, A) y k .
Inicializar variables B : = 0; Cuello de botella: = 0;
Ordene los bordes d ij de G de una manera monótona no decreciente
en un montón de C
Mientras | B | <( n - k ) hacer
comienzo
Encuentre la distancia más corta d ( u, v ) en C
Si ( u o v ) Ï B y | B | <( n - k ) entonces haz
comienzo
Eliminar aleatoriamente ( u o v ) Ï B
C ¬ C \ ( u, v )
B ¬ B È {elemento u o v eliminado}
Fin
Si | B | = ( n - k ) luego haga Bottleneck ¬ d ( u, v )
Fin
FIN

2 - Fase de mejora de la solución actual

COMIENZO
Leer G = (N, A) , ky Bottleneck
La inicialización de las variables V = A \ B {* organiza el conjunto V donde i , j Î
V Þ d ij ³ cuello de botella, | V | = k *} temp ¬ Æ
Para j Î B hacer

comienzo
Asigne w ¬ u o w ¬ v si es posible intercambiar uno de ellos
con j en las siguientes condiciones:
1. w ¬ v se ( d uj > d vj ) e ( d uj > cuello de botella)
2. w ¬ u se ( d vj > d uj ) e ( d vj > cuello de botella)
temp = { j } È V \ { w }
Calcule N _Bottleneck ¬ max, {d ij i , j Î temp}
Si N _Bottleneck> Bottleneck entonces haz

https://translate.googleusercontent.com/translate_f 373/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
comienzo
V ¬ {j } È V \ { w }
Temp ¬ V ;
Fin
B ¬ B \ { j };
Fin

FIN

Página 450

444 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

Considere el problema de ubicar tres instalaciones en el gráfico de la figura 10.17 (a). Aplicando el
El ritmo de Erkut (1990) tenemos el siguiente resultado en fases:

Fase 1: Solución miópica


C = {(3, 6), (1, 6), (2, 3), (1, 4), (3, 4), (4, 6), (4, 5), (5, 6) , (2, 5), (1, 3), (2, 6), (1, 2), (2, 4), (3, 5), (1, 5)}
d ij = {(4), (5), (5), (5), (6), (7), (8), (8), (9), (9), (9), (10 ), (11), (12), (13)}

dos dos 2do dos

10 5 10 5 10 5
9 Tercero 9 Primero 9

dos 9 3 dos 9 3 dos 9 3

4 4 4

5 6 5 6 5 6

5 5 5

6 9 4 6 9 4 6 9 4

8 8 8 8 8 8

5 (Los) 5 (SEGUNDO) 5 (C)

FIGURA 10:17 1 la fase del algoritmo Erkut para k -dispersão.

Considerando que el posible nodo candidato con el índice más bajo siempre fue eliminado, la secuencia de
La información y las actualizaciones se muestran en la Tabla 10.4.

TABLA 10.4 PASO DE ACTUALIZACIÓN DEL ALGORITMO DE ERKUT

Distancia Borde Nodos excluidos Solución segundo Cuello

4 (3, 6) 3 (1, 2, 4, 5, 6) (3) -

5 (dieciséis) 1 (2, 4, 5, 6) (3, 1) -

5 (2, 3) dos (4, 5, 6) (3, 1, 2) 8

En la tercera inclusión | B | = 3 finaliza la fase de construcción de una solución miope, como se muestra
Figura 10.17 (b). La solución consta de los k vértices restantes.

Fase 2: Mejora de la solución


A partir de la solución (4, 5, 6), el procedimiento de búsqueda identifica intercambios que mejoran el cuello de botella existente.
La tabla 10.5 ejemplifica la mejora si el nodo elegido fuera j = 2, j Î B

TABLA 10.5 POSIBLES MEJORAS PARA J = 2

Posibles parejas Distancias


Nodo j Distancia más larga Solución posible Cuello de botella de la solución
(u, v) Asociados

d 24 = 11 d 24 = 11> 9 e 9> 8
(4, 5) (2, 5, 6)
d 25 = 9 d 25 = 9> 8 (*) Mejora

d 24 = 11 d 24 = 11> 9 e
dos (4, 6) (2, 5, 6) igual que el anterior
d26 = 9 d 26 = 9> 8

d 25 = 9
(5, 6) d 25 = d 26 > 8 - -
d 26 = 9

https://translate.googleusercontent.com/translate_f 374/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

Página 451

COBERTURA, PARTICIONAMIENTO Y UBICACIÓN 445

4 Heurísticas de separación de grupos

Otra forma de abordar la solución heurística de este problema es mediante la constitución de clusters o
grupos de proximidad. El análisis de conglomerados es un enfoque que intenta agrupar los puntos en el
espacio en conjuntos generalmente disyuntivos en los que se espera que conserve características notables en su
población.
Existen varios tipos de análisis de conglomerados, siendo el enlace simple uno de los más utilizados
en informática (Gower y Ross [1969]). La estrategia básicamente une todos los pares de puntos más
para formar grupos, que luego se irán incrementando (unidos o uniéndose )
también por proximidad (una técnica a veces llamada bola de nieve; véase Mcgregor y Shen [1977]).
En cada paso de incremento, el número total de grupos ( n / 2 grupos) se reduce en uno
fusionando dos grupos vecinos en uno.
Otra forma de obtener agrupaciones de enlaces simples es dividir (operación llamada
dividir ) el todo en dos parcelas de modo que la distancia entre los grupos (definida como el mínimo
entre pares de puntos) se maximiza. Como en el caso anterior, las operaciones de división
se siguen procesando sobre los grupos que se están formando. La propiedad de exigir
un enlace por combinación de grupos justifica el nombre de enlace simple.
Los algoritmos de enlace único para el análisis de conglomerados son miopes y suelen tener
la complejidad O ( n 2 ). Evaluar el rendimiento cualitativo de las heurísticas de dispersión mediante
Examinaremos la instancia de la figura 10.18 y su proceso de solución.

1 1 dos 1 1 dos

METRO METRO METRO

1 5 2M 1 5

METRO METRO

4 1 3 4 3

Inicial Los grupos

METRO

Solución final = M

FIGURA 10.18 Calidad de la solución heurística por agrupación.

La solución óptima al problema de la figura 10.18 es 2M, lo que muestra que este enfoque no tiene
límite e-aproximado absoluto.
Un procedimiento igualmente eficaz en la generación de k clusters o clusters de nodos es la eliminación
de k - 1 aristas más caras del árbol generador de G mínimo . La figura 10.19 aclara este proceso
para la formación de cuatro grupos, basado en el hecho de que la eliminación de k - 1 bordes en un área
arbol forma k subgrafos desconectados.
Evidentemente, para cualquier ubicación dentro de los grupos formados por el procedimiento
arriba, las distancias entre los grupos serán un límite superior para el cuello de la k -dis-
persona. El gráfico G puede reemplazarse por un gráfico de distancias en el que cada grupo estará
representado por un nodo, como se muestra en la Figura 10.20.
Examinando el gráfico de distancias en la figura 10.20, podemos ver que el cuello de botella de la brecha se
presentado por el borde de valor inferior. Cada grupo tiene un conjunto de nodos que establece
su conexión con los grupos vecinos y el cuello de botella está relacionado con ellos. En un caso general,
malmente, los vértices que pertenecen a los grupos no están todos en la frontera, es decir, no todos
están relacionados con los vértices de los otros grupos a través de los bordes del gráfico de distancias. Aquellos

Página 452

446 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

1 7 11 1 7 11 1 11

8
10 10
5 5
12 12 12
4 15 dos 4 3
dos 3 dos 3
7 7
5 5 5
13 13 13
20
4 4 6 4 4 6 4 6

https://translate.googleusercontent.com/translate_f 375/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
8 88 9 8 9

7 11 14 7 7 14
14

5 5 10 5 5

8 6 9 8 9 8 9

7 8 7

10 10 10

(un gráfico (b) Árbol generador mínimo (c) Eliminación de los 3 bordes más costosos

FIGURA 10.19 Procedimiento para generar 4- clusters de proximidad.

Grupo 3 1 11
Grupo 2
12
dos 3

G1
13 10
10
4 6
G3
9
9
88
29
29
28
7 14
G2 10
10 G4

9
Grupo 1
8
Grupo 4 Grafico
distancias
10 Nodo de vecindario

FIGURA 10.20 Gráfico de distancia de la Figura 226.

los nodos internos, o no relacionados con distancias de cuello de botella, son candidatos para, si se utilizan para
solución del problema, mejorar el cuello de botella asociado con su grupo. Si el gráfico solo tiene
bordes mayores que cero y todos los grupos tienen nodos internos, por lo que, seguro, el cuello de botella
obtenido mediante el procedimiento descrito anteriormente se puede mejorar. La figura 10.21 muestra la elección
nodos internos a los grupos 1 y 4 y su efecto en el cuello de botella.
Observamos que el cuello de botella para el gráfico de distancias entre los grupos salta a
18 al elegir los nodos internos (nodos 2 y 10) en los grupos 3 y 4 respectivamente. La complejidad
de un algoritmo que encuentre los grupos de nodos a través del árbol generador mínimo tendrá
mínimo O ( n 2 ). La elección de los nodos internos dentro de cada grupo requerirá, para un caso general
una complejidad O ( n 2 ).

10.4 - PROBLEMAS DE UBICACIÓN COMPETITIVA - EL PROBLEMA


DOS K- SERVICIOS (PKS)

10.4.1 - Importancia del problema y su definición


Algunos problemas de ubicación abarcan un aspecto del funcionamiento dinámico que puede trascender
al modelo de ubicación tradicional, acercándose a los modelos de enrutamiento. Una forma de
aumentar la capacidad de una instalación en una red de demanda es considerar la

Página 453

COBERTURA, PARTICIONAMIENTO Y UBICACIÓN 447

Grupo 3 1 11

Grupo 2
12
dos 3

G1
13 10
19
4 6
G3
189
8
25
29
29
40
7 14
10
18
G2 G4

9
Grupo 1
Grupo 4
8 Grafico
distancias
10

Nodo interno elegido

FIGURA 10.21 Ubicación de asignaciones en nodos internos de grupo.

posibilidad de que sirva más de un punto. En ese caso, la instalación debería de alguna manera

https://translate.googleusercontent.com/translate_f 376/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
Realizar una trayectoria en la red para posibilitar el contacto entre suministro y consumo. Las unidades de servicio
Las instalaciones se llaman sirvientes. Un ejemplo de este tipo de problema es lo que
denomina k -servos (PKS). Sea la gráfica G = (N, A) y k -serve distribuida sobre los vértices de G , sujeto
a un vector de demanda que se caracteriza en estos mismos vértices. El problema con los servicios k es que
planificar el desplazamiento de estos servidores sobre los vértices de G con el fin de satisfacer la demanda y otros
posibles restricciones, minimizando una función determinada. En general, la función de minimización
se asocia con la distancia recorrida por los sirvientes. El k Servants se distingue de ro- problemas
teamento por el hecho de que el sirviente permanece ocupando el último vértice visitado y no se caracterizan
rutas cerradas en el gráfico. Además, el posicionamiento inicial de los sirvientes tiene una gran influencia en la
resultado y rendimiento de los algoritmos de solución. La figura 10.22 aclara el desplazamiento de dos servicios
usted en un gráfico de siete nodos. Los vértices marcados con ✓ representan los vértices de demanda. El seguimiento
líneas reforzadas marcan el camino recorrido por el sirviente S i .
La figura 10.22 ejemplifica, entre las muchas posibilidades de servicio, dos. En el primero,
se emplearon dos sirvientes. En el segundo, las dos llamadas son realizadas por el servidor S 1 . Nota
deje que los sirvientes permanezcan estacionados en el último nodo al que sirvieron.
Podemos destacar las siguientes aplicaciones para el problema:

• Problemas de paginación de la memoria computacional (Karlin et al . [1988] y Raghavan et al . [1988]).


• Ubicación de los cabezales de lectura del disco duro (Calderbank [1985]).
• Seguridad y asistencia de emergencia.
El problema de k-service se configura en dos situaciones específicas:

4 Fuera de línea o cuando el vector de demanda se conoce a priori .

4 En línea o cuando la demanda se produce en un determinado horizonte de tiempo,


caracterizado en intervalos de tiempo. De hecho, las situaciones de servicio en línea son comunes.
común en este tipo de problemas, especialmente en modelos industriales (robots) y servicios
de emergencia. En algunos casos es posible determinar la distribución de probabilidad
asociado con estas demandas. La literatura llama en línea el caso en el que, en principio, el
La probabilidad de que ocurra una demanda en un nodo es igual para cada vértice del gráfico,
estos eventos son independientes.

Página 454

448 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

S1
ü
1
1

S1
dos 3 dos 3

7 7

ü
1

5 4 5 4

S1 S2
dos 3

7 6 6
ü
S2

5
ü
4
S2 1
1

S1
6 dos 3
ü dos 3

7
7

5 4
5 4
S2
S2

6
6
ü
S1

FIGURA 10.22 Soluciones para 2 servos.

10.4.2 - Ejemplo de aplicación y problemas relacionados con k -Servos

4 El problema de la distribución de transportadores en la fabricación flexible


Los sistemas de fabricación flexibles son complejos tecnológicos que implican numerosos problemas de
https://translate.googleusercontent.com/translate_f 377/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
planificación y distribución de recursos compartidos. El problema de optimizar el transporte entre
Las células de fabricación implican, en diversas situaciones, el tratamiento de ciclos de servicio típicamente k (ver
Koenigsber [1993], Co et al . [1989] y Bozer et al . [1989]).

4 Los k-sirvientes con Windows of Time

En situaciones reales de servicio de demanda múltiple con múltiples servidores, uno de los factores más importantes
importante para el rendimiento es el tiempo de servicio. Cuando este factor es preponderante, obviamente
se considerará como el costo del viaje. En otras situaciones, sin embargo, su
normalmente será restrictivo. Así, en los sistemas de atención de emergencia, como en
en el caso de los equipos de mantenimiento de vuelo, es necesario considerar la restricción de tiempo. Oliveira (1996)
sugiere un algoritmo fuera de línea para resolver este problema.

4 Problema de varios sirvientes


Batta y Mannur (1990) estudian situaciones de atención de emergencia con varios tipos de sirvientes en
que un servicio requiere la presencia de un servidor de cada tipo en el punto de demanda. Este problema
se puede formular de la siguiente manera:

Página 455

COBERTURA, PARTICIONAMIENTO Y UBICACIÓN 449

metro

(PMS) Maximizar z = ∑ dy ii
= 1
yo

sujeto a:
norte
∑ hacha
k
ij
k
j - y yo ≥ 0 , i = 1, ..., m , k = 1, ..., r
j= 1

k
X j - z j ≤ 0, j = 1, ..., n , k = 1, ..., r
norte

∑ x jk =pk, k = 1, ..., r
j= 1

k
x j , y i Î {0, 1}, j = 1, ..., ni = 1, ..., m k = 1, ..., r

Dónde:

x jk b variable binaria que asume el valor 1 si se asigna un servidor de tipo k a la ciudad j y 0, en caso contrario.

y i º variable binaria que toma el valor 1 si un punto de demanda i que está cubierto y 0, de lo contrario.
z j º variable binaria que adopta el valor 1 si hay una instalación asignado en el vértice j y 0, de lo contrario.
d i º demanda en el punto i .
p jk º número de servos de tipo k permitidos.
a ij = 1 si i puede ser cubierto por el sirviente tipo k en la ciudad j y 0, en caso contrario.

Las restricciones que obligan a todo tipo de servidores a atender una demanda (la primera restricción
PMS) puede ser reemplazado por restricciones de compromiso con una cantidad presupuestaria
disponibles (Boffey y Narula [1997]) para el desplazamiento. Marianov y ReVelle (1991) estudiaron el síndrome premenstrual
en un contexto de seguridad contra incendios para dos tipos diferentes de servos. En el caso
en la agenda, es necesario reunir al menos dos servidores de un tipo y tres del otro para que el
Órdenes para ser consideradas atendidas por un equipo.
La figura 10.23 muestra la posibilidad de utilizar este modelo para múltiples servicios.
La satisfacción de la demanda se caracteriza por la llegada de los tipos de servidores existentes y la cantidad
definido. El origen de estos servidores se puede variar (varias bases). El vértice 8 representa un
asistencia múltiple, en la que los criados y las demandas (ü) se colorean de acuerdo con la
el servicio exigido. Los criados están especializados en satisfacer demandas cuyo color
está marcado en su uniforme.

1 1

10 10 10 10
6 6

dos 3 dos 3

6 7 6 7

7 7

5 5
13 5 13 5
8 8
ü ü
ü ü
5 9 4 7 8 5 10 5 9 4 7 8 5 10

https://translate.googleusercontent.com/translate_f 378/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

8 10 4 1 8 10 4 1

1 5 9 8 11 1 5 9 8 11

Situación en el momento de la demanda Solución de servicio utilizada

FIGURA 10.23 Servicio en un modelo de servo múltiple.

Página 456

450 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

4 modelos jerárquicos para servicio dinámico

Eventualmente, los clientes exigentes pueden clasificarse jerárquicamente para que


los requisitos de servicio se pueden relajar para ciertos subconjuntos de usuarios. Charnes y
Storbeck (1980) aborda situaciones jerárquicas de esta naturaleza a través de la programación de objetos.
tú. Algunos trabajos en esta área son reportados por:

• Chuch y Eaton (1987) por la ubicación de clínicas y hospitales.


• Gerrard y Chuch (1994) para sistemas de salud con capacidad para considerar diversas funciones
objetivo y recubrimientos.

• ReVelle (1996) con un modelo multiobjetivo.

10.4.3 - Algoritmos de solución heurística


Presentaremos dos algoritmos de solución para el problema, uno para el caso en línea y otro para el caso fuera de línea .

4 Algoritmo de Sleator y Tarjan (para el caso en línea)

Sleator y Tarjan (1985), presentan el algoritmo BAL para la solución de k -servos online. La estrategia es
Básicamente, elige los movimientos que permiten a los distintos sirvientes moverse.
igualitario. Para cada k servo, el algoritmo mantiene la distancia de movimiento total equilibrada que será
llamado D k . Si se descubre una demanda en un cierto vértice j, se elige el servo k para
alizar el servicio de modo que min { D k + d kj }, donde d kj es la distancia que debe recorrer el sirviente k al
vértice j, K = {1, ..., k } un conjunto de índices S = {,siyoN k K
∈ , ∈ } conjunto de | K | sirvientes ubicados
k

en los vértices k , y, finalmente, j, el vértice donde se configuró la demanda. El algoritmo siguiente describe el
La estrategia de Sleator para equilibrar los desplazamientos con cada nueva demanda.

Algoritmo de Sleator y Tarjan

COMIENZO
Lea el gráfico G = (N, A) , D , S y J ;
Inicializar las variables Sol ← Æ;

Para todos losyo ∈ calcular d kj


ks s

Determine k tal que min { D k + d kj }


Hacer
comienzo

Sol ← { k };
D k ← D k + d kj ;
yo j
sk ← s k ;

Fin
FIN

Al examinar el algoritmo de Sleator y Tarjan, es evidente que la estrategia no es capaz de garantizar la


minimizando el desplazamiento de los servos. Es un algoritmo en línea , es decir, un algoritmo propietario.
para el tratamiento de situaciones en las que se está informando la demanda como los servidores
están siendo movidos. La situación ejemplificada en la figura 10.24 muestra cómo esta heurística puede
alejarse de la política óptima. Los servidores ocupan inicialmente los vértices 3 y 5 del gráfico y la primera llamada

Página 457

https://translate.googleusercontent.com/translate_f 379/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

COBERTURA, PARTICIONAMIENTO Y UBICACIÓN 451

ocurre en el vértice 4. Dado que ambos sirvientes nunca se movieron, el sirviente elegido para el servicio
es el más cercano al punto de demanda, es decir, el servo S 1 que estaba estacionado en el vértice 5.
La segunda llamada ocurre en el vértice 2. En este caso, como S 2 ya se ha desplazado nueve unidades, el
es el sirviente S 1 . El total recorrido por los sirvientes para realizar ambas llamadas es 9 + 13 = 22 unidades.
des. Si S 2 se asignara al primer servicio y S 1 al segundo, el espacio total recorrido sería
10 + 5 = 15 unidades.

1 1

10 10
10 10
2ü 6 6
S1
dos 3 dos 3

6 7 6 7
7 7

5 5
13 5 13 5
8 8

5 9 4 1ü 5 9 4

S2 S2
8 10 8 10

1 1

(a) Gráfico de demanda (b) Solución heurística

FIGURA 10.24 Solución en línea para k- deer.

Si disponemos de información sobre la demanda desde el principio del problema, es posible prevenir una situación.
como se verifica en la aplicación del algoritmo anterior.
Manasse y Sleator (1990) presentan otros algoritmos para el problema de ( n - 1) servidores y
2-sirvientes. El siguiente algoritmo explora la relación entre k -servos y PDK para resolver un problema.
ma fuera de línea . Denominando por J, J Ì N el conjunto del índice de los vértices que demandan servicios.
Separando L en k clusters de proximidad con los vértices representados por el conjunto P ,
solución del PDK en G , P = { p 1 , p 2 , ..., p k }, y denominando por G i = {1, ..., g i } los vértices asignados en
cada uno de los k grupos tenemos:

Algoritmo de separación K

COMIENZO
Lea el gráfico G = (N, A) , S y J ;
Encuentra k grupos de proximidad en G
Encuentre k vértices dispersos (solución PDK)
Asignar cada grupo de vértices G i al nodo sirviente más cercano
al representante de G i
yo
Encuentra el camino más corto que une s k exigir nodos
perteneciendo a tu grupo
FIN

Observamos que el propósito de la separación propuesta para el problema de los sirvientes es diferente del
modelo de Erkut (1990) y llamado r-separación . La figura 10.25 ejemplifica la aplicación del algoritmo
k- separación como en el caso de la figura 10.25 (a). En el primer paso, se forman grupos de proximidad.
en. En la segunda etapa, dentro de cada grupo, se establece la mejor ruta para el servidor asignado a usted.
designado.

Página 458

452 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

1 1 1

10 10
ü 6 S1 ü
S1
dos 3 dos 3 dos 3
6 7
7 7 7
5
13 10
8

4 ü 5 4 ü 5
5 9 4
S2 S1
S2
8 10

1 1 1

https://translate.googleusercontent.com/translate_f 380/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

(un gráfico (b) División en grupos (c) Rutas en grupos

FIGURA 10.25 Solución en línea para k- deer.

El algoritmo de separación k busca equilibrar los esfuerzos de los sirvientes separando un área de trabajo
para cada uno de ellos. Por otro lado, el criterio de minimización de desplazamiento se considera directamente
por el camino más corto que une los vértices exigidos dentro de cada grupo.

10.5 - PROBLEMAS PROPUESTOS

1 - El problema de la explotación forestal sostenida - Modelo por lotes L


Queremos explotar económicamente la madera en una determinada zona forestal para reducir el impacto
impacto ambiental de la actividad, transformándola en una acción autosostenible. Para lograr este objetivo, un
la cantidad de árboles debe eliminarse anualmente dentro de una configuración escasa
y distribuida uniformemente dentro del área, llamada configuración de explotación anual.

Mucha área para explorar Concepto de barrio

FIGURA 10.26 Asignación de exploración.

Para operacionalizar el proceso, el área de explotación se dividió en r bloques, como lo muestra Fi-
Figura 10.26. Una configuración de explotación anual consiste en elegir un determinado conjunto de
bloques a atacar y la cantidad de árboles que se eliminarán en cada bloque. Dentro de los cuatro
dras solo se puede eliminar hasta n i árboles i = 1, ..., r . Si un tribunal está incluido en una determinada confi-
configuración de explotación, al menos dos bloques vecinos no se pueden incluir en la misma configuración
guración. Por razones económicas, es necesario que todos los tribunales designados en la configuración de la
año s tienen al menos un corte vecina también en el año s de configuración . El concepto de barrio

Página 459

COBERTURA, PARTICIONAMIENTO Y UBICACIÓN 453

entre bloques se aclara en la figura en relación al corte marcado. Observamos que el enfrentamiento
La relación entre los vértices de los bloques se considera una relación de vecindad. Ellos deberían ser
al menos k árboles en el área anualmente . Una vez que se ha designado un determinado tribunal para
figuración del año s , solo podrá reasignarse a la explotación después de s + 3.
Formule el problema considerando que desea maximizar el número total de árboles que se eliminarán.
en un horizonte de 4 años.

2 - El problema de la explotación sostenible de la madera - Modelo detallado L


En este problema, el objetivo es básicamente el mismo que en el caso anterior, excepto que el factor de interferencia económica
La lógica es más seria, ya que es un vegetal de gran valor, lo que nos obliga a considerar a los individuos
arboles Sea el siguiente diagrama, que representa la ubicación de cada especie de planta por
pequeño círculo oscuro.

https://translate.googleusercontent.com/translate_f 381/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

FIGURA 10.27 Distribución de plantas.

Cada configuración de finca anual se compone de varios árboles. Si un arbol


se asigna a una configuración anual, ninguna otra, dentro del círculo de exclusión (constante para
todos los árboles) que se muestra en la figura del problema, se pueden designar con la misma configuración. Si
se quita un árbol, se planta un nuevo individuo en su lugar, necesitando 15 años para
para cortar la edad de corte. Si un árbol no tiene vecinos (dentro del radio de exclusión), no puede
se puede cortar. Formule el problema de maximizar el retiro en el horizonte de cinco años.

3 - El problema de la evacuación de emergencia - Caso de una planta nuclear L


En una determinada región hay una planta de energía nuclear para generar electricidad. Dada la posibilidad
la ocurrencia de una fuga de material radiactivo (remoto, pero real) es necesario prepararse
un plan de evacuación de emergencia para la región circundante. El plan debe prever la
refugio seguro de personas, animales y patrimonio esencial (obras de arte, símbolos de la cultura y
nacional, etc.) antes de que puedan sufrir los efectos nocivos de la exposición radiactiva. La región del
na se representa esquemáticamente en la figura 10.28:
El modelo de evacuación propuesto idealiza la concentración de personas, animales y patrimonio.
en centros de clasificación y evacuación. En estos centros, las personas y los animales pueden incluso
atendidos de forma urgente, si ya han sido expuestos a algún tipo de efecto, minimizando
haciendo posible así el impacto del accidente. La determinación del número y ubicación de la
El cribado y la evacuación trasciende la dimensión económica, ya que, para que se implanten,

Página 460

454 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

Planta de energía nuclear

Mar

FIGURA 10.28 Distribución de la demanda.

las personas deben ser introducidas en el área de riesgo, aumentando el riesgo humano. Si, por un lado, un
un número excesivo de centros dificultará la coordinación de la evacuación y aumentará el riesgo de
seres humanos, por otro lado, un pequeño número ciertamente causará insuficiencia en el
asistencia.
Las unidades de discretización (rectángulos de figura) tienen las siguientes demandas:

p i º número de personas que residen en el área i .


v i º número de animales que serán evacuados del área i .
el i º balance del volumen demandado por la zona i .

Tenga en cuenta que cada unidad de discretización debe asignarse a un centro de detección. Estafa-
sidere también que los centros de cribado serán unidades estandarizadas para facilitar la formación
personal de servicio, además de permitir flexibilidad en la redistribución del personal (condiciones
típico de las operaciones de emergencia), pudiendo atender g personas, k animales yl unidades de
volumen de capital, dentro del plazo que se considere seguro para la operación. Teniendo en
Tenga en cuenta que ningún punto de demanda puede estar a más de r kilómetros de un centro de
detección (como se muestra en el círculo más pequeño de la figura) y que no se puede ubicar ningún centro de detección
https://translate.googleusercontent.com/translate_f 382/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
dentro del área de máximo riesgo de la planta (como se muestra en el círculo más grande de la figura), formule el
problema de minimizar el número de centros de clasificación del sistema de evacuación. 1

4 - El problema del suministro de agua en zonas de lluvia irregular L


En una región con un régimen de lluvias irregular, se desea construir un sistema de recolección y almacenamiento
pozos de agua de lluvia y artesianos, para que sea posible, mediante una operación integrada,
hacer una distribución conveniente del agua durante la estación seca. El sistema constará de presas
pozos subterráneos y artesianos. Los puntos de demanda se muestran en la figura siguiente a través de
a través de los pequeños círculos oscuros, cada punto i exigiendo una cantidad f i litros de agua por
segundo. Las presas subterráneas deben mantener una distancia mínima d de otras presas o
pozos artesianos. La capacidad de cada pozo es de p litros por segundo, mientras que la de las presas es de q
litros por segundo. Los puntos de demanda deben estar a una distancia máxima de r metros de su unidad.
suministro, habida cuenta de los problemas operativos derivados del transporte acuático.

1
Considere los puntos de apantallamiento ubicados en el centro de gravedad de los rectángulos de discretización.

Página 461

COBERTURA, PARTICIONAMIENTO Y UBICACIÓN 455

FIGURA 10.29 Ubicación de las demandas de suministro de agua.

Los costos de una presa son unidades monetarias, mientras que un pozo T unidades. Las presas y los pozos pueden
construirse en cualquier parte del área bajo análisis.
Formular el problema para minimizar el costo total del sistema y satisfacer todas las demandas.
identificado.

5 - El problema de los análisis de sangre L


Para mantener la calidad de la sangre utilizada, evitando la transmisión de enfermedades infecciosas, el
El gobierno mantiene un sistema de examen eficiente. Hay cinco paquetes de exámenes capaces de verificar
usabilidad de cada bolsa de sangre que se distribuirá a los hospitales. Los paquetes se componen
de t diferentes pruebas que cubren cada área específica. Consideraremos, en este caso, que los paquetes
constará de cuatro tipos de pruebas que comprobarán cuatro áreas y que tanto las áreas como
las pruebas son equivalentes, y sólo varían en efectividad y costo (es decir, t = 4 en todos los paquetes).
Cada paquete de pruebas es más eficaz en una determinada porción de la población y para determinadas enfermedades.
ciones. Es posible probar una bolsa simultáneamente en varios paquetes (o incluso en todos), pero esto
Este procedimiento es extremadamente caro y da como resultado un aumento insignificante de la seguridad. O
el gobierno tiene una cierta cantidad Q (en unidades monetarias) para el proceso de garantía
calidad de la sangre y tiene la intención de agotarla por completo con pruebas. Sabiendo eso, a través
información que se recolecta en la entrevista con el donante, es posible establecer una
k
fitness f ij desde la prueba i desde el paquete j hasta la bolsa k . También se sabe que, por razones de coherencia, cada

la beca debe aprobar al menos todas las pruebas i de un paquete j, y que cada prueba i del paquete j cuesta c ij
unidades monetarias a realizar, formular:

1. El problema de maximizar la idoneidad de las pruebas para un conjunto de K = {1, ..., k }, bolsas de sangre,
sujeto a la restricción de agotar los recursos disponibles para tal fin.

2. Minimice el gasto en la prueba de un conjunto de K = {1, ..., k } bolsas de sangre, lo que requiere
un estándar mínimo de adecuación R t , t = 1, 2, 3, 4, asociado con cada tipo de prueba que una bolsa k
Se presentará un valor obtenido por la suma de los factores de adecuación entre las pruebas realizadas
y la beca en examen.

https://translate.googleusercontent.com/translate_f 383/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

Página 462

ANEXO
TEMAS EN ÁLGEBRA
LINEAL Y CONVEXIDAD

A.1 - MATRICES Y FUNCIONAMIENTO CON MATRICES

A.1.1 - Conceptos elementales

La matriz es una entidad matemática representada por una disposición dimensional de números o una tabla.
Como entidad matemática, cada matriz tiene ciertas propiedades. Las matrices más conocidas
CIDAS son matrices bidimensionales en el que llaman a la m filas y líneas horizontales n See-
ticales de columna. Ejemplo:

456 ⎤
A=⎡ ⎣ ⎦
789

m = 2; n = 3.

45 ⎤
B=⎡ ⎣ ⎦
78

m = 2; n = 2.

La matriz B se llama matriz cuadrada. Normalmente representamos una matriz a través de


una letra mayúscula, reservando las minúsculas para la representación de sus componentes.
Como arreglo multidimensional, podemos considerar que las matrices están formadas por unidades
diseños o vectores unidimensionales. En este caso, las filas o columnas de la tabla se pueden interpretar
como vectores de fila o columna. Cuando una matriz se reduce a un vector de fila o columna incluso como
sí, todavía podemos llamarlo matriz, este es el caso de las matrices de columna o fila. Ejemplo:

Matriz de columnas

⎡ 4⎤
C 3 × =1 ⎢ 7⎥
⎣ 3⎦

Página 463

458 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

https://translate.googleusercontent.com/translate_f 384/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

Matriz de línea

D 1×3= [4 5 6 ]

Los elementos individuales de una matriz están representados por la letra minúscula de la matriz adjunta.
de los índices que corresponden a sus coordenadas en la tabla. El primer índice asociado
la coordenada horizontal o el número de línea. Según el segundo índice, el número de columna
reflexionando. Ejemplo:

⎡ C11 = 4 C12 = 3 ⎤
C = [ c ij ] = ⎣
C21 = - 1 C22 = 5 ⎦

Genéricamente:

⎡ los los12 L los1norte⎤


11
⎢ los
21 los22 L losdos ⎥
norte
A = [ a ij ] =
⎢ METROMETRO L METRO⎥
⎣ los losmetro L los ⎦
Minnesota
metro
1 dos

A.1.2 - Operaciones elementales

4 Suma y resta de matrices

La condición para que dos matrices puedan operar en suma o resta es que tengan
el mismo número de filas y columnas.

El operador neutral en la suma de matrices es la matriz nula (ver matriz C ). La suma o resta de
Las pautas se realizan operando elemento por elemento de cada matriz involucrada. Ejemplo:
Agregue las siguientes matrices: D = A + B + C , donde

4 - 1⎤ 11 ⎤ 00 ⎤
A = ⎡⎣ 7 2 ⎦ , B = ⎡⎣ 2 1–, ⎦ C = ⎡⎣ 0 0 ⎦

En este caso obtenemos D sumando las matrices A , B y C elemento por elemento (matriz nula).

⎡ 4 1+ 0+5= - 1 1+ 0+ 0= ⎤
D= ⎣ ++=
7209 2 1- 0 1+ = ⎦

4 Multiplicar por un número real

Dada una matriz A y un número escalar (o real) l, el producto l ´ A es una matriz en la que todos los elementos son
Los valores A se multiplicaron por el valor de l. Ejemplo:

4 - 1⎤ ⎡ -4 1⎤
Si A = ⎡ ⎣ ⎦ el = –1 entonces l ´ A = ⎣ -7 ⎦
72 - dos

4 Producto Matrix
Es una de las operaciones más importantes del álgebra lineal. Sean las matrices A = [ a ij ]; B = [ b ij ];
C = [ c ij ]; y sabemos que C = A ' B . Entonces podemos obtener los elementos de C , su c ij , a través de la
siguiente regla:
El elemento i , j de la matriz de productos se obtendrá sumando los productos de los elementos correspondientes
correspondiente a la fila i de la primera matriz, por los elementos de la columna j de la segunda matriz. Ejemplo:

Página 464

TEMAS EN ÁLGEBRA LINEAL Y CONVEXIDAD 459

Ser:

⎡ 12 ⎤ ⎡ dos 1 ⎤
A = ⎣ 3 4, ⎦ B = ⎣ - 1 - 1⎦

Entonces, el elemento c 12 de la matriz C debe obtenerse sumando el producto entre los elementos de la primera
primera fila de A , ( a 11 , a 12 ) con los elementos de la segunda columna de B , ( b 12 , b 22 ). En ese caso:

c 12 = ( a 11 ´ b 12 ) + ( a 12 ´ b 22 ) = +1 –2 = –1

Etcétera. En el ejemplo:

⎡ ⎤
https://translate.googleusercontent.com/translate_f 385/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
⎡ C11 = 0 C12 = - 1 ⎤
C = [ c 12 ] = ⎣⎢
C21 = dos C22 = - 1 ⎦⎥

El operador neutral en el producto de la matriz se llama matriz de identidad. Ejemplo:

⎡ 10 .... 0⎤
⎢ 01 .... 0⎥
Yo = [ i ij ] =
⎢ .. .. .... .. ⎥
⎣ 00 .... 1⎦

Al definir la operación del producto matricial, solo puede ocurrir cuando el número de columnas
en la primera matriz es igual al número de líneas en la segunda.
La matriz resultante del producto A ´ B tendrá el número de líneas en la primera y el número de
segundas columnas. Ejemplo:

A s´p ´ B p´v = C s´v

El producto de la matriz no es una operación conmutativa como lo es el producto de números reales. Ni-
mally A 'B B ¹' El . Si A ´ B = B ´ A , entonces diremos que A y B son matrices conmutativas. Otro
fenómeno interesante observar es que si A 'C = A' B no pueden afirmar que C = B .
En el caso del producto con la matriz identidad A ´ I = A si la matriz A es cuadrada entonces A´I = I´A .
El producto de dos matrices distintas de cero puede ser una matriz nula.

4 Transposición de matrices
Es una operación en la que intercambiamos las filas de la matriz operadas por sus columnas y viceversa.
El símbolo de transposición es el exponente t .

⎡ 12 ⎤ ⎡ 13 ⎤
A = ⎣ 3 4e ⎦ LAt = ⎣ ⎦
24

El s'p Þ El t PD

Algunas propiedades de transposición:

1. ( kA ) t = k ( A ) t , para cada número escalar k .


2. ( A ´ B ) t = ( B ) t ´ ( A ) t .
3. (( A ) T ) T = A .
4. ( A + B ) t = ( A ) t + ( B ) t .

Página 465

460 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

4 Diagonal principal y horario

⎡ ⊗ Bs ..... Bs ⎤
⎢ Bi ⊗ ..... Bs ⎥
A = [ a ij ] =
⎢ .. .. ..... .. ⎥
⎣ Bi Bi ..... ⊗⎦

La diagonal formada por el símbolo Ä se dice que es principal. La diagonal principal divide la matriz en la banda.
banda superior e inferior. Cuando una matriz presenta la banda superior o inferior compuesta de ze-
y la diagonal principal unitaria, decimos que la matriz está escalada hacia la derecha o hacia la izquierda.

Ejemplo de escala izquierda:

⎡ 1 ??? ..... ??? ⎤


⎢ 01 ..... ??? ⎥
A = [ a ij ] =
⎢ .. .. ..... .. ⎥
⎣ 00 ..... 1 ⎦

A.1.3 - Particionamiento matricial


Las matrices se pueden dividir en submatrices. Esta medida puede resultar muy útil para calcular
variantes, demostración de teoremas y solución de sistemas de ecuaciones. En ese caso, las notas se utilizarán
siguientes ejemplos.

⎡ ⎤
https://translate.googleusercontent.com/translate_f 386/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
⎡ 11
los 12
los los13 los14 ⎤
⎢ los
21 los
22 los23 los24 ⎥
A=
⎢ los
31 los
32 los33 los34 ⎥
⎣ los
41 los
42 los43 los44 ⎦

se puede dividir en cuatro matrices, a saber:

⎡ LA LA12 ⎤
A = ⎣ 11
LA21 LA22 ⎦
o todavía,

⎡ los11 los12 los


13 los
14

⎢ los21 los22 los
23 los
24 ⎥
A=
⎢ los31 los32 los
33 los
34 ⎥
⎣ los41 los42 los
43 los
44

se puede dividir en cuatro matrices de columnas, a saber:

A = [ A 11 A 12 A 13 A 14 ]

A.1.4 - Ecuaciones matriciales


Las ecuaciones matriciales son, de hecho, formas compactas de expresar las ecuaciones tradicionales del álgebra.
rompe, por ejemplo, datos:

Página 466

TEMAS EN ÁLGEBRA LINEAL Y CONVEXIDAD 461

⎡ 4⎤ ⎡ 1⎤ ⎡ X ⎤
1
A = ⎢ 3 ⎥ , B = ⎢ 5 ⎥ y x = ⎢ X dos⎥
⎣ 7⎦ ⎣ dos
⎦ ⎣ X3 ⎦

resuelve la siguiente ecuación matricial:

A+2x=B

operando matricialmente tenemos:

2x=(A+B)

o sea:

⎡ dos
X1 ⎤ ⎡ 4⎤ ⎡ 1⎤
X dos⎥ = ⎢ 3 ⎥ + ⎢ 5 ⎥
2 x = ⎢ dos
X 3 ⎦ ⎣ 7 ⎦ ⎣ dos
⎣ dos ⎦

O todavía:

2 x 1 = 4 + 1 = 5 Þ x 1 = 5/2

2x2=3+5=8Þx2=4

2 x 3 = 7 + 2 = 9 Þ x 3 = 9/2

Un sistema de ecuaciones lineales se puede representar fácilmente en forma de matriz. Ser


una ecuación lineal de la forma:

una 1 x 1 + una 2 x 2 + .... + una norte x norte = b 1

Dónde:

x 1 , x 2 , ...., x n son las variables de la ecuación.


a 1 , a 2 , ....., a n son los coeficientes de estas variables.
b 1 es el término independiente de la ecuación.

Los valores de las variables de la ecuación anterior que la transforman en una identidad se denominan

https://translate.googleusercontent.com/translate_f 387/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
de solución. Un sistema de ecuaciones lineales no es más que un conjunto de varias ecuaciones lineales.
como sigue:

a 11 x 1 + a 12 x 2 + .... + a 1 norte x norte = segundo 1


a 21 x 1 + a 22 x 2 + .... + a 2 norte x norte = segundo 2
METRO METRO METRO METRO
un m 1 x 1 + un m 2 x 2 + .... + un mn x n = b m

donde encontramos n incógnitas en ecuaciones. Cada coeficiente a ij representa el coeficiente de la j- ésima


cognición de la ecuación índice i . Considere las matrices A = [ a ij ], x = [ x i ] (matriz de columna) y B = [ b j ] (matriz co-
luna). En notación matricial podemos representar este conjunto de ecuaciones lineales mediante la siguiente ecuación
instrucción de matriz:

Hacha = B

Página 467

462 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

A.1.5 - Inversión de matrices


La inversa de una matriz cuadrada A , llamada A –1 , es la matriz que cumple la siguiente condición:
Propiedad básica de las matrices inversas:

A ´ A –1 = I = A –1 ´ A

otras propiedades:

( A –1 ) –1 = A
( I –1 ) –1 = I
( k ´ A ) –1 = k –1 ´ A –1
( A ´B ) –1 = B –1 ´ A –1
( A ´ B ´ C ) –1 = C –1 ´ B –1 ´ A –1

No todas las matrices cuadradas tienen inversas. Una matriz que sirve a la propiedad
se dice que lo anterior es reversible . De lo contrario, la matriz se llama singular . Lo necesario y
lo suficiente para que una matriz cuadrada sea invertible es que su determinante sea diferente de cero. Y
¿Qué es un determinante?

Definición 1:
Se llama determinante (D) asociado con la matriz M , el polinomio obtenido al hacer la suma
representación algebraica de todos los términos constituidos por los productos de n elementos de la tabla,
de modo que los primeros índices forman la permutación natural y el segundo
las posibles permutaciones, y el signo positivo también debe asignarse a cada término
o negativo según la permutación de los índices, ya sea de primera o de segunda clase.

El determinante de una matriz es un valor escalar, es decir, un número real y se puede obtener mediante
siguiente expresión:

norte

det A = ∑ a yo 1 A yo 1
= 1
yo

donde A i l es el cofactor de un il definido por el producto de (–1) i +1 con el determinante de una submatriz de A , obteniendo
tomada por la eliminación de la i fila-ésima y la primera columna de A .

237
det 4 5 11 = dos
LA11 + 4 LA21 + 6 LA31 =
679

5 11 3 7 + 37
det 79 - det
4 7 96 det 5 11

El sistema de reducción recursivo propuesto por estas fórmulas termina invariablemente en el cálculo de
determinantes de matrices 2 ´ 2 cuya expresión es muy simple. Por otro lado, al calcular el
determinantes podemos obtener el valor de las variables o incógnitas de los sistemas lineales a través de la
presión:

det LA
https://translate.googleusercontent.com/translate_f 388/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
xj= J , j = 1, 2, ..., n
det LA

Página 468

TEMAS EN ÁLGEBRA LINEAL Y CONVEXIDAD 463

Tres líneas de acción principales son clásicas para determinar la inversa de A, a saber:

• Aplicar estrategias basadas en la definición de la inversa de A.


• Utilizando los determinantes.
• A través de operaciones elementales.
Demostraremos el método básico de inversión mediante operaciones elementales exactamente porque este
El método apoyará la acción del algoritmo simplex.

4 Inversión de matrices por el método de operaciones elementales


Sea la ecuación matricial:

Hacha = B

Usando las propiedades, no cambiamos A x = B cuando multiplicamos cualquiera de los miembros


por la matriz de identidad, así:

Ax = IB

Es igual a Ax = b .

El proceso de solución Ax = B dice:

x = A –1 B

o, por el mismo razonamiento que antes,

Ix = A –1 B

Comparando las ecuaciones anteriores, observamos que el proceso de inversión de la matriz se puede pensar
Sado como un proceso de transformación de una matriz A ya sea en una matriz de identidad, atra-
a través de operaciones que no violan las condiciones del sistema lineal original. En vista de lo anterior, puede
podemos imaginar un método de inversión para la matriz A , mediante operaciones elementales en sus líneas
líneas. Sea la matriz A representada debajo y la matriz I al lado. Cuando A se transforma en un
matriz de identidad matriz I habré acumulado el valor de la matriz A –1 . 1

⎡ 1 -11 ⎤ ⎡ 100 ⎤
A= ⎢ 0 -20 ⎥ Yo =⎢ 0 1 0 ⎥
⎣ 0 13 ⎦ ⎣ 001 ⎦

Usaremos una estrategia de cambiar A en una matriz de identidad, comenzando desde la esquina superior
a la izquierda y progresando de columna en columna.

Operación 1: Hacer el elemento a 11 = 1. Nada que ver, por la 11 = 1 en A .

1
Debemos utilizar una estrategia de cambio racional y cuidadosa para evitar cálculos innecesarios. Esto permitira
que la programación de A (los números cero en la matriz) se planifica de manera metódica. Tenga en cuenta, en el ejemplo, que el
elemento a 23 ya era cero inicialmente, como lo necesitaría, aunque su valor se cambia a la primera operación
perro. Sin una estrategia de cálculo racional, este fenómeno puede ocurrir en celdas que ya han sido calculadas.

Página 469

464 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

Operación 2: Hacer que el elemento de un 21 = 0. Para ello, debemos multiplicar la primera línea por -1 y complemento
https://translate.googleusercontent.com/translate_f 389/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
con la segunda línea resultante:

⎡ 1 -11 ⎤ ⎡ 100 ⎤
A= ⎢ 0 - 1 - 1⎥ Yo =⎢ - 1 1 0 ⎥
⎣ 0 13 ⎦ ⎣ 001 ⎦

Operación 3: Hacer que el elemento de un 12 = 0. Añadir la tercera línea a la primera, lo que resulta en:

⎡ 1 04 ⎤ ⎡ 101 ⎤
A= ⎢ 0 - 1 - 1⎥ Yo =⎢ - 1 1 0 ⎥
⎣ 0 13 ⎦ ⎣ 001 ⎦

Operación 4: Hacer que el elemento de un 22 = 1. La segunda línea se multiplica por -1 resultando en:

⎡ 104 ⎤ ⎡ 101 ⎤
A= ⎢ 011 ⎥ Yo =⎢ 1 - 1 0 ⎥
⎣ 013 ⎦ ⎣ 001 ⎦

Operación 5: Haciendo el elemento en 23 = 0. Multiplica por -1 la segunda fila y suma con la tercera re -
sulting:

⎡ 104 ⎤ ⎡ 1 01 ⎤
A= ⎢ 011 ⎥ Yo =⎢ 1 -10 ⎥
⎣ 002 ⎦ ⎣ -1 11 ⎦

Operación 6: Hacer que el elemento de un 33 = 1. La tercera línea se divide por 2 resulta en:

⎡ 104 ⎤ ⎡ 1 0 1 ⎤
A= ⎢ 011 ⎥ Yo =⎢ 1 -1 0 ⎥
⎣ 001 ⎦ ⎣ - 1/ 2 1 2 1 2 / / ⎦

Operación 7: Hacer que el elemento en 23 = 0. Multiplica por -1 la tercera línea y la segunda suma resultante
tando:

⎡ 104 ⎤ ⎡ 1 0 1 ⎤
A= ⎢ 010 ⎥ Yo =⎢ 3 2/ - 3/ 2 - 1/ 2 ⎥
⎣ 001 ⎦ ⎣ - 1/ 2 1 2 / 1 2/ ⎦

Operación 8: Haciendo el elemento en 13 = 0. Se multiplica por la tercera fila y la suma -4 a la primera resultante
tando:

⎡ 100 ⎤ ⎡ 1 - dos -1 ⎤
A= ⎢ 010 ⎥ Yo =⎢ 3 2/ - /3 2 - /1 2 ⎥
⎣ 001 ⎦ ⎣ - /1 2 1 2 / 1 2/ ⎦

A.1.6 - Propiedad de la inversión matricial aumentada


Sea la matriz A y el vector B , como sigue:

11 ⎤ ⎤
dos
A = ⎡⎣ ⎦ , B = ⎡⎣ 1 ⎦
-10

Página 470

TEMAS EN ÁLGEBRA LINEAL Y CONVEXIDAD 465

Supongamos que queremos realizar la siguiente operación con las matrices A y B :

A –1 B

Podemos realizar la operación directamente, obteniendo la inversa de A y multiplicándola por B o


a través del propio proceso de inversión de A, utilizando una matriz aumentada de la siguiente manera:

⎡ 1 1 ⎤ [
dos
A+= ⎣ | ]
AB
-1 0 1⎦ =

Aplicar el proceso de inversión en la matriz aumentada utilizando el método de operaciones elementales


cizaña tenemos:

https://translate.googleusercontent.com/translate_f 390/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
• Agregación de la matriz de identidad
⎡ 1 1 ⎤
dos ⎡ 10 ⎤
A+= ⎣ Yo =
-1 0 1⎦ ⎣ 01 ⎦

• Operación de canonización de la primera columna, agregando la primera línea a la segunda:


⎡ 1 1 ⎤
dos ⎡ 10 ⎤
A+= ⎣ 0 1 3 ⎦ Yo =
⎣ 11 ⎦

• Operación de canonización de la segunda columna, multiplicando la segunda línea del aumento por –1 y
sumando a la segunda línea, concluyendo el proceso de obtención de la inversa de A

⎡ 1 0 -1 ⎤ ⎡ 0 –1 ⎤
A+= ⎣ Yo =
0 1 3 ⎦ ⎣ 11 ⎦

Darse cuenta de:

⎡ 0 - 1⎤ ⎤
dos - 1⎤
A –1 B = ⎣ 1 1 ⎦ × ⎡⎣ 1 ⎦ = ⎡⎣ 3 ⎦

se obtuvo directamente en la imagen ampliada. Es decir, cuando realizamos la inversión de la matriz A , en


marco aumentado, los vectores agregados resultantes representan el producto de los vectores originales por
inverso de A . El marco final del proceso será:

[ I | A –1 B ] [ A –1 ]

A.2 - ESTUDIO DE SISTEMAS DE ECUACIONES LINEALES

A.2.1 - Tipos de sistemas lineales


Un sistema de ecuaciones lineales puede admitir una solución, infinitas soluciones o ser incompatible. A
Al determinar las soluciones de sistemas lineales, el teorema de Cramer es extremadamente valioso:

Teorema de Cramer :
Cualquier sistema de n ecuaciones lineales con n incógnitas, cuyo determinante
de las incógnitas es diferente de cero, admite una única solución.

Página 471

466 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

Un sistema de forma lineal:

hasta 11 x 1 + hasta 12 x 2 + .... + hasta 1 n x n = 0


hasta 21 x 1 + hasta 22 x 2 + .... + hasta 2 n x n = 0
METRO METRO METRO METRO
una m 1 x 1 + una m 2 x 2 + .... + una mn x n = 0

se llama homogéneo . En ese caso:

1. Si D ¹ 0 los valores de las incógnitas son todos cero y la solución se llama trivial.
2. Si D = 0, el sistema admite infinitas soluciones diferentes y se dice que es indeterminado.

Dado un sistema lineal con p ecuaciones y n incógnitas, p < n de la forma:

hasta 11 x 1 + hasta 12 x 2 + .... hasta 1 p x p + hasta 1 p + 1 x p + 1 + ... + hasta 1 n x n = b 1


hasta 21 x 1 + hasta 22 x 2 + .... hasta 2 p x p + hasta 2 p + 1 x p + 1 + ... + hasta 2 n x n = b 2
METRO METRO METRO METRO METRO METRO METRO
a p 1 x 1 + a p 2 x 2 + .... a pp x p + a pp + 1 x p + 1 + ..... + a pn x n = b n

Considere la matriz formada por los coeficientes de las incógnitas:

⎡ los los K los1 PAGS los1 PAGS


+ 1 L los1 norte

11 12
⎢ los los L los los + L los ⎥
21 22 dosPAGS dos PAGS1 dosnorte
A= ⎢ ⎥
METRO METRO METROMETROMETROMETRO METRO
⎢⎣ losPAGS
1 losPAGS
dos
L lospáginas lospáginas
+ 1 L los
pn ⎦

https://translate.googleusercontent.com/translate_f 391/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

De ella podemos deducir varios determinantes de orden p . Suponiendo que al menos uno de ellos difiera
cero y organizando las incógnitas y restricciones que podemos tener:

los11 los12 L los


1 norte
los21 los22 L losdos
norte
Δ= ≠ 0
L LLL
los los L lospn
PAGS
1 PAGS
dos (02)

El sistema propuesto se puede reescribir de la siguiente manera:

a 11 x 1 + hasta 12 x 2 + .... hasta 1 p x p = b 1 - hasta 1 p + 1 x p + 1 - ..... - hasta 1 n x n


a 21 x 1 + a 22 x 2 + .... a 2 p x p = b 2 + a 2 p + 1 x p + 1 - ..... - a 2 norte x n (03)
.................................................. .....................................
un p 1 x 1 + a p 2 x 2 + .... un pp x p = b n + a p p + 1 x p + 1 - .....- un pn x n

Como el sistema correcto tiene D ¹ 0, podemos determinar los valores de p incógnitas x 1 , x 2 , ... ,
x p (incógnitas principales), dependiendo de las n - p restantes (incógnitas no principales) de tal manera que la
cada conjunto de valores asignados arbitrariamente corresponderá a un conjunto determinado
de valores para aquellos. Vemos que el sistema propuesto, dentro de la hipótesis formulada, es siempre
socavado.

Página 472

TEMAS EN ÁLGEBRA LINEAL Y CONVEXIDAD 467

A.2.2 - Dependencia lineal entre polinomios


Antes de abordar el concepto de dependencia lineal, definamos la propiedad de combinación lineal,
que se puede expresar mediante la siguiente ecuación:

x = l 1 x 1 + l 2 x 2 + .... + l norte x norte

donde, recordando nuevamente, x es un vector de dimensión ny un valor escalar.

Hay varios casos particulares de combinación lineal.

4 combinación cónica

x = l 1 x 1 + l 2 x 2 + .... + l n x n cuando l i ³ 0

Cónico

X1

X2

4 combinación relacionada

norte

x = l 1 x 1 + l 2 x 2 + .... + l n x n cuando ∑ l yo = 1
yo= 1

Al fin

X1

X2

4 combinación convexa

https://translate.googleusercontent.com/translate_f 392/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
norte

x = l 1 x 1 + l 2 x 2 + .... + l n x n cuando ∑ l yo = 1 y yo yo ³ 0
= 1
yo

Convexo

X1

X2

Página 473

468 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

La noción de dependencia lineal puede verse como una generalización del concepto de proporcional
entre diferentes cantidades. Consideremos dos conjuntos de números, a saber:

(dos)
x 1 (1) , x 2 (1) , ...., x n (1) y x1 (2) , x2 (2) , ...., x n

se dice que son proporcionales entre sí cuando es posible determinar dos constantes l 1 , l 2 no
simultáneamente nulo tal que:

l 1 x yo(1) + l 2 x yo (2) = 0 ( yo = 1, 2, ..., n )

Cuando l 1 ¹ 0, deducimos:

–Λ dos –Λ dos –Λ dos (dos)


x 1 (1) = x 1 (2) , x 2 (1) = x 2 (2) , ......., x n (1) = xn
λ1 λ1 λ1

Cuando l 2 ¹ 0, deducimos:

–Λ 1 –Λ 1 –Λ 1 (1)
x 1 (2) = x 1 (1) , x 2 (2) = x 2 (1) , ......., x n (2) = xn
λ λ λ
dos dos dos

La definición anterior tiene la ventaja, como caso particular, de que uno de los conjuntos está constituido
por ceros. Los polinomios f 1 , f 2 , ..., f m , previamente definidos, se dice que son linealmente dependientes
cuando podemos determinar m constantes, no todas nulas l 1 , l 2 , ..., l m tales que:

f 1 l 1 , f 2 l 2 , ..., f m l m º 0

A.2.3 - Discusión de sistemas de ecuaciones con matrices de coeficientes cuadrados

Sabemos que, básicamente, un sistema de ecuaciones puede admitir las siguientes condiciones de solución.
• Sistema compatible:
• Con una solución.
• Con infinitas soluciones.
• Sistema incompatible.

Ahora exploraremos el método de operaciones elementales para identificar configuraciones típicas


para la discusión de sistemas lineales en los que el número de incógnitas es igual al número de ecuaciones.
Para ello, introduciremos el concepto de matriz aumentada.
Nombraremos la matriz formada por los coeficientes del sistema de ecuaciones lineales y sus términos
independiente como matriz aumentada del sistema .

Ejemplo 1 :

Sea el sistema de ecuaciones lineales a continuación:

x 1+ 2 x 2+ x 3= 1
2 x 1- x 2+ 2 x 3= 2
3 x 1+ x 2+ 3 x 3= 4

https://translate.googleusercontent.com/translate_f 393/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
la matriz aumentada del sistema es:

Página 474

TEMAS EN ÁLGEBRA LINEAL Y CONVEXIDAD 469

⎡ 12 1 1⎤
S = ⎢ 2-1 dos dos

⎣ 31 3 4⎦

Mediante operaciones elementales transformaremos la matriz S en una matriz escalonada y estudiaremos la


comportamiento del sistema de ecuaciones:

Operación 1: Cancelar el elemento S 21 multiplicando la línea 1 por –2 y sumándolo a la línea 2:

⎡ 12 1 1⎤
S = ⎢ 0 –5 0 0⎥
⎣ 31 3 4⎦

Operación 2: Cancelar el elemento S 31 multiplicando la línea 1 por –3 y agregándolo a la línea 3:

⎡ 12 1 1⎤
S = ⎢ 0 –5 0 0⎥
⎣ 0 –5 0 1⎦

Operación 3: Hacer que el S 22 sea elemental dividiendo la línea 2 entre –5:

⎡ 12 1 1⎤
S= ⎢ 01 0 0⎥
⎣ 0 –5 0 1⎦

Operación 4: Hacer unitario el elemento S 32 multiplicando la línea 2 por 5 y sumándolo a la línea 3:

⎡ 12 1 1⎤
S= ⎢ 01 0 0⎥
⎣ 00 0 1⎦

Como podemos ver en la última línea de la matriz escalonada S, existe una inconsistencia en el sistema.
tema para que la solución sea imposible.

Ejemplo 2:

Sea el siguiente sistema de ecuaciones lineales:

x 1+ 3 x 2+ x = 5
3 x 1- 2 x 2- 8 x 3= - 7
3 x 1+ x 2+ 3 x 3= 4

La matriz aumentada del sistema es:

⎡ 13 1 5 ⎤
S = ⎢ 3 –2 –8 –7 ⎥
⎣ 31 3 4 ⎦

Mediante operaciones elementales transformaremos la matriz S en una matriz escalonada y estudiaremos la


comportamiento del sistema de ecuaciones:

Página 475

470 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

Operación 1: Cancelar el elemento S 21 multiplicando la línea 1 por –3 y agregándolo a la línea 2:

⎡ ⎤
https://translate.googleusercontent.com/translate_f 394/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
⎡ 1 3 1 5 ⎤
S = ⎢ 0 –11 –11 –22 ⎥
⎣ 3 1 3 4 ⎦

Operación 2: Cancelar el elemento S 31 multiplicando la línea 1 por –3 y agregándolo a la línea 3:

⎡ 1 3 1 5 ⎤
S = ⎢ 0 –11 –11 –22 ⎥
⎣ 0 –8 0 –11 ⎦

Operación 3: Hacer que S 22 sea elemental dividiendo la línea 2 entre –11:

⎡ 13 1 5 ⎤
S= ⎢ 01 1 dos⎥
⎣ 0 –8 0 –11 ⎦

Operación 4: Hacer unitario el elemento S 32 multiplicando la línea 2 por 8 y agregándolo a la línea 3:

⎡ 13 1 5⎤
S= ⎢ 01 1 dos

⎣ 00 8 5⎦

Operación 4: Hacer que S 33 sea elemental dividiendo la línea 3 entre 8:

⎡ ⎤
13 1 5
S= ⎢ 01 1 dos⎥
⎢⎣ 0 0 1 5 ⎥⎦
8

Solución: Sistema decidido, con solución.

A.2.4 - Discusión de sistemas de ecuaciones con matrices de coeficientes rectangulares


Aunque genéricamente los sistemas de ecuaciones lineales son del tipo (01) y, en el caso de ser resuelto
termine siendo reducido a conjuntos de sistemas de tipo (03), aplicaremos la técnica de operaciones
información elemental para su solución y para ver cómo este proceso de
tipo (01) sistemas a tipo (03) sistemas. Tome el siguiente ejemplo:

x 1 + x 2 - x 3 + x 4 + 2x 6 = 12 (04)
–X 1 + 2x 2 + 2x 3 + x 5 = 6

que nos llevará a la siguiente matriz aumentada:

xxx
1 dos 3 xxx
4 5 6 segundo
⎡ 1 1 –1 1 0 dos 12 ⎤
s =⎣ -1 2201 0 6 ⎦

Página 476

TEMAS EN ÁLGEBRA LINEAL Y CONVEXIDAD 471

Observando la matriz aumentada del sistema (04) encontramos una solución inmediata para el sistema
ma, es decir, una submatriz de tipo (03) que se compondrá de las variables x 3 y x 5 . Entonces, con el propósito de
solución, el sistema indeterminado (04) se puede reescribir de la siguiente manera:

xx4 5 segundo
⎡ 1 0 12 ⎤
s =⎣
0 1 6 ⎦

poniendo las otras variables a cero. En este caso, la solución sería: x 1 = 0, x 2 = 0, x 3 = 0, x 4 = 12, x 5 = 6,
o en:

Hacha = B

x = (0, 0, 0, 12, 6)

https://translate.googleusercontent.com/translate_f 395/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

En este punto, es interesante aclarar mejor el proceso de selección de submatriz (03). Cómo
quedó claro en la deducción de (03) que no es ninguna submatriz que pueda resolver nuestro sistema de ecuaciones.
Si hubiéramos elegido seleccionar la submatriz a continuación, por ejemplo:

xx4 5 segundo
⎡ 1 dos 12 ⎤
=
s ⎣
0 1 6 ⎦

¡El determinante de la submatriz (03) sería singular y la descomposición no sería válida! A pesar de esto
De hecho, matemáticamente, que sepamos, ahora lo justificaremos a la luz del cálculo
vector.
Realmente podemos considerar las columnas de la matriz aumentada como vectores y una solución para
el conjunto de ecuaciones del sistema como una combinación lineal entre estos vectores. En el ejemplo,
La combinación lineal que elegimos inicialmente para resolver nuestro sistema será:

l = (l 1 , l 2, l 3 , l 4 , l 5, l 6) = (0, 0, 0, 12, 6, 0)

que conduce a la siguiente combinación lineal:

X = l 1x 1 + l 2x 2 + l 3x 3 + l 4x 4 + l 5x 5 + l 6x 6 =

⎛0⎞
⎜0⎟

= ⎛0 ⎜ 1⎞ ⎟ + ⎛⎜1⎞⎟ + ⎛⎜ -1 ⎜0⎞⎟ + ⎛⎜1⎞⎟ =⎜ 0 ⎟


⎞ ⎟ + ⎛ ⎜1⎞⎟ + ⎛
⎝-1 ⎠ 0 ⎝dos ⎠ 0 ⎝ dos ⎠ 12 ⎝ 0⎠ 6 ⎝1 ⎠ 0 ⎝0 ⎠ ⎜12 ⎟
⎜6⎟
⎝0⎠

Los siguientes conceptos son útiles ahora:

Definición 2 :
Un espacio vectorial con n dimensiones es el conjunto de todos los vectores de n componentes.

Las variables y la solución de un sistema de ecuaciones lineales pueden considerarse vectores de


un espacio de dimensión m , como acabamos de demostrar en el ejemplo anterior.

Página 477

472 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

Definición 3:
Se dice que un conjunto de vectores es un conjunto generador de un espacio vectorial, si todos
El espacio se puede expresar como una combinación lineal de los vectores de este
Generador listo.

Definición 4 :
A base de de un espacio vectorial es un conjunto generador de espacio, compuesto de m vector
indicadores linealmente independientes . Las variables asociadas con estas columnas se denominan
variables básicas.

En el ejemplo que examinamos x 4 y x 5 , incluso forman una base canónica del espacio R 2 ( m =
dos). De esta forma, existe una equivalencia de conceptos que resulta sumamente interesante: obtener un sistema
un tipo consistente (03) sería una medida que dependería solo de operaciones algebraicas
si no fuera por el hecho de que no todos los subconjuntos de m variables en la matriz A tienen ciertos
no nulo minant. Los subconjuntos que se pueden resolver de forma independiente (permitiendo
tratando de fijar los demás en cero) el sistema de ecuaciones constituye una base de dimensión m , es decir,
son variables linealmente independientes en el conjunto de restricciones del sistema de ecuaciones, o
también: una base A es una matriz de m vectores columna linealmente independientes A .

Definición 5 :
Cada base corresponde a una y solo una solución para el sistema. A esa solución
lo llamaremos la solución básica .

https://translate.googleusercontent.com/translate_f 396/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
Definición 6 : solución básica todos los componentes del vector solución son positivos,
Cuando en una
se llama solución básica viable .

Está claro que los sistemas indeterminados con un gran número de variables tendrán una gran
número de submatrices que cumplirán con el requisito para formar una base. Sabiendo que hay
n variables en el sistema y subconjuntos deben estar formados solo por m , entonces como máximo
⎜ norte
⎛ ⎞⎟ = norte
!
⎝metro
⎠ teóricamente estas bases podrían formarse. Es en este punto que necesitamos aclarar
mnm!( - )!

comprender por qué estaríamos tan preocupados por trabajar con esta gran cantidad de subconjuntos.
variables de la matriz A , en lugar de ahondar en métodos que podrían resolver rápidamente
sistemas indeterminados, incluso si las variables tuvieran que compartir valores.
Finalmente, ¿por qué no nos interesaría obtener soluciones del tipo (1, 0, 0, 6, 7, 3), soluciones no básicas
pero ¿cuál podría ser aún más fácil de calcular?

A.3 - NOCIONES DE UNIMODULARIDAD


La unimodularidad es una propiedad de la matriz de gran aplicación en la programación matemática.

Definiciones basicas

4 Una matriz cuadrada de elementos enteros (matriz llamada número entero) A = [ a ij ] es unimodular si
| det A | = 0 o 1.

Página 478

TEMAS EN ÁLGEBRA LINEAL Y CONVEXIDAD 473

4 Una matriz de elementos enteros A es completamente unimodular (tu) si cada submatriz cuadrada
El carácter singular de A es unimodular.

4 Una matriz A es euleriana por columna (o fila) si la suma de los elementos de cada columna (o
mi) es parejo.

4 Una matriz A es euleriana si es simultáneamente euleriana por fila y por columna.

4 Si A eres tú, toda solución básica Ax = b , donde A y b son matrices de elementos enteros, es entera.

4 Es una condición necesaria para que la matriz A sea usted que " a ij Î A Þ a ij = 0, +1, –1.

Teoremas útiles

Teorema de Hoffman y Kruskal :


Sea ( P ): Maximice { z 0 = cx | Ax = b , x ³ 0}, donde A y b son matrices de elementos internos
ters. Las siguientes condiciones son equivalentes:
• El determinante de toda base B , definida a partir de A , es ± 1.
• Los vértices del poliedro { x ³ 0: Ax = b } son números enteros.
• La inversa de la base B , B –1 , definida en A, es una matriz entera.

Teorema de Camion:
Una matriz A con componentes {0, 1, -1} es usted si y solo si la suma de
de cada submatriz euleriana cuadrada de A es un múltiplo de 4.

Teorema de Truemper :
Una matriz A con componentes {0, 1, -1} es usted si y solo cada submatriz cuadrada
euleriano es singular.

Teorema de Heller y Tompkins:


En una matriz A con componentes {0, 1, –1}, usted:
• No aparecen más de dos elementos no nulos en cada columna.
• Las líneas de A se pueden dividir en dos subconjuntos Q 1 y Q 2 de manera que:
1. Si una columna contiene dos elementos no nulos con el
mismo signo, cada uno de ellos está en uno de los
subconjuntos.

https://translate.googleusercontent.com/translate_f 397/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
2. Si una columna contiene dos elementos no nulos
con diferentes señales, ambos están en el mismo
subconjunto.

Para más detalles sobre unimodularidad, ver: Truemper (1976a y 1976b), Chandrasekaran (1969),
Hoffman y Kruskal (1957), Heller y Hoffman (1962).

Página 479

474 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

A.4 - ELEMENTOS GEOMÉTRICOS EN EL ESTUDIO DE LA SOLUCIÓN


DE SISTEMAS INDETERMINADOS
Este tema tiene como objetivo aclarar la importancia de las soluciones básicas en la estrategia de solución de
problemas de programación matemática, indicando también los elementos para la comprensión de los
Criterios de elección e intercambio de estas bases en algoritmos de solución interactiva. El estudio de los elementos
Las geometrías asociadas con el problema también permitirán un camino elegante y fácil de entender.
al problema de la formalización matemática.

A.4.1 - Algunas propiedades de los conjuntos convexos


Los conjuntos convexos tienen varias propiedades geométricas. Algunas de estas propiedades y
Las características son importantes para aclarar el proceso de solución de datos indeterminados.
ecuaciones lineales.

Definición 7 :
Un subconjunto X Î Â n es convexo si y solo si, para todos los vectores x 1 , x 2 Î X
tenemos que (l x 1 + (1 - l) x 2 ) Î x y Î (0, 1).

Ejemplos de conjuntos convexos y no convexos:

Conjuntos no convexos

Conjuntos convexos

Definición 8 :
El punto extremo de un conjunto X se llama cualquier punto que no se puede expresar
por combinación lineal convexa de otros dos puntos distintos e igualmente
perteneciente a x .

La figura A.1 muestra que los puntos x 1 y x 3 se pueden obtener mediante una combinación lineal convexa
otros dos puntos del conjunto C . No ocurre lo mismo con un punto extremo.
La figura A.2 muestra que el punto x 2 solo se puede obtener mediante una combinación cónica lineal o similar, y
nunca para ambos.

Definición 9:
El encuentro de los puntos extremos de un conjunto convexo X se denomina perfil.

https://translate.googleusercontent.com/translate_f 398/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

Página 480

TEMAS EN ÁLGEBRA LINEAL Y CONVEXIDAD 475

Puntos no extremos
x1
x3

x2

Conjunto
Convexo C

FIGURA A.1 Puntos no extremos.

Combinación
Al fin

x3 Combinación
x5 Punto extremo Cónico
Conjunto
Convexo C
x4 x3
Punto extremo
x4 Conjunto
Convexo C

x5

FIGURA A.2 Generación de puntos extremos.

Cuando hacemos la asociación entre las variables de los sistemas lineales y los vectores, establecemos
una asociación directa entre el conjunto de soluciones de estos sistemas y las figuras geométricas generadas
por las combinaciones entre vectores en  n . De esta forma podemos demostrar que:

Teorema 1:
El conjunto de todas las soluciones viables en el modelo PL es un conjunto convexo.

Algunos de los puntos generados como soluciones viables pueden ser internos al conjunto, como los puntos
x 1 y x 2 de la Figura A.1. Estos puntos incluirán variables que son linealmente dependientes entre sí, un
ya que se pueden obtener por combinaciones lineales convexas de otros puntos de ese mismo conjunto
a. Otros serán externos. Entre los puntos externos, algunos serán extremos. Los puntos extremos
pueden obtenerse por combinación lineal convexa de otros puntos en el sistema, es decir, serán
correspondiente a las soluciones básicas del sistema. De hecho, esta correspondencia es bidireccional. En cada punto
temblor corresponde a una base y viceversa, de ahí el siguiente teorema:

Teorema 2:
Toda solución básica viable del sistema Ax = b es un punto extremo en el conjunto de soluciones
condiciones viables.

Página 481

476 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

¿Qué hace que las soluciones extremas de conjuntos convexos sean tan atractivas y fundamentales para nuestra
La discusión está asociada con su interpretación geométrica. Las numerosas soluciones de sistemas indeterminados
serían, en términos matemáticos, indistintos si no pudieran asociarse con una función externa

https://translate.googleusercontent.com/translate_f 399/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
licitación al sistema. De hecho, el problema de la programación matemática es no resolver sistemas para
ecuaciones indeterminadas, sino para optimizar una función sujeta a estos sistemas como restricciones. En cada
solución del sistema de restricciones la llamada función objetivo tendrá un cierto valor. Nuestro de-
es optimizarlo. Considerando una función objetiva sobre el universo de soluciones viables para la
ma Ax = b, se verifican los siguientes teoremas:

Teorema 3:
Si una función tiene un máximo o mínimo finito sobre un conjunto convexo,
por lo que al menos una solución óptima es un punto extremo de este conjunto convexo.

Teorema 4:
Si la función objetivo asume el máximo o el mínimo en más de un punto extremo,
entonces toma el mismo valor para cualquier combinación lineal convexa de estos puntos
extremos.

Con base en los resultados teóricos enumerados anteriormente, en caso de que la matriz de restricciones sea
consiste en ecuaciones lineales que forman una figura convexa y compacta, entonces la solución de la
El modelo de programación lineal se encontrará en los puntos extremos de esta figura.
Comprender el comportamiento de esta función en el universo de soluciones viables para sistemas.
restricciones, ahora discutiremos la influencia de la geometra de conjuntos convexos en la optimizacin de
ción de funciones lineales.

A.4.2 - Elementos geométricos

4 Variedad lineal

Un conjunto V se denomina variedad lineal , si " x 1 , x 2 Î V tiene que ser l x 1 + (1 - l) x 2 Î V para cualquier
o lÎÂ. Como ejemplos de variedades lineales podemos mencionar la recta y el plano. Cada variedad
near es un conjunto convexo. Cabe señalar que lo recíproco no es cierto.

4 Geometría en  n

• Hiperplano
Generalizando la noción de recta en  2 y plano en  3 tenemos el concepto de hiperplano ( H ) expresado a partir de
siguiente manera:

H = { x Î E n | a x = k }, donde a ¹ 0 y k Î Â

La figura A.3 representa de manera abstracta la formación de un hiperplano H a través de un punto x 0 Î


H y a.
Que es equivalente a:

H = { x Î E n | a ( x –x 0 ) = 0, x 0 Î H }

Página 482

TEMAS EN ÁLGEBRA LINEAL Y CONVEXIDAD 477

x0

FIGURA A.3 Hiperplano H.

• Semi-espacio
Un hiperplano divide el espacio vectorial en regiones llamadas semiespacio, de la siguiente manera:

H+={x|ax³k}¹0ya¹0

https://translate.googleusercontent.com/translate_f 400/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
H-={x|ax£k}¹0ya¹0
o entonces:

H + = { x | a ( x –x 0 ) ³ 0}

La figura A.4 aclara el concepto de semiespacio

α H

x0

FIGURA A.4 Semiespacio.

• Rayos y direcciones
Un rayo vectorial es una colección de puntos de la forma:

R = {x 0 + l d : l ³ 0} d ¹ 0

Dónde:

x 0 º vértice.
d dirección del rayo del vector.

La figura A.5 muestra la composición de un rayo para la dirección d

Página 483

478 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

x+
0
d

x0

re

FIGURA A.5 Radios y dirección.

• Dirección de un conjunto
Sea X un conjunto convexo y X = { x Î E n | Ax = b , x ³ 0}. Diremos que d Î E n es una dirección de X si:

" x 0 Î X , { x 0 + l d : d ³ 0} Í X

o sea:

( x+ λ re) ∀ ∈
Una
xX , λ≥ 0
X + λ re≥ 0

Conclusión inmediata: si un conjunto es limitado, no tiene dirección. La figura A.6 muestra una dirección d
en cualquier conjunto.

https://translate.googleusercontent.com/translate_f 401/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

x0

re

FIGURA A.6 Dirección en un conjunto.

• Direcciones extremas de un conjunto convexo


Una dirección d de X es extrema si no se puede representar como una combinación lineal positiva de dos
direcciones d 1 , d 2 ( d 1 ¹ kd 2 ) k Î R , de la X conjunto .
En un ejemplo numérico, sean los puntos (0, 1), (0, 2) y (4, 2) y las direcciones d 1 y d 2 como se muestra
Figura A.7. Entonces:

x 1 - 2 x 2 + l ( d 1 - 2 d 2 ) ³ -6 d 1 - 2d 2 ³0
x 1 - x 2 + l ( d 1 - d 2 ) ³ –2 d 1 - d 2 ³0

Página 484

TEMAS EN ÁLGEBRA LINEAL Y CONVEXIDAD 479

(4, 2)

d2
(0, 2)
d1

(0, 1)

FIGURA A.7 Direcciones extremas de un conjunto sin restricciones .

• Conjuntos poliédricos
Una intersección de un número finito de semiespacios cerrados se llama poliedro.

H 1 = {x tal que x 1 £ 10}


H 2 = {x tal que x 2 £ 20}
H 3 = {x tal que x 3 + x 2 £ 5}
H=H1ÇH2ÇH3

En general:

H = { x Ax £ b} es un poliedro b Î E n

Representación en función de los puntos extremos y las direcciones extremas de un conjunto convexo
Sea el poliedro:

–3 x 1 + x 2 £ –2
- x 1 + x 2£ 2
- x 1 + 2x 2 £ 8
–X 2 £ - 2

Para cualquier punto, interno al poliedro, por ejemplo (4, 3), tendremos:

(4, 3) = l 1 (4/3, 2) + l 2 (2, 4) + l (4, 6) + m 1 (1, 0) + m 2 (2, 1)

Lo que nos lleva a, por ejemplo:

https://translate.googleusercontent.com/translate_f 402/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
l 1 = l 2 = 1/2
l3=0
m 1 = 7/3 en 2 = 0

• Envoltura convexa
Sea S = { x 1 , x 2 , ..., x p , ...} Ì E n . La envolvente convexa de S , o Conv S , es el conjunto convexo más pequeño
teniendo S , es decir, es el conjunto de todas las combinaciones convexas de los elementos de S , es decir:

Conv S = { x | x = Σ U j x j donde Σ l j = 1 l j ³ 0, x j Î S }
j j

Página 485

480 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

La figura A.8 muestra una envolvente convexa de un conjunto de puntos no convexos.

Conv S

FIGURA A.8 Envoltura convexa.

4 Interpretación geométrica en el espacio de las instalaciones


Sea el siguiente problema de programación lineal:

( P ): Min { X a = CX tal que Ax = b, 0} ³ x donde A = [ a j ] es una matriz m ' n de las instalaciones a 1 , a 2 , ... , a n .
Ahora queremos debatir la viabilidad de ( P ), es decir, saber en qué condiciones no tendrá el problema
solución, o x = { x tal que A x. = b, x ³ 0} = Æ. Considere el cono generado por vectores de mercancías
ocupaciones:

norte

Y = { y tal que y = ∑ l j a j , l j ³ 0 j = 1, 2, ..., n }


j= 1

norte norte

Sea K = { y tal que y = ∑ ljaj,∑ l j = 1, l j ³ 0 j = 1, 2, ..., n }, la envolvente convexa de los puntos definidos
j= 1 j= 1

de las instalaciones el 1 , el 2 , ... , un n . norte

Si x Î X , es decir, X ¹ Æ, entonces tendremos Ax = b , x ³ 0 o ∑ x j una j = b , xj ³ 0 j = 1, 2, n }


j= 1

norte norte
Xj segundo
∑ losj = , con ξ = ∑ xj
ξ ξ
j= 1 j= 1

Xj segundo
Definición de λ j = , £ l j £ 1, con j = 1, 2 ... n , se sigue que ∈, es
K decir, si X ¹ Æ, entonces b Î R n debe
ξ ξ

pertenecen al cono generado por las amenidades, en caso contrario X = Æ según las Figuras A.9 y A.10.

K segundo

a2
b/ξ
a3

O
a1

X≠0

FIGURA A.9 Caso 1 - problema viable.

https://translate.googleusercontent.com/translate_f 403/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

Página 486

TEMAS EN ÁLGEBRA LINEAL Y CONVEXIDAD 481

segundo

a2
a3

O
a1

X=0

FIGURA A.10 Caso 2 - problema inviable.

4 Interpretación geométrica en el espacio de actividades

Sea el problema a continuación:

( P ) Maximizar x 0 = 2 x 1 + 4 x 2
sujeto a:
x1+x2£9
x1£4
x2£7
x 1 ³ 0, x 2 ³ 0

Se puede representar gráficamente como en la Figura A.11:

x2 x2

x1=4

7 C 7 C
x2=7
re re

segundo segundo

Y
X 0 = 2 +4X 1 X dos= 32

X 1 + X dos= 9

LA
LA

O 4 x1 O 4 x1

Poliedro de soluciones viables Solución

FIGURA A.11 Solución del problema (P).

Página 487

ANEXO B
https://translate.googleusercontent.com/translate_f 404/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

TEMAS DE TEORÍA
GRÁFICOS

B.1 - CONCEPTOS FUNDAMENTALES DE LA TEORÍA GRÁFICA

B.1.1 - Definiciones y notaciones básicas

El concepto de Grafo es extremadamente simple e incluso intuitivo. Podemos considerar que una gráfica
no es más que una representación gráfica de la interdependencia entre los elementos que se representan
para nosotros . Los elementos que se encuentran con la relación imaginada se unen simbólicamente a través de un
característica llamada borde . El modelo tiene una interpretación gráfica muy cómoda; sin embargo, tal
El diseño no tiene el poder, en diversas situaciones reales, de formalizar completa y satisfactoriamente la
estructura imaginada. Por este hecho, es necesario que un gráfico también se defina analíticamente.
Algunos autores brasileños que cubren el tema son Barbosa (1974, 1975) y Furtado (1973).

Definición de gráfico
Un gráfico es una estructura de abstracción que representa un conjunto de elementos definidos
nos nominó y su interdependencia o aristas.

Representación matemática
Denominando el conjunto de vértices de la estructura por N , y por M el conjunto de aristas
o conexiones entre los vértices, un gráfico se puede representar por: G = ( N, M ).

Los términos nodos y vértices generalmente se usan indistintamente.

dos

dos
1 1 segundo

F C
4
7 y 4
7
3 3

los re

6
5 5

Gráfico 1 Gráfico 2

FIGURA B.1 Ejemplo de gráficos.

Página 488

484 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

El conjunto N = {1, 2, ..., n } estará compuesto por los n nodos del gráfico, y M = {1, 2, ..., m } contendrá los m bordes. SUS
es común el uso de la variable x i , i = 1, 2, ..., n para la representación de nodos. En el gráfico de la Figura B.1,
N = {1, 2, 3, 4, 5, 7} y M = {a, b, c, d, e, f}.
El concepto de grafo se puede generalizar al caso en el que no se constituye la relación entre nodos.
con solo un par de nodos o vértices. Los hipergrafos son modelos que permiten la representacion
bordes que abarcan más de dos nodos.

Definición de Hypergraph
A hypergraph H es un par H = ( N, x ) donde n representa el conjunto de nodos de H y x es
una familia de piezas C .

En la Figura B.2 tenemos N = {1, 2, 3, 4, 5, 6} yx = {(1, 2, 3); (3, 4); (4, 5, 6)}.

dos

https://translate.googleusercontent.com/translate_f 405/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
6

3
5

FIGURA B.2 Ejemplo de hipergrama.

Como podemos ver en las figuras de los ejemplos, un gráfico puede contener información asociada
a sus vértices y aristas. Definimos esta información como etiquetas o pesos . Formalmente tenemos:

Definición de gráfico ponderado


Un gráfico G = ( N, M ) se pondera si hay valores numéricos asociados con sus bordes
o nosotros.

Definición de gráfico etiquetado


Un gráfico G = ( N, M ) se etiqueta si hay asignaciones asociadas con sus nodos (ambos números
como alfabético).

segundo
segundo LA 3
LA

dos 3 1
5
re 1 7
re C
C
Y Y
1
5 4

F
F
GRAMO

Gráfico etiquetado Gráfico ponderado

FIGURA B.3 Gráficos ponderados y etiquetados.

Finalmente, un gráfico puede tener más de un borde distinto que conecta dos vértices.

Página 489

TEMAS DE TEORÍA DE GRÁFICOS 485

Definición de Multigraph
Un gráfico G = ( N, M ) es un gráfico múltiple si hay más de un borde que conecta el mismo
par de vértices.

dos 4

Multigraph

FIGURA B.4 Multigraph.

Algunos gráficos destacan por sus peculiaridades en sus estructuras. Estas peculiaridades pueden
ser muy útil en la representación de situaciones reales o en el uso de algoritmos de solución para
problemas de gráficos. Entre ellos destacamos:

4 Gráfico dirigido

Definición de gráfico dirigido


Se dice que un gráfico está dirigido cuando la dirección de las conexiones entre los vértices es importante.
tú. En este caso, las aristas suelen denominarse arcos .

Representación matemática
Denotando el conjunto de vértices de la estructura por N , y por M el conjunto de pares
del producto cartesiano n X n de los enlaces existentes en G , un gráfico orientado
do también está representado por G = ( N, M ) .

https://translate.googleusercontent.com/translate_f 406/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

dos

dos
1 1 segundo

F C
4
7 y 4
7
3 3

los re

6
5 5

Gráfico 1 Gráfico 2

FIGURA B.5 Gráficos guiados.

Los gráficos aquí llamados dirigidos también se denominan orientados . En el presente


trabajo usaremos la denominación G = ( N , A ) para representar gráficas no dirigidas, y G = ( V, E )
para los destinatarios.

Página 490

486 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

4 Gráfico bipartito
Otra clase importante se llama gráficos bipartitos . Este tipo de estructura puede representar
situaciones como las que se generan al asignar personas a tareas, herramientas a máquinas, etc.

Definición de gráfico bipartito


Se dice que un gráfico G es bipartito cuando su conjunto de nodos, N , se puede dividir en dos
establece N 1 y N 2 de modo que N 1 Ç N 2 = Æ y N 1 È N 2 = N y solo hay aristas en G li-
conectando algún nodo N 1 con algún nodo N 2 y viceversa.

1 dos

6 5

N1
N2

FIGURA B. 6 Gráfico bipartito.

4 Gráfico completo

Definición de gráfico completo


Se dice que un gráfico G está completo si hay al menos un enlace asociado con cada par de versiones.
tices. En el caso no guiado, esto significa exactamente una llamada.
Los gráficos completos no orientados también se denominan clics y se indican
como K n , donde n representa el número de nodos en el gráfico completo.
Por analogía, los gráficos bipartitos completos se indican mediante K pq , siendo p y q cardinales.
de las dos particiones del gráfico.

1 dos

1 dos

3
3 4

https://translate.googleusercontent.com/translate_f 407/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

K4

5
6
K 33

FIGURA B.7 Gráficos completos.

Página 491

TEMAS DE TEORÍA DE GRÁFICOS 487

4 Gráfico regular

Definición de gráfico regular


El grado de un vértice de una gráfica es el número de aristas incidentes en el vértice.
Se dice que una gráfica G es regular de grado r si cada vértice en G tiene grado r .
(*) El grado más alto de G se llama D ( G ).

segundo
LA

re
C
Y

F
GRAMO

FIGURA B.8 Gráfico regular.

Algunos autores distinguen entre el concepto de titulación para grafos orientados y no orientados.
En el caso de gráficos orientados, el grado se puede descomponer en dos partes: el grado interno o el número
número de arcos que llegan al nodo y el grado externo, o el número de arcos que salen del nodo. Estos paquetes
el grado del nudo se llama semigrau. En el caso de grafos dirigidos, la suma del semigrau incluyó
ter d ( i ) + y exterior d ( i ) - conduce al valor final del grado del nodo. La expresión para obtener el título en
gráficos orientados es:

d(i)=½d(i)-½+½d(i)+½

En el caso de la Figura B.9, podemos calcular el grado del vértice 4 de la siguiente manera:

d (4) = ½ d (4) - ½ + ½ d (4) + ½ =

=½-2½+½+2½=4

6 3

dos
7 5

FIGURA B.9 Grado de vértices en gráficas dirigidas.

4 árbol

Definición de árbol
Una gráfica se llama árbol si está conectada y no tiene ciclos.

https://translate.googleusercontent.com/translate_f 408/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

Página 492

488 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

1 dos

4 5

Árbol

FIGURA B.10 Un árbol.

4 Gráfico plano

Un tipo de gráfico muy importante para representar problemas de topología plana es el llamado gráfico
planar . Redes de carreteras, mapas, circuitos electrónicos, varios tipos de diseño , etc., cuando se representan
de gráficos, terminan configurando, en la mayoría de ocasiones, gráficos planos.

Definición de gráfico plano


Se dice que un gráfico G es plano cuando su esquema admite al menos una representación
plano, es decir, cuando se dibuja en un plano dos bordes se tocan, en el
máximo, en algún extremo.

1 dos 1 dos

3 4 3

(a) esquema (a) esquema


no te deslices a volar

FIGURA B.11 Gráfica plana.

4 Red

Definimos una red R = ( E, V, F ) como un gráfico dirigido G = ( E , V ) atravesado por un flujo F = { f 1,


f 2 , ... f m } sus m bordes circulantes . En una red, normalmente se destacan dos nodos: el nodo fuente y
el nodo sumidero . Cualquier tipo de red se puede reducir a una red con un solo nodo fuente y un nodo
hundirse, incluso si está configurado artificialmente. Los arcos de la red pueden tener capacidades limitadas
relativo al flujo. Estos mismos arcos pueden imponer costos al flujo del flujo. En cierto sentido
En general, una red se puede representar como en la Figura B.12. Los nodos están representados por círculos
vasos y arcos por flechas. La dirección convencional del flujo está indicada por las flechas (el gráfico de
el trato está dirigido).
Dónde:

l ij º límite inferior (o mínimo) para el flujo en el arco ij .


L ij º límite superior (o máximo) para el flujo en el arco ij .
c ij º costo de circulación de la unidad de flujo en arco ij .

Página 493

TEMAS DE TEORÍA DE GRÁFICOS 489

Nosotros
Intermediarios

( l,C
ij ij , ) L ij
En el En el

https://translate.googleusercontent.com/translate_f 409/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
Fuente Lavabo

Arco de equilibrio

FIGURA B.12 Representación típica de una red.

La figura B.13 representa una red valiosa:

dos (0, 1, 10) 3

(0, 1, 8) (1, 1, 5)

1 (1, 2, 10) 6

4 5

(2, 4, 5) (0, 1, 10) (2, 3, 10)

(0, 0, +)?

FIGURA B.13 Red valorada .

B.1.2 - Otros conceptos básicos

Uno de los puntos más fundamentalmente asociados con la noción de gráficos es el concepto de conexión entre
tices. De hecho, el modelo es básicamente una estructura adecuada para representar formas topológicas
de conexión. Es, por tanto, fundamental aclarar cómo los vértices pueden establecer enlaces o enlaces
ciones a través de los llamados aristas o arcos. En este sentido, existen dos formas específicas de encontrar
tender vecindad entre nodos y bordes, uno para el caso de gráficos dirigidos y otro para gráficos no diferentes
recioned.

4 Vertex Vecindario

Definición de Vertex Vecindario


Decimos que dos vértices x i y x j son vecinos o adyacentes cuando hay una arista
conectando x i con x j o viceversa.
(*) La noción de vecindad está asociada a grafos no orientados.

Página 494

490 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

1 dos 1 dos

3 3

4 5 4 5

Gráfico no dirigido Gráfico dirigido

FIGURA B.14 Vecinos en el vértice 3.

4 sucesores y predecesores de un vértice

Como el concepto de vecino para el caso de grafos no dirigidos puede resultar insuficiente en el establecimiento
cimentar la comprensión de ciertas relaciones, para estos gráficos introducen el concepto de su-
cesor y predecesor .

Definición de sucesor y predecesor de un vértice


Decimos que un vértice x j es un sucesor de x i si hay al menos un arco que conecta x i con x j .

https://translate.googleusercontent.com/translate_f 410/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
(*) En el caso de la relación inversa diremos que el vértice x j es antecesor de x i .

Predecesor de 3

1 dos

4 5

Sucesores de 3

FIGURA B.15 Predecesores y sucesores.

+ -
Lo llamamos () x el conjunto de todos los sucesores de x y porΓ () x el de los predecesores. En el
+ -
ejemplo en la Figura B.15 Γ (3) = 4.5 y Γ (3) = 1.

4 cierres transitivos
Podemos generalizar el concepto de vecindario considerando la estructura de proximidad mediante
una idea recursiva. Los vecinos de los vecinos y así sucesivamente. En el modelo gráfico, este tipo de
La formación puede ser útil para representar fenómenos de propagación de información o capacidad.
de comunicación. Un cierre transitivo no es más que un despliegue de niveles de vecindario
que destaca el fenómeno de la accesibilidad.

Definición de cierre transitivo


Lo llamaremos cierre transitivo directo del vértice x , Γsegundo
+ ()x ( x ), el conjunto de vértices

que se puede alcanzar, partiendo de x , a través de sucesivas relaciones de vecindad.

(*) En el caso inverso de los vértices que pueden llegar a x por sucesivas relaciones vecinas
Definiremos el cierre transitivo inverso .

Página 495

TEMAS DE TEORÍA DE GRÁFICOS 491

11

dos 6
12

13

1 8

4 10

FIGURA B.16 Cierre transitivo directo de x.

En la Figura B.16, podemos ver que el primer nivel de vecindad del vértice 1 son los nodos 3 y 4.
En un segundo nivel encontramos más nodos 7, 8, 9 y 10. También encontramos que estos últimos versos
Las notas también pertenecen al tercer nivel de vecindad del nodo 2. Así:

Γsegundo
+1 (1) - relación de vecindad hasta el nivel 1 (lejos del vértice 1 por hasta un borde o arco) = {3, 4}

Γsegundo
+2 (1) - relación de vecindad hasta el nivel 2 (lejos del vértice 1 por hasta dos aristas o arcos) = Γsegundo
+1 (1)

È {7, 8, 9, 10} = {3, 4} È {7, 8, 9, 10} = {3, 4, 7, 8, 9, 10}

Γsegundo
+3 (6) = {2, 11, 12, 13} È {5, 1} È {3, 4} = {1, 2, 3, 4, 5, 11, 12, 13} etc.

Γsegundo
–3 (3) = {1} È {2} È {6} = {1, 2, 6}

Algunos autores llaman a los cierres directos como cierres positivos y al inversor como negativos .

https://translate.googleusercontent.com/translate_f 411/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

4 cadena de bordes
Las trayectorias dentro del modelo gráfico son características muy importantes. Las cadenas de borde
se forman necesariamente a través de caminos sobre los nodos del gráfico.

Definición de cadena de borde


Decimos que una cadena de aristas es una secuencia de aristas en la que todos se distinguen
(No repetido).

tú 1
tú 5 u2
6 3 5
4

tú 3
tú 4

dos

FIGURA B.17 Cadena de borde .

Página 496

492 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

4 camino

Las cadenas de borde no tienen ningún compromiso con los nodos visitados. Si una secuencia de
Los bordes, además de ser distintos, no repiten los nodos que llamaremos ruta.

Definición de ruta
Una ruta es una secuencia de bordes en la que todos los nodos visitados son diferentes.

tú 1
u2

6 3 5
4

tú 3
tú 4

dos

FIGURA B.18 Una trayectoria 6-5.

4 Longitud de un camino

Definición de la longitud de un camino


En un gráfico G no ponderado, la longitud de una ruta es el número de aristas
de esa manera.
En un gráfico G ponderado, la longitud de una ruta es la suma de los pesos de la
bordes de ese camino.

1 1

1 1
1

4 1 4 1
6 3 6 3
5
dos 1 dos 5
7 5 7 5

Longitud del camino 3 Ruta de longitud 11

FIGURA B.19 Ejemplo de trayectorias.

4 ciclo o circuito
Cuando las cadenas se repiten, por alguna razón, los nodos visitados se forma un ciclo.

https://translate.googleusercontent.com/translate_f 412/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
Definición de ciclo
En un gráfico G , un ciclo es una cadena cerrada, es decir, comienza y termina en una
mismo nudo.

Definición de circuito
Cuando el grafo G está orientado, algunos autores piden el circuito siguiente:
pintura de arco que repite el último nodo visitado.

Página 497

TEMAS DE TEORÍA DE GRÁFICOS 493

1 dos 1 dos

3 3

4 5 4 5

Gráfico 1 Gráfico 2

FIGURA B.20 Gráficos con ciclos.

4 Ciclos y circuitos especiales

Definición de ciclo euleriano


Es un ciclo que pasa por todas las aristas del gráfico G.

Definición del circuito hamiltoniano


Es un circuito que pasa por todos los nodos G.
(*) Ruta es un nombre genérico para cualquier ruta sobre nodos y bordes
de L .

1 dos 1 dos

6 3 6 3

5 4 5 4

Ruta Hamiltoniana Ruta Euleriana

FIGURA B.21 Rutas especiales.

4 Conectividad

Definición de Grafo Conexo


G está conectado si por cada par de vértices hay al menos una cadena entre ellos.

1 dos 1 dos

6 3 6 3

5 4 5 4

Gráfico conectado Gráfico desconectado

FIGURA B.22 Conectividad.

B.2 - REPRESENTACIÓN DEL MODELO

Además de la representación geométrica, un gráfico puede ser representado por al menos otros cuatro
diferentes caminos:

https://translate.googleusercontent.com/translate_f 413/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

Página 498

494 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

4 Representación a través de la matriz de adyacencia


Es una representación muy simple. La gráfica se expresa en una matriz A = [ a ij ] mediante la
nosotros y sus relaciones de vecindad. Las filas y columnas de la matriz están asociadas con los nodos del gráfico.
La matriz es normalmente booleana, es decir, sus elementos son 0 y 1. Cuando hay bordes paralelos,
el valor de a ij ahora puede representar el número de arcos paralelos.

Definición de matriz de adyacencia


Una matriz n ´ n A = [ a ij ] se llama como la adyacencia del gráfico G = ( N , M ) si:

a ij = 1 «$ Conexión ( i , j )
a ij = 0 «/ ∃ Conexión ( i , j )

dos
1
123456
1 ⎡ 000100 ⎤
dos⎢ 001100 ⎥ 4
3
3 ⎢ 010100 ⎥
4 111011
⎢ ⎥
5 000101
6 ⎣⎢ 000110 ⎥⎦
6
Matriz de adyacencia 5
Gráfico G

FIGURA B.23 matriz de adyacencia del gráfico G.

4 Representación a través de la matriz de incidencia


En este caso, las columnas de la matriz corresponden a los bordes del gráfico y las líneas a los nodos.

Definición de matriz de incidencia


Una matriz n ' m A = [ a ij ] se refiere a como la incidencia gráfico G = ( N , M ) si
para cada arco j que conecta el nodo k al nodo l tenemos:

a ij = +1 « i = k
a ij = -1 'i = l (para un gráfico dirigido, pero a ij = 1)
a ij = 0 en otros casos

1 dos

tu1 tudos tu3 tu4 tú 1 u2

1 ⎡ 1 0 00 ⎤
dos⎢ 0 1 00 ⎥ tú 3 3 tú 4
3 ⎢ -1 -11 1 ⎥
4 0 0 -10 4 5
⎢ ⎥
5 ⎣ 0 0 0 - 1⎦
Gráfico dirigido

FIGURA B.24 Matriz de incidencia del gráfico dirigido.

Página 499

TEMAS DE TEORÍA DE GRÁFICOS 495

1 dos
uuuu
1 dos 3 4
tú 1 u2
1 ⎡ 1000 ⎤
dos ⎢ 0100 ⎥
tú 3 3 tú 4
3 ⎢ 1111 ⎥
4 0010
⎢ ⎥⎦
5 ⎣ 0001 4 5

Gráfico no dirigido

FIGURA B.25 Matriz gráfica de incidencia no dirigida.

https://translate.googleusercontent.com/translate_f 414/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

4 Representación a través de listas encadenadas


La representación usando listas enlazadas es extremadamente conveniente para una eficiencia compleja.
putativo de algunos algoritmos, así como para ahorrar memoria de almacenamiento. LA
La representación más tradicional mediante listas enlazadas tiene una configuración basada en vértices.
gráfico y en sus proximidades. El vector List_1 tiene una longitud igual al número de nodos
gráfico, es decir, n posiciones. La estructura ocupa, para gráficos no dirigidos, 2 n más
ubicaciones de memoria, ya que los vecindarios son recíprocos.

4 Representación vectorial

Esta representación es útil en el caso de gráficos dispersos, es decir, con pocos bordes. Son usados
dos vectores para resumir la información del vecindario. El vector SX registra el número de vecinos en el
nodo correspondiente a la posición x , mientras que el vector NX los enumera. La figura B.27 aclara la estructura de
representación. La representación vectorial simula la representación mediante listas vinculadas de nodos.

List_1

3 1 dos 4 5

1 dos 3

1 dos

dos 1 3
tú 1 u2

tú 3 tú 4
4 3 3

4 5

5 3
Gráfico no dirigido

Lista enlazada

FIGURA B.26 Representación por listas enlazadas de nodos.

B.3 - EL PROBLEMA DE COLOREAR

El problema de la coloración es uno de los más conocidos en teoría de grafos. Colorear una gráfica G = ( N , A ) es
asigne colores a sus vértices para que los vértices adyacentes reciban colores distintos. Simplemente
colorear una gráfica es una tarea trivial, ya que podemos imaginar distribuir un color a cada vértice. O
El problema de colorear realmente surge cuando queremos colorear el gráfico usando el número más pequeño
tantos colores como sea posible.

Página 500

496 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

1 dos
Índices 1 dos 3 4 5

tú 1 u2
SX dos dos 4 1 1
tú 3 tú 4
3

NX dos 3 1 3 1 dos 4 5 1 dos


4 5

Gráfico no dirigido

FIGURA B.27 Representación vectorial.

La menor cantidad de colores que se pueden usar para colorear un gráfico se llamará
número cromática o x ( G ). Distinguiendo los colores por números, la Figura B.28 representa un
3-coloración de gráfico G .

dos dos

https://translate.googleusercontent.com/translate_f 415/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
3

FIGURA B.28 3 coloraciones de G.

Cuando la gráfica es plana, se sabe que x ( G ) £ 4 (prueba exhaustiva en Appel y Haken [1989]). A favor-
El problema de colorear en gráficas planas se llama El problema de los cuatro colores y tiene una larga historia.
tradición en la teoría de grafos (ver Saaty y Kainen [1977] para una visión amplia del tema).
El número cromático está relacionado con otros invariantes en un gráfico.
Dado un gráfico G y S Í N , S se denomina conjunto independiente si " i , j Î S , ( i , j ) Ï A. Un conjunto
independiente es máximo si " S ' Ì N , | S' | <| S. La cardinalidad del máximo S se llama el número de
independencia de G , o número de estabilidad o a ( G ). Como resultado inmediato, tenemos vértices colocados
con el mismo color forman un conjunto independiente y que x ( G ) es el menor número de conjuntos
independiente de los vértices donde G se puede dividir. De esa forma podemos demostrar que:

n-a£x£n-a+1

Un subconjunto N ¢ Í N de tamaño t es un t-click si induce un subgráfico completo. Un clic


que es máxima si no es un subgrafo de ningún otro. Un clic se dice como máximo si no hay
otro clic en G con cardinalidad mayor que él. La cardinalidad del clic máximo en G se denota
dado por w ( G ). Las gráficas donde x ( G ) = w ( G ) se denominan débilmente perfectas . Cuando G y todos los sub-
El gráfico inducido G ' de G tiene la propiedad anterior, por lo que el gráfico se llamará perfecto .
El concepto de coloración se puede extender a los bordes. Una k- coloración de los bordes de G es una atribución
agregar k colores a estos bordes para que dos bordes incidentes en el mismo vértice reciban colores
diferente. El número mínimo de colores capaces de colorear los bordes de un gráfico G que cumpla con los requisitos.
arriba se llama el índice cromático o x 1 ( G ). Algunos resultados son inmediatos para el índice croata
matic:
En el caso de gráficos divididos x 1 ( G ) ³ D (G).
En el caso general x 1 ( G ) = D ( G ) o x 1 ( G ) = D ( G ) + 1 (teorema de Vizing).

Página 501

TEMAS DE TEORÍA DE GRÁFICOS 497

Podemos colorear un gráfico para que a los vértices y bordes se les asignen colores para que
dos elementos incidentes o adyacentes reciben colores diferentes. El número mínimo de colores necesarios
Esta tarea se llama el número cromática total de o x 2 ( G ).
Colorea los vértices de una gráfica con módulo entero n de modo que los vértices adyacentes sean
colores asignados con la mayor distancia posible es la generalización propuesta por Vince (1989). En ese caso, el
La coloración clásica sería un caso particular de esta teoría cuando la distancia considerada es igual a 1.
Teniendo en cuenta k y d números enteros positivos y k ³ 2 d . A ( k , d ) -color de G es un mapeo c : N
® Z k , de modo que para "( x i , x j ) Î A , | c ( x 1 ) - c ( x 2 ) | k ³ d , donde | x | k = Mínimo {| x |, k - | x |}. La figura
B.29 ejemplifica un color (4, 2), ( d = 2 y k = 4). En este caso, el conjunto Z 4 = {0, 1, 2, 3}.

0 3 1

dos 0 3

FIGURA B.29 (4.2) -colorear.

El invariante en este caso se llama número cromático en estrella o X * ( G ), con el k / d más pequeño para el cual G
admite un color ( k, d ).
Otro reciente extensión de los problemas de tinción gráfico es T-tinción . Esta forma de
La tinción fue presentada por Hale (1980) modelando el problema de asignar
comunicación. Considerando que en una determinada región existen n transmisores, x 1 , x 2 , ... , x n que se desean
asignar frecuencias f ( x ) en las que puedan operar. Para este conjunto de transmisores se define
un gráfico de interferencia G = ( N , A ), donde N = { x 1 , x 2 , ... , x n } y los bordes ( x i , x j ) Î A representan el
hecho de que existe interferencia entre los transmisores x i y x j . Un conjunto T de enteros positivos representa
las distancias prohibidas entre pares de transmisores. Se supone que pertenece a 0 T . La restricción de
distancias mínimas que aseguran la eliminación de interferencias entre un par x i , x j de transmisores es
definido por la siguiente expresión:

(x1,xj)ÎAÞ|f(x1)-f(x2)|ÏT

https://translate.googleusercontent.com/translate_f 416/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
Así,
rior. La la coloración
figura T de una
B.30 muestra una coloración
gráfica se define
T paracomo una1,función
T = {0, 2} en unf :cierto
N ® Àgráfico
que satisface la expresión
de interferencia G. anterior

1 4 1

4 7 4

FIGURA B.30 Un color T válido.

El número cromático T se define como el orden más bajo de un color T , señalado por
X t (G). El orden de la coloración en T representará el número de canales abiertos o el espacio de frecuencia
no utilizado. Podemos interpretar que en la red de comunicación del gráfico de la Figura B.30,
canales (UHF) 1, 4 y 7. En este problema, un segundo invariante sigue siendo importante, el T-span . De hecho,
En este tipo de situaciones existe interés en minimizar el número de canales (frecuencias) utilizados y la
difundiendo estas frecuencias en la banda de comunicación. El T-span de una asignación dada se denota
por sp T ( f ). La dispersión más pequeña entre todas las posibles en G se denota por sp T ( G ). Si se determina
digamos que T = {0, 1, 4, 5} entonces la Figura B.31 muestra que el diferencial óptimo no está asociado con

Página 502

498 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

mejor orden de tinción T. El orden óptimo de tinción T utiliza tres canales (1, 4 y 7) pero su
Esto compromete una gama de siete canales. Por otro lado, si se utilizan los canales 1, 2, 3, 4,
5, los canales 6 y 7 no se verán afectados por el rango de compromiso.

1 4 5 dos

7 4 3 4

1 1
T- Coloración óptima Gran palmo

FIGURA B.31 Orden x intervalo en tinción T.

https://translate.googleusercontent.com/translate_f 417/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

Página 503

ANEXO
TEMAS EN
COMPLEJIDAD
DE ALGORITMOS

C.1 - CONCEPTOS EN ALGORITMOS

C.1.1 - Concepto de algoritmo


El diccionario de lengua portuguesa editado por el Ministerio de Educación define un algoritmo (término
como un proceso de cálculo formal . La ejecución de un algoritmo no debe incluir decisiones subjetivas
tivas o el uso de la intuición y la creatividad. Cuando usamos esa palabra estamos, estrictamente , implícitos
aceptar pensar en términos computacionales. En ese caso, sería aceptable incluir dentro de la definición
definición de algoritmo los métodos sistemáticos utilizados para resolver problemas. Métodos para
realizar operaciones de suma, multiplicación, raíz, etc. podría decirse que cumplen los requisitos de la
definición de algoritmo. El concepto no es tan simple como parece inicialmente. Coermen y col .
(1991) define un algoritmo como una secuencia bien definida de procedimientos computacionales ( pasos ) que conducen
una entrada para convertirla en una salida . La idea de asociar el concepto de algoritmo al
El procesamiento de una entrada traducible en términos computacionales implica la necesidad de
definición formal de un alfabeto para codificar esa entrada / salida, así como las estructuras de
transformación. Dentro de este enfoque, también podemos pensar en el algoritmo como una especie de función de proceso.
en el alfabeto de entrada / salida. En este caso, diríamos que un algoritmo es la descripción del
o evaluación sistemática de esta función .
La asociación del término con la resolución de problemas computable puede traer algunas confusiones que
vale la pena aclararlo. El proceso de resolución de cualquier problema puede incluir pasos como: "agregar
azúcar al gusto ”, que no es una decisión objetiva. La dificultad aquí refuerza la necesidad de
Tenga en cuenta que no todos los tipos de problemas admiten soluciones algorítmicas,
siendo eventualmente muy importante: ser o no ser, esa es la cuestión ... Varios autores han
nombrar problemas que no pueden resolverse mediante procesos formales de cálculo
como problemas indecidibles. En este caso, los algoritmos son estrategias para resolver problemas.
pero decidible, es decir, para problemas cuya solución admite un proceso formal de acciones. Tema 5
de esta parte del anexo detalla tres posibles tipos de problemas decidibles: problemas de decisión
son, ubicación y optimización.

Página 504
https://translate.googleusercontent.com/translate_f 418/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

500 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

C.1.2 - Corrección de algoritmos

La verificación del buen funcionamiento de un algoritmo es uno de los puntos más importantes dentro de
este tema. A menudo, un algoritmo es capaz de resolver solo un cierto conjunto de casos de
un problema. Estos casos específicos se denominan instancias del problema. Para garantizar el
La corrección de un algoritmo en la solución de un determinado problema es necesaria para que podamos garantizar su
correcto en todos los casos posibles. Solo mostrar un caso de falla es suficiente para
mostrar su ineficacia. Por otro lado, para probar su corrección, normalmente será necesario
medidas extenuantes. Una forma de reducir la dificultad de probar la exactitud de un algoritmo es
establecimiento de dominios definitorios , es decir, regiones o límites en los que podemos garantizar que el
las tancias se resuelven correctamente.

C.1.3 - Eficiencia de algoritmos


Ser capaz de establecer un conjunto de instrucciones que resuelva un determinado problema decidible no significa
que hemos encontrado una estrategia razonable, sea cual sea nuestro punto de vista. O
El principal objetivo de un algoritmo es resolver el problema de forma rápida y económica. El término
Fast se refiere a la realidad del final práctico del algoritmo. El término económico responde a la realidad
limitación de recursos humanos o computacionales. Analizar un algoritmo significa predecir recursos
que el algoritmo requerirá cuando se ejecute . Como recursos entendemos la memoria , el tiempo
del procesamiento , la naturaleza de las operaciones, etc.

C.2 - NOTACIÓN O

C.2.1 - Notación asintótica

Hacer que À y  representen el conjunto de números naturales y el conjunto de números reales, respectivamente
el conjunto  * que representa el conjunto de reales no negativos y  + el conjunto de reales estrictamente
positivo, podemos definir:

f: A ® Â * y t: À ® Â * cualquiera de las funciones

entonces podemos establecer la siguiente notación que relaciona las funciones t ( n ) yf ( n ), n Î À:

O ( f ( n )) = {t: À ® Â * | ($ c Î Â + ) ($ n 0 Î À) (" n ³ n 0 ) [ t ( n ) £ cf ( n )]}

La notación O se llama orden de f ( n ) y representa el conjunto de todas las funciones t ( n ) limitadas


superiormente por un múltiplo positivo de f ( n ), considerando n un suficientemente
genial para que ocurra ese efecto. Diremos, por tanto, que t ( n ) es del orden de f ( n ) si t ( n ) Î O ( f ( n )).
Esta notación es extremadamente importante para el análisis de algoritmos, especialmente para expresar
su complejidad de ejecución en función del tiempo. Entonces, si queremos evaluar la función de tiempo
para la ejecución de un algoritmo, en el que la variable de entrada es, por ejemplo, la longitud del
entrada de datos, O ( f ( n )) significa que el tiempo empleado por un algoritmo para lograr su resultado es
proporcional af ( n ). La notación O tiene como objetivo proporcionar una base matemática para la evaluación.
eficiencia. Cuando usamos la notación O para representar el comportamiento de una función
renunciar a su valor exacto y centrarse en el orden de su grandeza, o su
comportamiento asintótico, de ahí el nombre de la notación. Esta simplificación tiene un efecto extraordinario para
cálculo de la eficiencia del algoritmo, sin dejar, sin embargo, de ser un indicador muy aproximado de
su comportamiento para valores suficientemente grandes de n . Si f 1 ( n ) = n 4 - 2 n 2 - 20 n y n es suficiente
por grande que sea, el término en n 4 dominará en gran medida el resultado final de la expresión. De Verdad,
si pensamos en f 2 ( n ) = n 4 + 2 n 2 + 20 n , para n = 1,000,000, por ejemplo, los valores porcentuales de
f 1 ( n ) y f 2 ( n ) estarán sorprendentemente cerca. Entonces, si hay una función g ( n ) tal que f ( n ) £ c

Página 505

TEMAS DE COMPLEJIDAD DE ALGORITMOS 501

´ g ( n ) para una constante c > 0, diremos que O ( f ( n )) = O ( g ( n ). En el ejemplo de la f ( n ) anterior, para un


valor conveniente de la constante c el término en n 4 sería dominante y podríamos hacer g ( n ) = n 4 . En eso
caso O (n 4–2 n 2 - 20 n ) = O ( n 4 + 2 n 2 + 20 n ) = O ( n 4 ) .

C.2.2 - Notación asintótica con varios parámetros

Como se aclaró en el ítem anterior, la notación asintótica O tiene un objetivo muy claro dentro del cálculo
eficiencia de los algoritmos. En muchos casos, el tiempo de ejecución de un algoritmo depende simultáneamente

https://translate.googleusercontent.com/translate_f 419/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
más de unde
búsqueda parámetro. Este esn el
vértices (valor ) ycaso, por(valor
aristas ejemplo,
m ). de
Enlos
estealgoritmos de gráficos que involucran
caso, haciendo:

f: À ´ À ® Â * una función arbitraria

entonces podemos establecer la siguiente notación:

O ( f ( m , n ) = { t : À´À | ($ c Î Â + ) ($ m 0 , n 0 Î À) (" n ³ m 0 ) (" m ³ m 0 )

[ t ( m , n ) £ cf ( m , n ))]}

C.2.3 - Notación asintótica condicional


Algunos algoritmos se analizan fácilmente si consideramos instancias que satisfacen ciertos requisitos.
diciones. Una de estas condiciones más comunes es la potencia de 2. La notación asintótica condicional cumple
este tipo de necesidad para el análisis de la eficiencia de los algoritmos. Definiendo B como una constante
booleano (falso, verdadero) y:

f: À ® Â * y P: À ® B dos funciones cualesquiera

entonces podemos establecer la siguiente notación que relaciona las funciones P ( n ) yf ( n ), n Î À:

O ( f ( n ) | P ( n ) = { t : À ® Â * | ($ c Î Â + ) ($ n 0 Î À) (" n ³ n 0 ) [ P ( n ) Þ t ( n ) £ cf ( n )]}

Leemos la notación anterior como el orden f ( n ) cuando P ( n ), y corresponde al conjunto de todas las funciones
ciones t ( n ) en sentido superior limitada por un múltiplo real positivo de f ( n ), donde n es suficientemente gran-
de y P ( n ) ocurre.

C.3 - COMPLEJIDAD DE ALGORITMOS - CONCEPTOS BÁSICOS


Estimar la complejidad de un algoritmo es una tarea crucial. La forma de medir empíricamente la
el rendimiento de un algoritmo se enfrenta a dificultades que van desde el equipo y el compilador
empleado a las habilidades del programador. Desde finales de la dcada de 1960, un modelo interesante
Se ha adoptado un modelo de análisis. Un paso importante en este modelo fue proponer un modelo
para la máquina computacional, facilitando enormemente el análisis del cálculo de la
ciones. El modelo RAM ( Random Access Machine ) se muestra en la Figura C.1.
El modelo RAM simula el funcionamiento de una computadora elemental. La memoria es
los datos del programa. Un programa consta de un conjunto de instrucciones o comandos
que implementa el algoritmo. El modelo considera que cada instrucción tendré un tiempo asociado
t ( I ) para ser operado en RAM. Entonces, si vamos a ejecutar un algoritmo codificado en un
programa P , con una determinada entrada fija, r 1 tipo I 1 instrucciones , r 2 tipo instrucciones se procesan
R 2 , por r m instrucciones de tipo I m . En este caso, el tiempo para ejecutar el programa P vendrá dado por:

Página 506

502 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

metro (05)
∑ r j t ( yo j )
j= 1

unidad
en
Memoria

unidad Unidad de unidad


en Control y en
Entrada Procesando Salida

FIGURA C.1 Modelo RAM.

En definitiva, en el modelo RAM se podría resolver el estudio de la complejidad de un algoritmo


a través de la evaluación sumatoria (05). Simplificar el problema de calcular el tiempo de duración.
cálculo de tipo I instrucciones j , j = 1, ..., m , t ( I ) = 1 se considera para cualquier I de instrucciones .
Esta simplificación es perfectamente consistente con el uso de la notación O ( . ) Para evaluar la complejidad de

https://translate.googleusercontent.com/translate_f 420/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
tiempo computacional, ya que las relaciones entre la duración de los diferentes tipos de instrucciones
obviamente es de naturaleza constante, lo que sería irrelevante para calcular el orden de complejidad. O-
Otra ventaja de adoptar t ( I ) = 1 es que el valor del tiempo de ejecución de un programa similar
corresponde al número total de instrucciones calculadas.
Diseñar paso a paso un algoritmo para la computadora de una instrucción de programa P que
lo implementa, la complejidad local del algoritmo a se define como el número total de pasos requeridos
necesario para el cálculo perfecto de P , para una determinada entrada de datos E de longitud n. Razonamiento
Por tanto, la complejidad de un algoritmo se confunde con su tiempo de ejecución, que
socavaremos T ( n ), y dependerá fundamentalmente de la entrada de datos.
En este punto, es interesante establecer el discernimiento entre un problema y sus instancias. El término
instancia se refiere a una especificación de valores dados a los parámetros de entrada en un determinado
del momento, satisfaciendo las condiciones o restricciones del problema. El tamaño de un
La importancia es el número total de códigos necesarios para su identificación, considerando el tipo y estructura de los datos.
usado. Y , en el cálculo de complejidad, se refiere al tamaño de la instancia, independientemente de la
valores asociados con los parámetros que alimentar a la P programa . En este sentido, se vuelve fundamental
Evaluar bien mentalmente el tamaño de la entrada.
Como generalmente nos interesa evaluar el rendimiento de los algoritmos en instancias
tamaño grande, sería muy útil si pudiéramos establecer un límite superior para el número de pasadas
sos cuando el algoritmo a través de P , de actuar sobre tal entrada Y . La complejidad local se define como-
sintaxis de un algoritmo como un límite superior de su complejidad local, para un cierto
entrada E , considerada lo suficientemente grande. En teoría, siempre estamos interesados en el verdadero valor.
complejidad del algoritmo, pero puede ser extremadamente difícil de calcular. El uso de
concepto de complejidad local asintótica es una simplificación adecuada cuando podemos encontrar
un límite superior de complejidad suficientemente cercano al valor exacto buscado. En eso
buscaremos la ayuda de la notación O ( . ). Usando esta notación podremos encontrarnos con
más fácilmente un límite superior para la función de complejidad en grandes entradas.
Para que podamos completar un análisis introductorio del tema, solo necesitamos considerar el comportamiento
instancias. La complejidad asintótica de un algoritmo no será única porque, incluso para
entradas de igual longitud, P puede requerir un número de pasos completamente diferente. Guarida-
Dentro de una amplia gama de entradas, dos son importantes: la que conduce a
más optimista y el que lleva a uno más pesimista.

Página 507

TEMAS DE COMPLEJIDAD DE ALGORITMOS 503

Sabiendo que T ( n ) £ c ´ f ( n ), para algún valor de c > 0 y " n , definimos la complejidad del peor caso
O ( f ( n )) al valor máximo entre todas sus complejidades asintóticas, para entradas de tamaño
suficientemente grande. Definimos la complejidad del mejor caso W ( f ( n )) al valor mínimo mínimo
entre todas sus complejidades asintóticas, para entradas suficientemente grandes. LA
En el mejor de los casos, la complejidad corresponde a un límite superior en el número de pasos necesarios para
cálculo de la entrada más desfavorable. Finalmente, el comportamiento asintótico del algoritmo
puede estar limitado simultáneamente por ambas complejidades previamente definidas. En eso
caso particular, introduciremos la noción de orden exacto de f ( n ), Q ( f ( n )):

Q ( f ( n )) = O ( f ( n )) Ç W ( f ( n ))

Algunas propiedades de las funciones asintóticas:

1. O ( f ( n )) + O ( g ( n )) = O {max { f ( n ), g ( n )}}

2. O ( cf ( n )) = cO ( f ( n ) = O ( f ( n ))

3. O ( f ( n ). G ( n )) = O ( f ( n )). O ( g ( n ))

Ejemplifiquemos el cálculo de complejidad usando el algoritmo ( S ) descrito en la tabla


Seguir. El algoritmo ( S ) produce una serie matemática extremadamente importante, a saber:

dos 3 4 norte
X X X X
S ( x , n ) = 1 + +X + + + K +
dos 3! 4! norte
!

Algoritmo factor serie S

comienzo
Leer ( x, n )
S¬1
F¬1
Para i = 1, n Do
comienzo

https://translate.googleusercontent.com/translate_f 421/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
F¬F*i
S¬S+xi/F
Fin
Imprimir ( S )
Fin

Por propiedad 1 sabemos que la complejidad de S se obtendrá de la complejidad de su composición


componente más importante. Podemos dividir las acciones de S en tres bloques o subfunciones que llamaremos
mos f 1 , f 2 y f 3 .
El primer bloque se refiere a las acciones de lectura y las asignaciones de inicialización. Podríamos
socavar el primer bloque, f 1 , del paso de inicialización . La complejidad de f 1 vendrá dada por las operaciones sobre él
planeado, a saber:

f 1 = lectura de dos números (2 unidades de tiempo) y dos asignaciones (2 unidades de tiempo)

f1=4

Página 508

504 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

El segundo bloque tiene un control de bucle , una asignación con un producto y otra asignación
con una suma y una división. Observamos que los productos i - 1 se desarrollan para obtener x i . El bucle es
realizado n veces ( i = 1, ..., n ) con 4 operaciones e i - 1 productos, por lo que el cálculo final de f 2 será:

norte norte dos


norte+ 7 norte
f2= ∑ [( yo- 1 ) + =4 ] ∑ [ yo+ =3]
dos
yo= 1 yo= 1

El tercer bloque es el procedimiento de salida y:

f3=1

dos
norte+ 7 norte
Así, la función T ( n ) = O (max { f 1 , f 2 y f 3 }) = O (max {4, , 1}) = O ( n 2 )
dos

C.5 - DIFICULTAD PARA RESOLVER PROBLEMAS DE PROGRAMACIÓN LINEAL

Cuando formulamos un problema P estamos considerando implícitamente que tenemos la esperanza de


resolverlo mediante algún algoritmo a. Obviamente, resolver un problema no es solo definir
un algoritmo que lo resuelve teóricamente, pero obtiene, en la práctica, según la función objetivo, la posesión
configuración deseada. Por configuración, nos referimos a una disposición de variables que cumple las condiciones
ciones impuestas por las restricciones de P , es decir, pertenece al espacio de soluciones factibles de P . Para algunos
problemas es fácil desarrollar algoritmos que nos proporcionen esta configuración tan deseada a través de
a través de programas P que se ejecutan rápidamente (sean eficientes). Para algunos problemas es relativamente
fácil de mostrar algoritmos de solución eficientes. Desafortunadamente, para otros, esta es una tarea sorprendente.
difícilmente. Entendemos como eficiente un algoritmo cuyo T ( n ) en el peor de los casos es polinomial.
Cuando podamos encontrar un algoritmo con polinomio T ( n ) para P diremos que este problema
ma es tratable . Para demostrar que P es tratable, simplemente muestre un algoritmo que lo resuelva en un paso poligráfico.
nominal. En caso de que demostremos que P es intratable, es necesario demostrar que tal algoritmo no
existe.
Un problema algorítmico (que admite una solución mediante un algoritmo) se puede caracterizar por
un conjunto de todas las posibles entradas de datos del problema y el problema a resolver, o
es decir, el objetivo del problema. Resolver un problema es desarrollar un algoritmo que sea capaz de,
con base en la entrada de datos y el objetivo determinado, encontrar una configuración de respuesta que
ser adecuado. Suponemos que las instancias de P se codificarán convenientemente en E (con la
estrictamente necesario).
Los problemas algorítmicos se pueden clasificar en clases específicas, de acuerdo con varios criterios.
Considerando la naturaleza de la respuesta esperada al problema P, encontramos la siguiente clasificación:

Problemas de decisión
En este caso, el objetivo propuesto en P es decidir sobre la existencia de una configuración S que cumpla con
P restricciones . Una pregunta habitual en este tipo de problemas es: ¿ existe una configuración S que satisfaga el
propiedades requeridas en P ? La respuesta a este tipo de problemas es sí o no.

https://translate.googleusercontent.com/translate_f 422/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
Problemas de ubicación
Ahora el objetivo propuesto en P es ubicar o mostrar una configuración S que cumpla con
problema anterior o demostrar que no existe. Una pregunta común en este tipo de problemas es: exi-
BA, si no es una configuración S que satisfaga las propiedades requeridas en P . La respuesta a este tipo de
problema es para mostrar cualquier configuración que cumpla con los P restricciones .

Página 509

TEMAS DE COMPLEJIDAD DE ALGORITMOS 505

Problemas de optimización

El último tipo de problema algorítmico más profundamente en la cuestión planteada en P . En este caso, además de
interesados en mostrar la configuración S , estamos interesados en elegirla a través de un
criterios de optimización. Una pregunta habitual en este tipo de problemas es: mostrar, en su caso, una configuración S que
satisfaga las propiedades requeridas en P y minimice (o maximice) cualquier función z (x) . La respuesta a eso
El tipo de problema es una configuración que cumple las restricciones de P y optimiza una función z ( x ).

Si nuestro problema P está asociado con caminos hamiltonianos en G :

El problema de decisión típico sería: ¿hay un curso hamiltoniano en G ?


El problema de ubicación típico sería: determinar un curso hamiltoniano en G (asumimos que
la respuesta más probable al problema de decisión es SÍ).
El problema de optimización típico sería: determinar la ruta hamiltoniana en G que minimiza la
suma de sus bordes.

Teniendo en cuenta un problema de decisión P . Si P se puede resolver mediante la aplicación de alguna


goritmo, entonces hay necesariamente una justificación para la solución de P. Ahora presentaremos
una clasificación para problemas algorítmicos basada en los estudios de Cook (1971).

La clase de problemas de decisión P se define como aquella que comprende aquellos que admiten un algoritmo
solución polinomial . Dado que existe un algoritmo polinomial que verifica si una gráfica está conectada, por
ejemplo, entonces el problema de la conectividad en los gráficos es P .

La clase de problemas NP se define como la que comprende todos los problemas de decisión P, de manera que hay
justificación de la respuesta sí a P, cuyo paso de reconocimiento se puede realizar mediante un algoritmo polinomial
en el tamaño de la entrada E de P.

La inclusión de un problema en la clase NP previamente formalizada no requiere que haya un


lution polinomio para el problema asociado con P . Solo se requiere que el tamaño de la justificación de la
problema de decisión es polinomial en el tamaño de la entrada E . No se requiere nada sobre el
justificación para no. Podemos dar numerosos problemas pertenecientes a la clase de NP . El problema de
La determinación del ciclo hamiltoniano en un gráfico G pertenece a esta clase. La justificación de la respuesta
El sí del problema de decisión consiste en el reconocimiento del ciclo hamiltoniano, es decir, la exhibición de
una secuencia de vértices (exactamente n vértices) y comprobar si el ciclo es de hecho hamiltoniano.
Obviamente, cada problema P es automáticamente NP , sin embargo, el recíproco es una pregunta abierta.
Cuando hay una transformación de tiempo polinomial de un problema de decisión P 1 a otro
P 2 (escribimos P 1 µ P 2 ), se muestra que (ver Garey y Johnson) que si P 1 Î P Þ P 2 Î P , o incluso si P 1 Ï
Q Þ P 2 œ P . Podemos decir que, en este caso, P 1 es un caso particular de P 2 Î P , es decir, P 2 es al menos
tan difícil como P 1 . La relación µ también es transitiva, por tanto, si P 1 µ P 2 y P 2 µ P 3 implica que P 1 µ P 3 .

Un problema se define como NP-hard o NP-hard si P 0 µ P para todo P 0 Î NP.

Por definición, todo problema NP-difícil es tan difícil como cualquier problema perteneciente a NP. LA
Cook introdujo la designación del problema de decisión NP-completo (véase Cook [1983]). cocinar
demostró que era posible dividir NP en clases de problemas equivalentes entre sí. También encontró
que la clase P no incluía la posibilidad de que todos los problemas relacionados con NP fueran
polinomialmente transformado en él. Por lo tanto, la clase NP-completa se definió como compuesta por
P problemas que:

1. P Î NP.

2. Para cualquier problema de decisión P 'Î NP luego P' µ P.

Página 510

https://translate.googleusercontent.com/translate_f 423/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

PUBLICACIONES CIENTIFICAS
CITADO POR SU
ABREVIATURAS TRADICIONALES

Amer. Matemáticas. Mensual Mensual Matemática Estadounidense


Transacciones AIIE Transacciones del Instituto Americano de Ingenieros Industriales
AJMMS Revista Estadounidense de Ciencias Matemáticas y de Gestión
Ana. Disct. Matemáticas. Annals of Discrete Mathematics
Annals of Maths. y AI Anales de inteligencia artificial y matemática
Matemáticas Aplicadas. Dejar. Letras de matemáticas aplicadas
Matemáticas Aplicadas. Modelado, Modelado matemático aplicado
Campana. Syst. Tech. J, Revista técnica de Bell Systems
Toro. Amer. Matemáticas. Soc. Boletín de la Sociedad Americana de Matemáticas
Canadá. J. Math. Revista canadiense de matematicas
Comp. Y matemáticas. con Appls. Computadoras y matemáticas con aplicaciones
Computadoras y operaciones. Res Investigación de operaciones e informática
Comun, estatista. Modelos estocásticos Modelos estocásticos y estadísticos de comunicaciones
EJIS Revista europea de sistemas de información
EJOR Revista europea de investigación operativa
Decisión Sci. Ciencia de la decisión
Matemáticas aplicadas discretas. Matemáticas aplicadas discretas
DMJ Diario de matemáticas de Duke
Optar. Ingeniería y Optimización
Geogr. Anal. Anales geográficos
IEEE-AC Transacciones IEEE sobre control automático
IEEE. Trans. Electromag. Compat. Transacciones IEEE sobre electromagnetismo
y compatibilidad
Transacciones IIE Transacciones del Instituto de Ingenieros Industriales
IEEE Trans. Comm. Transacciones IEEE sobre comunicaciones
IEEE Trans.Comp. Transacciones IEEE en computadoras
IBM J. I + D IBM Journal of Research and Development
IBM Systems, J. Revista de sistemas de IBM
Inf. Procesamiento de cartas Cartas de procesamiento de información
IJAMT Revista Internacional de Avanzado
Tecnología de fabricación
Interno. J. Computación matemática. Revista Internacional de Matemáticas Informáticas
Int. J. Math. Educ. Sci. Technol .. Revista Internacional de Matemática,
Educación, ciencia y tecnología
J. Prod. Res. Revista internacional de investigación de producción
Revista de Alg. Diario de algoritmos
JORS Revista de la Sociedad de Investigación Operativa
J. Assoc. Computación. Matemáticas. Revista de la Asociación de Computación
Maquinarias
J. Ind. Eng. Revista de ingenieros industriales
J. Opt. Aplicación de teoría Revista de teoría de la optimización
y aplicaciones
J. ACM Revista de ACM
J. Comput. Syst. Ciencia Revista de Ciencias de la Computación y Sistemas

Página 511

508 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

J. Res. Nat. Bur. Std. Revista de Investigación de la Oficina Nacional


de estándares
J. Opns. Res. Soc. Revista de la sociedad de investigación de operaciones
J. Opns. Res. Soc. De Japón Revista de la Sociedad de Investigación de Operaciones de Japón
J. Polit. Economía Revista de Política y Economía
Man. Sci. Ciencias de la gestión
Matemáticas. Prog. Programación matemática
Matemáticas. Prog. Estudiar Estudio de programación matemática
Matemáticas. Computación. Modelado Modelado matemático y por computadora
Matemáticas. Eslovaca Matematical Slovaca
Matemáticas. Rosal japonés Japonica matematical

https://translate.googleusercontent.com/translate_f 424/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
MOR Matemáticas de la investigación operativa
Numerische Math. Matemáticas numéricas
Nav. Res. Log. Q. Logística de investigación naval trimestral
NRL Logística de investigación naval
Problema. Mangement Sci.
IEEE Proc Actas de IEEE
Proc. Amer. Matemáticas. Soc. Actas de la American Mathematical Society
Cuarto de galón. Apl. Matemáticas. Matemáticas aplicadas trimestrales
RAIRO - Rept. De investigación de operaciones. Revisado d'Automatique d'Informatique et
Operationnelle de Recherche - Operaciones
Investigue.
SIAM - J. Appl. Matemáticas. Sociedad de Industriales y Aplicados
Revista de matemáticas sobre matemáticas aplicadas
SIAM - J. Comp. Sociedad de Industriales y Aplicados
Revista de Matemáticas en Computación
SIAM J. Opt. Sociedad de Industriales y Aplicados
Revista de matemáticas sobre optimización
Revisión SIAM Sociedad de Industriales y Aplicados
Revisión de matemáticas
Matemáticas soviéticas. Dokl Matemáticas soviéticas Doklay
Opns. Res. Soc. Sociedad de Investigación de Operaciones
Opns. Res Investigación de operaciones
ENT Cartas de reserva de operaciones
O Spektrum Operaciones Reserch Spektrum
Opns. Res. Quart. Investigación de operaciones trimestral
Telecomm Sys. Sistemas de telecomunicaciones
Transactions Sys. Man. Cyb. Transacciones sobre gestión de sistemas y cibernética
Trans. Sci. Ciencia del transporte
YUJOR Revista Yugoslava de Investigación de Operaciones
Alfombra Zastos Matemática Zastos

Página 512

PUBLICACIONES CIENTIFICAS
Citado sin abreviaturas

Ciencia y tecnología aeroespacial


Encuestas de computación ACM
Acta Astronautica
Acta Informatica
Acta Mathematica Universitatis Comenianae
Avances en probabilidad aplicada
Avances en sistemas complejos
Algorítmico
Sociedad matemática americana
Revista estadounidense de ciencias matemáticas y de gestión
Analytica Chimica Acta
Anales de investigación operativa
Revisión anual de ecología y sistemática
Estadísticas aplicadas
Inteligencia aplicada
Ingeniería Térmica Aplicada

https://translate.googleusercontent.com/translate_f 425/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
Inteligencia artificial en ingeniería
Revisión de inteligencia artificial
Revista de investigación operativa de Asia y el Pacífico
Sinergia Blackwell
Revista belga de investigación operativa, estadística e informática
Biometrika
Cibernética biológica
Revista de tecnología BT
Edificación y Medio Ambiente
Boletín de la Academia Polaca de Ciencias, Ciencias Técnicas
Revista Canadiense de Ingeniería Civil
Cashier Cent. d'Etudes Recherche Operationelle
Investigación de cemento y hormigón
Revista centroeuropea de investigación operativa y economía
Caos, solitones y fractales
Optimización combinatoria
Comunicaciones de la ACM
Sistemas complejos
Estructuras compuestas
Aplicaciones y optimización computacional
Optimización combinatoria: teoría y práctica
Informática e Ingeniería Química
Informática e Ingeniería Industrial
Informática
Decisiones y control en la ciencia de la gestión
Serie DIMACS sobre matemáticas discretas e informática teórica
Documenta Mathematica
Investigación de sistemas de energía eléctrica
Aplicaciones de ingeniería de la inteligencia artificial
Diseño de ingeniería y automatización
Optimización de ingeniería
Modelado y evaluación ambiental
Computación evolutiva
Conjuntos y sistemas difusos
Sistemas informáticos de futura generación

Página 513

510 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

Programación genética y máquinas evolutivas


Geoinformática
Cartas electrónicas IEE
Revista IEEE de Ingeniería Oceánica
Transacción IEEE sobre diseño asistido por computadora de circuitos y sistemas integrados
Transacciones IEEE sobre computación evolutiva
Transacciones IEEE sobre procesamiento de imágenes
Transacciones IEEE sobre Magnetics
Transacción IEEE en redes neuronales
Transacción IEEE sobre ciencia de sistemas y cibernética
Información y control
Cartas de procesamiento de información
Ciencias de la información
Tecnología de la información y turismo
Interfaces
EN PARA
INFORMA Revista de Computación
Revista internacional de tecnología de fabricación avanzada
Revista internacional de reconocimiento de patrones e inteligencia artificial
Revista internacional de distribución física y gestión logística
Revista Internacional de Economía de la Producción
Transacciones internacionales en investigación operativa
Investigación operativa
Journal de Physique
Revista de transportes avanzados
Revista de ciencias aplicadas del sistema
Revista de investigación en inteligencia artificial
Diario de negocios
Revista de logística empresarial
Revista Química y Física
Revista de optimización combinatoria
Revista de física computacional
Revista de Ciencias de la Computación y Sistemas
Revista de Control y Cibernética
Diario de crecimiento cristalino
Revista de control y dinámica económica
Revista de química electroanalítica
Revista de algoritmos experimentales
Revista de ingeniería alimentaria
Diario de pronóstico
Revista de optimización global
Revista de fabricación inteligente
Revista de heurística

https://translate.googleusercontent.com/translate_f 426/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
Diario de KISS
Revista de sistemas de fabricación
Revista de teoría y aplicaciones de la optimización
Diario de fuentes de energía
Revista de espectroscopia cuantitativa y transferencia radiativa
Revista de ciencia regional
Diario de programación
Diario de sonido y vibración
Notas de conferencias en informática
Ciencia e Ingeniería de los Materiales
Mathware y Soft Computing
Microeconomía
Microprocesadores y microsistemas
Procesamiento mineral y metalúrgico
Computación natural
Redes
Científico nuevo
Investigación de ácidos nucleicos
Óptica y láseres en ingeniería
Tecnología óptica y láser

Página 514

PUBLICACIONES CIENTÍFICAS CITADAS SIN ABREVIATURAS 511

Optimización e Ingeniería
Omega
ORSA, Boletín de Inteligencia Artificial
Pacific Journal of Mathematics
Computación paralela
Reconocimiento de patrones
Investigación naval
Investigación Operativa
Revisión física
Sistemas de producción y fabricación
Planificación y control de la producción
Revista militar de ciencia y tecnología
Revue Francaise D Informatique De Recherche Operationnelle
Ricerca operativo
Robótica y sistemas autónomos
Estadística y Computación
Ciencias de la planificación socioeconómica
Ciencias
Ciencia y tecnologia
Estudios de análisis de ubicación
Diario TAPPI
Técnicas y Ciencias Informáticas
Technometrzcs
Sistemas de telecomunicaciones
Revista internacional de redes informáticas y de telecomunicaciones
Informática Teórica
Transacciones de la ciencia
Investigación de transporte
Estrategia de transporte
Zeitschrift für Investigación de operaciones

https://translate.googleusercontent.com/translate_f 427/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

Página 515

BIBLIOGRAFÍA

Para consultar la bibliografía de este libro, consulte nuestro sitio web www.elsevier.com.br .

Página 516

https://translate.googleusercontent.com/translate_f 428/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos

ÍNDICE

LA segundo

Algoritmo Rama y atado , 180


Aproximado, 196, 248, 351 Buscar
Búsqueda general en gráficos, 230 en Ancho, 183
Cartero chino, 377, 378, 380 en profundidad, 183, 184, 186, 231
Ático Prime, 433
de Christofides, 172, 261, 351, 383, 410, 441
Circulación, 304, 305, 309 C
Clark y Wright, 367, 400
Camino
desde Dijkstra, 187, 234, 235, 236, 238, 270
Alternando, 250-251
Gillet y Miller, 404
Camino creciente, 247-250
Kruskal, 241, 244, 245, 473, 506
Ruta de aumento de flujo, 307
Malhotra, Pramodh-Kamar y Maheshwari, 311
Cartero chino, 377, 378
de Minoux, 240, 246, 410
Ciclismo, 119, 120
de Mole y Lameson, 402
Circuitos Eulerianos, 233
de recubrimiento de bordes, 263
Circuitos hamiltonianos, 233, 366, 505
por Roy, 231
Haga clic en, 486
por Sleator y Tarjan, 241, 453, 454
Competitividad, 4
Ford-Fulkerson, 238, 309, 372
Complejidad local asintótica, 502, 503
Ford-Moore-Bellman, 236, 237
Conexión, 229, 336, 430, 450
Genético, 351, 354, 436
Conjunto convexo, 94, 95, 96, 475, 476, 478-479
GRASP, 436, 437
Grupo electrógeno, 471-472
Amante de los dulces PK, 186, 437, 438, 506
Calle Corte, 306
Húngaro, 294, 298-299
Problemas de cobertura de capacidad, 428
Erkut K-Dispersión, 438-439, 440, 441, 442,
Cromosoma, 351-358, 360-361
443, 444, 445
Costos reducidos, 100, 117, 125, 139, 152, 158, 285, 324
K-Separación, 451, 452
M S Buscar, 239, 240, 246, 247, 340
3

Prim Colored, 241-244


re
Prim, 241, 242, 506
Símplex para PFCM, 316, 317 Degeneración, 119, 120
Símplex, 96, 100, 106, 115, 119-120, 1'25, 138-140, 141, Dependencia lineal, 103, 467, 468
275, 302, 317, 463 Determinante, 98, 275, 462, 465, 466, 472, 473
Árbol generador mínimo, 241, 242, 349, 350, 361, 449, Direcciones extremas, 478
450 Dispersión, 441, 442, 445-447, 448, 449
Árbol, 172, 182-185, 195, 196, 229, 239, 242, 243-247, 259, Dualidad, 129, 130, 131, 133, 137, 165, 435, 445
261-263, 282, 283, 288, 324, 349, 350, 361

Página 517

516 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

Y por Vasko y Wilson, 435


Dynasearch, 365
Emparejamientos, 229, 249, 250, 251, 445
L&K, 366
Ingeniería de Sistemas, 3
Primates, 433
Envoltura convexa, 92, 120, 180, 479, 480
Ecuaciones lineales, 93, 182, 479, 480
Espacio vectorial, 471, 472, 477 yo
Estrategias
Dinámico, 184 Implantes radiactivos, 440
Independencia lineal, 103, 285
Inteligencia artificial, 16, 17
F Interpretación
Economía, 1, 140-141, 142, 145, 151, 258
Flujo de coste mínimo, 275, 276

https://translate.googleusercontent.com/translate_f 429/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
Flujo máximo, 274, 302, 306-307, 309-310, 316 Gráficos, 125, 483
Inversión de matriz, 108, 462, 463
Flujos crecientes, 307
Espacios complementarios, 132, 136, 137, 290
Formulación
L
Embalaje clásico (PK), 412
Clasificación de particiones (PP), 412 Límites, 14, 15, 17-18, 133-134, 141, 253, 276, 294, 302,
Clásico para el problema del transporte, 278 304-305, 338, 349-351, 361, 366, 413, 418, 426
Claus (C), 335 Lista de adyacencias, 360
de Fox-Gavish-Graves (FGG), 334 Lista ordinal, 360
Miller-Tucker-Zemlin (MTZ), 333
Producto único (FPU), 259
Matemáticas del (PCCS), 301, 422 METRO
Multiproducto (FPM), 260
Matriz
Problema de transporte restringido, 278
de adyacencia, 494
Incidencia, 318, 324, 494
GRAMO Matriz triangularizada, 319
Metaheurísticas, 436
Geni y Genius, 365 Método
Gestión, 17, 18, 21 de las dos fases, 115, 124, 127
Tenedor por Vogel, 183, 184
Bipartito, 277, 297, 486 do Canto Noroeste, 286
Completo, 361, 367, 486 Modelos
Aumento de flujo, 307 Analógico, 7
Dirigida, 175, 485, 494 Icónico, 7
Regular, 487 Simbólico, 7
GRASP, 436, 439-440

norte
H
Notación O, 500, 501
Heurístico Núcleo, 1, 351
de "Saving", 367 Número
por Backer, 436 Absorción, 415
de Balas e Ho, 435 de estabilidad, 416, 196
Bellmore y Nemhauser, 361, 362, 369 de la Independencia, 416, 496
por Chvatal, 169, 435
de Erkut, 442, 443, 444
Gillet y Miller, 403, 404 O
Híbrido, 183, 435
Operaciones elementales con matrices, 108, 457
de Inserción, 363-365
Operadores de algoritmos genéticos, 351, 354, 355
K-Sustituciones o k-Opt, 365
Optimización combinatoria, 239
de Mole e Jameson, 401, 402
de separación de grupos, 445

Página 518

ÍNDICE 517

PAGS R
PCV Red
con Backhauls, 337 definición, 488
con bonificación, 338, 339 Suministro, 217, 218
con clientes estocásticos, 340 desde Diners, 219
con cuello de botella, 338 Oferta x demanda, 278
con ventana de tiempo, 369 por Petri, 7
con tiempo de viaje estocástico, 340 de Televisión, 225, 226
Estocástico, 339 PERT, 326, 410
Generalizado, 336 PERT / CPM, 326, 327
Min-Max-Min-Suma, 340 de agua, 270
Múltiple con tiempo de viaje estocástico, 340 Comunicaciones, 256, 261, 272, 425, 426, 441
Múltiple, 340 Distribución, 425
Simétrico, 336, 365, 368 Drenaje, 257
Investigación operativa, 10, 12, 13, 411 Electricidad, 430
Pivotante, 97, 108-109, 111, 139, 140, 145, 156-159 de Alcantarillado, 270
Puntos extremos, 96, 99, 100, 120, 122, 125, 475, 476 Lugares, 261
Principio de Bellman, 170 Relajación
Problema Lagrangeana, 184, 254, 431
de cobertura máxima en la ruta más corta, 428 Lineal, 174, 184, 431
de Cobertura Continua, 417 Rutas de vehículos, 240, 412
de K-Dispersión discreta, 438 Rotulación, 232, 234, 235, 250, 253, 294, 300, 301, 304, 305,
Mochila, 170-178, 195, 213, 214 310
Cobertura capaz, 428
Designación, 227, 228, 262, 289-290, 292-295, 297,
298, 422, 424 s
Emparejamiento, 261, 273, 277, 278, 279, 281-283,

https://translate.googleusercontent.com/translate_f 430/431
16/12/2020 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL Modelos y Algoritmos
285-287, 288, 317, 336, 428 Anneling simulado, 203, 432
Flujo al costo mínimo, 275 Sinergia, 4

Tasa de flujo, 274, 309, 310, 311, 316 Sistemas


por Maximal Covering Location Planning, 424 Biológico, 351
de Packing, 262, 413-415, 416, 417 concepto 3 4
de particiones, 120, 411, 412, 413, 414, 415, 423, Servicio de Emergencia, 447

431, 460 Comunicación, 273

Recubrimiento, 261, 331, 432 de ecuaciones, 92, 93, 96, 154, 280, 287, 319, 320,
Enrutamiento y designación, 229, 230, 248-252, 350 460-461, 465-473

Enrutamiento, 177, 196, 233, 240, 262, 336, 361, Análisis de sangre, 455

375-377, 385-393, 398-399 Independencia, 506

por Steiner, 253-263 Fabricación flexible, 448


Transporte, 193, 214, 261, 271, 277-279, 280, 281, de Salud, 450
282-286, 288 Proceso de toma de decisiones, 16

do Caixeiro Rural, 384 Transporte, 271

del camino más corto, 232, 233 Indeterminado, 474


del cartero chino calificado, 382 Lineal, 461, 465-473

del cartero chino, 377, 378, 381-382, 383 Submarinos de exploración de petróleo, 418

hacer Transbordo, 277, 295, 296, 301 Solución básica, 92-96, 101-102, 105, 125, 134, 281, 285,

Programación 286

Dinámico, 170 Submatriz, 98, 280, 318, 460, 462, 470-473


Entero, 11, 17, 169, 170 Simulación, 1, 14, 16, 17, 23

Lineal, 111, 16, 92-93, 97, 110, 119-120, 124-125, 131,


135, 137, 140, 170, 350, 411, 412, 476
T

T-coloración, 497
Q
Teorema
Tablero de transporte, 281, 282, 283, 285, 286 de existencia, 133
Calidad, 19, 140, 183, 197, 198, 218, 282, 350, 361, 365, desde Camion, 473
369, 370 por Cramer, 465

Página 519

518 OPTIMIZACIÓN COMBINATORIA Y PROGRAMACIÓN LINEAL ELSEVIER

por Heller & Tompkins, 473 V


por Hoffman y Kruskal, 473
Variables
desde Truemper, 473
Artificial, 114, 115, 117
Toma de decisiones, 11, 12, 16, 17, 18, 173, 361, 365
Básico, 92, 94, 95, 106, 115, 119-120, 253
Apagado, 106, 110, 113, 115, 120

U Entero, 333
Vivacidad, 19-23
Unimodularidad, 472-473

https://translate.googleusercontent.com/translate_f 431/431

También podría gustarte