1.2 Máximo en intervalo-Ejemplo01

Referencia: Burden 7Ed capítulo 1.1-ejemplo 1 p6, pdf16; Burden 9Ed  p5

Sea:

f(x) = 5 \cos(2x) - 2x \sin(2x)

Determine el valor máximo de |f(x)|  en los intervalos:

  • [1, 2]
  • [0.5, 1]

Desarrollo

Existen dos opciones, la analítica y la numérica.

1. Solución analítica

Se determina la derivada de f(x) y se determina el valor de x cuando f'(x) vale cero.

f(x) = 5 \cos(2x) - 2x \sin(2x) f'(x) = 5 (- 2 \sin(2x)) - [2x (2 \cos(2x)) + 2 \sin(2x) ] f'(x) = - 12 \sin(2x) - 4x \cos(2x)

f'(x) en el rango [1,2] toma el valor de cero en:

0 = - 12 \sin(2x) - 4x \cos(2x)

y requiere un poco de trabajo para encontrar el punto buscado…

2. Solución numérica

Otra forma es determinar el valor usando un método numérico, cuya precisión dependerá de la cantidad de muestras que se utilicen en la evaluación.

Para observar la función, se obtiene la gráfica en el rango [0.5, 2]

# Burden capítulo 1.1-ejemplo 1 p6, pdf16
# Determine el maximo entre [a,b] para fx
import numpy as np
import matplotlib.pyplot as plt

# INGRESO
fx = lambda x: 5*np.cos(2*x)-2*x*np.sin(2*x)
a = 0.5
b = 2
muestras = 1001

# PROCEDIMIENTO
xi = np.linspace(a,b,muestras)
fi = fx(xi)

fiabs = np.abs(fi)
donde = np.argmax(fiabs)

# SALIDA
print('el máximo se encuentra en: ', xi[donde])
print('con el valor f(x): ', fiabs[donde])

# GRAFICA
plt.plot(xi,fi, label='f(x)')
plt.plot(xi,fiabs, label='|f(x)|')
plt.axhline(y=0, color='g')
plt.xlabel('x')
plt.ylabel('fx')
plt.legend()
plt.title('f(x) y |f(x)|')
plt.show()

La gráfica permite estimar las intersecciones con los ejes y extremos de las funciones.

el máximo se encuentra en: 1.358
con el valor f(x) de: 5.67530054527

El valor máximo de |fx| en magnitud se cumple cuando la derivada es cero en un punto del intervalo.


Puede revisar el tutorial de gráficas2D en la sección de recursos de estudio/resumen Python, o consultar en el sitio de matplotlib.org


Usando Scipy.Optimize

La libreria Scipy dispone de varios algoritmos de optimización que se desarrollarán durante el curso. La comprensión de cada uno de ellos permite una aplicación efectiva de los algoritmos para obtener el resultado buscado.

Por ejemplo, usando la derivada de la función y un punto de partida x0 donde se supone, intuye o cercano donde se pretende obtener, se busca cuándo su valor es mínimo con la instrucción fsolve() se obtiene:

[ 1.35822987]
>>>

 

xalor inicial de x0

las instrucciones del algoritmo son:

# Burden capítulo 1.1-ejemplo 1 p6, pdf16
# Determine el maximo entre [a,b] para fx
# Encontrar el máximo cuando f'(x) pasa por cero

import numpy as np
import scipy.optimize as opt

# INGRESO
fx = lambda x: 5*np.cos(2*x)-2*x*np.sin(2*x)
dfx = lambda x: -12*np.sin(2*x)-4*x*np.cos(2*x)
a = 0.5
b = 2
muestras = 1001
x0 = 1 # punto inicial de búsqueda

# PROCEDIMIENTO
dondemax  = opt.fsolve(dfx,x0)

# SALIDA
print(dondemax)

compare con los resultados anteriores.

1.1 Error y Precisión en computadoras

Imágenes

En el uso cotidiano de computadoras para el manejo de imágenes permite que las personas tengan un conocimiento previo acerca de la precisión y error.

Para tratar el tema en lenguaje común, observe las siguientes imágenes:

ESPOL Monumento 01
ESPOL Monumento 01
ESPOL Monumento 02
ESPOL Monumento 02

Con lo observado, respecto a la resolución de la imagen en pixeles, describa lo siguiente:

  1. Sinónimos de precisión usados en imagenes de computadora
  2. Sinónimos de error usados en imagenes de computadora

Audio

Para el caso de manejo de archivos de audio, tenemos los siguientes archivos de referencia:

Archivo01 – Karla Kanora – Invernal 01

Archivo02 – Karla Kanora – Invernal 02

Luego de escuchar los archivos de sonido, con lo observado respecto a la calidad del sonido semejante a radio AM y FM, describa lo siguiente:

  1. Sinónimos de precisión usados en audio de computadora
  2. Sinónimos de error usados en audio de computadora

Video

Este caso es más sencillo, pues implica unificar las observaciones anteriores. Para este caso se usará un video de Youtube.

Cambie la resolución del video entre las opciones que se muestran en el menú de configuración

Con lo observado, describa lo siguiente:

  1. Sinónimos de precisión usados en video digital
  2. Sinónimos de error usados en video digital

Otra perspectiva

Para éste caso las instrucciones son semejantes a los ejemplos anteriores, observando el experimento y lo que intentan realizar:

Observe  primer minuto (0:00-01:00) del video siguiente, solo el primer experimento:


Preguntas

Tomando como base los ejercicios anteriores:

  1. Escriba su definición de precisión
  2. Escriba su definición de error
  3. Describa la diferencia entre: precisión y error
  4. Para el estudio académico, ¿se enfocaría en la precisión o en el error?.
  5. ¿Cómo valora si  el error es tolerable o la precisión es buena o suficiente?

1.1.2 Error-por tipos en computador

Referencia: Chapra 3.3 p.56/pdf.80, Burden definición 1.15 p.20/pdf.30

1. Error absoluto

Es la magnitud (sin signo) entre el valor «conocido» real X y el valor «estimado» Xk.

E = |X-X_k|

El valor dependerá de la magnitud de X, por ejemplo:

– Al contar monedas de 1 centavo, una persona cuenta Xk = 98 y una máquina contadora de monedas determina que el valor X = 100, el error absoluto es de 2 centavos ó 0.02 dólares.

¿Que pasaría si el conteo fuese con monedas de 1 dólar y se mantienen las mismas cantidades de monedas?


2. Error relativo

Continuando el tema del ejemplo anterior, se puede mejorar  dimensionando proporcionalmente los errores, es decir ponderarlos respecto a la magnitud usada.

e = \frac{|X-X_k|}{X}

Ponderar el error, calculando el error relativo para ambos ejemplos anteriores, se hacen comparables cuando las monedas son de un centavo o un dolar:

e = \frac{|100-98|}{100} = 0.02

3. Error de redondeo

Aparece cuando se usa una calculadora o computadora para los cálculos con números reales. La calculadora usa una cantidad finita de dígitos.
Por ejemplo:

  • el número π tiene un número infinito de dígitos,
  • si el número resultante de \sqrt{3} se eleva al cuadrado, se debería obtener 3

Sin embargo podemos comprobar que lo enunciado no se cumple al usar el computador,  así obtenemos el error de redondeo.

Usando Python se obtiene:

>>> import numpy as np
>>> numeropi=np.pi
>>> numeropi
3.141592653589793

>>> b=np.sqrt(3)
>>> b
1.7320508075688772
>>> b**2
2.9999999999999996
>>> 

4. Error de redondeo absoluto

si X_k es una aproximación de X, el error absoluto es

E = |X-X_k|

Este error se enfoca solo en la magnitud de las diferencias, no importa el signo.

5. Error de redondeo relativo

El error relativo es más significativo al usar la proporción del error en lugar del tamaño del valor.

e = \frac{|X-X_k|}{X}

6. Error de truncamiento

Resultan al usar una aproximación en lugar de un procedimiento matemático exacto. Es la diferencia entre una respuesta esperada y el valor calculado con una fórmula iterativa.

Ejemplo, al usar un polinomio de Taylor en lugar de la función original.