推 ledia:Logic Programming, 讓我想到 AI 吵不完的論戰 :p 140.112.30.55 07/05
※ 引述《drkkimo ()》之銘言:
: 嗯 程式語言當然是一種工具 只是我覺得寫程式的人是在運用別人創造的工具 寫的
: 好也只是把這一樣工具用的很熟練 但是將來也許會有更好用的工具 它的使用概念跟
: 舊的工具差別很大 所以程式設計師擅用的舊工具可能就不是那麼有價值了
雖然新的程式語言一直不斷地被發明出來,但其實語言的本質和其paradigm可是數十年
來都沒什麼改變。諸如Object-Oriented Programming, Functional Programming, Logic
Programming..等等,這些都是發展了三十年以上的老概念。
所以稍微有點經驗的programmer都會知道,只要學會一種語言,之後再學新語言其實
是非常快的。所以即使所謂的舊工具變得沒有價值,但並不會讓programmer也跟著沒價值
: --------------------------
: 拿比較實際的例子來說 不是有基因演算法嗎? 它可以用演化的方法找到一個問題的
: 解法 那想像一個狀況 雖然目前尚沒實行 但有沒有可能 將來可能會如此
: 就是製作程式的方法 是用演化的方式產生出需要的程式 而撰寫程式就變成在定義需求 這
: 時程式設計師的工作 就不是在定義程式運作的流程了 而是能明確的敘述出正確的需求
: 來 這時寫程式的問題就不是如何正確的撰寫流程和架構 而是如何撰寫正確的需求
: 這種製作程式的方式和現在的製作方向完全不同吧??
的確是有人這麼作,但這種方法距離能實用的階段還太遠。
再說這種方法也是要寫程式,只是寫的是fitness function。
而且要用fitness function來描述一個複雜的系統可不是一件容易的事。
: ---------------------
: 上面只是假想? 那再舉更實際的例子 之前修專家系統的課有用到CLIPS 不知道看文的人
: 有沒有用過 它是用來制作專家系統的工具 它的實作方式簡略來說 會定義出各種以知的
: 事實(fact) 然後運作時程式會用這些事實 依照特定的規則來發掘新的事實(像貓是動物、
: 動物會動->所以貓會動) 一直到已知的事實沒辨法再被運算出新的事實 或使用者強迫中
: 止程式為止
: 這個時候 開發專家系統的人也不再是在設計運算流程了 (運算流程就在CLIPS這套系統
: 裡 人家已經先寫好了) 而是在定義各種的事實和規則 也就是說是在定義資料 這時寫程
: 式的方式就變成是在定義資料 把正確的資料輸入好了 讓一套固定的流程來計算
這是Logic Programming, 最有名的語言是Prolog,大概三十年前就有了。
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.112.247.129