03.09.2015 Views

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 ...

SHOW MORE
SHOW LESS
  • 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

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!