Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to use neural networks to solve "soft" solutions?

I'm considering using a neural network to power my enemies in a space shooter game i'm building and i'm wondering; how do you train neural networks when there is no one definitive good set of outputs for the network?

like image 575
RCIX Avatar asked Oct 25 '09 08:10

RCIX


People also ask

How do neural networks solve problems?

What are neural networks? Artificial neural networks are a form of machine-learning algorithm with a structure roughly based on that of the human brain. Like other kinds of machine-learning algorithms, they can solve problems through trial and error without being explicitly programmed with rules to follow.

What is neural network in soft computing?

A neural network is a method in artificial intelligence that teaches computers to process data in a way that is inspired by the human brain. It is a type of machine learning process, called deep learning, that uses interconnected nodes or neurons in a layered structure that resembles the human brain.

Can neural networks be used for anything?

Neural networks are a series of algorithms that mimic the operations of a human brain to recognize relationships between vast amounts of data. They are used in a variety of applications in financial services, from forecasting and marketing research to fraud detection and risk assessment.

How does neural network work in image processing?

Image recognition is one of the tasks in which deep neural networks (DNNs) excel. Neural networks are computing systems designed to recognize patterns. Their architecture is inspired by the human brain structure, hence the name. They consist of three types of layers: input, hidden layers, and output.


2 Answers

I'm studying neural networks at the moment, and they seem quite useless without well defined input and output encodings, and they don't scale at all to complexity (see http://en.wikipedia.org/wiki/VC_dimension). that's why neural network research has had so little application since the initial hype more than 20-30 years ago while semantic/state based AI took over everyone's interests because of it's success in real world applications.

  • A so a good place to start might be to figure out how to numerically represent the state of the game as inputs for the neural net.
  • The next thing would be to figure out what kind of output would correspond to actions in the game.
  • think about the structure of neural network to use. To get interesting complex behavior from neural networks, the network almost has to be recurrent. You'll need a recurrent network because they have 'memory', but beyond that you don't have much else to go on. However, recurrent networks with any complex structure is really hard to train to behave.
  • The areas where neural networks have been successful tend to be classification (image, audio, grammar, etc) and limited success in statistical prediction (what word would we expect to come after this word, what will the stock price be tomorrow?)

In short, it's probably better for you to use Neural nets for a small portion of the game rather as the core enemy AI.

like image 112
Charles Ma Avatar answered Nov 15 '22 07:11

Charles Ma


You can check out AI Dynamic game difficulty balancing for various AI techniques and references.

(IMO, you can implement enemy behaviors, like "surround the enemy", which will be really cool, without delving into advanced AI concepts)

Edit: since you're making a space shooter game and you want some kind of AI for your enemies, I believe you'll find interesting this link: Steering Behaviors For Autonomous Characters

like image 21
Nick Dandoulakis Avatar answered Nov 15 '22 09:11

Nick Dandoulakis