Wprowadzenie do złożoności obliczeniowej

Wielkość: px
Rozpocząć pokaz od strony:

Download "Wprowadzenie do złożoności obliczeniowej"

Transkrypt

1 Institute of Informatics Wrocław University of Technology Poland wersja 0.9

2 Obliczalność f : N R { sin(1/n) gdy n jest liczba pierwsza f (n) = cos(1/n) w przeciwnym przypadku

3 Obliczalność f : N R { sin(1/n) gdy n jest liczba pierwsza f (n) = cos(1/n) w przeciwnym przypadku g : N {0, 1} 1 gdy w rozwinięciu dziesiętnym liczby π g(n) = występuje n sasiaduj acych cyfr 1 0 w przeciwnym przypadku

4 Obliczalność f : N R { sin(1/n) gdy n jest liczba pierwsza f (n) = cos(1/n) w przeciwnym przypadku g : N {0, 1} 1 gdy w rozwinięciu dziesiętnym liczby π g(n) = występuje n sasiaduj acych cyfr 1 0 w przeciwnym przypadku h : N {0, 1} 1 gdy n jest nieparzyste i n = k A k h(n) = gdzie: A = {k < n : k n} 0 w przeciwnym przypadku

5 Obliczalność t : R R n2 + {0, 1} t(x, (d 11, d 12,..., d nn )) = { 1 π n i=1 d π(i),π(i+1) < x 0 w przeciwnym przypadku

6 Obliczalność t : R R n2 + {0, 1} t(x, (d 11, d 12,..., d nn )) = F : N Z N N N {0, 1} { 1 π n i=1 d π(i),π(i+1) < x 0 w przeciwnym przypadku 1 gdy istnieja takie liczby x 1,..., x m Z, F(m, (a n ), (b n )) = dla których m i=1 a ix b i i = 0 0 w przeciwnym przypadku

7 Problemy nierozstrzygalne Dany jest skończony zbiór macierzy 3 3 o elementach będacych liczbami całkowitymi F = {A 1, A 2,..., A n }. Czy macierz zerowa jest iloczynem dowolnej liczby elementów zbioru F (z powtórzeniami)?

8 Problemy nierozstrzygalne Dany jest skończony zbiór macierzy 3 3 o elementach będacych liczbami całkowitymi F = {A 1, A 2,..., A n }. Czy macierz zerowa jest iloczynem dowolnej liczby elementów zbioru F (z powtórzeniami)? F = A 1 = , A 2 =

9 Problemy nierozstrzygalne Dany jest skończony zbiór macierzy 3 3 o elementach będacych liczbami całkowitymi F = {A 1, A 2,..., A n }. Czy macierz zerowa jest iloczynem dowolnej liczby elementów zbioru F (z powtórzeniami)? F = A 1 = , A 2 = = A 1 A 2 A 2

10 Problemy nierozstrzygalne Dany jest skończony zbiór macierzy 3 3 o elementach będacych liczbami całkowitymi F = {A 1, A 2,..., A n }. Czy macierz zerowa jest iloczynem dowolnej liczby elementów zbioru F (z powtórzeniami)? F = A 1 = , A 2 = = A 1 A 2 A 2 Nie jest możliwe skonstruowanie algorytmu, który rozwiazuje ten problem [1]. [1] Halava, V. and Harju, T.: Mortality in matrix semigroups. American Mathematical Monthly, vol. 108(7), 2001.

11 Problemy nierozstrzygalne Dane sa dwa skończone zbiory skończonych ciagów symboli ze skończonego zbioru (np. binarne, α i = , etc.). A = {α 1,..., α n } B = {β 1,..., β n } Czy istnieje takie uporzadkowanie (i k ) 1 k K, K 1, 1 i k n, że: α i1 α i2... α ik = β i1 β i2... β ik?

12 Problemy nierozstrzygalne Dane sa dwa skończone zbiory skończonych ciagów symboli ze skończonego zbioru (np. binarne, α i = , etc.). A = {α 1,..., α n } B = {β 1,..., β n } Czy istnieje takie uporzadkowanie (i k ) 1 k K, K 1, 1 i k n, że: A = {0, 01, 110} B = {100, 00, 11} (i 1, i 2, i 3, i 4 ) = (3, 2, 3, 1) α 3 α 2 α 3 α 1 = = β 3 β 2 β 3 β 1 α i1 α i2... α ik = β i1 β i2... β ik? (jeśli istnieje jedno rozwiazanie, to istnieje ich nieskończenie wiele)

13 Problemy nierozstrzygalne Dane sa dwa skończone zbiory skończonych ciagów symboli ze skończonego zbioru (np. binarne, α i = , etc.). A = {α 1,..., α n } B = {β 1,..., β n } Czy istnieje takie uporzadkowanie (i k ) 1 k K, K 1, 1 i k n, że: A = {0, 01, 110} B = {100, 00, 11} (i 1, i 2, i 3, i 4 ) = (3, 2, 3, 1) α 3 α 2 α 3 α 1 = = β 3 β 2 β 3 β 1 α i1 α i2... α ik = β i1 β i2... β ik? (jeśli istnieje jedno rozwiazanie, to istnieje ich nieskończenie wiele) Problem ten jest nierozstrzygalny [2]. [2] Post, E.: A variant of a recursively unsolvable problem, Bulletin of the American Mathematical Society, vol. 52(4), 1946

14 Rodzaje problemów w matematyce Problemy łatwo rozwiazywalne (= funkcje łatwo obliczalne). Problemy rozwiazywalne, ale trudne: Nie jest znany algorytm rozwiazywania (= obliczania funkcji). Nie jest znany "szybki" algorytm rozwiazywania. Problemy nierozwiazywalne w ogólnym przypadku.

15 Maszyna Turinga Definicja (DTM) Deterministyczna maszyna Turinga nazywamy czwórkę (K, Σ, δ, s), w której: K skończony zbiór stanów (instrukcji) Σ skończony zbiór symboli (tzw. alfabet) δ : K Σ (K {YES, NO, H}) Σ {,, } funkcja przejścia s K stan poczatkowy Ponadto zbiór Σ zawiera zawsze symbole: symbol pusty symbol końcowy, a zbiór K Σ nie zawiera syboli specjalnych: YES, NO, H,,,,,.

16 Maszyna Turinga Maszyna Turinga jest formalna reprezentacja pojęcia "algorytm". Dane wejściowe algorytmu sa reprezentowane poprzez ciag symboli x (Σ { }). Efekt działania 1 kroku algorytmu: (q, w, u) (q, w, u ) gdzie: q, q K stan maszyny przed i po wykonaniu kroku w, u Σ słowa po lewej i prawej stronie kursora (poczatkowo: w = x, u = ) w, u Σ słowa po lewej i prawej stronie kursora po wykonaniu kroku

17 Maszyna Turinga Mówimy, że maszyna M przechodzi z konfiguracji (q, w, u) do konfiguracji (q, w, u ) po k krokach, jeżeli istnieje ciag kroków pośrednich (q i, w i, u i ) (q i+1, w i+1, u i+1 ), i = 1,..., k 1, w których pierwsza konfiguracja to (q, w, u), a ostatnia (q, w, u ).

18 Maszyna Turinga Piszemy, M(x) = y, gdzie: y = 1 jeśli istnieje q K, takie że δ(q, ) = (YES,, ) oraz maszyna przechodzi z (s, x, ) do (q,, ) w skończonej liczbie kroków 0 jeśli istnieje q K, takie że δ(q, ) = (NO,, ) oraz maszyna przechodzi z (s, x, ) do (q,, ) w skończonej liczbie kroków w u jeśli istnieje q K, takie że δ(q, ) = (H,, ) oraz maszyna przechodzi z (s, x, ) do (q, w, u ) w skończonej liczbie kroków w przeciwnym przypadku

19 Maszyna Turinga Dodatkowa notacja: M k (x) = y tak jak do tej pory, ale zamiast "w skończonej liczbie kroków" "w co najwyżej k krokach".

20 Języki Językiem nazywamy podzbiór symboli L (Σ { }). Definicja Język L nazywamy rekurencyjnym, jeśli istnieje M: x L M(x) = 1 x/ L M(x) = 0 Definicja Język L nazywamy rekurencyjnie przeliczalnym, jeśli istnieje M: x L M(x) = 1 x/ L M(x) = Maszyna Turinga rozstrzyga język rekurencyjny. Maszyna Turinga rozpoznaje język rekurencyjnie przeliczalny.

21 Języki Przykład 1. L = {x jest binarna reprezentacja liczby m : 1<p,q N m = pq} Maszyna, która rozstrzyga ten język jest algorytmem wyliczajacym funkcję: f (x) = 0, jeśli x jest liczba pierwsza, 1 w przeciwnym przypadku

22 Języki Przykład 3. L = {x : x jest binarna reprezentacja ciagu macierzy 3 3 dla których istnieje ciag mnożeń dajacy w wyniku macierz zerowa} Maszyna, która rozstrzygałaby ten język rozwiazałaby problem "matrix mortality". Taka maszyna nie istnieje, ale istnieje maszyna, która rozpoznaje pozytywne przypadki tego problemu.

23 Notacja asymptotyczna Niech f, g : R R. Definicja (duże O) f (x) O(g(x)) C R x0 R x x0 f (x) C g(x) Definicja (duża Omega) f (x) Ω(g(x)) C R x0 R x x0 f (x) Cg(x) Definicja (duża Theta) f (x) Θ(g(x)) f (x) O(g(x)) f (x) Ω(g(x)) Definicja (małe o) f (x) o(g(x)) C R x0 R x x0 f (x) C g(x) Uwaga: Zwyczajowo pisze się f (x) = O(g(x)), chociaż to nie jest równość.

24 Klasa P Problemy, dla których istnieje DTM osiagaj aca jeden ze stanów YES, NO po wykonaniu co najwyżej O(n k ) kroków, dla dowolnego k N, gdzie: n = długość słowa wejściowego x (liczba symboli). Bardziej formalnie: Język L P L jest rekurencyjny i istnieje DTM, która go rozstrzyga w czasie O(n k ). Tzn.: M x L k N x = n M f (n) (x) {0, 1} f (n) = O(n k ).

25 Przykłady Ważne problemy należace do P: Programowanie liniowe (tzn. minimalizacja liniowej funkcji przy liniowych ograniczeniach) algorytm elipsoidalny.

26 Przykłady Ważne problemy należace do P: Programowanie liniowe (tzn. minimalizacja liniowej funkcji przy liniowych ograniczeniach) algorytm elipsoidalny. Programowanie kwadratowe dla wypukłej funkcji (tzn. min x T Ax, gdzie A jest dodatnio określona, przy liniowych ograniczeniach).

27 Przykłady Ważne problemy należace do P: Programowanie liniowe (tzn. minimalizacja liniowej funkcji przy liniowych ograniczeniach) algorytm elipsoidalny. Programowanie kwadratowe dla wypukłej funkcji (tzn. min x T Ax, gdzie A jest dodatnio określona, przy liniowych ograniczeniach). Testowanie pierwszości liczby (NIE: faktoryzacja), Manindra Agrawal, Neeraj Kayal, Nitin Saxena, PRIMES is in P, Annals of Mathematics vol. 160(2), 2004.

28 Przykłady Ważne problemy należace do P: Programowanie liniowe (tzn. minimalizacja liniowej funkcji przy liniowych ograniczeniach) algorytm elipsoidalny. Programowanie kwadratowe dla wypukłej funkcji (tzn. min x T Ax, gdzie A jest dodatnio określona, przy liniowych ograniczeniach). Testowanie pierwszości liczby (NIE: faktoryzacja), Manindra Agrawal, Neeraj Kayal, Nitin Saxena, PRIMES is in P, Annals of Mathematics vol. 160(2), Znajdowanie maksymalnego przepływu w grafie.

29 Przykłady Ważne problemy należace do P: Programowanie liniowe (tzn. minimalizacja liniowej funkcji przy liniowych ograniczeniach) algorytm elipsoidalny. Programowanie kwadratowe dla wypukłej funkcji (tzn. min x T Ax, gdzie A jest dodatnio określona, przy liniowych ograniczeniach). Testowanie pierwszości liczby (NIE: faktoryzacja), Manindra Agrawal, Neeraj Kayal, Nitin Saxena, PRIMES is in P, Annals of Mathematics vol. 160(2), Znajdowanie maksymalnego przepływu w grafie. Wyznaczanie najkrótszego drzewa rozpinajacego grafu.

30 Przykłady Ważne problemy należace do P: Programowanie liniowe (tzn. minimalizacja liniowej funkcji przy liniowych ograniczeniach) algorytm elipsoidalny. Programowanie kwadratowe dla wypukłej funkcji (tzn. min x T Ax, gdzie A jest dodatnio określona, przy liniowych ograniczeniach). Testowanie pierwszości liczby (NIE: faktoryzacja), Manindra Agrawal, Neeraj Kayal, Nitin Saxena, PRIMES is in P, Annals of Mathematics vol. 160(2), Znajdowanie maksymalnego przepływu w grafie. Wyznaczanie najkrótszego drzewa rozpinajacego grafu. Obliczanie dyskretnej transformaty Fouriera.

31 Przykłady Ważne problemy należace do P: Programowanie liniowe (tzn. minimalizacja liniowej funkcji przy liniowych ograniczeniach) algorytm elipsoidalny. Programowanie kwadratowe dla wypukłej funkcji (tzn. min x T Ax, gdzie A jest dodatnio określona, przy liniowych ograniczeniach). Testowanie pierwszości liczby (NIE: faktoryzacja), Manindra Agrawal, Neeraj Kayal, Nitin Saxena, PRIMES is in P, Annals of Mathematics vol. 160(2), Znajdowanie maksymalnego przepływu w grafie. Wyznaczanie najkrótszego drzewa rozpinajacego grafu. Obliczanie dyskretnej transformaty Fouriera. 2-SAT (spełnialność formuł boolowskich w postaci CNF z 2 literałami w klauzuli, np: (x 1 x 2 ) (x 1 x 3 ))....

32 Typowa złożoność Przeważnie dla algorytmów wielomianowych O(n k ), k 1 5. Często teoretycznie lepszy algorytm nie jest używany w praktyce. Przykład: mnożenie macierzy. Najszybszy znany algorytm: O(n 2.37 ), ale ze względu na zbyt duży stały współczynnik algorytm O(n 3 ) jest dużo szybszy dla "typowych" danych (macierze n < 1000).

33 Niedeterministyczna maszyna Turinga Definicja (NDTM) Nideterministyczna maszyna Turinga nazywamy czwórkę (K, Σ,, s), w której: K skończony zbiór stanów (instrukcji) Σ skończony zbiór symboli (tzw. alfabet) [K Σ] [(K {YES, NO, H}) Σ {,, }] relacja s K stan poczatkowy Ponadto zbiór Σ zawiera zawsze symbole: symbol pusty symbol końcowy, a zbiór K Σ nie zawiera syboli specjalnych: YES, NO, H,,,,,.

34 Klasa N P Język L N P L jest rekurencyjny i rozstrzygalny przez NDTM w czasie O(n k ).

35 Przykłady Ważne problemy należace do klasy N P Programowanie całkowitoliczbowe (i zerojedynkowe)

36 Przykłady Ważne problemy należace do klasy N P Programowanie całkowitoliczbowe (i zerojedynkowe) Programowanie kwadratowe w ogólnym przypadku.

37 Przykłady Ważne problemy należace do klasy N P Programowanie całkowitoliczbowe (i zerojedynkowe) Programowanie kwadratowe w ogólnym przypadku. Problem plecakowy.

38 Przykłady Ważne problemy należace do klasy N P Programowanie całkowitoliczbowe (i zerojedynkowe) Programowanie kwadratowe w ogólnym przypadku. Problem plecakowy. Problem komiwojażera.

39 Przykłady Ważne problemy należace do klasy N P Programowanie całkowitoliczbowe (i zerojedynkowe) Programowanie kwadratowe w ogólnym przypadku. Problem plecakowy. Problem komiwojażera. Szeregowanie zadań.

40 Przykłady Ważne problemy należace do klasy N P Programowanie całkowitoliczbowe (i zerojedynkowe) Programowanie kwadratowe w ogólnym przypadku. Problem plecakowy. Problem komiwojażera. Szeregowanie zadań. Wyznaczanie liczby chromatycznej grafu (kolorowanie).

41 Przykłady Ważne problemy należace do klasy N P Programowanie całkowitoliczbowe (i zerojedynkowe) Programowanie kwadratowe w ogólnym przypadku. Problem plecakowy. Problem komiwojażera. Szeregowanie zadań. Wyznaczanie liczby chromatycznej grafu (kolorowanie). Problemy lokalizacji magazynów (k-centrów, k-median).

42 Przykłady Ważne problemy należace do klasy N P Programowanie całkowitoliczbowe (i zerojedynkowe) Programowanie kwadratowe w ogólnym przypadku. Problem plecakowy. Problem komiwojażera. Szeregowanie zadań. Wyznaczanie liczby chromatycznej grafu (kolorowanie). Problemy lokalizacji magazynów (k-centrów, k-median). Wyznaczanie najkrótszego drzewa Steinera.

43 Przykłady Ważne problemy należace do klasy N P Programowanie całkowitoliczbowe (i zerojedynkowe) Programowanie kwadratowe w ogólnym przypadku. Problem plecakowy. Problem komiwojażera. Szeregowanie zadań. Wyznaczanie liczby chromatycznej grafu (kolorowanie). Problemy lokalizacji magazynów (k-centrów, k-median). Wyznaczanie najkrótszego drzewa Steinera. Najkrótsze drzewo rozpinajace o co najwyżej k wierzchołkach w grafie n > k - wierzchołkowym.

44 Przykłady Ważne problemy należace do klasy N P Programowanie całkowitoliczbowe (i zerojedynkowe) Programowanie kwadratowe w ogólnym przypadku. Problem plecakowy. Problem komiwojażera. Szeregowanie zadań. Wyznaczanie liczby chromatycznej grafu (kolorowanie). Problemy lokalizacji magazynów (k-centrów, k-median). Wyznaczanie najkrótszego drzewa Steinera. Najkrótsze drzewo rozpinajace o co najwyżej k wierzchołkach w grafie n > k - wierzchołkowym. 3-SAT (spełnialność formuł boolowskich w postaci CNF z 3 literałami w klauzuli, np.: (x 1 x 2 x 3 ) ( x 1 x 2 x 3 ))....

45 Redukowalność problemów Definicja (redukowalność) Niech L i L będa językami. Wtedy L L (L jest redukowalny do L ) jeśli istnieje taka funkcja f : Σ Σ, obliczalna przez DTM w czasie wielomianowym, dla której: x L f (x) L

46 Redukowalność problemów Jeśli L N P to L k-sat [3] Jeśli istnieje wielomianowy algorytm dla k-sat to istnieje dla wszystkich problemów w N P. A więc w pewnym sensie w problemie k-sat zawarta jest cała "trudność" problemu L. Rolę problemu k-sat może pełnić wiele innych problemów kombinatorycznych, teoriografowych, itp. [4] [3] Stephen Cook: "The complexity of theorem proving procedures". Proceedings of the Third Annual ACM Symposium on Theory of Computing, 1971 [4] Richard M. Karp: "Reducibility Among Combinatorial Problems". In: Complexity of Computer Computations, 1972

47 Redukowalność problemów Definicja Język L N P-complete jeśli: a) L N P b) L N P L L Definicja Język L N P-hard jeśli: L N P L L

48 Klasa N P-complete Większość znanych problemów w N P jest w N P-complete. Przykład: k-sat programowanie 0-1 (wersja decyzyjna) k-sat : zbiór formuł {C 1,..., C p } Przekształcenie: C = [c ij ], i = 1,..., p, j = 1,..., n, gdzie: 1 jeśli x j C i c ij = 1 jeśli x j C i 0 w przeciwnym przypadku b = [b 1,..., b n ], gdzie: b i = 1 [liczba zanegowanych literałów w C i ] Koniunkcja C 1... C p jest spełniona dla zmiennych boolowskich x = (x 1,..., x n ) wtedy i tylko wtedy, gdy Cx = b.

49 Przykłady Wszystkie te problemy sa w N P-complete: Programowanie całkowitoliczbowe (i zerojedynkowe) Programowanie kwadratowe w ogólnym przypadku. Problem plecakowy. Problem komiwojażera. Szeregowanie zadań. Wyznaczanie liczby chromatycznej grafu (kolorowanie). Problemy lokalizacji magazynów (k-centrów, k-median). Wyznaczanie najkrótszego drzewa Steinera. Najkrótsze drzewo rozpinajace o co najwyżej k wierzchołkach w grafie n > k - wierzchołkowym. 3-SAT (spełnialność formuł boolowskich w postaci CNF z 3 literałami w klauzuli, np.: (x 1 x 2 x 3 ) ( x 1 x 2 x 3 ))....

50 Przykłady Problemy wewnatrz N P, ale nie w N P-complete, ani w P (przynajmniej nie wiadomo do tej pory): Faktoryzacja liczby. Stwierdzenie, czy 2 grafy sa izomorficzne. Obliczenie punktu równowagi Nasha gry dwuosobowej o niezerowej sumie.

51 Złożoność pamięciowa Wróćmy do definicji: Mówimy, że maszyna M przechodzi z konfiguracji (q, w, u) do konfiguracji (q, w, u ) po k krokach, jeżeli istnieje ciag kroków pośrednich (q i, w i, u i ) (q i+1, w i+1, u i+1 ), i = 1,..., k 1, w których pierwsza konfiguracja to (q, w, u), a ostatnia (q, w, u ) Definicja Pamięcia wymagana przez maszynę Turinga dla obliczenia M(x) jest k i=1 w iu i, gdzie k liczba kroków wykonana przed zatrzymaniem. Definicja Maszyna turinga M ma złożoność pamięciowa f (n), jeżeli zatrzymuje się (tzn. przyjmuje wartość M(x) ), zanim k i=1 w iu i > f (n), dla n = x, dla x Σ.

52 Algorytmy przybliżone Niech: x dane wejściowe problemu A(x) wartość wyliczona algorytmem przybliżonym OPT(x) wartość optymalna Definicja (ρ-aproksymacja) Algorytm nazywamy ρ-aproksymacyjnym, ρ 1, jeśli dla dowolnych danych wejściowych x zachodzi: max{ A(x) OPT(x), OPT(x) A(x) } ρ Definicja (ɛ-aproksymacja) Algorytm nazywamy ɛ-przybliżonym, 0 ɛ 1, jeśli dla dowolnych danych wejściowych x zachodzi: ρ = 1 lub ɛ = 0 algorytm dokładny ρ = lub ɛ = 1 algorytm heurystyczny A(x) OPT(x) max{a(x), OPT(x)} ɛ

53 Inne klasy złożoności EXP determ. maszyny Turinga działajace w czasie O(2 nk ) problem stopu maszyny Turinga w k krokach uogólnione szachy PSPACE determ. używajace O(n k ) pamięci i dowolnie dużo czasu Q SAT, spełnialność formuł k-sat z dowolnymi kwantyfikatorami (np.: x1 x2 x3 (x 1 x 2 x 3 ) ( x 1 x 2 x 3 )) NEXP niedeterm. działajace w czasie O(2 nk ) L determ. używajace O(log n) pamięci N L niedeterm. używajace O(log n) pamięci NPSPACE niedeterm. używajace O(n k ) pamięci

54 Inne klasy złożoności APX problemy, dla których istnieje algorytm ρ-przybliżony działajacy w czasie O(n k ), dla pewnego ρ 1 PTAS problemy, dla których istnieje algorytm ρ-przybliżony działajacy w czasie O(n k ), dla każdego ρ 1 #P problemy wyliczeniowe dla problemów decyzyjnych, tzn. dla ilu ścieżek NDTM zachodzi M(x) = 1 (np. ile jest drzew rozpinajacych o długości k?)... i kilkadziesiat innych

55 Zależności pomiędzy klasami Hierarchia klas: L N L P N P PSPACE EXP NEXP EXPSPACE Do tej pory wiadomo tylko, że: L PSPACE N P = NEXP PSPACE EXPSPACE

56 Thank you Questions?

Struktury danych i złozoność obliczeniowa. Prof. dr hab. inż. Jan Magott

Struktury danych i złozoność obliczeniowa. Prof. dr hab. inż. Jan Magott Struktury danych i złozoność obliczeniowa Prof. dr hab. inż. Jan Magott Formy zajęć: Wykład 1 godz., Ćwiczenia 1 godz., Projekt 2 godz.. Adres strony z materiałami do wykładu: http://www.zio.iiar.pwr.wroc.pl/sdizo.html

Bardziej szczegółowo

Teoria obliczeń i złożoność obliczeniowa

Teoria obliczeń i złożoność obliczeniowa Teoria obliczeń i złożoność obliczeniowa Kontakt: dr hab. inż. Adam Kasperski, prof. PWr. pokój 509 B4 adam.kasperski@pwr.wroc.pl materiały + informacje na stronie www. Zaliczenie: Egzamin Literatura Problemy

Bardziej szczegółowo

Obliczenia inspirowane Naturą

Obliczenia inspirowane Naturą Obliczenia inspirowane Naturą Wykład 01 Modele obliczeń Jarosław Miszczak IITiS PAN Gliwice 05/10/2016 1 / 33 1 2 3 4 5 6 2 / 33 Co to znaczy obliczać? Co to znaczy obliczać? Deterministyczna maszyna Turinga

Bardziej szczegółowo

Hierarchia Chomsky ego Maszyna Turinga

Hierarchia Chomsky ego Maszyna Turinga Hierarchia Chomsky ego Maszyna Turinga Języki formalne i automaty Dr inż. Janusz Majewski Katedra Informatyki Gramatyka Gramatyką G nazywamy czwórkę uporządkowaną gdzie: G = V skończony zbiór

Bardziej szczegółowo

PROBLEMY NIEROZSTRZYGALNE

PROBLEMY NIEROZSTRZYGALNE PROBLEMY NIEROZSTRZYGALNE Zestaw 1: T Przykład - problem domina T Czy podanym zestawem kafelków można pokryć dowolny płaski obszar zachowując odpowiedniość kolorów na styku kafelków? (dysponujemy nieograniczoną

Bardziej szczegółowo

ZŁOŻONOŚĆ OBLICZENIOWA ALGORYTMÓW

ZŁOŻONOŚĆ OBLICZENIOWA ALGORYTMÓW ZŁOŻONOŚĆ OBLICZENIOWA ALGORYTMÓW RELACJE MIEDZY KLASAMI ZŁOŻONOŚCI Bartosz Zieliński Katedra Fizyki Teoretycznej i Informatyki Zima 2011-2012 KLASY ZŁOŻONOŚCI KLASE ZŁOŻONOŚCI OPISUJE SIE PODAJAC: Model

Bardziej szczegółowo

Logika stosowana. Ćwiczenia Złożoność obliczeniowa problemu spełnialności. Marcin Szczuka. Instytut Informatyki, Uniwersytet Warszawski

Logika stosowana. Ćwiczenia Złożoność obliczeniowa problemu spełnialności. Marcin Szczuka. Instytut Informatyki, Uniwersytet Warszawski Logika stosowana Ćwiczenia Złożoność obliczeniowa problemu spełnialności Marcin Szczuka Instytut Informatyki, Uniwersytet Warszawski Wykład fakultatywny w semestrze zimowym 2015/2016 Marcin Szczuka (MIMUW)

Bardziej szczegółowo

Struktury danych i złożoność obliczeniowa Wykład 7. Prof. dr hab. inż. Jan Magott

Struktury danych i złożoność obliczeniowa Wykład 7. Prof. dr hab. inż. Jan Magott Struktury danych i złożoność obliczeniowa Wykład 7 Prof. dr hab. inż. Jan Magott Problemy NP-zupełne Transformacją wielomianową problemu π 2 do problemu π 1 (π 2 π 1 ) jest funkcja f: D π2 D π1 spełniająca

Bardziej szczegółowo

Struktura danych. Sposób uporządkowania informacji w komputerze.

Struktura danych. Sposób uporządkowania informacji w komputerze. Struktura danych Sposób uporządkowania informacji w komputerze. Algorytm Skończony, uporządkowany ciąg jasno zdefiniowanych czynności, koniecznych do wykonania pewnego zadania. Al-Khwarizmi perski matematyk

Bardziej szczegółowo

Maszyna Turinga języki

Maszyna Turinga języki Maszyna Turinga języki Teoria automatów i języków formalnych Dr inż. Janusz Majewski Katedra Informatyki Maszyna Turinga (1) b b b A B C B D A B C b b Q Zależnie od symbolu obserwowanego przez głowicę

Bardziej szczegółowo

Algorytmika Problemów Trudnych

Algorytmika Problemów Trudnych Algorytmika Problemów Trudnych Wykład 9 Tomasz Krawczyk krawczyk@tcs.uj.edu.pl Kraków, semestr letni 2016/17 plan wykładu Algorytmy aproksymacyjne: Pojęcie algorytmu aproksymacyjnego i współczynnika aproksymowalności.

Bardziej szczegółowo

Wykład na Politechnice Krakowskiej w dniu 18 stycznia 2012 r. ZADAŃ I ALGORYTMÓW W OPTYMALIZACJI DYSKRETNEJ

Wykład na Politechnice Krakowskiej w dniu 18 stycznia 2012 r. ZADAŃ I ALGORYTMÓW W OPTYMALIZACJI DYSKRETNEJ Wykład na Politechnice Krakowskiej w dniu 18 stycznia 2012 r. ZŁOŻONOŚĆ OBLICZENIOWA ZADAŃ I ALGORYTMÓW W OPTYMALIZACJI DYSKRETNEJ dr hab. Krzysztof SZKATUŁA, prof. PAN Instytut Badań Systemowych PAN Uniwersytet

Bardziej szczegółowo

Struktury danych i złożoność obliczeniowa Wykład 5. Prof. dr hab. inż. Jan Magott

Struktury danych i złożoność obliczeniowa Wykład 5. Prof. dr hab. inż. Jan Magott Struktury danych i złożoność obliczeniowa Wykład 5 Prof. dr hab. inż. Jan Magott DMT rozwiązuje problem decyzyjny π przy kodowaniu e w co najwyżej wielomianowym czasie, jeśli dla wszystkich łańcuchów wejściowych

Bardziej szczegółowo

Zakładamy, że maszyna ma jeden stan akceptujacy.

Zakładamy, że maszyna ma jeden stan akceptujacy. Złożoność pamięciowa Rozważamy następujac a maszynę Turinga: 1 0 0 1 1 0 1 1 1 1 Taśma wejściowa (read only) 1 0 1 1 0 0 0 1 0 0 1 Taśma robocza (read/write) 0 1 1 0 0 1 0 0 1 Taśma wyjściowa (write only)

Bardziej szczegółowo

Modele Obliczeń. Wykład 1 - Wprowadzenie. Marcin Szczuka. Instytut Matematyki, Uniwersytet Warszawski

Modele Obliczeń. Wykład 1 - Wprowadzenie. Marcin Szczuka. Instytut Matematyki, Uniwersytet Warszawski Modele Obliczeń Wykład 1 - Wprowadzenie Marcin Szczuka Instytut Matematyki, Uniwersytet Warszawski Wykład fakultatywny w semestrze zimowym 2014/2015 Marcin Szczuka (MIMUW) Modele Obliczeń 2014/2015 1 /

Bardziej szczegółowo

Języki, automaty i obliczenia

Języki, automaty i obliczenia Języki, automaty i obliczenia Wykład 11: Obliczalność i nieobliczalność Sławomir Lasota Uniwersytet Warszawski 6 maja 2015 Plan 1 Problemy częściowo rozstrzygalne 2 Problemy rozstrzygalne 3 Funkcje (częściowo)

Bardziej szczegółowo

a 11 a a 1n a 21 a a 2n... a m1 a m2... a mn x 1 x 2... x m ...

a 11 a a 1n a 21 a a 2n... a m1 a m2... a mn x 1 x 2... x m ... Wykład 15 Układy równań liniowych Niech K będzie ciałem i niech α 1, α 2,, α n, β K. Równanie: α 1 x 1 + α 2 x 2 + + α n x n = β z niewiadomymi x 1, x 2,, x n nazywamy równaniem liniowym. Układ: a 21 x

Bardziej szczegółowo

Języki, automaty i obliczenia

Języki, automaty i obliczenia Języki, automaty i obliczenia Wykład 12: Gramatyki i inne modele równoważne maszynom Turinga. Wstęp do złożoności obliczeniowej Sławomir Lasota Uniwersytet Warszawski 20 maja 2015 Plan 1 Gramatyki 2 Języki

Bardziej szczegółowo

Lista 6 Problemy NP-zupełne

Lista 6 Problemy NP-zupełne 1 Wprowadzenie Uniwersytet Zielonogórski Instytut Sterowania i Systemów Informatycznych Teoretyczne Podstawy Informatyki Lista 6 Problemy NP-zupełne Problem abstrakcyjny Q jest to relacja dwuargumentowa

Bardziej szczegółowo

Algorytmy Równoległe i Rozproszone Część III - Układy kombinacyjne i P-zupełność

Algorytmy Równoległe i Rozproszone Część III - Układy kombinacyjne i P-zupełność Algorytmy Równoległe i Rozproszone Część III - Układy kombinacyjne i P-zupełność Łukasz Kuszner pokój 209, WETI http://www.kaims.pl/ kuszner/ kuszner@eti.pg.gda.pl Oficjalna strona wykładu http://www.kaims.pl/

Bardziej szczegółowo

Efektywność Procedur Obliczeniowych. wykład 5

Efektywność Procedur Obliczeniowych. wykład 5 Efektywność Procedur Obliczeniowych wykład 5 Modele procesu obliczeń (8) Jedno-, wielotaśmowa MT oraz maszyna RAM są równoważne w przypadku, jeśli dany problem jest rozwiązywany przez jeden model w czasie

Bardziej szczegółowo

Złożoność obliczeniowa. wykład 1

Złożoność obliczeniowa. wykład 1 Złożoność obliczeniowa wykład 1 Dwa wykłady: wtorek / środa różnice niewielkie Sprawy organizacyjne wtorek: trochę szybciej, parę dodatkowych rzeczy dedykowana grupa ćw. M. Pilipczuka - ale śmiało mogą

Bardziej szczegółowo

Metody teorii gier. ALP520 - Wykład z Algorytmów Probabilistycznych p.2

Metody teorii gier. ALP520 - Wykład z Algorytmów Probabilistycznych p.2 Metody teorii gier ALP520 - Wykład z Algorytmów Probabilistycznych p.2 Metody teorii gier Cel: Wyprowadzenie oszacowania dolnego na oczekiwany czas działania dowolnego algorytmu losowego dla danego problemu.

Bardziej szczegółowo

Porównanie czasów działania algorytmów sortowania przez wstawianie i scalanie

Porównanie czasów działania algorytmów sortowania przez wstawianie i scalanie Więcej o sprawności algorytmów Porównanie czasów działania algorytmów sortowania przez wstawianie i scalanie Załóżmy, że możemy wykonać dane zadanie przy użyciu dwóch algorytmów: jednego o złożoności czasowej

Bardziej szczegółowo

Algorytmy Równoległe i Rozproszone Część X - Algorytmy samostabilizujące.

Algorytmy Równoległe i Rozproszone Część X - Algorytmy samostabilizujące. Algorytmy Równoległe i Rozproszone Część X - Algorytmy samostabilizujące. Łukasz Kuszner pokój 209, WETI http://www.sphere.pl/ kuszner/ kuszner@sphere.pl Oficjalna strona wykładu http://www.sphere.pl/

Bardziej szczegółowo

Kombinatoryczne problemy optymalizacyjne to problemy wyboru najlepszego rozwiązania z pewnego zbioru rozwiązań

Kombinatoryczne problemy optymalizacyjne to problemy wyboru najlepszego rozwiązania z pewnego zbioru rozwiązań Kombinatoryczne problemy optymalizacyjne to problemy wyboru najlepszego rozwiązania z pewnego zbioru rozwiązań dopuszczalnych. NP-optymalizacyjny problem Π składa się: zbioru instancji D Π rozpoznawalnego

Bardziej szczegółowo

Adam Meissner SZTUCZNA INTELIGENCJA Problem spełnialności (SAT)

Adam Meissner   SZTUCZNA INTELIGENCJA Problem spełnialności (SAT) Instytut Automatyki, Robotyki i Inżynierii Informatycznej Politechniki Poznańskiej Adam Meissner Adam.Meissner@put.poznan.pl http://www.man.poznan.pl/~ameis SZTUCZNA INTELIGENCJA Problem spełnialności

Bardziej szczegółowo

Kolejny krok iteracji polega na tym, że przechodzimy do następnego wierzchołka, znajdującego się na jednej krawędzi z odnalezionym już punktem, w

Kolejny krok iteracji polega na tym, że przechodzimy do następnego wierzchołka, znajdującego się na jednej krawędzi z odnalezionym już punktem, w Metoda Simpleks Jak wiadomo, problem PL z dowolną liczbą zmiennych można rozwiązać wyznaczając wszystkie wierzchołkowe punkty wielościanu wypukłego, a następnie porównując wartości funkcji celu w tych

Bardziej szczegółowo

Przykłady problemów optymalizacyjnych

Przykłady problemów optymalizacyjnych Przykłady problemów optymalizacyjnych NAJKRÓTSZA ŚCIEŻKA W zadanym grafie G = (V, A) wyznacz najkrótsza ścieżkę od wierzchołka s do wierzchołka t. 2 7 5 5 3 9 5 s 8 3 1 t 2 2 5 5 1 5 4 Przykłady problemów

Bardziej szczegółowo

Języki, automaty i obliczenia

Języki, automaty i obliczenia Języki, automaty i obliczenia Wykład 10: Maszyny Turinga Sławomir Lasota Uniwersytet Warszawski 29 kwietnia 2015 Plan Maszyny Turinga (Niedeterministyczna) maszyna Turinga M = (A, Q, q 0, F, T, B, δ) A

Bardziej szczegółowo

Trudność aproksymacji problemów NP-trudnych

Trudność aproksymacji problemów NP-trudnych Uniwersytet Warszawski Wydział Matematyki, Informatyki i Mechaniki Anna Niewiarowska Nr albumu: 201074 Trudność aproksymacji problemów NP-trudnych Praca magisterska na kierunku INFORMATYKA Praca wykonana

Bardziej szczegółowo

1 Automaty niedeterministyczne

1 Automaty niedeterministyczne Szymon Toruńczyk 1 Automaty niedeterministyczne Automat niedeterministyczny A jest wyznaczony przez następujące składniki: Alfabet skończony A Zbiór stanów Q Zbiór stanów początkowych Q I Zbiór stanów

Bardziej szczegółowo

Sieć (graf skierowany)

Sieć (graf skierowany) Sieci Sieć (graf skierowany) Siecia (grafem skierowanym) G = (V, A) nazywamy zbiór wierzchołków V oraz zbiór łuków A V V. V = {A, B, C, D, E, F}, A = {(A, B), (A, D), (A, C), (B, C),..., } Ścieżki i cykle

Bardziej szczegółowo

EGZAMIN - Wersja A. ALGORYTMY I STRUKTURY DANYCH Lisek89 opracowanie kartki od Pani dr E. Koszelew

EGZAMIN - Wersja A. ALGORYTMY I STRUKTURY DANYCH Lisek89 opracowanie kartki od Pani dr E. Koszelew 1. ( pkt) Dany jest algorytm, który dla dowolnej liczby naturalnej n, powinien wyznaczyd sumę kolejnych liczb naturalnych mniejszych od n. Wynik algorytmu jest zapisany w zmiennej suma. Algorytm i=1; suma=0;

Bardziej szczegółowo

Pierścień wielomianów jednej zmiennej

Pierścień wielomianów jednej zmiennej Rozdział 1 Pierścień wielomianów jednej zmiennej 1.1 Definicja pierścienia wielomianów jednej zmiennej Definicja 1.1 Niech P będzie dowolnym pierścieniem. Ciąg nieskończony (a 0, a 1,..., a n,...) elementów

Bardziej szczegółowo

Struktury danych i złożoność obliczeniowa. Prof. dr hab. inż. Jan Magott

Struktury danych i złożoność obliczeniowa. Prof. dr hab. inż. Jan Magott Struktury danych i złożoność obliczeniowa Prof. dr hab. inż. Jan Magott Formy zajęć: Wykład 1 godz., Ćwiczenia 2 godz., Projekt 1 godz.. Strona kursu: http://www.zio.iiar.pwr.wroc.pl/sdizo.html Struktury

Bardziej szczegółowo

Maszyna Turinga. Algorytm. czy program???? Problem Hilberta: Przykłady algorytmów. Cechy algorytmu: Pojęcie algorytmu

Maszyna Turinga. Algorytm. czy program???? Problem Hilberta: Przykłady algorytmów. Cechy algorytmu: Pojęcie algorytmu Problem Hilberta: 9 Czy istnieje ogólna mechaniczna procedura, która w zasadzie pozwoliłaby nam po kolei rozwiązać wszystkie matematyczne problemy (należące do odpowiednio zdefiniowanej klasy)? 2 Przykłady

Bardziej szczegółowo

O ISTOTNYCH OGRANICZENIACH METODY

O ISTOTNYCH OGRANICZENIACH METODY O ISTOTNYCH OGRANICZENIACH METODY ALGORYTMICZNEJ Dwa pojęcia algorytmu (w informatyce) W sensie wąskim Algorytmem nazywa się każdy ogólny schemat procedury możliwej do wykonania przez uniwersalną maszynę

Bardziej szczegółowo

Matematyczne Podstawy Informatyki

Matematyczne Podstawy Informatyki Matematyczne Podstawy Informatyki dr inż. Andrzej Grosser Instytut Informatyki Teoretycznej i Stosowanej Politechnika Częstochowska Rok akademicki 2013/2014 Automat ze stosem Automat ze stosem to szóstka

Bardziej szczegółowo

ZŁOŻONOŚĆ OBLICZENIOWA ALGORYTMÓW

ZŁOŻONOŚĆ OBLICZENIOWA ALGORYTMÓW ZŁOŻONOŚĆ OBLICZENIOWA ALGORYTMÓW NIEDETERMINISTYCZNE MASZYNY TURINGA Bartosz Zieliński Katedra Fizyki Teoretycznej i Informatyki Zima 2011-2012 NIEDETERMINISTYCZNE MASZYNY TURINGA DEFINICJA: NIEDETERMINISTYCZNA

Bardziej szczegółowo

Obliczenia inspirowane Naturą

Obliczenia inspirowane Naturą Obliczenia inspirowane Naturą Wykład 01 Od maszyn Turinga do automatów komórkowych Jarosław Miszczak IITiS PAN Gliwice 03/03/2016 1 / 16 1 2 3 Krótka historia Znaczenie 2 / 16 Czego dowiedzieliśmy się

Bardziej szczegółowo

Dopełnienie to można wyrazić w następujący sposób:

Dopełnienie to można wyrazić w następujący sposób: 1. (6 punktów) Czy dla każdego regularnego L, język f(l) = {w : każdy prefiks w długości nieparzystej należy do L} też jest regularny? Odpowiedź. Tak, jęsli L jest regularny to też f(l). Niech A będzie

Bardziej szczegółowo

Teoretyczne podstawy programowania liniowego

Teoretyczne podstawy programowania liniowego Teoretyczne podstawy programowania liniowego Elementy algebry liniowej Plan Kombinacja liniowa Definicja Kombinacja liniowa wektorów (punktów) x 1, x 2,, x k R n to wektor x R n k taki, że x = i=1 λ i

Bardziej szczegółowo

Struktury danych i złożoność obliczeniowa Wykład 6. Prof. dr hab. inż. Jan Magott

Struktury danych i złożoność obliczeniowa Wykład 6. Prof. dr hab. inż. Jan Magott Struktury danych i złożoność obliczeniowa Wykład 6. Prof. dr hab. inż. Jan Magott Problemy łatwe i trudne Problemy łatwe to problemy rozwiązywalne w czasie wielomianowym. Problemy trudne to takie, których

Bardziej szczegółowo

Macierze. Rozdział Działania na macierzach

Macierze. Rozdział Działania na macierzach Rozdział 5 Macierze Funkcję, która każdej parze liczb naturalnych (i, j) (i 1,..., n; j 1,..., m) przyporządkowuje dokładnie jedną liczbę a ij F, gdzie F R lub F C, nazywamy macierzą (rzeczywistą, gdy

Bardziej szczegółowo

15. Macierze. Definicja Macierzy. Definicja Delty Kroneckera. Definicja Macierzy Kwadratowej. Definicja Macierzy Jednostkowej

15. Macierze. Definicja Macierzy. Definicja Delty Kroneckera. Definicja Macierzy Kwadratowej. Definicja Macierzy Jednostkowej 15. Macierze Definicja Macierzy. Dla danego ciała F i dla danych m, n IN funkcję A : {1,...,m} {1,...,n} F nazywamy macierzą m n ( macierzą o m wierszach i n kolumnach) o wyrazach z F. Wartość A(i, j)

Bardziej szczegółowo

Wprowadzenie do złożoności obliczeniowej

Wprowadzenie do złożoności obliczeniowej problemów Katedra Informatyki Politechniki Świętokrzyskiej Kielce, 16 stycznia 2007 problemów Plan wykładu 1 2 algorytmów 3 4 5 6 problemów problemów Plan wykładu 1 2 algorytmów 3 4 5 6 problemów problemów

Bardziej szczegółowo

Hierarchia Chomsky ego

Hierarchia Chomsky ego Hierarchia Chomsky ego Gramatyki nieograniczone Def. Gramatyką nieograniczoną (albo typu 0) nazywamy uporządkowaną czwórkę G= gdzie: % Σ - skończony alfabet symboli końcowych (alfabet, nad którym

Bardziej szczegółowo

Zaawansowane metody numeryczne

Zaawansowane metody numeryczne Wykład 11 Ogólna postać metody iteracyjnej Definicja 11.1. (metoda iteracyjna rozwiązywania układów równań) Metodą iteracyjną rozwiązywania { układów równań liniowych nazywamy ciąg wektorów zdefiniowany

Bardziej szczegółowo

1 Macierze i wyznaczniki

1 Macierze i wyznaczniki 1 Macierze i wyznaczniki 11 Definicje, twierdzenia, wzory 1 Macierzą rzeczywistą (zespoloną) wymiaru m n, gdzie m N oraz n N, nazywamy prostokątną tablicę złożoną z mn liczb rzeczywistych (zespolonych)

Bardziej szczegółowo

Złożoność algorytmów. Wstęp do Informatyki

Złożoność algorytmów. Wstęp do Informatyki Złożoność algorytmów Złożoność pamięciowa - liczba i rozmiar struktur danych wykorzystywanych w algorytmie Złożoność czasowa - liczba operacji elementarnych wykonywanych w trakcie przebiegu algorytmu Złożoność

Bardziej szczegółowo

) a j x j b; x j binarne (j N) całkowitoliczbowe; przyjmujemy (bez straty ogólności): c j > 0, 0 <a j b (j N), P n

) a j x j b; x j binarne (j N) całkowitoliczbowe; przyjmujemy (bez straty ogólności): c j > 0, 0 <a j b (j N), P n PDczęść4 8. Zagadnienia załadunku 8.1 Klasyczne zagadnienia załadunku (ozn. N = {1, 2,..., n} Binarny problem ( (Z v(z =max c j x j : a j x j b; x j binarne (j N zakładamy, że wszystkie dane sa całkowitoliczbowe;

Bardziej szczegółowo

9. Schematy aproksymacyjne

9. Schematy aproksymacyjne 9. Schematy aproksymacyjne T.H. Cormen, C.E. Leiserson, R.L. Rivest, C. Stein Wprowadzenie do algorytmów, WNT (2004) O.H. Ibarra, C.E. Kim Fast approximation algorithms for the knapsack and sum of subset

Bardziej szczegółowo

O ALGORYTMACH I MASZYNACH TURINGA

O ALGORYTMACH I MASZYNACH TURINGA O ALGORYTMACH I MASZYNACH TURINGA ALGORYTM (objaśnienie ogólne) Algorytm Pojęcie o rodowodzie matematycznym, oznaczające współcześnie precyzyjny schemat mechanicznej lub maszynowej realizacji zadań określonego

Bardziej szczegółowo

Imię, nazwisko, nr indeksu

Imię, nazwisko, nr indeksu Imię, nazwisko, nr indeksu (kod) (9 punktów) Wybierz 9 z poniższych pytań i wybierz odpowiedź tak/nie (bez uzasadnienia). Za prawidłowe odpowiedzi dajemy +1 punkt, za złe -1 punkt. Punkty policzymy za

Bardziej szczegółowo

Zasady analizy algorytmów

Zasady analizy algorytmów Zasady analizy algorytmów A więc dziś w programie: - Kilka ważnych definicji i opisów formalnych - Złożoność: czasowa i pamięciowa - Kategorie problemów - Jakieś przykłady Problem: Zadanie możliwe do rozwiązania

Bardziej szczegółowo

Matematyczne Podstawy Informatyki

Matematyczne Podstawy Informatyki Matematyczne Podstawy Informatyki dr inż. Andrzej Grosser Instytut Informatyki Teoretycznej i Stosowanej Politechnika Częstochowska Rok akademicki 2013/2014 Gramatyki bezkontekstowe I Gramatyką bezkontekstową

Bardziej szczegółowo

Algorytmy aproksymacyjne dla problemów stochastycznych

Algorytmy aproksymacyjne dla problemów stochastycznych Algorytmy aproksymacyjne dla problemów stochastycznych Piotr Sankowski Uniwersytet Warszawski PhD Open, listopad 12-13, 2008 - p. 1/45 Plan Wykład I - 2-etapowe algorytmy stochastyczne: Wstęp Wykład II

Bardziej szczegółowo

Algorytmy aproksymacyjne dla problemów stochastycznych

Algorytmy aproksymacyjne dla problemów stochastycznych Algorytmy aproksymacyjne dla problemów stochastycznych Marcin Mucha Uniwersytet Warszawski Warszawa 29.04.2011 - p. 1/44 Plan - Wykład II Boosted sampling: drzewo Steinera, problemy addytywne: lokalizacja

Bardziej szczegółowo

Dr inż. Robert Wójcik, p. 313, C-3, tel Katedra Informatyki Technicznej (K-9) Wydział Elektroniki (W-4) Politechnika Wrocławska

Dr inż. Robert Wójcik, p. 313, C-3, tel Katedra Informatyki Technicznej (K-9) Wydział Elektroniki (W-4) Politechnika Wrocławska Dr inż. Robert Wójcik, p. 313, C-3, tel. 320-27-40 Katedra Informatyki Technicznej (K-9) Wydział Elektroniki (W-4) Politechnika Wrocławska E-mail: Strona internetowa: robert.wojcik@pwr.edu.pl google: Wójcik

Bardziej szczegółowo

2.2. Gramatyki, wyprowadzenia, hierarchia Chomsky'ego

2.2. Gramatyki, wyprowadzenia, hierarchia Chomsky'ego 2.2. Gramatyki, wyprowadzenia, hierarchia Chomsky'ego Gramatyka Gramatyką G nazywamy czwórkę uporządkowaną G = gdzie: N zbiór symboli nieterminalnych, T zbiór symboli terminalnych, P zbiór

Bardziej szczegółowo

a) 7 b) 19 c) 21 d) 34

a) 7 b) 19 c) 21 d) 34 Zadanie 1. Pytania testowe dotyczące podstawowych własności grafów. Zadanie 2. Przy każdym z zadań może się pojawić polecenie krótkiej charakterystyki algorytmu. Zadanie 3. W zadanym grafie sprawdzenie

Bardziej szczegółowo

Przykład: Σ = {0, 1} Σ - zbiór wszystkich skończonych ciagów binarnych. L 1 = {0, 00, 000,...,1, 11, 111,... } L 2 = {01, 1010, 001, 11}

Przykład: Σ = {0, 1} Σ - zbiór wszystkich skończonych ciagów binarnych. L 1 = {0, 00, 000,...,1, 11, 111,... } L 2 = {01, 1010, 001, 11} Języki Ustalmy pewien skończony zbiór symboli Σ zwany alfabetem. Zbiór Σ zawiera wszystkie skończone ciagi symboli z Σ. Podzbiór L Σ nazywamy językiem a x L nazywamy słowem. Specjalne słowo puste oznaczamy

Bardziej szczegółowo

OBLICZALNOŚĆ I NIEOBLICZALNOŚĆ

OBLICZALNOŚĆ I NIEOBLICZALNOŚĆ OBLICZALNOŚĆ I NIEOBLICZALNOŚĆ Dwa konteksty obliczalności OBLICZALNE i NIEOBLICZALNE problemy (kontekst informatyczny) liczby (kontekst matematyczny) Problem nieobliczalny jest to problem nierozwiązywalny

Bardziej szczegółowo

Metody Programowania

Metody Programowania POLITECHNIKA KRAKOWSKA - WIEiK KATEDRA AUTOMATYKI i TECHNIK INFORMACYJNYCH Metody Programowania www.pk.edu.pl/~zk/mp_hp.html Wykładowca: dr inż. Zbigniew Kokosiński zk@pk.edu.pl Wykład 8: Wyszukiwanie

Bardziej szczegółowo

Rozdział 5. Macierze. a 11 a a 1m a 21 a a 2m... a n1 a n2... a nm

Rozdział 5. Macierze. a 11 a a 1m a 21 a a 2m... a n1 a n2... a nm Rozdział 5 Macierze Funkcję, która każdej parze liczb naturalnych (i,j) (i = 1,,n;j = 1,,m) przyporządkowuje dokładnie jedną liczbę a ij F, gdzie F = R lub F = C, nazywamy macierzą (rzeczywistą, gdy F

Bardziej szczegółowo

Układy liniowo niezależne

Układy liniowo niezależne Układy liniowo niezależne Mirosław Sobolewski Wydział Matematyki, Informatyki i Mechaniki UW 3.wykład z algebry liniowej Warszawa, październik 2016 Mirosław Sobolewski (UW) Warszawa, październik 2016 1

Bardziej szczegółowo

Znajdowanie skojarzeń na maszynie równoległej

Znajdowanie skojarzeń na maszynie równoległej 11 grudnia 2008 Spis treści 1 Skojarzenia w różnych klasach grafów Drzewa Grafy gęste Grafy regularne dwudzielne Claw-free graphs 2 Drzewa Skojarzenia w drzewach Fakt Wybierajac krawędź do skojarzenia

Bardziej szczegółowo

Wykład 4. Droga i cykl Eulera i Hamiltona

Wykład 4. Droga i cykl Eulera i Hamiltona Wykład 4. i Hamiltona Wykład 4. i Hamiltona 1 / 35 Grafy Eulera Niech G będzie grafem spójnym. Definicja Jeżeli w grafie G istnieje zamknięta droga prosta zawierająca wszystkie krawędzie grafu, to taką

Bardziej szczegółowo

Złożoność obliczeniowa

Złożoność obliczeniowa Złożoność obliczeniowa Jakub Michaliszyn 26 kwietnia 2017 Są problemy rozstrzygalne i nierozstrzygalne Są problemy rozstrzygalne i nierozstrzygalne Jak rozwiązywać te, które są rozstrzygalne? Są problemy

Bardziej szczegółowo

Metody numeryczne. Janusz Szwabiński. Metody numeryczne I (C) 2004 Janusz Szwabiński p.1/50

Metody numeryczne. Janusz Szwabiński. Metody numeryczne I (C) 2004 Janusz Szwabiński p.1/50 Metody numeryczne Układy równań liniowych, część II Janusz Szwabiński szwabin@ift.uni.wroc.pl Metody numeryczne I (C) 2004 Janusz Szwabiński p.1/50 Układy równań liniowych, część II 1. Iteracyjne poprawianie

Bardziej szczegółowo

Topologia zbioru Cantora a obwody logiczne

Topologia zbioru Cantora a obwody logiczne Adam Radziwończyk-Syta Michał Skrzypczak Uniwersytet Warszawski 1 lipca 2009 http://students.mimuw.edu.pl/~mskrzypczak/dokumenty/ obwody.pdf Zbiór Cantora Topologia Definicja Przez zbiór Cantora K oznaczamy

Bardziej szczegółowo

Uniwersytet Kazimierza Wielkiego w Bydgoszczy Zespół Szkół nr 5 Mistrzostwa Sportowego XV Liceum Ogólnokształcące w Bydgoszczy

Uniwersytet Kazimierza Wielkiego w Bydgoszczy Zespół Szkół nr 5 Mistrzostwa Sportowego XV Liceum Ogólnokształcące w Bydgoszczy Uniwersytet Kazimierza Wielkiego w Bydgoszczy Zespół Szkół nr 5 Mistrzostwa Sportowego XV Liceum Ogólnokształcące w Bydgoszczy Matematyka, królowa nauk Edycja X - etap 2 Bydgoszcz, 16 kwietnia 2011 Fordoński

Bardziej szczegółowo

Wstęp do metod numerycznych Faktoryzacja QR i SVD. P. F. Góra

Wstęp do metod numerycznych Faktoryzacja QR i SVD. P. F. Góra Wstęp do metod numerycznych Faktoryzacja QR i SVD P. F. Góra http://th-www.if.uj.edu.pl/zfs/gora/ 2012 Transformacja Householdera Niech u R N, u 0. Tworzymy macierz W sposób oczywisty P T = P. Obliczmy

Bardziej szczegółowo

Metody optymalizacji dyskretnej. Metody przybliżone

Metody optymalizacji dyskretnej. Metody przybliżone Metody optymalizacji dyskretnej Metody przybliżone Metody optymalizacji dyskretnej Większość problemów optymalizacji dyskretnej pochodzących z praktyki (szeregowanie, harmonogramowanie, transport, plany

Bardziej szczegółowo

macierze jednostkowe (identyczności) macierze diagonalne, które na przekątnej mają same

macierze jednostkowe (identyczności) macierze diagonalne, które na przekątnej mają same 1 Macierz definicja i zapis Macierzą wymiaru m na n nazywamy tabelę a 11 a 1n A = a m1 a mn złożoną z liczb (rzeczywistych lub zespolonych) o m wierszach i n kolumnach (zamiennie będziemy też czasem mówili,

Bardziej szczegółowo

O MACIERZACH I UKŁADACH RÓWNAŃ

O MACIERZACH I UKŁADACH RÓWNAŃ O MACIERZACH I UKŁADACH RÓWNAŃ Problem Jak rozwiązać podany układ równań? 2x + 5y 8z = 8 4x + 3y z = 2x + 3y 5z = 7 x + 8y 7z = Definicja Równanie postaci a x + a 2 x 2 + + a n x n = b gdzie a, a 2, a

Bardziej szczegółowo

PRZEWODNIK PO PRZEDMIOCIE

PRZEWODNIK PO PRZEDMIOCIE Nazwa przedmiotu: I KARTA PRZEDMIOTU CEL PRZEDMIOTU PRZEWODNIK PO PRZEDMIOCIE C1. Podniesienie poziomu wiedzy studentów z zagadnień dotyczących analizy i syntezy algorytmów z uwzględnieniem efektywności

Bardziej szczegółowo

Klasyczne i kwantowe podejście do teorii automatów i języków formalnych p.1/33

Klasyczne i kwantowe podejście do teorii automatów i języków formalnych p.1/33 Klasyczne i kwantowe podejście do teorii automatów i języków formalnych mgr inż. Olga Siedlecka olga.siedlecka@icis.pcz.pl Zakład Informatyki Stosowanej i Inżynierii Oprogramowania Instytut Informatyki

Bardziej szczegółowo

Wyk lad 4 Macierz odwrotna i twierdzenie Cramera

Wyk lad 4 Macierz odwrotna i twierdzenie Cramera Wyk lad 4 Macierz odwrotna i twierdzenie Cramera 1 Odwracanie macierzy I n jest elementem neutralnym mnożenia macierzy w zbiorze M n (R) tzn A I n I n A A dla dowolnej macierzy A M n (R) Ponadto z twierdzenia

Bardziej szczegółowo

Automatyczne dowodzenie twierdzeń metodą rezolucji

Automatyczne dowodzenie twierdzeń metodą rezolucji Automatyczne dowodzenie twierdzeń metodą rezolucji 16 kwietnia 2010 Rezolucja zdaniowa Formuły rachunku zdań: zbudowane ze zmiennych zdaniowych za pomocą spójników logicznych,,,, i nawiasów Wartości logiczne:

Bardziej szczegółowo

Definicja problemu programowania matematycznego

Definicja problemu programowania matematycznego Definicja problemu programowania matematycznego minimalizacja lub maksymalizacja funkcji min (max) f(x) gdzie: x 1 x R n x 2, czyli: x = [ ] x n przy ograniczeniach (w skrócie: p.o.) p.o. g i (x) = b i

Bardziej szczegółowo

Układy równań liniowych i metody ich rozwiązywania

Układy równań liniowych i metody ich rozwiązywania Układy równań liniowych i metody ich rozwiązywania Łukasz Wojciechowski marca 00 Dany jest układ m równań o n niewiadomych postaci: a x + a x + + a n x n = b a x + a x + + a n x n = b. a m x + a m x +

Bardziej szczegółowo

Algebra liniowa. Macierze i układy równań liniowych

Algebra liniowa. Macierze i układy równań liniowych Algebra liniowa Macierze i układy równań liniowych Własności wyznaczników det I = 1, det(ab) = det A det B, det(a T ) = det A. Macierz nieosobliwa Niech A będzie macierzą kwadratową wymiaru n n. Mówimy,

Bardziej szczegółowo

Gramatyki, wyprowadzenia, hierarchia Chomsky ego. Gramatyka

Gramatyki, wyprowadzenia, hierarchia Chomsky ego. Gramatyka Gramatyki, wyprowadzenia, hierarchia Chomsky ego Teoria automatów i języków formalnych Dr inŝ. Janusz Majewski Katedra Informatyki Gramatyka Gramatyką G nazywamy czwórkę uporządkowaną gdzie: G =

Bardziej szczegółowo

Zadania z algebry liniowej - sem. I Przestrzenie liniowe, bazy, rząd macierzy

Zadania z algebry liniowej - sem. I Przestrzenie liniowe, bazy, rząd macierzy Zadania z algebry liniowej - sem I Przestrzenie liniowe bazy rząd macierzy Definicja 1 Niech (K + ) będzie ciałem (zwanym ciałem skalarów a jego elementy nazywać będziemy skalarami) Przestrzenią liniową

Bardziej szczegółowo

Obliczanie. dr hab. inż. Joanna Józefowska, prof. PP 1

Obliczanie. dr hab. inż. Joanna Józefowska, prof. PP 1 Obliczanie 1 Obliczanie Co to jest obliczanie? Czy wszystko można obliczyć? Czy to, co intuicyjnie uznajemy za obliczalne można obliczyć za pomocą mechanicznej procedury? 2 Czym jest obliczanie? Dawid

Bardziej szczegółowo

Baza w jądrze i baza obrazu ( )

Baza w jądrze i baza obrazu ( ) Przykład Baza w jądrze i baza obrazu (839) Znajdź bazy jądra i obrazu odwzorowania α : R 4 R 3, gdzie α(x, y, z, t) = (x + 2z + t, 2x + y 3z 5t, x y + z + 4t) () zór ten oznacza, że α jest odwzorowaniem

Bardziej szczegółowo

Metody numeryczne I. Janusz Szwabiński. Metody numeryczne I (C) 2004 Janusz Szwabiński p.1/61

Metody numeryczne I. Janusz Szwabiński. Metody numeryczne I (C) 2004 Janusz Szwabiński p.1/61 Metody numeryczne I Dokładność obliczeń numerycznych. Złożoność obliczeniowa algorytmów Janusz Szwabiński szwabin@ift.uni.wroc.pl Metody numeryczne I (C) 2004 Janusz Szwabiński p.1/61 ... the purpose of

Bardziej szczegółowo

Algebra liniowa z geometrią

Algebra liniowa z geometrią Algebra liniowa z geometrią Maciej Czarnecki 15 stycznia 2013 Spis treści 1 Geometria płaszczyzny 2 1.1 Wektory i skalary........................... 2 1.2 Macierze, wyznaczniki, układy równań liniowych.........

Bardziej szczegółowo

ALGEBRA LINIOWA. Wykład 2. Analityka gospodarcza, sem. 1. Wydział Zarządzania i Ekonomii Politechnika Gdańska

ALGEBRA LINIOWA. Wykład 2. Analityka gospodarcza, sem. 1. Wydział Zarządzania i Ekonomii Politechnika Gdańska ALGEBRA LINIOWA Wykład 2 Analityka gospodarcza, sem 1 Wydział Zarządzania i Ekonomii Politechnika Gdańska dr inż Natalia Jarzębkowska, CNMiKnO semzimowy 2018/2019 2/17 Macierze Niech M = {1, 2,, m} i N

Bardziej szczegółowo

UKŁADY ALGEBRAICZNYCH RÓWNAŃ LINIOWYCH

UKŁADY ALGEBRAICZNYCH RÓWNAŃ LINIOWYCH Transport, studia I stopnia rok akademicki 2011/2012 Instytut L-5, Wydział Inżynierii Lądowej, Politechnika Krakowska Ewa Pabisek Adam Wosatko Uwagi wstępne Układ liniowych równań algebraicznych można

Bardziej szczegółowo

Wykład z modelowania matematycznego. Zagadnienie transportowe.

Wykład z modelowania matematycznego. Zagadnienie transportowe. Wykład z modelowania matematycznego. Zagadnienie transportowe. 1 Zagadnienie transportowe zostało sformułowane w 1941 przez F.L.Hitchcocka. Metoda rozwiązania tego zagadnienia zwana algorytmem transportowymópracowana

Bardziej szczegółowo

Matematyczne Podstawy Informatyki

Matematyczne Podstawy Informatyki Matematyczne Podstawy Informatyki dr inż. Andrzej Grosser Instytut Informatyki Teoretycznej i Stosowanej Politechnika Częstochowska Rok akademicki 03/0 Przeszukiwanie w głąb i wszerz I Przeszukiwanie metodą

Bardziej szczegółowo

Złożoność informacyjna Kołmogorowa. Paweł Parys

Złożoność informacyjna Kołmogorowa. Paweł Parys Złożoność informacyjna Kołmogorowa Paweł Parys Serock 2012 niektóre liczby łatwiej zapamiętać niż inne... (to zależy nie tylko od wielkości liczby) 100...0 100 100... 100 100 100 25839496603316858921 31415926535897932384

Bardziej szczegółowo

ZLOŻONOŚĆ OBLICZENIOWA - WYK. 2

ZLOŻONOŚĆ OBLICZENIOWA - WYK. 2 ZLOŻONOŚĆ OBLICZENIOWA - WYK. 2 1. Twierdzenie Sipsera: Dla dowolnej maszyny M działającej w pamięci S(n) istnieje maszyna M taka, że: L(M) = L(M ), M działa w pamięci S(n), M ma własność stopu. Dowód:

Bardziej szczegółowo

ZŁOŻONOŚĆ OBLICZENIOWA ALGORYTMÓW

ZŁOŻONOŚĆ OBLICZENIOWA ALGORYTMÓW ZŁOŻONOŚĆ OBLICZENIOWA ALGORYTMÓW MASZYNY O DOSTEPIE SWOBODNYM (RAM) Bartosz Zieliński Katedra Fizyki Teoretycznej i Informatyki Zima 2011-2012 INSTRUKCJE MASZYNY RAM Instrukcja Argument Znaczenie READ

Bardziej szczegółowo

Teoria Złożoności Zadania

Teoria Złożoności Zadania Teoria Złożoności Zadania Łukasz Czajka 14 czerwca 2008 1 Spis treści 1 Zadanie 1 3 2 Zadanie 5 8 2 1 Zadanie 1 Niech A NP 1. Istnieje zatem jedno-taśmowa niedeterministyczna maszyna Turinga M o alfabecie

Bardziej szczegółowo

Komiwojażer na płaszczyźnie

Komiwojażer na płaszczyźnie Komiwojażer na płaszczyźnie Paweł Gawrychowski Uniwersytet Wrocławski & Max-Planck-Institut für Informatik 18 marca 2014 Paweł Gawrychowski Komiwojażer na płaszczyźnie 18 marca 2014 1 / 31 Paweł Gawrychowski

Bardziej szczegółowo

1 Zbiory i działania na zbiorach.

1 Zbiory i działania na zbiorach. Matematyka notatki do wykładu 1 Zbiory i działania na zbiorach Pojęcie zbioru jest to pojęcie pierwotne (nie definiuje się tego pojęcia) Pojęciami pierwotnymi są: element zbioru i przynależność elementu

Bardziej szczegółowo