的語言。
沈教授點點頭道:“嗯,小程式體積不大,程式碼估計也不長,用匯編是最好的選擇。這個問題算是基本有了解決方法,接下來,說說母程式的編寫吧。”
正文 第215章
沈教授點點頭道:“嗯,小程式體積不大,程式碼估計也不長,用匯編是最好的選擇。這個問題算是基本有了解決方法,接下來,說說母程式的編寫。”
母程式在整個理論中也佔據了很重要的位置,剛開始的智慧就是靠母程式來產生,也就是說要完成一個智慧從無到有的過程,聽上去好像有點天方夜譚,但自然界的規律告訴我們,這並不是沒有可能,許毅在這方面也已經有了初步的構想。
許毅稍微整理了一下自己的思路,接著回答道:“首先是基本程式塊的組合,將若干個可以成功執行的小程式塊隨機組合成一個較大的程式,從而完成某種特定的功能。這種組合是隨機的,並沒有任何人工干涉。”
沈教授點了點頭,示意他繼續說下去。
“由於組合的隨機性,所組合而成的較大程式所能完成的功能也是不確定的,也就是說我們並不能預知、也不能控制這些程式的具體功能。或許,這種隨機組合而成的較大程式根本不能完成某種特定的功能,只是毫無意義的程式碼體,更別談智慧了,但這並沒有關係,因為這是自程式設計序的第一步。”
“第二步要做的就是將這些程式全部記錄下來,將其組合方式完全記錄進資料庫,我把這一類程式叫做樣品程式。”說著,許毅拿起書桌上的筆和紙開始畫了起來,邊畫邊講解。
“第三步,將樣品程式拿去執行。並且由第三方來監視執行結果。這裡的第三方可以是人也可以是系統自身,他們各有優缺點。由人來完成監視,功能比較簡單,但是自動化程式較差,而由系統自身監視自動化程式高,但相應的系統的結構會變得非常複雜。我將這第三方成為監督機構。”
“透過監視的結果,我們可以發現那些樣品程式有的可以執行成功,有的則執行失敗,我們把那些能夠成功執行的樣品程式儲存下來,成為最後的‘經驗程式’。而那些失敗的樣品程式也儲存下來,成為‘負經驗程式’……在以後的重複迴圈過程中,將新形成的樣品程式和負經驗程式相比較,這樣就可以先將已經出現的負經驗程式剔除……”
說到這裡,沈教授也就完全明白了許毅所構想的“母程式”,上述過程其實就是母程式所要完成的功能,總共分為五步,如果最後執行不成功,就返回第一步重新迴圈,直到找出一種成功的隨機組合連線之後的經驗程式。而且,這個母程式同時完成了自程式設計序的編寫和除錯工作。上述過程的核心操作是隨機組合連線,所以完全不需要有智慧的參與就可以編寫新的程式來。從而實現了從無到有的過程!完成了這一步,以後就完全有可能由無智慧狀態產生智慧。這些最初的經驗程式是產生智慧的基本系統程式,更高層次的智慧操作,都可以由這個無智慧的自程式設計序系統編寫出來。
許毅說完之後,兩人之間有了一段短暫的沉默。沈教授皺摺眉頭沉吟不語,考慮著許毅剛才話。事實上,沈教授現在才發現,他還是低估了許毅的能力,從剛才的談話來看,他的類人智慧現在已經快接近最底層了,很快他就可以將理論付諸實踐,用實踐來檢驗其正確性。具體結果如何?沈教授很清楚,結果的不同將產生天差地別的巨大反差,一旦這個理論能夠行得通,那……
良久,沈教授終於開口了,他依然是提問:“用這個方法來產生一個新的程式,需要在大量隨機組合連線中透過試執行樣品程式從而選擇出能夠成功執行的經驗程式,其產生速度未免太慢了,可以預料到,負經驗程式將大大多於經驗程式,這個比例將相當巨大。”
許毅笑笑,一副早就預料到的樣子:“是的,這個問題我也考慮到了。整個類人智慧系統的全部智慧程式都靠這種方式來編寫顯然是不現實的,速度太慢。不過我們可能透過其他方式來實現自程式設計序。沈伯伯,那些已經產生了一定智慧的程式可不能浪費了。”
經過許毅這麼一提醒,沈教授也立即想到了,他一拍額頭說道:“我把這個給忘了!對,可以利用已經產生的智慧程式來產生更高一級別的智慧!”
“是的,我把這個過程叫做學習過程。”
“呵呵,幹得不錯!”沈立文拍拍許毅的肩膀誇獎道,接著他又想到一個非常重要的問題,於是問題:“你知道什麼叫組合爆炸嗎?”
許毅點點頭,組合爆炸他自然知