lunes, 9 de febrero de 2009

Sistemas Expertos




INTRODUCCIÓN.


Con el pasar del tiempo se ha producido un notable avance en tecnología, que ha traído como consecuencia la creación de máquinas y modelos expertos que sustituyan al hombre en algunas actividades específicas; por otra parte en la actualidad el mercado se vuelve más competitivo, donde la administración y el buen manejo de la información es fundamental para todas las empresas y organizaciones, las cuales, si quieren sobrevivir , deben mantenerse a la vanguardia de estos proyectos novedosos; es de allí donde radica la importancia de los sistemas expertos y la inteligencia artificial.


Los sistemas expertos que también son conocidos como sistemas basados en conocimiento o considerados por algunos como inteligencia artificial, constituyen uno de los sistemas que apoyan la toma de decisiones en las organizaciones; son programas que reproducen el proceso intelectual humano en un campo particular mejorando su productividad y ahorrando a su vez tiempo y dinero.


Antes de la aparición de la computadora, el hombre ya se preguntaba si se le arrebataría el privilegio de razonar y pensar. En la actualidad existe un campo dentro de inteligencia artificial al que se le atribuye esa faculta: el de los sistemas expertos.


Cabe destacar que los sistemas expertos permiten la creación de máquinas que razonan como el hombre restringiéndose a un espacio de conocimiento limitado, es decir, pueden razonar siguiendo los pasos que seguiría un experto humano para resolver un problema concreto. Así mismo a través de este instrumento ampliaremos la información describiendo todo lo que engloban los sistemas expertos y que causan un impacto a la organización, como son, los orígenes, aplicaciones, ventajas, limitaciones, arquitectura, entre otras.


Sistemas expertos en los negocios:

Constituyen uno de los sistemas que apoyan el proceso de la toma de decisiones en las organizaciones. El desarrollo de estos sistemas será de fundamental importancia en aplicaciones administrativas, en finanzas, en ventas, en el área comercial y en las operaciones de la empresa. Estos sistemas serán utilizados por diferentes usuarios como consulta, apoyo a la toma de decisiones, capacitación, entre otras.

Evolución histórica de los sistemas expertos:
En el año 1950 el campo de la automática recibe un gran impulso cuando Wiener desarrolla el principio de la retroalimentación. La teoría de la retroalimentación es base fundamental de los sistemas de control.
En 1955 Newell y Simon desarrollan la Teoría de la lógica. Este desarrollo permitió desarrollar un programa que exploraba la solución a un problema utilizando ramas y nudos, seleccionando únicamente las ramas que más parecían acercarse a la solución correcta del problema.
En 1956, se celebra una conferencia en Vermont (USA) de gran trascendencia en el desarrollo de la IA. John McCarthy propone por primera vez el uso del término “Inteligencia Artificial” para denominar el estudio del tema.
En 1957,aparece la primera versión de “The General Problem Solver” (GPS), un programa capaz de solucionar problemas de sentido común. El GPS utilizaba la teoría de la retroalimentación de Wiener..
En 1958 McCarthy anuncia su nuevo desarrollo el lenguaje LISP (LISt Procesing), el lenguaje de elección para todos aquellos desarrolladores inmersos en el estudio de la IA.
En 1963,el Instituto Tecnológico de Massachussets (MIT) recibe una subvención de 2,2 millones de dólares del gobierno de los Estados Unidos en concepto de investigación en el campo de la IA. De esa forma, se comprueba la importancia que el Gobierno concede a la investigación dentro de ese campo.
En1965 aparece DENDRAL, el primer sistema experto. Es en ese año cuando Feigenbaum entra a formar parte del departamento de informática de Stanford. Allí conoció a Joshua Lederberg, el cual quería averiguar cual era la estructura de las moléculas orgánicas completas. El objetivo de DENDRAL fue estudiar un compuesto químico. El descubrimiento de la estructura global de un compuesto exigía buscar en un árbol las posibilidades, y por esta razón su nombre es DENDRAL que significa en griego “árbol”.Antes de DENDRAL los químicos solo tenían una forma de resolver el problema, estar era tomar unas hipótesis relevantes como soluciones posibles, y someterlas a prueba comparándolas con los datos.
La realización de DENDRAL duró más de diez años (1965-1975). Se le puede considerar el primer sistema experto.
En 1972, en la Universidad de Standford se desarrolla MYCIN, sistema experto dentro del campo de la medicina para diagnostico de enfermedades infecciosas en la sangre. MYCIN se trataba de un sistema experto para el diagnóstico de enfermedades infecciosas. Desde los resultados de análisis de sangre, cultivos bacterianos y demás datos, el programa era capaz de determinar, o en lo menos, sugerir el microorganismo que estaba causando la infección. Después de llegar a una conclusión, MYCIN prescribía una medicación que se adaptaba perfectamente a las características de la persona, tales como el peso corporal de este.
Al mismo tiempo, Davir Marr propone nuevas teorías sobre la capacidad de reconocimiento visual de las diferentes máquinas.
En 1972 aparece el lenguaje PROLOGUE basado en las teorías de Minsky.
En 1973 se desarrolla el sistema experto llamado TIERESIAS. El cometido de este sistema experto era el de servir de intérprete entre MYCIN y los especialistas que lo manejaban, a la hora introducir nuevos conocimientos en su base de datos. El especialista debía utilizar MYCIN de una forma normal, y cuando este cometiera un error en un diagnóstico (hecho producido por la falta o fallo de información en el árbol de desarrollo de teorías) TEIRESIAS corregiría dicho fallo destruyendo la regla si es falsa o ampliándola si es eso lo que se necesita.
En 1979 aparece XCON, primer programa que sale del laboratorio Su usuario fue la Digital Equipament Corporation (DEC).
El cometido de XCON sería configurar todos los ordenadores que saliesen de la DEC. El proyecto presentó resultados positivos y se empezó a trabajar en el proyecto más en serio en diciembre de 1978.
En abril de 1979 el equipo de investigación que lo había diseñado pensó que ya estaba preparado para salir, y fue entonces, cuando se hizo una prueba real, esperando resolver positivamente un 95% de las configuraciones, este porcentaje tal alto se quedó en un 20% al ser contrastado con la realidad; XCON volvió al laboratorio, donde fue revisado y a finales de ese mismo año funcionó con resultados positivos en la DEC.
En 1980 se instauró totalmente en DEC. Y en 1984, el XCOM había crecido hasta multiplicarse por diez. El XCOM supuso un ahorro de cuarenta millones de dólares al año para la DEC.
Entre los años 80 a 85 se produce la revolución de los Sistemas Expertos.
En estos 5 años se crearon diversos sistemas expertos como el DELTA, de General Electric Company, para la reparación de locomotoras diesel y eléctricas. “Aldo en Disco” para la reparación de calderas hidróstaticas giratorias usadas para la eliminación de bacterias.
Se crearon multitud de empresas dedicadas a los sistemas expertos como Teknowledge Inc., Carnegie Group, Symbolics, Lisp Machines Inc., Thinking Machines Corporation, Cognitive Systems Inc.... formando una inversión total de 300 millones de dólares. Los productos más importantes que creaban estas nuevas compañías eran las “máquinas Lisp”, que se trataba de unos ordenadores que ejecutaban programas LISP con la misma rapidez que en un ordenador central, y el otro producto fueron las “herramientas de desarrollo de sistemas expertos”.
En 1987 XCON empieza a no ser rentable. Los técnicos de DEC tuvieron que actualizar XCOM rápidamente llegándose a gastar más de dos millones de dólares al año para mantenimiento y algo parecido ocurrió con el DELTA..También en 1987 aparecieron los microordenadores Apple y compatibles IBM con una potencia parecida a los LISP. El software se transfirió a máquinas convencionales utilizando el lenguaje “C” lo que acabó con el LISP.
A partir de los 90 y con el desarrollo de la informatica, se produce un amplio desarrollo en el campo de la IA y los sistemas expertos, pudiéndose afirmar que estos se han convertido en una herramienta habitual en determinadas empresas en la actualidad.
La evolución histórica de los métodos utilizados en el desarrollo de los sistemas expertos también se ha producido a medida que se ha ido desarrollando la IA y los diferentes métodos que se han empleado para su resolución. El desarrollo de lenguajes como LISP y PROLOG condicionó esa evolución, así como investigaciones en diversos campos relacionados. Los primeros sistemas expertos que se desarrollaron en los años 60 eran capaces de resolver solo problemas basados en situaciones determinadas ,mediante sistemas de reglas .Es a partir de los 70 cuando se empiezan a resolver problemas basados en situaciones inciertas, basados en medidas difusas al principio y en redes probabilísticas con posterioridad. En la siguiente figura se aprecia la evolución histórica en la resolución de problemas mediante sistemas expertos.
Evolución histórica de resolución de problemas con sistemas expertos.

Inteligencia artificial (IA) como sistema experto:

Se denomina inteligencia artificial a la rama de la ciencia informática dedicada al desarrollo de agentes racionales no vivos.
Para explicar la definición anterior, entiéndase a un agente como cualquier cosa capaz de percibir su entorno (recibir entradas), procesar tales percepciones y actuar en su entorno (proporcionar salidas). Y entiéndase a la racionalidad como la característica que posee una elección de ser correcta, más específicamente, de tender a maximizar un resultado esperado. (Este concepto de racionalidad es más general y por ello más adecuado que inteligencia para definir la naturaleza del objetivo de esta disciplina).
Por lo tanto, y de manera más específica la inteligencia artificial es la disciplina que se encarga de construir procesos que al ser ejecutados sobre una arquitectura física producen acciones o resultados que maximizan una medida de rendimiento determinada, basándose en la secuencia de entradas percibidas y en el conocimiento almacenado en tal arquitectura.
Existen distintos tipos de conocimiento y medios de representación del conocimiento. El cual puede ser cargado en el agente por su diseñador o puede ser aprendido por el mismo agente utilizando técnicas de aprendizaje.
También se distinguen varios tipos de procesos válidos para obtener resultados racionales, que determinan el tipo de agente inteligente. De más simples a más complejos, los cinco principales tipos de procesos son:
Ejecución de una respuesta predeterminada por cada entrada (análogas a actos reflejos en seres vivos).
Búsqueda del estado requerido en el conjunto de los estados producidos por las acciones posibles.
Algoritmos genéticos (Análogo al proceso de evolución de las cadenas de ADN).
Redes neuronales artificiales (Análogo al funcionamiento físico del cerebro de animales y humanos).
Razonamiento mediante una Lógica formal (Análogo al pensamiento abstracto humano).
También existen distintos tipos de percepciones y acciones, pueden ser obtenidas y producidas, respectivamente por sensores físicos y sensores mecánicos en máquinas, pulsos eléctricos u ópticos en computadoras, tanto como por entradas y salidas de bits de un software y su entorno software.
Varios ejemplos se encuentran en el área de control de sistemas, planificación automática, la habilidad de responder a diagnósticos y a consultas de los consumidores, reconocimiento de escritura, reconocimiento del habla y reconocimiento de patrones. Los sistemas de IA actualmente son parte de la rutina en campos como economía, medicina, ingeniería y la milicia, y se ha usado en gran variedad de aplicaciones de software, juegos de estrategia como ajedrez de computador y otros videojuegos.

Áreas de la inteligencia artificial:

Robótica:
Es el área de la inteligencia artificial que estudia la imitación del movimiento humano a través de robots, los cuales son creados con el fin de apoyar procesos mecánicos repetitivos que requieren gran precisión. Estos robots pueden ser programados para desempeñar casi cualquier tarea y en las empresas se los suele emplear en procesos productivos como: pintura y acabados, movimiento de materiales, reconocimiento de defectos, etc.

Simulación de la capacidad sensorial humana:
Es el área de estudio de la IA, que a través de las computadoras persigue la imitación de las capacidades o habilidades sensoriales humanas tales como: vista, oído, habla y tacto. Lo anterior incluye visión computacional, procesamiento de imágenes y reconocimiento de escenas.

Lenguajes neurales:
Es la que se enfoca en el diseño y desarrollo de software capaz de aceptar, interpretar y ejecutar instrucciones dadas por los usuarios en su lenguaje nativo, por ejemplo: español e ingles. Esta área se encuentra en un estado poco desarrollado, puesto que el reto de los investigadores es hacer que las computadoras puedan comprender el lenguaje humano y convertirlo en un conjunto de instrucciones que la máquina pueda ejecutar.

Sistemas expertos (SI):
Permiten cargar bases de conocimiento integradas por una serie de reglas de sentido común o conocimiento heurístico; es decir, conocimientos basados u obtenidos a través de la experiencia.

Redes neurales:
Son software diseñado para imitar los procesos de pensar del ser humano, es decir, la forma en que se llega a conclusiones, como se usa la experiencia para relacionar hechos y aprender de los mismos, etc. En otras palabras las redes neurales permiten que las máquinas aprendan. Su nombre proviene de la similitud con la forma de operar del cerebro humano en donde las neuronas forman enlaces unas con otras con base en pulsos eléctricos.

Lógica difusa:
Corrige parte de las debilidades de los sistemas expertos debido a que los programas utilizados por las computadoras dan respuestas precisas como: si, no, bien, mal; pero existen problemas donde priva la incertidumbre o los términos medios; en otras palabras la lógica difusa es una técnica matemática para el tratamiento de datos imprecisos y problemas que tiene mas de una solución.

Agentes inteligentes:
Es un programa diseñado con conocimiento para realizar ciertas tareas específicas, normalmente repetitivas. Este puede ser programado para tomar decisiones con base a las preferencias de una persona.

Definición de Sistema experto.
Un sistema experto puede definirse como un sistema basado en los conocimientos que imita el pensamiento de un experto, para resolver problemas de un terreno particular de aplicación.
Una de las características principales de los sistemas expertos es que están basados en reglas, es decir, contienen unos conocimientos predefinidos que se utilizan para tomar todas las decisiones.
En Teoría estos sistemas son capaces de razonar siguiendo los mismos pasos que seguiría un especialista (experto) en determinada materia (medico, matemático, biólogo, etc.) cuando resuelve un problema propio de su campo de su disciplina. Por ello, el creador de un sistema experto tiene que comenzar por identificar y recoger del experto humano los conocimientos que este utiliza, pero sobre todo los conocimientos empíricos que se adquieren con la práctica.
Dado a que los programas están basados en el conocimiento un aspecto fundamental es la programación del conocimiento la cual hace uso de la representación explicita del conocimiento a usar por el sistema y de su interpretación y manipulación lógica por medio de métodos de inferencia que permiten deducir nuevo conocimiento a partir del que ya se dispone. Por ejemplo, un sistema experto en diagnóstico médico requeriría como datos los síntomas del paciente, los resultados de análisis clínicos y otros hechos relevantes, y, utilizando éstos, buscaría en una base de datos la información necesaria para poder identificar la correspondiente enfermedad. Un Sistema Experto de verdad, no sólo realiza las funciones tradicionales de manejar grandes cantidades de datos, sino que también manipula esos datos de forma tal que el resultado sea inteligible y tenga significado para responder a preguntas incluso no completamente especificadas.
Un sistema experto es un cuerpo de programas de ordenador que intenta imitar e incluso superar en algunas situaciones a un experto humano en un ámbito concreto de su actividad. No pretende, en absoluto, reproducir el pensamiento humano, sino simplemente la pericia de un profesional competente (téngase en cuenta que para construir un SE se suele contar con grandes expertos en la materia que incorporan su conocimiento al sistema). Esta pretensión es más sencilla ya que en algunos campos reducidos los expertos trabajan siguiendo reglas, aunque, generalmente, no sean conscientes de ello. En aquellos campos en los que no sea necesario aplicar la intuición ni el sentido común, los sistemas basados en el conocimiento han conseguido notables éxitos, consiguiendo en ocasiones ser más regulares y rápidos que los propios expertos. Los sistemas basados en el conocimiento desarrollados hasta hace poco constituyen la primera generación cuya característica común reside en la superficialidad del conocimiento que se incluye en el mismo. Los ingenieros de conocimiento (desarrolladores de los sistemas basados en el conocimiento) se limitan a incorporar en los sistemas la experiencia y criterios de los especialistas sin buscar las razones últimas en las que se basan.
Actualmente existen sistemas más avanzados, sistemas de Segunda Generación, en la que el conocimiento se estructura en dos niveles. El primer nivel, de control (se suele aludir a él como metaconocimiento y las reglas que lo constituyen reciben el nombre de metarreglas), sirve para determinar la forma de utilizar el segundo nivel que es el que contiene el conocimiento de los expertos.

Características de los Sistemas expertos.
Para que un sistema actúe como un verdadero experto, es deseable que reúna, en lo posible, lo más importante de las características de un experto humano, esto es:
· Habilidad para adquirir conocimiento.
· Fiabilidad, para poder confiar en sus resultados o apreciaciones.
· Solidez en el dominio de su conocimiento.
· Capacidad para resolver problemas.
Dada la complejidad de los problemas que usualmente tiene que resolver un SE, puede existir cierta duda en el usuario sobre la validez de respuesta obtenida. Por este motivo, es una condición indispensable que un SE sea capaz de explicar su proceso de razonamiento o dar razón del por qué solicita tal o cual información o dato.

Componentes de un sistema experto.
Los principales componentes de un sistema experto son los siguientes:

· Base de Conocimiento
Un SE posee el conocimiento del experto humano convenientemente formalizado y estructurado; esto es lo que se conoce como Base de conocimiento. Está constituido por la descripción de los objetos y las relaciones entre ellos, así como de casos particulares y excepciones. Algunos sistemas basados en el conocimiento incluyen metaconocimiento o conocimiento sobre el conocimiento, es decir, la capacidad para buscar en la base de conocimiento y abordar la resolución del problema de una manera inteligente usando diferentes estrategias para la resolución con sus condiciones particulares de aplicación. Es decir se trata de definir criterios mediante los cuales el sistema decide la estrategia de búsqueda a utilizar en función de unos datos iniciales. El conocimiento se puede representar mediante cálculo de predicados, listas, objetos, redes semánticas y/o reglas de producción. De todas ellas, las dos formas más usuales son las reglas de producción y los objetos. En cualquier caso, la elección de las técnicas de representación a utilizar dependerán del tipo de problema a resolver.

· Motor de Inferencia
También llamado intérprete de reglas, es un módulo que se encarga de las operaciones de búsqueda y selección de las reglas a utilizar en el proceso de razonamiento. Por ejemplo, al tratar de probar una hipótesis dada, el motor de inferencia irá disparando reglas que irán deduciendo nuevos hechos hasta la aprobación o rechazo de la hipótesis objetivo.

· Base de Hechos
Se trata de una memoria temporal auxiliar que almacena los datos del usuario, datos iniciales del problema, y los resultados intermedios obtenidos a lo largo del proceso de resolución. A través de ella se puede saber no sólo el estado actual del sistema sino también cómo se llegó a él. Como ya se ha mencionado antes, es conveniente que esta información se maneje con bases de datos relacionales, en lugar de utilizar un sistema particular de almacenamiento.

· Interfaz de Usuario
Todo sistema dispone de una interfaz de usuario, que gobierna el diálogo entre el sistema y el usuario. Para el desarrollo de estas interfaces algunas herramientas de desarrollo incorporan generadores de interfaz de usuario o bien se utilizan herramientas de desarrollo de interfaces gráficas existentes en el mercado.
Otros módulos que forman parte de este tipo de herramientas son los siguientes:

· Módulo de comunicaciones
En la actualidad la mayoría de los sistemas basados en el conocimiento no viven aislados sino que interactúan con otros sistemas por lo que son capaces de interactuar no solamente con el experto sino con estos sistemas, para poder recoger información o consultar bases de datos.

· Módulo de explicaciones
Es una utilidad importante en la etapa de desarrollo ya que aporta una ayuda considerable al ingeniero del conocimiento para refinar el funcionamiento del motor de inferencia, y al experto a la hora de construir y verificar la coherencia de la base de conocimiento. Sirve para explicar al usuario tanto las reglas usadas como el conocimiento aplicado en la resolución de un determinado problema.

· Módulo de adquisición de conocimiento
Este módulo permite al ingeniero del conocimiento, y/o experto, la construcción de la base de conocimiento de una forma sencilla, así como disponer de una herramienta de ayuda para actualizar la base de conocimiento cuando sea necesario.
Si bien estos módulos no existen en todos los sistemas basados expertos, o bien están desarrollados o implementados de maneras diferentes, la función que desempeñan es muy interesante en el desarrollo de estos sistemas. Así, el motor de inferencia y las interfaces, que incluyen la interfaz de usuario, el módulo de explicaciones y el módulo de adquisición del conocimiento, forman el esqueleto o sistema esencial, y que, separadas de las bases de conocimiento y de hechos, constituyen una herramienta software para el desarrollo de los sistemas basados en el conocimiento (shells).
Componentes de un sistema experto

Arquitectura de un sistema experto.
La arquitectura de un sistema experto esta basada en una entrada de datos realizada por el usuario a fin de efectuar la oportuna consulta. Las entradas no solamente están compuestas de estas consultas. El aprendizaje del sistema y las condiciones específicas del problema a tratar también han de encontrarse en la entrada.
Junto a ello, se encuentra la administración del sistema, compuesta por un interfaz encargado del manejo de la sintaxis del lenguaje y de la maquina de inferencias, que se encarga de efectuar la búsqueda en la base de conocimientos y en la base de datos. Por ultimo, se tienen los resultados.

Similitudes entre sistemas convencionales y expertos:
· Apoyan el proceso de toma de decisiones empresariales de niveles medios y altos.
· Interactúan con el tomador de decisiones o usuario final en forma directa.
· Están enfocados en todas las áreas funcionales del negocio.
· Su implantación requiere recursos y herramientas computacionales, así como cultura computacional en la empresa o negocio.
· Integran los sistemas estratégicos del negocio a través del logro de ventajas competitivas.
· Evolucionan constantemente dentro de la organización por cambios de los requerimientos funcionales del usuario o experto. Su desarrollo puede ser incremental, agregando nuevas funciones o reglas.
· Ambos requieren mantenimiento posterior a su implantación.

Ventajas de los sistemas expertos:
Estos programas proporcionan la capacidad de trabajar con grandes cantidades de información, que son uno de los grandes problemas que enfrenta el analista humano que puede afectar negativamente a la toma de decisiones pues el analista humano puede depurar datos que no considere relevantes, mientras un SE debido a su gran velocidad de proceso analiza toda la información incluyendo las no útiles para de esta manera aportar una decisión más sólida.

Diferencias entre sistemas convencionales y sistemas expertos:
Sistemas Convencionales:
Pertenecen al área de sistemas de información.
Procesan datos y generan información.
Apoyan la automatización de procesos transaccionales y operativos.
Sobrevivencia y ventajas competitivas de los negocios.
Desarrollo especifico para un problema particular, compra de paquetes o desarrollo directo por el usuario final.
Participan en su desarrollo programadores, analistas y el usuario, así como especialistas en informática.
Accedan archivos convencionales y bases de datos.
Especialistas disponibles en el mercado, casas de software, consultores, etc.
Uso generalizado y masivo en empresas.
Costos, beneficios, tecnologías y problemas probados durante más de tres décadas, en los negocios.
Tradicional. Áreas de oportunidad conocida.

Sistemas Expertos:
Pertenecen al área de la inteligencia artificial.
Procesan conocimientos y generan conclusiones.
No apoyan la automatización de procesos transnacionales y operativos.
Ventajas competitivas de los negocios.
Desarrollo especifico para un problema particular.
Participan en su desarrollo el ingeniero de conocimiento y el experto, así como especialistas en cognomática.
Accedan bases de conocimiento además de bases de datos y archivos convencionales.
Especialistas escasos en el mercado.
Uso limitado en empresas.
Costos, beneficios, tecnologías y problemas en sus primeros años de uso en los negocios.
Novedoso. Puede constituir nuevas áreas de oportunidad para el negocio.

Beneficios que genera el uso de sistemas expertos y costos que involucra:
La utilización de sistemas expertos puede generar diversos beneficios a saber:

· Reducción de la dependencia del personal clave:
Se puede reducir la dependencia del personal clave, lo cual se debe a que los conocimientos del personal especializado son retenidos durante el proceso de aprendizaje y están listos para ser utilizados por diferentes personas. Esto es útil cuando la experiencia es escasa o costosa, o bien, cuando los expertos no se encuentran disponibles para la solución de un problema en particular.

· Facilita el entrenamiento del personal:
Ayudan de manera importante y a un costo menor a capacitar y adiestrar al personal sin experiencia. Tener disponible a un sistema experto con todas las reglas de surtido de pedidos a clientes agilizara el entrenamiento del personal nuevo que sea contratado.

· Mejora la calidad y eficiencia del proceso de toma de decisiones:
Las decisiones podrán tomarse de una forma más ágil con el apoyo de un sistema experto; incluso las decisiones podrán ser congruentes al presentarse situaciones equivalentes; esto significa, que dicho sistema siempre responde de la misma forma ante las mismas situaciones, lo cual no necesariamente ocurre con las personas.

· Transferencia de la capacidad de decisiones:
Facilita la descentralización de datos en el proceso de la toma de decisiones en aquellos casos que se considera conveniente. El conocimiento de un experto puede transferirse a varias personas de tal formas que las decisiones sean tomadas en el nivel más bajo. Es imposible que un experto se encuentre presente en todos los lugares donde es requerido, por lo que el apoyo de un sistema experto, puede mejorar la calidad de las decisiones.

· Costos que involucra:
Existe una serie de costos involucrados en el desarrollo y uso de los sistemas expertos, que deberán considerarse durante el análisis de factibilidad de un sistema en particular, entre los cuales se puede incluir:
El shell o paquete generador del sistema experto.
El equipo computacional o hardware requerido.
Consultoría especializada.
Contratación o pago a los ingenieros del conocimiento.
El tiempo de los expertos.
Costos de implantación.
Costos involucrados con el mantenimiento y seguimiento del sistema.
Todos estos costos son gastos únicos, es decir, no repetitivos, con la excepción de los costos de mantenimiento y seguimiento del sistema. Es necesario agregar que la evaluación económica de un proyecto de inversión para el desarrollo e implantación de un sistema experto, depende de la capacidad para traducir los beneficios en ingresos o ahorros, lo cual puede resultar una labor no muy sencilla.

Herramientas para el desarrollo de sistemas expertos:

Para desarrollar sistemas expertos es necesario utilizar una herramienta apropiada. Las herramientas pueden ser lenguajes de programación o sistemas de ayuda para la generación de sistemas expertos, los cuales son llamados shells.

Existe una tendencia a denominar a los lenguajes relacionados con la inteligencia artificial y los sistemas expertos como lenguajes de quinta generación. Los más conocidos son LISP Y PROLOG. Dentro de esta categoría también se encuentra C, PASCAL, ADA y SMALLTALK.

Existen en el mercado varios paquetes generadores de sistemas expertos o shell, tales como: VP-EXPERT, EXSYS, LEVEL 5 e INTELLIGENT DEVELOPER, entre otros.

Lenguajes y generadores de Sistemas Expertos.

· LISP:
Es uno de los más utilizados desde los comienzos de la I.A. Se trata de uno de los lenguajes de alto nivel más antiguos. Se creó en 1950 en el MIT por John McCarthy. Es un lenguaje cuya principal estructura de datos son las listas, aún cuando se han ido incorporando otras estructuras más sofisticadas como pueden ser los objetos.Tiene como ventaja el manejo de sus estructuras a muy alto nivel lo que facilita la implementación rápida de los modelos y su facilidad de modificación. Como desventaja está su relativa lentitud frente a lenguajes de propósito general como C. La mayoría de las primeras herramientas de desarrollo de sistemas basados en el conocimiento fueron escritas en LISP y, en la actualidad, conviven con otras que se han desarrollado en C++.

· PROLOG:
Ffue creado por Alain Colmenauer en la Universidad de Marsella en 1972. Se trata de un lenguaje declarativo frente a los lenguajes de programación más usuales que son procedurales. Los lenguajes declarativos, a diferencia de los procedurales, no describen secuencialmente el algoritmo de resolución del problema, sino que se limitan a describir los hechos conocidos y las relaciones existentes entre ellos. Los lenguajes procedurales están orientados al "cómo" mientras que los declarativos están orientados al "qué". Es el lenguaje declarativo, en el caso que nos ocupa PROLOG, quien a partir de los datos introducidos deduce nuevos hechos y resuelve el problema automáticamente.
PROLOG tiene incluido, por tanto, un motor de inferencia que se encarga de realizar búsquedas en su base de hechos. Programar con PROLOG, por tanto, consiste en asertar hechos sobre objetos y preguntar al sistema sobre sus relaciones. Este lenguaje, aún cuando se le reconocen sus bondades, no ha tenido una gran utilización (si se exceptúa Francia, Gran Bretaña y Japón con el proyecto de 5ª generación, en el que se adoptó como lenguaje de programación PROLOG) siendo su principal aplicación el manejo de bases de datos relacionales junto con lenguajes de bases de datos de 4ª generación asociados a éstas.

· C:
En la actualidad, es común la utilización de lenguajes orientados a objeto (tales como C++) para el desarrollo de generadores de sistemas expertos y de Los propios sistemas basados en el conocimiento por su rendimiento, en términos de tiempo de ejecución, superior al de las herramientas generales. La incorporación de la programación orientada a objetos al lenguaje C ha facilitado la labor de modelización que requiere todo sistema basado en el conocimiento y su rapidez de ejecución así como el hecho de ser uno de los lenguajes de programación más conocidos ha hecho que su uso vaya en aumento. Una herramienta para la construcción de sistemas basados en el conocimiento no es sólo un lenguaje de programación de alto nivel orientado al desarrollo de estos sistemas. Este equipo lógico de desarrollo tiene, entre otras, las siguientes características o utilidades:
· Posibilidades para el desarrollo de prototipos.
· Un motor de inferencia.
· Un método o varios para la representación del conocimiento.
· Una o varias técnicas para el manejo de la incertidumbre.
· Un generador de interfaces gráficos (no siempre).
Estas herramientas están muy orientadas hacia el usuario final de la aplicación y, por lo tanto, es fundamental elegir la herramienta adecuada al entorno de aplicación. Son muchos los factores que influyen a la hora de tomar una decisión. En primer lugar es necesario conocer el alcance real del proyecto, esto es, si primero va a construirse una maqueta para estudiar la viabilidad del proyecto, o si por el contrario ya está decidido el desarrollo del sistema basado en el conocimiento.

Generador de sistemas expertos Shell:
Es el programa de software que permite desarrollar el sistema experto; constituye la herramienta que apoya el proceso de creación de las bases de conocimiento y facilita la utilización del modelo por parte de los usuarios.
Campo de aplicaciones de los Sistemas Expertos.
Según el tipo de problema a resolver, los ámbitos de aplicación en los que más se han utilizado los sistemas basados en el conocimiento son los siguientes:
· Sistemas de ayuda a la toma de decisiones:
Se trata de sistemas que a partir de una problemática determinada sugieren la solución que consideran más idónea a partir del conocimiento incluido en el sistema. En la actualidad, en España se procede al desarrollo del Sistema de Información Normativo Aplicado al Control (SINAC) fruto de la colaboración entre la Intervención General de la Administración del Estado y la Dirección General de Informática Presupuestaria. Su función primordial consiste en ayudar en la fiscalización y control de la actividad económica del Sector Público. Otro ejemplo significativo podría ser la Metodología de Análisis y Gestión de Riesgos de los sistemas de Información de las AdminisTraciones públicas(MAGERIT), elaborada por un equipo interdisciplinar del Comité Técnico de Seguridad de los Sistemas de Información y Tratamiento Automatizado de Datos Personales, SSITAD, del Consejo Superior de Informática y que consiste en un método formal para investigar los riesgos que soportan los Sistemas de Información, y para recomendar las medidas apropiadas que deberían adoptarse para controlar estos riesgos; por tanto, permite aportar racionalidad en el conocimiento del estado de seguridad de los Sistemas de Información y en la introducción de medidas de seguridad.
· Configuración:
Se encargan de la selección y planificación de los componentes que se necesitan en un proceso determinado. Un caso típico son los sistemas que ayudan a configurar los equipos físicos a partir de los componentes existentes y de las restricciones establecidas.
· Diagnóstico:
Se trata de sistemas que a partir de unos "síntomas" determinan las causas que lo producen. Ejemplo de ellos son los sistemas basados en el conocimiento de diagnóstico de enfermedades o de averías.
· Interpretación y Análisis:
Sirven para tratar grandes volúmenes de información, interpretarla, dar un informe explicativo y sugerir las acciones a tomar. Ejemplo de ellos pueden ser los sistemas de evaluación de resistencia de estructuras frente a terremotos o sistemas de supervisión de procesos industriales.
· Monitorización:
En algunas situaciones se considera un caso particular de sistemas de interpretación y análisis, pero debido a su frecuente uso se suelen considerar aparte. Estos sistemas suelen encargarse de monitorizar procesos suministrando una salida de control como respuesta. Existen muchos ejemplos de monitorización de procesos en factorías, plantas químicas, centrales nucleares, etc. Son sistemas que deben funcionar en tiempo real.
· Planificación:
Son sistemas que establecen las etapas y recursos necesarios para alcanzar un determinado objetivo. Ejemplo de ellos podría ser un sistema basado en el conocimiento de planificación de trabajos en una factoría.
· Interfaces inteligentes:
Hacen de puente entre las personas y equipos complejos y de difícil utilización. Caso típico son los interfaces inteligentes de acceso a base de datos.
· Diseño:
Son aquéllos que efectúan la planificación o trazado de un objeto o sistema en base a los requisitos especificados. Suelen ser capaces de dar diferentes soluciones de forma que el usuario pueda elegir aquélla que le convenga. Ejemplo de este tipo son los sistemas de ayuda al diseño de puentes, presas, microcircuitos electrónicos, etc.


Limitaciones de los sistemas expertos:

Es evidente que para actualizar se necesita de reprogramación de estos (tal vez este sea una de sus limitaciones más acentuadas).
Otra de sus limitaciones puede ser el elevado costo en dinero y tiempo, además que estos programas son poco flexibles a cambios y de difícil acceso a información no estructurada.
Por otra parte la inteligencia artificial no ha podido desarrollar sistemas que sean capaces de resolver problemas de manera general, de aplicar el sentido común para resolver situaciones complejas ni de controlar situaciones ambiguas.
El futuro de los SE da vueltas por la cabeza de cada persona, siempre que el campo elegido tenga la necesidad o presencia de un experto para la obtención de cualquier tipo de beneficio.

Tendencias futuras de los Sistemas expertos.
El mercado de herramientas para el desarrollo de SE está sufriendo una profunda transformación debido a una reorganización en el mercado informático y al cambio de estrategia de las compañías dedicadas al desarrollo de estas herramientas. Son cada vez más las compañías que antaño se dedicaban exclusivamente a la inteligencia artificial y que han decidido introducirse en otros mercados más amplios. Esto ha provocado una confusión que irá en aumento a medida que las empresas que integraban el grupo del mercado de la inteligencia artificial pasen a comercializar otro tipo de productos.
El mercado se ha ido reconfigurando aprovechando las experiencias del pasado y el avance tecnológico. Así se ha pasado de utilizar máquinas específicas a usar ordenadores comunes (estaciones de trabajo, ordenadores personales, etc.). Las aplicaciones eran muy específicas y ahora el ámbito es mucho más amplio. Los sistemas basados en el conocimiento estaban pensados para trabajar de forma aislada y ahora se conciben integrados con otros sistemas. Y, finalmente, el número de personas formadas en estas técnicas es mucho mayor que las existentes hace unos años.

CONCLUSIÓN.

Los sistemas expertos y la inteligencia artificial estudian las representaciones y procedimientos que automáticamente resuelven problemas que usualmente serian resueltos por humanos. A pesar de la diversidad de conceptos que de esas se deriva, en general todos coinciden en que los sistemas expertos y la inteligencia artificial tratan de conseguir inteligencia a través de la computación; toda computación requiere de una representación de cierta entidad y de un proceso para su manipulación.

Los sistemas expertos constituyen un campo de investigación entre la inteligencia artificial, que engloba campos como la robótica, la visión artificial, redes neuronales, entre otras.

Un sistema experto puede sin duda darnos el mismo resultado que un experto humano, lo que si debemos reconocer es que ningún sistema experto, puede resolver diferentes problemáticas dentro de una empresa, ya que estos son siempre muy específicos. Sin embargo es de esperarse que con los avances que tienen las herramientas tecnológicas se produzca un desarrollo cercano al comportamiento humano en muchas áreas, con estos avances en el terreno de los negocios se pueda llegar a ser mas eficiente y productivo.

En conclusión las tendencias futuras de los sistemas expertos será desarrollar sistemas capaces de resolver problemas de tipo general en donde se aplique sentido común para la solución de situaciones complejas, que son características inherentes de la inteligencia natural.

Actualmente el duro difícil y cambiante mercado competitivo, se vuelve más complejo, por la gran diversidad de información que se ven obligados a almacenar y analizar, razón por la cual las empresas se ven en la necesidad de recurrir a poderosas o robustas herramientas o sistemas que le sirvan de soporte a la hora de tomar una decisión. De esta manera estos inteligentes, precisos y eficientes sistemas son adoptados por más organizaciones, en las cuales se transforman en una importante estrategia del negocio.
BIBLIOGRAFIA:
Hernando Diego (2003).
Sistemas expertos.

Samper Márquez Juan José (2004).
Introducción a los sistemas expertos.

Canca, J.
"Sistemas Expertos".

J. Mcallister.
”Inteligencia artificial” (1999).

Tirso de Andrés,.
La Inteligencia artificial y la humana, (2002).

Luis Mª Gonzalo,
Inteligencia Humana e Inteligencia Artificial, Madrid, (1987).

Daniel cohen karen y Enrique Asín Lares
Guía de Sistemas de información para los negocios.

Internet:
http://www.monografias.com/
http://www.wikipedia.com/
http://www.elrincondelvago.com/









No hay comentarios: