Óptima Local

Anuncio
Jueves, 25 de abril
15.053
z Teoría
Dificultades de los modelos PNL
sobre la programación no lineal
z Programación
PL:
separable
Entregas: material de clase
PNL:
1
Análisis gráfico de la programación no lineal
en dos dimensiones: un ejemplo
z Minimizar
( x − 14) + ( y − 15)
2
2
¿Dónde está la solución óptima?
Nota: la solución
óptima no está en
una esquina.
Está donde el
isocontorno toca
la región factible.
y
18
2
16
14
z sujeto
a
(x - 8)2 +
x
x
x +y
12
(y - 9)2 ≤ 49
≥ 2
≤ 13
≤ 24
10
8
6
4
2
0
3
Otro ejemplo:
Minimizar
x
0
2
4
8
10 12 14 16 18
4
Óptima Local frente a Global
(x-8)2 + (y-8)2
y
Definición: sea x una solución factible, entonces
18
Entonces el min
global no restringido también es
factible.
16
14
12
10
La solución óptima
no se encuentra en
el límite de la
región factible.
8
6
4
– x es un max global si f(x) ≥ f(y) para cada y factible.
– x es un max local si f(x) ≥ f(y) para cada y factible.
suficientemente cerca de x (p.ej., x j-ε ≤ yj ≤ xj+ ε para
todo j y algún pequeño ε).
z
0
x
2
4
6
8
10 12 14 16 18
z = f(x)
max f(x)
s. a. 0 ≤ x ≤ 1
A
0
5
C
B
2
0
6
1
x
Pueden existir varias soluciones óptimas locales.
6
Convexidad y puntos extremos
¿Cuándo una solución local óptima
lo es también globalmente?
La región factible de un
programa lineal es convexa.
12
10
minimizando. La función
objetiva es convexa. La región factible
es convexa.
14
z Estamos
Decimos que un conjunto S es convexo, si
por cada dos puntos x e y en S, y por cada
número real λ en [0,1], λx + (1-λ)y ε S.
P
8
Decimos que un elemento w ε S es un
punto extremo (vértice, esquina), si w
no es el punto medio de cualquier
segmento dentro de S.
6
4
x
2
y
7
2
4
6
8
10
12
W
14
8
¿Cuáles son convexas?
Reconocer regiones factibles convexas
z Si
todas las restricciones son lineales,
entonces la región factible es convexa.
intersección de regiones convexas
es convexa.
B
A
z La
para todo x e y factible, el punto
medio de x e y es factible, entonces
la región es convexa (excepto en
ejemplos que sean nada realistas).
C
D
z Si
B ∪ C
B ∩ C
B ⊕ C
9
10
Funciones convexas
Funciones cóncavas
Funciones Convexas: f(λ y + (1- λ)z) ≤ λ f(y) + (1- λ)f(z)
por cada y y z y para 0≤ λ ≤1.
p.ej., f((y+z)/2) ≤ f(y)/2 + f(z)/2
Funciones cóncavas: f(λ y + (1- λ)z) ≥ λ f(y) + (1- λ)f(z)
por cada y y z y para 0≤ λ ≤1.
p.ej., f((y+z)/2) ≥ f(y)/2 + f(z)/2
Decimos convexidad “estricta” si el signo
es “<” para 0< λ <1.
Decimos convexidad “estricta” si el signo
es “>” para 0< λ <1.
x
La unión mediante líneas de cualquier
f(x)
punto está por encima de la curva
x
f(x)
x
x
La unión mediante líneas de cualquier
x
y
x
(y+z)/2
x
punto está por debajo de la curva
z
11
z
x
(y+z)/2
y
12
¿Qué funciones son convexas?
Clasificar como cóncava o convexa o como
ambas o ninguna.
z
f(x) = 4x + 7
todo funciones lineales
z
f(x) = 4x2 – 13
algunas funciones cuadráticas
z
f(x) = ex
z
f(x) = 1/x para x > 0
z
f(x) = |x|
z
f(x) = - ln(x) para x > 0
Condición suficiente: f”(x) > 0 para todo x.
13
14
Máximo (mínimo) local
¿Qué funciones son convexas?
f(x) es convexa, y g(x) es convexa.
Entonces también lo es
h(x) = a f(x) + b g(x) para a>0, b>0.
z Si
y = f(x) es convexa, entonces
{(x,y) : f(x) ≤ y} es un conjunto convexo
z Si
15
z
Un máximo local de una función cóncava en una región
factible convexa es también un máximo global.
z
Un mínimo local de una función convexa en una región
factible convexa es también un mínimo global.
z
La convexidad o concavidad estricta implica que
el óptimo global es único.
z
Dado esto, podemos resolver con exactitud:
– Problemas de maximización con una función objetiva
cóncava y restricciones lineales.
– Problemas de minimización con una función objetiva
16
convexa y restricciones lineales.
¿Cuáles son regiones factibles convexas?
Más sobre optimidad local
(x, y) : y ≤ x2 + 2
(x, y) : y ≥ x2 + 2
(x,y) : y = x2 + 2
z
Las técnicas de minimización de optimización
no lineal suelen hallar un óptimo local.
z
Esto es útil cuando una solución óptima
local es una solución óptima global.
z
No lo es en muchas ocasiones.
z
Conclusión: si resuelve un programa no lineal,
intente averiguar qué tal son las soluciones
óptimas locales.
y = 2 + x^2
7
6
4
3
2
1
x
2
1.
6
1.
2
0.
8
0
0.
4
-0
.4
-0
.8
-1
.2
-1
.6
0
-2
y
5
17
18
Resolución de PNL con Excel Solver
Hallar una óptima local para una sola
variable PNL
Resolver PNLs con una variable :
max
f(θ)
f(θ)
s.a. a ≤ θ ≤ b
La solución óptima es
un punto frontera o
a
satisface f ′ (θ∗) = 0 y f ″(θ∗) < 0.
θ*
θ
b
f(θ)
f(θ)
19
Resolución de una PNL con una sola variable
Si f(θ) es cóncava (o unimodal) y diferenciable
max
f(θ)
a
θ*
b
θ
a
θ*
b
20
θ
Funciones unimodales
función de una única variable f es
unimodal si existe a lo sumo un máximo
local (o a lo sumo un mínimo local).
z Una
s.a. a ≤ θ ≤ b
:
Búsqueda bisección (o Bolzano):
zPaso 1. Comenzar por la región de incertidumbre de θ
como [a,b]. Evaluar f ′ (θ) en el punto medio θ Μ =(a+b)/2.
zPaso 2.. Si f ′ (θ Μ) > 0, elimine el intervalo hasta θΜ.
Si f ′ (θΜ) < 0, elimine el intervalo más allá de θΜ.
zPaso 3. Evaluar f ′ (θ) en el punto medio del nuevo intervalo
Volver al paso 2 hasta que el intervalo de incertidumbre
sea suficientemente pequeño.
21
Otras técnicas de búsqueda
z
En lugar de derivadas (que tal vez requieran mucha
capacidad de computación), use dos evaluaciones
de funciones para determinar el intervalo actualizado.
z
Búsqueda de Fibonacci:
z
Paso 1. Región de incertidumbre para θ como intervalo
[a,b]. Evalúe f (θ 1) y f (θ2) para 2 puntos simétricos θ1<θ2.
z
Paso 2. Si f (θ1) ≤ f (θ2), elimine el intervalo hasta θ1.
Si f (θ 1) > f (θ2), elimine el intervalo a partir de θ2.
z
Paso 3. Seleccione un segundo punto simétrico al que
ya está en el nuevo intervalo, llame a estos puntos θ 1 y
θ2 de modo que θ1<θ2 y evalúe f (θ1) y f (θ2). Vuelva al
paso 2 hasta que el intervalo sea lo bastante pequeño.
23
22
Sobre la búsqueda de Fibonacci
1, 1, 2, 3, 5, 8, 13, 21, 34
En la iteración 1, la longitud del intervalo de
búsqueda es el número fibonacci k de orden
para cierto k.
En la iteración j, la longitud del intervalo de
búsqueda es el número fibonacci k-j+1.
La técnica converge en la solución óptima
cuando la función es unimodal.
24
Hallar un máximo local con la búsqueda
de Fibonacci
La búsqueda halla un máximo local, pero
no necesariamente un máximo global.
Longitud del intervalo
de búsqueda 34
3
5
8
13
21
13
0
18
21
26
16 19
0
34
18
21
26
16 19
Tiene la siguiente forma:
z
Cada punto se elige simétricamente, la longitud l k de los
intervalos de búsqueda sucesivos es: l k = lk+1 + lk+2 .
z
Resolviendo con estas longitudas dada un longitud final
de intervalo 1, ln = 1, da los nº Fibonacci: 1, 2, 3, 5, 8, 13,
21, 34,…
z
Por tanto, si el intervalo inicial tiene longitud 34, se
necesitan 8 cálculos de función para reducirlo a 1.
z
Comentario: si la función es convexa o unimodal, la
búsqueda de fibonacci converge en el max global.
28
n
∑ f (x )
j =1
j
n
s.a.
34
Ejemplos de programacíon
separable
Programación separable
Max
26
Número de evaluaciones de función
en la búsqueda de Fibonacci
34
27
z
21
26
La búsqueda halla un máximo local, pero
no necesariamente un máximo global.
13
18
16 19
25
Dónde estará el máximo
0
13
∑g
j =1
ij
j
f ( x1 , x2 ) = x1 (30 − x1 ) + x2 (35 − x2 ) − 2 x12 − 3 x22
( x j ) ≤ 0, ∀i = 1,… , m
f ( x1 , x2 ) = x15 +
Cada variable xj aparece separada, una en
cada función g ij y una en cada función fj en el
objetivo.
3
− 18e − x2 + 4 x2
x1
f ( x1 , x2 , x3 ) = ln x15 − sen x2 − x3e − x3 + 7 x1−4
Cada función no lineal es de una variable única
29
30
Aproximación de una función
no lineal de 1 variable
Aproximación de una función no lineal
con una función lineal por tramos
z
Aspecto 1. Elegir la aproximación.
z
Aspecto 2. ¿Cuándo es la aproximación lineal
por tramos un programa lineal disfrazado?
y = x^3/3 + 2x - 5
15
10
5
3
2,
6
2,
2
1,
8
1
1,
4
-1
-0
,6
-0
.2
0.
2
0.
6
-3
-2
,6
-2
,2
-1
,8
-1
,4
y
0
-5
-10
-15
-20
-25
x
31
32
Aproximación de una función no
lineal de 1 variable: el método λ
Más sobre el λ método
a1 = -3, f(a1) = -20
Elija
diferentes
valores of x
para aprox.
el eje x
-10
-15
-20
-25
-10
3
2
-1
,8
-1
,4
-2
.
6
-2
,
-5
-3
Aproxime
utilizando
segmentos
rectilíneos
y
3
2,
6
2,
2
1,
8
1
1,
4
-3
-2
,6
-2
,2
-1
,8
-1
,4
-1
-0
,6
-0
,2
0.
2
0.
6
0
-5
2.
6
decimos que x tiene λ1 (-3) + λ2 (-1)
donde λ1 + λ2 = 1 y λ1, λ2 ≥ 0
5
0
y
Suponga que para –3 ≤ x ≤ -1,
10
2.
2
5
1.
8
10
a2 = -1 f(a2) = -7 1/3
15
1
1.
4
15
y = x^3/3 + 2x - 5
-1
-0
.6
-0
.2
0.
2
0.
6
y = x^3/3 + 2x - 5
Entonces aproximamos f(x)
-15
como λ 1 (-20) + λ2 (-7 1/3)
-20
-25
x
x
33
Más sobre el método λ
34
Casi el método λ
a2 = -1 f(a2) = -7 1/3
Supongamos que para -1 ≤ x ≤ 1,
a3 = 1 f(a3) = -2 2/3
decimos que x tiene λ2 (-3) + λ3 (-1)
donde λ2 + λ3 = 1 y λ2, λ3 ≥ 0
Problema original:
min x3/3 + 2x – 5 + más términos
y = x^3/3 + 2x - 5
s.a.
15
¿Cómo
aproximamos f( ) en
este intervalo?
10
5
-10
= -3;
f(a1) = -20;
a2 = - 1;
f(a2) = -7 1/3;
a3 = 1;
f(a3) = -2 2/3;
a4 = 3
f(a4) = 4
3
2.
6
2.
2
1.
8
1
1.
4
-1
-0
.6
-0
.2
0.
2
0.
6
-2
.6
-2
.2
-1
.8
-1
.4
-3
y
0
-5
a1
-3 ≤ x ≤ 3 + muchas más restricciones
Problema aproximado:
¿Y si –3 ≤ x ≤ 1?
min λ1f(a1) + λ2f(a2) + λ3f(a3) + λ4f(a4)
más términos lineales
-15
-20
s.a.
-25
x
35
λ1 + λ2 + λ3 + λ4 = 1 ; λ ≥ 0
+ muchas más restricciones
36
¿Por qué la aproximación es incorrecta?
Problema aproximado:
Condición de adyacencia
min λ1f(a1) + λ2f(a2) + λ3f(a3) + λ4f(a4)
más términos lineales
1.
Al menos dos pesos (λs) son positivos
2.
Si exáctamente dos pesos (λs) son positivos,
entonces son λ j y λj+1 para cierto j
3.
La misma condición se aplica a toda
función aproximada.
s.a. λ1 + λ2 + λ3 + λ4 = 1 ; λ ≥ 0
Considere
λ 1 constraints
= ½ ; λ2 = 0 ; λ3 = ½ ; λ4 = 0;
+ many more
El método da la
aproximación
correcta si sólo
dos λ
consecutivas son
positivas.
37
Aproximación de una función objetiva
no lineal para un PNL de minimización
problema original: minimizar {f(y): y ∈ P}
Suponer que
donde
38
Para minimizar una función convexa, el
método λ satisface automáticamente la
propiedad de adyacencia adicional.
min z = λ1f(a1) + λ2f(a2) + λ3f(a3) + λ4f(a4) + λ5f(a5)
s.a. λ1 + λ2 + λ3 + λ4 + λ5 = 1 ; λ ≥ 0
+ condición de adyacencia
+ otras restricciones
y = Σ j λjaj ,
Σj λj = 1 y λ >= 0 .
Aproximar f(y).
minimizar {Σ j λjf(aj): Σj λjaj ∈ P}
z Nota: si se da la oportunidad de representar y en
modos alternativos, la PL eligirá el que conduzca al
valor menos objetivo para la aproximación.
39
Funciones objetivas aproximadas factibles
sin las condiciones de adyacencia
min z = λ1f(a1) + λ2f(a2) + λ3f(a3) + λ4f(a4) + λ5f(a5)
s.a. λ1 + λ2 + λ3 + λ4 + λ5 = 1 ; λ ≥ 0
+ otras restricciones
a1 a2
a3
a4
a415
a1 a2
a3
a4
a405
Pero un mínimo en este caso siempre
sucede en la curva lineal por segmentos.
min z = λ1f(a1) + λ2f(a2) + λ3f(a3) + λ4f(a4) + λ5f(a5)
s.a. λ1 + λ2 + λ3 + λ4 + λ5 = 1 ; λ ≥ 0
+ otras restricciones
a1 a2
a3
a4
a425
Programación separable (en el caso de
restricciones lineales)
z
z
Max f ( x )
s .a. Dx = d
x≥0
Comenzar con un PNL:
z
Reexpresar en términos de λ variables:

j
jk )λ jk 

 k =1

s .a. Dx = d; x≥ 0;
n
Max
n
∑ f (x )
j =1
j
s
j

kj
∑  ∑ f (a
j =1
Transformar a separable:
Max
z
Aproximación
kj
D x =d; x ≥ 0
∑λ
k =1
jk
= 1, ∀j = 1,… , n
λ jk ≥ 0 para todo j, k
Aproximar con el método λ :
y las condiciones de adyacencia
43
¿Cómo se pueden construir funciones separables?
Término
Sustitución
( xi + x j ) n
xi + x j = y
xi x j
xi x j = y12 − y22
xi x j
xi x j = y
xj
2
Restricciones
xi + x j
y1 = 0.5( xi + x j )
y2 = 0.5( xi − x j )
log y = log xi + log x j
y = 10
x
xi
xi j = y
xi + x 2j
xi + x 2j
2
=y
y
zx j
xi = 10
z
log y = (log 2)( xi + x22 )
Si el problema original es cóncavo, entonces se pueden eliminar
44
las condiciones de adyacencia (se satisfacen automáticamente)
Ejemplos de transformación
6
Ex : ( x1 + x2 + x3 )
Restrición
Sustituya y 6 y sea
Ninguna
Ninguna
Ex :
xi , x j > 0
xi > 0
Ninguna
Las funciones convexa y cóncava y los conjuntos
convexos son propiedades importantes
z
Técnicas de búsqueda de Bolzano y Fibonacci
z
Programación separable
Sea y1 =
1
y
1 + x3
y2 = x1 x22
1
y
y añada la restricción
log y2 = log x1 + log x22 + log y1
45
Resumen PNL
z
x1 x22
1+ x3
y = x1 + x2 + x3
– se utilizan para resolver funciones unimodales de 1 variable
– función objetiva y restricciones no lineales que son
separables
– Técnica general de aproximación
47
46
Descargar