14
Programación avanzada Preguntas Exámenes Anteriores 1-> Las interacciones en un SMA se basan en los siguientes conceptos clave. a) Comunicación, coordinación, cooperación y aprendizaje b) Comunicación, coordinación, negociación y sociabilidad c) Comunicación, coordinación, sociabilidad y aprendizaje d) Comunicación, coordinación, cooperación y negociación 2-> La cooperación en un SMA a) Permite a los agentes intercambiar información y conocimiento de forma comprensible b) Establece un conjunto de acciones que pueden realizarse en un entorno multiagente para alcanzar un objetivo y que un agente con los mismos objetivos, no podía alcanzar por si solo c) Es un mecanismo por el cual los agentes que trabajan juntos para lograr un objetivo en común, definen una estrategia para alcanzar dicho objetivo d) Permite alcanzar decisiones de coordinación conjuntas mediante la comunicación explicita 3->Un SMA abierto se caracteriza por: a) Su estructura es capaz de cambiar dinámicamente b) Sus componentes no se conocen a priori, cambian con el tiempo c) Los agentes son heterogéneos d) Todas son correctas 4->En una sociedad artificial las entidades se rigen por: a) Metas e intenciones b) Reglas e intenciones c) Comportamientos e intenciones d) Jerarquías e intenciones 5->Las sociedades abiertas... a) Imponen restricciones a los agentes b) Carecen de estabilidad y confianza c) Restringen la flexibilidad y la apertura d) carecen de normas que rijan el sistema 6->En las sociedades semiabiertas a) El acceso a la sociedad está regulado. b) Ningún agente externo puede acceder. c) Permite que un agente externo solicite la creación de un agente interno a la sociedad d) Limitan la confianza y la estabilidad 7->Los agentes que buscan una regla cuya condición coincida con la situación actual y efectuar la acción que corresponda a tal regla se denominan: a) Agente de reflejo compuesto b) Agente de reflejo simple c) Agente de acción-reacción d) Agente condición-reacción 8->Según el mecanismo de razonamiento los agentes pueden ser: a) Autónomos o colaborativos b) Deliberativos o colaborativos c) Autónomos o cooperativos d) Deliberativos o reactivos Sir William Wolf

Programacion avanzada (apuntonios)

Embed Size (px)

Citation preview

Programación avanzada

Preguntas Exámenes Anteriores

1-> Las interacciones en un SMA se basan en los siguientes conceptos clave.a) Comunicación, coordinación, cooperación y aprendizajeb) Comunicación, coordinación, negociación y sociabilidadc) Comunicación, coordinación, sociabilidad y aprendizajed) Comunicación, coordinación, cooperación y negociación

2-> La cooperación en un SMAa) Permite a los agentes intercambiar información y conocimiento de forma comprensibleb) Establece un conjunto de acciones que pueden realizarse en un entorno multiagente para alcanzar un objetivo y que un agente con los mismos objetivos, no podía alcanzar por si soloc) Es un mecanismo por el cual los agentes que trabajan juntos para lograr un objetivo en común, definen una estrategia para alcanzar dicho objetivod) Permite alcanzar decisiones de coordinación conjuntas mediante la comunicación explicita

3->Un SMA abierto se caracteriza por:a) Su estructura es capaz de cambiar dinámicamenteb) Sus componentes no se conocen a priori, cambian con el tiempoc) Los agentes son heterogéneosd) Todas son correctas

4->En una sociedad artificial las entidades se rigen por:a) Metas e intencionesb) Reglas e intencionesc) Comportamientos e intencionesd) Jerarquías e intenciones

5->Las sociedades abiertas...a) Imponen restricciones a los agentesb) Carecen de estabilidad y confianzac) Restringen la flexibilidad y la aperturad) carecen de normas que rijan el sistema

6->En las sociedades semiabiertasa) El acceso a la sociedad está regulado.b) Ningún agente externo puede acceder.c) Permite que un agente externo solicite la creación de un agente interno a la sociedadd) Limitan la confianza y la estabilidad

7->Los agentes que buscan una regla cuya condición coincida con la situación actual y efectuar la acción que corresponda a tal regla se denominan:a) Agente de reflejo compuestob) Agente de reflejo simplec) Agente de acción-reacciónd) Agente condición-reacción

8->Según el mecanismo de razonamiento los agentes pueden ser:a) Autónomos o colaborativosb) Deliberativos o colaborativosc) Autónomos o cooperativosd) Deliberativos o reactivos

Sir William Wolf

Programación avanzada

9-> Según Nwana un agente inteligente es la unión dea) Cooperación, aprendizaje y autonomíab) Interacción, aprendizaje y razonamientoc) Aprendizaje, comunicación y autonomíad) Aprendizaje, comunicación y razonamiento

10-> La propiedad de pro-actividad de un agente está relacionada con:a) La capacidad de actuar sin intervención humana directa o de otros agentesb) La capacidad emprendedora y de iniciativac) La capacidad de percibir estímulos ante los que debe reaccionar en un tiempo preestablecidod) La capacidad para trasladarse en una red de comunicación informática.

11-> Cual de las siguientes definiciones se corresponde con la propiedad de racionalidad de un agentea) Propiedad por la que un agente no comunica información falsa intencionadamenteb) Un agente no tiene objetivos contradictorios y siempre intenta realizar una tarea que se le solicitac) Un agente tiene unos objetivos específicos y siempre intenta llevarlos a cabod) Capacidad para organizarse dentro de sociedades que pretenden emular las sociedades humanas u orgánicas

La comunicación se refiere a los aspectos físicos entre si, a las lineas de comunicación que hay.¿La cooperación afecta a la coordinación?

– Acion si es una estrategia que pretende que sea lo mejor posible, puede afectar la coordinación

¿y la coordinación a la cooperación?– En principio si afecta

Sir William Wolf

Programación avanzada

Tema 1Introducción

Contenidos– Agentes

– Definición – Características– Ejemplo

– Sistemas multiagente– Definición – Clasificación– Propiedades

– Sociedades de agentes– Visión general– Clasificación

Agentes– Un agente no conoce nunca todo el medio.– Un agente puede verse como la evolución del concepto de objeto que incorpora

características propias del comportamiento humano– El concepto de agente se encuentra dentro de un entrono multidisciplinar:

– Informática– Inteligencia artificial– Psicología– Sociología

– Un agente es un sistema computacional encapsulado, situado en algún entorno, dentro del cual actúa de forma autónoma y flexible para así cumplir sus objetivos

Un agente es todo sistema informático que satisface las siguientes propiedades:

– Autonomía– Sociabilidad– Reactividad– Pro-actividad– Movilidad– Veracidad– Benevolencia– Racionalidad– Organización– Aprendizaje– Autonomía

Tiene la capacidad de actuar sin intervención humana directa o de otros agentes.– Sociabilidad

Capacidad de interaccionar con otros agentes, utilizando como medio algún lenguaje de comunicación entre agentes

– ReactividadUn agente esta inmerso en un determinado entorno del que percibe estímulos y ante los que debe reaccionar en un tiempo preestablecido

Sir William Wolf

Programación avanzada

– Pro-actividadUn agente no solo debe racionar a los cambios que se produzcan en su entorno, si no que tiene que tomar la iniciativa para actuar guiado por los objetivos que debe de satisfacer

– MovilidadHabilidad de un agente de trasladarse en una red de comunicación informática

– VeracidadPropiedad por la que un agente no comunica información falsa intencionadamente

– benevolenciaUn agente no tiene objetivos contradictorios y siempre intenta realizar la tarea que se le solicita

– RacionalidadUn agente tiene unos objetivos específicos y siempre intenta llevarlos a caboLa racionalidad de un agente depende de :– La medida con la que se evalúe el grado de éxito logrado– La secuencia de percepciones, entendiendo por tal todo aquello que hasta ese momento

haya percibido el agente– El conocimiento que el agente posea del medio– Las acciones que el agente pueda llevar a cabo

– OrganizaciónCapacidad para organizarse dentro de sociedades que pretenden emulas las sociedades humanas u orgánicas

– AprendizajeHabilidad para adaptarse a cambios en entornos dinámicos utilizando métodos de aprendizaje

– Tipos de agentes:– Reactivos

perciben el entorno y responden ante cambios– Pro-activos

Toman iniciativa– Híbridos

Ejemplo

Sistemas multiagente– Definición

Un sistema multiagente (SMA) es un sistema compuesto por múltiples agentes inteligentes que interactúan entre ellos. Los sistemas multiagente pueden ser utilizados para resolver

Sir William Wolf

Programación avanzada

problemas que son difíciles o imposibles de resolver para un agente individual

Existe una colección de agentes, definido cada uno de ellos por sus propias habilidades: Adquisición de datos, comunicación, planificación y actuación.

El conjunto de todos los agentes tiene asignada una misión que puede descomponerse en diferentes tareas independientes, de forma que se puedan ejecutar en paralelo. El conjunto de agentes debe ser capaz de asignar las tareas apropiadas a cada uno en función de la inadecuación del agente a esa tarea y teniendo en cuenta la misión a realizar en común

Cada agente tiene un conocimiento limitado. Esta limitación puede ser tanto del conocimiento del entorno, la misión del grupo o las intenciones de los demás agentes.

Cada agente tiene cierta especialización para realizar determinadas tareas.

El problema se plantea como un objetivo que no se puede alcanzar por un único subsistema y necesita de la colaboración de los demás para obtener la solución.

Problemas a los que se adapta:– Físicamente distribuidos– La solución involucra muchos problemas diferentes– Definidos sobre una red de ordenadores– La solución requiere diferentes puntos de vista– El sistema debe adaptarse a cambios en la estructura o en el entorno

La distribución de las decisiones permite:– mantener la autonomía de cada nodo de la red. Los nodos no dependen de la comunicación

con otros nodos para realizar una priorizaron de sus tareas– las decisiones internas se toman individualmente con los datos internos propios del nodo– La cooperación entre los distintos nodos se realiza de manera explicita mediante la

comunicación de las necesidades de cada nodo.– La organización entre los nodos es dinámica– La información no estará centralizada en un único punto

IMPORTANTEEn las interacciones entre los diferentes agentes hay 4 conceptos clave:

– Comunicación:Habilidad de los agentes para intercambiar información y conocimiento de forma comprensible.

Sir William Wolf

Programación avanzada

– Coordinación: La coordinación de acciones es un conjunto de acciones suplementarias que pueden realizarse en un entorno multilenguaje para alcanzar un objetivo, y que un agente, con los mismos objetivos, no podría alcanzar por si solo

– Cooperación: Mecanismo por el cual los agentes, que trabajan juntos para lograr un objetivo común, definen una estrategia para alcanzar dicho objetivo

– Negociación:Permite alcanzar decisiones de coordinación conjuntas mediante la comunicación explicita.

Las aplicaciones del paradigma de agentes pueden ser clasificadas en tres clases:– Sistemas abiertos

La estructura es capaz de cambiar dinámicamente, sus componentes no se conocen a priori, cambian en el tiempo y pueden ser heterogéneos

– Sistemas complejosEstán relacionados con dominios grandes e impredecibles, usan la modularidad y la abstracción para enfrentarse a los problemas

– Sistemas ubicuos:Tienen el objetivo de mejorar un sistema informático mediante la utilización de ordenadores disponibles en un entorno físico, normalmente distribuido, pero haciéndolo totalmente transparente el usuario

Aspectos que caracterizan a un SMA:– Descripción de competencias

A partir de la abstracción del problema, se divide el problema en tareas, subtareas y sus relacionesUna vez hecha la subdivisión del problema, se conoce la forma de resolverlo y distribuirlo entre los agentesHay dos fases en la descomposición del problema– Durante la definición del problema, a nivel de aplicación – Durante la fase de resolución del problema para asignar la actividad de los agentes. Esta

asignación se puede realizar de forma determinista o dinámica.

– Modelos de agentes conocidosLos agentes necesitan conocer información sobre otros agentes. Esta información se organiza en modelos de agentes conocidos.El modelo de agentes contiene información que el agente puede utilizar para razonar sobre otros agentes y comunicarse con ellos.Se usa para poder predecir el comportamiento de otros agentes, coordinar las actividades locales de modeque se ajuste a una meta global y permitir una estructura flexible de la arquitectura de un agenteEl sistema debe ser dinámicamente auto-configurable. De este modo se podrán añadir o excluir agentes al sistema actualizando el modelo de agentes de los agentes correspondientesPuede haber súper agentes con control sobre el resto

– ComunicaciónLa definición del problema, su descomposición y distribución, genera implícitamente canales de comunicación entre los agentes

Sir William Wolf

Programación avanzada

Estos canales establecen las interacciones entre los agentesPermiten que los agentes tengan conocimiento sobre los otros y la coordinación entre ellosLa comunicación se realiza mediante un protocolo o lenguaje que puede tener diferentes grados de dificultad

– Comportamiento del sistema (IMPORTANTE)El objetivo es un comportamiento global coherente, donde la coherencia es una métrica del sistema medida por:– Eficiencia– Calidad y claridad de la solución– Nivel de fallos no críticos del sistema

El comportamiento se ve influido por el tipo de organización entre los agentes:– Centralizado:

La toma de decisiones se centra en un agente– Tipo mercado:

Las interacciones se regulan mediante ofertas y contratos– Comunidad plural:

Las soluciones locales de un agente son refinadas globalmente por el resto de los agentes– Comunidad con reglas de comportamiento:

Un conjunto de agentes con capacidades muy diferentes se controla mediante un protocolo de interacción

Otros factores que influyen en la coherencia:– Sincronización de acciones atraves de una planificación global– reducción de los puntos de interacción– La comunicación en si misma– Mejora de los modelos de agentes conocidos y de los meta-niveles de conocimiento en

general.– Interacción oportunista

– Puntos de interacción de un agenteCada agente de un grupo puede tener la necesidad de comunicar a otros agentes información procesada o pedirles información que no este a su disposiciónEsto se realiza mediante llamadas a funciones de petición, o de envío, de informaciónA todos los puntos presentes en la aplicación, donde se produce una interacción con otros agentes, se les denomina Puntos de Interacción

Sociedades de agentes– Sociedad Artificial:

Conjunto de entidades artificiales interrelacionadas e interactuantes, que se rigen bajo determinadas reglas e intervencionesLa funcionalidad principal es permitir a sus miembros coexistir en un entorno cooperativo y

Sir William Wolf

Programación avanzada

llevar a cabo sus respectivos objetivos cooperando o no con el resto de miembros.Las principales características son:– Propósito con lo que fue creada– estructura de sus partes– reglas que controlen el comportamiento de sus miembrosUn agente dentro de una sociedad necesita considerar no solamente su propio comportamiento sino también el comportamiento del sistema como un todo como los agentes influyen los unos en los otrosCaracterísticas que permiten clasificar las sociedades de agentes– Apertura:

Posibilidades que tienen los agentes de unirse a la sociedad– Flexibilidad:

Grado en el que el comportamiento del agente está restringido por las normas de la sociedad

– Estabilidad:define la previsibilidad de las consecuencias de las acciones

– Confianza:Especifica el grado en el que los agentes pueden confiar en la sociedad

IMPORTANTEAtendiendo a estas características se pueden clasificar las sociedades de agentes en:– Sociedades Abiertas

No impone ninguna restricción a los agentesApoyan la flexibilidad y la apertura pero carecen de estabilidad y confianzaAsume que los agentes estarán desarrollados y diseñados fuera del ámbito y diseño de la sociedadMetodologías de ingeniería para construcción de sociedades abiertas:– Deben incluir formalismos para la descripción, construcción y control de los

elementos organizativos y normativos de una sociedad– Debe proporcionar mecanismos para describir el entorno de la sociedad y las

interacciones entre los agentes y la sociedad – Los elementos organizativos y normativos deben ser especificados de forma explicita

desde una sociedad abierta– Son necesarios métodos y herramientas para poder comprobar si el diseño de una

sociedad satisface sus necesidades de diseño y sus objetivos– Debe proporcionar directrices sobre la capacidad de comunicación y la capacidad

para ajustarse al comportamiento que se espera de los agentes

– Sociedades CerradasNingún agente externo puede accederLas reglas que gobiernan el sistema están bien delimitadas para el cumplimiento de una meta común Buena confiabilidad y estabilidad pero ninguna apertura y mala flexibilidadCada uno de los participantes persigue un mismo objetivo en común. Los objetivos locales pueden diferir pero siempre en pro del objetivo general (Común a todas las sociedades)

Sir William Wolf

Programación avanzada

– Sociedades SemiabiertasEl acceso a la sociedad esta reguladoPara entrar en la sociedad se deberá hacer contacto con un mecanismo de admisión que se encargara de determinar si el agente es confiable y se adapta a la sociedad Limitan apertura y flexibilidad pero aportan un grado aceptable de confianza y estabilidad

– Sociedades Semi-cerradasNo permiten la inclusión de agentes externos pero se permite que un agente externo solicite la creación de un agente interno a la sociedadEl agente interno actuara en nombre del agente externo que ha solicitado su creaccionLa creación estará delimitada por los roles existentes dentro de la sociedad por lo que las características del agente estarán controladasSe amplia la apertura y la flexibilidad de la sociedad sin perder confianza y estabilidad

Tema 2Arquitecturas de Agentes

Sir William Wolf

Programación avanzada

Contenidos

– Agentes software– Arquitecturas

– Definición– Tipos– Actitudes

– BDI: Creencias, Deseos e intenciones (Creencias → Valores dinámicos en el tiempo)– Visión general – Formalismo teórico– Ejemplo practico

– Sistemas CBR– Visión general– Planificación basada en casos

– Modelo reactivo

Agentes softwareTiposClasificación según el tipo de programa en la implementación del agente

– Agente de reflejo simple:Utiliza reglas de condición-acción para establecer la conexión entre percepciones y accionesBusca una regla cuya condición coincida con la situación actual y efectúa la acción que corresponda a tal regla

– Agente reflejo con estado internoMantiene un estado interno que se actualiza con información de como evoluciona el mundo independientemente del agenteEl estado interno también se actualiza con la información de como las acciones del agente afectan al mundo

– Agentes basados en metasEl agente necesita información sobre su meta para decidir que hacerHa de elegir las posibles acciones que le permitan alcanzar su meta, para ello puede utilizar técnicas de búsqueda y planificación

– Agentes basados en utilidadLas metas no bastan para generar una conducta adecuadaLa utilidad es una función que a cada estado le asocia su grado de utilidadCuando alguna meta implica un conflicto o cuando el agente puede desear varias metas y no existe la certeza de lograr ninguna de ellas, la función de utilidad permite tomar decisiones racionalmente– Según su grado de autonomía pueden ser

– Reactivos– Autónomos

Sir William Wolf

Programación avanzada

– Agentes móvilesPrograma capaz de viajar por redes informáticas con el objetivo de:– Evitar sobrecargas de comunicación– Obtener ciertos recursosSon capaces de regresar a su lugar de origen una vez han realizado las tareas especificadasPuede haber problemas de seguridad si no se definen restricciones sobre el agente

Según Nwana los agentes se clasifican según:– Movilidad

Estáticos → No pueden moverse dentro de una red

Dinámicos → Pueden trasladarse entre plataformas o host

– RazonamientoDeliberativos

→ Incorporan un modelo deliberativo para su razonamientoReactivos

→ Reaccionan frente a estímulos solamente utilizando el conocimiento instantáneo del entorno

– Autonomía, cooperación y aprendizajeColaborativas

→ Son agentes autónomos que cooperan con otros agentesInterfaz

→ Agentes autónomos con capacidad de aprendizajeDe aprendizaje

→ Agentes con capacidad de aprendizaje y que trabajan de forma coordinadaInteligentes

→ Agentes autónomos con capacidad de aprendizaje que cooperan con otros agentes

Arquitecturas– Una arquitectura

define los mecanismos que

permiten interconectar los componentes software y hardware que hacen que un agente se comporte como tal.

– Es una metodología particular para construir agentes. La cual especifica como el agente puede ser descompuesto en un conjunto de módulos componentes y como estos módulos pueden interactuar

– Planificación: Estudio de mecanismos que permitan organizar la ejecución de acciones de

Sir William Wolf

Programación avanzada

los agentes– Los sistemas de planificación utilizan modelos de representación del conocimiento y

razonamiento de tipo simbólico. Los principios básicos de la planificación son indecidibles por lo que el tiempo de respuesta es un factor crítico

– Conocimiento: Es el entendimiento de la naturaleza, cualidades y relaciones de las cosas– El conocimiento simbólico es aquel que se alcanza por la consideración directa de ideas

completas y exhaustivamente analizadas en sus componentes simples (símbolos)– La inteligencia misma se describe en términos de la representación simbólica del

conocimiento.– Un agente actúa de forma inteligente cuando los símbolos almacenados representan

adecuadamente el mundo real y el tratamiento de esta información lleva a una solución eficaz de un problema planteado

TiposLas arquitecturas de agentes se descomponen en tres tipos principales que dependen del sistema de razonamiento que utilicen

– Deliberativas– Usan modelos de representación simbólica del conocimiento– Se basan en la teoría clásica de la planificación

– Se parte de un estado inicial – Existe un conjunto de planes – Existe un estado objetivo que se debe satisfacer

– Un agente deliberativo contiene un modelo simbólico del mundo en donde las decisiones se toman mediante mecanismos de razonamiento lógicos (basados en la concordancia de patrones y manipulaciones simbólicas)

– Se debe encontrar una representación simbólica del problema de forma que las tareas que debe realizar se ajusten a un tiempo preestablecido

– Reactivas– No tienen un modelo de razonamiento simbólico– Arquitectura de substitución

– Se puede generar un comportamiento inteligente sin utilizar propuestas del modelo simbólico

– La inteligencia es una propiedad emergente de ciertos sistemas complejos– Organizados en jerarquías de capas, de menos a mayor nivel de abstracción

– La mayor aplicación de este tipo de arquitecturas se ha centrado en el desarrollo de controladores en robótica

– Híbridas– Combina aspectos de las arquitecturas deliberativas y reactivas– Se puede construir agentes formados por dos subsistemas:

– Subsistema deliberativo: Usa un modelo simbólico y genera planes de actuación

– Subsistema reactivo:Centrado en reaccionar a los eventos que tengan lugar en el entorno y que no requiera un mecanismo de razonamiento complejo.

– Estructuración por capas

Sir William Wolf

Programación avanzada

– Reactivo:Se toman decisiones acerca de lo que hacer en base a los estímulos recibidos del entorno en tiempo real

– Conocimiento:Se olvida de los datos que recopila el agente y se centra en el conocimiento que el posee del medio mediante una representación simbólica

– Social:Maneja aspectos sociales del entorno, incluyendo tanto información de otros agentes, como deseos, intenciones, etc.

Actitudes– No hay un consenso sobre las actitudes para caracterizar un agente. Cada autor propone una

combinación de ellas única– Actitudes mentales:

Definen la capacidad de razonamiento en agentes inteligentes. Están relacionadas con la observación y detección de capacidades ligadas con estados mentales humanos

– Un agente puede verse como un sistema capaz de definirse correctamente mediante actitudes mentales– Actitudes de información:

Relacionadas con el conocimiento que un agente tiene sobre su entorno

Sir William Wolf

Programación avanzada

– Actitudes de motivación:Relacionadas con las posibles acciones que un agente pudiera llegar a tomar

– Actitudes sociales:Relacionadas con los permisos y obligaciones

Sir William Wolf