-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathlecture5.tex
61 lines (38 loc) · 2.79 KB
/
lecture5.tex
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
\section*{Задача про петухов на графе}
\subsection*{Что-то простое для решения, 2-приблежение через MST}
\subsection*{Christofidis}
Работает если $C$ это метрика
Возьмем MST(G), и обозначим за $A = \{V | (2 | deg)\}$
Возьмем $M$ парасочетание в $A$, нужно $C(M) \to \min$
Предположим что существует полиноминальный алгоритм поиска парсоча
в полном графе.
Итак мы добавили эти ребра к МСТ, теперь есть эйлеров цикл.
Далее сделаем гамильтонов из эйлерова, за счет свойств метрики и
правил построения, его стоймость не выше чем стоимость элейлерова:
\[
C(P) \leq C(ET) = C(T) + C(M) \leq OPT + C(M) \leq \frac32 OPT
\]
Осталось доказать что $C(M) \leq \frac12 OPT$, то что $C(T) \leq OPT$
доказывалось в предидущем пункте.
Ну тут просто, нарисуем вершинки, и соединим подряд как нибудь,
тогда $C(M_1) + C(M_2) \leq OPT$. По Дирихле какой-то меньше пополам.
\subsection*{Преобразование K-OPT}
Это всё на плоскости
\subsubsection*{Преобразование 2-OPT}
Пока существует способ поменять пару ребер на другую пару ребер, так
что стоимость уменьшается -- применяю это.
На практике сходится за квадрат итераций.
Далее количество итераци оценивается как $O(n^3)$.
\textit{Кулл стори Боб}: Не ну на практике эта штука это
$\log n / 2$ приближение
\textit{Кулл стори Боб2}: Если вначале избавиться от всех пересечений,
то останется довольно мало итераций.
\textit{Фу геома}: существует алгоритм который
квазилинеен и находит все пересечения
\subsubsection*{Преобразование 3-OPT}
Теперь возьмем три ребра, и
соединить оставшиеся вершины(можно через 1 в порядке их записи)
\subsubsection*{Lin-Kernigan}
Lin-Kernigan -- зачем себе заранее усложнять жизнь и заранее прибивать
контстанту OPT
Щас будет эпик эвристика, ну что го пронумеруем вершинки: