Neural Network Games Library

Started by
4 comments, last by Timkin 18 years, 1 month ago
Hi, I'm a final year student in London, and I'm interested in Neural Networks. I chose as my final year project, to develop a Neural Network Games Library. This will allow developers to add smart AI to their NPCs without the hassle of creating NNs from scratch. Structuring and training should be as simple as possible. I would like to receive some response from people that have encountered NNs, about how this library could make the use of NNs that much easier. Regards, Alex
Advertisement
Neural Networks are often not the best way of providing AI in games, I've found simple rule based systems more effective.
Still I imagine there are some games where it could be very effective perhaps racing games?

But here's an interesting read:
http://www.onlamp.com/pub/a/onlamp/2004/09/30/AIforGameDev.html
To be honest, creating a neural network is the easy part. The hard part is finding a good representation for your game's inputs and outputs and doing the appropriate training.
First of all, I'd like to thank you for your replies!

To dave_:
Do you mean that having an optimal neural network might be less effective than a rule based system? Or do you mean that neural networks can become ineffective if not trained properly? I understand that the reason neural networks are not used that often is because of what Kylotan mentioned. But as far as I gathered so far is, if the optimum solution to a neural network is found and frozen, it is far more efficient that a bunch of rule based algorithms. Could you please clarify your opinion?
I've already read the article at the link you mentioned :) interesting indeed.

To Kylotan:
Yeah, I understand that. That's what actually worries me. It is not clear to me yet how I can generalize this library to suit a number of applications, as well as having a good representation for game inputs/outputs. It's probably necessary to target specific applications.
As far as training is concerned, my primary objective is to provide tools for backpropagation training. My secondary objective, that i will complete only if time allows (and I really hope i can!) is to provide genetic algorithms training? What's your opinion on these types? What would your advice be? Also, if I target specific applications, do you think it would be possible to produce a number of test data samples that would only need minimal adjustments and could be used for training?

Any help from others would be highly appreciated as well!
Quote:Original post by aparaske
As far as training is concerned, my primary objective is to provide tools for backpropagation training. My secondary objective, that i will complete only if time allows (and I really hope i can!) is to provide genetic algorithms training? What's your opinion on these types?


I was under the impression that there's little point providing genetic algorithm training if backpropagation will work, and besides which you open up a whole new can of worms as genetic algorithms have so many parameters you would need to make available for tweaking. I am unsure if there are situations where backpropagation would work worse than a well-tuned genetic algorithm for training an NN - I suppose there could be some, but I get the feeling that they wouldn't be well suited for an NN in the first place. Perhaps someone with more experience in the matter could answer this.

Quote:Also, if I target specific applications, do you think it would be possible to produce a number of test data samples that would only need minimal adjustments and could be used for training?


If you were to provide pre-packaged test training data, then the results would only work on inputs very similar to the data you provided. In that case, you may as well just provide the network's trained weights and let the user skip the training!

I think I would take a different route, and instead present some test configurations that show how the library can be applied to a few interesting situations. These would be pre-trained but the value would be in showing how the inputs and outputs map to the situation.

Quote:Original post by aparaske
It is not clear to me yet how I can generalize this library to suit a number of applications, as well as having a good representation for game inputs/outputs.


The task you're taking on is being currently looked at by a worldwide panel of experts who are looking at the development of a unified standard interface for artificial intelligence for games. That's not to say you shouldn't be trying this project, but you should understand before you dive into it that what you're aiming to do is going to be very difficult and it's very doubtful that you will achieve anything useful in a single year project.

Heck, I wouldn't even let my postgrad students at this one! ;) Personally, I don't believe tools such as ANNs have much of a place in games. There are more specific tools that do the job better for the different sorts of game AI problems one faces.

Regards,

Timkin

This topic is closed to new replies.

Advertisement