5

Rozważam użycie sieci neuronowej do zasilania moich wrogów w kosmicznej strzelance, którą buduję i zastanawiam się; jak szkolić sieci neuronowe, gdy nie ma jednego ostatecznego dobrego zestawu wyjść dla sieci?Jak używać sieci neuronowych do rozwiązywania "miękkich" rozwiązań?

+0

Nienawidzę cię zastrzelić, ale skończone maszyny stanowe są o wiele łatwiejsze do zaprogramowania i zrównoważenia, radzą sobie w nietypowych sytuacjach, lepiej i powszechnym rozwiązaniu gry AI. Zobacz http://au.gamespy.com/pc/fear/698080p1.html –

+0

Przepraszamy, chciałem połączyć cię z tą stroną - FEAR AI - jak to zrobili (świetna lektura, przynajmniej szukasz pomysłów) http: //web.media.mit.edu/~jorkin/gdc2006_orkin_jeff_fear.pdf –

+0

Jestem pewien, że wolę coś innego niż FSM. Mogą być łatwo przechytrzyni z wystarczającą ilością czasu, więc nie jest już zabawnie grać. Dzięki sieci neuronowej, która nieustannie się uczy, może przystosować się do taktyki wroga. Poza tym, f nadal uważasz, że to zły pomysł traktować to jako pytanie akademickie. – RCIX

Odpowiedz

6

Obecnie studiuję sieci neuronowe i wydają się one zupełnie bezużyteczne bez dobrze zdefiniowanych kodowań wejścia i wyjścia, oraz w ogóle nie skalują się do złożoności (patrz http://en.wikipedia.org/wiki/VC_dimension). Właśnie dlatego badania nad siecią neuronową miały tak niewiele zastosowań od początkowego hype'a ponad 20-30 lat temu, podczas gdy AI oparte na semantyce/stanie przejęło interesy wszystkich, ponieważ odnosi sukcesy w aplikacjach świata rzeczywistego.

  • A więc dobrym miejscem do rozpoczęcia może być dowiedzieć się, jak liczbowo przedstawić stan gry jako dane wejściowe dla sieci neuronowej.
  • Następną rzeczą byłoby dowiedzieć się, jaki rodzaj wyników odpowiadałby działaniom w grze.
  • zastanów się nad strukturą sieci neuronowej. Aby uzyskać interesujące złożone zachowanie z sieci neuronowych, sieć prawie musi się powtarzać. Będziesz potrzebował sieci rekurencyjnej, ponieważ mają "pamięć", ale poza tym nie masz nic więcej do roboty. Jednak nawracające sieci o dowolnej złożonej strukturze są naprawdę trudne do wyćwiczenia.
  • Obszary, w których sieci neuronowe odniosły sukces, to klasyfikacja (obraz, dźwięk, gramatyka itp.) I ograniczony sukces w prognozowaniu statystycznym (jakie słowo spodziewamy się po tym słowie, jaka będzie cena jutra?)

W skrócie, prawdopodobnie lepiej będzie, jeśli użyjesz sieci neuronowych do małej części gry, a nie jako głównej sztucznej sztucznej inteligencji.

+0

Myślę, że mogę używać podstawowych wejść, takich jak zdrowie, aktualna prędkość i kierunek/odległość odtwarzacza dla wejść, a następnie mieć kierunek strzelania, aktualnie strzelającą wartość i wektor ciągu lub prędkość obrotową o wartość przyspieszenia/zwalniania. Czy możesz podać link do większej ilości informacji na temat "nawracających" sieci neuronowych? Nie znam ich. – RCIX

+0

Powtarzalna sieć oznacza tylko, że wyjścia są przekazywane z powrotem do neuronów jako dane wejściowe. Istnieje wiele różnych typów sieci neuronowych o różnych właściwościach. niektóre z nich to sieci elmańskie http://wiki.tcl.tk/15206 i sieci Hopfielda http://en.wikipedia.org/wiki/Hopfield_network Niewiele jest ogólnych informacji o tym, jak działają i jakie są ich " Naprawdę dobrze, więc lepiej przeszukaj notatki z wykładów uniwersyteckich i Google Scholar dla dokumentów. Ponownie powodem jest to, że większość tych badań nie opuściła środowiska akademickiego, ponieważ tak trudno jest je wykorzystać do rozwiązania prawdziwych problemów. –

2

Możesz sprawdzić AI Dynamic game difficulty balancing dla różnych technik sztucznej inteligencji i referencji.

(IMO, można zaimplementować wrogich zachowań, jak „otoczyć wroga”, który będzie naprawdę fajne, nie wnikając w zaawansowanych koncepcji AI)

EDIT: skoro robisz gra kosmiczna strzelanka i chcesz jakiejś sztucznej inteligencji dla swoich wrogów, wierzę, że znajdziesz interesujący ten link: Steering Behaviors For Autonomous Characters

+0

To jest interesujące. Wygląda na to, że mógłbym przynajmniej zaprojektować grę, aby zaoferować dynamiczną trudność z siecią neuronową, rozgrywającą się, gdy gracze dobrze się bawią. – RCIX

0

Czy uważałeś, że można łatwo modyfikować FSM w odpowiedzi na bodziec? W końcu jest to tylko tabela liczb, możesz trzymać ją gdzieś w pamięci i zmieniać numery w trakcie podróży. Napisałem o tym trochę na jednym z moich blogów, które napędzało delerium, i dziwnie zostało to zauważone przez jakąś stronę z wiadomościami o grze. Wtedy facet, który zbudował AI Pacman, która może pokonać ludzi i dostał prawdziwe wiadomości, zostawił komentarz na moim blogu z linkiem do jeszcze bardziej użytecznych informacji

oto mój wpis na blogu z moimi nieskończonymi wahaniami na temat jakiegoś pomysłu musieli używać łańcuchów Markowa, aby stale dostosowywać się do środowiska gry i być może nakładać i łączyć coś, co komputer dowiedział się o tym, jak gracz reaguje na sytuacje w grze.

http://bustingseams.blogspot.com/2008/03/funny-obsessive-ideas.html

a oto link do awesome zasobu około zbrojenia dowiedział się, że mr. smarty mcpacman wysłał dla mnie.

http://www.cs.ualberta.ca/%7Esutton/book/ebook/the-book.html

oto Kolejna fajna link

http://aigamedev.com/open/architecture/online-adaptation-game-opponent/

te nie są nerwowe podejście netto, ale one przystosować i ciągle się uczyć, i to prawdopodobnie lepiej nadaje się do gier niż sieciach neuronowych.

+0

Interesujące podejście, a ja sprawdzę te linki – RCIX

0

Odsyłam do dwóch książek Matthew Bucklanda.

Druga książka idzie do back-propagacji SSN, która jest, co większość ludzi myśli, kiedy mówią o NN tak.

To powiedziawszy, myślę, że pierwsza książka jest bardziej użyteczna, jeśli chcesz stworzyć znaczącą sztuczną inteligencję. Jest miła, mięsista sekcja na temat używania FSM z powodzeniem (i tak, łatwo jest wylecieć się z FSM).

Powiązane problemy