En realidad, ¿qué es exactamente un algoritmo?

¡Quién lo hubiera dicho hace tan sólo unos años! Para solaz de Mohammed Ibn Musa-al-Khwarizmi (matemático creador del término), “algoritmo” se ha convertido en una de las palabras de moda, gracias sobre todo al auge de la inteligencia artificial.

Algoritmos que nos sugieren una posible pareja, algoritmos que invierten en bolsa, algoritmos que predicen el crimen, algoritmos que ordenan nuestras búsquedas en Internet… Los algoritmos están por todos lados, incluso aunque no los hayamos percibido. Orientan nuestra economía, nuestras compras, e incluso nuestra forma de pensar.

Pero, ¿qué es exactamente un algoritmo?

En realidad, un algoritmo es algo más sencillo, un mecanismo ciego y sin voluntad, pero que, sí está cambiando el mundo de forma definitiva y merece la máxima atención, no se nos vaya a ir el asunto de las manos.

¿Qué es un algoritmo? Simplemente una serie de instrucciones sencillas que se llevan a cabo para solventar un problema. La regla de multiplicar que aprendimos en el colegio y que permite sacar el producto de dos números de varias cifras, con papel y lápiz, es un sencillo algoritmo.

“Es importante notar que el algoritmo tiene que ser finito y que ejecuta las instrucciones de manera sistemática, es decir, que es ciego ante lo que está haciendo, y que los pasos con los que opera son elementales”.

¿Y qué significa exactamente esto?

Es un conjunto ordenado de operaciones, lo que quiere decir qué es una cadena de instrucciones precisas que deben seguirse por orden.

Una buena forma de imaginarlo es a través de una receta de cocina, que no deja de ser un algoritmo sencillo. En cualquiera de ellas, se nos describe un procedimiento concreto y ordenado (“Primero pon a calentar media olla de agua. Después échale una pizca de sal. Después trocea el pimiento, quitando las semillas y los nervios…”) , de forma que cada una de esas operaciones son las que forman el algoritmo.

Así, el algoritmo tendrá la forma de un diagrama de flujo.

Su objetivo es resolver un problema, lo que significa que tiene un objetivo delimitado.

Esta es la parte que complica un poco las cosas. Cuando escribimos un algoritmo, lo hacemos para que produzca un resultado. No se trata tan sólo de escribir un bonito conjunto de órdenes que no conduzcan a ninguna parte, sino que se hace racionalmente y con un objeto determinado. Lo que ocurre es que la realidad siempre complica las cosas. Si, por ejemplo, creamos un algoritmo diseñado para actuar en la vida real, las órdenes que incluya el algoritmo deberán incluir instrucciones que tengan en cuenta las diversas situaciones que podamos encontrarnos.

Así la forma del diagrama de flujo que forme el algoritmo se convertirá en un enorme “árbol” de instrucciones que, según su complejidad, podrá incluso ofrecernos resultados sorprendentes que nunca habríamos podido prever.

A pesar de la longevidad de los algoritmos, y de la ya madurez de las computadoras, la palabra algoritmo se ha puesto de moda en los últimos años. ¿A qué se debe? “Los ordenadores pueden calcular mucho más rápido que un cerebro humano y desde la aparición de internet hay un salto y se están llegando a cosas que parecían imposibles”.

Uno de los ejemplos más llamativos de cómo pueden funcionar los algoritmos sin la supervisión humana es el del llamado Flash Crack de 6 de mayo de 2010. En la Bolsa los algoritmos trabajan realizando transacciones a velocidades inimaginables para un cerebro humano, en cuestión de microsegundos, para conseguir la máxima rentabilidad. Es el High Frecuency Trading. Ese día de 2010, la interacción de las operaciones de los algoritmos produjo un desplome de 1.000 puntos, en torno a un 9%, sin explicación aparente, que se recuperó a los pocos minutos, pero que dio una idea de los problemas que se pueden originar. “Casos como estos ocurren cuando los algoritmos se ponen a competir y nadie tiene la imagen del proceso completo, lo que se llama decoherencia”, por eso los algoritmos deben funcionar bajo supervisión humana.

“Nadie se pone de acuerdo en lo que pasó en la Bolsa, nadie dio la orden, nadie quería eso, nadie tenía realmente control sobre lo que realmente pasaba”, dice Kevin Slavin, profesor del MIT Media Lab, en su célebre charla TED Cómo los algoritmos configuran nuestro mundo. Otro caso interesante es el del manual The making of a fly, de Peter Lawrence, que trata sobre la genética de moscas como la Drosophila melanogaster, muy utilizada en laboratorios biológicos. Lo extraño de este libro, por lo demás muy normal, es que, en 2011, su precio en Amazon alcanzó primero la cifra de 1.700 millones dólares para luego subir, unas horas más tarde, a casi 23.700 millones dólares (más gastos de envío). Todo se debía al funcionamiento de un algoritmo que fijaba los precios de manera automática. “Nadie compraba ni vendía nada, ¿qué pasaba?”, dice Slavin. “Tanto aquí como en Wall Street vemos cómo algoritmos en conflicto, trabados entre sí, crean bucles sin ningún tipo de supervisión humana”.

Algunos algoritmos más famosos (e influyentes) que una estrella de rock
Aunque todo esto te suene formal, e incluso aburrido, el ingenio de programadores de todo el mundo ha conseguido que algunos algoritmos se hayan hecho famosos como estrellas de cine y más influyentes que cualquier político. Conozcamos algunos.

PageRank, de Google

Uno de los más utilizados del mundo. Se trata del conjunto de algoritmos que utiliza Google para determinar la importancia de los documentos indexados por su motor de búsqueda.

Dicho de otro modo, cuando realizas una búsqueda en Google, es uno de los elementos que decide el orden en el que se te muestran los resultados.

El algoritmo del Timeline de Facebook.

Se trata de otro algoritmo que influye en nuestra vida mucho más de lo que creemos.

El conjunto de algoritmos que alimentan el Timeline de Facebook determina los contenidos que se nos muestran en el espacio más frecuentado de la red social. Así, en base a una serie de parámetros (gustos personales, respuesta a contenidos anteriores, etc), los algoritmos deciden cuál es contenido que nos va a mostrar la red social y en qué orden lo hará.

Algoritmos de Trading de Alta Frecuencia.

Mueven miles de millones de dólares en los mercados cada día. Se trata de algoritmos utilizados por muchas de las más importantes entidades financieras del mundo, que lanzan órdenes al mercado en función del beneficio que éstos prevén obtener, según las condiciones de mercado dadas en cada momento.

Hasta tal punto son relevantes que se considera que, en la actualidad, este tipo de algoritmos dominan los mercados, siendo mucho más influyentes que los operadores humanos.

Algoritmo de Round Robin.

Es probable que este algoritmo sea mucho menos conocido que los anteriores, pero es muy utilizado en el ámbito informático. ¿Te has preguntado alguna vez cómo determina un ordenador sus prioridades cuando se ve obligado a realizar varias tareas a la vez? Imagina, por ejemplo, que tienes abierto al mismo tiempo un procesador de texto, una hoja de cálculo y un navegador web. A grandes rasgos, puede decirse que este algoritmo determina las porciones de tiempo que la CPU de un ordenador dedicará a realizar cada uno de los procesos que estén en curso.

¿Cuál es el futuro de los algoritmos?

Más que pensar en el futuro de los algoritmos, algunas personas afirmarían que el futuro les pertenece.

La algoritmia está, de hecho, en el corazón de tecnologías potencialmente tan poderosas como la inteligencia artificial. Ya en la actualidad, los algoritmos son la base de las tecnologías de aprendizaje automático, o machine learning, que nos sorprenden cada día con nuevas habilidades.
Hoy, los algoritmos se encuentran detrás de tecnologías del calado de los asistentes virtuales o los vehículos autónomos. Mañana… ¿quién sabe?

  Estos son todos los lenguajes de programación que existen hasta la actualidad.

Descargar este artículo en PDF

Lo sentimos, esta opción solo está disponible para los socios. Más información de nuestro grupo de socios.


Ernesto Mota on EmailErnesto Mota on FacebookErnesto Mota on LinkedinErnesto Mota on Twitter
Ernesto Mota
Nací en el d.f., sigo siendo defeño, hoy radico en la hermosa ciudad de Cuernavaca, Morelos, soy Ing. en Sistemas computacionales, con un posgrado en Tecnologías de información, Tecnólogo es mi categoría laboral, y mi linea de investigación es la realidad aumentada aplicada a nuevos entornos de aprendizaje.

Déjanos un comentario:

Deja un comentario

Necesitas un Sitio Web