Saltar a contenido

UD05 · Ejercicios

Cómo se trabajan

Resuélvelos en tu cuaderno o en un documento Markdown. No se publican las soluciones: se corrigen y comentan en clase. Los cinco entregables (EX0-EX4) son la evaluación práctica de la unidad y se describen en las actividades entregables.

A. Del conocimiento a la arquitectura (RA5-a)

  1. Sitúa en la jerarquía DIKW estos cuatro enunciados: «37 ºC», «la temperatura corporal es 37 ºC», «si supera 37 ºC hay fiebre» y «si hay fiebre, toma paracetamol».
  2. Define qué es un sistema experto y en qué se diferencia de un programa tradicional.
  3. Enumera los componentes de un sistema experto y la función de cada uno.
  4. Explica el ciclo reconocer-actuar (match, resolve, act) con tus palabras.
  5. Diferencia encadenamiento hacia delante y hacia atrás. Pon un ejemplo de problema para cada uno.
  6. Enuncia Modus Ponens y Modus Tollens y relaciona cada uno con un tipo de encadenamiento.
  7. ¿Qué son los factores de certeza y por qué los introdujo MYCIN?
  8. ¿Por qué la explicación es una ventaja clave de los sistemas expertos frente al ML?
  9. Dado el ejemplo de la teoría (fiebre CF 0,6 + rigidez CF 0,4), explica cómo se acumula la evidencia y qué diferencia hay frente a una regla binaria.

B. Representación del conocimiento (RA5-a/b)

  1. Completa la tabla con la representación del conocimiento:

    Representación Estructura base Inferencia típica
    Pares atributo-valor
    Reglas de producción
    Representaciones jerárquicas
    Marcos (frames)
    Lógica formal
    Redes semánticas
    Ontologías
  2. Escribe el mismo hecho («si llueve, coge el paraguas») en tres representaciones distintas de la tabla anterior.

  3. ¿Cuándo conviene usar reglas y cuándo una ontología?
  4. ¿Qué es el bottleneck de la adquisición de conocimiento y cómo afecta al desarrollo de un sistema experto?
  5. Enumera dos sistemas expertos históricos con sus datos (reglas y precisión).

C. Simular comportamientos con experta (RA5-b)

  1. ¿Por qué experta falla en Python 3.10+ y cuál es la solución que usamos en este módulo?
  2. Escribe el código de un sistema experta que clasifique una incidencia como crítica si impacto=alto o usuarios>50.
  3. Escribe el código de un sistema de clasificación de animales (guepardo) como el de la teoría.
  4. Explica qué hacen engine.reset() y engine.run().
  5. Propón un ámbito distinto a los vistos en clase (p. ej. hipoteca, semáforo, cultivo) y describe 3 reglas de su sistema experto.
  6. De los siete notebooks de la unidad (§6.1 de la teoría), elige dos de dominios distintos y explica en qué se parece su arquitectura y en qué difiere el conocimiento que codifican.

D. Sistemas híbridos reglas/datos (RA5-b)

  1. Diferencia los dos enfoques híbridos de la teoría: deducir reglas de los datos frente a mejorar reglas propias con aprendizaje automático.
  2. ¿Qué hace Human-Learn que no hace un sistema experto puro?
  3. ¿Qué ventaja tiene FIGS frente a un árbol de decisión grande, en términos de interpretabilidad?
  4. En UD05_N04_reglas_desde_datos_titanic.ipynb, ¿quién escribe las reglas: el experto o el algoritmo? Justifica con lo que hace FIGSClassifier.
  5. Propón un caso donde usarías skope-rules en vez de escribir las reglas a mano.

E. Lógica difusa (RA5-b/d)

  1. Explica la diferencia entre lógica proposicional y lógica difusa con el ejemplo de «hace frío».
  2. Define variable lingüística, valor lingüístico y función de pertenencia, con un ejemplo de cada una.
  3. Describe los tres pasos del funcionamiento de un sistema de razonamiento impreciso (fuzzificación, evaluación de reglas, desfuzzificación).
  4. Con el ejemplo de las propinas: si el servicio es 9,8 y la comida 6,5, ¿por qué la propina resultante (19,24 €) está en la banda alta y no en la media?
  5. ¿Qué tipo de función de pertenencia usarías para representar un ciclo (p. ej. la hora del día) y por qué las triangulares no sirven ahí?

F. Variación de características y dinámica (RA5-c)

  1. Diferencia sensibilidad y robustez de un sistema experto.
  2. ¿Qué ocurre si se añaden demasiadas condiciones al antecedente de una regla crítica? ¿Y si se simplifica en exceso?
  3. Explica el problema de la histéresis en un sistema de ventilación con sensor de CO y la solución.
  4. ¿Cómo afecta subir el umbral de certeza de un diagnóstico a los falsos positivos y a las alertas tempranas?
  5. ¿Qué le ocurre a la dinámica del sistema si los sensores aportan ruido? ¿Cómo lo mitigarías?

G. Estrategias de control (RA5-d)

  1. Explica qué es la salience y por qué se usa para reglas de emergencia.
  2. ¿Qué es el control de meta (metarrazonamiento)? Relaciónalo con el nivel de «sabiduría» de la jerarquía DIKW.
  3. Define las especificaciones de respuesta de un sistema de control: precisión, tiempo de asentamiento, sobreimpulso y estabilidad.
  4. Resuelve el ejemplo guiado: para controlar una sala a 21 ºC con error ±0,5 ºC y sobreimpulso máximo 1 ºC, ¿qué controlador elegirías (PID sintonizado, experto o difuso) y por qué?

H. Controladores inteligentes (RA5-e)

  1. Describe el lazo de control (SP, error, controlador, actuador, planta, PV) y la fórmula del PID.
  2. ¿Qué limitaciones tiene el PID frente a sistemas no lineales o con retraso?
  3. Enumera los cuatro tipos de controladores inteligentes y la ventaja de cada uno sobre el PID.
  4. Con los datos de la teoría: ¿qué mejora aportó el control difuso frente al PID en el control térmico (asentamiento y sobreimpulso)?
  5. Explica cómo un sistema experto puede actuar como controlador (directo y supervisor) y qué ventaja aporta la explicación.
  6. ¿Qué es el MPC (control predictivo) y por qué es proactivo?

I. Aplicaciones y tendencias (contenidos RA5)

  1. Enumera cuatro sectores donde se aplican sistemas expertos y un uso en cada uno.
  2. ¿Qué es un BRMS y qué herramienta es la más conocida (Drools)?
  3. ¿Qué son los sistemas neuro-simbólicos y qué relación tienen con los sistemas híbridos del bloque D?
  4. ¿Qué es la IA explicable (XAI) y qué relación tiene con MYCIN y con el RGPD?
  5. Explica el uso de reglas como guardarraíl del ML con un ejemplo (p. ej. LLM acotado).

J. Caso práctico

  1. Elige uno de los cinco entregables (EX0-EX4) y, antes de programarlo, redacta en una tabla: qué representación de conocimiento usarás, si es puro/híbrido/difuso, y qué especificación de respuesta tendría si actuara como controlador.

Volver a la UD05 · Taller 1 · Taller 2 · Taller 3