Джейд - какое поведение для событий l oop? - PullRequest
0 голосов
/ 09 марта 2020

Я внедряю мультиагентную систему в JADE. События помещаются в очередь и будут происходить последовательно. Агент EventManager должен go пройти через очередь и обработать их один за другим.

Таким образом, мой EventManager должен принять первое событие - отправить сообщения другим агентам, которые "решат" событие. После первое событие будет полностью решено, если второе событие будет принято и решено. (et c. для многих других событий)

Таким образом, моя проблема в том, какое поведение использовать для реализации этого?

Я думал о sequential behaviour, но при этом последовательно используется несколько вариантов поведения это одно поведение (захват события и его решение) несколько раз, но только после того, как было сделано предыдущее.

Мне нравится идея generic behaviour, но вместо переключателя a для l oop. К сожалению, абсолютно необходимо, чтобы предыдущее событие было полностью решено до открытия следующего.

Как это реализовать?

1 Ответ

0 голосов
/ 11 марта 2020

Одна важная вещь здесь, как организована связь между агентами?

Получаете ли вы ответы от всех агентов, когда они выполняли свою работу? Это может быть заархивировано с использованием протоколов связи, таких как Contra ctNet или что-то более удобное

Если вы получили все ответы, вы можете запустить новое поведение «работа» (например, OneShotBehaviour), снова дождаться ответов агента и, наконец, решить, начинать ли новую работу или прекращать ее работу.

...