 <div style="background-color: #023324; "><p><br></p>
    
         <h1  style="color: white;font-family:Lucida Sans Unicode, Lucida Grande, sans-serif" align="center"> Multiplicadores de Lagrange    </h1> 
<p><br></p>
</div>    


<p><br></p>

# ¿Para qué sirven?

Los multiplicadores de Lagarange es una técnica para encontrar los máximos y minímos de una función $F(x,y,z)$, donde los valores de las variables $x$, $y$ y $z$ deben satisfacer una ecuación de la forma $$ g(x,y,z) = 0. $$

Ésta ecuación se conoce como restricción del problema. A continuación presentamos el método.

Para encontrar los máximos y mínimos, vamos a seguir los siguientes pasos.			

* Construir una nueva función denotada por $L$ y definida por: 
 
	$$ L(x,y,z,\lambda) = F(x,y,z) - \lambda \, g(x,y,z) .     $$  
    
 La función $L$ se llama función *Lagrangiana* y $\lambda$ se llama **Multiplicador de Lagrange**.

* Calcule todas las derivadas parciales de primer orden de $L$.

* Encuentre la solución del siguiente sistema de ecuaciones 
 
 \begin{align*}
	L_x &= 0 \\
	L_y &= 0 \\
	L_z &= 0 \\
	L_{\lambda} &= 0.
 \end{align*} 	
 
* Sea $x=a$, $y=b$, $z=c$ y $\lambda=\lambda_0$, la solución del sistema de ecuaciones en el paso anterior. El punto $(a,b,c)$ se llama **punto crítico** de la función $L$.

* Los puntos críticos de $L$ son los posibles candidatos para ser máximos o mínimos de la función $F$.	
	
* Evalue $F$ en todos los puntos críticos. El valor más grande de estos valores es el valor máximo de $F$, el más pequeño es el   valor mínimo de $F$.	

* La función $F$ y la restricción $g$ también pueden ser funciones de dos variables y el metodo funciona de igual manera. 

## Ejemplo

Calcular los valores máximo y minimo de la función $F(x,y,z) = 2x + 6y + 10z$, sujeta a la restricción $ x^2 + y^2 + z^2 =35.$

**Solución**

Primero cargamos los paquetes para hacer calculo simbólicos


La función $g$ de la restricción esta dada por $g(x,y,z) = x^2 + y^2 + z^2 - 35$, luego la función lagrangiana está dada por

$$  L =  2x + 6y + 10z - \lambda (x^2 + y^2 + z^2 - 35) $$ y seguimos el método, utilizando Python.


```python
from sympy import *    # cargar paquetes para hacer calculos matemáticos
init_printing(use_latex=True) 
```


```python
x,y,z,l =symbols("x,y,z,l")  # Creación de las variables de f y g, reemplazamos el multiplicador de Lagrange por l.
```


```python
F = 2*x + 6*y + 10*z   # Función objetivo
F
```


```python
g = x**2 + y**2 + z**2 - 35  # Restricción
g
```


```python
L = F - l*g # Función lagrangiana
L
```


```python
Lx = diff(L,x)  # Derivadas parciales de la
Ly = diff(L,y)  # función lagrangiana con 
Lz = diff(L,z)  # respecto a las variables x,y,z,l
Ll = diff(L,l)  
```


```python
PC = solve([Lx,Ly,Lz,Ll],[x,y,z,l])  # Solución del sitema de ecuaciones del
PC                                  # método de multilicadores de Lagrange
```

 

Debemos descartar el ultimo valor de cada punto critico, el cual corresponde al valor de $\lambda$.


```python
v1 = F.subs([(x,PC[0][0]),(y,PC[0][1]),(z,PC[0][2])]) # Evaluación del  punto crítico x=-1  y=-3   z=-5 
v1
```


```python
v2 = F.subs([(x,PC[1][0]),(y,PC[1][1]),(z,PC[1][2])]) # Evaluación del  punto crítico x=1  y=3   z=5
v2
```

Concluimos que la función $F(x,y) = 2x + 6y + 10z$, sujeta a la restricción $ x^2 + y^2 + z^2 =35$ tiene un máximo cuando 
$x=-1$, $y=-3$ y $z=-5$ y tiene mínimo cuando $x=1$, $y=3$ y $z=5$. El valor máximo del problema  es $70$ y el valor mínimo es $-70$. 

## Ejemplo (Libro de Arya)

El costo de producir $x$ modelos regulares y $y$ modelos de lujo del producto de una
empresa está dado por la función conjunta de costo

$$ C(x, y) = x^2 + 1.5y^2 + 300. $$

¿Cuántas unidades de cada tipo deben producirse para minimizar los costos totales, si la empresa
decide producir un total de 200 unidades?

**Solución**

El hecho de que la empresa produce unicamente un total de 200 unidades, siginifica que se debe cumplir la ecuación
$x + y = 200$. Por lo tanto debemos que encontrar el valor mínimo de la función de costos $ C(x, y) = x^2 + 1.5y^2 + 300$,
sujeta a la restricción $x + y - 200 = 0$.   


```python
C = x**2 + 1.5*y**2 + 300   # Función objetivo
C
```


```python
g = x + y - 200   # restricción
g
```


```python
L = C - l*g   # Función lagrangiana
L
```


```python
Lx = diff(L,x)  # Derivadas parciales de la
Ly = diff(L,y)  # función lagrangiana con 
Ll = diff(L,l)  # respecto a las variables x,y,l  
```


```python
PC = solve([Lx,Ly,Ll],[x,y,l])  # Solución del sitema de ecuaciones del
PC                                  # método de multilicadores de Lagrange
```

El punto crítico está dado por $x = 120$   $y=80$


```python
v1 = C.subs([(x,120),(y,80)]) # Evaluación del  punto crítico x=120  y=80 
v1
```

Ahora comparemos este valor con la imagen de cualquier otro que satisfaga la restricción, por ejemplo
con $x = 150$,  $y = 50$, claramente estos valores satisfacen la restricción. 


```python
v2 = C.subs([(x,150),(y,50)]) # Evaluación de un  punto arbitrario que satisface la restricción x=120  y=80 
v2
```


```python
v3 = C.subs([(x,100),(y,100)]) # Evaluación de un  punto arbitrario que satisface la restricción x=100  y=100 
v3
```

Observamos que cuando $x = 120$ y $y = 80$ la función de costos se hace minima.

Por lo tanto la empresa debe producir 120 modelos regulares y 80 modelos de lujo para obtener el costo mínimo.

# Resumen del proceso:

1. Obtener la función lagrangiana.
2. Derivar parcialmente.
3. Encontrar el punto crítico.
4. Evaluar el punto crítico.
5. Evaluar otro punto que cumpla la restricción.
6. Clasificar el punto crítico.



## Ejercicios

Mediante el método de multiplicadores de Lagrange,
determine los puntos críticos de f sujetos a las restricciones
dadas.

* $f(x,y) = x^2 + y^2$,
   
   $2x +3y = 7$.
   
   
* $f(x,y,z) = x^2+ y^2 + z^2  $

   $2x +3y + 4z = 29$
   
   
*  $f(x,y,z) = xyz  $

   $xy +yz + 2xz = 24$  


```python
f=x*y*z
f
```


```python
g=x*y+y*z+2*x*z-24
g
```


```python
L=f+l*g
L
```


```python
dLx=diff(L,x)
dLx
```


```python
dLy=diff(L,y)
dLy
```


```python
dLz=diff(L,z)
dLz
```


```python
dLl=diff(L,l)
dLl
```


```python
solve([dLx,dLy,dLz,dLl],[x,y,z,l])
```

solve([ecuaciones,separadas,por,comas],[variables,separadas,por,comas])


```python
f.subs([(x,-2),(y,-4),(z,-2)])
```


```python
f.subs([(x,2),(y,4),(z,2)])
```

$(-2,-4,-2)$ es un mínimo

$(2,4,2)$ es un máximo


```python
L,K,l =symbols("L,K,l")
```


```python
#Función objetivo es la produción
P=80*(L**(3/4))*(K**(1/4))
P
```

$$60L+200K=40000$$
hay que igualar a cero
$$60L+200K-40000=0$$


```python
g=60*L+200*K-40000 #Restricción
g
```


```python
F=P-l*g
F
```


```python
FK=diff(F,K)
FL=diff(F,L)
Fl=diff(F,l)
```


```python
PC=solve([FK,FL,Fl],[K,L,l])
PC
```

Como hay un único punto crítico, hay que buscar un punto de prueba:


```python
g.subs(L,400)
```


```python
solve(g.subs(L,400),K)
```

El punto de prueba es $K=80$ y $L=400$



```python
P.subs([(K,50),(L,500)])
```


```python
P.subs([(K,80),(L,400)])
```

El punto crítico $K=50$ y $L=500$ es un máximo, y la producción será de $22.493$


```python

```

c9ea3f8b43bf66398fc794a1b16a27d1474a9bf3
ipynb
Jupyter Notebook
7. Multiplicadores de Lagrange.ipynb
Juansmarin/Multiplicadores
e215164bd44204962e6f5ac2d8c9308265ec49c1
Apache-2.0
7. Multiplicadores de Lagrange.ipynb
Juansmarin/Multiplicadores
e215164bd44204962e6f5ac2d8c9308265ec49c1
Apache-2.0
7. Multiplicadores de Lagrange.ipynb
Juansmarin/Multiplicadores
e215164bd44204962e6f5ac2d8c9308265ec49c1
Apache-2.0
Qwen/Qwen-72B
1. YES
2. YES