Jump to content
  • Advertisement

thpetsen

Member
  • Content Count

    5
  • Joined

  • Last visited

Community Reputation

111 Neutral

About thpetsen

  • Rank
    Newbie
  1. Hi, I suggest that you take a look at Temporal Difference Learning, where the AI is trained to Grand Master level by Reinfoced Learning (nnet's learn by playing against itself).   I would probably try something simpler than Risk &c. for a start ;-)   TDL works better w. games with a random element (the dice roll in backgammon in the case of TDGammon), but you can also make it work for deterministic games, it requies a somewhat larger training setup however (alotta code).   I have great success using TDL to train the nnet AI for my games, it performs brilliantly and I do not have to learn the strategy myself ;-)   Good luck !   Cheers, /Thomas
  2. thpetsen

    Pacman ghost ai

    Instead of checking for direction every frame, you could base the checking on a probability based on e.g. perlin noise. You could also make the gost move 'physically' i.e. it takes force to change speed and momentum &c. But if you want it to look like the original Pacman, these suggestions are probably not very helpful ;-) Good luck ! Cheers, /Thomas
  3. Karl Simms had great success with pure generic algorithms, the "programs" are boolean logic components that evolve genetically (pdf). I haven't tried, but I think it might work with a similar setup based purely on Feed forward Neural Network (since they can represent equally complex mathematical functions). Cheers, /Thomas
  4. thpetsen

    Neural networks fundamentally flawed?

       They can't, again the NN and the training is not alone. In a classification setup the net would output a probability for each of the categories it is supposed to match, i.e. one of the outputs is that the image shows a car. So it is never "a car" or "not a car", it is more like 0.23 (which has to be interpreted along w. the other outputs, this could still be the highest score among the outputs). On the input side you need to encode your information in a way that is suited for NN's. I have not worked much with image inputs (only the textbook- alphabet &c.), but I know that you would typically make some feature extraction from the image (using ordinary image-algorithms) and feed these to the NN as input rather than simply feed in the pixels. Again you need to feed all relevant information to the NN, and you need to know how to train them, the NN will by itself filter out which input is relevant and whhich is not. The typical training problems are: 1) the topology of the NN is insufficient: to few neurons (to represent the fratures of the problem) or too many neurons (no generalization)  2) initial net is in a wrong position in weight-space (some initial nets learn a training set in 100 iterations, others not in 100k) 3) under- or over- training.   But why are you so worried about this ?   Cheers, /Thomas
  5. thpetsen

    Neural networks fundamentally flawed?

    Nope, the authors of the article are totally clueless about how to train NN's, these are textbook-examples. But this reveals why people tend to avoid using them: training NN's requires intuition on how they work.   We usually use 2 hidden layers, the first layer being the "generalization layer", but we do not attempt to guess what "aspects" or "parameters" the network has encoded in each neuron. During training we add or subtract neurons botg in the 1. and 2. hidden layer in a genetic evolution of the network. It is not possible to just generate a net and expect it to be trained for any purpose.   Another reason for not using NN's is that many bright people want to investigate their own algorithms for solving a given problem (estimating a value function), thus avoiding having to learn the black art of NN training.   Cheers, /Thomas www.thp-games.dk
  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

GameDev.net is your game development community. Create an account for your GameDev Portfolio and participate in the largest developer community in the games industry.

Sign me up!