Zaawansowane programowanie

Podobne dokumenty
D. Miszczyńska, M.Miszczyński KBO UŁ, Badania operacyjne (wykład 6 _ZP) [1] ZAGADNIENIE PRZYDZIAŁU (ZP) (Assignment Problem)

EGZAMIN MATURALNY Z INFORMATYKI MAJ 2011 POZIOM ROZSZERZONY WYBRANE: CZĘŚĆ I. Czas pracy: 90 minut. Liczba punktów do uzyskania: 20 WPISUJE ZDAJĄCY

Ciągi liczbowe wykład 3

MINIMALIZACJA PUSTYCH PRZEBIEGÓW PRZEZ ŚRODKI TRANSPORTU

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

Elementy rach. macierzowego Materiały pomocnicze do MES Strona 1 z 7. Elementy rachunku macierzowego

Instrukcja do ćwiczeń laboratoryjnych z przedmiotu: Badania operacyjne. Temat ćwiczenia: Problemy transportowe cd, Problem komiwojażera

Teoria i metody optymalizacji

WYBRANE METODY DOSTĘPU DO DANYCH

ma rozkład złożony Poissona z oczekiwaną liczbą szkód równą λ i rozkładem wartości pojedynczej szkody takim, że Pr( Y

Egzamin maturalny z informatyki Poziom rozszerzony część I

3. Regresja liniowa Założenia dotyczące modelu regresji liniowej

KADD Metoda najmniejszych kwadratów

EGZAMIN MATURALNY Z INFORMATYKI MAJ 2012 POZIOM PODSTAWOWY CZĘŚĆ I WYBRANE: Czas pracy: 75 minut. Liczba punktów do uzyskania: 20 WPISUJE ZDAJĄCY

3 Arytmetyka. 3.1 Zbiory liczbowe.

ALGORYTM OPTYMALIZACJI PARAMETRÓW EKSPLOATACYJNYCH ŚRODKÓW TRANSPORTU

Parametryzacja rozwiązań układu równań

Rekursja 2. Materiały pomocnicze do wykładu. wykładowca: dr Magdalena Kacprzak

zadań z pierwszej klasówki, 10 listopada 2016 r. zestaw A 2a n 9 = 3(a n 2) 2a n 9 = 3 (a n ) jest i ograniczony. Jest wiec a n 12 2a n 9 = g 12

METODY NUMERYCZNE dr inż. Mirosław Dziewoński

UKŁADY RÓWNAŃ LINOWYCH

STATYSTYKA I ANALIZA DANYCH

Metody Obliczeniowe w Nauce i Technice laboratorium

Jarosław Wróblewski Analiza Matematyczna A1, zima 2011/12. Kresy zbiorów. x Z M R

1 Układy równań liniowych

Rozsądny i nierozsądny czas działania

PODSTAWOWE ZAGADNIENIA METODOLOGICZNE

8. Optymalizacja decyzji inwestycyjnych

będą niezależnymi zmiennymi losowymi z rozkładu jednostajnego na przedziale ( 0,

Jarosław Wróblewski Analiza Matematyczna 1, zima 2016/17

Lista 5. Odp. 1. xf(x)dx = xdx = 1 2 E [X] = 1. Pr(X > 3/4) E [X] 3/4 = 2 3. Zadanie 3. Zmienne losowe X i (i = 1, 2, 3, 4) są niezależne o tym samym

Algorytmy I Struktury Danych Prowadząca: dr Hab. inż. Małgorzata Sterna. Sprawozdanie do Ćwiczenia 3 Algorytmy grafowe ( )

Egzamin maturalny z matematyki CZERWIEC 2011

TRANSFORMACJA DO UKŁADU 2000 A PROBLEM ZGODNOŚCI Z PRG

MATEMATYKA (poziom podstawowy) przykładowy arkusz maturalny wraz ze schematem oceniania dla klasy II Liceum

Wprowadzenie. metody elementów skończonych

Materiał ćwiczeniowy z matematyki Marzec 2012

O liczbach naturalnych, których suma równa się iloczynowi

Wstęp do programowania

h = 10 / N, a N jest zadaną liczbą naturalną.

POMIARY WARSZTATOWE. D o u ż y t k u w e w n ę t r z n e g o. Katedra Inżynierii i Aparatury Przemysłu Spożywczego. Ćwiczenia laboratoryjne

z przedziału 0,1. Rozważmy trzy zmienne losowe:..., gdzie X

Charakterystyki liczbowe zmiennych losowych: wartość oczekiwana i wariancja

Jarosław Wróblewski Analiza Matematyczna 1A, zima 2014/15. n 4n n 1

Kongruencje Wykład 4. Kongruencje kwadratowe symbole Legendre a i Jac

Metoda analizy hierarchii Saaty ego Ważnym problemem podejmowania decyzji optymalizowanej jest często występująca hierarchiczność zagadnień.

POLITECHNIKA OPOLSKA

AUDYT SYSTEMU GRZEWCZEGO

Damian Doroba. Ciągi. 1. Pierwsza z granic powinna wydawać się oczywista. Jako przykład może służyć: lim n = lim n 1 2 = lim.

EKONOMETRIA. Temat wykładu: Co to jest model ekonometryczny? Dobór zmiennych objaśniających w modelu ekonometrycznym CZYM ZAJMUJE SIĘ EKONOMETRIA?

Twierdzenie Cayleya-Hamiltona

Jarosław Wróblewski Analiza Matematyczna 1A, zima 2012/13. Ciągi.

LUBELSKA PRÓBA PRZED MATURĄ 2015 poziom podstawowy. Liczba punktów Wyznaczenie pierwszej współrzędnej wierzchołka paraboli: x.

Szereg geometryczny. 5. b) b n = 4n 2 (b 1 = 2, r = 4) lub b n = 10 (b 1 = 10, r = 0). 2. jest równa 1 x dla x = 1+ Zad. 3:

Prawdopodobieństwo i statystyka

INWESTYCJE MATERIALNE

Stwierdzenie 1. Jeżeli ciąg ma granicę, to jest ona określona jednoznacznie (żaden ciąg nie może mieć dwóch różnych granic).

Matematyka finansowa r. Komisja Egzaminacyjna dla Aktuariuszy. XLIII Egzamin dla Aktuariuszy z 8 października 2007 r.

Internetowe Kółko Matematyczne 2004/2005

Wykład 11. a, b G a b = b a,

ROZDZIAŁ 5 WPŁYW SYSTEMU OPODATKOWANIA DOCHODU NA EFEKTYWNOŚĆ PROCESU DECYZYJNEGO

O pewnych zastosowaniach rachunku różniczkowego funkcji dwóch zmiennych w ekonomii

P = 27, 8 27, 9 27 ). Przechodząc do granicy otrzymamy lim P(Y n > Y n+1 ) = P(Z 1 0 > Z 2 X 2 X 1 = 0)π 0 + P(Z 1 1 > Z 2 X 2 X 1 = 1)π 1 +

Przykład Obliczenie wskaźnika plastyczności przy skręcaniu

Matematyka I. Bezpieczeństwo jądrowe i ochrona radiologiczna Semestr zimowy 2018/2019 Wykład 11

1.3. Największa liczba naturalna (bez znaku) zapisana w dwóch bajtach to a) b) 210 c) d) 32767

WYDZIAŁ ELEKTRYCZNY POLITECHNIKI WARSZAWSKIEJ INSTYTUT ELEKTROENERGETYKI ZAKŁAD ELEKTROWNI I GOSPODARKI ELEKTROENERGETYCZNEJ

Algorytmy I Struktury Danych Prowadząca: dr Hab. inż. Małgorzata Sterna. Sprawozdanie do Ćwiczenia 1 Algorytmy sortowania (27.02.

Ćwiczenia nr 5. TEMATYKA: Regresja liniowa dla prostej i płaszczyzny

Podprzestrzenie macierzowe

Teoria. a k. Wskaźnik sumowania można oznaczać dowolną literą. Mamy np. a j = a i =

Pierwiastki z liczby zespolonej. Autorzy: Agnieszka Kowalik

PODSTAWY OPRACOWANIA WYNIKÓW POMIARÓW Z ELEMENTAMI ANALIZY NIEPEWNOŚCI POMIAROWYCH

Podprzestrzenie macierzowe

Analiza algorytmów to dział informatyki zajmujcy si szukaniem najefektywniejszych, poprawnych algorytmów dla danych problemów komputerowych

MATURA 2014 z WSiP. Zasady oceniania zadań

Estymacja przedziałowa

Rachunek prawdopodobieństwa i statystyka W12: Statystyczna analiza danych jakościowych. Dr Anna ADRIAN Paw B5, pok 407 adan@agh.edu.

Arkusz ćwiczeniowy z matematyki Poziom podstawowy ZADANIA ZAMKNIĘTE. W zadaniach od 1. do 21. wybierz i zaznacz poprawną odpowiedź. 1 C. 3 D.

Lista 6. Estymacja punktowa

Wykład. Inwestycja. Inwestycje. Inwestowanie. Działalność inwestycyjna. Inwestycja

Prawdopodobieństwo i statystyka r.

P π n π. Równanie ogólne płaszczyzny w E 3. Dane: n=[a,b,c] Wówczas: P 0 P=[x-x 0,y-y 0,z-z 0 ] Równanie (1) nazywamy równaniem ogólnym płaszczyzny

2. INNE ROZKŁADY DYSKRETNE

Geometrycznie o liczbach

Kolorowanie Dywanu Sierpińskiego. Andrzej Szablewski, Radosław Peszkowski

x t 1 (x) o 1 : x s 3 (x) Tym samym S(3) = {id 3,o 1,o 2,s 1,s 2,s 3 }. W zbiorze S(n) definiujemy działanie wzorem

Poziom rozszerzony. 5. Ciągi. Uczeń:

I kolokwium z Analizy Matematycznej

3. Funkcje elementarne

Metody numeryczne Laboratorium 5 Info

Materiał ćwiczeniowy z matematyki marzec 2012

Wstęp do programowania

Scenariusz lekcji: Kombinatoryka utrwalenie wiadomości

a) symbole logiczne (wspólne dla wszystkich języków) zmienne przedmiotowe: x, y, z, stałe logiczne:,,,,,, symbole techniczne: (, )

Zasada indukcji matematycznej. Dowody indukcyjne.

201. a 1 a 2 a 3...a n a 2 1 +a 2 2 +a a 2 n n a 4 1 +a 4 2 +a a 4 n n. a1 + a 2 + a a n 204.

KLUCZ ODPOWIEDZI I ZASADY PUNKTOWANIA PRÓBNEGO EGZAMINU MATURALNEGO Z MATEMATYKI POZIOM PODSTAWOWY

Programowanie dynamiczne cz. 2

Transkrypt:

Zaawasowae programowaie wykład 5: algorytmy dokłade prof. dr hab. iż. Marta Kasprzak Istytut Iformatyki, Politechika Pozańska lgorytmy dokłade lgorytmy dokłade służą rozwiązywaiu problemów w sposób dokłady (czyli ieheurystyczy). W przypadku problemów optymalizacyjych ozacza to gwarację wygeerowaia rozwiązaia optymalego Problemy trude obliczeiowo rozwiązywae są algorytmami działającymi w tzw. wykładiczym czasie: problemy silie NP-trude (silie NP-zupełe) rozwiązywae są algorytmami wykładiczymi, p. algorytmem brach-ad-boud lub brach-ad-cut problemy NP-trude (NP-zupełe) w zwykłym sesie mogą zostać rozwiązae algorytmami pseudowielomiaowymi, p. algorytmem programowaia dyamiczego 2 Metoda podziału i ograiczeń (ag. brach-ad-boud) opiera się a przeszukiwaiu (ajczęściej w głąb) drzewa reprezetującego przestrzeń rozwiązań problemu. Stosowae w tej metodzie odcięcia redukują liczbę przeszukiwaych węzłów (wykładiczą względem rozmiaru istacji) Metoda jest skompoowaa z grubsza rzecz ujmując z dwóch podstawowych procedur: rozgałęziaie (ag. brachig) dzieleie zbioru rozwiązań reprezetowaego przez węzeł a rozłącze podzbiory, reprezetowae przez astępików tego węzła ograiczaie (ag. boudig) pomijaie w przeszukiwaiu tych gałęzi drzewa, o których wiadomo, że ie zawierają optymalego rozwiązaia w swoich liściach Rozgałęziaie może być w korzeiu drzewa, jeśli rozpoczya każde rozwiązaie Następiki węzła muszą wyczerpywać wszystkie możliwe połączeia Węzeł reprezetuje zbiór rozwiązań osiągalych z iego Liście drzewa reprezetują komplete rozwiązaia 3 4 Ograiczaie Przykład dla problemu komiwojażera (bez predykcji) Odcięcia w drzewie opierają się a bieżącej wartości fukcji celu Im ta wartość bliższa optymalej, tym większe gałęzie moża pomiąć Wstępa heurystyka poprawia efektywość odcięć 0 31 32 11 18 31 0 59 23 46 32 59 0 40 15 11 23 40 0 27 18 46 15 27 0 Miejsca odcięć wykrywa się z wyprzedzeiem (predykcja) 126 5 6 1

W węźle drzewa porówywae są wartości tzw. dolego i górego ograiczeia (ag. lower ad upper boud). Wyik tego porówaia wpływa a decyzję o odcięciu gałęzi drzewa w tym węźle Przy założeiu miimalizacji fukcji celu, wartość tej fukcji dla ajlepszego osiągiętego do tej pory rozwiązaia staowi góre ograiczeie W (prawie) każdym węźle obliczaa jest aktuala wartość dolego ograiczeia, która musi być ie większa iż wartość fukcji celu ajlepszego rozwiązaia możliwego do osiągięcia z tego węzła ole i góre ograiczeie (miimalizacja fukcji celu) W bieżącym poddrzewie poszukujemy rozwiązań z obszaru pomiędzy góre ograiczeie dolym i górym (ajlepsze otrzymae do tej pory rozwiązaie) ograiczeiem Gdy obliczoa w węźle zbiór rozwiązań wartość dolego osiągaych ograiczeia jest ie z bieżącego węzła miejsza iż górego, odciamy poddrzewo wychodzące z tego węzła żade zawarte w im dole ograiczeie rozwiązaie ie będzie (żade rozwiązaie ie będzie lepsze) lepsze od posiadaego 7 8 Wartość dolego ograiczeia musi zostać obliczoa poprawie w tym sesie, że rzeczywiście żade rozwiązaie ie będzie miało lepszej wartości fukcji celu. Z drugiej stroy, wartość ta może odbiegać od rzeczywistej wartości fukcji celu ajlepszego rozwiązaia w poddrzewie Należy dążyć do tego, aby wartość dolego ograiczeia była jak ajbliższa rzeczywiście istiejącemu rozwiązaiu. Pozwoli to a dokoaie bardziej efektywych odcięć, czyli skróci czas obliczeń okłade obliczeie optymalej wartości dolego ograiczeia (rówej wartości fukcji celu optymalego rozwiązaia w poddrzewie) wiąże się z wykładiczym czasem obliczeń, stąd stosuje się szybkie metody przybliżoe 9 Przykładowo, dole ograiczeie dla problemu komiwojażera moża obliczyć sumując m+1 ajmiejszych iewłączoych jeszcze do trasy odległości z macierzy, gdzie m jest liczbą ieodwiedzoych miast ardziej dokładym przybliżeiem byłoby sumowaie odcików o ajmiejszej długości spośród dochodzących do ieodwiedzoych miast (plus powrót do źródła), po jedym a każde takie miasto alej przybliżając tę wartość, moża zliczać takie ajmiejsze odległości z macierzy, które łączą dwa ieodwiedzoe miasta, z uczyieiem wyjątku dla połączeń z bieżącą częścią rozwiązaia Krokiem dalej jest obliczaie w każdym węźle drzewa rozwiązaia dla problemu przydziału, w którym łączy się pozostałe miasta w pary i każde ieodwiedzoe miasto występuje w dwóch takich parach 10 Problem przydziału (ag. assigmet problem) sformułoway jest astępująco: mi z x ij i1 x ij j1 1, c x ij ij i1 j1 j 1,..., c ij koszt przydziału x ij zmiea decyzyja (o wartości 0/1) Iymi słowy, ależy z kwadratowej macierzy kosztów wybrać pozycji takich, że każdy wiersz i każda koluma macierzy jest wybraa dokładie raz oraz suma wskazaych kosztów jest miimala 1, i 1,..., 11 Problem przydziału rozwiązyway jest w wielomiaowym czasie tzw. metodą węgierską. Mimo to zastosowaie tego podejścia w każdym węźle drzewa może wydłużyć obliczeia zamiast je skrócić Obiekty w wierszach i kolumach mogą staowić, w zależości od iterpretacji, rozłącze lub idetycze zbiory (p. osoby i zadaia lub miasta w problemie komiwojażera) Rozwiązaie problemu przydziału dla miast z problemu komiwojażera daje zbiór rozłączych cykli. Miimala wartość z zawsze będzie poprawym dolym ograiczeiem by wykluczyć iepożąday (w problemie komiwojażera) wybór kosztu z przekątej macierzy, pozycjom tym przypisuje się a wstępie duże wartości 12 2

Przykład rozwiązaia problemu przydziału w węźle drzewa 0 31 32 11 18 31 0 59 23 46 32 59 0 40 15 11 23 40 0 27 18 46 15 27 0 23 46 11 27 18 27 Przykład rozwiązaia problemu przydziału w węźle drzewa 0 31 32 11 18 31 0 59 23 46 32 59 0 40 15 11 23 40 0 27 18 46 15 27 0 59 40 15 31 23 46 11 23 27 18 46 27 Rozw.: -,-,- Wartość f. celu: 68 ole ogr.: 159 Góre ogr.: 127 Rozw.: -,-,-,- Wartość fukcji celu: 79 ole ograiczeie: 111 Góre ograiczeie: 127 13 14 Porówaie metod o różym stopiu dokładości stosowaych do obliczeia dolego ograiczeia przykład ( slajd 10) metoda rozwiązaie wartość m+1 ajmiejszych odległości -, -, - 11+15+18=44 ajmiejsze odległości dochodzące do m+1 miast ajmiejsze odległości pomiędzy parami miast -, -, - 11+15+18=44 -, -, - 23+27+11=61 problem przydziału -, -, - 23+27+18=68 Wyik metody obliczającej dole ograiczeie może, wraz z częścią już istiejącego rozwiązaia, staowić poprawe rozwiązaie główego problemu. W takim przypadku jest to ajlepsze (lub jedo z ajlepszych) rozwiązaie możliwe do osiągięcia w poddrzewie wychodzącym z aalizowaego węzła i moża w tym miejscu zakończyć rozgałęziaie zasami moża zaoszczędzić a obliczeiach, przechodząc z węzła do jego astępika, gdyż problemy rozwiązywae w sąsiedich węzłach są podobe Struktura drzewa często opieraa jest a elemetach rozwiązaia każdy elemet w jedym węźle które po dodaiu do siebie tworzą rozwiązaie. Moża jedak zastosować iy schemat, p. węzeł ozacza brak daego elemetu w rozwiązaiu 15 16 Oprócz właściwego doboru schematu rozgałęziaia i ograiczaia, istotym elemetem jest uporządkowaie astępików węzła. Kolejość ich odwiedzaia ma wpływ a wcześiejsze osiągięcie lepszego górego ograiczeia, a więc a czas obliczeń Najczęściej stosowaymi strategiami są: least-cost-ext least-lower-boud-ext last-i-first-out first-i-first-out Uporządkowaie zależy w dużej mierze od rodzaju problemu Moża zrezygować z obliczaia dolego ograiczeia a ajiższych poziomach drzewa z uwagi a oszczędość czasu, ew. ajwyższych z uwagi a iską skuteczość Warto wyposażyć algorytm w mechaizm przerywaia zbyt długich obliczeń. Wtedy zamiast stracić dokoae obliczeia możemy uzyskać wyik przybliżoy, często o bardzo dobrej jakości Oprócz ajlepszego rozwiązaia osiągiętego do mometu przerwaia obliczeń algorytm może zwrócić ajiższą wartość dolego ograiczeia obliczoą dla wszystkich ierozgałęzioych węzłów. Wiemy wtedy, że poszukiwaa wartość optymala zajduje się pomiędzy tymi dwiema wartościami 17 18 3

rach & cut Metoda podziału i odcięć (ag. brach-ad-cut) powstała przez połączeie dwóch metod: podziału i ograiczeń oraz płaszczyz odciających (ag. cuttig-plae) Metoda podobie jak brach-ad-boud służy do rozwiązywaia problemów kombiatoryczych, czyli takich, w których zmiee mają wartości całkowite. Problem jest wyrażay zazwyczaj w postaci układu rówań i ierówości programowaia liiowego całkowitoliczbowego (ag. iteger liear programmig, ILP, przykład a slajdzie 11) Rozwiązaie problemu ILP jest trude obliczeiowo. W praktyczych podejściach stosuje się metodę przybliżoą, polegającą a rozwiązaiu problemu bez ograiczeia wartości zmieych do liczb całkowitych (metodą simplex), z zamiaą uzyskaych wartości ułamkowych a całkowitoliczbowe rach & cut Proste zaokrągleie wartości ułamkowych do ajbliższych liczb całkowitych ajczęściej ie sprawdza się, gdyż wartość taka może być iedopuszczala (aruszająca ograiczeia z problemu) Metoda cuttig-plae Ralpha Gomory ego polega a wprowadzaiu do sformułowaia problemu dodatkowych zmieych i dodawaiu ierówości mających a celu wyelimiowaie wartości ułamkowych kolejych zmieych Metoda Gomory ego jest powiązaa z postacią rówań z metody simplex (opis obu tych metod wykracza poza program wykładu). W praktyce stosuje się w metodzie brach-ad-cut także uproszczoe podejście, bez dodatkowych zmieych i z prostszymi ierówościami (kolejy slajd) 19 20 rach & cut W każdym węźle drzewa rozwiązyway jest problem ILP w sposób przybliżoy metodą simplex i dodawaa jest ierówość w dwóch wariatach dla wybraej zmieej, co prowadzi do dwóch owych sformułowań i rozgałęzieia węzła Sformułowaie ILP + ograiczeie x 27 Sformułowaie ILP x = 27,6 Sformułowaie ILP + ograiczeie x 28 W momecie uzyskaia rozwiązaia bez wartości ułamkowych dla zmieych całkowitoliczbowych, mamy rozwiązaie dopuszczale problemu i kończymy rozgałęziaie w tym węźle 21 rach & cut Wartość fukcji celu ajlepszego dotąd otrzymaego rozwiązaia całkowitoliczbowego staowi góre ograiczeie. olym ograiczeiem jest wartość fukcji celu wyliczoa metodą simplex dla problemu przybliżoego Liczba wywołań metody simplex bywa ograiczaa, ie uruchamia się jej wtedy w każdym węźle Podobie jak w brach-ad-boud, wstępa heurystyka poprawia jakość odcięć Stosuje się wstępe przetworzeie problemu ILP obejmujące: elimiację zbędych zmieych ustaleie zmieych o stałej wartości uproszczeie ierówości 22 rach & cut W przypadku zero-jedykowego programowaia liiowego, w którym zmiee decyzyje przyjmują wartości 0 lub 1, rozgałęziaie może zostać zrealizowae w jeszcze bardziej uproszczoy sposób. Metoda simplex może być używaa wtedy do obliczaia dolego ograiczeia w wybraych węzłach Przykład 0-1 LP problem plecakowy max f wi i1 si k i1 0,1, i 1,..., ae w problemie: liczba elemetów s i rozmiar elemetu w i wartość elemetu k rozmiar plecaka 23 rach & cut Przykład rozgałęzieia dla problemu plecakowego Istacja problemu: =5, k=10 dla LP: 0 x i 1 ograiczeie: x 1 = 0 LP = [0,1,1,1,0.33] f LP = 12.33 LP = [0.2,1,1,1,0] f LP = 12.6 ograiczeie: x 1 = 1 LP = [1,0.33,0,1,0] f LP = 10.32 24 4

Programowaie dyamicze [R. ellma, Proceedigs of the Natioal cademy of Scieces of the US 38, 1952, 716 719] Programowaie dyamicze (ag. dyamic programmig) jest metodą stosowaą do optymalego rozwiązaia problemów zarówo wielomiaowych, jak i NP-trudych (NP-zupełych) Problemy te muszą spełiać zasadę optymalości ellmaa, tz. decyzja optymala podjęta w kroku i jest adal optymalą w kroku i+1 i kolejych. Mają oe tzw. optymalą podstrukturę, czyli rozwiązaia optymale dla podproblemów składają się a rozwiązaie optymale całego problemu Nie ma awrotów w tej metodzie Programowaie dyamicze W programowaiu dyamiczym wypełia się k-wymiarową macierz wartości o rozmiarze ograiczoym zazwyczaj (w zastosowaiach praktyczych) wielomiaem będącym fukcją rozmiaru istacji i ajwiększej liczby występującej w istacji Najbardziej zaym w bioiformatyce algorytmem programowaia dyamiczego jest algorytm dopasowaia dwóch sekwecji (algorytm Needlemaa-Wuscha, algorytm Smitha-Watermaa) Na kolejych slajdach przedstawioy jest przykład algorytmu programowaia dyamiczego dla problemu plecakowego ( slajd 23). lgorytm te ma złożoość pseudowielomiaową O(k) 25 26 Programowaie dyamicze Programowaie dyamicze Istacja problemu: =5, k=10 Tablica programowaia dyamiczego: j lgorytm: 0 1 2 3 4 5 6 7 8 9 10 i 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 3 3 3 3 3 3 2 0 0 0 4 4 4 4 4 7 7 7 3 0 0 2 4 4 6 6 6 7 7 9 4 0 0 2 4 6 6 8 10 10 12 12 5 0 0 2 4 6 6 8 10 10 12 12 i=0.., j=0..k, i f(i, 0) = 0 j f(0, j) = 0 f(i, j) = f(i 1, j) gdy j < s i, f(i, j) = max{ f(i 1, j s i)+w i, f(i 1, j)} wpp. Optimum: f(, k) 27 Istacja problemu: =5, k=10 Tablica programowaia dyamiczego: j 0 1 2 3 4 5 6 7 8 9 10 i 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 3 3 3 3 3 3 2 0 0 0 4 4 4 4 4 7 7 7 3 0 0 2 4 4 6 6 6 7 7 9 4 0 0 2 4 6 6 8 10 10 12 12 5 0 0 2 4 6 6 8 10 10 12 12 Rozwiązaie odczytujemy od końca, cofając się z pola (,k) po kolei do pól, z których wywiedzioe zostały wartości składające się a optymalą ścieżkę. Kończymy a wartości 0. Rozwiązaiem jest podzbiór elemetów: {2, 3, 4} 28 Literatura cd. hristos H. Papadimitriou, Keeth Steiglitz, ombiatorial Optimizatio: lgorithms ad omplety, Pretice Hall, glewood liffs, 1982. 29 5