La teoría de la dualidad es importante en programación lineal tanto desde el punto de vista teórico como práctico. Para cada modelo lineal se puede escribir un modelo dual asociado. Resolviendo uno de los modelos se obtiene la solución de ambos. Algunas razones por las que es útil considerar la dualidad son que el número de iteraciones del algoritmo simplex depende más de las restricciones que de las variables, y la dualidad permite hacer interpretaciones económicas y desarrollar algoritmos más eficientes.
Este documento describe el problema dual y el método dual simplex en programación lineal. Explica que cada problema de programación lineal tiene un problema dual asociado. También presenta un ejemplo numérico para ilustrar la formulación del problema dual y las relaciones entre el problema principal y dual. Por último, describe el algoritmo del método dual simplex para resolver problemas de maximización.
Este documento presenta dos problemas de programación lineal. El primer problema involucra minimizar los costos de dos minas al producir tres tipos de carbón. La solución óptima es que la Mina A trabaje durante 60 días y la Mina B durante 5 días, minimizando los costos a $10,000. El segundo problema busca maximizar los beneficios de una empresa que fabrica tres artículos con recursos y demanda limitados. La solución óptima es producir 30 unidades del primer artículo y 212.5 unidades del tercero, maximizando los beneficios a $
Este documento presenta una serie de ejercicios resueltos de programación lineal. Incluye 13 ejercicios diferentes con sus respectivas soluciones. Cada ejercicio contiene información sobre los datos del problema, como insumos, tiempos de producción, costos, ingresos y restricciones. El objetivo es determinar la mezcla óptima de producción que maximice la utilidad o ingresos en cada caso.
Este documento presenta 14 problemas de programación lineal relacionados con la toma de decisiones sobre producción, mezclas, inversiones y asignación de recursos. Cada problema describe las variables, restricciones y función objetivo de un modelo de programación lineal, y pide determinar la solución óptima que maximice las utilidades o minimice los costos.
El método de Vogel, o aproximación de Vogel, es un método que permite llegar a una solución inicial factible del problema de transporte, la ventaja por sobre el de la esquina noroeste es que va adelante iteraciones y por lo tanto se obtiene una solución inicial mejor.
La fábrica debe producir diariamente 400 lámparas normales (variable x1) y 600 focos halógenos (variable x2) para maximizar la facturación. El coste máximo sería de S/.12,000.
Este documento describe el problema dual y el método dual simplex en programación lineal. Explica que cada problema de programación lineal tiene un problema dual asociado. También presenta un ejemplo numérico para ilustrar la formulación del problema dual y las relaciones entre el problema principal y dual. Por último, describe el algoritmo del método dual simplex para resolver problemas de maximización.
Este documento presenta dos problemas de programación lineal. El primer problema involucra minimizar los costos de dos minas al producir tres tipos de carbón. La solución óptima es que la Mina A trabaje durante 60 días y la Mina B durante 5 días, minimizando los costos a $10,000. El segundo problema busca maximizar los beneficios de una empresa que fabrica tres artículos con recursos y demanda limitados. La solución óptima es producir 30 unidades del primer artículo y 212.5 unidades del tercero, maximizando los beneficios a $
Este documento presenta una serie de ejercicios resueltos de programación lineal. Incluye 13 ejercicios diferentes con sus respectivas soluciones. Cada ejercicio contiene información sobre los datos del problema, como insumos, tiempos de producción, costos, ingresos y restricciones. El objetivo es determinar la mezcla óptima de producción que maximice la utilidad o ingresos en cada caso.
Este documento presenta 14 problemas de programación lineal relacionados con la toma de decisiones sobre producción, mezclas, inversiones y asignación de recursos. Cada problema describe las variables, restricciones y función objetivo de un modelo de programación lineal, y pide determinar la solución óptima que maximice las utilidades o minimice los costos.
El método de Vogel, o aproximación de Vogel, es un método que permite llegar a una solución inicial factible del problema de transporte, la ventaja por sobre el de la esquina noroeste es que va adelante iteraciones y por lo tanto se obtiene una solución inicial mejor.
La fábrica debe producir diariamente 400 lámparas normales (variable x1) y 600 focos halógenos (variable x2) para maximizar la facturación. El coste máximo sería de S/.12,000.
El documento presenta el método gráfico para resolver problemas de programación lineal con dos variables. Explica cómo graficar las restricciones y función objetivo, y encontrar la solución óptima evaluando la función objetivo en las esquinas del área factible o usando la función objetivo para determinar la esquina que la optimiza. Presenta ejemplos de problemas con una solución única, múltiples soluciones, soluciones indeterminadas y sin solución.
Un comerciante tiene 50.000 Bs para comprar naranjas de dos tipos (A y B) a diferentes precios por kg. Debe comprar la cantidad óptima de cada tipo para maximizar sus ganancias considerando que puede transportar un máximo de 700 kg y venderá cada tipo a un precio mayor.
El documento presenta el caso de Wyndor Glass Co., una empresa que planea lanzar dos nuevos productos y desea maximizar sus ganancias determinando la mezcla óptima de producción de ambos. Se formula un modelo de programación lineal con la función objetivo de maximizar ganancias y restricciones basadas en la capacidad productiva de cada planta.
Unmsm fisi - programación lineal entera y binaria - io1 cl15 entera-binariaJulio Pari
La compañía Mauser fabrica fusiles automáticos en 3 departamentos. Debe determinar cuántas unidades de los modelos S-1000 y S-2000 fabricar para maximizar la utilidad total, sujeto a las capacidades de cada departamento. El documento presenta la solución como un problema de programación lineal entera.
Este documento presenta un problema de programación lineal para una empresa pequeña de fabricación de bolsas de golf. Se describen las necesidades de tiempo de producción y contribución a la utilidad para dos modelos de bolsas. Se proporcionan las horas disponibles de cuatro operaciones de producción. El objetivo es maximizar la contribución total al fabricar la cantidad óptima de cada modelo de bolsa durante un período de tres meses, sujeto a las restricciones de tiempo de producción. Se formula un modelo matemático y se resuelve usando un software de programación lineal
El documento presenta un problema de programación lineal para maximizar las utilidades de una fábrica de muebles. La función objetivo depende de la producción de mesas, sillas, camas y bibliotecas. Está sujeto a restricciones en el uso de los recursos. El método simplex se utiliza para encontrar la solución óptima de X1 = 0, X2 = 7, X3 = 6, X4 = 4, con una utilidad máxima de $340000.
El documento presenta una guía de ejercicios de investigación operativa que utiliza el método simplex para resolver problemas de programación lineal. Incluye 16 ejercicios que piden aplicar el método simplex en su forma algebraica o tabular para maximizar o minimizar funciones objetivo sujetas a restricciones, identificar soluciones básicas factibles u obtener la solución óptima gráficamente.
Este documento explica diferentes modelos de programación entera, incluyendo modelos puros, binarios y mixtos. Describe ejemplos de problemas de corte de madera, programación de producción y programación de proyectos para ilustrar estos modelos. También resume problemas típicos de programación entera como el problema del transporte, flujo de costo mínimo en red, asignación, mochila, emparejamiento, recubrimiento, empaquetado, partición, costo fijo y el problema del viajante.
El documento presenta un índice con cinco capítulos sobre programación lineal. El capítulo 1 incluye ejemplos de formulación de modelos de programación lineal, problemas resueltos y aspectos de álgebra lineal relacionados. Los capítulos 2, 3 y 4 cubren el método simplex, dualidad y análisis de sensibilidad respectivamente. El capítulo 5 trata sobre programación entera.
El documento describe el método dual simplex para resolver problemas de programación lineal óptimos pero infactibles. Este método convierte las restricciones en forma canónica y agrega variables de holgura para poner el problema en una tabla inicial. Si algún elemento de la parte derecha es negativo y se satisface la condición de optimidad, el problema puede resolverse iterativamente mediante el método dual simplex hasta alcanzar una solución factible y óptima.
El documento presenta un problema de programación lineal para determinar la cantidad óptima de contenedores que un frutero debe comprar de dos mayoristas para satisfacer sus necesidades de naranjas, plátanos y manzanas al menor costo. El mayorista A envía contenedores con 8 cajas de naranjas, 1 de plátanos y 2 de manzanas, mientras que el mayorista B envía contenedores con 2 cajas de naranjas, 1 de plátanos y 7 de manzanas. El objetivo es minimizar la distancia total considerando que el mayorista A está a
Este documento describe un problema de programación lineal para maximizar la utilidad total de una empresa que produce dos productos, A y B, usando tres máquinas. Cada producto requiere diferentes cantidades de tiempo en cada máquina. El objetivo es determinar la cantidad óptima de cada producto a producir dadas las horas disponibles en cada máquina.
El sastre tiene 80 m2 de tela de algodón y 120 m2 de tela de lana. Puede confeccionar trajes que requieren 1 m2 de algodón y 3 m2 de lana, o vestidos que requieren 2 m2 de cada tela. Para maximizar los beneficios, debe determinar la cantidad óptima de trajes y vestidos a confeccionar sujeto a las restricciones de tela disponible.
Se transporta alimento de tres silos a cuatro granjas. La capacidad de las rutas entre los silos y granjas está limitada por la disponibilidad de camiones y viajes diarios. La tabla muestra la oferta diaria en los silos, la demanda en las granjas, y las capacidades de las rutas.
El documento describe un problema de programación lineal para una compañía de sombreros Wild West. La compañía produce dos tipos de sombreros y busca maximizar sus ganancias sujeto a restricciones de capacidad de producción y demanda. El modelo encuentra que la solución óptima es producir 100 sombreros tipo 1 y 200 sombreros tipo 2, generando $1800 en ganancias diarias. El análisis de sensibilidad muestra cómo cambios en los coeficientes y disponibilidad de recursos afectarían la solución.
Este documento presenta un problema de minimización de costos de transporte de electricidad desde tres centrales de distribución hacia tres ciudades. Se dan los costos de transporte entre cada par origen-destino y la demanda de cada ciudad. El objetivo es determinar la distribución óptima que minimice el costo total de transporte satisfaciendo la demanda de cada ciudad. Se plantea el modelo matemático con las variables de decisión, restricciones de oferta y demanda, y la función objetivo a minimizar. Finalmente, se resuelve el problema mediante el método del costo
Este documento presenta información sobre el modelo de transporte y el algoritmo de transporte. Explica que el modelo de transporte busca determinar la distribución óptima de recursos productivos desde fuentes de abastecimiento a destinos de demanda para minimizar costos. Describe el proceso de construcción del modelo matemático y la metodología del método simplex para resolverlo.
Grupo 1 ejercicios avanzados (1) no copiarjorgehidalgo70
Este documento presenta 7 ejercicios resueltos sobre teoría del consumidor que involucran bienes sustitutos y complementarios. El último ejercicio analiza dos planes de ayuda para damnificados por desastres naturales en Ica que consisten en la entrega de bienes o una subvención económica, buscando maximizar la utilidad de los beneficiarios.
El documento describe el método simplex para resolver modelos lineales con más de tres variables. Explica que los modelos deben escribirse en forma estándar antes de aplicar el método simplex. Define conceptos clave como solución factible, solución básica, solución óptima y región de factibilidad. También muestra un ejemplo para ilustrar las soluciones básicas de un modelo lineal.
El documento describe cómo formular un problema dual a partir de un problema primal de programación lineal. Explica que el problema dual se construye sistemáticamente tomando los coeficientes de las restricciones del primal como coeficientes de la función objetivo dual, y los coeficientes del primal como restricciones del dual. También describe que la solución óptima de un problema proporciona automáticamente la solución óptima del otro, y que resolver el dual puede ser más eficiente si tiene menos restricciones que el primal.
El documento presenta el método gráfico para resolver problemas de programación lineal con dos variables. Explica cómo graficar las restricciones y función objetivo, y encontrar la solución óptima evaluando la función objetivo en las esquinas del área factible o usando la función objetivo para determinar la esquina que la optimiza. Presenta ejemplos de problemas con una solución única, múltiples soluciones, soluciones indeterminadas y sin solución.
Un comerciante tiene 50.000 Bs para comprar naranjas de dos tipos (A y B) a diferentes precios por kg. Debe comprar la cantidad óptima de cada tipo para maximizar sus ganancias considerando que puede transportar un máximo de 700 kg y venderá cada tipo a un precio mayor.
El documento presenta el caso de Wyndor Glass Co., una empresa que planea lanzar dos nuevos productos y desea maximizar sus ganancias determinando la mezcla óptima de producción de ambos. Se formula un modelo de programación lineal con la función objetivo de maximizar ganancias y restricciones basadas en la capacidad productiva de cada planta.
Unmsm fisi - programación lineal entera y binaria - io1 cl15 entera-binariaJulio Pari
La compañía Mauser fabrica fusiles automáticos en 3 departamentos. Debe determinar cuántas unidades de los modelos S-1000 y S-2000 fabricar para maximizar la utilidad total, sujeto a las capacidades de cada departamento. El documento presenta la solución como un problema de programación lineal entera.
Este documento presenta un problema de programación lineal para una empresa pequeña de fabricación de bolsas de golf. Se describen las necesidades de tiempo de producción y contribución a la utilidad para dos modelos de bolsas. Se proporcionan las horas disponibles de cuatro operaciones de producción. El objetivo es maximizar la contribución total al fabricar la cantidad óptima de cada modelo de bolsa durante un período de tres meses, sujeto a las restricciones de tiempo de producción. Se formula un modelo matemático y se resuelve usando un software de programación lineal
El documento presenta un problema de programación lineal para maximizar las utilidades de una fábrica de muebles. La función objetivo depende de la producción de mesas, sillas, camas y bibliotecas. Está sujeto a restricciones en el uso de los recursos. El método simplex se utiliza para encontrar la solución óptima de X1 = 0, X2 = 7, X3 = 6, X4 = 4, con una utilidad máxima de $340000.
El documento presenta una guía de ejercicios de investigación operativa que utiliza el método simplex para resolver problemas de programación lineal. Incluye 16 ejercicios que piden aplicar el método simplex en su forma algebraica o tabular para maximizar o minimizar funciones objetivo sujetas a restricciones, identificar soluciones básicas factibles u obtener la solución óptima gráficamente.
Este documento explica diferentes modelos de programación entera, incluyendo modelos puros, binarios y mixtos. Describe ejemplos de problemas de corte de madera, programación de producción y programación de proyectos para ilustrar estos modelos. También resume problemas típicos de programación entera como el problema del transporte, flujo de costo mínimo en red, asignación, mochila, emparejamiento, recubrimiento, empaquetado, partición, costo fijo y el problema del viajante.
El documento presenta un índice con cinco capítulos sobre programación lineal. El capítulo 1 incluye ejemplos de formulación de modelos de programación lineal, problemas resueltos y aspectos de álgebra lineal relacionados. Los capítulos 2, 3 y 4 cubren el método simplex, dualidad y análisis de sensibilidad respectivamente. El capítulo 5 trata sobre programación entera.
El documento describe el método dual simplex para resolver problemas de programación lineal óptimos pero infactibles. Este método convierte las restricciones en forma canónica y agrega variables de holgura para poner el problema en una tabla inicial. Si algún elemento de la parte derecha es negativo y se satisface la condición de optimidad, el problema puede resolverse iterativamente mediante el método dual simplex hasta alcanzar una solución factible y óptima.
El documento presenta un problema de programación lineal para determinar la cantidad óptima de contenedores que un frutero debe comprar de dos mayoristas para satisfacer sus necesidades de naranjas, plátanos y manzanas al menor costo. El mayorista A envía contenedores con 8 cajas de naranjas, 1 de plátanos y 2 de manzanas, mientras que el mayorista B envía contenedores con 2 cajas de naranjas, 1 de plátanos y 7 de manzanas. El objetivo es minimizar la distancia total considerando que el mayorista A está a
Este documento describe un problema de programación lineal para maximizar la utilidad total de una empresa que produce dos productos, A y B, usando tres máquinas. Cada producto requiere diferentes cantidades de tiempo en cada máquina. El objetivo es determinar la cantidad óptima de cada producto a producir dadas las horas disponibles en cada máquina.
El sastre tiene 80 m2 de tela de algodón y 120 m2 de tela de lana. Puede confeccionar trajes que requieren 1 m2 de algodón y 3 m2 de lana, o vestidos que requieren 2 m2 de cada tela. Para maximizar los beneficios, debe determinar la cantidad óptima de trajes y vestidos a confeccionar sujeto a las restricciones de tela disponible.
Se transporta alimento de tres silos a cuatro granjas. La capacidad de las rutas entre los silos y granjas está limitada por la disponibilidad de camiones y viajes diarios. La tabla muestra la oferta diaria en los silos, la demanda en las granjas, y las capacidades de las rutas.
El documento describe un problema de programación lineal para una compañía de sombreros Wild West. La compañía produce dos tipos de sombreros y busca maximizar sus ganancias sujeto a restricciones de capacidad de producción y demanda. El modelo encuentra que la solución óptima es producir 100 sombreros tipo 1 y 200 sombreros tipo 2, generando $1800 en ganancias diarias. El análisis de sensibilidad muestra cómo cambios en los coeficientes y disponibilidad de recursos afectarían la solución.
Este documento presenta un problema de minimización de costos de transporte de electricidad desde tres centrales de distribución hacia tres ciudades. Se dan los costos de transporte entre cada par origen-destino y la demanda de cada ciudad. El objetivo es determinar la distribución óptima que minimice el costo total de transporte satisfaciendo la demanda de cada ciudad. Se plantea el modelo matemático con las variables de decisión, restricciones de oferta y demanda, y la función objetivo a minimizar. Finalmente, se resuelve el problema mediante el método del costo
Este documento presenta información sobre el modelo de transporte y el algoritmo de transporte. Explica que el modelo de transporte busca determinar la distribución óptima de recursos productivos desde fuentes de abastecimiento a destinos de demanda para minimizar costos. Describe el proceso de construcción del modelo matemático y la metodología del método simplex para resolverlo.
Grupo 1 ejercicios avanzados (1) no copiarjorgehidalgo70
Este documento presenta 7 ejercicios resueltos sobre teoría del consumidor que involucran bienes sustitutos y complementarios. El último ejercicio analiza dos planes de ayuda para damnificados por desastres naturales en Ica que consisten en la entrega de bienes o una subvención económica, buscando maximizar la utilidad de los beneficiarios.
El documento describe el método simplex para resolver modelos lineales con más de tres variables. Explica que los modelos deben escribirse en forma estándar antes de aplicar el método simplex. Define conceptos clave como solución factible, solución básica, solución óptima y región de factibilidad. También muestra un ejemplo para ilustrar las soluciones básicas de un modelo lineal.
El documento describe cómo formular un problema dual a partir de un problema primal de programación lineal. Explica que el problema dual se construye sistemáticamente tomando los coeficientes de las restricciones del primal como coeficientes de la función objetivo dual, y los coeficientes del primal como restricciones del dual. También describe que la solución óptima de un problema proporciona automáticamente la solución óptima del otro, y que resolver el dual puede ser más eficiente si tiene menos restricciones que el primal.
Este documento presenta el método simplex para resolver problemas de programación lineal. Explica cómo convertir cualquier problema de programación lineal a una forma estándar, incluyendo la adición de variables de holgura y exceso cuando sea necesario. También describe cómo representar los problemas de forma matricial y define soluciones básicas y básicas factibles. Proporciona ejemplos para ilustrar los conceptos.
El documento compara y contrasta el método de Lagrange y el método de Kuhn Tucker para la optimización de funciones sujetas a restricciones. El método de Lagrange reduce el problema restringido a un problema sin restricciones mediante la adición de multiplicadores de Lagrange. El método de Kuhn Tucker es una generalización que permite desigualdades en las restricciones. Ambos métodos utilizan derivadas parciales para encontrar puntos estacionarios de la función objetivo sujeta a las restricciones.
Los multiplicadores de Lagrange son una técnica para resolver problemas de optimización no lineales sujetos a restricciones. Se forma el lagrangiano agregando términos que involucran a los multiplicadores de Lagrange y las restricciones. Resolviendo el sistema de ecuaciones formado por las derivadas parciales del lagrangiano respecto a las variables originales y los multiplicadores, se obtiene la solución del problema de optimización. Otra técnica explicada es el método del gradiente, que iterativamente actualiza las variables moviéndose en la dirección opuesta
La programación lineal es un método para encontrar la solución óptima cuando se quiere optimizar una función objetivo lineal sujeta a restricciones lineales. Se representan las restricciones como semiplanos y la intersección de éstos da la región de validez. La solución óptima se encuentra en un vértice de dicha región.
Este documento presenta un resumen de los temas de suma, resta, valor numérico, multiplicación, división y factorización de expresiones algebraicas. Incluye definiciones, propiedades y ejemplos resueltos de cada operación. También explica los diferentes productos notables como el binomio al cuadrado, binomio al cubo, binomio conjugado y más. Finaliza con una sección de referencias bibliográficas.
El documento presenta una guía didáctica sobre la adición, resta, multiplicación y división de polinomios. Explica los conceptos teóricos con ejemplos numéricos y también incluye una autoevaluación para que los estudiantes verifiquen su comprensión.
El Método Simplex es un método iterativo para resolver problemas de programación lineal que permite mejorar la solución en cada paso moviéndose de un vértice a otro de un poliedro. Fue creado en 1947 y es capaz de resolver modelos más complejos que otros métodos. Permite maximizar o minimizar una función objetivo sujeto a restricciones de recursos.
Este documento resume los pasos para resolver diferentes tipos de ecuaciones en una variable, incluyendo ecuaciones polinómicas lineales, cuadráticas, cúbicas y de mayor grado, así como ecuaciones con valor absoluto, raíces y racionales. Explica métodos como factorización, completar el cuadrado y división sintética para resolver cada tipo de ecuación.
Este documento presenta los pasos para resolver diferentes tipos de ecuaciones algebraicas de una variable, incluyendo ecuaciones polinómicas lineales, cuadráticas, cúbicas y de mayor grado, así como ecuaciones con valor absoluto, raíces y racionales. Explica métodos como factorización, uso de fórmulas, división sintética y aislamiento de términos para resolver cada tipo de ecuación.
Este documento explica cómo resolver ecuaciones simultáneas que incluyen ecuaciones de segundo grado. Describe los pasos para resolver ecuaciones donde una es de primer grado y otra de segundo grado, o ambas son de segundo grado. También explica cómo graficar las soluciones en un círculo u otra curva.
Este documento presenta conceptos básicos sobre ecuaciones y sistemas de ecuaciones, incluyendo igualdades, identidades, ecuaciones de primer y segundo grado, ecuaciones equivalentes, ecuaciones incompletas, resolución de ecuaciones y aplicaciones de ecuaciones de segundo grado.
Este documento presenta conceptos básicos sobre ecuaciones y sistemas de ecuaciones. Introduce las nociones de igualdad, identidad y ecuación, y explica cómo resolver ecuaciones de primer y segundo grado, incluyendo ecuaciones completas, incompletas e irracionales. También cubre temas como ecuaciones equivalentes, descomposición de trinomios cuadrados perfectos y aplicaciones de ecuaciones de segundo grado.
Este documento presenta una serie de problemas típicos sobre límites y continuidad de funciones. Incluye problemas sobre el cálculo de límites utilizando técnicas como factorización, expresiones conjugadas y simplificación de términos. También cubre conceptos como la continuidad de funciones y métodos para determinar la existencia de soluciones a ecuaciones.
El documento habla sobre expresiones algebraicas. Explica que una expresión algebraica contiene letras, números y signos y que se comportan como números. También define conceptos como grado de una expresión, valor numérico, suma, resta, multiplicación y división de expresiones algebraicas. Además, introduce productos notables y la factorización como técnicas para simplificar expresiones.
Este documento presenta una introducción a la programación no lineal. En particular, explica que este tipo de problemas de optimización involucran funciones objetivo y/o restricciones no lineales. Luego, provee varios ejemplos de problemas de programación no lineal, incluyendo asignación de recursos con rendimientos decrecientes, ajuste de curvas de datos, localización de instalaciones y optimización de carteras de inversión. Finalmente, resume algunas propiedades básicas de este tipo de problemas, como la existencia y unicidad de soluciones
El documento presenta conceptos básicos sobre límites de funciones. Introduce la definición formal de límite y algunos ejemplos ilustrativos. Luego establece propiedades algebraicas para calcular límites de sumas, diferencias, productos, cocientes y potencias de funciones. Finalmente, explica cómo calcular límites de funciones polinómicas y racionales.
El método simplex se utiliza para resolver problemas de programación lineal. Consiste en iterativamente calcular el valor de la función objetivo en cada vértice, moviéndose a lo largo de las aristas, hasta encontrar el vértice óptimo. En cada iteración, se elige la variable de decisión que mejora la función objetivo y la variable holgura que sale de la base. El proceso concluye cuando no es posible mejorar más la solución.
Modelos lineales y formatos. Manipulacion de ecuacionesmariana609125
Este documento presenta una introducción al problema de programación lineal. Explica que el problema consiste en maximizar o minimizar una función objetivo lineal sujeta a restricciones lineales. Detalla cómo representar el problema en formato matricial y define conceptos clave como punto factible, región factible y solución óptima. También cubre técnicas para manipular el problema, como convertir desigualdades en igualdades mediante el uso de variables holgura.
Modelos lineales y formatos. Manipulacion de ecuaciones
3. dualidad
1. Tema 3
Dualidad
En el desarrollo de la programaci´ n lineal la teoria de la dualidad es importante,
o
tanto desde el punto de vista te´ rico como desde el punto de vista pr´ ctico. Para
o a
cada modelo lineal se puede escribir el modelo dual asociado. Veremos que re-
solviendo uno de los modelos se obtiene la soluci´ n de ambos; en la tabla optima
o ´
del modelo resuelto aparece tambi´ n la soluci´ n optima del dual asociado. Algu-
e o ´
nas razones por las que conviene tener en cuenta la dualidad son las siguientes:
1. Teniendo en cuenta que el n´ mero de iteraciones del algoritmo simplex
u
depende m´ s del n´ mero de restricciones del modelo que del n´ mero de
a u u
variables, y dado que resolviendo un modelo lineal se obtiene tambi´ n la
e
soluci´ n del dual asociado, se puede elegir el modelo que conviene resolver
o
para obtener la soluci´ n de ambos.
o
2. La dualidad permite hacer la interpretaci´ n econ´ mica del problema lineal.
o o
Veremos que la soluci´ n del problema dual da informaci´ n acerca de la
o o
soluci´ n del primal.
o
3. Teniendo en cuenta las propiedades de la dualidad se construye un nuevo
algoritmo, el simplex dual, que es m´ s eficaz que el simplex para calcular
a
la soluci´ n optima de algunos modelos lineales. Adem´ s, este nuevo algo-
o ´ a
ritmo se aplica en el an´ lisis de sensibilidad y la programaci´ n entera que
a o
se presentan en temas posteriores.
83
2. 84 Tema 3. Dualidad
3.1 El problema dual
Definici´ n 3.1.1 (Forma sim´ trica de maximizaci´ n) Un modelo lineal est´ es-
o e o a
crito en forma sim´ trica de maximizaci´ n si
e o
• el objetivo es maximizar,
• todas las restricciones son del tipo ≤,
• todas las variables son no negativas.
Ejemplo. Considerar el modelo lineal
max z = x1 − 3x2 + x3
sujeto a
x1 + x2 + x3 ≥ 2
−x1 + 2x2 − x3 ≤ 3
x1 − x2 + 2x3 = −1
x1 , x2 , x3 ≥ 0
la forma sim´ trica de maximizaci´ n es
e o
max z = x1 − 3x2 + x3
sujeto a
−x1 − x2 − x3 ≤ −2
−x1 + 2x2 − x3 ≤ 3
x1 − x2 + 2x3 ≤ −1
−x1 + x2 − 2x3 ≤ 1
x1 , x2 , x3 ≥ 0
2
Definici´ n 3.1.2 (Forma sim´ trica de minimizaci´ n) Un modelo lineal est´ es-
o e o a
crito en forma sim´ trica de minimizaci´ n si
e o
• el objetivo es minimizar,
• todas las restricciones son del tipo ≥,
OpenCourseWare, UPV/EHU
3. 3.1. El problema dual 85
• todas las variables son no negativas.
Ejemplo. Considerar el modelo lineal
max z = x1 − x2
sujeto a
3x1 + 2x2 ≤ 1
x1 − 2x2 ≥ 3
x1 , x2 ≥ 0
la forma sim´ trica de minimizaci´ n es
e o
min (−z) = −x1 + x2
sujeto a
−3x1 − 2x2 ≥ −1
x1 − 2x2 ≥ 3
x1 , x2 ≥ 0
2
3.1.1 Relaci´ n primal-dual
o
Consideremos el siguiente modelo lineal en forma sim´ trica de maximizaci´ n al
e o
que llamaremos modelo primal
max z = cT x
sujeto a
Ax ≤ b
x≥0
el modelo dual es el siguiente modelo en forma sim´ trica de minimizaci´ n
e o
min G = bT y
sujeto a
AT y ≥ c
y≥0
Investigaci´ n Operativa. Programaci´ n Lineal
o o
4. 86 Tema 3. Dualidad
Ejemplo. Dado el modelo lineal
max z = 2x1 − x2 + 3x3
sujeto a
x1 − x2 + x3 ≤ 2
3x1 − x2 + 2x3 ≤ 1
x1 , x2 , x3 ≥ 0
el dual asociado es
min G = 2y1 + y2
sujeto a
y1 + 3y2 ≥ 2
−y1 − y2 ≥ −1
y1 + 2y2 ≥ 3
y1 , y2 ≥ 0
2
3.1.2 Componentes de los modelos primal y dual
Dado un modelo lineal primal y su correspondiente dual la relaci´ n que existe
o
entre las componentes de ambos modelos es la siguiente
• Si la matriz A del modelo primal es de tama˜ o m × n, el modelo primal
n
tiene m restricciones y n variables. La matriz del problema dual es AT y,
por tanto, el modelo dual tiene n restricciones y m variables.
• El vector b es el vector de recursos del problema primal y es el vector de
costes del problema dual.
• El vector c es el vector de costes del problema primal y es el vector de
recursos del problema dual.
• El n´ mero de restricciones del primal es igual al n´ mero de variables del
u u
dual.
• El n´ mero de variables del primal es igual al n´ mero de restricciones del
u u
dual.
OpenCourseWare, UPV/EHU
5. 3.1. El problema dual 87
Objetivo: max ⇐⇒ Objetivo: min
restricci´ n i ≤ bi
o ⇐⇒ variable i ≥ 0
restricci´ n i = bi
o ⇐⇒ variable i no restringida
restricci´ n i ≥ bi
o ⇐⇒ variable i ≤ 0
variable i ≥ 0 ⇐⇒ restricci´ n i ≥ ci
o
variable i no restringida ⇐⇒ restricci´ n i = ci
o
variable i ≤ 0 ⇐⇒ restricci´ n i ≤ ci
o
Tabla 3.1: Relaci´ n primal-dual
o
3.1.3 Dualidad: el caso general
Las restricciones de un modelo modelo lineal pueden ser del tipo ≤, =, ≥. Para
calcular el problema dual se puede escribir en forma sim´ trica y utilizar la relaci´ n
e o
primal-dual. Tambi´ n se puede utilizar la Tabla 3.1 para calcular el dual de un
e
modelo que no est´ escrito en forma sim´ trica de maximizaci´ n. Probaremos
e e o
algunas de las relaciones de la tabla; el resto se prueban de forma an´ loga.
a
Caso 1. Si las restricciones del problema primal son del tipo ≥, entonces las
variables del dual son menores o iguales que cero. Es decir, dado el modelo
primal
max z = cT x
sujeto a
Ax ≥ b
x≥0
el dual asociado es
min G = bT y
sujeto a
AT y ≥ c
y≤0
Investigaci´ n Operativa. Programaci´ n Lineal
o o
6. 88 Tema 3. Dualidad
Demostraci´ n. En primer lugar escribimos el modelo primal en forma
o
sim´ trica de maximizaci´ n
e o
max z = cT x
sujeto a
−Ax ≤ −b
x≥0
Por medio de la relaci´ n primal-dual dada en la secci´ n 3.1.1 obtenemos el
o o
dual
min G = −bT y
sujeto a
−AT y ≥ cT
y≥0
Haciendo el cambio de variable y = −y , se tiene
min G = bT y
sujeto a
A T y ≥ cT
y≤0
2
Caso 2. Si las restricciones del problema primal son del tipo =, entonces las
variables del dual no tienen restricci´ n de signo. Es decir, dado el modelo
o
max z = cT x
sujeto a
Ax = b
x≥0
el dual asociado es
min G = bT y
sujeto a
AT y ≥ c
y : no restringido
OpenCourseWare, UPV/EHU
7. 3.1. El problema dual 89
Demostraci´ n. Escribimos el modelo en forma sim´ trica de maximizaci´ n
o e o
max z = cT x
sujeto a
Ax ≤ b
−Ax ≤ −b
x≥0
El modelo dual asociado es
u
min G = (bT , −bT )
v
sujeto a
u
(AT , −AT ) ≥c
v
u, v ≥ 0
donde u y v son vectores de m componentes. El modelo dual se puede
escribir
min G = bT (u − v)
sujeto a
AT (u − v) ≥ c
u, v ≥ 0
Haciendo el cambio de variable y = u − v , se tiene
min G = bT y
sujeto a
AT y ≥ c
y : no rest.
Investigaci´ n Operativa. Programaci´ n Lineal
o o
8. 90 Tema 3. Dualidad
Ejemplo. Dado el modelo primal
max z = x1 − 4x2 − x3
sujeto a
x1 + x2 − x3 ≥ 4
2x1 + 3x2 − 5x3 ≤ 2
2x1 − x2 + 2x3 = 6
x1 ≤ 0, x2 ≥ 0, x3 : no rest.
utilizando las relaciones de la Tabla 3.1 el modelo dual es
min G = 4y1 + 2y2 + 6y3
sujeto a
y1 + 2y2 + 2y3 ≤ 1
y1 + 3y2 − y3 ≥ −4
−y1 − 5y2 + 2y3 = −1
y1 ≤ 0, y2 ≥ 0, y3 : no rest.
2
3.2 Teoremas de dualidad
Los siguientes teoremas establecen las relaciones entre el problema primal, el
dual y las soluciones de ambos problemas. Los resultados de los teoremas est´ n
a
enunciados considerando la forma primal-dual sim´ trica.
e
Primal Dual
max z = cT x min G = bT y
sujeto a sujeto a
Ax ≤ b AT y ≥ c
x≥0 y≥0
Teorema 3.2.1 El dual del problema dual es el problema primal.
OpenCourseWare, UPV/EHU
9. 3.2. Teoremas de dualidad 91
Demostraci´ n. Considerar el problema dual
o
min G = bT y
sujeto a
AT y ≥ c
y≥0
Para calcular el dual de este problema lo escribimos en forma sim´ trica de maxi-
e
mizaci´ n
o
− max (−G) = −bT y
sujeto a
−AT y ≤ −c
y≥0
Utilizando la relaci´ n primal-dual, el dual de este problema es
o
− min (−z) = −cT x
sujeto a
−Ax ≥ −b
x≥0
que escrito en forma equivalente es el modelo primal
max z = cT x
sujeto a
Ax ≤ b
x≥0
2
De este teorema se puede concluir que si el objetivo primal es minimizar como
ocurre en la forma dual sim´ trica, entonces el objetivo dual es maximizar. Te-
e
niendo en cuenta este resultado, para calcular el dual de un modelo cuyo objetivo
es minimizar las relaciones de la Tabla 3.1 se leen de derecha a izquierda.
Investigaci´ n Operativa. Programaci´ n Lineal
o o
10. 92 Tema 3. Dualidad
Ejemplo. Dado el modelo lineal
min z = x1 − 4x2 − x3
sujeto a
x1 + x2 − x3 ≥ 4
2x1 + 3x2 − 5x3 ≤ 2
2x1 − x2 + 2x3 = 6
x1 ≤ 0, x2 ≥ 0, x3 : no restringida
por medio de la Tabla 3.1 calculamos el dual
max G = 4y1 + 2y2 + 6y3
sujeto a
y1 + 2y2 + 2y3 ≥ 1
y1 + 3y2 − y3 ≤ −4
−y1 − 5y2 + 2y3 = −1
y1 ≥ 0, y2 ≤ 0, y3 : no restringida
2
Teorema 3.2.2 (Dualidad d´ bil) Sean x e y soluciones factibles para los proble-
e
mas primal y dual respectivamente. Entonces, se verifica
z = cT x ≤ bT y = G.
Demostraci´ n.
o
Por ser x soluci´ n factible primal, entonces se cumple Ax ≤ b, x ≥ 0.
o
Por ser y soluci´ n factible dual, entonces se cumple AT y ≥ c, y ≥ 0.
o
Premultiplicando por yT la desigualdad Ax ≤ b y por xT la desigualdad
AT y ≥ c se tiene
yT Ax ≤ yT b = bT y,
xT AT y ≥ xT c = cT x.
Dado que xT AT y = yT Ax , entonces se verifica
z = cT x ≤ yT Ax ≤ bT y = G.
2
OpenCourseWare, UPV/EHU
11. 3.2. Teoremas de dualidad 93
Del teorema anterior se puede concluir que el valor m´ ximo del objetivo pri-
a
mal es una cota inferior del valor m´nimo del objetivo dual. Y, rec´procamente, el
ı ı
valor m´nimo del objetivo dual es una cota superior del valor m´ ximo del objetivo
ı a
primal. Los siguientes resultados son consecuencia del teorema anterior.
Corolario 3.2.1 Si las soluciones factibles x∗ e y∗ verifican cT x∗ = bT y∗ , en-
tonces x∗ e y∗ son soluciones optimas para el primal y el dual respectivamente.
´
Demostraci´ n. El teorema de dualidad d´ bil asegura que para cualquier par de
o e
soluciones x e y se verifica
cT x ≤ bT y.
Si tomamos la soluci´ n dual y∗ se verifica cT x ≤ bT y∗ . Dado que cT x∗ = bT y∗ ,
o
para cualquier soluci´ n x del problema primal se tiene
o
cT x ≤ cT x∗ ,
de donde se deduce que x∗ es soluci´ n optima del problema primal.
o ´
De la misma forma
bT y∗ = cT x∗ ≤ bT y.
Por tanto, para cualquier soluci´ n y del problema dual se verifica
o
bT y∗ ≤ bT y,
de donde se deduce que y∗ es soluci´ n optima del dual.
o ´ 2
Corolario 3.2.2 Si el problema primal es factible y no acotado, el dual es in-
factible.
Demostraci´ n. Teniendo en cuenta que cualquier par de soluciones x e y veri-
o
fican cT x ≤ bT y , si el objetivo primal no est´ acotado, no existe una soluci´ n
a o
y para el dual que sea una cota superior para el problema primal. Por tanto el
problema dual no tiene soluci´ n.
o
De forma similar se deduce el siguiente resultado.
Corolario 3.2.3 Si el problema dual es factible y no acotado, el primal es in-
factible.
Investigaci´ n Operativa. Programaci´ n Lineal
o o
12. 94 Tema 3. Dualidad
Si el problema primal es infactible, el dual puede ser infactible o no acotado.
Y si el problema dual es infactible el primal puede se infactible o no acotado.
Ejemplo. Si consideramos los siguientes problemas primal y dual se puede
observar que en este ejemplo se cumple el resultado del Corolario 3.2.2. En este
caso el problema primal es no acotado y el problema dual es infactible.
max z = 3x1 + 2x2 min G = 2y1 + 4y2
sujeto a sujeto a
−2x1 + x2 ≤ 2 −2y1 + 2y2 ≥ 3
2x1 + x2 ≥ 4 y1 + y2 ≥ 2
x1 , x2 ≥ 0 y1 ≥ 0, y2 ≤ 0
Resolviendo gr´ ficamente podemos ver que el problema primal es no acotado
a
y el dual no tiene soluci´ n.
o
x2 −2x1 + x2 = 2
max
x1
2x1 + x2 = 4
OpenCourseWare, UPV/EHU
13. 3.2. Teoremas de dualidad 95
y2
y1
−2y1 + 2y2 = 3 y1 + y2 = 2
2
Teorema 3.2.3 (Principio fundamental de la dualidad.) Si existe una soluci´ no
optima x∗ del problema primal, entonces existe una soluci´ n optima y∗ del pro-
´ o ´
blema dual. De la misma forma, si existe una soluci´ n y∗ optima del problema
o ´
∗
dual, entonces existe una soluci´ n x optima del problema primal. En ambos
o ´
casos z ∗ = cT x∗ = bT y∗ = G∗ .
Ejemplo. Considerar los siguientes problemas primal y dual.
max z = 2x1 + 3x2 min G = 2y1 + 3y2 + 5y3
sujeto a sujeto a
x1 + x2 ≤ 2 y1 + 2y2 + y3 ≥ 2
2x1 − x2 ≤ 3 y1 − y2 + 3y3 ≥ 3
x1 + 3x2 ≤ 5 y1 , y2 , y3 ≥ 0
x1 , x2 ≥ 0
Cualquier par de soluciones verifica z ≤ G. Por ejemplo, xT = (1, 1) es
soluci´ n factible para el primal porque cumple las resticciones; por otra parte,
o
yT = (1, 1, 1) es soluci´ n factible para el dual. Se verifica z = 5 ≤ 10 = G.
o
Las soluciones optimas para estos problemas son
´
1 3 3 1
x∗T = , e y∗T = , 0, .
2 2 2 2
11
Los valores de las funciones objetivo coinciden, z ∗ = 2
= G∗ . 2
Investigaci´ n Operativa. Programaci´ n Lineal
o o
14. 96 Tema 3. Dualidad
3.3 Condiciones de holgura complementaria
Las condiciones de holgura complementaria permiten calcular la soluci´ n optima
o ´
del dual a partir de la soluci´ n optima del primal y viceversa. Dichas condiciones
o ´
son consecuencia del siguiente teorema.
Teorema 3.3.1 (Holgura complementaria) Dadas dos soluciones factibles x∗ e
y∗ para el primal y dual respectivamente, son optimas si y s´ lo si se verifica
´ o
x∗T (AT y∗ − c) + y∗T (b − Ax∗ ) = 0.
La interpretaci´ n de este resultado proporciona las condiciones de holgura
o
complementaria. Recordemos que en todos los casos se tienen en cuenta las for-
mas primal y dual sim´ tricas.
e
3.3.1 Interpretaci´ n de las condiciones
o
Dadas soluciones optimas x∗ e y∗ del primal y del dual, respectivamente, las
´
restricciones de ambos problemas se pueden escribir de la siguiente forma:
b − Ax∗ ≥ 0,
AT y∗ − c ≥ 0.
Por otra parte, las soluciones optimas para el primal y el dual, x∗ e y∗ , son vectores
´
que no tienen componentes negativas. Por tanto, si premultiplicamos las desigual-
dades anteriores por y∗T y por x∗T , respectivamente, se tienen las desigualdades
x∗T (AT y∗ − c) ≥ 0,
y∗T (b − Ax∗ ) ≥ 0.
La tesis del teorema de holgura complementaria asegura que la suma de los dos
primeros miembros de las desigualdades anteriores es cero y, teniendo en cuenta
que los dos sumandos son mayores o iguales que cero, podemos concluir que los
dos sumandos deben ser cero simult´ neamente, es decir
a
x∗T (AT y∗ − c) = 0,
y∗T (b − Ax∗ ) = 0.
OpenCourseWare, UPV/EHU
15. 3.3. Condiciones de holgura complementaria 97
En las dos ecuaciones anteriores se tiene el producto de dos factores no nega-
tivos igualado a cero; si uno de los factores no es cero debe ser cero el otro. As´,
ı
se pueden extraer las siguientes conclusiones que permiten calcular la soluci´ n de
o
un problema conocida la del otro.
1. Si una variable primal es estrictamente positiva, la correspondiente restricci´ n
o
dual se verifica con igualdad, no requiere variable de holgura positiva. Es
decir,
x∗ > 0 ⇒ AT y∗ − c = 0.
2. Si una restricci´ n primal no se verifica con igualdad, la correspondiente
o
variable dual toma el valor cero. Es decir,
Ax∗ < b ⇒ y∗ = 0.
3. Si una variable dual es estrictamente positiva, la correspondiente restricci´ n
o
primal se verifica con igualdad. Es decir,
y∗ > 0 ⇒ Ax∗ − b = 0.
4. Si una restricci´ n dual no se verifica con igualdad, la correspondiente varia-
o
ble primal tomar´ el valor cero. Es decir,
a
AT y∗ > c ⇒ x∗ = 0.
Ejemplo. Dado el problema lineal
max z = 3x1 + x2 − 2x3
sujeto a
x1 + 2x2 + x3 ≤ 5
2x1 − x2 + 3x3 ≤ 4
x1 , x2 , x3 ≥ 0
cuya soluci´ n optima es x∗T = ( 13 , 5 , 0), calcularemos la soluci´ n dual uti-
o ´ 5
6
o
lizando el teorema de holgura complementaria.
Investigaci´ n Operativa. Programaci´ n Lineal
o o
16. 98 Tema 3. Dualidad
El problema dual correspondiente es
min G = 5y1 + 4y2
sujeto a
y1 + 2y2 ≥ 3
2y1 − y2 ≥ 1
y1 + 3y2 ≥ −2
y1 , y2 ≥ 0
Restando variables de holgura
min G = 5y1 + 4y2 + 0y3 + 0y4 + 0y5
sujeto a
y1 + 2y2 −y3 =3
2y1 − y2 −y4 =1
y1 + 3y2 −y5 = −2
y1 , y2 , y3 , y4 , y5 ≥ 0
Utilizando las conclusiones del teorema de holgura complementaria, calcu-
lamos la soluci´ n optima del problema dual.
o ´
Variables del primal Restricciones del dual
13
x∗ =
1 5
>0 ∗ ∗ ∗
⇒ y1 + 2y2 = 3 ⇒ y3 = 0
6
x∗ =
2 5
>0 ∗ ∗ ∗
⇒ 2y1 − y2 = 1 ⇒ y4 = 0
x∗ = 0
3
∗ ∗ ∗
⇒ y1 + 3y2 − y5 = −2
Restricciones del primal Variables del dual
13 6 ∗
5
+2× 5
=5 ⇒ calcular el valor de y1
13 6 ∗
2× 5
− 5
=4 ⇒ calcular el valor de y2
Sustituyendo en el sistema de restricciones duales los valores cero para las
∗ ∗
variables de holgura y3 e y4 , se tiene el sistema
∗ ∗
y1 + 2y2 = 3
∗ ∗
2y1 − y2 = 1
∗ ∗ ∗
y1 + 3y2 − y5 = −2
OpenCourseWare, UPV/EHU
17. 3.4. Soluci´ n dual optima
o ´ 99
Resolviendo el sistema se obtiene la soluci´ n optima del modelo dual
o ´
∗ ∗ ∗ ∗ ∗
y1 = 1, y2 = 1, y3 = 0, y4 = 0, y5 = 6.
2
´
3.4 Soluci´ n dual optima
o
Teorema 3.4.1 Sean dos modelos lineales primal-dual sim´ tricos. Si B es base
e
∗T T −1
optima para el problema primal, entonces y = cB B es soluci´ n optima del
´ o ´
problema dual.
Demostraci´ n. Sumando el vector xh de variables de holgura a la forma
o
sim´ trica primal, se tienen las restricciones
e
Ax + Ixh = b,
x, xh ≥ 0.
Si B es la base optima para el primal y xB la soluci´ n factible b´ sica optima,
´ o a ´
entonces zj − cj ≥ 0 para todo vector aj de la matriz A.
zj = cT yj = cT B−1 aj .
B B
Entonces,
cT B−1 A ≥ cT .
B
La ultima desigualdad se puede escribir en forma traspuesta
´
AT (cT B−1 )T ≥ c.
B
El sistema anterior es el sistema de restricciones del dual. Por tanto, el vector
y∗ = (cT B−1 )T es soluci´ n para el dual.
B o
Para comprobar si es factible calculamos los indicadores asociados a los vec-
tores de I,
cT B−1 I ≥ cT .
B I
Dado que las variables del vector xh son de holgura, cI = 0 y se tiene
cT B−1 I = cT B−1 ≥ 0T .
B B
Por tanto, las componentes del vector y∗ = (cT B−1 )T son no negativas.
B
Investigaci´ n Operativa. Programaci´ n Lineal
o o
18. 100 Tema 3. Dualidad
Comprobaremos que y∗ es optima comprobando que los objetivos primal y
´
dual coinciden.
z ∗ = cT xB = cT B−1 b = bT (cT B−1 )T = bT y∗ = G∗ .
B B B
Por ser los objetivos iguales, se deduce que y∗ = (cT B−1 )T es soluci´ n optima
B o ´
para el dual. 2
´
3.4.1 Soluci´ n dual optima en la tabla
o
Veamos que al resolver un problema primal en la tabla optima se tiene tambi´ n la
´ e
soluci´ n optima del modelo dual.
o ´
En el Teorema 3.4.1 se demuestra que si B es la base optima del problema
´
primal, entonces y∗T = cT B−1 es soluci´ n optima del modelo dual. Veremos
B o ´
que ese vector se encuentra en la tabla optima en las posiciones de los indicadores
´
correspondicentes a las columnas aj de la matriz I. Calculando dichos indicadores
zj − cj = cT B−1 aj − cj .
B
Si calculamos al mismo tiempo todos los valores zj − cj asociados a los vec-
tores de la matriz I, se tiene el siguiente vector:
cT B−1 I − cT = cT B−1 − cT .
B I B I
Por tanto, para calcular el vector soluci´ n optima del dual y∗T = cT B−1 s´ lo
o ´ B o
hay que sumar cT a los elementos indicadores de la tabla optima asociados a la
I ´
matriz identidad de la tabla inicial. Se pueden dar dos casos:
• Si la matriz I est´ formada por variables de holgura, entonces cI = 0.
a
• Si hay variables artificiales en la base I inicial, el vector cI contienen los
valores M correspondientes a las variables artificiales con los que se ha
penalizado la funci´ n objetivo.
o
Ejemplo. Consideramos el problema de la p´ gina 97
a
max z = 3x1 + x2 − 2x3
sujeto a
x1 + 2x2 + x3 ≤ 5
2x1 − x2 + 3x3 ≤ 4
x1 , x2 , x3 ≥ 0
Sumando variables de holgura la tabla inicial es
OpenCourseWare, UPV/EHU
19. 3.4. Soluci´ n dual optima
o ´ 101
x1 x2 x3 x4 x5
−3 −1 2 0 0 0
a4 1 2 1 1 0 5
a5 2 −1 3 0 1 4
La tabla optima utilizando el algoritmo simplex es
´
x1 x2 x3 x4 x5
0 0 6 1 1 9
1 2
a2 0 1 −5 5
−1
5
6
5
7 1 2 13
a1 1 0 5 5 5 5
Soluci´ n optima del primal:
o ´
13 ∗ 6 ∗
x∗ =
1 , x2 = , x3 = 0, z ∗ = 9.
5 5
Para calcular la soluci´ n optima dual en la tabla se observa que la primera
o ´
base est´ formada por variables de holgura. En la tabla optima, las columnas
a ´
−1
correspondientes a x4 y x5 proporcionan B y la soluci´ n optima del dual est´
o ´ a
asociada a los indicadores de dichas variables,
(z4 − c4 , z5 − c5 ) = cT B−1 I − cT = (1, 1) − cT .
B I I
Teniendo en cuenta que cT = (c4 , c5 ) = (0, 0),
I
y∗T = cT B−1 = (1, 1)
B
es soluci´ n optima del problema dual. El valor de la funci´ n objetivo dual es
o ´ o
∗
G = 9. 2
Ejemplo. Considerar el modelo lineal
min z = x1 + 2x2
sujeto a
4x1 + 3x2 ≤ 12
x1 + 3x2 ≥ 6
2x1 + x2 ≥ 4
x1 , x2 ≥ 0
Investigaci´ n Operativa. Programaci´ n Lineal
o o
21. 3.5. Interpretaci´ n econ´ mica de la dualidad
o o 103
Para calcular la soluci´ n optima del dual vemos que en la primera tabla las colum-
o ´
nas correspondientes a las variables x3 , w1 y w2 forman la matriz identidad. En
la tabla optima las columnas correspondientes a las mismas variables proporcio-
´
−1
nan B y la soluci´ n optima del dual esta asociada a los indicadores de dichas
o ´
variables.
3 1
(z3 − c3 , zw1 − cw1 , zw2 − cw2 ) = cT B−1 I − cT = (0, M − , M − ).
B I
5 5
Teniendo en cuenta que cT = (c3 , cw1 , cw2 ) = (0, −M, −M),
I
3 1
y∗T = cT B−1 − cT + cT = (0, M − , M − ) + (0, −M, −M).
B I I
5 5
En principio podr´amos decir que la soluci´ n optima dual es
ı o ´
3 1
y∗T = (0, − , − ).
5 5
Sin embargo, es necesario comprobar si el signo de las variables es correcto.
Si calculamos el problema dual asociado al ejemplo, podemos ver que y2 e y3
deben ser no negativas. En este caso los valores obtenidos de la tabla para dichas
variables son negativos. Esto es debido a que la fila de indicadores de la tabla
optima est´ influenciada por los cambios que se han hecho en la funci´ n objetivo
´ a o
para aplicar el algoritmo. En este ejemplo el objetivo inicial es minimizar y lo
hemos adecuado a maximizar, por eso los signos obtenidos no son los correctos.
Por tanto, la soluci´ n optima del dual es
o ´
3 ∗ 1 22
y1 = 0, y2 = , y3 = , G∗ = .
∗ ∗
5 5 5
2
La incorrecci´ n en el signo de los valores de la tabla para ser asignados a
o
las variables duales aparece tambi´ n cuando se cambia el sentido de alguna res-
e
tricci´ n primal antes de aplicar el algoritmo. Estos cambios se pueden explicar
o
observando las relaciones primal-dual de la Tabla 3.1 de la p´ gina 87. Lo que
a
se puede concluir es que el valor absoluto de las componentes del vector cT B−1
B
coincide con el valor absoluto de las variables duales optimas.
´
3.5 Interpretaci´ n econ´ mica de la dualidad
o o
La soluci´ n optima de un modelo lineal determina la asignaci´ n optima de recur-
o ´ o ´
sos limitados. Como veremos, el valor optimo de las variables duales indica si es
´
Investigaci´ n Operativa. Programaci´ n Lineal
o o
22. 104 Tema 3. Dualidad
o no conveniente cambiar el nivel de recursos en el modelo. Esta informaci´ n la
o
proporcionan los precios sombra que definimos a continuaci´ n.
o
3.5.1 Precios sombra
Sea un modelo lineal y la base optima B. Esta base optima proporciona una
´ ´
∗ ∗
soluci´ n optima primal x y el valor optimo z y, tambi´ n, una soluci´ n optima
o ´ ´ e o ´
∗ ∗
dual y y el valor G .
Supongamos que el vector b cambia a b + ∆b. Veamos c´ mo afecta este
o
cambio a los c´ lculos de la tabla asociada a la base optima B si la factibilidad
a ´
primal no se pierde.
• La soluci´ n primal asociada a la base optima y al nuevo vector de recursos
o ´
∧
xB = B−1 (b + ∆b) = xB + B−1 ∆b.
• La fila de indicadores no cambia por los cambios en el vector de recursos.
zj − cj = cT B−1 aj − cj .
B
• El valor de la funci´ n objetivo primal y dual cambian en funci´ n del incre-
o o
mento en el vector de recursos.
∧∗
∗T ∗T ∗T ∗ ∗T ∗ ∗T
G = y (b + ∆b) = y b + y ∆b = G + y ∆b = z + y ∆b.
Se puede concluir que un cambio en el vector b que mantenga la factibilidad
primal produce los siguientes cambios en la soluci´ n del problema:
o
• las componentes de la soluci´ n optima dual se mantienen,
o ´
• las componentes de la soluci´ n primal cambian en la cantidad B−1 ∆b,
o
• los valores objetivo primal y dual cambian en la cantidad y∗T ∆b.
La conclusi´ n es que si se incrementa el vector de recursos y se verifica que
o
∧ −1 ∧
xB = B (b + ∆b) ≥ 0 , entonces xB es la nueva soluci´ n optima para el pro-
o ´
∗
blema primal e y sigue siendo soluci´ n optima para el dual. El valor optimo de
o ´ ´
ambos objetivos se incrementa en la cantidad y∗T ∆b.
OpenCourseWare, UPV/EHU
23. 3.5. Interpretaci´ n econ´ mica de la dualidad
o o 105
Para poder interpretar el significado de cada variable dual supongamos que
∆bi = 1 y el resto es cero, entonces el incremento del objetivo es
0
.
.
.
y∗T ∆b = (y1 , . . . , yi , . . . , ym ) 1 = yi .
∗ ∗ ∗ ∗
.
.
.
0
Es decir, si s´ lo se incrementa el recurso i en una unidad y la factibilidad pri-
o
mal no se pierde, entonces la cantidad en la que se incrementa la funci´ n objetivo
o
∗
es el valor optimo de la correspondiente variable dual, yi .
´
∗
Definici´ n 3.5.1 (Precio sombra) La variable dual optima yi se llama precio
o ´
sombra del recurso i, i = 1, . . . , m, si haciendo un cambio unitario en el re-
curso i y manteniendo el resto de recursos, no se pierde la factibilidad primal.
Ejemplo. Consideremos el ejemplo de la p´ gina 100. Veamos si los valores
a
∗ ∗
de la soluci´ n dual optima, y1 = 1 e y2 = 1, son los precios sombra de los
o ´
respectivos recursos b1 y b2 .
• Si b1 = 5 es sustituido por b1 + ∆b1 = 6, es decir, ∆b1 = 1, calculamos
2 1 8
∧ −5 6
xB = B−1 (b + ∆b) = 5 = 5 .
1 2 14
5 5
4 5
∧ ∗
La factibilidad primal no se pierde porque xB ≥ 0. Podemos decir que y1
es el precio sombra del recurso b1 . El nuevo valor optimo de la funci´ n
´ o
objetivo es
∧∗
z = z ∗ + y1 = 9 + 1 = 10.
∗
• La misma interpretaci´ n para el recurso b2 . Supongamos en este caso que
o
b2 = 4 es sustituido por b2 + ∆b2 = 3. Calculamos
2 1 7
∧ −5 5
xB = B−1 (b + ∆b) = 5 = 5 .
1 2 11
5 5
3 5
Investigaci´ n Operativa. Programaci´ n Lineal
o o
24. 106 Tema 3. Dualidad
∧ ∗
La factibilidad primal no se pierde porque xB ≥ 0. Podemos decir que y2
es el precio sombra del recurso b2 . El nuevo valor optimo de la funci´ n
´ o
objetivo es
∧∗
z = z ∗ − y2 = 9 − 1 = 8.
∗
En este caso el valor optimo de la funci´ n objetivo disminuye el precio
´ o
∗
sombra y2 porque el incremento del recurso segundo es negativo.
2
Ejemplo. Para el ejemplo de la p´ gina 101 la soluci´ n optima del problema
a o ´
dual es
∗ ∗ 3 ∗ 1
y1 = 0 , y2 = , y3 = .
5 5
Supongamos que el recurso primero aumenta en una unidad, de b1 = 12 a b1 +
∆b1 = 13 . Calculamos
2 9 17
1 −5 −5 13
∧
5
−1
xB = B (b + ∆b) = 0 2 1
6 = 5 ≥ 0.
8
−5
5
0 −1 5
3
5
4 6
5
∗
Como la factibilidad primal se mantiene, se puede decir que la variable y1 es el
precio sombra del recurso 1. Observamos, sin embargo, que el valor de la funci´ n
o
∗
objetivo no cambia porque el precio sombra es y1 = 0. Es decir,
∧∗ 22 22
z = z ∗ + y1 =
∗
+0= .
5 5
El precio sombra del recurso primero igual a cero coincide con el hecho de que la
primera restricci´ n del problema primal se verifica con desigualdad. Si compro-
o
6 8
bamos la restricci´ n 4x1 + 3x2 ≤ 12 para los valores optimos x∗ = 5 , x∗ = 5 ,
o ´ 1 2
6 8
4× + 3 × < 12.
5 5
Esto significa que hay recurso primero en exceso y, por tanto, aumentar la cantidad
del primer recurso no tiene ninguna influencia en el valor optimo. En este caso se
´
puede considerar la posibilidad de disminuir la cantidad de dicho recurso. 2
OpenCourseWare, UPV/EHU
25. 3.5. Interpretaci´ n econ´ mica de la dualidad
o o 107
3.5.2 Coste econ´ mico de las variables primales e interpretaci´ n
o o
del m´ todo simplex
e
Una manera sencilla de entender el coste econ´ mico de las variables primales es
o
a trav´ s de un ejemplo.
e
En una empresa se fabrican 4 productos: 1, 2, 3 y 4. En la producci´ n se
o
utilizan 3 recursos: A, B y C. En la Tabla se da la cantidad de recurso necesario
por unidad de producto, la disponibilidad de cada recurso y el beneficio unitario.
Productos Disponibilidad
Recurso 1 2 3 4 Recurso
A 2 3 1.5 4 300
B 2 4 3 1 500
C 5 1 2 2 250
Beneficio 4 3 6 2
Sean xj , j = 1, 2, 3, 4, las unidades del producto j que se producen. Podemos
plantear el siguiente modelo lineal para este problema de producci´ n.
o
max z = 4x1 + 3x2 + 6x3 + 2x4
sujeto a
2x1 + 3x2 + 1.5x3 + 4x4 ≤ 300
2x1 + 4x2 + 3x3 + x4 ≤ 500
5x1 + x2 + 2x3 + 2x4 ≤ 250
x1 , x2 , x3 , x4 ≥ 0
Supongamos ahora que una empresa competidora quiere comprar los recursos
b1 = 300, b2 = 500 y b3 = 250. El objetivo de la segunda empresa es obtener los
recursos a m´nimo coste; si el precio unitario que paga por los recursos A, B y C
ı
es y1 , y2 e y3 , respectivamente, el objetivo ser´
a
min G = 300y1 + 500y2 + 250y3 .
Investigaci´ n Operativa. Programaci´ n Lineal
o o
26. 108 Tema 3. Dualidad
Podemos suponer que la primera empresa no vender´ los recursos por un precio
a
(coste econ´ mico) inferior al que consigue por su uso en la producci´ n (beneficio).
o o
Para una unidad del producto 1, la primera empresa utiliza 2 unidades de A,
2 unidades de B y 5 de C y el beneficio por la producci´ n es 4. Si vende estas
o
unidades a la segunda empresa ganar´ 2y1 + 2y2 + 5y3 , ese es el coste econ´ mico
a o
de la actividad 1. Por tanto, la empresa s´ lo estar´a dispuesta a ceder los recursos
o ı
si el coste econ´ mico de llevar a cabo la actividad es superior al beneficio. Es
o
decir, si se verifica la siguiente restricci´ n que es la primera del modelo dual.
o
2y1 + 2y2 + 5y3 ≥ 4.
Haciendo la misma interpretaci´ n para los otros tres productos se tiene el siguiente
o
modelo dual:
min G = 300y1 + 500y2 + 250y3
sujeto a
2y1 + 2y2 + 5y3 ≥ 4
3y1 + 4y2 + y3 ≥ 3
1.5y1 + 3y2 + 2y3 ≥ 6
4y1 + y2 + 2y3 ≥ 2
y1 , y2 , y3 ≥ 0
En el algoritmo simplex, una variable no b´ sica xj puede pasar a ser b´ sica
a a
en una iteraci´ n posterior si su indicador zj − cj es negativo. La raz´ n de esta
o o
condici´ n es que el indicador de la variable xj es la restricci´ n j del problema
o o
dual y, cuando es negativo, lo que ocurre es que el coste econ´ mico de la actividad
o
es menor que el beneficio y eso significa que es rentable su producci´ n. Esto se
o
ve en las siguiente f´ rmula:
o
m
zj − cj = cT B−1 aj − cj = yT aj − cj =
B aij yi − cj .
i=1
Si zj − cj < 0, entonces
m
aij yi < cj .
i=1
Es decir, el coste econ´ mico de la actividad j es menor que el beneficio cj asocia-
o
do a la producci´ n de dicha actividad.
o
OpenCourseWare, UPV/EHU
27. 3.6. El m´ todo simplex dual
e 109
3.6 El m´ todo simplex dual
e
En el Tema 2 hemos visto que el algoritmo simplex empieza eligiendo como
primera base la matriz identidad, utilizando si es necesario variables artificiales,
para calcular una soluci´ n primal factible. En sucesivas iteraciones el algoritmo
o
va de una soluci´ n factible b´ sica a otra hasta alcanzar la optima, es decir, hasta
o a ´
que en la tabla zj − cj ≥ 0 para todo aj de la matriz A. Estas condiciones de la
fila de indicadores son las asociadas a la factibilidad dual. Es decir, el algoritmo
simplex comienza en una soluci´ n primal factible y termina cuando se obtiene
o
la factibilidad dual. De ahora en adelante a este m´ todo le llamaremos simplex
e
primal
A continuaci´ n introducimos el algoritmo simplex dual que comienza tambi´ n
o e
eligiendo como primera base la matriz I, pero en este caso siempre formada
por variables de holgura. El primer paso es escribir el modelo lineal en forma
sim´ trica de maximizaci´ n y sumar una variable de holgura en cada restricci´ n.
e o o
Si en la primera tabla hay factibilidad dual se realiza el n´ mero necesario de ite-
u
raciones hasta conseguir tambi´ n la factibilidad primal. Si elegida as´ la primera
e ı
base en la primera tabla no hay factibilidad dual, entonces ser´ necesario a˜ adir
a n
una restricci´ n artificial como veremos en la Secci´ n 3.7.
o o
3.6.1 Algoritmo simplex dual
El objetivo es maximizar. Se elige como primera base la matriz B = I formada
por variables de holgura.
Paso 1. Construir la primera tabla en la que zj − cj ≥ 0 para todo vector aj
de la matriz A.
Paso 2. Con respecto a la factibilidad primal, se pueden dar dos casos.
• Si xBi ≥ 0, i = 1, . . . , m, entonces la soluci´ n es optima. Parar.
o ´
• Si existe xBi < 0, entonces la soluci´ n se puede mejorar. Ir al Paso 3.
o
Paso 3. Cambio de base.
• Sale de la base el vector ar que verifica la condici´ n
o
xBr = min{xBi /xBi < 0}.
i
La fila r es la fila pivote.
Investigaci´ n Operativa. Programaci´ n Lineal
o o
28. 110 Tema 3. Dualidad
• Entra en la base el vector ak que verifica la condici´ n
o
zk − ck zj − cj
= max /yrj < 0 .
yrk j yrj
La columna k es la columna pivote. yrk es el pivote.
Si no existe yrj , j = 1, . . . , n, negativo, entonces el problema es infactible.
Parar.
Paso 4. Calcular una nueva tabla con las mismas operaciones elementales
definidas en el algoritmo simplex. Ir al Paso 2.
Ejemplo. Sea el modelo lineal
min z = 3x1 + 2x2
sujeto a
x1 + 2x2 ≥ 3
−2x1 + x2 ≥ 2
x1 + 4x2 ≥ 7
x1 , x2 ≥ 0
Para resolverlo utilizando el algoritmo simplex dual escribimos el modelo en
forma sim´ trica de maximizaci´ n
e o
max (−z) = −3x1 − 2x2
sujeto a
−x1 − 2x2 ≤ −3
2x1 − x2 ≤ −2
−x1 − 4x2 ≤ −7
x1 , x2 ≥ 0
Sumamos una variable de holgura en cada restricci´ n para escribirlas con igual-
o
dad.
OpenCourseWare, UPV/EHU
29. 3.6. El m´ todo simplex dual
e 111
max (−z) = −3x1 − 2x2 + 0x3 + 0x4 + 0x5
sujeto a
−x1 − 2x2 + x3 = −3
2x1 − x2 + x4 = −2
−x1 − 4x2 + x5 = −7
x1 , x2 , x3 , x4 , x5 ≥ 0
Paso 1. Construir la primera tabla.
x1 x2 x3 x4 x5
1
3 2 0 0 0 0 −2
1
a3 −1 −2 1 0 0 −3 2
1
a4 2 −1 0 1 0 −2 4
a5 −1 −4 0 0 1 −7
Paso 2. En esta tabla todos los indicadores zj −cj son no negativos, es decir,
hay factibilidad dual y es posible aplicar el algoritmo simplex dual. No hay
factibilidad primal y, por tanto, la soluci´ n se puede mejorar.
o
−3
xB = −2 ≥ 0.
−7
Paso 3. Cambio de base.
xB3 = min{−3, −2, −7} = −7.
Sale de la base el vector a5 . La fila 3 es la fila pivote.
zk − ck 3 2 1 z2 − c2
= max , =− = .
yik −1 −4 2 y22
Entra en la base el vector a2 . La columna 2 es la columna pivote.
Investigaci´ n Operativa. Programaci´ n Lineal
o o
30. 112 Tema 3. Dualidad
Paso 4. Calcular la nueva tabla. El pivote es −4, el multiplicador para la
primera fila es 1 , el multiplicador para la fila segunda es 1 y el multiplicador
2 4
1
para la fila de indicadores − 2 .
Haciendo operaciones elementales por filas se tiene la siguiente tabla:
x1 x2 x3 x4 x5
5 1
2
0 0 0 2
− 7 −2
2
1
0 a3 − 2 0 1 0 −1
2
1
2
2
9
0 a4 4
0 0 1 −1
4
−1
4
1
−2 a2 4
1 0 0 −1
4
7
4
1
Volviendo al Paso 2 vemos que no hay factibilidad primal y hay que hacer una
nueva iteraci´ n. Sale de la base el vector a4 y entra el vector a5 . La nueva tabla
o
es
x1 x2 x3 x4 x5
7 0 0 2 0 −4
0 a3 −4 0 1 −2 0 1
0 a5 −9 0 0 −4 1 1
−2 a2 −2 1 0 −1 0 2
Volviendo al Paso 2 vemos que en esta tabla hay factibilidad primal y, por
tanto, es optima. La soluci´ n optima es
´ o ´
x∗ = 0, x∗ = 2 y el valor objetivo optimo z ∗ = 4.
1 2 ´
2
3.7 El m´ todo de la restricci´ n artificial
e o
El algoritmo simplex dual requiere que en la primera tabla haya factibilidad dual.
Esto no ocurre para todos los modelos lineales y, en ese sentido, este algoritmo es
de aplicaci´ n restringida. Una extensi´ n del algoritmo simplex dual que permite
o o
OpenCourseWare, UPV/EHU
31. 3.7. El m´ todo de la restricci´ n artificial
e o 113
que pueda ser aplicado para resolver cualquier modelo lineal es el m´ todo de la
e
restricci´ n artificial.
o
Cuando no hay factibilidad dual en la tabla inicial, se trata de a˜ adir una res-
n
tricci´ n artificial al modelo que se pretende resolver. Esta restricci´ n artificial no
o o
deber´ modificar la regi´ n de factibilidad del problema. Se a˜ ade con el unico
a o n ´
objetivo de obtener factibilidad dual en la tabla y, a partir de ah´, poder continuar
ı
con el algoritmo simplex dual. La restricci´ n artificial que se a˜ ade es
o n
xj ≤ M,
j∈N
donde N es el conjunto de variables para las que zj − cj es negativo en la
primera tabla y M es un valor positivo muy grande de manera que la restricci´ n
o
a˜ adida no modifique la regi´ n de soluciones.
n o
Ejemplo. Dado el modelo lineal
max z = x1 + 6x2
sujeto a
x1 + 2x2 ≤ 20
1 1
x1 + x2 ≥
2 2
x1 , x2 ≥ 0
Escribimos el modelo en forma sim´ trica de maximizaci´ n y sumamos una
e o
variable de holgura en cada restricci´ n.
o
max z = x1 + 6x2 + 0x3 + 0x4
sujeto a
x1 + 2x2 + x3 = 20
1 1
−x1 − x2 + x4 = −
2 2
x1 , x2 , x3 , x4 ≥ 0
Elegimos la matriz B = I = (a3 a4 ) y se construye la primera tabla
x1 x2 x3 x4
−1 −6 0 0 0
a3 1 2 1 0 20
1
a4 −1 −2 0 1 −1
2
Investigaci´ n Operativa. Programaci´ n Lineal
o o
32. 114 Tema 3. Dualidad
El problema es que en esta tabla no hay factibilidad dual como requiere el
algoritmo simplex dual. Para poder tener una tabla asociada a este problema y
con factibilidad dual a˜ adimos al problema una restricci´ n artificial, en este caso
n o
x1 + x2 ≤ M.
Sumando una variable de holgura a la restricci´ n artificial se tiene el siguiente
o
modelo:
max z = x1 + 6x2 + 0x3 + 0x4 + 0x5
sujeto a
x1 + 2x2 + x3 = 20
1 1
−x1 − x2 + x4 =−
2 2
x1 + x2 + x5 = M
x1 , x2 , x3 , x4 , x5 ≥ 0
Podemos elegir la matriz B = I = (a3 a4 a5 ) y construir la primera tabla
asociada al modelo con restricci´ n artificial
o
x1 x2 x3 x4 x5
−1 −6 0 0 0 0 −6
0 a3 1 2 1 0 0 20 2
1
0 a4 −1 −2 0 1 0 −1
2
−1
2
0 a5 1 1 0 0 1 M
En el algoritmo simplex dual con restricci´ n artificial se detalla el primer cam-
o
bio de base para obtener una tabla con factibilidad dual. 2
3.7.1 Efecto de la restricci´ n artificial
o
De manera resumida, podemos decir que el m´ todo de la restricci´ n artificial com-
e o
plementa el algoritmo simplex dual cuando es necesario. A˜ adir una restricci´ n
n o
artificial al problema no debe afectar a la regi´ n de soluciones y, para eso el valor
o
de M debe ser suficientemente grande.
Gr´ ficamente podemos ver de forma intuitiva como afecta a la regi´ n de solu-
a o
ciones de un modelo a˜ adir una restricci´ n artificial. Supongamos que tenemos
n o
OpenCourseWare, UPV/EHU
33. 3.7. El m´ todo de la restricci´ n artificial
e o 115
un problema cuya regi´ n de soluciones es la que aparece sombreada en la gr´ fica.
o a
Si la restricci´ n artificial es x1 + x2 ≤ M, con M suficientemente grande, la
o
restricci´ n artificial no afecta a la regi´ n de soluciones (ver gr´ fica).
o o a
x2
opt
x1 + x2 = M
(x∗ , x∗ )
1 2
x1
Si, por el contrario, el valor de M no es suficientemente grande, vemos en
la siguiente gr´ fica que se pierden puntos de la regi´ n; los puntos de la zona
a o
sombreada que no son de la rayada ya no pertenecen a la regi´ n de soluciones del
o
problema cuando se a˜ ade la restricci´ n artificial x1 + x2 ≤ M (ver gr´ fica).
n o a
x2
x1 + x2 = M
opt
(x∗ , x∗ )
1 2
x1
Investigaci´ n Operativa. Programaci´ n Lineal
o o
34. 116 Tema 3. Dualidad
Por ultimo, en el caso en que un problema tenga una regi´ n no acotada, al
´ o
a˜ adir una restricci´ n artificial, por muy grande que sea el valor de M, la regi´ n
n o o
de soluciones pierde puntos. Esto se puede ver en la siguiente gr´ fica.
a
x2
opt
x1 + x2 = M
x1
Como conclusi´ n de los dos casos anteriores podemos decir que cuando la
o
variable de holgura de la restricci´ n artificial no est´ en la base optima puede ser
o a ´
por dos razones: M no es suficientemente grande o la soluci´ n es no acotada.
o
3.7.2 Algoritmo simplex dual con restricci´ n artificial
o
El objetivo es maximizar. Elegir como primera base B = I formada por variables
de holgura.
Paso 1. Construir la tabla inicial.
Paso 2. Necesidad de restricci´ n artificial.
o
• Si para todo vector aj de la matriz A zj − cj ≥ 0, ir al Paso 3.
• Si existe un vector aj en la matriz A tal que zj − cj < 0, anadir ˜
una restricci´ n artificial al modelo, construir la primera tabla para el
o
nuevo modelo y hacer el siguiente cambio de base.
Entra en la base el vector ak que verifica
zk − ck = min{zj − cj /zj − cj < 0}.
j
OpenCourseWare, UPV/EHU
35. 3.7. El m´ todo de la restricci´ n artificial
e o 117
Sale el vector de holgura de la restricci´ n artificial.
o
Hacer operaciones elementales para conseguir factibilidad dual. Ir al
Paso 3.
Paso 3. Factibilidad primal.
• No hay restricci´ n artificial.
o
– Si xBi ≥ 0, i = 1, . . . , m, entonces soluci´ n optima. Parar.
o ´
– Si para alg´ n i = 1, . . . , m, xBi < 0, entonces la soluci´ n se
u o
puede mejorar. Ir al Paso 4.
• Si hay restricci´ n artificial.
o
– Si xBi ≥ 0, i = 1, . . . , m y la variable de holgura de la restricci´ n
o
artificial est´ en la base con valor positivo, entonces soluci´ n
a o
´
optima. Parar.
– Si xBi ≥ 0, i = 1, . . . , m y la variable de holgura de la restricci´ n
o
artificial no est´ en la base o siendo b´ sica vale cero, soluci´ n no
a a o
acotada. Parar.
– Si existe xBi < 0 para alg´ n i = 1, . . . , m, entonces la soluci´ n
u o
se puede mejorar. Ir al Paso 4.
Paso 4. Cambio de base.
• Sale de la base el vector ar que verifica
xBr = min{xBi /xBi < 0}.
i
La fila r es la fila pivote.
• Entra en la base el vector ak que verifica
zk − ck zj − cj
= max /yrj < 0 .
yrk j yrj
La columna k es la columna pivote. El elemento yrk es el pivote.
Si no existe en la fila r ning´ n elemento yrj negativo, entonces problema
u
infactible. Parar
Paso 5. Calcular una nueva tabla haciendo operaciones elementales. Ir al
Paso 3.
Investigaci´ n Operativa. Programaci´ n Lineal
o o
36. 118 Tema 3. Dualidad
3.8 Soluci´ n de modelos lineales
o
En este apartado se utiliza el algoritmo simplex dual para resolver tres problemas
que requieren restricci´ n artificial.
o
Problema factible. Consideramos el ejemplo de la p´ gina 113. Vimos que
a
eligiendo como matriz base la identidad formada por variables de holgura en la
primera tabla no hay factibilidad primal pero tampoco dual. Entonces, es nece-
sario a˜ adir la restricci´ n artificial x1 + x2 ≤ M.
n o
Primera iteraci´ n.
o
La primera tabla es
x1 x2 x3 x4 x5
−1 −6 0 0 0 0 −6
0 a3 1 2 1 0 0 20 2
1
0 a4 −1 −2 0 1 0 −1
2
−1
2
0 a5 1 1 0 0 1 M
Se hace el siguiente cambio de base para obtener factibilidad dual. Entra en la
base el vector asociado al indicador negativo m´ s peque˜ o, a2 , y sale de la base el
a n
vector de holgura de la restricci´ n artificial, a5 . Haciendo opraciones elementales
o
se tiene la siguiente tabla:
x1 x2 x3 x4 x5
5 0 0 0 6 6M
0 a3 −1 0 1 0 −2 −2M + 20
0 a4 −1
2
0 0 1 1
2
1
2
M − 1
2
6 a2 1 1 0 0 1 M
Se observa que en la tabla hay factibilidad dual y se puede continuar con los
pasos del algoritmo. Sale de la base el vector a3 y entra el vector a5 y con las
operaciones elementales habituales se obtiene la siguiente tabla:
OpenCourseWare, UPV/EHU
37. 3.8. Soluci´ n de modelos lineales
o 119
x1 x2 x3 x4 x5
2 0 3 0 0 60
1
0 a5 2
0 −1
2
0 1 M − 10
0 a4 −3
4
0 1
4
1 0 9
2
1 1
6 a2 2
1 2
0 0 10
En esta tabla hay factibilidad primal y la variable de holgura de la restricci´ n
o
∗ ∗ ∗
artificial es b´ sica; la soluci´ n optima es x1 = 0 , x2 = 10 , z = 60.
a o ´ 2
Problema con soluci´ n no acotada. Considerar el modelo lineal
o
max z = −4x1 + 5x2
sujeto a
2x1 + 2x2 ≥ 4
x1 − x2 ≥ 3
x1 , x2 ≥ 0
En primer lugar se escribe el modelo en forma sim´ trica de maximizaci´ n. Sumando
e o
variables de holgura y a˜ adiendo la restricci´ n artificial x2 ≤ M se tiene el pro-
n o
blema
max z = −4x1 + 5x2 + 0x3 + 0x4 + 0x5
sujeto a
−2x1 − 2x2 + x3 = −4
−x1 + x2 + x4 = −3
x2 + x5 = M
x1 , x2 , x3 , x4 , x5 ≥ 0
Investigaci´ n Operativa. Programaci´ n Lineal
o o
38. 120 Tema 3. Dualidad
x1 x2 x3 x4 x5
4 −5 0 0 0 0
0 a3 −2 −2 1 0 0 −4 −2
0 a4 −1 1 0 1 0 −3 1
0 a5 0 1 0 0 1 M
4 0 0 0 5 5M
0 a3 −2 0 1 0 2 2M − 4 2
0 a4 -1 0 0 1 −1 −M − 3
5 a2 0 1 0 0 1 M 0
0 0 0 4 1 M − 12
0 a3 0 0 1 −2 4 4M + 2
−4 a1 1 0 0 −1 1 M +3
5 a2 0 1 0 0 1 M
La ultima tabla tiene factibilidad primal y dual y, por tanto, es optima. Sin em-
´ ´
bargo, la variable de holgura de la restricci´ n artificial, x5 , no est´ en la tabla
o a
optima. Entonces, el problema primal es no acotado y el dual infactible.
´ 2
Problema infactible. Considerar el modelo lineal
max z = 2x1 + x2
sujeto a
x1 + x2 ≤ 2
−3x1 + x2 ≥ 3
x1 , x2 ≥ 0
A˜ adiendo variables de holgura y la restricci´ n artificial x1 + x2 ≤ M se tiene el
n o
problema
OpenCourseWare, UPV/EHU