Inxhinieri në pension zbulon një insekt 55-vjeçar në kodin e lojës kompjuterike Lunar Lander

foto

Computer illustration of the Apollo lunar lander Eagle over the Moon.

Të premten, një inxhinier softuerësh në pension i quajtur Martin C. Martin njoftoi se së fundi zbuloi një defekt në kodin fizik të lojës kompjuterike origjinale Lunar Lander ndërsa po punonte me softuerin. Krijuar nga një nxënës 17-vjeçar i shkollës së mesme të quajtur Jim Storer në vitin 1969, kjo lojë primitive e përktheu veprimin vetëm si përditësime të statusit të tekstit në një teletype, por ajo vendosi skenën për versionet e ardhshme.

Loja legjendare – e cila Storer e zhvilloi në një minikompjuter PDP-8 në një gjuhë programimi të quajtur FOCAL vetëm disa muaj pasi Neil Armstrong dhe Buzz Aldrin bënë ecjet e tyre historike në hënë – i lejon lojtarët të kontrollojnë zbritjen e një moduli hënor në sipërfaqen e Hënës. Lojtarët duhet të menaxhojnë me kujdes përdorimin e karburantit për të arritur një ulje të butë, duke marrë vendime kritike çdo dhjetë sekonda për të djegur sasinë e duhur të karburantit.

Në vitin 2009, pak para 40 vjetorit të uljes së parë në Hënë, u nisa për të gjetur autorin e lojës origjinale Lunar Lander , e cila atëherë njihej kryesisht si një lojë grafike, falë versionit grafik të vitit 1974 dhe një Atari të vitit 1979. titull arcade. Kur zbulova se Storer krijoi versionin më të vjetër të njohur si një lojë teletype, e intervistova dhe shkrova një histori të lojës. Storer më vonë lëshoi ​​kodin burimor të lojës origjinale, të shkruar në FOCAL, në faqen e tij të internetit.

foto

Shpejt përpara në 2024, kur Martin – një ekspert i AI, zhvillues lojërash dhe ish bashkëpunëtor postdoktoral në MIT – ndeshi në një defekt në kodin e shkollës së mesme të Storer ndërsa eksploronte atë që ai besonte se ishte strategjia optimale për uljen e modulit me efikasitet maksimal të karburantit – një teknikë e njohur në mesin e entuziastëve të Programit Hapësinor Kerbal si “djegia e vetëvrasjes”. Kjo metodë përfshin rënien e lirë për të rritur shpejtësinë dhe më pas ndezjen e motorëve në momentin e fundit të mundshëm për të ngadalësuar shpejtësinë aq sa të preket në mënyrë të sigurt. Ai gjithashtu provoi një qasje tjetër – një ulje më të butë.

“Kohët e fundit kam eksploruar orarin optimal të djegies së karburantit për t’u ulur sa më butësisht të jetë e mundur dhe me karburant maksimal të mbetur,” shkroi Martin në blogun e tij. “Çuditërisht, strategjia më e mirë teorike nuk funksionoi. Loja në mënyrë të rreme mendon se tokëzuesi nuk prek sipërfaqen kur në fakt po. Duke gërmuar, unë u mahnita nga fizika e sofistikuar dhe llogaritja numerike në lojë. Përfundimisht Gjeta një defekt: një ‘ndaje me dy’ që mungonte, e cila në dukje kishte kaluar pa u vënë re për gati 55 vjet.”

foto

Pavarësisht aplikimit të asaj që duhet të ishte një strategji e uljes së teksteve shkollore, Martin zbuloi se loja raportonte në mënyrë jokonsistente se tokëzuesi kishte humbur plotësisht sipërfaqen e Hënës. I intriguar nga anomalia, Martin gërmoi në kodin burimor të lojës dhe zbuloi se algoritmi i uljes bazohej në fizikë shumë të sofistikuar për kohën e tij, duke përfshirë ekuacionin e raketës Tsiolkovsky dhe një zgjerim të serisë Taylor.

Siç u përmend në citimin e mësipërm, rrënja e problemit ishte një mbikëqyrje e thjeshtë llogaritëse – një ndarje që mungonte me dy në formulën e përdorur për të llogaritur trajektoren e tokës. Ky gabim në dukje i vogël pati pasoja të mëdha, duke bërë që simulimi të nënvlerësonte kohën derisa ultësi të arrinte pikën e tij më të ulët të trajektores dhe të llogaritte gabimisht uljen.

Pavarësisht gabimit, Martinit i bëri përshtypje që Storer, në atë kohë një maturant, arriti të përfshijë koncepte të avancuara matematikore në lojën e tij, një arritje që mbetet mbresëlënëse edhe për standardet e sotme. Martin kontaktoi vetë Storer dhe autori i Lunar Lander i tha Martinit se babai i tij ishte një fizikant që e ndihmoi të nxirrte ekuacionet e përdorura në simulimin e lojës.

Ndërsa njerëzit luanin dhe shijuan lojën e Storer për vite me defektin në vend, kjo tregon se realizmi nuk është gjithmonë pjesa më e rëndësishme e një përvoje interaktive bindëse. Dhe fatmirësisht për Aldrin dhe Armstrong, përvoja e vërtetë e uljes hënore të Apollo nuk vuante nga i njëjti problem.