You are on page 1of 31

FACULTADDEINGENIERA

ESCUELADEINGENIERADESISTEMASYCOMPUTACIN

SISTEMASEXPERTOS:PROGRAMANDOLOS
CONOCIMIENTOSDEUNAPERSONA
Autor:JosLuisQuepuyTernero

Curso:MetodologadelTrabajoIntelectual
Profesor:GerardoRalChungaChinguel
SemestreLectivo:20140

ChiclayoPer
Febrero,2014

DEDICATORIA
Elpresentetrabajovadedicadoalnotable
esfuerzodemimadre,demitoymisabuelos.
Aelloslesdeboloquesoy,porhaberhechodemi
unapersonantegraydegrandesvalores.

AGRADECIMIENTO
ADios,queesmifortaleza,porponerenmivida
aestosngelesterrenalesllamados"amigos".
Alosgrandesmaestrosqueheconocido
durantemividaprofesional,elcualannoculmina.
Amismgicasprincesasque,consussonrisas,
medevolvanelalientoparacontinuar.
Y,enespecial,amiseoritaenamorada:Paola,
porlosnimosysuapoyosiempre.
Aestosseresthankssomuch.

RESUMEN

El objetivo de este trabajo es dar a conocer, mediante una precisa descripcin, lo que son los
Sistemas Expertos (SE) los cuales son conocidos tambin como Sistemas Basados en
Conocimiento. Pues, se basan en conocimientos propios que tiene un profesional en
determinada rea. As mismo, mostrar brevemente los orgenes, conceptos, aplicaciones,
ventajas,limitaciones,ylaarquitecturabsicadeestecampodelaInteligenciaArtificial.

Como conclusin ms resaltante, los Sistemas Expertos son software inteligentes, pues
almacenan los conocimientos de un experto humano para, posteriormente, usarlo en la
solucindeunproblemaemergente.

Palabrasclave:SistemasExpertos,BasedeConocimientos,BasedeHechos,Motorde
Inferencia,InteligenciaArtificial.

NDICE

DEDICATORIA

AGRADECIMIENTO

RESUMEN

NDICE

INTRODUCCIN

CAPTULOI:FundamentossobrelosSistemasExpertos
1.1.BreveHistoriadelosSistemasExpertos
1.2.DefinicindeSistemaExperto
1.3.ClasificacindeSistemaExperto
1.4.ArquitecturadeunSistemaExperto
1.5.CaractersticaspropiasdeunSistemaExperto

6
6
8
9

CAPTULOII:ImplementacinyEjemplosdeunSistemaExperto
2.1.AplicacionesdeunSistemaExperto
2.2.CmodesarrollarunSistemaExperto?
2.3.CmoprogramarunSistemaExperto?
2.4.EjemplosdeReglasenlosSE
2.4.1.Ejemplo1,pordefinicindedatos
2.4.2.Ejemplo2,pordefinicindereglas
2.4.3.Cmobuscanlossistemasexpertos?
2.4.4.Ejemplodebsquedaprimeroenprofundidad

10
13
15
15
16
18
22
22
23

CAPTULOIII:Ventajas,desventajasylimitacionesdeunSistemaExperto
26
3.1.VentajasdeunSistemaExperto
3.2.DesventajasdeunSistemaExperto
27
3.3.LimitacionesdeunSistemaExperto
27

24
24

26

CONCLUSIONES

29

REFERENCIASBIBLIOGRFICAS

30

INTRODUCCIN
En la actualidad el cambiante mercado competitivo se vuelve ms complejo por la gran
diversidad de informacinquelas empresassevenobligadosaalmacenaryanalizar,raznpor
la cual estas empresassevenenlanecesidadderecurrirapoderosasyrobustasherramientas
o sistemas que les sirvan de soporte a la hora de tomar decisiones. Es as como nacen los
denominados Sistemas Expertos, los cuales tienen la finalidad debrindarposiblessolucionesa
determinados casos con un elevado porcentaje de exactitud. Deesta forma estos inteligentes,
precisos y eficientes sistemas son adoptados por ms organizaciones, en las cuales se
conviertenenunaimportanteestrategiadenegocio.
Este trabajo est organizado de la siguiente forma: En el primer captulo hablaremos
brevemente sobre cmo,a lolargo de la historia, nace este trmino. Por lo que definiremos lo
que es un sistema experto, cmo se clasifican, cul es su arquitectura y caractersticas ms
resaltantes. El segundo captulo describe las aplicaciones en que se puede aprovechar un
sistema experto, cmodesarrollar ycmollegaraprogramarlos.Paraesteltimo,semuestran
sencillos ejemplos de aplicacin lgica y uno prctico. El tercer y ltimo captulo describe las
ventajas,desventajasylimitacionesdetodoSistemaExperto.
Por otra parte es importante mencionar que, los denominados Sistemas Expertos, seguirn
siendousadosentodasycadaunadelasreasy/ocampos,dondelosexpertos humanossean
escasos. Por consecuencia de lo anterior, estos sistemas son utilizados por personas no
especializadasporloque,asuvez,lespermiteadquirirconocimientos.

CAPTULOI:FundamentossobrelosSistemasExpertos
Durante aos laactividad de la Inteligencia Artificial estuvo dedicadaalasinvestigaciones
tericas y al desarrollo de experimentos a travs de programas que demostraran
actitudes inteligentes, con estos programas se pretenda que una mquina de
computadora jugar ajedrez, demostrara teoremas matemticos, genere probabilidades
estadsticas,etc.
No fue hasta los aos 70 enquesurgiunnuevoparadigmaenlaInteligenciaArtificiallos
Sistemas Expertos, cuya funcin es desarrollar trabajos similares a los quedesarrollara
un especialista en un rea determinada, pero la idea no essustituir alos expertos sino,
ms bien, que estos sistemas sirvan de apoyo a los especialistas en un dominio de
aplicacinespecfica.1

1.1.BreveHistoriadelosSistemasExpertos
Los Sistemas Expertos nacen como consecuencia de la InteligenciaArtificial. Elcual es
un software que imita el comportamiento de un experto humano en la solucin de un
problema y que adems, pueden almacenar conocimientos de expertos para un campo
determinadoysolucionarunproblemamediantededuccinlgicadeconclusiones.2
Para un mejor entendimiento de lo que es un SE, sehacredoconvenientedaraconocer
de manera muy resumida, el cmo se ha desarrollado esta nuevatecnologaalolargode
lahistoria.
LosSistemasExpertoshanevolucionadosegnelordensiguiente:
A inicios de los aos 50 ya se hablaba de Mquinas (computadoras) con inteligencia
propia, con la capacidad de aprender, razonar y actuar en determinadas situaciones. Es
as como el matemtico britnico Alan Mathison Turing, despus de varios aos de
estudios en este campo, public La Inteligencia y funcionamiento de las mquinas, en
1950, con el fin de demostrar hasta qu punto las mquinas contaban con inteligencia.
Ese mismo ao, un notable matemtico estadounidense, Norbert Wiener, desarrollara el
principiodelaretroalimentacin.Lacualesbasefundamentaldelossistemasdecontrol.

AlejandroMadruga.Soyunciberntico,Queesunsistemaexperto?.
http://cibernetica.wordpress.com/2007/03/09/%c2%bfqueesunsistemaexperto/.(accedidoenero18,2014)
2

JosCriadoBriz.IngenierosenInformtica,Introduccinalossistemasexpertos.
http://ingenieroseninformatica.org/recursos/tutoriales/sist_exp/cap1.php.(accedidoenero06,2014)

Aos ms adelante, en 1955, Newell y Simon desarrollan la Teora de la lgica. Cuyo


desarrollo permiti crear un programa que exploraba la solucin aunproblema,utilizando
ramas y nudos, seleccionando nicamente las ramas que ms parecan acercarse a la
solucincorrectadelproblema.
Luego, en1956,unjovenJohnMcCarthyconvocaraaunaconferenciaenDartmouth. En
donde, este mismo personaje, acu all el trmino Inteligencia Artificial. A esta
conferencia asistieron tambin Minsky, Newell y Simonpersonajes quienesmsadelante
aportarancongrandesconocimientosenestanuevareadelainformtica.
En 1957, durante esta dcada los investigadores Alan Newell y Herbert Simon
desarrollaron un programa llamado GPS (General Problem Solver solucionador general
de problemas), el cual poda trabajar con criptoaritmtica, con las torres de Hani ycon
otros problemas similares. Pero lo que no poda hacer el GPSeraresolverproblemasdel
mundoreal,talescomoundiagnsticomdico.
Posteriormente, en 1958, McCarthy anuncia su nuevo desarrollo,el lenguaje LISP (LISt
Processing). El lenguaje de eleccin para todos aquellos desarrolladores inmersos en el
estudiodelaIA.
A partir de 1965, un equipo dirigido por Edward Feigenbaum,comenz a desarrollar SE
utilizando bases de conocimiento definidas minuciosamente. Dos aos ms tarde se
construye DENDRAL, elcual es considerado como el primer SE. La funcin dedichoSE
eraidentificarestructurasqumicasmolecularesapartirdelanlisisespectrogrfico.
Junto a esto, en 1970, se produce el advenimiento de los Sistemas Expertos. Desde
entonces losSistemasExpertossehanutilizadoparaayudaralosmdicosadiagnosticar
enfermedadeseinformaralosminerosaencontrarvetasdemineral.
Luego, en 1972, aparece el lenguaje PROLOGUE basado en las teoras de Minsky.
OrientadotambinaldesarrollodeIA.
Finalmente, en 1987,Martin Fischles y Oscar Firschein describieron los atributos de un
agenteinteligente.Loscualesdebantener,losiguiente:
Actitudesmentalestalescomocreenciaseintenciones.
Capacidaddeobtenerconocimiento,esdecir,aprender.
Puede resolver problemas, inclusoparticionando problemas complejos en otros
mssimples.
Entiende. Posee lacapacidaddecrearle sentido,siesposible,aideasambiguas
ocontradictorias.
Planifica, predice consecuencias, evala alternativas (como en los juegos de
ajedrez).

Conoceloslmitesdesupropiashabilidadesyconocimientos.
Puededistinguirapesardelassimilituddelassituaciones.
Puede ser original, creando incluso nuevos conceptosoideas,yhastautilizando
analogas.
Puedegeneralizar.
Puedepercibirymodelarelmundoexterior.
Puedeentenderyutilizarellenguajeysussmbolos.
En los 90, la IA se utilizara de forma efectiva en la Guerra del Golfo sobre sistemasde
misiles visores para los soldados y otros avances, y al mismo tiempo, invade nuestros
hogaresyvidacotidianaenmuchosmslugares.
Desde entonces, se han ido investigando y desarrollando nuevas formas de aprovechar
los SE. Por lo que,diremos que laIA,esunanuevatecnologaemergenteyenexpansin.
La cual posee caractersticas humanas, como el aprendizaje, la adaptacin, el
razonamiento, la autocorreccin, el mejoramiento implcito, y la percepcin modular del
mundo.

1.2.DefinicindeSistemaExperto
Demanerageneral,decimosque:
Un sistema experto puede definirse como un sistema basado en los
conocimientos que imita el pensamiento de un experto, para resolver problemas
deunterrenoparticulardeaplicacin.

En la literatura existente se pueden encontrar muchas definiciones de sistema experto.


Porejemplo,Stevens(1984),pgina40,nosdaladefinicinsiguiente:
Los sistemas expertos son mquinas que piensan y razonan como un experto
lo hara en una cierta especialidad o campo. Por ejemplo, un sistemaexpertoen
diagnsticomdicorequeriracomodatoslossntomasdelpaciente,losresultados
de anlisis clnicos y otroshechos relevantes, y, utilizando estos,buscaraenuna
base de datos la informacin necesaria para poder identificar la correspondiente
enfermedad.[...] Un Sistema Experto de verdad, no solo realiza las funciones
adicionales de manejar grandes cantidades de datos, sino que tambin manipula
esos datos de forma tal que el resultado sea inteligible y tenga significado para
responderapreguntasinclusonocompletamenteespecificadas..
Aunque lo anterior no es todava una definicin razonable de un sistema experto, han

surgido desde entonces otras definiciones, debido al rpido desarrollo de la tecnologa.


Como es el caso de Castillo y lvarez (1991) y Durkin (1994). El sentido de estas
definicionespuederesumirsecomosigue:
Un sistema experto puede definirse como un sistema informtico (hardware y
software)quesimulaalosexpertoshumanosenunreadeespecializacindada.
Como tal, un sistema experto debera ser capaz de procesar y memorizar
informacin, aprender y razonar en situaciones deterministas e inciertas,
comunicar a los usuarios, tomar decisiones apropiadas, y explicar el por qu se
hantomadotalesdecisiones.3

Por loque,estossistemasexpertossonenloesencialsistemas decomputacinbasados


en conocimientos cuyos componentes representan un enfoque cualitativo de la
programacin. Muchas personas pueden creer que un Sistema Experto (SE) es un
sistema compuesto por subsistemas ya su vezestosporotrossubsistemashastallegar
a los programas, y que los SE se miden por lacantidadde programasquecontienen.Sin
embargo, la cantidad no es lo que prima en los SE, sino la cualidad del mismo, esta
cualidad est dada por la separacin de las reglas que describen el problema (Base de
Conocimientos), del programa de control que es quien selecciona las reglas adecuadas
(Motordeinferencias).4
En resumen, podemos decir que un Sistema Experto es una Base de Conocimientos
(BC), una Base de Hechos (BH) y un Motor (o Mquina) de Inferencias (MI). Y por otra
parte estos sistemas no se midenpor la cantidad de instrucciones o programas sino por
la cantidad de reglas que hay contenida en su Base de Conocimientos. Dichas
deducciones,lasdefiniremosaldetalleenelapartado2.3Arquitectura.

1.3.ClasificacindeSistemaExperto
Principalmente los sistemas expertos, segn la naturaleza de problemas para los que
estn diseados,
pueden clasificarse en dos tipos: problemas esencialmente
deterministasyproblemasesencialmenteestocsticos.
Problemas de tipo determinista, son aquellos sistemas completamente predictivos,
3

EnriqueCastillo,yotros,eds.,SistemasExpertosyModelosdeRedesProbabilsticas(Universidadde
Cantabria,Santander,Espaa,1998),34.
4

AlejandroMadruga.Soyunciberntico,Queesunsistemaexperto?.
http://cibernetica.wordpress.com/2007/03/09/%c2%bfqueesunsistemaexperto/.(accedidoenero18,2014)

pero siempre y cuando se conozcan sus entradas. Por lo que, pueden ser formulados
usando un conjuntodereglasquerelacionanvariosobjetosbiendefinidos.Los sistemas
expertos quetratanproblemasdeterministassonconocidoscomosistemasbasadosen
reglas, porque sacan sus conclusiones basndose en unconjunto de reglas utilizando
unmecanismoderazonamientolgico.
Ejemplo: Sistemas Expertos usadospara transacciones bancarias. Pues, en estos, ya
sedefinenlasreglasdeloquestesistemarealizarendeterminadassituaciones.

Problemas de tipo estocsticos, son aquellos cuyo comportamiento es no


determinista, en la medida que el subsiguiente estado del sistema est determinado
tanto por las acciones predecibles del proceso como por elementos aleatorios. Por lo
que un SE estocstico opera utilizando mtodos probabilsticos para solucionar
problemas, como el algoritmo de enfriamiento simulado, las redes neuronales
estocsticas, la optimizacin estocstica, los algoritmos genticos y la programacin
gentica. Un problema puede ser estocstico por s mismo, por el solo hecho de
planificarbajoincertidumbre.
Ejemplo: Sistemas Expertos usados en el campo mdico, ya que lasrelaciones entre
sntomas y enfermedades se conocen solo con un cierto grado decertezapuestoque,
la presencia de un conjunto de sntomas no siempre implica la presencia de una
enfermedad.

1.4.ArquitecturadeunSistemaExperto5
La arquitectura de los SE, se entienden mejor cuando se examinan sus principales
componentes. Estas componentes se muestran esquemticamente en la siguiente
imagen,yseexplicanacontinuacin:

EnriqueCastillo,yotros,eds.,SistemasExpertosyModelosdeRedesProbabilsticas(Universidadde
Cantabria,Santander,Espaa,1998),1014.

10

Fuente:ConceptosbsicossobresistemasexpertosComponentesdeunSE

A. ElExpertoy/oComponenteHumana
Un sistema experto es generalmente el resultado de la colaboracin de uno o varios
expertos humanos especialistas en eltemade estudioylos ingenierosdelconocimiento
(programadores). Los expertoshumanos suministranelconocimientobsicoeneltema
de inters, y los ingenieros del conocimiento trasladan esteconocimientoaunlenguaje,
que el sistemaexpertopuedaentender. Esta etaparequiereunaenormededicacinyun
gran esfuerzo debido a los diferentes lenguajes que hablan las distintas partes y a las
diferentesexperienciasqueestastienen.

B. LaBasedeConocimiento
Los especialistas son responsables de suministrar a los ingenieros del conocimiento
una base de conocimiento ordenada y estructurada, y un conjunto de relaciones bien
definidas y explicadas. Esta forma estructurada de pensar requiere que los expertos
humanos repiensen, reorganicen, y reestructuren la base de conocimiento y, como
resultado, el especialista se convierte en un mejor conocedor de su propio campo de
especialidad.
Hay que diferenciar entre datos y conocimiento. El conocimiento se refiere a
afirmaciones de validez general tales como reglas, distribuciones de probabilidad, etc.
Los datos se refieren a la informacin relacionada con una aplicacin particular. Por
ejemplo, en diagnstico mdico, los sntomas, las enfermedades ylas relaciones entre
ellos, forman parte del conocimiento, mientras los sntomas particulares de unpaciente
dado forman parte de los datos. Mientras el conocimiento espermanente,losdatosson

11

efmeros, es decir, no forman partede la componente permanentede unsistemayson


destruidos despus de usarlos. El conocimiento se almacena en la base de
conocimiento y los datos se almacenan en la memoria de trabajo. Todos los
procedimientosdelosdiferentessistemasysubsistemasque sondecarctertransitorio
sealmacenantambinenlamemoriadetrabajo.

C. MotordeInferencia
El motor de inferencia es el corazn de todo sistema experto. El cometido principal de
esta componente es el de sacar conclusiones aplicando el conocimiento a los datos.
Por ejemplo, endiagnsticomdico,lossntomasdeun paciente(datos)sonanalizados
a la luz de los sntomas, y las enfermedades y de sus relaciones (conocimiento). Las
conclusiones del motor de inferencia pueden estar basadas en conocimiento
determinista o conocimiento probabilstico. Como puede esperarse, el tratamiento de
situaciones de incertidumbre (probabilsticas) puede ser considerablemente ms difcil
que el tratamiento de situaciones ciertas (deterministas). En muchos casos, algunos
hechos (datos) no se conocen con absoluta certeza. Por ejemplo, pinsese en un
pacientequenoestsegurodesussntomas.Puededarseelcasodetenerquetrabajar
solo con conocimiento de tipo nodeterminista, esdecir,decasosenlosquesedispone
slo de informacin aleatoria odifusa.Elmotordeinferenciaestambinresponsablede
la propagacin de este conocimiento incierto. De hecho, en los sistemas expertos
basados en probabilidad, la propagacin de incertidumbre eslatareaprincipaldelmotor
de inferencia, que permite sacar conclusiones bajo incertidumbre. Esta tarea es tan
compleja que da lugar a que esta sea probablemente la componente ms dbil de casi
todoslossistemasexpertosexistentes.

D. LaBasedeHechos
Es la que alberga los datos propios correspondientes a los problemas que se desea
tratar con laayudadelsistema.Asimismo,apesardeserlamemoriadetrabajo,labase
de hechos puede desempear el papel de memoria auxiliar. La memoria de trabajo
memoriza todos los resultados intermedios, permitiendo conservar el rastro de los
razonamientos llevadosacabo.Puede,poreso,emplearseparaexplicarelorigendelas
informacionesdeducidasporelsistemaeneltranscursodeunasesindetrabajoopara
llevar a cabo la descripcin del comportamiento del propio sistema experto. Al principio
del perodo de trabajo, la base de hechos dispone nicamente de los datos que le ha
introducido el usuario del sistema, pero, a medida que va actuando el motor de
inferencias, contiene lascadenasdeinduccionesydeduccionesqueelsistemaformaal
aplicarlasreglasparaobtenerlasconclusionesbuscadas.

12

E. InterfazdeUsuario
La interfaz de usuario es el enlace entre el sistema experto y el usuario.Por ello, para
que un sistema experto sea una herramienta efectiva, debe incorporar mecanismos
eficientes para mostrar y obtenerinformacin de forma fcil y agradable.Unejemplode
lainformacinquetienequesermostradatraseltrabajodelmotordeinferencia,eselde
las conclusiones, las razonesque expliquen tales conclusionesyunaexplicacindelas
acciones iniciadaspor el sistemaexperto. Por otra parte, cuandoel motordeinferencia
no puede concluir debido, por ejemplo, a la ausencia de informacin, la interfaz de
usuario es un vehculo para obtener la informacin necesaria del usuario.
Consecuentemente, una implementacin inadecuada de la interfaz de usuario que no
facilite este proceso minara notablemente la calidad de unsistema experto. Otrarazn
de la importancia dela interfaz de usuario esquelosusuariosevalancomnmentelos
sistemas expertos y otros sistemas por la calidad de dicha interfaz ms que por la del
sistema experto mismo, aunque, como se dice, no se deber juzgarla calidad de un
libroporsuportada.

1.5.CaractersticaspropiasdeunSistemaExperto
Una de las principales caractersticas de un sistema experto es su capacidad para
aprender. Este aprendizaje se divide en aprendizaje estructural y aprendizaje
paramtrico.
Por aprendizaje estructural nos referimos a algunos aspectos relacionados con la
estructura del conocimiento (reglas, distribuciones de probabilidad, etc.). Por ello, el
descubrimiento de nuevos sntomas relevantes para una enfermedad o la inclusin de
unanuevareglaenlabasedeconocimientosonejemplosdeaprendizajeestructural.
Por aprendizaje paramtrico nos referimos a estimar los parmetros necesarios para
construir la base de conocimiento. Por ello, la estimacin de frecuencias o
probabilidades asociadas a sntomas o enfermedades es un ejemplo de aprendizaje
paramtrico.
Habilidad paraobtener experiencia a partir delos datosdisponibles.Estosdatospueden
ser obtenidos por expertos y no expertos, y pueden utilizarse por el subsistema de
adquisicindeconocimientoyporelsubsistemadeaprendizaje.
De las componentes antes mencionadas puede verse que los sistemas expertos
puedenrealizarvariastareas.Estastareasincluyen,peronoselimitan,alassiguientes:

13

Adquisicin de conocimiento y la verificacin de su coherencia por lo que el


sistema experto puede ayudar a los expertos humanos a dar conocimiento
coherente.
Almacenar(memorizar)conocimiento.
Preguntarcuandoserequierenuevoconocimiento.
Aprenderdelabasedeconocimientoydelosdatosdisponibles.
Realizar inferencia y razonamiento en situaciones deterministas y de
incertidumbre.
Explicarconclusionesoaccionestomadas.
Comunicar con los expertos y no expertos humanos y con otros sistemas
expertos.

14

CAPTULOII:ImplementacinyEjemplosdeunSistemaExperto
Para poder implementarSistemasExpertos(SE),esnecesario sabercmodesarrollarun
SE, qu etapas seguirycmoprogramarunSE.Enestecaptuloaprenderemostodoello,
yfinalmentecrearemosunsencilloejemplo.

2.1.AplicacionesdeunSistemaExperto6
Los sistemas expertos, se aplican a una gran diversidad de campos y/o reas, como la
informtica, electrnica, educacin, agricultura, militar, transporte, etc. sin embargo, sus
principales aplicaciones se dan en las gestiones empresariales.. En esta seccin se dan
unos pocos ejemplos del tipo de problemas que pueden resolverse mediante sistemas
expertos.
Ejemplo 1, transacciones bancarias: No hace mucho, para hacer una transaccin
bancaria, tal como depositar o sacardinerodeunacuenta,unotenaquevisitarelbanco
en horas de oficina. Hoy en da, esas y otras muchas transacciones pueden realizarse
en cualquier momento del da o de la noche usando los cajeros automticos que son
ejemplos sencillos de sistemas expertos. De hecho, se pueden realizar estas
transacciones desde casa comunicndose con el sistema experto mediante la lnea
telefnicaoelinternet.
Ejemplo 2, control de trfico: El control de trfico es una de las aplicaciones ms
importantes de los sistemas expertos. No hace mucho tiempo, el flujo de trfico en las
calles de una ciudad se controlaba mediante guardias de trfico que controlaban el
mismo en las intersecciones. Hoy se utilizan sistemas expertos que operan
automticamente los semforosyregulanelflujodeltrficoen lascallesdeunaciudady
enlosferrocarriles.
Ejemplo 3, gestiones empresariales: En donde un SE realizarlasfuncionesbsicas
de tratamiento de la informacin, para: contabilidad general, ayudar en la toma de
decisionesfinancieras,gestindelatesorera,planificacin,etc.LaventajaesqueunSE
puede llegar a manejar grandes volmenes de informacin y realizar operaciones
numricasrapidsimas.
Ejemplo 4, problemas de planificacin: Los sistemas expertos pueden utilizarse
tambin para resolver problemas complicados de planificacin de forma que se
6

EnriqueCastillo,yotros,eds.,SistemasExpertosyModelosdeRedesProbabilsticas(Universidadde
Cantabria,Santander,Espaa,1998),4.

15

optimicen ciertos objetivos como, por ejemplo, la organizacin y asignacin de aulas


para la realizacin de exmenes finales en una gran universidad, de forma tal que se
logrenlosobjetivossiguientes:
Eliminar las coincidencias de asignacin simultnea de aulas: Solo se puede
realizarunexamenencadaaulaalmismotiempo.
Asientos suficientes:Un aula asignada para unexamendebeteneralmenosdos
asientosporestudiante.
Minimizar los conflictos temporales: Minimizar el nmero de alumnos que tienen
exmenescoincidentes.
Eliminar la sobrecarga de trabajo: Ningn alumno debe tener ms de dos
exmenesenunperiodode24horas.
Minimizarelnmerodeexmenesrealizadosdurantelastardes.

Adems los SE tambin se aplican en la contabilidad en apartados como: Auditora,


Fiscalidad,planificacin,anlisisfinancieroylacontabilidadfinanciera.

2.2.CmodesarrollarunSistemaExperto?7
Al igual que para desarrollar un sistema de informacin convencional existen varias
metodologas de desarrollocomolaIngenieradelaInformacin,tendenciasestructuradas
y orientadas a objetos as existen varias metodologas para desarrollar un sistema
experto. Metodologas como las de Buchanan, Grover, Brule, Blanque y Garca Martnez,
KADS entre otras. Sin embargo, Weiss y Kulikowski (1984) sugieren las etapas
siguientesparaeldiseoeimplementacindeunsistemaexperto:

EnriqueCastillo,yotros,eds.,SistemasExpertosyModelosdeRedesProbabilsticas(Universidadde
Cantabria,Santander,Espaa,1998),1516.

16

Fuente:SistemasExpertosyModelosdeRedesProbabilsticas(Pg.15)

Describiendolasetapasdelaimagen,tenemos:
Planteamiento del problema: La primera etapa en cualquier proyecto es normalmente
la definicin del problema a resolver. Puesto que el objetivo principal de un sistema
experto es responder a preguntas y resolver problemas, esta etapa es quizs la ms
importante en el desarrollo de un sistema experto. Si el sistema est mal definido, se
esperaqueelsistemasuministrerespuestaserrneas.
Encontrar expertos humanos que puedan resolverelproblema.Enalgunoscasos,sin
embargo,lasbasesdedatospuedenjugarelpapeldelexpertohumano.
Diseo de un sistema experto: Esta etapa incluye el diseo de estructuras para
almacenar el conocimiento, el motor de inferencia, el subsistema de explicacin, la
interfazdeusuario,etc.
Eleccin de la herramienta de desarrollo, shell, o lenguaje de programacin: Se
debe decidirsi realizarun sistema expertoamedida,outilizarunshell,unaherramienta,
o un lenguaje de programacin. Si existiera un shell que satisfaga todos los

17

requerimientos del diseo, esta deber ser la eleccin, no solo por razones de tipo
financiero sino tambin por razones de fiabilidad. Las conchas y herramientas
comercialesestnsujetasacontrolesdecalidad,alosqueotrosprogramasnoloestn.
Desarrollo y prueba de un prototipo: Si el prototipono pasa las pruebas requeridas,
las etapas anteriores(conlasmodificacionesapropiadas)debenserrepetidashastaque
seobtengaunprototiposatisfactorio.
Refinamiento y generalizacin: En esta etapa se corrigen los fallos y se incluyen
nuevasposibilidadesnoincorporadaseneldiseoinicial.
Mantenimiento y puesta al da: En esta etapa elusuarioplanteaproblemasodefectos
delprototipo,corrigeerrores,actualizaelproductoconnuevosavances,etc.

NOTA: Todas estas etapas influyen en la calidad del sistema experto resultante, que
siempredebeserevaluadoenfuncindelasaportacionesdelosusuarios.

2.3.CmoprogramarunSistemaExperto?8
Para desarrollar y programar los sistemasexpertos primero es necesario (tal y como se
haba definido en el captulo II) abordar un rea de inters, dentro de esta rea se
seleccionan alos expertos, que son los especialistas capacesde resolverlosproblemas
en dicha rea. Por ejemplo, el rea de inters de las empresas de proyectos de
construccin, sonprecisamentelos proyectos, y un especialista podra ser unarquitecto,
uningenierocivil,entreotros.
Ahora bien,casi siempreestos especialistas, son expertos en undominioespecficoyes
sobre este dominio, donde poseen su mayor experiencia (Dominio de Experticidad), por
ejemplounIng.civilquetengaespecialidadencimientos.
Una vez seleccionado al experto o a los expertos, y estos estn de acuerdo en dar sus
conocimientos, comienza a jugar su papel el Ingeniero de Conocimientos, que es el
encargado de extraer los conocimientos al experto y darle una representacin adecuada,
ya sea en forma de reglas u otro tipo de representacin, conformando as la base de
conocimientosdelsistemaexperto.
Formasderepresentacindelosconocimientos:
8

AlejandroMadruga.Soyunciberntico,Queesunsistemaexperto?.
http://cibernetica.wordpress.com/2007/03/09/%c2%bfqueesunsistemaexperto/.(accedidoenero18,2014)

18

Reglasdeproduccin.
Redessemnticas.
Marcos(Frames).

La forma de representacin ms usada es por reglas de produccin, tambin llamadas


reglas de inferencias. Casi todos los sistemas expertos estn basados en este tipo de
representacin,ahoranosocuparemosdelossistemasbasadosenreglas.
Lasreglasdeproduccinsondeltipo:
SIPremisaENTONCESConclusin(SIAENTONCESB).
Donde tanto las premisas como la conclusin, no son ms que una cadena de hechos
conectadosporYoporO,deformageneralsera:
SIHecho1Y/OHecho2Y/OHechoNENTONCESHecho1Y/OHechoN
Los hechosson afirmaciones que sirven para representar conceptos, datos, objetos,etc
yelconjuntodehechosquedescribenelproblemaeslabasedehechos.
Segn el lenguaje de programacin Prolog (recomendable para programar SE), estas
reglassondeltipo:
SiH1yH2yH3,entoncesHc
De dnde, llegaremos hasta Hc (Hecho de Conclusin), siempre y cuando se
cumplatodoslosdemshechos(H).
Porloque,tendramosque:
HcsiH1yH2yH3y
Yfinalmente,llegamosalasiguientesintaxis:
Hc:H1,H2,H3,
Dondeloshechossonunconjuntodepredicadosquedebencumplirse.
Ejemplo:
Regla#1:SiX>3yY=5entoncesZ=3yA<5.
En caso que X no sea mayorque 3 la regla falla y se buscar otra regla.Eneste

19

caso debe cumplirse ambas condiciones (para la X y la Y). En tanto, la regla se


cumpla,entoncesseejecutarlaaccinparaZyA.
Por lo tanto, los hechos son afirmaciones que se refieren a los conceptos (clases y
objetos)yalasrelaciones(atributos)entreellos.
Ahora, veamos como es que se representan estos hechos en diferentes aplicaciones de
laIA:

MYCIN(software)
Sistema Experto desarrollado a principios de los aos 70 por Edgar ShortLiffe, en la
Universidad de Stanford. Fue escrito en Lisp, y su funcin principal consista en el
diagnstico de enfermedades infecciosas de la sangre adems, MYCIN era capaz de
"razonar" el proceso seguido para llegar a estos diagnsticos, y recetar medicaciones
personalizadasacadapaciente(segnsuestatura,peso,etc.)
Ejemplodecmoclasificabaestesoftwareunaentrada:

DENDRAL(software)
Sistema Experto desarrollado a mediadosdelosaos60porEdwardFeigenbaum,enla
Universidad de Stanford. Inicialmente escrito en Lisp, fue el primer sistema experto en
ser utilizado para propsitos reales, en investigaciones sobre estructuras moleculares
usadosporqumicosybilogos.
Ejemplodecmoclasificabaestesoftwareunaentrada:

PROLOG(Shell)

20

Proveniente del francs PROgrammation en LOGique. Este es un lenguaje de


programacin que utiliza un paradigma lgico y declarativos, y que se centraalrededor
de un conjunto pequeo de mecanismos, incluyendo reconocimiento de patrones,
estructura de datos basadas en rboles y backtraking (retroceso) automtico. Es ideal
para resolver problemas que involucren objetos estructurados y las relaciones entre
ellos.
Ejemplo:

EXSYS(software)
Esunsistemaexpertobasadoenreglasconmuchasmejoras,talescomoFrames,
Blackboardsyellenguajedecomandosdeprocedimiento(ProceduralCommand
Language).ClusulascomoIFTHENELSEqueseutilizanparadescribirlalgicadel
sistema.
Ejemplo:

R1(Shell)
Este software permite introducir la basede conocimiento sinpreocuparsedeprogramar
los otros componentes principales del sistema (motor de inferencia e interfaz de
usuario).Sinembargo,sedebeincluirfactoresdecerteza.
Ejemplo:

21

NOTA: Estos lenguajes descomponen, claramente, una oracin, un trmino, un


conocimiento en palabrasque,pormedio dehechos,unsistemaexpertolograrconjugar
yarrojarunresultado.

2.4.EjemplosdeReglasenlosSE9
Enrelacinalodescritoanteriormente,semostrarejemplosprcticosdeestasreglas.
2.4.1.Ejemplo1,pordefinicindedatos

Juanesunestudiante.
Juantiene8aos.
Elperroesblanco.
AMaralegustaelcine.
Pedroprefierelapelcula.
LaedaddeLuisesde25aos.
Pedrotieneunsalariode200soles.
Para resolver este ejemplo, debemos tener en cuenta una serie de reglas. Las cuales
resultan de la combinacin de hechos, los cuales permiten representar conocimientos y
sacarinferenciasdelosmismos.
Porloque,representandoestosconocimientosenreglas,podramostener:
Regla#1:SIJuanesestudianteYJuantiene8aosEntoncesJuanestudiaenlaprimaria.
Regla#2:SIelperroesblancoYelperrosellamaDinkyENTONCESelperroesdeJuan.
Regla #3: SI a Mara le gusta la pelcula Y Juan prefiere lapelotaENTONCEShacenfalta
lostelevisores.
Observe cmo partiendo de hechos conocidos, que describen algn conocimiento, se
pueden inferirnuevos hechos (nuevos conocimientos). Por otra parte la regla#2,notiene
porque ser totalmente cierta, existela posibilidad de que elperrono sea de Juan quizs
se puedeafirmar, si furamos a cuantificar esa posibilidad, queelperroperteneceaJuan
con una certeza de un 80%, y por ltimo la regla #3 es dependiente del contexto, ya que
aqu se supone que ambos (Juan y Mara) viven juntos y que los programas de TV
9

AlejandroMadruga.Soyunciberntico,Conceptosbsicossobresistemasexpertos.
http://cibernetica.wordpress.com/2012/12/04/conceptosbasicossobresistemasexpertos/.(accedidoenero18,
2014)

22

coinciden.

2.4.2.Ejemplo2,pordefinicindereglas

Regla#1:Sitieneespinadorsal,
Ytienecolahorizontal,
Ytieneunagujeropararespirar,
Ytienesangrecaliente,
Ylospequeossonalimentadosconlechematerna,
Yloshijosnacendirectamentevivos.
Entoncesesuncetceo.
Regla#2:Siesuncetceo,
Ymidemsde25pies.
Entoncesesunaballena
Regla#3:Siesuncetceo,
Ymideaproximadamente6pies,
Ytienelaaletatopevertical,
Ytieneunanarizromapequea,
Yvivecercadelascostas.
Entoncesesunamarsopa
Regla#4:Siesuncetceo,
Ymideaproximadamente6pies,
Ytienelaaletatopevertical,
Ytieneunanarizenformadepico,
Yviveenelmar.
Entoncesesundelfn.
Regla#5:Sitieneespinadorsal,
Ytieneunaaletavertical,
Yrespiraatravsdebranquias,
Entoncesesunpez.
Regla#6:Siesunpez,
Ytienelaaletatopetriangular,
Ytienelabocadebajodelacabeza,
Entoncesesuntiburn.
Observe,como aqu,sedefinieronlasreglasparaloscetceosyapartirdeestasedefini

23

aldelfn,alaballena,alamarsopa,etc.Igualsucediparalospeces.

Entonces,deestosmencionadosejemplos,saltalasiguienteinterrogante:

2.4.3.Cmobuscanlossistemasexpertos?

Habiendo dadoun estadoinicial,sevangenerandoestadosatravsdelaaplicacin deun


conjunto de reglas, las cuales al aplicarse originan un nuevoestado, as sucesivamente
hastaalcanzarelestadofinal.
Por lo que, en consecuencia, habr unestadoinicialyunestadofinal,queserndefinidos
como:
1.

Una base de hechos en la cual aparecer un hecho que satisface ciertas


caractersticas.

2.

Una base de hechos en la cual habrn desaparecido todos los hechos a


establecer.

3.

Unabasedehechostalqueningunareglapuedeaportarunanuevamodificacin.

Los puntos 1y 3 soncomnmente adoptados por los motores de encadenamiento hacia


delante,mientrasel2esadoptadopormotoresconencadenamientohaciaatrs.

2.4.4.Ejemplodebsquedaprimeroenprofundidad

Tomemos el ejemplo delas tinas,donde se parte de dos tinas(recipientesparacontener


agua) y se quiere lograr que la de 4 galones tenga2 galones.Las tinasnotienesmarcas
queindiquenlacantidaddegalones.
Vamos a definir algunas reglas de forma general, considerando las siguientes
restricciones:
1)Siunatinasellenhastaeltope,nollenarlaotra.
2)Siunatinaseacabadellenarhastaeltope,nosepuedebotar.

Ordendelasreglas:

24

1ro.Aplicarreglasparaelcriteriodesolucin.
2do.Aplicarreglasparallenarlastinas.
3ro.Aplicarreglasparavaciardeunaparaotra.
4to.Aplicarreglasparabotarelcontenidodeunadeella.

Criteriodesolucin:
Regla#1:Si(latinade4)(tiene)(dosgalones)entoncesSOLUCIN.
Regla#2:Si(latinade3)(tiene)(dosgalones)y(latinade 4)(estavacia)entonces
(vaciarelcontenido)(para)(latinade4).
Regla #3: Si (la tina de 3) (tiene) (dos galones) y (la tina de 4) (no) (esta vacia)
entonces(botarelcontenidode)(latinade4).

Veamoscmosevaefectuandolabsquedapasoapaso:
Estadoinicial:(0,0)ambastinasvacias
Estado1:(0,0)>(0,4)Sellenaunadelastinas(lade4galones).
Estado2:(0,4)>(3,1)Sevacaelcontenidodelade4enlade3galones.
Estado3:(3,1)>(0,1)Sebotaelcontenidodelatinade3galones
Estado4:(0,1)>(1,0)Sevacaelcontenidodelade4enlade3galones.
Estado5:(1,0)>(1,4)Sellenalatinade4galones.
Estado6:(1,4)>(3,2)Sevacalatinade4enlade3galones
Estadofinal(3,2)Sealcanzalasolucinalquedar2galonesenlatinade4
Este ejemplo ha sido desarrollado en HTML, la resolucin del mismo lapuedenencontrar
en el siguiente enlace (se recomienda guardar el archivo como *.html y ejecutar en
cualquiernavegador):
EjemplodeTinasdesarrolladoconSE

25

CAPTULOIII:Ventajas,desventajasylimitacionesdeun
SistemaExperto
Hasta aqu, no todo es, digamos: positivo, beneficioso en los sistemas expertos.
Puesto que estos, as como tiene una granventajaensuuso,tambintienendesventajas
ylimitaciones.Veamos:

3.1.VentajasdeunSistemaExperto10
Estos programas proporcionan la capacidad de trabajar con grandes cantidades de
informacin, que son uno de los grandes problemas que enfrenta el analista humanoque
puede afectar negativamente a la toma de decisiones pues el analista humano puede
depurar datos que no considere relevantes, mientrasunSEdebidoasugranvelocidadde
proceso analiza toda la informacin incluyendo las no tiles para deesta manera aportar
unadecisinmsslida.
Entreotrasventajas,tenemos:
a. Permanencia: A diferencia de un experto humano un SE no envejece, y por tanto no
sufreprdidadefacultadesconelpasodeltiempo.
b. Duplicacin:UnavezprogramadounSElopodemosduplicarinfinidaddeveces.
c. Rapidez: Un SE puede obtener informacin de una base de datos y realizar clculos
numricosmuchomsrpidoquecualquierserhumano.
d. Bajo costo: A pesarde que el costo inicial pueda ser elevado,graciasalacapacidadde
duplicacinelcostefinalmenteesbajo.
e. Entornos peligrosos:Un SE puede trabajar en entornos peligrosos odainosparaelser
humano.
f.

Fiabilidad: Los SE no se ven afectados por condiciones externas, un humano s


(cansancio,presin,etc.).

g. Consolidarvariosconocimientos.
10

PaulPeterson.PaulPetersonSlideShare,VentajasyAplicacindelosSistemasExpertos.
http://www.slideshare.net/PaulPeterson/ventajasyaplicacindelossistemasexpertos474422.(accedidofebrero
01,2014)

26

h. Apoyo Acadmico. Siempre estn dispuestos a dar explicaciones, asistiro ensear ala
gente,ascomoaaprender.
i.

Estn disponibles ininterrumpidamente de da y noche, ofreciendo siempre su mximo


desempeo.

j.

Siempre se ajustan a lasnormasestablecidasysonconsistentesensudesempeo,no


desarrollanapreciacionessubjetivas,tendenciosas,irracionalesoemocionales.

k. Nopadecedeolvido,fatiga,dolorocometeerroresdeclculo.
l.

Norequiereunsueldo,promociones,segurosmdicos,incapacidades.

m. Ylomsimportante,esquepuedentenerunavidadeservicioilimitada.

3.2.DesventajasdeunSistemaExperto11
a. Necesidaddeadiestramientoparasumanejo.
b. Necesidad de aprender el lenguaje de programacin del mismo para poder usarlo
adecuadamente. Este lenguajes extremadamente lgico y formal. Con un ser humano
estonoocurre.
c. Sentido Comn: Para un SE nada es obvio,tododebetenerunaconnotacinestructural
ya que si esto no seejecutadeesaforma,sencillamenteladataderespuestanoserla
adecuada.
d. Rigidez: Un SE es sumamente rgido a la hora de recibir una informacin, debido a la
estructuradesuprogramacin.

3.3.LimitacionesdeunSistemaExperto
a. Es evidente que para actualizar se necesita de reprogramacin de estos (tal vez este
sea una de sus limitaciones ms acentuadas) otra de sus limitaciones puede ser el
elevado costo en dinero y tiempo, adems que estos programas son poco flexibles a
11

AlejandroTapia.AlejandroTapiaSlideShare,Inteligenciaartificialysistemasexpertos.
http://www.slideshare.net/Alejandrojpt/inteligenciaartificialysistemasexpertos.(accedidoenero16,2014)

27

cambiosydedifcilaccesoainformacinnoestructurada.
b. Debido a la escasez de expertos humanos en determinadas reas, los SE pueden
almacenar su conocimiento para cuando sea necesario poder aplicarlo. As mismo los
SE pueden ser utilizados por personas no especializadas para resolver problemas.
AdemssiunapersonautilizaconfrecuenciaunSEaprenderdel.
c. Por otra parte la inteligencia artificial no ha podido desarrollar sistemas que sean
capaces de resolver problemas de manera general, de aplicar el sentido comn para
resolversituacionescomplejasnidecontrolarsituacionesambiguas.
d. El futuro de los SE da vueltas por la cabeza de cada persona, siempre que el campo
elegido tenga la necesidad y/o presencia de un experto para la obtencin de cualquier
tipodebeneficio.

28

CONCLUSIONES
Los sistemas expertos son desarrollos de la investigacin en el campo de la inteligencia
artificial. Un sistema experto es un programa de computador que simula la forma en que los
expertoshumanossolucionanproblemas,esdecir,esuntomadordedecisionesartificial.
Los sistemas expertos son herramientas basadas en el computador que estn diseadaspara
que operen como soportes de decisiones inteligentes.Porejemplo,sehanconstruidosistemas
expertos para ayudar a gelogos a decidir dnde perforar para obtener petrleo a banqueros,
para evaluar solicitudes de prstamos a tcnicos enventasdecomputadores,enlamanera de
configurar sistemas de computadoras y a empleados, a decidir entre un amplio nmero de
alternativasdeprestacionesdelacompaa.
Adems, llegamos a la conclusin de que, los problemas cuyas soluciones requieren toma de
decisionessonbuenoscandidatosparaeldesarrollodesistemasexpertos.
La mayora delos sistemasexpertosestnconformadospor varios componentes,entrelosque
se cuentan la base de conocimientos, motor de inferencia y base de hechos. Existe una
variedad de "shells" o editores para la creacin de bases de conocimiento para sistemas
expertos, que es parte de la actividad que conlleva al pensamiento crtico. Considerando que,
para la construccin de la base de conocimientos requiere que el programador incorpore el
conocimientocausal.
Y por ltimo, el xito de un SE depende casi exclusivamente de la calidad de su base de
conocimiento. El inconveniente es que codificar la pericia de un expertohumanopuederesultar
difcil, largo y laborioso. Sin embargo, el resultado, puede ayudar significativamente en la toma
dedecisionesenundeterminadonegocio.

29

REFERENCIASBIBLIOGRFICAS

BuenasTareassitioweb,BaseDeHechosInteligenciaArtificialEnsayosdeColegas
Kibsal.
http://www.buenastareas.com/ensayos/BaseDeHechosInteligenciaArtificial/268014.ht
ml.(accedidoenero31,2014).
Castillo,Enriqueetal.,eds.,SistemasExpertosyModelosdeRedesProbabilsticas.
UniversidaddeCantabria,Santander,Espaa,1998.
CastroMarcel.SistemasExpertos.
http://strix.ciens.ucv.ve/~iartific/Material/PP_Sistemas_Expertos.pdf.(accedidofebrero
01,2014).
CriadoB.Jos.Introduccinalossistemasexpertos.
http://ingenieroseninformatica.org/recursos/tutoriales/sist_exp/cap1.php.(accedidoenero
06,2014).
EditorialParaninfo.Inteligenciaartificial:modelos,tcnicasyreasdeaplicacin,2003.
http://books.google.com.pe/books?id=_spC6S7UfZgC(accedidoenero15,2014).
MadrugaAlejandro.Conceptosbsicossobresistemasexpertos.
http://cibernetica.wordpress.com/2012/12/04/conceptosbasicossobresistemasexperto
s/.(accedidoenero18,2014).
MadrugaAlejandro.Queesunsistemaexperto?.
http://cibernetica.wordpress.com/2007/03/09/%c2%bfqueesunsistemaexperto/.
(accedidoenero18,2014).
Monografiassitioweb,Sistemasexpertos(SE)Monografias.com.
http://www.monografias.com/trabajos16/sistemasexpertos/sistemasexpertos.shtml.
(accedidoenero18,2014).
Monografiassitioweb,SistemaexpertodeinteligenciaartificialMonografias.com.
http://www.monografias.com/trabajos96/sistemaexpertointeligenciaartificial/sistemaex
pertointeligenciaartificial.shtml.(accedidoenero17,2014).

PetersonPaul.VentajasyAplicacindelosSistemasExpertos.

30

http://www.slideshare.net/PaulPeterson/ventajasyaplicacindelossistemasexpertos4
74422.(accedidofebrero01,2014).
QuintanarToms.SistemasExpertosysusAplicaciones.
http://www.uaeh.edu.mx/docencia/Tesis/icbi/licenciatura/documentos/Sistemas%20expe
rtos%20y%20sus%20aplicaciones.pdf.(accedidofebrero12,2014).
TapiaAlejandro.Inteligenciaartificialysistemasexpertos.
http://www.slideshare.net/Alejandrojpt/inteligenciaartificialysistemasexpertos.(accedido
enero16,2014).
UniversidaddeOviedo.Introduccinalainteligenciaartificial:sistemasexpertos,redes
neuronalesartificialesycomputacinevolutiva,2001.
http://books.google.com.pe/books?id=RKqLMCw3IUkC(accedidoenero15,2014).

31

You might also like