Sztuczne Systemy Immunologiczne.
Teoria i Zastosowania
Sławomir T. Wierzchoń
Akademicka Oficyna Wydawnicza Exit,
Warszawa 2001, 282 strony,
ISBN 83-87674-30-3
(do nabycia w sklepie internetowym
http://www.exit.pl
)
Immunologia[1]
to nauka z pogranicza medycyny i biologii. Przedmiotem jej dociekań jest
badanie odporności organizmów na zarazki, toksyny i niektóre substancje
chemiczne, głównie białkowe. Za ojców immunologii powszechnie uważa się Ludwika
Pasteura (1822-1825) i Roberta Kocha (1843-1910), którzy odkrywając złożony
świat chorobotwórczych mikroorganizmów
proponowali jednocześnie środki zaradcze wspomagające zdolności obronne
organizmu.
Ale immunologia to nie tylko
przedmiot zainteresowań lekarzy czy biologów. Chęć zrozumienia makroskopowych
własności układu odpornościowego stymuluje badania w zakresie immunologii matematycznej. Znakomity przegląd
stosowanych tu metod i
kierunków zawiera praca [154]. Chociaż immunologia liczy sobie blisko 100 lat,
nasze rozumienie interakcji zachodzących między elementami tworzącymi układ
odpornościowy jest dalekie od zadowalającego. Z tego jednak co wiemy, lub
lepiej – przypuszczamy, że wiemy – wyłania się niezwykle atrakcyjny dla informatyków
obraz układu odpornościowego jako efektywnego rozproszonego systemu
przetwarzania informacji posiadającego zdolność uczenia się i adaptacji do
zmiennego otoczenia. Charakterystyczne jego cechy to:
Funkcjonowanie układu odpornościowego przedstawiono schematycznie na rysunku 1.1. Kwadrat A reprezentuje zbiór potencjalnych struktur, z którymi układ może się zetknąć. Z tego zbioru należy usunąć struktury odpowiadające komórkom własnym. Zaznaczono je na czarno w lewym kwadracie części B. Struktury, które musi rozpoznawać układ odpornościowy, przedstawiono w lewym kwadracie części B. Jeżeli organizm został zaatakowany przez konkretne patogeny, wskazane w lewym kwadracie części C, ich struktury zostają zapamiętane, co wskazuje prawy kwadrat części C.
Rysunek 1.1. Doskonalenie zdolności detekcyjnych układu odpornościowego (opis w tekście)
W pewnym (bardzo uproszczonym)
sensie, układ odpornościowy to binarny klasyfikator. Musi on umieć
zaklasyfikować dowolną strukturę do jednej z dwóch klas: „własny” lub „obcy”.
Klasyfikacja do drugiej z tych klas wywołuje ciąg reakcji mających na celu
usunięcie zagrożenia. Traktując obcą strukturę jako problem, który należy
rozwiązać, a uruchomienie akcji obronnej jako rozwiązanie tego problemu
otrzymujemy interesującą „immunologiczną” metaforę rozwiązywania szeroko
rozumianych problemów. Jeżeli mamy na przykład do czynienia z zadaniem
optymalizacji, to traktując je jako patogen poszukujemy wiążących go
przeciwciał – w tym wypadku zbioru
rozwiązań tego zadania. Jeżeli zaś mamy do czynienia z analizą danych, to zbiór
konkretnych danych można utożsamić ze zbiorem patogenów. Ich rozpoznanie i
zapamiętanie jest równoważne utworzeniu „wewnętrznego obrazu” patogenów.
Odwołując się do pojęcia sieci idiotypowej otrzymamy grafową strukturę
reprezentującą istotne relacje między poszczególnymi danymi. To tylko dwa przykłady
ilustrujące, w jaki sposób można wykorzystać metaforę immunologiczną do
rozwiązywania różnorodnych zadań.
Obiektami układu odpornościowego,
którymi będziemy zajmować się na przestrzeni całej książki są tzw. limfocyty.
Będą nas interesować dwie – o zasadniczym znaczeniu – ich grupy: limfocyty typu
T i limfocyty typu B. Limfocyty typu T (tzw. limfocyty wspomagające) dają
sygnał do podjęcia akcji obronnej, a limfocyty typu B[5]
przystępują do niszczenia patogenów. W [41] przyrównano B limfocyty do
strzelców posługujących się karabinami, a wspomagające limfocyty typu T do
dowódców wydających rozkaz strzelania. Oczywiście mechanizmy rządzące
zachowaniem obu tych grup są różne. Tworząc systemy detekcji anomalii będziemy
wykorzystywać mechanizmy sterujące działaniem limfocytów typu T, a tworząc
systemy analizy danych – mechanizmy rządzące zachowaniem B limfocytów.
B limfocyty oprócz „strzelania”
uczestniczą w procesie tworzenia pamięci immunologicznej. Kontynuując militarne
skojarzenia możemy wyobrazić sobie ten proces jako selekcję najbardziej
skutecznych strzelców. Jeżeli dodatkowo założymy, że każdy z nich wyposażony
jest w inny rodzaj broni, a każdy rodzaj wymaga specyficznych umiejętności
posługiwania się nią, analogia z pamięcią immunologiczną będzie bardziej pełna.
Posiadanie takiej doborowej jednostki strzelców, z których każdy wie w jakiej
sytuacji i jak ma odpowiadać ogniem, pozwala szybko i skuteczne reagować na
zewnętrzne zagrożenia. Oczywiście strzelcy obsługujący zbliżone rodzaje broni
powinni być ulokowani blisko siebie, tak aby w razie alarmu móc łatwo angażować
odpowiednie siły. Właśnie takie występowanie skupień komórek o zbliżonych
charakterystykach jest istotną własnością sieci idiotypowej.
Proces wyszukiwania doborowych
strzelców odpowiada tzw. pierwotnej odpowiedzi immunologicznej. Z oczywistych
względów jest on długotrwały. Natomiast angażowanie strzelców do zadań, w
których mieli sposobność wykazać swą skuteczność, to wtórna odpowiedź
immunologiczna. Dużo szybsza i bardziej skuteczna.
Jest oczywiste, że aby skutecznie
zarządzać jednostkami doborowych żołnierzy, ich liczba nie może rosnąć w
nieskończoność. Wprowadzając mechanizm konkurencji uzyskujemy samoregulujacą
się strukturę, która determinuje zarówno swój rozmiar, jak również odpowiada za
to, czy dany osobnik ma w niej pozostać, czy też nie. Właśnie te cechy
charakteryzują samoorganizację pamięci immunologicznej. Zauważmy na marginesie,
że analizując strukturę tworzonych w ten sposób elitarnych jednostek możemy
wiele dowiedzieć się o wrogach. Każdy element struktury reprezentuje w pewnym sensie wynik odpowiedzi
na określony atak. Właśnie ta cecha wykorzystywana jest w immunologicznych
systemach analizy danych.
Na ogół organizacje nie przepadają za outsiderami. Podobnie dzieje się z pamięcią immunologiczną. Zgodnie
z teorią sieci idiotypowych, jeżeli coś zostało „nauczone”, może być zapomniane
chyba, że jest wzmocnione przez inne komórki sieci („epizody nas nie
interesują”).
Jest jeszcze jedna ważna cecha
układu odpornościowego. Tak jak niesubordynowani żołnierze, czy żołnierze
odmawiający udziału w walkach są usuwani z placu boju, a ich miejsce zajmują
nowi rekruci wyposażeni często w nowe rodzaje broni i nowe techniki walki, tak
i limfocyty o niewielkiej skuteczności usuwane są z organizmu, a ich miejsce
zajmują nowe – prawdopodobnie bardziej skuteczne – limfocyty. Ta ostatnia
własność to tzw. metadynamika układu odpornościowego. Jest oczywiste, że nowi
rekruci mogą być dostarczani tylko w określonych terminach, a odstępy czasu
między kolejnymi transportami są dużo rzadsze w porównaniu z częstymi zmianami
liczebności żołnierzy wskutek utarczek z wrogiem, czy wewnętrznych konfliktów[6].
Owa powolność zmian rodzajów limfocytów jest charakterystyczną cechą
metadynamiki.
Skoro nasi strzelcy używają
broni, to musi ona miotać pociski. Ich odpowiednikiem w układzie odpornościowym są tzw. przeciwciała uwalniane do
płynów wewnątrzustrojowych. Charakterystyczną cechą owych naboi jest ich wysoka
selektywność. Bezbłędnie trafiają wroga (wyłącznie określony typ patogenu) nie
czyniąc szkody innym, napotykanym po drodze, obiektom. Nowe generacje
przeciwciał powstają drogą rekombinacji genów składających się na genom danego
osobnika. Zatem układ odpornościowy można również traktować jako przykład
układu ewolucyjnego.
Struktura, dynamika i metadynamika to podstawowe pojęcia
charakteryzujące tzw. model drugiej generacji (sieć idiotypowa to, w tym
kontekście, model pierwszej generacji) wprowadzony przez Verelę i Coutinho,
[187]. Struktura charakteryzuje typy interakcji między komórkowymi i
molekularnymi składnikami systemu reprezentowanego w postaci macierzy powiązań
(incydencji). Dynamika reprezentuje zmiany koncentracji komórek i molekuł tworzących system, a
metadynamika odpowiedzialna jest za podtrzymywanie właściwej różnorodności
przeciwciał, a więc za wprowadzanie nowych ich typów i usuwanie typów
nieefektywnych. Istotną cechą sieciowych modeli symulujących własności układu
odpornościowego jest definicja molekularnej tożsamości („wewnętrznych obrazów”)
elementów tworzących daną sieć. Jest to emergentna cecha organizacji sieci,
powstającej w trakcie rozpoznawania molekularnych charakterystyk otoczenia, w
którym funkcjonuje system.
Modele sieciowe układu odpornościowego odgrywają istotną rolę
w konstrukcji sztucznych systemów immunologicznych nadając precyzyjny sens
takim pojęciom, jak uczenie, pamięć czy tolerancja immunologiczna. Podstawowym
mechanizmem sterującym powstawaniem i ewolucją struktury sieciowej jest
metadynamika oraz zmiany koncentracji poszczególnych rodzajów klonów zachodzące zgodnie
z ogólnym równaniem
stopień różnorodności populacji |
= |
dopływ nowych komórek |
– |
śmierć nieefektywnych komórek |
+ |
reprodukcja pobudzonych komórek |
Ostatni składnik tego równania opisuje wzrost koncentracji
limfocytów pod wpływem efektywnych interakcji z patogenami i innymi limfocytami.
Efektem zainteresowania informatyków własnościami układu
odpornościowego są tzw. sztuczne systemy immunologiczne. Na przestrzeni całej
książki termin „układ odpornościowy” oznaczać będzie system obronny żywego
organizmu, zaś „(sztuczny) system immunologiczny” – program komputerowy,
którego działanie opiera się na regułach rządzących populacjami limfocytów.
Podkreślmy to wyraźnie: tak jak (sztuczne) sieci neuronowe nie stanowią
wiernego modelu układu nerwowego, tak systemy immunologiczne nie są
odwzorowaniem układu odpornościowego. Ich działaniem sterują najbardziej
fundamentalne reguły rządzące zachowaniem układu odpornościowego. Pisząc
„najbardziej fundamentalne” mamy na myśli ich skrajnie uproszczoną wersję nie
uwzględniającą całego bogactwa interakcji między różnorodnymi składnikami
systemu obronnego żywego organizmu.
Bodaj jedną z pierwszych prac wykorzystujących własności
układu odpornościowego do konstrukcji algorytmu rozpoznawania wzorców jest
artykuł Irene Stadnyk z 1986 roku. Szersze zainteresowanie systemami immunologicznymi przypada na
początek lat 90-tych (już) ubiegłego stulecia. Chociaż sztuczne systemy immunologiczne
to dziedzina licząca sobie niewiele ponad 10 lat, może ona poszczycić się
pierwszymi komercyjnymi sukcesami. Wszyscy dobrze wiemy, jaką zmorą są wirusy
komputerowe. Szacuje się, że dziennie pojawia się około 8-10 nowych wirusów.
Dostępne na rynku programy anty-wirusowe rozpoznają w zasadzie tylko te wirusy,
które już znają, co wiąże się z kosztownym procesem ich nieustannej aktualizacji. Firma Symantec,
wykorzystując „immunologiczną” technologię identyfikacji wirusów – opracowaną w
IBM
Thomas J. Watson Research Center,
[120], [194] – we współpracy z INTELem przygotowała prototyp
systemu umożliwiającego administratorowi systemu natychmiastowe reagowanie na
pojawienie się wszelkich anomalnych plików [178]. Innym komercyjnym systemem
jest opracowany przez firmę STARLAB, Artificial
Immune System Shell przeznaczony do rozwiązywania złożonych zadań uczenia
maszynowego i wnioskowania w czasie rzeczywistym, [109]. Jego autorzy prowadzili m.in.
eksperymenty polegające na wykorzystaniu systemu do zabezpieczania pomieszczeń
biurowych. W tym przypadku system analizuje obraz otrzymywany z kamer
zainstalowanych w monitorowanych pomieszczeniach sygnalizując nietypowe
zdarzenia. System uwzględnia przy tym różnorakie sytuacje wyjątkowe, jak na
przykład obecność kota w pomieszczeniu, obecność pracowników nocnej zmiany w
biurze, czy też pewne aspekty geograficzne związane ze specyficznym
wykorzystaniem pomieszczeń ulokowanych w różnych częściach budynku. Inne eksperymenty dotyczyły bieżącej
analizy dokumentów przesyłanych przez lekarzy i placówki zdrowia w celu
wykrywania relacji przyczynowo-skutkowych między symptomami a chorobami.
Zastosowane tu metody mogą być wykorzystane np. w ciągłej analizie sygnałów
otrzymywanych z samolotów
pasażerskich, co pozwoliłoby na wykrywanie wczesnych symptomów potencjalnych
awarii. Wreszcie, Jonathan Timmis z University of Kent, we współpracy z Sun
Microsystems prowadzi prace nad wykorzystaniem sztucznych systemów
immunologicznych do drążenia danych, a w szczególności do klasyfikowania
dokumentów i inteligentnej nawigacji.
Sztuczne systemy immunologiczne wpisują się w tzw. „nową
inżynierię”, która – zdaniem Wolframa, [210] – powinna wykorzystywać metafory
dostarczane przez systemy biologiczne, jak na przykład kolonie mrówek, układ
nerwowy, czy ewoluujące populacje gatunków. O ile bowiem tradycyjne
inżynierskie podejście do rozwiązywania problemów polega na analizie
konkretnego problemu, sformułowaniu rygorystycznych założeń, a następnie
sukcesywnym ich realizowaniu, o tyle charakterystyczną cechą nowego podejścia
jest jego elastyczność i wysoka odporność na niewielkie zaburzenia występujące
w realizacji bądź własnościach różnych komponentów konstruowanego systemu. Z
zapewnieniem elastyczności rozwiązań nierozerwalnie łączy się rozproszoność
rozumiana w tym sensie, że z jednej strony funkcjonowanie pojedynczych
komponentów nie jest krytyczne dla zachowania spójnej funkcjonalności, z
drugiej natomiast – suma takich komponentów tworzy całość o skomplikowanych
własnościach. Koresponduje to w pewnym sensie z ideą systemów wieloagentowych.
Tradycyjne techniki projektowania
wymagają szczegółowej specyfikacji własności pojedynczych komponentów systemu.
W nowej, „immunologicznej” inżynierii, nacisk kładziony jest na (jedynie ogólny)
zarys funkcjonowania systemu i określenie wyłącznie pewnych szczegółowych jego
aspektów, typu miara jakości czy funkcja dostosowania. Analogicznie jak w
wolframowskim postulacie, konstruowane systemy powinny być zdolne do ewolucji,
adaptacji i samonaprawiania się. Przedstawiony w rozdziale 6 system jest
krokiem w tym właśnie kierunku. Cechą bowiem układu odpornościowego jest jego
stabilność, zdolność podtrzymywania efektywnych struktur przy jednoczesnym
zachowaniu zdolności adaptacyjnych i ewolucyjnych. Podobne własności wykazuje
na przykład omawiane w rozdziale 9 podejście do harmonogramowania zadań.
Istotą „immunologicznej”
inżynierii jest wykorzystanie informacji zawartej w stawianym problemie w celu
rozwiązania go. Tak też funkcjonuje system przedstawiony w rozdziale 7: generując
przeciwciała dopasowane do antygenów będących w istocie zbiorem danych
uczących, system jest w stanie wypracować efektywną technikę kompresji tychże
danych, przy czym zredukowana ich forma zachowuje wszystkie istotne
charakterystyki zbioru uczącego, tak jak pamięć immunologiczna przechowuje
najistotniejsze charakterystyki patogenów atakujących organizm. Podsumowując,
do głównych cech „immunologicznej inżynierii” należą: