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

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

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

Transkrypt

1 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) Logika stosowana / 39

2 Plan wykładu 1 Pojęcie złożoności Złożoność czasowa Złożoność pamięciowa Złożoność w przypadku niedeterministycznym 2 Klasy złożoności Klasa PSPACE Klasa PTIME Klasa NPTIME 3 Problemy NP-zupełne Redukcja wielomianowa problemów NP zupełność SAT i twierdzenie Cooka Inna wersja problemu spełnialności NP-trudność i problemy optymalizacyjne Marcin Szczuka (MIMUW) Logika stosowana / 39

3 Funkcje kosztu Będziemy używać maszyn Turinga (czasem wielotaśmowych) jako podstawowego modelu obliczeń. Wykorzystując tezę Churcha będziemy przyjmować, że są one równoważne normalnym algorytmom. Konwencja notacyjna Niech f : N N będzie niemalejącą funkcją naturalną. Powiemy że funkcja g : N N jest rzędu f(n), co oznaczamy O(f(n)) jeśli przy założeniu, że f(n) 0 istnieje skończona granica: g(n) lim n f(n) Zauważmy, że przy tej konwencji notacyjnej zawsze zwracamy uwagę na najszybciej rosnący składnik funkcji g. Marcin Szczuka (MIMUW) Logika stosowana / 39

4 Plan wykładu 1 Pojęcie złożoności Złożoność czasowa Złożoność pamięciowa Złożoność w przypadku niedeterministycznym 2 Klasy złożoności Klasa PSPACE Klasa PTIME Klasa NPTIME 3 Problemy NP-zupełne Redukcja wielomianowa problemów NP zupełność SAT i twierdzenie Cooka Inna wersja problemu spełnialności NP-trudność i problemy optymalizacyjne Marcin Szczuka (MIMUW) Logika stosowana / 39

5 Złożoność czasowa Klasa TIME(.) Niech f(n) będzie niemalejącą funkcją zmiennej naturalnej. Przez TIME(f(n)) oznaczamy klasę problemów decyzyjnych (języków) π L takich, że istnieją stałe a, b R oraz maszyna Turinga M, dla których M jest w stanie sprawdzić czy w L w nie więcej niż af(n) + b krokach, niezależnie od wyboru w, o ile w = n. Zauważmy, że w powyższej definicji: 1 Bierzemy pod uwagę najszybciej rosnący czynnik. 2 Nie bierzemy pod uwagę kosztów stałych związanych np. z przekodowaniem danych. Reprezentuje to stała b. 3 Zakładamy, że liczba kroków obliczenia jest równoważna czasowi jego wykonania, czyli pojedynczy krok zabiera jedną jednostkę czasu. Marcin Szczuka (MIMUW) Logika stosowana / 39

6 Plan wykładu 1 Pojęcie złożoności Złożoność czasowa Złożoność pamięciowa Złożoność w przypadku niedeterministycznym 2 Klasy złożoności Klasa PSPACE Klasa PTIME Klasa NPTIME 3 Problemy NP-zupełne Redukcja wielomianowa problemów NP zupełność SAT i twierdzenie Cooka Inna wersja problemu spełnialności NP-trudność i problemy optymalizacyjne Marcin Szczuka (MIMUW) Logika stosowana / 39

7 Złożoność pamięciowa Klasa SPACE(.) Niech f(n) będzie niemalejącą funkcją zmiennej naturalnej. Przez SPACE(f(n)) oznaczamy klasę problemów decyzyjnych (języków) π L takich, że istnieją stałe a, b R oraz maszyna Turinga M, dla których M jest w stanie sprawdzić czy w L wykorzystując nie więcej niż af(n) + b komórek na taśmie, niezależnie od wyboru w o ile w = n. Zauważmy, że w powyższej definicji: 1 Bierzemy pod uwagę najszybciej rosnący czynnik. 2 Nie bierzemy pod uwagę kosztów stałych związanych np. z przechowywaniem danych wejściowych. 3 Przyjmujemy, że w jednym kroku algorytm może zająć co najwyżej jedną komórkę na taśmie. Marcin Szczuka (MIMUW) Logika stosowana / 39

8 Plan wykładu 1 Pojęcie złożoności Złożoność czasowa Złożoność pamięciowa Złożoność w przypadku niedeterministycznym 2 Klasy złożoności Klasa PSPACE Klasa PTIME Klasa NPTIME 3 Problemy NP-zupełne Redukcja wielomianowa problemów NP zupełność SAT i twierdzenie Cooka Inna wersja problemu spełnialności NP-trudność i problemy optymalizacyjne Marcin Szczuka (MIMUW) Logika stosowana / 39

9 Niedeterministyczna maszyna Turinga Niedeterministyczna maszyna Turinga Niedeterministyczną maszyną Turinga (NTM) nazywamy gdzie: M = (Q, Σ, Γ, δ, q 0, B, F ) Q skończony zbiór stanów zawierający stan początkowy q 0 ; Γ skończony zbiór symboli taśmowych zawierający symbol pusty B (Blank) i symbole wejściowe; Σ zbiór symboli wejściowych taki, że B / Σ i Σ Γ; F Q zbiór stanów końcowych; δ relacja przejścia δ Q Γ Q Γ {L, R}, gdzie L i R oznaczają ruchy głowicy (lewo/prawo). Maszyna niedeterministyczna w pewnej konfiguracji może mieć więcej niż jedną możliwą do wykonania akcję dla bieżącego stanu i symbolu na taśmie. Marcin Szczuka (MIMUW) Logika stosowana / 39

10 Właściwości NTM W przypadku maszyn deterministycznych mówiliśmy o przejściu z konfiguracji (q 1, t 1, u) do (q 2, t 2, u ), gdy σ(q 1, t 1 ) = (q 2, t 2, h) i stan taśmy u jest wynikiem zastosowania h na u. W NTM będziemy mogli mówić o dopuszczalnym kroku maszyny z konfiguracji (q 1, t 1, u) do (q 2, t 2, u ), gdy (q 1, t 1, q 2, t 2, h) δ. Język NTM Powiemy, że niedeterministyczna maszyna Turinga M rozstrzyga język L = L(M) Σ, jeśli dla każdego w L(M) istnieje skończona sekwencja obliczeń M zakończona zatrzymaniem w stanie akceptującym taka, że każde z przejść w tej sekwencji jest zgodne z relacją przejścia δ M dla M. Zatem maszyna niedeterministyczna akceptuje słowo z języka L(M) jeśli istnieje co najmniej jedna zakończona stanem akceptującym, legalna i skończona ścieżka w drzewie obliczenia dla tego słowa. Ale jak wybrać właściwą ścieżkę obliczenia?! Marcin Szczuka (MIMUW) Logika stosowana / 39

11 Niedeterministyczna złożoność czasowa Klasa NTIME(.) Niech f(n) będzie niemalejącą funkcją zmiennej naturalnej. Przez NTIME(f(n)) oznaczamy klasę problemów decyzyjnych (języków) π L takich, że istnieją stałe a, b R oraz niedeterministyczna maszyna Turinga M, dla których każda scieżka obliczenia M rozstrzygająca o przynależności słowa w do L(M) ma nie więcej niż af(n) + b kroków, niezależnie od wyboru w, o ile w = n. Zauważmy, że w powyższej definicji: 1 Bierzemy pod uwagę najdłuższą możliwą prawidłową ścieżkę obliczeń. 2 Nie bierzemy pod uwagę rozmiarów całego, potencjalnie gigantycznego drzewa obliczenia. 3 Zakładamy, że dobra wróżka powie nam jak wybierać ścieżkę obliczenia. Marcin Szczuka (MIMUW) Logika stosowana / 39

12 Plan wykładu 1 Pojęcie złożoności Złożoność czasowa Złożoność pamięciowa Złożoność w przypadku niedeterministycznym 2 Klasy złożoności Klasa PSPACE Klasa PTIME Klasa NPTIME 3 Problemy NP-zupełne Redukcja wielomianowa problemów NP zupełność SAT i twierdzenie Cooka Inna wersja problemu spełnialności NP-trudność i problemy optymalizacyjne Marcin Szczuka (MIMUW) Logika stosowana / 39

13 Klasy złożoności W teorii (i praktyce) złożoności obliczeniowej, zazwyczaj interesują nas pewne konkretne klasy problemów, o których trudności (kosztowności) algorytmicznej chcemy się czegoś dowiedzieć. Najczęściej rozważane klasy to: Problemy o koszcie stałym, przede wszystkim pamięciowym. Problemy o liniowym koszcie czasowym (i pamięciowym). Problemy logarytmiczno-liniowe (n log n) związane np. z zadaniami sortowania. Problemy o koszcie wielomianowym - deterministycznym i niedeterministycznym. Przyjrzymy się dokładniej klasie problemów o koszcie wielomianowym, gdyż ta właśnie klasa ma wiele bardzo istotnych w praktyce własności. Marcin Szczuka (MIMUW) Logika stosowana / 39

14 Plan wykładu 1 Pojęcie złożoności Złożoność czasowa Złożoność pamięciowa Złożoność w przypadku niedeterministycznym 2 Klasy złożoności Klasa PSPACE Klasa PTIME Klasa NPTIME 3 Problemy NP-zupełne Redukcja wielomianowa problemów NP zupełność SAT i twierdzenie Cooka Inna wersja problemu spełnialności NP-trudność i problemy optymalizacyjne Marcin Szczuka (MIMUW) Logika stosowana / 39

15 Problemy o wielomianowej pamięci Zauważmy, że przynależność pewnego problemu do SPACE(n k ) oznacza, że istnieje program, który rozwiązuje ten problem wykorzystując pamięć proporcjonalną do n k. Z faktu, że interesują nas oszacowania asymptotyczne wynika, że faktyczna złożoność naszego problemu może mieć postać dowolnego wielomianu stopnia co najwyżej k. Klasa PSPACE Problemami o pamięci wielomianowej (ozn. PSPACE) nazwiemy klasę problemów decyzyjnych (języków) π L takich, że dla każdego L π L istnieje k N dla którego L SPACE(n k ). Zatem: PSPACE = k N SPACE(n k ) W przypadku niedeterministycznym zdefiniowanie kosztu pamięciowego może wymagać kilku uzupełnień, ale można (nietrywialnie) pokazać, że PSPACE = NPSPACE. Marcin Szczuka (MIMUW) Logika stosowana / 39

16 Plan wykładu 1 Pojęcie złożoności Złożoność czasowa Złożoność pamięciowa Złożoność w przypadku niedeterministycznym 2 Klasy złożoności Klasa PSPACE Klasa PTIME Klasa NPTIME 3 Problemy NP-zupełne Redukcja wielomianowa problemów NP zupełność SAT i twierdzenie Cooka Inna wersja problemu spełnialności NP-trudność i problemy optymalizacyjne Marcin Szczuka (MIMUW) Logika stosowana / 39

17 Problemy o koszcie wielomianowym Podobnie jak w przypadku pamięci, także dla złożoności czasowej będziemy się szczególnie interesować zadaniami o wielomianowym koszcie obliczeniowym. Klasa P = PTIME Problemami o koszcie wielomianowym (ozn. P = PTIME) nazwiemy klasę problemów decyzyjnych (języków) π L takich, że dla każdego L π L istnieje k N dla którego L TIME(n k ). Zatem: P = PTIME = k N TIME(n k ) Zauważmy, że przyjmując iż deterministyczny algorytm może w każdym kroku zmienić stan tylko jednej komórki pamięci, otrzymujemy: P = PTIME PSPACE Marcin Szczuka (MIMUW) Logika stosowana / 39

18 Plan wykładu 1 Pojęcie złożoności Złożoność czasowa Złożoność pamięciowa Złożoność w przypadku niedeterministycznym 2 Klasy złożoności Klasa PSPACE Klasa PTIME Klasa NPTIME 3 Problemy NP-zupełne Redukcja wielomianowa problemów NP zupełność SAT i twierdzenie Cooka Inna wersja problemu spełnialności NP-trudność i problemy optymalizacyjne Marcin Szczuka (MIMUW) Logika stosowana / 39

19 Problemy o niedeterministycznym koszcie wielomianowym Podobnie jak w przypadku deterministycznym, także dla przypadku niedeterministycznego będziemy się szczególnie interesować zadaniami o wielomianowym koszcie obliczeniowym. Klasa NP = NPTIME Problemami o niedeterministycznym koszcie wielomianowym (ozn. NP = NPTIME) nazwiemy klasę problemów decyzyjnych (języków) π L takich, że dla każdego L π L istnieje k N dla którego L NTIME(n k ). Zatem: NP = NPTIME = k N NTIME(n k ) Zauważmy, że znając poprzednie fakty dotyczące zależności klas: P NP PSPACE Marcin Szczuka (MIMUW) Logika stosowana / 39

20 Przykład problemu z NP Decyzyjny problem komiwojażera - TSP(K) Decyzyjny problem komiwojażera (TSP(K) Travelling Salesman Problem) opisuje się następująco: DANE: Graf nieskierowany G z wagami na krawędziach; stała K > 0. PYTANIE: Czy w grafie G istnieje trasa komiwojażera (cykl Hamiltona) o sumarycznym koszcie mniejszym niż K? Nie wiemy, czy ten problem jest w P, ale wiemy, że jest w NP. Możemy także zadać sobie pytanie o to, jaki charakter ma zadanie komplementarne do zadania z NP. Na przykład: Odwrotny problem komiwojażera Odwrotny problem komiwojażera opisuje się następująco: DANE: Graf nieskierowany G z wagami na krawędziach; stała K > 0. ZADANIE: Sprawdź (wykaż), że w grafie G nie istnieje trasa komiwojażera (cykl Hamiltona) o sumarycznym koszcie mniejszym niż K? Marcin Szczuka (MIMUW) Logika stosowana / 39

21 Zależności między klasami Klasa conp Powiemy, że problem decyzyjny (język) należy do klasy conp (complementary nondeterministic polynomial) jeśli problem do niego odwrotny jest w klasie NP. Zachodzą następujące zależności między poznanymi klasami: P NP PSPACE P conp PSPACE Pytanie za ponad milion dolarów Czy P = NP? Marcin Szczuka (MIMUW) Logika stosowana / 39

22 Plan wykładu 1 Pojęcie złożoności Złożoność czasowa Złożoność pamięciowa Złożoność w przypadku niedeterministycznym 2 Klasy złożoności Klasa PSPACE Klasa PTIME Klasa NPTIME 3 Problemy NP-zupełne Redukcja wielomianowa problemów NP zupełność SAT i twierdzenie Cooka Inna wersja problemu spełnialności NP-trudność i problemy optymalizacyjne Marcin Szczuka (MIMUW) Logika stosowana / 39

23 Plan wykładu 1 Pojęcie złożoności Złożoność czasowa Złożoność pamięciowa Złożoność w przypadku niedeterministycznym 2 Klasy złożoności Klasa PSPACE Klasa PTIME Klasa NPTIME 3 Problemy NP-zupełne Redukcja wielomianowa problemów NP zupełność SAT i twierdzenie Cooka Inna wersja problemu spełnialności NP-trudność i problemy optymalizacyjne Marcin Szczuka (MIMUW) Logika stosowana / 39

24 Redukcja problemów Efektywna redukcja problemów Powiemy, że język (problem) L 1 jest redukowalny (w sensie Karpa) do języka (problemu) L 2, jeżeli istnieje funkcja R (redukcja) określona na słowach i o wartościach w zbiorze słów taka, że: 1 Istnieje maszyna Turinga obliczająca R w pamięci O(log n); 2 w L 1 R(w) L 2 ; UWAGA: Punkt 1 w powyższej definicji orzeka, że redukcja nie może upychać złożoności czasowej przez przechowywanie ogromnych struktur. Klasa obliczeń o logarytmicznej złożoności czasowej, oznaczana jako L jest kolejną istotną klasą złożoności. L NL P NP PSPACE Oznacza to, że każda redukcja z poprzedniej definicji ma co najwyżej wielomianową złożoność czasową. Marcin Szczuka (MIMUW) Logika stosowana / 39

25 Hierarchia trudności problemów Sprowadzalność problemów Jeżeli istnieje efektywna redukcja problemu B do problemu A i A ma co najmniej wielomianową (deterministyczną lub niedeterministyczną) złożoność czasową, to problem A jest co najmniej tak samo trudny jak B. Algorytm dla problemu B w R R(w) Algorytm dla problemu A tak/nie Marcin Szczuka (MIMUW) Logika stosowana / 39

26 Plan wykładu 1 Pojęcie złożoności Złożoność czasowa Złożoność pamięciowa Złożoność w przypadku niedeterministycznym 2 Klasy złożoności Klasa PSPACE Klasa PTIME Klasa NPTIME 3 Problemy NP-zupełne Redukcja wielomianowa problemów NP zupełność SAT i twierdzenie Cooka Inna wersja problemu spełnialności NP-trudność i problemy optymalizacyjne Marcin Szczuka (MIMUW) Logika stosowana / 39

27 NP zupełność Problemy NP zupełne Powiemy, że decyzyjny problem algorytmiczny (język) L jest zupełny w klasie NP (NP-zupełny) jeśli: 1 L NP; 2 Każdy język L NP redukuje się (w czasie wielomianowym) do L. Jeżeli w powyższej definicji zachodzi tylko punkt 2, to L jest NP-trudny. UWAGI: 1 Aby pokazać, że jakiś język z NP jest NP-zupełny wystarczy stransformować do niego wielomianowo jakiś inny znany problem NP-zupełny. 2 Gdyby udało nam się pokazać istnienie wielomianowego algorytmu dla któregokolwiek z języków NP-zupełnych, to P = NP. 3 Na razie nie wiemy czy istnieje choć jeden nietrywialny język NP-zupełny. Marcin Szczuka (MIMUW) Logika stosowana / 39

28 Plan wykładu 1 Pojęcie złożoności Złożoność czasowa Złożoność pamięciowa Złożoność w przypadku niedeterministycznym 2 Klasy złożoności Klasa PSPACE Klasa PTIME Klasa NPTIME 3 Problemy NP-zupełne Redukcja wielomianowa problemów NP zupełność SAT i twierdzenie Cooka Inna wersja problemu spełnialności NP-trudność i problemy optymalizacyjne Marcin Szczuka (MIMUW) Logika stosowana / 39

29 Problem SAT i twierdzenie Cooka Problem SAT Satisfability DANE: Formuła boolowska f o zmiennych x 1,..., x n {0, 1}. PYTANIE: Czy istnieje wartościowanie dla x 1,..., x n, dla którego f jest spełniona? Problem SAT będzie miał dla nas szczególne znaczenie, gdyż pokażemy, że każdy język w NP jest do niego wielomianowo redukowalny. Skoro tak, to będziemy dysponowali przykładem problemu NP zupełnego i uzyskamy potwierdzenie sensowności redukowalności wielomianowej. Twierdzenie Cooka Problem SAT jest NP-zupełny. Marcin Szczuka (MIMUW) Logika stosowana / 39

30 Dowód twierdzenia Cooka Dowód twierdzenia Cooka przedstawimy tylko w zarysie. Zgodnie z definicją NP-zupełności musimy wykonać dwa kroki. 1 Pokazać, że SAT jest w NP. 2 Pokazać, że każdy problem w NP ma wielomianową redukcję do SAT. Krok 1: SAT jest w NP. Maszyna niedeterministyczna może zgadnąć rozwiązanie, a następnie zweryfikować czy jest ono wartościowaniem spełniającym zadaną formułę. Operację sprawdzenia wartości formuły boolowskiej można wykonać w czasie wielomianowym ze względu na jej długość. Zatem SAT jest w NP. Niestety, krok 2 dowodu nie jest tak łatwy. Marcin Szczuka (MIMUW) Logika stosowana / 39

31 Dowód zupełności SAT Będziemy pokazywać, że dla dowolnego języka w NP istnieje jego wielomianowe przekodowanie do SAT. W tym celu pokażemy, że dla każdej niedeterministycznej maszyny Turinga M = (Q, Σ, Γ, δ, q 0, B, F ) działającej w czasie wielomianowym p(n) i słowa w ( w = n) można zbudować formułę boolowską f taką, że M akceptuje w wtedy i tylko wtedy, gdy dla f istnieje wartościowanie spełniające. Zauważmy, że ponieważ złożoność M jest oszacowana przez wielomian p(n), to wystarczy rozpatrywać tylko komórki taśmy położone o nie dalej niż p(n) od pozycji głowicy w stanie q 0. Pozycję na taśmie w q 0 oznaczamy jako 0, a następnie numerujemy pozycje na taśmie symetrycznie po obu stronach 0 liczbami z zakresu od p(n) do p(n). Operacje przesunięcia głowicy w prawo i lewo będziemy identyfikowali z dodaniem odpowiednio +1 i -1 do licznika pozycji. Marcin Szczuka (MIMUW) Logika stosowana / 39

32 Dowód zupełności SAT zmienne Niech q Q, p(n) i p(n), j Σ i 0 k p(n). Kodowanie maszyny zaczniemy od podania zmiennych boolowskich które wystąpią w naszej formule. T ijk jest prawdziwa (przyjmuje wartość 1) i-ta komórka na taśmie zawiera symbol j w k-tym kroku obliczenia. Takich zmiennych jest O(p(n) 2 ). H ik jest prawdziwa głowica znajduje się nad i-tą komórką taśmy w k-tym kroku obliczenia. Takich zmiennych jest O(p(n) 2 ). Q qk jest prawdziwa M jest w stanie q w k-tym kroku obliczenia. Takich zmiennych jest O(p(n)). Za pomocą tak wprowadzonych zmiennych zbudujemy formułę boolowską, która będzie wyrażała obliczenie M. Ogółem mamy O(p(n) 2 ) zmiennych. Marcin Szczuka (MIMUW) Logika stosowana / 39

33 Formuła f jest koniunkcją podformuł kodujących: T ij0 i-ta komórka w stanie q 0 zawiera symbol j. Jest O(p(n)) takich elementów. Q s0 stan początkowy (jeden). H 00 początkowe położenie głowicy (jedno). T ijk T ij k dla j j w każdym kroku obliczenia, w każdej komórce jest dokładnie jeden symbol. Jest O(p(n) 2 ) takich elementów. T ijk = T ij(k+1) H ik zmiana na taśmie może nastąpić tylko na pozycji głowicy. Jest O(p(n) 2 ) takich elementów. Q qk Q q k dla q q w każdym kroku obliczenia jesteśmy w dokładnie jednym stanie. Jest O(p(n)) takich elementów. H ik H i k dla i i w każdym kroku obliczenia głowica jest w dokładnie jednej pozycji. Jest O(p(n)) takich elementów. (q,σ,q,σ,d) δ (H ik Q qk T iσk ) (H (i+d)(k+1) Q q (k+1) T (i+d)σ (k+1)) przejścia do kolejnego stanu w każdym kroku muszą być zgodne z relacją przejścia δ. Jest O(p(n) 2 ) takich elementów. q F Q qp(n) stan po zakończeniu obliczenia musi być akceptujący. Marcin Szczuka (MIMUW) Logika stosowana / 39

34 Dowód zupełności SAT formuła Zauważmy, że jeżeli znamy legalne obliczenie dla M na słowie w, to formuła f przedstawiona poprzednio jest spełniona. Jeżeli mamy wartościowanie spełniające formułę f to z wartości T ijk, H ik, Q qk odczytamy, krok po kroku, przebieg legalnego obliczenia akceptującego dla maszyny M. Koszt przekodowywania daje się oszacować wielomianem względem p(n). Uwaga CNF-SAT W dowodzie twierdzenia Cooka nie zajmujemy się bardzo szczegółowo postacią formuły f. Jednakże w dalszych rozważaniach będziemy przyjmować, że mówiąc o problemie SAT mamy na myśli jego przypadek szczególny tzw. CNF-SAT, czyli problem spełnialności formuł boolowskich w koniunkcyjnej postaci normalnej (CNF). Formuła jest w CNF jeśli jest koniunkcją klauzul (alternatyw) złożonych z literałów (zmiennych lub ich negacji). Postać takiej formuły: (l 11 l l 1k1 ) (l 21 l l 2k2 )... (l n1 l n2... l nkn ) Marcin Szczuka (MIMUW) Logika stosowana / 39

35 Plan wykładu 1 Pojęcie złożoności Złożoność czasowa Złożoność pamięciowa Złożoność w przypadku niedeterministycznym 2 Klasy złożoności Klasa PSPACE Klasa PTIME Klasa NPTIME 3 Problemy NP-zupełne Redukcja wielomianowa problemów NP zupełność SAT i twierdzenie Cooka Inna wersja problemu spełnialności NP-trudność i problemy optymalizacyjne Marcin Szczuka (MIMUW) Logika stosowana / 39

36 Problem 3-SAT Problem 3-SAT DANE: Formuła boolowska f w postaci 3-CNF, czyli taka której klauzule składają się z co najwyżej 3 literałów. PYTANIE: Czy f jest spełnialna? Pokażemy, że 3-SAT jest problemem NP-zupełnym przez wielomianowe sprowadzenie do niego z problemu CNF-SAT. 1 Formuła f dla CNF-SAT jest w postaci koniunkcji klauzul. 2 Przepisujemy f do formuły f w postaci 3-CNF poprzez wielokrotne stosowanie do zbyt długich klauzul w f następującej reguły: (l 1 l 2 l 3 l 4...) = (l 1 l 2 z 1 ) ( z 1 l 3 l 4...) gdzie z 1 jest zmienną pomocniczą. 3 Stosowanie powyższej reguły przepisywania prowadzi do powstania formuły f prawdziwej wtedy i tylko wtedy gdy prawdziwa jest f. Rozmiar f jest wielomianowo zależny od rozmiaru f. Marcin Szczuka (MIMUW) Logika stosowana / 39

37 Plan wykładu 1 Pojęcie złożoności Złożoność czasowa Złożoność pamięciowa Złożoność w przypadku niedeterministycznym 2 Klasy złożoności Klasa PSPACE Klasa PTIME Klasa NPTIME 3 Problemy NP-zupełne Redukcja wielomianowa problemów NP zupełność SAT i twierdzenie Cooka Inna wersja problemu spełnialności NP-trudność i problemy optymalizacyjne Marcin Szczuka (MIMUW) Logika stosowana / 39

38 NP-trudność i problemy optymalizacyjne W przypadku, gdy nie możemy (lub nie musimy) pokazać, że badany problem jest w klasie NP, a wiemy, że sprowadza się do niego wielomianowo jakiś problem NP-zupełny (trudny), mówimy, żę problem jest NP-trudny. Problem, który jest NP-trudny może być znacznie bardziej złożony niż problemy NP-zupełne. Można na przykład pokazać sprowadzenie problemu SAT do problemu STOPU. Zatem problem STOPU jest NP-trudny, ale skądinąd wiemy, że nie jest całkowicie algorytmicznie obliczalny. Często kojarzy się problemy NP-trudne z optymalizacyjnymi wersjami problemów NP-zupełnych. Istotnie, optymalizacyjne wersje znanych problemów NP-zupełnych są NP-trudne, ale należy pamiętać, że potencjalnie mogą nie być w NP, a zatem mogą być znacznie bardziej skomplikowane niż odpowiadające im problemy decyzyjne. Przykłady problemów NP-trudnych: 1 MAX-SAT znaleźć wartościowanie spełniające jak najwięcej klauzul. 2 Ogólny TSP znaleźć najlepszą drogę komiwojażera. 3 KLIKA znaleźć klikę największego rozmiaru w danym grafie. Marcin Szczuka (MIMUW) Logika stosowana / 39

39 Problem MAX-SAT Problem MAX-SAT DANE: Formuła f dla CNF-SAT (w postaci koniunkcji klauzul). ZADANIE: Znaleźć wartościowanie dla zmiennych w f takie, że największa możliwa liczba klauzul w f jest prawdziwa. (x 1 x 2 ) ( x 1 x 2 ) (x 1 x 2 ) ( x 1 x 2 ) Zadanie MAX-SAT jest NP-trudne, gdyż jeśli istnieje wartościowanie spełniające całe f to zostanie ono znalezione. MAX-SAT nie jest problemem NP-zupełnym, gdyż nie odpowiada na pytanie typu 0/1. Zadanie MAX-SAT nie ma zbyt dobrych własności aproksymacyjnych (nie istnieje wielomianowy schemat aproksymacyjny) o ile P NP. Problem MAX-SAT i jego warianty często pojawiają się w kotekście konstruowania i oceniania algorytmów (programów) znajdujących wartościowania spełniające tzw. SAT-Solver. Marcin Szczuka (MIMUW) Logika stosowana / 39

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Logika Stosowana. Wykład 1 - Logika zdaniowa. Marcin Szczuka. Instytut Informatyki UW. Wykład monograficzny, semestr letni 2016/2017

Logika Stosowana. Wykład 1 - Logika zdaniowa. Marcin Szczuka. Instytut Informatyki UW. Wykład monograficzny, semestr letni 2016/2017 Logika Stosowana Wykład 1 - Logika zdaniowa Marcin Szczuka Instytut Informatyki UW Wykład monograficzny, semestr letni 2016/2017 Marcin Szczuka (MIMUW) Logika Stosowana 2017 1 / 30 Plan wykładu 1 Język

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

Logika Stosowana. Wykład 2 - Logika modalna Część 3. Marcin Szczuka. Instytut Informatyki UW. Wykład monograficzny, semestr letni 2017/2018

Logika Stosowana. Wykład 2 - Logika modalna Część 3. Marcin Szczuka. Instytut Informatyki UW. Wykład monograficzny, semestr letni 2017/2018 Logika Stosowana Wykład 2 - Logika modalna Część 3 Marcin Szczuka Instytut Informatyki UW Wykład monograficzny, semestr letni 2017/2018 Marcin Szczuka (MIMUW) Logika Stosowana 2018 1 / 36 Plan wykładu

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

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

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

Metoda tabel semantycznych. Dedukcja drogi Watsonie, dedukcja... Definicja logicznej konsekwencji. Logika obliczeniowa.

Metoda tabel semantycznych. Dedukcja drogi Watsonie, dedukcja... Definicja logicznej konsekwencji. Logika obliczeniowa. Plan Procedura decyzyjna Reguły α i β - algorytm Plan Procedura decyzyjna Reguły α i β - algorytm Logika obliczeniowa Instytut Informatyki 1 Procedura decyzyjna Logiczna konsekwencja Teoria aksjomatyzowalna

Bardziej szczegółowo

Typy algorytmów losowych. ALP520 - Wykład z Algorytmów Probabilistycznych p.2

Typy algorytmów losowych. ALP520 - Wykład z Algorytmów Probabilistycznych p.2 Typy algorytmów losowych ALP520 - Wykład z Algorytmów Probabilistycznych p.2 Typy algorytmów losowych Las Vegas - zawsze daje prawidłowa odpowiedź (różny czas działania). Przykład: RandQuicksort ALP520

Bardziej szczegółowo

Andrzej Wiśniewski Logika I Materiały do wykładu dla studentów kognitywistyki. Wykład 9. Koniunkcyjne postacie normalne i rezolucja w KRZ

Andrzej Wiśniewski Logika I Materiały do wykładu dla studentów kognitywistyki. Wykład 9. Koniunkcyjne postacie normalne i rezolucja w KRZ Andrzej Wiśniewski Logika I Materiały do wykładu dla studentów kognitywistyki Wykład 9. Koniunkcyjne postacie normalne i rezolucja w KRZ 1 Inferencyjna równoważność formuł Definicja 9.1. Formuła A jest

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

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

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

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

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

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

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

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

Elementy logiki. Wojciech Buszkowski Wydział Matematyki i Informatyki UAM Zakład Teorii Obliczeń

Elementy logiki. Wojciech Buszkowski Wydział Matematyki i Informatyki UAM Zakład Teorii Obliczeń Elementy logiki Wojciech Buszkowski Wydział Matematyki i Informatyki UAM Zakład Teorii Obliczeń 1 Klasyczny Rachunek Zdań 1.1 Spójniki logiczne Zdaniem w sensie logicznym nazywamy wyrażenie, które jest

Bardziej szczegółowo

TEORETYCZNE PODSTAWY INFORMATYKI

TEORETYCZNE PODSTAWY INFORMATYKI 1 TEORETYCZNE PODSTAWY INFORMATYKI 16/01/2017 WFAiS UJ, Informatyka Stosowana I rok studiów, I stopień Repetytorium złożoność obliczeniowa 2 Złożoność obliczeniowa Notacja wielkie 0 Notacja Ω i Θ Rozwiązywanie

Bardziej szczegółowo

Języki formalne i automaty Ćwiczenia 9

Języki formalne i automaty Ćwiczenia 9 Języki formalne i automaty Ćwiczenia 9 Autor: Marcin Orchel Spis treści Spis treści... 1 Wstęp teoretyczny... 2 Maszyna Mealy'ego... 2 Maszyna Moore'a... 2 Automat ze stosem... 3 Konwersja gramatyki bezkontekstowej

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

Podstawy Informatyki. Sprawność algorytmów

Podstawy Informatyki. Sprawność algorytmów Podstawy Informatyki Sprawność algorytmów Sprawność algorytmów Kryteria oceny oszczędności Miara złożoności rozmiaru pamięci (złożoność pamięciowa): Liczba zmiennych + liczba i rozmiar struktur danych

Bardziej szczegółowo

LOGIKA Klasyczny Rachunek Zdań

LOGIKA Klasyczny Rachunek Zdań LOGIKA Klasyczny Rachunek Zdań Robert Trypuz trypuz@kul.pl 5 listopada 2013 Robert Trypuz (trypuz@kul.pl) Klasyczny Rachunek Zdań 5 listopada 2013 1 / 24 PLAN WYKŁADU 1 Alfabet i formuła KRZ 2 Zrozumieć

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

Złożoność problemów. 1 ruch na sekundę czas wykonania ok lat 1 mln ruchów na sekundę czas wykonania ok.

Złożoność problemów. 1 ruch na sekundę czas wykonania ok lat 1 mln ruchów na sekundę czas wykonania ok. Złożoność problemów Przykład - wieże Hanoi Problem jest zamknięty (dolne ograniczenie złożoności = złożoność algorytmu rekurencyjnego lub iteracyjnego) i ma złożoność O(2 N ). Mnisi tybetańscy podobno

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

Metoda Tablic Semantycznych

Metoda Tablic Semantycznych Procedura Plan Reguły Algorytm Logika obliczeniowa Instytut Informatyki Plan Procedura Reguły 1 Procedura decyzyjna Logiczna równoważność formuł Logiczna konsekwencja Procedura decyzyjna 2 Reguły α, β,

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

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

Logika Matematyczna (10)

Logika Matematyczna (10) Logika Matematyczna (10) Jerzy Pogonowski Zakład Logiki Stosowanej UAM www.logic.amu.edu.pl pogon@amu.edu.pl Rezolucja w KRZ Jerzy Pogonowski (MEG) Logika Matematyczna (10) Rezolucja w KRZ 1 / 39 Plan

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

Wstęp do programowania

Wstęp do programowania Wstęp do programowania Złożoność obliczeniowa, poprawność programów Paweł Daniluk Wydział Fizyki Jesień 2013 P. Daniluk(Wydział Fizyki) WP w. XII Jesień 2013 1 / 20 Złożoność obliczeniowa Problem Ile czasu

Bardziej szczegółowo

Automat ze stosem. Języki formalne i automaty. Dr inż. Janusz Majewski Katedra Informatyki

Automat ze stosem. Języki formalne i automaty. Dr inż. Janusz Majewski Katedra Informatyki Automat ze stosem Języki formalne i automaty Dr inż. Janusz Majewski Katedra Informatyki Automat ze stosem (1) dno stosu Stos wierzchołek stosu Wejście # B B A B A B A B a b b a b a b $ q i Automat ze

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

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 zadania, zestaw 2

Złożoność obliczeniowa zadania, zestaw 2 Złożoność obliczeniowa zadania, zestaw 2 Określanie złożoności obliczeniowej algorytmów, obliczanie pesymistycznej i oczekiwanej złożoności obliczeniowej 1. Dana jest tablica jednowymiarowa A o rozmiarze

Bardziej szczegółowo

METODY DOWODZENIA TWIERDZEŃ I AUTOMATYZACJA ROZUMOWAŃ

METODY DOWODZENIA TWIERDZEŃ I AUTOMATYZACJA ROZUMOWAŃ METODY DOWODZENIA TWIERDZEŃ I AUTOMATYZACJA ROZUMOWAŃ KONWERSATORIUM 6: REZOLUCJA V rok kognitywistyki UAM 1 Kilka uwag terminologicznych Słuchacze zapewne pamiętają z zajęć dotyczących PROLOGu poniższą

Bardziej szczegółowo

Andrzej Wiśniewski Logika I Materiały do wykładu dla studentów kognitywistyki. Wykład 10. Twierdzenie o pełności systemu aksjomatycznego KRZ

Andrzej Wiśniewski Logika I Materiały do wykładu dla studentów kognitywistyki. Wykład 10. Twierdzenie o pełności systemu aksjomatycznego KRZ Andrzej Wiśniewski Logika I Materiały do wykładu dla studentów kognitywistyki Wykład 10. Twierdzenie o pełności systemu aksjomatycznego KRZ 1 Tezy KRZ Pewien system aksjomatyczny KRZ został przedstawiony

Bardziej szczegółowo

Problemy NP-zupełne. Spis treści. Osoba prowadząca wykład i ćwiczenia: dr inż. Marek Sawerwain. Ostatnia zmiana: 15 styczeń 2013. Notatki.

Problemy NP-zupełne. Spis treści. Osoba prowadząca wykład i ćwiczenia: dr inż. Marek Sawerwain. Ostatnia zmiana: 15 styczeń 2013. Notatki. Osoba prowadząca wykład i ćwiczenia: dr inż. Marek Sawerwain Instytut Sterowania i Systemów Informatycznych Uniwersytet Zielonogórski e-mail : M.Sawerwain@issi.uz.zgora.pl tel. (praca) : 68 328 2321, pok.

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

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

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

10110 =

10110 = 1. (6 punktów) Niedeterministyczny automat skończony nazwiemy jednoznacznym, jeśli dla każdego akceptowanego słowa istnieje dokładnie jeden bieg akceptujący. Napisać algorytm sprawdzający, czy niedeterministyczny

Bardziej szczegółowo

Logika Stosowana. Wykład 2 - Logika modalna Część 2. Marcin Szczuka. Instytut Informatyki UW. Wykład monograficzny, semestr letni 2016/2017

Logika Stosowana. Wykład 2 - Logika modalna Część 2. Marcin Szczuka. Instytut Informatyki UW. Wykład monograficzny, semestr letni 2016/2017 Logika Stosowana Wykład 2 - Logika modalna Część 2 Marcin Szczuka Instytut Informatyki UW Wykład monograficzny, semestr letni 2016/2017 Marcin Szczuka (MIMUW) Logika Stosowana 2017 1 / 27 Plan wykładu

Bardziej szczegółowo

Złożoność obliczeniowa wybranych problemów szeregowania zadań jednostkowych na równoległych procesorach

Złożoność obliczeniowa wybranych problemów szeregowania zadań jednostkowych na równoległych procesorach Wydział Matematyki i Informatyki Bartłomiej Przybylski Numer albumu: 362824 Złożoność obliczeniowa wybranych problemów szeregowania zadań jednostkowych na równoległych procesorach Computational complexity

Bardziej szczegółowo

RACHUNEK ZDAŃ 7. Dla każdej tautologii w formie implikacji, której poprzednik również jest tautologią, następnik także jest tautologią.

RACHUNEK ZDAŃ 7. Dla każdej tautologii w formie implikacji, której poprzednik również jest tautologią, następnik także jest tautologią. Semantyczne twierdzenie o podstawianiu Jeżeli dana formuła rachunku zdań jest tautologią i wszystkie wystąpienia pewnej zmiennej zdaniowej w tej tautologii zastąpimy pewną ustaloną formułą, to otrzymana

Bardziej szczegółowo

Języki formalne i automaty Ćwiczenia 7

Języki formalne i automaty Ćwiczenia 7 Języki formalne i automaty Ćwiczenia 7 Autor: Marcin Orchel Spis treści Spis treści... 1 Wstęp teoretyczny... 2 Automaty... 2 Cechy automatów... 4 Łączenie automatów... 4 Konwersja automatu do wyrażenia

Bardziej szczegółowo

1 Maszyny Turinga. stan 1 litera 1 litera 2 ruch stan 2. Matematycznie P S (Q {B}) (Q {B}) {L, R, } S

1 Maszyny Turinga. stan 1 litera 1 litera 2 ruch stan 2. Matematycznie P S (Q {B}) (Q {B}) {L, R, } S 1 Maszyny Turinga Mając pewną wiedze techniczną na temat budowy komputera trudno przyjąć model rozważany wcześniej. Należy też uświadomoć sobie, że prosty pomysł łatwiej zrealizować technicznie. Tę zaletę

Bardziej szczegółowo

Problem decyzyjny naley do klasy NP. (Polynomial), jeeli moe by rozwizany w czasie conajwyej wielomianowym przez algorytm A dla DTM.

Problem decyzyjny naley do klasy NP. (Polynomial), jeeli moe by rozwizany w czasie conajwyej wielomianowym przez algorytm A dla DTM. WYKŁAD : Teoria NP-zupełnoci. Problem decyzyjny naley do klasy P (Polynomial), jeeli moe by rozwizany w czasie conajwyej wielomianowym przez algorytm A dla DTM. (przynaleno ta jest zachowana równie dla

Bardziej szczegółowo

Języki, automaty i obliczenia

Języki, automaty i obliczenia Języki, automaty i obliczenia Wykład 9: Własności języków bezkontekstowych Sławomir Lasota Uniwersytet Warszawski 27 kwietnia 2016 Plan 1 Pompowanie języków bezkontekstowych 2 Własności domknięcia 3 Obrazy

Bardziej szczegółowo

Algorytmy asymetryczne

Algorytmy asymetryczne Algorytmy asymetryczne Klucze występują w parach jeden do szyfrowania, drugi do deszyfrowania (niekiedy klucze mogą pracować zamiennie ) Opublikowanie jednego z kluczy nie zdradza drugiego, nawet gdy można

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

Złożoność obliczeniowa algorytmu ilość zasobów komputera jakiej potrzebuje dany algorytm. Pojęcie to

Złożoność obliczeniowa algorytmu ilość zasobów komputera jakiej potrzebuje dany algorytm. Pojęcie to Złożoność obliczeniowa algorytmu ilość zasobów komputera jakiej potrzebuje dany algorytm. Pojęcie to wprowadzili J. Hartmanis i R. Stearns. Najczęściej przez zasób rozumie się czas oraz pamięć dlatego

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

Problem P = NP. albo czy informacja może. biec na skróty

Problem P = NP. albo czy informacja może. biec na skróty Problem P = NP albo czy informacja może biec na skróty Damian Niwiński Problem P=NP? znalazł si e wśród problemów milenijnych, bo mówi coś istotnego o świecie, jego rozwiazanie wydaje sie wymagać przełomu

Bardziej szczegółowo

Wprowadzenie do złożoności obliczeniowej

Wprowadzenie do złożoności obliczeniowej Institute of Informatics Wrocław University of Technology Poland wersja 0.9 Obliczalność f : N R { sin(1/n) gdy n jest liczba pierwsza f (n) = cos(1/n) w przeciwnym przypadku Obliczalność f : N R { sin(1/n)

Bardziej szczegółowo

Paradygmaty dowodzenia

Paradygmaty dowodzenia Paradygmaty dowodzenia Sprawdzenie, czy dana formuła rachunku zdań jest tautologią polega zwykle na obliczeniu jej wartości dla 2 n różnych wartościowań, gdzie n jest liczbą zmiennych zdaniowych tej formuły.

Bardziej szczegółowo

Informacja w perspektywie obliczeniowej. Informacje, liczby i obliczenia

Informacja w perspektywie obliczeniowej. Informacje, liczby i obliczenia Informacja w perspektywie obliczeniowej Informacje, liczby i obliczenia Cztery punkty odniesienia (dla pojęcia informacji) ŚWIAT ontologia fizyka UMYSŁ psychologia epistemologia JĘZYK lingwistyka nauki

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

Wykład z równań różnicowych

Wykład z równań różnicowych Wykład z równań różnicowych 1 Wiadomości wstępne Umówmy się, że na czas tego wykładu zrezygnujemy z oznaczania n-tego wyrazu ciągu symbolem typu x n, y n itp. Zamiast tego pisać będziemy x (n), y (n) itp.

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

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

Tautologia (wyrażenie uniwersalnie prawdziwe - prawo logiczne)

Tautologia (wyrażenie uniwersalnie prawdziwe - prawo logiczne) Tautologia (wyrażenie uniwersalnie prawdziwe - prawo logiczne) Definicja 1: Tautologia jest to takie wyrażenie, którego wartość logiczna jest prawdą przy wszystkich możliwych wartościowaniach zmiennych

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

Efektywność algorytmów

Efektywność algorytmów Efektywność algorytmów Algorytmika Algorytmika to dział informatyki zajmujący się poszukiwaniem, konstruowaniem i badaniem własności algorytmów, w kontekście ich przydatności do rozwiązywania problemów

Bardziej szczegółowo

Maszyna Turinga (Algorytmy Część III)

Maszyna Turinga (Algorytmy Część III) Maszyna Turinga (Algorytmy Część III) wer. 9 z drobnymi modyfikacjami! Wojciech Myszka 2018-12-18 08:22:34 +0100 Upraszczanie danych Komputery są coraz szybsze i sprawniejsze. Na potrzeby rozważań naukowych

Bardziej szczegółowo

Semantyka rachunku predykatów pierwszego rzędu. Dziedzina interpretacji. Stałe, zmienne, funkcje. Logika obliczeniowa.

Semantyka rachunku predykatów pierwszego rzędu. Dziedzina interpretacji. Stałe, zmienne, funkcje. Logika obliczeniowa. Logika obliczeniowa Instytut Informatyki 1 Interpretacja i wartościowanie Dziedzina interpretacji Interpretacja Wartościowanie 2 Wartość formuły Wartość termu Wartość logiczna formuły Własności 3 Logiczna

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

Technologie Informacyjne

Technologie Informacyjne POLITECHNIKA KRAKOWSKA - WIEiK - KATEDRA AUTOMATYKI Technologie Informacyjne www.pk.edu.pl/~zk/ti_hp.html Wykładowca: dr inż. Zbigniew Kokosiński zk@pk.edu.pl Wykład 3: Wprowadzenie do algorytmów i ich

Bardziej szczegółowo

III rok kognitywistyki UAM,

III rok kognitywistyki UAM, METODY DOWODZENIA TWIERDZEŃ I AUTOMATYZACJA ROZUMOWAŃ WYKŁAD 14: POWTÓRKA III rok kognitywistyki UAM, 2016 2017 Dzisiejszy wykład w całości poświęcony będzie omówieniu przykładowych zadań, podobnych do

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

Definicja: zmiennych zdaniowych spójnikach zdaniowych:

Definicja: zmiennych zdaniowych spójnikach zdaniowych: Definicja: Alfabet języka logiki zdań składa się z nieskończonego (najczęściej zakładamy: przeliczalnego) zbioru P, o którym myślimy jak o zbiorze zmiennych zdaniowych i skończonego zbioru symboli, o których

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

KATEDRA INFORMATYKI TECHNICZNEJ. Ćwiczenia laboratoryjne z Logiki Układów Cyfrowych. ćwiczenie 204

KATEDRA INFORMATYKI TECHNICZNEJ. Ćwiczenia laboratoryjne z Logiki Układów Cyfrowych. ćwiczenie 204 Opracował: prof. dr hab. inż. Jan Kazimierczak KATEDA INFOMATYKI TECHNICZNEJ Ćwiczenia laboratoryjne z Logiki Układów Cyfrowych ćwiczenie 204 Temat: Hardware'owa implementacja automatu skończonego pełniącego

Bardziej szczegółowo

Logika Stosowana. Wykład 7 - Zbiory i logiki rozmyte Część 3 Prawdziwościowa logika rozmyta. Marcin Szczuka. Instytut Informatyki UW

Logika Stosowana. Wykład 7 - Zbiory i logiki rozmyte Część 3 Prawdziwościowa logika rozmyta. Marcin Szczuka. Instytut Informatyki UW Logika Stosowana Wykład 7 - Zbiory i logiki rozmyte Część 3 Prawdziwościowa logika rozmyta Marcin Szczuka Instytut Informatyki UW Wykład monograficzny, semestr letni 2016/2017 Marcin Szczuka (MIMUW) Logika

Bardziej szczegółowo

1. Analiza algorytmów przypomnienie

1. Analiza algorytmów przypomnienie 1. Analiza algorytmów przypomnienie T.H. Cormen, C.E. Leiserson, R.L. Rivest, C. Stein Wprowadzenie do algorytmów, rozdziały 1-4 Wydawnictwa naukowo-techniczne (2004) Jak mierzyć efektywność algorytmu?

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

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

Problemy Decyzyjne dla Systemów Nieskończonych

Problemy Decyzyjne dla Systemów Nieskończonych Problemy Decyzyjne dla Systemów Nieskończonych Ćwiczenia 1 17 lutego 2012 Na tych ćwiczeniach zajmiemy się pojęciem well quasi-ordering (WQO) bardzo przydatnym do analizy nieskończonych ciągów. Definicja

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

Za pierwszy niebanalny algorytm uważa się algorytm Euklidesa wyszukiwanie NWD dwóch liczb (400 a 300 rok przed narodzeniem Chrystusa).

Za pierwszy niebanalny algorytm uważa się algorytm Euklidesa wyszukiwanie NWD dwóch liczb (400 a 300 rok przed narodzeniem Chrystusa). Algorytmy definicja, cechy, złożoność. Algorytmy napotykamy wszędzie, gdziekolwiek się zwrócimy. Rządzą one wieloma codziennymi czynnościami, jak np. wymiana przedziurawionej dętki, montowanie szafy z

Bardziej szczegółowo

wstęp do informatyki i programowania część testowa (25 pyt. / 60 min.)

wstęp do informatyki i programowania część testowa (25 pyt. / 60 min.) egzamin podstawowy 7 lutego 2017 r. wstęp do informatyki i programowania część testowa (25 pyt. / 60 min.) Instytut Informatyki Uniwersytetu Wrocławskiego Paweł Rzechonek imię, nazwisko i nr indeksu:..............................................................

Bardziej szczegółowo

Maszyna Turinga, ang. Turing Machine (TM)

Maszyna Turinga, ang. Turing Machine (TM) Maszyna Turinga, ang. Turing Machine (TM) Alan Turing wybitny angielski matematyk, logik i kryptolog, jeden z najważniejszych twórców informatyki teoretycznej, któremu zawdzięczamy pojęcie maszyny Turinga

Bardziej szczegółowo

Semantyka rachunku predykatów

Semantyka rachunku predykatów Relacje Interpretacja Wartość Spełnialność Logika obliczeniowa Instytut Informatyki Relacje Interpretacja Wartość Plan Plan Relacje O co chodzi? Znaczenie w logice Relacje 3 Interpretacja i wartościowanie

Bardziej szczegółowo

III rok kognitywistyki UAM,

III rok kognitywistyki UAM, METODY DOWODZENIA TWIERDZEŃ I AUTOMATYZACJA ROZUMOWAŃ WYKŁAD 6A: REZOLUCJA III rok kognitywistyki UAM, 2016 2017 1 Rezolucja w KRZ Dowody rezolucyjne w KRZ są równie proste, jak dowody tablicowe Metoda

Bardziej szczegółowo

Modele i narzędzia optymalizacji w systemach informatycznych zarządzania

Modele i narzędzia optymalizacji w systemach informatycznych zarządzania Politechnika Poznańska Modele i narzędzia optymalizacji w systemach informatycznych zarządzania Joanna Józefowska POZNAŃ 2010/11 Spis treści Rozdział 1. Metoda programowania dynamicznego........... 5

Bardziej szczegółowo