Parę rzeczy o Sztucznej inteligencji

in #polish6 years ago

Temat AI rozwija się w dość dziwnych kierunkach moim zdaniem. Komputery powoli zaczynają myśleć, ale nie wiadomo o czym ;) Aktualnie jeden komputer przechodzi Super Mario Bros (o czym napiszę niebawem wpis). Ale przecież wcześniej nie było takiego rodzaju sztucznej inteligencji, a jakoś sobie gry radziły.

Brak AI

Wiele gier oczywiście nie miało AI (podejmowania decyzji) - Weźmy takie Mario - goomba chodziła w lewo, a jak napotkała na przeszkodę to w prawo. Jest to oczywiście <jakieś> podejmowanie decyzji, ale jakby mimowolne. Jeśli jest to możliwe i gra pozwala to polecam ten rodzaj AI - najprostszy w implementacji i działa ;)

Podejmowanie decyzji

Ogólnie często w grach coś musi podjąć decyzję. Dzisiaj próbuje się implementować różnego rodzaju algorytmy genetyczne, które np. na podstawie obserwacji tysięcy rozgrywek mają wybrać optymalną drogę (i tak dalej). Jednak w klasycznych wariantach radzono sobie inaczej rozwiązując różne problemy - np. Problem Komiwojażera (określenie jaką drogę wybrać by optymalnie przejść między wieloma punktami). Jak dobrze ma chodzić bohater NPC w Heroes 3 po mapie? Musi znać punkty ważne do których należy się kierować, a także określać szanse na dojście do nich. Nie zaatakuje gnollami np. Aniołów.

Różnego rodzaju systemy eksperckie mają za zadanie na podstawie obserwacji odpowiednio podejmować decyzje - bez symulacji sieci neuronowych i tak dalej. Moim zdaniem jest to dobra droga, gdyż wystarczy odpowiednio to zaprogramować i system jest bardzo dobry i nie musi się niczego uczyć. Jeśli widzisz anioły i nie pokonasz tego, to omiń ten punkt i poszukaj następnego. Oczywiście takie AI jest tak inteligentne jak człowiek, który je zaprogramował.

RandomAI

Najlepsze możliwe dla przeciętnego człowieka podejmowanie decyzji. Masz 5 kart, która jest najlepsza? A kto go tam wie, zagrywasz losowo. Co jest ciekawym mechanizmem, gdyż znając algorytm działania AI możesz przewidzieć jego ruchy. Z wykorzystaniem losowości nie możesz tego przewidzieć gdyż takie ruchy są pseudolosowe. Oczywiście nie do każdej gry nadaje się takie coś i należy sobie zdawać z tego sprawę.

Dlatego ciekawe to było w mojej grze Occult (o ile powstanie do końca :D) - nigdy nie byłeś pewien, że wygrasz i szanse na wygraną wynosiły średnio 50%. Oczywiście gra ostatecznie wyglądała tak, by małpa mogła w nią zagrać, ale jednak ... ;)

Taki system mogłoby więcej gier używać. Weźmy Pacmana, duch dochodzi do skrzyżowania i co dalej? Może iść losowo. Gra może nie byłaby tak trudna, ale z drugiej strony trochę głupio byłoby przegrać. Ew. nawet podwójne AI. Jak jest daleko to losowo, a jak blisko to szarża na Pacmana (co chyba było tak realizowane nawet).

Sztuczna inteligencja to przyszłość?

Powiem tak, obserwuję sobie LuigI/O i nie wiem co sądzić. Z jednej strony komputer przechodzi grę, z drugiej zajmie mu to pół roku (na oko). Przechodzi teraz planszę 5-3, więc troszkę mu zostanie (5-4, 6-1 do 6-4, 7-1 do 7-4 i 8-1 do 8-4). Nie wiem czy Mario można by było łatwo oprogramować, ale Snake ... w teorii byłoby łatwiej, by nie zjadał się (na ile można).

W każdym razie temat wszelakiego AI i podejmowania decyzji to podstawa tworzenia gier. Często człowiek nawet nie siedzi i nie studiuje książek, a próbuje sam opracować własny model. Ciekawe rzeczy powstają ;)


Artykuł powstał na podstawie pierwszego Tematu z Tematów Tygodnia - "Drzewa klasyfikacyjne".

Sort:  

Stoma gnollami już bym próbował :P

To zależy ile aniołów :D A przede wszystkim jakiego bohatera masz ;)

każdy byle nie z Inferno ;D

Ahh.. Heroes 3. To jedna z tych gier do których wraca się zawsze. W sumie chyba to zrobię.
A ty @fervi masz jakąś grę do której zawsze powrócisz po jakimś czasie?

Ciężko mi powiedzieć, bo dawno nie grałem - Warcraft 3 z TFT :P Wszelkie YGOPro co jakiś czas pobieram czy Urban Terror. Heroes 3 mam nawet na komputerze na silniku VCMI z dodatkami

Warcraft 3 gra świetna i dalej żyje, sam czasami pogrywam na różnych mapach typu "lorderonki" albo "werewolf". Teraz ogrywam Wiedźmina 3 i przypadł mi do gustu. :)

Sztuczna inteligencja, ciekawy temat. Tylko post bardziej że tak powiem z punktu widzenia informatyka. Ale patrząc tak szerzej, to inteligencja to nie tylko liczenie. Gdyby tak było to komputery byłyby bardziej inteligentne od ludzi. Inteligencja to też wyobraźnia, a to AI słabiej wychodzi :)

"Co jest ciekawym mechanizmem, gdyż znając algorytm działania AI możesz przewidzieć jego ruchy. Z wykorzystaniem losowości nie możesz tego przewidzieć gdyż takie ruchy są pseudolosowe."

Losowość tyczy się konkretnego/krótkiego wycinku czasu, natomiast w systemie zamkniętym, zdarzenia przestają być losowe* a stają się powtarzalne, w związku z czym możemy je przewidzieć. Oczywiście mowa w kontekście decyzji statystycznej, niemniej jednak można na tej podstawie podejmować racjonalne i efektywne decyzje...

"Sztuczna inteligencja to przyszłość?"

Uważam, że nazwanie tych algorytmów inteligentnymi jest marketingiem zbyt daleko idącym, na tyle daleko, że niektórzy naprawdę utożsamiają te algorytmy z inteligencją w wymiarze pełnym - ludzkim.

Jest przynajmniej kilka czynników składających się na inteligencje i podejmowanie decyzji których ani teraz ani w najbliższej przyszłości żadna technologia nie będzie w stanie zastąpić...

@fervi: co do duchów w Pacmanie, to sprawa jest ciekawsza, niż się wydaje. Każdy duszek ma swój "charakter". Na pewno jeden z nich śledzi głównego bohatera, a drugi próbuje zagradzać mu drogę, jeden chyba chodzi losowo albo losowo zmienia algorytm (nie pamiętam, a i źródła są nie do końca spójne).

Coin Marketplace

STEEM 0.16
TRX 0.15
JST 0.028
BTC 54225.25
ETH 2280.38
USDT 1.00
SBD 2.29