Sztuczna inteligencja - bliżej, ale…

Niedawno, bez większego echa przez media przemknęła informacja o tym, że w pojedynku pomiędzy człowiekiem i komputerem ten ostatni wygrał 10:0. Tym razem areną była gra komputerowa "Star Craft II" - jedna z najpopularniejszych gier RTS (Real Time Strategy), która niezmiennie od wielu lat jest liderem gatunku w rozgrywkach e-sportowych. Gra trudna, wymagająca i widowiskowa.

O potyczkach maszyn z ludźmi pisze się od czasów, gdy nikt nawet nie słyszał o komputerach, a opisywane sytuacje były owocem wyobraźni autorów, którzy w swoich futurystycznych prognozach widzieli maszyny o zdolnościach dorównującym ludzkim. Nie chodziło oczywiście tylko o ich motorykę, ale raczej o umiejętność logicznego rozumowania, wyciągania wniosków i podejmowania decyzji. Być może opisy te były na tyle sugestywne, że gdy już zaczęły się pojawiać pierwsze doniesienia o maszynach, które od biedy moglibyśmy nazwać komputerami, to w powszechnym obiegu pojawił się termin "mózg elektronowy" niosący podskórnie sugestię intelektualnych możliwości takich maszyn. Pojęcie to funkcjonowało w publicystyce jeszcze w latach 70-tych ubiegłego wieku i używali go nawet ludzie nauki.

Gdy po II Wojnie Światowej prace nad komputerami przyspieszyły, a ich programowanie stawało się prostsze, to obok zaawansowanych naukowych zastosowań pojawiły się pierwsze próby tworzenia programów, które np. pozwalały na rozgrywkę w "kółko i krzyżyk" i nieco później w warcaby. Naturalnym kolejnym wyzwaniem były szachy, o których najwięksi mistrzowie tej dyscypliny mówili, że nigdy nie powstanie maszyna, która pokona w niej człowieka.

Szachy są bez dwóch zdań grą skomplikowaną, wymagająca intelektualnych predyspozycji i pewnej logicznej szlachetności. Obserwując pojedynek szachowych mistrzów wiemy, że w potyczce dwóch umysłów wygrywa ten, którego strategia i taktyczne zagrania dały mu przewagę prowadzącą do mata. Jednak po bliższym przyjrzeniu można dojść do wniosku, że szachy to takie "kółko i krzyżyk", tylko miliony razy bardziej skomplikowane. Obie te gry mają dwie cechy wspólne, które w pewnym zakresie definiują całą rozgrywkę - naprzemienne wykonywanie ruchów i skończoną, policzalną liczbę wariantów rozgrywki. "Kółko i krzyżyk" ma 26830 możliwych rozgrywek, szachy takich rozgrywek mogą mieć szacunkowo 10 do potęgi 120, czyli więcej, niż wszystkich atomów w obserwowalnym wszechświecie. Dużo? Dużo, ale nadal jest to zasób skończony, a jako taki może być poddany analizie, na podstawie której można stworzyć odpowiedni algorytm. Wybitny amerykański matematyk Claude E. Shannon już w latach 50. XX wieku zdefiniował podstawy programowania komputerów do gry w szachy, a jego prace posłużyły następcom do tworzenia co raz doskonalszych algorytmów, które, w uproszczeniu, opierały się na wybieraniu kolejnego ruchu z uwzględnieniem siły pozycji.

Przełom nastąpił w roku 1997, w którym komputer IBM Deep Blue pokonał w królewskiej grze arcymistrza Garrija Kasparowa. Mimo pewnych kontrowersji, to transmitowane na żywo wydarzenie uświadomiło ludziom, że odpowiednio przygotowana maszyna może skutecznie konkurować z człowiekiem na polu, na którym dominacja ludzkiego umysłu wydawała się niezagrożona. Czy to już jest sztuczna inteligencja? Niestety, tylko pozornie.

Komputer fantastycznie prowadził rozgrywkę nawet z najlepszym przeciwnikiem, ale decyzje podejmował na podstawie sztywnych reguł wynikających z zasad gry i na podstawie wiedzy dostarczonej przez programistów, przetwarzanej przez stworzone przez nich algorytmy. W największym uproszczeniu można napisać, że komputer potrafił wydajniej i skuteczniej szukać optymalnych posunięć wśród olbrzymiej ilości wcześniej dostarczonych danych - człowiek w tej konkurencji nie mógł się z nim równać. Co ważne, po każdej grze program nie stawał się "mądrzejszy", nie potrafił wykorzystać zdobytej właśnie wiedzy do zwiększania swojego potencjału.

Dużym krokiem naprzód był projekt zrealizowany przez tę samą ekipę z firmy DeepMind (Google), ale wykorzystujący już sieci neuronowe. W 2015 roku ich algorytm pozwolił na wygraną z kilkoma grami Atari, a już rok później powstał program AlphaGo. Wygrana w Go była swoistym świętym Graalem projektantów sztucznej inteligencji na całym świecie i w powszechnej opinii uchodziło za mało realne. Ale AlphaGo wygrał z jednym z najlepszych graczy świata Koreańczykiem Lee Sedolem osiągając wynik 4:1, a następnie pokonał 5:0 mistrza świata Chińczyka Ke Jie. Ta fascynująca historia została zarejestrowana przez ekipę Netflixa w filmie "AlphaGo".

Lee Sedol vs AlphaGo Move 37 reactions and analysis

W Korei, gdzie Go ma rangę sportu narodowego i cieszy się popularnością porównywalną z piłką nożną w Europie, najlepsi zawodnicy mają status celebrytów i często są bardziej rozpoznawalni, niż Cristiano Ronaldo. Pojedynek Lee Sedola z komputerem był wydarzeniem relacjonowanym przez stacje telewizyjne i miał oprawę godną największych wydarzeń sportowych. W konferencjach prasowych przed i po każdej partii uczestniczyło nawet kilkuset dziennikarzy. Przegrana jednego z najwybitniejszych zawodników była olbrzymim zaskoczeniem, a dla niektórych wręcz dramatem.

Gdzie kryje się tajemnica? Oczywiście w przejściu na sieci neuronowe, które co prawda nie idealnie, ale o wiele lepiej nadają się do tego typu rozwiązań. Dzięki ich zastosowaniu można było pokusić się o wdrożenie algorytmów uczących się, co przy poprzedniej, "szachowej" technologii nie za bardzo się udawało. Teraz programiści mogli wstępnie "nakarmić" program tysiącami rzeczywistych rozgrywek ucząc program zasad i tworzenia strategii, a następnie uruchomili kilka instancji programu w pojedynkach przeciwko sobie. Wykorzystując atuty sieci neuronowych zmuszali program do samodzielnego uczenia się budowania strategii i zwiększania swojego potencjału. Efekty przerosły wszelkie oczekiwania i to w okresie o wiele krótszym, niż prognozowano nawet w śmiałych przewidywaniach. Kolejny krok w kierunku sztucznej inteligencji został wykonany.

Ostatni sukces DeepMind to wygrana kolejnego programu AlphaStar w pojedynku z człowiekiem w grze "Star Craft II" Blizzarda. Nie bez przyczyny właśnie ta gra została wybrana - jest wyjątkowo wymagająca i w powszechnej opinii uchodzi za jedną z najtrudniejszych w historii. Rozgrywka odbywa się w czasie rzeczywistym i wymaga sprawnego jednoczesnego zarządzania na kilku płaszczyznach - ekonomicznej i militarnej, taktycznej i strategicznej. Decyzje podejmuje się błyskawicznie, a błędy nie są wybaczane. E-sportowe rozgrywki przyciągają miliony kibiców, a najlepsi zawodnicy zarabiają kwoty porównywalne z tenisistami.

I tym razem DeepMind wykorzystało podobny patent, jak w AlphaGo - zasilono program tysiącami historycznych rozgrywek dostarczonymi przez Blizzarda i na tej podstawie program uczył się zasad gry. Z każdą kolejną rósł jego potencjał, aż osiągnął poziom umożliwiający prowadzenie samodzielnej rozgrywki. Jednak nie był to poziom realnych zawodowców, żeby ten osiągnąć nauka musiała trwać dalej. I tu także powtórzono wcześniejsze rozwiązanie - sklonowane instancje programu zaczęły prowadzić rozgrywkę między sobą wykorzystując do tego wiedzę zdobytą w pierwszym etapie. Jednak teraz musiały z posiadanych zasobów tworzyć własne strategie i wybierać te zwycięskie.

Oczywiście rozgrywka odbywała się bez pośrednictwa interfejsu graficznego, program nie obserwował ekranu komputera ani nie używał kliknięć, jedynie przetwarzał cyfrowe dane związane z rozgrywką. Przyspieszało to wszystkie operacje dzięki czemu kolejne starcia trwały raptem po kilka sekund. Pozwoliło to na rozegranie milionów partii w bardzo krótkim czasie. Ponad to na pewnym etapie zaczęto separować kolejne "klony", które wykazywały się większą inicjatywą i skutecznością w tworzeniu własnych strategii. Ostatecznie stworzono zespół pięciu programów, z których każdy preferował inną strategię rozgrywki i taką drużynę wystawiono przeciwko dwóm zawodnikom z czołówki światowych rankingów. Programy dostosowano do ludzkich ograniczeń spowalniając go do statystycznych "ludzkich" 250 kliknięć na minutę (przy czym najlepsi zawodnicy klikają ponad 400 razy).

Wynik pojedynku oczywiście zaskoczył - obaj zawodnicy przegrali w stosunku 5:0.

DeepMind StarCraft II Demonstration

W tym przypadku z dużo większym optymizmem można mówić o sztucznej inteligencji. W grze tego typu dominują elementy nieprzewidywalne, reakcja przeciwnika nigdy nie jest oczywista, a kontroli wymaga kilka aspektów jednocześnie, przy czym są one wzajemnie od siebie uzależnione w stopniu mającym kluczowe znaczenie dla wyniku rozgrywki. Sytuacja w trakcie rozgrywki zmienia się bardzo dynamicznie, a zawodnicy zarządzają dziesiątkami jednostek o różnych cechach, sile i przeznaczeniu. Najprostszy błąd często niweluje przewagę uzyskaną przed jego popełnieniem. Ta wygrana maszyny, mimo że w pozornie niezbyt poważnej konkurencji, jest poważnym sygnałem potwierdzającym, że naprawdę coś się dzieje.

Czy to już jest ten moment, gdy powinniśmy zacząć się bać? Czy jakiś Skynet już planuje inwazję Terminatorów z twarzami sklonowanego Arnolda Schwarzeneggera? Wykluczyć tego nie można, ale prawdopodobieństwo jest bardzo znikome. Rozwój technologii sztucznej inteligencji jest faktem i będzie trwał. Autonomiczne samochody już wkrótce będą wyprzedzały nas na autostradach, już dzisiaj samoloty pasażerskie z setkami ludzi na pokładzie potrafią samodzielnie bezpiecznie startować i lądować, o samym lataniu już nie wspominając. Smartfony hasło "sztuczna inteligencja" mają na stałe wpisane w kampanie marketingowe.

Przy tych ostatnich warto na chwilę się zatrzymać. Sztuczna inteligencja w telefonie brzmi odrobinę podejrzanie, ale jest to przykład efektywnego użycia rozproszonych źródeł danych. Tymi źródłami jesteśmy my, użytkownicy. W smartfonach technologia AI ma zastosowanie głównie przy wykonywaniu zdjęć, potrafią one być naprawdę spektakularne i w porównaniu do wykonanych z pomocą nawet zaawansowanych lustrzanek prezentują się co najmniej nie gorzej. Szczególnie zdjęcia wykonywane w trudnych warunkach oświetleniowych lub z zastosowaniem predefiniowanych efektów lub filtrów. Dlaczego tak jest, to może przy innej okazji, teraz piszemy o sztucznej inteligencji, a ta odpowiada za inną część fotograficznej pracy.

Zakładam, że większość czytających spotkała się w swoich sieciowych podróżach z technologią znaną jako ReCaptcha (nomen omen, też od Google) - jesteśmy proszeni o potwierdzenie, że "nie jesteśmy robotem", stawiamy ptaszka w odpowiednim polu i dostajemy do wyboru sekwencję zdjęć, na których musimy wskazać np. samochody, koty, psy lub okna. Pozornie wygląda to na test naszego człowieczeństwa, ale w rzeczywistości wskazując właściwe zdjęcia karmimy danymi googlowe algorytmy. Dzięki temu firma może doskonalić oprogramowanie obsługujące automatyczną postprodukcję zdjęć wykonywanych smartfonami. Na podstawie zebranych danych i ich odpowiednim przetworzeniu, system w każdym telefonie doskonale odróżni kota i psa, rower i motocykl, albo samolot i ptaka. Nawet, gdy znajdują się daleko od obiektywu. Dzięki temu kamera współczesnego smartfona (a właściwie jej oprogramowanie) bezbłędnie rozpozna np. ludzką sylwetkę nawet na niejednolitym tle, co z kolei pozwala na zastosowanie algorytmów przetwarzania obrazu oferujących m.in. rozmycie tła (efekt Bokeh) lub doświetlenie pierwszego planu. Oczywiście procesy te są o wiele bardziej skomplikowane i wymagałyby dłuższego opisu, ale ważne w tym przypadku jest to, że do ich realizacji niezbędna jest pomoc tzw. sztucznej inteligencji, która uczy się dzięki temu, że my klikamy zdjęcia w Sieci. Czy zauważyliście, że od pewnego czasu jesteśmy częściej proszeni o rozpoznawanie znaków drogowych, sygnalizacji świetlnych i przejazdów kolejowych?

Jednak perspektywa wszechobecnych "inteligentnych" maszyn wcale nie musi być niepokojąca - inteligentny odkurzacz raczej nie rzuci się na nas w morderczym porywie, a równie inteligentny samochód nie rozjedzie nas w zemście za to, że zapomnieliśmy uzupełnić olej. Każda, choćby najinteligentnejsza maszyna nigdy nie podejmie decyzji będącej następstwem moralnego dylematu - do tego potrzebna jest świadomość. Sztuczna inteligencja nie podejmuje decyzji słusznych, podejmuje decyzje optymalne. Jeżeli skrzywdzi człowieka, to nie dlatego, że go nie lubi, ale w następstwie jego działań - albo popełnił błąd przy projektowaniu systemu, albo doprowadził do tego świadomie.

Z tego typu kłopotami już teraz borykają się projektanci samochodów autonomicznych - cały czas nie jest rozwiązany problem reakcji samochodu w sytuacji awaryjnej, w której z nienacka pod koła wpada dziecko. Jaką decyzję podejmie "inteligentny" samochód? Ominie dziecko zabijając pasażera po uderzeniu w przydrożne drzewo, czy wysyła pechowego małolata do szpitala zachowując przy życiu swój ładunek? W takiej sytuacji nawet człowiek miałby spory zgryz i ułamki sekundy na podjęcie decyzji…

Dopóki oprócz inteligencji maszyny nie zyskają świadomości, to będą pod kontrolą człowieka, który zawsze będzie dysponował bronią ostateczną - wyciągnięcie wtyczki rozwiąże każdy problem. Hasta la vista, baby…

Terminator 2 - Hasta La Vista Baby