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