李永毅,張劍妹,連 瑋
(長治學(xué)院計算機系,山西長治 046011)
在科研、工程、經(jīng)濟、管理、國防乃至民生等領(lǐng)域中都存在優(yōu)化問題。由于傳統(tǒng)的優(yōu)化算法很多屬于凸優(yōu)化范疇,有明確的問題描述和條件描述,已經(jīng)不能滿足解決復(fù)雜優(yōu)化問題的需求。近年來,受自然界生物群體智能行為和自然界進化規(guī)律的啟發(fā),國內(nèi)外學(xué)者提出了眾多的元啟發(fā)算法,其群智能優(yōu)化算法是元啟發(fā)算法的一種,包括一系列的優(yōu)化算法,如混合蛙跳算法、飛蛾撲火優(yōu)化算法、群居蜘蛛優(yōu)化算法等。在AI 蓬勃發(fā)展的今天,群智能算法成為多種學(xué)科交叉融合的研究熱點,并廣泛應(yīng)用于機器人路徑規(guī)劃、實時任務(wù)調(diào)度、多目標優(yōu)化、分類、模式識別、信號處理、圖像多閾值分割等眾多領(lǐng)域[1-4]。2010 年2 月由日本北海道大學(xué)的Tero 教授提出黏菌的鐵路網(wǎng)絡(luò)涌現(xiàn)計算。2020 年,溫州大學(xué)的李世民對黏菌涌現(xiàn)計算進行改進,提出了一種新的群智能優(yōu)化算法,即黏菌優(yōu)化算法(Slime mould algorithm,SMA),它是模擬自然界中黏菌覓食行為及形態(tài)變化的新型元啟發(fā)式群智能優(yōu)化算法[5]。黏菌算法與粒子群算法類似,也存在易陷入局部最優(yōu),收斂速度慢、尋優(yōu)精度低等缺陷。提采用Levy 飛行算子改進黏菌優(yōu)化算法,使得該算法的全局尋優(yōu)能力增強,但經(jīng)過測試發(fā)現(xiàn)Levy 飛行算子改進的黏菌算法,雖然使全局搜索能力增強,但尋優(yōu)精度明顯降低。目前國內(nèi)外對其研究的文獻很少。提出了一種基于t分布變異的自適應(yīng)黏菌優(yōu)化算法,簡稱tSMA 算法,來提高黏菌算法的尋優(yōu)精度、收斂速度及魯棒性。
黏菌優(yōu)化算法靈感來自于黏菌的擴張和覓食行為。主要模擬了黏菌在覓食過程中的行為和形態(tài)變化,沒有模擬黏菌完整的生命周期[5-6]。
黏菌的覓食行為:黏菌在生長及覓食過程中有許多靜脈狀管形成靜脈狀管網(wǎng)絡(luò),在其覓食過程,根據(jù)空氣中食物的氣味濃度,通過靜脈狀管延伸遷移尋找食物,食物濃度越高,黏菌的生物振蕩器波越強,細胞質(zhì)流動越快,黏菌靜脈狀管越粗,其離開該區(qū)域概率越低,其局部搜索能力越強;反之,食物濃度較低,黏菌的生物震蕩器波減弱,細胞質(zhì)流動變慢,靜脈狀管改變形體,靜脈狀管變地細而長,全局搜索模式增強,局部搜索能力減弱。黏菌的獨特的生物模式(多條靜脈狀管)可以尋找多種食物來源。
用數(shù)學(xué)公式表達黏菌的逼近食物行為,其數(shù)學(xué)公式如下:
1.2.1 控制參數(shù)p的計算公式
其中,i∈1,2...,n;S(i)是當(dāng)前黏菌個體的適應(yīng)度值,DF迭代到當(dāng)前位置,獲得黏菌的最佳適應(yīng)度。
max_iter最大迭代次數(shù),iter表示當(dāng)前迭代次數(shù)。
r表示隨機數(shù),bF表示最佳適應(yīng)度值,S(i)是黏菌個體的當(dāng)前適應(yīng)度值,wF表示黏菌個體的最壞適應(yīng)度值,sort(S)表示對黏菌個體適應(yīng)度值的排序序列。condition 表示黏菌個體適應(yīng)度值排序在前一半的黏菌權(quán)重情況,others 表示黏菌個體適應(yīng)度值排序在后一半的黏菌權(quán)重情況。
t分布又稱學(xué)生分布,含有參數(shù)自由度n,t分布曲線形態(tài)與自由度n有很大關(guān)系,當(dāng)自由度較小時,曲線中間較平緩,隆起較低,隨著自由度的增大,曲線中間部分逐漸隆起,當(dāng)自由度為正無窮時,褪變?yōu)闃藴收龖B(tài)分布。在模擬仿真中,以迭代次數(shù)t作為自由度參數(shù),當(dāng)t較小時類似柯西變異具有較強的全局搜索能力,后期t較大時類似高斯變異具有較強的局部搜索能力。t分布的變異算子結(jié)合了高斯算子和柯西算子的優(yōu)勢,同時提高了算法的全局探索性和局部開發(fā)性[4-7]。
針對基本的黏菌優(yōu)化算法存在的尋優(yōu)精度低,收斂速度慢,易陷入局部最優(yōu)等缺點,用t分布變異算子,改進迭代過程中黏菌搜索位置,當(dāng)r<p時,加入t分布變異算子。
tSAM的算法設(shè)計如下:
對公式(1)進行改進,當(dāng)r<p時,用t分布算子t(iter)進行擾動,更新后的公式(1),如公式(9)所示:
2.2.1tSMA偽碼表示如下:
2.2.2tSMA算法流程如圖1所示。
圖1 tSMA算法流程
為了驗證tSMA算法的改進效果,對12個測試函數(shù)進行仿真,并與基本的黏菌算法SMA進行對比,在測試時,tSMA 與SMA 兩種算法迭代次數(shù)、總?cè)簜€數(shù)、維數(shù)等基本參數(shù)設(shè)置相同,參數(shù)設(shè)置如表1所示。
表1 測試函數(shù)的參數(shù)設(shè)置
12 個測試函數(shù)中,f1,f2,f3為單模態(tài)的基準測試函數(shù),函數(shù)f4,f5,f6為多模態(tài)的基準測試函數(shù),f7,f8,f9,f10,f11,f12復(fù)合基準測試函數(shù);有的測試函數(shù)維數(shù)很高,較難找到全局最優(yōu)值,有的測試函具有廣泛的搜索空間,峰形高低起伏不定,有的測試函數(shù)多個極值點,很難找到全局最優(yōu)值。測試函數(shù):
在模擬仿真測試中,tSMA 與SMA 設(shè)置相同的初始化參數(shù),每種算法對測試函數(shù)運算15次,記錄每種算法獨立運行15 次的運行結(jié)果,計算運行結(jié)果的最優(yōu)值、最差值、平均值、標準方差,結(jié)果如表2所示。
表2 測試函數(shù)的測試結(jié)果
測試結(jié)果表明,tSMA 與SMA兩個函數(shù)都能找到或接近理論最優(yōu)解,但是tSMA 算法的最優(yōu)解等于或更接近理論最優(yōu)解,說明tSMA 算法精度高于SMA算法;tSMA 算法測試結(jié)果的平均值等于或更接近于理論最優(yōu)解,說明tSMA 算法穩(wěn)定性等于或優(yōu)于SMA算法,tSMA 算法測試結(jié)果的標準差小于或等于SMA算法,說明tSMA算法的魯棒性優(yōu)于或同于SMA算法。
多目標圖像分割是圖像分割領(lǐng)域熱點工程問題?;谧畲箪氐膯伍撝祱D像分割算法是一種簡單有效的圖像分割算法,其核心思想是通過選擇一個閾值,使分割后目標類與背景類的總熵最大,即信息量最大[7]。推廣到多閾值分割為尋找一組閾值(t0,···,ts)使得總熵值最大,達到多目標圖像分割效果。如果通過窮舉遍歷尋找閾值(t0,···,ts),使得總熵最大,其多閾值分割計算量極大,使用群智能優(yōu)化(黏菌算法、改進黏菌)算法,尋找閾值,可以提高尋找閾值的速度。
基于最大熵的多閾值圖像分割算法數(shù)學(xué)描述:
(1)計算灰度值i的統(tǒng)計概率:
p(i)為灰度級i統(tǒng)計概率,i是灰度級,L是灰度級數(shù),count(i)是灰度階i的像素個數(shù);tk為第k個分割點閾值。
(2)計算閾值區(qū)間的累積概率:
tk為第k個分割點閾值,
(3)計算閾值區(qū)間的熵:
(4)計算區(qū)間熵的和:
s為閾值區(qū)間個數(shù)。
(5)計算各組閾值中最大熵:
為了測試tSMA 的改進性能,對圖像進行多閾值分割,尋找分割點的最優(yōu)解。通過對基本的黏菌算法(SMA)、基于t分布的黏菌算法(tSMA)、萊維飛行改進的黏菌算法(LevySMA)進行測試比較。在基于最大熵的圖像分割測試中,分割閾值為[0,255]之間的離散整數(shù),而SMA、tSMA 及LevySMA 的原始算法處理的是連續(xù)數(shù)據(jù)。在測試中,對SMA、tSMA 及LevySMA 算法遷移位置進行了取整操作。通過對500*353 像素圖像進行多閾值分割,設(shè)置分割閾值為5,即搜索維數(shù)為5,最大迭代次數(shù)為100,種群數(shù)為30,對SMA、tSMA 及LevySMA 算法測試15 次,測試結(jié)果如表3所示。
表3 基于最大熵多閾值分割測試結(jié)果
表3 測試結(jié)果表明,基于改進的tSMA 算法標準差最小、總熵平均值最大,即tSMA算法最穩(wěn)定。
為了更直觀表達尋優(yōu)速度,圖2 給出了尋優(yōu)收斂曲線,從圖2 可以看出,tSMA 能夠較快地找到或接近于最優(yōu)解,這表明tSMA 的尋優(yōu)精度及速度優(yōu)于SMA 算法。說明tSMA 算法在基于最大熵的多閾值分割過程中有較好尋優(yōu)性能,收斂速度快,且魯棒性好,不易陷入局部最優(yōu)解。測試發(fā)現(xiàn)基于萊維飛行優(yōu)化SMA 算法簡稱LevySMA 的對于求多閾值圖像分割的總熵,尋優(yōu)精度及收斂性最差。
圖2 三種算法在基于最大熵圖像分割上的適應(yīng)度進化曲線
提出了基于t分布的自適應(yīng)黏菌優(yōu)化算法,通過對12個測試函數(shù)及基于最大熵的圖像分割工程問題進行測試,表明基于t分布的自適應(yīng)黏菌算法,有效地提高了黏菌算法的搜索能力,其尋優(yōu)精度及收斂速度有所提高,魯棒性更強。