1. REPÚBLICA BOLIVARIANA DE VENEZUELA
MINISTERIO DEL PODER POPULAR PARA LA
EDUCACIÓN UNIVERSITARIA,
CIENCIA Y TECNOLOGÍA
INSTITUTO UNIVERSITARIO POLITÉCNICO
“SANTIAGO MARIÑO”
ARAGUA, EXTENSIÓN MARACAY
OPTIMIZACIÓN
AUTOR: Diusty A. Mijares V
Docente de la asignatura: Ing. Isabel Flores
Maracay noviembre 2016
2. OPTIMIZACIÓN
1
La optimización es una rama de las matemáticas aplicadas que consiste
en la re- colección de principios y métodos usados para solucionar
problemas cuantitativos de muchas disciplinas como física, biología, ingeniería
y economía para obtener la mejor o una buena solución.
Existen diferentes problemas de optimización, que los podemos dividir en dos
gran- des grupos de acuerdo al numero de objetivos que se tratan de resolver:
los problemas de optimización simple y los problemas de optimización
multiobjetivo
DEFINICIÓN DEL PROBLEMA DE RED
Se considera un grafo dirigido o digrafico G = (N, A), donde N = {1, 2, . . . , m} es el conjunto finito de
nodos (vértices o puntos) y A = {(i, j), (k, l), . . . , (s, t)} el conjunto de arcos dirigidos que unen pares
de nodos en N . Si (i, j) pertenece al conjunto A se dice
j es un nodo adyacente a i. En una red R = (N, A, f ) es un grafo dirigido donde además se cuenta
con una función f : A → R que asigna a cada arco un valor determinado, que representa la distancia
o el costo de viajar de un nodo a otro adyacente.
Los diversos modelos, algoritmos y aplicaciones se han desarrollado para tratar una variedad de
panoramas de redes tales como ruta más corta, flujo máximo, y problemas de flujo con costos
mínimos. Las redes son muy útiles para describir muchos problemas. Uno de los modelos
introducidos en la literatura es el problema de flujo de costos mínimos que se puede utilizar como
punto de partida para representar flujo máximo, el problema de la ruta más corta y modelos de
transporte. Para esto consideremos una red que tiene m nodos y n arcos. Cada nodo i se asocia a
un número bi, representante de la oferta de un articulo si es positivo o la demanda si es negativo.
3. Cada arco (i, j) tiene asociado xij , que es la cantidad de flujo sobre el arco y cij que es el costo unitario de
embarque a lo largo del arco. El problema de flujo de costo mínimo es embarcar la oferta disponible a través de la
red a fin de satisfacer la demanda a un costo mínimo. La representación matemática siguiente es utilizada como
un acercamiento de programación lineal para describir este proceso de optimización.
m m
Minimizar . . cijxij i=1 m
j=1 m
sujeto a
. xij − . xki = b(i) i = 1, . . . , m
j=1 k=1
xij ≥ 0 i, j = 1, . . . , m
Este modelo es muy útil para identificar todas las variables implicadas en el proceso de la optimización. El modelo representa un sistema
de las ecuaciones que tienen como un objetivo la minimización del costo total incurrido al transportar artículos a partir de un
nodo a otro. También demuestra las restricciones que se aplican a las diversas variables. En el modelo, xij representa el uso de un
arco particular en la trayectoria. En este caso xij tiene limitaciones en la capacidad. En la mayoría de los casos, los limites más bajos en
flujos del arco son cero. El costo de mover los artículos para la mayoría de los modelos determinísticos es una constante pero en este
caso podemos cambiar esa constante por funciones con diversas distribuciones discretas o continuas. La definición básica de la red no
cambia pero la información entre nodos si.
2
4. EL PROBLEMA DE RUTA CORTA
De forma general, en el problema de ruta corta se tiene una red, R que tiene m nodos que representan ciudades,
con n arcos o caminos de ciudad a ciudad y los costos cij asociados con cada arco (i, j), tratándose de encontrar
la trayectoria más corta (o la menos costosa) que vaya de un origen a un destino deseado (que puede ser el nodo
m). El costo total de la ruta es la suma de los costos de los arcos de la ruta, y las xij = 0, 1 indican que cada arco
esta o no en la ruta. El planteamiento maten ático es el siguiente:
m m
Minimizar. . Cijxij i=1 m j=1 m
1 si i = 1
sujeto a
. xij − . Xki= 0 si i ƒ= 1 y i ƒ= m
j=1 k=1
−1 si i = mxij ∈ {0, 1} i, j = 1, 2, . . . , m
Este problema es uno de los más estudiados en el
área de optimización, dado que existen muchos
algoritmos que lo resuelven, dadas ciertas condiciones. Por
ejemplo, el algoritmo de Dijkstra lo resuelve cuando todos
los costos son constantes no negativas con el objetivo de
minimizar la distancia
3
5. PROBLEMA DE OPTIMIZACIÓN MULTIOBJETIVO
Un problema de optimización multiobjetivo (en ingles Multiobjective Optimization
Problema, MOP), también llamado optimización multicriterio o problemas de optimización
vectorial, se puede definir en palabras como un vector de variables de decisiones que
satisface ciertas restricciones y optimiza una función vector cuyos elementos representan
las funciones objetivo. Estas funciones representan matemáticamente los criterios desea-
dos que regularmente están en conflicto uno con otro, por ejemplo minimizar los costos y
maximizar las ganancias. Es por esto que el término optimizar significa encontrar una
solución tal que proporcione valores para todas las funciones objetivo aceptables para la
persona que decide.
Matemáticamente un MOP se puede plantear de la siguiente manera : Encontrar un vector
de variables de decisión
˙x∗ = [x∗ , x∗ , . . . , x∗ ]T ∈ F 1 2
n
donde n es el número de funciones
objetivo y F es el conjunto de todos
los puntos de soluciones factibles,
que satisfaga m restricciones de la
forma
gi(˙x) ≥ 0 ∀ i = 1, 2, . . . , m
y p restricciones de la forma hi(˙x) = 0
∀ i = 1, 2, . . . , p
y que optimiza una función vector de
la forma
f˙(˙x) = [f1(˙x), f2(˙x), . . . , fk (˙x)]T
MOP MATEMÁTICAMENTE
y lo que se busca es determinar
dentro del conjunto F de todos los
vectores que satisfagan las
restricciones, el conjunto de valores
x∗ , x∗, . . . , x∗
con el que se obtenga un 1 2
n
valor “´optimo” para las funciones
objetivo. Como los objetivos son
diversos y tal vez contradictorios
entre si, no es fácil definir un solo
´optimo. Existen ya muchos trabajos
en los que se resuelven problemas
multiobjetivo, utilizando sobre todo
algoritmos genéticos,
4
6. Como se menciono en la sección anterior, en problemas que tienen varios objetivos, cada uno encontrará
su optimo en diferentes puntos, por lo que es muy importante integrar el concepto de Optimalidad de
Pareto, para poder comparar las diferentes soluciones obtenidas de un problema multiobjetivo. Para poder
introducir este concepto, es necesario conocer el de dominancia. Se dice que un vector ˙u = (u1, u2, . . . ,
uk) domina a ˙v = (v1, v2, . . . , vk ) denotado por ˙u Ç ˙v si y solo si ˙u es parcialmente menor que ˙v
[19, 29], por ejemplo, ∀ i ∈ {1, 2, . . . , k} , ui ≤ vi ∧ ∃ i ∈ {1, 2, . . . , k} : ui < vi.
En un problema de optimización multiobjetivo, f˙(˙x), el conjunto ´optimo de Pareto, denotado por P ∗, esta
definido como:
P ∗ := ,˙x ∈ F | ƒ ∃ ˙x′ ∈ F, f˙(˙x′) Ç f˙(˙x), .
Es por lo anterior que se dice que un vector de variables de decisiones ˙x∗ ∈ F es un ´optimo de
Pareto si no existe otro ˙x ∈ F tal que fi(˙x) ≤ fi(˙x∗)∀ i = 1, 2, . . . , k y fj (˙x) < fj (˙x∗) para por lo menos
una j.
En palabras ˙x∗ es un ´optimo de Pareto si no existe ningún vector factible de variables de decisión ˙x ∈
F que haga decrecer algún criterio sin causar simultáneamente un incremento en por lo menos otro
criterio. O en otras palabras, la optimalidad de Pareto esta definida como un conjunto donde cada
elemento es una solución al problema para la que ninguna otra solución puede ser mejor dentro del
problema.
Desafortunadamente, este concepto casi nunca proporciona una única solución, pero si un conjunto de
soluciones llamado Conjunto Optimo de Pareto. Los vectores ˙x∗ correspondientes a las soluciones
incluidas en este conjunto son llamadas no-dominadas. La grafica de dicho conjunto bajo las funciones
objetivo es llamado Diagrama de Pareto.
ÓPTIMO DE PARETO
5
7. MÍNIMOS Y MÁXIMOS
El vector ˙x∗ = [x∗ , x∗, . . . , x∗ ]T que minimiza la
función objetivo f (˙x) es llamado
1 2 n
punto mínimo y el valor correspondiente de f (˙x∗)
es el valor mínimo de la función objetivo. Si la
función objetivo no es uní modal, entonces ˙x∗
podría ser un mínimo global o local, dependiendo de la
forma de la función.
Un mínimo global es aquel punto ˙x∗ ∈ X que toma
una función que esta definida sobre un conjunto
cerrado X ∈ RN , si f (˙x) ≥ f (˙x∗) ∀ ˙x ∈ X. Así, el
mínimo local es aquel punto x∗, para el cual existe una
vecindad donde la función evaluada en ´el es el
mínimo.
Para los problemas de optimización multiobjetivo, cada
función objetivo va a encontrar su mínimo en diferentes
puntos, por lo que es necesario introducir la optimalidad
de Pareto, para resolverlos.
ALGORITMOS GENÉTICOS
Los Algoritmos Genéticos o en ingles llamados
Genetic Algorithms (GA) son parte de la
computación evolutiva, que es un ´área de la
inteligencia artificial, que esta creciendo
rápidamente. Los Algoritmos Genéticos están
ideados en la teoría de la evolución de Darwin,
que propone que los problemas son resueltos
por un proceso evolutivo a partir de sus
soluciones.
6
8. PROCEDIMIENTO GENERAL PARA RESOLVER UN PROBLEMA DE OPTIMIZACIÓN
Para resolver un problema de optimización,
lo primero es construir la función a maximizar o
minimizar, y conseguir que ésta dependa de una
sola variable.
Si en el contexto del problema aparecen más de
una variable, habrá que buscar alguna relación
entre ellas de entre los datos que nos aporte el
problema. Una vez encontrada esta relación, se
tiene que despejar y sustituir en la función para
que esta sí dependa ya de una sola variable.
Los valores candidatos a ser solución de un
problema de optimización se obtienen derivando
la función, igualando a cero la derivada y
resolviendo la ecuación.
Esos valores se llaman puntos críticos de la
función.
Para comprobar si es la solución, aplicamos la
regla de la segunda derivada o el estudio de la
monotonía para comprobar si es máximo o
mínimo.
En muchos problemas, hay que examinar los
extremos del verdadero dominio dentro del
contexto y comparar el valor en esos puntos con
el que hemos obtenido en el extremo relativo.
PASOS PARA LA RESOLUCIÓN DE PROBLEMAS
1 Se plantea la función que hay que maximizar o minimizar.
2 Se plantea una ecuación que relacione las distintas variables
del problema, en el caso de que haya más de una variable.
3 Se despeja una variable de la ecuación y se sustituye en la
función de modo que nos quede una sola variable.
4 Se deriva la función y se iguala a cero, para hallar los extremos locales.
5 Se realiza la 2ª derivada para comprobar el resultado obtenido.
7
9. FORMAS DE LA FUNCIÓN OBJETIVO
FUNCIÓN OBJETIVO
La función objetivo es la ecuación que será
optimizada dadas las limitaciones o restricciones
determinadas y con variables que necesitan ser
minimizadas o maximizadas usando técnicas de
programación lineal o no lineal.
La programación lineal consiste en optimizar (maximizar o
minimizar) una función objetivo, que es una función lineal de varias
variables:
f(x,y) = ax + by.
FUNCIÓN OBJETIVO
RESTRICCIONES
La función objetivo está sujeta a una serie de restricciones,
expresadas por inecuaciones lineales:
a1x + b1y ≤ c1
a2x + b2y ≤c2
anx + bny ≤cn
8
10. FORMAS DE LA FUNCIÓN OBJETIVO
Cada desigualdad del sistema de restricciones determina un
semiplano.
11. FORMAS DE LA FUNCIÓN OBJETIVO
SOLUCIÓN FACTIBLE
El conjunto intersección, de todos los
semiplanos formados por las restricciones,
determina un recinto, acotado o no, que recibe
el nombre de región de validez o zona de
soluciones factibles.
10
12. FORMAS DE LA FUNCIÓN OBJETIVO
SOLUCIÓN ÓPTIMA
El conjunto de los vértices del recinto se denomina
conjunto de soluciones factibles básicas y el
vértice donde se presenta la solución óptima se
llama solución máxima (o mínima según el caso).
11
13. FORMAS DE LA FUNCIÓN OBJETIVO
VALOR DEL PROGRAMA LINEAL
El valor que toma la función objetivo en el vértice de solución óptima se llama valor del programa lineal.
PASOS PARA RESOLVER UN PROBLEMA DE PROGRAMACIÓN LINEAL
1. Elegir las incógnitas.
2. Escribir la función objetivo en función de los datos del problema.
3. Escribir las restricciones en forma de sistema de inecuaciones.
4. Averiguar el conjunto de soluciones factibles representando gráficamente las
restricciones.
5. Calcular las coordenadas de los vértices del recinto de soluciones factibles (si
son pocos).
6. Calcular el valor de la función objetivo en cada uno de los vértices para ver en cuál de ellos presenta el valor máximo o
mínimo según nos pida el problema (hay que tener en cuenta aquí la posible no existencia de solución si el recinto no está
acotado).
12
14. Métodos de la OPTIMIZACIÓN
MÉTODO SIMPLEX
El método Simplex es un algoritmo de solución muy utilizado para resolver programas lineales.
Un algoritmo es una serie de pasos para cumplir con una tarea determinada.
MÉTODO DE SOLUCIÓN GRÁFICA
El método gráfico es una forma fácil y rápida para la solución de problemas de Programación Lineal, siempre y cuando el modelo
conste de dos variables. Para modelos con tres o más variables, el método gráfico es imposible.
Consiste en representar geométricamente las restricciones, condiciones técnicas y función objetivo .
Los pasos necesarios para realizar el método son:
1. hallar las restricciones del problema
2. Las restricciones de no negatividad Xi ≥ 0 confían todos los valores posibles.
3. sustituir ≥ y ≤ por (=) para cada restricción, con lo cual se produce la ecuación de una línea recta.
4. trazar la línea recta correspondiente a cada restricción en el plano. La región en cual se encuentra cada restricción, el área
correspondiente a cada restricción lo define el signo correspondiente a cada restricción (≥ ó ≤) se evalúa un punto antes y después de
la recta trazada, el punto que cumpla con la inecuación indicara el área correspondiente
5. el espacio en el cual se satisfacen las tres restricciones es el área factible
Cada punto situado en la frontera del espacio del área factible, es decir que satisfacen todas las restricciones, representa un punto
factible.
6. Las líneas paralelas que representan la función objetivo se trazan mediante la asignación de valores arbitrarios a fin de determinar la
pendiente y la dirección en la cual crece o decrece el valor de la función objetivo.
7. la solución óptima puede determinarse al observar la dirección en la cual aumenta la función objetivo, se procede a graficar la
función objetivo, si es un problema de minimización la solución optima es el primer punto factible que toque la función Z, y si por lo
contrario es un problema de maximización, será entonces el último de los puntos factibles que toque la función Z
13
15. MÉTODO HÚNGARO
El algoritmo desarrollado por Kuhn está basado fundamentalmente en los primeros trabajos
de otros dos matemáticos Húngaros: Dénes König y Jenő Egerváry
Este algoritmo se usa para resolver problemas de minimización, ya que es más eficaz que el
empleado para resolver el problema del transporte por el alto grado de degeneración que
pueden presentar los problemas de asignación.
El problema de asignación tiene que ver con la asignación de tareas a empleados, de
territorios a vendedores, de contratos a postores o de trabajos a plantas. Al aplicar el método
de transporte y el método de asignación la gerencia está buscando una ruta de distribución o
una asignación que optimizará algún objetivo; éste puede se la minimización del costo total, la
maximización de las utilidades o la minimización del tiempo total involucrado.
Métodos de la OPTIMIZACIÓN14
16. Métodos de la OPTIMIZACIÓN
MÉTODO MODI
El algoritmo MODI conocido como el método de los costes ficticios, consiste en añadir a la matriz de costes
una fila y una columna que recogen unos costes ficticios determinados arbitrariamente (los números
MODI), tal que permite calcular los índices de mejora para las celdas (casillas) no utilizadas.
MÉTODO ESQUINA NOROESTE
El método de la esquina es un método de programación lineal hecho a mano para encontrar una solución inicial factible del modelo, muy conocido por
ser el método mas fácil al determinar una solución básica factible inicial, pero al mismo tiempo por ser el menos probable para dar una solución inicial
acertada de bajo costo, debido a que ignora la magnitud relativa de los costos. es un proceso utilizado para resolver problemas de transporte o
asignación, si bien es un método no exacto tiene la ventaja de poder resolver problemas manualmente y de una forma rápida, muy cercano al valor
óptimo. Cada problema debe representarse en forma de matriz en donde las filas normalmente representan las fuentes y las columnas representan los
destinos.
MÉTODO DE VOGUEL
El método de Vogel, o aproximación de Vogel, es un método que permite llegar a una solución inicial
factible del problema de transporte.
MÉTODO DEL CRUCE DEL ARROLLO
El método del cruce del arrollo también llamado algoritmo de Stepping –Stone, es un método de programación lineal que consiste en calcular
cuál sería la variación del costo del envío de una unidad de cierto producto por cada una de las ruta posibles, es decir asignar cierta cantidad de
artículos desde varios origines (fabricas) a un conjunto de destinos (clientes) de tal manera que se disminuyan los costos, hasta optimizar la
función objetivo.
15