Concepto
La dirección de operaciones no sólo se preocupa por la solución óptima de un problema de producción. Además de conocer el valor exacto de cada variable del programa productivo, es necesario conocer hasta qué punto esta solución obtenida es factible frente a algún cambio o alteración en cualquiera de los parámetros del problema. Esto se debe al hecho de que la solución obtenida se basa en que los datos de partida son constantes. Esto es posible únicamente para periodos de tiempo muy cortos, dado el contexto económico actual, en el cual se producen numerosos cambios con gran rapidez.
Por este motivo, el análisis de sensibilidad adquiere una mayor trascendencia, permitiéndonos conocer qué ocurre con la solución óptima actual ante cambios en alguna de las variables del problema, es decir, entre qué valores pueden variar los parámetros sin que se produzcan cambios importantes en la solución óptima.
Hay dos planteamientos para determinar la sensibilidad de los parámetros del programa productivo:
- a) El primero es el de prueba y error, el cual requiere mucho tiempo y supone la resolución de todo el problema cada vez que se realiza algún cambio.
- b) En segundo lugar, estaría el método analítico de postoptimalidad, de manera que, una vez resuelto el problema de programación lineal, se definen los intervalos de valores entre los que se puede mover cada una de las variables, de forma que la solución óptima no se vea afectada. Es este último el que se va a implementar para realizar el análisis de sensibilidad de una empresa que se va tomar como ejemplo. Para ello, se utiliza software de programación lineal, como el Solver de Excel o POM de Windows, que es el que aplicaremos.
Programación lineal
La programación lineal es una técnica matemática muy utilizada en la dirección de operaciones, ya que permite tomar decisiones rápidas en la asignación eficiente de los recursos limitados. Un proceso productivo se define como la combinación de factores que, utilizando una tecnología dada, nos permiten obtener un producto. Es importante definir el periodo de tiempo para el cual la información es válida. Por ello, la definición del número de variables y de ecuaciones (restricciones y limitaciones) es algo que lo determina el propio empresario, según las características de la empresa en un momento dado.
Los requisitos de un problema de programación lineal son los siguientes:
- a) Tiene como objetivo maximizar o minimizar alguna cantidad. En la empresa, se maximizan beneficios y se minimizan costes. El fin prioritario de cualquier empresa tipo es la maximización de su beneficio, así como el incremento del valor de las acciones que la constituyen. Toda esta información se recoge en la función objetivo.
- b) La existencia de restricciones que limitan el nivel de producción y venta que se pretende alcanzar. Dichas restricciones suelen estar relacionadas con la cantidad de factores disponibles, tales como las unidades de material, las horas de trabajo, etc.
- c) Tienen que existir diferentes alternativas de elección, de productos y de procesos, de manera que el empresario pueda elegir a la hora de asignar los recursos.
- d) Tanto la función objetivo como las restricciones deben estar expresadas en ecuaciones lineales o desigualdades.
Por lo tanto, los elementos de la función de producción son:
- a) La función objetivo, que puede ser:
- b) Las ecuaciones de restricción: en el caso de que la función objetivo sea maximizar serán:
Dónde:
- - aij: son los coeficientes técnicos y representan la cantidad de factor i (1, 2,..., m) necesaria para fabricar una unidad de producto j (1, 2,....., n). Estos coeficientes técnicos forman la denominada matriz tecnológica o de coeficientes técnicos de la empresa (Amxn). Todos estos coeficientes unitarios los tiene que conocer el empresario, a través de los técnicos o ingenieros que lo diseñan. Cada columna de esta matriz representa un proceso productivo Pj.
- - xj: son los niveles de producción. Forman un vector fila (X).
- - bm: son los recursos disponibles para la empresa. Su valor absoluto dependerá de la dimensión empresarial. Forman un vector columna (b). Ejemplo: número de horas hombre,...
En forma matricial, un programa que tiene como objetivo la maximización de los beneficios se puede expresar del siguiente modo:
Donde
Para un determinado nivel de producción, siempre se tiene que cumplir esta restricción A χ ≤ b, es decir, en el primer caso, significa que no se pueden consumir más factores de los que se disponen (son recursos limitados). Siendo la cantidad producida nula o positiva: χ ≥ 0
Pasamos a plantear la función de producción de una empresa que tomamos como ejemplo. Una pequeña empresa se dedica a la fabricación y venta de mobiliario de jardín. Para ello, cuenta con tres procesos productivos: sillas plegables (P1), mesas de centro (P2) y sillones (P3). El precio de venta unitario de cada producto asciende a 75REVISAR, 120 y 160, respectivamente. Asimismo, sus costes de fabricación variables (unitarios) son: 25REVISAR, 60 y 60.
La dirección de operaciones ha facilitado los siguientes datos sobre el proceso de fabricación mensual:
- - La plantilla del departamento de montaje puede trabajar un total de 120 horas, siendo el ritmo de trabajo el siguiente: 2 5 sillas plegables/hora, 5 mesas de centro/hora y 2 sillones/hora.
- - Cada silla plegable requiere un 0 2% de capacidad, cada mesa de centro un 0 2% y cada sillón un 0 4%. Debido a fallos de la maquinaria, dicha capacidad se ha visto reducida al 80%.
- - La empresa puede disponer de 90 m3 de madera de teca. Se conoce que cada silla plegable necesita un 0 2 metros, cada mesa de centro necesita 0 4 metros y cada sillón 0 5 metros.
El planteamiento del problema sería el siguiente:
En nuestro ejemplo, expresado en forma matricial:
Existen diversas formas para resolver un problema de programación lineal, tales como el método gráfico, el método de las rectas isobeneficios o el método de los vértices, siendo aplicable cualquiera de ellas cuando la empresa no elabora más de dos productos diferentes. Sin embargo, este hecho no suele darse en el mundo empresarial real, ya que el abanico de productos suele ser mayor. Por lo tanto, nos encontramos ante un espacio con numerosas soluciones factibles, pero existirá una que sea la mejor en función del objetivo perseguido. Para resolver este tipo de problemas se utiliza un procedimiento denominado Algoritmo del Simplex.
Algoritmo del Simplex
El Algoritmo del Simplex fue enunciado por George Dantzing en 1947, siendo un procedimiento iterativo de búsqueda de la solución óptima en problemas de programación lineal de cualquier tamaño. El desarrollo de este algoritmo requiere de ciertas hipótesis de partida:
- a) Proporcionalidad: la contribución de cada actividad al valor de la función objetivo es proporcional, así como al valor de los términos independientes de las restricciones.
- b) Aditividad: No se permite la existencia de productos cruzados, de manera que la combinación de varios procesos se obtiene como la suma de los factores exigidos individualmente por cada uno de ellos.
- c) Divisibilidad: todas las variables del modelo pueden tomar cualquier valor no entero, siempre y cuando cumplan todas las restricciones del programa, incluyendo la de no negatividad.
- d) Certidumbre: todos los parámetros del modelo son conocidos con certeza.
El desarrollo del Algoritmo del Simplex parte de un programa base sobre el que se realizan iteraciones, es decir, de una solución básica se va pasando a soluciones o puntos extremos mejores, hasta alcanzar la solución óptima. Este autor planteó que si la organización se encuentra en un punto dentro del espacio de soluciones factibles y se quiere conseguir un acercamiento a una situación mejorada, se deberán analizar los rendimientos marginales wj (diferencia entre los rendimientos directos -Cj- y los rendimientos indirectos -Zj-), y su disminución hasta llegar a la solución óptima, donde todos los rendimientos marginales son menores o iguales a cero (wj≤0).
El problema que presenta el Algoritmo del Simplex es que no permite trabajar con desigualdades, por lo que las inecuaciones correspondientes a las restricciones deben convertirse en ecuaciones. Para ello, se introducen los procesos de holgura con un coeficiente técnico unitario, tantos como desigualdades tenga el programa productivo.
Aplicado a nuestro ejemplo la matriz tecnológica ampliada quedaría de la siguiente forma:
En el caso de que alguna variable de holgura forme parte de la solución óptima, tomando un valor positivo, indicará la existencia de cierta cantidad de ese factor disponible y no utilizado en la producción de bienes reales, resultando ocioso. Por lo tanto, el significado económico de una variable de holgura es la capacidad inactiva o desocupada del factor correspondiente. El rendimiento directo de estas variables en la función objetivo es igual a cero. Además, estas variables constituyen la solución básica inicial (matriz identidad).
Si aplicamos el Algoritmo del Simplex a la empresa que habíamos tomado como ejemplo de referencia tendríamos las iteraciones que muestra el siguiente cuadro:
Cuadro 1: Iteraciones de la Aplicación del Algoritmo del SimplexRdtos. Directos Cj | Vales. Básicas | Sillas | Mesas Centro | Sillones | Holgura 1 | Holgura 2 | Holgura 3 | Cantidad |
50 | 60 | 100 | 1 | 0 | 0 | |
Iteración 1 | |
| Cj-Zj | 50 | 60 | 100 | 0 | 0 | 0 | |
0 | holg 1 | 0,4 | 0,2 | 0,5 | 1 | 0 | 0 | 120 |
0 | holg 2 | 0,2 | 0,2 | 0,4 | 0 | 1 | 0 | 80 |
0 | holg 3 | 0,2 | 0,4 | 0,5 | 0 | 0 | 1 | 90 |
| | | | | | | | |
Iteración 2 | |
| Cj-Zj | 10 | -20 | 0 | 0 | 0 | -200 | |
0 | holg 1 | 0,2 | -0,2 | 0 | 1 | 0 | -1 | 30 |
0 | holg 2 | 0,04 | -0,12 | 0 | 0 | 1 | -0,8 | 8 |
100 | Sillones | 0,4 | 0,8 | 1 | 0 | 0 | 2 | 180 |
| | | | | | | | |
Iteración 3 |
| Cj-Zj | 0 | -10 | 0 | -50 | 0 | -150 | |
50 | Sillas | 1 | -1 | 0 | 5 | 0 | -5 | 150 |
0 | holg 2 | 0 | -0,08 | 0 | -0,2 | 1 | -0,6 | 2 |
100 | Sillones | 0 | 1,2 | 1 | -2 | 0 | 4 | 120 |
Fuente: Elaboración Propia, basado en resultados del Programa POM de Windows. |
Consecuentemente, la solución óptima de nuestro programa de producción estaría formada por los procesos P1, P3 y P5.
Cuadro 2: Solución óptima en unidades físicas y unidades monetariasVariables | Valor |
Sillas (u.f.) | 150 |
Sillones (u.f.) | 120 |
Vble. Holgura 2 (u.f.) | 2 |
Valor Función Objetivo (€) | 19500 |
Fuente: Elaboración propia, basado en resultados del programa POM de Windows. |
A la vista de los resultados obtenidos, si la empresa quiere obtener un beneficio máximo mensual de 19.500 debe fabricar y vender 150 sillas y 120 sillones. Por otro lado, el hecho de que la variable de holgura 2 tome un valor positivo de dos unidades, implica la existencia de un 2% de capacidad ociosa del departamento de producción (segunda restricción).
Tipos de análisis de sensibilidad
Siguiendo la programación lineal, el análisis de sensibilidad se centra en estudiar los efectos que provocan en la solución óptima los posibles cambios de los datos iniciales del programa productivo. Dichos cambios pueden tener su origen en:
- a) Variaciones en los términos independientes de las ecuaciones de restricción, es decir, en la cantidad disponible de factores
- b) Variaciones en los coeficientes de la función objetivo. En el caso de que el problema sea de maximización de beneficios, los coeficientes de la función objetivo hacen referencia a los rendimientos directos de los productos
- c) La introducción de nuevos procesos
- d) La variación de algún coeficiente técnico
- e) La introducción de una nueva restricción
En nuestro caso, nos vamos a centrar en los dos primeros análisis. Para ello, será el conocimiento de la matriz inversa del programa base lo que nos permitirá analizar la repercusión que tendrán sobre la solución óptima las distintas variaciones en el planteamiento inicial del problema.
Variaciones en los términos independientes de las ecuaciones de restricción
Los términos independientes de las restricciones suelen representar la cantidad máxima disponible de cada uno de los factores productivos (bm). En el ejemplo que hemos formulado estaríamos hablando de tres factores: horas de trabajo (b1), capacidad del departamento de producción (b2) y unidades de material (b3). El análisis de sensibilidad indica qué ocurre con la región de soluciones factibles y con la solución óptima si se produce alguna alteración en la cantidad disponible de los recursos que hemos mencionado con anterioridad.
Sabemos que al introducir los procesos de holgura todas las restricciones del programa se han convertido en igualdades, es decir que:
Siendo A la matriz tecnológica, x el nivel de producción o actividad y b el vector recursos. Como la matriz tecnológica es rectangular y sólo podemos trabajar con matrices cuadradas, se parten de programas bases (B). En nuestro caso, serán combinaciones de tres de los procesos que forman dicha matriz, de manera que:
La solución óptima en unidades físicas se obtendría de la siguiente forma:
De manera que el resultado tiene que ser mayor o igual a cero. Por ello, si alteramos uno de los componentes del vector b se tiene que verificar:
En nuestro caso, la matriz inversa del programa base sería:
Esta expresión nos dará la solución del problema teniendo en cuenta la alteración introducida. Los términos independientes no condicionan los valores de los rendimientos marginales.
Si utilizamos el software POM for Windows, obtenemos los siguientes valores:
Cuadro 3: Análisis de sensibilidad de los términos independientes de las ecuaciones de restricciónRestricción | Valor Dual | Exceso Holgura | Valor Original | Límite inferior | Límite Superior |
Horas de trabajo | 50 | 0 | 120 | 90 | 130 |
Capacidad Dpto. | 0 | 2 | 80 | 78 | Infinito |
Madera de teca | 150 | 0 | 90 | 60 | 93,33 |
Fuente: Elaboración propia basado en resultados del programa POM de Windows. |
En función de los datos extraídos del programa, podemos observar que:
- - Si las horas de trabajo (b1) están comprendidas entre 90 y 130 la solución óptima seguirá siendo (P1, P3 y P5)
- - Si la capacidad del Departamento de Producción (b2) es superior al 78%, la solución óptima se mantiene
- - Si los metros cúbicos de madera de teca (b3) están comprendidos entre 60 y 93´33, la solución óptima seguirá siendo la misma.
Variaciones en los rendimientos directos de los productos de la función objetivo
Para analizar estas variaciones también vamos a utilizar la matriz inversa B-1, pero debemos tener en cuenta que los coeficientes de la función objetivo sí condicionan los valores de los rendimientos marginales.
Se pueden distinguir dos casos:
a) La variable cuyo rendimiento directo que modificamos no forma parte de la solución óptima. En este caso no es necesario calcular de nuevo los rendimientos indirectos Zj, puesto que permanecen inalterados. Sólo hay que determinar los rendimientos marginales Wj, teniendo en cuenta la modificación de los rendimientos directos. Para que la solución siga siendo óptima todos los rendimientos marginales deben ser negativos o nulos, por lo que se debe verificar:
Wj = Cj - Zj ≤ 0
b) La variable cuyo rendimiento directo modificado sí forma parte de la solución óptima: en este caso se modifican todos los rendimientos marginales, por lo que habrá que volver a calcular las diferencias Cj-Zj. Como los rendimientos directos Cj son conocidos, bastará con volver a calcular los rendimientos indirectos Zj, dejándolos en función del rendimiento directo que se ha visto alterado. Estos rendimientos se calculan mediante la siguiente expresión matemática:
Zj = Ci x Xij
Siendo:
- - Wj: los rendimientos marginales de todos los procesos de la empresa. Se deducen como diferencia entre los rendimientos directos e indirectos
- - Cj: los rendimientos directos de todos los procesos de la empresa, (incluidos los de holgura)
- - Ci: los rendimientos directos de los procesos que forman parte del programa base, posible solución óptima. En nuestro caso: C1, C3, C5.
- - Zj: los rendimientos indirectos de todos los procesos de la empresa
- - Xij: las aportaciones que hacen todos los procesos de la empresa (j) a los que forman parte del programa base (i). Se calcula como el producto de B-1 por la matriz tecnológica A ampliada, incluidos los procesos de holgura.
En la empresa que hemos tomado como ejemplo:
Ci = (50 100 0)
Zj = (50 70 100 50 0 150)
Wj = (0 -10 0 -50 0 -150)
Una vez que obtenemos la salida del programa POM, los intervalos de variación de los rendimientos serían los siguientes:
Cuadro 4: Análisis de sensibilidad de los rendimientos directos de los productos de la función objetivoVariable | Nivel producción | Coste reducido | Valor original | Límite inferior | Límite superior |
Sillas | 150 | 0 | 50 | 40 | 60 |
Mesas Centro | 0 | 10 | 60 | -Infinito | 70 |
Sillones | 120 | 0 | 100 | 91,67 | 125 |
Fuente: Elaboración Propia, basado en resultados del Programa POM de Windows. |
En función de los datos extraídos del programa, podemos observar que:
- - Si el rendimiento directo de las sillas (C1) está comprendido entre 40 € y 60 € la solución óptima seguirá siendo (P1, P3 y P5).
- - Si el rendimiento directo de las mesas de centro (C2) es inferior a 70 €, la solución óptima se mantiene.
- - Si el rendimiento directo de las sillones (C3) está comprendidas entre 91´67 € y 125 €, la solución óptima seguirá siendo (P1, P3 y P5).
Recuerde que...
- • Planteamientos parámetro sensibilidad: prueba y error y el método analítico de postoptimalidad.
- • La programación lineal permite tomar decisiones rápidas en la asignación eficiente de los recursos limitados.
- • Algoritmo del Simplex procedimiento iterativo de búsqueda de la solución óptima en problemas de programación lineal de cualquier tamaño.
- • Tipos de análisis: Variaciones en los términos independientes de las ecuaciones de restricción y variaciones en los coeficientes de la función objetivo.
- • Otros tipos de análisis: introducción de nuevos procesos, variación de algún coeficiente técnico e introducción de una nueva restricción.