Eduardo Morales / L. Enrique Súcar Reglas de Producción Sesión 05 INTELIGENCIA ARTIFICIAL.

59
Eduardo Morales / L. Enrique Súcar Reglas de Producción Sesión 05 INTELIGENCIA ARTIFICIAL

Transcript of Eduardo Morales / L. Enrique Súcar Reglas de Producción Sesión 05 INTELIGENCIA ARTIFICIAL.

Page 1: Eduardo Morales / L. Enrique Súcar Reglas de Producción Sesión 05 INTELIGENCIA ARTIFICIAL.

Eduardo Morales / L. Enrique SúcarEduardo Morales / L. Enrique Súcar

Reglas de ProducciónReglas de Producción

Sesión 05Sesión 05

INTELIGENCIA ARTIFICIAL

Page 2: Eduardo Morales / L. Enrique Súcar Reglas de Producción Sesión 05 INTELIGENCIA ARTIFICIAL.

Normalmente se asocia la inteligencia con “regularidades” y el comportamiento inteligente parece que ejecuta reglas.

Newell y Simon 70's proponen los sistemas de producción como un modelo psicológico del comportamiento humano.

Normalmente se asocia la inteligencia con “regularidades” y el comportamiento inteligente parece que ejecuta reglas.

Newell y Simon 70's proponen los sistemas de producción como un modelo psicológico del comportamiento humano.

IntroducciónIntroducción

Page 3: Eduardo Morales / L. Enrique Súcar Reglas de Producción Sesión 05 INTELIGENCIA ARTIFICIAL.

En este modelo, parte del conocimiento humano se representa en forma de producciones o reglas de producción.

En este modelo, parte del conocimiento humano se representa en forma de producciones o reglas de producción.

IntroducciónIntroducción

Se asemeja al proceso de memoria humano: memoria a corto plazo (deducciones intermedias) y memoria a largo plazo (producciones).

Se asemeja al proceso de memoria humano: memoria a corto plazo (deducciones intermedias) y memoria a largo plazo (producciones).

Page 4: Eduardo Morales / L. Enrique Súcar Reglas de Producción Sesión 05 INTELIGENCIA ARTIFICIAL.

Normalmente las reglas de producción se ven como un formalismo en el cual representar el conocimiento y es el formalismo más usado en los sistemas expertos.

Originalmente las producciones eran reglas gramaticales para manipular cadenas de símbolos.

Normalmente las reglas de producción se ven como un formalismo en el cual representar el conocimiento y es el formalismo más usado en los sistemas expertos.

Originalmente las producciones eran reglas gramaticales para manipular cadenas de símbolos.

IntroducciónIntroducción

Page 5: Eduardo Morales / L. Enrique Súcar Reglas de Producción Sesión 05 INTELIGENCIA ARTIFICIAL.

Post '43 estudió las propiedades de sistemas de reglas (que llamó sistemas canónicos). Por ejemplo:

Post '43 estudió las propiedades de sistemas de reglas (que llamó sistemas canónicos). Por ejemplo:

Sistemas canónicosSistemas canónicos

Producciones: (p1) $ -> a$a (p2) $ -> b$b (p3) $ -> c$c

Producciones: (p1) $ -> a$a (p2) $ -> b$b (p3) $ -> c$c

A = {a,b,c} (alfabeto) A = {a,b,c} (alfabeto)

Axiomas: a, b, c, aa, bb, cc Axiomas: a, b, c, aa, bb, cc

Page 6: Eduardo Morales / L. Enrique Súcar Reglas de Producción Sesión 05 INTELIGENCIA ARTIFICIAL.

Estas reglas nos generan palíndromes, y podemos rastrear que producciones se aplicaron (v.g., bacab).

Estas reglas nos generan palíndromes, y podemos rastrear que producciones se aplicaron (v.g., bacab).

Sistemas canónicosSistemas canónicos

Page 7: Eduardo Morales / L. Enrique Súcar Reglas de Producción Sesión 05 INTELIGENCIA ARTIFICIAL.

Manipulan estructuras de símbolos, como listas o vectores.

Se tiene: • Un conjunto N de nombres de objetos en el dominio • Un conjunto P de propiedades que representan atributos de los objetos

Manipulan estructuras de símbolos, como listas o vectores.

Se tiene: • Un conjunto N de nombres de objetos en el dominio • Un conjunto P de propiedades que representan atributos de los objetos

Reglas de producciónReglas de producción

Page 8: Eduardo Morales / L. Enrique Súcar Reglas de Producción Sesión 05 INTELIGENCIA ARTIFICIAL.

• Un conjunto V de valores que los atributos pueden tener

Generalmente se usa una tripleta: (objeto atributo valor).

Por ejemplo: • (juan edad 25)• (juan edad X)• (turbina1 capacidad 50)

• Un conjunto V de valores que los atributos pueden tener

Generalmente se usa una tripleta: (objeto atributo valor).

Por ejemplo: • (juan edad 25)• (juan edad X)• (turbina1 capacidad 50)

Page 9: Eduardo Morales / L. Enrique Súcar Reglas de Producción Sesión 05 INTELIGENCIA ARTIFICIAL.

Estructura de una regla:Estructura de una regla:

P …, P Q …, QP …, P Q …, Q11 mm 11 n n

Que significa: IF las condiciones P y P y... y P se cumplen THEN realiza las acciones (o concluye) Q y... y Q

Que significa: IF las condiciones P y P y... y P se cumplen THEN realiza las acciones (o concluye) Q y... y Q

11 mm22

11 nn

Page 10: Eduardo Morales / L. Enrique Súcar Reglas de Producción Sesión 05 INTELIGENCIA ARTIFICIAL.

IF Animal es_un carnívoro AND

Animal color café AND

Animal tiene rayas

THEN Animal es tigre

IF Animal es_un carnívoro AND

Animal color café AND

Animal tiene rayas

THEN Animal es tigre

Page 11: Eduardo Morales / L. Enrique Súcar Reglas de Producción Sesión 05 INTELIGENCIA ARTIFICIAL.

• Modular: cada regla define un pequeño y relativamente independiente pedazo de conocimiento

• Modular: cada regla define un pequeño y relativamente independiente pedazo de conocimiento

Propiedades de las reglas:Propiedades de las reglas:

• Incremental: nuevas reglas pueden ser añadidas a la base de conocimiento relativamente independiente de las demás

• Incremental: nuevas reglas pueden ser añadidas a la base de conocimiento relativamente independiente de las demás

Page 12: Eduardo Morales / L. Enrique Súcar Reglas de Producción Sesión 05 INTELIGENCIA ARTIFICIAL.

• Modificable: como consecuencia ser modular, las reglas pueden ser modificadas o se pueden añadir/quitar reglas fácilmente

• Modificable: como consecuencia ser modular, las reglas pueden ser modificadas o se pueden añadir/quitar reglas fácilmente

• Transparencia: habilidad de explicar sus decisiones y soluciones • Transparencia: habilidad de explicar sus decisiones y soluciones

Page 13: Eduardo Morales / L. Enrique Súcar Reglas de Producción Sesión 05 INTELIGENCIA ARTIFICIAL.

• Un conjunto de reglas (base de conocimiento) • Un conjunto de reglas (base de conocimiento)

Partes principalesPartes principales

Un sistema de producción tiene:Un sistema de producción tiene:

• Un interprete de reglas o máquina de inferencia (que decide qué regla aplicar, controla la actividad del sistema)

• Un interprete de reglas o máquina de inferencia (que decide qué regla aplicar, controla la actividad del sistema)

• Una memoria de trabajo (que guarda los datos, metas, y resultados intermedios) • Una memoria de trabajo (que guarda los datos, metas, y resultados intermedios)

Page 14: Eduardo Morales / L. Enrique Súcar Reglas de Producción Sesión 05 INTELIGENCIA ARTIFICIAL.

Guarda inferencias/aseveraciones temporalmente.

Es la estructura de datos que es observada y manipulada/cambiada por las reglas.

Guarda inferencias/aseveraciones temporalmente.

Es la estructura de datos que es observada y manipulada/cambiada por las reglas.

Memoria de TrabajoMemoria de Trabajo

Page 15: Eduardo Morales / L. Enrique Súcar Reglas de Producción Sesión 05 INTELIGENCIA ARTIFICIAL.

Los datos de la memoria de trabajo son los que permiten cumplir las condiciones de las reglas y dispararlas (las reglas verifican la existencia de elementos en la memoria de trabajo para disparar).

Los datos de la memoria de trabajo son los que permiten cumplir las condiciones de las reglas y dispararlas (las reglas verifican la existencia de elementos en la memoria de trabajo para disparar).

Memoria de TrabajoMemoria de Trabajo

Las acciones de las reglas: modifican, añaden o quitan elementos de la memoria de trabajo (o producen efectos secundarios).

Las acciones de las reglas: modifican, añaden o quitan elementos de la memoria de trabajo (o producen efectos secundarios).

Page 16: Eduardo Morales / L. Enrique Súcar Reglas de Producción Sesión 05 INTELIGENCIA ARTIFICIAL.

El interprete o máquina de inferencia realiza el ciclo reconoce-actua:El interprete o máquina de inferencia realiza el ciclo reconoce-actua:

Máquina de InferenciaMáquina de Inferencia

Aparea las condiciones (o acciones) de las reglas con los elementos de la memoria de trabajo

Aparea las condiciones (o acciones) de las reglas con los elementos de la memoria de trabajo

1.1.

Page 17: Eduardo Morales / L. Enrique Súcar Reglas de Producción Sesión 05 INTELIGENCIA ARTIFICIAL.

Si existe más de una regla que puede disparar, escoge una (resolución de conflictos)

Si existe más de una regla que puede disparar, escoge una (resolución de conflictos)

Aplica la regla (ejecuta las acciones/conclusiones) que puede involucrar cambios la memoria de trabajo

Aplica la regla (ejecuta las acciones/conclusiones) que puede involucrar cambios la memoria de trabajo

2.2.

3.3.

Page 18: Eduardo Morales / L. Enrique Súcar Reglas de Producción Sesión 05 INTELIGENCIA ARTIFICIAL.

Generalmente el ciclo empieza con unos datos iniciales y para cuando no hay reglas aplicables (o por una regla).

El sentido/importancia/contribución de cada regla depende de su contribución dentro de todas las reglas para solucionar el problema.

Generalmente el ciclo empieza con unos datos iniciales y para cuando no hay reglas aplicables (o por una regla).

El sentido/importancia/contribución de cada regla depende de su contribución dentro de todas las reglas para solucionar el problema.

Máquina de InferenciaMáquina de Inferencia

Page 19: Eduardo Morales / L. Enrique Súcar Reglas de Producción Sesión 05 INTELIGENCIA ARTIFICIAL.

Ejemplo: sistema para créditos

Base de Conocimiento– Si hist-credito & solvente & refer Entonces

otorga-prest– Si tarjetas-credito > 2 Entonces hist-

credito– Si hipoteca-casa OR prest-carro Entonces

hist-credito– Si ingresos > pago-mensual x 3 Entonces

solvente– Si ref-1 & ref-2 & ref-3 Entonces refer

Memoria de Trabajo

• ingresos=1000• pago-mensual=200• hipoteca-casa• ref-Maria• ref-Juan• ref-Pedro

hist-credito

solvente

refer

otorga-prest

Page 20: Eduardo Morales / L. Enrique Súcar Reglas de Producción Sesión 05 INTELIGENCIA ARTIFICIAL.

Existen diferentes estrategias de razonamiento: a nivel global las reglas pueden ser llevadas en un encadenamiento hacia adelante o en un encadenamiento hacia atrás.

Existen diferentes estrategias de razonamiento: a nivel global las reglas pueden ser llevadas en un encadenamiento hacia adelante o en un encadenamiento hacia atrás.

Máquina de InferenciaMáquina de Inferencia

Page 21: Eduardo Morales / L. Enrique Súcar Reglas de Producción Sesión 05 INTELIGENCIA ARTIFICIAL.

Encadenamiento hacia adelante (forward chaining/ data driven/ event driven/ bottom-up) parte de hechos para cumplir condiciones y ejecutar acciones (creando nuevos hechos).

Encadenamiento hacia adelante (forward chaining/ data driven/ event driven/ bottom-up) parte de hechos para cumplir condiciones y ejecutar acciones (creando nuevos hechos).

Estrategias de RazonamientoEstrategias de Razonamiento

Page 22: Eduardo Morales / L. Enrique Súcar Reglas de Producción Sesión 05 INTELIGENCIA ARTIFICIAL.

Encadenamiento hacia atrás (backward chaining/ goal driven/ expectation driven/ top-down) parte de los estados meta y trata de cumplir las condiciones necesarias para llegar a ellos.

Encadenamiento hacia atrás (backward chaining/ goal driven/ expectation driven/ top-down) parte de los estados meta y trata de cumplir las condiciones necesarias para llegar a ellos.

Estrategias de RazonamientoEstrategias de Razonamiento

Page 23: Eduardo Morales / L. Enrique Súcar Reglas de Producción Sesión 05 INTELIGENCIA ARTIFICIAL.

Se pueden tener estrategias que hacen combinación de ambos: oportunístico.

v.g.,

P1: $ -> a$aP2: $ -> b$bP3: $ -> c$c

Se pueden tener estrategias que hacen combinación de ambos: oportunístico.

v.g.,

P1: $ -> a$aP2: $ -> b$bP3: $ -> c$c

Estrategias de RazonamientoEstrategias de Razonamiento

Page 24: Eduardo Morales / L. Enrique Súcar Reglas de Producción Sesión 05 INTELIGENCIA ARTIFICIAL.

Podemos dado c usar las reglas P1, P1, P3, P2, P3 y llegar a: cbcaacaacbc.

Otra forma es tomar cbcaacaacbc y ver que reglas se aplican hasta llegar a algo conocido (c).

Podemos dado c usar las reglas P1, P1, P3, P2, P3 y llegar a: cbcaacaacbc.

Otra forma es tomar cbcaacaacbc y ver que reglas se aplican hasta llegar a algo conocido (c).

Estrategias de RazonamientoEstrategias de Razonamiento

Page 25: Eduardo Morales / L. Enrique Súcar Reglas de Producción Sesión 05 INTELIGENCIA ARTIFICIAL.

El proceso de inferencia se puede ver como un espacio de búsqueda AND/OR, con nodos AND siendo todas las condiciones/ acciones que se tienen que cumplir y los nodos OR siendo las posibles reglas a disparar/ considerar.

El proceso de inferencia se puede ver como un espacio de búsqueda AND/OR, con nodos AND siendo todas las condiciones/ acciones que se tienen que cumplir y los nodos OR siendo las posibles reglas a disparar/ considerar.

Árbol AND/ORÁrbol AND/OR

Page 26: Eduardo Morales / L. Enrique Súcar Reglas de Producción Sesión 05 INTELIGENCIA ARTIFICIAL.

Ejemplo:

Page 27: Eduardo Morales / L. Enrique Súcar Reglas de Producción Sesión 05 INTELIGENCIA ARTIFICIAL.

Depende del propósito y la forma del espacio de búsqueda.

Si el propósito es de cubrir todo lo que se pueda deducir de un conjunto de hechos, el árbol se “achica”, tenemos claras las entradas pero no las conclusiones, entonces encadenamiento hacia adelante.

Depende del propósito y la forma del espacio de búsqueda.

Si el propósito es de cubrir todo lo que se pueda deducir de un conjunto de hechos, el árbol se “achica”, tenemos claras las entradas pero no las conclusiones, entonces encadenamiento hacia adelante.

¿Cuándo usamos cada uno?¿Cuándo usamos cada uno?

Page 28: Eduardo Morales / L. Enrique Súcar Reglas de Producción Sesión 05 INTELIGENCIA ARTIFICIAL.

Si el propósito es verificar/negar una conclusión, el árbol se “ensancha”, tenemos claras las metas pero no las entradas, entonces encadenamiento hacia atrás.

Si el propósito es verificar/negar una conclusión, el árbol se “ensancha”, tenemos claras las metas pero no las entradas, entonces encadenamiento hacia atrás.

¿Cuándo usamos cada uno?¿Cuándo usamos cada uno?

Page 29: Eduardo Morales / L. Enrique Súcar Reglas de Producción Sesión 05 INTELIGENCIA ARTIFICIAL.

Forward:• HC H• I S• R1,R2,R3 R• H,S,R P

Backward:• P H,S,R• H HC• S I• R R1,R2,R3

Forward:• HC H• I S• R1,R2,R3 R• H,S,R P

Backward:• P H,S,R• H HC• S I• R R1,R2,R3

Ejemplo de encadenamientosEjemplo de encadenamientos

Page 30: Eduardo Morales / L. Enrique Súcar Reglas de Producción Sesión 05 INTELIGENCIA ARTIFICIAL.

Explicaciones sirven para:

• Mostrar deficiencias de las reglas • Clarificar suposiciones de la máquina • Explicar situaciones no anticipadas • Hacer sentir al usuario más seguro • Hacer ver la máquina más “inteligente”

Explicaciones sirven para:

• Mostrar deficiencias de las reglas • Clarificar suposiciones de la máquina • Explicar situaciones no anticipadas • Hacer sentir al usuario más seguro • Hacer ver la máquina más “inteligente”

ExplicaciónExplicación

Page 31: Eduardo Morales / L. Enrique Súcar Reglas de Producción Sesión 05 INTELIGENCIA ARTIFICIAL.

• HOW, e.g., ¿Cómo supiste N? • WHY, e.g., ¿Por qué quieres saber A? • HOW, e.g., ¿Cómo supiste N? • WHY, e.g., ¿Por qué quieres saber A?

ExplicaciónExplicación

Con las reglas podemos resolver preguntas:Con las reglas podemos resolver preguntas:

Page 32: Eduardo Morales / L. Enrique Súcar Reglas de Producción Sesión 05 INTELIGENCIA ARTIFICIAL.

Ejemplo de explicaciones

Reglas: R1: If una persona tiene $30,000 y tiene grado de licenciatura

Then debe de invertir a plazo fijo R2: If una persona gana mas de $120,000 al año y tiene licenciatura

Then debe de invertir en acciones R3: If una persona es menor de 30 y esta invirtiendo a plazo fijo

Then debe invertir en acciones R4: If una persona es menor de 30

Then tiene nivel licenciatura R5: If una persona quiere invertir en acciones

Then debe de invertir en Telmex

Page 33: Eduardo Morales / L. Enrique Súcar Reglas de Producción Sesión 05 INTELIGENCIA ARTIFICIAL.

Ejemplo de explicaciones

• Hechos: Tiene $30,000 y tiene 25 años Quiere saber si debe de invertir en Telmex?

• Sistema: ¿Cuál es tu ingreso anual?• Usuario : ¿Porqué?• Sistema: Quiero saber si es mayor a $120,000, porque

como sé que tienes nivel de licenciatura, si ganas más de $120,000, te recomiendo invertir en acciones.

Page 34: Eduardo Morales / L. Enrique Súcar Reglas de Producción Sesión 05 INTELIGENCIA ARTIFICIAL.

Porqué (WHY)

• La explicación se basa en utilizar inferencia hacia adelante, en el ejemplo:

• R4: If una persona es menor de 30 Then tiene nivel licenciatura

• R2: If una persona gana mas de $120,000 al año y tiene licenciatura Then debe de invertir en acciones

• De aquí el sistema deduce que necesita saber el ingreso para decidir si invierte en acciones

Page 35: Eduardo Morales / L. Enrique Súcar Reglas de Producción Sesión 05 INTELIGENCIA ARTIFICIAL.

Ejemplo de explicaciones

• Hechos: Tiene $30,000 y tiene 25 años Quiere saber si debe de invertir en Telmex?

• Sistema: Invierte en Telmex • Usuario : ¿Cómo?• Sistema: Como tienes $30,000 y eres menor de 30, (R4)

tienes nivel licenciatura, (R1) debes invertir a plazo fijo. Por otro lado si inviertes a plazo fijo (R3) debes invertir en acciones. Si quieres invertir en acciones te recomiendo (R5) que inviertas en Telmex.

Page 36: Eduardo Morales / L. Enrique Súcar Reglas de Producción Sesión 05 INTELIGENCIA ARTIFICIAL.

Cómo (HOW)• La explicación se basa en hacer inferencia hacia atrás, determinando

las reglas que se aplicaron para llegar a la conclusión, hasta llegar a los datos de entrada.

• En el ejemplo:R5: If una persona quiere invertir en acciones

Then debe de invertir en Telmex R3: If una persona es menor de 30 y esta invirtiendo a plazo fijo

Then debe invertir en acciones R1: If una persona tiene $30,000 y tiene grado de licenciatura

Then debe de invertir a plazo fijo R4: If una persona es menor de 30

Then tiene nivel licenciatura Datos: menor de 30, tiene $30,000

Page 37: Eduardo Morales / L. Enrique Súcar Reglas de Producción Sesión 05 INTELIGENCIA ARTIFICIAL.

Lo que se necesita es una estrategia de resolución de conflictos que guíe (decida cual de las posibles reglas disparar) y evite que el proceso sea exponencial.

Lo que se necesita es una estrategia de resolución de conflictos que guíe (decida cual de las posibles reglas disparar) y evite que el proceso sea exponencial.

Resolución de ConflictosResolución de Conflictos

En razonamiento hacia adelante pueden existir más de una regla que puede disparar. En razonamiento hacia adelante pueden existir más de una regla que puede disparar.

En razonamiento hacia atrás pueden existir más de una regla que cumple con las metas. En razonamiento hacia atrás pueden existir más de una regla que cumple con las metas.

Page 38: Eduardo Morales / L. Enrique Súcar Reglas de Producción Sesión 05 INTELIGENCIA ARTIFICIAL.

Para controlar ésto se utilizan: control global (independiente del dominio) y control local (dependiente del dominio).

Para controlar ésto se utilizan: control global (independiente del dominio) y control local (dependiente del dominio).

Tipos de Control Tipos de Control

El control local puede ser por medio de meta-reglas (reglas que controlan reglas).El control local puede ser por medio de meta-reglas (reglas que controlan reglas).

Puntos: sensibilidad (responder rápidamente a cambios en el medio) y estabilidad (mostrar cierta continuidad en la línea de razonamiento).

Puntos: sensibilidad (responder rápidamente a cambios en el medio) y estabilidad (mostrar cierta continuidad en la línea de razonamiento).

Page 39: Eduardo Morales / L. Enrique Súcar Reglas de Producción Sesión 05 INTELIGENCIA ARTIFICIAL.

Las estrategias globales más utilizadas son: Las estrategias globales más utilizadas son:

Estrategias globalesEstrategias globales

• No se permite disparar una regla más de una vez con los mismos datos (refractorines)

• No se permite disparar una regla más de una vez con los mismos datos (refractorines) • Preferir reglas que utilizan datos más recientes. La idea es de seguir una línea de razonamiento (recency)

• Preferir reglas que utilizan datos más recientes. La idea es de seguir una línea de razonamiento (recency)

Page 40: Eduardo Morales / L. Enrique Súcar Reglas de Producción Sesión 05 INTELIGENCIA ARTIFICIAL.

• Preferir reglas que son más específicas, i.e., reglas que tienen una mayor cantidad de condiciones y por lo tanto son más difíciles de disparar (specificity)

• Preferir reglas que son más específicas, i.e., reglas que tienen una mayor cantidad de condiciones y por lo tanto son más difíciles de disparar (specificity)

Estrategias globalesEstrategias globales

Page 41: Eduardo Morales / L. Enrique Súcar Reglas de Producción Sesión 05 INTELIGENCIA ARTIFICIAL.

Algunos sistemas permiten tener reglas que razonan en cuanto a qué reglas disparar (meta-reglas).

Las meta-reglas tiene el rol de dirigir el razonamiento (más que realizar el razonamiento).

Algunos sistemas permiten tener reglas que razonan en cuanto a qué reglas disparar (meta-reglas).

Las meta-reglas tiene el rol de dirigir el razonamiento (más que realizar el razonamiento).

Meta-reglas Meta-reglas

Page 42: Eduardo Morales / L. Enrique Súcar Reglas de Producción Sesión 05 INTELIGENCIA ARTIFICIAL.

IF “Edad” en cierto intervalo THEN Aplica reglas para dicho intervaloIF “Edad” en cierto intervalo THEN Aplica reglas para dicho intervalo

Ejemplos de meta-reglasEjemplos de meta-reglas

Para una aplicación:Para una aplicación:

IF Edad Paciente > 65 THEN Aplica reglas de enfermedades de la vejezIF Edad Paciente > 65 THEN Aplica reglas de enfermedades de la vejez

Para una clase de aplicaciones:Para una clase de aplicaciones:

Page 43: Eduardo Morales / L. Enrique Súcar Reglas de Producción Sesión 05 INTELIGENCIA ARTIFICIAL.

Normalmente existen variables en las reglas y se tiene que hacer un “apareamiento de patrones”.

Normalmente existen variables en las reglas y se tiene que hacer un “apareamiento de patrones”.

Apareamiento de PatronesApareamiento de Patrones

Page 44: Eduardo Morales / L. Enrique Súcar Reglas de Producción Sesión 05 INTELIGENCIA ARTIFICIAL.

If Persona nombre ?x edad ?y And ?y > 12 And ?y < 20 Then ?x es_un adolescenteHecho: Persona nombre Juan edad 25.

If Persona nombre ?x edad ?y And ?y > 12 And ?y < 20 Then ?x es_un adolescenteHecho: Persona nombre Juan edad 25.

Notación : ?x aparea un elemento, !x aparea varios elementos, v.g.,Notación : ?x aparea un elemento, !x aparea varios elementos, v.g.,

Page 45: Eduardo Morales / L. Enrique Súcar Reglas de Producción Sesión 05 INTELIGENCIA ARTIFICIAL.

El apareo de condiciones en general es más fácil en encadenamiento hacia adelante que en encadenamiento hacia atrás:

En Fwd: Dados hechos (sin variables) apareamos con condiciones (con variables) y producimos nuevos hechos (sin variables).

El apareo de condiciones en general es más fácil en encadenamiento hacia adelante que en encadenamiento hacia atrás:

En Fwd: Dados hechos (sin variables) apareamos con condiciones (con variables) y producimos nuevos hechos (sin variables).

Apareamiento de PatronesApareamiento de Patrones

Page 46: Eduardo Morales / L. Enrique Súcar Reglas de Producción Sesión 05 INTELIGENCIA ARTIFICIAL.

En Bwd: Hipótesis (con variables) apareamos consecuencias (con variables) y producimos nuevas hipótesis (con variables). Se acerca más a unificación.

En Bwd: Hipótesis (con variables) apareamos consecuencias (con variables) y producimos nuevas hipótesis (con variables). Se acerca más a unificación.

Apareamiento de PatronesApareamiento de Patrones

Page 47: Eduardo Morales / L. Enrique Súcar Reglas de Producción Sesión 05 INTELIGENCIA ARTIFICIAL.

Encadenamiento hacia atrásEncadenamiento hacia atrás

Pasos de encadenamiento hacia atrás: el proceso trata de establecer valores para

las variables de las reglas

Pasos de encadenamiento hacia atrás: el proceso trata de establecer valores para

las variables de las reglas

Page 48: Eduardo Morales / L. Enrique Súcar Reglas de Producción Sesión 05 INTELIGENCIA ARTIFICIAL.

Establece variables (procedimiento principal) Infiere (trata de inferir los valores) Selecciona reglas (selecciona reglas aplicables) look-ahead (busca condiciones que aplican) Ejecuta (ejecuta la condición) Aplica regla (aplica la regla seleccionada) Evalua condiciones (revisa las condiciones) Establece variables (llamada recursiva) Ejecuta (ejecuta las condiciones) Evalua Conclusiones (evalua las conclusiones) Ejecuta acción (ejecuta acciones) Pregunta (no inferible y “preguntable”)

ENCADENAMIENTO HACIA ATRAS

Page 49: Eduardo Morales / L. Enrique Súcar Reglas de Producción Sesión 05 INTELIGENCIA ARTIFICIAL.

Encadenamiento hacia adelanteEncadenamiento hacia adelante

Pasos de encadenamiento hacia adelante: Pasos de encadenamiento hacia adelante:

• Infiere • Infiere • Selecciona reglas

• Selecciona reglas • Resuelve conflictos

• Resuelve conflictos • Aplica regla • Aplica regla

Page 50: Eduardo Morales / L. Enrique Súcar Reglas de Producción Sesión 05 INTELIGENCIA ARTIFICIAL.

• Permiten representar el conocimiento en forma adecuada para las computadoras • Modularizan pedazos de conocimiento • Permiten el desarrollo incremental • Las decisiones son entendibles y explicables • Abren nuevas posibilidades computacionales (paralelismo) • Representación homogénea de conocimiento • Permiten interacciones no planeadas y útiles

• Permiten representar el conocimiento en forma adecuada para las computadoras • Modularizan pedazos de conocimiento • Permiten el desarrollo incremental • Las decisiones son entendibles y explicables • Abren nuevas posibilidades computacionales (paralelismo) • Representación homogénea de conocimiento • Permiten interacciones no planeadas y útiles

Ventajas de Reglas:Ventajas de Reglas:

Page 51: Eduardo Morales / L. Enrique Súcar Reglas de Producción Sesión 05 INTELIGENCIA ARTIFICIAL.

• No hay fundamento para decidir qué problemas tiene solución • Problemas de verificación / consistencia / completez de conocimiento • Escalamiento sin perder entendimiento /eficiencia • Permiten interacciones no planeadas y no deseadas • No saben cuándo romper sus propias reglas • No tienen acceso al razonamiento que hay detrás de las reglas

• No hay fundamento para decidir qué problemas tiene solución • Problemas de verificación / consistencia / completez de conocimiento • Escalamiento sin perder entendimiento /eficiencia • Permiten interacciones no planeadas y no deseadas • No saben cuándo romper sus propias reglas • No tienen acceso al razonamiento que hay detrás de las reglas

Desventajas de Reglas: Desventajas de Reglas:

Page 52: Eduardo Morales / L. Enrique Súcar Reglas de Producción Sesión 05 INTELIGENCIA ARTIFICIAL.

• Inadecuadas para describir un conocimiento declarativo • Tienen un fuerte sabor operacional, por lo que las reglas deben de pensarse tomando en cuenta esto • Bases de reglas grandes son difíciles de mantener y desarrollar (requiere una partición de las reglas, pero el formalismo no lo permite hacer directamente) • No son adecuadas cuando existe incertidumbre ya que se pierde la modularidad

• Inadecuadas para describir un conocimiento declarativo • Tienen un fuerte sabor operacional, por lo que las reglas deben de pensarse tomando en cuenta esto • Bases de reglas grandes son difíciles de mantener y desarrollar (requiere una partición de las reglas, pero el formalismo no lo permite hacer directamente) • No son adecuadas cuando existe incertidumbre ya que se pierde la modularidad

Page 53: Eduardo Morales / L. Enrique Súcar Reglas de Producción Sesión 05 INTELIGENCIA ARTIFICIAL.

Del tiempo de ejecución el 90% se consume en el proceso de apareo. Del tiempo de ejecución el 90% se consume en el proceso de apareo.

RETE (red) RETE (red)

El algoritmo Rete se basa en dos observaciones (suposiciones):El algoritmo Rete se basa en dos observaciones (suposiciones):

Page 54: Eduardo Morales / L. Enrique Súcar Reglas de Producción Sesión 05 INTELIGENCIA ARTIFICIAL.

1. La memoria de trabajo es muy grande y cambia poco entre cada ciclo. Esto implica que mucha información sigue presente en el siguiente ciclo y se puede utilizar

1. La memoria de trabajo es muy grande y cambia poco entre cada ciclo. Esto implica que mucha información sigue presente en el siguiente ciclo y se puede utilizar

2. Las condiciones de muchas reglas son similares2. Las condiciones de muchas reglas son similares

Page 55: Eduardo Morales / L. Enrique Súcar Reglas de Producción Sesión 05 INTELIGENCIA ARTIFICIAL.

RETE - ejemplo

Page 56: Eduardo Morales / L. Enrique Súcar Reglas de Producción Sesión 05 INTELIGENCIA ARTIFICIAL.

Existen herramientas de desarrollo para construir sistemas basados en reglas. Éstas las podemos clasificar en 3 niveles:

Existen herramientas de desarrollo para construir sistemas basados en reglas. Éstas las podemos clasificar en 3 niveles:

Herramientas de DesarrolloHerramientas de Desarrollo

1. Shells: Exsys, Nexpert, ... 2. Lenguajes de reglas: OPS, Clips, ... 3. Lenguajes simbólicos: Lisp, Prolog

1. Shells: Exsys, Nexpert, ... 2. Lenguajes de reglas: OPS, Clips, ... 3. Lenguajes simbólicos: Lisp, Prolog

Page 57: Eduardo Morales / L. Enrique Súcar Reglas de Producción Sesión 05 INTELIGENCIA ARTIFICIAL.

Ejemplo de Reglas en Prolog

Ejemplo de Reglas en Prolog

Page 58: Eduardo Morales / L. Enrique Súcar Reglas de Producción Sesión 05 INTELIGENCIA ARTIFICIAL.

Tarea

• Resolver el problema que planteaste (o al menos un aspecto del problema) en base a reglas de producción– Especificar el “formato” de las reglas– Especificar el conjunto de reglas (o una

parte representativa de este)– Seleccionar el tipo de encadenamiento y

estrategias de resolución de conflicto, explicando el porqué se seleccionaron

Page 59: Eduardo Morales / L. Enrique Súcar Reglas de Producción Sesión 05 INTELIGENCIA ARTIFICIAL.

F I N