|
|
|
|
Teoretycznie: Sztuczna Inteligencja |
|
|
|
|
|
autor: Kamil
Witam w rubryce "Teoretycznie…", w której postaram się przedstawić zagadnienia od strony teoretycznej, nie praktycznej. Pomoże to nabyć odpowiednią wiedzę przed tworzeniem własnych silników. Dzisiaj zajmiemy się sztuczną inteligencją.
Sztuczna inteligencja, w skrócie S.I., czym to właściwie jest? Można powiedzieć, że w świecie współczesnych programistów tym, czym dla średniowiecznych alchemików kamień filozoficzny. Chociaż obecnie uważa się, że niemożliwe jest stworzenie idealnej S.I., o inteligencji człowieka lub jej przewyższającej, podejmuje się wiele prób. Sztuczna inteligencja to po prostu ożywienie czegoś nieożywionego, nadanie mu inteligencji, mobilizacja do samodzielnego działania. Idealna S.I. musi potrafić decydować, wybierać lepszą drogę, zbierać i przetwarzać informacje itd. S.I. z klikowego punktu widzenia jest nieco prostsza – zwykle chodzi o inteligencję przeciwników (np. by w nas strzelali, gdy nas widzą). Przyjrzyjmy się kilku ważnym elementom sztucznej inteligencji.
Poruszanie się
Zdolność poruszania jest jedną z najbardziej podstawowych cech S.I. Chodzi np. o to, by nasz obiekt, któremu tworzymy S.I. poruszał się, ale i omijał ewentualne przeszkody. W klikowym świecie aspekt wykrywania przeszkód zwykle przypada detektorom wokoło obiektu – gdy jeden wykryje przeszkodę, obiekt musi ją ominąć, czyli np. skręcić w kierunku obok przeszkody.
Reagowanie na czynniki
W tym elemencie S.I. chodzi o to, by nasz obiekt potrafił zareagować na coś. Np. tak jak w poprzednim przykładzie obiekt reagował na przeszkodę, tak powinien tutaj reagować np. na wroga. Gdy go zobaczy powinien oczywiście go zaatakować, ale może także się schować, lub bronić. To omówię w następnym elemencie.
Decydowanie
To całkiem ważny element zaawansowanej sztucznej inteligencji. Chodzi o to, by obiekt potrafił zadecydować w przypadku alternatywnych dróg i wybrać najlepszą. Czyli, np. gdy zobaczy wroga, może go zaatakować, lub się schować i zaatakować z ukrycia albo całkowicie dać sobie spokój. Natomiast osaczony może uciekać, lub się bronić. Innym przykładem może być wybór drogi do dostania się do celu – może iść na lewo, drogą krótszą, lecz niebezpieczniejszą, bądź na prawo, dłuższą, lecz mniej niebezpieczną. Tego elementu raczej nie spotkamy w grach klikowych, a szkoda.
Zbieranie, przechowywanie i wykorzystywanie informacji
Kolejny element zaawansowany. Chodzi o to, by nasz obiekt mógł informacje typu pozycja wroga zachować i wykorzystać. No i przykład – obiekt usłyszał od innego, że wróg jest w takiej a takiej części budynku, więc obiekt powinien się tam udać. Inny przykład to to, że nasz obiekt zna plany budynku i wie, gdzie jest skład broni, więc w przypadku braku amunicji może się tam udać.
No i myślę, że
doszliśmy do końca tego zagadnienia. O ile dwa pierwsze elementy są
podstawowe, to dwa kolejne spotykamy rzadziej, lub nawet w ogóle, a jednak
to ważne i proponuję, by przy projektowaniu kolejnego silnika sztucznej
inteligencji spróbować wprowadzić te elementy. Nie przerabialiśmy np.
rozumienia słów, no ale to proste S.I. do gry, a nie kandydat do testu
Turinga
|
|
|
by pepe9donkey |
|