Historia de los algoritmos

Solo disponible en BuenasTareas
  • Páginas : 14 (3324 palabras )
  • Descarga(s) : 0
  • Publicado : 24 de mayo de 2011
Leer documento completo
Vista previa del texto
Introducción.
Bueno en este tema hablaremos sobre lo que es un algoritmo el cual es un conjunto pre-escrito de instrucciones o reglas bien definidas, ordenadas y finitas que permite realizar una actividad mediante pasos sucesivos que no generen dudas a quien lo ejecute. Dados un estado inicial y una entrada, siguiendo los pasos sucesivos se llega a un estado final y se obtiene una solución. Portanto, un algoritmo es el conjunto de operaciones y procedimientos que deben seguirse para resolver un problema. La palabra "algoritmo" deriva del nombre latinizado del gran matemático árabe Mohamed Ibn Moussa Al Kow Rizmi, el cual escribió sobre entre los años 800 y 825 su obra Quitab Al Jabr Al Mugabala, donde se recogía el sistema de numeración hindú y el concepto del cero. Fue Fibonacci, elque tradujo su obra al latín y la inició con las palabras: Algoritmi dicit.

Historia de los algoritmos
El origen del término "algoritmo" se remonta al siglo IX y se le atribuye su invención al matemático árabe Abu Ja’far Muhammad ibn Musa al-Khwarizmi
La palabra algoritmo se refería originalmente sólo a las reglas de la aritmética con números arábigos. Recién en el siglo XVIII se expandió susignificado para abarcar en su definición a toda clase de procedimientos utilizados con el propósito de resolver problemas o realizar determinadas tareas.
El primer caso de un algoritmo escrito para una computadora se considera que son las notas escritas por Ada Byron en 1842 para el motor analítico de Charles Babbage. Por esta razón, se considera a Ada Byron como la primera programadora de lahistoria. Sin embargo, dado que Babbage nunca terminó su motor analítico, el algoritmo jamás llegó a implementarse.

Clasificación de los Algoritmos
Una forma de clasificar los algoritmos consiste en diferenciarlos por su metodología de diseño. A continuación se presenta una síntesis de las metodologías más comunes, aplicables cada una a diferentes clases de problemas:
• Fuerza bruta: losalgoritmos de fuerza bruta resuelven el problema con la estrategia más obvia de solución, que no siempre es la mejor según el número de operaciones que se requiere.
• Divide y reinarás: esta metodología divide las instancias del problema a resolver en instancias cada vez más pequeñas, usualmente en forma recursiva, hasta llegar a una instancia en que el problema es resoluble en forma trivial o con unaspocas instrucciones.
• Programación dinámica: cuando un problema presenta una subestructura óptima es decir, cuando la solución óptima de un problema se obtiene a partir de las soluciones óptimas de sus sub-problemas, se encuentra la solución resolviendo primero los sub-problemas más sencillos y luego utilizando esas sub-soluciones para resolver problemas incrementalmente difíciles.
•Programación lineal: para resolver un problema utilizando programación lineal, se plantea una serie de inecuaciones y luego se busca maximizar (o minimizar) las variables, respetando las inecuaciones. Muchos problemas pueden plantearse en la forma de un conjunto de inecuaciones, para luego resolverlos utilizando un algoritmo genérico, como por ejemplo, el denominado método Simplex (en la sección deServicios al lector se detallan sitios donde obtener más información sobre este método).
• Búsqueda y enumeración: muchos problemas (como por ejemplo, un juego de ajedrez) pueden modelarse con grafos y resolverse a partir de un algoritmo de exploración del grafo. Tal algoritmo especificará las reglas para moverse en el grafo en busca de la solución al problema. Esta categoría incluye también algoritmosde backtracking (vuelta atrás), los cuales van ensayando distintos caminos con posibles soluciones y vuelven atrás cuando no las encuentran. Por ejemplo, para encontrar la salida en un laberinto, cada vez que se llega al final
de un camino se vuelve atrás hasta la última bifurcación, para probar con las distintas alternativas de esa bifurcación.

• Algoritmos heurísticos: En computación,...
tracking img