Source: http://docplayer.es/2572343-Apunts-de-representacio-del-coneixement.html
Timestamp: 2017-04-26 12:16:57+00:00

Document:
APUNTS DE REPRESENTACIÓ DEL CONEIXEMENT - PDF
Download "APUNTS DE REPRESENTACIÓ DEL CONEIXEMENT"
Patricia Marín Carmona
1 Intel.ligència Artificial Grau en Informàtica APUNTS DE REPRESENTACIÓ DEL CONEIXEMENT Departament de Llenguatges i Sistemes Informàtics CURS 2011/2012 1Q2 This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike License. To view a copy of this license, visit or send a letter to: Creative Commons, 559 Nathan Abbott Way, Stanford, California 94305, USA.3 Índice general 0. Introducción 1 I Representación del conocimiento 3 1. Introducción a la representación del conocimiento Introducción Esquema de representación Propiedades de un esquema de representación Tipos de conocimiento Conocimiento Relacional simple Conocimiento Heredable Conocimiento Inferible Conocimiento Procedimental Lógica Introducción Lógica proposicional Lógica de predicados Lógica y representación del conocimiento Sistemas de reglas de producción Introducción Elementos de un sistema de producción El motor de inferencias Ciclo de ejecución Tipos de razonamiento Razonamiento guiado por los datos Razonamiento guiado por los objetivos Las reglas como lenguaje de programación Las reglas como parte de aplicaciones generales Representaciones estructuradas Introducción Redes semánticas Frames Una sintaxis Ontologías Introducción Necesidad de las ontologías Desarrollo de una ontología Proyectos de ontologías4 2 ÍNDICE GENERAL II Sistemas basados en el conocimiento Introducción a los SBC Introducción Características de los SBC Necesidad de los SBC Problemas que se pueden resolver mediante SBC Problemas de los SBC Áreas de aplicación de los SBC Breve historia de los SBC Arquitectura de los SBC Introducción Arquitectura de los sistemas basados en reglas Almacenamiento del conocimiento Uso e interpretación del conocimiento Almacenamiento del estado del problema Justificación e inspección de las soluciones Aprendizaje Arquitectura de los sistemas basados en casos Almacenamiento del conocimiento Uso e interpretación del conocimiento Almacenamiento del estado del problema Justificación e inspección de las soluciones Aprendizaje Comunicación con el entorno y/o el usuario Otras Metodologías Redes neuronales Razonamiento basado en modelos Agentes Inteligentes/Sistemas multiagente Desarrollo de los SBC Ingeniería de sistemas basados en el conocimiento Modelo en cascada Modelo en espiral Diferencias de los sistemas basados en el conocimiento Ciclo de vida de un sistema basado en el conocimiento Metodologías especializadas Una Metodología sencilla para el desarrollo de SBC Identificación Conceptualización Formalización Implementación Prueba Resolución de problemas en los SBC Clasificación de los SBC Métodos de resolución de problemas Clasificación Heurística Resolución Constructiva5 ÍNDICE GENERAL 3 10.Razonamiento aproximado e incertidumbre Incertidumbre y falta de información Modelo Probabilista Introducción Teoría de probabilidades Inferencia probabilística Probabilidades condicionadas y reglas de producción Independencia probabilística y la regla de Bayes Redes Bayesianas Inferencia probabilística mediante redes bayesianas Inferencia por enumeración Algoritmo de eliminación de variables Modelo Posibilista Introducción Conjuntos difusos/lógica difusa Conectivas lógicas en lógica difusa Condiciones difusas Inferencia difusa con datos precisos Modelo de inferencia difusa de Mamdani6 0. Introducción Este documento contiene las notas de clase de la asignatura Intel ligència Artificial de la ingeniería en informática de la Facultat d Informàtica de Barcelona. El documento cubre todos los temas impartidos en la asignatura salvo el tema de introducción y esta pensado como complemento a las transparencias utilizadas en las clases. El objetivo es que se lea esta documentación antes de la clase correspondiente para que se obtenga un mejor aprovechamiento de las clases y se puedan realizar preguntas y dinamizar la clase. En ningún caso se pueden tomar estos apuntes como un substituto de las clases de teoría. 17 2 Capítulo 0. Introducción8 Parte I Representación del conocimiento 39 10 1. Introducción a la representación del conocimiento 1.1 Introducción Acabamos de ver un conjunto de algoritmos que son capaces de resolver problemas mediante la exploración del espacio de soluciones. Estos algoritmos se basan en una información mínima para su resolución. No solo en lo que respecta a las características que representan al problema, sino al conocimiento involucrado en las tomas de decisión durante la exploración. Las funciones heurísticas que se utilizan en la exploración tienen en cuenta información global que evalúa el problema en cada paso de la misma manera. Evidentemente, durante la resolución de un problema no tiene por que verse su estado siempre de la misma manera, ni tiene por que tener la misma importancia toda la información de la que disponemos. Si observamos como nosotros mismos resolvemos problemas, podemos fijarnos en que la información que vamos teniendo en cuenta a medida que lo resolvemos va cambiando. No usamos, por ejemplo, la misma información cuando iniciamos la resolución de un problema que cuando estamos en medio de la resolución, ya que nuestra incertidumbre sobre donde está la solución va cambiando, y parte de la información puede pasar a ser crucial o irrelevante. Esta capacidad de tomar mejores decisiones puede hacer que un problema se pueda resolver de manera más eficiente. Estas decisiones no las podemos tomar si no tenemos un conocimiento profundo de las características del problema y de como nos pueden ayudar a tomar decisiones. Esto nos lleva a pensar que en todo problema complejo en IA se debe plantear qué cocimiento nos puede ser necesario para resolverlo y como deberemos utilizarlo para hacer más eficiente la resolución. El conocimiento que podemos usar puede ser tanto general como dependiente del dominio, pero teniendo en cuenta que el conocimiento específico del problema será el que con más probabilidad nos permitirá hacer eficiente la resolución. Esta necesidad de introducir más conocimiento en la resolución de un problema nos lleva a plantearnos dos cuestiones. Primero, el cómo escoger el formalismo de representación que nos permita hacer una traducción fácil del mundo real a la representación. El conocimiento necesario es por lo general bastante complejo, hacer la traslación de los elementos del dominio a una representación es una tarea costosa. Segundo, el cómo ha de ser esa representación para que pueda ser utilizada de forma eficiente. Este conocimiento tendrá que utilizarse en el proceso de toma de decisiones, deberemos evaluar cuando es necesario usarlo y qué podemos obtener a partir de él. Sin un mecanismo eficiente para su uso no conseguiremos ninguna ganancia. En este punto debemos distinguir entre información y conocimiento. Denominaremos información al conjunto de datos básicos, sin interpretar, que se obtienen como entrada del sistema. Por ejemplo los datos numéricos que aparecen en una analítica de sangre o los datos de los sensores de una planta química. Estos datos no nos dicen nada si no los asociamos a su significado en el problema. Denominaremos conocimiento al conjunto de datos de primer orden, que modelan de forma estructurada la experiencia que se tiene sobre un cierto dominio o que surgen de interpretar los datos básicos. Por ejemplo, la interpretación de los valores de la analítica de sangre o de los sensores de la planta química para decir si son normales, altos o bajos, preocupantes, peligrosos,..., el conjunto de estructuras de datos y métodos para diagnosticar a pacientes a partir de la interpretación del análisis de sangre, o para ayudar en la toma de decisiones de que hacer en la planta química Los sistemas de IA necesitan diferentes tipos de conocimiento que no suelen estar disponibles en bases de datos y otras fuentes de información: 511 6 Capítulo 1. Introducción a la representación del conocimiento Conocimiento sobre los objetos en un entorno y las posibles relaciones entre ellos Conocimiento sobre los procesos en los que interviene o que le son útiles Conocimiento difícil de representar como datos básicos, como la intensionalidad, la causalidad, los objetivos, información temporal, conocimiento que para los humanos es de sentido común, etc. Podríamos decir para un programa de inteligencia artificial el conocimiento es la combinación entre la información y la forma en la que se debe interpretar Esquema de representación Para poder representar algo necesitamos saber entre otras cosas sus características o su estructura, que uso le dan los seres inteligentes, como adquirirlo y traspasarlo a un sistema computacional, qué estructuras de datos son adecuadas para almacenarlo y qué algoritmos y métodos permiten manipularlo. Una posibilidad sería fijarnos en como los seres humanos representamos y manipulamos el conocimiento que poseemos. Por desgracia no hay respuestas completas para todas estas preguntas desde el punto de vista biológico o neurofisiológico, no tenemos una idea clara de como nuestro cerebro es capaz de adquirir, manipular y usar el conocimiento que utilizamos para manejarnos en nuestro entorno y resolver los problemas que este nos plantea. Afortunadamente podemos buscar respuestas en otras áreas, principalmente la lógica. A partir de ella construiremos modelos que simulen la adquisición, estructuración y manipulación del conocimiento y que nos permitan crear sistemas artificiales inteligentes. Como sistema para representar el conocimiento hablaremos de esquema de representación que para nosotros será un instrumento para codificar la realidad en un ordenador. Desde un punto de vista informático un esquema de representación puede ser descrito como una combinación de: Estructuras de datos que codifican el problema en curso con el que se enfrenta el agente Parte estática Estructuras de datos que almacenan conocimiento referente al entorno en el que se desarrolla el problema y procedimientos que manipulan las estructuras de forma consistente con una interpretación plausible de las mismas Parte dinámica La parte estática estará formada por: Estructura de datos que codifica el problema Operaciones que permiten crear, modificar y destruir elementos en la estructura Predicados que dan un mecanismo para consultar esta estructura de datos Semántica de la estructura, se definirá una función que establezca una relación entre los elementos de la realidad y los elementos de la representación. Esta función es la que nos permitirá interpretar lo que hagamos en el representación en términos del mundo real. La parte dinámica estará formada por: 1 Se suele dar la ecuación Conocimiento = Información + Interpretación como visión intuitiva de este concepto parafraseando el libro de N. Wirth Algorithms + Data Structures = Programs12 1.3 Propiedades de un esquema de representación 7 Estructuras de datos que almacenan conocimiento referente al entorno/dominio en el que se desarrolla el problema Procedimientos que permiten Interpretar los datos del problema (de la parte estática) a partir del conocimiento del dominio (de la parte dinámica) Controlar el uso de los datos: estrategias de control, métodos que nos permiten decidir cuando usamos el conocimiento y como éste guía los procesos de decisión. Adquirir nuevo conocimiento: mecanismos que nos permiten introducir nuevo conocimiento en la representación, ya sea por observación del mundo real o como deducción a partir de la manipulación del conocimiento del problema. Es importante tener en mente que la realidad no es el esquema de representación. De hecho, podemos representar la realidad utilizando diferentes esquemas de representación. La representación es simplemente una abstracción que nos permite resolver los problemas del dominio en un entorno computacional. Se ha de tener siempre en cuenta que nuestra representación siempre es incompleta, debido a: Modificaciones: el mundo es cambiante, pero nuestras representaciones son de un instante Volumen: mucho (demasiado) conocimiento a representar, siempre tendremos una representación parcial de la realidad Complejidad: La realidad tiene una gran riqueza en detalles y es imposible representarlos todos El problema de la codificación del mundo esta ligado a los procedimientos de adquisición y mantenimiento de la representación. Deberíamos poder introducir en la representación toda aquella información que es consecuencia del cambio de la realidad, esto requiere poder representar todo lo que observamos en la realidad y obtener todas las consecuencias lógicas de ese cambio 2. La eficiencia de los métodos de adquisición es clave, el problema es que no existe ningún mecanismo lo suficientemente eficiente como para que sea plausible desde el punto de vista computacional mantener una representación completa de la realidad. Los problemas de volumen y complejidad de la realidad están relacionados con la granularidad de la representación. Cuanto mayor sea el nivel de detalle con el que queramos representar la realidad, mayor será el volumen de información que tendremos que representar y manipular. Esto hace que el coste computacional de manejar la representación crezca de manera exponencial, haciendo poco plausible llegar a ciertos niveles de detalle y obligando a que la representación sea una simplificación de la realidad. 1.3 Propiedades de un esquema de representación Un buen formalismo de representación de un dominio particular debe poseer las siguientes propiedades: Ligadas a la representación Adecuación Representacional: Habilidad para representar todas las clases de conocimiento que son necesarias en el dominio. Se puede necesitar representar diferentes tipos de conocimiento, cada tipo necesita que el esquema de representación sea capaz de describirlo, por ejemplo conocimiento general, negaciones, relaciones estructurales, conocimiento 2 A este problema se le ha denominado el problema del marco de referencia (frame problem).13 8 Capítulo 1. Introducción a la representación del conocimiento causal,... Cada esquema de representación tendrá un lenguaje que permitirá expresar algunos de estos tipos de conocimiento, pero probablemente no todos. Adecuación Inferencial: Habilidad para manipular estructuras de representación de tal manera que devengan o generen nuevas estructuras que correspondan a nuevos conocimientos inferidos de los anteriores. El esquema de representación debe definir los algoritmos que permitan inferir nuevo conocimiento. Estos algoritmos pueden ser específicos del esquema de representación o puede ser genéricos. Ligadas al uso de la representación Eficiencia Inferencial: Capacidad del sistema para incorporar conocimiento adicional a la estructura de representación, llamado metaconocimiento, que puede emplearse para focalizar la atención de los mecanismos de inferencia con el fin de optimizar los cómputos. El esquema de representación puede utilizar mecanismos específicos que aprovechen el conocimiento para reducir el espacio de búsqueda del problema. Eficiencia en la Adquisición: Capacidad de incorporar fácilmente nueva información. Idealmente el sistema por sí mismo deberá ser capaz de controlar la adquisición de nueva información y su posterior representación. Desafortunadamente no existe un esquema de representación que sea óptimo en todas estas características a la vez. Esto llevará a la necesidad de escoger la representación en función de la característica que necesitemos en el dominio de aplicación específico, o a utilizar diferentes esquemas de representación a la vez. 1.4 Tipos de conocimiento El conocimiento que podemos representar en un dominio de aplicación lo podemos dividir en dos tipos. Por un lado esta el conocimiento declarativo que es un conocimiento que se representa de manera independiente a su uso, es decir, no impone un mecanismo específico de razonamiento, por lo tanto podemos decidir como usarlo dependiendo del problema que vayamos a resolver con él. Los mecanismos de razonamiento empleados en este tipo de conocimiento son de tipo general (por ejemplo resolución lineal) y la eficiencia en su uso dependerá de la incorporación de conocimiento de control que permita dirigir su utilización. Tipos de conocimiento declarativo son el conocimiento relacional, que nos indica como diferentes conceptos se relacionan entre si y las propiedades que se pueden obtener a través de esas relaciones, conocimiento heredable, que establece las relaciones estructurales entre conceptos de manera que podamos saber propiedades de generalización/especialización, inclusión o herencia de propiedades y el conocimiento inferible, que establece como se pueden derivar propiedades y hechos de otros mediante relaciones de deducción. El segundo tipo de conocimiento es el conocimiento procedimental. Este indica explícitamente la manera de usarlo, por lo que el mecanismo de razonamiento está ligado a la representación, con la ventaja de que es más eficiente de utilizar Conocimiento Relacional simple La forma más simple de representar hechos declarativos es mediante un conjunto de relaciones expresables mediante tablas (como en una base de datos). La definición de cada tabla establece la14 1.4 Tipos de conocimiento 9 descripción de un concepto y la tabla contiene todas sus instanciaciones. Por ejemplo, podemos tener la colección de información sobre los clientes de una empresa Cliente Dirección Vol Compras... A. Perez Av. Diagonal J. Lopez c/ Industria J. García c/ Villaroel El principal problema es que tal cual no aporta conocimiento, solo es una colección de datos que necesita de una interpretación y procedimientos que permitan utilizarlo. Podríamos obtener nuevo conocimiento a partir de esta información con procedimientos que calcularan por ejemplo la media de compras en una población o el mejor cliente o la tipología de clientes. Las bases de datos pueden proporcionar información en un dominio, pero es necesaria una definición explícita de las propiedades que se definen, las relaciones que se pueden establecer entre las diferentes tablas y las propiedades de esas relaciones Conocimiento Heredable De entre el conocimiento que podemos expresar en un dominio suele ser muy habitual hacer una estructuración jerárquica del conocimiento (taxonomía jerárquica), de manera que se puedan establecer relaciones entre los diferentes conceptos. En este caso estamos representando mediante un árbol o grafo las relaciones entre conceptos que se basan en el principio de generalización y/o especialización (clase/subclase, clase/instancia, todo/parte, unión/intersección). Este conocimiento pretende representar definiciones de conceptos aprovechando las relaciones estructurales entre ellos. Como se puede ver en la figura 1.1 los nodos son los conceptos/clases, y los arcos las relaciones jerárquicas. El mecanismo de inferencia se basa en la herencia de propiedades y valores (herencia simple/múltiple, valores por defecto) y en la subsumción de clases (determinar si una clase está incluida en otra) Conocimiento Inferible Es conocimiento descrito mediante el lenguaje de la lógica. En este caso las expresiones describen hechos que son ciertos en el dominio. La riqueza del lenguaje de la lógica nos permite representar multitud de hechos, estableciendo por ejemplo propiedades universales sobre los predicados del dominio, la existencia de elementos que cumplan unas propiedades o establecer relaciones de inferencia entre predicados. Podemos decir por ejemplo: x, y : persona(x) menor(x) ocupacion(x, y) parado(x) El mecanismo de deducción en el caso de la lógica de primer orden se obtiene eligiendo de entre los métodos generales de deducción automática que existen, como por ejemplo la resolución lineal Conocimiento Procedimental Este conocimiento incluye la especificación de los procesos para su uso. En este tipo se incluyen los procedimientos que permiten obtener conocimiento a partir de información o nuevo conocimiento que ya se tiene. Por ejemplo, si se tiene la información Fecha_nacimiento= DD-MM-AAAA, se puede calcular la edad como una función que combine esta información con la fecha actual.15 10 Capítulo 1. Introducción a la representación del conocimiento Ser vivo Respira es un es un Reptil Tiene escamas Mamifero Tiene pelo es un es un Godzilla inst de Felino Roedor inst de inst de inst de Silvestre Jinx Pixie Figura 1.1: Jerarquia de conceptos También se incluyen en este conocimiento las denominadas reglas de producción. Estas son expresiones condicionales que indican las condiciones en las que se deben realizar ciertas acciones al estilo SI condición ENTONCES acción. La combinación de estas expresiones condicionales pueden permitir resolver problemas descomponiéndolos en una cadena de acciones guiada por las condiciones de las reglas. Este tipo de conocimiento suele ser más eficiente computacionalmente, pero hace más difícil la inferencia y la adquisición/modificación ya que se apoyan en mecanismos específicos.16 2. Lógica 2.1 Introducción Una gran parte de los formalismos de representación del conocimiento que se utilizan en inteligencia artificial se fundamentan directamente en la lógica. De hecho la lógica es el lenguaje utilizado por todas las disciplinas científicas para describir su conocimiento de manera que pueda ser compartido sin ambigüedad y poder utilizar métodos formales para probar sus afirmaciones y obtener sus consecuencias Es por tanto interesante ver la lógica como lenguaje de representación. La lógica provee un lenguaje formal a través de cual podemos expresar sentencias que modelan la realidad. Es un lenguaje declarativo que establece una serie de elementos sintácticos a partir de los cuales podemos representar conceptos, propiedades, relaciones, constantes y la forma de conectar todos ellos. A partir de este lenguaje podemos relacionar la semántica de las sentencias que expresamos con la semántica de la realidad que queremos representar. Como la lógica es un lenguaje declarativo, se establecen una serie de procedimientos que permiten ejecutar la representación y obtener nuevo conocimiento a partir de ella. Nos centraremos en la lógica clásica y en particular en la lógica proposicional y la lógica de predicados. Los conceptos que se explican en este capítulo los conocéis de la asignatura Introducción a la lógica, así que podéis consultar sus apuntes para tener una descripción más detallada. Este capítulo solo servirá para refrescar la memoria y no como descripción exhaustiva del formalismo de la lógica. 2.2 Lógica proposicional Es el lenguaje lógico más simple y nos permite definir relaciones entre frases declarativas atómicas (no se pueden descomponer en elementos más simples). El lenguaje se define a partir de átomos y conectivas, siendo estas la conjunción ( ), la disyunción ( ), la negación ( ) y el condicional ( ). Las fórmulas válidas de lógica de enunciados son las que se pueden derivar a partir de esta gramática: 1. Si P es una sentencia atómica entonces P es una fórmula. 2. Si A y B son fórmulas entonces (A B) es una fórmula 3. Si A y B son fórmulas entonces (A B) es una fórmula 4. Si A y B son fórmulas entonces (A B) es una fórmula 5. Si A es una fórmula entonces A es una fórmula Por convención, se consideran sentencias atómicas todas las letras mayúsculas a partir de la P y fórmulas todas las letras mayúsculas a partir de la A. Mediante este lenguaje podemos expresar sentencias que relacionan cualquier frase declarativa atómica mediante las cuatro conectivas básicas y su semántica asociada. Esta semántica viene definida 1117 12 Capítulo 2. Lógica por lo que se denomina teoría de modelos, que establece la relación entre las fórmulas y los valores de verdad y falsedad, es lo que se denomina una interpretación. Cada conectiva tiene su tabla de verdad 1 que establece como se combinan los valores de verdad de los átomos para obtener el valor de verdad de la fórmula. A partir de los enunciados expresados mediante este lenguaje se pueden obtener nuevos enunciados que se deduzcan de ellos o se pueden plantear enunciados y comprobar si se derivan de ellos. Para ello existen diferentes metodologías de validación de razonamientos que establecen los pasos para resolver esas preguntas. Metodologías de validación de razonamientos hay bastantes y se pueden dividir en dos grupos. Las que se basan en la semántica, buscan demostrar que los modelos que hacen verdad un conjunto de enunciados incluyen los modelos que hacen verdad la conclusión que queremos probar. Las que se basan en sintaxis aprovechan la estructura algebraica del lenguaje de la lógica de enunciados (álgebra de boole) para demostrar que el enunciado satisfactible/insatisfactible es accesible utilizando los enunciados premisa y la conclusión. El método más sencillo para la validación de enunciados es el método de resolución. Es un método que funciona por refutación, es decir, podemos saber si un enunciado se deriva de un conjunto de enunciado probando que al añadir su negación podemos obtener el enunciado insatisfactible. Este método se basa en la aplicación de la regla de resolución: A B, A C B C al conjunto de clausulas que se obtienen de transformar las premisas y la negación de la conclusión a forma normal conjuntiva. Existen diferentes variantes del algoritmo, la mas común es la que utiliza la denominada estrategia de conjunto de soporte, que inicia el algoritmo escogiendo alguna de las cláusulas de la negación de la conclusión. Este método es sólido y completo 2 si se demuestra la satisfactibilidad de las cláusulas de las premisas. Ejemplo 2.1 Podemos plantearnos un problema de lógica proposicional donde tengamos los enunciados Está lloviendo y Me mojo. Asignamos a los enunciados las letras de átomo P y Q respectivamente. Podemos escribir la fórmula P Q, que se puede leer como Si esta lloviendo entonces me mojo y plantearnos el siguiente razonamiento: P Q, P Q Podemos utilizar el método de resolución para validar este razonamiento obteniendo el siguiente conjunto de cláusulas con el razonamiento C = { P Q, P, Q}. Con estas cláusulas podemos obtener el siguiente árbol de resolución validando el razonamiento: Q P Q P P 1 Es algo que ya conocéis de la asignatura de lógica. 2 Las propiedades de solidez y completitud (soundness, completness) son las que se piden a cualquier método de validación. La propiedad de solidez nos garantiza que el método solo nos dará conclusiones válidas y la completitud nos garantiza que podremos obtener todas las conclusiones derivables.18 2.3 Lógica de predicados Lógica de predicados La capacidad expresiva de la lógica de enunciados no es demasiado grande, por lo que habitualmente se utiliza como método de representación la lógica de predicados. Esta amplía el vocabulario de la lógica de enunciados añadiendo parámetros a los átomos, que pasan a representar propiedades o relaciones, también añade lo que denominaremos términos que son de tres tipos: variables (elementos sobre los que podremos cuantificar o substituir por valores), constantes (elementos identificables del dominio) y funciones (expresiones que pueden aplicarse a variables y constantes que denotan el valor resultante de aplicar la función a sus parámetros). A estos elementos se les añaden los cuantificadores universal ( ) y existencial ( ) que son extensiones infinitas de las conectivas conjunción y disyunción. Esto amplía la gramática de fórmulas que podemos expresar, será una fórmula válida de lógica de predicados toda aquella que cumpla: 1. Si P es un predicado atómico y t 1, t 2,..., t n son términos, entonces P (t 1, t 2,..., t n ) es una fórmula. 2. Si A y B son fórmulas entonces (A B) es una fórmula 3. Si A y B son fórmulas entonces (A B) es una fórmula 4. Si A y B son fórmulas entonces (A B) es una fórmula 5. Si A es una fórmula y v es una variable, entonces ( va) y ( va) son una fórmula 6. Si A es una fórmula entonces A es una fórmula Por convención, se consideran sentencias atómicas todas las letras mayúsculas a partir de la P y fórmulas todas las letras mayúsculas a partir de la A. Para los términos, las constantes se denotan por letras minúsculas a partir de la a, las variables son letras minúsculas a partir de la x y las funciones letras minúsculas a partir de la f. Mediante este lenguaje podemos expresar propiedades y relaciones entre objetos constantes de un dominio o establecer propiedades universales o existenciales entre los elementos del dominio. La visión que tenemos de la realidad está compuesta de elementos (las constantes) que podemos ligar mediante propiedades y relaciones. Podríamos asociar esta visión a una noción conjuntista de la realidad, los predicados unarios corresponderían a los conjuntos en los que podemos tener las constantes, los predicados con mayor aridad corresponderían a las relaciones que podemos establecer entre los elementos de esos conjuntos. En este caso la cuantificación nos permite establecer enunciados que pueden cumplir todos los elementos de un conjunto o enunciar la existencia en el conjunto de elementos que cumplen cierta propiedad o relación. El método de resolución también se puede aplicar como método de validación en lógica de predicados, pero necesita de un conjunto de procedimientos adicionales para tener en cuenta las extensiones que hemos hecho en el lenguaje. En este caso las fórmulas son transformadas a la forma normal de skolem, que permite substituir todas las cuantificaciones existenciales por constantes y expresiones funcionales 3. El método exige que para la aplicación de la regla de resolución los átomos que se quieran resolver permitan la unificación de los términos de los parámetros. La unificación lo que busca es la substitución de los valores de las variables de los términos de los átomos que permitan que las dos expresiones sean iguales. Ejemplo 2.2 Podemos plantearnos el problema de lógica de predicados con los siguientes predicados ser un hombre, ser mortal y una constante Socrates. Asignamos a los predicados las letras P y Q respectivamente y a la constante la letra a. Podemos escribir la fórmula x(p (x) Q(x)) (todos 3 Tenéis los detalles en los apuntes de la asignatura de lógica.19 14 Capítulo 2. Lógica los hombres son mortales) y la fórmula P (a) (Sócrates es un hombre) y podemos intentar validar la fórmula Q(a) (Sócrates es mortal). Podemos utilizar el método de resolución para validar este razonamiento obteniendo el siguiente conjunto de cláusulas con el razonamiento C = { P (x)) Q(x), P (a), Q(a)}. Con estas cláusulas podemos obtener el siguiente árbol de resolución validando el razonamiento: Q(a) P (x) Q(x) {x = a} P (a) P (a) 2.4 Lógica y representación del conocimiento El lenguaje de lógica de predicados puede ser bastante incómodo para expresar cierto tipo de conocimiento y existen extensiones o modificaciones que intentan facilitar su uso. Por ejemplo, extensiones que hacen algo más cómodo el uso de lógica de predicados es incluir la igualdad como un predicado especial o permitir el utilizar tipos en las variables que se cuantifican. Existen otros aspectos que son difíciles de tratar directamente en lógica de predicados, como por ejemplo: Representación del tiempo: En lógica de predicados toda fórmula se refiere al presente. Existen diferentes lógicas para el tratamiento del tiempo que permiten expresar relaciones temporales entre los elementos del dominio. El conocimiento entre agentes, razonamiento sobre otros: Las fórmulas que expresamos son el conocimiento propio, pero no tratamos nuestra creencia sobre el conocimiento que puedan tener otros. Las diferentes lógicas de creencias intentan establecer métodos que permiten obtener deducciones sobre lo que creemos que otros agentes creen. El conocimiento incierto e impreciso: La lógica de predicados supone que podemos evaluar con total certidumbre el valor de verdad de cualquier formula, pero en la realidad eso no es siempre así. Las lógicas probabilística y posibilística intentan trabajar con esa circunstancia y permitir obtener deducciones a partir de la certidumbre que tenemos sobre nuestro conocimiento.20 3. Sistemas de reglas de producción 3.1 Introducción La lógica de predicados también se puede ver como un mecanismo para describir procedimientos. Con este tipo de visión lo que hacemos es describir un problema como si fuera un proceso de razonamiento. Los predicados que utilizamos descomponen el problema en problemas más sencillos e indican un orden total o parcial que permitirá al sistema que ejecute esta descripción resolverlo. En este tipo de descripción utilizamos un conjunto restringido de las expresiones que se pueden representar mediante el lenguaje de la lógica. La restricción fundamental que se impone es que solo se pueden utilizar fórmulas lógicas cuantificadas universalmente que se puedan transformar a cláusulas disyuntivas 1 en las que solo haya como máximo un átomo afirmado. Este tipo de cláusulas se denominan cláusulas de Horn. La justificación de esta limitación es que la representación tendrá que ser ejecutada como una demostración y el coste computacional de los procedimientos para realizarla está ligado a la expresividad empleada en su descripción. A pesar de esta restricción del lenguaje podremos describir un gran número de problemas. Este tipo de fórmulas se corresponde con lo que denominaremos reglas de producción. Las reglas son fórmulas condicionales en las que puede haber cualquier número de átomos en el antecedente y solo un átomo en el consecuente, por ejemplo: x y(p ersona(x) Edad(x, y) Mayor(y, 18) Mayor_de_edad(x)) En la práctica los lenguajes de programación que permiten describir problemas mediante reglas son más flexibles en su sintaxis y permitir cosas mas complejas. De hecho el consecuente de una regla puede ser una acción sobre la descripción del estado (modificación de los predicados actuales), un nuevo hecho del estado, un hecho que usamos como elemento de control de la búsqueda, una interacción con el usuario, Elementos de un sistema de producción Mediante este formalismo podremos ser capaces de describir como solucionar un problema, declarando el conjunto de reglas a partir del cual se puede obtener una solución mediante un proceso de demostración. La diferencia de las reglas respecto a otros formalismos procedimentales (como un programa implementado en un lenguaje imperativo) es que no explicitamos directamente el algoritmo a utilizar para encontrar la solución del problema, sino que se indican las condiciones que esta ha de cumplir la solución. Es un mecanismo de demostración el que se encarga de encontrarla combinando los pasos indicados por las reglas, ya que lo que estamos haciendo es validar un razonamiento que se fundamenta en las reglas descritas. Esta forma de describir procedimientos se encuadra dentro de los denominados lenguajes declarativos (a diferencia de los lenguajes imperativos, que son los más comunes). La ventaja de declarar las condiciones que cumplen las soluciones es que no estamos limitados a una única secuencia de ejecución, un conjunto de reglas pueden describir muchos algoritmos distintos que comparten parte 1 Una cláusula disyuntiva es una fórmula en la que solo se usa la conectiva disyunción. 15 Mostrar más
Todo problema es más sencillo de resolver si disponemos de conocimiento específico sobre él Este conocimiento dependiente del dominio se combina con el conocimiento general sobre cómo resolver problemas Más detalles Componentes de los SBC
Componentes de los SBC Componentes de los SBC Queremos construir sistemas con ciertas características: Resolución de problemas a partir de información simbólica Resolución mediante razonamiento y métodos Más detalles Introducción. Lógica de proposiciones: introducción. Lógica de proposiciones. P (a) x. Conceptos
Introducción César Ignacio García Osorio Lógica y sistemas axiomáticos 1 La lógica ha sido históricamente uno de los primeros lenguajes utilizados para representar el conocimiento. Además es frecuente Más detalles Tema 1 Introducción a los Sistemas Basados en el Conocimiento
Tema 1 Introducción a los Sistemas Basados en el Conocimiento Sistemas Basados en el Conocimiento Grado en Ingeniería Informática 1 Referencias Ingeniería del Conocimiento. A. Gómez, N. Juristo, C. Montes, Más detalles Representación del conocimiento mediante lógica formal Introducción a PROLOG
Representación del conocimiento mediante lógica formal Introducción a PROLOG Representación del conocimiento Lo que nos interesa es la representación, es decir, la modelización del conocimiento Orientaciones: Más detalles Desarrollo de SBC. cbea (LSI - FIB) Sistemas Basados en el Conocimiento IA - Curso 2008/2009 1 / 41
Desarrollo de SBC Ingeniería de los SBC Desarrollo de SBC El punto más importante del desarrollo de SBC es la extracción del conocimiento Requiere la interacción entre el Ingeniero del Conocimiento y el Más detalles TEMA 3 (parte 2). Representación del Conocimiento
Estructuras Discretas César Bautista Ramos Carlos Guillén Galván Daniel Alejandro Valdés Amaro Facultad de Ciencias de la Computación Benemérita Universidad Autónoma de Puebla 1. CONJUNTOS Y CLASES 1 Más detalles Nombre de la asignatura: Inteligencia Artificial. Créditos: 2-2 - 4. Aportación al perfil
Nombre de la asignatura: Inteligencia Artificial Créditos: 2-2 - 4 Aportación al perfil Diseñar e implementar interfaces hombre- máquina y máquinamáquina para la automatización de sistemas. Identificar Más detalles INDICE. XVII Prólogo a la edición en español. XXI 1. Calculo proporcional 1.1. Argumentos y proporciones lógicas
INDICE Prologo XVII Prólogo a la edición en español XXI 1. Calculo proporcional 1.1. Argumentos y proporciones lógicas 1 1.1.1. Introducción 1.1.2. Algunos argumentos lógicos importantes 2 1.1.3. Proposiciones Más detalles Ontologías ECSDI. Curso 2014/2015. LSI-FIB-UPC cbea. ECSDI (LSI-FIB-UPC cbea) Ontologías Curso 2014/2015 1 / 36
Ontologías ECSDI LSI-FIB-UPC cbea Curso 2014/2015 ECSDI (LSI-FIB-UPC cbea) Ontologías Curso 2014/2015 1 / 36 Índice 1 Introducción 2 Ontologias 3 Proyectos de Ontologías 4 Elementos de un ontología ECSDI Más detalles INTRODUCCIÓN A LA INTELIGENCIA ARTIFICIAL: LOS SISTEMAS EXPERTOS
Introducción a los Sistemas Expertos 1 INTRODUCCIÓN A LA INTELIGENCIA ARTIFICIAL: LOS SISTEMAS EXPERTOS ÍNDICE 1. INTRODUCCIÓN. EVOLUCIÓN HISTÓRICA 2. DEFINICIÓN Y CARACTERÍSTICAS DE LOS SE. 3. TIPOS Y Más detalles Introducción a los Tipos Abstractos de Datos
Página 1 de 8 Introducción a los Tipos Abstractos de Datos Introducción: Concepto de abstracción Abstracción funcional y abstracción de datos Construcción de tipos abstractos de datos Especificación de Más detalles INTRODUCCIÓN A LA INTELIGENCIA ARTIFICIAL
INTRODUCCIÓN A LA INTELIGENCIA ARTIFICIAL MÓDULO 3: REPRESENTACIÓN DEL CONOCIMIENTO 3.1. INTRODUCCIÓN La IA involucra la construcción de programas que resuelvan problemas que, de ser resueltos por seres Más detalles DESARROLLO DE SOFTWARE CON CALIDAD PARA UNA EMPRESA
DESARROLLO DE SOFTWARE CON CALIDAD PARA UNA EMPRESA Resumen AUTORIA CARLOS CABALLERO GONZÁLEZ TEMATICA INFORMÁTICA ETAPA ESO-BACHILLERATO-CFGM(ESI,ASI,DSI) Se describe la revolución que supuso la incursión Más detalles UNIDAD I: LÓGICA PROPOSICIONAL
UNIDAD I: LÓGICA PROPOSICIONAL ASIGNATURA: INTRODUCCIÓN A LA COMPUTACIÓN CARRERAS: LICENCIATURA Y PROFESORADO EN CIENCIAS DE LA COMPUTACIÓN DEPARTAMENTO DE INFORMÁTICA FACULTAD DE CIENCIAS FÍSICO MATEMÁTICA Más detalles 4 o Ingeniería Informática
Esquema del tema 1. Introducción 4 o Ingeniería Informática II26 Procesadores de lenguaje Estructura de los compiladores e intérpretes 2. Etapas del proceso de traducción 3. La interpretación 4. La arquitectura Más detalles INGENIERIA DEL CONOCIMIENTO UBICACION HISTORICA. Dr. Ramón GARCIA MARTINEZ
INGENIERIA DEL CONOCIMIENTO UBICACION HISTORICA Dr. Ramón GARCIA MARTINEZ INTELIGENCIA ARTIFICIAL Es la disciplina que estudia la forma de diseñar procesos que exhiban características que comunmente se Más detalles Notas de Clase para IL
Notas de Clase para IL 5. Deducción en Lógica de Primer Orden Rafel Farré, Robert Nieuwenhuis, Pilar Nivela, Albert Oliveras, Enric Rodríguez, Josefina Sierra 3 de septiembre de 2009 1 1. Formas normales Más detalles Desarrollo del software imposible si las tareas tuviesen que expresarse en código máquina. Lenguajes de más alto nivel: comprensibles, manejables y
1. Paradigmas de programación Desarrollo del software imposible si las tareas tuviesen que expresarse en código máquina. Lenguajes de más alto nivel: comprensibles, manejables y automáticamente convertibles Más detalles PROLOG Inteligencia Artificial Universidad de Talca, II Semestre 2005. Jorge Pérez R.
PROLOG Inteligencia Artificial Universidad de Talca, II Semestre 2005 Jorge Pérez R. 1 Introducción a PROLOG PROLOG es un lenguaje interpretado basado en la lógica de predicados de primer orden. Puede Más detalles Taxonomía de los principales temas de I A Por: Luis Guillermo Restrepo Rivas
Taxonomía de los principales temas de I A Por: Luis Guillermo Restrepo Rivas 1. DEFINICIONES, UBICACIÓN CONCEPTUAL E HISTORIA DE LA I.A. 2. COMPLEJIDAD COMPUTACIONAL, EXPLOSIÓN COMBINATORIA, DOMINIOS NO Más detalles Límites. Definición de derivada.
Capítulo 4 Límites. Definición de derivada. 4.1. Límites e indeterminaciones Hemos visto en el capítulo anterior que para resolver el problema de la recta tangente tenemos que enfrentarnos a expresiones Más detalles Optimización de consultas Resumen del capítulo 14
Optimización de consultas Resumen del capítulo 14 Libro: Fundamentos de Bases de Datos Silberschatz et al. 5ed. Dr. Víctor J. Sosa Agenda 1. Visión general 2. Estimación de las estadísticas de los resultados Más detalles Departamento de Informática Universidad de Valladolid Campus de Segovia TEMA 7: VALIDACIÓN
Departamento de Informática Universidad de Valladolid Campus de Segovia TEMA 7: VALIDACIÓN TÉCNICAS DE PRUEBA DEL SOFTWARE Introducción Aspectos psicológicos de las pruebas Flujo de información de la prueba Más detalles Las reglas se parecen un poco a las vistas relacionales. Especifican relaciones virtuales que no están
BASES DE DATOS DEDUCTIVAS Introducción: El interés de los Sistemas de Gestión de Bases de Datos Deductivas tiende a incrementarse conforme se amplía su campo de aplicación (Gestión, Sistemas Expertos). Más detalles Capítulo 1. Introducción
Capítulo 1. Introducción El WWW es la mayor fuente de imágenes que día a día se va incrementando. Según una encuesta realizada por el Centro de Bibliotecas de Cómputo en Línea (OCLC) en Enero de 2005, Más detalles CICLO SUPERIOR DESARROLLO DE APLICACIONES MULTIPLATAFORMA
CICLO SUPERIOR DESARROLLO DE APLICACIONES MULTIPLATAFORMA PROGRAMACIÓN DIDACTICA ANUAL Parte específica del módulo: 0485. Programación Departamento de Familia Profesional de Informática Curso: 2014-15 Más detalles Significado de las f.b.f (fórmulas bien formadas) en términos de objetos, propiedades y relaciones en el mundo
Significado de las f.b.f (fórmulas bien formadas) en términos de objetos, propiedades y relaciones en el mundo Semánticas del cálculo de predicados proporcionan las bases formales para determinar el valor Más detalles PLAN DE ESTUDIOS Y CONTENIDOS MÍNIMOS
CARRERAS DE DOS AÑOS TECNICATURA EN PROGRAMACIÓN DE COMPUTADORAS PLAN DE ESTUDIOS Y CONTENIDOS MÍNIMOS Resolución UB 004/14 ANEXO Tabla general de asignaturas del Plan de Estudios y Obligaciones Académicas Más detalles Búsqueda sobre catálogos basada en ontologías
Búsqueda sobre catálogos basada en ontologías Alianis Pérez Sosa, Yuniel Eliades Proenza Arias Universidad de las Ciencias Informáticas. Carretera a San Antonio Km 2 ½, Reparto Torrens, La Lisa, Ciudad Más detalles Ingeniería en Informática
Departamento de Informática Universidad Carlos III de Madrid Ingeniería en Informática Aprendizaje Automático Junio 2007 Normas generales del examen El tiempo para realizar el examen es de 3 horas No se Más detalles Sistemas Expertos Introducción Arquitectura - Motor de Inferencias. Ana Casali Andrea Torres Ingeniería del Conocimiento -EIE
Sistemas Expertos Introducción Arquitectura - Motor de Inferencias Ana Casali Andrea Torres Ingeniería del Conocimiento -EIE IC - MODULOS INTRODUCCION SISTEMAS BASADOS EN CONOCIMIENTO RAZONAMIENTO APROXIMADO Más detalles Arquitectura de Aplicaciones
1 Capítulo 13: Arquitectura de aplicaciones. - Sommerville Contenidos del capítulo 13.1 Sistemas de procesamiento de datos 13.2 Sistemas de procesamiento de transacciones 13.3 Sistemas de procesamiento Más detalles Sistemas secuenciales síncronos: codificación de estados de un control de volumen
Sistemas secuenciales síncronos: codificación de estados de un control de volumen Apellidos, nombre Martí Campoy, Antonio (amarti@disca.upv.es) Departamento Centro Informàtica de Sistemes i Computadors Más detalles Introducción. Paradigma de Lógica Gran importancia en la I.A. Origen: prueba de teoremas y razonamiento deductivo. Lógica.
Tema 2: Lógica y Razonamiento Automático tico Introducción Lógica Proposicional Lógica de Predicados Axiomas Unificación Razonamiento automático e Inferencias lógicas Resolución Regla de Inferencia Refutación Más detalles Programación Lineal Entera
Programación Lineal Entera P.M. Mateo y David Lahoz 2 de julio de 2009 En este tema se presenta un tipo de problemas formalmente similares a los problemas de programación lineal, ya que en su descripción Más detalles INDICE Parte I. Conceptos 1. El estudio de los lenguajes de programación 2. Cuestiones de diseño de lenguajes
INDICE Parte I. Conceptos 1 1. El estudio de los lenguajes de programación 1.1. Por qué estudiar lenguajes de programación? 2 1.2. Breve historia de los lenguajes de programación 1.2.1. Desarrollo de los Más detalles PROGRAMACIÓ DIDÁCTICA: Secuanciación, Temporalización y Unidades Didácticas
Departamento de Informática PROGRAMACIÓN DIDÁCTICA Curso 11-12 1 CONSEJERÍA DE EDUCACIÓN I.E.S. NERVIÓN Departamento de Informática CICLO FORMATIVO: TÉCNICO SUPERIOR EN DESARROLLO DE APLICACIONES MULTIPLATAFORMA. Más detalles Desarrollo de Ontologías
Desarrollo de Ontologías ECSDI LSI-FIB-UPC cbea Curso 2014/2015 ECSDI (LSI-FIB-UPC cbea) Desarrollo de Ontologías Curso 2014/2015 1 / 31 Índice 1 Introducción 2 Metodologías de desarrollo ECSDI (LSI-FIB-UPC Más detalles Inicio de MO Inicio de MD Inicio de MF. Documento de Análisis. Base de datos de las especificaciones OMT. MO, MD, MF Detallados. Librería de Clases
3.2 TÉCNICA DE MODELADO DE OBJETOS (OMT) (JAMES RUMBAUGH). 3.2.1 Introducción. En este documento se trata tanto el OMT-1 como el OMT-2, el primero contenido en el Libro Modelado y Diseño Orientado (Metodología Más detalles Una base de datos es una colección de información ordenada e interrelacionada que es de importancia para una empresa.
BASES DE DATOS Una base de datos es una colección de información ordenada e interrelacionada que es de importancia para una empresa. La creación de una base de datos debe ser realizada cuidadosamente procurando Más detalles TEMA 1: INTRODUCCIÓN
1 DISEÑO Y DESARROLLO DE COMPILADORES TEMA 1: INTRODUCCIÓN Qué es un Compilador? Un compilador no es más que un traductor, es decir, un programa que nos permite pasar información de un lenguaje a otro. Más detalles CUALIFICACIÓN SISTEMAS DE GESTIÓN DE INFORMACIÓN PROFESIONAL. Nivel 3. Versión 5 Situación RD 1201/2007 Actualización
Página 1 de 16 CUALIFICACIÓN SISTEMAS DE GESTIÓN DE INFORMACIÓN PROFESIONAL Familia Profesional Informática y Comunicaciones Nivel 3 Código IFC304_3 Versión 5 Situación RD 1201/2007 Actualización Competencia Más detalles El modelo relacional y el álgebra relacional
El modelo relacional y el álgebra relacional Introducción Esta unidad didáctica está dedicada al estudio del modelo de datos relacional y del álgebra relacional. El concepto de modelo de datos se ha presentado Más detalles Tema 3: Problemas de Satisfacción de Restricciones
Tema 3: Problemas de Satisfacción de Restricciones Universidad de Granada Tema 3: Satisfacción de Restricciones Contenido Problemas de satisfacción de restricciones Métodos de búsqueda Búsqueda local para Más detalles forma de entrenar a la nuerona en su aprendizaje.
Sistemas expertos e Inteligencia Artificial,Guía5 1 Facultad : Ingeniería Escuela : Computación Asignatura: Sistemas expertos e Inteligencia Artificial Tema: SISTEMAS BASADOS EN CONOCIMIENTO. Objetivo Más detalles Departamento de Informática y Automática INGENIERÍA DEL SOFTWARE PARTE I: TEST EXAMEN FINAL
Departamento de Informática y Automática INGENIERÍA DEL SOFTWARE PARTE I: TEST EXAMEN FINAL DNI Apellidos y nombre 1. Cuál de las siguientes afirmaciones no es una causa de los problemas del software? Más detalles Sistemas de Ayuda a la Decision Qué es un Sistema de Ayuda a la Decisión?
Sistemas de Ayuda a la Decision Qué es un Sistema de Ayuda a la Decisión? Luis Daniel Hernández Molinero Departamento de Ingeniería de la Información y las Comunicaciones Facultad de Informática Universidad Más detalles Objetivos. Contenidos. Revisar los principales conceptos de la lógica de primer orden
Especificación TEMA 1 formal de problemas Objetivos Revisar los principales conceptos de la lógica de primer orden Entender el concepto de estado de cómputo y cómo se modela con predicados lógicos Familiarizarse Más detalles ÍNDICE PRESENTACIÓN... 9. INTRODUCCIÓN... 11 Lógica y Filosofía de la Lógica... 11 Más allá de este libro... 16
ÍNDICE PRESENTACIÓN... 9 INTRODUCCIÓN... 11 Lógica y Filosofía de la Lógica... 11 Más allá de este libro... 16 I. VERDAD Y PORTADORES DE VERDAD... 19 1. De qué tipo de entidades predicamos la verdad?... Más detalles CAPÍTUL07 SISTEMAS DE FILOSOFÍA HÍBRIDA EN BIOMEDICINA. Alejandro Pazos, Nieves Pedreira, Ana B. Porto, María D. López-Seijo
CAPÍTUL07 SISTEMAS DE FILOSOFÍA HÍBRIDA EN BIOMEDICINA Alejandro Pazos, Nieves Pedreira, Ana B. Porto, María D. López-Seijo Laboratorio de Redes de Neuronas Artificiales y Sistemas Adaptativos Universidade Más detalles INGENIERIA EN INGENIERÍA EN SISTEMAS COMPUTACIONALES CLAVE MATERIA OBJETIVO
INGENIERIA EN INGENIERÍA EN SISTEMAS COMPUTACIONALES CLAVE MATERIA OBJETIVO SCE - 0418 SCM - 0414 SCC-0428 ACM - 0403 SCB - 0421 SCV - 0407 ACU-0402 Introducción a la ingeniería en sistemas computacionales Más detalles MLM 1000 - Matemática Discreta
MLM 1000 - Matemática Discreta L. Dissett Clase 04 Resolución. Lógica de predicados c Luis Dissett V. P.U.C. Chile, 2003 Aspectos administrativos Sobre el tema vacantes: 26 personas solicitaron ingreso Más detalles INTRODUCCIÓN. Estructura de Datos Tipos Abstractos de Datos (TAD S) Profs. Lorna Figueroa M. Mauricio Solar F. UTFSM 1 / 2008
INTRODUCCIÓN Estructura de Datos Tipos Abstractos de Datos (TAD S) Para poder obtener un programa que resuelva un problema dado, son necesarios varios pasos : La formulación y especificación del problema Más detalles {} representa al conjunto vacío, es decir, aquel que no contiene elementos. También se representa por.
2. Nociones sobre Teoría de Conjuntos y Lógica Para llevar a cabo nuestro propósito de especificar formalmente los problemas y demostrar rigurosamente la correctitud de nuestro programas, introduciremos Más detalles Modelado de un Sistema Multi-Agente mediante la aplicación de la metodología INGENIAS con el Ingenias Development Kit
Modelado de un Sistema Multi-Agente mediante la aplicación de la metodología INGENIAS con el Ingenias Development Kit Juan A. Botía MASTER TITA, Convocatoria 2007/2008 Ingeniería de Agentes Software y Más detalles Analizar, desarrollar y programar modelos matemáticos, estadísticos y de simulación.
PERFIL PROFESIONAL Analizar, desarrollar y programar modelos matemáticos, estadísticos y de simulación. Reconocer y guiarse por los aspectos sociales, profesionales y éticos en su entorno. Dirigir y coordinar Más detalles CONSTRUCCION DE SISTEMAS EXPERTOS
CONSTRUCCION DE SISTEMAS EXPERTOS TECNICAS DE EDUCCION DEL CONOCIMIENTO Dr. Ramón GARCIA MARTINEZ GRAFOS ARQUETÍPICOS En muchos dominios de conocimiento, puede reconocerse una estructura de representación Más detalles Tipos Abstractos de Datos
Objetivos Repasar los conceptos de abstracción de datos y (TAD) Diferenciar adecuadamente los conceptos de especificación e implementación de TAD Presentar la especificación algebraica como método formal Más detalles Sistemas de producción y búsqueda de soluciones. Area de Computación e Inteligencia Artificial 1
Sistemas de producción y búsqueda de soluciones Area de Computación e Inteligencia Artificial 1 Técnicas de búsqueda Resolución de problemas en Inteligencia Artificial. En general, podemos afirmar que Más detalles Simulación ISC. Profr. Pedro Pablo Mayorga
Simulación ISC Profr. Pedro Pablo Mayorga Ventajas 1. Es un proceso relativamente eficiente y flexible. 2. Puede ser usada para analizar y sintetizar una compleja y extensa situación real, pero no puede Más detalles CAPÍTULO 1. INTRODUCCIÓN
CAPÍTULO 1. INTRODUCCIÓN 1.1 INTRODUCCIÓN Tiempo atrás se pensaba que algunos problemas como la demostración de teoremas, el reconocimiento de la voz y el de patrones, ciertos juegos (como el ajedrez o Más detalles PATRONES. Experto. Solución:
PATRONES. Experto. Asignar una responsabilidad a la clase que tiene la información necesaria para cumplirla. Cuál es el principio fundamental en virtud del cual asignaremos las responsabilidades a los Más detalles Un comité de la organización ANSI (American National Standards Institute) aborda la problemática del almacenamiento de datos para su procesamiento en
15/05/2012 1 Un comité de la organización ANSI (American National Standards Institute) aborda la problemática del almacenamiento de datos para su procesamiento en aplicaciones informáticas en 1975. 2 Como Más detalles Tema 5: Diseño de Bases de Datos
Tema 5: Diseño de Bases de Datos Fernando Cano Espinosa Juan David González Cobas Universidad de Oviedo. Departamento de Informática ÒÓÙÒ ÓÚ º Ó ÙÒ ÓÚ º ÙÖ Ó ¾¼¼ ¹¾¼½¼ Produced with L A T E X seminar style Más detalles ESPACIO VECTORIAL ESPACIO VECTORIAL SUBESPACIO VECTORIAL BASE Y DIMENSIÓN N DE UN
Tema 5.- ESPACIOS VECTORIALES ESPACIO VECTORIAL SUBESPACIO VECTORIAL BASE Y DIMENSIÓN N DE UN ESPACIO VECTORIAL Fundamentos Matemáticosde la Ingeniería 1 Aunque históricamente el primer trabajo de Álgebra Más detalles 1.- DATOS DE LA ASIGNATURA. Nombre de la asignatura: Inteligencia Artificial. Carrera: Ingeniería en Sistemas Computacionales. Clave de la asignatura:
1.- DATOS DE LA ASIGNATURA Nombre de la asignatura: Carrera: Inteligencia Artificial Ingeniería en Sistemas Computacionales Clave de la asignatura: (Créditos) SATCA 1 SCC-1012 2-2-4 2.- PRESENTACIÓN Caracterización Más detalles Programación Orientada a Objetos Profr. Pedro Pablo Mayorga
Actividad 2 Unidad 1 Ciclo de vida del software y Diseño Orientado a Objetos Ciclo de Vida del Software Un modelo de ciclo de vida define el estado de las fases a través de las cuales se mueve un proyecto Más detalles TEMA 2: DESARROLLO DEL SOFTWARE
TEMA 2: DESARROLLO DEL SOFTWARE EDI I Curso 2007/08 Escuela Politécnica Superior Universidad Autónoma de Madrid TEMA 2: DESARROLLO DEL SOFTWARE 2.1. Ciclo de vida del Software 2.2. Corrección de errores Más detalles - Bases de Datos - - Diseño Físico - Luis D. García
- Diseño Físico - Luis D. García Abril de 2006 Introducción El diseño de una base de datos está compuesto por tres etapas, el Diseño Conceptual, en el cual se descubren la semántica de los datos, definiendo Más detalles TEMA 1. Introducción
TEMA 1. Introducción Francisco José Ribadas Pena, Santiago Fernández Lanza Modelos de Razonamiento y Aprendizaje 5 o Informática ribadas@uvigo.es, sflanza@uvigo.es 28 de enero de 2013 1.1 Aprendizaje automático Más detalles Capítulo 4. Ontologías y su representación jerárquica.
Capítulo 4. Ontologías y su representación jerárquica. En la interpretación de alto nivel de información visual, se tienen muchos progresos en la derivación de características de bajo nivel a partir de Más detalles 3 Cómo determinar las necesidades en innovación de los problemas de la empresa
3 Cómo determinar las necesidades en innovación de los problemas de la empresa Palabras clave Caja negra, método de prueba, reparto, valor aleatorio, tabla de decisiones y comprobación Objetivo de la formación Más detalles Fundamentos de programación
Fundamentos de programación M. Jesús Marco Galindo Jordi Àlvarez Canal Josep Vilaplana Pastó (coordinadores) XP05/75062/00107 FUOC XP05/75062/00107 Fundamentos de programación M. Jesús Marco Galindo Jordi Más detalles Ciclo de vida del Software
Tema 2: Ciclo de vida del Software Marcos López Sanz Índice Qué es el ciclo de vida del Software? La norma 12207-2008 Modelos de desarrollo Qué es el Ciclo de Vida del SW? Es una sucesión de etapas por Más detalles Introducción a la Programación en MATLAB
Introducción a la Programación en MATLAB La programación en MATLAB se realiza básicamente sobre archivos M, o M-Files. Se los denomina de esta forma debido a su extensión.m. Estos archivos son simple archivos Más detalles 3.- ALGUNOS CONCEPTOS BÁSICOS DE ÁLGEBRA DE BOOLE 4.- TRANSFORMACIÓN DE EXPRESIONES LÓGICAS A EXPRESIONES ALGEBRAICAS
TEMA 12: MODELADO CON VARIABLES BINARIAS 1.- MOTIVACIÓN 2.- INTRODUCCIÓN 3.- ALGUNOS CONCEPTOS BÁSICOS DE ÁLGEBRA DE BOOLE 4.- TRANSFORMACIÓN DE EXPRESIONES LÓGICAS A EXPRESIONES ALGEBRAICAS 5.- MODELADO Más detalles Introducción. Metadatos
Introducción La red crece por momentos las necesidades que parecían cubiertas hace relativamente poco tiempo empiezan a quedarse obsoletas. Deben buscarse nuevas soluciones que dinamicen los sistemas de Más detalles 2 Métodos combinatorios
2 Métodos combinatorios Las pruebas pueden aplicarse de muchas maneras, es decir, existen diferentes formas de preparar casos de prueba. En este capítulo se presentan dos formas de prueba muy fáciles de Más detalles INGENIERÍA EN INFORMÁTICA. Ingeniero en Informática
Facultad de Ingeniería Av. Paseo Colón 850 (C1063ACV) Ciudad de Buenos Aires Tel.: (011) 4343-0893 Fax: (011) 4345-7262 Página web: www.ingenieria.uba.ar Correo electrónico: academica@fi.uba.ar INGENIERÍA Más detalles MINISTERIO DE EDUCACIÓN DIRECCIÓN DE EDUCACIÓN TÉCNICA Y PROFESIONAL PROGRAMA DE LA ASIGNATURA PROGRAMACIÓN I ESPECIALIDAD INFORMÁTICA.
MINISTERIO DE EDUCACIÓN DIRECCIÓN DE EDUCACIÓN TÉCNICA Y PROFESIONAL PROGRAMA DE LA ASIGNATURA PROGRAMACIÓN I ESPECIALIDAD INFORMÁTICA. AUTORES: LIC. EDUARDO BRITO, LIC. MANUEL FARIÑAS, LIC. ROBERTO JORGE Más detalles Programación orientada a
Programación orientada a objetos con Java Pedro Corcuera Dpto. Matemática Aplicada y Ciencias de la Computación Universidad de Cantabria corcuerp@unican.es Objetivos Presentar los conceptos de la programación Más detalles IV. Problemas relativos a la construcción del conocimiento y al cambio cognitivo
Unidad 4 IV. Problemas relativos a la construcción del conocimiento y al cambio cognitivo 4.1. La problemática del dominio en relación al conocimiento. Dominio general y dominios específicos. Diferenciación Más detalles GENERACIÓN DE CÓDIGO
GENERACIÓN DE CÓDIGO INTRODUCCION La generación de código es la fase más compleja de un compilador, puesto que no sólo depende de las características del lenguaje fuente sino también de contar con información Más detalles Glosario. actividad. 1. (tarea) 2. es un subproceso que no requiere mas descomposición.
Glosario Aclaraciones Los conceptos del glosario están ordenados alfabéticamente. Un concepto puede ser un único término como meta o una frase como ambiente de ingeniería de software centrado en procesos. Más detalles Codd propuso estos tres lenguajes como base teórica de cualquier lenguaje que quisiera cumplir con los requisitos formales del modelo.
16/05/2012 1 Todo modelo de datos debe definir un lenguaje de definición de datos para crear las estructuras donde se almacenará la información y un lenguaje de manipulación de datos con el que acceder Más detalles Introducción a la Investigación Operativa. Enfoque Metodológico y los procesos decisorios
1. Introducción A partir de la primera revolución industrial, se produce el crecimiento de la complejidad organizacional Surge la tendencia al crecimiento de los subsistemas en forma autónoma, con sus Más detalles VISION ARTIFICIAL APOYADA EN SISTEMAS HÍBRIDOS NEURO-SIMBÓLICOS
VISION ARTIFICIAL APOYADA EN SISTEMAS HÍBRIDOS NEURO-SIMBÓLICOS Dr. Gerardo Reyes Salgado Profesor-Investigador / Instituto Tecnológico de Cuautla gerardo.reyes@itcuautla.edu.mx www.itcuautla.edu.mx 1 Más detalles Conocimientos Estratégicos y de Control
1 Conocimientos Estratégicos y de Control J.A. Bañares Bañares Departamento de Informática e Ingeniería de Sistemas C.P.S. Universidad de Zaragoza Copyright 1999 JoséAngel Bañares Última revisión: Octubre, Más detalles Reflexión sobre la calidad en los cursos.
Reflexión sobre la calidad en los cursos. by kotov - Viernes, enero 30, 2015 http://rooteando.com/reflexion-sobre-la-calidad-en-los-cursos/ Kindle Este artículo no trata de temas técnicos, no se vera como Más detalles UBA Facultad de Ciencias Económicas Lógica Algunos conceptos sobre Prolog
UBA Facultad de Ciencias Económicas Lógica Algunos conceptos sobre Prolog Autor: Carlos Lombardi carlombardi@gmail.com Índice Algunos conceptos sobre Prolog... 1 Índice... 1 Capítulo 1 Lógica para sistemas... Más detalles Escenas de episodios anteriores
Clase 16/10/2013 Tomado y editado de los apuntes de Pedro Sánchez Terraf Escenas de episodios anteriores objetivo: estudiar formalmente el concepto de demostración matemática. caso de estudio: lenguaje Más detalles Tipos Abstractos de Datos y Diseño por Contrato
Tipos Abstractos de Datos y Diseño por Contrato 1.- Motivación de los tipos abstractos de datos Nuestro objetivo es obtener descripciones apropiadas de los objetos, para lo cual se necesita un método que Más detalles Tema 2. Ingeniería del Software I feliu.trias@urjc.es
Tema 2 Ciclo de vida del software Ingeniería del Software I feliu.trias@urjc.es Índice Qué es el ciclo de vida del Software? El Estándar 12207 Modelos de proceso Qué es el Ciclo de Vida del SW? Definición Más detalles INTELIGENCIA ARTIFICIAL. Reglas de Producción. Eduardo Morales / L. Enrique Súcar
INTELIGENCIA ARTIFICIAL Reglas de Producción Eduardo Morales / L. Enrique Súcar Introducción Normalmente se asocia la inteligencia con regularidades y el comportamiento inteligente parece que ejecuta reglas. Más detalles Ingeniería del Software I Clase de Testing Funcional 2do. Cuatrimestre de 2007
Enunciado Se desea efectuar el testing funcional de un programa que ejecuta transferencias entre cuentas bancarias. El programa recibe como parámetros la cuenta de origen, la de cuenta de destino y el Más detalles Documento de Competencias. Facultad de Informática, UPV/EHU. 1 Estructura general del Grado TE1 TE2 TE3 TE4 TE5 TE6 TE7 TE8
Documento de Competencias Grado en INGENIERÍA INFORMÁTICA Facultad de Informática, UPV/EHU 1 Estructura general del Grado 1.1 Fundamentos de Tecnología de los Principios de Diseño de Sistemas Digitales Más detalles Inteligencia Artificial
Artificial I.T. en Informática de Sistemas, 3º Curso académico: 2010/2011 Profesores: Ramón Hermoso y Roberto Centeno Artificial 3º ITIS Tema 1: Introducción a la IA 1. Introducción a la Artificial 1.1 Más detalles ORIENTACIONES PARA LA PRUEBA DE APTITUD PARA EL ACCESO A LA UNIVERSIDAD
ORIENTACIONES PARA LA PRUEBA DE APTITUD PARA EL ACCESO A LA UNIVERSIDAD MODALIDAD CIENTÍFICO-TÉCNICO 1. NOMBRE DE LA MATERIA: Matemáticas II 2. NOMBRE DEL COORDINADOR: Miguel Delgado Pineda (mdelgado@mat.uned.es, Más detalles 2017 © DocPlayer.es Política de privacidad | Condiciones del servicio | Feedback

References: Resolución 
 resolución 
 Resolución 
 resolución 
 resolución 
 resolución 
 resolución 
 resolución 
 resolución 
 resolución 
 resolución 
 resolución 
 resolución 
 resolución 
 Resolución 
 Resolución 
 Resolución 
 Resolución 
 Resolución