家家有機器人

PC 革命的領袖預測下一個熱門領域將是機器人技術

想象一下身處一個新興產業的誕生之時。這是一個基於突破性新技術的產業,其中少數幾家老牌公司銷售用於商業用途的高度專業化裝置,而數量快速增長的初創公司則生產創新的玩具、業餘愛好者的玩意兒和其他有趣的利基產品。但它也是一個高度分散的產業,幾乎沒有通用標準或平臺。專案複雜,進展緩慢,實際應用相對罕見。事實上,儘管充滿了興奮和希望,但沒有人能夠確切地說出這個行業何時——甚至是否——能夠達到臨界規模。然而,如果它真的實現了,它很可能會改變世界。

當然,上面的段落可能是在描述 1970 年代中期的計算機行業,大約在保羅·艾倫和我創辦微軟的時候。那時,大型、昂貴的大型計算機為主要公司、政府部門和其他機構執行後臺操作。領先大學和工業實驗室的研究人員正在建立使資訊時代成為可能的基本構建模組。英特爾剛剛推出了 8080 微處理器,而雅達利正在銷售流行的電子遊戲《Pong》。在本土計算機俱樂部中,愛好者們正努力弄清楚這項新技術到底有什麼用。

但我真正想到的是更現代的東西:機器人產業的興起,它的發展方式與 30 年前的計算機業務非常相似。將目前在汽車裝配線上使用的製造機器人視為昨天大型計算機的等價物。該行業的利基產品包括執行外科手術的機械臂、部署在伊拉克和阿富汗用於處理路邊炸彈的監視機器人,以及用於吸塵的家用機器人。電子公司製造了可以模仿人、狗或恐龍的機器人玩具,而愛好者們則渴望獲得最新版本的樂高機器人系統。


支援科學新聞報道

如果您喜歡這篇文章,請考慮透過以下方式支援我們屢獲殊榮的新聞報道 訂閱。透過購買訂閱,您正在幫助確保有關塑造我們當今世界的發現和想法的具有影響力的故事的未來。


與此同時,世界上一些最優秀的頭腦正在努力解決機器人技術中最棘手的問題,例如視覺識別、導航和機器學習。他們正在取得成功。在 2004 年美國國防高階研究計劃局 (DARPA) 大挑戰賽中,這是一場旨在製造出第一輛能夠自主導航穿越莫哈韋沙漠 142 英里崎嶇賽道的機器人車輛的比賽,最優秀的參賽者在拋錨前僅行駛了 7.4 英里。然而,在 2005 年,有五輛汽車完成了全程,而比賽的獲勝者以平均每小時 19.1 英里的速度完成了比賽。(在機器人和計算機行業之間另一個有趣的相似之處是,DARPA 也資助了促成網際網路前身 Arpanet 誕生的工作。)

更重要的是,機器人行業面臨的挑戰與我們三十年前在計算機領域處理的挑戰相似。機器人公司沒有標準的作業系統,可以使流行的應用程式在各種裝置上執行。機器人處理器和其他硬體的標準化程度有限,並且在一臺機器中使用的程式設計程式碼很少能應用於另一臺機器。每當有人想製造一個新的機器人時,他們通常都必須從頭開始。

儘管存在這些困難,但當我與機器人領域的從業人員——從大學研究人員到企業家、愛好者和高中生——交談時,他們的興奮和期望程度讓我想起了保羅·艾倫和我看到新技術融合並夢想著有一天每張辦公桌和每個家庭都有一臺電腦的時候。當我審視現在開始融合的趨勢時,我可以預見一個未來,機器人裝置將成為我們日常生活中幾乎無處不在的一部分。我相信,諸如分散式計算、語音和視覺識別以及無線寬頻連線等技術將為新一代自主裝置開啟大門,使計算機能夠代表我們在物理世界中執行任務。我們可能正處於一個新時代的邊緣,個人電腦將從桌面上站起來,讓我們能夠在我們不親身在場的地點看到、聽到、觸控和操縱物體。

從科幻小說到現實
“機器人”這個詞在 1921 年由捷克劇作家卡雷爾·恰佩克普及,但人們構想創造類似機器人的裝置已經有數千年的歷史了。在希臘和羅馬神話中,金屬工藝之神製造了用黃金製成的機械僕人。公元一世紀,偉大的工程師亞歷山大港的希羅——因發明第一臺蒸汽機而聞名——設計了有趣的自動機,其中包括據說具有說話能力的自動機。列奧納多·達·芬奇 1495 年繪製的機械騎士草圖,它可以坐起來並移動手臂和腿,被認為是第一個人形機器人的設計方案。

在過去的一個世紀裡,擬人化機器透過艾薩克·阿西莫夫的《我,機器人》、電影如《星球大戰》和電視節目如《星際迷航》等書籍,已成為流行文化中熟悉的人物。機器人在小說中的流行表明,人們樂於接受這些機器有一天會作為助手甚至同伴在我們中間行走的想法。然而,儘管機器人在汽車製造等行業中發揮著至關重要的作用——大約每 10 名工人就有一臺機器人——但事實是,在真正的機器人趕上他們的科幻小說同行之前,我們還有很長的路要走。

造成這種差距的一個原因是,使計算機和機器人能夠感知周圍環境並快速準確地做出反應,這比預期的要困難得多。事實證明,讓機器人具備人類認為理所當然的能力極其困難——例如,在房間內相對於物體定位自身的能力、對聲音做出反應並解釋語音的能力,以及抓取不同尺寸、紋理和易碎性的物體的能力。即使像區分開啟的門和窗戶這樣簡單的事情,對於機器人來說也可能非常棘手。

但研究人員正在開始找到答案。幫助他們的一個趨勢是計算機算力的可用性大大提高。1970 年花費超過 7,000 美元的一兆赫茲處理能力,現在只需幾美分即可購買。一兆位儲存的價格也出現了類似的下降。廉價計算能力的獲得,使得科學家們能夠致力於解決許多對於使機器人實用至關重要的難題。例如,如今,語音識別程式可以很好地識別單詞,但更大的挑戰將是構建能夠理解這些單詞在上下文中的含義的機器。隨著計算能力的不斷擴充套件,機器人設計師將擁有他們需要的處理能力來解決日益複雜的問題。

機器人發展的另一個障礙是硬體成本高昂,例如使機器人能夠確定到物體距離的感測器,以及允許機器人以力量和靈巧度操縱物體的電機和伺服系統。但價格正在迅速下降。幾年前,用於機器人技術中精確測量距離的雷射測距儀的價格約為 10,000 美元;今天,它們可以以大約 2,000 美元的價格購買。而基於超寬頻雷達的更新、更精確的感測器甚至更便宜。

現在,機器人制造商還可以以合理的費用新增全球定位系統晶片、攝像機、陣列麥克風(比傳統麥克風更擅長區分語音和背景噪音)以及大量額外的感測器。由此帶來的功能增強,加上擴充套件的處理能力和儲存空間,使得今天的機器人能夠完成諸如吸塵或幫助拆除路邊炸彈等任務——這些任務對於僅僅幾年前商業化生產的機器來說是不可能的。

BASIC 方法
2004 年 2 月,我訪問了包括卡內基梅隆大學、麻省理工學院、哈佛大學、康奈爾大學和伊利諾伊大學在內的多所頂尖大學,討論計算機在解決社會一些最緊迫問題方面可以發揮的強大作用。我的目標是幫助學生了解計算機科學是多麼令人興奮和重要,我希望鼓勵他們中的一些人考慮從事技術職業。在每所大學,在發表演講後,我都有機會親身瞭解該校計算機科學系一些最有趣的研究專案。幾乎無一例外,我至少看到一個涉及機器人的專案。

那時,我在微軟的同事也從學術界和商業機器人公司的人那裡聽說,想知道我們公司是否在機器人技術領域做任何工作,可以幫助他們進行自己的開發工作。我們沒有,所以我們決定仔細研究一下。我請我的戰略人員坦迪·特羅沃——一位在微軟工作了 25 年的老員工——進行一次擴充套件的實況調查任務,並與機器人社群的人們交談。他發現人們普遍對機器人技術的潛力充滿熱情,並且整個行業都渴望能夠使開發更容易的工具。“許多人認為機器人行業正處於技術轉折點,轉向 PC 架構越來越有意義,”坦迪在他的實況調查任務後給我的報告中寫道。“正如[卡內基梅隆大學]參加 DARPA 大挑戰賽的負責人雷德·惠特克最近指出的那樣,硬體能力基本上已經到位;現在的問題是把軟體做好。”

早在個人電腦的早期,我們就意識到我們需要一種成分,使所有開創性的工作都能夠達到臨界規模,凝聚成一個能夠大規模生產真正有用的產品的真實產業。事實證明,所需要的正是 Microsoft BASIC。當我們在 1970 年代建立這種程式語言時,我們提供了通用的基礎,使為一個硬體集合開發的程式能夠在另一個硬體上執行。BASIC 還使計算機程式設計變得更加容易,這吸引了越來越多的人進入這個行業。儘管許多個人為個人電腦的發展做出了重要貢獻,但 Microsoft BASIC 是促成軟體和硬體創新的關鍵催化劑之一,這些創新使個人電腦革命成為可能。

閱讀坦迪的報告後,我清楚地意識到,在機器人行業能夠像 30 年前的個人電腦行業那樣實現量子飛躍之前,它也需要找到缺失的成分。所以我請他組建一個小團隊,與機器人領域的人員合作,建立一套程式設計工具,提供必要的基礎設施,以便任何對機器人感興趣的人,即使對計算機程式設計只有最基本的瞭解,也能夠輕鬆編寫機器人應用程式,這些應用程式可以與不同型別的硬體一起工作。目標是看看是否有可能為將硬體和軟體整合到機器人設計中提供與 Microsoft BASIC 為計算機程式設計師提供的相同型別的通用、低階基礎。

坦迪的機器人小組已經能夠利用克雷格·蒙迪——微軟首席研究和戰略官——領導的團隊開發的一些先進技術。其中一項技術將有助於解決機器人設計師面臨的最困難的問題之一:如何同時處理來自多個感測器的所有資料,並將適當的命令傳送到機器人的電機,這被稱為併發性挑戰。傳統方法是編寫傳統的單執行緒程式——一個長迴圈,首先從感測器讀取所有資料,然後處理這些輸入,最後交付輸出,確定機器人的行為,然後再重新開始迴圈。缺點是顯而易見的:如果您的機器人有新的感測器資料表明機器處於懸崖邊緣,但程式仍然在迴圈的底部,根據之前的感測器輸入計算軌跡並告訴輪子轉得更快,那麼機器人很可能在能夠處理新資訊之前就從樓梯上掉下來了。

併發性是一個超越機器人技術的挑戰。如今,隨著越來越多的應用程式是為計算機分散式網路編寫的,程式設計師一直在努力弄清楚如何有效地協調同時在許多不同伺服器上執行的程式碼。並且隨著具有單個處理器的計算機被具有多個處理器和“多核”處理器——為增強效能而連線在一起的兩個或多個處理器的積體電路——的機器所取代,軟體設計師將需要一種新的方式來程式設計桌面應用程式和作業系統。為了充分利用並行工作的處理器的強大功能,新軟體必須處理併發性問題。

處理併發性的一種方法是編寫允許多條路徑傳輸資料的多執行緒程式。但是,任何編寫過多執行緒程式碼的開發人員都可以告訴您,這是程式設計中最困難的任務之一。克雷格的團隊針對併發性問題設計的答案是稱為併發和協調執行時 (CCR) 的東西。CCR 是一個函式庫——執行特定任務的軟體程式碼序列——它可以輕鬆編寫可以協調多個併發活動的多執行緒應用程式。CCR 旨在幫助程式設計師利用多核和多處理器系統的強大功能,事實證明它也非常適合機器人技術。透過利用這個庫編寫他們的程式,機器人設計師可以大大降低他們的創作會撞到牆的機率,因為它的軟體太忙於向輪子傳送輸出而無法讀取來自感測器的輸入。

除了解決併發性問題外,克雷格的團隊所做的工作還將透過一種稱為分散式軟體服務 (DSS) 的技術,簡化分散式機器人應用程式的編寫。DSS 使開發人員能夠建立應用程式,其中服務——程式的各個部分,例如讀取感測器或控制電機——作為單獨的程序執行,這些程序可以以與網頁上聚合來自多個伺服器的文字、影像和資訊大致相同的方式進行協調。由於 DSS 允許軟體元件彼此隔離執行,因此如果機器人的單個元件發生故障,可以將其關閉並重新啟動——甚至更換——而無需重新啟動機器。結合寬頻無線技術,這種架構使得可以使用 Web 瀏覽器從遠端位置輕鬆監控和調整機器人。

更重要的是,控制機器人裝置的 DSS 應用程式不必完全駐留在機器人本身上,而是可以分佈在多臺計算機上。因此,機器人可以是一個相對便宜的裝置,可以將複雜的處理任務委託給當今家用 PC 上發現的高效能硬體。我相信這一進步將為全新一類機器人鋪平道路,這些機器人本質上是移動、無線外圍裝置,它們利用臺式 PC 的強大功能來處理諸如視覺識別和導航等處理密集型任務。並且由於這些裝置可以聯網在一起,我們可以期待看到成群的機器人出現,它們可以協同工作以實現諸如繪製海底地圖或種植農作物等目標。

這些技術是 Microsoft Robotics Studio 的關鍵組成部分,Microsoft Robotics Studio 是坦迪團隊構建的新軟體開發工具包。Microsoft Robotics Studio 還包括一些工具,這些工具使使用各種程式語言建立機器人應用程式變得更加容易。一個例子是模擬工具,它允許機器人制造商在三維虛擬環境中測試他們的應用程式,然後再在現實世界中試用它們。我們此版本的目的是建立一個經濟實惠的開放平臺,使機器人開發人員能夠輕鬆地將硬體和軟體整合到他們的設計中。

我們應該稱它們為機器人嗎?
機器人多久才能成為我們日常生活的一部分?根據國際機器人聯合會的資料,2004 年全球約有 200 萬臺個人機器人在使用,到 2008 年還將安裝 700 萬臺。在韓國,資訊通訊部希望到 2013 年在每個家庭都放置一臺機器人。日本機器人協會預測,到 2025 年,全球個人機器人產業的價值將超過每年 500 億美元,而今天約為 50 億美元。

與 1970 年代的個人電腦行業一樣,不可能準確預測哪些應用程式將推動這個新興產業。然而,機器人似乎很可能在為老年人提供身體幫助甚至陪伴方面發揮重要作用。機器人裝置可能會幫助殘疾人四處走動,並擴充套件士兵、建築工人和醫療專業人員的力量和耐力。機器人將維護危險的工業機器、處理有害材料和監控遠端石油管道。它們將使醫護人員能夠診斷和治療可能遠在千里之外的患者,並且它們將成為安全系統和搜尋救援行動的核心特徵。

儘管未來的一些機器人可能類似於《星球大戰》中看到的擬人化裝置,但大多數機器人看起來都不會像人形機器人 C-3PO。事實上,隨著移動外圍裝置變得越來越普遍,可能越來越難以確切地說出什麼是機器人。由於新機器將如此專業化和無處不在——並且看起來與科幻小說中的雙足自動機如此不同——我們可能甚至不會稱它們為機器人。但是,隨著這些裝置變得消費者負擔得起,它們可能會像個人電腦在過去 30 年中那樣,對我們工作、交流、學習和娛樂的方式產生同樣深遠的影響。

有關機器人技術的一般資訊,請訪問

機器人和個人電腦可以成為朋友

更好的程式設計意味著更少的摔倒

一個產業的誕生

大眾科學 Magazine Vol 296 Issue 1本文最初以 “家家有機器人” 為標題發表於 《大眾科學》雜誌 第 296 卷第 1 期(
doi:10.1038/scientificamerican012007-MA3kU6tOcysVnzHeRQ6z5
© .