Академический Документы
Профессиональный Документы
Культура Документы
ANDRES CALERO
ELMER GIL ANGULO
EDINSON
ANDRES CALERO
ELMER GIL ANGULO
EDINSON
HERNAN GOMEZ
INTELIGENCIA ARTIFICIAL
INGENIERIA DE SISTEMAS
SEPTIMO SEMESTRE
Debido a las necesidades especficas del diseo del agente, el UML semntica y
notacin se utilizarn como puntos de referencia, pero se extendern, y diagramas
UML a menudo se usan para representar conceptos que no son consideradas en
UML y la notacin se modificar para representar mejor lo que debe ser modelado
en el artefacto especfico. El proceso PASSI se compone de cinco componentes
del proceso: Requisitos del sistema, Sociedad de agentes, Agente Imple-
tentacin, Cdigo y Despliegue, y varias definiciones de trabajo cada uno de ellos
(Figura 1). La produccin de cdigo est fuertemente respaldada por la generacin
de una gran cantidad de cdigo gracias al PASSI ToolKit (PTK) utilizado para
disear el sistema y una biblioteca de patrones reutilizables de cdigo y piezas de
diseo gestionado por la aplicacin AgentFactory. En lo que sigue, los cinco
componentes del proceso se denominarn modelos y las definiciones de trabajo
como fases; para aclarar el significado de estos trminos, proporcionar un
paralelismo con el Meta modelo de Ingeniera de Procesos de Software (SPEM).
Refirindonos a SPEM, podramos decir que un proceso se compone de
componentes del proceso; cada componente del proceso podra ser por fases (un
tipo de definicin de trabajo) que a su vez se descomponen en actividades y pasos
(tanto las actividades como los pasos son de nuevo definiciones de trabajo).
Los "modelos" y las "fases" de PASSI son:
System Requirements Model: rene los requisitos del sistema en cuatro etapas.
Su primera etapa, Domain Requirements Description, recoge en diagramas de
casos de uso convencionales los requisitos de los escenarios posibles del sistema.
Las dems etapas describen una especiacin de alto nivel de los agentes, primero
haciendo una identificacin preliminar de los agentes y repartiendo los casos de
uso, posteriormente planteando los roles de los agentes mediante diagramas de
secuencia donde se presentan los escenarios principales del sistema, y fcilmente
se especifican las tareas asignadas a cada agente mediante diagramas de
actividades.
Agent Society Model: describe el conocimiento y las comunicaciones entre los
agentes que pueblan el sistema y por tanto, la ontologa del mismo. De esta forma,
en las diferentes etapas, se compone una descripcin de la ontologa mediante un
diagrama de clases, al que se aade otro que modela las interacciones (una clase
por cada clase de agente identicada y una relacin por cada comunicacin).
Posteriormente se asignan roles a las clases de agentes identificadas mediante
otro diagrama de clases (en este caso, los agentes se representan con paquetes y
los roles con clases). Finalmente, se especifican los protocolos que guan las
comunicaciones entre agentes, siguiendo los contenidos en el estndar FIPA o
definiendo nuevos mediante diagramas de secuencia AUML.
Agent Implementation Model: comienza definiendo tanto la estructura general del
sistema 10 como la estructura individual de los agentes. En el primer caso se har
mediante un diagrama de clases que representa las interacciones significativas
con el entorno mediante actores. Por otra parte, para la estructura individual, es
suficiente con un diagrama de clase corriente por cada clase de agentes.
La estructura definida ser completada con la especificacin del comportamiento
de los agentes a nivel global mediante diagramas de actividades, donde se
muestra la ejecucin de las diferentes tareas y los mensajes intercambiados. Para
expresar el comportamiento local de los agentes se considera suficiente una
descripcin informal de las tareas implementadas. Esto significa que la estructura
del sistema y de los agentes condiciona el comportamiento de estos, y al contrario.
De esta manera, existe una relacin iterativa entre la estructura y el
comportamiento del sistema.
Code Model: ocupa el lugar de la fase de implementacin. Esta fase se
desarrollar primero generando el cdigo a partir de los modelos mediante alguna
de las herramientas de soporte, que incluyen la generacin de plantillas adems
de la opcin de reutilizacin de patrones.
Deployment Model: describe el despliegue del sistema. Para ello, se utilizan
diagramas de despliegue con una sintaxis extendida para poder expresar la
movilidad de los agentes. Para finalizar la iteracin se considera el testing del
sistema desplegado. Como soporte a la metodologa, resulta destacable la
herramienta PASSI ToolKit (PTK), que incluye generacin de cdigo a nivel de
tmplate. Posteriormente, se completa manualmente el cdigo automticamente
generado previamente. Respecto a la enseanza de PASSI, no se ha encontrado
referencias.
METODOLOGIA PASSI
Aplicacin web:
diseo y manual de uso. La aplicacin web se ha desarrollo con un estilo que se
adapte lo mejor posible a los dispositivos mviles. En la parte inferior se presenta
un men con las secciones principales de la aplicacin segn el rol del usuario. De
entre ellas, la seccin Direcciones es comn a todos los roles. Todos ellos
necesitan especificar una o varias direcciones para la recogida y entrega del
producto. En el caso del transportista adems se usa para calcular el tiempo de
transporte desde su direccin hasta el productor y posteriormente hasta el punto
de entrega. Podemos ver las pantallas en la imagen
4.4. Las alertas o notificaciones, aunque tambin es una seccin que est
presente en todos los roles, difieren un poco en la informacin que se muestra a
cada uno de ellos. Para el agricultor y el transportista, estas son nicamente un
elemento informativo de aquellos acuerdos que se han realizado con xito. En el
caso del comprador, adems en cada notificacin de acuerdo realizado tiene la
posibilidad de aceptar o rechazar ese acuerdo y continuar participando en la
subasta, por lo que su seccin de notificaciones est divido en notificaciones
pendientes, aceptadas y rechazadas como se puede apreciar en la imagen.
4.5 El resto de secciones son particulares de cada rol. En agricultor, deber crear
una o varias cosechas para especificar el producto y variedad cosechada, as
como los tratamientos aplicados, la produccin total estimada y las fechas de
recoleccin. Esta informacin no se usa para el proceso de subasta (a excepcin
del producto, variedad y tratamientos), pero puede ser de inters de los
compradores para determinar si aceptan o no la oferta alcanzada. En la imagen
4.6 podemos ver la pantalla de lista de cosechas por un lado y la pantalla de
edicin de una de estas.
Los agentes
El SMA mantiene varios tipos de agentes. En concreto, cada regla definida para la
subasta sera un agente por lo que tendremos un agente por cada regla de venta
de los agricultores, uno por cada regla de compra y uno por cada regla de
transporte. Estos agentes funcionaran como iniciadores o participantes de la
subasta. Adems se creara un agente inicial, denominado SynAgent, que es el
encargado de iniciar todo el sistema, obteniendo todas las reglas mediante la
interfaz REST y creando el comportamiento del sistema de turnos que veremos
ms adelante.
El sistema de turnos
Este agente mantiene una lista de los agentes que representan cada regla de
venta. Dado que el orden en que se obtiene estas reglas de venta de la base de
datos siempre es el mismo, lo primero que debe hacer es realizar una
(des)ordenacin aleatoria, para evitar favorecer a ningn agricultor. Esta
(des)ordenacin se realiza cada vez que ha pasado por todas las reglas de venta.
Los comportamientos
El beneficio por hora. Una vez calculado todos los parmetros anteriores, se
calculara el beneficio por hora y solo se aceptara el transporte si supera un
beneficio mnimo.
Orden por menor precio de salida. Este comportamiento lo primero que hace es
pedir a todos los agentes de venta que les informe de su precio de salida. El
comportamiento mantendr una lista ordenada de los precios, e ira participando
en las subastas segn este orden.
Orden aleatorio. En este caso, una vez obtenidos todos los precios de salida, los
ordena aleatoriamente, e ira participando en las subastas segn ese orden.
http://eprints.ucm.es/22643/1/principal.
http://sedici.unlp.edu.ar/bitstream/handle/10915/22566/Documento_completo.pdf?
sequence=1
http://opera.eii.us.es/sinergia/public/uploads/sinergia/entregables/2013-
2014/G2013-2014-12/Grupo12Memoria1.pdf
2000.
sdeloach/ai/agentool.htm, 2003.