A matematikáért már fiatal kora óta rajongó Hamilton a főiskola után mérnökként helyezkedett el. Amikor a férje 1959-ben a Harvardon tanult, ő munkát vállalt a Massachusettsi Műszaki Egyetemen (MIT), ahol megtanult olyan szoftvereket írni, amelyek alkalmasak az időjárás előrejelzésére. Egy évvel később a Semi-Automatic Ground Environment (SAGE) programban az ellenséges repülőgépek felderítésére szolgáló rendszerek programozásába kezdett.

Az 1960-as évek közepén Hamilton hallotta, hogy az MIT programozókat keres, hogy embert küldjenek a Holdra. Bár akkoriban úgy tervezte, hogy a Brandeis Egyetemen absztrakt algebrából szerez diplomát, az amerikai űrprogram megnyerte a szívét, a SAGE-nél végzett sikeres munkájának köszönhetően pedig ő lett az első programozó, akit felvettek az Apollo-programhoz.

NASA holdraszállás Margaret Hamilton
Margaret Hamilton – Forrás: Wikipedia / NASA

Felülírható hibalehetőségek

Margaret Hamilton minden korábbinál megbízhatóbb szoftvereket készített. Úgy gondolta, hogy az űrprogram sikeréhez olyan szoftverekre van szükség, amelyek képesek megbirkózni a kiszámíthatatlan nehézségekkel és hibákkal.

Egy alkalommal, amikor Hamilton lánya, Lauren űrhajósat játszott a szimulátorban, a gép lezuhant. Kiderült, hogy Lauren repülés közben a P01-es parancskódot ütötte be, aminek következtében, hiába volt épp a magasban, a szimulátor leállt.

Hamilton ekkor rájött, hogy ha egy űrhajós hibázik, és véletlenül rossz parancskódot ad meg a küldetés során, annak katasztrofális következményei lehetnek. Olyan szoftvertervezést javasolt, amely felülírja az ehhez hasonló emberi hibákat, és a repülési rendszereket továbbra is működőképesen tartja – egyfajta üzembiztos megoldásként. Az űrprogram vezetői azonban sokáig ragaszkodtak ahhoz, hogy Hamilton újítása teljesen felesleges, hiszen az űrhajósok túl jól képzettek ahhoz, hogy hibázzanak. Később azonban mégis megtörtént a baj.

Az Apollo–8 hold körüli pályára állása

A legközelebbi repülés során, az Apollo–8 hold körüli pályára állításakor, Jim Lovell űrhajós hibázott, és véletlenül rossz parancskódot adott meg. Ahogy Hamilton lánya, Lauren is tette a szimulátorban, Lovell a repülés közben a P01-es, indítás előtti kódot ütötte be.

A P01-es program indítása törölte az összes navigációs adatot, amelyek nélkül az Apollo nem tudta volna hazahozni az űrhajósokat.

Hamilton és csapata kilenc órán át kereste a megoldást a problémára, míg végül megtalálták a módját annak, hogy eljuttassák a navigációs adatokat az űrhajóra, az eset után pedig Hamilton engedélyt kapott arra, hogy a jövőbeni Apollo-küldetésekhez a szoftverbe olyan biztonsági kódot írjon, amely segít sorrendbe állítani a feladatokat, és megelőzni az emberi mulasztásokból eredő problémákat.

Hamilton kódja megmentette az Apollo–11 küldetését

Az Apollo holdra szállása majdnem meghiúsult, amikor a holdkomp, az Eagle, leszállás közben figyelmeztető riasztást kezdett küldeni. A 1202-es riasztási kód azt jelentette, hogy az Eagle számítógépes rendszerei túlterheltek, dönteni kellett tehát, hogy melyek azok a feladatok, amelyek elengedhetetlenek a leszálláshoz, és melyek azok, amelyek az adott helyzetben nem létfontosságúak.

Hamilton szoftverének hála az űrhajó nem állt le, Buzz Aldrin és Neil Armstrong pedig továbbíthatta a figyelmeztető kódot a houstoni irányítóknak, akik egy részletes elemzés után meghozták a döntést – hogy folytassák vagy megszakítsák a holdra szállást.

A holdra szállás sikeres volt, és az Apollo–11 legénysége biztonságban visszatért a földre, hála a holdkomp számítógépes programozásának és biztonsági rendszerének.

Margaret Hamilton később így emlékezett vissza az esetre: „A számítógép, vagy inkább a benne lévő szoftver elég okos volt ahhoz, hogy felismerje: több feladatot kérnek tőle, mint amennyit el tud végezni. Ekkor riasztotta az űrhajósokat, hogy csak a fontosabb feladatokat végzi el, vagyis azokat, amelyek a leszálláshoz szükségesek. Valójában a számítógépet többre programozták, mint a hibaállapotok felismerésére: egy teljes helyreállítóprogram-készletet építettek be a szoftverbe. A szoftver működése ebben az esetben az volt, hogy az alacsonyabb fontosságú feladatokat megszüntette, a lényegesebbeket pedig helyreállította. Ha azonban a számítógép nem ismerte volna fel a problémát, és nem hajtotta volna végre a helyreállítási műveleteket, kétlem, hogy az Apollo–11 olyan sikeres holdra szállás lett volna, mint amilyennek ma ismerjük.” 

Pályafutása során több mint százharminc tudományos cikket publikált, és az ő nevéhez fűződik a szoftvermérnöki szakterület leírására alkotott software engineering kifejezés is. Az Apollo holdmissziói számára a NASA fedélzeti repülési szoftverének kifejlesztésében végzett munkájáért 2016-ban Obama elnöktől megkapta az Elnöki Szabadság-érdemrendet, 2017-ben pedig a LEGO Ideas Women of NASA-készlet részeként legófiguraként vált halhatatlanná – Nancy Grace Roman, Sally Ride és Mae Jemison tudóstársaival együtt.

 

Forrás: ITT, ITT és ITT

Kiemelt képünk forrása: Wikipedia / Draper Laboratory

Mózes Zsófi