亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        混合遺傳模擬退火算法求解背包問題

        2012-11-22 01:16:02

        林 耿

        (閩江學(xué)院 數(shù)學(xué)系,福建 福州 350108)

        背包問題是運(yùn)籌學(xué)中一個(gè)著名的問題,它是指從n個(gè)不同價(jià)值和重量的物品集合中選擇若干個(gè)物品裝入指定容量C的背包,使得被選物品的總重量不超過背包容量且價(jià)值總和最大.假設(shè)第i個(gè)物品的價(jià)值和重量分別為pi和wi,引入向量x∈{0,1}n,當(dāng)物品i被選擇放入背包時(shí),xi=1;否則xi=0.背包問題可以建模為如下的整數(shù)規(guī)劃模型:

        背包問題屬于帶約束的NP困難問題[1],在現(xiàn)實(shí)生活中有著廣泛的應(yīng)用背景,比如貨物裝載、工廠下料、電子商務(wù)和軟硬件劃分等[2].并且背包問題往往作為子問題出現(xiàn)在許多復(fù)雜的組合優(yōu)化問題中,所以研究背包問題的有效求解算法具有重要的理論和實(shí)際意義.

        常見的求解背包問題的算法有精確算法和智能優(yōu)化算法[3-6].精確算法具有指數(shù)時(shí)間的算法復(fù)雜度,難以應(yīng)用于求解大規(guī)模問題.智能優(yōu)化算法能夠較快地求得精度較高的近似解,特別是遺傳算法和模擬退火算法操作簡單實(shí)用,受到了學(xué)者們的廣泛關(guān)注.然而,每種算法都有其自身的優(yōu)勢和缺陷.遺傳算法[7]是一種基于自然選擇和自然遺傳學(xué)機(jī)制上的隨機(jī)搜索算法,具有較強(qiáng)的全局搜索性能,但是遺傳算法在搜索過程中容易出現(xiàn)早熟現(xiàn)象.模擬退火算法模擬固體退火的過程,不僅能夠向目標(biāo)函數(shù)優(yōu)化的方向迭代,而且通過引入接受準(zhǔn)則,能夠以一定概率接受較差的解,從而避免陷入局部最優(yōu)解,但當(dāng)問題規(guī)模較大時(shí),收斂速度較慢.

        本研究將模擬退火算法有效地融入遺傳算法,結(jié)合遺傳算法和模擬退火算法的優(yōu)點(diǎn),提出了一種求解背包問題的混合遺傳模擬退火算法,有效地避免陷入局部最優(yōu)解.與單純的遺傳算法比較,實(shí)驗(yàn)結(jié)果表明了該混合算法求解背包問題的有效性和適用性.

        1 混合遺傳模擬退火算法

        遺傳算法具有很強(qiáng)的全局搜索能力,但是局部搜索能力較差,容易陷入局部最優(yōu)解.模擬退火算法具有較強(qiáng)的局部搜索能力,但搜索速度較慢.本研究將這兩個(gè)算法結(jié)合起來,提出混合的遺傳模擬退火算法,隨機(jī)構(gòu)造種群,采用模擬退火對種群中的解進(jìn)行局部搜索,引入新的種群更新策略,保持種群的多樣性,避免早熟現(xiàn)象發(fā)生.

        1.1 適應(yīng)度函數(shù)

        1.2 改進(jìn)的模擬退火局部搜索算法

        傳統(tǒng)模擬退火算法能夠有效避免陷入局部最優(yōu)解,但當(dāng)問題的規(guī)模較大時(shí),模擬退火算法的收斂速度較慢.本研究基于模擬退火的思想,提出了一個(gè)改進(jìn)模擬退火局部搜索算法SALS,加快了局部搜索的速度.設(shè)x為初始解,N(x)為x的某個(gè)鄰域結(jié)構(gòu),T>0為SALS算法的參數(shù),則SALS算法可描述為:

        (1)初始化,down=0,xmax=x.

        (2)計(jì)算N(x)中所有解的適應(yīng)度函數(shù)值,假設(shè)y是N(x)中適應(yīng)度函數(shù)值最大的解,令Δf=f(y)-f(x).

        (3)如果Δf>0,則令x=y,轉(zhuǎn)(2);否則,如果f(y)>f(xmax),令xmax=y,轉(zhuǎn)(4).

        (4)如果down

        1.3 交叉算子

        假設(shè)x和y是從種群中選擇到的兩個(gè)解,本研究采用fixed交叉算子[8]來產(chǎn)生新的解向量z.fixed交叉算子的基本思想是:如果第i個(gè)物品在x和y中都是處于裝入狀態(tài),則在新的解中將該物品裝入背包,即zi=1;如果第i個(gè)物品在x和y中都是處于未裝入狀態(tài),則在新的解中不將該物品裝入背包,即zi=0;如果第i個(gè)物品在x和y中的狀態(tài)不一樣,那么在新的解中以50%的概率裝入背包.

        1.4 種群更新策略

        良好的種群更新策略應(yīng)當(dāng)既能維持高質(zhì)量的解,又能保持種群的多樣性. 采用如下的種群更新策略:一個(gè)解如果能夠插入種群中,那么它要么提高了種群中解的質(zhì)量,要么使種群中的解更多樣化.假設(shè)x1和x2分別為種群中適應(yīng)度函數(shù)值最大和最小的解,y為新產(chǎn)生的解.如果y的適應(yīng)度函數(shù)值比x1大,即f(y)>f(x1),則將y插入種群,并將x2從種群中刪除.假設(shè)函數(shù)H(y,x1)表示解y和x1間的海明距離,函數(shù)H(x2,x1)表示解x2和x1間的海明距離,如果H(y,x1)+f(y)>H(x2,x1)+f(x1),則將y插入種群,并將x2從種群中刪除.否則,不改變種群的結(jié)構(gòu).

        2 算法求解步驟

        基于以上分析,提出了混合遺傳模擬退火算法,算法的具體步驟如下:

        (1)隨機(jī)產(chǎn)生s個(gè)解向量構(gòu)造出初始種群{x1,…,xs}.

        (2)對種群中的每個(gè)解xi應(yīng)用改進(jìn)的模擬退火局部搜索算法SALA進(jìn)行局部搜索,所得結(jié)果仍記為xi.

        (3)隨機(jī)選出種群中的兩個(gè)解,應(yīng)用fixed交叉算子構(gòu)造新解z,并利用SALA算法對z進(jìn)行優(yōu)化,優(yōu)化結(jié)果仍記為z.

        (4)應(yīng)用更新策略更新種群.如果算法已經(jīng)持續(xù)NO次未找到更好的解,則停機(jī),輸出種群中適應(yīng)度函數(shù)值最大的解;否則轉(zhuǎn)(3).

        其中,NO為算法的停止參數(shù).

        3 仿真實(shí)驗(yàn)

        為了驗(yàn)證本算法的有效性,選取文獻(xiàn)[6]中的實(shí)例來測試本算法,并將結(jié)果與文獻(xiàn)[6]中的結(jié)果進(jìn)行對比.采用Visual C++進(jìn)行編程實(shí)驗(yàn),實(shí)驗(yàn)環(huán)境為AMD 2.11 GHz處理器,1 GB內(nèi)存,Windows XP 操作系統(tǒng),實(shí)驗(yàn)例子的數(shù)據(jù)如下:

        P={p1,…,p25}={350,310,300,295,290,287,283,280,272,270,265,251,230,220,215,212,207,203,202,200,198,196,190,182,181},

        W={w1,…,w25}={135,133,130,11,128,123,20,75,9,66,105,43,18,5,37,90,22,85,9,80,70,17,60,35,57},C=1 400.文獻(xiàn)[6]采用遞歸算法求得該問題的最優(yōu)解,最優(yōu)解的目標(biāo)函數(shù)值和總質(zhì)量分別為5 686和1 398.

        表1 實(shí)驗(yàn)結(jié)果

        由表1可得,混合遺傳模擬退火算法能夠找到比單純的遺傳算法更好的解,能夠避免早熟現(xiàn)象并有效地提高背包的利用率.

        4 結(jié)論

        提出了一種求解背包問題的混合遺傳模擬退火算法,該算法發(fā)揮了遺傳算法和模擬退火算法的優(yōu)勢,采用同時(shí)考慮解的質(zhì)量和種群多樣性的種群更新策略,有效地避免了早熟現(xiàn)象,并且加快了局部搜索速度.與單純的遺傳算法比較,實(shí)驗(yàn)結(jié)果證明了算法的有效性.

        參考文獻(xiàn):

        [1]Garey M,Johnson D.Computers and intractability:a guide to the theory of NP-completeness[M].Freeman:San Francisco,1979:71-72.

        [2]Ray A,Wu J G,Thambipillai S. Knapsack model and algorithm for HW/SW partitioning problem[J].Lecture Notes in Computer Science,2004(3036):200-205.

        [3]趙新超,韓宇,艾文寶.求解背包問題的一種改進(jìn)遺傳算法[J].計(jì)算機(jī)工程與應(yīng)用,2011,47(24):34-36.

        [4]苗世清,高岳林.求解0/1背包問題的離散差分進(jìn)化算法[J].小型微型計(jì)算機(jī)系統(tǒng),2009,30(9):1828-1830.

        [5]錢淑渠,武慧虹,涂歆.動態(tài)免疫優(yōu)化算法及其在背包問題中的應(yīng)用[J].計(jì)算機(jī)工程,2011,37(20):216-218.

        [6]程春英,張玉春.利用遺傳算法求解0/1背包問題[J].內(nèi)蒙古民族大學(xué)學(xué)報(bào),2010,25(6):637-639.

        [7]陳國良,王煦法,莊鎮(zhèn)泉,等.遺傳算法及其應(yīng)用[M].北京:人民郵電出版社,2001.

        [8]Chardaire P,Barake M, McKeown G P.A probe-based heuristic for graph partitioning[J].IEEE Transactions on Computers,2007,56(12):1707-1720.

        日本亚洲欧美在线观看| 五月天激情电影| 国产无吗一区二区三区在线欢| 好吊色欧美一区二区三区四区| AV无码一区二区三区国产| 亚洲精品一区二区视频| 亚洲人成网站色在线入口口 | 综合网在线视频| 亚洲一区二区视频蜜桃| 成人影院视频在线免费观看| 国产青榴视频在线观看| 一区二区三区国产在线视频| 成年女人粗暴毛片免费观看 | 久久精见国产亚洲av高清热| 无码专区亚洲综合另类| 精品一区二区久久久久久久网站| 天堂在线观看av一区二区三区| 白白色发布视频在线播放| 亚洲va中文字幕无码一二三区| 中文字幕人妻av一区二区| 在线观看亚洲你懂得| 日产国产精品亚洲高清| 国产又大又黑又粗免费视频| 免费毛片a线观看| 98bb国产精品视频| 粉嫩的18在线观看极品精品| 三级黄色片免费久久久| 亚洲成av人片一区二区| 亚洲阿v天堂2018在线观看| 亚洲精品456在线播放狼人| 亚洲人成影院在线无码按摩店| 亚洲女人被黑人巨大进入| 伊人色综合九久久天天蜜桃| 日本a级免费大片网站| 亚洲va久久久噜噜噜久久男同| 超91精品手机国产在线| 久久精品日韩免费视频| 乱子轮熟睡1区| 亚洲国产高清在线观看视频| 亚洲精品国产av一区二区| 国产亚洲一区二区在线观看|