Manual del estudiante de Ingeniería en Sistemas de UTN/Inteligencia Artificial/Sistemas de producciones

De Wikilibros, la colección de libros de texto de contenido libre.

Representación del conocimiento[editar]

Un agente inteligente necesita un sistema de representación del conocimiento, con el cual representar los hechos y las reglas para inferir los hechos no observados y las consecuencias de las acciones y del paso del tiempo.

Componentes del sistema de producciones[editar]

Base de conocimiento[editar]

Memoria de trabajo[editar]

Contiene un conjunto de sentencias que no tienen variables, es decir que representa los hechos particulares.

Memoria de producciones[editar]

Está constituida por sentencias del tipo:

Donde cada antecedente debe matchear con una afirmación, y cada acción representa un cambio sobre la memoria de trabajo (eliminaciones, adiciones o modificaciones).

Los antecedentes vienen de la forma

No hay disyunciones, sino que se representan como otra entrada en la memoria de producciones.

La máquina de inferencias[editar]

Encadenamiento hacia delante[editar]

Fase de cotejo (matching)[editar]

Se compara, para cada una de las reglas, cada elemento de la premisa con las sentencias en la memoria de trabajo. Se incorpora al conjunto de conflicto cada un de las reglas para las cuales se cumplan todas las premisas. Para evitar recálculos que atenten contra la eficiencia, se puede utilizar un algoritmo tal como Rete, que se basa en dos suposiciones:

  • La memoria de trabajo es muy grande y cambia poco entre cada ciclo. Toda la información que sigue presente en el siguiente ciclo se puede utilizar. Rete guarda información de los matchings parciales entre ciclos, de manera que el esfuerzo de matching depende de la razón de cambio de la memoria de trabajo en lugar de su tamaño.
  • Las condiciones de muchas reglas se repiten. Rete localiza condiciones comunes y produce un grafo que representa la memoria de producción, en donde los nodos son las condiciones de las reglas.
Resolución de conflictos[editar]

Se selecciona del conjunto de conflictos, la regla que se va a ejecutar, con un criterio que puede ser: la más específica, la que fue satisfecha con hechos más recientemente incorporados, etc.

Aplicación[editar]

Se aplica el consecuente de la regla seleccionada, produciéndose el cambio correspondiente en la memoria de trabajo.