Jose Domingo Carrillo Verdun

download Jose Domingo Carrillo Verdun

of 301

Transcript of Jose Domingo Carrillo Verdun

-I-

TESIS DOCTORAL

METODOLOGA PARA EL DESARROLLO DE SISTEMAS EXPERTOS

por

Jos Domingo CARRILLO VERDUN

Ingeniero de Montes por la E.T.S. de Ingenieros de Montes de Madrid.

Presentado en la FACULTAD DE INFORMTICA de la UNIVERSIDAD POLITCNICA DE MADRID

para la obtencin del Grado de Doctor en In-forrnt i ca

MADRID, MAYO DE 1987

M0OM3G32 J?,1Z

R3Z,:

-I I-

TESIS DOCTORAL

METODOLOGA PARA EL DESARROLLO DE SISTEMAS EXPERTOS.

por: D. Jos Domingo CARRILLO VERDUN

Director de Tesis: D. Juan PAZOS SIERRA

TRIBUNAL CALIFICADOR

Presidente: D. Antonio INSUA NEGRAO Secretario: D. Rafael GONZALO MOLINA Vocales: D. Manuel DIEZ Y DIEZ DE ULZURRUN D. Luis LAITA D. Sixto ROS INSUA

Madrid, Mayo de 1987.

-I II-

METODOLOGIA PARA EL DESARROLLO DE SISTEMAS EXPERTOS

RESUMEN:

Aunque

las primeras bases de la Inteligencia Artificial -fue-

ron puestas por Alan Turig en 1950, los primeros Sistemas Expertos no empezaron comercialmente a explotarse hasta 1984.

A travs de la literatura consultada sobre dichos Sistemas se han observado distintos enfoques en el desarrollo de los mismos, sin que se hubiera seguido una metodologa especifica.

La Metodologa

(IDEAL) desarrollada en esta tesis intenta una

primera aproximacin a la sistematizacin del desarrollo de Sistemas Expertos, actividades estructurndolo en una serie de fases, etapas y la labor del Ingeniero del

que intentan facilitar

Conocimiento en la construccin del Sistema Experto.

En esta blemas ms

metodologa, se hace especial

referencia a los pro-

importantes que debe resolver el Ingeniero del Cono-

cimiento en cuanto a:

- Seleccin

del dominio de Aplicacin

del Sistema Experto y

del Experto/s en ese dominio.

-IV-

- Su relacin con el Experto/s, y extraccin del Conocimiento del mismo/s, donde tienen especial gicas tales como vistas. importancia tcnicas psicol-

el Anlisis del protocolo o tcnicas de entre-

-

Adquisicin del Conocimiento por

el Ingeniero y seleccin

de la tcnica de representacin adecuada.

- Seleccin llo.

de la herramienta ms

adecuada para el desarro-

- Construccin de prototipos incremntales.

Se establecen Metodologa

unas pautas para la posible aplicacin de esta Financiero, sealndose las principales

al Sector

posibles reas

de aplicacin, as como la problemtica que para

este sector tienen los Sistemas Expertos.

_v_

METHODOLOGIE FOR EXPERTS SYSTEMS DEVELOPMENT

SUMMARY:

Although

the -First basis o f the Arti-Ficial Intelligence were in 1950, the -first Expert Systems have not

put by Alan Turing

being commercially operated till 1984.

Throughout

the literature we have

cnsul t.ed ways in

about o f these -

Systems, we have observed di-f-ferents

their development,

without having -followed a speci-fic method.

The (IDEAL) approach Systems

Method developped

in this the

thesis,

try

a -first o f Expert and

to the systemat i zat i on o f by structing it in

development phases,

several

periods

activities which intends Engineer

to make easy the work of the Knowledge

in the construction o f the Expert System. -

In

this method,

we make

a special

re-ference

to

the more

important problems that the Knowledge Engineer should resolve in regard to:

- Selection

o f the domain o f -

the

Expert System Application

and o f the Expert/s in that field. -

-VI-

-

His

relationship

with

the

Expert/s

to

elicite

their

knowledge, where psychologica1

technics have special

importance

as also the Anlisis of the protocol or interview technics.

.- Knowledge

adquisition by the engineer

and

selection

o f the -

adecate representation technique.

- Selection o f the more appropiate tool -for it development. -

- Increasing prototypes construction.

We have application the

stablished

some

guides

in

order

to

a

possible

o f this Method to possible reas

the Finantial Sector, indicating of application, as also the

principal

problematic that in this sector the Expert Systems may have.

0

-VII-

INDICE GENERAL

Pag.

CAPITULO I 1.1 1.2

INTRODUCCIN Trascendencia de los Sistemas Expertos .. Aplicacin al Sector Financiero

1 1 6

CAPITULO 11 II. 1 11.2 11.3

ESTADO DE LA TECNOLOGA Resea histrica Arquitectura de los Sistemas Expertos ... Formal izacin y representacin del conocimiento

14 14 22

31 31 32 33 34 34 44 48 49 52

II.3.1 II.3. 1.1 11.3.1.2 11.3.1.3 11.3.1.4 II. 3.2 II. 4 II. 4.1 II. 4.2 II. 4.3

Formalismos del conocimiento Formalismos heursticos Formalismos epistemolgicos Formalismos conceptuales Formalismos computacionales Bases de conocimiento Motor de Inferencia Estrategia de control Modos de razonamiento Ciclo de base de un Sistema de produccin en encadenamiento hacia adelante

56

II. 4.4

Ciclo de base de un Sistema de produccin dirigido por la meta 63

-VIII-

psg.

II. 4.5 II- 4.6

Tcnicas de equiparacin Consideraciones sobre la resolucin de conflictos

66

72

II. 4.7

Criterios que dirigen la seleccin de un motor de inferencia 73 76 76 82 B5 87 88

II. 5 II. 5.1 II. 5.1.1 II. 5.1.2 II. 5.1.3 II. 5.1.4 II. 5.1.5

"Software" y "Hardware" Lenguajes Generalidades sobre LISP Dialectos del LISP Generalidades sobre PROLOG PLANNER y CONNIVER KRL (Knowledge Representation Language)

89

II. 5.2

Entornos de programacin en Inteligencia Artificial 90

II. 5.3

Inventario de material y soporte de la Inteligencia Artificial 94 97 104 . 106

II. 5.3.1 II. 5.4 II. 5.4.1 II. 5.5

Mquinas LISP La Quinta Generacin La Arquitectura de la Quinta Generacin Modelos de mquinas de inferencia par alela . .

111 112

II. 5.6

Mquinas neuromimticas

-IX-

pag.

CAPITULO III PROBLEMTICA ACTUAL EN LA CONSTRUCCIN DE LOS SISTEMAS EXPERTOS III. 1 III- 2 III. 3 General idades Seleccin de la. aplicacin Empleo de nuevas tcnicas no utilizadas por Proceso de Datos, para la resolucin de problemas y representacin del conoc i miento III. 4 Seleccin de "Hardware" y "So-Ftware" a utilizar y evaluacin del mismo III. 5 Problemtica 122 126 117 114 114 114

CAPITULO IV

METODOLOGA PARA LA CONSTRUCCIN DE SISTEMAS EXPERTOS 127 127

IV. 1 IV. 2

Introduccin a la metodologa Fase I: Determinacin de necesidades y valoracin del proyecto

130 130

IV. 2.1 IV. 2.2

Seleccin de la aplicacin Determinacin de necesidades y plan de evaluacin del Sistema Experto

142 142

IV. 2.2.1 IV. 2.2.2

Mental izacin de los usuarios Formacin de los Ingeniero del Conocimiento

144 150

IV. 2.2.3 IV. 2.2.4

Ubicacin

idnea del Sistema Experto ....

Determinacin de recursos humanos y plazos de desarrollo 152

-X-

pag.

Plan de evaluacin Balance econmico del Sistema Experto ... Aceptacin por la Direccin y usuarios del Sistema Experto Aceptacin por parte de los usuarios .... Aceptacin por los responsables Fase II: Diseo de la Ingeniera del Conocimiento y Construccin riel Prototipo Adquisicin del conocimiento Metodologas de adquisicin del conocimiento Tipos de conocimiento Tcnicas psicolgicas utilizadas Metodologas de trabajo del del Conocimiento Representacin del Conocimiento ......... Desarrollo de un prototipo Especificacin de los criterios de rendimiento del prototipo Seleccin de la herramienta para construir el prototipo Desarrollo de la versin inicial del prototipo Verificacin del prototipo con casos de Ingeniero

154 158

161 162 163

164 164

167 169 170

178 182 186

189

190

190

-XI-

pag.

IV. 3.4 IV. 4

Uso y mejora del prototipo Fase III. Construccin de la versin en produccin

192

195

IV. 4.1

Desarrollo del diseo detallado del Sistema Experto -final 195

IV. 4.2

Implantacin del ncleo del Sistema Experto 196 ... 197 198

IV. 4.3 IV. 4.4 IV. 4.5

Expansin de la base de conocimiento

Adecuacin de la inter-fase de usuario ... Monitorizacin de las prestaciones y evaluacin del rendimiento del sistema desarrollado

198 199

IV. 4.6 IV. 5

Mantenimiento de la base de conocimiento. Fase IV: Comprobacin del Sistema e Integracin del mismo en Produccin

200 200

IV. 5.1 IV. 5.1.1

Integracin a la escala -final Organizacin de la transferencia de tecnologa

201

IV. 5.1.2

Establecimiento de inter-fases del Sistema Experto con distintos sistemas "so-ftware" y "hardware" u otros 202 203

IV. 5.2 IV. 5.3

Uso regular y evaluacin del Sistema .... Mantenimiento y mejora del Sistemat

Experto

203

-XII-

pag.

CAPITULO V

RESULTADOS, CONCLUSIONES Y FUTURAS LINEAS DE INVESTIGACIN 206 206 209 211

V. 1 V. 2 V. 3

Introduccin Conclusiones Futuras lneas de investigacin

CAPITULO VI

REFERENCIAS BIBLIOGRFICAS

214

ANEXOS 1 APLICACIN DE LA METODOLOGA A UN CASO PRACTICO EN EL SECTOR FINANCIERO II BIBLIOGRAFA GENERAL

219

219 276

CAPITULO I. INTRODUCCIN.

I.1. Trascendencia de los Sistemas Expertos.

La Inteligencia Artificial es una de las reas de la Tecnologa de la Informacin que ms expectativas est despertando en

el momento actual, quizs esperando unas realidades a corto plazo que difcilmente podrn verse realizadas, si antes no se consiguen mejores "herramientas", ms adecuados mtodos y se esta-

blecen ms slidos principios tericos que los actuales.

Sin embargo, una de mayor inters en el rea,

las razones de que se haya despertado el es debido a la creacin de los llamapor las aplicaciones prc-

dos Sistemas Expertos, especialmente

ticas que estn producindose en todos los sectores.

Estos

Sistemas cuentan con el

apoyo

del almacenamiento del y que, mediante

conocimiento relativo una serie

a un campo muy

concreto

de inferencias, producen la

respuesta que un experto

en la materia dara.

Esta tecnologa ha demostrado sus posibilidades en reas como el diagnstico mdicos a elegir diagnstico y tratamiento de infecciones la terapia adecuada para ayudar a los

(MYCIN), o que combinan el (HELP), o la explora-

y facturacin para hospitales

" ?

cin

de minerales

(PROSPECTOR),

o

el

diseo

de ordenadores

(XCOIM), o el

diagnstico de -fallos de

maquinaria, etc. En cam-

bio, no han visto

su extensin en el grado que sera previsible

a las reas econmicas, con lo cual se conseguira una mayor generalizacin de los mismos.

Una de las razones importantes es que, detrs de todo Sistema Experto hay un experto de carne y hueso. Los llamados Ingenieros

del Conocimiento que crean estos Sistemas, deben trabajar en estrecho contacto con dichos expertos para -formular las reglas que componen los programas del Sistema Experto. Pero, lo cierto y

verdad es que pocos

expertos se sienten atrados por la idea de

dedicarse a hacer ms inteligente a una mquina. Adems escasean los ingenieros especializados en estas cuestiones. Si a esta necesidad se nejen los une la di-ficultad de encontrar programadores que malenguajes necesarios, as como la necesidad de un

"hardware" especializado, se comprender la lentitud de este desarrollo.

Sin embargo,

esta situacin

est cambiando

rpidamente. La con conoci-

tendencia existente de crear

sistemas sofisticados

miento muy amplio y grandes ambiciones ha dejado paso a otra que es la de utilizar los desarrollos y tecnologa existentes en

aplicaciones

ms sencillas en aquellos puntos donde sera nece-

sario utilizar un experto, pero en los que el costo del mismo, o su inexistencia, o el presencia -fsica. riesgo de su uso, hacen muy difcil su

3 En esta linea, se han multiplicado el nmero de empresas que

se dedican a este sector, existiendo en EE.UU. ms de 200 empresas especializadas piezan a proli-ferar en la creacin de dichos sistemas, as, em-

en el mercado programas que reciben el nom-

bre de expertos, an cuando muchos no merezcan tal denominacin. El verdadero experto, puede Sistema Experto,se apoya en el conocimiento de un

modificar el programa en -funcin de la experien-

cia y dar al usuario razones de las respuestas que proporciona.

Mientras que el desarrollo se ha centrado en aplicaciones muy concretas, en las que los propios expertos han sido parte inte-

resada en el desarrollo del Sistema, la colaboracin ha sido e s pontnea y sin reservas.

En el momento

en que estos desarrollos se han generalizado y

su aplicacin empieza a ser en diversos campos de la Empresa, ya esta colaboracin puede no ser tan espontnea y clara. De ah la necesidad de dotar pues, a los responsables de estos desarrollos de unas metodologas, que les permitan convencer, dialogar y extraer el conocimiento de estos expertos, penetrando en su psicologa y, detectando los puntos clave de su conocimiento y sus

reglas particulares de deduccin.

Por otro ga

lado, la tendencia emergente de aplicar la tecnoloaplicaciones sencillas donde ventajosamente

existente en

sustituyen a

las tcnicas de Proceso

de Datos, hacen necesario

establecer unos cimiento a reas

criterios que ayuden a estos Expertos del ConoEmpresa, cules seran las

determinar dentro de la

de mayor ap1icabi1idad de

estos

Sistemas, y desarrollar

4

una planificacin

de desarrollo de los

mismos que les permitan

justificar econmicamente las inversiones en "hardware" y "software" necesarios.

Una vez determinada la aplicacin a desarrollar y obtenido el conocimiento de tacin del los expertos, surge el problema de la represen-

mismo en la base de conocimientos. Existen distintos del tipo de conocimiento

mtodos de representacin, dependiendo

y de los procesos de decisin a realizar sobre dicha base.

La

sistematizacin de criterios que

ayuden al Ingeniero del idnea del mismo es

Conocimiento a seleccionar

la representacin

otro de los objetivos que se plantea esta metodologa.

Las tcnicas de construccin de prototipos son de gran utilidad en la construccin de Sistemas Expertos. A diferencia de los Sistemas de Procesos de Datos, un prototipo puede ser utilizado sin que est terminado el Sistema. Mediante un

en produccin,

proceso continuo de refino de este prototipo se llegar a la solucin deseada.

La la

seleccin del "software", y "hardware" apropiado, as como

comprobacin del funcionamiento del Sistema y su integracin

en produccin completan una serie de actividades que hemos agrupado en este trabajo en cuatro fases que configuran el manual de procedimientos o mtodos para la construccin de un Sistema Ex-

perto, y sus correspondiente etapas de desarrollo, a saber:

FASE I. Determinacin de necesidades, valoracin del proyecto y capacidades a obtener.

- Seleccin de la aplicacin, en particular la primera - Determinacin de necesidades y valoracin de las mismas. - Aceptacin por la Direccin.

FASE II. Diseo de la Ingeniera del Conocimiento y construccin Prototipo.

- Adquisicin del conocimiento. - Representacin del conocimiento. - Desarrollo de un prototipo. - Uso y mejora del prototipo.

FASE III. Construccin de la versin en Produccin.

- Desarrollo del diseo detallado final. - Implantacin del ncleo del Sistema. - Expansin de la base de conocimiento. - Adecuacin de la inter-fase del usuario. - Monitorizacion de las prestaciones y evaluacin del Sistema. - Mantenimiento de la Base del Conocimiento.

6 FASE IV. Comprobacin del Sistema e integracin del mismo en

Produccin:

- Integracin a mayor escala. - Uso regular y evaluacin del Sistema Experto - Mantenimiento y mejora del mismo.

En la

bibliografa consultada no consta

que

este tema haya

sido tratado de mas de

una manera sistemtica. Cuando se habla de -for-

construir Sistemas Expertos, stas se encuentran muy li-

gadas a aplicaciones especficas y hay que deducir los pasos seguidos a travs del desarrollo que se expone del Sistema Experno existe una metodologa de diseo de los

to. Es por ello, que

Sistemas Expertos, por lo que esta tesis propone una Metodologa para su desarrollo y aplicacin en la construccin de un Sistema Experto.

I. 2. Aplicacin al Sector Financiero.

Se ha seleccionado una aplicacin de esta Metodologa al Sector Financiero por encontrarse esta tecnologa en -fase de introduccin en el mismo.

Este sector, intensivo en la utilizacin del recurso Informacin y, por consiguiente, uno de los motores de los desarrollos

de las Tecnologas de la Informacin, est iniciando el desarrollo de los primeros Sistemas Expertos.

Estos desarrollos tienen una

caracterstica especial con re-

7

lacin a los tratgico que un tema

tradicionales informticos, y ste es el valor espuede poseer el conocimiento o la experiencia en

dado. Esto hace que

determinadas aplicaciones sean hoy

mantenidas en secreto y no se posea informacin sobre ellas.

De una

manera general, se puede

sealar

la importancia que

estos Sistemas

Basados en el Conocimiento pueden tener para las

sucursales bancarias, independientemente de las aplicaciones especficas que puedan desarrollarse.

En estas sucursales, que estn en contacto livalencia, y

en las que el

personal

es escaso, los

con los clientes deben tener una gran pode crdito, inversiones u

atender, operaciones

operaciones administrativas de lo ms diverso.

Estos generalistas pueden sentir en muchos casos la necesidad de tener cerca un especialista, que se encuentra normalmente en

los Departamentos Centrales. El objetivo que cubrirn los Sistemas {Expertos, ser el poner a disposicin de esas sucursales

alejadas, el conocimiento mienta informtica.

de un Experto a

travs de una herra-

Tanto

las operaciones de concesin

de prstamos y crditos,

como las propuestas de inversin, son operaciones que se resuelven aplicando reglas conceptuales micos. ms que tratamientos algort-

El Sistema Experto es

una herramienta perfectamente adaptada

8

para tratar este aplicacin

tipo de problemas que

se

caracterizan por la y formalizados en una

de unos conceptos, expresados

representacin del conocimiento por un experto, que pretende estar en permanente evolucin y que son fcilmente actual izables.

Un Experto Financiero

es aquel que reflexiona y aplica a sus

conocimientos una lgica de razonamiento, a fin de establecer su diagnstico, pero le informa, calcula es tambin quien conoce a su cliente, quien

y es capaz de desarrollar una propuesta fi-

nal. La herramienta informtica debe, pues, reproducir estas diferentes facetas del especialista para ser eficaz.

Las

posibilidades de aplicaciones que se presentan bajo esta

ptica son enormes. Entre las que cabe sealar las siguientes:

a)

Anlisis de Inversiones en distintos aspectos, desde pro-

porcionar informacin a los clientes sobre las distintas posibilidades que se le presentan, hasta la gestin propia de la Tesorera de la Entidad Financiera, tanto en cuanto a sus propias

inversiones, como a los requerimientos de fondos.

b) El C o n t r o 1

d e ...Res g o es otra p o s i b l e rea de u t i l i z a c i n ,

en las que el

Sistema Experto ayuda a analizar el riesgo, tanto jurdicas, permitiendo un tratamiento

de personas fsicas, como

ms uniforme, as como reducir el nivel de riesgo asumido por la Entidad Financiera.

La aplicacin de Sistemas Expertos a este contexto puede ver-

9 se como un problema de clasificacin de clientes en diversas categoras, de acuerdo uno de estos. Como de evaluacin de en con el tipo de riesgo que representa cada

indica Juan Icasa (ICA86) ya sea el problema solicitudes de crdito o de medicin de riesgo

carteras existentes, el concepto de clasificacin en catego-

ras de acuerdo con el riesgo es vlido.

El desarrollo

de un Sistema Experto

en

este

rsa requiere

tanto la experiencia de dsticos.

personal cual ificado,como mtodos esta-

El personal cualificado puede, desde opinar acerca de

las caractersticas que pueden ser importantes para el problema, hasta indicar cuales son las reglas de decisin. A su ves, mtodos estadsticos pueden usarse desde como apoyo para evaluar el

Sistema Experto, hasta para formular las reglas de decisin.

La informacin perto se cas de

que se utiliza para

construir el Sistema Ex-

compone tanto de informacin interna, como son polticrdito; externa como informacin econmica, tipo de ine informacin inherente al crdito como es esde pago,

dustria, etc.,

tructura, propsito, variables etc.

financieras, capacidad

A efectos comercial

de medicin del riesgo

podemos dividir la cartera en tres grandes grupos:

de una institucin bancaria

los crditos que han sido recientemente otorgados, prstamos que aparentemente tienen mucho riesgo y fundamentalmente todos los

dems crditos de la cartera comercial.

Si el

proceso de evaluacin de

solicitudes

es correcto, el

10

riesgo incurrido por nuevos nos conocido.

crditos debe ser menor y ms o me-

Similarmente los crditos con conocidos y estn controlados.

alto riesgo,

generalmente son

El tercer grupo de crditos, aquellos que no son considerados muy arriesgados o que han sido otorgados muy recientemente, y son los que se

que normalmente forman el evalan con menos cuidado.

grueso de la carterai

El

tiempo que se requerir

para evaluar cuidadosamente este

tercer grupo, puede ser el que mida los nuevos frutos. Es probable que la mayora de esos crditos sean al menos marginalmente forma que el costo incurrido al examinarlos deta-

rentables de

lladamente puede ser muy alto.

Es aqui donde un Sistema Experto puede ser de gran ayuda para evaluar riesgos y alertar sobre determinados prstamos que puea deteriorarse. Este tipo de Sistemas puede evaluar costo un grupo grande de crditos de la

dan empezar

rpidamente y a bajo

cartera de la Entidad Financiera.

El mtodo

de desarrollo utilizado consiste

en

hacer que un

conjunto de expertos evale una muestra y los clasifique en base a distintas variables, tales como estructura del crdito, cali-

dad del cliente, tipo de industria, anlisis financiero e informacin adicional. Con esta evaluacin, se clasifican los crdi-

11 tos en diversos grupos con riesgo bajo, medio, alto o similares. El paso -final es traducir el ordenamiento de la muestra y las

variables que los expertos indicaron como importantes en un conjunto de reglas que imiten el razonamiento de los expertos.

Para

ello se utiliza la

tcnica

estadstica no paramtrica Mediante esta tcnica se

llamada particin recursiva (FRYDB5). encuentra la

relacin entre las variables

que los expertos de-

clararon como indicadores, de riesgo y los distintos grupos.

El resultado del

anlisis es una serie

de reglas que pueden

representarse mediante un rbol de decisin.

Para encontrar

el modelo ptimo del problema se utiliza slo

una parte de la muestra para elaborar el conjunto de reglas. Las observaciones restantes se utilizan taje para estructurar el porcen-

de crditos que el Sistema Experto clasifica "correctamen-

te" de acuerdo con el criterio re los expertos consultados.

Las ventajas principales de un modelo de este tipo son, entre otras:

- Las variables que estn mal relacionadas con el riesgo son identificadas, permitiendo fijar la atencin en carteras con un nmero importante de crditos con esas carcter sticas.

- La cartera puede segmentarse de acuerdo con el riesgo, permitiendo centrar la atencin en crditos que lo re-

12

quieran.

- El Sistema Experto puede utilizarse como un Sistema de alarma sobre posibles crditos.

- Varias carteras pueden ser comparadas de acuerdo con el r iesgo.

- Los crditos pueden clasificarse de acuerdo al riesgo por personas con poco experiencia en dicha tarea.

c) En el campo

del Atesoramiento ya sea en los aspectos fis-

cal como financiero, pueden tener una amplia utilizacin. El establecimiento de un diagnstico sobre el balance de una empresa

o sugerir acciones a la misma para mejorar su situacin, son algunas de sus posibles aplicaciones.

d)

En el rea de

l^omerc: ioI.Q.tj?rn_cC'nal ,

(REID86) tambin

aparecen posibilidades de aplicacin y, de hecho en la City londinense, se han iniciado los primeros proyectos utilizando los

Sistemas Expertos como

soporte de los "dealers" en las salas de

cambio. Un problema clave es la gran cantidad de informacin que stos reciben y la Sistema Experto dificultad de poder hacer uso de ella. El

la analiza y determina cual debe ser proporcio-

nada con mayor prioridad al "dealer".

Asimismo, tanto el asesoramiento en la previsin de los movimientos del mercado, como el rea de arbitraje son campos donde

.3 1 estn empezando a utilizarse estos Sistemas.

En operaciones tas de

ms sencillas, como son la aceptacin de car-

crdito, conversin de tele:-: o conciliacin de transac-

ciones han demostrado ya su eficacia.

En fin, podran enumerarse infinidad de reas susceptibles de utilizar esta tecnologa y no solamente en produccin, sino lo

que tambin es muy importante, en formacin del personal que los uti1 izar.

14 CAPITULO II. ESTADO DE LA TECNOLOGA

II. 1. Pesen a J L s t rj_ca. t^j

Aunque la idea de construir una mquina pensante o por lo menos un autmata que incorporara capacidades por lo comn asociadas al ser humano, ha existido desde desde la antigedad, las

investigaciones para dotar a

los ordenadores de caractersticas

semejantes a las que presenta la inteligencia humana, se han desarrollado en los ltimos 30 aos.

Como

hitos ms importantes en

este

periodo podemos sealar

(BAR82), los siguientes!

1950: - Alan Turing present un estudio sobre la Inteligencia Artifi-

cial, "Computing Machinery and Intel 1igence". En este documento, propuso su test (Turing test) para determinar cuando una mquina posee inteligencia haba artificial. En un primer documento, Turing

sugerido la posibilidad de

simular el comportamiento del

cerebro humano.

1955; - IPL-II (Information Processing de Language II), primer lenguaje por Alien Newell, J.C. en proceso de

Inteligencia Artificial. Fue creado IPL es un lenguaje

Shaw y Herbert Simn.

basado

listas y puede considerarse como un antecesor del LISP, lenguaje

15

ms usado actualmente en Inteligencia Artifial.

1956: - La Conferencia de Darmouth sobre Inteligencia Artifici al,organizada por John McCarthy, Marvin Minsky, Mathaniel Rochester y

Claude Shannon

con fondos de la Fundacin Rockefeller, reuni a habian trabajado en el campo de la Inteligenadems de los cuatro

profesionales que cia

Artificial. Entre los participantes,

organizadores estaban Arthur Samuel, Trenchard llore, Oliver Selfridge, Alien Newell, Ray Solomonoff y Herbert Simn.

- Logic Theorist discutido

(LT), desarrollado por Newell, Shaw y Simn fue considerado como el primer

en esta conferencia. LT,

programa que utiliz tcnicas de Inteligencia Artificial, emplea la bsqueda heurstica para resolver en el libro "Principia alguno de los problemas de Whitehead y

contenidos Russel1.

Mathematica"

- John McCarthy entonces en el MIT, disea el lenguaje LISP.

1957; - Newell, Shaw y Simn comienzan el desarrollo del GPS (General

Problem Solver). Con este sistema que puede ser considerado como el arquetipo del "paradigma del poder" se pretendi, como su

nombre indica, construir un sistema de propsito general que resolviera cualquier tipo de problema.

16 1959; - Arthur Samuel disea un programa para jugar a las damas, capaz de ganar a los mejores jugadores del momento. Su documento fue

publicado por IBM Journal and Development.

-

Frank Rosenblatt describi su mquina, Perception, para recoen "Proceedings of a Despus Symposium on the Mede un perodo de hoy con las

nocimiento de formas chanization abandono de

of Thought Processes".

las ideas propugnadas por

Rosenblatt,

aparicin de las mquinas

conexion istas, Boltzmann y neuromim-

ticas, dichas ideas vuelven a tener vigencia.

1960: - Inicio de las investigaciones en el MIT, del proyecto de Inteligencia Artificial Minsky. bajo la direccin de John McCarthy y Marvin

1965; - Se publica "Computer and Thought" editado por Edward A. Fei-

genbaum. Este libro,

es una recopilacin de trabajos de los ms

significados representantes del rea.

1964; - Daniel G. Bobrow public su tesis doctoral, basada en su Sis-

tema STUDENT. STUDENT es un programa que utiliza el lenguaje natural y puede comprender y resolver problemas de lgebra.

1965: Comienzan las investigaciones en el Stanford University Heu-

17

ristic Programming Project

(HPP), dentro del Stan-ford's Computer

Science Department, sobre Sistemas Expertos.

- Se inicia el desarrollo del primer Sistema Experto DENDRAL, en Stanford University Edward A. por un grupo que inclua a Joshua Ledeberg, Dennis Smith y Cari

Feigenbaum, Bruce G. Buchanan, analiza la

Djerassi. DENDRAL

in-formacin acerca

de compuestos

qumicos para determinar sus estructuras.

1966: - Joseph Weizenbaum crea ELIZA para ilustrar que las tcnicas de lenguaje gente. natural pueden hacer que un ordenador parezca inteli-

- Se

inicia el desarrollo del

robot

mvil, SHAKEY, construido

por SRI International, cuyo modelo decisional para plan i f icac i n de tareas, utilizar tcnicas de Inteligencia Artificial.

1970: - Patrick H. Winston publica su tesis doctoral Esta tesis "Learning Strucdescribe ARCHES,

tural Descriptions from Examples".

un programa que aprenda a partir de ejemplos.

- El proyecto de Inteligencia Artificial del MIT se convierte en el Laboratorio de Inteligencia Artificial, bajo la direccin de Seymour Papert, incluyendo hoy en da las reas Expertos, tcnicas de razonamiento y

Marvin Minsky y de robtica,

Sistemas

aprendizaje, lenguaje natural y arquitectura de ordenadores.

18

-

Jack D. Myers y

Harry E. Popel inician

en la Universidad de

Pittsburg el Sistema INTERIMIST, ahora llamado CADUCEUS, utilizado para ayudar a los mdicos en el diagnstico de en-fermedades.

- Alain Colmerauer guaje PROLOG.

y su equipo comienza

el desarrollo del len-

1971: - Se utiliza rrollado por operaciones por primera vez el Sistema Experto MACSYMA, desaMoses. Este Sistema realiza integral y simpli-fica ex-

William Martin y Joel de clculo di-ferencial e

presiones simblicas.

- La

Agencia de Investigacin de Proyectos Avanzados del MinisDe-fensa de los Estados Unidos patrocina la investiga(Speech Understan-

terio de

cin sobre comprensin del ding Research Program).

lenguaje hablado

- Algunos de los programas que se han desarrollado bajo esta investigacin son: SPEECHIS, HWIM, HEARSAY-I, HEARSAY-II, DRAGN Y HARPY, estos cuatro ltimos University. desarrollados en la Carnegie-MelIon

1972: - William Woods, de Bolt Beranek y Newman desarrollaron LUNAR;

que fue utilizado

por gelogos en la evaluacin de los materia-

les obtenidos en la luna por el Apolo-II.

19

1973: - Cognitive Psychology publica "Dependencia conceptual: Una teora para Schank. la comprensin del lenguaje natural", de Roger C.

- Roger C. Schank, desarrolla ms tarde-en el laboratorio de Inteligencia Artificial de la Universidad de Stanford el programa

MARGIE, que poda hacer inferencias y generar frases.

1975: - Edward Sistema H. Shortliffe desarrolla la versin inicial de MYCIN,

Experto que hace recomendaciones para el tratamiento de

la meningitis y otras infecciones bacterianas de la sangre.

- Marvin insky publica su documento "Un marco para la representacin del conocimiento", los cin en el que se discute la utilidad de

marcos (frames) como estructuras tiles para la representadel conocimiento en diversos tipos de Sistemas incluyendo

lenguaje natural y Sistemas de visin.

- Roger C. Schank

y Robert Abelson, en

la Universidad de Yale,

publicaron un documento describiendo n i s m ) , un

SAN (Script Applier Mecha-

programa para la comprensin del lenguaje natural que de guiones (scripts) en la representacin de de-

inclua el uso

pendencias conceptuales.

- Daniel G. Bobrow incluyendo

publica "Representation sobre la

and Understanding", representacin del

importantes documentos

20 conoc imiento.

1976; - Douglas B. Lenat escribi el Sistema Experto "AM" , un programa que define y juntos. evala conceptos matemticos en la teora de con-

- Randall Davis TEIREISIAS,

en la Universidad de

Stanford publica su tesis

un Sistema que utiliza metareglas para introducir y utilizadas en Sistemas Exper-

actualizar bases de conocimiento tos.

1977: - Programadores tema Experto PROLOG. del SZKI de Budapest, terminaron el primer Sisaplicaciones prcticas, escrito en

utilizado en

1978: - R.O. Duda y otros, del Research Institue Internacional, public un documento to que ayuda (DUD78) comentando PROSPECTOR, un Sistema Experinformacin relativa a prospec-

en el anlisis de

ciones geolgicas.

1980: - Entra en produccin XCON, el primer Sistema Experto utilizado con gran xito en entornos comerciales, en DIGITAL

diariamente

EOUIPMENT CORPORATION. El prototipo de XCON fue desarrollado bajo la direccin si ty. de John McDermott en la Carnegie Mellon Univer-

21

1981: - Japn anuncia su proyecto de Quinta Generacin de Ordenadores.

1982: - Inicia en Tokio sus actividades el ICOT (Instituto para la

Nueva Generacin de Ordenadores).

- Como

respuesta al programa de

la Quinta Generacin

japonesa,

EE.UU. crea MCC (Microelectronics and Computer Technology Corporation), y el strategic Computer Project.

- Inglaterra inicia el programa Alvey de tecnologa avanzada para investigar sobre la Quinta Generacin.

1983: - La Comunidad la carrera Europea crea el proyecto ESPRIT para competir en

por el ordenador de la Quinta Generacin.

- El Instituto burgo (Escocia),

Turing en la Universidad de Strathclyde en Edimo-frece -formacin en temas relativos a la Inte-

ligencia Artiiicial .

1984: - A partir del ao 1984 comienza la explotacin comercial de los desarrollos Arti-ficial. tecnolgicos alcanzados dentro de la Inteligencia

II. 2. Arquitectura de los Sistemas Expertos.

Un Sistema blemas

Experto aplica las tcnicas de resolucin de proInteligencia Artificial al conociespecfico, en orden a

y razonamiento de la

miento codi-ficado simular

acerca de un problema

la aplicacin de la

experiencia humana. La efectividad

del Sistema Experto depender, en gran medida, de la cantidad de conocimiento que se le proporcione. Sin la existencia de una base suficiente de conocimiento, aunque existan mtodos de razonamiento muy potentes, es imposible crear un comportamiento inteembargo, con mtodos de inferencia muy simples se se aplican a una

ligente. Sin

pueden conseguir

resultados muy buenos cuando

base adecuada de conocimientos.

Naturalmente

que una base de

conocimientos muy completa sin

un adecuado motor de inferencia, servira de muy poco, pues quedara reducida a algo esttico sin posibilidad ni capacidad de

"deduccin" ni generacin de nuevo conocimiento.

Los

Sistemas Basados en el

Conocimiento

significan el paso

del paradigma del muy

poder, es decir, de la utilizacin de cmputo conocimiento, o sea,empleo del

potentes, al paradigma del

mximo posible de conocimiento.

Los Sistemas Expertos podemos

clasificarlos en

tres grandes

categoras en cuanto a sus funciones: ayudantes, colegas y maes-

23

tros.

Los primeros son Experto

los que tienen como

objetivo

el ayudar al

humano en la toma

de decisiones, pudiendo clasificarse

dentro de esta fecha. Las pertos

categora la mayora de los construidos hasta la

otras dos categoras corresponden a los Sistemas Excompetir con las de

cuyas soluciones propuestas pueden

los Expertos, o cuando las decisiones son asumidas de una manera absoluta.

Los tores

Sistemas Expertos son utilizados como asesores o consulde usuarios humanos. Pueden ser utilizados para resolver

problemas rutinarios, liberando a los Expertos de esas poco gratificantes tareas de modo que pueden utilizar su conocimiento en otros asuntos ms complejos y novedosos. Los Sistemas Expertos

pueden llevar la experiencia a lugares donde no existen expertos humanos, o donde los servicios de ese experto seran muy costousar. En ciertas corporaciones se ve a los

sos o peligrosos de Sistemas

Expertos como una posibilidad ante los problemas que como distribuidores

de preservar la memoria presentar un experto cognoscitivo

corporativa humano, y

puede

de ese

patrimonio

dentro de la entidad.

Entre los

logros conseguidos hasta la -fecha por los Sistemas

Expertos podemos distinguir, entre otros:

- Asesoramiento en la deteccin de problemas en equipos de perforacin para bsqueda de petrleo.

24 - Asesoramiento a mdicos en el tratamiento de meningitis. - Localizacin de depsitos de molibdeno. - Con-f igurac iones complejas de ordenadores. - Aplicaciones diversas, como ayuda a la toma de decisiones en el entorno financiero.

A diferencia Expertos

de los

programas convencionales,

los Sistemas

pueden tratar problemas que requieren toma de decisio-

nes que gente experta realiza cada da. \ El desarrollo de los primeros Sistemas Expertos llev muchos

hombres/ao para conseguir resultados aceptables.

Estos plazos de desarrollo se han acortado sensiblemente. Hoy se ha ganado experiencia en las tcnicas para la construccin de los Sistemas Expertos y el "software" y "hardware" que facilitan su desarrollo se ha perfeccionado enormemente. Esto hace posible que hoy sean abordables aplicaciones comerciales que hasta pocos aos eran imposibles, dados los costos de dichos desarrollos.

Hoy es posible

que con una inversin aceptable y unos costos

de mantenimiento bajos, comparados con los de contratar o formar expertos, se puedan conseguir las empresas. resultados muy interesantes para

La

revolucin aportada por los Sistemas Expertos consiste en

considerar tanto las informaciones imperativas de la Informtica tradicional como las declarativas no expresables por los lenguajes usuales de aquella y el conocimiento de la naturaleza ms

25

diversa y no homognea, como datos.

Estos conocimientos son proporcionados

por sus usuarios

(ar-

quitectos, ingenieros, mdicos, -financieros,

etc.) en su propio

lenguaje, sin ninguna limitacin, y con un -formulismo muy prximo a su lenguaje natural.

Estos utilizadores, conoc imiento

estos expertos los

construyen sus

bases de

con la ayuda de

Ingenieros del Conocimiento.

Esto se realiza

en un lenguaje descriptivo, que tiene muy pocas tradicionales de programacin. Los como elementos modulares, indepen-

relaciones con los lenguajes conocimientos se introducen dientes y como

pequeas molculas de saber, muy libres las unas

de las otras y -fcilmente mod i f icab les. -

Estos conjuntos de conocimientos son analizados por lo que se ha dado en llamar motor de in-ferenc i as, "software" cuya programacin utiliza, una gama en parte mtodos .clsicos, tiene pero nico para toda

de aplicaciones y que

como objetivo relacionar

"las molculas de conocimiento"

que son encadenadas lgicamente

para deducir todas las informaciones posibles.

La descripcin de un sistema, es justamente aquello que ve el usuario. Sin embargo, del Conocimiento Sistema Experto: esto no es bice para que los Ingenieros de descripcin de un

hablen de tres niveles

1. Su arquitectura

que es una descripcin

-funcional de cmo la

26 mquina aparees ante el programador; por ejemplo, bases de he-

chos o memoria de trabajo, motor de inferencia, etc.

2. Bu implantacin, que quitectura.

es el diseo lgico que soporta esa ar-

As, el diseo lgico puede incluir las instruccio-

nes LISP en que se traduce el motor de inferencias, etc.

3. Su realizacin, que cir,

es el diseo fsico

del sistema, es de-

los componentes particulares obtenidos para disear y usar

el sistema tal como mquinas LISP, etc.

De este modo, una arquitectura puede ser soportada por un nmero indeterminado de implantaciones distintas, cada una de las

cuales puede, a su vez, tener numerosas realizaciones. De hecho, es muy frecuente el caso de que la misma arquitectura se realiza con nuevas tecnologas, cuando stas son utilizables.

La arquitectura tructurar,

de un Sistema Experto

complejo se puede e s 2.1. de la si-

tal y como se (RAULB4)

muestra en la figura

guiente manera:

1. Bases de conocimiento. Que incluye los conocimientos a ser proporcionados al motor puede ser extrado de de un experto. Otros

de inferencia. bases de

El conocimiento de hechos

datos convencionales o proceder

conocimientos pueden ser obtenidos de modelos de simulacin, as como de otros Sistemas Expertos.

2. Motor de inferencias.

27

Controla y

ejecuta los razonamientos con

el objetivo de al-

canzar los fines perseguidos. Las inferencias son realizadas por el Sistema de deduccin y/o simulacin bajo la gua de un Sistema de control.

El motor de inferencias dividir el conjunto de tareas a realizar en subtareas dado. que se desarrollarn bajo un plan de trabajo

3. Memoria de trabajo. Donde se mantienen resultados sern utilizados en pasos intermedios y deducciones que como informacin

subsiguientes, as

que se utilizar para:

- Actualizar la base de conocimientos. - Proporcionar al Sistema de Interpretacin de lo que est ocurriendo. - Ser empaquetada y preparada para ser utilizada por el Sistema de adquisicin del conocimiento. - Ser enviada a la interfase de salida. informacin

4. Sistema de Gestin de la Base de Conocimientos. Gestiona nentes de la el flujo de informacin memoria de trabajo y entre los distintos compolas bases de conocimiento.

Puede ser a su vez un Sistema Experto.

5. Sistema de Interpretacin. Mantiene informados a los usuarios del Sistema acerca, de lo

28 que est ocurriendo. Requerir distintos niveles de detalle o

abstraccin dependiendo del usuario. Utiliza tecnologas de lenguaje natural y permite si. . .? gr-ficos, as como un lenguaje de consultas que tipo: cmo?, qu ocurre

responder a cuestiones del

6. Sistema de adquisicin del conocimiento. Se utiliza conoc imiento. para aadir informacin adicional en las bases de

Hay tres modos de adquirir nuevos conocimientos:

- Transferencia interactiva de experiencia. El Sistema de interpretacin es utilizado para presentar las posibilidades actuales de las -fuentes de conocimiento para que los Expertos, asistidos por los Ingenieros del Conocimiento puedan identificar lagunas y deficiencias.

El Sistema de adquisicin del conocimiento ayuda a aadir informacin, incorporando nuevos conocimientos o corrigiendo el ya contenido en las bases de conocimiento.

- Transformacin del conocimiento. Puede realizarse de dos formas distintas:

Transformacin horizontal del conocimiento: Consiste en transformar la representacin existente en otra, sin

cambiar su contenido.

29

Transformacin vertical del conocimiento: Consiste en in-ferir un conocimiento superficial a partir de uno ms pro-fundo. Es una de las actuales tendencias en la investigacin de los Sistemas expertos.

- Enseanza: Utilizacin de tcnicas que permiten la -formacin de los usuarios a partir de casos y ejemplos contenidos en las bases.

7. Sistema de gestin del Sistema Experto. Tiene como -funcin servir como consola para la operacin y

supervisin de todos los subsistemas.

8. nter-fase. Proporciona capacidad de comunicacin con dispositivos "ad hoc", para su utilizacin por el usuario -final.

En un

Sistema Experto hay, pues, y su modo de

una separacin total entre El experto puede

los datos actuales

utilizacin.

seguir en todo momento el desarrollo de su razonamiento.

Podramos, pues,

concluir que un Sistema

Experto es un pro-

grama especializado en un dominio particular y que, en ese dominio, su rendimiento es comparable al de los propios expertos pero, sobre todo, permite en todo momento:

- Explicar su comportamiento a un experto.

30 Recibir del experto nuevos conocimientos sin necesidad de incorporar nueva programacin.

MOTOR DE INFERENCIAS

MEMORIA DE TRABAJO

BASES DE CONOCIMIENTO

-SISTEMA DE CONTROL

-REAS TRABAJO

-BASES DE CONOCIMIENTO

-SISTEMA DEDUCTIVO -SISTEMA SIMULACIN

-AGENDA

-BASES DE DATOS -MODELOS DE SIMULACIN

TSISTEMA DE GESTIN DE BASES DEL CONOCIMIENTO

SISTEMAS DE INTERPRETACIN -LENGUAJE NATURAL -GRFICOS

SISTEMAS DE ADQUISICIN DEL CONOCIMIENTO -TRANSFORMACIN DEL CONOCIMIENTO - ENSEANZA

I

SISTEMA DE GESTIN DEL S. E.

INTERFASES

Figura 2.1. ARQUITECTURA DE UN SISTEMA EXPERTO.

31

II. 3. Formal izacin y representacin del conocimiento.

II. 3.1. Formalismos del conocimiento.

La Inteligencia Arti-ficial se centra en aplicaciones donde el conocimiento es un elemento clave. Los formalismos para repre-

sentar el conocimiento adquieren, pues, una gran importancia.

Un -formalismo presarse el

consta de estructuras en de

las cuales puede exinferencias capaz de

conocimiento y un sistema

usarlo para resolver tareas especficas.

Para entender la naturaleza de estos formalismos es necesario primero estudiar los problemas que se plantean para representar

el conocimiento.

La Inteligencia Artificial del

intenta descubrir las propiedades en sistemas fsicos que

conocimiento natural e implantarlo

actan en el mundo real.

Los miento,

problemas de la representacin y utilizacin del conocise derivan precisamente de las limitaciones que impone

este mundo real.

La representacin del conocimiento formas que permitan:

exige que

se desarrollen

32

- Expresar el conocimiento heurstico utilizado en la bsqueda en un espacio -finito y en un tiempo limitado. - Desarrollar estructuras y teoras de inferencia que resuelvan los problemas derivados de la incertidumbre, imprecisin e inconsistencia del mundo real. - Desarrollar sistemas conceptuales que modelen adecuadamente el mundo tsico donde tienen lugar los hechos estudiados.

Los formalismos desarrollados

en la Inteligencia Artificial,

caen en alguna de las clases sealadas: formalismos heursticos, -formalismos epistemolgicos y formalismos conceptuales.

Dado que este computacional,

conocimiento va a ser ser necesario los

utilizado los

en

un medio

desarrollar

formalismos que

permitan representar

anteriores en el mismo, lo cual da lu-

gar a un cuarto tipo de formalismo: el computacional.

II. 3. 1. 1. Formalismos heursticos.

Son de dos tipos:

- Reglas heursticas: Cierto tipo de heursticas pueden expresarse en forma de resimplificar la bsqueda a partir de la expe-

glas, que permiten

riencia adquirida en solucin de problemas.

33

- Memoria basada en el conocimiento: El problema de gestionar la interaccin entre grupos de objetos en un entorno dinmico o reconocer objetos similares, pueden ser formalizados mediante marcos o redes semnticas.

II. 3. 1. 2. Formalismos epistemolgicos.

Los formalismos desarrollados van en la lnea de resolver problemas de:

los

- Incertidumbre. Se han desarrollado varias tcnicas para utilizarlas ante los casos de incertidumbre, y que forman un componente estndar de una tcnica es asociar

los Sistemas

Expertos, as por ejemplo,

factores de certeza

con hechos y reglas, y propagar la incerti-

dumbre junto con la inferencia.

- Incompleto. El hecho de que recursos no todas las cosas pueden observarse, no hay

suficientes para efectuar todas las deducciones o por-

que las teoras del mundo slo son aproximaciones, hacen necesario desarrollar suposic iones. formalismos que puedan operar sobre la base de

Una

tcnica consiste en

asociar

respuestas

por

omisin a

cuestiones

y asumirlas a menos

que exista evidencia suficiente

que indique lo contrario.

34

- Inconsistencia. Aparece en parte en parte a dictorias. debida a lo inacabado de la informacin, y

que la informacin puede proceder de fuentes contra-

Entre los

formalismos desarrollados,

se pueden

sealar

el

mantenimiento de

una red de dependencias entre hechos que luego la consistencia, o introducir para permitir razonar

pueda utilizarse para restablecer particiones en la base de

conocimiento

desde distintos puntos de vista.

II. 3. 1. 3. Formalismos conceptuales:

No basta que los formalismos sean computacional y heursticamente adecuados y que manejen la inconsistencia, incertidumbre e incompletitud, sino que deben tener tambin una conceptual iza-

cin correcta acerca de los dominios sobre los que hay que razonar.

II. 3. 1. 4. Formalismos computaconales:

Los formalismos computacionales desarrollados hasta la fecha, caen en una de las siguientes clases:

- Lenguajes y Sistemas.

35 - Herramientas.

a) Lenguajes y Sistemas:

En cuanto a los lenguajes empleados en el desarrollo de los Sistemas Expertos, se deben considerar:

- Lenguajes -funcionales.

El LISP es

el mximo exponente. Se basan en clculos funcioel caso del LISP el 1ambda-calculus. Los pro-

nales, siendo en gramas se

definen como composiciones de funciones y ejecutar un

programa significa la aplicacin de esas funciones siguiendo las reglas correspondientes.

Me Carthy describe las ideas clave en que se apoya el LISP de la siguiente manera:

- Realiza los cmputos con expresiones simblicas mejor que con nmeros.

- Procesa listas, representando los datos en la mquina como listas encadenadas y como listas multinivel el papel. sobre

- Utiliza estructuras de control basadas en la combinacin de funciones para formar otras ms complejas.

- Utiliza la recursividad como una forma de describir

o

36

procesos y problemas.

- La representacin

interna de los programas LISP se

realiza como los datos, es decir mediante listas.

- La -funcin EVAL del LISP sirve como un intrprete del mismo y como una definicin -formal del lenguaje.

No

hay pues diferencias esenciales

en

la representacin de

datos y programas, de ah que los programas LISP puedan utilizar otros programas y los LISP como datos. El LISP es altamente recursivo representados mediante listas. Las

datos y programas son

listas pueden estas anidadas, es decir,unas contenidas dentro de otras.

No posee una

sintaxis que permita una

-fcil

lectura de los

programas, pero -facilita soluciones muy elegantes para problemas complejos que son de dificil solucin con los lenguajes conven-

cionales de programacin.

- Lenguajes de Predicados. El clculo de predicados consiste en la utilizacin de la lgica para establecer proposiciones acerca del mundo. Una propo-

sicin es una sentencia que puede ser verdadera o -falsa.

Se pueden construir sentencias acsrca

de las relaciones entre

objetos utilizando predicados. Los predicados operan sobre objetos y, a diferencia de las funciones (que simplemente devuelven

37 un objeto cuando evaluado como son invocadas), el valor de un predicado es

verdadero o -Falso. Una

serie de predicados puede lgicos para -Formar propo-

ser interrelac ionados por conectores siciones ms complejas.

Las proposiciones pueden "AND, OR, NOT" dualizados

conectarse mediante conectores tipo

y la frase "IF..., THEN...". Los objetos indiviuso de constantes, varia-

son re-feridos mediante el

bles o -funciones.

Mediante reglas de inferencia se pueden deducir nuevas proposiciones a partir de otras ya existentes.

Cuando los predicados son utilizados como sentencias, se asume que se a-firma una verdad. Be pueden hacer afirmaciones combinando constantes o variables con predicados. Cuando se construye una sentencia con la lgica que utiliza una todos variable, se dice que

proposicin es verdad para

los objetos representados

por esa variable. no, se est

Cuando se formula una pregunta en este entor-

preguntando acerca de la existencia de un individuo

o grupo de individuos que verifican la sentencia.

Para

resolver un problema con proposiciones lgicas, se unen dominio problema a los nombres de las funciones, utilizados en la

elementos del nombres

de predicados y smbolos

constantes

proposic i n.

El clculo de predicados puede ser utilizado de distintas maneras en la resolucin de problemas de la Inteligencia Artifi-

38

c ial.

La primera de

ellas es la prueba

de teoremas. Para utilizar

este mtodo, se describe el dominio y luego se razona acerca del mismo. Despus de escribir una serie de proposiciones acerca del dominio, se resultado ciones. necesita mostrar qu -frmulas hay que describan el

o qu consultas pueden derivarse de aquellas proposi-

El mejor mtodo lucin. Esta el resultado

automtico de prueba hoy todava es la reso-

tcnica es una prueba por contradiccin. Asume que es -falso y demuestra que encierra una contradicde que solamente hay

cin. Esta tcnica es

buena en el sentido

una regla de inferencia.

Sin embargo es lenta y las pruebas son

tediosas para la persona que las realiza.

Estas tcnicas

estn an dentro del rea de investigacin de

la Inteligencia Artificial. An hoy, no comprendemos las propiedades que dor. permiten el tratamiento de la lgica mediante ordenasistema de representacin debe

Muchos creen que cualquier

tener su base cmo controlar

en la lgica, sin embargo,persiste el problema de las deducciones.

El PRDLOS es el clculo de

representante de este grupo.

Se

basa en el

predicados de primer orden. Los programas se definen

en trminos de definiciones de relaciones.

Ejecutar un programa significa demostrar que una relacin e s -

39 pec-fica se cumple siguiendo las reglas de deduccin lgica. Incorporan el no-determinismo en el nivel de ejecucin.

- Sistemas basados en reglas. Las reglas de produccin son del tipo "IF ..., THEN ...", y

se basan en condiciones y acciones.

La descripcin de una situacin dada o contexto de un problema, se equiparan, en encadenamiento hacia adelante, con un con-

junto de condiciones hasta encontrar una regla que se verifica y se ejecuta la condicin contenida en la misma, dando lugar a una nueva descripcin que da lugar a una nueva accin, as hasta que se alcanza una solucin o el sistema se detiene.

Un sistema cin, se llama cin son los

constituido por un conjunto Sistema Basado en Reglas.

de reglas de producLas reglas de produc-

operadores del sistema, que utiliza el mismo, para

manipular la base de hechos.

El mximo exponente es el 0PS5, que consta de una base de hechos y un conjunto de reglas, habiendo sido muy utilizados en la construccin de Sistemas Expertos.

- Sistemas de paso de mensajes y dedicados a objetos. Adems de estructurarse los programas con -funciones o predidesde el punto de vista de los obcomo ejemplo el SMALL-

cados, puede tambin hacerse jetos implicados TALK.

en ellos. As tenemos

40

b) Formas de representacin del conocimiento.

Entre las distintas formas que se emplean en la representacin del conocimiento, se pueden sealar las si guientes.(SCDW85)

- Representacin por espacio de estados. Un estado es un conjunto de condiciones o valores que describen un Sistema en un punto determinado, durante el proceso.

El espacio de estados que el

estados es el conjunto

de

todos los posibles el proceso de solu-

sistema puede tomar durante

cin del problema.

Para resolver

un problema

utilizando una

representacin de

espacio de estados, nos movemos desde un estado inicial a otro y eventualmente, a un estado -final, por medio de operadores, generalmente reglas o procedimientos. El proceso de solucin del

problema es un proceso de localizar una secuencia de operadores, representando un camino desde el estado inicial al estado -final.

Una representacin cual

de espacio de estados,

es

aquella en la

los operadores siempre producen

solamente un nuevo estado

en la base de datos cada vez que son utilizados.

Esta

representacin ha sido utilizada en sistemas para jugar

al ajedrez, sistemas para bsqueda de posibles caminos y problemas en los que intervienen muchos operadores con muchos estados

41 posibles del sistema.

- Redes semnticas: Las redes semnticas pueden ser ilustradas mediante diagramas consistentes acciones o en nodos y arcos. Los nodos representan objetos,

hechos; los arcos o enlaces representan las relacio-

nes entre nodos. Un enlace podra significar que el objeto de un extremo es un atributo plica a otro, o del objeto del otro extremo, que uno imse haya dado a

cualquier otro signi-ficado que

ese arco o unin. Puede aplicarse una representacin. Las diferentes perspectivas desde

mas de una red a un objeto en redes muestran las distintas descrito un objeto. Asi,

las que puede ser

podra sealarse, tal y los prstamos carios que son

como se muestra en

la -figura 2.2. , que

al constructor son una clase de prstamos hipoteproductos de activo, por lo cual podra inferir es un producto de

el sistema que un

prstamo a un constructor

activo. Los enlaces significaran "son un".

Prstamos al constructor

Prstamos son un hipotecar ios son un

Productos activo

Figura 2.2. EJEMPLO DE RED SEMNTICA

Se utilizan

cuando el sistema de

cmputo

debe propagar una

actividad a travs semnticas.

de un grafo. Tales grafos se denominan redes

- Esquemas o marcos. Los marcos, junto con una forma asociada de representacin

42

del conocimiento llamada guin to, de tal manera que hacen

(script) organizan el conocimien-fcil comprender qu in-ferencias

pueden ser hechas.

Los objetos

marcos son conjuntos de conocimiento asociados acBrca y hechos. Ayudan al sistema a interpretar proporcionan

de

significados de los

de acuerdo con

el contexto y le

detalles

cuales puede deducir elementos que faltan. Un marco tpico puede ser la descripcin de una bicicleta o un deporte.

Los marcos contienen campos (slots) que se rellenan con valores, procedimientos o apuntadores a otros marcos. Un conjunto de condiciones pueden llevar un valor de relleno y/o un valor por

defecto, cuando no es conocido ninguno.

Se

pueden asociar procedimientos a

un

campo'en particular.

As, por ejemplo, es

til a menudo decir al sistema que ejecute

alguna accin cuando un campo tiene informacin, o cmo calcular un determinado valor cuando sea requerido.

Un marco, o un

campo dentro del marco, a su vez, a

puede apuntar a otro

marco o campo y, stos

otros, y asi sucesivamente, dominios de aplicacin ms

permitiendo transferir inferencias a extensos.

En

orden a resolver un

problema utilizando esta representacomo datos. El Sistema

cin, el

programa utilizar los marcos

Experto puede entonces realizar deducciones a travs de la suce-

43 sin de relaciones consta entre marcos y campos. nichos con Cada marco o unidad

de varios campos o

distintas in-formac iones

asociadas a cada guajes

uno de ellos. Las

operaciones bsicas en leninstancias de marcos, marcos basados en des-

basados en marcos, son

construir

acceder a partes

de marcos o recuperar

cripciones parciales.

- Guiones

(Bcript).

Son estructuras similares a los marcos que utilizan situaciones estereotipadas para representar el conocimiento en un cony a la secuencia

texto particular.

Estn orientados al tiempo

causa-e-f ecto, dentro de un entorno de dinamicidad.

La estructura de

un guin consiste en

un conjunto de campos

(slots), que corresponden que podran ocurrir

a un conjunto de aspectos de un hecho

en una situacin de-finida. Si no existe in-

formacin en un determinado campo, el sistema tomar por defecto el valor proporcionado previamente por el programa para esas

ocasiones.

Cuando unos

hechos determinados

concurren en

la

situacin

analizada de acuerdo con un estereotipo de-finido en un guin, el sistema puede entonces predecir por analoga, qu otros hechos

ocurrirn. Sin embargo, si un hecho inesperado ocurre, el sistema reconoce que el pred ice iones. guin no puede aplicarse y no realiza ms

As, por ejemplo, pleaos

un guin que reflejase

una -fiesta de cum-

podra incluir la presentacin

de un pastel, canciones

44

de -felicitacin, apagado tuase con

de velas y regalos. Un sistema que acdeducciones acerca de situa-

este guin podra hacer

ciones, interpretando dicho guin.

La tendencia integracin de

actual en los -formalismos de computacin, es la todos ellos, eliminando, los inconvenientes que

presentan y aprovechando las to. As el KEE, LOOPS o

-facilidades sinrgicas del conjun-

ART, son ejemplos de esta labor de snherramientas para de construir nuevos y el

tesis, que adems contienen formalismos

y re-finar las estructuras

representacin

comportamiento de inferencia de los ya existentes.

II. 3. 2. Bases de Conocimiento.

Antes de hablar de los mtodos utilizados para la representacin del conocimiento, es conveniente comentar qu tipos de co-

nocimiento puede contener una Base de Conocimiento.

El conocimiento

se almacena en una

Base de Conocimiento, de

acuerdo con alguna de las siguientes -formas:

a) Definiciones descriptivas de ficamente en el compondr en:

los trminos utilizados espec-

dominio, as, dada una situacin tpica se des-

- Descripcin del comportamiento. - De-finicin de vocabulario.

45 - Procesos. - Hechos inciertos. - Hechos disyuntivos.

b) Descripcin

de objetos individuales del

dominio y sus rela-

ciones con otros objetos.

c) Criterios para tomar decisiones. As, tendremos: - Reglas de decisin. - Restricciones. - Heursticas. - Hiptesis. - Suposiciones.

Los mtodos de representacin ciones de

del conocimiento

son comb ina-

estructuras de datos que almacenan informacin y proque permiten realizar inferencias

cedimientos de interpretacin sobre los datos almacenados.

Las investigaciones de la

Inteligencia Arti-ficial han creado

una variedad de -formas para representar distintos tipos de conocimiento, sin que se haya llegado a un modelo de representacin

nico y de-finitivo. El objetivo es elegir un tipo de representacin del conocimiento que -facilite el trabajo sobre un problema

en particular.

Pueden

combinarse di-ferentes

representaciones dentro

de un

Sistema, desarrollar nuevas

representaciones o

realizar varia-

ciones de algunas de las existentes.

46

Los Sistemas de Inteligencia

Artificial pueden requerir contipos de conocimiento, co-

venciones para representar distintos nocimientos de hechos en

objetos, de relaciones, de cmo se han producido ciertas acciones, as como

el tiempo, cmo realizar

metaconocimientos o metarreglas miento) .

(conocimiento acerca del conoci-

Las metarreglas pueden proporcionar dos maneras distintas: o valores por

informacin al sistema de de-fecto o procedimientos

que el sistema puede utilizar para elaborar las respuestas.

Una correcta

representacin del

conocimiento es

vital para

realizar -fciles y eficientes deducciones, suprimir detalles innecesarios, de-finir modelos generales y -facilitar la adquisicin de nuevo conocimiento o modificacin del existente.

Ya

se han comentado con

anterioridad

los distintos formatos

de representacin del conocimiento.

Otras

tcnicas que pueden ser

aplicadas

en

estos sistemas

pueden ser:

- Abstraccin. Los mtodos de abstraccin son utilizados para extraer con-

clusiones importantes a partir de gran nmero de detalles. Estos mtodos son especialmente tiles en los tratamientos de lenguaje natural y visin. La resolucin de una visin simplificada de un

47 problema, frecuentemente proporciona luz sobre cmo podran re-

solverse problemas anlogos pero ms complejos.

- Sucesiones. Sucesin es la capacidad que permite a un Sistema pasar valores a travs de relaciones o campos (slots). Puede proporcionar

campos con valores por defecto e incrementar la eficiencia en la programacin. Simplifica la programacin porque algunas relaciones pueden ser expresadas implcitamente en lugar de tener que

escribir las reglas correspondientes.

El paso de valores por sucesin aade eficacia a la representacin, porque no es necesario repetir y explicar todos los as-

pectos relevantes de cada objeto descrito.

48 II. 4. Motor de Inferencias.

Algunos sistemas, y en particular los Sistemas Expertos, contienen un conocimiento acerca de la -forma de tratar el conoci-

miento denominado "metaconocimiento"; de que dispone

es decir, el conocimiento un proceso de razona-

un sistema para gestionar

miento. En los programas descrito por los sistemas sea, reglas cin. En

convencionales, este conocimiento est

la estructura del propio programa, mientras que en de produccin toma la que actan sobre las -forma reglas de "metarreg 1 as" , o

gobernando su activala estrategia de se-

suma, "las metarreglas" expresan

leccin de reglas.

Los mecanismos de razonamiento utilizados por las reglas, son los tan conocidos de la lgica -formal siguientes:

a) "Modus Ponens" que permite derivar a partir de la regla:

SI A ENTONCES B

De la proposicin A, la proposicin B.

b) "Modus Tollens", al contrario del anterior, este mecanismo permite deducir a partir de la regla anterior, es decir:

SI A ENTONCES B

y del conocimiento de que la proposicin B es -falsa, que la proposicin A, tambin es -falsa.

49

Las

reglas pueden representarse usando cual permite utilizar un

el

-formalismo de la

lgica, lo

motor de inferencias gene-

ral, el de los demostradores de teoremas.

II. 4. 1. Estrategia de control.

Es un mecanismo que determinar que

sirve para examinar la

Base

de Datos y

reglas disparar, es decir, se encarga de activar y encadenarlas en el curso de unos ciclos

las reglas adecuadas de -funcionamiento o "ciclo de

cmputo, cada uno de los cuales se denomina

resolucin". Como todos los intrpretes en los sisteun programa cuyo trabajo es decidir que es

mas in-formticos, es

lo que hay que hacer a continuacin.

En el caso gia de

concreto de un sistema de produccin, la estrate-

control, dadas las limitaciones de secuenci alidad de los actuales, tienen la tarea especial de decidir que

computadores

regla va a "disparar" a continuacin.

El esquema general de -funcionamiento de la estrategia de control para sistemas de produccin, (NIL80) viene dado por el si-

guiente procedimiento:

50 Procedimiento "CONTROL"

1."DATOS" - Base de datos inicial. 2. Hasta que "DATOS" satis-faga la condicin de terminacin, hacer: 3. Comenzar el proceso. 4. Seleccionar alguna regla, "R", del conjunto de reglas, que pueda aplicarse a "DATOS". 5. "DATOS" - Resultado de aplicar 6. Fin. "R" a "DATOS".

En resumen, el intrprete activar

de reglas es un

programa que va a

las reglas relativas al

problema planteado, en funcin propios. Las -formas de

de criterios de

activacin que le son

aplicacin de las reglas, se corresponden a modos de razonamiento, o paradigmas o modelos,que el creador del intrprete ha elegido. Este intrprete pueda debe ser lo ms general posible para que del conocimiento, y tan

aplicarse a distintos dominios

e-ficiente como se pueda.

La bsqueda

de esta e-ficiencia conduce,

sin embargo, a res-

tringir lo que se denomina "espacio de bsqueda", usando heursticas. Estas van a evitar explorar todas las alternativas en cada punto de eleccin o van a elegir la mejor. Las heursticas

que controlan el proceso de razonamiento, son con -frecuencia implcitas, o sea, estn codi-ficadas en el propio intrprete, pero a veces son explcitas y programables, entonces se habla de "metaconocimiento". Las heursticas, tanto explcitas como implcitas no son siempre sintcticas, puesto que tambin pueden ser

51

semnticas.

La estrategia

de control,

para considerarla

adecuada, debe

cumplir tres requisitos bsicos:

- Causar movimiento. Las estrategias de control que no causan movimiento, nunca conducen a una solucin.

- Ser sistemtica. Una estrategia de control no debe aplicarse aleatoriamente, sino sistemticamente de modo que, por una

parte, no se genere una y otra vez la misma base de datos y que, por otra, no se pierda la oportunidad de generar la base de da-

tos deseada. El primero es un requerimiento de eficiencia, mientras que el segundo lo es de utilidad.

-

Ser eficiente. Con frecuencia es necesario comprometer

los

requerimiento

de movilidad y sistematicidad y construir una es-

tructura de control que no garantiza encontrar la mejor respuesta, pero casi siempre encontrar una buena respuesta. De esta

manera se introduce la idea de una heurstica.

En resumen, se puede

decir que el motor de inferencias es la

parte "motriz" de una base de conocimientos formalizados. Es decir, es el elemento de "software" que hace que todo suceda como

si el motor de inferencias pudiera utilizar todo ese conocimiento directamente y reordenar todas las informaciones colocadas en la base de conocimientos. En un sistema basado en reglas, el intrprete de reglas, es el ncleo del sistema de produccin, de

52 modo que alimentado por una base de datos, contruyen dinmica-

mente una solucin, diciendo qu reglas disparar y en que orden. Para ello, utiliza su van memoria de trabajo, en la cual se conser-

las in-formaciones describiendo la situacin inicial, es deproblema planteado, y las situaciones deducidas en el

cir, el

curso del razonamiento.

Una las acerca

caracterstica importante de

del clculo informacin,

para seleccionar o "conocimiento",

reglas, es la cantidad del problema en

curso que usa ese clculo. En el extremo

con menor informacin, la seleccin se hace de un modo totalmente arbitrario, problema que se sin tener en cuenta ninguna informacin sobre el est resolviendo. En el otro extremo, la estragua por el conocimiento que se tiene del

tegia de control se problema que idnea.

es suficiente para seleccionar

cada vez una regla

II. 4. 2. Modos de razonamiento:

El motor

de inferencias cumplimenta pues la tarea de controde las reglas de inferencia o deduccin. En

lar la actividad consecuencia,

expresa un cierto modo de razonamiento; es decir,

un paradigma que en el plano operativo puede caracterizarse sintcticamente por los calificativos miento hacia atrs". adelante" y de "deductivo" o o "encadenahacia

"regreso" tienen una

"encadenamiento

Estos paradigmas

correspondencia semntica

pues el primero se le asocia el significado de "dirigido por los datos", es decir, va a ser el conocimiento de ciertos datos lo

53

que provoque la activacin gundo se le asocia

de una regla de inferencia; y al sepor la meta", o por lo que se

el significado de "dirigido para establecer esta meta

sea, que es justamente activa una regla.

El

tipo de razonamiento a

utilizar,

deductivo o regresivo,

depende del dominio tratado.

La mezcla de los dos tipos de razonamiento, hacia atrs y hacia adelante, permiten acumular las ventajas recprocas de cada

uno de el los.

Una solucin

juiciosa es la que

emplea EMYCIN que clasifica

las reglas en tres dispararse:

clases distintas, de acuerdo con la forma de

a) Reglas

consecuentes: Es

el principio

del encadenamiento

hacia atrs quien gua la ejecucin de estas reglas.

b) Reglas antecedentes: Estas se disparan en el encadenamiento hacia adelante. La parte izquierda de las reglas de este tipo se evalan cuando es se dispara. posible, y entonces, si la regla es vlida

c) Reglas autorreferenci ales: Estas reglas slo se disparan a la salida del encadenamiento hacia atrs. Permiten en general

reforzar la

posibilidad de una conclusin ya vlida, puesto que en su parte derecha y su parte iz-

contienen el mismo evento

54 quierda.

Los encadenamientos modos

hacia atrs y hacia adelante son los dos

de control principales, que muchos sistemas utilizan concondicin de haber probado la integridad de tal

juntamente, a

estrategia. Hay que sealar el hecho de que un modo de encadenamiento en particular no de-fine completamente el control.

Para un modo de encadenamiento dado, por ejemplo el encadenamiento hacia atrs puro, el que se como sucede en el PROLOG, el orden en

consideran las reglas puede tener una gran in-fluencia de ejecucin. Por esto se habla de heurstiencadenamiento. En conclusin, la la manera en que

sobre la velocidad cas que

conducen el modo de

estructura de control,

cuyo papel es de-finir

van a utilizarse las reglas; es decir, el orden en que van a interpretarse, comporta miento, dos niveles; uno es el modo de encadena-

el otro, son las

heursticas utilizadas para disminuir

los tiempos de clculo.

En suma,

cualquiera que sea el

tipo de razonamiento emplea-

d o r a construccin de un intrprete comporta dos etapas particularmente delicadas: La de-finicin de los mtodos de equiparacin o seleccin de las reglas candidatas vlidas y la eleccin de la regla a disparar. La calidad de estos dos elementos a-fecta de

modo determinante la eficacia del motor de inferencias.

La

seleccin de las reglas candidatas necesita la confrontacon el conjunto de hechos de la base

cin de cada una de ellas

de hechos. Esta operacin puede llegar a ser muy costosa rpida-

55

mente, puesto que se repite en cada ciclo. Es relativamente sencilla cuando el lenguaje de la base de conocimientos se parece a la lgica proposicional se ms compleja cuando puesto que en este de (sistema sin variables), y puede volverse trata de un lenguaje de primer orden,

caso se permite la utilizacin de las reglas Esta operacin de bsqueda "cotejo" (Pattern

variables y de cuantificadores. se denomina

por compracin matching).

"equiparacin" o en el

Una regla es candidata

encadenamiento hacia

adelante si existe en validando el conjunto

la base de hechos un conjunto de tcnicas de sus trminos de la parte izquierda o

condiciones, por equiparacin.

Esta operacin caracteriza tambin cuyo modo de resolucin es guiado por denominan

al motor

de inferencias,

los datos. Muchas veces, in-ference

los Sistemas Expertos, se

"pattern directed

systems", es decir, sistemas de inferencia dirigidos por equiparacin de patrones.

De la buena eleccin de la regla a disparar depende la bondad de las prestaciones del sistema. Un humano tiene numerosos conocimientos, pero tambin sabe cual es el que debe utilizar en una situacin dada.

Todava este problema est con -frecuencia mal resuelto en los Sistemas Expertos. La solucin adoptada es habitualmente la de

una estrategia esttica: tomar la regla ms precisa o bien tomar la regla que se ha convertido en la ms recientemente aplicable

o, simplemente, tomar la primera encontrada.

56

Una va

ms interesante es el

uso

de "metaconocimientos" o

"metarreglas" , que tambin cin que

se dan en -forma de reglas de produc-

expresan las estrategias de eleccin entre las reglas.

Este problema de la eleccin de la regla, es evidentemente menos esencial cuando la solucin del problema necesita una explora-

cin de todos los caminos posibles conduciendo a la meta.

II. 4. 3. Ciclo de Base de un Sistema de produccin en encadenamiento hacia adelante.

La

estrategia de control contiene el conocimiento de control que un "modelo general de resolucin de pro-

y no es otra cosa

blemas". Esta estrategia, de acuerdo con distintas consideraciones, con -frecuencia independientes del dominio de aplicacin,

encadena los

ciclos de trabajo comportando cada ciclo de trabageneral, dos -fases: la de Decisin o selec-

jo, en su caso ms

cin de reglas y la de

Accin o de activacin o deduccin, o de

ejecucin de las reglas elegidas. Cuando esta estrategia se pone en marcha, la base de datos, tambin llamada base de conocimientos declarativos o asercionales, y la base de reglas, conocida

asimismo por base de conocimientos operativos o procedimentales, contienen las informaciones representativas del enunciado del

problema a tratar;

es decir, la expresin de los hechos compro-

bados o a probar y los conocimientos operativos sobre el dominio en cuestin. La detencin del intrprete puede hacerse en cual-

quiera de las dos -fases.

57

1. Fase de decisin guientes etapas:

o seleccin de reglas, consta de las si-

a) Restriccin: Consiste en explotar, cuando ello es posible, los conocimientos generales sobre la forma de particionar, en

distintas familias, los hechos y las reglas. La restriccin, determina a que subconjuntos "Rl" la base de de la base de reglas y "BD1" de

hechos merecen ser comparados en el instante actual. sobre las reglas se efecta con el fin

La etapa de restriccin

de que la etapa de equiparacin sea lo ms rpida posible.

Esta restriccin La las

a veces es esttica y efectuada "a priori". permite a veces organizar

propia estructura del "software"

reglas segn "espacios de conocimientos" que contienen conde reglas especializadas en un dominio. Otros sistemas

juntos

permiten definir

de manera dinmica este espacio de trabajo con

ayuda de "metarreg1 as" que tratan sobre las propias reglas y determinan su ejecucin.

b) Equiparacin o cotejo. Una vez finalizada la etapa de restriccin, la estrategia el fin de rarse; es de control examina la base de datos con

seleccionar el conjunto de reglas condidatas a dispadecir, aquellas cuya expresin es compatible con la

base de datos, por intermedio de mecanismos de equiparacin.

Se dice que una

expresin e se equipara

frente

a

otra e',

cuando B_ es una instancia les el filtrado ha

de e. Todas las reglas para las cuaque son "vlidas". De

tenido xito se dice

58 este modo, una regla es "vlida" si la memoria de trabajo con-

tiene una instancia de su lado izquierdo.

Puede que haya varias instancias de la parte izquierda de las reglas en la memoria de trabajo, en cuyo caso, hay que consideque instancian correctamente la

rar las distintas sustituciones parte izquierda de una regla.

En esta etapa el motor de inferencias examina cada una de las reglas de "Rl", respecto al conjunto de la "BD1" de hechos.

Entonces, que se juzgan

un subconjunto "R2" del

"Rl"

contiene las reglas

compatibles con la "BD1".

"R2" se denomina "con-

junto con-flicto".

Esta etapa es la que consume ms recursos de computacin.

A medida que

los sistemas de produccin

se

hacen mayores y

ms complejos, cuestiones de eficiencia obligan a construir tanto para la base de Reglas, como para la base de datos o contex-

to, estructuras de informacin ms complejas.

c) Resolucin de conflictos: Aqu se determinan el subconjunto de reglas "R3" dentro de "R2" que debe dispararse.

En la prctica es

frecuente que en la

operacin

de un gran

sistema de produccin, en cada ciclo, no pueda dispararse ms de una regla. Entonces es necesario decidir entre ellas para elegir una de ese conjunto que cumple la parte de condicin, denominado

59

"conjunto conflicto", ciclo,

para que se dispare.

Este

paso, en cada

denominado "resolucin del conflicto", es donde se efec-

ta la secuenciacin de las acciones, el enfoque de la atencin, las interrupciones en donde y el control de la inestabilidad; es decir,

se observan los rasgos cognitivos bsicos. Existen d i que se han probado adecuados para efectuar la

versos enfoques resolucin del

conflicto, entre los ms empleados estn los si-

guientes que respectivamente seleccionan:

a) La "primera" regla que equipara el contexto. Esta "primera" se define en trminos de algn orden lineal explcito de la base de reglas, lo cual no es siempre deseable.

b) La regla de ms alta "prioridad". Aqu, "prioridad" viene definida por el programador de acuerdo con las exigencias y caractersticas de la tarea, como sucede en el DENDRAL. Es decir, se consideran algunos aspectos de la situacin total como ms importantes, crendose producciones de alta prioridad que son privilegiadas.

c) La regla ms especfica. Es decir, aquella que tiene la parte de condicin actual, o unos requerimientos ms fuertes, en el sentido de que se tiene una lista larga de premisas o elementos de situacin restrictivos.

d) La regla que concierne al elemento aadido ms

60 recientemente al contexto.

e) Una nueva regla, o sea una regla que no ha sido accedida previamente o, al contrario, siempre que se pueda, aquellas que se han equiparado ms recientemente.

f) Arbitrariamente una regla. Aunque este enfoque parece que contradice la segunda caracterstica que debe tener una buena estrategia de control no es as, puesto que en este caso se refiere a reglas que tengan igual posibilidad de ser efectivas.

g) Finalmente, y al contrario de lo que sucede en los casos anteriores, en ste no se efecta ninguna eleccin, antes bien se exploran exhaustivamente

todas las reglas aplicables sin hacer distinciones, en un pseudoparalelismo que se har paralelismo real con la>llegada de los computadores de la llamada "Quinta Generacin".

Hay sistemas sofisticados,

que usan

distintas combinaciones

de estos enfoques sencillos de resolucin de conflictos, algunas de las cuales llegan a ser bastante complicadas, como es el caso de los algoritmos de catalogacin utilizados por los Sistemas

Expertos AM ticas

y HEARSAY. Estos enfoques afectan a dos caracters-

importantes de los sistemas de produccin: "la sensibililo ms rpidamente po-

dad", es decir, la capacidad de responder sible a los cambios del entorno, y la

"estabilidad", o sea, la

61

-facultad de ejecutar secuencias gas.

de acciones

relativamente lar-

Generalmente, para descomponer

se dota al sistema

de un mecanismo particular

las reglas candidatas. Como acaba de verse, sun orden sobre la parte de accin de

te puede hacer intervenir las reglas, o bien

una prioridad sobre el hecho juzgado ms imo bien, a partir de un criterio geltima regla utilizada, orden a

portante o el ms reciente, neral como: eleccin de la

"priori" sobre el conjunto de reglas en el conjunto, etc.

Tambin es

posible decidir la regla

candidata

a

partir de

"metarreglas" que definen dinmicamente las prioridades sobre el conjunto de reglas. Este se tipo de seleccin es, sin duda, el que permite indicar explcitamente el

muestra ms adecuado pues

control de las reglas.

En otros trminos, el mecanismo de inferencia est, el mismo, descrito por reglas. Adems, al ser las "metarreg1 as", ellas

mismas, reglas, pueden ser manipuladas directamente por el motor de inferencias sin necesidad de usar un mecanismo anejo.

2. Fase de accin, activacin o deduccin:

En esta -fase, el motor de inferencias controla, si "R3" no es vacio, la ejecucin de cada una de las reglas. Esta fase consiste en aplicar efectivamente la regla elegida sobre la base de

62 datos; es decir, activar la parte accin de todas las regias retenidas.

Generalmente,

esta parte se limita a introducir nuevos datos

en la base y a supervisar o modificar otros. Los Sistemas Expertos, que son algo ms que simples sistemas de produccin, permiten, sobre la veces, parte "accin" y ms raramente, aunque tambin a el empleo de procedimientos

sobre la parte "condicin",

llamados de manera clsica. Si bien estos procedimientos perturban el modelo terico de los sistemas de produccin, permiten

realizar rpidamente tareas anejas como: entradas-salida, clculo matemtico, etc.

Lo ms habitual

es aadir los trminos

de la parte "conclu-

sin" de la regla seleccionada a la base de hechos y se sealiza dicha regla. Este ciclo se fijado como meta, se aade a repite hasta que el hecho que se ha

la base de hechos, o cesa de efec-

tuarse cuando ya no puede aplicarse ninguna regla.

El

riesgo de este paradigma

de

razonamiento hacia adelante La etapa 3 de

estriba en una prdida de

enfoque hacia la meta.

resolucin del conflicto es, pues, particularmente crtica. Adems, comporta los dos inconvenientes siguientes:

a) Se disparan cucin, incluso si

todas las reglas que son susceptibles de ejelas condiciones a las cuales llegan no ofre-

cen ningn inters. Esto .favorece una explosin combinatoria que redunda en una alta ineficacia.

63

b) Previamente, es necesario cargar la memoria de trabajo con todas las in-