GIIT_CALCULO_16_Practica5: Optimización Varias Variables

hace 359 días por etlopez16

CÁLCULO DIFERENCIAL  Y OPTIMIZACIÓN PARA FUNCIONES DE VARIAS VARIABLES

Podemos calcular las derivadas parciales de las funciones de varias variables, de este modo. Sea $$f(x,y)=xy$$

f(x,y)=x*y 
       
f.diff(x) 
       
(x, y) |--> y
(x, y) |--> y
f.diff(y) 
       
(x, y) |--> x
(x, y) |--> x

Podemos directamente calcular el gradiente.

f.gradient() 
       
(x, y) |--> (y, x)
(x, y) |--> (y, x)

Incluso el hessiano

f.hessian() 
       
[(x, y) |--> 0 (x, y) |--> 1]
[(x, y) |--> 1 (x, y) |--> 0]
[(x, y) |--> 0 (x, y) |--> 1]
[(x, y) |--> 1 (x, y) |--> 0]

También podemos calcular derivadas parciales de orden superior:

f.diff(x,2); f.diff(y,2) 
       
(x, y) |--> 0
(x, y) |--> 0
(x, y) |--> 0
(x, y) |--> 0

Estudiemos los puntos críticos de la función.

solve([f.diff(x)==0,f.diff(y)==0],x,y) 
       
[[x == 0, y == 0]]
[[x == 0, y == 0]]

El único punto crítico es el (0,0). El hessiano nos indica qué tipo de punto es. 

H=f.hessian()(0,0); H 
       
[0 1]
[1 0]
[0 1]
[1 0]
det(H) 
       
-1
-1

Como el determinante del hessiano es negativo, el (0,0) es un punto de silla. 

plot3d(f(x,y),(x,-2,2),(y,-2,2))+point3d((0,0,0),size=10,color='black') 
       

EJEMPLO DE CLASE: 

var('x,y') f(x,y)=x^3+3*x^2-9*x+y^3-12*y 
       
show(solve([f.diff(x)==0,f.diff(y)==0],x,y)) 
       

                                
                            

                                
H=f.hessian(); show(H) 
       

                                
                            

                                
f.hessian()(-3,-2) 
       
[-12   0]
[  0 -12]
[-12   0]
[  0 -12]
f.hessian()(-3,2) 
       
[-12   0]
[  0  12]
[-12   0]
[  0  12]
f.hessian()(1,2) 
       
[12  0]
[ 0 12]
[12  0]
[ 0 12]
f.hessian()(1,-2) 
       
[ 12   0]
[  0 -12]
[ 12   0]
[  0 -12]
plot3d(f(x,y),(x,-4,4),(y,-4,4)) 
       

Pintemos el máximo en verde, el mínimo en rojo y los puntos de silla en negro.

plot3d(f(x,y),(x,-4,4),(y,-4,4))+points((-3,-2,f(-3,-2)),color='green',size=10)+points((1,2,f(1,2)),color='red',size=10)+points((-3,2,f(-3,2)),color='black',size=10)+points((1,-2,f(1,-2)),color='black',size=10) 
       

Ejercicio 1: Calcula (sólo calcular) los puntos críticos de la función

$$ f(x,y)=xy \dfrac{x^2-y^2}{x^2+y^2}$$

Píntala.

 

 
       

Ejercicio 2: Calcula y estudia los puntos críticos de $f(x,y)=4x^2e^y-2x^4-e^{4y}$

 
       

MÁXIMOS Y MÍNIMOS EN UN RECINTO:

 

 Calculemos los máximos y mínimos de $f=x*y$ en el círculo $$x^2+y^2\leq 2$$. 

1. Puntos críticos de $f$ en el interior del círculo. El (0,0), que ya hemos visto que es un punto de silla.

2. Puntos críticos en el borde del círculo. Se buscan con el lagrangiano $L(x,y)=f(x,y)-\lambda g(x,y)$ siendo $g(x,y)=x^2+y^2-2$

var('l') g(x,y)=x^2+y^2-2 L(x,y,l)=f(x,y)-l*g(x,y) 
       
L.gradient() 
       
(x, y, l) |--> (-2*l*x + y, -2*l*y + x, -x^2 - y^2 + 2)
(x, y, l) |--> (-2*l*x + y, -2*l*y + x, -x^2 - y^2 + 2)
solve([L.diff(x)==0,L.diff(y)==0,L.diff(l)==0],x,y,l) 
       
[[x == 1, y == 1, l == (1/2)], [x == -1, y == -1, l == (1/2)], [x == 1,
y == -1, l == (-1/2)], [x == -1, y == 1, l == (-1/2)]]
[[x == 1, y == 1, l == (1/2)], [x == -1, y == -1, l == (1/2)], [x == 1, y == -1, l == (-1/2)], [x == -1, y == 1, l == (-1/2)]]

3. Los puntos que hemos obtenido son (1,1), (-1,-1), (1,-1) y (-1,1). Debemos ver cuánto vale la función en estos puntos.

f(1,1); f(-1,-1); f(1,-1); f(-1,1) 
       
1
1
-1
-1
1
1
-1
-1

Los máximos son entonces el (1,1) y el (-1,-1).

Los mínimos son (1,-1) y (-1,1). 

var('z') plot3d(f(x,y),(x,-2,2),(y,-2,2),opacity=0.8)+implicit_plot3d(x^2+y^2==2,(x,-2,2),(y,-2,2),(z,-2,2),color='green',opacity=0.8)+points((1,1,f(1,1)),color='red',size=10)+points((-1,-1,f(-1,-1)),color='red',size=10)+points((-1,1,f(-1,1)),color='black',size=10)+points((1,-1,f(1,-1)),color='black',size=10) 
       
 
       

Otro ejemplo: $f(x,y)=-x^2+xy+y^2-6x$

a) Puntos críticos

b) Optimización en el recinto $\{x+y\leq 0\}$

f(x,y)=-x^2+x*y+y^2-6*x 
       
solve([f.diff(x)==0,f.diff(y)==0],x,y) 
       
[[x == (-12/5), y == (6/5)]]
[[x == (-12/5), y == (6/5)]]
F=f.hessian();F 
       
[(x, y) |--> -2  (x, y) |--> 1]
[ (x, y) |--> 1  (x, y) |--> 2]
[(x, y) |--> -2  (x, y) |--> 1]
[ (x, y) |--> 1  (x, y) |--> 2]
det(F) 
       
(x, y) |--> -5
(x, y) |--> -5

Luego (-12/5,6/5) es un punto de silla. 

En el recinto $\{x+y\leq 0\}$ obtenemos el punto (-3,3)

var('l') g(x,y)=x+y L(x,y,l)=f(x,y)-l*g(x,y) 
       
solve([L.diff(x)==0,L.diff(y)==0,L.diff(l)==0],x,y,l) 
       
[[x == -3, y == 3, l == 3]]
[[x == -3, y == 3, l == 3]]

Este punto resulta ser un máximo:

f(-3,3); f(0,0) 
       
9
0
9
0
 
       
var('z') plot3d(f(x,y),(x,-3,3),(y,-3,3),opacity=0.8)+implicit_plot3d(x+y==0,(x,-3,3),(y,-3,3),(z,f(-0,0),f(-3,3)),color='red')+points((-12/5,6/5,f(-12/5,6/5)),color='black',size=10)+points((-3,3,f(-3,3)),color='red',size=10) 
       

Ejercicio 3: Estudiar la optimización de $f(x,y)=4xy$ en el interior de la elipse $x^2/9+y^2/16\leq 1$

 
       

Recintos

var('x,y') implicit_plot(x^2-y^2-1,(x,-2,2),(y,-2,2))