Título de
TÃtulo de Grado en IngenierÃa Informática - Departamento de ...
TÃtulo de Grado en IngenierÃa Informática - Departamento de ...
- No tags were found...
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
<strong>Título</strong> <strong>de</strong> Grado <strong>de</strong> Ingeniería Informática<br />
• Explicar en qué consiste un mo<strong>de</strong>lo <strong>de</strong> computación y argumentar la necesidad <strong>de</strong> establecer<br />
mo<strong>de</strong>los <strong>de</strong> computación.<br />
• Exponer las razones por las cuales las máquinas <strong>de</strong> Turing se consi<strong>de</strong>ran un mo<strong>de</strong>lo <strong>de</strong><br />
computación <strong>de</strong> propósito general. Razonar sobre el alcance <strong>de</strong> la tesis <strong>de</strong> Church-Turing, en<br />
cuanto al po<strong>de</strong>r computacional <strong>de</strong> las máquinas <strong>de</strong> Turing, la equivalencia <strong>de</strong> mo<strong>de</strong>los <strong>de</strong><br />
computación y las limitaciones teóricas <strong>de</strong> la computación.<br />
• Indicar las características principales <strong>de</strong> las gramáticas y autómatas para lenguajes<br />
regulares y libres <strong>de</strong>l contexto y evaluar las ventajas y limitaciones <strong>de</strong> estos formalismos<br />
como mo<strong>de</strong>lo <strong>de</strong> algoritmos <strong>de</strong> procesamiento <strong>de</strong> lenguajes. En particular, establecer la<br />
relación entre la resolución <strong>de</strong> un problema <strong>de</strong> pertenencia a este tipo <strong>de</strong> lenguajes y el<br />
diseño <strong>de</strong> algoritmos para las distintas fases <strong>de</strong> análisis y traducción <strong>de</strong> lenguajes <strong>de</strong><br />
programación.<br />
• Distinguir entre problemas resolubles e irresolubles y específicamente entre problemas <strong>de</strong><br />
<strong>de</strong>cisión <strong>de</strong>cidibles (recursivos), in<strong>de</strong>cidibles (no recursivos), semi<strong>de</strong>cidibles (recursivamente<br />
enumerables) y no semi<strong>de</strong>cidibles (no-RE).<br />
• Describir algunos problemas in<strong>de</strong>cibles sobre gramáticas libres <strong>de</strong>l contexto, sobre parada <strong>de</strong><br />
programas y sobre propieda<strong>de</strong>s semánticas <strong>de</strong> los programas y analizar las implicaciones<br />
prácticas <strong>de</strong> estos resultados.<br />
• Aplicar técnicas que permiten <strong>de</strong>ducir que un problema nuevo no tiene solución algorítmica,<br />
directamente o a través <strong>de</strong> la relación con un problema in<strong>de</strong>cidible conocido.<br />
• Diferenciar entre problemas tratables o intratables. Distinguir entre problemas <strong>de</strong> la clase P,<br />
NP y NP-completa. Explicar el alcance <strong>de</strong> la cuestión no resuelta <strong>de</strong> si P≠NP, en cuanto a lo<br />
que supondría si se <strong>de</strong>mostrara o refutara la conjetura P≠NP.<br />
• Describir las clases <strong>de</strong> complejidad espacial y temporal más comunes y algunos ejemplos <strong>de</strong><br />
problemas conocidos que se encuadran en cada clase.<br />
• Aplicar técnicas que permiten <strong>de</strong>ducir si un problema nuevo es <strong>de</strong> una clase <strong>de</strong> complejidad u<br />
otra y <strong>de</strong> ese modo analizar si es un problema <strong>de</strong> complejidad polinomial, y si no lo es, evaluar<br />
hasta qué punto se pue<strong>de</strong> consi<strong>de</strong>rar intratable.<br />
• Razonar sobre limitaciones teóricas y prácticas <strong>de</strong> la computación y las posibilida<strong>de</strong>s <strong>de</strong><br />
reducir estas restricciones en un futuro. Exponer algunas estrategias generales que se siguen<br />
para intentar abordar problemas intratables.<br />
• Describir algunos mo<strong>de</strong>los avanzados <strong>de</strong> computación, que plantean nuevos mo<strong>de</strong>los <strong>de</strong><br />
máquinas y algoritmos para conseguir soluciones más eficientes para <strong>de</strong>terminados<br />
problemas consi<strong>de</strong>rados intratables.<br />
Programación para la IA<br />
Breve <strong>de</strong>scripción <strong>de</strong> Contenidos<br />
• Paradigma imperativo vs. paradigma <strong>de</strong>clarativo.<br />
• El paradigma <strong>de</strong>clarativo orientado a la IA.<br />
• Fundamentos <strong>de</strong> la programación funcional.<br />
• Resolución <strong>de</strong> problemas mediante un lenguaje funcional.<br />
• Aplicaciones y herramientas.<br />
Objetivos Formativos<br />
• Analizar las principales diferencias entre el paradigma imperativo y el paradigma <strong>de</strong>clarativo<br />
(lógico y funcional), así como sus ventajas e inconvenientes.<br />
• Seleccionar el paradigma <strong>de</strong> programación a<strong>de</strong>cuado para el <strong>de</strong>sarrollo <strong>de</strong> Sistemas<br />
Inteligentes.<br />
• Establecer los conceptos básicos <strong>de</strong> la programación funcional.<br />
• Describir el λ-cálculo como sistema formal y como lenguaje <strong>de</strong> programación.<br />
122