Sistema Experto: Deteccin de trastornos de la personalidad en el Banco Interbank
Universidad Nacional De Trujillo
Ing. Informtica Trujillo Per Ing. Jos Arturo Daz Pulido Castaeda Castillo Carlos carlos.e.c.castillo@gmail.com Santilln Hualln Daniel santillanhuallandaniel@hotmail.com Ulloa Paredes Ivn ulloaparedesivan@hotmail.com
RESUMEN Se implementara un sistema experto cuyo propsito ser ayudar en la seleccin del personal adecuado en el Banco de Crdito reduciendo tiempo y costo. Para ello primero haremos una breve descripcin de los sistemas expertos y de su importancia. Palabras Clave: Sistema Experto, trastornos, inteligencia artificial, base de conocimiento, motor de inferencia, base de hechos. 1. INTRODUCCIN Antes de la aparicin de la computadora, el hombre ya se preguntaba si se le arrebatara el privilegio de razonar y pensar. En la actualidad existe un campo dentro de la inteligencia artificial al que se le atribuye esa facultad: el de los Sistemas Expertos. Estos sistemas permiten la creacin de mquinas que razonan como el hombre, restringindose a un espacio de conocimientos limitado. En teora pueden razonar siguiendo los pasos que seguira un experto humano (mdico, analista, empresario, etc.) para resolver un problema concreto. Este tipo de modelos de conocimiento por ordenador ofrece un extenso campo de posibilidades en resolucin de problemas y en aprendizaje. A partir de la aparicin de las computadoras hasta nuestros das, la gente ha invertido grandes esfuerzos por tratar de dar una cierta capacidad de decisin a estas mquinas, incluso un cierto grado de inteligencia. Estos esfuerzos se han visto reflejados en los Sistemas Expertos, los cuales, en s no tienen verdadera Inteligencia Artificial; ms bien, es un sistema basado en el conocimiento que, mediante el buen diseo de su base de conocimientos y un adecuado motor de inferencias para manipular dichos datos proporciona una manera de determinar resoluciones finales dados ciertos criterios. Los Sistemas Expertos son una herramienta poderosa en el apoyo o gua de los usuarios en los procesos que tienen una secuencia pasos definida, pero que puede ser configurable.
1.1. Usos de un Sistema Experto El uso de Sistemas Expertos ser adecuado all donde los expertos dispongan de conocimientos complejos en un rea estrechamente delimitada, donde no existan algoritmos elaborados (o donde los existentes no puedan solucionar algn problema) y no existan teoras completas. Otro uso es all donde hay teoras, pero resulta prcticamente imposible analizar todos los casos tericamente imaginables mediante algoritmos y en un espacio de tiempo razonable.
Segn la clase de problemas hacia los que estn orientados, podemos mencionar algunos campos en los que se utiliza un SE, entre los que cabe destacar diagnosis, pronstico, planificacin, reparacin e instruccin.
Los sistemas de diagnosis siguen un proceso de bsqueda de las razones del funcionamiento incorrecto de un sistema a partir de la informacin disponible. Aqu se podran tener en cuenta tanto aplicaciones de diagnstico mdico como de averas. Los sistemas de pronstico deducen consecuencias posibles a partir de una situacin. Su objetivo es determinar el curso del futuro en funcin de informacin sobre pasado y presente. Sistemas de planificacin, pudindose encontrar aplicaciones en este rea, que establecen una secuencia de acciones a realizar encaminadas a la consecucin de una serie de objetivos. Un sistema de instruccin (Sistema Experto para formacin) realiza un seguimiento del proceso de aprendizaje de un estudiante.
1.2. Arquitectura y Funcionamiento de un Sistema Experto La estructura de un SE est organizada alrededor de tres elementos principales.
1.2.1. Base de Conocimientos Es una estructura de datos que contiene una gran cantidad de informacin sobre un tema especfico, generalmente introducida por un experto en dicho tema (se puede asociar a una memoria permanente), sobre el cual se desarrolla la aplicacin. Este conocimiento lo constituye la descripcin de: Objetos a tener en cuenta y sus relaciones Casos particulares o excepciones y diferentes estrategias de resolucin con sus condiciones de aplicacin (meta-conocimiento, es decir, conocimiento sobre el conocimiento)
1.2.2. Base de Datos Es una memoria auxiliar que contiene a la vez los datos sobre la situacin concreta en la cual se va a realizar la aplicacin (hechos iniciales que describen el enunciado del problema a resolver) y los resultados intermedios obtenidos a lo largo del procedimiento de deduccin. Esta base (memoria temporal) no se conserva (salvo por necesidades del usuario) y depende exclusivamente de la situacin estudiada. 1.2.3. Motor de Inferencias
Es el ncleo del SE, ya que ponen en accin los elementos de la base de conocimientos para construir los razonamientos. Ejecuta las inferencias (deducciones) en el curso del proceso de resolucin, bien sea por modificacin, bien por adjuncin de los elementos de la base de hechos. Frente a una situacin dada, detecta los conocimientos que interesan, los utiliza, los encadena, y construye un plan de resolucin independiente del dominio y especificidad del caso tratado. Aunque el motor de inferencia, sea un programa procedimental (en el sentido habitual del trmino) la forma en que utiliza el conocimiento nunca est prevista por el programador.
Las categoras de Mecanismos de Inferencia son: a) Determinismo: Lo inferido es una verdad universal. Por ej: el Qumico dice con certeza que si un tomo tiene dos electrones, entonces es un tomo de Helio. b) Probabilstico: Son predicciones o probabilidades que no siempre son ciertas (se elige la probabilidad de mayor valor). Por ej: las respuestas a la prevencin de abandonos de los cursos de bachillerato, dadas por un socilogo son tan slo probabilidades, que pueden o no ser acertadas.
1.2.4. Interfaz de Usuario Tambin denominado Sistema de Consulta. Es el que gobierna el dilogo entre el usuario y el sistema. Su objetivo es el de permitir un dilogo en un lenguaje cuasi- natural con la mquina. Adems, este mdulo traduce el espaol (o cualquier otra lengua) al lenguaje interno y viceversa. Esta interface comunica al motor de inferencia las consultas del usuario y a este ltimo los resultados de la consulta. Y a la inversa. Permite, igualmente obtener el enunciado del problema inicial y los objetivos a alcanzar as como la consulta a la base de conocimiento.
1.2.5. Mdulo de Explicacin
Permite trazar el camino tomado en el razonamiento (inferencias efectuadas). Este mdulo aporta una ayuda considerable al informtico para refinar la gestin del motor de inferencia y le es igualmente til al experto, en la construccin y verificacin de la coherencia de la base de conocimiento y explica, tambin, al usuario, cmo ha deducido tal hecho y por qu plantea tal cuestin.
1.2.6. Mdulo de Adquisicin El conocimiento puede introducirse por el experto o por el ingeniero de conocimiento (en este caso el mdulo puede contener funciones de interface con el usuario) o provenir directamente de sensores, bases de datos, otros software, etc. Debe, pues, recibir el conocimiento, verificar la verosimilitud de ste, organizar la coherencia de la base de conocimientos y transformar los datos en conocimientos incorporados al sistema.
1.2.7. Comparacin entre un Sistema Experto y un Programa Tradicional
Un programa tradicional puede esquematizarse de la siguiente manera:
Mientras que un sistema experto estara definido de la siguiente forma: Figura 1: Arquitectura Bsica de un SE Figura 2: Esquema programa tradicional
1.3. Ventajas e Inconvenientes de un Sistema Experto
1.3.1. Ventajas Permanencia: A diferencia de un experto humano un Sistema Experto (SE) no envejece, y por tanto no sufre perdida 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 puede 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 humando si (cansancio, presin, etc).
1.3.2. Inconvenientes Creatividad: los humanos pueden responder creativamente a situaciones inusuales, los sistemas expertos no pueden. Experiencia Sensorial: los humanos tienen un amplio rango de disponibilidad de experiencia sensorial. Y los sistemas expertos actualmente dependen de una entrada simblica. Degradacin: los sistemas expertos no son bueno para reconocer cuando no existen respuestas o cuando los problemas estn fuera de su rea. La extraccin del conocimiento es el problema ms complejo que se les plantea a los ingenieros de conocimientos.
1.4. Prolog
1.4.1. Introduccin a Prolog Se trata de un lenguaje de programacin ideado a principios de los aos 70 en la Universidad de Aix- Marseille I (Marsella, Francia) por los estudiantes modlicos Alain Colmerauer y Philippe Roussel. Naci de un proyecto que no tena como objetivo la traduccin de un lenguaje de programacin, sino la clasificacin algortmica de lenguajes naturales. Prolog se enmarca en el paradigma de los lenguajes lgicos y declarativos, lo que lo diferencia enormemente de otros lenguajes ms populares tales como Fortran, Pascal, C o Java. Un programa escrito en PROLOG puro, es un conjunto de clasulas de Horn. Sin embargo, PROLOG, como lenguaje de programacin moderno, incorpora ms cosas, como instrucciones de Entrada/Salida, etc.
Una clasula de Horn puede ser bien una conjuncin de hechos positivos una implicacin con un nico consecuente (un nico termino a la derecha). La negacin no tiene representacin en PROLOG, y se asocia con la falta de una afirmacin (negacin por fallo), segn el modelo de suposicin de un mundo cerrado (CWA); solo es cierto lo que aparece en la base de conocimiento bien se deriva de esta.
1.4.2. Caractersticas de Prolog Generacin de CGI's. Acceso a bases de datos desde pginas Web. Paralelizacin automtica de programas. Programacin distribuida y multiagente. Sistemas expertos e inteligencia artificial. Validacin automtica de programas. Procesamiento de lenguaje natural. Prototipado rpido de aplicaciones. Bases de datos deductivas. Interfacing con otros lenguajes como Java y Tcl/Tk.
1.4.3. Derivados de Prolog micro-PROLOG: Inicialmente creado para microordenadores de 8 bits, popularizada a principios de la dcada de 1980. Fue usado en la enseanza pblica, normalmente como introduccin a la programacin lgica y a la Inteligencia Artificial. El micro-PROLOG reduce al mnimo su complejidad, al objeto de ser accesible, perdiendo con ello versatilidad y potencia
2. Deteccin de trastornos de la personalidad en el Banco Interbank 2.1. Planteamiento y Diseo Las empresas en la actualidad buscan escoger y clasificar los candidatos ms adecuados para satisfacer sus necesidades. Se escoge entre los candidatos reclutados a los ms adecuados, para ocupar los cargos existentes en la empresa, tratando de mantener o aumentar la eficiencia y el rendimiento del personal. Si todos los individuos reunieran las mismas condiciones para aprender a trabajar, la seleccin no sera necesaria; pero hay una enorme gama de diferencias individuales, tanto fsicas como psicolgicas, que hacen que las personas se comporten y perciban las situaciones de manera diferente. Figura 3: Esquema Sistema Experto Los diversos trastornos de personalidad que se presentan en personas pueden minimizar la calidad en la capacidad para realizar una tarea. Se utiliz un grafo AND-OR para poder representar el conocimiento adquirido, el cual fue luego transformado a reglas de inferencia usando lgica de primer orden, utilizado por el lenguaje Prolog.
La representacin del conocimiento se har mediante el grafo And/Or como se mostrar en las siguientes imgenes:
2.2. Implementacin Como ya se mencion para la implementacin del sistema experto se utiliz el entorno de SWI Prolog.
Para implementar este Sistema Experto, hicimos un listado de los trastornos de la personalidad segn DSM (Manual diagnstico y estadstico de los trastornos mentales).
Lista de trastornos de personalidad definidos en el DSM
a) Grupo A (trastornos raros o excntricos) Trastorno paranoide de la personalidad, personalidad paranoide. Trastorno esquizoide de la personalidad, personalidad esquizoide. Trastorno esquizotpico de la personalidad, personalidad esquizotpica.
b) Grupo B (trastornos dramticos, emocionales o errticos)
Trastorno antisocial de la personalidad, personalidad antisocial o Sociopata/Psicopata. Trastorno lmite de la personalidad, personalidad lmite. Trastorno histrinico de la personalidad, personalidad histrinica o Histeria. Trastorno narcisista de la personalidad, personalidad narcisista o Narcisismo.
c) Grupo C (trastornos ansiosos o temerosos)
Trastorno de la personalidad por evitacin, personalidad fbica. Trastorno de la personalidad por dependencia, personalidad dependiente. Trastorno obsesivo-compulsivo de la personalidad, personalidad obsesiva-compulsiva.
Con el propsito de verificar el funcionamiento del sistema experto varias pruebas fueron llevadas a cabo. En la Tabla 1 se muestran las respuestas al primer bloque de preguntas que nos har el sistema experto.
Pregunta Si No Carcter irritable? x Deseo de estar solo? x Sentimiento de ataque en su contra? x Desconfianza? x Comodidad con el hbito y la rutina? x Tienes pocos amigos? x Evitacin de actividades sociales? x Sientes miedo a sonrojarte o gritar? x Creencias raras? x Tabla 1: Primer bloque de preguntas presentado por el Sistema Para este sistema se utiliz 4 bloques de 9 preguntas las cuales tendr que ser respondidas por el usuario del SE. Al final de todas las preguntas el sistema experto evala el tipo de trastorno de la personalidad que se ajusta a las caractersticas brindadas por el usuario. Para ese ejemplo presentado al sistema experto, este ha determinado que el diagnstico es Trastorno paranoide de la personalidad.
Se visualizara una imagen del trastorno con su respectivo tratamiento. 3. Ejecucin Esta es una ejecucin de un ejemplo en la que las elecciones de las preguntas son: comportamiento soberbio, escaso inters por el sexo opuesto, disfruta con pocas actividades y desregulacin emocional Figura 4: Grafo And/Or Figura 5: Grafo And/Or del Sistema Experto Figura 6: Grafo And/Or del Sistema Experto Al responder todas las preguntas de este test, nos proporciona el diagnstico del trastorno y el tratamiento que se debe seguir.
Una ejecucin de un ejemplo en la que las elecciones de las preguntas son: constante ansiedad, pensamientos obsesivos, impulsos recurrentes y sentimiento de culpa.
4. Referencias Bibliogrficas
[1] Lic. Carla Salazar Serrado, Una Introduccin a los Sistemas Expertos, UNIVERSIDAD MAYOR DE SAN SIMN, Cochabamba, Julio de 2003. [2] ANGULO Usategui Jos Mara y Anselmo del Moral Bueno. Gua fcil de la Inteligencia Artificial. Editorial Paraninfo. Segunda Edicin. Madrid, 1994. [3] http://www.nlm.nih.gov/medlineplus/spanish/ency/ar ticle/000939.htm [4] http://es.wikipedia.org/wiki/Sistema_experto [5] http://www.iit.upcomillas.es/pfc/resumenes/42bbe50 95b837.pdf
Desarrollo de Un Prototipo de Sistema Experto para El Apoyo en La Toma de Decisiones Del Proceso de Selección de Personal - Presentación de Sustentación