Sistemas Inteligentes -Lectura

29
1 1.1 Definición de Sistema Inteligente Un sistema inteligente es un programa de computación que reúne características y comportamientos asimilables a la inteligencia humana o animal. [1] Un sistema inteligente es una entidad capaz de decidir por sí misma que acciones llevará a cabo para alcanzar sus metas basándose en sus percepciones, conocimientos y experiencias acumuladas. [2] Los requisitos generales de un Sistema Inteligente son los siguientes: A) El sistema deberá ser capaz de aprender. Esto implica que el sistema DEBE tener un recuerdo para el aprendizaje que se mantenga. También el aprendizaje viene en un número de variedades: I) TIENE que ser capaz de aprender de sus propias experiencias. Estas se pueden dividir en nuevas agrupaciones: 1) El aprendizaje a través de ensayo y error. 2) El aprendizaje a través de la observación. 3) El aprendizaje a través del activo razonamiento. II) Deberá ser capaz de aprender de la instrucción, pero esto no es necesario. Por lo menos el sistema DEBE tener instintos pre programado. B) El sistema deberá ser autónomo. Es decir, que deberá ser capaz de hacer las cosas por sí mismo (sin embargo puede optar por aceptar la ayuda). I) El sistema deberá ser capaz de afectar el medio ambiente sobre la base de sus propias conclusiones independientes. II) El sistema deberá ser su propio maestro, ante todo, y por lo tanto no requerir de la intervención del operador para funcionar. Esto no necesariamente excluye la adopción de las órdenes de otro sistema, pero la elección de obedecer deberá ser hecha por el propio sistema. III) El sistema deberá ser motivado. Debe tener necesidades y requerimientos que pueden ser satisfechos por sus propias acciones.

description

Lectura

Transcript of Sistemas Inteligentes -Lectura

  • 1

    1.1 Definicin de Sistema Inteligente

    Un sistema inteligente es un programa de computacin que rene caractersticas y

    comportamientos asimilables a la inteligencia humana o animal.[1]

    Un sistema inteligente es una entidad capaz de decidir por s misma que acciones llevar

    a cabo para alcanzar sus metas basndose en sus percepciones, conocimientos y

    experiencias acumuladas.[2]

    Los requisitos generales de un Sistema Inteligente son los siguientes:

    A) El sistema deber ser capaz de aprender. Esto implica que el sistema DEBE tener

    un recuerdo para el aprendizaje que se mantenga. Tambin el aprendizaje viene en

    un nmero de variedades:

    I) TIENE que ser capaz de aprender de sus propias experiencias. Estas se

    pueden dividir en nuevas agrupaciones:

    1) El aprendizaje a travs de ensayo y error.

    2) El aprendizaje a travs de la observacin.

    3) El aprendizaje a travs del activo razonamiento.

    II) Deber ser capaz de aprender de la instruccin, pero esto no es necesario.

    Por lo menos el sistema DEBE tener instintos pre programado.

    B) El sistema deber ser autnomo. Es decir, que deber ser capaz de hacer las

    cosas por s mismo (sin embargo puede optar por aceptar la ayuda).

    I) El sistema deber ser capaz de afectar el medio ambiente sobre la base de

    sus propias conclusiones independientes.

    II) El sistema deber ser su propio maestro, ante todo, y por lo tanto no requerir

    de la intervencin del operador para funcionar. Esto no necesariamente

    excluye la adopcin de las rdenes de otro sistema, pero la eleccin de

    obedecer deber ser hecha por el propio sistema.

    III) El sistema deber ser motivado. Debe tener necesidades y requerimientos que

    pueden ser satisfechos por sus propias acciones.

  • 2

    C) El sistema deber ser capaz de razonar. Es decir, se debe utilizar algn tipo de

    razonamiento, basado en hechos conocidos y capaces de producir las ideas que

    ms tarde se hacen hechos conocidos.

    D) El sistema deber ser capaz de desarrollar su autoconciencia. Esto no slo se

    relaciona con la autonoma, el razonamiento y el aprendizaje, sino tambin con la

    consideracin de la necesidad de los sentidos internos y externos.

    En la figura 1.1 se muestra un sistema inteligente bsico.

    Fig. 1.1 Sistema Inteligente.

    1.2 Definicin de Inteligencia Artificial (I.A)

    Es una de las reas de las ciencias computacionales encargadas de la creacin de

    hardware y software que tenga comportamientos inteligentes.[3]

    La capacidad de accin de las mquinas para realizar determinados procesos.

    La inteligencia artificial se define como aquella inteligencia exhibida por artefactos creados

    por humanos es decir, artificial. A menudo se aplica hipotticamente a las computadoras.

    El nombre I.A se usa para referirse al campo de la investigacin cientfica que intenta

    acercarse a la creacin de los sistemas inteligentes.[4]

    Entonces, se puede decir que la I.A incluye caractersticas humanas tales como el

    aprendizaje, la adaptacin, el razonamiento, la autocorreccin y el mejoramiento implcito.

  • 3

    1.3 Conceptos sobre Inteligencia Mquina

    1.3.1 Inteligencia Mquina

    Al tratar de duplicar algunas de las funciones inteligentes humanas en las mquinas, se ha

    dado origen a las llamadas mquinas o sistemas inteligentes.[5]

    De estas mquinas, las ms notables son las computadoras. Pero hay muchas otras

    clases de mquinas que se comportan apropiadamente en respuesta a varias seales y

    que tambin son llamadas mquinas inteligentes.

    Los avances de las tecnologas de Hardware y de Software han mejorado la eficacia

    de los sistemas inteligentes, resultando en decisiones casi humanas, mejoras en la

    calidad de ejecucin y en la robustez en la percepcin, a velocidades y tolerancias

    sobrehumanas.

    Las nuevas tecnologas de Hardware incluyen:

    1. Procesadores Masivamente Paralelos.

    2. Implementaciones Especiales de Alta Velocidad de Sistemas Cognoscitivos

    Difusos.

    3. Conceptos innovativos de procesadores asociativos que accesan datos

    directamente sin bsqueda.

    4. Aceleradores celulares para computadoras personales.

    Las nuevas tecnologas en Software incluyen:

    1. Redes Neurales Hologrficas Avanzadas, Invariantes, de Alto Orden.

    2. Sistemas Expertos Difusos.

    3. Memorias Hologrficas de Contenido Difuso Direccionable.

    4. Paquetes de Razonamiento Difuso, Toma de Decisiones y Control.

    5. Mtodos de Programacin para Visin Asociativa y Procesadores Celulares.

    6. Ambientes de Software Orientados a Objetos.

    7. Herramientas de aplicacin adaptativas Orientadas a Usuarios.

    Los sistemas inteligentes estn diseados para tratar con problemas altamente variantes,

    complejos, ruidosos, y confusos en:

    1. Administracin.

    2. Finanzas.

    3. Manufactura.

  • 4

    4. Reconocimiento de Formas.

    5. Instrumentacin Adaptativa.

    6. Procesos de control.

    7. Robtica.

    8. Diagnostico.

    9. Bases de Datos Inteligentes.

    10. Mquinas Diccionario, etc.

    En las dcadas pasadas, la inteligencia hecha por el hombre fue canalizada por dos

    caminos, la inteligencia artificial simblica (sistemas expertos) y redes neurales (sistemas

    de aprendizaje adaptativo). Estas dos tendencias en conjunto con el razonamiento difuso

    han dado paso a grandes avances en las siguientes reas cruciales.

    1. Procesamiento de informacin (Soft): Aprendizaje Rpido, Asociaciones Difusas,

    Razonamiento y Control Difuso, Generalizacin.

    2. Procesamiento de Informacin Masivamente en Paralelo: Hardware Concurrente,

    Paralelo, Asociativo, y Celular.

    Las tcnicas aplicadas en los sistemas inteligentes conducen en la eleccin de

    sistemas de razonamiento cuyo comportamiento emula el de la mente humana. Los

    sistemas deben de ser capaces de describir, evaluar y aproximar informacin con algn

    grado de difusin, incertidumbre o incompletos. La meta ltima es hacer el procesamiento

    de informacin intuitivo que muestran los humanos:

    1. Razonamiento Inconsciente, Anlogo, Paralelo y Distribuido.

    2. Reconocimiento de Patrones.

    3. Razonamiento Probabilstico.

    4. Razonamiento Inductivo en situaciones de informacin difusa o incompleta.

    Los desarrollos recientes en el diseo y adaptacin de los sistemas inteligentes, han

    proporcionado avances mayores en las siguientes reas:

    1. Modelos biolgicos; computadoras neuronales y masivamente paralelas.

    2. Computacin concurrente; sistemas inteligentes en tiempo real.

    3. Integracin de Razonamiento, Informacin y Servicio.

  • 5

    4. Aprendizaje Rpido y Reconocimiento Invariante de Objetos.

    5. Programacin dinmica, gentica y catica.

    1.3.2 Modelando la Inteligencia

    La inteligencia natural es abundante en todos los mbitos de la naturaleza. Las redes

    neuronales extraen sus principios de las ciencias del cerebro para modelar

    reconocimiento, aprendizaje y procesos de planeacin. La lgica difusa refleja muy

    cercanamente la manera en que razonamos los humanos con reglas aproximadas. Los

    algoritmos genticos aprovechan directamente los conocimientos obtenidos a travs de la

    investigacin en gentica, modelando los principios de Darwin de seleccin natural. Los

    Fractales asemejan vagamente la manera en que los sistemas vivientes repiten patrones

    mientras crecen. La teora del caos usa mecanismos derivados de simulaciones

    matemticas de procesos que nunca son exactamente los mismos dos veces. Los

    autmatas celulares modelan un universo de dos dimensiones de clulas vivientes y un

    conjunto simple de modos de interaccin. Y la lista sigue.[5]

    La familia de mtodos emergentes de solucin de problemas que imitan la

    inteligencia forma parte de la computacin cognoscitiva. La computacin cognoscitiva

    substituye con tcnicas de procesamiento ms inteligentes, las tcnicas de

    programaciones tradicionales, largas y complejas. Estos modelos inteligentes se pueden

    aplicar a una gama ms amplia de situaciones ya que no tienen limitaciones, por ejemplo,

    a ser lineales.

    Una desventaja de las tcnicas de computacin cognoscitiva es que,

    frecuentemente, no se puede probar su estabilidad de otra manera que con pruebas de

    campo extensivas. Las pruebas analticas tradicionales son imposibles de obtener para un

    enfoque donde no se usa metodologa analtica o no se sigue un modelo matemtico.

    Las tres tecnologas principales de la computacin cognoscitiva son:

    1. Tecnologas Difusas (fuzzy).

    2. Tecnologas Neuronales.

    3. Tecnologas Genticas.

    Las tres derivan su generalidad de la interpolacin de soluciones a problemas

    desconocidos a partir de las soluciones a problemas que les son familiares.

  • 6

    1.4 Manejo del Conocimiento

    1.4.1 Con Lgica Binaria

    Con el advenimiento de las computadoras digitales, se cre toda una ciencia para el

    manejo de informacin mediante secuencias de ceros y unos. Esta forma de

    representacin utiliza la lgica binaria como base para el almacenamiento y recuperacin

    de informacin.[5]

    Para el manejo del conocimiento se utiliza un lenguaje simblico. Estos smbolos se

    combinan mediante reglas y a partir de stas pueden modelarse sistemas complejos, Por

    ejemplo, los sistemas expertos en inteligencia artificial. La principal desventaja de esta

    representacin del conocimiento es que se necesitan demasiadas reglas para poder

    representar fielmente un sistema del mundo real, Bsicamente porque hay una relacin de

    uno a uno, Es decir, para un caso particular del sistema del mundo debe existir una regla

    en el sistema experto.

    1.4.2 Con Lgica Difusa

    Qu es la Lgica Difusa?

    Mtodo de razonamiento de maquina similar al pensamiento humano, que puede procesar

    informacin incompleta o incierta, caracterstico de muchos sistemas expertos.

    La Lgica Difusa, es una lgica matemtica basada en la teora de conjuntos que

    posibilita imitar el comportamiento de la lgica humana.[6]

    La Lgica Difusa (llamada tambin Lgica Borrosa por otros autores) o Fuzzy Logic

    es bsicamente una lgica con mltiples valores, que permite definir valores en las reas

    oscuras entre las evaluaciones convencionales de la lgica precisa: Si/No, Cierto/Falso,

    Blanco/Negro, etc. Se considera un sper conjunto de la Lgica Booleana. Con la Lgica

    Difusa, las proposiciones pueden ser representadas con grados de certeza o falsedad. La

    lgica tradicional de las computadoras opera con ecuaciones muy precisas y dos

    respuestas: Si o no, uno o cero.

    La lgica difusa se utiliza para representar la informacin imprecisa, ambigua, o

    vaga. Se utiliza para realizar operaciones en los conceptos que estn fuera de las

    definiciones de la lgica booleana. Un tipo de lgica que reconoce valores verdaderos y

    falsos ms que simples. Con lgica difusa, los subconjuntos se pueden representar con

  • 7

    grados de la verdad y de la falsedad. Por ejemplo, la declaracin, es hoy soleado, pudo

    ser el 100% verdad si no hay nubes, 80% verdad si hay algunas nubes, 50% verdad si

    esta nublado y 0% verdad si llueve todo el da.

    CONJUNTOS DIFUSOS

    Lotfi Asker Zadeh en 1965 defini el concepto de conjunto difuso, basndose en la idea de

    que existen conjuntos en los que no est claramente determinado si un elemento

    pertenece o no al conjunto. A veces, un elemento pertenece al conjunto con cierto grado,

    llamado grado de pertenencia. Por ejemplo, el conjunto de las personas que son altas es

    un conjunto difuso, pues no est claro el lmite de altura que establece a partir de qu

    medida una persona es alta o no lo es. Ese lmite es difuso y, por tanto, el conjunto que

    delimita tambin lo ser. Un conjunto difuso A sobre un universo de discurso U (ordenado)

    es un conjunto de pares dado por:

    ]}1,0[)(,:/)({ uAUuuuAA

    Donde, es la llamada funcin de pertenencia y A (u) es el grado de pertenencia

    del elemento u al conjunto difuso A. Este grado oscila entre los extremos 0 y 1, A (u) = 0,

    indica que u no pertenece en absoluto al conjunto difuso A, A(u)=1, indica que u

    pertenece totalmente al conjunto difuso A.

    Formalmente un conjunto difuso es una funcin del conjunto A, llamado dominio, al

    intervalo [0,1]:

    : A [0,1]

    El conjunto de valores de A para las cuales > 0 es llamado el soporte de .

    Para cualquier elemento a A, (a) es el grado de membreca de a en A se representa

    grficamente mediante la funcin de membresa.

    OPERACIONES ENTRE CONJUNTOS BORROSOS

    Las cuatro operaciones bsicas definidas sobre los conjuntos clsicos (complemento,

    interseccin, unin y subconjunto) pueden ser generalizadas a los conjuntos borrosos.

  • 8

    Dentro la teora de los conjuntos borrosos tiene especial relevancia la que hace uso de

    operaciones conocidas como operaciones estndar, definidas como:

    1) Complemento:

    )(1)( aaNOT

    2) Interseccin:

    )(),(min)()( bBaAbBaA

    3) Unin:

    bBaAbBaA ,max

    4) Subconjunto:

    )()( bBaABSIA

    FUNCIN DE MEMBRESA

    La funcin de membresa tambin llamada funcin de inclusin se da de tal modo que el

    grado con el que un elemento pertenece al conjunto difuso A. Cuando el elemento no

    pertenece al conjunto, y si pertenece totalmente.

    A continuacin se presentan las funciones de membresa ms comunes:

    Funcin LAMBDA o triangular

    Una funcin de pertenencia triangular se determina a travs de tres parmetros (a, b, c) de

    la siguiente manera:

    Los parmetros a, b, c determinan los tres ngulos de la funcin de pertenencia

    triangular.

    En la figura 1.2 se muestra la funcin triangular.

    1

    X a para x a

    b a para a < x b

    (x)=

    c x para b< x c

    c b para c x

    0

    Fig. 1.2 Funcin triangular.

  • 9

    Ejemplo de la funcin triangular

    Se desea saber si una persona es adolecente, joven o adulta de acuerdo a lo siguiente:

    a = 15 Adolescentes

    b = 25 jvenes

    c = 35 Adultos

    Donde: x puede ser cualquier valor a evaluar.

    x = 18

    Aplicando la funcin triangular

    Triangular (18, 15, 25, 35) = (18-15) / (25-15) = 3/10 = 0.33

    El resultado 0.33 indica que la persona es adolescente.

    Funcin PI o trapezoidal

    La funcin de pertenencia trapezoidal se determina por cuatro parmetros (a, b, c, d) de la

    siguiente manera:

    Los parmetros (a, b, c, d) determinan las coordenadas de los cuatro ngulos de la

    funcin de pertenencia trapezoidal.

    En la figura 1.3 se muestra la funcin trapezoidal.

    1

    X a para x a

    b a para a < x b

    (x) = 1 para b < x c

    x d para c < x d

    c d para x d

    0

    Fig. 1.3 Funcin trapezoidal.

    Ejemplo de la funcin trapezoidal

    Se desea saber si la calificacion de un alumno es:

  • 10

    a = 70 aceptable b = 80 bien

    c = 90 muy bien d = 100 exelente

    Donde: x Puede ser cualquier valor a evaluar.

    X= 100

    Aplicando la funcion trapezoidal

    Trapezoidal (100, 70, 80, 90, 100) = (100-100) / (90-100) = 0/-10 = 0

    El resultado 0 indica que la calificacin es: Excelente.

    La representacin del conocimiento mediante lgica difusa permite disminuir

    drsticamente el nmero de reglas que se necesitan para modelar un sistema. Mediante

    este enfoque, una regla difusa cubre varios casos dentro del sistema del mundo real.

    En esta unidad se definir un sistema basado en conocimiento tambin llamado sistema

    experto, para proseguir con las fases del ciclo de vida del sistema basado en conocimiento

    y arquitectura del mismo, y a continuacin concluir con el anlisis de viabilidad que son las

    diferentes alternativas que se deben tomar en cuenta antes de disear un sistema basado

    en conocimiento.

    2.1 Definicin de Sistema Basado en Conocimiento (SBC)

    Un Sistema basado en conocimiento (SBC) es un sistema computacional que adquiere

    conocimiento especializado en un campo especfico para explotarlo mediante mtodos de

    razonamiento que emulan el desempeo del experto humano en la solucin de

    problemas.[7]

    Generalmente un sistema basado en conocimiento puede comprender:

    Amplio conocimiento especfico a partir del campo de inters.

    Aplicacin de tcnicas de bsqueda y heursticas.

    Habilidad para inferir nuevos conocimientos a partir de los actuales y de las

    experiencias obtenidas durante su operacin.

    Procesamiento simblico.

    Capacidad para explicar su propio razonamiento.

    Empleo de diversas tcnicas de solucin de problemas.

  • 11

    Para comprender la naturaleza de un sistema basado en conocimiento, supongamos

    que tenemos a una persona competente en un rea determinada del conocimiento que

    cuenta con un largo periodo de preparacin y practica a comparacin con otra persona no

    especializada como se ilustra en la figura 2.1.

    Actividad Experto No experto

    Tiempo de resolucin de problemas de su rea Grande Pequeo

    Eficacia Alta Baja

    Organizacin Alta Baja

    Posee estrategias y tcticas Si No

    Bsqueda de soluciones Heurstica No heurstica

    Clculos aproximados Si No

    Figura. 2.1 Comparacin de una persona experta y una no experta.

    Dicho de otra manera un SBC es un sistema computarizado capaz de resolver

    problemas en el dominio en el cual posee conocimiento especfico.

    2.2 Estructura del Ciclo de Vida de los (SBC)

    A continuacin se mencionan las nueve fases del ciclo de vida de de los sistemas basados

    en conocimiento.[8]

    1. Anlisis del Problema: Evaluar el problema y los recursos disponibles para

    determinar la aplicabilidad de una solucin basada en conocimiento. Se debe

    realizar un anlisis costo - beneficio del SBC propuesto para saber si su desarrollo

    puede ser garantizado.

    2. Especificacin de Requerimientos: Formalizar y poner por escrito lo que fue

    adquirido durante la fase de anlisis. Esto permite determinar los objetivos del

    proyecto, idealmente, de una manera inequvoca y establece los medios para

    obtener dichos objetivos.

    3. Diseo Preliminar: Esta etapa considera nicamente las decisiones de alto nivel

    necesarias para preparar y desarrollar rpidamente el prototipo inicial.

    Especficamente, esta etapa determina el paradigma de representacin del

    conocimiento, la herramienta elegida para construir el prototipo, y la seleccin de

    los expertos.

  • 12

    4. Prototipo Inicial y Evaluacin: Esta es una etapa clave debido a que todas las

    decisiones tomadas en el diseo preliminar deben ser ya sea confirmadas,

    rectificadas o desechadas, sobre la base del conocimiento recopilado de los

    expertos en el proceso hasta completar esta etapa.

    5. Diseo Final: comprende la seleccin de las herramientas y de los recursos

    necesarios para desarrollar el sistema a ser entregado. En muchos casos puede ser

    aplicable y muy til realizar una descripcin grfica de los diferentes mdulos del

    sistema, empleando las herramientas CASE propias de los sistemas de software

    convencionales.

    6. Implementacin: comprende el proceso completo de adquisicin del conocimiento

    para todos los mdulos o subsistemas. Es en esta etapa que tiene lugar el

    desarrollo incremental.

    7. Pruebas: El asegurar la calidad de un SBC es una tarea muy importante que debe

    ser cuidadosamente planificada, especialmente a medida que el SBC es ms

    grande y complejo, o es de aplicacin crtica. El plan de pruebas, es bastante

    similar al que se prepara para un sistema convencional, basndose en la validacin

    y la verificacin.

    8. Ajustes al Diseo: A medida que el trabajo avanza y los ingenieros cognoscitivos

    tienen a la vista los problemas detectados, deben realizar los ajustes necesarios al

    inicio de cada iteracin. Si estos ajustes cada vez son relativamente ms pequeos

    y no son retroactivos, se tiene una buena medida de que se est progresando. Pero

    si ocurre lo contrario, puede representar un serio retardo al proyecto y posiblemente

    requerir un cambio de paradigma.

    9. Instalacin, Implantacin y Mantenimiento: En la etapa final del ciclo de vida de

    un SBC se traslada el sistema desarrollado, como un producto operativo hacia el

    entorno de los usuarios. Para ello, se deben realizar varias actividades de

    instalacin, implantacin y mantenimiento similares a las de un sistema de software

    convencional.

  • 13

    En la figura 2.2 se muestra el ciclo de vida de los SBC.

    Fig. 2.2 Proceso de los SBC.

    2.3 Arquitectura de los SBC

    Los Sistemas Expertos emplean una amplia variedad de arquitecturas especficas a las

    aplicaciones, sin embargo, se puede generalizar un mdulo de componentes que

    normalmente se deben integrar en cualquier mbito, cuyos elementos se ilustran en la

    Figura 2.3.[7]

    Requerimientos

    del usuario

    Feedback del usuario

    Elicitacin

    Especificacin

    Validacin

    Usuario

    Dominio

    del

    Problema

    Modelos a

    validar por

    el usuario

    Conocimiento

    Modelos de

    requerimientos

    Conocimiento

    del dominio

    Conocimiento

    del dominio

    Necesidad de ms

    conocimiento

    Resultados de

    la validacin

  • 14

    Fig. 2.3 Arquitectura general de los componentes de un Sistema Experto.

    EL USUARIO

    El usuario de un Sistema Experto puede operar la aplicacin en cualquiera de las

    siguientes modalidades:

    Verificador: Intenta comprobar la validez del desempeo del sistema.

    Tutor: Brinda informacin adicional al sistema o modifica el conocimiento que ya

    esta presente en el sistema.

    Alumno: Busca rpidamente desarrollar habilidad personal relacionada con el rea

    especfica mediante la recuperacin de conocimientos organizados y condensados

    del sistema.

    Cliente: Aprovecha la pericia del sistema en el desempeo de tareas especficas.

    El reconocimiento de las caracterizaciones anteriores contrasta con la percepcin de

    un simple papel (el cliente) de los sistemas de informacin tradicionales.

    INTERFAZ HOMBRE-MQUINA

    Es el subsistema responsable de:

    Interactuar con el usuario: Inicia, desarrolla, suspende, reanuda y concluye la

    sesin.

  • 15

    Establecer el protocolo de dialogo: Mediante parmetros, menus, iconos, Lenguaje

    natural o cualquier otro medio de expansin, como el reconocimiento de voz y

    sensores y servomecanismos que operan en tiempo real.

    Explicar el comportamiento del sistema: Debe ser capaz de argumentar las razones

    por las que formula cierta pregunta, hace un razonamiento y llega a una conclusin

    especfica.

    Este componente puede ser un sistema completo en si mismo, con sus propias base

    de conocimiento, motores de inferencias y reas de trabajo.

    MQUINA DE INFERENCIA

    Conocida como Motor, se encarga de:

    Representar los mecanismos de solucin: Son los procedimientos que identifican y

    resuelven el problema, adems de evaluar las alternativas de solucin.

    Implementar los criterios de bsqueda: Conforme a la naturaleza del problema,

    disea bsqueda ciegas, heursticas o aplica mtodos ms ad-hoc, como agenda,

    alfa-beta y pizarrn.

    Fundamentar la inferencia: Congruente al tipo de conocimiento representado en la

    "base de conocimientos" establece el mtodo de inferencia correspondiente; por

    ejemplo; al emplear reglas de predicados entonces har uso de la resolucin

    unificacin.

    El motor es considerado el ncleo del sistema experto donde descansa la parte

    procedural.

    BASE DE CONOCIMIENTOS

    Constituye el acervo de conocimiento especializado del Sistema Experto. Consta de:

    El formalismo para representar conocimiento: Emplea una o varias tcnicas que

    permiten caracterizar y organizar conocimiento especfico; por ejemplo; "frames",

    "redes semnticas" y "scripts".

    Un administrador: Responsable del almacenamiento, recuperacin y actualizacin

    en las estructuras de representacin correspondientes.

  • 16

    Servicio: Es el mecanismo encargado de responder a las demandas de acceso a

    elementos especficos de conocimiento (reglas, hechos, objetos, etc.) efectuados

    por el motor de inferencia y el modulo de aprendizaje.

    MECANISMO DE APRENDIZAJE

    Es el mdulo responsable de adquirir nuevo conocimiento y actualizar el existente,

    alterando a los subsistemas:

    Base de conocimientos: Modifica las declaraciones de conocimiento, agrega

    nuevas, verifica la consistencia entre ellas resolviendo los conflictos.

    Mquina de Inferencia: Puede cambiar los mecanismos de inferencia, depurar las

    heursticas y mtodos de bsqueda, en aras de hacer ms eficiente la solucin de

    problemas, aprovechando la experiencia en la solucin de problemas semejantes.

    Interfase Hombre-Mquina: Entre ms refinado sea el conocimiento y los

    mecanismos de inferencia, ms eficiente deber ser la comunicacin con el usuario.

    Tambin sufrirn alteracin los argumentos de "explicacin". Inclusive, se puede

    "personalizar" el lenguaje en funcin al usuario y problema, como fruto de las

    sesiones previas.

    BASE DE DATOS

    Es el depsito de conocimiento complementario a la "base de conocimientos" que por su

    naturaleza, representacin y manipulacin se concibe como dato o informacin.

    El empleo que se deriva de este mdulo es:

    Almacenamiento de datos: Todos aquellos elementos del dominio de conocimiento

    del sistema experto, los especficos al problema y los particulares del usuario

    pueden registrarse en archivos o tablas convencionales.

    Administracin: Ofrece los servicios de insercin, acceso, actualizacin y borrado

    de datos, seguridad, integridad, confiabilidad, respaldo, restauracin y monitoreo de

    la informacin.

    Normalmente el Sistema Experto debe tener una interfaz con el software

    especializado en la administracin de archivos o bases de datos, tales como los "engine"

    de los RDBMS ("Sistemas Manejadores de Bases de Datos Relacionales").

  • 17

    MEMORIA DE TRABAJO

    Es el depsito de almacenamiento del cdigo, conocimiento y resultado de las inferencias

    que se genera a lo largo de la sesin. Donde se desarrolla la solucin del problema. En

    esta rea se realiza:

    La representacin de "espacio de estados": Que corresponda a la bsqueda de la

    solucin.

    La administracin de la red o estructura de conocimientos: Que se emple para

    representar a los estados inciales, intermedios y finales del problema.

    Normalmente la "memoria de trabajo" se implementa en la "memoria principal" del

    ordenador con el posible respaldo del almacenamiento secundario.

    2.4 Anlisis de Viabilidad

    ESPECIFICACIN DE UN SBC

    Para la especificacin del sistema SBC seguiremos el siguiente esquema: [9]

    Definicin del problema

    Anlisis de alternativas

    o Alternativa 1

    o Alternativa 2

    o Alternativa 3

    Anlisis de viabilidad

    o Alternativa 1

    o Alternativa 2

    o Alternativa 3

    Especificacin del sistema elegido

    o Definicin del sistema y asignacin de funciones

    o Restricciones

    o Diagramas de arquitectura

    o Planificacin

  • 18

    DEFINICIN DEL PROBLEMA

    El sistema que queremos desarrollar es la consulta y venta de entradas de espectculos.

    Se pretende que el usuario terminal pueda consultar los espectculos disponibles,

    pudiendo elegir, ciudad, recinto, sesin, y en su caso, el asiento que desee.

    Una vez realizada esta eleccin el usuario podr comprar las entradas, mediante

    diferentes formas de pago que son: tarjeta de crdito y dinero en efectivo.

    ANLISIS DE ALTERNATIVAS

    En este campo como en muchos otros, tenemos varias alternativas, que van desde un

    sistema rudimentario, pasando por un sistema mixto hombre-mquina, hasta una alta

    tecnologa con un sistema completamente automatizado:

    Alternativa 1

    La primera alternativa es un sistema manual, en el que un operario dispone de:

    Listados con los espectculos, ciudades, recintos, sesiones, foro y precios.

    Mapas de los recintos donde los asientos sean numerados.

    Con esta informacin el operario deber proporcionar al cliente la informacin que

    necesite, mostrando el mapa del recinto si es necesario para que el cliente escoja sus

    asientos. Una vez que el cliente ya ha escogido, el operario se encargar de darle sus

    entradas y cobrarle. El operario deber tomar nota de las entradas que se vayan

    vendiendo para no revender un asiento ya vendido, o sobrepasar el foro destinado a un

    espectculo.

    Alternativa 2

    La segunda alternativa es una mezcla de hombre-mquina. Ahora el operario no tendr

    que hacer todo el trabajo de forma manual, sino que dispondr de un software que le

    ayudar en su tarea. Este software le va a permitir:

    Consultar los espectculos en una base de datos diseada a tal efecto.

  • 19

    Tener en la base de datos mapas con los recintos, pudiendo escoger asientos

    seleccionndolos con el ratn de forma fcil y rpida.

    Vender entradas automticamente sin preocuparse de cuntas o cules vendi. El

    software internamente gestionar todos estos movimientos indicando, en su caso que no

    quedan entradas, e impidiendo la reventa de entradas.

    Alternativa 3

    La tercera opcin sera informatizar el sistema hasta convertirlo automatizado en su

    totalidad, para ello se suprimira el factor humano (el personaje del dependiente). La idea

    sera tener una serie de terminales donde el pblico, de una manera amigable e intuitiva,

    podra seleccionar un espectculo en su ciudad, observar dnde se llevar a cabo la

    puesta en escena, elegir la zona y asiento que deseen, y efectuar la compra, as como el

    pago; este ltimo con diversas opciones.

    ANLISIS DE VIABILIDAD

    Alternativa 1

    Viabilidad tcnica:

    Para la alternativa manual el riesgo del desarrollo sera mnimo, ya que no se necesita

    disear ningn software (nivel tecnolgico nulo). Habra simplemente que contratar a la

    persona adecuada que llevara el cargo de dependiente.

    Los recursos necesarios seran un puesto donde vender las entradas.

    Viabilidad econmica:

    La inversin inicial sera mnima, aunque se tendra un costo de manutencin que sera el

    alquiler del local y el sueldo del empleado. Aunque el perodo de amortizacin sera

    inmediato dado que la inversin es pequea, los beneficios estarn limitados por la

    eficiencia y capacidad de la persona que se encargara de gestionar las ventas.

    Viabilidad legal:

  • 20

    No existe ningn problema en este apartado, ya que es legal la venta de entradas de

    espectculos.

    Alternativa 2

    Viabilidad tcnica:

    El riesgo en el desarrollo es muy bajo, dado que este tipo de sistema est muy extendido e

    incluso si hubiera un fracaso en el negocio los daos econmicos no seran astronmicos,

    ya que la inversin inicial se limitara aun ordenador personal y un software de serie.

    Viabilidad econmica:

    El costo de esta alternativa sera mayor que en la primera, pero ste tambin vendra en

    forma de inversin inicial. Dado que no es muy grande, tendramos una amortizacin de

    los beneficios de aproximadamente seis meses.

    Viabilidad legal:

    En este aspecto no habra problema, ya que lo nico que hacemos es semiautomatizar la

    venta de entradas, cosa que es legal.

    Alternativa 3

    Viabilidad tcnica:

    Existe cierto riesgo en el desarrollo de esta alternativa, ya que el producto final que

    queremos conseguir es un sistema empotrado totalmente independiente. El desarrollo de

    este sistema es complejo e implica riesgo en el desarrollo.

    Por otro lado, aunque existan estos riesgos, sabemos que este sistema es viable a

    nivel tecnolgico. Existen muchos sistemas similares al que queremos desarrollar, como

    son los puestos automticos de pelculas de alquiler.

    Viabilidad econmica:

    La inversin inicial para este proyecto es grande. Depende del nmero de terminales que

    queramos manejar, del volumen de informacin y del alcance y distribucin de la red del

    sistema.

  • 21

    Esta inversin aunque en principio puede resultar grande, los beneficios son tambin

    importantes. El uso de este sistema, hace que la funcin que se realice se lleve a cabo de

    forma ms cmoda y rpida. El periodo de amortizacin rondara los 12 meses.

    Viabilidad legal:

    El sistema que queremos desarrollar no implica ningn problema legal, aunque si

    necesitaramos un permiso para poner los terminales en sitio pblico.

    ESPECIFICACIN DEL SISTEMA

    Considrese que la tercera alternativa es la ms innovadora y la que a medio plazo puede

    reportar mayores beneficios.

    Definicin del Sistema y Asignacin de Funciones

    En este sistema hay dos partes diferenciadas:

    Un ncleo central, donde se encuentra la base de datos global que dar servicio a todos

    los terminales, esta computadora ha de ser potente ya que debe de soportar muchas

    peticiones concurrentemente sin que el tiempo de espera de los usuarios sea mayor del

    esperado (caractersticas de sistema de tiempo real) y sin perder ninguna consistencia en

    las diversas transacciones.

    Diversas terminales, cada cual estar compuesto por un computador conectado en

    red con el ncleo central, y que sus perifricos mnimos sean:

    1) Pantalla de comunicacin con el usuario. Aqu se mostrar toda la informacin

    necesaria.

    2) Medio de interaccin con el usuario que vendr integrado con el monitor (pantalla

    tctil).

    3) Impresora. Tendr como nico objetivo imprimir las entradas una vez compradas.

    4) Sistema gestor de tarjetas de crdito que deber ser capaz de leer tarjetas de

    crdito.

    5) Sistema gestor de dinero en efectivo, el cual informar del dinero introducido y ser

    capaz de dar cambio.

    6) Mdem de comunicacin con entidad bancaria.

  • 22

    Restricciones

    Las restricciones generales del sistema son:

    El sistema debe funcionar 24 horas al da, todos los das del ao.

    Si en algn momento un terminal, o el ncleo central cayera, se deber reanudar su

    correcto funcionamiento dentro de un tiempo lmite marcado, que es de 1 hora.

    El sistema debe dar respuesta a cada peticin dentro de un tiempo lmite.

    Los datos nunca pueden perder su consistencia, ya que el alcance econmico de

    estos sistemas es alto. Si en algn momento hay algn problema en una

    transaccin el sistema debe volver al estado en que se encontraba antes de iniciar

    la misma. (Atomicidad en las transacciones).

    Diagramas de arquitectura

    Diagrama del sistema en general, indicando flujo de informacin y estructura del sistema.

    En la figura 2.4 se muestra un diagrama del sistema en general.

    Fig. 2.4 Diagrama general.

    USUARIO

    DBA

    BANCO

    TERMINAL

    TERMINAL

    USUARIO

    RED TELEFONICA:

    AUTORIZACIONES BANCARIAS

    ENVIO DE DATOS

    DE SESIONES

    PETICIONES

  • 23

    En el diagrama de los terminales. Se indica el nuevo flujo de informacin y estructura

    interna.

    En la figura 2.5 se muestra un diagrama de los terminales.

    Fig. 2.5 Diagrama del Terminal.

    Se comenzar definiendo un agente inteligente, funciones bsicas, caractersticas, tipos

    de agentes, como debe proceder un agente para obtener un mejor desempeo, como se

    estructura, procedimientos para solucin de problemas, bsqueda de soluciones,

    bsqueda mediante la satisfaccin de restricciones y estrategias de bsqueda.

    RECEPCIN Y

    ENVIO DE DINERO

    COMPUTADOR

    LOCAL

    IMPRESORA

    MODEM

    SUB SISTEMA

    DE TARJETAS

    DE CREDITO

    SUB SISTEMA

    GESTOR DE

    DINERO EN

    EFECTIVO

    INTRODUCCIN

    DE TARJETAS DEV. DE

    DINERO

    PANTALLA TACTIL

    (INTERFAZ DE

    USUARIO)

    SALIDA DE

    ENTRADAS

    IMPRESAS

    COMUNICACIN

    DE DATOS ORDENES DE

    IMPRESION

    GESTIN DE

    INF. BANCARIA

    SALIDA DE

    INFORMACIN

    ACEPTACIN

    DE TARJETAS RECEPCIN Y

    ENVIO DE DINERO

  • 24

    3.1 Definicin de Agente Inteligente

    Un agente es todo aquello que puede considerarse que percibe su ambiente mediante

    sensores y que responde a ste por medio de efectores. Los agentes humanos tienen

    ojos, odos y otros rganos que les sirven de sensores, as como manos, piernas, boca y

    otras partes de su cuerpo que les sirven de efectores. En el caso de los agentes robticos,

    los sensores son sustituidos por cmaras y telmetros infrarrojos y los efectores son

    reemplazados mediante motores. En el caso de un agente de software, sus percepciones

    y acciones vienen a ser las cadenas de bits codificados. En la figura 3.1 se muestra el

    diagrama de un agente genrico. Interesa disear agentes que logren un buen desempeo

    en su ambiente.[10]

    Fig. 3.1 Los agentes interactan con los ambientes a travs de sensores y efectores.

    Caractersticas

    La principal caracterstica de los agentes inteligentes es el conocimiento que estos

    poseen, ligado a la forma como lo utilizan para alcanzar las metas para la cual fueron

    diseados. [11]

    Las caractersticas que posee un agente inteligente son:

    Autonoma: capacidad de actuar sin intervencin humana directa o de otros

    agentes.

    Sociabilidad: capacidad de interaccionar con otros agentes, utilizando como medio

    algn lenguaje de comunicacin entre agentes.

    Ambiente

    Percepciones

    Acciones

    Sensores

    Efectores

    Agente

  • 25

    Reactividad: un agente est inmerso en un determinado entorno (hbitat), del que

    percibe estmulos y ante los que debe reaccionar en un tiempo preestablecido.

    Iniciativa: un agente no slo debe reaccionar a los cambios que se produzcan en

    su entorno, sino que tiene que tener un carcter emprendedor y tomar la iniciativa

    para actuar guiado por los objetivos que debe de satisfacer.

    Movilidad: habilidad de trasladarse en una red de comunicacin informtica.

    Veracidad: no comunica informacin falsa intencionadamente.

    Benevolencia: no tiene objetivos contradictorios y siempre intenta realizar la tarea

    que se le solicita.

    Racionalidad: tiene unos objetivos especficos y siempre intenta llevarlos a cabo.

    En el esqueleto de un agente, cada vez que as se solicite, se actualiza la memoria para

    que refleje la nueva percepcin, se elige la mejor accin y tambin se consigna en la

    memoria la accin emprendida.

    Funcin ESQUELETO-AGENTE (percepcin) responde con una accin

    Esttica: memoria (la memoria del mundo del agente)

    Memoria ACTUALIZACION-MEMORIA (memoria, percepcin)

    Accin ELEGIR-LA-MEJOR-ACCION (memoria)

    Memoria ACTUALIZACION-MEMORIA (memoria, accin)

    Responde con una accin

    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 conexin entre percepciones y acciones se les denomina

    reglas de condicin-accin. Ejemplo: Si el carro de adelante est frenando entonces

    empiece a frenar.[12]

    En la figura 3.2 se muestra un agente de reflejo simple.

  • 26

    Fig. 3.2 Agente de reflejo simple.

    Un agente de reflejo simple acta encontrando una regla cuya condicin coincida

    con la situacin actual (definida por la percepcin) y efectuando la accin que

    corresponda a tal regla.

    Funcin AGENTE-REFLEJO-SIMPLE (percepcin) responde con una accin

    Esttico: reglas, un conjunto de reglas de condicin-accin

    Estado INTERPRETAR-ENTRADA (percepcin)

    Regla REGLA-COINCIDENCIA (estado, reglas)

    Accin REGLA-ACCION

    Agentes bien informados de todo lo que pasa: Este tipo de agente guarda

    estados internos que le sirven sin consideracin para ejecutar una accin. Los

    sensores no le pueden informar a la vez de todos los estados que maneja su

    ambiente, es por este caso que el agente necesita actualizar algo de informacin en

    el estado interno. Esto le permite discernir entre estados del ambiente que genera

    la misma entrada de percepciones pero, sin embargo; para cada uno de los estados

    se necesitan acciones distintas.

    En la figura 3.3 se muestra un agente reflejo con estado interno.

    Cmo es el mundo

    en este momento?

    Qu accin debo

    emprender en este

    momento?

  • 27

    Fig. 3.3 Agente reflejo con un estado interno.

    Un agente reflejo con un estado interno opera encontrando una regla cuya

    condicin coincida con la situacin actual (tal como est definida mediante la

    percepcin y el estado interno almacenado) y luego procede a efectuar la accin

    que corresponda a tal regla.

    Funcin AGENTE-REFLEJO-CON-ESTADO (percepcin) responde con una accin

    Esttico: estado: una descripcin prevaleciente del estado del conjunto de reglas

    condicin-accin

    Estado ACTUALIZAR-ESTADO (estado-percepcin)

    Regla REGLA-COINCIDENCIA (estado, reglas)

    Accin REGLA-ACCIN [regla]

    Estado ACTUALIZAR-ESTADO (estado-accin)

    Responder con una accin

    Agentes basados en metas: Adems de los estados, los agentes necesitan cierto

    tipo de informacin 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 informacin de los resultados (acciones) que emprenda y de esta

    manera poder elegir aquellas acciones que le permitan alcanzar la meta.

    En la figura 3.4 se muestra un agente con metas explicitas.

    Cmo evoluciona

    el mundo?

    Qu producen mis

    acciones?

    Cmo es el mundo

    en este momento?

    Cmo es el mundo

    en este momento?

  • 28

    Fig. 3.4 Agente con metas explicitas.

    Agentes basados en utilidad: Las metas por s solas garantizan la obtencin de

    una conducta de alta calidad. En el programa de agente se podra tener un conjunto

    de metas pero la obtencin de stas no garantizan que haya un cambio de estado

    que puede ser de felicidad o infelicidad, mediante una medida de desempeo se

    podra establecer una comparacin 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.

    En la figura 3.5 se muestra un agente completo basado en la utilidad.

    Cmo evoluciona

    el mundo?

    Qu producen mis

    acciones?

    Cmo es el mundo

    en este momento?

    Qu sucedera si

    emprendo la accin A?

    Qu accin debo

    emprender en este

    momento?

  • 29

    Fig. 3.5 Agente completo basado en la utilidad.

    Elementos que caracterizan a un agente:

    Percepciones posibles.

    Acciones posibles.

    Medida de desempeo u objetivos que debe lograr.

    Tipo de entorno en el que va a operar.

    Cmo evoluciona

    el mundo?

    Qu producen mis

    acciones?

    Cmo es el mundo

    en este momento?

    Qu sucedera si

    emprendo la acion A?

    Qu tan a gusto me

    encontrar en tal estado?

    Qu accin debo

    emprender ahora?