Podstawy Teorii Algorytmów – Kolokwium Zaliczeniowe Grupa A
Transkrypt
Podstawy Teorii Algorytmów – Kolokwium Zaliczeniowe Grupa A
Podstawy Teorii Algorytmów – Kolokwium Zaliczeniowe Grupa A Imię i Nazwisko ............................................................ Indeks ............................... 1 2 3 4 5 6 ODPOWIEDZI 7 8 9 10 11 12 13 14 *15 Uwaga: Imię, Nazwisko i odpowiedzi wpisywać drukowanymi literami!!! Przyjęto następujące oznaczenia: NPC – klasa problemów NP-zupełnych; NPh – klasa problemów NPtrudnych, sNPC – klasa problemów silnie NP-zupełnych, sNPh – klasa problemów silnie NP-trudnych; ∝ – transformacja wielomianowa; ∝P – transformacja pseudowielomianowa; t(), f (), g() – dowolne rosnące funkcje lub ciągi; p() – wielomian. Zakładamy, że P 6= N P , chyba że w pytaniu jest coś na ten temat napisane. 3. Dany jest problem π1 ∈ N P oraz problem π2 ∈ N P . Problem π1 ∈ N P C jeżeli: 1. Dany jest problem π o n2 danych. Wartość maksymalnej danej w tym problemie wynosi m. Jaka będzie długość łańcucha kodującego instancje tego problemu przy kodowaniu o podstawie b? (a) π1 ∝ π2 i π2 ∈ N P C (b) π2 ∝ π1 i π2 ∈ P (c) π2 ∝ π1 i π2 ∈ N P C (a) O(nmb ), (d) π1 ∝ π2 i π2 ∈ P (b) O(n2 m2 log2 (m)), (e) Żadna z powyższych odpowiedzi nie jest prawidłowa. (c) O(n logb m2 ), To było proste. Wystarczyło znać metodologię dowodzenia NPC. Oczywiście odpowiedź c. (d) Żadna z powyższych. Długość łańcucha kodującego problemu będzie wynosić mniej więcej (z dokładnością do zaokrągleń i liczby separatorów) n2 logb m. A stąd n2 logb m = O(n2 m2 log2 (m)). Czyli prawidłowa odpowiedź to b. 4. Dany jest problem π1 ∈ sN P C o n danych xj , j = 1, ..., n oraz problem π2 ∈ N P o m danych yj , j = 1, ..., m. Problem π1 transformuje się do π2 w następujący sposób: m = n, yj = 2j xj . Z tego wynika, że: 2. Dany jest program na NDTM o czasie działania O(t(n)). Jaki będzie czas działania tego algorytmu na DTM? (a) π2 ∈ sN P C, (b) π2 6∈ sN P C, (a) O(t(n)), t(n) (b) O(2 (c) π2 ∈ N P C\sN P C (d) Żadna z powyższych odpowiedzi nie jest prawidłowa. ), (c) O(t(n)2 ), To też było proste. Wystarczyło stwierdzić, że podana transformacja jest wielomianowa, ale nie jest pseudowielomianowa. W związku z tym, problem jest NPC, ale nie koniecznie sNPC. Odpowiedź d. (d) Wszystkie powyższe odpowiedzi mogą być prawidłowe, (e) Żadna z powyższych odpowiedzi nie jest prawidłowa. 5. Dane są dwie permutacje: s1 = (2, 1, 3, 4, 7, 5, 6) oraz s2 = (4, 1, 3, 6, 5, 2, 7). Jakie powinny być wartości punktów krzyżowania k1 ≤ k2 w operatorze PMX aby otrzymać potomka s3 = (6, 1, 3, 4, 7, 5, 2)? Program na NDTM, nie musi (ale może) wykorzystywać części niedeterministyczną maszyny. W związku z tym, jego czas działania może być na DTM taki sam jak na NDTM. Czyli odpowiedzi a-c mogą być prawidłowe, więc właściwą jest d. (a) k1 = 3, k2 = 5 1 (b) k1 = 4, k2 = 7 (b) FPTASem (c) k1 = 3, k2 = 6 (c) Obie powyższe odpowiedzi są prawidłowe Odpowiedź c. Uzasadnienie na slajdach do wykładu. (d) Żadna z powyższych odpowiedzi nie jest prawidłowa 6. Jaka jest relacja między klasami P, NP, NPC i sNPC przy założeniu, że nie wiemy czy P 6= N P ? To było podchwytliwe. Odpowiedź d jest poprawna. W problemie jest tylko 4 = O(1) danych, wieć algorytm musiał by mieć zależność od logn aby był schematem aproksymacyjnym. (a) P ⊂ N P ⊇ N P C ⊃ sN P C (b) P ⊆ N P ⊇ N P C ⊇ sN P C (c) P ⊆ N P ⊇ N P C ⊃ sN P C 10. Dany jest następujący NP-zupełny problem (3podziału): Dany jest zbiór N = {1, ..., 3n} 3n elementów o wartościach xj (j ∈ N ) takich, że P x = nB oraz B/4 ≤ xj ≤ B/2. Czy istj∈N j nieje Ppodział zbioru N na n podzbiorów Xi takich, że x = B dla każdego i = 1, ..., n? Proj∈Xi j blem ten: Jeżeli nic nie wiemy, to b. Bo może zachodzić wszędzie równość. 7. Dany problem π o n danych i maksymalnej danej wartości m oraz algorytm o złożoności O(n2 log(log(mn))). Algorytm ten: (a) Jest wielomianowym schematem aproksymacyjnym, (a) ∈ sN P h, (b) ∈ N P C\sN P C, (b) Jest w pełni wielomianowym schematem aproksymacyjnym, (c) jest problemem liczbowym, (c) Może być algorytmem programowania dynamicznego, (d) jest problemem nieliczbowym Problem jest nieliczbowy i NP-zupełny, więc jest w sNPC. Odpowiedź d. (d) Wszystkie powyższe odpowiedzi są prawidłowe, (e) Żadna odpowiedź nie jest prawidłowa. 11. W algorytmie symulowanego wyżarzania szybki spadek temperatury powoduje, że: Algorytm ten jest algorytmem wielomianowym. Spełnia wymagania dla FPTASów i PTASów. Może być PD. odpowiedź d. (a) wzrasta prawdopodobieństwo znalezienia minimum lokalnego 8. Dla jakiej funkcji f (n) i g(n) nie zachodzi równość f (n) = O(g(n))? (b) spada prawdopodobieństwo znalezienia minimum globalnego (a) f (n) = n2 , g(n) = n4 + 1; (b) f (n) = 5n , g(n) = (c) algorytm zachowuje się podobnie do algorytmu poszukiwania zstępującego p 5 n + 1/n; (c) f (n) = n3 , g(n) = 3n ; (d) Wszystkie powyższe odpowiedzi są prawidłowe Nie zachodzi dla b. (e) Żadna z powyższych odpowiedzi nie jest prawidłowa 9. Dany jest problem szeregowania n zadań na pojedynczym procesorze. Każde zadanie składa się z dwóch części i opisane jest przez trzy parametry: a - czas wykonywania pierwszej części zadania, c - czas wykonywania drugiej części zadania oraz b - czas przerwy pomiędzy zadaniami, tzn. druga część każdego zadania musi się rozpocząć dokładnie b jedostek czasu po zakończeniu jego pierwszej części. Należy zminimalizować długość uszeregowania. Zaproponowano algorytm o złożoności O(n3 /2 ) rozwiązujący ten problem z błedęm nie większym niż . W związku z tym, algorytm ten jest: Odpowiedź d. Uzasadnienie – wzór na prawdopodobieństwo akceptacji i zasada działania algorytmów SA i DS. 12. Dany jest problem π ∈ sN P h, oraz pewien przybliżony, wielomianowy algorytm A dla tego problemu. Która z poniższych sytuacji jest możliwa: ∞ (a) RA =1 (b) RA = 1 (c) RA < 1 ∞ (d) RA <1 (a) PTASem 2 ∞ Odpowiedź a. RA jest liczony tylko dla pewnego podzbioru instancji problemu, które mogą tworzyć podproblem należący do P. 13. W jakiej miejscowości Alan Turing pracował nad rozszyfrowywaniem depesz niemieckich kodowanych przy użyciu Enigmy. (a) South Hampton (b) Bletchley Park (c) Wrocław (d) Cambridge To było dla tych, którzy chodzili na wykład. Mówiłem, że w Bletchley Park. Ale tego nikt nie zapamiętał. Wszyscy tylko pamiętają, że był homoseksualistą. 14. Dany jest problem π ∈ P . Zaproponowano algorytm B&B dla tego problemu. (a) Zaproponowany algorytm jest wielomianowy (b) Algorytm ten znajduje rozwiązanie optymalne problemu w pseudowielomianowym czasie. (c) Złożoność tego algorytmu może być ponadwielomianowa (d) Żadna z powyższych odpowiedzi nie jest prawidłowa To, że problem jest w P, nie ma nic wspólnego z algorytmem. Algorytm może być ponadwielomianowy. 15. * Dana jest funkcja α(n) będąca funkcją odwrotną do funkcji Ackermana A(4, n), gdzie ( A(k, n) = n+1 A(k − 1, 1) A(k − 1, A(k, n − 1)) jeżeli k = 0 jeżeli n = 0 . jeżeli k 6= 0, n 6= 0 Która z powyższych równości jest prawdziwa? (a) log2 (n) = O(α(n)), √ (b) n n = O(α(n)), (c) α(n) = O(1), √ (d) α(n) = O( n n), (e) Wszystkie powyższe odpowiedzi są prawidłowe, (f) Żadna z odpowiedzi nie jest prawidłowa. A tu nie podpowiem. Powiem tylko, że funkcja Ackermana bardzo szybko rośnie. W związku z czym, funkcja do niej odwrotna bardzo .... no właśnie co? Rośnie? Maleje? A jak szybko? PS. Rozwiązań dla grupy B nie będzie. 3