representaciones estructuradas sesión 06 eduardo morales l. enrique sucar sesión 06 eduardo...

81
Representaciones Estructuradas Sesión 06 Eduardo Morales L. Enrique Sucar Fundamentos de Inteligencia Artificial

Upload: esteban-gil-sanchez

Post on 24-Jan-2016

214 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Representaciones Estructuradas Sesión 06 Eduardo Morales L. Enrique Sucar Sesión 06 Eduardo Morales L. Enrique Sucar Fundamentos de Inteligencia Artificial

Representaciones EstructuradasRepresentaciones Estructuradas

Sesión 06Eduardo MoralesL. Enrique Sucar

Sesión 06Eduardo MoralesL. Enrique Sucar

Fundamentos de Inteligencia Artificial

Fundamentos de Inteligencia Artificial

Page 2: Representaciones Estructuradas Sesión 06 Eduardo Morales L. Enrique Sucar Sesión 06 Eduardo Morales L. Enrique Sucar Fundamentos de Inteligencia Artificial

Las limitaciones de las representaciones en base a reglas, en particular, la necesidad de representar aspectos como estructura y relaciones, llevaron a otros esquemas que en general englobamos como representaciones estructuradas.

Las limitaciones de las representaciones en base a reglas, en particular, la necesidad de representar aspectos como estructura y relaciones, llevaron a otros esquemas que en general englobamos como representaciones estructuradas.

IntroducciónIntroducción

Page 3: Representaciones Estructuradas Sesión 06 Eduardo Morales L. Enrique Sucar Sesión 06 Eduardo Morales L. Enrique Sucar Fundamentos de Inteligencia Artificial

Dentro de este tipo de representaciones las dos más significativas, son:

Dentro de este tipo de representaciones las dos más significativas, son:

• Redes Semánticas• Prototipos o Marcos (frames)• Redes Semánticas• Prototipos o Marcos (frames)

IntroducciónIntroducción

Page 4: Representaciones Estructuradas Sesión 06 Eduardo Morales L. Enrique Sucar Sesión 06 Eduardo Morales L. Enrique Sucar Fundamentos de Inteligencia Artificial

Estas representaciones se basan en el uso de grafos, es decir, en representaciones en base a nodos y sus relaciones, por lo que en principio veremos algo de la teoría de grafos, su notación y conceptos básicos.

Estas representaciones se basan en el uso de grafos, es decir, en representaciones en base a nodos y sus relaciones, por lo que en principio veremos algo de la teoría de grafos, su notación y conceptos básicos.

IntroducciónIntroducción

Page 5: Representaciones Estructuradas Sesión 06 Eduardo Morales L. Enrique Sucar Sesión 06 Eduardo Morales L. Enrique Sucar Fundamentos de Inteligencia Artificial

Grafos

Grafos

Un grafo consiste de un conjunto finito de vértices o nodos ( V ), y un conjunto de relaciones entre dichos nodos ( E ).

E representa qué nodos son adyacentes, es decir si (v,w) pertenece a E, entonces v y w son adyacentes y esto se representa con un arco entre dichos nodos.

Un grafo consiste de un conjunto finito de vértices o nodos ( V ), y un conjunto de relaciones entre dichos nodos ( E ).

E representa qué nodos son adyacentes, es decir si (v,w) pertenece a E, entonces v y w son adyacentes y esto se representa con un arco entre dichos nodos.

Page 6: Representaciones Estructuradas Sesión 06 Eduardo Morales L. Enrique Sucar Sesión 06 Eduardo Morales L. Enrique Sucar Fundamentos de Inteligencia Artificial
Page 7: Representaciones Estructuradas Sesión 06 Eduardo Morales L. Enrique Sucar Sesión 06 Eduardo Morales L. Enrique Sucar Fundamentos de Inteligencia Artificial

Grafos Dirigidos Grafos Dirigidos

Si las relaciones tienen una dirección, esto es, el orden en los pares (v,w) es importante entonces G es un grafo dirigido.

Si restringimos a que no existan ciclos, se denomina grafo acíclico dirigido o grafo simple (DAG).

Si las relaciones tienen una dirección, esto es, el orden en los pares (v,w) es importante entonces G es un grafo dirigido.

Si restringimos a que no existan ciclos, se denomina grafo acíclico dirigido o grafo simple (DAG).

Page 8: Representaciones Estructuradas Sesión 06 Eduardo Morales L. Enrique Sucar Sesión 06 Eduardo Morales L. Enrique Sucar Fundamentos de Inteligencia Artificial
Page 9: Representaciones Estructuradas Sesión 06 Eduardo Morales L. Enrique Sucar Sesión 06 Eduardo Morales L. Enrique Sucar Fundamentos de Inteligencia Artificial

Dada una relación dirigida (v,w): v w, v es el padre de w y w es el hijo de v. Si existe una trayectoria de v a w, entonces w es un descendiente de v, y v es un ascendiente de w. Si v no tiene padres es un nodo raíz, si w no tiene hijos es un nodo hoja.

Dada una relación dirigida (v,w): v w, v es el padre de w y w es el hijo de v. Si existe una trayectoria de v a w, entonces w es un descendiente de v, y v es un ascendiente de w. Si v no tiene padres es un nodo raíz, si w no tiene hijos es un nodo hoja.

Relaciones Relaciones

Page 10: Representaciones Estructuradas Sesión 06 Eduardo Morales L. Enrique Sucar Sesión 06 Eduardo Morales L. Enrique Sucar Fundamentos de Inteligencia Artificial

Árboles y Redes Árboles y Redes

G es un árbol si es un grafo dirigido conectado en donde todos los nodos tienen un padre, excepto un nodo (raíz) que no tiene ascendientes.

Un conjunto de árboles es un bosque.

G es un árbol si es un grafo dirigido conectado en donde todos los nodos tienen un padre, excepto un nodo (raíz) que no tiene ascendientes.

Un conjunto de árboles es un bosque.

Page 11: Representaciones Estructuradas Sesión 06 Eduardo Morales L. Enrique Sucar Sesión 06 Eduardo Morales L. Enrique Sucar Fundamentos de Inteligencia Artificial

Una red es un grafo con pesos, es decir,

una red con etiquetas numéricas o pesos asociadas a los arcos y/o nodos.

Una red es un grafo con pesos, es decir,

una red con etiquetas numéricas o pesos asociadas a los arcos y/o nodos.

• nodos/vértices: normalmente con etiquetas• arcos/ligas: pueden o no tener etiquetas (necesarias si existe más de un tipo de arco)

• nodos/vértices: normalmente con etiquetas• arcos/ligas: pueden o no tener etiquetas (necesarias si existe más de un tipo de arco)

Page 12: Representaciones Estructuradas Sesión 06 Eduardo Morales L. Enrique Sucar Sesión 06 Eduardo Morales L. Enrique Sucar Fundamentos de Inteligencia Artificial

Representación con grafos Representación con grafos • Representación de relaciones temporales

y espaciales. • Representación de relaciones causales

(redes de inferencia). • Representación de relaciones

probabilísticas (redes bayesianas).

• Representación de relaciones temporales y espaciales.

• Representación de relaciones causales (redes de inferencia).

• Representación de relaciones probabilísticas (redes bayesianas).

Page 13: Representaciones Estructuradas Sesión 06 Eduardo Morales L. Enrique Sucar Sesión 06 Eduardo Morales L. Enrique Sucar Fundamentos de Inteligencia Artificial

• Representación de relaciones entre conceptos (redes semánticas o asociativas).

• Representación de jerarquías para discriminación y clasificación (árboles).

• Representación de relaciones entre conceptos (redes semánticas o asociativas).

• Representación de jerarquías para discriminación y clasificación (árboles).

Representación con grafos Representación con grafos

Page 14: Representaciones Estructuradas Sesión 06 Eduardo Morales L. Enrique Sucar Sesión 06 Eduardo Morales L. Enrique Sucar Fundamentos de Inteligencia Artificial

Redes Semánticas

Redes Semánticas

Modelo de memoria humana para capturar la semántica de las palabras y lograr un uso del significado parecido a los humanos

[Quillian'66].

Modelo de memoria humana para capturar la semántica de las palabras y lograr un uso del significado parecido a los humanos

[Quillian'66].

Page 15: Representaciones Estructuradas Sesión 06 Eduardo Morales L. Enrique Sucar Sesión 06 Eduardo Morales L. Enrique Sucar Fundamentos de Inteligencia Artificial

Un tipo de red en la cual los nodos representan objetos, conceptos o situaciones y los arcos representan relaciones entre ellos.

Se llama red semántica porque se usaron originalmente para representar el sentido en expresiones de lenguaje natural.

Un tipo de red en la cual los nodos representan objetos, conceptos o situaciones y los arcos representan relaciones entre ellos.

Se llama red semántica porque se usaron originalmente para representar el sentido en expresiones de lenguaje natural.

Page 16: Representaciones Estructuradas Sesión 06 Eduardo Morales L. Enrique Sucar Sesión 06 Eduardo Morales L. Enrique Sucar Fundamentos de Inteligencia Artificial

Ejemplo: Definición en un Diccionario Ejemplo: Definición en un Diccionario

Planta(1) cosa viviente con hojas y raíces(2) fábrica o edificio industrial

FÁBRICAlugar donde se fabrican bienes con máquinas

Planta(1) cosa viviente con hojas y raíces(2) fábrica o edificio industrial

FÁBRICAlugar donde se fabrican bienes con máquinas

Page 17: Representaciones Estructuradas Sesión 06 Eduardo Morales L. Enrique Sucar Sesión 06 Eduardo Morales L. Enrique Sucar Fundamentos de Inteligencia Artificial

cenital

SERVIVO

HOJAS

PLANTA

RAICES

PLANTA

FABRICA EDIFICIO

Page 18: Representaciones Estructuradas Sesión 06 Eduardo Morales L. Enrique Sucar Sesión 06 Eduardo Morales L. Enrique Sucar Fundamentos de Inteligencia Artificial

Representación Representación • Los nodos: conceptos de palabras• Los arcos: ligan conceptos para

establecer la definición

• Los nodos: conceptos de palabras• Los arcos: ligan conceptos para

establecer la definición

• Cada palabra o nodo conceptual se consideraba la cabeza de un “plano” que tiene su definición (v.g., si banco tiene 3 significados, entonces existen 3 planos para él).

• Cada palabra o nodo conceptual se consideraba la cabeza de un “plano” que tiene su definición (v.g., si banco tiene 3 significados, entonces existen 3 planos para él).

Page 19: Representaciones Estructuradas Sesión 06 Eduardo Morales L. Enrique Sucar Sesión 06 Eduardo Morales L. Enrique Sucar Fundamentos de Inteligencia Artificial

Las ligas en el plano representan su definición.

Apuntadores fuera del plano hacen referencia a otros objetos (y planos) en donde se definen.

Las ligas en el plano representan su definición.

Apuntadores fuera del plano hacen referencia a otros objetos (y planos) en donde se definen.

Page 20: Representaciones Estructuradas Sesión 06 Eduardo Morales L. Enrique Sucar Sesión 06 Eduardo Morales L. Enrique Sucar Fundamentos de Inteligencia Artificial
Page 21: Representaciones Estructuradas Sesión 06 Eduardo Morales L. Enrique Sucar Sesión 06 Eduardo Morales L. Enrique Sucar Fundamentos de Inteligencia Artificial

Ejemplo de Diferentes Planos

Page 22: Representaciones Estructuradas Sesión 06 Eduardo Morales L. Enrique Sucar Sesión 06 Eduardo Morales L. Enrique Sucar Fundamentos de Inteligencia Artificial

RelacionesRelaciones

• subclase (is-a): las clases de “arriba” están definidas en términos de conceptos generales que se asumen que se cumplen en todas sus subclases

• modificadores: propiedades particulares de conceptos específicos.

• subclase (is-a): las clases de “arriba” están definidas en términos de conceptos generales que se asumen que se cumplen en todas sus subclases

• modificadores: propiedades particulares de conceptos específicos.

Existen 2 ligas principales: Existen 2 ligas principales:

Page 23: Representaciones Estructuradas Sesión 06 Eduardo Morales L. Enrique Sucar Sesión 06 Eduardo Morales L. Enrique Sucar Fundamentos de Inteligencia Artificial

Pueden existir apuntadores a: superclases (is-a), modificaciones, disjunciones, conjunciones y sujeto/objeto.

Puede existir herencia (v.g., un canario es un animal) y herencia de propiedades (v.g., un canario come).

Pueden existir apuntadores a: superclases (is-a), modificaciones, disjunciones, conjunciones y sujeto/objeto.

Puede existir herencia (v.g., un canario es un animal) y herencia de propiedades (v.g., un canario come).

Page 24: Representaciones Estructuradas Sesión 06 Eduardo Morales L. Enrique Sucar Sesión 06 Eduardo Morales L. Enrique Sucar Fundamentos de Inteligencia Artificial

CaseFrame

Page 25: Representaciones Estructuradas Sesión 06 Eduardo Morales L. Enrique Sucar Sesión 06 Eduardo Morales L. Enrique Sucar Fundamentos de Inteligencia Artificial

Case Frames Case Frames

El permitir tener un conjunto de arcos de salida se llama “case frame”,el cual agrupa información de un concepto

posesión es una instancia de pertenencia y hereda los arcos del “case frame”.

Las redes semánticas permiten tener valores por default y cierta expectación acerca de los posibles valores de un atributo.

El permitir tener un conjunto de arcos de salida se llama “case frame”,el cual agrupa información de un concepto

posesión es una instancia de pertenencia y hereda los arcos del “case frame”.

Las redes semánticas permiten tener valores por default y cierta expectación acerca de los posibles valores de un atributo.

Page 26: Representaciones Estructuradas Sesión 06 Eduardo Morales L. Enrique Sucar Sesión 06 Eduardo Morales L. Enrique Sucar Fundamentos de Inteligencia Artificial

La idea es tratar de tener un conjunto adecuado (pequeño) de nodos y de “case frames” genéricos.

La idea es tratar de tener un conjunto adecuado (pequeño) de nodos y de “case frames” genéricos.

Page 27: Representaciones Estructuradas Sesión 06 Eduardo Morales L. Enrique Sucar Sesión 06 Eduardo Morales L. Enrique Sucar Fundamentos de Inteligencia Artificial

InferenciaInferencia La idea de ésta representación fué originalmente la

interpretación del lenguaje. Quillian describe dos formas de uso: encontrar las

similitudes y diferencias entre palabras, y expresar oraciones congruentes en base a la información en la red.

La idea de ésta representación fué originalmente la interpretación del lenguaje.

Quillian describe dos formas de uso: encontrar las similitudes y diferencias entre palabras, y expresar oraciones congruentes en base a la información en la red.

En general podemos usar este tipo de estructuras para diferentes tipos de razonamiento.

En general podemos usar este tipo de estructuras para diferentes tipos de razonamiento.

Page 28: Representaciones Estructuradas Sesión 06 Eduardo Morales L. Enrique Sucar Sesión 06 Eduardo Morales L. Enrique Sucar Fundamentos de Inteligencia Artificial

Tipos de Razonamiento

Tipos de Razonamiento

1. Búsqueda asociativa:

Encontrar si están relacionados dos o más conceptos, y su tipo de relación mediante el seguimiento de la red hasta encontrar las interacciones.

1. Búsqueda asociativa:

Encontrar si están relacionados dos o más conceptos, y su tipo de relación mediante el seguimiento de la red hasta encontrar las interacciones.

Page 29: Representaciones Estructuradas Sesión 06 Eduardo Morales L. Enrique Sucar Sesión 06 Eduardo Morales L. Enrique Sucar Fundamentos de Inteligencia Artificial

2. Reconocimiento:

Dada una serie de características (nodos “token”) encontrar el concepto (nodo clase) que mejor las define mediante su búsqueda y seguimiento en la red (reconocimiento de imágenes).

2. Reconocimiento:

Dada una serie de características (nodos “token”) encontrar el concepto (nodo clase) que mejor las define mediante su búsqueda y seguimiento en la red (reconocimiento de imágenes).

Page 30: Representaciones Estructuradas Sesión 06 Eduardo Morales L. Enrique Sucar Sesión 06 Eduardo Morales L. Enrique Sucar Fundamentos de Inteligencia Artificial

3. Descripción:

Expresar un concepto en base a sus componentes y relaciones entre ellas (lenguaje natural).

3. Descripción:

Expresar un concepto en base a sus componentes y relaciones entre ellas (lenguaje natural).

Page 31: Representaciones Estructuradas Sesión 06 Eduardo Morales L. Enrique Sucar Sesión 06 Eduardo Morales L. Enrique Sucar Fundamentos de Inteligencia Artificial

Ejemplos de Inferencia

Page 32: Representaciones Estructuradas Sesión 06 Eduardo Morales L. Enrique Sucar Sesión 06 Eduardo Morales L. Enrique Sucar Fundamentos de Inteligencia Artificial

SCHOLAR (Carbonell): Uno de los primeros sistemas que usaron redes semánticas. Se aplicó para enseñar la geografía de sudamérica.

Carbonell distingue entre:

unidades conceptuales (clases) y unidades de ejemplos (instancias).

SCHOLAR (Carbonell): Uno de los primeros sistemas que usaron redes semánticas. Se aplicó para enseñar la geografía de sudamérica.

Carbonell distingue entre:

unidades conceptuales (clases) y unidades de ejemplos (instancias).

Ejemplos de sistemas basados en redes semánticas.

Ejemplos de sistemas basados en redes semánticas.

Page 33: Representaciones Estructuradas Sesión 06 Eduardo Morales L. Enrique Sucar Sesión 06 Eduardo Morales L. Enrique Sucar Fundamentos de Inteligencia Artificial

Explota el uso de etiquetas (tags). Por ejemplo, la etiqueta de irrelevancia aumenta la distancia semántica y guía hacia los atributos más relevantes.

También utilizó etiquetas temporales y permitió poner procedimientos mezclados dentro de la red

(para inferir hechos).

Explota el uso de etiquetas (tags). Por ejemplo, la etiqueta de irrelevancia aumenta la distancia semántica y guía hacia los atributos más relevantes.

También utilizó etiquetas temporales y permitió poner procedimientos mezclados dentro de la red

(para inferir hechos).

Page 34: Representaciones Estructuradas Sesión 06 Eduardo Morales L. Enrique Sucar Sesión 06 Eduardo Morales L. Enrique Sucar Fundamentos de Inteligencia Artificial

SCHOLAR continent

latitude

country

superconcept

superpart

examples

...

Argentina

superconcept

location

Latitude22 to 55

BorderingCountries:eastern

...... Brazil... Uruguay...

South America

superconcept

...

countries

...

state

...

...

...

Page 35: Representaciones Estructuradas Sesión 06 Eduardo Morales L. Enrique Sucar Sesión 06 Eduardo Morales L. Enrique Sucar Fundamentos de Inteligencia Artificial

Otro Ejemplo Otro Ejemplo

ARCH (Winston): sistema para aprender conceptos de estructuras físicas a partir de ejemplos de estructuras descritos en forma de redes semánticas.

El proceso de generalización permite cambiar relaciones entre objetos.

ARCH (Winston): sistema para aprender conceptos de estructuras físicas a partir de ejemplos de estructuras descritos en forma de redes semánticas.

El proceso de generalización permite cambiar relaciones entre objetos.

Page 36: Representaciones Estructuradas Sesión 06 Eduardo Morales L. Enrique Sucar Sesión 06 Eduardo Morales L. Enrique Sucar Fundamentos de Inteligencia Artificial

ARCH E312

a b c

polygon object

blank

texturesize

medium

HAS-AS-PART

A-KIND-OF

A-KIND-OFA-KIND-OF

HAS-PROPERTY-OF

ON-TOP

BENEATH

Page 37: Representaciones Estructuradas Sesión 06 Eduardo Morales L. Enrique Sucar Sesión 06 Eduardo Morales L. Enrique Sucar Fundamentos de Inteligencia Artificial

Redes Semánticas en el Web

• Incoporar “significado” a la información el las páginas en el WWW:– Ontologías de conceptos en diversos dominios– Relaciones entre conceptos

• Esto facilitará a agentes el “entender” la información y hacer búsquedas mucho más sofisticadas

• Uso de estándares como XML y RDF

Page 38: Representaciones Estructuradas Sesión 06 Eduardo Morales L. Enrique Sucar Sesión 06 Eduardo Morales L. Enrique Sucar Fundamentos de Inteligencia Artificial

Ventajas Ventajas • Representación “estructurada” del

conocimiento.• Economía cognoscitiva: no es necesario

representar en forma explícita todas las propiedades.

• Representación “estructurada” del conocimiento.

• Economía cognoscitiva: no es necesario representar en forma explícita todas las propiedades. • Definición de distancia semántica entre conceptos (número de ligas a recorrer).

• Representación “analógica” de conocimiento.

• Definición de distancia semántica entre conceptos (número de ligas a recorrer).

• Representación “analógica” de conocimiento.

Page 39: Representaciones Estructuradas Sesión 06 Eduardo Morales L. Enrique Sucar Sesión 06 Eduardo Morales L. Enrique Sucar Fundamentos de Inteligencia Artificial

Problemas

Problemas

• Las redes semánticas no son muy escrupulosas en cuanto al significado de los nodos (v.g., perro se refiere a la clase, el concepto o un perro en particular).

• Las redes semánticas no son muy escrupulosas en cuanto al significado de los nodos (v.g., perro se refiere a la clase, el concepto o un perro en particular).

Page 40: Representaciones Estructuradas Sesión 06 Eduardo Morales L. Enrique Sucar Sesión 06 Eduardo Morales L. Enrique Sucar Fundamentos de Inteligencia Artificial

• Para establecer si existe relación entre dos conceptos, se sigue un proceso de búsqueda de intersección. Esto, sin embargo, no evita la explosión combinatoria.

• Para establecer si existe relación entre dos conceptos, se sigue un proceso de búsqueda de intersección. Esto, sin embargo, no evita la explosión combinatoria.

Problemas

Problemas

Page 41: Representaciones Estructuradas Sesión 06 Eduardo Morales L. Enrique Sucar Sesión 06 Eduardo Morales L. Enrique Sucar Fundamentos de Inteligencia Artificial

Problemas

Problemas • Finalmente una red semántica tiene:

nodos, arcos y reglas de combinación (sintáxis) y lo que significan (semántica).

• El problema es por falta de distinción entre lo intensional (sense/meaning) y extensional (reference/denotation), por ejemplo:

• Finalmente una red semántica tiene: nodos, arcos y reglas de combinación (sintáxis) y lo que significan (semántica).

• El problema es por falta de distinción entre lo intensional (sense/meaning) y extensional (reference/denotation), por ejemplo:

Page 42: Representaciones Estructuradas Sesión 06 Eduardo Morales L. Enrique Sucar Sesión 06 Eduardo Morales L. Enrique Sucar Fundamentos de Inteligencia Artificial

rojo: todas las cosas rojas (extensional) la propiedad de ser rojo (intensional)rojo: todas las cosas rojas (extensional) la propiedad de ser rojo (intensional)

Page 43: Representaciones Estructuradas Sesión 06 Eduardo Morales L. Enrique Sucar Sesión 06 Eduardo Morales L. Enrique Sucar Fundamentos de Inteligencia Artificial

Implementación

Implementación

Representación alternativa a lógica en forma de cláusulas restringidas a predicados binarios.

Representación alternativa a lógica en forma de cláusulas restringidas a predicados binarios.

Page 44: Representaciones Estructuradas Sesión 06 Eduardo Morales L. Enrique Sucar Sesión 06 Eduardo Morales L. Enrique Sucar Fundamentos de Inteligencia Artificial

Predicados binarios representan las relaciones correspondientes a los arcos en el grafo: el símbolo del predicadocorresponde a la etiqueta del arco, los argumentos del predicado corresponden

a los vértices incidentes de dicho arco.

Predicados binarios representan las relaciones correspondientes a los arcos en el grafo: el símbolo del predicadocorresponde a la etiqueta del arco, los argumentos del predicado corresponden

a los vértices incidentes de dicho arco.

Page 45: Representaciones Estructuradas Sesión 06 Eduardo Morales L. Enrique Sucar Sesión 06 Eduardo Morales L. Enrique Sucar Fundamentos de Inteligencia Artificial

La dirección del arco se expresa

en el orden de los argumentos.

Ejemplos:

isa(tanque, componente)

pared(tanque, acero)

La dirección del arco se expresa

en el orden de los argumentos.

Ejemplos:

isa(tanque, componente)

pared(tanque, acero)

Page 46: Representaciones Estructuradas Sesión 06 Eduardo Morales L. Enrique Sucar Sesión 06 Eduardo Morales L. Enrique Sucar Fundamentos de Inteligencia Artificial

Implementación Implementación

Esta representación se puede extender utilizando variables y predicados no aterrizados. De esta forma una cláusularepresenta una “subred”.

Esta representación se puede extender utilizando variables y predicados no aterrizados. De esta forma una cláusularepresenta una “subred”.

Page 47: Representaciones Estructuradas Sesión 06 Eduardo Morales L. Enrique Sucar Sesión 06 Eduardo Morales L. Enrique Sucar Fundamentos de Inteligencia Artificial

Ejemplos:

pared(X, acero) isa(X, tanque)

contenido(X, agua) isa(X, tanque)

isa(X, tanque) isa(X, tanque-domo)

Ejemplos:

pared(X, acero) isa(X, tanque)

contenido(X, agua) isa(X, tanque)

isa(X, tanque) isa(X, tanque-domo)

En principio no es un problema la restricción a predicados binarios, ya que un predicado de grado n > 2 se puede representar como n + 1 predicados binarios.

En principio no es un problema la restricción a predicados binarios, ya que un predicado de grado n > 2 se puede representar como n + 1 predicados binarios.

Page 48: Representaciones Estructuradas Sesión 06 Eduardo Morales L. Enrique Sucar Sesión 06 Eduardo Morales L. Enrique Sucar Fundamentos de Inteligencia Artificial

FRAMES FRAMES

Frames: estructuras de datos representando situaciones prototípicas (Minsky '75)

Una de las ideas intuitivas detrás de los Frames, es que la memoria se basa mucho en estereotipos (propiedades típicas de los objetos)

Frames: estructuras de datos representando situaciones prototípicas (Minsky '75)

Una de las ideas intuitivas detrás de los Frames, es que la memoria se basa mucho en estereotipos (propiedades típicas de los objetos)

Page 49: Representaciones Estructuradas Sesión 06 Eduardo Morales L. Enrique Sucar Sesión 06 Eduardo Morales L. Enrique Sucar Fundamentos de Inteligencia Artificial

Los sistemas de frames razonan acerca de clases de objetos usando representaciones prototípicas, pero que pueden modificarse para capturar las complejidades del mundo real.

Los sistemas de frames razonan acerca de clases de objetos usando representaciones prototípicas, pero que pueden modificarse para capturar las complejidades del mundo real.

Page 50: Representaciones Estructuradas Sesión 06 Eduardo Morales L. Enrique Sucar Sesión 06 Eduardo Morales L. Enrique Sucar Fundamentos de Inteligencia Artificial

Representación Representación

Idea: tener una sola estructura de datos para poner el conocimiento relevante acerca de una clase de objetos, en lugarde tener el conocimiento distribuido en forma de reglas o fórmulas lógicas.

Idea: tener una sola estructura de datos para poner el conocimiento relevante acerca de una clase de objetos, en lugarde tener el conocimiento distribuido en forma de reglas o fórmulas lógicas.

Permite construir conocimiento declarativo y procedural en un registro con slots y fillers o facets.

Permite construir conocimiento declarativo y procedural en un registro con slots y fillers o facets.

Page 51: Representaciones Estructuradas Sesión 06 Eduardo Morales L. Enrique Sucar Sesión 06 Eduardo Morales L. Enrique Sucar Fundamentos de Inteligencia Artificial

(frame (nombre camión) (is-a objeto) (color rojo) (llantas 10) ...)

Los slots pueden tener valores múltiples

(frame (nombre camión) (is-a objeto) (color rojo) (llantas 10) ...)

Los slots pueden tener valores múltiples

Los slots son atributos y los fillers o facets son los valores, v.g.,

Los slots son atributos y los fillers o facets son los valores, v.g.,

Page 52: Representaciones Estructuradas Sesión 06 Eduardo Morales L. Enrique Sucar Sesión 06 Eduardo Morales L. Enrique Sucar Fundamentos de Inteligencia Artificial

Jerarquías de Frames Jerarquías de Frames

Frames están puestos en una jerarquía en donde los frames de “abajo” pueden heredar los valores de los slots de los frames de “arriba” Normalmente la herencia se hace por medio de los arcos: is-a (al final instance-of )

Frames están puestos en una jerarquía en donde los frames de “abajo” pueden heredar los valores de los slots de los frames de “arriba” Normalmente la herencia se hace por medio de los arcos: is-a (al final instance-of )

Page 53: Representaciones Estructuradas Sesión 06 Eduardo Morales L. Enrique Sucar Sesión 06 Eduardo Morales L. Enrique Sucar Fundamentos de Inteligencia Artificial

En general los frames de “arriba” tienen información típica (poco variable) mientras que los de “abajo” tienen información más específica. En ausencia de ésta, se utiliza la de los padres.

En general los frames de “arriba” tienen información típica (poco variable) mientras que los de “abajo” tienen información más específica. En ausencia de ésta, se utiliza la de los padres.

Se pueden hacer deducciones a través de la jerarquía (se distinguen entre los frames clases o genéricos y los framesinstancias).

Se pueden hacer deducciones a través de la jerarquía (se distinguen entre los frames clases o genéricos y los framesinstancias).

Page 54: Representaciones Estructuradas Sesión 06 Eduardo Morales L. Enrique Sucar Sesión 06 Eduardo Morales L. Enrique Sucar Fundamentos de Inteligencia Artificial

Ejemplo de Jerarquía

P rin c ip a l

A u xilia r F lech a C orrien ted irec ta

S ecu n d aria

B om b a

C on ace ite

Tan q u e

C on tro l S a lid a

V á lvu la

C on ace ite

S is tem a d een friam ien to

C on ace ite

A ltap res ió n

C on ag u a C on ace ite

A u xilia r C on vap or

B a jap res ió n

Tu b o

C om p on en tes

Jerarquía de los componentes de los sistemas de lubricación de una

planta de energía.

Page 55: Representaciones Estructuradas Sesión 06 Eduardo Morales L. Enrique Sucar Sesión 06 Eduardo Morales L. Enrique Sucar Fundamentos de Inteligencia Artificial

Excepciones, Defaults y Demons (facets/fillers)

Excepciones, Defaults y Demons (facets/fillers)

El permitir que un slot esté presente en más de un frame nos permite manejar excepciones (v.g., pingüino).

El permitir que un slot esté presente en más de un frame nos permite manejar excepciones (v.g., pingüino).

Page 56: Representaciones Estructuradas Sesión 06 Eduardo Morales L. Enrique Sucar Sesión 06 Eduardo Morales L. Enrique Sucar Fundamentos de Inteligencia Artificial

Se puede tener información adicional, como: procedimientos para calcular el valor de un slot cuando no se tiene,procedimientos para actualizar valores de un slot cuando un valor de otro slot es actualizado, restricciones en losvalores que puede tener un slot, etc.

Se puede tener información adicional, como: procedimientos para calcular el valor de un slot cuando no se tiene,procedimientos para actualizar valores de un slot cuando un valor de otro slot es actualizado, restricciones en losvalores que puede tener un slot, etc.

Page 57: Representaciones Estructuradas Sesión 06 Eduardo Morales L. Enrique Sucar Sesión 06 Eduardo Morales L. Enrique Sucar Fundamentos de Inteligencia Artificial

Procedimientos

Procedimientos

Datos, definiciones y procedimientos están agrupados en módulos que pueden compartir información y procedimientos por medio de mecanismos de herencia.

Datos, definiciones y procedimientos están agrupados en módulos que pueden compartir información y procedimientos por medio de mecanismos de herencia.

Page 58: Representaciones Estructuradas Sesión 06 Eduardo Morales L. Enrique Sucar Sesión 06 Eduardo Morales L. Enrique Sucar Fundamentos de Inteligencia Artificial

Los fillers o facets pueden tener varias formas de calcular un valor: value, default y demons.

Pegados a los slots pueden existir procedimientos que se activan cuando el slot es accesado o actualizado.

Los fillers o facets pueden tener varias formas de calcular un valor: value, default y demons.

Pegados a los slots pueden existir procedimientos que se activan cuando el slot es accesado o actualizado.

Page 59: Representaciones Estructuradas Sesión 06 Eduardo Morales L. Enrique Sucar Sesión 06 Eduardo Morales L. Enrique Sucar Fundamentos de Inteligencia Artificial

Ejemplo - VALUE/DEFAULT VALUE: (color (valor rojo)) DEFAULT: si no tiene un valor, toma el de default, e.g., (frame coche (color (valor ?)) (llantas (valor ?) (default 4)))

Ejemplo - VALUE/DEFAULT VALUE: (color (valor rojo)) DEFAULT: si no tiene un valor, toma el de default, e.g., (frame coche (color (valor ?)) (llantas (valor ?) (default 4)))

Page 60: Representaciones Estructuradas Sesión 06 Eduardo Morales L. Enrique Sucar Sesión 06 Eduardo Morales L. Enrique Sucar Fundamentos de Inteligencia Artificial

Ejemplo - DEMONS/MÉTODOS

Ejemplo - DEMONS/MÉTODOS

IF-NEEDED: si no tiene un valor y se necesita, se invoca al procedimiento escrito en el facet if-needed (éste podríaser preguntarle al usuario, por ejemplo)

IF-NEEDED: si no tiene un valor y se necesita, se invoca al procedimiento escrito en el facet if-needed (éste podríaser preguntarle al usuario, por ejemplo)

Page 61: Representaciones Estructuradas Sesión 06 Eduardo Morales L. Enrique Sucar Sesión 06 Eduardo Morales L. Enrique Sucar Fundamentos de Inteligencia Artificial

(frame tanque (largo (valor 3)) (ancho (valor 5)) (area (valor ?) (if-needed (func-area (ancho largo)))))

(frame tanque1 (is-a tanque) (largo (valor 2)) (ancho (valor ?)) (area (valor ?)))

(defun func-area (A L) (* A L))

Page 62: Representaciones Estructuradas Sesión 06 Eduardo Morales L. Enrique Sucar Sesión 06 Eduardo Morales L. Enrique Sucar Fundamentos de Inteligencia Artificial

Ejemplo - DEMONS/MÉTODOS Ejemplo - DEMONS/MÉTODOS

IF-ADDED: al añadir un valor en un slot se puede activar un procedimiento (el cual puede afectar el valor de otro slot)

IF-ADDED: al añadir un valor en un slot se puede activar un procedimiento (el cual puede afectar el valor de otro slot)

(frame tanque1 (área (valor ?) (if-added (mult*2 área) (imprime: el doble del área))))

(frame tanque1 (área (valor ?) (if-added (mult*2 área) (imprime: el doble del área))))

Page 63: Representaciones Estructuradas Sesión 06 Eduardo Morales L. Enrique Sucar Sesión 06 Eduardo Morales L. Enrique Sucar Fundamentos de Inteligencia Artificial

IF-REMOVED: al quitar un valor de un slot se activa un procedimiento.

También se puede tener: before y after, los cuales se activan antes y despuésde obtener un valor.

IF-REMOVED: al quitar un valor de un slot se activa un procedimiento.

También se puede tener: before y after, los cuales se activan antes y despuésde obtener un valor.

Page 64: Representaciones Estructuradas Sesión 06 Eduardo Morales L. Enrique Sucar Sesión 06 Eduardo Morales L. Enrique Sucar Fundamentos de Inteligencia Artificial

Inferencia Inferencia 1. Reconocimiento: dados ciertos valores

(atributos) encontrar el Frame. 2. Valores típicos/Demons: deducir información faltante de un Frame 3. Herencia: obtener información de instancias o subclases a partir de sus ascendientes.

1. Reconocimiento: dados ciertos valores (atributos) encontrar el Frame. 2. Valores típicos/Demons: deducir información faltante de un Frame 3. Herencia: obtener información de instancias o subclases a partir de sus ascendientes.

Page 65: Representaciones Estructuradas Sesión 06 Eduardo Morales L. Enrique Sucar Sesión 06 Eduardo Morales L. Enrique Sucar Fundamentos de Inteligencia Artificial

Estrategias Estrategias

1. Valores, defaults, demons en un nivel, y luego hacia arriba (herencia-Z).

Idea: los valores que se puedan obtener en un nivel son más confiables que los de sus niveles superiores.

1. Valores, defaults, demons en un nivel, y luego hacia arriba (herencia-Z).

Idea: los valores que se puedan obtener en un nivel son más confiables que los de sus niveles superiores.

Page 66: Representaciones Estructuradas Sesión 06 Eduardo Morales L. Enrique Sucar Sesión 06 Eduardo Morales L. Enrique Sucar Fundamentos de Inteligencia Artificial

2. Valores hacia arriba, defaults hacia arriba y demons hacia arriba (herencia-N).

Idea: si se puede obtener un valor es más confiable del que se obtenga por default o por medio de los demons.

2. Valores hacia arriba, defaults hacia arriba y demons hacia arriba (herencia-N).

Idea: si se puede obtener un valor es más confiable del que se obtenga por default o por medio de los demons.

Page 67: Representaciones Estructuradas Sesión 06 Eduardo Morales L. Enrique Sucar Sesión 06 Eduardo Morales L. Enrique Sucar Fundamentos de Inteligencia Artificial

Procedimiento de Herencia

Sea F un frame y S un slot UNTIL se encontró un valor para S o F = nil IF F tiene un valor para S acaba ELSE sea F = superclase de F por medio del slot IS-A

Con default o demon sería:

Sea F un frame y S un slot UNTIL se encontró un valor para S o F = nil IF F tiene un (demon/default) para S Then (ejecuta el demon/asigna el default) y acaba

ELSE sea F = superclase de F por medio del slot IS-A

cenital

Page 68: Representaciones Estructuradas Sesión 06 Eduardo Morales L. Enrique Sucar Sesión 06 Eduardo Morales L. Enrique Sucar Fundamentos de Inteligencia Artificial

Herencia-Z:

Para combinar: valor, demon, default

Sea F un frame y S un slot UNTIL se encontró un valor para S o F = nil IF F tiene un valor para S Then asigna el valor

ELSE IF F tiene un demon, Then ejecuta el demon.

ELSE IF F tiene un default para S, Then usa el default ELSE sea F = superclase de F por medio del slot IS-A

cenital

Page 69: Representaciones Estructuradas Sesión 06 Eduardo Morales L. Enrique Sucar Sesión 06 Eduardo Morales L. Enrique Sucar Fundamentos de Inteligencia Artificial

Herencia-N:

Realiza:

Herencia-N:

Realiza:

• herencia con valor • herencia con demons • herencia con defaults

• herencia con valor • herencia con demons • herencia con defaults

Page 70: Representaciones Estructuradas Sesión 06 Eduardo Morales L. Enrique Sucar Sesión 06 Eduardo Morales L. Enrique Sucar Fundamentos de Inteligencia Artificial

Perspectivas Perspectivas

Un objeto puede verse desde varias perspectivas:

Un objeto puede verse desde varias perspectivas:

• ladrillo - estructural - función = soporte• ladrillo - juguete - función = juego• ladrillo - regalo - función = adorno• ladrillo - arma - función = romper cabezas• ladrillo - cultural - función = detener libros• ...

• ladrillo - estructural - función = soporte• ladrillo - juguete - función = juego• ladrillo - regalo - función = adorno• ladrillo - arma - función = romper cabezas• ladrillo - cultural - función = detener libros• ...

Page 71: Representaciones Estructuradas Sesión 06 Eduardo Morales L. Enrique Sucar Sesión 06 Eduardo Morales L. Enrique Sucar Fundamentos de Inteligencia Artificial

Herencia Múltiple y AmbigüedadHerencia Múltiple y Ambigüedad

A veces se quiere heredar información de más de un frame (la organización se vuelve más una red que un árbol).

A veces se quiere heredar información de más de un frame (la organización se vuelve más una red que un árbol).

Con herencias múltiples no se tiene problemas mientras no exista conflicto en la información.

Con herencias múltiples no se tiene problemas mientras no exista conflicto en la información.

En herencia múltiple se tiene que incluir un método que decida de donde heredar.

En herencia múltiple se tiene que incluir un método que decida de donde heredar.

Page 72: Representaciones Estructuradas Sesión 06 Eduardo Morales L. Enrique Sucar Sesión 06 Eduardo Morales L. Enrique Sucar Fundamentos de Inteligencia Artificial

Manejo de Conflictos

Manejo de Conflictos

Algunos sistemas no deciden (escépticos) por ser contradictorios.

Algunos permiten varias conclusiones (crédulos)

Se puede usar información adicional para resolver la ambigüedad (v.g., con un demonio: IF-NEEDED)

Algunos sistemas no deciden (escépticos) por ser contradictorios.

Algunos permiten varias conclusiones (crédulos)

Se puede usar información adicional para resolver la ambigüedad (v.g., con un demonio: IF-NEEDED)

Page 73: Representaciones Estructuradas Sesión 06 Eduardo Morales L. Enrique Sucar Sesión 06 Eduardo Morales L. Enrique Sucar Fundamentos de Inteligencia Artificial

En algunos sistemas se permiten que los valores de slots apunten a otros frames

A veces se cancelan líneas de herencia para eliminar ambigüedades (preclusión).

En algunos sistemas se permiten que los valores de slots apunten a otros frames

A veces se cancelan líneas de herencia para eliminar ambigüedades (preclusión).

Page 74: Representaciones Estructuradas Sesión 06 Eduardo Morales L. Enrique Sucar Sesión 06 Eduardo Morales L. Enrique Sucar Fundamentos de Inteligencia Artificial

Ejemplo de Herencia Múltiple

Vasosanguíneo

Arteria

Arteriapulmonar

Arteriapoco oxi.

Page 75: Representaciones Estructuradas Sesión 06 Eduardo Morales L. Enrique Sucar Sesión 06 Eduardo Morales L. Enrique Sucar Fundamentos de Inteligencia Artificial

SCRIPTS

Los frames se pueden utilizar para entender historias (idea de los Scripts) v.g.,

SCRIPTS

Los frames se pueden utilizar para entender historias (idea de los Scripts) v.g.,

Page 76: Representaciones Estructuradas Sesión 06 Eduardo Morales L. Enrique Sucar Sesión 06 Eduardo Morales L. Enrique Sucar Fundamentos de Inteligencia Artificial

(frame evento (frame desastre (lugar L) (es-un evento) (día D) (muertos N) (Tiempo T)) (heridos M) (sin-casa O)

(frame terremoto (daños P)) (magnitud X) (falla Y)) (frame inundación (is-a desastre)

(frame huracán (rio R)) (vel-viento V) (nombre N)) (frame evento-social (es-un evento)

(frame boda (invitados I) (es-un evento-social) (casa-de C)) (novia NA) (novio NO) (padres-novia PNA) (padres-novio PNO) (vestido-novia VN))

Page 77: Representaciones Estructuradas Sesión 06 Eduardo Morales L. Enrique Sucar Sesión 06 Eduardo Morales L. Enrique Sucar Fundamentos de Inteligencia Artificial

AnálisisAnálisis Los Frames tienen ventajas y desventajas similares a las

redes semánticas. Los Frames tienen ventajas y desventajas similares a las

redes semánticas.

Page 78: Representaciones Estructuradas Sesión 06 Eduardo Morales L. Enrique Sucar Sesión 06 Eduardo Morales L. Enrique Sucar Fundamentos de Inteligencia Artificial

Implementación Implementación

Podemos representar un “frame” en lógica como una serie de predicados aterrizados (hechos). Existen varias formas de hacerlo, tres posibles son:

1. frame(objeto,atributo,valor) 2. objeto(atributo,valor) 3. atributo(objeto,valor)

Podemos representar un “frame” en lógica como una serie de predicados aterrizados (hechos). Existen varias formas de hacerlo, tres posibles son:

1. frame(objeto,atributo,valor) 2. objeto(atributo,valor) 3. atributo(objeto,valor)

Page 79: Representaciones Estructuradas Sesión 06 Eduardo Morales L. Enrique Sucar Sesión 06 Eduardo Morales L. Enrique Sucar Fundamentos de Inteligencia Artificial

Ejemplo de Frames en Prolog Ejemplo de Frames en Prolog

isa(tubo-alta-presión,tubo).isa(tubo,componente).

componente(uso,sistema-lubricación).

tubo(forma,tubular).tubo-alta-presión(pared,acero).tubo-alta-presión(contiene,aceite).

isa(tubo-alta-presión,tubo).isa(tubo,componente).

componente(uso,sistema-lubricación).

tubo(forma,tubular).tubo-alta-presión(pared,acero).tubo-alta-presión(contiene,aceite).

Page 80: Representaciones Estructuradas Sesión 06 Eduardo Morales L. Enrique Sucar Sesión 06 Eduardo Morales L. Enrique Sucar Fundamentos de Inteligencia Artificial

% Procedimiento para obtener el valor de un atributo con herencia simple:

valor(Frame,Atrib,Valor) :- Meta =.. [Frame,Atrib,Valor], call(Meta). valor(Frame,Atrib,Valor) :- isa(Frame,Frame2), valor(Frame2,Atrib,Valor).

% Procedimiento para obtener el valor de un atributo con herencia simple:

valor(Frame,Atrib,Valor) :- Meta =.. [Frame,Atrib,Valor], call(Meta). valor(Frame,Atrib,Valor) :- isa(Frame,Frame2), valor(Frame2,Atrib,Valor).

Page 81: Representaciones Estructuradas Sesión 06 Eduardo Morales L. Enrique Sucar Sesión 06 Eduardo Morales L. Enrique Sucar Fundamentos de Inteligencia Artificial

FIN