source: liacs/comp/opdracht-3.tex@ 199

Last change on this file since 199 was 2, checked in by Rick van der Zwet, 15 years ago

Initial import of data of old repository ('data') worth keeping (e.g. tracking
means of URL access statistics)

File size: 6.2 KB
RevLine 
[2]1%
2% $Id: report.tex 571 2008-04-20 17:31:04Z rick $
3%
4
5\documentclass[12pt,a4paper]{article}
6
7\frenchspacing
8\usepackage[english,dutch]{babel}
9\usepackage{amssymb,amsmath,amsthm}
10\selectlanguage{dutch}
11
12\author{Rick van der Zwet, Universiteit Leiden}
13\title{Complexiteit\\
14\large{Derde huiswerkopgave}}
15\author{Rick van der Zwet\\
16 \texttt{<hvdzwet@liacs.nl>}\\
17 \\
18 LIACS\\
19 Leiden University\\
20 Niels Bohrweg 1\\
21 2333 CA Leiden\\
22 The Netherlands}
23\date{\today}
24
25
26\begin{document}
27\appendix
28\maketitle
29\section*{Inleiding}
30Het doel van deze huiswerkopgave is het begrijpen en toepassen van
31niet-deterministische algoritmen en kennis maken met de begrippen
32$NP$-compleet en $NP$-volledig. Deze kennis wordt opgedaan door te
33kijken naar 2 verschillende problemen:
34
35\theoremstyle{definition} \newtheorem{sat}{SAT}
36\newtheorem{mcis}{MaxColorIndependentSet (MCIS)}
37
38\begin{description}
39\item[SAT] Gegeven is een logische expressie $\phi$ in de variablen
40$x_1, x_2,..., x_n$ in CNF (dus een AND van clausules waarbij elke
41clausule de OR van een willekeurig aantal literals is; een literal is
42een $x_1$ of een $\neg x_1$). \\
43Vraag: is er een waardering (waarheidstoekenning) van de $x_i$'s zodanig
44dat $\phi$ wordt waargemaakt, dat wil zeggen dat per clausule minstens
45\'e\'en literal waar is?
46\item[MaxColorIndependentSet (MCIS)] Gegeven een ongerichte graaf
47$G=V(,E)$, waarbij de knopen wit of zwart gekleurd zijn. $V$ bevat dus
48de knopen m\`et hun kleur. \\
49Vraag: bestaat er een maximaal onafhankelijke knoopverzameling $I (I
50\subseteq V)$ die alleen zwarte knopen bevat? \\
51Een deelverzameling $J$ van de knopen $V$ heet \emph{onafhankelijk} als
52geldt: voor alle $i,j \in J$ is er \emph{geen} tak tussen $i$ en $j$.
53Zo'n onafhankelijke verzameling is \emph{maximaal} als er geen knopen
54meer aan kunnen worden toegevoegd zonder dat de
55onafhankelijkheidseigenschap verloren gaat.
56\end{description}
57
58
59\section{\normalsize Laat zien dat MCIS $\in NP$ door een \emph{niet-deterministisch
60polynomiaal} algoritme voor MCIS te geven.}
61Het algoritme bestaat uit drie fases:
62\begin{description}
63\item[Fase 1 (gokfase)]
64Genereer een random string $s$ gehele getallen welke als de volgende
65syntax wordt geinterpeteerd $knoopnummer;kleur;lid MCIS;buren;$
66\item[Fase 2 (verificatiefase)]
67Er wordt gecontroleerd of $s$ daarwerkelijk een MCIS is:
68\begin{enumerate}
69\item controleer dat er precies $n$ knopen in staan: $O(\left|s\right|)$
70\item controleer of kleurcode wit/zwart (1/0) is: $O(\left|s\right|)$
71\item controleer of elke knoop tussen 0 en $n$ ligt: $O(\left|s\right|)$
72\item controleer of alle knopen verschillend zijn: $O({\left|s\right|}^2)$
73\item controleer of alle buren geldig zijn: $O({\left|s\right|}^2)$
74\item controleer of knop welke lid is, zwart is: $O(\left|s\right|)$
75\item controleer of alle buren van zwarte `lid' knoop niet lid zijn:
76 $O({\left|s\right|}^2)$
77\item controleer of alle niet `lid' knopen, buren zijn van een `lid'
78knoop: $O({\left|s\right|}^2)$
79\end{enumerate}
80Stap 1 t/m 5 zijn eigenlijk simpele controle stapjes om te kijken of de
81invoer string voldoet aan de eisen die gesteld worden. De daadwerkelijke
82intelligentie zit in de laatste stappen, welke kijkt of de eisen van de
83zwarte MCIS voldaan worden. Dat wil zeggen zoveel mogelijk knopen die
84geen buurtjes van elkaar zijn en geen witte knopen in de `leden' kring.
85
86\item[Fase 3]
87Als Fase 2 True opleverd (e.g. alle punten goed doorlopen) wordt ``ja''
88uitgevoerd, anders geen uitvoer.
89\end{description}
90
91In de meeste stappen van het algoritme volstaat een keer doorlopen van
92$s$ als voldoende, bijvoorbeeld bij controle kleur invoer. Bij het de
93buren controle echter moet per item in $s$ de string nog een keer extra
94worden doorlopen om te kijken of deze knoop daarwerkelijk voorkomt. Maar
95in het totaal is $O({\left|s\right|}^2)$ voldoende.
96
97\section{\normalsize Laat zien dat de transformatie $T$ in polynomiaal begrensde
98tijd uitgevoerd kan worden}
99$T$ is hierbij de transformatie van SAT naar MCIS, waarbij $\phi$ een
100logische expressie in de variablen $x_1, x_2,..., x_n$ in conjunctieve
101normaalvorm (CNF). Daaruit wordt een een ongerichte graag $G_\phi$
102geconstrueerd, waarvan de knopen zwart of wit gekleurd zijn. Maak 2$n$
103zwarte knopen, corresponderd met de $n$ voorkomende variablen en hun
104negaties (alle mogelijke literals dus). Voor elke in $\phi$ voorkomende
105clausule komt een witte knoop. Elke witte knoop wordt verbonden met de
106(zwarte) knopen die corresponderen met de in de betreffende clausule
107voorkomende literals ($x_i$ and $\neg x_i$). Defineer nu $T(\phi) =
108G_\phi$
109
110De stappen noodzakelijk zijn:
111\begin{enumerate}
112\item Alle clausulen tellen en witte knopen maken voor elke clausule:
113$O(\phi)$
114\item Door de clausulen lopen en zwarte knopen maken en hun negaties:
115$O(\phi)$
116\item Clausule knoop met literal knopen verbinden: $O(\phi)$
117\item Tak aanleggen tussen aanwezige complementaire literals $O({\phi}^2)$
118\end{enumerate}
119
120Dit allen is dus uit te voeren in $O({\phi}^2)$
121
122\section{\normalsize Bewijs: als er een waardering $w$ van de $x_i$ bestaat die
123$\phi$ waarmaakt, dan heeft $G_\phi$ een maximale onafhankelijke
124knoopverzameling die alleen uit zwarte knopen bestaat}
125
126Als $w$ waar is dan geld dat voor elke clausule $C_r$ een literal heeft die
127minimal waargemaakt moet worden wil $\phi$ True worden. Alle
128$l_i^r$ hebben een corresponderende knoop $v_i^r$ in $G_\phi$. Echter de
129literals (zwarte knopen) kunnen niet met elkaar verbonden zijn, vanwege
130de complementaire eigenschap. Dit betekend dat van een paar $l_i^r$ en
131$\neg l_i^r$ slecht een enkele actief kan zijn.
132Het maximale eigenschap wordt bereikt doordat knopen binnen dezelfde
133clausule van elkaar gescheiden zijn van een $C$ (witte clausule) knoop.
134
135
136\section{\normalsize Bewijs: als $G_\phi$ een maximale onafhankelijke
137knoopverzameling $J$ heeft die alleen uit zwarte knopen bestaat, dat is
138er een waardering $w$ van de $x_i$ die $\phi$ waarmaakt}
139
140Kies $w$ van de in $\phi$ voorkomende logische variablen die precies
141True oplevert op litterals correspondered met de knopen in $G_\phi$. In
142$w$ zullen $m$ clausulen voorkomen. Deze $m$ witte knopen zullen altijd
143verbonden zijn met een knoop $\in J$.Doordat elke cluasule waar moet
144zijn zal er altijd een knoop bevinden tussen de witte cluasule knopen en
145minstens \'e\'en van de literals.
146
147
148
149
150\end{document}
Note: See TracBrowser for help on using the repository browser.