The evolutionary algorithms for solving the problems of global optimization in the design of lens antenna arrays of microwave radio-electronic means are considered. A generalization of the results of solving optimization problems using algorithms for a swarm ofpar-ticles and cuckoo search in the process of synthesizing antenna systems at various stages of their development is presented. It is shown that heuristic algorithms have certain general characteristics, oriented strategies for obtaining solutions close to optimal.
Key words: optimization algorithm, antenna array, antenna array parameters, fitness function.
Kochetkov Vyacheslav Anatolyevich, candidateof technicalsciences, docent, buhtins@,mail.ru, Russia, Orel, Academy FSO Russia,
Alexey Gorshkov, candidate of technical sciences, employee, n.alymov@mail.ru, Russia, Academy FSO Russia,
Tikhonov Alexey Viktorovich, candidate of technical sciences, employee, put-nicorel@,mail. ru, Russia, Oryol, Academy FSO Russia,
Soldatikov Igor Viktorovich, employee, putnicorel@mail.ru, Russia, Oryol, Academy FSO Russia
УДК 004.7
ОБЗОР АЛГОРИТМОВ ПЛАНИРОВАНИЯ РАБОЧИХ ПРОЦЕССОВ В РАСПРЕДЕЛЕННЫХ ВЫЧИСЛИТЕЛЬНЫХ СИСТЕМАХ
С. А. Семенистый
В статье приводится анализ подходов ряда зарубежных исследователей к решению проблемы планирования рабочих процессов в распределенной вычислительной среде. Приведены основные идеи различных алгоритмов оптимизации размещения, как однокритериальных, так и многокритериальных. Описаны преимущества и недостатки некоторых алгоритмов. Анализ представленных алгоритмов показывает значительную перспективность использования машинного обучения в сочетании с мультиа-гентными технологиями для формирования решений в рассматриваемой области.
Ключевые слова: распределенные вычисления, облачные вычисления, планирование задач, оптимизация размещения, рабочий процесс.
Концепция облачных вычислений позволяет создавать высокопроизводительные вычислительные среды с крупномасштабным разнородным набором автономных систем и гибкой вычислительной архитектурой [1, 2]. Они предоставляют инструменты и технологии для создания параллельных приложений с интенсивными вычислениями или большими потоками данными по гораздо более доступным ценам по сравнению с традиционными методами параллельных вычислений. Как следствие, наблюдается рост числа активных исследовательских работ в области облачных вычислений, связанных с проблемами планирования исполнения задач, размещения вычислительной нагрузки и данных, управления энергопотреблением, конфиденциальности, безопасности и т.д. [3-5].
Планирование рабочих процессов в облачной среде привлекает огромное внимание благодаря широкому применению как в научной, так и в экономической областях [6-11]. Рабочий процесс (workflow) обычно формулируется как направленный ациклический граф (Directed Acyclic Graph - DAG) с n задачами, которые удовлетворяют установленным ограничениям. Планированием рабочих процессов в облачных и грид-системах называется сопоставление задач с m поддерживающими вычислительными ресурсами, то есть реальными или виртуальными машинами (ВМ).
В общем случае, стратегия планирования заданий и рабочих процессов в облачных вычислениях должна соответствовать следующему набору требований целей планирования.
Ограничение QoS. При планировании задания пользователи обычно подписывают соответствующее соглашение об уровне обслуживания (SLA) с поставщиками облачных услуг. Ограничения качества обслуживания (Quality of Service - QoS) для планирования пользовательских заданий должны быть четко указаны в SLA, в частности, включая крайний срок подачи заявок, бюджет планирования заданий, надежность системы и безопасность службы [12]. Что касается приложений с интенсивным использованием данных, которые предъявляют относительно более высокие требования к пропускной способности сети, соответствующие требования к пропускной способности связи также должны быть предусмотрены в SLA. Чтобы получить как можно больший доход от услуг и обеспечить коммерческий успех системы облачных вычислений, необходимо полностью учитывать целевые ограничения QoS при планировании заданий пользователя, чтобы максимально удовлетворить потребности пользователя в QoS [13].
Балансировка нагрузки. В отличие от традиционного режима распределенных вычислений, который просто ориентирован на производительность времени выполнения задания и пропускную способность системы, такая модель облачных вычислений, как IaaS (Infrastructure as a Service - инфраструктура как услуга) представляет собой коммерческую вычислительную модель, направленную на максимальное увеличение доходов провайдера от предоставления услуг. Обеспечивая запланированные уровни QoS, балансировка нагрузки способствует сокращению расходов и повышению эффективности использования ресурсов в системе облачных вычислений.
Доход от услуг. Работая с крупномасштабными инфраструктурами, система облачных вычислений имеет тысячи и даже миллионы серверов, что приводит к более высоким производственным затратам. Введение некоторых экономических принципов и методов в планирование заданий облачных вычислений делает планирование заданий не только более разумным, но и более эффективным. Таким образом, еще одной важной целью стратегии планирования заданий стало повышение использования ресурсов облачных вычислений и максимизация доходов от услуг для поставщиков облачных услуг.
При многоцелевом планировании цели иногда могут противоречить друг другу. Например, для минимизации времени выполнения более предпочтительны быстрые виртуальные машины, чем медленные. Однако быстрые виртуальные машины обычно дороже, и поэтому минимизация времени выполнения может противоречить цели снижения затрат. Так как планирование многозадачного рабочего процесса на распределенных платформах является NP-трудной задачей, создание оптимальных расписаний с помощью алгоритмов обхода занимает чрезвычайно много времени. К счастью, эвристические и метаэвристические алгоритмы с полиномиальной сложностью способны производить приближенные или близкие к оптимальным решения расписаний за счет приемлемой потери оптимальности [14]. Хорошими примерами таких алгоритмов являются многокритериальная оптимизация роя частиц (Multi-Objective Particle Swarm Optimization - MOPSO) [15] и генетический алгоритм сортировки без доминирования-II (Nondominated Sorting Genetic Algorithm Version II - NSGA-II) [16]. Хотя эти алгоритмы обеспечивают удовлетворительные решения, они требуют большого количества пред-
варительных знаний экспертов и вмешательства человека. В различных публикациях [17-20] также отмечается, что теоретико-игровые модели и подходы хорошо подходят для решения проблем планирования рабочих процессов в облаке.
В последнее время, когда новые алгоритмы машинного обучения становятся все более универсальными и мощными, значительные исследовательские усилия вкладываются в использование обучения с подкреплением (reinforcement learning - RL) и алгоритмов на основе Q-обучения [21-24] для поиска близких к оптимальным решений для планирования рабочих процессов. Большинство существующих работ сосредоточены на планировании единственной цели рабочего процесса с ограничениями соглашения об уровне обслуживания (Service Level Agreement - SLA). Также существуют различные модели и методы многоагентного обучения с подкреплением (Multiagent Reinforcement Learning - MARL) для управления несколькими роботами, децентрализованной сетевой маршрутизации, распределенной балансировки нагрузки, электронных аукционов и задач управления трафиком. В качестве примера работы, в которой предложен метод планирования рабочих процессов на основе MARL, можно привести [25], в которой авторы формулируют задачу планирования в виде марковской игровой модели с дискретными событиями и многокритериальным взаимодействием и предлагают многоагентный алгоритм Deep-Q-network (DQN) с обучением с подкреплением для многоцелевого планирование рабочего процесса, направленного на оптимизацию времени и стоимости выполнения рабочего процесса. Агенты DQN обучаются в среде многоагентного обучения с подкреплением (MARL) и получают данные из унаследованной системы, такой как эвристики в нейронных сетях.
Например, в работе [26] авторы предложили многоцелевой алгоритм оптимизации кормодобывания бактерий (Multi-Objective Bacteria Foraging Optimization Algorithm - MOBFOA), модифицировав исходный BFOA и учитывая оптимальные по Парето фронты. Он нацелен на минимизацию времени обработки и затрат на использование ресурсов.
Авторы [27] представили двухцелевой генетический алгоритм (Bi-Objective Genetic Algorithm - BOGA), способный оптимизировать как энергосбережение, так и надежность рабочего процесса, а также получить почти оптимальные фронты Парето.
В работе [28] описан усовершенствованный генетический алгоритм с эффективной настройкой (Genetic Algorithm with Efficient Tune-In - GA-ETI) для научных приложений в облачных системах. Он способен оптимизировать как продолжительность рабочего процесса, так и стоимость.
Авторы [29] представили алгоритм гибридной оптимизации роя частиц (HPSO), основанный на недоминирующей сортировке, для планирования рабочего процесса, который позволяет оптимизировать как время выполнения, так и стоимость.
Авторы [30] предложили гетерогенный алгоритм раннего завершения (Fuzzy Dominance Heterogeneous Earliest-Finish-Time - FDHEFT), основанный на нечеткой сортировке по преобладанию, способный минимизировать как стоимость, так и продолжительность рабочих процессов, развернутых в облаках IaaS. Однако эти подходы значительно ограничены предыдущими знаниями экспертов со статической глобальной точки зрения, которая не может надлежащим образом описать динамический процесс планирования рабочего процесса.
В задачах планирования процессов с несколькими ограничениями широко применяются теоретико-игровые модели и методики обучения с подкреплением [3137]. Считается, что концепция равновесия в теориях игр и методы многоагентного обучения очень эффективны при решении задач оптимизации с множеством ограничений и множеством целей. Например, в работе [19] предложен алгоритм последовательной кооперативной игры для оптимизации затрат и времени выполнения при соблюдении ограничений памяти для планирования крупномасштабных рабочих процессов. Авторы [23] предложили подход, основанный на обучении с подкреплением, для планирования нескольких рабочих процессов с множеством приоритетов, отправленных в разное вре-
мя в облачной среде. В работе [18] рассмотрен алгоритм распределенной балансировки нагрузки и управления доступом, основанный на нечеткой теоретико-игровой модели для крупномасштабных облаков SaaS. Авторы [21] предложили улучшенный алгоритм Q-обучения с функцией взвешенного значения пригодности для оптимизации времени завершения и балансировки нагрузки в облачной среде.
В связи с тем, что должны быть выполнены многочисленные требования, задача планирования рабочего процесса может быть смоделирована как задача многоцелевой оптимизации (MOP) в среде облачных вычислений и классифицирована как один из алгоритмов с ограничением QoS и алгоритмов оптимизации QoS [38,39] . В работе [40] приведен расчет минимального количества ресурсов параллельной грид-системы для задач, чтобы минимизировать затраты с помощью модели M/M/c марковских систем массового обслуживания. Аналогичным образом, после разработки критического пути в DAG авторы [41] применили подход марковского процесса принятия решений (MDP), чтобы уложиться в срок, и предложили алгоритм планирования рабочего процесса для минимизации затрат на выполнение. Используя систему очередей M/G/1 и структурируя использование ресурсов, служба сбора данных грид-системы [42] оценивала доступность ресурсов для удаленной задачи с определенной скоростью резервирования, чтобы уложиться в крайний срок удаленных задач, с целью минимизировать отказы.
Авторы [43] выдвинули некоторые новые концепции, такие как критическая область и надежность критической области и представили алгоритм планирования. В работе [44,45] авторы предложили модель совместного прогнозирования с несколькими стратегиями (Multi-Strategy Collaborative Prediction Model - MSCPM) для времени выполнения онлайн-задач, а также новую концепцию, названную гарантией точности прогнозирования (Prediction Accuracy Assurance - PAA), в качестве критерия для количественной оценки точности времени выполнения прогнозирования, обеспечиваемого особой стратегией прогнозирования.
Таким образом, было проведено большое количество исследований, касающихся планирования рабочих процессов в среде облачных вычислений, но лишь несколько схем были сосредоточены на использовании обучения с подкреплением для решения MOP. В исследовании [46] была разработана схема планирования рабочего процесса на основе обучения с подкреплением.
Кроме того, эти алгоритмы обычно ориентированы на минимизацию времени выполнения. Было предложено три типичных алгоритма планирования: алгоритм планирования списка, алгоритм планирования кластеризации и алгоритм планирования дублирования. Среди них алгоритм планирования списков является наиболее широко используемым эвристическим алгоритмом, а классический алгоритм планирования на основе списков реализует функции, которые включают гетерогенное самое раннее время завершения (Heterogeneous Earliest Finish Time - HEFT) [47], планирование стохастического динамического уровня (Stochastic Dynamic Level Scheduling - SDLS) [48] , предсказание времени самого раннего завершения (Predict Earliest Finish Time - PEFT) [49] и улучшенное предсказание времени самого раннего завершения (Improved Predict Earliest Finish Time - IPEFT) [50]. Обычно эти алгоритмы выполняют планирование в два этапа: во-первых, построение последовательности задач по назначенным приоритетам задач, а во-вторых, последовательное выделение каждой задачи из последовательности вычислительным узлам, которые учитывают самое раннее время начала.
Алгоритмы эвристики кластеризации отображают все задачи с неопределенным количеством в разные кластеры [51]. В отличие от эвристики планирования списков, алгоритмы эвристики кластеризации требуют второго этапа для планирования кластеров задач для процессоров. В этих условиях только достаточное количество процессоров может дать преимущество.
Типичные алгоритмы эвристики кластеризации включают методы кластеризации доминантных последовательностей (Dominant Sequence Clustering - DSC) [52], планирования на основе дублирования задач (Task Duplication-based Scheduling - TDS)
[53] и гетерогенного значения выбора (Heterogeneous Selection Value - HSV) [54]. Алгоритм планирования-дублирования может эффективно сократить время выполнения планирования задач DAG при значительных затратах на связь, то есть метод дублирования может эффективно уменьшить или избежать межпроцессорного взаимодействия. Было предложено множество алгоритмов для включения этой техники в планирование [55,56].
Авторы [57] обратились к проблеме планирования, которая требует чрезмерно большого количества процессоров, предложив комбинацию алгоритмов SDS и SC для получения двухэтапного алгоритма планирования, который создает графы с высоким качеством и низкими требованиями к процессору. Однако для задач с большим объемом вычислений производительность этих алгоритмов не имеет значения. В последние годы большинство исследователей изучают GRID-системы, кластеры и другие типичные неоднородные распределенные вычислительные среды, а планирование задач выполняется только для фиксированного количества ресурсов.
В работе [58] было предложено новое представление рабочего процесса, в котором узлы графа рабочего процесса представляют либо задачи, либо файлы данных, дуги графа рабочего процесса представляют их взаимосвязь. Была определена проблема планирования задач и назначения данных (Task Scheduling and Data Assignment Problem - TaSDAP). Стоит отметить, что авторы также сформулировали эту проблему как задачу целочисленного программирования.
В работе [59] представлено решение, цель которого - минимизировать передачу данных в рабочих процессах, распределенных в нескольких центрах обработки данных. Таким образом может быть достигнута цель уменьшения связи между узлами. С этой целью в указанной работе была определена локальность исходных данных с помощью алгоритма кластеризации k-средних.
Авторы [60] предложили выгодный алгоритм планирования с множеством QoS и достигли хорошей адаптируемости, изучая масштабируемость алгоритма с различными типами рабочих процессов и инфраструктур. Результаты экспериментов показали, что их стратегии значительно повысили доходы поставщиков облачных услуг и позволили получить сравнительно успешные показатели выполненных работ.
Авторы [61] предложили объединить несколько приложений рабочего процесса в один рабочий процесс DAG, и, используя этот метод, работа может быть завершена с помощью любых традиционных алгоритмов планирования DAG, чтобы минимизировать общее время обработки. Этот подход сформулирован и решен на основе проблем конкуренции за ресурсы с множеством других DAG.
В работе [62] авторы предложили алгоритм выбора предыдущего узла (Lower Bound Based Candidate Node Selection - LBCNS) для выбора подмножества заданных узлов для минимизации длины расписания при сбалансированном планировании каждого задания. Результаты экспериментов показывают, что их алгоритмы способны к наилучшей балансировке ресурсов для планирования нескольких заданий рабочего процесса, в то время как подход на основе приоритетов обеспечивает минимальную длину графика с максимальной эффективностью для заданий с одним или несколькими рабочими процессами.
Авторы [63] предложили алгоритм планирования, включающий в себя стратегии, управляемые событиями, и стратегии периодической прокрутки (Event-Driven and Periodic Rolling Strategies - EDPRS) для динамического планирования рабочего процесса. Результаты экспериментов показывают, что предложенный ими алгоритм работает лучше, чем классические алгоритмы.
В работе [64] авторы предложили новый алгоритм максимизации надежности с ограничением потребления энергии (Reliability Maximization with Energy Constraint -RMEC), который включает три важных этапа: установление приоритета задачи, выбор частоты и назначение процессора. Алгоритм RMEC может эффективно обеспечивать
баланс между высокой надежностью и потреблением энергии. Результат, основанный как на случайно сгенерированных графах задач, так и на графах некоторых реальных приложений, показывает, что RMEC превосходит существующие алгоритмы.
Авторы [65] предложили энергоэффективную схему планирования, основанную на модели глубокого Q-обучения для периодических задач в системах реального времени (Deep Q-learning model for Energy-efficient Edge Scheduling - DQL-EES). Особенностью работы является объединение составного автокодировщика и модели глубокого Q-обучения, чтобы заменить Q-функцию для изучения Q-значения каждой технологии DVFS (Dynamic Voltage and Frequency Scaling) для любого состояния системы. В работе [66] авторы предложили соответствующий алгоритм, который взаимодействует с методом DVFS для решения вышеуказанной проблемы, и оценили алгоритм с точки зрения случайно сгенерированных DAG, реальных приложений DAG и их гибридов в HCS с поддержкой DVFS. Однако эти сценарии, как правило, предназначены для одного приложения, которое не подходит для динамической облачной среды, где время от времени будет отправляться большое количество рабочих процессов. Кроме того, эти сложные среды усложняют планирование задач.
Таким образом, можно сделать вывод, что в последнее время наблюдается значительный рост активности научных исследований в области распределенных вычислений, посвященных алгоритмам размещения крупномасштабных задач. Наибольший интерес для исследовательских групп представляет проблема планирования рабочих процессов, представляемых в виде ациклических ориентированных графов для размещения в облачных и грид системах (в первую очередь у провайдеров IaaS). Это показывает значимость рассматриваемой проблемы для реализации проектов, связанных с распределенными вычислениями как для научного, так и для коммерческого применения. Также проведенный анализ работ показывает значительную перспективность использования машинного обучения в сочетании с мультиагентными технологиями для формирования решений в рассматриваемой области.
Исследование выполнено при поддержке проекта РФФИ 18-29-03229.
Список литературы
1. Xia Y. et al. Stochastic Modeling and Performance Analysis of Migration-Enabled and Error-Prone Clouds // IEEE Trans. Ind. Informatics. 2015. Vol. 11, № 2. P. 495504.
2. Xia Y. et al. A stochastic approach to analysis of energy-aware DVS-enabled cloud datacenters // IEEE Trans. Syst. Man, Cybern. Syst. 2015. Vol. 45, № 1. P. 73-83.
3. Yin Y. et al. Collaborative service selection via ensemble learning in mixed mobile network environments // Entropy. 2017. Vol. 19, № 7.
4. Yu J. et al. Leveraging Content Sensitiveness and User Trustworthiness to Recommend Fine-Grained Privacy Settings for Social Image Sharing // IEEE Trans. Inf. Forensics Secur. 2018. Vol. 13, № 5. P. 1317-1332.
5. Yu J. et al. IPrivacy: Image Privacy Protection by Identifying Sensitive Objects via Deep Multi-Task Learning // IEEE Trans. Inf. Forensics Secur. 2017. Vol. 12, № 5. P. 1005-1016.
6. Choudhary A. et al. A GSA based hybrid algorithm for bi-objective workflow scheduling in cloud computing // Futur. Gener. Comput. Syst. 2018. Vol. 83. P. 14-26.
7. Peng Q. et al. Multi-objective optimization for location prediction of mobile devices in sensor-based applications // IEEE Access. 2018. Vol. 6. P. 77123-77132.
8. Li W. et al. Fluctuation-Aware and Predictive Workflow Scheduling in Cost-Effective Infrastructure-as-a-Service Clouds // IEEE Access. 2018. Vol. 6. P. 61488-61502.
9. Xu R. et al. A sufficient and necessary temporal violation handling point selection strategy in cloud workflow // Futur. Gener. Comput. Syst. 2018. Vol. 86. P. 464-479.
10. Deng S. et al. Computation Offloading for Service Workflow in Mobile Cloud Computing // IEEE Trans. Parallel Distrib. Syst. 2015. Vol. 26, № 12. P. 3317-3329.
11. Yu J. et al. Learning to Rank Using User Clicks and Visual Features for Image Retrieval // IEEE Trans. Cybern. 2015. Vol. 45, № 4. P. 767-779.
12. Okuhara M., Shiozaki T., Suzuki T. Security architectures for Cloud computing // Fujitsu Sci. Tech. J. 2010. Vol. 46, № 4. P. 397-402.
13. Sun H.-B., Ding Y.-S. QoS scheduling of fuzzy strategy grid workflow based on the bio-network // Int. J. Comput. Sci. Eng. 2011. Vol. 6, № 1-2. P. 114-121.
14. Nasonov D. et al. Hybrid evolutionary workflow scheduling algorithm for dynamic heterogeneous distributed computational environment // J. Appl. Log. 2017. Vol. 24. P. 50-61.
15. Coello Coello C.A., Pulido G.T., Lechuga M.S. Handling multiple objectives with particle swarm optimization // IEEE Trans. Evol. Comput. 2004. Vol. 8, № 3. P. 256279.
16. Deb K. et al. A fast and elitist multiobjective genetic algorithm: NSGA-II // IEEE Trans. Evol. Comput. 2002. Vol. 6, № 2. P. 182-197.
17. Wang Y. et al. A multi-stage dynamic game-theoretic approach for multiworkflow scheduling on heterogeneous virtual machines from multiple infrastructure-as-a-service clouds // Lect. Notes Comput. Sci. (including Subser. Lect. Notes Artif. Intell. Lect. Notes Bioinformatics). 2018. Vol. 10969 LNCS. P. 137-152.
18. Iranpour E., Sharifian S. A distributed load balancing and admission control algorithm based on Fuzzy type-2 and Game theory for large-scale SaaS cloud architectures // Futur. Gener. Comput. Syst. 2018. Vol. 86. P. 81-98.
19. Duan R., Prodan R., Li X. Multi-objective game theoretic scheduling of bag-of-tasks workflows on hybrid clouds // IEEE Trans. Cloud Comput. 2014. Vol. 2, № 1. P. 29-42.
20. Wu L., Wang Y. Scheduling multi-workflows over heterogeneous virtual machines with a multi-stage dynamic game-theoretic approach // Int. J. Web Serv. Res. 2018. Vol. 15, № 4. P. 82-96.
21. Jiahao W. et al. A Multi-object Optimization Cloud Workflow Scheduling Algorithm Based on Reinforcement Learning // Lect. Notes Comput. Sci. (including Subser. Lect. Notes Artif. Intell. Lect. Notes Bioinformatics). 2018. Vol. 10955 LNCS. P. 550-559.
22. Wei Y. et al. A Reinforcement Learning Based Workflow Application Scheduling Approach in Dynamic Cloud Environment // Lect. Notes Inst. Comput. Sci. Soc. Telecommun. Eng. LNICST. 2018. Vol. 252. P. 120-131.
23. Cui D. et al. Multiple DAGs workflow scheduling algorithm based on reinforcement learning in cloud computing // Commun. Comput. Inf. Sci. 2016. Vol. 575. P. 305-311.
24. Waschneck B. et al. Optimization of global production scheduling with deep reinforcement learning // Procedia CIRP. 2018. Vol. 72. P. 1264-1269.
25. Wang Y. et al. Multi-objective workflow scheduling with deep-Q-network-based multi-agent reinforcement learning // IEEE Access. IEEE, 2019. Vol. 7. P. 39974-39982.
26. Kaur M., Kadam S. A novel multi-objective bacteria foraging optimization algorithm (MOBFOA) for multi-objective scheduling // Appl. Soft Comput. J. 2018. Vol. 66. P. 183-195.
27. Zhang L. et al. Bi-objective workflow scheduling of the energy consumption and reliability in heterogeneous computing systems // Inf. Sci. (Ny). 2017. Vol. 379. P. 241-256.
28. Casas I. et al. GA-ETI: An enhanced genetic algorithm for the scheduling of scientific workflows in cloud environments // J. Comput. Sci. 2018. Vol. 26. P. 318-331.
29. Verma A., Kaushal S. A hybrid multi-objective Particle Swarm Optimization for scientific workflow scheduling // Parallel Comput. 2017. Vol. 62. P. 1-19.
30. Zhou X. et al. Minimizing cost and makespan for workflow scheduling in cloud using fuzzy dominance sort based HEFT // Futur. Gener. Comput. Syst. 2019. Vol. 93. P. 278-289.
31. Bertsekas D.P. Feature-based aggregation and deep reinforcement learning: A survey and some new implementations // IEEE/CAA J. Autom. Sin. 2019. Vol. 6, № 1. P. 131.
32. Mao H. et al. Resource management with deep reinforcement learning // HotNets 2016 - Proceedings of the 15th ACM Workshop on Hot Topics in Networks. 2016. P. 50-56.
33. Xue L. et al. An adaptive strategy via reinforcement learning for the prisoner's dilemma game // IEEE/CAA J. Autom. Sin. 2018. Vol. 5, № 1. P. 301-310.
34. Zhan Y., Ammar H.B., Taylor M.E. Theoretically-grounded policy advice from multiple teachers in reinforcement learning settings with applications to negative transfer // IJCAI International Joint Conference on Artificial Intelligence. 2016. Vol. 2016-Janua. P. 2315-2321.
35. Wang H. et al. Reinforcement Learning for Constrained Energy Trading Games with Incomplete Information // IEEE Trans. Cybern. 2017. Vol. 47, № 10. P. 3404-3416.
36. Zheng L. et al. MAgent: A many-agent reinforcement learning platform for artificial collective intelligence // 32nd AAAI Conference on Artificial Intelligence, AAAI 2018. 2018. P. 8222-8223.
37. Lowe R. et al. Multi-agent actor-critic for mixed cooperative-competitive environments // Advances in Neural Information Processing Systems. 2017. Vol. 2017-Decem. P. 6380-6391.
38. Arabnejad H., Barbosa J.G. A Budget Constrained Scheduling Algorithm for Workflow Applications // J. Grid Comput. 2014. Vol. 12, № 4. P. 665-679.
39. Li J. et al. Fuzzy keyword search over encrypted data in cloud computing // Fuzzy keyword search over encrypted data cloud Comput. 2010. № 8. P. 1-5.
40. Hyun Son J., Ho Kim M. Improving the performance of time-constrained workflow processing // J. Syst. Softw. 2001. Vol. 58, № 3. P. 211-219.
41. Yu J., Buyya R., Tham C.K. QoS-based scheduling of workflow applications on service grids // Proc. 1st IEEE Int. Conf. e-Science Grid Comput. 2005.
42. Gong L., Sun X.-H., Watson E.F. Performance modeling and prediction of nondedicated network computing // IEEE Trans. Comput. 2002. Vol. 51, № 9. P. 10411055.
43. Tian G.-Z., Yu J., He J.-S. Towards critical region reliability support for Grid workflows // J. Parallel Distrib. Comput. 2009. Vol. 69, № 12. P. 989-995.
44. Tao M., Dong S., He K. A new replication scheduling strategy for grid workflow applications // 2011 Sixth Annual Chinagrid Conference. 2011. P. 74-80.
45. Tao M., Dong S., Zhang L. A multi-strategy collaborative prediction model for the runtime of online tasks in computing cluster/grid // Cluster Comput. 2011. Vol. 14, № 2. P.199-210.
46. Cui D. et al. Cloud workflow scheduling algorithm based on reinforcement learning // Int. J. High Perform. Comput. Netw. Inderscience Publishers (IEL), 2018. Vol. 11, № 3. P. 181-190.
47. Topcuoglu H., Hariri S., Wu M.-Y. Performance-effective and low-complexity task scheduling for heterogeneous computing // IEEE Trans. Parallel Distrib. Syst. 2002. Vol. 13, № 3. P. 260-274.
48. Li K. et al. Scheduling precedence constrained stochastic tasks on heterogeneous cluster systems // IEEE Trans. Comput. 2015. Vol. 64, № 1. P. 191-204.
49. Arabnejad H., Barbosa J.G. List scheduling algorithm for heterogeneous systems by an optimistic cost table // IEEE Trans. Parallel Distrib. Syst. 2014. Vol. 25, № 3. P. 682694.
50. Zhou N. et al. A list scheduling algorithm for heterogeneous systems based on a critical node cost table and pessimistic cost table // Concurr. Comput. 2017. Vol. 29, № 5.
51. Durillo J.J., Prodan R. Multi-objective workflow scheduling in Amazon EC2 // Cluster Comput. 2014. Vol. 17, № 2. P. 169-189.
52. Gerasoulis A., Yang T. A comparison of clustering heuristics for scheduling directed acyclic graphs on multiprocessors // J. Parallel Distrib. Comput. 1992. Vol. 16, № 4. P.276-291.
53. Bajaj R., Agrawal D.P. Improving Scheduling of Tasks in a Heterogeneous Environment // IEEE Trans. Parallel Distrib. Syst. 2004. Vol. 15, № 2. P. 107-118.
54. Xie G., Li R., Li K. Heterogeneity-driven end-to-end synchronized scheduling for precedence constrained tasks and messages on networked embedded systems // J. Parallel Distrib. Comput. 2015. Vol. 83. P. 1-12.
55. Tong Z. et al. A novel task scheduling scheme in a cloud computing environment using hybrid biogeography-based optimization // Soft Comput. 2019. Vol. 23, № 21. P. 11035-11054.
56. Liang A., Pang Y. A novel, energy-aware task duplication-based scheduling algorithm of parallel tasks on clusters // Math. Comput. Appl. 2017. Vol. 22, № 2. P. 2-13.
57. Bozdag D., Ozguner F., Catalyurek U. V. Compaction of schedules and a two-stage approach for duplication-based DAG scheduling // IEEE Trans. Parallel Distrib. Syst. 2009. Vol. 20, № 6. P. 857-871.
58. Teylo L. et al. A hybrid evolutionary algorithm for task scheduling and data assignment of data-intensive scientific workflows on clouds // Futur. Gener. Comput. Syst. 2017. Vol. 76. P. 1-17.
59. Wang M. et al. Data Placement and Task Scheduling Optimization for Data Intensive Scientific Workflow in Multiple Data Centers Environment // Proceedings - 2014 2nd International Conference on Advanced Cloud and Big Data, CBD 2014. 2015. P. 77-84.
60. Arabnejad H., Barbosa J.G. Multi-QoS constrained and Profit-aware scheduling approach for concurrent workflows on heterogeneous systems // Futur. Gener. Comput. Syst. Elsevier, 2017. Vol. 68. P. 211-221.
61. Zhao H., Sakellariou R. Scheduling multiple DAGs onto heterogeneous systems // 20th International Parallel and Distributed Processing Symposium, IPDPS 2006. 2006. Vol. 2006. P. 14-27.
62. Kanemitsu H., Hanada M., Nakazato H. Prior node selection for scheduling workflows in a heterogeneous system // J. Parallel Distrib. Comput. 2017. Vol. 109. P. 155177.
63. Chen H. et al. Real-time workflows oriented online scheduling in uncertain cloud environment // J. Supercomput. 2017. Vol. 73, № 11. P. 4906-4922.
64. Zhang L. et al. Maximizing reliability with energy conservation for parallel task scheduling in a heterogeneous cluster // Inf. Sci. (Ny). 2015. Vol. 319. P. 113-131.
65. Zhang Q. et al. Energy-Efficient Scheduling for Real-Time Systems Based on Deep Q-Learning Model // IEEE Trans. Sustain. Comput. 2019. Vol. 4, № 1. P. 132-141.
66. Jiang J. et al. Time and Energy Optimization Algorithms for the Static Scheduling of Multiple Workflows in Heterogeneous Computing System // J. Grid Comput. 2017. Vol. 15, № 4. P. 435-456.
Семенистый Сергей Александрович, программист 2-й категории, semen-istyi@sfedu.ru, Россия, Таганрог, Научно-исследовательский институт многопроцессорных вычислительных систем имени академика А.В. Каляева Южного федерального университета
OVERVIEW OF WORKFLOW PLANNING ALGORITHMS IN DISTRIBUTED COMPUTING
SYSTEMS
S.A. Semenistyi
The article analyzes the approaches of a number of foreign researchers to solving the problem of planning work processes in a distributed computing environment. The main
133
ideas of various algorithms for optimization of placement, both single-criteria and multi-criteria, are presented. The advantages and disadvantages of some algorithms are described.
Key words: distributed computing, cloud computing, task scheduling, location optimization, workflow.
Sergei Alexandrovich Semenistyi, 2nd category programmer, semenistyi@,sfedu. ru, Southern Federal University, Russia, Taganrog, Scientific Research Institute of multiprocessor computing systems
УДК 004.896
ПРИМЕНЕНИЕ АЛГОРИТМОВ SLAM ПРИ ПОСТРОЕНИИ ТРЕХМЕРНОЙ МОДЕЛИ ПОДЗЕМНЫХ ГОРНЫХ ВЫРАБОТОК
К.А. Богданова
В работе рассматривается проблема применения алгоритмов SLAM в условиях подземных горных выработок. Кратко изложена суть концепции SLAM и классификация алгоритмов. Приведен обзор современных алгоритмов SLAM, реализованных для применения лидаров в качестве сенсоров, для построения модели замкнутого пространства. Выявлены факторы, усложняющие применение алгоритмов SLAM при подземной разработке месторождений. Проанализированы существующие решения в данной области для построения модели окружающего пространства и определения координат устройства в условиях подземных горных выработок.
Ключевые слова: подземная разработка месторождений, определение местоположения, навигация, SLAM, лидар.
Подземная разработка месторождений является одним из наиболее сложных способов добычи полезных ископаемых с точки зрения технологии добычи, безопасности персонала и экономической эффективности предприятия. Этим в настоящий момент обуславливается интерес к концепциям умных и интеллектуальных шахт [1,2], что подчеркивает необходимость активно исследовать возможности автоматизации и циф-ровизации процессов, связанных с добычей полезных ископаемых. Одной из наиболее сложных для реализации идей остается внедрение беспилотного транспорта в подземные горные выработки. В отличие от открытой поверхности, где источником дополнительной информации о местоположении могут служить сигналы спутниковой навигационной системы, в подземных горных выработках это невозможно, отчего возникает необходимость исследования других способов решения данной задачи.
Концепция SLAM (Simultaneous Localization and Mapping), которой в последнее время уделяется большое внимание исследователей, может существенно способствовать как внедрению беспилотного транспорта, так и созданию актуальной модели подземного пространства. Идея SLAM подразумевает объединение двух процессов: построение модели окружающего пространства (mapping, как указано в наименовании концепции) и определение местонахождения устройства в этой модели (localization). В отличие от данного метода при традиционных способах навигации любых средств передвижения необходимо иметь карту пространства, в пределах которой прокладывается маршрут транспортного средства, до начала его движения. В случае навигации с помощью SLAM определение местоположения устройства и построение модели окружающего пространства это два взаимосвязанных процесса, осуществление которых происходит практически одновременно. Благодаря этому возможна навигация средства передвижения в заранее неизвестной местности, а соответственно возможно сократить
134