211service.com
Czy sprawiamy, że statki kosmiczne są zbyt autonomiczne?
Wnętrze statku kosmicznego Crew Dragon. Dimitri Gerondidakis / NASA
Kiedy Crew Dragon SpaceX zabrał astronautów NASA na ISS pod koniec maja , uruchomienie przywróciło znajomy widok. Po raz pierwszy od czasu wycofania promu kosmicznego z amerykańskiej ziemi amerykańskie rakiety wystrzeliwały Amerykanów w kosmos.
Jednak wewnątrz pojazdu rzeczy nie mogły wyglądać inaczej. Zniknęła rozległa deska rozdzielcza ze światłami, przełącznikami i gałkami, które kiedyś dominowały we wnętrzu promu kosmicznego. Wszystko to zostało zastąpione futurystyczną konsolą z wieloma dużymi ekranami dotykowymi, które wyświetlają się na różnych ekranach. Za tymi ekranami pojazd jest obsługiwany przez oprogramowanie, które zostało zaprojektowane tak, aby w pełni autonomicznie dostać się w kosmos i nawigować do stacji kosmicznej.
Dorastając jako pilot, przez całą moją karierę miałem pewien sposób kontrolowania pojazdu – to z pewnością coś innego, powiedział Doug Hurley widzom telewizyjnym NASA na krótko przed misją SpaceX. Zamiast wołania o rękę na drążku sterującym, nawigacja jest teraz serią z góry określonych danych wejściowych. Astronauci SpaceX mogą nadal być zaangażowani w podejmowanie decyzji w krytycznych momentach, ale znaczna część tej funkcji wymknęła się z ich rąk.
Czy to ma znaczenie? Oprogramowanie nigdy nie odgrywało bardziej krytycznej roli w lotach kosmicznych. Dzięki temu jest bezpieczniejszy i wydajniejszy, umożliwiając statkowi kosmicznemu automatyczne dostosowywanie się do zmieniających się warunków. Według Darrela Rainesa, inżyniera NASA zajmującego się opracowywaniem oprogramowania dla kapsuły głębokiej Orion, autonomia jest szczególnie kluczowa w obszarach o krytycznym czasie reakcji — takich jak wznoszenie się rakiety po starcie, gdy problem może wymagać zainicjowania sekwencji przerwania w ciągu zaledwie kilku sekund. kwestia sekund. Lub w przypadkach, gdy załoga może być z jakiegoś powodu ubezwłasnowolniona.
A zwiększona autonomia jest praktycznie niezbędna, aby niektóre formy lotów kosmicznych działały. Ad Astra to firma z siedzibą w Houston, która chce, aby technologia napędu rakiet plazmowych była opłacalna. Eksperymentalny silnik wykorzystuje plazmę z gazowego argonu, która jest podgrzewana za pomocą fal elektromagnetycznych. Proces strojenia nadzorowany przez oprogramowanie systemu automatycznie określa optymalne częstotliwości dla tego ogrzewania. Silnik osiąga pełną moc w ciągu zaledwie kilku milisekund. Nie ma sposobu, aby człowiek zareagował na coś takiego na czas, mówi dyrektor generalny Franklin Chang Díaz, były astronauta, który latał na kilku misjach wahadłowca kosmicznego w latach 1986-2002. Algorytmy w systemie sterowania służą do rozpoznawania zmieniających się warunków w rakiecie gdy przechodzi przez sekwencję startową — i działaj odpowiednio. Nie bylibyśmy w stanie zrobić tego dobrze bez oprogramowania, mówi.
Jednak nadmierne poleganie na oprogramowaniu i systemach autonomicznych podczas lotów kosmicznych stwarza nowe możliwości pojawienia się problemów. Jest to szczególnie niepokojące dla wielu nowych konkurentów przemysłu kosmicznego, którzy niekoniecznie są przyzwyczajeni do agresywnych i kompleksowych testów potrzebnych do wyeliminowania problemów w oprogramowaniu i wciąż starają się zachować równowagę między automatyzacją a sterowaniem ręcznym.
W dzisiejszych czasach kilka błędów w ponad milionie linijek kodu może oznaczać różnicę między sukcesem misji a porażką. Widzieliśmy to pod koniec ubiegłego roku, kiedy kapsuła Boeinga Starliner (drugi pojazd, na który NASA liczy, aby wysłać amerykańskich astronautów w kosmos) nie udało się dotrzeć do ISS z powodu usterki w jej wewnętrznym zegarze . Człowiek-pilot mógł obejść usterkę, która doprowadziła do przedwczesnego spalenia silników Starlinera. Administrator NASA, Jim Bridenstine, zauważył wkrótce po pojawieniu się problemów Starlinera: Gdybyśmy mieli na pokładzie astronautę, moglibyśmy być teraz na Międzynarodowej Stacji Kosmicznej.
Ale później okazało się, że wiele inne błędy w oprogramowaniu nie zostały wykryte przed startem, w tym jeden, który mógł doprowadzić do zniszczenia statku kosmicznego. I to było coś, co członkowie ludzkiej załogi mogli z łatwością ominąć.
Boeing z pewnością nie jest obcy konstruowaniu i testowaniu technologii lotów kosmicznych, więc zaskoczeniem było to, że firma nie wyłapała tych problemów przed lotem testowym Starlinera. Defekty oprogramowania, szczególnie w złożonym kodzie statku kosmicznego, nie są nieoczekiwane, NASA powiedział kiedy druga usterka została upubliczniona. Jednak było wiele przypadków, w których procesy jakości oprogramowania Boeinga powinny lub mogły wykryć wady. Boeing odrzucił prośbę o komentarz.
Według Luke'a Schreiera, wiceprezesa i dyrektora generalnego lotnictwa w NI (dawniej National Instruments), problemy z oprogramowaniem są nieuniknione, zarówno w pojazdach autonomicznych, jak i statkach kosmicznych. To tylko życie, mówi. Jedynym prawdziwym rozwiązaniem jest agresywne testowanie z wyprzedzeniem, aby znaleźć te problemy i je naprawić: Musisz mieć naprawdę rygorystyczny program do testowania oprogramowania, aby znaleźć te błędy, które nieuchronnie tam będą.
Wpisz AI
Przestrzeń jest jednak wyjątkowym środowiskiem do testowania. Warunki, jakie napotka statek kosmiczny, nie są łatwe do naśladowania na ziemi. Podczas gdy pojazd autonomiczny można wyjąć z symulatora i przenieść do lżejszych warunków rzeczywistych, aby stopniowo udoskonalać oprogramowanie, tak naprawdę nie można zrobić tego samego w przypadku pojazdu startowego. Start, lot kosmiczny i powrót na Ziemię to działania, które albo się zdarzają, albo nie – nie ma wersji light.
To właśnie dlatego sztuczna inteligencja jest obecnie tak ważna w lotach kosmicznych, mówi Schreier – można opracować autonomiczny system, który jest w stanie przewidywać te warunki, zamiast wymagać poznania warunków podczas konkretnej symulacji. Nie da się samemu symulować wszystkich narożnych obudów nowego sprzętu, który projektujesz, mówi.
Tak więc dla niektórych grup testowanie oprogramowania to nie tylko kwestia znajdowania i poprawiania błędów w kodzie; to także sposób na szkolenie oprogramowania opartego na sztucznej inteligencji. Weźmy na przykład Virgin Orbit, która niedawno po raz pierwszy próbowała wysłać swój pojazd LauncherOne w kosmos. Firma współpracowała z NI, aby opracować stanowisko testowe, które połączyło w pętlę wszystkie czujniki i awionikę pojazdu z oprogramowaniem przeznaczonym do przeprowadzenia misji na orbitę (dokładną długość okablowania zastosowanego w pojeździe). Zanim LauncherOne był gotowy do lotu, wierzył, że był już w kosmosie tysiące razy dzięki testom i miał już do czynienia z wieloma różnymi scenariuszami.
Oczywiście pierwszy lot testowy LauncherOne zakończył się w niepowodzenie , z powodów, które nie zostały jeszcze ujawnione. Jeśli było to spowodowane ograniczeniami oprogramowania, próba jest kolejnym znakiem, że istnieje limit tego, jak bardzo sztuczna inteligencja może być wyszkolona, aby stawić czoła rzeczywistym warunkom.
Raines dodaje, że w przeciwieństwie do wolniejszego podejścia NASA do testów, prywatne firmy są w stanie działać znacznie szybciej. Dla niektórych, takich jak SpaceX, działa to dobrze. Dla innych, takich jak Boeing, może to prowadzić do zaskakujących problemów.
Ostatecznie najgorsze, co możesz zrobić, to stworzyć coś w pełni ręcznego lub w pełni autonomicznego, mówi Nathan Uitenbroek, inny inżynier NASA pracujący nad rozwojem oprogramowania Oriona. Ludzie muszą być w stanie interweniować, jeśli oprogramowanie się zepsuje lub jeśli pamięć komputera zostanie zniszczona przez nieoczekiwane wydarzenie (takie jak wybuch promieni kosmicznych). Ale polegają również na oprogramowaniu, aby informować ich o pojawieniu się innych problemów.
NASA jest przyzwyczajona do obliczania tej równowagi i ma wbudowaną nadmiarowość w swoich pojazdach z załogą. Prom kosmiczny działał na wielu komputerach przy użyciu tego samego oprogramowania, a jeśli jeden miał problem, inne mogły przejąć kontrolę. Oddzielny komputer działał na zupełnie innym oprogramowaniu, więc mógł przejąć cały statek kosmiczny, gdyby usterka systemowa wpływała na inne. Raines i Uitenbroek twierdzą, że ta sama redundancja jest używana w Orionie, który obejmuje również warstwę funkcji automatycznych, które całkowicie omijają oprogramowanie w przypadku krytycznych funkcji, takich jak zwolnienie spadochronu.
W grze Crew Dragon zdarzają się sytuacje, w których astronauci mogą ręcznie inicjować sekwencje przerwań i zastępować oprogramowanie na podstawie nowych danych wejściowych. Ale konstrukcja tych pojazdów oznacza, że teraz człowiekowi trudniej jest przejąć pełną kontrolę. Konsola z ekranem dotykowym jest nadal powiązana z oprogramowaniem statku kosmicznego i nie można jej całkowicie ominąć, gdy chcesz przejąć statek kosmiczny, nawet w sytuacji awaryjnej.
Nie ma zgody co do tego, jak bardzo zmniejszy się – lub powinna – rola człowieka w lotach kosmicznych. Uitenbroek uważa, że próba opracowania oprogramowania, które może uwzględnić każdą możliwą ewentualność, jest po prostu niepraktyczna, zwłaszcza gdy masz terminy do wykonania.
Chang Díaz nie zgadza się, mówiąc, że świat zmierza do punktu, w którym w końcu człowiek zostanie usunięty z równania.
To, które podejście wygra, może zależeć od poziomu sukcesu osiągniętego przez różne partie wysyłające ludzi w kosmos. NASA nie ma zamiaru wyłączać ludzi z równania, ale jeśli komercyjne firmy uznają, że łatwiej jest im zminimalizować rolę ludzkiego pilota i pozwolić sztucznej inteligencji przejąć kontrolę, niż ekrany dotykowe i bezpilotowy lot na ISS to tylko przedsmak tego, co jest do zrobienia. chodź.

