„Intelligenz ist nicht das Mittel der Wahl der Evolution“
Erich Teppan hat Mitte Jänner mit dem Habilitationskolloquium seine Habilitation im Fach Informatik an der Alpen-Adria-Universität abgeschlossen. Er forscht seit Jahren in mehreren Projekten an heuristischen Algorithmen, die Problemlösungen schneller und effizienter erzeugen und an Algorithmen, die Heuristiken irgendwann selbst lernen können. Vor Künstlicher Intelligenz hat Erich Teppan aber keine Angst, glaubt er doch daran, dass es nicht unbedingt Intelligenz ist, die Lebewesen besonders erfolgreich macht. Im Interview erklärt er, was die nunmehr entwickelten Technologien können, und was sie (auch noch lange) nicht können.
Nehmen wir als Beispiel ein Industrieunternehmen wie Infineon oder Siemens, mit denen sie zusammenarbeiten. Um ein Produkt zu erzeugen, braucht es viele Schritte auf vielen Maschinen. Sie wollen nun das Problem lösen, in welcher Reihenfolge diese Operationen abgewickelt werden, um annähernd optimal zu arbeiten. Warum ist das so schwierig?
Das große Problem ist die riesige Anzahl an Möglichkeiten, die es dabei gibt. Angenommen für 1.000 Produkte sind insgesamt 10.000 Operationen auf 100 Maschinen abzuarbeiten, sodass auf jeder der Maschinen 100 der Operationen erledigt werden. Dann hat man allein für eine der Maschinen 100!, also 100x99x98x…x1, Möglichkeiten. Das ist eine Zahl mit mehr als 150 Ziffern. Da sind aber 100 dieser Maschinen. Das potenziert sich dann dementsprechend. Ein weiteres Problem ist, dass sich die Rahmenbedingungen und damit das Problem ändern können, sodass ein ansonsten gut funktionierender Algorithmus vielleicht nicht mehr funktioniert und aufwendig angepasst werden muss.
Was ist ihr Ansatz?
Wir setzen auf deklarative Ansätze wie das so genannte Answer-Set-Programming. Konkret sind dies dann ein paar Zeilen in einem prädikatenlogischen Formalismus, welche das Problem beschreiben. Dort werden auch Einschränkungen mitaufgenommen, also formuliert, wo welche Maschine steht, welche Maschine welche Aufgaben bewältigen können und vieles mehr. Diese deklarative Beschreibung kann man dann einem so genannten Solver, der diese Sprache auch versteht, geben. Die Aufgabe dieses Computerprogramms ist es dann, eine Lösung zu berechnen.
Jedoch ist man hier schnell an Grenzen gestoßen: Mit herkömmlichen Answer-Set-Programming schafft man es im besten Fall Lösungen für Probleme mit maximal rund 100 Operationen in einer annehmbaren Zeit zu berechnen. Für Probleme mit beispielsweise 10.000 Operationen auf 100 Maschinen kann das so nicht eingesetzt werden.
Deshalb verwenden wir in unserem Fall einen erweiterten Ansatz des Constraint-Answer-Set-Programming. Eine der Erweiterungen in unserem Solver ermöglicht zusätzlich die Formulierung von Suchstrategien auf formal-logischer Ebene. Eine so formulierte Suchstrategie kann dann vom Solver ausgenützt werden, um schneller zu einer Lösung zu kommen.
Errechnet das Programm dann alle möglichen Lösungen und kommt so zu einem Ergebnis?
Nein, es geht uns gerade darum, dies zu umgehen. Bei 10.000 Operationen auf 100 Maschinen wäre eine solche Berechnung gar nicht möglich, wenn wir nicht sogar in Erdzeitaltern rechnen wollen. Der Computer braucht also etwas, was der Mensch hat: So genannte Heuristiken, also effektive Strategien für die Lösungssuche. Wir lernen von Kindheit an, wie wir Probleme lösen. Mit unseren Erfahrungen werden wir besser und können dabei auf eine umfangreiche Trickkiste zurückgreifen. Auch der Computer soll dazu in der Lage sein, auf solche Tricks zurückzugreifen.
Welche Tricks könnten das in unserem Beispiel sein?
Zum Beispiel ist es oft klüger, zuerst die Operationen von kürzerer Dauer, und später die längeren Operationen durchzuführen. Erfahrungswissen wie dieses wollen wir auch in deklarativer Sprache beschreiben und so als Heuristik zur Verfügung stellen. Wenn dann alles gut zusammenspielt, wie es in unserem Fall auch schon gelungen ist, lassen sich mit heuristischen Algorithmen Problemlösungen 1.000 bis 10.000 mal schneller erzeugen. Ein heuristischer Algorithmus, den wir entwickelt haben, wird nunmehr weltweit von Siemens für die Konfiguration von Eisenbahnstellwerken eingesetzt.
Funktioniert Ihr Ansatz auch dann, wenn neue Maschinen hinzukommen oder etwas anderes gefertigt werden soll?
Darin liegt der entscheidende Vorteil von deklarativen Ansätzen. Hat man üblicherweise zumindest doch mehrere hundert Zeilen Code, gilt es – im Fall von Änderungen – diese durchzuackern und an verschiedenen Stellen zu ändern. In der Folge braucht es eine umfassende Testphase, um auch sichergehen zu können, dass der Code noch immer korrekte Ergebnisse liefert. Hat man hingegen in unserem Fall nur wenige Zeilen Code, ist eine Adaption deutlich einfacher. Ein Unternehmen spart sich hohe Engineering-Kosten.
Wer ist es nun aktuell, der die Heuristiken einbringt: Ein Mensch oder die Maschine?
Noch ist es meistens ein Mensch, also ein Experte oder eine Expertin in dem Unternehmen, der oder die viel Erfahrungswissen hat. Uns ist es bisher gelungen eine Sprache und Tools zu entwickeln, mit denen sich solche Heuristiken beschreiben und verstehen lassen. Erste Erfolge konnten wir auch erreichen, was selbstlernende Systeme betrifft. Hier ist aber noch sehr viel Spielraum für Weiterentwicklung gegeben.
Dort stoßen wir dann aber auch auf das, was der Laie gemeinhin als Künstliche Intelligenz versteht, oder?
Ja, darin liegt dann wohl auch der Unterschied zwischen schwacher und starker Künstlicher Intelligenz. Und wir bewegen uns langsam in die Richtung der Uridee der Informatik, denkende Maschinen zu produzieren.
Wie langsam?
Viel langsamer als man glaubt. Meines Erachtens braucht man auch keinerlei Sorge zu haben, dass der Mensch mit seiner Form von Intelligenz irgendwann überflügelt wird.
Was macht Sie so optimistisch?
Darüber könnten wir jetzt ewig reden. Aber ein paar Gedanken dazu: Einerseits ist Intelligenz nie gratis, sondern ein großes Gehirn zu haben, verbraucht viel Energie. Das gilt auch für die künstliche Intelligenz. Wenn der sehr intelligente Computer zwar alles errechnen, aber nicht den metaphorischen Apfel vom Baum pflücken kann, der ihn nährt, wird er trotzdem sterben, außer wir halten ihn am Leben.
Außerdem denke ich, dass die Intelligenz nicht das Mittel der Wahl der Evolution ist. Der Mensch, das intelligenteste Wesen auf unserer Erde, ist gleichzeitig nicht unbedingt das erfolgreichste – je nachdem wie man Erfolg definiert. Beispielsweise gibt es Insekten, Amphibien oder Haie trotz überschaubarer Intelligenz schon viel länger als uns Menschen und diese Tiere sind echte Erfolgsstories der Evolution.
Einen meines Erachtens sowohl richtigen als auch tröstlichen Gedanken hat Kollege Horst Pichler einmal mir gegenüber formuliert. Er meinte, wir Menschen wären das Schweizer Messer der Evolution. Und: Egal, wie viele andere hochentwickelte Werkzeuge es gibt … niemand tauscht dagegen sein Schweizer Messer ein.
Was wollen Sie in diesem Feld erreicht haben, wenn Sie irgendwann als Professor in Ruhestand treten?
Grundsätzlich möchte ich nie auf der Couch mit der Wolldecke über den Knien enden, sondern so lange als möglich arbeiten. Inhaltlich würde es mich sehr freuen, wenn es gelänge, Systeme zu entwickeln, welche automatisch Heuristiken erlernen, mit denen man harte Probleme der Industrie lösen kann. Dazu kommt, dass es ein wichtiger Erfolg wäre, dies mit relativ wenig Energieaufwand zu schaffen. Man sollte keine Serverfarmen brauchen, um die dafür nötigen Daten zu verarbeiten, sondern irgendwann möglichst lokal mit wenig Prozessorleistung Smartness von Maschinen ermöglichen können. Das wären große Ziele.
Wir wünschen Ihnen alles Gute dafür und danken für das Gespräch.
Zur Person
Erich Teppan, geboren 1979, schloss seine Habilitation am 18. Jänner mit dem Kolloquium ab. Er forscht und lehrt seit 2006 am Institut für Angewandte Informatik der Alpen-Adria-Universität in den Bereichen Künstliche Intelligenz, Expertensysteme und Operations Research.