Game company Ubisoft is working with the University of Concordia to create an AI program called Commit Assistant that's meant to catch bugs in game programming before they actually make it into the game. Commit Assistant works through high-level machine learning and was fed large amounts of both correct and buggy code during development, and is thus able to understand what makes buggy code, to an extent. The tool is available to developers on an optional basis for now, and flags code that looks like it could cause a bug or regression. In some cases, it can also recommend an alternative or fix. Developers can then review that code and either change it as recommended, flag it as a false alarm, or follow Commit Assistant's recommendation. Any of these courses of action will help Commit Assistant to learn so that it can detect bugs more effectively and even further upstream, and lower its error rate over time.
Commit Assistant is not seamless to integrate by any means, at this point. Currently, its error rate is around 30-percent, and that's just one challenge. Some developers may not take to the tool; they may find it annoying to help it control false flags, or simply not like being told that they're doing their jobs wrong. This, as you can imagine, will slow down the learning process. Implementing Commit Assistant into development workflow is predicted to eventually shave about 20-percent of a developer's bug-fixing time off, allowing them to concentrate on adding features. Naturally, this eliminates a lot of game testing time as well. According to Ubisoft, fixing bugs can eat up to 70-percent of a game's development budget, which means that Commit Assistant could end up saving the company a lot of time and money. The best part is that Ubisoft and the University of Concordia published many of their developmental adventures in creating Commit Assistant in public white papers, which means that the entire video game industry could benefit from this work.
Commit Assistant, by its nature, thrives on having a vast wealth of data to feed on so that it can adequately judge code. This means that it may not be all that useful for smaller games, or for projects outside of gaming that may not have as many interactive elements or "moving parts". All the same, Ubisoft has been working to put the same design principles to work in other forms of AI. The enemies in Far Cry 5, for instance, use such an AI to balance their actions against a virtualized version of Maslow's Hierarchy of Needs, a psychological concept that prioritizes human needs and desires in order to determine what immediate goals a person may have. In Watch Dogs 2, such AI, with some conditioning, was used to teach in-universe cars how to drive convincingly according to the rules of the road, all without having to put them on set paths. Naturally, this means that the AI design concepts behind Commit Assistant could even wind up being useful outside of gaming.