Está en la página 1de 13

Historia de los Algoritmos

Alumno:

Profesor:

Fundación Universitaria Juan de Castellanos


Facultad de Ingeniería

Ingeniería de Sistemas
Tunja
2024
Introducción

En el mundo en el que vivimos, nos vemos rodeados de tecnología, hoy en día esa tecnología

para que funcione de manera rápida y eficaz requiere de un algoritmo, y un algoritmo es un papel

fundamental para la tecnología, pero no solo para esta, sino para nuestra vida cotidiana ya que un

algoritmo es una serie de pasos o instrucciones que se deben seguir para poder completar una

tarea.

Este informe tiene como objetivo explorar o estudiar el mundo de los algoritmos, partiendo desde

la antigüedad con la construcción de pirámides, con la aparición de los procesos matemáticos (ya

que un algoritmo la gran mayoría parte de procesos matemáticos), su impacto en la sociedad

actual y también viendo como estos han evolucionado con el pasar de los años y siendo una

herramienta esencial en campos como la inteligencia artificial, la criptografía entre otras.

Palabras clave: algoritmo, instrucciones, Inteligencia artificial, tecnología


3 Objetivos

3.1 Objetivo general

Investigar sobre la evolución histórica de los algoritmos, desde sus orígenes en la

antigüedad hasta la era moderna o era digital.

3.2 Objetivos específicos

 Describir los antecedentes históricos de los algoritmos, primeros métodos

matemáticos utilizados por civilizaciones antiguas.

 Analizar los puntos clave de la evolución de los algoritmos con el paso del tiempo

 Demostrar o describir el impacto de los algoritmos en la sociedad contemporánea,

explorando su aplicación de diversos campos


5 Marco teórico

En el mundo de la informática, la base de los programas creados son los algoritmos sobre los

cuales se construye la mayoría de la innovación y los progresos de la tecnología. Desde la antigüedad

siguiendo una serie detallada de pasos para poder lograr o llegar a la solución del problema hasta la

creación de algoritmos de recomendación de plataformas o algoritmos simplemente para cifrar y descifrar

mensajes. A su vez la página web (DataScientest) “Un algoritmo es en realidad un procedimiento por

etapas. Es un conjunto de reglas que hay que seguir para realizar una tarea o resolver un problema.”.

como se mencionaba anteriormente los algoritmos están desde hace millones de años, los seres humanos

utilizábamos algoritmos pero no en la forma en que los conocemos hoy en día, en la antigüedad un

algoritmo como se mencionaba anteriormente puede ser en resolver un ejercicio matemático (esto

tomando en cuenta que la mayoría de algoritmos creados hoy en día son de forma matemática ) se requiere

hacer una serie de pasos para poder llegar a una solución. Entre más simplificado y menos pasos tenga el

algoritmo va a ser mejor.

La importancia de los algoritmos va mucho más allá de la tecnología, y se extiende a múltiples

aspectos de la cotidianidad y la vida humana como lo son la resolución de problemas. Según la pagina

web (CES LOPE DE VEGA)” El algoritmo permite estudiar las necesidades del problema para después

crear una lista de pasos que deberán ser seguidos y alcanzar así la solución deseada” En base a lo

anterior los algoritmos permiten automatizar procesos y tareas repetitivas, lo que no ahorraría tiempo y

esfuerzo. Los algoritmos también tienen un enfoque sistemático para la toma de decisiones, los algoritmos

de optimización y análisis de datos nos ayudan a evaluar opciones, predecir resultados y también para la

toma de decisiones informadas.


Las características de los Algoritmos son atributos que definen su naturaleza y los distinguen

como conjuntos de instrucciones o reglas precisas diseñadas para resolver un problema o tarea en

especifica. Algunas de estas características o elementos son

Precisión: Los algoritmos deben ser precisos y definir claramente los pasos necesarios para poder

alcanzar el resultado deseado. Cada paso debe ser muy especifico y no ambiguo, para evitar cualquier

interpretación errónea

Finitud: Un algoritmo debe ser ordenado y finito, esto significa que debe tener numero finitos de

pasos para completarse. Los algoritmos no pueden ser infinito ni entrar en bucles infinitos.

Efectividad: Cada algoritmo creado debe ser efectivo, lo que significa que debe ser capaz de

resolver el problema para el que diseñado en un determinado tiempo (entre menos sea el tiempo de

respuesta del algoritmo mucho mejor).

Concretos: Deben ofrecer una solución determinada para la situación o problemas planteados

(por eso antes de empezar a desarrollar un algoritmo tenemos que tener en cuenta y definir muy bien el

problema al que vamos a solucionar)

Adaptabilidad: Es muy importante que un algoritmo sea adaptable o flexible para manejar

diferentes situaciones o condiciones. Esto implica la capacidad del algoritmo a ajustarse a diferentes

tamaños de entrada o cambios en el entorno


En el mundo de la tecnología existen una gran variedad de algoritmos que fueron diseñados para

abordar una amplia gama de problemas. Como se menciona anteriormente cada tipo de algoritmo tiene su

propia estructura, comportamiento y aplicación única. Al comprender estos algoritmos, se puede elegir la

mejor herramienta para resolver un problema particular, teniendo en cuenta factores como la eficiencia, la

complejidad y los requerimientos que este necesita. Algunos tipos de algoritmos son:

Algoritmos de búsqueda

Búsqueda Lineal: Tambien es conocida como búsqueda secuencial, es un algoritmo simple y su

función es encontrar un valor en especifico dentro de un arreglo, este algortimo recorre cada elemento de

la lista secuencialmente, desde el principio el final, comparando cada elemento con el valor que se esta

buscando.

Búsqueda Binaria: Este algoritmo de búsqueda binaria es un algoritmo de búsqueda eficiente que

se utiliza para encontrar un elemento en una lista ordenada. La clave de la eficiencia de este algoritmo

reduce en el espacio de búsqueda a la mitad en cada caso.

Búsqueda en profundidad (DFS): Este es un tipo de algoritmo de búsqueda utilizado para

recorrer o buscar estructuras de datos como grafos o árboles. Primero comienza con un nodo inicial y lo

marca como visitado, después explora los nodos adyacentes no visitados, este va repitiendo el proceso

recursivamente desde ese nodo no visitado y finalmente el algoritmo termina cuando no hay mas nodos

adyacentes por explorar desde el nodo actual, retrocede al nodo anterior y continúa explorando desde ese

nodo. La DFS es implementada utilizando una pila esto para mantener un seguimiento de los nodos que

deben ser explorados, a medida que se van explorando los nodos se van marcando para evitar ciclos

finitos.
Algoritmos de ordenación

Ordenamiento de Burbuja: Este es un algoritmo de ordenamiento simple que funciona

recorriendo repetidamente la lista, comparando elementos adyacentes y cambiándolos de posición si están

en el orden incorrecto. Este proceso se repite hasta que no se requieran más intercambios.

Ordenamiento por inserción: Este algoritmo de ordenamiento recorre una lista de elementos y

en cada paso toma un elemento y lo inserta en la posición correcta dentro de la parte ya ordenada de la

lista, este tipo de algoritmo es muy simple y eficiente que funciona de manera similar a las cartas. Primero

comienza con una lista de elementos desordenado, después este algoritmo inicia un bucle que recorre

dicha lista comenzando desde el segundo elemento hasta el final, en cada interacción del bucle se

selecciona un elemento en orden descendente hasta encontrar la posición correcta en la lista ordenada y

este proceso se repite hasta que la lista quede ordenada, ahí ya acabaría nuestro bucle.

Ordenamiento por selección: Es un algoritmo simple que funciona seleccionando repetidamente

el elemento mas pequeño o mas grande dependiendo del ordenamiento que se desee hacer de una lista no

ordenada y colocándolo al principio hasta que la lista quede ordenada.

Quicksorft: Este es uno de los algoritmos de ordenamiento mas eficientes y mas utilizados en la

actualidad. Fue desarrollado por Tony Hoare en 1960 y es que básicamente este algoritmo divide una lista

no ordenada en dos sub-listas hasta que todas las sub-listas sean de longitud uno o cero lo que indicaría

que la lista ya esta ordena. Para poder lograr este proceso, el proceso de este algoritmo es elegir un

elemento de la lista llamado pivote (comúnmente se elige el primer elemento), después se reorganiza la

lista de manera que todos los elementos con valores menores que el pivote estén a su izquierda y todos los
elementos con valores mayores que el pivote estén a su derecha. Luego se repite el proceso de partición

recursivamente en las sublistas a la izquierda y derecha del pivote hasta que todas las sublistas sean de la

misma longitud uno o cero.

Algoritmo de grafos

Algoritmo Floy-Warshall: Este es un algoritmo de búsqueda de caminos mas cortos en grafos y

ponderados, fue diseñado por Robert Floyd y Stephen Warshall en la década de los 60s. este algoritmo

encuentra los caminos mas cortos entre todas las partes de vértices de un grafo, incluso si hay aristas de

peso negativo, siempre con la condición de que no haya ciclos negativos accesibles desde el vertice de

inicio.

Algoritmo de Kruskal: Este algoritmo se utiliza para encontrar el árbol de expansión mínimo de

un grafo ponderado y no dirigido. Este árbol de expansión mínimo es un subconjunto de aristas del grafo

que conecta todos los arboles con el costo mínimo posible sin formar algún ciclo.

Algoritmo de Dijkstra: Fue desarrollado por el científico informático holandés Edsger “.Dijkstra

en 1956 y se basa en la búsqueda de caminos mas cortos que se utiliza para poder encontrar el camino

menos tedioso de un nodo fuente dado a todos los demás nodos de un grafo dirigido ponderado con pesos

no negativos.

Estos son algunos ejemplos de los algoritmos mas famosos o mas usados hoy en día ya que hay

una gran cantidad de algoritmos.

Como se ha podido evidenciar, los algoritmos tienen una gran importancia desde la antigüedad y

con el paso del tiempo han tenido una amplia gama de aplicaciones en diversos campos no solo en la
informática, en la ciencia, la ingeniería, finanzas, medicina entre otros, pero los más comunes son en el

campo de la criptografía se les conoce como algoritmos criptográficos, “En criptografía, un algoritmo

criptográfico es un algoritmo que puede encriptar texto en lenguaje natura) para hacerlo ilegible, y para

que sea desencriptado con el fin de recuperar el texto original.” (mdn web docs, s/f). Los algoritmos de

cifrado pueden clasificarse en dos categorías principales que son los siguientes:

Cifrado Simétrico: Este tipo de cifrado, se utiliza la misma clave tanto para cifrar como para

descifrar datos. El emisor y el receptor deben compartir la misma clave de antemano

Cifrado Asimétrico (clave publica): En este tipo de cifrado se utilizan dos claves diferentes, una

clave publica y una privada. La clave publica se utiliza para cifrar datos, mientras que la clave privada se

utiliza para descifrarlos. Esto nos permite que cualquier persona pueda cifrar datos utilizando la clave

publica, pero solo el destinatario posee la clave privada.

Los algoritmos también tienen un gran impacto en el mundo del Machine Learning ya que estos

algoritmos son como redes neuronales, arboles de decisión y algoritmos de agrupamiento se utilizan para

extraer información de conjuntos de datos grandes y complejos lo que nos va a permitir hacer

predicciones, detectar patrones y tomar decisiones automaticas. Esto lo afirma la pagina web

“Los algoritmos de machine learning son el alma que mueven los procesos de aprendizaje. Gracias a

ellos podemos obtener la información que necesitamos para tomar decisiones o predecir el

comportamiento de los datos.” (GRAPH, s/f). hay una gran variedad de algoritmos y técnicas que se

utilizan en diferentes situaciones y para resolver una variedad de problemas. La elección del algoritmo

adecuado depende de la naturaleza de los datos, el tipo de problema a resolver y los objetivos específicos

del proyecto.
También están los algoritmos para el análisis de redes sociales son herramientas fundamentales

para comprender la estructura, dinámica y comportamiento de las redes sociales en línea. Estos algoritmos

permiten extraer información valiosa sobre las interacciones entre individuos, comunidades,

influenciadores y tendencias dentro de una red social. Los algoritmos pueden varias según la red social

que se este utilizando, por ejemplo tenemos a la red social Instagram, según “ detalla Vilma, que

el algoritmo de Instagram evalúa mucho las acciones de cada usuario, la localización de cada

perfil, los hashtags que se utilicen, las interacciones con la audiencia y sobre todo la calidad

del contenido que publicas. La publicidad cada vez juega un papel más importante, ya que

ayuda al posicionamiento de marca, a atraer más clientes y a dar a conocer los beneficios de los

productos o servicios. A medida que pasa el tiempo, las marcas consiguen crear experiencias

más personalizadas para sus clientes a través de esta red social.” (CE ComunidadEmpresas, s/f).

también haciendo énfasis en otros aspectos como el análisis de emojis y emoticones, análisis de opiniones,

seguimiento de tendencias y el sistema de recomendaciones.

Varios algoritmos novedosos han cambiado significativamente el mundo y han tenido un impacto

profundo en diversas áreas como lo es el PageRank que fue desarrollado por Larry Page y Sergey Brin,

este algoritmo revolucionó la búsqueda en línea al permitir a Google clasificar páginas web en función de

su importancia relativa en lugar de simplemente contar la cantidad de veces que se mencionaba una

palabra clave. Esto condujo a la mejora de los resultados de búsqueda.

También tuvo un gran impacto la máquina de Turing en el mundo de la computación la Máquina

de Turing es un modelo teórico de un dispositivo que manipula símbolos en una cinta de manera

determinista siguiendo un conjunto de reglas predefinidas. Esta maquina sento las bases para la

computacion moderna, también se utiliza como estudio de la computabilidad y la complejidad


computacional, Los conceptos teóricos introducidos por Turing, como las máquinas de estado finito y los

autómatas, han sido fundamentales en el desarrollo de la criptografía moderna y la seguridad informática.

9 Conclusiones

La historia de los algoritmos ha tenido un gran impacto en la sociedad humana ya que

abarca desde los primeros intentos humanos por resolver problemas matemáticos hasta la era de

la computación moderna, estos algoritmos han sido pieza fundamental en diversas áreas. Su

importancia radica en la capacidad de resolver problemas de manera eficiente y sistemática lo

que ha impulsado avances significativos en la tecnología y la ciencia, desde los primeros

algoritmos hasta los sofisticados de aprendizaje automatico y criptografía utilizadas en la

actualidad, En cuanto a las características clave de los algoritmos, la claridad en su definición, la

eficiencia en el uso de recursos computacionales, la capacidad de adaptación y la producción de

resultados precisos son elementos fundamentales que los definen


Referencias
Team, D. (2024, 4 enero). ¿Qué es un algoritmo y por qué es esencial en Data Science?

Formación En Ciencia de Datos | DataScientest.com. https://datascientest.com/es/que-es-un-

algoritmo

Márquez, Á. (2021, 8 septiembre). La importancia de los algoritmos | CES LOPE DE

VEGA. CES LOPE DE VEGA. https://www.ceslopedevega.com/la-importancia-de-los-

algoritmos/#:~:text=El%20algoritmo%20permite%20estudiar%20las,pueden%20crear

%20sus%20primeros%20algoritmos.

Algoritmo criptográfico - Glosario de MDN Web Docs: Definiciones de términos

relacionados con la Web | MDN. (2023, 13 noviembre). MDN Web Docs.

https://developer.mozilla.org/es/docs/Glossary/Cipher

GraphEverywhere.

https://www.grapheverywhere.com/algoritmos-de-machine-learning/#:~:text=Los

%20algoritmos%20de%20machine%20learning,el%20comportamiento%20de%20los

%20datos.

Cómo funcionan los algoritmos en las redes sociales. (s. f.). Entel Comunidad Empresas.

https://ce.entel.cl/articulos/sepa-como-funcionan-los-algoritmos-en-las-redes-sociales/
Anexos

Línea del tiempo

También podría gustarte