73 votos

¿Por qué los ingenieros utilizan derivadas en funciones discontinuas? ¿Es correcto?

Soy estudiante de Ingeniería de Software y este año aprendí sobre el funcionamiento de las CPUs, resulta que los ingenieros electrónicos y también lo veo mucho en mi campo, usamos derivadas con funciones discontinuas. Por ejemplo para calcular la cantidad óptima de sumadores ripple para minimizar el tiempo de ejecución del proceso de suma:

$$\text{ExecutionTime}(n, k) = \Delta(4k+\frac{2n}{k}-4)$$ $$\frac{d\,\text{ExecutionTime}(n, k)}{dk}=4\Delta-\frac{2n\Delta}{k^2}=0$$ $$k= \sqrt{\frac{n}{2}}$$

donde $n$ es el número de bits de los números a sumar, $k$ es la cantidad de sumadores en ondulación y $\Delta$ es la "puerta delta" (el tiempo que tarda en funcionar una puerta).

Claramente se puede ver que la función de tiempo de ejecución no es continua en absoluto porque $k$ es un número natural y también lo es $n$ . Esto me está volviendo loco porque por un lado entiendo que puedo analizar la función como continua y obtener resultados de esa manera, y de hecho creo que eso es lo que hacemos ("creo", por eso pregunto), pero mi intuición y mis conocimientos sobre análisis matemático me dicen que eso es completamente erróneo, porque lo cierto es que la función no es continua ni lo será nunca y por eso, la derivada respecto a $k$ o $n$ no existe porque no hay tasa de cambio.

Si alguien pudiera explicarme si mi primera suposición es correcta o no y por qué, se lo agradecería un montón, ¡gracias por leer y ayudar!

119voto

user30382 Puntos 48

En general, calcular los extremos de una función continua y redondearlos a números enteros hace no dan el extremo de la restricción de esa función a los números enteros. No es difícil construir ejemplos.

Sin embargo, su función particular es convexo en el dominio $k>0$ . En este caso, el extremo se encuentra en uno o ambos de los dos números enteros más próximos al único extremo de la función continua.

Habría estado bien indicar explícitamente este hecho al determinar el mínimo por este método, ya que realmente no es obvio, pero por desgracia estas sutilezas a menudo se olvidan (o nunca se supieron en primer lugar) en campos tan aplicados. Así que te felicito por darte cuenta del problema y preguntar.

15voto

alephzero Puntos 221

Confundes un modelo matemático del sistema con el propio sistema. El mapa no es el territorio.

Obviamente, en el sistema real ambos $n$ y $k$ deben ser números enteros. Por otro lado, la fórmula matemática para el tiempo de ejecución es una función perfectamente buena para cualquier valor real (¡o incluso complejo!) de $n$ y $k$ excepto cuando $k = 0$ .

Por lo tanto, se puede encontrar el valor mínimo si $k$ según el modelo matemático, aunque la respuesta $k = \sqrt{(n/2)}$ da un valor fraccionario de $k$ para la mayoría de los valores enteros de $n$ .

Si quieres hacer las matemáticas más rigurosas, como la función es convexa puedes decir entonces que

Para cualquier número entero $k \ge \sqrt{n/2}$ , $E(n,k+1) > E(n,k)$ y

Para cualquier número entero $k \le \sqrt{n/2}$ y $k > 1$ , $E(n,k-1) > E(n,k)$ .

Por lo tanto, el valor mínimo de $E$ cuando $k$ es un entero es uno de los (uno o dos) enteros del rango $\sqrt{n/2} - 1 < k < \sqrt{n/2} + 1$ .

Por otro lado, los ingenieros están interesados en obtener resultados, no en hacer matemáticas rigurosas, y si se esboza un gráfico de la forma general de $E(n,k)$ este riguroso argumento matemático es "obvio".

8voto

gimusi Puntos 1255

La solución continua $k= \sqrt{\frac{n}{2}}$ da en general una aproximación para el punto extremo, entonces podemos estimar el valor óptimo por la parte entera

$$ k_1=\left\lfloor \sqrt{\frac{n}{2}}\right\rfloor \le\sqrt{\frac{n}{2}} \le \left\lfloor \sqrt{\frac{n}{2}}\right\rfloor +1=k_2$$

tal que ExecutionTime $(n, k)$ es mínimo.

Como ha observado Servaes en este caso particular la convexidad garantiza que el valor mínimo dado por $k_1$ o $k_2$ es el valor integrado óptimo para la función dada.

1voto

Maaz Ahmad Khan Puntos 131

Si se considera que k y n son variables continuas, se obtiene una función continua derivable y enredada a la función discontinua inicial. El verdadero problema es si el punto extremo de esta función puede aproximarse al punto extremo de la discontinua. El error puede evaluarse con la fórmula del recordatorio de Cauchy para la interpolación de Newton o Lagrange, que tiene un ¡k! en el denominador y puede ser tolerable si k es suficientemente grande.

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X