Manual del estudiante de Ingeniería en Sistemas de UTN/Inteligencia Artificial/Preguntas de evaluación

De Wikilibros, la colección de libros de texto de contenido libre.

Preguntas de evaluación[editar]

Agentes inteligentes[editar]

¿Cuál es la diferencia entre agente y programa?

Un agente es cualquier dispositivo que puede ser observado como percibiendo su ambiente a través de sensores y actuando sobre el ambiente a través de actuadores. El programa del agente es una función que implementa la relación que establece el agente entre percepciones y acciones. Se asumirá que este programa será ejecutado sobre algún tipo de dispositivo computacional, al cual llamaremos la arquitectura del agente, de manera que:

agente = arquitectura + programa

Russell incluye entre sus ejemplos de agente algunos programas y aplicaciones; éstos podrían considerarse agentes en un ambiente particular, que sería la arquitectura donde son ejecutados, y sus percepciones serían las entradas, y sus acciones serían devolver la salida correspondiente.


Describa ambientes determinísticos y no determinísticos, accesibles y no accesibles, estáticos y dinámicos. De un ejemplo de cada uno.


...

...

...

...


Describa un agente basado en metas. Describa de qué manera el agente toma la decisión de la acción a emprender. Identifique las características del ambiente donde un agente de este tipo puede desenvolverse.

Un agente basado en metas, a diferencia de los agentes basados en modelos, además de tener un modelo del mundo y un estado actual del mundo, cuenta con algún tipo de información sobre su meta, que describa las situaciones que son deseables. La acción a emprender no deriva directamente de la percepción actual, sino que el agente la elige (por medio de búsqueda o planificación, por ejemplo) de manera de obtener a través de ella un estado deseable, es decir, que lo acerque a conseguir su meta, a partir del estado actual del mundo, determinado a través de la percepción o secuencia de percepciones hasta el momento de la decisión.


Si un agente basado en metas tiene capacidad de aprendizaje, ¿puede utilizar reglas de producción para representar su conocimiento?

Sí, un de los paradigmas de la representación del conocimiento es la representación basada en reglas de producción. Si se entiende por capacidad de aprendizaje a la capacidad del agente de modificar cada uno de sus componentes para que actúe en consonancia con la información que se recibe, y así mejorar su nivel de actuación, entonces es posible realizar esto basándose en reglas de producción.


¿Cuál es la diferencia entre meta y utilidad del agente? Un agente basado en metas, ¿puede calcular su utilidad? Si no es así, ¿quién la calcula?

La meta es un estado deseable, un objetivo, que podría alcanzarse de varias formas. La utilidad es una función de la forma de alcanzar la meta, que representa el nivel de felicidad que se alcanza llegando a la meta de esa forma. Un agente basado en metas no puede calcular su utilidad, pero si tiene capacidad de aprendizaje puede recibir críticas del medio que le indiquen el resultado en cuanto a utilidad de sus acciones.


Un agente sin autonomía, ¿podría trabajar en un ambiente inaccesible? Justifique.

Si se entiende autonomía como la capacidad de modificar el comportamiento basándose en sus propias percepciones, un agente no podría tener autonomía en un ambiente inaccesible, y sólo podría basarse en el conocimiento inicial que le proporcione su diseñador.


Un ambiente inaccesible, ¿puede ser determinístico?

Sí.


Describa la estructura de un agente con manejo de objetivos. ¿Cómo y donde emplearía este agente un algoritmo de búsqueda?

Los componentes de un agente basado en objetivos son:

  • Un modelo del mundo que le permita determinar qué implican sus percepciones y qué efectos causarán sus acciones.
  • Un objetivo al cual se pretenda llegar desde el estado actual del mundo.

El agente:

  1. Percibe, y a partir de la nueva percepción determina o infiere el estado actual del mundo.
  2. Determina la secuencia de acciones a realizar (esto se puede realizar mediante búsqueda) de manera de obtener a través un estado objetivo a partir del estado actual del mundo que determinó en el paso anterior. De esa secuencia, toma la primera acción y la realiza por medio de los actuadores.


Resolución de problemas mediante búsqueda[editar]

En la función de búsqueda genérica, ¿se debe verificar si es aplicable un operador antes de generar los sucesores?

La función sucesores de un nodo devuelve todos los pares <acción, sucesor> posibles, donde cada acción es una de las acciones aplicables correspondientes al estado del nodo, y cada sucesor es un nodo cuyo estado será el resultado de aplicar la acción correspondiente al estado del nodo. En conclusión, esa verificación -para el caso en el cual las acciones estén descritas por extensión- es parte del proceso de generación de sucesores.


¿Qué es y cómo se representa un nodo de un árbol de búsqueda? ¿Qué significa expandir un nodo y en qué etapa de la búsqueda se realiza esta operación?

Un nodo de búsqueda es una estructura de datos que se utiliza en los algoritmos de búsqueda de soluciones, que se puede representar con todos o algunos de los siguientes atributos:

  • Estado: el estado, del espacio de estados, que corresponde al nodo (este atributo es imprescindible).
  • Nodo padre: el nodo del árbol de búsqueda que ha generado ese nodo.
  • Acción: la acción que, aplicada al nodo padre, generó el nodo.
  • Costo del camino: el costo del camino desde el nodo inicial hasta el nodo.
  • Profundidad: el número de enlaces en el camino del árbol de búsqueda desde el nodo inicial hasta el nodo.


La búsqueda bidireccional puede ser aplicada a cualquier problema siempre que se seleccionen los operadores y estrategia apropiados. ¿Considera esta afirmación correcta? Justifique describiendo ventajas, desventajas y limitaciones.

La búsqueda bidireccional puede ser aplicada si:

  • El objetivo puede ser descrito como un estado o un conjunto finito de estados (si el conjunto es infinito o demasiado grande, de todas maneras no habrá ninguna forma general de hacerla eficiente).
  • Las acciones tienen inversa.
  • Una de las estrategias (una de las dos direcciones) conserva en memoria el árbol de búsqueda, ya que los nodos generados por la otra dirección deberán compararse con los de la frontera de la primera para determinar si el estado correspondiente ya se encuentra allí.

Ventajas[editar]

  • Complejidad temporal de , siendo:
    • : factor de ramificación de la búsqueda en dirección 1.
    • : factor de ramificación de la búsqueda en dirección 2.
    • : profundidad de la solución.

Desventajas[editar]

  • El factor de ramificación de la búsqueda inversa podría ser mucho mayor que el de la directa.
  • Complejidad espacial de , siendo:
    • : factor de ramificación de la búsqueda de la que se guarda el árbol en memoria.
  • Puede ser muy difícil o imposible encontrar una función inversa.


¿Cuáles son las diferencias entre el método de búsqueda A* y el método de búsqueda en profundidad iterativo, en cuanto a las medidas de complejidad?

Por empezar, los parámetros que pueden usarse como referencia para calcular la complejidad son diferentes:

  • Para la búsqueda A*, la complejidad temporal para el caso peor () es la misma que la complejidad de la búsqueda de costo uniforme, es decir, igual a la cantidad máxima de nodos generados hasta un costo de (costo óptimo), es decir, hasta una profundidad de , siendo el costo más pequeño aplicable a una acción. Resolviendo la serie, la complejidad resulta de . La complejidad espacial será también de , ya que deben almacenarse al menos todos los nodos de la frontera.
  • Para la búsqueda en profundidad iterativa, la complejidad temporal para el caso peor es igual a la cantidad máxima de nodos generados hasta una profundidad (profundidad de la solución con menor profundidad). Resolviendo la serie, la complejidad resulta de . En tanto, la complejidad espacial está determinada por la profundidad de la solución, ya que sólo deben guardarse los nodos del camino actual y sus hermanos, que serán , de manera que la complejidad espacial será de


  1. Explicite las diferencias entre búsqueda y planeamiento.

Tips: parámetros diferentes


...

...

...

...


  1. ¿En qué consiste el concepto de admisibilidad en el método A*? ¿Qué garantiza? Muestre este concepto.


...

...

...

...


  1. Compare las estrategias de búsqueda informadas que conozca. ¿Qué características debe tener una heurística para que sea útil?


...

...

...

...


  1. ¿Cuál es el aspecto destacable de los métodos de búsqueda de profundidad limitada? ¿Qué desventaja poseen?


...

...

...

...


Lógica de primer orden[editar]

  1. Suponga dos representaciones para la afirmación “Todos los santafesinos son cordiales”:

¿Cuál es la correcta? ¿Qué expresa la otra?




¿Cuáles son las características de la lógica de predicado de primer orden que interesan para representar el conocimiento de un agente? ¿Qué ventajas y desventajas tiene el empleo de este lenguaje para la construcción de un agente basado en conocimiento?
  • Poder de expresividad:


...

...

...

...



  • Simplicidad de las inferencias:


...

...

...

...



Planeamiento[editar]

En planning se utiliza búsqueda regresiva para encontrar la solución de un problema, dado que el factor de ramificación es menor, pero es posible encontrar una buena solución usando búsqueda progresiva si se cuenta con una buena heurística. ¿Es correcta esta afirmación? Justifique con ejemplos.

En planificación se pueden utilizar búsqueda regresiva o progresiva,…

...

...

...

...




El plan obtenido al aplicar POP según está establecido es de orden parcial, explique qué significa esto y por qué existen las restricciones de orden tales como A < B (A antes que B) en el plan resultado.

...

...

...

...



¿POP siempre produce un plan único? ¿Posee éste el menor número de pasos posible?

POP encontrará siempre las mismas soluciones candidatas, en el plan de orden parcial. La linealización del plan de orden parcial resulta en múltiples planes de orden total. Un algoritmo de recorrido topológico sobre el grafo de la solución de orden parcial puede encontrar la secuencia de acciones con el menor número de pasos del plan de orden parcial…

...

...

...

...



¿Se puede afirmar que el algoritmo de planeamiento POP es no lineal y no determinístico? ¿Es completo?

El algoritmo POP es no lineal en cuanto a la representación de la solución de orden parcial, ya que obtiene un grafo que indica las relaciones de precedencia y enlaces causales; a partir de este grafo se pueden obtener las soluciones de orden total. A diferencia, los algoritmos de búsqueda trabajan solo soluciones de orden total, es decir que representan las soluciones como una secuencia de acciones. Se dice que es no determinístico, ya que debe hacerse una elección no determinística de la acción a agregar mediante la cual se logra la precondición elegida. El algoritmo puede hacerse completo, ya que la elección de las precondiciones abiertas es conmutativa, de manera que no importa el orden en el cual se elijan las precondiciones abiertas, el algoritmo puede encontrar las mismas soluciones candidatas.


¿En qué puntos del algoritmo POP se plantea el no determinismo? Proponga criterios para eliminarlo.

Se dice que es no determinístico, ya que debe hacerse una elección no determinística de la acción a agregar mediante la cual se logra la precondición elegida. Para eliminar el no-determinismo, debe procurarse que la primera acción a elegir de entre cualquier conjunto de acciones posibles sea siempre la misma (por ejemplo, si hubiera alguna función que le asignara un número a cada una, podría tomarse siempre el mayor -o menor- del conjunto).


Durante la aplicación de POP, cada vez que se incorpora un operador, ¿Este se instancia completamente? ¿Esto es una ventaja o una desventaja?

No, se toman solo las decisiones que hacen falta, y las demás se dejan para más adelante (mínimo compromiso). Esto es una ventaja, ya que evita la ramificación innecesaria que provocaría instanciar en una etapa temprana con todos los valores posibles.


El algoritmo de planeamiento POP, ¿posee un enfoque hacia delante o hacia atrás? Justifique.

El enfoque de POP es hacia atrás en cuanto a las operaciones sobre el estado: las acciones anteriores se agregan para satisfacer precondiciones de acciones posteriores. En tanto que en lo que hace a la búsqueda en sí, es hacia delante: se parte de un estado inicial con un plan de orden parcial incompleto que solo tiene las acciones dummy inicio y fin, y su correspondiente restricción de orden, y debe llegarse a un estado final, que consiste en un plan de orden parcial completo y consistente.


  1. En el planificador POP, ¿cuál es el estado resultante de aplicar un operador?

...

...

...

...




  1. En POP, un operador no puede ser origen de links causales con más de un operador, pues se producen amenazas. ¿Es correcto?




Dé un ejemplo de una amenaza en planning y describa las formas que existen para solucionarla.

Colocar la acción fuera del intervalo de protección:

  • Antes.
  • Después.

...

...

...

...




Si un agente utiliza planning para seleccionar la próxima acción, ¿podría usar cálculo situacional? ¿Por qué?

tips: argumentos funcionales?

...

...

...

...



  1. ¿Qué tipo de agente puede utilizar un algoritmo de planeamiento en su razonamiento? ¿Por qué?

...

...

...

...




  1. Un agente que actúa en un ambiente no determinístico y continuo, ¿puede usar planeamiento para seleccionar la acción a ejecutar? Justifique.

...

...

...

...



Sistemas de producción[editar]

Describa un sistema de producción para encadenamiento hacia delante. ¿En qué consisten las fases matching (cotejo) y resolución de conflictos en un sistema de reglas de producción con encadenamiento hacia delante? Describa tres criterios para emplear en la fase de resolución de conflictos.

Componentes del sistema de producciones[editar]

Base de conocimiento[editar]

Memoria de trabajo[editar]

Contiene un conjunto de sentencias que no tienen variables, es decir que representa los hechos particulares.

Memoria de producciones[editar]

Está constituida por sentencias del tipo:

Donde cada antecedente debe matchear con una afirmación, y cada acción representa un cambio sobre la memoria de trabajo (eliminaciones, adiciones o modificaciones).

La máquina de inferencias[editar]

Encadenamiento hacia delante[editar]

Fase de cotejo (matching)[editar]

Se compara, para cada una de las reglas, cada elemento de la premisa con las sentencias en la memoria de trabajo. Se incorpora al conjunto de conflicto cada un de las reglas para las cuales se cumplan todas las premisas. Para evitar recálculos que atenten contra la eficiencia, se puede utilizar un algoritmo tal como Rete, que se basa en dos suposiciones:

  • La memoria de trabajo es muy grande y cambia poco entre cada ciclo. Toda la información que sigue presente en el siguiente ciclo se puede utilizar. Rete guarda información de los matchings parciales entre ciclos, de manera que el esfuerzo de matching depende de la razón de cambio de la memoria de trabajo en lugar de su tamaño.
  • Las condiciones de muchas reglas se repiten. Rete localiza condiciones comunes y produce un grafo que representa la memoria de producción, en donde los nodos son las condiciones de las reglas.
Resolución de conflictos[editar]

Se selecciona del conjunto de conflictos, la regla que se va a ejecutar, con un criterio que puede ser:

  • La más específica.
  • La que fue satisfecha con hechos más recientemente incorporados.
  • Prioridad de operación.
  • No duplicación.
Aplicación[editar]

Se aplica el consecuente de la regla seleccionada, produciéndose el cambio correspondiente en la memoria de trabajo.


  1. ¿Qué consecuencias podría acarrear que se seleccione más de una regla del conjunto de conflicto?

...

...

...

...




  1. Un sistema basado en reglas de producción, ¿puede aplicar reiteradamente la misma regla con los mismos elementos de la memoria de trabajo en la resolución del mismo problema?

...

...

...

...




Representación del conocimiento[editar]

¿En qué consiste el concepto de ontología, y particularmente una ontología general y de propósito particular?

Según Pierce, la ontología es el estudio de las características más generales de la realidad y de los objetos reales. La ontología organiza todo lo existente en una jerarquía de categorías. El marco de trabajo general para los conceptos se llama ontología de orden superior. Características de una ontología de propósito general:

  • Debe ser aplicable en mayor o menor medida a cualquier dominio de propósito específico.
  • En un dominio dispar, las diferentes áreas de conocimiento deben ser unificadas.


En la construcción de una base de conocimiento se utilizan las llamadas categorías. ¿Qué son y cual es su uso principal? Dé un ejemplo.

Aunque la interacción con el mundo tiene lugar a nivel de objetos individuales, la mayoría del proceso de razonamiento tiene lugar en el nivel de categorías. Las categorías sirven para organizar y simplificar el conocimiento base a través de la herencia. Pueden representarse en lógica de primer orden mediante:

  • Predicados:
  • Objetos:

Se usa:

  • , abreviado

Para indicar que es una subcategoría de .


¿Qué es una red semántica? ¿Cuáles son sus debilidades?

Las redes semánticas son grafos mediante los cuales se pueden representar objetos individuales, categorías de objetos y relaciones entre ellos. Hay diferentes tipos de enlaces:

  • Enlaces comunes entre objetos y categorías, que representan relaciones entre dichos objetos o categorías.
  • Enlaces que parten de una categoría, pero que representan una relación de todos los elementos que pertenecen a dicha categoría, y no de la categoría en sí.
  • Enlaces que unen categorías, pero que representan la relación entre cada uno de los elementos particulares de los miembros de una categoría y el correspondiente o los correspondientes miembros de la otra.

Los enlaces inversos deben ser representados por enlaces reitificados, ya que solamente hay indexación directa para objetos, categorías, y los enlaces que salen de ellos. Para representar relaciones n-arias, también debe recurrirse a la reitificación. No pueden representarse mediante las redes semánticas la negación, disyunción, símbolos de función anidados y el cuantificador existencial. Extendiendo la notación para hacerla equivalente a la lógica de primer orden en cuanto a poder expresivo, se pierde la principal ventaja de las redes semánticas, que es la simplicidad y la transparencia del proceso de inferencia. En algunos casos, puede utilizarse acoplamiento procedimental para paliar la falta de poder expresivo.


Indique de qué forma una red semántica puede incorporar la herencia con excepciones.

En una red semántica, a diferencia de una base de conocimiento estrictamente lógica, que una propiedad que se aplica a todos los elementos de una categoría no se aplique en algunos no es una contradicción, ya que para el caso de la categoría es sólo un valor por omisión. A medida que se desciende a través de la jerarquía, se pueden sobrescribir las propiedades. En lógica, una excepción tendría la forma .


  1. ¿Cómo describiría las diferencias que existen entre una representación basada en reglas de una basada en redes semánticas? ¿En qué circunstancias aplicaría cada una?

...

...

...

...




  1. ¿En qué se diferencia la construcción de una base de conocimientos de la implementación de un programa?


...

...

...

...



Cálculo situacional y cálculo de eventos[editar]

  1. En el cálculo de situaciones, existen reglas diagnósticas y reglas causales. Defina cada una y marque la diferencia. Defina axiomas de estado sucesor. Explique cómo se modela el cambio de estado. ¿En qué tipo de ambiente puede considerarse su aplicación?

Tips: tipos de razonamiento (diagnostico vs. modelo)

...

...

...

...




  1. Explique y compare axiomas de efecto y axiomas de cuadro. Dé ejemplos de ellos.

...

...

...

...





Para representar los cambios se puede utilizar, entre otras cosas, el cálculo de eventos y el cálculo situacional. ¿Cómo se plantea en cada uno el cambio? Realizar comparaciones indicando ventajas y desventajas. ¿Cuándo es conveniente usar uno u otro?


Las situaciones son términos lógicos que consisten en una situación inicial y todas las situaciones que son generadas mediante la aplicación de una acción a una situación. La función da nombre a la situación resultante de aplicar la acción a la situación .

...

...

...

...



Se quiere representar usando cálculo de eventos lo siguiente

"En el primer cuatrimestre del año se dicta la materia IA. Dentro de este cuatrimestre se toma un parcial de esta materia. La materia se dicta en al aula A6. Durante el primer cuatrimestre se toman exámenes finales, pero el parcial siempre se realiza después de la semana de exámenes."



  1. ¿Cuáles son las limitaciones del cálculo situacional como modelo de representación?

Tip: no se puede modelar más de un agente (porque podrían haber varias acciones a la vez).

...

...

...

...




¿Un evento se usa para representar conocimiento de tipo temporal, espacial o ambos simultáneamente?

Un evento generalizado representa ambos tipos de conocimiento simultáneamente.


Indique las características básicas del cálculo de intervalos.

Los momentos y los intervalos se diferencian en que los momentos tienen duración 0. La función Comienzo selecciona el momento más temprano de un intervalo, en tanto que Fin selecciona el más tardío. La función Duración devuelve la diferencia entre el tiempo del momento inicial y el del momento final. La función Tiempo determina el punto en la escala de tiempo para un momento.


¿A qué se denomina fluidos? Dé un ejemplo. ¿Cómo se compara con el cálculo situacional?

Los flujos son funciones y predicados que varían de una situación a la siguiente. Por convención, la situación es siempre el último argumento de un flujo. Su contraparte son las funciones y predicados atemporales o eternos.


Incertidumbre[editar]

  1. ¿Cuál es el significado de suponer independencia condicional al emplear un enfoque Bayesiano para representar el conocimiento incierto?

...

...

...

...




  1. Desarrolle un esquema Bayesiano simplificado para el manejo de incertidumbre en un sistema de producción, suponiendo independencia de premisas.

...

...

...

...