Está en la página 1de 36

SISTEMAS INTELIGENTES

Tema 1: Introducción
¿Qué esperamos de un ser inteligente?
- Comunicación
- Conocimiento interno (autoconocimiento)
- Memoria y capacidad de procesar nuevas experiencias
- Intencionalidad
- Creatividad
- Capacidad de inferencia y razonamiento
Etapas de la IA
- El nacimiento de la IA (1952-1956)
- La era de los éxitos: Los años dorados (1956-1974)
Agentes
Formalizamos los programas inteligentes como agentes, que reciben percepciones del
ambiente y proceden a ejecutar ciertas acciones.
Cada agente se implanta mediante una función que relaciona las percepciones y las
acciones. Es decir, la función del agente proyecta una percepción en una acción.
Agente = Arquitectura + Programa
La arquitectura:
- Engloba los módulos que componen el agente
- Estructura el programa del agente
- Partes imprescindibles:
- Componentes de percepción, los cuales facilitan las percepciones de
las acciones.
- Componente de selección de acciones
- Componente de acción, el cual activa los actuadores
El programa del agente se ejecuta en computadores con sensores y actuadores
(hardware del agente).
Tipos de agentes
- Agente reactivo simple
Es el tipo de agente más sencillo.
Selecciona la acción en base a las percepciones actuales.
Inteligencia limitada y comportamiento basado en “reflejos”.
- Agente basado en modelos
Mantiene un estado interno, el cual almacena:
o Cómo evoluciona el mundo
o Cómo afectan al mundo las acciones ejecutadas
- Agente basado en metas
Conoce una serie de objetivos a alcanzar.
Planifica la secuencia de acciones para conseguir sus metas.

1
- Agente basado en utilidad
Cada estado tiene asociado una utilidad, es decir, un valor numérico que
representa la bondad del estado.
El agente debe de alcanzar aquellos estados de mayor utilidad.
Tipos de problemas
Según el determinismo:
- Determinista: cada acción de un agente lleva a un estado predecible.
- Estocástico: el estado al que se llega depende de un elemento aleatorio,
además de la acción tomada.
Según la observabilidad:
- Completamente: los sensores del agente le permiten conocer el estado
completo del entorno.
- Parcialmente: el agente sólo puede obtener una noción parcial del estado actual.

Tema 2: Búsqueda
Agentes solucionadores de problemas
Nos vamos a centrar en aquellos agentes inteligentes que deben maximizar una
medida de rendimiento (satisfacer una meta).
Las metas nos ayudan a organizar el comportamiento limitando los objetivos.
Etapas
1. Formulación de metas
Situaciones finales que maximizan la medida de rendimiento
Las puede elegir el agente o que estén establecidas por diseño
2. Formulación del problema
Obtiene una representación abstracta del problema basada en estados y
posibles acciones a aplicar
3. Búsqueda
Encontrar una solución partiendo de la formalización del problema
Proceso genérico que no depende del problema
4. Ejecución
Llevar a cabo las acciones que componen la solución

Problema de búsqueda
Un problema de búsqueda se compone de:
1. Estado inicial *
2. Conjunto de acciones *
3. Modelo de transición *
4. Prueba de meta
5. Función de coste del camino *forman el espacio de estados

2
El espacio de estados es un grafo dirigido.
Es el conjunto de todos los estados alcanzables desde el estado inicial a través de
cualquier secuencia de acciones.
Es un grafo dirigido en el que los nodos son los estados y los arcos entre nodos las
acciones.
Un camino es una secuencia de estados conectados por una secuencia de acciones.
El espacio de estados se puede hacer explícito, pero no es necesario NI
NORMALMENTE POSIBLE.
La definición formal del problema consta de:
1. Estado inicial del agente
Representamos cada situación posible en el problema con un estado
2. Descripción de las acciones disponibles
Para un estado dado, las acciones que se pueden llevar a cabo
3. Definición del modelo de transición (lo que hace cada acción)
Resultado que devuelve el estado tras realizar una acción
4. Test objetivo o prueba de meta
Determina si un estado es el estado meta, o no
5. Función coste del camino
Asigna un coste numérico a cada camino y refleja la medida de rendimiento
El coste de un camino se asume como la suma de los costes de las acciones
individuales a lo largo del camino
Asumimos que los costes NO son negativos
Solución de un problema de búsqueda
Entendemos como solución la secuencia de acciones que transforma el estado inicial
en el estado meta.
La función de coste del camino mide la calidad de dicha solución.
La solución óptima es aquella que tiene el menor coste de camino.
Vamos a necesitar procesos de búsqueda o mecanismos generales de exploración del
espacio de estados, lo que incluye:
- Criterios de selección y aplicación de operadores relevantes
- Capacidad de decisión sobre cuál será el próximo movimiento
- Búsqueda sistemática

El proceso de búsqueda
Estrategias de exploración
Obtener la solución una vez tenemos el espacio de estados definidos consiste en,
encontrar un camino que conduzca de un estado inicial a un estado final.
Para ello, tenemos que definir un procedimiento de exploración sistemático.

3
4
Estrategias de búsqueda
- Técnicas de búsqueda de propósito específico
Diseñadas “ad hoc” para resolver un problema concreto.
- Técnicas de búsqueda de propósito general
Son aproximaciones sistemáticas que se pueden aplicar a cualquier problema.

5
Características de las estrategias de búsqueda
1. Dirección de la búsqueda
Puede ser:
- Desde los estados iniciales hacia los estados meta (proceso progresivo o
dirigido por los datos).
- Desde los estados meta hacia los estados iniciales (proceso regresivo,
evocativo o dirigido por objetivos).

¿En función de qué es mejor una dirección u otra?


1. Número de estados iniciales VS número de metas (de mayor a menor
número de estados).
2. Factor de ramificación (en el sentido de menor factor de ramificación).
3. Inclusión de estructuras explicativas como requisito inicial en el diseño de
nuestro sistema inteligente (de la forma que mejor se ajuste al modo de
razonar de usuarios y expertos).

2. Topología del proceso


Un árbol de búsqueda está formado por:
- Raíz: estado inicial
- Ramas: acciones
- Nodos: estados del espacio de estados
La exploración sobre árboles
- es más eficiente computacionalmente, pero
demanda más memoria al almacenar nodos
repetidos en la frontera

La exploración sobre grafos


- reduce los esfuerzos de exploración del espacio
de estados
- obliga a comprobar si cada estado generado ha
sido explorado anteriormente
- demanda menos memoria, pero supone un
coste computacional mayor

3. Criterios de selección y aplicación de operadores relevantes


El proceso de selección sistemática de acciones a aplicar también recibe el
nombre de emparejamiento, el cuál consiste en reconocer qué acciones son
aplicables al estado actual y es una de las tareas más costosas en programas de
IA.
Resolución de conflictos. Reglas de carácter general.
1. Si podemos evitarlo no aplicaremos acciones ya aplicadas
2. Trataremos de aplicar primero acciones que lleven a estados nuevos

6
3. Aplicaremos primero operadores con precondiciones más restrictivas
4. De no poder discriminar con las pautas anteriores, ejecutaremos una al azar.
5. Optimización de la búsqueda mediante el uso de fun. Heurísticas
- Las fun. heurísticas son fun. de carácter numérico que nos permiten estimar el
beneficio de una determinada transición en el espacio de estados.
- Se usan para optimizar los procesos de búsqueda.
- Tratan de guiar la exploración del espacio de estados de la forma más
provechosa posible
- Sugieren el mejor camino cuando disponemos de varias alternativas
- Heurética es el estudio de las funciones heurísticas
Implementación. Reconstrucción solución.
- La exploración del espacio de estados producirá un árbol de búsqueda, el
cual debemos representar
- Llamamos nodo a la representación de un estado en el árbol de búsqueda
- Para poder reconstruir la solución, cada nodo debe anotar su nodo padre y
la acción que llevó hasta él
Estrategias de búsqueda. Función sucesores.
- La función sucesores llevará a cabo la expansión de un nodo: aplicación de
operadores relevantes y generación de sucesores
- Requiere comprobar qué acciones son aplicables al estado en cuestión y a
qué estado conduce cada una
Estrategias de búsqueda. Listas.
- Vamos a almacenar los nodos en dos listas:
o Frontera (lista de abiertos): nodos en espera de ser expandidos.
o Explorados (lista de cerrados): nodos ya expandidos.
- La estructura de datos ideal para explorados es una tabla hash, para
permitir inserciones y búsquedas rápidas.
- La función siguiente define la estrategia de búsqueda: selecciona el nodo a
expandir en la frontera. El tipo de selección que se haga afectará al orden
de la búsqueda.
Implementación. Estructuras de datos.
- La estructura de datos apropiada para la frontera es una cola
Operaciones en la cola:
- EMPTY?(queue) Devuelve TRUE si no hay elementos en la cola
- POP(queue) Elimina el primer elemento de la cola y lo devuelve
- INSERT(element, queue) Inserta un elemento y devuelve la cola resultante
- CONTAINS?(element, queue) Devuelve TRUE si element está en la queue
- El tipo de col define como se comporta POP:
o FIFO: pop del elemento más antiguo de la cola
o LIFO: pop del elemento más reciente de la cola
o PR: pop del elemento de mayor prioridad de la cola

7
Estrategias de búsqueda. Evaluación.
- Una estrategia se define por el orden de expansión de los nodos.
- Se evalúa de acuerdo a:
o Completitud. ¿Encuentra siempre la solución?
o Complejidad temporal. ¿Cuánto tarda en encontrar la solución?
o Complejidad espacial. ¿Cuánto espacio necesita?
o Optimización. ¿Encuentra siempre la solución de mayor calidad?
- La complejidad temporal y espacial se miden en términos de:
o b: factor de ramificación
o d: profundidad de la solución menos costosa
o m: máxima profundidad del espacio de estados
o Complejidad temporal: máximo número de nodos generados
o Complejidad espacial: máximo número de nodos almacenados
- Efectividad:
o Coste total = coste búsqueda + coste camino

Estrategias de búsquedas sistemáticas. Tipos.


- No informada o ciega: no disponen de información adicional acerca de los
estados más allá de la que da la definición del problema.
- Informada o heurística: disponen de conocimiento específico del problema
para alcanzar el objetivo de manera más eficiente.
Estrategias de búsqueda no informada (búsqueda a ciegas)
Las búsquedas ciegas no tienen más información que la codificada en la información
del problema.
Tipos:
- Se caracterizan por el orden de expansión de nodos
- Efecto directo sobre la calidad del proceso con respecto a los cuatro
criterios definidos

Búsqueda preferente en amplitud (breadth-first)


Se expande el nodo que entró hace más tiempo, es decir, el nodo menos profundo. Al
expandir el nodo más antiguo, el efecto es que se explora un nivel de profundidad por
completo antes de pasar al siguiente.

8
Siempre encuentra la solución que requiere menos pasos, si existe y si cuenta con la
memoria y tiempo suficientes.
Complejidad temporal: si la meta se encuentra a una profundidad d, hay que generar
todos los nodos de ese nivel.

siendo b el factor de ramificación


Complejidad espacial: cada nodo generado permanece en memoria. Al nivel del nodo
meta se almacena la mayor cantidad de nodos.

En resumen:
- Los requisitos de memoria son un problema mayor que el tiempo de
ejecución
- El tiempo todavía es un factor primordial
Completa:
- Sí, si el nodo meta está a una profundidad d, expande antes los nodos más
próximos (suponiendo b finito).
Óptima:
- Siempre encuentra la solución que requiere menos pasos, por lo que es
óptima si todos los pasos cuestan lo mismo.
- En general, no es óptima (el nodo meta más cercano no tiene por qué ser el
óptimo).

9
Búsqueda de coste uniforme.
Es una variación de la búsqueda en amplitud.
Con una extensión sencilla podemos encontrar un algoritmo óptimo con cualquier
función de coste por paso:
- Expandir nodos con el menor coste de camino, g(n)
- Si todos los costes son iguales, es idéntico a anchura
Búsqueda de coste uniforme. Variaciones.
Variaciones respecto a la búsqueda en anchura.
- La frontera pasa a ser una cola de prioridad ordenada por g → se expande
siempre el camino de menor coste
- Para garantizar la optimalidad debemos de:
o Actualizar uno nodo de la frontera si se encuentra un camino mejor
o Explorar todos los caminos de coste < c antes de devolver una
solución con coste c
Completa:
- Sí, si el coste de cada paso es >= E (E>0)
Óptima:
- Nodos se expanden en orden creciente de coste (el primer nodo meta en
ser expandido será el óptimo)
Complejidad:
- Espacio-Temporal: número de nodos con coste de camino <= coste solución
óptima
- C* coste solución óptima, y E coste mínimo de cada acción
Ejemplo:

10
Búsqueda preferente en profundidad (Depth-first)

Completa:
- Sí, si usamos búsqueda basa en grafos en espacios de estado finitos porque
expandirá todos los nodos
- No, en espacios de búsqueda infinitos si encuentran un camino infinito que
no lleve a la meta
Óptima:
- No, puede encontrar una solución más profunda que otra en una rama no
expandida
Complejidad temporal:
- Similar al tamaño del espacio de estados, tal vez infinito

11
Complejidad espacial:
- El mayor número de nodos almacenados se alcanza en el nodo inferior de
más a la izq
- Sólo almacena un camino para la búsqueda en árbol
Ejemplo:

Se recomienda usar la búsqueda preferente en profundidad cuando:


- La profundidad se conoce o está limitada
- Las soluciones se encuentran a la misma profundidad
- Sirve cualquier solución
- La velocidad es prioritaria
Evitar su uso cuando:
- Subárboles infinitos o muy grandes
- Se requieren las soluciones menos profundas
Mejora de la búsqueda preferente en profundidad → Búsqueda con backtracking
- La idea es que como se explora cada camino hasta el final, una vez
descartado no tenemos por qué seguir almacenándolo
- Usa menor memoria
- Al expandir un nodo, la función sucesores sólo genera un sucesor de cada
vez
- Cada nodo parcialmente expandido recuerda cuál es el siguiente sucesor a
generar
- No sacamos un nodo de la frontera hasta que no le queden sucesores
- Truco para ahorrar memoria y tiempo:
o Generar el sucesor modificando la descripción del estado actual
o Requisitos de memoria: 1 descripción de estado y O(m) acciones
- Problema: la búsqueda en profundidad puede caer en caminos infinitos;
fijar un limite o la profundidad máxima soluciona el problema de los
caminos infinitos

12
Búsqueda de profundidad limitada
- Es una variante de la búsqueda por profundidad
- Problema: la búsqueda de profundidad limitada evita búsquedas infinitas, pero no
es completa
- Obtiene los beneficios de la búsqueda en anchura y en profundidad
- Útil para espacios de búsqueda muy grandes en los que no se conoce la
profundidad de la solución

- La búsqueda de profundidad limitada tiene las ventajas de la búsqueda en anchura


(es completa) y las de la búsqueda en profundidad (bajo coste de memoria)

RESUMEN – Estrategias de búsqueda no informada

13
Estrategias de búsqueda informada (búsqueda heurística)
Las búsquedas informadas tienen conocimiento acerca de si un estado no meta es más
prometedor que otro estado dato.

Búsqueda preferente por el mejor


- Basada en el algoritmo de búsqueda en árbol o grafo
- El nodo a expandir se selecciona en base a la función de evaluación f(n), primero el
menor valor
- La información de cómo de prometedor es un estado la proporciona la función
heurística h(n), que es el coste estimado del camino menos costoso desde el
estado n hasta el nodo meta
- Las funciones heurísticas son funciones de carácter numérico, que dado un estado
devuelven una estimación del coste de alcanzar la meta desde el mismo. Nos
permiten estimar el beneficio de una determinada transición en el espacio de
estados
- Si n es un nodo meta, entonces h(n) = 0
- Las fun. heurísticas permiten optimizar los procesos de búsqueda
- Las fun. heurísticas guían la exploración del espacio de estados de la forma más
provechosa posible
- Las fun. heurísticas sugieren el mejor camino a priori, cuando tenemos varias
alternativas
Búsqueda Avara* f(n) = h(n)

14
- La búsqueda Avara no es óptima
- La búsqueda Avara no es completa, ya que puede perderse en bucles y recorrer
rutas infinitas
- Su complejidad temporal es O(b^m) siendo m la profundidad máxima del árbol
- Su complejidad espacial es de O(b^m)
- Es eficiente con una buena heurística

Búsqueda A* (A asterisco o estrella) f(n) = g(n) + h(n); siendo g(n) el coste consumido para
llegar a n
- Evalúa los nodos combinando g(n) y h(n)
- g(n) es el coste real del mejor camino para alcanzar el nodo n
- h(n) es el coste estimado del camino menos costoso desde el nodo n a la meta
- f(n) = g(n) + h(n) → coste estimado de la solución menos costosa que pasa a través
del nodo n

- La búsqueda A* puede usarse para encontrar:


o Un camino de coste total mínimo
o El camino más rápido posible (menor num. de pasos)
- A* se comporta como:
o Anchura si:
▪ g se incrementa en 1 y h = 0
▪ los nodos con igual f se ordenan de menos a más reciente
o Profundidad si:
▪ g=0yh=0
▪ los nodos se ordenan de más a menos reciente
o Coste uniforme (h=0)
o Avara (g=0)
Requisitos de la heurística

15
La búsqueda A* sólo será óptima si la heurística cumple ciertas condiciones. Contraejemplo:

Búsqueda A* óptima: Admisibilidad y consistencia. ¿Qué requisitos debe cumplir la heurís-


tica para que A* sea óptima?
Hay que contemplar dos situaciones:
• No hay un estado S no meta al que se pueda llegar de varias maneras, se puede usar
búsqueda A* basada en árbol.
o Basta con que la heurística sea admisible, es decir, que no sobreestime el
coste real de alcanzar la meta.
• Hay estados S no meta a los que se puede llegar de varias maneras, se puede usar
búsqueda A* basada en grafo.
o Requiere que la heurística sea consistente.

Si h es admisible, dado que g(n) es el coste real de alcanzar n por el camino


actual, y f(n)=g(n)+h(n), entonces f(n) nunca sobreestimará el coste real de una
solución por el camino actual que pase por n
• La búsqueda A* basada en grafo es óptima si la heurística es consistente.
• Si la heurística es consistente, entonces los valores de f a lo largo de cualquier camino
no son decrecientes (son crecientes o iguales) → monotonía
• El primer nodo meta seleccionado para la expansión deberá ser una solución óptima,
ya que todos los nodos serán, al menos, tan costosos.
Evaluación búsqueda A*
• Óptima
o Ningún otro algoritmo óptimo garantiza expandir menos nodos
o A* es ópticamente eficiente para una heurística consistente dada
• Completa
o Si todos los pasos tienen coste positivo y b es finito
• Complejidad temporal: exponencial
• Complejidad espacial: mantiene todos los nodos generados en memoria, por lo que,
no es práctico para problemas muy grandes

16
• El tiempo computacional no es su desventaja principal
o Mantiene todos los nodos generados en memoria, por lo que se queda sin
espacio antes que quedarse sin tiempo
• Otros algoritmos con menor coste espacial y temporal son: la búsqueda heurística con
memoria acotada
• Usar esta búsqueda cuando…
o Deseamos obtener la mejor solución
o Existe información de tipo heurístico disponible
• Evitar su uso cuando… no existen buenas heurísticas disponibles

Diseño de heurísticas admisibles

• Debemos estimar el coste de solucionar el problema P partiendo del estado S


• La solución a un problema se construye aplicando una serie de operadores elementales
sujetos a una serie de restricciones
• La idea principal es que vamos a conseguir un problema más sencillo P’, sobre el que si
podeos calcular la solución sin hacer la búsqueda
• Para conseguir P’ “relajamos” P eliminando algunas restricciones; cuantas menos
restricciones eliminemos, más precisa será la heurística.
• La función de coste de la ruta en el problema relajado P’, será una heurística admisible
y consistente en el problema original P
Búsqueda local – Motivación
• Búsqueda no informada y búsqueda por el mejor:
o Exploran sistemáticamente el espacio de búsqueda conservando uno o más
caminos en memoria
o Registran qué alternativas han sido exploradas en cada punto de ese camino y
cuáles no
o Cuando encuentran una meta, el camino a la meta constituye una solución al
problema
o En muchos problemas, el camino no es relevante
Búsqueda local – Estrategia de búsqueda informada: búsqueda local

• Usa un único estado actual y se mueven sólo a estados vecinos


• Los caminos no se retienen; el camino a la meta es irrelevante, lo que importa es
encontrar un estado meta.
• No son sistemáticos, pero tienen dos ventajas:
o Poca memoria, por lo general una cantidad constante
o Encuentran soluciones razonables en espacios de estados grandes o infinitos
o Aptos para problemas de optimización (encontrar el mejor estado de acuerdo
a una función objetivo).
Algoritmo de escalada (“Hill-climbing”)
• Cada punto representa un estado y un valor de la función objetivo
• Se trata de encontrar el punto más alto, el máximo global
Algoritmo de escalada – Inconvenientes
• Máximo local

17
o Estado puntual mejor que cualquiera de sus vecinos, pero peor que otros
estados más alejados. Cuando aparecen cerca de la solución final se llaman
estribaciones
o En esta situación, h=1, y cualquier movimiento empeora este valor
• Cresta
o Región del espacio de estados que tienen mejores valores de la función
heurística que los de regiones colindantes, pero que no podemos llegar a ellos
mediante transiciones simples
• Meseta
o Región del espacio de estados en la que todos los estados individuales tienen
el mismo valor de la función heurística y, por tanto, no es posible determinar
la mejor dirección por la que continuar
Algoritmo de escalada – Soluciones
• Para los máximos locales
o Regresar a un nodo previo e intentar una dirección diferente (backtracking)
• Para las mesetas
o Hacer un gran salto en el espacio de búsqueda y tratar de alcanzar una región
diferente del espacio de estados
• Para las crestas
o Aplicar más de un operador antes de realizar la prueba de meta (lo que
equivale a moverse en varias direcciones).

Tema 3: Representación del conocimiento. Declarativo y


procedimental
Agentes lógicos
Agentes basados en conocimiento

- Base de Conocimiento = formada por un conjunto de sentencias en lenguaje


formal
- Aproximación declarativa para construir un agente: decirle lo que necesita saber
- Así se podrá preguntar así mismo qué hacer, y encontrará la respuesta en su base
de conocimiento
- Los agentes se pueden ver:
o Nivel de conocimiento: lo que saben, independientemente de su
implementación
o Implementación: las estructuras de datos en la base de conocimientos, y
los algoritmos que las manipulan
Agente basado en conocimiento simple
- Recibe como entrada una percepción, y devuelve una acción

18
- El agente tiene una base de conocimiento, que es un conjunto de sentencias
(aserciones sobre el mundo en un cierto lenguaje)
- Hay una forma de añadir nuevas sentencias (TELL). También hay una manera de
hacer una query o consulta sobre lo conocido (ASK). Ambas operaciones pueden
implicar inferencias; nuevas sentencias a partir de las existentes
- Cada vez que se llama al programa hace 3 cosas:
1. Se le dice a la base de conocimiento lo que percibe (TELL’S)
2. Le pregunta a la base de conocimiento que acción debe realizar (ASK’S)
3. El programa le comunica a la base de conocimiento que acción ha elegido, y el
agente la ejecuta
- MAKE construye las sentencias para esas 3 etapas

REAS
- Rendimiento
- Entorno
- Actuadores
- Sensores

Lógica
Generalidades
- La lógica es el lenguaje formal para representar la información de manera que se
pueda llegar a conclusiones
- Sintaxis: define las sentencias del lenguaje
- Semántica: define el significado de las sentencias
- NOTA: si una sentencia X es cierta respecto al modelo M se dice que
M satisface X ó M es un modelo de X
M(X) es la notación para el conjunto de todos los modelos de X
Implicación
- Significa que una cosa se deriva de otra
- En la implicación lógica entre sentencias la idea es que una sentencia se deriva
lógicamente de otra
- Las implicaciones es una relación entre sentencias que está basada en la semántica
Modelo
- Los modelos son formalmente mundos estructurados en los cuales se puede
evaluar la verdad de sentencias
Inferencia lógica y solidez
- La inferencia lógica usa la implicación para derivar conclusiones
- El algoritmo inferencial model checking enumera todos los posibles modelos para
comprobar si X es cierta en todos los modelos en los que la base de conocimiento
es cierta (siendo X la sentencia)
- La sentencia puede derivarse de la base de conocimientos mediante el
procedimiento i

19
- Un algoritmo inferencial sólido o preservador de verdad es aquel que deriva sólo
sentencias implicadas
- La comprobación de modelos, cuando se puede aplicar, es un procedimiento sólido
Inferencia lógica y completitud
Un algoritmo es completo si puede derivar en cualquier sentencia que esté implicada
- Es una propiedad deseable
- Para pajares reales, que son finitos, un examen sistemático puede SIEMPRE decidir
si la aguja está en el pajar
- Para muchas bases de conocimiento el pajar de consecuencias es infinito, y la
completitud es un tema que se vuelve importante
- Hay procedimientos inferenciales completos para lógicas lo suficientemente
expresivos para manejar muchas bases de conocimiento

Lógica proposicional
Definiremos una lógica lo suficientemente expresiva para poder decir cualquier cosa de
interés, y para la que existe un procedimiento inferencial completo y sólido, es decir, el
procedimiento responderá a cualquier pregunta cuya respuesta se siga de lo que se conoce en
la base de conocimiento.
La lógica más simple de este tipo es la lógica proposicional, la cual está formada de:
- Sintaxis
- Semántica (forma en la que determinar la verdad de las sentencias)
- Implicación (relación entre una sentencia y otra que se deriva de ella)
Sintaxis
- La lógica proposicional es la más simple
- La sintaxis define las sentencias permitidas
- Las sentencias atómicas consisten en un único símbolo de proposición
- La proposición puede ser verdadera o falsa
- Las sentencias complejas se construyen a partir de las simples, usando paréntesis y
conectivas lógicas
Las 5 conectivas lógicas más comunes:

20
Semántica
- Cada modelo especifica la verdad/falsedad para cada símbolo de la proposición
Reglas para evaluar la verdad con respecto a un modelo m:

Tabla de verdad para conectivas:

Procedimiento inferencial simple


Si hay 7 símbolos = 2^7 modelos posibles = 128 modelos
Inferencia por enumeración
La enumeración en profundidad de todos los modelos es Sólido y Completo. Complejidad
temporal de =(2^n) para n símbolos.
Prueba de teoremas. Conceptos previos
Equivalencia lógica: dos sentencias A y B son lógicamente equivalentes si ambas son ciertas en
el mismo conjunto de modelos.

21
Validez: una sentencia es válida si es cierta en todos los modelos.
Las sentencias válidas también reciben el nombre de tautologías, ya que son ciertas
necesariamente.
Validez e inferencia → Teorema de Deducción

Satisfactibilidad: una sentencia es satisfactible si es cierta o satisfecha por algún modelo.


La satisfactibilidad se puede comprobar enumerando los modelos posibles hasta encontrar
uno que satisfaga la sentencia.
El problema de determinar la satisfactibilidad de sentencias en lógica proposicional fue el
primero en probar ser NP-completo.
Satisfactibilidad y validez

Satisfactibilidad e inferencia

Inferencia y pruebas
Los métodos de prueba se dividen en:
1. Aplicación de reglas de inferencia
- Generación de nuevas sentencias a partir de las antiguas
- Prueba=Secuencia de aplicación de reglas inferenciales
- Requiere normalmente la traducción de sentencias a una forma normal

2. Comprobación de modelos
- Enumeración de una tabla de verdad
- Mejorar backtracking
- Búsqueda heurística en el espacio de modelos (sólida pero incompleta)
Reglas de inferencia
Reglas de inferencia para llegar a una meta
La más conocida, Modus ponens: a→b,a entonces b
Regla inferencia And-Elimination: a^b, entonces a
a^b, entonces b
Considerando posibles valores de a y b:
- Modus ponens y And-Elimination son sólidos
- Se pueden usar para generar inferencias sólidas sin necesidad de enumerar
modelos
Las equivalencias lógicas de la tabla se pueden usar como reglas inferenciales.

22
Monotonicidad
Es una propiedad de los sistemas lógicos.
Las sentencias que se infieren sólo pueden incrementar a medida que la información se añade
a la base de conocimiento.
No se puede invalidar cualquier conclusión inferida anteriormente.
- La lógica no monotónica es la que captura una propiedad común del razonamiento
humano: el cambio de opinión (viola la propiedad de monotonicidad).
Las reglas inferenciales se pueden aplicar siempre que las premisas adecuadas estén en la base
de conocimiento; la conclusión se añade independientemente de lo que hay a mayores en la
base de conocimiento.

Prueba por resolución


Las reglas inferenciales son sólidas.
¿Completitud de los algoritmos inferenciales que las usan?
Nueva regla: RESOLUCIÓN → regla de inferencia única que proporciona un algoritmo de
inferencia completo unida con cualquier algoritmo de búsqueda completo

Factorización
La cláusula resultante de una regla de resolución debe contener solo una cláusula de cada
literal.
La eliminación de copias múltiples de literales se llama factorización, por ejemplo:

La regla de resolución es sólida.


Forma la base para una familia de procedimientos inferenciales completo.

Forma normal conjuntiva


Toda sentencia de lógica proposicional es lógicamente equivalente a una conjunción de
cláusulas.
Una sentencia expresada como conjunción de clausulas se dice que está en forma normal
conjuntiva (CNF)

23
Completitud
Cierre de resolución RC(S) de una serie de cláusulas S
- Conjunto de todas las cláusulas derivable por la aplicación repetida de la regla de
resolución de las cláusulas S o a sus derivadas.
- Es lo que calcula PL_RESOLUTION como valor final de la variable clauses
- RC(S) es finito → PL_RESOLUTION siempre termina
Teorema fundamental de resolución
- Si un conjunto de cláusulas es insatisfactible, entonces el cierre de resolución de
esas cláusulas contiene la cláusula vacía.
- Se prueba por contraposición.

Cláusula de Horn
Algoritmo inferencial más eficiente y restringido para la base de conocimiento que satisfacen
ciertas restricciones en la forma de sus sentencias.
Formas restringidas:
1. Cláusula definida
Disyunción de literales de los que exactamente 1 es positivo

2. Cláusula de Horn
- Disyunción de literales de los que como mucho 1 es positivo
- Todas las cláusulas definidas son cláusulas de Horn, ya que son cláusulas con
literales no positivos
- Son cerradas bajo resolución: si se resuelven dos cláusulas Horn, se obtiene una
cláusula Horn
Interés de las base de conocimiento con cláusulas definidas
1. Toda cláusula definida se puede escribir como una implicación:
- Premisa (cuerpo): una conjunción de literales positivos
- Conclusión (cabeza): un único literal positivo

o
o La sentencia en forma de implicación es más fácil de entender
- Hecho: sentencia con un literal único positivo (sin cuerpo)

2. La inferencia con cláusulas de Horn puede hacerse a través de:


- Algoritmos de encadenamiento progresivo
- Algoritmos de encadenamiento regresivo
- Ambos algoritmos son naturales
- Este tipo de inferencia es la base de la programación lógica

3. Decidir la implicación en las cláusulas de Horn se puede realizar en un tiempo que es


lineal en el tamaño de la base de conocimiento, es un proceso barato para base de
conocimientos reales

24
Encadenamiento progresivo
Este algoritmo determina si un único símbolo proposicional q (query) se deriva (puede
implicarse) de una base de conocimiento de cláusulas definidas
Funciona en tiempo lineal.
Pasos:
1. Comienza a partir de los hechos conocidos de la base de conocimientos (literales
positivos)
2. Si se conocen todas las premisas de una implicación, se añade su conclusión al
conjunto de hechos conocidos
3. El proceso continúa hasta que q se añade o hasta que no se pueden hacer más
inferencias
Ejemplo:

Encadenamiento progresivo. Solidez y completitud


Es sólido, cada inferencia es una aplicación de Modus Ponens.
Completo
- Cualquier sentencia atótmica implicada en la base de conocimientos será derivada
o Consideramos el estado final de la tabla de inferencias como modelo m
o El algorimto alcanza un punto fijo en donde no es posible hacer nuevas
inferencias
o La tabla es un modelo m, donde se asigna True/False a los símbolos
o Todas las cláusulas definidas en la base de conocimiento orignal son true
en este modelo m
o Por lo que, m es un modelo de la base de conocimiento: el conjunto de
sentencias atómicas inferidas en el punto fijo define un modelo m de base
de conocimiento original
o
- Idea general: construir cualquier modelo de la base de conocimiento por inferncia
sólida, comprobar A
Encadenamiento regresivo
Trabaja hacia atrás a partir de la query q
- Para probar q a partir de la base de conocimientos:

25
o Comprobar si q es conocida ya
o Buscar las implicaciones de la base de conocimientos cuya conclusión es q
o Si todas las premisas de una de esas implicaciones puede probarse como
true, q es true
- Evitar lazos: comprobar si cada nueva submeta está ya en el stack de metas
- Evitar repetir trabajo: comprobar si cada nueva submeta…
o Se ha probado ya true
o Ha fallado ya
- Una implementación eficiente trabaja en tiempo lineal
o A menudo el coste es mucho menor que lineal en el tamaño de la base de
conocimient, porque el proceso sólo toca hechos relevantes
- Es una forma de razonamiento dirigido por las metas
Ejemplo:

Encadenamiento progresivo VS Encadenamiento regresivo


- El encadenamiento progresivo es dirigido por los datos
o Humanos: procesamiento automático, poco consciente
o Lineal en el tamaño de la base de conocimiento
o Puede trabajar en conclusiones irrelevantes para la meta
- El encadenamiento regresivo es dirigido por las metas
o Es apropiado para la resolución de problemas
o A menudo su complejidad es menos que lineal en el tamaño de la base de
conocimiento
Comprobación de modelos proposicional efectiva
- Algoritmos para comprobar la satisfacibilidad: problema SAT
- Muchos problemas de combinatoria en computación se pueden reducir a
comprobar la satisfacibilidad de una sentencia proposicional
- Algoritmo Davis-Putnam
- Algoritmos de busqueda local
Algoritmo backtracking: DPLL (David-Putnam-Logemann-Loveland)
- Entrada: una sentencia en forma conjuntiva normal
- Es una enumeración recursiva en profundidad de modelos posbiles
26
- Supone 3 aspectos de mejora sobre TT-ENTAILS
1. Terminación temprana
- Una cláusula es cierta si cualquier literal es cierto, aunque los otros literales
no tengan aún valores de verdad
- Una sentencia es falsa si cualquier cláusula es falsa, lo que ocurre cuando
cada uno de sus literales es falso
- El algorimo detecta si la sentencia debe ser cierta o falsa, incluso con un
modelo parcialmente completo
- La terminación temprana evita tener que examiar subárboles enternos en el
espacio de búsqueda
2. Heurística de símbolo puro
- Un símbolo puro es el que aparece siemre con el mismo signo en todas las
cláusulas (afirmación o negación)
- Si una sentencia tiene un modelo, el modelo tiene los símbolos puros
asignados para hacer sus literales ciertos, para no hacer nunca una cláusula
falsa
- El algoritmo puede ingorar así cláusulas que ya se saben ciertas en el modelo
construido hasta el momento
3. Heurística de cláusula unidad
- Cláusula unidad: se definió una cláusula con un solo literal
- Contexto DPLL: cláusulas en la que todos sus literales excepto 1 han sido
asignados como falsos por el modelo
- La heurística de cláusula unidad asigna todos esos símbolos antes de
ramificarse a los restantes
- Consecuencia: cualquier intento de probar que un literal que ya está en la
base de conocimiento tendrá éxito inmediatamente
- Note que asignar una cláusula unidad puede crear otra cláusula unidad
(propagación unidad)
- La propagación unidad se parece al encadenamiento progresivo con cláusulas
definidas
Escalabilidad SAT
- Análisis de componentes
o Subconjuntos disjuntos
- Ordenación de variables y valores
o Heurística de grado
- Backtracking inteligente
o Aprendizaje de cláusulas conflicto
- Recomienzo aleatorio
- Indexación adecuada
Algoritmos de búsqueda local
Ascensión de colinas (HILL-CLIMBING) o Enfriamiento simulado (SIMULATED-ANNEALING)
pueden aplicarse a problemas SAT.
- Elegir la función de evaluación adecuada; contar con el nº de cláusulas sin
satisfacer.

27
RESUMEN
- Un agente inteligente necesita conocimiento del mundo para poder tomar buenas
decisiones
- El conocimiento puede tener la forma de sentencias en un lenguaje de
representación del conocimiento que se almacena en la base de conocimiento (KB)
- Los agentes lógicos tienen una base de conocimiento y un mecanismo inferencial
para inferir nuevas sentencias (nueva información) y poder tomar decisiones
- Un lenguaje de representación se define mediante:
o Sintaxis: estructura formal de las sentencias
o Semántica: verdad de cada sentencia en cada modelo posible del mundo
- La lógica proposicional es un lenguaje simple que consiste en:
o Símbolos proposicionales
o Conectivas lógicas
o Maneja proposiciones que pueden ser ciertas, falsas o desconocidas
- La relación de implicación entre sentencias es crucial para el razonamiento
o Una sentencia A implica otra sentencia B si B es cierta en todos los mundos
en los que A es cierta
o Definiciones equivalentes incluyen:
▪ La validez de la sentencia a → b
▪ La insatisfacibilidad de la sentencia a^¬b
- El proceso de derivar nuevas sentencias a partir de las viejas se llama inferencia
o Solidez: el algoritmo deriva sólo sentencias que están implicadas
o Completitud: el algoritmo deriva todas las sentencias implicadas
- La implicación puede comprobarse enumerando modelos. Existen algoritmos
inferenciales de comprobación de modelos para la lógica proposicional
o El conjunto de posibles modelos es finito
o Existen algoritmos eficientes de este tipo
- Las reglas inferenciales son patrones de inferencia sólida que se usan para
encontrar pruebas
o La regla de resolución proporciona un algoritmo completo para KBs que se
expresan en forma normal conjuntiva
o Los encadenamientos progresivo y regresivo son algoritmos para KBs en
forma de cláusulas Horn
- La lógica proposicional no es escalable a entornos de tamaño infinito
o Carece de potencia expresiva para manejar adecuadamente tiempo,
espacio y patrones universales de relaciones entre objetos
Métodos de representación estructurados
La lógica formal permite el uso de procedimientos de resolución que facilitan el razonamiento
con hechos
Es útil disponer de estructuras de representación que permitan agrupar propiedades y obtener
descripciones únicas de objetos complejos
Es útil poder representar objetos en categorías
También sería muy útil poder representar eficazmente escenarios y secuencias típicas de
acontecimientos
Todo ello se puede hacer usando lógica de primer orden, que permite organizar el
conocimiento de categorías a través de herencia u organizar relaciones de subclases en una
taxonomía

28
Pero también hay esquemas no formales de representación del conocimiento que:
- Son capaces de representar objetos, categorías, eventos…
- Son capaces de manipular conocimiento para obtener conocimiento nuevo
Estas representaciones estructuradas pueden ser:
- Métodos declarativos: el conocimiento se representa como una colección estática
de hechos, para cuya manipulación se define un conjunto genérico y restringido de
procedimientos
- Métodos procedimentales: la mayor parte del conocimiento se representa como
procedimientos, lo cual se confiere al esquema de representación un carácter
dinámico
Ventajas de los métodos declarativos
1. Las verdades del dominio se almacenan una sola vez
2. Es fácil incrementar e incorporar nuevo conocimiento sin modificar ni alterar el ya
existente
Ventajas de los métodos procedimentales
1. Mayor énfasis en las capacidades inferenciales del sistema
2. Permiten explorar distintos modelos y técnicas de razonamiento
3. Permiten trabajar con información de carácter probabilístico
4. Incorporan de forma natural conocimiento heurístico

Métodos declarativos
- Redes semánticas: permiten describir simultáneamente acontecimientos y objetos
- Frames o marcos: estructuras genéricas que permiten representar objetos
complejos desde diferentes puntos de vista
Métodos procedimentales
- Reglas de producción: constituidas por una premisa -IF-, una conclusión -THEN- y,
opcionalmente, una alternativa -ELSE-

Redes semánticas
¿Qué es una red semántica? Es una forma de representación
de conocimiento lingüístico en la que los conceptos y sus
interrelaciones se representan mediante un grafo. Si no hay
ciclos, pueden ser vistas como árboles.

El conocimiento se representa como un conjunto de nodos conectados entre sí por arcos


etiquetados.
La notación grafica nos permite representar obj. Individuales, categorías de objetos y
relaciones entre ellos.
Los arcos representan relaciones lingüísticas entre nodos.

29
Los enlaces son unidireccionales. Para establecer enlaces bidireccionales hay que tratar cada
relación por separado.
Un enlace es una relación binaria entre nodos.
Relaciones posibles:
- Ocurrencia: cuando se relaciona un miembro de una categoría general con la
categoría a la que pertenece
- Generalización: relaciona una entidad con otra de carácter más general (ES_UN)
- Agregación: re relacionan componentes de un objeto con el objeto propiamente
dicho (ES_PARTE_DE)
- Acción: se establecen vínculos dinámicos entre objetos
- Propiedades: relaciones entre objetos y características de los objetos
Elementos que permiten establecer relaciones entre distintas estructuras de conocimiento:
1. ES_UN: permite establecer relaciones entre taxonomías jerárquicas
2. ES_PARTE_DE: permite establecer relaciones entre objetos y componentes de un
objeto

Herencia de propiedades: cualquier propiedad considerada cierta para una clase de elementos
debe ser cierta para cualquier ejemplo de la clase (taxonomías)
Razonamiento:
- Por rastreo: las relaciones pueden no ser totalmente rigurosas, y por tanto, las
inferencias obtenidas por rastreo pueden no ser validas
- Emparejamiento: construcción de fragmentos de red, algunos de cuyos nodos
tienen valores definidos, pero otros no (variables). El sistema debe tratar de
encontrar un fragmento de la red original que encaje con la red problema
Frames o marcos
Ante un problema nuevo…
- Nadie empieza directamente un análisis exhaustivo y desde cero, para construir
incrementalmente estructuras de conocimiento cada vez más complejas, la última
de las cuales describa perfectamente la nueva situación presentada
- El primer paso suele consistir en recuperar experiencias anteriores y tratar de
razonar por semejanza
Son una versión de red semántica.
Tratan el problema de la representación desde la óptica del razonamiento por semejanza.
Describen objetos o clases de objetos o categorías, con atributos y relaciones con otros objetos
o categorías.
Son representaciones estructuradas del conocimiento estereotipado.
Estructura de frames:
- Cabecera: le da nombre a la frame, y es representativa de la clase de objetos que
se describen
- Slots: elementos que representan una propiedad o atributo del elemento genérico
representado por el frame.

30
Los slots pueden anidarse sin limitación de profundidad.

La profundidad de un slot representa un nivel de conocimiento, y su contenido es


una especialización del nivel anterior.
Frames.Demons
Información procedimental (demons)
- Procedimientos que la mayor parte del tiempo están inactivos, pero que cuando
son activados desencadenan acciones concretas
- If_needed, If_added, If_removed …
- Cuando un demon es activado por una entrada en la frame al nivel
correspondiente, el procedimiento del demon se ejecuta, y luego el demon es
eliminado
Los demons…
- Proporcionan uniones procedimentales entre diferentes frames
- Posibilitan la ejecución de rutinas externas
- Imprimen un cierto carácter dinámico a la representación del conocimiento con
frames
Ventajas frames
1. Permiten definir procesos de razonamiento con información incompleta.
2. Permiten inferir rápidamente hechos no representados de forma explícita.
3. Imprimen cierto carácter dinámico a la representación al definir procesos que
establecen relaciones entre otras frames, y conexiones con el mundo exterior.
4. Usan con precisión la herencia.
Razonamiento frames
1. Selección de la frame que mejor se ajuste a nuestra situación actual
2. Ejemplificación de dicha frame tras considerar las condiciones específicas actuales
(asociar un individuo particular a una clase)
Representación del conocimiento. Reglas de producción.
Son un esquema de representación del conocimiento; constan de tres partes:
1. IF Condición o premisa
2. THEN Conclusión o acción
3. ELSE Alternativa
La premisa puede estar constituida por un conjunto de cláusulas anidadas (conjunción,
disyunción y negación)

La parte THEN de la regla, que puede ser múltiple, representa una hipótesis de trabajo, o una
acción que puede ser ejecutada

31
Tipos de reglas
- IFALL
o Todas las cláusulas de la premisa han de ser ciertas para que se ejecute la
acción, o se establezca la conclusión de la parte THEN
o Equivale a una regla en la que todas las cláusulas estén anidadas por
medio de operadores (conjunción)

- IFANY
o Todas las cláusulas de la premisa están conectadas por medio de
operadores (disyunción)
o En cuanto una cláusula es cierta se ejecuta la acción o se establece la
hipótesis de la parte THEN
o Equivale a una búsqueda no exhaustiva dentro de la misma regla

- IFSOME
o Todas las cláusulas de la premisa están conectadas por medio de
operadores (disyunción)
o Aunque una cláusula sea cierta, antes de ejecutar la acción o de establecer
la hipótesis de la parte THEN, se investiga toda la premisa
o Equivale a una búsqueda exhaustiva dentro de la misma regla
Ventajas de las reglas de producción
- Las condiciones y acciones involucradas son explícitas
- El conocimiento es representado de forma muy modular
- Cada regla constituye una unidad completa de razonamiento
- Permiten almacenar y utilizar conocimiento muy específico, y de naturaleza heurís-
tica

Tema 4: Sistemas de producción


Programas secuenciales
Dependen de los datos, las condiciones iniciales, parámetros, respuestas de los usuarios,
resultados de cómputos anteriores…
El flujo y el uso de los datos están especificados de manera rígida por el programa
El defecto de estos programas es su secuencialidad, ya que la bifurcación solo se efectúa en
puntos y caminos explícitamente previstos en el código del programa
En entornos cambiantes la bifurcación será la norma, y no la excepción. Ya sea a partir de un
nuevo estimulo, en función de sus propiedades y contenidos o bien, en ausencia de nuevos
estímulos, será a partir del contexto actual, historia o último estado

Programación basada en eventos


Es adecuada para situaciones en las que continuamente están surgiendo nuevos estímulos, ya
sean originados por el entorno externo o generados internamente por el programa
El programa responde directamente a un amplio rango de sucesos, algunos imprevistos, en
lugar de hacerlo a datos esperados

32
No usan estructuras de control inflexibles y especificadas de antemano
Reconocen patrones en los datos, y seleccionan trozos de código en el sistema para que se
activen

Sistemas de inferencia dirigidos por patrones (SIDP)


Tienen estructura modular
Cada módulo es responsable de detectar las distintas situaciones posibles, reconociendo
patrones en los datos, y de respondes de forma adecuada a las mismas
Los módulos se dividen en antecedente o lado izquierdo y consecuente o lado derecho
El antecedente hace todos los accesos a datos, para verificarlos y equipararlos con los patrones
“plantilla” del módulo
El consecuente hace la escritura o modificación de datos
Dichos módulos se llaman “reglas”, y los SIDP compuestos por conjuntos de reglas son
Sistemas Basados en Reglas (SBR) o Sistemas de Producción

Sistemas de Producción
Son sistemas inteligentes basados en reglas que operan frente a una base de hechos con
mecanismos de emparejamiento formando parte explicita de su arquitectura
Según su estructura de control pueden ser:
- Sistemas dirigidos por los datos
- Sistemas dirigidos por los objetivos
Sistemas dirigidos por los datos
- Las inferencias se obtienen cuando los antecedentes de alguna de sus reglas de
producción se emparejan con, al menos, una parte de los hechos que describen el
estado actual
- Cuando esto sucede, se dice que la regla se ha activado, y está en condiciones de
ser ejecutada. Su ejecución o no depende de la estrategia de exploración elegida
- Son menos específicos, ya que ejecutarán todas las reglas disponibles en función
de la información introducida.
Sistemas dirigidos por los objetivos
- Tanto los antecedentes como consecuentes de las reglas deben ser considerados
como aserciones sobre los datos. En este caso, la activación de las reglas tiene
lugar a través de un encadenamiento regresivo, y el emparejamiento se efectúa a
través de las conclusiones de las reglas
- Para alcanzar una determinada meta, hay que configurar un proceso evocativo en
el que, de forma recursiva, se van estableciendo los antecedentes de las metas
como submetas de orden inferior
- Son más específicos, ya que la ejecución lleva implícito un proceso de búsqueda

33
Base de conocimientos
Describe el universo del discurso o dominio en el cual el sistema de producción tiene que
plantear soluciones
Está constituida por bases de hechos y bases de reglas
Las bases de hechos forman un esqueleto declarativo del sistema de producción, su misión es
el de articular a todos los hechos potencialmente relevantes del dominio
Las bases de reglas constituyen el esqueleto procedimental del sistema de producción, y a
través de ella se posibilita la construcción de circuitos inferenciales que nos permiten obtener
conclusiones válidas
La estructura de las bases de hechos y las bases de reglas deben ser tal que ambas entidades
puedan entenderse entre ellas

Memoria Activa (MA)


Es la estructura que contiene toda la información estática necesaria para resolver un problema
concreto. Esta información incluye:
- Datos iniciales del problema
- Datos incorporados con posterioridad
- Hechos establecidos durante los procesos inferenciales
- Hipótesis del trabajo, metas o submetas que todavía no han sido establecidas
Almacena todos los cambios de estado de nuestro sistema, de forma que representa siempre
nuestro estado actual
Es la responsable de interaccionar con el mundo exterior, aceptando la entrada de información
no inferencial
Es el foco permanente de atención de las reglas del sistema

Motor de Inferencias (MI)


Intérprete de reglas + Estrategia de control. Separación con el conocimiento
Funciones:
- Examinar la memoria activa y determinar qué reglas deben ejecutarse (estrategia
de búsqueda + resolución de conflictos). Encontrar conexiones entre estados
iniciales del problema y estados solución.
o Desde las premisas a las conclusiones
o Desde las soluciones a los datos iniciales
o Desde ambos a la vez
- Controlar y organizar el proceso de ejecución de las reglas seleccionadas en el paso
anterior
- Actualizar la memoria activa cuando sea necesario
- Asegurar el autoconocimiento del sistema
El interprete no es más que un programa secuencial, cuya misión es determinar el siguiente
paso a ejecutar

34
La estrategia de control es el mecanismo que examina la memoria activa y determina qué regla
lanzar, a través de los ciclos básicos del sistema, y en funciones de otros parámetros como:
- Criterios de activación elegidos
- Estrategias de búsqueda implementadas
- Dirección del transito por el espacio de estados

Ciclo básico de Sistema de Producción


Está formado por:
- Fase de decisión o selección de reglas:
o Restricción
o Equiparación
o Resolución de conflictos
- Fase de acción o ejecución de las reglas seleccionadas
Fase de decisión o selección de reglas. Restricción
- Intenta simplificar el proceso de equiparación
- Elimina del foco de atención del motor de inferencias aquellas reglas que no tienen
nada que ver con el estado actual representado en la memoria activa del sistema
- Ejemplo de restricción estática: los sistemas de producción suelen dividirse en
varias bases de reglas y varias bases de hechos
- Alternativa dinámica: uso de metaconocimiento (conocimiento sobre
conocimiento)
Fase de decisión o selección de reglas. Equiparación
- Se trata de identificar que reglas son potencialmente relevantes en el contexto del
problema que queremos resolver
- El resultado final es la obtención del conjunto conflicto, que incluye todas las
reglas potencialmente útiles en la resolución de nuestro problema
Fase de decisión o selección de reglas. Resolución de conflictos (decidir qué regla aplicar)
- La decisión final esta condicionada por la estrategia genérica de búsqueda
- Técnicas:
o Uso de metarreglas
o Asignar prioridades a las reglas
o Usar la regla más específica puesto que procesa más información que una
regla general
o Elegir la regla que use los datos más recientes, con el fin de seguir un
razonamiento estable y sensible con la nueva información
Fase de acción
- Actualización de la memoria activa
- Marcaje de estructuras usadas
- Verificación de si continuar o no con el proceso cíclico

35
Tema 5: Modelos de razonamiento
Modelos y dominios
Modelos categóricos: dominios de naturaleza simbólica, con soluciones que pueden
establecerse con total seguridad
Modelos probabilísticos: dominios de naturaleza estadística, soluciones no obtenibles de
forma unívoca

Modelos de razonamiento bajo incertidumbre: dominios de incertidumbre, inherente a datos


o a los propios mecanismos inferenciales
Modelos de razonamiento basado en conjuntos difusos: dominios en los que los elementos
diferenciales incluyen matices lingüísticos
VER EJERCICIO DE RAZONAMIENTO (EL DE TODOS LOS AÑOS)

36

También podría gustarte