Programación Avanzada

Código de la asignatura1772
Nº Créditos ECTS6
TipoOptativa
DuraciónSemestral
IdiomasCastellano
Planes de estudio
Profesor(es)
Año académico2024-25
Descripción

En esta asignatura, se describen varias técnicas de programación avanzada. En primer lugar se estudian los algoritmos genéticos. Estos algoritmos se aplican generalmente para la búsqueda de soluciones en problemas de optimización, cuando la obtención de la solución óptima no es posible por tener un coste de tiempo excesivo. Para ello, se usa un algoritmo que simula la selección natural, en el que un conjunto de individuos se cruzan, mutan y se van seleccionando en cada generación. Se seleccionan los mejores individuos en base a una heurística establecida. Con el paso de las generaciones, se acaba obteniendo una solución con una calidad razonable y con un coste de tiempo adecuado.

En segundo lugar, se presentan los sistemas multi-agente. En estos sistemas, cada agente es una entidad autónoma y pro-activa que toma sus propias decisiones. Estos agentes interaccionan unos con otros, coordinándose para alcanzar ciertos objetivos comunes. En concreto se suele configurar los comportamientos individuales de cada agente, de tal forma que se genere un comportamiento emergente resultante de la cooperación entre los agentes. En la mayoría de los casos, los sistemas multi-agente son robustos y tolerantes a fallos.

Programación Avanzada

Código de la asignatura1772
Nº Créditos ECTS6
TipoOptativa
DuraciónSemestral
IdiomasCastellano
Planes de estudio
Profesor(es)
Año académico2024-25
Descripción

En esta asignatura, se describen varias técnicas de programación avanzada. En primer lugar se estudian los algoritmos genéticos. Estos algoritmos se aplican generalmente para la búsqueda de soluciones en problemas de optimización, cuando la obtención de la solución óptima no es posible por tener un coste de tiempo excesivo. Para ello, se usa un algoritmo que simula la selección natural, en el que un conjunto de individuos se cruzan, mutan y se van seleccionando en cada generación. Se seleccionan los mejores individuos en base a una heurística establecida. Con el paso de las generaciones, se acaba obteniendo una solución con una calidad razonable y con un coste de tiempo adecuado.

En segundo lugar, se presentan los sistemas multi-agente. En estos sistemas, cada agente es una entidad autónoma y pro-activa que toma sus propias decisiones. Estos agentes interaccionan unos con otros, coordinándose para alcanzar ciertos objetivos comunes. En concreto se suele configurar los comportamientos individuales de cada agente, de tal forma que se genere un comportamiento emergente resultante de la cooperación entre los agentes. En la mayoría de los casos, los sistemas multi-agente son robustos y tolerantes a fallos.