Разпределението на задачи и ресурси е също главен проблем на MAC. Техниките на разпределение използват подходи от традиционните разпределени системи, адаптирани към новите типове решавани задачи. Прилага се централизирано и децентрализирано разпределение за когнитивните агенти, които комуникират чрез съобщения, а за рефлексните агенти, използващи сигнали – специална форма, наречена „възникващо разпределение”.
Централизираното разпределение се реализира чрез викане на процедури при конвенционалните системи, а при МАС- чрез разпределяне от агент -„брокер”. Когато „брокерът” е един, той има на разположение таблица с възможностите на всички агенти- „сървъри” за изпълнение на задачи. Таблицата се актуализира от „сървърите”, които обявяват своите умения при включването им в MAC. Пример за работа: Агент А трябва да изпълни задача Т, но няма капацитет за това. Той изпраща заявка на „брокера” за намиране на друг агент за задачата. „Брокерът” се обръща към агентите, за чиито възможности има информация. Ако някой от тях приеме, „брокерът” изпраща информация на клиента за това или го уведомява за неуспеха. Ако „брокерът знае” оценъчните функции, използвани от „сървърите”, той ще ги сортира и в зависимост от резултатите ще дава заявка към всеки от тях. Ако „не ги знае”, той ще изиска от агентите предложения, след което ще избере най- доброто. Веднага след получаване на индикация, че един агент се заема със задачата, останалите получават съобщение, че не е необходимо участието им. Така те могат по- бързо да актуализират отговорностите си.
Посоченият алгоритъм може да се изпълнява последователно или паралелно.
Основен недостатък на централизирания подход е, че ако брокерът се повреди, цялата система пропада. Един от изходите е да се изполват няколко брокера, но тогава трябва да се реши проблема с взаимодействията между тях.
При децентрализираното разпределение на задачи се предполага, че всеки агент има матрица с уменията на агентите, които „познава”. Например, такава матрица може да показва, че агент А има умение С3 и това да се означи с 1, че умение С1 може да получи от B и C и че D знае как да изпълни С3: 0110, 0010, 1001.
Не се предполага, че всеки агент е запознат с всички умения на другите агенти.
Мрежата на „познанство” може да се представи във формата на граф. В него агентите са възлите, а стрелките – уменията.
Друг вид децентрализирано разпределение на задачите е чрез „споразумения”. Част от агентите имат роля на мениджъри, а друга – на „участници”. Разпределение на задачите преминава през четири етапа:
- Mениджърът изпраща описание на задачата на всички агенти в MAC;
- На база на описанието, агентите – „участници” правят предложения, които изпращат на мениджъра.
- Мениджърът получава и оценява предложенията и избира най-доброто. Оценката може да изразена в числова мярка или да включва няколко критерия.
- Избраният агент изпраща съобщение на мениджъра, че все още има ресурс да изпълни задачата или, че се „отказва”, което стартира нова оценка на предложенията.
За улесняване взимодействието между агентите се прави свързването им в кръгова мрежова топология. Съобщенията се предават в една посока от „съсед” на „съсед”. „Участниците” четат заявката, преценяват я и поставят предложенията си във файла за кореспонденция. Ако един агент влиза или напуска мрежата или уменията му са модифицирани, той информира останалите агенти чрез изпращане на съобщение.
Недостатък на този вид разпределение на задачите е, че ако един агент е повреден, той може да блокира цялата система. В този случай мениджърът остава да чака в недефинирано състояние. Проблемът се решава с въвеждане на срок за отговор на всяка заявка. Мениджърът оценява само тези предложения, които са постъпили в поставения срок.
Този подход се прилага предимно в малки MAC, в които задачите се разделят на много малки елементи. Описаната активност има форма на диалог между агентите за установяване на „компетентния” по елемента от задачата.
Проста форма на разпределение на задачите – „възникващо разпределение” се използва при рефлексните агенти. Ограниченият им капацитет не позволява участие в посочените по – горе подходи. При тях се използват концепции, базирани на сигнали, вместо на съобщения. Сигналите се изпращат чрез дифузия в общата за системата среда, като интензивността им намалява с дистанцията по формулата: I = k / dist(x,xo)2. , където k е константа, представяща максималната сила на сигнала от източника, а dist е функция за изчисляване на разстоянието между две точки x и xo.
Един и същ сигнал може да породи различно поведение в различните агенти, защото в него няма семантика.
Разпределението на задачите тук зависи от интензивността на приетия сигнал. Например, ако агент може да изпълни една от две задачи, с които са асоциирани два сигнала съответно, той ще изпълни тази задача, чийто сигнал е по – силен. Ако са с еднаква интензивност, се избира произволно едно от действията.
Този подход е независим от броя на агентите. Отстраняването на един от тях не влияе на работата на системата.
Сходни статии:
- Сравнение между протоколи SNMP и CMIP Сравнението между протоколи SNMP и CMIP се заключава в следното: Използването на SNMP протокола позволява управление на прости и сложни системи, а прилагането на протокол CMIP определя достатъчно висока начална...
- Агентни комуникации в изкуствения интелект и Интернет системите Комуникациите между агентите са критично място за агентните системи. Средата, в която агентите могат да оперират и взаимодействат един с друг е осигурена от компютърната инфраструктура. Тя включва протоколи за...
