Top Banner
3.1 Búsquedas Ciegas en amplitud y profundidad Una de las estrategias más sencillas es la de la búsqueda preferente por amplitud. En este caso, primero se expande el nodo raíz, y luego todos los nodos generados por éste; luego, sus sucesores, y así sucesivamente. En general, todos los nodos que están en la profundidad d del árbol de búsqueda se expanden antes de los nodos que estén en la profundidad d + 1. La búsqueda preferente por amplitud es una estrategia bastante sistemática, pues primero toma en cuenta todas las rutas de longitud 1, luego las de longitud 2, etc. En la siguiente figura se muestra el avance de la búsqueda efectuada en un sencillo árbol binario. En caso de haber solución, es seguro que ésta se encontrará mediante la búsqueda preferente por amplitud; si son varias las soluciones, este tipo de búsqueda permitirá siempre encontrar primero el estado meta más próximo. En función de los cuatro criterios, la búsqueda preferente por amplitud es muy completa y óptima, siempre y cuando el costo de ruta sea una función que no disminuya al aumentar la profundidad del nodo. (Por lo general, esta condición se cumple sólo cuando el costo de todos los operadores es el mismo.) Hasta ahora las noticias sobre la búsqueda preferente por amplitud han sido alentadoras. Pero, para mostrar por qué no siempre es la estrategia de opción, considérese la cantidad de tiempo y memoria necesarias para realizar una búsqueda. Tómese en cuenta un espacio de estados hipotético, en el que la expansión de cada uno de los estados produce b nuevos estados. Se dice que el factor de ramificación de estos estados (y del árbol de búsqueda) es b. La raíz del árbol de
29

3er Parcial Inteligencia Artificial

Jun 26, 2015

Download

Documents

Edgar Aburto
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: 3er Parcial Inteligencia Artificial

3.1 Búsquedas Ciegas en amplitud y profundidad

Una de las estrategias más sencillas es la de la búsqueda preferente por amplitud. En este caso, primero se expande el nodo raíz, y luego todos los nodos generados por éste; luego, sus sucesores, y así sucesivamente. En general, todos los nodos que están en la profundidad d del árbol de búsqueda se expanden antes de los nodos que estén en la profundidad d + 1.La búsqueda preferente por amplitud es una estrategia bastante sistemática, pues primero toma en cuenta todas las rutas de longitud 1, luego las de longitud 2, etc. En la siguiente figura se muestra el avance de la búsqueda efectuada en un sencillo árbol binario. En caso de haber solución, es seguro que ésta se encontrará mediante la búsqueda preferente por amplitud; si son varias las soluciones, este tipo de búsqueda permitirá siempre encontrar primero el estado meta más próximo. En función de los cuatro criterios, la búsqueda preferente por amplitud es muy completa y óptima, siempre y cuando el costo de ruta sea una función que no disminuya al aumentar la profundidad del nodo. (Por lo general, esta condición se cumple sólo cuando el costo de todos los operadores es el mismo.) 

 Hasta ahora las noticias sobre la búsqueda preferente por amplitud han sido alentadoras. Pero, para mostrar por qué no siempre es la estrategia de opción, considérese la cantidad de tiempo y memoria necesarias para realizar una búsqueda. Tómese en cuenta un espacio de estados hipotético, en el que la expansión de cada uno de los estados produce b nuevos estados. Se dice que el factor de ramificación de estos estados (y del árbol de búsqueda) es b. La raíz del árbol de búsqueda genera b nodos en el primer nivel, cada uno de los cuales genera b nodos más, con un total de b2 en el segundo nivel. Cada uno de éstos genera b nodos más, y producen b3 nodos en el tercer nivel, etcétera. Supóngase ahora que en la solución de este problema hay una ruta de longitud d. Así pues, la cantidad máxima de nodos expandidos antes de poder encontrar una solución es1 + b + b2 + b3 + ... + bd

Esta es la cantidad máxima, aunque la solución podrá aparecer en cualquiera de los puntos del davo nivel. En el mejor de los casos, la cantidad será menor a éste.En el caso de la búsqueda preferente por amplitud, el consumo de memoria es un problema más serio que el del tiempo de ejecución. Hay personas que tienen la paciencia de esperar 18 minutos a que se concluya una búsqueda de profundidad 6, suponiendo que están interesados en obtener la respuesta; pero no serán muchos los que dispongan de los 111 megabytes de memoria necesarios. No

Page 2: 3er Parcial Inteligencia Artificial

obstante que una espera de 31 horas para obtener la respuesta a un importante problema de profundidad 8, no es excesiva, serían verdaderamente muy pocos los que podrían tener acceso a los 11 gigabytes de memoria necesarios. Afortunadamente hay otras estrategias de búsqueda en las que hay que emplear menos memoria.En general, los problemas de búsqueda de complejidad exponencial son irresolubles, sino en las instancias más pequeñas.

Mediante la búsqueda preferente por amplitud se encuentra el estado meta más próximo a la superficie, sin embargo éste no siempre es la solución de costo uniforme se modifica la estrategia preferente por amplitud en el sentido de expandir siempre el nodo de menor costo en el margen (medido por el costo de la ruta g(n)) en vez del nodo de menor profundidad. No es difícil darse cuenta de que la búsqueda preferente por amplitud no es sino una búsqueda de costo uniforme en la queg(n) = PROFUNDIDAD(n).Si se cumplen ciertas condiciones, es seguro que la primera solución encontrada será la más barata, puesto que si hubiera una ruta más barata que fuese solución, ya se habría expandido anteriormente y ya habría sido encontrada. Esto se comprenderá más fácilmente considerando una estrategia en plena acción. Tómese el caso del problema de la determinación de ruta de la siguiente figura. El problema radica en ir de S a O, y va marcándose el costo de cada uno de los operadores. Con esta estrategia primero se expande el estado inicial, lo que produce rutas en dirección a A, E y C. Como la ruta que lleva a A es la más barata, se procede a expandirla y así generar la ruta SAO, que de hecho es una solución, si bien no es la óptima. Sin embargo, el algoritmo no admite a ésta como solución, ya que cuesta 11 y se le deja en la lista de espera, debajo de la ruta SE, cuyo costo es de 5. Es una pena crear una solución para dejarla olvidada en la lista, pero así debe ser si lo que se desea es encontrar la solución óptima, no cualquier solución. El paso siguiente es en expandir SE, generar SEO, y que ahora es la ruta más barata que queda la lista; se verifica la meta y se decide que es la solución.

Page 3: 3er Parcial Inteligencia Artificial

Mediante la búsqueda por costo uniforme se puede encontrar la solución más barata, siempre y cuando se satisfaga un requisito muy sencillo:el costo de la ruta nunca debe ir disminuyendo conforme avanzamos por la ruta. En otras palabras, es importante que:g(SUCESOR(n)) > g(n)en todos los nodos n.La restricción de que el costo de la ruta no vaya disminuyendo tiene sentido si se considera como costo de la ruta de un nodo a la suma de los costos de los operadores que configuran la ruta. Si el costo de todos los operadores no es negativo, el costo de una ruta nunca irá disminuyendo conforme se avanza, y mediante la búsqueda de costo uniforme será posible encontrar la ruta más barata sin tener que explorar el árbol de búsqueda en su totalidad. Pero si el costo de uno de los operadores es negativo, para hallar la solución óptima será necesario efectuar una búsqueda exhaustiva por todos los nodos, puesto que nunca será posible saber en qué momento una ruta (independientemente de su longitud y lo costosa que resulte) está a punto de estar en un paso con un elevado costo negativo y, en consecuencia, convertirse en la mejor de todas las rutas.

3.2 Busquedas Heuristicas

Page 4: 3er Parcial Inteligencia Artificial

Para problemas de búsqueda del camino más corto el término tiene un significado más específico. En este caso una heurística es una función matemática, h(n) definida en los nodos de un árbol de búsqueda , que sirve como una estimación del coste del camino más económico de un nodo dado hasta el nodo objetivo. Las heurísticas se usan en los algoritmos de búsqueda informada como la búsqueda egoísta. La búsqueda egoísta escogerá el nodo que tiene el valor más bajo en la función heurística. A* expandirá los nodos que tienen el valor más bajo para g(n) + h(n), donde g(n) es el coste (exacto) del camino desde el estado inicial al nodo actual. Cuando h(n) es admisible, esto es si h(n) nunca sobrestima los costes de encontrar el objetivo; A* es probablemente óptimo.Un problema clásico que usa heurísticas es el puzzle-n. Contar el número de casillas mal colocadas y encontrar la suma de la distancia Manhattan entre cada bloque y su posición al objetivo son heurísticas usadas a menudo para este problema.Efecto de las heurísticas en el rendimiento computacionalEn cualquier problema de búsqueda donde hay b opciones en cada nodo y una profundidad d al nodo objetivo, un algoritmo de búsqueda ingenuo deberá buscar potencialmente entre bd nodos antes de encontrar la solución. Las heurísticas mejoran la eficiencia de los algoritmos de búsqueda reduciendo el factor de ramificación de b a (idealmente) una constante b * .Aunque cualquier heurística admisible devolverá una respuesta óptima, una heurística que devuelve un factor de ramificación más bajo es computacionalmente más eficiente para el problema en particular. Puede demostrarse que una heurística h2(n) es mejor que otra h1(n), si h2(n) domina h1(n), esto quiere decir que h1(n) < h2(n) para todo n.Heurísticas en la Inteligencia ArtificialMuchos algoritmos en la inteligencia artificial son heurísticos por naturaleza, o usan reglas heurísticas. Un ejemplo reciente es SpamAssassin que usa una amplia variedad de reglas heurísticas para determinar cuando un correo electrónicoes spam. Cualquiera de las reglas usadas de forma independiente pueden llevar a errores de clasificación, pero cuando se unen múltiples reglas heurísticas, la solución es más robusta y creíble. Esto se llama alta credibilidad en el reconocimiento de patrones (extraído de las estadísticas en las que se basa). Cuando se usa la palabra heurística en el procesamiento del lenguaje basado en reglas, el reconocimiento de patrones o el procesamiento de imágenes, es usada para referirse a las reglas.

3.2.1 Best Firstes un algoritmo de búsqueda que explora un gráfico mediante la ampliación de la prometedora nodo más elegidos de acuerdo a una regla especifica.Judea Pearl se describe de sesiones de la búsqueda de la mejor manera la estimación de la promesa de un nodo n por una función de evaluación heurística "f (n) que, en general, puede depender de la descripción de n, la descripción de la

Page 5: 3er Parcial Inteligencia Artificial

meta, la información recogida por la búsqueda hasta a ese punto, y más importante, en cualquier conocimiento adicional sobre el dominio del problema. " [1] [2]

Algunos autores han utilizado "de sesiones de búsqueda mejor" para referirse específicamente a una búsqueda con una heurística que trata de predecir qué tan cerca el final de una ruta de acceso es a una solución, por lo que las rutas que se consideran estar más cerca de una solución se extienden primero . Este tipo específico de búsqueda se llama codicia de sesiones de la búsqueda mejor. [2]

selección eficiente de la mejor candidata para la extensión actual es típicamente implementado utilizando una cola de prioridad .El * Un algoritmo de búsqueda es un ejemplo de primer búsqueda mejor. Primer algoritmos mejor se utilizan a menudo para encontrar camino en la búsqueda combinatoria .

3.2.2 Hill Climbing En ciencias de la computación , la escalada es una optimización matemática técnica que pertenece a la familia de búsqueda local . Es un algoritmo iterativo que comienza con una solución arbitraria a un problema, a continuación, intenta encontrar una solución mejor forma incremental de cambiar un solo elemento de la solución. Si el cambio produce una mejor solución, un cambio gradual que se haga a la nueva solución, repetir hasta que no haya más mejoras se pueden encontrar.Por ejemplo, la escalada se puede aplicar a la problema del vendedor ambulante . Es fácil encontrar una solución inicial de que las visitas de todas las ciudades, pero va a ser muy pobre en comparación con la solución óptima. El algoritmo se inicia con esta solución y hace pequeñas mejoras a la misma, tales como cambiar el orden en que se visitan dos ciudades. Finalmente, una ruta mucho más corta es probable que se obtenga.escalada Hill es bueno para encontrar un óptimo local (una buena solución que se encuentra relativamente cerca de la solución inicial), pero no está garantizado para encontrar la mejor solución posible (elóptimo global ) de todas las soluciones posibles (el espacio de búsqueda ).La relativa simplicidad del algoritmo que hace que una elección popular el primer lugar entre la optimización de algoritmos. Se utiliza ampliamente en la inteligencia artificial , para llegar a un estado final de un nodo de inicio. Elección del siguiente nodo y el nodo de partida se puede variar para dar una lista de algoritmos relacionados. A pesar de algoritmos más avanzados tales como recocido simulado o búsqueda tabú puede dar mejores resultados, en algunas situaciones colina escalada funciona igual de bien. De subida de pendientes a menudo se puede producir un resultado mejor que otros algoritmos cuando la cantidad de tiempo disponible para realizar una búsqueda se limita, por ejemplo con sistemas de tiempo real.

scalada intentos Hill para maximizar (o minimizar) un objetivo de la función   , Donde   es un vector de valores continuos o discretos. En cada iteración, la escalada se modifica un solo elemento en   y determinar si el cambio mejora el

valor de   . (Tenga en cuenta que esta diferencia de gradiente de

Page 6: 3er Parcial Inteligencia Artificial

descenso métodos, que modifica todos los valores en   en cada iteración de acuerdo a la pendiente de la colina.) Con la escalada, cualquier cambio que

mejora la   es aceptada, y el proceso continúa hasta que no cambia se

pueden encontrar para mejorar el valor de   .   entonces se dice que es "óptimo local".En los espacios vectoriales discretos, cada valor posible para   puede ser visualizado como un vértice en un grafo . La escalada seguirá la gráfica de vértice

a vértice, siempre a nivel local aumentando (o disminuyendo) el valor de   , Hasta un máximo local (o mínimo local ) x m se alcanza.

3.2.3 Branch and BoundPara concretar, podemos suponer que el objetivo es encontrar el valor mínimo de una función f (x), donde x varía sobre un conjunto S de soluciones o de candidatos a trámite (el espacio de búsqueda o región factible). Tenga en cuenta que uno puede encontrar el valor máximo de f (x) por encontrar el mínimo de g (x) = - f (x). (Por ejemplo, S podría ser el conjunto de todos los horarios de viaje posible para una flota de autobuses, y f (x) podría ser el ingreso esperado para el horario x).Un procedimiento de ramificación y acotamiento requiere dos herramientas. El primero es un procedimiento de separación que, dado un conjunto S de candidatos, devuelve dos o más conjuntos más pequeños   cuya unión

cubreS. Tenga en cuenta que el mínimo de f (x) sobre S es   , Donde cada v i es el mínimo de f (x) dentro de S i. Este paso se llama ramificación, ya que su aplicación recursiva define una estructura de árbol (el árbol de búsqueda), cuyos nodos son los subconjuntos de S.Otra herramienta es un procedimiento que calcule y menores cotas superiores para el valor mínimo de f (x) en un subconjunto dado S. Este paso se llama delimitador.La idea clave del algoritmo BB es: si el límite inferior de algún nodo del árbol (conjunto de candidatos) A es mayor que el límite superior para algunos otro nodo B, entonces A puede ser descartada con seguridad de la búsqueda. Este paso se llama poda, y suele ser ejecutado por el mantenimiento de una variable global m (compartido entre todos los nodos del árbol) que registra la mínima cota

Page 7: 3er Parcial Inteligencia Artificial

superior visto entre todas las subregiones examinadas hasta ahora. Cualquier nodo menor cuya cota es mayor que m puede ser desechada.La recursividad se detiene cuando el actual candidato conjunto S se reduce a un solo elemento, o también cuando el límite superior para el grupo S coincide con el límite inferior. De cualquier manera, cualquier elemento de S será de un mínimo de la función dentro de S.subdivisión eficazLa eficiencia del método depende en gran medida el procedimiento de nodos y de división de los estimadores límite superior e inferior. Todas las cosas en igualdad de condiciones, lo mejor es elegir un método que parte de que no proporciona subconjuntos se superponen.Lo ideal sería que el procedimiento se detiene cuando todos los nodos del árbol de búsqueda están o podados o resuelto. En ese momento, todos los que no podamos subregiones tendrán sus límites superior e inferior igual al mínimo global de la función. En la práctica, el procedimiento es a menudo termina después de un tiempo dado, en ese momento, la máxima cota inferior y la mínima cota superior, entre todas las secciones no podadas, definen un rango de valores que contiene el mínimo global. Por otra parte, dentro de un límite temporal de primer orden, el algoritmo puede terminar cuando algún criterio de error, como por ejemplo (max - min) / (min + max), es inferior a un valor especificado.La eficiencia del método depende fundamentalmente de la eficacia de los algoritmos de ramificación y la selección que se utiliza; malas decisiones podría llevar a la repetición de ramificación, sin ningún tipo de poda, hasta que el sub-regiones a ser muy pequeñas. En este caso, el método se reduciría a una enumeración exhaustiva de los dominios, que a menudo demasiado grandes. No existe un algoritmo universal de delimitación que funcione para todos los problemas, y hay pocas esperanzas de que alguna vez se encuentran, por lo que el paradigma general debe aplicarse por separado para cada aplicación, con las ramas y saltando algoritmos que están especialmente diseñados para ello.Poder y métodos vinculados se pueden clasificar de acuerdo a los métodos de delimitación y de acuerdo con las formas de creación o la inspección de los nodos del árbol de búsqueda.La estrategia de diseño de ramificación y acotamiento es muy similar al retroceso en el que un árbol de espacio de estado se utiliza para resolver un problema. Las diferencias son que el método de ramificación y acotamiento (1) no nos limita a una determinada forma de atravesar el árbol y (2) sólo se utiliza para problemas de optimización.

3.3MétodosLa Inteligencia Artificial es hoy día no sólo objeto de investigación sino que se ha convertido en parte integrante de los planes de estudio de las carreras de Ingeniería de Informática. Y éste es el público al que está dirigido este libro, cuyo objetivo consiste en exponer los aspectos básicos de estas tecnologías de una forma clara, así como proporcionar la bibliografía necesaria para ampliar los temas. El contenido tratado está dividido en seis partes, comenzando con una sección donde se analizan los diferentes paradigmas en los que se basa la IA en la actualidad, para continuar analizando los aspectos clásicos de representación

Page 8: 3er Parcial Inteligencia Artificial

de conocimiento y técnicas clásicas de razonamiento y de búsqueda. También se analizan procesos complejos para solver problemas, aspectos relacionados con el aprendizaje y la minería de datos.

3.3.1 Medios y FinesLa finalidad de la inteligencia artificial consiste en crear teorías y modelos que muestren la organización y funcionamiento de la inteligencia. Actualmente, el mayor esfuerzo en la búsqueda de la inteligencia artificial se centra en el desarrollo de sistemas de procesamientos de datos que sean capaces de imitar a la inteligencia humana, realizando tareas que requieran aprendizaje, solución de problemas y decisiones. A veces llamada inteligencia de máquina, la inteligencia artificial o AI (Artificial Intelligence) cubre una vasta gama de teorías y prácticas.1.1 La base de la inteligencia artificialLa inteligencia artificial se basa en dos áreas de estudio: el cuerpo humano y el ordenador electrónico. Puesto que la meta es copiar la inteligencia humana, es necesario entenderla. Sin embargo, a pesar de todos los progresos en Neurología y Psicología, la inteligencia del hombre se conoce poco, exceptuando sus manifestaciones externas. Muchos estudiosos de la inteligencia artificial se han vuelto – para obtener su modelo de inteligencia – hacia el estudio de la Psicología cognoscitiva, que aborda la forma de percibir y pensar de los seres humanos.. Después comprueban sus teorías programando los ordenadores para simular los procesos cognoscitivos en el modelo. Otros investigadores intentan obtener teorías generales de la inteligencia que sean aplicables a cualquier sistema de inteligencia y no solo al del ser humano.3.3.2. Satisfacción de condicionesx Clasificaci´on seg´un el tipo de restricciones:u Restricciones de obligaci´on (hard constraints).u Restricciones de preferencia (soft constraints).x Clasificaci´on seg´un los dominios:u Dominios discretos (finitos o infinitos).u Dominios continuos.x Clasificaci´on seg´un el n´umero de variables implicadas en las restricciones:u Restricciones binarias.u Restricciones m´ultiples.Un problema de satisfacci´on de restricciones (PSR) viene definido porlos siguientes elementos:u Un conjunto finito de variables X1, . . . ,Xnu Un conjunto finito de dominios Di asociados a cada variable Xi, especificando losposibles valores que puede tomaru Un conjunto finito de restricciones C1, . . . ,Cm, que definen una serie de propiedadesque deben verificar los valores asignados a las variablesx Una soluci´on al problema es una asignaci´on de valores a las variables{X1 = v1, . . . ,Xn = vn} tal que vi 2 Di y se verifican las restriccionesx Esta formulaci´on permite una representaci´on simple del problema, y eluso de heur´ısticas de prop´osito general, independientes del problema

Page 9: 3er Parcial Inteligencia Artificial

4.1 DEFINICION DE CONOCIMIENTO: conocimiento es una capacidad humana y no una propiedad de un objeto como pueda ser un libro. Su transmisión implica un proceso intelectual de enseñanza y aprendizaje. Transmitir una información es fácil, mucho más que transmitir conocimiento. Esto implica que cuando hablamos de gestionar conocimiento, queremos decir que ayudamos a personas a realizar esa actividad.El conocimiento tiene estructura y es elaborado, implica la existencia de redes de ricas relaciones semánticas entre entidades abstractas o materiales. Una simple base de datos, por muchos registros que contenga, no constituye per se conocimiento.El conocimiento es siempre esclavo de un contexto en la medida en que en el mundo real difícilmente puede existir completamente autocontenido. Así, para su transmisión es necesario que el emisor (maestro) conozca el contexto o modelo del mundo del receptor (aprendiz).

4.2 TAXONOMIA DEL CONOCIMIENTOa Taxonomía de objetivos de la educación, conocida también como taxonomía de Bloom, es una clasificación de los diferentes objetivos y habilidades que los educadores pueden proponer a sus estudiantes. La idea surgió en una reunión de la Asociación norteamericana de psicología en 1948, con el fin de facilitar la comunicación e intercambio de materiales entre examinadores. La comisión encargada fue liderada por Benjamin Bloom, psicólogo de la educación de la Universidad de Chicago. El esquema resultante fue propuesto por este investigador en 1956 e incluía tres "dominios": cognitivo, afectivo y psicomotor, aunque sólo los dos primeros fueron desarrollados inicialmente.La taxonomía de Bloom es jerárquica, es decir, asume que el aprendizaje a niveles superiores depende de la adquisición del conocimiento y habilidades de ciertos niveles inferiores. Al mismo tiempo, muestra una visión global del proceso educativo, promoviendo una forma de educación con un horizonte holístico.Hay tres dimensiones en la taxonomía de objetivos de la educación propuesta por Benjamin Bloom:Dimensión afectivaDimensión psicomotoraDimensión cognitivaDimensión afectivaEl modo como la gente reacciona emocionalmente, su habilidad para sentir el dolor o la alegría de otro ser viviente. Los objetivos afectivos apuntan típicamente a la conciencia y crecimiento en actitud, emoción y sentimientos.Hay cinco niveles en el dominio afectivo. Yendo de los procesos de orden inferiores a los superiores, son:Recepción - El nivel más bajo; el estudiante presta atención en forma pasiva. Sin este nivel no puede haber aprendizaje.Respuesta - El estudiante participa activamente en el proceso de aprendizaje, no sólo atiende a estímulos, el estudiante también reacciona de algún modo.Valoración - El estudiante asigna un valor a un objeto, fenómeno a o información.

Page 10: 3er Parcial Inteligencia Artificial

Organización - Los estudiantes pueden agrupar diferentes valores, informaciones e ideas y acomodarlas dentro de su propio esquema; comparando, relacionando y elaborando lo que han aprendido.Caracterización - El estudiante cuenta con un valor particular o creencia que ahora ejerce influencia en su comportamiento de modo que se torna una característica.Dimensión psicomotoraLa pericia para manipular físicamente una herramienta o instrumento como la mano o un martillo. Los objetivos psicomotores generalmente apuntan en el cambio desarrollado en la conducta o habilidades.Comprende los siguientes niveles: - Percepción - Disposición - Mecanismo - Respuesta compleja - Adaptacion - CreacionDimensión cognitivaEs la habilidad para pensar las cosas. Los objetivos cognitivos giran en torno del conocimiento y la comprensión de cualquier tema dado.

4.2.1 CERTIDUMBRE

l describir como funcionan los sistemas expertos y dejar algunos ejemplos a la vista, es claro que ellos operan bajo el paradigma que cualquier conclusión posible a que lleva el sistema ya ha sido pensada previamente por un humano. Sin embargo, hay muchas situaciones que enfrenta la inteligencia humana que resultan totalmente nuevas, ya sea pasara la persona que las afronta o por que resultan de circunstancias a las que nadie se había tenido que enfrentar antes. Cuando se presenta esto, es obvio que no existen respuestas preconcebidas, ni caminos ya andados, lo que representa el problema de tener que tomar decisiones ante la incertidumbre. Por ejemplo, muchos inversionistas se enfrentan ante negocios que no conocen plenamente y de los cuales no prevén todas las ramificaciones posibles. En tiempos de crisis como los actuales, ante la incertidumbre optan por no invertir. Sin embargo, un sistema robotizado, o un autómata simple no puede simplemente paralizarse en una situación de toma de decisiones. Incluso en el ámbito humano, el no tomar una decisión se puede convertir en la peor acción posible. Los defensores de las teorías de la sociedad del conocimiento hacen hincapié en la adquisición de la mayor cantidad de información posible para idear el mejor plan de acción y seguirlo concienzudamente. Sin embargo, en la realidad no siempre es posible contar con toda la información posible, y no todo plan cubre todas las alternativas que puedan darse. Así pues, si se toman decisiones ante información incompleta se pueden cometer errores. El hecho, claro esta, es que aun en medio de la incertidumbre, alguna decisiones pueden ser acertadas, lo cual lleva a una cadena de eventos resultantes de estas decisiones que pueden ser al final exitosos o totalmente desastrosos. Ello plantea dos realidades posibles ante la incertidumbre: el éxito o el fracaso, y las decisiones tomadas en un ambiente incierto son vistas como “decisiones de riesgo”. En el mundo de los negocios, las inversiones en circunstancias que pueden llevar al éxito o al fracaso se conocen como inversiones de riesgo. 

Page 11: 3er Parcial Inteligencia Artificial

A pesar del riesgo y la incertidumbre, el ser humano ha aprendido a sopesar esto frente a las recompensas del éxito. Si no fuera así, nunca se hubiera descubierto América, nunca se hubiera dividido el átomo, e incluso todavía viviríamos en cuevas, por el temor a los riesgos a aventurarnos. Para afrontar situaciones ante las cuales la respuesta a que se llegue no sea necesariamente la más correcta se han creado sistemas que operan con márgenes de error. Estos sistemas son los basados en redes neuronales y en lógica difusa. Aunque son operativos, siempre cabe la posibilidad de una respuesta imperfecta. Los humanos, al igual que los sistemas nombrados, operamos bajo la perspectiva del riesgo calculando la probabilidad del éxito o del fracaso de acuerdo a las decisiones tomadas previamente. Un caso clásico es el juego del Black Jack, en la cual dos jugadores reciben cartas las cuales deben sumar 21 a lo mucho. Las cartas sin numero valen diez, y las demás el numero indicado. En el programa que se indica a continuación, un jugador se enfrenta a la computadora, optando por recibir o no más cartas, sin tener idea exacta si eso lo llevara a ganar o no el juego. Mientras que la computadora siempre optara por recibir las cartas que le toquen. 

4.2.2 EVOLUCIONLa Inteligencia Artificial "nació" en 1943 cuando Warren McCulloch y Walter Pitts propusieron un modelo de neurona del cerebro humano y animal.Estas neuronas nerviosas abstractas proporcionaron una representación simbólica de la actividad cerebral.Más adelante, Norbert Wiener elaboró estas ideas junto con otras, dentro del mismo campo, que se llamó "cibernética"; de aquí nacería, sobre los años 50, la Inteligencia Artificial.Los primeros investigadores de esta innovadora ciencia, tomaron como base la neurona formalizada de McCulloch y postulaban que:"El cerebro es un solucionador inteligente de problemas, de modo que imitemos al cerebro".Pero si consideramos la enorme complejidad del mismo esto es ya prácticamente imposible, ni que mencionar que el hardware de la época ni el softwareestaban a la altura para realizar semejantes proyectos.Se comenzó a considerar el pensamiento humano como una coordinación de tareas simples relacionadas entre sí mediante símbolos. Se llegaría a la realización de lo que ellos consideraban como los fundamentos de la solución inteligente de problemas, pero lo difícil estaba todavía sin empezar, unir entre sí estas actividades simples.Es en los años 50 cuando se logra realizar un sistema que tuvo cierto éxito, se llamó el Perceptrón de Rossenblatt. Éste era un sistema visual de reconocimiento de patrones en el cual se asociaron esfuerzos para que se pudieran resolver una gama amplia de problemas, pero estas energías se diluyeron enseguida.Fue en los años 60 cuando Alan Newell y Herbert Simon, que trabajando la demostración de teoremas y el ajedrez por ordenador logran crear

Page 12: 3er Parcial Inteligencia Artificial

unprograma llamado GPS (General Problem Solver: solucionador general de problemas). Éste era un sistema en el que el usuario definía un entorno enfunción de una serie de objetos y los operadores que se podían aplicar sobre ellos. Este programa era capaz de trabajar con las torres de Hanoi, así como con criptoaritmética y otros problemas similares, operando, claro está, con microcosmos formalizados que representaban los parámetros dentro de los cuales se podían resolver problemas. Lo que no podía hacer el GPS era resolver problemas ni del mundo real, ni médicos ni tomar decisiones importantes. El GPS manejaba reglas heurísticas (aprender a partir de sus propios descubrimientos) que la conducían hasta el destino deseado mediante el método del ensayo y el error. En los años 70, un equipo de investigadores dirigido por Edward Feigenbaum comenzó a elaborar un proyecto para resolver problemas de la vidacotidiana o que se centrara, al menos, en problemas más concretos. Así es como nació el sistema experto.El primer sistema experto fue el denominado Dendral, un intérprete de espectrograma de masa construido en 1967, pero el más influyente resultaría ser el Mycin de 1974. El Mycin era capaz de diagnosticar trastornos en la sangre y recetar la correspondiente medicación, todo un logro en aquella época que incluso fueron utilizados en hospitales (como el Puff, variante de Mycin de uso común en el Pacific Medical Center de San Francisco, EEUU).Ya en los años 80, se desarrollaron lenguajes especiales para utilizar con la Inteligencia Artificial, tales como el LISP o el PROLOG. Es en esta época cuando se desarrollan sistemas expertos más refinados, como por el ejemplo el EURISKO. Este programa perfecciona su propio cuerpo de reglas heurísticas automáticamente, por inducción.

4.2.3 PRECISIONEl sorprendente avance tecnológico que la humanidad ha experimentado en los últimos dos siglos encuentra su expresión mas acabada y complicada en la invención de las computadoras, las "máquinas que piensan" como las llama McCorduck (1979). La rapidez y la asombrosa complejidad de la computadora ya no son un secreto para nadie, sin embargo la verdad sobre sus más profundas implicaciones es conocida sólo por un número muy limitado de especialistas.La Inteligencia Artificial es una ciencia que trata de la comprensión de la inteligencia y del diseño de máquinas inteligentes, es decir, el estudio y la simulación de las actividades intelectuales del hombre (manipulación, razonamiento, percepción, aprendizaje, creación). La IA es un campo de estudio que busca explicar y emular el comportamiento inteligente en términos de procesos computacionales.Algunos expertos en computación han sostenido, desde hace algún tiempo, que las computadoras serán poseedoras de capacidades y habilidades similares a las de los seres humanos, y que, en el futuro próximo, las veremos igualarnos y superarnos en muchas de las actividades intelectuales tradicionalmente reservadas a los seres humanos.

Page 13: 3er Parcial Inteligencia Artificial

Un sistema experto puede comparase como un conjunto de sistemas que imitan el pensamiento de un experto, para resolver problemas de un terreno particular de aplicación.Una de las características principales de los sistemas expertos es que están basados en reglas, es decir, contienen unos conocimientos predefinidos que se utilizan para tomar todas las decisiones.Los robot son unas máquinas controladas por ordenador y programada para moverse, manipular objetos y realzar trabajos a la vez que interacciona con su entorno. Los robots son capaces de realizar tareas repetitivas de forma más rápida, barata y precisa que los seres humanos.La cibernética se desarrolló como investigación de las técnicas por las cuales la información se transforma en la actuación deseada. Esta ciencia surgió de los problemas planteados durante la Segunda Guerra Mundial a la hora de desarrollar los denominados cerebros electrónicos y los mecanismos de control automático para los equipos militares como los visores de bombardeo.

4.2.4 VOLUMENCon el término volumen se puede hacer referencia a varias y diferentes cuestiones.En primer lugar volumen puede ser elespacio que ocupa un cuerpo en determinado lugar, es decir, la cantidad de espacio que ocupa su materia y que por la condición de impenetrables de los cuerpos no podrá ser ocupada por otro cuerpo a la vez. Pero además volumen es la propiedad intrínseca de esa materia que nos permitirá distinguir un tipo de materia de otra, una sustancia de otra, ya que todas ostentan un volumen específico.En tanto y sin tener nada que ver con lo que mencionábamos en el párrafo anterior, el volumen es lapercepción subjetiva de una persona tiene sobre cualquier sonido que escucha. La intensidad de los sonidos estará determinada por la energía o potencia acústica que atraviesa por segundo una superficie, cuanto mayor sea la potencia de un sonido, mayor será el volumen que experimentará ese sonido por supuesto.La percepción de cualquier volumen sigue siempre una escala logarítmica que se mide en decibelios y estará determinado por el nivel de potencia acústica que ostente cada sonido en particular.Y finalmente el término volumen posee una especial importancia en el ámbito literario o en elvocabulario de aquellas personas afectas a la colección y lectura de libros, ya que con dicho término se designa al cuerpo material de un libro encuadernado, ya sea que contiene a la obra completa o bien uno o algunos tomos que conforman la misma.

4.2.5 REPRESENTACIONEn organismos biológicos se estima que el conocimiento es almacenado como estructuras complejas de neuronas interconectadas.En las computadoras, el conocimiento también se almacena como estructuras simbólicas, pero en forma de estados eléctricos y magnéticos.En forma natural, el ser humano representa el conocimiento simbólicamente: imágenes, lenguaje hablado y lenguaje escrito. Adicionalmente, ha desarrollado otros sistemas de representación del conocimiento: literal, numérico, estadístico, estocástico, lógico.

Page 14: 3er Parcial Inteligencia Artificial

La ingeniería cognoscitiva ha adaptado diversos sistemas de representación del conocimiento que, implantados en un computador, se aproximan mucho a los modelos elaborados por la psicología cognoscitiva para el cerebro humano. Entre los principales se tienen:Lógica Simbólica Formal:- Lógica proposicional- Lógica de predicados.- Reglas de producción.Formas Estructuradas:- Redes asociativas.- Estructuras marco.- Representación orientada a objetos.Lógica ProposicionalLa lógica proposicional es la más antigua y simple de las formas de lógica. Utilizando una representación primitiva del lenguaje, permite representar y manipular aserciones sobre el mundo que nos rodea. La lógica proposicional permite el razonamiento, a través de un mecanismo que primero evalúa sentencias simples y luego sentencias complejas, formadas mediante el uso de conectivos proposicionales, por ejemplo Y (AND), O (OR). Este mecanismo determina la veracidad de una sentencia compleja, analizando los valores de veracidad asignados a las sentencias simples que la conforman.

4.2.6 MONOTONICIDADUna lógica no monotónica, o lógica no monótona, es un sistema lógico cuya relación de consecuencia lógica es no monotónica. La mayoría de los sistemas lógicos tienen una relación de consecuencia monotónica, lo que quiere decir que el agregar una fórmula a una teoría nunca se produce una reducción de su conjunto de consecuencias. Intuitivamente, la monotonicidad indica que el agregar nuevos conocimientos no se reduce el conjunto de las cosas conocidas. Simbólicamente:Si  , entonces Donde A es una fórmula cualquiera y Γ y Δ son conjuntos de fórmulas cualesquiera.Una lógica monotónica no puede manejar varios tipos de razonamiento tales como el razonamiento por defecto (los hechos pueden ser conocidos únicamente por la incertidumbre o carencia de evidencia de lo contrario), el razonamiento abductivo (los hechos sólo se deducen en calidad de explicaciones probables), el razonamiento acerca del conocimiento (la ignorancia de un hecho debe ser retractada cuando el hecho sea conocido), y la revisión de creencias (nuevo conocimiento puede contradecir creencias anteriores, obligando a revisarlas). Estas limitaciones son un inconveniente en gran cantidad de problemas que se presentan en inteligencia artificial, que tienen un carácter no monótono.

4.3 MODELOSPrimero habría que definirse ¿cómo piensan los humanos?. Lo hacen medianteIntrospecciónExperimentos psicológicosGPS (General Problem Solver), de Newell y Simon (1961) vs. Wang (1960).La ciencia cognoscitiva usa modelos de IA y experimentos psicológicos.

Page 15: 3er Parcial Inteligencia Artificial

Aportaciones:Visión, lenguaje natural, aprendizaje

Sistemas que piensan como humanos

Sistemas que piensan racionalmente (idealmente)

Sistemas que actúan como humanos

Sistemas que actúan racionalmente (idealmente)

Pensamiento

Comportamiento(actuación)

Humano Racional

1

2 3

4

4.3.1 CALCULO DE PREDICADOSAntes de ver esta sección es recomendable haber leído las secciomnes 1.5 Algebra Declarativa y 1.8 Evaluacion de Expresiones donde se presentan las mismas ideas pero para cálculo de proposiciones.En cálculo de predicados tenemos elementos más simples para formar las expresiones atómicas, a diferencia de una proposición simple donde su valor es verdadero o falso de acuerdo a una interpretación, en cálculo de predicados el valor de verdad depende de los componentes que forman el predicado. Por ejemplo: Juan es padre de Pedro es una expresión en cálculo de predicados, que en general podría ser: x es padre de y, o simplemente p(x,y).En otras palabras tenemos aquí una proposición abierta que depende de dos variables, y que por supuesto el valor de verdad depende de los valores que le demos a las varibles, porque por ejemplo: Luis es padre de Agustín puede tener un valor de verdad diferente al anterior.En general podemos decir que un predicado puede tener una o más variables y que las variables pueden tomar valores de un conjunto específico llamado DOMINIO.Así por ejemplo las dos expresiones mencionadas anteriormente son de la forma p(x,y) donde el predicado p representa “es padre de” y el domino es el conjunto de las personas.Analiza cuáles son los predicados y las variables en los siguientes ejemplos:El libro es azulArmando y Eduardo son hermanos

Page 16: 3er Parcial Inteligencia Artificial

Jesús es alumno del tecnológicoEl concierto de Aranjuez es una composición de Joaquín RodrigoElías tiene más años que René en el trabajoEsteban compra mercancía los lunes en Almacenes A.Solución:AZ(x), AZ es el predicado: es de color azul, en el dominio de objetos.H(x,y), H es el predicado: es hermano de, el dominio el conjunto de las personas.T(x), T es el predicado: es alumno del Tecnológico, el dominio el conjunto de los estudiantes.R(x), r es el predicado: es composición de Joaquín Rodrigo, el dominio de las obras musicales.T(x,y), T es el predicado: tiene menos tiempo trabajando que, el dominio de las personasA(x,y), A es el predicado: comprar en los almacenes cierto día, el dominio para el primer argumento es el de las personas, el dominio del segundo son los días de la semana.Podemos observar que la definición del predicado es arbitraria y que para un mismo ejemplo podría variar la estrustura, por ejemplo en el predicado: El libro es azul, podríamos considerar como fórmula propuesta M(x,y), donde M es el predicado: es de color, y el dominio para la primera variable es el conjunto de los objetos y para la segunda el de los colores.También observamos que el dominio puede ajustarse según las necesidades, por ejemplo, en el tercer ejemplo en T(x), x podría ser el conjunto de todos los alumnos de un país,o de una ciudad o de una disciplina.1.4.1 Definición Una fórmula en lógica de predicados es una expresión que se puede obtener mediante alguna de las formas siguientes: i) <m> p(x1, x2, … ,xn) </m> donde p es un símbolo que representa un predicado y x1, x2, … ,xn son símbolos de variable.ii) (¬ F) donde F es una fórmula de lógica de predicados.iii) (F <OP> G) donde F y G son fórmulas de lógica de predicados y <OP> es cualquiera de los operadores ^, v, →, ↔iv) ( x) F, donde F es un fórmula en lógica de predicados.∀v) ( x) F, donde F es un fórmula en lógica de predicados.∃

4.3.2 REGLAS DE PRODUCCIONUn sistema de producción proporciona una estructura que facilita la descripción y la ejecución de un proceso de búsqueda. Un sistema de producción consiste de:

Un conjunto de facilidades para la definición de reglas.

Mecanismos para acceder a una o más bases de conocimientos y datos.

Page 17: 3er Parcial Inteligencia Artificial

Una estrategia de control que especifica el orden en el que las reglas son procesadas, y la forma de resolver los conflictos que pueden aparecercuando varias reglas coinciden simultáneamente.

Un mecanismo que se encarga de ir aplicando las reglas.Dentro de esta definición general de sistema de producción, se incluyen:

Lenguajes básicos para sistemas de producción (LISP, CLIPS, PROLOG). También se los conoce como lenguajes de Inteligencia Artificial.

Sistemas híbridos y sistemas vacíos (shells) para producción de sistemas basados en conocimientos (VP-Expert, Expert Teach, PersonalConsultant, Intelligence Compiler, EXSYS).

Arquitecturas generales para resolución de problemas (máquinas LISP, máquinas PROLOG).Características de los Sistemas de ProducciónUn sistema de producción, al igual que los problemas, puede ser descrito por un conjunto de características que permiten visualizar la mejor forma en que puede ser implementado.Un sistema de producción se dice que es monotónico si la aplicación de un regla nunca evita que más tarde se pueda aplicar otra regla que también pudo ser aplicada al momento en que la primera fue seleccionada.Un sistema de producción es parcialmente conmutativo si existe un conjunto de reglas que al aplicarse en una secuencia particular transforma un estado A en otro B, y si con la aplicación de cualquier permutación posible de dichas reglas se puede lograr el mismo resultado.Un sistema de producción es conmutativo, si es monotónico y parcialmente conmutativo. SISTEMA DE PRODUCCIÓN MONOTÓNICO NO-MONOTÓNICO

PARCIALMENTE CONMUTATIVO  Demostración de Teoremas

Navegación Robótica

PARCIALMENTE NO CONMUTATIVO  Síntesis Química

Juego de Ajedrez

 4.3.3 REDES SEMANTICAS

DEFINICIÓN DE RED SEMÁNTICA1. Una Red Semantica es un conjunto de Nodos y Arcos

2. Una Red Semantica es una representación grafica del conocimiento.

Page 18: 3er Parcial Inteligencia Artificial

3. Una Red Semantica es una representación grafica del conocimiento en la que existe una jerarquia de Nodos.Definición de  Nodo.Un Nodo es identificado por un objeto.Nodo = objetoDonde un Objeto puede ser representado por:1. Personas    2. Animales    3. Eventos     5. Acciones     6. Conceptos   7. Atributos o caracteristicas que identifican a un objeto.Nota.Los Nodos de un Red Semantica estan unidos por arcos, los cuales indican la relacion que existe entre ellos.Existen ciertos tipos de Arcos tipicos entre los cuales estan. Es-un:  el cual usa para identificar que un cierto pertenece a una clase mayor de objeto.

                Tiene-un:  este tipo de arcos se utiliza para identificar que un cierto nodo tiene o pase una cierta caracteristicas o atributo o propiedad.

EjemploPropiedades de las Redes Semanticas Las redes Semanticas posen la propiedad de la Herencia; en la que unos nodos heredaron las propiedades o atributos de Nodos de una clase mayor. Así por ejemplo en la siguiente red semántica:

Page 19: 3er Parcial Inteligencia Artificial

Nota:A traves de la caracteristica de la herencia, las Redes Semanticas tienen la capacidad de inferir conocimiento.Ejemplo de Redes Smanticas.

Considera la siguiente Red Semantica acerca de SAM y su familia.1. Necesita Sam alimentoSi, por la herencia que recibe de los seres humanos.2. Trabaja SAM para AJAXSi por caracteristica o por propiedades de herencia ya que CMEpertenece AJAX.Nota.En Redes Semánticas las inferencias de información o respuestas o preguntas se hacen en base a las propiedades de herencia que existen entre los Nodos.Ejemplo.Dado el siguiente conocimiento construya la correspondiente Red Semántica.- Los Jorobados son personas pequeñas.

Page 20: 3er Parcial Inteligencia Artificial

- Bilba es un jorobado.- Los jorobados tienen dedos gordos.- Bilbo posee un anillo magico.- El anillo fue encontrado en una cueva.- Los jorobados son personas miticas y las personas miticas son estudiadas por los estudiantes de literatura.

4.3.4. MARCOSLos marcos (frames), también conocidos como «estructuras» o «unidades» , introducidos por Minsky (1974) [66], son una forma de expresar las redes semánticas textualmente, pero además pueden incluir representaciones de conocimiento procedimental. En efecto, cada nodo correspondiente a un objeto o a una clase se convierte en un marco, que consta de una primera línea con el nombre del marco y una sucesión de líneas, llamadas «ranuras» (slots) con la sintaxis:   <ranura> ::= <nombre de relación>: <objeto relacionado> |                  <nombre de relación>: <clase relacionada> |                  <nombre de propiedad>: <valor de la propiedad> |                  <nombre de propiedad>: (excep) <valor de la propiedad> |                  <nombre de propiedad>: if_needed <procedimiento> |                  <nombre de propiedad>: if_added <procedimiento>     <nombre de relación> ::= es_un |                              tipo_de |                              <relacion específica de la aplicación>Las dos últimas líneas de la definición de «<ranura» son las que confieren a los sistemas basados en marcos esa posibilidad de mezclar conocimiento procedimental con el declarativo. «<if_needed» significa que si se necesita el valor de la propiedad se active un procedimiento para calcularla; «<if_added» , que si en el curso del proceso se rellena o se modifica ese valor se active un procedimiento.

Page 21: 3er Parcial Inteligencia Artificial

A esta adición de procedimientos a un marco se le llama adosamiento procedimental (procedural attachment).También es fácil introducir en la representación metaconocimiento, es decir, conocimiento sobre el marco mismo. Como en las tres primeras ranuras de este ejemplo:marco_avestruz    descripcion: caracterización básica de un avestruz    autor      : Prof. Ornito    fecha      : 31/12/2000    tipo_de    : ave    patas      : largas    vuela      : (exc) no_puede

4.3.5 SCRIPTSUn script (cuya traducción literal es guión) o archivo de órdenes o archivo de procesamiento por lotes es un programa usualmente simple, que por lo regular se almacena en un archivo de texto plano. Los script son casi siempreinterpretados, pero no todo programa interpretado es considerado un script. El uso habitual de los scripts es realizar diversas tareas como combinar componentes, interactuar con el sistema operativo o con el usuario. Por este uso es frecuente que los shells sean a la vez intérpretes de este tipo de programas.