0

0
0

文字

分享

0
0
0

第一款互動式電玩:太空大戰發明者羅素-《創新者們》

天下文化_96
・2015/09/24 ・3222字 ・閱讀時間約 6 分鐘 ・SR值 502 ・六年級

這群人裡面,最厲害的程式設計高手是羅素(Steve Russell),他當時正在協助麥卡西教授設計LISP程式語言,以加快人工智慧的研究步調。羅素是不折不扣的電腦怪傑,是本領高超的科技狂,醉心於從蒸汽火車到會思考的機器等各種科技。他身材短小,容易激動,有一頭捲髮,鼻樑上掛著厚厚的鏡片。他講話速度很快,彷彿有人一拳擊中了快轉按鈕般。雖然他充滿熱情,精力旺盛,做事卻拖拖拉拉,因此綽號叫「懶鬼」。

羅素和他的駭客朋友一樣,喜歡看爛電影和通俗科幻小說。他最欣賞的作者是密斯「博士」(E. E. “Doc” Smith)。史密斯是失意的食品工程師(他是漂白麵粉的專家,懂得調配甜甜圈粉),專寫一些沒什麼價值的次類型科幻小說,也就是所謂的「太空歌劇」(space opera)。史密斯博士的小說總是有戲劇性的冒險情節,裡面充滿善惡對立、星際旅行和老掉牙的羅曼史。鐵路模型技術俱樂部及海厄姆研究院成員葛瑞茲(Martin Graetz)在回顧太空大戰遊戲創作過程的文章中,形容史密斯博士「下筆時有如氣鑽般優雅細緻」。

EESmith, PanSci
史密斯「博士」及透鏡人系列科幻小說。Source: wiki/E·E· Smith, flickr/Kristy

葛瑞茲記得史密斯博士的典型故事是:
經歷了最初的一陣騷動,把大家的名字都弄清楚之後,幾個發展過度的哈迪男孩穿越宇宙,摧毀銀河黑幫、炸掉幾顆星球、殺死各種低等生命形式,真是痛快極了!每逢緊要關頭,我們的英雄總是能提出完善的科學理論,發明執行理論的技術,並製造武器來轟掉幾個壞蛋,在此同時還有追兵在後,但他們駕著太空船,穿越了無跡可尋的銀河荒原。

羅素、葛瑞茲等人對這類太空歌劇十分著迷,難怪後來決定為PDP-1 設計太空大戰遊戲。羅素還記得:「當時我剛看完史密斯博士的透鏡人(Lensman)系列,他筆下的英雄人物往往在星系間遭壞蛋追捕,必須運用創造力設法脫困。『太空大戰』的點子即由此而來。」他們以身為「科技宅男」自豪,組成海厄姆研究院太空戰事讀書會,由羅素來編寫程式。

Steve_Russell-PDP-1- PanSci
羅素及第一台迷你電腦PDP-1 。Source: wiki/史帝芬·羅素

只不過羅素正如同他的綽號所示,遲遲未能完成程式。他知道這個遊戲程式應該從何著手。閔斯基教授曾經意外發現一種演算法,能在PDP-1 上面畫圓圈,經過修改後可以在電腦螢幕上顯示三個點,而且可透過點與點的互動,織出一些美麗的模式。閔斯基稱之為「三點顯示」(Tri-Pos),學生則把它取名為「閔斯基創」(Minskytron)。想要以太空船和飛彈之間的互動為特色來設計遊戲,這是很好的起點。羅素花了幾個星期沉迷於Minskytron,想了解它能產生哪些模式。但是等到羅素開始編寫決定太空船動作模式的正弦-餘弦常式(sine-cosine routine)時,卻陷入困境。

羅素說明他碰到的困難後,社員寇托克(Alan Kotok)清楚知道該如何解決。他開車造訪波士頓市郊的迪吉多總部(也就是PDP-1電腦的製造商),找到一位善心的工程師,願意提供計算時需要的常式。「好了,正弦-餘弦常式在這兒,你還有什麼藉口嗎?」寇托克對羅素說。羅素後來承認:「我環顧四周,找不到任何藉口,只好定下心來,好好做一些計算。」

1961 年整個聖誕假期,羅素都埋頭苦幹,幾個星期後他終於設法利用控制板上的雙態觸變開關(toggle switch)來操控電腦螢幕上的點,讓這些點的移動速度加快、放慢和轉向。然後他又把兩個點變成兩艘卡通造型的太空船,一艘船比較圓胖,狀似雪茄;另一艘則為瘦長的直線型,像枝鉛筆。他又寫了一個次常式,讓太空船可以從鼻端射出一個點,以模仿飛彈。當射出的飛彈點落在另一艘太空船的位置時,太空船會「爆炸」,散開成許多任意移動的點。到了1962 年2 月,基本程式已設計完成。

這時候,太空大戰遊戲已經變成開放原始碼計畫。羅素把程式帶放在專門收藏PDP-1 程式的箱子裡,他的朋友開始針對程式做各種修改。其中一個朋友愛德華茲(Dan Edwards)認為,如果在遊戲中加入重力因素應該會很酷,所以他編寫的程式把會對太空船產生重力的大太陽放進遊戲中。太空船一不注意,就會被太陽吸過去而遭摧毀。但高明的玩家就懂得急速移動,在接近太陽時,利用太陽的重力牽引以獲取動能,然後突然高速迴轉。

羅素還記得,另一個朋友山姆森(Peter Samson)則「認為我的星星太過隨意而不夠真實」。山姆森覺得遊戲需要一些「貨真價實的東西」,也就是符合天文學的正確星座,而不是一大堆各種各樣的點。於是他增加了一個名為「昂貴星象儀」的程式,根據《美國星歷表與航海天文曆》的資訊來設計程式,在遊戲中顯示夜空中所有5星等以下的星星。他甚至經由設定顯示點在螢幕上發亮的頻率,複製每顆星星的相對亮度。太空船行進時,各星座會慢慢捲動通過。

這種開放原始碼的合作方式產生了更多聰明的設計。葛瑞茲想出「終極緊急按鈕」的脫困點子,只要按下開關,就能暫時遁入多維空間中的另一個空間。「我的想法是,無計可施時,你可以跳進第四維空間,然後消失不見,」他解釋。他曾經在史密斯博士的小說中讀到類似裝置,稱為「超空間管」。不過,這個法子仍有限制:每一局遊戲只有三次遁入超空間的機會,敵人會因你的失蹤而得到喘息機會,而且你無從得知太空船會在什麼地方重新現身。「這是你可以利用、但不會想用的脫困方式,」羅素解釋。為了向閔斯基教授致敬,葛瑞茲增加了一項設計:遁入超空間的太空船會留下Minskytron 的印記。

SpaceWar!, being played on the Computer History Museum's restored PDP-1
PDP-1用陰極射線射電管顯示器呈現太空大戰遊戲畫面。 Source: Nik Clayton

最後還有一項重要貢獻,來自於鐵路模型技術俱樂部兩位活躍社員寇托克與桑德斯(Bob Sanders)。他們知道,大家都擠在PDP-1控制台前面相互推擠,爭著操縱電腦開關,既不便又十分危險。所以他們在社辦的火車平台下面四處搜尋,找到一些雙態觸變開關和繼電器。他們把零件在塑膠盒中組裝起來,做了兩個遙控器,還加上所有必要的功能開關和超空間緊急按鈕。

這個遊戲很快在其他電腦中心流行起來,變成駭客文化的重要產物。迪吉多公司的電腦在出貨前會預先載入太空大戰遊戲,還有程式設計師為其他電腦系統設計的遊戲新版本。世界各地的駭客更在遊戲中加入更多性能,例如隱形能力、爆破太空地雷,還有從太空船駕駛員的觀點轉移到第一人稱觀點。個人電腦先驅凱伊(AlanKay)曾說:「只要有電腦和圖形顯示器的地方,太空大戰遊戲就大行其道。」

space war, PanSci
由太空大戰遊戲衍生出的投幣電玩機-computer war。依據機身顏色分為單獨玩家及雙人玩家的版本。Source: Michael Monello

太空大戰遊戲凸顯了駭客文化的三個層面,也成為數位時代的重要主題:第一、這個遊戲是集體創作的。「我們能夠以團隊合作的方式一起打造遊戲,這是我們喜歡的做事方式,」羅素說。第二、這個遊戲是免費的開放原始碼軟體。「很多人想要複製一份程式原始碼,我們當然奉送。」當然,因為當時的時空環境仍渴望免費的自由軟體。第三,遊戲的設計基於一個信念:電腦應該是可互動的個人裝置。羅素說:「我們因此可以親手操作電腦,讓電腦即時回應。」

創新者們,泛科選書

本文摘自《創新者們:掀起數位革命的天才、怪傑和駭客》,由天下文化出版。

 

 

 

 

延伸閱讀:

文章難易度
天下文化_96
73 篇文章 ・ 558 位粉絲
天下文化成立於1982年。一直堅持「傳播進步觀念,豐富閱讀世界」,已出版超過2,500種書籍,涵括財經企管、心理勵志、社會人文、科學文化、文學人生、健康生活、親子教養等領域。每一本書都帶給讀者知識、啟發、創意、以及實用的多重收穫,也持續引領台灣社會與國際重要管理潮流同步接軌。


1

4
2

文字

分享

1
4
2

什麼是「造父變星」?標準燭光如何幫助人類量測天體距離?——天文學中的距離(四)

CASE PRESS_96
・2021/10/22 ・3032字 ・閱讀時間約 6 分鐘
  • 撰文|許世穎

「造父」是周穆王的專屬司機,也是現在「趙」姓的始祖。以它為名的「造父變星」則是標準燭光的一種,讓我們可以量測外星系的距離。這幫助哈柏發現了宇宙膨脹,大大開拓了人們對宇宙的視野。然而發現這件事情的天文學家勒梅特卻沒有獲得她該有的榮譽。

宇宙中的距離指引:標準燭光

經過了三篇文章的鋪陳以後,我們終於要離開銀河系,開始量測銀河系以外的星系距離。在前作<天有多大?宇宙中的距離(3)—「人口普查」>中,介紹了距離和亮度的關係。想像一支燃燒中、正在發光的蠟燭。距離愈遠,發出來的光照射到的範圍就愈大,看起來就會愈暗。

我們把「所有發射出來的光」稱為「光度」,而用「亮度」來描述實際上看到的亮暗程度,而它們之間的關係就是平方反比。一旦我們知道一支蠟燭的光度,再搭配我們看到的亮度,很自然地就可以推算出這支蠟燭所在區域的距離。

舉例來說,我們可以在台北望遠鏡觀測金門上的某支路燈亮度。如果能夠找到那支路燈的規格書,得知這支路燈的光度,就可以用亮度、光度來得到這支路燈的距離。如果英國倫敦也安裝了這支路燈,那我們也可以用一樣的方法來得知倫敦離我們有多遠。

我們把「知道光度的天體」稱為「標準燭光(Standard Candle)」。可是下一個問題馬上就來了:我們哪知道誰是標準燭光啊?經過許多的研究、推論、歸納、計算等方法,我們還是可以去「猜」出一些標準燭光的候選。接下來,我們就來實際認識一個最著名的標準燭光吧!

「造父」與「造父變星」

「造父」是中國的星官之一。傳說中,「造父」原本是五帝之一「顓頊」的後代。根據《史記‧本紀‧秦本紀》記載:造父很會駕車,因此當了西周天子周穆王的專屬司機。後來徐偃王叛亂,造父駕車載周穆王火速回城平亂。平亂後,周穆王把「趙城」(現在的中國山西省洪洞縣一帶)封給造父,而後造父就把他的姓氏就從本來的「嬴」改成了「趙」。因此,造父可是趙姓的始祖呢!(《史記‧本紀‧秦本紀》:造父以善御幸於周繆王……徐偃王作亂,造父為繆王御,長驅歸周,一日千里以救亂。繆王以趙城封造父,造父族由此為趙氏。)

圖一:危宿敦煌星圖。造父在最上方。圖片來源/參考資料 2

回到星官「造父」上。造父是「北方七宿」中「危宿」的一員(圖一),位於西洋星座中的「仙王座(Cepheus)」。一共有五顆恆星(造父一到造父五),清代的星表《儀象考成》又加了另外五顆(造父增一到造父增五)。[3]

英籍荷蘭裔天文學家約翰‧古德利克(John Goodricke,1764-1786)幼年因為發燒而失聰,也無法說話。1784 年古德利克(John Goodricke,1764-1786)發現「造父一」的光度會變化,代表它是一顆「變星(Variable)」。2 年後,年僅 22 歲的他就當選了英國皇家學會的會員。卻在 2 週後就就不幸因病去世。[4]

造父一這顆變星的星等在 3.48 至 4.73 間週期性地變化,變化週期大約是 5.36 天(圖二)。經由後人持續的觀測,發現了更多不同的變星。其中一群變星的性質(週期、光譜類型、質量……等)與造父一接近,因此將這一類變星統稱為「造父變星(Cepheid Variable)」。[5]

圖二:造父一的亮度變化圖。橫軸可以看成時間,縱軸可以看成亮度。圖片來源:ThomasK Vbg [5]

勒維特定律:週光關係

時間接著來到 1893 年,年僅 25 歲的亨麗埃塔‧勒維特(Henrietta Leavitt,1868-1921)她在哈佛大學天文台的工作。當時的哈佛天文台台長愛德華‧皮克林(Edward Pickering,1846-1919)為了減少人事開銷,將負責計算的男性職員換成了女性(當時的薪資只有男性的一半)。[6]

這些「哈佛計算員(Harvard computers)」(圖三)的工作就是將已經拍攝好的感光板拿來分析、計算、紀錄等。這些計算員們在狹小的空間中分析龐大的天文數據,然而薪資卻比當時一般文書工作來的低。以勒維特來說,她的薪資是時薪 0.3 美元。順帶一提,這相當於現在時薪 9 美元左右,約略是台灣最低時薪的 1.5 倍。[6][7][8]

圖三:哈佛計算員。左三為勒維特。圖片來源:參考資料 9

勒維特接到的目標是「變星」,工作就是量測、記錄那些感光板上變星的亮度 。她在麥哲倫星雲中標示了上千個變星,包含了 47 顆造父變星。從這些造父變星的數據中她注意到:這些造父變星的亮度變化週期與它們的平均亮度有關!愈亮的造父變星,變化的週期就愈久。麥哲倫星雲離地球的距離並不遠,可以利用視差法量測出距離。用距離把亮度還原成光度以後,就能得到一個「光度與週期」的關係(圖四),稱為「週光關係(Period-luminosity relation)」,又稱為「勒維特定律(Leavitt’s Law)」。藉由週光關係,搭配觀測到的造父變星變化週期,就能得知它的平均光度,能把它當作一支標準燭光![6][8][10]

圖四:造父變星的週光關係。縱軸為平均光度,橫軸是週期。光度愈大,週期就愈久。圖片來源:NASA [11]

從「造父變星」與「宇宙膨脹」

發現造父變星的週光關係的數年後,埃德溫‧哈柏(Edwin Hubble,1889-1953)就在 M31 仙女座大星系中也發現了造父變星(圖五)。數個世紀以來,人們普遍認為 M31 只是銀河系中的一個天體。但在哈柏觀測造父變星之後才發現, M31 的距離遠遠遠遠超出銀河系的大小,最終確認了 M31 是一個獨立於銀河系之外的星系,也更進一步開拓了人類對宇宙尺度的想像。後來哈柏利用造父變星,得到了愈來愈多、愈來愈遠的星系距離。發現距離我們愈遠的星系,就以愈快的速度遠離我們。從中得到了「宇宙膨脹」的結論。[10]

圖五:M31 仙女座大星系裡的造父變星亮度隨時間改變。圖片來源:NASA/ESA/STSci/AURA/Hubble Heritage Team [1]

造父變星作為量測銀河系外星系距離的重要工具,然而勒維特卻沒有獲得該有的榮耀與待遇。當時的週光關係甚至是時任天文台的台長自己掛名發表的,而勒維特只作為一個「負責準備工作」的角色出現在該論文的第一句話。哈柏自己曾數度表示勒維特應受頒諾貝爾獎。1925 年,諾貝爾獎的評選委員之一打算將她列入提名,才得知勒維特已經因為癌症逝世了三年,由於諾貝爾獎原則上不會頒給逝世的學者,勒維特再也無法獲得這個該屬於她的殊榮。[12]

本系列其它文章:

天有多大?宇宙中的距離(1)—從地球到太陽
天有多大?宇宙中的距離(2)—從太陽到鄰近恆星
天有多大?宇宙中的距離(3)—「人口普查」
天有多大?宇宙中的距離(4)—造父變星

參考資料:

[1] Astronomy / Meet Henrietta Leavitt, the woman who gave us a universal ruler
[2] wiki / 危宿敦煌星圖
[3] wiki / 造父 (星官)
[4] wiki / John Goodricke
[5] wiki / Classical Cepheid variable
[6] wiki / Henrietta Swan Leavitt
[7] Inflation Calculator
[8] aavso / Henrietta Leavitt – Celebrating the Forgotten Astronomer
[9] wiki / Harvard Computers
[10] wiki / Period-luminosity relation
[11] Universe Today / What are Cepheid Variables?
[12] Mile Markers to the Galaxies

所有討論 1
CASE PRESS_96
156 篇文章 ・ 375 位粉絲
CASE的全名是 Center for the Advancement of Science Education,也就是台灣大學科學教育發展中心。創立於2008年10月,成立的宗旨是透過台大的自然科學學術資源,奠立全國基礎科學教育的優質文化與環境。
網站更新隱私權聲明
本網站使用 cookie 及其他相關技術分析以確保使用者獲得最佳體驗,通過我們的網站,您確認並同意本網站的隱私權政策更新,了解最新隱私權政策