Jump to content
  • Advertisement


  • Content count

  • Joined

  • Last visited

Community Reputation

3770 Excellent


About IADaveMark

  • Rank
    Moderator - Artificial Intelligence

Personal Information


  • Twitter
  • Twitch
  • Steam

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

  1. I know a guy who is pretty much a go-to person on utility-based rational agents in open-world games. Is that close enough? B^]
  2. It's not even really all of flocking... it's simply separation. I use an influence map system in my work (and spoke on it at the recent GDC AI Summit) but depending on how many units you have at one time, it might be a bit heavy. This might be relevant for you. From GDC 2011's AI Summit, the first 1/3 of this is James Anhalt of Blizzard talking about the pathfinding (and related things) in SC2. http://www.gdcvault.com/play/1014514/AI-Navigation-It-s-Not
  3. Heh... if you can say, what studio were you working at and who gave you my book? Part of the reason that these don't fit what you are trying to do is that they are perception models which can feed into pretty much any decision architecture. This goes back to what I was talking about... that decision architectures are only a portion of what goes into "AI" for games. Much of the rest of it is the data you use, the add-ons like perception models, knowledge representation models, etc. That's why saying "[a game] uses behavior tress" doesn't tell you much of anything at all about what the AI is like. Regarding your camping metaphor, one thing you are missing is that people may select their next vacation based on equipment they already have from prior ones. Or, more twisted, select a new type of vacation and simply make do with what they have from prior ones. To step back out of the metaphor, many studios don't change their AI architecture very often (if at all). They stick to the same type of game because they already have the underlying tech for it. Or if they do change the type of game, they make their existing tech work. For them, it beats the hell out of rewriting everything because they are wanting to go to a new place.
  4. It would be interesting to compare/contrast with what Tobias Karlsson presented at the GDC AI Summit in 2016. http://www.gdcvault.com/play/1023433/On-All-Fours-Creating-Realistic
  5. Some of the major points have been listed above. A few others... Jeff Orkin's reading/reference list hasn't been updatedWe in years. There are plenty of other books and sites to look at in the past 5 years. In fact, that is a rapidly increasing occurrence. We share stuff. Books are almost too slow in sharing it because it changes so fast. I didn't see a reference to GDC and, in particular, the annual AI Summit at GDC. If AI is such a protected secret, we would have hard a much harder time filling 12 hours worth of content for the past 10 years. There's also plenty of main conference talks about AI there as well. Many companies are very open about what they do and share many details. Simply open GDCVault.com and you will have 100s of hours worth of viewing material on AI alone. (Anything older than 2 years old is free to view... anything younger is only partially free to non GDC attendees depending on what GDC has released to the public.) For example, a few years back, Mike Lewis (Apoch on here) and I did a 1 hour lecture on my utility-based architecture (and a few other notes) and how we deployed it at ArenaNet in an expansion to GuildWars 2. There are now studios around the world that are implementing my architecture based entirely on that lecture. (Oddly, since I'm a traveling AI consultant for the industry, this could be viewed as cutting into my income stream, no?) The AI architecture is often not the big differentiator in AI. If that were the case, there would be about 6 types of AI... total. Ever. And all of the games that uses the same one would give the player a fairly similar experience. Instead, the architectures are simply tools that the designers and programmers use to create behaviors out of. While the architectures can enable or make more difficult certain types of things, it is how they are used that makes the most difference. For starters on what those architectures are, use this: http://intrinsicalgorithm.com/IAonAI/2012/11/ai-architectures-a-culinary-guide-gdmag-article/ Your premise of matching AI approaches to gameplay mechanics may hold up a little, but not in terms of architecture selection. Moreover, it is based on designer notions, their control, and how they want the agents to act in certain circumstances. Largely that has nothing to do with the actual AI architecture (although adding certain things like advanced sensory systems, spatial awareness, etc. can make some things easier than not using them). In short, your excerpt sounds a lot like one that an academic made at AIIDE a number of years ago where he stated as his presentation's opening line, "Let's face it... AI hasn't really advanced since Pac Man." It was meant to be a ridiculous laugh line to start a lecture, but that is the view of a lot of people (and his lecture was still leaning that direction anyway). Your paper sounds like you are still an outsider who is judging game AI based on what you figure is happening in the industry and is popularized by the game media (who often has no clue) and people grousing on reddit (who almost certainly have no clue). As a base for a paper, it seems very odd.
  6. IADaveMark

    Looking for Critiques

    That's my point, however. You have a queue of things you want to do in order to address a problem that you assessed... but as you are part way through that queue of actions, the situation may have changed. Are you going to finish them regardless? Flush the queue and readdress the situation? The first can lead to ridiculous behaviors that are no longer relevant. The latter means you are still having to calculate what you should be doing to see if you need to flush the queue and dump more in. If you are running that algo on a regular basis, you aren't that much different from a single-ply system like any other AI architecture (e.g. behavior tree, utility system, etc.). As an example, Monolith used GOAP on Shadow of Mordor... but when I asked what their average plan length was, it was 1.2. Therefore, they weren't actually coming up with "plans" (i.e. sequences of actions)... they were doing all that work for a single behavior to act on next. (They also dropped using GOAP right after that, IIRC.) On the other hand, the reason most people dropped GOAP is they were coming up with long plans that would get thrown away and rebuilt the next cycle because the world state had changed enough that it was either no longer a valid plan or wasn't the best thing to do. So they were doing a bunch of work to determine what to do over time and it was never getting done... just thrown away on the next think cycle. So what I'm getting at is, why are you doing this? What is it that you think your advantage is? Also... and certainly relevant but hopefully not obnoxious to you... what other AI algos have you ever implemented? What is it that you are avoiding from those?
  7. As with most stuff, it is likely very much a utility/rule-base system. Different criteria for what you have done for/against them have different scores. Add them up and then base your stance with/opposed to that other leader based on what bucket that total score falls into. That, in turn, enables/disables certain things like how they trade with you, whether they will spy against you, etc. As for learning about other techniques, see this for an overview: http://intrinsicalgorithm.com/IAonAI/2012/11/ai-architectures-a-culinary-guide-gdmag-article/ And btw, almost no one uses GOAP in production. Too much redundant overhead. It works better for high level stuff like game strategy but certainly not for everyday life or combat.
  8. If you have bought it, then usually they include the source code along with. It's to encourage and enable modding. But there is no "one AI system" in complex games like that. Different types of decisions for different game phases are often using at least slightly different engines. For example, the decision on how to manage what to build in your cities is significantly different than what units do out in the world.
  9. IADaveMark

    Looking for Critiques

    One major problem I'm seeing just by scanning the thread is that often you will have a new "thing to do" before you execution finishes. Sure, you could continue performing your execution until it completes but then you have the commonly seen problem of the agent flailing away at where an enemy used to be because it has no way of exiting that execution.
  10. IADaveMark

    Ai for Game: whitehall mystery

    Also, look into occupancy maps as popularized by Damian Isla in Third Eye Crime. https://www.youtube.com/watch?v=5lBye82qUog https://www.gdcvault.com/play/1018057/From-the-Behavior-Up-When (Start at 30:00)
  11. Just because it is almost expected of me at this point, I'll just swing by and ask... why a neural network?
  12. IADaveMark

    Ai for Game: whitehall mystery

    Suggestions for what?
  13. IADaveMark

    AI team vs Player team

    All you have to do is score actions against all potential targets (and all potential ways of attacking) and then pick the best one. See this for an architecture http://www.gdcvault.com/play/1021848/Building-a-Better-Centaur-AI And this for more on utility http://intrinsicalgorithm.com/IAonAI/2013/02/both-my-gdc-lectures-on-utility-theory-free-on-gdc-vault/
  14. IADaveMark

    Forest Strike - AI

    Pretty close. Look up utility-based AI. It is described in the link I put in this thread a while back.
  15. IADaveMark

    Forest Strike - AI

    Sorry, I was under the impression that there was only 1 action per turn -- in rereading, I see that I missed the "multiple moves" bit. In that case, yes, building a stack would be a viable option. Look into Goal Oriented Action Planning (GOAP). This is one of the few situations where this beats out other methods. In essence, you work backwards from a goal to figure out how to accomplish it. However, you would still have to select your "goal" for that turn which is a higher level AI. ("What do I want to accomplish this turn?") The problem is that you have a finite number of steps to get there which narrows down your goal selection significantly. Another way is to search forward from your current state evaluating the tree of things you could do. This is very similar to a tic-tac-toe or chess tree search. You have a branching model of all the stuff you could do with the moves available and score each end point -- i.e. "if I were to do X it would be worth N while Y is worth O." You would have to have some sort of scoring function that makes sense, though. How much is doing X worth?
  • Advertisement

Important Information

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

Participate in the game development conversation and more when you create an account on GameDev.net!

Sign me up!