Margaret H. Hamilton er en computervidenskabsmand, der spillede en vigtig rolle i NASA’s bestræbelser på at få mennesker til at lande på månen i 1960’erne og 1970’erne. For sit arbejde blev hun hædret med Presidential Medal of Freedom i 2016.
Hamilton ledede afdelingen for softwareudvikling på Massachusetts Institute of Technology’s Instrumentation Laboratory. I den rolle stod hun i spidsen for den software, der blev brugt til at styre flydynamikken i Apollo-rumfartøjerne, som blev brugt til seks landingsmissioner mellem 1969 og 1972.
“Hamilton bidrog til begreberne asynkron software, prioriteringsplanlægning og prioritetsvisninger samt menneskelig beslutningsevne i loopet, som dannede grundlaget for moderne, ultrapålideligt softwaredesign og -teknik”, stod der i citationen til hendes medalje.
Første resultater
Hamilton har en alsidig baggrund, herunder en bachelorgrad i matematik fra Earlham College i Indiana og et postgraduate arbejde i meteorologi på MIT. Ud over sit arbejde i Apollo var hun en del af MIT Lincoln Laboratory’s Semi-Automatic Ground Environment Air Defense System, eller SAGE (Semi-Automatic Ground Environment Air Defense System). Ifølge MIT var dette det første luftforsvarssystem for landet og var med til at fremme digital databehandling i 1950’erne og 1960’erne.
MIT’s instrumenteringslaboratorium fik kontrakten på Apollo-styrings- og kontrolsystemerne den 9. august 1961, da USA kun havde gennemført to rumflyvninger – begge med kun ét besætningsmedlem om bord, og begge i suborbitalt rum. Kontrakten blev tildelt få uger før den daværende præsident John F. Kennedy meddelte, at han havde planer om at have mennesker på månen inden udgangen af dette årti.
Ledelses- og kontrolsystemerne skulle gælde for både månemodulet (som skulle lande på månen) og kommandomodulet (som skulle kredse om månen, mens månemodulet var på overfladen, og derefter huse astronauterne på deres hjemrejse). Det var meningen, at det skulle styre rumfartøjerne, når de havde nået kredsløb om Jorden.
Efter kun én mission med besætning i kredsløb om Jorden – Apollo 7 i begyndelsen af 1968 – valgte NASA at sende Apollo 8’s kommandomodul solo i december samme år på en orbital mission til Månen af bekymring for, at Sovjetunionen ville nå frem først. Apollo 9 afprøvede for første gang månemodulet og kommandomodulet sammen i kredsløb om Jorden, og derefter blev de to rumfartøjer afprøvet igen i kredsløb om Månen i forbindelse med Apollo 10.
Den kronende mission, Apollo 11 i juli 1969, så Neil Armstrong og Buzz Aldrin komme helt ned til overfladen i månemodulet, vende sikkert tilbage til kommandomodulet (styret af Mike Collins) og komme hjem til Jorden.
Alarmerne 1201 og 1202
Men en softwarehændelse var tæt på at afspore landingen, som Hamilton mindede om i et interview med MIT i 2009. “Alt gik efter planen, indtil der skete noget helt uventet, netop som astronauterne var i færd med at lande på månen,” huskede hun.
“Pludselig blev de normale missionssekvenser afbrudt af prioriterede visninger af 1201- og 1202-alarmer, hvilket gav astronauterne en go/no-go beslutning (om at lande eller ikke at lande),” tilføjede hun. “Det blev hurtigt klart, at softwaren ikke blot informerede alle om, at der var et hardwarerelateret problem, men at softwaren kompenserede for det. Med kun få minutter tilbage blev beslutningen truffet om at gå til landing.”
Selv om der i øjeblikket blev truffet en beslutning om at lade astronauterne lande, påpegede Hamilton, at der blev foretaget en fejlanalyse for at se, hvor fejlen var opstået. Det viste sig, at astronauternes tjekliste, som regulerede de handlinger, som besætningen skulle udføre inden landingen, havde fået besætningen til at sætte rendezvous-radarens hardwarekontakt i den forkerte position. Dette overbelastede den centrale processorenhed under landingen, men heldigvis kom softwaren sig igen i de hede øjeblikke, før Apollo 11 landede.
“Hver gang CPU’en nærmede sig overbelastning, ryddede softwaren hele sin kø af processer og genstartede sine funktioner, så kun de højest prioriterede kunne udføres, indtil landingen var afsluttet,” sagde hun. Da fejlen var blevet rettet, blev månelandingerne for Apollos 12, 14, 15, 16 og 17 gjort mulige. (Apollo 13 blev afbrudt før landingen på grund af en eksplosion i kommandomodulets serviceområde.)
Hamiltons arv
NASA var så imponeret over den software, der blev brugt i Apollo, at grundlaget for den blev tilpasset til Skylab (den første amerikanske rumstation), rumfærgen (som kørte mere end 100 vellykkede missioner i kredsløb om Jorden – og to fatale fiaskoer – mellem 1981 og 2011) og de første digitale fly-by-wire-systemer i fly.
“Hamilton blev hædret af NASA i 2003, da hun fik en særlig pris, der anerkender værdien af hendes innovationer i Apollo-softwareudviklingen,” skrev NASA i 2016. “Prisen omfattede den største økonomiske pris, som NASA indtil da havde givet til en person.”
Hamilton forlod senere MIT for at starte sit eget softwarefirma, men hendes navn er stadig mest kendt for hendes resultater med månelandingen. Hendes navn var tydeligt synligt, da hele Apollo 11-kildekoden blev frigivet på GitHub i 2016; ifølge MIT stod der på den første fulde linje i softwaren: “SUBMITTED: MARGARET H. HAMILTON DATE: 28 MAR 69 / M.H.H.HAMILTON, COLOSSUS PROGRAMMING LEADER / APOLLO GUIDANCE AND NAVIGATION.”
For Hamilton var Apollo 11 ganske vist monumental, men hun nød udfordringen ved at udføre sit arbejde for den. “Fra mit eget perspektiv var selve softwareoplevelsen (at designe det, udvikle det, udvikle det, udvikle det, se det fungere og lære af det til fremtidige systemer) mindst lige så spændende som begivenhederne omkring missionen,” sagde hun.
Sidste nyt