init
This commit is contained in:
433
lernmaterial/loesung_probeklausur1.tex
Normal file
433
lernmaterial/loesung_probeklausur1.tex
Normal file
@@ -0,0 +1,433 @@
|
||||
\documentclass[11pt,a4paper]{article}
|
||||
\usepackage[T1]{fontenc}
|
||||
\usepackage{lmodern}
|
||||
\usepackage[utf8]{inputenc}
|
||||
\usepackage[margin=2.5cm]{geometry}
|
||||
\usepackage{amsmath,amssymb}
|
||||
\usepackage{tikz}
|
||||
\usepackage{xcolor}
|
||||
|
||||
\setlength{\parskip}{0.4em}
|
||||
\setlength{\parindent}{0pt}
|
||||
\emergencystretch=1.5em
|
||||
|
||||
% ---- Makros ----
|
||||
\newcommand{\problem}[1]{\textsc{#1}}
|
||||
\newcommand{\redp}{\le_p}
|
||||
\newcommand{\NP}{\textsf{NP}}
|
||||
\newcommand{\true}{\textsf{wahr}}
|
||||
\newcommand{\false}{\textsf{falsch}}
|
||||
\tikzset{knoten/.style={circle,draw,thick,minimum size=6.5mm,inner sep=1pt}}
|
||||
|
||||
\definecolor{boxbg}{gray}{0.94}
|
||||
\newsavebox{\shadedbox}
|
||||
\newenvironment{shaded}
|
||||
{\par\smallskip\noindent\begin{lrbox}{\shadedbox}\begin{minipage}{\dimexpr\linewidth-2\fboxsep\relax}}
|
||||
{\end{minipage}\end{lrbox}\colorbox{boxbg}{\usebox{\shadedbox}}\par\smallskip}
|
||||
|
||||
\newcommand{\aufgabe}[2]{\medskip\noindent{\large\textbf{Aufgabe #1}}\hfill\textbf{(#2)}\par\smallskip
|
||||
\noindent\rule{\linewidth}{0.4pt}\par\medskip}
|
||||
\newcommand{\lsg}{\par\smallskip\noindent\textbf{L\"osung.}\par\smallskip}
|
||||
|
||||
\begin{document}
|
||||
\thispagestyle{empty}
|
||||
|
||||
\begin{center}
|
||||
{\Large\textbf{Musterl\"osung -- Probeklausur 1}}\\[4pt]
|
||||
{\large Analyse von Algorithmen und Komplexit\"at, SS 2026}
|
||||
\end{center}
|
||||
\medskip
|
||||
\noindent\rule{\linewidth}{0.4pt}
|
||||
|
||||
% ============================= A1 =============================
|
||||
\newpage
|
||||
\aufgabe{1 \quad ANWENDUNG -- CHRISTOFIDES' ALGORITHMUS}{6 + 4 Punkte}
|
||||
Kantengewichte: $ab=1$, $ac=2$, $ad=3$, $bc=3$, $bd=4$, $cd=4$.
|
||||
|
||||
\lsg
|
||||
\textbf{a) Anwendung von Christofides ($\Delta$TSP2) ab Startknoten $a$.}
|
||||
|
||||
\textbf{Schritt 1 -- Minimaler Spannbaum $T$.} Kruskal (aufsteigend
|
||||
$ab\,1,\ ac\,2,\ ad\,3,\ bc\,3,\ bd\,4,\ cd\,4$): W\"ahle $ab\,(1)$, $ac\,(2)$;
|
||||
$ad\,(3)$ verbindet $d$. Die n\"achstteure Kante $bc\,(3)$ w\"urde einen Kreis
|
||||
schlie{\ss}en (\emph{No-Op: wird gepr\"uft, aber verworfen}); ebenso
|
||||
$bd\,(4)$, $cd\,(4)$. $T = \{ab, ac, ad\}$ ist ein Stern um $a$ mit Gewicht
|
||||
$1+2+3 = 6$ und eindeutig.
|
||||
\begin{center}
|
||||
\begin{tikzpicture}
|
||||
\node[knoten] (a) at (0,2.4) {$a$};
|
||||
\node[knoten] (b) at (2.4,2.4) {$b$};
|
||||
\node[knoten] (c) at (0,0) {$c$};
|
||||
\node[knoten] (d) at (2.4,0) {$d$};
|
||||
\draw[very thick] (a) -- (b) node[fill=white,inner sep=1pt,font=\small,midway] {1};
|
||||
\draw[very thick] (a) -- (c) node[fill=white,inner sep=1pt,font=\small,midway] {2};
|
||||
\draw[very thick] (a) -- (d) node[fill=white,inner sep=1pt,font=\small,pos=0.3] {3};
|
||||
\node[font=\small] at (1.2,-0.7) {MST $T$, Gewicht $6$};
|
||||
\end{tikzpicture}
|
||||
\end{center}
|
||||
|
||||
\textbf{Schritt 2 -- Knoten mit ungeradem Grad.} Grade in $T$: $\deg(a)=3$,
|
||||
$\deg(b)=\deg(c)=\deg(d)=1$. Alle vier Grade sind ungerade
|
||||
(jeder Grad wird gepr\"uft), also $X = \{a,b,c,d\}$.
|
||||
|
||||
\textbf{Schritt 3 -- Minimales perfektes Matching $M$ auf $X$.} Die drei
|
||||
m\"oglichen perfekten Matchings auf $\{a,b,c,d\}$:
|
||||
\begin{itemize}
|
||||
\item $\{ab, cd\} = 1 + 4 = 5$
|
||||
\item $\{ac, bd\} = 2 + 4 = 6$
|
||||
\item $\{ad, bc\} = 3 + 3 = 6$
|
||||
\end{itemize}
|
||||
Minimum eindeutig: $M = \{ab, cd\}$ mit Kosten $5$.
|
||||
|
||||
\textbf{Schritt 4 -- Multigraph $T + M$ und Eulerkreis.} Die Kante $ab$ kommt
|
||||
sowohl aus $T$ als auch aus $M$, ist also doppelt. Kanten: $ab$ (doppelt),
|
||||
$ac$, $ad$, $cd$. Grade: $\deg(a)=4$, $\deg(b)=2$, $\deg(c)=2$, $\deg(d)=2$ --
|
||||
alle gerade, der Multigraph ist eulersch. Eulerkreis ab $a$:
|
||||
\[ [\,a, b, a, c, d, a\,]. \]
|
||||
\begin{center}
|
||||
\begin{tikzpicture}
|
||||
\node[knoten] (a) at (0,2.4) {$a$};
|
||||
\node[knoten] (b) at (2.4,2.4) {$b$};
|
||||
\node[knoten] (c) at (0,0) {$c$};
|
||||
\node[knoten] (d) at (2.4,0) {$d$};
|
||||
\draw[very thick,double] (a) -- (b) node[fill=white,inner sep=1pt,font=\small,midway] {$1\ (\times 2)$};
|
||||
\draw[very thick] (a) -- (c) node[fill=white,inner sep=1pt,font=\small,midway] {2};
|
||||
\draw[very thick] (a) -- (d) node[fill=white,inner sep=1pt,font=\small,pos=0.3] {3};
|
||||
\draw[very thick] (c) -- (d) node[fill=white,inner sep=1pt,font=\small,midway] {4};
|
||||
\node[font=\small] at (1.2,-0.7) {$T + M$ (eulersch)};
|
||||
\end{tikzpicture}
|
||||
\end{center}
|
||||
|
||||
\textbf{Schritt 5 -- Abk\"urzen (shortcut).} Durchlaufe den Eulerkreis
|
||||
$[a,b,a,c,d,a]$ und \"uberspringe bereits besuchte Knoten:
|
||||
$a$ (neu, behalten -- \emph{No-Op}), $b$ (neu, behalten -- \emph{No-Op}),
|
||||
$a$ (\emph{bereits besucht $\Rightarrow$ \"uberspringen}), $c$ (neu), $d$ (neu),
|
||||
$a$ (Schluss). Resultierende Tour:
|
||||
\[ [\,a, b, c, d, a\,]. \]
|
||||
Tourl\"ange $= ab + bc + cd + da = 1 + 3 + 4 + 3 = 11$.
|
||||
\begin{center}
|
||||
\begin{tikzpicture}
|
||||
\node[knoten] (a) at (0,2.4) {$a$};
|
||||
\node[knoten] (b) at (2.4,2.4) {$b$};
|
||||
\node[knoten] (c) at (0,0) {$c$};
|
||||
\node[knoten] (d) at (2.4,0) {$d$};
|
||||
\draw[very thick] (a) -- (b) node[fill=white,inner sep=1pt,font=\small,midway] {1};
|
||||
\draw[very thick] (b) -- (c) node[fill=white,inner sep=1pt,font=\small,pos=0.3] {3};
|
||||
\draw[very thick] (c) -- (d) node[fill=white,inner sep=1pt,font=\small,midway] {4};
|
||||
\draw[very thick] (a) -- (d) node[fill=white,inner sep=1pt,font=\small,pos=0.3] {3};
|
||||
\node[font=\small] at (1.2,-0.7) {Tour $[a,b,c,d,a]$, L\"ange $11$};
|
||||
\end{tikzpicture}
|
||||
\end{center}
|
||||
Zum Vergleich (Brute-Force \"uber alle $3$ Touren): $[a,b,c,d,a]=11$,
|
||||
$[a,b,d,c,a]=1+4+4+2=11$, $[a,c,b,d,a]=2+3+4+3=12$. Also $\mathrm{OPT}=11$; hier
|
||||
liefert Christofides sogar das Optimum, die G\"ute $\tfrac32$ ist eingehalten
|
||||
($\tfrac{11}{11}=1 \le \tfrac32$).
|
||||
|
||||
\medskip
|
||||
\textbf{b) Bedeutung, Zusatzeigenschaften, G\"ute.}
|
||||
\begin{itemize}
|
||||
\item \textbf{Was berechnet Christofides?} Eine Rundreise (Hamiltonkreis) durch
|
||||
alle Knoten, also eine zul\"assige N\"aherungsl\"osung f\"ur das metrische
|
||||
Travelling-Salesperson-Problem.
|
||||
\item \textbf{Zusatzeigenschaft 1 -- Symmetrie:} $w(u,v) = w(v,u)$ f\"ur alle
|
||||
Kanten (die Kostenfunktion ist ungerichtet). \emph{Verletzende Eingabe:} ein
|
||||
gerichteter Graph mit $w(a,b) = 1$, aber $w(b,a) = 5$. Dann sind MST und Matching
|
||||
nicht wohldefiniert bzw.\ die Analyse bricht.
|
||||
\item \textbf{Zusatzeigenschaft 2 -- Dreiecksungleichung:} $w(u,v) \le w(u,x) +
|
||||
w(x,v)$ f\"ur alle Knoten $u,x,v$. \emph{Verletzende Eingabe:} drei Knoten
|
||||
$a,b,c$ mit $w(a,b)=1$, $w(b,c)=1$, $w(a,c)=10$; hier ist $w(a,c)=10 > 1+1 =
|
||||
w(a,b)+w(b,c)$. Ohne Dreiecksungleichung liefert das Abk\"urzen keine
|
||||
Absch\"atzung der Tourl\"ange.
|
||||
\end{itemize}
|
||||
(Eine einzige Eingabe, die \emph{beide} Eigenschaften verletzt, w\"are ebenfalls
|
||||
zul\"assig.) \textbf{G\"ute:} $\tfrac32$. \hfill$\square$
|
||||
|
||||
% ============================= A2 =============================
|
||||
\newpage
|
||||
\aufgabe{2 \quad VORLESUNGSBEWEIS -- DEFINITION NP}{2 + 8 Punkte}
|
||||
Zu zeigen: Existiert ein polynomieller Verifizierer f\"ur $L$, so existiert eine
|
||||
NDTM, die $L$ in nicht-deterministischer Polynomialzeit entscheidet.
|
||||
|
||||
\lsg
|
||||
\textbf{a) Analoge NDTM zum gegebenen \problem{VertexCover}-Verifizierer.}
|
||||
Der Verifizierer r\"at nichts, sondern \emph{pr\"uft} ein von au{\ss}en
|
||||
gegebenes Zertifikat $C$. Die analoge NDTM ersetzt dieses Zertifikat durch eine
|
||||
\emph{nichtdeterministische Ratephase} und f\"uhrt danach dieselben Pr\"ufungen
|
||||
aus:
|
||||
\begin{shaded}
|
||||
\ttfamily\small
|
||||
$M(G = (V,E),\ k)$\\
|
||||
1.\quad Rate nichtdeterministisch eine Menge von Knoten $C \subseteq V$.\\
|
||||
2.\quad Falls $|C| > k$, verwerfe.\\
|
||||
3.\quad F\"ur alle $\{u,v\} \in E$: Falls $u \notin C$ und $v \notin C$, verwerfe.\\
|
||||
4.\quad Akzeptiere.
|
||||
\end{shaded}
|
||||
\textbf{Korrektheit:} $M$ hat genau dann einen akzeptierenden Rechenweg, wenn ein
|
||||
$C \subseteq V$ existiert, das die Pr\"ufungen 2--3 \"ubersteht, d.h.\ ein
|
||||
Vertex Cover der Gr\"o{\ss}e $\le k$ -- genau dann akzeptiert auch $V$ ein
|
||||
Zertifikat. Also akzeptiert $M$ dieselbe Sprache $L$.\\
|
||||
\textbf{Laufzeit:} Raten von $C$ in $O(|V|)$, Gr\"o{\ss}e pr\"ufen $O(|V|)$,
|
||||
Kanten pr\"ufen $O(|E|)$ -- jeder Rechenweg l\"auft in $O(|V| + |E|)$, also
|
||||
polynomiell.
|
||||
|
||||
\medskip
|
||||
\textbf{b) Allgemeing\"ultiger Beweis.} Sei $L$ eine Sprache mit polynomiellem
|
||||
Verifizierer $M$ der Laufzeit $p(|x|) = O(|x|^d)$: F\"ur $x \in L$ existiert ein
|
||||
Zertifikat $c$ mit $M(x,c) = 1$; f\"ur $x \notin L$ akzeptiert $M$ kein
|
||||
Zertifikat. In $p(|x|)$ Schritten liest $M$ h\"ochstens die ersten $p(|x|)$
|
||||
Zeichen des Zertifikats.
|
||||
|
||||
\textbf{Konstruktion der NDTM $N$.} Bei Eingabe $x$ arbeitet $N$ in zwei Phasen:
|
||||
\begin{itemize}
|
||||
\item \emph{Raten:} Schreibe mit nichtdeterministischen Entscheidungen einen
|
||||
String $u$ mit $|u| \le p(|x|)$ auf ein Arbeitsband.
|
||||
\item \emph{Verifizieren:} Simuliere $M$ auf $(x,u)$ und \"ubernimm dessen
|
||||
Antwort (akzeptiere/verwirf).
|
||||
\end{itemize}
|
||||
|
||||
\textbf{Korrektheit:}
|
||||
\begin{itemize}
|
||||
\item Sei $x \in L$. Dann existiert ein Zertifikat $c$ mit $M(x,c)=1$; davon
|
||||
liest $M$ h\"ochstens die ersten $p(|x|)$ Zeichen. Der Rechenweg, der genau
|
||||
diesen Anfang als $u$ r\"at, akzeptiert -- also akzeptiert $N$.
|
||||
\item Sei $x \notin L$. Dann verwirft $M$ jedes Zertifikat, insbesondere jedes
|
||||
geratene $u$. Also verwerfen alle Rechenwege von $N$, und $N$ verwirft.
|
||||
\end{itemize}
|
||||
Somit akzeptiert $N$ genau die Sprache $L$.
|
||||
|
||||
\textbf{Laufzeit:} Phase~1 braucht $\le p(|x|)$ Rateschritte, Phase~2 l\"auft in
|
||||
$O(|x|^d)$ -- insgesamt $O(|x|^d)$, also polynomiell. Damit entscheidet die NDTM
|
||||
$N$ die Sprache $L$ in nicht-deterministischer Polynomialzeit
|
||||
$T = O(|x|^d)$. \hfill$\square$
|
||||
|
||||
% ============================= A3 =============================
|
||||
\newpage
|
||||
\aufgabe{3 \quad NP-VOLLST\"ANDIGKEIT}{10 Punkte}
|
||||
Zu zeigen: $k$-\problem{CliqueMember} ist NP-vollst\"andig.
|
||||
|
||||
\lsg
|
||||
\textbf{$\in$ NP:} Eingabe: Graph $G = (V,E)$, Knoten $v$, Zahl $k$ und
|
||||
Zertifikat $C \subseteq V$. Der Verifizierer arbeitet wie folgt:
|
||||
\begin{itemize}
|
||||
\item Falls $|C| < k$ oder $v \notin C$, lehne ab.
|
||||
\item Pr\"ufe f\"ur jedes Paar $\{x,y\} \subseteq C$, ob $\{x,y\} \in E$; lehne
|
||||
sonst ab.
|
||||
\item Sonst akzeptiere.
|
||||
\end{itemize}
|
||||
Existiert eine Clique $C$ mit $|C| \ge k$ und $v \in C$, so ist sie ein
|
||||
akzeptiertes Zertifikat; sonst scheitert jedes Zertifikat an einer Pr\"ufung.
|
||||
Laufzeit: Gr\"o{\ss}e und Mitgliedschaft pr\"ufen $O(|V|)$, alle Paare testen
|
||||
$O(|V|^2)$ -- gesamt $O(|V|^2)$. Also gilt $k$-\problem{CliqueMember} $\in \NP$.
|
||||
|
||||
\textbf{NP-schwer:} Zeige die NP-Schwere durch die Reduktion
|
||||
\[ \problem{Clique} \redp k\text{-}\problem{CliqueMember}. \]
|
||||
\problem{Clique} ist bereits als NP-vollst\"andig bekannt.
|
||||
|
||||
\textbf{Konstruktion:} Sei $(G = (V,E),\, k)$ eine \problem{Clique}-Instanz. Wir
|
||||
konstruieren daraus eine $k$-\problem{CliqueMember}-Instanz
|
||||
$(G' = (V', E'),\, v,\, k')$ durch:
|
||||
\begin{itemize}
|
||||
\item $V' = V \cup \{v\}$ mit einem neuen Knoten $v \notin V$
|
||||
\item $E' = E \cup \{\{v,w\} \mid w \in V\}$ ($v$ ist mit allen Knoten aus $V$
|
||||
verbunden, also universell)
|
||||
\item $k' = k + 1$, ausgezeichneter Knoten $v$
|
||||
\end{itemize}
|
||||
|
||||
\textbf{Beweis hin:}
|
||||
\begin{itemize}
|
||||
\item Sei $C$ eine Clique in $G$ mit $|C| \ge k$.
|
||||
\item Da $v$ mit allen Knoten von $V \supseteq C$ verbunden ist, sind alle Paare
|
||||
in $C \cup \{v\}$ Kanten in $E'$; also ist $C \cup \{v\}$ eine Clique in $G'$.
|
||||
\item Wegen $v \notin V \supseteq C$ gilt $|C \cup \{v\}| = |C| + 1 \ge k + 1 =
|
||||
k'$, und $v \in C \cup \{v\}$.
|
||||
\item Also ist $(G', v, k')$ eine Ja-Instanz.
|
||||
\end{itemize}
|
||||
|
||||
\textbf{Beweis zur\"uck:}
|
||||
\begin{itemize}
|
||||
\item Sei $C'$ eine Clique in $G'$ mit $|C'| \ge k'$ und $v \in C'$.
|
||||
\item Setze $C = C' \setminus \{v\}$; wegen $v \in C'$ gilt $|C| = |C'| - 1 \ge
|
||||
k' - 1 = k$, und $C \subseteq V$.
|
||||
\item Alle Kanten zwischen Knoten von $C$ liegen in $E$, denn neu in $E'$ sind
|
||||
nur die Kanten mit Endpunkt $v$, und $v \notin C$.
|
||||
\item Also ist $C$ eine Clique in $G$ mit $|C| \ge k$.
|
||||
\end{itemize}
|
||||
(Beide Richtungen zusammen: $(G',v,k')$ ist Ja-Instanz $\iff$ $(G,k)$ ist
|
||||
Ja-Instanz. Der Randfall $k \ge 1$ ist gew\"ahrleistet, da $k' = k+1 \ge 2$ und
|
||||
$v$ stets in der Clique liegen \emph{muss}.)
|
||||
|
||||
\textbf{Laufzeit:} Einen Knoten und $|V|$ Kanten anlegen -- $O(|V| + |E|)$,
|
||||
polynomiell.
|
||||
|
||||
Da $k$-\problem{CliqueMember} $\in \NP$ und NP-schwer ist, folgt:
|
||||
$k$-\problem{CliqueMember} ist NP-vollst\"andig. \hfill$\square$
|
||||
|
||||
% ============================= A4 =============================
|
||||
\newpage
|
||||
\aufgabe{4 \quad ETH}{1 + 4 + 1 + 4 Punkte}
|
||||
|
||||
\lsg
|
||||
\textbf{a) Parameter der \problem{VertexCover}-Instanz.} Es gilt $V' = V$, also
|
||||
\[ |V'| = |V|, \qquad
|
||||
|E'| = \binom{|V|}{2} - |E| = \tfrac12\,|V|\,(|V|-1) - |E| \;\le\; |V|^2. \]
|
||||
(Die Komplementkantenmenge $E'$ enth\"alt alle $\binom{|V|}{2}$ m\"oglichen
|
||||
Kanten au{\ss}er den $|E|$ Kanten von $G$.)
|
||||
|
||||
\medskip
|
||||
\textbf{b) ETH-Schranken f\"ur \problem{VertexCover}.} Die Reduktion
|
||||
$\problem{Clique} \redp \problem{VertexCover}$ l\"auft in Polynomialzeit.
|
||||
|
||||
\textbf{Bez\"uglich $|V'|$:}
|
||||
\begin{itemize}
|
||||
\item Angenommen, \problem{VertexCover} w\"are in $2^{o(|V'|)} \cdot |I|^{O(1)}$
|
||||
l\"osbar.
|
||||
\item Da die Reduktion polynomiell ist und $|V'| = |V|$ gilt, erg\"abe die
|
||||
Komposition (Reduktion, dann Algorithmus) einen $2^{o(|V|)} \cdot |I|^{O(1)}$-Algorithmus
|
||||
f\"ur \problem{Clique}.
|
||||
\item Widerspruch zur ETH (\problem{Clique} $\notin 2^{o(|V|)} \cdot |I|^{O(1)}$).
|
||||
\item Also besitzt \problem{VertexCover} keinen $2^{o(|V'|)} \cdot |I|^{O(1)}$-Algorithmus.
|
||||
\end{itemize}
|
||||
|
||||
\textbf{Bez\"uglich $|E'|$:}
|
||||
\begin{itemize}
|
||||
\item Angenommen, \problem{VertexCover} w\"are in $2^{o(\sqrt{|E'|})} \cdot |I|^{O(1)}$
|
||||
l\"osbar.
|
||||
\item Wegen $|E'| \le \tfrac12|V|(|V|-1) \le |V|^2$ ist $\sqrt{|E'|} \le |V|$,
|
||||
also $o(\sqrt{|E'|}) \subseteq o(|V|)$.
|
||||
\item Damit w\"are \problem{VertexCover} in $2^{o(|V|)} \cdot |I|^{O(1)}$
|
||||
l\"osbar, und mit $|V'|=|V|$ (Reduktion polynomiell) folgt ein
|
||||
$2^{o(|V|)} \cdot |I|^{O(1)}$-Algorithmus f\"ur \problem{Clique}.
|
||||
\item Widerspruch zur ETH.
|
||||
\item Also besitzt \problem{VertexCover} keinen
|
||||
$2^{o(\sqrt{|E'|})} \cdot |I|^{O(1)}$-Algorithmus.
|
||||
\end{itemize}
|
||||
Ergebnis: kein $2^{o(|V'|)}$ und kein $2^{o(\sqrt{|E'|})}$.
|
||||
|
||||
\medskip
|
||||
\textbf{c) Parameter der \problem{HittingSet}-Instanz.} Die Grundmenge besteht
|
||||
aus den $2n$ Literalen, und es gibt $n$ Paar-Mengen sowie $m$ Klausel-Mengen:
|
||||
\[ |U| = 2n, \qquad r = n + m. \]
|
||||
|
||||
\medskip
|
||||
\textbf{d) ETH-Schranken f\"ur \problem{HittingSet}.} Die Reduktion
|
||||
$\problem{3-SAT} \redp \problem{HittingSet}$ l\"auft in Polynomialzeit. (Sie ist
|
||||
korrekt, weil die $n$ disjunkten Paar-Mengen bei $k=n$ erzwingen, dass $H$ aus
|
||||
jedem Paar $\{x_i,\bar x_i\}$ \emph{genau} ein Literal enth\"alt -- also eine
|
||||
Belegung kodiert --, und das Treffen der Klausel-Mengen genau der Erf\"ullung der
|
||||
Klauseln entspricht.)
|
||||
|
||||
\textbf{Bez\"uglich $|U|$:}
|
||||
\begin{itemize}
|
||||
\item Angenommen, \problem{HittingSet} w\"are in $2^{o(|U|)} \cdot |I|^{O(1)}$
|
||||
l\"osbar.
|
||||
\item Wegen $|U| = 2n$ ist $o(|U|) = o(n)$; die Komposition erg\"abe einen
|
||||
$2^{o(n)} \cdot |I|^{O(1)}$-Algorithmus f\"ur \problem{3-SAT}.
|
||||
\item Direkter Widerspruch zur ETH.
|
||||
\item Also kein $2^{o(|U|)} \cdot |I|^{O(1)}$-Algorithmus.
|
||||
\end{itemize}
|
||||
|
||||
\textbf{Bez\"uglich $r$:}
|
||||
\begin{itemize}
|
||||
\item Angenommen, \problem{HittingSet} w\"are in $2^{o(r)} \cdot |I|^{O(1)}$
|
||||
l\"osbar.
|
||||
\item Wegen $r = n + m$ und $n \le 3m$ gilt $r \le 4m = O(m)$, also
|
||||
$o(r) \subseteq o(m)$; die Komposition erg\"abe einen
|
||||
$2^{o(m)} \cdot |I|^{O(1)}$-Algorithmus f\"ur \problem{3-SAT}.
|
||||
\item Widerspruch zur ETH nach dem Sparsification-Lemma (\problem{3-SAT}
|
||||
$\notin 2^{o(m)} \cdot |I|^{O(1)}$).
|
||||
\item Also kein $2^{o(r)} \cdot |I|^{O(1)}$-Algorithmus.
|
||||
\end{itemize}
|
||||
Ergebnis: kein $2^{o(|U|)}$ und kein $2^{o(r)}$. \hfill$\square$
|
||||
|
||||
% ============================= A5 =============================
|
||||
\newpage
|
||||
\aufgabe{5 \quad APPROXIMATIVE ALGORITHMEN -- MAX-3-SAT}{2 + 5 + 3 + (10) Punkte}
|
||||
|
||||
\lsg
|
||||
\textbf{a) Anwendung auf $\varphi$.} Dabei setzt $\beta_0$ alle Variablen auf
|
||||
\false\ und $\beta_1$ alle auf \true. Klauselauswertung:
|
||||
\begin{center}
|
||||
\begin{tabular}{l|c|c}
|
||||
Klausel & unter $\beta_0$ & unter $\beta_1$\\\hline
|
||||
$C_1 = (x_1 \vee x_2 \vee x_3)$ & \false\ (alle Lit.\ falsch) & \true\\
|
||||
$C_2 = (\neg x_1 \vee \neg x_2 \vee \neg x_3)$ & \true\ ($\neg x_1$) & \false\\
|
||||
$C_3 = (x_1 \vee \neg x_2 \vee x_3)$ & \true\ ($\neg x_2$) & \true\\
|
||||
$C_4 = (\neg x_1 \vee x_2 \vee \neg x_3)$ & \true\ ($\neg x_1$) & \true\\
|
||||
\end{tabular}
|
||||
\end{center}
|
||||
Also $v(\beta_0) = 3$ und $v(\beta_1) = 3$. Der Algorithmus gibt (bei
|
||||
Gleichstand $\beta_0$) den Wert $v(A(\varphi)) = \max\{3,3\} = 3$ aus.
|
||||
|
||||
\emph{Optimum (Brute-Force \"uber alle $8$ Belegungen):} Die Belegung
|
||||
$(x_1,x_2,x_3) = (\false, \false, \true)$ erf\"ullt $C_1$ (durch $x_3$), $C_2$
|
||||
(durch $\neg x_1$), $C_3$ (durch $\neg x_2$) und $C_4$ (durch $\neg x_1$), also
|
||||
alle vier. Somit $v(\mathrm{OPT}(\varphi)) = 4$. (Verh\"altnis
|
||||
$\tfrac{\mathrm{OPT}}{A} = \tfrac43$.)
|
||||
|
||||
\medskip
|
||||
\textbf{b) G\"ute $2$.} Zu zeigen: $v(A(\varphi)) \ge \tfrac12\,
|
||||
v(\mathrm{OPT}(\varphi))$. Sei $\varphi$ eine Formel mit $m$ Klauseln.
|
||||
|
||||
\textbf{Jede Klausel z\"ahlt mindestens einmal.} Unter $\beta_0$ ist jedes
|
||||
\emph{negative} Literal wahr, unter $\beta_1$ jedes \emph{positive}. Da jede
|
||||
Klausel mindestens ein Literal enth\"alt und jedes Literal positiv oder negativ
|
||||
ist, wird jede Klausel von $\beta_0$ oder von $\beta_1$ (oder beiden) erf\"ullt.
|
||||
Somit z\"ahlt jede Klausel in der Summe mindestens einmal:
|
||||
\[ v(\beta_0) + v(\beta_1) \;\ge\; m. \]
|
||||
|
||||
\textbf{Obere Schranke f\"ur das Optimum.} H\"ochstens alle $m$ Klauseln k\"onnen
|
||||
erf\"ullt sein, also $v(\mathrm{OPT}(\varphi)) \le m$.
|
||||
|
||||
\textbf{Kombination.} $A$ w\"ahlt die bessere der beiden Belegungen, daher
|
||||
\[ v(A(\varphi)) = \max\{v(\beta_0), v(\beta_1)\}
|
||||
\ge \frac{v(\beta_0) + v(\beta_1)}{2}
|
||||
\ge \frac{m}{2}
|
||||
\ge \frac{v(\mathrm{OPT}(\varphi))}{2}. \]
|
||||
Also hat $A$ die G\"ute $2$.
|
||||
|
||||
\medskip
|
||||
\textbf{c) Scharfe Instanz.} W\"ahle
|
||||
\[ \varphi^\ast = (x_1 \vee x_2 \vee x_3) \wedge (\neg x_1 \vee \neg x_2 \vee \neg x_3). \]
|
||||
\begin{itemize}
|
||||
\item Unter $\beta_0$ (alles \false) ist die erste Klausel unerf\"ullt (alle
|
||||
Literale positiv, also falsch) und die zweite erf\"ullt: $v(\beta_0) = 1$.
|
||||
\item Unter $\beta_1$ (alles \true) ist die zweite Klausel unerf\"ullt und die
|
||||
erste erf\"ullt: $v(\beta_1) = 1$.
|
||||
\item Also $v(A(\varphi^\ast)) = \max\{1,1\} = 1$.
|
||||
\item Die Belegung $(x_1,x_2,x_3) = (\true, \false, \false)$ erf\"ullt beide
|
||||
Klauseln ($x_1$ bzw.\ $\neg x_2$), also $v(\mathrm{OPT}(\varphi^\ast)) = 2$.
|
||||
\end{itemize}
|
||||
Damit gilt $v(A(\varphi^\ast)) = 1 = \tfrac12 \cdot 2 = \tfrac12\,
|
||||
v(\mathrm{OPT}(\varphi^\ast))$: die Schranke aus b) wird mit Gleichheit
|
||||
angenommen, die G\"ute $2$ ist scharf.
|
||||
|
||||
\medskip
|
||||
\textbf{d) BONUS -- \problem{MAX-$k$-SAT}.} \emph{Behauptung:} F\"ur jedes
|
||||
$k \ge 2$ garantiert derselbe Algorithmus $A$ ebenfalls die G\"ute $2$, und diese
|
||||
ist scharf.
|
||||
|
||||
\textbf{G\"ute $2$ (Beweis).} Das Argument aus b) benutzt nur, dass jede Klausel
|
||||
mindestens ein Literal enth\"alt und jedes Literal positiv oder negativ ist -- es
|
||||
ist von der Klausell\"ange unabh\"angig. Auch bei genau $k$ Literalen pro Klausel
|
||||
gilt: eine Klausel wird von $\beta_0$ nur dann nicht erf\"ullt, wenn all ihre
|
||||
$k$ Literale positiv sind; von $\beta_1$ nur dann nicht, wenn alle $k$ negativ
|
||||
sind. Beides zugleich ist bei $k \ge 1$ unm\"oglich. Also wird jede Klausel von
|
||||
$\beta_0$ oder $\beta_1$ erf\"ullt, mithin $v(\beta_0) + v(\beta_1) \ge m$, und
|
||||
wie in b)
|
||||
\[ v(A(\varphi)) = \max\{v(\beta_0), v(\beta_1)\} \ge \frac{m}{2}
|
||||
\ge \frac{v(\mathrm{OPT}(\varphi))}{2}. \]
|
||||
Die garantierte G\"ute ist also $2$, unabh\"angig von $k$.
|
||||
|
||||
\textbf{Sch\"arfe (f\"ur jedes $k$).} Betrachte \"uber den Variablen
|
||||
$x_1,\dots,x_k$ die beiden Klauseln
|
||||
\[ \varphi_k^\ast = (x_1 \vee \dots \vee x_k) \wedge
|
||||
(\neg x_1 \vee \dots \vee \neg x_k). \]
|
||||
Jede Klausel besteht aus genau $k$ Literalen mit paarweise verschiedenen
|
||||
Variablen. $\beta_0$ erf\"ullt nur die zweite, $\beta_1$ nur die erste, also
|
||||
$v(A(\varphi_k^\ast)) = 1$. Die Belegung $x_1 = \true$, $x_2 = \dots = x_k =
|
||||
\false$ erf\"ullt beide Klauseln, also $v(\mathrm{OPT}(\varphi_k^\ast)) = 2$.
|
||||
Damit $v(A(\varphi_k^\ast)) = \tfrac12\,v(\mathrm{OPT}(\varphi_k^\ast))$, die
|
||||
G\"ute $2$ wird f\"ur jedes $k$ mit Gleichheit angenommen und ist somit
|
||||
scharf. \hfill$\square$
|
||||
|
||||
\end{document}
|
||||
Reference in New Issue
Block a user