WGCV
Published on

Fuí becado para Intro to Self-Driving Cars Scholarship de Udacity por Lyft

Authors
  • avatar
    Name
    Gustavo Cevallos
    Twitter
    @wgcv
Los carros autónomos son el presente y que en pocos años dejaremos de manejar para dedicarnos hacer otras actividades dentro de un vehículo. Tal vez hubiéramos tenido un camino más fácil para mejorar la movilización que creando carros autónomos pero nuestra cultura no lo permitió, por eso los self driving cars son una parte importante para el desarrollo como humanidad y tecnología, donde debemos ser parte de este cambio. Lyft la empresa de transporte que ya hemos hablado en la entrada de servicios de taxis tenía 300 becas a nivel global y me otorgaron una para ser parte del curso de Intro to self driving cars. Esto me emociona mucho y creo que será una experiencia increíble, la cual iré compartiendo con ustedes y documentando un poco sobre los proyectos y temáticas que se tocaron en el curso, existen muchos blogs en inglés sobre los nanodegrees de Udacity pero no he visto alguno en español asi que eso me motiva más. Por cierto, en mi blog y en los otros blogs no encontrarán material o videos de Udacity, serán los proyectos y algunas explicaciones tipo resumen que servirán de mucho.

¿Que temas se tocan dentro del curso?

Tema 1: Pensamiento bayesiano

Se toca sobre la metodología probabilística de la inferencia bayesiana, la base para los carros autónomos son las estadísticas porque deben tomar decisiones a base de entradas por sensores, procesarlas y toma una decisión con una base de conocimiento previo, gracias a los métodos bayesianos vamos a poder decidir casos nuevos.

Proyectos:

Joy​ ​Ride: Vamos a tener que escribir un código para poder acelerar y dar dirección a un carro simulado en una pista de prueba Filtro de Histograma en 2D: Se va a construir las funciones sentido y movimiento para un filtro de histogramas en 2D con Python.

Tema 2: Trabajando con Matrices

Siempre que escucho que las matemáticas no se usan ni para comprar pan ni para programar, les diré que si van comprar pan de una forma eficiente y van hacer proyectos increíbles van a necesitar álgebra lineal, es tan importante no solo en el área de la automatización si no en la creación de videojuegos, 3D y predicción de datos. En este módulo se revisa algo de álgebra lineal y programación orientada a objetos.

Proyecto:

Implementar la clase matriz: Se va a ver implementar una clase de tipo matriz con la caracteriscticas de una matriz matemática.

Tema 3: C++ Básico

Todos los que algún momento hemos programado sabemos que programar con C nos da una ventaja en velocidad y control, pero cuántas veces realmente queremos involucrarnos con este lenguaje? Es un lenguaje con muchas versatilidad y es la base de los carros autónomos, se va a ver como transcribir código de Python a C++. (Nunca me imaginé que iba a usar C++, en algo que no sea académico)

Proyecto:

Transcribir Python to C++: Se va a transcribir el código que se hizo en el proyecto del filtro de histograma en 2d en python a C++.

Tema 4: Mejorar rendimiento en C++

Se va a ver las buenas prácticas y cómo escribir un código óptimo en c++, además de revisar las características de un lenguaje de bajo nivel.

Proyecto:

Optimizar C++: Se va a optimizar un código en c++, mejorando su rendimiento y el uso de memoria.

Tema 5: Navegando en datos estructurados complejos

Se va a revisar las estructura de datos, que algoritmos existe para interactuar con ellas y cual son los mejores. El manejo de estructuras de datos complejas es algo común para optimizar y desarrollar carros autónomos.

Proyecto:

Planear la ruta óptima: Llegar de un lugar a otro no es una tarea complicada, pero si obtener la mejor ruta. Se va a planear la mejor ruta en una estructura de grafos.

Tema 6: Visualización, cálculo y control

En el mundo de la programación manejamos los datos discretos pero en la vida real los datos son continuos, vamos a aprender sobre matemáticas de continuidad y visualización con python.

Proyecto:

Visualizador de trayectoria: Se va a realizar una herramienta para visualizar una trayectoria continua que viene de varios algoritmos de control.

Tema 7: Aprendizaje de máquina y visión computacional

Se va hablar como las computadoras reconocen patrones en una imagen, como puede identificar a un carro y diferenciarlo con un peatón. Para que las computadoras puedan reconocer deben aprender igual que los humanos, enseñándoles cuáles son carros y cuáles son humanos.

Proyecto:

Clasificador de imágenes desde el principio: Se va a realizar un algoritmo para poder identificar a los peatones y a los carros desde cero.

Si quieres realizar el curso estará disponible aquí hasta el 14 de marzo, te invito a revisar porque se abren varias veces al año.

#lyftscholarships