• Nie Znaleziono Wyników

Algorytmy genetyczne, jak one działają ?

N/A
N/A
Protected

Academic year: 2021

Share "Algorytmy genetyczne, jak one działają ?"

Copied!
22
0
0

Pełen tekst

(1)

Algorytmy genetyczne, jak one działają ?

Algorytmy genetyczne, jak one działają?

Imponderabilia

(2)

Algorytmy genetyczne, jak one działają ?

Populacja początkowa

W celu ustalenia populacji początkowej należy wygenerować liczbę pop size chromosomów losowo, bit po bicie.

Chcemy optymalizować funkcję f z pewną określoną dokladnością. Na tej podstawie obliczamy dłogość reprezentacji binarnej (lub innej).

(3)

Algorytmy genetyczne, jak one działają ?

Populacja początkowa

W celu ustalenia populacji początkowej należy wygenerować liczbę pop size chromosomów losowo, bit po bicie.

Chcemy optymalizować funkcję f z pewną określoną dokladnością.

Na tej podstawie obliczamy dłogość reprezentacji binarnej (lub innej).

(4)

Algorytmy genetyczne, jak one działają ?

Reprodukcja a sukcesja

Reprodukcja jest procesem, w którym ciągi kodowe zostają powielone w stosunku zależnym od wartości f. dopasowania.

Sukcesja - zastępowanie rodzice: dzieci przy kolejnej ewaluacji populacji. Dotyczy technik niszowania, czy koewolucji.

(5)

Algorytmy genetyczne, jak one działają ?

Reprodukcja a sukcesja

Reprodukcja jest procesem, w którym ciągi kodowe zostają powielone w stosunku zależnym od wartości f. dopasowania.

Sukcesja - zastępowanie rodzice: dzieci przy kolejnej ewaluacji populacji. Dotyczy technik niszowania, czy koewolucji.

(6)

Algorytmy genetyczne, jak one działają ?

Selekcja

oblicz wartość dopasowania eval(vi) dla każdego chromosomu.

oblicz całkowite dopasowanie populacji F.

oblicz prawdopodobieństwo wyboru pi każdego chromosomu vi pi = eval(vi)/F.

oblicz dystrybuantę qi dla każdego chromosomu.

(7)

Algorytmy genetyczne, jak one działają ?

Selekcja

oblicz wartość dopasowania eval(vi) dla każdego chromosomu.

oblicz całkowite dopasowanie populacji F.

oblicz prawdopodobieństwo wyboru pi każdego chromosomu vi pi = eval(vi)/F.

oblicz dystrybuantę qi dla każdego chromosomu.

(8)

Algorytmy genetyczne, jak one działają ?

Selekcja

oblicz wartość dopasowania eval(vi) dla każdego chromosomu.

oblicz całkowite dopasowanie populacji F.

oblicz prawdopodobieństwo wyboru pi każdego chromosomu vi pi = eval(vi)/F.

oblicz dystrybuantę qi dla każdego chromosomu.

(9)

Algorytmy genetyczne, jak one działają ?

Selekcja

oblicz wartość dopasowania eval(vi) dla każdego chromosomu.

oblicz całkowite dopasowanie populacji F.

oblicz prawdopodobieństwo wyboru pi każdego chromosomu vi pi = eval(vi)/F.

oblicz dystrybuantę qi dla każdego chromosomu.

(10)

Algorytmy genetyczne, jak one działają ?

Ruletka

Wygeneruj liczbe pseudolosową r z przedziału [0,1], {wykonuj to pop size razy}

jeżeli r < q1, to wybierz vi (następny osobnik z populacji). oczywiście niektóre chromosomy będą wybrane więcej niż raz. Jest to zgodne z tw. o schematach.

(11)

Algorytmy genetyczne, jak one działają ?

Ruletka

Wygeneruj liczbe pseudolosową r z przedziału [0,1], {wykonuj to pop size razy}

jeżeli r < q1, to wybierz vi (następny osobnik z populacji).

oczywiście niektóre chromosomy będą wybrane więcej niż raz. Jest to zgodne z tw. o schematach.

(12)

Algorytmy genetyczne, jak one działają ?

Ruletka

Wygeneruj liczbe pseudolosową r z przedziału [0,1], {wykonuj to pop size razy}

jeżeli r < q1, to wybierz vi (następny osobnik z populacji).

oczywiście niektóre chromosomy będą wybrane więcej niż raz. Jest to zgodne z tw. o schematach.

(13)

Algorytmy genetyczne, jak one działają ?

Krzyżowanie (cross over)

prawdopodobieństwo krzyżowania umożliwia nam obliczenie oczekiwanej liczby choromosomów do krzyżowania pcpop size.

wygeneruj liczbę pseudolosową r z przedziału [0,1].

jeżeli r < pc to wybierz rozpatrywany chromosom do krzyżowania. następnie losowo dobieramy chromosomy w pary.

punkt cięcia wybieramy losowo.

(14)

Algorytmy genetyczne, jak one działają ?

Krzyżowanie (cross over)

prawdopodobieństwo krzyżowania umożliwia nam obliczenie oczekiwanej liczby choromosomów do krzyżowania pcpop size.

wygeneruj liczbę pseudolosową r z przedziału [0,1].

jeżeli r < pc to wybierz rozpatrywany chromosom do krzyżowania. następnie losowo dobieramy chromosomy w pary.

punkt cięcia wybieramy losowo.

(15)

Algorytmy genetyczne, jak one działają ?

Krzyżowanie (cross over)

prawdopodobieństwo krzyżowania umożliwia nam obliczenie oczekiwanej liczby choromosomów do krzyżowania pcpop size.

wygeneruj liczbę pseudolosową r z przedziału [0,1].

jeżeli r < pc to wybierz rozpatrywany chromosom do krzyżowania.

następnie losowo dobieramy chromosomy w pary. punkt cięcia wybieramy losowo.

(16)

Algorytmy genetyczne, jak one działają ?

Krzyżowanie (cross over)

prawdopodobieństwo krzyżowania umożliwia nam obliczenie oczekiwanej liczby choromosomów do krzyżowania pcpop size.

wygeneruj liczbę pseudolosową r z przedziału [0,1].

jeżeli r < pc to wybierz rozpatrywany chromosom do krzyżowania.

następnie losowo dobieramy chromosomy w pary.

punkt cięcia wybieramy losowo.

(17)

Algorytmy genetyczne, jak one działają ?

Krzyżowanie (cross over)

prawdopodobieństwo krzyżowania umożliwia nam obliczenie oczekiwanej liczby choromosomów do krzyżowania pcpop size.

wygeneruj liczbę pseudolosową r z przedziału [0,1].

jeżeli r < pc to wybierz rozpatrywany chromosom do krzyżowania.

następnie losowo dobieramy chromosomy w pary.

punkt cięcia wybieramy losowo.

(18)

Algorytmy genetyczne, jak one działają ?

Mutacja

mutacja jest wykonywana na bitach.

oczekiwana liczba bitów zmutowanych pmmpop size.

dla każdego chromosomu (po krzyżowaniu) i każdego bitu wygeneruj liczbę pseudolosową r z przedziału [0,1].

jeżeli r < pmto zmutuj bit.

może się zdarzyć, że więcej niż 1 bit podlegać będzie mutacji w jednym chromosomie.

(19)

Algorytmy genetyczne, jak one działają ?

Mutacja

mutacja jest wykonywana na bitach.

oczekiwana liczba bitów zmutowanych pmmpop size.

dla każdego chromosomu (po krzyżowaniu) i każdego bitu wygeneruj liczbę pseudolosową r z przedziału [0,1].

jeżeli r < pmto zmutuj bit.

może się zdarzyć, że więcej niż 1 bit podlegać będzie mutacji w jednym chromosomie.

(20)

Algorytmy genetyczne, jak one działają ?

Mutacja

mutacja jest wykonywana na bitach.

oczekiwana liczba bitów zmutowanych pmmpop size.

dla każdego chromosomu (po krzyżowaniu) i każdego bitu wygeneruj liczbę pseudolosową r z przedziału [0,1].

jeżeli r < pmto zmutuj bit.

może się zdarzyć, że więcej niż 1 bit podlegać będzie mutacji w jednym chromosomie.

(21)

Algorytmy genetyczne, jak one działają ?

Mutacja

mutacja jest wykonywana na bitach.

oczekiwana liczba bitów zmutowanych pmmpop size.

dla każdego chromosomu (po krzyżowaniu) i każdego bitu wygeneruj liczbę pseudolosową r z przedziału [0,1].

jeżeli r < pmto zmutuj bit.

może się zdarzyć, że więcej niż 1 bit podlegać będzie mutacji w jednym chromosomie.

(22)

Algorytmy genetyczne, jak one działają ?

Mutacja

mutacja jest wykonywana na bitach.

oczekiwana liczba bitów zmutowanych pmmpop size.

dla każdego chromosomu (po krzyżowaniu) i każdego bitu wygeneruj liczbę pseudolosową r z przedziału [0,1].

jeżeli r < pmto zmutuj bit.

może się zdarzyć, że więcej niż 1 bit podlegać będzie mutacji w jednym chromosomie.

Cytaty

Powiązane dokumenty

Ciągi kodowe składają się z symboli alfabetu V=0,1 oraz niech wielkie litery oznaczają ciągi kodowe a ich elementy niech będą oznaczone przez małe litery z indeksami

Jeśli cząsteczka jest na środku wiązki, to wtedy siły działające w lewą i w pra- wą stronę będą się równoważyć, więc zostanie popchnięta tylko do góry i wci- śnięta

b) wierzchołka, połączonego krawędzią nie wspólna, przy czym spośród kilku możliwości wybierz taki wierzchołek, którego lista krawędzi jest najkrótsza (w

(np. metoda koła ruletki – roulette-wheel selection – przydziela osobnikom taką część koła, jaka wynika z ich jakości przystosowania się, tzn. ich prawdopodobieństwo

Jeśli ktoś dokonałby zmiany jakieś transakcji w którymś z dawno zaakcpetowanych bloków, to zmieniłoby to jego proof-of-work i w konsekwencji wszystkie kolejne bloki, więc

Przypominam, że rozważamy funkcje jednej zmiennej rzeczywistej o wartościach rze- czywistych, a dziedziną funkcji może być dowolny podzbiór zbioru liczb rzeczywistych..

Warto zwrócić uwagę na to, że otrzymane tu liczby 2 i 4 są wszystkimi takimi liczbami, których odległość od liczby 3 jest równa 1..

[r]