Bazy danych

Transkrypt

Bazy danych
2011-04-04
PLAN WYKŁADU
Optymalizacja rojem cząsteczek
Sztuczne systemy immunologiczne
 Algorytm selekcji klonalnej


OPTYMALIZACJA GLOBALNA
Wykład 9
dr inż. Agnieszka Bołtuć
RÓJ CZĄSTECZEK
RÓJ CZĄSTECZEK
Kennedy i Eberhart w roku 1995 publikują artykuł
dotyczący modelu opierającego się na zachowaniu
stada,
 Zwrócili oni uwagę na umiejętność sprawnego
poruszania się w grupie obserwowaną w
społecznościach żywych organizmów - w stadzie
ptaków lub ławicy ryb,
 Poszukiwali zasad wpływających na taką dynamikę
ruchu - jednym z fundamentalnych założeń było
przyjęcie możliwości komunikowania się między
osobnikami i dzielenia się informacją,


zwierzęta poruszają się stadem bądź ławicą w
poszukiwaniu żywności, w celu uniknięcia zagrożeń
i rozprzestrzenienia się materiału genetycznego,
dlatego informacje zdobyte przez jednego osobnika
muszą stać się własnością całego stada,
 cechy stada:
 bezpieczeństwo ruchu,
 rozprzestrzenianie,
 skupianie,
 orientacja
1
2011-04-04
RÓJ CZĄSTECZEK

Modele które są wykorzystywane w optymalizacji
są związane z jedynie dwoma własnościami:
skupianie i orientacja,

Z tego powodu nie nazywa się ich ostatecznie
stadem czy ławicą a rojem (Millonas),
RÓJ CZĄSTECZEK

W swoim działaniu każda cząsteczka realizuje
kompromis pomiędzy trzema możliwymi wyborami:



Pójść swoją własną drogą,
Pójść w stronę swojej dotychczas najlepszej
znalezionej pozycji,
Pójść w stronę najlepszego położenia
znalezionego przez sąsiadów.
RÓJ CZĄSTECZEK

Własności cząsteczki (nie mają wagi ani rozmiaru,
jednak posiadają prędkość):
 posiada precyzyjnie określone położenie
(współrzędne) i prędkość,
 zna swoje współrzędne oraz wartość funkcji
ewaluacyjnej dla tych współrzędnych,
 zna najlepsze położenie, jakie dotychczas
osiągnęła, oraz wartość funkcji ewaluacyjnej dla
tego położenia,
 zna swoich sąsiadów, ich najlepsze położenie,
jakie dotychczas osiągnęli, oraz wartość funkcji
ewaluacyjnej dla tego położenia.
RÓJ CZĄSTECZEK

t
Wyliczenie nowych wartości będące kompromisem
pomiędzy trzema wariantami:
v ,x
yt
t
y *t
c1 , c2 , c3
r1 , r2 , r3
-
-
-
-
vt
1
c1r1v t
xt
1
xt
c2 r2 ( y t
x t ) c3r3 ( y *t
x t ),
vt 1 ,
prędkość i położenie w chwili t
najlepsza dotychczas znaleziona przez cząsteczkę pozycja dla
chwili czasowej t,
najlepsza dotychczas znaleziona przez sąsiadów pozycja (lub
najlepszy z sąsiadów) dla chwili czasowej t,
współczynniki określające na ile cząsteczka ufa sobie,
swojemu doświadczeniu czy sąsiadom i ich doświadczeniu,
wartości losowe z przedziału <0,1> określane dla każdego
ruchu cząsteczki.
2
2011-04-04
RÓJ CZĄSTECZEK

RÓJ CZĄSTECZEK
Wyliczanie nowych wartości cząsteczek dla k-tego
wymiaru przestrzeni przeszukiwań:
v t 1[k ] c1r1vt [k ] c2 r2 ( y t [k ] x t [k ]) c3r3 ( y*t [k ] x t [k ]),

Schemat
Utwórz i zainicjuj optymalizator S dla przestrzeni n-wymiarowej;
do {
for (i=1;i<liczba_cząsteczek;i++)
x t 1[k ] xt [k ] vt 1[k ],
{
if (f(S.xi)<f(S.yi)) S.yi=S.xi;
vt [k ], y t [k ], xt [k ], y*t [k ]
if (f(S.yi)<f(S.y*)) S.y*=S.yi;
- k-te współrzędne wektorów
v,y,x,y* w chwili czasu t
}
Aktualizacja wszystkich cząsteczek z S;
}
while (war_stop)
INICJALIZACJA OPTYMALIZATORA S

Przy założeniu, że mamy korzystać z s cząsteczek,
a przestrzeń poszukiwań jest n-wymiarowa, mamy
następujące kroków:

Zainicjowanie wszystkich początkowych położeń
cząsteczek S.xij (j-ta współrzędna położenia i-tej
cząsteczki) dla każdej wartości i i j, wartościami
losowymi pochodzącymi z generatora liczb
losowych o rozkładzie równomiernym z
przedziału <xmin,xmax>,
INICJALIZACJA OPTYMALIZATORA S

Zainicjowanie wszystkich początkowych
prędkości cząsteczek w ten sam sposób,
możliwe jest też ustawieni ich na zero,

Zainicjowanie yi=xi, można też dla każdej
cząsteczki generować dwa punkty losowe,
lepszego przypisać pod y, gorszego pod x, duży
koszt, rzadko stosowane,
3
2011-04-04
KWESTIA SĄSIEDZTWA

sposoby określania wartości zmiennej S.y*, tj.
najlepszej dotychczas znalezionej przez sąsiadów
pozycji, gdzie S.y* to:
 najlepsze znalezione rozwiązanie z całej
populacji cząsteczek (nazywane wersją gbest,
czyli global best particie),
 najlepsze znalezione rozwiązanie z cząsteczek
z sąsiedztwa i-tej cząsteczki (nazywane wersją
Ibest, tj. local best position, lub alternatywnie
wersją neighbourhood best - najlepszy z
sąsiedztwa),
W ERSJA BINARNA ALGORYTMU
KWESTIA SĄSIEDZTWA

Najprostszym sposobem określenia zbioru
sąsiadów i-tej cząsteczki jest wzięcie l cząsteczek o
indeksach poprzedzających i oraz l - o indeksach
następujących po i,

Zachowanie algorytmu w zależności od sposobu
wyboru S.y*:
 w pierwszym przypadku szybciej zbiega do
optimum,
 w drugim bardziej odporny na optima lokalne.
W ERSJA BINARNA ALGORYTMU
Wartości wektora xi to wartości binarne,
Prędkość nie jest reprezentowana przez wartości
binarne,
 Określanie nowych wartości cząsteczek:
 Wyliczenie nowych wartości prędkości v t+1,
 Wyliczenie funkcji sigmoidalnej,
1
sig (vit, j )
1 exp( vit, j )



Określenie nowych wartości położenia
xit, j1
0 gdy r3t, j sig (vit, j1 ),
1 w przeciwnym przypadku,
źródło: K. Trojanowski, „Metaheurystyki praktyczne”
4
2011-04-04
MODYFIKACJE ALGORYTMU OPTYMALIZACJI
ROJEM CZĄSTECZEK
WSPÓŁCZYNNIK INERCJI
Dzielimy te modyfikacje na dwie klasy:
 wzmacniające zbieżność algorytmu do
optimum,
 współczynnik inercji,
 selekcja,
 hodowla cząsteczek,
 podtrzymujące różnorodność zbioru
cząsteczek, wzmacniające eksploracyjne
cechy algorytmu
 przestrzenne sąsiedztwo,
 topologie sąsiedztwa.

SELEKCJA
Cel – wzmocnienie zbieżności,
Pochodzenie – algorytmy ewolucyjne, selekcja
turniejowa,
 Przeprowadzana przed aktualizacją cząsteczek,
 Etapy:
 dla cząsteczki wybranej z roju dokonujemy
porównania wartości funkcji dopasowania dla tej
cząsteczki z wartościami dopasowania zbioru
losowo wybranych k cząsteczek, jeżeli wybrana
wcześniej cząsteczka jest lepsza, zostaje jej
przyznany jeden punkt; powtarzamy dla
wszystkich cząsteczek w roju.

Polega na wprowadzeniu inercji - dodatkowego
współczynnika wagi do równania na nową prędkość
cząsteczki
v t 1[k ] c1r1v t [k ] c2 r2 ( y t [k ] x t [k ]) c3r3 ( y *t [k ] x t [k ]),
współczynnik inercji, badany eksperymentalnie jako stały i dynamiczny,
Badano działanie algorytmu przy zmniejszającym się od 0.9 do 0.4, przy
dużym współczynniku – duża eksploracja, przy małym lokalne
poszukiwania, porównuje się do temperatury w algorytmie symulowanego
wyżarzania.
SELEKCJA




Uporządkowanie cząsteczek według liczby
przyznanych im punktów - od tych o największej
liczbie do tych o najmniejszej liczbie punktów,
Wybór lepszej połowy zbioru cząsteczek i
skopiowanie położeń wybranych cząsteczek
(ale nie prędkości) odpowiednio na położenia
cząsteczek połowy gorszej; informacja o
najlepszych dotychczas znalezionych
rozwiązaniach w cząstkach gorszych pozostaje
nie zmieniona,
Po procesie selekcji następuje aktualizacja
prędkości cząsteczek.
5
2011-04-04
SELEKCJA
HODOWLA CZĄSTECZEK
Wyniki badań eksperymentalnych podejścia z
selekcją były lepsze od wyników podejścia
klasycznego w wersji dla funkcji jednomodalnych,
ale gorsze - dla funkcji wielomodalnych,
 Wynika to z cechy selekcji która powoduje
tendencję zbiegania algorytmu do optimów i
zatrzymywania się wówczas w optimach lokalnych,
 Tak więc selekcja wzmocniła cechy przeszukiwania
lokalnego, ale osłabiła – globalnego.

HODOWLA CZĄSTECZEK
HODOWLA CZĄSTECZEK



Z puli oznakowanych cząsteczek wybierane są
losowo dwie i wykonywane jest krzyżowanie
arytmetyczne na ich wektorach położenia i
prędkości,
*
Dokonana zostaje zmiana y i w skrzyżowanych
cząsteczkach z wartości zapamiętanych na nowe bieżące położenia powstałe w wyniku krzyżowania:
yi* xi


Pochodzenie – reprodukcja, rekombinacja,
Używane razem i nazwane mechanizmem hodowli,
Etapy:
Po obliczeniu nowych położeń i prędkości
cząsteczek z wykorzystaniem równań
klasycznych, następuje oznaczenie każdej z
cząsteczek jako potencjalnego rodzica i nadanie
jej prawdopodobieństwa wyboru na rodzica Pb,


Krzyżowanie arytmetyczne cząsteczek a i b
xat 1[k ] rxat [k ] (1 r ) xbt [k ],
xbt 1[k ] rxbt [k ] (1 r ) xat [k ]
vat 1[k ]
vat [k ] vbt [k ] t
va ,
vat vbt
vbt 1[k ]
vat [k ] vbt [k ] t
vb ,
vat vbt
gdzie r - losowa liczba z przedziału (0,1), a operacja
przejście z postaci wektorowej na skalarną poprzez
obliczenie długości wskazanego wektora
to
6
2011-04-04
MODYFIKACJE PODTRZYMUJĄCE
HODOWLA CZĄSTECZEK

Wyniki eksperymentów mówią, że hodowla
cząsteczek:
 spowalnia zbieżność algorytmu dla funkcji
unimodalnych, co czyni ten algorytm nawet
mniej wydajnym od klasycznego podejścia,
 w przypadku funkcji wielomodalnych sytuacja
jest odwrotna - nowy algorytm wyprzedza w
uzyskanych rezultatach algorytm klasyczny.
RÓŻNORODNOŚĆ ZBIORU CZĄSTECZEK
Bazują na manipulacji głównie pojęciem
sąsiedztwa,
 Spowolnienie zbieżności zbioru cząsteczek do
jednego małego obszaru na rzecz podtrzymywania
rozproszenia cząsteczek w całej dziedzinie jest
uzyskiwane głównie poprzez ograniczenie
prędkości transferu informacji między
cząsteczkami,
 Skutkiem tłumienia transferu ma być utrzymanie
różnorodności zbioru.

PRZESTRZENNE SĄSIEDZTWO
PRZESTRZENNE SĄSIEDZTWO
Koncepcja sąsiedztwa oparta na długości
euklidesowej,
 Za sąsiadów uznaje się cząsteczki, które są
dostatecznie blisko nas, a więc dystans między
nami byłby poniżej pewnej wartości progowej,
 Dla każdej pary cząsteczek obliczamy:


xa xb
d max
gdzie dmax to największa zmierzona odległość
między dwoma cząsteczkami w całym zbiorze.
Wartość porównywana jest z wartością progową
(będącą parametrem algorytmu, wartość z
przedziału <0,1>) i za sąsiadów uznajemy tylko te
cząsteczki dla których jest mniejsza,
 Cecha modyfikacji – duża złożoność obliczeniowa,
 Dopuszczane jest także przyjęcie progu zmiennego
w procesie iteracyjnym, np.:
prog (k )
3k 0.6k max
k max
gdzie kmax było maksymalną przewidywaną liczbą
iteracji w całym eksperymencie.
7
2011-04-04
PRZESTRZENNE SĄSIEDZTWO
TOPOLOGIE SĄSIEDZTWA
Pierścień – rozpatrywanie sąsiadów cząsteczki na
podstawie ich pozycji względem niej w liście
wszystkich cząsteczek,
 Gwiazda - wszystkie cząsteczki połączone są z
jedną wybraną cząsteczką centralną i nie ma
innych połączeń bezpośrednio między
cząsteczkami,
 Pierścień i gwiazda, w wersji "z błędem„ –
wersja zaburzona, np. w wersji pierścień dwa
wybrane sąsiedztwa, np. 7 i 8 oraz 13 i 14 były
zamienione; po zamianie sąsiadem cząsteczki 7
była cząsteczka 14, a cząsteczki 13 – cząsteczka
8,

źródło: K. Trojanowski, „Metaheurystyki praktyczne”
SZTUCZNE SYSTEMY IMMUNOLOGICZNE

Są metaforą systemu immunologicznego ssaków,

Złożoność systemu immunologicznego powoduje
że metody obliczeniowe inspirowane tym tematem
są różnorodne,

Podstawowym zadaniem systemu
immunologicznego jest zapewnienie stabilności
organizmowi funkcjonującemu w środowisku, które
przenika do niego – z wiedzą i wolą organizmu lub
bez.
SZTUCZNE SYSTEMY IMMUNOLOGICZNE

Zadanie systemu – sprawdzenie czy nowe
cząsteczki, które pojawiają się w organizmie, są dla
niego bezpieczne i mogą w nim pozostać lub stać
się jego budulcem i integralnym komponentem, czy
też nie okażą się patogenami - cząsteczkami,
które należy usunąć, ponieważ stanowią dla
organizmu zagrożenie,

Struktury które wywołują reakcję systemu
immunologicznego nazywamy antygenami (obiekty
powodujące produkcję przeciwciał) i nie muszą to
być ciała obce, czasem to sam organizm wytwarza
takie produkty,
8
2011-04-04
SZTUCZNE SYSTEMY IMMUNOLOGICZNE
SZTUCZNE SYSTEMY IMMUNOLOGICZNE
Własności systemu immunologicznego:
 zdolność rozpoznawania wzorców,
 unikalność - każdy żywy organizm ma swój własny
system immunologiczny dostosowany do
indywidualnych warunków życia,
 identyfikacja własnej osoby - system jest w stanie
zauważyć każdą komórkę, cząsteczkę lub dowolny
inny obiekt w organizmie i zidentyfikować go jako
własny lub obcy,
 różnorodność - bogactwo struktur (komórki,
cząsteczki, proteiny, itp.), które razem tworzą jeden
system,

nietrwałość – w sensie pozytywnym, system
podlega ciągłej przemianie: cząsteczki wchodzące
w jego skład nieustannie umierają i jednocześnie są
zastępowane przez nowe,

autonomiczność - brak centralnego elementu
kontrolującego cały system, gdyż system składa się
ze zbioru autonomicznych jednostek, każda o
określonym zadaniu; wszystkie one w razie
uszkodzenia lub zniszczenia mogą być w krótkim
czasie zastąpione. Każda grupa cząsteczek ma
dobrze zdefiniowane własne zadania i każda z nich
wykonuje wyłącznie swoją rolę, włączając się w ten
sposób w działanie całego systemu,
SZTUCZNE SYSTEMY IMMUNOLOGICZNE
SZTUCZNE SYSTEMY IMMUNOLOGICZNE


wielowarstwowość - polegająca na rozdzieleniu
zadań na poszczególne komponenty organizmu
(szpik kostny produkuje komórki krwi, grasica jest
miejscem, gdzie limfocyty T nabywają swoich
indywidualnych właściwości niezbędnych później
do identyfikowania patogenów, itp.),
brak obszarów chronionych - dowolne miejsce i
dowolna komórka w organizmie (nawet własna)
mogą zostać zaatakowane przez system
immunologiczny,


detekcja anomalii - rozpoznawanie w organizmie tych
obcych obiektów, które nigdy przedtem w nim nie
występowały,
dynamicznie zmienny obszar kontroli - organizm nie
zawiera w sobie takiego dużego repertuaru komórek i
cząsteczek, aby móc rozpoznawać jednocześnie
wszystkie możliwe typy patogenów; dlatego system
dysponuje nieustannie zmieniającym się zbiorem
limfocytów (o krótkim czasie życia), co sprawia, że
nieustannie muszą być wymieniane na inne, nowe
cząsteczki; dzięki temu, mimo braku kontroli całej
dziedziny możliwych typów w danym momencie, w nieco
dłuższej perspektywie system jako całość jest już jednak
w stanie rozpoznać dowolny patogen,
9
2011-04-04
SZTUCZNE SYSTEMY IMMUNOLOGICZNE

rozproszenie - cały organizm jest jednocześnie
systemem obronnym; pojawienie się patogenów w
dowolnym miejscu organizmu powoduje
natychmiastową reakcję systemu, który jest
rozproszony po całym organizmie, a więc jest
wszędzie obecny,

tolerancja na błędy i szum – aby system zaczął
działać nie musi w 100% rozpoznać patogenu;
system jest też odporny na ewentualny szum w
komórkach własnych,
SZTUCZNE SYSTEMY IMMUNOLOGICZNE

żywotność - wynikająca z autentycznej
różnorodności i mnogości komórek,

uczenie się i pamięć - polegają na umiejętności
szybkiej adaptacji cząsteczek systemu
immunologicznego do różnych zadań obronnych,
które muszą podejmować; mechanizmy te poparte
są funkcjonującą w systemie silną presją
selektywną, która pozwala najlepiej dostosowanym
cząsteczkom pozostawać w systemie najdłużej,

integracja - z pozostałymi systemami organizmu,
SZTUCZNE SYSTEMY IMMUNOLOGICZNE
odporność na zaburzenia – zaburzenia mogą
sprawić, że system immunologiczny będzie działał
mniej efektywnie, lub wręcz niektóre z jego
czynności zostaną całkiem wstrzymane, ale dzięki
swojej rozproszonej strukturze nie zaprzestanie on
jednak podejmować postawionych przed nim zadań
(być może w mniejszym stopniu),
 odporność na własne błędy - jeżeli system
wytworzył w sobie odporność na pewien określony
typ patogenu, a następnie komórki odpowiedzialne
za tę odporność zostały utracone, to inne komórki
podejmą próbę przeciwstawienia się
występującemu patogenowi,

SZTUCZNE SYSTEMY IMMUNOLOGICZNE

działanie w stylu "drapieżnik - ofiara„ - system
pomnaża komórki, które są w stanie rozpoznać
patogeny i je zniszczyć; im więcej patogenów
występuje w organizmie, tym więcej komórek, które
je zwalczają, jest w stanie wytworzyć system;
gdyby tak się nie stało, patogeny zdominowałyby
system i doprowadziłyby do jego zniszczenia;
wyeliminowanie patogenów powoduje, że system
wraca do swego stabilnego stanu, a liczba komórek
zdolnych rozpoznać dany rodzaj patogenów jest
redukowana,
10
2011-04-04
SZTUCZNE SYSTEMY IMMUNOLOGICZNE

samoorganizacja - braku wskazówek, jak komórki
przeciwciał mają się dostosowywać do określonych
rodzajów antygenów; zamiast tego następuje selekcja
klonalna tych komórek, których przeciwciała są lepiej
dostosowane niż inne - klonowanie tych komórek oraz
mutacja powstałych klonów; pozwala to na stworzenie
jeszcze lepiej dopasowanych przeciwciał, przy czym siła
reakcji zależy od podobieństwa - im większe jest
podobieństwo przeciwciał, tym więcej klonów powstanie
z tej komórki, w ten sposób następuje promocja
komórek lepiej dopasowanych, a w konsekwencji
samoadaptacja do nowego wzorca; te najlepiej
dopasowane z czasem stają się komórkami
pamięciowymi, a czas ich życia znacznie się wydłuża,
SZTUCZNE SYSTEMY IMMUNOLOGICZNE
Praktyczne zastosowania sztucznych systemów
immunologicznych:
 rozpoznawanie wzorców,
 detekcja błędów i anomalii,
 analiza danych (data mining, klasyfikacja, itp.),
 systemy agentowe,
 harmonogramowanie,
 maszynowe uczenie,
 autonomiczna nawigacja i sterowanie,
 metody szukania i optymalizacji,
 sztuczne życie,
 bezpieczeństwo systemów informatycznych.
ALGORYTM SELEKCJI KLONALNEJ
ALGORYTM SELEKCJI KLONALNEJ
algorytmy selekcji klonalnej bazują na modelu
opisującym sposób radzenia sobie przez system
immunologiczny z pojawiającymi się w organizmie
elementami obcymi - antygenami,
 antygenem jest dowolna substancja, która w wyniku
kontaktu z komórkami układu immunologicznego
może wywołać jego reakcję obronną,
 wyróżniamy antygeny własne i obce,
 każda komórka wytwarza autoantygeny, w
normalnej sytuacji niegroźne,
 patogenty - antygeny obcych struktur, uruchamiają
reakcję obronną,
Schemat przeciwdziałania intruzowi przez system
immunologiczny:
 limfocyty B - wyposażone w przeciwciała są
odpowiedzialne za rozpoznanie antygenów i ich
eliminację,
 przeciwciała znajdują się na jego powierzchni i
wyposażone są we wzorce, w które
wyposażone są również antygeny,
 Wzorce są porównywane i jeżeli podobieństwo
jest wysokie, zaczyna się proces proliferacji i
różnicowania,

11
2011-04-04
ALGORYTM SELEKCJI KLONALNEJ



proliferacja - proces namnażania limfocytu,
który dzieli się, tworząc nowe, w celu
sprawniejszego usunięcia intruza z organizmu;
nowe komórki silnie mutują, tworząc w ten
sposób również nowe wzorce, bazując jednak
na tych, z których pochodzą; tworzą się nowe
komórki o nieco gorszym ale też jeszcze
lepszym dopasowaniu do antygenu,
aktywacja egzogeniczna - pobudzenie
limfocytów w wyniku rozpoznania antygenów,
aktywacją endogeniczną - pobudzenie
wynikające z podobieństwa przeciwciał
względem siebie,
ALGORYTM SELEKCJI KLONALNEJ

dojrzewania limfocytów - proces wielokrotnej
proliferacji, dojrzała forma limfocytu B, jeśli nie
zetknie się z agresorem, żyje krótko; w przeciwnym
przypadku limfocyt ulega transformacji do komórki
plazmatycznej, produkującej przeciwciała, albo
staje się długo żyjącym limfocytem pamięci
immunologicznej , który jest bardziej aktywny w
reagowaniu na dany antygen.
ALGORYTM SELEKCJI KLONALNEJ
SAIS (SIMPLE ARTIFICIAL IMMUNE SYSTEM)
inicjalizacja: wybór zbioru rozwiązań początkowych P

Prezentacja antygenu:
do {
Określanie podobieństwa do antygenu: ustalenie podobieństwa rozwiązań z P
do antygenu;
Selekcja klonalna: wybór n1 osobników z P o najwyższym podobieństwie do
antygenu, a następnie wygenerowanie klonów tych osobników w ilościach
wprost proporcjonalnych do ich podobieństwa;
Hipermutacja: wszystkie klony podlegają mutacji, przy czym siła mutacji jest
odwrotnie proporcjonalna do podobieństwa do antygenu;
Dojrzewanie: dodanie zmutowanych klonów do P,
Metadynamika: wymiana n2 najgorszych rozwiązań z populacji na nowe,
wygenerowane losowo.
}
Różnice w stosunku do selekcji klonalnej:
 dodatkowy mechanizm zarządzania populacją
przeciwciał - aktywacja endogeniczna,
 brak etapu Metadynamiki,
 różnica wynikająca ze sposobu oceny
podobieństwa rozwiązania do antygenu: w
algorytmie selekcji klonalnej jest to wartość
funkcji oceny dla danego rozwiązania, zaś tu
podobieństwo do ustalonego punktu w
przestrzeni (ustalane na bazie np. odległości
Hamminga czy euklidesowa).
while (warunek_konca_algorytmu)
12
2011-04-04
SAIS
SAIS
Schemat:
 faza ewaluacji - ulegają proliferacji te komórki,
których podobieństwo do optimum jest najwyższe,
 dla wszystkich przeciwciał oblicza się tzw. poziom
aktywacji egzogenicznej exi (poziom aktywacji itego przeciwciała jest wprost proporcjonalny do
jego podobieństwa do antygenu, w szczególności
może być po prostu jego wartością funkcji oceny),
 tworzona jest robocza populacja Pex poprzez
wybranie określonej liczby przeciwciał o
najwyższym poziomie aktywacji,

SAIS

Gęstość przeciwciała:
dla reprezentacji binarnej - liczba przeciwciał,
będących kopiami tego samego łańcucha
binarnego, podzielona przez całkowitą liczbę
wszystkich przeciwciał w populacji,

dla reprezentacji rzeczywistoliczbowej gęstością jest liczba innych przeciwciał
pozostających od niego w odległości nie
przekraczającej pewnego eksperymentalnie
ustalonego limitu e (odległości mierzonej na
sposób euklidesowy) również podzielona przez
całkowitą liczbę wszystkich przeciwciał w
populacji.

pozostałe przeciwciała będą przechodziły natomiast
proces tzw. aktywacji endogenicznej i utworzą
populację Pen ,
 generowanie populacji Pex polega na zastosowaniu
selekcji turniejowej na zbiorze przeciwciał o
najwyższym poziomie aktywacji tyle razy, ile
potrzeba do utworzenia całej populacji roboczej,
 generowanie populacji Pen wymaga najpierw
określenia dla wszystkich pozostałych przeciwciał
ich poziomu aktywacji endogenicznej
i
en
1 / ns
di 1
ns
- liczba różnych przeciwciał w populacji
di
- gęstość i-tego przeciwciała
SAIS
generowanie populacji roboczej Pen polega na
zastosowaniu selekcji turniejowej na zbiorze
przeciwciał, tworzone jest tyle przeciwciał, z ilu
dokonywany był wybór,
 Kolejny krok to hipermutacja, która dokonywana
jest tylko na elementach zbioru Pex ,
 Etap dojrzewania lub rekrutacji - polega na
utworzeniu nowej populacji bazowej na podstawie
osobników z Pen i Pex ; elementy z Pen całkowicie
zastępują grupę osobników, z których powstały,
natomiast zmutowane klony z Pex zastępują
odpowiednio swoje osobniki rodzicielskie w taki
sam sposób, w jaki były wybierane - na zasadzie
turnieju.

13
2011-04-04
YASAIS (YET ANOTHER SAIS)
Algorytm dla samego autora okazał się być mało
zadowalający i stworzył on algorytm zwany
YASAIS,
 Ten drugi jednak jest naśladownikiem systemów
ewolucyjnych z następującymi własnościami:
 reprodukcja i sukcesja osobników jest oparta na
dość szczególnym sposobie prowadzenia
turnieju,
 mutacja prowadzona jest dużo intensywniej niż w
klasycznym algorytmie ewolucyjnym,
 brakuje krzyżowania,
 rezygnacja całkowicie z funkcjonującej w SAIS
aktywacji endogenicznej.

AIIA
Reguła włączania nowych rozwiązań do zbioru roboczego P:
 Zamiast usuwania najgorszych rozwiązań i wprowadzania
rozwiązań nowych, zastosowano zasadę, że klony mogą
zastępować tylko te przeciwciała, z których same
pochodzą.
 Wynika stąd że zastępowane było zawsze n1 najlepszych
rozwiązań, przy czym były to dokładnie te rozwiązania,
które wcześniej zostały wybrane na etapie selekcji
klonalnej. Każde z nich było zastępowane przez
najlepszego ze swoich zmutowanych klonów.
 Jeśli żaden ze zmutowanych klonów nie okaże się lepszy
od oryginału, jeden z klonów zawsze pozostanie nie
zmieniony. To gwarantowało, że w najmniej korzystnym
przypadku po etapie Dojrzewania otrzymamy to samo
rozwiązanie, jakie było na początku.
ALGORYTM SELEKCJI KLONALNEJ AIIA
AIIA (Artificial Immune Iterated Algorithm),
inspirowany zarówno podejściami klasycznym jak i
SAIS,
 różnice:
 siła mutacji nie zależy od jakości oryginału z
którego pochodził mutowany klon, ale była stała
i jednakowa dla wszystkich klonów,
 dotyczy reguły włączania nowych rozwiązań do
zbioru roboczego P.


BCA (B-CELL ALGORITHM)
charakterystyczną cechą dla BCA jest zastosowany
w nim operator mutacji ciągłej - losowany jest punkt
startowy oraz długość obszaru mutacji, a następnie
zanegowaniu poddawany jest cały wybrany
fragment genotypu,
 pominięto tutaj etap Metadynamiki obecny w
algorytmie klonalnym,
 ciekawostką algorytmu BCA jest format zapisu
wektorów współrzędnych - każda współrzędna
rozwiązania reprezentowana była jako 64-bitowy
ciąg binarny i interpretowana jako binarny zapis
liczby typu double,

14
2011-04-04
PODOBIEŃSTWO
SYSTEMÓW
IMMUNOLOGICZNYCH DO AE
IMMUNOLOGICZNY ALGORYTM OPTYMALIZACJI
ZADANIA N-KOMIWOJAŻERA
Nazewnictwo: rozwiązania to "przeciwciała" a nie
"osobniki", funkcja oceny to "podobieństwo do
antygenu" a nie "dopasowanie",
 Brak krzyżowania,
 Mutacja w algorytmach selekcji klonalnej jest dużo
bardziej rozbudowana, a sukcesja może być
bardziej selektywna,

Algorytm jest inspirowany teorią sieci
immunologicznej oraz mechanizmem prezentacji
peptydów MHC (Major Histocompatibility Complex),

Zadania n-komiwojażera - problem komiwojażera
w wersji mnogiej, tj. w wersji, gdzie dysponujemy
pewną liczbą komiwojażerów, których zadaniem
jest odwiedzić wszystkie miasta w taki sposób, aby
żadne miasto nie zostało odwiedzone przez kilku
komiwojażerów, oraz aby suma ich tras była
minimalna.
IMMUNOLOGICZNY ALGORYTM OPTYMALIZACJI
ZADANIA N-KOMIWOJAŻERA
IMMUNOLOGICZNY ALGORYTM OPTYMALIZACJI
ZADANIA N-KOMIWOJAŻERA
Cząsteczki MHC są podstawowym nośnikiem
informacji o rodzaju intruza, jaki wniknął do
organizmu,
 Kluczowa decyzja o uruchomieniu reakcji obronnej,
jaka musi być w tym momencie podjęta, spoczywa
na limfocytach typu T,
 Ich rolą jest uaktywnić limfocyty B wyposażone w
przeciwciała, aby zaczęły one proces proliferacji i
różnicowania, którego celem jest wytworzenie
przeciwciał.



kiedy komórki organizmu pochłaniają wirus, to
poddają go enzymatycznej obróbce, a następnie
prezentują jego zdegradowane białka (peptydy) w
formie kompleksu MHC-peptyd na swojej
powierzchni,
 wyróżniamy dwa rodzaje cząsteczek MHC:
cząsteczki klasy I i klasy II,
15
2011-04-04
IMMUNOLOGICZNY ALGORYTM OPTYMALIZACJI
ZADANIA N-KOMIWOJAŻERA
IMMUNOLOGICZNY ALGORYTM OPTYMALIZACJI
ZADANIA N-KOMIWOJAŻERA
Inicjalizacja początkowej postaci zbioru roboczego cząsteczek MHC

do {
Makrofag: ocena cząsteczek MHC ze zbioru roboczego
while (stan_konkurencji_miedzy_cząsteczkami)
{
Limfocyt T:
eliminacja stanu konkurencji między cząsteczkami MHC
}
Limfocyt B:
tworzenie nowych cząsteczek MHC, ich ocena i włączenie nowych
do zbioru roboczego
}
while (warunek_konca_algorytmu)
W algorytmie pojedyncze rozwiązanie (cząsteczka
MHC klasy II) reprezentuje ścieżkę jednego
komiwojażera, dlatego też populacja liczy tyle
cząsteczek MHC, ilu jest komiwojażerów,
 Populacja składa się z rozwiązań cząstkowych,
czyli tras każdego z komiwojażerów,
 Łączną trasę wszystkich komiwojażerów uzyskuje
się z połączenia rozwiązań cząstkowych i dopiero
cała populacja stanowi rozwiązanie problemu,
 W skład pojedynczej cząsteczki wchodzi lista miast,
jakie ma odwiedzić dany komiwojażer. O jakości
cząsteczki decyduje długość trasy komiwojażera
wyznaczająca jej "dopasowanie”,
IMMUNOLOGICZNY ALGORYTM OPTYMALIZACJI
ZADANIA N-KOMIWOJAŻERA
IMMUNOLOGICZNY ALGORYTM OPTYMALIZACJI
ZADANIA N-KOMIWOJAŻERA
Inicjalizacja
 losowe przypisanie miast poszczególnym
komiwojażerom; każdemu komiwojażerowi
przypisywana jest losowa liczba losowo wybranych
miast
Makrofag
 obliczana jest długość trasy dla każdego z
komiwojażerów, czyli jakość tych tras,
 dalej sprawdzamy czy nie ma stanu konkurencji,
tzn. czy dwóch lub więcej komiwojażerów nie
odwiedza tych samych miast, jeśli tak to stosowana
jest metoda Limfocyt T w celu jego wyeliminowania
Limfocyt T
 Etapy:
 etap 1 - eliminację stanu konkurencji przeprowadza
się indywidualnie dla każdego komiwojażera
zgodnie ze schematem:
 dla każdego z miast ustalana jest jego liczba
wystąpień na ścieżce każdego z komiwojażerów
i zapamiętywana w liście, która zawiera liczby
wystąpień dla wszystkich miast. Miasta, które
nie występują w żadnej ze ścieżek, mają liczbę
wystąpień = 0.
16
2011-04-04
IMMUNOLOGICZNY ALGORYTM OPTYMALIZACJI
ZADANIA N-KOMIWOJAŻERA
Przeglądana jest ścieżka każdego z
komiwojażerów. Odczytywane są kolejno numery
miast i w liście sprawdzane jest, ile razy występują
one w ścieżkach. Jeżeli dane miasto nie występuje
lub występuje, tylko jeden raz, nie są wykonywane
żadne działania. Natomiast jeżeli dane miasto
występuje w ścieżkach więcej niż jeden raz, wtedy,
o ile jest to możliwe, zamieniane jest na pierwsze
miasto z listy tych, które do tej pory nie wystąpiły
ani razu i aktualizowana jest lista z liczbą wystąpień
poszczególnych miast,
 Proces jest powtarzany, aż wszystkie miasta na
ścieżce komiwojażera zostaną sprawdzone.

IMMUNOLOGICZNY ALGORYTM OPTYMALIZACJI
ZADANIA N-KOMIWOJAŻERA

Dla każdego komiwojażera, któremu podczas
realizacji poprzedniego etapu udało się
wyeliminować stany konkurencji, porównywane są
jakości jego trasy przed zmianą, kiedy stan
konkurencji występował, i po zmianie, już bez stanu
konkurencji. Jeżeli jakość trasy bez stanu
konkurencji jest wyższa od jakości ze stanem
konkurencji usunięcie stanu konkurencji jest
zatwierdzane, w przeciwnym przypadku nie jest
zatwierdzane a trasa przyjmuje początkową postać.
IMMUNOLOGICZNY ALGORYTM OPTYMALIZACJI
ZADANIA N-KOMIWOJAŻERA

etap 2 – zatwierdzanie eliminacji konkurencji,


Jeśli po tym etapie pozostaną jeszcze jakieś
stany konkurencji przeprowadza się ich
dodatkową eliminację,
dla wszystkich komiwojażerów, którzy do
metody Limfocyt T weszli ze stanami
konkurencji, dokonujemy dodatkowej oceny
ścieżek - najpierw indywidualnie, a potem
parami:
IMMUNOLOGICZNY ALGORYTM OPTYMALIZACJI
ZADANIA N-KOMIWOJAŻERA
Wśród komiwojażerów ze stanami konkurencji
(również tych, którym zmiany w trasach zostały
cofnięte w poprzednim kroku), następuje jeszcze
jedna próba naprawy. Znajdowane są wszystkie
pary konkurujących komiwojażerów i stan
konkurencji jest usuwany u tego z porównywanych
komiwojażerów, którego trasa okaże się dłuższa.
 Jeżeli po wykonaniu powyższych dwóch kroków
istnieje jeszcze stan konkurencji w którejkolwiek z
tras, to jest on usuwany, przy czym jest to
wykonywane zawsze i bez uwzględniania wpływu
na zmianę jakości rozwiązań.

17
2011-04-04
IMMUNOLOGICZNY ALGORYTM OPTYMALIZACJI
ZADANIA N-KOMIWOJAŻERA
IMMUNOLOGICZNY ALGORYTM OPTYMALIZACJI
ZADANIA N-KOMIWOJAŻERA
Limfocyt B
 sekwencyjnie zostają wywołane trzy metody:
"Mutacja", "Zamiana" oraz "Migracja„,
 „Mutacja”:
- poszukiwana jest najkrótsza trasa
odwiedzania miast przez poszczególnych
komiwojażerów,
- ścieżka każdego komiwojażera podlega
klonowaniu oraz mutacji i inwersji, odbywają
się z one ustalonym prawdopodobieństwem, a
ich stosowanie ma na celu odnalezienie takiej
kolejności odwiedzanych miast, aby trasa
danego komiwojażera była jak najkrótsza,
IMMUNOLOGICZNY ALGORYTM OPTYMALIZACJI
ZADANIA N-KOMIWOJAŻERA

"Zamiana„
- dokonywana jest (z ustalonym
prawdopodobieństwem) zamiana pojedynczych
miast pomiędzy dwoma losowo wybranymi
komiwojażerami oraz zamiana fragmentów
ścieżek, zawierających losową liczba miast,
pomiędzy dwoma losowo wybranymi
komiwojażerami,
- po przeprowadzeniu zamiany obliczana jest
łączna suma tras wszystkich komiwojażerów;
jeżeli jest ona mniejsza od sumy, jaka była
przed dokonaniem zamiany, to jej efekty są
zapamiętywane, w przeciwnym razie nie.
-
-
dla wszystkich klonów obliczana jest ich jakość;
w przypadku, gdy jakość jednego z klonów jest
wyższa od jakości "starego rozwiązania", wtedy
"stare rozwiązanie" jest zastępowane tym
właśnie klonem,
należy zaznaczyć, że metoda "Mutacja" działa
lokalnie, nie rozważa ona na całości
rozwiązania, tylko jego fragmenty,
IMMUNOLOGICZNY ALGORYTM OPTYMALIZACJI
ZADANIA N-KOMIWOJAŻERA

"Migracja„
- z ustalonym prawdopodobieństwem przenosi
miasta pomiędzy ścieżkami,
- może zmienić liczbę miast, jaką ma odwiedzić
dany komiwojażer,
- odbywa się według następujących etapów:
1. zapamiętanie miast przyporządkowanych
poszczególnym komiwojażerom,
2. dla wybranego miasta obliczane są
odległości do wszystkich jego sąsiadów,
będących na trasie pozostałych
komiwojażerów,
18
2011-04-04
IMMUNOLOGICZNY ALGORYTM OPTYMALIZACJI
ZADANIA N-KOMIWOJAŻERA
IMMUNOLOGICZNY ALGORYTM OPTYMALIZACJI
ZADANIA N-KOMIWOJAŻERA
3. Odległości te są sortowane rosnąco,
4. Z ustalonym prawdopodobieństwem następuje
przeniesienie danego miasta do tego
komiwojażera, którego ścieżka zawiera miasta
znajdujące się w najbliższej odległości,
5. Po przeniesieniu miasta do trasy innego
komiwojażera następuje obliczenie łącznej sumy
tras wszystkich komiwojażerów. Jeżeli suma ta jest
mniejsza od dotychczasowej, następuje
zapamiętanie efektu migracji, w przeciwnym razie
następuje powrót do kroku 4 gdzie sprawdzane jest
następne w kolejności miasto,

Zakończenie „Migracji”:
dla danego miasta - gdy zostanie przeniesione ono
do ścieżki innego komiwojażera, lub gdy
sprawdzona zostanie ustalona liczba miast
leżących w najbliższej odległości,
 dla wszystkich miast - po wykonaniu kroków 1-5 dla
każdego z miast w ścieżkach wszystkich
komiwojażerów,
 Powstaje nowa populacja ścieżek; jeżeli jest ona
lepsza od tej początkowej to nowa zastępuje
dotychczasową, w przeciwnym razie wynik jest
odrzucany, a algorytm korzysta z dotychczasowego
rozwiązania.

W YKŁAD PRZYGOTOWANO NA PODSTAWIE

K. Trojanowski, „Metaheurystyki praktyczne”, WIT,
2005,
19