螞蟻世界的啟示
現有的電腦軟體系統在面對與試圖解決每一個問題時,通常是針對問題的特性設計一招演算法來處理。然而,這樣的方式對於人工智慧所面臨的各式複雜問題,即凸顯其彈性的不足,像是遇到例外情形,現有的軟體技術就無法像真實人類一樣,能在時間壓力下完成,雖非最佳但卻可接受的解決方案。基於這樣深刻的體驗,美國人工智慧大師 Marvin Minsky (美國麻省理工學院,人工智慧實驗室)提出了「The Society of Mind」的概念。簡要其意,套句俗話說,就是『三個臭皮匠,勝過一個諸葛亮』的概念 ─ 理性的決策與智慧行為是透過多元思考激盪而成的。如此才能達成問題解決的彈性,來應付複雜的問題。
分散的代理人卻能達成有彈性的智慧行為,這樣的論述,與人工生命(Artificial life)的研究結果相符。人工生命的研究,常利用電腦程式來模擬生物的群體行為,尤其是大群生物的活動與繁衍。其中螞蟻又是最多人研究的對象之一。我們可以利用電腦程式來模擬螞蟻群體覓食的行為。在以下的模擬中,每隻螞蟻的行為僅依下列簡單的規則進行:
- 1.當螞蟻遇到食物時,就取下一塊背得動的部分並往回巢的路前進,同時在路上留下一種叫費洛蒙的化學成分。費洛蒙會逐漸蒸發。
- 2.若螞蟻不處於搬食物的狀態,但聞到費洛蒙的氣味時就往費洛蒙的方向前進。
- 3.若四周沒有費洛蒙的氣味螞蟻則隨機亂逛。
- (圖一)至(圖四)是利用美國麻省理工學院媒體實驗室Dr. Mitchel Resnick所開發的Starlogo軟體所做的模擬。
《圖一 中間的紫色區塊是螞蟻的巢,外圍三塊藍色的區塊是螞蟻的食物,紅色的小點是傾巢而出的螞蟻,正在隨機亂逛》 |
|
蟻群由近而遠,依次完成搬運的工作。如此井然有序的團隊行動,宛若事前經過細密的規劃,由蟻后之類的領導者指揮完成一般。但事實上,整個過程中,每一隻螞蟻僅依上述的三條簡單規則各自行動,不受其他外力指揮。有趣的是,這樣的分散式組織有時甚至比集中式的組織有彈性。比如說,萬一蟻后失去指揮的能力,螞蟻團隊還是能完成任務。又如若有兩塊食物距離一樣,蟻群不會陷入難以取捨的狀況,端視當時費洛蒙的強度決定。
智慧型代理人技術的濫觴
基於Minsky的思想,大約在1992年間,Dr.Patti Maes(美國麻省理工學院媒體實驗室)提出了智慧型代理人(Intelligent Agents)的概念。每個Intelligent Agent是簡單但五臟俱全的軟體系統,透過合作卻能解決超越個別系統所能解決的複雜問題。此後美國先進國防研究計畫室(DARPA)開始資助各大學研究機構等從事這方面的研發。Dr. Jeffrey M. Bradshaw 將這些草創時期的研發成果編成專書 Software Agents(AAAI Press, 1997)。同年,第一屆國際自主性代理人系統學術研究會(The First International Conference on Autonomous Agents)在Dr. Lewis Johnson(南加大資訊科學院University of Southern California/ Institute of Information Sciences)等教授的奔走下,在美國南加州美麗的遊艇港 Marina del Rey盛大展開,奠定了智慧型代理人研究領域的基礎。
智慧型代理人技術的定義
Agent這個字的本意是指具有執行能力的實體。當此實體接受外在的任務指示來執行其能力時才有『代理人』的意涵。但是中文裏無此抽象概念,因此姑且翻譯成『代理人』。智慧型代理人又稱為軟體機器人(Software Robot),簡稱Bot。簡單來說,是一種能在使用者指定的環境下持續並自動執行指令,且能在不需使用者干預的情況下針對環境的改變做出適當的動作及回應的軟體系統。例如,能自動安排會議的秘書代理人(Meeting Scheduling Agents),必須做到根據使用者的要求,從查詢參與者的行程安排時間,會議室預約,發出通知,甚至預定咖啡與pizza等,都在無人監控下自動完成。而且遇到困難時(如通知信件被退回),也能盡力排除(嘗試重新寄發,直到成功為止。或另覓管道通知,而且是在固定時間內完成)。在理想情況下,智慧型代理人必須能夠從持續不斷的運作中學習到如何適應環境的變動,並能和同在此環境中的其他智慧型代理人溝通及合作,進而達成預定目標。
軟體系統必須具備以下的特性,才算是智慧型代理人:
- 1.自主性(Autonomy):能自動完成既定之目標。
- 2.調適性(Adaptivity):能從經驗中學習、進步。
- 3.合作(Collaborative behavior):能和其他代理人透過談判達成協議後進行合作。
- 4.知識層次溝通("Knowledge-level" communication ability):能以高階語言和使用者及其他智慧型代理人溝通。
- 5.推理能力(Inferential capability):能依據既有之目標、資訊並針對情況做出適切的反應。
- 6.時間的連續性(Temporal continuity):能分次及長時間維持智慧型代理人之運作及設定,並不因程式關閉而遺失智慧型代理人之設定或執行狀況。
- 7.個性化(Personality):能表現出似人類性格。
- 8.反應(Reactivity):對周圍環境變動有察覺及反應之能力。
- 9.機動性(Mobility):能自動調適並於不同作業平台運作。
以上智慧型代理人之特性,配合資料挖礦技術(Data mining)及個人化技術(Personalization),智慧型代理人技術許諾了一個無限寬廣的想像空間。
智慧型代理人技術的應用
代理人技術的應用形態又可分為下列數種:
介面代理人
目前的人機介面通常是以所謂的直接操作(Direct manipulation)的方式來進行,也就是使用者下一道指令,電腦就做一個動作。反之,若配備介面代理人,電腦就能自行為使用者設想,主動提供服務。例如,具備介面代理人的網頁瀏覽器,可以預測使用者接下來會瀏覽哪些頁面,並預先下載下來存放。之後若使用者真的要瀏覽那些預先存好的頁面,瀏覽器就可以直接顯示,不必透過網路,這樣回應的速度就可以加快數倍。具有多媒體虛擬實境、能用自然語言語音對話的介面,並非就具有介面代理人的能力。介面代理人的內涵不在於介面的形式而在於電腦是否能主動的提供服務。當然,有多媒體虛擬實境、自然語言語音對話等介面搭配的介面代理人,更能提供人性化的互動經驗。
助教代理人
電腦輔助學習程式,搭配助教代理人,能觀察、評鑑使用者的學習效果,並以此結果回應適當的教材內容。一般電腦軟體所附加的說明Help功能,例如Microsoft Office系列所搭配的小助手,也是一種助教代理人。小助手內含以貝氏網路(Bayesian Network)為基礎的自動推論引擎,可以依使用者的使用狀況做適當的提示,或針對使用者的問題做診斷並提出解決方法。
擬人化的代理人
能模擬特定行為的代理人,在電影動畫以及電玩中最常見。比如電影『侏羅紀公園』裏成群的恐龍奔跑的畫面,每一隻恐龍其實都由一代理人程式所控制,因此雖然成群往同一個方向奔跑,但每一隻的跑法、表情各不相同,看來非常逼真。
資訊代理人
為了蒐集、整合網路上的資訊,可以佈署成群的資訊代理人來『代理』使用者瀏覽特定之網路資訊來源。搜尋引擎用來蒐集網頁的Spider或Web crawler程式也可算是簡單的資訊代理人,但這些程式通常只是把網頁整頁下載下來,而且只能沿著有URL網址的超連結來蒐集網頁。較先進的資訊代理人,能自動執行填入關鍵字、勾選選項等動作,因此也能蒐集到動態產生的網頁。同時,先進的資訊代理人還能『理解』網頁的內容,將網頁內容加上特定的標記(Tag)以便於其他應用程式可以利用。以圖書館的網站為例,先進的資訊代理人可以自動填入搜尋字串,得到搜尋結果的網頁後,還能擷取其中哪些字串是書名,哪些是作者,出版者,年份等等資訊。因此資訊代理人可以進行跨站串連。資訊代理人可以先查圖書館有哪些館藏,然後利用查到的書名填入Amazon網路書店得到每一本書的讀者評鑑等級,使用者可以用來決定是否要借閱這些書。
目前Google正積極的朝資訊代理人的方向研發,已經推出Google News和Froogle。Google News 整合了4,500個新聞網站,Froogle則是整合B2C網路商店的比價網站。微軟不甘示弱,在今年(2004)八月推出了號稱整合4,800站的Newsbot與Google News抗衡。Newsbot是靠微軟新開發的MSNbot Web Spider。為了研發這個資訊代理人,據說微軟已經花了一億美元。國內也有能力開發類似的系統,例如去年(2003)獲得資訊月傑出電子化政府應用獎的行政院研考會政府公開資訊網(gina.nat.gov.tw),就是利用資訊代理人技術,成功整合了約3,000個政府機關網站上的公開資訊。
至於比價網站,Froogle之前已經有Dealtime.com、MySimon.com等大型專業比價網站。新聞網站的代理人程式僅需擷取網頁上的標題、內容等大區塊,而比價網站用的代理人程式則必須能精確的擷取網頁上的品名、價格等細部資訊,因此技術困難度高很多,維護成本也因此提高。到最後各比價網站多半都仰賴由B2C網路商店傳資料的方式進行,只有小部分的資料是利用資訊代理人程式來蒐集。WWW發明人Tim B. Lee的『語意網』(Semantic Web)理想,就是希望以共通的XML標籤來免去代理人程式需要靠人工智慧來擷取網頁的困難。
代理人在軟體工程上的應用
IBM在1995年間開發了移動式代理人(Mobile Agent)的平台Aglet。透過此平台,程式可以被遠端的電腦呼叫後傳送到另一電腦上執行。過去分散式計算的研究也有類似的技術如RPC、RMI等等。移動式代理人的行為有如電腦病毒,如何認證確保安全成為其應用上的一大障礙。後來逐漸為新興的Web Services等技術所取代。此外,約略同一時期英國Southampton University的Dr. Nick Jennings提出了代理人導向軟體工程(Agent-oriented software engineering)有別於已經成熟的物件導向軟體工程(Object-oriented software engineering)。
代理人技術的商機與瓶頸
隨著網路公司的熱潮,許多以代理人技術為基礎的新創公司紛紛成立,編織了一幅又一幅智慧型代理人如何改變世界的美麗遠景。其中大家耳熟能詳的,就是代理人如何聽懂口語的指令,為我們篩選新聞、挑選合於我們個人口味的餐廳、為我們自動談判、標購情人節禮品等。當然所有秘書做的工作,從提示行程到安排會議全都包辦完成。事實上,至今代理人技術尚未能實現這些許諾,代理人技術也還沒深入社會為廣大的使用者服務,就先被浮誇的口水(hype)所淹沒。我們認為問題的癥結在於:
- 1. 未能設計適於人性的應用
- 2. 網路基礎建設不足以支援
- 3. 未解決社會倫理、安全性等非技術性問題
因此要成功地運用代理人技術,必須能避免前述的問題。設計適於人性的應用。我們並不希望把太多事情交由他人代為決定,何況是由電腦軟體來做,甚至剝奪了瀏覽新聞逛街購物的樂趣。我們也期待驚喜、想做一些沒做過的冒險。反之,我們都厭倦重複性的工作。負責重複性高、機械式運作的工作,讓使用者有更多的時間來做有創意的判斷與聯想,這些才是代理人應該優先服務的項目。
能在既有的網際網路上運作
再以會議安排秘書為例,許多相關的資訊,如會議室的時間表,必須能讓代理人程式存取。但這些資訊網路上並不一定有,有也不一定開放存取,開放了也不一定能讓代理人讀懂。許多代理人技術的鼓吹者寄望於XML,但XML的接受度距離能讓代理人悠遊於網際網路,還有很長的距離要走。因此有商機的代理人程式必須建構在現存的網際網路上,不能等待未來新的標準建立。
解決社會倫理、安全性等非技術性問題
代理人的運用帶來潛在的社會問題。如個人化代理人可能侵犯隱私權;自動談判代理人所做的交易,若引起爭議,在法律上效力如何認定?還有代理人程式遭歹徒冒名濫用造成的後果,也比傳統軟體系統影響來得大。這些問題,除了透過法律途徑來解決外,技術上使得這些負面效果無法執行,才是斧底抽薪的辦法。
|
|
上網搜尋資料,已成為現代人習以為常的活動之一。使用者只需描述需求,就可經由知識找到資訊,同時省下嘗試錯誤的時間。這種在網際網路上四處幫我們尋找資訊的軟體,稱為軟體機器人。相關介紹請見「軟體機器人聰明有智慧」一文。 |
|
10年前全球資訊網的發明人提姆伯納李提出的新網路系統。指出不要把全球資訊網(World
Wide Web),跟網際網路(Internet)搞混。基本上它是一種定址系統,讓瀏覽者可以在由大量網站構成的網際網路中按「址」索驥。你可在「語意網到底是什麼」一文中得到進一步的介紹。 |
|
可延伸標示語言,幾乎各種行業或利益團體都設法利用這種快速擴張的標準,作網路服務(Web
services)和資料交換之用,少有例外。自從六年前首度發布基本的XML規格以來,XML已衍生出數百種方言(dialect),或稱綱目(schema),協助肉販、推土機業者和各行各業簡化電子資料交換。。在「XML方言一籮筐
是好是壞?」一文為你做了相關的評析。 |
|
|
|