Sei sulla pagina 1di 37

UNIVERSIDAD ALAS PERUANAS

FACULTAD DE INGENIERÍAS Y ARQUITECTURA


ESCUELA ACADÉMICO PROFESIONAL DE INGENIERÍA
DE SISTEMAS E INFORMÁTICA

PROYECTO GRUPAL – SISTEMAS EXPERTOS

PRESENTADO POR LOS ALUMNO


AREVALO MOGOLLON, NAHUEL JOSE
DANIEL TALAVERA PACHECO
ROY CERRON SARAVIA
DOCENTE
ING. CASTRO LOPEZ

LIMA – PERÚ

2019
I. QUE ES BACKTRACKING
Backtracking (o Vuelta Atrás) es una técnica de recursión intensiva para resolver problemas
por etapas, que utiliza como árbol de decisiones la propia organización de la recursión. Cuando
se “avanza” de etapa se realiza una llamada recursiva, y cuando se “retrocede” lo que se hace
es terminar el correspondiente proceso recursivo, con lo que efectivamente se vuelve al
estado anterior por la pila de entornos creada en la recursión. Como el árbol de decisiones no
es una estructura almacenada en memoria, se dice que Backtracking utiliza un árbol implícito y
que se habitualmente se denomina árbol de expansión o espacio de búsqueda.

Básicamente, Backtracking es un método recursivo para buscar de soluciones por etapas de


manera exhaustiva, usando prueba y error para obtener la solución completa del problema
añadiendo decisiones a las soluciones parciales.

CÓMO FUNCIONA BACKTRACKING

En su forma básica Backtracking se asemeja a un recorrido en profundidad del árbol de


expansión; se recorre en pre orden: primero se evalúa el nodo raíz o actual, y después todos
sus hijos de izquierda a derecha. Por tanto, hasta que no se termina de generar una solución
parcial (sea válida o no) no se evalúa otra solución distinta. En los nodos del nivel k del árbol se
encuentran las soluciones parciales formadas por k etapas o decisiones.

Hay que recordar que el árbol no está almacenado realmente en memoria, solo se recorre a la
vez que se genera, por lo que todo lo que quiera conservarse (decisiones tomadas, soluciones
ya encontradas al problema, etc.) debe ser guardado en alguna estructura adicional.
Finalmente, debido a que la cantidad de decisiones a tomar y evaluar puede ser muy elevada,
si es posible es conveniente tener una función que determine si a partir de un nodo se puede
llegar a una solución completa, de manera que utilizando esta función se puede evitar el
recorrido de algunos nodos y por tanto reducir el tiempo de ejecución.

Desarrollo de un Sistema Experto usando Backtracking:

Sistema Anti-sombras

Incluido dentro de los controladores Suntrack, las especificaciones del algoritmo de


Backtracking son:

1.- Evita sombras entre paneles y/o seguidores


2.- Incluido en los controladores Suntrack.
3.- Completamente automatico durante la vida del seguidor. No necesita ni ajustes manuales,
ni de hora etc.
4.- Opción de backtracking a 2 o 1 eje.
5.- Offset para orientación SUR configurable.
6.- Fácilmente instalable con el software de PC de Suntrack
7.- Incrementa la potencia total generada
8.- Mejora el rendimiento por m2

Mejora de eficiencia del sistema. Estudio


Información básica para el estudio:

1.- Localización planta solar: Latitud: 38º (Ejemplo: España) 2.- Tamaño de los módulos: 50mx
2m
3.- Inclinación óptima de los módulos: 36º
4.- Paneles fijos: Orientación Sur. Alineación Este-oeste
5.- Seguidor 1 eje: Alineado norte-sur. Movimiento Este -> Oeste

Concepto Backtracking

Ejemplo de eficiencia para una separación de 5 metros

II. Razonamiento guiado por las metas


El Razonamiento es la capacidad del ser humano de que con un ordenamiento de sus
pensamientos pueda generar una idea lógica. Con esta idea lógica se obtienen respuestas y
resoluciones a los problemas de cualquier índole. Quien razona tiene en su poder la
herramienta más importante para definirse en sociedad. El razonamiento es una actividad
mental.

Razonamiento hacia adelante con metas

El razonamiento adelante con metas en forma de implicaciones sirve como generalización de


las reglas de condición-acción

Razonamiento hacia atrás con metas

Generaliza los procedimientos de reducción de metas

Objetivos:

 Razonar hacia adelante, apareando nuevas observaciones con algunas condiciones de


la implicación, generando una nueva instancia de la implicación.
 Razonar hacia adelanta o hacia atrás, para verificar todas las restantes condiciones de
esa instancia de la implicación.
 Derivar la nueva meta de hacer la conclusión cierta

Experiencia real:

CHEF es un planificador basado en casos que toma como entrada una conjunción de submetas
que necesita lograr para conseguir un plan como salida. Su dominio es la creación de recetas.
Las recetas son vistas como planes. Las recetas proporcionan la secuencia de pasos a seguir
para preparar un plato.

Por tanto la entrada de CHEF son las metas que se pueden conseguir con las recetas (por
ejemplo, incluye pescado, sofreír, sabor salado) y la salida es una receta (plan), que puede
obtener esas metas. Como planificador basado en casos, CHEF crea sus planes a partir de
viejos planes que funcionaron en situaciones similares y los modifica para adaptarlos a la
nueva situación. Por tanto el primer paso en la creación de un plan es recuperar una vieja
receta que cumpla el mayor número posible de metas de la entrada. Para recordar esta
clasificación indexa los planes por las metas que logra. Ternera con brócoli es indexado por
varias metas, entre ellas, incluye carne, incluye una verdura fresca, sofreír y lograr sabor
salado. El siguiente paso es adaptar el viejo plan a la nueva situación. Esto se hace en dos
etapas. Primero, se re instancia el viejo plan, es decir, crea una instancia en la que sustituye los
nuevos objetos por los del viejo plan. Por ejemplo, si está creando una receta de pollo con
guisantes desde la receta de ternera con brócoli, sustituye ternera por pollo y brócoli por
guisantes.

Para poder hacer esto, necesita conocer los roles que desempeñan los objetos en la vieja
receta. CHEF tiene un conocimiento bastante limitado sobre esto y para saber qué objetos
sustituir y por cuáles busca las similitudes entre los objetos del viejo plan y los del nuevo y
sustituye los objetos del nuevo plan por los más similares del viejo plan. Por ejemplo, si el pollo
y la ternera están definidos como carne, los sustituye. En la segunda etapa, aplica críticas de
objeto para adaptar el viejo plan a la nueva situación.

Un ejemplo es, el pato no debe tener grasa antes de sofreírlo. Se expresaría de la siguiente
manera:

Después del paso: deshuesar el pato


Hacer: quitar la grasa al plato

Porque: en este momento el pato tiene grasa

Esta crítica está asociada al objeto pato, y cada vez que se usa el pato en una receta se dispara
la crítica. Si hay un paso de deshuesar el pato en la receta que se está creando, se añadiría
detrás un pasó indicando que se debería de quitar la grasa al pato. Las críticas de objeto
generalmente añaden pasos de preparación especiales a la receta (deshuesar, quitar la
grasa…).

Las críticas son la forma en que CHEF codifica el conocimiento sobre procedimientos
especiales asociados al uso de objetos de su dominio. Su uso durante la adaptación muestra la
interacción entre el uso de experiencia y de conocimiento general de los sistemas CBR.
Después de la re instanciación y la aplicación de críticas, CHEF obtiene un plan completo. Para
validar el plan lo ejecuta en un simulador muy parecido al mundo real y si es correcto lo
almacena, si no crea una explicación causal de por qué no funcionó el plan y lo usa como
índice para reparar el plan. Los TOPs (paquetes de organización temática) son estructuras que
encierran conocimiento general del dominio Relacionan el conocimiento acerca de cómo
interaccionan entre sí los objetivos del caso considerado. En CHEF, se usan para caracterizar de
un modo abstracto las interacciones entre las etapas de una receta.

Así, el sistema incluye un TOP EFECTOS LATERALES: CONDICIÓN INVALIDADA:


CONCURRENCIA. CONCURRENCIA significa que dos objetivos han sido llevados a cabo a través
de una sola acción. EFECTO LATERAL: CONDICIÓN INVALIDADA significa que ha tenido lugar un
efecto lateral: intentar satisfacer uno de los objetivos impide la satisfacción del otro. Este TOP
caracteriza, por ejemplo, el fallo que ocurre cuando se cocina brécol con ternera y el brécol se
reblandece. Los TOPS son importantes porque capturan conocimiento a veces independiente
del dominio de resolución de problemas. En CHEF, una solución al problema es dividir la acción
en dos etapas de modo que los objetivos no interfieran entre sí (cocinar los ingredientes en
dos etapas). Otra solución basada en un TOP sería añadir otra acción que contrarrestara el
efecto de la anterior (añadir algo que absorbiera el agua que reblandece el brécol). Es
importante observar que estas estrategias son bastante -6- generales y podrían constituir
sugerencias interesantes para la reparación de planes en otros muchos dominios.

CHEF emplea tres tipos de estrategias de reparación: (1) dividir y reformular los pasos del plan,
(2) alterar el plan para que se ajuste a la solución esperada o (3) buscar un plan alternativo.

En primer lugar CHEF elige la estrategia de reparación buscando casos similares en el TOP que
sugieran una reparación y después chequea la posibilidad de aplicar las condiciones para cada
plan reparado. Así encuentra el más apropiado. Aplica el plan de reparación apropiado,
resolviendo el plan fallido. CHEF realiza otra etapa más antes de acabar, actualiza su
conocimiento del mundo para poder anticiparse y no repetir el error que acaba de cometer.
Para ello, encuentra unos predictores del tipo de fallo y lo usa como índice para advertir de la
posible ocurrencia del fallo. Evidentemente estos índices son extraídos de la explicación previa
del fallo, aislando la parte de la explicación que describe características del medio
responsables del fallo. La siguiente figura muestra la arquitectura de CHEF.
Los rectángulos representan sus unidades funcionales, los círculos sus fuentes de
conocimiento y los óvalos las entradas y salidas de cada proceso funcional.

Figura 1. Arquitectura Funcional de CHEF


III. ENCADENAMIENTO HACIA ATRÁS
INTRODUCCION

El presente informe contiene la descripción de las características que posee los sistemas basados
en Encadenamiento hacia Atrás.

DEFINICIÓN

A diferencia del trabajo con encadenamiento hacia delante el encadenamiento hacia atrás
comienza con una hipótesis y a partir de ella es que se intenta probar la hipótesis recolectando
información.

Haciendo un cuadro comparativo:

S. DE ENCADENAMIENTO HACIA ADELANTE S. DE ENCADENAMIENTO HACIA ATRÁS

El primer paso es definir los datos iniciales Se comienza con la definición de las metas del
sistema

Por lo tanto en términos mas sencillo podemos decir que el encadenamiento hacia atrás no es
mas que: “La estrategia de inferencia que intenta probar una hipótesis recolectando
información de apoyo”.

CARACTERISTICAS EN UN SISTEMA CON ENCADENAMIENTO HACIA ATRÁS

Algunas características de los sistemas de encadenamiento hacia atrás son:

 Es un método muy útil en aplicaciones con muchos datos disponibles de partida, de los
que solo una pequeña parte son relevantes.
 Es un sistema interactivo, sólo pregunta lo estrictamente necesario a diferencia del
encadenamiento hacia delante que no pregunta nada.

VENTAJAS DEL ENCADENAMIENTO HACIA ATRÁS

El encadenamiento hacia atrás posee las siguientes ventajas


 Trabaja bien cuando el problema comienza formando la hipótesis y luego busca probar.
 Se enfoca en una meta dada lo cual produce una serie de preguntas relacionadas al
tema.
 Busca en la base de conocimiento solamente la información referente al problema.
 Es excelente para diagnostico, prescripción, y corrección de errores.

DESVENTAJAS DEL ENCADENAMIENTO HACIA ATRÁS

Podría decirse que la principal desventaja que posee es:

 Que continúa siendo una línea de razonamiento, aun si debería cambiar a uno distinto.

CUANDO USAR UN ENCADENAMIENTO HACIA ATRÁS

Algunos de los casos en los que se debería usar encadenamiento hacia atrás es cuando:

 Si primero se plantea la hipótesis y luego se busca como probarla.


 Si se necesitan más datos que conclusiones.
 Cuando se tiene mucha información disponible.

PROCESO DE DESARROLLO

El proceso de desarrollo de un Sistema basado en encadenamiento hacia atrás esta dado de la


siguiente manera:

1. Se comienza con una meta para probar


2. Posteriormente se inspecciona la memoria de trabajo para ver si la meta ha sido
previamente probada
3. En caso de que no se haya probado, el sistema busca en sus reglas para ver si una o
mas tienen esta meta en su parte del THEN, este tipo de regla es llamada regla meta.
4. El sistema ve si las premisas de las reglas meta están listadas en la memoria de
trabajo, las premisas no listadas se tornan nuevas metas o submetas para ser
probadas.
5. Este proceso continúa de manera recursiva hasta que el sistema encuentra una
premisa que no es soportada por ninguna regla, llamada primitiva (premisa de una
regla que no es concluida por ninguna regla).

Cuando una primitiva es encontrada, el sistema pregunta al usuario información acerca de esta
primitiva, entonces el sistema usa esta información para ayudar a probar las submetas y la meta
original.

EJEMPLO

Anteriormente se mencionó que el encadenamiento hacia atrás es recomendable cuando se


tratan Sistemas De Diagnóstico, Corrección de Errores y Prescripción. Para entender de mejor
manera el encadenamiento hacia atrás se presenta el siguiente ejemplo que tiene que ver con
Diagnóstico Médico.

Supongamos que un paciente va al doctor, el doctor luego de escuchar el problema del paciente
creé que tiene una infección de garganta. Ahora bien veremos como un sistema experto basado
en reglas de encadenamiento hacia atrás puede solucionar este problema.

REGLA 1

IF Hay señales de infección de garganta.

AND Hay evidencia de presencia de estreptococo.

THEN El paciente tiene una infección de garganta.

REGLA 2

IF La garganta del paciente está enrojecida

THEN Hay señales de infección de garganta


REGLA 3

IF El teñido del organismo es oscura

AND La morfología del organismo es coccus

AND El crecimiento del organismo es en cadena

THEN Hay evidencia de que el organismo es estreptococo.

Motor de inferencia: Encadenamiento


hacia atrás

Es obligatorio incluir un objetivo inicial (lo que pretendemos demostrar), que se


irá reemplazado por otros sub-objetivos como resultado de aplicar las reglas hacia
atrás

hechos
hechos

Dada una regla R: si A entonces C

 La regla se puede aplicar hacia atrás cuando existe un objetivo OBJ que concuerda con
el consecuente C.

 Cuando se aplica una regla hacia atrás, se procede a sustituir la demostración de OBJ por
la demostración de los antecedentes A de la regla; esto es, el objetivo inicial OBJ se
reemplaza por todos los objetivos A.
Un motor de inferencia
con encadenamiento hacia atrás:
 parte de unos hechos (datos) y de un objetivo inicial,
 va cotejando (emparejando) los consecuentes de las reglas con la lista de
objetivos, y
 va aplicando las reglas hacia atrás (aumentando así la lista de objetivos) hasta que todos
ellos coincidan con hechos de la memoria de trabajo

Para representar los objetivos que han de demostrarse, suele


utilizarse un grafo Y/O:

Ejercicio

Dibujar el grafo Y/O para el ejemplo anterior.


IV. INCERTIDUMBRE
El tratamiento de la incertidumbre constituye uno de los campos fundamentales de la
inteligencia artificial, pues afecta en mayor o menor medida a todos los demás. En particular,
una de las propiedades esenciales de los sistemas expertos, y a la vez una de las más
complejas, es el tratamiento de la incertidumbre.

Un poco de Historia
Principio de incertidumbre -> Desarrollo por Heisenberg en 1927
 Es imposible conocer conjuntamente con exactitud, la posición y la velocidad de
una partícula.
 Heisenberg calculo la magnitud de esa inexactitud (Premio Nobel de física)
 Diagnóstico medico
 Predicción financiera
 Exploración minera / petrolera
 Interpretación de imágenes (visión)
 Reconomiento de voz
 Monitoreo / control de procesos industriales complejos

Causas de la incertidumbre
Información
 Información Incompleta (falta de análisis o falta de campos).
 Poco confiable (medidores , instrumentos y análisis poco confiables).
 Ruido o distorsión ( ruido o distorsión en sistemas de visión, de reconocimiento
de voz , de comunicaciones)
Conocimiento
 Impreciso (si tiene dolor de cabeza posiblemente tiene gripe)
 Contradictorio(si tiene dolor de cabeza es problable que tenga gripe, pero
también es posible que no tenga gripe, opiniones encontradas de expertos
Representación
 No adecada(no se selecciono la presentación idónea para la aplicación).
 Falta de poder descriptivo(las representaciones no permiten representar
adecuadamente el conocimiento del dominio, como la expresa el experto)
Efectos de Incertidumbre

Se pierden varias propiedades de los sistemas que no tienen incertidumbre, principalmente


aquellos basados en lógicas o reglas. Las principales dos características de lógica de primer
orden que, en general, ya no aplican son:

 Monotonica
 Modular

Caracteística Modular

Un sistema de reglas es modular, ya que para saber la verdad de una regla sólo tiene que
considerarla a ésta, sin importar el resto del conocimiento.
Si A entonces B -> Si A es verdadero, B es verdadero

Con incertidumbre

Si A entonces posiblemente B, o si A entonces B con probabilidad = 0.7

Si C entonces B con probabilidad = 0.9

Si A y C son verdaderos ¿Cuál es la probabilidad de B: 0.7 ò 0.9 o la combinación de ambas?

Característica Monotonica

Un sistema es monotónico si al agregar nueva información a su base de datos, entonces


no se alteran las conclusiones que seguían de la base de datos original.
Si A entonces B -> Si A es verdadero, B es verdadero
Con incertidumbre

Si A entonces posiblemente B,o si A entonces B con probabilidad = 0.7

Si C entonces B con probabilidad =0.9

En t1 es verdadera y C falsa -> probabilidad de B es 0.7

En t2 c se hace verdadera -> cambia la probabilidad de B


Técnica de incertidumbre

 No-numericas
 Logicas no-monotónicas
 Sistema de mantenimiento de verdad (TMS,ATMS)
 Teorías de endosos
 Empíricas (MYCIN, Prospector)
 Métodos aproximados
 Redes Bayesianas
 Teoría de Dempster – Shafer
 Lógica difusa

VI. Encadenamiento hacia adelante

Definición:
En un sistema basado en reglas "si-entonces", encadenamiento que empieza
afirmando las conclusiones de todas las reglas cuyas cláusulas "si" son verdaderas y
luego comprobando qué nuevas reglas pueden aplicarse dados los nuevos hechos
inferidos; proceso que continúa hasta que se alcanza un objetivo o bien se agotan las
posibilidades.

Motor de inferencia
¿Cómo se van aplicando las reglas de la base de conocimiento sobre los hechos de la
memoria de trabajo?

 Se puede programar por completo (p.ej. en C) o utilizar un shell de sistema


experto (que proporciona un lenguaje específico para declarar hechos y reglas el
motor de inferencia ya implementado).

 El motor de inferencia es el encargado de hacerlo.


 Pueden utilizarse dos mecanismos básicos de inferencia:
 Hacia adelante (p.ej. CLIPS)
 Hacia atrás (p.ej. PROLOG).

Encadenamiento hacia adelante

Dada una regla R: si A entonces C

La regla R se puede disparar, ejecutar o aplicar hacia adelante cuando se


satisfacen las condiciones especificadas en su antecedente A.

Cuando la regla se dispara, se procede a la ejecución de las acciones


especificadas en su consecuente C.

parte de unos hechos (datos en la memoria de trabajo),

va cotejando (emparejando) los datos de la memoria de trabajo con los


antecedentes de las reglas, y

las va disparando hasta que se satisface algún objetivo o hasta que ninguna
regla sea aplicable.
41

Motor de inferencia: Encadenamiento hacia


adelante Emparejamiento

Comparación de los antecedentes de cada regla con los hechos de la


memoria de trabajo.

Resultado: Conjunto de reglas que pueden aplicarse en cada momento


(“conjunto conflicto”).

Motor de inferencia: Encadenamiento hacia


adelante Resolución de conflictos

Selección de una regla del “conjunto conflicto” (cuando exista


más de una).

Resultado: Regla seleccionada para su aplicación.


Motor de inferencia: Encadenamiento hacia
adelante Ejecución de laregla

La regla seleccionada se ejecuta (dispara); esto es, se ejecutan las acciones


especificadas en su parte derecha.

Principio de refracción: La regla ejecutada no volverá a ser aplicable hasta


que no desaparezca alguno de los hechos que hicieron posible su aplicación y
vuelvan a afirmarse (“asertarse”)

Motor de inferencia: Encadenamiento hacia adelante


EJEMPLO:
R0: IF hay placas (puntos blancos) en la garganta THEN diagnóstico:
posible infección degarganta

R1: IF garganta inflamada

AND sospechamos infección bacteriana

THEN diagnóstico: posible infección degarganta

R2: IF temperatura paciente >39


THEN paciente tiene fiebre

R3: IF paciente enfermo más de unasemana AND


paciente tiene fiebre

THEN sospechamos infección .

Motor de inferencia: Encadenamiento hacia


adelante EJEMPLO
M.T. C.C. Resolución
temperatura = 40 enfermo
dos semanas garganta
inflamada

Memoria de trabajo inicial:


Datos provenientes de la exploración del paciente, p.ej.

temperatura = 40
enfermo dos semanas
garganta inflamada

M.T. C.C. Resolución


temperatura = 40 enfermo
dos semanas garganta R2 R2
inflamada
temperatura = 40 enfermo
dos semanas garganta
inflamada fiebre

Si no aplicamos el principio de refracción, podríamos estar añadiendo


indefinidamente el hecho de que la persona tiene fiebre.

M.T. C.C. Resolución


temperatura = 40 enfermo
M.T. garganta
dos semanas R2 C.C. Resolución
R2
inflamada
temperatura = 40 enfermo
dos semanas
temperatura garganta
= 40 enfermo
inflamada fiebre
dos semanas garganta R1 R1
R3 R3
posible
inflamada infección bacteriana
fiebre

temperatura
temperatura = 40 enfermo
= 40 enfermo
dos semanas
dos semanas garganta
garganta
inflamada
inflamada fiebre fiebre
posibleposible infección
infección bacteriana infección en la
bacteriana
garganta
Diagnóstico: Posible infección en la garganta

Si, en la exploración inicial, se hubiesen visto puntos blancos en la garganta, entonces


tendríamos:

M.T. C.C. Resolución


temperatura = 40 enfermo
dos semanas garganta R0, R2 ???
inflamada
puntos blancos en la garganta
Dependiendo del orden en que el motor de inferencia seleccione las reglas, podríamos llegar a
un diagnóstico con menos pasos (si se elige R0 primero) o, incluso, puede que diferente
Ahora analizando la situación se puede ver que:

Para probar esta la meta de que el paciente tiene infección de garganta, el sistema selecciona la
regla meta Regla 1, e intenta probar las premisas de esta regla , ya que ambas premisas son
conclusiones de otras reglas cada premisa por lo que estas se tornan sub meta para ser probada.

Ahora bien para probar que ‘Hay señales de infección de garganta’ el sistema ve las premisas de
la regla 2 y para probar ‘Hay evidencia de que el organismo es estreptococo, el sistema ve las
premisas de la regla 3.

Todas esas premisas son primitivas, y se requiere que el usuario provea información.

Ya que en este problema el sistema fue capaz de probar estas dos reglas, las premisas de la regla
meta fueron probadas, lo que significa que la meta inicial de que el paciente tiene infección de
garganta también es probada, ya que es la conclusión de la regla meta.

Meta Simple

El sistema fue diseñado para conocer acerca de una sola infección que vendría a ser de garganta.

Preguntas Simples

La sesión fue conducida en un modo interactivo usando lenguaje natural. Se hacen preguntas
que pueden ser contestadas con SI o NO, o también seleccionar de una lista de respuestas.

Búsqueda Primero En Profundidad


Esta es una característica de los sistemas de encadenamiento hacia atrás, que son atractivos
para aplicaciones que requieren usar interacción.

Adaptación Del Usuario

Los sistemas debe ofrecer una transparencia en su razonamiento proveyendo una explicación
del WHY (por qué) de algunas preguntas. La mayoría de los shells manejan estos tipos de
preguntas.

Despliegue De Fallas

El sistema debe desplegar al final el resultado al usuario algo así como: –Infección de garganta

Esto puede ser solo un resultado intermedio del camino de otra recomendación. Ejemplo:

SISTEMA: Yo creo que la infección es de la garganta.

Interacción Con El Usuario

El sistema debe ser diseñado para soportar la inteligencia del usuario usando una simple vía,
mediante la inteligencia. Esto significa que el usuario tiene información que puede ser de ayuda
al sistema.

Red De Seguridad

Si la información no fue reconocida como infección de garganta –entonces un sistema


inteligente, llamaría a la red de seguridad, ya que este proviene al sistema de fallas para
reportar.

Documentación De Reglas

Las reglas están escritas en una sintaxis que depende del lenguaje de programación o el shell del
sistema experto que escoja para el desarrollo del sistema. Obtener esta sintaxis puede ser
dificultoso para interpretar rápidamente, lo cual perjudica en la depuración y mantenimiento
del sistema. Por esta razón es importante la documentación de cada regla con información que
puede ayudar a su interpretación.
Cadena De Inferencias

Cuando revisamos un conjunto de reglas, es difícil determinar qué reglas soportan otras, durante
el proceso de inferencia. Por lo tanto, los diseñadores, usan una forma alternativa para revisar
el proceso de inferencia, desplazando gráficamente las reglas en una Cadena de inferencias.

Cadena De Inferencias: Representación gráfica de las reglas del sistema con premisas y
conclusiones de reglas, dibujadas como nodos y su relación como enlaces.

Otro ejemplo puede ser el siguiente:

DIAGNÓSTICO DE MENINGITIS

El objetivo es el de diagnosticar a un paciente que podría tener meningitis.

Asumimos que la presencia de meningitis puede ser determinada de la información


proporcionada del test o de la observación de los síntomas del paciente.

Los objetivos de revisar este ejemplo son:

 Revisar el proceso de encadenamiento hacia atrás.


 Observar el diseño de un sistema para un usuario inteligente.
 Introducir la importancia de la documentación de reglas.
 Intentar que el sistema responda a la pregunta WHY.
 Ver como efectivamente despliega el sistema lo encontrado.
 Introducir el uso de una red segura.
 Introducir una red de inferencia.

El sistema tiene como único objetivo decir si la infección es meningitis o no.


Para tal caso usa la regla uno, este objetivo puede ser alcanzado si el usuario ya sabe que el
paciente tiene meningitis o el sistema puede inferir la infección.

La meningitis es asumida si el resultado del test lo confirma o el paciente tiene síntomas


indicado por la regla dos. Las reglas tres y cuatro buscan sobre los resultados del test, en tanto
la regla cinco hace la búsqueda sobre los síntomas del paciente.

APROXIMACIÓN A LA RESOLUCIÓN DE PROBLEMAS:

Reglas de diagnóstico de la meningitis.

Meta 1: INFECCIÓN DE MENINGITIS.

Regla 1 INFECCION DE MENINGITIS

IF El medico sabe que paciente tiene meningitis.

OR Se sospecha de meningitis

THEN Infección de meningitis.

AND DESPLEGAR Infección

Note: Información a ser desplegada debe ser diseñada y accedida por esta instancia.

ELSE DESPLEGAR No se encontró infección.

Regla 2 SE SOSPECHA DE MENINGITIS POR EL TEST O SINTOMAS

IF Se sospecha de meningitis por el resultado del test.

OR Se sospecha de meningitis por los síntomas del paciente.

THEN Se sospecha de meningitis.

Regla 3 CULTIVOS PARECIDADAS A LA MENINGITIS

IF Donde el test esta corriendo.

AND Cultivos donde se observa.


AND Cultivos parecidas a la meningitis.

THEN Se sospecha de meningitis por el resultado del test.

Regla 4 CULTIVOS PARECIDADAS A LA MENINGITIS

IF La apariencia de la cultivo es coccus.

AND Las manchas de la cultivo son grampos.

THEN Cultivos parecidas a la meningitis.

Regla 5 SE SOSPECHA DE MENINGITIS POR LOS SÍNTOMAS

IF El paciente esta sufriendo persistentes dolores de cabeza.

AND El paciente esta sufriendo de vértigo.

AND El paciente esta letárgico.

THEN Se sospecha de meningitis por los síntomas.

EJEMPLO DE UNA SESIÓN DE DIAGNÓSTICO MÉDICO:

Ahora se revisará la interacción entre el sistema y el usuario. Se puede notar el procesamiento


interno de procesamiento del algoritmo de encadenamiento hacia atrás.

MEMORIA DE TRABAJO

--- Vacío ---

PASO 1

Encontrar reglas con hipótesis en “THEN” parte de la REGLA 1

PASO 2
Observar la primera premisa en la REGLA 1 y ver si esta lista en la memoria de trabajo -
NO.

PASO 3

Observar si esta premisa existe en “THEN” como parte de una regla -NO.

PASO 4

Esta premisa es generalmente primitiva de la siguiente pregunta.

SISTEMA: ¿Conoces que el paciente tiene meningitis?

Usuario: NO

MEMORIA DE TRABAJO

El paciente no sabe que tiene meningitis.

PASO 5

Observe en la segunda premisa en la REGLA 1 y vea si es listada en la memoria de trabajo


-NO.

PASO 6

Observe si la premisa existe en el “THEN” parte de cualquier regla –REGLA 2

PASO 7

Observe la primera premisa en la REGLA 2 y vea si esta listada en la memoria de trabajo


-NO

PASO 8

Observe si la premisa existe en el “THEN” parte de cualquier regla –REGLA 3.

COMENTARIO: Las primeras dos premisas de la REGLA 3 son conocidas y son primitivas,
causando la siguiente pregunta a ser contestada.
PASO 9

SISTEMA: ¿Quiere correr el test?

Usuario: SI

PASO 10

SISTEMA: ¿Quiere ver cultivos?

Usuario: SI

COMENTARIO: La tercera premisa de la REGLA 3 es conocida y soportada por la REGLA 4,


direccionando la pregunta siguiente en la búsqueda de la premisa 1 de la REGLA 4.

PASO 11

SISTEMA: ¿La apariencia de la cultivo es coccus?

Usuario: ¡Por supuesto!

COMENTARIO: El usuario necesita saber por qué esta pregunta es importante. El sistema
responde exhibiendo la regla seguida.

SISTEMA: Esto ayudara en la determinación de si “CULTIVOS SON OBSERVADAS COMO


MENINGITIS”.

[REGLA 4]

IF La apariencia de la cultivo es coccus [4.1]

AND Si la mancha de cultivo es Grampos [4.2]


THEN Cultivos observada como meningitis [4.3]

COMENTARIO: El usuario ahora fuerza a pedir por qué es importante determinar como las
Cultivos observadas son meningitis. El sistema debería responder desplegando las reglas que
necesito esta información, entonces pedir la siguiente pregunta.

PASO 12

Usuario: Porque 4.0

SISTEMA: Esto ayudara en la determinación de si “SE SOSPECHA DE MENINGITIS POR EL


RESULTADO DEL TEST”.

[REGLA 3]

Si alrededor se a establecido que

Se quiere correr el test [3.1]

Se quiere ver las cultivos [3.2]

Sin embargo, si

Cultivos observados como meningitis [3.3]

Entonces se sospecha de meningitis por el resultado del test


[3.0]

PASO 13

SISTEMA: ¿La apariencia de la cultivo es coccus?

Usuario: NO

MEMORIA DE TRABAJO

Paciente conoce que tiene meningitis –FALSE

Test corriendo –TRUE

Cultivos observadas –TRUE


La apariencia de cultivo es coccus –FALSE

COMENTARIO: El sistema no tubo éxito en establecer meningitis por el resultado del test
(Premisa 1, REGLA 2). A continuación se intentará establecer por consideraciones los síntomas
del paciente (Premisa 2, REGLA 2).

PASO 14

Observe la segunda premisa en la REGLA 2 y vea si está listada en la memoria de trabajo


–NO

PASO 15

Observe si la premisa existe en el “THEN” parte de cualquier regla –REGLA 5

PASO 16

Todas la premisas de la REGLA 5 son conocidas y primitivas, causando la siguiente


pregunta a ser pedida:

SISTEMA: ¿El paciente tiene persistentes dolores de cabeza?

Usuario: SI

SISTEMA: ¿El paciente tiene vértigo?

Usuario: SI

SISTEMA: ¿El paciente tiene letargo?

Usuario: SI

PASO 17

La REGLA 5, que causa la regla 2, que en turnos causan la REGLA 1 para asegurarse de que la
infección es meningitis, causando el siguiente despliegue a ser causado.

SISTEMA: Después de considerar la información obtenida, se cree que la infección es meningitis.


MEMORIA DE TRABAJO

Paciente conoce que tiene meningitis –FALSE

Test corriendo –TRUE

Cultivos vistas –TRUE

La apariencia de las cultivos es coccus –TRUE

El paciente sufre de dolores de cabeza –TRUE

El paciente sufre de vértigo –TRUE

El paciente tiene letargo –TRUE

Se sospecha de meningitis por los síntomas –TRUE

Nosotros sospechamos de meningitis –TRUE

La infección es meningitis –TRUE

Meta Simple

El sistema fue diseñado para conocer acerca de una sola infección, llamada Meningitis. Por lo
tanto, solo una simple meta fue establecida.

Preguntas Simples

La sesión fue conducida en un modo interactivo usando lenguaje natural. Se hacen preguntas
que pueden ser contestadas con SI o NO, o también seleccionar de una lista de respuestas. Sin
embargo se puede diseñar el sistema para acomodar la entrada de cadenas o números.

Busqueda Primero En Profundidad

La sesión mantiene el foco en este tema, es decir test del paciente o sus síntomas. Esta instancia
es solicitada al usuario y ocurre a causa del empleo del método de búsqueda primero en
profundidad. Esta es una característica de los sistemas de encadenamiento hacia atrás, que son
atractivos para aplicaciones que requieren usar interacción.

Adaptacion Del Usuario


Los sistemas ofrecen una transparencia en su razonamiento proveyendo una explicación del
WHY (por qué) de algunas preguntas en el PASO11. El ejemplo provee un despliegue de las
reglas corrientes seguidas con la opción del usuario para proveer reglas adicionales en otras
reglas. La mayoría de los shells manejan estos tipos de preguntas.

Despliegue De Fallas

El sistema despliega al final el resultado al usuario –Infección es meningitis –Paso 17. Esto puede
ser solo un resultado intermedio del camino de otra recomendación. Ejemplo:

SISTEMA: Yo creo que la infección es meningitis.

Interaccion Con El Usuario

El sistema del ejemplo ha sido diseñado para soportar la inteligencia del usuario usando una
simple vía. Mediante la inteligencia. Esto significa que el usuario tiene información que puede
ser de ayuda al sistema.

Red De Seguridad

El ejemplo incorpora un despliegue por defecto que debe ser presentado al usuario si la
información no fue reconocida como meningitis –entonces ELSE parte de la REGLA 1. Esto en
un programa tradicional provocaría “No puede computar”, pero en un sistema inteligente,
llamaría a la red de seguridad, ya que este proviene al sistema de fallas para reportar.

Facilidad De Expansión

En los tradicionales sistemas basados en reglas, se puede fácilmente expandir el sistema para
mejorar su desempeño. Una técnica de expansión es hacer que exista un conocimiento
profundo. Ejemplo. Considerar la primera premisa de la REGLA 5. Que puede ser ambigua “El
paciente sufre de persistentes dolores de cabeza”. El sistema debería ser expandido para inferir
esta premisa, usando más información, como muestra la siguiente regla.
IF El paciente experimenta dolores de cabeza cada día.

OR El paciente tiene dolores de cabeza más por las noches.

THEN El paciente sufre de persistentes dolores de cabeza.

El segundo tipo de técnica de expansión, es hacer al sistema más extensible en su inteligencia


introduciendo nuevas cosas.

Documentación De Reglas

Las reglas están escritas en una sintaxis que depende del lenguaje de programación o el shell del
sistema experto que escoja para el desarrollo del sistema. Obtener esta sintaxis puede ser
dificultoso para interpretar rápidamente, lo cual perjudica en la depuración y mantenimiento
del sistema. Por esta razón es importante la documentación de cada regla con información que
puede ayudar a su interpretación.

Cadena De Inferencias

Cuando revisamos un conjunto de reglas, es difícil determinar qué reglas soportan otras, durante
el proceso de inferencia. Por lo tanto, los diseñadores, usan una forma alternativa para revisar
el proceso de inferencia, desplazando gráficamente las reglas en una Cadena de inferencias.

AGENDA DE METAS

Una agenda de metas es considerada como “una serie de metas por conseguir en una cierta
secuencia”.

Todos los sistemas de encadenamiento hacia atrás necesitan al menos una meta para iniciar la
sesión, pero en muchas aplicaciones el sistema necesita perseguir una serie de metas en una
secuencia establecida.
EJEMPLO:

AGENDA PARA CONSEGUIR LA IDENTIDAD DE UN ANIMAL

1 . El animal es un pájaro

1 .1 . El pájaro es un petirrojo.

1 . 2. El pájaro es un canario.

1 .2.1 . es un canario amarillo.

1 .2.2 es un canario café.

2 . El animal es un mamífero

2 . 1 El mamífero es un caballo.

2 . 2 El mamífero es una vaca.

3 . El animal es un reptil.

Aquí el sistema intenta probar primero si el animal es un pájaro, un mamífero o un reptil, luego
si es un pájaro se prueba si es un petirrojo o un canario. Si no se prueba que el animal es un
pájaro, se ve si es un mamífero, y se continua con el mismo procedimiento.

METAS ESTABLECIDAS POR EL USUARIO

A veces el orden de la lista de la agenda es demasiado rígido para algunos problemas en los que
el sistema podría tomar ventaja de información específica acerca del problema. Se podría
diseñar el sistema para trabajar con un usuario inteligente, por ‘usuario inteligente’ se refiere a
un usuario que tenga información que pueda ayudar a guiar al sistema. Una forma simple de
hacer esto es presentando al usuario al principio de la sesión un menú de metas u objetivos que
se desean perseguir. Si el usuario no tiene información para dirigir la búsqueda, el sistema
iniciara con una lista de metas por defecto.
METAS ESTABLECIDAS POR REGLAS

En algunas aplicaciones es de valor establecer metas mediante la aplicación de reglas. Esto


permite al sistema adaptar su búsqueda de acuerdo al problema. Por ejemplo en el diseño de
amplificadores una parte adicional llamada disipador de calor puede ser necesaria si se requiere
exceder cierto nivel en la potencia de la salida. Ya que un disipador de calor puede ser necesario,
pero no siempre se puede incluir la siguiente regla que cambia la meta del sistema:

IF La salida del amplificador está sobre 10 watts.

THEN Debemos usar transistores de alto poder.

AND Fijar nueva meta para diseñar transistores con disipador de calor.

Permitir a un sistema experto controlar el orden de búsqueda sobre la base de información


descubierta es una característica importante de un sistema inteligente. Como se ilustra en el
anterior ejemplo, una forma de lograr esto es incluir una regla que cambia la meta u objetivo
del sistema. Este tipo especial de regla es denominado Meta - regla .

INFERENCIA MONÓTONA

En los tipos de problemas que se ha visto, se ha asumido que los hechos encontrados no cambian
durante la sesión, es decir una vez que el hecho se coloca en la memoria de trabajo, esta
permanece ahí. Por ejemplo consideremos un problema de diagnóstico electrónico:

Afirmación El transistor Q1 está mal

Regla IF El transistor Qi está mal

THEN Remplazar el transistor Q1

Conclusión: Remplazar el transistor Q1


Sistemas que retienen hechos como afirmaciones que no cambian se llaman sistemas
monótonos.

Razonamiento monótono.- Método de razonamiento que asume que una vez que un hecho se
a afirmado, este no puede ser alterado durante el curso del razonamiento.

INFERENCIA NO MONÓTONA

Algunos sistemas trabajan con hechos cuyo estado puede cambiar durante la sesión. Además
otra información lógica depende de que este hecho cambie o no. Consideremos el siguiente
ejemplo:

Afirmación Está lloviendo <- Hecho 1

Regla IF Está lloviendo

THEN Llevar un paraguas.

Conclusión: Llevar un paraguas <- Hecho 2

Dada la afirmación y la regla, deberíamos concluir que debemos llevar un paraguas. Pero si antes
que consigamos un paraguas para de llover , podríamos dejar el paraguas . En este sentido la
retracción del hecho 1, implica la retracción del hecho 2. Los sistemas con este tipo de
procesamiento usan razonamiento no monótono.

Definición de razonamiento no monótono .- Método de razonamiento que permite cambios en


el razonamiento por cambios dados en un hecho, permitiendo la retracción en el hecho y en la
conclusión tomada.

SISTEMAS SEPARADOS

Cuando existen problemas complejos los diseñadores del sistema dividen el problema en sub
tareas y diseñan sistemas expertos separados para cada tarea. Cada sistema resuelve una parte
del sistema, luego pasa el control al otro sistema.
Una ventaja es que cada sistema pude tener su propia técnica de inferencia.

Describe el proceso básico de un sistema de encadenamiento hacia atrás

1. Se tiene objetivo meta


2. Inspecciona la memoria de trabajo para ver si la meta ha sido previamente probada.
3. Si no el sistema busca en sus reglas para ver si una o mas tienen esta meta en su parte
del THEN, este tipo de regla es llamada regla meta.
4. Luego el sistema ve si las premisas de las reglas meta están listadas en la memoria de
trabajo, las premisas no listadas se tornan nuevas metas o submetas para ser probadas.
5. Este proceso continúa de manera recursiva hasta que el sistema encuentra una premisa
que no es soportada por ninguna regla, llamada primitiva.

Liste varios problemas que son apropiados para un sistema de encadenamiento hacia atrás.

Sistemas de Diagnóstico medico:

 Diagnostico para el dolor de cabeza


 Diagnostico para resfrío
 Diagnostico para determinar cáncer de mama
 Diagnostico para determinar leucemia. Etc.
Sistema de Control de errores:

 Control de lectura de datos


Sistema de Prescripción:

 Prescripción para la presión arterial


 Prescripción para el uso de un medicamento

VII. Encadenamiento hacia adelante y encadenamiento hacia atrás


El encadenamiento hacia adelante es un mecanismo de razonamiento se define como el que
se guía por datos y/o hechos, es decir si se tienen dentro de la base de conocimiento que a su
vez estos abren paso a otros conocimientos y de esa manera forman una cadena se entiende
como encadenamiento hacia adelante.

Ejemplo:

R1: Si Nahuel entonces Desaprueba

R2: Si Daniel entonces Aprueba

R3: Si Aprueba entonces Feliz

Primero se verifica por medio del motor de inferencia las reglas que se aplican R1 y R2, Se
selecciona R1. Que genera “Desaprueba”, que se añade

=(Nahuel,Daniel,Desaprueba)

Luego se selecciona R2 y este genera “Aprueba” y se añade una vez más

=(Nahuel,Daniel,Desaprueba,Aprueba)

Ahora se selecciona R3 y esto genera “Feliz” lo que resuelta en:

=(Nahuel,Daniel,Desaprueba ,Aprueba,Feliz)

El encadenamiento hacia atrás se define como la que trabaja bajo un enfoque guiado por
objetivos, es decir si usamos el ejemplo anterior se puede determinar si se da “Feliz” con los
hechos “Daniel” y “Nahuel”.

El motor de inferencia tendría que verificar las relgas aplicables. En este ejemplo se pude la R3
es decir “Feliz” que se tiene como consecuente, generado por “Aprueba”

Teniendo en cuenta que “Aprueba” aún no se encuentra en la base de hechos, no se puede


determinar si es verdadero o falso, y se considera como subjetivo.

Se continuara intentando probar “Feliz” con R2, y se obtiene “Nahuel” que es un hecho en la
base de hechos y como se ha probado el subjetivo, también se prueba “Feliz”

Potrebbero piacerti anche