Programación lineal resolución de problemas en hoja de cálcul

download Programación lineal resolución de problemas en hoja de cálcul

of 109

Transcript of Programación lineal resolución de problemas en hoja de cálcul

  • 8/16/2019 Programación lineal resolución de problemas en hoja de cálcul

    1/109

    Programación LinealResolución de Problemas en

    Hoja de Cálculo

  • 8/16/2019 Programación lineal resolución de problemas en hoja de cálcul

    2/109

  • 8/16/2019 Programación lineal resolución de problemas en hoja de cálcul

    3/109

    Ethel Mokotoff Departamento de Fundamentos de Economía 

    Universidad de Alcalá 

    Programación LinealResolución de Problemas en

    Hoja de Cálculo

    SEPTEM EDICIONESOviedo, 2004

  • 8/16/2019 Programación lineal resolución de problemas en hoja de cálcul

    4/109

    Título:  Programación Lineal: Resolución de Problemas en Hoja de Cálculo

    1ª Edición, octubre 2004

     Este libro no podrá ser reproducido, ni total ni parcialmente, sin el previo permiso escrito del editor. Todos los derechos reservados.

    ©  Ethel Mokotoff 

    © Septem Ediciones, S. L.Cimadevilla 15, esc. A 1ºC 33003-OviedoTfno. 985 20 85 12 Fax. 985 20 85 13e-mail:   [email protected] 

    www.septemediciones.com 

    Colección: septem universitas Diseño Cubierta e interior: M&R Studio Año: 2004Depósito Legal: SE-0_____/2004Impresión: Publidisa ISBN: 84-95687-43-7 

    Impreso en España-Printed in Spain 

    ISBN Versión Digital: 1-4135-9752-1

    mailto:[email protected]://www.septemediciones.com/http://www.septemediciones.com/mailto:[email protected]

  • 8/16/2019 Programación lineal resolución de problemas en hoja de cálcul

    5/109

    Índice

    Capítulo 1. Marco Teórico ......................................................................................71. Introducción ......................................................................................................7

    Capítulo 2. Programación matemática ................................................................91. Introducción ......................................................................................................92. Formulación de un programa matemático ........................................................93. Ejemplo ...........................................................................................................114. Óptimos locales y óptimo global ....................................................................135. Programas matemáticos convexos ................................................................ 14

    Capítulo 3. Programación lineal ......................................................................... 191. Introducción ....................................................................................................192. Modelos lineales ............................................................................................193. Programas lineales.........................................................................................21

    4. Formulación de un programa lineal ................................................................. 225. Valor dual de una restricción .......................................................................... 24

    Capítulo 4. Formulaciones más importantes .....................................................271. Introducción ....................................................................................................272. Ejemplo del problema de la planificación de la producción............................. 273. Ejemplo del problema de la dieta ...................................................................284. Ejemplo del problema del transporte .............................................................. 29

    Capítulo 5. Resolución de problemas en ordenador utilizando What’s Best ... 31

    1. Introducción ....................................................................................................312. Descripción del problema ...............................................................................323. Introducción de datos en la hoja de cálculo.................................................... 334. Resolución del problema ................................................................................415. Variantes al problema planteado .................................................................... 436. Resultados duales ..........................................................................................46

    Capítulo 6. Solución de problemas ....................................................................571. Introducción ....................................................................................................572. Ejemplo del problema de la planificación de la producción............................. 573. Ejemplo del problema de la dieta ...................................................................594. Ejemplo del problema del transporte .............................................................. 60

  • 8/16/2019 Programación lineal resolución de problemas en hoja de cálcul

    6/109

    Capítulo 7. Aplicaciones Económicas.................................................................631. Matriz input-output de Leontieff ...................................................................... 632. Subasta de sobre cerrado ..............................................................................683. Juegos de suma cero .....................................................................................72

    Capítulo 8. Aplicaciones Financieras ................................................................. 771. Planificación de inversiones............................................................................772. Modelo de Markowitz .....................................................................................81

    Capítulo 9. Problemas de planificación ............................................................. 871. Asignación de turnos ......................................................................................872. Asignación de máquinas ................................................................................933. Planificación de proyectos .............................................................................97

    Capítulo 10. Problemas Propuestos .................................................................. 101

    Referencias..........................................................................................................107

  • 8/16/2019 Programación lineal resolución de problemas en hoja de cálcul

    7/109

    Capítulo 1. Marco Teórico

    1. IntroducciónCuando nos encontramos ante un problema que queremos resolver, lo primero que

    debemos hacer es  plantear un modelo adecuado al problema, esto significa tra-

    ducir la expresión verbal del mismo a una expresión matemática a la cual podamosaplicar algún método de resolución.

    La complejidad de un modelo depende de las expresiones matemáticas que

     presente. Si nuestro problema busca hacer el uso más eficiente de unos recursos

    disponibles, normalmente tratará de maximizar o minimizar una función de una o

    más variables, sujetas a restricciones. A estos problemas se los llama  problemas

    de optimización. Dentro de la teoría de la optimización hay gran variedad de

     problemas, entre los que se encuentran los problemas de  programación mate-

    mática, de los cuales nos ocuparemos. La teoría de juegos es también parte de la

    teoría de la optimización, y se diferencia de la programación matemática en que en

    la primera hay varios decisores, en cambio en la programación matemática existe un

    único decisor. Además, la variable tiempo no interviene como variable esencial en

    los problemas de programación matemática, lo cual los diferencia de los problemas

    de optimización dinámica.La finalidad de este trabajo es la de poner al alcance de un estudiante universita-

    rio el manejo de una herramienta informática de optimización, que le permita resol-

    ver problemas de la actividad empresarial, en los cuales, el mejor aprovechamiento

    de recursos limitados es siempre un objetivo. Para tal fin se reseña brevemente, en

    los primeros capítulos, la teoría que constituye el marco de estos problemas.

    En el Capítulo 2 se describen, de forma muy general, los problemas de progra-

    mación matemática , su formulación y las propiedades que deben verificarse para

  • 8/16/2019 Programación lineal resolución de problemas en hoja de cálcul

    8/109

     Ethel Mokotoff 8 

    que sea posible encontrar una solución óptima.

    Un gran número de situaciones reales pueden expresarse por medio de modelos

    de programación lineal . Esta gran aplicabilidad, y las eficientes técnicas de reso-

    lución que aparecieron a mediados del siglo XX, han hecho de este área de laoptimización una herramienta de gran utilidad en el terreno de la Economía y Em-

     presa. El Capítulo 3 está dedicado a revisar someramente los fundamentos teóricos

    de la programación lineal.

    De entre los innumerables casos de la vida real que pueden modelizarse con

     programación lineal , hemos escogido los más tradicionales para describir su for-

    mulación, y así se presentan en el Capítulo 4. Estos mismos problemas se resuelven

    con What’s Best  en el Capítulo 6, luego de haber descrito en el Capítulo 5 las

    características fundamentales y el modo de operar de este optimizador  .

    La elección del What’s Best  , entre las diversas herramientas informáticas de

    optimización que se comercializan en la actualidad, se ha basado simplemente en el

    hecho de que responde a una buena combinación de dos elementos que nos intere-

    san, su poder de resolución, junto a un manejo simple, sobre todo para el usuario

    familiarizado con Hojas de Cálculo.Los últimos capítulos están destinados a resolver problemas más reales. En el

    Capítulo 7 se plantean y resuelven ejemplos de Aplicaciones Económicas, en el

    Capítulo 8 de Aplicaciones Financieras y en el 9 de Planificación.

    Al final del libro se proponen 10 aplicaciones más que se dejan sin resolver para

    motivar al lector a realizar su planteamiento y solución. Estos son sólo algunos ejem-

     plos que surgen de los modelos clásicos. Podrían plantearse muchos otros mode-los. Esperamos que con estos elementos básicos, el lector se sienta animado a

    formular programas lineales, para intentar resolver los problemas de decisión que

     puedan surgirle en su vida profesional.

  • 8/16/2019 Programación lineal resolución de problemas en hoja de cálcul

    9/109

    Capítulo 2. Programación matemática

    1. IntroducciónDebido a la estructura del modelo general de la  programación matemática, una

    gran variedad de problemas reales puede ser representada como problemas de

     programación matemática.Gran parte de las aplicaciones se refieren a la administración y uso eficiente de

    recursos para mejorar la productividad. Estas aplicaciones incluyen problemas

    operativos como la distribución y planificación de la producción, selección de car-

    teras, localización de plantas, análisis y planificación de inversiones, diseño de redes

    de comunicación o transporte, diseño de circuitos eléctricos, diseño de sistemas de

     producción automática, etc.

    En este Capítulo se describe, de forma muy general, la teoría de la programa-

    ción matemática , con la única intención de crear el marco necesario para saber 

    enfrentarse a problemas que responden a estas características. Pero esta descrip-

    ción carece absolutamente de demostraciones. Presentamos, primero, la formula-

    ción general de los problemas de  programación matemática con un ejemplo. Se

    explica luego la diferencia entre óptimos locales y óptimo global. Finalmente se

    enuncian las propiedades que debe reunir un programa para que sea posible encon-trar una solución óptima.

    2. Formulación de un programa matemáticoLos problemas de programación matemática pueden definirse como el cálculo del 

    óptimo de una función, en la cual las variables que intervienen están sujetas a

    unas condiciones. En algunos casos, como cuando se trata de beneficios, optimizar 

    significará maximizar, y en otros, por ejemplo si se miden gastos, optimizar seráminimizar. Las condiciones establecen un subconjunto de posibles valores de las

  • 8/16/2019 Programación lineal resolución de problemas en hoja de cálcul

    10/109

     Ethel Mokotoff 10

    variables, como ser mayores o iguales que cero, menores que una cantidad límite, o

    que una combinación lineal de ellas no pueda sobrepasar un límite o deba superar 

    un nivel mínimo, etc. A estas condiciones se las denomina restricciones.

    La formulación general de un problema de  programación matemática es:Optimizar f( x )

    sujeto a:g( x )dh( x )ei( x )=f  xS

    donde:

     x =(x1 , x

    2 ,..., x

    q )T es el vector columna de las variables de decisión, x  q

    g=(g1, g

    2,..., g

    m)T es el vector columna de las funciones de restricciones de tipo

    (es un campo vectorial)

    h=(h1, h

    2,..., h

    n)T es el vector columna de las funciones de restricciones de tipo

    (es un campo vectorial)

    i=(i1, i2,..., i p)T es el vector columna de las funciones de restricciones de tipo =(es un campo vectorial)

    d=(d1, d

    2,..., d

    m)T es el vector columna del segundo miembro de restricciones de

    tipo

    e=(e1, e

    2,..., e

    n)T es el vector columna del segundo miembro de restricciones de

    tipo

    f =(f 1, f 2,..., f  p)T es el vector columna del segundo miembro de restricciones detipo =

    S es un determinado subconjunto de E q

    En esta formulación optimizar  puede significar minimizar o maximizar .

    El vector x  es el vector de las variables de decisión del problema, cuyos valo-

    res podemos elegir. Solucionar el problema será encontrar los valores de estas

    variables, de manera que se alcance un valor óptimo de f( x ), sin incumplir las res-

    tricciones impuestas.

  • 8/16/2019 Programación lineal resolución de problemas en hoja de cálcul

    11/109

    Programación Lineal: Resolución de Problemas en Hoja de Cálculo 11

    La función f( x ) es la  función objetivo del problema. Es una función escalar que

    indica el valor de la medida de interés del problema para cada valor del vector x .

    Las g( x ), h( x ) y i( x ), son funciones vectoriales de m, n y p componentes, res-

     pectivamente, que restringen los valores de las componentes del vector x , es de-cir, hacen que x  no pueda ser cualquier vector de q componentes que optimice la

    función objetivo, sino que debe respetar las condiciones que estas restricciones

    imponen a sus componentes.

    S representa a las restricciones impuestas sobre el conjunto de variables, pero

    que no son relaciones matemáticas entre las variables, sino que tienen que ver con la

    naturaleza de las mismas. Esta idea se aclarará con los siguientes ejemplos:

    Con S es posible especificar que las variables sólo puedan tomar valores no

    negativos. Por ejemplo, si se trata de cantidades a producir, no tiene sentido

    hablar de producir cantidades menores que cero.

    S puede significar que todas o algunas de las variables representan relaciones

    lógicas, es decir, que sólo pueden tomar los valores sí/no. Este es el caso de un

    área muy importante de la programación matemática que es la optimización

    combinatoria. Consideremos, por ejemplo, que se trata de decidir si construir 

    o no una nueva planta.

    S puede ser el conjunto de los números naturales, es decir, que las variables

    sólo puedan tomar valores enteros no negativos, en este caso se habla de

    optimización entera. Sea por ejemplo la determinación del número de vivien-

    das a construir. No es posible edificar la vivienda a medias, es necesario que el

    número de unidades a construir sea siempre un valor discreto, y los redondeos,en muchos casos, pueden conducir a grandes errores.

    Se llama solución factible a todo vector x  que cumple las restricciones.

    3. EjemploUna empresa automotriz fabrica dos modelos de automóvil diferentes, cada uno

    con un precio diferente, en sus tres plantas. Cada modelo tiene un precio uniforme,

     pero diferente coste según en cual de las plantas haya sido fabricado. Además,

  • 8/16/2019 Programación lineal resolución de problemas en hoja de cálcul

    12/109

     Ethel Mokotoff 12 

    cada planta tiene un límite en su capacidad de producción.

    Se deben establecer las cantidades a producir de cada modelo en cada planta,

    de manera de maximizar los beneficios totales. Se conoce del mercado el número

    máximo de unidades de cada modelo que pueden ser vendidas.COSTES UNITARIOS DE FABRICACIÓN

    Las variables de decisión están representadas por qij

    , donde i indica de qué

    modelo de automóvil se trata (i= 1, 2) y j la planta en la cual se fabrica ( j= 1, 2, 3).

    La función de beneficios a maximizar es el resultado de restar los costes de

     producción a los ingresos obtenidos por la venta de los productos fabricados.

    La cantidad total de unidades del modelo i que se fabrican queda indicada por 

    3

    1 j

    ijq

    Los ingresos por venta de los productos quedan determinados por 

    3

    12

    3

    11

    3

    1

    2

    1

    000.500.1000.300.1 j

     j

     j

     j

     j

    ij

    i

    i qqq p

    Los costes de producción se calculan como

    2

    1

    3

    1i jijij qc

    Así resulta la siguiente formulación del problema:

     

    3

    1 j2j

    3

    1 j1j 1.500.0001.300.000 qq Max

    Plantas Norte Oeste Sur Precios DemandaMod A 700.000 800.000 1.200.000 1.300.000 1.504Mod B 900.000 1.200.000 1.050.000 1.500.000 486Capacidad 500 100 200

     

    232221

    131211

    qq

    q

    qqq  

  • 8/16/2019 Programación lineal resolución de problemas en hoja de cálcul

    13/109

    Programación Lineal: Resolución de Problemas en Hoja de Cálculo 13

    s.a

     Restricciones de Capacidad 

    q11

    +q21

      500

    q12

    +q22   100

    q13

    +q23

      200

     Restricciones de Demanda

    q11

    +q12

    +q13

      1504

    q21

    +q22

    +q23

      486

     Restricciones de No Negatividad 

    qij 

     0, i= 1, 2 y  j= 1, 2, 3

    4. Óptimos locales y óptimo globalEn un modelo de programación matemática se busca la mejor solución. Pero

     puede ocurrir que existan varias soluciones que sean óptimos locales, es decir,soluciones que son la mejor solución en una zona del conjunto de soluciones, pero

    entre la totalidad de las soluciones posibles, puede haber alguna que la mejore.

    El óptimo global  es la mejor de todas las soluciones factibles. En algunos pro-

     blemas pueden encontrarse óptimos locales, pero no siempre es fácil encontrar el

    óptimo global . Es por esta razón (la existencia de más de un óptimo local ), que la

    solución que un mismo optimizador pueda encontrar, depende de la solución ini-cial, ya que busca en las proximidades de la solución inicial, y, en cuanto encuentra

    el primer óptimo local , se para y da el resultado. Si se busca mejorar la solución,

     puede ser conveniente optimizar varias veces con diferentes soluciones iniciales.

    Es evidente que, cuando formulamos un  programa matemático, lo que desea-

    mos calcular son sus óptimos globales. Los óptimos locales pueden ser de muy

     poca utilidad y conducirnos a adoptar decisiones muy poco apropiadas para el

     problema que se trata de resolver. Por otro lado, tanto la teoría, como las herra-

  • 8/16/2019 Programación lineal resolución de problemas en hoja de cálcul

    14/109

     Ethel Mokotoff 14

    mientas actuales de optimización, no permiten, en algunos problemas, encontrar 

    más que óptimos locales.

    Encontrar condiciones de optimalidad global , o algoritmos que encuentren

    óptimos globales, es posible sólo cuando el  programa matemático es convexo,es decir, que la función objetivo debe ser convexa, y las restricciones deben

     presentar tales características que hagan que el conjunto de soluciones factibles

    sea convexo. De este modo se garantiza que cualquier óptimo local  sea óptimo

     global . Es por esto que la convexidad de los programas matemáticos es tan

    importante y merece nuestra atención.

    5. Programas matemáticos convexosUn conjunto de puntos es un conjunto convexo, si todos los puntos del seg-

    mento de recta que une cualquier par de puntos del conjunto, también perte-

    necen a dicho conjunto. El conjunto de la Figura A es, según la definición anterior,

    un conjunto convexo, mientras el de la Figura B es cóncavo.

    FIGURA A CONJUNTO CONVEXO FIGURA B CONJUNTO CÓNCAVO

    Los conjuntos encerrados dentro de los contornos de las figuras anteriores sonde dos dimensiones, si generalizamos este concepto a conjuntos n-dimensionales,

    es necesario recurrir a una definición más formal, como la siguiente:

    Un conjunto S  n es convexo si

     x 1,  x 2  S

       , 0 1,

     x1 x2 

    x1  x2 

  • 8/16/2019 Programación lineal resolución de problemas en hoja de cálcul

    15/109

    Programación Lineal: Resolución de Problemas en Hoja de Cálculo 15 

    los puntos  x =  x 2 + (1-) x 

    1  pertenecen a S.

    Para las funciones también es posible analizar su convexidad o concavidad .

    Como en el caso de conjuntos, es posible realizar un análisis gráfico en dos

    dimensiones, aunque sólo cuando se trata de funciones de una variable:Una función es convexa si todo segmento que una cualquier par de puntos de

     su gráfica, nunca se sitúa por debajo de la misma. Si la cuerda siempre está por 

    encima de la gráfica de la función, entonces la función es estrictamente convexa.

    Esta distinción entre convexidad  y convexidad estricta es necesaria debido a

    que una función puede ser cóncava y convexa a la vez. Sea el caso de una función

    lineal, el segmento que une dos de sus puntos, no está por debajo ni por encima dela gráfica de la función, por lo tanto la función es cóncava y convexa, pero no es

    estrictamente convexa.

    FIGURA A FUNCIÓN ESTRICTAMENTE  CONVEXA  FIGURA B FUNCIÓN CONVEXA

    Estas definiciones pueden formalizarse para hacerlas extensibles a funciones de

    más de una variable:

    Una función f(  x  ), definida en un conjunto convexo S de n , es una función

    convexa si

     x 1 , x 2   S 

        , 0 1

     se verifica:

    f( x2 + (1-) x

    1)  f( x

    2) + (1-)f( x

    1)

     La función es estrictamente convexa si se verifica la expresión anterior con

    desigualdad estricta cuando 0

  • 8/16/2019 Programación lineal resolución de problemas en hoja de cálcul

    16/109

     Ethel Mokotoff 16 

    En la expresión principal de la definición, el miembro de la izquierda es el valor 

    de la función en un punto intermedio entre x 1 y x 

    2, mientras que el miembro de la

    derecha es el valor de la ordenada, en el mismo punto, de la recta que une los

     puntos f( x 1) y f( x 2).

     f(x1)

    f(x2)

    f(x2+(1-)x1)

    x1   x2x2+(1-)x1

    f(x2)+(1-)f(x1)

    f(x)

    x

    Debido a que, si una función no es convexa es cóncava, entonces, según el

    gráfico (dibujado para el caso S ), una función es cóncava si la recta que une

    un par de puntos cualesquiera de su gráfica, nunca está por encima de la gráfica

    de la función, y es estrictamente cóncava si la recta que une un par de puntoscualesquiera de su gráfica siempre está por debajo de la gráfica de la función.

    A partir de estas definiciones, es importante observar, que las funciones linea-

    les son convexas y cóncavas, pero no son ni estrictamente convexas ni estric-

    tamente cóncavas.

    • Un programa matemático de minimización es convexo si su función objeti-

    vo es convexa y el conjunto de soluciones factibles determinado por lasrestricciones es un conjunto convexo.

    • Un programa matemático de maximización es convexo si su función obje-

    tivo es cóncava y el conjunto de soluciones factibles determinado por las

    restricciones es un conjunto convexo.

    Para asegurar la convexidad del conjunto de soluciones factibles B={ x /

    g( x )b, h( x )c, i( x )=d} es suficiente, aunque no necesario, que se verifiquen lassiguientes condiciones:

  • 8/16/2019 Programación lineal resolución de problemas en hoja de cálcul

    17/109

    Programación Lineal: Resolución de Problemas en Hoja de Cálculo 17 

    1. Las funciones g( x ) que definen restricciones del tipo g( x )b deben ser fun-

    ciones convexas.

    2. Las funciones h( x ) que definen restricciones del tipo h( x )b deben ser fun-

    ciones cóncavas.

    3. Las funciones i( x ) que definen restricciones del tipo i( x )=b deben ser funcio-

    nes lineales.

    Recordemos la razón que nos motivó a repasar las nociones de convexidad:

    Si un programa matemático es convexo, todo óptimo local (mínimo omáximo) es óptimo global.

  • 8/16/2019 Programación lineal resolución de problemas en hoja de cálcul

    18/109

  • 8/16/2019 Programación lineal resolución de problemas en hoja de cálcul

    19/109

    Capítulo 3. Programación lineal

    1. IntroducciónEste capítulo está dedicado a la rama de la  programación matemática que más

    se ha desarrollado. A fines de los años cuarenta George B. Dantzig desarrolla el

    algoritmo simplex, que resuelve problemas de  programación lineal  aprove-chando la especial estructura de estos programas, y constituyendo el método más

     poderoso de resolución de los mismos. A partir de entonces no han cesado de

    extenderse las aplicaciones de la  programación lineal  en la Economía e Indus-

    tria, dado que un gran número de situaciones reales pueden ser representadas me-

    diante modelos de  programación lineal .

    En el apartado siguiente describimos las características de un modelo lineal ,

    así como el modo de generar el modelo matemático a partir de la expresión verbal

    de un problema real. Se caracterizan, luego, los  programas lineales, enunciando

    sus propiedades fundamentales, que hacen que siempre sea posible resolverlos. En

    el cuarto apartado se presenta la  formulación estándar de un programa lineal ,

    y se explica cómo un problema de programación lineal cualquiera, puede ser expre-

    sado con la  formulación estándar . Por último se hace referencia a la importancia

    de los resultados duales de un programa lineal .

    2. Modelos lineales

    Expresiones lineales

    Si todos los términos de una expresión matemática son de primer orden, la ex-

     presión es lineal. Esto significa que no contiene variables elevadas al cuadrado,

    cubo, ni a ningún exponente distinto de uno, tampoco puede aparecer una variable

    en el denominador de algún término, o estar multiplicada por otra variable. En las

  • 8/16/2019 Programación lineal resolución de problemas en hoja de cálcul

    20/109

     Ethel Mokotoff 20

    expresiones matemáticas lineales existe proporcionalidad: para cada incremento o

    disminución unitaria del valor de una variable, el resultado de la expresión aumenta

    o disminuye en una cantidad fija, que es el coeficiente de esa variable en la expre-

    sión.Ecuaciones lineales son las que representan a las relaciones lineales, su forma

     básica es la ecuación de una recta:

     y=m x +b

    donde m y b son constantes.

    Ejemplo

    Supongamos que alguien compra naranjas a 200 unidades monetarias (en ade-

    lante, u.m.) el kilogramo. La expresión utilizada para representar la función de cos-

    tes C, en términos de la cantidad de naranjas comprada N, expresada en kilogra-

    mos es:

    C=200 x N.

    Lógicamente, un gráfico para la función de costes C es una línea recta, con

     pendiente 200 y ordenada al origen 0:

    0

    2000

    4000

    6000

    8000

    10000

    0 10 20 30 40Naranjas compradas

    Coste

    Las expresiones lineales pueden tener una o varias variables. Si, por ejemplo,

    también se compran manzanas, M, a 250 u.m. el kilogramo, y plátanos, P, a 300

    u.m. el kilogramo, la función de costes es

    C= 200 x N+ 250 x M+ 300 x Pesta expresión de costes es también lineal. Las variables N, M, P, aparecen con

  • 8/16/2019 Programación lineal resolución de problemas en hoja de cálcul

    21/109

    Programación Lineal: Resolución de Problemas en Hoja de Cálculo 21

    exponente 1 y multiplicadas por un factor fijo. Pero su representación gráfica no es

     posible, pues tiene 4 dimensiones.

    Expresiones no-lineales

    Por definición, toda expresión que no sea lineal será no-lineal. Las expresionesno-lineales incluyen relaciones en las cuales las variables están elevadas al cuadra-

    do, al cubo, potencias distintas de uno, o están multiplicadas o divididas entre ellas.

    Si todas las expresiones matemáticas presentes en un modelo sonlineales, el modelo es lineal.

    Siempre que sea posible, un problema debe formularse con expresiones linea-

    les. Si, por ejemplo tenemos que reflejar la relación x/ y  10

    entre dos variables x e y, ambas mayores que cero, será mejor presentar esa rela-

    ción como

     x  10 y

    3. Programas lineales

    Un programa lineal es un programa matemático en el cual, tanto la función

    objetivo, como todas las restricciones impuestas sobre las variables de decisión,

     son funciones lineales de dichas variables.

    Las variables de decisión pueden ser continuas o discretas, en el primer caso se

    trata de un programa lineal continuo, mientras que si todas o algunas de las varia-

     bles son discretas estamos ante un programa lineal entero o mixto. Este último

    tipo de programas constituye en sí mismo una importante rama de las Matemáticas

    que excede a las ambiciones de esta exposición, por lo cual, nos centraremos en el

    estudio de  programas lineales continuos.

    Al estudiar la convexidad de funciones hemos hecho hincapié en que toda fun-

    ción lineal es convexa, por lo tanto, si la función objetivo es lineal será convexa.

    Además, si todas las restricciones son funciones lineales, quedan garantizadas

    las condiciones suficientes de convexidad del conjunto de soluciones facti-

    bles de un programa matemático, enunciadas al estudiar la convexidad de pro-

    gramas matemáticos.

  • 8/16/2019 Programación lineal resolución de problemas en hoja de cálcul

    22/109

     Ethel Mokotoff 22 

    Estamos en condiciones de afirmar que:

    Todo programa lineal, definido sobre variables continuas, es convexo, por lo tanto, cualquier óptimo que se encuentre es óptimo global y constituye

    la mejor solución al problema.Los modelos con expresiones no lineales son mucho más difíciles de resolver que los

    modelos lineales. A diferencia de los modelos lineales, en un modelo no lineal puede

    que sea extremadamente difícil encontrar el óptimo, aunque éste exista. También pue-

    de ocurrir que se crea haber alcanzado el óptimo y exista una mejor solución.

    4. Formulación de un programa lineal

    Un programa lineal continuo puede ser formulado de diversas maneras, pero para su procesamiento de cómputo, es convertido a una forma estándar . Los programas de

    ordenador actuales aceptan presentaciones flexibles y cómodas para el usuario, aun-

    que luego, internamente, convierten el problema a la formulación estándar . Presen-

    tamos, a continuación, la expresión escalar de la formulación de un programa lineal

    )...( 22111

    nn

    n

    i

    ii  xc xc xc Min xc Min  

    s. a

    a11

     x1+ a

    12 x

    2+... a

    1j x

     j+...+ a

    1n x

    n = b

    1

    a21

     x1+ a

    22 x

    2+... a

    2j x

     j+...+ a

    2n x

    n = b

    2

    ..................................................

    ai1 x

    1+ a

    i2 x

    2+... a

    ij x

     j+...+ a

    in x

    n = b

    i

    .................................................

    am1

     x1+ a

    m2 x

    2+... a

    mj x

     j+...+ a

    mn x

    n = b

    m

     x1  0, x

    2  0,... x

    n  0

    En forma matricial la expresión resulta más compacta:

     Min c x 

     A x = b

     x  0 ,

  • 8/16/2019 Programación lineal resolución de problemas en hoja de cálcul

    23/109

    Programación Lineal: Resolución de Problemas en Hoja de Cálculo 23

    donde

    c=(c1 , c

    2 ,..., c

    n) es el vector fila de los coeficientes de las variables en la función

    objetivo

     x =( x1 , x

    2 ,..., x

    n)T es el vector columna de las variables de decisión

    b=(b1 , b

    2 ,..., b

    m)T es el vector columna del segundo miembro de las m restricciones

     Amxn

    = [aij] es la matriz de los coeficientes de las restricciones

    Cualquier programa lineal, aunque no tenga, exactamente, esta formulación, puede

    traducirse a la  forma estándar , mediante las siguientes transformaciones:

    • Conversión de desigualdades a igualdades

    ii

    n

     j

     jiji

    n

     j

     jij b xab xa    

    11

    i  0

    ii

    n

     j

     jiji

    n

     j

     jij b xab xa    

    11

    i  0

    • Sustitución de cada variable libre por dos variables restringidas a no negatividad

     xi  libre

    es sustituida por 

     xi= h

    i- p

    i

    hi  0

     pi  0

    • Sustitución del objetivo de maximización por minimización

     Max( c x  )

    es equivalente a

     Min(-c x )La popularidad de la programación lineal  se debe, en parte, al gran número de

  • 8/16/2019 Programación lineal resolución de problemas en hoja de cálcul

    24/109

     Ethel Mokotoff 24

     problemas reales que pueden modelizarse como programas lineales, y, por otro

    lado, a la sorprendente rapidez y eficacia con que se resuelven con el método simplex.

    Por la finalidad de este trabajo, no tiene sentido profundizar en los métodos de

    resolución, pues se encargará de ello un ordenador, pero sí conviene hacer unainterpretación de resultados.

    Hay garantías de que, si existe una solución, esta será encontrada. Pero no siem-

     pre se puede resolver un programa lineal, porque no todos los problemas lineales

    tienen solución. Pueden ocurrir que:

    • el óptimo sea ilimitado (el valor de la función objetivo tiende a infinito negativo), o

    • las restricciones hayan hecho que el conjunto de soluciones factibles esté vacío.En los casos en los cuales el programa lineal  tiene solución óptima, además de

    la solución óptima, el simplex brinda información acerca de resultados duales,

    que son de gran utilidad como se explica a continuación.

    5. Valor dual de una restricciónEn general, el valor dual de una restricción es la tasa de variación del valor de

    la función objetivo con respecto a variaciones en el valor del término indepen-

    diente (miembro de la derecha) de la restricción, siempre que el resto de la

    información del problema no varíe (ceteris paribus) y dentro de cierto interva-

    lo de variación del término independiente. Se lo suele llamar precio sombra o

    coste reducido y permite analizar el efecto de pequeñas perturbaciones.

    Como ejemplo, supongamos el problema de maximizar ingresos por ventas,

    sujeto a unas restricciones de capacidad productiva. Si la capacidad productivaestá saturada (esto quiere decir que se aprovecha hasta el máximo sin dejar capa-

    cidad ociosa), si pudiéramos producir una unidad más, nuestros ingresos aumenta-

    rían. La cantidad que aumenta el valor de la función objetivo, por unidad de incre-

    mento de capacidad productiva, está medida por el valor dual de esta restricción de

    capacidad productiva. La idea intuitiva es que si una restricción está impidiendo a la

    función objetivo seguir mejorando, el precio sombra indica cuánto mejoraría el

    valor de la función objetivo, en el hipotético caso de que la restricción en cuestión se

  • 8/16/2019 Programación lineal resolución de problemas en hoja de cálcul

    25/109

    Programación Lineal: Resolución de Problemas en Hoja de Cálculo 25 

    relajara en una unidad, permitiendo al valor de la función objetivo mejorar. El nombre

    de  precio sombra se debe a que indica hasta cuánto puede pagarse por una unidad

    adicional del recurso en cuestión, sin que ello represente una reducción de los beneficios.

    Se dice que una restricción está saturada cuando actúa efectivamente como restric-ción. Siguiendo con nuestro ejemplo, si en la solución óptima se utiliza la totalidad de la

    capacidad productiva, la restricción está saturada, y ampliar la capacidad productiva

     permitiría mejorar los ingresos. Pero si queda capacidad productiva sin utilizar, esa res-

    tricción no está activa, no representa una verdadera limitación a nuestro problema, y

    aunque ampliáramos la capacidad productiva, la solución óptima sería la misma. El pre-

    cio sombra es nulo en este caso.

    Si se trata de restricciones de menor o igual,relajarla significa aumentar el valor del

    término independiente, por ejemplo ampliar la capacidad productiva. Mientras que, en

    restricciones de mayor o igual, sea por ejemplo el caso de estar obligados a satisfacer 

    una demanda (como en el problema de la dieta que se presenta en el siguiente capítulo),

    relajar  la restricción significa reducir el valor del término independiente.

    Con las definiciones anteriores, estamos en condiciones de afirmar que los valores

    duales iguales a cero deben interpretarse, en general, como restricciones no saturadas;en cambio valores duales distintos de cero miden la mejora en el valor de la función

    objetivo que se produciría si relajáramos la restricción en una unidad.

    La utilidad de la información dual es muy grande, pero no debe olvidarse que los

    valores duales son válidos siempre que se cumplan los siguientes supuestos:

    • El resto de los datos del problema se mantiene invariable, es decir, que no pueden

    analizarse los efectos en el valor de la función objetivo de más de una variaciónsimultáneamente.

    • El valor del término independiente de la restricción en cuestión varía dentro de un

    intervalo de validez. No pueden extenderse los resultados duales a variaciones de

    magnitud arbitrariamente grande, debido a que más allá de sus límites de estabilidad,

    el valor dual cambia.

  • 8/16/2019 Programación lineal resolución de problemas en hoja de cálcul

    26/109

  • 8/16/2019 Programación lineal resolución de problemas en hoja de cálcul

    27/109

    Capítulo 4. Formulaciones más importantes

    1. IntroducciónLa programación lineal  permite resolver problemas de diversa naturaleza, como

    son los problemas de producción, planificación financiera, asignación de personal,

    inventarios, control, etc. En este capítulo presentamos tres casos de interés desde el punto de vista de la Economía y la Empresa, con su respectiva modelización ma-

    temática y formulación como problema de programación lineal.

    Estos mismos problemas serán resueltos con What’s Best  en los capítulos si-

    guientes, después de haber introducido el manejo de esta herramienta informática.

    2. Ejemplo del problema de la planificación de la producción

    Una fábrica produce seis bienes distintos a partir de seis materias primas. Cada pro-

    ducto requiere una diferente combinación de materias primas (restricciones tecnológi-

    cas) y de él se obtiene un beneficio. Se debe encontrar la cantidad a producir de cada

     bien que maximice los beneficios totales, con el stock actual de materias primas.

    En la formulación se representa mediante x1 , x

    2 ,..., x

    6  a las cantidades a produ-

    cir de cada uno de los productos 1, 2,..., 6, respectivamente.

    Producto 1 2 3 4 5 6 ExistenciasBeneficio (u.m) 3.000 4.500 2.400 2.600 2.400 3.000

     Acero 1 4 0 4 2 0 800Madera 4 5 3 0 1 0 1.160Plástico 0 3 8 0 1 0 1.780Caucho 2 0 1 2 1 5 1.050Vidrio 2 4 2 2 2 4 1.360Pintura 1 4 1 4 3 4 1.240

  • 8/16/2019 Programación lineal resolución de problemas en hoja de cálcul

    28/109

     Ethel Mokotoff 28 

    Formulación del problema

     Max 3.000 x1+ 4.500 x

    2+ 2.400 x

    3+ 2.600 x

    4+ 2.400 x

    5+ 3.000 x

    s.a x

    1+4 x

    2+4 x

    4+2 x

    5  800

    4 x1 +5 x2 +3 x3 + x5   1.1603 x

    2+8 x

    3+ x

    5  1.780

    2 x1

    + x3

    +2 x4

    + x5

    +5 x6 

      1.0502 x

    1+4 x

    2+2 x

    3+2 x

    4+2 x

    5+4 x

    6   1.360

     x1

    +4 x2

    + x3

    +4 x4

    +3 x5

    +4 x6 

      1.240

     xi  0, 1 i 6

    3. Ejemplo del problema de la dietaConsiste en determinar una dieta alimenticia de la forma menos costosa, satisfacien-

    do unas exigencias mínimas de nutrición. Se dispone de cuatro alimentos, cada uno

    con su coste, y se desea conocer en qué proporción deben participar estos alimen-

    tos en la dieta.

    Los menús que se preparen con estos alimentos deben contener una cantidad

    mínima de vitaminas, que se encuentran, en ciertas proporciones dentro de cada

    alimento.COMPOSICIÓN  NUTRITIVA DE CADA ALIMENTO

    Las variables x1 , x

    2 , x

    3 y x

    4 representan las cantidades de alimento 1, 2, 3 y 4

     presentes en la dieta, respectivamente.

    Formulación del problema

     Min 100(35 x1+ 50 x

    2+ 80 x

    3+ 95 x

    4 )

    s.a2,2 x

    1 + 3,4 x

    2 + 7,2 x

    3 + 1,5 x

    4   2,4

    1,4 x1 + 1,1 x2 + 0,8 x4   0,72,3 x

    1 + 5,6 x

    2 + 11,1 x

    3 + 1,3 x

    4   5,0

    Alimento 1 2 3 4 Mínimo RequeridoVitamina A 2,2 3,4 7,2 1,5 2,4Vitamina B 1,4 1,1 0,0 0,8 0,7Vitamina C 2,3 5,6 11,1 1,3 5,0Vitamina D 12,0 11,9 41,8 52,1 21,0Coste 35 50 80 95 

  • 8/16/2019 Programación lineal resolución de problemas en hoja de cálcul

    29/109

    Programación Lineal: Resolución de Problemas en Hoja de Cálculo 29 

    12,0 x1 + 11,9 x

    2 + 41,8 x

    3 + 52,1 x

    4   21,0

     x1 +  x

    2 +  x

    3 +  x

    4= 1

     xi  0, 1 i 4

    4. Ejemplo del problema del transporteUna empresa fabrica un producto en sus tres plantas situadas en distintas ciudades. El

     producto se consume en cuatro mercados distintos. Cada planta tiene una capacidad

    máxima de producción, y cada mercado tiene una demanda que debe ser satisfecha.

    Encontrar las cantidades a producir en cada planta, de manera que se satisfagan las

    demandas de todos los mercados, minimizando los costes de transporte. Se conocen

    los costes de transporte desde cada planta a cada centro de consumo.

    COSTES DE TRANSPORTE  DE CADA PLANTA A CADA MERCADO

    Formulación del problema

     Min

    3

    1

    4

    1i jijij xc

    s.a

    31 ,4

    1

    iq x j

    iij

    41 ,

    3

    1  jd  xi jij

     xij  0, 1 i 3 y 1  j 4

    En esta expresión simplificada

    cij es el coste de transporte, desde cada planta i, hasta cada mercado j

     xij es la cantidad a transportar, desde cada planta i, hasta cada mercado j (estas

    son las variables de decisión)q

    i es la capacidad productiva de la planta i

    Mercados 1 2 3 4 Capacidad productivaPlanta A 5,00 7,00 0,00 0,00 70Planta B 9,60 5,50 7,00 7,50 110Planta C 0,00 7,50 7,15 4,00 135Demanda 30 57 41 51 

  • 8/16/2019 Programación lineal resolución de problemas en hoja de cálcul

    30/109

     Ethel Mokotoff 30

    d  j 

    es la demanda del mercado j

    Para el lector menos familiarizado con esta notación, presentamos a continua-

    ción la misma formulación en forma extensiva.

     Min  5 x11+7 x12+9,6 x21+5,5 x22+7 x23+7,5 x24+7,5 x32+7,15 x33+4 x34 x

    11+ x

    12+ x

    13+ x

    14  70

     x21

    + x22

    + x23

    + x24

      110 X 

    31+ x

    32+ x

    33+ x

    34  135

     x11

    + x21

    + x31

      30 x

    12+ x

    22+ x

    32  57

     x13

    + x23

    + x33

      41 x

    14+ x

    24+ x

    34  51

     xij  0, 1 i 3 y 1  j 4

  • 8/16/2019 Programación lineal resolución de problemas en hoja de cálcul

    31/109

    Capítulo 5. Resolución de problemas en ordenador utilizando What’s Best

    1. IntroducciónLa elección del What’s Best, entre las diversas herramientas informáticas de

    optimización que se comercializan en la actualidad se ha basado, simplemente, en elhecho de que responde a una buena combinación de dos elementos que nos intere-

    san: poder de resolución, y manejo simple, sobre todo para el usuario acostumbra-

    do a utilizar hojas de cálculo. Aunque hoy en día la herramienta Solver , que puede

    incluirse como complemento de Excel, es suficientemente potente, no presenta las

    ventajas didácticas del What’s Best .

    What’s Best  (a partir de aquí lo llamaremos WB) permite al usuario construir y

    resolver modelos de optimización lineales, no lineales y enteros desde una hoja de cálcu-

    lo, por lo que puede considerarse como una extensión de Excel o de Lotus 1-2-3. Una

    vez instalado el software, WB se convierte en un nuevo comando del menú de Excel, y

    seleccionándolo, se despliega el menú de WB, ofreciendo sus posibilidades (la versión

    4.0 presenta la posibilidad de tener los comandos como un conjunto de botones).

    Con WB los modelos pueden haber sido creados en formato libre utilizando las

    ecuaciones de la hoja de cálculo. No es necesario que el problema esté expresadoen formato estándar , lo cual ahorra mucho trabajo y evita posibles errores.

    Este programa ofrece resultados duales con sus respectivos rangos de validez.

    Esta información adicional es de gran utilidad y permite realizar interesantes análisis

    de sensibilidad.

    En este capítulo introducimos el WB mediante el desarrollo de un sencillo ejemplo en

    Excel. Se explica como expresar y resolver problemas en WB , paso a paso, para queel lector pueda definir el problema en una hoja de cálculo y resolverlo.

  • 8/16/2019 Programación lineal resolución de problemas en hoja de cálcul

    32/109

     Ethel Mokotoff 32 

    Se han usado las convenciones de Excel para indicar rangos de celdas (:), fun-

    ciones, y referencias a celdas (=). Si se está trabajando en Lotus 1-2-3 las conven-

    ciones serían “..”, “@”, y “+”, respectivamente.

    2. Descripción del problemaUna empresa construye dos modelos de ordenador, uno estándar y otro de lujo. El

    estándar tiene un beneficio de 30.000 u.m. por unidad, y el de lujo 50.000 u.m. por 

    unidad. Como se muestra en la tabla de requerimientos, los dos modelos son construi-

    dos a partir de tres componentes: equipo estándar, equipo de lujo, y disqueteras.

    = ORDENADOR ESTÁNDAR 

    Equipo estándar + 1 disquetera

    = ORDENADOR DE LUJO

    Equipo de lujo + 2 disquetera

  • 8/16/2019 Programación lineal resolución de problemas en hoja de cálcul

    33/109

    Programación Lineal: Resolución de Problemas en Hoja de Cálculo 33

    REQUERIMIENT OS DE COMPONENTES  PARA CADA MODELO  DE PRODUCTO

    ¿Qué combinación de modelos estándares y de lujo maximizará los beneficios

    de la empresa, contando con las actuales existencias de componentes?

    Formulación del problema

     Nos encontramos ante un problema de programación lineal cuya formulación es:

     Max 30.000 x1+ 50.000 x

    2

    s.a

     x1

      60 (equipos estándares)

      x2  50 (equipos de lujo)

     x1

    +2 x2  120 (disqueteras)

     x1  0, x

    2  0,

    donde:

     x1: es la cantidad de ordenadores estándares a producir y

     x2: es la cantidad de ordenadores de lujo a producir.

    3. Introducción de datos en la hoja de cálculoPodemos comenzar volcando la información del problema en una hoja de cálculo

    (restricciones tecnológicas, niveles de existencias y beneficio por unidad). No es

    necesario ajustarse a ninguna formulación estándar. La información puede presen-

    tarse en la hoja cálculo de cualquier forma. Una posibilidad es la que se presenta a

    continuación en la siguiente figura.

    Modelo: Estándar  De Lujo ExistenciasEquipo Estándar 1 0 60Equipo de Lujo 0 1 50

    Disqueteras 1 2 120 

  • 8/16/2019 Programación lineal resolución de problemas en hoja de cálcul

    34/109

     Ethel Mokotoff 34

    Con los comandos de WB se establece cuales son las celdas en las que aparecerán

    los valores óptimos de las variables. Según la distribución de datos que presentamos, los

    valores de las cantidades a producir de ordenadores estándares y de lujo podrían ir en

    las celdas C5 y D5, respectivamente. A estas celdas se les puede asignar cualquier 

    número (incluido el cero), pero deben ser rellenadas con algún número. Para indicar que

    C5 y D5 son las celdas de las variables de decisión, es decir, las celdas ajustables, se

    seleccionan las celdas C5 y D5 y se elige la opción Adjustable del comando WB:

    Aparece entonces una ventana de diálogo como la que a continuación se pre-

    senta:

    A B C D E F G H

    1 PLAN DE PRODUCCION DE ORDENADORES

    2

    3 PRODUCTO ESTANDAR DE LUJO

    4

    5 CANTIDAD A PRODUCIR 0 0

    6

    7

    8 BENEFICIO UNITARIO 30000 u.m. 50000 u.m.

    9

    10

    11 RESTRICCIONES TECNOLOGICAS

    12

    13 MODELOS: ESTANDAR DE LUJO EXISTENCIAS

    14 COMPONENTES:

    15 EQUIPOS ESTANDAR 1 0 60

    16 EQUIPOS DE LUJO 0 1 50

    17 DISQUETERA 1 2 120

  • 8/16/2019 Programación lineal resolución de problemas en hoja de cálcul

    35/109

    Programación Lineal: Resolución de Problemas en Hoja de Cálculo 35 

    En la caja de texto de la ventana de diálogo debe aparecer «$C$5: $D$5», que

    es el rango de las celdas asignadas a las variables de decisión. Seleccionando la

    opción Adjust en esta ventana de diálogo se indica al sistema que estas serán las

    celdas ajustables. Si la información de la ventana está completa y correcta se

    acepta con OK . La hoja de cálculo presentará el aspecto siguiente:

    CELDAS AJUSTABLES

    El objetivo es maximizar la función de beneficios,

     Max 30.000 x1+ 50.000 x

    2.

    Entonces, habrá que escribir esta ecuación que calcula los beneficios en la hoja de

    cálculo. Como x1 y x

    2 fueron asignadas a las celdas C5 y D5 respectivamente, y los

     beneficios unitarios están en las celdas C8 y D8, la fórmula que debemos introducir es

    «=C5*C8+ D5*D8». Merece la pena observar que esta expresión es el producto de

    los vectores formados por los rangos C5:D5 y C8:D8, y puede calcularse mediante la

    funciónsumaproducto de Excel, resultando «=sumaproducto(C5:D5;C8:D8)». Esta

    función es muy útil, especialmente si tratamos con rangos de gran dimensión. La

    fórmula puede colocarse en la celda G6 y arriba, en G4, puede escribirse un rótulo

    que la identifique, por ejemplo «Beneficios».

    A B C D E F G H1 PLAN DE PRODUCCION DE ORDENADORES23 PRODUCTO ESTANDAR DE LUJO45 CANTIDAD A PRODUCIR 0 0678 BENEFICIO UNITARIO 30000 u.m. 50000 u.m.9

  • 8/16/2019 Programación lineal resolución de problemas en hoja de cálcul

    36/109

     Ethel Mokotoff 36 

    Para indicarle a WB que en G6 está la función objetivo debemos seleccionar G6

    y luego elegir la opción Best del comando WB:

    Aparece entonces la ventana de diálogo de Best. Si en la caja de texto de la

    ventana de diálogo no está indicada la celda de la función objetivo, debemos intro-

    ducirla. Se selecciona la opción Maximize y , a continuación, se acepta con OK .

    A esta altura la hoja de cálculo debe presentar este aspecto:

    CELDA FUNCIÓN OBJETIVO

    G6= +C5*C8+D5*D8

     

    A B C D E F G H1 PLAN DE PRODUCCION DE ORDENADORES23 PRODUCTO ESTANDAR DE LUJO BENEFICIOS45 CANTIDAD A PRODUCIR 0 0 - u.m. 678 BENEFICIO UNITARIO 30.000 u.m.  50.000 u.m. 

  • 8/16/2019 Programación lineal resolución de problemas en hoja de cálcul

    37/109

    Programación Lineal: Resolución de Problemas en Hoja de Cálculo 37 

    Las restricciones para este problema las imponen las existencias de los compo-

    nentes. El uso total de cada uno de los componentes debe ser menor, o a lo sumo

    igual, que sus existencias.

     x1   60 equipos estándares  x

    2  50 equipos de lujo

     x1

    +2 x2  120 disqueteras

    Por tanto, debemos introducir en la hoja de cálculo las fórmulas que calculen el

    uso total de cada componente, que resulta ser igual a la suma, para cada modelo de

    ordenador, de los productos de cantidades producidas por consumo del compo-

    nente en cuestión. Para los equipos estándares, la cantidad producida de ordena-dores estándares x

    1, estará indicada en la celda C5; la cantidad requerida de equi-

     pos estándares por unidad de ordenadores estándares, está indicada en la celda

    C15. Entonces, el producto de las cantidades de las celdas C5 por C15 es la

    cantidad de equipos estándares consumidos en la producción de ordenadores

    estándares. En general, podríamos establecer C5*C15+D5*D15 como cantidad

    de equipos estándares consumidos. En este caso particular el segundo término es

    cero porque en la producción de equipos de lujo no se emplean equipos estándares(D15=0). Guardamos esta fórmula, «C5*C15+D5*D15», en la celda E15.

    La cantidad consumida de equipos estándares debe ser menor o a lo sumo igual

    que las existencias de los mismos, cantidad que figuran en G15, resultando “E15

    G15”. Para indicarle a WB que esta es una restricción del problema, se sitúa el

    cursor en F15, y se elige la opción Constraints del comando WB,

  • 8/16/2019 Programación lineal resolución de problemas en hoja de cálcul

    38/109

     Ethel Mokotoff 38 

    Aparece entonces una ventana de diálogo como esta:

    Seleccionamos la opción Less Than para indicar que el tipo de restricción es

    «menor o igual». Además, en la caja de texto correspondiente a Left Hand Side

    debe indicarse la celda E15 que representa el miembro izquierdo de la restricción,

    y en la caja de texto rotulada con Right Hand Side debe especificarse la celda

    G15 que es la que tiene la información del miembro derecho de la restricción. Por 

    último aceptamos con OK .

    La hoja de cálculo debe presentar el siguiente aspecto:

    GENERACIÓN  AUTOMÁTICA  DE UNA RESTRICCIÓN

    WB escribe en la celda F15 la fórmula WB(E15,»», G15) correspondiente a la

    restricción de menor o igual de los equipos estándares.

    A B C D E F G H1 PLAN DE PRODUCCION DE ORDENADORES23 PRODUCTO ESTANDAR DE LUJO4 BENEFICIOS5 CANTIDAD A PRODUCIR 0 06 - u.m. 78 BENEFICIO UNITARIO 30000 u.m. 50000 u.m.9

    10

    11 RESTRICCIONES TECNOLOGICAS1213 MODELOS: ESTANDAR: DE LUJO: UNIDADES EXISTENCIAS14 COMPONENTES: CONSUMIDAS15 EQUIPOS ESTANDAR 1 0 0

  • 8/16/2019 Programación lineal resolución de problemas en hoja de cálcul

    39/109

    Programación Lineal: Resolución de Problemas en Hoja de Cálculo 39 

    Para establecer las restricciones de equipos de lujo y disqueteras, puede repe-

    tirse el procedimiento que acabamos de describir para equipos estándares a las

    restricciones de equipos de lujo y disqueteras, o pueden directamente copiarse los

    rangos E15:F15 en E16:F17 con los procedimientos de Copiar y Pegar de Excel.Para copiar correctamente las fórmulas de E15 en E16 y E17, es necesario que

    en la fórmula escrita en E15, la fila 5 se haya fijado mediante el signo $ en la expre-

    sión de unidades a producir de ordenadores estándares, «C$5», y para los de lujo

    «D$5». Es decir, que la fórmula de E15 debe ser igual a «C$5*C15+D$5*D15».

    Las celdas F16 y F17, que se rellenaron en el procedimiento anterior, también

     podrían haberse llenado junto con la F15 si antes de invocarConstraints se hubie-

    ran seleccionado las tres celdas. Entonces aparecería E15:E17 en Left Hand Side

    y G15:G17 en Right Hand Side, dentro de la ventana de diálogo de Constraints,

    tal como se muestra en la figura:

    Una vez que la hoja esté completa presentará el siguiente aspecto, ver la si-

    guiente figura:

  • 8/16/2019 Programación lineal resolución de problemas en hoja de cálcul

    40/109

     Ethel Mokotoff 40

    HOJA DE CÁLCULO ANTES DE OPTIMIZAR

    Este modelo está preparado para ser resuelto.

    Los tres elementos básicos de la programación lineal son la definición de las

    variables, de la función objetivo, y de las restricciones.

    1. La determinación de las celdas ajustables (C5:D5, en el ejemploanterior) indica al sistema que en esas celdas puede haber cualquier 

    valor factible que optimice el problema planteado. Son las variables de

    decisión del problema.

    2. Definir la celda con la función objetivo es indicarle al sistema cual es el objetivo de la optimización. En el problema planteado se persigue

    maximizar los beneficios, que se calculan con la expresión 30.000 x1+

    50.000 x2 (función guardada en la celda G6). Esto significa que el sistema

    debe encontrar los valores de las celdas ajustables que hagan máximo el 

    valor de esta función.

    3. Especificar las restricciones es establecer las limitaciones a los valoresde las variables de decisión del problema. Por lo general, son las

    limitaciones de los recursos con que se cuenta para alcanzar un objetivo

    las que determinan el conjunto factible de soluciones. En nuestro

     problema, las limitaciones las imponen las existencias de componentes,

    que hacen que no sea posible producir un número ilimitado de ordenadores,

    debido a que las cantidades utilizadas de cada componente no pueden

    superar a sus existencias. (En el ejemplo las restricciones se guardan en

    el rango E15:G17).

    A B C D E F G H1 PLAN DE PRODUCCION DE ORDENADORES23 PRODUCTO ESTANDAR DE LUJO4 BENEFICIOS

    5 CANTIDAD A PRODUCIR 0 0 Celdas Ajustables6 -u.m.78 BENEFICIO POR UNIDAD 30000 u.m. 50000 u.m.9 Función Objetivo

    10 Restricciones11 REQUERIMIENTOS DE COMPONENTES1213 MODELOS: ESTANDAR DE LUJO UNIDADES EXISTENCIAS14 COMPONENTES: CONSUMIDAS

    15 EQUIPOS ESTANDAR 1 0 0

  • 8/16/2019 Programación lineal resolución de problemas en hoja de cálcul

    41/109

    Programación Lineal: Resolución de Problemas en Hoja de Cálculo 41

    4. Resolución del problemaLa tarea del WB para el presente problema puede resumirse de la siguiente forma:

    Encontrar los valores de cantidades a producir (C5:D5) de ambos bienes,

    de forma que maximicen el beneficio  (G6), sin permitir que lascantidades de recursos empleados (E15:E17) superen las existencias(G15:G17).

    Si pretendemos resolver este problema sin ayuda de algún método de progra-

    mación lineal, parece razonable esperar que, dado que los ordenadores de lujo

    aportan un beneficio bastante mayor que los estándares, fabricar la mayor cantidad

     posible de ordenadores de lujo maximice los beneficios. Entonces, como la pro-

    ducción de ordenadores de lujo está limitada por la cantidad de equipos de lujo enexistencias, se producirán 50 ordenadores de lujo empleando 100 disqueteras. Por 

    lo cual, la cantidad a producir de ordenadores estándares queda limitada por las

    disqueteras remanentes que son 20, esto supone que se producen 20 ordenadores

    estándares. Entonces, los beneficios totales resultan ser:

    20 x 30.000 u.m. + 50 x 50.000 u.m. = 3.100.000 u.m.

    Pero estos beneficios no son máximos. Si bien esta es una buena solución al

     problema es posible mejorarla y, por lo tanto, no es óptima.

    Para que WB optimice el problema planteado es necesario invocar la opción

    Solve del menú WB.

    En ese momento el sistema permite modificar el nombre de los ficheros en los

    cuales se guardarán los datos relativos al modelo resuelto que por defecto son:

    «WBTO.XLS» para la hoja de cálculo; «WBFR.XLS» para la solución y

    «WBERR.PRN» para los posibles mensajes de error.

  • 8/16/2019 Programación lineal resolución de problemas en hoja de cálcul

    42/109

     Ethel Mokotoff 42 

    Cuando reaparece la hoja de cálculo, en las celdas ajustables figuran los valores

    de las variables de decisión que hacen óptima la función objetivo, y en la celda de

    función objetivo el valor óptimo de la misma.Para el problema que se utiliza de ejemplo, la solución después de optimizar 

    (Solve) es

    HOJA DE CÁLCULO DESPUÉS  DE LA OPTIMIZACIÓN

    La solución que da WB es producir 60 unidades de ordenadoresestándares (C5) y 30 unidades de ordenadores de lujo (D5), con esteplan de producción se obtiene un beneficio de 3.300.000 u.m. (G6).Este beneficio es el mejor posible dadas las existencias decomponentes (G15:G17) y la tecnología actual (C15:D17).

    A B C D E F G H1 PLAN DE PRODUCCIONDE ORDENADORES

    2

    3 PRODUCTO ESTANDAR D E LUJO

    4 BENEFICIOS5 CANTIDAD A PRODUCI R 60 30

    6 - u.m 

    7

    8 BENEFICIOUNITARIO 30000 u.m. 50000 u.m.

    9

    10

    11 REQUERIMIENTOSDE COMPONENTES

    12

    13 MODELOS: ESTANDAR D E LUJO UNIDADES EXISTENCIAS

    14 COMPONENTES: CONSUMIDAS

    15 EQUIPOSES TANDA R 1 0 60 #### 60

    16 EQUIPOSD E LUJO 0 1 30 #### 5017 DISQUETERA 1 2 120 #### 120

  • 8/16/2019 Programación lineal resolución de problemas en hoja de cálcul

    43/109

    Programación Lineal: Resolución de Problemas en Hoja de Cálculo 43

    5. Variantes al problema planteadoSuele ser conveniente explorar el problema desde varios ángulos antes de decidir 

    cual es la mejor decisión a tomar. En el problema planteado podrían contemplarse

    otras condiciones que pueden encontrarse en la vida real y no están reflejadas en el

    modelo matemático utilizado.

    Pensemos por ejemplo, en los componentes que no se utilizan en este plan de

     producción. En el caso de equipos estándares y disqueteras se aprovechan todas

    las existencias pero sobran 20 equipos de lujo. Si pueden usarse en el próximo

    ejercicio y no hay inconvenientes en cuanto a mantenerlas en depósito hasta enton-

    ces, el problema parece bien planteado. Pero, si por el contrario, los equipos de

    lujo no pueden emplearse en ejercicios futuros por problemas de obsolescencia, o porque no pueden guardarse en almacén y, en cambio, los equipos estándares po-

    drán usarse en un futuro, o son mucho menos valiosos, en este caso, puede que lo

    que nos interese sea maximizar el empleo de equipos de lujo, es decir, maximizar la

    celda E16.

    Podríamos hacer la prueba de indicarle a WB que la función objetivo a maximizar 

    no es la de los beneficios, sino las unidades consumidas de equipos de lujo (E16).Se elige entonces la opción Best del comando WB. En la caja de texto de la

    ventana Best aparecerá la celda $G$6, en donde se guarda la función objetivo

    anterior (función de beneficios). Para indicarle al sistema la nueva función objetivo,

    o bien se introduce con el teclado la ubicación de la nueva función objetivo (E16),

    o moviendo las flechas del teclado desplazamos el cursor hasta la casilla indicada.

    Una vez que en la caja de texto aparece E16, se acepta con OK . Si a continuación

    indicamos a WB que optimice, mediante el comando Solve, la hoja de cálculoterminará mostrando los resultados que se presentan a continuación en la tabla:

  • 8/16/2019 Programación lineal resolución de problemas en hoja de cálcul

    44/109

     Ethel Mokotoff 44

    FUNCIÓN OBJETIVO: MAXIMIZAR UNIDADES CONSUMIDAS DE EQUIPOS  DE LUJO (E16)

    Si bien se maximiza el consumo de equipos de lujo, es decir, se consumen las 50unidades que existen, la función de beneficios es menor que en el caso anterior. Discuti-

    remos este resultado.

    Al cambiar el objetivo de maximizar beneficios a maximizar unidades consumidas de

    equipos de lujo, no hay razón para fabricar ordenadores estándares y, el resultado de no

     producir ningún ordenador estándar, si bien responde al modelo matemático planteado,

    no responde a los objetivos reales que la empresa persigue. Una forma más idónea de

    traducir al modelo la idea de utilizar todos los equipos de lujo es, manteniendo como

    función objetivo a la función de beneficios, cambiar la restricción de los equipos de lujo

    de menor o igual, a una estricta igualdad. Hacemos esto con la hoja de cálculo original

    (G6 es, nuevamente, la celda de la función objetivo), invocando la opciónConstraints

    del menú de WB, y cambiando la restricción de F16 de «menor o igual» por «igual».

    Habiendo seleccionado previamente la celda correspondiente, no es necesario introdu-

    cir la referencia en la caja de texto. Si no había sido seleccionada, habrá que editar lacaja de texto.

    A B C D E F G H1 PLAN DE PRODUCCIONDE ORDENADORES23 PRODUCTO ESTANDAR DE LUJO4 BENEFICIOS

    5 CANTIDAD A PR OD UC IR 0 506 - u.m. 78 BENEFICIOUNITARIO 30000 u.m. 50000 u.m.9

    1011 REQUERIMIENTOSDE COMPONENTES1213 MODELOS: ESTANDAR DE LUJO UNIDADES EXISTENCIAS14 COMPONENTES: CONSUMIDAS15 EQUIPOSESTANDAR 1 0 0

  • 8/16/2019 Programación lineal resolución de problemas en hoja de cálcul

    45/109

    Programación Lineal: Resolución de Problemas en Hoja de Cálculo 45 

    El resultado que presenta la hoja de cálculo después de optimizar con estas

    variantes debe ser:

    UNIDADES CONSUMIDAS DE EQUIPOS  DE LUJO = EXISTENCIAS  DE EQUIPOS  DE LUJO

    RESTRICCIÓN  DE ‘‘=’’ EN F16

    Con esta solución se fabrican todos los ordenadores de lujo necesarios para

    consumir la totalidad de equipos de lujo pero la función objetivo sigue siendo la demaximizar beneficios. Por lo tanto se producirán tantos ordenadores estándares

    como las restricciones permitan, es decir, se empleará el resto de disqueteras y los

    equipos estándares necesarios para construir los ordenadores estándares que las

    disqueteras permitan. Los beneficios siguen siendo menores que los obtenidos ini-

    cialmente (3.100.000 frente a 3.300.000), pero ahora se emplean todos los equi-

     pos de lujo existentes.

    Otra modificación puede plantearse si la empresa se encuentra con una restric-

    ción financiera que le obliga a asegurarse unos beneficios de al menos 3.200.000

    u.m., pero también se quieren maximizar el uso de equipos de lujo. Este nuevo

    modelo se obtiene introduciendo la restricción de beneficios y volviendo a colocar 

    empleo de equipos de lujo como objetivo a maximizar. La nueva restricción puede

    introducirse en la hoja de cálculo de dos maneras diferentes: editando la fórmula

    “=WB(G6,”>=“,3200000)”, o escribiendo 3.200.000 u.m. en la celda I6 e indi-cando a WB la presencia de una restricción de mayor o igual en H6 mediante la

    A B C D E F G1 PLAN DE PRODUCCION DE ORDENADORES23 PRODUCTO ESTANDAR DE LUJO4 BENEFICIOS5 CANTIDAD A PRODUCIR 20 506 3.100.000 u.m. 78 BENEFICIO UNITARIO 30.000 u.m  50.000 u.m.9

    1011 REQUERIMIENTOS DE COMPONENTES1213 MODELOS: ESTANDAR DE LUJO UNIDADE EXISTENCIAS14 COMPONENTES: CONSUMIDAS15 EQUIPOS ESTANDAR 1 0 20

  • 8/16/2019 Programación lineal resolución de problemas en hoja de cálcul

    46/109

     Ethel Mokotoff 46 

    opción Constraints del comando WB.

    FUNCIÓN OBJETIVO : MAXIMIZAR UNIDADES CONSUMIDAS DE EQUIPOS  DE LUJO, CONRESTRICCIÓN  DE CONSEGUIR  UNOS BENEFICIOS   3.200.000 PESETAS

    Los resultados obtenidos para el modelo actual permiten cubrir las necesidades

    financieras de obtener las 3.200.000 u.m. de beneficio con la producción de 40 uni-

    dades de cada modelo de ordenador. Si comparamos este resultado con la solución

    obtenida cuando se buscaba maximizar el consumo de equipos de lujo, pero sin res-

    tricciones financieras, observamos que se produce una caída en la función objetivo de

    10 unidades de consumo de equipos de lujo, es decir, dada la restricción financiera, la

    empresa se ve obligada a dejar de utilizar diez unidades de equipos de lujo.

    6. Resultados dualesLas variantes al problema que acabamos de analizar en el apartado anterior son

    sólo algunos ejemplos de los posibles análisis de resultados que, de un modo muy

    sencillo, permiten adaptar el modelo a problemas de decisión de la vida real.Pero la herramienta más importante de análisis de sensibilidad que tiene la pro-

    gramación lineal es el análisis dual. WB lo brinda por medio del comando Dual del

     

    A B C D E F G H I1 PLAN DE PRODUCCION DE ORDENADORES23 PRODUCTO ESTANDAR DE LUJO4 BENEFICIOS5 CANTIDAD A PRODUCIR 40 406 3.200.000 u.m.  =>= 3.200.000 u.m. 78 BENEFICIO UNITARIO 30.000 u.m.  50.000 u.m. 9

    1011 REQUERIMIENTOS DE COMPONENTES1213 MODELOS: ESTANDAR DE LUJO UNIDADES EXISTENCIAS14 COMPONENTES: CONSUMIDAS15 EQUIPOS ESTANDAR 1 0 40

  • 8/16/2019 Programación lineal resolución de problemas en hoja de cálcul

    47/109

    Programación Lineal: Resolución de Problemas en Hoja de Cálculo 47 

    menú WB.

    Recordando el concepto de valor dual de una restricción, decimos que es la

    cantidad que varía el valor en el óptimo de la función objetivo cuando el término

    independiente de la restricción (miembro de la derecha) varía en una unidad, siem- pre que los demás datos del problema se mantengan idénticos (lo que en Economía

    se denomina ceteris paribus). WB provee el valor dual de las restricciones y los

    límites superior e inferior de variaciones que puede sufrir el término de la dere-

    cha de la restricción, sin que el valor dual encontrado cambie.

    Valores duales de las restricciones

    Cuando se selecciona la opción Dual aparece la ventana de información dual:En la caja de texto superior deberá indicarse la celda, o rango de celdas, en las

    cuales se encuentran las fórmulas de las restricciones cuyo valor dual se desea cono-

    cer. Siguiendo con nuestro ejemplo (volviendo al modelo original), en las celdas F15,

    F16 y F17 están las fórmulas de las tres restricciones, por lo que se debería editar la

    caja de texto superior con ‘‘F15:F17’’, o indicar el rango con el ratón.

    En la otra caja de texto, la inferior, debe indicarse el rango en que WB escribirálos valores duales. Es importante tener presente que, si en la primera caja de texto

    se indica un rango de m celdas, el sistema necesitará m celdas para escribir los

    resultados duales, entonces el rango de la segunda caja deberá ser también m.

    En nuestra hoja de cálculo, colocamos los valores duales a la derecha de la

    columna de existencias, es decir, en la columna H, las filas las hacemos coincidir con

    las filas de las restricciones. Entonces, en la caja de texto inferior colocamos

    ‘‘H15:H17’’ (en esta caja de texto figura, por defecto, el rango de celdas que hu- bieran estado seleccionadas antes de invocar el comando Dual del menú WB).

  • 8/16/2019 Programación lineal resolución de problemas en hoja de cálcul

    48/109

     Ethel Mokotoff 48 

    Cuando la ventana Dual esté completa, con la opción Dual Value selecciona-

    da, se acepta con OK. Así se cierra la ventana, pero no se calculan los resultados

    duales hasta que no se active la orden Solve. Podríamos editar la celda H14 de la

    hoja de cálculo con una etiqueta para los valores duales. Invocamos Solve paraobtener los resultados duales. Después de resolver, en nuestra hoja de cálculo,

    deberá aparecer la siguiente información:

    La interpretación de estos resultados es la siguiente:

    El valor dual de la restricción de equipos estándares es 5.000. Esto

    significa que, por cada equipo estándar que se pueda agregar a las existencias,

    los beneficios mejorarían en 5.000 u.m.. Si a la empresa un equipo estándar lecuesta más de 5.000 u.m. no mejora sus beneficios aumentando las existencias de

    este recurso, pero si le cuesta menos de 5.000 u.m. puede mejorar los beneficios.

    Supongamos que se compran dos equipos estándares más. Como la restricción

    de disqueteras está saturada, para fabricar dos ordenadores estándares más, ha-

     brá que dejar de fabricar un ordenador de lujo. Por el valor dual de equipos

    estándares, al relajar la restricción en dos unidades ( es decir contar con 62 equi- pos estándares, en lugar de 60), la función objetivo aumenta 2 x 5.000 u.m. =10.000

    u.m.. Verifiquemos este resultado:

    • Se fabrican dos ordenadores estándares más, cada uno tiene un beneficio

    de 30.000 u.m.

    2 x 30.000 = 60.000 aumento de beneficios

    • Se fabrica un ordenador de lujo menos, el cual tiene un beneficio de 50.000u.m.

    A B C D E F G H

    10

    11 REQUERIMIENTOS DE COMPONENTES

    12

    13 MODELOS: ESTANDAR DE LUJO UNIDADES EXISTENCI VALOR

    14 COMPONENTES: CONSUMIDAS DUAL15 EQUIPOS ESTANDAR 1 0 60 =

  • 8/16/2019 Programación lineal resolución de problemas en hoja de cálcul

    49/109

    Programación Lineal: Resolución de Problemas en Hoja de Cálculo 49 

    1 x 50.000 = 50.000 disminución de beneficios

    Los beneficios aumentan en

    60.000 u.m. - 50.000 u.m. = 10.000 u.m.

    como consecuencia de la compra de dos equipos estándares más, verifican-

    do el resultado que adelantaba el valor dual.

    El valor dual de la restricción de equipos de lujo es cero. Esto significa

    que aunque la empresa agregue equipos de lujo a sus existencias, los beneficios

    no mejorarían, por muy baratos que los compre. Este resultado se debe a que,

     para el problema planteado, los beneficios son máximos produciendo sólo trein-

    ta ordenadores de lujo ya que cada uno consume dos disqueteras. Por lo cual,

    dada la restricción de disqueteras, por cada ordenador de lujo que se fabrica se

    dejan de fabricar dos estándares, y el beneficio unitario de los primeros no es el

    doble que el de los segundos. Así pues, compensará producir todos los ordena-

    dores estándares que sea posible.

    El valor dual de la restricción de disqueteras es 25.000. Esto significa

    que por cada disquetera que se agregue a las existencias, los beneficios mejora-rán en 25.000 u.m.. Es importante observar que la interpretación debe hacerse

    sin variar el resto de los valores del problema. Así, como la restricción de equi-

     pos estándares está saturada, una disquetera más formará parte de un nuevo

    ordenador de lujo. El resultado de 25.000 u.m. responde a que el beneficio de

    los ordenadores de lujo es 50.000 u.m., pero con una disquetera se construiría

    medio ordenador de lujo. Si se añaden dos disqueteras, se construirá un orde-

    nador de lujo más, incrementando la función de beneficios en 50.000 u.m..

    Límite inferior y superior de validez

    WB permite conocer tanto el valor dual como su rango de validez. El valor dual

    de una restricción indica la cantidad en que varía el valor de la función objetivo si el

    término independiente de la restricción varía en una unidad. Pero este valor dual

     puede no ser el mismo a medida que añadimos unidades al término independiente y

    entonces WB nos informa de cuales son los límites de variación del término

    independiente para los cuales ese valor dual calculado no varía. Esta infor-

  • 8/16/2019 Programación lineal resolución de problemas en hoja de cálcul

    50/109

     Ethel Mokotoff 50

    mación es la que se obtiene con las opciones Upper Range y Lower Range.

    En nuestra hoja de cálculo situamos, a la derecha del valor dual de cada restric-

    ción, el límite inferior y a continuación el superior del término independiente, indi-

    cando el rango de validez del valor dual.

    Para que WB provea el límite inferior de validez del valor dual, en la ventana Dual

    debemos indicar el rango de celdas donde se encuentran las fórmulas de las restriccio-

    nes, ‘‘F15:F17’’, y el rango de celdas donde se escribirá el límite inferior del término

    independiente de cada restricción, ‘‘I15:I17’’. Seleccionamos la opciónLower Range

    y aceptamos conOK . La hoja de cálculo no se actualizará hasta no invocarSolve. Pero

    antes de hacerlo prepararemos la hoja para obtener también los límites superiores. Serepite el procedimiento anterior, pero esta vez seleccionamos la opción Upper Range.

    La caja de texto superior debe contener la referencia de las celdas con las fórmu-

    las de las restricciones, y la inferior, el rango de celdas donde se escribirá el límite

    superior de las restricciones, que es ‘‘J15:J17’’. Aceptamos con OK . En la hoja de

    cálculo podemos poner etiquetas a las columnas en donde aparecerá el rango de

    validez de los valores duales. Ahora que hemos introducido toda la información, invo-camos Solve.

  • 8/16/2019 Programación lineal resolución de problemas en hoja de cálcul

    51/109

    Programación Lineal: Resolución de Problemas en Hoja de Cálculo 51

    Una vez resuelto el problema, en la hoja de cálculo aparece la siguiente informa-

    ción:

    Veamos que significa el rango de variación de una restricción. El valor dual es

    válido para los datos actuales, es decir, si las existencias de equipos estándares

    aumentan de 60 a 61 unidades, entonces la función objetivo aumenta 5.000 u.m. y

    si disminuye de 60 a 59, la función objetivo disminuirá 5.000 u.m.. Este análisis

     puede extenderse, de manera que, si las existencias de equipos estándares aumen-

    tan en 10 unidades, la función objetivo aumentará 50.000 u.m.. Pero esto no es asíindefinidamente. Habrá un momento en que aunque agreguemos equipos estándares

    la función objetivo dejará de aumentar porque se habrán consumido todas las

    disqueteras. Este límite dentro del cual el análisis del valor dual es válido, es el que

    indica el rango de variación.

    En la primera restricción el límite superior es 60. Esto quiere decir que el valor 

    dual de 5.000 u.m. es válido para unidades adicionales de equipos estándares hasta

    haber añadido 60 equipos estándares, es decir, hasta que el término independientede la restricción sea 120. A partir de 120 el valor dual de 5.000 u.m. dejará de ser 

    válido.

    Comprobemos en la hoja de cálculo que ocurre con los valores duales si añadi-

    mos 59 equipos estándares adicionales:

    8 E F G H I J K9

    10

    11

    12

    13 UNIDADES EXISTENCIAS VALOR RANGO DE VARIACION

    14 CONSUMIDAS DUAL DISMINUCION AUMENTO

    15 60 =

  • 8/16/2019 Programación lineal resolución de problemas en hoja de cálcul

    52/109

     Ethel Mokotoff 52 

    Los beneficios aumentan en 59 x 5.000 u.m. = 295.000 u.m., como podía ser  previsto con el valor dual. Como 59 unidades no sobrepasan el límite superior de

    validez del valor dual, este no cambia y sigue siendo 5.000 u.m..

    Observemos que ocurre si añadimos una unidad más de equipos estándares, es

    decir, si contamos con 120 equipos.

    En este caso, con 120 equipos estándares, los beneficios han aumentado 5.000

    u.m. con respecto a los beneficios correspondientes a 119 equipos estándares,

     pero el valor dual es cero. Esto significa que si seguimos añadiendo equipos

    estándares, los beneficios no mejoran. Sólo podríamos mejorar los beneficios aña-

    diendo disqueteras, ya que la restricción de disqueteras es la única con valor dualdistinto de cero.

    A B E F G H I J K1 PLAN DE PRODUCCION DE ORDENADORES23 PRODUCTO4 BENEFICIOS5 CANTIDAD A PRODUCIR6 3.595.000 u.m. 

    78 BENEFICIO UNITARIO9

    10111213 UNIDADES EXISTENCIAS VALOR RANGO DE VARIACION14 COMPONENTES: CONSUMIDAS DUAL DISMINUCION AUMENTO

    15 EQUIPOS ESTANDAR 119 =

  • 8/16/2019 Programación lineal resolución de problemas en hoja de cálcul

    53/109

    Programación Lineal: Resolución de Problemas en Hoja de Cálculo 53

    Volvamos a la situación original de 60 unidades de equipos estándares para

    analizar el límite inferior de la restricción:

    Observemos que al disminuir en una unidad el término independiente de la res-

    tricción, la función objetivo deberá disminuir en 5.000 u.m., este razonamiento es

    válido hasta haber disminuido 40 unidades, es decir hasta tener 20 equipos

    estándares. Si fijamos las existencias en 20 unidades, el valor dual de esta restric-

    ción sigue siendo 5.000 u.m., pero su rango inferior de variación es ahora 0.

    Comprobamos que los beneficios disminuyeron en 40 x 5.000 u.m. = 200.000u.m., con respecto al problema original, en el cual, con 60 equipos estándares,

    obteníamos 3.300.000 u.m. de beneficio. Pero para 20 equipos estándares el ran-

    go inferior de variación del valor dual 5.000 ahora es cero, porque el valor dual de

    5.000, en el problema original, tiene un límite inferior de 40, es decir, que si a los 60

    equipos iniciales, les quitamos más de 40 equipos, el valor dual deja de ser 5.000 y

     pasa a ser 30.000, que son los beneficios que se pierden por dejar de fabricar unordenador estándar mientras sobran disqueteras para hacerlo.

    11

    12

    13 UNIDADES EXISTENCIAS VALOR RANGO DE VARIACION

    14 CONSUMIDAS DUAL DISMINUCION AUMENTO

    15 60 =

  • 8/16/2019 Programación lineal resolución de problemas en hoja de cálcul

    54/109

     Ethel Mokotoff 54

    Volviendo al problema original, el valor dual de la restricción de equipos de lujo

    igual a cero implica que, aunque añadiéramos equipos de lujo, los beneficios no

    mejorarían porque las disqueteras disponibles se emplean para fabricar el mayor 

    número posible de ordenadores estándar. Lo comprobamos con la hoja de cálculosiguiente, en la cual, supusimos tener 1.000 equipos de lujo:

    Los beneficios no cambian, como era de esperar por el valor dual de la restric-ción de equipos de lujo.

    En cambio si aumentamos las existencias de disqueteras, los beneficios tiene que

    cambiar a juzgar por el valor dual. Consideramos ahora 160 disqueteras de exis-

    tencias.

    A B E F G H I J

    1 PLAN DE PRODUCCION DE ORDENADORES2

    3 PRODUCTO4 BENEFICIOS5 CANTIDAD A PRODUCIR6 3.300.000 u.m. 7

    8 BENEFICIO UNITARIO

    910

    11

    12

    13 UNIDADES EXISTENCIAS VALOR RANGO DE VARIACION14 COMPONENTES: CONSUMIDAS DUAL DISMINUCIO AUMENTO15 EQUIPOS ESTANDAR 60 =

  • 8/16/2019 Programación lineal resolución de problemas en hoja de cálcul

    55/109

    Programación Lineal: Resolución de Problemas en Hoja de Cálculo 55 

    Efectivamente, podemos comprobar que los beneficios mejoran en 40 x 25.000

    u.m. = 1.000.000 u.m. con respecto al problema original. Pero si siguiéramos aña-

    diendo disqueteras los beneficios no mejorarían, como puede observarse por el

    cero en el límite superior de variación del valor dual. Esto es debido a que las otrasdos restricciones están también saturadas, entonces, si agregamos disqueteras, no

    hay equipos con los cuales montar más ordenadores y esas disqueteras no pueden

    emplearse. Lo comprobamos considerando una disquetera más, es decir, 161

    disqueteras:

    En este caso los beneficios no mejoran porque siguen fabricándose el mismo nú-

    mero de ordenadores estándares y de lujo, aunque sí cambian los valores duales de

    las tres restricciones. Es importante notar cómo, al haber excedente de disqueteras,

    los precios sombra de los equipos aumentan. Ahora con un equipo estándar más

     podrían obtenerse 30.000 u.m. más de beneficio. Con respecto a la restricción de

    equipos de lujo el análisis es más complicado. Si bien el valor dual (variación en el

    valor de la función objetivo provocada por una variación unitaria en el término de laderecha de la restricción) es 50.000, su rango superior de variación es de 0,5 unida-

    des, porque hacen falta dos disqueteras para montar un ordenador de lujo.

    Este tipo de análisis de sensibilidad es muy sencillo de realizar y puede resultar 

    de gran utilidad a la hora de tomar decisiones.

    Valor dual de variables de decisión

    Otra información de interés es el valor dual de las variables de decisión. Tienesentido cuando en la solución óptima alguna variable vale cero, es decir no partici-

    A B C D E F G H I J1 PLAN DE PRODUCCION DE ORDENADORES23 PRODUCTO ESTÁNDAR DE LUJO

    4 BENEFICIO