miércoles, 21 de marzo de 2012

Un experimento: divulgación/solución de un problema


Contexto

En Matemáticas II hemos estado navegando por las procelosas aguas del Álgebra Lineal. Tradicionalmente es una materia que se hace ardua porque conlleva un cierto nivel de abstracción del que carece el cálculo, por naturaleza más directo. Aun con todo, y una vez superada esta dificultad, se debe insistir en que la resolución de los problemas es simple. En general implican el mismo conjunto de operaciones y/o resolución de sistemas lineales, tareas mucho más sencilla que tratar ecuaciones no lineales, calcular un límite, hallar una primitiva, etc, que podríamos encontrar en el cálculo.


 A fecha de esta entrada,  hemos visto qué es un sistema lineal y la estructura de soluciones (¿Cuándo tiene solución? ¿Cuándo es única?) para abordar a continuación el concepto de subespacio vectorial, en principio limitado a $\mathbb{R}^n$. En pocas palabras, si $A$ es una matriz $m\times n$, y ${\bf a}_1,\ldots, {\bf a}_n$ sus columnas, los subespacios que estamos viendo son los que se pueden escribir de la forma \begin{eqnarray*} \mathrm{N}(A)&=&\{{\bf x}\in \mathbb{R}^n\ |\ A{\bf x}={\bf 0}\}\\ \mathrm{R}(A)&=&{\rm span}\ \langle {\bf a}_1,\ldots,{\bf a}_n\rangle \end{eqnarray*} el espacio nulo y columna de una matriz. El primer conjunto contiene todas las soluciones del sistema nulo y por tanto informa de si un sistema con $A$ como matriz de coeficientes tendrá solución única (si ${\rm N}(A)=\{{\bf 0}\}$) o no (si ${\rm N}(A)$ contiene vectores diferentes del nulo; en tal caso es fácil de ver qué tiene infinitos elementos). El segundo conjunto es algo más sútil. Cuando uno plantea un sistema de ecuaciones ${ A}{\bf x}={\bf b}$ sabe que el sistema tendrá solución (sí única o no dependerá del punto anterior) si ${\bf b}\in {\rm R}(A)$. Por tanto, $R(A)$ contiene los términos independientes ${\bf b}$ para los que el sistema lineal $A{\bf x}={\bf b}$ tiene solución.

Resolviendo problemas sin solución

Comencemos con un problema modelo, y por tanto simple, al que dotaremos de cierta verosimilitud. Los datos de población en EE.UU. recogidos por la agencia federal correspondiente son los siguientes







Datos del censo en EE.UU
AñoPoblación
190076 millones
191092 millones
1930123 millones
1950150 millones
1960180 millones


Se plantea encontrar una regla sencilla que se ajuste a esos datos y que pemita adelantar la población para los años 1980 y 2000.

Discusión sobre el problema: primera aproximación

El modelo más simple es uno lineal: se trataría de buscar una regla 
\[
P(t)= \alpha+\beta\frac{t-1900}{10}
 \]
de forma que $P(1900)$, $P(1910)$,... $P(1960)$ diera buenas aproximaciones de los datos conocidos para luego utilizar $P(1980)$ y $P(2000)$ como previsión de población. Tal aproximación nos conduce al sistema lineal:
\[
\left\{ \begin{array}{ccccc} \alpha&+&0\beta&=&76\\ \alpha&+&\beta&=&92\\ \alpha&+&3\beta&=&123\\ \alpha&+&5\beta&=&150\\ \alpha&+&6\beta&=&180 \end{array} \right.
 \]
o en notación matricial
\[
A\begin{bmatrix}
\alpha\\
\beta
\end{bmatrix}
=\begin{bmatrix}
76\\ 92\\123\\150\\180 \end{bmatrix},\qquad A=\begin{bmatrix}
1&0\\
1&1\\
1&3\\
1&5\\
1&6
\end{bmatrix}
  \]
Es fácil ver que el sistema lineal anterior no tiene solución, o dicho de otra forma, $(76,92,123,150,180)\not\in {\rm R}(A)={\rm span}\langle(1,1,1,1,1),(0,1,3,5,6)\rangle$ que contiene los términos independientes para los cuales el sistema tiene solución.

Una forma de superar este problema es buscar un término independiente para el que el sistema anterior sí tenga solución y que esté cerca de los datos originales. Así, una buena propuesta sería tomar como nuevo término independiente la proyección ortogonal en ${\rm R}(A)$, esto es, escoger un nuevo  vector de datos que esté a la menor distancia posible del de los datos originales pero dentro del conjunto de datos admisibles del sistema. Tras los cálculos oportunos, se verifica que tal proyección viene dada por
\[
{\bf b}_2\approx ( 74.82,   91.28,   124.20,  157.12,  173.58)
\]
y para tal término independiente el sistema tiene solución única (porque $N(A)=\{{\bf 0}\}$) y viene dada por
\[
\begin{bmatrix}
\alpha\\
\beta
\end{bmatrix}\approx
\begin{bmatrix}
74.82\\
16.46
\end{bmatrix}
\]

Esta es la aproximación por mínimos cuadrados, aunque  no lo parezca a primera vista. Ello es debido a que podemos llegar a la misma solución si uno observa que
\[
A^\top ({\bf b}-{\bf b}_2)={\bf 0}
\]
(Esto es consecuencia de que ${\bf b}_2$ es la proyección ortogonal de ${\bf b}$). Por tanto,
\[
A^\top A \begin{bmatrix}
\alpha\\
\beta
\end{bmatrix}=A^\top {\bf b}_2 =A^\top {\bf b},
\]
así que se puede plantear encontrar la solución resolviendo este sistema lineal.

He aquí una gráfica con los datos originales, la función $P(t)$  y lo valores previstos para 1980 y 2000, que son respectivamente 206.5 y 239.43 millones de habitantes respectivamente

Este método se conoce como aproximación por mínimos cuadrados y funciona, tal y como está escrito aquí, siempre que el sistema lineal con coeficientes $A^\top A$ tenga solución única. Esta condición se puede ver que es equivalente a que ${\rm N}(A)=\{{\bf 0}\}$, o dicho de otra forma, que las incógnitas del problemas son verdaderamente independientes.

Desarrollando el problema: dos aproximaciones distintas

Si se quisiera ajustar más la regla anterior, podría sugerirse que la población sigue un patrón de crecimiento parabólico, de forma que

 \[
 P_2(t)= \alpha+\beta\frac{t-1900}{10}+\gamma\Big(\frac{t-1900}{10}\Big)^2
 \]
 Planteando el sistema, los coeficientes deberían cumplir
\[
A_2\begin{bmatrix}
\alpha\\
\beta\\
\gamma
\end{bmatrix}
=\begin{bmatrix}
76\\ 92\\123\\150\\180 \end{bmatrix},\qquad A_2=\begin{bmatrix}
1&0 &0\\
1&1&1\\
1&3&9\\
1&5&25\\
1&6&36
\end{bmatrix}
\]
El sistema nuevamente es incompatible, no admite solución, pero podemos aplicar las mismas ideas que antes y llegar a una solución de compromiso, la menos mala:

\[
A_2^\top A_2 \begin{bmatrix}
\alpha\\
\beta\\
\gamma
\end{bmatrix}=A_2^\top{\bf b},
\]
que da como solución

\[
\begin{bmatrix}
\alpha\\
\beta\\
\gamma
\end{bmatrix}\approx
\begin{bmatrix}
77.58\\
12.1\\
0.728
\end{bmatrix}
\]
La gráfica con la nueva función de ajuste $P_2(t)$ se muestra a continuación
Las poblaciones previstas para 1980 y 2000 son ahora 220.9 millones y 271.3 millones.

Finalmente, podemos ser unos Malthusianos convendidos y postular por un crecimiento de tipo exponencia:
\[ P_3(t)=\alpha \exp(\beta (t-1900)/10)= \exp(\alpha'+\beta (t-1900)/10),\quad \alpha'=\log(\alpha \] ($\log$ es el logaritmo neperiano). En este caso, tras los cálculos oportunos y apoyándonos en el logaritmo veríamos que $\alpha'$, $\beta$ deben satisfacer el sistema \[ \left\{ \begin{array}{ccccc} \alpha&+&0\beta&=&\log(76)\\ \alpha'&+&\beta&=&\log(92)\\ \alpha'&+&3\beta&=&\log(123)\\ \alpha&+&5\beta&=&\log(150)\\ \alpha'&+&6\beta&=&\log(180) \end{array} \right. \] Tenemos un sistema como en el primer punto pero con distinto término independiente. En notación matricial, y tras calcular los logaritmos en el término independiente, es 
\[ A=\begin{bmatrix} 1&0\\ 1&1\\ 1&3\\ 1&5\\ 1&6 \end{bmatrix}\begin{bmatrix}
\alpha'\\ \beta \end{bmatrix}=\begin{bmatrix}
4.33\\
4.52\\
4.81\\
5.01\\
5.19
\end{bmatrix}
   \] La solución que el método de mínimos cuadrados nos proporciona es
\[
\alpha'\approx 4.36\quad\Rightarrow\quad \alpha=78.44,\qquad  \beta=1.371
\]
La gráfica $P_3(t)$ es

con valores previstos para 190 y 2000 sensiblemente mayores, 234.9 y 308 millones respectivamente. 

Comparativa

La siguiente gráfica muestra los tres ajustes distintos para los datos de población (x) y sus predicciones para el futuro. 

Nota final 1

Este es un buen ejemplo donde las previsiones de un problema no depende tanto de las matemáticas en sí como de las hipótesis de partida. Desde el punto de vista matemático las tres predicciones son correctas pero su veracidad depende de que el modelo escogido sea más o menos ajustado. Esto está más cerca, en este caso, de las ciencias sociales. En cualquier caso las predicciones a largo plazo no deben tomarse muy en serio, como bien mostró el genial xckd al demostrar que la palabra sostenible no era sostenible

Finalmente, para poner los resultados en perspectiva, diré que los datos de población reales en 1980 y 2000 fueron de 221 millones y 280 millones respectivamente. La segunda aproximación demostró por tanto ser más ajustada. 

Nota final 2

La idea de esta entrada surgió de mi breve convalencia de un trancazo que me dejó 24 horas fuera de juego, y las siguientes a medio ritmo. Sirve además como exponente de las bondades de MathJax como interprete de LaTeX en Web. 

Quisiera finalizar como una breve reflexión sobre el papel de las matemáticas en todo este proceso. Uno toma un modelo y lanza sus Matemáticas para hacer predicciones. Las Matemáticas son exactas, pero los resultados serán correctos en tanto en cuanto los datos y el modelo sean ajustados a la realidad. En este sentido, la siguiente cita del pionero Charles Babbage viene muy a cuento: 

On two occasions I have been asked,—"Pray, Mr. Babbage, if you put into the machine wrong figures, will the right answers come out?" In one case a member of the Upper, and in the other a member of the Lower, House put this question. I am not able rightly to apprehend the kind of confusion of ideas that could provoke such a question.


Babbage (1864), Passages from the Life of a Philosopher, ch. 5 "Difference Engine No. 1"

que podría traducirse en

Me han preguntado en dos ocasiones: "Perdón, Sr. Babbage, si inserta cifras erróneas en la máquina, ¿devolverá respuestas correctas? . En una ocasión un mienbro de la Cámara Alta, y en la otra un miembro de la Cámara Baja, me hicieron esta pregunta. Soy incapaz de entender qué clase de confusión de ideas puede provocar una cuestión así.

Curiosamente, eran políticos, equivalentes a nuestros diputados y senadores, quienes hacían estas cuestiones. 
Powered by MathJax

No hay comentarios:

Publicar un comentario en la entrada