5

저는 건물에있는 우주 사수 게임에서 적들을 공격하기 위해 신경망을 사용하는 것을 고려하고 있습니다. 네트워크에 대한 확실한 결과물 세트가 없을 때 신경 네트워크를 어떻게 훈련합니까?신경 네트워크를 사용하여 "소프트"솔루션을 해결하는 방법은 무엇입니까?

+0

나는 당신을 싫어하지만, 유한 상태 기계는 프로그래밍과 밸런스가 훨씬 쉬우 며, 비정상적인 상황과 게임 AI에 대한 일반적인 해결책을 처리합니다. http://au.gamespy.com/pc/fear/698080p1.html 참조 –

+0

죄송합니다. 나는이 페이지로 연결됩니다 - FEAR AI - 그들이 어떻게했는지 (훌륭한 읽을 거리, 적어도 아이디어를 찾으십시오) http : //web.media.mit.edu/~jorkin/gdc2006_orkin_jeff_fear.pdf –

+0

필자는 FSM이 아닌 다른 것을 사용하고 싶습니다. 그들은 충분한 시간으로 쉽게 능가 할 수 있으며, 이제는 더 이상 놀 수있는 재미가 없습니다. 끊임없이 학습하는 신경 네트워크를 사용하면 적의 전술에 적응할 수 있습니다. 그 외에도 여전히 학문적 인 질문으로 취급하는 것은 나쁜 생각이라고 생각합니다. – RCIX

답변

6

나는 지금 신경 네트워크를 연구 중이며 잘 정의 된 입력 및 출력 인코딩이 없다면 꽤 쓸모없는 것처럼 보입니다. 전혀 복잡하지 않습니다 (http://en.wikipedia.org/wiki/VC_dimension 참조). 그렇기 때문에 뉴런 네트워크 연구는 20-30 년 전 초기 과장된 이래로 응용 프로그램이 거의 없었기 때문에 의미/상태 기반 인공 지능이 실제 응용 프로그램에서 성공했기 때문에 모든 사람의 관심을 이끌어 냈습니다.

  • 그래서 시작하는 좋은 장소는 게임의 상태를 신경망의 입력으로 나타내는 방법을 알아내는 것일 수 있습니다.
  • 다음으로 어떤 종류의 출력이 게임의 동작에 해당하는지 파악해야합니다.
  • 사용할 신경망의 구조에 대해 생각해보십시오. 신경 네트워크에서 흥미로운 복잡한 동작을 얻으려면 네트워크가 거의 재발해야합니다. '메모리'가 있기 때문에 반복적 인 네트워크가 필요합니다. 그러나 그 이상의 경우에는 더 이상 할 일이 없습니다. 그러나 복잡한 구조를 가진 반복적 인 네트워크는 실제로 행동하기 위해 훈련하기가 어렵습니다.
  • 신경망이 성공한 분야는 분류 (이미지, 오디오, 문법 등) 및 통계적 예측의 제한된 성공 인 경향이 있습니다 (어떤 단어가이 단어 뒤에 올 것으로 예상됩니까? 내일 주가가 어떻게됩니까?)

간단히 말해서 핵심 적 AI가 아닌 게임의 작은 부분에 신경망을 사용하는 것이 좋습니다.

+0

저는 건강, 현재 속도, 입력에 대한 방향 및 거리와 같은 기본 입력을 사용할 수 있고 촬영 방향, 현재 촬영 값 및 추력 벡터 또는 회전 속도를 가속/감속 값으로 가질 수 있다고 생각합니다. 또한 "반복적 인"신경 네트워크에 대한 더 많은 정보에 대한 링크를 제공 할 수 있습니까? 나는 그들에게 익숙하지 않다. – RCIX

+0

반복적 인 네트워크는 출력이 입력으로 뉴런에 피드백된다는 것을 의미합니다. 다른 행동을하는 신경망의 종류가 많이 있습니다. 몇 가지 간단한 것들은 elman 네트워크입니다 http://wiki.tcl.tk/15206 및 hopfield 네트워크 http://en.wikipedia.org/wiki/Hopfield_network 어떻게 작동하는지, 그래서 대학 강의 노트와 Google 학자를 통해 검색하는 것이 좋습니다. 다시 말하자면,이 연구의 대부분은 학계를 떠나지 않았기 때문에 실제 문제를 해결하기가 어렵 기 때문입니다. –

2

AI Dynamic game difficulty balancing에서 다양한 AI 기술과 참조를 확인할 수 있습니다.

편집 (고급 AI 개념으로 탐구하지 않고, 정말 멋진 될 것 "적을 둘러싸고"와 같은 IMO, 당신은 적 행동 구현할 수) : 당신이 공간 사수 게임을하고 있기 때문에 그리고 당신은 당신의 적을위한 인공 지능을 원한다면, 나는 당신이이 링크를 흥미롭게 찾을 것이라고 믿는다 : Steering Behaviors For Autonomous Characters

+0

이것은 흥미 롭습니다. 그것은 적어도 선수들이 재미있게 놀고있을 때 신경망으로 역동적 인 어려움을 제공하는 게임을 만들 수있는 것처럼 보입니다. – RCIX

0

자극에 대한 반응으로 FSM을 쉽게 수정할 수 있다고 생각 했습니까? 그것은 결국 숫자의 테이블 일뿐입니다. 여러분은 어딘가에 그것을 메모리에 저장할 수 있고, 숫자를 바꿀 수 있습니다. 나는 그것에 대해 블로그에 delerium을 연료로 조금 적어 썼다. 그것은 게임 AI 뉴스 사이트에서 이상하게 받아 들여졌다. 그렇다면 인간을 이길 수 있고 실제 소식을 접했던 Pacman AI를 지은 사람은 내 블로그에 더 유용한 정보에 대한 링크가있는 의견을 남겼습니다.

여기 내 의견은 내 블로그 게시물입니다. 게임 환경에 지속적으로 적응하기 위해 마크로프 체인을 사용했고, 플레이어가 게임 상황에 어떻게 반응하는지에 대해 컴퓨터가 배운 것을 오버레이하고 결합했습니다.

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

여기에 그 씨 강화 학습에 대한 굉장한 자원에 대한 링크입니다. 멋진 mcpacman이 나를 위해 게시했습니다.

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

여기이 신경 그물 접근하지

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

또 다른 멋진 링크를하지만 그들은 적응하고 지속적으로 배우고, 아마 신경 네트워크보다 게임에 더 적합 않습니다.

+0

흥미로운 접근 방식과 그 링크를 확인해 보겠습니다. – RCIX

0

Matthew Buckland의 두 권의 책을 소개합니다.

  • Programming Game AI by example
  • AI Techniques for Game Programming
  • 두 번째 책

      는 어쨌든 NN에 대해 이야기 때 대부분의 사람들이 무엇을 의미 인 역 전파 ANN로 이동합니다.

      즉, 의미있는 게임 AI를 만들고 싶다면 첫 번째 책이 더 유용하다고 생각합니다. FSM을 성공적으로 사용하는 것에 대해 좋은, 육감적 인 섹션이 있습니다. (예, FSM으로 쉽게 넘어갈 수 있습니다.)

    관련 문제