Está en la página 1de 44

TEMA:

DISEÑO DE SISTEMAS BASADO EN REGLAS CON


ENCADENAMIENTO HACIA ATRÁS

Recopilado por: Ing. Miguel Ángel Córdova Solís

2015
DISEÑO DE SISTEMAS BASADO EN REGLAS CON
ENCADENAMIENTO HACIA ATRÁS

1. INTRODUCCIÓN
En este trabajo se considerara las etapas que un ingenie-
ro de conocimiento realiza para desarrollar un sistema
experto basado en reglas con encadenamiento hacia atrás.
Este proceso se ilustrara con un pequeño problema de pla-
nificación de inversión personal.

2. METODOLOGÍA GENERAL PARA EL DISEÑO DE


SISTEMAS BASADO EN REGLAS CON
ENCADENAMIENTO HACIA ATRÁS
La primera tarea antes de realizar el diseño de un siste-
ma experto es el tener un conocimiento general del pro-
blema. Se debe determinar los objetivos del sistema, y
obtener información del experto con el fin de tener reco-
mendaciones validas.

Una característica común al diseño de cualquier sistema


experto es que es un proceso altamente iterativo. El pro-
ceso cíclico continua en aumento mientras el sistema cre-
ce.

Este estilo de desarrollo cíclico es típico cuando se


construye un sistema con encadenamiento hacia atrás.

Hay siete tareas principales que se realizan cuando se


desarrolla un sistema con encadenamiento hacia atrás:

• Definir el problema

• Definir los objetivos

• Definir las reglas

• Expandir el sistema

• Refinar el sistema

• Diseño de la interfase

• Evaluación del sistema

De entrada estos pasos son aplicables a una pequeña parte


del sistema y luego mediante su iteración se expanden a
todo el sistema hasta que ha sido refinado y obtener el
rendimiento de un experto.

Para la explicación de cómo trabaja el sistema con enca-


denamiento hacia atrás nos valdremos de un ejemplo apli-
cado a la cartera de inversiones.

3. TAREA 1: DEFINICIÓN DEL PROBLEMA


El primer paso para el desarrollo de cualquier sistema
experto debe ser aprender sobre el tema. Nuestra tarea en
este caso será desarrollar un sistema experto para ayudar
a tomar decisiones financieras a un cliente que desea in-
vertir. Para ello se debe reunir información acerca del
como trabaja una bolsa de inversiones.

Sistemas basado en reglas con encadenamiento hacia atrás 2


Los reportes, documentos, libros son buenas fuentes de
información para cualquier experto en proyectos. Estas
fuentes nos proporcionan un buen nivel para lograr el en-
tendimiento del tema y de su solución. A pesar de ello,
el de ser buenos puntos de partida, siempre es necesario
contar con la ayuda de un experto.

De tener la suerte de encontrar un buen experto, la si-


guiente tarea es sacarle información acerca del tema. Por
ejemplo, en nuestro caso seria necesario que nos diga en
que rubros se puede invertir.

El experto nos podría indicar que la cartera de inversio-


nes puede clasificarse en:

ACCIONES
Transferencias Empresas Comunes

BONOS
Del tesoro Corporaciones Municipales

FONDOS MUTUOS
Efectivo Bonos Acciones

AHORROS
Cuenta corriente Mercado monetario Cuentas de ahorro

PRODUCCIÓN
Agricultura Precio de metales Petróleo

INMUEBLES
Comercial Residencial Terrenos

Durante la explicación de esta lista el experto podría


incluir algunos comentarios de cómo formar la cartera de
inversiones. No obstante, es preferible tomar la informa-
ción por etapas.

Consejo de diseño: Durante la etapa de definición del


problema, no se debe interrumpir al experto por problemas
de detalles. Es preferible entender el problema en forma

Sistemas basado en reglas con encadenamiento hacia atrás 3


general. Los detalles se pueden obtener después durante
discusiones posteriores con el experto.

Luego de elegir la cartera de inversiones es factible


continuar con el análisis de que medios de inversión se
van usar dentro de cada categoría, es decir, cuales son
los mas adecuados para cada cliente. Estos mecanismos de
refinamiento puede tratarse según el nivel de profundidad
a que se desee llegar en el análisis.

4. TAREA 2: DEFINICIÓN DE LOS OBJETIVOS


Lo primero es definir los objetivos que el sistema va al-
canzar. Después de alternar con el experto se puede lle-
gar a la conclusión de que los dos objetivos principales
a lograr son:

1. Determinación de la composición de la cartera de in-


versiones.

2. Determinación de los medios de inversión dentro de


cada categoría.

Para mantener la simplicidad de nuestro sistema, escoge-


remos solamente el primer objetivo y se asumirá que el
segundo objetivo podría ser alcanzado en una revisión fu-
tura del sistema.

Una cartera de inversiones es simplemente la distribución


de la inversión en una o más categorías generales. Un
sistema de accesoria de inversiones podría necesitar una
gran cantidad de recomendaciones. Manteniendo nuestro
criterio de simplicidad, se asumirá que sólo se tiene
cuatro posibles alternativas:

Cartera 1: 100% de inversión en ahorros

Sistemas basado en reglas con encadenamiento hacia atrás 4


Cartera 2: 60% en acciones, 30% en bonos, 10% en aho-
rros

Cartera 3: 20% en acciones, 40% en bonos, 40% en aho-


rros

Cartera 4. 100% de inversión en acciones

Consejo de diseño: Focalizar el diseño original en una


pequeña parte representativa del problema completo.

5. TAREA 3: DISEÑO DE LAS REGLAS


Cada objetivo de nuestro sistema debe tener al menos una
regla. Es necesario obtener el conjunto de premisas para
satisfacer cada regla. La forma general de nuestras re-
glas será la siguiente:

IF Premisas 1
AND Premisas 2
. .0
. .
THEN Cartera_i

En base a las premisas el experto efectúa la recomenda-


ción de una cartera determinada. Estos antecedentes se
obtienen luego de efectuar consultas al experto. Conside-
remos la siguiente interacción entre el ingeniero de co-
nocimiento (IC) y el experto en el área (EA):

IC: ¿Cómo escoger la cartera de inversión correcta para


el cliente?

EA: Cada inversión tiene un riesgo asociado con ella, de


modo, que yo necesito saber algo acerca del estado
personal y financiero del cliente. Cada una de estas
características es importante para recomendar una po-
sición agresiva o conservadora.

Sistemas basado en reglas con encadenamiento hacia atrás 5


IC: ¿De modo que Ud. recomienda un tipo determinado de
inversión basado el perfil personal y financiero del
cliente pensando en una posición agresiva o conserva-
dora?

EA: Sí.

IC: ¿No toma en cuenta otras consideraciones?

EA: Claro que sí. Si el cliente solo desea invertir una


pequeña cantidad de dinero, se asume que es realmente
conservador, e inmediatamente se le recomienda inver-
tir todo su dinero en ahorros.

IC: ¿Que cantidad Ud. considera como pequeña?

EA: Cualquier cantidad de dinero menor que $1000.

Esta discusión con el experto nos provee las principales


consideraciones atener en cuenta cuando se recomienda una
cartera de inversiones (nuestro objetivo):

• Condición personal del cliente (conservador o agre-


sivo)

• Estado financiero del cliente (conservador o agresi-


vo)

• Cantidad a invertir (pequeña o grande)

Ahora que se conoce las principales consideraciones, el


siguiente paso será determinar sus relación con la reco-
mendación correspondiente. Esto puede ser realizado a
través de discusiones con el experto, o elegirse otra
técnica que incluye una tabla de decisión.

Sistemas basado en reglas con encadenamiento hacia atrás 6


5.1. TABLAS DE DECISIÓN
Las tablas de decisión ofrecen una técnica de ad-
quisición de conocimiento que evita problemas nor-
malmente asociados con la técnica de entrevistas.

Una tabla de decisión provee un formato fácil de


llenar que el experto puede usar para realizar su
decisión.

CANTIDAD ESTADO ESTADO


CONSEJO
A INVERTIR PERSONAL FINANCIERO
Pequeña Cartera 1
No Pequeña Conservador Conservador Cartera 1
No Pequeña Conservador Agresivo Cartera 2
No Pequeña Agresivo Conservador Cartera 3
No Pequeña Agresivo Agresivo Cartera 4
Tabla 1. Tabla de decisión para las reglas objetivo.
Los factores de decisión para nuestras reglas se
muestras en las etiquetas en el extremo superior de
las primeras tres columnas. La etiqueta en la últi-
ma columna a la derecha es el consejo dado por el
experto.

5.2. REGLAS OBJETIVO


Podemos usar esta tabla para escribir nuestros ob-
jetivos. Si fuera muy grande la tabla, necesitaría-
mos usar herramientas de inducción. Dado que esta
tabla es pequeña, se pueden escribir las reglas por
simple inspección. Las siguientes reglas están re-
presentadas por el siguiente seudo código:

Regla 1
IF Cantidad de inversión del cliente < 1000
THEN La sugerencia ES invertir el 100% en ahorros

Sistemas basado en reglas con encadenamiento hacia atrás 7


Mg. Abraham Gamarra Moreno
Regla 2
IF Cantidad de inversión del cliente >= 1000
AND El estado personal del cliente sugiere \
una posición conservadora
AND El estado financiero del cliente sugiere \
una posición conservadora
THEN La sugerencia ES invertir el 100% en ahorros

Regla 3
IF Cantidad de inversión del cliente >= 1000
AND El estado personal del cliente sugiere \
una posición conservadora
AND El estado financiero del cliente sugiere \
una posición agresiva
THEN La sugerencia ES invertir el 60% en acciones,
30% en bonos y el 10% en ahorros

Regla 4
IF Cantidad de inversión del cliente >= 1000
AND El estado personal del cliente sugiere \
una posición agresiva
AND El estado financiero del cliente sugiere \
una posición conservadora
THEN La sugerencia ES invertir el 20% en acciones,
40% en bonos y el 40% en ahorros

Regla 5
IF Cantidad de inversión del cliente >= 1000
AND El estado personal del cliente sugiere \
una posición agresiva
AND El estado financiero del cliente sugiere \
una posición agresiva
THEN La sugerencia ES invertir el 100% en acciones

5.3. RED DE INFERENCIA


Incluso en los estados tempranos de un proyecto es
útil dibujar una red de inferencia de las reglas
que se han hallado. La red de inferencia muestra
las relaciones lógicas entre las informaciones re-
presentadas en las reglas (Ilustración 1).

Sistemas basado en reglas con encadenamiento hacia atrás 8


Mg. Abraham Gamarra Moreno
5.4. PRUEBA DE REGLAS
Después de formular las reglas del sistema, se de-
berá probar el sistema. En general después de for-
mular cualquier nuevo conocimiento en un sistema
experto, se deberá inmediatamente probar el siste-
ma.

Consejo de diseño: Luego de la formulación de cual-


quier nuevo conocimiento en un sistema experto, se
deberá inmediatamente probarlo, usando información
especifica al nuevo conocimiento.

Esto es particularmente importante durante las eta-


pas tempranas del desarrollo del sistema cuando de-
be probarse exhaustivamente el sistema. Probar las
reglas del sistema implica el correr varias veces
el sistema para diferentes combinaciones de res-
puestas.

Sistemas basado en reglas con encadenamiento hacia atrás 9


Cartera Cartera Cartera Cartera
1 2 3 4

And
Or And

And

And

Estado
Inversión financiero
< 1000 = Agresivo

Estado
financiero =
Inversión Estado
conservador
>=1000 personal =
Estado
conservador
personal =
Agresivo

Ilustración 1. Red de inferencia de las reglas objetivo

5.5. ORDEN DE BÚSQUEDA


Otro aspecto importante en la prueba del sistema,
en las primeras etapas del proyecto, es el orden en
que el sistema busca el conocimiento. La mayoría de
shells buscan reglas de competencia en el orden en
que son ingresadas. En nuestro sistema esto impli-
caría que la regla 1 es la que se debe buscar pri-
mero. Además, la primera pregunta que el sistema
debería realizar es que cantidad de dinero el
cliente desea invertir. Por ello es necesario efec-
tuar un buen ensamblaje de nuestros objetivos para
que no se pierda tiempo en preguntas innecesarias
cuando alguna pregunta clave del sistema podría es-
tar dando resultados concretos.

Sistemas basado en reglas con encadenamiento hacia atrás 10


5.6. BÚSQUEDA EXHAUSTIVA VERSUS BÚSQUEDA NO EX-
HAUSTIVA
Un sistema con encadenamiento hacia atrás se puede
programar para que realice búsquedas exhaustivas o
no exhaustivas. Una búsqueda exhaustiva continua
buscando todas las reglas para alcanzar algún obje-
tivo, incluso si el objetivo se ha establecido por
el disparo de una de las reglas. Una búsqueda no
exhaustiva se detiene después de disparar sólo una
regla. El decidirse por alguna de estos procedi-
mientos depende del tipo de sistema y del modo en
que los expertos resuelvan los problemas en deter-
minados campos.

En nuestro caso, desearíamos que si se descubre que


el cliente tiene menos de $1000, entonces el siste-
ma se detenga incluso cuando fueran posibles otras
recomendaciones. La mayoría de shells realizan por
defecto una búsqueda no exhaustiva.

Si nuestro problema fuera encontrar todas las reco-


mendaciones de carteras posibles, entonces desea-
ríamos emplear técnicas de búsqueda exhaustivas.
Por ejemplo, si deseáramos una lista de recomenda-
ciones, y ordenarlas de acuerdo a un ranking aso-
ciado a un grado de probabilidad, entonces seria
necesario un tipo de búsqueda exhaustiva.

En este caso, el sistema buscaría los posibles va-


lores para la cartera recomendada. Según este pro-
cedimiento, un resultado que podría darse seria el
siguiente:

Sistemas basado en reglas con encadenamiento hacia atrás 11


Recomendación de cartera de inversión Probabilidad
60 % stocks, 30 % bonos, 10 % ahorros 90 %
100 % de inversión en stocks 85 %
20 % stocks, 40 % bonos, 40 % ahorros 70 %
100 % de inversión en ahorros 60 %

6. TAREA 4: EXPANDIENDO EL SISTEMA


En este punto nuestro sistema tiene cinco reglas y puede
recomendar 4 carteras diferentes. Es totalmente funcio-
nal, pero no muy inteligente. El principal forma para me-
jorar la inteligencia de un sistema experto es expandir
su conocimiento. Aquí, hay dos opciones disponibles: am-
pliando o profundizando el conocimiento del sistema. Se
entiende por ampliar el conocimiento a “enseñar” al sis-
tema sobre problemas adicionales. En nuestro ejemplo, po-
demos enseñarle otras mixturas de las carteras de inver-
siones. Este tipo de expansión es bastante fácil y usual-
mente reservada para más adelante en el proyecto.

La otra opción de profundizar el conocimiento del sistema


se entiende como: “enseñar” más acerca de los problemas
ya conocidos. En nuestro ejemplo, deberíamos enseñarle
como determinar las premisas de las reglas objetivo. Esto
es una técnica de expansión comúnmente usada en las pri-
meras etapas del proyecto. Para apreciar porque se da es-
te caso, considere la siguiente respuesta al sistema de-
bido a la pregunta derivada de una de las reglas presen-
tes en el conjunto de reglas actual:

Sistema: ¿Sugiere una posición conservadora para el


estado personal del cliente?

Sistemas basado en reglas con encadenamiento hacia atrás 12


Esto podría ser una pregunta difícil de contestar para el
usuario porque requiere alguna especialización en el pro-
blema.

En general, durante el desarrollo entero del sistema ba-


sado en reglas, Ud. debería estar averiguando que puede
expandirse en profundidad. Pregúntese usted mismo (o aun
mejor pregunte al usuario) si el usuario puede contestar
eficazmente la pregunta planteada por el sistema. Si la
respuesta es no, entonces añada conocimiento al sistema
que fuerce a buscar más información primitiva y fiable.

En la actualidad, nuestro sistema tiene tres problemas


que pueden ser expandidos en profundidad:

1. La cantidad de inversión del cliente

2. El estado personal del cliente

3. El estado financiero del cliente

La primera no necesita mayor expansión ya que el sistema


requiere hacer una pregunta sobre la cantidad a invertir.
Las otras, sin embargo, necesitan ser expandidas. Para
lograrlo necesitamos consultar otra vez al experto.

Consejo de diseño: Expanda un problema por vez. Esto per-


mite al experto enfocarse en un sólo problema y evita
problemas comúnmente encontrados cuando al experto se le
pide dirigirle a múltiples problemas.

6.1. EXPANSIÓN DEL ESTADO PERSONAL


Para expandir el estado personal tenemos dos pre-
guntas para el experto, una para cada posible va-
lor: conservador o agresivo.

IC: ¿Cómo Usted determina que el estado personal


del cliente tiene una posición conservador?
Sistemas basado en reglas con encadenamiento hacia atrás 13
EA: Sugeriría una posición conservadora si el
cliente es viejo o su trabajo no es estable.
Proporcionaría la misma sugerencia si el clien-
te es joven, tiene trabajo estable, pero tiene
hijos.

Las dos heurísticas se pueden representar por:

Regla 6
IF El cliente ES viejo
OR El trabajo del cliente ES no estable
THEN El estado personal del cliente sugiere \
una posición conservadora

Regla 7
IF El cliente ES joven
AND El trabajo del cliente ES estable
AND El cliente tiene \ niños
THEN El estado personal del cliente sugiere \
una posición conservadora

Ahora se tiene dos reglas de profundidad que condu-


cen a una de las premisas de las reglas objetivos.
La siguiente pregunta determina la posición agresi-
va del cliente:

IC: ¿Cómo Usted determina que el estado personal


del cliente tiene una posición agresiva?

EA: Sugeriría una posición agresiva si el cliente


es joven, su trabajo es estable, pero no tiene
hijos.

La nueva información es capturada en la siguiente


regla:

Sistemas basado en reglas con encadenamiento hacia atrás 14


Regla 8
IF El cliente ES joven
AND El trabajo del cliente ES estable
AND El cliente tiene \ no niños
THEN El estado personal del cliente sugiere \
una posición agresiva

De esta discusión con el experto se obtuvieron di-


ferentes reglas para soportar el proceso de infe-
rencia en profundidad. Sin embargo, también descu-
brimos nuevos problemas que necesitarían ser explo-
rados:

1. Edad del cliente: Joven, viejo

2. Trabajo del cliente: Estable, no estable

3. Tiene hijos el cliente: Verdadero o falso

Uno de ellos puede ser contestado directamente y no


tiene que ser explorado. Sin embargo, expandiremos
los otros dos, uno por vez.

6.2. EXPANSIÓN DE LA EDAD


Para expandir la edad preguntamos al experto:

IC: ¿A que punto Usted considera a alguien viejo?

EA: 40 años

IC: ¿A que punto Usted considera a alguien joven?

EA: Alguien menor de 40 años

De estas preguntas nosotros podemos escribir las


siguientes reglas:

Regla 9
IF Edad del cliente < 40
THEN El cliente ES joven
Sistemas basado en reglas con encadenamiento hacia atrás 15
Regla 10
IF Edad del cliente >= 40
THEN El cliente ES viejo

Antes de continuar con la expansión de nuestro sis-


tema, echemos una mirada a una peligro que común-
mente caen muchos diseñadores del sistema.

6.3. PROBLEMA CON ELSE


Muchos ingenieros del conocimiento tienen instruc-
ción en la programación tradicional.

Antes de pasar al campo de los ingenieros de cono-


cimiento, estos programadores fueron cuadriculados
en la importancia de escribir procedimientos conci-
sos: “puede ser echo con una línea de código en vez
de dos”. Cuando desarrollamos un sistema experto no
se esta codificando procedimientos sino codificando
conocimientos. A menudo, intentar comprimir dos
piezas de conocimiento en una regla puede causar
problemas. Estos problemas se encuentran a menudo
con el uso de la sentencia ELSE.

Para ilustrar este punto, consideremos el problema


de la edad. Con la información proporcionada por el
experto sobre este problema se puede capturar esta
situación como:

IF Edad del cliente < 40


THEN El cliente ES joven
ELSE El cliente ES viejo

Superficialmente la regla no tiene ningún error y


representa lógicamente el conocimiento del experto.
Sin embargo, asumamos que usamos esta regla pero

Sistemas basado en reglas con encadenamiento hacia atrás 16


después decidimos añadir la siguiente regla que in-
troduce una nueva categoría de edad:

IF Edad del cliente < 50


AND Edad del cliente >= 40
ELSE El cliente ES de-edad-media

Ahora, si nosotros encontramos una persona cuya


edad es de 45, nuestro sistema concluirá que él es
tanto viejo como de edad media. El disparo de estas
dos reglas son el resultado de las inconsistencias
de las conclusiones. Reconocemos que la regla que
contienen la parte ELSE siempre se dispara.

Para evitar las inconsistencias del sistema es ne-


cesario llevar la cuenta de las reglas que usan EL-
SE. A menudo el uso de ELSE dificulta el manteni-
miento del sistema por lo que debe evitar su uso.

Consejo de diseño: Evitar la sentencia ELSE siempre


que sea posible.

6.4. EXPANDIENDO LA ESTABILIDAD DEL TRABAJO


Para expandir la estabilidad hacemos dos preguntas
al experto:

IC: ¿Cómo Usted determina la estabilidad del traba-


jo del cliente?

EA: Usualmente considero dos cosas: los años de


servicio del cliente en su actual compañía y la
tasa de despidos que la compañía esta experi-
mentando. Por ejemplo, si él ha trabajo en la
compañía entre 3 y 10 años, y la tasa de despi-
dos es bajo, entonces asumo las cosas como es-
Sistemas basado en reglas con encadenamiento hacia atrás 17
table. De hecho, si él ha trabajado allí por
más de 10 años, siento que las cosas están
bien.

De estas dos respuestas escribimos las siguientes


reglas:

Regla 11
IF Años de servicio del cliente ES 10 años o más
THEN El trabajo del cliente ES estable

Regla 12
IF Años de servicio del cliente ES entre
3 y 10 años
AND La tasa de despidos temporal ES baja
THEN El trabajo del cliente ES estable

Continuamos la discusión con el experto y le pre-


guntamos:

IC: ¿Cómo Usted determina la inestabilidad del tra-


bajo del cliente?

EA: Si los años de servicio del cliente es de 3 a


10 años y la tasa de despidos es alta, entonces
asumo las cosas como inestables. De echo, si él
ha trabajado allí por menos de 3 años, siento
que las cosas no son realmente estables.

De estas respuestas podemos escribir las siguientes


dos reglas:

Regla 13
IF Años de servicio del cliente ES entre
3 y 10 años
AND La tasa de despidos temporal ES alta
THEN El trabajo del cliente ES no estable

Regla 14
IF Años de servicio del cliente ES menor
que 3 años
Sistemas basado en reglas con encadenamiento hacia atrás 18
THEN El trabajo del cliente ES no estable

6.5. RED DE INFERENCIA DEL ESTADO PERSONAL


Podemos añadir las nuevas reglas a la red original
de inferencia. La Ilustración 2 muestra la parte de
esta nueva red enfocado al estado personal del
cliente.

Estado Estado
personal = personal =
conservador Agresivo

Or And And

Cliente es Trabajo no Cliente es Trabajo Cliente Cliente no


viejo estable joven estable tiene hijos tiene hijos

Or < 40
>=40
And And
Servicio
>
Servicio
10
<
Servicio
3 Tasa de Tasa de
3 - 10
despidos despidos
alto bajo

Ilustración 2. Red de inferencia para el estado personal

6.6. EXPANDIENDO EL ESTADO FINANCIERO


Para expandir el estado financiero del cliente pre-
guntamos al experto:

IC: ¿Cómo Usted sabe el estado financiero del


cliente para sugerir una posición conservadora?

EA: Sugeriría una posición conservadora si el total


de activos es menor que su total de pasivos.
También, si su total de activos excede su total
Sistemas basado en reglas con encadenamiento hacia atrás 19
de pasivos pero son menor ... pienso ...
aproximadamente dos veces sus pasivos ... y ...
él tiene niños, entonces otra vez recomiendo
una posición conservadora.

De estas respuestas podemos escribir las siguientes


dos reglas:

Regla 15
IF Total de activos < Total de pasivos
THEN El estado financiero del cliente sugiere \
una posición conservadora

Regla 16
IF Total de activos > Total de pasivos
AND Total de activos < 2 * Total de pasivos
AND El cliente tiene \ niños
THEN El estado financiero del cliente sugiere \
una posición conservadora

Continuando nuestra discusión, preguntamos lo si-


guiente:

IC: ¿Cómo Usted sabe el estado financiero del


cliente para sugerir una posición agresiva?

EA: Sugeriría una posición agresiva si el total de


activos excede al total de pasivos por un fac-
tor igual a 2. Además, si su total de activos
excede su total de pasivos, pero fue menor a
dos veces esta cantidad, y él no tiene niños,
entonces otra vez recomiendo una posición
agresiva.

De esta discusión podemos escribir las siguientes


reglas:

Sistemas basado en reglas con encadenamiento hacia atrás 20


Regla 17
IF Total de activos > 2 * Total de pasivos
THEN El estado financiero del cliente sugiere \
una posición agresiva

Regla 18
IF Total de activos > Total de pasivos
AND Total de activos < 2 * Total de pasivos
AND El cliente tiene \ no niños
THEN El estado financiero del cliente sugiere \
una posición agresiva

6.7. RED DE INFERENCIA DEL ESTADO FINANCIERO


Para mantener el registro del conocimiento recolec-
tado, añadimos estas nuevas reglas a la red de in-
ferencia. La parte asociada con el estado financie-
ro es mostrado en la Ilustración 3.

Estado Estado
financiero = financiero =
conservador Agresivo

Or And

And
Total
activo < Cliente no
total tiene hijos
pasivo
Total Total Total
activo < 2 Cliente activo > 2 activo >
* total tiene hijos * total total
pasivo pasivo pasivo

Ilustración 3. Red de inferencia para el estado financiero

7. TAREA 5: REFINAR EL SISTEMA


En este punto se tiene ya un sistema completamente fun-
cional que cumple con los objetivos iniciales. Pero se
pueden añadir características adicionales que mejoren
tanto el desempeño como el mantenimiento.
Sistemas basado en reglas con encadenamiento hacia atrás 21
7.1. USO DE VARIABLES PARA NÚMEROS
Frecuentemente durante el desarrollo de un sistema
experto se necesitan emplear números dentro de una
regla. Así en nuestro problema el experto consideró
una edad de 40 años a más para ser viejo. Se captu-
ró esta heurística en la REGLA 10 donde este número
se usa explícitamente dentro de la regla. En un
sistema grande basado en reglas este mismo número
puede aparecer muchas veces a través de la base de
conocimiento. Si luego existiera la necesidad de
cambiar este número, será necesario ubicar cada re-
gla y hacer la corrección, esta tarea puede ser
complicada y dificulta el mantenimiento del siste-
ma.

Un mejor enfoque es el de emplear variables para


reemplazar los números usados en las reglas, a las
variables se le asigna un valor dentro de la por-
ción de inicialización del programa. Este enfoque
le permite ubicar fácilmente la variable que nece-
sita ajuste y requiere un cambio solamente en la
asignación del valor a la variable y no en las re-
glas.

En nuestro sistema ejemplo, los números se emplea-


ron para los siguientes elementos:

• Edad del cliente.

• Años de servicio del cliente

• Relación entre activos y pasivos

Sistemas basado en reglas con encadenamiento hacia atrás 22


Se puede reemplazar el uso explícito de los números
usados en estos asuntos con las siguientes varia-
bles y las asignaciones iniciales. Así tenemos:

EDAD DEL CLIENTE


Inicializar VEJEZ = 40

Regla 9
IF Edad del cliente < VEJEZ
THEN El cliente ES joven

AÑOS DE SERVICIO DEL CLIENTE


Inicializar SERVICIO_LARGO = 10
SERVICIO_CORTO = 3

Regla 11
IF Años de servicio del cliente >=
SERVICIO_LARGO
THEN El trabajo del cliente ES estable

ACTIVOS Y PASIVOS
Inicializar FACTOR DE SEGURIDAD = 2

Regla 17
IF Total de activos > FACTOR DE SEGURIDAD *
Total de pasivos
THEN El estado financiero del cliente sugiere \
una posición agresiva

7.2. RED DE SEGURIDAD INTELIGENTE


En las aplicaciones de programación tradicional, el
usuario probaba el código para todas las posibles
combinaciones de entrada para verificar su opera-
ción. Esto es posible porque la cantidad de datos
de entrada esta frecuentemente limitada a un número
finito de posibilidades. Sin embargo, cuando se de-
sarrolla un sistema experto, generalmente nos en-
contramos con un número grande de posibles combina-
ciones de entrada, que no permiten la prueba ex-
haustiva del sistema. En esta situación, puede

Sistemas basado en reglas con encadenamiento hacia atrás 23


existir la posibilidad que el sistema no sea capaz
de alcanzar una recomendación final.

Para manejar este problema, se necesita desarrollar


una “red de seguridad” para el sistema. Una red de
seguridad es simplemente un curso de acción que el
sistema toma si este falla al tratar de alcanzar
una recomendación. Este puede ser tan complejo como
cargar otra base de conocimientos que tratara de
corregir la situación, o, tan simple, como una sen-
tencia por defecto que le muestre al usuario su fa-
lla.

Otro enfoque que podría elegirse es elaborar una


“red de seguridad inteligente”. Por inteligente se
entiende que le sistema le dice al usuario que se
encontró algo que podría interesarle, aunque la re-
comendación final no se alcanzo.

La forma más simple de alcanzar esto es a través de


la agenda de metas. Se necesita incluir una meta
que el sistema persiga solo si la meta primaria no
fue alcanzada. Esta meta deberá ser la conclusión
de una regla simple que se garantice se dispare y
muestre la información apropiada. La premisa de la
regla puede ser un hecho simple, previamente afir-
mada en la memoria de trabajo, el que actúa sólo
para disparar la regla.

Para nuestro sistema ejemplo, podemos elegir infor-


mar al usuario acerca del estado personal y finan-
ciero del cliente en la red de seguridad. Para cum-
plir con esto, primero tendríamos que hacer el si-
guiente ajuste a nuestra agenda de metas:

Sistemas basado en reglas con encadenamiento hacia atrás 24


1. La sugerencia de Portafolio ES QUE

2. Visualizar por defecto

La primera meta, la que fue previamente desarrolla-


da, se busca primero. Se necesita estar seguro que
la segunda meta será perseguida sólo en el caso que
la primera meta no se alcance.

Es necesario escribir la regla que visualice el


texto por defecto al usuario:

Regla 18
IF Recomendación se desconoce
THEN Visualizar por defecto
AND DISPLAY TEXTO POR DEFECTO

La premisa de esta regla debe ser afirmada en la


memoria de trabajo cuando la sesión comience usando
alguna forma de la sentencia “INIT” (inicializar).
Cuando esta regla se dispara, el texto asociado con
la sentencia “DISPLAY TEXTO POR DEFECTO” debe ser
mostrada al usuario. El texto debe informar al
usuario que el sistema no logró alcanzar una reco-
mendación y para dar los hallazgos acerca del esta-
do del cliente:

DISPLAY TEXTO POR DEFECTO

Lo siento pero no pude determinar un portafolio que


cumpla las necesidades del cliente. Sin embargo so-
bre la base del estado personal del cliente podría
recomendar [Sugerencias al estado personal del
cliente] y en el estado financiero [Sugerencias al
estado financiero del cliente].
Cuando se visualice esto al usuario, los valores
encontrados para “Sugerencias al estado personal
del cliente” y “Sugerencias al estado financiero
del cliente” debería presentarse. Aunque le sistema
Sistemas basado en reglas con encadenamiento hacia atrás 25
no tuvo éxito, el usuario se puede beneficiar al
obtener esta información.

7.3. PROVEER HALLAZGOS PRINCIPALES


Algo que es cómodo para el usuario durante la con-
sulta es mantenerlo informado acerca de los hallaz-
gos principales y direcciones que el sistema toma.

Existen varios lugares en el sistema donde se pue-


den elegir visualizar los hallazgos intermedios.
Por ejemplo, si queremos visualizar la valoración
al estado personal del cliente. Sería necesario en-
tonces añadir una sentencia a cada regla que con-
cluya en este asunto, la sentencia debe mostrar la
información adecuada. Así se considera para la re-
gla 6:

Regla 6
IF El cliente ES viejo
OR El trabajo del cliente ES no estable
THEN El estado personal del cliente sugiere \
una posición conservadora
AND DISPLAY LA VALORACIÓN DEL ESTADO PERSONAL
DEL CLIENTE

DISPLAY LA VALORACIÓN DEL ESTADO PERSONAL


DEL CLIENTE

Después de considerar los asuntos personales del


cliente, podría sugerir [Sugerencias al estado per-
sonal del cliente]. Continuare ahora con los aspec-
tos financieros del cliente.
La visualización no solo presenta los hallazgos ac-
tuales, también muestra la dirección que el sistema
tomará próximamente.

Sistemas basado en reglas con encadenamiento hacia atrás 26


ff
8. TAREA 6: DISEÑO DE INTERFAZ
El usuario tiene contacto con el sistema a través de la
interfaz del sistema. Muchas veces la aceptación del sis-
tema depende en como la interfaz se acomoda a las necesi-
dades del usuario, los diferentes shells ofrecen ayuda en
esta tarea. Podemos considerar varios aspectos que se de-
ben considerar en esta tarea.

8.1. VISUALIZACIÓN INTRODUCTORIA


Cada sistema experto debería tener una visualiza-
ción introductoria. Como mínimo se debería explicar
acerca del propósito general del sistema. En el
sistema de ejemplo deberíamos visualizar una expli-
cación al usuario que le diga que el sistema dará
una recomendación de portafolio que reúna las nece-
sidades del cliente. También podría adicionalmente
explicar como el sistema llevará a cabo la tarea
primaria, En nuestro caso, se explicará que el sis-
tema explorará tanto asuntos personales como finan-
cieros para arribar a una recomendación.

8.2. PREGUNTAS ADECUADAS


La mayoría de los shells automáticamente generan
preguntas a partir de las primitivas encontradas en
las reglas. Por ejemplo, en el aspecto de los “Ac-
tivos totales” el sistema podría preguntar:

SISTEMA: ¿Activos Totales?


Este tipo de preguntas a parte de ser frías puede
confundir al usuario llevándolos a contestarlas
equivocadamente. Ante tal pregunta, el usuario po-

Sistemas basado en reglas con encadenamiento hacia atrás 27


dría preguntarse “¿Qué activos considero?”, o,
“¿Ingreso las cantidades en dólares?”.

La mayoría de los shells permiten colocar las pre-


guntas adecuadas al usuario, de tal manera que se
reciban respuestas confiables. Considere el si-
guiente ejemplo:

SISTEMA: Por favor dame la cantidad en dólares


total de los activos que el cliente po-
see. Incluyendo la tenencia de cuentas
bancarias, acciones, bonos, inmuebles,
etc. Por favor ingrese la cantidad en
dólares sin comas, por ejemplo 150000.

8.3. INDICACIONES DE PANTALLA


Es importante dar instrucciones claras de cada pan-
talla presentada al usuario. Muestre claramente
cualquier opción disponible para la pantalla actual
y las indicaciones de su uso. A continuación se
ilustra como dar instrucciones de pantallas claras.

Continuación de la sesión
Aquí se considera la tarea de continuar la sesión
siguiendo lo que se muestra en algunos textos o
gráficos. Por ejemplo si se va a emplear la tecla
ENTRAR o alguna otra tecla para continuar la sesión
deberíamos colocar, una descripción corta como con-
tinuar. Así por ejemplo

Por favor presiones ENTRAR para continuar la se-


sión.

Respuesta a preguntas con múltiples respuestas


Se puede ayudar al usuario cuando se tengan pregun-
tas con varias opciones de respuesta. Así se podría
mostrar un menú de opciones, por ejemplo

Sistemas basado en reglas con encadenamiento hacia atrás 28


SISTEMA: ¿Cuál es el nivel de educación del
cliente? Seleccione tantos como sea ne-
cesario y presione F4 para continuar.
Primaria
Secundaria
Bachillerato
Ocupacional
Técnico
Universitaria
Maestría
Ph. D.

En este caso se le menciona al usuario que puede


seleccionar más de una opción y lo que debe hacer
para continuar.

Fin de sesión
Cuando se visualice la pantalla final se presente
al usuario, se debería explicar que opciones están
disponibles y como seleccionarlas. Las opciones tí-
picas son:

• SALIR Parar/Salir del sistema.

• COMO Obtener la línea de razonamiento que lle-


vo a la conclusión.

• QUE SI Ver que efectos en la presente reco-


mendación tendría el cambiar las respuestas
previas.

• GUARDAR Almacenar la sesión actual

• REINICIAR Reiniciar la sesión

Considere por ejemplo lo siguiente

SISTEMA: Para salir del sistema presione F10. Si


se desea reiniciar la sesión presione
F3.
Sistemas basado en reglas con encadenamiento hacia atrás 29
Mg. Abraham Gamarra Moreno
Con instrucciones simples como estas el usuario, el
usuario sabe que puede hacerse, y evita la frustra-
ción obvia que resultaría cuando las opciones de
control no se presentan.

Visualización de Conclusiones
La visualización de las conclusiones presenta al
usuario los hallazgos del sistema. Para nuestro
ejemplo, presentaremos el portafolio recomendado
para el cliente. En muchas aplicaciones esta visua-
lización limitada será suficiente. Pero en otros
casos se pude necesitar presentar un reporte más
detallado acerca del razonamiento detrás de la re-
comendación.

Una característica de los sistemas expertos es la


habilidad para explicar COMO (WHY) se derivaron las
recomendaciones. La mayoría de los shells ofrecen
respuestas que muestras detalladamente todos los
pasos seguidos por el sistema. En algunas aplica-
ciones estos detalles son necesarios para que los
usuarios acepten las recomendaciones finales. Sin
embargo, en otros casos, los usuarios estarán sa-
tisfechos con una visualización de alto nivel de
los hallazgos importantes que llevaron a la reco-
mendación final.

Para comodidad del usuario que sólo requiere una


visualización de alto nivel del razonamiento, el
sistema podría mostrar una sugerencia que permita
esta visualización de los hallazgos importantes.
Estos hallazgos importantes son asuntos importantes
que considera el sistema para determinar la reco-
mendación final.
Sistemas basado en reglas con encadenamiento hacia atrás 30
Para nuestro sistema podríamos mostrar

DISPLAY RECOMENDACIÓN FINAL

Recomendaría que el cliente invierta el dinero en


[Sugerencia del Portafolio]. Recomiendo está inver-
sión porque encontré que el estado personal del
cliente sugiere [Sugerencia al estado personal del
cliente] y el estado financiero del cliente sugiere
[Sugerencia al estado financiero del cliente].

Aquí el usuario recibe una recomendación final y


razones de alto nivel de porque la recomendación se
hizo.

9. TAREA 7: EVALUACIÓN DEL SISTEMA


En este punto nuestro sistema prototipo esta completo.
Todas las reglas se codifican en el sistema y se asume
que la interfaz se ha diseñado de acuerdo a las recomen-
daciones dadas en las secciones previas. También se asume
que el sistema ha pasado satisfactoriamente las pruebas
desarrolladas con cada expansión. El paso que sigue es
evaluar el sistema usado en el caso de pruebas reales.

Este proceso comienza preguntándole al experto por uno de


los casos pasados. Se asume que el caso involucra un
cliente de 30 años de edad, ha estado en una compañía 5
años con una tasa de despido temporal pequeña, tiene dos
hijos, y quiere invertir $50,000. El cliente también tie-
ne activos totales de $100,00 y pasivos totales de
$20,000. Para este caso el experto recomendó el Portafo-
lio 2: 60% en acciones, 30% en bonos y 10% en ahorros.

A continuación se muestran las reglas en nuestro sistema:

INIT FACTOR DE SEGURIDAD = 2


INIT VEJEZ = 40
INIT SERVICIO_LARGO = 10
INIT SERVICIO_CORTO = 3
Sistemas basado en reglas con encadenamiento hacia atrás 31
INIT Recomendación se desconoce

La sugerencia ES
Visualizar por defecto

RULE Visualizar por defecto


IF Recomendación se desconoce
THEN Visualizar por defecto
AND DISPLAY TEXTO POR DEFECTO

¡------------------------------------------
¡Reglas de Sugerencia de Inversión
¡------------------------------------------

RULE Sugerencia de 100% de inversión en el mercado de


dinero – poco dinero
IF Cantidad de inversión del cliente < 1000
THEN La sugerencia ES invertir el 100% en ahorros
AND DISPLAY RECOMENDACIÓN FINAL

RULE Sugerencia de 100% de inversión en el mercado


de dinero
IF Cantidad de inversión del cliente >= 1000
AND El estado personal del cliente sugiere \
una posición conservadora
AND El estado financiero del cliente sugiere \
una posición conservadora
THEN La sugerencia ES invertir el 100% en ahorros
AND DISPLAY RECOMENDACIÓN FINAL

RULE Sugerencia de invertir el 60% en acciones, 30% en


bonos y el 10% en el mercado de dinero
IF Cantidad de inversión del cliente >= 1000
AND El estado personal del cliente sugiere \
una posición conservadora
AND El estado financiero del cliente sugiere \
una posición agresiva
THEN La sugerencia ES invertir el 60% en acciones, 30%
en bonos y el 10% en ahorros
AND DISPLAY RECOMENDACIÓN FINAL

RULE Sugerencia de invertir el 20% en acciones, 40% en


bonos y el 40% en el mercado de dinero
IF Cantidad de inversión del cliente >= 1000
AND El estado personal del cliente sugiere \ una
posición agresiva
AND El estado financiero del cliente sugiere \
una posición conservadora
THEN La sugerencia ES invertir el 20% en acciones,
Sistemas basado en reglas con encadenamiento hacia atrás 32
40% en bonos y el 40% en ahorros
AND DISPLAY RECOMENDACIÓN FINAL

RULE Sugerencia de invertir el 100% en acciones


IF Cantidad de inversión del cliente >= 1000
AND El estado personal del cliente sugiere \
una posición agresiva
AND El estado financiero del cliente sugiere \
una posición agresiva
THEN La sugerencia ES invertir el 100% en acciones
AND DISPLAY RECOMENDACIÓN FINAL

¡------------------------------------------
¡Determinar el estado personal del cliente
¡------------------------------------------

RULE Inversiones conservadoras personales por la vejez


o trabajo no estable
IF El cliente ES viejo
OR El trabajo del cliente ES no estable
THEN El estado personal del cliente sugiere \
una posición conservadora
AND DISPLAY LA VALORACIÓN DEL ESTADO PERSONAL DEL
CLIENTE

RULE Inversiones conservadoras personales por ser joven


y tener niños
IF El cliente ES joven
AND El trabajo del cliente ES estable
AND El cliente tiene \ niños
THEN El estado personal del cliente sugiere \
una posición conservadora
AND DISPLAY LA VALORACIÓN DEL ESTADO PERSONAL DEL
CLIENTE

RULE Inversiones agresivas personales por ser joven y no


tener niños
IF El cliente ES joven
AND El trabajo del cliente ES estable
AND El cliente tiene \ no niños
THEN El estado personal del cliente sugiere \
una posición agresiva
AND DISPLAY LA VALORACIÓN DEL ESTADO PERSONAL DEL
CLIENTE

¡------------------------------------------
¡Determinar el estado financiero del cliente
¡------------------------------------------

Sistemas basado en reglas con encadenamiento hacia atrás 33


RULE Inversión financiera conservadora porque los
pasivos exceden a los activos
IF Total de activos < Total de pasivos
THEN El estado financiero del cliente sugiere \
una posición conservadora
AND DISPLAY LA VALORACIÓN DEL ESTADO PERSONAL DEL
CLIENTE

RULE Inversión financiera conservadora porque no existen


suficientes activos para los niños
IF Total de activos > Total de pasivos
AND Total de activos < FACTOR DE SEGURIDAD *
Total de pasivos
AND El cliente tiene \ niños
THEN El estado financiero del cliente sugiere \
una posición conservadora
AND DISPLAY LA VALORACIÓN DEL ESTADO PERSONAL DEL
CLIENTE

RULE Inversión financiera agresiva porque existen


suficientes activos y no se tiene niños
IF Total de activos > Total de pasivos
AND Total de activos < FACTOR DE SEGURIDAD *
Total de pasivos
AND El cliente tiene \ no niños
THEN El estado financiero del cliente sugiere \
una posición agresiva
AND DISPLAY LA VALORACIÓN DEL ESTADO PERSONAL DEL
CLIENTE

RULE Inversión financiera agresiva porque existen


suficientes activos
IF Total de activos > FACTOR DE SEGURIDAD *
Total de pasivos
THEN El estado financiero del cliente sugiere \
una posición agresiva
AND DISPLAY LA VALORACIÓN DEL ESTADO PERSONAL DEL
CLIENTE

¡------------------------------------------
¡Determinar la edad del cliente
¡------------------------------------------

RULE El cliente ES joven


IF Edad del cliente < VEJEZ
THEN El cliente ES joven

RULE El cliente ES viejo


IF Edad del cliente >= VEJEZ
Sistemas basado en reglas con encadenamiento hacia atrás 34
THEN El cliente ES viejo

¡------------------------------------------
¡Determinar la estabilidad del trabajo del cliente
¡------------------------------------------

RULE El trabajo ES estable a causa de los varios años


de servicio del cliente
IF Años de servicio del cliente >= SERVICIO_LARGO
THEN El trabajo del cliente ES estable

RULE El trabajo ES estable a causa de los años de


servicio moderado y baja tasa de despido temporal
en la organización
IF Años de servicio del cliente >= SERVICIO_CORTO
AND Años de servicio del cliente < SERVICIO_LARGO
AND La tasa de despidos temporal ES baja
THEN El trabajo del cliente ES estable

RULE El trabajo ES no estable a causa de los años de


servicio moderado y alta tasa de despido temporal
en la organización
IF Años de servicio del cliente >= SERVICIO_CORTO
AND Años de servicio del cliente < SERVICIO_LARGO
AND La tasa de despidos temporal ES alta
THEN El trabajo del cliente ES no estable

RULE El trabajo ES no estable


IF Años de servicio del cliente < SERVICIO_CORTO
THEN El trabajo del cliente ES no estable

El sistema también incluye texto (que no se muestra) para


mostrar la introducción, preguntas, visualizaciones in-
termedias, y la visualización de conclusiones. La si-
guiente interacción entre el sistema experto y el usuario
ilustra la operación del sistema:

PASO 1
SISTEMA: Bienvenido al SISTEMA EXPERTO DE ASESORÍA DE
INVERSIÓN

Intentaré determinar el portafolio de inver-


sión para su cliente. Le haré preguntas tanto
personales como financieras acerca del clien-

Sistemas basado en reglas con encadenamiento hacia atrás 35


te. A partir de esta información deberé ser
capaz de determinar una inversión ya sea con-
servadora o agresiva.

Por favor presione ENTRAR para comenzar la se-


sión

USUARIO: ENTRAR.

PASO 2
SISTEMA: ¿Cuánto dinero en dólares el cliente quiere
invertir? Por favor ingrese la cantidad en dó-
lares sin comas, por ejemplo, 10000.

USUARIO: ENTRAR.

PASO 3
SISTEMA: ¿Cuál es la edad del cliente?

USUARIO: 30

PASO 4
SISTEMA: ¿Cuántos años ha estado el cliente con la com-
pañía actual?

USUARIO: 5

PASO 5
SISTEMA: La tasa de despidos temporales en la organiza-
ción es:

Baja

Alta

USUARIO: Baja

COMENTARIO: El usuario puede tener problemas al responder


esta pregunta. Este es un problema típico encontrado
cuando se esta ejecutando el sistema las primeras veces

Sistemas basado en reglas con encadenamiento hacia atrás 36


Mg. Abraham Gamarra Moreno
en el proyecto. Sería necesario preguntar al experto cómo
determina si los despidos temporales son “bajos” o “al-
tos”, y añadir las reglas apropiadas a nuestro sistema

PASO 6
SISTEMA: El cliente:

tiene niños

no tiene niños

USUARIO: tiene niños

PASO 7
SISTEMA: Después de considerar los aspectos personales
del cliente, le sugiero una posición conserva-
dora. Ahora continuaré con el análisis de los
aspectos financieros.

Por favor presione ENTRAR para continuar la


sesión

USUARIO: ENTRAR

PASO 8
SISTEMA: Por favor dame la cantidad en dólares total de
los activos que el cliente posee. Incluyendo
la tenencia de cuentas bancarias, acciones,
bonos, inmuebles, etc.

Por favor ingrese la cantidad en dólares sin


comas, por ejemplo, 150000.

USUARIO: 100000

PASO 9
SISTEMA: Por favor dame la cantidad en dólares total de
los pasivos que el cliente tiene. Incluyendo
elementos como préstamos, hipotecas, etc.
Sistemas basado en reglas con encadenamiento hacia atrás 37
Por favor ingrese la cantidad en dólares sin
comas, por ejemplo, 150000.

USUARIO: 20000

PASO 10
SISTEMA: Después de considerar los aspectos financieros
del cliente, le sugiero una posición agresiva.
Ahora continuaré con el análisis de los aspec-
tos financieros.

Por favor presione ENTRAR para continuar la


sesión.

USUARIO: ENTRAR

PASO 11
SISTEMA: Recomendaría que el cliente invierta el dinero
en 60% de acciones, 30% en bonos y 10% en aho-
rros.

Las razones principales por la que recomiendo


esta inversión son porque se ha encontrado que
el estado personal del cliente sugiere una po-
sición conservadora y el estado financiero su-
giere una posición agresiva.

Para salir del sistema presione F10. Si gusta


reiniciar la sesión presione F3.

9.1. REVISIÓN DE LA SESIÓN


Lo primero que se debería observar que el sistema
de la misma recomendación que la hecha por el ex-
perto. Obtener un acuerdo entre los hallazgos del
sistema y lo que dice el experto es uno de los
asuntos críticos cuando se evalúa un sistema exper-

Sistemas basado en reglas con encadenamiento hacia atrás 38


to. Para un estudio de evaluación real se probarán
varios casos.

Otro aspecto que se debe notar en esta evaluación


es que el sistema resultó cómodo para el usuario a
través de toda la sesión.

9.2. APECTOS FUTUROS


Luego de tener este pequeño prototipo, se deberían
extender sus capacidades. Por ejemplo se puede co-
dificar el conocimiento en portafolios adicionales.
O, se podría expandir el sistema para recomendar
medios de inversión específica dentro de cada una
de las categorías de inversión general. La facili-
dad con la que están expansiones se pueda realizar
dependerá mucho de la flexibilidad del diseño del
prototipo.

Recomendar Portafolios Adicionales


Si se quiere considerar portafolios adicionales se
requiere escribir reglas meta adicionales. No se
necesitarán metas adicionales ya que el sistema
ahora tiene una sentencia meta que es variable. Ca-
da nueva regla meta que se ingrese debe recomendar
uno de los nuevos portafolios.

Las reglas meta actuales, consideran al recomendar


un portafolio dos aspectos principales, el estado
personal y financiero del cliente. Las reglas metas
usan estos dos aspectos con los valores de “conser-
vadora” y “agresiva”. Para ser capaz de distinguir
entre portafolios adicionales, se deberá expandir
los valores introduciendo modificadores. Por ejem-

Sistemas basado en reglas con encadenamiento hacia atrás 39


plo, se pueden usar valores como: conservadora li-
geramente, conservadora moderadamente, y muy con-
servadora. Si se toma en cuenta estos valores, será
necesario desarrollar un conjunto de reglas más
profundas que podrían inferir estos nuevos valores
modificados.

Otro enfoque que se podría tomar al modificar las


reglas meta existentes para incluir los portafolios
adicionales sería el de añadir premisas adiciona-
les. Por ejemplo, podríamos considerar otros asun-
tos tales como los objetivos de inversión del
cliente, periodo de inversión, o aún condiciones
financieras mundiales. Para este enfoque será nece-
sario desarrollar también un conjunto de reglas más
profundas que podrían inferir estos nuevos valores
modificados.

En general, cuando se expanda el sistema para con-


siderar metas adicionales (pero similares), se debe
observar primero por las formas en la que se puede
modificar las reglas meta presentes. Las modifica-
ciones usualmente tomarán la forma de valores adi-
cionales para los aspectos presentes, y/o la adi-
ción nuevos aspectos. Estos tipos de modificaciones
se ilustran en la siguiente regla:

IF Estado personal del cliente valor nuevo


AND Estado personal del cliente valor nuevo
AND Nuevo aspecto
THEN La sugerencia de portafolio ES
nuevo portafolio

Recomendación de medios de inversión


Se puede expandir el sistema para escoger el medio
de inversión con cada categoría de inversión gene-

Sistemas basado en reglas con encadenamiento hacia atrás 40


ral modificando primero la agenda meta de tal forma
que esta tarea siga naturalmente la selección del
portafolio. Esta modificación se ilustra en la si-
guiente agenda meta, con la adición de la metas
multivalor “Sugerencia de Medio”:

La sugerencia de Portafolio ES QUE


1.1. La sugerencia del medio ES QUE
Visualizar por defecto

Las reglas meta escritas para esta nueva meta


(ejemplo, 1.1.) necesitarán información acerca de
la recomendación de portafolio. Para ello, primero
se debe modificar las reglas del sistema y capturar
las categorías de inversión general en una senten-
cia simbólica multivalor y el porcentaje a ser in-
vertido como se observa en la modificación de la
REGLA1:

IF Cantidad de inversión del cliente < 1000


THEN La sugerencia de portafolio ES invertir 100%
en ahorros
AND Categoría de Inversión ES ahorros
AND Porcentaje_de_ahorros = 100

Se puede entonces escribir las reglas en la si-


guiente forma general para determinar los medios de
inversión específicos.

IF Categoría de Inversión ES ...


AND ....
....
THEN Sugerencia del medio ES ....

Las premisas dentro de estas reglas podría contener


asuntos que pueden distinguir entre los varios me-
dios dentro de cada categoría. La cantidad actual a
invertirse en algún medio sería decido usando in-
formación de la cantidad del total de la inversión

Sistemas basado en reglas con encadenamiento hacia atrás 41


y el porcentaje de la inversión para la categoría
de inversión general, tal como “Porcentaje de aho-
rros”.

10. RESUMEN DEL DISEÑO DE UN SISTEMA CON


ENCADENAMIENTO HACIA ATRÁS
El proceso de diseño de un Sistema con Encadenamiento
hacia atrás es altamente cíclico, donde el conocimiento
se recolecta del experto, es codificado, es probado, lue-
go refinado a través interacciones adicionales con el ex-
perto. Existen algunos elementos claves para este proceso
de diseño:

• El diseño de un sistema experto con encadena-


miento hacia atrás es un proceso altamente
iterativo.

• El sistema debería probarse inmediatamente


después de la introducción de nuevas reglas.

• El sistema debería expandirse en un aspecto a


la vez.

• Una tabla de decisión puede emplearse para ad-


quirir fácilmente el conocimiento para la to-
ma de decisiones del experto.

• El uso de la sentencia ELSE puede ocasionar


problemas de mantenimiento del sistema.

• Un árbol de inferencia brinda un registro grá-


fico de la reglas recolectadas.

Sistemas basado en reglas con encadenamiento hacia atrás 42


• Los sistemas con encadenamiento hacia atrás
pueden estar diseñados para desarrollar bús-
queda exhaustiva o no exhaustiva.

• Para las reglas que usan números para las ope-


raciones de relación, mantengan los números en
la forma de variable que se le asignan en una
sección de inicialización del programa.

• Es importante que una interfaz se diseñe para


cumplir con las necesidades del usuario.

11. IMPLEMENTACIÓN DEL SISTEMA EXPERTO PARA


ASESORÍA DE INVERSIÓN

11.1. EJECUCIÓN DEL SISTEMA EXPERTO IMPLEMENTADO


EN EXSYS PRO

SISTEMAS INTELIGENTES

Sistemas basado en reglas con encadenamiento hacia atrás 43

También podría gustarte