Contenido principal
Tiempo actual: 0:00Duración total:5:28

¿Qué es un algoritmo y por qué debería importarte?

Transcripción del video

que es un algoritmo una definición podría ser un conjunto de pasos para realizar una tarea probablemente tengas un algoritmo para ir de la casa a la escuela para ser un sándwich de queso a la parrilla o para encontrar lo que quieres comprar en el supermercado en ciencias de la computación un algoritmo es un conjunto de pasos para que un programa de computadora realice una tarea los algoritmos son la ciencia en las ciencias de la computación y encontrar buenos algoritmos y saber cuándo aplicar los te permitirá escribir programas interesantes e importantes hablamos sobre algunos ejemplos de algoritmos famosos como es que la aplicación hangouts de google transmite video en vivo a través de internet tan rápido usando algoritmos de compresión de audio y vídeo cómo es que google maps encuentra la ruta para viajar de dallas tejas a orlando florida para que puedan llegar a dish network utilizando un algoritmo de búsqueda de ruta como es que pixar colorea un modelo 3d de un personaje basado en la iluminación de una habitación virtual utilizando un algoritmo de renderizado como la nasa eligió a organizar los paneles solares de la estación espacial internacional iss cuando reorganizarlos con algoritmos de planificación y optimización estos algoritmos son más complejos que nuestros algoritmos de cada día cómo hacer un sándwich de queso a la parrilla pero todos ellos se reducen a lo mismo una serie de pasos para realizar una tarea si conoces algo sobre algoritmos existentes puedes ahorrarte un poco de esfuerzo y hacer tus programas más rápidos aplicando el algoritmo correcto por ejemplo digamos que estás escribiendo un juego y que quiere es que el usuario pueda jugar en contra de la computadora bueno podríamos mirar el juego de damas para inspirarte los científicos en computación han encontrado cómo escribir programas del juego de damas que nunca pierden usando el algoritmo de búsqueda minimax que busca dentro del enorme árbol de todos los movimientos posibles si tu juego es similar al de damas entonces podrías usar algoritmos basados en estas técnicas si no es así entonces conocer las limitaciones de esos algoritmo podrían conducirle a rediseñar su juego si es que se requiere un jugador experto también es importante saber cómo diseñar nuevos algoritmos así como aprender cómo analizar su exactitud y eficiencia en las ciencias biológicas se diseñan nuevos algoritmos continuamente para propósitos tales como el diseño de las estructuras moleculares que son el núcleo de medicamentos para combatir enfermedades en física los algoritmos simulan patrones climáticos y meteorológicos y otros algoritmos buscan y analizan la gran cantidad de datos sobre estrellas en el universo que son recolectados por telescopios espaciales automatizados en todas las ciencias e incluso en sitios web como canal academy se necesitan algoritmos eficientes para analizar enormes conjuntos de datos o para seleccionar inteligentemente de una gran cantidad de posibles decisiones en casi cualquier área en la que pudieras estar interesado nuevos algoritmos permitirán aprovechar el poder computacional masivo para hacer cosas que la gente realmente necesita y por las cuales se preocupa ahora no todos los algoritmos son creados igualmente entonces qué hace que un algoritmo sea bueno los dos criterios más importantes son que resuelva el problema que nos ocupa y que lo haga eficientemente la mayoría de las veces queremos un algoritmo que nos dé una respuesta que sabemos que siempre es correcta algunas veces podemos vivir con un algoritmo que no nos dé una respuesta exacta por la mejor respuesta porque los únicos algoritmos perfectos que conocemos para resolver esos problemas en realidad toma mucho tiempo por ejemplo digamos que queremos un programa que determine la ruta más eficiente para un camión que entregaba paquetes empezando y terminando el día en el almacén tomaría semanas ejecutarlo y examinar todas las posibilidades pero sí nos parece bien tener un programa que determine una ruta que es buena pero que probablemente no sea la mejor entonces eso podría ejecutarse en segundos en algunos casos bueno es suficiente cómo mide la eficiencia de un algoritmo podríamos cronometrar cuando está físicamente en ejecutarse el código pero eso son nos daría información sobre esa implementación en particular en un cierto lenguaje de programación en una determinada computadora y sólo para la entrada que se le dio en cambio los científicos en computación usan una técnica llamada análisis asintomático que permite comparar algoritmos independientemente del lenguaje de programación particular o del hardware de modo que podamos decir de manera concluyente que si algunos algoritmos son más eficientes que otros ahora puedes aprender sobre algoritmos y sobre análisis asintomático en can academy gracias a la contribución de dos profesores de la universidad de dharma tom colmen es el primer autor del libro de texto universitarios sobre algoritmos más popular del mundo además es el autor de 'la collins un loft de bisbal com diseñó el curso de introducción acs e investigación robótica en darmón él construyó el primer robot el mundo que pliega bric a mi comité 20 enseñar a muchos de los algoritmos que deberías aprender en la pc s josé s101 como algoritmos de búsqueda de reordenamiento recursivos y mi favorito algoritmos de grafos habrá muchísimas visualizaciones interactivas cuestionarios y desafíos de programación que te ayudan a entender mejor a lo largo de tu viaje de aprendizaje