Algoritmos computacionales basados en la naturaleza

algoritmos computacionales basados en la naturaleza

La vida diaria actual presenta un sin número de problemas o situaciones que requieren soluciones a corto, mediano y largo plazo; desde una operación a mano para conocer el producto en una multiplicación, hasta el cálculo que realiza un GPS en tiempo y distancia para llegar de un punto a otro. Pues, todos los cálculos de este tipo son realizados por los llamados algoritmos.

En sí, un algoritmo es un conjunto de instrucciones finito, con reglas ordenadas y definidas que busca llegar desde un estado inicial a un estado final, para así resolver un problema. No obstante, en el mundo moderno los algoritmos hacen uso casi absoluto de la computación, siendo la ciencia que le permite ser más eficiente y le da el software y hardware como herramientas principales.

Ahora, los problemas combinatorios son los más complejos de resolver al tener varias soluciones y siendo unas más viables que otras. Para esto, creadores de algoritmos computacionales han basado su trabajo en la naturaleza misma, tratando de imitar el comportamiento de las hormigas, abejas y hasta la misma ciencia de la genética.

Inspiración natural para algoritmos más complejos

  • Ant Colony Optimization (Colonias de hormigas): Iniciando, este tipo de algoritmo busca imitar el comportamiento de las hormigas a la hora de dar solución a un problema, enfatizando la estrategia y el soporte grupal por encima del individual para resolverlo. Sin que cada parte por separado sepa en demasiado detalle lo que se quiere lograr.

Por ejemplo, las hormigas se comunican entre sí mediante feromonas para decirle a las otras donde está la comida y cuál es el camino más corto para ir y regresas, enfatizando el logro de conseguir alimento como propósito principal y la superación de obstáculos.

  • Genetic Algorithms (Algoritmos genéticos): En detalle, el algoritmo genético busca realizar la tarea de la evolución en las especies, siendo los individuos que se adaptan los que tienen más probabilidades de sobrevivir y cruzarse con otros similares, creando individuos con características cruzadas.

También, se enfatiza la aplicación de la solución de un problema por un individuo a toda la generación siguiente, así como también se permiten cambios aleatorios entre la muestra o población.

  • Artificial Neural Networks (Redes neuronales artificiales): Por último, el algoritmo neuronal es uno de los más novedosos de la actualidad, en el cual se busca imitar el comportamiento del cerebro y las neuronas, así como su capacidad de aprendizaje. Por ejemplo, su creación está destinada a hardware y software de inteligencia artificial.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *