temario - cs.uns.edu.arac/cia/downloads/clases teoricas/clase-18-cia-11-sia.pdf · modus ponens...
TRANSCRIPT
09-Dec-19
1
Departamento de Ciencias e Ingeniería de la ComputaciónUniversidad Nacional del Sur
Bahía Blanca – Argentina
Conceptos de Inteligencia Artificial &
Sistemas Inteligentes Artificiales
Dr. Luciano H. Tamargohttp://cs.uns.edu.ar/~lt
Clase 18 – CIAClase 11 – SIA
Dinámica de creencias
Temario
Introducción
Intuición
Expansión
Contracción
Revisión
09-Dec-19
2
Agentes deliberativos
Agente deliberativo
percibe información
realiza una acción
Creencias
Razonamiento y decisión
• Consideremos un agente con una base de creencias y que puede razonar para tomar decisiones a fin de elegir que acción realizar.
Cuando se percibe nueva información se pueden producir cambios en las
creencias del agente.
¿Dónde está el profesor?
oficina ¬ aula
Razonamiento
¿aula? no sé¿oficina? no séSentencias de lógica
proposicional
Derivación con Modus Ponens
• Consideremos que se utiliza lógica proposicional y Modus Ponens para hacer una derivación.
• Por ejemplo, el agente quiere determinar a donde dirigirse para encontrar a un profesor.
• La única información disponible es si el profesor está en su oficina no está en el aula.
09-Dec-19
3
oficina ¬ aula
oficina
Razonamiento
¿Dónde está el profesor?
oficina
¿oficina? sí¿ ¬ aula? sí¿aula? no
• Ahora se produce un cambio: el agente adquiere la información que el profesor está en su oficina.
• Si agrega esa información a su base de creencias, entonces puede deducir y tomar una decisión.
Ir_a_oficina
oficina ¬ aula
oficinaaula
Razonamiento
¿Dónde está el profesor?
aula
¿aula? sí¿oficina? sí¿ ¬ aula? sí
¿ y ahora ?
• Ahora se produce otro cambio: el agente adquiere la información que el profesor está en su oficina.
• Si simplemente agrega esa información a su base de creencias, entonces se produce una inconsistencia.
09-Dec-19
4
Para evitar que se puedan inferir conclusiones contradictorias hay dos grandes grupos de propuestas:
a) Mantener la base de creencias con potenciales contradicciones y disponer de una inferencia que permita decidir ante una contradicción (Ej. DeLP).
b) Mantener la base de creencias libre de contradicciones (consistente) y usar una inferencia clásica como Modus Ponens (Ej. modelo de teoría del cambio de AGM).
A continuación veremos los conceptos del modelo AGM.
Observación: el conjunto de hechos y reglas estrictas de un programa DeLPrequiere ser un conjunto libre de contradicciones y puede utilizar un modelo de cambio.
Dos grandes opciones
Dos grandes opciones
b) Mantener la base de creencias libre de contradicciones (consistente) y usar una inferencia clásica como Modus Ponens (Ej. modelo de teoría del cambio de AGM).
09-Dec-19
5
Historia
b) Mantener la base de creencias libre de contradicciones (consistente) y usar una inferencia clásica como Modus Ponens (Ej. modelo de teoría del cambio de AGM).
• Los orígenes de la teoría de revisión de creencias (beliefrevision) se remontan hacia los 1970s, cuando Isaac Levi discutió los problemas que conciernen a este campo de investigación [Lev77].
• También, William Harper propuso una manera racional de relacionar algunos operadores de cambio de creencias [Har75].
Historia
b) Mantener la base de creencias libre de contradicciones (consistente) y usar una inferencia clásica como Modus Ponens (Ej. modelo de teoría del cambio de AGM).
• El principal avance en la teoría de cambio de creencias fue durante los 1980s cuando Carlos Alchourrón y David Makinson estudiaron los cambios en códigos legales [AM81] y Peter Gärdenfors abordaba los postulados racionales para operadores de cambio [Gär82].
• Este avance quedó marcado después de que los tres autores escribieran un artículo internacionalmente conocido como modelo AGM [AGM85].
• Este fue el marco de trabajo formal más general hasta ese momento para estudios de cambio de creencias y representa un punto de quiebre en la evolución de la teoría de cambio de creencias.
09-Dec-19
6
Dos grandes opciones
b) Mantener la base de creencias libre de contradicciones (consistente) y usar una inferencia clásica como Modus Ponens (Ej. modelo de teoría del cambio de AGM).
• La meta principal de la Teoría del Cambio es intentar modelar la dinámica de creencias.
• El modelo AGM presentado en 1985 es uno de los principales referentes de la teoría del cambio.
• Hansson
• Falappa
• Otros…
Modelo AGM
• El modelo AGM presentado en 1985 es uno de los principales referentes de la teoría del cambio.
• En este modelo las creencias son representadas por un conjunto K de sentencias en la lógica proposicional.
• Proponen tres operadores para modelar la dinámica de las creencias:
09-Dec-19
7
Modelo AGM
• En este modelo las creencias son representadas por un conjunto K de sentencias en la lógica proposicional.
• Proponen tres operadores para modelar la dinámica de las creencias:
expansión: es una operación que incorpora información nueva sin ningún chequeo de consistencia.
contracción: es una operación que elimina creencias sin el agregado de ninguna nueva.
revisión: es una operación que permite agregar consistentemente una creencia a un conjunto de creencias.
+
÷
*
Modelo AGM para Teoría del Cambio
• Se denota con Cn(K) al conjunto de sentencias que se deducen del conjunto K, (Cn por Consecuencia)
• Cn(K) indica que la sentencia se deduce de K.• K es inconsistente si Cn(K) y ¬ Cn(K).
09-Dec-19
8
Temario
Introducción
Ejemplos intuitivos
Expansión
Contracción
Revisión
• Considere un agente con la base K que figura a continuación:
Ejemplos: expansión.
a r
bK =
• La sentencia “a” puede agregarse a K sin producir inconsistencias:
a r
ba
K =
• “a b” puede agregarse a K sin producir inconsistencias:
a r
baa b
K =
Llamamos a esto expansión de K
Expansión de K
09-Dec-19
9
• Considere un agente con la base K que figura a continuación:
Ejemplos: expansión.
a r
bK =
• ¿Qué debería pasar si agregamos “b” a K?:
a r
bK =
• Debería quedar como estaba
• Considere un agente con la base K que figura a continuación:
Ejemplos: contracción y revisión
a r
bK =
• Agregar la sentencia “¬ b” a K produce una inconsistencia.
- Opción 1: rechazo la sentencia nueva.
- Opción 2: revisión priorizada: considero que la información nueva tiene prioridad sobre la existente,
entonces elimino sentencias de K, con lo cual
puedo agregar “¬ b” y K se mantiene consistente.
a r
bK = a r K = a r
¬ bK = Revisión de K
• Eliminar sentencias de K se denomina contracción de K.
Contracción de K
09-Dec-19
10
• Expansión de K por una sentencia (denotada K + ) :
Ejemplos con operadores de cambio
ExpansiónK = K =K + a
• Contracción de K por una sentencia (denotada K - ) :
ContracciónK = K =K - b
• Revisión de K por una sentencia (denotada K * ) :
RevisiónK = a r
¬ bK =K * ¬ b
a r
b
a r
ba
a r
ba r
a r
b
• Expansión de K por una sentencia (denotada K + ) :
Ejemplos de expansión
K aumenta y también aumenta
Cn(K)
a r
bK = a r
ba
K =K + a
b ya estaba en Cn(K)no aumenta K ni
Cn(K)
a r
ba
K = a r
ba
K =K + b
aumenta K y Cn(K) aunque b ya estaba
en Cn(K)
a r
ba
K = a r
baa b
K =K + ab
09-Dec-19
11
Ejemplos de Contracción• Contracción de K por una sentencia (denotada K - ) :
a r
bK = a r K =K - bEn este caso “b” tiene
una sola derivación.
a r
bK =
a r
b K =K - aEn este caso aCn(K)
a r
bab r
K =
a r
b K =
K - r
En este caso “r” tiene dos derivaciones
b r
a K =
ab
K =
a rb r K =
Hay cuatro formas de contraer K por “r” eliminando la menor
cantidad posible de sentencias
Hay que elegir una forma de contraer.
K * b
• En la revisión priorizada, para que se preserve la consistencia al incorporar una sentencia a K debe eliminarse toda posible derivación de ¬en K (si es que existe).
• Esto hace de la revisión el operador más complejo de los tres, sin embargo, es posible definir la revisión en función de los otros dos operadores.
• La Identidad de Levi permite definir revisiones a partir de contracciones y expansiones:
Revisión priorizada
K * = (K − ¬) +
a r
¬ bK = a r K’ = a r
bK =
Revisión de K por b
Contracción de K por ¬b
K - ¬b K’+ b
Expansión de K’ por b
09-Dec-19
12
Ejemplos de revisión
No cambia porque b ya estaba
a r
bK = a r
bK =K * b
• Identidad de Levi K * = (K − ¬) +
a r
bab r
K =K * ¬r
En este caso “r” tiene dos
derivaciones.
Hay que elegir una de las 4 forma de contraer
K por “r” y luego expandir por “¬r”
a rb r
¬r
K =
Esta es una de las posibles formas de revisar K por “¬r”.
Temario
Introducción
Ejemplos intuitivos
Expansión
Contracción
Revisión
09-Dec-19
13
• Expansión de K por una sentencia (denotada K + ) :
Ejemplos de expansión
K aumenta y también
aumenta Cn(K)
a r
bK = a r
ba
K =K + a
b ya estaba en Cn(K)no aumenta K ni
Cn(K)
a r
ba
K = a r
ba
K =K + b
¿Cómo se implementa un operador de expansión?
Consideremos estas opciones:
• K + = K {}
• K +1 = {}
• K +2 = K {x, x }
¿Cómo debería comportarse un operador de expansión?
• Generalmente las operaciones de cambio se presentan mediante dos formas diferentes:• Modelos Constructivos. Se da una definición explícita de la operación
de cambio, indicando los diferentes pasos que deben seguirse para que la operación de cambio deseada se haga efectiva.
• Teoremas de Representación o Caracterizaciones Axiomáticas. Se define una operación de cambio en términos de propiedades o postulados y la trata como una “caja negra” en donde se conocen las propiedades de la misma pero se desconoce la forma en que se hace efectiva.
Contracción
09-Dec-19
14
• Para caracterizar la expansión de K por (notada K + ) se indican cuales son las propiedades que debe satisfacer el operador. A estas propiedades se las llama postulados.
• A continuación se muestran algunos postulados que debe cumplir un operador de expansión (cualquiera sea su implementación):
• Éxito: (K + ) La expansión debe tener éxito en agregar
• Inclusión: K K + .No debe perderse información.
• Vacuidad: Si K entonces (K + ) = K .Si ya estaba incluido, la expansión no produce cambios.
• Monotonía: Si H K, entonces H + K + .
Caracterización de la expansión
Temario
Introducción
Ejemplos intuitivos
Expansión
Contracción
Revisión
09-Dec-19
15
• Una contracción es una operación de cambio que consiste en la eliminación de una creencia sin el agregado de ninguna nueva.
• La contracción de K por generalmente se nota K - • Ejemplos:
Contracción
a r
a b r
bc w
a r
b r
bc w
a r
a b r
b
a r
a b r
bc w
K = K - a = K - (cw)= K - c = K
• Una contracción K - debe garantizar que no se infiera de la base resultante.
Contracción
a r
a b r
bc w
K = a r b rc w
K - r =
abc w
K - r =
a r
bc w
K - r =
ab rc w
K - r =
Distintas soluciones para K – r:
¿Cómo se implementa un operador de contracción?
Consideremos estas opciones:
• K -1 =
• K -2 = K \ {}
¿Cómo debería comportarse un operador de contracción?
09-Dec-19
16
• Para caracterizar que es lo que se espera de un operador de contracción, se plantean postulados (propiedades) que el operador debería cumplir. A continuación se incluyen dos de estos postulados a modo de ejemplo:
• Éxito: Si no es una tautología, entonces la contracción debe tener éxito en la eliminación de , esto es, Cn(K-).
• Inclusión: K - K.La contracción no debe agregar nuevas sentencias.
• Por ejemplo, si el operador se implementa como: K-=K\{}, esta implementación no cumple con el postulado “éxito”.
• Además, en Teoría del Cambio se busca satisfacer el principio del mínimo cambio: el operador debe realizar el menor cambio posible. Esto evita soluciones no deseadas como K-= (que para eliminar propone eliminar todo).
Caracterización de la contracción
• A continuación se mostrará un operador de contracción que fue propuesto por Sven Ove Hansson en 1994 llamado Kernel contraction [2].
• Las contracciones de tipo kernel de K con respecto a consisten de:
1. Obtener los subconjuntos minimales de K que deducen .
2. Elegir de cada una de estas derivaciones mínimas sentencias a ser eliminadas con una función de incisión.
3. Eliminar las sentencias “seleccionadas” por la función de incisión.
Definición de un operador de contracción
09-Dec-19
17
1. Obtener los subconjuntos minimales de K que derivan .
• Definición: Dado un conjunto K y una sentencia , el conjunto de kernels (kernel set) de K con respecto a , notado como ker(K,), se define como el conjunto de conjuntos H tales que:
- H K.
- Cn(H).
- No existe H’ tal que H’ H y Cn(H’).
• A cada elemento de ker(K,) se lo denomina -kernel.
MODELO CONSTRUCTIVO
Contracción tipo “Kernel”
• Definición: Sean K un conjunto de sentencias, una sentencia y ker(K,) el conjunto de kernels de K con respecto a . Decimos que “” es una función de incisión si y solo si:
- (ker(K,)) (ker(K,)).
- Si ≠ X y X ker(K,) entonces X (ker(K,)) .
• Observe que no se define una función concreta, sino que es lo que debe cumplir una función de incisión: elegir como mínimo un elemento de cada prueba minimal.
• Por ejemplo: 1 podría elegir el primer elemento en orden lexicográfico, y 2
podría elegir todos los elementos.
2. Elegir de cada una de estas derivaciones mínimas sentencias a ser eliminadas con una función de incisión.
Contracción tipo “Kernel”
09-Dec-19
18
• Definición: Dado un conjunto K, una sentencia , y “” una función de incisión entonces la operación de kernel contraction “÷” de K con respecto a se define como:
K ÷ = K \ (ker(K,))
• El operador “÷” tiene como subíndice a “” ya que la contracción será diferente para cada “” concreta que se defina. Por ejemplo: ÷1 con 1 que elige el primer elemento en orden lexicográfico, o ÷2 con 2 que elige todos los elementos.
• Note que en ambos casos siempre se eligen elementos relevantes para la deducción de .
3. Eliminar las sentencias “seleccionadas” por la función de incisión.
Contracción tipo “Kernel”
Ejemplo: considere 1 que elige el primer elemento en orden lexicográfico, y supongamos que deseamos contraer con respecto a “b” (K ÷1 b).
Entonces:
• ker(K, b) = {K1,K2,K3}.
- K1={b}.
- K2={a, ab}
- K3={w, wa, ab}
• 1 (ker(K ,b)) = {b, a, ab} elije de cada Ki sentencias a ser quitadas.
• K ÷ 1 b = K \ (ker(K,b)) = {w, wa, c}
• Esto es, “corta” cada subconjunto Ki (prueba de b) para que en (K ÷ 1 b) no se derive “b”.
Contracción tipo “Kernel”
baa b
ww a
c
K = ww a
c
K =
K÷1 b
09-Dec-19
19
Temario
Introducción
Ejemplos intuitivos
Expansión
Contracción
Revisión
• Las revisiones son operaciones de cambio que permiten agregar información a un conjunto o a una base de creencias respetando las siguientes premisas:
1. Preservar consistencia en el conjunto revisado.
2. Preservar tantas creencias del conjunto original como sea posible.
• Por lo tanto, la revisión tiene la propiedad de que permite incorporar creencias a un conjunto de creencias generando un nuevo conjunto de creencias consistente.
• Esta característica hace que la operación de revisión sea la más interesante dentro de la teoría de cambio.
• La revisión de K por la sentencia generalmente se indica con K *
Operación de revisión
09-Dec-19
20
Revisión priorizada tipo kernelK * = (K ÷ ¬) + = K \ (ker(K, ¬)) {}
Contracción de tipo kernelde K por r, usando la
función 1 que selecciona el primero de cada kernel en
orden lexicográfico.
Expansión de K por ¬r
K * 1 ¬r
a r
bab rc r
K =
K ÷1 r
a rb r c r
K =a rb r
¬rc r
K =
K+ ¬r
Supongamos que deseamos revisar a K con respecto a “b” con
una revisión tipo kernel.
Ejemplo de revisión tipo “Kernel”
baa b
ww a
c
K = (K ÷1b)+ bK *1 b = = K / 1(ker(K, b)) {b }
09-Dec-19
21
Ejemplo de revisión tipo “Kernel”
baa b
ww a
c
K = (K ÷1b)+ bK *1 b = = K / 1(ker(K, b)) {b }
Ejemplo de revisión tipo “Kernel”
baa b
ww a
c
K =
(K ÷1b)+ bK *1 b = = K / 1(ker(K, b)) {b }
ww aa b
aa b
b
ker(K, b)
09-Dec-19
22
Ejemplo de revisión tipo “Kernel”
baa b
ww a
c
K =
(K ÷1b)+ bK *1 b = = K / 1(ker(K, b)) {b }
ww aa b
aa b
b
ker(K, b) 1(ker(K, b))
a b
a
bConsidere 1
que elige el primer elemento en orden lexicográfico 1
Ejemplo de revisión tipo “Kernel”
baa b
ww a
c
K =
(K ÷1b)+ bK *1 b = = K / 1(ker(K, b)) {b }
1(ker(K, b))
a b
a
b
ww a
c
=
Esto es, “corta” cada subconjunto Ki (prueba de b) para que en K ÷1 b no se derive “b”.
09-Dec-19
23
Ejemplo de revisión tipo “Kernel”
(K ÷1b)+ bK *1 b = = K / 1(ker(K, b)) {b }
ww a
c
Ejemplo de revisión tipo “Kernel”
(K ÷1b)+ bK *1 b = = K / 1(ker(K, b)) {b }
ww a
c
b b
ww a
c
=
09-Dec-19
24
• Al realizar una revisión K * sobre un conjunto o base de creencias K se pueden tener dos políticas:
- Revisión priorizada: considera que la entrada tiene primacía sobre las creencias en K. Por lo tanto, la operación garantiza que luego de revisar, la base resultante K * es consistente, y se deduce de K * . Para garantizar la consistencia puede eliminar creencias que estaban en K.
- Revisión no priorizada: considera que la entrada no tiene primacía sobre las creencias de K. Entonces puede ocurrir que para garantizar la consistencia de K * , no se eliminen sentencias de K pero no se pueda garantizar que se deduce de K * ( puede ser “rechazada” ).
Operación de revisión
FIN
Gracias por su atención