本站小編為你精心準備了遺傳算法對數據挖掘的價值參考范文,愿這些范文能點燃您思維的火花,激發您的寫作靈感。歡迎深入閱讀并收藏。
遺傳算法是當前我們應用在數據挖掘當中的主要算法,它作為對全局并行進行優化的一種有效方法,在計算機的眾多領域都有廣泛的應用,特別是與云計算相關的一些領域,因此如何在數據挖掘中去有效地應用優化后的遺傳算法也是現在研究的一個重要趨勢。
1遺傳算法在數據挖掘中的應用
在目前數據挖掘的研究中,在分類器、決策樹、關聯規則方面應用改進后的遺傳算法我們是涉及得比較多的。其中具有隨機、非線性、混沌等特點的實際問題又是我們用改進后的遺傳算法解決的主要方面,解決了一部分通過其他學科很難描述的問題,并提供了相應的一些數據模型,為通過其它技術來解決問題提供了很好的基礎。對于在應用中出現的與現實情況相關的各種嘈雜無序的數據,改進后的遺傳算法能夠比較有效地去解決這個問題。通過將實際遇到問題的具體化,我們都可以把他們變為計算機中的搜索問題,相關的數據庫看做搜索空間,然后利用改進后遺傳算法模擬自然進化算法的特點,在大量的數據規則中去完成搜索,得到我們真正需要的數據。下面我們來看一下遺傳算法在物流上的應用。
2遺傳算法在數據挖掘中的應用實例
現有某物流中心在全國分散在各城市的物流子中心S(1)、S(2)、……、S(n),某次公司準備做宣傳,又想節約成本,故準備用一臺宣傳車選擇一條最短的路線在各個城市的物流中心作相應的宣傳各一次,然后回到起點。那么我們通過改進后的遺傳算法我們要如何規劃相應的路線呢?在大部分情況中,我們會把遺傳算法的運行分為兩個階段,它從目前生成的群體開始,然后通過一系列優勝劣汰的選擇后生成過渡群體,最后在過渡群體上進行重組與變異從而形成下一代新的群體。
2.1調整參數及設計編碼第一代群體通過隨機函數隨機選擇,從中選出1000個個體。我們這里采用最常用的染色體編碼來對物流子中心進行編碼,每一個子中心作為一個基因,子中心的個數就是基因數。子中心的編碼在這里我們采用十進制來編碼,我們使用n個數碼來表示n個子中心,我們會專門定義一個數碼-子中心對應表,保證各個數碼之間不會出現不確定性,保證在算法計算過程中不會出現二義性。在這個算法的應用里面最重要的就是確定路徑的編碼,制定的一條路徑(a)i就是由n個數碼連成的,每一個數碼對應為染色體中的一個基因,整個編碼串對應一個染色體,通過相應對應表的指標保證在每一個染色體中每個基因只出現一次。
2.2適應度及適應度函數在遺傳算法中,適應度用來評價染色體個體的優劣程度,優勝劣汰,一般是適應度越大個體就越適合,反之也是一樣,所以遺傳算法根據適應度大小對染色體或個體來進行最優選擇,以保證把機會留給最優秀的個體來繁殖后代,遺傳最好的基因。與之對應我們在設置適應度函數時,函數值必須保證是非負數,在許多實際問題中,求解的目標通常是費用最小,而不是效益最大,因此需要將求最小的目標根據適應度函數非負原則轉換為求最大目標的形式。結合我們這兒的實際情況,就是需要將求最短路徑結合適應度函數非負原則轉換為求最優解的過程。因此在這里,我們設問題的目標函數為len(a),問題的目標是求取最小路徑,結合適應度函數非負原則,這就是最小值優化問題,我們可以取適應度函數F(O)為路線a所對應的路線長度len(a)的倒數。
2.3遺傳因子的確定遺傳變異分為基因重組(交叉)與基因突變,應該說這兩個步驟就是使到子代不同于父代的根本原因。對于這兩種遺傳操作,二進制編碼和浮點型編碼在處理上有很大的差異,其中二進制編碼的遺傳操作過程,比較類似于自然界里優勝劣汰的過程。在這里我們根據適應度函數選擇交叉的父代生成子代,采用循環交叉以保證每個物流子中心在每條路徑中只出現一次。同時在染色體的基因突變中我們選擇倒位變異的方法來解決問題。
2.4終止條件一般來說,適應度越大,相對的解越優,判斷是否已得到近似全局最優解的方法就是遺傳算法的終止條件,其相對應的就是最短路徑。一般在最大迭代次數范圍內可以選擇下列條件之一作為終止條件:最大適應度值和平均適應度值變化不大、趨于穩定;相鄰SGA代種群的距離小于可接受值。這里我們選擇迭代次數為600。
3結語
數據挖掘技術集數理理論、數據挖掘理論、專家系統、人工智能、神經網絡、圖形圖象設計等多門學科于一身,其發展速度必將大大影響全球信息化的進程,對其進行系統、深入、全面、詳盡的研究是信息化發展的客觀需要。如何從大型數據庫中提取人們感興趣的知識是數據挖掘的一個重要方面。遺傳算法是數據挖掘中主要的算法之一,它在數據挖掘方面的應用也得到了極大的重視。遺傳算法應用于決策樹、分類器和模糊規則的獲取等方面的文獻不斷涌現,遺傳算法己是數據挖掘領域的一個重要研究課題。遺傳算法模擬自然進化的通用全局搜索算法,避免了搜索過程中的局部最優解,用在規則發現方面有希望發現真正有用的規則。
作者:陳晶晶 單位:湖北經濟學院法商學院