Esta asignatura proporciona al estudiante conocimientos básicos y transversales sobre la informática y que son utilizados, de manera directa o indirecta, en las otras asignaturas de la carrera. Crea la base sobre la representació de datos y cómo se utilizan los diferentes componentes de un sistema informático. Por último, entender cómo, a partir de código de alto nivel, se puede generar y ejecutar un programa. Una característica en común que se trata en las diferentes partes de este curso es el impacto en el coste, en concreto el consumo de energía, de la ejecucion de instrucciones y de la gestión y uso de los componentes del sistema informático.
Profesorado
Responsable
Javier Verdu Mula (
)
Otros
Xavier Martorell Bofill (
)
Horas semanales
Teoría
2
Problemas
0
Laboratorio
2
Aprendizaje dirigido
0
Aprendizaje autónomo
6
Competencias
Competencias Transversales
Transversales
CT2 [Avaluable] - Sostenibilidad y Compromiso Social. Conocer y comprender la complejidad de los fenómenos económicos y sociales típicos de la sociedad del bienestar; tener capacidad para relacionar el bienestar con la globalización y la sostenibilidad; lograr habilidades para utilizar de forma equilibrada y compatible la técnica, la tecnología, la economía y la sostenibilidad.
CT3 [Avaluable] - Comunicación eficaz oral y escrita. Comunicarse de forma oral y escrita con otras personas sobre los resultados del aprendizaje, de la elaboración del pensamiento y de la toma de decisiones; participar en debates sobre temas de la propia especialidad.
CT6 [Avaluable] - Aprendizaje autónomo. Detectar deficiencias en el propio conocimiento y superarlas mediante la reflexión crítica y la elección de la mejor actuación para ampliar dicho conocimiento.
Básicas
CB1 - Que los estudiantes hayan demostrado poseer y comprender conocimientos en un área de estudio que parte de la base de la educación secundaria general, y se suele encontrar a un nivel que, si bien se apoya en libros de texto avanzados, incluye también algunos aspectos que implican conocimientos procedentes de la vanguardia de su campo de estudio.
CB4 - Que los estudiantes puedan transmitir información, ideas, problemas y soluciones a un público tanto especializado como no especializado.
CB5 - Que los estudiantes hayan desarrollado aquellas habilidades de aprendizaje necesarias para emprender estudios posteriores con un alto grado de autonomía
Competencias Técnicas
Específicas
CE03 - Identificar i aplicar els procediments algorítmics bàsics de les tecnologies informàtiques per a dissenyar solucions a problemes, analitzant la idoneïtat i complexitat dels algorismes proposats.
CE05 - Analizar y evaluar la estructura y arquitectura de los computadores, así como los componentes básicos que los conforman.
CE06 - Identificar las características, funcionalidades y estructura de los Sistemas Operativos y diseñar e implementar aplicaciones basadas en sus servicios.
CE07 - Interpretar las características, funcionalidades y estructura de los Sistemas Distribuidos, las Redes de Computadores e Internet y diseñar e implementar aplicaciones basadas en ellas.
CE11 - Identificar y aplicar los principios fundamentales y técnicas básicas de la programación paralela, concurrente, distribuida y de tiempo real.
CE19 - Utilizar los sistemas de computación actuales, incluidos sistemas de alto rendimiento, para el proceso de grandes volúmenes de datos desde el conocimiento de su estructura, funcionamiento y particularidades.
CE28 - Planificar, concebir, desplegar y dirigir proyectos, servicios y sistemas en el ámbito de la inteligencia artificial, liderando su puesta en marcha y su mejora continua y valorando su impacto económico y social.
Competencias Técnicas Genéricas
Genéricas
CG2 - Utilizar los conocimientos fundamentales y metodologías de trabajo sólidas adquiridos durante los estudios para adaptarse a los nuevos escenarios tecnológicos del futuro.
CG3 - Definir, evaluar y seleccionar plataformas hardware y software para el desarrollo y la ejecución de sistemas, servicios y aplicaciones informáticas en el ámbito de la inteligencia artificial.
CG4 - Razonar, analizando la realidad y diseñando algoritmos y formulaciones que la modelen. Identificar problemas y construir soluciones algorítmicas o matemáticas válidas, eventualmente nuevas, integrando el conocimiento multidisciplinar necesario, valorando distintas alternativas con espíritu crítico, justificando las decisiones tomadas, interpretando y sintetizando los resultados en el contexto del dominio de aplicación y estableciendo generalizaciones metodológicas a partir de aplicaciones concretas.
CG5 - Trabajar en equipos y proyectos multidisciplinares relacionados con la inteligencia artificial y la robótica, interactuando fluidamente con ingenieros/as y profesionales de otras disciplinas.
CG8 - Observar un ejercicio ético de la profesión en todas sus facetas, aplicando criterios éticos en el diseño de sistemas,algoritmos, experimentos, utilización de datos, de acuerdo con los sistemas éticos recomendados por los organismos nacionales e internacionales, con especial énfasis en seguridad, robustez, privacidad, transparencia, trazabilidad, prevención de sesgos (de raza, género, religión, territorio, etc.) y respeto a los derechos humanos.
CG9 - Afrontar nuevos retos con una visión amplia de las posibilidades de la carrera profesional en el ámbito de la Inteligencia Artificial. Desarrollar la actividad aplicando criterios de calidad y mejora continua, y actuar con rigor en el desarrollo profesional. Adaptarse a los cambios organizativos o tecnológicos. Trabajar en situaciones de carencia de información y/o con restricciones temporales y/o de recursos.
Objetivos
Conocer las características y limitaciones, en especial respecto al error de precisión, de los diferentes formatos de representación de datos en un ordenador
Competencias relacionadas:
CB1,
CE03,
Subcompetences:
Realización de operaciones básicas
Desde la representación de datos básicos hasta formatos avanzados
Conocer la arquitectura de un procesador basado en el modelo Von Neumann, así como también sus componentes principales
Competencias relacionadas:
CG2,
CG3,
CT3,
CB4,
CE05,
CE11,
Subcompetences:
Entender el coste y consumo de energía en la ejecución de una instrucción
Jerarquí de memoria y sus propiedades, en especial la localidad
Paralelismo con SIMD
Conocer el espacio de lógico de memoria, desde cómo se utiliza hasta cómo se gestionan algunos contenidos
Competencias relacionadas:
CB4,
CE19,
Subcompetences:
Utilización y gestión de libreries en la memoria
Conocer los aspectos básicos de un Sistema Operativo y entender el impacto que tiene sobre el rendimiento y consumo de energía de un sistema
Competencias relacionadas:
CG4,
CG9,
CB5,
CE06,
CE11,
Subcompetences:
Sistema de ficheros y E/S
Gestión de memória y procesos
Conocer el proceso para crear y depurar un programa, així com les seves necessitats
Competencias relacionadas:
CG9,
CB5,
CE03,
Capacidades para discutir y contrastar la resolución de problemas y ejercicios prácticos
Competencias relacionadas:
CE28,
CG5,
CG8,
CT2,
CT6,
CB4,
CE06,
CE07,
Entender la relación de la asignatura con el campo de la IA
Competencias relacionadas:
CG9,
CB1,
Contenidos
Introducción de la asignatura
Se hace una breve introducción a la asignatura, sobre qué temas tratará y su relación con el campo de la IA
Representación de Datos
Este tema presentará tipos de representación de datos de diferentes niveles de complejidad, sus limitaciones y la implementación de operaciones básicas
Arquitectura del Procesador
Introducción de la arquitectura de procesador, basada en el modelo de Von Neumann, y sus componentes
Jerarquía de Memoria
Presentación de las propiedades de la jerarquía de memoria, especialmente los conceptos de localidad y reutilización, y el posible impacto que puede tener en el rendimiento y consumo de energía
Introducción del paralelismo basado en SIMD
Introducción del concepto y aspectos básicos del paralelismo mediante SIMD
Implicaciones de ejecutar una instrucción
Descripción de las implicaciones a nivel de coste, posibles cuellos de botella y consumo de energía, desde el punto de vista de la arquitectura, ante la ejecución de una instrucción
Espacio Lógico de Memoria
Presentación de los puntos clave para entender el propósito, construcción, utilitzación y gestión del espacio lógico de memoria
Introducción de las librerías
Presentación del concepto y propósito tras las librerías así como su gestión desde el punto de vista del espacio de memoria lógico
Generación de Ejecutables
Introducción de los procesos de compilación e interpretación, incluyendo el proceso de depuración. Comparación de necesidades y limitaciones de los ejecutables generados
Impacto de los Sistemas Operativos en el rendimiento y consumo de energía
Qué son los Sistemas Operativos y sus aspectos clave que impactan en el rendimiento y consumo de energía del sistema
Componentes básicos de los Sistemas Operativos
Presentación de los subsistemas de E/S y Sistema de Ficheros del Sistema Operativo, a nivel de utilización desde el punto de vista de programador de aplicaciones. Además, también se presentan aspectos de la gestión de memoria
Actividades
ActividadActo evaluativo
Introducción de la Asignatura
En esta actividad se explicarán los objetivos, contenidos y funcionamiento de la asignatura. Además, en el laboratorio, se introducirán aspectos necesarios para poder realizar las sesiones prácticas. Objetivos:7 Contenidos:
Este tema presenta la representación de los datos, desde los conceptos más básicos, pasando por tipos de números y acabando con la representación avanzada de datos. Además, también explicaremos otros aspectos como la precisión de los datos y operaciones básicas. Objetivos:1 Contenidos:
Introduciremos la arquitectura de sismtemas uniprocesador, partiendo de la arquitectura de Von Neumann y los diferentes componentes más importantes. Además, también estudiaremos qué implicaciones tiene ejecutar una instrucción, entre otras razones para entender posibles cuello de botella, y el coste que representa, en especial respecto a la energía que consume, y su relación con la arquitectura. Objetivos:2 Contenidos:
Objetivos:12 Semana:
8 (Fuera de horario lectivo) Tipo:
examen de teoría
Teoría
2h
Problemas
0h
Laboratorio
0h
Aprendizaje dirigido
0h
Aprendizaje autónomo
10h
Ejecución de Programas y su entorno
Este tema tiene dos partes. La primera trata sobre como se genera un programa (tanto si se trata de un programa compilado como si se trata de uno interpretado. La segunda parte presenta el Sistema Operativo y una serie de conceptos y característiques que nos permitirán entender su importancia en la ejecución de programas y el impacto en el rendimiento y en la energía. Objetivos:45 Contenidos:
Presentaremos el espacio de direcciones lógicas de memoria y sus detalles más importantes, así como entender qué son las librerías y sus aspectos clave. Objetivos:3 Contenidos:
Objetivos:6 Semana:
14 Tipo:
examen de laboratorio
Teoría
0h
Problemas
0h
Laboratorio
2h
Aprendizaje dirigido
0h
Aprendizaje autónomo
10h
Examen final de Teoría
Objetivos:1234567 Semana:
15 (Fuera de horario lectivo) Tipo:
examen de teoría
Teoría
2h
Problemas
0h
Laboratorio
0h
Aprendizaje dirigido
0h
Aprendizaje autónomo
15h
Metodología docente
La asignatura se basa en clases presenciales de teoría y laboratorio. Las clases de teoría siguen el programa definido en esta guía docente, habitualmente son a base de material proporcionado en transparencias.
En estas clases de teoría, se promociona el diálogo entre el profesor y los estudiantes proporcionando actividades a realizar conjuntamente basadas en aspectos particulares del tema que se está tratando.
Las clases de laboratorio siguen los mismos temas y pueden ser de dos tipos: 1) prácticas en ordenador guiadas por un enunciado; 2) ejercicios/problemas a resolver en la pizarra o en una exposición ante los otros estudiantes.
Método de evaluación
Hay dos pruebas evaluativas de la parte de teoría:
- PT: El examen parcial de teoría (20%)
- FT: El examen final de teoría (35%)
- FL: El examen final de laboratorio (35%)
- SL: informes de seguimiento del laboratorio (10%) que también servirá para evaluar parte de la competencia transversal CT3
Evaluación Ordinaria: La Nota Final (NF) de la asignatura se obtiene a partir de
NF = 35%FL + 10%SL + MAX(55%FT; (20%PT+35%FT))
Reevaluación: se hará en Junio. Sólo aquellos/as que hayan suspendido la asignatura (es decir, hayan hecho el examen parcial y/o final de teoria) podrán presentarse al examen de reevaluación (examen sólo de teoría). En caso de aprobar el examen, la nota final de la asignatura será "aprobado".