From the 20th to the 22th of July, part of the craft ai team travelled to the sunny and hot Vienna for nucl.ai, one of the largest worlwide conference about Artificial Intelligence applications.
nucl.ai is the successor of the game/ai conference which was held 6 times previously first in Paris, then in Vienna. In fact the evolution of nucl.ai mirrors the evolution of the technology behind craft ai, beginning as game AI technologies to expand beyond. That’s why we were super proud to be their sponsor this year.
During the 3 days of the conference, three of us were present onsite, Juliette was part of the volunteer team making sure everything was running smoothly, Stéphane was keeping our booth showcasing the product and our Theme Mall game demo, finally I (Clodéric) was chair of the Agent Behavior track, preparing and making sure the amazing talks went smoothly. Back at the office, the rest of the team was following the conference too, through the public stream.
We had a blast during these three days and got lots of the attendees interested in how craft ai is applying game AI technologies to IoT and other markets. Over the past few years, Behavior Trees have become the de facto standard for explicit Non Playable Character behavior modeling, replacing traditional techniques such as Finite State Machines (FSM). As we are pushing the boundaries of its application to non 3d worlds domains, it is clear that their benefits are also relevant elsewhere. In the IoT world, for example, services and apps need to continuously take into account events from a variety of sources in a controllable way; the way the BT grammar allows implicit state transitions is a valuable asset. Such trend is very interesting for the game AI community as other AI techniques such as Monte Carlo Tree search and Statistical Machine Learning are going the other way around, getting used more and more by the game industry.
This year’s schedule was packed with interesting sessions, here are a few that we found both really interesting and relevant to craft ai.
This year, several sessions have been mentioning mentioning Behavior Trees and two of them were really focused on BTs. Juraj Blaho and Martin Kolombo from Bohemia Interactive Simulation presented their BT implementation for VBS3, the virtual training simulator. Finally a talk where someone doesn’t sugarcoat it: Behavior Trees are an actual programming language that can benefit from usual good practices: encapsulation and abstraction.
Freyr Magnusson, who works on EVE Online at CCP, presented apost mortem on the introduction of BTs inside the game, 12 years after the initial release of the MMO title. One interesting choice he made was to use event driven BTs. It has been a trend for the past year or so: why not evaluate the tree only when something in the context occurs that’ll lead to a different evaluation. The objective is to avoid unnecessary traversal, hence unnecessary loading of the tree and context in memory; it’s a pretty interesting objective. One pitfall all implementations I know have is that it is up to the behavior designer to annotate the tree with events subscription and retraversal trigger. A key property of the BTs, implicit transitions, thus get trashed. I’m sure it is possible to do some analysis of the tree, especially condition nodes, during a previous traversal to do this work automatically.
The last session of the conference was also one of the most interesting for me, Dale Lane from the IBM Watson Team gave us a technical overview of how Watson is designed. The focus of the talk wasn’t on how the different technical building blocks worked but rather on how they are pipelined together to answer questions. What really struck me in this talk was how pragmatic and clever the architecture was. Dale did a really great job at lifting the curtain and make everything seemingly easy. No holistic global approach here, but a clever gathering of specialized technologies.
Building upon its win at Jeopardy a few years back, Watson is now answering medical question about the best treatment for a particular patient, using its medical records and medical literature. For this use case, Dale mentioned the importance of being able to make the decision making transparent to the end user, in this case the doctor. Being a black box is not acceptable, the reasoning and the sources need to be exposed; this is also something we strongly believe at craft ai
This is of course a small portion of what I found interesting during the sessions and, perhaps more importantly, during the numerous opportunity to chat with other attendees. Year after year, then as the game/ai conference now as nucl.ai, the event keeps on featuring high quality content and while it is getting bigger every year, still manages to be very friendly. Thumbs up to Petra and Alex Champandard! See you next year!