Unmöglichkeitsergebnis für volles TSP
This commit is contained in:
parent
e2a72e9edd
commit
d4a1ca3f2c
Binary file not shown.
@ -183,6 +183,45 @@ Weiter lassen sich damit obere bzw. untere Schranken der Optimallösung aus eine
|
|||||||
\end{equation*}
|
\end{equation*}
|
||||||
\end{enumerate}
|
\end{enumerate}
|
||||||
|
|
||||||
|
\subsection{Unmöglichkeitsergebnis für das allgemeine Traveling Salesperson Problem \problem{TSP}}
|
||||||
|
\begin{satz}
|
||||||
|
Wenn es einen polynomiellen Approximationsalgorithmus $A$ mit konstanter relativer Gütegarantie $r$ für das volle \problem{TSP} gibt, dann gilt $P = NP$.
|
||||||
|
\end{satz}
|
||||||
|
\begin{proof}[Beweis durch Reduktion]
|
||||||
|
Durch Benutzung von $A$ mit beliebiger konstanter relativer Gütegarantie $r \in \mathbb{N}$ kann \problem{Hamilton} auf das volle \problem{TSP} reduziert werden. Es wird also $\problem{Hamilton} \le \mathrm{p} \problem{TSP}[r]$ für alle $r$ gezeigt:
|
||||||
|
|
||||||
|
Sei der Graph $G = (V, E)$ mit $n = \abs{V}$, gegeben. Dazu wird nun passend eine Probleminstanz $I_G = \langle K_n, c\rangle$ für \problem{TSP} erzeugt. $c$ wird wie folgt konstruiert:
|
||||||
|
\begin{equation*}
|
||||||
|
c(u,v) = \begin{cases*}
|
||||||
|
1 & falls $\{u, v\} \in E$ (\enquote{kurze} Kante)\\
|
||||||
|
\left(r - 1\right)\cdot n + 2 & sonst (\enquote{lange} Kante)
|
||||||
|
\end{cases*}
|
||||||
|
\end{equation*}
|
||||||
|
$I_G$ kann in Polynomzeit aus $G$ berechnet werden. Es gilt weiter:
|
||||||
|
\begin{itemize}
|
||||||
|
\item $G \in \problem{Hamilton} \Rightarrow$ kürzeste Rundreise in $I_G$ hat die Länge $n$
|
||||||
|
\item $G \notin \problem{Hamilton} \Rightarrow$ kürzeste Rundreise in $I_G$ nimmt mindestens eine der langen Kanten und hat damit eine Länge von mindestens
|
||||||
|
\begin{equation*}
|
||||||
|
(r - 1) \cdot n + 2 + n - 1 = r \cdot n +1 > r \cdot n
|
||||||
|
\end{equation*}
|
||||||
|
\item $I_G$ besitzt keine zulässige Lösung $\sigma$ mit $n + 1\le c(\sigma) \le r \cdot n$.
|
||||||
|
\end{itemize}
|
||||||
|
|
||||||
|
|
||||||
|
Durch den folgenden Algorithmus kann also \problem{Hamilton} entschieden werden:
|
||||||
|
\begin{algorithmic}[]
|
||||||
|
\State konstruiere $I_G$
|
||||||
|
\State approximiere mit $A$ eine kürzeste Rundreise $A(I_G)$
|
||||||
|
\If{$A(I_G) > r \cdot \abs{V}$}
|
||||||
|
\State \Return $G \notin \problem{Hamilton}$
|
||||||
|
\Else
|
||||||
|
\State \Return $G \in \problem{Hamilton}$
|
||||||
|
\EndIf
|
||||||
|
\end{algorithmic}
|
||||||
|
\end{proof}
|
||||||
|
|
||||||
|
Der Ansatz der Konstruktion von Probleminstanzen anderer $NP$-schwerer Probleme und der anschließenden Verwendung eines Scaling-Arguments kann auch für weitere Probleme verwendet werden. Ebenfalls können damit bestimmte Bereiche für mögliche konstante relative Gütegarantien ausgeschlossen werden, etwa $\rho < \frac{3}{2}$ bei \problem{BinPacking}.
|
||||||
|
|
||||||
\section{Das Problem der Unabhängigen Knotenmengen \problem{IS}}
|
\section{Das Problem der Unabhängigen Knotenmengen \problem{IS}}
|
||||||
\subsection{Definition}
|
\subsection{Definition}
|
||||||
\begin{align*}
|
\begin{align*}
|
||||||
@ -202,8 +241,8 @@ Weiter lassen sich damit obere bzw. untere Schranken der Optimallösung aus eine
|
|||||||
\State $V^{(t+1)} = V^{(t)} - \left(\{u_l\} \cup \Gamma_{G^{(t)}}(u_l)\right)$
|
\State $V^{(t+1)} = V^{(t)} - \left(\{u_l\} \cup \Gamma_{G^{(t)}}(u_l)\right)$
|
||||||
\State $U = U \cup \{u_l\}$
|
\State $U = U \cup \{u_l\}$
|
||||||
\State $t = t + 1$
|
\State $t = t + 1$
|
||||||
\EndWhile\\
|
\EndWhile
|
||||||
\Return $U$
|
\State \Return $U$
|
||||||
\end{algorithmic}
|
\end{algorithmic}
|
||||||
|
|
||||||
\begin{satz}
|
\begin{satz}
|
||||||
@ -260,8 +299,8 @@ Die Größe der kleinsten möglichen Knotenfärbung ist die chromatische Zahl $\
|
|||||||
\EndFor
|
\EndFor
|
||||||
\ForAll{$i \in [1,\dots, \abs{V}]$}
|
\ForAll{$i \in [1,\dots, \abs{V}]$}
|
||||||
\State $c_\mathrm{V}(u_i) = \min\{\mathbb{N}\setminus\{c_\mathrm{V}(\Gamma(u_i))\}\}$
|
\State $c_\mathrm{V}(u_i) = \min\{\mathbb{N}\setminus\{c_\mathrm{V}(\Gamma(u_i))\}\}$
|
||||||
\EndFor\\
|
\EndFor
|
||||||
\Return $c_\mathrm{V}$
|
\State\Return $c_\mathrm{V}$
|
||||||
\end{algorithmic}
|
\end{algorithmic}
|
||||||
|
|
||||||
\begin{satz}
|
\begin{satz}
|
||||||
@ -292,8 +331,8 @@ Die Größe der kleinsten möglichen Knotenfärbung ist die chromatische Zahl $\
|
|||||||
\State färbe alle Knoten in $U_t$ mit Farbe $t$
|
\State färbe alle Knoten in $U_t$ mit Farbe $t$
|
||||||
\State $V^{(t+1)} = V^{(t)} - U_t$
|
\State $V^{(t+1)} = V^{(t)} - U_t$
|
||||||
\State $t = t + 1$
|
\State $t = t + 1$
|
||||||
\EndWhile\\
|
\EndWhile
|
||||||
\Return berechnete Färbung
|
\State \Return berechnete Färbung
|
||||||
\end{algorithmic}
|
\end{algorithmic}
|
||||||
|
|
||||||
\begin{satz}
|
\begin{satz}
|
||||||
@ -354,8 +393,8 @@ Der Algorithmus von Christofides (\algo{CH}) geht wie folgt vor:
|
|||||||
\State $S = \{v \in T_\mathrm{CH} \mid \mathrm{deg}_{T_\mathrm{CH}}(v)\, \text{ungerade}\}$ \Comment{$\abs{S}$ ist gerade}
|
\State $S = \{v \in T_\mathrm{CH} \mid \mathrm{deg}_{T_\mathrm{CH}}(v)\, \text{ungerade}\}$ \Comment{$\abs{S}$ ist gerade}
|
||||||
\State berechne auf dem durch $S$ induzierten Teilgraphen des $K_n$ ein leichtestes Matching $M_\mathrm{CH}$
|
\State berechne auf dem durch $S$ induzierten Teilgraphen des $K_n$ ein leichtestes Matching $M_\mathrm{CH}$
|
||||||
\State berechne eine Euler-Tour $E = (u_1, u_2, \dots)$ auf $T_\mathrm{CH} \cupdot M_\mathrm{CH}$ \Comment{$T_\mathrm{CH} \cupdot M_\mathrm{CH}$ kann Multi-Graph sein, alle Knoten haben geraden Grad}
|
\State berechne eine Euler-Tour $E = (u_1, u_2, \dots)$ auf $T_\mathrm{CH} \cupdot M_\mathrm{CH}$ \Comment{$T_\mathrm{CH} \cupdot M_\mathrm{CH}$ kann Multi-Graph sein, alle Knoten haben geraden Grad}
|
||||||
\State entferne Wiederholungen von Knoten in $E$, sodass man $E'$ erhält\\
|
\State entferne Wiederholungen von Knoten in $E$, sodass man $E'$ erhält
|
||||||
\Return $E'$
|
\State\Return $E'$
|
||||||
\end{algorithmic}
|
\end{algorithmic}
|
||||||
|
|
||||||
\begin{satz}
|
\begin{satz}
|
||||||
|
Loading…
Reference in New Issue
Block a user