Sam nie raz i nie dwa kląłem na czym świat stoi albo przynajmniej wyłączałem zniesmaczony grę pod wpływem idiotycznych zachowań komputerowych adwersarzy. Albo, co gorsza – moich sojuszników. Tzw. dobra SI to jedno z niezwykle ważnych kryteriów oceny gry. Nikt przecież nie będzie czerpał zbyt dużej radości z tytułu, w którym więcej czasu i energii pochłania opanowanie kompletnie zdezorientowanej własnej drużyny niż walka z przeciwnikiem. Dobrym przykładem jest tutaj leciwy już FPS „The Sum of All Fears”, który doprowadził mnie pod tym względem do granicy rozpaczy i na tyle mnie do siebie zniechęcił, że już nigdy do niego nie wróciłem.
W swym pędzie do realizmu współczesne gry starają się również stworzyć SI bliską doskonałości. Jednak czy kiedykolwiek zastanawialiście się co to właściwie oznacza? Czy SI, której oczekujemy w grach ma sprawiać, że nasz przeciwnik nie będzie popełniał nawet najdrobniejszych błędów? Czy żołdacy na usługach komputera mają stanowić perfekcyjnie działającą machinę śmierci?
Na ów problem moją uwagę zwróciła wypowiedź Mike’a Neumanna dla GameSpy. Ten przedstawiciel studia Gearbox Software odpowiedzialnego za najnowszą odsłonę Brothers In Arms dowodzi, że SI zaimplementowana w Hell’s Highway będzie symulować zachowania ludzi. W pełni. Oznacza to nic więcej jak to, że komputerowi żołnierze będą nie tylko strzelać niczym najlepsi strzelcy wyborowi, ale także… popełniać błędy. W końcu już Seneka stwierdził, że Errare humanum est.
Bez wątpienia trudno odmówić racji Neumannowi (i Senece zarazem). Skoro gry mają być realistyczne – a jak wszyscy wiemy do tego dążą – powinny jak najwierniej oddawać rzeczywistość. Również jej niedoskonałości. Dlatego też, w najnowszej odsłonie Brothers In Arms – Hell’s Highway zobaczymy żołnierzy strzelających na oślep, wpadających w panikę etc. Świetnie. Powiem szczerze – nawet się z tego cieszę. Nie ma to jak siać ferment i zamieszanie w szeregach wroga. Jednak czy drzwi, które otwierają ludzie z Gearbox Software nie okażą się (dla innych) najzwyczajniej w świecie doskonałą wymówką, aby tuszować swoje niechlujstwo przy programowaniu SI?
Szarżuje na was straceńczo radziecki sołdat? „Ależ, drodzy państwo – przecież tak miało być. Obserwowaliście właśnie atak paniki, który wywołał chwilową niepoczytalność rzeczonego kamikaze”. Oklaski…
Nie zrozumcie mnie źle. Inicjatywa ludzi z Gearbox bardzo mi się podoba. Wreszcie może będziemy mieli wrażenie, że gramy przeciwko naturalnie zachowującym się przeciwnikom, a nie odpornym na stres, ostrzał i wybuchające tuż obok granaty robotom. Może.
Pozostaje jednak wątpliwość – czym będą różnić się te ściśle zaprojektowane, ludzkie reakcje (panika, strach, dezorientacja) od tego co jest dziś najzwyczajniej w świecie fuszerką SI? Czy my, gracze będziemy w stanie te dwa stany odróżnić? A może jak już napisałem, po prostu ktoś stara się nam sprzedać kit pod płaszczykiem „symulowania ludzkich zachowań”?
I wreszcie ostatnie pytanie – czego tak naprawdę oczekujemy po „dobrej SI”? W pełni realistycznego symulowania ludzkich zachowań i niedoskonałości psychiki czy może właśnie odhumanizowanej, androidalnej wręcz perfekcji?
Czy ludzie z Gearbox nie otworzyli właśnie „puszki z Pandorą”? (sic!)
Wolałbym aby zanim przeciwnicy nauczą się rzucać broń i w popłochu uciekać, umieli stanowić realne zagrożenie dla gracza. Nie oszukujmy się, dzisiaj jeśli giniemy to albo dlatego, że przeciwników jest więcej, mają lepszą broń, pozycję albo są nieludzko odporni, ewentualnie mają wpisany headshot jednym strzałem. SI potrafi reagować na typowe zachowania, jednak zupełnie nie radzi sobie z nieprzewidywalnym i podstępnym ludzkim zachowaniem. Nie za bardzo widzę sens tworzenia sztucznej ułomności NPCów, jeśli już teraz są najzwyczajniej w świecie głupi. Dopóki nie powstanie jakiś złożony system oceny zagrożenia, korzystnych czynników i sytuacji wroga (gracza), cała „inteligencja” będzie się opierać na zachowaniu „jeśli nastąpi A, to zrób B”, co zawsze będzie stwarzało przewagę człowieka.
Wedlug mnie, nie ma tu za bardzo o czym pisac. SI ma byc wiarygodna. Jezeli symuluje psa domowego, powinna latac za muchami, jezeli poilcyjnego, powinna muchy olewac. Oczywiscie swiat nie jest idealny i SI powinna to uwzgledniac, ale bez przesady. Irytujace jest to, ze w tej chwili cale rzesze wyszkolonych komandosow potrafia na polu walki biegac, jak dzieci po sporzyciu pierwszej frakcji z domowej destylarni 😉
Si ma służyć graczowi tak, aby w grę. . . grało się lepiej 😉 Co to za przyjemność jak wróg nagle by rzucił karabin i powiedział „p. . . . nie robię!”. Pamiętacie jak się twórcy Stalkera chwalili sztuczną inteligencją 😉 ile prawdy w tej dykteryjce to inna sprawa – ale mówili, że musieli ukrucić zapędy innych stalkerów bo rozgrywka na tym cierpiała.
Jesli maja realistycznie sie zachowywac to w momencie paniki musza sie potknac, upasc pod mur, niechybnie starac sie schronic, odgarnac helm z oczu. Jesli maja realistycznie sie zachowywac to chce widziec wplyw sytuacji na mimike twarzy w kazdym „momencie”. Musza myslec i „nie” biegac od murku do murku zeby sie schowac. Musza sami wrzucac granaty do pokoi bez skryptow. Musza umiec zachowywac sie cicho i bezszelestnie. Jesli ma byc realistycznie to widza, ze jak ktos przeladowuje to mozna biec i rzucic sie za nastepna oslone. Panowie? wierzycie, ze to juz nadszedl ten czas?A co do tej wymowki o ktorej wspomina autor. No coz jak cos wariuje to to widac ;]
Sztuczną Głupotę już w grach mamy, teraz pozostaje czekać na Sztuczną Inteligencję. To co teraz mamy w grach jest najczęściej oparte na skryptach (ktoś już o tym pisał) takich jak if cośtam then zrób_cośtam. Pamiętam, że przy tworzeniu map do Unreal Tournament trzeba było wyznaczać ścieżki dla botów, bo same z siebie praktycznie nie potrafiły się po mapie poruszać. Ciekaw jestem czy przez te kilka lat w tej materii wystąpił jakiś postęp. Jeśli zaś chodzi o komputerowych „pomocników” to raczej długo nam jeszcze przyjdzie czekać na to aż któryś z nich zda coś w rodzaju testu Touringa.
Przepraszam że się wtrącę, ale na czym opierają się wszystkie języki programowania jak nie o if. . . else. . . ? A i to co nazywacie oskryptowaniem zachowania to żaden skrypt tylko makro dla danego obiektu. Jeżeli przeciwnicy mieliby sami z siebie wrzucać granat do pomieszczenia to aby coś takiego zaszło musi wystąpić zdarzenie spełniające zadany warunek. Te można komplikować bez końca otrzymując coraz to większą liczbę permutacji zachowań, ale do żadnej sztucznej czy nie sztucznej inteligencji to nie doprowadzi, a człowiek i tak koniec końców się zaadaptuje i znajdzie buga. Poza tym te wynikają z faktu że programista jest leniwy, bo gdyby był, to komputerowy przeciwnik byłby nie do ruszenia, bo jak konkurować z refleksem na poziomie poniżej 1ns i celności co do 1px na dodatek z możliwością obliczenia wszystkich możliwych posunięć gracza na pewien czas w przód. . .
Żeby SI była ludzka trzeba jej zaimpletować ludzkie odruchy, uczucia, wspomnienia czy reakcje. Jeżeli tak, komputer musi wyuczyć się zachowań typowych dla człowieka, czyli teoretycznie gdy złoimy go w przysłowiowym stosunku „3:0” może powiedzieć „Oszukujesz, nie gram”. Idąc tym tokiem uświadamiamy sobie, że SI może wykonywać rachunki prawdopodobieństwa, według, których może wyjść mu: „dziś boli mnie głowa, będę grał słabo”. W tym momencie Ja, gracz, nie będzie usatysfakcjonowany bo jego drużyna wygra z drużyną NPC 4:0 a komputer będzie zachowywał się jak człowiek, który pierwszy raz w życiu dotyka klawiatury. Idźmy dalej, gdybyśmy z kolei wyeliminowali ludzkie zachowania przypuszczam, iż znikła by też typowa dla sportowców wola walki. Komputer atakował by przez cały mecz zmęczonymi zawodnikami lub przestał to robić już w 40′ minucie meczu, niezależnie od rangi spotkania. I tak źle i tak nie dobrze, mi tam głupota sztucznej inteligencji nie przeszkadza, bo nieraz popełniając błędy dostaje po dupsku od komputera. W sumie, nie chciałbym doczekać chwili, w której mógłbym pogadać z komputerem o rozterkach miłosnych.
pamiętam, że w niektórych grach fps po prostu schowałem się np. za skrzynką i oczekiwałem na przeciwnika, który sam do mnie podszedł (wcześniej się mu pokazałem); błędy SI zdarzają się tylko w dawniejszych grach, dzisiaj to rzadkość
Niestety pojęcie SI (AI) to tylko i wyłącznie chłyt marketingowy. Od strony gracza, zaledwie kilka sekund wystarczy, aby rozpoznać wzorce zachowań przeciwników i wyprowadzić skuteczne kontr zachowanie, choćby nie wiem jak złożony był system AI. Z drugiej strony, czyli od strony kodera, wystarczy sięgnąć choćby na strony Gamasutry, gdzie opisane zostało projektowanie dziesiątków rozmaitych systemów sztucznej inteligencji, aby zorientować się, iż z rzeczoną sztuczną inteligencją ma to tyle wspólnego co piernik z wiatrakiem. Większość algorytmów jest tak uproszczona, że jeżeli ktoś ma choć szczątkową wiedzę w temacie, ogarnia go pusty śmiech. Moim zdaniem jedynym w miarę racjonalnym sposobem stworzenia choćby namiastki sztucznej inteligencji, jest oparcie się na technologii sieci neuronowych, algorytmów genetycznych lub immunologicznych. Tylko że tu pojawia się pewien problem. O ile zaprojektowanie takiej sieci (prostej) nie jest jakoś specjalnie skomplikowane, to nauczenie jej czegokolwiek to już zupełnie inna sprawa. Także błagam, niech już nikt nie pierniczy o ultrarealistycznym AI, a co dopiero o wprowadzaniu do niego czynnika ludzkiego błędu (sic!). Efekt będzie taki sam jak zawsze. Trup padnie u naszych stup, a wraz z nim przechwałki PRów o niebiańskim systemie sztucznej inteligencji.
wymaganie od AI inteligencji. Ale jak popatrzec na wielu w multi, to widac ze najpierw wypadaloby popracowac nad naturalna inteligencja. . .
Tu nie chodzi o to, człowiek jest tylko człowiekiem, a z inteligencją się rodzi i kształtuje ją przez całe życie, ciężko ją jest nabyć jak się jej w sobie nie ma. Można zdobyć jedynie wiedzę, co nie równa się inteligencji. Chodzi o to raczej czego my oczekujemy od Sztucznej Inteligencji w grach komputerowych, tego żeby była perfekcyjna czy ułomna jak ludzka. Tak jak powiedział neth teraz ginie się np. dlatego, że przeciwników było 3x więcej. Ale czy perfekcyjna SI nie będzie dla nas zbyt dużym wyzwaniem w grze? Wtedy zamiast 10 przeciwników powinniśmy się podczas misji natknąc na jednego, który i tak będzie zbyt pefekcyjny byśmy go pokonali, bo jesteśmy ludzmi i czasem popełniamy błędy. Więc może chcemy żeby SI była bardziej ludzką i też je popełniała? Tylko gdzie zostanie postawiona granica tej ułomności SI, osobiście nie chciałbym zobaczyć panikującego żołnierza z drużyny przeciwnej, który robi dziką szarzę strzelając na ślepo przed siebie podczas gdy ja siedzę zabunkrowany za jakimś stolikiem. Zresztą człowiek jest zbyt złożony, żeby wszystkie jego możliwe zachowania w danej sytuacji przenieść na postać w grze. Wydaje mi się, że to jest nawet niemożliwe. I drugą stroną medalu jest to, że może ona być wykorzystywana jako argument przeciwko błędom popełnionym przez twórców SI w grze, o czym wspomniał autor tekstu. Dlatego trudno na tym polu zadowolić każdego i trzeba znaleźć złoty środek pomiędzy tymi dwiema opcjami.
Prawda, hjest jednak male ale. . to jak jestesmy wychowywani, ksztaltuje sposob myslenia. Rozne kultury maja rozny system wartosci, zachowan, norm itp. To ze szkoly ucza tylko wiedzy, a nei tego jak myslec, uwazam za spory problem szkolnictwa. Wiadomo, z mula Einsteina nie zrobisz, ale to nie znaczy, ze nie mozna go nauczyc ze telewizja jest wymyslona. . .
W grach to jest wirtualna Nieinteligencja 😉
Ale ja bardzo chętnie chciałbym walczyć z 1 przeciwnikiem :)Chciałbym aby SI (w kontekście gier FPS):1. Starała się przeżyć, a dopiero potem spróbowała mnie załatwić,2. Korzystała z apteczek gdy jest ranna,3. Podnosila amunicję która wszędzie leży (a zawsze dostępna tylko dla gracza), pod warunkiem pkt. 14. Potrafiła się schować skutecznie np. za murkiem5. Strzelać na oślep wystawiając tylko rękę zza ukrycia, np. aby uciec z pokoju (pkt. 7)6. Miala oczy i uszy które działają podobnie jak nasze ludzkie, tj. SI nie wie, że za rogiem stoi gracz (a na podstawie współrzędnych gracza może to wiedzieć), tylko się dowie o tym jak zaglądnie za róg (delikatnie oczywiście – pamietajmy o pkt. 1)7. Potrafiła otwierać dzwi – jeśli dev wstawił SI do pokoju, a my ostrzelamy okno, to SI nie powinna jak ta głupia małpa za 2 sekundy pokazać się cała w oknie – tylko uciekać z pokoju – bo za chwile może wlecieć granat, a nasza SI chce przeżyć (pkt. 1)8. Potrafiła się komunikować z innymi SI 9. Nie strzelała od razu jak mnie zobaczy, tylko poczekała na dobrą sytuację do strzału10. Wiedziała jakie jest jej zadanie, jeśli ma karabin w ręku i czegoś lub kogoś pilnuje – to niech nie przechodzi kolo okna w lewo i prawo – tylko niech wystawi łeb nad parapet i niech siedzi i obserwuje. 11. Musiała jeść, pić, odczuwać zmęczenie, spać i załatwiać swoje potrzeby fizjologiczne. 12. Potrafiła oszukiwać, jeśli biegnie np. schować się za róg, pada strzał – SI może oszukać, że oberwało – krzyknąć z bólu osunąć się na ziemię za rogiem, po czym wstać i przyszykować się do strzału – może udało mu się oszukać gracza. 12. Mieć swój honor, morale. Jeśli SI jest handlarzem narkotyków i właśnie go ścigamy – może wziąć zakładnika. Jeśli jest żołnierzem, w dodatku śmiertelnie rannym – może sobie strzelić w łeb. Wpisujcie – czego wy oczekujecie od SI.
Z tego co czytam to wy tu chcecie miec w grach byty ktore bede przetwarzaly znane (wczesniej wgrane) im dane dla przystosowania sie czyli przetrwania. Dajmy im jeszcze mozliwosc uczenia sie, czyli zapamietywania i w taki o to sposob bedziemy dla przyjemnosci rozwalac inteligentne istoty, bo czym jest dla nas inteligencja jak nie wykorzystywaniem nabytych wczesniej danych dla uzyskania innych bardziej wydajnych danych przydatnych do przetrwania. Tak ze uważam ze takie istoty z czasem (liczba rozgrywek) mogły by dojsc do takiej perfekcji ze czlowiek by im nie podolal, a wtedy sytulacja byla by odwrotna do tej w temacie, rozwazalibysmy jakie jeszcze mozna by wprowadzic ograniczenia pozwalajace grac.
dwa razy SI zaskoczyła mnie podczas gry, pierwszy raz w leciwym HL zaczęli rzucać we mnie granaty i sprytnie się chować. Drugim razem w FC, SI okrążyła mnie i wpakowała serię w plecy, podczas gdy jego kompani skutecznie odciągnęli moją uwagę od skradającego się SI. Prawda jest taka, że gdyby SI było nieugłaskane przez autorów danej gry to po prostu pochowałoby się po zakamarkach planszy i czekało aż się pojawimy – przynajmniej za pierwszym razem 🙂
To jeszcze proszę napisać co niby jest normalnym i logicznym ludzkim zachowaniem. . .
Akurat Sowieci na froncie wschodnim zazwyczaj szaleńczo szarżowali, na zawiłości taktyczne nie zwracając specjalnej uwagi. W armii pruskiej pod ogniem wrogiej artylerii przeformowywano kolumny, żeby zachować dyscyplinę. W armii napoleońskiej zdarzało się sprawdzanie morale danego oddziału poprzez rozkazanie mu stania przez parę godzin pod ogniem artylerii nieprzyjaciela. Coś bliższego czasowo? Bitwa nad Sommą, i generalnie większość I wojny światowej, czy falowe ataki na karabiny maszynowe są logiczne?A właściwie w kazdych czasach historycznych w każdej armii masowo zdarzało się olewactwo, głupota, pijaństwo itd. No bardzo jestem ciekaw jak to zasymulować 🙂
Moim zdaniem perfekcyjne SI to nic innego jak perfekcyjne odwzorowanie ludzkich zachowań, ludzkiej inteligencji. Przy czym, jeśli chcemy osiągnąć jak najwyższy realizm, dobrze byłoby umiejętnie aplikować sztuczną inteligencję – nie wszyscy ludzie mogą cieszyć się tak samo wysokim współczynnikiem IQ. Również należałoby zadbać o zgodność z fabułą pod tym względem – np. jedna rasa posiada wyższą inteligencję niż inna, androidy są programowane do konkretnych zachowań, w których to aspektach przewyższają ludzi itd. Moim zdaniem tak mądrze rozplanowana aplikacja SI jest kluczem do sukcesu.