• No se han encontrado resultados

Método de ramificación y corte utilizando planos de corte de Chvatal Gomory para problemas de optimización combinatorial

N/A
N/A
Protected

Academic year: 2020

Share "Método de ramificación y corte utilizando planos de corte de Chvatal Gomory para problemas de optimización combinatorial"

Copied!
75
0
0

Texto completo

(1)Biblioteca Digital - Dirección de Sistemas de Informática y Comunicación - UNT. Universidad Nacional de Trujillo Facultad de Ciencias Fı́sicas y Matemáticas. C Y A M DE A TE C I M EN Á C TI IA C S A S FÍ. SI C. A. S. Escuela Académica Profesional de Matemáticas. MÉTODO DE RAMIFICACIÓN Y CORTE UTILIZANDO PLANOS DE CORTE DE CHVÁTAL-GOMORY PARA PROBLEMAS DE OPTIMIZACIÓN COMBINATORIAL. B. IB. LI O. TE. TESIS PARA OPTAR EL TÍTULO DE LICENCIADO EN MATEMÁTICAS. Bach. JULIO CÉSAR AGUSTÍN SANGAY ASESORA: Dra. JENNY ROJAS JERÓNIMO Trujillo, 2012. Perú. Esta obra ha sido publicada bajo la licencia Creative Commons Reconocimiento-No Comercial-Compartir bajola misma licencia 2.5 Perú. Para ver una copia de dicha licencia, visite http://creativecommons.org/licences/by-nc-sa/2.5/pe/.

(2) Biblioteca Digital - Dirección de Sistemas de Informática y Comunicación - UNT. SI C. A. S. Dedicatoria. C Y A M DE A TE C I M EN Á C TI IA C S A S FÍ. A mi madre Raquel Sangay por su invalorable apoyo. A la memoria de mi padre Jose Agustı́n y mi abuelito Evaristo Agustı́n. A mis hermanas Lucy y Katherin y mis sobrinas Geraldine. I. B. IB. LI O. TE. y Marı́a Fernanda, a toda mi familia y amigos y amigas por su apoyo y comprensión.. Esta obra ha sido publicada bajo la licencia Creative Commons Reconocimiento-No Comercial-Compartir bajola misma licencia 2.5 Perú. Para ver una copia de dicha licencia, visite http://creativecommons.org/licences/by-nc-sa/2.5/pe/.

(3) Biblioteca Digital - Dirección de Sistemas de Informática y Comunicación - UNT. SI C. A. S. Presentación. C Y A M DE A TE C I M EN Á C TI IA C S A S FÍ. Señores miembros del jurado:. En cumplimiento con las disposiciones que emanan de nuestra ley universitaria, pongo a su disposición la tesis titulada:. Método de Ramificación y Corte utilizando Planos de Corte de Chvátal-Gomory para problemas de optimización Combinatorial con el propósito de optar el tı́tulo de Licenciado en Matemáticas.. Agradezco anticipadamente sus opiniones y crı́ticas, pues me servirán de estı́mulo para seguir. Trujillo, 2012.. Bach. Julio César Agustı́n Sangay. B. IB. LI O. TE. adelante.. II. Esta obra ha sido publicada bajo la licencia Creative Commons Reconocimiento-No Comercial-Compartir bajola misma licencia 2.5 Perú. Para ver una copia de dicha licencia, visite http://creativecommons.org/licences/by-nc-sa/2.5/pe/.

(4) Biblioteca Digital - Dirección de Sistemas de Informática y Comunicación - UNT. Presentación. C Y A M DE A TE C I M EN Á C TI IA C S A S FÍ. Dedicatoria. SI C. A. S. Índice general. Agradecimiento Resumen Introducción. 1. Preliminares. 1.1. Programación lineal. I II V VI VII 1. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 1. 1.2. Geometrı́a de la programación lineal . . . . . . . . . . . . . . . . . . . . . . .. 4. 1.3. Método simplex de la programación lineal . . . . . . . . . . . . . . . . . . . . 13. TE. 1.3.1. Método simplex . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 1.3.2. Tabla simplex . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19. LI O. 1.4. Dualidad de la programación lineal . . . . . . . . . . . . . . . . . . . . . . . . 22. B. IB. 1.4.1. Problema dual . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22 1.4.2. Relación entre el problema primal y dual . . . . . . . . . . . . . . . . . 22 1.4.3. Método dual simplex . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24. 2. Problemas de optimización combinatorial. 26. 2.1. Formulación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26 2.2. Métodos de solución de problemas lineales enteros . . . . . . . . . . . . . . . . 34 2.2.1. Método de planos de corte. . . . . . . . . . . . . . . . . . . . . . . . . 34 III. Esta obra ha sido publicada bajo la licencia Creative Commons Reconocimiento-No Comercial-Compartir bajola misma licencia 2.5 Perú. Para ver una copia de dicha licencia, visite http://creativecommons.org/licences/by-nc-sa/2.5/pe/.

(5) Biblioteca Digital - Dirección de Sistemas de Informática y Comunicación - UNT. 2.2.2. Método de ramificación y acotación: . . . . . . . . . . . . . . . . . . . . 39 3. Problemas de programación lineal entera binaria. 43. 3.1. Formulación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43. A. S. 3.2. Métodos de solución . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43. SI C. 3.2.1. Algoritmo de ramificación y corte . . . . . . . . . . . . . . . . . . . . . 47. Anexos. 54 55 65. B. IB. LI O. TE. Bibliografı́a. C Y A M DE A TE C I M EN Á C TI IA C S A S FÍ. Conclusiones. IV. Esta obra ha sido publicada bajo la licencia Creative Commons Reconocimiento-No Comercial-Compartir bajola misma licencia 2.5 Perú. Para ver una copia de dicha licencia, visite http://creativecommons.org/licences/by-nc-sa/2.5/pe/.

(6) Biblioteca Digital - Dirección de Sistemas de Informática y Comunicación - UNT. SI C. A. S. Agradecimiento. C Y A M DE A TE C I M EN Á C TI IA C S A S FÍ. Un sincero agradecimiento a la profesora Dra. JENNY ROJAS JERÓNIMO, asesora del presente trabajo, por la vocación de servicio y estı́mulo. Ası́ mismo, un agradecimiento a todos los profesores de la Escuela Académica Profesional de Matemáticas que lograron mi. B. IB. LI O. TE. formación académica y de quienes aprendo cada dı́a.. V. Esta obra ha sido publicada bajo la licencia Creative Commons Reconocimiento-No Comercial-Compartir bajola misma licencia 2.5 Perú. Para ver una copia de dicha licencia, visite http://creativecommons.org/licences/by-nc-sa/2.5/pe/.

(7) Biblioteca Digital - Dirección de Sistemas de Informática y Comunicación - UNT. SI C. A. S. Resumen. C Y A M DE A TE C I M EN Á C TI IA C S A S FÍ. La optimización combinatorial es una área de la optimización que tiene diversas aplicaciones en la ciencia de la computación, investigación de operaciones, teorı́a de Grafos, entre otros. Muchos problemas que estudia la Optimización combinatorial se formulan como modelos de programación lineal entera. En el presente trabajo desarrollaremos un método para resolver problemas de optimización lineal entera basándonos en el método de ramificación y acotación, el cual será mejorado con la inclusión de planos de corte generados con el procedimiento de Chvátal-Gomory y ası́ tener menos enumeraciones que en el algoritmo de ramificación y acotación y se llamará método de ramificación y corte.. La implementación del algoritmo de ramificación y corte permite resolver diferentes problemas de programación lineal entera. Se ilustrará con algunos ejemplos donde se observa los buenos. B. IB. LI O. TE. resultados que se obtiene al aplicar el método descrito y en un número finito de pasos.. VI. Esta obra ha sido publicada bajo la licencia Creative Commons Reconocimiento-No Comercial-Compartir bajola misma licencia 2.5 Perú. Para ver una copia de dicha licencia, visite http://creativecommons.org/licences/by-nc-sa/2.5/pe/.

(8) Biblioteca Digital - Dirección de Sistemas de Informática y Comunicación - UNT. SI C. A. S. Introducción. C Y A M DE A TE C I M EN Á C TI IA C S A S FÍ. La optimización combinatorial es una rama de la optimización matemática relacionada a la investigación de operaciones y la ciencia de la computación, pues estudia teorı́a de algoritmos y teorı́a de la complejidad computacional. También está relacionada con otros campos como la inteligencia artificial e ingenierı́a de software. Los algoritmos de optimización combinatorial resuelven problemas generalmente difı́ciles, explorando el espacio de soluciones factibles que previamente, mediante criterios propios de los diferentes algoritmos, ha sido reducido de tal manera que se puede determinar en un tiempo de cálculo razonable alguna solución al problema.. Los problemas de optimización combinatorial son de la forma:. máx {f (x) : x ∈ S ⊂ Rn , |S| < ∞} ; donde particularidades del conjunto S permite diseñar algoritmos efectivos que permiten determinar con tiempo de cálculo razonable alguna solución al problema. Muchos problemas de optimización combinatorial se formulan como. LI O. TE. problemas de programación lineal entera pura [5],[6] de la forma:   . P.L.E.. máx ct x. s.a: Ax ≤ b   x ∈ Zn+. IB. donde Am×n , b ∈ Rm , c ∈ Rn , x ∈ Rn y S = {x ∈ Zn+ : Ax ≤ b} se llama región factible o. B. como problema de programación entera binaria [6] cuya formulación es de la forma:    P.L.. máx ct x. s.a: Ax ≤ b   x ∈ {0, 1}n. donde Am×n , b ∈ Rm , c ∈ Rn ,x ∈ Rn .. VII. Esta obra ha sido publicada bajo la licencia Creative Commons Reconocimiento-No Comercial-Compartir bajola misma licencia 2.5 Perú. Para ver una copia de dicha licencia, visite http://creativecommons.org/licences/by-nc-sa/2.5/pe/.

(9) Biblioteca Digital - Dirección de Sistemas de Informática y Comunicación - UNT. En un primer momento los problemas de optimización combinatorial se resuelven usando sólo el algoritmo enumerativo de ramificación y acotación, pero por la naturaleza del algoritmo éste realiza demasiadas evaluaciones debido al crecimiento exponencial del árbol de ramifica-. S. ción que lleva a un elevado número de evaluaciones. Por este motivo, trataremos de mejorar. A. la evaluación del algoritmo enumerativo, considerando técnicas como los métodos de planos. SI C. de corte que mejoran el desarrollo de este algoritmo con el fin de conseguir buenos resultados computacionales. En las últimas décadas, las investigaciones se han centrado en la reducción. C Y A M DE A TE C I M EN Á C TI IA C S A S FÍ. del árbol de ramificación, de dicho algoritmo [4]. Para esto se considera relajaciones de la región factible que pueden ser de dos tipos: lineales y lagrangeanas.. La relajación lineal se basa en la generación de desigualdades válidas generando planos de corte. En 1963 se dá inicio a las técnicas de planos de corte. Fue Gomory el primero que desarrolló esta técnica al darse cuenta que agregando desigualdades obtenidas de la combinación lineal de las ya existentes [4], el nuevo problema produce una solución aproximada a la buscada e incluso en algunos casos se llegaba a la solución entera, las desigualdades que se van generando reciben el nombre de Planos de Corte de Gomory [4]. Aunque esta técnica se dejó de lado por varios años, debido a que su convergencia era muy lenta, sirvió como base para el desarrollo de otras técnicas de Planos de Corte .. Grötschel - Jünger y Reinelt [3] en 1984 fueron los que por primera vez aplicaron con éxito la técnica de ramificación y corte para resolver el problema del ordenamiento lineal.. TE. Padberg y Rinaldi [7] (1991) fueron los primeros en presentar una técnica de planos de. LI O. corte más profundos que los de Gomory, debido a que ellos tomaron en cuenta la estructura que tendrı́a la envolvente convexa del problema.. Padberg y Rinaldi (1992) introdujeron el término ramificación y corte (Branch and Cut). IB. en un algoritmo para el problema del agente viajero [7]. La definición original de Padberg y. B. Rinaldi fue hecha para un algoritmo de ramificación y corte permitiendo unicamente planos de corte definidos como caras de la región factible asociada al poliedro; pero en la mayorı́a de los algoritmos no se exige que tengan que ser caras [7]. En 1984 Chvátal resuelve computacionalmente el problema del agente viajero usando el método de planos de corte de Gomory. Para una implementación eficiente Chvátal modifica. VIII. Esta obra ha sido publicada bajo la licencia Creative Commons Reconocimiento-No Comercial-Compartir bajola misma licencia 2.5 Perú. Para ver una copia de dicha licencia, visite http://creativecommons.org/licences/by-nc-sa/2.5/pe/.

(10) Biblioteca Digital - Dirección de Sistemas de Informática y Comunicación - UNT. el proceso de la obtención de los cortes de Gomory con muy buenos resultados y este proceso se conoce como derivación de Chvátal o como procedimiento Chvátal - Gomory. En la actualidad, problemas de diversas áreas se modelan como un problema combinatorial:. S. Programación Entera que para resolverlos se utiliza en forma combinada los métodos de pla-. A. nos de corte con el algoritmo enumerativo de ramificación y acotación con el objetivo de. SI C. mejorar tanto en tiempo como en el cálculo de la solución. Por ejemplo en programación de horarios de trenes, horarios de tripulación aérea, planeación de producción, planeación de. C Y A M DE A TE C I M EN Á C TI IA C S A S FÍ. generación de electricidad, telecomunicaciones, problema de transporte, etc [4].. Si bien es cierto los métodos de ramificación y acotación y los de planos de corte, se usan para resolver Problemas lineales enteros de manera individual. En muchos casos cuando se combinan estos dos métodos se obtiene el resultado en menor tiempo, que resolviendo el problema en forma independiente con cada uno de ellos. Con el fin de reducir el número total de operaciones, el número de iteraciones y de esta manera resolver el problema en el menor tiempo posible se hace necesario construir un nuevo método. Ası́ surge la siguiente interrogante, ¿Cómo unir él método de ramificación y acotación con el método de planos de corte de Chvátal-Gomory para generar un nuevo método de ramificación y corte para solucionar problemas de Optimización Combinatorial.?. En el presente trabajo daremos respuesta a la interrogante planteada desarrollando un al-. TE. goritmo de ramificación y corte basado en el procedimiento de Chvátal-Gomory, el cual es. LI O. además ejemplificado y probado en algunos problemas de optimización combinatorial. Con este objetivo desarrollamos tres capı́tulos: el capı́tulo 1 contiene conceptos preliminares y necesarios para el desarrollo del trabajo. En el capı́tulo 2 se presenta los conceptos de opti-. IB. mización combinatoria, programación lineal entera y los métodos de ramificación y acotación. B. y el de planos de corte para resolver dichos problemas. En el capı́tulo 3 se presenta el algoritmo de ramificación y corte basado en los cortes de Chvátal-Gomory. Luego presentamos las conclusiones de nuestro trabajo para finalizar con la bibliografı́a utilizada.. IX. Esta obra ha sido publicada bajo la licencia Creative Commons Reconocimiento-No Comercial-Compartir bajola misma licencia 2.5 Perú. Para ver una copia de dicha licencia, visite http://creativecommons.org/licences/by-nc-sa/2.5/pe/.

(11) Biblioteca Digital - Dirección de Sistemas de Informática y Comunicación - UNT. SI C. A. S. Capı́tulo 1. 1.1.. C Y A M DE A TE C I M EN Á C TI IA C S A S FÍ. Preliminares Programación lineal. El objetivo principal de los problemas de optimización es la resolución de problemas del tipo:. {. optimizar f (x). s.a : x ∈ S ⊆ Rn ,. (1.1). donde f : Rn −→ R es una función llamada función objetivo y el conjunto S está definido por las restricciones dadas en funciones impuestas sobre el vector x y se llama región factible. El problema de optimización consiste en: encontrar(si existe) un elemento de S donde. TE. la función objetivo f alcanza su valor óptimo que puede ser máximo o mı́nimo. Si f : Rn −→ R es una función lineal y el conjunto S está definido por funciones lineales,. LI O. entonces el problema de optimización se llama problema de programación lineal y matemáti-. B. IB. camente se formula:    P.L.. máx ct x. s.a : Ax ≤ b   x ≥0. (1.2). donde A es una matriz m × n, x ∈ Rn , c ∈ Rn , b ∈ Rm .. 1. Esta obra ha sido publicada bajo la licencia Creative Commons Reconocimiento-No Comercial-Compartir bajola misma licencia 2.5 Perú. Para ver una copia de dicha licencia, visite http://creativecommons.org/licences/by-nc-sa/2.5/pe/.

(12) Biblioteca Digital - Dirección de Sistemas de Informática y Comunicación - UNT. Los diferentes métodos de solución que se han desarrollado se basan en la formulación. A. (1.3). SI C. de holgura a las restricciones y está dado por:  máx ct x   s.a: Ax = b   x ≥0. S. estándar del problema lineal (1.2). La forma estándar de (1.2) se obtiene adicionando variables. Definición 1.1.1 (Solución factible) Todo punto x, que satisface las restricciones de (1.3). C Y A M DE A TE C I M EN Á C TI IA C S A S FÍ. es llamado solución factible.. Al conjunto S = {x ∈ Rn /Ax = b, x ≥ 0} de todos los puntos factibles se le denomina región factible.. Definición 1.1.2 (Solución óptima) Una solución factible x∗ se llama solución óptima del problema lineal dado en (1.3) si cumple con la condición de:. z = ct x ≤ ct x∗ = z ∗ ; ∀ x ∈ S.. Si el problema lineal es de minimización x∗ se llama solución óptima si: z = ct x ≥ ct x∗ = z ∗ ; ∀ x ∈ S.. TE. Definición 1.1.3 (Solución básica) Considérese el sistema Ax = b y x ≥ 0, donde A es una matriz de orden m × n y b es un m-vector. Supongamos que, rango(A, b) = rango(A) = m.. LI O. Después de un posible rearreglo de las columnas de A, A se puede escribir como: A = [B N ],. B. IB. donde B es una matriz m×m [ ]invertible llamada Base y N es una matriz m×(n−m) llamada x no básica. El punto x = B , donde: xN xB = B −1 b. y xN = 0 se llama solución básica del sistema.. 2. Esta obra ha sido publicada bajo la licencia Creative Commons Reconocimiento-No Comercial-Compartir bajola misma licencia 2.5 Perú. Para ver una copia de dicha licencia, visite http://creativecommons.org/licences/by-nc-sa/2.5/pe/.

(13) Biblioteca Digital - Dirección de Sistemas de Informática y Comunicación - UNT. Definición 1.1.4 (Solución básica factible) Si xB ≥ 0, entonces x se llama solución básica factible del sistema. Si xB > 0, entonces x se llama solución básica factible no degenerada, y si al. A. S. menos una de las componentes de xB es cero, entonces x se llama solución básica factible degenerada.. SI C. Los problemas lineales plantean la búsqueda de una solución factible x∗ de manera que. C Y A M DE A TE C I M EN Á C TI IA C S A S FÍ. ct x∗ sea la mayor posible. Tal búsqueda puede concluirse con uno de los siguientes resultados: i) Problema no factible: Cuando S = ∅, en tal caso el problema lineal no tiene solución.. ii) Problema no acotado: Cuando existe una solución que hace crecer infinitamente el valor de la función objetivo, es decir, para todo M ∈ R siempre existe x ∈ S tal que f (x) > M , en tal caso. máx ct x = +∞, ∀ x ∈ S. iii)Problema óptimo: Cuando existe x∗ que pertenece a S talque ct x ≤ ct x∗ ; ∀ x ∈ S. En este caso. z ∗ = máx { ct x , ∀ x ∈ S }. B. IB. LI O. en S.. TE. y x∗ es la solución óptima global siendo no necesariamente el único punto con esta propiedad. 3. Esta obra ha sido publicada bajo la licencia Creative Commons Reconocimiento-No Comercial-Compartir bajola misma licencia 2.5 Perú. Para ver una copia de dicha licencia, visite http://creativecommons.org/licences/by-nc-sa/2.5/pe/.

(14) Biblioteca Digital - Dirección de Sistemas de Informática y Comunicación - UNT. 1.2.. Geometrı́a de la programación lineal. A partir del planteamiento del problema de programación lineal estudiaremos resultados de análisis convexo, incluyendo los conceptos de conjunto convexo y conjuntos poliédricos.. A. S. La demostración de los teoremas que se presenten en este capı́tulo se encuentran en las. SI C. referencias bibliográficas [1] y [2].. Definición 1.2.1 (Conjunto convexo) Un conjunto S ⊆ Rn se dice que es convexo si el. C Y A M DE A TE C I M EN Á C TI IA C S A S FÍ. segmento de lı́nea que une 2 puntos cualesquiera de S está incluido en el conjunto S, es decir: S es convexo si ∀ x, y ∈ S se tiene que λx + (1 − λ)y ∈ S, ∀ λ ∈ [0, 1]. Ejemplo 1.2.1. El conjunto S = {x ∈ Rn /Ax ≤ b, Am×n , b ∈ Rm } es convexo.. Definición 1.2.2 (Combinación Convexa) Una combinación convexa de los puntos x1 , x2 , x3 ...xk es:. x = α1 x1 + α2 x2 + ... + αk xk. donde: αj ≥ 0, j = 1, ..., k son números reales que satisfacen k ∑. αj = 1.. j=1. TE. Definición 1.2.3 (Hiperplano) Sea H ⊆ Rn talque H = {x/pt x = b0 } se llama Hiperplano. LI O. en Rn , donde p ∈ Rn \ {0} y b0 es un escalar.. B. IB. La dimensión de un hiperplano es (n-1).. Definición 1.2.4 (Semi-Espacios) Los conjuntos: H + = {x ∈ Rn /pt x ≤ b0 , p ∈ Rn \ {0}, b0 ∈ R} H − = {x ∈ Rn /pt x ≥ b0 , p ∈ Rn \ {0}, b0 ∈ R} se denominan Semi-Espacios.. 4. Esta obra ha sido publicada bajo la licencia Creative Commons Reconocimiento-No Comercial-Compartir bajola misma licencia 2.5 Perú. Para ver una copia de dicha licencia, visite http://creativecommons.org/licences/by-nc-sa/2.5/pe/.

(15) Biblioteca Digital - Dirección de Sistemas de Informática y Comunicación - UNT. Observación 1.2.4 Los semi espacios son conjuntos convexos. Un poliedro convexo es la intersección de un número finito de semi espacios cerrados, por. S. ejemplo el conjunto. SI C. es un poliedro convexo.. A. S = {x ∈ Rn /Ax ≤ b, x ≥ 0}. C Y A M DE A TE C I M EN Á C TI IA C S A S FÍ. Definición 1.2.5 (Punto extremo) Sea S ⊂ Rn un conjunto convexo no vacı́o. Un vector x ∈ S es punto extremo si x = λx1 + (1 − λ)x2 con x1 , x2 ∈ S y λ ∈ ⟨0, 1⟩ entonces x = x1 = x2 .. Es decir, un punto extremo es aquel que no puede escribirse como combinación convexa estricta de dos puntos distintos. Ejemplo 1.2.2. 5. 4.5 4. 3.5. No son puntos extremos. TE. 3. B. IB. LI O. 2.5 2. 1.5 1 0.5 0 0. 0.5. 1. 1.5. 2. 2.5. 3. 3.5. 4. 4.5. 5. Figura 1.1: no son extremos. 5. Esta obra ha sido publicada bajo la licencia Creative Commons Reconocimiento-No Comercial-Compartir bajola misma licencia 2.5 Perú. Para ver una copia de dicha licencia, visite http://creativecommons.org/licences/by-nc-sa/2.5/pe/.

(16) Biblioteca Digital - Dirección de Sistemas de Informática y Comunicación - UNT. Definición 1.2.6 El borde de un poliedro convexo S es un segmento de recta que une dos puntos extremos tal que ningún punto en el segmento es punto medio de dos puntos en S que no están en el segmento.. A. S. Definición 1.2.7 (Puntos extremos adyacentes) Dos puntos extremos distintos que tienen. SI C. un borde en común son llamados puntos extremos adyacentes (uno adyacente del otro). Definición 1.2.8 (Hiperplano soporte) Sea S ⊂ Rn no vacı́o y sea x ∈ ∂S. Un hiperplano. C Y A M DE A TE C I M EN Á C TI IA C S A S FÍ. H es llamado hiperplano soporte de S en x, si S ⊂ H + o S ⊂ H − .. Definición 1.2.9 (Cara o Faceta) Sea H un hiperplano soporte de un poliedro S. Entonces F = S ∩ H es llamada cara de S.. Una cara F de un poliedro S es un poliedro en si mismo, por lo tanto la dimensión de F también está definida. Se considerará sólo caras F propias, es decir F ̸= S y F ̸= ∅.. Observación 1.2.9. 1. Todas las caras propias de S están en la frontera de S. 2. Un punto extremo es una cara de dimensión 0. 3. Un borde es una cara de dimensión 1.. 4. Si S es un conjunto convexo y compacto, cualquier punto de S puede representarse como. TE. combinación convexa de sus puntos extremos.. LI O. 5. Si S es un conjunto convexo no-acotado. No es posible representar a cada uno de sus puntos como combinación convexa de sus puntos extremos.. IB. Definición 1.2.10 (Dirección de S) Dado S ⊂ Rn convexo y cerrado. Un vector d ∈ Rn \{0}. B. se llama dirección de S si para cada x ∈ S, x + λd ∈ S, ∀ λ ≥ 0. Dos direcciones d1 , d2 de S son distintas si d1 ̸= αd2 para todo α > 0 Definición 1.2.11 (Dirección extrema) Una dirección d de S se llama dirección extrema si no puede ser escrita como combinación lineal positiva de dos direcciones distintas del conjunto. 6. Esta obra ha sido publicada bajo la licencia Creative Commons Reconocimiento-No Comercial-Compartir bajola misma licencia 2.5 Perú. Para ver una copia de dicha licencia, visite http://creativecommons.org/licences/by-nc-sa/2.5/pe/.

(17) Biblioteca Digital - Dirección de Sistemas de Informática y Comunicación - UNT. Es decir, si d = α1 d1 + α2 d2 para α1 , α2 > 0 entonces d1 = αd2 para algún α > 0. Teorema 1.2.1 (Existencia de puntos extremos) Sea S ̸= ∅ un conjunto poliédrico convexo,. S. entonces S tiene al menos un punto extremo.. .. n m. ) =. n! (n − m)! m!. C Y A M DE A TE C I M EN Á C TI IA C S A S FÍ. (. SI C. por:. A. Corolario 1.2.1 El número de puntos extremos de S es finito y está acotado superiormente. Teorema 1.2.2 (Existencia de direcciones extremas) Sea S ̸= ∅ un conjunto poliédrico convexo. Entonces S tiene al menos una dirección extrema ⇐⇒ S es no-acotado. Teorema 1.2.3 (Caracterización de puntos extremos) Sea S = {x ∈ Rn /Ax = b, x ≥ 0} donde A es una matriz de rango m y b es un vector de m-componentes, x(∈ S)es un ) ( punto xB B −1 b extremo ⇐⇒ A puede descomponerse en la forma A = [B N ] tal que x = = xN 0 donde: B submatriz invertible de orden m×m, N submatriz de orden m×(n-m). Prueba del Teorema:. (. ⇐] Hipótesis: A puede descomponerse en [B N ] talque x =. B −1 b 0. ). , B −1 b ≥ 0. Prueba:. TE. Tesis: x es punto extremo.. x = λx1 + (1 − λ)x2. (1.4). IB. LI O. Sean: x1 , x2 ∈ S ∈ Rn tal que:. B. λ ∈ ⟨0, 1⟩ Sean:. ( ) x11 x1 = x12 ( ) x21 x2 = x22. 7. Esta obra ha sido publicada bajo la licencia Creative Commons Reconocimiento-No Comercial-Compartir bajola misma licencia 2.5 Perú. Para ver una copia de dicha licencia, visite http://creativecommons.org/licences/by-nc-sa/2.5/pe/.

(18) Biblioteca Digital - Dirección de Sistemas de Informática y Comunicación - UNT. x11 , x21 ∈ Rm y x12 , x22 ∈ Rn−m . Reemplazando en (1.4) los valores de los vectores se tiene:. A. S. ( −1 ) ( ) B b λx11 + (1 − λ)x21 = 0 λx12 + (1 − λ)x22. SI C. entonces: λx11 + (1 − λ)x21 = B −1 b. C Y A M DE A TE C I M EN Á C TI IA C S A S FÍ. λx12 + (1 − λ)x22 = 0. (1.5) (1.6). x12 ≥ 0, x22 ≥ 0, 0 < λ < 1. Si alguna componente x12 o x22 es positiva, λx12 + (1 − λ)x22 ≥ 0 y de (1.6) x12 = 0, x22 = 0.. Entonces:. [. x x1 = 11 0. ]. [. x , x2 = 21 0. ]. x1 ∈ S ⇒ x11 ≥ 0. [ ] [ ] x11 Ax1 = b ⇒ B N =b 0 Entonces:. TE. Bx11 = b ⇒ x11 = B −1 b. LI O. Análogamente: x21 = B −1 b. [. x1 =. B −1 b 0. [. ]. , x2 =. B −1 b 0. ]. IB. Entonces:. B. ∴ x1 = x2 = x, es decir, x es punto extremo.. ⇒]. Hipótesis: x es punto extremo. ( −1 ) B b Tesis: A = [B N ] , x = , B −1 b ≥ 0 0 Prueba: x punto extremo de S; x ∈ S ⊂ Rn 8. Esta obra ha sido publicada bajo la licencia Creative Commons Reconocimiento-No Comercial-Compartir bajola misma licencia 2.5 Perú. Para ver una copia de dicha licencia, visite http://creativecommons.org/licences/by-nc-sa/2.5/pe/.

(19) Biblioteca Digital - Dirección de Sistemas de Informática y Comunicación - UNT. Supongamos que: x = (x1 , x2 , · · · , xk , 0, 0, · · · , 0)t ; k ≤ n tal xi > 0, i = 1, k x ∈ S ⇒ Ax = b. S. Puesto que cada componente xi esta asociada con cada columna ai de la matriz A,. SI C. A. se tiene los vectores: a1 , a2 , · · · ak asociado respectivamente con las componentes x1 , x2 , · · · xk . Los vectores: a1 , a2 , · · · ak ∈ Rm son linealmente independientes.. C Y A M DE A TE C I M EN Á C TI IA C S A S FÍ. •) Si k > m; a1 , a2 , · · · ak son linealmente dependientes, entonces, [a1 , a2 , · · · ak ] no es cuadrada, no tiene inversa.. •) Si k ≤ m; supongamos que es linealmente dependientes, es decir, existen λ1 , λ2 , · · · λk no todos ceros talque:. k ∑. λj aj = 0.. j=1. Sea λ = (λ1 , λ2 , · · · , λk , 0, 0, · · · , 0)t ̸= 0 Sean: y = x + αλ ,. z = x − αλ, α ∈ R+. donde α es elegido apropiadamente tal que y ≥ 0 y z ≥ 0 Ay = Ax + αAλ = Ax = b ⇒ y ∈ S De igual manera se verifica que z ∈ S.. TE. 1 1 1 1 y + z = (x + αλ) + (x − αλ) = x 2 2 2 2. esto contradice la hipótesis.. LI O. ∴ Los vectores a1 , a2 , · · · , ak son linealmente independientes.. IB. •) Si k = m; hacemos B = [a1 , a2 , · · · ak ]m×m es invertible y se tiene la tesis.. B. •) Si k < m; puesto que A es de rango m puede tomar (m − k) columnas tales que a1 , a2 , · · · ak , ak+1 , ak+2 · · · am son linealmente independientes y luego se toma B = [a1 , a2 , · · · am ] con ello se tiene la tesis.. ) xB A = [B N ]; x = xN ( ) . x Ax = [B ..N ] B = b xN (. 9. Esta obra ha sido publicada bajo la licencia Creative Commons Reconocimiento-No Comercial-Compartir bajola misma licencia 2.5 Perú. Para ver una copia de dicha licencia, visite http://creativecommons.org/licences/by-nc-sa/2.5/pe/.

(20) Biblioteca Digital - Dirección de Sistemas de Informática y Comunicación - UNT. BxB + N xN = b. Sea xN = 0, entonces BxB = b y xB = B −1 b, es decir:. A SI C. Teorema 1.2.4 (Representación de conjuntos poliédricos). S. ( −1 ) B b x= . 0. Sea S = {x ∈ Rn /Ax = b, x ≥ 0} ̸= ∅ un conjunto poliédrico convexo, donde A es una matriz. C Y A M DE A TE C I M EN Á C TI IA C S A S FÍ. m×n de rango m. Sea x1 , x2 , ..., xk los puntos extremos de S y d1 , d2 , ..., dl las direcciones extremas de S. Entonces, x ∈ S ⇐⇒ x puede escribirse como:. x=. tal que. ∑k j=1. k ∑. λj xj +. j=1. l ∑. µi di. i=1. λj = 1 , λj ≥ 0 , j = 1, ..., k ; µi ≥ 0 , i = 1, ..., l.. Geométricamente, resolver un P.L. siendo S un conjunto poliédrico no vacı́o, equivale a mover el hiperplano H = {x/ct x = b0 } en dirección del vector gradiente c tanto como sea posible pero verificando que H ∩ S ̸= ∅. Notemos que cuanto más avanza el hiperplano mayor es su correspondiente b0 .. Obviamente la resolución gráfica en el plano R2 se puede realizar fácilmente; pero cuando el número de variables, n, es considerablemente mayor que 2 es imposible dibujar sobre un. TE. papel al conjunto factible para luego encontrar un óptimo(si exı́ste). Por lo tanto se precisa. LI O. de un método algebraico que permita resolver problemas lineales con muchas variables y/o. IB. restricciones.. B. Teorema 1.2.5 (Condición de optimalidad del problema lineal) Considere el problema lineal (1.3), si el conjunto factible es no vacı́o, sean x1 , x2 , ..., xk los puntos extremos y d1 , d2 , ..., dl las direcciones extremas del conjunto factible. Una condición suficiente y necesaria para la existencia de una solución óptima finita es que ct dj ≤ 0, ∀j = 1, l. Además, si este es el caso, entonces el punto máximo se determina seleccionando aquel que da el máximo valor objetivo entre los puntos extremos. 10. Esta obra ha sido publicada bajo la licencia Creative Commons Reconocimiento-No Comercial-Compartir bajola misma licencia 2.5 Perú. Para ver una copia de dicha licencia, visite http://creativecommons.org/licences/by-nc-sa/2.5/pe/.

(21) Biblioteca Digital - Dirección de Sistemas de Informática y Comunicación - UNT. El teorema anterior muestra que la resolución de un P.L. se obtiene evaluando los k puntos extremos y sus l direcciones extremas. Aunque en teorı́a el número de puntos extremos k y el de direcciones extremas l es finito, la. S. búsqueda de la solución se puede convertir en una tarea que requiere tiempo de cálculo muy. A. prolongado debido a la cantidad de puntos k y l.. SI C. Sea el sistema Ax = b, x ≥ 0, Am×n y b ∈ Rn . Supongamos que ran(A) = m, m < n. Después de un posible rearreglo de las columnas de A se tiene A = [B N ], y la descomposición de x en:. ). C Y A M DE A TE C I M EN Á C TI IA C S A S FÍ. (. x=. Ası́ Ax = b se transforma en:. [. xB xN. .. [ ] ] xB BN =b xN. BxB + N xN = b.. (1.7). Como B es invertible, al multiplicar (1.7) por la inversa de la matriz B se obtiene: xB + B −1 N xN = B −1 b. xB = B −1 b − (B −1 N )xN .. entonces. (. x=. xB xN. (1.8). ). .. LI O. TE. Para cualquier vector xN y xB dado por (1.8) satisface ( ) el sistema Ax = b y particularmente xB también satisface el sistema Ax = b. cuando xN = 0 y xB = B −1 b, en este caso x = 0. IB. Por otro lado, el conjunto S por ser un conjunto poliédrico posee por lo menos un punto. extremo. ¿Existe alguna relación entre el concepto geométrico de punto extremo y el con-. B. cepto algebraico de solución básica factible?. La respuesta la da el siguiente teorema, cuya demostración esta en [1] y [2]: Teorema 1.2.6 Dado el problema lineal (1.3), ran(A) = m < n y S = {x ∈ Rn /Ax = b, x ≥ 0}. Entonces x ∈ S es un punto extremo de S ⇐⇒ x es una solución básica factible. 11. Esta obra ha sido publicada bajo la licencia Creative Commons Reconocimiento-No Comercial-Compartir bajola misma licencia 2.5 Perú. Para ver una copia de dicha licencia, visite http://creativecommons.org/licences/by-nc-sa/2.5/pe/.

(22) Biblioteca Digital - Dirección de Sistemas de Informática y Comunicación - UNT. XSi el conjunto factible S es acotado, entonces el problema (1.3) posee un máximo en uno de los puntos extremos de S.. S. XSi el problema (1.3) posee una solución básica factible máxima , entonces posee una solu-. SI C. A. ción básica factible.. XSi el máximo del problema (1.3) se encuentra en más de un punto extremo del conjunto. C Y A M DE A TE C I M EN Á C TI IA C S A S FÍ. factible S, entonces también es máximo cualquier punto que sea combinación convexa de dichos puntos extremos.. Luego, como los puntos extremos pueden contarse mediante la enumeración de todas las soluciones básicas factibles, se puede pensar simplemente en listar todas las soluciones básicas factibles y elegir aquella con el máximo valor objetivo. Sin embargo, lo anterior no es satisfactorio debido a las siguientes razones:. (. 1) El número de soluciones básicas factible está acotado por. n m. ) , pero aún este es un. número grande para valores moderados de m y n.. 2) Este enfoque simple no explica si el problema tiene una solución no acotada, lo cual puede. TE. ocurrir si la región factible es no acotada.. LI O. 3) Si se aplica el procedimiento anterior en una región factible vacı́a, solo después de que todas las formas posibles de extraer m de las n- columnas de A no hayan producido una solución básica factible, se descubrirá que la región es vacı́a debido a que B no tiene inversa 0.. B. IB. o bien porque B −1 b. Para reducir dichos cálculos el Dr. George Dantzig (1942) halló un método que permite resolver un problema lineal sin necesidad de analizar explı́citamente el valor de la función objetivo en cada punto extremo. Su método se conoce con el nombre de método Simplex.. 12. Esta obra ha sido publicada bajo la licencia Creative Commons Reconocimiento-No Comercial-Compartir bajola misma licencia 2.5 Perú. Para ver una copia de dicha licencia, visite http://creativecommons.org/licences/by-nc-sa/2.5/pe/.

(23) Biblioteca Digital - Dirección de Sistemas de Informática y Comunicación - UNT. 1.3.. Método simplex de la programación lineal. El método simplex es un procedimiento algebraico que resuelve problemas de programación lineal, moviéndose de un punto extremo a otro del poliedro definido por la región factible,. A. S. mejorando cada vez (o por lo menos no empeorando) el objetivo.. SI C. Mediante el método simplex podemos, una vez que se haya determinado cualquier solución básica factible(punto extremo), obtener una solución básica óptima en un número finito de. 1.3.1.. C Y A M DE A TE C I M EN Á C TI IA C S A S FÍ. pasos.. Método simplex. El método simplex es un procedimiento que se basa en reconocer la optimalidad de un punto extremo factible sin tener necesariamente que enumerar todos los puntos extremos o soluciones básicas factibles. Se considera el siguiente problema lineal:   . (P L). máx ct x. s.a: Ax = b   x ≥0. donde: A es una matriz m × n, de rango m (m < n). Luego existe un número máximo de columnas linealmente independientes, tal que A se puede escribir en la forma [B N ], donde B. TE. es una matriz m×m que contiene a las columnas linealmente independientes de A por lo tanto B es invertible y se llama matriz básica asociada a A, y N es una matriz m × (n − m) llamada. LI O. no básica. Cualquier vector aj en A que no esté en B, puede escribirse como combinación. B. IB. lineal de los vectores columnas de B. Es decir, dado aj ∈ / B, este puede escribirse como: aj =. m ∑. ykj ak , j = (m + 1), n. k=1. donde: ak ∈ B, k = 1, m.. 13. Esta obra ha sido publicada bajo la licencia Creative Commons Reconocimiento-No Comercial-Compartir bajola misma licencia 2.5 Perú. Para ver una copia de dicha licencia, visite http://creativecommons.org/licences/by-nc-sa/2.5/pe/.

(24) Biblioteca Digital - Dirección de Sistemas de Informática y Comunicación - UNT. . Si se hace. y1j y2j .. ..   Yj =  .     . (1.9). S. ymj. A. se tiene aj = BYj , j = (m + 1), n y como B es invertible se tiene. SI C. Yj = B −1 aj .. donde:. C Y A M DE A TE C I M EN Á C TI IA C S A S FÍ. Se considera ahora las restricciones originales del problema Ax = b se tiene que ( ) x [B N ] B = b, xN. . a11  .. A = [B N ] =  .. ··· .... am1 · · ·. a1m .. .. a1(m+1) .. .. ··· .... (1.10). (1.11).  a1n ..  = (a · · · a a 1 m m+1 · · · an ) . . amm am(m+1) · · · amn   x1  ..  .  ( )    xB  xm  x= =  xN xm+1   .   ..  xn. LI O. TE. Entonces desarrollando (1.11) se tiene:. BxB + N xN = b.. (1.12). B. IB. Al usar la definición de solución básica factible se tiene xB ≥ 0 xN = 0. y (1.12) se convierte en: BxB = b. 14. Esta obra ha sido publicada bajo la licencia Creative Commons Reconocimiento-No Comercial-Compartir bajola misma licencia 2.5 Perú. Para ver una copia de dicha licencia, visite http://creativecommons.org/licences/by-nc-sa/2.5/pe/.

(25) Biblioteca Digital - Dirección de Sistemas de Informática y Comunicación - UNT. de donde se obtiene:. A. SI C. ( ) xB luego x = es una solución básica de Ax = b. 0 El vector xB se llama vector básico y al xN(vector ) no básico. cB De manera similar el vector de costos: c = cN ( )t ct = cB1 cB2 · · · cBm cBm+1 · · · cBn ,. S. xB = B −1 b,. C Y A M DE A TE C I M EN Á C TI IA C S A S FÍ. y la función objetivo puede escribirse como:. z = ct x ( ) ( ) xB = cB cN xN = cB xB + cN xN = cB xB. pues xN = 0.. A continuación se define el escalar zj como. zj = cB Yj. (1.13). LI O. TE. otra manera de escribir (1.13) es. zj =. m ∑. cBk Ykj. k=1. Suponiendo que se inicia con una solución básica factible dada por BxB = b.. B. IB. Esta solución corresponde a un punto extremo del conjunto factible.. Si este punto extremo no es óptimo, se debe mover a un punto extremo vecino, con el objetivo de mejorar la solución de la función objetivo. El movimiento a un punto vecino (con un valor de la función objetivo mejor al ya obtenido) se hace con el objeto de minimizar el número de iteraciones del método.. 15. Esta obra ha sido publicada bajo la licencia Creative Commons Reconocimiento-No Comercial-Compartir bajola misma licencia 2.5 Perú. Para ver una copia de dicha licencia, visite http://creativecommons.org/licences/by-nc-sa/2.5/pe/.

(26) Biblioteca Digital - Dirección de Sistemas de Informática y Comunicación - UNT. El cambio a este punto vecino se hace fácilmente intercambiando un vector de la base B, es decir hay que sacar un vector de B y reemplazarlo por otro de N .. S. G.Dantzing fijó la teorı́a que justifica las reglas de cambio que garantiza el mejor incremento. SI C. A. en el valor de la función objetivo.. A continuación veremos 4 proposiciones para el método simplex y sus respectivas demostra-. C Y A M DE A TE C I M EN Á C TI IA C S A S FÍ. ciones se encuentran en [1] y [2].. Sea J el conjunto de ı́ndices de las columnas de N , es decir, si N = (am+1 am+2 ...an ), J = {(m + 1), ...n}.. Por otra parte, cualquier columna de N puede expresarse como combinación lineal de los vectores de B, es decir. aj = y1j a1 + ... + ymj am , j ∈ J. Mejoramiento de una solución básica factible. LI O. TE. Sea B = ( (a1 , a)2 , · · ( · , am)) una básica, donde: ai ∈ Rm , i = 1, ..., m ( matriz ) xB xB B −1 b sea x = = = una solución básica factible del problema (P.L.), sea aj xN 0 0 una columna de la matriz N tal que aj =. m ∑. ykj ak , j ∈ J. k=1. con algún ykj > 0 y. B. IB.  x′1  ..   .   ′   xr   .   .  ′  .  Entonces: x = ′ ,  xm  x′   m+1   .   ..  x′n . xB xBr = mı́n { k : ykl > 0} k=1,...,m ykl yrl. 16. Esta obra ha sido publicada bajo la licencia Creative Commons Reconocimiento-No Comercial-Compartir bajola misma licencia 2.5 Perú. Para ver una copia de dicha licencia, visite http://creativecommons.org/licences/by-nc-sa/2.5/pe/.

(27) Biblioteca Digital - Dirección de Sistemas de Informática y Comunicación - UNT. donde: ykj , k ̸= r , yrj ̸= 0 , k = 1, ..., m ; j ∈ J yrj. yrj ̸= 0,. yrj ̸= 0. S. ′. xk = 0,. xBk , yrj. k = (m + 1), ..., n. es también una solución básica factible del problema (P.L.).. A. ′. xr =. SI C. ′. xk = xBk − xBk. C Y A M DE A TE C I M EN Á C TI IA C S A S FÍ. Proposición 1.3.1 (Variación en el valor de la función objetivo) Sean x y x′ las dos soluciones básicas factibles de la proposición anterior, z = ct x y z ′ = ct x′ los valores de la función objetivo en ellas y sea zj = cB1 y1j + · · · + cBm ymj , para j ∈ J conjunto actual de ı́ndices de las variables no básicas. Entonces. z ′ = (zj − cj ). xBr − z, yrj ̸= 0; j ∈ J. yrj. (1.14). Al observar (1.14) se nota que el nuevo valor de la función objetivo z ′ es mayor que el valor anterior de la función objetivo z, si y sólo si: (zj − cj ). xBr > 0 , yrj ̸= 0. yrj. zj − cj recibe el nombre de costos reducidos, como x′ ≥ 0, se deduce que el término. LI O. TE. por lo que. z ′ > z ⇐⇒ (zj − cj ) > 0.. xBr yrj. ≥ 0,. (1.15). IB. La mayor reducción z ′ + z se conseguirá si se elige a zj − cj con j ∈ J(no básico), negativo y el menor, es decir, el mejor aumento en el valor de la función objetivo se logrará cuando se. B. seleccione aquel aj ∈ / B que entre en la nueva base B ′ , cuyo (zj − cj ) sea el menor negativo. Si ninguna columna j satisface la condición(zj − cj ) > 0 se entiende que la función objetivo aumenta con cualquier intercambio de columna. Es decir en este caso se habrı́a obtenido el punto máximo.. 17. Esta obra ha sido publicada bajo la licencia Creative Commons Reconocimiento-No Comercial-Compartir bajola misma licencia 2.5 Perú. Para ver una copia de dicha licencia, visite http://creativecommons.org/licences/by-nc-sa/2.5/pe/.

(28) Biblioteca Digital - Dirección de Sistemas de Informática y Comunicación - UNT. Proposición 1.3.2 Si x es una solución básica factible del problema (1.3) y se verifica que (zj − cj ) ≥ 0 ∀j ∈ J, entonces x es una solución básica factible máxima. Proposición 1.3.3 Sea x una solución básica factible no degenerada máxima del problema. A. S. (1.3). Si para algún j ∈ J, (zj − cj ) = 0, entonces existirán infinitas soluciones máximas.. SI C. Proposición 1.3.4 Sea x una solución básica factible del problema (1.3). Si para algún j ∈ J, (zj − cj ) > 0 y el vector yj ≤ 0, entonces la solución del problema (1.3) es ilimitada,. C Y A M DE A TE C I M EN Á C TI IA C S A S FÍ. es decir, es un problema no acotado superiormente. ALGORITMO SIMPLEX: Sea el problema lineal:.   . P.L.. y su correspondiente forma estándar   . máx ct x. s.a: Ax ≤ b   x ≥0. máx ct x. s.a: Ax + Ix′ = b   x ≥0. TE. donde: b ≥ 0, A ∈ Rm×n , es decir el problema inicial tiene n variables de decisión y m. LI O. restricciones, luego la forma estándar posee (m + n)-variables. Es evidente que la matriz de coeficientes de la forma estándar es de rango m, porque la matriz asociada con las variables. IB. de holgura es la matriz identidad.. B. El algoritmo Simplex para resolver el problema estándar es el siguiente:. Paso Inicial: Seleccionemos como una base inicial la matriz formada por las columnas asociadas a las variables de holgura, es decir, se considera como básica inicial a las variables de ) ( variable xB donde: JB = {n + 1, n + 2 · · · n + m} holgura, entonces B = I y N = A entonces x = xN 18. Esta obra ha sido publicada bajo la licencia Creative Commons Reconocimiento-No Comercial-Compartir bajola misma licencia 2.5 Perú. Para ver una copia de dicha licencia, visite http://creativecommons.org/licences/by-nc-sa/2.5/pe/.

(29) Biblioteca Digital - Dirección de Sistemas de Informática y Comunicación - UNT. conjunto de ı́ndices que identifican a las columnas de la base B. JN = {1, 2, · · · , n} conjunto de ı́ndices que identifican a las columnas que no están en la base B (es decir ı́ndices de las. S. variables no básicas).. A. Paso Principal. SI C. 1) Resolver el sistema BxB = b (con solución única xB = B −1 b = b). Sea xB = b, xN = 0 y z = cB xB .. C Y A M DE A TE C I M EN Á C TI IA C S A S FÍ. 2) Resolver el sistema wB = cB (con solución única w = cB B −1 ). Para todas las variables no básicas calcúlese zj − cj = waj − cj . Sea. zk − ck = mı́n{zj − cj } j∈J. donde J es el conjunto de ı́ndices asociado con las variables no básicas. Si zk − ck ≥ 0, entonces el proceso se detiene con la solución básica factible presente como una solución óptima. En caso contrario, se sigue al paso 3.. 3) Resolver el sistema Byk = ak (con la solución única yk = B −1 ak ). Si yk ≤ 0, entonces el proceso se detiene, la solución óptima es no acotada a lo largo del rayo: {[ ] [ ] } −yk b + xk : xk ≥ 0 ek 0. paso 4.. 0, se sigue al. TE. donde ek es un vector de ceros excepto por un 1 en la k-ésima posición. Si yk. 4) Ahora, xk entra a la base y la variable de bloqueo xBr sale de ella y el ı́ndice r se determina. IB. LI O. mediante el siguiente criterio llamado, de la razón mı́nima: { } br bi : yik > 0 = mı́n yrk 1 ≤ i ≤ m yik. B. Se modifica la base B donde ak reemplaza a aBr , el conjunto J de ı́ndices, y se repite el paso. 1.. 1.3.2.. Tabla simplex. Ahora veamos una forma mas cómoda de aplicar la metodologı́a anterior. La idea es exactamente la misma que la descrita anteriormente, pero ahora sin tener que arrastrar siempre con 19. Esta obra ha sido publicada bajo la licencia Creative Commons Reconocimiento-No Comercial-Compartir bajola misma licencia 2.5 Perú. Para ver una copia de dicha licencia, visite http://creativecommons.org/licences/by-nc-sa/2.5/pe/.

(30) Biblioteca Digital - Dirección de Sistemas de Informática y Comunicación - UNT. los nombres de las variables, sino sólo con los valores de los coeficientes. Obviamente es muy importante una apropiada ordenación de los mismos en un formato de tabla, la que recibe el. S. nombre de Tabla Simplex, y que pasamos a describir.. máx ct x. C Y A M DE A TE C I M EN Á C TI IA C S A S FÍ. s.a: Ax = b   x ≥0,. SI C.   . A. Dado el problema lineal:. donde: b ≥ 0, A ∈ Rm×n , este mismo puede reescribirse de la siguiente manera: z − c1 x1 − c2 x2 − · · · − cn xn = 0. a11 x1 + a12 x2 + · · · a1n xn + xn+1 = b1 a21 x1 + a22 x2 + · · · a2n xn + xn+2 = b2 .. .. am1 x1 + am2 x2 + · · · amn xn + xn+m = bm x1 , x2 , · · · , xn , xn+1 , · · · , xn+m ≥ 0. {z } | v. de holgura. Este paso es necesario, pues la adición de variables de holgura crea la primera base B, que. TE. es la identidad.. LI O. Esto, a su vez, genera el primer punto extremo de la región factible cuyas coordenadas están. B. IB. dadas por el vector b. v. originales v.de holgura No z x1 · · · xn xn+1 · · · xn+m sol. 1 xB1 y11 · · · y1n y1(n+1) · · · y1(n+m) b1 2 xB2 y21 · · · y2n y2(n+1) · · · y2(n+m) b2 .. .. .. . . . m xBm ym1 · · · ymn ym(n+1) · · · ym(n+m) bm 0 1 z1 − c1 · · · zn − cn zn+1 − cn+1 · · · zn+m − cn+m z0. A está tabla se le demoninará Tabla Simplex y se reduce a su forma equivalente que presentamos a continuación: 20. Esta obra ha sido publicada bajo la licencia Creative Commons Reconocimiento-No Comercial-Compartir bajola misma licencia 2.5 Perú. Para ver una copia de dicha licencia, visite http://creativecommons.org/licences/by-nc-sa/2.5/pe/.

(31) Biblioteca Digital - Dirección de Sistemas de Informática y Comunicación - UNT. SI C. A. S. No z x1 x2 · · · xn xn+1 xn+2 · · · xn+m sol. 1 2 xB b .. v.b. B −1 N I Valores de las . m variables básicas −1 −1 0 z zj − cj = cB B Nj − cj cB B A j = 0 z = cB xB = cB B −1 b Costo Costos de las valor de z relativos variables básicas por lo tanto, de esta última tabla se obtiene directamente toda la información necesaria para. C Y A M DE A TE C I M EN Á C TI IA C S A S FÍ. desarrollar el método iterativo, en la tabla se puede determinar la variable que va entrar a la base y la variable que va ha a salir de la misma. Llegando a este punto surge la interrogante de como actualizar la tabla. La respuesta es buscar: • la matriz identidad bajo las variables básicas, y. • los zj − cj (costos relativos) nulos para las variables básicas,. para esto se dispone en la tabla de las mismas operaciones elementales por filas que se tiene en los sistemas de ecuaciones lineales.. Dado que la nueva base tiene las mismas variables básicas salvo una, supongamos en la posición (r, h) entonces la modificación necesaria recibe el nombre de operación de pivotación. TE. y consiste en hacer aparecer:. LI O. • un 1 en la posición (r, h), para lo cual se divide toda la fila r entre yrh ; • ceros en las posiciones (s, h) con s = {1, ..., m, (m + 1)} − {r}, para lo cual se le resta a la. IB. fila s la nueva fila r multiplicada por ysh .. B. Para aplicar la tabla simplex es preciso disponer de una solución básica factible inicial, siendo además preferible que esta solución de partida esté asociada a la submatriz B = Im de A. Entre las técnicas más mencionadas para hallar una solución básica factible inicial se cuenta con el método de dos fases y con el método de penalización.. 21. Esta obra ha sido publicada bajo la licencia Creative Commons Reconocimiento-No Comercial-Compartir bajola misma licencia 2.5 Perú. Para ver una copia de dicha licencia, visite http://creativecommons.org/licences/by-nc-sa/2.5/pe/.

(32) Biblioteca Digital - Dirección de Sistemas de Informática y Comunicación - UNT. 1.4.. Dualidad de la programación lineal. El algoritmo simplex que hemos visto para resolver el problema de programación lineal, tambien se llama algoritmo simplex primal, no siempre facilita la reoptimización de la. A. S. tabla óptima, siendo muy útil disponer de una nueva forma de afrontar el problema de. SI C. programación lineal. Esta nueva forma se conoce como Dualidad y de ella se deduce el llamado método simplex dual. El método simplex primal busca un punto que pertenece a. C Y A M DE A TE C I M EN Á C TI IA C S A S FÍ. un poliedro convexo desde dentro del mismo(vértices del poliedro), mientras que la dualidad ofrece una búsqueda de un punto óptimo desde fuera del poliedro, determinando el mı́nimo valor de la función de costos que sea superior al costo de cualquier punto de ese poliedro convexo.. 1.4.1.. Problema dual. Asociado a cualquier problema lineal. P.   . máx ct x. s.a: Ax ≤ b   x ≥0. donde c ∈ Rn , A es una matriz de m × n con ran(A) = m < n y b ∈ Rm , que se denomina problema primal, existe un problema lineal llamado dual el cual consiste en encontrar un. LI O. TE. vector u ∈ Rm que minimice la función lineal g(u) = ut b, sujeta a la condición ut A ≥ ct. B. IB. y las variables ui ≥ 0, es decir:. 1.4.2..    D. min ut b. s.a: ut A ≥ c   u ≥0. Relación entre el problema primal y dual. A continuación daremos algunas proposiciones, un corolario y un teorema que establecen la relación entre el problema primal y dual. La demostración de estas proposiciones,teorema y corolario se pueden ver en [1] y [2]. 22. Esta obra ha sido publicada bajo la licencia Creative Commons Reconocimiento-No Comercial-Compartir bajola misma licencia 2.5 Perú. Para ver una copia de dicha licencia, visite http://creativecommons.org/licences/by-nc-sa/2.5/pe/.

(33) Biblioteca Digital - Dirección de Sistemas de Informática y Comunicación - UNT. Proposición 1.4.1 La siguiente tabla muestra equivalencias entre las restricciones y varia-. A SI C. C Y A M DE A TE C I M EN Á C TI IA C S A S FÍ. Primal (máx) Dual (mı́n) Ax ≤ b u≥0 Ax ≥ b u≤0 Ax = b u libre x≥0 ut A ≥ c x≤0 ut A ≤ c x libre ut A = c. S. bles de la pareja primal - dual:. Corolario 1.4.1 El problema dual de un problema dual coincide con el problema primal. De lo expuesto hasta ahora es también posible extraer resultados sobre condiciones de optimalidad.. Proposición 1.4.2 (Dualidad Débil) Sea el problema primal   . P. máx ct x. s.a: Ax ≤ b   x ≥0. y su problema dual. TE.   . D. mı́n ut b. s.a: ut A ≥ c   u ≥0. LI O. Entonces ut b ≤ ct x para todo x solución del problema primal y para todo u solución del dual.. IB. Proposición 1.4.3 (Dualidad Fuerte) Si el problema (P) tiene solución óptima, entonces su dual también tiene solución óptima y ambos valores objetivos óptimos coinciden, es decir:. B. máx f (x) = mı́n g(u). Teorema 1.4.1 Sea el problema primal (P ) y consideremos su problema dual (D). Los resultados de resolver ambos problemas se relacionan como sigue: • primal óptimo ⇐⇒ dual óptimo, ambos tienen el mismo valor objetivo óptimo. • primal no acotado =⇒ dual no factible. 23. Esta obra ha sido publicada bajo la licencia Creative Commons Reconocimiento-No Comercial-Compartir bajola misma licencia 2.5 Perú. Para ver una copia de dicha licencia, visite http://creativecommons.org/licences/by-nc-sa/2.5/pe/.

(34) Biblioteca Digital - Dirección de Sistemas de Informática y Comunicación - UNT. • dual no acotado =⇒ primal no factible. • primal no factible =⇒ dual no factible o no acotado. • dual no factible =⇒ primal no factible o no acotado.. S. Método dual simplex. A. 1.4.3.. SI C. Ahora veremos el Método Dual Simplex, que resuelve el problema dual directamente sobre. C Y A M DE A TE C I M EN Á C TI IA C S A S FÍ. la tabla simplex (primal).. Interpretación de la factibilidad dual sobre la tabla simplex Consideremos el siguiente problema de programación lineal:   . P. máx ct x. s.a: Ax ≤ b   x ≥0. sea B una base que no necesariamente es factible, y considérese la siguiente tabla: o. v.originales x1 · · · xn y11 · · · y1n y21 · · · y2n. v.de holgura xn+1 · · · xn+m y1(n+1) · · · y1(n+m) y2(n+1) · · · y2(n+m). ··· ···. ··· ···. z xB1 xB2 .. .. m 0. xBm ym1 1 z1 − c1. TE. N 1 2 .. .. ymn ym(n+1) zn − cn zn+1 − cn+1. ym(n+m) zn+m − cn+m. sol. b1 b2 .. . bm z0. LI O. La tabla presenta una solución factible primal si b ≥ 0, además la tabla es óptima si zj −cj ≥ 0 para j = 1, (n + m). Sea u = cB B −1 , la condición de óptimalidad primal zj − cj ≥ 0 lo que. IB. significa que cB B −1 Aj − cj ≥ 0 para todo j = 1, (n + m) que es equivalente a ut Aj ≤ cj que es precisamente la factibilidad del problema dual.. B. Para la tabla simplex óptima con base B y al tomar u∗ = cB B −1 , el valor objetivo primal óptimo es z ∗ = cB B −1 b = u∗ b, entonces la solución u∗ = cB B −1 es óptimo en el problema dual.. 24. Esta obra ha sido publicada bajo la licencia Creative Commons Reconocimiento-No Comercial-Compartir bajola misma licencia 2.5 Perú. Para ver una copia de dicha licencia, visite http://creativecommons.org/licences/by-nc-sa/2.5/pe/.

(35) Biblioteca Digital - Dirección de Sistemas de Informática y Comunicación - UNT. ALGORITMO DUAL SIMPLEX PASO INICIAL:. S. Encontrar una base B del primal tal que zj − cj ≥ 0 para todo j = 1, (n + m).. A. PASO PRINCIPAL:. el renglón pivot r con br < 0, donde. C Y A M DE A TE C I M EN Á C TI IA C S A S FÍ. xB[r] = mı́n {xBi }. SI C. 1.) Si b ≥ 0, el proceso termina; la solución presente es óptima. En caso contrario, seleccionese. 1≤i≤m. 2.) Si yrj ≥ 0 para todo j = 1, (n + m), el proceso termina con la conclusión de que el problema dual es no acotado y el problema primal es no factible. En caso contrario, seleccione la columana pivot k mediante la siguiente prueba { } zk − ck zj − cj = mı́n : yrj < 0 yrk yrj j=1,n. B. IB. LI O. TE. 3.) Pivotéese en yrk y regrese al paso 1.. 25. Esta obra ha sido publicada bajo la licencia Creative Commons Reconocimiento-No Comercial-Compartir bajola misma licencia 2.5 Perú. Para ver una copia de dicha licencia, visite http://creativecommons.org/licences/by-nc-sa/2.5/pe/.

(36) Biblioteca Digital - Dirección de Sistemas de Informática y Comunicación - UNT. SI C. A. S. Capı́tulo 2. 2.1.. C Y A M DE A TE C I M EN Á C TI IA C S A S FÍ. Problemas de optimización combinatorial Formulación. La optimización combinatoria es una parte de la Programación Matemática que estudia problemas del tipo: máx {f (x) : x ∈ S} siendo |S| < ∞, es decir, la optimización combinatoria trata de desarrollar algoritmos para afrontar problemas de optimización caracterizados por tener un número finito de soluciones factibles. Frecuentemente estos problemas se pueden formular como problemas enteros o binarios y aunque por definición puede parecer que la simple enumeración de las soluciones en S es suficiente para resolverlos, esta idea no es realizable en la práctica, porque el número |S| puede ser exageradamente grande. Por otra parte,. TE. particularidades del conjunto S permiten en ocasiones diseñar algoritmos efectivos que permiten determinar alguna solución del problema.. LI O. El siguiente es un problema genérico de optimización combinatoria: Sea N = {1, 2, ..., n} un ∑ conjunto finito y sea c = (c1 , c2 , ..., cn ) un n-vector. Para F ⊆ N , definamos c(F ) = j∈F cj .. IB. Supongamos que dado una colección de subconjuntos G de N . El problema de optimización. B. combinatoria es: (P.C.) máx {c(F ) : F ∈ G}. (2.1). Ahora, veamos como pasar de un problema combinatorio a un problema lineal entero, consideremos el problema de recubrimiento (the set covering Problem): dado por un determinado número de regiones, el problema es decidir donde instalar un con-. 26. Esta obra ha sido publicada bajo la licencia Creative Commons Reconocimiento-No Comercial-Compartir bajola misma licencia 2.5 Perú. Para ver una copia de dicha licencia, visite http://creativecommons.org/licences/by-nc-sa/2.5/pe/.

(37) Biblioteca Digital - Dirección de Sistemas de Informática y Comunicación - UNT. junto de centros de servicio de emergencia. El costo de instalar un centro de servicio y las regiones que pueden recibir el servicio es conocido. Por ejemplo, si los centro son estaciones de bomberos, una estación puede acudir a una región para la cual un camión de bomberos. A. centros de servicio de costo mı́nimo a fin de que cada región este cubierta.. S. puede llegar a la escena de un incendio dentro 8 minutos. La meta es escoger un conjunto de. SI C. Primero formulemos esto como un problema de optimización combinatoria. Sea M = {1, ..., m} el conjunto de regiones y N = {1, ..., n} el posibles conjunto de centros. Sea Sj ⊆ M las re-. el problema:. C Y A M DE A TE C I M EN Á C TI IA C S A S FÍ. giones que puedan ser atendidas por centros j ∈ N , y cj el costo de instalación. Obteniéndose minT ⊆N {. ∑. j∈T. cj :. ∪. j∈T. Sj = M } .. (2.2). Ahora lo formularemos como un problema entero binario. Para facilitar la descripción, primero construimos una matriz A de incidencia de 0-1, tal que aij = 1, si i ∈ Sj , y aij = 0 en otros casos.. X Definición de las variables.. xj = 1 si el centro j es seleccionado y xj = 0 en otros caso. X Definición de las restricciones.. LI O. TE. Al menos un centro de servicio debe abastecer la región i: ∑n. j=1. aij xj ≥ 1; para i = 1, ..., m. xj ∈ {0, 1}; para j = 1, ..., n. B. IB. Las variables son 0 − 1:. X Definición de la función objetivo: El costo total es minimizar: min. ∑n. j=1 cj xj. (2.3). 27. Esta obra ha sido publicada bajo la licencia Creative Commons Reconocimiento-No Comercial-Compartir bajola misma licencia 2.5 Perú. Para ver una copia de dicha licencia, visite http://creativecommons.org/licences/by-nc-sa/2.5/pe/.

(38) Biblioteca Digital - Dirección de Sistemas de Informática y Comunicación - UNT. Entonces el problema queda expresado de la siguiente forma [6]:  ∑n  min ∑j=1 cj xj n s.a: j=1 aij xj ≥ 1; para i = 1, ..., m  xj ∈ {0, 1}; para j = 1, ..., n.. S. (2.4). A. Por lo tanto los problemas de programación lineal entera (P.L.E.) son una clase especial. SI C. de la optimización combinatoria, consistente en la optimización de una función objetivo lineal sujeta a restricciones lineales donde todas las variables se restringen a valores enteros. C Y A M DE A TE C I M EN Á C TI IA C S A S FÍ. no-negativos. En el caso que algunas variables sean continuas no-negativas se dice que el problema es de programación entera mixta (P.E.M) o cuando las variables sólo toman valor {0 ó 1} se dice que el problema es de programación entera binaria (P.E.B). Las formulaciones en cada caso son:.   . P.L.E.. máx ct x. s.a: Ax ≤ b   x ∈ Zn+. (2.5). LI O. TE. donde Am×n , b ∈ Rm , c ∈ Rn , x ∈ Zn+ ..   . P.E.M.. máx ct x + ht y. s.a: Ax + Dy ≤ b   x ∈ Zn , y ∈ Rp + +. (2.6). B. IB. donde Am×n , Dm×p , b ∈ Rm , c ∈ Rn , h ∈ Rp , x ∈ Zn+ , y ∈ Rp+ .    P.E.B.. máx ct x. s.a: Ax ≤ b   x ∈ {0, 1}n. (2.7). donde Am×n , b ∈ Rm , c ∈ Rn .. 28. Esta obra ha sido publicada bajo la licencia Creative Commons Reconocimiento-No Comercial-Compartir bajola misma licencia 2.5 Perú. Para ver una copia de dicha licencia, visite http://creativecommons.org/licences/by-nc-sa/2.5/pe/.

(39) Biblioteca Digital - Dirección de Sistemas de Informática y Comunicación - UNT. Definición 2.1.1 (Conjunto Factible) Dado el problema de P.L.E. de la forma (2.5). El conjunto factible S = {x ∈ Zn+ : Ax ≤ b} del P.L.E. es la intersección de un poliedro acotado P con Zn , donde:. S = P ∩ Zn+ .. C Y A M DE A TE C I M EN Á C TI IA C S A S FÍ. Luego el problema (2.5) puede expresarse como:  t   máx c x P.L.E.   s.a: x ∈ S. SI C. Por lo tanto. A. S. P = {x ∈ Rn /Ax ≤ b, x ≥ 0}.. (2.8). Definición 2.1.2 Un problema (P.R) z P.R. = máx {f (x) : x ∈ P ⊆ Rn } se llama una relajación del (P.L.E.) z = máx {ct x : x ∈ S ⊆ Rn } si: i.) S ⊆ P .. ii.) f (x) ≥ ct x,. ∀x ∈ S.. Definición 2.1.3 (Relajación de un P.L.E.) Se llama relajación lineal o relajación continua de P.L.E. (2.5) al problema lineal:. LI O. TE.   . P.R.. máx ct x. s.a: Ax ≤ b   x ≥0.. (2.9). Sea P = {x ∈ Rn /Ax ≤ b, x ≥ 0} el poliedro asociado a la relajación lineal; siempre se S ⊆ conv(S) ⊆ P.. B. IB. verifica que S ⊂ P y. Observaciones: 1.- Cuando conv(S) = P el problema queda resuelto como uno de programación lineal continuo, en este caso se dice que el poliedro es entero. 2.- Las posibles soluciones óptimas de la relajación lineal son los puntos extremos de P, mientras que la soluciones óptimas del problema entero son los puntos extremos de conv(S). 29. Esta obra ha sido publicada bajo la licencia Creative Commons Reconocimiento-No Comercial-Compartir bajola misma licencia 2.5 Perú. Para ver una copia de dicha licencia, visite http://creativecommons.org/licences/by-nc-sa/2.5/pe/.

(40) Biblioteca Digital - Dirección de Sistemas de Informática y Comunicación - UNT. Proposición 2.1.1 Si (P.R.) es una relajación del problema (P.L.E.), entonces z P.R. ≥ z. Prueba Si x∗ es solución óptima del (P.L.E.), entonces x∗ ∈ S ⊆ P y. S. z = ct x∗ ≤ f (x∗ ).. entonces:. C Y A M DE A TE C I M EN Á C TI IA C S A S FÍ. z ≤ f (x∗ ) ≤ z P.R.. SI C. z = ct x∗ ≤ f (x∗ ) ≤ z P.R.. A. como x∗ ∈ P , f (x∗ ) es una cota inferior de z P.R. , y. z ≤ z P.R.. Proposición 2.1.2. i.) Si una relajación (P.R.) es no factible, entonces, el (P.L.E.) es no factible. ii.) Sea x∗ una solucion óptima de (P.R.). Si x∗ ∈ S y f (x∗ ) = ct x∗ , entonces, x∗ es solución óptima de (P.L.E.). Prueba. i.)Como (P.R.) es no factible , entonces P = ∅ y ası́ S = ∅. por lo tanto el P.L.E. es no factible.. ii.)Como x∗ ∈ S es solución óptima de (P.R.) entonces f (x∗ ) ≥ f (x); ∀x ∈ P. TE. como S ⊂ P y x∗ ∈ S entonces f (x∗ ) ≥ f (x) ; ∀x ∈ S. LI O. entonces , z = ct x∗ = f (x∗ ) ≥ f (x) = z P.R. ; x ∈ S entonces z ≥ z P.R. por la proposición anterior (2.1.1): (z P.R. ≥ z),. IB. entonces z ≤ z P.R. ≤ z x∗ es solución del P.L.E. ⋄. B. ∴. Criterio de Optimalidad Una solución entera factible xF es óptima para el P.L.E. si su valor z F coincide con el valor óptimo z P.R. de una relajación lineal. En tal caso, se cumple que: z F = z P.L.E. = z P.R. 30. Esta obra ha sido publicada bajo la licencia Creative Commons Reconocimiento-No Comercial-Compartir bajola misma licencia 2.5 Perú. Para ver una copia de dicha licencia, visite http://creativecommons.org/licences/by-nc-sa/2.5/pe/.

(41) Biblioteca Digital - Dirección de Sistemas de Informática y Comunicación - UNT. Este criterio de optimalidad juega el mismo papel en el problema entero que el criterio de no negatividad de los costos reducidos en la tabla simplex de un problema relajado, nos permite reconocer que una solución entera factible dada es óptima.. Sea S definido por:. S. Ejemplo. SI C. A.  7x1 − 2x2 ≤ 14       x2 ≤ 3    2x1 − 2x2 ≤ 3     x1 , x2 ≥ 0      x1 , x2 ∈ Z. C Y A M DE A TE C I M EN Á C TI IA C S A S FÍ. (2.10). Entonces: S = {(0, 0); (0, 1); (0, 2); (0, 3); (1, 0); (1, 1); (1, 2); (1, 3); (2, 1); (2, 2); (2, 3)} REGION FACTIBLE DE S. 5 4.5 4 3.5. Eje X2. 3 2.5. (1,3). (2,3). (0,2). (1,2). (2,2). (0,1). (1,1). (2,1). (0,0). (1,0). TE. 2. (0,3). LI O. 1.5. B. IB. 1. 0.5 0. 0. 0.5. 1. 1.5. 2. 2.5 Eje X1. 3. 3.5. 4. 4.5. 5. Figura 2.1: Región de S. card(S) = 11 31. Esta obra ha sido publicada bajo la licencia Creative Commons Reconocimiento-No Comercial-Compartir bajola misma licencia 2.5 Perú. Para ver una copia de dicha licencia, visite http://creativecommons.org/licences/by-nc-sa/2.5/pe/.

(42) Biblioteca Digital - Dirección de Sistemas de Informática y Comunicación - UNT. Entonces su relajación lineal sera:. S.  7x1 − 2x2 ≤ 14       x2 ≤ 3. (2.11). C Y A M DE A TE C I M EN Á C TI IA C S A S FÍ. SI C. A.  2x1 − 2x2 ≤ 3      x1 , x2 ≥ 0. REGION FACTIBLE DEL PROBLEMA RELAJADO. 5 4.5 4 3.5. Eje X2. 3 2.5 2. (1,3). (2,3). (0,2). (1,2). (2,2). (0,1). (1,1). (2,1). TE. 1.5. (0,3). LI O. 1. 0.5. (11/5,7/10). (0,0). (1,0) (3/2,0) 0.5. 1. 1.5. 2. 2.5 Eje X1. 3. 3.5. 4. 4.5. 5. B. IB. 0. 0. (20/7,3). Figura 2.2: Región Factible de la relajación lineal.. 32. Esta obra ha sido publicada bajo la licencia Creative Commons Reconocimiento-No Comercial-Compartir bajola misma licencia 2.5 Perú. Para ver una copia de dicha licencia, visite http://creativecommons.org/licences/by-nc-sa/2.5/pe/.

(43) Biblioteca Digital - Dirección de Sistemas de Informática y Comunicación - UNT.  7x1 − 2x2 ≤ 14       x2 ≤ 3  (2.12). 2x1 − 2x2 ≤ 3        x1 , x2 ≥ 0. S. conv(S). A. La envolvente convexa es:. SI C. Los puntos extremos son: {(0, 0); (0, 3); (2, 3); (2, 1); (1, 0)}. 4.5 4 3.5. Eje X2. 3 2.5 2 1.5 1. (0,3). (1,3). (2,3). (0,2). (1,2). (2,2). (0,1). (1,1). (2,1). (0,0). (1,0). TE. 0.5. C Y A M DE A TE C I M EN Á C TI IA C S A S FÍ. REGION FACTIBLE DE CONV(S) 5. 0. 0.5. 1. 1.5. 2. 2.5 Eje X1. 3. 3.5. 4. 4.5. 5. Figura 2.3: Region factible de conv(S). B. IB. LI O. 0. En particular hallar conv(S) es muy difı́cil, en la práctica se trata sólo de hallar una parte de la descripción o tener una aproximación a ella usando desigualdades válidas generandose métodos que se aproximen a la envolvente convexa. (Planos de corte.). 33. Esta obra ha sido publicada bajo la licencia Creative Commons Reconocimiento-No Comercial-Compartir bajola misma licencia 2.5 Perú. Para ver una copia de dicha licencia, visite http://creativecommons.org/licences/by-nc-sa/2.5/pe/.

(44) Biblioteca Digital - Dirección de Sistemas de Informática y Comunicación - UNT. 2.2. 2.2.1.. Métodos de solución de problemas lineales enteros Método de planos de corte. Para resolver un problema entero, el primer paso es resolver su relajación lineal continua, si. A. S. la solución óptima de éste es un punto x∗ entero, entonces tal solución es tambien solución. C Y A M DE A TE C I M EN Á C TI IA C S A S FÍ. una técnica para resolver el problema entero inicial.. SI C. óptima del problema entero. En otro caso, el poliedro P no tiene solución entera, y precisamos. Aun cuando la resolución de la relajación lineal no haya producido directamente una solución entera, es posible el uso (iterativo) de la programación lineal para resolver un problema de programación lineal entera. El siguiente método de hiperplanos de corte (planos de corte) resuelve el problema entero mediante una secuencia de resoluciones de problemas lineales. Resulta útil el siguiente concepto.. Definición 2.2.1 Dado un poliedro P y un punto extremo x∗ fraccionario de P , d ∈ Rn y d0 ∈ R se llama corte a una desigualdad dt x ≤ d0 válida para todos los puntos enteros de P y violada por x∗ .. Dado un punto extremo x∗ de un poliedro P , el problema de determinar un corte que separe. TE. x∗ de conv(S) se llama PROBLEMA DE SEPARACIÓN.. Teorema 2.2.1 (TEOREMA DE SEPARACIÓN) Sea S un conjunto cerrado convexo no. LI O. vacio en Rn , sea y ∈ / S, entonces existe a ∈ Rn \ {0} y un escalar α tal que:. i.) at y > α, ∀y ∈ /S. IB. ii.) at x < α, ∀x ∈ S. B. donde H = {x/at x = α} es un hiperplano.. 34. Esta obra ha sido publicada bajo la licencia Creative Commons Reconocimiento-No Comercial-Compartir bajola misma licencia 2.5 Perú. Para ver una copia de dicha licencia, visite http://creativecommons.org/licences/by-nc-sa/2.5/pe/.

(45) Biblioteca Digital - Dirección de Sistemas de Informática y Comunicación - UNT. QQ. &%. S. Q Q Q Q. A. S. •y Q Q Q. SI C. Q Q Q '$ QQ Q Q. Prueba:. C Y A M DE A TE C I M EN Á C TI IA C S A S FÍ. H = {x/at x = α}. /S Puesto que H satisface la hipótesis del teorema (punto de distancia mı́nima), entonces y ∈ , ∃ x ∈ S tal que.   (x − x)(y − x) ≤ 0, ∀x ∈ S. (1)....  x(y − x). ≤. x(y − x). donde x, y son fijos ∀x ∈ S Por otro lado:. 0 ≤∥ y − x ∥2 = (y − x)(y − x) = y(y − x) − x(y − x) ... (2). LI O. TE. De (1) se tiene:. −x(y − x) ≤ −x(y − x). entonces en (2).. IB. 0 ≤∥ y − x ∥2 = y(y − x) − x(y − x) ≤ y(y − x) − x(y − x) = (y − x)(y − x). B. Sea a = y − x ̸= 0 0 ≤∥ y − x ∥2 ≤ ay − ax,. entonces: ay ≥ ax, ∀x ∈ S.. 35. Esta obra ha sido publicada bajo la licencia Creative Commons Reconocimiento-No Comercial-Compartir bajola misma licencia 2.5 Perú. Para ver una copia de dicha licencia, visite http://creativecommons.org/licences/by-nc-sa/2.5/pe/.

Referencias

Documento similar

Esta obra ha sido publicada bajo la licencia Creative Commons Reconocimiento-No Comercial-Compartir bajo la misma licencia 2.5 Perú.. ii

Esta obra ha sido publicada bajo la licencia Creative Commons Reconocimiento-No Comercial-Compartir bajo la misma licencia 2.5

Esta obra ha sido publicada bajo la licencia Creative Commons Reconocimiento-No Comercial-Compartir bajo la misma licencia 2.5

Esta obra ha sido publicada bajo la licencia Creative Commons Reconocimiento-No Comecial-Compartir bajo la misma licencia 2.5 Perú. Para ver una copia de dicha licencia,

Esta obra ha sido publicada bajo la licencia Creative Commons. Compartir bajo la misma licencia versión Internacional. Para ver una copia de dicha licencia,

Esta obra ha sido publicada bajo la licencia Creative Commons Reconocimiento-No Comercial-Compartir bajo la misma licencia 2.5 Perú.. Esta obra ha sido publicada bajo la

Esta obra ha sido publicada bajo la licencia Creative Commons Reconocimiento-No Comercial-Compartir bajo la misma licencia 2.5 Perú. Para ver una copia de dicha licencia,

Esta obra ha sido publicada bajo la licencia Creative Commons Reconocimiento-No Comercial-Compartir bajo la misma licencia 2.5 Perú.. INDICE