Mam nowego zawodnika. Ma 2597 neuronów Kenyona, zero doświadczenia i nie wie, czym jest plansza. Po trzech tysiącach partii przegrywa z dobrze grającym przeciwnikiem średnio pięć gier na sto. Ja po trzech tysiącach partii kółka i krzyżyka przestałbym po prostu grać.

[Zrzut ekranu 1: widok główny aplikacji, czyli plansza, mapa pamięci ciała grzybkowatego i wynik egzaminu po 300 grach]
Skąd wziąłem muchę
W 2024 roku konsorcjum FlyWire opublikowało pełną mapę połączeń mózgu dorosłej muszki owocowej: około 140 tysięcy neuronów i 50 milionów synaps. Wyciąłem z niej jeden fragment, prawe ciało grzybkowate. To ośrodek, w którym mucha uczy się, że jeden zapach oznacza jedzenie, a inny kłopoty. Wszystkie 2597 komórek Kenyona w moim modelu są prawdziwe. Prawdziwe jest też to, który neuron wejściowy łączy się z którą komórką i iloma synapsami.
Mucha nie widzi planszy
Muchy nie grają w kółko i krzyżyk. Nie mają też wzroku, który nadawałby się do patrzenia na kratkę 3 na 3. Musiałem więc podać jej planszę tak, jak świat podaje jej większość informacji, czyli przez węch. Każda cecha planszy, na przykład zajęte pole albo prawie domknięta linia, pobudza jeden typ prawdziwego neuronu węchowego. Z perspektywy muchy partia jest sekwencją zapachów. Niektóre pachną zwycięstwem, a przy innych lepiej się wycofać.
Jak się uczy
Mucha nie dostaje reguł gry. Nie wie, że trzy znaki w linii wygrywają. Dostaje wyłącznie dopaminę. Po wygranej odpalają neurony PAM, które niosą sygnał nagrody. Po przegranej odpalają neurony PPL1, które niosą sygnał kary. Remis jest wart 0,3 nagrody, co mniej więcej oddaje mój własny stosunek do remisów.
Najciekawsze dzieje się po partii. Mucha odtwarza każdy swój ruch i porównuje to, czego się po nim spodziewała, z tym, co faktycznie dostała. Ta różnica, czyli błąd predykcji nagrody, decyduje o tym, które synapsy się wzmocnią, a które osłabną. Na tej samej zasadzie opiera się uczenie ze wzmocnieniem w AI. Tutaj widać ją jednak na prawdziwym okablowaniu, a nie na macierzy z losowymi wagami.
Ruchy bliżej końca partii dostają większą część zasługi albo winy, bo to one zwykle przesądzają o wyniku. Mucha uczy się też, obserwując ruchy przeciwnika, co u ludzi zdarza się zaskakująco rzadko.

Co z tego wyszło
Świeża mucha przeciwko przeciwnikowi, który zawsze blokuje i zawsze domyka swoją linię, przegrywa 85% partii. Po stu partiach treningowych przegrywa 53%. Po tysiącu przegrywa 17%. Po trzech tysiącach przegrywa 5%, a 71% gier kończy remisem. To średnie z sześciu much, z których każda zdawała egzamin z 200 partii.
Remis jest tu sukcesem. Kółko i krzyżyk to gra rozwiązana i przy bezbłędnej grze obu stron zawsze kończy się remisem. Godny przeciwnik to więc taki, z którym nie da się wygrać.
Muchy różnią się też talentem. Po tysiącu partii jedne przegrywały 8% gier, inne 40%. Po trzech tysiącach wszystkie zeszły poniżej 8%. Doświadczenie wyrównuje różnice w talencie, co jest pocieszające również poza entomologią.
Jest jeszcze jeden drobiazg, który mnie bawi. We wszystkich 5478 możliwych pozycjach na planszy mucha korzysta z 1619 komórek Kenyona. Mit o dziesięciu procentach mózgu tu nie działa, bo mucha używa 62% swojego ośrodka uczenia. Reszta czeka na zapachy, których kółko i krzyżyk po prostu nie wydziela.
Moja własna mucha
Moja mucha zaczynała jako Larwa, bo tak aplikacja nazywa świeży mózg. Przegrywała wtedy ze sprytnym przeciwnikiem 90 partii na 100. Po 300 grach treningowych była Nowicjuszką i przegrywała 38. Po 700 awansowała na Uczennicę z 12 porażkami.
Ciekawie wyglądał etap pośredni. Po 400 grach mucha prawie przestała wygrywać ze sprytnym przeciwnikiem, za to coraz częściej z nim remisowała. Najpierw nauczyła się nie przegrywać, a dopiero potem wygrywać, co zna każdy, kto zaczynał w nowej pracy.
Po 6000 gier jest Wprawna. Przegrywa 4 partie na 100, wygrywa 29, a resztę remisuje. Ostatnie 300 gier niewiele już jednak zmieniło, bo tempo uczenia z czasem spada. Plastyczność mojej muchy wynosi dziś 46%. Uczy się wolniej, ale też trudniej wybić jej z głowy to, co już wie. Znam ludzi, u których działa to dokładnie tak samo.

Możesz spróbować wytrenować swoją muchę: https://flybrain.cdest.eu (wróć tu jednak po resztę tekstu)
Mucha z Dooma i moja mucha
We wrześniu internet podłączył mózg muchy do wszystkiego, co miało klawiaturę. Mucha grała w Dooma, cięła klocki w Beat Saberze i handlowała bitcoinem. Większość tych filmów pokazywała ruch, a nie naukę.
Najpoważniejszy z tych projektów, DOOMFLY, zasługuje jednak na osobne zdanie. Jego autor puścił obraz z gry przez cały konektom samca muchy i za każde trafienie podawał jej dopaminę kary. Uczciwie opublikował też wynik: mucha nie zdała testu warunkowania.
Moja mucha uczy się tym samym mechanizmem. Dopamina zmienia u niej te same synapsy, między komórkami Kenyona a neuronami wyjściowymi. A jednak moja mucha się nauczyła. Nie dlatego, że jest mądrzejsza. Dostała zadanie, w którym partia ma kilka ruchów i wyraźny koniec, a po każdej grze może spokojnie przejrzeć swoje ruchy i sprawdzić, który zawinił.
Mucha w Doomie dostaje ułamek sekundy kary w świecie, który nie zatrzymuje się ani na chwilę, i sama musi zgadnąć, za co. To mniej więcej różnica między nauką z kluczem odpowiedzi a nauką w trakcie bójki w barze.
Dlatego moja mucha zdaje egzaminy: sto partii z wyłączonym uczeniem przed treningiem i sto po nim. Jeśli wynik się nie poprawia, mucha się nie nauczyła i żadna animacja tego nie ukryje. Na stronie widać przy tym każdy krok. Widać, które neurony odpalają przy każdym ruchu, jak mucha wyobraża sobie każdą możliwą planszę, kiedy przychodzi dopamina i które synapsy się po niej zmieniają.
Czym ten projekt nie jest
To nie jest symulacja całego mózgu muchy, tylko jej ośrodka uczenia, a neurony są w nim dużo prostsze niż w symulacjach z Dooma. Sposób podania planszy i część mechaniki są uproszczone, a wszystkie uproszczenia opisałem w repozytorium. Zwykła tabela z 5478 pozycjami nauczyłaby się tej gry szybciej. Tyle że tabela nie ma dopaminy, a mucha ma.
Jest też wynik, który mnie najpierw zaskoczył. Mucha z losowym okablowaniem uczy się prawie tak samo szybko jak ta zbudowana na prawdziwym konektomie. Okazuje się, że to zgodne z biologią. U prawdziwej muchy połączenia neuronów węchowych z komórkami Kenyona są w dużej mierze przypadkowe i każdy osobnik ma je trochę inne.
Ewolucja nie zapisała w tym miejscu gotowej wiedzy. Zbudowała maszynę do jej zdobywania. To chyba najciekawsza rzecz, jakiej nauczyła mnie ta mucha.
Wyzwanie: oko w oko z muchą
Każdy odwiedzający dostaje własną muchę z czystym mózgiem, czyli Larwę. Możesz grać z nią ręcznie, a ona po każdej partii będzie się uczyć na Twoich błędach. Możesz też kliknąć „Trenuj automatycznie (300 gier)”. Mucha zda wtedy egzamin, rozegra 300 partii z różnymi przeciwnikami, zda drugi egzamin i pokaże wynik przed treningiem i po nim. Jeśli chcesz ją porządnie przeszkolić, w obozie treningowym możesz od razu dorzucić jej 1000 albo 5000 gier.
Moja mucha była Uczennicą po 700 grach, a Wprawną zobaczyłem na egzaminie po 5700, bo po drodze jej nie sprawdzałem. Czy Twoja zrobi to szybciej?
Potem zacznij właściwą rozgrywkę. Wprawna mucha wciąż przegrywa ze sprytnym algorytmem kilka partii na sto, więc ma słaby punkt. Znajdź go. Kiedy znajdziesz zagranie, na które nie ma odpowiedzi, spróbuj je powtórzyć. Mucha uczy się także z gier z Tobą, więc za którymś razem może już nie dać się nabrać.
Wrzuć pod moim postem na LinkedIn poziom swojej muchy, wynik egzaminu ze sprytnym graczem i liczbę gier, po której przestałeś z nią wygrywać. Jedno ostrzeżenie: przycisk „Nowa mucha (zapomnij wszystko)” działa dokładnie tak, jak się nazywa. Wyczyszczenie ciasteczek działa tak samo, więc dla muchy jest lobotomią.
Zagraj, sprawdź, przeczytaj
- Zagraj wytrenuj swoją muchę: https://flybrain.cdest.eu
- Kod na licencji MIT: github.com/GrzegorzOle/flybrain-tictactoe
- Dane połączeń: FlyWire Consortium, release v783, CC BY 4.0, doi:10.5281/zenodo.10676866
- Dorkenwald i in. (2024), Neuronal wiring diagram of an adult brain, Nature 634
- Caron i in. (2013), Random convergence of olfactory inputs in the Drosophila mushroom body, Nature 497
- DOOMFLY: github.com/nftechie/doomfly