El mejor regalo para estas navidades. No para ti, sino para todos los que viven contigo y que no entienden porqué pasas tantas horas al día programando.

El libro Algorithms to Live by: The Computer Science of Human Decisions” busca explicar como algoritmos habituales en informática pueden ser también muy útiles en el  mundo real.

Como en el mundo informático, nuestras vidas también tiene grandes limitaciones temporales y espaciales con lo que utilizar algoritmos exponenciales para realizar nuestras tareas diarias (ordenar la ropa, escoger un restaurante, contratar a alguien) puede tener un impacto nefasto en nuestra vida “real”.

Por ejemplo, ¿sabías que la mejor forma de emparejar tus calcetines es escogiendo primero una característica (color, tamaño, patrón,…) y ordenarlos en cubos (buckets) en función de su “valor” para ella y luego repetir el proceso recursivamente con las otras? ¿O que, en muchas ocasiones, la mejor opción es simplemente no ordenar nada? En informática, el objetivo de ordenar una estructura de datos es perder tiempo “ahora” para ir más rápido buscando la información que necesitas “luego”. Si eres muy rápido encontrando lo que buscas en tu caos particular, de hecho ordenar será una pérdida de tiempo que no vas a recuperar luego. Otra cosa, es que tu  madre o pareja, te “compre” esta excusa la próxima vez que se queje de como tienes la habitación.

El libro cubre muchos otros ejemplos que muestran hasta que punto nuestras decisiones  cotidianas se parecen a problemas típicos y bien estudiados en informática. Dejadme daros otro ejemplo. Problemas tan comunes como la búsqueda de piso, el salir con una persona o el contratar un nuevo empleado pertenencen todos ellos a la categoría de problemas conocido como optimal stopping. En todos ellos tenemos que decidir si nos quedamos con la opción que tenemos delante (el piso que estamos viendo, la cita de hoy o el candidato que estamos entrevistamos) o renunciamos a ella con la esperanza de qué la opción futura sea mejor. Por cierto, cuando el número de opciones es finita (sabemos el número de candidatos que se han presentado o no queremos buscar piso durante más de X días), estamos delante el caso particular conocido como “el problema de la secretaria” (o secretario, claro) con una solución muy simple: descarta el primer 37% de los candidatos y contrata al primer candidato que aparezca que sea mejor que los que hayas visto en ese 37%.

El mejor algoritmo para encontrar tu pareja ideal: descarta el primer 37% de posibles parejas. Quédate con la primera que venga a continuación y que sea mejor que el 37% inicial (otra cosa es que él/ella acepte, claro) Click To Tweet

Ah, y si consigues que algún familiar se interese por conocer con un poco más de detalle como funcionan algunos de los algoritmos mencionados en el libro, siempre puedes explicár  los algoritmos como si estuvieras construyendo muebles de IKEA o visualizar su ejecución animada.