Techniki optymalizacji algorytmy metaheurystyczne

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

Download "Techniki optymalizacji algorytmy metaheurystyczne"

Transkrypt

1 Techniki optymalizacji algorytmy metaheurystyczne

2 Zakres przedmiotu część AJ Wprowadzenie Dokładne i heurystyczne algorytmy optymalizacji Przeszukiwanie lokalne Metaheurystyki oparte na lokalnym przeszukiwaniu Symulowane wyżarzanie Przeszukiwanie tabu Iteracyjne przeszukiwanie lokalne

3 Zakres przedmiotu część AJ Algorytmy populacyjne Algorytmy kolonii mrówek Algorytmy ewolucyjne Hybrydowe algorytmy ewolucyjne Ograniczenia w algorytmach metaheurysycznych Konstrukcja algorytmów metaheurystycznych Wielokryterialne algorytmy metaheurystyczne

4 Jak ocenić wpływ decyzji na cele? Sformułowanie problemu optymalizacji myślenie w kategoriach celów Myślenie regułowe Optymalizacja Co zrobić aby...? Co zrobić jeżeli...? Jakie są moje cele? Co chcę osiągnąć? Jakie decyzje mogę podjąć? Jakie ograniczenia muszę uwzględnić?

5 Przykład ustalanie lokalizacji towarów w zautomatyzowanym magazynie Myślenie regułowe Co zrobić aby...? Co zrobić jeżeli...? Jeżeli towar jest często zamawiany, to należy go umieścić blisko obszaru kompletowania

6 Przykład ustalanie lokalizacji towarów w zautomatyzowanym magazynie Jakie są moje cele? Co chcę osiągnąć? Jakie decyzje mogę podjąć? Jakie ograniczenia muszę uwzględnić? Jak ocenić wpływ decyzji na cele? Średnia długość drogi podczas kompletowania zlecenia powinna być jak najkrótsza. Przydział towarów do lokalizacji w magazynie Przydział każdego produktu. Ograniczenia technologiczne Funkcja nieliniowa służąca do obliczania średniej długości drogi

7 Elementy zagadnienia optymalizacji Jakie są moje cele? Co chcę osiągnąć? Jakie decyzje mogę podjąć? Jakie ograniczenia muszę uwzględnić? Jak ocenić wpływ decyzji na cele? Kryteria. Funkcje celu Zmienne decyzyjne Ograniczenia. Przestrzeń rozwiązań dopuszczalnych Sposób obliczania funkcji celu: Analityczny Symulacyjny

8 Przykład ustalanie lokalizacji towarów w zautomatyzowanym magazynie Kryteria. Funkcje celu Zmienne decyzyjne Ograniczenia. Przestrzeń rozwiązań dopuszczalnych Sposób obliczania funkcji celu: Analityczny Symulacyjny Średnia długość drogi podczas kompletowania zlecenia. Przydział towarów do lokalizacji w magazynie Przydział każdego produktu. Ograniczenia technologiczne Funkcja nieliniowa

9 Współczesna optymalizacja a badania operacyjne Ogromny rozwój metod i narzędzi optymalizacji. Znacznie szerszy zakres zastosowania. Badania operacyjne koncentrowały się na ciągłych problemach liniowych Integracja z rozwiązaniami informatycznymi, np. wykorzystanie danych Różnorodne związki ze sztuczną inteligencją

10 Problem optymalizacji minimalizuj/maksymalizuj z = f(x) przy ograniczeniach (p.o) x S

11 Problem optymalizacji minimalizuj z = f(x) = maksymalizuj z = -f(x)

12 Problem programowania matematycznego Jeżeli rozwiązanie jest zdefiniowane jako wektor zmiennych: x R n, t.j. x = {x 1,, x n } a ograniczenia jako zbiór równości/nierówności: x S g l (x) / / = 0, j=1,,l mamy do czynienia z problemem programowania matematycznego

13 Rodzaje problemów programowania matematycznego Jeżeli funkcja celu i ograniczenia są liniowe liniowy problem programowania matematycznego Jeżeli funkcja celu lub co najmniej jedno ograniczenie są nieliniowe nieliniowy problem programowania matematycznego

14 Rodzaje problemów programowania matematycznego Jeżeli zmienne są ciągłe ciągły problem programowania matematycznego Jeżeli zmienne są dyskretne dyskretny problem programowania matematycznego Jeżeli zmienne są mieszane ciągłe i dyskretne mieszany problem programowania matematycznego

15 Rodzaje problemów programowania matematycznego Jeżeli zmienne są całkowitoliczbowe całkowitoliczbowy problem programowania matematycznego Jeżeli zmienne są binarne binarny problem programowania matematycznego

16 Problem optymalizacji kombinatorycznej Dyskretny i skończony zbiór rozwiązań Struktura kombinatoryczna? Zawsze da się zdefiniować jako binarny/dyskretny problem programowania matematycznego ale nie zawsze warto

17 Problem optymalizacji kombinatorycznej Problem optymalizacji kombinatorycznej jest problemem minimalizacji bądź maksymalizacji i charakteryzuje się zbiorem instancji Instancja jest parą (S, f) S oznacza skończony zbiór wszystkich możliwych rozwiązań f jest odwzorowaniem definiowanym jako f : S R

18 Rozwiązanie (globalnie) optymalne W przypadku minimalizacji rozwiązanie x opt S które spełnia f (x opt ) f(x) dla wszystkich x S W przypadku maksymalizacji rozwiązanie x opt S które spełnia f (x opt ) f(x) dla wszystkich x S

19 Klasyfikacja algorytmów optymalizacji algorytmy dokładne przeszukiwanie wyczerpujące (exhaustive), podziału i ograniczeń (B&B), programowanie dynamiczne algorytmy heurystyczne specjalizowane metaheurystyczne: losowego przeszukiwania (random search) lokalnego przeszukiwania i odmiany symulowane wyżarzanie przeszukiwanie tabu genetyczne/ewolucyjne mrówkowe, świetlikowe hybrydy

20 Klasyfikacja algorytmów (2) Ponadto w obu klasach można wyróżnić algorytmy ogólne (general algorithms) niezależne od rozwiązywanego problemu (np. B&B, metaheurystyki) oraz algorytmy dopasowywane (tailored algorithms) wykorzystujące specyficzną wiedzę o problemie (np. heurystyki priorytetowe w szeregowaniu)

21 Dlaczego problemy mogą być trudne do rozwiązania Duża liczba możliwych rozwiązań przeszukanie całej przestrzeni rozwiązań dopuszczalnych w celu znalezienia najlepszego jest nierealne Problem jest złożony (złożoność obliczeniowa), użycie modeli uproszczonych i rezultaty są bezużyteczne Funkcja oceny jest obarczona niepewnością Potencjalne rozwiązania mocno ograniczone znalezienie jednego dopuszczalnego jest problemem

22 Dlaczego problemy mogą być trudne do rozwiązania Duża liczba możliwych rozwiązań przeszukanie całej przestrzeni rozwiązań dopuszczalnych w celu znalezienia najlepszego jest nierealne Problem jest b. złożony, użycie modeli uproszczonych i rezultaty są bezużyteczne Funkcja oceny jest obarczona niepewnością Potencjalne rozwiązania mocno ograniczone znalezienie jednego dopuszczalnego jest problemem

23 Duża liczba rozwiązań Problem spełnienia wyrażenia logicznego (SAT) np. problem 100 zmiennych F( x) ( x x23 x ) ( x13 x x34) TRUE S (dwie możliwości dla zmiennej, 100 zmiennych)

24 Duża liczba rozwiązań Problem komiwojażera (TSP travelling salesperson problem) Liczba rozwiązań (n-1)! / 2 Liczba wierzchołków Liczba rozwiązań ,08E ,04E ,67E+155

25 Dlaczego problemy mogą być trudne do rozwiązania Duża liczba możliwych rozwiązań przeszukanie całej przestrzeni rozwiązań dopuszczalnych w celu znalezienia najlepszego jest nierealne Problem jest b. złożony, użycie modeli uproszczonych i rezultaty są bezużyteczne Funkcja oceny jest obarczona niepewnością Potencjalne rozwiązania mocno ograniczone znalezienie jednego dopuszczalnego jest problemem

26 Modelowanie problemu PROBLEM MODEL ROZWIĄZANIE Model - przybliżenie rzeczywistości Rozwiązanie problem Np. Problem transportowy z nieliniową i nieciągłą funkcją celu Dwa sposoby rozwiązania uprościć model, żeby pasował do tradycyjnego modelu i metody rozwiązania wykorzystać nietradycyjne podejście

27 Dlaczego problemy mogą być trudne do rozwiązania Duża liczba możliwych rozwiązań przeszukanie całej przestrzeni rozwiązań dopuszczalnych w celu znalezienia najlepszego jest nierealne Problem jest b. złożony, użycie modeli uproszczonych i rezultaty są bezużyteczne Funkcja oceny jest obarczona niepewnością Potencjalne rozwiązania mocno ograniczone znalezienie jednego dopuszczalnego jest problemem

28 Dlaczego problemy mogą być trudne do rozwiązania Duża liczba możliwych rozwiązań przeszukanie całej przestrzeni rozwiązań dopuszczalnych w celu znalezienia najlepszego jest nierealne Problem jest b. złożony, użycie modeli uproszczonych i rezultaty są bezużyteczne Funkcja oceny jest obarczona niepewnością Potencjalne rozwiązania mocno ograniczone

29 Przykłady problemów kombinatorycznych

30 Problem komiwojażera (TSP)

31 Problem komiwojażera (TSP)

32 Problem komiwojażera (TSP)

33 Problem kwadratowego przydziału (QAP) Dane Odległości pomiędzy możliwymi lokalizacjami Przepływy pomiędzy czynnościami Przykład lokalizacja personelu medycznego

34 Problem kwadratowego przydziału (QAP) 1 b 13 b b 12

35 Problem podziału grafu (GPP) Dane: Graf G(V, E) składający się z n wierzchołków V = { v1, v2,... vn} oraz zbiór niezorientowanych łuków E łączących pary wierzchołków.

36 Problem podziału grafu (GPP) Eij macierz połączeń Eij = 1 jeśli vi jest połączony z vj 0 w przeciwnym wypadku Eij = Eji

37 Problem podziału grafu (GPP) Należy dokonać podziału grafu G na dwa rozłączne podzbiory V1 i V2, takie, że V1 V2 = V Liczba połączeń pomiędzy zbiorami wynosi C[ V, V ] 1 2 i V 1, j V 2 E ij

38 Problem podziału grafu (GPP)

39 Problem marszrutyzacji pojazdów (VRP) Należy odwiedzić wszystkie wierzchołki korzystając ze zbioru pojazdów

40 Co jest potrzebne do zaprojektowania algorytmu Reprezentacja rozwiązania Cel Funkcja oceny

41 Reprezentacja rozwiązania Ciąg binarny Reprezentacja zmiennoprzecinkowa, np. programowanie nieliniowe Permutacja, np. TSP, QAP Macierz Drzewo

42 Exhaustive search Wymaga wygenerowania i sprawdzenia każdego rozwiązania dopuszczalnego wady oczywiste Zaleta proste Jedyne wymaganie systematyczny sposób przeszukiwania S Jak to zrobić, zależy od reprezentacji

43 Exhaustive search Ale można inaczej dzieląc S. Jak?

44 Exhaustive search (2) Wielokrotny podział na dwie przestrzenie, x 1 = T, x 1 = F,... x 1 =T x 1 =F x 2 =T x 2 =F x 2 =T x 2 =F

45 Exhaustive search - TSP Permutacja dopuszczalna, np. nie Liczba permutacji n! Rekurencyjne generowanie permutacji ustalenie pierwszej pozycji generowanie (n-1)! permutacji dla ustalonej pierwszej pozycji...

46 Branch & Bound

47 Przeszukiwanie losowe Powtarzaj Wygeneruj losowe rozwiązanie x Do spełnienia warunków stopu Zwróć najlepsze znalezione rozwiązanie

48 Heurystyki zachłanne (greedy) Konstrukcja rozwiązania poprzez dodawania kolejnych elementów np. wierzchołków (łuków) W każdym kroku dodawany jest jeden, najlepszy element

49 Heurystyki zachłanne (greedy) Utwórz rozwiązanie początkowe, np. x := Ø powtarzaj dodaj do x lokalnie najlepszy element nie wchodzący jeszcze w skład rozwiązania dopóki nie utworzono pełnego rozwiązania

50 Przykłady heurystyk zachłannych NN (Nearest Neighbor) Iteracyjne dodawanie do trasy najbliżej leżącego miasta. Greedy cycle Trasa jest budowana tak, że zawsze tworzy cykl Hamiltona. W każdej iteracji dodawany jest jeden najkrótszy łuk z pozostałych dostępnych. Clarke-Wright (dla VRP) Na początku każde miasto połączone z bazą, potem iteracyjna eliminacja takiego połączenia z bazą (przejazd bezpośrednio do miasta), która da największe oszczędności

51 NN przykład

52 NN przykład

53 NN przykład

54 NN przykład

55 NN przykład

56 NN przykład

57 NN przykład

58 NN przykład

59 NN przykład

60 Greedy cycle przykład

61 Greedy cycle przykład

62 Greedy cycle przykład

63 Greedy cycle przykład

64 Greedy cycle przykład

65 Greedy cycle przykład

66 Greedy cycle przykład

67 NN przykład

68 GRASP Greedy Randomized Adaptive Search Procedure T.A. Feo, M.G.C. Resende, Greedy Randomized Adaptive Search Procedures, Journal of Global Optimization 6, , Wadą heurystyk zachłannych jest ich determinizm, wystartowane z tego samego punktu (np. NN z tego samego wierzchołka), tworzą to samo rozwiązanie GRASP łączy zachłanność z losowością

69 GRASP Konstrukcja dobrego rozwiązania Dokładanie pojedynczych elementów do rozwiązania Uporządkowana ograniczona lista kandydatów według tzw. funkcji zachłannej, która bierze pod uwagę elementy znajdujące się już w rozwiązaniu Wybór losowy jednego z najlepszych kandydatów z listy (zwykle nie jest to ten najlepszy)

70 Zachłanna procedura z elementem losowym Utwórz rozwiązanie początkowe, np. x := Ø powtarzaj zbuduj ograniczoną listę kandydatów RCL (restricted candidate list) najlepszych elementów nie wchodzących jeszcze w skład rozwiązania dodaj do x losowo wybrany element z RCL dopóki nie utworzono pełnego rozwiązania

71 Konstrukcja ograniczonej listy kandydatów RCL Pierwsza faza c(e) koszt przyrostu f. celu związany z włączeniem elementu e E do rozwiązania c min, c max najmniejszy i największy koszt przyrostu RCL jest budowana z elementów o najmniejszym przyroście Ograniczenie ze względu na ilość (p elementów) ze względu na jakość ( ) c(e) [c min, c min + (c max - c min )] = 0? = 1?

72 Regret heuristics Rozważmy wszystkie możliwe uporządkowane rosnąco koszty wstawienia dwóch elementów: A: 10, 11, 12, 13, 13, 14 B: 20, 40, 45, 50, 50, 50 Który element należałoby wybrać? Zgodnie z zasadą zachłanną A ale wtedy może się okazać, że stracimy opcję wstawienia B z kosztem 20 i zostanie nam tylko koszt 40 lub więcej

73 Regret heuristics k-żal (k-regret) to suma różnic pomiędzy najlepszym, a k kolejnymi opcjami wstawienia Wybieramy element o największym żalu Wstawiamy go w najlepsze miejsce

74 Regret heuristics B A

75 Techniki optymalizacji Przeszukiwanie lokalne

76 Idea sąsiedztwa S x N(x)

77 Definicja sąsiedztwa x S zbiór N(x) S rozwiązań, które leżą blisko rozwiązania x funkcja odległości dist: S S R sąsiedztwo N(x) = {y S : dist(x, y) } każde rozwiązanie y N(x) jest nazywane rozwiązaniem sąsiednim lub po prostu sąsiadem x

78 Definicja sąsiedztwa (2) zakładamy, że y N(x) x N(y) N(x) można uzyskać z x wykonując jeden ruch (modyfikację) m z pewnego zbioru możliwych ruchów M(x) ruch m jest pewną transformacją, która zastosowana do rozwiązania x daje rozwiązanie y Sąsiedztwo można więc zdefiniować następująco: N(x) = {y m M(x) y = m(x)}

79 Cechy sąsiedztwa ograniczenie na rozmiar dla każdego x jego N(x) zawiera co najmniej jedno rozwiązanie y rożne od x nie może obejmować całej przestrzeni rozwiązań dopuszczalnych (nie może być dokładna) podobieństwo sąsiadów y N(x) niewiele różni się od x, tak by przejście (elementarny ruch) od x do y nie wymagało za każdym razem konstruowania nowego rozwiązania od podstaw równouprawnienie niezależnie od wyboru rozwiązania początkowego powinno być osiągalne każde rozwiązanie należące do S

80 Przykład sąsiedztwa - TSP k-zamiana (ang. k-swap, k-opt) N(x) zbiór rozwiązań powstałych przez usunięcie k miast i wstawienie ich w innej kolejności 2-zamiana N(x) = n(n-1)/2

81 Sąsiedztwo TSP wymiana miast N 2 (3, 8)

82 Sąsiedztwo TSP wymiana łuków N 2 (3, 8)

83 2-opt i 3-opt

84 Sąsiedztwo QAP zamiana lokalizacji b 2 3 b b 12 1 b a a 13 a 23 b b 12

85 Sąsiedztwo GPP Podejście alternatywne - generowanie rozwiązań niedopuszczalnych V 1 V 2. V1, j V F(V 1, V 2 ) = + ( V 1 - V 2 ) 2 i 2 E ij - dodatnia stała (kara za niedopuszczalny podział). Sąsiedztwo wszystkie takie podziały (V 1, V 2 ), że V 1 = V 1 {x} i V 2 = V 2 \{x} lub V 1 = V 1 \{y} i V 2 = V 2 {y}, x V 2, y V 1.

86 Przeszukiwanie lokalne Eksploracja sąsiedztwa x 1. Wybierz rozwiązanie w S i oceń je, zdefiniuj jako rozwiązanie bieżące 2. Dokonaj generacji nowego rozwiązania z rozwiązania bieżącego i oceń je 3. Jeśli nowe rozwiązanie jest lepsze zdefiniuj jako rozwiązanie bieżące, w przeciwnym wypadku odrzuć 4. Powtarzaj kroki 2 i 3 dopóki można uzyskać poprawę

87 Lokalne optimum x min jest lokalnym minimum jeśli f(x min ) f(y), dla wszystkich y N(x min ) x max jest lokalnym maksimum jeśli f(x max ) f(y), dla wszystkich y N(x max )

88 Lokalne przeszukiwanie Wersja zachłanna Wygeneruj rozwiązanie x powtarzaj dla każdego y N(x) w losowej kolejności jeżeli f(y) > f(x) to x := y dopóki nie znaleziono lepszego rozwiązania Wersja stroma Wygeneruj rozwiązanie x powtarzaj znajdź najlepsze rozwiązanie y N(x) jeżeli f(y) > f(x) to x := y dopóki nie znaleziono lepszego rozwiązania

89 Efektywność lokalnego przeszukiwania więcej rozwiązań jest ocenianych niż akceptowanych wersja stroma wersja zachłanna ocena rozwiązań sąsiednich jest operacją krytyczną z punktu widzenia efektywności algorytmu

90 Efektywność lokalnego przeszukiwania Bezpośrednia implementacja algorytmów LS okazuje się dla wielu typowych problemów bardzo nieefektywna Rozwiązania należące do sąsiedztwa są jawnie konstruowane przed ich oceną kosztowna operacja Większość ocenionych rozwiązań nie zostaje akceptowana - nie warto ich jawnie konstruować, wystarczy znać ich wartość f. celu

91 Efektywność lokalnego przeszukiwania Czy można obliczyć wartość f. celu bez konstrukcji rozwiązania? f m (x)

92 Efektywne przeglądanie sąsiedztwa (delta) Wersja stroma Wygeneruj rozwiązanie x powtarzaj znajdź najlepszy ruch m M(x) to jeżeli f(m(x)) > f(x) x := m(x) dopóki nie znaleziono lepszego rozwiązania Ocenia się ruchy (zmianę f. celu), nie rozwiązania! Rozwiązania sąsiednie nie muszą być jawnie konstruowane! Dopiero tu modyfikowane jest rozwiązanie

93 Ocena ruchów problem komiwojażera (TSP) Ocena ruchu: Różnica kosztów dwóch dodawanych i dwóch usuwanych łuków

94 Problem marszrutyzacji pojazdów (vehicle routing problem VRP) Należy odwiedzić wszystkie wierzchołki korzystając ze zbioru pojazdów

95 Rozwiązanie i lokalny ruch/modyfikacja rozwiązania Ruch to przesunięcie wierzchołka pomiędzy trasami Ruch modyfikuje zawsze tylko dwie trasy

96 Koncepcja sąsiedztwa Sąsiedztwo N(x) zbiór rozwiązań, które można uzyskać lokalnie modyfikując x Ruch m lokalna modyfikacja x do y, y = m(x) M(x) zbiór ruchów, które można zastosować do x N(x) = {y m M(x) y = m(x)} Ruchy powinny modyfikować rozwiązania lokalnie w przestrzeni rozwiązań i funkcji celu Rozmiar M(x) (N(x)) powinien być dużo mniejszy od całej przestrzeni rozwiązań

97 Lokalne przeszukiwanie w wersji stromej Wygeneruj rozwiązanie x powtarzaj znajdź najlepsze rozwiązanie y N(x) jeżeli f(y) > f(x) to x := y (zaakceptuj y) dopóki nie znaleziono lepszego rozwiązania po przejrzeniu całego sąsiedztwa

98 Zakładamy, że utworzenie trasy od podstaw jest tak samo czasochłonne jak jej modyfikacja traktowane jako operacja elementarna jednostka czasu Złożoność jednej iteracji lokalnego przeszukiwania przy najprostszej implementacji W liczba wierzchołków T liczba pojazdów/tras Liczba ruchów M(x) = W(T-1) Nakład na stworzenie rozwiązania sąsiedniego T- tyle tras jest tworzonych w rozwiązaniu sąsiednim Złożoność jednej iteracji T W(T-1)

99 Efektywne ocenianie ruchów (delta) Większość ruchów jest tylko oceniana, a nie wykonywana Ocena ruchu wymaga zmodyfikowania dwóch tras Nakład na ocenienie ruchu 2 (modyfikowane są dwie trasy) Złożoność jednej iteracji 2 W(T-1)

100 Wykorzystanie ocen ruchów z poprzednich iteracji Dla y N(x) z reguły N(x) N(y)= lub N(x) N(y) << N(x) Ale M(x) M(y) może być liczny tzn. wiele ruchów pozostaje taka sama po wykonaniu ruchu

101 Wykorzystanie ocen ruchów, z poprzednich iteracji A B Ruch zaakceptowany w poprzedniej iteracji Ruch oceniony w poprzedniej iteracji Oceny wszystkich ruchów nie dotyczących tras A i B pozostają te same

102 Każdy ruch modyfikuje tylko dwie trasy Wszystkie ruchy pomiędzy niezmodyfikowanymi trasami pozostają takie same W zmodyfikowanych trasach znajduje się średnio 2W /T wierzchołków. Każdy z nich możemy przesunąć do jednej zt 1 tras W pozostałych trasach znajduje się średnio W - 2W / T wierzchołków. Każdy z nich możemy przesunąć do jednej z dwóch zmienionych tras (pozostałe ruchy już oceniliśmy) Po zaakceptowaniu nowego rozwiązania, należy więc ocenić średnio tylko (2W/T )(T-1) +2(W - 2W / T) 4W ruchów Złożoność jednej iteracji 8 W (zmienionych tras) Wykorzystanie ocen ruchów z poprzednich iteracji dla VRP

103 Efekt Poprawa efektywności (z wyjątkiem pierwszej iteracji) w stosunku do wersji podstawowej T W(T-1) / 8 W = T (T-1) / 8

104 Pomijanie złych ruchów na podstawie reguł heurystycznych Technika znana także pod nazwą candidate moves ruchy kandydackie W sąsiedztwie ocenia się ruchy kandydackie Pozostałe ruchy pomija się lub ocenia się z niewielkim prawdopodobieństwem

105 Pomijanie złych ruchów na podstawie reguł heurystycznych TSP dla każdego wierzchołka tworzymy listę N << N najbliższych wierzchołków Ruchy kandydackie wprowadzają tylko łuki prowadzące do najbliższych wierzchołków

106 Standardowe przeglądanie sąsiedztwa TSP wymiana dwóch łuków Wersja steepest Dla każdego wierzchołka n1 od 0 do N-1 Dla każdego wierzchołka n2 od n1+1 do N-1 jeżeli łuki n1-następnik(n1) i n2-następnik(n2) nie są sąsiednie Sprawdź czy ruch (n1, n2) przynosi poprawę i jest najlepszym dotąd znalezionym

107 Przeglądanie sąsiedztwa TSP z ruchami kandydackimi wymiana dwóch łuków Wersja steepest Dla każdego wierzchołka n1 od 0 do N-1 Dla każdego łuku kandydackiego n1-n2 sprawdź wszystkie ruchy polegające do dodaniu łuku n1-n2 i usunięciu jednego z obecnych łuków łączących n1

108 Ruchy kandydackie w TSP n1 n2

109 Pomijanie złych ruchów na podstawie reguł heurystycznych W VRP można rozważać tylko ruchy pomiędzy blisko położonymi trasami Base Dumping sites Route of vehicle 1 Route of vehicle 2 Route of vehicle

110 Ruchy kandydackie w TSP na podstawie znanych rozwiązań Generujemy pewną liczbę rozwiązań stosują heurystykę lub lokalne przeszukiwanie bez ruchów kandydackich Każdy łuk, który wystąpi choć raz w jednym z tych rozwiązań staje się łukiem kandydackim

111 Pomijanie złych ruchów na podstawie reguł heurystycznych Ruchy złe i kandydackie mogą być identyfikowane na podstawie działania metody wyższego rzędu Pamięć długoterminowa w Lista dobrych łuków w TSP Lista łuków występujących w ruchach przynoszących poprawę Wykorzystanie informacji z operatorów rekombinacji Np. do ruchów kandydackich zalicza się ruchy wprowadzające łuki występujące o dowolnego z rodziców (nawet jeżeli nie znalazły się one w potomku)

112 Techniki zaawansowane Np. przeglądanie sąsiedztwa o rozmiarze wykładniczym w czasie wielomianowym Wygeneruj rozwiązanie x powtarzaj znajdź najlepszy ruch m M(x) jeżeli f(m(x)) > f(x) to x := m(x) dopóki nie znaleziono lepszego rozwiązania Problem optymalizacji

113 Wady lokalnego przeszukiwania kończą działanie w optimum lokalnym (poza przypadkiem dokładnej struktury sąsiedztwa) dokładne sąsiedztwa są w większości przypadków nie praktyczne ponieważ sprowadzają się do kompletnego przeszukania przestrzeni rozwiązań dopuszczalnych, jakość rozwiązań w dużej mierze zależy od wyboru rozwiązania startowego dla większości problemów nie ma żadnych wskazań do tego jak odpowiednio wybrać rozwiązanie startowe

114 Zalety lokalnego przeszukiwania są elastyczne można stosować dla każdego problemu optymalizacji kombinatorycznej

115 Unikanie wad algorytmów lokalnego przeszukiwania wprowadzenie bardziej złożonej definicji sąsiedztwa w celu możliwości przeszukania większej części przestrzeni rozwiązań dopuszczalnych ograniczone akceptowanie pogorszeń funkcji celu wykonanie algorytmu lokalnego przeszukiwania dla dużej liczby rozwiązań startowych dobre rozwiązania startowe

116 Multiple start local search Lokalne przeszukiwanie z różnych punktów startowych Powtarzaj Wygeneruj zrandomizowane rozwiązanie startowe x Lokalne przeszukiwanie (x) Do spełnienia warunków stopu Zwróć najlepsze znalezione rozwiązanie

117 Variable neighborhood Local Search - Lokalne przeszukiwanie ze zmiennym sąsiedztwem Obserwacje: Lokalne optimum dla pewnego typu sąsiedztwa nie musi być lokalnym optimum dla innego typu sąsiedztwa Globalne optimum jest lokalnym optimum dla wszystkich możliwych sąsiedztw

118 Variable neighborhood Local Search - Lokalne przeszukiwanie ze zmiennym sąsiedztwem Wejście lista sąsiedztw (N 1,N 2, ) Wygeneruj rozwiązanie początkowe x Dla wszystkich sąsiedztw N=(N 1,N 2, ) x := Lokalne przeszukiwanie (x, N)

119 Iterated local search - Iteracyjne przeszukiwanie lokalne Wygeneruj rozwiązanie początkowe x x := Lokalne przeszukiwanie (x) Powtarzaj Perturbacja (x) y := Lokalne przeszukiwanie (x) Jeżeli f(y) > f(x) to x := y Do spełnienia warunków stopu

120 Perturbacja Zrandomizowana modyfikacja wykraczająca poza bieżące sąsiedztwo nieosiągalna w jednym ruchu, np.: Złożenie kilku ruchów Większy ruch (np. wymania większej liczby łuków dla TS)

121 Iterated local search - Iteracyjne przeszukiwanie lokalne Perturbacja Lokalne przeszukiwanie Rozwiązanie początkowe

122 Adaptive multistart local search Po każdym uruchomieniu przeszukiwania lokalnego aktualizowana jest tablica częstości występowania poszczególnych łuków w lokalnych optimach Nowe rozwiązania startowe są tworzone przy wykorzystaniu tych danych większe prawdopodobieństwo wybrania częstych łuków

123 Large-scale neighborhood search Ruch polega na złożeniu dwóch metod: Destroy Repair W ogólności mogą one powodować duże zmiany rozwiązania

124 Large-scale neighborhood search Destroy niszczy część rozwiązania Np. usuwa część wierzchołków z tras problemu VRP Często łączenie losowości z wyborem heurystycznym staramy się usuwać wierzchołki (fragmenty tras), które mogą być źle przydzielone Repair ukierunkowana (funkcją celu) naprawa rozwiązania Może to być heurystyka lub nawet metoda dokładna

125 Adaptive (Large-scale neighborhood) local search Możemy wykonywać wiele różnych typów ruchów (operatorów) Ich prawdopodobieństwo jest automatycznie modyfikowane na podstawie efektów stosowania poszczególnych operatorów (np. prawdopodobieństwa uzyskania nowego lepszego rozwiązania)

126 Kryteria stopu Liczba iteracji / czas obliczeń Kryterium dynamiczne brak poprawy w zadanej liczbie iteracji / zadanym czasie obliczeń

127 Techniki optymalizacji Symulowane wyżarzanie

128 Wyżarzanie wzrost temperatury gorącej kąpieli do takiej wartości, w której ciało stałe topnieje powolne zmniejszanie temperatury do chwili, w której cząsteczki ułożą się wzajemnie i osiągną (ang. ground state) temperaturę zerową

129 Algorytm Metropolis Metropolis i in. (1953) - algorytm statystycznego symulowania (Monte Carlo) zmian ciała stałego w gorącej kąpieli aż do stanu termicznej równowagi Losowa generacja sekwencji stanów ciała stałego: stan i ciała stałego i jego energia Ei, perturbacja (małe zniekształcenie) następny stan. Energia następnego stanu wynosi Ej. jeśli Ej - Ei 0, stan j jest akceptowany jako stan bieżący w przeciwnym wypadku, stan j jest akceptowany z pewnym prawdopodobieństwem: Ei E exp kbt j T temperatura kąpieli k B stała Boltzmanna

130 Analogie do optymalizacji System fizyczny stan energia stan stały temperatura szybkie schładzanie powolne schładzanie Problem optymalizacji rozwiązanie koszt optimum parametr kontrolny T lokalna optymalizacja symulowanie wyżarzanie

131 Symulowane wyżarzanie Simulated annealing, Monte Carlo annealing, probabilistic hill climbing, stochastic relaxation Zastosowanie algorytmu Metropolis do optymalizacji kombinatorycznej.

132 Lokalne przeszukiwanie wersja zachłanna Wygeneruj rozwiązanie x powtarzaj dla każdego y N(x) w losowej kolejności jeżeli f(y) > f(x) to x := y dopóki nie znaleziono lepszego rozwiązania

133 Kryterium akceptacji (maksymalizacja) x, y rozwiązania kryterium akceptacji określa czy y uzyskane x i jest akceptowane P c {accept y} 1 exp f ( y) T f ( x) jesli jesli f( y) f( y) f( x) f( x)

134 Wpływ temperatury Wysoka temperatura, p 1, random walk błądzenie przypadkowe Niska temperatura, p 0 dla gorszych rozwiązań, lokalne przeszukiwanie (z akceptacją ruchów nie zmieniających funkcji celu)

135 Procedura SW wygeneruj rozwiązanie x T := T 0 powtarzaj powtarzaj L razy Wygeneruj losowe y N(x) obniż T jeżeli f(y) > f(x) to x := y w przeciwnym wypadku jeżeli exp ((f(y) - f(x)) / T) > random [0,1) x := y dopóki T <= T K Zwróć najlepsze wygenerowane rozwiązanie

136 Zbieżność algorytmu SW Można uzyskać takie L i T k, które zapewniają zbieżność SW do opt. Dobre przybliżenie SW generowanie homogenicznych łańcuchów Markowa skończonej długości dla skończonej sekwencji malejących wartości parametru kontrolnego

137 Łańcuch Markowa Łańcuch Markowa jest sekwencją prób (rozwiązań), w której prawdopodobieństwo wyniku danej próby zależy od wyniku poprzedniej próby. Łańcuch Markowa jest niehomogeniczny jeśli prawdopodobieństwo przejścia zależy od numeru próby k. Jeśli nie zależy łańcuch Markowa jest homogeniczny.

138 Sposób chłodzenia określa skończona sekwencja wartości parametru kontrolnego, tj. początkowa wartość parametru kontrolnego T 0 funkcja dekrementacji parametru kontrolnego końcowa wartość parametru kontrolnego skończona liczba przejść dla każdej wartości parametru kontrolnego, tj. skończona długość każdego homogenicznego łańcucha Markowa

139 Sposób chłodzenia Kirkpatricka, Gelatta i Vecchi ego Wartość początkowa parametru kontrolnego Wartość c 0 powinna być odpowiednio wysoka by zapewnić akceptację wszystkich przejść (początkowy współczynnik akceptacji jest bliski 1). Zależy od problemu (patrz formuła: f, T 0 ) Np. f = 1000, p 0,98 dla T 0 = 250 Podgrzewanie Zmniejszanie wartości parametru kontrolnego T k+1 = T k, k = 1, 2,... T k+1 = k T 0 jest stałą mniejszą ale bliską 1. ( )

140 Sposób chłodzenia L k = L

141 Długość łańcucha Markowa Powinna być odpowiednia, tak by algorytm mógł odwiedzić wszystkich swoich sąsiadów przynajmniej raz (osiągnąć stan równowagi termicznej na każdym poziomie temperatury). Związek ze średnim rozmiarem sąsiedztwa. Ponieważ prawdopodobieństwo akceptacji zmniejsza się w czasie, można by się spodziewać, że L k dla T k 0. Dlatego istnieje pewne ograniczenie na długość łańcucha Markowa dla małych T k.

142 Wartość końcowa parametru kontrolnego Algorytm kończy działanie, gdy wartość funkcji celu otrzymanego rozwiązania w ostatniej próbie łańcucha Markowa nie uległa zmianie dla kilku kolejnych łańcuchów

143 Algorytm Great Deluge Wielka powódź wygeneruj rozwiązanie x Poziom wody P := P 0 powtarzaj powtarzaj L razy Wygeneruj losowe y N(x) jeżeli f(y) > P to x := y podwyższ P dopóki P <= P K Zwróć najlepsze wygenerowane rozwiązanie

144 Great Deluge

145 Techniki optymalizacji Przeszukiwanie tabu

146 Obserwacje Lokalne optima nie muszą być dobrymi rozwiązaniami Lokalne optima mogą się grupować, leżeć blisko siebie

147 Lokalne przeszukiwanie wersja stroma Wersja stroma wygeneruj rozwiązanie x powtarzaj znajdź najlepszy ruch m M(x) jeżeli f(m(x)) > f(x) to x := m(x) Czy można z tego zrezygnować? dopóki nie znaleziono lepszego rozwiązania

148 Przeszukiwanie tabu Główna idea wykorzystanie pamięci Zapamiętywanie rozwiązań czy ruchów

149 Najprostszy sposób unikania cykli Zapamiętuj wszystkie odwiedzone dotąd rozwiązania Rozwiązania te stają się zakazane Tabu Dla poprawy efektywności można zachowywać wartości haszowe i wyszukiwanie przez połowienie Może prowadzić do krążenia wokół bardzo podobnych rozwiązań

150 Lista Tabu Lista K ostatnich ruchów (elementów ruchów), które są zakazane

151 Algorytm przeszukiwania Tabu Tabu search wygeneruj rozwiązanie x lista Tabu T:=Ø powtarzaj znajdź najlepszy ruch m M(x) m T x := m(x) uaktualnij listę Tabu (T, m) dopóki warunek stopu Zwróć najlepsze wygenerowane rozwiązanie

152 Lista Tabu kolejka FiFo (a,b) (c,d) (a,b) (e,f) (g,h) (c,d) (a,b) (e,bf (c,d) (a,b) (i,j) (g,h) (e,f) (c,d) (a,b) (k,l) (i,j) (g,h) (e,f) (c,d)

153 Stopnie swobody Co przechowywać na liście Tabu? Ruchy Składowe ruchów Jak blokować ruchy? Dokładne dopasowanie Ruchy odwrotne Ruchy częściowo się pokrywające Długość listy Tabu

154 Ruchy na liście Tabu Wymiana dwóch łuków Pary łuków Wymiana dwóch wierzchołków Pary wierzchołków

155 Składowe ruchów na liście Tabu Wymiana dwóch łuków Poszczególne łuki Wymiana dwóch wierzchołków Poszczególne wierzchołki

156 Blokowanie ruchów dokładne dopasowanie Zakazane są tylko ruchy znajdujące się na liście Tabu, lub odwrotne Stosunkowy mały zakres ograniczeń Wymaga dłuższej listy Tabu

157 Blokowanie ruchów - ruchy częściowo się pokrywające Np. ruch (a,b), blokuje wszystkie ruchy, w których występuje a lub b Naturalne przy przechowywaniu składowych ruchów Stosunkowy duży zakres ograniczeń Wymaga krótszej listy Tabu

158 Długość listy Tabu Krótka lista Bardziej agresywny algorytm Ryzyko wpadnięcia w cykl Długa lista Ryzyko pomijania zbyt wielu ruchów Może nawet uniemożliwiać dojście do lokalnego optimum

159 Reactive Tabu Search automatyczne modyfikowanie długości listy Tabu Stałe, powolne zmniejszanie długości listy Co L iteracji zmniejszana jest długość listy Tabu Zwiększanie długości listy w przypadku wpadnięcia w cykl Wymaga zachowywania odwiedzonych rozwiązań

160 Kryteria aspiracji Lista Tabu może blokować zbyt wiele ruchów/rozwiązań Ruchy/rozwiązania Tabu, które są bardzo dobre spełniają kryteria aspiracji mogą zostać zaakceptowane Najprostsze kryterium aspiracji akceptuj rozwiązania lepsze od najlepszego znalezionego dotąd, nawet jeżeli są Tabu Takie rozwiązania na pewno nie zostały dotąd odwiedzone

161 Naturalny sposób powstania algorytmu Algorytm największego spadku Lista tabu Przeszukiwanie tabu niezdolność wyjścia z lok. opt. cykle za dużo zakazanych ruchów Ulepszony alg. największego spadku Poziom aspiracji akceptacja ruchów niepolepszających, wybór najlepszego rozwiązania z V* akceptacja atrakcyjnych ruchów zakazanych

162 Przykład zapamiętywania ruchów tabu

163

164

165 Pamięć długoterminowa long term memory Np.: Tablica częstości występowania poszczególnych łuków w odwiedzanych rozwiązaniach Tablica częstości ruchów przynoszących poprawę

166 Zastosowania pamięci długoterminowej Restarty tworzenie nowych rozwiązań: Dywersyfikacja rozwiązania startowe odległe od dotychczas odwiedzanych Intensyfikacja rozwiązania startowe podobne do najlepszych dotąd odwiedzanych Definiowanie ruchów kandydackich

Techniki optymalizacji

Techniki optymalizacji Techniki optymalizacji Dokładne algorytmy optymalizacji Maciej Hapke maciej.hapke at put.poznan.pl Problem optymalizacji kombinatorycznej Problem optymalizacji kombinatorycznej jest problemem minimalizacji

Bardziej szczegółowo

Techniki optymalizacji

Techniki optymalizacji Techniki optymalizacji Symulowane wyżarzanie Maciej Hapke maciej.hapke at put.poznan.pl Wyżarzanie wzrost temperatury gorącej kąpieli do takiej wartości, w której ciało stałe topnieje powolne zmniejszanie

Bardziej szczegółowo

Optymalizacja. Symulowane wyżarzanie

Optymalizacja. Symulowane wyżarzanie dr hab. inż. Instytut Informatyki Politechnika Poznańska www.cs.put.poznan.pl/mkomosinski, Maciej Hapke Wyżarzanie wzrost temperatury gorącej kąpieli do takiej wartości, w której ciało stałe topnieje powolne

Bardziej szczegółowo

Optymalizacja. Przeszukiwanie lokalne

Optymalizacja. Przeszukiwanie lokalne dr hab. inż. Instytut Informatyki Politechnika Poznańska www.cs.put.poznan.pl/mkomosinski, Maciej Hapke Idea sąsiedztwa Definicja sąsiedztwa x S zbiór N(x) S rozwiązań, które leżą blisko rozwiązania x

Bardziej szczegółowo

Metody Optymalizacji: Przeszukiwanie z listą tabu

Metody Optymalizacji: Przeszukiwanie z listą tabu Metody Optymalizacji: Przeszukiwanie z listą tabu Wojciech Kotłowski Instytut Informatyki Politechniki Poznańskiej email: imię.nazwisko@cs.put.poznan.pl pok. 2 (CW) tel. (61)665-2936 konsultacje: wtorek

Bardziej szczegółowo

Techniki optymalizacji

Techniki optymalizacji Techniki optymalizacji Wprowadzenie Maciej Hapke maciej.hapke at put.poznan.pl Literatura D.E. Goldberg Algorytmy genetyczne i zastosowania, WNT, 1995 Z. Michalewicz Algorytmy genetyczne + struktury danych

Bardziej szczegółowo

Optymalizacja. Wybrane algorytmy

Optymalizacja. Wybrane algorytmy dr hab. inż. Instytut Informatyki Politechnika Poznańska www.cs.put.poznan.pl/mkomosinski, Andrzej Jaszkiewicz Problem optymalizacji kombinatorycznej Problem optymalizacji kombinatorycznej jest problemem

Bardziej szczegółowo

Algorytmy metaheurystyczne podsumowanie

Algorytmy metaheurystyczne podsumowanie dr hab. inż. Instytut Informatyki Politechnika Poznańska www.cs.put.poznan.pl/mkomosinski, Andrzej Jaszkiewicz Problem optymalizacji kombinatorycznej Problem optymalizacji kombinatorycznej jest problemem

Bardziej szczegółowo

Przeszukiwanie lokalne

Przeszukiwanie lokalne Przeszukiwanie lokalne 1. Klasyfikacja algorytmów 2. Przeszukiwanie lokalne 1. Klasyfikacja algorytmów Algorytmy dokładne znajdują rozwiązanie optymalne, 1. Klasyfikacja algorytmów Algorytmy dokładne znajdują

Bardziej szczegółowo

Techniki optymalizacji

Techniki optymalizacji Techniki optymalizacji Metaheurystyki oparte na algorytmach lokalnego przeszukiwania Maciej Hapke maciej.hapke at put.poznan.pl GRASP Greedy Randomized Adaptive Search Procedure T.A. Feo, M.G.C. Resende,

Bardziej szczegółowo

Wybrane podstawowe rodzaje algorytmów

Wybrane podstawowe rodzaje algorytmów Wybrane podstawowe rodzaje algorytmów Tomasz Głowacki tglowacki@cs.put.poznan.pl Zajęcia finansowane z projektu "Rozwój i doskonalenie kształcenia na Politechnice Poznańskiej w zakresie technologii informatycznych

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

Algorytm memetyczny dla rzeczywistego problemu planowania tras pojazdów

Algorytm memetyczny dla rzeczywistego problemu planowania tras pojazdów Algorytm memetyczny dla rzeczywistego problemu planowania tras pojazdów Andrzej Jaszkiewicz, Przemysław Wesołek 3 grudnia 2013 Kontekst problemu Firma dystrybucyjna Kilka statystyk (wiedza z danych miesięcznych)

Bardziej szczegółowo

Optymalizacja. Przeszukiwanie tabu

Optymalizacja. Przeszukiwanie tabu dr inż. Instytut Informatyki Politechnika Poznańska www.cs.put.poznan.pl/mkomosinski, Maciej Hapke Naturalny sposób powstania algorytmu Algorytm największego spadku niezdolność wyjścia z lokalnych optimów!

Bardziej szczegółowo

Heurystyki. Strategie poszukiwań

Heurystyki. Strategie poszukiwań Sztuczna inteligencja Heurystyki. Strategie poszukiwań Jacek Bartman Zakład Elektrotechniki i Informatyki Instytut Techniki Uniwersytet Rzeszowski DLACZEGO METODY PRZESZUKIWANIA? Sztuczna Inteligencja

Bardziej szczegółowo

Optymalizacja. Przeszukiwanie tabu

Optymalizacja. Przeszukiwanie tabu dr hab. inż. Instytut Informatyki Politechnika Poznańska www.cs.put.poznan.pl/mkomosinski, Maciej Hapke Naturalny sposób powstania algorytmu Algorytm optymalizacji lokalnej Niezdolność wyjścia z lokalnych

Bardziej szczegółowo

SZTUCZNA INTELIGENCJA

SZTUCZNA INTELIGENCJA SZTUCZNA INTELIGENCJA WYKŁAD 13. PROBLEMY OPTYMALIZACYJNE Częstochowa 2014 Dr hab. inż. Grzegorz Dudek Wydział Elektryczny Politechnika Częstochowska PROBLEMY OPTYMALIZACYJNE Optymalizacja poszukiwanie

Bardziej szczegółowo

Zaawansowane programowanie

Zaawansowane programowanie Zaawansowane programowanie wykład 3: inne heurystyki prof. dr hab. inż. Marta Kasprzak Instytut Informatyki, Politechnika Poznańska Heurystyką nazywamy algorytm (metodę) zwracający rozwiązanie przybliżone.

Bardziej szczegółowo

OSTASZEWSKI Paweł (55566) PAWLICKI Piotr (55567) Algorytmy i Struktury Danych PIŁA

OSTASZEWSKI Paweł (55566) PAWLICKI Piotr (55567) Algorytmy i Struktury Danych PIŁA OSTASZEWSKI Paweł (55566) PAWLICKI Piotr (55567) 16.01.2003 Algorytmy i Struktury Danych PIŁA ALGORYTMY ZACHŁANNE czas [ms] Porównanie Algorytmów Rozwiązyjących problem TSP 100 000 000 000,000 10 000 000

Bardziej szczegółowo

Tabu Search (Poszukiwanie z zakazami)

Tabu Search (Poszukiwanie z zakazami) Tabu Search (Poszukiwanie z zakazami) Heurystyka - technika znajdująca dobre rozwiązanie problemu (np. optymalizacji kombinatorycznej) przy rozsądnych (akceptowalnych z punktu widzenia celu) nakładach

Bardziej szczegółowo

ALGORYTMY EWOLUCYJNE W OPTYMALIZACJI JEDNOKRYTERIALNEJ

ALGORYTMY EWOLUCYJNE W OPTYMALIZACJI JEDNOKRYTERIALNEJ ALGORYTMY EWOLUCYJNE W OPTYMALIZACJI JEDNOKRYTERIALNEJ Zalety: nie wprowadzają żadnych ograniczeń na sformułowanie problemu optymalizacyjnego. Funkcja celu może być wielowartościowa i nieciągła, obszar

Bardziej szczegółowo

Optymalizacja ciągła

Optymalizacja ciągła Optymalizacja ciągła 5. Metoda stochastycznego spadku wzdłuż gradientu Wojciech Kotłowski Instytut Informatyki PP http://www.cs.put.poznan.pl/wkotlowski/ 04.04.2019 1 / 20 Wprowadzenie Minimalizacja różniczkowalnej

Bardziej szczegółowo

Algorytmy memetyczne (hybrydowe algorytmy ewolucyjne)

Algorytmy memetyczne (hybrydowe algorytmy ewolucyjne) Algorytmy memetyczne (hybrydowe algorytmy ewolucyjne) 1 2 Wstęp Termin zaproponowany przez Pablo Moscato (1989). Kombinacja algorytmu ewolucyjnego z algorytmem poszukiwań lokalnych, tak że algorytm poszukiwań

Bardziej szczegółowo

Algorytm genetyczny (genetic algorithm)-

Algorytm genetyczny (genetic algorithm)- Optymalizacja W praktyce inżynierskiej często zachodzi potrzeba znalezienia parametrów, dla których system/urządzenie będzie działać w sposób optymalny. Klasyczne podejście do optymalizacji: sformułowanie

Bardziej szczegółowo

Schemat programowania dynamicznego (ang. dynamic programming)

Schemat programowania dynamicznego (ang. dynamic programming) Schemat programowania dynamicznego (ang. dynamic programming) Jest jedną z metod rozwiązywania problemów optymalizacyjnych. Jej twórcą (1957) był amerykański matematyk Richard Ernest Bellman. Schemat ten

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

Techniki optymalizacji

Techniki optymalizacji Techniki optymalizacji Algorytm kolonii mrówek Idea Smuga feromonowa 1 Sztuczne mrówki w TSP Sztuczna mrówka agent, który porusza się z miasta do miasta Mrówki preferują miasta połączone łukami z dużą

Bardziej szczegółowo

Zadanie transportowe i problem komiwojażera. Tadeusz Trzaskalik

Zadanie transportowe i problem komiwojażera. Tadeusz Trzaskalik Zadanie transportowe i problem komiwojażera Tadeusz Trzaskalik 3.. Wprowadzenie Słowa kluczowe Zbilansowane zadanie transportowe Rozwiązanie początkowe Metoda minimalnego elementu macierzy kosztów Metoda

Bardziej szczegółowo

Metody Rozmyte i Algorytmy Ewolucyjne

Metody Rozmyte i Algorytmy Ewolucyjne mgr inż. Wydział Matematyczno-Przyrodniczy Szkoła Nauk Ścisłych Uniwersytet Kardynała Stefana Wyszyńskiego Podstawy optymalizacji Plan prezentacji 1 Podstawy matematyczne 2 3 Eliminacja ograniczeń Metody

Bardziej szczegółowo

Wstęp do Sztucznej Inteligencji

Wstęp do Sztucznej Inteligencji Wstęp do Sztucznej Inteligencji Rozwiązywanie problemów-i Joanna Kołodziej Politechnika Krakowska Wydział Fizyki, Matematyki i Informatyki Rozwiązywanie problemów Podstawowe fazy: Sformułowanie celu -

Bardziej szczegółowo

Metody przeszukiwania

Metody przeszukiwania Metody przeszukiwania Co to jest przeszukiwanie Przeszukiwanie polega na odnajdywaniu rozwiązania w dyskretnej przestrzeni rozwiązao. Zwykle przeszukiwanie polega na znalezieniu określonego rozwiązania

Bardziej szczegółowo

Tomasz M. Gwizdałła 2012/13

Tomasz M. Gwizdałła 2012/13 METODY METODY OPTYMALIZACJI OPTYMALIZACJI Tomasz M. Gwizdałła 2012/13 Informacje wstępne Tomasz Gwizdałła Katedra Fizyki Ciała Stałego UŁ Pomorska 149/153, p.523b tel. 6355709 tomgwizd@uni.lodz.pl http://www.wfis.uni.lodz.pl/staff/tgwizdalla

Bardziej szczegółowo

METODY OPTYMALIZACJI. Tomasz M. Gwizdałła 2018/19

METODY OPTYMALIZACJI. Tomasz M. Gwizdałła 2018/19 METODY OPTYMALIZACJI Tomasz M. Gwizdałła 2018/19 Informacje wstępne Tomasz Gwizdałła Katedra Fizyki Ciała Stałego UŁ Pomorska 149/153, p.524b tel. 6355709 tomgwizd@uni.lodz.pl http://www.wfis.uni.lodz.pl/staff/tgwizdalla

Bardziej szczegółowo

Problem Komiwojażera - algorytmy metaheurystyczne

Problem Komiwojażera - algorytmy metaheurystyczne Problem Komiwojażera - algorytmy metaheurystyczne algorytm mrówkowy algorytm genetyczny by Bartosz Tomeczko. All rights reserved. 2010. TSP dlaczego metaheurystyki i heurystyki? TSP Travelling Salesman

Bardziej szczegółowo

Grupowanie Witold Andrzejewski, Politechnika Poznańska, Wydział Informatyki 201/633

Grupowanie Witold Andrzejewski, Politechnika Poznańska, Wydział Informatyki 201/633 Grupowanie Grupowanie 7 6 5 4 y 3 2 1 0-3 -2-1 0 1 2 3 4 5-1 -2-3 -4 x Witold Andrzejewski, Politechnika Poznańska, Wydział Informatyki 201/633 Wprowadzenie Celem procesu grupowania jest podział zbioru

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

Klasyczne zagadnienie przydziału

Klasyczne zagadnienie przydziału Klasyczne zagadnienie przydziału Można wyodrębnić kilka grup problemów, w których zadaniem jest odpowiednie rozmieszczenie posiadanych zasobów. Najprostszy problem tej grupy nazywamy klasycznym zagadnieniem

Bardziej szczegółowo

Układy stochastyczne

Układy stochastyczne Instytut Informatyki Uniwersytetu Śląskiego 21 stycznia 2009 Definicja Definicja Proces stochastyczny to funkcja losowa, czyli funkcja matematyczna, której wartości leżą w przestrzeni zdarzeń losowych.

Bardziej szczegółowo

Zadania laboratoryjne i projektowe - wersja β

Zadania laboratoryjne i projektowe - wersja β Zadania laboratoryjne i projektowe - wersja β 1 Laboratorium Dwa problemy do wyboru (jeden do realizacji). 1. Water Jug Problem, 2. Wieże Hanoi. Water Jug Problem Ograniczenia dla każdej z wersji: pojemniki

Bardziej szczegółowo

operacje porównania, a jeśli jest to konieczne ze względu na złe uporządkowanie porównywanych liczb zmieniamy ich kolejność, czyli przestawiamy je.

operacje porównania, a jeśli jest to konieczne ze względu na złe uporządkowanie porównywanych liczb zmieniamy ich kolejność, czyli przestawiamy je. Problem porządkowania zwanego również sortowaniem jest jednym z najważniejszych i najpopularniejszych zagadnień informatycznych. Dane: Liczba naturalna n i ciąg n liczb x 1, x 2,, x n. Wynik: Uporządkowanie

Bardziej szczegółowo

Algorytmy zrandomizowane

Algorytmy zrandomizowane Algorytmy zrandomizowane http://zajecia.jakubw.pl/nai ALGORYTMY ZRANDOMIZOWANE Algorytmy, których działanie uzależnione jest od czynników losowych. Algorytmy typu Monte Carlo: dają (po pewnym czasie) wynik

Bardziej szczegółowo

Programowanie dynamiczne i algorytmy zachłanne

Programowanie dynamiczne i algorytmy zachłanne Programowanie dynamiczne i algorytmy zachłanne Tomasz Głowacki tglowacki@cs.put.poznan.pl Zajęcia finansowane z projektu "Rozwój i doskonalenie kształcenia na Politechnice Poznańskiej w zakresie technologii

Bardziej szczegółowo

Aproksymacja funkcji a regresja symboliczna

Aproksymacja funkcji a regresja symboliczna Aproksymacja funkcji a regresja symboliczna Problem aproksymacji funkcji polega na tym, że funkcję F(x), znaną lub określoną tablicą wartości, należy zastąpić inną funkcją, f(x), zwaną funkcją aproksymującą

Bardziej szczegółowo

Podejście memetyczne do problemu DCVRP - wstępne wyniki. Adam Żychowski

Podejście memetyczne do problemu DCVRP - wstępne wyniki. Adam Żychowski Podejście memetyczne do problemu DCVRP - wstępne wyniki Adam Żychowski Na podstawie prac X. S. Chen, L. Feng, Y. S. Ong A Self-Adaptive Memeplexes Robust Search Scheme for solving Stochastic Demands Vehicle

Bardziej szczegółowo

ZADANIA OPTYMALIZCJI BEZ OGRANICZEŃ

ZADANIA OPTYMALIZCJI BEZ OGRANICZEŃ ZADANIA OPTYMALIZCJI BEZ OGRANICZEŃ Maciej Patan Uniwersytet Zielonogórski WSTEP Zadanie minimalizacji bez ograniczeń f(ˆx) = min x R nf(x) f : R n R funkcja ograniczona z dołu Algorytm rozwiazywania Rekurencyjny

Bardziej szczegółowo

Wstęp do sieci neuronowych, wykład 12 Łańcuchy Markowa

Wstęp do sieci neuronowych, wykład 12 Łańcuchy Markowa Wstęp do sieci neuronowych, wykład 12 Łańcuchy Markowa M. Czoków, J. Piersa 2012-01-10 1 Łańcucha Markowa 2 Istnienie Szukanie stanu stacjonarnego 3 1 Łańcucha Markowa 2 Istnienie Szukanie stanu stacjonarnego

Bardziej szczegółowo

Metody numeryczne I Równania nieliniowe

Metody numeryczne I Równania nieliniowe Metody numeryczne I Równania nieliniowe Janusz Szwabiński szwabin@ift.uni.wroc.pl Metody numeryczne I (C) 2004 Janusz Szwabiński p.1/66 Równania nieliniowe 1. Równania nieliniowe z pojedynczym pierwiastkiem

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

Podstawy teoretyczne algorytmów metaheurystycznych. Andrzej Jaszkiewicz

Podstawy teoretyczne algorytmów metaheurystycznych. Andrzej Jaszkiewicz Podstawy teoretyczne algorytmów metaheurystycznych Andrzej Jaszkiewicz Iteracyjna poprawa Wygeneruj i oceń początkową populację X Powtarzaj Na podstawie populacji X oraz jej ocen wygeneruj i oceń populację

Bardziej szczegółowo

Modele całkowitoliczbowe zagadnienia komiwojażera (TSP)

Modele całkowitoliczbowe zagadnienia komiwojażera (TSP) & Zagadnienie komowojażera 1 Modele całkowitoliczbowe zagadnienia komiwojażera (TSP) Danych jest miast oraz macierz odległości pomiędzy każdą parą miast. Komiwojażer wyjeżdża z miasta o numerze 1 chce

Bardziej szczegółowo

Wstęp do sieci neuronowych, wykład 11 Łańcuchy Markova

Wstęp do sieci neuronowych, wykład 11 Łańcuchy Markova Wstęp do sieci neuronowych, wykład 11 Łańcuchy Markova M. Czoków, J. Piersa 2010-12-21 1 Definicja Własności Losowanie z rozkładu dyskretnego 2 3 Łańcuch Markova Definicja Własności Losowanie z rozkładu

Bardziej szczegółowo

Algorytmy metaheurystyczne Wykład 6. Piotr Syga

Algorytmy metaheurystyczne Wykład 6. Piotr Syga Algorytmy metaheurystyczne Wykład 6 Piotr Syga 10.04.2017 Wprowadzenie Inspiracje Wprowadzenie ACS idea 1 Zaczynamy z pustym rozwiązaniem początkowym 2 Dzielimy problem na komponenty (przedmiot do zabrania,

Bardziej szczegółowo

Hierarchiczna analiza skupień

Hierarchiczna analiza skupień Hierarchiczna analiza skupień Cel analizy Analiza skupień ma na celu wykrycie w zbiorze obserwacji klastrów, czyli rozłącznych podzbiorów obserwacji, wewnątrz których obserwacje są sobie w jakimś określonym

Bardziej szczegółowo

Techniki Optymalizacji: Stochastyczny spadek wzdłuż gradientu I

Techniki Optymalizacji: Stochastyczny spadek wzdłuż gradientu I Techniki Optymalizacji: Stochastyczny spadek wzdłuż gradientu I Wojciech Kotłowski Instytut Informatyki Politechniki Poznańskiej email: imię.nazwisko@cs.put.poznan.pl pok. 2 (CW) tel. (61)665-2936 konsultacje:

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

Znajdowanie wyjścia z labiryntu

Znajdowanie wyjścia z labiryntu Znajdowanie wyjścia z labiryntu Zadanie to wraz z problemem pakowania najcenniejszego plecaka należy do problemów optymalizacji, które dotyczą znajdowania najlepszego rozwiązania wśród wielu możliwych

Bardziej szczegółowo

Spacery losowe generowanie realizacji procesu losowego

Spacery losowe generowanie realizacji procesu losowego Spacery losowe generowanie realizacji procesu losowego Michał Krzemiński Streszczenie Omówimy metodę generowania trajektorii spacerów losowych (błądzenia losowego), tj. szczególnych procesów Markowa z

Bardziej szczegółowo

Programowanie liniowe

Programowanie liniowe Badania operacyjne Problem Model matematyczny Metoda rozwiązania Znaleźć optymalny program produkcji. Zmaksymalizować 1 +3 2 2 3 (1) Przy ograniczeniach 3 1 2 +2 3 7 (2) 2 1 +4 2 12 (3) 4 1 +3 2 +8 3 10

Bardziej szczegółowo

ZAGADNIENIE TRANSPORTOWE

ZAGADNIENIE TRANSPORTOWE ZAGADNIENIE TRANSPORTOWE ZT jest specyficznym problemem z zakresu zastosowań programowania liniowego. ZT wykorzystuje się najczęściej do: optymalnego planowania transportu towarów, przy minimalizacji kosztów,

Bardziej szczegółowo

Mrówka Pachycondyla apicalis

Mrówka Pachycondyla apicalis Mrówka Pachycondyla apicalis Mrówki Pachycondyla apicalis wystepują w lasach południowego Meksyku, północnej Argentyny i Kostaryki. Wystepuja zarówno w lasach wilgotnych jak i suchych. Mrówki te polują

Bardziej szczegółowo

Optymalizacja. Programowanie Matematyczne

Optymalizacja. Programowanie Matematyczne . dr hab. inż. Instytut Informatyki Politechnika Poznańska www.cs.put.poznan.pl/mkomosinski, Andrzej Jaszkiewicz Zakres tematyczny Metodyka optymalizacja liniowa, całkowitoliczbowa, nieliniowa, heurystyki,

Bardziej szczegółowo

Planowanie drogi robota, algorytm A*

Planowanie drogi robota, algorytm A* Planowanie drogi robota, algorytm A* Karol Sydor 13 maja 2008 Założenia Uproszczenie przestrzeni Założenia Problem planowania trasy jest bardzo złożony i trudny. W celu uproszczenia problemu przyjmujemy

Bardziej szczegółowo

Algorytmy sztucznej inteligencji

Algorytmy sztucznej inteligencji www.math.uni.lodz.pl/ radmat Przeszukiwanie z ograniczeniami Zagadnienie przeszukiwania z ograniczeniami stanowi grupę problemów przeszukiwania w przestrzeni stanów, które składa się ze: 1 skończonego

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

Strefa pokrycia radiowego wokół stacji bazowych. Zasięg stacji bazowych Zazębianie się komórek

Strefa pokrycia radiowego wokół stacji bazowych. Zasięg stacji bazowych Zazębianie się komórek Problem zapożyczania kanałów z wykorzystaniem narzędzi optymalizacji Wprowadzenie Rozwiązanie problemu przydziału częstotliwości prowadzi do stanu, w którym każdej stacji bazowej przydzielono żądaną liczbę

Bardziej szczegółowo

ANALIZA ALGORYTMÓW. Analiza algorytmów polega między innymi na odpowiedzi na pytania:

ANALIZA ALGORYTMÓW. Analiza algorytmów polega między innymi na odpowiedzi na pytania: ANALIZA ALGORYTMÓW Analiza algorytmów polega między innymi na odpowiedzi na pytania: 1) Czy problem może być rozwiązany na komputerze w dostępnym czasie i pamięci? 2) Który ze znanych algorytmów należy

Bardziej szczegółowo

ALHE. prof. Jarosław Arabas semestr 15Z

ALHE. prof. Jarosław Arabas semestr 15Z ALHE prof. Jarosław Arabas semestr 15Z Wykład 5 Błądzenie przypadkowe, Algorytm wspinaczkowy, Przeszukiwanie ze zmiennym sąsiedztwem, Tabu, Symulowane wyżarzanie 1. Błądzenie przypadkowe: Pierwszym krokiem

Bardziej szczegółowo

Jacek Skorupski pok. 251 tel konsultacje: poniedziałek , sobota zjazdowa

Jacek Skorupski pok. 251 tel konsultacje: poniedziałek , sobota zjazdowa Jacek Skorupski pok. 251 tel. 234-7339 jsk@wt.pw.edu.pl http://skorupski.waw.pl/mmt prezentacje ogłoszenia konsultacje: poniedziałek 16 15-18, sobota zjazdowa 9 40-10 25 Udział w zajęciach Kontrola wyników

Bardziej szczegółowo

Algorytmy równoległe. Rafał Walkowiak Politechnika Poznańska Studia inżynierskie Informatyka 2010

Algorytmy równoległe. Rafał Walkowiak Politechnika Poznańska Studia inżynierskie Informatyka 2010 Algorytmy równoległe Rafał Walkowiak Politechnika Poznańska Studia inżynierskie Informatyka Znajdowanie maksimum w zbiorze n liczb węzły - maksimum liczb głębokość = 3 praca = 4++ = 7 (operacji) n - liczność

Bardziej szczegółowo

Optymalizacja ciągła

Optymalizacja ciągła Optymalizacja ciągła 1. Optymalizacja funkcji jednej zmiennej Wojciech Kotłowski Instytut Informatyki PP http://www.cs.put.poznan.pl/wkotlowski/ 28.02.2019 1 / 54 Plan wykładu Optymalizacja funkcji jednej

Bardziej szczegółowo

1 Metody rozwiązywania równań nieliniowych. Postawienie problemu

1 Metody rozwiązywania równań nieliniowych. Postawienie problemu 1 Metody rozwiązywania równań nieliniowych. Postawienie problemu Dla danej funkcji ciągłej f znaleźć wartości x, dla których f(x) = 0. (1) 2 Przedział izolacji pierwiastka Będziemy zakładać, że równanie

Bardziej szczegółowo

Algorytm simplex i dualność

Algorytm simplex i dualność Algorytm simplex i dualność Łukasz Kowalik Instytut Informatyki, Uniwersytet Warszawski April 15, 2016 Łukasz Kowalik (UW) LP April 15, 2016 1 / 35 Przypomnienie 1 Wierzchołkiem wielościanu P nazywamy

Bardziej szczegółowo

Algorytmy genetyczne

Algorytmy genetyczne 9 listopada 2010 y ewolucyjne - zbiór metod optymalizacji inspirowanych analogiami biologicznymi (ewolucja naturalna). Pojęcia odwzorowujące naturalne zjawiska: Osobnik Populacja Genotyp Fenotyp Gen Chromosom

Bardziej szczegółowo

Zofia Kruczkiewicz, Algorytmu i struktury danych, Wykład 14, 1

Zofia Kruczkiewicz, Algorytmu i struktury danych, Wykład 14, 1 Wykład Algorytmy grafowe metoda zachłanna. Właściwości algorytmu zachłannego:. W przeciwieństwie do metody programowania dynamicznego nie występuje etap dzielenia na mniejsze realizacje z wykorzystaniem

Bardziej szczegółowo

Uczenie sieci typu MLP

Uczenie sieci typu MLP Uczenie sieci typu MLP Przypomnienie budowa sieci typu MLP Przypomnienie budowy neuronu Neuron ze skokową funkcją aktywacji jest zły!!! Powszechnie stosuje -> modele z sigmoidalną funkcją aktywacji - współczynnik

Bardziej szczegółowo

Algorytmy genetyczne dla problemu komiwojażera (ang. traveling salesperson)

Algorytmy genetyczne dla problemu komiwojażera (ang. traveling salesperson) Algorytmy genetyczne dla problemu komiwojażera (ang. traveling salesperson) 1 2 Wprowadzenie Sztandarowy problem optymalizacji kombinatorycznej. Problem NP-trudny. Potrzeba poszukiwania heurystyk. Chętnie

Bardziej szczegółowo

Programowanie dynamiczne cz. 2

Programowanie dynamiczne cz. 2 Programowanie dynamiczne cz. 2 Wykład 7 16 kwietnia 2019 (Wykład 7) Programowanie dynamiczne cz. 2 16 kwietnia 2019 1 / 19 Outline 1 Mnożenie ciągu macierzy Konstruowanie optymalnego rozwiązania 2 Podstawy

Bardziej szczegółowo

Politechnika Wrocławska Wydział Elektroniki INFORMATYKA SYSTEMÓW AUTONOMICZNYCH. Heurystyka, co to jest, potencjalne zastosowania

Politechnika Wrocławska Wydział Elektroniki INFORMATYKA SYSTEMÓW AUTONOMICZNYCH. Heurystyka, co to jest, potencjalne zastosowania Politechnika Wrocławska Wydział Elektroniki INFORMATYKA SYSTEMÓW AUTONOMICZNYCH Autor: Łukasz Patyra indeks: 133325 Prowadzący zajęcia: dr inż. Marek Piasecki Ocena pracy: Wrocław 2007 Spis treści 1 Wstęp

Bardziej szczegółowo

Rekurencja. Rekurencja zwana także rekursją jest jedną z najważniejszych metod konstruowania rozwiązań i algorytmów.

Rekurencja. Rekurencja zwana także rekursją jest jedną z najważniejszych metod konstruowania rozwiązań i algorytmów. Rekurencja Rekurencja zwana także rekursją jest jedną z najważniejszych metod konstruowania rozwiązań i algorytmów. Zgodnie ze znaczeniem informatycznym algorytm rekurencyjny to taki który korzysta z samego

Bardziej szczegółowo

Algorytmy równoległe: ocena efektywności prostych algorytmów dla systemów wielokomputerowych

Algorytmy równoległe: ocena efektywności prostych algorytmów dla systemów wielokomputerowych Algorytmy równoległe: ocena efektywności prostych algorytmów dla systemów wielokomputerowych Rafał Walkowiak Politechnika Poznańska Studia inżynierskie Informatyka 2014/15 Znajdowanie maksimum w zbiorze

Bardziej szczegółowo

Wstęp do Techniki Cyfrowej... Teoria automatów

Wstęp do Techniki Cyfrowej... Teoria automatów Wstęp do Techniki Cyfrowej... Teoria automatów Alfabety i litery Układ logiczny opisywany jest przez wektory, których wartości reprezentowane są przez ciągi kombinacji zerojedynkowych. Zwiększenie stopnia

Bardziej szczegółowo

w analizie wyników badań eksperymentalnych, w problemach modelowania zjawisk fizycznych, w analizie obserwacji statystycznych.

w analizie wyników badań eksperymentalnych, w problemach modelowania zjawisk fizycznych, w analizie obserwacji statystycznych. Aproksymacja funkcji a regresja symboliczna Problem aproksymacji funkcji polega na tym, że funkcję F(), znaną lub określoną tablicą wartości, należy zastąpić inną funkcją, f(), zwaną funkcją aproksymującą

Bardziej szczegółowo

K.Pieńkosz Badania Operacyjne Wprowadzenie 1. Badania Operacyjne. dr inż. Krzysztof Pieńkosz

K.Pieńkosz Badania Operacyjne Wprowadzenie 1. Badania Operacyjne. dr inż. Krzysztof Pieńkosz K.Pieńkosz Wprowadzenie 1 dr inż. Krzysztof Pieńkosz Instytut Automatyki i Informatyki Stosowanej Politechniki Warszawskiej pok. 560 A tel.: 234-78-64 e-mail: K.Pienkosz@ia.pw.edu.pl K.Pieńkosz Wprowadzenie

Bardziej szczegółowo

ROZWIĄZYWANIE RÓWNAŃ NIELINIOWYCH

ROZWIĄZYWANIE RÓWNAŃ NIELINIOWYCH Transport, studia I stopnia Instytut L-5, Wydział Inżynierii Lądowej, Politechnika Krakowska Ewa Pabisek Adam Wosatko Postać ogólna równania nieliniowego Często występującym, ważnym problemem obliczeniowym

Bardziej szczegółowo

Algorytmy heurystyczne w UCB dla DVRP

Algorytmy heurystyczne w UCB dla DVRP Algorytmy heurystyczne w UCB dla DVRP Seminarium IO na MiNI 24.03.2015 Michał Okulewicz based on the decision DEC-2012/07/B/ST6/01527 Plan prezentacji Definicja problemu DVRP UCB na potrzeby DVRP Algorytmy

Bardziej szczegółowo

Optymalizacja ciągła

Optymalizacja ciągła Optymalizacja ciągła 5. Metody kierunków poparwy (metoda Newtona-Raphsona, metoda gradientów sprzężonych) Wojciech Kotłowski Instytut Informatyki PP http://www.cs.put.poznan.pl/wkotlowski/ 28.03.2019 1

Bardziej szczegółowo

Algorytmy ewolucyjne 1

Algorytmy ewolucyjne 1 Algorytmy ewolucyjne 1 2 Zasady zaliczenia przedmiotu Prowadzący (wykład i pracownie specjalistyczną): Wojciech Kwedlo, pokój 205. Konsultacje dla studentów studiów dziennych: poniedziałek,środa, godz

Bardziej szczegółowo

PLAN WYKŁADU OPTYMALIZACJA GLOBALNA ZADANIE KOMIWOJAŻERA METODY ROZWIĄZYWANIA. Specyfika zadania komiwojażera Reprezentacje Operatory

PLAN WYKŁADU OPTYMALIZACJA GLOBALNA ZADANIE KOMIWOJAŻERA METODY ROZWIĄZYWANIA. Specyfika zadania komiwojażera Reprezentacje Operatory PLAN WYKŁADU Specyfika zadania komiwojażera Reprezentacje Operatory OPTYMALIZACJA GLOBALNA Wykład 5 dr inż. Agnieszka Bołtuć ZADANIE KOMIWOJAŻERA Koncepcja: komiwojażer musi odwiedzić każde miasto na swoim

Bardziej szczegółowo

Stronicowanie w systemie pamięci wirtualnej

Stronicowanie w systemie pamięci wirtualnej Pamięć wirtualna Stronicowanie w systemie pamięci wirtualnej Stronicowanie z wymianą stron pomiędzy pamięcią pierwszego i drugiego rzędu. Zalety w porównaniu z prostym stronicowaniem: rozszerzenie przestrzeni

Bardziej szczegółowo

doc. dr Beata Pułska-Turyna Zarządzanie B506 mail: mgr Piotr J. Gadecki Zakład Badań Operacyjnych Zarządzania B 505.

doc. dr Beata Pułska-Turyna Zarządzanie B506 mail: mgr Piotr J. Gadecki Zakład Badań Operacyjnych Zarządzania B 505. doc. dr Beata Pułska-Turyna Zakład Badań Operacyjnych Zarządzanie B506 mail: turynab@wz.uw.edu.pl mgr Piotr J. Gadecki Zakład Badań Operacyjnych Zarządzania B 505. Tel.: (22)55 34 144 Mail: student@pgadecki.pl

Bardziej szczegółowo

Wielokryteriowa optymalizacja liniowa

Wielokryteriowa optymalizacja liniowa Wielokryteriowa optymalizacja liniowa 1. Przy decyzjach złożonych kierujemy się zwykle więcej niż jednym kryterium. Postępowanie w takich sytuacjach nie jest jednoznaczne. Pojawiło się wiele sposobów dochodzenia

Bardziej szczegółowo

ALGORYTMY GENETYCZNE ćwiczenia

ALGORYTMY GENETYCZNE ćwiczenia ćwiczenia Wykorzystaj algorytmy genetyczne do wyznaczenia minimum globalnego funkcji testowej: 1. Wylosuj dwuwymiarową tablicę 100x2 liczb 8-bitowych z zakresu [-100; +100] reprezentujących inicjalną populację

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

INFORMATYKA W SZKOLE. Podyplomowe Studia Pedagogiczne. Dr inż. Grażyna KRUPIŃSKA. D-10 pokój 227

INFORMATYKA W SZKOLE. Podyplomowe Studia Pedagogiczne. Dr inż. Grażyna KRUPIŃSKA. D-10 pokój 227 INFORMATYKA W SZKOLE Dr inż. Grażyna KRUPIŃSKA grazyna@fis.agh.edu.pl D-10 pokój 227 Podyplomowe Studia Pedagogiczne 2 Algorytmy Nazwa algorytm wywodzi się od nazwiska perskiego matematyka Muhamed ibn

Bardziej szczegółowo

Programowanie liniowe. Tadeusz Trzaskalik

Programowanie liniowe. Tadeusz Trzaskalik Programowanie liniowe Tadeusz Trzaskalik .. Wprowadzenie Słowa kluczowe Model matematyczny Cel, środki, ograniczenia Funkcja celu funkcja kryterium Zmienne decyzyjne Model optymalizacyjny Układ warunków

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

PLAN WYKŁADU OPTYMALIZACJA GLOBALNA OPERATOR KRZYŻOWANIA ETAPY KRZYŻOWANIA

PLAN WYKŁADU OPTYMALIZACJA GLOBALNA OPERATOR KRZYŻOWANIA ETAPY KRZYŻOWANIA PLAN WYKŁADU Operator krzyżowania Operator mutacji Operator inwersji Sukcesja Przykłady symulacji AG Kodowanie - rodzaje OPTYMALIZACJA GLOBALNA Wykład 3 dr inż. Agnieszka Bołtuć OPERATOR KRZYŻOWANIA Wymiana

Bardziej szczegółowo

Metody optymalizacji dyskretnej

Metody optymalizacji dyskretnej Metody optymalizacji dyskretnej Spis treści Spis treści Metody optymalizacji dyskretnej...1 1 Wstęp...5 2 Metody optymalizacji dyskretnej...6 2.1 Metody dokładne...6 2.2 Metody przybliżone...6 2.2.1 Poszukiwanie

Bardziej szczegółowo

Metoda graficzna może być stosowana w przypadku gdy model zawiera dwie zmienne decyzyjne. Metoda składa się z dwóch kroków (zobacz pierwszy wykład):

Metoda graficzna może być stosowana w przypadku gdy model zawiera dwie zmienne decyzyjne. Metoda składa się z dwóch kroków (zobacz pierwszy wykład): może być stosowana w przypadku gdy model zawiera dwie zmienne decyzyjne. Metoda składa się z dwóch kroków (zobacz pierwszy wykład): 1 Narysuj na płaszczyźnie zbiór dopuszczalnych rozwiazań. 2 Narysuj funkcję

Bardziej szczegółowo

Literatura. 1) Pojęcia: złożoność czasowa, rząd funkcji. Aby wyznaczyć pesymistyczną złożoność czasową algorytmu należy:

Literatura. 1) Pojęcia: złożoność czasowa, rząd funkcji. Aby wyznaczyć pesymistyczną złożoność czasową algorytmu należy: Temat: Powtórzenie wiadomości z PODSTAW INFORMATYKI I: Pojęcia: złożoność czasowa algorytmu, rząd funkcji kosztu. Algorytmy. Metody programistyczne. Struktury danych. Literatura. A. V. Aho, J.E. Hopcroft,

Bardziej szczegółowo