Christian BürckertNotizen zu KI, Führung und Technik · Saarbrücken

Kann Wasser Buchstaben lesen?

Wie wenig braucht man eigentlich, um zu rechnen? Keinen Strom, keinen Chip, nur Wasser, Schwerkraft und ein paar Rohre? Diese Frage hat mich eine Weile nicht losgelassen, und irgendwann bin ich beim Siphon gelandet.

Ein Behälter läuft langsam voll. Erreicht das Wasser den Rand eines Standrohrs, springt ein Siphon an und leert den Behälter in einem Zug, bis Luft unter die Glocke kommt und der Siphon abreißt. Dann füllt er sich von vorn. So funktioniert der Pythagoreische Becher, und so funktionieren die Glockensiphons, mit denen Aquaponik-Beete geflutet und wieder entleert werden.

Wer schon einmal etwas über künstliche Neuronen gelesen hat, erkennt das Muster sofort: sammeln, Schwelle erreichen, feuern, zurücksetzen. Die Frage liegt also nahe. Kann ein Netz aus solchen Behältern rechnen? Ohne Sensoren, ohne Software, ohne ein bisschen Elektronik im Inneren?

SiphonNet ist der Versuch, das ehrlich herauszufinden. Vorerst in der Simulation, aber mit der echten Physik eines Siphons: Ausfluss nach Torricelli, ein Auslöse- und ein Abrisspegel, Sättigung, Massenerhaltung. Code, Messungen und ein Video von 91 Sekunden liegen offen auf GitHub.

Was man im Video sieht

Das Video zeigt 100 Behälter in fünf Reihen, die nacheinander die Buchstaben S, I, P, H, O, N erkennen. Fast alle, denen ich es gezeigt habe, sind an denselben zwei Stellen hängen geblieben: Was ist da eigentlich die Eingabe, und was ist die Ausgabe? Deshalb einmal langsam, von oben nach unten und von links nach rechts.

➔ Video ansehen, deutsch, 91 Sekunden (MP4, 23 MB)

Die Eingabe: ein Buchstabe aus 35 Pumpen

Links oben steht unter „Eingabe“, welcher Buchstabe gerade dran ist. Das ist nur die Beschriftung. Die eigentliche Eingabe ist das Raster aus 5 × 7 Punkten über den Behältern. Das ist der Buchstabe, so grob gepixelt wie auf einer alten Anzeigetafel. Jeder Punkt ist eine Pumpe. Ein heller Punkt heißt: Diese Pumpe läuft. Ein dunkler: Sie steht still. Pumpen sind dabei nur die bequemste Lösung für die Simulation. Genauso gut kann jedes Pixel ein Eimer sein, aus dem das Wasser per Schwerkraft zuläuft.

Damit es nicht zu leicht wird, sind bei jedem Buchstaben drei Pixel zufällig vertauscht, und jede Pumpe läuft bis zu 20 Prozent stärker oder schwächer als vorgesehen. Das S im Video sieht deshalb absichtlich ein bisschen kaputt aus.

Und jetzt der Teil, der am meisten verwirrt: Jede Pumpe hat Schläuche zu ungefähr 15 Behältern, wild über alle Reihen verstreut. Unter dem S entsteht also kein S aus Wasser. Die Form des Buchstabens ist in den Behältern nicht mehr zu sehen. Das ist kein Fehler der Darstellung, sondern das Prinzip. Das Netz soll die Eingabe gründlich durcheinanderbringen.

Die Mitte: Behälter, die sich gegenseitig füllen

Springt ein Siphon an, leuchtet sein Behälter kurz golden auf, und goldene Äste zeigen, wohin das Wasser geht: in vier Behälter der Reihe darunter. Die unterste Reihe läuft ab. Wasser fließt nur bergab, deshalb gibt es in diesem Aufbau keine Schleifen. Kein Behälter kann etwas zurück nach oben schicken.

Während 30 simulierter Sekunden entsteht so ein Muster aus Füllständen und Entleerungen, das davon abhängt, welche Pumpen gelaufen sind. Trainiert wird in diesem Netz nichts. Die Leitungen sind zufällig verlegt und bleiben, wie sie sind.

Die Ausgabe: 26 Balken und ein Gewinner

Rechts steht der Ausleser, eine Liste von A bis Z mit je einem Balken. Für jeden Buchstaben rechnet er eine Punktzahl aus. Dazu schaut er sich jeden einzelnen Behälter an: Wie oft hat er sich entleert, und wie voll war er, jeweils in drei Zeitabschnitten. Jede dieser Beobachtungen bekommt für jeden Buchstaben ein eigenes Gewicht, mal positiv, mal negativ. Die Summe ist der Balken. Der längste Balken gewinnt und erscheint links unten unter „Erkannt“.

Diese Gewichte sind das Einzige, was trainiert wird. Der Ausleser hat dafür vorher 1.040 verrauschte Beispielbuchstaben gesehen, 40 von jedem. Er lernt also nicht, wie ein S aussieht. Er lernt, welches Wassermuster ein S hinterlässt.

Die goldenen Linien, die nach jedem Durchlauf zum Ausleser laufen, zeigen die 24 Behälter, die den Gewinner am stärksten nach vorn geschoben haben. Mehr bedeuten sie nicht. Durch diese Linien fließt kein Wasser.

Und, kann Wasser nun lesen?

Ein bisschen. 100 Behälter erkennen die verrauschten Buchstaben in gut 94 von 100 Fällen. Das klingt ordentlich, bis man vergleicht. Ein ganz einfacher linearer Klassifikator, der direkt auf die 35 Pixel schaut, schafft 93,7 Prozent. Und dieselben 100 Behälter ganz ohne Leitungen untereinander schaffen sogar 96 Prozent.

Anders gesagt: Die Schwelle, an der ein Behälter kippt, hilft ein wenig. Die Verbindungen zwischen den Behältern helfen bisher gar nicht. Ein Gedächtnis hat das Netz auch kaum. Ein Behälter, der sich an der Schwelle leert, merkt sich seine Vorgeschichte nicht als Pegel, sondern als Phase, und die kann ein linearer Ausleser nicht zurückrechnen.

Genau so steht es auch auf GitHub. Ich finde, das gehört dazu. Die schlechten Zahlen zeigen, wo es weitergeht. Die Simulation ist bisher bewusst schlicht: Jeder Behälter bekommt nur, was die Pumpen und die Reihe darüber hineingießen, und gehemmt wird nichts. Beides muss nicht so bleiben, und beides geht ohne einen einzigen Draht.

Alle Siphons können zusätzlich aus einem Haupteimer gespeist werden, der jeden Behälter über ein Schwimmerventil wie im Spülkasten auf ein Normalniveau zurückfüllt. Dann hat das Netz eine eigene Versorgung und lebt nicht mehr nur vom Wasser der Eingabe.

Und hemmen kann man auch mit Wasser: mit einem Zufluss, der über einen Verdränger das wirksame Volumen eines Behälters verändert, sodass er später auslöst, oder mit einem kleinen, dauerhaften Abfluss.

Dazu kommt, die Pulszeiten auszulesen statt nur der Pegel. Und irgendwann ein Aufbau auf dem Tisch, mit 8 bis 16 Siphons aus dem 3D-Drucker und einer Kamera.

Was daran neu ist

Dass man mit Wasser rechnen kann, ist nicht neu. 2003 haben Chrisantha Fernando und Sampsa Sojakka Muster in einem Eimer Wasser erkannt, anhand der Wellen auf der Oberfläche. Neuronen, die sammeln und feuern, beschreibt man seit über hundert Jahren, Netze, bei denen nur der Ausleser trainiert wird, seit einem Vierteljahrhundert.

Neu ist, soweit wir es finden konnten, die Verbindung: Siphons, die sich selbst auslösen, als Knoten eines solchen Netzes, mit ihrer echten Physik. Und die Frage, welche Einschränkungen der Hydraulik wirklich etwas kosten und welche sich mit Wasser selbst umgehen lassen.

Simulation, Messungen und Video sind zusammen mit Claude (Anthropic) entstanden.

➔ SiphonNet auf GitHub: Code, Messungen, Video, MIT-Lizenz