17/10/17

¿Que es un Algoritmo? En la enseñanza de la matematicas.


Un algoritmo es una secuencia lineal de acciones que deben ser ejecutadas”. Utilizar el teléfono, por ejemplo, responde a este esquema: descolgar el auricular, esperar el tono, marcar, etc. Los algoritmos son procedimientos que resuelven un determinado problema matemático. Se caracterizan fundamentalmente por describir una secuencia lineal de instrucciones de forma que cumpliendo etapa tras etapa se llegue a la solución requerida (Hierber y Lefevre, 1986)


Si un problema es resoluble algorítmicamente, existen distintos algoritmos Que lo resuelven Utilización de ábacos ( yupana incaica, Suan- pan Chino, Soban Japonés) La multiplicación basada en el conocimiento de la suma doble y de la Mitad La regleta de Neper, que reducen la multiplicación a la suma Las maquinas de Pascal.

Para que hagamos esto mucho más extenso, revisemos la historia: 
Entendemos por algoritmo un procedimiento seguro y mecánico que logra un cierto resultado, especialmente en matemáticas y en informática; el concepto es también aplicable en otros campos, como la economía, la ingeniería y, según veremos, incluso la biología. El término 'algoritmo' viene, a través de varias traducciones y corrupciones, del nombre del matemático persa Mûusâ al-Khowârizm, cuyo libro sobre procedimientos aritméticos, escrito por allá del año 835, fue traducido al latín en el siglo XII. El uso de la palabra en el sentido explicado ha tenido vigencia por varios siglos; asciende a mayor notoriedad, sin embargo, en nuestro tiempo, gracias a la obra metamatemática(1) de pensadores como Hilbert, Gödel, Church y Turing, que revolucionaron las ciencias matemáticas durante el primer tercio del siglo XX. La transferencia del concepto de la matemática a la informática ocurrió gracias a la obra del último de estos distinguidos matemáticos, quien propuso a sus colegas definir 'algoritmo' como lo que puede hacer una máquina descrita por él en términos muy abstractos –que por ello mismo puede representar muy distintas configuraciones– y que ahora lleva su nombre: máquina Turing(a). De acuerdo con esta propuesta suya, inmediatamente aceptada por los demás matemáticos, quedó establecido que algo es un algoritmo si, y solo si, se trata de un proceso con las siguientes características: 

1. Sus pasos constituyen una secuencia finita, están claramente especificados y son independientes unos de los otros (digitalidad). 

2. Un mismo agente (no necesariamente humano) determina qué es lo que corresponde hacer en cada momento (secuencialidad y control). 

3. El agente es capaz de recabar la descripción operacional de la secuencia así como de almacenar resultados en el camino (interpretación y memoria). 

4. La ejecución de una secuencia específica produce siempre los mismos resultados en cada paso para cada conjunto de datos iniciales (determinismo). 

5. Finalmente, la secuencia concluye con un resultado final (terminación). 

La penúltima condición prohíbe al agente actuar en una forma probabilística o de manera arbitraria, por ejemplo tirando una moneda al aire para que eso decida si ejecuta o no la próxima instrucción. 

El último requisito es obligatorio solamente en los casos en que se espera obtener un resultado concreto, como el valor de una función (por ejemplo dividir 7 834 entre 555, con un determinado número de decimales) o la preparación de un cierto número de raciones de un plato de comida(2) o de una droga sintética. Sin embargo, se admite la existencia de algoritmos repetitivos que nunca terminen, cuando lo que se trata de provocar con el proceso, de manera constante o intermitente, no es un resultado o valor sino algún efecto colateral. Por ejemplo, el algoritmo que hace posible un marcapasos no debe terminar pues su función es regular de manera permanente el latido de un corazón deficiente. El de un sistema operativo como Windows o Linux no debe hacerlo tampoco, pues su justificación es sustentar el funcionamiento indefinido de otros programas dentro de un ambiente electrónico. A estos algoritmos que en principio no deben terminar se los conoce como algoritmos irregulares o parciales. 

Antes del advenimiento de las computadoras digitales, los algoritmos eran del dominio preferente de los matemáticos, ya que para calcular una función cualquiera se necesitaba un algoritmo. Pero una vez que quedó equiparado el concepto de algoritmo con la operación de una máquina Turing, no transcurrirían dos decenios antes de que los ingenieros eléctricos construyeran máquinas concretas que dieran cuerpo a esa abstracción. Son las antecesoras de las que hoy pueblan nuestros escritorios en forma de computadoras personales como la que me sirve para componer este ensayo. Actualmente podemos equiparar "algoritmo" con un amplio género de objetos que cubre programas tan diversos como los de nuestras hojas de cálculo, procesadores de texto, bases de datos, calendarios electrónicos y toda suerte de juegos digitales; y no olvidar los sistemas operativos, que permiten a las computadoras –sin que paremos mientes en su presencia– ejecutar cualquiera de los programas mencionados. 

Es importante señalar que el concepto de algoritmo no incluye en sí la especificación de algún material preciso del que deban estar construidos

En realidad, no son construidos de ningún material particular, salvo el de que están hechos los sueños: nuestras ideas. Pero para tener efecto en el mundo deben "encarnarse" de alguna manera. Es ya proverbial la diferencia entre hardware (alambrado) y software (programa). Esta diferencia es la que contrasta una computadora –un algoritmo que ejecuta funciones muy generales– con el programa específico que corre en ella y la transforma en una máquina Turing mucho más concreta, por ejemplo, un procesador de texto o una hoja de cálculo. Los lectores más viejos recordarán que en los años setenta se vendían unos "procesadores de palabras" que no eran software sino hardware, especie de máquinas de escribir muy caras que nos permitían hacer maravillas en la preparación de documentos. Se trataba de hecho de algoritmos no escritos en información electromagnética que uno pudiera "bajar" a una computadora, sino grabados directamente en alambre, es decir en circuitos eléctricos. 


Se trataba de algoritmos duros (hard) no suaves (soft). Esta diferencia tan obvia no les quita el carácter de algoritmo a ninguno de los dos términos de la comparación: tanto el hardware como el software lo son. Esto es importante porque prepara nuestra mente para entender cómo puede ser posible que un algoritmo pueda "encarnarse" de muchas maneras diferentes. Y la manera que más nos interesa en esta obra es precisamente la encarnación en carne, es decir en materia viva, puesto que hemos llegado a concluir, con ayuda del filósofo estadounidense Daniel Dennett, que la evolución por selección natural es un algoritmo, el más antiguo y trascendente de todos.

¡SUSCRÍBETE AL BLOG!