6. Марусина М.Я., Суворов Н.Б., Козаченко А.В., Толкович Д.В. Синхронизация физиологических сигналов интеллектуальной деятельности человека с помощью многофункционального измерительного комплекса // Научно-технический вестник информационных технологий, механики и оптики. - 2013. - № 4 (86). - С. 49-56.
7. Арсеньев А.В., Волченко А.Н., Лихачева Л.В., Печерский В.И. Применение метода ВЧ-ближнепольного зондирования в диагностике биообъектов // Научно-технический вестник СПбГУ ИТМО. - 2011. - № 2 (72). - С. 154-157.
8. Коробейников А.Г., Копытенко Ю.А., Исмагилов В.С. Интеллектуальные информационные системы магнитных измерений // Научно-технический вестник СПбГУ ИТМО. - 2011. - № 1 (71). - С. 39-45.
Денисов Виктор Маевич - Россия, Санкт-Петербург, ЗАО «Специальное конструкторское бюро прибо-
ров подземной навигации», доктор технических наук, заместитель генерального директора, [email protected]
Радилов Андрей Владимирович - Россия, Санкт-Петербург, Санкт-Петербургский филиал Института земного
магнетизма, ионосферы и распространения радиоволн РАН, ведущий программист, [email protected]
УДК 004.75, 004.62, 004.942
АГЕНТНОЕ ВЗАИМОДЕЙСТВИЕ В ИНФОРМАЦИОННОЙ СИСТЕМЕ ПРЕДПРИЯТИЯ С АДАПТАЦИЕЙ МЕХАНИЗМОВ РАБОТЫ И ИНТЕРФЕЙСА ПОЛЬЗОВАТЕЛЯ А.В. Владимиров
Изложена проблема функционирования крупных информационных систем, обрабатывающих большие объемы разнородной информации на предприятии. Разработана структура адаптивной информационной системы с выделением основных сегментов: административный и сервис-агентный, сегмент оперирования с данными, интеллектуальный сегмент. Приведены функции компонентов системы. Разработана структура агентной составляющей адаптивной информационной системы. Выделены основные составляющие модели агентного взаимодействия: агент координации, агент адаптации, агент базы знаний, агент базы данных, агент пользователя для разработки модели процесса взаимодействия агентов в многоагентной адаптивной информационной системе с использованием аппарата цветных сетей Петри. Рассмотрены основные состояния агентов, используемые в процессе обработки задач. Исследована работа модели на разных этапах, произведен анализ основных свойств системы. Анализ позволил выявить наиболее загруженные составляющие. Проведен сбор статистики использования инструментов пользователями предприятия. На основе полученных статистических данных пользователей разработаны и исследованы процессы адаптации механизмов работы системы, интерфейса. Применение элементов алгоритма позволило сократить время, затрачиваемое работниками предприятия на поиск необходимых элементов, инструментов, упростить процесс взаимодействия пользователей с системой, модифицировать работу системы при высоких нагрузках с копированием исполняющих агентов.
Ключевые слова: многоагентные адаптивные системы, моделирование взаимодействия агентов, цветные сети Петри, агентная архитектура.
Введение
В настоящее время на промышленных предприятиях нужны системы, способные адаптироваться под возникающие требования к их функционированию. В некоторых случаях необходимо производить адаптацию работы системы при минимальном вмешательстве человека или при его отсутствии. Важными проблемами в сфере функционирования крупных адаптивных информационных систем являются проблемы внутреннего взаимодействия компонентов, которые порождаются большими объемами неупорядоченной разнородной информации. Адаптивные информационные системы позволяют динамически учитывать предоставляемые персональные требования пользователей, перераспределять рабочие процессы между компонентами системы, реагировать на возникающие проблемные ситуации, более эффективно использовать ресурсы системы.
На рассматриваемых в процессе исследования предприятиях использовались информационные системы, не позволяющие решать такие проблемы, как объединение больших объемов гетерогенной информации, поиск по распределенным источникам информации, быстрый доступ к распределенной информации, предоставление пользователям набора инструментов, позволяющего быстрее решать поставленные задачи, снизить нагрузку на некоторые элементы, входящие в структуру системы. Применение агентно-ориентированного подхода с использованием элементов адаптации механизмов работы системы и ее интерфейсов позволяет упростить процесс взаимодействия пользователей с системой, сократить затрачиваемое на выполнение задач время, снизить потребление ресурсов системой [1, 2]. Использование многоуровневой архитектуры при построении информационной системы совместно с агентно-ориентированным подходом и элементами адаптации является отличительной особенностью проводимого исследования.
Таким образом, поставленные в настоящей работе задачи исследования адаптации механизмов работы интерфейсов информационных систем являются актуальными как с научной, так и с практической точек зрения.
Описание общей структуры системы
Опишем алгоритм взаимодействия информационной системы с пользователем, а также ее структуру (рис. 1). Выделим три сегмента в системе:
1. административный и сервис-агентный сегмент;
2. интеллектуальный сегмент;
3. сегмент оперирования с данными.
Рис. 1. Структура адаптивной информационной системы
Административный и сервис-агентный сегмент включает в себя инструменты администрирования базы знаний, базу данных, агента мониторинга, агента базы знаний, агента пользователя, агента базы данных, сервис формирования запрашиваемых данных, сервис извлечения данных, сервис поиска и накопления данных, сервис доступа к данным, сервис сбора данных о рабочем процессе. Интеллектуальный сегмент включает в себя базу знаний, агента управления, модуль управления сервисами, сервис адаптации, агента адаптации. Сегмент оперирования с данными включает в себя интерфейс пользователя.
В процессе работы системы от пользователя поступает запрос через интерфейс пользователя с последующим запуском процессов по обработке данных соответствующими сервисами и далее агентами. Поиск решения сервисом или агентом основывается на входных данных и информации, хранящейся в базе знаний. База знаний модифицируется экспертом через модуль управления базой знаний и включает в себя базы правил, факты, информацию, описывающую интерпретацию фактов. Уровень сервисов осуществляет необходимую трансляцию запросов агентов в необходимые действия по работе с распределенными данными. Они выполняет необходимые операции, включающие доступ к back-end ресурсам и
форматирование данных для представления агентам. Логический элемент базы знаний включает основной набор алгоритмов для работы с фактами и правилами, механизмы логического вывода, а также принимает входные факты и запросы, проверяет, соответствуют ли переданные факты хранящейся в базе знаний логической модели предметной области, осуществляет логический вывод, исходя из входящих данных, а также формирует результаты выполнения запроса [3].
Структура агентной составляющей
При рассмотрении структуры адаптивной информационной системы стоит уделить внимание сегменту, содержащему набор разноцелевых агентов, а также моделированию их взаимодействия. Разберем далее более детально агентную составляющую информационной системы, включающую агентов исполнителей - агента мониторинга, агента базы знаний, агента пользователя, агента базы данных, агента адаптации, а также агента управления. Агент управления осуществляет координацию работы подчиненных ему агентов и постановку задач. Агент мониторинга производит слежение за текущим состоянием агентов в системе, количеством поступивших задач. Агент базы данных предназначен для осуществления взаимодействия с базой данных, резервного копирования информации. Агент базы знаний осуществляет передачу входных запросов к базе знаний. Агент пользователя позволяет собирать информацию о действиях пользователей. Агент адаптации собирает данные о функционировании используемых пользователем компонентов системы [3].
Моделирование взаимодействия агентов
Процесс взаимодействия между агентами в многоагентной информационной системе рассмотрим с использованием аппарата цветных сетей Петри [4]. В цветных сетях Петри важное место занимает типизация данных, основанная на использовании множества цветов. Рассмотрим построение агентной составляющей и ее моделирование в среде CPN Tools [5] на следующем примере. На рис. 2 изображена сеть Петри, моделирующая процесс на начальной стадии. В данной ситуации определено множество цветов tasks с элементами tasksfor_knowledgebase_agent, tasksfor database agent, tasksfor adaptation agent, tasksfor_monitoring_agent, tasksfor_user agent, taskforagentcoordination, обозначающими соответствующие задачи для каждого из имеющихся агентов. Позиция coordination service имеет множество цветов q с фишкой coordinationtask, переходящей в позицию agent coordination, тем самым инициализируется процесс координации задач агентом управления. Агент координации распределяет задачи в соответствии с указанным типом задачи. Агент мониторинга с использованием счетчиков Counter собирает информацию о количестве задач у каждого из агентов с целью выявления степени загруженности определенных агентов. Если текущая задача находится в процессе обработки, то следующая задача добавляется в конец очереди Queue. Задачи обслуживаются по принципу «первым пришел - первым обслужен» (FIFO). В случае отсутствия задач в очереди новые поступающие начинают обрабатываться незамедлительно.
В процессе обработки задач агентами (рис. 3) используются следующие состояния: user agent free (агент пользователя свободен), user agent busy (агент пользователя занят), user agent use (агент пользователя используется). Также используются состояние wait (ожидание обработки агентом), состояние timer 2c (таймер на 2 секунды) типа Boolean, которое служит для моделирования задержки, принимая от перехода захвата агента фишку с временным штампом. Фишки, находящиеся при инициализации обработки задачи в позициях, свидетельствующих о том, что агент свободен, в ходе работы сети отражают его состояние (свободен или занят), при этом цвет фишки содержит информацию о задаче, обрабатываемой агентом. После поступления задачи на обработку переход, свидетельствующий о том, что агент захвачен, сработать не сможет, так как нет фишки в позиции, свидетельствующей о том, что агент свободен. Не разрешен также переход, свидетельствующий о том, что агент выполняет обработку из-за того, что фишка, имитирующая таймер, несет временной штамп, равный 2000 мс. Если установлено, что нет доступных переходов, происходит наращивание счетчика глобальных часов до тех пор, пока не «откроется» переход, свидетельствующий о том, что агент выполняет обработку, так как штамп фишки в позиции timer 2c окажется равен значению глобальных часов. В результате начнется освобождение агентов посредством срабатывания перехода, свидетельствующего о том, что агент выполняет обработку. Таким образом, позиция, свидетельствующая о том, что агент свободен, приобретает фишку со значением done (задача выполнена), переход захвата агента активизируется, перемещая следующую фишку на позицию использования агента. Процесс обработки задач прекращается в случае, если не остается фишек в позиции wait [6, 7].
На конечной стадии процесса моделирования (рис. 4) определяется общее количество задач, выполненных агентами. Агент координации является наиболее загруженным элементом.
При выполнении процесса моделирования сложных систем на базе аппарата сетей Петри задается определенное количество входных задач и анализируется поведение системы. На основе выходных данных формируются статистические результаты.
Рис. 2. Схема начальной стадии формирования задач
Рис. 3. Процесс обработки задач агентом пользователя
lllserAqentGroup I
| KnowledgebaseAgentGroup
ФЕИ
[c=tasks_For_know ledgeba se/a gen i
J3 ь FormQ
L *
'>ЛЛМ -с:
А
processing
Л
\ / \ [b=tasks_for_ u: 1' ta s k_user_a gent ™
ledgebase_agent
1' ta s k_user_a ge n t
processing
J
1" task_adaptation_agent
18' ta sk_know I edg eba se„a gent++ 21' ta sk_ jser„agent+ +■ 214a sk_data base„agent++ 2 0 4a sk_a da ptatio n^age nt_
>20^---
f Agent Coordination }
|Z0'tii5k_for_a*ert_coordination@ill ^ks_for_adaplatlon_agcrtf
1' task_adaptat[dn_agent
^^ordlnatlon Servki^^
100' coordlinatlon_task@l
Рис. 4. Схема финальной стадии моделирования взаимодействия агентов Адаптация механизмов работы системы
Под адаптацией понимается возможность приспосабливания к изменениям, возникающим в среде функционирования. Адаптивной информационной системой является система, способная менять алгоритмы функционирования в зависимости от существующих условий. Основной особенностью адаптивных многоагентных информационных систем является их способность к функционированию в условиях ввода в работу новых и вывода из строя действующих агентов без остановки всей системы, предоставлению интерфейсов с наиболее используемыми наборами инструментов. Причиной изменения состава агентов является необходимость их количественного наращивания в случае перегрузок. Использование двухуровневой архитектуры с функциональным разделением агентов и выделением соответствующих агентов, отвечающих за адаптацию, позволило производить балансировку нагрузки на исполняющие элементы.
При разработке многоагентных информационных систем на основе принципа адаптации в число решаемых задач входят:
1. динамическая реконфигурация путем изменения состава агентов и их взаимосвязей;
2. повышение эффективности при обработке запросов.
Алгоритм динамической реконфигурации основан на применении механизмов:
1. регистрации агентов у агента-координатора взаимодействия путем переговоров;
2. мониторинга функционирования многоагентной системы;
3. определения агентов для обработки вновь поступающих запросов.
При реконфигурации избыточные ресурсы системы вводятся в работу по мере перегрузки основных ресурсов. Вновь вводимые компоненты системы могут как находиться в резервном режиме, так и активизироваться на серверах при возникновении необходимости. Агент мониторинга реализует заданную программу мониторинга и отправляет данные агенту координации, на основании чего производится формирование списка агентов, способных выполнить запрашиваемые функции. Результаты моделирования сохраняются в поименованных переменных и характеризуют загрузку агентов, определяемую по результатам тестирования (в виде числа исполняемых ими задач).
Рассмотрим алгоритм динамического распределения запросов. Особенностью многоагентных адаптивных систем является изменяющаяся во времени структура и взаимосвязи. Характерная черта алгоритмов распределения запросов между агентами - реализация переговоров о возможности выполнения ими новых задач. Если единичный агент содержит в своей очереди достаточно большое количество задач (более 200), по шаблону перегруженного агента создается его копия. Агент мониторинга фиксирует количество задач у всех копий агентов. Если количество задач у копии агента превышает предельно допустимое установленное в системе значение, создается еще одна копия, и т.д. Если количество задач у копий агентов равно нулю, они исключаются из процесса работы системы, освобождаются ресурсы (рис. 5).
Реализация методики включает программирование агентов-координаторов запросов на основе правил распределения нагрузки между агентами-исполнителями запросов.
Алгоритм многоагентного выполнения запросов, таким образом, включает:
1. определение агентом-координатором списка возможных агентов на выполнение запросов к указанной предметной области;
2. уточнение списка агентов с учетом результатов мониторинга их функциональности;
3. определение плана реализации запросов на основе правил распределения нагрузки;
4. передачу задания на выполнение агентам-исполнителям. В случае поступления информации от агента мониторинга о том, что какой-либо агент перегружен, происходит корректировка плана обработки задач в соответствии с вышеприведенными пунктами.
Рис. 5. Механизм адаптации агентов
Рассмотрим алгоритм адаптации интерфейса для пользователей информационной системы применительно к следующим инструментам: «Новости и статьи», «Поиск», «Документы и файлы», «Заметки», «Проекты и задачи», «Объявления». На основе собранных данных получаем для инструмента «Новости и статьи» следующую статистику. В рабочие дни первой исследуемой недели пользователь отдела использовал данный инструмент с вероятностями: понедельник - 0,5, вторник - 0,25, среда - 0,33, четверг - 0,2, пятница - 0,44; на второй исследуемой неделе: понедельник - 0,33, вторник - 0,33, среда - 0,25, четверг -0,29, пятница - 0,67. После анализа полученных данных выбираем дни, для которых вероятность принимала среднее значение более 0,4: понедельник, пятница. В ранее указанные дни текущего месяца блок новостей и статей будет находиться на главной странице рабочего интерфейса пользователя в раскрытом состоянии. В каждых последующих месяцах первые две недели будет производиться новая калибровка. Если количество новостей и статей на сайте будет уменьшаться, по умолчанию минимальное значение, равное 0,4, будет и дальше использоваться. Если количество новостей и статей на сайте будет расти вме-
сте с количеством кликов пользователя по соответствующим новостям, то текущее минимальное значение, равное 0,4, будет увеличиваться на значение, равное разнице между суммами средних вероятностей за 2 недели для текущего и прошлого месяцев.
Для инструмента «Поиск» учитывается количество переходов со страницы поисковой выдачи на соответствующие материалы, для инструмента «Документы и файлы» фиксируется количество используемых документов, для инструмента «Заметки» учитывается количество заметок, с которыми взаимодействует пользователь, для инструмента «Проекты и задачи» фиксируется количество обращений к элементам данного инструмента, для инструмента «Объявления» фиксируется количество обращений к элементам блока, и в дальнейшем для данных инструментов по аналогичному алгоритму с использованием минимального порога вычисляется необходимость отображения на главном интерфейсе. Также фиксируется время работы, затраченное на взаимодействие с каждым инструментом. В зависимости от длительности формируется распределение элементов по рабочей области интерфейса сверху вниз и слева направо.
Заключение
Разработанная структура адаптивной информационной системы позволила смоделировать в среде CPN Tools процесс взаимодействия агентов. В результате исследования работы модели на разных этапах произведен анализ системы с выявлением наиболее загруженных элементов. Проведение сбора статистических данных относительно использования инструментов пользователями предприятия позволило получить вероятностные показатели, на основе которых разработаны и исследованы процессы адаптации механизмов работы системы и интерфейса. Применение многоуровневой архитектуры при построении информационной системы на производственных предприятиях, относящихся, согласно общей классификации, к среднему типу [8], совместно с агентно-ориентированным подходом и элементами алгоритмов адаптации позволяет сократить время, затрачиваемое работниками на поиск необходимой информации, инструментов, упростить процесс взаимодействия пользователей с системой, модифицировать работу системы при высоких нагрузках с копированием исполняющих агентов.
Литература
1. Швецов А.Н. Агентно-ориентированные системы: от формальных моделей к промышленным приложениям // Всероссийский конкурсный отбор обзорно-аналитических статей по приоритетному направлению «Информационно-телекоммуникационные системы». - 2008. - 101 с.
2. Гурьянов В.И. Многоагентная модель среды поддержки программного продукта для систем со слоистой архитектурой // Управление большими системами: Сборник трудов. - 2008. - № 22. - С. 101118.
3. Владимиров А.В. Общая модель взаимодействия интеллектуальных агентов в многоагентной адаптивной информационной системе. Вузовская наука - региону: Материалы 10-ой всероссийской научно-технической конференции. - Вологда: ВоГТУ, 2012. - C. 104-106.
4. Рыбина Г.В., Паронджанов С.С. Общая модель взаимодействия интеллектуальных агентов и методы ее реализации // Одиннадцатая национальная конференция по искусственному интеллекту с международным участием (КИИ 2008). Труды конференции. - М.: ЛЕНАНД, 2008. - Т. 2. - С. 382-390.
5. Jensen K., Christensen S. CPN Tools State Space Manual. - University of Aarhus. Department of Computer Science-2013. - 49 p.
6. Ratzer A.V., Wells L. CPN Tools for Editing, Simulating, and Analysing Coloured Petri Nets // Applications and Theory of Petri Nets 2003: 24th International Conference, ICATPN. - 2003. - P. 450-462.
7. Jensen K., Kristensen L.M. Coloured Petri Nets and CPN Tools for modelling and validation of concurrent systems // International Journal on Software Tools for Technology Transfer. - 2007. - P. 213-254.
8. Грузинов В.П., Грибов В.Д. Экономика предприятия: Учебное пособие. - 2-е изд., перераб. и доп. -М.: Финансы и статистика, 2000. - 208 с.
Владимиров Александр Владимирович - Россия, Вологда, Вологодский государственный технический университет, аспирант, [email protected]