Está en la página 1de 17

UNIVERSIDAD DEL GOLFO DE MÉXICO NORTE CAMPUS SAN ANDRÉS

TUXTLA

INVESTIGACIÓN DE OPERACIONES II

MII. ALEJANDRO CARDENAS ROJAS

ALUMNO (A):
FERNANDA LIZETH CRUZ MADRIGAL

TRABAJO:
INVESTIGACIÓN DE PROGRAMACIÓN POR METAS
PROGRAMACIÓN POR METAS

La Programación por Metas (Goal Programming) fue inicialmente introducida por


Charnes y Cooper en los años 50. Desarrollada en los años 70 por Ljiri, Lee,
Ignizio y Romero, es actualmente uno de los enfoques multicriterio que más se
utilizan.

En principio fue dirigida a resolver problemas industriales, sin embargo


posteriormente se ha extendido a muchos otros campos como la economía,
agricultura, recursos ambientales, recursos pesqueros, etc.

Resulta de gran interés, sobre todo, en problemas complejos de gran tamaño.

3.1 ESTRUCTURA DE UN MODELO DE PROGRAMACIÓN POR METAS

El primer paso en la formulación de un modelo de programación por metas es fijar


los objetivos/ atributos, f(x), que se consideran relevantes para el problema que
estemos analizando.

El segundo paso es determinar el nivel de aspiración, t, que corresponde a cada


Atributo, siendo éste el nivel de logro del atributo que el decisor considera
aceptable. A continuación, definimos las metas, es decir, los atributos combinados
con niveles de aspiración. Cada meta se convierte en una restricción “blanda” a
incorporar en el modelo de programación por metas.

n: variable de desviación negativa, cuantifica la falta de logro de una meta


p: variable de desviación positiva, cuantifica el exceso de logro de una meta

f ( x)  n  p  t

En general, la meta del atributo i-ésimo se escribe como:


f (x)  ni  pi  ti

Los valores de las variables de desviación son siempre positivas o cero, al menos
una de las dos variables de desviación que definen la meta tendrá que ser cero.

Las dos variables de desviación tomarán el valor cero cuando la meta alcance
exactamente su nivel de aspiración, ti. Una variable de desviación se dice que es
no deseada cuando al centro decisor le conviene que la variable en cuestión
alcance su valor más pequeño, es decir, cero.
Cuando la meta deriva de un objetivo a maximizar o de una restricción de tipo ≥, la
variable de desviación no deseada es la negativa ni. Cuando la meta deriva de un
objetivo a minimizar o de una restricción de tipo ≤, la variable de desviación no
deseada es la positiva pi. Cuando se desea alcanzar exactamente el nivel de
aspiración, las variables de desviación no deseadas son tanto la positiva, pi, como
la negativa, ni. Las variables de desviación no deseadas se incorporan siempre en
la función objetivo del modelo de programación por metas.

3.2 EJERCICIO DE EJEMPLO

Mediante un ejemplo demostraremos como se introducen los datos para la


creación de un modelo de programación de metas.

Ejemplo 3-1:
Formular el problema de la Planificación de la producción de una fábrica de papel
como un problema de programación por metas. Supóngase la existencia de dos
procesos, uno mecánico y otro químico, por los que se puede obtener la pulpa de
celulosa para la producción del papel.
El modelo de programación multiobjetivos es el siguiente:
Objetivos: Max f1(x) = 1000X1 + 3000X2 (Maximizar el margen bruto)
Min f2(x) = X1 + 2X2 (Minimizar la demanda biológica de O2)
Restricciones rígidas iniciales:
1000X1 + 3000X2 ≥ 300000 (Margen Bruto)
X1 + X2 ≤ 400 (Empleo)
X1 ≤ 300 (Capacidades de producción)
X2 ≤ 200
X1, X2 ≥ 0
Definidas las variables de decisión y los atributos/ objetivos relevantes del
problema que nos ocupa, el decisor define las siguientes METAS:
g1: Para la demanda biológica de oxígeno: un nivel de aspiración de 300
unidades, pues desea que sea lo más pequeña posible.
g2: Para el margen bruto: alcanzar un valor lo más grande posible, ojalá mayor
de 400000 u.m.
g3: Para el empleo: no desea ni quedarse corto ni contratar mano de obra
adicional.
g4: El decisor no desea superar sus capacidades de producción, lo que
implicaría recurrir a turnos extras.

3.3 DEFINIENDO LAS RESTRICCIONES TIPO METAS

Las restricciones quedarían de la siguiente forma:

g1:
X1 + 2X2 + n1 - p1 = 300 (Demanda Biológica de O2)
g2:
1000X1 + 3000X2 + n2 - p2 = 400000 (Margen Bruto)
g3: X1 + X2 + n3 - p3 = 400 (Empleo)
g4:
X1 + n4 - p4 = 300 (Capacidades de Producción) X2 + n5
g5:
- p5 = 200
X1, X2 ≥ 0

3.4 INTRODUCIENDO EL PROBLEMA

En el menú Archivo (File) seleccionamos Nuevo problema (New Problem) e


introducimos la información del problema:
Al pulsar el botón OK aparecerá una nueva ventana donde procederemos a
introducir los coeficientes de las variables:

Para trabajar con el mismo formato de las variables definidas en el ejemplo,


activaremos la opción Nombre de las variables (Variable Names) en el menú
Editar (Edit).
Los nombres de las variables se cambiarán de acuerdo al orden que en que
aparecen en el problema:

Al pulsar OK en esta ventana podremos definir las metas y restricciones:

Luego de introducido el modelo se inicia el proceso de solución, siguiendo los


mismos pasos al empleado en la solución de los modelos de programación lineal.
La solución final se muestra en la siguiente página:
La ventana con el resumen de la información permite un análisis detallado de cada
variable.

3.1 INTERPRETANDO LA SOLUCIÓN

En el tablero optimal se puede observar que:

 Las toneladas de celulosa a producir por medios mecánicos son 300.


 Dado que n1 y p1 son ambas cero, la demanda biológica de oxígeno mínima
es de 300 unidades, igual al nivel de aspiración.
 La meta 2, asociada con el margen bruto, se queda por debajo del nivel de
aspiración en cuantía de 100.000 u. m., valor que asume la variable de
desviación n2.
 La meta del empleo se fija en 100 unidades de mano de obra menos que el
nivel de aspiración que era de 400.
 Las metas 4 y 5, asociadas con los niveles máximos de producción por
cada método, se fijan en 0 ton. de capacidad no aprovechada, para la 4, y
de 200 para la 5.

Conocidos estos resultados, el WINQSB también permite el análisis paramétrico


del modelo.
Análisis de Sensibilidad
El análisis de sensibilidad busca determinar los efectos que se producen en la solución óptima al
realizar cambios en cualquiera de los parámetros del modelo de programación lineal planteado
inicialmente. Entre los cambios que se investigan están: los cambios en los coeficientes de
las variables en la función objetivo tanto para variables básicas como para las variables no básicas,
cambios en los recursos disponibles de las restricciones, variación de los coeficientes
de utilización en las restricciones e introducción de una nueva restricción.

El objetivo principal del análisis de sensibilidad es identificar el intervalo permisible de variación en


los cuales las variables o parámetros pueden fluctuar sin que cambie la solución optima.  Sin
embargo, así mismo se identifica aquellos parámetros sensibles, es decir, los parámetros cuyos
valores no pueden cambiar sin que cambie la solución óptima.  Los investigadores de operaciones
tienden a prestar bastante atención a aquellos parámetros con holguras reducidas en cuanto a los
cambios que pueden presentar, de forma que se vigile su comportamiento para realizar los ajustes
adecuados según corresponda y evitar que estas fluctuaciones pueden desembocar en
una solución no factible.

A modo general, cuando se realiza un análisis de sensibilidad a una solución óptima se debe


verificar cada parámetro de forma individual, dígase los coeficientes de la función objetivo y los
limites de cada una de las restricciones. En ese sentido se plantea el siguiente procedimiento:
1. Revisión del modelo: se realizan los cambios que se desean investigar en el modelo.
2. Revisión de la tabla final Símplex: se aplica el criterio adecuado para determinar los cambios
que resultan en la tabla final Símplex.
3. Conversión a la forma apropiada de eliminación Gauss: se convierta la tabla en la forma
apropiada para identificar y evaluar la solución básica actual, para lo cual se aplica
la metodología de eliminación Gauss si es necesario. 
4. Prueba de factibilidad: se prueba la factibilidad de esta solución mediante la verificación de
que todas las variables básicas de la columna del lado derecho aun tengan valores no
negativos. 
5. Prueba de optimalidad: se verifica si esta solución es optima y factible, mediante
la comprobación de que todos lo coeficientes de las variables
no básicas del reglón Z permanecen no negativos. 
6. Reoptimización: si esta solución no pasa una de las pruebas indicadas en los puntos 4 y 5
anteriores, se procede a buscar la nueva solución optima a partir de la tabla actual como
tabla Símplex inicial, luego de aplicadas las conversiones de lugar, ya sea con
el método Símplex o el Símplex Dual. 
Utilizando la herramienta Solver Excel se puede obtener un reporte del analisis de sensibilidad, para
los fines se selecciona el problema 4.6-4 del libro de texto. A continuación se presenta el modelo
planteado con la solución óptima encontrada.

El primer reporte que se genera corresponde al reporte de repuesta, en el cual se plantea


la solución óptima encontrada.

El reporte de sensibilidad que se genera presenta el siguiente formato, el mismo se puede visualizar


a continuación.

El tercer reporte que Solver Excel permite generar es el correspondiente a los limites, en el formato
presentado.
Programación por metas
La Programación por metas (abreviada PM) apareció originalmente en un artículo de Charnes,
Cooper y Ferguson en 1955 (Romero, 2002). Como se explicó anteriormente, se utiliza cuando
existen varios objetivos o metas y se desea una solución satisfactoria y suficiente
(satisfaciente).

La estructura de cada meta seguiría este modelo:

fi(x) + ni – pi = ti

En la expresión anterior fi(x) representa la expresión matemática de la meta, a la que se le


añaden dos variables de desviación (ni y pi). La primera, ni, representa un valor faltante para
llegar a la meta. La segunda variable de desviación pi, representa un valor excedente por sobre
la meta.

Por ejemplo, suponga que una empresa tiene dos productos: el primero le deja 3 pesos de
ganancia y el segundo le produce solo 1 peso. Se desea obtener 50 pesos de ganancia. La meta
estaría representada por

3x1 + x2 + n – p = 50

Tal vez alguien en la empresa sugiere que deberían producir 10 productos x1 y 15 productos x2.
Eso implicaría:

3(10) + 1(15) + n – p = 50

30+15 + n – p = 50

45 + n – p = 50

Se necesita que n valga 5 para alcanzar la meta. En otras palabras el beneficio quedó 5 pesos
abajo de lo esperado porque se obtuvo un faltante.
Ahora piense que otra persona en la empresa sugiere que se fabriquen 15 productos de cada
tipo. La meta estaría representada por:

3(15) + 1(15) + n – p = 50

60 +n – p = 50

Ahora la meta quedó 10 unidades por encima de lo esperado.

Suponga que el plan de producción lo dejamos en 10 x1 y 20 x2. Ello implicaría:

50 + n – p = 50

Por lo que tanto n, como p valen 0. (No hay faltantes ni excedentes).

Variables de desviación no deseadas


En ocasiones, para el cumplimiento de la meta nos conviene más que cierta variable alcance su
valor más pequeño, que es cero. Esa variable es una variable de desviación no deseada. Las
situaciones que se pueden dar son las siguientes:

1. Cuando la meta es fi(x) >= ti la variable no deseada (y que se buscará minimizar) será la
variable n (la que indica un faltante).
2. Cuando la meta es fi(x) <= ti, la variable no deseada será la p (excedente).
3. Cuando la meta es alcanzar exactamente el nivel de aspiración, fi(x) = ti, ambas variables
(n y p) serán no deseadas y por lo tanto, variables a minimizar.
“El propósito general de la PM consiste en minimizar un función de las variables de desviación
no deseadas. Esta función recibe el nombre de función de logro” (Romero, 2002).

Ejercicio explicado  de Programación por metas


Veamos el siguiente ejemplo (basado en Taha, 2012):

En cierto país de 20 000 habitantes se tienen las siguientes bases tributarias: 550 millones por
predial. 35 millones por alimentos y medicinas. 55 millones por ventas. El consumo anual de
gasolina es de 7.5 millones de galones.

Se tienen las siguientes metas:

1. Tener un ingreso por impuestos de 16 millones.


2. Que el impuesto para alimentos y medicinas no exceda el 10% del total de impuestos
3. Que el impuesto sobre ventas no exceda el 20% del total de impuestos.
4. Que el impuesto para gasolina no exceda de 2 centavos por galón.
Así es que las variables serían:

 X1 = tasa tributaria predial


 X2 = tasa tributaria por alimentos y medicinas
 X3 = tasa tributaria por ventas
 X4 = impuesto para gasolina en centavos por galón.

Metas
Las metas quedaría expresadas de la siguiente forma:

1. Tener un ingreso de impuestos de 16 millones.


550x1 + 35x2 + 55x3 + 0.075x4 >= 16

2. Que el impuesto para alimentos y medicinas no exceda el 10% del total de impuestos
35x2 <= .1 (550x1 + 35x2 + 55x3 + 0.075x4)

Haciendo las operaciones correspondientes, y simplificando, la meta anterior quedaría:

55x1 – 31.5x2 + 5.5x3 + 0.0075x4 >= 0

3. Que el impuesto sobre ventas no exceda el 20% del total de impuestos.


55x3 <= .2 (550x1 + 35x2 + 55x3 + 0.075x4)

Haciendo las operaciones correspondientes, y simplificando, la meta anterior quedaría:

110x1 + 7x2 – 44x3 + 0.015x4 >= 0

4. Que el impuesto para gasolina no exceda de 2 centavos por galón.


x4 <= 2

La planificación por metas (incluyendo las variables de desviación) sería:

550x1 + 35x2 + 55x3 + 0.075x4  + n1 – p1 = 16

55x1 – 31.5x2 + 5.5x3 + 0.0075x4 +n2 – p2  = 0

110x1 + 7x2 – 44x3 + 0.015x4 +n3 – p3  = 0


X4 + n4 – p4 = 0

Las variables de desviación no deseadas serían: n1, n2, n3, p4.

La función de logro sería:

Min g(n1, n2 , n3,  p4)

Esperamos que esta explicación y este ejemplo te hayan permitido entender un poco más la
programación por metas.

También podría gustarte