• Nie Znaleziono Wyników

(slajdy) Podstawowe pojęcia

N/A
N/A
Protected

Academic year: 2021

Share "(slajdy) Podstawowe pojęcia"

Copied!
25
0
0

Pełen tekst

(1)

ALHE

Jarosław Arabas

Podstawowe pojęcia

(2)

Rozwiązywanie zadań przez

przeszukiwanie

Sortowanie tablicy liczb in situ

void sort (int *tab, unsigned n){

int i=1,j=0,sorted=0; do{ sorted=1; for(j=0;j<n-i;++j){ if (tab[j+1]<tab[j]){ int temp=tab[j]; tab[j]=tab[j+1];tab[j+1]=temp; sorted=0;} ++i;

}while(i<n && !sorted);

(3)

3421 3412 3241 3214 3142 3124 2134 2143 2314 2341 2413 2431 4123 4132 4213 4231 4312 4321 1432 1423 1342 1324 1243 1234

Zbiór rozwiązań

(4)

Związki między rozwiązaniami

Tablice są do siebie podobne, gdy różnią się

niewielką liczbą pól

3

1

4

2

3

4

1

2

1

3

4

2

(5)

3421 3412 3241 3214 3142 3124 2134 2143 2314 2341 2413 2431 4123 4132 4213 4231 4312 4321 1432 1423 1342 1324 1243 1234

Przestrzeń rozwiązań

(6)

Funkcja celu – w jakim stopniu cel

jest spełniony/niespełniony

Liczba par liczb, które nie spełniają pożądanej

relacji porządku

3

1

4

2

3 pary nie spełniają

3 pary spełniają

(7)

Rozwiązanie zadań przez

przeszukiwanie przestrzeni

rozwiązań

Posortowanie tablicy jest równoważne

znalezieniu cyklu przekształceń prowadzących

do finalnej postaci

jest to zatem zadanie znalezienia ścieżki w

przestrzeni przeszukiwań, której punkt

początkowy jest początkowym stanem tablicy,

a punkt końcowy jest posortowaną tablicą

(8)

Przykładowa ścieżka

3421 3412 3241 3214 3142 3124 2134 2143 2314 2341 2413 2431 4123 4132 4213 4231 4312 4321 1432 1423 1342 1324 1243 1234 1 0 1 2 3 2 3 4 4 5 5 6 5 4 3 2 4 3 2 3 4 3 2 1

(9)

3421 3412 3241 3214 3142 3124 2134 2143 2314 2341 2413 2431 4123 4132 4213 4231 4312 4321 1432 1423 1342 1324 1243 1234

Funkcja kosztu (celu, użyteczności)

1 0 1 2 3 2 3 4 4 5 5 6 5 4 3 2 4 3 2 3 4 3 2 1

(10)

Ścieżka w przestrzeni przeszukiwań

3421 3412 3241 3214 3142 3124 2134 2143 2314 2341 2413 2431 4123 4132 4213 4231 4312 4321 1432 1423 1342 1324 1243 12340 1 1 2 3 2 3 4 4 5 5 6 5 4 3 2 4 3 2 3 4 3 2 1 3142 1342 1324 1234 Serializacja przestrzeni przeszukiwań

(11)
(12)

Dixit Algorizmi

Abu Abdullah Muhammad ibn Musa al-Chuwarizmi

perski matematyk, astronom, geograf i kartograf żyjący w IX wieku

Urodzony w Chiwie, w latach 813-833 żył w Bagdadzie.

Rozwiązywanie równań do kwadratowego włącznie Od tytułu jego książki pochodzi nazwa algebra

یمزراوخ رثا هلباقملاو ربجلا باسح یف رصتخملا باتک زا یا هحفص :یسراف

ربجلا

(13)

Algorytmy Heurystyczne

Algorytm – uporządkowany zbiór operacji

prowadzących do osiągnięcia zamierzonego celu

(rozwiązania zadania)

Na tym wykładzie nie będziemy się zajmować

algorytmami w tym sensie

Będziemy się zajmować algorytmami w sensie

uporządkowanych zbiorów operacji realizujących

pewną metodę przeszukiwania przestrzeni

Zajmujemy się zadaniami praktycznie

(14)

Zadania “łatwe” i “trudne”

3421 3412 3241 3214 3142 3124 2134 2143 2314 2341 2413 2431 4123 4132 4213 4231 4312 4321 1432 1423 1342 1324 1243 1234 1 0 1 2 3 2 3 4 4 5 5 6 5 4 3 2 4 3 2 3 4 3 2 1 NP P NP-zupełne ● Problem łatwy:

Każda ścieżka wzdłuż nierosnącej funkcji celu prowadzi do celu

Długość w/w ścieżki wielomianowo zależy od ilości danych

Liczność sąsiedztwa punktu

wielomianowo zależy od ilości danych

(15)

Heuristic methods “refer to

experience-based techniques

for problem solving, learning, and discovery. Where an exhaustive search is impractical, heuristic

methods are used to speed up the process of finding a satisfactory solution. Examples of this method include using a rule of thumb, an educated guess, an intuitive judgment, or common sense.” (Wikipedia)

Heurystyka jest metodą, która często daje dość dobre rozwiązania i wykorzystuje wiedzę dziedzinową

(16)

Metaheurystyki

● W latach 1990, nastąpiła moda na algorytmy

genetyczne/ewolucyjne

● Zaczęto wymyślać wiele nowych technik

inspirowanych naturą, które nie były “ewolucyjne”

● W społeczeństwach zachodu istotna jest pociągająca

narracja, nośna metafora. Z tego względu, opisując algrytm, odwoływano się do żargon wywiedzionego z metafory.

● Aby ogarnąć chaos nazewniczy, potrzebowano pewnej

nazwy. Nie do końca wiadomo kto (Fred Glover?)

(17)

“Andronikos z Rodos (I w. p.n.e.) - filozof grecki, arystotelik, dziesiąty po

Arystotelesie scholarcha Lykeionu

Uporządkował nabytą przez Apellikona i przewiezioną przez Sullę do Rzymu bibliotekę Arystotelesa. Za jego scholarchatu szkoła perypatetycka

rozpoczęła działalność filologiczną. Był wydawcą i jednym z pierwszych komentatorów pism Arystotelesa i Teofrasta. Prawdopodobnie jest także twórcą tytułu dzieła Arystotelesa Metafizyka, od którego pochodzi pojęcie metafizyki. (Wikipedia)” ● ● ●

Metaheurystyka jest nazwą metod, które nastąpiły po tym, gdy nazwa “heurystyka” przestała być modna.

(18)
(19)

Rys historyczny

Typowe spojrzenie na metaheurystyki:

Metody inspirowane naturą [i kulturą]

Konsekwencje

+ Nośna metafora (dobry PR)

– Kontrowersyjny żargon

Chromosomy, memy, tabu, limfocyty, pszczoły, mrówki, świetliki, bakterie, galaktyki (cdn.)

– trudna analiza porównawcza

maskarada,

(20)
(21)

Cele przedmiotu

Krótkie omówienie popularnych metaheurystyk

Analiza porównawcza metaheurystyk

(22)

“Filozofia” przedmiotu

● rozwiązywanie problemów przez przeszukiwanie przestrzeni potencjalnych rozwiązań

● metaheurystyki jako sposób realizacji przeszukiwania ● wprowadzenie na potrzeby przedmiotu ogólnego

schematu metaheurystyki, którego

uszczegółowieniem są poszczególne algorytmy

● powiązanie z elementami teorii prawdopodobieństwa i statystyki

● przekazanie przede wszystkim intuicji algorytmów ● bardziej inżynierski niż naukowy punkt widzenia

(23)

Nie ma nic bardziej praktycznego,

niż dobra teoria

Powtarzali to m.in.

Karl Popper, Jeremy Bentham, Kurt Lewin,

Gustav Kirchhoff, Albert Einstein, Ludwig Boltzmann, Włodzimierz Lenin, Leonid Breżniew

(24)

Nie ma nic bardziej praktycznego,

niż dobra teoria

Cechy dobrej teorii:

- uzasadnia wybór algorytmu

- pozwala przewidzieć zachowanie się algorytmu - pozwala na zaprojektowanie algorytmu

(25)

Literatura

El Ghazali Talbi: Metaheuristics. From design to implementation, Wiley, 2009 Krzysztof Trojanowski: Metaheurystyki praktycznie, WSISIZ, 2008 (wyd. II)

Sean Luke, Essentials of Metaheuristics, available online, 2013

International Journal of Metaheuristics http://www.metaheuristics.net/

Cytaty

Powiązane dokumenty

n inplementacyjne modele danych stosowane to transformacji wcześniej przygotowanego modelu koncepcyjnego do konkretnego modelu danych bazy danych, a więc do postaci, która jest

Tor teletransmisyjny jest to droga przesyłowa sygnałów elektrycznych (informacji) między dwoma punktami, przestrzennie ograniczona.. praktycznie do walca o

2. stack segment) segment pamięci w którym przechowywane są chwilowe dane procesu. Na stosie utrzymywane są zmienne lokalne procedur, parametry procedur i inne chwilowe

2. stack segment) segment pamięci w którym przechowywane są chwilowe dane procesu. Na stosie utrzymywane są zmienne lokalne procedur, parametry procedur i inne chwilowe

Wystąpiło przerwanie (proces został wywłaszczony) lub też proces dobrowolnie zwolnił procesor. Procedura szeregująca zdecydowała że ten proces ma być wykonywany. Zasób

1) naruszenie zakazu dowodzenia określonych faktów oraz naruszenie zakazu dowodowego bezwzględnego i pozyskanie w ten sposób dowodu sprawia, że dowód ten nie

[r]

► wersje &lt; 4.0 atomowość dla pojedynczych dokumentów, później dla wielu dokumentów (z wielu kolekcji) w pojedynczym shardzie. ► Od wersji 4.2 rozszerzenie atomowości na