最新課程與最新文章


許多新文章,會散布在 Facebook 與公司網站。如果你想找最新課程,可以到普拉爵課程中心 這裡找找看。
聽過演講的夥伴,歡迎你來普拉爵的文創基地按讚,讓我們繼續保持聯絡。
如果你想聯絡我,可以留下資訊,或是到 Facebook 來互相切磋。

22 8月, 2007

誰說我沒有人工智慧?

2004.2.3
最近一位朋友在玩即時對戰遊戲時,他描述了一些狀況,包括「電腦總是會先防守基地,所以只要干擾便能趁機發展勢力」,或是「電腦會先攻擊最弱的一方,似乎是先計算好彼此兵力,此時只要犧牲掉某些利益,電腦就會上勾」。討論到熱烈處,嘴角上揚得意的說,「電腦真的是太笨了!」

電腦真是太笨了嗎?我可不這麼認為,應該說設計的人不夠「心狠手辣」。

病毒算是第一個人工智慧

1982年,一位在美國匹茲堡唸九年級的學生Skrenta(現在已經是美國某企業大老闆),基於對蘋果二號電腦(也就是Apple II)的特殊研究與深度了解,開發了一系列跟同學惡作劇的程式。他把程式拷貝給同學的同時,順便幫這些程式加料,像是開啟這個程式幾次,電腦就會自動關機,或是突然出現一段話(像是詩詞)之類的。

接下來,為了迂迴讓漸漸學乖的同學上當,他開始研究如何把「毒」下到磁片上,讓同學在複製時會互相傳染,結果當然很成功,又是一陣呼天搶地。這種會自我複製的「毒」,當時還沒有人取名字,不過這極可能是人類史上的第一隻「電腦病毒」,Skrenta的貢獻讓人類進入虛擬迫害威脅長達二十一年,至今還沒有根治之法。

接下來的數年間,病毒慢慢開始流行,夠狠的病毒也逐漸出籠。像是會破壞硬碟零軌、傷害BIOS資料、殺光檔案位置表(FAT)、破壞系統、木馬入侵偷資料等等,每一個都會要你電腦的命。如果你說寫病毒的人真遜,沒有把你的電腦搞掛,那還不如說,是寫病毒的人對你太仁慈!

自動回答機

另一種人工智慧比較有趣,比較起來像大公司或信用卡客服中心的轉接系統,按多少號碼會接到什麼部門,我簡稱做「自動回答機」。在很早以前,BBS流行的時代(現在應該是即時通訊時代吧!),有心人就仿照應答邏輯創造了自動回答機。

原理大概是這樣:首先,在資料庫中建立大量的關鍵字,每個關鍵字都會出現刻意安排的對話,而且隨著應答數量增加,資料庫還會自我學習。當你輸入「How about the WEATHER?(天氣如何?)」電腦就會自動以「WEATHER」為題目發揮,繼續用不同的方式追問。不過可想而知的,要賦予電腦可以交談的智商,可能要考慮所有的可能對話和預測反應,難度過高下這套軟體後來當然也就成為「軟體化石」。

練功機是這種軟體的另一種形式,依舊還是「遇到什麼就做什麼」的舊模式,對線性思考的環境最為適宜。練功機就像是多出一位虛擬人物(所以練功機又叫做「機器人」),幫你在電腦中前不斷執行重複的工作(像是挖礦、練功等等),就算離開座位一段時間,遊戲不但不會中斷,說不定會意外發現已經升級了。但這畢竟違背遊戲宗旨,所以也常見到巡街GM(遊戲網站總管)四處問話:「你是不是機器人?」

你以為是誰讓你「打怪搶寶」的?

說了這麼多,那遊戲裡面的人工智慧又是如何?當然還是運用跟「巴伐洛夫的狗」相同原理,幫程式裡面的怪物寫好反射機制,碰到什麼情境就會出現什麼動作。這裡用一種古老的MUD遊戲當例子,這是一種多人線上文字遊戲,為了增加遊戲樂趣,裡面添加了MOB Program機制,也就是專門為怪物設計的行為語法。裡面有一些專屬的語法,讀者大可不必了解實際上程式原始碼,只要看看設計師如何創造怪物行為,這就已經很有趣了。(請注意,為了讓大家了解程式的用意,【】內的筆者添加的說明

speech_prog bestow~【如果有人說「bestow」就開始啟動】
if class($n) == Cleric【如果你的職業是牧師……】
if level($n) == 1【等級又是1級】
mpoload 10321 1【那就創造出10321號物品一個】
put potion bag【把這個藥水放進包包中】
give bag $n【然後把包包交給你】
mpechoat $n type QUAFF POTION.【告訴你要怎麼使用藥水】
mpforce $n wake【叫你起來】
else【如果你不是牧師,等級又超過一級,那……】
smile $n【會對你傻笑】
mpechoat $n You are too high a level to need my assistance now. 【然後說你等級太高,所以無法給你幫助】
endif
endif【結束】


當然,這只是最簡單的對話與動作,就已經可以這麼生動了,可想而知的是加上戰鬥語法,像「生命力低於多少,火球數施展比例提高四倍;再低於多少,有10%的機率會逃走」或是按招接招等等的有趣設計。

回過頭想想,電腦一點都不笨,而是設計師不希望你被痛宰而喪失樂趣(或自尊心),因此才設計得簡單一點。所以,拜託請別討打了!


參考網址:
科技狂http://www.roboticfan.com/default.asp
MUD Samaug主網站http://www.game.org/smaug/
人工智能研究所http://www.souwu.com/bitfarmer/


如何下載MUD並且安裝遊戲?
這裡提供兩個版本的遊戲程式,雖然都有點接近活化石,不過這可是今日多人線上遊戲的始祖喔!裡面可以找到撰寫的語法等等相關說明,有興趣的人可以好好研究一番。

版本Diku的Smaug系列
作業系統:Windows 98/Me/2000/XP
下載網址:ftp://ftp.game.org/pub/mud/diku/merc/smaug/s102a32s.zip
1.首先,將解壓縮後的cygwin.dll複製到c:\windows\system(此為Windows 98/Me系統,若是Windows 2000/XP則複製到c:\winnt\system32)。
2.在MS-DOS模式下,切換到area目錄,然後執行smaug.exe程式,這樣就會使用到這邊的地圖集。
c:\>cd dist
c:\dist>cd area
c:\dist\area>c:\dist\src\smaug.exe 4000
3.最後用telnet localhost 4000就可以連到自己電腦玩了!

版本Diku的Merc系列
作業系統:Windows 98/Me/2000/XP
下載網址:http://www.mudmagic.com/codes/diku/merc/windows/
下載並解壓縮「mercw32.zip」後,直接執行MERC22SV.EXE,啟動成功後用telnet localhost 4000就可以了!

0 留言:

張貼留言

Related Posts Plugin for WordPress, Blogger...