I was curious to what extent, if any, the NPC AI in Pantheon will leverage neural networks? The landscape of back-end hardware able to *rapidly* train a nueral network and make inferences in realtime is vastly improving, and I suspect the first MMO to fundamentaly take advantage of this technology will truly revolutionize the space.
Next Generation hardware will be running in the 100-400 TOPS (trillion Ops Per Second) range, and can typically be networked together.
I can see within the day/night cycle of the game, all NPC nueral nets could be updated with new (implicit) data inputs from the player community - this would create a truly dynamic feedback loop between players and NPCs that while may have some level of predictablity, would not rely on manual updates or traditional (predictable) algorithms and would offer behaviors that are truly responsive to the player community in a way no player could truly predict becuase the inputs themselves are constantly evolving to reshape the neurel net.
As anything that is potentially revolutionary - developing the software technology stack for this application would be a massive undertaking - *but* the pieces are there and it could be done given the will.
Heya, Sigswat.
You are unlikely to see an MMORPG taking advantage of machine learning any time in the near to medium future.
Most MMORPGs are designed to run on commodity cloud instances like AWS/EC2. This allows the games to be scaled easily on demand and Amazon gets quite expensive when you start scaling even their standard compute instances. Amazon is the popular platform right now, but their pricing structure was the primary reason I took our company in another direction and went with OpenStack where there was no vendor tie-in and a competitive marketplace.
The kind of computing power you are talking about is achieved through GPUs such as the anticipated NVIDIA Turing architecture, which some folks are hoping will be announced this month at GTC. Commodity cloud instances don't have GPU in their compute stack. For that, you need to go to something like Amazon's EC2 GPU instances, which cost in the neighbourhood of $0.20/hr/instance. Your hardware costs climb very quickly as you increase the number of inputs/nodes. The alternative, of course, is to build your own datacentre, but with the insane price of high end GPUs because of the cryptocurrency mining craze and the pressure on memory manufactuers from the mobile phone industry, that's not very economical, especially now. Maybe if the cryptocurrency values continue to crash, we may see a bunch of slightly cooked GPUs on the used market. :-)
The other side of this is the skill set of the average MMORPG programming team. I suspect very few are experts in machine learning and neural nets. That's a very specific area of study which is very much non-trivial once you get past the basic example code. Like Crypto, it's easy to dabble in but very difficult to do well without an advanced degree in Math/CS.
So it's nice to dream about what a system would be like, I think we're a long way off before we'll see it in an MMORPG.
I think you are probably right. I would like to hear some comments from any developers - hopefully someone shares some thoughts :)
I would note, GPU's are basically second class (even Turing) to ASICs at this point. Google's TPU and TPU2 rolling out at the 7nm node this year - GPUs cannot even compete on any metric other than being more generally programmable (in case algorithms and technology stacks shift).
The good news is, this type of compute will be massively cheaper in just a couple years time (and are already cloud based service offering from many vendors). You are right in that it would take a concerted effort to acquire the right talent pool to implement this - but boy the possibilities are amazing for how immersive the AI could truly be in an MMO.
I thought last year's Tesla supposedly gave TPU a decent run for its money and I think you're more likely to see other cloud service providers go with Nvidia. It's going to be a win for the scientific community, at any rate, no matter who comes out on top.
The downside for us lowly gamers is all of these huge data centre expansions are propping up memory prices, along with the mobile industry and the crypto miners.
Hopefully, we'll see a return to sane video card prices soon.
Unfortunately this idea is far too complicated for the benefits it would bring. Furthermore, you are describing a system that would replace the devs. It is much, much faster, easier, and cheaper for the devs to do the processing and implementing of changes based on data and observations rather than designing an algorithm to do it for them. But the real issue here is that even the most intelligent algorithms are not capable of creativity, which is the cornerstone of coding and development. This idea is just too far ahead of the times to even be considered.
Xbachs,
I think you may misunderstand - this system would not replace the devs, or even designers. Core skill needs would change a bit, but even neural networks require definition, and noone but the game developers will be equiped to provide a neurel net model that would be appropriate for the game.
Its complexity may seem high for a developer not experienced in this space - but the space is easy to ramp up to fast - Lookup TensorFlow and Google Cloud AI - you can define neurel nets, train them and have them performing inference tasks literally in a day (the "hello world" of neurel networks being classifying pictures of cats and non-cats) - the challenge here would be figuring out the neurel net model in the context of NPC AI.
Where I see the application though is not in quest creation or really any creative element of the game, but rather for example - combat AI:
The game already will record every fight in log data (stored for some short window of time) - this data would need to be stored and transformed in a way that it could be consumed by a neural net (not a big challenge) With appropriate back-end hardware, the NPC AI neurel nets could be retrained nightly or perhaps even more frequently as new combat data is added to the database (deduplication methods could be used to hold down data quantity by eliminating fights that just seem to resemble eachother based on normal pattern recognition algorithms).
Each fight log would be tagged with its outcome, or better yet the *severity* of the outcome (meaning, player was one shot killed all the way to NPC was one shot killed). These fight logs get trained into the neurel net, and then the next time the NPC is fighting a player it is constantly using the neural network to infer what strategy the player is using and what the likely outcome is. The developers can then program in (using tradtional methods) responses to what strategy it is identifying in realtime.
This is a pretty simple application of the technology more advanced might allow the NPC AI to develop its own strategy given more granular information and a more complex NN - but you can see it already would have the potential to make no fight really go the same way twice.
This can be applied to player to NPC interactions in terms of other game systems (such as Perception) as well - but would not remove the need for creativity, as the boundaries will still need to be created and defined, but within those boundaries the system is truly dynamic with low predictability.
I think the time is now to begin integrating this tech into MMO's, and I bet the first game to really go full bore on it will be a monster hit.
sigswat said:Is that podcost available anywhere - could you link it by chance?
https://www.youtube.com/watch?v=OAa8STNzQes
and my text summary of it is available here: https://www.pantheonmmo.com/content/forums/topic/8105/bazgrim-s-05-mar-18-vo-t-dev-q-amp-a-summary-ai-in-pantheon
Zippy directly addresses this topic in the Q&A and Kalok said, spoiler alert: the short answer is no - it would just be more work than it's worth. Hope this helps!