Monografias.com > Computación > Programación
Descargar Imprimir Comentar Ver trabajos relacionados

Herramientas de Software. Inteligencia Artificial y Sistemas Expertos




Enviado por cecyreyesolivans



    1. Definición de inteligencia
      artificial
    2. Diferencia entre la
      inteligencia natural y la artificial
    3. Historia de la
      IA
    4. Prueba de
      Turing
    5. Visión general de la
      inteligencia artificial
    6. Naturaleza de la
      inteligencia
    7. Principales ramas de la
      IA
    8. Características de un
      SE
    9. Capacidades de los
      SE
    10. Cuando usar los
      SE
    11. Componentes de los
      SE
    12. Desarrollo de los
      SE
    13. Participantes en el desarrollo
      y utilización de los SE
    14. Herramientas y técnica
      para el desarrollo de sistemas expertos
    15. Ventajas de los Shells y los
      productos de SE
    16. Alternativas de desarrollo de
      SE
    17. Aplicaciones de los SE y de la
      IA

    Una definición estrecha del término
    "inteligencia"
    es "la habilidad de aprender". Cuanto mejor equipada esté
    una persona con
    herramientas
    mentales para aprender y aplicar nuevas ideas, mayor será
    su inteligencia. Es decir, inteligencia es la aptitud para
    aprender y también para pensar.

    DEFINICIÓN DE INTELIGENCIA
    ARTIFICIAL

    • Es una de las áreas de las ciencias
      computacionales encargadas de la creación de hardware y
      software
      que tenga comportamientos inteligentes.
    • La IA es la ciencia
      que enfoca su estudio a lograr la comprensión de
      entidades inteligentes. Es evidente que las computadoras que posean una inteligencia a
      nivel humano (o superior) tendrán repercusiones muy
      importantes en nuestra vida diaria.

    DIFERENCIA ENTRE LA INTELIGENCIA NATURAL Y LA
    ARTIFICIAL

    Atributos

    Inteligencia Natural

    Inteligencia Artificial

    Capacidad de usar detectores

    Alta

    Baja

    Capacidad de ser creativo

    Alta

    Baja

    Capacidad de aprender de la
    experiencia

    Alta

    Baja

    Capacidad de adaptación

    Alta

    Baja

    Capacidad de permitirse el costo
    de adquirir experiencia

    Alta

    Baja

    Capacidad de usar diversas fuentes de
    información

    Alta

    Alta

    Capacidad de adquirir una gran cantidad de
    información externa

    Alta

    Alta

    Capacidad de realizar cálculos
    complejos

    Baja

    Alta

    Capacidad de transferir
    información

    Baja

    Alta

    Capacidad de hacer una serie de cálculos
    con rapidez y exactitud

    Baja

    Alta

    HISTORIA DE LA IA

    En 1937 el matemático inglés
    Alan Mathison Turing (1912-1953) publicó un
    artículo de bastante repercusión sobre los
    "Números Calculables", que pueden considerarse el origen
    oficial de la Informática Teórica.

    En este artículo, introdujo la Máquina de
    Turing, una entidad matemática
    abstracta que formalizó el concepto de
    algoritmo y
    resultó ser la precursora de las computadoras digitales.
    Con ayuda de su máquina pudo demostrar que existen
    problemas
    irresolubles que ningún ordenador será capaz de
    solucionar, por ello Turing es considerado el padre de la
    teoría
    de la computabilidad.

    También se le considera el padre de la
    Inteligencia Artificial, por su famosa Prueba de Turing, que
    permitiría comprobar si un programa de
    ordenador puede ser tan inteligente como un ser
    humano.

    PRUEBA DE TURING

    Dos personas y un computador,
    una de las personas es un interrogador y la otra persona y el
    computador son los elementos a ser identificados.

    Cada uno de los elementos está en un cuarto
    distinto.

    La comunicación entre los elementos es escrita
    y no se puede ver.

    Después de un cierto número de preguntas y
    respuestas, sí el interrogador no puede identificar
    quién es el computador y quién la persona, entonces
    podemos decir que el computador piensa.

    Hoy por hoy, el trabajo que
    entraña programar una computadora
    para pasar la prueba es considerable. La computadora
    debería ser capaz de lo siguiente:

    Procesar un lenguaje
    natural
    : Para así poder
    establecer comunicación satisfactoria, sea en español,
    inglés o en cualquier otro idioma humano.

    Representar el conocimiento: Para guardar toda la
    información que se le haya dado antes o durante el
    interrogatorio. Utilización de Base de Datos
    para receptar preguntas y luego almacenarlas.

    Razonar automáticamente: Utiliza la
    información guardada al responder preguntas y obtener
    nuevas conclusiones o tomar decisiones.

    Autoaprendizaje de la máquina: Con el
    propósito de adaptarse a nuevas circunstancias. El
    autoaprendizaje conlleva a la auto-evaluación.

    Para aprobar la prueba total de Turing, es necesario que
    la computadora esté dotada de:

    Vista: Capacidad de percibir el objeto que se
    encuentra en frente suyo.

    Robótica: Capacidad para mover el objeto
    que ha sido percibido.

    La IA ha pasado por diversas situaciones:

    El término fue inventado en 1956, en un congreso
    en el que se hicieron previsiones triunfalistas a diez
    años que jamás se cumplieron, lo que provocó
    el abandono casi total de las investigaciones
    durante quince años.

    En 1980 la historia se repitió
    con el desafío japonés de la quinta
    generación, que dio lugar al auge de los sistemas
    expertos, pero que no alcanzó muchos de sus objetivos, por
    lo que este campo ha sufrido una detención en los
    años noventa.

    En la actualidad estamos tan lejos de cumplir la famosa
    prueba de Turing como cuando se formuló: Existirá
    Inteligencia Artificial cuando seamos capaces de distinguir entre
    un ser humano y un programa de computadora en una
    conversación a ciegas

    Como anécdota, muchos de los investigadores sobre
    la IA sostienen que "la inteligencia es un programa capaz de ser
    ejecutado independientemente de la máquina que lo ejecute,
    computador o cerebro".

    VISIÓN GENERAL DE LA INTELIGENCIA
    ARTIFICIAL

    Estos sistemas ayudan a elaborar diagnósticos
    médicos, explorar en busca de recursos
    naturales, determinar errores en dispositivos
    mecánicos y ayudar en el diseño
    y puesta en operación de otros sistemas de computación.

    Los sistemas de inteligencia artificial incluyen a las
    personas, los procedimientos,
    el hardware y software, los datos y los
    conocimientos necesarios para desarrollar sistemas, y máquinas
    de computación que presenten características de
    inteligencia. El objetivo del
    desarrollo de
    sistemas de IA contemporáneos no es el reemplazo completo
    de la toma de
    decisiones de los humanos, pero sí duplicarlas para
    ciertos tipos de problemas bien definidos.

    NATURALEZA DE LA INTELIGENCIA

    Aprender de la experiencia y aplicar el
    conocimiento adquirido de ésta
    : Esto no es
    natural de los sistemas de computación, por ello se debe
    tener la capacidad de programar en forma cuidadosa. En la
    actualidad los investigadores desarrollan sistemas que tienen
    esta capacidad, por ejemplo los juegos de
    ajedrez de IA
    pueden aprender a mejorar su juego mientras
    se enfrenta a competidores humanos.

    Mejorar situaciones complejas: Desarrollo
    de sistemas computacionales que puedan manejar situaciones
    confusas requieren de una planeación
    cuidadosa y complicada… porque incluso los humanos cometen
    errores.

    Solucionar problemas cuando se carece de
    información importante:
    La esencia de la toma de
    decisiones es hacer frente a la incertidumbre. En la actualidad,
    los IA pueden hacer cálculos, comparaciones y tomar
    decisiones importantes incluso con poca
    información.

    Determinar qué es importante: El conocimiento
    de lo verdaderamente importante es lo que distingue a un buen
    tomador de decisiones. El desarrollo de programas y
    métodos,
    que permitan a los sistemas y máquinas de
    computación identificar la información importante,
    no es una tarea sencilla.

    Reaccionar en forma rápida y correcta a una
    nueva situación:
    Las computadoras no tienen esta
    capacidad sin una programación complicada.

    Comprender imágenes
    visuales:
    La interpretación de imágenes visuales
    puede implicar gran dificultad, incluso para las computadoras
    más sofisticadas. Moverse a través de una
    habitación con sillas, mesas y otros objetos puede ser un
    asunto sin importancia para las personas, pero es extremadamente
    complejo para las máquinas, los robots y las computadoras.
    Estas computadoras requieren una extensión de la
    comprensión de las imágenes visuales, conocida como
    sistema
    perceptivo. Contar con un sistema perceptivo le permite a una
    máquina aproximarse a la forma en que el ser humano ve,
    oye y siente los objetos.

    Procesar y manipular símbolos: Aunque las computadoras son
    excelentes para cálculos numéricos, no son tan
    eficientes cuando tienen que tratar con símbolos y objetos
    tridimensionales. Sin embargo, los desarrollos recientes en los
    equipos y el software para la visión de la máquina
    permiten que algunas computadoras procesen y manipulen
    símbolos sobre una base limitada.

    Ser creativos e imaginativos: Pocas computadoras
    tienen la capacidad de ser verdaderamente imaginativas o
    creativas en esta forma, aunque se ha desarrollado software que
    permite a una computadora escribir cuentos
    cortos.

    Usar la heurística (reglas prácticas
    producto de la
    experiencia:
    En la actualidad, algunos sistemas de
    computación tienen esta capacidad. Si se cuenta con los
    programas apropiados, se pueden obtener soluciones que
    usen aproximaciones, en lugar de intentar buscar una
    solución óptima que pueda ser difícil desde
    el punto de vista técnico o requiera demasiado tiempo.

    PRINCIPALES RAMAS DE LA IA

    Los esfuerzos de la IA se clasifican según varias
    categorías. Mientras la investigación y el desarrollo como robótica y visión artificial, se
    relacionan con el hardware y software, la investigación y
    el desarrollo en otras áreas sólo se relacionan con
    el software.

    Robótica: Incluye el desarrollo de
    dispositivos mecánicos o de computación que tengan
    la capacidad de realizar funciones, tales
    como pintar automóviles, de hacer soldaduras de
    precisión y realizar otras tareas que requieran de un alto
    grado de precisión o que sean tediosas o impliquen peligro
    para los seres humanos. En la robótica
    contemporánea se combinan las capacidades de alta
    precisión de la máquina con un software controlador
    sofisticado.

    Sistema de visión: Incluyen equipos y
    software que les permite a las computadoras capturar, almacenar y
    manipular imágenes visuales y fotografías. El
    Departamento de Justicia de
    los Estados Unidos
    usa un sistema de visión para realizar análisis de huellas dactilares, con casi el
    mismo nivel de precisión que los expertos
    humanos.

    Los sistemas de visión se pueden usar junto con
    robots para darles "visión" a estas máquinas y que
    pueda tomar decisiones con base a lo que ve y reconocer la
    información visual de acuerdo con patrones
    generales.

    Procesamiento de lenguaje natural: Son programas
    diseñados para tomar lenguajes humanos como entrada y
    traducirlo en un conjunto estándar de instrucciones que
    una computadora ejecuta. Los programas analizan gramaticalmente
    oraciones, tratando de eliminar la ambigüedad de un contexto
    determinado. El propósito de estos complejos programas es
    permitir a los seres humanos usar su propio lenguaje natural
    cuando interactúan con programas como sistemas de administración de bases de datos
    (DBMS) o sistemas de apoyo para la toma de decisiones.

    El objetivo de los procesadores de
    lenguaje natural es eliminar paulatinamente la necesidad de
    aprender lenguajes de
    programación o comandos
    personalizados para que las computadoras entiendan. Su gran
    ventaja radica en que pueden usarse junto con dispositivos de
    reconocimiento de voz a fin de que el usuario de instrucciones a
    las computadoras para que realicen tareas, sin usar un teclado o
    cualquier otro dispositivo de entrada.

    Sistemas de aprendizaje:
    Una combinación de software y equipos que le permite a la
    computadora cambiar su modo de funcionar o reaccionar a
    situaciones, basado en la retroalimentación que recibe. Por ejemplo,
    algunos juegos computarizados tienen capacidades de aprendizaje,
    si la computadora no ganaun juego en particular, recuerda no
    hacer los mismos movimientos.

    Redes Neuronales: Es un sistema de
    computación que puede actuar en la misma forma que
    funciona el cerebro humano, o simularlo. Además, el
    software de red neuronal se puede usar
    para simular una red neuronal por medio
    de computadoras normales. La redes
    neuronales pueden procesar muchas piezas de
    información al mismo tiempo y aprender a reconocer
    patrones.

    A diferencia de los sistemas expertos, un sistema de red
    neuronal aprende por ensayo y
    error.

    Características:

    Capacidad de recuperar información incluso si
    falla alguno de los nodos neuronales.

    Modificación rápida de los datos
    almacenados como consecuencia de nueva
    información.

    Capacidad de descubrir relaciones y tendencias en
    grandes bases de datos.

    capacidad de resolver problemas complejos para los
    cuales no se cuento con
    la información.

    Las redes neuronales son
    excelentes para el reconocimiento de patrones. Por ejemplo, las
    computadoras de red neuronal se pueden usar para leer los
    códigos de barra de los cheques
    bancarios a pesar de manchas o de una impresión de baja
    calidad.

    Lógica Difusa: Se basa en reglas que no
    tienen límites
    discretos, sino que se prolongan en un continuum, permitiendo a
    un sistema manejar mejor la ambigüedad. Esto es muy
    útil para reflejar cómo tienden a pensar las
    personas, en términos relativos, no absolutos. Cuando la
    lógica
    difusa se incorpora a un SE, el resultado es un sistema que
    limita mejor la manera natural en que un experto humano
    resolvería un problema.

    Un concepto fundamental en la aplicación de
    lógica difusa es el de la variable lingüística de una variable
    matemática; su valor se
    describe con una palabra en lugar de un número. Ejemplo,
    la edad se es joven, de los 15 a los 20, pero a los 35
    todavía se considera joven.

    Algoritmos genéticos: Son funciones
    matemáticas que usan los principios de
    Darwin para
    mejorar una aplicación. La funciones se diseñan
    para simular en software, en cuestión de minutos o
    segundos, lo que sucede en ambientes naturales durante millones
    de años.

    Agentes inteligentes: La creación
    más reciente en IA son los agentes inteligentes, programas
    de computadora que automáticamente revisan enormes
    cantidades de datos y seleccionan y entregan la
    información más adecuada para el usuario, de
    acuerdo con requisitos contextuales o específicos. La
    aplicación más importante de los agentes
    inteligentes se encuentra en la WEB.

    El propósito principal de los agentes
    inteligentes es realizar sus tareas significativas más
    rápido, con más frecuencia y de manera más
    efectiva , que la gente. Los expertos dicen que pronto los
    agentes inteligentes vincularán automáticamente su
    computadora con sitios favoritos, le avisarán cuando
    éstos se hayan actualizado y adecuarán
    páginas específicas a sus preferencias.

    Tipos de agentes

    Agentes de reflejo simple: Este tipo de agente no
    contiene internamente estados y sus procesos o
    acciones que
    realiza son respuestas a la entrada de percepciones, a esta
    conexión entre percepciones y acciones se las denomina
    reglas de condición-acción.
    Ejemplo: Si el carro de adelante está frenando
    entonces empiece a frenar.

     Agentes bien informados de todo lo que
    pasa:
    Este tipo de agente guarda estados internos lo que nos
    sirve sin consideración para ejecutar una acción.
    Los sensores no nos
    pueden informar a la vez de todos los estados que maneja nuestro
    ambiente, es
    por este caso que el agente necesita actualizar algo de
    información en el estado
    interno. Esto le permite discernir que entre estados del ambiente
    que generan la misma entrada de percepciones pero, sin embargo;
    para cada uno de los estados se necesitan acciones
    distintas.

     Agentes basados en metas: Además de
    los estados, los agentes necesitan cierto tipo de
    información sobre sus metas Estas metas van a detallar las
    situaciones a las que se desea llegar de este modo, el programa
    de agente puede combinar las metas con la información de
    los resultados (acciones) que emprenda y de esta manera poder
    elegir aquellas acciones que permitan alcanzar la
    meta.

    Agentes basados en utilidad: Las
    metas por sí solas me garantizan la obtención de
    una conducta de alta
    calidad. En mi programa de agente se podría tener un
    conjunto de metas pero la obtención de éstas no me
    garantizan distinciones entre estados felices e infelices,
    mediante una medida de desempeño se podría establecer una
    comparación entre los diversos estados del mundo
    (ambientes) para poder encontrar el estado de
    felicidad para el agente. Este estado ofrecerá una mayor
    utilidad al agente.

    Sistema Experto: Consiste de equipos y software
    que almacenan conocimientos y hacen inferencias, en forma similar
    a un experto humano. A finales de los cincuenta y principios de
    los sesenta, los ingenieros en computación trataron de
    construir computadoras capaces de realizar tareas inteligentes.
    Los esfuerzos se encaminaron a crear un solucionador de problemas
    generales, una máquina capaz de imitar el proceso de
    razonamiento humano para resolver cualquier problema que un ser
    humano pudiera solucionar.

    Los esfuerzos se orientaron al diseño de
    programas que resolvieran problemas en áreas precisas
    utilizando conocimiento y razonamiento de expertos.

    El propósito de los SE es duplicar el
    conocimiento no estructurado ni documentado de unos pocos (los
    expertos) y los pone a disposición de otros. Debido a la
    forma en que están planteados los SE (basados en la
    experiencia) no puede ayudar a los usuarios que tratan con
    sucesos que los expertos no consideraron durante el periodo de
    creación. Sin embargo muchos programas avanzados que
    incluyen "redes neuronales" aprenden de situaciones nuevas y
    formulan reglas ad hoc en sus bases de conocimiento para resolver
    eventualidades no consideradas originalmente en su
    diseño.

    Para construir un SE un ingeniero del conocimiento se
    entrevista con
    un experto, traduce la información en código.
    Por lo general con la regla SI-Entonces.

    Otros métodos son marcos semánticos
    integrados por cuadros con listas de entidades y atributos; y las
    redes semánticas, mapas de
    entidades y sus atributos relacionados.

    CARACTERÍSTICAS DE UN SE

    Pueden explicar su razonamiento o decisiones
    sugeridas:
    La capacidad de explicar cómo se
    llegó a una decisión o solución.

    Puede mostrar un comportamiento
    "inteligente":
    Al examinar un grupo de
    datos, un SE puede proponer nuevas ideas o métodos para la
    solución del problema, o proporcionar asesoramiento en el
    trabajo para
    los trabajadores.

    Puede obtener conclusiones de relaciones
    complejas:
    Evaluar relaciones complejas para llegar a
    conclusiones y solucionar problemas, por ejemplo: un SE propuesto
    trabajará con un sistema de fabricación flexible
    para determinar la mejor utilización de las herramientas,
    y otro sugerirá los mejores procedimientos de control de
    calidad.

    Puede proporcionar conocimientos acumulados: Se
    puede usar para capturar conocimientos de humanos que de lo
    contrario podrían perderse. Ejemplo es el SE denominado
    DELTA (Diesel Electronic Locomotive Troble-shooting Aid),
    desarrollado para conservar el conocimiento de David Smith,
    único ingeniero competente para manejar muchas
    reparaciones extremadamente técnicas
    de esas máquinas, cuando llegó el momento de su
    jubilación.

    Puede hacer frente a la incertidumbre: Una de las
    características más importantes de un SE es su
    capacidad para enfrentar conocimientos incompletos o inexactos en
    su totalidad. Mediante el uso de las probabilidades, las estadísticas y las
    heurísticas.

    CARACTERÍSTICAS QUE LIMITAN SU
    UTILIDAD

    No se han usada o probado en forma extensa: Los
    SE no se emplean en un gran número de organizaciones.

    Dificultad de uso: Algunos sistemas expertos son
    difíciles de controlar y usar. En algunos casos se
    requiere del uso de personal de
    computación, o del personas capacitadas en el uso de SE,
    para ayudar al usuario a obtener todo lo más posible de
    estos sistemas.

    Están limitados a problemas relativamente
    limitados:
    Algunos sistemas expertos pueden realizar
    análisis de datos complejos, otros están limitados
    a problemas sencillos.

    No pueden enfrentar con facilidad conocimientos
    "mixtos":
    Un SE en una aplicación quizá no
    pueda hacer frente a conocimientos que combinen tanto reglas como
    casos.

    Posibilidad de error: Algunos sistemas expertos
    tienen capacidades limitadas para aprender de la experiencia, la
    fuente principal de conocimientos es un experto humano. Si este
    conocimiento es incorrecto o incompleto, afectará al
    sistema en forma negativa.

    Dificultad de mantenimiento: Los SE pueden ser
    difíciles de actualizar. Algunos no responden o no se
    adaptan a condiciones cambiantes.

    Pueden tener costo altos de desarrollo: Cuando se
    usan los lenguajes y métodos de programación
    tradicionales. Se puede lograr una reducción considerable
    en los costos de
    desarrollo si se emplea software para el desarrollo de
    SE.

    Ocasionan preocupaciones legales y éticas:
    Las personas que toman decisiones y llevan a cabo acciones son
    responsables, desde el punto de vista legal y ético, por
    su comportamiento. Por ejemplo, una persona puede ser procesado y
    condenada por un delito. Cuando
    los SE se usan para tomar decisiones o ayudan a tomarlas,
    ¿quién es el responsable de esta
    decisión?

    CAPACIDADES DE LOS SE

    En comparación con otros tipos de sistemas de
    información, los SE ofrecen varias capacidades
    poderosas y beneficios. Por ejemplo, con frecuencia se usa un SE
    denominado XCON para diseñar configuraciones de sistemas
    computación, pues realiza, en forma consistente, un mejor
    trabajo que los seres humanos.

    Los SE se pueden usar para solucionar problemas en todos
    los campos y disciplinas y ayudar en la totalidad de las etapas
    del proceso de solución del problemas.

    Fijación de objetivos estratégicos:
    Un SE puede ayudar a los administradores de alto nivel de la
    compañía a determinar los costos y beneficios que
    existen en producir vinos de mayor calidad y cambiar su imagen en el
    mercado.

    Planeación: Un SE puede ayudar a este
    proceso mediante la sugerencia de factores que se deben
    considerar al tomar la decisión final, sobre la base de
    datos proporcionados por la
    administración.

    Diseño: Estos SE usan principios generales
    de diseño, comprensión de los procedimientos de
    fabricación y un grupo de reglas de
    diseño.

    Toma de decisiones: Pueden sugerir posibles
    alternativas, formas de contemplar los problemas y métodos
    lógicos al proceso de toma de decisiones. Además,
    los SE pueden mejorar el proceso de aprendizaje para aquellos que
    no tienen tanta experiencia en tomar decisiones.

    Control y supervisión de calidad: Los SE
    computarizados pueden ayudar a supervisar varios sistemas y
    proponer soluciones a problemas que se presenten en ellos. Los SE
    también se pueden usar para supervisar la calidad de los
    productos.
    Cuando las máquinas funcionan en forma deficiente, el SE
    puede ayudar a determinar las causas posibles.

    Diagnóstico: Puede proporcionar al
    médico la probable causa de enfermedad y proponer
    tratamientos u operaciones. En
    los negocios
    también diagnóstica posibles problemas y
    soluciones.

    CUANDO USAR LOS SE

    El desarrollo se SE complejos puede ser difícil,
    costoso y requerir de tiempo, por lo tanto, es importante
    asegurarse de que los posibles beneficios valen el esfuerzo y que
    las diversas características del SE se equilibren, en
    términos de costo, control y
    complejidad.

    Proporciona un alto potencial de rendimiento o reduce el
    riesgo

    Puede capturar y conservar conocimientos humanos
    irremplazables

    Puede desarrollar un sistema más consistente que
    los expertos humanos

    Puede proporcionar los conocimientos necesarios en
    varias ubicaciones al mismo tiempo o en un ambiente hostil
    peligroso para la salud humana.

    Puede proporcionar conocimientos costosos y poco
    comunes.

    Puede proporcionar los conocimientos necesarios para la
    capacitación y el desarrollo con el
    propósito de compartir los conocimientos y la experiencia
    de expertos humanos con un gran número de
    personas.

    COMPONENTES DE LOS SE

    LA BASE DE CONOCIMIENTOS: Almacena toda la
    información, datos, reglas, casos y relaciones importantes
    que utiliza el SE. Para cada aplicación única se
    tiene que desarrollar una base conocimientos. Por ejemplo, un SE
    médico contendrá hechos sobre enfermedades y
    síntomas. La base de conocimientos puede incluir
    conocimientos genéricos provenientes de teorías
    generales que se han establecido con el tiempo y conocimientos
    específicos que provienen de experiencias más
    recientes y de reglas prácticas.

    Propósito de una base de conocimientos:
    Contener los hechos y la información pertinentes para el
    SE específico. Una base de conocimientos es similar a la
    suma total de los conocimientos y experiencias de los expertos
    humanos que se obtienen a través de años de trabajo
    en un área o disciplina
    específica.

    Reunión de expertos humanos: Una base que
    contiene información proporcionada por diversos expertos
    puede ser extremadamente eficiente y exacta desde el punto de
    vista de sus sugerencia y pronósticos.

    Utilización de la lógica difusa:
    Otro reto para los diseñadores y desarrolladores de SE es
    capturar conocimientos y relaciones que no son precisos o
    exactos.

    El uso de reglas: Una regla es una
    instrucción condicionada que enlaza determinadas
    condiciones con acciones o resultados. La regla se crea por medio
    de construcciones de si-entonces.

    El uso de casos: Un SE puede usar casos al
    desarrollar la solución a un problema o situación
    actual. El proceso incluye: 1) encontrar casos almacenados en la
    base de conocimientos, que sean similares al problema, 2)
    modificar las soluciones a los casos para adaptarlas, o
    acomodarlas, al problema o la situación actual.

    EL MOTOR DE
    INFERENCIAS:
    El propósito general de un motor de
    inferencias es buscar información y relaciones en la base
    de conocimientos, y proporcionar respuestas, pronósticos y
    sugerencias en la misma forma en que lo haría un experto
    humano. En otras palabras, el motor de inferencias es el que
    proporciona el consejo experto.

    Encadenamiento inverso: Es el proceso de comenzar
    con conclusiones y trabajar hacia atrás hasta los hechos
    de soporte. Si los hechos no apoyan la conclusión, se
    elige y prueba otra.

    Encadenamiento hacia delante: Se inicia con los
    hechos y trabajo hacia delante hasta las conclusiones.

    Comparación del encadenamiento inverso y el
    encadenamiento hacia delante:
    El encadenamiento hacia delante
    puede llegar a conclusiones y producir más
    información con menos consultas para el usuario que el
    encadenamiento inverso, pero este método
    requiere más procesamiento y un mayor grado de
    sofisticación.

    LOS RECURSOS DE
    EXPLICACIONES:
    Una parte importante del SE son los recursos
    de explicaciones que le permiten al usuario, o al responsable de
    tomar las decisiones comprender en que forma llegó el SE a
    ciertas conclusiones o resultados.

    LOS RECURSOS DE ADQUISICIÓN DE
    CONOCIMIENTOS:
    una tarea difícil en el desarrollo de
    un sistema experto es el proceso de crear y actualizar la base de
    conocimientos.

    En la actualidad, existe software especializado que le
    permite a los usuarios y a quienes toman las decisiones crear y
    modificar sus propias bases de conocimientos.

    LA INTERFAZ DEL USUARIO: Sirve para
    diseñar, crear, actualizar y usar los SE. El
    propósito general de la interfaz del usuario es facilitar
    a los usuarios y a los tomadores de las decisiones el desarrollo
    y el uso de un SE.

    DESARROLLO DE LOS SE

    Los SE requieren de un método de desarrollo
    sistemático para obtener los mejores
    resultados.

    PROCESO DE DESARROLLO: La especificación
    de los requisitos para un SE se inicia con la
    identificación de los objetivos del sistema y su uso
    potencial. Identificar a los expertos puede ser difícil.
    En algunos casos, una compañía contará con
    expertos humanos; en otros, se requerirá expertos ajenos a
    la
    organización. Para el desarrollo de los elementos del
    SE son necesarias habilidades especiales. La puesta en
    operación del SE incluye ponerlo en acción y
    asegurarse de que funciona como se desea.

    PARTICIPANTES EN EL DESARROLLO Y
    UTILIZACIÓN DE LOS SE

    El experto en dominio:
    Debido al tiempo y el esfuerzo que se requieren para la tarea, se
    desarrolla un SE para atender un área de conocimiento. A
    dicha área se le conoce como dominio. El experto en
    dominio es la persona o grupo que tiene la experiencia o el
    conocimiento al cual se intenta capturar en el SE. Por lo general
    con la siguiente capacidad:

    • Reconocer el problema real
    • Desarrollar una estructura
      general para la solución de problemas
    • Formular teorías sobre la
      situación
    • Desarrollar y usar reglas generales para solucionar
      un problema
    • Identificar cuándo deben quebrantarse las
      reglas
    • Solucionar problemas con rapidez y
      eficiencia
    • Aprender de experiencias anteriores
    • Identificar lo que es importante y lo que no lo es
      para solucionar un problema
    • Explicar a otros la situación y las soluciones
      de problemas.

    El ingeniero del conocimiento y el usuario del
    conocimiento:
    el primero es la persona que tiene el entrenamiento y
    la experiencia en el diseño, desarrollo, puesta en
    operación y mantenimiento de un SE, incluyendo
    entrenamiento y experiencia con shells de SE. El segundo es quien
    usa el SE y se beneficia de él.

    HERRAMIENTAS Y TÉCNICA PARA EL DESARROLLO DE
    SISTEMAS EXPERTOS

    En teoría, los sistemas expertos se deben
    desarrollar a partir de algún lenguaje de
    programación. Desde la introducción de los sistemas de
    computación, los lenguajes de fáciles de usar,
    más potentes y cada vez más capaces de manejar. En
    los inicios del desarrollo de SE se usaban los lenguajes Pascal, FORTRAN Y
    COBOL. LISP
    fue uno de los primeros lenguajes especiales desarrollados y
    empleados para aplicaciones de inteligencia artificial. PROLOG es
    otro. Sin embargo, actualmente existen otros productos de SE
    (como los shells) que evitan el trabajo de programar.

    Shells y productos para SE: Un shell (interprete)
    de SE es un grupo de paquetes y herramientas de software
    utilizados para diseñar, desarrollar, poner en
    operación y mantener SE con una programación
    mínima. Existen shells de SE tanto para computadoras
    personales como para sistemas de macrocomputadoras. Algunos son
    baratos con costo inferior a los 500 dólares. El usuario
    introduce los datos o parámetros apropiados y el SE
    proporciona el resultado para el problema o situación.
    Algunos de los shells más populares son Exsys de
    MultilLogic, Inc. Level 5, de Rule Machines Corporación y
    XpertRule, de Attar Software.

    VENTAJAS DE LOS SHELLS Y LOS PRODUCTOS DE
    SE

    Fáciles de desarrollar y modificar:
    Conforme se dispone de nuevos hechos y reglas y se hace necesario
    modificar los ya existentes, es deseable hacer cambios a la base
    de conocimientos. Los sistemas desarrollados por medio de PROLOG
    y LIPS son más difíciles de modificar y más
    costosos que los SE desarrollados con shells.

    El uso de la satisfacción: El
    método tradicional de solución de problemas intenta
    encontrar la solución óptima, o la mejor; los
    lenguajes avanzados y simbólicos pueden hacer frente a
    problemas más complejos y producir decisiones muy buenas,
    aunque no siempre óptimas.

    El uso de la heurística: Es necesario que
    los SE puedan manejar relaciones imprecisas. La heurística
    puede hacerlo y a menudo producirá una buena
    solución que deje satisfecho al tomador de las
    decisiones.

    Desarrollo por los ingenieros y usuarios del
    conocimiento:
    Con los shells de SE, los ingenieros y usuarios
    del conocimiento pueden completar el proceso de desarrollo. Es
    frecuente que al desarrollar SE con lenguajes de
    programación tradicionales se requieran análisis de
    sistemas y programación de computación, que son
    costosos y que por lo común requieren de más
    tiempo.

    ALTERNATIVAS DE DESARROLLO DE SE

    Los SE se pueden desarrollar desde cero por medio de un
    shell de SE o mediante un paquete de software de SE ya existente.
    El método seleccionado depende de los beneficios del
    sistema comparados con el costo, el control y la complejidad de
    cada alternativa. Es más fácil y menos costoso
    desarrollar un SE utilizando un paqueta ya existente o un shell
    de SE. Sin embargo, si la organización no cuenta ya con este tipo de
    software, habrá un costo adicional para desarrollar un
    paquete existente o adquirir un shell de SE

    Desarrollo en la propia empresa (desde
    cero):
    Es el método más costoso, pero la
    organización tiene más control sobre las
    características y los elementos del SE.

    Desarrollo en la propia empresa (desde un shell):
    Puede ser menos complejo y más fácil de mantener
    que desarrollarlo desde cero. Sin embargo, quizá sea
    necesario modificar el SE resultante para que sea idóneo
    para aplicaciones específicas.

    Compra paquetes ya existentes (uso de paquetes
    existentes): M
    étodo menos costoso y más
    rápido. Aquel cuyo desarrollo corrió a cargo de una
    compañía de software o de asesoría para un
    campo o área específicos, tales como el
    diseño de un nuevo microprocesador
    para computación o un sistema para pronosticar y predecir
    el clima. Estos
    sistemas pueden ser más fáciles de mantener y
    actualizar al transcurso del tiempo, pero no pueden satisfacer
    las necesidades especiales de la organización.

    APLICACIONES DE LOS SE Y DE LA IA

    Otorgar crédito: Para revisar la solicitud de
    crédito de una persona y el historial crediticio que
    mantiene con las agencias dedicadas a este rubro, para tomar la
    decisión de otorgar el crédito.

    Administración y recuperación de
    información:
    Los SE pueden ayudar a este proceso
    mediante el uso de agentes. Los agentes de SE ayudan a los
    gerentes a encontrar los datos y la información correctos,
    al mismo tiempo que eliminan hechos sin importancia que puedan
    obstaculizar la toma de decisiones oportunas.

    IA y SE incorporados a los productos: el sistema
    de frenos antibloqueo de los automóviles modernos es un
    ejemplo de un SE rudimentario. Los investigadores de IA
    también están encontrando formas para usar las
    redes neuronales y la robótica en dispositivos de uso
    diario, tales como tostadoras de pan, relojes despertadores y
    aparatos de TV.

    Disposición de plantas:
    FLEXPERT es un SE que usa la lógica difusa para realizar
    el trazado de plantas. El software ayuda a las
    compañías a determinar la mejor ubicación
    para los equipos y las instalaciones de
    fabricación.

    Instalaciones de hospitales y médicas:
    Algunos hospitales usan SE para determinar la posibilidad de que
    un paciente contraiga cáncer u otras enfermedades. MYCIN
    es un SE creado en la Universidad
    Stanfor para analizar infecciones en la sangre.

    Departamento de ayuda y asistencia: los
    departamentos de servicios de
    ayuda al cliente usan SE
    para proporcionar asistencia oportuna y exacta. Kaiser
    Permanente, un HMO (Health Mantenance Organization) de gran
    tamaño, usa un SE y repuesta verbal para automatizar la
    función
    del su departamento de ayuda.

    Evaluación del desempeño de
    empleados:
    Un SE de Austin-Hayne, llamado Employee Appreiser,
    les proporciona asesora experta a los gerentes para que la
    utilicen en las revisiones del desempeño de los empleados
    y el desarrollo de carreras.

    Análisis de préstamos: KPMG Peat
    Marwick usa un SE llamado Loan Probe para revisar las reservas
    para pérdidas en préstamos, con el propósito
    de determinar si se han reservado fondos suficientes para cubrir
    riesgos de que
    algunos préstamos se vuelvan incobrables.

    Detección de virus: IBM
    utiliza la tecnología de red
    neuronal para ayudar a crear software más avanzado en la
    erradicación de los virus de computación, un
    problema importante para las empresas
    estadounidenses.

    Reparación y mantenimiento: AT&T usa
    el SE ACE para analizar el mantenimiento de las redes
    telefónicas. Nynex (New York and New England Telephone
    Exchange) tiene sistemas expertos para ayudar a sus trabajadores
    a localizar y resolver problemas telefónicos con
    referencia a sus clientes.

    Embarques: Lufthansa, una aerolínea
    alemana, usa un SE, CARGEX-Cargo, para ayudar a determinar las
    mejores rutas de embarque.

    Mercadotecnia: CoverStory es un SE que trae
    información de una base de datos y elabora, en forma
    automática, informes de
    mercadotecnia.

    Optimización de almacenes:
    Unite Distillers emplea un SE para determinar las mejores
    combinaciones de existencias, para producir su mezcla de whisky
    escocés.

    INTEGRACIÓN DE SE: Un SE se puede
    integrar con otros sistemas en una organización mediante
    una base de datos común. Un SE que identifique a los
    clientes que demoran sus pagos y que no deben recibir
    crédito adicional puede tomar los datos de la misma base
    de datos que un MIS de facturación que elabora informes
    semanales de las cuentas vencidas.
    La misma base de datos podría usarse para un sistema de
    apoyo a las decisiones que realice análisis de "que
    sucedería sí", para determinar la
    repercusión de los pagos demorados sobre los flujos
    ejecutivo, ingresos y
    niveles generales de utilidad.

    Limitaciones de los SE

    Los SE sólo manejan áreas precisas del
    conocimiento:
    Funcionan bien si el dominio al que se enfocan
    está bien definido. Por ejemplo, es dofícil que se
    encuentre un SE médico general.

    Los SE no tienen sentido común: El sistema
    sólo resolverá aquellos problemas para los que
    está específicamente programado.

    Los SE Tienen una capacidad limitada de
    aprendizaje:
    Los ingenieros del conocimiento deben dirigir
    los sistemas y proporcionar retroalimentación continua
    para que aprenda.

    BIBLIOGRAFÍA

    RALPH M. STAIR Y GEORGE E. REYNOLDS,Principios de
    Sistemas de Información. Inteligencia Artificial y
    Sistemas expertos, Editorial Thomson, Año 2002, pp.
    480-511

    JOHN AVAVA, Inteligencia Artificial. www.fortunecity.com.
    Año 98.

    GREGORIO ARELLANO, MARTHA AYUQUINA, Proyecto
    Inteligencia Artificial, http.//cruzrojaguayas.org, Universidad de
    Guayaquil

    Cecilia Reyes Olivans

    Estudiante de maestría en Ciencias de la
    Educación

    En la Universidad Autónoma del Noreste, campus
    Piedras Negras, Coahuila

    20 de agosto de 2005

    Coahuila a 20 de agosto de 2005

    Nota al lector: es posible que esta página no contenga todos los componentes del trabajo original (pies de página, avanzadas formulas matemáticas, esquemas o tablas complejas, etc.). Recuerde que para ver el trabajo en su versión original completa, puede descargarlo desde el menú superior.

    Todos los documentos disponibles en este sitio expresan los puntos de vista de sus respectivos autores y no de Monografias.com. El objetivo de Monografias.com es poner el conocimiento a disposición de toda su comunidad. Queda bajo la responsabilidad de cada lector el eventual uso que se le de a esta información. Asimismo, es obligatoria la cita del autor del contenido y de Monografias.com como fuentes de información.

    Categorias
    Newsletter