Дано: 1. Системе на вход можно подать задачу 1. Система, которая по задаче находит агента и при этом пытается минимизировать нагрузку на кластер агентов(в каждый момент времени есть доступные и недоступные агенты см пункт 3). 2. Функция ранжирования агентов т.е. по задаче можно отсортировать агентов 3. После запроса агента на решение задачи, он выходит из строя на некоторое время, потому нужно с умом давать им запрос на решение задачи. 4. При приходе задачи агенту: 4.1. агент может сообщить что он не может решить задачу, 4.2. агент может выдать решение задачи Нужно: Придумать систему распределния задач учитывающую реакции агентов на запросы. Текущие решение: 1. При N1 позитивных решениях снимать задачу. Если получено два ответа и они совпадают, то скорее всего задача решена. 2. При N2*2 сообщениях о том что агент не может решить задачу. Если агенты сообщают что задача не может быть решена то скорее всего она неверно сформулирована. См. пример http://huti.ru Помогите пожалуйста решить.
Если клиент отметил задачу как решённую — задача решена. Если какое-то количество агентов указывает на недостаток данных — заставить клиента переформулировать Если сколько-то агентов указали задачу как нерешаемую и прошло сколько-то времени — нерешаема. А в чём вопрос-то?
Агент не может сообщить что есть недостаток данных он может сообщить только то что решить задачу не может или может. Есть такая проблема если - задача изначально предполагается решаема большим количеством Агентов, то большинство свободных агентов говорят что решить не могу и задача снимается. Получаем : 1. задача будет адресована 100 агентам. 2. задача закрыта после опроса 5-и свободных первых агентов. 3. клиент недоволен. И вот тут надо найти какую то эвристику. Тут еще есть ранжирующая функция может ей как то воспользоваться...
Ну мы не можем спрашивать Агентов в течении продолжительного срока, потому что тогда они будут недоступны для следующей задачи...