The Martian: Braucht es wirklich einen Supercomputer, um Raumflugmanöver zu berechnen?

Ich entschuldige mich vorsorglich dafür, dass ich eine Frage zu einem Film gestellt habe, und die Spoiler in dieser Frage, aber angesichts der weit verbreiteten Unterstützung für seine wissenschaftliche Plausibilität hoffe ich, dass Sie es zulassen werden :)

In dem Film The Martian wird die Figur Rich Purnell gezeigt, wie er den Pleiades-Supercomputer im NASA Ames Research Center benutzt, um die Berechnungen für sein Manöver zu bestätigen, mit dem das Hermes-Raumschiff sicher zurück zum Mars und dann zur Erde umgeleitet werden soll. Wieso den?

Der Weltraum ist so ziemlich der ideale Ort für vorhersagbare Physik. Wenig Luft oder äußere Kräfte, kurz die Schwerkraft, die zwischen dem Raumschiff und der Sonne und den Planeten berechnet werden kann, und wenig anderes, Zentrifugalkraft nur während des Manövers selbst, fast keine Strömungsmechanik, die sonst einfache Berechnungen kompliziert macht. .. Braucht es bei so wenigen beweglichen Teilen und Quellen der Komplexität wirklich einen Supercomputer mit 250.000 Kernen , um diese Berechnungen durchzuführen, oder könnte Rich stattdessen beispielsweise sein Macbook verwenden?

Wenn dies der Fall wäre (Supercomputer erforderlich), wäre das Apollo-Projekt in große Schwierigkeiten geraten.
Wenn Sie mit impulsiven Verbrennungen und nicht optimaler Flugbahn fahren, brauchen Sie nicht einmal einen Computer - oder einen Notizblock. Mit etwas Training wären Sie in der Lage, halbkorrekte Trajektorien zu erkennen, die mit ein paar Korrekturmanövern funktionieren könnten.
Um einen Supercomputer mit 250.000 Kernen effektiv zu nutzen, braucht man ein Problem, das sich in viele parallele Aufgaben aufteilen lässt. Aber für die schrittweise Berechnung einer Trajektorie können Sie den nächsten Schritt nicht berechnen, bevor die Ergebnisse dieses Schrittes bereit sind. Der Supercomputer kann verwendet werden, um viele Varianten der Trajektorie gleichzeitig zu berechnen. Aber braucht man wirklich 250.000 Varianten, wenn keine swing.by Manöver zum Einsatz kommen?
Das Modellieren einer kontinuierlichen Flugbahn mit niedrigem Schub ist schwieriger als herkömmliche Flugbahnen mit impulsiven Verbrennungen. Aber ein gewöhnlicher Computer kann das. Die Hintergrundgeschichte und der Trailer des Films waren wissenschaftlich nicht plausibel. Sie ließen Hermes von LEO abfliegen und 124 Tage später in der Marsumlaufbahn ankommen. Was angesichts der Hermes-Beschleunigung von 2 mm/s^2 nicht möglich ist .
Nicht nur das Apollo-Projekt wäre in Schwierigkeiten geraten, sondern auch die Voyager-Missionen. Die große Tour zu vielen Planeten erforderte eine komplexe Flugbahn.
Ein Benutzer eines Supercomputers mit 250.000 Kernen verwendet nicht unbedingt alle verfügbaren Kerne, es können mehrere gleichzeitige Benutzer vorhanden sein und einige von ihnen verwenden nur eine kleine Anzahl von Prozessoren.
Es gibt ein Interview mit Andy Weir von IEEEs monatlichem Magazin Spectrum, in dem der Autor sagt, dass er sich, nachdem er zuerst versucht hatte, Trajektorien analytisch herauszufinden, der Simulation zugewandt hat. Gut zu lesen: spectrum.ieee.org/at-work/tech-careers/…

Antworten (7)

Nun, das Entwickeln von Trajektorien mit niedrigem Schub erfordert mehr Rechenleistung als impulsive Trajektorien (z. B. wie Voyager, das mit ziemlich primitiven Computern erstellt wurde). Sie haben keine andere Wahl, als viele vollständig integrierte Trajektorien zu durchlaufen. Es bräuchte jedoch keinen Supercomputer der Zukunft oder gar einen Supercomputer der Gegenwart, um solche Trajektorien zu suchen und zu finden.

Tatsächlich benutzte Andy Weir seinen Heimcomputer (was auch immer das war, aber wahrscheinlich nicht einmal ein kleiner Cluster), um seine Flugbahnen zu finden und zu überprüfen. Sie können seinen Code hier finden , und es gibt auch öffentlich verfügbaren NASA-Code , den Sie verwenden können, um Trajektorien zu verbreiten, um dies selbst zu versuchen.

Sie werden immer noch den Supercomputer verwenden wollen, wenn Sie neben dem "Ankommen" zusätzliche Vorteile wünschen - z. B. wäre die Rosetta-Flugbahn, nur um auf 67p auf einem sich der Sonne nähernden Segment der Umlaufbahn zu stoßen, einfach genug - aber stattdessen waren vier Gravitationshilfen und zwei Asteroiden erforderlich Vorbeiflüge extra, zusätzlich zur Kometenbegegnung. Mit Stift und Papier oder auf dem Heimcomputer ist das nicht wirklich machbar.
Solche Trajektorien lassen sich leicht auf einem Heimcomputer oder einem Smartphone berechnen. Wo der Supercomputer hilft, ist die Suche über viele solcher Trajektorien hinweg. Manchmal ist eine Brute-Force-Suche mit leistungsstarken Supercomputern billiger als der Versuch, etwas Klügeres zu tun, einfach weil die Computerzeit billiger ist als die Zeit des Analysten. Ich bin mir jedoch sicher, dass die Rosetta-Flugbahn mit der Computertechnologie der 70er Jahre und klugen Leuten hätte gefunden werden können.
Ich bin kein Experte für die Geschichte, aber es bestand eine gewisse Dringlichkeit, die Hermes zum Mars zu bringen und Matt Damon zu retten, als er mit den aerodynamisch beeinträchtigten Einschränkungen des abgespeckten MAV von der Marsoberfläche entkam. Dies hätte das elektrische Antriebssystem von Hermes belasten können, um seine Flugbahn anzupassen, was möglicherweise eine Plasmamodellierung erforderlich gemacht hätte, die Fähigkeit des MAV, stabil in der dünnen Marsatmosphäre mit Löchern darin zu fliegen und das richtige Rendez-vous mit Hermes zu erreichen könnte auch rechnerisch interessant gewesen sein.
Wenn man all diese Probleme mit Margen und Eventualitäten bedenkt, könnte es mehr als gewesen sein a = F / m das brauchte den Supercomputer. Übrigens tolle Links!!

Die Berechnung einer energieoptimalen Umlaufbahn für eine einfache Sache wie Erde->Mars ist keine große Sache. Selbst der Einsatz von Low-Thrust-Motoren trägt nicht viel dazu bei. Es wäre mühsam, aber Sie könnten es auf einem Taschenrechner tun.

Das ist jedoch nicht das, was sie in Buch und Film brauchten. Das Ziel war nicht, so billig wie möglich dorthin zu gelangen, sondern so schnell wie möglich mit der verfügbaren Energie dorthin zu gelangen. Dafür gibt es keine Standardlösung, Sie müssen einfach eine große Auswahl an möglichen Umlaufbahnen ausprobieren und sehen, was am besten ist. Deshalb wollen Sie einen Supercomputer.

Moderne Weltraumfahrzeuge verwenden oft Wege, die ziemlich extreme Berechnungen erfordern. Betrachten Sie Messenger: 6 Begegnungen mit Planeten und 5 Verbrennungen im Weltraum. Sie haben offensichtlich eine Vielzahl möglicher Wege simuliert , um den Weg zu finden, der sie am günstigsten ans Ziel bringt.

You-Tube-Video des Weges

Aber für eine Erde-Mars-Umlaufbahn sind keine Planetenbegegnungen zu kalkulieren. Aber was ist mit der Verwendung einer nicht optimalen Konstellation von Erde und Mars, um nicht länger auf eine gute Konstellation warten zu müssen? Nicht so schnell wie möglich, sondern so früh wie möglich?
@Uwe Das meinte ich. Das Ziel war die früheste Landung auf dem Mars angesichts des verfügbaren Delta-V. AFIAK, dafür gibt es keine Standardgleichung, man muss einfach eine große Anzahl von Möglichkeiten simulieren und sehen, was man bekommt. Ein Leben steht auf dem Spiel, Sie werden sich nicht einfach auf die "beste" Antwort einigen, weil Sie in einem lokalen Optima stecken bleiben könnten.

Die kurze Antwort lautet nein, die Berechnungen erfordern keinen Supercomputer. Jeder moderne Laptop hat die Rechenleistung, um das Szenario zu bewältigen.

Die lange Antwort lautet, dass die spezielle Umlaufbahn, die im Film dargestellt wird, ein sogenannter Planetary Cycler ist, der zwischen zwei Körpern (Erde/Mars) hin- und herpendelt. Sie können an jedem Körper Schwerkraftunterstützungen verwenden, um Ihr Raumschiff auf eine Rückflugbahn zum anderen Körper zu bringen. Diese Schwerkrafthilfen können bei Bedarf durch Manöver ergänzt werden.

Hier ist eine Doktorarbeit über Planetary Cyclers, in der eine Optimierungsroutine entwickelt wurde, um Cycler für Erde/Mars im realen Sonnensystem zu finden, ohne vereinfachende Annahmen. Während die Dissertation die Rechenlast nicht diskutiert, wurde sie auf einer einzelnen Maschine durchgeführt.

Im Allgemeinen erhöhen Dinge wie Manöver mit niedrigem Schub oder Flugbahnoptimierung die Rechenlast, und für bestimmte Anwendungen werden Rechencluster verwendet, die jedoch normalerweise nicht erforderlich sind. Der übliche Ansatz besteht darin, mit einem vereinfachten Modell (geringer Rechenaufwand) eine breite Suche nach realisierbaren Trajektorien durchzuführen und dann, wenn ein kleinerer realisierbarer Satz gefunden wurde, Modelle mit höherer Genauigkeit anzuwenden, die einen höheren Rechenaufwand aufweisen. Auf diese Weise können Sie den Einsatz eines Supercomputers vermeiden.

+1, aber Ryans Dissertation befasste sich nur mit impulsiven Manövern, daher gelten die darin enthaltenen Methoden nicht für Trajektorien mit niedrigem Schub, und die Rechenlast ist nicht repräsentativ für eine Suche mit niedrigem Schub. Solche impulsiven Rückkehrtrajektorien könnten nur als extrem grober Ausgangspunkt für die Suche nach Rückkehren mit niedrigem Schub verwendet werden. Der allgemeine Punkt ist jedoch richtig, nämlich dass dies kein rechenintensives Problem in Bezug auf moderne Computer ist und es intelligente Möglichkeiten gibt, die Rechenkosten für umfangreiche Suchen zu reduzieren.

Ich denke, die Antwort ist wahrscheinlich nein, aber nicht aus den Gründen, die andere Antworten geben. Zunächst können wir das ganze Mehrkörperproblem ignorieren: Es ist eine wirklich gute Annäherung, dass die Planeten und die Sonne auf Schienen laufen, da sie enorm massiver sind als das Raumschiff. Nehmen wir auch an, dass das Modellieren einer Flugbahn zwischen zwei Punkten handhabbar ist, unabhängig davon, ob Sie einen kontinuierlichen Schub verwenden oder nicht (dies könnte durchaus ein ziemlich schwieriges Optimierungsproblem sein, um Kraftstoff und c zu minimieren, aber ich vermute, dass dies auf einem modernen Personal Computer sehr machbar ist.

Das ist es nicht, was es schwierig macht: Was es schwierig macht, ist, dass dies ein Suchproblem ist, das lediglich als Physikproblem verkleidet ist, und Suchprobleme haben bekanntermaßen kombinatorische Explosionen. Suchprobleme erfordern Maschinen wie Deep Blue , um sie zu lösen, und diese Dinger sind definitiv Supercomputer (wenn auch spezialisierte).

Warum ist das ein Suchproblem? Nun, denn die Art und Weise, wie Sie sich im Sonnensystem fortbewegen, besteht nicht darin, eine Flugbahn zwischen zwei Punkten zu berechnen, sondern indem Sie eine Reihe von Gravitationsschleudern um andere Körper im Sonnensystem berechnen. Und es gibt eine große Anzahl solcher möglicher Flugbahnen, und die Anzahl nimmt möglicherweise exponentiell zu, wenn Sie die Anzahl der Schleudern erhöhen. Und Sie können die Flugbahnen nicht ineinander verformen, um einen netten numerischen Lösungsansatz zu verwenden, weil Sie immer wieder gegen Planeten stoßen, da alle diese Flugbahnen ziemlich nahe an Planeten liegen.

Die Überprüfung einer vorgeschlagenen Flugbahn ist viel einfacher: Wenn ich Ihnen sage, dass der Plan darin besteht, ein paar Unterstützungen um die Venus herum zu machen, eine Kurskorrektur im Weltraum, dann eine Unterstützung um die Erde und eine um Jupiter auf dem Weg zum Saturn (das ist es, was Cassini tat), dann können Sie ziemlich einfach überprüfen, ob die Flugbahn in Ordnung ist, und ihre feinen Details berechnen. Aber zu einer solchen Flugbahn zu gelangen, ist eine andere Frage . Das riecht stark nach P und NP: Bei gegebener Lösung ist es leicht zu überprüfen, aber es kann schwierig sein, zu einer Lösung zu gelangen.

Dies könnte also tatsächlich ein rechentechnisch sehr anspruchsvolles Problem sein. Ich denke, das ist es wahrscheinlich aus mehreren Gründen nicht: Es gibt nicht sehr viele Objekte, die Sie für Schleudern verwenden können, damit der Suchraum nicht zu stark explodiert, und die Missionsdauer ist begrenzt, ebenso wie Treibstoff für Kursanpassungen &c, damit Sie Lösungen kürzen können, die mehr Zeit in Anspruch nehmen als Sie haben oder mehr Brennstoff benötigen als Sie haben. Ich vermute, das hält die Berechnung vernünftig.


[Hinweis: Ich poste diese Antwort als Gast: Ich habe gestern Abend angefangen, sie in der Physik SE zu schreiben, aber die Frage wurde migriert und ich gehöre nicht zu dieser SE.]

Die ursprüngliche Flugbahn umfasst nur zwei Gravitationshilfen, jeweils eine um den Mars und die Erde, und sie sind von Anfang an bekannt. Das sollte theoretisch den Suchaspekt eliminieren
Deep Blue ist nach heutigen Maßstäben definitiv kein Supercomputer; es wurde mit 11,38 GFLOPS gemessen, und für 1000 US-Dollar bietet der Intel Core i9 7900X 638,9 GFLOPS. Man könnte sich über die Messdetails aufregen, aber Computer sind heute viel schneller als zu Zeiten von Deep Blue.
Außerdem sind viele NP-Probleme hauptsächlich theoretisch; Sie können ziemlich leicht eine nahezu optimale Lösung für ein Problem des Handlungsreisenden finden, es ist schwierig, einen Optimalitätsbeweis zu finden. Mit intelligenten Algorithmen können Sie ziemlich einfach eine sehr gute Lösung finden, selbst wenn eine optimale Lösung (oder ein Beweis dafür, dass die von Ihnen vorliegende Lösung optimal ist) möglicherweise unerreichbar ist.

Nein. Sie brauchen keinen Supercomputer. Aber im Film würde es nicht so beeindruckend aussehen. Iron Sky scheint in diesem Fall realistischer zu sein. :-) Und doch - sehr beeindruckend. (Spoiler)

Die Antwort kann ja und nein sein, es hängt wirklich davon ab, welchen Grad an Genauigkeit oder wie viel Auflösung Sie in Ihren simulierten Daten wünschen. Sie können die Gleitkommazahlen immer reduzieren oder gemittelte Terme verwenden oder die Obergrenze einer Schleife reduzieren, die die Konvergenz testet.

Sie können etwas auf Ihrem Heim-PC oder einem Supercomputer in ausreichender Zeit simulieren, vorausgesetzt, Sie verwenden keine umfangreichen rekursiven Methoden oder wechseln zu effizienteren iterativen Methoden oder was auch immer.

Auch hier geht es um die Art der Mathematik, die Sie für die Aufgabe einsetzen, nicht um die Aufgabe selbst, die einen Supercomputer erfordern würde.

Wenn es darum geht, im Weltraum zu manövrieren, braucht man wohl einen Supercomputer. Bedenken Sie Folgendes: Wenn die Rakete zu Mittag gegessen wird, ist die Erde beim Verlassen der Atmosphäre nicht das einzige massive Objekt, das die Bewegung der Rakete beeinflusst. Es stimmt, dass die Auswirkungen der Sonne oder anderer Planeten nicht so groß sind wie die der Erde, aber wenn die Rakete weiter geht, können wir sagen, dass es von mehr als 1 oder zwei sich bewegenden massiven Objekten im Weltraum beeinflusst wird und wir vor einer Art Drei-Körper-Problem stehen ( https://en.wikipedia.org/wiki/Three-body_problem ). Und auf MarsSie starteten nicht einfach eine Rakete, sie schleuderten sie zurück zum Mars, und die Flugbahn musste genau berechnet werden, da sich Erde und Mars um die Sonne bewegten und auch ihre Koordinaten änderten. Dies ist nicht der Fall, wenn Sie einfach das zweite Newtonsche Gesetz schreiben und Matlab für andere Berechnungen verwenden, hier haben Sie viele Variablen, die definitiv eine enorme Rechenleistung benötigen ...

Sie überschätzen die Schwierigkeit des Kernproblems stark. Die Planeten sind „auf Schienen“ mit festen und bekannten Bahnen; Das Problem ist eine Einkörper-ODE mit bekannten Kräften, die numerisch recht einfach integriert werden kann. Jetzt benötigen Sie möglicherweise mehr Ressourcen, um besonders genau zu sein oder die Flugbahn über eine Reihe von Brennparametern zu optimieren, aber das Kernproblem ist lösbar genug.