La palabra algoritmo aparece cada día más a menudo en nuestras conversaciones. Hablamos del algoritmo de Google, Instagram o Netflix, aparece en los titulares de noticias relacionadas con la tecnología y la sociedad, se producen documentales sobre este término, se cuestiona el peso que tienen dentro de nuestras vidas y el control que pueden ejercer sobre nuestras decisiones… Pero, ¿sabemos realmente qué es un algoritmo? ¿Desde cuándo existen y cómo nos afectan?
Un algoritmo es un conjunto de reglas o instrucciones que sirven para resolver un problema en un número finito de pasos. Eso significa que vivimos rodeados de algoritmos, más allá de las pantallas y los ordenadores, ya que hay muchas actividades que hacemos diariamente y que también son un conjunto de pasos que nos permiten realizar tareas como cocinar siguiendo una receta o poner una lavadora teniendo en cuenta sus instrucciones de uso y los programas que tiene. Sin embargo, normalmente cuando pensamos en algoritmos solo los relacionamos con la programación y sobre todo con las matemáticas, un campo en el que han estado presentes desde la Antigüedad, mucho antes de que tuvieran este nombre.
Los egipcios y los babilonios ya usaban algoritmos para resolver operaciones matemáticas, como multiplicaciones o raíces cuadradas, aunque en el fondo no eran conscientes de hacerlo porque no existía una teoría algorítmica. El término “algoritmo” aparece a partir de la traducción al latín de Al-Khwārizmī, nombre de un matemático y astrónomo árabe que escribió diferentes libros sobre el sistema numérico hindú y sobre álgebra. El término empieza a usarse tal y como lo conocemos en el siglo XVIII, y en 1842 la famosa matemática Ada Lovelace fue la primera persona que escribió un algoritmo para ordenador, razón por la que se le considera la primera programadora informática.
Existen diferentes tipos de algoritmos, pero todos tienen tres partes: la entrada, que es toda la información que le damos; el proceso, que son los cálculos necesarios para procesar la información y obtener una solución final, y la salida o resultado de la operación. Las máquinas algorítmicas, como los ordenadores, pueden leer los algoritmos que se han codificado en ellas mediante un lenguaje que pueden entender. Utilizando los lenguajes de programación, podemos transformar los algoritmos en un conjunto de instrucciones, es decir, programarlos dentro del ordenador o de la máquina correspondiente para que ésta pueda descifrarlos y realizar las diferentes tareas para las que ha sido programada.
Los algoritmos de Google, Netflix o Instagram, que citábamos como ejemplos en el primer párrafo, son capaces de recoger muchísima información sobre los usuarios, procesarla ejecutando numerosas operaciones predeterminadas y, finalmente, utilizarla para diferentes tareas (obtener un resultado), ya sea mostrar unos resultados para una búsqueda o recomendar un contenido concreto a un usuario determinado.