jueves, 21 de julio de 2016

Métodos de Redondeo (Objetivo 1 de Matemáticas I)

En esta entrada del blog voy a abordar el tema del redondeo, que es contenido del objetivo 1 de Matemáticas I referente al estudio de los números racionales, sus operaciones y propiedades. Pienso que este tema, a pesar de su aparente sencillez, merece una revisión porque, cómo les voy a contar, hasta hace algún tiempo yo mismo tenia una concepción errónea del método de redondeo.



Ocurre que un amigo que es biólogo y profesor de ciencias de bachillerato en una escuela internacional me escribió pidiéndome consejos sobre cómo enseñar el tema de redondeo en clase. En el transcurso de la conversación en línea, me expuso un método de redondeo distinto al que yo conocía. Cuando el dígito que sigue a la cifra significativa (a la cual se quiere redondear) está entre 0 y cuatro, se redondea dejando la cifra significativa igual. Cuando el dígito que sigue a la cifra significativa está entre 6 y 9 o 5 seguido de más dígitos distintos de cero, se redondea aumentando en uno la cifra significativa. Hasta ahí no hay diferencia con el método común de redondeo que yo ya conocía y que seguramente ustedes manejan, pero esto plantea la siguiente pregunta: ¿qué se hace cuando la cifra significativa está seguida de un 5 sin alguna otra cifra (o equivalentemente, todas las cifras después del 5 son 0)? Mi amigo me explicaba que en ese caso, la cifra significativa se redondea al número par más próximo, es decir, se deja igual si esa cifra es par y se aumenta en uno si esa cifra es impar. Así por ejemplo, 1,5 se redondea a 2 pero 4,5 se redondea a 4. Mi amigo me explicaba que esta forma de redondear evita el sesgo cuando uno quiere redondear observaciones reales hechas mediante instrumentos científicos. Huelga decir que no fui de mucha ayuda directa para mi amigo porque no conocía este método de redondeo, aunque a mi amigo le sirvió explicarme el método a mí. Sí me hice una nota mental de averiguar bien todo esto luego... 

Repasemos un poco los distintos métodos de redondeo, algunos de los cuales se mencionan en el medio maestro de Matemática I. En lo que sigue - y para simplificar la exposición - asumiré que se quiere redondear un número real cualquiera a un número entero (la cifra significativa sería la de las unidades en este caso). El lector puede fácilmente extrapolar estar ideas al redondeo de cualquier número con una cantidad arbitraria de cifras significativas.

Primeramente, está el redondeo por defecto y por exceso (ver Módulo I del medio maestro, 1.5, p. 71). El redondeo por defecto ocurre cuando aproximamos un número al mayor entero menor o igual al número dado y la operación se denota por \(\lfloor x \rfloor\). Así por ejemplo, \(\lfloor 4.71 \rfloor=4\), \(\lfloor -13.2 \rfloor=-14\) y \(\lfloor -2.91 \rfloor=-3\). Notese que por definición, este método de redondeo (por defecto) consiste en aproximar un número cualquiera al entero más próximo que sea menor o igual al número, por lo cual decimos que el redondeo por defecto nos aproxima un número hacia \(-\infty\). En el redondeo por exceso hacemos lo contrario- aproximamos un número al siguiente número entero mayor o igual al número. Así por ejemplo, \(\lceil 11.27 \rceil=12\), \(\lceil -1.7 \rceil=-1\). En la misma forma en que el redondeo por defecto nos aproxima un número hacia \(-\infty\), el redondeo por exceso nos aproxima el número hacia \(+\infty\). Nótese el uso de los símbolos matemáticos \(\lfloor \cdot \rfloor\) y \(\lceil \cdot \rceil\) para denotar el redondeo por defecto y por exceso respectivamente. Esta notación, según la cual el redondeo por defecto se denomina "piso" y el redondeo por exceso se denomina "techo" fue introducida por Keneth Iverson en 1962 y desde entonces es empleada por los matemáticos. También obsérvese que es posible redondear números negativos por cualquiera de estos procedimientos y esto lo aclaro porque en el medio maestro de Matemáticas I, sólo aparecen ejemplos de redondeo con números positivos. Adicionalmente, en los ejemplo hemos redondeado a las cifras de la unidad, pero es posible redondear a cualquier otra cifra significativa siguiendo la misma idea (decenas, centenas, décimas, centésimas, etc.). 

El redondeo por truncamiento es definido en el libro de Matemática I (Ver Módulo I, 1.5, p. 69) como un método de aproximación consistente en eliminar todas las cifras decimales (o en el caso general, eliminar todas las cifras después de la primera cifra significativa a la cual estamos redondeando). Dicho de manera criolla, estamos redondeando por truncamiento cuando "mochamos" todos los dígitos que sobran. Si reflexionan un poco sobre la operación de truncamiento, verán que siempre aproxima cualquier número hacia 0. Así por ejemplo, trunc(4.9)=4 y trunc(-4.2)=-4. Es posible también definir la operación de truncamiento en función de las operaciones de redondeo por defecto y por exceso que ya hemos definido. Se haría del siguiente modo: \(trunc(x)=signo(x)\cdot\lfloor|x|\rfloor=-signo(x)\cdot\lceil -|x| \rceil\) (piense en esta última equivalencia considerando algunos números como ejemplo y "enchufándolos" en las fórmulas anteriores).

Ahora bien, lo que en el medio maestro de Matemática I se conoce como redondeo es en realidad "redondeo de la mitad alejándose del 0". Veamos... 

Las formas de redondear propiamente dichas consisten en truncar el número si el dígito que sigue la cifra significativa es 0, 1, 2, 3 o 4 y redondear hacia \(+/- \infty\) (dependiendo del signo) si ese dígito es 6,7,8,9 o un 5 seguido de algunos otros dígitos distintos de cero. ¿Que se hace cuando la parte fraccionaria es exactamente igual a 0,5 (un 5 seguido de puros ceros)? Según el procedimiento de redondeo que se maneja en el libro de Matemática I (y el que conocemos comúnmente de toda la vida), debemos redondear hacia la siguiente cifra significativa, alejándonos de 0. Por eso se conoce a este método de redondeo como el "redondeo de la mitad alejándose del 0". Dicho sea de paso, otro nombre para este método de redondeo es el de "método de redondeo comercial" y es el que usa la función ROUND() o REDONDEAR() de Excel. Se tiene por ejemplo que REDONDEAR(6.5)=7, REDONDEAR(-8.7)=-9, REDONDEAR(-6.5)=-7 y REDONDEAR(-6.31)=-6.

Pero existe otro tipo de redondeo que plantea una regla distinta cuando la parte fraccionaria es exactamente igual a 0,5. Este es el "redondeo bancario", al cual se refería mi amigo el biólogo. Cuando la parte fraccionaria es 0,5; siempre redondeamos la cifra signifícativa hacia el siguiente número par mayor a la cifra o dejamos la cifra significativa sin cambiar si ya es un número par. El redondeo bancario es implementado en R mediante la función round(x) (y en la mayoría de los lenguajes de programación o paquetes de cómputos numércos o estadísticos "serios" - recuerden que yo no considero a Excel como un paquete de cómputos numérico "serio"). La normativa IEEE 754, el estándard IEC 60559 y la normativa técnica colombiana NTC 3711 (JIS Z 8401) contemplan este tipo de redondeo. 

Para facilitar la comparación de todos estos tipos de aproximación, he elaborado una tabla con algúnos ejemplos: 

x\(\lfloor x \rfloor\)\(\lceil x \rceil\)trunc(x)REDONDEAR(x)round(x)
1,512122
1,7612122
2,523232
2,5123233
3,2734333
-1,5-2-1-1-2-2
-1,76-2-1-1-2-2
-2,5-3-2-2-3-2
-2,51-3-2-2-3-3
-3,27-4-3-3-3-3

Según el artículo de Wikipedia, las aproximaciones por defecto y por exceso son sesgadas, en cambio, el método de redondeo comercial está libre de sesgo cuando los números a redondear son positivos o negativos con igual probabilidad, ya que trata valores positivos o negativos simétricamente. Sin embargo, el redondeo bancario es considerado como superior para series más generales de valores porque además de ser insesgado, distribuye la desviación de forma "más pareja", o por lo menos esto es lo que aduce un forista en como respuesta a una pregunta sobre el redondeo bancario publicada en Quora. Mientras leía todo esto cuando investigaba sobre el redondeo, se me ocurrió la idea de someter estas aseveraciones a un análisis estadístico utilizando un método conocido como simulación de Monte Carlo (en R, por supuesto).

Primeramente, genero varias series de números aleatorios distribuidos uniformemente de modo que en la primera serie tenga igual cantidad de números positivos que negativos. En la segunda serie tengo sólo números positivos y en la tercera, sólo números negativos. Las tres series consisten de una cantidad grande de valores (digamos 10000). Luego evalúo el valor absoluto del error (\(|valor-aproximación|\)), tomando los promedios y las desviaciones estándar para cada uno de los 5 tipos de redondeo (por defecto, por exceso, truncamiento, redondeo comercial y redondeo bancario). También consideré la diferencia de los promedios de cada una de las series de datos (sin redondear) y sus respectivos valores redondeados según cada uno de los 5 procedimientos de redondeo. Veamos que resulta de todo esto... 

Método de redondeoSerie A (igual cantidad de + y -)Serie B (más + que -)Serie C (más - que +)
Media ErrorDesv. ErrorDif. promediosMedia ErrorDesv. ErrorDif. promediosMedia ErrorDesv. ErrorDif. promedios
piso0.4486430.28761260.4486430.4493770.28767630.4493770.4506150.28717630.450615
techo0.4506170.2879581-0.4506170.4498630.2877614-0.4498630.4494550.2869744-0.449455
truncamiento0.4496090.28778340.0003830.4500150.28778780.2246070.4489590.2868866-0.225245
redondeo comercial0.2493030.15002980.0000730.2494030.1500695-0.0243430.2503310.15024620.024885
redondeo bancario0.2493030.15002980.0005630.2494030.15006950.0006770.2503310.1502462-0.000335

Según esta tabla de resultados, los métodos de redondeo comercial y bancario son consistentemente mejores respecto a la aproximación por defecto (piso), por exceso (techo) o por truncamiento en cuanto a los promedios del error absoluto (las diferencias entre los valores originales y los aproximados). No se observan diferencias significativas en cuanto a los errores absolutos y las aproximaciones por defecto, exceso y truncamiento (los entendidos en inferencia estadística pueden construir los contrastes de hipótesis usando la información de las medias y desviaciones estándar muestrales para un tamaño de muestra igual a 100000). Sin embargo, cuando consideramos la diferencia del promedio de una serie de datos respecto a al promedio de la misma serie de valores aproximados mediante los 5 métodos de aproximación tratados, observamos que el redondeo comercial es ligeramente superior al bancario sólo cuando la serie de datos incluye igual proporción de valores positivos y negativos. Cuando una serie de valores tiene predominancia de valores positivos o negativos, que es el caso más común, es definitivamente preferible utilizar el método de redondeo bancario, a pesar de que a primera vista parece más complicado por la regla de redondear "hacia el número par más cercano o superior". De esta forma comprobé que mi amigo el biólogo tenía razón.

Bibliografía

Calle Trujillo, G. (sf). REGLAS PARA CALCULOS APROXIMADOS Y REDONDEO DE NÚMEROS. [Recuperado 22/07/2016 desde www.utp.edu.co/~gcalle/Contenidos/REDONDEO.htm].
Escobar, B, Lameda, A. Orellana, M. Marquez, L, Chacón, R. y Rivas, S. (1998). Matemática I - Módulo I. Caracas: Universidad Nacional Abierta.
Floor and ceiling functions. (2016, julio 21). En Wikipedia, The Free Encyclopedia. [Recuperado 22/07/2016 desde https://en.wikipedia.org/w/index.php?title=Floor_and_ceiling_functions].
R DEVELOPMENT CORE TEAM (2016). R: A Language and Environment for Statistical Computing. R Foundation for Statistical Computing, Vienna, Austria. ISBN 3-900051-07-0. http://www.R-project.org.
Rounding. (2016, junio 21). En Wikipedia, The Free Encyclopedia. [Recuperado 22/07/2016 desde https://en.wikipedia.org/w/index.php?title=Rounding].

Si te gustó o te pareció útil este contenido, compártelo en las redes sociales y dale tu voto positivo en el botón "me gusta" de G+, para que otros puedan encontrar el contenido también.