УДК 519.1
З.М. АСЕЛЬДЕРОВ, А.Г. ДОНЕЦ, Л.З. ФРОЛОВА
НОВЫЙ ПОДХОД К ПРОБЛЕМЕ ГИЛЬБЕРТА-ПОЛЛАКА
1. Введение
Существуют задачи, постановки которых естественным путем связаны между собой, так как одна из них является частным случаем другой.
Задача 1. Минимальное остовное дерево
На плоскости задано п точек. Необходимо построить дерево, вершинами которого являются эти точки, с минимальной суммарной длиной рёбер.
Решением данной задачи является список, содержащий п — 1 пару точек. Каждая пара представляет ребро такого дерева. Задача построения евклидова минимального остовного дерева (МОД) возникает в приложениях, касающихся различного рода сетей. Однако МОД не всегда соответствует наикратчайшей из возможных сетей, соединяющих заданные точки, при условии, что к исходному множеству не запрещено добавлять новые точки. Если такое ограничение действительно отсутствует, то дерево, имеющее наикратчайшую длину, называется деревом Штейнера по имени соответствующей задачи.
К задаче Штейнера должным образом привлечено внимание исследователей лишь за последние десятилетия, и число публикаций на эту тему растет с каждым годом. Формулировка задачи за это время претерпела много изменений. Воспользуемся формальной постановкой задачи, предложенной в [1].
Задача 2. Минимальное дерево Штейнера
Задано множество п точек на плоскости и положительное число К. Существует ли такое конечное подмножество Q точек плоскости, что для множества вершин Р и Q существует остовное дерево с
весом не более К, где вес ребра {(х1, у1), (х2, у 2)} равен евклидову расстоянию
Дерево Штейнера на множестве вершин А называется полным, если в нем степени всех дополнительных вершин равны 3, а вершины из А имеют степень 1.
В 1977 году Гэри, Грэхем и Джонсон в [2] доказали принадлежность данной задачи классу NP-полных задач. Это послужило дополнительным стимулом для поиска эвристических алгоритмов решения задачи минимального дерева Штейнера (МДШ). Так как задача МОД имеет полиномиальное решение, то она естественным образом послужила начальным приближением в этих поисках.
2. Проблема Г ильберта-Поллака
Пусть на плоскости задано произвольное множество из п точек. Обозначим ЬМ длину минимального остовного дерева, которое стягивает эти точки, и Ь5 - длину минимального дерева Штейнера. В 1968 году
Гильберт и Поллак в [3] высказали гипотезу, которая носит их имя и которая до сих пор не доказана и не опровергнута.
между вершинами (х1, у1) и (х2, у 2).
Гипотеза Гильберта-Поллака
Для любого конечного множества точек на плоскости
д/
< 1.
(1)
/2
м
Как известно, минимальное дерево Штейнера состоит из набора полных деревьев Штейнера на
к
сествах А (г = 1,2,...,к), где иАг = Р . Пусть 0 обозначает длину соответствующего полного
1=1
дерева Штейнера, то есть Ь5(Р) = 0 + 02 +.. . + 0к . Обозначим Цг длину минимального остовного дерева на множестве вершин Аг. Объединение всех этих остовных деревьев не обязательно составляют МОД на всем множестве Р , поэтому т +т2 + .. + тк — ^ (Р) . Но гипотеза Гильберта-Поллака утверждает, что
Легко привести примеры, когда левая и правая границы (1) достигаются. В указанной статье Гильберт и Поллак доказали справедливость гипотезы для числа точек п = 3 . Затем Поллак в 1978 г. доказал ее в [4] для п = 4, а в 1981 г. Ду и Хванг в [5] упростили последнее доказательство. В 1985 году в [6] те же Ду, Яо и Хванг доказывают справедливость гипотезы для п = 5 .
Предпринимались попытки приблизиться в общем доказательстве гипотезы к нижней границе (1), которая приближенно равна 0,86603. Грехэм и Хванг [7] в 1976 году доказали, что Ь5 (Р)/Ьм (Р) — 0,69984.
Затем Чанг и Хванг [8] в 1978 году доводят это число до 0,74309. А в 1985 году Чанг и Грехэм [9] достигли левой границы 0,82416. Были и другие попытки улучшить левую границу этого соотношения [10, 11, 12, 13].
3. Параметрическое представление дерева Штейнера
Данная работа представляет собой развитие [14], в которой предлагался новый подход к этой проблеме, позволяющий свести ее к решению задачи нелинейного программирования.
Рассмотрим решение задачи Штейнера для п = 4. В отличие от обычного, традиционного представления в виде графа будем рассматривать все решения задачи (известно, что их два) в параметрическом виде, где параметрами являются длины участков (отрезков) дерева Штейнера. Кроме того,
преобразуем прямоугольную систему координат таким образом, чтобы первая точка Р1 совпадала с началом координат, а инцидентный ей отрезок 11 был направлен вверх вдоль оси ОУ (рис. 1,а). Это ведет к тому, что отрезок 12 будет иметь угол наклона 1500, а отрезок 13 - соответственно +300, а все остальные отрезки -параллельны этим трем. Координаты заданных точек легко вычисляются через параметры вектора
для каждого 1<г < к справедливо
^ ( 11 , l2, 13 , l4, 15 ) .
р.
р
л
Мі! +12
2 2
V У V
;Рз
^;1\ +13 +14
2 1 2 4
л
л/з
2
(1з+15);1'+1 -15
ОУ'
Рис. 1. Параметрическое представление дерева Штейнера
Каждое расстояние между заданными точками (вершинами) можно представить в виде длины некоторого вектора пространственной декартовой системы координат.
|РР>| — V112 + /2 + /112 ^-2“|(71; 12; А + 12^ ;
Рр3| — V /\ +/3 + /4 +1\13 +1314 + 2/:/4 — ——1(/: + /3;/3 +/4;/: + /4)| ;
|Р1 Р4| — V /12 + /32 + /52 + /1/3 + /3/5 - /1/5 — _2_1(/1 + /3; /3 + ^; /1 - /з) ;
р2 Р3| —V/2 + /32 + /4 + /2/3 + /3/4 — /2/4 = —^—1(/2 + /3; /3 + /4; / 2 — / 4)|;
|р2 Р41—д//2 + /3 + /5 + /2/3 + /3/5 + 2/2/5 — — | (/2 + /3; /3 + /5; / 2 + /5 )|
/2 + /2 + /2
^ 1 ‘'2‘'3 1 »3^1 ^-»2»5 14*'^' ‘-5>*'2 1 *5УЬ
|Рз Р„| =,/ /; +1,2 + /4/5 ^22гК/4./5; /4 + /5).
Параметрическое представление минимального дерева Штейнера позволяет для небольших значений числа заданных точек решить вопрос о справедливости гипотезы Гильберта-Поллака. Число всех
п-2 у!
возможных деревьев на п вершинах равно п , а для п = 4 оно равно 16. Попытаемся отобрать те деревья, которые могут быть МОД. Из всего числа можно отбросить 4 дерева, в которых пересекаются 2 диагонали Р1Р3 и Р2 Р4 , так как они заведомо не могут быть минимальными. Для дальнейшего отбора
сделаем предположения, которые не нарушат общности: ввиду того, что для п = 4 дерево Штейнера имеет две оси симметрии, его можно расположить так, чтобы выполнялись два неравенства, которые назовем базовыми.
|РР4| — Р2 Р>|, или /1 — /2 — /4 + /5 — /2/3 + /2/4 + /1/3 — /1/5 — /3/4 + /3/5 — 0; (2)
РзР4| — |РР21, или /42 + /52 — /12 — /22 + /4/5 — /1/2 — 0 .
Рассмотрим оставшиеся 12 видов остовных деревьев (рис. 2).
1.
2 .3
2.
23
3.
4.
23
5.
6.
7.
8.
9.
10.
11.
12.
3 2 з
4
Рис. 2. Допустимые остовные деревья для п = 4
Напомним, что в [14] было найдено условие того, что вариант (а) на рис. 1 является оптимальным:
2/3 + /3 (^1 + ^2 ) — ^1^2 > 0 , ^1 = /1 + /4 , а ^2 = /2 + /5 . (3)
Из оставшихся 12 случаев остовных деревьев следует исключить случай 3, так как в нем можно заменить отрезок Р1Р4 на меньший отрезок Р2Р3, а также случай 4, так как в нем можно заменить отрезок Р3Р4 на
меньший отрезок Р1Р2. Случай 7 ввиду условий (2) хуже случая 5, поэтому его также можно исключить. Рассмотрим теперь случай 11. Если его выбрать в качестве МОД, то должны выполняться неравенства
РР2 — РР* , или /1/2 + /2 — /3 + /5 + /1/3 + /3/5 — /1/5
(4)
|Р3Р4| — Р2Р31, или /4/5 + /5 — /2 + /3 + /2/3 + /3/4 — /2/4
2
1
1
1
1
4
4
4
4
1
4
2
2
1
1
4
1
1
4
Если сложить эти неравенства, получим новое:
2/3 + /3 ((/, + /2 + /3 + /4) — (/1 + )/ + /5) £ 0 .
Но это неравенство противоречит (2), а это может быть, если построение дерева Штейнера не оптимально, что не соответствует начальным установкам. Это значит, что случай 11 можно исключить. В
случае 12 также: если использовать неравенства |рР2|>\Р2Р3\ и |Р3Р4|>|Р,Р4|, то придем к тому же
противоречию, то есть случай 12 также можно исключить.
В результате остается семь возможных остовных деревьев, которые перечислены ниже:
М,(РР„ Р2Р3, Р3Р4); М2(РР„ РгР3, РР,); М3(РР„ Р2Р3, Р2Р,);
М4(Р Р„ Р2Р4, Р5Р4); М,(Р Р„ Р Р3, Р3Р4); М6(Р Р„ Р Р3, РР,); (5)
М,(РР Р Р Р,Р.).
4. Постановка задачи и перспективы ее решения
Рассмотрим дерево М,. Для того, чтобы доказать неравенство (1), необходимо решить следующую задачу:
5 /3
Минимизировать / (Р) = £ /—V (р Р+Р Р+1Р. р4 ) (6)
г = 1 2
при базовых ограничениях и следующих:
Р Р»| > |р Р, | или — /^ + /2 + /4 — /, /2 + /, /3 + 2/, /4 + /3/4 > 0 ;
|РР31 > |Р2Р31 или /,2 — /2 + /,/3 + 2/,/4 — /2/3 + /2/4 > 0;
|Р,Р4| > |Р3Р4| или /,2 + /32 — /2+ /,/3 — /,/, + /3/5 — /4/5 > 0; (7)
|рР4І —|РР31 или — /2 + /2 + /3/5 + 2/2/5 -/3/4 + /2/4 — 0 ;
рР4 — РР4 или /2 + /3 — /2 + /2/3 + 2/2/5 + /3/5 — /4/5 — 0■
Существуют вычислительные методы, решающие подобные задачи. Напомним, что функция, которую
2 и—3
необходимо миними
г=1
2и—3 3 /
визировать, есть /(Ь) = ^/і — ^Ьм (Р) ■ Если выбрано дерево, претендующее на
МОД, то ограничения состоят из трех типов. Первый тип ограничений представляет условия, которые уменьшают перебор МОД (симметрия, фиксированные отношения ребер и т.д.). Второй тип обеспечивает условия минимальности выбранного дерева Штейнера (для п = 4 это (3)). Третий тип - это условие того, что любое, не включенное в МОД ребро, больше всех ребер, с которыми оно составляет цикл.
Для решения вопроса о справедливости гипотезы для п = 4 этим способом необходимо решить 7 задач, в которых три ограничения (2 - 3) будут присутствовать во всех задачах, а остальные семь типа (7) будут меняться в каждой задаче в зависимости от выбранного МОД.
Для п = 5 число остовных деревьев равно 55-2 = 125. Однако не все они могут претендовать на МОД.
Так как рассматриваются только полные деревья Штейнера, то в МОД не могут быть вершины со степенью 4, так как тогда угол выпуклого пятиугольника будет больше 1800, что невозможно. Точно так же, как и для случая четырех вершин, отбрасываются деревья с пересекающимися ребрами. В результате останутся только 49 деревьев, которые перечислены на рис. 3.
1. 2. 3. 4. 5. 6. 7.
Л* IV їГ 'Г 'ГГ Л'' '-V
8.
9.,
10.
5<
11.
12. 2і
5* *4
13.
14.
5<
17.
18. 2
3 'гг ^
19.
5<
20.
21.
5^ ®4
22.
5
24.
5»-------*4
25.
’и н ^ '*§Ґ
5*- 4 5* *4 5*— 4
26.
32 1
4 36.
4
43.
30.^ 3 37.
44.
31.
32.
3
ІУ ¿У
5
33.
5« *4 5*—*4
28.
2
5* *4
27.
3 2 1
34.
35.
т4
40.
5* *4
41.
2
45.
'4
46.
■4
47.
т4
48.
42.
ЁТ £7’
49.
3
1
1
3
1
4 5* 4 5* *4 5^~~4
Рис. 3. Допустимые остовные деревья для п = 5
3
Используя параметрическое представление, пронумеруем отрезки и вершины оптимального дерева Штейнера, как на рис. 4.
В качестве первого типа ограничений можно выбрать РР2 > Р,Р5 . Если это не так, то этого можно
добиться, повернув рисунок на 180 вокруг оси ОУ и поменяв нумерацию на обратную. Если теперь это
3
3
неравенство применить к рис. 3, то можно еще отсеять 11 вариантов с номерами 3, 4, 5, 6, 7, 8, 9, 11, 12, 15, 18, так как в них можно добиться улучшения МОД за счет замены ребра 12 на меньшее 15. Пользуясь рис. 4,
легко выразить координаты точек Рі (і = 1,2,3,4,5) через параметры вектора Ь = (/1з/2,. . . ,/7). После этого можно построить еще 4 дерева Штейнера и найти их длину, которую обозначим Бі (і = 1,2,3,4).
Для решения задачи получим еще четыре
7
ограничения типа ^^ £5^- . Первые пять
г=1
ограничений позволят отсеять некоторые из остовных деревьев на рис. 3. Затем для каждого оставшегося дерева можно решать задачу минимизации функции при всех ограничениях, включая и ограничения
третьего типа.
5. Выводы
Для больших значений п можно разработать комплекс программ, состоящих из трех алгоритмов.
А1 - алгоритм, перебирающий все возможные остовные деревья и отсеивающий те, которые заведомо не могут быть минимальными. При этом используются только геометрические свойства плоскости.
А 2 - алгоритм, выбирающий топологию дерева Штейнера и составляющий для каждого остовного дерева задачу нелинейного программирования. При этом отсеиваются те остовные деревья, которые не соответствуют оптимальному дереву Штейнера.
А3 - алгоритм, решающий задачу нелинейного программирования.
Если решения всех задач дают всем функционалам неотрицательное значение, то тем самым будет выполняться неравенство (3). Использование информационных технологий позволит решить проблему Г ильберта-Поллака.
СПИСОК ЛИТЕРАТУРЫ
1. Гэри М., Джонсон Д. Вычислительные машины и труднорешаемые задачи. - М.: Мир, 1982. - 415 с.
2. Garey M.R.,Graham R. L.,Johnson D. S.The complexity of computing Steiner minimal trees// SIAM J. Appl. Math. - 1977. - Vol. 32, № 4. - P. 835 - 859.
3.Gilbert E.N. and Pollak H.O. Steiner minimal trees // SIAM J. Appl. Math. - 1968. - Vol. 16. - P. 1 - 29.
4. Pollak H.O. Some remarks on the Steiner problem // J. Combin. Theory. Ser. A. - 1978. - Vol. 24. - P. 278 - 295.
5. Du D.Z.,Yao E.Y., Hwang F K. A short proof of a result of Pollak on Steiner minimal trees // J. Combin. Theory. Ser. A. - 1982. -Vol. 32. - P. 396 - 400.
6. Du D.Z., Hwang F. K., Yao E. Y. The Steiner ratio conjecture is true for five points // J. Combin.Theory. - 1985. - Vol. 38, № 2. -P. 230 - 240.
7. Graham R. L., Hwang F. K. Remarks on Steiner minimal trees // I.Bull.Inst.Math.Acad.Sinica. - 1976. - Vol. 4. - P. 177 - 182.
8. Chang F. R. K., Hwang F. K. A lower bound for the Steiner tree problem // SIAM J.Appl.Math. - 1978. - Vol. 34, № 1. - P. 27 -36.
9. Chang F. R. K., Graham R. L. A new bound for Euclidean Steiner minimal trees // Ann. N.Y. Acad. Sci. - New York. - 1985. -Vol. 440. - P. 328 - 346.
10. Du D. Z., Hwang F. K. A new bound for the Steiner ratio // Trans. Amer. Math. Soc. - 1978. - Vol. 278. - P. 137 - 148.
11. Du D. Z. On Steiner ratio conjectures // Ann. Oper. Res. - 1991. - Vol. 33. - P. 437 - 449.
12. Du D. Z., Hwang F. K. A proof of the Gilbert-Pollak conjecture on the Steiner ratio // Algorithmica. - 1992. - № 7. - P. 121 - 135.
13. Trietsch D., Kellogg J. L., Handler G. Y. The Gilbert and Pollak conjecture - a generalization // Networks. - 1985. - Vol. 15, №
3. - P. 365 - 380.
14. Донец А. Г. О гипотезе Гильберта-Поллака для оптимальных деревьев // Теория оптимальных решений: Сб. научных трудов. - Киев: Ин-т кибернетики им. В.М. Глушкова НАН Украины, 2001. - С. 72 - 76.