Donnerstag, 18. April 2024

Archiv

Die Schönheit der Algorithmen
Bestechend brillant

Algorithmen sind Rezepte, aus denen Computerprogramme entstehen. Es gibt keine Software ohne Algorithmen. Je eleganter ein Algorithmus ist, desto weniger Rechenpower benötigt er, um zum Ziel zu kommen. Algorithmen können allerdings teuer sein - und die Nachfrage zur Lösung neuer und alter Probleme ist riesig.

Von Maximilian Schönherr | 10.01.2016
    Auf einer Tafel hat ein Programmierer Elemente eines Algorithmus aufgemalt. Aufgenommen beim Advance Hackathon in Köln am 29.04.2012.
    Auf einer Tafel hat ein Programmierer Elemente eines Algorithmus aufgemalt. (picture alliance / Maximilian Schönherr)
    Eine 19-jährige Unternehmerin aus Erlangen liebt den Hash-Algorithmus. Wenn sie über ihn spricht, leuchten ihre Augen. Ein Beobachter könnte dagegen überrascht sein: So viel Zuneigung für eine spröde Liste von Rechenvorschriften? Denn genau das sind Algorithmen: Rezepte, aus denen Computerprogramme entstehen.

    Das Manuskript zur Sendung:
    "Ich finde den Titel der Sendung äußerst interessant, weil wir eigentlich noch nie in meiner Lebenszeit über Schönheit gesprochen haben, sondern es ging immer um Leistung und Performanz."
    "Ja, wie ist denn der Titel der Sendung?"
    Bestechend brillant: Die Schönheit von Algorithmen
    Von Maximilian Schönherr
    Oliver Vornberger, Informatikvorlesung an der Universität Osnabrück:
    "Ja, guten Tag zusammen. Herzlich willkommen in der Informatik. Mein Name ist Oliver Vornberger, und Sie sitzen hier in der Veranstaltung "Algorithmen". Wem das jetzt irgendwie komisch vorkommt, der hat jetzt Gelegenheit, ganz unauffällig über den hinteren Ausgang diese heilige Halle wieder zu verlassen. Okay, das scheint nicht der Fall zu sein."
    "Algorithmus (auch Algarithmus), abgeleitet von dem Namen des arabischen Mathematikers Mohammed Ben Mufa Alkaresmi, im Mittelalter Rechnung nach dem dekadischen Zahlensystem, auch Bezeichnung für arithmetische Lehrbücher; jetzt so viel wie Rechnungsverfahren überhaupt." (Meyers Konversationslexikon 1890)
    "Sie kennen schon viele Algorithmen aus dem Alltag. Denken Sie an eine Telefonzelle. Gut, Sie benutzen die nicht mehr. Kurz nach dem Krieg gab es diese gelben Kisten, und da konnte man reingehen, und da war ein Algorithmus beschrieben, und zwar durch Piktogramme, nämlich: Hörer abnehmen, Geld einwerfen, wählen, auflegen. Da war sozusagen eine endlich lange Vorschrift durch Bildchen beschrieben, und derjenige, der telefonieren wollte, musste jeden einzelnen Schritt verstehen. Deswegen ist so eine Anweisung in einer Telefonzelle ein Algorithmus."
    ... . und kein hässlicher. Er fasst einen ziemlich komplexen Vorgang in wenigen Bildern zusammen, nämlich von der Einleitung eines Telefonats bis zur ordentlich Beendung samt Barzahlung mit Münzen. "Kein Wechselgeld" stand extra vermerkt, war ein lukratives Nebengeschäft der Post und nicht direkt Teil des Algorithmus. Alle Wissenschaftler, mit denen ich für diese Sendung über Algorithmen sprach, mochten Algorithmen. Wie kann man eine Rechenvorschrift mögen, wie kann man sie schön finden?
    "Wir finden Algorithmen schön, wenn sie eine gewisse Eleganz haben. Ich glaube, das kann man mit einem Phänomen von heute vergleichen: Im Moment gibt es ja überall Videos zu sogenannten Live-Hacks. Ein Live-Hack ist zum Beispiel, wie man ein Ei trennt – mit einer Plastikflasche!"
    Katharina Anna Zweig, Professorin für Graphentheorie und die Analyse komplexer Netzwerke an der Technischen Universität Kaiserslautern.
    "Die Algorithmen, die wir schön finden, haben so eine Live-Hacking-Qualität. Das ist aber vielleicht nicht die einzige Dimension von Schönheit von Algorithmen, die man besprechen kann. Es ist nicht nur dieser Live-Hack, dieser Kunstgriff, der ein Problem plötzlich viel leichter macht als es vorher war, sondern es ist auch ihre Wandelfähigkeit. Ich finde, das ist ein hervorragender Aspekt der Schönheit von Algorithmen. Ich habe als Biochemikerin angefangen und mich dafür interessiert, wie Muster zustande kommen: Wie bekommt zum Beispiel ein Embryo Finger? Wieso weiß der Körper, wo oben und unten ist? Wieso sind beide Beine gleich lang?"
    Diese Fragen bewegen die inzwischen ins Informatik-Lager übergewechselte Naturwissenschaftlerin noch immer. Sie modifizierte einen Algorithmus namens "Statistische Signifikanz der Anzahl gemeinsamer Nachbarn in einem Netzwerk" und nutzte ihn, um große Datenmengen von genetischen Grundbausteinen, den Mikro-RNAs auszuwerten. Ein Ergebnis der Berechnung war, dass es einen Zusammenhang zwischen bestimmten Mikro-RNAs und einer besonders gefährlichen Brustkrebsvariante gibt. Auf so etwas kommt man nicht, wenn man einfach einen großen Datensatz vor sich hat.
    Katharina Zweig: "Und mit demselben Algorithmus, mit sehr wenig Modifikation, kann ich Ihnen auch sagen, welches das nächste Buch sein sollte, was Sie lesen werden. Oder ich kann damit herausfinden, welche zwei Nichtmitglieder einer sozialen Netzwerkplattform sich wahrscheinlich kennen. Ich finde es bis heute faszinierend, wie ein und derselbe Algorithmus so unterschiedliche Fragestellungen beantworten kann."
    Können Algorithmen schön sein?
    "Ich schlage mal eine Seite mit Pseudocde auf. Also wir haben einen Datensatz, ein kleines Feld, ein Array. Ich schreibe da mal Zahlen hin. 10, 3, 1. ..."
    Susanne Albers leitet den Lehrstuhl für effiziente Algorithmen an der Technischen Universität München. Sie schreibt acht Zahlen nebeneinander auf ein Blatt Papier und fragt: Wie sortiert man die der Größe nach? Bei so wenigen Zahlen machen wir Menschen das mit links. Wir sehen sofort, die 10 ist die größte, also schieben wir sie ans eine Ende. Eine 9 gibt es nicht, als ist die nächst kleinere die 8, also ziehen wir sie zur 10 rüber usw. Bei 1.000 Zahlen müssten wir lange gucken, um die größten zu finden, und Fehler, weil wir etwas übersehen haben, sind sozusagen vorprogrammiert."
    Ein Rechenautomat macht solche Fehler nicht. Aber er kann auch nichts mit weichen Aussagen anfangen wie: Guck mal nach der größten Zahl und schiebe sie nach rechts. Wir brauchen ein sehr präzises Rezept, alle Zahlen der Größe nach zu ordnen – einen Algorithmus. Susanne Albers stellt einen der schönsten Algorithmen überhaupt vor, einen Klassiker, er nennt sich "Bubble Sort" und funktioniert so:
    "Schau dir irgendwo in der Zahlenkolonne zwei beliebige nebeneinander stehende Zahlen an. Wenn die linke größer als die rechte ist, vertausche die beiden. Rechts soll immer die größere Zahl stehen. Dann nimm dir das benachbarte Pärchen vor, ordne wieder nach der Größe."
    "Man sieht, die größte Zahl in unserem Feld, die 10, wird – Bubble Sort – wie eine Blase nach rechts oben steigen, wie eine Seifenblase. Und jetzt wir die 7 nach oben wandern..."
    Die Schönheit dieses Algorithmus liegt in seiner Einfachheit. Der Computer muss sich immer nur zwei benachbarte Zahlen ansehen (es können auch Namen im Adressbuch oder die Gewichte von Waren sein), und wenn er das Schritt für Schritt durchzieht, ist er irgendwann einmal fertig, und alle Daten sind geordnet. Wegen dieser Schritt-für-Schritt-Vorgehensweise heißt das Verfahren "iterativ", es wiederholt sich laufend.
    Susanne Albers: "Es ist ganz alt, es gehört zu den Wurzeln der Algorithmik. Damit haben die Leute angefangen: einfache Sortierverfahren, einfache Datenstrukturen. Wie sind Daten im Computer zu repräsentieren? Damit hat die Disziplin begonnen."
    Quicksort - der beliebteste Sortieralgorithmus aller Zeiten
    Bubble Sort ist unter verschiedenen Namen aufgetaucht, zeitgleich mit den ersten Datenverarbeitungsmaschinen, die damals nichts anderes taten, als lange Listen zu ordnen. Bubble Sort ist robust: Er ordnet alles, was man ihm gibt, fehlerlos; er stürzt, wie man später sagte, auch nicht ab. Aber ziemlich bald beklagten sich die Pioniere der elektronischen Datenverarbeitung:
    "Bubble Sort braucht sehr lang, bis er das Ergebnis liefert. Wenn wir unsere Adressliste verdoppeln, braucht Bubble Sort viermal so lang. Statt einer Minute vier Minuten. Wenn wir die Liste 100 Mal länger machen, braucht er 10.000 Mal länger. Statt einer Minute 10.000 Minuten, das sind sieben Tage! Inakzeptabel."
    Der wunderschön einfache Bubble-Sortierungsalgorithmus war damit nicht mehr so schön. Er "skaliert schlecht", wie die Mathematiker sagen. Katharina Zweig räumt zur Demonstration ihr Buchregal neu ein:
    "Uns interessiert, wenn ich das Problem ein bisschen größer mache, wenn ich bei meinem Umzug zum Beispiel ein Buch mehr sortieren möchte, wie viel länger dauert das Problem dann? Wenn ich zum Beispiel ein weiteres Buch dazu nehme und nicht 100, sondern 101 Bücher sortiere, dann ist der Mehraufwand sehr gering. Und dann gibt es andere Probleme, da nehme ich nur eine einzige Einheit dazu, und plötzlich brauche ich doppelt so lange.
    Wenn ich meine Bücher sortiere, indem ich einmal das Buchregal umkippe und dann die Bücher wieder in der Reihenfolge reintue, dann ist das ein einfacher Algorithmus. Den kann ich in drei, vier, fünf Zeilen beschreiben und jedem Hörer vermitteln. Elegant ist der nicht. schön ist der nicht.
    Der schönste Sortieralgorithmus ist vielleicht "Quicksort". Und da brauche ich 90 oder 120 Minuten, um meinen Studierenden den zu erklären, und er braucht auch deutlich mehr Zeilen. Trotzdem ist das der schönere Algorithmus."
    Quicksort ist der beliebteste Sortieralgorithmus aller Zeiten – und auch heute noch. Erfunden hat ihn 1962 der britische Informatiker Tony Hoare. Quicksort, englisch für "schnell ordnen" guckt sich nicht wie Bubble Sort Nachbarn der ungeordneten Daten an, sondern zieht ziemlich beliebig eine Trennlinie, einen Splitter. Und der raffinierte Gedanke von Quicksort ist, alle größeren Zahlen rechts von dem Splitter zu schmeißen, alle kleineren nach links. Und dann macht man das Gleiche innerhalb des rechten und des linken Bereichs: Man zieht wieder neue Linien. Am Schluss ist alles fein geordnet, der Algorithmus hat seinen Job erledigt.
    Wenn ein Algorithmus sich immer wieder selbst aufruft, spricht der Mathematiker von...
    "... rekursiv. Man wendet dasselbe Verfahren rekursiv auf das linke Teilproblem an und rekursiv auf das rechte Teilproblem. Ich würde hier wieder einen Splitter nehmen, sagen wir einmal die 3..."
    "Wer entscheidet, welche Zahl Sie nehmen?"
    "Super Frage. Es klingt fast so, als hätten wir uns abgesprochen, es ist aber gar nicht so. Es gibt mehrere Möglichkeiten: Wir könnten sagen, wir nehmen immer das letzte oder das erste Element."
    "Das ist von der Performanz nicht unbedingt das Beste, oder?"
    "Nein, das würde auch wieder auf eine quadratische Laufzeit hinauslaufen. Wenn wir n Datensätze haben, dann würde die Laufzeit proportional zu n2 laufen. Wir könnten bei dem Splitter-Element sagen, es soll nicht immer das letzte sein, sondern wir ziehen es zufällig. Es gibt eine wunderbare Laufzeit, die proportional ist zu n * log (n). Das ist deutlich besser als n2, und man kann zeigen, es ist "asymptotisch optimal".
    "Die Algorithmik geht auch immer hin und fragt für ein gegebenes Problem: Was ist eigentlich machbar? Wo sind die Grenzen? Wir wollen nicht nur gucken, geht es gut; das ist natürlich auch der Anspruch. Der Mensch möchte immer wissen: Geht's nicht noch besser? Wo sind die Grenzen?"
    "Und da kann man sogar zeigen, diese Laufzeit n * log (n) ist das Best Mögliche. Und dieser Quicksort, genauer: der randomisierte Quicksort holt asymptotisch die beste Laufzeit. Ist überraschend, ist aber so."
    Quicksort von Sir Charles Antony Richard Hoare wurde über die Jahre verbessert, aber im Kern besteht er aus nur sechs Zeilen Pseudocode:
    funktion quicksort(links, rechts)
    falls links < rechts dann
    teile(links, rechts)
    mach wieder quicksort, diesmal (links, teiler-1)
    und jetzt (teiler+1, rechts)
    ende
    Wir hören algorithmische Musik. Die Töne spielt der Computer automatisch nach der fast 1.000 Jahre alten sogenannten Fibonacci-Folge. Der Algorithmus erzeugt Zahlen, die der Rechner in Töne umsetzt.
    "Die erste und zweite Zahl sind 1 und 1"
    "Jede beliebig spätere Zahl ist die Summe aus ihren beiden Vorgängerzahlen."
    Vor meinem Fenster werden gerade Bäume gefällt, mit elektrischen Sägen. Das Interessante an diesem Verfahren ist, dass es einem strengen Algorithmus folgt. Man sägt ja eine Hecke und einen Baum nach bestimmten Regeln ab, damit der Baum in die richtige Richtung fällt und die Hecke von außen kleiner wird usw. Ein typischer Algorithmus.
    Und jetzt begebe ich mich zu meinem Bildschirm, und da sehe ich vor mir "The Algorithm Auction – the world's first auction celebrating the art of code." Also: Die Algorithmus-Auktion, die erste, die die Kunst am Code zelebriert.
    Wir sehen sieben Algorithmen, die man als Bilder ersteigern kann. Skizzen von Algorithmen, erste Computerausdrucke von Algorithmen. Das höchste Gebot mit 7.500 Dollar und bislang 14 Geboten ist für "Hello World" von Brian Cernigan. Cernigan hat 1978 vielleicht als erster "Hello World" als Beispiel für einen Computercode, für einen Algorithmus, der die Worte "Hello World" auf den Bildschirm zaubert, erfunden. Das ist tatsächlich ein handschriftlich von Cernigan auf Lochpapier geschriebener Code, in einer Zeile. Print f ("Hello, World \n"); in einem schwarzen Rahmen. The Algorithm Auction.
    "Mein Name ist Aya Jaff. Ich bin 19 Jahre alt und studiere Wirtschaftsinformatik an der FHU Nürnberg. Ich habe verschiedene Jobs."
    Aya Jaff gehört zu den erfolgreichsten jungen IT-Unternehmern in Europa. Im Rahmen eines Stipendiums für "Women Who Code" (Frauen, die Code entwickeln) bereiste sie im Sommer 2015 das Silicon Valley und stieg als Software-Spezialistin in ein Unternehmen für Höchstgeschwindigkeitstransport ein. Angefangen hat ihr Erfolg mit der Entwicklung von Tradity, einem Börsenspiel, das unter anderem den Umgang mit der Währung Bitcoin lehrt.
    Aya Jaff liebt Algorithmen. Ihr absoluter Favorit heißt Hash. Hash erzeugt unter anderem die Bitcoin-Münzen. Sie findet dieses Verfahren deswegen schön, weil es mit einer erstaunlich einfachen Grundidee die IT-Welt der letzten Jahre umgewälzt hat. Keine Verschlüsselung kommt heute um den "Hash-Algorithmus" herum.
    "Und zwar kann man sich vorstellen, wir haben einen Eingangstext wie zum Beispiel eine Zahlenfolge aus 1, 2 und 3. Wir versuchen jetzt, die Hash-Funktion "Quersumme" herauszubekommen. Die Quersumme ist natürlich die Addition von den Zahlen: 1 + 2 + 3. Der Hash-Wert ist 6.
    Wenn man jetzt aber von dem Hash-Wert 6 auf die drei Zahlen kommen will, die diesen Hash-Wert gebildet haben, kann man das nicht. Das sind drei Variablen, das heißt, man müsste eine Gleichung wie 6 = x + y + z aufstellen, drei Variable, mathematisch unmöglich zu lösen. Es könnte ja 6 + 0 + 0 sein oder 1 + 1 + 4 oder so.
    Das ist jetzt nur irgendeine Hash-Funktion. Diese Hash-Funktion heißt "Quersumme", das heißt, es wird von einem verlangt, das alles zu addieren. Aber es gibt natürlich andere, kompliziertere [Funktionen]. Und das interessante dabei ist, dass es jede beliebige Funktion sein kann. Wichtig ist nur, dass sie dem Rezipienten und dem, der die Hash-Funktion produziert hat, bekannt ist.
    Das ist wie ein Schlüssel. Man macht eine Tür auf, die Tür weiß, das ist der richtige Schlüssel, und man selbst weiß auch, der Schlüssel ist für dieses Schloss geschaffen. Das ist die Hash-Funktion."
    Der Hash-Algorithmus ist nicht neu. Man entdeckt nur immer neue Funktionen für ihn. Vermutlich sind die meist eingesetzten Algorithmen heutzutage Hash. Fast immer wenn wir im Internet surfen und Daten übertragen, ist Hash im Spiel, weil er von jedem Datenpaket eine abgesicherte Prüfsumme bildet, die der Empfänger quittiert – quasi ..."
    "Okay, das Datenpaket kam komplett rüber, das nächste bitte."
    Hash entwickelt sich also weiter, es werden immer neue Funktionen dafür ersonnen. Die meisten scheitern, weil sie das Problem zu langsam abarbeiten. Sind sie damit hässlich? Gibt es überhaupt hässliche Algorithmen?
    "Also, ich könnte keinen hässlichen Algorithmus hinschreiben, könnte aber vielleicht auf etwas verweisen. Es gibt Optimierungsprobleme, und die sind sogar sehr vielfältig, wenn es um praktische Anwendungen geht, die, wie man sagt, in der Komplexitätstheorie "np-hart" sind. Das heißt, man kennt keine schnellen Polynomialzeit-Algorithmen für diese."
    Susanne Albers. Als Beispiel nennt die Leiterin des Algorithmus-Lehrstuhls der Technischen Universität München den Spediteur, der alle Orte abfahren muss, auf möglichst kurzer Strecke in möglichst kurzer Zeit. Das ist doch trivial, denkt man. Keineswegs, sagen die Mathematiker, denn es ist "np-hart", es ist eben nicht einfach zu lösen. Außerdem skaliert es miserabel: Wenn nur eine Stadt hinzu kommt, schießt die Rechenzeit in die Höhe.
    Susanne Albers:
    "Eigentlich ist das hässlich. Es wäre toll, wenn man die Frage klären könnte, ob es für diese Klasse von Problemen nur diese 'hässlichen' Exponentialzeitalgorithmen gibt, oder eben auch schöne polynomielle. Aber das ist das im Moment härteste Problem, das im Moment für die Algorithmik und die Komplexitätstheorie im Universum schwirrt. Und ich bin auch nicht sicher, ob ich in meiner Lebenszeit die Antwort darauf erleben würde. Das wäre ein riesen Durchbruch."
    Was wäre, wenn man eines Nachts erwacht und einen solchen eleganten Algorithmus findet? Katharina Zweig:
    "Pro Jahr gibt es so fünf bis zehn ernst zu nehmende Versuche, dieses Problem zu lösen. Wenn mir das gelingen würde, dann hätte ich erst einmal dieses Preisgeld von einer Million Dollar."
    Die Nachfrage nach neuen Algorithmen ist enorm
    Eine Million Dollar verdiente sich ein Team von Programmierern beim Preis des Internet-Filmportals Netflix. Sie fanden einen Algorithmus, der sich die großen Datenmengen ansieht, wie sie bei Filmbewertungen anfallen: Millionen von Kunden sehen ja Tausende von Filmen und geben ihnen gern Noten. Der "kollaborative Filteralgorithmus" kann jetzt sehr verlässlich voraussagen, wie ein neuer Film bewertet werden wird, ohne dass der Algorithmus ihn kennt."
    Ein 2015 verliehener hoch dotierter Medizinpreis ging an Programmierer, die sich mit der Behandlung von Wunden bei Patienten durch zu lange Bettlägerigkeit beschäftigen: Mit sogenannten Support Surface (Flächenstütz)-Algorithmen kann man jetzt herausfinden, wie man bei bestimmten Wunden oder Knochenverletzungen Betten und Unterlagen optimal für den individuellen Patienten konstruiert.
    Die Nachfrage nach neuen Algorithmen ist enorm. Informatiker mit kreativen Ideen sind gesucht. Ein Beispiel ist die Autoindustrie. In modernen Pkw strömen immer mehr Daten über immer mehr Sensoren in den Bordcomputer ein. Wie geht der damit um? Tobias Glasmachers vom Institut für Neuroinformatik der Universität Bochum erforscht solche "Big Data Algorithmen" – und er leidet darunter, dass es keine richtig guten gibt.
    "In der Informatik gucken wir uns Laufzeiten von Algorithmen an. Und aus dieser Sicht bekommen wir tatsächlich Probleme, zumindest mit vielen Standardalgorithmen, die es heute gibt. Ich habe also keine Angst, in den nächsten Jahren arbeitslos zu werden."
    "Sind solche Algorithmen teuer? Kann ich sie kaufen?"
    "Ich glaube nicht, dass Sie besonders viele dieser Algorithmen überhaupt kaufen können oder kaufen müssen. Es ist vielmehr so, dass die meisten Algorithmen, die breit verwendet werden, als Open Source-Software verfügbar sind."
    Die Schönheit spielte nie eine Rolle bei der Wahl des Algorithmus. Aber wenn er mit einer feinen Idee gut funktioniert, schwärmt jeder Informatiker von seiner Eleganz und seiner Schönheit. Die Einfachheit des alten Bubble-Sort-Algorithmus hinderte niemanden daran, den mindestens so eleganten Quick Sort einzusetzen. Die Triebkraft war der Markt.
    Wir leben gerade in einer Periode, wo Rechenleistung und Speicher billig sind. Also kommt man auf Ideen, die man früher nicht hatte, und merkt in vielen Fällen: Selbst 1.000 Computer kommen mit den vielen Daten, die man jetzt analysieren möchte, nicht zurecht. Dann steigt die Sehnsucht nach neuen Algorithmen, die viel effektiver rechnen, die sich auch auf mehrere Maschinen verteilen.

    Gute Ideen für solche Rechenrezepte sind der Motor der modernen Informationstechnik. Nicht mehr tolle Rohstoffe und präzise Maschinen treiben die Industrie an, sondern die Ideen, die zu Software führen. In wenigen Jahren, wenn die autonomen Autos auf den Autobahnen herumfahren, wird nicht der Hersteller die meisten Fahrzeuge verkaufen, der den besten Motor und die besten Verbundfasern verbaut, sondern der den verlässlichsten Algorithmus für das selbstständige Steuern entwickelt hat – eben das sicherste Auto liefert. Und er wird dieses Rezept geheim halten. Sein Algorithmus ist sein Kapital. Er wird nicht einmal versuchen, es zu patentieren – falls das überhaupt möglich wäre. Wäre es möglich?
    Katharina Zweig: "In Deutschland ist die Patentierung eines reinen Algorithmus nicht möglich. Es ist nur möglich, dass ein Chip, der eine bestimmte Implementierung dieses Algorithmus hat, patentiert wird.
    In Amerika ist die Situation anders. Da können reine Berechnungs- und Lösungsideen als Algorithmus patentiert werden. Das heißt, wir haben da einfach unterschiedliche Rechtslagen, und eine Firma, die sich nicht ruinieren will, wird natürlich einen Algorithmus erst einmal nicht einsetzen, der in irgend einem anderen Land patentiert ist. Auf Dauer brauchen wir da sicherlich eine gesellschaftliche Diskussion, was wir da wollen."
    "Nein, ein Wissenschaftler lässt nichts patentieren. Das passt jetzt nicht mehr in die Zeit, das weiß ich sehr wohl."
    Frieder Nake, Pionier der Computerkunst und heute emeritierter Professor der Informatik in Bremen. Nake hat in den 1960er Jahren ein Buch über die "Ästhetik von Algorithmen" geschrieben. Für ihn passt der aktuelle Patentierungsdrang in sein Bild einer von Wirtschaftsinteressen getriebenen Informatik.
    "Ich habe eine Doktoranden, der macht etwas Verrücktes mit Musik, Musik, die kein Mensch hören will. Und der hat mich neulich gefragt, ja, das will er jetzt patentieren lassen. Ich dachte, bist du denn verrückt geworden?
    Der Tradition des Wissenschaftlers, glaube ich, läuft das zuwider, dass das, was man wissenschaftlich macht, zu einem Patent und damit zu irgendwelchen Geldforderungen führt. Das ist eigentlich unmoralisch."
    Patente behindern die Entwicklung. Ein Beispiel ist der Resonator. Er beschreibt auf elegante Weise einen Rechenweg für bestimmte Sounds. Man kann mit ihm ermitteln, welche Geräusche entstehen, wenn man ein Objekt zum Schwingen anregt, etwa eine fünf Kilometer lange Trompete. Diese vielversprechende Disziplin der Musikinformatik heißt "physikalisches Modellieren".
    Egbert Jürgens: "Das physikalische Modellieren ist leider ziemlich zum Stillstand gekommen, weil es Patente gibt auf dem Gebiet."
    Egbert Jürgens, Entwickler bei der Berliner Musiksoftware-Firma Native Instruments.
    "Diese Patente laufen jetzt langsam aus, aber sie haben 20 Jahre lang die Entwicklung blockiert. Es ist eine Art Resonator, da wird Energie hineingesteckt und Energie reflektiert und erzeugt dadurch eine Schwingung. Mit diesem Resonator können Sie verschiedenste Instrumente nachbauen. Sie können sogar eine Saite damit modellieren, aber auch alle Blasinstrumente beispielsweise. Es ist trotzdem nur ein sehr, sehr einfaches Verfahren. Sie brauchen dazu nur wenige Zeilen Code. Es erscheint einem ziemlich trivial. Vor 20 Jahren war es nicht ganz so trivial. Trotzdem würde ich sagen, es wäre besser, es hätte das Patent nicht gegeben."
    "Amerikanisches Patent?"
    "Amerikanisches Patent."
    "Das kann jeder lesen?"
    "Richtig. Es gibt zum Glück jetzt die ersten Patente, die auslaufen. Im Laufe der nächsten fünf bis zehn Jahre werden die meisten davon auslaufen."
    "Der Algorithmus kann in jeder beliebigen, dem Menschen zugänglichen Form beschrieben werden, zum Beispiel auch gezeichnet, halb gezeichnet, skizziert, getanzt oder sonst etwas werden."
    Nur gekocht darf mit Algorithmen nicht werden, meint Frieder Nake. Obwohl Kochrezepte doch wie Rechenvorschriften aussehen.
    "Das sind keine Algorithmen! Die werden ja von der Mehrheit der Informatikprofessoren, die die Einführungsveranstaltung machen, als Beispiele genommen, weil sie so alltäglich sind – wobei die meisten Studenten, denen das erzählt wird, nie gekocht haben, vermute ich."
    "Und köchle al dente". "Schmecke ab mit einer Prise Salz."
    "Nein, es ist nicht algorithmisch! Das Kochen ist nicht algorithmisch. Wir haben viele Rückzugsbereiche, die man auch verteidigen muss, wo der Computer nicht brauchbar ist. Und insofern ist es eine hundsgemeine Ideologie, die zeigt, wofür die da sind: Nicht das algorithmische Denken in aller Radikalität den Studierenden nahezubringen, sondern die kleinbürgerliche Ideologie. Das ist jetzt ein bisschen großer Klotz, ich meine es aber schon ernst so."

    Eine Produktion des Deutschlandfunks 2015