Sztuczny system odpornościowy (ang. Artificial Immune System, w skrócie AIS) to zbiór metod
obliczeniowych inspirowanych zasadami działania układów odpornościowych u kręgowców. Typową charakterystyką takich
systemów jest pamięć oraz zdolność uczenia. Pojęcia na których operują algorytmy AIS to
- Komórka macierzysta (ang. own cell)
- Obiekt naturalnie należący do systemu, wzorzec akceptowany w systemie
- Przeciwciało (ang. antibody)
- Obiekt rozpoznający obiekty nie będące komórkami macierzystymi, niepożądane wzorce
- Antygen (ang. antigen)
- Obiekt rozpoznawany i uaktywniający przeciwciała
Najbardziej naturalnym zastosowaniem systemów opartych na algorytmach inspirowanych systemem odpornościowym jest
bezpieczeństwo, przykładowo w systemach NIDS (network intrusion detection system). AIS używa się również do uczenia maszynowego (np. filtry antyspamowe), analizy danych (nienadzorowane grupowanie) i w szeroko pojętych systemach agentowych (np. inteligentne budynki).
Algorytm selekcji negatywnej (ang. negative selection)
Służy do wygenerowania zbioru przeciwciał - detektorów, które nie są uaktywniane przez komórki macierzyste.
- Niech D będzie zbiorem detektorów, pustym
- Powtarzaj dopóki nie zostanie wygenerowana żądana liczba przeciwciał
- Utwórz losowy detektor
- Sprawdź według przyjętej metryki odległość między detektorem, a każdą z komórek macierzystych
- Jeżeli odległość jest większa od zadanego progu, dodaj detektor do zbioru przeciwciał
Algorytm selekcji klonalnej (ang. clonal selection)
Służy do promowania skutecznych detektorów.
- Niech D będzie zbiorem detektorów
- Niech S będzie danym zbiorem antygenów do wykrycia
- Dla każdego antygenu z S wybierz N najmniej odległych (według przyjętej metryki) detektorów
- Dla każdego takiego detektora utwórz liczbę klonów odwrotnie proporcjonalną do odległości
- Zmutuj każdego klona proporcjonalnie do odległości rodzica
- Dodaj klony do zbioru detektorów
- Powtarzaj dopóki nie zajdzie warunek stopu (np. nie będzie żadnego nierozpoznanego antygenu)
Demonstracja
Wybierz język:
Demonstracja prezentuje sekwencyjnie opisane algorytmy. Najpierw tworzy zbiór detektorów z wykorzystaniem selekcji negatywnej.
Następnie w interakcji z użytkownikiem, który 'infekuje' system antygenem, wykorzystuje się algorytm selekcji klonalnej do rozpoznania i usunięcia
infekcji. Demonstracja pokazuje również, które komórki macierzyste zostałyby błędnie rozpoznane przez zmutowane detektory.
Dostępne parametry demonstracji:
- Liczba komórek macierzystych
- Liczba przeciwciał do utworzenia
- Zasięg reakcji detekcji
- Liczba najbliższych przeciwciał aktywowanych przez antygen
- Liczba klonów tworzonych dla aktywowanych przeciwciał
- Czas kroku symulacji
Obiektami demonstracji są punkty w przestrzeni 2D. Metryką odległości jest odległość euklidesowa.
Znaczenie kolorów
Każdy element systemu odpornościowego reprezentowany jest w postaci kółka.
Komórka macierzysta
Przeciwciało
Antygen
Przeciwciało uaktywnione przez antygen
Nowe, zmutowane przeciwciało