Наука к Образование
МГТУ им. Н.Э. Баумана
Сетевое научное издание
Наука и Образование. МГТУ им. Н.Э. Баумана. Электрон. журн. 2015. № 09. С. 135-144.
Б01: 10.7463/0915.0800020
Представлена в редакцию: Исправлена:
© МГТУ им. Н.Э. Баумана
16.07.2015 30.07.2015
топакЬог@гаУ-ББСсли
УДК 519.87+519.6+681.324
Алгоритм дифференциальной эволюции в задачах оптимизации маршрутов прокладки инженерных сетей
Монахов О. Г.1'", Монахова Э. А.1, Токтошов Г. Ы.1
Институт вычислительной математики и математической геофизики
СО РАН, Новосибирск, Россия
В работе рассматривается задачи оптимизации структуры инженерных сетей обеспечивающей минимальную суммарную стоимость строительства и эксплуатации инженерных сетей. Приведена математическая постановка задачи на языке теории гиперсетей учитывающая взаимозависимость показателей элементов, область размещения и проектируемую сеть. Предложен метод дифференциальной эволюции для решения задачи в гиперсетевой постановке, который позволяет улучшить первоначального решения путем отображения ребер вторичной сети в первичную сеть с использованием дополнительных точек Штейнера. Как показали вычислительные эксперименты, используемый алгоритм дифференциальной эволюции позволяет сократить в среднем суммарные затраты для заданной инженерной сети по сравнению с начальным решением на 5% - 15%, в зависимости от конфигурации, параметров и области размещения
Ключевые слова: гиперсеть, алгоритм дифференциальной эволюции, минимальная стоимость инженерных сетей
Введение и постановка задачи
Эффективность функционирования будущей сети (газо-, водо-, и теплоснабжения, сети связи и линии электропередач, автомобильные или железные дороги и т.д.) зависит от многих факторов, среди которых значимыми являются: рельеф, инженерно-геологические условия, ценность занимаемых земель и т.д. [1, 2]. Эти параметры должны учитываться еще при выборе направления трассы для прокладки физических линий, а значит и до начала строительно-монтажных работ. Другими словами, заданная территория предопределяет структуру любой инженерной сети, от которой в значительной степени зависит экономическая целесообразность и техническая возможность построения сети на соответствующем месте или, наоборот, от вида и назначения проектируемой сети зависит «доступность» области размещения.
В связи с этим в данной работе предлагается гиперсетевой подход к оптимизации инженерных сетей и решение поставленной задачи методом дифференциальной эволюции, учитывающей особенности реальной местности, вида и назначения проектируемой сети.
При проектировании инженерных сетей в качестве исходных данных известны: О -область размещения инженерных сетей; I = {1,..., т\ - набор пунктов размещения источников целевой продукции (газ, нефть, вода и т.д.); J = {1,..., п\- набор пунктов размещения потребителей (промышленные зоны, жилые районы, торговые узлы и т.д.); /г>, г е I, ] е J - расстояние из г -го пункта в j -ой потребитель; А = {ац }, г = 1,2,..., т; j = 1,2,..., п - стоимость земли (аренда, налог и т.д.) на участке предполагаемой трассы; В = {Ь у }, г = 1,2,..., т; j = 1,2,..., п - стоимость строительства
линейных сооружений (рытье траншеи, строительство коллекторов, тоннелей и опор и т.п.); ру, ге I, j е J - длина линейной части (труб, кабелей и т.п.) проектируемой сети;
С = {ву },г = 1,2,..., т; j = 1,2,..., п - стоимость строительства и монтажа инженерных сетей
(газо-, -нефте- или водопроводов, линии электросвязи и электропередачи и т.д.); Б = },г = 1,2,..., т; у = 1,2,..., п - стоимость эксплуатации инженерных сетей на данном
участке.
Тогда задача построения оптимальной структуры инженерных сетей, заключается в поиске таких трасс, прокладка физических линий (труб, кабелей и т.п.) через которых обеспечивал бы минимальность суммарную стоимости строительства и эксплуатации инженерных сетей.
Очевидно, что использование графов при решении поставленной задачи не представляется возможным, поскольку в данной ситуации рассматривается взаимодействие элементов двух подсистем, такие как область размещения и проектируемая сеть. В связи с этим в настоящей работе предлагается иерархический подход к решению поставленной задачи, основанный на модели гиперсетей, которые позволяет учесть не только взаимодействие этих подсистем, но и взаимозависимость показателей их элементов. Другими словами, в отличие от графов, гиперсети позволяет рассмотреть погружение одной подсистемы в другую, например, размещение инженерной сети в заданную область. Кроме того гиперсети учитывает пространственную взаимосвязь элементов отдельных подсистем, что важно для решения рассматриваемой задачи, так как в нашем случае рассматривается взаимозависимость показателей элементов области размещения (трассы) и инженерной сети.
В нашем случае, процесс построения инженерных сетей рассматривается как двухуровневая иерархическая система, состоящая из следующих подсистем:
- выбор трассы для данного вида инженерной сети;
- реализация (размещения) инженерной сети по соответствующим трассам.
1. Математическая модель
Пусть пространственное взаиморасположение этих подсистем моделируется гиперсетью [3]
Определение 1. Гиперсеть £ = (X, V, Я; Р, ¥,Ж) включает следующие объекты: X = (х,х2,..., хи) - множество узлов; V = (^, v2,..., V ) - множество трасс;
Я = (гх, г2,..., гт ) - множество физических линий (труб, кабелей и т.п.);
P : V ^ 2- отображение, сопоставляющее каждому элементу V е V множество P(v) с X, тем самым, отображение P определяет граф первичной сети PS = (X, V; P) ;
Р : К ^ - отображение, сопоставляющее каждому элементу г е Я множество трасс
Р(г) , образующих простой маршрут в графе PS = (XV; P), причем семейство 2ГР8
содержит такие подмножества, трассы которых составляют связную часть графа PS. Отображение Р определяет гиперграф Р£ = (V, Я; Р) . Множество всех маршрутов Р(г) , сопоставляющее каждому ребру г е Я графа единственный маршрут в графе PS, назовем вложением графа в PS.
Уг е Я Ж : г ^ 2^Р(г)) - отображение, сопоставляющее каждому элементу г е Я подмножество Ж (г) с P(Р (г)), где P(Р (г)) = У - множество вершин в PS, инцидентных трассам Р(г) с V. Отображение Ж определяет граф вторичной сети Ж1 = (У, Я; Ж) .
Здесь в качестве первичной сети PS = (X, V; P) рассматривается дискретный аналог
области О, полученной на основе сеточной технологии [4]. Граф PS можно интерпретировать как сеть возможных (допустимых) трасс, у которого вершины X соответствуют узлам сетки, а ребра V - ветвям.
Вторичная сеть Ж^ = (У с X, Я; Ж) соответствует структуре проектируемой сети, у которого множества вершин У разбито на два непересекающихся подмножества, т.е. У = I J и I J = ф . Первое подмножество I = {1,..., т\, содержит вершины, соответствующие пунктам, где могут быть размещены источники целевой продукции. Второе подмножество J = {1,..., п}, содержит вершины, соответствующие потребителям. Ребра Я графа вторичной сети Ж5 соответствуют физическим линиям (трубы, кабели и т.д.), которые непосредственно осуществляет перемещение целевой продукции от источника к потребителям.
Тогда задача оптимизации инженерной сети на заданной области в терминах теории гиперсетей формулируется следующим образом: требуется построить гиперсеть S такую, для которой функционал
0(Х) = 1 К(а + Ь) ■ ¡(V) + (с + а)-р(г)) (1)
геЯ vеР(г)
принимал минимальное значение, где: р(г) = ^ I (V).
vеР (г)
Таким образом, в задаче ищутся трассы F(r), прокладка физических линий через которых обеспечивает минимальности суммарных затрат (1).
Данную задачу можно рассматривать как частный случай задачи Штейнера, относящуюся к классу NP-трудных задач [5]. Для решения таких задач применяются различные приближенные и эвристические методы. Для поиска оптимальной инженерной сети на заданной области в данной работе используется модифицированный алгоритм дифференциальной эволюции [6, 7, 8], адаптированный к прикладной задаче трассировки инженерных коммуникаций. Пусть область размещения инженерной сети (территория) представлена цифровой моделью местности (ЦММ), в нашем случае, это будет взвешенная решетка (граф первичной сети) с выделенными вершинами-потребителями и вершиной-источником для данной инженерной коммуникации. Веса ребер будут определяться затратами на строительство и эксплуатацию трассы между заданными вершинами сети (узлами решетки) в соответствии с функционалом (1). В качестве начального решения задачи минимизации суммарных затрат (1) будем использовать минимальное покрывающее дерево, полученное на взвешенном полном графе, вершины которого представляют собой заданные вершины-потребители и вершина-источник для данной инженерной коммуникации, а веса ребер - расстояния между заданными вершинами на взвешенном графе первичной сети. Для нахождения минимального покрывающего дерева на полном графе используется алгоритм Крускала или Прима [9], а для определения матрицы кратчайших путей на графе первичной сети - алгоритм Флойда - Уоршелла [9]. Найденное минимальное покрывающее дерево отображаем на граф первичной сети, при этом каждое ребро дерева отображается в кратчайший путь между соответствующими вершинами графа, и получаем, таким образом, дерево на графе первичной сети как начальное решение задачи минимизации суммарных затрат для данной инженерной коммуникации. Дальнейшее улучшение начального решения происходит путем свободного размещения произвольного числа к дополнительных точек (ДТ) (точек Штейнера, разветвителей, подстанций). Для поиска координат ДТ с целью оптимизации затрат для инженерной сети на заданной области используется следующий алгоритм дифференциальной эволюции.
2. Алгоритм дифференциальной эволюции
Алгоритм дифференциальной эволюции [6, 7, 8] основан на моделировании процесса естественного отбора в популяции особей, каждая из которых представлена точкой в пространстве решений задачи оптимизации. Особи представлены структурами данных Gen - векторами (точками в k-мерном пространстве, в котором определена целевая функция), включающими свободные (неопределенные) параметры рк дерева TS: Gen = {Р} = {р1,р2,..., рк},к > 0 . Эти параметры определяют координаты дополнительных
точек TS(Gen). Каждая популяция является множеством структур данных Gen и определяет множество деревьев TS(Gen). На первом шаге алгоритма инициализируется
множество случайных векторов, называемых поколением, представляющих собой возможные решения задачи оптимизации. Число векторов в каждом поколении (размер популяции) одно и то же и является одним из параметров настройки метода. Далее, на каждом шаге эволюционного процесса алгоритм генерирует новое поколение векторов, случайным образом комбинируя между собой векторы предыдущего поколения. Генерация векторов нового поколения производится следующим образом. Для каждого вектора из старого поколения (базового вектора) выбираются три различных случайных вектора xGl, , xGз также среди векторов старого поколения, за исключением самого вектора, и генерируется так называемый мутантный вектор по соотношению:
+1 = x<Gl + F■ (xGз -x(G2),
где F - один из параметров настройки метода (масштабирующий коэффициент при мутации), характеризующий максимально возможное расстояние, на которое может расшириться область поиска оптимума по одной переменной за один шаг эволюции -положительная действительная константа в интервале (0^ < 2). Далее над мутантным вектором выполняется операция кроссовера (скрещивания). В ходе неё некоторые координаты мутантного вектора замещаются соответствующими координатами из базового вектора. Каждая координата замещается с некоторой вероятностью (частота кроссовера), которая также является параметром настройки метода дифференциальной эволюции. Полученный после кроссовера вектор называется пробным вектором. Если он оказывается лучше базового вектора (значение целевой функции улучшилось), то в новом поколении базовый вектор заменяется на пробный, в противном случае базовый вектор сохраняется в новом поколении. На каждом шаге эволюционного процесса определяется лучший вектор поколения с целью контроля скорости поиска оптимального решения. Условиями окончания моделирования могут быть следующие: достигнуто заданное предельное количество шагов эволюции (расчётное время); значение критерия оптимизации лучшего вектора поколения не изменяется на протяжении заданного предельного количества шагов эволюции; достигнуто удовлетворительное значение критерия оптимизации.
3. Экспериментальные результаты
Алгоритм дифференциальной эволюции был успешно применен для поиска оптимальной инженерной сети на заданной области. Значения основных параметров в экспериментах следующие: размер популяции - 100, масштабирующий коэффициент при мутации - 0.6, частота кроссовера - 0.7, число вершин-потребителей - от 10 до 100, число дополнительных вершин - от 3 до 20. Алгоритм дифференциальной эволюции для оптимизации инженерной сети был реализован в системе Wofram МаШетайса 10, которая позволяет использовать цифровую моделью местности для заданной области. На рис. 1 приведены результаты работы предложенного алгоритма для 8-ми вершин-потребителей и
3-х дополнительных вершин и сократить на четверть суммарные затраты для данной инженерной коммуникации по сравнению с начальным решением (показано слева) на основе алгоритма Крускала.
О 20 40 60 0 20 40 60
Рис.1. Построение начального решения (слева) и его улучшение для 8-ми вершин-потребителей и 3-х дополнительных вершин (справа): вид с боку и вид сверху.
В Табл. 1. приведена средняя величина сокращения затрат в процентах (а в круглых скобках - ее среднеквадратическое отклонение) для инженерных сетей по сравнению с начальным решением для различного числа дополнительных точек (ДТ) и вершин-потребителей (П), отметим, что для ДТ > П эксперименты не производились. Как показали вычислительные эксперименты, используемый алгоритм дифференциальной эволюции позволяет сократить в среднем суммарные затраты для заданной инженерной сети по сравнению с начальным решением на 5% - 15%, в зависимости от конфигурации, параметров и области размещения.
Таблица 1. Средняя величина сокращения затрат (в круглых скобках - ее среднеквадратическое отклонение) для инженерных сетей в % от начального решения для различного числа дополнительных точек (ДТ) и
вершин-потребителей (П)
ДТ \ П 10 40 70 100
3 7.3 (3.4) 11.0 (5.7) 11.0 (5.3) 9.0 (2.4)
5 7.3 (3.1) 11.8 (7.7) 11.2 (3.3) 10.3 (2.1)
7 6.1 (3.0) 8.0 (2.9) 10.6 (4.8) 14.6 (5.4)
10 0.3 (0.5) 8.8 (4.0) 14.3 (4.9) 13.6 (2.7)
15 0 9.7 (5.5) 9.5 (2.6) 10.3 (2.8)
20 0 4.6 (3.0) 12.7 (5.3) 15.9 (5.8)
Заключение
Численные результаты показывает, что метод дифференциальной эволюции, примененный на модели гиперсетей, в отличие от классических методов оптимизации позволяет сократить суммарную стоимость строительства и эксплуатации для заданной инженерной сети по сравнению с начальным решением.
Показано, что предложенный гиперсетевой подход, в отличие от традиционных методов оптимизации инженерных сетей позволяет учесть взаимодействие и взаимозависимость параметров элементов отдельных подсистем, что важно для комплексной оценки характеристики элементов проектируемой сети и «область размещения».
Исследование выполнено при финансовой поддержке РФФИ в рамках научных проектов № 14-01-92694 и № 14-01-00031
Список литературы
1. Ловягин В.Ф. Геоинформационные технологии в инженерных изысканиях трасс линейных сооружений. Новосибирск: СГГА, 2010. 153 с.
2. Райфельд В.Ф. Инженерно-геодезические работы при изысканиях линейных сооружений. М.: Недра, 1983. 143 с.
3. Попков В.К. Математические модели связности / отв. ред. А. С. Алексеев. 2-е изд. Новосибирск: ИВМиМГ СО РАН, 2006. 490 с.
4. Попков В.К., Токтошов Г.Ы., Юргенсон А.Н. Об одном подходе к оптимизации инфраструктуры инженерных сетей // Вестник СибГУТИ. 2012. № 3. С. 11-28.
5. Гэри М., Джонсон Д. Вычислительные машины и труднорешаемые задачи: пер. с англ. М.: Мир, 1982. 416 с. [Garey M.R., Johnson D.S. Computers and Intractability: A Guide to the Theory of NP-Completeness. San Francisco: W.H. Freeman and Co., 1979.].
6. Storn R., Price K. Differential evolution - a simple and efficient heuristic for global optimization over continuous spaces // Journal of Global Optimization. 1997. Vol. 11, no. 4. P. 341-359. DOI: 10.1023/A:1008202821328
7. Карпенко А.П. Современные алгоритмы поисковой оптимизации. Алгоритмы, вдохновленные природой. М.: Изд-во МГТУ им. Н.Э. Баумана, 2014. 446 с.
8. Zaheer H., Pant M., Kumar S., Monakhov O., Monakhova E., Deep K. A new guiding force strategy for differential evolution // International Journal of System Assurance Engineering and Management. 2015. Vol. 6. P. 1-14. DOI: 10.1007/s13198-014-0322-6
9. Кормен Т.Х., Лейзерсон Ч.И., Ривест Р.Л., Штайн К. Алгоритмы: построение и анализ: пер. с англ. 2-е изд. М.: Вильямс, 2006. 1296 с. [Cormen T.H., Leiserson C.E., Rivest R.L., Stein C. Introduction to Algorithms. 2nd ed. MIT Press and McGraw-Hill, 2001.].
Science^Education
of the Bauman MSTU
Science and Education of the Bauman MSTU, 2015, no. 09, pp. 135-144.
DOI: 10.7463/0915.0800020
Received: 16.07.2015
Revised: 30.07.2015
ISS N 1994-0408 © Bauman Moscow State Technical Unversity
Differential Evolution Algorithm for Route Optimization Problems of Engineering Networks
O.G. Monahov1'*, E.A. Monakhova1, G.Y. i'[email protected]
Toktoshov1
institute of Computational Mathematics and Mathematical Geophysics
SB RAS, Novosibirsk, Russia
Keywords: hypernetwork, differential evolution algorithm, minimum cost of engineering networks
The paper considers problems of structure optimization of engineering networks to provide a minimum total cost of engineering networks in construction and operation. The mathematical statement of the problem in terms of the hyper-network theory takes into account the interdependence of indicators of hyper-network elements, a layout area and a projected network. A digital model of terrain presents the placement area of engineering networks (a territory). In our case, it will be a weighted mesh (graph of primary network) of dedicated vertices-consumers and a vertex-source for the utilities. The edges weights will be determined by the costs of construction and operation of the route between the given vertices of the network. The initial solution of the problem of minimizing the total cost will be using the minimum spanning tree, obtained on a weighted complete graph the vertices of which are defined by vertices-consumers and the vertex-source for the utilities, and the weights of edges are the distance between the vertices on the given weighted graph of the primary network. The work offers a method of differential evolution to solve the problem in hyper-network formulation that improves the initial solution by the mapping the edges of the secondary network in the primary network using additional Steiner points. As numerical experiments have shown, a differential evolution algorithm allows us to reduce the average total cost for a given engineering network compared to the initial solution by 5% - 15%, depending on the configuration, parameters, and layout area.
References
1. Lovyagin V.F. Geoinformatsionnye tekhnologii v inzhenernykh izyskaniyakh trass lineinykh sooruzhenii [Geoinformation technologies in engineering survey of tracks of linear structures]. Novosibirsk, Siberian State University of Geosystems and Technologies Publ., 2010. 153 p. (in Russian).
2. Raifel'd V.F. Inzhenerno-geodezicheskie raboty pri izyskaniyakh lineinykh sooruzhenii [Engineering and geodesic works in the research of linear structures]. Moscow, Nedra Publ., 1983. 143 p. (in Russian).
3. Popkov V.K. Matematicheskie modeli svyaznosti [Mathematical models of connectivity]. Novosibirsk, ICM&MG SB RAS Publ., 2006. 490 p. (in Russian).
4. Popkov V.K., Toktoshov G.Y., Yurgenson A.N. One Approach to Networks Infrastructure Optimization. VestnikSibSUTI, 2012, no. 3, pp. 11-28. (in Russian).
5. Garey M.R., Johnson D.S. Computers and Intractability: A Guide to the Theory of NP-Completeness. San Francisco, W.H. Freeman and Co., 1979. (Russ. ed.: Garey M.R., Johnson D.S. Vychislitel'nye mashiny i trudnoreshaemye zadachi. Moscow, Mir Publ., 1982. 416 p.).
6. Storn R., Price K. Differential evolution - a simple and efficient heuristic for global optimization over continuous spaces. Journal of Global Optimization, 1997, vol. 11, no. 4, pp. 341-359. DOI: 10.1023/A:1008202821328
7. Karpenko A.P. Sovremennye algoritmy poiskovoi optimizatsii. Algoritmy, vdokhnovlennye prirodoi [Modern algorithms of search engine optimization. Nature-inspired optimization algorithms]. Moscow, Bauman MSTU Publ., 2014. 446 p. (in Russian).
8. Zaheer H., Pant M., Kumar S., Monakhov O., Monakhova E., Deep K. A new guiding force strategy for differential evolution. International Journal of System Assurance Engineering and Management, 2015, vol. 6, pp. 1-14. DOI: 10.1007/s 13198-014-0322-6
9. Cormen T.H., Leiserson C.E., Rivest R.L., Stein C. Introduction to Algorithms. 2nd ed. MIT Press and McGraw-Hill, 2001. (Russ. ed.: Cormen T.H., Leiserson C.E., Rivest R.L., Stein C. Algoritmy:postroenie i analiz. Moscow, Publishing House "Vil'yams", 2005. 1296 p.).