Die Faszination der Hard Science Fiction liegt vor allem in der detailgetreuen Darstellung von Wissenschaft und Technologie. Eine der größten Herausforderungen darin ist die realistische Modellierung astronomischer Größenordnungen und Entfernungen, die häufig die Handlung prägen. In diesem Zusammenhang gewinnt die präzise Berechnung von Sternpositionen und Abständen zwischen ihnen eine immense Bedeutung. Im Jahr 2022 stellte ein Entwickler und Autor eine bemerkenswerte Lösung vor, die auf der Programmiersprache Common Lisp basiert. Dabei ging es um die Umsetzung von Astronomieberechnungen, die es ermöglichen, interstellare Reisen in einer Hard Sci-Fi-Welt technisch genau zu planen und darzustellen.
Diese Arbeit ist nicht nur ein beeindruckendes Beispiel für wissenschaftliches Geschichtenerzählen, sondern auch eine Hommage an die Kraft funktionaler Programmierung und mathematischer Genauigkeit. Die literarische Ausgestaltung fand ihren Ausgangspunkt in einer Geschichte namens „The Epiphany of Gliese 581“. Dort begibt sich eine Gruppe von Forschern auf eine Expedition, die vom Stern Beta Pictoris ausgeht, über Gliese 581 verläuft und schließlich an den Ausgangspunkt zurückkehrt. Anders als in vielen Sci-Fi-Geschichten reist die Gruppe nicht in geraden Bahnen mit herkömmlichen Raumfahrzeugen, sondern nutzt eine digitale Übertragungsroute über ein interstellares Kommunikationsnetzwerk, in dem Daten mit Lichtgeschwindigkeit übertragen werden. Die Herausforderung bestand darin, dieses Szenario durch realistische Daten und Algorithmen zu untermauern.
Für die Berechnung der Reisezeiten und Streckenautonomie sind exakte Entfernungen zwischen den Sternen erforderlich. Die Grundlage dafür bildet die HYG-Datenbank, ein umfangreiches Verzeichnis von Sternen mit ihren jeweiligen Positionen in verschiedenen Koordinatensystemen. Interessanterweise enthält diese Datenbank sowohl äquatoriale Koordinaten – also die astronomisch üblichen Maße in Recht- und Deklination – als auch kartesische Koordinaten, die für Entfernungsberechnungen deutlich praktischer sind. Die Wahl von Common Lisp als Programmiersprache für dieses Projekt ist bemerkenswert. Lisp ist bekannt für seine Mächtigkeit im Umgang mit symbolischer Verarbeitung und seine dynamische Natur.
Mit CLOS, dem Common Lisp Object System, lassen sich auf elegante Art und Weise Klassen für verschiedene physikalische Einheiten und Objekte definieren, was gerade bei der Arbeit mit unterschiedlichen Einheiten wie Lichtjahren und Parsec unerlässlich ist. Die Entscheidung, für Entfernungen eigene Klassen zu definieren, verhindert Fehler durch das Vermischen von Einheiten und macht Berechnungen ausgesprochen klar und zuverlässig. Die Umrechnung zwischen Lichtjahren und Parsec erfolgt durch Multiplikation mit genauen Konstanten. So entspricht ein Parsec etwa 3,26156 Lichtjahren, während ein Lichtjahr ungefähr 0,306601 Parsec entspricht. Durch diese strikte Trennung und explizite Umrechnung wird eine wichtige Grundlage für korrekte astronomische Berechnungen geschaffen.
Ein wichtiger Punkt bei der Modellierung der Sternpositionen ist die Verwendung eines dreidimensionalen kartesischen Koordinatensystems. Dieses erlaubt es, den Abstand zwischen zwei Sternen mittels einfacher euklidischer Distanzformeln präzise zu bestimmen. Damit wird die Grundlage geschaffen, um Entfernungen im dreidimensionalen Raum zu berechnen, was für die Planung von Reiserouten unabdingbar ist. Die HYG-Datenbank wird zeilenweise eingelesen und die relevanten Daten werden in individuellen Sternobjekten zusammengefasst. Diese Objekte enthalten grundlegende Identifikatoren, Namen aus verschiedenen Katalogen und vor allem die kartesische Position samt Distanz.
Die zeitgemäße Nutzung von CSV-Parsing-Verfahren erlaubt eine schnelle und sichere Umwandlung der Daten in ein für das Programm nutzbares Format. Für die Handlung ist es wichtig, nicht nur einzelne Sterne zu identifizieren, sondern auch effiziente Routen im Sternennetzwerk zu finden. Hier kommt Dijkstras Algorithmus ins Spiel. Der Algorithmus ermöglicht es, auf Basis der gegebenen Sterne und der maximal erzielbaren Sprungweite eines Lasers eine optimale Route zu berechnen. Die Sprungweite wird durch technische Voraussetzungen begrenzt, etwa durch die Dekohärenz der Laser über interstellare Distanzen hinweg.
Dabei ist der kürzeste Weg in Bezug auf die Gesamtdistanz nicht immer der schnellste, da der digitale Reiseweg über ein Netzwerk von Übertragungspunkten führt und eine Reihe von Zwischenstopps erfordert. Die Vektordarstellung der Sterne als Knoten in einem Graphen, verbunden durch gewichtete Kanten entsprechender Entfernungen, ermöglicht eine abstrakte Repräsentation dieser interstellaren Infrastruktur. Dijkstras Algorithmus durchsucht diesen Graphen und findet den Weg mit den geringsten Gesamtkosten – in diesem Fall der geringsten Entfernung. Ein besonderer Fall stellt der Stern Gliese 581 dar, der nicht Teil des Kommunikationsnetzwerks ist. Um dennoch eine Verbindung herzustellen, wurde eine Suche nach dem dem Stern nächstgelegenen Netzwerkstern implementiert.
Dieser zweite Schritt ist für die Narrative wichtig, weil der letzte Abschnitt mit einem konventionellen Fusionsraketenflug bewältigt wird, der bei deutlich geringerer Geschwindigkeit als die digitale Übertragung erfolgt. Die numerischen Ergebnisse bestätigen die Plausibilität der Modellierung: Die Netzwerkroute von Beta Pictoris zu Gliese 555 etwa ist um einige Lichtjahre länger als die direkte Verbindung, aber dennoch erheblich schneller als eine herkömmliche Raummission. Die Berechnungen ergeben, dass der Netzwerkkurs etwa 78,25 Lichtjahre lang ist, während die direkte gerade Distanz circa 70,8 Lichtjahre misst. Diese Differenz wirkt auf den ersten Blick wie ein Nachteil, wird aber durch die hohe Übertragungsgeschwindigkeit kompensiert. Ein weiteres faszinierendes Element des Projekts ist die Visualisierung der Sterne und deren Verbindungen.
Die Positionen werden dazu in animierten 3D-Streudiagrammen dargestellt, die mit Hilfe von Python-Matplotlib erstellt werden. Solche Karten bieten nicht nur eine bessere Übersicht über die räumliche Lage der Sterne, sondern dienen auch als wichtiger Kontrollmechanismus, um etwaige Fehler in den Daten festzustellen und das Verständnis für die Geschichte zu vertiefen. Der gesamte Ansatz ist ein großartiges Beispiel dafür, wie wissenschaftliche Präzision und kreative Erzählkunst zusammenfinden können. Der Einsatz moderner Algorithmen, strikter Typisierung und klarer mathematischer Übersetzungen von astronomischen Konzepten resultiert in einem Werkzeug, das nicht nur fiktionale Welten glaubwürdig gestaltet, sondern auch praktische Anwendung für zukünftige Projekte in der wissenschaftlichen Datenanalyse bieten könnte. Abschließend spiegelt dieses Projekt eine besondere Haltung gegenüber dem Genre Hard Science Fiction wider: Respekt gegenüber dem Leser und der wissenschaftlichen Genauigkeit.