Sí… ¡de cojón!

Mayo 8, 2008

La naturaleza, un algoritmo de fuerza bruta

Archivado en: Algoritmia, Filosofia, Humanidad — programmingperl @ 23:07 pm

Conocido es el poder de los algoritmos de fuerza bruta, son capaces de encontrar la solución a cualquier problema por complicado que sea. Su fundamento es muy simple, probar todas las posibles combinaciones, recorrer todos los caminos hasta dar con la situación que es igual que la solución. No le importa iniciar caminos malos o muy malos, al llegar a su final y ver que su destino no es la solución, se iniciará otro camino en busca del que conduzca a ella.

Con un algoritmo de fuerza bruta se puede salir de un laberinto, descifrar una contraseña, saltar un captcha o encontrar a Wally.

El pero es el coste en tiempo, un algoritmo de fuerza bruta se toma todo el tiempo que considera necesario para explorar todos los caminos, y este tiempo es proporcional a la magnitud del problema a resolver. Por ello no podemos encontrar la combinación del Euromillones de la semana que viene, el algoritmo tardaría unos pocos miles de años. La encontraría, pero sería demasiado tarde para ir a sellar el boleto.

¿Y si el tiempo es infinito?, eso debió aparecer en el análisis del programador de la Naturaleza para diseñar el mayor algoritmo de fuerza bruta que se ha programado nunca. Los átomos, las moléculas, los genes se mezclarán de forma aleatoria, explorando lentamente todas las combinaciones.

¿Estará el algoritmo en este momento recorriendo un camino equivocado?

4 comentarios »

  1. Brillante Néstor !
    Yo necesitaría un algoritmo de fuerza bruta para liquidar la hipoteca pero me da que ni en un millón de años. A ver si se la cuelo a algún sobrino despistao :-)

    comentario por olagato — Mayo 9, 2008 @ 22:17 pm | Responder

  2. Algoritmos de fuerza bruta para cata de vinos? Requisito no funcional: sólo tengo un hígado.

    comentario por nosoyamedio — Mayo 10, 2008 @ 12:11 pm | Responder

  3. Hola! Gracias por esta información. Hace aproximadamente en el libro de Cómo Programar Java de Deitel & Deitel séptima edición, proponen varios ejercicios relacionados con métodos de fuerza bruta. Como por ejemeplo: Triples de Pitágoras, Paseo del Caballo (enigma propuesto por Euler), entre otros.

    Es interesante este tema de Algoritmos de Fuerza Bruta, sobre-todo cuando de una u otra manera queremos hallar la(s) solución(es) a un problema dado.

    ¡Hasta pronto!

    comentario por Fhernd — Abril 21, 2009 @ 17:04 pm | Responder

  4. Fàcil y clara manera de exponer lo que son los algoritmos de fuerza bruta. Si algo me atrevo a proponer es que se agreguen uno o dos ejemplos de aplicaciòn, por ejemplo, ¿cuantas rutas de posible soluciòn se pueden obtener para el problema de conectar los 9 puntos en un sistema de ejes cartesianos (0,0), (1,0), (2,0), (1,0), (1,1), (1,2), (2,0), (2,1) y (2,2) con 4 segmentos de una misma recta? (un segmento se diferencia de otro por tener diferentes direcciones), u otros ejemplos de algoritmos clàsicos y/o notables como el de Euclides, el de los puentes de Kônisbergh, el de las siete reinas, Etc. ¡Felicitaciones!

    comentario por Mike — Septiembre 19, 2009 @ 17:14 pm | Responder


Canal RSS de los comentarios de la entrada. URI para TrackBack.

Deja un comentario

Blog de WordPress.com.