Методология мультиагентного управления распределенными вычислениями
Решение крупномасштабных научных и прикладных задач в разнородной распределенной вычислительной среде (РВС), которая интегрирует ресурсы центра коллективного пользования и облачную инфраструктуру, порождает новые проблемы для систем управления заданиями приложений пользователей среды. Эти проблемы обусловлены существующими различиями в моделях облачных вычислений и распределенных вычислений в рамках центра, а также противоречиями между предпочтениями владельцев ресурсов и критериями качества решения задач пользователей среды. Агентный подход позволяет существенно смягчить перечисленные выше различия и противоречия в рамках взаимодействия агентов, представляющих ресурсы центра и облачные ресурсы, а также владельцев и пользователей ресурсов. При этом, координация действий агентов позволяет существенно улучшить качество управления, особенно при использовании рыночных механизмов регулирования спроса и предложения ресурсов.
Другой составляющей процесса повышения качества управления распределенными вычислениями является проблемная ориентация системы управления. Ее важность обусловлена необходимостью эффективного интегрированного использования разнородных ресурсов среды в процессе решения общей задачи, учета специфики решаемых задач, согласования предпочтений владельцев ресурсов и критериев решения задач пользователей среды, а также поддержки автоматического принятия решений в системах управления заданиями масштабируемых приложений. Эффективность работы агентов напрямую зависит от используемых ими знаний. В применяемых на практике известных средствах мультиагентного управления вычислениями процессы извлечения и применения агентами знаний остаются актуальной проблемой и обоснованно требуют своего развития.
В этой связи в ИДСТУ СО РАН разрабатывается экспериментальная проблемно-ориентированная мультиагентная система (МАС) для управления заданиями масштабируемых приложений (распределенных пакетов прикладных программ) в разнородной РВС с виртуализированными ресурсами, организованной на базе ресурсов Центра коллективного пользования «Иркутский суперкомпьютерный центр СО РАН». Агент в такой системе представляет собой программную сущность, наделенную правами и обязанностями по обслуживанию вычислительного процесса и управления им. Разные агенты представляют интересы пользователей и владельцев ресурсов. Они взаимодействуют между собой в процессе выполнения заданий, координируя свои действия на основе кооперации или конкуренции в зависимости от поставленных им целей, исполняемых ими ролей и своих ментальных свойств. Управление реализуется с использованием тендера вычислительных работ, базирующегося на модели закрытого однораундового аукциона Викри второй цены.
Экспериментальная МАС имеет иерархическую структуру. Она включает несколько уровней функционирования агентов. На каждом уровне могут функционировать агенты, играющие различные роли и выполняющие функции, которые соответствуют этим ролям. Роли агентов (постоянные или временные) возникают в дискретные моменты времени в связи необходимостью организации коллективного взаимодействия. Уровни иерархии агентов отличаются объемом знаний – агенты более высокого уровня владеют более широким спектром информации по сравнению с агентами более низкого уровня и, кроме того, имеют возможность обращаться к агентам любого ниже лежащего уровня с запросом на получение локальных знаний этих агентов.
Базы знаний агентов формируются на основе концептуальной модели РВС, которая, в отличие от известных вычислительных моделей, включает знания как о среде, так и о предметных областях решаемых задач. Использование концептуальной модели среды позволяет разработчикам приложений представлять и структурировать результаты экспертного анализа их предметных областей. Тем самым обеспечивается предметная ориентация МАС. Данные о текущем состоянии РВС собираются и обобщаются специализированной системой метамониторинга.
Агенты автономны. Они способны объединяться в виртуальные сообщества, а управление вычислениями основано на их локальных взаимодействиях посредством сотрудничества или конкуренции. При выполнении заданий агенты осуществляют распределение ресурсов на основе экономических механизмов регулирования их спроса и предложения. В процессе вычислений агенты могут перераспределять свою вычислительную нагрузку среди других агентов. Ключевыми этапами управления заданиями является применение системы классификации заданий и параметрической настройки алгоритмов функционирования агентов, основанной на имитационном моделировании.
Исследования выполнены при поддержке РФФИ, проект № 16-07-00931-а.