Sie sind auf Seite 1von 36

Universidad Indoamrica

Gestin Financiera

Material de Estudio - Taller 1

Cdigo: DASI601A Fecha: 2013-02-8 Versin: 1 Revisin: 1 Pgina: 1 de 5

SISTEMAS EXPERTOS
Modalidad a Distancia

PD

C w

Por: Ing David R. Castillo S.

Ambato - Ecuador

w w

.s

re

a ca t
1

TALLER 1

ns

e o !

ft.

co

Tr ia l

Universidad Indoamrica

Gestin Financiera

Material de Estudio - Taller 1

Cdigo: DASI601A Fecha: 2013-02-8 Versin: 1 Revisin: 1 Pgina: 2 de 5

Presentacin del Proyecto Formativo


El material que se presenta, contiene informacin resumida; pero relevante a la vez respecto a los Sistemas Expertos, los cuales, a travs de la aplicacin de las tcnicas de Inteligencia Artificial, captan el conocimiento bsico que permite a una persona desempearse como un experto frente a problemas complicados; adems se hace referencia acerca de las Redes Neuronales en donde se abarcan los fundamentos que son conseguir aprendizaje a travs del entrenamiento de neuronas. utilizados para representar la estructura del cerebro humano y la forma en la que se puede

Competencias Especficas del Proyecto Formativo -

PD

C w

w w

Comprende y relaciona el modelo simple de red neurona para desarrollar ejercicios matemticos de representacin neuronal con anlisis crtico.

.s

re

Comprende y explica el funcionamiento de las redes neuronales del ser humano para relacionar e identificar con elementos del medio informtico con criterio y anlisis.

a ca t
2

ns

ft.

Identificar los procedimientos para el uso y desarrollo de un sistema experto en el mundo real usando las tcnicas de programacin

e o !

co

Comprende los conceptos y estructura bsica de los Sistemas Expertos para desarrollar criterios con orden lgico.

Tr ia l

Universidad Indoamrica

Gestin Financiera

Material de Estudio - Taller 1

Cdigo: DASI601A Fecha: 2013-02-8 Versin: 1 Revisin: 1 Pgina: 3 de 5

Taller 1 Generalidades de los Sistemas Operativos

Bibliografa

re PD F C w

http://www.pdc.dk/vip/vipinfo/freeware_version.htm http://www.sigma-research.com/bookshelf/rtthinks.htm http://www.pcai.com/web/ai_info/expert_systems.html http://www.pcai.com/web/ai_info/neural_nets.html http://www.pcai.com/web/ai_info/genetic_algorithms.html http://www.nd.com

w w

.s

a ca t
3

Direcciones web:

ns

Inteligencia Artificial Elaine Rich Kevin Knight Sistemas Expertos Dieter Nebendahl Los Hacedores de Cerebros David H. Freedman Manual de Sistemas Expertos Guas Interactivas (Tutoriales de Internet) Manuales Folletos

e o !

ft.

co

Tr ia l

Introduccin - Definicin Histrica de los S.E. Conocimiento de los S.E. Arquitectura de un S.E. Usuario Interfaz de Usuario Base del Conocimiento Motor de Inferencia Medios de Modificacin Medios de Explicacin Lenguajes de Programacin para S.E.

Universidad Indoamrica

Gestin Financiera

Material de Estudio - Taller 1

Cdigo: DASI601A Fecha: 2013-02-8 Versin: 1 Revisin: 1 Pgina: 4 de 5

INDICE Pg. Generalidades de los Sistemas Expertos Historia de los S.E. Conocimientos de los S.E. Arquitectura de un S.E. Usuario Interfaz de Usuario Base del Conocimiento Motor de Inferencia Medios de Modificacin Medios de Explicacin 5 11 13

3 e o !
ns
4

co

a ca t
.s

ft.

re

PD

w w

Lenguaje de Programacin para S.E.

C w

Tr ia l
19 19 19 19 19 19 19 26

Universidad Indoamrica

Gestin Financiera

Material de Estudio - Taller 1

Cdigo: DASI601A Fecha: 2013-02-8 Versin: 1 Revisin: 1 Pgina: 5 de 5

INTRODUCCIN
El paradigma de procesamiento de la informacin: lgica booleana-mquina de Turing (arquitectura Von Neumann), es la base de los actuales sistemas de procesamiento digitales. Sin embargo, este esquema presenta problemas a la hora de abordar tareas como las denominadas del mundo real, donde la informacin se presenta masiva, imprecisa y distorsionada, haciendo necesaria la utilizacin de modelos alternativos de procesamiento y control. El documento contiene dos partes importantes: la primera parte trata sobre los Sistemas Expertos, destacando aspectos importantes como el origen, definicin, conceptos fundamentales, la arquitectura elemental con una breve descripcin, los tipos de sistemas expertos, los lenguajes utilizados para su desarrollo y el detalle de las etapas del ciclo de vida de un sistema experto. La segunda, aborda las Redes Neuronales Artificiales, empezando por hacer una analoga entre las redes neuronales naturales y artificiales, los fundamentos tericos segn sus autores, los entrenamientos para conseguir aprendizajes y el aprendizaje a travs de rboles de identificacin.

PD

C w

w w

.s

re

a ca t
5

ns

e o !

ft.

co

Tr ia l

Universidad Indoamrica

Gestin Financiera

Material de Estudio - Taller 1

Cdigo: DASI601A Fecha: 2013-02-8 Versin: 1 Revisin: 1 Pgina: 6 de 5

GENERALIDADES Campos de I.A. La Inteligencia Artificial se divide en campos de estudio los cuales se resume en el siguiente esquema:

SIMULACION SENSORIAL

e o !
ns
6

co

m
ROBTICA Apoyo a trabajos SISTEMAS EXPERTOS Apoyo a decisiones

Odo, tacto,

vista, gusto,

PD

C w

LENGUAJES NATURALES

Comunicacin con Figura 2. reas de estudio e investigacin de la Inteligencia

w w

INTELIGENCIA ARTIFICIAL

.s

re

a ca t

ft.

Tr ia l

Universidad Indoamrica

Gestin Financiera

Material de Estudio - Taller 1

Cdigo: DASI601A Fecha: 2013-02-8 Versin: 1 Revisin: 1 Pgina: 7 de 5

SISTEMAS EXPERTOS

INTRODUCCIN A LOS SISTEMAS EXPERTOS Los sistemas expertos (SE) se emplean para ejecutar una variedad muy complicada de tareas que en el pasado solo podan llevarse a cabo por un nmero limitado de personas expertas.

conocimiento bsico que permite a una persona desempearse como un experto frente a problemas complicados.

La caracterstica ms fascinante de los Sistemas Expertos que los distingue de la mayora de las aplicaciones tradicionales es su capacidad para enfrentar problemas que

artificial ligaba ntimamente los trminos inteligencia y conocimiento; tambin mencionamos los seres vivos. Entonces es necesario e indispensable reconocer.QUE ES EL CONOCIMIENTO?

Existen corrientes filosficas, ciencias como la gnoseologa y muchos cientficos que se encarga de estudiar las fuentes, tipos y formas de adquirir conocimiento. Nosotros no entraremos a descubrir ni tratar estos temas a fondo, nos concentraremos en aspectos prcticos que nos ayuden a comprender trminos muy relacionados como: DATO, INFORMACION, CONOCIMIENTO para ver su aplicacin en la vida diaria.

Dato Piense en una fecha, un nmero, un nombre cualquiera.Ud. cree que es un dato?..Efectivamente, de la forma ms simple podemos decir que un dato es un hecho, que individualmente carece de valor para una persona. Por ejemplo el nmero 7 carece de valor individualmente, la fecha de cumpleaos del Presidente de la Repblica del Per; carecen de

PD

C w

w w

.s

que la cantidad de conocimientos es lo que otorgaba, en gran parte, el nivel de inteligencia de

re

ns
7

Antes de definir el trmino SISTEMA EXPERTO es necesario recordar que la inteligencia

a ca t

DATO, INFORMACION, CONOCIMIENTO

e o !

ft.

co

discernimiento y la intuicin humana.

constituyen el reto del mundo real, por medio de la aplicacin de procesos que reflejan el

Tr ia l

A travs de la aplicacin de las tcnicas de Inteligencia Artificial los SE captan el

Universidad Indoamrica

Gestin Financiera

Material de Estudio - Taller 1

Cdigo: DASI601A Fecha: 2013-02-8 Versin: 1 Revisin: 1 Pgina: 8 de 5

valor porque individualmente no significa nada para un tomador de decisiones frente a un problema, pues no generan acciones concretas.

Informacin El concepto de informacin nace cuando un dato o conjunto de datos es de utilidad para un tomador de decisiones, es decir cuando los datos son interpretados y tiles para una persona. Por ejemplo, el color rojo en un semforo constituye una informacin ya que tiene una apoyo para tomar una decisin: en este caso detener el automvil. Otro ejemplo sera la fecha de cumpleaos de un familiar ya que llevara a una persona a tomar una accin como comprarle un regalo, darle una serenata, etc., es claro que un dato se convierte en informacin cuando le es til a una persona o tomador de decisiones. En el caso de una empresa, las utilidades, para tomar decisiones y generar cursos de accin. ganancias o prdidas de una empresa seran informacin para los ejecutivos o la alta direccin interpretacin objetiva y universal para un grupo de personas-los automovilistas- y les sirve como

PD

C w

w w

.s

re

a ca t
8

ns

e o !

ft.

co

Tr ia l

Universidad Indoamrica

Gestin Financiera

Material de Estudio - Taller 1

Cdigo: DASI601A Fecha: 2013-02-8 Versin: 1 Revisin: 1 Pgina: 9 de 5

Conocimiento El conocimiento, en contraste con los conceptos de datos e informacin, sugiere alternativas de accin o guas de actuacin especficas asociadas a la informacin. Aqu podemos definir al conocimiento como el conjunto de reglas, hechos, verdades, razones y los datos heursticos recopilados por expertos, que han resultado y resultan tiles en la resolucin de problemas Por ejemplo, el sueldo mensual de un cliente del Banco de Crdito le permitir al analista de crditos de dicho banco determinar el monto hasta el cual se le puede dar un prstamo al cliente y un curso de accin correspondiente como el siguiente:

Si el sueldo mensual de un cliente es menor o igual a s/. 1000.00 entonces el monto del prstamo puede ser hasta s/. 3500.00 a una tasa de inters del 3% efectiva mensual.

Como se puede apreciar en el ejemplo anterior la informacin sirve para el tomador de

conocimiento del experto, polticas y reglas de la empresa. Cabe sealar que las acciones y por reglas de sentido comn.

relaciones existentes en la llamada PIRAMIDE DEL CONOCIMIENTO:

PD

C w

w w

.s

re

Para finalizar esta parte vamos a representar todo lo aqu mencionado para que se vea las

a ca t
9

ns

ft.

dependen exclusivamente del conocimiento de los expertos que se adquieren por la experiencia

e o !

co

decisiones, en este caso el analista de crditos, el curso o accin a seguir de acuerdo al

Tr ia l

Universidad Indoamrica

Gestin Financiera

Material de Estudio - Taller 1

Cdigo: DASI601A Fecha: 2013-02-8 Versin: 1 Revisin: 1 Pgina: 10 de 5

NIVEL SABIDURIA ABSTRACCION

DE

CONOCIMIENTO

DSS

INFORMACION

SIS ISTE TEMA MAS S TRA ANSAC CC CI ONAL LE ES

PD

C w

w w

.s

re

a ca t
10

ns

e o !

ft.

co

DATOS

Tr ia l

Universidad Indoamrica

Gestin Financiera

Material de Estudio - Taller 1

Cdigo: DASI601A Fecha: 2013-02-8 Versin: 1 Revisin: 1 Pgina: 11 de 5

HISTORIA DE LOS SISTEMAS EXPERTOS Las investigaciones de los sistemas expertos comenzaron a finales de 1950. Las investigaciones lo realizaron en el rea de los lenguajes para el razonamiento simblico para procesar listas, as el primer lenguaje simblico para procesamiento de listas IPL, se utiliz ampliamente en las primeras aplicaciones de Inteligencia Artificial. Actualmente en Estados Unidos el LISP es uno de los ms populares. La investigacin especfica en SE, empez a mediados de los aos 60. Varios sistemas se desarrollaron entre 1965 y 1970, aunque estos eran de alcance limitado y orientado a juegos o temas acadmicos e idealizados.

El desarrollo de los Sistemas Expertos es relativamente nuevo, pero actualmente muchos se utilizan en una amplia variedad de organizaciones.

Hersay Age Mycin Teiresias

1965 Carnegie Mellon 1973 Stanford 1972 Stanford 1973 Stanford

re

C w

.s

PD

Prospector 1972 Stanford Rosie 1978 Rand

OPS5 1974 Carnegie Mellon Rl 1978 Carnegie Mellon Caduceus 1975 University

w w

Research Exploracin mineral e Desarrollo de sistemas expertos Desarrollo de sistemas expertos Configuracin de equipos de DEC of Diagnstico para medicina Interna

Definicin

Un Sistema Experto es una aplicacin informtica que soluciona problemas complicados que de otra manera exigira ampliamente la pericia humana. Para lograr esto se simula el

11

ns

Dendral Macsyma

1965 Stanford 1965 Mit

a ca t

Deduce informacin de Anlisis matemticos complejos Interpreta en LN, subconjunto del Genera Sistemas Expertos Diagnostico de Enfermedades de Transformacin de conocimientos

ft.

co

Sistema

Ao

Autor

e o !

Propsito

Tr ia l

Universidad Indoamrica

Gestin Financiera

Material de Estudio - Taller 1

Cdigo: DASI601A Fecha: 2013-02-8 Versin: 1 Revisin: 1 Pgina: 12 de 5

proceso de razonamiento humano, mediante la aplicacin especfica del conocimiento o inferencia.

La

f i nal i dad

pri nc i pal

de

l os

s ist emas

exper tos

es

la

c or r ect a

r epr oduc c i n

del

c om p or t a mi e nt o d e u n e xp e r t o h u ma n o e n s u d o mi ni o d e c om p et e nc i a.

Internamente un sistema experto ideal se puede caracterizar como un sistema que

PD

C w

w w

.s

re

a ca t
12

ns

e o !

ft.

co

Amplio conocimiento especfico a partir del campo de inters. Aplicacin de tcnicas de bsqueda. Soporte para anlisis heurstico. Habilidad para inferir nuevos conocimientos a partir de conocimientos ya existentes. Procesamiento de smbolos. Capacidad para explicar su propio razonamiento

Tr ia l

comprende:

Universidad Indoamrica

Gestin Financiera

Material de Estudio - Taller 1

Cdigo: DASI601A Fecha: 2013-02-8 Versin: 1 Revisin: 1 Pgina: 13 de 5

Anlisis de la solucin prctica de problemas

Consideremos, por ejemplo la respuesta de un piloto de una aerolnea ante una luz de alerta que indica una inminente falla elctrica. Supongamos que el piloto debe decidir entre ejecutar un aterrizaje de emergencia, desconectar un motor o ignorar la alarma por completo. Supongamos adems que se dan los siguientes eventos. El piloto rpidamente formula el siguiente plan de alerta. Intente verificar la luz de alarma. Si la alerta es invlida, escriba una nota en la bitcora de vuelo y contine la ruta normal, ignorando la advertencia. Si el aviso de alerta es legtimo y slo un motor est descompuesto, desconctelo. Si el aviso de alerta es autntico y ms de un motor se halla implicado, efecte un aterrizaje de emergencia. El piloto comienza a ejecutar este plan, intentando comprobar la luz de alerta. El proceso de verificacin consiste en observar la condicin general del avin, revisando los instrumentos de vuelo y solicitndole a los auxiliares de vuelo informen sobre cualquier

que los instrumentos con lecturas contradictorias operan elctricamente y se da cuenta que las luces de la cabina se prenden y se apagan concluye que la advertencia es vlida. Entonces el piloto intenta determinar si el problema se puede reducir al sistema de ejecutando una serie de pruebas de diagnstico mediante el empleo del computador de vuelo. Los resultados de la prueba no son concluyentes. Cinco pruebas indican que slo uno de los motores est afectado y una prueba seala la falla general del sistema. El piloto del hecho de que el computador en que se ejecutan las pruebas tambin energiza al sistema elctrico en cuestin. El piloto concluye que se debe realizar un aterrizaje de emergencia, basndose en el principio general que dice que es mejor intentar un aterrizaje de emergencia en una situacin controlada que continuar volando en una situacin controlada. Es muy importante que el piloto realice las tareas muy rpidamente.

EL PAPEL DEL CONOCIMIENTO EN SISTEMAS EXPERTOS Un experto muestra 2 formas distintas de pericia

PD

tambin est preocupado por la confiabilidad general de los resultados de la prueba a la luz

C w

w w

.s

generacin elctrica en uno de los motores. Trata entonces de tomar una determinacin

re

a ca t
13

ns

ft.

vertical revela que la aeronave est cayendo a 4000 pies por minuto. El piloto que observa

co

el indicador de altitud seala el nivel de vuelo normal y que el indicador de velocidad

e o !

condicin anormal. Cuando el piloto est revisando los instrumentos de vuelo, observa que

Tr ia l

Universidad Indoamrica

Gestin Financiera

Material de Estudio - Taller 1

Cdigo: DASI601A Fecha: 2013-02-8 Versin: 1 Revisin: 1 Pgina: 14 de 5

Un conocimiento general (procedimiento bsico) que es comn en muchas reas. Un conocimiento experto es el conocimiento de un rea especfica.

Esta observacin conduce a un principio que es fundamental en el diseo de SE.

LOS EXPERTOS HUMANOS Un experto humano es una persona que es competente en un rea determinada del conocimiento o del saber. Un experto humano es alguien que sabe mucho sobre un tema determinado y que puede dar un consejo adecuado. Esta experiencia slo se adquiere tras un largo aprendizaje y a base de mucha experiencia.1 Los expertos humanos tienen las siguientes caractersticas generales:

(conocimiento profundo) en un principio, y posteriormente un aprendizaje informal o prctico

Diferencias entre un experto y un no experto humano

PD

C w

(conocimiento informal).2

w w

.s

re
Alta Alta

La forma ms rpida de formar a un experto es mediante el aprendizaje formal o acadmico

a ca t
Experto Pequeo

ns

e o !
14

ft.

Son personas raras, tanto por su escaso nmero como su comportamiento poco ortodoxo y e incomprensible frente a los problemas con los que se enfrentan. Son caros por dos motivos: por su escaso nmero y por necesitar un largo periodo de aprendizaje. No estn siempre disponibles, pues son humanos y cuando se jubilan o mueren se llevan con ellos todos sus conocimientos. Es por eso que tradicionalmente estn acompaados de un aprendiz. Hay expertos que tienen mal carcter, son informales o poco comunicativos, lo que a veces les hace antipticos.

Tiempo de Resolucin Eficacia Resolutiva Organizacin

1 2

BRIAN Keith y Steven Brain, Inteligencia artificial en el dragn. SNCHEZ y Beltrn, Juan Pablo. Sistemas expertos: Una metodologa de programacin.

co

Tr ia l
NO EXPERTO Grande Baja Baja

Universidad Indoamrica

Gestin Financiera

Material de Estudio - Taller 1

Cdigo: DASI601A Fecha: 2013-02-8 Versin: 1 Revisin: 1 Pgina: 15 de 5

Estrategias y Tcticas Bsqueda de Soluciones Clculos Aproximados

S Heurstica S

No No Heurstica No

El uso de heursticas contribuye grandemente a la potencia y flexibilidad de los SE y tiende a distinguirlos

Diferencias entre un SE y un programa tradicional SISTEMA EXPERTO Conocimiento Tipo de datos Resolucin Def. problema Control Conocimientos En programa e independiente Simblicos Heurstica

3
ft.

e o !
ns
15

a ca t
.s

re
Declarativa

C w
S S

Independiente. No secuencial Imprecisos Frecuentes

w w

PD

Modificaciones Explicaciones Solucin Justificacin Resolucin

Satisfactoria

rea limitada

ROLSTON, David W. Op. cit.

co

m
No No

Tr ia l
Numricos Combinatoria Procedimental Precisos Raras Optima Especfico

an mas del software tradicional.3

PROGRAMA TRADICIONAL

En programa y circuitos

Dependiente. Secuencial

Universidad Indoamrica

Gestin Financiera

Material de Estudio - Taller 1

Cdigo: DASI601A Fecha: 2013-02-8 Versin: 1 Revisin: 1 Pgina: 16 de 5

Comunicacin

Independiente

En programa

Diferencias entre un sistema experto y un experto humano SISTEMA EXPERTO Conocimiento Adquisicin del conocimiento Campo Explicacin Limitacin de capacidad Reproducible Vida Adquirido Terico nico Siempre S EXPERTO HUMANO

3 e o !
ns
16

S, idntico

a ca t
.s

ft.

re
Infinita

PD

C w

w w

co

m
S, no valuable No Finita

Tr ia l
Adquirido + Innato Terico + Prctico Mltiples A veces

Universidad Indoamrica

Gestin Financiera

Material de Estudio - Taller 1

Cdigo: DASI601A Fecha: 2013-02-8 Versin: 1 Revisin: 1 Pgina: 17 de 5

Ventajas de los sistemas expertos

Las ventajas que se presentan a continuacin son en comparacin con los expertos humanos:

Forma en que los usuarios interactan con los SE

- TUTOR. El usuario da informacin adicional al sistema o modifica el conocimiento que ya est

- ALUMNO. El usuario busca rpidamente desarrollar pericia personal relacionada con el rea

sistema.

- CLIENTE. El usuario aplica la pericia del sistema a tareas especficas reales.

El reconocimiento de las caracterizaciones anteriores contrasta con la percepcin de un simple papel (el cliente) de los sistemas tradicionales de software.
5

4 5 6

PD

Sistema experto VS. sistema clsico La siguiente tabla compara las caractersticas de ambos tipos de sistemas6

SNCHEZ y Beltrn, Juan Pablo. Op. cit. ROLSTON, David W. Op. cit. DE VILA Ramos, Jorge. Op. cit.

w w

especfica mediante la recuperacin de conocimientos organizados y condensados del

C w

.s

re

presente en el sistema.

a ca t
17

ns

ft.

- VERIFICADOR. El usuario intenta comprobar la validez del desempeo del sistema.

e o !

co

El usuario de un SE puede estar operando en cualquiera de los siguientes modos:

Tr ia l

Estn siempre disponibles a cualquier hora del da y de la noche, y de forma interrumpida. Mantiene el humor. Pueden duplicarse (lo que permite tener tantos SE como se necesiten). Pueden situarse en el mismo lugar donde sean necesarios. Permiten tener decisiones homogneas efectuadas segn las directrices que se les fijen. Son fciles de reprogramar. Pueden perdurar y crecer en el tiempo de forma indefinida. Pueden ser consultados por personas o otros sistemas informticos.4

Universidad Indoamrica

Gestin Financiera

Material de Estudio - Taller 1

Cdigo: DASI601A Fecha: 2013-02-8 Versin: 1 Revisin: 1 Pgina: 18 de 5

Sistema Clsico

Sistema Experto del

Conocimiento y procesamiento combinados Base de conocimiento separada en un programa mecanismo de procesamiento No contiene errores Puede contener errores

No da explicaciones, los datos slo se usan Una parte del sistema experto consiste en el

Los cambios son tediosos

Los cambios en las reglas son fciles El sistema puede funcionar con pocas reglas La ejecucin usa heursticas y lgica

El sistema slo opera completo Se ejecuta paso a paso Necesita informacin completa para operar Representa y usa datos

Tipos de Sistemas Expertos

En cada uno de ellos, la solucin a un problema planteado se obtiene: Aplicando reglas heursticas apoyadas generalmente en lgica difusa para su evaluacin y aplicacin. Aplicando el razonamiento basado en casos, donde la solucin a un problema similar planteado con anterioridad se adapta al nuevo problema. Aplicando redes bayesianas, basadas en estadstica y el teorema de Bayes.

PD

Principalmente existen tres tipos de sistemas expertos: Basados en reglas. Basados en casos o CBR (Case Based Reasoning-Razonamiento Basado en Casos). Basados en redes bayesianas.

C w

w w

.s

re

Comparativa entre un Sistema Clsico y un Sistema Experto

a ca t
18

ns

e o !

Representa y usa conocimiento

ft.

co

Puede operar con informacin incompleta

Tr ia l

o escriben

mdulo de explicacin

Universidad Indoamrica

Gestin Financiera

Material de Estudio - Taller 1

Cdigo: DASI601A Fecha: 2013-02-8 Versin: 1 Revisin: 1 Pgina: 19 de 5

ESTRUCTURA BSICA DE UN S.E. Un Sistema Experto est conformado por: Base de conocimientos (BC): Contiene conocimiento modelado extrado del dilogo con el experto. Base de hechos (Memoria de trabajo): contiene los hechos sobre un problema que se ha descubierto durante el anlisis. Motor de inferencia: Modela el proceso de razonamiento humano. Mdulos de justificacin: Explica el razonamiento utilizado por el sistema para llegar a una determinada conclusin. Interfaz de usuario: es la interaccin entre el SE y el usuario, y se realiza mediante el lenguaje natural.

re
Base de

ns
Interfase para el Usuario Mquina de Inferencia
Almacenamiento de trabajo

Experiencia

PD

Experiencia

C w

Conocimiento

Conocimientos

w w

.s

Ingeniero

a ca t
de
19

e o !

ft.

co

Experto humano

Usuario

Tr ia l

Universidad Indoamrica

Gestin Financiera

Material de Estudio - Taller 1

Cdigo: DASI601A Fecha: 2013-02-8 Versin: 1 Revisin: 1 Pgina: 20 de 5

CASO DE ESTUDIO DE UN SISTEMA EXPERTO: VENDEDOR DE COCHES

EXTRACTO En este documento se describe el funcionamiento de un sistema experto de simulacin de concesionario de coches en el modo de vendedor.

Palabras clave y trminos generales Inteligencia artificial, sistema experto, heurstica, conocimientos, hechos, motor de inferencia, algoritmo, vecino ms

1. INTRODUCIN

Sistema experto de concesionario de coches que se basa en el algoritmo del vecino ms cercano (k -NN), calculando la distancia del modelo solicitado a cada uno de los modelos de la base de datos, y presentando los k primeros modelos ms cercanos. Parmetros: Marca, modelo, tipo de motor (diesel o gasolina), n de puertas, precio en la calle, potencia, consumo mixto,

Un sistema experto es una rama de la Inteligencia Artificial y es aquel que imita las actividades de un humano para resolver problemas de distinto ndole (no necesariamente tiene que ser de Inteligencia Artificial), puede definirse como "un programa de ordenador que resuelve problemas que requieren experiencia humana, mediante el uso de representacin del conocimiento y procedimientos de decisin". El conocimiento del experto en ese campo se organiza en

resultados finales y la forma en que se obtienen se expresan a travs de la interfase hombre -mquina.

Los sistemas expertos se basan en la simulacin del razonamiento humano . El razonamiento humano tiene para ellos, un doble inters: por una parte, el del anlisis del razonamiento que seguira un experto humano en la materia a fin de poder codificarlo mediante el empleo de un determinado lenguaje informtico; por otra, la sntesis artificial, de tipo mecnico, de los razonamientos de manera que stos sean semejantes a los empleados por el experto humano en la resolucin de la cuestin planteada.

La base del conocimiento representa el universo donde est el sistema, es decir, la informacin que rodea al problema. A travs del motor de inferencia sabemos cmo el experto decide cual regla aplicar a cuales datos, cmo resolver conflictos entre reglas y entre datos y cmo van a inferir los nuevos hechos o nuevos datos; y para eso debemos saber cmo piensa el experto y cmo utiliza la base del conocimiento (base de reglas y base de datos). La interfaz del usuario no slo debe ser muy fluida y facilitar el uso, sino que adems debe servir para desarrollar el sistema experto, introducir los datos, cambiar las reglas, cambiar el motor de inferencia, as como tener capacidad de circulacin y capacidad de operacin cuando se usa en el sistema experto. El sistema experto establecido se compone, por lo tanto, de dos tipos bien diferenciados de elementos, los propios del campo de los expertos relacionados con el problema concreto (es decir, la base de conocimientos y la base de hechos) y el que se puede aplicar de forma general a una gran variedad de problemas de diversos campos (como el caso del motor

PD

w w

actuar del experto explorando en la base de conocimientos hasta encontrar la solucin (motor de inferencia). Los

C w

.s

una base de conocimientos, y en funcin de los datos disponibles de la aplicacin (base de hechos) se imita la forma de

re

a ca t
20

ns

ft.

2. SISTEMA EXPERTO

e o !

co

equipacin (de 1 a 5), tamao (de 1 a 3).

Tr ia l

cercano (k-NN).

Universidad Indoamrica

Gestin Financiera

Material de Estudio - Taller 1

Cdigo: DASI601A Fecha: 2013-02-8 Versin: 1 Revisin: 1 Pgina: 21 de 5

de inferencias). Sin embargo, el motor de inferencias no es un mecanismo universal de deduccin, ya que hay dos tipos diverso: los que emplean el razonamiento aproximativo (para el cual el resultado puede ser errneo) y aquellos que emplean un tipo de razonamiento capaz de obtener un resultado (si llegan a l), con toda seguridad, verdadero.

3. TIPO DE SISTEMA EXPERTO 3.1 Tipos generales Principalmente existen tres tipos de sistemas expertos: - Basados en reglas. - Basados en casos o CBR (Case Based Reasoning). - Basados en redes bayesianas. En cada uno de ellos, la solucin a un problema planteado se obtiene:

- Aplicando reglas heursticas apoyadas generalmente en lgica difusa para su evaluacin y aplicacin.

- Aplicando el razonamiento basado en casos, donde la solucin a un problema similar planteado con anterioridad se adapta al nuevo problema.

- Aplicando redes bayesianas, basadas en estadstica y el teorema de Bayes. 3.2 Tipo estudiado

Este sistema experto se basa en reglas heursticas apoyadas en lgica difusa para su evaluacin y aplicacin.

4. ESTRUCTURA BSICA DE UN S.E. Un Sistema Experto est conformado por:

4.1 Base de conocimientos

Aloja la totalidad de las informaciones especficas relativas al campo del saber deseado. Est escrita en un lenguaje especfico de representacin de los conocimientos que contiene y en el cual el experto puede definir su propio vocabulario tcnico.

Es donde se almacena el conocimiento en el campo a desarrollar. Los conocimientos que se suelen almacenar son de cuatro tipos: - Conocimiento objetivo, que describe la situacin real del sistema. - Conocimiento de sucesos, relacionado con los sucesos que ocurren en el tiempo de ejecucin. - Conocimiento del funcionamiento del sistema, de cmo se hacen las cosas. - Metaconocimiento, que relaciona los anteriores.

Existen varias formas de representar el conocimiento:

PD

La base de conocimientos del sistema experto de venta de coches se basa en un conjunto de reglas con prioridades.

w w

Mdulos de justificacin: Explica el razonamiento utilizado por el sistema para llegar a una determinada conclusin. Interfaz de usuario: es la interaccin entre el SE y el usuario, y se realiza mediante el lenguaje natural.

C w

Base de conocimientos (BC): Contiene conocimiento modelado extrado del dilogo con el experto. Base de hechos (Memoria de trabajo): contiene los hechos sobre un problema que se ha descubierto durante el anlisis.

.s

Motor de inferencia: Modela el proceso de razonamiento humano.

re

a ca t
21

ns

e o !

ft.

co

Tr ia l

Universidad Indoamrica

Gestin Financiera

Material de Estudio - Taller 1

Cdigo: DASI601A Fecha: 2013-02-8 Versin: 1 Revisin: 1 Pgina: 22 de 5

- Marcos (Frames): son estructuras de datos donde se almacenan informacin concreta de un cierto concepto e informacin relacional para completar la definicin del concepto. Se representan por una serie de campos y los valores asociados a los mismos, pudiendo ser otro "frame". - Redes semnticas : son representaciones grficas del conocimiento, mediante nodos, que representan objetos o conjuntos de objetos, y arcos, que relacionan dichos objetos. Tanto los "frames" como las redes son representaciones descriptivas, difciles de usar para representar el razonamiento. - Reglas : es la forma ms extendida de representacin del conocimiento. Representan la forma de razonar. Tienen la forma IF <condicion> THEN <accion/conclusion>. Es importante el orden de ejecucin de las reglas, por ello se les suele dotar de prioridades. Una regla que activa otra se denomina metaregla, y se suelen usar para desarrollar progresivamente el conocimiento del experto.

Una de las tcnicas ms usadas son las entrevistas con los responsables del proceso, donde se cons ume la mayora del tiempo. Adems se suelen usar las bases de datos existentes en el sistema, aadir modelos matemticos o heursticos, y analizar el sistema mediante programas de simulacin. Tambin en entornos dinmicos como son los sistemas de produccin, se adquiere conocimiento con el tiempo. 4.2 Base de hechos

especializada de venta de coches del mercado, gua del comprador de coches y 4x4 d e Agosto de 2006. Representan el conocimiento del estado del sistema en un cierto instante. Usualmente se representa en una base de

("trigger") de una regla:

Adems el sistema dispone de la llamada base de hechos, que alberga los datos propios correspondientes a los problemas

conservar el rastro de los razonamientos llevados a cabo. Puede, por eso, emplearse para explicar el origen de las informaciones deducidas por el sistema en el transcurso de una sesin de trabajo o para llevar a cabo la descripcin del

los datos que le ha introducido el usuario del sistema, pero, a medida que va actuando el motor de inferencias, contiene las

4.3 Motor de inferencia El motor de inferencias est programado en el lenguaje de programacinjavacon los conocimientos implementados (base de conocimientos), acceso a la base de datos (base de hechos) y encadenamiento hacia adelante. Es un programa que, mediante el empleo de los conocimientos puede resolver el problema que est especificado. Lo resuelve gracias a los datos que contiene la base de hechos del sistema experto. Por regla general, el tipo de reglas que forman la base de conocimientos es tal que, si A es vlido, puede deducirse B como conclusin. En este caso, la tarea que lleva a cabo el motor de inferencias es la de seleccionar, validar y activar algunas reglas que permiten obtener finalmente la solucin correspondiente al problema planteado. Es el "supervisor", un programa que est entre el usuario y la base de conocimientos, y que extrae conclusiones a partir de los datos simblicos que estn almacenados en las bases de hechos y de conocim iento. Dependen en gran medida de la representacin elegida; por su importancia analizaremos los motores de inferencia basados en reglas.

PD

cadenas de inducciones y deducciones que el sistema forma al aplicar las reglas para obtener las conclusiones buscadas.

comportamiento del propio sistema experto. Al principio del perodo de trabajo, la base de hechos dispone nicamente de

w w

desempear el papel de memoria auxiliar. La memoria de trabajo memoriza todos los resultados intermedios, permitiendo

C w

.s

que se desea tratar con la ayuda del sistema. Asimismo, a pesar de ser la memoria de trabajo, la base de hechos puede

re

ENTONCES Tipo_Motor="ADECUADO"

a ca t
22

Hecho: Tipo_Motor=0.873

ns

Regla: SI Tipo_Motor > 0.8

ft.

co

datos, y su informacin est directamente enlazada con la base de conocimientos. Un hecho puede provocar el disparo

e o !

La base de hechos en este caso es la base con los datos de los coches, el experto entrevistado es una revista

Tr ia l

Una labor fundamental es la Adquisicin del Conocimiento y su representacin mediante alguna de las formas anteriores.

Universidad Indoamrica

Gestin Financiera

Material de Estudio - Taller 1

Cdigo: DASI601A Fecha: 2013-02-8 Versin: 1 Revisin: 1 Pgina: 23 de 5

Existen varios algoritmos de bsqueda a lo largo de las reglas para inferir conclusiones a partir de los hechos y las reglas. Todos los algoritmos son del tipo "pattern-matching", van disparando reglas a medida que se cumplen las condiciones. Se pueden diferenciar dos mecanismos de inferencia: - Encadenamiento hacia adelante: se extraen conclusiones a partir del cumplimie nto de las condiciones de ciertas reglas que, a su vez, provocarn el cumplimiento de las condiciones en otras reglas hasta que no se cumplan en ninguna de ellas. - Encadenamiento hacia atrs: se suponen ciertas las conclusiones de una regla y, como consec uencia, se van disparando aquellas reglas que provocaran la regla original. El proceso acaba si no se cumplen las condiciones de las reglas o si se cumplen para todas las reglas. Es importante destacar que la base de conocimientos y el motor de inferencia son sistemas independientes, por lo que se motor de inferencia.

4.4 Interfase hombre-mquina

El interfase hombre mquina es de dos tipos, de texto y grfico, el implementado principalmente es de texto a travs de una ventana de comandos y mostrado con un lenguaje de alto nivel (HLL) como esjava.

Establece una comunicacin sencilla entre el usuario y el sistema. El usuario puede consultar con el sistema a travs de

obtenidas del sistema experto, debido a que informacin excesiva o confusa dificulta la actuacin en tiempo real.

de lenguajes o herramientas de desarrollo.

"Lenguajes de alto nivel (HLL): son lenguajes de propsito general (C, Fortran, Basic,...). Tienen como ventajas su

programacin basada en smbolos.

"Lenguajes simblicos: fundamentalmente LISP y PROLOG. Son los lenguajes de alto nivel ms utilizados por su adaptacin a la lgica de la base de conocimientos representada mediante smbolos, y por su mecanismo de extraer conclusiones. Su eficiencia aumenta en estaciones de trabajo diseadas para dichos lenguajes.

el motor de inferencia, independiente de las bases de hechos y de conocimiento. El programador se limita a traducir dichas bases a un lenguaje preparado a tal efecto, pudiendo enlazarse con otros lenguajes para el desarrollo de funciones adicionales. Suelen estar desarrollados en LISP o PROLOG para aumentar su eficiencia. La flexibilidad es menor, aunque suelen incorporar procesadores de texto, grficos y herramientas de anlisis. "Entornos de desarrollo ("environments"): aaden a los "shells" el uso de un entorno grfico (ventanas, iconos,...) que facilita el desarrollo del sistema experto. Tienen como ventaja la disminucin del tiempo de desarrollo, pero suelen ser caros y poco flexibles. Los "shells" son los ms usados para el desarrollo de sistemas expertos, mientras que el PROLOG est muy extendido en Europa y Japn, el LISP lo est en Estados Unidos. Los entornos an ocupan un sector minoritario pero la tendencia a su utilizacin va en aumento.

5. VENTAJAS Y LIMITACIONES DEL SE 5.1 Ventajas

PD

"Herramientas de desarrollo ("shells"): son programas preparados para el desarrollo de sistemas expertos pues incorporan

C w

w w

.s

eficiencia, su familiaridad y la portabilidad a cualquier entorno, pero el inconveniente de no estar preparados para una

re

Existen cuatro alternativas para la implementacin de un sistema experto:

a ca t
23

La implementacin de un sistema experto completo obliga al desarrollo de cada uno de los elementos anteriores a travs

ns

e o !

conclusiones a partir de los hechos. En sistemas productivos se cuida la forma de p resentar al operador las rdenes

ft.

co

mens, grficos, etc., y ste le responde con resultados. Tambin es interesante mostrar la forma en que extrae las

Tr ia l

han desarrollado herramientas que nicamente necesitan la implementacin del conocimiento, llevando incorporado el

Universidad Indoamrica

Gestin Financiera

Material de Estudio - Taller 1

Cdigo: DASI601A Fecha: 2013-02-8 Versin: 1 Revisin: 1 Pgina: 24 de 5

- Permanencia: A diferencia de un experto humano un SE (sistema experto) no envejece, y por tanto no sufre prdida de facultades con el paso del tiempo. - Duplicacin: Una vez programado un SE lo podemos duplicar infinidad de veces. - Rapidez: Un SE puede obtener informacin de una base de datos y realizar clculos numricos mucho ms rpido que cualquier ser humano. - Bajo costo: A pesar de que el costo inicial pueda ser elevado, gracias a la capacidad de duplicacin el coste finalmente es bajo. - Entornos peligrosos: Un SE puede trabajar en entornos peligrosos o dainos para el ser humano. - Fiabilidad: Los SE no se ven afectados por condiciones externas, un humano s (cansancio, presin, etc.). - Los SE que se codifican alcanzan el nivel de prestaciones de un experto humano.

- La separacin entre base de conocimiento y motor de inferencia proporciona una gran flexibilidad al SE.

- Los SE permiten llegar a una reflexin sobre el conocimiento y los procedimientos para la toma de decisiones realizadas por los expertos. - Posibilidad de trazar el razonamiento seguido por el SE.

ajenos, que un SE haga esto es muy complicado.

- Capacidad sensorial: Un SE carece de sentidos.

- Flexibilidad: Un humano es sumamente flexible a la hora de aceptar datos para la resolucin de un problema.

- La publicidad realizada alrededor de esta tcnica seduce a muchas personas pero crea aspiraciones imposibles de satisfacer. - La extraccin del conocimiento es el problema ms complejo que se les plantea a los ingenieros de conocimientos.

- Ciertos problemas estn ligados a la representacin del conocimiento. - Los SE son incapaces de reconocer un problema para el que su propio conocimiento es inaplicable o insuficiente. - Los motores de inferencia poseen algunos lmites. - Las interfaces con usuarios no son lo suficientemente amigables. - Las aplicaciones suministradas por los SE son, frecuentemente, esotricas. - Falta personal competente para investigar y desarrollar aplicaciones. Campo de aplicaciones restringido y especfico. - El costo es bastante alto.

PD

- Conocimiento no estructurado: Un SE no es capaz de manejar conocimiento poco estructurado.

w w

separarlas de cuestiones secundarias.

C w

.s

- Perspectiva global: Un experto humano es capaz de distinguir cuales son las cuestiones relevantes de un problema y

re

podemos. - Capacidad de aprendizaje: Cualquier persona aprende con relativa facilidad de sus errores y de errores

24

ns

- Lenguaje natural: Con un experto humano podemos mantener una conversacin informal mientras que con un SE no

a ca t

hombre lleva 40 meses embarazado, a no ser de que se especifique que esto no es posible.

ft.

- Sentido comn: Para un SE no hay nada obvio. Por ejemplo, un sistema experto sobre medicina podra admitir que un

co

5.2 Limitaciones

e o !

- En manipulacin de smbolos los SE abren el campo a nuevas aplicaciones. no automatizadas.

- Algunos SE utilizan coeficientes de verosimilitud para ponderar sus deducciones.

Tr ia l

Universidad Indoamrica

Gestin Financiera

Material de Estudio - Taller 1

Cdigo: DASI601A Fecha: 2013-02-8 Versin: 1 Revisin: 1 Pgina: 25 de 5

6. CONCLUSIONES Un sistema experto puede, sin duda alguna, darnos el mismo resultado o mejor incluso, que un experto humano; lo que s debemos reconocer es que ningn sistema experto, hasta ahora, puede resolver diferentes problemticas dentro de una empresa, ya que estos son siempre muy especficos. Sin embargo, es de esperarse que con los avances que tienen las herramientas tecnolgicas se produzca un desarrollo cercano al comportamiento humano en muchas reas. Con estos avances en el terreno de los negocios se podra ser ms eficiente y productivo. - Pueden resolver problemas muy difciles tan bien o mejor que los expertos humano.

- Manipulan y razonan sobre descripciones simblicas. - Pueden razonar con datos que contienen errores. - Pueden contemplar mltiples hiptesis en competicin simultneamente. - Pueden explicar por qu estn formulando una pregunta. - Pueden explicar su proceso de razonamiento y justificar conclusiones.

sistemas expertos. La mayora de ellos utilizan reglas como tcnica de representacin, y han sido desarrollados mediante "shells", o en

Se podra entrenar el sistema para que los valores de la heurstica sean ptimos, a travs de aprendizaje con ejemplos y una red neuronal.

7. REFERENCIAS

PD

[1] Viejo Hernando Diego (2003). Sistemas expertos. Consultado en 06, 04, 2004 en http://www.divulga-ia.com [2] Samper Mrquez Juan Jos (2004). Introduccin a los sistemas expertos. Consultado en 06, 03, 2004 en http://www.redcientifica.com/doc/doc199908210001.html [3] Samper Juan (2003). Sistemas expertos. El conocimiento al poder. Consultado en 06, 03, 2004 en http://www.psycologia.com/articulos/ar-jsamper01.htm. [4] Criado Briz Jos Mario (2002). Introduccin a los sistemas expertos. Consultado en 06, 05, 2004 en http://ingenieroseninformatica.org/recursos/tutoriales/sist_exp /cap 1 .php. [5] Wikipedia (2004). Sistema experto. Consultado en 06, 03, 2004 en http://es.wikipedia.org/wiki/Sistema_experto. [6] Castro Marcel (2002). Sistemas expertos. Consultado en 06, 04, 2004 en http://strix.ciens.ucv.ve/~iartific/Material/PP_Sistemas_Exper tos.pdf. [7] Flix Justo (2004). Aplicaciones, ventajas y limitaciones de los sistemas expertos. Consultado en 06, 04, 2004 en http://efelix.iespana.es/efelix/expertaplicaciones.htm. [8] Montes Cerra Maria Clara (2003). Sistemas expertos. Consultado en 06, 05, 2004 en http://dis.eafit.edu.co/labs

C w

w w

.s

re

a ca t
25

lenguajes simblicos.

ns

e o !

conocimiento de expertos. El entorno de la produccin es uno en donde se han desarrollado ms prototipos y aplicaciones de

ft.

co

Como conclusiones se puede decir que los sistemas expertos estn siendo muy utilizados en aquellos entornos donde se necesite el

Tr ia l

- Razonan usando reglas e interactan con los humanos de forma adecuada, incluyendo el lenguaje natural.

Universidad Indoamrica

Gestin Financiera

Material de Estudio - Taller 1

Cdigo: DASI601A Fecha: 2013-02-8 Versin: 1 Revisin: 1 Pgina: 26 de 5

LENGUAJES UTILIZADOS EN LA CONSTRUCCIN DE SE

LISP LISP, acrnimo de lenguaje de Procesamiento de Listas, fue inventado por John McCarthy y su equipo en la Universidad de Stanford a finales de 1950. Originalmente fue creado como un modelo computacional de procesos matemticos, reflejando el rigor de las propias matemticas.7

LISP actualmente est diseado para manejar smbolos matemticos (variables), por lo que es utilizado perfectamente para la investigacin en IA, donde un smbolo puede representar cualquier cosa. LISP tiene dos caractersticas principales que lo hacen sobresalir de entre los dems lenguajes para IA; primero, es altamente flexible, es decir, es posible escribir un programa LISP para producir cualquier comportamiento deseable de la computadora; segundo, es indefinidamente extensible, lo que significa que si como programador siente que a LISP le falta alguna caracterstica, puede escribir un programa LISP que provea dicha caracterstica y hacer que ese programa forme parte de su LISP personal.

LISP utiliza un ciclo llamado leer evaluar imprimir. Cuando el programador teclea algo en LISP, el lenguaje toma lo que se ha tecleado, intenta responder de cualquier forma y despus tecleado es leer ; el trmino usado para tratar de responder de cualquier forma es evaluar; y el trmino usado para desplegar la respuesta en la pantalla es imprimir. Si hubiera una persona en vez de una mquina en frente del programador, diramos que dicha persona estara escuchando, comprendiendo y respondiendo al programador.8 despliega dicha respuesta en la pantalla. El trmino en LISP usado para ver lo que se ha

LISP utiliza los siguientes conceptos caractersticos:

7 8

PD

Listas y tomos. La estructura ms importante es la lista. Los tomos pueden subordinarse a cualidades. La Funcin. Cada funcin LISP y cada programa LISP tiene estructura de lista. Los programas no pueden distinguirse sintcticamente de los datos. LISP ofrece sus propias funciones bsicas.

HASEMER, Tony y John Domingue. Common LISP Programming for Artificial Inteligence. Ibid.

C w

w w

.s

re

a ca t
26

ns

e o !

ft.

co

Tr ia l

Universidad Indoamrica

Gestin Financiera

Material de Estudio - Taller 1

Cdigo: DASI601A Fecha: 2013-02-8 Versin: 1 Revisin: 1 Pgina: 27 de 5

Forma de Trabajo. LISP es un lenguaje funcional. Ofrece la posibilidad de realizar definiciones recursivas de funciones. La unin de procedimientos se realiza de forma dinmica, es decir en plena ejecucin, no como en otros lenguajes de programacin. El sistema realiza automticamente una gestin dinmica de memoria. Los tomos son nmeros, cadenas de caracteres o smbolos. Un smbolo puede tener varios valores, al igual que una variable en otros lenguajes de programacin, como por ejemplo un nmero, o tambin puede ser el nombre de una funcin, o incluso ambos. Adems a un smbolo se le pueden subordinar cualidades, que adems del valor del smbolo, contienen informacin adicional. Estas cualidades tambin reciben el nombre de atributos.

Un componente importante de un sistema LISP es la gestin dinmica de la memoria. El sistema administrar el espacio en la memoria para las listas en constante modificacin, sin que el usuario lo deba solicitar. Libera los espacios de memoria que ya no son necesarios y los pone a disposicin de usos posteriores. La necesidad de este proceso se deriva de la estructura bsica de LISP, las listas, que se modifican de forma dinmica e ilimitada.

Consta de algunos cmodos mdulos que ofrecen ayuda en el desarrollo y control del progreso estn en versiones de LISP que contengan la conocida interfaz grfica IDE (entorno de

CLIPS

construccin basado en reglas y objetos. CLIPS est siendo utilizado por numerosos usuarios como la NASA (que es su creadora), muchas universidades y empresas. CLIPS viene de (C Language Integrated Production System) y como su nombre indica uno de los objetivos que buscaban sus creadores era la fcil integracin con programas en C. As, al darle una portabilidad con programas en lenguaje C, las universidades que lo usan pueden trasladar fcilmente sus aplicaciones al entorno del agente.9

BAARES, Jos ngel. Herramientas URL(http://diana.cps.unizar.es/IA/noticias.html)

PD

CLIPS es otra herramienta para el desarrollo de S.E. que ofrece un entorno completo para su

C w

w w

.s

re

desarrollo integrado) tpica de los modernos lenguajes visuales.

a ca t

en programas, como son el Editor, el File-System y el Trace. Por supuesto estos mdulos slo

ns

e o !

Adems un sistema LISP abarca bastante ms que el solo intrprete del lenguaje LISP.

ft.
para

co
las

3
asignaturas del IAIC.

27

Tr ia l

Universidad Indoamrica

Gestin Financiera

Material de Estudio - Taller 1

Cdigo: DASI601A Fecha: 2013-02-8 Versin: 1 Revisin: 1 Pgina: 28 de 5

Prolog Prolog es un lenguaje de programacin que se centra alrededor de un conjunto pequeo de mecanismos, incluyendo reconocimiento de patrones, estructuras de datos basadas en rboles y bactraking (retroceso) automtico. Este conjunto pequeo constituye una estructura de programacin sorprendentemente poderosa y flexible. Prolog es ideal para resolver problemas que involucren objetos en particular objetos estructurados y relaciones entre ellos. Por ejemplo, un ejercicio muy sencillo en Prolog es expresar relaciones espaciales, de la forma: la esfera azul detrs de la verde.10

Prolog naci en Europa, y fue implementado primeramente para dar soporte al Procesamiento del Lenguaje Natural (PLN). Prolog trabajaba (y sigue hacindolo hasta nuestros das) esencialmente con la lgica matemtica.11 Bratko completa el comentario afirmando que Prolog como un lenguaje de programacin.12 naci de una idea de programacin lgica que emergi a principios de 1970, para usar la lgica

lgica computacional matemtica y algunos aspectos procedurales de la programacin Prolog escribe un conjunto declarativo de reglas y hechos con sus respectivas relaciones. en Prolog.

aprender. Pero los programadores profesionales con muchos aos de experiencia a menudo lo encuentran revuelto y confuso. Lo revuelto de Prolog es su simplicidad y que no tiene las caractersticas ms comunes de los lenguajes procedurales.13

10 11

WALKER Adrian, Michael Mc Cord, John Sowa y Walter Wilson. Knowledge Based Systems and Prolog.
12 13

PD

Walker afirma que nios de 10 aos de edad encuentran a Prolog como un lenguaje sencillo de

BRATKO Ivn. Op. cit.

BRATKO Ivan. Op. cit. WALKER Adrian, Michael Mc Cord, John Sowa y Walter Wilson. Op. cit

C w

Debido a esto, los diagramas de flujos y las tcnicas convencionales de programacin no aplican

w w

.s

re

convencional. En vez de escribir un procedimiento con una secuencia de pasos, un programador

a ca t
28

ns

ft.

Prolog tiene cierto vigor hbrido en el sentido de que contiene caractersticas declarativas de la

e o !

co

Tr ia l

Universidad Indoamrica

Gestin Financiera

Material de Estudio - Taller 1

Cdigo: DASI601A Fecha: 2013-02-8 Versin: 1 Revisin: 1 Pgina: 29 de 5

Entre tales caractersticas con las que no cuenta Prolog se encuentran:

Sentencias de asignacin. Sentencias goto. Sentencias if then else. Ciclos do, ciclos for y ciclos while.

Sin embargo, Prolog compensa tales caractersticas con las siguientes, las cuales lo hacen un

Smalltalk

en objetos. Fue originalmente inventado por Alan Kay en Xerox PARC en 1972, pero mucha convertido en una opcin muy popular en diversos campos como los videojuegos y la Inteligencia

Virtualmente todo lo que existe en un sistema Smalltalk es una instancia de una clase particular de objeto y generalmente puede haber tantas instancias como se deseen. Esto significa que se pueden tener cualquier nmero de instancias de cualquier caracterstica del sistema activas al mismo tiempo.14

C y C++ C es uno de los lenguajes de programacin ms populares en uso. Proporciona un esqueleto estructurado sin lmites para la creatividad del programador; una de las ventajas de C sobre otros

14

PD

TELLO, Ernest. Op. cit.

Artificial.

C w

gente le ha hecho importantes contribuciones al diseo del lenguaje. Este lenguaje se ha

w w

.s

re

Smalltalk fue el primer lenguaje de programacin que fue diseado para basarse exclusivamente

a ca t
29

ns

e o !

ft.

co

Predicados que expresan relaciones entre entidades. Un mtodo para definir predicados mediante reglas de asercin y hechos. Un mtodo para hacer preguntas para comenzar cmputos. Un procedimiento de bsqueda hacia atrs para evaluar metas. Estructura de datos que pueden simular registros estilo Pascal o listas estilo Lisp. Un reconocedor de patrones que construye y analiza las estructuras de datos. Un conjunto de predicados preconstruidos para aritmtica, entrada y salida y servicios de sistemas.

Tr ia l

lenguaje poderoso para la representacin del conocimiento:

Universidad Indoamrica

Gestin Financiera

Material de Estudio - Taller 1

Cdigo: DASI601A Fecha: 2013-02-8 Versin: 1 Revisin: 1 Pgina: 30 de 5

lenguajes usados para investigacin en IA es que es un lenguaje estructurado y adems, si su aplicacin no requiere usar la tcnica Backtracking ni los recursos de una base de datos, estos no se convierten en un peso extra que debe soportar la aplicacin.

No hay una sola tcnica de IA que no pueda ser desarrollada en un lenguaje procedimental como lo es C. De hecho, el desarrollo de ciertas rutinas es en verdad ms claro en C que un lenguaje de IA.

En cuanto a C++ se puede decir que es una extensin orientada a objetos de C, la cual permite utilizar la metodologa orientada a objetos para la creacin de diversos sistemas y programas, incluso los de IA. 15

15

PD

SCHILDT Herbert. Op. cit.

C w

w w

.s

re

a ca t
30

ns

e o !

ft.

co

Tr ia l

Universidad Indoamrica

Gestin Financiera

Material de Estudio - Taller 1

Cdigo: DASI601A Fecha: 2013-02-8 Versin: 1 Revisin: 1 Pgina: 31 de 5

HERRAMIENTAS Y SHELLS UTILIZADOS EN LA CONSTRUCCIN DE SE Inicialmente cada SE que se creaba se construa a partir de un lenguaje de IA tal como LISP. Pero despus de que muchos SE se construyeron as, quedo claro que estos sistemas estaban construidos como un conjunto de representaciones declarativas (reglas) combinado con un intrprete de estas representaciones; tambin quedo claro que era posible separar el intrprete del conocimiento especfico del dominio y por lo tanto se podan crear sistemas que podan ser usados para construir nuevos SE agregando simplemente conocimiento correspondiente al dominio del nuevo problema.

As nacieron los shells los cuales sirven como base para muchos SE, ya que proporcionan mucha flexibilidad en representacin del conocimiento y razonamiento, as como adquisicin de conocimiento. 16

son SE sin su base de conocimiento, es decir, se pueden utilizar de forma genrica para

MEDTOOL

Gold Works II

Esta herramienta de programacin creada por Gold Hill Computers Inc. se ejecuta bajo LISP y utiliza la metodologa orientada a objetos. Este programa corre en computadoras IBM compatibles, Macintosh y estaciones de trabajo Sun.

Las caractersticas que realzan a este programa incluyen una herramienta dinmica de grficos que permite la creacin de imgenes activas as como tambin permite desarrollar interactivamente interfaces grficas dinmicas sin tener que escribir ni una lnea de cdigo; tambin se incluyen visores orientados a grficos para marcos, reglas y afirmaciones (aserciones). Se integra fcilmente con C.

16

PD

RICH Elaine y Kevin Knight. Op. cit.

C w

Para desarrollar Sistemas Expertos

w w

.s

re

a ca t
31

ns

ft.

cualquier tema.

e o !

co

A continuacin se mencionan algunos de los principales shells de SE, que como ya se mencion,

Tr ia l

Universidad Indoamrica

Gestin Financiera

Material de Estudio - Taller 1

Cdigo: DASI601A Fecha: 2013-02-8 Versin: 1 Revisin: 1 Pgina: 32 de 5

ART ART es una herramienta que tiene un nmero de caractersticas poderosas para el desarrollo de SE, por ejemplo, permite la construccin de varios escenarios o mundo hipotticos, los cules pueden ser explorados automticamente para determinar su deseabilidad. De esta forma varios escenarios alternos pueden ser explorados para probar un plan estratgico dado con un conjunto de sentencias dado.

La caracterstica de esquema es otro aspecto de este programa el cual provee una representacin orientada a objetos para sistemas resolutores de problemas basados en conocimientos.17

LOOPS

estructura de mltiples paradigmas que permitan tantas opciones de entre paradigmas de principales: el paradigma orientado a objetos, el paradigma basado en reglas, el paradigma programacin orientado a objetos, LOOPS permite la creacin de jerarquas de clases e instancias de dichas clases.

KEE

KEE, acrnimo de

PD

herramientas de desarrollo orientados a objetos de SE ms avanzada en la actualidad. Hoy en da tiene un considerable uso en esfuerzos mayores de desarrollo tanto en el sector comercial como en el gobierno.

Las funciones en KEE se implementan como extensiones de LISP, de manera que todo el vocabulario del lenguaje LISP puede usarse en conjuncin con las funciones predefinidas. El

17

TELLO Ernest. Op. cit.

C w

Ambiente de Ingeniera del Conocimiento, de IntelliCorp es una de las

w w

.s

orientado a accesos y el paradigma procedural normal. Como cualquier otro sistema de

re

programacin como sea posible. La versin actual soporta cuatro paradigmas de programacin

a ca t
32

ns

ft.

ambiente LOOPS es proveer un sistema de programacin de IA que pueda soportar una

co

LOOPS fue desarrollado en el Xerox PARC en 1983. Una de las ideas centrales en el diseo del

e o !

Tr ia l

Universidad Indoamrica

Gestin Financiera

Material de Estudio - Taller 1

Cdigo: DASI601A Fecha: 2013-02-8 Versin: 1 Revisin: 1 Pgina: 33 de 5

sistema entero esta construido en una estructura de objetos, que en el ambiente son llamados unidades.

Humble Humble es un Shell orientado a objetos para SE escrito en Smalltalk que combina reglas con encadenamiento hacia delante y hacia atrs con representacin de objetos, paso de mensajes y uso de objetos. Las reglas de sintaxis usadas en Humble son una versin modificada de la construir bloques if then else. sintaxis de Smalltalk. A diferencia de la mayora de los shells, Humble tiene la capacidad de

La caracterstica principal de Humble es que las reglas operan sobre entidades. Las entidades son un importante tipo de objeto que tienen una representacin especfica. En las aplicaciones las entidades se categorizan en un nmero de tipos diferentes los cules son definidos por el desarrollador o por el Ingeniero de conocimientos.

EMYCIN

uno de los SE ms exitosos en la poca de los setentas. Se construy con el fin de que fuera cual fue creado). Este shell utiliza un lenguaje, llamado ARL, el cual es una notacin de Algol y diferentes tipos de conocimiento (no se puede hacer diferencia entre conocimiento de control y conocimiento a cerca de los valores esperados de los parmetros), por lo que el agregar una nueva regla tambin se vuelve un proceso complicado.
18

18

VALDIVIA Rosas, David. URL(http://www.fortunecity.com/skycraper/romrow/207/se/Portada.html)

PD

provee facilidades para monitorear el comportamiento de reglas. Sin embargo es difcil distinguir

C w

usado para otros fines, adems del diagnstico de enfermedades en la sangre (objetivo para el

w w

.s

re

EMYCIN es acrnimo de Empty MYCIN (MYCIN vaco); este shell fue creado a partir de MYCIN,

a ca t

ns

e o !
33

ft.
Sistemas

co

Tr ia l

Expertos.

Universidad Indoamrica

Gestin Financiera

Material de Estudio - Taller 1

Cdigo: DASI601A Fecha: 2013-02-8 Versin: 1 Revisin: 1 Pgina: 34 de 5

PD

C w

w w

.s

re

a ca t
34

ns

e o !

ft.

co

Tr ia l

Universidad Indoamrica

Gestin Financiera

Material de Estudio - Taller 1

Cdigo: DASI601A Fecha: 2013-02-8 Versin: 1 Revisin: 1 Pgina: 35 de 5

PD

C w

w w

.s

re

a ca t
35

ns

e o !

ft.

co

Tr ia l

Universidad Indoamrica

Gestin Financiera

Material de Estudio - Taller 1

Cdigo: DASI601A Fecha: 2013-02-8 Versin: 1 Revisin: 1 Pgina: 36 de 5

PD

C w

w w

.s

re

a ca t
36

ns

e o !

ft.

co

Tr ia l

Das könnte Ihnen auch gefallen