Diseño de procesos que, al ejecutarse sobre una arquitectura física, producen resultados que maximizan una cierta medida de rendimiento




descargar 468.8 Kb.
títuloDiseño de procesos que, al ejecutarse sobre una arquitectura física, producen resultados que maximizan una cierta medida de rendimiento
página7/10
fecha de publicación28.10.2015
tamaño468.8 Kb.
tipoDocumentos
b.se-todo.com > Derecho > Documentos
1   2   3   4   5   6   7   8   9   10

Estructura de los Sistemas Basados en Conocimiento.

La arquitectura de un sistema basado en conocimiento de alguna manera refleja la estructura cognitiva y los procesos humanos. La primera parte es la memoria de largo plazo, en la que guarda los hechos (Base de Hechos) y los conocimientos (Base de Conocimientos) acerca del dominio en el que tiene experiencia.

http://www.monografias.com/trabajos12/inteartf/image2532.jpg

Estructura de un sistema basado en conocimiento

 La segunda parte es el sistema que realiza la función de razonamiento para resolver problemas (Motor de Inferencia). Finalmente, la tercera parte la conforman las unidades de entrada y salida que permiten la comunicación entre el sistema y su entorno.

La representación del conocimiento determina el desarrollo de un sistema experto e influye en las estrategias de control. Es muy versátil, hay muchas formas de hacerlo y es complicada la elección. Generalmente la elección está basada en la intuición o en las especiales circunstancias del problema.

La primera fase es la adquisición del conocimiento desde un experto y depende de la cantidad y de su adecuada representación. Se deben conocer los límites, pues sólo llegan hasta donde son capaces de resolver un problema. Esto implica, que tiene que circunscribirse a un dominio homogéneo.

El lenguaje de programación debe ser adecuado, se usan principalmente el LISP y PROLOG, que difieren de los lenguajes clásicos en que sus reglas (que también contienen hechos) entran masivamente, y que el programa, es decir, el motor de inferencia, encontrará el camino a través de reglas.

Por otra parte, la programación procedural consiste en una cuidadosa descripción de los algoritmos que marcan el camino de los diferentes procedimientos y funciones en los programas.

Estos dos modos de programación son teóricamente iguales, pero en la práctica difieren.

La programación declarativa es un tipo de programación implantada en los sistemas expertos y por ciertos lenguajes. La principal diferencia es que en la declarativa las reglas se formulan independientemente de su secuencia de aplicación. El modo en que se ejecutan las reglas corresponde al motor de inferencia y es independiente de las reglas en sí mismas. En la programación procedural, las reglas se implantan y ejecutan en un orden establecido.

Las ventajas en los sistemas expertos es la modularidad, no hay un solo camino para responder a un problema y son fáciles de leer, lo que simplifica comprobar su consistencia.

La representación del conocimiento es esencial en inteligencia artificial y es la base de la construcción de un sistema experto.

Fases en la adquisición del conocimiento:

  • identificación del problema.

  • Estructuración del conocimiento.

  • La arquitectura del sistema y la maqueta.

  • El prototipo y terminación del sistema.

Tecnología de los Sistemas Basados en Conocimiento.

Desde el punto de vista tecnológico, los Sistemas Basados en Conocimiento pueden presentar varias formas de aplicación:

  • Aislada: un Sistema Basado en Conocimiento único se relaciona con el entorno.

  • Integrada: varios Sistemas Basados en Conocimiento conectados a bases de conocimiento comunes. Tipo Front-End cuando todos los hechos y datos están físicamente en la base común. Tipo Back-End cuando los hechos y datos necesarios que no estén en las bases comunes, pueden obtenerse de otros SBC.

  • Embebida: un Sistema Basado en Conocimiento está integrado con otros sistemas y no se lo distingue.

I.5. Motor de Inferencia.

Un motor de inferencia interpreta y evalúa los hechos en la base de conocimientos para proveer una respuesta. Este debe ser independiente del conocimiento y de los hechos. Se puede caracterizar por:

El lenguaje en que ha sido escrito.

  • La velocidad de trabajo: Inferencias / segundo.

  • Las estrategias de búsqueda de soluciones:

No Ordenada: aleatoria, heurística.

Ordenada: Encadenamiento hacia adelante (guiado por los datos, deductivo), encadenamiento hacia atrás (guiado por los objetivos, inductivo).

  • La forma en que elige el conocimiento.

  • La posibilidad de incorporar metaconocimiento.

  • El tipo de lógica que emplea en el razonamiento:

Booleana, trivalente, multivalente, difusa.

Monotónica o no monotónica.

Atemporal o temporal.

Lógica de orden 0, orden 0+, orden 1.

  • El método que utiliza para la evaluación del conocimiento incompleto o incierto:

Determinístico.

Probabilístico.

Aproximado.

Difuso.

En un sistema experto, dado un estado particular de la base de datos, se deben reconocer las reglas aplicables y esto se llama filtrado o identificación de patrones, operación especialmente larga, ya que muchos sistemas realizan una preselección de las reglas antes de que comience la identificación propiamente tal. Es decir, se considera un subconjunto de reglas y entre éstas, las aplicables. Esto, es lo que se llama restricción.

Adicionalmente puede existir una Base de Datos con información puntual sobre problemas específicos anteriormente resueltos por el sistema, y que se usa como información adicional en el proceso de inferencia.

Una vez que las reglas han sido reconocidas deben ser elegidas, dependiendo de la estrategia de control, que es la selección.

Una vez que las regla han sido elegida ha de ejecutarse.

Al módulo central del sistema experto que maneja estas tres operaciones se le denomina motor de inferencia o intérprete de reglas. Hay diversos tipos de motores de inferencia según los métodos con que se manejan las tres operaciones precedentes.

Identificación de patrones.

Esta operación determina cuáles son las reglas potencialmente aplicables en un estado dado de la base de datos.

Hay ciertos métodos típicos para resolver problemas mediante Inteligencia Artificial como: descomposición de problemas, inferencia deductiva, deducción lógica, etc.

No es necesario que la búsqueda se aplique a todas las reglas, el sistema de control puede decidir cuáles no son necesarias a ese nivel.

El filtrado significa tener el conocimiento para encontrar las reglas cuya precondición se satisfaga. Se debe comparar por tanto la precondición con la base de datos. Si es una regla deductiva "si premisa entonces conclusión", la parte a ser probada de la regla, se llama disparador o activador (tigger) es siempre una fórmula bien formada ya sea de lógica proposicional o de lógica de primer orden. Puede aplicarse a cualquier hecho.

El único lenguaje que está totalmente basado en el cálculo de predicados es el PROLOG.

Los procesos de identificación de patrones pueden mejorarse examinando, dentro del activador de cada regla, primero los predicados con más restricciones, es decir, los que tienen el menor número de variables libres. Otra forma de proceder es que, para cada regla o parte de su activador, se guarda en la memoria el resultado de las posibles unificaciones para cada parte del activador. Después de cada ciclo del motor de inferencia, esta memoria se actualiza y se denomina filtrado por propagación.

Ejecución de las reglas.

Después de la fase de filtrado, cuando una regla está reconocida como aplicable, teniendo en cuenta la base de datos existente, solo resta ejecutarla. Si hay varias posibles reglas, la elección la realiza la estrategia de control.

La conclusión de la regla tiene por objeto modificar la base de conocimiento, creando, modificando o suprimiendo un hecho.

La fase de restricción.

En un sistema dirigido por los datos, el filtrado consiste en retener todas las reglas cuyas premisas son verdaderas teniendo en cuenta los hechos (verdaderos) presentes en la base de datos. Este sistema funciona en encadenamiento hacia delante.

Si el sistema es a la vez dirigido por los datos y por los objetivos, se denomina mixto.

La restricción también puede estar especificado explícitamente por el experto para utilizar reglas dentro de las reglas, es decir, meta reglas. Indica qué grupo de reglas debe ser retenido, por prioridad, o definir un orden en los subconjuntos de las reglas.

El conocimiento puede organizarse en forma de red como en las redes semánticas utilizadas en el análisis sintáctico del lenguaje. Su posición dentro de la red dirige las restricciones utilizando heurísticas. Esta formulación es particularmente eficiente si se establece válidamente una organización jerárquica del conocimiento, en este caso existiría una taxonomía de los hechos.

Otro modo de gobernar las restricciones es organizar las reglas en paquetes o esquemas, lo que genera una estructura de árbol en reglas, lo que es una ventaja.

Todos estos modos dependen de la forma en que está representado el conocimiento.

La fase de selección.

Como después de las fases anteriores quedan varias reglas se debe seleccionar una y luego de procesada el programa debe saber dónde volver.

Cuando hay una o más reglas, se usan dos estrategias:

- La búsqueda en anchura, que elige una, generalmente la primera y se van ejecutando por turno antes de comprobar que se ha alcanzado la condición final. Si no es así se inicia otro ciclo del motor de inferencia. Este tipo de búsqueda es exhaustiva y la usa el sistema experto MYCIN.

  • Otra estrategia es la de elegir una regla entre las aplicables por medio de una heurística, procesarla y modificar la base de datos. Si no se alcanza la condición final, comienza otro ciclo del motor de inferencia. Es por lo tanto, una estrategia en profundidad.

Cada una de las estrategias pueden ser irrevocables o avanzar por prueba y error.

Muchos sistemas efectúan marcha atrás, si no hay regla aplicable, pero si el sistema está bajo un control irrevocable se detendrá.

Visto en la práctica, las reglas poseen la siguiente estructura:

SI (CONJUNTO_DE_PREMISAS) ENTONCES CONSECUENCIA

o bien:

(CONJUNTO_DE_PREMISAS) CONSECUENCIA

El CONJUNTO_DE_PREMISAS contiene las cláusulas, o simplemente condiciones, que deben cumplirse para que la regla pueda ejecutarse, y la CONSECUENCIA representa el resultado de la ejecución de dicha regla.

Un ejemplo sencillo que ilustra cómo representar conocimiento a través de reglas:

Afirmación:

Todos los catedráticos son doctores.

Representación Lógica - Matemática:

Para ver la fórmula seleccione la opción "Descargar" del menú superior

En esta representación la variable x constituye el conjunto de todas las personas posibles, CATEDRÁTICO representa la relación "SER CATEDRÁTICO" y DOCTOR la de "SER DOCTOR". De esta manera la regla anterior representa el hecho: Para toda persona x, Si x es catedrático entonces x es doctor.

Representación en SE:

Para ver la fórmula seleccione la opción "Descargar" del menú superior

o bien:

SI (x ES CATEDRÁTICO) ENTONCES (x ES DOCTOR)

En este caso CATEDRÁTICO y DOCTOR representan de nuevo relaciones que deben estar representadas sobre el sistema.

¿Cómo representar estas nuevas relaciones?:

Como todo sistema informático los SE pueden operar sobre un conjunto finito de elementos, para esto es necesario definir el universo de trabajo dentro del cual probaremos nuestras reglas. Sobre esta base la definición de la relación SER CATEDRÁTICO o CATEDRÁTICO, según sea la representación usada, debe hacerse puntualmente para cada individuo del universo, por ejemplo:

CATEDRÁTICO("Mario Pérez")

CATEDRÁTICO("Manuel Fernández")

CATEDRÁTICO("Maria González")

Los componentes de la relación SER DOCTOR se deducen a partir de la relación SER CATEDRÄTICO y la regla anterior, por lo que no es necesario una representación o definición explícita.

La inferencia o extracción de conclusiones:

Para extraer una conclusión, o inferencia, se hace necesario, antes que nada, saber el objetivo a satisfacer, o problema a resolver. Este problema se plantea en forma de objetivo que se toma por el Motor de Inferencia el cual a través de la activación y encadenamiento de reglas trata de llegar a una solución. Al seguir con el ejemplo:

Objetivo:

"Es Mario Pérez Doctor"?

Solución:

Al aplicar la regla: SI (x ES CATEDRÁTICO) ENTONCES (x ES DOCTOR)

Se debe chequear, como precondición de activación, el cumplimiento de la relación:

CATEDRÁTICO("Mario Pérez")

Se debe chequear la base de Axiomas o Afirmaciones:

CATEDRÁTICO("Mario Pérez") existe en la base de axiomas, por lo que la precondición es verdadera.

Se dispara la consecuencia y se llega a la conclusión que Mario Pérez es doctor.

Encadenamientos de reglas:

Existen dos mecanismos fundamentales de encadenamiento de reglas:

1. Encadenamiento hacia delante:

Se produce cuando el objetivo propuesto al sistema hace que se ejecute una regla, y la conclusión obtenida permite que se ejecute otra, y así sucesivamente hasta llegar a una respuesta, positiva o negativa. El punto final se detecta cuando no se pueden producir más encadenamientos, por ejemplo cuando se llega a un axioma.

Por ejemplo:

(1). SI (x ES JEFE_DPTO) ENTONCES (x ES CATEDRÁTICO)

(2). CATEDRÁTICO("Mario Pérez")

(3). CATEDRÁTICO("Manuel Fernandez")

(4). CATEDRÁTICO("Maria Gonzalez")

Al evaluar el objetivo: "Mario Pérez es Jefe_Dpto"?, se dispara la regla (1), la cual a su vez se encadena con la (2), en este momento no se pueden producir más encadenamientos pues la regla (2) es un axioma. Llegado a este punto el Motor de Inferencia retrocede y da una respuesta positiva a la pregunta.



  1. Encadenamiento hacia atrás:

Consiste en, dado un objetivo, buscar una regla que permita establecer dicha conclusión, el proceso se repite hasta encadenar con la regla cuya conclusión satisfaga el objetivo propuesto, o se detecte que dicho problema no se puede resolver positivamente. Por ejemplo para averiguar si "Mario Pérez es doctor" se busca un regla que tenga esta afirmación en sus consecuencias. Analizando las reglas anteriores vemos que la regla:

(5). SI (x ES CATEDRÁTICO) ENTONCES (x ES DOCTOR)

Satisface estas condiciones; siguiendo esta regla hacia atrás tenemos que buscar una nueva que permita validar si "Mario Pérez" es catedrático, lo cual se hace con el axioma (2).

Los encadenamientos constituyen, de esta manera, una de las herramientas fundamentales del Motor de Inferencia; el Lenguaje PROLOG solamente soporta el encadenamiento hacia atrás, el cual constituye el más frecuentemente implementado.

  1. Sistemas Expertos como Sistemas de Información Orientados al Servicio.

En la Conferencia de Dartmouth en 1956 donde Newell, Shaw y Simon presentaron sus programas para demostrar las proposiciones lógicas (Logical Theorist). La expresión de Inteligencia Artificial la inventó en aquel mismo año John McCarthy.

En 1959-60, aparece un programa demostrador de teoremas basado en la lógica proposicional (General Problem Solver, por Newell, Shaw y Simon).

La década comprendida entre 1960-70 vio sentar los principios básicos de la investigación en las estructuras en árbol así como el movimiento de ideas empleadas actualmente en la resolución de problemas y los sistemas expertos. Los textos de Newell y Simon (1972) y Nillson (1971) marcan el final de este periodo.

Los principales métodos de búsqueda en estructuras en árbol, que todavía se emplean hoy en los programas de sistemas expertos, estaban ya disponibles en esos años.

Las primeras aplicaciones se hicieron en problemas fáciles de describir, pero complejos de resolver, como por ejemplo: juego de ajedrez y demostración de teoremas matemáticos.

Los sistemas expertos orientados al servicio derivaron de la necesidad de resolver problemas cada vez más complejos, con poca información estructurada y con resultados probables, donde uno de los caminos era encontrar la mejor solución a un problema, no necesariamente la única posible.

Los hechos para una base de conocimiento deben ser adquiridos a partir de experiencias humanas a través de entrevistas y observaciones. Este conocimiento es usualmente representada en la forma de reglas "if-then" (reglas de producción): " si alguna condición es verdadera, entonces la siguiente inferencia puede ser hecha (o alguna acción tomada)". La base de conocimientos de un sistema experto mejor incluye miles de reglas. Un factor de probabilidad es con frecuencia unido a las conclusiones de cada regla de producción, porque la conclusión no es una certeza.

Por ejemplo, un sistema para el diagnóstico de enfermedades del ojo debe indicar, basado en información que apoye esto, un 90% de probabilidad de que una persona tiene glaucoma, y este puede también listar conclusiones con más bajas posibilidades.

Un sistema experto puede desplegar la secuencia de reglas a través de las cuales éste llega a su conclusión. Trazar el flujo ayuda al usuario para apreciar la credibilidad de su recomendación y es útil como una herramienta de aprendizaje para estudiantes.

Los expertos humanos frecuentemente emplean las reglas heurísticas, o "regla del pulgar", además de la simple producción de reglas. Por ejemplo, un administrador de crédito puede saber que un solicitante con una historia pobre de crédito, con un registro limpio desde que adquirió un nuevo empleo, puede actualmente ser un buen sujeto de crédito.

Los sistemas expertos han incorporado tales reglas heurísticas e incrementándolas tienen la habilidad de aprender a partir de la experiencia. Sin embargo, los sistemas expertos son más bien soporte o apoyo más que reemplazos para los expertos humanos.
1   2   3   4   5   6   7   8   9   10

similar:

Diseño de procesos que, al ejecutarse sobre una arquitectura física, producen resultados que maximizan una cierta medida de rendimiento iconEs una disciplina que emplea organismos vivos (y de las sustancias...

Diseño de procesos que, al ejecutarse sobre una arquitectura física, producen resultados que maximizan una cierta medida de rendimiento iconP1: En el marco de resultados para el bienio 2014/15 se exponen 36...

Diseño de procesos que, al ejecutarse sobre una arquitectura física, producen resultados que maximizan una cierta medida de rendimiento iconIntroducción: Que es la Física? La palabra Física viene del término...

Diseño de procesos que, al ejecutarse sobre una arquitectura física, producen resultados que maximizan una cierta medida de rendimiento iconActúan espontáneamente y con una cierta intencionalidad

Diseño de procesos que, al ejecutarse sobre una arquitectura física, producen resultados que maximizan una cierta medida de rendimiento iconEscribir sobre Derecho comparado es un reto pues, de suyo, la materia...

Diseño de procesos que, al ejecutarse sobre una arquitectura física, producen resultados que maximizan una cierta medida de rendimiento iconResponder al concepto de un ser humano dinamico e integral y a una...

Diseño de procesos que, al ejecutarse sobre una arquitectura física, producen resultados que maximizan una cierta medida de rendimiento iconElaborar una presentación powerpoint sobre una enfermedad, con los siguientes puntos

Diseño de procesos que, al ejecutarse sobre una arquitectura física, producen resultados que maximizan una cierta medida de rendimiento iconPlantilla de diseño de una Webquest

Diseño de procesos que, al ejecutarse sobre una arquitectura física, producen resultados que maximizan una cierta medida de rendimiento iconPlantilla de diseño de una Webquest

Diseño de procesos que, al ejecutarse sobre una arquitectura física, producen resultados que maximizan una cierta medida de rendimiento iconNuestro intento de dividir en épocas la historia de la arquitectura...




Todos los derechos reservados. Copyright © 2019
contactos
b.se-todo.com