比較新的數(shù)據(jù)分類算法和研究方向是什么?
在工程實(shí)踐中,經(jīng)常會(huì)接觸到一些比較“新穎”的算法或理論,比如模擬退火,遺傳算法,禁忌搜索,神經(jīng)網(wǎng)絡(luò)等。這些算法或理論都有一些共同的特性(比如模擬自然過程),通稱為“智能算法”。它們?cè)诮鉀Q一些復(fù)雜的工程問題時(shí)大有用武之地。
這些算法都有什么含義?首先給出個(gè)局部搜索,模擬退火, 遺傳算法,禁忌搜索的形象比喻:
為了找出地球上最高的山,一群有志氣的兔子們開始想辦法。
1.兔子朝著比現(xiàn)在高的地方跳去。他們找到了不遠(yuǎn)處的最高山峰。但是這座山不一定是珠穆朗瑪峰。這就是局部搜索,它不能保證局部最優(yōu)值就是全局最優(yōu)值。
2.兔子喝醉了。他隨機(jī)地跳了很長(zhǎng)時(shí)間。這期間,它可能走向高處,也可能踏入平地。但是,他漸漸清醒了并朝最高方向跳去。這就是模擬退火。
3.兔子們吃了失憶藥片,并被發(fā)射到太空,然后隨機(jī)落到了地球上的某些地方。他們不知道自己的使命是什么。但是,如果你過幾年就殺死一部分海拔低的兔子,多產(chǎn)的兔子們自己就會(huì)找到珠穆朗瑪峰。這就是 遺傳算法。
4.兔子們知道一個(gè)兔的力量是渺小的。他們互相轉(zhuǎn)告著,哪里的山已經(jīng)找過,并且找過的每一座山他們都留下一只兔子做記號(hào)。他們制定了下一步去哪里尋找的策略。這就是 禁忌搜索。
智能優(yōu)化算法要解決的一般是最優(yōu)化問題。 最優(yōu)化問題可以分為(1)求解一個(gè) 函數(shù)中,使得 函數(shù)值最小的自變量取值的函數(shù)優(yōu)化問題和(2)在一個(gè)解空間里面,尋找最優(yōu)解,使目標(biāo)函數(shù)值最小的組合優(yōu)化問題。典型的組合優(yōu)化問題有: 旅行商問題(Traveling Salesman Problem,TSP),加工調(diào)度問題(Scheduling Problem),0-1背包問題(Knapsack Problem),以及 裝箱問題(Bin Packing Problem)等。
優(yōu)化算法有很多,經(jīng)典算法包括:有線性規(guī)劃,動(dòng)態(tài)規(guī)劃等;改進(jìn)型局部搜索算法包括 爬山法, 最速下降法等,本文介紹的 模擬退火、 遺傳算法以及 禁忌搜索稱作指導(dǎo)性搜索法。而神經(jīng)網(wǎng)絡(luò),混沌搜索則屬于系統(tǒng)動(dòng)態(tài)演化方法。
優(yōu)化思想里面經(jīng)常提到鄰域函數(shù),它的作用是指出如何由當(dāng)前解得到一個(gè)(組)新解。其具體實(shí)現(xiàn)方式要根據(jù)具體問題分析來定。
一般而言,局部搜索就是基于貪婪思想利用 鄰域函數(shù)進(jìn)行搜索,若找到一個(gè)比現(xiàn)有值更優(yōu)的解就棄前者而取后者。但是,它一般只可以得到“局部極小解”,就是說,可能這只兔子登“登泰山而小天下”,但是卻沒有找到珠穆朗瑪峰。而 模擬退火,遺傳算法, 禁忌搜索,神經(jīng)網(wǎng)絡(luò)等從不同的角度和策略實(shí)現(xiàn)了改進(jìn),取得較好的“全局最小解”。