УДК 004.021
АЛГОРИТМ СУБСИДИАРНОЙ МЕТАЭВРИСТИКИ
Цветков Виктор Яковлевич1,
д-р техн. наук, профессор, e-mail: cvj2@mail.ru,
Козлов Александр Вячеславович1,
e-mail: av-kozlov@mail.ru, 1Российский технологический университет (РТУ МИРЭА), г. Москва, Россия
В статье исследуется новое направление - «субсидиарная метаэвристика». Предложен новый метаэв-ристический алгоритм, который авторы назвали алгоритмом покрытия. Показано различие между эвристикой и метаэвристикой применительно к субсидиарным системам. Метаэвристические алгоритмы являются модифицируемыми по ситуации управления. Общим для эвристики и метаэвристики является итеративный процесс поиска решений. Показано значение ситуации для метаэвристических преобразований. Представлена типовая схема эвристических алгоритмов с фиксированной последовательностью действий. Описан пример формирования алгоритмов субсидиарной метаэвристики. Рассмотрена задача покрытия ареалами участка произвольной формы. Сложность задачи заключается в том, что эта площадь неизвестна и определяется итеративно в процессе покрытия. Показано, что субсидиарные системы и алгоритмы являются многоцелевыми, выделена группа типичных целей субсидиарного алгоритма. Описан алгоритм покрытия площади участка ареалами, связанными с движением робота. Особенность алгоритма метаэвристики состоит в использовании информации от датчиков. Отмечается, что субсидиарная система с метаэвристическим алгоритмом управления должна включать механизмы координации в пространстве. Ключевые слова: метаэвристика, субсидиарная система, ситуационное поведение, метаэвристический алгоритм, алгоритм покрытия
THE ALGORITHM OF SUBSIDIARY METAHEURISTICS
Tsvetkov V.Ya.1,
doctor of technical sciences, professor, e:mail: cvj2@mail.ru,
Kozlov A.V.1,
e-mail: av-kozlov@mail.ru, Russian Technological University (RTUMIREA), Moscow, Russia
The article explores a new direction "subsidiary metaheuristics". The article proposes a new metaheuristic algorithm, which the authors called the coverage algorithm. The difference between heuristics and metaheuristics in relation to subsidiary systems is shown. Metaheuristic algorithms are modifiable according to the control situation. The iterative process of finding solutions is common to heuristics and metaheuristics. The significance of the situation for metaheuristic transformations is shown. A typical scheme of heuristic algorithms with a fixed sequence of actions is presented. An example of the formation of algorithms of subsidiary metaheuristics is described. The problem of covering an arbitrary-shaped area with areas is considered. The complexity of the problem lies in the fact that this area is unknown and is determined iteratively during the coating process. It is shown that subsidiary systems and algorithms are multi-purpose, a group of typical goals of a subsidiary algorithm is identified. The algorithm of covering the area of the site with areas associated with the movement of the robot is described. The feature of the metaheuristics algorithm is the use of information from sensors. It is noted that a subsidiary system with a metaheuristic control algorithm should include coordination mechanisms in space. Keywords: metaheuristics, subsidiary system, situational behavior, metaheuristic algorithm, coverage algorithm
DOI 10.21777/2500-2112-2022-4-65-71
Введение
Субсидиарность как организационный принцип, согласно которому задачи должны решаться на низком или удалённом от центра уровне, на котором их решение возможно и эффективно, проявляется в стохастической среде и при групповом поведении. Субсидиарность также имеет место в интеллектуальных и живых системах [1], в дискретных потоках с прерываниями или внешними воздействиями. В интеллектуальных системах используются алгоритмы субсидиарного поведения и принятия решений. В дискретном потоке субсидиарность возникает при наличии явления перколяции (от лат. регсо1аге - «просачиваться», «протекать») [2]. Теория перколяции используется для описания возникновения связных структур (кластеров) в случайных средах, состоящих из отдельных элементов, и находит применение в описании разнообразных систем и явлений.
Можно ввести понятие «отношение субсидиарности». Оно является альтернативой отношению следования [3]. Задача определения отношения субсидиарности возникает, например, при динамической маршрутизации транспортных средств [4]. Динамическая маршрутизация характеризуется тем, что часть или все входные данные неизвестны и обнаруживаются динамически во время прохождения маршрута. При динамической маршрутизации маршруты подвижных объектов переопределяются с помощью субсидиарного алгоритма. Все киберфизические системы являются субсидиарными.
Субсидиарные задачи являются ситуационными, поскольку определяются ситуацией, в которой находится подвижный объект. Субсидиарные алгоритмы используют модели ситуационного поведения. Реализация ситуационного поведения осуществляется разными путями. Одним из традиционных способов является применение многоагентных систем с двумя или тремя алгоритмами поведения [5]. Для реализации ситуационного поведения также широко применяется подход на основе методов эвристики [6] и искусственной нейронной сети с обучением. Метаэвристика как высокоуровневая проблемно-независимая алгоритмическая структура позволяет применять разные алгоритмы эвристической оптимизации, удовлетворяющие заданным ограничениям, и находить близкие к оптимальным решения задачи за приемлемое время [7]. Метаэвристика дает возможность сохранять и комбинировать свойства используемых алгоритмов [8]. Субсидиарная метаэвристика является новым направлением, которое в теории метаэвристики недостаточно исследовано, чем обусловлена актуальность данной работы.
1. Типовая схема эвристических алгоритмов с фиксированной последовательностью действий
Эвристические алгоритмы с фиксированной последовательностью действий являются условно простыми (далее - алгоритм простой эвристики). Формирование алгоритмов простой эвристики происходит в рамках класса решений «X» данной задачи. Реализация алгоритмов простой эвристики определяется допустимым отношением приближения d. Примерами задач простой эвристики является информационный поиск или вычисление сложной функции методом последовательных приближений. Простая эвристика поиска решения имеет итеративную схему.
Обозначим через k номер итерации, Аi - метки алгоритма. Задается функция приближенных вычислений Дх). Рассмотрим два варианта поиска решения в зависимости от допустимого отношения приближения: допустимой точности и допустимого числа вариантов перебора. В первом случае задается точность р, во втором - число итераций N. Представим пошаговый алгоритм:
А1: Определяется исходное решение х0 е X, к = 0;
А2: Вычисляется начальное значение функции Y0=Дx0);
А3: Задается декремент dx;
А4: Перевычисляется аргумент х1= х0 + dx (для первой итерации) или хк+1 = хк + dx (для последующих итераций);
А5: Вычисляется новое значение функции Y1=f(x1);
А6: Включается счетчик итераций к = к + 1;
А7: Проводится сравнение функций и вычисляется расхождение DY1=Y0-Y1 (для первой итерации) или DYk=Yk-1-Yk (для последующих итераций).
Сравнивается расхождение и допустимое отношение:
A8: Если р > DYk, то Stop; иначе k+1, Go to A4.
Для метода перебора оператор А8 выглядит иначе:
A8*: Если N = к, то Stop; иначе k + 1, Go to A4.
Существуют модификации метода эвристики с фиксированной последовательностью действий, но принципиальная схема А1-А8 остается основой.
2. Алгоритм «покрытия» субсидиарной метаэвристики
Эвристические алгоритмы с фиксированной последовательностью действий не подходят для субсидиарных систем, поскольку необходима динамическая модификация их выполнения в зависимости от ситуации. Управление субсидиарной системой и киберфизической системой требует специального субсидиарного алгоритма. Наиболее эффективными для решения данной задачи представляются метаэври-стические алгоритмы, которые дают возможность сохранять и комбинировать свойства используемых эвристических алгоритмов и находить близкие к оптимальным решения при заданных ограничениях.
Алгоритмы субсидиарных систем имеют разные цели. Основная цель связана со стратегической и/или групповой целью. Локальные цели заключаются в выживаемости системы, реакции на ситуацию, оптимальном поведении системы в конкретной ситуации и др. Эти цели закладываются в алгоритмах субсидиарной метаэвристики.
Рассмотрим алгоритм субсидиарной метаэвристики на примере работы робота-пылесоса. Алгоритм, который реализует данный робот, можно назвать алгоритмом покрытия. Стратегическая цель состоит в прохождении участка заданной формы, то есть в охвате площади S (рисунок 1). Вторая цель заключается в выживаемости системы, то есть работе при температуре меньше допустимой T Вторая цель включает также анализ состояния ресурсов (аккумулятора) между текущим уровнем зарядки Rt и допустимым Rd. Третья цель состоит в реакции на ситуацию, то есть обходе препятствий или уходе от стен. Четвертая цель состоит в попытке оптимизировать движение для конкретной формы помещения. Пятая цель состоит в том, чтобы по завершению работы вернуться к начальной точке, которая называется «базой».
\ п?
гз П1 \ г
\
Рисунок 1 - Схема площади и начальные движения робота
На рисунке 1 буквой Б обозначено начальное положение робота или база; символами П П2 обозначены препятствия, которые робот должен обходить; линиями со стрелками показаны начальные фазы движения. На самом деле робот охватывает некоторую площадь при движении и линиям соответствуют ареалы, имеющие площадь.
Введем параметр «ширина захвата» S Это ширина, которую охватывает робот при движении. Робот двигается по прямым линиям, которые можно рассматривать как итерации движения. Введем параметр «близость площадей» 5Sk, который характеризует расхождение площадей на k и k-1 итерации движения робота. Задача робота состоит в покрытии своим маршрутом и полосой захвата площади помещения.
Упрощенно такого робота можно рассматривать как интеллектуального агента, который имеет память М. Дополнительно такой робот обладает способностью к координации.
Алгоритмически субсидиарные вычисления или субсидиарное управление строится на основе следующей парадигмы:
стратегическая задача ^ информация о реальности ^ стохастические действия с элементом рациональности ^ запоминание ситуации^ запоминание действий ^ продолжение действий ^ анализ задачи ^ анализ решения ^ завершение при условной оптимизации.
Сложная метаэвристика поиска имеет итеративную схему.
Рассмотрим вариант задачи - «покрытие». Для него существует отношение площадей Rs = S/Ls, где S - площадь покрытия (неизвестная величина); Ls - площадь, определяемая длиной пути робота, умноженная на ширину захвата. Представим пошаговый алгоритм:
A1: Инициализация. Запоминается исходное положение робота на базе в памяти М(х0, у0) е S, начальный вектор движения v0, номер итерации k = 0;
A2: Осуществляется начальное движение Lk = v^t (к = 1). Если препятствие, то Stop. Длина пути определяется препятствием. Здесь срабатывает физический сенсор препятствия;
A3: С помощью датчика случайных чисел генерируется декремент поворота dv;
А4: Задается иррациональный инкремент поворота dv в соответствии с условиями: С = dv mod 2^0 л dv mod 3^0 л dv mod 5^0. Если С = 1, то А5, иначе А3. Иррациональность исключает кратность поворота, то есть зацикливание;
A5: Модифицируется аргумент vM = vk + dv;
A6: Включается счетчик итераций k = k + 1;
A7: Осуществляется последующее движение Ls = vs х tx, если препятствие, то Stop;
A8: Вычисляется длина пройденного пути Lsk = ZLk, результат запоминается;
A9: Вычисляется покрытая площадь на итерации Sls(k) = Sk х Lsk, результат запоминается;
А10: Выполняется три процедуры движения. Если k<3 Go to A3, иначе А12;
A11: Запоминается два последних значения покрытой площади Sls(k), Sls(k - 1);
А12: Вычисляется отношение площадей Rs(k - 1) = Sls(k -)/Sls(k - 1), результат запоминается;
А13: Вычисляется отношение площадей Rsk = Sls(k - 1)/Sls(k), результат запоминается;
A14: Вычисляется расхождение отношения площадей ôSk = Rsk - Rs(k - 1), результат запоминается;
A15: Если ôSk > А (нормативный допуск точности площади, рисунок 2), то Go to «база», иначе Go to A3;
A16: Если Rt > Rd то Go to «база», иначе Go to A3. Здесь также срабатывает физический датчик.
Типичным для этого примера метаэвристики является использование информации от датчиков и включение ее в алгоритм. На рисунке 2 показана динамика изменения отношения площадей при росте итераций.
По горизонтали показан рост итераций, по вертикали - отношение площадей. Эта величина растет и, в пределе, приближается к единице. Величина А характеризует область, при которой дальнейшие итерации не нужны. Величина р8 (рисунок 2) показывает предел итераций.
Особенность данной методики в том, что нет необходимости знать площадь участка S. Данная методика отличается от известных методик метаэвристики типа: метод имитации отжига [9], табу-поиск [10; 11], процедура жадного рандомизированного адаптивного поиска (GRASP1) [12], метод поиска чередующихся окрестностей VNS2 [13], генетические/эволюционные алгоритмы, имитация функционирования муравьиной колонии [14] и др.
1 GRASP = Greedy Randomized Adaptive Search Procedure.
2 Variable Neighborhood Search.
Rsk 1
Ps K(t)
Рисунок 2 - Динамика изменения отношения площадей при росте итераций
Предложенный метод следует назвать «методом покрытия», поскольку его задача - покрыть поверхность ареальными полосами. Следует отметить, что метод является переопределенным, поскольку в процессе работы робот может фрагментарно покрывать части участков повторно. Этот недостаток компенсируется отсутствием знания реальной площади, поскольку основой завершения работы является условие lim Rsk^ 1.
Данный метод можно применить для автоматизированной аэрофотосъемки при помощи беспилотного летательного аппарата (БПЛА) вертолетного типа. В этом случае физические границы следует заменить аналитическими условиями. В этом случае изменится метка алгоритма А6. БПЛА или центр его управления должны рассчитывать местоположение и при достижении границ участка задавать изменение траектории движения. Если такой БПЛА полностью автономен, то можно говорить о воздушной киберфизической системе [15].
Заключение
Субсидиарная метаэвристика является новым направлением, которое в теории метаэвристики недостаточно исследовано. Субсидиарная метаэвристика использует субсидиарные алгоритмы и применяется в субсидиарных системах. Субсидиарные системы и алгоритмы являются децентрализованными [16] и многоцелевыми. Метаэвристические алгоритмы являются модифицируемыми по ситуации управления либо вычисления. Они эффективны при использовании в субсидиарных системах и при управлении субсидиарным поведением систем. Управление субсидиарной системой и киберфи-зической системой требует специального субсидиарного алгоритма, наиболее подходящими из которых можно считать метаэвристические алгоритмы. Наряду с алгоритмами существуют субсидиарные вычисления. Они также входят в алгоритмы динамической маршрутизации. Для управления субсидиарными системами обязательным является применение субсидиарных алгоритмов и вычислений. Субсидиарная система с метаэвристическим алгоритмом управления должна включать механизмы координации в пространстве.
Предложенный алгоритм является недетерминированным, поскольку движение робота происходит с нарушением гладкости траектории. Недетерминированность также обусловлена тем, что при повторном запуске робота траектория его движения будет другой, хотя задача в итоге будет решена. Предложенный алгоритм относится к классу решения трудных задач, которые характеризуются неоднозначностью решения и отсутствием единственного алгоритма, который приводит от начальной ситуации к конечной точке.
Механизмы управления субсидиарной системой используют разные метаэвристические алгоритмы. Общий вывод состоит в том, что метаэвристика является потребностью и инструментом функционирования субсидиарных систем.
Список литературы
1. ЦветковВ.Я., Козлов А.В. Использование моделей живых организмов для анализа эволюции сложных организационно-технических систем // Образовательные ресурсы и технологии. - 2019. - № 4 (29). - С. 68-76.
2. Basu R., Hoffman C., Sly A. Nonexistence of bigeodesics in planar exponential last passage percolation // Communications in Mathematical Physics. - 2022. - Vol. 389, No. 1. - P. 1-30.
3. Кортунов В.В. Формализация логического следования в формальной логике // Сервис plus. - 2018. -Т. 12, № 1. - С. 122-126.
4. Liu Y. An optimization-driven dynamic vehicle routing algorithm for on-demand meal delivery using drones // Computers & Operations Research. - 2019. - Vol. 111. - P. 1-20.
5. Розенберг И.Н., Цветков В.Я. Применение мультиагентных систем в интеллектуальных логистических системах // Международный журнал экспериментального образования. - 2012. - № 6. - C. 107-109.
6. Sangaiah A.K. et al. IoT resource allocation and optimization based on heuristic algorithm // Sensors. -2020. - Vol. 20, No. 2. - P. 539.
7. Elshaer R., AwadH. A taxonomic review of metaheuristic algorithms for solving the vehicle routing problem and its variants // Computers & Industrial Engineering. - 2020. - Vol. 140. - DOI 10.1016/j.cie.2019.106242.
8. Воронов В.С., Пересунько П.В., Виденин С.А., Матюхин Н.Е. Последовательная метаэвристика для задачи приоритетной упаковки с несовместимыми категориями // Современные наукоемкие технологии. - 2020. - № 6. - С. 220-227.
9. Metropolis N., Rosenbluth A.W., Rosenbluth M.N., Teller A.H., Teller E. Equation of state calculations by fast computing machines // Journal Chemical Physics. - 1953. - Vol. 21, No. 6. - P. 1087-1091. - DOI 10.1063/1.1699114.
10. Hou N. et al. An efficient GPU-based parallel tabu search algorithm for hardware/software co-design // Frontiers of Computer Science. - 2020. - Vol. 14, No. 5. - P. 1-18.
11. AlinaghianM. et al. An augmented Tabu search algorithm for the green inventory-routing problem with time windows // Swarm and Evolutionary Computation. - 2021. - Vol. 60. - DOI 10.1016/j.swevo.2020.100802.
12. ResendeM.G.C., Ribeiro C.C. Greedy randomized adaptive search procedures: advances and extensions // Handbook of metaheuristics. - Springer, Cham, 2019. - P. 169-220.
13. Hansen P. et al. Variable neighborhood search // Handbook of metaheuristics. - Springer, Cham, 2019. - P. 57-97.
14. Tsvetkov V.Ya. Incremental Solution of the Second Kind Problem on the Example of the Living System // Biosciences biotechnology research Asia. - 2014. - Vol. 11 (Spl. Edn.). - P. 177-180.
15. Цветков В.Я. Управление с применением киберфизических систем // Перспективы науки и образования. - 2017. - № 3 (27). - C. 55-60.
16. Козлов А.В. Субсидиарные и децентрализованные системы и алгоритмы // Образовательные ресурсы и технологии. - 2020. - № 2 (31). - С. 69-76. - DOI 10.21777/2500-2112-2020-2-69-76.
References
1. Cvetkov V.Ya., Kozlov A.V. Ispol'zovanie modelej zhivyh organizmov dlya analiza evolyucii slozhnyh or-ganizacionno-tekhnicheskih sistem // Obrazovatel'nye resursy i tekhnologii. - 2019. - № 4 (29). - S. 68-76.
2. Basu R., Hoffman C., Sly A. Nonexistence of bigeodesics in planar exponential last passage percolation // Communications in Mathematical Physics. - 2022. - Vol. 389, No. 1. - P. 1-30.
3. Kortunov V.V. Formalizaciya logicheskogo sledovaniya v formal'noj logike // Servis plus. - 2018. - T. 12, № 1. - S. 122-126.
4. Liu Y. An optimization-driven dynamic vehicle routing algorithm for on-demand meal delivery using drones // Computers & Operations Research. - 2019. - Vol. 111. - P. 1-20.
5. RozenbergI.N., Cvetkov V.Ya. Primenenie mul'tiagentnyh sistem v intellektual'nyh logisticheskih sistemah // Mezhdunarodnyj zhurnal eksperimental'nogo obrazovaniya. - 2012. - № 6. - C. 107-109.
6. Sangaiah A.K. et al. IoT resource allocation and optimization based on heuristic algorithm // Sensors. -2020. - Vol. 20, No. 2. - P. 539.
7. Elshaer R., AwadH. A taxonomic review of metaheuristic algorithms for solving the vehicle routing problem and its variants // Computers & Industrial Engineering. - 2020. - Vol. 140. - DOI 10.1016/j.cie.2019.106242.
8. Voronov V.S., Peresun'ko P.V., Videnin S.A., Matyuhin N.E. Posledovatel'naya metaevristika dlya zadachi prioritetnoj upakovki s nesovmestimymi kategoriyami // Sovremennye naukoemkie tekhnologii. - 2020. -№ 6. - S. 220-227.
9. Metropolis N., Rosenbluth A.W., Rosenbluth M.N., Teller A.H., Teller E. Equation of state calculations by fast computing machines // Journal Chemical Physics. - 1953. - Vol. 21, No. 6. - P. 1087-1091. - DOI 10.1063/1.1699114.
10. Hou N. et al. An efficient GPU-based parallel tabu search algorithm for hardware/software co-design // Frontiers of Computer Science. - 2020. - Vol. 14, No. 5. - P. 1-18.
11. AlinaghianM. et al. An augmented Tabu search algorithm for the green inventory-routing problem with time windows // Swarm and Evolutionary Computation. - 2021. - Vol. 60. - DOI 10.1016/j.swevo.2020.100802.
12. ResendeM.G.C., Ribeiro C.C. Greedy randomized adaptive search procedures: advances and extensions // Handbook of metaheuristics. - Springer, Cham, 2019. - P. 169-220.
13. Hansen P. et al. Variable neighborhood search // Handbook of metaheuristics. - Springer, Cham, 2019. -P. 57-97.
14. Tsvetkov V.Ya. Incremental Solution of the Second Kind Problem on the Example of the Living System // Biosciences biotechnology research Asia. - 2014. - Vol. 11 (Spl. Edn.). - P. 177-180.
15. Cvetkov V.Ya. Upravlenie s primeneniem kiberfizicheskih sistem // Perspektivy nauki i obrazovaniya. -2017. - № 3 (27). - C. 55-60.
16. Kozlov A.V Subsidiarnye i decentralizovannye sistemy i algoritmy // Obrazovatel'nye resursy i tekhnologii. - 2020. - № 2 (31). - S. 69-76. - DOI 10.21777/2500-2112-2020-2-69-76.