Ein intelligentes System, das nach groben Vorgaben binnen Sekundenbruchteilen Softwarecode programmiert: "DeepCoder" könnte in Zukunft vieles vereinfachen.

Foto: Vijay Sridhar

Cambridge – Ist das der Grundstein für die nahende Singularität? Ein Maschinenlernsystem hat die Fähigkeit erworben, eigenständig Programmcodes zu produzieren und damit auch neue Programme zu erstellen. Die von Forschern des IT-Konzers Microsoft und der University of Cambridge entwickelte Software mit dem Namen "Deepcoder" könnte künftig jedenfalls Programmierern ihre Arbeit erheblich erleichtern.

"Damit lassen sich nun Systeme erstellen, die bisher unmöglich schienen", erklärt Armando Solar-Lezama vom Massachusetts Institute of Technology (MIT) in Cambridge. Die Software gebe vor allem auch jenen die Möglichkeit, Programme zu erstellen, die bisher kaum Erfahrung in diesem Bereich hatten. Laut Marc Brockschmidt, einem der Schöpfer dieser künstlichen Intelligenz, reiche es damit nun aus, die Aufgaben eines geplanten Programms grob zu skizzieren. Den Rest erledigt dann "Deepcoder".

Die AI schaut sich bei dieser Technik bereits existierende Software an, schnappt sich jene Programmcodes, die der Zielvorgabe dienlich sind, und fügt sie zusammen. Ähnlich gehen zwar auch Programmierer vor, doch "Deepcoder" gelingt dies in Sekundenbruchteilen, während menschliche Softwareexperten oder frühere Systeme bedeutend länger dafür brauchen.

Mit jedem Problem intelligenter

Da sich "Deepcoder" darüberhinaus auch selbst beibringt, welche Programmzeilen funktionieren und welche nicht, steigert das System seine Leistungsfähigkeit jedesmal, wenn es mit einem neuen Problem konfrontiert wird. "Das Potenzial, das in dieser Art von Technologie steckt, könnte in Zukunft zu einer enormen Effizienzsteigerung bei der Herstellung neuer Software führen", meint Solar-Lezama.

Dass "Deepcoder" Programmierern künftig ihre Jobs wegnehmen wird, glaubt Solar-Lezama allerdings nicht. Die AI erleichtere den Softwareprogrammierern vielmehr jenen Teil ihrer Arbeit, der am meisten zeitaufwändig ist. Im derzeitigen Stadium kombiniert "Deepcoder" auch nur wenige Programmzeilen. "Doch wirklich umfangreiche Programme gehen im Grund auch nur aus der Kombination von kleineren Code-Fragmenten hervor, die aus wenigen Zeilen bestehen", meint der Wissenschafter. (red, 26.2.2017)