Съвременни проблеми на практическото използване на многоагентни системи
Публикационна дейност
Номер на следващия сайт
Съвременни проблеми на практическото използване на многоагентни системи
Липсата на универсални методи за решаване на сложни проблеми е важен специфичен проблем, пред който е изправен съвременният практикуващ програмист. От една страна има различни интелигентни технологии, които позволяват използването на размита логика, аналогии с естествени механизми за самоорганизация, невронни и семантични мрежи и т.н., от друга страна, в практическите задачи за автоматизация се изисква да се осигурят стратегии за оптимизация, които изискват ясно изложение на проблема и способността да се постигне предвидимо поведение на софтуера.
Magenta Development Research and Production Company (Самара) (международно име Magenta Technology) е системен интегратор на интелигентни системи и разработчик на индивидуални решения за планиране на разпределени ресурси в транспортната логистика, производството, медицината и Интернет - има доста сериозен опит в разработването на интелигентни софтуерни системи в транспортната логистика. Започвайки от малки проекти, в които участваха предимно учени, занимаващи се с теоретични изследвания в областта на изкуствения интелект, и студенти, компанията с над 100 опитни разработчици в екипа си се превърна в сериозен производствен център, който поддържа всички етапи на софтуерни проекти и разработка на продукти.
Според експертите е необходимо да се идентифицират редица проблеми, които са остри за много разработчици на ново поколение интелигентни софтуерни продукти. Тази статия разглежда приложните аспекти на практическото приложение на научни методи и алгоритми взадачи за разпределение на ресурсите.
Проектиране и внедряване на софтуерна архитектура
Архитектурата на сложен софтуерен пакет [1] до голяма степен определя основните му характеристики и в крайна сметка влияе върху изпълнението на основните изисквания, свързани с производителност, качество и функционалност. Под архитектура на програмата разбирайте структурата, която включва софтуерни компоненти с различни свойства и връзки между тях.
В многоагентни/мултиагентни системи [2, 3] мултиагентната архитектура може да се разглежда като отделен обект на изследване, което прави възможно прилагането на съвременни парадигми за разработване на приложения, изградени като отворени общности от взаимодействащи активни софтуерни компоненти. На практика такова разделение означава възможност за отделяне на логиката на взаимодействие между софтуерните агенти от логиката на решаване на оптимизационни задачи, обусловени от спецификата на предметната област.
Архитектурата на мултиагентната система изрично дефинира концепцията за платформа, която е софтуерна и методологична основа за различни клиентски приложения. В този контекст трябва да се разгледат различни гледни точки относно мултиагентната платформа.
1. Платформа като средство за изграждане на агент и управление на неговия жизнен цикъл. От тази гледна точка софтуерният пакет се описва като набор от библиотеки, които ви позволяват да създавате агенти, да управлявате тяхното поведение, да описвате състоянието им и да им предоставяте услуги за съобщения съгласно предварително дефинирани протоколи.
2. Платформата като основа за създаване на различни приложения за решаване на определен набор от задачи. В този контекст софтуерният пакет съдържа редица функционалности за изпълнение на основните изисквания, както и за самостоятелно изгражданенова функционалност, базирана на специфичните изисквания на нов клиент.
3. Платформата като средство за внедряване на стандартизирана функционалност, която позволява на потребителите да осигурят необходимата ефективност на работа. Основната разлика от предишната гледна точка е, че ако в първия случай възникне специфично изискване, то се удовлетворява чрез внедряване на специализирана софтуерна добавка, а във втория случай то се модифицира в едно от предварително зададените изисквания, като клиентът реално се задължава да промени своите бизнес процеси, приспособявайки се към възможностите на системата.
Практиката показва, че е невъзможно недвусмислено да се определи коя архитектура е по-добра, но тези различия трябва да се вземат предвид, първо, при разработването на мултиагентни системи и избора на стратегия за тяхното развитие, и второ, при съгласуване на изискванията и работните планове с клиентите, както и в процеса на преговори за предварителна продажба.
Magenta Development разработи решението MAXOPTRA като основна платформа за транспортна логистика, която осигурява интегрирано управление на поръчки и флот за модерна спедиторска компания, оперираща в областта на превоза на товари и пътници. Тази платформа е изградена по принцип 2, но са разработени и стандартни решения по принцип 3 за различни предметни области, което улеснява позиционирането на тази разработка на пазара на софтуер за транспортна логистика.
Решението се основава на софтуерна платформа за осигуряване на координирано взаимодействие на всички участници в транспортния процес: логистици, диспечери, спедитори и клиенти, което може значително (с 15-20%) да увеличи производителността и ефективността на транспортната мрежа, да намали транспортните разходи поради автоматичнотопланиране на двупосочни пътувания и намаляване на натоварването на служителите на компанията с до 75%.
Комбинация от интелигентни и класически алгоритми
За съжаление, опитът показва, че използването на чисти многоагентни технологии, базирани на свободно взаимодействие на агенти за решаване на практически проблеми, не винаги е възможно. По-специално, много експерименти, както симулационни, така и пълномащабни, разкриха следните проблеми: ниска скорост на механизма за планиране; сложността на настройката / избора на коефициенти, които влияят върху качеството на плана; често неочаквана реакция на промяната на коефициентите и липсата на конвергенция на проблема за определяне на оптималния набор от коефициенти за висококачествено планиране; ниска повторяемост на резултатите от планирането, което води до значително прекрояване на графика с незначителни (от гледна точка на клиента) промени в първоначалните данни или когато се правят корекции през работния ден.
Тези проблеми обаче не трябва да спират разработчиците да използват мултиагентни архитектури, тъй като всъщност те представляват модерна парадигма на програмиране, която прави възможно изграждането на разпределени модерни системи, но сами по себе си не позволяват решаването на проблеми с оптимизацията.
По този начин, въз основа на практиката на разработване и внедряване на промишлени многоагентни приложения, можем да заключим, че е целесъобразно да се използва хибриден подход, основан на органичната комбинация от еволюционни алгоритми за търсене на интелигентни решения и класически алгоритми за оптимизация на мрежата. Това решение съчетава предимствата на различни методи и технологии, като същевременно минимизира известните негативни ефекти.
В транспортната логистика мрежовите алгоритми са донесли най-голяма практическа полза.оптимизации, които реализират варианти на метода на клона и обвързаността. Тези алгоритми са лесни за внедряване с помощта на мултиагентна архитектура, бързо се адаптират към конкретен оптимизационен проблем и осигуряват необходимата ефективност на зареждане на транспортни ресурси.
Като пример, нека вземем проект на компания за интегрирана автоматизация на процесите на транспортно планиране в регионалните подразделения на ROSINKAS. Използването на системата за събиране на пари и управление на транспортния маршрут в пилотния регион направи възможно възстановяването на разходите за разработване и изпълнение на проекта за 7 месеца.
Моделирането като средство за решаване на сложни проблеми
Горните принципи не отменят възможността за ефективно прилагане на многоагентни технологии на практика. В действителност, в задачите за подпомагане на вземането на решения, възможността за описване на нова предметна област като мрежа от взаимодействащи агенти прави възможно съвсем просто да се формализират основните стратегии за взаимодействие, а симулацията на основните процеси на такова взаимодействие позволява да се изучават основните модели и да се определят ситуации, които човек често не може да предвиди. В този смисъл многоагентните светове показват висока полезност като средство за моделиране на реални процеси в икономическите системи и организации.
Например, днес сред мениджърите, които прилагат нови подходи за управление на предприятие, екип, производствен процес, една от най-популярните методологии е теорията на ограниченията на Голдрат [4, 5]. В същото време, управлявайки по нов начин, те практически не използват информационни системи за моделиране на управленски решения, а разчитат само на своя опит и интуиция.
Теорията на ограниченията се основава на предпоставката, че съвременните системи, коитокоито мениджърът трябва да управлява са твърде сложни, а външните промени са непредсказуеми, което прави невъзможно подобряването на управляваната система чрез изграждане на идеален математически модел. Вместо това подобрението се постига итеративно чрез идентифициране и елиминиране на тесните места. Теорията на ограниченията се основава на следния принцип: производителността на цялата система е ограничена от няколко ограничения, премахването на които позволява увеличаване на производителността на цялата система.
Отхвърляйки възможността за изграждане на математически модел на контролирана система, теорията на ограниченията използва метода на логическото разсъждение като инструмент за идентифициране на тесните места в системата: той може да даде отговор на кое място от контролираната система, вероятно, е необходимо да се фокусират промените, насочени към подобряване, но не може да даде количествена оценка. Например в [5] за проблема с управлението на хотела се посочва, че на етапа на планиране не е известно какъв запас на безопасност трябва да бъде заложен, за да могат хотелските услуги да работят на високо ниво. Ако за всяко предприятие имаше математическа или статистическа формула за изчисляване на необходимото количество резервни ресурси, тогава да станете мениджър би било много по-лесно.
Например: Magenta Development реализира пилотен проект, чиято цел е да се използва модул за планиране с множество агенти за внедряване на симулационен модел и количествено определяне на решенията, получени въз основа на модела на разсъждение на Goldratt. Същността на проблема беше следната: собственикът на хотела губи пари, клиентите на хотела са недоволни от нивото на обслужване; собственикът трябва да предприеме управленски стъпки, за да изведе компанията от кризата. Като входни данни за решаване на проблема се разглеждат оплаквания от посетители, които се свеждат до следния списък: 204 касаят ресторанта,166 - работа на асансьора, 127 - размер на стаята, 125 - опашки за настаняване, 94 - обслужване по стаите, 10 - неработещо оборудване.
За да се моделира този проблем, светът на агентите на системата за управление на хотели е изграден на базата на мултиагентна платформа, разработена за транспортна логистика. Светът на агентите включва: клиенти, поръчки за ресторантьорски услуги и поръчки за настаняване в хотел; агенти на асансьор, ресторант, рецепция с описание на съответните отношения "Рецепция - Асансьор", "Рецепция - Ресторант" и "Рецепция - График".
Всъщност тази картина до голяма степен повтаря света на агентите, създадени за транспортна логистика. Видовете агенти и техните аналози в областта на логистиката са изброени в таблицата.