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)¶
- 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».
- Define qué es un sistema experto y en qué se diferencia de un programa tradicional.
- Enumera los componentes de un sistema experto y la función de cada uno.
- Explica el ciclo reconocer-actuar (match, resolve, act) con tus palabras.
- Diferencia encadenamiento hacia delante y hacia atrás. Pon un ejemplo de problema para cada uno.
- Enuncia Modus Ponens y Modus Tollens y relaciona cada uno con un tipo de encadenamiento.
- ¿Qué son los factores de certeza y por qué los introdujo MYCIN?
- ¿Por qué la explicación es una ventaja clave de los sistemas expertos frente al ML?
- 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)¶
-
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 -
Escribe el mismo hecho («si llueve, coge el paraguas») en tres representaciones distintas de la tabla anterior.
- ¿Cuándo conviene usar reglas y cuándo una ontología?
- ¿Qué es el bottleneck de la adquisición de conocimiento y cómo afecta al desarrollo de un sistema experto?
- Enumera dos sistemas expertos históricos con sus datos (reglas y precisión).
C. Simular comportamientos con experta (RA5-b)¶
- ¿Por qué
expertafalla en Python 3.10+ y cuál es la solución que usamos en este módulo? - Escribe el código de un sistema
expertaque clasifique una incidencia como crítica siimpacto=altoousuarios>50. - Escribe el código de un sistema de clasificación de animales (guepardo) como el de la teoría.
- Explica qué hacen
engine.reset()yengine.run(). - Propón un ámbito distinto a los vistos en clase (p. ej. hipoteca, semáforo, cultivo) y describe 3 reglas de su sistema experto.
- 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)¶
- Diferencia los dos enfoques híbridos de la teoría: deducir reglas de los datos frente a mejorar reglas propias con aprendizaje automático.
- ¿Qué hace Human-Learn que no hace un sistema experto puro?
- ¿Qué ventaja tiene FIGS frente a un árbol de decisión grande, en términos de interpretabilidad?
- En
UD05_N04_reglas_desde_datos_titanic.ipynb, ¿quién escribe las reglas: el experto o el algoritmo? Justifica con lo que haceFIGSClassifier. - Propón un caso donde usarías skope-rules en vez de escribir las reglas a mano.
E. Lógica difusa (RA5-b/d)¶
- Explica la diferencia entre lógica proposicional y lógica difusa con el ejemplo de «hace frío».
- Define variable lingüística, valor lingüístico y función de pertenencia, con un ejemplo de cada una.
- Describe los tres pasos del funcionamiento de un sistema de razonamiento impreciso (fuzzificación, evaluación de reglas, desfuzzificación).
- 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?
- ¿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)¶
- Diferencia sensibilidad y robustez de un sistema experto.
- ¿Qué ocurre si se añaden demasiadas condiciones al antecedente de una regla crítica? ¿Y si se simplifica en exceso?
- Explica el problema de la histéresis en un sistema de ventilación con sensor de CO y la solución.
- ¿Cómo afecta subir el umbral de certeza de un diagnóstico a los falsos positivos y a las alertas tempranas?
- ¿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)¶
- Explica qué es la salience y por qué se usa para reglas de emergencia.
- ¿Qué es el control de meta (metarrazonamiento)? Relaciónalo con el nivel de «sabiduría» de la jerarquía DIKW.
- Define las especificaciones de respuesta de un sistema de control: precisión, tiempo de asentamiento, sobreimpulso y estabilidad.
- 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)¶
- Describe el lazo de control (SP, error, controlador, actuador, planta, PV) y la fórmula del PID.
- ¿Qué limitaciones tiene el PID frente a sistemas no lineales o con retraso?
- Enumera los cuatro tipos de controladores inteligentes y la ventaja de cada uno sobre el PID.
- Con los datos de la teoría: ¿qué mejora aportó el control difuso frente al PID en el control térmico (asentamiento y sobreimpulso)?
- Explica cómo un sistema experto puede actuar como controlador (directo y supervisor) y qué ventaja aporta la explicación.
- ¿Qué es el MPC (control predictivo) y por qué es proactivo?
I. Aplicaciones y tendencias (contenidos RA5)¶
- Enumera cuatro sectores donde se aplican sistemas expertos y un uso en cada uno.
- ¿Qué es un BRMS y qué herramienta es la más conocida (Drools)?
- ¿Qué son los sistemas neuro-simbólicos y qué relación tienen con los sistemas híbridos del bloque D?
- ¿Qué es la IA explicable (XAI) y qué relación tiene con MYCIN y con el RGPD?
- Explica el uso de reglas como guardarraíl del ML con un ejemplo (p. ej. LLM acotado).
J. Caso práctico¶
- 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.