Jak mogę zarządzać złożoną sztuczną inteligencją? [Zamknięte]

11

W przeszłości korzystałem z prostych systemów, takich jak maszyny o skończonych stanach (FSM) i hierarchiczne FSM, do kontrolowania zachowania AI. Ten wzór rozpada się bardzo szybko lub dowolny złożony system.

Słyszałem o drzewach zachowań . Wydają się być kolejnym oczywistym krokiem, ale nie widziałem jeszcze działającej implementacji lub naprawdę jej nie wypróbowałem.

Jakie inne wzorce mogą ułatwić zarządzanie złożonymi zachowaniami AI?

Tetrad
źródło
Słyszałem też, że istnieje kilka sposobów zarządzania automatami państwowymi
żart z
1
To dość niejasne pytanie. Istnieje wiele technik zarządzania „złożoną” sztuczną inteligencją, ale najlepsza dla każdej sytuacji może różnić się od innej. Wdrożyłem dość złożoną sztuczną inteligencję, używając jedynie behawioralnych list akcji, ale to rozwiązanie nie zadziała dla RTS; techniki, które widziałem w grach RTS, były niezwykle złożone, ale wciąż eleganckie, jednak byłyby bezwartościowe w żadnej innej grze. Jeśli masz na myśli konkretną grę lub sztuczną inteligencję, możesz uzyskać bardziej trafne i wnikliwe odpowiedzi, jeśli podasz jej treść.
Sean Middleditch

Odpowiedzi:

3

Drzewa zachowań to naprawdę świetny sposób na zarządzanie AI, a deweloper Ai Game to najlepsze miejsce, aby dowiedzieć się o nich! Istnieje wiele przykładowych implementacji w takich miejscach jak Codeplex, a nawet własne wdrożenie silników AIGD Sandbox (co jest wprawdzie dość złożone i trudne do naśladowania).

W zeszłym roku na spotkaniu z AI było dużo podekscytowania planistami , ale w tym roku wiele z nich zniknęło. Najlepsza wskazówka wydawała się być na początek prosta. Wydaje się, że całe 20% pracy związanej z uzyskaniem 80% rzeczy jest w większości przypadków prawdziwe

Cubed2D
źródło
2

Jedną z rzeczy, które uważam za ważne, jest oddzielenie, dlaczego agent chce coś osiągnąć od tego, jak to robi. Planiści działań zorientowani na cel robią to dobrze, ale są też inne rozwiązania. Daje to dużą elastyczność w konstruowaniu agentów, ponieważ możesz wybierać spośród zestawu celów i zestawu działań.

Drzewa behawioralne zaprojektowano tak, aby obejmowały całe rozwiązanie - zarówno podejmowanie decyzji, jak i działania - i jako takie może być trudne do utrzymania.

tenpn
źródło
2

Jedną z technik, którą powinieneś znać w każdym przypadku, jest podejście oparte na liście akcji. Na najprostszym poziomie jest to tylko lista obiektów akcji, które każdy obiekt akcji ma swoją metodę update () o nazwie każda ramka. Możesz jednak szybko to rozwinąć, aby umożliwić blokowanie działań, wiele ścieżek działań, grupy potomne itp. Prawie wszystko, co możesz zbudować za pomocą FSM na wysokim poziomie, może być zaimplementowane w bardziej modułowy, elastyczny i możliwy do debugowania sposób z działaniem lista za pomocą akcji zachowania.

Oprócz bycia użyteczną techniką do zarządzania wszystkimi animacjami, wyszukiwaniem ścieżek i innymi różnymi „rzeczami”, które mogą robić twoje postacie, sprawia, że ​​wdrażanie systemu decyzyjnego opartego na priorytetach poprzez tworzenie działań behawioralnych jest trywialne.

Kilka uwag na temat korzystania z nich można znaleźć w tym slajdzie: http://sonargame.com/2011/11/01/new-game-slides/

Jestem pewien, że były też artykuły na ten temat w serii AI Programming Wisdom.

Sean Middleditch
źródło