Визуализация графов, весна 2014: Визуализация деревьев

13
Визуализация графов Computer Science клуб, март 2014 Александр Дайняк, ФИВТ МФТИ www.dainiak.com

Upload: cs-center

Post on 15-Apr-2017

145 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Визуализация графов, весна 2014: Визуализация деревьев

Визуализация графовComputer Science клуб, март 2014

Александр Дайняк, ФИВТ МФТИ

www.dainiak.com

Page 2: Визуализация графов, весна 2014: Визуализация деревьев

Правила укладки корневых деревьев

• Отсутствие скрещиваний рёбер (planar)

• Прямолинейность (straight-line)

• Строгая вертикальная монотонность (strictly upward) —𝑦-координаты вершин строго больше чем у их потомков

• Сильное соблюдение порядка потомков (strongly order-preserving):𝑥левого ребёнка ≤ 𝑥вершины ≤ 𝑥правого ребёнка

Page 3: Визуализация графов, весна 2014: Визуализация деревьев

Деревья с площадью Ω 𝑛 log 𝑛

Page 4: Визуализация графов, весна 2014: Визуализация деревьев

h-v-укладка и её смещение

Page 5: Визуализация графов, весна 2014: Визуализация деревьев

Склейка h-v-дерева из поддеревьев

Page 6: Визуализация графов, весна 2014: Визуализация деревьев

Задача: минимизация площади

𝑥левого ребёнка < 𝑥вершины < 𝑥правого ребёнка

Площадь в общем случае может быть Ω 𝑛2

𝑥левого ребёнка ≤ 𝑥вершины ≤ 𝑥правого ребёнка

Page 7: Визуализация графов, весна 2014: Визуализация деревьев

Задача: минимизация площади

T. M. Chan ’2002. Достаточно площади 𝑂 𝑛 ⋅ log 𝑛 ⋅ 2 2 log 𝑛 .

A. Garg, A. Rusu ’2003. Площадь Θ 𝑛 log 𝑛 .

Обе теоремы используют path-based approach.

Page 8: Визуализация графов, весна 2014: Визуализация деревьев

Жадный путь 𝑣0, 𝑣1, …

Полагаем 𝑇0 ≔ 𝑇 (исходное дерево).

Пусть 𝑣𝑖 , 𝐿𝑖 , 𝑅𝑖 — корень и левое/правое поддеревья 𝑇𝑖.

Тогда 𝑇𝑖+1 ≔ максимальное из 𝐿𝑖 , 𝑅𝑖.

Поддеревья пути — это поддеревья,корни которых суть сёстры вершин пути.

Page 9: Визуализация графов, весна 2014: Визуализация деревьев

Выбор хорошего «направляющего пути»

Пусть 𝑚 — параметр (выберем позже).

Пусть 𝑣𝑘 — сама нижняя из вершин жадного пути, для которой 𝑇𝑘 ≥ 𝑛 −𝑚.

Пусть 𝑣𝑘 — левый потомок 𝑣𝑘−1.

𝜋′ — часть жадного пути до 𝑣𝑘.

𝜋′′ — самый левый путь в дереве от 𝑣𝑘 до листа.

Page 10: Визуализация графов, весна 2014: Визуализация деревьев

Получение рекуррентной оценки

Пусть уже построены поддеревья для всех

вершин из пути 𝜋′ ∪ 𝜋′′.

Пусть 𝛼 и 𝛽 — самые широкие укладки для

левых и правых поддеревьев для вершин 𝜋′.

Пусть 𝛾 — самая широкая укладка для вершин

из 𝜋′′.

Имеем

𝑊 𝑇 ≤ max 𝑊 𝛼 +𝑊 𝛽 + 2, 1 +𝑊 𝛾 .

Т.к. 𝛼 ≤ 𝑚, 𝛽 ≤ 𝑚 и 𝛾 ≤ 𝑛 −𝑚, то

𝑊 𝑛 ≤ max 2 ⋅ 𝑊 𝑚 + 2, 1 +𝑊 𝑛 −𝑚 .

𝛾

𝛼

𝛽

≥ 𝑛 −𝑚 вершин

Page 11: Визуализация графов, весна 2014: Визуализация деревьев

Избавление от max

Получили неравенство 𝑊 𝑛 ≤ max 2 ⋅ 𝑊 𝑚 + 2, 1 +𝑊 𝑛 −𝑚 .

Рекурсивно применяя это неравенство, получим𝑊 𝑛 ≤ 1 + 1 +⋯+ 1

𝑘 раз

+𝑊 𝑛 − 𝑘𝑚 ,

где 𝑘 наибольшее такое, что 𝑊 𝑛 − 𝑘𝑚 ≥ 2 ⋅ 𝑊 𝑚 + 1.

Тогда 𝑊 𝑛 ≤ 𝑘 + 2 ⋅ 𝑊 𝑚 + 2 ≤ 2 ⋅ 𝑊 𝑚 + 𝑂 𝑛 𝑚 .

Page 12: Визуализация графов, весна 2014: Визуализация деревьев

Немного матана…

Получается, что для любых 𝑛 и 𝑚, где 𝑚 ≤ 𝑛, выполнено𝑊 𝑛 ≤ 2 ⋅ 𝑊 𝑚 + 𝑂 𝑛 𝑚

Обозначим 𝑓 𝑥 ≔ 𝑊 2 log 𝑥 2 2 .

Положив 𝑚 ≔ 2 log 𝑥 2 2−log 𝑥, получаем

𝑓 𝑥 ≤ 2 ⋅ 𝑊 2 log 𝑥 2 2−log 𝑥 + 𝑂 𝑥 ≤ 2 ⋅ 𝑊 2 log 𝑥−1 2 2 + 𝑂 𝑥 =

= 2 ⋅ 𝑓 𝑥 2 + 𝑂 𝑥 .

Page 13: Визуализация графов, весна 2014: Визуализация деревьев

Завершение доказательства

Обозначив 𝑓 𝑥 ≔ 𝑊 2 log 𝑥 2 2 , получили

𝑓 𝑥 ≤ 2 ⋅ 𝑓 𝑥 2 + 𝑂 𝑥 .

Отсюда 𝑓 𝑥 = 𝑂 𝑥 log 𝑥 .

Обозначив 𝑥 ≔ 2 2 log 𝑛, получаем

𝑊 𝑛 = 𝑂 2 2 log 𝑛 ⋅ log 𝑛 .

Общая площадь укладки не больше, чем

𝑊 𝑛 ⋅ 𝑛 = 𝑂 𝑛 ⋅ log 𝑛 ⋅ 2 2 log 𝑛 .