Resolución del problema del Cubo y la Nube

Este problema va a sentar las bases del conocimiento financiero que vamos a apreciar durante el curso. Y es que este problema está íntimamente relacionado con las finanzas y contiene todas las matemáticas necesarias para comprender hasta los problemas más complejos.

 

En el problema, teníamos un cubo con una nube dentro. Dicha nube tenía una forma aleatoria. Lo único constante es el volumen del cubo, “x” y el volumen de la nube “y” y teníamos el dato de que el volumen de la nube era el 70% de aquel del cubo.

Aqui está el post en el que se planteaba

Al principio, como muchos probaban en los comentarios, el área de las figuras que podía tomar la nube a volumen constante variaba según la figura. Entonces la respuesta pese a ser un solo resultado resulta terriblemente complicada de dilucidar para aquellos que no piensan de forma transversal, o como dirían los gestores: “out of the box”.

Todo problema tiene una solución

 

Esa es la primera lección del ejercicio y del curso que daremos. Da igual lo difícil que sea un problema, siempre tienen solución. Siempre. Lo que ocurre es que para encontrar la solución quizás no hay que recurrir a métodos tradicionales, sino alternativos.

 

Por ejemplo, en la edad media los italianos hacían auténticos duelos matemáticos en la plaza de los pueblos. Así es como se ganaban la vida. Inventaban nuevas formas para resolver problemas para luego derrotar a sus adversarios en duelos de conocimiento y ganarse un dinerito. Así fue como se inventaron por ejemplo la factorización de polinomios (Ruffini) y la resolución de ecuaciones de segundo grado… solo para ganar dinero. Y todos estos métodos antes se creían imposibles. Es decir, el avance de las matemáticas dio solución a los problemas.

 

Hoy en día por ejemplo tenemos el problema siguiente:

 

n/2 para todo n par.

3n+1 para todo n impar.

 

Si elegimos un número al azar, veremos lo que ocurre:

 

Elegimos por ejemplo 10, 10 es par, 10/2=5. 5 es impar 3*5+1=16. Y seguimos= 8,4,2,1,4,2,1,4,2,1,4,2,1…

 

El problema está en que el matemático tiene que intentar hacer que el número crezca de forma infinita. Aun no lo ha conseguido nadie y se han intentado infinidad de números. Se cree que es posible que exista un número que lo haga tender al infinito, pero aun no se ha encontrado. El problema es que, mientras que hay ciertas evidencias que tienden a hacer pensar que no existe tal número, nadie ha conseguido hoy por hoy demostrar que no exista, con lo cual se considera que las matemáticas aun no son tan avanzadas como para abordar el problema.

 

En el caso de que exista un número, en el futuro se encontrará y esa será la solución. En el caso de que se demuestre que no existe, esa será la solución. Al final, siempre hay una solución para el problema.

 

Analizando los datos de partida: Mandelbrot

 

Lo único que tenemos claro en el problema planteado en el anterior artículo es lo siguiente:

 

  1. La esfera es la figura cuya área representará la mínima solución posible. La esfera es la figura que tiene un menor ratio área/volumen. Es por ello que lo vemos en la naturaleza de tantas formas, por ejemplo en las gotas de lluvia. Como la fuerza entre las moléculas de agua y la superficie son diferentes, siendo las de las superficie las moléculas más energéticas, están tienden a minimizarse para garantizar la integridad estructural. Viene siendo más o menos como un ahorro natural de energía. Por eso tienden a minimizar su superficie y se configuran en forma de esfera (JODER ¡QUE BONITAS SON LAS MATEMÁTICAS Y QUE SABIA ES LA NATURALEZA! tenía que decirlo o no podía seguir escribiendo).
  2. Como dijo Juan Luis en uno de sus comentarios, había que valorar también la naturaleza fractal de la nube. Y es que la nube conforme se va complicando puede llegar a estados fractales en los que su área sea literalmente infinita. Esto quizás sea un poco más difícil de ver, pero se lo explico:

 

Mandelbrot, un genio moderno de las matemáticas que murió hace unos 6 años (que en paz descanse), es famoso por su extenso trabajo sobre geometría fractal. Una auténtica maravilla y recomiendo a todos que lo lean, de verdad. El caso es que quizás uno de los planteamientos que le llevo a la fama fue el preguntarse, ¿Cuál es la longitud de la costa de Inglaterra?

 

El descubrimiento fue asombroso, si no quieren un spoiler paren de leer aquí y lean el siguiente artículo, que está escrito por el propio Mandelbrot:

 

http://users.math.yale.edu/~bbm3/web_pdfs/howLongIsTheCoastOfBritain.pdf

 

El resultado es: infinito.

 

Y, dirán ustedes (los que no hayan leído el artículo), ¿Cómo es esto posible? Yo a Inglaterra la veo en un mapa y su costa no es infinita. ¿Seguro? Pon tu mano encima de una hoja de papel y separa los dedos escasamente un milímetro.

Coge un bolígrafo y traza la silueta alrededor. Una vez que hagas esto y levantes la mano, deberás de ver la forma de tu mano con los dedos juntos, sin estar definidos.

Bien, ahora vamos a simular que tenemos un bolígrafo más fino y podemos incluir los dedos. Naturalmente la longitud de la línea crecerá. Ahora con uno aun más fino para dibujar los contornos de los pliegues de la piel. Crecerá aun más.

Ahora hasta llegar a los detalles de las células. Seguirá creciendo, así indefinidamente hasta llegar a infinito.

 

Aplicación de los estudios de Mandelbrot al problema en cuestión

 

Quizás la mejor forma de verlo sea mediante la serie de Mandelbrot, serie que nosotros diseñaremos en R en clase y la aprenderán a programar por ustedes mismos. Miren el siguiente video, precioso, una maravilla de las matemáticas. Al principio verán la serie de Mandelbrot, bien definida, parece una figura finita, pero en realidad, en cuanto el video empiece a hacer zoom verán que la serie se vuelve infinita, tomando inacabables caminos de increíble belleza y formas tan precisas, tan perfectas que parecen salidas de un sueño:

 

https://www.youtube.com/watch?v=0jGaio87u3A&t=225s

 

El mismo ejercicio lo podemos hacer con la nube. Imaginemos que la nube empieza siendo un cubo de lado 1. El cubo tiene un volumen de 1 y un área de 6. Veamos que pasa si parto el cubo en cubos de lado 0.5, y luego en cubos de lado 0.25, y luego en cubos de lado 0.125 etc…

Como pueden ver el volumen siempre es el mismo, pero mientras el tamaño del lado decrece el área aumenta hasta el infinito.

 

Entonces tenemos claras dos cosas:

  1. El área mínima que puede tomar la nube es :

2. El área máxima es infinita.

 

Entonces para medir el área exacta sea cual sea lo que debemos utilizar son métodos numéricos. En este caso el corte transversal de la estructura en 3D para transformarla en láminas en 2D (con error de profundidad).

Las láminas en dos dimensiones deben tener un ancho mínimo que dará un error (sino la medida será infinita), pero que aproximará el área tal que el error sea mínimo.

En ese momento lo único que habría que hacer es  medir los tramos de la nube en cada corte. La nube se identifica en el corte porque es el punto en el cual, trazando una línea desde el lado del cuadrado resultante, esta no llega al lado paralelo. Esos puntos son los que se agregan. Al final el área total será, para cualquier figura:

 

Donde MD es la medida de cada corte. Y para que lo entiendan completamente se lo enseño gráficamente.

 

Cortamos el cubo completamente en láminas tal y como se muestra en la figura de arriba. Vamos a poner tres cortes consecutivos:

 

En este primer estrato no vemos apenas nada, pero trazando líneas de abajo a arriba, nos damos cuenta de que hay un punto en el que se nos interrumpe. Es el comienzo de la nube. Marcamos el punto con la medida mínima. Digamos que ese punto vale 30.

 

 

En la segunda lámina volvemos a hacer lo mismo. En este caso vemos que la línea puede verse interrumpida por el objeto en medio varias veces.

Volvemos a medir los puntos donde la línea se ve interrumpida, este caso por abajo y por arriba. Digamos que la suma de los puntos es 20 y el área total 600.

 

 

Finalmente el último corte nos muestra la misma figura que al principio con valor de 30.

De estos 3 cortes podemos deducir que seguramente la figura era una esfera o dos conos cuya base está unida en la segunda lámina y picos están en la primera y última y podríamos inferir que el área total es 660.

 

Esto como ven, no debe hacerse con 3 láminas cortando el cubo en tres secciones, sino que lo que normalmente se hace es cortar el cubo en varios miles de secciones mapeando y calculando las áreas.

 

En este caso, si por ejemplo el cubo tuviera 90 centímetros de lado, y se hubieran sacado tres franjas de 30 centímetros de ancho, los 30 y el 600 serían el resultado de calcular el área de la superficie plana resultante entre los puntos de corte con la figura y la profundidad.

 

Si el grosor de las líneas que mapean el cuadrado es 1 centímetro, entonces el punto de corte en la primera y última lámina es 1*30=30 centímetros de área. En la segunda será 20 centímetros por 30 centímetros que es igual a 600.

 

Lo que ocurre es que, como comprenderán, entre lámina y lámina (la profundidad) están pasando cosas que nosotros estamos asumiendo que son constantes y eso es un error.

Por eso, y para reducir el error a una medida despreciable, no se hacen 3 láminas, sino muchísimas más y el ancho de las líneas que mapean las superficies se reducen también al mínimo.

De esa forma se puede dar una medida aproximada del área con un error despreciable, y por tanto considerada como válida.

 

Así que felicidades Alberto, encontraste la solución en los métodos numéricos y creo que es una solución genial.

 

Segunda lección del problema

 

Para que vean, la segunda lección y lo que tiene que ver esto con las finanzas, es el cálculo del área de las curvas y las aproximaciones por métodos numéricos para la elaboración de carteras.

En el curso de R veremos en un ejemplo real de cartera como mapear la cartera eficiente, la de mayor ratio de sharpe y configurar la ecuación de la frontera eficiente haciendo uso de este mismo sistema.

 

También se puede utilizar el sistema de mapeado para calcular las áreas debajo de las curvas.

Reduciendo las líneas de mapeado, que al fin y al cabo son rectángulos, podemos, si trazamos un número muy alto de ellos reduciendo su ancho, aproximar el área debajo de una función para calcular integrales o básicamente para calcular el área de cualquier figura.

 

Es lo que se conoce como suma de Riemann y la utilizaremos bastante durante el curso, sobretodo para calcular la probabilidad dentro de distribuciones de probabilidad con parámetros no definidos, donde solo conocemos la función, o donde solo disponemos de las coordenadas cartesianas.

 

Bueno, ¡ahora sabiendo esto solo les falta la segunda parte del problema! ¡A por ello!

 

 

 

 

 

 

Manuel Fajardo Manuel Fajardo
- Managing Director Ocean Calypso Master-Feeder Hedge Fund - Chief Executive Officer Ocean Quant Group

10 comentarios

  • Gonzalo Fernandez

    Muy pero muy interesante.
    Consulta: Como se determinó el factor 8^z que afectan tanto al cálculo del volumen y la superficie en cada iteración ordinal que realizas ?

  • Manuel Fajardo

    Hola Gonzalo, Si cortamos un cuadrado para hacer cuadrados más pequeñitos de lado L/2, el número de cuadrados resultantes es 2(valor del denominador)x2(valor del denominador) que es igual a cuatro. Si el valor del lado del cuadrado resultante fuera L/4 el número de cuadrados sería 4×4 que es igual a 16. Si tenemos un cubo con lado L, el número de cubos existentes es n^0=1 donde n es el número de cortes, pasa lo mismo con la profundidad y el número de cubitos que saldrían resultantes de L/2 sería 2*2*2=8 que es lo mismo que 8^1, si L/4= sería 4*4*4=64 o lo que es lo mismo 8^2=64. Si fuera L/8= sería 8*8*8=512, que es lo mismo que 8^3=512 Etc…

    Por eso si la base es siempre L/2, el número de cubos resultantes es 8^”numero de veces que se realiza la división”.

  • Camilo

    mmm simplemente muy interesante…. Saludos Manuel

  • Joan Benaiges

    Wow, es realmente interesante. Escuché sobre este modo de resolverlo pero para nada lo habría relacionado ahora.

    En cuando a la segunda parte del problema, se me ocurre que se puede aplicar el mismo método para los diferentes tn. Es decir, si la superficie es constantemente cambiante, habrá que repetir el mismo experimento para t1, t2, t3 etc… Luego para conseguir una generalización a todo ello, lo podríamos hacer en un planteamiento de regresiones a la media en series temporales .. aplicando autocorrelacion quizá?

    Lo lanzo así en el aire sin ‘hurgar’ mucho a lo hondo…pero la idea a grandes rasgos creo que podría funcionar. ¿ Alguien más estaba planteándose algo similar? a ver si así lo podemos ir desarollando un poquito entre todos 😉

    Saludetes!

  • Joan Benaiges

    Oops, tanto la he liado que os he dejado helados con mi respuesta? ;-P

  • González

    Muy buenas a todos,

    Si su superficie es elástica y cambia permanentemente es evidente que habrá situaciones en las que unas veces sea mayor y otras menor a la anterior, etc. Por consiguiente su superficie dependerá del momento preciso en el tiempo en el que estemos midiendo esa nube. Supongo que no podríamos quedarnos con una en concreto sin un análisis del conjunto de todas las mediciones en todos los t.

    Esto me hace pensar en su similitud al mercado en la forma que el cuadrado es el mercado global con un volumen “x” y la nube el capital o el volumen “y” invertido en el mercado en un cierto activo en un determinado momento. La nube está compuesta por partículas de H y O (entre otras cosas) con sus respectivos pesos al igual que los pares de divisas en monedas con sus respectivos valores.

    Y ahora viene la conjetura: Se podría medir el área bajo la curva en cada uno de los tiempos en un rango de t0 a tn, dando diferentes valores y ordenarlos en una campana de Gauss para sacar más menos el promedio del área.

    Para calcular el área bajo la curva en un tiempo t0 por ejemplo, se podría hacer de la siguiente forma:
    Suponiendo que la curva resultante en el tiempo t0 está comprendida entre x=1 y x=7.
    Dividiendo dicha curva en un número de rectángulos, por ejemplo 6 (cuantas menos partes más errático será el resultado), calculamos la base de esos rectángulos bajo la curva (tendrán la misma base todos):
    base = (7(punto final) – 1 (punto inicial)) / 6(número de divisiones) = 1

    Con esto calculamos el área de cada rectángulo bajo la curva:
    a1 = 1 (punto inicila) + 1(punto inicial) * 1 (base) = 2;
    a1 = 1 (punto inicila) + 2(siguiente punto) * 1 (base) = 3;

    a6 = 1 (punto inicila) + 6(último punto) * 1 (base) = 7

    Ahora calculamos la altura de cada rectángulo, pero para esto necesitamos la función de la curva, que por supuesto me la voy a inventar jeje: F(x) = x3;
    h1 = F(2) = 8
    h2 = F(3) = 27;

    h6 = F(6) = 216

    Una vez tenemos las alturas y las bases (que son iguales en todas en este caso, ya que la última puede no serlo por coincidencia con el punto del final de la curva), calculamos las áreas de cada uno de los rectángulos:
    A1 = 1 (base) * 8 (altura) = 8
    A2 = 1 (base) * 27 (altura) = 27

    A6 = 1(base) * 216 (altura) = 216

    Y el área final será la suma de todas las áreas de los rectángulos:
    A = A1 + A2 + … + A6

    Esto para t0, lo mismo para t1, t2, tx y con el resultado de todas las áreas se forma la campana de Gauss para sacar las conclusiones.

    No habré dado ni una, pero me lo estoy pasando en grande con estos rompe sueños 😛

    Un saludo

  • Joan Benaiges

    Por lo que comentas Gonzalez, lo que propones es equivalente a usar integrales para calcular el área de debajo la curva del precio, no es así?

    Si lo he entendido bien, y se trata de eso, para luego formar una campana de Gauss con esas áreas de diferentes t, siendo que lo que hace Gauss es distribuir normalmente los resultados, lo que obtendríamos sería algo parecido a lo que obtendríamos de calcular una media móvil del precio …bueno, como una Bandas de Bollinger siendo que Gauss tiene en cuenta la dispersión.

    Quiero decir, que te aportaría la misma información del pasado, pero siendo que el problema del cubo y la nube pide cierta generalización (entiendo que en vistas a la predicción), creo que al planteamiento le faltaría algo que fuera un poco más allá.

    Luego es cuando viene Manuel y dice que es perfecto, y que se calle el pesao de Joan jajaja pero yo también estoy en modo ‘pasárselo en grande’ ^_^ 😉

  • González

    No lo había visto desde ese punto Joan, muchas gracias.

    Además he tenido en cuenta que la nube es un sólido y no es así, entre las gotitas de agua y hielo existe aire, por lo que ya no podríamos calcular la curva como la había pensado porque no hay puntos unidos.
    Para esto se me ocurre crear una rejilla enana en cada uno de los lados del cubo y examinar las posiciones de cada una de las sombras de las gotas por cuadricula, para luego calcular su ecuación de la recta y así tener una función más precisa que la de una curva (creo yo). Una vez tengamos el área de cada cuadricula las sumamos a las de los demás lados…

    Pensandolo un poco me estoy complicando mucho y seguro que la solución es algo mucho más simple.

    Un saludo

  • González

    Otra historia que se me ocurre es más de la forma Química, a través de la fórmula de los gases ideales, esto es:

    Considero de inicio el cubo como un cubo total de nube, sin nube interior. Ahora bien, para un tiempo determinado tenemos una Temperatura Tn con una Presión Pn, por lo que tendríamos que calcular su Volumen.
    Vc = (n*R*T) / P
    n y R son constantes, R es 0,082 ( si no me equivoco) y n son los gramos entre la masa molecular, que si no lo he mirado mal en la Wikipedia son 18,02.

    Con esto tenemos una Vc para una Tn y una Pn (la temperatura depende de la altura a la que se encuentre el cubo nube que en este caso no es mayor al lado del cubo, y la Presión está relacionada con la superficie del cubo así que como no tenemos esos datos se podrían dejar como constantes a sustituir para diferentes lados de un cubo).
    Total que Vc = b ;P

    Sabiendo que el volumen de la nube es el 70℅ del Volumen del cubo, podemos decir que:
    b = 0,7 * Vn –> Vn = b/0,7 = c
    c es el Volumen de la nube así que c = a^3
    Por lo que:
    log(c) = 3 * log(a)
    log(a) = log(c)/3
    log(a) = d

    Esto si no me equivoco sería de la forma:
    10^d = a
    Que daría un valor X como lado de la nube.

    Y si no me he equivocado en algún cálculo o despejando, llego a la conclusión que no tengo ni idea del lado de la nube y estoy dando palos de ciego jejeje.

    Un saludo

  • Joan Benaiges

    Ufff yo en temas de química ya me pierdo :-S hehehe

Deja un comentario

Tu dirección de correo electrónico no será publicada.