My question is regarding the use of fuzzy state logic and finite state machine with AI. What I would like to know is what the key benefits are for both and also some examples of situations where you might want to use a particular state machine. My main areas of interest are the questions the follow.

Which is better for group AI? Which is better for individual AI? Which is more efficient?

Also some links to any demos of each that exist would be really cool!

Thank you all who answer/comment!

  • \$\begingroup\$ There are different conflicting definitions for "Fuzzy State Machine". Please be a bit more precise about what you mean. \$\endgroup\$ – Philipp May 28 '13 at 7:11
  • \$\begingroup\$ What's more, I'm not sure you're going to get the answer you're looking for. More specifically, I'm not sure the two methodologies are as distinct as you believe them to be. \$\endgroup\$ – Attackfarm May 28 '13 at 7:15
  • \$\begingroup\$ fuzzy state logic is what I meant, I always thought that they were separate. Fuzzy was capable of being partially in several "states" as far as my research has lead me to believe whilst Finite is more singular and focused? \$\endgroup\$ – Matthew Pigram May 28 '13 at 7:18
  • 1
    \$\begingroup\$ @MatthewPigram When you are not yet sure about the definition of fuzzy and finite state machines and your intention is to learn more about this through this question, you should first try to get a deeper understanding of the terms, maybe through asking specific questions about each. This will help you to make this question more specific, and avoid making it drift into gorilla vs. shark territory. \$\endgroup\$ – Philipp May 28 '13 at 8:14

I don't have an answer to your specific question, mostly because I don't believe there is an answer. The simplest application of fuzzy logic in an FSM would be allowing multiple states, rather than a single state, and using probability to determine behavior.

In this light, it's a question of whether or not an extra level of AI sophistication is appropriate. Simpler applications can suffice at times, while more sophistication in architectures provide enhanced perceived intelligence at the cost of complexity (in coding, debugging, design).

Allowing multiple states of an FSM which are executed randomly would allow for more seemingly random, yet still reasonable and "intelligent", behavior. This would have the result of seeming more human, as humans often seem random and "unpredictable".

For an individual agent, the agent might seem to do something less obvious, making it seem "foolish" or "unpredicable" or even "unexpectedly clever" depending on the situation. For groups of agents, fuzzy states might lend players to perceive the groups as "disorganized", or "unable to agree", etc.

Again, though, it's less "Which is better for individuals/groups?" and more "What level of sophistication of AI is appropriate for my game?"

  • \$\begingroup\$ Reason for the downvote? \$\endgroup\$ – Attackfarm May 28 '13 at 12:07
  • \$\begingroup\$ wasn't me who downvoted \$\endgroup\$ – Matthew Pigram May 28 '13 at 13:25
  • \$\begingroup\$ based on what you have said it would seem to me that group logic would work better with a FSM with non-fuzzy states as a group is more likely to maintain a consistent behaviour whilst single characters would be more believable using Fuzzy logic \$\endgroup\$ – Matthew Pigram Sep 29 '14 at 2:33
  • 1
    \$\begingroup\$ Well, that's assuming you used fuzzy logic on individuals within a group that should otherwise be more unified. If you used fuzzy logic, for example, on each soldier in an elite well-trained squad, you could get some odd behavior. If you did the same for a mob of civilians for a group of bandits or orcs, the unruly and disorganized behavior might seem natural and appropriate. This all changes if you used fuzzy logic on the group as a whole (which would just mean it's a single agent that happens to be made of multiple characters), in which case the group would always behave as a collective \$\endgroup\$ – Attackfarm Sep 30 '14 at 5:07

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.