Neural Network - Discussion

Started by
102 comments, last by Kylotan 15 years, 8 months ago
Thanks for that Kylotan, you raised some interesting points that I shall look into.

ID Merlin raised the point that Decision Trees would be a better alternative. Are these one size fits all approaches or do they have to be recreated for every game?

I may be fighting a loosing battle but i'm still a student(with no industry experience) and I CAN see potential for NN's.
Feeling #0000FF
Advertisement
Quote:Original post by Kylotan
A practical or industrial aim would be to use whichever method copes with the situation best, so you'd typically go for a tool that doesn't require such contortions to get it to work in all cases.

Let me begin by saying I agree with the OP's aim.

He said he's working on a final year research project. Key word is research. The whole point here is to try out something which is not commonly used in games (apparently), and see if he can improve on it. Perhaps find a fundamentally new way of using them. I admit I don't know that much about NNs, but I'm pretty sure people don't know EVERYTHING there is to know about them at this point. I'm sure innovation is still possible. And that doesn't happen if you don't attempt to improve on something that already exists, even if it was dismissed as an AI solution for games (perhaps prematurely, or maybe for good reasons).

Quote:You could potentially spend forever adjusting inputs, outputs, and hidden layers to try and get your neural network doing something useful, with no guarantee of getting anything that is good enough to be playable, or you can pick a method that explicitly accounts for all the scenarios a developer can envisage and get it working more reliably.

And what happens in a scenario that the developer did not originally envisage?

IMO, this is where the AI can come closest to 'making or breaking' the game - those unexpected but possible scenarios.

Quote:Again, the details of what you can really call AI is an academic concern. In industry the important thing is to get the agent doing what you want to meet the requirements of the game, not to get the agent thinking and perhaps doing something that you want in order to meet the requirements of some research into a method. If you're looking to real world implementations then they are invariably going to be driven by pragmatism.

Well, that certainly doesn't sit well with me, even if it is the reality. Personally, I wouldn't want to be a factory worker pumping out one game after anothre using nothing but previously known ideas and concepts, without the ability or any attempt to innovate.

You do bring up a good point, however. I now realize I wouldn't want to go into game development if it ends up involving nothing but spitting out cookie-cut, run-of-the-mill games.
Spend a year sitting down the hall from a designer who wants total control of situational behaviors. That will sour you on NNs really quick. Black boxes are scary.

Also, beware "catastrophic unlearning".

Dave Mark - President and Lead Designer of Intrinsic Algorithm LLC
Professional consultant on game AI, mathematical modeling, simulation modeling
Co-founder and 10 year advisor of the GDC AI Summit
Author of the book, Behavioral Mathematics for Game AI
Blogs I write:
IA News - What's happening at IA | IA on AI - AI news and notes | Post-Play'em - Observations on AI of games I play

"Reducing the world to mathematical equations!"

Thanks shurcool, I think you hit the nail on the head with what I was trying to explain about it being research.

Is the lack of NN applications in games a sign that there are no suitable problems?

Do game developers and designers lack the necessary skillset to apply NN?

Are NN missing some key technology that would allow more widespread adoption?

Personally I think its the old "stick with what you know best" routine! At the end of the day hardware is flying ahead now, their putting NN's right into the silicon these days.

I dont mean any offence here at all, but almost every post has made a statement, but not 1 person has backed it up with fact or proof. It may well be me (the academic) asking too much but I still stand with no proof that their a bad choice for games
Feeling #0000FF
Quote:Original post by sion5
Is the lack of NN applications in games a sign that there are no suitable problems?
It is a sign that none have been found to work to the complete satisfaction of a production (i.e. non-academic) environment for years now. Infer from that what you will. They could be used in spot areas here and there in very limited capacities - but they simply don't suit many of the problems that are faced by game agents.

Quote:Do game developers and designers lack the necessary skillset to apply NN?
Designers often lack the necessary skillset to apply an IF/THEN statement. That's not their job. However, this is a discussion that has been happening for a while - how to bridge that gap better.

Quote:Are NN missing some key technology that would allow more widespread adoption?
Fine tuned manual control with immediate, predictable feedback. That's the one that comes up the most.

Quote:Personally I think its the old "stick with what you know best" routine!
I disagree - there are plenty of new approaches in every issue of AI Game Programming Wisdom, for example. And conferences. There's ground-breaking stuff happening all over the place. But despite seemingly every college student coming out trying to solve every problem with NNs, not a lot of it seems to stick. There has to be a reason for it.

Quote:I dont mean any offence here at all, but almost every post has made a statement, but not 1 person has backed it up with fact or proof. It may well be me (the academic) asking too much but I still stand with no proof that their a bad choice for games

You are the one doing the research paper, not the people replying here. Exhibit A is the past 30 years of the industry. Also, one thing that you should have learned from science and logic classes is that proving the truthfulness of a complete negative is a cast iron bitch. You asked for examples of how they were used - THAT was a legit question. We could provide very few answers (e.g. Creatures).

Is there "proof" that they are not a good choice? Find me proof that a combination of pickle juice and chocolate syrup doesn't make a good topping on anchovy pizza. About the only "proof" you could get is anecdotal evidence that people simply don't like it. They all have their reasons and no amount of prodding by you will get past the notion that "it just doesn't work for me". Are they all wrong? They must be because no one provided "proof".

I'm not discouraging you from your research. I'm answering your questions. As I stated originally... be careful what you wish for.

Dave Mark - President and Lead Designer of Intrinsic Algorithm LLC
Professional consultant on game AI, mathematical modeling, simulation modeling
Co-founder and 10 year advisor of the GDC AI Summit
Author of the book, Behavioral Mathematics for Game AI
Blogs I write:
IA News - What's happening at IA | IA on AI - AI news and notes | Post-Play'em - Observations on AI of games I play

"Reducing the world to mathematical equations!"

To be honest I don't understand why ANN's are used at all. For the most part they are used as a glorified regression tool. I have spent a bit of time researching a few of the different networks and the only one that struck me as interesting was the Hopfield (If I remember correctly) network. I would be willing to bet 1000 bucks that if we just changed the name from ANN to something less suggestive, much less people would be interested.

I would love for someone to give me reasons why my opinion should change though.
Thanks for your opinion, you obviously dont agree that NN play a part in the games industry (or ever will) once I have done my research I will be sure to let you know my conclusion.

At least if I find a niche in the market, I will be a millionaire ha ha ha and if I dont, at least I wont waste my career trying to use a square wheel :-)

Thanks again for your contributions


Feeling #0000FF
Quote:Original post by sion5
Are NN's good or bad in games?


Certainly depends on the game. However, the common answer is "almost universally bad".

Why:

1) single-player "campaign" type games are very scripted environments. A very small subset of the rules design wants for the game I'm working on now:
- when the player destroys this Item, the AI will counter-attack.
- When the AI squad gets to 20% of its original units -> retreat.
- AI should only throw grenades when no other AI is throwing a grenade and has not for at least 10 seconds.
- Only 1-3 AI should ever rush the player at any given time
- AI should only spend 30% of their time hidden behind cover; further no single AI should remain hidden in cover for more than 3 seconds
- When the player's units get to a Point of Interest they should stop and play a canned set of animations at a specific point to develop the plot.

2) In a campaign environment design (and the player) want predictability. The point of game AI is not to be "smart" it is to be "fun". Fun means finding a way to exploit the AI so you can win every time. While encounters do not need to play out exactly the same they should play similarly enough that the player can learn how to beat it each time he plays the encounter and dies.

ANNs are really bad at both of those and are thus completely unsuitable for typical single-player type campaigns (aka Halo, Call of Duty 4, etc)

Things they are potentially useful for: fun interactive pets (Black & White's god avatar pet-thing), multi-player bots (there was a very sucessful Quake-bot driven by an ANN), some new genre of game.

Always remember the point of AI in games is to support that game's specific mechanics. If an ANN is the best choice then it's certainly ok to use it. It is, however, just a tool and as such is not going to be useful in many situations.

I think the project will be very interesting to you, but it's kind of representative of the chasm between academia and the professional game development world. In the former, the point of AI is to explore boundaries of flexible decision making. In the latter, the point of AI is to do exactly what the designer wants it to do.

-me
I don't have a reference to cite, it may have been an earlier post here, but one of the things that NNs are not good at is dealing with sequences of events. So, you probably could find some game "type" where an NN would work really well. Perhaps someone here will suggest one.

I know that NNs are fairly good at learning to discern various distorted characters in a CAPTCHA image, for instance, but that is hardly a good "game", is it?
Quote:Original post by Palidine
Things they are potentially useful for: fun interactive pets (Black & White's god avatar pet-thing

... which actually ended up using reinforcement learning instead.

Dave Mark - President and Lead Designer of Intrinsic Algorithm LLC
Professional consultant on game AI, mathematical modeling, simulation modeling
Co-founder and 10 year advisor of the GDC AI Summit
Author of the book, Behavioral Mathematics for Game AI
Blogs I write:
IA News - What's happening at IA | IA on AI - AI news and notes | Post-Play'em - Observations on AI of games I play

"Reducing the world to mathematical equations!"

This topic is closed to new replies.

Advertisement