Bei der diesjährigen CppCon 2018 haben Nicolas Fleury und Mathieu Nayrolles von Ubisoft Montreal gezeigt, wie man durch maschinelles Lernen bei großen Projekten besseren C++ Code hervorzaubert.
Ubisoft seit Jahren dabei KI Systeme in ihren Projekten zu verwenden um so viele gängige Bugs von Anfang an zu vermeiden. Durch unterschiedliche Muster Erkennungen und Abgleichungen im zentralen Repo von Ubisoft, erkennt das System, welche Fehler in großen C++ Projekten gemacht wurden und versucht diese entsprechend bei neuen Projekten gleich zu beheben. In einigen vorgehenden Tests hat Ubisoft schon damals mitgeteilt bis zu 65% der fehlerhaften Commits vorab erkennen und ggfs. fixen zu können.
Nicolas Fleury ist Technischer Architekt und kann über 15 Jahre Erfahrung in der Videospielbranche hervorbringen. Noch einige Jahre mehr hat er in Bereichen der Telekommunikation, Spracherkennung und computergestützte Chirurgie geleistet. So ist er bestens für Ubisoft gewappnet. Mit der aktuellen Position kann er bei Tom Clancy: Rainbow Six Siege auf 7 Jahre Erfahrung zurückgreifen. Auch auf den vorherigen CppCon war er vertreten mit Themen wie: C ++ in Huge AAA Games, Rainbow Six Wins: Quest for Performance und Introduction to Sharpmake.
Mathieu Nayrolles ist ebenfalls Technischer Architekt und kann auf über 7 Jahre Erfahrung zugreifen. An der Concordia in Monreal machte er zudem seinen Doktor Titel für intelligente Systemprotokollierung und Überwachung Labor 2018. Seit 2011 ist er zuständig für Forschung und Entwicklung in Bezug auf Softwarequalität und Produktivität. Auf diversen internationalen Konferenzen hielt er Vorträge über SANER (Software Analysis, Evolution and Reengineering), MSR (Mining Software Repositories) oder WCRE (Arbeitskonferenz für Reverse Engineering). Ebenfalls schrieb er mehrere Bücher über Open-Source-Technologien wie Angular, Apache Solr oder Magento.
Die Präsentations unterlagen sind auf Github erhältlich und mehr Video der CppCon auf Youtube vorhanden.