星期四, 7月 10, 2008

淺談專家系統

因為Fyodor Yarochkin在SyScan提到Knowledge Machine,讓鳥毅回想起年少時學人工智慧的經驗,剛好最近沒啥主題寫Blog,就來簡單介紹一下目前已不受重視的專家系統

Fyodor用的KM算是很簡單的RBES(Rule Based Expert system),leeym的指導教授謝尚賢在有提到專家系統從RBES發展到CBES(Case Based Expert System)。CBES是以案例訓練的專家系統,"理論上"不用自己去找出法則,但實務上應該還是類神經網路(又稱人工神經網路)比較常見。類神經網路計算時,仍然要自己找出各種因子,以矩陣運算找出相關係數矩陣。

在台灣人工智慧/專家系統的書籍應該是葉怡成教授著作最多,印象中他擅長類神經網路。記得交大以前有個人工智慧實驗室,不過現在找不到了。

人工智慧最常用的程式語言應該就是LISP,現在應該是GNU CLISP最常見,還有FSF之父RMS寫的Emacs,其他的請參考Emacs本身除了是編輯器外,也是LISP的interpreter,按ctrl-x ctrl-e就可以執行目前的LISP片段,在撰寫LISP時非常好用,初學LISP也不用裝CLISP,只要Emacs就足夠。據鳥毅所知淡江大學王人牧教授的LISP功力深厚。

另一個常見的人工智慧語言是Prolog,Prolog特別之處就是內建推論引擎,現在似乎是SWI-Prolog比較強,在下沒用過,請自己玩。

最後介紹一個真正有完整功能並Open Source的專家系統CLIPSCLIPS原本要研究單位或付費才能取得source code,現在改到sourceforge,成為NASA的public domain software。CLIPS也是採用LISP語法,本身有推論機。對CLIPS有興趣的朋友,可以與王人牧教授討論,他有好幾年的CLIPS開發經驗。

2 則留言:

cage 提到...

這樣算是打廣告嗎!!!

鳥毅 提到...

正確地說,叫置入性行銷XD