Научная статья на тему 'Программное обеспечение для управления ресурсами в сложных системах с использованием многоагентного подхода'

Программное обеспечение для управления ресурсами в сложных системах с использованием многоагентного подхода Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
205
27
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
многоагентные технологии / агент / управление ресурсами / multi-agent approach / agent / resource management

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Ризванов Дмитрий Анварович

Предлагается использовать многоагентные технологии и технологии инженерии знаний для управления ресурсами в сложных системах. Представлен обобщенный алгоритм распределения ресурсов, базирующийся на использовании многоагентных технологий. Разработано программное обеспечение для распределения ресурсов в чрезвычайных ситуациях.

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

ABOUT SOFTWARE DEVELOPMENT FOR RESOURCE MANAGEMENT IN COMPLEX SYSTEMS USING MULTI-AGENT APPROACH

It is proposed to use multi-agentbased technologies and knowledge engineering for resource management in complex systems. The general resource allocation algorithm based on multiagent technology is presented. A software for resource allocation in emergency situations is implemented.

Текст научной работы на тему «Программное обеспечение для управления ресурсами в сложных системах с использованием многоагентного подхода»

УДК 004.89 Ризванов Дмитрий Анварович,

к. э. н., доцент кафедры ВМиК, Уфимский государственный авиационный технический университет,

тел. 89174095406

ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ ДЛЯ УПРАВЛЕНИЯ

РЕСУРСАМИ В СЛОЖНЫХ СИСТЕМАХ С ИСПОЛЬЗОВАНИЕМ МНОГОАГЕНТНОГО ПОДХОДА

D.A. Rizvanov

ABOUT SOFTWARE DEVELOPMENT FOR RESOURCE MANAGEMENT IN COMPLEX SYSTEMS USING MULTI-AGENT APPROACH

Аннотация. Предлагается использовать многоагентные технологии и технологии инженерии знаний для управления ресурсами в сложных системах. Представлен обобщенный алгоритм распределения ресурсов, базирующийся на использовании многоагентных технологий. Разработано программное обеспечение для распределения ресурсов в чрезвычайных ситуациях.

Ключевые слова: многоагентные технологии, агент, управление ресурсами.

Abstract. It is proposed to use multi-agent-based technologies and knowledge engineering for resource management in complex systems. The general resource allocation algorithm based on multiagent technology is presented. A software for resource allocation in emergency situations is implemented.

Keywords: multi-agent approach, agent, resource management.

Введение

Эффективное управление ресурсами в сложных системах невозможно без учета факторов, оказывающих существенное влияние как на процесс управления, так и на качество принимаемых решений и конечные результаты. Кроме этого лицу, принимающему решения по управлению ресурсами, необходимо учитывать влияние постоянно изменяющейся внешней среды.

Анализ основных исследований в области управления распределением ресурсов в сложных системах показал, что большинство разработанных методов работают только с числовыми данными и не учитывают слабоформализуемую информацию об особенностях предметной области и индивидуальные особенности, присущие ресурсам одного вида.

Таким образом, проблема распределения ресурсов является актуальной. При этом значительно возрастает роль качественного управления, по-

скольку от этого во многом зависит жизнеспособность системы в целом.

Особенности управления ресурсами сложной системы

В условиях динамично изменяющейся внешней среды к модели сложной социально-экономической системы (СЭС) предъявляются следующие требования: необходимость быстрого реагирования на изменения, адаптивность модели [1].

Предлагается рассматривать ресурсы следующих видов: материальные, финансовые, трудовые, энергетические и временные. Существенное влияние на процессы управления и распределения ресурсов оказывают следующие характеристики, присущие ресурсам: неоднородность, мобильность, взаимозаменяемость, комплексность, ограниченность и уникальность.

Для оценки эффективности распределения ресурсов могут существовать множество критериев, некоторые из которых могут противоречить друг другу. Общество, выступающее в качестве внешней среды для сложной социально-экономической системы, не только подвержено изменениям, но и развивается, что ведет к тому, что появляются новые виды ресурсов, возникают новые потребности, формируются новые критерии для оценки деятельности.

Для управления ресурсами в сложных системах в условиях изменяющейся внешней среды предлагается подход, который базируется на использовании многоагентных технологий и технологий инженерии знаний: многоагентных систем, онтологических моделей и семантических методов [1, 2].

Применение интеллектуальных технологий дает принципиальную возможность по-новому формулировать задачи и учитывать слабоформа-лизуемую информацию, что позволяет строить модели, которые точнее отражают свойства и взаимосвязи объектов реального мира. Это способ-

Информатика, вычислительная техника и управление. Моделирование. Приборостроение. Метрология. Информационно-измерительные приборы и системы

ствует повышению качества принимаемых решений за счет адекватности используемых моделей и оперативности реагирования на любые изменения внешней среды. Многоагентные технологии позволяют учитывать уникальные свойства, присущие ресурсам одного вида, не усложняя при этом саму модель, в то время как классические подходы рассматривают такие ресурсы как нечто одинаковое. Тем самым повышается адекватность самой модели.

Предлагаемый подход учитывает индивидуальные особенности моделируемых объектов реального мира, а также семантические ограничения предметных областей и позволяет получать допустимые планы распределения ресурсов в условиях множества критериев для обеспечения лица, принимающего решения, необходимой, достоверной и обоснованной информацией.

Обобщенный алгоритм распределения ресурсов

Предлагается использовать для решения задач управления ресурсами многоагентные технологии. В качестве базовой используется модель агентов, предложенная М. Вулдриджом и Н. Дженнингсом [3]. Агентам для решения задач распределения ресурсов соответствуют сущности, выступающие в реальном мире потребителями и/или поставщиками ресурсов, а также сами ре-

сурсы. Для решения задачи распределения ресурсов агенты вынуждены взаимодействовать и вступать друг с другом в переговоры, которые моделируются коммуникациями.

В большинстве случаев задача распределения ресурсов имеет глобальный критерий эффективности, который необходимо достичь путем соответствующего распределения ресурсов. Тогда поведение агентов может считаться кооперативным, поскольку только учет взаимных интересов позволяет решить задачу, и основано на разработанной математической модели. В то же время каждый агент может иметь свои локальные критерии, определяющие эффективность полученного решения для конкретного агента. Например, одно решение может быть более предпочтительным по сравнению с другим на основе использования локальных критериев эффективности, несмотря на то, что они могут быть абсолютно одинаковы с точки зрения общего критерия эффективности.

Многоагентные технологии позволяют успешно решать задачи управления ресурсами с учетом как глобальных, так и локальных критериев.

Общая схема решения задачи распределения ресурсов может быть представлена в виде обобщенного алгоритма (рис. 1).

Любые сложноформализуемые семантиче-

Инициалиэация 53 и Чита

Формирование списка

НаобкОДИМЫХ (№СурШ&

Цикл го списку необходимых ресурсов

Поиск агентов, отвечающих ЭЭ нужный ресурс

Поиск Д1ен1г>н, обладающих необходимым ресурсом

Пере_оворы оо обмене ресурсами

При ведении переговоров допустимость решения определяется на основе семантических ограничений предметной области, представленных в виде онтологии

ПpиevлeмQcть распределения ресурсов для каждого агента в отдельности определяется в соответствии с заложенными в БЗ кри гери ян и

/ Конец \

V )

Рис. 1. Обобщенный алгоритм распределения ресурсов на основе многоагентных технологий

ИРКУТСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ ПУТЕЙ СООБЩЕНИЯ

ские ограничения предметной области представляются в виде онтологической базы знаний, используемой агентами для решения задачи. Кроме того, база знаний агента используется для описания критериев, отражающих приемлемость распределения ресурсов, и учитывает индивидуальные особенности моделируемых объектов реального мира.

При ведении переговоров агенты определяют допустимость и приемлемость для них решения на основе индивидуальной базы знаний. Таким образом, если меняются критерии и предпочтения у какого-то агента, достаточно внести изменения в его локальную базу знаний. При этом сама процедура ведения переговоров остается без изменений [4].

Рассмотрим далее работу алгоритма на примере решения задачи распределения ресурсов в чрезвычайных ситуациях.

Постановка задачи распределения ресурсов в условиях чрезвычайных ситуаций (ЧС)

Рассмотрим задачу рационального распределения ресурсов в чрезвычайных ситуациях, описанную в [2, 4].

Введем следующие обозначения:

Р = (Р;, ..., Рм] - множество пациентов;

А = (А;, ..., Ам] - множество транспортных средств;

Н = (Н1, ..., Нк] - множество больниц;

1 - индекс пациента;

ф - индекс транспортного средства;

к - индекс больницы;

Хф - факт доставки пациента 1 на транспортном средстве ф в больницу к (Х1]к = 1, если пациент 1 перевозится на транспортном средстве ф в больницу к, илиХук = 0 иначе);

Z(Pi, Аф) - затраты на перевозку пациента Р1 в транспортном средстве А}-;

й(Рг, Нк) - расстояние от местоположения пациента Р1 до больницы Нк;

Ргвв(Нк) - количество свободных мест в больнице Нк;

- коэффициент, отражающий предпочтительность транспортного средства ф для транспортировки пациента 1;

51к - коэффициент, отражающий предпочтительность транспортировки пациента 1 в больницу к,

0 < ^ < 1, 0 < 8гк < 1.

Чем ближе Бу (или 5гк) к 1, тем более предпочтительны выделенные ресурсы, и наоборот.

Будем полагать, что расстояния от одного места до другого определяются внешними сервисами или на основе имеющейся онтологии, а ко-

личество свободных мест в больнице нам известно из имеющейся онтологии.

Требуется найти такое распределение ресурсов (матрицу Хф), при котором целевая функция, отражающая затраты на транспортировку пострадавших в больницы с учетом степени соответствия выбранных для этой цели ресурсов, была бы минимальна:

„ ^М^Хфк [ 2 (Р, А, ) й (Р , Нк )] . F = ------> т1П-

¿=1 j=i k=i

Sk

При этом должны быть учтены следующие ограничения:

1. Одно транспортное средство может использоваться для транспортировки только одного пациента:

N R

ZZ Xjk = 1 V j

i =1 k=1

2. Для транспортировки одного пострадавшего используется только одно транспортное средство:

M R

ZZ Xvk = I V i.

j=1 k=1

Количество пострадавших, транспортируемых в конкретную больницу, не должно превышать количества свободных мест в ней:

NR

ZZХФ *Free (Hk) V j■

i =1 k =1

3. Для транспортировки пострадавших используется только такой вид транспорта, который соответствует характеру и тяжести повреждений (семантическое ограничение задачи).

4. Пострадавший может быть доставлен только в определенный тип больницы в соответствии с характером и тяжестью повреждений (семантическое ограничение задачи).

Представленная математическая модель позволяет найти рациональное распределение ресурсов для транспортировки потерпевших в больницу. Решение задачи строится с использованием многоагентных технологий и подробно описано

в [1, 2].

Программная реализация

Каждый ресурс представляется с помощью агента. В данном случае можно выделить 3 основных класса агентов: пациенты, транспорт и больницы.

• Больницы - это статичный класс агентов, который обладает информацией о своем местоположении, количестве свободных мест в данный момент, а также специфических характеристиках

Информатика, вычислительная техника и управление. Моделирование. Приборостроение. Метрология. Информационно-измерительные приборы и системы

больницы (взрослая/детская, ожоговый центр и т. д.).

• Пациенты - это активный класс агентов, в который заложена информация о местоположении, поле, возрасте, диагнозе, степени тяжести и т.д. Эти агенты обладают целью доставить себя до больницы, соответствующей их диагнозу и степени тяжести, в установленное время (которое тоже может задаваться в характеристиках агента).

• Транспорт - класс агентов, обладающий следующими характеристиками: вид, текущее местоположение, место постоянной дислокации (куда нужно вернуться после доставки пациента), скорость, специфические особенности транспорта (связанные с диагнозом и тяжестью).

Каждый агент «Пациент» имеет цель, которая представлена в виде функции полезности. Особенность решаемой задачи определяет характер взаимодействия и поведения агентов «Пациент» при достижении поставленных целей. В нашем случае поведение агентов «Пациент» не является антагонистическим, так как они должны работать вместе, чтобы решить общую задачу: все они должны быть доставлены в больницы при помощи соответствующих транспортных средств при минимальных затратах. С учетом указанных обстоятельств функция полезности, которая определяет поведение агентов «Пациент», не принимает во внимание их собственную выгоду, а учитывает общие затраты на транспортировку всех пострадавших. С другой стороны, агент «Пациент» имеет информацию только о стоимости своей собственной транспортировки (эта величина может быть рассчитана). Для достижения своих целей агенты «Пациент» ведут переговоры друг с другом. Суть этих переговоров состоит в том, чтобы при совместном использовании ресурсов (транспортных средств, больниц) для решения своих собственных задач получить лучшее решение. Таким образом, общая целевая функция и, следовательно, функция полезности для каждого агента «Пациент» улучшится.

В работе алгоритма можно выделить два этапа: первоначальное распределение ресурсов и последующее их перераспределение. На первом этапе происходит поиск и захват необходимого ресурса. На втором этапе агенты, получившие не самые выгодные для себя ресурсы, пытаются получить более выгодные ресурсы путем переговоров с другими агентами.

Более подробно работа алгоритма распределения ресурсов в ЧС и схема взаимодействия агентов при ведении переговоров описаны в [5].

На базе агентной платформы JADE разработан прототип многоагентной системы распределе-

ния ресурсов в ЧС, интерфейс которого представлен на рис. 2.

Ciapr

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

fjBcrti^ifzisijaiwiosDfjyjb ГЛвПС2@172 16 1Л.11109диЧ)Е

| ч.' 1 , 16 1JJ ДА loaHLUnF

T^LTÎii

PaiareSfilT? 16 1JJ ЗЛ lOBHtunF

1Д.1в.и*Я ними ïcTmaiwfla'ps

FjBçrtUg 1 га 1S ' АА ljnj,jhi:t

Pjflorf13(j1 г? 1U Ч'4 ЗЯ0ЙШ1Ы

1E ги J31:

с

Рис. 2. Интерфейс прототипа многоагентной системы распределения ресурсов в ЧС

Интерфейс достаточно простой и разработан с целью продемонстрировать возможности программы. Для того чтобы приступить к работе, достаточно нажать кнопку «Старт». После этого происходит загрузка исходных данных и генерация агентов. Далее система запустится, и начнётся распределение ресурсов между агентами. Результаты распределения можно наблюдать в режиме реального времени в правой части графического интерфейса прототипа. Суммарные затраты на транспортировку отображаются в соответствующем поле. В процессе работы также можно добавлять новых агентов, если в этом существует необходимость.

Для увеличения мобильности приложения была разработана клиентская версия для мобильной платформы, управляемой операционной системой Android. Мобильное приложение, интерфейс которого представлен на рис. 3, обладает следующими возможностями:

- предоставление актуальной информации о пострадавших, а также информации о транспорте, который для них необходим;

- организация обмена информацией между основным управляющим центром и всеми клиентами, что, в свою очередь, позволяет поддерживать актуальность данных.

При подключении к серверу на нем создаётся новый агент, отвечающий за связь устройства с многоагентной системой. После этого появляется возможность свободно обмениваться сообщениями с другими агентами. Далее созданный агент отправляет запрос на получение данных и в качестве ответа получает информацию о текущем состоянии агентов и выводит данные на форму. Ак-

ИРКУТСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ ПУТЕЙ СООБЩЕНИЯ

^'5554:ега32

Re sou rce Android

ш*

а

172.16.124.33

1099

Test

Connect Disconnect

Info agents

Patient2@172.16 Patientl @172.1 б Patient3@172.16 Patient6@172.16 Patient4@l72.16 Patient7@172.16 Patient5@172.1 б Patient8@172.16 Patient9@172.16 Patient 11 @172.1 Patientl 2@172.1

124.33:1 124.33:1 124.33:1 124.33:1 124.33:1 124.33:1 124.33:1 124.33:1 124.33:1 6.124.33: 6.124.33:

Q99/JADE:Auto20

099/jADE:Auto22

099/jADE:AutOl5

099/jADE:Auto2

099/jADE:Auto9

099/jADE:Auto18

099/jADE:Auto1

099/jADE:Auto11

099/jADE:Auto6

1099/JADE:Auto4

1099/fADE:Auto26

туальность информации поддерживается путем периодических запросов на ее получение.

Рис. 3. Интерфейс мобильного приложения Заключение

В статье предлагается подход, базирующийся на применении многоагентных технологий и технологий инженерии знаний к управлению ресурсами в сложных системах. Применение интеллектуальных технологий позволяет повысить адекватность и оперативность управления ресурсами в сложных системах за счет возможности учета индивидуальных особенностей моделируемых сущностей реального мира и слабоформали-зуемых семантических ограничений предметной

области. Разработанный обобщенный алгоритм распределения ресурсов, основанный на использовании многоагентного подхода, обладает гибкостью и универсальностью и не зависит от специфики предметной области. Разработанное программное обеспечение позволяет распределять ресурсы в режиме реального времени.

Данное исследование поддержано грантом РГНФ 12-02-00190 и грантами РФФИ 11-07-00687-а и 12-07-00631-а.

БИБЛИОГРАФИЧЕСКИЙ СПИСОК

1. Ризванов Д. А. Применение многоагентных технологий для решения задачи распределения ресурсов в условиях чрезвычайных ситуаций // Вестн. УГАТУ. 2012. Т. 16, № 6 (51). С. 220225.

2. Ризванов Д. А., Габдулхакова А. Р. Много -агентный подход к задаче распределения ресурсов в условиях чрезвычайных ситуаций // Информационные и математические технологии в науке и управлении : материалы XVI Байкал. Всерос. с междунар. участием конф. Иркутск, 2011. Т. 3. С. 25-33.

3. Wooldridge M. J., Jennings N. R. Intelligent Agents: Theory and Practice // The Knowledge Engineering Review. 1995. 10 (2). P. 115-152.

4. Gabdulkhakova A., König-Ries B., Rizvanov D. An Agent-based Solution to the Resource Allocation Problem in Emergency Situations // Proc. 9th IEEE European Conf. on Web Services (ECOWS 2011), 14-16 Sept. 2011, Lugano, Switzerland. PP. 151-157.

5. Gabdulkhakova A., König-Ries B., Rizvanov D. Rational Resource Allocation in Mass Casualty Incidents - Adaptivity and Efficiency // Proc. 9th Int. ISCRAM Conf. Vancouver, Canada, April 2012. Available URL: http://www.iscramlive.org/ IS-CRAM2012/proceedings/183.pdf.

i Надоели баннеры? Вы всегда можете отключить рекламу.