Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Dirigido por
Carlos González Martı́n
Carlos González Martı́n
Departamento de Matemáticas,
Estadı́stica e Investigación
Operativa
Universidad de La Laguna
38200 La Laguna, Tenerife
Agradecimientos
También quiero dar las gracias a mi familia, amigos y a todas aquellas per-
sonas que me han apoyado y me han ayudado en aquellos momentos que más lo
he necesitado, dandome la fuerza necesaria para continuar luchando en lo que
creo y no rendirme.
Resumen
En este trabajo, dentro de la Programación Multiobjetivo, nos centra-
remos en el estudio de la Programación por Metas. Después de hacer
un recorrido por los aspectos históricos, presentamos el modelo gene-
ral y modelizamos algunos ejemplos. También presentamos métodos
generales que nos permitirán resolver los problemas de Programa-
ción por Metas. Finalmente, resolveremos los problemas propuestos
con la ayuda de software disponible para Proramación Lineal.
Abstract
This project will focus on the study of Goal Programming within
Multiobjective Programming. After having outlined the historical as-
pects, a general model is presented and some examples are modelled.
General methods are also presented which will allow us to solve the
problems of Goal Programming. Finally, the proposed problems will
be solved with the software available for Linear Programming.
Agradecimientos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . iii
Resumen/Abstract . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . v
Introducción . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ix
Ejemplo 3.2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
Ejemplo 3.3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
3.3. Métodos de metas ponderadas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
Ejemplo 3.4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
Ejemplo 3.5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
3.4. Método MINMAX . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
Ejemplo 3.6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
3.5. Soluciones aportadas por los métodos y eficiencia . . . . . . . . . . . . . . 26
3.5.1. Método lexicográfico . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
3.5.2. Propiedad . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
3.5.3. Método ponderado . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
3.5.4. Método MINMAX(Chebyshev) . . . . . . . . . . . . . . . . . . . . . . . . 28
Bibliografı́a . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
Poster . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
Introducción
En este contexto, es común que existan conflictos entre los diferentes objeti-
vos y esta realidad impone nuevas ideas en relación con las establecidas para la
Optimización Uniobjetivo.
Veamos un ejemplo.
En una empresa de transporte, se pretende minimizar el coste de transportar
la mercancı́a a sus destinos. Se nos presenta, por tanto, un problema en el que
tenemos que satisfacer un único objetivo.
1.1. Introducción
En este capı́tulo presentaremos los conceptos básicos de la Programación
Multiobjetivo y el modelo general. Además, incluiremos un ejemplo de problema
bicriterio.
Definición 1.4. Los objetivos son funciones, de valor real, establecidas sobre
los niveles que alcanzan los atributos.
Definición 1.5. Las metas son cotas asociadas a atributos u objetivos cuya
aproximación o superación sea esencial para el problema.
Definición 1.6. Los criterios son los que establecen las pautas que articulan el
marco global de las búsquedas de soluciones. Incluyen objetivos, metas y atributos
relevantes para los procesos de resolución.
min fj (x)
s.a : x ∈ S
Definición 1.8. Una solución ideal es cualquier solución factible x∗ del pro-
blema multiobjetivo en la que (f1 (x∗ ), ..., fp (x∗ )) = (f1∗ , ..., fp∗ ).
Al vector (f1∗ , ..., fp∗ ) se le denomina punto ideal o utopı́a.
En general, las soluciones ideales son no factibles. La, en general, no factibilidad
del óptimo absoluto impone la búsqueda de soluciones optimales y conduce a la
siguiente definición.
Definición 1.9. x̄ ∈ X es una solución eficiente sı́, y sólo si, @x0 ∈ S tal que
fj (x0 ) ≤ fj (x̄), ∀j ∈ {1, ..., p} y fj0 (x0 ) < fj0 (x̄) para algún j0 ∈ {1, ..., p}.
Estas soluciones también se denominan no dominadas u óptimas de Pareto.
Sin embargo, aunque el decisor sea capaz de valorar su utilidad en las diferentes
soluciones posibles, es difı́cil, en general, que se puedan plasmar sus preferencias
en una función. Más fácil le resultarı́a, en algunos casos, establecer niveles de
conformidad o de satisfacción para cada objetivo (criterio, atributos, . . . ) o estar
dispuesto a aceptar “pérdidas” respecto a niveles ideales.
1.4. Ejemplo
Veamos un ejemplo de problema de Programación Lineal biobjetivo, que
aparece en [5]
Ejemplo 1.1
En una fábrica se pretende producir grandes cantidades de dos sustancias quı́mi-
cas, las cuales denominaremos A y B. La empresa tiene como objetivo maximizar
el beneficio obtenido por la fabricación de ambas sustancias. Pero, además, la
empresa tiene otro objetivo a satisfacer y es minimizar la contaminación emitida
en la fabricación de ambas sustancias. Tenemos, por tanto, un problema biobje-
tivo.
x1 + 3x2 ≤ 24
2x1 + x2 ≤ 18
x1 + x2 ≤ 10
x1 , x2 ≥ 0
2.1. Introducción
En este capı́tulo introduciremos los conceptos básicos relacionados con la
Programación por Metas, haremos un breve resumen de los aspectos históri-
cos relacionados más destacados, veremos el modelo general para este tipo de
problemas e introduciremos algunos ejemplos que resolveremos más adelante.
Fueron muchos los que entre los años 60 y 70 desarrollaron y trabajaron as-
pectos de la Programación por Metas. Cabe destacar a Ignizio en el año 1963
que fue capaz de adaptar el término de Programación por Metas para obtener
soluciones en un problema que conllevaba la organización del sistema de antenas
Saturno/Apolo. La aplicación de la Programación por Metas era consecuencia
de que en dicho problema se encontraban múltiples metas, además de funciones
no lineales y variables enteras.
Algunas de las áreas en las que se ha aplicado la Programación por Metas son:
control de calidad, programación económica, planificación y gestión de recursos
agrarios, recursos sanitarios, publicidad,...
Como, en principio, el valor de fj (x) puede ser menor o igual o mayor o igual
que mj , podemos considerar desviaciones por defecto o por exceso y escribir,
∀j ∈ {1, ..., p}:
2.4 Conceptos básicos 9
fj (x) + d− + − +
j − dj = mj , dj ≥ 0, dj ≥ 0
con opt entendemos que la función objetivo puede ser de máximo o mı́nimo.
2.5. Ejemplos
Ejemplo 2.1
Modifiquemos ahora el Ejemplo 1.1, tomado de [5] y planteémoslo ahora como
un problema de Programación por Metas.
Como metas se tomarán: m1 = 2x1 + 3x2 = 28 y m2 = 4x1 + 2x2 = 24.
min d− + − +
1 + d1 + d2 + d2
s.a : x1 + 3x2 ≤ 24
2x1 + x2 ≤ 18
x1 + x2 ≤ 10
−
2x1 + 3x2 − d+
1 + d1 = 28
−
4x1 + 2x2 − d+
2 + d2 = 24
−
x1 , x2 ≥ 0 y d+
i , di ≥ 0, i = 1, 2
donde a1 = d− + − +
1 + d1 y a2 = d2 + d2 .
2.5 Ejemplos 11
Ejemplo 2.2
Usamos un ejemplo de [1].
La empresa Harrison Electric Company, en Chicago, fabrica candelabros y ven-
tiladores de techo de estilo antiguo. Dicha fábrica desea maximizar los beneficios
obtenidos con la producción de los citados productos.
min d− +
1 + d1
s.a : 7x1 + 6x2 + d− +
1 − d1 = 30
2x1 + 3x2 ≤ 12 (2.4)
6x1 + 5x2 ≤ 30
x1 , x2 , d− +
1 , d1 ≥ 0
Teniendo en cuenta las metas que se han establecido, las variables de desvia-
−
ción d+ + +
1 , d2 , d3 y d4 se pueden eliminar de la función objetivo.
min d− − + −
1 + d2 + d3 + d4
s.a : 7x1 + 6x2 + d− +
1 − d1 = 30
2x1 + 3x2 + d− +
2 − d2 = 12
(2.5)
6x1 + 5x2 + d− +
3 − d3 = 30
x2 + d− +
4 − d4 = 7
xi , d− +
j , dj ≥ 0, ∀i = 1, 2 y ∀j = 1, 2, 3, 4
donde a1 = d− − + −
1 , a2 = d2 , a3 = d3 y a4 = d4 .
2.5 Ejemplos 13
Ejemplo 2.3
A continuación, estudiamos otro ejemplo de Programación por Metas, esta vez
obtenido de [4].
2x1 + x2 ≥ 50
x1 + x2 ≤ 75
− − −
M in d+
1 + d2 + d3 + d4
s.a : 4x1 + 3x2 + d− +
1 − d1 = 120
100x1 + 150x2 + d− +
2 − d2 = 7000
x1 + d− +
3 − d3 = 40
(2.6)
x2 + d− +
4 − d4 = 40
2x1 + x2 ≥ 50
x1 + x2 ≤ 75
x1 , x2 ≥ 0, d− +
j , dj ≥ 0, ∀j = 1, 2, 3, 4, 5, 6
− − −
donde a1 = d+
1 , a2 = d2 , a3 = d3 , a4 = d4 .
Cabe resaltar que en todos los ejemplos vistos, todas las metas tienen igual prio-
ridad. En el capı́tulo siguiente veremos otros problemas de Programación por
Metas en los que las metas que han satisfacerse tienen prioridades asignadadas,
distintas entre sı́.
3
Métodos de resolución de problemas de
Programación por Metas
3.1. Introducción
En este capı́tulo estudiaremos distintos métodos para la resolución de los
problemas de Programación por Metas, en los que se hacen distintos tratamientos
de las variables de desviación. En las aplicaciones, como ya hemos indicado,
nos restringimos al caso lineal. De esta forma, distinguimos entre los siguientes
métodos:
Métodos de metas lexicográficas.
Métodos de metas ponderadas.
Métodos MINMAX.
min ai (d− +
i , di )
s.a : fi (x) + d− +
i − di = mi
fj (x) = f (xj ), j = 1, ..., i − 1
x∈S
Este problema tendrá solución cuando consideremos las r metas que tenemos
en el problema o cuando la solución de alguno de los problemas sea un único
punto. Pero existe el riesgo de que los problemas a resolver en el proceso sean
no factibles ya que son altamente restringidos.
Ejemplo 3.1
Modifiquemos el Ejemplo 2.1, de [5], tomando las metas con las prioridades
siguientes:
Prioridad P1 : Respetar las restricciones del ejemplo anterior
Prioridad P2 : Obtener al menos un beneficio de 21 euros
Prioridad P3 : No superar 12 unidades de contaminación
min (d+ + + + +
1 + d2 + d3 , d 4 , d 5 )
−
s.a : x1 + 3x2 − d+
1 + d1 = 24
−
2x1 + x2 − d+
2 + d2 = 18
−
x1 + x2 − d+
3 + d3 = 10
−
2x1 + 3x2 − d+
4 + d4 = 21
−
4x1 + 2x2 − d+
5 + d5 = 12
−
xi ≥ 0, i = 1, 2 y d+
j , dj ≥ 0, j = 1, 2, 3, 4, 5
donde a1 = d+ + + + +
1 + d2 + d3 , a2 = d4 y a3 = d5 .
Resolvamos el ejemplo teniendo en cuenta, en primer lugar, las metas que tienen
la mayor prioridad. Obtenemos la siguiente región factible que se representa en
el área sombreada.
3.2 Métodos de metas lexicográficas 17
Ejemplo 3.2
Partimos del Ejemplo 2.2, encontrado en [1] y suponemos ahora que la com-
pañı́a establece las siguientes prioridades a las respectivas metas:
Prioridad P1 : Obtener como mı́nimo un beneficio de 30 dolares.
Prioridad P2 : Utilizar todas las horas que están disponibles en el departamento
de cableado.
Prioridad P3 : Evitar realizar horas extras en el departamento de ensamblaje.
Prioridad P4 : Fabricar como mı́nimo siete ventiladores de techo.
min (d− − + −
1 , d2 , d3 , d4 )
s.a : 7x1 + 6x2 + d− +
1 − d1 = 30
2x1 + 3x2 + d− +
2 − d2 = 12
6x1 + 5x2 + d− +
3 − d3 = 30
x2 + d− +
4 − d4 = 7
xi , d− +
j , dj ≥ 0, ∀i = 1, 2 y ∀j = 1, 2, 3, 4
donde a1 = d− − + −
1 , a2 = d2 , a3 = d3 y a4 = d4 .
A continuación, pasamos a resolver este problema gráficamente, aplicando el
Método Lexicográfico.
Lo primero que hacemos es considerar la meta que tenga mayor prioridad y
dibujamos la restricción asociada. Cuando dibujamos la restricción no tenemos
en cuenta las variables de desviación. Como nuestro objetivo es minimizar d−1,
obtenemos como solución el área sombreada.
Luego, buscamos la meta con segunda prioridad que está asociada al control de
d−
2 y dibujamos la restricción correspondiente. Debemos tener en cuenta los valo-
res asociados a d+
2 para evitar tener horas libres en el departamento de cableado.
Además debemos hacer compatible esta solución con la obtenida anteriormente.
Obtenemos ası́ la figura siguiente:
20 3 Métodos de resolución de problemas de Programación por Metas
Ejemplo 3.3
Volvemos ahora al Ejemplo 2.3 de [4] y supongamos que vamos a dar prioridad
a las metas tal y como se indica a continuación:
Prioridad 1: Meta 2 (Obtener al menos 7000 euros de beneficio)
Prioridad 2: Meta 3 y 4 (Fabricar al menos 40 pruductos tipo A y 40 productos
tipo B)
Prioridad 3: Meta 1 (No utilizar más de 120 horas de trabajo en la fabricación)
M in a = (d− − − +
2 , d3 + d4 , d1 )
donde a1 = d− − − +
2 , a2 = d3 + d4 y a3 = d1 .
22 3 Métodos de resolución de problemas de Programación por Metas
M in d−
2
s.a : 4x1 + 3x2 + d− +
1 − d1 = 120
100x1 + 150x2 + d− +
2 − d2 = 7000
x1 + d− +
3 − d3 = 40
x2 + d− +
4 − d4 = 40
2x1 + x2 ≥ 50
x1 + x2 ≤ 75
x1 , x2 ≥ 0, d− +
i , di ≥ 0, i = 1, 2, 3, 4
M in d− −
3 + d4
s.a : 4x1 + 3x2 + d− +
1 − d1 = 120
100x1 + 150x2 + d− +
2 − d2 = 7000
x1 + d− +
3 − d3 = 40
x2 + d− +
4 − d4 = 40
2x1 + x2 ≥ 50
x1 + x2 ≤ 75
d−
2 =0
x1 , x2 ≥ 0, d− +
i , di ≥ 0, i = 1, 2, 3, 4
Al resolver este problema obtenemos que las metas a las que se ha asiganado
prioridad 2 no pueden ser satisfechas y que el mı́nimo valor de la función objetivo
que podemos alcanzar es 5.
Teniendo en consideración todo ello y la meta que tiene tercera prioridad, resol-
vemos el siguiente problema:
3.3 Métodos de metas ponderadas 23
M in d+
1
s.a : 4x1 + 3x2 + d− +
1 − d1 = 120
100x1 + 150x2 + d− +
2 − d2 = 7000
x1 + d− +
3 − d3 = 40
x2 + d− +
4 − d4 = 40
2x1 + x2 ≥ 50
x1 + x2 ≤ 75
d−
2 =0
d− −
3 + d4 = 5
x1 , x2 ≥ 0, d− +
i , di ≥ 0, i = 1, 2, 3, 4
donde G es una función adecuada y wi− y wi+ son valores mayores o iguales que
cero.
Ejemplo 3.4
Partimos del Ejemplo 1.1 de [5] y añadimos como metas: m1 = 2x1 + 3x2 =
26 y m2 = 4x1 + 2x2 = 20. Además, damos pesos a los distintas variables de
desviación como se sigue:
− −
donde a1 = 4d+ +
1 + d1 y a2 = d2 + 2d2 .
Ejemplo 3.5
Modifiquemos ahora el ejemplo anterior.
Supongamos ahora que w1+ = w1− = 2 y w2+ = w2− = 1.
Obtendrı́amos:
− −
min 2d+ +
1 + 2d1 + d2 + d2
s.a : x1 + 3x2 ≤ 24
2x1 + x2 ≤ 18
x1 + x2 ≤ 10
−
2x1 + 3x2 − d+
1 + d1 = 26
−
4x1 + 2x2 − d+
2 + d2 = 20
xi , d− +
i , di ≥ 0, i = 1, 2
3.4 Método MINMAX 25
min λ
s.a : |ai (d− +
i , di )| ≤ λ
(3.2)
fi (x) + d− +
i − di = mi , i = 1, ..., p
x∈S
Ejemplo 3.6
Volvamos al ejemplo 2.3 hallado en [4] considerando que nuestro objetivo es:
26 3 Métodos de resolución de problemas de Programación por Metas
min a = λ
d+1
s.a : ≤λ
120
d−2
≤λ
7000
d−
3
≤λ
40
d−
4
≤λ
40
4x1 + 3x2 + d− +
1 − d1 = 120
100x1 + 150x2 + d− +
2 − d2 = 7000
x1 + d− +
3 − d3 = 40
x2 + d− +
4 − d4 = 40
2x1 + x2 ≥ 50
x1 + x2 ≤ 75
x1 , x2 ≥ 0, d− +
i , di ≥ 0, i = 1, 2, 3, 4
En los casos resueltos con los métodos anteriores, cada ai (x) es lineal y no
negativa. En general, para intentar alcanzar los niveles establecidos para cada
fi (x), las propiedades deseables para las ai (x) deben incluir que sean crecientes
en las variables de desviación y que sean no negativas.
min a1 (x)
s.a : f1 (x) + d− +
1 − d1 = m1
x∈S
3.5 Soluciones aportadas por los métodos y eficiencia 27
min ai (x)
s.a : fj (x) + d− +
j − dj = mj , j = 1, ..., i
(3.3)
fj (x) = m̄j , j = 1, ..., i − 1
x∈S
3.5.2. Propiedad
Demostración
Sea x̄ una solución óptima de 3.3. Si x̄ no es débilmente eficiente respecto a las
metas 1,. . . , i, ∃x0 ∈ S tal que aj (x0 ) < aj (x̄), j = 1, . . . , i. Entonces, trivial-
mente, x̄ no es solución óptima de (3.3). Si x̄ es solución óptima única de 3.3,
obviamente @x0 ∈ S tal que aj (x0 ) ≤ aj (x̄), j=1,. . . , i y aj0 (x0 ) < aj0 (x̄), para
algún j0 ∈ {1, ..., i} .Si x̄ no es solución óptima única de 3.3, sea Si el conjunto
de soluciones de este problema.
son soluciones de 3.3 que, también, son eficientes respecto a las metas consi-
deradas. Por tanto, en los procesos de resolución nos podemos referir a estas
últimas.
s.a : fj (x) + d− +
j − dj = mj , 1, ..., p
x∈S
con πj > 0, para j=1, . . . , p, las soluciones son eficientes respecto a las metas
consideradas (ver, por ejemplo, ()).
28 3 Métodos de resolución de problemas de Programación por Metas
Se plantea el problema:
min λ
s.a : πj aj (x) ≤ λ, ∀j ∈ {1, ..., p}
(3.4)
fj (x) + d− +
j − dj = mj , j = 1, ..., p
x∈S
Sea (λ̄, x̄) solución óptima del anterior problema. Si suponemos que x̄ no es
débilmente eficiente para las metas consideradas, ∃x0 ∈ S tal que aj (x0 ) <
aj (x̄), j = 1, ..., p, entonces (λ0 , x0 ) es solución del citado problema anterior con
λ0 = máxj∈{1,...,p} πj aj (x0 ) < λ̄ y, en consecuencia, (λ̄, x̄) no serı́a solución ópti-
ma de 3.3. Por tanto, las soluciones de 3.3 son débilmente eficientes para las
metas consideradas.
es eficiente para las metas consideradas. Por tanto, entre las soluciones de 3.3
existe, al menos, una que es eficeinte para las metas consideradas.
4.1. Introducción
La dimensión habitual de los problemas de Programación por Metas y la
complejidad de los cálculos necesarios para su resolución, imponen el uso del
computador.
Existen programas de carácter general y programas especı́ficos en los que se pue-
de apoyar la aplicación de las metodologı́as introducidas previamente.
Por otro lado, LINGO es capaz de obtener los datos necesarios del problema
de bases de datos y hojas de cálculo. Es más, tiene la capacidad de devolver las
soluciones de los problemas a las hojas de cálculo y bases de datos.
4.2.2. R y RStudio
Haremos uso del mismo siguiendo las indicaciones del manual que podemos en-
contrar en [9].
Cabe destacar, por último, los paquetes goalprog y glpkAPI, que son pa-
quetes especı́ficos de R para resolver los problemas de Programación por Metas,
problemas en los que nos centramos a lo largo de este trabajo.
Sin embargo, se debe tener presente que Solver presenta lı́mite de variables y
restricciones de los problemas a resolver. Esto lı́mita su uso a problemas sencillos.
Vemos que la escritura del modelo es muy intuitiva y similar a la escritura diaria.
Ejecutando el modelo, obtenemos como resultado:
4.3 Resolución de los problemas propuestos 35
En este momento pasamos a resolver este mismo ejemplo usando RStudio. Im-
plementando ası́ el código siguiente:
Podemos observar que con los tres software hemos logrado obtener la misma
solución. Como se indica al final del capı́tulo 1, esta solución es eficiente para el
problema multiobjetivo.
Este mismo problema se puede resolver de manera más escueta gracias al paque-
te de RStudio: goalprog. Veamos el código en el que se procede a su resolución.
Vemos que con ambos códigos se obtiene la misma solución y observamos que
esta es óptima.
a = a+ − a− , a+ , a− ≥ 0
b = b+ − b− , b+ , b− ≥ 0
n
X
min (d− +
i + di )
i=1
s.a : (a − a− )xi + (b+ − b− ) + d−
+ +
i − di = yi , 1, ..., n
a+ , a− , b+ , b− , d− +
i , di ≥ 0
Ejemplo 2.1
Vemos que al resolver el correspondiente problema tanto con Solver como con
−
RStudio obtenemos la misma solución: x1 = 2.4, x2 = 7.2, d+ +
1 = d2 = d2 =
−
0 y d1 = 1.6.
42 4 Aplicaciones a distintos problemas
Ejemplo 2.2
Vemos que al resolver el correspondiente problema tanto con Solver como con
−
RStudio obtenemos la misma solución: x1 = 0, x2 = 6, d+ +
1 = 6, d2 = 6, d4 =
− − + − +
1 y d1 = d2 = d3 = d3 = d4 = 0.
Ejemplo 2.3
Vemos que al resolver el correspondiente problema tanto con Solver como con
−
RStudio obtenemos la misma solución: x1 = 2.5, x2 = 45, d+ 1 = 25, d3 =
+ − − + + −
37.5, d4 = 5 y d1 = d2 = d2 = d3 = d4 = 0.
4.5 Resolución de otros ejemplos 43
Ejemplo 3.1
Vemos que al resolver el correspondiente problema tanto con Solver como con
RStudio obtenemos la misma solución: x1 = 0, x2 = 7, d− − −
1 = 3, d2 = 11, d3 =
+ + + + − + −
3, d5 = 2 y d1 = d2 = d3 = d4 = d4 = d5 = 0.
44 4 Aplicaciones a distintos problemas
4.5 Resolución de otros ejemplos 45
Ejemplo 3.4
Vemos que al resolver el correspondiente problema tanto con Solver como con
RStudio obtenemos la misma solución: x1 = 1.2, x2 = 7.6, d− +
1 = 0.8 y d1 =
+ −
d2 = d2 = 0.
Ejemplo 3.5
Vemos que al resolver el correspondiente problema tanto con Solver como con
RStudio obtenemos la misma solución: x1 = 1.2, x2 = 7.6, d− +
1 = 0.8 y d1 =
+ −
d2 = d2 = 0.
46 4 Aplicaciones a distintos problemas
Ejemplo 3.6
Vemos que al resolver el correspondiente problema tanto con Solver como con
−
RStudio obtenemos la misma solución: λ = 0.4, x1 = x2 = 24, d+
1 = 48, d2 =
− − − + + +
1000, d3 = d4 = 16 y d1 = d2 = d3 = d4 = 0.
4.6 Ejemplo de Regresión Lineal y Programación por Metas 47
En este problema se pretende aproximar una nube de puntos a una recta me-
diante regresión lineal. La nube de puntos a aproximar es:
(1,4)
(2,3)
(5,5)
(7,7)
(9,9)
(11,10)
Se obtiene la solución:
a+ = 0.8, b+ = 1.4, d− + − +
1 = 1.8, d3 = 0.4, d5 = 0.4, d6 = 0.2
− − − −
a− = b− = d+ + + +
1 = d2 = d2 = d3 = d4 = d4 = d5 = d6 = 0
Bibliografı́a
This project will focus on the study of Goal Programming within Different methods to solve Goal Programming problems will be
Multiobjective Programming. After having outlined the historical studied addressing the treatment of deviation variables. The fol-
aspects, a general model is presented and some examples are lowing methods are distinguished:
modelled. General methods are also presented which will allow
1. Lexographic goal methods.
us to solve the problems of Goal Programming. Finally, the pro-
In this method the goal are ordered in descending order of
posed problems will be solved with the software available for Lin-
proiority by the decision-maker
ear Programming.
2. Weighted goal methods.
In this method the decison-maker assigns weights to the differ-
1. Introduction
ent ai (components of the achievement vector)
Problematic situations, which arise in different contexts that in- 3. MINMAX or Chebyshev methods.
volve people and nature, need to be resolved in an optimum man- This method consists of minimising the maximum deviation be-
ner. Some of these situations can be drawn up as mathematical tween the goals, taking as distance, the distance of Chebyshev,
models whose study is the task of Mathematical Programming or also called metric L ∞.
Optimization, included within Operations Research. In search for
optimal solutions to these problems more than one criterion might
5. Outline of the fourth Chapter
intervene. The cases in which we have multiple criteria are in-
cluded in the Multi-criteria Optimization. These criteria might con-
flict with each other. In some problems, the criteria that govern After making a brief introduction to the different software used in
the optimization process impose the overcoming of certain goals. the resolution of Goal Programming problems, we will focus on
When goals that must be met are specified, we place ourselves in solving the problems that have been proposed throughout this
what is known as Goal Programming. study. Primarily, the problems will be solved with Excel Solver
plugin and the free Rstudio software.
2. Outline of the first Chapter
References
In the first chapter a brief introduction will be made to the problems
of Multiobjective Programming, defining some basic concepts and [1] B ARRY, R., R ALPH , M.S. Y M ICHAEL , E. H.(2006). Métodos
the general model of them. The Multicriteria problems will also be cuantitativos para los negocios. Pearson Education.
illustrated with an example.
[2] G ARCÍA , A. M. (1998). Programación estocástica por metas.
Teoría y aplicaciones económicas. Tesis Doctoral. Universidad
3. Outline of the second Chapter Complutense de Madrid.
[3] LINGO AND OPTIMITATION MODELING .
In this chapter basic concepts of Goal Programming, the most
https://www.lindo.com/index.php/products/lingo-and-
relevant historical aspects, the general model and some exam-
optimization-modeling
ples that will later be solved with different programmes will be
discussed. [4] J ONES , D. Y TAMIZ , M. (2010). Practical Goal Programming.
Springer.
The general model of a Multicriteria Programming problem is [5] R ÍOS , S., M ATEOS , A., B IELZA , M.C. Y J IMÉNEZ , A. (2004).
given in the following way: Investigación operativa: modelos determinísticos y estocásti-
cos.
mi n a i (d i−, d i+) [6] R OMERO, C. (1993). Teoría de la decisión multicriterio. Alianza
s.a : f i (x) + d i− − d i+ = m i Editorial.
f j (x) = f (x j ), j = 1, ..., i − 1 [7] R OMERO, C. (2002). Toma de decisiones con criterios múlti-
x ∈S ples. Revista Electrónica de Comunicaciones y Trabajos de
ASEPUMA número 1, pp 75-87.
[8] R STUDIO https://www.rstudio.com/products/rstudio/
[9] T HE R MANUALS https://cran.r-project.org/manuals.html