Introducción a la investigación de operaciones

311
1 INTRODUCCIÓN A LA INVESTIGACIÓN DE OPERACIONES Tabla de contenido P R O L O G O FUNDAMENTACIÓN 1. Objetivo de la materia. INTRODUCCIÓN A LA INVESTIGACIÓN DE OPERACIONES 1. Antecedentes históricos de la IO. 2. Metodología de la Investigación de Operaciones 3. Aplicaciones de la Investigación de Operaciones 4. Referencias Bibliográficas 1. PROGRAMACION LINEAL (PL). 1.1. Objetivo. 1.2. Antecedentes históricos y definición. 1.3. Modelo de programación lineal general. 1.4. Formulación de problemas con programación lineal. 1.5. Solución para el modelo de programación lineal. 1.6. Ejercicios, actividades de aprendizaje y autoevaluaciones correspondientes al capítulo [MAT96] 1.7. Referencias bibliográficas 2. SOLUCIÓN ANALÍTICA DEL MODELO DE PROGRAMACIÓN LINEAL. 2.1. Objetivo. 2.2. Conceptos relacionados. 2.3. Teoremas de la programación lineal. 2.4. Método Simplex. 2.5. Matriz unitaria "I" de base con variables artificiales. 2.6. Casos especiales en la tabla Simplex. 2.7. Teoría de la dualidad. 2.8. Ejercicios, actividades de aprendizaje y autoevaluaciones correspondientes al capítulo 2.9. Referencias bibliográficas 3. ANÁLISIS DE SENSIBILIDAD DEL MODELO DE PROGRAMACIÓN LINEAL. 3.1. Objetivo. 3.2. Método Dual - Simplex. 3.3. Análisis de sensibilidad. 3.4. Ejercicios, actividades de aprendizaje y autoevaluaciones correspondientes al capítulo 3.5. Referencias bibliográficas 4. APLICACIONES DE LA PROGRAMACIÓN LINEAL 4.1. Objetivo. 4.2. Definiciones. 4.3. Red de distribución. 4.4. Redes de flujo 4.5. Ejercicios, actividades de aprendizaje y autoevaluaciones correspondientes al capítulo 4.6. Referencias bibliográficas A. ECUACIONES LINEALES, MATRICES Y DETERMINANTES. A.1. Sistemas de ecuaciones lineales A.2. Matrices y determinantes B. RESULTADOS A PROBLEMAS EJERCICIO EN CAPÍTULOS DEL LIBRO. B.1. Capítulo 1 B.2. Capítulo 2.

Transcript of Introducción a la investigación de operaciones

1

INTRODUCCIÓN A LA INVESTIGACIÓN DE OPERACIONES

Tabla de contenido P R O L O G O

FUNDAMENTACIÓN

1. Objetivo de la materia.

INTRODUCCIÓN A LA INVESTIGACIÓN DE OPERACIONES

1. Antecedentes históricos de la IO.

2. Metodología de la Investigación de Operaciones

3. Aplicaciones de la Investigación de Operaciones

4. Referencias Bibliográficas

1. PROGRAMACION LINEAL (PL).

1.1. Objetivo.

1.2. Antecedentes históricos y definición.

1.3. Modelo de programación lineal general.

1.4. Formulación de problemas con programación lineal.

1.5. Solución para el modelo de programación lineal.

1.6. Ejercicios, actividades de aprendizaje y autoevaluaciones correspondientes al capítulo [MAT96]

1.7. Referencias bibliográficas

2. SOLUCIÓN ANALÍTICA DEL MODELO DE PROGRAMACIÓN LINEAL.

2.1. Objetivo.

2.2. Conceptos relacionados.

2.3. Teoremas de la programación lineal.

2.4. Método Simplex.

2.5. Matriz unitaria "I" de base con variables artificiales.

2.6. Casos especiales en la tabla Simplex.

2.7. Teoría de la dualidad.

2.8. Ejercicios, actividades de aprendizaje y autoevaluaciones correspondientes al capítulo

2.9. Referencias bibliográficas

3. ANÁLISIS DE SENSIBILIDAD DEL MODELO DE PROGRAMACIÓN LINEAL.

3.1. Objetivo.

3.2. Método Dual - Simplex.

3.3. Análisis de sensibilidad.

3.4. Ejercicios, actividades de aprendizaje y autoevaluaciones correspondientes al capítulo

3.5. Referencias bibliográficas

4. APLICACIONES DE LA PROGRAMACIÓN LINEAL

4.1. Objetivo.

4.2. Definiciones.

4.3. Red de distribución.

4.4. Redes de flujo

4.5. Ejercicios, actividades de aprendizaje y autoevaluaciones correspondientes al capítulo

4.6. Referencias bibliográficas

A. ECUACIONES LINEALES, MATRICES Y DETERMINANTES.

A.1. Sistemas de ecuaciones lineales

A.2. Matrices y determinantes

B. RESULTADOS A PROBLEMAS EJERCICIO EN CAPÍTULOS DEL LIBRO.

B.1. Capítulo 1

B.2. Capítulo 2.

2

B.3. Capítulo 3.

B.4. Capítulo 4.

P R O L O G O

Cuando se tiene la intención de cursar INVESTIGACIÓN DE OPERACIONES (IO), ya sea como opción o bien

obligadamente en el conjunto de materias que componen la carrera elegida, una de las primeras informaciones que se

tiene acerca de la misma es su gran aplicación en todo tipo de instituciones, como metodología para resolver los

problemas que se presentan, y también la dificultad para aprenderla con la insatisfacción por no haber cumplido los

objetivos que regularmente se fijan.

Es conveniente aclarar que la IO es el nombre del conjunto de conocimientos para enfrentar los problemas que se

presentan en las grandes organizaciones humanas, involucrando filosofía de solución integral con enfoque sistemático,

con gente interdisciplinaria utilizando la ciencia con modelos matemáticos y técnicas de muestreo.

Pero la dificultad empieza desde que se programa el contenido del curso que por razón del tiempo asignado al mismo,

debe limitarse el material para exponer, ejemplificar, estudiar y ejercitar. Por tal motivo, las expectativas del estudiante

en nivel de licenciatura deben ser congruentes a las restricciones que normalmente caracterizan un curso de IO, el

cual se prepara para impartir una o más técnicas matemáticas, elegidas entre las que más se utilizan en el medio; los

estudiantes tienen así la oportunidad de hacer un acercamiento al material de estudio de esta asignatura y

posteriormente, ya sea en cursos de postgrado o profesionalmente, entrar de lleno a la aplicación de la IO a un caso.

Con este proyecto de libro se pretende tener un avance, en la exposición del material que está contenido en los cursos

de la UNIDAD PROFESIONAL INTERDISCIPLINARIA DE INGENIERÍA Y CIENCIAS SOCIALES Y

ADMINISTRATIVAS (UPIICSA) del INSTITUTO POLITÉCNICO NACIONAL (IPN). Para ello, un modelo

avanzado al estudiar IO debe ser suficientemente claro para su aprendizaje asistiendo al salón escolar y también para

la persona que con toda buena voluntad, lo emprenda a distancia a través de algún medio, vía correspondencia o

computarizado, mediante el sistema que el IPN tiene considerado para servir a la educación superior. El proyecto del

IPN incluye la elaboración de material didáctico agrupado en volúmenes que se denominan POLILIBROS

conteniendo los elementos del conocimiento diseñados para cumplir los objetivos de asignaturas y carreras

profesionales. De esta manera puede atender, de un modo flexible en tiempo y espacio, el aprendizaje independiente

de una población masiva y dispersa de alumnos, tanto en las aulas de sus diferentes unidades como fuera de ellas,

para aquellos que no pueden asistir a la escuela.

Con el material de este libro se piensa proporcionar no sólo información, se busca también la formación del alumno

en un modelo de educación a distancia que propicie el estudio independiente para adquirir el conocimiento y

cultura que se propone sin la intervención directa del maestro. Se requieren las siguientes características para que el

curso propuesto tenga aceptación institucional:

Material de apoyo suficiente para cumplir los objetivos de la asignatura específica y de carrera

interdisciplinaria.

Infraestructura modular para facilitar su uso en un sistema computarizado en el sitio web conveniente con

organización orientadora para que el alumno capte los conceptos y se motive a continuar interactuando con

los ejemplos expuestos y los ejercicios parcialmente resueltos que se sugiere terminar.

Suficientes ejemplos de problemas típicos, de formulación de modelos, algunos resueltos gráfica y

analíticamente, para la mejor comprensión de los algoritmos.

3

Agradezco a UPIICSA, importante unidad interdisciplinaria del Instituto Politécnico Nacional, la oportunidad que me

da al presentar esta propuesta de libro que espero contribuya en la formación de personal técnicamente preparado que

requiere el país.

FUNDAMENTACIÓN

La INVESTIGACIÓN de OPERACIONES es una metodología científica aplicable al análisis de problemas complejos

para la toma de decisiones en un medio ambiente socio-económico, administrativo o de ingeniería, en instituciones

públicas o privadas. Su utilización debe ser en la forma de participación interdisciplinaria cuya característica es

esencial en el perfil considerado para los egresados de la Unidad Profesional Interdisciplinaria de Ingeniería y Ciencias

Sociales y Administrativas, perteneciente al Instituto Politécnico Nacional.

Esta disciplina de estudio en las cinco licenciaturas de UPIICSA, contribuye a formar en el egresado la necesaria

organización en su pensamiento para el uso del método científico en el análisis riguroso de los problemas que enfrente

y la aplicación de técnicas de solución.

1. Objetivo de la materia.

Con el estudio de esta materia, el alumno debe aprender la aplicación del método científico en el análisis y solución

de algunos problemas representativos y comunes para el profesional en las áreas empresariales y de gobierno como

son administración, ingeniería, transporte y sistemas de información. Se inicia al estudiante en la aplicación de las

técnicas matemáticas más usuales de esta metodología, como son la programación lineal y sus aplicaciones.

4

Tabla de

contenido 1. Antecede

ntes

históricos

de la IO.

2. Metodolo

gía de la

Investigació

n de

Operaciones

3. Aplicacio

nes de la

Investigació

n de

Operaciones

4. Referenci

as

Bibliográfic

as

Rusell L. Ackoff

5

George Dantzig

George Dantzig y Rusell Ackoff , investigadores de origen norteamericano, se consideran pioneros en

el nacimiento y desarrollo de metodologías científicas, en el campo de la Programación Lineal e

Investigación de Operaciones , respectivamente, desde el pasado siglo XX

También se conoce como Ciencia de la Administración, debido a que su aplicación se restringe a sistemas creados

por el hombre como son organizaciones de todo tipo, institutos y empresas, en general es utilizada para tomar

decisiones en problemas con características de complejidad para resolverlos, por lo que es necesaria la intervención

de personal interdisciplinario actuando en equipo, para aplicar el método científico, con el objetivo común de buscar

una solución integral y óptima.

Actualmente, una persona con cualquier formación profesional, desempeñando la función de administrador en cierta

área de la organización, sea del sector público o privado, requiere de la utilización de las matemáticas y las

computadoras para tomar decisiones racionales al enfrentar los problemas. El mundo complicado de mercado en que

se vive ahora, exige la aplicación de estrategias refinadas y aún sofisticadas que aseguren la buena conducción de la

empresa; para una buena parte de las organizaciones ya no es suficiente confiar a la experiencia personal las decisiones

adecuadas, pues depende por lo general de la evaluación de alternativas de acción que pueden consumir mucho tiempo

valioso, además, que pueden ser demasiadas para esperar el buen juicio de una sola persona. De esta manera se impone

el uso del procesador electrónico, capacitado para manejar cantidades masivas de información, pero requiere de

software que se elabora a partir de la interpretación abstracta o modelo matemático construido por los técnicos

responsables.

En resumen, personas con formación interdisciplinaria actuando en equipo, emplean la Investigación de

Operaciones (IO), aplicando procedimientos, técnicas y herramientas científicas a problemas operativos de las

organizaciones con el propósito de desarrollar y ayudar a evaluar alternativas de solución.

DEFINICIONES DE DIFERENTES AUTORES.

En el libro de Shamblin y Stevens llamado Investigación de Operaciones.

Un Enfoque Fundamental de la editorial Mc Graw Hill impreso en México, 1991.

La Investigación Operacional es un enfoque científico de la toma de decisiones

En el libro de Ackoff y Sasieni llamado Fundamentos de Investigación de Operaciones de la editorial Limusa impreso

en México en 1994.

La Investigación de Operaciones es: La aplicación del método científico, por equipos interdisciplinarios, a problemas

que comprenden el control de sistemas organizados hombre-máquina, para dar soluciones que sirvan mejor a los

propósitos de la organización como un todo.

En el libro de Thierauf y Grosse llamado Toma de decisiones por medio de Investigación de Operaciones de la

editorial Limusa impreso en México en 1977.

La investigación de Operaciones utiliza el enfoque planeado (método científico) y un grupo interdisciplinario, a fin

de representar las complicadas relaciones funcionales en modelos matemáticos para suministrar una base

cuantitativa para la toma de decisiones, y descubrir nuevos problemas para su análisis cuantitativo.

6

Libro de Moskowitz y Wright. Investigación de Operaciones. Prentice Hall 1979.

Método científico aplicado a problemas y la toma de decisiones por la gerencia.

En el libro de Winston llamado Investigación de Operaciones. Aplicaciones y Algoritmos 2ª edición. Grupo Editorial

Iberoamérica impreso en México en 1994.

Planteamiento científico a la toma de decisiones, que busca determinar cómo diseñar y operar mejor un sistema,

normalmente bajo condiciones que requieren la asignación de recursos escasos.

1. Antecedentes históricos de la IO.

La búsqueda de la mejor solución (máxima, mínima, o también la óptima) para una variedad de problemas ha divertido

e intrigado al hombre a través de las épocas. Euclides en su libro III, describió formas de encontrar las líneas rectas

de mayor y menor longitud, desde un punto hasta la circunferencia de un círculo; y en el libro IV, el paralelogramo

de mayor área para un perímetro dado. Los grandes matemáticos de los siglos XVI a XVIII desarrollaron la teoría y

proceso de optimización que resuelven difíciles problemas geométricos, dinámicos y físicos, tales como las curvas de

revolución mínima o la curva de descenso más rápido.

En general, la historia no se escribe con exactitud, pero si se pueden recopilar hechos que describan de alguna manera

la evolución conocida de acuerdo con escritos, estudios e investigaciones encontradas. Las técnicas utilizadas en la

aplicación de la IO conducen al pasado siglo XX, pero también al pasado remoto de siglos como antecedentes. Para

ello es conveniente fijarse en la idea fundamental de la IO que es el método científico cuyo origen exacto se

desconoce. En escritos hechos hace milenios como es el Antiguo Testamento se menciona a Jetro, suegro de Moisés,

como autor de un tratado de principios de organización y más recientemente, en el antepasado siglo XIX, Charles

Babbage es autor del trabajo On the Economy of Machinery and Manufactures. Al ingeniero Frederick Winslow

Taylor, norteamericano de origen, se le reconoce la paternidad de la Administración Científica debido a sus

investigaciones sobre las obligaciones y tareas de los jefes de taller, así como también de la producción diaria

individual según la capacidad del obrero para tareas específicas, definiendo así la división del trabajo mediante

capacitación, selección y adiestramiento de los trabajadores. Además, Taylor aplicó el análisis científico a los

problemas de manufactura, estableciendo normas de trabajo y la especialización. Por su parte Henry L. Gant, planeó

las tareas de las máquinas para evitar demoras de producción. Así es posible fijar fechas de entrega con más seguridad.

También contribuyó al enfoque científico incluyendo el aspecto humano como integrante.

Con el inicio del siglo XX, los investigadores también utilizaron procedimientos científicos para analizar problemas

localizados fuera de las ciencias puras como son la Física, la Química, la Biología, entre otras más, pero en la década

que se inicia en 1910, Taylor se dedicó a buscar la eficiencia para las tareas haciendo valer los estudios de tiempos y

movimientos de Frank y Lillian Gilbreth eliminando movimientos innecesarios y desperdicios en cada tarea. En la

misma década durante la 1ª. Guerra Mundial, se le confió a Thomas A. Edison el averiguar las maniobras más eficaces

de los barcos mercantes para disminuir los embarques perdidos por ataques de los submarinos enemigos. Edison

empleó un "tablero táctico" como modelo para simular las operaciones reales.

Un ingeniero danés A. K. Erlang hizo experimentos relacionados con las fluctuaciones de la demanda telefónica en

equipo automático quedando estos trabajos como fundamento de muchos modelos matemáticos que se usan

actualmente en los estudios de Teoría de Colas o Líneas de Espera. En 1937, a punto de empezar la Segunda Guerra

Mundial, se juntó en el Reino Unido a un equipo de matemáticos, ingenieros y científicos en áreas básicas, para

estudiar los problemas estratégicos y tácticos asociados con la defensa del país. Se formó un equipo cuyo objetivo era

determinar la utilización más efectiva de los limitados recursos militares. En consecuencia, a las actividades de este

7

grupo se le llamó Investigación Operacional, que es terminología común en el medio militar. Primero se les pidió

ayuda para los militares en la utilización eficiente del radar para localizar aviones enemigos; después en 1940 se

reunió otro grupo, el circo de Blackett encabezado por el distinguido físico inglés P. Blackett para estudiar la actuación

del equipo de control de cañones en el campo; había tres fisiólogos, cuatro matemáticos, un físico, un astrofísico, un

oficial militar y un agrimensor.

En los Estados Unidos de Norteamérica se motivaron por los éxitos alcanzados por los grupos británicos, en Abril de

1942 se decidió introducir la IO a nivel superior, emprendiendo también estudios tales como: problemas logísticos

complejos, el desarrollo de patrones de vuelo para aviones y la planeación de maniobras navales. En la Fuerza Aérea

se le dio el nombre de Análisis de Operaciones y en el Ejército y la Marina los de Investigación de Operaciones y

Evaluación de Operaciones, respectivamente. Cuando terminó la guerra, la necesidad de reconstruir en la Gran

Bretaña, dio lugar al surgimiento de otros problemas de administración en sectores de gobierno e industria los cuales

demandaron la actuación de los mismos científicos especializados en la IO.

También en los Estados Unidos de Norteamérica, en la década de 1950 con el desarrollo y comercialización de las

computadoras, los investigadores de operaciones y la gente asociada con las operaciones de la última guerra, se

percataron que los estudios realizados en la misma eran de gran utilidad, aplicados a los problemas industriales. La

computadora y el desarrollo de la IO motivaron a los ejecutivos industriales y a los especialistas de esta disciplina

para reunirse y provocar su rápido crecimiento.

La Programación Lineal (PL) tuvo un gran impulso para la investigación industrial dando entrada las empresas a

muchos especialistas; las técnicas Pert, control de inventarios, y la simulación, empezaron a emplearse con éxito; en

vez de los simples promedios, se incluyeron la probabilidad y la estadística tan útiles en cualquier estudio moderno.

Actualmente el uso de la IO es extenso en áreas de: contabilidad, compras, planeación financiera, mercadotecnia,

planeación de producción, transporte y muchas otras más, convirtiéndose en importante instrumento de competencia

para los presupuestos y contratos.

La siguiente tabla esboza parte de los estudios y técnicas en que se apoyaron los grupos de IO en el desarrollo de esta

disciplina.

Antecedente histórico de Investigación de Operaciones.- Desde el siglo XVI:

8

Figura 1. Técnicas utilizadas en IO

Se puede observar que la IO fue desarrollada en el siglo XX con el apoyo, siglos atrás, de importantes aportaciones

de científicos que con su talento y dedicación, dejaron sólidos cimientos para los estudios de solución en los sistemas

actuales.

2. Metodología de la Investigación de Operaciones

El enfoque de sistemas a un problema, es característico en la IO, consiste en examinar toda el área que es

responsabilidad del administrador y no una en particular; esto permite que el grupo de IO observe los efectos de

acciones fuera del área de localización del problema, lo que puede permitir resolver el problema verdadero y no sólo

sus síntomas. Además, debe incluirse una base cuantitativa o modelo para la toma de decisión en la solución del

problema, pero en algunos casos, las respuestas dadas por la computadora conducirán a la necesidad de ciertas

modificaciones que reflejen la futura condición del negocio o bien será una guía a seguir por el administrador sin

necesidad de hacer cambios.

La investigación de operaciones proporciona la oportunidad de que sus resultados se utilicen en la toma de decisiones

a niveles administrativos superiores, medianos y bajos. La experiencia del administrador, las futuras condiciones del

negocio y los resultados de un modelo matemático forman la mejor combinación para la planeación, organización,

dirección y control de las actividades de la empresa. El procedimiento de siete pasos mostrado en el siguiente

diagrama, puede constituir una metodología de acción al aplicar la IO.

9

Figura 2. Diagrama con metodología de la investigación de operaciones

Paso 1.- Identificar el problema.

Comienza con la observación de los fenómenos que rodean el problema; hechos opiniones y síntomas relativos

al mismo. Esto incluye la especificación de los objetivos de la organización y de las partes a analizar de la

misma. En algunas ocasiones puede que el problema no esté bien definido porque entran en conflicto los

objetivos, como es maximizar la utilidad, pero también es deseable minimizar los costos totales, lo cual es

improbable lograr simultáneamente; por tal motivo se requiere diálogo y acuerdos entre los miembros del

equipo de IO y la parte corporativa para decidir un objetivo global. También las primeras observaciones

10

pueden resultar con objetivos en conflicto como es un departamento de producción que desea programar

grandes y prolongadas campañas de un sólo artículo para disminuir los costos de preparación y montaje de sus

máquinas. Pero en contraste, si se cumple lo anterior, crecerían los inventarios de materia prima y de producto,

tanto en proceso como terminado, causando serios problemas en departamentos de: ventas, contabilidad y

finanzas. De este modo, ventas desea un gran inventario pero muy variado, con una producción muy flexible;

por su parte finanzas desea mantener el inventario bajo y mejorar las inversiones de capital. Cuando muchos

factores de esta clase concurren en el problema es indispensable la aportación de la interdisciplinar del equipo

de IO, pues es razonable que las fases individuales de un problema se comprendan y analicen mejor por los

que tienen el adiestramiento especial, necesario en los campos apropiados. Por ejemplo, un banco desea reducir

los gastos relacionados con los salarios de los cajeros, pero manteniendo un nivel adecuado de servicio a los

clientes (tiempo de espera razonable para el cliente y de ocio para los cajeros). Los aspectos funcionales del

banco que influyen para conseguir los objetivos pueden ser los que siguen:

Llegadas promedio al banco de clientes por hora, pues conforme aumenta se deben instalar cajeros

adicionales para tener el nivel deseado de servicio.

Promedio de clientes servidos por hora de uno o más cajeros.

Efecto sobre los objetivos del banco, de mantener filas (colas) para cada caja o formar una sola que

distribuye clientes conforme se desocupan las cajas.

Intercambio entre filas de clientes, con desorden, en sistema de cola por caja.

Paso 2.- Observar el sistema

Se determinan aquellos factores que afectan, como son: variables, limitaciones y suposiciones. Los factores

variables que requieren decisiones como es el nivel de inventario y la necesidad de publicidad; las limitaciones

restringen el uso de recursos como: dinero, tiempo, personal, capacidad productiva, existencias de materia

prima; las suposiciones pueden ser para: precios de producto y competencia del mercado. Hay que reunir datos

para estimar valores de los parámetros que afectan el problema de la organización. En el ejemplo del banco,

algunos parámetros pueden ser:

Llegadas promedio de clientes por hora (tasa), durante la jornada bancaria.

Promedio de clientes servidos por hora en caja con diferente tamaño de fila.

Paso 3.- Formular un modelo matemático del problema

Consiste en el desarrollo de cursos alternativos de acción o hipótesis, en la forma de modelo matemático que

generalmente se diseña para usarse en computadora con el software correspondiente para obtener la solución

óptima o una aproximación a ella. Frecuentemente en este paso, hay necesidad de desarrollar varios modelos

que a primera vista parecen prometedores, posteriormente se van desechando conforme muestran sus

deficiencias para seleccionar el que se ajusta más a los objetivos planteados, los que no deben descuidarse

especificando una ecuación como medida de efectividad con el objetivo preciso. Se puede construir (formular)

un modelo que represente la estructura del sistema real en términos cuantitativos para manipularse y

experimentar cambiando ciertas variables y manteniendo como constantes a otras para conocer los efectos

sobre el sistema que se estudia. De esta manera, se puede experimentar con el mundo real en términos

abstractos. La construcción de los modelos matemáticos puede ser muy difícil incluyendo expresiones

complejas con variables controlables como son: precios de venta, número de unidades producidas, algunos

costos, número de vendedores, restricciones presupuestadas; por otra parte, las variables no controlables por

la administración pueden ser: precios de los competidores, costo de las materias primas, costos de mano de

obra, demanda de los clientes y su localización. Las variables controlables y las no controlables se relacionan

11

con matemáticas en forma precisa, el conjunto de expresiones forman lo que se llama modelo matemático

cuya solución es función de los valores que tomen dichas variables. La construcción del modelo debe incluir

una ecuación objetivo, con la previa definición del significado cuantitativo de las variables involucradas y

puede necesitar el complemento de un grupo de expresiones restrictivas para los valores posibles de las

variables controlables. Por ejemplo, unidades que se producen, dinero gastado, demanda de clientes,

asignación de recursos, disponibles o requeridos, como son las desigualdades (<= o >=) para no exceder lo

especificado o para cumplir el mínimo requerido. Hay dos procedimientos para obtener la mejor solución a un

problema partiendo de un modelo: el analítico y el numérico. El analítico emplea la deducción matemática

con base en el álgebra y/o cálculo para lograr la solución óptima de acuerdo a las consideraciones de diseño;

por otro lado, el numérico prueba diversos valores de las variables de control del modelo, compara los

resultados obtenidos y selecciona la serie de valores que optimizan. Estos procedimientos varían, desde los de

tanteo hasta los iterativos. Para ciertas situaciones complejas no hay modelo analítico que las represente en

forma válida, en estos casos se puede recurrir a un modelo de simulación que permite, con la ayuda de la

computadora, aproximar el comportamiento del sistema y buscar la mejor solución. En este paso es común el

regreso al paso 2 para ajustes de observación.

Paso 4.- Verificar el modelo y usarlo en predicciones

Se trata ahora de verificar si el modelo matemático diseñado en el paso 3 anterior, es una buena representación

de la realidad que se estudia, calificando su validez para situaciones actuales. Cuando sea posible, se debe

obtener información respecto al comportamiento del modelo al cambiar valores en sus variables y parámetros,

especialmente si estos últimos no se pueden determinar con exactitud, esto se conoce como análisis de

sensibilidad o experimentación sobre el modelo y con ayuda de la computadora, cambiando los valores a

variables y parámetros, que representen las situaciones reales, incluyendo las desventajosas. Frecuentemente,

si la experimentación es muy limitada, se pueden tener resultados engañosos que posteriormente en aplicación

a población mayor, se debe regresar a corregir los criterios equivocados en los pasos precedentes 2 y 3. Con

el análisis de sensibilidad se puede ajustar:

La medida de efectividad u objetivo como es el dinero como utilidad o costo.

Revisión de las variables bajo control o de decisión.

Revisión de las variables no controlables y ambientales como demanda y ubicación de clientes, precios

de la competencia, o nivel de actividad económica.

Relación de los factores ya mencionados con las restricciones propuestas.

En particular para el ejemplo del banco, si los valores de predicción para el tiempo de espera en cola y el nivel

de servicio no están cerca de los valores reales obtenidos en la observación del paso 2, seguramente se

necesitará otro modelo o al menos revisar los parámetros considerados al mismo. Este caso es para analizar,

si el modelo es válido para las situaciones de poca demanda de clientes y para los días de pago acostumbrados.

Paso 5.- Seleccionar una alternativa

Si existe una alternativa que se adapte mejor a los objetivos de la organización con el modelo matemático

propuesto, entonces debe seleccionarse para su presentación a los responsables de decidir, pero frecuentemente

la situación no es clara para hacerlo así, porque el conjunto de opciones resultantes está sujeta a restricciones

difíciles de cumplir o imposibles.

Paso 6.- Presentar resultados a la organización

12

Al terminar la etapa de pruebas y desarrollo de un modelo con solución aceptable, se puede presentar una

recomendación o bien varias alternativas para que la organización seleccione la que mejor se ajustan a sus

necesidades. Generalmente hay necesidad de mostrar varias corridas de computadora, en cuyo caso es

conveniente instalar un sistema bien documentado para aplicar el modelo según lo establecido por la

administración. Este sistema debe incluir, tanto el modelo como el procedimiento de solución, análisis de

sensibilidad y los procedimientos operativos para su probable implantación. Pero dado el caso muy frecuente

de rechazo a la solución propuesta, ya sea por definición incorrecta o debido a la poca participación del

tomador de decisión, entonces será necesario regresar al paso 1,2 ó 3.

Paso 7.- Implantar y evaluar las recomendaciones

Si la organización acepta el estudio con la propuesta de solución, se procede a la implantación que incluye el

sistema de cómputo y la vigilancia constante para las actualizaciones por cambios en el sistema. Con

frecuencia se requiere un número considerable de programas integrados. Las bases de datos y los sistemas de

información administrativos pueden proporcionar información actualizada cada vez que el modelo se utilice,

en cuyo caso se necesitan programas de interfaz (interacción con el usuario) para hacer amigable la operación

del sistema propuesto. También se pueden instalar programas adicionales que manejen los resultados del

implante de manera automática o bien un sistema interactivo de computadora denominado sistema de soporte

de decisiones, para ayudar a la dirección con información relevante en sus decisiones. Se puede generar

informes con la terminología usual en el medio, que relacionen los resultados entregados por el sistema

implantado y las implicaciones. Dependiendo del tamaño del estudio se pueden requerir meses o años para

implantar (desarrollar, probar e instalar) el sistema computarizado y posteriormente su mantenimiento en las

indispensables actualizaciones de programas, modelo y aún de equipo (hardware). Cualquier falla o rechazo

en la implantación puede hacer necesario la revisión y ajuste en los pasos 1, 2, 3 y 4.

UBICACIÓN DE LA IO EN LAS ORGANIZACIONES.- La investigación de operaciones ha tenido un impacto

impresionante en el mundo, al mejorar la eficiencia de muchas organizaciones. Ha hecho contribuciones significativas

al incremento de la productividad dentro de la economía de muchos países, de ellos más de 30 que son miembros de

la International Federation of Operational Research Societies (IFORS). Al inicio de la década de los 90, el U.S. Bureau

of Labor Statistics predijo que la IO sería la 3ª área profesional, de más rápido crecimiento para los egresados

graduados entre 1990 y 2005 en Estados Unidos, con 100,000 personas laborando como analistas de IO en el 2005.

El problema de la localización de un grupo de IO dentro de la empresa ha merecido una gran atención, sin embargo,

no hay una posición preferida para las organizaciones; pero se puede decir que los que han tenido éxito dependen de

los niveles jerárquicos superiores de la institución, lo cual da una base firme para su funcionamiento con obligaciones

de enfrentar los problemas de tomar decisiones y de utilidad inmediata para la administración. Teniendo el respaldo

de la autoridad superior con prestigio dentro de la empresa, se podrán cruzar los linderos departamentales y obtener

la información necesaria para dar soluciones.

Generalmente el grupo de IO se asocia con el de sistemas de procesamiento de datos, pues el acceso a las

computadoras es el apoyo indispensable para sus actividades, por lo que no es raro que estén integrados dada la

posibilidad de tener el mejor manejo de la información deseada y ordenada como convenga. De este modo ambos

grupos, el de IO y el de sistemas de procesamiento de datos, se complementan en términos de los objetivos de la

institución.

Para la mayoría de los estudios de IO, se recomienda un equipo compuesto de analistas y de personal involucrado en

el problema que se enfrenta, este grupo informa a un Comité Directivo de la Administración integrado por los

directivos departamentales que están afectados en el problema estudiado de IO, los cuales a su vez se reúnen con la

13

administración superior para reportar los progresos. Los comités allanan el camino del personal de IO para obtener la

cooperación del personal de operación y su aceptación.

3. Aplicaciones de la Investigación de Operaciones

Áreas funcionales

Una muestra de los problemas que la IO ha estudiado y resuelto con éxito en negocios e industria se tiene a

continuación:

Personal

La automatización y la disminución de costos, reclutamiento de personal, clasificación y asignación a tareas

de mejor actuación e incentivos a la producción.

Mercado y distribución

El desarrollo e introducción de producto, envasado, predicción de la demanda y actividad competidora,

localización de bodegas y centros distribuidores.

Compras y materiales

Las cantidades y fuentes de suministro, costos fijos y variables, sustitución de materiales, reemplazo de equipo,

comprar o rentar.

Manufactura

La planeación y control de la producción, mezclas óptimas de manufactura, ubicación y tamaño de planta, el

tráfico de materiales y el control de calidad.

Finanzas y contabilidad

Los análisis de flujo de efectivo, capital requerido de largo plazo, inversiones alternas, muestreo para la

seguridad en auditorías y reclamaciones.

Planeación

Con los métodos Pert para el control de avance de cualquier proyecto con múltiples actividades, tanto

simultáneas como las que deben esperar para ejecutarse.

La lista de áreas funcionales de la organización que son de posible aplicación de la IO, es ilustrativa del potencial que

tiene para resolver el problema de la empresa.

Problemas ejemplo de aplicación con éxito de la IO.- En los siguientes problemas el gobierno o empresa, ahorraron

millones de dólares en la aplicación de la IO:

1. Programación del horario de las rondas de policías de San Francisco.-En 1989 Taylor y Huxley diseñaron un

método para programar el horario de las rondas de oficiales de la Policía de San Francisco, usando un modelo

14

de programación lineal, la programación de metas y la programación entera. El ahorro sumó 11 millones de

dólares anuales.

2. Reducción de gastos de combustible en la industria de la energía eléctrica.- En 1989 Chao y Cols ahorraron a

79 empresas de servicio de energía eléctrica más de 125 millones de dólares en costos de compras y de déficit,

usando programación dinámica y simulación.

3. Diseño de una instalación para desmontar lingoteras en Bethlehem Steel.- En 1989 Vasko y Cols ayudaron a

esta empresa siderúrgica con el diseño del sistema de quitar lingoteras a los lingotes de acero con un modelo

de programación entera ahorrando 8 millones de dólares anuales.

4. Mezcla de gasolinas en Texaco.- Con programación lineal y no lineal Dewit y Cols diseñaron un modelo de

mezcla para cuatro tipos de gasolina ahorrando 30 millones de dólares al año; aplicando análisis de sensibilidad

calcularon el efecto de cambios al modelo.

5. Programación del horario de los camiones para North America Van Lines.-En 1989 Powell y Cols, con

modelos de redes y programación dinámica, formularon la asignación de carga a chóferes, reduciendo costos

en 2.5 millones de dólares, con mejor servicio.

6. Administración del inventario a Blue Bell.-En 1985 Edwars, Wagner y Wood con programación lineal y

modelos probabilísticos de inventario redujeron el nivel medio de inventario de ropa deportiva y de oficina en

un 31%.

7. Determinación de carteras de bonos.- Varias personas (Chandy y Kharabe, 1986) utilizaron la programación

lineal para máxima ganancia con restricciones de riesgo y de la diversificación de la cartera.

8. Planeación de producción en lechería.-En 1985 Sullivan y Secrest, usaron programación lineal con utilidad de

48000 dólares, al determinar el proceso: del suero, la leche cruda, el suero dulce y la crema, para obtener:

queso crema, requesón, crema agria y crema de suero.

9. Reemplazo de equipo en Phillips Petroleum.- Para el reemplazo de equipo usaron modelos (Waddell, 1983),

que se estima ahorraron 90000 dólares por año.

4. Referencias Bibliográficas

ACK68. - Ackoff Rusell L. & Sasieni Maurice W.

Fundamentals of Operations Research. Wiley. New York. 1968.

DAN63. - Dantzig George B.

Linear Programming and Extensions. Princenton University Press. Princenton N.J. 1963.

GAS74. - Gass Saul I.

Linear Programming. Methods and Applications. McGraw Hill, New York.1974

HIL95. - Hillier-Lieberman.

Introducción a la Investigación de Operaciones.-McGraw-Hill.- 6a.edición.- 1995.

SHA78. - Shamblin - Stevens.

Investigación de Operaciones. Un enfoque Fundamental.- Mc Graw Hill. Primera edición. 1978.

15

THI77.- Thierauf-Grosse.

Toma de decisiones por medio de la Investigación de Operaciones.-Limusa.- 1ª edición, 4ª Reimpresión.-

1977.

WAG75. - Wagner H.

Principles of Operation Research. 2d. edition. Englewood Cliffs. N. J. Prentice Hall. 1975.

WIN94.- Winston Wayne.

Investigación de Operaciones. Aplicaciones y Algoritmos.- Grupo Editorial Iberoamérica.- 2ª Edición.-1994.

Capítulo 1. PROGRAMACION LINEAL (PL).

Tabla de contenido 1.1. Objetivo.

1.2. Antecedentes históricos y definición.

1.3. Modelo de programación lineal general.

1.4. Formulación de problemas con programación lineal.

1.5. Solución para el modelo de programación lineal.

1.6. Ejercicios, actividades de aprendizaje y autoevaluaciones

correspondientes al capítulo [MAT96]

1.7. Referencias bibliográficas

1.1. Objetivo.

Iniciarse en la técnica de programación lineal con el aspecto más importante del método científico: la representación

o modelo en formulación matemática lineal de algunos problemas elegidos, los agrupados en "clásicos"; también debe

aprender los conceptos teóricos fundamentales utilizando la metodología gráfica en sólo dos variables.

1.2. Antecedentes históricos y definición.

El desarrollo de la programación lineal se considera entre los avances científicos más importantes del siglo XX, pues

su impacto ha sido extraordinario. Actualmente es una herramienta de uso común que ha beneficiado a muchas

organizaciones en distintos países con ahorros de cualquier índole, por lo que su uso se está ampliando rápidamente

a todos los sectores de la sociedad. Una gran mayoría de los cálculos científicos en computadoras usan la

programación lineal proliferando las publicaciones y libros sobre esta materia de gran aplicación.

Uno de sus antecedentes se registra con el método de análisis de insumo-producto que desarrolló el economista W.

Leontief; también se debe reconocer al economista y matemático soviético L.V. Kantorovich, quien ya en 1939

formuló y resolvió un problema de programación lineal para la organización y planeación de la producción; otro

antecedente es, la interpretación de Hitchcock a "un problema de tipo de transportación" en 1941. El problema de la

16

dieta, fue analizado por Stigler en 1945. El gran impulso de la programación lineal para la industria y los negocios se

identifica con el doctor George Dantzig, matemático norteamericano de origen, que desarrolló el algoritmo Simplex,

un método sistemático de resolución para problemas modelados con programación lineal. Esto ocurrió en 1947 cuando

se ocupó, con Marshal Wood y asociados, de un proyecto para la Fuerza Aérea de los Estados Unidos. Se organizó

un grupo de investigación con el título de Proyecto SCOOP (Scientific Computation of Optimum Programs).

Actualmente las principales aplicaciones de la PL son del área industrial; también, aunque en menor parte, en el campo

urbano y social.

A partir de 1950, un número cada vez mayor de investigadores (matemáticos y economistas) aislados o constituyendo

grupos contribuyen al desarrollo de las diferentes ramificaciones de la programación lineal; en particular, la "Rand

Corporation" con G. B. Dantzig y W. Orchard-Hays, después L. R. Ford, D. R. Fulkerson, y D. Gale; el departamento

de matemáticas de la Universidad de Princenton con A. W. Tucker y H. W. Kun; la "Graduate School of Industrial

Administration" del "Carnegie Institute of Technology" con A. Charnes y W. Cooper. Los dos primeros grupos

trabajan en la teoría matemática de los programas y su instalación en computadoras; los resultados se publicaron en

la "Rand Corporation" en la serie de "Rand notes on linear programming and extensions" (desde 1953 a 1961); se

deben mencionar las de Dantzig sobre los desarrollos teóricos, las de W. Orchard_Hays sobre la instalación de los

programas de cálculo en máquinas, las de L. R Ford y D. R. Fulkerson sobre las redes de transporte; es necesario citar

especialmente en el activo del grupo de Princenton, el método "húngaro" de H. W. Kun, para los problemas de

asignación, la publicación de la notable colección de notas "Linear Inequalities and Related Systems" en 1956 y el

método de Gomory para el cálculo de los problemas lineales en números enteros a finales del año 1958. El equipo del

"Carnegie Tech" desarrolló la PL en aplicaciones industriales, se interesó en aspectos teóricos particulares como:

degeneración, errores de redondeo, el Simplex revisado, variables acotadas.

En los últimos años, lo notable y más prometedor parece ser: La programación lineal en números enteros por R.

Gomory, el principio de descomposición de Dantzig y Wolfe, los programas lineales estocásticos, el algoritmo de

punto interior de Narendra Karmarkar, con aportaciones importantes de un matemático ruso I. Dikin en 1967,

redescubierto, después de la publicación de Karmarkar por varios investigadores: E.R.Barnes, T. M.Cavalier y

A.L.Soyster. Además R.J.Vanderbei, M.S.Meketon y B.A.Freedman publicaron en 1986, "A modification of

Karmarkar's Linear Programming Algorithm". Al inicio la programación lineal se llamó "programación en estructura

lineal". En 1948, Tjalling Koopmans sugirió a George Dantzing simplificar el nombre.

DEFINICIÓN DE LA PROGRAMACIÓN LINEAL

Es una de las técnicas agrupadas como programación matemática, aplicable a problemas de asignación de

recursos limitados, con actividades competitivas hacia un objetivo común, que puede ser de maximizar beneficios

(por ejemplo utilidades o bien rendimientos); también se puede desear minimizar el esfuerzo (por ejemplo los costos,

el personal asignado a tareas, o el desperdicio en procesos). Se usa un modelo matemático con representación válida

de la problemática en estudio; sus relaciones deben ser lineales o de "línea recta", que significa utilizar, sólo una

variable de primer grado en cada término

1.3. Modelo de programación lineal general.

El modelo de PL es una representación simbólica (abstracción) de la realidad que se estudia, se forma con expresiones

lógicas matemáticas conteniendo términos que significan contribuciones: a la utilidad (con máximo), al costo (con

mínimo), al consumo de recurso (disponible con desigualdad <=), al recurso requerido (con desigualdad >=), recurso

especificado (con igual =). Contiene las siguientes cuatro partes:

1a parte

17

Definición con el significado cuantitativo de las variables de decisión (controlables).

2a parte

Función económica u objetivo a optimizar (máximo o bien mínimo):

3a parte

Sujeta a restricciones:

4a parte

Condición de no negativo a variables:

PROPIEDADES DEL MODELO DE PROGRAMACIÓN LINEAL

Para que un modelo de PL sea válido, debe cumplir las propiedades siguientes:

I. Proporcionalidad.-Significa que la contribución al valor de la función objetivo y el consumo o requerimiento

de los recursos utilizados, son proporcionales al valor de cada variable de decisión. Así el término 4X1 es

proporcional, porque contribuye al valor de la función Z con 4, 8, 12, etc. para los valores 1, 2, 3, etc.,

respectivamente, de X1. Se puede observar el aumento constante y proporcional de 4 conforme crece el valor

de X1. En contraste, el término no lineal 4X12, contribuye con 4, 16, 36, etc., para los mismos valores 1, 2, 3,

etc., respectivamente, de la variable X1; Aquí se observa que el aumento en la contribución no es constante y

por lo tanto no hay proporcionalidad.

II. Aditividad.- Significa que se puede valorar la función objetivo Z, así como también los recursos utilizados,

sumando las contribuciones de cada uno de los términos que intervienen en la función Z y en las restricciones.

III. Divisibilidad.- Significa que las variables de decisión son continuas y por lo tanto son aceptados valores no

enteros para ellas. La hipótesis de divisibilidad más la restricción de no negatividad, significa que las variables

de decisión pueden tener cualquier valor que sea positivo o por lo menos igual a cero.

IV. Certidumbre.- Significa que los parámetros o constantes son estimados con certeza, o sea, no interviene una

función de probabilidad para obtenerlos

18

El modelo de programación lineal es un caso especial de la programación matemática, pues debe cumplir que, tanto

la función objetivo como todas las funciones de restricción, sean lineales.

APLICACIONES TÍPICAS DE LA PROGRAMACIÓN LINEAL

Aparentemente, las estructuras de organización complejas propias de la sociedad moderna han reconocido interesantes

problemas de optimización tales como la manera más eficiente de manejar la economía de un país o también la mezcla

de ingredientes de un fertilizante para satisfacer las especificaciones agrícolas a costo mínimo. Ambos

problemas utilizan el modelo de programación lineal (PL), para optimizar una función lineal condicionada a

restricciones lineales, que es sencillo en su estructura matemática, pero poderoso por su gran adaptación a una

amplia variedad de problemas.

La programación lineal es una técnica matemática de resolución de problemas, su desarrollo representa una ayuda a

los administradores para tomar decisiones en la asignación de recursos. A continuación aparecen algunas

aplicaciones típicas de la PL:

1. Un fabricante desea desarrollar un programa de asignación en producción y una política de inventario que

satisfagan la demanda de ventas de periodos futuros. Así se podría cumplir la demanda con mínimo costo

total de producción y de inventario.

2. Un analista financiero debe seleccionar una cartera de inversiones a partir de una diversidad de alternativas en

acciones y bonos. Se debe establecer la cartera que maximice el rendimiento sobre la inversión asignada.

3. Un administrador de mercadotecnia desea determinar la mejor manera de asignar un presupuesto de

publicidad como radio, televisión, periódicos y revistas. Al gerente le gustaría determinar la combinación de

medios que maximice la efectividad de la publicidad.

4. Una empresa tiene almacenes en varias. ubicaciones en todo el país. Para un conjunto de demandas de sus

productos por parte de sus clientes, la empresa desearía determinar cuánto debe asignar en embarques a cada

uno de los almacenes y a cada cliente, de manera que los costos totales de transporte resulten mínimos.

Estas aplicaciones representan unas cuantas situaciones en las que se ha utilizado con éxito la programación lineal,

pero ilustran su potencial en la solución de problemas. Un estudio detallado revela las características comunes de

ellas. En el ejemplo 1, el fabricante desea minimizar costos; en el 2, el analista financiero desea maximizar el

rendimiento sobre la inversión; en el 3, el gerente de mercadotecnia desea maximizar la efectividad de la publicidad,

y en el ejemplo 4, la empresa desea minimizar los costos totales de transporte. En todos los problemas de

programación lineal, el objetivo es el máximo o bien el mínimo de alguna cantidad en la acción de asignar

recursos.

Los problemas de programación lineal se caracterizan, además, por las condiciones impuestas o restricciones de

recursos, que limitan el grado en que se puede cumplir algún objetivo. En el ejemplo 1, el fabricante está limitado

por restricciones que requieren que la demanda de producto quede satisfecha y por restricciones respecto a la

capacidad de producción. El problema de la cartera del analista financiero está limitado por la cantidad total de fondos

de inversión disponibles y las cantidades máximas que se pueden invertir en cada acción o bono. La decisión en la

selección de medios del gerente de mercadotecnia, está restringida por un presupuesto de publicidad fijo y por la

disponibilidad de los varios medios. En el problema de transportación, el programa de embarques de costo mínimo

está restringido al suministro de productos disponibles en cada almacén. La diversidad de condiciones mencionadas,

es parte de lo que puede esperar aquel que decida enfrentar un problema, pues las restricciones son otra característica

general en todo problema de programación lineal

1.4. Formulación de problemas con programación lineal.

19

La formulación de un problema de cualquier tamaño con programación lineal debe sujetarse al formato del modelo

de PL general ya presentado antes.

Se empieza como parte 1, con la observación y análisis necesario para definir el significado cuantitativo de las

variables de decisión o controlables que se pueden representar, en símbolos como X1, X2, X3,..., o bien, identificar

con nombre específico de producto o bienes de manufactura, almacén o venta, disponibilidad y/o requerimiento de

recurso o materia prima.

Se continúa con la parte 2, para construir la función objetivo o medida de efectividad, representada por una variable

(denotada con Z, G, U, etc.) cuyo valor se desea maximizar (utilidad, rendimiento, ingreso, producción) o

bien minimizar (costo, tiempo, mano de obra, inventario). Puede ocurrir en algún caso, que la formulación resulte no

lineal, pero con las transformaciones adecuadas se puede hacer la conversión a lineal.

Como parte 3 debe considerarse la construcción de las restricciones que limitan el valor óptimo que puede tomar la

función objetivo, o sea, definen las soluciones admisibles o región factible del problema. Las restricciones pueden ser

de una o todas las clases siguientes: Si no se debe exceder el recurso disponible, de la forma <=; para no menos de lo

requerido, de la forma >=; o también para igualar el recurso especificado, de la forma =.

Se termina con la parte 4, para condicionar las variables a valores no negativos, debido a que en la gran mayoría de

los problemas los valores negativos no tienen significado físico. Los casos de excepción merecen tratamiento especial.

1.4.1. Ejemplos de formulación de modelos de PL.

La construcción de un modelo de programación lineal debidamente planteado que represente un problema real es un

arte. La mayoría de la gente que lo intenta tiene más dificultades en ello que con los otros aspectos de esta técnica

pues se requiere de imaginación e inventiva. Esto se puede mejorar con paciencia y práctica, ajustándose a la estructura

dada como modelo general.

El siguiente procedimiento puede ser útil antes de pretender la estructura matemática del problema en estudio:

Concentrar la atención en identificar el objetivo general como puede ser, el máximo de: utilidades,

rendimientos, audiencia; o bien, el mínimo de: costos, personal, distancias, tiempo, materia prima, o

contaminación.

Identificar las decisiones (variables controlables) en forma cuantitativa con la unidad precisa de medición,

como # de personas, # de pesos, # de toneladas.

Identificar las constantes conocidas como coeficientes Cj que aportan al valor del objetivo, o coeficientes aij

que contribuyen al consumo de materia prima o al requerimiento de recurso.

Identificar todas las condiciones a las que se sujeta el objetivo en forma de restricciones en sus diferentes

tipos:<=cuando mucho, >= al menos, = estrictamente lo especificado.

A continuación se presentan ejemplos de planteamiento funcional, pero en algunos puede haber alternativa cambiando

la definición de variable en la parte 1.

Ejemplo 1-1. PL al combinar camiones refrigerados en transporte de alimento (REFCAM).

En la siguiente tabla se tiene la información de costo en renta y también las capacidades, de dos tipos de camión

transportista refrigerado para la distribución de alimentos, una parte de los cuales pueden descomponerse durante el

viaje. En particular se requiere un total de 900 y 1200 metros cúbicos (m3) de espacio refrigerado y no refrigerado,

20

respectivamente. Formule un modelo de PL para decidir y resolver el problema de cuántos camiones de cada tipo

rentar para que el costo sea el menor posible.

Figura 1-1. Información para renta de camiones con y sin espacio refrigerado del ejemplo REFCAM.

1ra. parte.- Definición de las variables de decisión

2da. parte.- Función económica u objetivo de costo

3ra. parte.- Sujeta la función de mínimo costo a restricciones de espacio de carga:

4a. parte.- Condiciones de signo para las variables de decisión:

Observaciones para el Ejemplo 1-1.-El primer problema de ejemplo es de decisión y la pregunta evidente para el

distribuidor responsable es ¿cuántos camiones de cada tipo deben rentarse para cumplir con la distribución? Para

contestarla, en la primera parte del modelo se definen las incógnitas que se acostumbra denotar con la letra X con

índices, como XA, XB, para hacer la diferencia entre los dos tipos de camión A y B. Para formular la función objetivo

en la parte 2 del modelo, se observa que la renta de un camión tipo A cuesta 3 (3000 pesos) multiplicado por el número

XA de camiones tipo A para renta, resulta así el término 3XA que significa el costo de todos los camiones A rentados,

21

por otro lado la renta de un sólo camión tipo B es de 4, por lo tanto 4XB es el costo de rentar los camiones tipo B. Con

la suma de los dos términos o contribuciones de costo se obtiene el valor total de Z, la función objetivo de costo, cuya

dimensión es:

En la parte 3 correspondiente a las restricciones, debe pensarse en el recurso espacio de carga que es el atributo de

interés de los camiones a rentar. La capacidad especificada de carga, refrigerada o no, de los mismos, se emplea para

plantear los términos de las restricciones, las que se traducen como requerimiento o necesidad de 900 m3 de espacio

de carga refrigerada y 1200 m3 de espacio de carga no refrigerada, lo cual hace un total de dos restricciones a formular.

Cada término de ellas se construye considerando el espacio de un sólo camión (20 m3 refrigerados para el A)

multiplicado por el número de camiones (XA para A) del tipo que se decida rentar, o sea, 20XA es la contribución de

espacio refrigerado de los camiones A para los requeridos 900 m3 del distribuidor. De la misma manera se forma el

término 30XB como contribución de espacio refrigerado de los camiones B. En la restricción 20XA + 30XB >= 900 se

utiliza la desigualdad >= porque el requerimiento de 900 m3 se interpreta como el espacio mínimo necesario para el

alimento perecedero.

Las mismas ideas ya expuestas son aplicables para la segunda restricción referente al requerimiento de 1200 m3 de

espacio no refrigerado, ambas se dimensionan así:

Por último en la parte 4, las condiciones de valor no negativo para las incógnitas, son lo natural para este problema

ejemplo, entendiendo que el número de camiones a rentar es positivo: XA > 0, XB > 0 o bien, puede que la solución

al modelo planteado de este problema, resulte que no conviene rentar algún tipo de camión, en tal caso se presentaría

con XA = 0 ó con XB = 0, puesto que XA < 0 ó XB < 0 no tiene significado físico.

Ejemplo 1-2. PL al combinar tamaños de camiones en transporte (TAMACA).

Una compañía transportadora tiene 10 camiones con capacidad de 20 toneladas y 5 camiones de 15 toneladas. Los

camiones grandes tienen costos de operación de $150 por kilómetro recorrido y los pequeños de $ 125 por kilómetro

recorrido. En la siguiente semana la compañía requiere transportar 200 toneladas de azúcar en un recorrido de 800

kilómetros. La posibilidad de otros compromisos de transporte, impone una política táctica de mantener en reserva,

por lo menos, dos camiones pequeños por cada camión grande. ¿Cuál es el número óptimo de camiones de ambas

clases que se deben utilizar para transportar el azúcar? Formule un modelo de programación lineal para este problema.

Figura 1-2. Información: costo según el tamaño de camión, recorrido y transporte del ejemplo TAMACA.

Modelo de programación lineal.

1a parte.- Definición de variables de decisión

22

2a parte.- Función económica u objetivo: Planteamiento de costo mínimo de operar Xj camiones

3a parte.- Restricciones o condiciones.- Requerimiento de carga a transportar:

Restricciones de camiones disponibles a utilizar: Xg <= 10; Xp <= 5 (camiones).

Para la restricción de tener en reserva dos camiones pequeños por cada camión grande, se definen otras

variables y significan camiones en reserva para otro uso:

Sea X r j = número de camiones en reserva de tipo j (j = g, p)

Camiones grandes reservados = total de grandes menos los utilizados: Xrg=10-Xg

Camiones pequeños reservados = total de pequeños menos los utilizados: Xrp=5-Xp

4a parte: Condiciones de signo para las variables:

Observaciones al Ejemplo 1-2: Análisis de la propiedad de proporcionalidad:

23

El cambio para diferentes valores de Xg se mantiene constante (20), o las contribuciones de 20, 40, 60,..., son

proporcionales al valor incremental de Xg. En contraste, el valor de las contribuciones 20, 80, 180,..., para diferentes

valores de la variable en X2g no se mantiene constante y por lo tanto no hay proporcionalidad.

El problema de ejemplo 1.2, como primera parte, es decidir el número de camiones grandes (Xg) y pequeños (Xp) a

utilizar para el transporte del azúcar.

Para construir la función objetivo de la segunda parte del modelo, hay necesidad de pensar como administrador del

transporte, pues en cualquier caso se desea cumplirlo con bajo costo. Puesto que existe diferencia al operar camiones

de diferente tamaño, pero el recorrido es igual para los grandes y pequeños, en tal caso se calcula el costo del viaje

para cada uno de los dos tipos de camión el cual se emplea como coeficiente de costo Cj en cada término de la función

Z que representa el costo total a minimizar.

Las restricciones de la parte 3 del modelo matemático son de tres clases: se debe cumplir un requerimiento (>=) de

transporte de 200 toneladas de azúcar. Para la posible pregunta de por qué no se utiliza un simple signo de igualdad

(=), considere que la capacidad de los camiones grandes de 20 toneladas, si es múltiplo de las 200 toneladas a

transportar, pero en cambio, la capacidad de 15 toneladas de los camiones pequeños, no es múltiplo de 200, en tal

caso, puede no cumplirse en igualdad; por otro lado no se debe olvidar la política de mantener en reserva cierto número

de camiones. Posteriormente se trata la conveniencia de evitar, en lo posible, las restricciones estrictas de igualdad

(=), pues la programación lineal, las restricciones (<=) y (>=) no excluyen la posibilidad de cumplir la igualdad y

aportan flexibilidad en la búsqueda de la mejor solución. Otra clase de restricción a considerar se refiere al total de

camiones existentes de cada tamaño, lo cual se expresa con la desigualdad (<=) significando, que se dispone de un

máximo de 10 grandes y 5 pequeños. La restricción para dejar en reserva algunos camiones, necesita una definición

adicional para ellos, pues en la primera parte del modelo sólo se definen las variables de decisión para representar los

camiones a utilizar. De esta manera, se plantean las expresiones para: Xrg = 10 - Xg; Xrp = 5 - Xp, sustituyéndolas en

la interpretación de la política de reserva, conteniendo las variables de decisión Xg, Xp, así como también las variables

que representan los camiones en reserva Xrg, Xrp las cuales sirven para el análisis durante la formulación, pero no

permanecen en la presentación final del modelo.

Se termina el modelo con la parte 4 en que se condicionan las variables sólo a valor positivo o cero, pues el negativo

no tiene significado físico en este problema.

Las expresiones en negrita forman el modelo matemático pedido.

Ejemplo 1-3. PL en horarios para cubrir turnos de trabajo (HORAPRO).

Figura 1-3. Policías para vigilancia de un sector de la ciudad en ejemplo HORAPRO.

Cada policía debe laborar 8 horas consecutivas. El periodo 1 sigue al 6.

Formule un modelo de PL para determinar el número óptimo de policías.

24

Ayuda para el análisis: En este problema se conoce, que para fines de control, se divide el día completo en periodos

de 4 horas de duración, logrando continuidad de la vigilancia de policías los que deben trabajar durante dos periodos

consecutivos. También se sabe el requerimiento en número de policías para cada uno de los seis periodos; entonces

la siguiente forma tabular puede ser buena ayuda para la comprensión del problema considerando a Xj como grupo

de policías asignados para iniciar los periodos j (j = 1,2,...,6).

Figura 1-4. Inicio y permanencia de grupos X j de policías en los periodos j del día en ejemplo HORAPRO.

Modelo de programación lineal.

1a parte.- Definición de variables:

2a parte.- Función económica.- Aquí debe pensarse en el menor número de policías necesarios para cumplir, por lo

menos, los requeridos en cada uno de los seis periodos j:

3a parte.- Restricciones: La misma tabla da la combinación de los grupos de policías Xj para cubrir, como se observa,

los requerimientos de cada periodo j.

4a parte.- Condiciones de signo, NO NEGATIVO:

Ejemplo 1-4. PL en la dieta de jugos (BEDIET).

Un proveedor de bebidas dietéticas debe preparar con las existentes de su bodega, un pedido de 500 litros de ponche

dietético el cual debe contener por lo menos 20% de jugo de naranja, 10% de jugo de toronja y 5% de jugo de betabel.

La siguiente tabla informa de 5 bebidas existentes con su contenido de jugos y el costo de las mismas. ¿Qué cantidad

de cada bebida deberá de emplear el proveedor para cumplir el pedido a un costo mínimo? Formule un modelo de

programación lineal que represente este problema.

25

Figura 1-5. Información de bebidas almacenadas en ejemplo BEDIET.

Modelo de programación lineal.

1a parte.- Definición de variables:

2a parte.- Función económica u objetivo:

3a parte: Sujeta a restricciones.-

Restricción de proporción de contenido de jugo:

Para este tipo de restricción es necesario convertir la información de contenido en por ciento (%) de jugo de

la tabla a fracción decimal de un sólo litro del mismo, ya que la definición de significado de las variables en

la primera parte del modelo se hizo como litros de bebida j. Por lo tanto, la fracción 0.40 ó 400 mililitros de

jugo de naranja multiplicado por XA litros, es la contribución de la bebida A (0.40XA) para cumplir el 20%

(0.20 por litro de ponche) de jugo de naranja en la bebida pedida. También 0.05XB es la contribución de la

bebida B y 1XC, es la contribución de C (pura naranja) al ponche pedido. Las restricciones de toronja y betabel

se formulan de la misma manera.

4a parte.- Condición de signo para las variables:

Ejemplo 1-5. PL en la inversión de capital (INVECAP).

Un banco desea establecer una política de préstamo para el siguiente trimestre y por tal motivo asignó un presupuesto

de 12 millones de dólares para prestarles a sus clientes. En la tabla siguiente se anotan los tipos de préstamo con el

interés correspondiente y las probabilidades de no-recuperación del capital prestado. Lo que no se puede recuperar no

26

tiene intereses. Por competencia con otros bancos, se requiere asignar préstamos de al menos el 40% del total, a los

tipos de préstamo 4 y 5. Con la habitación debe prestarse al menos un 50% de la suma de los préstamos 1, 2, y 3. La

política de banco es que la relación total de los irrecuperables sea un máximo de 0.04. Formule un modelo de

programación lineal para este problema de inversión.

Figura 1-6. Información de tipo de préstamos bancarios en ejemplo INVECAP.

Modelo de programación lineal

1a parte.- Definición de variables:

2a parte.- Función objetivo:

En este problema, a la función Z a maximizar se le debe formular con la suma de las contribuciones de

rendimiento de los cinco tipos de préstamo, pero descontando la fracción de irrecuperables los cuales se

estiman en la columna derecha de la tabla:

3a parte.- Sujeto a restricciones.

27

4a parte.- Condiciones de signo.

El conjunto de expresiones en negrita forma el modelo matemático de programación lineal que se pide formular.

Ejemplo 1-6. PL en la selección de máquinas para un proceso (MAQUIPRO).

Una compañía tiene 3 tipos de máquinas procesadoras con diferentes características en cuanto a velocidad, precisión

y costo de producción. En la siguiente tabla se resumen las mismas:

Figura 1-7. Información de características de máquinas tipo j en ejemplo MAQUIPRO.

Cada día de 8 horas deben producirse 500 piezas. Formule un modelo de programación lineal para este problema:

Modelo matemático de programación lineal.

1a parte.- Definición de variables.-

Para este problema el estudiante puede razonar a partir de la información dada, que se conocen las

características de las máquinas de procesar piezas, pero no cuántas utilizar de cada uno de los tres tipos, puesto

que a las diferencias técnicas entre ellas, se agrega el costo de operarlas. De este modo se define:

28

Sea Xj = número de máquinas de tipo j (j = 1, 2, 3) necesarias para producir 500 piezas en un día de 8 horas

a condición de hacerlo con el menor costo.

2a parte.- Función económica.-

La medida para decidir en este problema, es la conveniencia de cumplir la cuota de producción de 500 piezas

en la forma más económica posible; para ello es necesario que se involucren los costos asociados con cada

tipo j de máquina calculando antes de la formulación de la función Z, el costo Cj correspondiente; por lo tanto:

Z mínima = suma de contribuciones de costo de los tres tipos de máquina.

Observe que los coeficientes Cj se obtienen sumando, al costo nominal de una hora de proceso, el costo

correspondiente a la estimación de piezas rechazadas, que para el caso de la máquina j =1 es de 10% ó 0.10

en fracción decimal multiplicado por 30 piezas producidas en una hora, resulta en 3 piezas con defecto en una

hora de proceso. Cada rechazo cuesta un dólar, entonces se suma este costo: 3(1 dólar) = $3, al nominal de $5

y así se tiene C1 = $8. Los costos C2 y C3 se calculan con el mismo criterio.

3a parte.- Sujeta a restricciones.-

La cuota de producción de 500 piezas en una jornada de 8 horas conviene convertirla a su equivalente para

una sola hora, pues se puede observar que la información restante está en esos términos. La producción pedida

constituye una importante condición del problema y debe plantearse como restricción u obligación, la cual se

construye a partir de las velocidades especificadas por máquina tipo j; pero las tasas anotadas son nominales,

puesto que se estima un porcentaje de piezas aceptadas para los diferentes tipos j de máquina, en tal caso es

necesario ajustar las velocidades o tasas de producción de acuerdo a su eficiencia para plantear el

requerimiento en términos reales:

A j = Producción real por máquina tipo j, debido a la eficiencia en piezas buenas.

29

Otra restricción a considerar se refiere al número total de máquinas de tipo j que se tienen para este proceso

de producción, debiéndose plantear con desigualdad <=, significando que el número de máquinas utilizadas,

debe ser menos o cuando mucho, lo anotado en el lado derecho:

Como no hay significado físico para valores negativos de las variables, entonces se limitan como sigue

4a parte.- Condiciones de signo a variables

Las expresiones escritas en negrita forman el modelo de programación lineal que se pide.

Ejemplo 1-7. PL para distribuir carga en transporte (BARCOCARGA).

Un barco tiene tres bodegas: en la proa, en el centro, y en la popa con los siguientes límites de:

Figura 1-8. Capacidades en el barco del ejemplo BARCOCARGA.

Los siguientes cargamentos se ofrecen, pudiendo aceptar los dueños del barco, el total o una porción cualquiera de

cada uno de los siguientes:

Figura 1-9. Artículos a transportar en ejemplo BARCOCARGA.

30

Para preservar el equilibrio del barco, el peso de cada bodega debe ser proporcional a la capacidad en toneladas.

Formule un modelo de PL para determinar cómo distribuir la carga en las bodegas para una utilidad máxima.

Modelo de programación lineal

Distribuir la carga en toneladas, de tres artículos j diferentes, en cualquiera de las tres bodegas i, significa la

flexibilidad de ocupar los espacios convenientes para máxima ganancia cumpliendo las restricciones de capacidad

especificadas. Dado que un artículo j puede asignarse a cualquiera de las tres bodegas i, entonces se pueden definir

las variables Xij para representar las toneladas de producto j en las tres bodegas como X1j, X2j, X3j o bien, las toneladas

cargadas en las bodegas i de los tres productos como XiA, XiB, XiC. Entonces con la misma letra X con doble índice

se pueden definir las variables de decisión.

Figura 1-10. Fracciones de la carga distribuidas en ejemplo BARCOCARGA.

1a parte: Definición de variables.

2a parte: Función económica u objetiva.

3a parte: Sujeta a restricciones.-

Las limitaciones de capacidad deben expresarse

Con desigualdad <=, lo cual significa que se debe cargar menos o cuando mucho la capacidad especificada ya

sea en toneladas o bien el espacio en metros cúbicos. En cada viaje, la suma de la carga ofrecida a transportar,

supera la capacidad total del barco, entonces se puede llevar sólo una parte de ella, así las restricciones son

<=.

31

Para conservar el equilibrio debe considerarse que la suma de XiA + XiB + XiC, de toneladas cargadas a

cualquier bodega i, es menor a la capacidad de i, por lo tanto es una fracción de ella. Se interpreta como

proporción utilizada de la capacidad, que debe igualarse para las tres bodegas y tratarse como una variable

adicional, a las ya definidas: sea Xpc la proporción de capacidad que es <= 1 como sigue:

4a parte.- Condiciones de no negatividad:

Ejemplo 1-8. PL en la producción de fertilizantes con diferentes ingredientes (FERTILIZ).

Se producen dos clases de fertilizante distinguidos por contenido químico, disponibilidad del mismo y costo de

ingredientes como se muestra aquí:

Figura 1-11. Informe: contenido, costo, precio de fertilizantes, ejemplo FERTILIZ.

32

Formule un modelo de PL. Para obtener la combinación de fertilizantes a producir que maximice la utilidad.

La tabla de datos de este problema es un buen ejemplo de ordenación y síntesis de la información dada; con esa ventaja

se facilita el análisis al formular el modelo.

Modelo de programación lineal.

1a parte.- Definición de variables.

2a parte.- Función económica u objetivo.

3a parte.- Sujeto a restricciones de contenido químico:

4a parte.- Condiciones de signo para las variables.

Ejemplo 1-9. PL para mínimo desperdicio en proceso de corte (CORTEPAPEL).

Una papelería recibe un pedido de 500, 300 y 100 rollos de papel de cierta calidad en ancho de 30, 45 y 56 pulgadas,

respectivamente. En almacén se tienen rollos de papel de la calidad solicitada pero con un ancho de 108 pulgadas. Si

la papelería desea satisfacer el pedido del cliente deberá someter a corte longitudinal los rollos en existencia pero se

tendrá obligadamente un desperdicio de papel.

Formule un modelo de programación lineal que minimice el desperdicio.

Antes de iniciar la formulación del modelo de PL de este problema, se pueden revisar las varias alternativas

convenientes para realizar el corte, desde un ancho de 108 pulgadas que tienen los rollos existentes en almacén hasta

los anchos del pedido. Para ello se presenta la siguiente tabla que facilita el análisis de cuántos rollos en 30, 45 y 56

pulgadas se pueden obtener en cada proceso de corte, cuidando que las diferentes combinaciones sean posibles y con

un desperdicio menor a 30 pulgadas.

Figura 1-12. Tipos de corte conveniente para ajustar anchos solicitados en ejemplo CORTEPAPEL.

33

Modelo matemático de programación lineal.

1a parte.- Definición de variables:

2a parte.- Función económica u objetivo.-

Se utiliza el cálculo del desperdicio en pulgadas anotado en la columna derecha de la tabla, para construir los

términos correspondientes al desperdicio de cada tipo de corte los cuales sumados, valoran la función Z a

minimizar.

3a parte.- Sujeto a restricciones.-

La misma tabla ordena el dato de número de rollos con determinado ancho, obtenido en cada corte de tipo j,

este número multiplicado por el número de cortes j, es el término contribuyente para surtir los rollos de papel

pedidos. Así en cada restricción de ancho pedido, se tienen tantos términos como tipos de corte que aportan

tal ancho de rollo.

4a parte.- Condiciones de signo para:

1.5. Solución para el modelo de programación lineal.

Existen métodos de solución del modelo de programación lineal, tanto gráfico como analítico. Para la gran mayoría

de los problemas es indispensable aplicar la metodología analítica, con los algoritmos muy eficientes que desarrollaron

los científicos ya citados en los antecedentes de PL. Pero en beneficio de la claridad, conviene iniciar la exposición

de cómo resolver el problema ya formulado con programación lineal, con el método gráfico, que por su sencillez, es

posible que el alumno se motive más para el estudio. Para ello primero se debe revisar la forma en que puede

presentarse un modelo o planteamiento del problema que se estudia.

1.5.1. Formas equivalentes del modelo de programación lineal.

Además de la necesaria generalización del modelo de programación lineal, esta técnica requiere el uso de dos formas

especiales equivalentes; las que se denominan forma canónica, la cual es muy útil en teoría de dualidad cuando se

trata de hacer una interpretación económica para el problema en estudio; la otra forma se denomina estándar, la cual

es indispensable si se desea resolver el problema. A continuación se dan características de ambas:

34

Formas equivalentes del modelo de programación lineal

EQUIVALENCIA ALGEBRAICA PARA EL MODELO DE PROGRAMACIÓN LINEAL

1. La función objetivo cambia al multiplicar:

2. Una restricción cambia al multiplicar por:

3. Una restricción en igualdad equivale a dos restricciones en desigualdad con los mismos términos; la

primera de tipo <= y la segunda de >=, si el objetivo es máximo; con mínimo, se invierte el orden.

4. Una restricción (<=) se hace (=), sumando la holgura Hi >=0 en el lado izquierdo.

5. Una restricción (>=) se hace (=), restando una superávit Si >=0 en el lado izquierdo.

6. Una variable Xj <= 0, se maneja con otra variable:

7. Una variable no restringida en signo, o libre para tomar valor (+), (-), o cero, se sustituye con la diferencia

de dos variables no negativas como sigue:

Ejemplo 1-10. Forma Canónica y Estándar con objetivo mínimo (FOREQUI1).

Obtener las formas canónica y estándar para el siguiente modelo de PL que incluye condiciones muy especiales para

las variables como es X1libre, lo que significa que puede tomar valores positivos, negativos y cero, obligando los

acuerdos para su tratamiento algebraico que permita el uso de PL. La variable X3 se ejemplifica de manera especial,

como no positiva; todo lo anterior para mejor ilustración del tema:

35

Ejemplo 1-11. Forma Canónica y Estándar con objetivo máximo (FOREQUI2).

Se presenta para ayuda del estudiante que requiera ilustración adicional en la conversión del modelo de PL a las

formas canónica y estándar:

36

1.5.2. Método gráfico para resolver modelos de programación lineal con solo dos variables.

En esta sección interesa hacer análogos geométricos, esto es, gráficas de funciones lineales que contiene el modelo

matemático de programación lineal obtenido en la formulación del problema que se analiza. Dicho modelo puede

37

contener expresiones tanto en forma de ecuaciones (=) como en desigualdades (<= ó >=), cada una de ellas

corresponde a un gráfico en la analogía geométrica.

Primero considere la infinidad de puntos que constituyen en conjunto el plano y los cuatro cuadrantes

convencionalmente aceptados, para dividirlo en zonas caracterizadas por la combinación de signo que se puede dar,

a los valores medidos con números reales. Para lograr los cuadrantes en el plano se utilizan los ejes cartesianos con

escala de medición de valores de las variables del problema; por ejemplo, se puede asignar el eje horizontal de abscisas

para la medición de valores de la variable X1; también se puede asignar el eje vertical de ordenadas, para la medición

de valores de la variable X2. La localización de cualquier punto en este espacio plano requiere de una distancia

horizontal (X1) y de una distancia vertical (X2) denotado como par ordenado o vector (X1, X2). Un punto sobre el eje

X1 corresponde a X2=0 y un punto sobre el eje X2 corresponde a X1=0, que son las ecuaciones respectivas de los ejes

horizontal y vertical. Dichos ejes se cruzan en el punto (X1, X2) = (0, 0), el cual se conoce como origen.

Si la ecuación tiene sólo dos variables, el gráfico de la misma sobre el plano es una línea recta, es decir, se requiere

un espacio de dos dimensiones, la horizontal y la vertical, para graficar tal ecuación; pero la representación geométrica

de una ecuación en tres variables, requiere un espacio de tres dimensiones. En tal caso, a los ejes X1 y X2, se les agrega

un tercer eje X3 como tercera dimensión, que pasa por el origen hacia el observador. Los gráficos de la Figura 1-

13 y Figura 1-14 muestran lo anterior para una ecuación cualquiera:

Figura 1-13. Gráfico de una ecuación en dos dimensiones.

38

Figura 1-14. Gráfico de una ecuación en tres dimensiones.

El método gráfico proporciona la oportunidad de visualizar algunos de los conceptos importantes de la programación

lineal. Pero tiene una gran limitación referente, a que sólo es posible aplicarlo en problemas muy pequeños; para este

curso se limita el método gráfico aplicado a problemas con sólo dos variables. El método gráfico para resolver

problemas que se han modelado con programación lineal consiste en asignar un eje cartesiano para cada una de las

dos variables involucradas; de esta manera se asigna, por ejemplo, el eje horizontal como escala para los distintos

valores que pueda tener la variable X1; también se puede asignar el eje vertical con su respectiva escala para ubicar

los distintos valores que puede tomar la variable X2. Un sistema con dos ejes cartesianos, horizontal y vertical, permite

representar en un espacio plano las líneas rectas que geométricamente hablando representan cada expresión

matemática lineal con sólo dos variables. Las restricciones y condiciones de signo del problema, representan al sistema

que debe graficarse en un plano y después se valora en el mismo la función económica Z, con la cual se busca un

punto del sistema que maximice o bien minimice su valor.

Para mejor comprensión del método gráfico de solución de problemas modelados con programación lineal, se presenta

el siguiente ejemplo que se detalla lo suficiente para el voluntarioso estudiante de esta técnica poderosa en su

aplicación. Posteriormente se presentan otros ejemplos con el propósito de profundizar en la enseñanza e intentar

mayor avance en el aprendizaje.

Ejemplo 1-12. Problema de combinar producción para máxima utilidad (QUIMCAR) [AND93].

QUIMCAR es una empresa que elabora varios productos químicos. En un proceso de producción en particular se

utilizan tres recursos como materia prima de dos productos: una cera automotriz y una pasta pulidora, que se usan en

la pintura de la carrocería a vehículos automotores y se distribuye para su venta al menudeo a varias empresas

distribuidoras. Para producir la cera y la pasta se utilizan tres recursos, según se muestra en la siguiente tabla, en la

cual se observa que una tonelada de cera es una mezcla de 2/5 de tonelada del recurso 1 y 3/5 de tonelada del 3. Por

otro lado, una tonelada de pasta es la mezcla de 1/2, 1/5 y 3/10 de tonelada de los recursos 1,2 y 3, respectivamente.

La producción de la cera automotriz y la pasta pulidora está restringida a la disponibilidad de los tres recursos. Para

el periodo de producción anual, se tienen disponibles las cantidades siguientes de cada una de las materias primas.

39

Figura 1-15. Recursos disponibles para la producción en ejemplo QUIMCAR.

Figura 1-16. Material requerido para cera y pasta pulidora en ejemplo QUIMCAR.

El departamento de contabilidad ha analizado las cifras de producción, asignando los costos correspondientes para

ambos productos, llegó a precios que resultan en una contribución a la utilidad de 400 dólares por cada tonelada de

cera automotriz y de 300 dólares por cada tonelada de pasta pulidora, producidas. La administración, después de

analizar la demanda potencial, ha concluido que los precios establecidos aseguran la venta de toda la cera y pasta que

se produzca.

El problema es determinar: 1º.-Un conjunto de expresiones matemáticas o modelo, representando el objetivo y

restricciones del problema descrito. 2º.- Resolver en forma gráfica y determinar cuántas toneladas de cera y pasta

debe producir la empresa para maximizar la contribución total a la utilidad.

Definición de las variables y función objetivo

Como ya se apuntó anteriormente, los problemas de programación lineal tienen un objetivo ya sea de máximo o bien

de mínimo. En este problema, el objetivo es de maximizar la contribución a la utilidad y se plantea en forma

matemática introduciendo alguna forma simple de notación, como sigue:

1a. Parte.-Definición de variables.-

Es importante precisar la unidad de medida:

2a. parte.- Función objetivo.-

La contribución a la utilidad se origina de: (1) la que proviene de la producción de X1 toneladas de cera

automotriz, y (2) la que proviene de la producción de X2 toneladas de pasta pulidora. Dado que se gana 400

dólares por cada tonelada de cera producida, la empresa gana$400 X1 si se producen X1 toneladas de cera.

También, en vista de que se gana 300 dólares por cada tonelada de pasta producida, la empresa gana $300

X2 si se producen X2 toneladas de pasta. Identificando con Z la contribución total a la utilidad y eliminando el

signo de dólares se tiene:

40

El problema es encontrar la combinación de producción que maximice la contribución total a la utilidad. Esto

es, se deben determinar los valores para X1 y X2 que den el valor más elevado posible de Z. En terminología

de programación lineal, se nombran a X1 y a X2 como las variables de decisión. Dado que el objetivo de

maximizar la utilidad es una función de éstas, entonces se dice que Z = 400 X1 + 300 X2 es la función objetivo,

que también se puede escribir abreviando los coeficientes a unidades que significan cientos de dólares por

tonelada producida, como sigue:

Cualquier combinación de producción de cera y pasta se conoce como una solución al problema. Sin embargo,

únicamente aquellas soluciones que satisfagan todas las restricciones se conocen como soluciones factibles

o posibles. La combinación específica de producción factible, que resulte en la contribución mayor a la

utilidad, se conoce como la combinación de producción óptima, o simplemente, la solución óptima. Pero

primero se requiere conocer todas las restricciones del problema y posteriormente se muestra un método para

definir gráficamente, en el plano de dibujo, el espacio en que se ubican el conjunto de puntos de solución

factible.

3a. Parte.- Restricciones de materia prima.

La cantidad de materia prima disponible, condiciona o sujeta el valor de la función objetivo para cumplirse

con los tres recursos limitados, calculando las posibles soluciones en las cantidades de cera y pasta que se

pueden producir. Según la información de producción (vea la tabla), se sabe que cada tonelada de cera

automotriz utiliza 2/5 toneladas del recurso 1, por lo que el total de toneladas del mismo utilizado en la

producción de X1 toneladas de cera es 2/5X1; además, cada tonelada de pasta usa 1/2 tonelada del recurso 1,

como resultado, X2 toneladas de pasta usan 1/2 X2 toneladas de recurso 1, entonces el consumo total de

toneladas de recurso 1 para producir X1 de cera y X2 de pasta está dado por

Debido a que se tiene un máximo de 20 toneladas de materia prima 1 disponible, la combinación de producción

a decidir debe satisfacer la restricción

La relación anterior es una desigualdad que anota las contribuciones al consumo de recurso 1, utilizadas en la

producción de X1 toneladas de cera y de X2 toneladas de pasta, que debe ser menos que o igual a 20 toneladas

disponibles.

La tabla indica que el recurso 2 no es requerido por la cera, pero si por la pasta pues cada tonelada producida

de ésta requiere 1/5 tonelada de las 5 disponibles, se expresa así:

41

Si desea, ahora verifique por sí mismo que la restricción para la materia prima 3 es

Hasta aquí se han definido, las restricciones de materia prima; sólo falta establecer que las toneladas de cera

y pasta no puede ser un número negativo.

4a parte.- Condiciones de valor no negativo para las variables:

Esto asegura valores no negativos de las variables de decisión como solución al problema presente, se conocen

como restricciones de no negatividad y son una característica general de los problemas de programación lineal.

Modelo matemático del problema de Quimcar.

La formulación matemática o modelo simbólico, representa en forma abstracta, el objetivo y las restricciones del

problema, trasladados del mundo real a un conjunto de relaciones matemáticas. El modelo completo del problema es:

Ahora sólo falta encontrar la combinación de productos cera y pasta expresadas como toneladas de X1 y X2 que

satisface todas las restricciones y también resulte en un valor máximo de la función objetivo, comparado con el valor

de cualquier otra solución factible, lo que significa la solución óptima del problema.

Este modelo matemático del problema es programación lineal, tiene una función objetivo y restricciones, todas con

la característica especial de que son una función lineal de las variables de decisión.

Las funciones matemáticas en las cuales sólo una de las variables aparece elevada a la primera potencia como un

término independiente, se conocen como funciones lineales. La función objetivo 4X1 + 3X2 es lineal, porque cada

una de las variables de decisión aparece en un término por separado con exponente 1. Si la función objetivo se

presentara como 4X21 + 3X3

2, no se trataría de una función lineal. Por la misma razón, el número de toneladas de la

materia prima 1 requerida, 2/5X1+1/2X2 , también es una función lineal de las variables de decisión. Similarmente, el

lado izquierdo de todas las desigualdades de restricción son funciones lineales, así la formulación matemática del

problema anterior se identifica como un programa lineal.

Solución gráfica

Un problema de programación lineal con sólo dos variables de decisión se puede resolver de manera gráfica sobre el

espacio plano. Se inicia este procedimiento de solución desarrollando una gráfica que despliegue las posibles

42

soluciones (valores X1 y X2) para el problema QUIMCAR. En la Figura 1-17 aparecen los valores de X1 sobre un eje

horizontal y los valores de X2 sobre uno vertical. De esta manera se divide el plano o papel de trabajo, en cuatro

espacios limitados por los ejes, formando así los cuadrantes 1, 2, 3 y 4. Cualquier punto de la gráfica puede quedar

identificado por un par de valores X1 y X2, que representa la posición del punto con respecto de los ejes X1 y X2. Cada

par (X1, X2) corresponde a un punto solución de esta manera se tendría una infinidad de ellos en el plano considerado.

Pero para la solución particular en la que X1 = 0 y X2 = 0, se ubica un punto vértice identificado como origen para

ambos ejes.

Figura 1-17. Algunos puntos solución para el problema QUIMCAR.

El siguiente paso es mostrar, qué puntos corresponden a soluciones factibles del programa lineal. Tanto X1 como

X2 deben ser de valor no negativo, por lo que sólo es necesario considerar la porción de la gráfica en donde X1 >= 0

y X2 >= 0, lo que se conoce como primer cuadrante. En la Figura 1-18 las flechas indican el primer cuadrante, o sea,

la región donde estos requisitos de no negatividad quedan satisfechos para la solución buscada.

43

Figura 1-18. Gráfica del primer cuadrante. Cumple las restricciones de no negatividad (>= 0).

Anteriormente se determinó la desigualdad que representa la restricción para la materia prima 1 es:

Para mostrar todos los puntos solución que la satisfacen, se traza la línea que geométricamente representa a la ecuación

lineal: 2/5X1 + 1/2X2, = 20 la cual debe ser recta, se calculan dos puntos pertenecientes a la misma y a continuación

se traza una línea recta a través de los mismos. Para ello, arbitrariamente se buscan los puntos sobre los ejes en que,

por supuesto, se tiene el valor de cero para una de las variables, así al hacer X1 = 0, se ubica sobre el eje X2 y

resolviendo la ecuación en función de la variable X2, queda ½ X2 = 20, o también X2 = 40; por lo tanto el punto (X1=0,

X2=40) satisface la ecuación anterior, pues es la intersección de las rectas, eje X2 y la que representa el recurso 1;

alternativamente, para encontrar un segundo punto que satisfaga esta ecuación se hace X2 = 0 y se resuelve en función

de X1. Al hacerlo se observa que 2/5X1 = 20, es decir, X1 =50, por lo que un segundo punto que también satisface la

ecuación es (X1=50, X2=0). Con estos dos puntos, se puede trazar la recta que se conoce como línea de restricción

de la materia prima 1, mostrada en la Figura 1-19

44

Figura 1-19. La línea recta de restricción de la materia prima 1, ejemplo QUIMCAR.

La desigualdad que representa a la restricción de la materia prima 1 es:

¿Puede usted identificar las soluciones que satisfacen esta restricción? Observe primero, que cualquiera de la infinidad

de puntos que forman la línea recta de restricción 2/5X1 + 1/2X2, = 20 debe satisfacer a la misma; pero ¿dónde están

los puntos solución que satisfacen la desigualdad: 2/5X1 + 1/2X2 < 20? Ahora considere dos puntos de solución

(X1 =10, X2 =10) y (X1 =40, X2 =30). La Figura 1-19muestra que la primera solución se ubica por debajo de la línea

de restricción y la segunda queda por encima, entonces ¿cuál de estas soluciones satisface la restricción del recurso

1? Para el punto (X1 =10, X2 =10), se tiene:

Dado que 9 es menor que 20 toneladas de materia prima 1 disponible, la combinación o solución, de productos X1=10

toneladas de cera automotriz, X2=10 toneladas de pasta pulidora satisface la restricción del recurso 1, en este caso se

califica a (10,10) como una solución factible. Por otro lado, para X1 =40 y X2 =30 se tiene:

31 es mayor que las 20 toneladas disponibles de recurso 1, por lo que la solución X1 = 40 toneladas de cera, X2 = 30

toneladas de pasta, no satisface la restricción, y por lo tanto la solución (40,30) no es factible.

Si una solución particular no es factible, todas las demás soluciones del mismo lado de la línea recta de restricción

tampoco lo serán. Si una solución particular es factible, todas las demás soluciones del mismo lado de la línea de

restricción serán factibles, por lo que solamente es necesario evaluar un punto de solución para determinar cuál es el

45

lado de la línea de restricción que representa las soluciones factibles. En la Figura, el área factible con todos los puntos

que satisfacen la restricción de la materia prima 1 se muestra sombreada.

Figura 1-20. Región factible para la restricción de la materia prima 1, ejemplo QUIMCAR.

¿Se siente capaz de trazar una línea de restricción y localizar los puntos de solución que son factibles? Si así lo desea

intente resolver la restricción 2.

Para el caso que necesite más instrucción, a continuación se muestra la identificación de los puntos de solución que

satisfacen la restricción de la materia prima 2:

Se empieza dibujando la línea de restricción correspondiente a la ecuación 1/5 X2 = 5, que es equivalente a X2 = 25,

simplemente se dibuja una línea cuyo valor X2 es 25, está línea es paralela a X1 y está a 25 unidades por encima del

eje horizontal. En la Figura 1-21 se dibuja la línea recta que corresponde a la restricción de la materia prima 2, la

región sombreada corresponde a todas las combinaciones de producción que son soluciones factibles para la

restricción de la materia prima 2.

46

Figura 1-21. Región factible de la restricción de materia prima 2, ejemplo QUIMCAR.

De manera similar, se puede diferenciar el conjunto de todas las soluciones factibles para la restricción de la materia

prima 3. La Figura 1-22muestra la zona de puntos factibles. Como ejercicio práctico, pruebe trazar la región factible

de la restricción de la materia prima 3 y verifíquelo con este gráfico.

Figura 1-22. Región factible para la restricción de la materia prima 3, ejemplo QUIMCAR.

47

Ahora se tienen tres gráficas por separado que muestran las soluciones factibles para cada una de las restricciones. En

un problema de programación lineal, se necesita identificar las soluciones que satisfacen simultáneamente todas las

restricciones. Las gráficas de las Figura 1-20, Figura 1-21 y Figura 1-22 se pueden superponer para obtener una

intersección gráfica de las tres restricciones. La Figura 1-23muestra esta gráfica de restricciones combinadas. La

región sombreada de esta figura incluye todos los puntos solución que simultáneamente, satisfacen todas las

restricciones. Las soluciones que satisfacen simultáneamente todas las restricciones del sistema se conocen como

factibles, la parte sombreada se conoce como la región de soluciones factibles, o simplemente región factible.

Cualquier punto en las fronteras de la región factible, o bien en su interior, es un punto de solución factible. Ahora

que se ha identificado la región factible, se puede seguir adelante con el método de solución gráfica y determinar cuál

es la solución óptima para el problema de QUIMCAR. Recuerde que la solución óptima para un problema de

programación lineal es la solución factible que aporte el mejor valor de la función objetivo.

Figura 1-23. Región de soluciones factibles del problema ejemplo QUIMCAR.

Se inicia el paso de optimización del procedimiento de solución gráfica volviendo a dibujar la región factible en una

gráfica por separado. La Figura muestra dicha gráfica.

El procedimiento para determinar la solución óptima evaluando la función objetivo para cada una de las soluciones

factibles, no es posible pues hay demasiadas, (de hecho, una infinidad). Por lo tanto, para identificar la solución óptima

no se debe utilizar un procedimiento de ensayo y error. En vez de intentar calcular la contribución a la utilidad de

cada solución factible, se selecciona un valor arbitrario de la contribución a la utilidad y se identifican todas las

soluciones factibles (X1, X2) que dan el valor seleccionado.

48

Figura 1-24. Región factible del problema ejemplo QUIMCAR.

Por ejemplo, ¿qué soluciones factibles dan una contribución a la utilidad de 2400 dólares? Estas soluciones se dan

por los valores de X1 y X2 de la región factible que cumplan con la siguiente función objetivo que se puede simplificar

para obviar cálculos, así:

Ésta expresión es simplemente la ecuación de una línea recta, por lo que todas las soluciones factibles (X1, X2), con

una contribución a la utilidad de 24 dólares deben estar en esta línea. Ya se aprendió como trazar una línea de

restricción; el procedimiento para trazar la línea de la función objetivo o de utilidad es el mismo. Haciendo X1=0, se

tiene que X2 debe ser 8; entonces, el punto de solución (X1=0, X2=8) está en la recta. Similarmente, haciendo X2 = 0,

se tiene que el punto de solución (X1=6, X2 = 0), también está en la recta. Dibujando la línea recta por estos puntos,

se identifican todas las soluciones que tienen una contribución a la utilidad de 24; una gráfica de esta línea de utilidad

se presenta en la Figura 1-25 que muestra un número infinito de combinaciones factibles de producción que darán

una contribución de 24 a la utilidad.

Utilizando el procedimiento anterior para el trazado de rectas de utilidad y de restricción, se trazan la línea de utilidad

de 72 y 120 que se presentan en la misma Figura 1-25. Por supuesto, sólo los puntos de las rectas de valor 24, 72 y

120 que están dentro de la región factible, deben considerarse como soluciones factibles para tal contribución de

utilidad.

49

Figura 1-25. Diferentes líneas de utilidad para el problema ejemplo QUIMCAR

Dado que las rectas de utilidad son paralelas y de valor creciente conforme se alejan del origen, se pueden obtener

valores mayores para la función objetivo, continuando el movimiento hacia fuera del conjunto factible pero

manteniéndose adentro del mismo, hasta alcanzar el (los) último(s) punto(s) vértice antes de salir. Dado que los puntos

fuera de la región factible no son aceptables, el (los) punto(s) vértice en la región factible que coincide(n) con la recta

de utilidad mayor es una solución óptima al programa lineal.

El estudiante debe identificar ahora, el punto de solución óptimo para el problema ejemplo QUIMCAR. Utilice una

regla y escuadra, mueva paralelamente la recta de utilidad tan lejos del origen como pueda, pero conservando el

contacto en la zona factible. ¿Cuál es el último punto de la región factible? Este punto debe ser vértice y corresponde

a la solución óptima, vea el gráfico de la Figura 1-26. Los valores óptimos para las variables de decisión son (X1, X2)

= (25, 20).

50

Figura 1-26. Solución óptima para el problema ejemplo QUIMCAR.

Dependiendo del tamaño y claridad de su gráfica, se determinan los valores óptimos exactos de X1 y X2 leyendo

directamente de la gráfica. Pero observe en la Figura 1-23, la solución óptima del ejemplo está en la intersección de

las rectas de restricción 1 y 3 que se pueden resolver para precisar los valores coordenados.

Por lo que los valores de las variables de decisión X1 y X2 deberán satisfacer las ecuaciones de manera simultánea.

Resolviendo en función de X1 en (1)

Sustituyendo esta expresión (4) de X1 en la ecuación (3) y resolviendo en función de X2 se obtiene

51

Sustituyendo X2 =20 en la ecuación (4) y resolviendo en función de X1, resulta

A pesar de que la solución óptima para el problema está formada de valores enteros de las variables de decisión, esto

no será siempre el caso. La localización exacta del punto de solución óptima es X1 =25 y X2 =20. Este punto identifica

las cantidades óptimas de producción para QUIMCAR en 25 toneladas de cera automotriz y 20 toneladas de pasta

pulidora, con una contribución a la utilidad de:

Así, en un problema de programación lineal con dos variables de decisión, se puede determinar el valor exacto de las

variables de la solución óptima, utilizando primero el método gráfico para identificar el punto que optimiza y después

resolviendo simultáneamente las dos ecuaciones que generan el mismo.

Trazo de líneas rectas

Un aspecto importante del método gráfico es la posibilidad de trazar líneas rectas representando las restricciones y la

función objetivo del programa lineal. El procedimiento más sencillo para trazar la recta de una ecuación, es

encontrando dos puntos cualesquiera que la satisfagan y a continuación trazando la recta a través de dichos puntos.

En el caso de la línea recta de restricción de la materia prima 1 del problema QUIMCAR

Se identifican los dos puntos (X1 = 0, X2 = 40) y (X1 = 50, X2 = 0). Después se traza la línea recta de restricción de la

materia prima 1 a través de estos dos puntos.

Cuando en la ecuación de restricción sólo aparece una variable, como es el caso de la materia prima 2 del problema

(1/5 X2 <= 5), se resuelve en función de la única variable que aparece en la ecuación (para esta restricción, X2 =25);

es claro que en tal ecuación X1 = 0 pues no está presente, así (X1 =0, X2 =25) representa el punto en el eje X2 por

donde debe pasar una recta paralela al eje X1.

52

Todas las rectas de restricción y de funciones objetivo en los programas lineales de dos variables, se pueden trazar si

se pueden identificar los puntos de la línea. Sin embargo, determinar dichos puntos no siempre es tan fácil como

resultó en el problema QUIMCAR. Por ejemplo, considere la restricción:

Usando la forma de igualdad y haciendo X1 = 0, se tiene que el punto (X1 = 0, X2 = -100) pertenece a la recta de

restricción. Si X2=0, se tiene el segundo punto (X1 = 50, X2 = 0) sobre la misma recta de restricción. Si se ha dibujado

sólo la porción no negativa (X1 >= 0, X2 >= 0) correspondiente al primer cuadrante de la gráfica, entonces no se puede

fijar el primer punto (X1 = 0, X2 = -100), porque no hay escala para valores negativos en la gráfica tal como es X2 =

-100. Siempre que se tengan dos puntos de la recta, con uno o ambos valores negativos, el procedimiento gráfico

obligado es incluir la escala negativa a los dos ejes coordenados horizontal y vertical, incluyendo los cuadrantes

necesarios. En este ejemplo, se puede localizar el punto (X1 = 0, X2 = -100) extendiendo hacia abajo el eje vertical

para incluir los valores negativos de X2. Una vez localizados los dos puntos que satisfacen la ecuación y el conjunto

de soluciones factibles para la nueva restricción de ejemplo 2X2 - 1X2 <= 100, entonces se procede a su trazo, según

se ve en la siguiente figura:

Figura 1-27. Soluciones factibles de la restricción 2X1-1X2 <= 100

Considere ahora la restricción: 1X1 - 1X2 >= 0 mostrada en la Figura 1-28. El lado derecho con valor cero en esta

desigualdad, identifica una línea recta que contiene o pasa por el punto vértice conocido como origen. Para determinar

las soluciones que satisfacen la restricción como igualdad, primero se hace X1 = 0 y se resuelve en función de X2. El

resultado muestra que el origen (X1= 0, X2 = 0) está en la recta de restricción. Al hacer X2 = 0 y al resolver para X1,

resulta en el mismo punto. Pero se puede obtener otro punto de la recta, al dar a X2 un valor cualquiera distinto de

cero y entonces resolver en función de X1. Por ejemplo, haciendo que X2 = 100 y resolviendo en función de X1, se

encuentra que el punto (X1 = 100, X2 = 100) también pertenece a la recta. En ambos puntos (X1=0, X2= 0) y (X1 =

100, X2 = 100) se puede trazar la línea de restricción 1X1-1X2 = 0 y pueden determinarse las soluciones factibles para

1X1 - 1X2 >= 0.

53

Figura 1-28. Soluciones factibles de la restricción 1X1 - 1X2 >= 0

Resumen del método de solución gráfica en dos variables.

1. Dibuje en un sistema de dos ejes cartesianos (por ejemplo X1 para la coordenada horizontal y X2 para la

coordenada vertical) las líneas rectas correspondientes a cada una de las expresiones lineales del modelo de

programación lineal, identificando las mismas, calcule y anote las coordenadas (valores de X1 y X2) para cada

punto vértice.

2. Observe la dirección de las desigualdades para definir, individualmente, el conjunto de puntos de solución

factible de cada una de las restricciones y posteriormente, combinando todas ellas, por intersección o traslape,

definir y señalar el conjunto de puntos de solución factible para todo el sistema de restricciones del problema.

3. Con un valor arbitrario para la función Z, calcule las coordenadas de un punto perteneciente a cada uno de los

dos ejes cartesianos, dando alternativamente el valor de cero a X1 y X2 de la función objetivo Z, ahora se traza

una recta que pase por dichos puntos en los ejes, la cual muestra todos los valores posibles de X1 y X2 de la

misma.

4. Mueva la recta de la función objetivo Z paralelamente hacia valores mayores de la función, si el problema es

de máximo, o bien, hacia valores menores, si el problema es de mínimo, hasta que coincida con un punto

vértice, antes de salir de la región factible. La recta de la función objetivo se cuantifica con los valores (X1,

X2) al coincidir con el vértice; su valor crecerá o bien decrecerá conforme a su traslado paralelo, según sean

los signos de sus términos.

5. Cualquier punto vértice que sea solución factible para el sistema de restricciones que coincida con la recta de

la función objetivo que resulte con el valor mayor para un máximo o bien con el menor para un mínimo, según

el caso, es una solución óptima.

Variables de Holgura

Además de la solución óptima y de su contribución a la utilidad asociada, la administración de QUIMCAR desea

tener información de uso de las tres materias primas. Se puede obtener esta información reemplazando los valores

óptimos de las variables (X1=25, X2=20) en las restricciones del programa lineal.

54

Figura 1-29. Material consumido: solución óptima cera y pasta, ejemplo QUIMCAR.

La solución completa le indica a la administración que la producción de 25 toneladas de cera automotriz y de 20

toneladas de pasta pulidora requiere toda la materia prima disponible 1 y 3, pero solamente cuatro de las cinco

toneladas de la materia prima 2. La tonelada de la materia prima 2 no utilizada se conoce como holgura. En

terminología de programación lineal, cualquier capacidad sin utilizar y ociosa para una restricción igual o menor

(<=) se llama holgura asociada con la restricción, por lo que la restricción del recurso 2 tiene una holgura de una

tonelada.

A menudo se agregan variables, conocidas como variables de holgura Hi, o bien Xi, (según la notación preferida) a

la formulación de un problema de programación lineal para representar la capacidad ociosa. La capacidad sin utilizar

no hace ninguna contribución a la utilidad, por lo que las variables de holgura que se incluyan en la función objetivo

deben tener coeficientes iguales a cero. En general, las variables de holgura representan la diferencia entre los lados

derecho e izquierdo de una restricción de tipo <=.

Una vez agregadas las variables de holgura a la representación matemática correspondiente al problema QUIMCAR

el modelo matemático se convierte en:

Cuando todas las restricciones de un problema lineal se expresan en forma de igualdades, se dice que el modelo

matemático está en forma estándar. En el problema QUIMCAR se observa que en la solución óptima (X1=25,

X2 =20), el valor de las variables de holgura es:

Figura 1-30. Holguras de materia prima en ejemplo QUIMCAR.

55

Figura 1-31. Concepto físico de la holgura H2 en ejemplo QUIMCAR.

También se puede utilizar el análisis gráfico para obtener la información de las holguras. Observe que al determinar

la solución óptima de la Figura, el punto vértice que es intersección de la materia prima 1 y de la 3, restringen o

limitan la región factible hasta ese punto vértice, por lo que la solución óptima requiere usar la totalidad de estos dos

recursos. En otras palabras, la gráfica en Figura 1-23 muestra que en la solución óptima, la línea recta de restricción

de la materia prima 2 no limita la región factible en ese punto vértice, por lo que se puede esperar algún sobrante

(holgura) de este recurso.

Cuando en un gráfico se tienen rectas de restricción que sólo tocan un vértice del conjunto factible o bien ningún

punto del mismo, se identifican como restricciones redundantes (sobrantes). En problemas con más de dos variables

de decisión, se tienen métodos analíticos para detectar la redundancia.

En tal caso, la región factible se conserva igual, independientemente de que se incluya o no una restricción redundante

del problema, por lo tanto se pueden eliminar sin que tengan ningún efecto sobre la solución óptima. Sin embargo, en

la mayor parte de los problemas de programación lineal, las restricciones redundantes no se descartan porque no son

reconocibles de inmediato como tales. El problema QUIMCAR no tiene restricciones redundantes pues todas las

restricciones forman la frontera de la región factible.

Observaciones y comentarios

1. En la forma estándar de un programa lineal, los coeficientes para las variables de holgura son cero en la función

objetivo, por lo tanto, las variables de holgura que representan recursos sin utilizar, no afectan el valor de la

función y se pueden omitir. Pero en algunas aplicaciones, algunos o todos los recursos no utilizados pueden

venderse para recuperar valores y contribuir a la utilidad. En estos casos las variables de holgura

correspondientes se convierten en variables de decisión que representan el total de recursos a vender. Para

cada una de estas variables, un coeficiente distinto de cero en la función objetivo reflejará la utilidad asociada

con la venta de una unidad del recurso correspondiente.

2. Las restricciones redundantes no afectan la región factible; como consecuencia, pueden eliminarse de un

modelo de programación lineal sin afectar la solución óptima. Sin embargo, si posteriormente se debe resolver

el modelo de programación lineal con algunos cambios en los datos, una restricción previamente redundante

se podría convertir en un recurso limitante, por lo que se sugiere conservar todas las restricciones del modelo

de programación lineal, aun cuando se espere que una o más de ellas sean redundantes.

Puntos extremos y solución óptima

Suponga que la contribución a la utilidad de una tonelada de pasta pulidora se incrementa de 300 a 600 dólares, en

tanto que la contribución a la utilidad de una tonelada de cera automotriz y todas las demás restricciones se mantienen

sin modificación. La función objetivo se convierte en:

56

¿Cómo afecta este cambio de la función objetivo a la solución óptima del problema de QUIMCAR? La Figura 1-

32 muestra la solución gráfica del problema, utilizando la función objetivo modificada. Observe que las restricciones

no tienen cambio, entonces la región factible es la misma; pero se han alterado las líneas rectas de utilidad para reflejar

la nueva función objetivo.

Como se observa en la Figura 1-32, al mover la línea recta de utilidad de manera paralela, alejándola del origen, se

encuentra la solución óptima. Los valores de las variables de decisión en este punto son X1=18.75 y X2 = 25. El

aumento en la utilidad de la pasta pulidora ha creado un cambio en la solución óptima. De hecho, como quizás ya lo

previó, se reduce la producción de la cera y aumenta la de pasta pulidora, porque ahora tiene una utilidad mayor.

Respecto de las soluciones gráficas de la Figura 1-26 y Figura 1-32 se debe hacer una observación importante: la

solución óptima ocurre en alguno de los vértices o intersecciones de la región factible. En terminología de

programación lineal, estos vértices se conocen como puntos extremos de la región factible, por lo que para este

problema se tienen cinco vértices, es decir, cinco puntos extremos (Figura 1-32). Ahora se puede dar la observación

siguiente sobre la localización de las soluciones óptimas.

Figura 1-32. Cambia óptimo: objetivo máximo Z = 400X1 + 600 X2, ejemplo QUIMCAR

Si existe la solución óptima de un problema de programación lineal, se puede encontrar en un punto extremo

de la región factible del problema.

Esta propiedad significa que, si busca la solución óptima de un problema de programación lineal, debe limitarse a

evaluar y comparar los puntos de solución correspondientes a los vértices de la región factible.

OTROS EJEMPLOS DE MÉTODO GRÁFICO: Se presentan algunos problemas resueltos con gráfica para

ampliar la oportunidad de adquirir este conocimiento:

Ejemplo 1-13. Método gráfico, PL en máximo con restricciones <= (MAXCAN1) [HIL67].

57

El gráfico en la Figura 1-33 muestra el conjunto de soluciones factibles, coordenadas y notas importantes de vértices,

con valores de Z para los mismos; además, se presentan coordenadas en tabla de todo el sistema, el que se amplía

debido a las holguras que se suman a cada una de las restricciones.

Figura 1-33. Solución gráfica del ejemplo MAXCAN1.

Anote que se evalúan sólo los vértices factibles y que las rectas correspondientes a las restricciones (1) y (2) son

paralelas al eje X2 y al eje X1, respectivamente, por lo que no hacen intersección con ellos, es decir, no forman vértice.

En el punto vértice C se localiza el valor máximo buscado para la función Z. En la Figura 1-34 se muestra el conjunto

de puntos que son factibles para cada una de las tres restricciones y el primer cuadrante; la intersección de todos ellos

resulta en la región factible de la Figura 1-33.

58

59

Figura 1-34. Regiones factibles en cada restricción del ejemplo MAXCAN1.

Para valorar los puntos vértices del conjunto factible se sustituyen los valores correspondientes (X1, X2) en la ecuación

Z:

Figura 1-35. Concepto físico de holgura en restricción 3 del ejemplo MAXCAN1.

60

Espacio ampliado al sumar holguras.- En la siguiente tabla se muestran los vértices dados en el gráfico del Ejemplo

1-13, MAXCAN1. Estos se generan como solución básica, pues se conjuntan 5 variables (2 de decisión más 3

holguras) del modelo en forma estándar. Se anota (X1, X2) conocidas en la solución gráfica y sustituyendo éstas en la

misma forma, se valoran H1, H2, H3, obteniendo la solución básica respectiva.

Figura 1-36. Espacio ampliado a 5 dimensiones, en ejemplo MAXCAN1.

Solución básica: Se tiene con, al menos, (m + n) - m = n variables iguales a cero.

En donde: m = # de restricciones; n = # de variables originales o de decisión.

Para el ejemplo: m = 3; n = 2; entonces: (m + n) - m = (3 + 2) - 3 = 2 variables nulas.

En la tabla, cada renglón es una solución básica, pues 2 de las 5 variables son cero.

Un vértice o punto extremo único es el cruce de sólo 2 líneas, como es en este ejemplo.

Una solución básica factible en vértice único, se denomina no degenerada. Observe que las variables

nulas pertenecen a las rectas que tocan el vértice. Número máximo de soluciones básicas únicas.- Estima el tiempo

para la computadora.

En este ejemplo se ven 8 vértices y 2 que no existen por paralelismo entre rectas.

Conjunto convexo.- Un conjunto es convexo si dados dos puntos A, B, cualesquiera del mismo, el segmento de recta

que los une, se incluye totalmente en dicho conjunto. La expresión matemática, de todos los puntos P obtenidos por

combinación convexa entre dos puntos A y B del mismo es:

61

Figura 1-37. Ejemplos de conjunto convexo.

Figura 1-38. Ejemplos de conjunto no convexo.

Ejemplo 1-14. Método gráfico, PL en mínimo con restricciones >= (MINCAN1).

62

Figura 1-39. Gráfica del ejemplo MINCAN1, resulta un conjunto factible abierto.

63

Figura 1-40. Regiones factibles del ejemplo MINCAN1.

Observe el valor de la función objetivo, es mínimo en el vértice C (2,4) con Zc = 14.

El conjunto de soluciones factibles de la Figura 1-39 de este problema, es no acotado, se obtiene sobreponiendo las

regiones factibles de las tres restricciones del modelo y la región factible del primer cuadrante, mostradas en la Figura

1-40

64

Un vértice formado con más de dos líneas rectas, se califica como solución no única, como son los vértices O y C

que se pueden formar con tres combinaciones de intersección según se muestra en el gráfico de la Figura 1-39 para

tales puntos. En particular, el vértice C se denomina como solución degenerada pues es factible y no único. El

origen O, se califica como no factible, al igual que la infinidad de puntos restantes (sean vértices o no), que no

pertenecen al conjunto factible, sombreado entre las rectas (1), (2) y eje X1.

Un punto vértice de solución degenerada en la analogía geométrica bidimensional se tiene con una recta

restricción redundante en ese punto, pero tal recta no forma el conjunto factible.

La forma estándar requiere que todas las restricciones sean de igualdad, pero cuando el modelo en estudio tiene

restricciones de tipo >=, se usa una holgura negativa Si llamada variable de superávit, la cual debe restarse a cada

una de esas restricciones como sigue:

Figura 1-41. Concepto físico de superávit en restricción 1, ejemplo MINCAN1.

De esta manera, el espacio de dos dimensiones de la Figura 1-39 y Figura 1-40, se amplía a un espacio de 5

dimensiones que no se puede dibujar, pero si tratar analíticamente.

La tabla de la Figura 1-42 muestra las coordenadas o valor para cada una de las variables en el problema Ejemplo 1-

14, MINCAN1, ampliado a 5 dimensiones (2 variables de decisión más 3 variables superávit), al pasar a forma

estándar; se conservan los valores (X1, X2) obtenidos en la solución gráfica de la Figura 1-39 y se sustituyen en la

forma estándar para calcular el valor de S1, S2, S3, variables restadas en el lado izquierdo de las restricciones. En la

tabla, cada renglón se identifica con cada vértice de la Figura 1-39, pero debido a la ampliación del espacio, se

convierten en solución básica pues tienen, por lo menos: n = (m + n) - m = (3 + 2) - 3 = 2 variables de valor cero. Pero

los puntos extremos O y C, tienen más de 2 variables nulas, en este caso con 3 variables cero, se identifican

como soluciones básicas no únicas y en particular C es una solución básica degenerada.

Supóngase ahora que la función objetivo Z se cambia para máximo, en tal caso el traslado hacia fuera del cuadrante,

de la línea recta correspondiente a la función Z, con el propósito de incrementar el valor de las variables X1 y X2,

resulta en un incremento indefinido para el valor de dicha función y por lo tanto sin límite.

Sustituyendo (X1, X2) de los dos vértices de la región factible se obtiene el óptimo como mínimo ZC = 14:

65

Figura 1-42. Sistema ampliado a 5 dimensiones en ejemplo MINCAN1.

Ejemplo 1-15. Método gráfico, PL en máximo y mínimo, restricciones <= y >= (MAXMIN1).

Este nuevo ejemplo inicia una serie de variantes a partir del Ejemplo 1-14, se estima que el estudiante fija más

conocimiento cuando tiene oportunidad de comparar los efectos de los cambios en el mismo problema, se pretende

responder a: ¿qué pasaría sí.....?

Como se puede ver en la Figura 1-44, el efecto inmediato del cambio es que ahora se tiene un conjunto factible

acotado, que permite calcular para la función Z el máximo y también el mínimo. Se anota información relevante, ya

explicada en anteriores ejemplos y se sugiere al lector estudioso comprobar lo aprendido hasta ahora, con el ejercicio

de graficar, cada una de las restricciones y luego definir el conjunto de soluciones factibles para todo el sistema de

este problema. Verifique la Figura 1-43.

66

Figura 1-43. Factibilidad de restricciones en ejemplo MAXMIN1.

Observe que los puntos vértices (extremos) son la intersección de por lo menos dos líneas rectas, en tal caso se dice

que son únicos; pero los puntos O y C se forman con tres líneas rectas, calificándolos como vértices no únicos, pues

se puede generar la misma intersección de las tres maneras en que se anota en la Figura 1-44. Para este ejemplo, el

punto extremo C, además de no único, es factible y por lo tanto solución degenerada. El vértice origen O, queda en

la categoría de no factible, como es cualesquier punto no incluido en la zona sombreada. A propósito de ella revise,

si así lo desea, la definición de conjunto convexo y verifique que las regiones factibles correspondientes a los

problemas gráficos de ejemplo, cumplen para tal calificación.

67

Figura 1-44. Solución gráfica del ejemplo MAXMIN1, resulta una región factible acotada al invertir la

restricción (1) a <=.

# Máximo de soluciones básicas únicas: m =3 restricciones; n = 2 variables originales

Ejemplo 1-16. Método gráfico con PL en máximo y mínimo, una restricción en = (FACTIRECTA).

Así el conjunto factible resulta en un sólo segmento de recta BC. Se sugiere como ejercicio, graficar individualmente

las restricciones y verificar su conjunto factible con la Figura 1-45.

68

Figura 1-45. Gráfica del modelo ejemplo FACTIRECTA, variante del MAXMIN1, con el segmento de recta

BC como conjunto de soluciones factibles.

Restricción redundante: Para este problema, puede ser tanto el número uno, como la número dos, según la que se

utilice primero para definir el vértice "C". En caso de que requiera mayor exposición, a continuación se presenta en

la Figura 1-46 el conjunto factible correspondiente a cada restricción del Ejemplo 1-16; anote en particular, el gráfico

de la (3) que es de igualdad, provoca que el conjunto factible sea un sólo segmento de recta BC.

69

Figura 1-46. Región factible para cada restricción del ejemplo FACTIRECTA.

Ejemplo 1-17. Método gráfico, PL en máximo y mínimo, la variable X2 no positiva. (MINMAXCU).

70

Figura 1-47. Solución gráfica del modelo ejemplo MINMAXCU, muestra un conjunto factible que se ubica en

el cuarto cuadrante debido a que la variable X2 se condiciona a valor no positivo.

Esta nueva variante elegida como Ejemplo 1-17 tiene algo especial, como es condicionar a signo no positivo a la

variable X2, con el resultado gráfico que quizá, ya esperaba usted.

La aceptación de la posibilidad de valor negativo para X2, obliga al cálculo que incluye las dos alternativas: con signo

menos y con cero, para X2; así se consigue situar el dibujo con los vértices necesarios para el trazo, definición del

conjunto factible y la evaluación de la función objetivo en el cuarto cuadrante del sistema bidimensional.

Como puede observar en la Figura 1-47, el conjunto de soluciones factibles del ejemplo 1.17 se define en el cuarto

cuadrante con el triángulo cuyos vértices son O B C.

En la Figura 1-48 se presenta la región factible que le corresponde a cada una de las restricciones del ejemplo

MINMAXCU para verificar sus resultados gráficos:

71

Figura 1-48. Región factible de restricciones del ejemplo MINMAXCU.

Programa CAVA.- El lector que así lo desee puede consultar en el programa CaVa (próximo a liberarse) las

soluciones (ya sea analítica o bien gráfica), de algunos de los problemas ejemplo del libro. Puede encontrar, como

ejemplos de formulación de modelos de PL, los números: 1.4Bediet, 1.7 de distribución de carga en barco, 1.9 de

desperdicio en proceso de corte. Como ejemplos de método gráfico los números 1.31 al1.43.

1.6. Ejercicios, actividades de aprendizaje y autoevaluaciones correspondientes al capítulo [MAT96]

En las siguientes subsecciones encontrará una serie de ejercicios que ayudarán a la total comprensión de los temas

tratados en el presente capítulo. Asimismo, los ejercicios marcados con *AUTOEVAL* son de auto evaluación, el

peso de los incisos correspondientes a cada uno de ellos podrán ser consultados en la sección de respuestas. Se sugiere

resolverlos, y una vez terminados, revisar su solución y calcular la calificación correspondiente y así evaluar el

entendimiento del mismo.

Se recomienda aplicar los ejercicios aquí planteados a casos prácticos de la vida diaria como parte de las actividades

de aprendizaje del presente material.

72

1.6.1. Mezcla de tipos de petróleo crudo *AUTOEVAL*.

Una empresa puede comprar dos tipos de petróleo crudo: ligero a un costo de $25 dólares por barril y pesado a $22

dólares por barril. Cada barril de petróleo crudo ya refinado, produce la fracción de barril anotada de los tres productos

de la siguiente tabla:

Figura 1-49. Tabla de mezcla de tipos de petróleos crudos.

La refinería se ha comprometido a entregar pedidos en barriles de 1.260,000 de gasolina, 900,000 de turbosina y

300,000 de queroseno. Formule con PL un modelo que defina todas las variables de decisión, determine los barriles

de cada tipo de petróleo crudo a comprar, minimice el costo total y satisfaga la demanda.

B.1.1. Mezcla de tipos de petróleos crudos.

Enunciado del ejercicio

6 expresiones-acierto en modelo (1/2 punto c/u)

1.6.2. Mezcla de tipos de camión.

Una empresa recibió un contrato para suministrar a distribuidores 800,000 galones de gasolina por mes. La compañía

tiene disponibles $500,000 dólares para iniciar una flota consistente en tres tipos diferentes de camiones. En la

siguiente tabla se muestra la capacidad, costo de compra, costo operativo y número máximo de viajes por cada tipo

de camión.

73

Figura 1-50. Tabla de mezcla de tipos de camión.

Considerando el mantenimiento y la disponibilidad de conductores, la empresa desea comprar a lo más 10 vehículos

para su flota. Así mismo, la compañía desea asegurar la compra de al menos 3 de los camiones del tipo 3 para usarse

en las rutas de trayecto corto y baja demanda. Finalmente, la empresa desea que a lo más la mitad de la flota sea de

camiones del tipo 1. Formule un modelo para determinar la composición de la flota que minimice los costos operativos

mensuales y satisfaga las demandas, sin salirse del presupuesto.

B.1.2. Mezcla de tipos de camión.

1.6.3. Transporte de turbosina al aeropuerto.

Una línea aérea reabastece sus aeronaves regularmente en los cuatro aeropuertos incluidos en su servicio. La turbosina

puede comprarse a tres vendedores posibles de cada aeropuerto. La tabla siguiente indica el costo de entrega (compra

más embarque) de 1,000 galones de cada vendedor a cada aeropuerto; también el número disponible en miles de

galones que cada vendedor puede proveer cada mes; por último, el requerimiento mensual de turbosina en miles de

galones en cada aeropuerto.

Figura 1-51. Tabla de transporte de turbosina al aeropuerto.

Formule un modelo de PL que determine cantidades de turbosina a comprar y enviar por parte de cada vendedor a

cada aeropuerto con mínimo costo, satisfaciendo al mismo tiempo por lo menos la demanda mensual a cada aeropuerto

y no excediendo el suministro de cualquier vendedor.

74

B.1.3. Transporte de turbosina al aeropuerto.

1.6.4. Asignación de servicio postal a sucursales.

Una ciudad desea determinar cuántas subestaciones postales se requieren para dar servicio a su población. La ciudad

ha sido dividida en ocho zonas postales. Se han identificado cinco ubicaciones posibles para las subestaciones. Cada

ubicación puede dar servicio a un número diferente de zonas, como se indica en la siguiente tabla:

Figura 1-52. Tabla de asignación de servicio postal a sucursales.

Formule un modelo para determinar el número mínimo de subestaciones (y sus ubicaciones) necesarias para dar

servicio a las ocho zonas postales. (Sugerencia: defina una variable apropiada para cada ubicación.)

75

B.1.4. Asignación de servicio postal a sucursales.

1.6.5. Producción de partes para ensamble.

Tres divisiones de una compañía fabrican un producto en el que cada unidad completa consiste en cuatro unidades

del componente A y tres unidades del componente B. Los dos componentes (A y B) se fabrican a partir de dos materias

primas diferentes. Existen 100 unidades de la materia prima 1 y 200 unidades de la materia prima 2 disponibles. Cada

una de las tres divisiones usa un método diferente para fabricar los componentes, dando como resultado distintos

requerimientos de materia prima y productos. La tabla muestra los requerimientos de materia prima por corrida de

producción en cada división y el número de cada componente producido por esa corrida.

Figura 1-53. Tabla de producción de partes para ensamble.

Por ejemplo, cada corrida de producción de la división 1 requiere 8 unidades de la materia prima 1 y 6 unidades de la

materia prima 2. El producto de esta corrida es 7 unidades de A y 5 unidades de B. Formule un modelo para determinar

el número de corridas de producción para cada división que maximice el número total de unidades terminadas de

producto.

76

B.1.5. Producción de partes para ensamble.

1.6.6. Transporte de combustible.

Una empresa tiene 14,000 galones de una mezcla de gasolina y alcohol en el almacén 1 y 16,000 galones en el almacén

2. Desde esos almacenes, debe proveer 10,000 galones al cliente 1 y 20,000 galones al 2. El costo de embarcar 1 galón

desde cada almacén a cada cliente es en dólares:

Figura 1-54. Tabla de transporte de combustible.

Formule un modelo de programación lineal para determinar el plan de embarque de costo mínimo que satisfaga las

restricciones de provisión y demanda.

77

B.1.6. Transporte de combustible.

1.6.7. Mezcla de componentes en producción de pólvora.

Una empresa mezcla azufre, carbón y salitre para producir pólvora. El producto final debe contener al menos 10%,

pero no más de 20%, de carbón por unidad de peso. La cantidad de salitre no puede exceder el 50% de la cantidad de

carbón usado. Para evitar una explosión accidental, la suma de 50% del azufre más 60% del carbón más 30% del

salitre usados no pueden exceder 35% del producto final. El azufre es con mucho el componente más caro. Formule

un modelo para determinar la cantidad de cada ingrediente que debe utilizarse para producir cada libra de pólvora que

satisfaga las restricciones y, a la vez, que requiera la menor cantidad de azufre.

B.1.7. Mezcla de componentes en producción de pólvora.

1.6.8. Producción de jugos *AUTOEVAL*.

Cada semana, se usa una sola máquina durante 150 horas para destilar jugo de naranja y de toronja en concentrados

almacenados en dos tanques separados de 1000 galones antes de congelarlos. La máquina puede procesar 25 galones

de jugo de naranja por hora, pero sólo 20 galones de jugo de toronja. Cada galón de jugo de naranja cuesta $2 y pierde

30% de contenido de agua al destilarse en concentrado. El concentrado de jugo de naranja se vende después en $8 por

galón. Cada galón de jugo de toronja cuesta $2.5 y pierde 25% de contenido de agua al destilarse en concentrado. El

concentrado de jugo de toronja se vende después en $10 por galón. Formule un modelo de programación lineal para

determinar un plan de producción que maximice la ganancia para la siguiente semana usando las variables:

78

X n = número de galones de jugo de naranja por utilizar esta semana X t = número de galones de jugo de toronja por

utilizar esta semana

B.1.8. Producción de jugos.

Enunciado del ejercicio

6 expresiones-acierto en modelo (1/2 punto c/u)

1.6.9. Producción de jugos concentrados.

Como variante del ejercicio anterior, formule un modelo de programación lineal para determinar un plan de

producción que maximice la ganancia para la siguiente semana usando las variables: Xcn = el número de galones de

concentrado de naranja por producir esta semana Xnt = el número de galones de concentrado de toronja por producir

esta semana

B.1.9. Producción de jugos concentrados.

1.6.10. Transporte de barriles de petróleo.

Se debe transportar 100,000 barriles de cada uno de tres campos petroleros a un tanque de almacenamiento A. El

petróleo puede transportarse en camiones directamente de los campos al tanque A con un costo de $0.03 por barril-

milla. También pueden enviarse hasta 150,000 barriles de petróleo, desde los campos mediante ductos a un eje central

B a un costo de $0.02 por barril-milla y luego transportarse al A en camiones a $1 por barril. Formule un modelo de

Pl del plan de embarque de costo mínimo, dadas las siguientes distancias en millas:

79

Figura 1-55. Tabla de transporte de barriles de petróleo.

B.1.10. Transporte de barriles de petróleo.

Enunciado del ejercicio

1.6.11. Asignación de cultivos *AUTOEVAL*.

Se tienen 50 acres de tierra en la cual plantar cualquier cantidad de maíz, soya, lechuga, algodón y brócoli. La siguiente

tabla muestra la información relevante perteneciente a la producción, al costo de plantación, al precio de venta

esperado y los requerimientos de agua para cada cultivo:

Figura 1-56. Tabla de asignación de cultivos.

Para la próxima temporada hay 100,000 litros de agua disponibles y se pueden vender al menos 5,120 Kg de maíz.

Formule un modelo de programación lineal.

80

B.1.11. Asignación de cultivos.

1.6.12. Conceptos de PL con opciones de acierto *AUTOEVAL*.

Opciones de aciertos para diferentes conceptos.

(1) conjunto convexo, (2) vector C, (3) matriz A, (4) redundante, (5) forma estándar, (6) desigualdad, (7) solución

básica, (8) variable superávit, (9) solución degenerada, (10) programación lineal, (11) forma canónica, (12) (m + n)!

/ m! n!, (13) variable de holgura, (14) solución factible, (15) solución no única.

Anote el # correspondiente en los paréntesis siguientes:

(__) Arreglo a coeficientes de consumo en restricciones.

(__) Solución básica, no única, factible.

(__) Posible consumo adicional al recurso requerido.

(__) Número máximo de soluciones básicas únicas.

(__) Objetivo Máximo (Mínimo), restricciones <= (>=), variables>= 0

(__) Infinidad de puntos satisfaciendo toda restricción.

(__) Tiene al menos, n variables nulas.

(__) Con matemática lineal abstrae problema analizado.

(__) Ubicado en: interior, frontera, o vértice del conjunto.

(__) Significa el posible exceso de recurso.

(__) Objetivo Max (Min), restricciones =, variables >= 0.

(__) Tiene menos de m variables positivas.

81

(__) Arreglo de coeficientes de la función objetivo.

(__) Restricción que no limita el conjunto factible.

(__) P = A + (1 - ) B; 0 <= <= 1

Nota: Un paréntesis puede tener más de un número y éstos pueden repetirse en otros.

B.1.12. Conceptos de PL con opciones de acierto.

Opciones de aciertos para diferentes conceptos.

Anote el # correspondiente en los paréntesis siguientes:

(3, 6, 5, 10,11) Arreglo a coeficientes de consumo en restricciones.

(4, 7, 9, 14,15) Solución básica, no única, factible.

(6,8) Posible consumo adicional al recurso requerido.

(12) Número máximo de soluciones básicas únicas.

(10,11) Objetivo Max (Min), restricciones <= (>=), variables>= 0

(1, 5, 6, 10,14) Infinidad de puntos satisfaciendo toda restricción.

(7, 9,15) Tiene al menos, n variables nulas.

(5, 10,11) Con matemática lineal abstrae problema analizado.

(14) Ubicado en: interior, frontera, o vértice del conjunto.

(6,13) Significa el posible exceso de recurso.

(5,10) Objetivo Max (Min), restricciones =, variables >= 0.

(4, 7, 9,15) Tiene menos de m variables positivas.

(2,10) Arreglo de coeficientes de la función objetivo.

(4, 9,15) Restricción que no limita el conjunto factible.

(1,10) P = A + (1- ) B; 0 <= <=1

82

1.6.13. Solución gráfica 1 con aciertos de opción múltiple *AUTOEVAL*.

Dado el gráfico y el modelo de PL que lo origina:

Figura 1-57. Gráfica y modelo 1 con aciertos de opción múltiple.

Resuelva como en ejemplos 1.12, 13,...,17; luego elija el acierto entre los incisos: a), b),..., anotando en los paréntesis

(__) lo que crea correcto:

(__) La recta de restricción #2 es:

a) AO b) GACD c) FCBE d) O B D e) FAL

(__) La recta de restricción #3 es:

a) OA b) FCBE c) EBCF d) DCAG e) ninguna

(__) Las coordenadas de un vértice no único son:

a (-2,0) b (2,2) c (0,2) d (2,0)

(__) El conjunto factible es el espacio:

a) ALG b) BCD c) OACB d) AFC e) AF

(__) El # máximo de soluciones básicas únicas es:

a) 15 b) 18 c) 32 d) 10 e) 28

83

(__) El # de soluciones inexistentes son:

a) 6 b) 4 c) 3 d) 8 e) 2 f) 1 g) ninguna

(__) El # de soluciones básicas en vértice no único es:

a) 9 b) 6 c) 12 d) 15 e) 3

(__) Hay solución degenerada en vértice(s):

a) OB b) CO c) EB d) A e) O f) FC

(__) Hay solución no degenerada en vértice(s):

a) A b) CF c) E d) BC e) ninguna

(__) Hay redundancia por restricción(es) #:

a) 3,2 b) 2 c) 1 d) 3 e) ninguna

(__) Restricción 1,2,3,4 en = con:

a) H1, H2, H3,-S4 b) H1, H2, H3 c) -S1,-S2,-S3,-S4

(__) Valor max, min respectivo en función Z es:

a) -2,-8 b) 4,-2 c) -6,-12 d) 1,-5

B.1.13. Solución gráfica con aciertos de opción múltiple.

Dado el gráfico y el modelo de PL que lo origina:

84

Figura B-1. Solución 1

Resuelva como en ejemplos 1.12, 13,...,17; luego elija el acierto entre los incisos: a), b),..., anotando en los paréntesis

(__) lo que crea correcto:

(c) La recta de restricción #2 es:

a) AO b) GACD c) FCBE d) O B D e) FAL

(a) La recta de restricción #3 es:

a) OA b) FCBE c) EBCF d) DCAG e) ninguna

(b) Las coordenadas de un vértice no único son:

a (-2,0) b (2,2) c (0,2) d (2,0)

(d) El conjunto factible es el espacio:

a) ALG b) BCD c) OACB d) AFC e) AF

(a) El # máximo de soluciones básicas únicas es:

a) 15 b) 18 c) 32 d) 10 e) 28

(e) El # de soluciones inexistentes son:

a) 6 b) 4 c) 3 d) 8 e) 2 f) 1 g) ninguna

(b) El # de soluciones básicas en vértice no único es:

85

a) 9 b) 6 c) 12 d) 15 e) 3

(d) Hay solución degenerada en vértice(s):

a) OB b) CO c) EB d) A e) O f) FC

(b) Hay solución no degenerada en vértice(s):

a) A b) CF c) E d) BC e) ninguna

(d) Hay redundancia por restricción(es) #:

a) 3,2 b) 2 c) 1 d) 3 e) ninguna

(a) Restricción 1,2,3,4 en = con:

a) H1, H2, H3,-S4 b) H1, H2, H3 c) -S1,-S2,-S3,-S4

(a) Valor max, min respectivo en función Z es:

a) -2,-8 b) 4,-2 c) -6,-12 d) 1,-5

B.1.14. Solución gráfica con aciertos de opción múltiple.

Dado el gráfico y el modelo de PL que lo origina:

Figura B-2. Solución 2

86

Resuelva como en ejemplos 1.12, 13,...,17; luego elija el acierto entre los incisos: a), b),..., anotando en los paréntesis

(__) lo que crea correcto:

(c) La recta de restricción #2 es:

a) KAO b) GACD c) FCBE d) TCK e) RFKL

(a) La recta de restricción #3 es:

a) KAO b) FCBE c) EBCF d) DCAG e) ninguna

(c) Coordenadas de vértices no únicos:

a(-2,0)(0,2) b(2,2)(4,0) c(3,3)(1,3)(0,0)

(d) El conjunto factible es el espacio:

a) AKGL b) KCF c) OACB d) AKC e) KF

(b) El # máximo de soluciones básicas únicas es:

a) 15 b) 21 c) 32 d) 10 e) 28

(f) El # de soluciones inexistentes son:

a) 6 b) 4 c) 1 d) 6 e) 2 f) 3 g) ninguna

(a) El # de soluciones básicas en vértice no único es:

a) 9 b) 6 c) 12 d) 15 e) 3

(b) Hay solución degenerada en vértice(s):

a) OB b) CK c) EB d) A e) O f) FA

(c) Hay solución no degenerada en vértice(s):

a) R b) O c) A d) KC e) ninguna

(b) Hay redundancia por restricción(es) #:

a) 3,1 b) 2,5 c) 1 d) 4 e) ninguna

(d) En 1, 2, 3, 4,5 pasa a = con:

a) 3Hi y 2Si b) 1Hi y 4Si c) 2Hi y 3Si d) 4Hi y 1Si

(d) Valor max, min respectivo en función Z es:

87

a) -3,-8 b) 4,-2 c) 6,-1 d) -2,-7

B.1.13. Solución gráfica con aciertos de opción múltiple.

Dado el gráfico y el modelo de PL que lo origina:

Figura B-1. Solución 1

Resuelva como en ejemplos 1.12, 13,...,17; luego elija el acierto entre los incisos: a), b),..., anotando en los paréntesis

(__) lo que crea correcto:

(c) La recta de restricción #2 es:

a) AO b) GACD c) FCBE d) O B D e) FAL

(a) La recta de restricción #3 es:

a) OA b) FCBE c) EBCF d) DCAG e) ninguna

(b) Las coordenadas de un vértice no único son:

a(-2,0) b (2,2) c(0,2) d(2,0)

(d) El conjunto factible es el espacio:

a) ALG b) BCD c) OACB d) AFC e) AF

(a) El # máximo de soluciones básicas únicas es:

88

a) 15 b) 18 c) 32 d) 10 e) 28

(e) El # de soluciones inexistentes son:

a) 6 b) 4 c) 3 d) 8 e) 2 f) 1 g) ninguna

(b) El # de soluciones básicas en vértice no único es:

a) 9 b) 6 c) 12 d) 15 e) 3

(d) Hay solución degenerada en vértice(s):

a) OB b) CO c) EB d) A e) O f) FC

(b) Hay solución no degenerada en vértice(s):

a) A b) CF c) E d) BC e) ninguna

(d) Hay redundancia por restricción(es) #:

a) 3,2 b) 2 c) 1 d) 3 e) ninguna

(a) Restricción 1,2,3,4 en = con:

a) H1, H2, H3,-S4 b) H1, H2, H3 c) -S1,-S2,-S3,-S4

(a) Valor max, min respectivo en función Z es:

a) -2,-8 b) 4,-2 c) -6,-12 d) 1,-5

1.6.14. Solución gráfica 2 con aciertos de opción múltiple *AUTOEVAL*.

Dado el gráfico y el modelo de PL que lo origina:

89

Figura 1-58. Gráfica y modelo 2 con aciertos de opción múltiple.

Resuelva como en ejemplos 1.12, 13,...,17; luego elija el acierto entre los incisos: a), b),..., anotando en los paréntesis

(__) lo que crea correcto:

(__) La recta de restricción #2 es:

a) KAO b) GACD c) FCBE d) TCK e) RFKL

(__) La recta de restricción #3 es:

a) KAO b) FCBE c) EBCF d) DCAG e) ninguna

(__) Coordenadas de vértices no únicos:

a(-2,0)(0,2) b(2,2)(4,0) c(3,3)(1,3)(0,0)

(__) El conjunto factible es el espacio:

a) AKGL b) KCF c) OACB d) AKC e) KF

(__) El # máximo de soluciones básicas únicas es:

a) 15 b) 21 c) 32 d) 10 e) 28

(__) El # de soluciones inexistentes son:

a) 6 b) 4 c) 1 d) 6 e) 2 f) 3 g) ninguna

(__) El # de soluciones básicas en vértice no único es:

90

a) 9 b) 6 c) 12 d) 15 e) 3

(__) Hay solución degenerada en vértice(s):

a) OB b) CK c) EB d) A e) O f) FA

(__) Hay solución no degenerada en vértice(s):

a) R b) O c) A d) KC e) ninguna

(__) Hay redundancia por restricción(es) #:

a) 3,1 b) 2,5 c) 1 d) 4 e) ninguna

(__) En 1, 2, 3, 4,5 pasa a = con:

a) 3Hi y 2Si b) 1Hi y 4Si c) 2Hi y 3Si d) 4Hi y 1Si

(__) Valor max, min respectivo en función Z es:

a) -3,-8 b) 4,-2 c) 6,-1 d) -2,-7

B.1.14. Solución gráfica con aciertos de opción múltiple.

Dado el gráfico y el modelo de PL que lo origina:

Figura B-2. Solución 2

91

Resuelva como en ejemplos 1.12, 13,...,17; luego elija el acierto entre los incisos: a), b),..., anotando en los paréntesis

(__) lo que crea correcto:

(c) La recta de restricción #2 es:

a) KAO b) GACD c) FCBE d) TCK e) RFKL

(a) La recta de restricción #3 es:

a) KAO b) FCBE c) EBCF d) DCAG e) ninguna

(c) Coordenadas de vértices no únicos:

a(-2,0)(0,2) b(2,2)(4,0) c(3,3)(1,3)(0,0)

(d) El conjunto factible es el espacio:

a) AKGL b) KCF c) OACB d) AKC e) KF

(b) El # máximo de soluciones básicas únicas es:

a) 15 b) 21 c) 32 d) 10 e) 28

(f) El # de soluciones inexistentes son:

a) 6 b) 4 c) 1 d) 6 e) 2 f) 3 g) ninguna

(a) El # de soluciones básicas en vértice no único es:

a) 9 b) 6 c) 12 d) 15 e) 3

(b) Hay solución degenerada en vértice(s):

a) OB b) CK c) EB d) A e) O f) FA

(c) Hay solución no degenerada en vértice(s):

a) R b) O c) A d) KC e) ninguna

(b) Hay redundancia por restricción(es) #:

a) 3,1 b) 2,5 c) 1 d) 4 e) ninguna

(d) En 1, 2, 3, 4,5 pasa a = con:

a) 3Hi y 2Si b) 1Hi y 4Si c) 2Hi y 3Si d) 4Hi y 1Si

(d) Valor max, min respectivo en función Z es:

92

a) -3,-8 b) 4,-2 c) 6,-1 d) -2,-7

1.6.15. Solución gráfica 3 con aciertos de opción múltiple *AUTOEVAL*.

Dado el gráfico y el modelo de PL que lo origina:

Figura 1-59. Gráfica y modelo 3 con aciertos de opción múltiple.

Resuelva como en ejemplos 1.12, 13,...,17; luego elija el acierto entre los incisos: a), b),..., anotando en los paréntesis

(__) lo que crea correcto:

( __) La recta de restricción #1 es:

a) BAE; b) FATQ; c) OACD; d) GECRH

( __) La recta de restricción #4 es:

a) QRD; b) FATQ; c) OACD; d) GECRH

(__) Las coordenadas del vértice T son:

a(3,3); b(1,3); c(0,2); d(4,0); e(-2,0)

( __) El conjunto factible es el espacio:

a) AOF; b) AEGF; c) ACRT; d) QRT

93

( __) El # máximo de soluciones básicas únicas es:

a)15; b)32; c)21; d)10; e)28

( __) El # de soluciones inexistentes son:

a) 2; b) 4; c) 3; d) 5; e) 7; f) 1; g) ninguna

( __) El # de soluciones básicas en vértice no único es:

a) 15; b) 6; c) 9; d) 12; e) 3

( __) Hay solución degenerada en vértice(s):

a) AO; b) CT; c) EGF; d) AR; e) RDC

( __) Hay solución no degenerada en vértice(s):

a) AFG; b) CT; c) Q; d) AB; e) GF

( __) Hay redundancia por restricción(es) #:

a) 3,4; b) 1,2; c) 5; d) 6; e) ninguna

( __) Restricción en = con:

a) 3Si, 3Hi; b) 4Si, 2Hi; c) 2Si, 4Hi; d) 2Wi,2Si,2Hi; d) 6Si

(__ ) Valor max, min respectivo en función Z es:

a) -2,-8, b) 4,-2, c) -6,-12, d) 5,-4

B.1.15. Solución gráfica con aciertos de opción múltiple.

Dado el gráfico y el modelo de PL que lo origina:

94

Figura B-3. Solución 3

Resuelva como en ejemplos 1.12, 13,...,17; luego elija el acierto entre los incisos: a), b),..., anotando en los paréntesis

(__) lo que crea correcto:

( d ) La recta de restricción #1 es:

a) BAE; b) FATQ; c) OACD; d) GECRH

(a) La recta de restricción #4 es:

a)QRD; b) FATQ; c) OACD; d) GECRH

(b) Las coordenadas del vértice T son:

a(3,3); b(1,3); c(0,2); d(4,0); e(-2,0)

( c ) El conjunto factible es el espacio:

a) AOF; b) AEGF; c) ACRT; d) QRT

( e ) El # máximo de soluciones básicas únicas es:

a)15; b)32; c)21; d)10; e)28

95

(d) El # de soluciones inexistentes son:

a)2; b)4; c)3; d)5; e)7; f)1; g) ninguna

(a) El # de soluciones básicas en vértice no único es:

a) 15; b)6; c)9; d) 12; e)3

(d) Hay solución degenerada en vértice(s):

a) AO; b) CT; c) EGF; d) AR; e) RDC

(b) Hay solución no degenerada en vértice(s):

a) AFG; b) CT; c) Q; d) AB; e) GF

(a) Hay redundancia por restricción(es) #:

a) 3,4; b) 1,2; c) 5; d)6; e) ninguna

(c) Restricción en = con:

a) 3Si, 3Hi; b) 4Si, 2Hi; c) 2Si, 4Hi; d) 2Wi, 2Si, 2Hi; d) 6Si

(a) Valor max, min respectivo en función Z es:

a)-2,-8, b)4,-2, c)-6,-12, d)5,-4

1.7. Referencias bibliográficas

AND93. - Anderson D. - Sweeney D. - Williams T

Introducción a los Modelos Cuantitativos para Administración.,- Grupo Editorial Iberoamérica.- 1993.

DAN63. - Dantzig George B.

Linear Programming and Extensions. Princenton University Press. Princenton N.J. 1963.

GAS74. - Gass Saul I.

Linear Programming. Methods and Applications. McGraw Hill, New York.1974

GAS81. - Gass Saul I.

Programación lineal.- Limusa 1ª Edición 1981

HIL95.- Hillier-Lieberman.

96

Introducción a la Investigación de Operaciones.-McGraw-Hill.- 6a.edición.- 1995.

MAT96. - Mathur Kamlesh and Solow Daniel.

Investigación de Operaciones. El Arte de la Toma de Decisiones. Prentice Hall Hispanoaméricana. 1996

SAT95. - Saaty Thomas.

Mathematical Methods of Operations Research, Mc Graw Hill Book Company, New York, 1959

WAG75. - Wagner H.

Principles of Operation Research. 2d. edition. Englewood Cliffs. N. J. Prentice Hall. 1975.

WIN94.- Winston Wayne.

Investigación de Operaciones. Aplicaciones y Algoritmos.- Grupo Editorial Iberoamérica.- 2ª Edición.-1994.

Capítulo 2. SOLUCIÓN ANALÍTICA DEL MODELO DE PROGRAMACIÓN LINEAL.

Tabla de contenido 2.1. Objetivo.

2.2. Conceptos relacionados.

2.3. Teoremas de la programación lineal.

2.4. Método Simplex.

2.5. Matriz unitaria "I" de base con variables artificiales.

2.6. Casos especiales en la tabla Simplex.

2.7. Teoría de la dualidad.

2.8. Ejercicios, actividades de aprendizaje y autoevaluaciones correspondientes al capítulo

2.9. Referencias bibliográficas

2.1. Objetivo.

El alumno debe aprender la utilización del poderoso y versátil método simplex de solución en programación lineal,

aplicado en problemas ejemplo pequeños que muestran las diversas circunstancias de su preparación antes de aplicar

el algoritmo y los casos especiales identificables en la tabla solución. También con fines de interpretación económica,

debe aprender las relaciones que vinculan a un problema con su dual asociado y los teoremas derivados.

2.2. Conceptos relacionados.

Para la gran mayoría de los problemas modelados con programación lineal, el método gráfico es claramente inútil

para resolverlo, pero afortunadamente y gracias a la dedicación de varios científicos, desde mediados del siglo XX se

cuenta con el eficiente método SIMPLEX, poderoso por su aplicación versátil en cualquier área de la actividad

humana. Pero como antecedente a la exposición del simplex, conviene aclarar con definiciones algunos conceptos

relacionados.

En programación lineal es necesario calificar la palabra solución para precisar el concepto al que se hace referencia,

como se expresa enseguida:

97

SOLUCIÓN.- Es un conjunto de n + m variables "Xj", definidas ordenadamente como un vector X = (X1, X2,... Xj,

... Xn, Xn+1, ... , Xn+m) que satisface el conjunto de ecuaciones que constituyen el sistema en el problema.

En donde: m =número de restricciones; n =número de variables de decisión.

SOLUCIÓN FACTIBLE.- Es un conjunto de n + m variables "Xj", definidas ordenadamente como un vector X = (

X1, X2, ... Xj, ... Xn , Xn+1, ..., Xn+m) que satisface el conjunto de ecuaciones que constituyen el sistema en el problema.

Y además la condición, toda Xj >= 0.

SOLUCIÓN BÁSICA.- Se obtiene, cuando en el sistema de ecuaciones se hacen n variables iguales a cero del total

de (n+m) variables y resolviendo las ecuaciones para las restantes "m" variables, siempre que el determinante de los

coeficientes de estas "m" variables llamadas básicas, no sea cero. Consulte el apéndice A.

SOLUCIÓN BÁSICA FACTIBLE.- Es una solución básica que cumple Xj >= 0, para toda j (j = 1, 2,..., n + m); es

decir, todas las variables básicas son no negativas. En una analogía geométrica con sólo dos variables, se puede

comparar con los vértices en el área sombreada.

SOLUCIÓN NO DEGENERADA.- Es una solución básica factible, con exactamente "m" variables básicas Xi,

estrictamente positivas.

SOLUCIÓN DEGENERADA.- Es una solución básica factible, con menos de "m" variables básicas Xi positivas,

pues al menos, una de ellas es de valor cero.

SOLUCIÓN ÓPTIMA.- Es una solución básica factible que optimiza la función

2.3. Teoremas de la programación lineal.

La PL se fundamenta en varios teoremas de los cuales se definen tres de los más importantes:

1. El conjunto de soluciones factibles de la programación lineal es convexo.

Definición.- Un conjunto es convexo, si dados dos puntos cualesquiera A y B del mismo, el segmento de recta

que los une, se incluye totalmente en dicho conjunto (Figura 1-37); expresado matemáticamente, un conjunto

C es convexo si y sólo si, todos los puntos "P" determinados por combinación convexa entre dos puntos

cualesquiera A y B del mismo, están en el conjunto C:

98

Ejemplo que verifica convexidad: Determine un punto P por combinación convexa de puntos vértice en Figura

1-33: A (0,6) y F (4,3),

Si tanto A como F son vértices factibles, entonces P está en el conjunto factible.

2. La función objetivo de un programa lineal tiene su valor óptimo (máximo o mínimo), en un punto

extremo (vértice) del conjunto convexo de soluciones factibles.

Si alcanza este óptimo en más de un punto extremo, entonces toma el mismo valor para toda combinación

convexa entre estos puntos del problema, (soluciones óptimas múltiples).

3. Una condición necesaria y suficiente para que un punto X >= 0 en el conjunto de soluciones factibles sea

punto extremo, es que X sea una solución básica factible que satisfaga el sistema: AX=b; o bien expresado

así

Este teorema indica que cada punto extremo corresponde, al menos, a una solución básica y viceversa, cada

solución básica significa un punto extremo. Así se concluye que el número de puntos extremos del conjunto

de soluciones factibles, es finito y no puede exceder el de sus soluciones básicas. Entonces, el número máximo

de tales soluciones supuestas únicas se calcula con el binomio:

Es de anotar, que un punto extremo puede estar definido con más de dos restricciones en cuyo caso se

dice no único y tener más de una solución básica; además, si es extremo factible, se tiene degeneración en

tal vértice. El punto extremo factible único se dice es solución básica no degenerada. Un punto extremo

(vértice) del conjunto factible se identifica porque no se puede expresar como combinación convexa de

cualquier par de puntos del mismo conjunto.

2.4. Método Simplex.

En el año 1947 el doctor George Dantzig presentó el algoritmo que desarrolló y que denominó SIMPLEX. A partir

de este logro se pudieron resolver problemas que por más de un siglo permanecieron en calidad de estudio e

investigación con modelos formulados pero no resueltos. El desarrollo paralelo de la computación digital, hizo posible

su rápido desarrollo y aplicación empresarial a todo tipo de problemas.

99

El método simplex disminuye sistemáticamente un número infinito de soluciones hasta un número finito de soluciones

básicas factibles. El algoritmo simplex utiliza el conocido procedimiento de eliminación en la solución de ecuaciones

lineales de Gauss- Jordan y, además aplica los llamados criterios del simplex con los cuales se asegura mantener la

búsqueda dentro de un conjunto de soluciones factibles al problema; así valora una función económica Z,

exclusivamente en vértices FACTIBLES (posibles). También se consigue con eficiencia, debido a que se dirige la

búsqueda haciendo cambios a una solución básica factible adyacente, que se distingue al tener m-1 variables básicas

iguales; es decir, dos vértices adyacentes sólo difieren en una variable básica; seleccionando la ruta de mayor

pendiente, para mejorar el valor de Z, o por lo menos conservarlo.

Primero se presenta el método simplex, específico para un modelo de PL en forma canónica de máximo, aplicado con

la conocida tabla matricial, (también identificada como tableau), lo cual se resume mediante el diagrama funcional de

la Figura 2-1, que muestra los fundamentos del algoritmo contenidos en niveles o bloques numerados para la

referencia en la descripción del mismo.

Nivel 1.- Forma estándar.-El modelo de PL en forma canónica de máximo que se desea resolver, tiene m ecuaciones

obtenidas al convertir las restricciones de desigualdad a igualdad, agregando m variables de holgura, que sumadas a

las n variables de decisión, hacen un total de (m + n) incógnitas.

Las m restricciones con las (m + n) variables, producen un número infinito de soluciones, entre ellas, un conjunto de

factibles y también las no factibles.

Nivel 2.- Calcule una primera solución básica factible.- Del total, (m + n) variables, sólo n se igualan con cero (n

= 0), lo cual produce (sí existen), un número finito de soluciones básicas con un límite máximo de (m + n)! / m! n!.

Estas pueden ser, factibles y no factibles; se consideran sólo las primeras.

Nivel 3.- Se toman en cuenta sólo las soluciones básicas factibles, esto es, las que tienen todas las variables básicas

>= cero; es decir, con un número de iteraciones menor a (m + n)! / m! n!, se obtienen soluciones básicas factibles: no

degeneradas, si todas las incógnitas básicas son positivas y soluciones degeneradas, si al menos una variable básica

es igual a cero. Se aplican los criterios del algoritmo en forma iterativa para evaluar la función objetivo en puntos

extremos adyacentes que potencialmente puedan mejorar el valor Z.

Nivel 4.- Se generan nuevas soluciones básicas factibles, tales que el valor de la función objetivo Z mejore; se repite

el procedimiento (iteraciones) entre los niveles 3 y 4, hasta que ninguna solución básica factible adyacente resulte

mejor; es decir, hasta que no haya incremento de valor, si el problema es de máximo, (hasta que no haya decremento,

para el problema, no tratado ahora, de mínimo).

100

Figura 2-1. Diagrama funcional del algoritmo simplex.

Nivel 5.- Se interpretan los resultados de la última (iteración) tabla calculada, porque se identifican las características

de una solución óptima.

Criterios del Algoritmo Simplex.

El algoritmo simplex emplea los siguientes criterios para asegurar que la búsqueda de la solución óptima del problema

en estudio sea rápida, limitando el cálculo a soluciones básicas (puntos extremos) que sean factibles.

Criterio de optimalizad. Se aplica en el simplex para determinar entre las variables no básicas, una que entre (VE) a

la base, eligiendo en la columna que tenga el coeficiente más negativo en el renglón "Z" de la tabla, si el problema

es maximizar. Por lo contrario, si el problema es minimizar se elige para variable entrante (VE) a la base la que

cumpla con el coeficiente más positivo en dicho renglón "Z".

Criterio de factibilidad.- Se aplica en el simplex para determinar entre las variables básicas, una que salga de la

base (VS), eligiéndola que cumpla

101

En donde Xi es el valor de la variable básica en el renglón i; a ik es un coeficiente en el mismo renglón i ubicado en

la columna k correspondiente a la variable entrante elegida. Esto es válido tanto para problemas de máximo como de

mínimo.

Elemento pivote: En el cruce correspondiente a columna y renglón elegidos con los dos criterios anteriores, se ubica

un coeficiente denominado pivote (P) que se utiliza durante las iteraciones o etapas de cálculo del simplex.

Ejemplo 2-1. Aplica método Simplex; PL forma canónica máximo (MAXCAN1).

Este modelo de PL forma canónica de máximo con sólo dos variables de decisión, ya se mostró como el Ejemplo 1-

13 de método gráfico con la Figura.

Nivel 1.-

Se inicia el método simplex para el problema expresado en forma canónica, sumando una variable de

holgura a cada una de las restricciones de desigualdad <= que contiene el modelo, convirtiéndose todas ellas

en igualdades. Las holguras se denotan con X n+1, Xn+2,..., Xn+m. Otra conveniente notación es: H1, H2,..., Hm;

en donde 1,2,..., m, son restricciones tipo <=. Así se pasa a:

Ahora se tienen tres ecuaciones con (n+m)= (2+3)=5 incógnitas, ampliando el sistema a 5 dimensiones con

dos grados de libertad para la solución del mismo, lo cual implica un número infinito de soluciones. Se puede

recurrir en lo que sigue, a la analogía geométrica del Ejemplo con el propósito de mostrar parte de la

naturaleza geométrica del algoritmo simplex con la Figura 1-33:

No se puede mostrar una analogía geométrica para el espacio ampliado de forma estándar en cinco

dimensiones con (X1, X2, H1, H2, H3), pero sí se puede observar el espacio factible OACFE que se genera

con sólo dos dimensiones X1 y X2 en la Figura 1-33; en ambos espacios existe un número infinito de puntos

102

tanto interiores como en la frontera de la región factible, aunque sólo existe un número finito de puntos

extremos (vértices).

En teoría, de acuerdo al segundo teorema ya mencionado, la solución óptima se debe buscar en uno de esos

puntos extremos, pero para la mayoría de los problemas con suficiente tamaño significaría una labor de cálculo

excesiva y costosa e incluso imposible. Para tener una idea de lo que significa esto, supóngase por ejemplo un

problema cuyo modelo de programación lineal contiene m = 5 restricciones y n = 4 incógnitas, aplicando el

conocido binomio ya mencionado se tendría: (m + n)! / m! n! = (5 + 4)! / 5! 4! = 126 vértices; otro ejemplo

más, con m = 5 restricciones y n = 10 variables: (5 + 10)! / 5! 10! = 3003 puntos extremos. Los ejemplos aquí

anotados ciertamente son pequeños, pues lo común en el ámbito de empresa o gobierno, es manejar magnitudes

en decenas o cientos, tanto en restricciones como en variables. Pero el simplex salva esta circunstancia con

eficiencia, tal como se expresa enseguida.

Nivel 2.-

Una solución básica se obtiene estableciendo que de las (m+n) incógnitas en el sistema de ecuaciones en forma

estándar, n variables tengan el valor cero llamándolas no básicas y resolviendo (si hay solución) para las

restantes m variables que son básicas, componen la base o solución básica.

El sistema de restricciones en este Ejemplo 2-1 tiene tres ecuaciones con cinco variables, se pueden expresar

tres cualesquiera de estas en función de las otras dos que por ello se consideran independientes. Como cada

variable de holgura H1, H2, H3, se presenta sólo en una, de las tres restricciones, conviene hacerlas básicas y

las variables de decisión X1 y X2 se inicien con valor cero como no básicas. De este modo, para la aplicación

del algoritmo simplex, se tiene la primera solución básica factible siguiente:

La función objetivo Z sólo contiene a las variables de decisión X1 y X2, con valor actual cero, por lo tanto

Z=3(0)+5(0)=0, no satisface el objetivo de máximo. La comparación geométrica es valorar la línea recta Z en

el origen O, como Zo=0. Esta evaluación en O, no puede ser el máximo valor porque aún no se emplean los

recursos de las tres restricciones los cuales son asignados a las tres holguras:

Igualando a cero n variables, se reduce la búsqueda desde una infinidad hasta un número finito de

vértices; pero tal número, aún puede ser grande.

Nivel 3.-

El problema Ejemplo 1-13 (Figura 1-33) condiciona las variables de decisión X1, X2 >=0, pero en las

soluciones básicas que pueden determinarse en nivel 2, no se cumple esta condición para todas las variables,

como se puede comprobar en la tabla para el sistema ampliado del mismo, que muestra valores negativos en

las holguras para las soluciones básicas B, D y J.

En tal circunstancia, aún se pueden disminuir las soluciones básicas eliminando las no factibles porque

tienen variables con valor negativo.

103

Con la tabla Figura 2-2 se inicia el algoritmo simplex, muestra el arreglo matricial de los coeficientes de

acuerdo a la forma estándar de este ejemplo, con excepción de la función objetivo que se arregla a su forma

equivalente: Máximo Z-3X1- 5X2 = 0, con el formato del sistema de ecuaciones lineales. Anote el coeficiente

cero para las ausentes holguras en el renglón Z, pero en cambio, el coeficiente 1 de cada una de las variables

de holgura en cada restricción, forman la diagonal en la matriz unitaria I de base, como conjunto de vectores

linealmente independientes que generan la primera solución en el punto extremo ( X1, X2, H1, H2, H3 ) = ( 0,

0, 4, 12, 18 ), vértice O de la analogía gráfica, Figura 1-33.

Figura 2-2. Tabla simplex, con 1ª solución básica factible, ejemplo MAXCAN1

Nivel 4.-

A partir de la solución inicial del algoritmo simplex, se puede generar una nueva solución básica factible; se

aplica primero el criterio de optimalidad a la solución básica factible actual, seleccionando entre las variables

no básicas, una variable que entre a la base y por lo tanto cambie a básica. La selección de VE se hace

con el criterio de conseguir la mayor ganancia unitaria de la función objetivo en un vértice. Se observa que un

incremento unitario en X2, aumenta en 5 el valor de Z, mientras que un incremento unitario en X1, aumenta

en 3 el valor de Z; si se desea el máximo conviene aumentar a X2, dejando a X1 en cero, lo que corresponde

en la analogía geométrica a decidir pasar a valorar el vértice adyacente A(0,6) a lo largo del segmento frontera

OA, incrementando a X2, desde un valor de cero hasta un valor de 6, conservando X1 su valor cero (Figura 1-

33).

En el simplex, para este ejemplo con el objetivo de maximizar (Figura 2-3), se aplica la optimalidad

seleccionando la variable no básica con el coeficiente más negativo en el renglón Z de la tabla, señalando la

columna elegida con .

La solución básica del simplex, siempre debe tener m (m=3 en el ejemplo) variables básicas, entonces la

VE del criterio de optimalidad debe reemplazar a una de las variables básicas que al salir de la base se convierte

en no básica. Así en segundo lugar, se aplica el criterio de factibilidad, para determinar entre las variables

básicas, una que salga de la base . En la columna izquierda están las variables en la base y en la columna

derecha, se tienen sus valores, los cuales se dividen entre el coeficiente que sea positivo, en el mismo renglón

i de la columna k de la VE, esto es: Mínimo (12 / 2 = 6; 18 / 2 = 9) = 6, lo cual se cumple para la variable

básica H2, que debe señalarse como .

104

Figura 2-3. Criterios de optimalidad y factibilidad, en 1ª tabla simplex, ejemplo MAXCAN1.

Observe, que las variables no básicas X1 y X2 no ocupan lugar en la base, por eso valen cero. Para aclarar el criterio

de factibilidad, considere que se decide el incremento de valor a X2 para variable entrante VE, lo que significa cambiar

al vértice adyacente A, trasladándose a lo largo de la frontera OA, con un valor para la variable X1 = 0 que sustituido

en el sistema de ecuaciones en forma estándar, se tiene:

Aquí se puede ver la esencia del criterio de factibilidad, al no permitir un valor mayor a 6 para la variable X2, pues

para que H2 ó H3 salgan de la base, deben anularse: así H2=0 y H3=6, con X2=6; H3=0 y H2 = -6, si X2 = 9; pero al

asignar X2 = mín (6, 9) =6 se impide que la variable H2sea negativa ya que viola las condiciones impuestas; en la

analogía geométrica significaría evaluar la recta de la función objetivo en el vértice A adyacente al O y pasar a evaluar

el vértice B no adyacente al O, que además es no factible porque H2 = -6, (Figura 1-33).

En el cruce de la columna que corresponde a y el renglón de la , se localiza un coeficiente identificado

como pivote (P) que se utiliza para iniciar el procedimiento de solución de ecuaciones lineales conocido como de

Gauss-Jordan. Para este ejemplo el pivote es 2, en el renglón saliente y columna entrante , procediendo al

cálculo en Figura 2-4 de la siguiente tabla simplex que es la nueva solución básica factible correspondiente al punto

extremo adyacente A (0, 6) de la analogía geométrica.

La segunda solución básica factible se inicia con la nueva base formada con m = 3 variables básicas; H1 y H3 que se

conservan, pero sale H2 y se reemplaza con la variable X2 como básica en el nuevo punto extremo a evaluar. La tabla

simplex se empieza con el renglón entrante correspondiente a la variable X2; se calcula dividiendo los

coeficientes del renglón saliente entre el coeficiente pivote P de la tabla solución anterior. En el lado izquierdo

de la tabla se anota la fórmula utilizada RE = RS / P, para lo resultados mostrados en la fila de X2. Al convertir en

básica a la variable X2, se deben hacer las operaciones filas necesarias para conseguir en su columna, el vector

unitario, característico de una variable básica que forma parte de la matriz I. Por lo tanto se escriben, el coeficiente

1 en la posición del pivote y coeficientes cero en el resto de la columna. Además, en el renglón Z de la tabla, el

coeficiente correspondiente también debe resultar cero. Esto debido a que los coeficientes del renglón Z son

indicadores del posible incremento en el valor de la función objetivo. En cuanto una variable no básica se incrementa

de valor haciéndola básica, el coeficiente en tal renglón resulta de valor cero, indicando así, que X2 ya no puede

aportar a la ganancia representada con la variable Z. En las fórmulas a la izquierda, se usa la fila RE de la nueva

tabla y las filas necesarias de la tabla anterior; la fila H1 se copia igual porque ya existe el cero en la columna X2.

105

Figura 2-4. Tabla simplex con 2a solución básica factible, ejemplo MAXCAN1.

Un cálculo con la restricción (2) en la forma estándar: 2X2 + H2 = 12, sustituyendo los valores X2=6 y H2=0 dados en

la segunda tabla simplex: 2(6) + 1(0) = 12, muestra que debe utilizarse todo el recurso (2), produciendo hasta ahora

una ganancia Z = 3X1 + 5X2 = 3(0) + 5(6) = 30, que resulta mejor a Z = 0 anterior.

Observe el único cambio de la base, sigue con tres variables, pero X2 sustituye a H2 como variable básica y conserva

a H1 y H3, de la solución básica factible de tabla anterior ya que ambas son, de puntos extremos adyacentes.

La nueva solución básica factible valorada con el simplex es, por analogía, el punto extremo vértice A (0,6) en Figura

1-33: (X1, X2, H1, H2, H3) = (0, 6, 4, 0, 6)

Ahora las variables básicas H1, X2, H3 con vector columna unitario hacen la base I. La Figura 2-5 repite la segunda

tabla con los criterios del simple x aplicados.

Figura 2-5. Criterios de optimalidad y factibilidad, 2ª tabla simplex, eje MAXCAN1.

El tratamiento algebraico siguiente, fuera del procedimiento simplex en forma tabular que se está exponiendo, puede

satisfacer al estudiante, para comprender los resultados del renglón Z de la tabla con la segunda solución básica

factible:

La ecuación (2) en la forma estándar es 2X2 + H2 =12 o bien X2 + 1/2 H2 = 6; despejando: X2 =6 - 1/2H2; sustituyendo

en la función: Z - 3X1 - 5X2 = 0, se tiene:

En este proceso algebraico se observa la importancia de los coeficientes en Z: (-3) para X1 y (+5/2) para la holgura

H2, se comprende que se utilicen como indicadores para la optimalidad en el simplex. Significa que la variable

X1 no básica y por lo tanto con valor cero, conviene hacerla básica aumentando su valor, pues su coeficiente en la

ecuación indica que por cada unidad asignada a X1, al valor de Z=30 se le suma 3. Así en la tabla simplex en Figura

106

2-5 se decide que X1, variable no básica entre a la base , para incrementar Z. En cambio Z disminuye, si regresa

H2 a la base.

Por otro lado, en la aplicación del criterio de factibilidad se dividen los valores actuales de las variables básicas,

situados en la columna derecha de la tabla, entre los respectivos coeficientes positivos en la columna X1, que se tiene

como VE, con el resultado: Mínimo (4/1 = 4, 6/3 = 2) = 2, entonces la variable H3 es saliente , y se debe

reemplazar por la nueva variable básica X1 = 2.

Esto representa el cambio de base del vértice A(0,6) al vértice C(2,6), ambos puntos extremos adyacentes de la

analogía gráfica en la Figura 1-33, lo cual se identifica en el simplex porque la base H1, X2, H3 anterior, cambia a H1,

X2, X1 en la siguiente solución básica; es decir, sólo difieren en que X1 sustituye a H3.

En el cruce de la columna y el renglón seleccionados para variable entrante a la base y variable saliente de la

base , se ubica el coeficiente pivote P = 3 en Figura 2-5 que se utiliza para el cálculo de la siguiente iteración.

A continuación se presenta la tercera tabla simplex en la Figura 2-6 que se inicia colocando las variables básicas H1,

X2, X1, así ordenadas en los renglones, calculando los coeficientes del renglón entrante que se obtienen al dividir el

renglón correspondiente a la variable saliente entre el número pivote 3; RE = RS / 3.

En el cruce de la columna de X1 con el renglón RE ya determinado debe haber un número 1, el cual es pivote. La

columna X1 debe completarse con coeficientes cero para que sea vector unitario de esta variable, que con H1 y

X2 forman la matriz de base I.

Con el nuevo renglón RE de esta tabla y los renglones señalados en las fórmulas anotadas en el lado izquierdo de la

misma, se procede al cálculo de los coeficientes faltantes mediante el procedimiento de eliminación para la solución

de ecuaciones lineales de Gauss-Jordan; anote que en la fila correspondiente a la variable básica X2, no hay necesidad

de calcular sus coeficientes porque el cero requerido para vector unitario en la columna de X1 ya existe desde la tabla

anterior, por lo que solamente se copia de la misma; resultando la tercera tabla simplex siguiente en la Figura

Figura 2-6. Tabla simplex óptima, en 3ª sol. básica factible, ejemplo MAXCAN1.

Los resultados de esta tabla simplex, muestran los coeficientes indicadores en el renglón Z, correspondientes a las

cinco variables con valor no negativo; según el criterio de optimalidad significa que ya no hay variables candidatas

para entrar a la base y así se tiene una solución óptima en el renglón Z con un valor:

que debe completarse con la lectura del programa óptimo en las filas de las variables en la base y columna solución:

Variables de decisión X1 = 2, X2 = 6, variable de holgura H1 = 2. Las variables no presentes en la base, deben valer

cero: holguras H2 = 0, H3 = 0.

107

Sustituyendo el programa obtenido en el problema con forma estándar se tiene.

Las restricciones (2) y (3), se cumplen con valor cero para las holguras H2 y H3, significa que en esos recursos no

existe sobrante. En cambio, el recurso (1) que vale 4, tiene sobrante que representa la variable básica de holgura H1 =

2.

Entonces la solución óptima se tiene en el vértice C(2,6) de la analogía gráfica, tal como se anota en la Figura 1-33 y

en el espacio ampliado de cinco dimensiones mostrado en la Figura 1-36 que se manejó en la misma. Con el método

simplex se optimiza en el punto extremo caracterizado con el vector de la siguiente solución básica factible:

En la Figura 2-7 [HIL67]se muestra el total de tablas simplex aplicado al ejemplo MAXCAN1, en forma canónica de

máximo con sólo dos variables de decisión y tres restricciones <=.

Figura 2-7. Tablas simplex del ejemplo MAXCAN1 con 3 restricciones tipo <=.

EMPATES EN LOS CRITERIOS DEL SIMPLEX.- Quizá el lector ya pensó en la posibilidad de empates al

aplicar los criterios del simplex para el cambio de base. Con el criterio de optimalidad, al elegir entre

coeficientes indicadores empatados en el mismo valor, se tiene prioridad con las variables de decisión y entre

estas, se selecciona la variable entrante a la base en forma arbitraria, pues con diferencia de más o menos iteraciones

(no es predecible), se llega a los mismos resultados. En el caso de empate al aplicar el criterio de factibilidad, se

presenta la situación de degeneración (solución básica no única), que resulta en el mismo valor para la función

objetivo en dos o más iteraciones, pudiendo llegar al caso extremo de ciclar, vea ejemplo CaVa 27, lo cual sucede en

tan pocas ocasiones, que la teoría y reglas para evitarlo, ya no se tratan. La variable artificial que se expone en los

108

párrafos siguientes, siempre se debe intentar eliminar de la base (al menos que en degeneración se anule como básica);

en cuanto al empate entre otras variables se decide arbitrariamente la variable que debe dejar la base.

Método simplex aplicado en problemas con modelo no canónico.

Si el dedicado lector ya lo pensó así, tiene razón, pues la mayoría de las programaciones lineales de los problemas no

se sujetan a la forma canónica, pero la exposición del simplex con máximo, es más fácil y también más accesible para

el conocimiento del que se inicia. Cuando el modelo de programación lineal que se desea resolver, ya sea de mínimo

o bien de máximo, tiene cualquier tipo de restricciones, que incluyan las de tipo (>=) y / o las de (=), en tal caso se

requiere la preparación del modelo utilizando una base artificial. En esta situación, se requiere aplicar alguna de las

siguientes variantes del método simplex, pues el que ya se explicó en páginas anteriores, no es suficiente.

2.5. Matriz unitaria "I" de base con variables artificiales.

Cuando el problema de programación lineal se expresa en la forma canónica de maximizar, las variables de holgura

que se suman en cada restricción de tipo <= para conseguir la igualdad de la forma estándar, proporcionan un

coeficiente (+1) que es útil para formar la matriz unitaria " I "; se cumple así con la necesidad de la primera solución

básica factible que requiere el algoritmo simplex para su inicio.

Pero muchas veces, el modelo de programación lineal no tiene forma canónica y presenta restricciones de tipo >= e

=, con las cuales no se usan variables de holgura para el propósito de conseguir la forma estándar. Al restar la superávit

-1S se convierte a ecuación la restricción tipo >=; y la restricción = ya se cumple; pero en ambos casos no se tiene la

aportación del coeficiente + 1.

Los problemas de programación lineal expresados con restricciones distintas al tipo <= necesitan un artificio

matemático para conseguir una matriz de base artificial, lo cual es posible sumando una variable artificial W i de

valor no negativo, i=1,2,..., m en cada restricción i de tipo >= e =, así se proporciona el coeficiente +1 indispensable

para la formación de la matriz unitaria I que requiere el algoritmo simplex para ponerlo en marcha.

Una variable artificial no tiene significado físico y sólo se utiliza para completar la primera solución básica que

requiere el simplex para iniciarse; pero en contraste, a través de las etapas de cálculo, debe procurarse que las

artificiales salgan pronto de la base, convirtiéndolas en no básicas, o bien que, como variables básicas valgan cero

para poder lograr la solución óptima.

A continuación se exponen las variantes del algoritmo simplex que se utilizan en el caso de la presencia de variables

artificiales en el modelo a resolver.

2.5.1. Método Simplex penal o de la M grande.

El simplex penal es una variante del método simplex aplicable en los casos en que las variables artificiales son

necesarias en el problema, ya sea de maximizar o también de minimizar. El nombre de simplex penal se explica

porque se penaliza con un coeficiente M, que representa un valor muy grande (mayor que cualquier otro coeficiente

del problema), a cada variable artificial W i que se incluya en la función objetivo del problema. Para máximo se

utiliza la penalización con signo menos (- M), por otro lado para mínimo se utiliza signo más (+ M).

Las variables artificiales se usan para la primera solución básica del simplex, pero el valor muy grande del

coeficiente M, procura su rápida salida de la base cuando el problema tiene solución factible. Aunque algún caso

degenerado puede tener una variable artificial en la base con valor cero; vea ejemplos Artbás0deg3v4r(16),

109

Artabás02f(2), Ciclodeg(27) en programa CAVA (próximo a liberarse). Por el contrario, si no es posible anular las

variables artificiales (W i >0), significa que no hay solución factible al problema; vea ejemplo Artinofac en programa

CAVA.

El siguiente Ejemplo 2-2 es un problema de PL que requiere variables artificiales para intentar resolverlo y

corresponde al Ejemplo 1-16utilizado con método gráfico, también incluidos en el programa CAVA (próximo a

liberarse):

Ejemplo 2-2. Aplica método Simplex Penal, PL en máximo con 3 tipos de restricción (FACTIRECTA).

Figura 2-8. Tablas del método simplex penal aplicado al ejemplo FACTIRECTA.

110

Solución óptima en vértice C de la analogía geométrica en (Figura 1-45): máximo Zc = 14 y el programa en última

tabla: X1 = 2, X2 = 4, H1=S2=W2=W3 = 0.

El ejemplo FACTIRECTA mostrado contiene la aplicación del método simplex penal; como ya se mencionó, hay

necesidad de utilizar variables artificiales para resolverlo. Primero se prepara el problema convirtiendo a

igualdades para forma estándar del modelo propuesto, sumando una variable de holgura H1 en la restricción (1),

después se resta una variable S2 de superávit en la (2), la restricción (3) es de tipo = por lo que se deja como está;

se condiciona toda variable X j >= 0 y con la función objetivo original ya se tiene este modelo como estándar. Pero

así no se completa la matriz cuadrada unitaria I que debe ser de orden m = 3 restricciones, pues sólo se tiene el vector

unitario de la variable de holgura H1 que sí aporta el coeficiente +1, faltando dos vectores unitarios. Aquí surge la

necesidad de utilizar el artificio matemático ya referido. En las restricciones (2) y (3) que son de >= e =; se suman

variables artificiales W2 y W3, aportando cada una de ellas el necesario coeficiente+1, con lo que se completa la

matriz I mostrada antes de la tabla simplex, quedando el modelo que se presenta con base artificial. Esta variante del

simplex, incluye a las variables artificiales en la función objetivo, pero penalizadas con un coeficiente M, que

representa un valor mayor que cualquier otro coeficiente presente en el modelo; para este ejemplo se le asigna -M

como coeficiente a las variables artificiales W2 y W3, cumpliendo así con la penalización de la función objetivo la

cual se arregla al formato de las restricciones, restando el lado derecho a la variable Z, consiguiendo el término

independiente cero en el lado derecho.

En segundo lugar debe prepararse la tabla simplex con la primera solución básica "factible", la que se consigue

con las variables artificiales W2 y W3, procurando su pronta anulación con los cambios de la base. Se inicia con los

renglones y columnas y los encabezados necesarios para copiar ordenadamente los coeficientes del modelo, tal como

se presentan en la forma con base artificial y la función Z arreglada con término independiente; los lugares vacíos se

llenan con cero. Aquí anote que la matriz I, no necesariamente se forma con sus vectores unitarios colocados juntos

escalonadamente; pueden quedar intercalados vectores unitarios (por las variables de holgura y/o artificiales) o no

unitarios (por las de superávit); en este ejemplo, hay una intercalación de la variable S2 de superávit, lo cual se podría

haber evitado permutando las primeras dos restricciones. En todos los casos se puede buscar arreglar las

restricciones en el orden que convenga para facilitar el análisis posterior de la solución tabular. Las variables

básicas deben colocarse en la columna izquierda ordenadas de tal manera, que coincidan en su renglón con el

coeficiente +1 del vector unitario, en la columna correspondiente a la misma variable.

En párrafos anteriores se menciona, que toda variable básica debe tener coeficiente indicador cero en el renglón Z;

esto significa que tal variable ya no puede aportar alguna cantidad al valor de la función objetivo; pero las variables

artificiales W2 y W3 tienen un coeficiente M en dicho renglón; lo cual impide que se tenga una solución básica

"factible" en esta tabla, por lo que se procede a conseguir los coeficientes cero faltantes en el renglón Z para las

variables artificiales. Esto se logra mediante operaciones fila elementales usadas en el proceso de Gauss-Jordan, lo

que se muestra en las fórmulas en el lado izquierdo de la tabla: Para calcular el cero en W2, se multiplica el renglón

W2 por el número -M (inverso aditivo de M) y se suma el renglón Z, o sea (RW2) (-M) + RZ = Z', se tiene así cero en

la posición de Z' con W2. Luego se multiplica el renglón W3 por el número -M y se suma el renglón Z', o sea (RW3)

(-M) + RZ' = Z'', se determinan así los coeficientes cero necesarios para que las variables W2 y W3 sean básicas. Ahora

sí en esta segunda tabla, se tiene la primera solución básica indispensable para que el algoritmo se inicie con la

aplicación de los criterios del simplex.

En tercer lugar, ya determinada la solución de arranque, se aplican los criterios del simplex empezando con el de

optimalidad y considerando que el objetivo es máximo, la observación de los indicadores del renglón Z, en esta

segunda tabla del Ejemplo 2-2, existe sólo un coeficiente negativo en la variable no básica de decisión X1, por lo cual

se declara variable entrante a la base . La aplicación de la factibilidad resulta al obtener el mínimo cociente, de

dividir los valores actuales de las variables básicas situados en la columna solución a la derecha de la tabla, entre los

111

coeficientes en el mismo renglón i con la columna correspondiente a la variable VE. Así: mínimo (6/1, 0/2, 2/1) = 0,

que coincide en el renglón de la variable artificial W2 que se declara variable saliente . En el cruce de la columna

X1 y el renglón W2 , se localiza el coeficiente 2 como pivote P para calcular con Gauss-Jordan la

siguiente tabla simplex (tercera) con la nueva solución básica que debe tener a H1, X1 (sustituye a W2) y W3, como

base. Se recomienda al estudiante cuidar la colocación de las variables en la base, conservando el mismo orden que

le corresponde de tabla a tabla, excepto para la nueva VE que ocupa el lugar de la VS.

En la tercera tabla simplex del ejemplo FACTIRECTA, se repite la aplicación del criterio de optimalidad

seleccionando entre (-1/2 M - 7/2) y (-1/2 M - 3/2), el coeficiente más negativo (o lo equivalente el de mayor valor

absoluto) para el objetivo de máximo, entonces se declara a la variable no básica X2 como a la base. Para la

factibilidad, vea que el renglón de la variable básica X1 queda descartado debido a que 0 / -1/2 no es válido, en cambio

con las otras dos variables en la base se tiene: Mínimo (6 / 3/2, 2 / 1/2) = 4, existe empate que debe romperse teniendo

en cuenta, la necesidad de procurar una rápida salida de la base de las variables artificiales, en tal caso se puede elegir

a la que ahora, es indeseable variable básica W3 como . En el cruce de columna X2 como VE y renglón W3 como

VS, se localiza el coeficiente pivote 1/2 con el que se inicia el cálculo de la siguiente tabla (cuarta) simplex de este

problema ejemplo.

La cuarta tabla simplex comienza por ordenar las tres variables básicas H1, X1 y la nueva X2 que sustituye a

la W3, se continúa con el cálculo de coeficientes del renglón RE = RS / P = RS / 1/2 resultando el

coeficiente +1 en la posición de pivote, necesario para determinar con el Gauss-Jordan el resto de la tabla, que muestra

en el lado izquierdo, las fórmulas empleadas de este método.

Esta última tabla tiene en el renglón Z, coeficientes indicadores para las variables de valor no negativo, lo cual

significa una solución óptima pues, además, todas las variables artificiales ya salieron de la base.

En la analogía geométrica de la Figura 1-45se muestra el segmento de recta BC como conjunto factible y su punto

extremo el vértice C (2,4) con el máximo valor de la función Z; pero para el espacio ampliado que maneja la solución

analítica del simplex, el punto extremo que optimiza tiene el programa:

Ejemplo 2-3. Aplica método Simplex Penal, PL en mínimo con 3 tipos de restricción (MINPEN).

Se presenta este nuevo ejemplo de método simplex penal con la solución de las siguientes tablas, se deja como

ejercicio al estudiante: construir las fórmulas para el cálculo de los coeficientes de cada renglón de la tabla con el

procedimiento de Gauss-Jordan; la solución que incluya la interpretación geométrica en un plano de las restricciones

e identificarlas, el conjunto de puntos factibles del sistema, las coordenadas de los vértices, sus características y el

valor de la función objetivo.

112

113

Figura 2-9. Tablas del método simplex penal del ejemplo MINPEN.

Ejemplo 2-4. Aplica método Simplex Penal, PL en máximo con una variable libre (MAXPENLI).

114

En la sección correspondiente a formas equivalentes del modelo de programación lineal se trató el manejo algebraico

de una variable libre, haciendo que la misma se iguale a la diferencia de dos variables no negativas: X1 = X'1 - X''1;

X'1 >= 0, X''1 >= 0.

115

Figura 2-10. Tablas del simplex penal del ejemplo MAXPENLI.

La última tabla simplex penal es óptima, pues los indicadores para las variables en renglón Z, no tienen signo negativo,

así se identifica el vértice que maximiza:

(X’1, X''1, X2, H1, S2, S3, W2, W3) = (3, 0, 6, 0, 6, 0, 0, 0), Z máximo = 33.

La variable X''1 = 0 porque es no básica; pero X'1 = 3 > 0 = X''1, entonces se asegura un valor positivo para la original

X1 = X'1 - X''1 = 3 - 0 = 3.

Si desea, intente el cambio a objetivo mínimo del mismo ejemplo MAXPENLI, y compruebe que la solución

simplex, aún para toda Xj libre, sólo considera puntos vértice del 1er. cuadrante, limitándose a toda X j >= 0.

2.5.2. Método Simplex de dos fases.

Este es otra variante del simplex que se aplica para resolver modelos de PL que requieren una matriz unitaria de base

artificial para poder iniciar el algoritmo. El nombre indica que consiste de dos fases: En la 1ª, se reducen las artificiales

Wi a cero y en tal caso se optimiza en la 2ª, o bien, se concluye que no hay solución factible para el problema porque

Wi es diferente de cero en fase 1, y por lo tanto no es necesaria la fase2.

Primera fase.- En este método siempre se minimiza una función objetivo constituido por la suma de las variables

artificiales utilizadas para completar la matriz I:

116

Las variables artificiales son útiles para formar la primera base del simplex, pero si se logra que toda Wi=0,

entonces Z=0 representa lo deseable u óptimo, pues lo contrario significa un problema que no tiene solución factible,

en tal caso no aplica la segunda fase. Si todo va bien, las variables artificiales Wi deben salir de la base, excepto en

algún caso degenerado en que Wi=cero, es básica, vea en el programa CaVa (próximo a liberarse) los ejemplos

Artbás0deg3v4r (16), Artabás02f (2), Ciclodeg (27). La solución óptima de fase 1 se identifica, con variables

artificiales cero que implica Z=0 para la función.

Segunda fase.- Se continúa con ésta sólo si ocurre la optimización del problema en la fase anterior. Para ello sirve la

tabla simplex óptima de la primera, que se ajusta eliminando las columnas de las variables artificiales Wi; además, el

renglón Z se cambia a los coeficientes de la función Z original. El procedimiento continúa con el arreglo de la tabla

simplex inicial para cumplir los requisitos necesarios de una solución básica factible; es decir, coeficientes cero para

las variables básicas en el renglón Z de la tabla. A veces esto es suficiente para lograr el óptimo del problema; si no

es así, se aplican los criterios del simplex para el objetivo original del problema. En resumen, la fase1 intenta lograr

un punto extremo factible; la fase 2, el punto extremo óptimo:

Ejemplo 2-5. Aplica método Simplex Dos Fases, PL máximo y mínimo, 3 tipos de restricción (MAXMIN2F1).

En este ejemplo se aprovecha la circunstancia de que en el método simplex de dos fases, la primera fase es igual con

ambos objetivos; por lo tanto, sólo para mayor conocimiento, la tabla óptima de la 2a fase que contiene el valor

máximo de la función, se utiliza para obtener el mínimo. Con el objetivo de máximo en este ejemplo, se esperan los

mismos resultados del primer ejemplo FACTIRECTA) de simplex penal pues se trata el problema otra vez, con el

propósito de que el estudiante tenga la misma referencia de comparación del penal y el de 2 fases.

117

Figura 2-11. Tablas simplex 1a y 2a fase del ejemplo MAXMIN2F1.

Este ejemplo MAXMIN2F de aplicación del método simplex de dos fases, empieza el proceso de resolución

convirtiendo el modelo original propuesto a su forma estándar y luego para conseguir una base artificial, al igual que

se explicó para el ejemplo FACTIRECTA del simplex penal, se obtiene la misma base artificial; pero la diferencia

empieza al tratar las variables artificiales como sigue:

118

Primera fase.- Se construye una función objetivo Z con la suma de las variables artificiales y se arregla al formato

de restricción, tal como se muestra antes de las tablas de la primera fase. Se construye la tabla a partir de las variables

básicas: la holgura H1 y las artificiales W2 y W3, ordenadas de arriba hacia abajo en la base; el renglón Z, se llena

conforme a los coeficientes de la ecuación Z - W2 - W3 = 0, escribiendo ceros en los espacios vacíos de las variables

Xj, las holguras Hi y las superávit Si; en el mismo renglón Z se ubican los coeficientes -1, característico de las variables

artificiales con el método de dos fases. El resto de los coeficientes de esta primera tabla, corresponde a la forma

estándar ya obtenida. Anote la diferencia respecto al simplex penal: los coeficientes M de las variables artificiales en

renglón Z no se usan, pero sí coeficientes -1 en la primera fase; además, las artificiales deben aportar el vector

columna unitario para la base I; aunque no cumplen para variable básica, pues el -1 en el renglón Z debe anularse para

el inicio. Con este propósito se hacen operaciones fila de Gauss-Jordan para conseguir ceros que sustituyan los

coeficientes mencionados. En el lado izquierdo de la primera tabla se escriben las fórmulas que se usan para el cálculo

de los renglones Z' y Z''; en el último se pueden ver los ceros sustituyendo los -1. Con el cálculo del renglón Z'' se

completa la primera solución básica de esta primera fase y se procede a la aplicación de los criterios del simplex

con el objetivo de mínimo; para optimalidad, se observa que X1 es la única variable no básica con coeficiente + en

el renglón Z, (recuerde que con objetivo de mínimo, debe elegirse para VE la que tenga el coeficiente más positivo),

entonces se declara a X1 como VE a la base. En factibilidad, según los cocientes a la derecha de la tabla, se identifica

a la variable artificial W2 como saliente (VS) de la base, le toca actuar como pivote al coeficiente 2 colocado en el

cruce de la columna X1 y el renglón W2, recién elegidos con los dos criterios. Entonces se procede al cambio de base

calculando la segunda tabla de la primera fase, empezando por establecer a las variables básicas: H1 que se mantiene

dentro, la nueva X1 que se hace básica, sustituye a W2 que se convierte en no básica, W3 que también permanece en

la base. Se comienza el cálculo de la segunda tabla con el renglón RE que se fija como pivote para calcular el resto

de los coeficientes mediante operaciones fila elementales de Gauss-Jordan; en el lado izquierdo de la tabla se anotan,

como guía de cálculo, las fórmulas para cada fila.

Los coeficientes indicadores en la fila Z, muestran todavía números positivos para las variables no básicas X2 y S2, lo

cual significa que son candidatas para entrar a la base y la necesidad de continuar la aplicación del algoritmo; además,

aún existe una variable artificial dentro de la base. Los coeficientes de X2 y S2 están empatados con valor de 1/2, de

acuerdo a la recomendación dada antes, de preferir como entrante variables de decisión, así X2 = VE. Aplicando la

factibilidad, también se tiene un empate en los cocientes que se presentan a la derecha de la tabla; aquí se elige a la

variable W3 como saliente VS, pues ya se mencionó en párrafo anterior, la procuración del método para que las

artificiales salgan lo más pronto posible de la base. Con la definición del pivote 1/2 y las fórmulas a la izquierda, se

tiene lo suficiente para calcular la siguiente solución en la última tabla de la primera fase la cual muestra el valor cero

en la columna solución, esto significa, que al sacar todas las variables artificiales de la base se anulan y con ello Z =

0. El resultado confirma que el problema sí tiene solución factible y procede la segunda fase.

Segunda fase.- La última tabla de la primera fase sirve para iniciar la primera tabla simplex de la segunda fase, pero se

eliminan las columnas de las variables artificiales W2 y W3; también se eliminan los coeficientes del renglón Z y se

sustituyen con los coeficientes de la función objetivo original:

La primera tabla muestra el arreglo de coeficientes mencionado, pero se observa que las variables básicas H1, X1, X2,

así ordenadas en la columna base, cumplen el requisito de tener su vector columna unitario para formar la base I, pero

no cumplen con el coeficiente cero en el renglón Z para una básica, porque se acaban de escribir los coeficientes de

la ecuación original. Con el propósito de corregir el planteamiento tabular de esta primera tabla se hacen las

operaciones fila necesarias, las que se definen según las fórmulas construidas a la izquierda de la segunda tabla de

esta fase, resultando un renglón Z' para conseguir el coeficiente cero en la variable X1 y un renglón Z'' para conseguir

el cero en la variable X2. Como este renglón Z'' muestra coeficientes indicadores no negativos, el criterio de

119

optimalidad para máximo que es el objetivo original, ya no se puede aplicar para elegir variable entrante, los

indicadores cero para las variables de decisión X1 y X2, significan que tales variables ya no pueden aportar más al

valor de Z. En consecuencia, sin necesidad de aplicar los criterios del simplex en esta segunda fase, ya se tiene la

solución óptima en el punto extremo:

Este Ejemplo 2-5 ya conocido, con el Ejemplo 2-2 del simplex penal y también con el Ejemplo 1-16 de método

gráfico, se puede aprovechar para comprobar el potencial del método de dos fases, pues la tabla óptima de la segunda

fase mostrando la solución de máximo, también sirve para el cálculo de la solución mínima. Los indicadores del

renglón Z sólo tienen coeficientes cero y uno positivo (2), éste último coeficiente muestra que es candidata a entrar a

la base, la variable no básica S2 que se declara VE; con el criterio de factibilidad resulta que debe salir de la base la

variable X2, que se define VS; con el coeficiente pivote 1 se procede al cálculo de la solución de la última tabla que

muestra la solución óptima mínima para el mismo problema con el punto extremo:

que coincide en el vértice B (2, 0) de la analogía geométrica de la Figura 1-45.

Ejemplo 2-6. Aplica método Simplex Dos Fases, PL mínimo y máximo, 3 tipos de restricción (MINMAX2F).

Se presenta este nuevo ejemplo con el método simplex de dos fases y la solución contenida en las tablas. Se deja como

ejercicio al estudiante: construir las fórmulas para el cálculo de los coeficientes de cada renglón de la tabla con el

procedimiento de Gauss-Jordan; la solución que incluya la interpretación geométrica en un plano de las restricciones

e identificarlas, el conjunto de puntos factibles del sistema, las coordenadas de los vértices, sus características y la

evaluación de la función objetivo.

120

121

Figura 2-12. Tablas simplex de la 1ª y 2ª fase para mínimo del ejemplo MINMAX2F.

En el renglón Z de la última tabla simplex de la segunda fase, ya no hay coeficientes indicadores positivos para el

objetivo de mínimo, por lo tanto la solución óptima es:

Z mínimo = 9, X1 = 1, X2 = 3, H1 = 2, H4 = 8

122

Como ya se mencionó, el método simplex de dos fases se presta para la obtención de los objetivos mínimo y máximo

( esto debe tomarse sólo en sentido teórico con fines de enseñanza, pues para la mayoría de los problemas reales, sería

absurdo y conflictivo). Con tal propósito, en la misma tabla óptima de solución mínima, se aplican los criterios para

el cambio de base hacia una solución máxima como se aprecia en la tabla de la Figura:

Figura 2-13. Tabla simplex de la 2ª fase para máximo del ejemplo MINMAX2F.

Ejemplo 2-7. Aplica método Simplex Dos Fases, PL mínimo y máximo (MAXMIN2F2).

Figura 2-14. Tabla simplex inicial para 1a fase del ejemplo MAXMIN2F2.

123

Para el lector que así lo prefiera, se presenta ahora la aplicación del simplex dos fases mostrando en tablas separadas

el progreso del cálculo. Como las variables W2 y W3 son básicas, es necesario calcularles el coeficiente de valor cero

en el renglón Z con las operaciones fila: RW2 (1)+RZ; RW3 (1)+RZ.

Figura 2-15. Tablas simplex de 1a fase del ejemplo MAXMIN2F2.

2ª fase.- En la tabla óptima de primera fase se eliminan las columnas W2 y W3; el renglón Z se sustituye con los

coeficientes de la función objetivo original. La base contiene a X1 y X2, pero sus coeficientes indicadores Z1-C1=-3 y

Z2-C2=-2 en el nuevo renglón Z deben calcularse para el valor cero.

Figura 2-16. Simplex inicial 2a fase, eliminar columna Wi sustituir coeficientes en fila Z en ejemplo

MAXMIN2F2.

124

Se procede con operaciones fila para conseguir que los coeficientes de X1 y X2 en el renglón Z se anulen: Z'=RX1

(3)+RZ; Z''= RX2 (2)+ RZ'; resulta la tabla siguiente con el coeficiente indicador negativo (-7) en S3 de Z. En 2ª fase

es aplicable el objetivo original de máximo, por lo que S3 debe ir a la base (VE) para sustituir a H1 (VS), la única

variable básica que puede dejar su lugar.

Figura 2-17. Tablas Simplex 2a fase del ejemplo MAXMIN2F2.

Se aprovecha la oportunidad con la flexibilidad del simplex de dos fases, para determinar también la solución

mínima del mismo problema.

Entonces con el objetivo de mínimo, se declara VE a la base, la variable no básica H1 y la básica S3 sale, para dejarle

ese lugar.

125

Figura 2-18. Tabla simplex óptima de 2ª fase, para mínimo, ejemplo MAXMIN2F2.

2.6. Casos especiales en la tabla Simplex.

Se pueden identificar los siguientes casos especiales en la tabla simplex.

2.6.1. Solución degenerada

Se identifica en la tabla simplex porque al menos una variable básica tiene valor cero en la columna de solución. Este

caso se presenta cuando se valora una solución básica no única, la cual se tiene con al menos una variable básica de

valor cero en el sistema de m restricciones, alguna de ellas debe ser restricción redundante que contiene sólo un punto

vértice del conjunto factible. Ejemplos de caso degenerado, sea tabla óptima o no, son: 2, 16, 27, Ejemplo 1-

14, Ejemplo 2-2, Ejemplo 2-3, Ejemplo 2-5, Ejemplo 2-7 y algo más en el programa CAVA (próximo a liberarse).

Enseguida otro PL con degeneración transitoria en tabla intermedia.

Ejemplo 2-8. Caso de solución degenerada transitoria en tabla Simplex y su gráfico (MAXDETRA).

126

Figura 2-19. Gráfico solución degenerada en vértice F (2, 0) no único, ejemplo MAXDETRA.

Figura 2-20. Tablas simplex que muestran el caso especial solución degenerada transitoria del ejemplo

MAXDETRA.

2.6.2. Solución no acotada.

Se identifica en la tabla simplex porque en la columna de la variable entrante (VE), sólo hay coeficientes no

positivos lo cual hace imposible la aplicación del criterio de factibilidad para la variable saliente de la base. El caso

127

especial no acotado es porque el conjunto factible de soluciones abierto, las variables pueden crecer sin

límite (problema de máximo).

Ejemplo 2-9. Caso de solución no acotada en tabla Simplex y su gráfico (MAXAB).

Figura 2-21. Tablas Simplex ejemplo MAXAB.

Solución no acotada, no hay valor positivo en columna variable entrante VE.

Las tablas simplex valoran los vértices O, A, C, de la analogía geométrica siguiente:

Figura 2-22. Gráfico solución no acotada del ejemplo MAXAB.

128

Ejemplo 2-10. Caso de solución óptima con espacio factible abierto, en Simplex y en gráfico (MAXABOP).

con el PL de:

Figura 2-23. Solución óptima simplex en un espacio no acotado, ejemplo MAXABOP.

129

Figura 2-24. Espacio factible abierto, con solución óptima, ejemplo MAXABOP.

2.6.3. Soluciones óptimas alternas o múltiples.

Se identifican en la tabla simplex porque alguna(s) variable(s) no básica(s) presenta(n) el valor cero como

coeficiente en el renglón Z de la tabla. Esto se debe a que la función objetivo es paralela a una de las restricciones que

limitan el conjunto de soluciones factibles. En tal caso, se pueden calcular las soluciones óptimas alternas, metiendo

a la base, la variable no básica, con cero de coeficiente en el renglón Z de la tabla; también se pueden obtener múltiples

soluciones óptimas, calculando puntos P como combinación convexa lineal de dos de las soluciones básicas que

optimizan con el simplex:

Ejemplo 2-11. Caso de soluciones óptimas alternas y múltiples (MAXOPAL).

130

Figura 2-25. Soluciones óptimas alternas simplex en ejemplo MAXOPAL.

131

Figura 2-26. Soluciones óptimas alternas en segmento AC del conjunto factible, ejemplo MAXOPAL.

Se puede ciclar con cambios de base entre estas dos soluciones óptimas alternas.

También múltiples puntos P contenidos en el segmento recto AC, optimizan la función Z. Por ejemplo: Obtenga un

punto P que sea combinación convexa lineal (CCL) entre los puntos A (0, 3) y C (7/3, 7/3). Después calcule Z en ese

punto P.

132

2.6.4. Problema sin solución factible.

Se identifica en la tabla simplex porque al menos una variable artificial no es posible anularla o sacarla de la base a

través de las iteraciones de cálculo. Este caso se presenta si no hay espacio factible de soluciones para el sistema dado.

Ejemplo 2-12. Caso sin solución factible (MAXNOFAC).

133

Figura 2-27. Gráfico problema sin solución factible en ejemplo MAXNOFAC.

Para resolver con simplex se pasa a forma estándar:

134

Figura 2-28. Tablas simplex, variable artificial W2 en base que no se anula en el ejemplo MAXNOFAC.

El renglón Z no tiene coeficientes negativos para elegir variable de entrada a la base y hacer el cambio en ella, así la

artificial W2=4 permanece básica. El simplex valora el vértice A (0, 2), pero no hay región factible en el sistema de

restricciones

2.7. Teoría de la dualidad.

El desarrollo de esta teoría de la dualidad es debido al interés que existe en la interpretación económica del problema

que se estudia. Se inicia bajo la consideración de que todo problema de programación lineal tiene un problema

asociado; llamándose problema primal al conocido y problema dual al asociado. Ambos problemas están muy

relacionados, de tal manera que la solución óptima de cualquiera de ellos proporciona la solución óptima del otro.

El problema dual de cualquier problema primal se puede obtener con manejo algebraico, convirtiendo primero a las

formas canónicas ya conocidas y después a la correspondiente al dual, o bien en forma directa, a partir de reglas de

conversión al dual.

2.7.1. Problema dual obtenido en la forma canónica.

Figura 2-29. Formas canónicas primal y dual.

En donde:

C: es un vector renglón de coeficientes de la función objetivo primal.

b: es un vector columna de términos independientes de restricciones del primal.

A: es una matriz de coeficientes tecnológicos de restricciones del primal.

X: es un vector columna de variables del primal.

T: es la transpuesta del vector o matriz.

Y: es un vector columna de variables duales.

Con excepción de X e Y, los vectores y matrices en ambos problemas son los mismos, pero debe cuidarse el orden

del arreglo vectorial atendiendo la transposición T indicada. El siguiente ejemplo primal en forma canónica de

máximo, se maneja matricialmente para obtener el problema dual, que debe coincidir con la forma canónica dada

para el dual.

135

Al revisar las formas canónicas se observa: El producto bT Y requiere vectores conformables, así a cada restricción

primal corresponde una variable dual. Por lo mismo, debido a CX, a cada variable primal le corresponde una

restricción dual.

Ejemplo 2-13. Dual asociado a un PL primal en forma canónica de máximo (MAXCAN1).

Para el dual, los coeficientes del ejemplo se arreglan en sus vectores como sigue:

Ejemplo 2-14. Dual asociado a un PL primal en forma canónica de mínimo (MINCAN1).

136

Ejemplo 2-15. Dual asociado a un PL primal que no tiene forma canónica (MINDULI).

Primero se convierte algebraicamente a la forma canónica el problema primal.

137

138

2.7.2. Problema dual directo.

El problema dual también se puede obtener directamente sin necesidad de recurrir a las formas canónicas, las cuales

son muy útiles para aprender el orden matricial en la conversión del primal al dual.

Figura 2-30. Tabla con reglas de correspondencia para obtener el dual directo del primal.

Las características del problema primal se identifican según el objetivo máximo o mínimo, en columna

izquierda o derecha respectivamente, de la tabla; las características del problema dual se leen en la otra

columna.

Ejemplo 2-16. Dual directo de un problema primal no canónico de objetivo mínimo (MINDULI2).

El primal del Ejemplo 2-16 es de mínimo, entonces se coloca en columna derecha para identificar la condición de sus

variables y también el tipo de restricciones. En el mismo renglón, pero en la otra columna, lea lo que corresponde

al dual.

Dual Directo

139

Ejemplo 2-17. Dual forma canónica y directo de un PL primal no canónico (MAXDULI).

140

141

2.7.3. Significado de las variables duales.

La interpretación económica del problema en estudio, es posible a partir de la conversión del problema primal a su

correspondiente dual asociado, con el análisis de las unidades dimensionales del primero. Esta interpretación no es

única y es según el interés de quien lo estudia. Considere el Ejemplo 1-8 de producción de fertilizantes visto en

formulación de modelos de este curso.

Ejemplo 2-18. Significado de las variables duales en ejemplo FERTILIZ

Primera parte.- Definición de variables:

Segunda parte.- Función objetivo o económica:

Tercera parte.- Sujeta a las restricciones:

Cuarta parte.- Condiciones de signo para variables:

Problema dual.

142

Primera parte.- Definición de variables duales.

Segunda parte.- Función económica

Tercera parte.- Sujeta a las restricciones:

Cuarta parte.- Condiciones de signo:

La función objetivo dual significa la cantidad mínima de dinero que se debe recuperar de la materia prima, en

caso de tener que parar la producción de fertilizantes; cada término de dicha función representa la

contribución de los componentes N, P, K, en la venta total. Cada término de las restricciones duales significa

la contribución ($) de los componentes químicos i, a la utilidad de una tonelada de fertilizante j.

Los componentes químicos tienen valor para la empresa debido a que representan la oportunidad de tener utilidad.

Para conseguirlo debe buscar la combinación más redituable de manera que el valor marginal de unidades adicionales

de recurso sea mínimo.

Por esto, también se puede interpretar la función objetivo dual, como representación del valor mínimo de los recursos

N, P, K, utilizados en la producción de fertilizante. En cuanto a las restricciones, cada una de ellas se relaciona con

la utilidad del fertilizante j (j = 1,2) en unidades monetarias $ / tonelada de i (i = N, P, K). La desigualdad >= utilidad

$ / tonelada de fertilizante j, verifica que el valor de recursos consumidos en una tonelada de j, sea por lo menos igual

a la utilidad del mismo.

2.7.4. Propiedades primal-dual.

Dualidad débil.- En el problema de PL, cualquier par X e Y de soluciones factibles primal-dual, cumple que:

Dualidad fuerte.- Al resolver el problema de PL en cada iteración del simplex se tiene un par específico de soluciones

en ambos problemas primal-dual, de modo que, la del primal es factible pero la del dual es no factible, con

excepción de la última iteración, en la que la solución óptima primal X* y la solución óptima dual Y* resulta en:

Si X no es óptima en el problema primal, entonces Y no es factible en el dual.

Soluciones complementarias.- Al resolver un problema de PL, en cada iteración del simplex se identifica, una

solución básica factible primal X y una solución complementaria Y para el dual, conocida como "Variables Duales"

143

o "Precios Sombra" o "Multiplicadores del Simplex", ubicada en renglón Z de la tabla como coeficientes de las

variables que forman la primera solución básica, (holguras y / o artificiales).

Soluciones complementarias óptimas.- Con la solución óptima, al final del simplex se tiene, la solución primal X* y

una óptima complementaria dual Y*, en el renglón Z, como coeficientes de las variables de holgura y/o artificiales

que forman la primera solución básica, ("Precios Sombra" o "Variables Duales" o "Multiplicadores del

Simplex").

Propiedad de simetría.- La denominación de primal es para el primer problema, pues el dual de un problema dual

debe resultar en el mismo primal por las relaciones simétricas entre ellos. El estudiante puede comprobar esta y otras

propiedades analizando las tablas del simplex aplicado al Ejemplo 2-1 como primal y luego a su problema dual.

Ejemplo 2-19. Aplica propiedades primal-dual al problema MAXCAN1.

Las tablas de la Figura 2-31siguiente son para aclarar las propiedades primal-dual ya expuestas, vea tablas simplex

del Ejemplo 2-1 (Figura 2-7). En la segunda tabla simplex, X =(X1, X2)T =(0, 6)T, es factible en el primal con

Z=CX=(3,5)(0,6)T=30; pero la solución dual dada por los precios sombra: Y = (0, 5/2, 0) viola la restricción Y1 +

3Y3 >=3; 1(0)+3(0) >= 3, por lo tanto, no es factible, (vea la propiedad de soluciones complementarias). En cambio,

en la tercera tabla simplex del mismo ejemplo, se tiene X*=(X1,X2)T=(2, 6)T, es factible y óptimo en primal

conZ=CX=(3,5)(2,6)T= 36; además, la solución complementaria en Z, los precios sombra Y*=(Y1,Y2,Y3)=(0,3/2,1)

verifican las restricciones duales: Y1+3Y3 =1(0)+3(1) >=3, 2Y2+2Y3 =2(3/2)+2(1) >=5, por lo tanto el dual es factible

y óptimo.

144

Figura 2-31. Simplex muestra factibilidad primal e infactibilidad dual en MAXCAN1.

Ahora se resuelve el problema dual correspondiente al primal ejemplo MAXCAN1:

El dual del primal es:

145

Figura 2-32. Aplica método simplex-penal al problema dual, ejemplo MAXCAN1.

El simplex en ambos problemas primal y dual, contiene dos programas: por un lado el primal X* y su

complementario dual Y*; por otro lado, en forma relativa, el dual Y* y el complementario primal X*. Esto se aclara

en resumen tabular:

Figura 2-33. Resumen tabular en ejemplo MAXCAN1.

Nota: El coeficiente M con su signo, debe ignorarse porque es artificial.

Definición de precios sombra: Es el incremento (decremento) del valor de la función objetivo, debido al incremento

(decremento) unitario del i - ésimo recurso.

Esta definición también es orientadora para la decisión de cuál recurso conviene aumentar o disminuir cuando se

presenta esta clase de problema, el cual se amplía en el próximo tema de análisis de sensibilidad.

Indicadores del simplex.- En el renglón Z de las tablas simplex del Ejemplo 2-19, se tiene la solución completa del

otro problema, pues además del valor de las variables duales (precios sombra) Y1, Y2, Y3, en uno y X1 y X2 en el otro,

se tienen los coeficientes Zj - Cj que representan los valores de las variables de superávit para las restricciones

funcionales del problema dual.

TEOREMA DE LA HOLGURA COMPLEMENTARIA.- En cualquier solución óptima, si alguna restricción se

cumple en desigualdad, entonces la variable dual asociada es cero. Si una variable dual de cualquier problema es

146

diferente de cero, la restricción dual asociada se cumple estrictamente con (=). En el Ejemplo 2-19, la restricción 1

primal se cumple en desigualdad, pues tiene Y1=0; pero las restricciones 2 y 3, se cumplen en igualdad y, por

tanto, Y2 = 3/2 y Y3 = 1.

Ejemplo 2-20. Interpretación geométrica del TEOREMA DE DUALIDAD. Solución óptima (MAXTEDU1).

Teorema de dualidad.- a) Si el problema primal tiene solución factible acotada y por lo tanto óptima, entonces

el problema dual tiene solución óptima, de valor igual al primal, si ésta no es degenerada. (Dualidad débil,

fuerte y complementaria).

Figura 2-34. Gráfico del problema primal del ejemplo MAXTEDU1.

147

Figura 2-35. Gráfico del problema dual del ejemplo MAXTEDU1.

Ejemplo 2-21. Interpretación geométrica del TEOREMA DE DUALIDAD. Solución factible no acotada

(MAXTEDU2).

Teorema de dualidad.- b) Si el problema primal tiene solución factible no acotada (no hay solución óptima),

entonces el problema dual no tiene solución factible.

Figura 2-36. Teorema de dualidad. Solución factible no acotada, problema primal del ejemplo MAXTEDU2.

Figura 2-37. Teorema de dualidad. Solución no factible, problema dual del ejemplo MAXTEDU2.

148

Ejemplo 2-22. Interpretación geométrica del TEOREMA DE DUALIDAD. Sin solución factible

(MAXMINTEDU).

Teorema de dualidad.- c) Si el problema primal no tiene solución factible, entonces el problema dual no es

factible, o bien, c') la función objetivo no está acotada.

Figura 2-38. Teorema de dualidad. No hay solución factible problema primal para máximo, ejemplo

MAXMINTEDU.

Figura 2-39. Teorema de dualidad. No hay solución factible problema dual para mínimo, ejemplo

MAXMINTEDU.

149

Figura 2-40. Teorema de dualidad. No hay solución factible problema primal para mínimo, ejemplo

MAXMINTEDU.

Figura 2-41. Teorema de dualidad. Solución no acotada del problema dual para máximo, ejemplo

MAXMINTEDU.

2.8. Ejercicios, actividades de aprendizaje y autoevaluaciones correspondientes al capítulo

En las siguientes subsecciones encontrará una serie de ejercicios que ayudarán a la total comprensión de los temas

tratados en el presente capítulo. Asimismo, los ejercicios marcados con *AUTOEVAL* son de auto evaluación, el

peso de los incisos correspondientes a cada uno de ellos podrán ser consultados en la sección de respuestas. Se sugiere

150

resolverlos, y una vez terminados, revisar su solución y calcular la calificación correspondiente y así evaluar el

entendimiento del mismo.

Se recomienda aplicar los ejercicios aquí planteados a casos prácticos de la vida diaria como parte de las actividades

de aprendizaje del presente material.

B.2. Capítulo 2.

Resolución de los ejercicios del capítulo 2

2.8.1. Formas canónicas y estándar *AUTOEVAL*.

Obtenga las formas canónica y estándar del modelo de PL:

B.2.1. Formas canónicas y estándar.

11 expresiones-acierto en modelo (1/4 de punto c/u).

151

2.8.2. Método simplex a un modelo canónico de PL *AUTOEVAL*.

Resuelva con el método simplex el siguiente modelo de PL:

B.2.2. Método simplex a un modelo canónico de PL.

3 tablas-acierto (1 punto c/u).

152

2.8.3. Método simplex a un modelo canónico de PL.

Resuelva con el método simplex el siguiente modelo de PL:

Respuesta al ejercicio

B.2.3. Método simplex a un modelo canónico de PL.

2.8.4. Método simplex penal (2 fases) a un modelo no canónico de PL.

Resuelva con variantes del método simplex el modelo de PL:

B.2.4. Método simplex penal (2 fases) a un modelo no canónico de PL.

2.8.5. Método simplex penal (2 fases) a un modelo no canónico de PL.

Resuelva con variantes del método simplex el modelo de PL:

153

B.2.5. Método simplex penal (2 fases) a un modelo no canónico de PL.

2.8.6. Método simplex penal (2 fases) a un modelo no canónico de PL *AUTOEVAL*.

Resuelva con variantes del método simplex el modelo de PL:

Respuesta al ejercicio

155

2.8.7. Método simplex penal (2 fases) a un modelo no canónico de PL.

Resuelva con variantes del método simplex el modelo de PL:

Respuesta al ejercicio

157

B.2.7. Método simplex penal (2 fases) a un modelo no canónico de PL.

2.8.8. Aplicación simplex con programa CAVA u otro software a ejercicios del capítulo I.

Resuelva con el programa CaVa o algún software del método simplex, los ejercicios del capítulo 1: 1.1, 1.2,.....,1.11.

B.2.8. Aplicación simplex con programa CAVA u otro software a ejercicios del capítulo I.

2.8.9. Identifique algún caso especial en tabla simplex.

Resuelva e identifique algún caso especial en tabla simplex:

158

Respuesta al ejercicio

B.2.9. Identifique a algún caso especial en tabla simplex.

2.8.10. Identifique algún caso especial en tabla simplex.

Resuelva e identifique algún caso especial en tabla simplex:

Respuesta al ejercicio

B.2.10. Identifique a algún caso especial en tabla simplex.

2.8.11. Identifique algún caso especial en tabla simplex.

Resuelva e identifique algún caso especial en tabla simplex:

159

B.2.11. Identifique a algún caso especial en tabla simplex.

2.8.11. Identifique algún caso especial en tabla simplex.

Resuelva e identifique algún caso especial en tabla simplex:

B.2.11. Identifique a algún caso especial en tabla simplex.

2.8.12. Identifique algún caso especial en tabla simplex *AUTOEVAL*.

Resuelva e identifique algún caso especial en tabla simplex:

Respuesta al ejercicio

160

B.2.12. Identifique a algún caso especial en tabla simplex.

Enunciado del ejercicio

4 tablas-acierto (1 punto c/u).

2.8.13. Identifique algún caso especial en tabla simplex.

Resuelva e identifique algún caso especial en tabla simplex:

161

Respuesta al ejercicio

2.8.14. Problema dual asociado al modelo PL primal *AUTOEVAL*.

Obtenga el dual asociado al siguiente modelo de PL primal:

Respuesta al ejercicio

162

B.2.14. Problema dual asociado al modelo PL primal.

Enunciado del ejercicio

11 expresiones-acierto en modelo (1/4 de punto c/u).

2.8.15. Problema dual asociado al modelo PL primal.

Obtenga el dual asociado al siguiente modelo de PL primal:

Respuesta al ejercicio

163

B.2.15. Problema dual asociado al modelo PL primal.

2.8.16. Problema dual asociado al modelo PL primal.

Obtenga el dual asociado al siguiente modelo de PL primal:

Respuesta al ejercicio

164

B.2.16. Problema dual asociado al modelo PL primal.

2.8.17. Conceptos de PL con opciones de aciertos *AUTOEVAL*.

Vea las opciones de aciertos para los siguientes conceptos. Anote en paréntesis () el número de concepto que

corresponda:

(1)simplex dos fases, (2)problema dual, (3)variable entrante, (4)método simplex (5)variable holgura, (6)óptimas

múltiples, (7)variable artificial, (8)simplex penal, (9)no única, (10)solución básica, (11)solución degenerada,

(12)variable saliente

(__) El algoritmo busca optimizar, conserva la factibilidad en el cambio de base.

(__) Toda combinación lineal convexa entre dos puntos extremos óptimos.

(__) La función objetivo y alguna restricción tienen la misma pendiente.

(__) Elimina las soluciones básicas no factibles.

(__) Alguna(s) variable(s) del vector solución es (son) nula(s).

(__) Una regla es que a toda restricción le corresponde una variable asociada.

(__) Necesario cuando se tiene base artificial.

(__) Reduce de un número infinito a uno finito las soluciones a explorar.

165

(__) Si el sistema de desigualdades e igualdades es redundante.

(__) Se usa el coeficiente -M para máximo y +M para mínimo.

(__) Utilizadas en restricciones (>=) e (=).

(__) Elige la mejor dirección para converger al óptimo.

(__) En la primera parte se determina si el problema tiene solución factible.

(__) El significado de sus variables es útil en el análisis económico del problema.

(__) Incrementa su valor desde cero hasta un valor positivo.

(__) Se identifica el caso, pero el simplex sólo maneja las soluciones extremas.

(__) Necesarias para convertir el sistema de desigualdades a igualdades.

(__) Exclusivamente soluciones de esta clase maneja el simplex.

Nota: Un (__) puede tener más de un número y éstos pueden repetirse en otros.

Respuesta al ejercicio

B.2.17. Conceptos de PL con opciones de aciertos.

Vea las opciones de aciertos para los siguientes conceptos. Anote en paréntesis () el número de concepto que

corresponda:

(1)simplex dos fases, (2)problema dual, (3)variable entrante, (4)método simplex (5)variable holgura, (6)óptimas

múltiples, (7)variable artificial, (8)simplex penal, (9)no única, (10)solución básica, (11)solución degenerada,

(12)variable saliente

(4) El algoritmo busca optimizar, conserva la factibilidad en el cambio de base.

(6) Toda combinación lineal convexa entre dos puntos extremos óptimos.

(6) La función objetivo y alguna restricción tienen la misma pendiente.

(1, 4,8) Elimina las soluciones básicas no factibles.

(9,11) Alguna(s) variable(s) del vector solución es (son) nula(s).

(2) Una regla es que a toda restricción le corresponde una variable asociada.

(1, 7,8) Necesario cuando se tiene base artificial.

(1, 4,8) Reduce de un número infinito a uno finito las soluciones a explorar.

166

(9,11) Si el sistema de desigualdades e igualdades es redundante.

(8) Se usa el coeficiente -M para máximo y +M para mínimo.

(7) Utilizadas en restricciones (>=) e (=).

(1, 3, 4, 8,12) Elige la mejor dirección para converger al óptimo.

(1) En la primera parte se determina si el problema tiene solución factible.

(2) El significado de sus variables es útil en el análisis económico del problema.

(3) Incrementa su valor desde cero hasta un valor positivo.

(6) Se identifica el caso, pero el simplex sólo maneja las soluciones extremas.

(5) Necesarias para convertir el sistema de desigualdades a igualdades.

(10) Exclusivamente soluciones de esta clase maneja el simplex.

Enunciado del ejercicio

30 aciertos con valor de 1/10 de punto c/u.

2.9. Referencias bibliográficas

DAN63.- Dantzig George B.

Linear Programming and Extensions. Princenton University Press. Princenton N.J. 1963.

EPE92. - Epping G. - Gould F. - Schmidt Ch.

Métodos Cuantitativos para Administración. Prentice Hall. 1992

GAS74. - Gass Saul I.

Linear Programming. Methods and Applications. McGraw Hill, New York.1974

GAS81.- Gass Saul I.

Programación lineal.- Limusa 1ª Edición 1981

HIL95.- Hillier-Lieberman.

Introducción a la Investigación de Operaciones.-McGraw-Hill.- 6a.edición.- 1995.

LUE84.- Luenberger D.

167

Introduction to Linear and No Linear Programming. 2d. edition.1984

SAT59. - Saaty Thomas.

Mathematical Methods of Operations Research, Mc Graw Hill Book Company, New York, 1959

WAG75. - Wagner H.

Principles of Operation Research. 2d. edition. Englewood Cliffs. N. J. Prentice Hall. 1975.

WIN94.- Winston Wayne.

Investigación de Operaciones. Aplicaciones y Algoritmos.- Grupo Editorial Iberoamérica.- 2ª Edición.-1994.

Capítulo 3. ANÁLISIS DE SENSIBILIDAD DEL MODELO DE PROGRAMACIÓN LINEAL.

Tabla de contenido 3.1. Objetivo.

3.2. Método Dual - Simplex.

3.3. Análisis de sensibilidad.

3.4. Ejercicios, actividades de aprendizaje y autoevaluaciones correspondientes al capítulo

3.5. Referencias bibliográficas

3.1. Objetivo.

El estudiante debe ser consciente que la solución a un problema, depende de la validez de la información de entrada,

por lo que debe aprender a someter a un análisis de sensibilidad la solución óptima entregada por la computadora,

mediante cambios a los parámetros del modelo de programación lineal; es decir reformulando los datos de entrada y

apreciando las consecuencias.

3.2. Método Dual - Simplex.

Aprovechando las propiedades de los problemas asociados primal y dual, se desarrolló el método dual-simplex que

se aplica: en algunos casos de análisis de sensibilidad, como ocurre en cambios de los recursos del problema; también

para resolver problemas de objetivo mínimo y al menos una restricción de tipo >=, o para ahorro en cálculos evitando

los métodos simplex penal y dos fases. Se aplica cuando el problema cambia a no factible, pero el renglón Z se

presenta óptimo. Ahora observe y compare la aplicación ( ) de criterios del simplex en coeficientes del modelo de PL

resumido, a los problemas primal y dual.

168

Figura 3-1. Criterios del simplex en coeficientes del modelo de PL resumido, a los problemas primal y dual.

Enseguida se presenta una comparación funcional del simplex y el dual simplex.

Figura 3-2. Comparación funcional del simplex y el dual simplex.

Criterios del método dual-simplex para el cambio de base.

En el algoritmo dual-simplex aplican los siguientes criterios para cambio de base:

Criterio de factibilidad.- Se aplica en el dual-simplex para determinar, entre las variables básicas, una VS que

salga de la base, eligiendo para salir la que corresponda al valor más negativo en la columna de solución. Esto es

válido tanto para el objetivo mínimo como para el máximo.

Criterio de optimalidad.- Se aplica en el dual-simplex para determinar, entre las variables no básicas, una VE que

entre a la base con el siguiente procedimiento:

Figura 3-3. Criterio de Optimalidad en el método dual-simplex.

Elemento Pivote.- Se ubica como pivote al coeficiente que corresponde al cruce del renglón y columna elegidos con

los criterios del cambio de base.

Ejemplo 3-1. Aplica dual simplex a un PL con 4 restricciones >= (DUX1).

PASOS:

1) Consiga infactibilidad en restricciones tipo >=, (multiplique por -1):

169

2) Arregle la función Z; consiga la matriz I de base, sume holguras Hi, como sigue:

3) Tabule coeficientes y aplique el dual-simplex; elija variables VS, VE y pivote así:

170

Figura 3-4. Tablas del Dual-simplex aplicado al ejemplo DUX1.

Ejemplo 3-2. Aplica dual-simplex a un PL con 2 restricciones >= y 1 restricción <= (DUX2).

171

PASOS:

1) Consiga infactibilidad, multiplique por (-1) en restricción tipo >= como sigue:

2) Arregle el objetivo Z; consiga la solución básica (sume holguras Hi), como sigue:

3) Construya la tabla y aplique el algoritmo dual simplex:

172

Figura 3-5. Tablas del Dual-simplex aplicado en ejemplo DUX2.

3.3. Análisis de sensibilidad.

El modelo de programación lineal es estático y por tal motivo puede resultar inoperante con el transcurso del tiempo.

Es decir, los cambios que ocurren en cualquier economía dan lugar a que precios, costos, recursos disponibles o

requeridos ya no se puedan considerar para otro tiempo. Estos parámetros por lo general, son valores estimados

obtenidos sin la deseable precisión debido a las dificultades normales para conseguir registros confiables.

Una solución es óptima sólo en lo que se refiere al modelo específico que se usa para representar el problema real

estudiado, pero no puede ser confiable hasta verificar un buen comportamiento al hacer cambios en sus parámetros.

El análisis de sensibilidad tiene el propósito de investigar el efecto sobre la solución óptima entregada por el método

simplex, con los cambios a los valores originales.

173

En tal caso, la PL tiene el recurso de revisar la "solución óptima" de un problema para ajustarla a lo que se juzga

válido por los responsables de la decisión, o bien en respuesta a cambios (sólo discretos, pues los cambios continuos

forman parte de la programación paramétrica, no incluida aquí) del entorno económico; por tal motivo a este análisis

también se le llama de posoptimalidad.

En general se pueden presentar cambios que no afecten la optimalidad de la solución ya obtenida, pero también puede

ocurrir que se pierda esa condición. Por tal motivo es importante identificar los parámetros sensibles, que al cambiar

de valor, se pierde el óptimo. En este caso, es posible calcular el intervalo de valores permitido en que no se pierde el

óptimo. También se puede determinar el intervalo de valores para conservar factibilidad (valores no negativos de

variables).

3.3.1. Estructura matricial de la tabla simplex.

Para el análisis de sensibilidad se requiere saber la composición matricial de la tabla simplex y las relaciones

vectoriales implicadas. La localización de estos vectores y matrices en la tabla, forman la estructura matricial que se

presenta enseguida, con la recomendación de revisar los ejemplos que no son prototipo de casos. Estos tienen el

propósito exclusivo de ejercitar el uso de las fórmulas y la operación de matrices, lo cual se requiere en el análisis de

sensibilidad. Entonces se inicia este conocimiento presentando la composición de la tabla:

Figura 3-6. Composición matricial de la tabla simplex y las relaciones vectoriales implicadas.

En donde:

A es la matriz de coeficientes tecnológicos conforme las restricciones.

b es un vector columna de términos independientes conforme a las restricciones.

C es un vector renglón de coeficientes, conforme a la función objetivo.

CB es un vector renglón de coeficientes de variables de función objetivo, conforme transpuesto, se ubiquen en la

columna de base (básicas) en tabla simplex.

Y es un vector renglón de variables duales (precios sombra) los que se localizan como coeficientes en variables de

holgura y/o artificiales del renglón Z.

XB es un vector columna con valores de variables básicas en la columna solución.

174

B-1 es la inversa de una matriz B, formada de columnas de coeficientes de restricciones, conforme a variables

básicas (columna de base) en tabla simplex.

Ejemplo 3-3. Aplica fórmulas matriciales simplex y calcula el modelo original (MAXCAN1).

Dada la siguiente tabla simplex óptima incompleta:

a) complete la tabla; b) determine el modelo de programación lineal que la originó:

Figura 3-7. Tabla simplex óptima incompleta del ejemplo MAXCAN3.

a) Complete la tabla:

Observe que los coeficientes faltantes en la tabla simplex de ejemplo, corresponden a las columnas de variables

básicas, las que como tales, deben formarse como vector unitario requerido en la matriz de base I. La ubicación

de la variable básica H1 está dada, así se puede empezar situando el #1 en el cruce de este renglón y la columna

H1, con ceros en el resto. Otra posición dada es el #1, en columna de la variable X1, que se puede llenar con

ceros en el resto de la misma, colocando a X1 en la base, en mismo renglón del #1. La columna de X2está vacía

y desde luego, le corresponde el vector unitario que completa la matriz I, necesaria en toda tabla simplex, para

el caso de orden m=3; así se coloca a X2 en el único lugar libre de la base, coincidiendo este renglón y cruce

con columna X2 se sitúa el #1 y se llena con ceros el resto de la columna. Para el renglón y columna Z de la

tabla, es preciso recordar la forma de la ecuación objetivo y la ausencia de la variable Z en restricciones, para

colocar sus coeficientes, que completan la tabla aquí mostrada:

Figura 3-8. Tabla simplex óptima completa del ejemplo MAXCAN1.

b) Determine el modelo de programación lineal que originó la tabla simplex óptima del ejemplo MAXCAN1:

El modelo a determinar debe ser con el objetivo de máximo, pues en el renglón Z de la tabla óptima no hay

coeficientes negativos. Además, debe tener tres restricciones de tipo <=, ya que la base es de orden 3 y no hay

información de variables artificiales; lo cual significa que H1, H2, H3, son holguras de dichas restricciones y

X1, X2, tienen que ser variables de decisión. Utilizando las fórmulas dadas en la estructura de la tabla simplex,

175

el inicio es opcional, ya sea con restricciones o bien con la función objetivo; de cualquier manera es necesario

identificar en tabla simplex los vectores y matriz de las fórmulas como se muestra enseguida:

Figura 3-9. Identificación de matrices y vectores en tabla óptima del ejemplo MAXCAN1.

CB = ( CH1 C2 C1 ) = ( 0, 5, 3 ) Suponiendo que primero se desea determinar restricciones, con la fórmula

siguiente sólo hace falta despejar al vector columna b de términos independientes de restricciones, pues XB y

B-1se conocen:

Al despejar b, se observa que hay necesidad de calcular B como matriz inversa de B-1 que ya está localizada

en la tabla simplex dada, como sigue:

Figura 3-10. Cálculo de la matriz B inversa de B-1 en ejemplo MAXCAN1.

Sustituyendo a B y XB en fórmula b= BXB, se determina el vector b de recursos:

176

Figura 3-11. Cálculo del vector b de recursos en ejemplo MAXCAN1.

Para los coeficientes de restricciones de la matriz A, en la fórmula A* = B-1 A A = B A*, se sustituye B y

A*, y se determina la matriz A de coeficientes:

Figura 3-12. Cálculo de la matriz A de coeficientes en ejemplo MAXCAN1.

C = Coeficientes de la función objetivo: Z j - C j = CB B-1 A - C = Y A - C.

En esta fórmula sólo hace falta sustituir vectores y matriz, despejando C:

Entonces el modelo de PL buscado es:

Ejemplo 3-4. Aplica fórmulas matriciales simplex y calcula el modelo original (MINCANEST).

Considere la siguiente tabla simplex óptima incompleta; en donde S1 y S2 son variables de superávit .

177

Figura 3-13. Tabla simplex óptima incompleta del ejemplo MINCANEST.

a) Complete la tabla.-

Analizando la información de la tabla simplex óptima, el modelo de PL a determinar debe tener el objetivo de

mínimo, pues en el renglón Z no hay coeficientes positivos; con dos restricciones del tipo >=, por las siguientes

razones: S1 y S2 son superávit, usadas para pasar a = las restricciones >=, además las variables artificiales W1 y

W2, son necesarias para formar la matriz I si se usan superávit. Sólo hay dos renglones para la base que deben

ocupar, las variables de decisión X1 y X2, pues existe el #1 como señal de vector columna unitario en X2, el

cual debe arreglarse con ceros en los lugares restantes. La variable X1 ocupa el otro lugar en la base y se arregla

como el vector columna que completa la matriz de base I, pues no hay otra columna que pueda cumplir los

requisitos para matriz unitaria.

Cálculo del valor óptimo de la función Z.- Se puede proceder con este cálculo, hasta determinar el modelo

de PL original, pero se puede adelantar utilizando las mismas relaciones matriciales ya mostradas. La función

objetivo dual es Yo = bT Y; eliminando M, se conoce Y = (Y1, Y2) = (3/2, 5/4) conocidos como precios sombra

(coeficientes en Z para W1 y W2). Aún no se calcula el vector columna b, el cual aparece en: X B = B-1 b b

= B XB

El vector XB= (4,1)T es dato en tabla, sólo falta obtener la matriz B desde B-1:

Yo = bT Y = (6, 8 )T ( 3/2, 5/4 )= 19. Entonces: dual Yo = 19 = Zo primal, por la propiedad de dualidad fuerte.

Verifique inversas: B-1 B = B B-1 = I

178

La tabla simplex óptima completa se presenta a continuación:

Figura 3-14. Tabla simplex óptima completa del ejemplo MINCANEST.

b) Determine el modelo de PL que la originó.-

El modelo de programación lineal a determinar debe tener el objetivo de mínimo, pues el renglón Z de la tabla

simplex ya completada, no tiene coeficientes positivos. La base tiene dos renglones debido a restricciones de

tipo >=, porque sólo hay variables de superávit y artificiales. Las variables X1, X2, X3, son de decisión, pues

las restantes tienen asignación.

A = Coeficientes de restricciones:

Cálculo de C = Coeficientes de la función objetivo:

Entonces el modelo de PL pedido es:

179

Ahora se ejemplifican algunos de los posibles cambios discretos al modelo de programación lineal para mostrar el

análisis de sensibilidad, empezando por:

3.3.2. Cambios en el vector b de términos independientes (lado derecho) en restricciones de recursos.

Este cambio se analiza con la fórmula XB = B-1 b con lo cual se puede afectar la solución factible del problema, para

convertirse en solución óptima, pero no factible. En tal caso se puede recuperar la factibilidad perdida aplicando el

método dual simplex.

Ejemplo 3-5. Cambio en vector b de restricciones, PL en máximo (MAXCAN1).

Supóngase el problema:

Cuya tabla simplex óptima es:

Figura 3-15. Tabla simplex óptima del ejemplo MAXCAN1.

Para mostrar cómo se determina el intervalo de valores permitido en el cambio de los recursos del modelo de PL, se

considera una cantidad ique significa las unidades de cambio en más o en menos del recurso bi. En este ejemplo i

=1, 2, 3.

Sea i = cambio en (+) o en (-) para el recurso bi. Para bi: XB = B-1 (b + i).

Para el término independiente b1 de la restricción 1: XB = B-1 (b + 1):

Para el término independiente b2 de la restricción 2: XB = B-1 (b + 2):

180

Para el término independiente b3 de la restricción 3: XB = B-1 (b + 3):

Ahora ya se sabe entre qué valores pueden cambiarse los recursos del problema, sin perder la factibilidad de la

solución actual. Pero puede ocurrir un cambio que se quede fuera del intervalo, en tal caso revise el siguiente:

Es claro que el cambio propuesto es sólo en el recurso b2; es decir, 2 = - 7, se compara con el intervalo calculado y

significa pérdida de factibilidad, como sigue:

Aquí se identifican las características necesarias para poder aplicar el método dual simplex; es decir, condiciones de

optimalidad, puesto que no hay coeficientes positivos en el renglón Z, pero con solución no factible, pues existe un

valor negativo en la columna solución de la tabla. Entonces se procede con el dual simplex para procurar una nueva

solución óptima y, además, factible. Se empieza cambiando en la tabla simplex el vector XB de la solución anterior y

sustituyéndolo con el nuevo XB = (-1/3, 5/2, 13/3)T Además, se calcula el nuevo valor de la función objetivo:

Zo = CB XB = (CH1, C2, C1) (H1, X2, X1)T = (0, 5, 3) (-1/3, 5/2, 13/3)T = 51 / 2

Se arregla así la siguiente tabla, para aplicar el algoritmo dual simplex:

181

Figura 3-16. Tablas del dual simplex en ejemplo MAXCAN1, con el cambio b2- 2.

Nueva solución óptima después del cambio es: Zo = 49/2; X1 = 4, X2 = 5/2, H3 =1 Se observan las consecuencias del

cambio: Zo disminuye de 36 a 49/2, pero X1 aumenta de valor, de 2 a 4, a expensas de la holgura H1 que se hace cero

al salir de la base; la variable X2 disminuye de valor, de 6 a 5/2, entrando la holgura H3 como básica, pues la restricción

3 ya no se cumple en igualdad.

Considere ahora este otro cambio en el recurso b2:

Se propone que el recurso 2 aumente desde 12 a un valor de 20, o sea, 2 = 8:

En este cambio, también se pierde la factibilidad de la solución actual y se puede buscar la nueva solución óptima y

factible aplicando el método dual simplex.

Se arregla la tabla sustituyendo a XB = (14/3, 10, -2/3)T en columna derecha, con el nuevo valor para Zo = (CH1, C2,

C1)(H1, X2, X1)T= (0, 5, 3) (14/3, 10, -2/3)T = 48

182

Figura 3-17. Tablas dual simplex, ejemplo MAXCAN1, luego del cambio b2 + 2.

La nueva solución óptima es: Zo = 45; X2 = 9, H1 = 4, H2 = 2, X1 = H3 = 0

Las consecuencias de cambio en el recurso 2 con 2 = 8 son: la utilidad Zo = 36 aumenta a Zo=45, debido al

incremento de valor en la variable de X2=6 a X2=9; la holgura H1=2 aumenta a H1=4, el valor total del recurso b1, a

expensas de la variable de decisión X1 que se anula al salir de la solución básica. La restricción 3 se cumple en

igualdad, pues la variable X2 consume todo el recurso b3=18 (X1=0). La holgura H2 =2 de la restricción 2, entra a la

solución óptima porque el recurso b2=20 resulta excesivo.

Considere ahora, que ocurre un cambio simultáneo para los recursos b2 y b3 representados por las restricciones 2 y 3:

Se pierde la solución factible anterior y se prepara la tabla para utilizar el método dual simplex; se sustituye XB = (-

8/3, 5/2, 20/3)T en la columna derecha con el nuevo valor Zo =CB XB =(CH1, C2, C1)(H1, X2, X1)T =(0, 5, 3)(-8/3, 5/2,

20/3)T = 65/2

Figura 3-18. Tablas del dual simplex en ejemplo MAXCAN1, después del cambio b2 - 2, b3 + 3.

La nueva solución óptima es: Zo = 49/2; X1 = 4, X2 = 5/2, H3 = 8, H1 = H2 = 0.

Las consecuencias de los cambios propuestos son: La utilidad Zo=36 disminuye a Zo=49/2, ya que el recurso b2 =12

ha disminuido su valor a b2=5; la variable de decisión X1 =2 duplica su valor hasta X1=4, tomando el total del recurso

b1=4 y anulando a su holgura H1=0; en contraste la holgura H3 entra a la solución básica tomando el sobrante del

recurso b3=25 que resulta excesivo.

Los precios sombra en el análisis de sensibilidad.

183

Para fines de enseñanza, los ejemplos tratados hasta aquí de cambios en el vector b de recursos, intentan provocar

infactibilidad de la solución al quedar fuera del intervalo permisible; pero a veces no hay necesidad de llevar el cálculo

a la utilización del dual simplex. Si el cambio es pequeño, puede ser suficiente usar los precios sombra (coeficientes

en renglón Z de variables Hi ó Wi) los cuales representan el incremento, o bien el decremento en el valor de la función

Z, por cada unidad de cambio del recurso i.

Para el ejemplo dado, los precios sombra son: Y1=0, Y2=3/2, Y3=1.

Suponga ahora que el vector de recursos b=(4, 12, 18)T cambia a b=(2, 14, 16)T. Anote los cambios 1 = -2, 2 = 2,

3 = -2, todos ellos quedan dentro del intervalo en que la solución se conserva factible. Por lo tanto se procede al

cálculo usando los precios sombra: Zo = 36 -2Y1+2Y2-2Y3=36 -2(0)+2(3/2) -2(1)=37.

Con más labor de cálculo, Zo = 37 se comprueba con el procedimiento anterior:

Ejemplo 3-6. Cambio en el vector b de restricciones, PL min (MINSENb).

Dada la tabla simplex óptima y el modelo que la origina:

Figura 3-19. Modelo y tabla simplex óptima del ejemplo MINSENb.

Ahora se calcula el intervalo permisible de cambios i en vector b de recursos para conservar la solución factible:

184

Suponga que el recurso b1 = 30 cambia a b1 = 40; calcule la solución óptima

Al seguir factible, la nueva solución óptima solo necesitó el ajuste a los nuevos valores del vector XB y Zo; no

se requirió la tabla simplex.

Suponga que el recurso b3=12 cambia a b3=6. ¿Cuál es la nueva solución óptima?

Suponga que el recurso b1= 30 cambia a b1= 70. ¿Cuál es la solución óptima?

185

Al buscar restablecer la factibilidad con el método dual simplex, se observa que la única candidata para entrar a la

base es la variable artificial W1, esto no procede y debe evitarse, indica que el problema queda como no factible, con

ese cambio.

Figura 3-20. Dual simplex en ejemplo MINSENb, cambia b1, solución infactible.

Suponga que el recurso b3=12 cambia a b3=2. ¿Cuál es la nueva solución óptima?

3.3.3. Cambios en el vector C de coeficientes de la función objetivo.

Este cambio se analiza mediante la fórmula: Zj - Cj = CBB-1 A - C = YA - C y da lugar a que se pueda perder la

optimalidad de la solución ya obtenida. Debe hacerse la diferencia de cambios en el coeficiente de una variable Xj

que no está en la base, en cuyo caso hay cambios en su columna y en los precios sombra; también el caso de cambio

al coeficiente de una variable básica, puede resultar en pérdida de factibilidad y/u optimalidad. Se muestran los

ejemplos siguientes:

Se recurre al siguiente problema muy pequeño, pues contiene tres variables que representan la actividad del problema

y sólo dos restricciones.

Ejemplo 3-7. Cambio en el vector C de costos en MINSENC1.

Dado el modelo de PL siguiente y su correspondiente tabla simplex óptima:

186

Figura 3-21. Modelo y tabla simplex óptima del ejemplo MINSENC1.

Para cambios en el vector C de coeficientes de la función objetivo Z, se calcula el intervalo del valor para cada

coeficiente de C, que permite conservar la solución óptima en un problema específico. Se procede así con el ejemplo.

Sea: j =unidades de cambio en (+) o en (-), del coeficiente Cj en la función Z.

La fórmula a utilizar: Zj - Cj = YA -C, se puede simplificar en Zj - Cj = Yaj - Cj con el propósito de manejar sólo la

columna aj, en vez de la matriz A, y sólo el coeficiente Cj, en vez del vector C, pues el interés del cambio es sólo en

Xj.

Ahora ya se tienen los intervalos en el valor de los coeficientes en el vector C, que permiten conservar la solución

óptima (Zj - Cj <= 0). Aquí se propone lo siguiente:

Cambio en el vector C de un coeficiente Cj de variable no básica.-

Suponga el coeficiente C3 = 4 de la variable X3 en la función Z, cambia a C3 = -4. Esto significa 3 = -8 = -16/2,

quedando fuera del intervalo permisible y por lo tanto se espera que la solución se convierta a no óptima, al cambiar

a signo (+) el indicador Z3 - C3, como se muestra enseguida:

Se arregla la tabla simplex, sustituyendo en el renglón Z el coeficiente indicador Z3 - C3 = 1/2, el cual provoca la

pérdida de optimalidad en la solución actual, señalando que la variable X3 no básica debe entrar a la base y sustituir

a X2 que es variable saliente. Esto se conoce como reoptimizar:

187

Figura 3-22. Reoptimización en ejemplo MINSENC1, debido al cambio en C3 de variable no básica.

La nueva solución óptima es: Zo = 4; X1 = 28, X3 = 20, X2 = S1 = W1 = W2 = 0. Cambian: la base, X3 sustituye a X2,

columnas X2 y X3, y precio sombra en W2.

Ejemplo 3-8. Cambio en el vector C de costos en MINSENC2.

Dada la tabla simplex óptima y el modelo que la origina:

Figura 3-23. Modelo y tabla simplex óptima del ejemplo MINSENC2.

Considerando este ejemplo para ilustrar los cambios en C, primero se calcula el intervalo de valores permisible, a los

coeficientes de la función objetivo Z, para no perder la optimalidad ya obtenida.

Sea: i =Cambio en del coeficiente de X i.

188

Suponga que X1 no básica con C1=5, cambia a C1 = 17, o sea, que 1 = 12.

Z1 - C1 = -13/2 - (5+ 1) = -23/2 + 12 = 1/2 > 0 pérdida de optimalidad.

Se sustituye el nuevo valor Z1 - C1 = 1/2 en la tabla y se procede con la aplicación regular del algoritmo, cambiando

la base al meter X1 y sacar la holgura H2.

Figura 3-24. Reoptimización en ejemplo MINSENC2, debido al cambio en C1,, de variable no básica.

Solución óptima: Zo = -2211/56, X2 = 141/56, X1 = 45/14, X3 = 15/56, cambia la base, X1 sustituye a H2.

Cambio en el vector C de un coeficiente Cj de variable básica.- Como ya se anotó, en este caso no cambian los

precios sombra y sólo se requiere el ajuste del indicador Zj-Cj al valor cero para cumplir el requisito de la misma

solución básica.

Ejemplo 3-9. Cambio en el vector C de costos en MAXSENC.

Dada la tabla simplex óptimo y el modelo que la origina:

189

Figura 3-25. Modelo y tabla simplex óptima del ejemplo MAXSENC.

Se muestra el análisis de lo esperado en los cambios de C para variable básica.

Suponga al vector (C1, C2) = (6, 8) en la función Z, cambia a (C1, C2) = (3, 7)

Zj - Cj = YA - C = [5/3, 2/3] - (3, 7) = (6, 8) - (3, 7) = (3, 1)

Los indicadores Zj-Cj deben sustituirse primero en la tabla simplex dada y luego se debe ajustar para cumplir los

requisitos de solución básica, recalculando los indicadores Zj - Cj de valor cero, lo cual en este caso provoca pérdida

de optimalidad que hace necesario la aplicación del simplex:

Figura 3-26. Reoptimización en ejemplo MAXSENC, debido al cambio en vector C.

3.3.4. Cambios en la matriz A de coeficientes tecnológicos de restricciones en variables no básicas.

Los cambios en A para variables básicas resultan en cálculos muy complicados, siendo mejor recalcular con el

simplex. Para cambio de coeficientes de la matriz A de restricciones, en variables no básicas, sólo interesa manejar

los de ellas, pues el resto queda igual. Se procede así:

190

1ra. Etapa.-

Usando la fórmula de Zj - Cj = CB B-1 A - C = YA - C se revisa si el coeficiente indicador Zj - Cj cambia de

signo. Si no ocurre el cambio de signo en tal coeficiente no es necesario aplicar la 2ª. Etapa, ya que el cambio

propuesto no afecta la optimalidad del problema. Cuando el coeficiente Zj - Cj cambia de signo, se entiende

que el cambio propuesto, sí provoca la pérdida de optimalidad de la solución que se está revisando y en tal

caso se procede a la siguiente etapa.

2ª. Etapa.-

Se aplica utilizando la fórmula A* = B-1 A con la cual se calcula la nueva columna a*j. Se aplica el simplex

hasta reoptimizar.

Ejemplo 3-10. Cambio en la matriz A de coeficientes tecnológicos de restricciones (MINSENA1).

Dado el modelo de PL siguiente y su correspondiente tabla simplex óptima:

Figura 3-27. Modelo y tabla simplex óptima del ejemplo MINSENA1.

Suponga que el coeficiente 13 = -1 cambia por 13 = 2.

1ra. Etapa: indicador Z3 - C3 = Y 3 - c3 = (3, -1/2)(2, 1)T - 4 = 3/2 > 0 no óptima

También, con más labor de cálculo, se verifica este resultado usando las matrices:

Zj-Cj = YA - C =(3,-1/2) - (3, -1, 4) = (3, -1, 11/2) - (3, -1, 4)

Zj - Cj = (0, 0, 3/2) > 0 ya no es óptima, así se procede con la:

2da. Etapa:

Cálculo de la columna *3 de la matriz A*:

191

El resultado se verifica con todas las matrices, aunque con más labor de cálculo:

La tabla simplex dada con la solución óptima original, se arregla con los nuevos coeficientes Z3 - C3 y 3, procediendo

a reoptimizar:

Figura 3-28. Reoptimización del ejemplo MINSENA1, debido al cambio en 13.

La nueva solución óptima es: Zo = 8; X2 = 8, X3 = 4, X1 = S1 = W1 = W2 = 0

Ejemplo 3-11. Cambio en la matriz A de coeficientes tecnológicos de restricciones (MINSENA2).

Dado el modelo de PL siguiente y su correspondiente tabla simplex óptima:

Figura 3-29. Modelo y tabla simplex óptima del ejemplo MINSENA2.

Suponga que el vector columna 1= (2, 6, 2)T de coeficientes en restricciones, cambia a 1 = ( 6, 6, -2 )T. Calcule la

nueva solución óptima.

1ra. Etapa:

Z1-C1 =Y 1 -C1 = (1/16, 0, -53/16) (6, 6, -2) T -5 = 2 > 0 no es óptima

192

2da. Etapa:

se procede al cálculo de la columna *1 de la matriz A*:

Ahora se sustituyen los valores Z1 - C1 = 2 y *1 = (0, 7, -1)T en la tabla simplex dada, procediendo al cambio de

base, haciendo básica a X1 y no básica a H2.

Figura 3-30. Reoptimización del ejemplo MINSENA2, cambian coeficientes 1.

La nueva solución óptima es: Zo = -44.30, X1 = 3.214, X2 = 4.125, X3 = 5.089.

3.4. Ejercicios, actividades de aprendizaje y autoevaluaciones correspondientes al capítulo

En las siguientes subsecciones encontrará una serie de ejercicios que ayudarán a la total comprensión de los temas

tratados en el presente capítulo. Asimismo, los ejercicios marcados con *AUTOEVAL* son de auto evaluación, el

peso de los incisos correspondientes a cada uno de ellos podrán ser consultados en la sección de respuestas. Se sugiere

resolverlos, y una vez terminados, revisar su solución y calcular la calificación correspondiente y así evaluar el

entendimiento del mismo.

Se recomienda aplicar los ejercicios aquí planteados a casos prácticos de la vida diaria como parte de las actividades

de aprendizaje del presente material.

3.4.1. Aplica método dual-simplex.

Resuelva con método dual-simplex el modelo de PL que sigue:

194

B.3.2. Aplica método dual-simplex.

Enunciado del ejercicio

3 tablas-acierto (1 punto c/u).

3.4.3. Estructura matricial, completa tabla y calcula modelo PL original *AUTOEVAL*.

La siguiente es una tabla simplex óptima incompleta de un problema de PL. Determine: a) los elementos faltantes;

b) el modelo que originó la solución de la tabla; c) el método para resolverlo; d) el vector Y de variables duales

(precios sombra); e) el valor de la función Zo y Yo.

195

Respuesta al ejercicio

B.3.3. Estructura matricial, completa tabla y calcula modelo PL original.

Enunciado del ejercicio

Incisos a) y b) 1 punto c/u. incisos c),d) y e) 1/3 de punto c/u.

3.4.4. Estructura matricial, completa tabla y calcula modelo PL original.

La siguiente es una tabla simplex óptima incompleta de un problema de PL. Determine: a) los elementos faltantes;

b) el modelo que originó la solución de la tabla; c) el método para resolverlo; d) el vector Y de variables duales

(precios sombra); e) el valor de la función Zo y Yo.

Respuesta al ejercicio

196

B.3.4. Estructura matricial, completa tabla y calcula modelo PL original.

3.4.5. Estructura matricial, completa tabla y calcula modelo PL original.

La siguiente es una tabla simplex óptima incompleta de un problema de PL. Determine: a) los elementos faltantes;

b) el modelo que originó la solución de la tabla; c) el método para resolverlo; d) el vector Y de variables duales

(precios sombra); e) el valor de la función Zo y Yo.

Respuesta al ejercicio

197

B.3.5. Estructura matricial, completa tabla y calcula modelo PL original.

3.4.6. Estructura matricial, calcula tabla simplex sin usar algoritmo *AUTOEVAL*.

Dado el modelo de PL siguiente y su correspondiente vector solución óptimo XB = ( H1, X2, X1 )T, calcule la tabla

simplex usando solamente las relaciones matriciales de la misma; no aplique el algoritmo.

Respuesta al ejercicio

B.3.6. Estructura matricial, calcula tabla simplex sin usar algoritmo.

198

Enunciado del ejercicio

6 aciertos (5 renglones de tabla y la solución optima) 1/2 punto c/u.

3.4.7. Estructura matricial, calcula tabla simplex sin usar algoritmo.

Dado el modelo de PL siguiente y su correspondiente vector solución óptimo XB = (H1, X2, X1, H4 )T, calcule la

tabla simplex usando solamente las relaciones matriciales de la misma; no aplique el algoritmo.

Respuesta al ejercicio

B.3.7. Estructura matricial, calcula tabla simplex sin usar algoritmo.

3.4.8. Análisis de sensibilidad a solución de modelo canónico de PL *AUTOEVAL*.

Dado el modelo de PL y su tabla simplex óptima, siguientes:

199

Determine la nueva solución si ocurren los cambios siguientes:

a) El primer recurso b1 aumenta 15 unidades.

b) El coeficiente C1 de Z disminuye 4 unidades.

c) El coeficiente a13 = 2 en restricción 1 cambia a a13 = 0.

Respuesta al ejercicio

200

B.3.8. Análisis de sensibilidad a solución de modelo canónico de PL.

Enunciado del ejercicio

3 incisos-acierto 1 punto c/u.

3.4.9. Análisis de sensibilidad a solución de modelo no canónico de PL.

Dado el modelo de PL y su tabla simplex óptima, siguientes:

201

Determine la nueva solución si ocurren los cambios siguientes:

a) El tercer recurso b3 = 3 cambia a b3 = 5 unidades.

b) El coeficiente C1 = 2 de Z, cambia a C1 = - 3 unidades.

Respuesta al ejercicio

202

B.3.9. Análisis de sensibilidad a solución de modelo no canónico de PL.

Enunciado del ejercicio

3.4.10. Conceptos de PL con opciones de acierto *AUTOEVAL*.

Vea las opciones de aciertos para los siguientes conceptos. Anote en paréntesis (__) el número de concepto que

corresponda:

(1) método dual-simplex, (2) precios sombra, (3) estructura matricial simplex, (4) variable sale en dual-simplex, (5)

variable holgura, (6) dualidad (7)matriz B-1 (8) vector C en objetivo, (9) vector b de recursos, (10) análisis de

sensibilidad, (11) matriz A, (12) vector CB, (13) holgura complementaria.

(__) Usadas para conseguir la base inicial en el dual-simplex.

(__) Estudia efecto de cambios a modelo PL después de optimizado.

(__) Variable dual no cero, asocia restricción primal que cumple en igualdad.

(__) Coeficientes ordenados de la función objetivo a variables en la base.

203

(__) Se usa en análisis de sensibilidad, se sabe: Máximo Z (Y) = Mínimo Y (z).

(__) Coeficientes ordenados de restricciones de la PL.

(__) Asocia ambos problemas con relación respectiva de variable-restricción.

(__) Se elige así cuando tiene el valor menor o más negativo como solución.

(__) Contiene los valores de recursos que anota el modelo de PL.

(__) Cambio en al valor de Z, debido al cambio unitario en del recurso i.

(__) Aplica con solución inicial óptima, pero con valores negativos del vector XB.

(__) Presente en todas las relaciones matriciales de la tabla simplex.

(__) Se usa en análisis de sensibilidad si XB < 0 en el cambio del vector b.

(__) Muestra el orden matemático de constantes y variables si aplica el simplex.

(__) También se identifican como multiplicadores del simplex o valores duales.

(__) Variable dual cero, asocia restricción primal que cumple en desigualdad.

(__) Solución complementaria en la tabla simplex.

Nota: Un (__) puede tener más de un número y éstos pueden repetirse en otros.

Respuesta al ejercicio

B.3.10. Conceptos de PL con opciones de acierto.

Vea las opciones de aciertos para los siguientes conceptos. Anote en paréntesis (__) el número de concepto que

corresponda:

(1) método dual-simplex, (2) precios sombra, (3) estructura matricial simplex, (4)variable sale en dual-simplex, (5)

variable holgura, (6) dualidad (7)matriz B-1 (8) vector C en objetivo, (9) vector b de recursos, (10) análisis de

sensibilidad, (11) matriz A, (12) vector CB, (13) holgura complementaria.

(5) Usadas para conseguir la base inicial en el dual-simplex.

(10, 1, 2, 3, 6,13) Estudia efecto de cambios a modelo PL después de optimizado.

(13, 2,6) Variable dual no cero, asocia restricción primal que cumple en igualdad.

(12) Coeficientes ordenados de la función objetivo a variables en la base.

(6, 1, 2, 3,13) Se usa en análisis de sensibilidad, se sabe: Máximo Z (Y) = Mínimo Y (z).

204

(11,9) Coeficientes ordenados de restricciones de la PL.

(6, 2,13) Asocia ambos problemas con relación respectiva de variable-restricción.

(4,1) Se elige así cuando tiene el valor menor o más negativo como solución.

(9) Contiene los valores de recursos que anota el modelo de PL.

(2) Cambio en al valor de Z, debido al cambio unitario en del recurso i.

(1,4) Aplica con solución inicial óptima, pero con valores negativos del vector XB.

(7,3) Presente en todas las relaciones matriciales de la tabla simplex.

(1,6) Se usa en análisis de sensibilidad si XB < 0 en el cambio del vector b.

(3) Muestra el orden matemático de constantes y variables si aplica el simplex.

(2) También se identifican como multiplicadores del simplex o valores duales.

(13,6) Variable dual cero, asocia restricción primala que cumple en desigualdad.

(2,13) Solución complementaria en la tabla simplex.

Enunciado del ejercicio

37 aciertos con valor de 4/5 de punto c/u.

3.5. Referencias bibliográficas

DAN63.- Dantzig George B.

Linear Programming and Extensions. Princenton University Press. Princenton N.J. 1963.

EPE92. - Eppen G. - Gould F. - Schmidt Ch.

Métodos Cuantitativos para Administración. Prentice Hall. 1992

GAS74. - Gass Saul I.

Linear Programming. Methods and Applications. McGraw Hill, New York.1974

GASS81.- Gass Saul I.

Programación lineal.- Limusa 1ª Edición 1981

HIL95.- Hillier-Lieberman.

205

Introducción a la Investigación de Operaciones.-McGraw-Hill.- 6a.edición.- 1995.

LUE84.- Luenberger D.

Introduction to Linear and No Linear Programming. 2d. edition.1984

SAT59. - Saaty Thomas.

Mathematical Methods of Operations Research, Mc Graw Hill Book Company, New York, 1959

WAG75. - Wagner H.

Principles of Operation Research. 2d. edition. Englewood Cliffs. N. J. Prentice Hall. 1975.

WIN94.-Winston Wayne.

Investigación de Operaciones. Aplicaciones y Algoritmos.- Grupo Editorial Iberoamérica.- 2ª Edición.-1994.

Capítulo 4. APLICACIONES DE LA PROGRAMACIÓN LINEAL

Tabla de contenido 4.1. Objetivo.

4.2. Definiciones.

4.3. Red de distribución.

4.4. Redes de flujo

4.5. Ejercicios, actividades de aprendizaje y autoevaluaciones

correspondientes al capítulo

4.6. Referencias bibliográficas

4.1. Objetivo.

Para aquellos problemas que se pueden visualizar mediante un gráfico semejante a una red, tales como los problemas

del área de transporte, el alumno se inicia y aprende que la programación lineal los resuelve con metodología

específica que explota las circunstancias del modelo de red y su resultante modelo matemático simplificado, del que

se derivan algoritmos exclusivos más eficientes que el simplex. Aprende con ellos a optimizar el flujo de unidades en

diversos problemas de ruta y árbol mínimos, así como transporte máximo de unidades y su distribución.

4.2. Definiciones.

La programación lineal es una técnica poderosa y versátil para tratar problemas de asignación de recursos escasos

entre actividades que compiten. Se ha convertido en una herramienta estándar de gran importancia para muchas

instituciones de gobierno, organizaciones industriales y de negocios. En general tiene gran aplicación en una amplia

206

variedad de contextos que incluyen los siguientes dos grupos especiales: las redes de distribución de mercancía,

servicios de agua y energía, así como de personal; otro grupo de aplicación son las redes de flujo, en las que se tienen

diversos lugares a comunicar mediante algún medio (rama) por el cual se transportan unidades, que también pueden

ser bienes, servicios, información y personas.

La utilización del conocido método simplex para estas aplicaciones especiales de programación lineal, requiere la

previa formulación del modelo matemático del problema en estudio el cual puede resultar con un número muy grande

de restricciones y variables (depende del tamaño), de manera que se podría traducir en un esfuerzo importante para la

capacidad de la computadora.

Sin embargo, esta clase de problemas de aplicación especial se distinguen porque la mayoría de los coeficientes en

la matriz A de las restricciones son cero. En consecuencia se han podido desarrollar algoritmos simplificados

especiales sobre la base del simplex, que explotan la estructura particular del modelo, logrando ahorros en labor de

cálculo, lo cual los hace más eficientes.

Los problemas de redes surgen en una gran variedad de situaciones. Las redes que distribuyen los bienes de consumo,

las que distribuyen los servicios para el hogar y la empresa, las comunicaciones para llevar personas al desempeño de

sus actividades, las redes electrónicas indispensables en la vida diaria de la gente, son comunes en el trabajo y la

diversión.

El modelo gráfico de red proporciona un panorama general del problema y una ayuda conceptual para visualizar las

relaciones entre componentes de los sistemas que se usan en áreas científicas, sociales y económicas.

Entre los desarrollos más recientes de la investigación de operaciones (IO) se cuentan los avances en la metodología

y la aplicación de los modelos de redes. Algunos algoritmos han tenido un fuerte impacto logrando su aplicación en

paquetes de computadora a problemas de gran tamaño, que hasta hace algunos años no se podían resolver

Definiciones para: REDES DE DISTRIBUCION Y DE FLUJO

Los problemas de distribución y flujo de unidades se pueden analizar mejor utilizando una representación gráfica

conocida como modelo de red (nodos o lugares, comunicados por ramas o medios que se usan para el flujo). En este

capítulo de aplicaciones de la PL se considera un grupo con las redes de distribución de bienes, servicios, trabajos y

personas en problemas específicos denominados: transporte simple, transbordo y asignación. También con modelo de

red, se presenta otro grupo incluyendo algunos problemas relacionados con la comunicación de distintos lugares para

el flujo de unidades, como son ruta mínima, árbol mínimo y flujo máximo. Además, se puede formular un modelo

matemático de programación lineal que represente a dichos problemas, identificándolos como aplicaciones de esta

técnica matemática. Conviene establecer definiciones, útiles al facilitar el conocimiento en redes de distribución y de

flujo. Por favor vea Figura 4-1 y las definiciones siguientes:

Ejemplo 4-1. Muestra de red, tipos de nodos y ramas, con notación.

207

Figura 4-1. Red ejemplo de flujos que muestra la notación para definiciones.

Red: Conjunto de nodos (i) unidos en pares por ramas (i, j), medio para el flujo.

Nodo (i): Punto de interés o lugar de la red para unidades que entran y/o salen (ciudades, estaciones, almacenes,

puntos de proceso, computadoras, etc.).

Rama i - j; (i, j): La línea que une dos nodos (i) e (j) adyacentes, significa una forma de comunicación para establecer

el flujo de unidades entre ellos. Una rama puede ser unidireccional u orientada ( ) para permitir el flujo en una sola

dirección, ya sea (i) (j) ó (i) (j), una excluye a la otra. La tubería del agua que recibe en la regadera de su casa o

la calle de un sólo sentido, son ejemplo de rama orientada. También, una rama puede ser bidireccional o no orientada,

ya sea (i) - (j), o bien, (i) (j), lo cual permite establecer, flujo de unidades en ambas direcciones. Las líneas

telefónicas, calles de doble dirección, líneas del metro, líneas aéreas, son ejemplo de rama bidireccional o no orientada.

Capacidad de flujo (Fi j): Es el máximo de unidades que se permite fluir por una rama (i, j). Por ejemplo: el diámetro

de la tubería para conducir fluidos (líquido o gas), el calibre del cable conductor eléctrico, la capacidad de carga de

un camión transportista, el número de lugares disponibles de un avión, son especificaciones que limitan la capacidad

para el flujo posible de servicios, bienes o personas.

Flujo (X i j): Unidades transportadas por la rama (i, j); el flujo puede ser de bienes, servicios, información o personas.

Ejemplo definitorio de unidades son los vehículos o las personas que llevan. El flujo se ubica en el intervalo: 0 =< X

i j =< F i j; es decir, puede no existir (cero), pero no exceder la capacidad F i j especificada.

Costo (C i j): Es el costo en tiempo, distancia o dinero, invertido al transportar una sola unidad por la rama (i, j). Aquí

es importante precisar la unidad.

Ruta (trayectoria): Es la conexión de dos lugares o nodos, mediante un conjunto de una, o más ramas (i, j) en

secuencia, los cuales se usan una sola vez, vea Figura 4-2.

208

Circuito: Es una ruta para conectar un nodo (i) a sí mismo.

Nodo origen: Es el lugar elegido para enviar unidades. Algunos ejemplos son: ciudades, transmisora de radio o

televisión, puerto aéreo / marítimo, oficina postal.

Nodo destino: Es el lugar elegido para recibir unidades. Algunos ejemplos son: ciudades, puerto aéreo o marítimo,

oficina postal, usuarios de electricidad; y en casa, receptores de radio y televisión, lavaderos, regaderas, focos y

contactos.

Nodo de transbordo o transferencia: Es un lugar con la posibilidad de enviar y de recibir unidades, por ello puede

funcionar como origen así como destino. Ejemplo: ciudades, estación de transporte colectivo "metro", teléfono,

computadora, bombeo de agua, subestación eléctrica, paradero de transporte público.

Nodo (j) directo de otro nodo (k).- Si el nodo (j) puede recibir flujo de (k). En la red mostrada, el nodo C es directo

de S, A y B. Directos de O son A y B.

Nodo (i) inverso de otro nodo (k).- Si el nodo (i) puede enviar flujo a (k). En la red, C es inverso de B, H y S. Los

nodos H y S, a su vez, inversos de T.

Figura 4-2. Algunas rutas alternativas en la red ejemplo.

Interpretación gráfica de una rama bidireccional (no orientada). En redes de flujo es permitido representar una

rama bidireccional en cualquiera de las siguientes maneras: Una rama entre nodos con flecha en ambas direcciones,

o bien se sustituye con dos ramas orientadas S C y S C, como se ve enseguida:

Figura 4-3. Representación de una rama bidireccional

PROPIEDAD DE CONSERVACIÓN DE FLUJO EN UNA RED.

En una red de flujo, éste se considera factible cuando se cumple:

1. La restricción para cada flujo X i j en las ramas ( i, j ) de ella: 0 =< X i j =< F i j

2. No hay pérdida de unidades de flujo a través de la misma, entendiendo que el número de unidades que entran

a un nodo de la red es igual al número que sale del mismo. De este modo, dicha propiedad es válida para toda

la red en cualquier nodo y se identifica como "conservación de flujo". Verifique en Figura 4-4

209

Figura 4-4. Conservación de flujo en cualquier nodo de la red.

4.3.1. Problema de transporte simple.

El problema de transporte simple es un caso especial de la programación lineal, pues la estructura matemática que lo

representa, resulta en un modelo cuyas restricciones tienen términos de coeficientes 1, lo cual ha permitido el

desarrollo del algoritmo de solución basado en el simplex pero simplificado, logrando así mayor eficiencia en labor

de cálculo. Es aplicable en la distribución de bienes de consumo, de servicio eléctrico y de agua, en la asignación de

equipo a la producción; también tiene aplicaciones de otra naturaleza como es, el inventario industrial o la asignación

uno a uno, de ahí la importancia del modelo.

Definición: Dada una red de nodos, parte de los cuales son m orígenes con oferta de algún producto, otra parte de

los nodos son n destinos con demanda b j del mismo bien. Se trata de satisfacer las demandas aprovechando las ofertas

para lo cual se tiene el respectivo costo unitario C i j de transporte, y el objetivo de que la suma de costos sea mínimo.

La distribución de bienes debe permitir el cumplimiento de cada demanda con uno o más orígenes, vea Figura 4-5.

210

Figura 4-5. Red de transporte simple, envía unidades Xij, del origen i al destino j.

Oferta contra demanda.- Una situación normal que presenta el problema de transporte, es que la suma de unidades

por enviar desde los orígenes, no es igual a la suma de unidades pedidas en los lugares de destino. La metodología de

solución, requiere ajustar primero, para tener equilibrio entre oferta y demanda.

Solución al problema de transporte.- Se puede resolver con el método especial, pero también se puede modelar el

problema y aplicar el algoritmo Simplex.

Modelo de programación lineal del problema de transporte

Sea: X i j = Unidades enviadas del origen i (i =1,2,...m), al destino j (j = 1,2,..., n)

C i j = Costo unitario desde el nodo origen i hasta el nodo destino j.

= Oferta del origen i, (i = 1, 2,..., m); b j = Demanda del destino j (j = 1, 2,..., n)

El modelo de programación lineal aquí mostrado se presenta para un problema balanceado con las restricciones de

oferta y demanda en igualdad. Para el caso de un problema no balanceado (oferta y demanda en desigualdad) es

necesario el

Equilibrio: = b j; además, debe cumplirse que toda X i j >= 0

Figura 4-6. Tabla usual para el problema de transporte.

La tabla de transporte (Figura 4-6) contiene renglones i para los orígenes (oferta) y columnas j para los destinos

(demanda); el cruce de renglón y columna se conoce como celda (i, j) que contiene: a la derecha el respectivo

211

costo Cij, y a la izquierda se deja vacía para alojar (si existe), el valor que representa el envío de unidades de un

determinado producto desde el lugar i hasta el lugar j, o sea, X ij.

El siguiente ejemplo se resuelve aplicando la metodología de transporte que consiste de seis pasos, de los cuales

los últimos cuatro corresponden al algoritmo de transporte, también llamado de los multiplicadores del simplex.

Ejemplo 4-2. Aplica algoritmo de transporte (TRANSBAL33).

Por favor refiérase a la Figura 4-6 usual de transporte anterior para identificar la información en la tabla siguiente de

costos Cij, ofertas , demandas bj, de los mismos bienes, para tres destinos j y tres orígenes i. Determine la asignación

óptima de unidades ofertadas que satisfaga la demanda con el menor costo. Las variables Xij son los transportes por

determinar, algunos de ellos deberán anularse (Xij =cero) porque su costo unitario de envío es caro.

Figura 4-7. Tabla inicial de transporte con datos del problema ejemplo TRANSBAL33.

a) Formule un modelo de programación lineal para este problema.

Se omite la restricción de equilibrio porque, en las de oferta y demanda, las restricciones se expresan con

desigualdad, lo cual obliga al equilibrio con variables de holgura y de superávit, que es equivalente a oferta o

demanda, ficticias.

b) Optimice utilizando el algoritmo de transporte:

Paso 1. Balancee el problema en cuanto a la oferta y la demanda total. Un problema de transporte balanceado

debe cumplir: = bj; para eso calcule:

Si: oferta > demanda bj, se crea una demanda ficticia = - b j

212

Si: oferta < demanda bj, se crea un origen ficticio = b j - i

En el ejemplo Transbal se tiene: Oferta= 40+50+30 = 120 = 25+35+60 = Demanda.

Significa que el problema está balanceado, pues oferta y demanda igualan en 120, por lo tanto no hay

necesidad de balancear con origen o demanda ficticios.

Paso 2. Obtenga una primera solución básica y factible.- Como en el simplex, es necesario conseguir una

primera solución que cumpla como básica y que, además, sea factible. Será básica si tiene, a lo más, m + n -

1 asignaciones o envíos. En este ejemplo, m = 3, n = 3: m + n - 1 = 3 + 3 - 1 = 5 asignaciones.

Será factible si se cumple:

Para calcular una primera solución básica y factible, hay varios métodos, entre los cuales están los siguientes:

esquina noroeste (NO) y método de Vogel.

Primera solución básica factible calculada con el método de la esquina NO:

Se inicia en la esquina superior izquierda, celda (i, j) = (1, 1) de la tabla; asignando un valor a la variable X ij =

X11 reduciendo i = 1 y bj = b1, en el mismo valor y se denotan tales valores reducidos con *i y b*j. Suponga

el problema balanceado: X11 = mínimo ( 1, b1), reemplaza 1 por *1= 1-X11 y b1 por b*1=b1-X11, entonces:

Si *1 > b*1, se pasa a la celda ( i, j ) = (1, 2) asignando X12 = mínimo ( *1, b2) y se reemplaza *1 por

*1 = *1 - X12 y b2 por b*2 = b2 - X12. Pero si *1 < b*1, se pasa a la celda (2, 1) asignando X12 = mínimo ( 2,

b*1) y se reemplaza 2 por *2 = 2 -X21 y b*1 por b*1 = b*1 - X21. El caso en que *1 = b*1 produce la

solución degenerada con menos de (m + n -1) asignaciones o envíos, se expondrá después.

Para el ejemplo Transbal33 se hace un primer envío de unidades en la celda (i, j) = (1, 1) (orientación NO), el

mayor posible, que coincide con mínimo de la oferta 1=40 y la demanda b1=25; en tal caso, lo más que se

puede enviar es X11=25 que se anota en la celda (1,1). Así se satisface la demanda b1, ahora la oferta es:

1=40-25=15, la cual se envía al destino 2 con demanda b2=35, asignando X12=15, agotando la oferta 1 y

pendientes 35 - 15 = 20 unidades para envío a b2 con otra oferta, en este caso con el origen 2 cuya oferta es

2=50, se asigna X22=20 completando la demanda b2=35. Ahora la oferta 2 se reduce a 50-X22 =50-20 =30, la

que se aprovecha para enviarX23=30 al destino 3 que demanda b3=60; se agota la oferta 2 y ahora se considera

la oferta 3 con 3=30, que iguala la demanda b3=30, por lo que se asigna el envío de X33=30 que agota 3 y

satisface b3 simultáneamente. La solución de esquina NO (Figura 4-8) siguiente contiene 5 asignaciones o

envíos en variables llamadas básicas: X11=25, X12=15, X22=20, X23 = 30, X33 = 30 y costo sumado de 615.

Las 4 variables restantes son no básicas y nulas: X13 = X21 = X31 = X32 = 0.

213

Figura 4-8. Envíos asignados con método esquina noroeste (NO), ejemplo TRANSBAL33.

La solución básica factible con método esquina noroeste, se grafica (Figura 4-9) a red en forma de árbol de

expansión (todos los nodos conectados sin circuitos):

Figura 4-9. Primera solución básica factible como árbol de expansión en ejemplo TRANSBAL33.

Primera solución básica factible obtenida con el método de Vogel.- Este método y el anterior (NO), sólo

son soluciones de inicio y a veces, en problemas pequeños, pueden optimizar; pero en general, el método de

Vogel resulta una mejor aproximación en el proceso de asignar transporte al ponderar y elegir costos.

Se inicia la asignación con el método de Vogel, calculando en todos los renglones y columnas de la tabla, la

diferencia entre los dos costos menores de cada uno de ellos. Así en renglón 1: 7-6=1, en el 2: 4-3=1, en el 3:

6-5=1, en la columna 1: 7-5=2, en la 2: 6-4=2, en la 3: 6-3=3. Ahora se decide hacer el primer envío en el

renglón o columna que tenga la mayor, entre todas las diferencias recién calculadas; lo cual se cumple en

columna 3, seleccionando entre las celdas de la misma, aquella que tenga el costo mínimo entre (8, 3, 6)=3, la

celda (2,3); con una oferta 2=50 y una demanda b3=60, se puede asignar un envío de X23=50 lo cual agota la

oferta 2 pero la demanda b3=60 no se completa. Después de la asignación, se repite el procedimiento de

calcular la diferencia entre los dos costos menores de cada renglón y columna. Se omite el renglón 2, cuya

oferta 2 se agotó, señalándolo con marca x queda eliminado para elegir costos. Se inicia una nueva asignación

con diferencias 1 y 1 en respectivos renglones 1 y 3; 2, 2 y 2, en respectivas columnas 1, 2, y 3. El empate a 2

en las columnas, obliga a otro criterio: se comparan todos los costos en los renglones 1 y 3 para seleccionar el

mínimo (7, 5, 6, 8)=5 en celda (3, 1), asignando un envío de X31=25, dado que se pide b1=25 y se oferta

3=30. Con esta asignación se satisface la demanda b1, se señala con x la columna 1 como no elegible en lo

sucesivo. Para el siguiente envío, se obtiene: 8-6 = 2 en los renglones 1 y 3; y lo mismo 8-6 = 2 en las columnas

2 y 3; aquí se tiene una doble situación de empate, pues al comparar costos, empatan las celdas (1, 2) y (3, 3)

en un costo de 6; entonces es necesario otro criterio de decisión, como es elegir la celda con el mayor envío

posible, se prefiere X12=35 al comparar con X33=5. Este envío satisface b2=35, marcando x para lo sucesivo,

pero la oferta 1 queda en 40-35=5.

Ahora la única demanda no satisfecha es en columna 3; ya no hay dos costos para obtener la diferencia en

renglones, en tal caso se anota cero en renglones 1 y 3; en la columna 3, la diferencia es: 8-6 = 2 que es la

mayor y por lo tanto se asigna X33 = 5, con lo cual se agota la oferta 3 = 30, señalando con x el renglón. Sólo

queda por agotar la oferta del renglón 1, pues ya no hay diferencia de costo, entonces se decide X13 = 5,

agotando 1 = 40 y se completa a la vez la demanda b3 = 60. Sigue la Figura 4-10 que muestra el transporte

con el método de Vogel.

214

Figura 4-10. Envíos asignados en método de Vogel, primera solución, ejemplo TRANSBAL33.

Costo del método de Vogel = 6(35) + 8(5) + 3(50) + 5(25) + 6(5) = 555

Variables básicas: X12 = 35, X13 = 5, X23 = 50, X31 = 25, X33 = 5

Variables no básicas: X11 = X21 = X22 = X32 = 0

La solución básica factible obtenida aplicando el método de Vogel, también se puede representar como red de

distribución en forma de árbol de expansión (todos los nodos conectados sin circuito), como en Figura 4-9 de

esquina noroeste.

Paso 3. Determine una matriz de costos como la mostrada en donde:

Figura 4-11. Costos C* ij y valor de variables duales en solución Vogel, ejemplo TRANSBAL33.

Paso 4.- Calcule el valor de las variables duales V j y U i mediante la aplicación de la fórmula:

C* i j - U i - V j = 0. Se debe obtener tantas ecuaciones como costos C* i j de variables básicas (m + n - 1) =

(3+3-1= 5), con un total den variables V j y m variables U i por resolver, (suman m + n = 3+3 = 6); es decir,

un sistema de 5 ecuaciones con 6 variables. El sistema tiene un grado de libertad, se puede dar un valor

arbitrario (por ejemplo cero) a una de las variables y resolver. Con V3 = 0:

215

Figura 4-12. Variables duales del ejemplo TRANSBAL33.

También se pueden calcular las variables duales, directamente sobre la tabla de transporte, empezando con el

valor cero en cualquiera de ellas, (se prefiere a la variable que participa más, ya sea en renglón o bien en

columna), puede hacerse anulando la que desee.

Considere el cálculo con U1 = 0 y sustituya en la fórmula C13 - U1 - V3 = 0

V3 = C13 - U1 = 8 - 0 = 8; también V2 = C12 - U1 = 6 - 0 = 6; luego: U2 = C23 - V3 = 3 - 8 = - 5; U3 = C33 -

V3 = 6 - 8 = - 2;

V1 = C31 - U3 = 5 - (- 2) = 7

Figura 4-13. Valor a variables duales, paso 4 en algoritmo de transporte, ejemplo TRANSBAL33.

Esta es una más, de la infinidad de soluciones posibles al sistema de ecuaciones cuya solución proporciona el

valor de las variables duales, una para cada renglón y columna de la tabla de transporte. Cualquiera de tales

soluciones es igualmente útil para el siguiente paso del algoritmo de transporte.

Paso 5. Calcular los parámetros Z i j - C i j = C i j - U i - V j para cada celda vacía (variable no básica). La

solución es óptima si Z i j - C i j >= 0, de lo contrario, se declara como variable entrante a la base, la que

corresponda al valor de Z i j - C i j más negativo y se procede al cambio de base.

Cálculo de los parámetros con la primera solución (V3 = 0) de variables duales:

Figura 4-14. Cálculo de parámetros Zij - Cij del ejemplo TRANSBAL33.

Cálculo de los parámetros con la segunda solución (U1 = 0) de variables duales para que el lector verifique

el mismo resultado con ambas soluciones:

216

Figura 4-15. Cálculo de parámetros con la segunda solución de variables duales, ejemplo

TRANSBAL33.

En este primer problema de transporte simple, no es necesario aplicar el paso 6 para cambiar la base buscando

optimizar, pues la primera solución básica factible obtenida con método de Vogel, resultó la mejor solución,

lo cual no siempre se cumple. Los ejemplos siguientes, presentan la metodología completa.

Ejemplo 4-3. Aplica algoritmo de transporte (TRANSNOBAL33).

Dado el siguiente problema no balanceado de distribución de unidades, en que M significa un costo muy alto, formule

y optimice los envíos aplicando el método con el algoritmo de transporte:

Figura 4-16. Tabla inicial de transporte con datos del problema ejemplo TRANSNOBAL33.

a) Formule el modelo de programación lineal correspondiente:

Sea: X i j = Unidades enviadas del nodo origen i (i = 1,2) al destino j (j = 1, 2,3).

Función objetivo: Mínimo Z = 10 X11 + 5 X12 + 12 X13 + 8 X21 + M X22 + 11 X23

b) Optimice el transporte iniciando con la solución de esquina noroeste (NO).

Paso 1. Balancee el problema:

Oferta = = 40 + 55 = 95 < 100 = 25 +15 + 60 = bj = demanda

217

Si: demanda = bj = 100 > 95 = = oferta, entonces se balancea con un origen ficticio a 3 = bj -

= 100 - 95 = 5, con costosC3 j = cero

Figura 4-17. Tabla de transporte balanceado (paso 1) del problema ejemplo TRANSNOBAL33.

Paso 2. Inicie calculando con método de la esquina NO, como primera solución básica factible en la

aplicación del algoritmo de transporte.

Figura 4-18. Envíos asignados de método esquina noroeste (NO), ejemplo TRANSNOBAL33.

Costo de solución esquina NO: Z = 10(25) + 5(15) + 11(55) + 0(5) = 930

Variables básicas aparentes: X11 = 25, X12 = 15, X23 = 55, X33 = 5.

Variables no básicas aparentes: X13 = X21 = X22 = X31 = X32 = 0

Es solución básica factible porque cuando mucho tiene, m + n - 1 = 3+3 -1 = 5 transportes, además tiene

factibilidad porque cumple Xi j = ; Xi j = bj.

Es un caso de solución degenerada pues sólo tiene 4 < 5 asignaciones.

Cuando el número de asignaciones de transporte resulta menor que m+n-1, se califica como una solución

degenerada. En contraste con la tabla simplex, en la tabla de transporte no se visualizan las variables básicas

igual a cero, pues al igual que en las no básicas la celda se presenta vacía, pero en paso 6 del algoritmo de

transporte se identifican las variables básicas, aun siendo nulas.

Paso 3. Determine una matriz de costos C* i j:

Figura 4-19. Costos C*ij, variables duales, con solución degenerada, en método esquina NO del ejemplo

TRANSNOBAL33.

218

Paso 4. Cálculo de las variables duales V j y U i. Con la solución degenerada se presenta la primera

dificultad para calcular el valor de las variables duales. Observe que la solución al sistema de ecuaciones

presenta dos grados de libertad, pues al tener sólo 4 costos en la matriz C* i j, sólo se pueden formar 4

ecuaciones para resolver un total, (3 variables U i más 3 variables V j) de 6 incógnitas duales. Esta dificultad

se supera haciendo una asignación ficticia de valor infinitamente pequeño, en la celda más adecuada para

completar el cálculo de las variables duales. Generalmente se coloca en una celda incluida en un renglón o

columna, en que el envío satisface a la vez oferta y demanda. Pero con la práctica, el alumno debe notar en la

propia matriz, la asignación faltante que complete la solución del sistema. En este ejemplo en particular, para

resolver el sistema, es igual colocar en cualquiera de las 5 celdas vacías, aunque aquí se optó por la celda (2,

1) para completar el cálculo con U1 = 0.

Figura 4-20. Valores a variables duales, caso solución degenerada, ejemplo TRANSNOBAL33.

El sistema de 5 ecuaciones correspondientes a los 5 costos C*i j de la matriz es:

Figura 4-21. Sistema de 5 ecuaciones correspondiente a los costos C*ij del ejemplo TRANSNOBAL33.

Con este conjunto de valores para V j y U i, se tiene una, de la infinidad de soluciones al sistema con dos

grados de libertad, obtenida con el método de la esquina NO. También se puede calcular sobre la tabla de

transporte la misma solución o bien otra cualquiera, mostrada en la siguiente tabla, con la seguridad de ser

igualmente útil en lo que sigue del algoritmo. Inicie la solución con V1 = 0.

Figura 4-22. Otro valor a variables duales, caso de solución degenerada, en el problema ejemplo

TRANSNOBAL33.

Paso 5. Calcule los parámetros Z i j - C i j = C i j - U i - V j para cada celda vacía.

219

Figura 4-23. Cálculo de los parámetros Zij del ejemplo TRANSNOBAL33.

Paso 6. Cuando uno o más parámetros Z i j - C i j, resulta negativo, significa que la solución actual no es

óptima y se procede al cambio de base, declarando como variable entrante VE, la que corresponde al valor Z

i j - C i j más negativo. Se inicia asignando una cantidad de unidades en la celda de la variable entrante (

X13 = en el ejemplo). Esto provoca un desequilibrio en la cantidad de unidades tanto en la oferta como

en la demanda bj correspondientes a dicha celda; entonces se procede a balancear nuevamente el problema,

sumando y restando la misma cantidad en las celdas llenas (básicas) de la tabla, que sean convenientes,

formando un circuito de compensación que equilibre los envíos y recupere la factibilidad perdida. El

circuito de equilibrio que se forma es único para cada problema y puede tener cualquiera de las siguientes

formas, ya sea en dirección de las manecillas de reloj o bien en dirección opuesta.

Figura 4-24. Forma posible en circuito de equilibrio al cambio solución básica.

El algoritmo de transporte, del paso 3 al 6, se repite hasta que los parámetros del paso 5 resulten no negativos;

esta es la señal de la optimización.

Figura 4-25. Cambio de base, inicia en celda (1, 3), balancea en circuito, ejemplo TRANSNOBAL33.

=Mínimo {de todas las asignaciones, donde se resta }, = Mínimo {25, 55} = 25.

Sustituyendo el valor de = 25 en la tabla de transporte, se tiene la nueva solución:

Figura 4-26. Nueva solución al cambiar de base con =25 en circuito, ejemplo TRANSNOBAL33.

220

Observe que la nueva solución ya no es degenerada, pues con el cambio de base se tiene ahora un total de 5

asignaciones, que no requiere el uso de .

Valor de la nueva solución: Z = 5(15) + 12(25) + 8(25) + 11(30) + 0(5) = 905

También se calcula así: Z = Z anterior + (Z ij - C ij) = 930 - 1(25) = 905

Para verificar que Z es óptimo se aplica el algoritmo de transporte desde el paso 3 y se calculan los parámetros

(Z i j - C i j) a las celdas vacías:

Paso 3.- Matriz de costos C* i j.

Paso 4.- Cálculo de las variables duales V j y U i.

Figura 4-27. Valor a variables duales, caso solución no degenerada, ejemplo TRANSNOBAL33.

Paso 5.- Determine los parámetros Z i j - C i j en cada celda vacía de la tabla.

Figura 4-28. Cálculo de los parámetros Zij - Cij del ejemplo TRANSNOBAL33.

óptimo: Z = 905; Variables básicas: X12=15, X13=25, X21=25, X23=30, X33 =5

Variables no básicas: X11=0, X22=0, X31=0, X32=0

Ejemplo 4-4. Aplica algoritmo de transporte (TRANSNOBAL34).

Dado el siguiente problema no balanceado de distribución de unidades, en que M significa un costo muy alto. a)

Formule el modelo de programación lineal. b) Calcule una primera solución básica factible con los métodos esquina

NO y Vogel. c) Optimice con algoritmo de transporte partiendo de la solución obtenida aplicando método esquina

NO.

221

Figura 4-29. Tabla inicial de transporte con datos del problema ejemplo TRANSNOBAL34.

a) Modelo de programación lineal. Función objetivo:

Mínimo Z = 7X11 + MX12 + 2X13 + 5X21 + 8X22 + 10X23 + 6X31 + 4X32 + 3X33

Paso 1. Balancee el problema entre oferta y demanda, aplica método de transporte

oferta = 300 > 250 = demanda Requiere balanceo con un destino b4 ficticio:

oferta - demanda bj = 300 - 250 = 50 = b4 ficticio; y costos C i 4 = cero.

Figura 4-30. Tabla de transporte balanceado (paso 1) del problema ejemplo TRANSNOBAL34.

b) Primera solución básica y factible, aplica el método de transporte:

Paso 2.

222

Figura 4-31. Envíos asignados del método de Vogel en ejemplo TRANSNOBAL34.

Solución de Vogel : Z = 2(100) + 5(50) + 0(50) + 4(100) = 850.

Anote que la solución con método Vogel es degenerada, pues debe tener, a lo más, m +n-1=3+4-1=6

transportes, pero sólo son 4 las variables básicas a la vista.

Paso 2.- b) Primera solución básica y factible, aplica el método de transporte:

Figura 4-32. Envíos asignados del método de esquina noroeste en ejemplo TRANSNOBAL34.

La solución con el método de la esquina noroeste es no degenerada, pues tiene: m + n - 1 = 3 + 4 - 1= 6

asignaciones que forman las variables básicas siguientes:

X11 =50, X12 =50, X22 =50, X23 =50, X33 =50, X34 =50.

Las variables no básicas son: X13 = X14 = X21 = X24 = X31 = X32 = cero

La solución NO es: Z=7(50) + M (50) + 8(50) + 10(50) + 3(50) + 0(50)= 1400 + 50M

Paso 3. Matriz de costos C* i j.

Paso 4. Calcule las variables duales V j y U i.

223

Figura 4-33. Valor a variables duales, caso solución no degenerada, ejemplo TRANSNOBAL34.

Paso 5. Cálculo de los parámetros Z i j - C i j

Figura 4-34. Cálculo de parámetros Zij - Cij del ejemplo TRANSNOBAL34.

La presencia de valores negativos para los parámetros del paso 5, indica que la solución actual no es óptima y

se hace necesario un cambio de base.

Paso 6.- Se inicia por la elección de la variable entrante (VE) X13, debido a que presenta el parámetro más

negativo; en la celda (1, 3) se asigna un transporte de unidades y se procede a equilibrar ofertas y demandas,

formándose un circuito de compensaciones (equilibrio) como se observa en la tabla siguiente:

Figura 4-35. Cambio de base, inicia en celda (1, 3), equilibra en circuito, ejemplo TRANSNOBAL34.

En donde: =Mínimo (50, 50) = 50. Sustituyendo este valor, las asignaciones son:

Figura 4-36. Nueva solución al cambio de base con =50 en circuito, ejemplo TRANSNOBAL34.

La nueva solución es degenerada pues ahora sólo tiene 5 asignaciones en comparación a los 6 transportes de

la solución anterior; el nuevo valor de la función es:

224

Z = 7(50)+2(50)+8(100)+3(50)+0(50) = 1400

También: Z = Z anterior + (Z i j - C i j) = (1400+ 50M) + (-M) 50 = 1400

Pasos 3 y 4.- Debido a la degeneración se asigna (infinitamente pequeño) en una celda (3, 2), a manera de

conseguir resolver las variables duales del sistema:

Figura 4-37. Valor a variables duales, caso solución degenerada, ejemplo TRANSNOBAL34.

Paso 5.- Cálculo de parámetros Zij-Cij en celdas vacías (variables no básicas):

Figura 4-38. Cálculo de parámetros Zij-Cij del ejemplo TRANSNOBAL34.

En paso 5 aún se tienen valores negativos, entonces la solución no es óptima.

Paso 6.- La celda no básica (2,1) resulta con el valor más negativo, el cual significa bajar en 7 el costo actual,

por cada unidad asignada en (2,1). Entonces la variable X 21 = unidades, causa desequilibrio que se elimina

con la suma y resta de en celdas básicas, formando un circuito.

Figura 4-39. Cambio de base, inicia en celda (2, 1), equilibra en circuito, ejemplo TRANSNOBAL34.

= Mínimo {50, 100, 50} = 50, se sustituye el valor de en el circuito de la tabla:

225

Figura 4-40. Nueva solución al cambio de base con =50 en circuito, ejemplo TRANSNOBAL34.

La solución es degenerada: Z = 2(100) + 5(50) + 8(50) + 4(50) + 0(50) = 1050;

También: Z = Z anterior + (Z i j - C i j) = 1400 + (-7) 50 = 1050

Pasos 3 y 4.- Ahora es necesario asignar en celda (1, 4) para la degeneración, aunque también podría ser en

otra celda que logre el propósito de resolver el sistema:

Figura 4-41. Valores a variables duales, caso solución degenerada, ejemplo TRANSNOBAL34.

Paso 5.- Calcule los parámetros (Z i j - C i j) en celdas vacías (no básicas) para verificar la mejoría de la

solución actual:

Figura 4-42. Cálculo de parámetros Zij-Cij del ejemplo TRANSNOBAL34.

Paso 6.- La solución aún no es óptima, el parámetro negativo indica que X24 debe entrar a la base, pues por

cada unidad que se asigne en la celda no básica ficticia (2,4), se abatirá 4 unidades el costo de transporte. Con

el envío de unidades en tal celda se inicia el circuito de balanceo, mostrado en tabla con suma y resta de en

celdas básicas.

Figura 4-43. Cambio de base, inicia en celda (2, 4), equilibra en circuito, ejemplo TRANSNOBAL34.

= Mínimo ( 50, 50) = 50, valor sustituido en el circuito de la tabla anterior para tener la solución mostrada

enseguida:

226

Figura 4-44. Nueva solución al cambio de base con = 50 en circuito, ejemplo TRANSNOBAL34.

La nueva solución coincide a la obtenida con el método de Vogel en un valor para

Z = Z anterior + ( Z i j - C i j ) = 1050 + (-4)50 = 850

La última solución sigue degenerada con las variables básicas ya anotadas en la solución de Vogel, más la

variable X14 = , que para fines prácticos debe ser interpretada como X14 = 0. Ahora la aplicación del algoritmo

de transporte obliga a utilizar el artificio de asignar 1 y 2, para resolver las 7 variables duales.

Paso 3 y 4.- Matriz de costos y cálculo de variables duales:

Figura 4-45. Valor a variables duales, solución degenerada con doble , ejemplo TRANSNOBAL34.

Paso 5.- Verificar optimalidad con los parámetros Z i j - C i j en celdas vacías.

Figura 4-46. Verificación de optimalidad con los parámetros Zij-Cij del ejemplo TRANSNOBAL34.

Todos los parámetros en paso 5 resultan no negativos, esto significa que la última solución es óptima con un

valor coincidente a la de Vogel, o sea:

Z óptima = 850; Variables básicas aparentes: X12 = 100, X21 = X24 = 50, X32 = 100

Variables básicas no aparentes: X14 = 0, X34 = 0 (localizadas en celda de )

Variables no básicas: X11 = X12 = X22 = X23 = X31 = X32 = 0

Ejemplo 4-5. Aplica algoritmo de transporte al inventario en plan de producción (TRANSPLAN).

227

En el área de producción debe haber planeación para coordinar la capacidad del proceso de producción con la demanda

del producto final. Un ejemplo de esta necesidad ocurre en productos de temporada que frecuentemente deben

mantenerse en inventario, ocasionando costos de inversión, almacén y deterioro. Todos ellos se pueden expresar como

porcentaje de costos de producción o como costos unitarios por cada periodo en que se mantenga el inventario.

Esta situación se puede plantear como un problema de transportar la capacidad de producción a través del tiempo,

considerando las capacidades de producción por periodo de tiempo como si fueran ofertas, por otro lado los

requerimientos de cada periodo se convierten en demandas.

La siguiente tabla tiene la información de un producto temporal para tres meses del año. Anote que la capacidad de

300 y 100 unidades, trabajando tiempo normal y extra respectivamente, se mantiene constante, mientras que la

demanda aumenta a 600 unidades en navidad, la cual no se puede cumplir utilizando exclusivamente la capacidad de

producción de diciembre.

Figura 4-47. Información del producto temporal para 3 meses, ejemplo TRANSPLAN.

Aquí se hace necesario el uso de inventario que transporte la capacidad previa, hacia el futuro con objeto de satisfacer

la demanda de navidad.

Los costos unitarios de producción son 50 y 70 dólares en tiempo normal y extra, respectivamente; el costo unitario

del inventario es 5 dólares por mes. Los costos de producción y de inventario se combinan en la siguiente tabla de

transporte; por ejemplo, el costo para satisfacer parte de la demanda de diciembre utilizando producción en tiempo

normal del mes de noviembre es 50 + 5 = 55 por cada unidad. Anote que se asigna un costo M muy alto, a las celdas

que representan satisfacer la demanda con atraso o capacidad futura.

Paso 1.- Debido a que la oferta (capacidad), suma 1200 y la demanda, suma 1100, es necesario considerar una

demanda ficticia por la diferencia de 100 unidades, como se observa en la siguiente tabla de transporte.

Figura 4-48. Balance capacidad-demanda, costo de transporte al inventario para demanda futura de

temporada, ejemplo TRANSPLAN.

Paso 2.- Primera solución básica factible con método de Vogel, ejemplo TRANSPLAN.

228

Figura 4-49. Primera solución básica factible con método de Vogel, ejemplo TRANSPLAN.

La solución con el método de Vogel resulta en sólo 7 asignaciones, por lo cual se califica como degenerada, pues son

menos de: m + n - 1= 6+4-1= 9 celdas llenas.

Variables básicas: X11=200, X13=100, X23=100, X32=300, X43=100, X53=300, X64=100. En las celdas vacías hay dos

variables básicas confundidas con las variables no básicas, todas ellas con un valor cero.

Antes de probar esta solución para buscar la óptima, se calcula el costo de la producción que arroja el método Vogel:

Costo Vogel = 50(200)+60(100)+80(100)+50(300)+75(100)+50(300)+0(100)

Costo Vogel = 10,000 + 6,000 + 8,000 + 15,000 + 7,500 + 15,000 = 61,500

Ahora es necesario un artificio de asignaciones infinitamente pequeñas 1 y 2 en celdas adecuadas para calcular el

conjunto de diez variables (U i + V j) duales.

Paso 3. Valor a variables duales, solución degenerada con doble .

229

Figura 4-50. Valor a variables duales, solución degenerada con doble , ejemplo TRANSPLAN.

Paso 5.- Cálculo de los parámetros Z i j - C i j para valorar las celdas vacías:

Figura 4-51. Cálculo de parámetros Zij-Cij para celdas vacías, ejemplo TRANSPLAN.

Según los valores del paso 5, la variable X24 debe entrar a la base.

Paso 6.- Cambio de base, al formar circuito señalado con otro color en la siguiente tabla:

= mínimo (100, 100) = 100, se sustituye en la tabla de transporte.

Con el nuevo costo = costo anterior + (Z24 - C24) = 61,500 + 100 (-10) = 60,500

Figura 4-52. Cambio de base, inicia en celda (2,4), equilibra en circuito, ejemplo TRANSPLAN.

Se arregla la tabla y se valora la siguiente base con el algoritmo desde los pasos 3 y 4. Como la solución básica factible

actual continúa siendo degenerada con sólo 7 variables básicas que es menor a (m + n - 1) = (6 + 4 - 1) = 9 asignaciones,

se hace necesario utilizar nuevamente envíos infinitamente pequeños 1 y 2 en las celdas convenientes. Se conserva

2 en la celda (1, 2), pero se cambia 1 a la (4, 4), pues la colocación en el renglón 6 se eliminó en el cambio de base,

pero la columna 4 ficticia es la alternativa para buscar la variable básica nula.

230

Figura 4-53. Nueva solución al cambio de base con =100 en circuito, ejemplo TRANSPLAN.

Paso 5.- Cálculo de los parámetros Z i j - C i j en celdas vacías.

Figura 4-54. Cálculo de parámetros Zij-Cij para celdas vacías, ejemplo TRANSPLAN.

Paso 6.- No necesario pues en paso 5 no hay valores negativos, es óptimo.

El problema de planeación de la producción para surtir la demanda de temporada ya anotada, optimiza con las

siguientes variables básicas:

X11=200, así la capacidad normal de octubre satisface la demanda de octubre.

X13=100, significa guardar 100 unidades complemento de la capacidad normal de octubre (300), para satisfacer parte

de la demanda de diciembre.

X32=300, la capacidad normal de noviembre satisface la demanda de noviembre.

X43=100, guardar 100 de capacidad extra de noviembre, para satisfacer diciembre.

X53=300, la capacidad normal de diciembre, se destina al mismo mes.

231

X63=100, la capacidad extra de diciembre es para completar las 600 de diciembre.

X24=100, la capacidad extra de octubre no se usa, es para la demanda ficticia.

X12 = 2 = cero, X44 = 1 = cero, así deben interpretarse para fines prácticos como variables básicas nulas, que

completan la solución óptima degenerada, con sólo siete asignaciones de valor estrictamente positivo, vea Figura 4-

55:

Figura 4-55. Tabla óptima del problema de planeación en producción de ejemplo TRANSPLAN.

El costo de la producción y del inventario necesario para asegurar que la demanda del último trimestre sea satisfecha,

es de 60,500 dólares, calculado antes.

4.3.2. Problema de transbordo

Como una extensión necesaria del problema de transporte en el que sólo se consideran transportes directos entre dos

clases de nodos, origen y destino, se presenta ahora el problema de transbordo, en el cual se considera que las unidades

pueden fluir entre cualquier par de nodos en las combinaciones posibles siguientes: de nodo de suministro a otro que

también surte, de nodo demandante a otro que también demanda, desde un nodo de transbordo a otro con la misma

función, de un nodo de transbordo a un destino, e incluso de un origen a un destino. Se generaliza así la red de

distribución.

Definición: Dada una red de n nodos (i), de los cuales, algunos son orígenes con oferta de un cierto producto, algunos

otros son transbordos y destinos, que demandan el mismo producto. El objetivo es satisfacer tal demanda con la

capacidad F i j de ramas (i, j) de conexión, a expensas de la oferta de los orígenes, cumpliendo el objetivo de costo

mínimo.

Ejemplo 4-6. Red a transbordo, oferta = demanda sin capacidad (TRANSBOBAL).

232

Figura 4-56. Problema de transbordo balanceado, red ejemplo TRANSBOBAL.

Equilibrio: oferta = 250 + 150 = 400 = 70 + 60 + 180 + 90 = demanda

Modelo de programación lineal, red balanceada, no capacitada (TRANSBOBAL)

Primera parte del modelo, definición de variables:

Sea: X i j = Unidades enviadas del nodo (i) al nodo (j), a través de la rama (i, j).

C i j = Costo de enviar una sola unidad utilizando la rama (i, j)

Segunda parte del modelo, función objetivo:

Mínimo Z =70 X13 + 110 X15 + 90 X23 + 100 X 24 + 30 X 35 + 50 X36 + 40 X46

Cuarta parte: Condición de no negatividad para variables: Todas las X i j >= 0

Con las sumas de, oferta y demanda iguales, la suma de coeficientes en cada columna (i, j) y el lado derecho de

las restricciones, debe resultar cero.

Ejemplo 4-7. Red de transbordo con capacidades en ramas, sin balancear, pues oferta y demanda son

desiguales, (TRANSBONOBAL).

233

Figura 4-57. Red transbordo capacitada, no balanceada, ejemplo TRANSBONOBAL.

Programación lineal de una red, capacitada, no balanceada (TRANSBONOBAL)

Primera parte del modelo, definición de variables:

Sea: X i j = Unidades enviadas del nodo (i) al nodo (j), a través de la rama (i, j).

Segunda parte del modelo, función objetivo:

Mínimo Z = 70 X13 + 110 X 15 + 90 X 23 + 100 X 24 + 30 X 35 + 50 X 36 + 40 X46

Tercera parte del modelo:

Cuarta parte: Condición de no negatividad para las variables: Toda X i j >= 0.

Observaciones al problema de transbordo

234

El problema de transbordo es importante porque su manejo conceptual es suficiente para entender otros problemas de

flujo en redes tales como el problema simple de transporte, ruta mínima y el problema de flujo máximo. El modelo

matemático de programación lineal resulta con una estructura muy ordenada, particular para todos los problemas que

se puedan modelar mediante un gráfico de red, de esta manera las observaciones siguientes son características:

1. Todo problema de transporte que se modela mediante un gráfico de red, puede a su vez modelarse

matemáticamente con programación lineal.

2. El modelo de programación lineal correspondiente a una red de transbordo, debe definir una variable X i j para

cada rama (i, j) de la misma y por lo tanto, la función objetivo de costo, debe contener tantos términos como

ramas se tengan.

3. El modelo de programación lineal debe tener, además, restricciones de capacidad por cada rama de la red;

también debido a la importante propiedad de conservación de flujo para las redes de transporte, deben

plantearse tantas restricciones, como nodos deban cumplir dicha propiedad.

4. La estructura matemática de la programación lineal correspondiente a una red de transporte resulta muy

especial, de tal manera que las restricciones de conservación de flujo, ordenadas matricialmente, resultan

en columnas ( i , j ), las cuales contienen un coeficiente (+1) y un (-1) verificando la suma cero para cada

una de ellas; e inclusive, para la columna de los términos independientes a la derecha de las restricciones,

también se verifica suma cero, siempre y cuando se trate de un problema balanceado con respecto a oferta y

demanda.

5. La solución óptima del problema de transbordo debe resultar de valor entero, siempre y cuando las constantes

del modelo sean enteros.

6. Si un problema se puede modelar, primeramente con un gráfico de red, entonces se tiene la posibilidad de

resolverlo mediante uno de los varios algoritmos específicos para redes que resultan altamente eficientes

(inclusive más que el algoritmo simplex), gracias a la estructura especialmente sencilla de la programación

lineal. Aprovechando tal circunstancia se ha logrado resolver problemas muy grandes conteniendo miles de

variables y restricciones.

7. El problema de transbordo se puede resolver con el conocido algoritmo simplex, utilizando alguno de los

programas de cómputo comercial de programación lineal con la que se formule el problema; también se puede

intentar la optimización del mismo utilizando el Algoritmo de Transporte, que es un simplex simplificado,

haciendo la conversión a la tabla usual, utilizando artificios de existencia de unidades en todos los nodos. Otro

método es construir la red de distribución y determinar el costo mínimo desde los nodos de suministro hasta

los otros nodos y considerar tales costos como unitarios en las respectivas celdas de la tabla de transporte.

Conversión de un problema de transbordo para resolver con algoritmo simplex simplificado del problema de

transporte.

Considere la red de transbordo no balanceada entre oferta y demanda del ejemplo TRANSBONOBAL para resolver

con el algoritmo simplex de transporte ya visto.

Primero es necesario hacer la siguiente conversión a la tabla usual de transporte y luego se procede con la aplicación

del algoritmo.

235

Figura 4-58. Tabla de conversión a problema de transporte del ejemplo TRANSBONOBAL.

M = coeficiente de costo muy grande en las celdas de rutas no válidas.

oferta = 250 + 170 = 420 > 400 = 70 + 60 + 180 + 90 = demanda

oferta - demanda = 420 - 400 = 20 = demanda # 7 (ficticia).

Para la conversión de un problema de transbordo a uno de transporte, se considera que cada uno de los nodos

de transbordo 3 y 4, pueden recibir y enviar la totalidad de la oferta, procediendo de la siguiente manera:

Máximo { oferta = 420, demanda = 400} = 420

Las 420 unidades son lo máximo que puede pasar por un nodo de transbordo del problema ejemplo y se considera

como la cantidad que amortigua la demanda en competencia.

4.3.3. Modelo de asignación pura.

Considere un caso especial del problema de transporte en que se cumple: m = n; es decir, el número de orígenes

es igual a los destinos; además = b j =1.

El modelo así definido es asignación pura, se refiere a la acción de asignar uno a uno; esto es, en forma biunívoca. Se

entiende asignar n candidatos a n acciones requeridas, conociendo la medida de desempeño, que puede ser costo,

beneficio o rendimiento. El problema consiste en asignar de forma idónea para conseguir el mejor resultado general.

Por ejemplo, la asignación de personas a operar máquinas, para las cuales se tiene la información de la capacidad

individual al trabajar con ellas, se acepta como asignación pura de operarios a máquinas. Otro ejemplo, se refiere a la

asignación de competidores para desempeñarse en la competencia de algún evento deportivo, desde luego, con

diferente eficiencia individual; aquí también se asigna un competidor para ocupar cada relevo de la carrera o cada

posición en un juego colectivo.

C i j = costo o valor del desempeño individual de i en la acción j.

Sujeta a las restricciones:

236

X i j = 1; desde i = 1 hasta i = n; de j = 1 hasta j= n.

Figura 4-59. Matriz de asignación pura.

MÉTODO HÚNGARO para la asignación.

La más conocida técnica de solución para el problema de asignación pura es el método húngaro, desarrollado a partir

del teorema que demostró el matemático húngaro König en 1916. Este método utiliza la propiedad de reducción de

matrices para reducir la matriz original de costo, hasta que los costos C i j asociados con la asignación óptima,

sean cero y todos los otros costos sean no negativos.

En cada iteración del método húngaro, se reduce la matriz de tal manera que haya al menos un cero en cada renglón

y columna, comprobando con el teorema de König si se ha alcanzado la solución óptima. Si el número mínimo de

renglones y/o columnas necesarios para cubrir todos los ceros es n, entonces existe una asignación óptima (no

necesariamente única).

Ejemplo 4-8. Método Húngaro en la asignación (ASIGNA1).

La siguiente matriz contiene los costos para operar n=4 máquinas, por n=4 personas así calificadas en su empresa.

Optimice la asignación idónea.

Figura 4-60. Matriz de costos en ejemplo ASIGNA1.

Paso 1 .Seleccione en cada renglón i de la matriz, el menor costo C i j, (menor C i j = U i), luego réstelo en cada

elemento del renglón.

Figura 4-61. Paso 1 Método Húngaro, ejemplo ASIGNA1.

237

Paso 2. Seleccione en cada columna j de la matriz resultante en el paso 1, el costo menor C i j, (menor Cij=Vj) y

réstelo en cada elemento de la misma columna.

Figura 4-62. Paso 2 Método Húngaro, ejemplo ASIGNA1.

Paso 3.Sombree los renglones y/o columnas de la matriz, de tal modo que sean los mínimos necesarias para cubrir

todos los ceros.

Figura 4-63. Paso 3 Mínimo sombreado de renglones y/o columnas cubriendo todos los ceros en ejemplo

ASIGNA1.

Paso 4. Seleccione entre los costos no sombreados, el número menor C i j, (= U i j) o bien, el menor C i j, (= V i j),

y réstelo a todos los costos no sombreados; después, sume el mismo a los costos ubicados en la intersección de los

renglones y columnas sombreados. Este paso se repite hasta lograr la solución óptima.

Figura 4-64. Paso 4 Método Húngaro, (mínimo Cij no sombreado) en ejemplo ASIGNA1.

Se tiene la solución óptima cuando el mínimo necesario de renglones y columnas sombreadas para cubrir los ceros es

n. En este problema el mínimo es n =4.

Figura 4-65. Paso 4 Método Húngaro, renglones y/o columnas sombreados necesarios para cubrir los ceros n

= 4, ejemplo ASIGNA1.

238

Entonces la asignación óptima es la que muestra la tabla siguiente:

Figura 4-66. Asignación óptima en ejemplo ASIGNA1.

Solución óptima: X11 = 1, X23 = 1, X32 = 1, X44 = 1

Z = C11 X11 + C23 X23 + C32 X32 + C44 X44 = 1(1) + 10(1) + 5(1) + 5(1) = 21

En la solución óptima, la suma de las costos Ui restados de renglones i en paso 1, más las costos V j restados de

columnas j en paso 2, más el costo U i j o V i j, restado y / o sumado, en paso 4, proporciona el correspondiente valor

óptimo. Así el costo es:

Z óptimo = U i + V j + U i j + V i j, para toda i, para toda j.

U i = U1 + U2 + U3 + U4 + U32 = 1 + 7 + 4 + 5 + 1 = 18

V j = V1 + V2 + V3 + V4 = 0 + 0 + 3 + 0 = 3

U i + V j = 18 + 3 = 21

Ejemplo 4-9. Método Húngaro en la asignación (ASIGNA2).

La siguiente matriz muestra costos C i j de n = 5 candidatos i (i = 1,2,...,5) así calificados, en el desempeño de n = 5

actividades j (j = 1,2,..,5). Con el método húngaro calcule la asignación óptima.

Figura 4-67. Matriz de costos en ejemplo ASIGNA2.

Paso 1. Reste el menor (U i) de los costos C i j en cada renglón:

239

Figura 4-68. Paso 1 Método Húngaro en ejemplo ASIGNA2.

Paso 2.- Reste el menor (V j) de los costos C i j en cada columna:

Figura 4-69. Paso 2 Método Húngaro en ejemplo ASIGNA2.

Paso 3.-Sombree los renglones y columnas de la matriz, de tal modo que sean los mínimos necesarios para cubrir

todos los ceros. La asignación es óptima con n = 5 renglones y/o columnas. De lo contrario se continúa el método con

el paso 4.

Paso 4.- Selecciones entre los costos no sombreados, el número menor C ij, (= Uij) o bien, el menor Cij, (= Vij),

y réstelo a todos los costos sin sombrear; después, sume el mismo a los costos ubicados en la intersección de los

renglones y columnas sombreados. Repita este paso hasta conseguir n = 5 (renglones y/o columnas sombreados), la

solución óptima.

Figura 4-70. Paso 4 Método Húngaro en ejemplo ASIGNA2.

En la asignación de la tabla anterior solo se sombrean 3 renglones y una columna con ceros, pero se necesitan 5,

entonces se repite el paso 4 hasta conseguirlo.

Figura 4-71. Paso 4 Método Húngaro. Renglones y columnas sombreados n = 4, ejemplo ASIGNA2.

240

Figura 4-72. Paso 4 Método Húngaro. Se logra sombrear n = 5 renglones y columnas, ejemplo ASIGNA2.

La última asignación resulta con los 5 renglones y columnas sombreadas cubriendo los ceros de la tabla.

Aquí se detiene el proceso y se interpreta la asignación óptima localizando, al menos un cero en cada renglón y

en cada columna. Estos ceros indican el costo idóneo asignado a la persona i en el desempeño de la actividad j, como

se muestra en la siguiente matriz.

Figura 4-73. Asignación óptima en ejemplo ASIGNA2.

Asignación óptima: X15 = 1, X23 = 1, X32 = 1, X44 = 1, X51 = 1

Z óptima = C15X15 + C23X23 + C32X32 + C44X44 + C51X51

Z óptima = 3(1) + 2(1) + 4(1) + 3(1) + 9(1) = 21

Z óptimo = U i + V j + U i j + V i j = 3+2+2+2+6+0+2+0+1+0+2+1 = 21

Ejemplo 4-10. Método Húngaro en la asignación (ASIGNA3).

La siguiente matriz muestra costos C i j de n = 4 candidatos i (i = 1, 2,..., 4) así calificados, en el desempeño de n=4

actividades j (j = 1, 2,.., 4). Con el método húngaro calcule la asignación óptima.

241

Figura 4-74. Tablas del ejemplo ASIGNA3.

Asignación óptima: X14 = 1, X22 = 1, X33 = 1, X41 = 1

Z óptima = C14 X14 + C22 X22 + C33 X33 + C41 X41

Z óptima = 6(1)+1(1)+2(1)+1(1) = 10; otra asignación óptima del problema es:

242

Figura 4-75. Asignación óptima en ejemplo ASIGNA3.

Asignación óptima: X13 = 1, X22 = 1, X34 = 1, X41 = 1

Z óptima = C14 X14 + C22 X22 + C33 X33 + C41 X41 = 7(1) +1(1) +1(1) +1(1) = 10

En ambas cumple: Z óptimo= Ui + Vj + Uij + Vij = 5+1+1+1+0+0+1+0+1 = 10

4.4. Redes de flujo

Los problemas relacionados con la comunicación de diferentes lugares, en donde existe la necesidad de enviar y /o

recibir unidades (bienes, servicios, gente, información), se pueden analizar como modelos de red con flujo de tales

unidades.

La estructura matemática del modelo obtenido a partir de una red de flujo, es muy especial y ha facilitado el desarrollo

de algoritmos de solución, específicos de esos problemas. La aplicación de dichos algoritmos de redes de flujo, es la

oportunidad para comprobar su gran eficiencia en cuanto a labor de cálculo, comparados con el simplex que así se

reconoce, eficiente y, además versátil. Ahora se presenta la aplicación de redes de flujo y algoritmos a problemas

importantes en el transporte de unidades.

4.4.1. Problema de ruta mínima

Definición: Dada una red de n nodos (i) conectadas por ramas (i, j), asociadas a un costo C i j; el objetivo es

determinar n-1 rutas mínimas, desde un nodo (i) fijado como origen, hasta los restantes n-1 nodos

4.4.1.1. Algoritmo Dijkstra de etiquetas, ruta mínima en red no orientada

El algoritmo de Dijkstra para ruta mínima utiliza la etiqueta general: (# Identificación del nodo precedente,

acumulación del costo) que se coloca en cada uno de los nodos de la red, ya sea con carácter permanente P o bien

temporal t. Los pasos del algoritmo son los siguientes:

1. El nodo origen siempre se etiqueta con: ( -, 0 ) P

2. A partir del último nodo con etiqueta permanente, se etiquetan temporalmente (t) todos los nodos sin etiqueta

permanente, conectados directamente al mismo.

3. Se inicia la revisión de las etiquetas temporales (t), en los nodos que tengan dos etiquetas eliminando la de

costo mayor, a continuación se comparan las temporales que aún quedan, con el criterio de costo menor se

elige una para permanencia. En caso de empate se hacen permanentes las que estén en esa condición.

4. Se repite el procedimiento desde el paso 2, mientras existan nodos t para hacerlos P y se termina ordenando

en tabla, las n-1 rutas mínimas encontradas.

Ejemplo 4-11. Ruta mínima, aplica algoritmo de Dijkstra (RUMINOD1).

243

La siguiente red (Figura 4-76) es no orientada, con un total de ocho nodos de los cuales se fija como origen al nodo

#8. Determine las rutas mínimas desde el origen hasta los 8 - 1 = 7 nodos restantes, utilizando el algoritmo de Dijkstra.

Figura 4-76. Red no orientada del ejemplo RUMINOD1.

Se inicia la aplicación del algoritmo en el paso 1 colocando en nodo origen #8 la etiqueta ( -, 0 )P, el cual tiene como

nodos directos a #5, #6 y #7; se procede en el paso 2 al etiquetado temporal con: # 5, ( 8, 0 + 14 = 14 )t; # 6, ( 8, 0+7

= 7 ) t; # 7, ( 8, 0 + 8 = 8 ) t; los otros nodos ( 1, 2, 3, 4 ) aún no se etiquetan. Sólo los nodos # 5, # 6 y # 7, tienen

etiqueta temporal, en revisión de paso 3 resulta: mínimo costo respectivo (14, 7, 8) = 7 C 86 = 7, lo que significa

que la etiqueta de nodo # 6 pasa a permanente escribiendo así: # 6, (8, 7) P

Se repite desde paso 2, partiendo de nodo # 6 (recién anotado P) que tiene como nodos directos a # 2, 3, 4, 5, 7

resultando las temporales t siguientes: #2,(6, 7+15=22); #3,(6, 7+8=15); #4,(6, 7+13=20); #5,(6, 7+6=13); #7,(6,7+9

=16). En nodos: #5 y 7, se elimina (8,14)t y (6,16)t, pues tienen dos etiquetas. En paso 3 se revisa: mínimo costo en

temporal (22, 15, 20, 13, 8) = 8 C 87 = 8, significa que la etiqueta del nodo #7 debe pasar a permanente, anotando

así: #7 (8, 8) P.

Hasta ahora, los nodos #8, #6 y #7 tienen etiqueta permanente, los nodos restantes (excepto el #1) tienen etiqueta t

temporal. Se inicia una nueva iteración del algoritmo de Dijkstra desde el paso 2, partiendo del nodo #7, último en

pasar a permanencia, el cual tiene como único nodo directo el #4 (pues los nodos #6 y 8 ya tienen permanencia),

procediendo con su etiqueta temporal #4, ( 7, 8+11=19 ) t. En primera revisión de paso3, resulta eliminada la etiqueta

temporal #4, (6, 20) t. La siguiente revisión resulta: mínimo costo (22, 15, 19, 13) = 13 C 6 5 = 6, significa, la

etiqueta de nodo #5 pasa a permanente señalando así: # 5 (6, 13) P.

Para continuar conviene anotar que los nodos # 8, 6, 7, 5, tienen permanencia, los nodos # 2, 3, 4, tienen temporal, el

nodo # 1 aún no se etiqueta. Partiendo del nodo # 5 se observa que su único nodo directo para etiqueta temporal es el

# 2, ya que en los nodos # 6 y # 8, hay permanencia, entonces # 2, ( 5, 13 + 5 =18 ) t; Aquí mismo se elimina la

temporal # 2 ( 6, 22 ) t; se procede a la revisión comparando temporales: mínimo costo ( 18, 15, 19 ) = 15 C 6 3 =

8, significa que la etiqueta en nodo #3 pase a permanente anotando: # 3 ( 6, 15 ) P.

Ahora los nodos # 8, 6, 7, 5, y 3, tienen permanencia; los nodos # 2 y # 4, tienen temporal; el # 1 aún no se etiqueta.

El nodo # 3, tiene directos a #1, #2, # 4 y quedan con t: # 1,(3, 15+7=22 ) t; # 2,( 3, 15+10=25) t; # 4(3, 15+4=19) t;

toca eliminar la temporal duplicada # 2 ( 3, 25 ) t; con respecto al nodo # 4, se tienen dos etiquetas pero empatadas

en el costo, por lo cual no hay eliminación y se conservan; se procede a la revisión de las temporales resultando como

sigue: mínimo costo ( 22, 18, 19, 19 ) = 18 C 52 = 5, significa que la etiqueta del nodo # 2 debe hacerse permanente

así: # 2 ( 5, 18 ) P.

244

Se anota ahora que los nodos # 8, 6, 7, 5, 3, 2, ya tienen etiqueta permanente; los nodos # 1 y # 4, tienen temporal.

Repitiendo con el paso 2, se etiqueta con temporal el nodo # 1, (2, 18+12=30) t, pues los nodos # 3, 5 y 6, también

directos del # 2, ya tienen permanencia; esta última temporal se elimina por duplicidad en el nodo # 1 y se procede a

la comparación:

Mínimo costo (24, 19,19)=19 C 7 4 = 11 y C 3 4 = 4, lo cual significa que la situación de empate resulta en dos

rutas alternativas para llegar al nodo # 4 señalando con doble etiqueta permanente así: # 4 (3, 19) P y (7, 19) P.

Con excepción del nodo # 1, todos los nodos tienen carácter permanente, se procede a etiquetar temporalmente al

nodo # 1, ( 4, 19 + 5 = 24 ) t; pero se elimina la misma etiqueta temporal #1(4,24)t por duplicidad y costo alto,

quedando sola la etiqueta que se convierte a permanente en el nodo # 1: ( 3, 22 ) P.

Se termina el algoritmo de Dijkstra cuando todos los nodos tienen etiqueta permanente. La solución del problema de

ruta mínima para una red no orientada se puede completar resumiendo en forma tabular, las n-1 rutas determinadas.

También deben señalarse las ramas resultantes de la aplicación del algoritmo en la misma red, tal como se muestra a

continuación en el ejemplo Ruminod1 red no orientada de ruta mínima mostrando las etiquetas permanentes y

temporales, resultado de la aplicación del algoritmo de Dijkstra. Las ramas en línea gruesa señalan la ruta mínima

del origen #8 hacia cada nodo.

Figura 4-77. Red ejemplo RUMINOD1, muestra solución del algoritmo de Dijkstra

Figura 4-78. Rutas mínimas obtenidas con algoritmo de Dijkstra al ejemplo RUMINOD1.

Como ejercicio para el estudiante, considere la red ejemplo Ruminod1 con los mismos costos C i j asociados a las

ramas. Pero en este caso se considera al nodo #6, como origen, lo cual produce un problema diferente, que podrá

comprobar con sus resultados y los anotados en la red correspondiente.

Ejemplo 4-12. Ruta mínima, aplica algoritmo de Dijkstra (RUMINOD2).

245

Red no orientada de 8 nodos, determine la ruta mínima del nodo origen # 6 hasta los restantes n - 1 = 8-1 = 7

nodos.

Figura 4-79. Ejemplo RUMINOD2, se muestra solución con rutas de Dijkstra.

Figura 4-80. Tabla solución con rutas de Dijkstra, ejemplo RUMINOD2.

4.4.1.2. Algoritmo de Dijkstra para ruta mínima en red orientada acíclica

Condiciones: Se aplica en una red estrictamente orientada, entendiendo que cada una de sus ramas es

unidireccional y ningún conjunto, de ramas incluidas, forma ciclo. También se utiliza una etiqueta que puede ser de

carácter temporal, o bien permanente, para cada uno de los nodos graficados. Algo para anotar es que, una red, con

todas sus ramas unidireccionales, ya tiene definido el nodo origen. Los pasos a seguir del algoritmo de Dijkstra son:

1. El nodo origen siempre se etiqueta permanente así: (-, 0) P

2. Enseguida debe etiquetarse permanente aquel nodo que tenga como único inverso al origen: ( # del origen,

costo cero + costo desde el origen ) P 3. A partir de los nodos con permanencia deben etiquetarse en forma temporal, los que sean nodos vecinos

directos conectados a los mismos. Luego se revisan las temporales, con el propósito de eliminar la etiqueta

duplicada y mantener una sola (la que tenga el menor costo), para cada nodo directo.

4. Convertir a permanente, aquel nodo que tenga todos sus nodos vecinos inversos con etiqueta permanente.

En caso de empate en menor costo, se deben considerar todas las etiquetas que cumplan tal condición.

5. Se repite el procedimiento desde el paso 3, hasta que todos los nodos tengan etiqueta permanente.

6. Las rutas mínimas para cada uno de los nodos, se definen con la identificación del nodo inmediato anterior de

la ruta en el lado izquierdo de la etiqueta permanente, retrocediendo hacia el origen conforme a lo indicado.

El proceso se completa señalando las n-1 rutas calculadas, tanto en la red como en una tabla.

Ejemplo 4-13. Ruta mínima en red orientada acíclica (RUMINDO1).

246

En la siguiente red orientada acíclica de 7 nodos (Figura 4-81), determinar las rutas mínimas desde el origen O

hacia los restantes nodos, utilizando el algoritmo de Dijkstra.

Aplicación del algoritmo de Dijkstra al ejemplo Rumindo1.- Primero se verifica que la red estudiada no presenta

ciclos (por favor revise sección de definiciones). Se inicia con el paso 1 en el origen O etiquetando permanente así: (-

, 0 ) P

En el paso 2 del algoritmo para red orientada, debe buscarse el nodo que tiene como único inverso al origen O; se

observa que el nodo A cumple tal requisito y se etiqueta con permanente: A (O, 0+13 = 13); anotando: A, (O, 13)

P COA = 13

El paso 3 se refiere a etiquetado temporal de todos los vecinos directos de los nodos con permanencia; en este ejemplo

son el O y el A; empezando por O se tienen tres nodos conectados vecinos directos, uno de ellos es A, pero ya tiene

permanencia, entonces se anotan: B ( O, 0+9 = 9 ) t; C ( O, 0+7 = 7 ) t; por parte del nodo A, se anotan las etiquetas

temporales a sus vecinos directos como sigue: B ( A, 13+4=17 ) t; R ( A, 13+10=23 ) t. En la revisión de duplicidad

se elimina la temporal B, (A, 17) t y se conserva, con menor costo, la etiqueta B, (O, 9) t.

En el paso 4 se procede a revisar, cuáles nodos con etiqueta temporal, ya tienen a todos sus nodos inversos con

permanencia. Entonces la inspección es para las etiquetas siguientes: R (A, 23) t; B, (O, 9) t; C, (O, 7) t. Los nodos

R y C, aún no cumplen el requisito porque ambos tienen como inverso al nodo B que es temporal; en cambio el nodo

temporal B si cumple, porque sus inversos O y A ya tienen permanencia; entonces se anota en B: ( O, 9 ) P COB =

9

Para continuar debe anotarse que los nodos O, A, B, tienen permanencia, mientras C y R son temporales; los nodos S

y T aún no se etiquetan. Se regresa al paso 3 para etiquetar con temporal los nodos vecinos directos de B como sigue:

C ( B, 9+5 = 14 ) t ; S ( B, 9+3 = 12 ) t ; R ( B, 9+6 = 15 ) t; en la revisión por duplicidad se eliminan las temporales:

C ( B, 14 ) t; R ( B, 15 ) t. En el paso 4 se revisan los nodos con relación a sus inversos; el nodo S no cumple porque

su inverso C es temporal; el nodo R tampoco cumple porque su inverso S aún es temporal; en cambio el nodo C (sus

inversos O y B ya tienen permanencia) si cumple y por lo tanto su etiqueta pasa a permanente: C (O, 7) P COC = 7

Ahora observe que los nodos O, A, B, C, ya tienen permanencia; mientras R y S tienen temporal; el nodo T aún no se

etiqueta. Otra vez en el paso 3, se etiqueta con temporal el nodo S que es vecino directo del nodo C de reciente

permanencia: S, (C, 7+2 = 9) t; en este mismo nodo, por duplicidad se elimina la temporal S, (B, 12) t y se conserva

S, (C, 9) t. El paso 4 empieza con la revisión de nodos inversos de las etiquetas temporales de R y S. El nodo R no

puede pasar a permanencia, porque su inverso S es temporal; pero el nodo S si puede, porque sus inversos B y C

tienen permanencia. Así se convierte: S, (C, 9) P CCS = 2

Anote que los nodos O, A, B, C, S, tienen permanencia; el nodo R es temporal; el nodo T no está etiquetado. Por lo

tanto se aplica el paso 3 etiquetando los nodos vecinos directos R y T, del nodo S de reciente permanencia con las

temporales que siguen: R (S, 9+4=13) t; T (S, 9+11 = 20) t; se procede a la eliminación por duplicidad de la etiqueta:

R, (B, 15) t, conservando la temporal R, (S, 13) t con menor costo. Para cumplir el paso 4 del algoritmo, se revisan

los nodos inversos de R y T, observando que el nodo T no puede pasar a permanencia porque su inverso R es temporal;

pero el nodo R con sus inversos A, B y S, todos ellos con permanencia, si cumple para convertir a permanente: R, (

S, 13 ) P CSR = 4

Finalmente, solo queda el nodo T como temporal con la etiqueta T(S,20) t, a la cual se agrega T, (R, 13+8=21) t por

ser nodo vecino directo de R, recién hecho permanente; termina el paso 3 eliminando por duplicidad esta última T(

247

R, 21) t, y conservando la etiqueta temporal con menor costo, T ( S, 20 ) t, la cual en el paso 4 se verifica que tiene

sus inversos R y S con permanencia convirtiéndose así en: T ( S, 20 ) P CST = 11

Termina la aplicación del algoritmo de Dijkstra cuando todos sus nodos tienen permanencia; se completa el

proceso señalando etiquetas y rutas mínimas como resultado de aplicar el algoritmo de Dijkstra.

Figura 4-81. Ejemplo RUMINDO1, se muestra solución con rutas de Dijkstra

Figura 4-82. Tabla solución con rutas de Dijkstra, ejemplo RUMINDO1.

Modelo de programación lineal en red ejemplo Rumindo1, de ruta mínima

Primera parte.- Definir variables:

Segunda parte.- Función objetivo

Mínimo Z = 13XOA + 9XOB + 7XOC + 4XAB + 10XAR + 5XBC + 6XBR + 3XBS + 2XCS + 8XRT + 4XSR + 11XST

Tercera parte.- Sujeta a restricciones de conservación de flujo:

248

Figura 4-83. Restricciones de conservación de flujo, ejemplo RUMINDO1.

Ejemplo 4-14. Ruta mínima en red orientada acíclica (RUMINDO2).

Red orientada acíclica, para que el lector verifique su aprendizaje del algoritmo de Dijkstra, y compare etiquetas y

rutas.

Figura 4-84. Red ejemplo RUMINDO2, se muestra solución con rutas de Dijkstra

Figura 4-85. Tabla solución con rutas de Dijkstra, ejemplo RUMINDO2.

Modelo de programación lineal para red ejemplo Rumindo2 de ruta mínima

Primera parte.- Definir variables:

Segunda parte.- Función económica de mínimo costo

249

Min Z=9X12+7X13+8X14+6X23+4X26+4X34+3X35+5X36+5X45+7X56+8X57+11X67

Tercera parte.-Sujeta a las siguientes restricciones de conservación de flujo:

Figura 4-86. Restricciones de conservación de flujo, ejemplo RUMINDO2.

4.4.1.3. Modelo general de programación lineal del problema ruta mínima

Considere una unidad, entra por el origen, fluye en red y sale en un destino elegido.

C i j = costo de la rama (i, j)

4.4.1.4. Algoritmo matricial de ruta mínima para red no orientada

La red siguiente es un ejemplo con toda la variedad posible en la representación de las ramas, pues el lector puede

comparar este gráfico y lo que se definió en el inicio del capítulo. Si ya lo pensó tiene razón, pues es suficiente una

sola rama bidireccional o no orientada, para que toda la red se considere así. Por otro lado, para que un nodo funcione

como transbordo, es necesario que tenga conexión para llegada y salida de unidades, con ramas de una o dos

direcciones, esto significa que puede fijarse como origen si así se desea. En el Ejemplo 4-15 de la Figura 4-87, todos

los nodos son transbordos, pero se fija el nodo H como origen para calcular con el algoritmo matricial, las rutas

mínimas a los otros nodos.

Ejemplo 4-15. Ruta mínima, aplica algoritmo matricial (RUMIMAT1).

En la red no orientada RUMIMAT1, calcule las rutas mínimas con algoritmo matricial, el nodo H es origen.

250

Figura 4-87. Red no orientada, obtener rutas mínimas con algoritmo matricial, ejemplo RUMIMAT1.

Sea:

V j = Costo acumulado hasta el nodo j

U i = Costo de inicio desde el nodo i

C i j = Costo unitario de transporte en la rama (i, j)

V j = U i + C i j = costo de inicio desde i + costo de transporte de (i, j)

Por definición: U i = V j = 0, en el nodo que se fija como origen, entonces: UH = VH =0

Paso 1.- Condiciones iniciales. Se calcula arbitrariamente con: V j = U i + C i j ya anotada, para calcular el costo

V j acumulado hasta el nodo j, se establecen valores de inicio, los que se determinan en forma arbitraria eligiendo los

nodos j (lugares) hacia donde se desee dirigir, a condición de empezar con un valor U i conocido porque ya se

etiquetó. Por ello se define el valor de cero en el origen (UH = VH = cero en la red ejemplo Rumimat1) con opción

de elegir transporte hacia j = C, F, R, T:

V T = UH + CHT = 0 + 12 = 12 = UT ; ahora se conocen los costos en H y T,

(UH=0, UT=12) pudiendo elegir dirección hacia cualquier nodo j entre A, C, F, R:

VA= UT + CTA = 12 + 17 = 29 = UA

VS = UA + CAS = 29 + 7 = 36 = US

251

VR = min (UH + CHR , UT + CTR , US + CSR)= min (0+14,12+8, 36+10)= 14 = UR

para i = H, R, S (anote que son 3 opciones de nodo i para llegar al nodo R)

VC = min (UH + CHC , UT + CTC , UR + CRC)= min ( 0+15, 12+22, 14+9)= 15 = UC

para i = H, T, R (hay 3 opciones de costo conocido U i para llegar a j = C)

VF = min (UH + CHF , UC + CCF ) = min ( 0 + 4 , 15 + 9 ) = 4 = UF

para i = H, C

VB= min (UF + CFB , UA + CAB, UR + CRB ) = min ( 4+17, 29+10,14+12) = 21= UB

para i = F, A, R

Se termina el cálculo cuando todos los nodos del ejemplo Rumimat1, tienen etiqueta V j = U i, arreglando los costos

en forma matricial como sigue:

Paso 1.- Condiciones iniciales del algoritmo matricial de ruta mínima aplicado a la red ejemplo RUMIMAT1.

Figura 4-88. Condiciones iniciales del algoritmo matricial de ruta mínima aplicado a la red ejemplo

RUMIMAT1. Muestra costos Cij, Ui, Vj.

Anote el uso del símbolo (infinito) en la tabla matricial para representar un costo que significa la imposibilidad

de transporte en la dirección indicada.

252

Por otro lado, el establecimiento arbitrario y sin refinamiento de las condiciones iniciales del paso 1, se supera con

la metodología matricial del paso 2 en la búsqueda de la optimalidad. Las circunstancias de una red compleja, de

abundantes nodos y ramas, puede causar que la recopilación de la información se cumpla muy distante del objetivo,

pero el orden del algoritmo y la computadora, son elementos importantes de salvación para optimizar.

Paso 2.- Búsqueda de optimalidad del algoritmo matricial, en la red ejemplo Rumimat1.

¿Se verifica el cumplimiento V j -- U i <= C i j?

Figura 4-89. Búsqueda de optimalidad del algoritmo matricial, en la red ejemplo RUMIMAT1.

Los costos acumulados V j hasta el nodo j, deben corregirse en el paso 2 de optimalidad, cuando no se cumple

que V j - U i <= C i j. El proceso de optimización del ejemplo, resultó en la necesidad de calcular los nuevos V'j

aquí mostrados:

V 'A = UC+CCA =15+13 =28; V ' A =UC+CCA =12+13 =25; V ' A =UR+CRA =14+7= 21

V 'C = UF + CFC = 4 + 8 = 12

V 'S = UA + CAS = 25+7 = 32 ; V 'S = UA+CAS = 21+7 = 28

En la siguiente matriz se muestra a la derecha, la columna del paso 2 con los cálculos de corrección necesarios para

el cumplimiento de optimalidad y las contestaciones correspondientes (si o no) en cada renglón conforme se realiza

el proceso de aplicación del algoritmo en la red ejemplo RUMIMAT1. También se anotan los valores V j - U i

obtenidos durante el paso 2.

Paso 2.- Búsqueda de optimalidad en algoritmo matricial a la red ejemplo Rumimat1. Cálculo de los nuevos

costos acumulados V'j

253

Figura 4-90. Búsqueda de optimalidad en algoritmo matricial a la red ejemplo RUMIMAT1. Cálculo de los

nuevos costos acumulados V'j.

Paso 3.- Definición de las rutas mínimas de la red: Con la fórmula V j -- C i j = U i Vj - U i = C i j aplicada a

cada nodo i para definir su ruta. La definición de las rutas mínimas se hace en la matriz, situándose en la columna

correspondiente al nodo de interés a determinar, aplicando V j - C i j = U i. Para el ejemplo propuesto, la ruta del nodo

T es: VT - U i = C iT = 12 - 0 = 12 = CHT.Se verifica para el nodo origen H, esto significa que la ruta para T es

HT, vea la red. La ruta para el nodo S se sitúa en esa columna: VS - Ui = CiS = 28 - 7= 21= CAS, significa que para

llegar al nodo S, debe hacerse desde el nodo escala A

Ahora se sitúa en la columna A: VA - Ui = CiA = 21-7 = 14 = CRA, significa que para llegar al nodo A, debe hacerse

desde el nodo escala R. Ahora se sitúa en la columna del nodo R: VR - U i = CiR = 14 - 0 = 14 = CHR, significa que

para llegar al nodo R, debe hacerse desde el nodo origen H. Así se completa la ruta mínima hacia el nodo S, la cual

es señalada con línea gruesa en las ramas de la red: Ruta H R A S = 28.

De esta manera se determinan todas las rutas mínimas, así como las etiquetas de costo V j = U i mostradas en la

siguiente red:

254

Figura 4-91. Rutas mínimas y costos para la red no orientada del ejemplo RUMIMAT1.

Ejemplo 4-16. Ruta mínima, aplica algoritmo matricial (RUMIMAT2).

En la red no orientada de 7 nodos de la Figura 4-92, determine las rutas mínimas desde el nodo origen #5, con

algoritmo matricial.

Figura 4-92. Red no orientada de 7 nodos para determinar rutas mínimas desde el nodo origen #5, con

algoritmo matricial (RUMIMAT2).

255

Paso 1.- Condiciones iniciales.- Se calculan en forma arbitraria.

Por la definición del nodo #5 como origen de la red: V 5 = U 5 = 0.

Desde el nodo #5 origen, se tiene la opción de 3 nodos: #3, 6 y 7; se elige el #7:

V 7 = U5 + C57 = 0 + 13 =13 = U7 (Arbitrario es elegir hacia 7, pero puede hacerse a 3 ó 6).

V1 = U7 + C71 =13+ 9 =22 = U1 (Ahora se elige hacia 1, pero puede hacerse hacia 4 ó 6).

V4 = Min {U1 + C14, U7 + C74 } = Min {22 + 8, 13 + 9 } = 22 = U4

i=1, 7 i=1, 7 (observe dos maneras de llegar a nodos 4, 2, 3 y 6).

V2 = Min {U1 + C12, U4 + C42 } = Min {22 + 10, 22 + 7} = 29 = U2

i=1, 7 i=1, 7

V3 = Min {U1 + C13, U4 + C43, U5 + C53} = Min {22 + 20, 22 + 14, 0 + 7} = 7 = U3

i=1, 7 i=1, 7

V6 =Min{U1+C16, U4+C46, U5+C56, U7+C76 } = Min{22+24, 22+15, 0+4,13+7}=4= U6

i=1, 7 i=1, 7

Paso 1.- Condiciones iniciales del algoritmo matricial de ruta mínima aplicado a la red ejemplo RUMIMAT2.

Figura 4-93. Condiciones iniciales del algoritmo matricial de ruta mínima aplicado a la red ejemplo

RUMIMAT2.

256

Paso 2.- Búsqueda de optimalidad del algoritmo matricial, en la red ejemplo RUMIMAT2

¿Se verifica el cumplimiento V j -- U i =< C i j?

Figura 4-94. Búsqueda de optimalidad del algoritmo matricial, en la red ejemplo RUMIMAT2.

Paso 3.- Determinación de rutas mínimas en red ejemplo RUMIMAT2.

257

Figura 4-95. Rutas mínimas y costo de algoritmo matricial, ejemplo RUMIMAT2.

4.4.1.5. Aplicaciones del problema de ruta mínima.

Para iniciarse, puede ser útil una muestra de aplicación de la ruta mínima y algoritmo aquí utilizado.

Ejemplo 4-17. Aplica red de ruta mínima al reemplazo de equipo (REMERUM).

Planear una inversión en maquinaria, herramientas y en general equipo de trabajo, es más confiable si se dispone de

metodología que proporcione información para hacer las decisiones. A los costos y cálculos del valor del dinero con

el tiempo, se suma el conocimiento de ruta mínima y el algoritmo; se puede usar el modelo siguiente:

El gráfico se ilustra para el caso que interesa un plan a 1, 2, 3 y 4 años. Los costos de la inversión y el mantener

funcionando a dicho equipo, son C i j asociados a las ramas, los que se calculan así:

C i j = Ii + O i j + R j ;

258

En donde:

C i j = Costo de tener un equipo, desde el inicio i de un año hasta el final j del periodo considerado.

Ii= Costo de inversión de un equipo nuevo, al inicio i de un año.

O i j = Costo de operar un equipo, del inicio i de un año al final j del periodo.

R j = Valor de rescate al final j del periodo considerado.

Figura 4-96. Red orientada solución de reemplazo de equipo, ejemplo REMERUM.

259

Figura 4-97. Tabla solución de reemplazo de equipo, ejemplo REMERUM.

Ejemplo 4-18. Aplica red de ruta mínima a tiempos y movimientos ("El retador").

Considere tres recipientes con las capacidades de 8, 5 y 3 litros; de ellos, sólo el mayor está lleno de un líquido

importante, (varían las ideas de esto, pero puede ser la de dos sedientos que ya consumieron, pero desean más). Se

trata de dividir el contenido de 8 litros en partes iguales de 4 litros, vaciando para llenar el recipiente, como medida

aceptada de contenido. Se pide hacerlo con el mínimo de vaciadas.

Para resolver "el retador" es necesario construir un modelo de red que represente el procedimiento de vaciadas

sucesivas para conseguir el objetivo. En el modelo de red se requieren nodos, en los cuales puede registrarse el estado

de contenido de los tres recipientes. Así por ejemplo, respetando el orden de izquierda a derecha dado, el nodo origen

se registra como (8, 0,0); significando, el #8, el contenido completo de líquido de tal recipiente, y los dos ceros

siguientes, la condición inicial de vacíos de los recipientes de 5 y 3 litros, respectivamente. De esta manera el nodo

que representa la primera vaciada, del recipiente 8 a cualquiera de los otros dos recipientes, debe registrarse como (5,

0,3) o bien como (3, 5,0), dependiendo de cómo sea la primera decisión. Las ramas que unen los nodos representan

el costo de (1) movimiento de vaciar el líquido entre dos recipientes. Anote que las ramas sin flecha representan el

posible cambio de estado de los recipientes ya sea en una dirección o bien en la otra, las flechas indican la dirección

del cambio. Se procede de esta manera hasta conseguir el nodo (4, 4,0) que representa el estado deseado. La red

siguiente muestra el procedimiento completo, si se requiere "!auxilioooo...!".

260

Figura 4-98. Red que muestra la secuencia de vaciadas del contenido (nodos) en recipientes, en la secuencia de

cada una de las vaciadas; y etiquetas de Dijkstra para la solución óptima en ejemplo "El Retador"

Si cada vaciada, de un recipiente a otro, tiene valor de 1, la solución óptima resulta en un mínimo de 7 vaciadas

indicadas con ruta en línea gruesa.

4.4.2. Problema de árbol de expansión mínima

Definición.-Dada una red de n nodos (i) todos conectados por ramas no orientadas (sin flecha) en las que se cumple

C i j = C j i, se busca la conexión de menor costo, que incluya sólo n-1 ramas, sin formar circuitos, comunicando

cualquier par de nodos. Ejemplos abundantes de aplicación son los sistemas telefónicos, de computadoras, sistemas

eléctrico e hidráulico y en general telecomunicaciones.

4.4.2.1. Algoritmo matricial o de conjunto conectado

Se caracteriza por la utilización de una matriz cuadrada de costos, debido a la condición C i j = C j i, asociados a

cada rama (i, j) o (j, i), conectando los n nodos (teléfonos, computadoras, estaciones y otros lugares a comunicar). En

este problema representado mediante un modelo de red no orientada, cuyas conexiones son exclusivamente ramas sin

especificación de dirección (flecha), todos los nodos son de transbordo, y pueden funcionar como origen o como

destino, según la necesidad del usuario. El algoritmo se inicia formando la matriz de costos C i j, con el mismo número

de renglones y columnas, tantos como nodos presentes en la red. Luego se elige cualquiera de la n nodos, como el

primero de todo el conjunto a conectar, el cual va creciendo conforme avanza el proceso algoritmico y termina cuando

todos los nodos están adentro del conjunto.

261

Paso 1.-Se empieza eligiendo arbitrariamente un nodo, como el primero del conjunto, marcando el renglón y

con X la columna del mismo nodo en la tabla.

Paso 2.- Considerando sólo los renglones con marca , se busca el valor mínimo de las columnas no cruzadas con X,

señalando grueso el costo seleccionado. Los empates se rompen en forma arbitraria. La columna coincidente al costo

seleccionado, indica el nuevo nodo conectado que debe incluirse entre corchetes. Se cruza con X la cabeza de esa

columna y se marca con el renglón del mismo nodo. Se repite el paso 2 hasta que todos sean conectados.

Paso 3.- Cuando el conjunto de nodos se completa, se procede a identificar las ramas ( i, j ) que forman el árbol

mínimo de comunicación y los costos de las mismas, que deben sumarse en costo total.

Ejemplo 4-19. Aplica algoritmo de conjunto conectado; árbol de expansión mínima. (ARBOLMIN1).

Figura 4-99. Red ejemplo ARBOLMIN1.

Con la matriz de costos C i j formada, se marca mediante una flecha , el #6 (se inicia con cualquier nodo de la red)

en el renglón de la misma, como único a considerar en la primera decisión de nodo para incluir en el conjunto. Sobre

este renglón se hace la primera comparación y se decide con el criterio de menor costo el 3 que es el costo C67 = 3 de

la rama (6, 7), significa que el nodo 6 debe conectarse al 7, que se anota dentro del conjunto. El número de nodo se

toma de la columna coincidente al costo seleccionado. Se marca con X la columna 7 para eliminarla en las siguientes

selecciones de costo, pero se agrega el 7 como renglón con marca . En la siguiente comparación de costos, se hace

una primera selección en cada columna de los renglones 6 y 7 señalados con , anotando en una fila auxiliar en la

parte inferior de la matriz y luego se hace la selección de costo menor en la misma resultando 5. En seguida, se

identifica con la columna coincidente el nuevo nodo #5 que entra al conjunto, se anula la columna 5 con la marca X

para futuras consideraciones, pero también se incluye como renglón 5 marcado así ; el costo C65 = 5 se anota

grueso. Se repite la comparación de costo, pero ahora con los renglones 5, 6, 7 que corresponden a nodos del conjunto.

En esta selección se utiliza una segunda fila auxiliar resultando 6 como valor menor; este coincide en la columna del

nodo 2 que entra al conjunto conectado, se marca X la columna y se incluye el #2 como renglón, el costo

seleccionado C 72 = 6 debe señalarse grueso en la matriz. Continúa la aplicación del algoritmo con las selecciones

sucesivas de los nodos para conectarse en el orden que se observa entre corchetes a la derecha de la tabla con los

costos de las ramas que son señaladas en la propia red.

262

Figura 4-100. Matriz de costos, aplicación de algoritmo conjunto conectado, ejemplo ARBOLMIN1.

Costo de ramas en árbol de expansión mínima: C67=3, C13=4, C65=5, C72=6, C21=6, C34=6

Figura 4-101. Árbol de expansión mínima en la red ejemplo ARBOLMIN1.

Ejemplo 4-20. Aplica algoritmo matricial conjunto conectado; árbol de expansión mínima (ARBOLMIN2).

263

Figura 4-102. Matriz de costos, aplicación de algoritmo conjunto conectado, ejemplo ARBOLMIN2.

El costo total y las ramas seleccionadas para árbol mínimo resultan igual, no importa el número de nodo inicial

en la aplicación.

Ejemplo 4-21. Aplica algoritmo matricial conjunto conectado; árbol de expansión mínima (ARBOLMIN3).

Figura 4-103. Red para el árbol de expansión mínima, ejemplo ARBOLMIN3.

264

Figura 4-104. Matriz de costos, aplicación de algoritmo conjunto conectado, ejemplo ARBOLMIN3.

El árbol de expansión mínima queda como sigue:

Figura 4-105. Árbol de expansión mínima en la red ejemplo ARBOLMIN3.

265

4.4.3. Problema de flujo máximo

Definición: Dada una red de n nodos i conectados por ramas (i, j) cuya capacidad de flujo Fij se conoce; se trata de

determinar el transporte máximo de unidades X ij a través de la red, desde un nodo origen hasta un nodo destino.

Interesa además la manera en que se distribuye el flujo X i j por las diferentes ramas. Ejemplos de aplicación: Redes

de calles, carreteras, tuberías, sistema eléctrico.

4.4.3.1. Flujo máximo en red orientada

Ejemplo 4-22. Aplica algoritmo de Ford-Fulkerson en red orientada de flujo máximo (FLUMAXBAS).

La pequeña red (Figura 4-106) está diseñada para la exposición e inicio en el conocimiento de los conceptos que se

manejan en este modelo; el problema y el algoritmo que resuelve el flujo máximo de unidades en un sistema. Anote

que una sola rama, la RS, es bidireccional pues está señalada con dos flechas de dirección opuesta; en cambio, las

otras ramas son unidireccionales.

Etiqueta en ramas: (Capacidad de flujo Fij, Unidades de flujo Xij)

Etiquetas en nodos: Además de etiquetas en ramas, el algoritmo Ford-Fulkerson usa otra etiqueta en los nodos, útil

al seguir la ruta del flujo. Es importante que desde ahora, el lector anote la diferencia y sobre todo que aprenda a

usarlas.

Figura 4-106. Red ejemplo FLUMAXBAS, vea lado derecho de etiquetas: fluye Xij = 1 unidad por ruta ORST

quedando saturada al ocupar toda la capacidad.

Estado de la red ejemplo FLUMAXBAS.

Rama OR, etiqueta (0, 1), significa: capacidad FOR = cero, flujo XOR = 1(saturada)

Rama RS, etiqueta (0, 1), significa: capacidad FRS = cero, flujo XRS = 1(saturada)

Rama ST, etiqueta (0, 1), significa: capacidad FST = cero, flujo XST = 1(saturada)

266

Rama RT, etiqueta (3, 0), significa: capacidad FRT = 3, flujo XRT = 0 (no saturada)

Rama OS, etiqueta (3, 0), significa: capacidad FOS = 3, flujo XOS = 0 (no saturada)

Rama SR, etiqueta (1, 0), significa: capacidad FSR = 1, flujo XSR = 0 (no saturada)

Un algoritmo aplicable a este problema lo desarrollaron Ford y Fulkerson, para redes orientadas, pero la rama (R)-

(S) no orientada, se puede convertir a dos ramas en dirección opuesta con la misma capacidad, cumpliendo así el

requisito de red estrictamente orientada como se ve enseguida:

Figura 4-107. Red ejemplo FLUMAXBAS se convierte en orientada, con ramas RS y SR unidireccionales, vea

a derecha en etiquetas, pasó 1 unidad por ruta ORST.

Antes de aplicar el algoritmo de Ford-Fulkerson, se observa la situación de la red, pues ya paso una unidad por ORST;

en cambio por OSRT no ha pasado flujo, lo cual se ve en etiquetas de ramas cuyo significado ya se anotó al inicio del

tema.

Flujo Máximo: algoritmo de Ford-Fulkerson

Este algoritmo fue creado por sus autores para el tratamiento del problema de flujo máximo; considera para los nodos

uno de los tres siguientes estados: No etiquetado, etiquetado y no explorado, etiquetado y explorado.

Al iniciar el algoritmo, la red debe estar aislada y contener un sólo nodo origen y un sólo destino, los restantes deben

funcionar como transbordo. Al empezar el algoritmo, todos los nodos de la red se consideran no etiquetados.

Una etiqueta para los nodos, (diferente a la de ramas) consiste en un par de elementos, incluidos en un paréntesis,

el elemento izquierdo es la identificación del nodo del cual proviene el flujo que llega al nodo que se está

etiquetando; el elemento derecho de la etiqueta es el valor máximo de flujo que se puede enviar desde el nodo origen

hasta el nodo que se está etiquetando.

Paso 1.- Al nodo origen se le pone la etiqueta (-, ); significa, a izquierda no hay inversos, a derecha no hay límite

de flujo. En este caso el nodo origen queda en el estado etiquetado y no explorado, todos los otros nodos, no están

etiquetados.

267

Paso 2.- Considere un nodo K, con etiqueta y no explorado, a continuación, etiquete todos los nodos directos, no

etiquetados, que estén conectados por una rama no saturada de flujo, o sea que X k j se ubique en el intervalo 0 <=

X k j <= Fk j con la etiqueta ( K+, Mínimo { X o k, F k j - X k j }), en donde X o k, es el número a la derecha de la

etiqueta del nodo K, el número j es el nodo que se etiqueta y que es directo de K ; F k j, es la capacidad de la rama

entre el nodo ( K ) y el nodo ( j ); X k j, es el flujo correspondiente a la misma rama ( k, j ).

Paso 3. - Para el mismo nodo K, etiquete los nodos vecinos inversos de K que tengan flujo X i k > 0, con la

etiqueta (K- , Mínimo {X o k, X i k}).

Cuando se hallan etiquetado todos los nodos vecinos de K, (aunque algunos nodos vecinos directos no se hallan

etiquetado por estar saturada la rama que los une a K, o algunos vecinos inversos no se hallan etiquetado porque no

envían flujo hacia K), en tal caso dicho nodo K se considera etiquetado y explorado.

Paso 4.- Si el destino se etiquetó, vaya al paso 6, de lo contrario vaya al paso 5.

Paso 5.- Busque un nuevo nodo etiquetado y no explorado; si hay, vaya al paso 2.

Paso 6.- Se inicia interpretando la etiqueta recién registrada en el nodo destino T leyendo a la izquierda el nodo K+ que

envía las unidades de flujo que se anotan a la derecha, usando la rama KT; retrocediendo por la ruta, entre los nodos

destino T y origen O, conforme se indica en cada etiqueta de nodo. La identificación K + en la etiqueta de cualquier

nodo j, significa que el flujo Xoj a la derecha de la misma fluyendo desde el origen, debe restarse a la capacidad FKj en

el lado izquierdo de la etiqueta en la rama Kj y sumarse al flujo Xkj a la derecha de la misma. Pero si la etiqueta de

cualquier nodo j tiene K- , el flujo Xoj a la derecha debe sumarse a la capacidad FKj en el lado izquierdo de la etiqueta

de la rama K j y restarse al flujo Xkj a la derecha. A esto se le conoce como actualización de capacidades y flujos,

procediendo desde el nodo destino a todo lo largo de la ruta elegida, hasta el nodo origen, en cada intento de pasar

flujo. Se repiten los seis pasos anotados hasta que no sea posible encontrar una ruta para flujo adicional conectando

los nodos origen y destino.

Aplicación del algoritmo de Ford-Fulkerson a FLUMAXBAS (vea Figura 4-108).

Como primer análisis de la red se mencionó que ya existe el flujo de una unidad a través de las ramas ORST, por lo

cual se hace necesario verificar primero la red, para cumplir la propiedad de conservación de flujo en cada uno de los

nodos (suma de flujo entrante igual a suma de flujo saliente). Luego se procede de acuerdo al paso 1 etiquetando el

nodo origen O, con (-, ). dejando a O en el estado de etiquetado, pero no explorado. Sigue el paso 2 en que se inicia

la exploración; el recién etiquetado nodo O tiene como directos los nodos R y S, pero la rama OR está saturada,

significa que la capacidad FOR = 1unidad ya se ocupó, por lo tanto no se puede etiquetar R con respecto a O. El otro

nodo directo es S, la rama OS no se ha usado y tiene la capacidad original FOS = 3 unidades, entonces la etiqueta en

el nodo S es: (O+, mínimo ( , 3-0)) = (O+, 3).

Se cumple el paso 2 de exploración de directos y también el paso 3 de exploración de inversos porque O no los tiene,

se pone una E que significa explorado a la etiqueta de O. El paso 4 es para comprobar que aún no se etiqueta el nodo

destino y en el paso 5 se pide repetir regresando al paso 2. El único nodo con etiqueta sin explorar es S que tiene como

directos R y T, pero éste no se puede etiquetar porque la rama ST está saturada, la capacidad de una sola unidad ya se

ocupó; el directo R si se puede etiquetar con (S+, mínimo (3, 1-0))= (S+, 1), ya que la rama SR tiene capacidad de una

sola unidad. En el paso 3 se observa que el nodo S tiene dos nodos inversos que son O y R, pero ambos ya tienen

etiqueta y no se debe duplicar; por lo tanto S queda como explorado y se distingue colocando la letra E en la etiqueta.

Según el paso 5 hay que regresar al paso 2 y repetir a partir de un nodo con etiqueta sin explorar, el único es R, que

tiene como directos a S y T, pero S ya tiene etiqueta; el directo T cuya rama RT de conexión aún conserva la capacidad

268

original, se puede etiquetar con (R+, mínimo (1, 3-0)) o sea (R+, 1). El nodo R tiene como inversos S y O, pero ambos

tienen etiqueta, entonces R queda como explorado y se le señala con E. Al llegar al paso 4 se identifica al nodo T

como terminal, pasando al 6, en donde se instruye a la actualización de la red, pues ya se logró transportar una unidad

desde el origen O hasta el destino T. Se procede a descontar de las capacidades en ramas, la unidad pasada a lo largo

de la ruta en retroceso, desde T hacia O, que se lee en el lado izquierdo de la etiqueta.

Hasta aquí se completa una iteración del algoritmo FF para intentar una transportación más con etiquetas

nuevas comenzando por la etiqueta en el origen que siempre es la misma. En paso 2 se tienen dos directos R y S del

nodo origen, la vía a R está saturada, no se etiqueta; al directo S se le pone (O+, min ( , 3-1)) o sea (O+, 2); el paso 3

no aplica porque O no tiene inversos quedando explorado. Se regresa al paso 2, el único con etiqueta y no explorado

es S, sus directos son R y T, pero ambos no se pueden etiquetar como tales porque la rama que los conecta está

saturada y así se cumple el paso 2. En el paso 3, se observa que S tiene dos nodos inversos O y R, pero O ya tiene

etiqueta y no se duplica; el nodo R como inverso de S, ya envió una unidad de flujo que se puede regresar; es decir,

es una decisión de arrepentimiento por unidades ya transportadas; de este modo se pone en R: (S-, min (2, 1)) = (S-,

1).

Se cumplen los pasos 2 y 3 de exploración del nodo S distinguiendo con una E esa etiqueta. Regresando al paso 2, se

identifica a R etiquetado y no explorado; sus directos son S y T, pero S tiene etiqueta y la de T es:

(R+, min (1,3-1))= (R+, 1).

Como ya se etiquetó el nodo destino T, se procede al ajuste de la unidad pasada leyendo el lado izquierdo de etiquetas

iniciando en T, se lee 1 al lado derecho que se resta de la capacidad cuando la etiqueta tenga signo +, pero con signo

-, se suma a la capacidad. Luego regresa al paso 2 a intentar pasar más unidades.

Se quitan etiquetas anteriores, se etiqueta el origen con (-, ); luego su directo S con (O+, min ( , 3-2))=(O+,1), queda

explorado el O. Ahora en paso 2 se observan directos de S que son R y T, ambos no se pueden etiquetar por saturación

de sus vías; en cuanto a sus inversos en paso 3, el O ya tiene etiqueta y el R ya no le envía flujo, no hay unidades por

regresar y por lo tanto no se etiqueta. Ya no es posible transportar más unidades y se termina la aplicación del

algoritmo de Ford-Fulkerson. Por favor vea la red solución en Figura 4-108:

269

Figura 4-108. Red ejemplo FLUMAXBAS, muestra etiquetas y flujo máximo

Como se puede observar, el flujo máximo a través de la red es de 3 unidades que se anotan distribuidas a través

de las diferentes ramas.

El cálculo manual sobre nodos y ramas de la red, tiene el inconveniente de la aglomeración y desorden, difícil de

evitar en el proceso de cálculo, pero a continuación le presento mi formato tabular que permite ordenar por renglón,

las etiquetas de cada iteración facilitando el seguimiento del proceso algorítmico.

Figura 4-109. Tabla de etiquetas del algoritmo Ford-Fulkerson FLUMAXBAS.

Flujo máximo = 3

Teorema de Ford-Fulkerson: Corte mínimo = Flujo Máximo.

Un corte en red debe formar dos conjuntos ajenos, tal que O y T estén separados. Valor de flujo máximo = Valor

mínimo de todos los cortes de capacidades de la red

270

Figura 4-110. Red ejemplo FLUMAXBAS, muestra cortes del teorema Ford-Fulkerson.

Figura 4-111. Tabla de cortes Ford-Fulkerson en ejemplo FLUMAXBAS.

Considere la misma red de flujo del ejemplo Flumaxbas, suponiendo una rama ficticia TO, que por la propiedad de

conservación de flujo sería la retroalimentación de flujo X TO a la misma.

Figura 4-112. Rama XTO ficticia en la red ejemplo FLUMAXBAS.

271

Sea X i j = unidades transportadas del nodo i al nodo j, a través de la rama (i, j)

XTO = unidades de flujo imaginarias de retroalimentación desde T hasta O.

Función económica: Máximo Z = XTO

Ejemplo 4-23. Aplica algoritmo Ford-Fulkerson en red orientada de flujo máximo ("El irresistible").

Tratándose de aprender, conviene una exposición más extensa de los detalles finos del algoritmo de Ford- Fulkerson.

Para esto me permito presentarle "El irresistible" confiando sea un buen factor de aprendizaje del mismo.

Figura 4-113. Red ejemplo "El irresistible", etiquetas (capacidad remanente, flujo).

Como en el ejemplo básico anterior, primero debe verificarse que cumple la conservación de flujo en cada nodo de

la red. Así por ejemplo, al nodo F llegan 2+4 y salen 6 unidades, por lo tanto se cumple la propiedad.

Se etiqueta el nodo O con (-, ) en paso 1, la cual se anota en el renglón 1 de la siguiente tabla, luego en paso 2, se

identifican A,B,C, como directos de O, pero B y C no se pueden etiquetar porque las ramas OB y OC están saturadas,

272

entonces se limita a la de A con ( O+, mínimo ( , 17-0)) = ( O+, 17) anotada en renglón 1columna A; quedando O

con etiqueta y explorado, pues el paso 3 no aplica porque O no tiene inversos.

Regresando al paso 2, se tiene al nodo A como etiquetado y sin explorar con sus directos F y J, a los cuales les puede

enviar 9 y 4 unidades, según lo indicado en sus respectivas ramas; ahora se anota para F: ( A+, mínimo ( 17, 9-0)) = (

A+, 9 ) y para J: ( A+, mínimo ( 17, 4) = ( A+, 4), así se cumple el paso 2; para los inversos en paso 3, se localizan a

B y O, pero O tiene etiqueta, entonces se observa que B ya envía flujo hacia A, por tanto B se etiqueta ( A-, mínimo (

17, 4)) = ( A-, 4 ) terminando la exploración del nodo A y se pone E.

Se repite el proceso regresando al paso 2; se tiene a los nodos F, J, B, con etiqueta y no explorados, se puede elegir

cualquiera de los tres para explorar, considere el nodo B para ello, el cual tiene como directos a C,H,F,A, pero sólo

se puede etiquetar a C y H porque F y A ya tienen etiqueta y con vía saturada; entonces se anota ( B+, mínimo ( 4, 3-

0)) o sea ( B+, 3) para el nodo C; después se anota ( B+, min ( 4, 4-0)) = ( B+, 4), para el nodo H cumpliendo paso 2;

el único inverso de B es O con etiqueta, quedando B en la condición de explorado con E.

Un nuevo nodo etiquetado y sin explorar es el F, para etiquetar el directo K con (F+, min (9, 3-0)) = (F+, 3); el directo

J tiene etiqueta y el inverso H de F, también tiene, por lo tanto queda F como explorado con E.

Se repite el algoritmo en paso 2, eligiendo a K para explorar, a sus directos L y T, cuyas etiquetas son: en L (K+,

mínimo (3, 12-0)) = (K+, 3)); luego en el T (K+, min (3, 4-2) = (K+,2) quedando explorado K pues sus inversos J, F y

H tienen etiqueta.

Como ya se etiquetó el nodo terminal T, en el paso 4 instruyen para ir al paso 6, en el cual debe procederse al ajuste

de las unidades transportadas desde el origen O hasta el T. Leyendo el lado izquierdo de la etiqueta en T se descuenta

en la rama KT las 2 unidades a la capacidad, al mismo tiempo se suma lo mismo al flujo: (2-2, 2+2) quedando la

etiqueta (0, 4) en la rama KT. Así se procede hasta ajustar toda la ruta en forma regresiva hacia el nodo origen O, con

lo cual se completa la iteración #1; en la tabla siguiente se registran las 7 iteraciones que resultaron necesarias en esta

aplicación; también en la red siguiente se anotan los ajustes en las etiquetas de las ramas de este ejemplo "el

irresistible".

Las etiquetas mostradas son específicas de la decisión al elegir nodo a explorar en pasos 2 y 3, aunque se puede

obtener una variedad de soluciones, dependiendo de las decisiones de exploración, pero todas deben resultar con el

mismo valor máximo de flujo, si se procede sin error.

Figura 4-114. Tabla de etiquetas para cada iteración de flujo de unidades con el algoritmo Ford-Fulkerson en

el ejemplo "El irresistible".

273

Figura 4-115. Distribución de flujos por las ramas y cortes de capacidades de la red ejemplo "El irresistible".

Figura 4-116. "El irresistible" con etiquetas actualizadas en ramas de (capacidad remanente, flujo) en cada

iteración de algoritmo Ford-Fulkerson para el flujo máximo en la red.

4.4.3.2. Flujo máximo. Algoritmo matricial para red no orientada.

Definición.- Determinar el número máximo de unidades de flujo a través de una red no orientada, entre dos nodos de

la misma. Para cada rama de la red debe tenerse la capacidad de flujo, ya sea en un sólo sentido o bien en ambos.

274

Sea F i j = capacidad de la rama (i, j) en la dirección i j, así F j i = capacidad de la rama (i, j), en la dirección j i.

Si la rama es orientada en una sola dirección entonces, la capacidad en la dirección opuesta es cero. Por lo tanto, se

cumple en tal caso: F i j = 0 o bien F j i = 0.

Arreglar en la forma matricial cuadrada llamada F i j, las respectivas capacidades Fi j (F j i) de la red con n nodos, de

los cuales el nodo O representa el origen y el nodo T el destino y se pretende enviar el flujo desde el primero, a través

de los nodos de transbordo hasta llegar al destino T. Los siguientes pasos constituyen el algoritmo para cumplir el

objetivo de flujo máximo entre los nodos O y T.

Paso 1.- Determine una ruta sobre la matriz F, que contenga O y T de tal manera que exista un flujo positivo en la

dirección O T; en tal caso vaya al paso 2, de lo contrario, vaya al paso 3.

Paso 2.- En la matriz F identifique así (-) como exponente negativo, las capacidades F-i j, seleccionadas en la ruta O

T; por el contrario, identifique con exponente positivo (+), las capacidades F+i j en la dirección opuesta T O.

Ahora se define una cantidad = Mínimo {F-i j} > 0. Entonces la matriz F de capacidades Fi j se modifica como

sigue:

a) Restar la cantidad de todas las capacidades F-i j, lo que indica que debe transferirse un flujo desde el nodo origen

O hacia el nodo destino T, restándolo de las respectivas capacidades sobre la ruta.

b) Sumar la cantidad a todas las capacidades F+i j sobre la misma ruta, pero en la dirección opuesta T O

permitiendo así la conservación de las capacidades de flujo originales en la red. Esto indica que la disminución de la

capacidad de una rama en una dirección, es equivalente a un incremento en la capacidad de la misma en la dirección

opuesta.

Paso 3.- Se determina el flujo máximo de la red como sigue, sea:

F = |Fi j|, la matriz de capacidades original de la red.

F* = |F*i j|, la última modificación de la matriz de capacidades, después de la cual no existe ruta posible de flujo entre

los nodos O y T.

Así el flujo óptimo X máximo = | X i j | en las ramas es:

X máximo = X i j = { Fi j - F*i j, si Fi j > F*i j; o bien, X i j = cero, si Fi j <= F* i j }

El flujo máximo entre O y T es: X máximo = X O j = X i T =

Ejemplo 4-24. Aplica algoritmo matricial en red no orientada de flujo máximo (FLUMAXMA).

De acuerdo a la definición dada para el problema de calcular el flujo máximo de unidades transportadas a través de

una red, es necesario fijar, no sólo un nodo origen, también se requiere asignar la función de nodo destino. La

red Ejemplo 4-24 tiene designado el nodo #1 como origen y se desea determinar el flujo máximo de unidades,

aprovechando las capacidades y dirección anotadas en las ramas de conexión, hacia el nodo #7 que es el destino.

Como su nombre sugiere en este algoritmo se arregla una matriz de capacidades F i j de inicio y se busca en la misma

una cadena de ramas (i, j) que permita el paso de unidades desde 1 hasta el destino 7, marcando las capacidades con

signo negativo (-); enseguida se marcan las capacidades de la misma cadena de ramas, pero en dirección opuesta, es

decir, del destino 7 hacia el origen 1, con signo (+). Se obtiene un número del mínimo de todas las capacidades

275

marcadas con signo (-), el cual se utiliza para restarlo en la matriz a todas las capacidades con (-), también se usa para

sumarlo en la matriz a las que tienen signo (+). Así se modifican las capacidades de la matriz F i j, y el

número significa las unidades transportadas por la cadena elegida. Se repite el procedimiento hasta que ya no es

posible el flujo, lo que se identifica por la anulación (saturación) de capacidad en algunas ramas, impidiendo el flujo

hacia el destino. La diferencia entre la matriz de capacidad F i j inicial y la última matriz modificada F*i j, resulta en

la matriz solución X i j de flujos. La suma de estos llegando al destino, debe igualar la suma que sale del origen, así

como también la suma de ; este es el máximo flujo.

Figura 4-117. Red ejemplo no orientada FLUMAXMA para algoritmo matricial.

Sea:

F i j = Matriz inicial de capacidades de flujo

F- i j = Capacidades de flujo en la ruta de nodo origen 1al destino 7.

F+ i j = Capacidades de flujo en la ruta del destino 7 al origen 1.

F*i j = Ultima matriz modificada de capacidades de flujo.

X i j = Matriz de flujo

= Valor mínimo de capacidades F- i j

276

Figura 4-118. Matrices de capacidad, aplica algoritmo matricial a ejemplo FLUMAXMA.

La matriz de flujos X i j se obtiene mediante la siguiente función:

Figura 4-119. Flujo óptimo por rama (i, j) en red FLUMAXMA con algoritmo matricial.

277

X máximo = X 1 j = X i 7 =

Todo j Todo i

X máximo = 4 + 6 + 3 + 3 + 6 = 6 + 4 + 0 + 9 + 3 = 3 + 6 + 4 + 3 + 6 = 22

4.5. Ejercicios, actividades de aprendizaje y autoevaluaciones correspondientes al capítulo

En las siguientes subsecciones encontrará una serie de ejercicios que ayudarán a la total comprensión de los temas

tratados en el presente capítulo. Asimismo, los ejercicios marcados con *AUTOEVAL* son de auto evaluación, el

peso de los incisos correspondientes a cada uno de ellos podrán ser consultados en la sección de respuestas. Se sugiere

resolverlos, y una vez terminados, revisar su solución y calcular la calificación correspondiente y así evaluar el

entendimiento del mismo.

Se recomienda aplicar los ejercicios aquí planteados a casos prácticos de la vida diaria como parte de las actividades

de aprendizaje del presente material.

4.5.1. Ejercicios de Redes de distribución: transporte, transbordo y asignación.

4.5.1.1. Problema de transporte balanceado, 2x3 *AUTOEVAL*.

Una empresa tiene dos plantas produciendo el mismo artículo, el cual debe enviarse a tres centros de distribución.

Dado que los costos de producción son los mismos en ambas plantas, los únicos costos a considerar son los de

transporte que se anotan (cientos de pesos por unidad) en la siguiente tabla para todas las combinaciones de planta a

centro de distribución:

Figura 4-120. Costos para problema de transporte balanceado, 2x3.

Cada planta puede producir y mandar cualquier cantidad hasta un máximo de 50 unidades semanales; a) si cada centro

debe recibir 20 unidades semanales, construya la tabla necesaria, formule el modelo de PL correspondiente y aplique

el algoritmo de transporte para la solución óptima; b) con el propósito de reducir aún más el costo de transporte,

considere la misma suma (60) de demanda, pero que los centros pueden recibir cualquier cantidad, entre 10 y 30

unidades semanales; para este caso construya la tabla y formule el modelo de PL correspondiente.

B.4.1.1. Problema de transporte balanceado, 2x3.

278

Enunciado del ejercicio

6 variables-acierto con valor 1/2 punto c/u.

4.5.1.2. Problema de transporte no balanceado, 3x5, solución degenerada.

Continúe la solución con el algoritmo simplex de transporte hasta optimizar en la tabla intermedia siguiente de un

problema.

Figura 4-121. Tabla intermedia en la solución con algoritmo de transporte.

Respuesta al ejercicio

B.4.1.2. Problema de transporte no balanceado, 3x5, solución degenerada.

4.5.1.3. Problema de transporte no balanceado, 3x3, solución degenerada.

Una compañía de aerolíneas desea comprar la gasolina para sus aviones a tres proveedores, que disponen de 8, 24 y

25, miles de litros respectivamente. Se deben enviar 20, 12 y 8, miles de litros a tres ciudades, de acuerdo a la siguiente

tabla de costos en miles de $ por cada mil litros de gasolina entregada

Figura 4-122. Costos para problema de transporte no balanceado, 3x3.

279

Construya la tabla y aplique el algoritmo de transporte para optimizar la compra.

Respuesta al ejercicio

B.4.1.3. Problema de transporte no balanceado, 3x3, solución degenerada.

4.5.1.4. Problema de transbordo no balanceado.

Convierta el siguiente problema de transbordo a la tabla usual del problema de transporte; en donde la respectiva

oferta en los nodos 1, 2 y 3 son 10, 20 y 15 unidades, y la respectiva demanda en los nodos 5, 6 y 7 es 10, 25 y 10

unidades.

Figura 4-123. Red de transbordo para problema de transbordo no balanceado.

Respuesta al ejercicio

280

B.4.1.4. Problema de transbordo no balanceado.

4.5.1.5. Asignación de barcos a puertos con solución alterna *AUTOEVAL*.

Se tienen cuatro barcos i (i = 1, 2, 3, 4) de carga, anclados en un puerto para transportar bienes a otros cuatro puertos

j (j = 1, 2, 3, 4). Las características de los barcos y las cargas por alojar en sus bodegas, resultan en grandes diferencias

de costos totales de carga, transporte y descarga que se muestran en la siguiente tabla. El objetivo es asignar cada

barco i en su viaje a cada puerto j de manera que se consiga minimizar el costo total de viaje de los barcos.

Figura 4-124. Tabla de asignación ejercicio de barcos a puertos.

B.4.1.5. Asignación de barcos a puertos con solución alterna.

Enunciado del ejercicio

3 soluciones óptimas acierto con 1 punto c/u.

281

4.5.1.6. Asignación de nadadores a estilo de natación.

Para la Olimpiada juvenil deben asignarse nadadores, para la competencia de 200 metros estilo combinado por

equipos. La selección debe hacerse con los nadadores j (j =1, 2, 3, 4) calificados en los cuatro estilos i (i = 1, 2, 3, 4),

cuyos tiempos en segundos se muestran en la siguiente tabla:

Figura 4-125. Tabla de tiempos para problema de asignación de nadadores a estilo de natación.

Aplique el algoritmo de asignación que minimice la suma de los 4 tiempos.

B.4.1.6. Asignación de nadadores a estilo de natación.

4.5.2. Ejercicios de ruta mínima.

4.5.2.1. Rutas mínimas, red no orientada, algoritmo de Dijkstra *AUTOEVAL*.

Determine las rutas mínimas desde el nodo 1 fijado como origen en las siguientes redes:

Figura 4-126. Red no orientada para problema de rutas mínimas, Dijkstra.

282

Respuesta al ejercicio

B.4.2.1. Rutas mínimas, red no orientada, algoritmo de Dijkstra.

Enunciado del ejercicio

9 rutas acierto con valor de 1/3 de punto c/u.

4.5.2.2. Rutas mínimas, red orientada, algoritmo de Dijkstra.

Determine las rutas mínimas desde el nodo fijado como origen en las siguientes redes:

Figura 4-127. Red orientada para problema de rutas mínimas, Dijkstra.

Respuesta al ejercicio

B.4.2.2. Rutas mínimas, red orientada, algoritmo de Dijkstra.

4.5.2.3. Rutas mínimas, red no orientada, algoritmo Matricial.

Determine las rutas mínimas desde el nodo fijado como origen en las siguientes redes:

283

Figura 4-128. Red no orientada para problema de rutas mínimas con algoritmo matricial.

Respuesta al ejercicio

B.4.2.3. Rutas mínimas, red no orientada, algoritmo Matricial.

4.5.3. Ejercicios de flujo máximo:

4.5.3.1. Etiquetas en ramas para otra solución del "El irresistible".

La siguiente tabla corresponde a otro procedimiento (diferente decisiones de exploración) para el mismo ejemplo "el

irresistible", con objeto de que el estudiante pueda practicar el algoritmo de Ford-Fulkerson y construya la red ya

conocida para ajustar las etiquetas de las ramas que corresponde a esta tabla:

284

Figura 4-129. Procedimiento alterno para "El irresistible".

Respuesta al ejercicio

B.4.3.1. Etiquetas en ramas para otra solución del "El irresistible".

4.5.3.2. Aplica algoritmo matricial de flujo máximo.

Las siguientes tablas son, la inicial de capacidades F y la de flujos X i j para una red no orientada que no se muestra.

Utilizando el algoritmo matricial calcule las matrices modificadas necesarias para llegar al valor de flujo máximo de

la matriz X dada y determine su distribución en la red. La distribución que usted obtenga, puede no coincidir con la

tabla dada, pero el flujo máximo sumado en Xoj = X iT debe ser igual en ambas tablas X.

285

Figura 4-130. Tablas red no orientada aplicación algoritmo matricial.

Respuesta al ejercicio

B.4.3.2. Aplica algoritmo matricial de flujo máximo.

4.5.3.3. Aplica algoritmo de Ford-Fulkerson para flujo máximo y su distribución *AUTOEVAL*.

La tabla mostrada tiene la información de una red de distribución de flujo. Aplique el algoritmo de Ford - Fulkerson

y su distribución a través de la red para obtener el flujo máximo.

Respuesta al ejercicio

286

B.4.3.3. Aplica algoritmo de Ford-Fulkerson para flujo máximo y su distribución.

Enunciado del ejercicio

11 aciertos (10 flujos rama + flujo máximo) con valor de 1/3 de punto c/u.

4.5.3.4. Aplica algoritmo de Ford-Fulkerson para flujo máximo y su distribución.

La tabla mostrada tiene la información de una red de distribución de flujo. Aplique el algoritmo de Ford - Fulkerson

y su distribución a través de la red para obtener el flujo máximo.

Respuesta al ejercicio

B.4.3.4. Aplica algoritmo de Ford-Fulkerson para flujo máximo y su distribución.

4.6. Referencias bibliográficas

BAZ92.- Bazaraa Mokhtar and Jarvis John J.

Programación Lineal y Flujo de Redes.- Limusa - Noriega Editores.- 7a.edición.- 1992.

DAV86. - Davis K. R. and McKeown P. G.

287

Modelos Cuantitativos para Administración. Grupo Editorial Iberoamérica, 2ª edición.1986

EPE92. - Eppen G. - Gould F. - Schmidt Ch.

Métodos Cuantitativos para Administración. Prentice Hall. 1992

FOR62. - Ford L.R.-Fulkerson D. R.

Flow in Networks. Princenton University Press. Princenton N.J. 1962

GAS81. - Gass Saul I.

Programación lineal.- Limusa 1ª Edición 1981

HIL95.- Hillier-Lieberman.

Introducción a la Investigación de Operaciones.-McGraw-Hill.- 6a.edición.- 1995.

TAH95.- Taha Hamdy

Investigación de Operaciones.- 5a.edición.- 1995.

WIN94. - Winston Wayne.

Investigación de Operaciones. Aplicaciones y Algoritmos.- Grupo Editorial Iberoamérica.- 2ª Edición.-1994.

Apéndice A. ECUACIONES LINEALES, MATRICES Y DETERMINANTES.

Tabla de contenido A.1. Sistemas de ecuaciones lineales

A.2. Matrices y determinantes

Este apéndice contiene el material auxiliar relacionado con la solución de sistemas de ecuaciones lineales (o de primer

grado), el arreglo de las mismas en vectores y matrices, así como el importante concepto de determinante. El apéndice

tiene interés por sí mismo y por su aplicación en la programación lineal, incluyendo la solución en sistemas de m

ecuaciones lineales por los procedimientos de eliminación de términos de Gauss-Jordan.

A.1. Sistemas de ecuaciones lineales

Una ecuación lineal es una expresión de la forma

a1 X1 + a2 X2 +...+ an Xn = b

donde a j y también b R, las X j son variables. a j son los coeficientes de las X j para toda j = 1, 2,....,n; b es la

constante de la ecuación. Un conjunto de valores de las incógnitas, por ejemplo:

X 1 = k 1, X2 = k2,.............,Xn = k n

288

y representados por un vector: K =( k1, k2, ...., kn), este es solución de la ecuación dada, si al sustituir los valores k j

por las X j, se satisface dicha ecuación.

El vector o "n-ada" (k1, k2,......., kn) representa la solución.

Ejemplo A-1. Sistemas de ecuaciones lineales.

Considere la ecuación de una recta en el plano R2: 2X2 + X2 = 8; asignando valores arbitrarios a X1 se obtienen los

correspondientes de X2:

Todas las soluciones para la ecuación dada, o todos los puntos determinados están, tanto en la línea recta como en el

plano R2.

A.1.1. Solución de una ecuación lineal

1. Un coeficiente no es cero, por ejemplo suponga a1 0

a1 X1 = b - a2 X2 -.....- an Xn X1 = a1-1 b - a1

-1 a2 X2 -...- a1-1an Xn

Al asignar los valores a X2,......Xn se obtiene X1 y por lo tanto soluciones. Por ejemplo: aX = b para a 0 X

= a-1b (única).

Considere una ecuación en donde todos los aj 0: 2X - 4Y + Z = 8,

despejando: 2X = 8 + 4Y - Z X = 4 + 2Y - 1/2 Z

Para cualesquiera valores de Z e Y se obtiene un valor X formando los 3 valores (X, Y, Z) una solución: si Y

= 3, Z = 2 X = 4 + 2(3) - 1/2(2) = 9. Es decir la tríada (9, 3, 2) = (X, Y, Z) es una solución.

2. Todos los coeficientes son nulos y la constante b también lo es.

0X1 + 0X2 +...+ 0Xn = 0 En este caso cualquier "n-ada" en R es una, de la infinidad de soluciones.

3. Todos los coeficientes son nulos y la constante b no lo es:

0X1 + 0X2 +...+ 0Xn =b, con b 0; En este caso, la ecuación no tiene solución.

A.1.2. Solución de m ecuaciones lineales.

Considere un sistema de m ecuaciones lineales con n incógnitas X1, X2,...,Xn:

289

donde aij y bi son constantes en el conjunto R.

Si el sistema tiene solución un vector o "n-ada" K = (k1, k2,......, kn) de # reales es una solución si satisface cada una

de las ecuaciones.

Si las constantes b1,........, bm son todas cero el sistema se dice homogéneo

A.1.3. Solución gráfica de un sistema de dos ecuaciones lineales.

Considere primero un sistema de dos ecuaciones lineales de dos incógnitas

Los números (k1, k2) que satisfacen ambas ecuaciones es la solución simultánea.

Cuando se tienen dos ecuaciones con dos incógnitas, se pueden describir geométricamente tres casos:

1. .- El sistema tiene una sola solución. Si los coeficientes de las incógnitas no son proporcionales:

290

Figura A-1. Solución gráfica de un sistema de dos ecuaciones lineales con una sola solución.

2. .- El sistema de ecuaciones no tiene solución.

Figura A-2. Solución gráfica de un sistema de dos ecuaciones lineales sin solución.

Las líneas rectas correspondientes son paralelas porque:

291

3. .- El sistema tiene un número infinito de soluciones.

Figura A-3. Solución gráfica de un sistema de dos ecuaciones lineales con número infinito de soluciones.

Las líneas coinciden porque:

A.1.4. Sistemas de dos ecuaciones con dos incógnitas.

En la solución de una ecuación de primer grado con una incógnita aX=b, se pueden presentar tres casos:

1. Si a 0 , la ecuación tiene una solución única: X = b / a

2. Si a = 0 y b = 0, la ecuación tiene un conjunto infinito de soluciones: cualquier número real X satisface la

ecuación aX = b.

3. Si a = 0, pero b 0, la ecuación no tiene solución, ya que al sustituir X por cualquier número real se obtiene

cero por la izquierda, mientras que a la derecha se tiene un número diferente de cero.

Los mismos casos para la solución de una sola ecuación con una incógnita, se pueden presentar al resolver un sistema

de m ecuaciones lineales. Considere ahora, un sistema de dos ecuaciones (m=2) con dos incógnitas (n=2):

292

Se llama solución de este sistema a todo par de valores X1 = k1, X2 = k2, que al sustituirlos por X1 y X2, convierten

ambas ecuaciones en identidades. Para resolver este sistema, se multiplica la primera por a22, la segunda por -a12, se

suman y se obtiene:

entonces se tiene una solución única, dada por:

Las dos expresiones anteriores se conocen como fórmulas de Cramer para la solución de un sistema de dos

ecuaciones con dos incógnitas. Observe que en el lado derecho de las fórmulas, en el numerador y el denominador,

se tiene una misma estructura.

Ahora considere el siguiente arreglo en tabla, de los coeficientes usados en el sistema de dos ecuaciones lineales

mostrado antes:

Un arreglo de coeficientes A como el mostrado se llama MATRIZ, la cual los ordena en renglones y columnas. En

este ejemplo se tiene una matriz cuadrada de segundo orden (dos renglones y dos columnas). La imaginaria línea

diagonal del elemento superior izquierdo (a11) al inferior derecho (a22), se le llama diagonal principal de la matriz. La

otra línea imaginaria diagonal entre los elementos a12 y a21, se conoce como diagonal secundaria.

Observe nuevamente los denominadores de las expresiones que resuelven las incógnitas X1 y X2, los que se forman

con el producto a11a22 de la diagonal principal menos el producto a12a21 de la diagonal secundaria: a11a22 - a12a21

Esta última expresión para el denominador de ambas fórmulas se llama determinante de la matriz A, se expresa

así: det (A) = a11a22 - a12a21

Los numeradores de estas fórmulas también son determinantes obtenidos de la siguiente manera: Sustituyendo la

columna ( b1, b2)T del lado derecho de las ecuaciones, en la columna izquierda (a11, a21)

T de la matriz A, en la fórmula

de X1; y sustituyendo en la columna derecha (a12, a22)T de la matriz A, en la de X2:

Determinante numerador, en X1: a22 b1 - a12 b2; en X2: a11 b2 - a21 b1

Ejemplo A-2. Sistema de dos ecuaciones lineales con dos incógnitas utilizando las fórmulas de Cramer 1.

Resuelva el siguiente sistema de dos ecuaciones lineales con dos incógnitas, utilizando las fórmulas de Cramer.

293

El sistema de dos ecuaciones de ejemplo, tiene solución única con los valores mostrados de ( X1, X2 ) = ( -3, 6 ).

El determinante denominador (5) en ambas fórmulas, así como el del numerador (-15 y 30), no son cero. En contraste

con el ejemplo de un primer caso de solución única, considere el segundo caso siguiente:

Esta igualdad se puede expresar como: a11 / a21 = a12 / a22 (son proporcionales). Si además se cumple, proporcionalidad

de los términos independientes de las ecuaciones con los coeficientes de las incógnitas, o sea:

Se convierte en una ecuación de dos incógnitas con infinidad de soluciones.

Ejemplo A-3. Sistema de dos ecuaciones lineales con dos incógnitas utilizando las fórmulas de Cramer 2.

Resuelva el siguiente sistema de dos ecuaciones lineales con dos incógnitas, mediante las fórmulas de Cramer:

Los determinantes en numerador y en denominador son cero, entonces el sistema tiene un número infinito de

soluciones.

Como un tercer caso, considere al determinante denominador como cero:

Pero los determinantes en el numerador de las fórmulas de Cramer no son cero:

294

Significa a11 / a21 = a12 / a22 b1 / b2; en tal caso el sistema no tiene solución.

Ejemplo A-4. Sistema de dos ecuaciones lineales con dos incógnitas utilizando las fórmulas de Cramer 3.

Resuelva el siguiente sistema de dos ecuaciones lineales con dos incógnitas, mediante las fórmulas de Cramer:

Los determinantes en numerador no son cero, pero el determinante denominador si es cero, entonces el sistema no

tiene solución.

A.1.5. Sistemas de tres ecuaciones con tres incógnitas.

Considere ahora un sistema de tres ecuaciones lineales con tres incógnitas como se muestra a continuación:

La solución para este sistema de tres ecuaciones lineales con tres incógnitas utilizando las fórmulas de Cramer,

requiere calcular los determinantes que resultan de una suma de seis términos, obtenidos de los productos formados

con los elementos mostrados arreglados como matriz cuadrada A de tercer orden:

det (A) =+a11 a22 a33 + a12 a23 a31 + a13 a21 a32 -a11 a23 a32 -a12 a21 a33 -a13 a22 a31

Los tres términos positivos son el producto de tres elementos a i j de la matriz situados: en la diagonal principal y en

dos triángulos isósceles cuya base es paralela a esa diagonal. Los tres términos negativos se obtienen igual, pero con

la diagonal secundaria.

Este determinante de tercer orden sugiere la gran dificultad en labor de cálculo cuando se intenta resolver un sistema

de ecuaciones lineales con las fórmulas de Cramer, por lo que se justifica el empleo de otros métodos para ese fin,

sobre todo tratándose de sistemas de m = 3 ecuaciones o mayor.

295

Ejemplo A-5. Sistema de tres ecuaciones lineales con tres incógnitas utilizando las fórmulas de Cramer.

Resuelva el siguiente sistema de tres ecuaciones lineales con tres incógnitas, mediante las fórmulas de Cramer:

Det. A = ((2)(3)(0)) + ((1)(1)(1)) + ((2) (-1)(-1)) - ((2)(1)(-1)) - ((1)(-1)(0)) - ((2)(3)(1)) = -1

Det. D1 = ((4)(3)(0)) + ((1)(1)(1)) + ((-1)(3)(2)) - ((-1)(4)(1)) - ((1)(3)(0)) - ((2)(3)(1)) = -7

Det. D2 = ((2)(3)(0)) + ((4)(1)(1)) + ((-1)(1)(2)) - ((2)(1)(1)) - ((-1)(4)(0)) - ((2)(3)(1)) = -6

Det. D3 = ((2)(3)(1)) + ((1)(3)(1)) + ((-1)(-1)(4)) - ((-1)(1)(1)) - ((-1)(3)(2)) - ((4)(3)(1)) =8

X1= -7 / -1 = 7; X2 = -6 / -1 = 6; X3 = 8 / -1 = -8

A.1.6. Procedimiento de eliminación de Gauss-Jordan.

Las fórmulas de Cramer son de importante interés teórico, sin embargo no tienen gran aplicación en la práctica debido

a que requiere mucha labor de cálculo. En cambio, el método de eliminación para resolver sistemas de ecuaciones

lineales, de Gauss - Jordan, tiene más aplicación, en problemas pequeños y grandes, sobre todo en la solución de

modelos de programación lineal. Para resolver un sistema de ecuaciones con este método se emplea la eliminación

sucesiva de las incógnitas según este esquema: Considere las siguientes m ecuaciones lineales:

Ahora se arregla una matriz B de este sistema, ampliada con los bi (línea vertical).

296

Después se hacen transformaciones elementales con los renglones de la matriz, lo cual es equivalente a hacerlo con

las respectivas ecuaciones:

1. Se permite cambiar el orden de las filas.

2. Se pueden multiplicar los renglones por cualquier número diferente de cero.

3. Sumar a un renglón de la matriz, otra fila multiplicada por cualquier número.

Así se obtiene una matriz ampliada de un nuevo sistema equivalente al original pues se reduce la matriz B a la forma

más sencilla posible que incluya la solución del sistema. A continuación se presenta el procedimiento detallado:

1. Intercambio de ecuaciones y de la posición de las incógnitas para que a11 0.

2. Multiplicación de la primera ecuación por una constante apropiada diferente de cero, para lograr a11 = 1.

3. Para toda i > 1, se multiplica la primera ecuación por -ai1 y luego se suma a la i-ésima ecuación, de tal manera

que la primera incógnita queda eliminada.

Considere el siguiente ejemplo con anotaciones del cálculo a la izquierda:

La matriz ampliada de este sistema es:

Se resta: el renglón (1) del (2) y el (3), el (1)(3) al (4), resultando la matriz:

Se permutan los renglones (2) y (3) para tener el coeficiente 1en renglón 2

El renglón (2) se duplica y se resta al (1) y al (4), el (2) se triplica y se resta al (3)

297

El (3) se divide entre (-14), el coeficiente 1 resultante se usa para operar con el cálculo que se indica en la columna

izquierda

La columna derecha de la última matriz tiene la solución del sistema propuesto: X1 = -1, X2 = 0, X3 = 1

Ecuación lineal degenerativa.- Así llamada cuando todos los coeficientes de las incógnitas son cero. En el caso

especial de un sistema en que todas las ecuaciones son degenerativas ( aij = 0), se tienen dos casos:

1. El sistema tiene por lo menos una ecuación de la forma: 0x1 + 0x2 +...+ 0xn = bi con bi 0, entonces esta

ecuación y por lo tanto el sistema, no tiene solución, (es inconsistente).

2. Todas las ecuaciones del sistema son de la forma: 0x1 + 0x2 +...+ 0xn = 0, entonces cada ecuación y, por lo

tanto el sistema tienen toda "n-ada" de números reales como solución.

En el caso común cuando las ecuaciones no son todas degenerativas (aij 0), el sistema de ecuaciones se reduce a

uno más simple equivalente al original que posee las mismas soluciones, el proceso se lleva hasta eliminación

completa (Gauss-Jordan) para obtener la solución.

Si se encuentra una ecuación de la forma 0x1 +... +0xn = 0 puede quitarse sin que afecte la solución.

Continuando con el proceso anterior, con cada nuevo subsistema, se obtiene por inducción, que el sistema o bien no

tiene solución, o bien es reductible a una forma equivalente.

Para la solución de un sistema de ecuaciones lineales en forma escalonada (eliminación de Gauss-Jordan), hay dos

casos:

1. Si hay tantas ecuaciones como incógnitas (m-=n) entonces el sistema tiene una solución única.

2. Si hay menos ecuaciones que incógnitas (m < m + n) entonces se pueden asignar arbitrariamente valores a las

n variables llamadas en este caso "libres" y obtener una solución del sistema. Si se asignan valores diferentes

a tales "variables libres", se pueden obtener muchas soluciones del sistema.

Para el caso particular de un sistema homogéneo de ecuaciones lineales reducido a la forma escalonada se presentan

dos posibilidades.

1. Tantas ecuaciones como incógnitas (m = n), entonces la solución es (0, 0,.....0) o trivial.

2. Menos ecuaciones que incógnitas (m < m + n), entonces el sistema tiene una solución no nula. En resumen

298

Ejemplo A-6. Sistema no homogéneo de ecuaciones lineales por eliminación de Gauss-Jordan.

A.2. Matrices y determinantes

Una matriz es un arreglo rectangular de mxn números, dispuestos en m filas y n columnas, generalmente encerrado

en paréntesis.

Para cualquier m o n y cualesquiera elementos a i j. Cada renglón y cada columna de la matriz A representan vectores,

renglón y columna, respectivamente.

Matriz cuadrada.- Si m = n

Matriz diagonal.- Es una matriz cuadrada cuyos elementos fuera de la diagonal principal, los coeficientes a i j para

i j, son todos iguales a cero.

Matriz identidad (I).- Es una matriz diagonal cuyos coeficientes diagonales son 1.

299

Matriz traspuesta.- La traspuesta AT de una matriz A es en la que los renglones y columnas se han intercambiado.

Matriz triangular.- Es una matriz cuadrada con los a i j = 0 para i > j o los a i j = 0 para i < j.

Matriz simétrica.- Si una matriz cuadrada A = AT ó a i j = a j i.

Matrices iguales.- Dos matrices son iguales si y solo si sus elementos correspondientes son iguales. Las dimensiones

m x n también son iguales.

Matriz nula.- Si tiene todos sus elementos iguales a cero (0).

Orden de una matriz.- Es el número de renglones y columnas que tiene, así se dice una matriz de orden m X n o de

orden n si es cuadrada.

Suma de matrices.- Dadas las matrices A y B, ambas de orden m X n, la suma es una matriz C de orden m X n.

C = A B = (a i j )mxn ( b i j )mxn = ( c i j )mxn

Propiedades de la suma de matrices.

A + B = B + A (Ley conmutativa) A + 0 = A

(A + B) + C = A + (B + C) (Ley asociativa)

Multiplicación de una matriz por un escalar.- Dado un escalar , - < < , y una matriz A m x n

B = = (a i j) = ( a i j) = (b i j)

Propiedades de la multiplicación por un escalar.

Multiplicación de matrices.- El producto AB de dos matrices está definido sólo en caso de que el número de

columnas de A sea igual al número de renglones de B. El producto AB no es conmutativo, o sea A B B A.

Cuando se cumple con la condición mencionada (nA = mB) se dice que ambas matrices son conformables para el

producto.

300

Propiedades de la multiplicación de matrices.

Ejemplos:

BA no es conformable.

Propiedades de las matrices traspuestas.

(AT)T = A

(A + B)T = AT + BT

(A + B + ... +N)T = AT + BT + ... + NT

301

(AB)T = BT AT

(A B...N)T = NT ... BT AT

ATB = BTA

A.2.1. Espacio lineal o vectorial.

Un espacio vectorial es el conjunto de todos los vectores de n componentes bajo las operaciones de suma de vectores

y multiplicación por escalar. Se define con las siguientes propiedades: Dados dos vectores X e Y pertenecientes al

espacio entonces:

También pertenecen al espacio.

Espacio Vectorial Euclideano (En).- Es un espacio vectorial de números reales, tal que dados dos vectores cualquiera

X e Y en Zn, el número real generado del producto XTY tiene las propiedades:

es simétrico: XTY = YTX

es positivo: xt x > 0 para x 0

es bilineal: dados X, Y, W, Z En se tiene:

(XT + YT)*(W +Z) = XT * (W + Z) * YT (W + Z) = (X + Y)T * W + (X + Y)T * Z

La representación geométrica de espacios vectoriales euclidianos puede hacerse para n = 1, n = 2 y n = 3. En E2:

Figura A-4. Representación geométrica de espacios vectoriales euclidianos para n = 1 y n = 2.

302

Figura A-5. Representación geométrica de espacios vectoriales euclidianos para n = 3.

Combinación lineal

Si X1, X2,........., Xn son vectores y 1, 2,..., n son escalares, no todos ceros, entonces.

Es una combinación lineal de los vectores X1, X2,..., Xn

Ejemplo A-7. Determinación de la combinación lineal de vectores columna.

Determinar la combinación lineal de los siguientes vectores columna:

303

Los vectores unitarios (1, 0,..., 0), (0, 1,..., 0),..., (0, 0,...1) representan los puntos de una unidad de medida sobre cada

uno de los ejes coordenados y son útiles para expresar cualquier vector como combinación lineal de los vectores

unitarios.

Vectores linealmente dependientes.- Los vectores X1, X2,..., Xn son linealmente dependientes si existen 1, 2,...

n, no todos cero, tales que

1x1 + 2x2+...+ nXn= 0

Vectores linealmente independientes.- Si la expresión indicada se cumple solo cuando 1 = 2 =... = n = 0 entonces

el conjunto de n vectores x1, x2,..., xn son linealmente independientes.

Ejemplos:

304

Hay un número de valores 1 y 2 0

por lo tanto son L. I.

Conjunto o Subespacio Generador.- Es aquel conjunto de vectores en En que pueden ser utilizados para expresar a

cualquier vector arbitrario de En. Es decir, cualquier vector de En puede representarse como una combinación lineal

del conjunto generador de En.

Teorema.- Sea S no vacío C en En. El conjunto de todas las C. L. de vectores en S, denotado por (s), es un

subespacio de En que contiene a S. (s) es el subespacio menor de En que contiene a S.

Ejemplo: Los vectores e1 = (1, 0, 0), e2 = (0, 1, 0) y e3 = (0, 0, 1) generan el espacio vectorial R3. Cualquier vector (a,

b, c) R3 es una C. L. de los ei.

(a, b, c) = a (1, 0, 0) + b (0, 1, 0) + c (0, 0, 1) = ae1 + be2 + ce3

Ejemplo A-8. Determine si un vector es una combinación lineal.

Determine si el vector v = (3, 9, -4, -2) es una C. L. de los vectores 1 = (1, -2, 0, 3), 2 = (2, 3, 0, -1), 3 = (2, -1, 2,

1) es decir, si pertenece al espacio generado por los i.

305

Entonces: v es una C. L. de los i : v = 1 + 3 2 - 2 3

Base.- De un espacio vectorial es cualquier conjunto de vectores linealmente independientes que general dicho espacio

vectorial.

{x1, x2,...,xn} es base de En son L. I. Y {x1, x2, ..., xn} = En

Ejemplo A-9. Bases.

El conjunto de ei:

es una base para R3, porque e1, e2 y e3 son L. I. y además generan R3 .

El conjunto de vectores

no es una base para R2 porque aunque lo generan no son L. I.

El conjunto de vectores

306

No son una base, porque aunque sean L. I. no generan R3.

Conjunto convexo. Un conjunto en Rn es convexo si dos puntos cualesquiera del mismo se pueden unir por un

segmento formado por todos los puntos de la forma

p + (1 - ) q;

para 0 < < 1

Una combinación convexa de los puntos p1, p2, ........ , pn es un punto p = 1p1 + 2p2 + ... + rnpn donde las i son

escalares 1 >= 0 y i = 1.

Ejemplos de conjuntos convexos son: el espacio En, un círculo, el espacio de una esfera, un cubo.

Teorema.- Cualquier punto sobre el segmento de línea que une dos puntos en En , puede ser expresado como una

combinación convexa de los dos puntos.

P + (q - p) = w o bien: (1 - ) + q = w

Figura A-6. Conjunto convexo.

Punto extremo.- Un punto p en un conjunto convexo, recibe el nombre de punto extremo, si p no puede ser expresado

como una combinación convexa de cualesquiera otros dos puntos distintos en el conjunto. Cada punto sobre la frontera

de un círculo o de una esfera, es un punto extremo del conjunto que incluye la frontera y el interior. Los puntos

extremos de un triángulo o de un polígono son sus vértices.

A.2.2. Matriz inversa.

Una matriz inversa cuadrada A-1 es la inversa de una matriz cuadrada A, si A A-1 = I.

Cualquier matriz cuadrada no singular A, tiene una A-1 única tal que : AA-1 = A-1A = I.

También (AB)-1 = B-1 A-1 donde A, B son matrices n x n.

Cálculo de la inversa de las matrices.

307

Mediante el procedimiento de eliminación completa de Gauss-Jordan se vio que un sistema de ecuaciones lineales, se

reduce por etapas de cálculo a la forma escalonada, eliminando sucesivamente variables de las ecuaciones hasta

reducirla a la solución.

Para mayor claridad véase el ejemplo ya mencionado que por eliminación se redujo a:

Las eliminaciones del procedimiento transforman la matriz de coeficientes.

en la matriz identidad que corresponde a los coeficientes de las ecuaciones transformadas

Se observa que la transformación total con el procedimiento de eliminación de Gauss-Jordan es equivalente a

multiplicar el sistema por A-1.

Frecuentemente es necesario no solo resolver un sistema de ecuaciones simultáneas, sino también obtener la inversa

de la matriz de coeficientes.

Esto se logra colocando una matriz identidad I m x m a la derecha de la matriz original de coeficientes y aplicando

las transformaciones de eliminación a la matriz extendida. La inversa se genera en el lugar de la matriz identidad.

Las matrices se escriben en particiones como sigue: (A| I |b)

(A-1A | A-1I | A-1b) = (I | A-1 | X)

La obtención por eliminación de la inversa mediante eliminación también se denomina operaciones elementales a

renglones de matrices y se resume así:

1. Intercambio de renglones para que a11 0

2. Multiplicar el primer renglón por una constante k 0 (Ri kRi) para que a11= 1

3. Reemplazar todo renglón i > 1, multiplicando el primer renglón (que contiene a11 = 1) por - ai1 y luego sumando

por el i-esimo renglón (i > 1), de tal manera que se elimina el primer coeficiente ai1.

El ejemplo previo ayuda a aclarar el procedimiento.

308

A.2.3. Determinantes.

A = matriz cuadrada

Definición.- Una función det: A2 definida por

Existe un números denotado por | A | y llamado el determinante de la matriz cuadrada A. El | A | se obtiene como la

suma de todos los productos posibles, en cada uno de los cuales aparece uno y solamente uno elemento de cada

renglón y cada columna de A, asignándole a cada producto un signo positivo o negativo de acuerdo con la siguiente

regla. Considerar los elementos en un producto dado, unidos en pares por segmentos de línea. Si el número de tales

segmentos con pendiente hacia la derecha es par, deberá anteponerse un + al producto, de lo contrario se antepone un

signo -.

A.2.4. Método de Chio.

Determinantes de matrices de orden "n"

309

Ejemplos:

Ejemplo:

Sustituyendo:

Cálculo por el método de Chio.

310

A.2.5. Propiedades de los determinantes.

1. El valor del determinante es cero, si en cada elemento de una columna o de un renglón es cero.

2. El valor de un determinante no cambia si renglones y columnas correspondientes se intercambian.

3. Por cada intercambio de dos columnas o dos renglones, el determinante cambia de signo.

4. El valor del determinante es cero, si dos renglones o columnas son idénticos.

5. Si cada elemento de una columna o de un renglón se multiplica por un número k, entonces el valor del

determinante se multiplica por k.

6. | AB |=| A | | B |

7. | A | = | AT |

Rango de una matriz.- Es el orden del arreglo cuadrado más grande en A, cuyo determinante no vale cero.

Matriz singular.- Si | A | = 0

Matriz no singular.- Si | A | 0

Menor de un elemento a i j.- El | A i j | al eliminar el i-ésimo renglón y la j-ésima columna es el cofator del elemento

en el j-ésimo renglón y i-ésima columna de A.

Adjunta de una matriz Anxn.- Es otra matriz J nxn = A j i en la cual el elemento, en el i- ésimo renglón y j-ésima

columna, es el cofactor del elemento en el j-ésimo renglón y la i-ésima columna de A

Apéndice B. RESULTADOS A PROBLEMAS EJERCICIO EN CAPÍTULOS DEL LIBRO.

Tabla de contenido B.1. Capítulo 1

B.2. Capítulo 2.

B.3. Capítulo 3.

B.4. Capítulo 4.

En esta sección se encontrarán las soluciones a los ejercicios propuestos en cada uno de los capítulos

B.1. Capítulo 1

Resolución de los ejercicios del capítulo 1

311