馬書(shū)紅
摘要:對(duì)于生物界的遺傳過(guò)程的模仿就是遺傳算法的基礎(chǔ)思想,其在整個(gè)操作過(guò)程中一般由三個(gè)基本操作組成,分別是變異、交叉、選擇,用基因代表參數(shù),用染色體代表二進(jìn)制,最后得出一個(gè)群體。
關(guān)鍵詞:遺傳算法 最小二乘法 矩陣編碼
中圖分類(lèi)號(hào):O29文獻(xiàn)標(biāo)識(shí)碼:A文章編號(hào):1009-5349(2016)23-0245-01
眾所周知,基本遺傳算法在層數(shù)較多的情況下其編碼表示冗長(zhǎng)以及尋優(yōu)效果存在一定的欠缺,因此相關(guān)學(xué)者為了解決基本遺傳算法的問(wèn)題,經(jīng)過(guò)深入的研究和分析后,提出了矩陣編碼遺傳算法。
一、遺傳算法最小二乘擬用的改進(jìn)與完善
改進(jìn)遺傳算法最小二乘方法就其內(nèi)容而言,其實(shí)就是把改進(jìn)的遺傳算法和辨識(shí)方法進(jìn)行科學(xué)合理的結(jié)合,在結(jié)合之后會(huì)產(chǎn)生一種較為先進(jìn)的解決辨識(shí)問(wèn)題的新方法,其對(duì)于工業(yè)過(guò)程的實(shí)現(xiàn)與改進(jìn)或控制系統(tǒng),有著極大的促進(jìn)作用。改進(jìn)遺傳算法的改進(jìn)內(nèi)容是針對(duì)遺傳編碼操作方面進(jìn)行合理的改進(jìn),這樣的改進(jìn)便于操作和交叉,最終實(shí)現(xiàn)操作的簡(jiǎn)單性和便捷性,而且在改變之后,其矩陣編碼的長(zhǎng)度可以在很大程度上減少,也可以在很大程度上縮小,對(duì)于其運(yùn)算速度也是一種有效的提高,而且,改進(jìn)之后的矩陣編碼和MATLAB語(yǔ)言的結(jié)合能夠更加的緊密,有利于仿真和編程的實(shí)現(xiàn),綜合以上而言,矩陣編碼的遺傳算法究其改變的內(nèi)容和產(chǎn)生的作用而言,其已經(jīng)成為遺傳算法在實(shí)踐與理論方面巨大的突破和創(chuàng)新。[1]
二、案例分析
眾所周知,改進(jìn)后的遺傳算法擁有能力較強(qiáng),能夠在一定程度上避開(kāi)傳統(tǒng)遺傳算法辨識(shí)問(wèn)題中較為復(fù)雜的計(jì)算方法,最終以較為簡(jiǎn)單的計(jì)算方法,計(jì)算出最為正確的參數(shù),其一般計(jì)算過(guò)程如以下所示,而辨識(shí)初始模型如以下公式所示。
在該辨識(shí)初始模型中,主要依據(jù)最小二乘方法把上面公式中的參數(shù)a1、a2b1、b2求出,這也是較為常見(jiàn)的辨識(shí)采用方式。而之后以矩陣編碼遺傳算法優(yōu)化為基礎(chǔ),其具體的優(yōu)化過(guò)程如下所述。隨機(jī)產(chǎn)生群體 — 群體規(guī)模S =100— 編碼L = 10— 進(jìn)化代數(shù) M =50在整個(gè)過(guò)程中需要進(jìn)行以下幾個(gè)方面的工作。其一,矩陣串的列與行一般是根據(jù)待求參數(shù)的個(gè)數(shù)來(lái)確定的,如果待定參數(shù)為6個(gè),那么將會(huì)確定一個(gè) 3x2或者2x3的矩陣,這些特定的6個(gè)參數(shù)分別用6個(gè)元素來(lái)進(jìn)行表示。其二,在進(jìn)行參數(shù)搜索的過(guò)程中,必須確定其范圍,遺傳算法對(duì)于參數(shù)的搜索范圍都有一個(gè)相對(duì)應(yīng)的極限,這些范圍主要根據(jù)具體的問(wèn)題來(lái)確定。其三,對(duì)個(gè)體適應(yīng)度進(jìn)行合理的評(píng)價(jià)。在本文中主要依據(jù)最小二乘的定義來(lái)進(jìn)行評(píng)價(jià)和選擇。在此公式中,J=θmin,換一個(gè)角度而言,也就是J=[(試驗(yàn)估計(jì)值-實(shí)際測(cè)量值)的最小平方值]。在其中選出平方最小的一個(gè)組作為最優(yōu)質(zhì)的輸出。矩陣編碼遺傳算法和辨識(shí)度最小二乘兩相結(jié)合的核心就是這一步,而在整個(gè)過(guò)程中最小二乘和矩陣編碼結(jié)合最為關(guān)鍵的點(diǎn)也正是這里,之后取得矩陣編碼遺傳算法搜索到的參數(shù)值,最后將參數(shù)值和實(shí)際測(cè)量參數(shù)值進(jìn)行差額比較,將兩者差取平方數(shù),將其作為遺傳算法的適應(yīng)度函數(shù)。[2]
其四,為了杜絕優(yōu)秀的父串在變異與交叉的過(guò)程中的破壞行為,或者是隨機(jī)選擇產(chǎn)生的漏選問(wèn)題,所以,在通常的情況下,工作人員會(huì)將兩個(gè)最優(yōu)的父串不再進(jìn)行交叉或者變異,而是選擇直接讓其進(jìn)入子代。下面的公式就是為了能夠讓遺傳算法更全面地找出全局的最優(yōu)參數(shù)構(gòu)造的隨迭代次數(shù)變化而變化的Pc、Pm:
三、實(shí)驗(yàn)結(jié)果
在此次實(shí)踐過(guò)程中,已經(jīng)知道三階線(xiàn)性離散系統(tǒng)的輸入、輸出的數(shù)據(jù)、統(tǒng)計(jì)共有40個(gè)采樣參數(shù),最后根據(jù)矩陣編碼遺傳算法最小二乘法進(jìn)行參數(shù)的估計(jì)工作,在此實(shí)驗(yàn)中計(jì)算時(shí)給定的初始條件如下面的公式所示,而在此次實(shí)驗(yàn)中,對(duì)前M步的偏差和計(jì)算如公式所示。
從其中可以看出,y(k)是實(shí)際的測(cè)量值,而y(k)為矩陣編碼遺傳算法尋到了最優(yōu)的參數(shù),[17564 09423 01518 09998 05217 00695],但是在解碼的之前首先必須確定參數(shù)的變化的范圍,其辨識(shí)的結(jié)果為V= 16987 09321 01499 1002 05215 0693。[3]
四、結(jié)語(yǔ)
最后我們可以根據(jù)實(shí)驗(yàn)數(shù)據(jù)得到,運(yùn)用改進(jìn)遺傳算法對(duì)于辨識(shí)問(wèn)題可以快速而準(zhǔn)確的解決,而且其計(jì)算的誤差平方達(dá)到了極高的正確率,但因?yàn)檫z傳算法究其本質(zhì),其本就是隨機(jī)生成的矩陣串,所以就實(shí)驗(yàn)的整體而言,具有一定的不可控性,仍需要進(jìn)一步的完善。
參考文獻(xiàn):
[1]郭羽含,張美琪,周楠.基于偏好矩陣遺傳算法求解長(zhǎng)期車(chē)輛合乘問(wèn)題[J].計(jì)算機(jī)應(yīng)用,2017(2).
[2]王震,陳耀,徐悅.基于預(yù)測(cè)電池SOC的充電控制策略研究[J].電子質(zhì)量,2017(2).
[3]何盼,鄭志浩,袁月,譚春.串并聯(lián)系統(tǒng)中支持實(shí)時(shí)替換的混合冗余策略?xún)?yōu)化[J].軟件學(xué)報(bào),2017(2).
責(zé)任編輯:楊國(guó)棟