Any help required?

Started by
48 comments, last by Mathematix 22 years, 8 months ago
What have I done! I have spawned a heavily opinionated debate!

This could go on forever. I personally believe that you really cannot accuratly predict the performance of any of the AI methodologies until they have been tried and tested. Bringing in discussions of genetic algorithms and fuzzy logic systems does little to resolve the debate on which is best to use. Personal experience is valuable; analysis better. The relative performance of these methodologies is not only dependant on their architectures, but also on the specifics of the game being designed: one person''s FPS may perform better with a neural net., while another with A*. Who''s to know?

Regards,
Mathematix.


Regards,
Mathematix.
Advertisement
In absence of information, postulation.

Isn''t that the gamedev way? ;-)

Mike
quote:Original post by Mathematix
What have I done! I have spawned a heavily opinionated debate!

This could go on forever. I personally believe that you really cannot accuratly predict the performance of any of the AI methodologies until they have been tried and tested. Bringing in discussions of genetic algorithms and fuzzy logic systems does little to resolve the debate on which is best to use. Personal experience is valuable; analysis better. The relative performance of these methodologies is not only dependant on their architectures, but also on the specifics of the game being designed: one person''s FPS may perform better with a neural net., while another with A*. Who''s to know?

Regards,
Mathematix.


Regards,
Mathematix.


I was actually hoping that any opinions offered, were coming from an experience of
having implemented (or at least tried to implement) ANNs to handle similar decisions.

I also agree with you, in that it takes implementation to determine the success or
failure of any technique. My posting history mentions that often.

So, with using MikeD''s suggestion, how about if we give this another go?

Eric
quote:Original post by MikeD

It might be useful to discuss what exactly forms the problems of an FPS game and why an ANN system should/shouldn''t be used to try to solve those problems.



Excellent idea. Unfortunately, I''m sorely pressed for time this AM so I can''t offer much this
session. However, I will be back later or tommorrow. In the meantime, you have made an
excellent start with your points about pathfinding and avoiding getting blocked. Perhaps it
would be handy to try to think in terms of specific questions that an AI must get answered
in order to make its next move on the current frame? Like what do I research next? What
should I build next? Where should I camp? Should I camp? etc.

Eric
Okay, let''s dive into picking construction sites for an RTS (seeing as your suggestions were drifting away from just FPS games).
I think in general it seems that there''s no supervised training method feasible for this kind of application. There''s no way of saying what is the right thing to do in a situation, only relaitvely good solutions compared to relatively bad. Otherwise you''d be training an ANN based either on human defined metrics by visual means or writing some logical rules to define the quality of a choice. If you do the latter then just use that as the decision making mechanism and forget the ANN''s ;-).

Okay, so you have a pseudo-blocks world in a typical tile-based RTS. This means you have details about a discrete number of tiles and their status (rocks, buildable land, trees). These factors could be the inputs of a neural net, with several inputs per tile defining key information. The number of tiles searched around a central point would define the size of the networks inputs, with a single numeric value output describing the quality of any given site.
By evolving the networks, using repeated battles as the fitness quotient, you could end up with a good network for deciding the quality of any given site for particular buildings. A similar polling system for what to build next could take into account all the buildings already built (on yours and the enemies sides) and decide on the best building to construct next in a similar manner.

I know this is fairly vague, but we are talking general principles.

Mike
Okay, you bunch of ''experts''. Let''s see you answer this one.

Assuming that neural nets were the only option for game AI, which category of network would be most suitable for an FPS: back-prop, recurrent or competative? Give reasons for your answer.

Do your really know what all the jargon you mentioned really means??

Regards,
Mathematix.
quote:Original post by Geta


I was actually hoping that any opinions offered, were coming from an experience of
having implemented (or at least tried to implement) ANNs to handle similar decisions.

I also agree with you, in that it takes implementation to determine the success or
failure of any technique. My posting history mentions that often.

So, with using MikeD''s suggestion, how about if we give this another go?

Eric


My experience comes from the academic world; developing nets to dianose medical conditions and the like. I am new to game development and am currently coding my own with OpenGL and C++. I have coded many neural nets, and have come up against many problems encountered by newbies.

Regards,
Mathematix.
There can''t possibly be a neural network method that''s best for solving the FPS problem, because FPS isn''t a problem, it''s a game type. Name a problem within the FPS genre that AI has to solve and I''ll give my opinion, which isn''t expert, but it is competent.
One thing I can conjecture is that any form of supervised learning will not work, as supervised learning requires knowing the correct answer to calculate the error to back propogate from. If you know the answer in some numeric form the system can understand then you''ve solved the problem and don''t need the network in the first place.

Beyond that, please tell me what jargon I''m using. I''d like to know where I''ve been flagrantly disregarding explanation and confusing people, instead of merely trying to be specific.

Mike
quote:Original post by MikeD
Okay, let''s dive into picking construction sites for an RTS (seeing as your suggestions were drifting away from just FPS games).
I think in general it seems that there''s no supervised training method feasible for this kind of application. There''s no way of saying what is the right thing to do in a situation, only relaitvely good solutions compared to relatively bad. Otherwise you''d be training an ANN based either on human defined metrics by visual means or writing some logical rules to define the quality of a choice. If you do the latter then just use that as the decision making mechanism and forget the ANN''s ;-).

Okay, so you have a pseudo-blocks world in a typical tile-based RTS. This means you have details about a discrete number of tiles and their status (rocks, buildable land, trees). These factors could be the inputs of a neural net, with several inputs per tile defining key information. The number of tiles searched around a central point would define the size of the networks inputs, with a single numeric value output describing the quality of any given site.
By evolving the networks, using repeated battles as the fitness quotient, you could end up with a good network for deciding the quality of any given site for particular buildings. A similar polling system for what to build next could take into account all the buildings already built (on yours and the enemies sides) and decide on the best building to construct next in a similar manner.

I know this is fairly vague, but we are talking general principles.

Mike


How does one achieve several quoted sections within a response? Every time I try to do so,
I end up with the first section quoted and all the others not. Anyway ....

Actually, my "camping" question was relative to "camping in a FPS", but I think your choice of
finding a construction site in an RTS is a good place to start.

Some givens to start with. The approach must be map independent so that it can work just as well
with random or user-created maps. We will assume the AI has already decided what type of building
it needs to build. The map is tile based (although we could consider polygon based maps).

Ok. So if I understand correctly, you suggest inputs to the ANN being: type of terrain, status of the
tile, nearness of the enemy (and other such data)? Now, would there be a ANN for each tile? Or are
you suggesting a single ANN for all tiles with these inputs? What I am having trouble seeing is how
does this arrive at the best (or a good enough) location to build at?

And additional question, how would you use an ANN to decide "what to build next"? And, do you think
an ANN is the better technique to use for this decision?

Eric
quote:Original post by Mathematix
Okay, you bunch of ''experts''. Let''s see you answer this one.

Assuming that neural nets were the only option for game AI, which category of network would be most suitable for an FPS: back-prop, recurrent or competative? Give reasons for your answer.

Do your really know what all the jargon you mentioned really means??

Regards,
Mathematix.


What decision in a FPS do you want to use the ANN for? Pathfinding?

Seriously, the only thing I can think of that an ANN _may_ be a good candiate
for use in a FPS would be in attempting to recognize movement patterns (which
is something you mentioned before). As associators and classifiers, I personally
think ANNs are much to limited to be of much overall use in computer game AI.

Searches, FSMs, Expert Systems and Fuzzy Logic all seem to dominate in use
in computer game AI because they seem to be more general techniques (IMHO).

All that being said, ANN are certainly talked about alot around game boards.

Eric

This topic is closed to new replies.

Advertisement