En esta asignatura se busca completar una serie de objetivos siguiendo la metodología de clase invertida o flipped classroom. La cantidad de exposición en clase es mínima y se trata principalmente de revisar el material y cumplir los objetivos en cada clase haciendo los ejercicios de autoevaluación, que podrán ser revisados por el profesor o los compañeros.
Dentro de cada sesión se plantearán unos objetivos, que tendrán que completarse antes de la siguiente sesión. Se valorará la entrega de ejercicios a tiempo y la interacción con el resto de los compañeros. Se tendrá que entregar finalmente un algoritmo evolutivo implementado en un lenguaje de programación elegido por el alumno,
Durante cada sesión, los alumnos tendrán que hacer lo siguiente