Merge branch 'master' of olgierd/PAA into master

This commit is contained in:
Kacper Donat 2018-02-24 14:17:57 +01:00 committed by Gitea
commit 3ccab96afa
5 changed files with 221 additions and 217 deletions

View File

@ -15,7 +15,7 @@ w czasie wielomianowym. Jeżeli za certyfikat przyjmiemy wielokąty w postaciu l
w czasie wielomianowym - wystarczy sprawdzić, że żaden wierzchołek nie znajduje się w żadnym innym wielokącie a suma pól wielokątów
jest równa $sz \times d$. Obie te operacje są wykonywalne w czasie wielomianowym.
W zadaniu excplicite zostało podane, że musimy zredukować problem \textit{Sumy Podzbioru} do naszego problemu \problem{POR}, i faktycznie wybór ten jest nieprzypadkowy.
W zadaniu zostało \textit{explicite} podane, że musimy zredukować problem \textit{Sumy Podzbioru} do naszego problemu \problem{POR}, i faktycznie wybór ten jest nieprzypadkowy.
Na wstępie przypomnijmy: problem \textit{Sumy Podzbioru} to pytanie ,,Czy w danym (multi)zbiorze $A$ istnieje podzbiór $B$ ($B \subseteq A$) taki, że suma elementów $B$ jest równa $n$?''.
Naszkicujmy schemat $\alpha$-redukcji dla tego problemu.
@ -174,9 +174,9 @@ o tyle korzystna, że znamy ilość kolorów - możemy zatem łatwo zweryfikowa
\caption{Kolorowanie grafów}
\end{figure}
Z poprzedniego zadania wiemy, że $\chi(G_{MGP}) = 1$ tylko kiedy graf jest grafem pustym, $\chi(G_{MGP}) = 2$ tylko gdy graf jest
dwudzielny. Z zadania wiemy, że $\chi(G_{MGP}) = 3$ tylko gdy graf jest planarny, a z twierdzenia o 4 kolorach wiemy, że
$\chi(G_{MGP}) \leq 4$. Możemy zatem ułożyc bardzo prosty algorym:
Z poprzedniego zadania wiemy, że $\chi(G_\text{MGP}) = 1$ tylko kiedy graf jest grafem pustym, $\chi(G_\text{MGP}) = 2$ tylko gdy graf jest
dwudzielny. Z zadania wiemy, że $\chi(G_\text{MGP}) = 3$ tylko gdy graf jest planarny, a z twierdzenia o 4 kolorach wiemy, że
$\chi(G_\text{MGP}) \leq 4$. Możemy zatem ułożyc bardzo prosty algorym:
\begin{algorithm}[H]
\caption{Algorytm określający liczbę chromatyczną dla \textbf{MGP}}
@ -329,17 +329,17 @@ w kolejności od najkrótszego do najdłuższego programu. Pokaż, że:}
\subtask {dla \problem{MLZP} nie istnieje schemat FPTAS, chyba że $\P = \NP$}
\solution
Problem \problem{MLZP}, zgodnie z tytułem, jest problemem maksymalizacyjnym. Zatem wiemy, że $A_{opt} \geq A$, gdzie
$A_{opt}$ to odpowiedź optymalna, a $A$ to odpowiedź naszego algorytmu. Dodatkowo wiemy, że $A, A_{opt} \in \mathbb{N}$
Problem \problem{MLZP}, zgodnie z tytułem, jest problemem maksymalizacyjnym. Zatem wiemy, że $A_\text{opt} \geq A$, gdzie
$A_\text{opt}$ to odpowiedź optymalna, a $A$ to odpowiedź naszego algorytmu. Dodatkowo wiemy, że $A, A_\text{opt} \in \mathbb{N}$
oraz, że algorytm \problem{SF} jest $1$-absolutnie aproksymacyjny czyli:
\begin{equation}
|A_{opt} - A| \leq 1 \overset{maksymalizacyjny}{\implies} A_{opt} - A \leq 1 \implies A \geq A_{opt} - 1
|A_\text{opt} - A| \leq 1 \overset{\text{maksymalizacyjny}}{\implies} A_\text{opt} - A \leq 1 \implies A \geq A_\text{opt} - 1
\end{equation}
z tych 2 faktów
wiemy, że A jest zawarta między dwiema kolejnymi liczbami naturalnymi począwszy od $A_{opt} - 1$:
wiemy, że A jest zawarta między dwiema kolejnymi liczbami naturalnymi począwszy od $A_\text{opt} - 1$:
\begin{equation*}
A, A_{opt} \in \mathbb N \land A_{opt} \geq A \geq A_{opt} - 1 \Rightarrow A = A_{opt} \lor A = A_{opt} - 1
A, A_\text{opt} \in \mathbb N \land A_\text{opt} \geq A \geq A_\text{opt} - 1 \Rightarrow A = A_\text{opt} \lor A = A_\text{opt} - 1
\end{equation*}
Dodatkowo zauważamy, że jeżeli jest 1 program to algorytm zawsze zwróci wynik dokładny - zmieścił się na dyskietce
@ -397,11 +397,11 @@ Tak jak poprzednio aby udowodnić, że schemat (F)PTAS może istnieć dla tego a
udowodnić, że dla każdych danych wejściowych istnieje taki $\varepsilon$, że przybliżenie daje nam dokładny wynik. Ponieważ
problem jest maksymalizacyjny otrzymamy:
\begin{equation}\label{eqn:2011:6:fptas}
\frac {A_{opt}}{A} \leq 1 + \varepsilon \land A \leq A_{opt} \iff A \leq A_{opt} \leq A + \varepsilon A
\frac {A_\text{opt}}{A} \leq 1 + \varepsilon \land A \leq A_\text{opt} \iff A \leq A_\text{opt} \leq A + \varepsilon A
\end{equation}
Ponieważ $A, A_{opt} \in \mathbb N$ to pod warunkiem, że $A\varepsilon < 1$ nierówność \eqref{eqn:2011:6:fptas}
zredukuje się do równania $A = A_{opt}$, czyli uzyskamy wynik dokładny w czasie wielomianowym. Oczywistym jest,
Ponieważ $A, A_\text{opt} \in \mathbb N$ to pod warunkiem, że $A\varepsilon < 1$ nierówność \eqref{eqn:2011:6:fptas}
zredukuje się do równania $A = A_\text{opt}$, czyli uzyskamy wynik dokładny w czasie wielomianowym. Oczywistym jest,
że odpowiedź na problem nie może być większa niż $n$ - mając 4 programy nie możemy zapisać ich 8, brakłoby
nam programów. Stąd otrzymujemy
\begin{equation*}

View File

@ -71,8 +71,8 @@ grafu $G$ z definicji $n = 100$ możemy powiedzieć, że operacja ta dla każdeg
stałym, czyli $O(1)$ - obie odpowiedzi będą poprawne.
\taskend
\task{\textit{OGRANICZONY PROBLEM KLIKI} - \problem{OPK} - zdefiniowany jest następująco: ``Dany jest graf $G$ i liczby
naturalne $a$, $b$ takie, że $a \leq b$, czy w $G$ istnieje klika o rozmiarze $r$ taka, że $a \leq r \leq b$?,,. Pokaż, że:}
\task{\textit{Ograniczony Problem Kliki} - \problem{OPK} - zdefiniowany jest następująco: ,,Dany jest graf $G$ i liczby
naturalne $a$, $b$ takie, że $a \leq b$, czy w $G$ istnieje klika o rozmiarze $r$ taka, że $a \leq r \leq b$?''. Pokaż, że:}
\subtask{$\problem{OPK} \in \problem{NP}$}
\subtask{$\problem{OPK} \in \problem{NPC}$}

View File

@ -68,7 +68,7 @@ Problem komiwojażera bez względu na to czy jest minimalizacyjny czy maksymaliz
w danym grafie - co jest zadaniem trudnym obliczeniowo - problem szukania cyklu hamiltona jest \NPC. Dodatkowo
musimy znaleźć cykl o największej bądź najmniejszej możliwie sumie wag - to znaczy, że problem ten musi być \NP-trudny.
Problem minimalnego drzewa spinającego można rozwiązać algorytmem kruskala. Jeżeli zastąpimy wybieranie minimalnej
Problem minimalnego drzewa spinającego można rozwiązać algorytmem Kruskala. Jeżeli zastąpimy wybieranie minimalnej
krawędzi wybieraniem krawędzi maksymalnej to otrzymamy algorytm szukający maksymalnego drzewa spinającego. Kruskal jest
algorytmem wielomianowym, zatem cały problem jest w klasie \P.
@ -81,10 +81,10 @@ Zatem zakładając, że rozpatrujemy wersję decyzyjną tego problemu zdefiniowa
drogi w grafie - graf pozostaje bez zmian, natomiast za długość ścieżki przyjmujemy liczbę wierzchołków w grafie.
Wersja decyzyjna jest zatem \NPC, a co za tym idzie problem w wersji maksymalizacyjnej jest \NP-trudny.
Z twierdzenia kuratowskiego wiemy, że żaden graf nie może zawierać kliki $K_5$, zatem najwiekszą kliką w planarnym
grafie jest klika $K_4$. Jesteśmy w stanie sprawdzić istnienie $K_4, K_3$ w grafie w czasie wielomianowym. Przypadki
$K_1$ i $K_2$ są jeszcze łatwiejsze ponieważ klika $K_1$ to nic innego jak wierzchołek, a $K_2$ to krawędź. Stąd też
wiemy, że wersja minimalizacyjna jest \P.
Z twierdzenia Kuratowskiego wiemy, że żaden graf planarny nie może zawierać kliki $K_5$, zatem najwiekszą kliką w
planarnym grafie jest klika $K_4$. Jesteśmy w stanie sprawdzić istnienie $K_4, K_3$ w grafie w czasie wielomianowym.
Przypadki $K_1$ i $K_2$ są jeszcze łatwiejsze ponieważ klika $K_1$ to nic innego jak wierzchołek, a $K_2$ to krawędź.
Stąd też wiemy, że wersja minimalizacyjna jest \P.
\begin{table}[H]
\centering
@ -142,21 +142,21 @@ który chce obejrzeć. Wiemy, że optymalny czas pracy wynosi 6h, jaką złożon
kierownikowi obejrzeć mecz?
\solution
Problem ten jest problemem minimalizacyjnym oraz wiemy, że $A_{opt} = 6$. Aby zdążyć obejrzeć mecz musimy skończyć
Problem ten jest problemem minimalizacyjnym oraz wiemy, że $A_\text{opt} = 6$. Aby zdążyć obejrzeć mecz musimy skończyć
pracę o 15:00, zatem wystarczy że algorytm przydzieli pracę tak, aby wszystkie elementy zostały obrobione w czasie
8 godzin skąd $A = 8$.
\begin{equation*}
\frac{A}{A_{opt}} \leq 1 + \varepsilon \iff A \leq A_{opt} + \varepsilon A_{opt}
\frac{A}{A_\text{opt}} \leq 1 + \varepsilon \iff A \leq A_\text{opt} + \varepsilon A_\text{opt}
\end{equation*}
Ponieważ nie chcemy męczyć naszego komputera, a dokładne obliczenia są coraz cięższe wystarczy że rozpatrzymy przypadek
rozwiązujący problem dla dokładnie 8 godzin:
\begin{equation}
A = A_{opt} + \varepsilon A_{opt}
A = A_\text{opt} + \varepsilon A_\text{opt}
\end{equation}
Ponieważ znamy zarówno $A$ jak i $A_{opt}$ z łatwością możemy wyznaczyć $\varepsilon$
Ponieważ znamy zarówno $A$ jak i $A_\text{opt}$ z łatwością możemy wyznaczyć $\varepsilon$
\begin{equation*}
8 = 6 + 6\varepsilon \iff 2 = 6\varepsilon \iff \varepsilon = \frac{1}{3}
\end{equation*}

View File

@ -3,7 +3,7 @@
\node[solution, right of=pz] (r-pz) {T/N};
\node[left of=pz] (i-pz) {$A$};
\node[problem, below of=pz] (mlzp) {\problem{$MLZP_d$}};
\node[problem, below of=pz] (mlzp) {\problem{MLZP$_d$}};
\node[solution, right of=mlzp] (r-mlzp) {T/N};
\node[left of=mlzp] (i-mlzp) {$k, L, I$};

View File

@ -16,6 +16,7 @@
\usepackage{enumerate}
\usepackage{lmodern}
\usepackage{amsfonts}
\usepackage{amssymb}
\usepackage{mathtools}
\usepackage{alphalph}
\usepackage{algorithm}
@ -43,6 +44,9 @@
\pgfdeclarelayer{foreground}
\pgfsetlayers{background,main,foreground}
\renewcommand\leq\leqslant
\renewcommand\geq\geqslant
% opening
\title{PAA - Kolokwia, rozwiązania}
\author{Kacper Donat}