You are on page 1of 6

Inteligencia Artificial II Agentes Reactivos

Introduccin Se realiz el desarrollo de un agente reactivo que sea capaz de recoger los restos de basura en una habitacin. El agente deba ser totalmente reactivo y contar con las caractersticas de todo agente:

autonoma: los agentes pueden operar sin la intervencin de humanos o de otros agentes. sociabilidad: los agentes son capaces de interaccionar con otros agentes (humanos o no) a travs de un lenguaje de comunicacin entre agentes. reactividad: los agentes son capaces de percibir estmulos de su entorno y reaccionar a dichos estmulos. proactividad, iniciativa: los agentes no son slo entidades que reaccionan a un estmulo, sino que tienen un carcter emprendedor, y pueden actuar guiados por sus objetivos. movilidad: capacidad de un agente de trasladarse a travs de una red telemtica. veracidad: asuncin de que un agente no comunica informacin falsa a propsito benevolencia: asuncin de que un agente est dispuesto a ayudar a otros agentes si esto no entra en conflicto con sus propios objetivos. racionalidad: asuncin de que un agente acta de forma racional, intentando cumplir sus objetivos si son viables.

Este realiza su tarea en una habitacin definida, que posee obstaculos, y donde el basurero se encuentra en una esquina de la habitacin donde la misma posee un gradiente es decir la habitacin posee una cierta inclinacin hacia el basurero. El objetivo es acumular suficientes datos de la simulacin para poder realizar una estadstica de cmo el agente responde al ambiente. A continuacin se realizara una descripcin del ambiente en donde trabajara el agente. Ambiente El ambiente, por motivos tanto de diseo como programacionales, se defini un ambiente en forma de matriz de 10x10, y los obstculos (en este caso paredes) son definidos desde un principio y se mantiene durante todas las simulaciones. Por otro lado, los objetos que el agente debe recoger son dispersados por la habitacin de forma aleatoria, tanto en cantidad como en ubicacin. El mximo de objetos permitidos es de 30, de manera tal de definir los limites al que el agente se enfrenta.

Gamarra, Facundo Lpez Lampa, Martn

Inteligencia Artificial II Agentes Reactivos

Por lo tanto el ambiente queda definido de la siguiente manera:

Contene dor
Diseo de un agente Reactivo Para el diseo del agente se opt que el mismo cuenta con sensores en su parte delantera y a su vez tambin puede contar con sensores a sus alrededores si e desea tener un mayor control del ambiente. Con lo mismos tiene un alcance de una unidad es decir si tiene un alcance de x+-1 e y +-1.

La forma de recorrer la habitacin es aleatoria, una vez que encuentra una basura este la lleva al basurero. Arquitecturas reactivas Una clasificacin de las arquitecturas puede ser realizada segn todas las capas tengan acceso a sensores y actuadores (horizontales) o slo la capa ms baja tenga acceso a sensores y actuadores (verticales). Las arquitecturas reactivas proponen una arquitectura que acta siguiendo un modelo estmulo-respuesta. Las arquitecturas reactivas mantienen una serie de patrones que se activan bajo ciertas condiciones de los sensores y tienen un efecto directo en los actuadores. La forma en la que se desarrollo nuestro Agente Bob, fue utilizando ambas arquitecturas, es decir con una arquitectura vertical ya que los estmulos recibidos del exterior son procesados por capas especializadas que directamente responden con acciones a dichos estmulos y pueden inhibir las capas inferiores. Y tambin se lo desarrollo con una

Gamarra, Facundo Lpez Lampa, Martn

Inteligencia Artificial II Agentes Reactivos


arquitectura horizontal en la cuales todas las capas reciben informacin de los sensores y todas ellas actan como un autmata finito. Arquitectura Vertical Arquitecturas de subsuncin: permiten gestionar problemas de mayor complejidad que las reglas. Las arquitecturas de subsuncin estn compuestas por capas que ejecutan una determinada conducta (p.ej. explorar, evitar un obstculo, etc.). Las capas mantienen una relacin de inhibicin sobre las capas inferiores (inhibir entradas de los sensores y acciones en los actuadores). El control no es central, sino dirigido por los datos en cada capa.

Estructura del Agente


Agente -Estado -Steps +Detect() +Go() +Clean() +SearchBasura( )

Atributos: Estado : es el estado del agente , el mismo indica si

este esta en movimiento o si se encuentra en estado de reposo. Steps: Cantidad de pasos que realiza Bob para ejecutar su tarea.

Mtodos: Detect() : Este mtodo busca basura u obstculos un

paso antes que Bob llegue, es decir es la funcin que seria realizada por los sensores del agente. Segn el sentido en el que el robot esta avanzando compara la celda de la matriz que est delante de l. Si es un obstculo este cambia de direccin

Gamarra, Facundo Lpez Lampa, Martn

Inteligencia Artificial II Agentes Reactivos


aleatoriamente, si es cuadro vaca continua con la misma direccion y en el caso de que sea una basura llama al mtodo clean. Go(): Este mtodo es para hacerlo avanzar al robot, el mismo camina de manera aleatoria. Segn la direccion propuesta por el mtodo detect mueve a Bob en esa direccin. Clean (): Este mtodo hace que Bob lleve la basura al trashcan, guindose por la inclinacin del piso de la habitacin. Est dada por los subndices de la matriz, siendo el punto 10,10 la ubicacin de menor altura, es decir donde esta el contenedor. SearchBasura(): Este mtodo detecta si el agente ha encontrado basura pero si tambin ha encontrado un obstculo, y a travs de las reglas de decisin evala la opcin ms apropiada.

Reglas de Produccin
Regla 1| Prioridad 2: Si (estado=1 and obstaculo=1 and basura =0) entonces detect() Regla 2 | Prioridad 3: Si (estado=0 and obstaculos = 0 and basura=0) entonces go() Regla 3 | Prioridad 4: Si (estado=0 and obstaculo=1 and basura=1) entonces Regla 4 y Regla 2 Regla 4 | Prioridad 1: Si Regla 3 entonces Searchbasura() y Regla 6 Regla 5 | Prioridad 5: Si (estado=1 and obstaculo=1 and basura=1) entonces Regla 4 y Regla 2 ,Regla 6 Regla 6| Prioridad 6: Si (estado=1 and obstaculo=0 and basura=1) entonces clean()

Vector de Estados

A continuacin se muestra el vector de estado con todas los posibles valores del conjunto conflicto.

Estad o 0 0

Obstacul os 0 0

Basur a 0 1

Conjuto Conflicto R2 R2 , R6 4

Gamarra, Facundo Lpez Lampa, Martn

Inteligencia Artificial II Agentes Reactivos 0 0 1 1 1 1 1 1 0 0 1 1 0 1 0 1 0 1 R1 , R2 R4, R2,R6 R2 R4 R2 R1 , R2 R4,R2,R6

Arquitectura Horizontal

Reglas situadas: la implementacin ms sencilla de reactividad consiste en definir el comportamiento con reglas del tipo si situacinpercibida entonces acciones especficas. Estructura del Agente Bob
Agente -Estado -Steps +Detect() +Go() +Clean()

Atributos: Estado : es el estado del agente, el mismo indica si este

est en movimiento o si se encuentra en estado de reposo. Steps: Cantidad de pasos que realiza el robot para ejecutar su tarea.

Mtodos: Detect() : Este mtodo permite la bsqueda de basura


u obstculos un paso antes que el robot llegue, es decir es la funcin que sera realizada por los sensores del agente. Segn el sentido en el que el agente est avanzando compara la celda de la matriz que esta delante de l. Si es un obstculo este cambia de direccin aleatoriamente, si es cuadro vaco contina con la misma direccin y en el caso de que sea una basura llama al mtodo clean. Go(): Este mtodo es para hacerlo avanzar al agente; el mismo avanza de manera aleatoria. Segn la direccion propuesta por el mtodo detect que mueve al agente en esa direccin. Clean(): Este mtodo hace que el agente lleve la basura al trashcan, guindose por la inclinacin del piso de la habitacin. Esta dada por los subndices de la matriz,

Gamarra, Facundo Lpez Lampa, Martn

Inteligencia Artificial II Agentes Reactivos


siendo el punto 10,10 la ubicacin de menor altura, es decir donde est el contenedor.

Reglas de Produccin
Regla 1: Si (estado=0 and obstaculos = 0 and basura=0) entonces go() Regla 2: Si (estado=1 and obstaculo=1 and basura =0) entonces detect() Regla 3: Si (estado=1 and obstaculo=0 and basura=1) entonces clean() Regla 4: Si Regla 3 entonces thashcan=1

Funcionamiento de con arquitectura horizontal El funcionamiento de es el siguiente: comienza su recorrido del lado izquierdo superior de la habitacin de ah se mueve aleatoriamente y comienza a detectar basura, el alcance de su visin es de una celda hacia adelante de. En el momento en el que detecta una basura este la recoge y se dirige al basurero, este se gua a travs de una pendiente que tiene la habitacin hacia el basurero. En el caso de que se encuentre con un obstculo, en esta simulacin los obstculos sern paredes, el agente las esquiva aleatoriamente y contina su recorrido. Una vez que el agente entrega la basura a su contenedor, este comienza un nuevo recorrido aleatorio. Y as contina hasta que la habitacin se encuentra completamente limpia. A continuacin se mostrar el grafo de la mquina de estado finito que cumple con el esquema de funcionamiento del agente.

Gamarra, Facundo Lpez Lampa, Martn

You might also like