Concordia University researcher partners with Ubisoft to streamline the game development process
Your wait for the most hotly anticipated new video game may become a lot shorter, thanks to a groundbreaking partnership between Concordia University researcher Wahab Hamou-Lhadj and video game studio Ubisoft Montreal.
Working in partnership with Ubisoft Montreal’s research and development unit La Forge, Hamou-Lhadj and his team developed an artificial intelligence system called Commit Assistant (renamed CLEVER for academic papers). Commit Assistant automatically identifies coding defects as programmers write them, and offers alternative solutions to correct them—thus avoiding all the expensive, time-consuming headaches that arise when those errors are programmed into a big piece of software like a AAA video game.
“Software maintenance tasks account for about 70 percent of the whole software lifecycle, which is huge,” says Hamou-Lhadj. “Companies spend billions of dollars just on maintaining the software and preventing defects.”
It’s no wonder a company like Ubisoft was interested in Prof. Hamou-Lhadj’s work in machine learning and software engineering. The time spent correcting defects represents thousands of expensive man-hours that could be put to use elsewhere.
“We wanted something that identified patterns in past bugs that would help us catch new bugs,” says Yves Jacquier, head of La Forge. “Commit Assistant is the perfect example of how academics and industry can partner to solve real-world problems with new scientific research.”
Big data, big savings
In order to develop Commit Assistant, Ubisoft gave Hamou-Lhadj access to a decade’s worth of its historic code. By analyzing those millions upon millions lines of code, Commit Assistant found where bugs have traditionally been programmed and identified the solutions that were used to fix them. With that knowledge available, it is able to issue warnings when programmers are about to make similar errors.
This, says Prof. Hamou-Lhadj, will lead to major savings in time, money and reputation.
“Number one, we improve productivity; number two, we reduce the time developers spend on testing, detecting and fixing bugs and so on; and number three, by being able to look at historical code that was saved somewhere, developers can share that knowledge.”
This tool will reduce development time by as much as 20 percent, according to Prof. Hamou-Lhadj. Without the need to devote so much time to correcting errors, he says game developers will be freer to improve and enrich existing games and develop new ones. Games will also be less likely to crash on its users, adding to Ubisoft’s reputation as a trusted developer of reliable software.
“Other approaches to prevention and resolution problems encountered significant issues with things like reusability and false-positives,” says Matthieu Nayrolles, a PhD student of Prof. Hamou-Lhadj now employed at La Forge. “Commit Assistant outperforms everything we’ve seen to date.”
A wide application
During its development, Commit Assistant was used on the Rainbow Six and Assassin’s Creed games, two major Ubisoft franchises. The company will now be applying it across its workforce.
However, Commit Assistant will be of interest to coders far removed from the gaming industry.
"It touches all software developers. I believe that in the future we will be deploying more and more AI technologies to reduce the maintenance burden in software industries.”
So far, Commit Assistant can catch up to 60 percent of defects in a game system. Hamou-Lhadj is confident that the number will go up as the AI tool learns from its experiences.
The research will be made public after it is presented at the Mining Software Research conference in Gothenburg, Sweden in May.
Watch a video that explains Commit Assistant here
© Concordia University