Lua: La Elegancia de un Buen Diseño

21 de Abril de 2020, 149 vistas

Hay lenguajes que motivan el descubrimiento y la experimentación (cada cual encuentra los suyos... en mi caso, Logo, Haskell, Scheme, Elm, NetLogo, Julia), y otros que me llevan al hartazgo (como C, C++, Java, Python, R, Javascript,...). Así que la sorpresa de encontrarse con un lenguaje antiguo (ya casi 30 años), pero tan bien construido que a uno le da la sensación de que mucho de lo que ha llegado después ha sido como un retroceso de ideas, deja la sensación de que se abre un nuevo camino que merece la pena ser explorado.

Lua, un lenguaje del que se oye hablar desde hace años, pero que hasta ahora no tuve la ocasión de explorar, ha sido capaz de despertar mi interés por caminos que pensaba cerrados hace tiempo, y más cuando además se descubre que llega desde Brasil y no desde los megacentros habituales.

Etiquetas utilizadas: , ,

Leer más »

NetLogo Wishlist

17 de Abril de 2020, 65 vistas

Como bien saben todos los que me rodean (o han pasado por la experiencia de recibir clases mías), no oculto mi predilección por NetLogo, a pesar de que se aleja de los circuitos profesionales (ni informáticos ni científicos).  

En esta entrada hago un listado de las cosas que echo en falta en NetLogo y que me llevarían a no desprenderme de él para tareas en las que, hasta ahora, ha funcionado mejor que la mayoría, como es ser el lenguaje base en el que doy el curso de introducción a la Inteligencia Artificial.

Etiquetas utilizadas: ,

Variational AutoEncoder

1 de Marzo de 2020, 177 vistas

Los Variational AutoEncoders (VAE) son modelos de aprendizaje que mezclan las redes neuronales con distribuciones de probabilidad. Su principal uso es el de construir modelos generativos que son capaces de producir datos sintéticos que siguen los mismos patrones que los grandes conjuntos de datos de los que se alimentan. Normalmente, se han usado para generar imágenes que asemejan, por ejemplo, características conocidas tales como caras, vehículos, habitáculos, etc. aunque en teoría podrían usarse para la generación de cualquier tipo de dato, siempre y cuando el conjunto de entrenamiento de datos reales sea adecuado (en tamaño y contenido).

Etiquetas utilizadas: , , ,

Algoritmos de Clustering

28 de Noviembre de 2019, 1462 vistas

Un algoritmo de clustering tiene como objetivo agrupar los objetos de un dataset según su similaridad, de forma que los objetos que hay dentro de un grupo (cluster) sean más similares que aquellos que caen en grupos distintos. Para resolver este problema se han desarrollado muchos algoritmos que se diferencian entre sí según qué se entiende por cluster (que, en esencia, viene dado por cómo definimos que dos objetos son más o menos similares) y por la eficiencia computacional a la hora de conseguir la agrupación final. En esta entrada haremos un recorrido por los más habituales de estos algoritmos.

Etiquetas utilizadas: , , , ,

Planificación: Fundamentos (y NetLogo)

13 de Octubre de 2019, 244 vistas

En esta entrada completamos el uso de procedimientos de búsqueda en Espacios de Estados para resolver problemas de Planificación Automática. Veremos algunas generalidades acerca del tipo de problemas que podemos resolver y de las aproximaciones formales que se han creado. También podremos ver cómo se puede implementar en NetLogo un algoritmo sencillo de conversión de un problema de planificación en uno de búsqueda (para usar, por ejemplo, BFS o A*).

Etiquetas utilizadas: , , , , , ,


ALGUNAS ENTRADAS ANTERIORES ... AL AZAR

¿Puede existir Matemática sin Computación?

20 de Noviembre de 2016, 509 vistas

Esta entrada no va a ser un alegato en favor de la computación como rama de la matemática... no es necesario, la computación está suficientemente bien fundamentada (al mismo nivel que el resto de áreas clásicamente centrales en la disciplina) como para que no necesite ningún tipo de justificación o apoyo por parte de nadie. Pretendo solo enfatizar mi extrañeza acerca del desconocimiento dentro del mundo matemático más clásico (y el dominante en la mayoría del universo humano matemático, sobre todo en un país matemáticamente "adormecido" como España) de lo que la computación, en toda su amplitud, supone para el conjunto de la matemática, en sus ramificaciones más fundamentales o no. Tampoco se podrá encontrar aquí nada relacionado con las herramientas computacionales de ayuda al resto de disciplinas matemáticas... se trata la computación como área, no como herramienta.

Etiquetas utilizadas: , , , ,

Nuevo Bloque de Cursos

29 de Octubre de 2017, 345 vistas

 Se ha añadido un apartado de cursos completos al que puedes acceder por medio del nuevo enlace "Cursos" en el menú principal de esta página. El objetivo es ir colgando cursos enteros de forma que estén disponibles independientemente de si se corresponden o no con una asignatura reglada actualmente.

Etiquetas utilizadas: , , ,