machine learning - How to train an artificial neural network to play Diablo 2 using visual input? -
i'm trying ann play video game , , hoping wonderful community here.
i've settled on diablo 2. game play in real-time , isometric viewpoint, player controlling single avatar whom camera centered on.
to make things concrete, task character x experience points without having health drop 0, experience point gained through killing monsters. here example of gameplay:
now, since want net operate based solely on information gets pixels on screen, must learn rich representation in order play efficiently, since presumably require know (implicitly @ least) how divide game world objects , how interact them.
and of information must taught net... somehow. can't life of me think of how train thing. idea have separate program visually extract innately good/bad in game (e.g. health, gold, experience) screen, , use stat in reinforcement learning procedure. think part of answer, don't think it'll enough; there many levels of abstraction raw visual input goal-oriented behavior such limited feedback train net within lifetime.
so, question: other ways can think of train net @ least part of task? preferably without making thousands of labeled examples...
just little more direction: i'm looking other sources of reinforcement learning and/or unsupervised methods extracting useful information in setting. or supervised algorithm if can think of way of getting labeled data out of game world without having manually label it.
update(04/27/12):
strangely, i'm still working on , seem making progress. biggest secret getting ann controller work use advanced ann architectures appropriate task. hence i've been using deep belief net composed of factored conditional restricted boltzmann machines i've trained in unsupervised manner (on video of me playing game) before fine tuning temporal difference back-propagation (i.e. reinforcement learning standard feedforward anns).
still looking more valuable input though, on problem of action selection in real-time , how encode color images ann processing :-)
update(10/21/15):
just remembered asked question back-in-the-day, , thought should mention no longer crazy idea. since last update, deepmind published nature paper on getting neural networks play atari games visual inputs. indeed, thing preventing me using architecture play, limited subset, of diablo 2 lack of access underlying game engine. rendering screen , redirecting network far slow train in reasonable amount of time. won't see sort of bot playing diablo 2 anytime soon, because it'll playing either open-source or api access rendering target. (quake perhaps?)
i can see worried how train ann, this project hides complexity might not aware of. object/character recognition on computer games through image processing it's highly challenging task (not crazy fps , rpg games). don't doubt of skills , i'm not saying can't done, can spend 10x more time working on recognizing stuff implementing ann (assuming have experience digital image processing techniques).
i think idea interesting and ambitious. @ point might want reconsider it. sense project planning university, if focus of work ann should pick game, more simple.
i remember else came looking tips on different somehow similar project not long ago. it's worth checking out.
on other hand, there might better/easier approaches identifying objects in-game if you're accepting suggestions. first, let's call project want be: smart-bot.
one method implementing bots accesses memory of game client find relevant information, such location of character on screen , it's health. reading computer memory trivial, figuring out in memory not. memory scanners cheat engine can helpful this.
another method, works under game, involves manipulating rendering information. objects of game must rendered screen. means locations of 3d objects sent video card processing. ready serious debugging.
in answer briefly described 2 methods accomplish want through image processing. if interested in them can find more them on exploiting online games (chapter 6), excellent book on subject.
Comments
Post a Comment