遺傳算法在主蒸汽溫度控制系統中的應用-畢業論文_第1頁
遺傳算法在主蒸汽溫度控制系統中的應用-畢業論文_第2頁
遺傳算法在主蒸汽溫度控制系統中的應用-畢業論文_第3頁
遺傳算法在主蒸汽溫度控制系統中的應用-畢業論文_第4頁
遺傳算法在主蒸汽溫度控制系統中的應用-畢業論文_第5頁
已閱讀5頁,還剩51頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

遺傳算法在主蒸汽溫度控制系統中的應用摘要在電廠熱工生產過程中,主蒸汽溫度控制的任務是 維持過熱器出口蒸汽溫度在允許范圍之內。過熱汽溫被控對象是一個多容環節,它的純遲延時間和時間常數都比較大,干擾因素多,對象模型不能精確確定,中間測點不易取,由于其特有的復雜性,使得模型的獲取有一定的難度。PID調節是熱工系統最主要的控制策略,它直接影響機組的安全、經濟運行。遺傳算法作為一種智能優化算法,它是在解空間進行高效啟發式搜索,而非盲目地窮舉或完全隨機搜索,應用遺傳算法對主汽溫系統控制器參數進行優化,實驗表明,應用遺傳算法優化控制器參數的優越性。仿真結果表明,在主蒸汽溫度控制系統中,本文所設計的用改進的遺傳算法優化的 PID控制器比常規的 PID控制器有更好的控制效果。b5E2RGbCAP關鍵詞:遺傳算法;主汽溫控制;熱工系統;調節器參數; 參數優化GENETICALGORITHMINTHEMAINSTEAMTEMPERATURECONTROLABSTRACT

p1EanqFDP wIntheprocessofthermodynamicengineeringinpowerplant,themaintaskinmainsteamtemperaturecontrolistocontrolthesuper-heatedsteamtemperaturetosomerequiredrange.Thesuper-heatedsteamtemperatureobjectisamulti-containerelement.Itsdeadlinetimeandtimeconstantisrelativelybig.Ithasmanydisturbances,Itsobjectmodelisnotaccuratelyconfirmable.Itisnoteasytomeasuresteamtemperatureinthesuper-heatedimplement.duetoitsuniquecomplexity,makingthemodeltoobtainacertaindegreeofdifficulty.PIDregulationisthemostimportantthermalsystemcontrolstrategy,whichdirectlyaffecttheunit'ssafety,economicoperation.Adaptivegeneticalgorithmasanintelligentoptimizationalgorithm,whichistheefficientheuristicsolutionspace,ratherthanblindlyexhaustiveorcompletelyrandomsearch,geneticalgorithm,themainsteamtemperaturesystemcontrollerparametersoptimization,experimentsshowthatApplicationofgeneticalgorithmtooptimizetheI/52controllerparameters.Thesimulationresultsshowthatinthemainsteamtemperaturecontrolsystem,designedinthispaperamodifiedgeneticalgorithmtooptimizethePIDcontrollerthantheconventionalPIDcontrollerhasbettercontroleffect.DXDiTa9E3dKeywords:Geneticalgorithms,Mainsteamtemperaturecontrol,Thermalsystem,Regulatorparameters,OptimizationRTCrpUDGiT目 錄前言1第1章主汽溫調節系統的控制方案11.1傳統主汽溫調節系統11.1.1主汽溫串級調節系統11.1.2采用導前汽溫微分信號的雙回路汽溫調節系統21.2先進的主汽溫控制策略3第2章遺傳算法的基礎知識52.1遺傳算法的概念52.1.1遺傳算法的生物學原理52.1.2遺傳算法的發展52.1.3遺傳算法的特點62.1.4遺傳算法的工作原理72.1.5遺傳算法的基本操作82.2遺傳算法的數學基礎92.2.1模式的階和模式的定義距 92.2.2模式定理 92.2.3積木塊假設 102.3基本遺傳算法 (SGA>的組成 102.3.1編碼112.3.2適應度函數122.3.3遺傳算子122.3.4遺傳算法的運行參數142.3.5遺傳算法的收斂性14II/522.4用步驟遺傳算法的應152.5基本遺傳算法的不足15第3章改進的遺傳算法優化PID控制器173.1PID控制器的結構173.2改進遺傳算法173.2.1參數編碼173.2.2初始群體的產生183.2.3確定交叉概率和變異概率193.2.4遺傳算子的改進193.3仿真結果分析20結 論23謝辭24參考文獻25附 錄27外文資料翻譯 36III/52jLBHrnAILg前 言近二十年來,火電廠鍋爐機組越來越向大容量、高參數、高效率的方向發展,對機組熱工自動控制系統控制品質的要求也隨之提高。主蒸汽溫度是一個很重要的控制參數,它控制的任務是維持過熱器出口蒸汽溫度允許的范圍之內,并保護過熱器,使其管壁溫度不超過允許的工作溫度。5PCzV D7HxA目前,在火電廠中,各種類型的 PID 控制器因其結構簡單、參數的物理意義明確、易于調整并且具有一定的魯棒性,在理論上有成熟的穩定遺傳算法(Geneticalgorithms簡稱GA>進行路徑規劃,所謂遺傳算法就是以自然遺傳機制和自然選擇等生物進化理論為基礎,構造的一類全局優化概率搜索算法。利用選擇、交叉和變異編制控制機構的計算程序,在某種程度上對生物進化過程作數學方式的模擬,它包含了自然選擇和進化的思想,具有很強魯棒性,它是一種多點搜索算法,也是目前機器人路徑規劃研究中應用較多的一種方法。xHAQX74J0X遺傳算法被提出之后立即受到了各國學者的廣泛關注,有關遺傳算法的研究成果不斷涌現。遺傳算法被提出之后立即受到了各國學者的廣泛關注,有關遺傳算法的研究成果不斷涌現。1968年Holland提出了著名的模式(schema>定理奠定了遺傳算法的理論基礎;1975年DeJong首先嘗試將遺傳算法用于函數優化,提出了5個測試函數用以測試遺傳算法的優化性能;1981年Bethke應用Walsh函數分析模式;1983年Wetzel用遺傳算法解決了NP難題,即旅行商問題(TSP>;1985年Schaffer利用多種群遺傳算法研究解決了多目標優化問題;1987年Goldberg等人提出了借助共享函數的小生境遺傳算法。1989年,Goldberg出版專著《GeneticAlgorithminSearch,Optimization,andMachinelearning》對1/52遺傳算法的研究有非常大的影響。1992年,Michalewicz出版另一部具有極大影響力的著作《GeneticAlgorithm+DataStructure=volutionaryProgramming》。LDAYtRyKfE我國的遺傳算法的研究,從 20世紀 90年代以來一直處于不斷上升的時期,特別是近年來,遺傳算法的應用在許多領域取得了令人矚目的成果。國內二級以上學術刊物有關遺傳算法的文章不斷增加。國內很多專家、學者等在這方面作了大量研究,并取得了很多成果。國內以武漢大學軟件工程國家重點實驗室為領先,在他們的并行計算研究室內,進化計算他們稱之為“演化計算”)成為一個重要的研究方向,目前已經出版了專著,并有許多碩士、博士研究生圍繞進化計算選題。另外,中國科學技術大學的陳國良教授等出版了遺傳算法的著作。西安交通大學以進化計算為主題的研究工作也逐漸活躍起來,同時國內相關書籍也越來越多,如武漢大學劉勇、康力山等與 1995年出版的《非數值并行計算 -遺傳算法》;周明、孫樹棟等于 1996 年出版的《遺傳算法原理及應用》; 2002 年王小平、曹立明編寫的《遺傳算法 -理論、應用與軟件實現》等等。 Zzz6ZB 2Ltk遺傳算法作為一種全局優化算法,得到了越來越廣的應用。近年來,遺 傳 算 法 在 控 制 上 的 應 用 日 益 增 多 。2/52第1章 主汽溫調節系統的控制方案1.1傳統主汽溫調節系統主蒸汽溫度是一個很重要的控制參數,它在控制的任務是維持過熱器出口蒸汽溫度在允許的范圍之內,并保護過熱器,使其管壁溫度不超過允許的工作溫度。 dvzfvkwMI11.1.1主汽溫串級調節系統目前,電廠采用噴水減溫來調節過熱汽溫系統的延遲和慣性大,為了改善系統的動態特性,根據調節系統的設計原則,引入中間點信號作為調節器的補充信號,以便快速反映影響過熱汽溫變化的擾動,而最能反映減溫水變化的是減溫器出口的溫度,因此入該點作為輔助被調量,組成了串級調速系統。rqyn14ZNXI過熱器減溫器過熱器2θθ1蒸汽Gh1Gh2減溫執行器PPID水Wj圖1-1 主汽溫串級調節系統圖1-1為主汽溫串級調節系統,圖中 Gh1和Gh2分別為溫度變送器。為減溫器后汽溫, 為過熱器出口汽溫。汽溫調節對象由減溫器和過熱器組成,減溫水流量 為對象調節通道的輸入信號,過熱器出口汽溫 為輸出信號。為了改善調節品質,系統中采用減溫器出口處汽溫 作為輔助調節信號(稱為導前汽溫信號>。當調節機構動作(噴水量變化>后,導前汽溫信號的反應顯然要比過熱器出口的汽溫快很多。EmxvxOtOc o1/52SixE2yXPq5+θθr+12Gc1(s)_Gc2(s)G1(S)G2(S)_Gh1Gh2圖1-2 主汽溫串級調節系統的方框圖串級調節系統的主調節器出口的信號不是直接控制減溫器的調節閥,而使作為副調節器的可變給定值,與減溫器出口汽溫比較,通過副調節器去控制執行器動作,以調節減溫水量,保證過熱汽溫基本保持不變。圖1-2 為串級調節系統的方框圖。從圖1-2 的方框圖可以看出,串級調節系統有兩個閉合的調節回路:①由對象調節通道的導前區

、導前汽溫變送器

、副調節器組成的副調節回路;②由對象調節通道的惰性區

、過熱汽溫變送器

、主調節器以及副調節回路組成的主回路。串級調節系統之所以能改善系統的調節品質,主要是由于有一個快速動作的副調節回路存在。為了保證快速性,副調節回路的調節器采用比例(P>或比例微分(PD>調節器,使過熱汽溫基本保持不變,起到了粗調的作用;為了保證調節的準確性,主調節回路的調節器采用比例積分 (PI>或比例積分微分 (PID>調節器,使過熱汽溫與設定值相等,起到了細調的作用。 6ewMyirQFL對于串級汽溫調節系統,無論擾動發生在副調節回路還是發生在主調節回路,都能迅速的做出反應,快速消除過熱汽溫的變化。kavU42VRUs1.1.2采用導前汽溫微分信號的雙回路汽溫調節系統圖1-3所示即為采用導前汽溫微分信號的汽溫調節系統。這個系統引入了導前汽溫的微分信號作為調節器的補充信號,以改善調節質量。因為和 的變化趨勢是一致的,且 比 的反應快很多,因此它能迅速地反映 的變化趨勢。引入了 的微分信號后,將有助于調節器動作的快速性。在動態時,調節器將根據 和 與 給定值之間的差值而動作;在靜2/52態時, 信號為零,過熱汽溫 必然等于給定值。其中 y6v3ALoS 89目前電廠普遍采用上述兩種主汽溫調節系統,它們各有特點,比較如下:<1)如果把采用導前汽溫微分信號的雙回路系統轉化為串級系統來看待,其等效主、副調節器均是比例積分調節器,但對于實際的串級調節系統,為了提高副回路的快速跟蹤性能,副調節器應該采用比例或比例微分調節器,而主調節器則應采用比例積分微分調節器。因此,采用導前汽溫微分信號的雙回路系統的副回路,其快速跟蹤和消除干擾的性能不如串級系統;在主回路中,串級系統的主調節器具有微分作用,故調節質量比采用導前汽溫微分信號的雙回路系統好。特別對于慣性遲延較大的對象或外擾頻繁的情況下,采用導前汽溫微分信號的雙回路系統調節品質不如串級系統。 M2ub6vSTnP<2)串級調節系統主、副兩個調節回路的工作相對比較獨立,因此系統投運時整定、調試直觀方便。而采用導前汽溫微分信號的雙回路調節系統的兩個回路在參數調整時相互影響、不易掌握。 0YujCfmUCw通過上面的比較可以知道,串級控制系統對于過熱汽溫控制系統的控制效果好于導前汽溫微分信號控制系統。過熱器減溫器過熱器2θθ1蒸汽Gh1DGh2減Ω溫執行器PI水Wj圖1-3 采用導前汽溫微分信號的汽溫調節系統1.2 先進的主汽溫控制策略針對主汽溫這個在熱工自動調節系統中屬于可控性最差的調節系統 <擾動因素多,滯后大),廣大專家和學者給予了特別的關注,結合先進控制原理提出了很多新的控制方案,下面簡要介紹三種:<1)自適應度控制器調節控制參數的控制方案

eUts8ZQVRd過熱自適應 PID 控制系統,其原理是將系統輸出的微分和偏差引入到自適應控制器內,通過預先設計的規則,調整 PID 參數,以適應不同工作情況下的控制要求。它的基本控制系統是串級控制,自3/52GMsIasNXkAsQsAEJkW5T適應控制器用來調整主調節器的參數。<2)應用模糊理論的控制方案模糊自適應導前微積分控制系統。該控制系統的原理是在采用導前微分信號的汽溫調節系統的基礎上,將氣溫偏差值及偏差值的微分引入到模糊控制器中,根據預先設計的規則,如當導前汽溫信號變化大時,控制系統應施加大的控制作用使控制量回到設定值等,對微分器的參數進行在線整定,以 達到在不同的工作情況下,控制系統的參數達到最佳值。<3)應用神經網絡的控制方案基于神經網絡在線學習的自適應控制系統。將過熱汽溫設定值及其偏差引入神經網絡控制器,對傳統 PID 調節器進行在線補償,以適應調節對象動態性的變化。 TIrRGchYzg除啦上面介紹的幾種控制方案,專家和技術人員還提出了鍋爐過熱汽溫的預測智能控制,基于遺傳算法 PID 參數優化、神經網絡模糊控制系統等方案,仿真研究表明,相比傳統的控制,這些先進控制方法的控制效果都有了很大大提高。 7EqZcWLZNX上述的控制方法各有特點,通過對各種擾動對過熱汽溫的深入了解,引入各種先進的控制策略和算法到傳統的控制系統中,改善了傳統PID控制系統的性能,或直接用先進控制代替傳統的控制器,都將使得對熱氣溫這個大遲延、非線性、干擾多的復雜被控制對象的控制品質有更大的提高。總之,隨著先進控制的發展,在未來的日子里,對過熱汽溫的控制將有更多更好的控制方案。lzq7I Gf02E4/52zvpgeqJ1hk第2章 遺傳算法的基礎知識2.1遺傳算法的概念2.1.1遺傳算法的生物學原理遺傳算法是由美國的J.Holland教授于1975年在他的專著《自然界和人工系統的適應性》中首先提出的,它是一類借鑒生物界自然選擇和自然遺傳機制的隨機化搜索算法。自然界的生物由簡單到復雜、由低級到高級、由父代到子代,被稱為生物的遺傳和進化。遺傳算法就是模擬上述生物的遺傳和產期的進化過程建立起來的一種搜索和優化算法,它將“優勝劣汰,適者生存”的生物進化原理引入優化參數形成的編碼串聯群體中,并且在串聯群體之間進行有組織但又隨機的信息交換。伴隨著算法的運行,優良的品質被逐漸保留并加以組合,從而不斷產生出更佳的個體。這一過程就如生物進化那樣,好的特征被不斷地繼承下來,壞的特征被逐漸淘汰。新一代個體中包含著上一代個體的大量信息,又優于上一代,從而使整個群體向前進化發展。對于遺傳算法,也就是不斷地接近最優解。研究遺傳算法的目的主要有兩個:一是通過它的研究來進一步解釋自然界的適應過程;二是為了將自然生物系統的重要機理運用到人工系統的設計中。NrpoJac3v1遺傳算法本質上是對染色體模式所進行的一系列運算,即通過選擇算子將當前種群中的優良模式遺傳到下一代種群中,利用交叉算子進行模式重組,利用變異算子進行模式突變。通過這些遺傳操作,模式逐步向較好的方向進化,最終得到問題的最優解。2.1.2遺傳算法的發展

1nowfTG4KI遺傳算法簡稱 GA(Genetic Algorithms> 是最早是由美國 Michigan 大學JohnH.Holland 教授提出的模擬自然界遺傳機制和生物進化論而成的一種并行隨機搜索最優化方法,其在 1975年出版的專著《 Adaptation inNature andartificial systems》標志著遺傳算法的誕生,在 20世紀70年K.A. DeJong在計算機上進行了大量的數值函數優化實驗,建立了 DeJong函數測試平臺。從 20世紀80年代中期起,遺傳算法和進化計算到達一個研究高潮,以遺傳算法和進化計算為主題的國際學術會議在世界各地定期召開。1985 年,第一屆國際遺傳算法會議(international5/52V7l4jRB8HsHbmVN777sLconferenceongeneticalgorithms,ICGA>在美國卡耐基·梅隆大學召開,以后每兩年召開一屆。此外,進化規劃年會(annualconferenceonEvolutionaryprogramming:ACEP>于1992年在美國的加州召開第一屆會議,以后每隔兩年召開一屆,它具有系統優化、適應和學習的高性能計算和建模方法的研究漸趨成熟;進化計算會議(IEEEconferenceonevolutionarycomputation>也于1994年開始定期召開。以及每兩年舉行一次的遺傳算法基礎FOGA(FoundationsofGeneticAlgorithms>等相關的國際會議還有很多。此外,其他類型的各種會議,如以遺傳編程、進化策略或進化編程為主題的研討會也很頻繁。fjnFLDa5Zo由于遺傳算法的編碼技術和遺傳操作比較簡單,優化不受限制性條件的約束,能有效的求解組合優化問題以及其它復雜非線性問題,及其兩個最顯著特點隱含并行性和全局解空間搜索,從而越來越得到人們的重視并在全世界范圍內掀起了研究和應用的熱潮。tfnNhnE6e52.1.3遺傳算法的特點為了解決各種優化計算問題,人們提出了各種優化算法,如單純形法,梯度法,動態規劃法,分枝定界法等。而遺傳算法是一類可用于復雜系統優化計算的魯棒搜索算法,其特點是:①遺傳算法是對參數的編碼進行操作,而非對參數本身;②遺傳算法是從許多點開始并行操作,而非局限于一點;③遺傳算法通過目標函數來計算適配值,而不需要其他推導,從而對問題的依賴性較小;④遺傳算法的尋優規則是由概率決定的,而非確定性的;⑤遺傳算法在解空間進行高效啟發式搜索,而非盲目地窮舉或完全隨機搜索;⑥遺傳算法對于待尋優的函數基本無限制,它既不要求函數連續,也不要求函數可微,既可以是數學解讀式所表示的顯函數,又可以是映射矩陣甚至是神經網絡的隱函數,因而應用范圍較廣;⑦遺傳算法具有并行計算的特點,因而可以通過大規模并行計算來提高計算速度;⑧遺傳算法更適合大規模的復雜問題的優化;⑨遺傳算法計算簡單,功能強。6/522.1.4遺傳算法的工作原理遺傳算法是將“優勝劣汰,適者生存”的生物進化原理引入優化參數形成的編碼串群體中,按所選擇的適應度函數并通過遺傳中的復制,交叉及變異對個體進行篩選,使適應度高的個體被保留下來,組成新的群體,新的群體既繼承了上一代的信息,又優于上一代。這樣周而復始,群體中個體適應度不斷提高,直到滿足一定的條件。其執行過程如下:83lcPA59W9①編碼: GA 在搜索之前先將變量進行編碼,形成一個定長的字符串。②產生初始群體:隨機產生 M個初始字符串,每個字符串為一個個體或者是一個染色體。 M個個體構成一個群體。 GA以這M個字符串作為初始點開始迭代。 mZkklkzaaP③計算適應值:適應性函數表明個體對環境的適應能力的強弱,不同的問題,適應函數的定義方式也不同。④選擇:一個群體中同時有M個個體存在,在這些個體中哪個被選去繁殖后代,哪個被淘汰,是根據它們對環境的適應能力來決定的,適應性強的個體有更多的機會被保留下來。 AVktR43bpw⑤交叉:對于選中的繁殖個體,按照某種交叉方式交換兩個字符串相應的位段,產生兩個新的個體,新的個體組合其父輩的特性。ORjBnOwcEd⑥變異:變異首先在群體中隨機選擇一個個體,對選中的個體以一定的概率隨機的改變字符串中某個字符的值。⑦收斂判斷:是否達到收斂標準,若是,則把適應度值好的字符串作為搜索的結果。否則轉入第 <3)步重復以上過程。 2MiJTy0dTT⑧編程上機運行:完成上述工作以后,既可以按照演化計算的算法結構編程來進行問題求解。由于遺傳算法的隨機性和不確定性等特點,通常要運行多次才能得到可靠的解。應該注意上述各基本步驟是密切相關的,編碼方案與遺傳算子的設計等是同步考慮的,有時甚至需要上機運行與算法設計交替進行。2.1.5遺傳算法的基本操作

gIiSpiue7A<1)復制<ReproductionOperator )7/52復制是從一個舊種群中選擇生命力強的個體位串產生新種群的過程。根據位串的適配值拷貝,也就是指具有高度配值的位串更有可能在下一代中產生一個或多個子孫。它模仿了自然現象,應用是指具有高度適配值的位串更有可能在下一代中產生一個或多個子孫。它模仿了自然現象,應用了達爾文的適者生存理論。復制操作可以通過隨機方法來實現。若用計算機程序來實現,可考慮首先產生 0~1之間均勻分布的隨機數,若某串的復制概率為 40%,則當產生的隨機數在 0~0.40之間時,該串被復制,否則被淘汰。此外,還可以通過計算方法實現,其中較典型的幾種較典型的幾種方法為適應度比例法、期望值法、排位次法等。適應度比例法較常用。uEh0U1Yfm h<2)交叉<CrossoverOperator )復制操作從舊種群中選擇出優秀者,但不能創造新的染色體。而交叉模擬了生物進化過程的繁殖現象,通過兩個染色體的交換組合,來產生新的優良品種。它的過程為:在匹配池中任選兩個染色體,隨機選擇一點或多點交換位置;交換雙親染色體交換點右邊的部分,即可得到兩個新染色體數字串。交換體出現了自然界中信息交換思想。交叉有一點交叉、多點交叉、還有一致交叉、順序交叉和周期交叉和周期交叉。一點交叉是最基本的方法,應用較廣。它是指染色體切斷點有一處,例: IAg9qLsgB XA:1011001110→1011000101B :0010100101→0010101110<3)變異<MutationOperator )變異運算用來模擬生物在自然的遺傳環境中由于各種偶然因素引起的基因突變,它以很小的概率隨機地改變遺傳基因 <表示染色體的符號的某一位)的值。在染色體以二進制編碼的系統中,它隨機地將染色體的某一個基因由 1變為0,或由 0變為1.若只有選擇和交叉,而沒有變異,則無法在初始基因組合以外的空間進行搜索,使進化過程在早期就陷入局部解而進入終止過程,從而影響解的質量。為了在盡可能大的空間中獲得質量較高的優化解,必須采用變異操作。 WwghWvVhPE2.2遺傳算法的數學基礎2.2.1模式的階和模式的定義距模式是指種群個體基因串中的相似樣板,它用來描述基因串中某些8/52特征位相同的結構。在二進制編碼中,模式是基于三個字符集字符串,符號 *代表任意字符,即 0或者1。asfpsfpi4k

(0,1,*>

的模式示例:

10**1定義 1:模式 H 中確定位置的個數稱為模式 H的階,記作O(H>。例如 O(10**1>=3 。定義2:模式 H中第一個確定位置和最后一個確定位置之間的距離稱為模式 H的定義距,記作 δ(H>。例如δ(10**1>=4 。ooeyYZTjj1模式階用來反映不同模式間確定性的差異,模式階數越高,模式的確定性就越高,所匹配的樣本數就越少。在遺傳操作中,即使階數相同的模式,也會有不同的性質,而模式的定義距就反映了這種性質的差異。BkeGuInkxI2.2.2模式定理模式定理:具有低階、短定義距以及平均適應度高于種群平均適應度的模式在子代中呈指數增長。模式定理保證了較優的模式<遺傳算法的較優解)的數目呈指數增長,為解釋遺傳算法機理提供了數學基礎。從模式定理可看出,有高平均適應度、短定義距、低階的模式,在連續的后代里獲得至少以指數增長的串數目,這主要是因為選擇使最好的模式有更多的復制,交叉算子不容易破壞高頻率出現的、短定義長的模式,而一般突變概率又相當小,因而它對這些重要的模式幾乎沒有影響。PgdO0sRlMo2.2.3積木塊假設在模式定理中所指的具有低階、短定義距以及平均適應度高于種群平均適應度的模式被定義為積木塊<buildingblock)。它們在遺傳算法中很重要,早子代中呈指數增長,在遺傳操作下相互影響,產生適應度更高的個體,從而找到更優的可行解。 3cdXwckm15積木塊假設:遺傳算法通過短定義距、低階以及高平均適應度的模式<積木塊),在遺傳操作下相互結合,最終接近全局最優解。h8c52WOngM模式定理保證了較優模式的樣本數呈指數增長,從而使遺傳算法找到全局最優解的可能性存在;而積木塊假設則指出了在遺傳算子的作用9/52下,能生成全局最優解。 v4bdyGious2.3基本遺傳算法 (SGA>的組成遺傳算法被認為是對人類自然演化過程的模擬。人類的自然演化過程是進化過程,這種進化過程發生在染色體上。自然選擇是適應度值較好的染色體比那些適應度值較差的染色體有更多的繁殖機會;變異算子可以使子代染色體不同于父代染色體;通過兩個父代染色體的結合與重組可以產生全新的染色體。染色體的選擇、交叉與變異進程是無記憶的。將這些概念反映在數學上就形成了遺傳算法的基礎操作。它的基本流程圖如圖2-1所示。J0bm4qMpJ9由圖2-1可知,遺傳算法是一種群體型操作,該操作以群體中的所有個體為對象,選擇(Selection>、交叉(Crossover>、變異(Mutation>是遺傳算法的3個主要操作算子,它們構成了所謂的遺傳操作(GeneticOperation>,使遺傳算法具有了其它傳統方法所沒有的特性。遺傳算法中包含如下5個基本要素:<1)參數編碼;<2)初始群體的設定;<3)適應度函數的設計;<4)遺傳操作設計;<5)控制參數的設定(主要是群體大小和使用遺傳操作的概率等>。XVauA9grYP10/52開始產生初始群體計算個體適應度選擇交叉變異是否滿足終止條件 ?否是輸出結果結束圖2-1 基本遺傳算法流程圖2.3.1編碼用遺傳算法設計一個優秀的神經網絡結構,首先是要解決網絡結構的編碼問題;然后才能以選擇、交叉、變異操作得出最優結構。基本遺傳算法使用固定長度的二進制符號串來表示群體中的個體,其等位基因是由二值符號集 {0,1} 所組成,編碼包括以下幾個步驟: bR9C6TJscw(1>據具體問題確定待尋優的參數;(2>對每個參數確定它的變化范圍,并用一個二進制數來表示;(3>將所有表示參數的二進制數串接起來組成一個長的二進制串。除了二進制編碼之外,還有浮點數編碼、符號編碼等方法。所謂浮點數編碼方法,是指個體的每個基因值用某一范圍內的一個浮點數來表示,個體的編碼長度等于其決策變量的個數。就二進制編碼和浮點數編碼比較而言,一般二進制編碼比浮點數編碼搜索能力強,但浮點數編碼11/52pN9LBDdtrd比二進制編碼在變異操作上能夠保持更好的種群多樣性。符號編碼方法很少采用,這里就不再介紹了2.3.2適應度函數在遺傳算法中,以個體適應度的大小來確定該個體被遺傳到下一代群體中的概率,因此適應度函數的定義方法對遺傳算法具有極大的影響。DJ8T7nHuGT在遺傳算法中,目標函數到適應度函數的映射方式需要保證以下兩點:.映射后的適應度值是非負的;.目標函數的優化方向應對應適應度值的增大或減小方向。對于求最大值的問題一般采用如下的適應度函數 和目標函數的映射關系:(2-1>式中, 可以是一個輸入參數在理論上的最小值,也可以是到目前所有代中 的最小值,此時 會隨著代數而變化。對于求最小值的問題一般采用如下的適應度函數 和目標函數的映射關系:(2-2>式中,Cmax 可以是一個輸入參數在理論上的最大值,也可以是到目前所有代中的最小值,此時Cmax會隨著代數而變化。QF81D7bvUA2.3.3遺傳算子遺傳算法操作包括選擇、交叉和變異三個基本遺傳算子,綜合考慮三種算子,可以得知它們有如下的特點:.遺傳操作的效果和它們所取的操作概率、編碼方式、群體大小、初始群體以及適應度函數的設定密切相關;.它們的操作方式或操作策略隨著具體的求解問題的不同而異。選擇算子12/52選擇算子又稱復制算子 <Reproduction ),是從種群中選擇生命力強的染色體,產生新種群的過程。常見的有以下幾種方法: 4B7a9QFw9h<1)適應度比例選擇方法

(ProportionalModel>

,又稱為輪盤賭法(RouletteWheel>

或蒙特卡洛

(MonteCarlo>

模型,是目前最常用的選擇方法,具體表達方法如下:

ix6iFA8xoX(2-3>式中, 為個體 i被選中的概率, 為個體體大小。<2)確定式采樣選擇 (DeterministicSampling>

i的適應度, M為群,它的基本思想是按照一種確定的方式來進行選擇操作,其具體操作過程如下:wt6qbkCyDEa、計算群體中各個個體在下一代群體中的期望生存數目 Ni :(2-4>b、用 的整數部分 確定各個對應個體在下一代群體中的生存數目。其中 表示不大于 x的最大的整數。由該步可以確定出下一代群體中的 個個體。 Kp5zH46zRkc、按照 Ni 的小數部分對個體進行降序排序,順序取前 個個體加入到下一代群 體中。至此可完全確 定出下一代群體中的 M個個體。Yl4HdOAA 61<3)排序選擇法 (Rank-basedModel> ,是按個體的適應度的大小排序,然后按事先設計的概率表分配給每一個個體,作為各自的選擇概率。ch4PJx4BlI交叉算子13/52所謂交叉運算,是指對兩個相互配 對的染色體依據交叉概率 Pc按某種方式相互交換其部分基因,從而形成兩個新的個體。交叉運算是遺傳算法區別于其他進化算法的重要特征,它在遺傳算法中起關鍵作用,是產生新個體的主要方法。 SGA 中交叉算子采用單點交叉算子。qd3YfhxCzo3.變異算子所謂變異運算,是指依據變異概率 Pm將個體編碼串中的某些基因值用其它基因值來替換,從而形成一個新的個體。遺傳算法中的變異運算是產生新個體的輔助方法,它決定了遺傳算法的局部搜索能力,同時保持種群的多樣性。交叉運算和變異運算的相互配合,共同完成對搜索空間的全局搜索和局部搜索。在遺傳算法中使用變異算子主要有以下兩個目的: 1>改善遺傳算法的局部搜索能力; 2>維持群體的多樣性,防止出現早熟現象。 E836L11DO52.3.4遺傳算法的運行參數遺傳算法中需要選擇的運行參數主要有個體編碼串長度 L、群體大小M、交叉率 Pc、變異率 Pm、終止代數 T等(a>L :編碼串長度。(b>M:種群規模。一般取為 20~100;(c>Pc :交叉概率。一般取為 0.4~0.99。(d>Pm:變異概率。一般取為 0.0001~0.1(b>T :遺傳運算的終止進化代數。一般取為 100~1000;至于遺傳算法的終止條件,還可以利用某種判定準則,當判定出群體已經進化成熟且不再有進化趨勢時就可以終止算法的運行過程。常用的判定準則有下面兩種: S42ehLvE3M①連續幾代個體平均適應度的差異小于某一個極小的閾值;②群體中所有個體適應度的方差小于某一個極小的閾值。2.3.5遺傳算法的收斂性在遺傳算法的進化過程中,如果把每一代群體看作一個狀態的話,則可以把整個進化過程看作一個隨機過程來進行考查,并可以用Markov 鏈來對進化過程進行理論分析,從而得到遺傳算法收斂性方面14/52的重要結論:<1)基本遺傳算法收斂于最優解的概率小于1;<2)使用保留的最佳個體策略的遺傳算法能收斂于最優解的概率為1;采用有限Markov鏈模型上述原理可以被證明。501nNvZFis2.4用步驟遺傳算法的應對于一個需要進行優化的實際問題,一般可按下述步驟構造遺傳算法:第一步:確定決策變量及各種約束條件,即確定出個體的表現型 X和問題的解空間;第二步:建立優化模型,即確定出目標函數的類型及數學描述形式或量化方法;第三步:確定表示可行解的染色體編碼方法,即確定出個體的基因型x及遺傳算法的搜索空間;第四步:確定解碼方法,即確定出由個體基因型 x到個體表現型 X的對應關系或轉換方法;第五步:確定個體適應度的量化評價方法,即確定出由目標函數值到個體適應度 F(x>的轉換規則;第六步:設計遺傳算子,即確定選擇運算、交叉運算、變異運算等遺傳算子的具體操作方法。第七步:確定遺傳算法的有關運行參數,即 M,G,Pc,Pm 等參數。2.5基本遺傳算法的不足SGA 是早期的遺傳算法,求解效率還不高,也就是在搜索的快速性、全局性方面還不能達到較好的效果,可從如下幾方面分析:早期收斂

jW1viftGw9遺傳算法的過早收斂 ,是我們在用遺傳算法求解問題時,經常遇到的現象。標準遺傳算法不能收斂至全局最優解,一些改進的遺傳算法雖能收斂到全局最優解,但所需時間很長,如何有效的防止遺傳算法過早收斂,而又有較快的求解速度,是有效的使用遺傳算法所應達到的兩個目標 。xS0DOYW HLP一般說來,遺傳算法的過早收斂是由于群體的多樣性過低 ,次優個體過早的控制了整個群體,新生的個體存活率低,這樣以來 ,反復在次優個體的鄰域內搜索,從而最終找不到全局最優解,而群體的多樣性又跟選擇15/52壓力有很大的關系,選擇壓力過大 ,群體群體內重復的個體增多 ,群體的多樣性就會降低 ,但選擇壓力過小,雖然群體的多樣性高,但不能傾向于適應度較好的個體,這時算法搜索效率極低,近似于盲目搜索。所以應使選擇壓力和群體的多樣性保持一定的平衡。變異問題

LOZMkIqI 0w變異雖然可以使陷入某一超平面的個體得以解脫,但由于是隨機的,不能有效地保證這一問題的解決。微調能力差當搜索到最優解附近時,很難精確地確定最優解的位置,也就是說,局部搜索不具備微調能力。4.GA參數的選擇問題如何選取 GA的參數,如種群規模 N、位串長度 L等,目前還靠經驗來確定。5.模式<Schema)定理是 SGA的理論基礎,但只適用于 {0,1}二值編碼 。16/52第3章 改進的遺傳算法優化 PID控制器3.1PID控制器的結構本文采用經典增量式數字 PID 的控制算法,控制器每個采樣周期輸出的控制量,是相對于上一次控制量的增加<3-4)<3-5)式中, , , 分別為比例、積分、微分系數。增量式數字 PID的優點:.增量的確定僅與最近幾次誤差采樣值有關,不會產生大的累加誤差;計算誤差或計算精度問題,對控制量的計算影響較小。 ZKZUQsUJ ed.得出的是控制量的增量,誤動作影響小,必要時可以通過邏輯判斷限制或禁止本次輸出,不會嚴重影響系統的工作。3.容易實現手動到自動的無沖擊切換。

dGY2mcoKtT3.2改進遺傳算法3.2.1參數編碼Srinvivas 等人提出自適應遺傳算法,即 Pc和Pm能夠隨適應度自動改變,當種群的各個個體適應度趨于一致或趨于局部最優時,使二者增加,而當種群適應度比較分散時,使二者減小,同時對適應值高于群體平均適應值的個體,采用較低的 PC和Pm,使性能優良的個體進入下一代,而低于平均適應值的個體,采用較高的 PC和Pm,使性能較差的個體被淘汰。 rCYbSWRLIA本文將采用二進制編碼,因為二進制編碼最易于實現遺傳操作。采用“串聯二進制編碼”法,將這優化的參數排成一排,作為一個個體。用二進制編碼的基因與實際的參數值有以下的對應關系:(3-1>其中, 為待優化的參數的實際范圍; n為各個參數所對應的基因編碼的長度; y為二進制基因所對應的十進制數值。 FyXjoFlMWh17/523.2.2初始群體的產生為了增加初始群體的多樣性,有效地避免早熟現象地發生,引入了相似度的概念 <兩個個體中在相對應的位置上存在著相同的字符 <基因)的數量定義為相似度 R)。先隨機生成一個較大的群體,在群體中取大于適應度平均值的個體進行相似度判斷,當相似度 R超過個體長度的一半時,即認為這兩個個體相似,然后濾除兩者中適應度小的那個個體。TuWrUpPObX初始化 , 確定 SIZE , Size隨機產生一個較大的種群 SIZE適應度算 ,按從小到大排序 ,計算平均適應度取適應度大于平均適應度的個體進行相似度比較 ,剔除相似個體中適應度較小的個體剔除后的個體作為初始種群的一剔除后,剩余個體數大于等于部分,把剔除掉的個體選適應度Size?N大的去補充初始種群的不足Y從中選擇適應度較大的Size個個體組成初始種群初始種群 ( 規模為 Size )結 束圖2-2產生初試群體的程序流程圖相似度的判斷實際上是確定群體中的個體是否含有相同模式,剔除相似個體,選擇不同模式的個體組成新的群體,將這個新的群體作為遺傳操作的初始群體。在濾除相似個體后,當剩余的個體數達不到設定的初始群體規模 Size時,將濾除掉的個體按照適應小排序,選取適應度大的一些個體來補充初始群體的不足。產生初試群體的程序流程圖如 2-2所示。7qWAq9jPqE18/523.2.3確定交叉概率和變異概率本文采用了一種動態確定交叉概率和變異概率的方法。交叉概率為:<3-2)變異概率為:<3-3)其中, 為最大適應度函數值, 為平均適應度函數值,為交叉個體中適應度函數值較大的個體的適應度函數值;為變異個體的適應度函數值。llVIWTNQFk由上式可以看出,適應度函數值最大的個體的變異概率為0。這樣的話,對于適應度函數值較大的個體的交叉和變異概率都較小,這樣就保護了優良個體;對于適應度函數值較小的個體的交叉和變異概率較大。yhUQs DgRT13.2.4遺傳算子的改進下面根據優化設計要求,設計優化過程中的各個遺傳算子,包括:選擇算子、交叉算子和變異算子。選擇算子:選擇算子是遺傳算法用來對群體中個體進行優勝劣汰的操作。遺傳算法通過選擇算子確定如何將父代群體中的個體遺傳到下一代群體中去。選擇算子是建立在對個體適應度評價的基礎上,通過選擇可以避免基因缺失,并提高全局收斂性和計算效率。 MdUZYnKS8I常用的選擇算子有多種,但對于不同的問題應選用一種甚至兩種最合適的選擇算子。在用遺傳算法優化群體的過程中,通過對個體進行交叉、變異等遺傳操作而不斷產生出新的個體。雖然隨著群體的進化過程19/52GXRw1kFW5ss1SovAcVQMe5TfZQIUB509T7t6eTno會產生出越來越多的優良個體,但由于選擇、交叉和變異等操作的隨機性,它們也有可能會破壞掉當前群體中適應度最高的個體,這將會降低群體的平均適應度,并且對遺傳算法的運行效率、收斂性都有不利的影響。所以,我們希望適應度最好的個體要盡可能的被保留到下一代中。為達到這個目的,可以使用最佳個體保留法來進行優勝劣汰操作,即當前群體中適應度最高的個體不參與交叉和變異運算。一般認為,帶有選擇、交叉和變異算子的標準遺傳算法是不收斂的,而在標準遺傳算法基礎上具有最優保留特性的改進遺傳算法則是全局收斂的。這里選用的選擇算子是確定式采樣選擇法和最佳個體保留法相結合的選擇方式。首先按確定式采樣選擇法執行遺傳算法的選擇操作,然后將當前群體中適應度最高的個體結構完整地復制到下一代群體中。通過最優保留操作來保留進化群體中迄今為止所發現的最優解。最佳個體保留法是指群體中適應度最大的個體不經變異、交叉算子的處理而直接復制到下一代群體的選擇方法。Rudolph曾用齊次Markov鏈證明了使用保留最佳個體策略的遺傳算法能夠收斂于全局最優解的概率為1。采用最佳個體保留法的主要優點是能保證遺傳算法終止時得到的最后結果是歷代出現過的適應度最高的個體。本文的交叉算子采用的是單點交叉。因為本文采用的是二進制編碼,變異操作就是某個基因座上的基因值取反。3.3仿真結果分析在圖3-1中,曲線是采用改進后的遺傳算法優化后的PID串級控制系統的相應曲線,這里取為:副調節器為比例調節器,Kp=15優化后的PID的參數為:Kp=0.1584,Ki=0.0220,Kd=0。UTREx49Xj9由于采用二進制編碼,每個參數選擇的編碼長度為10位,若三個參數都優化,運行時間太長,為了加快運行效率,這里只優化Kp,Ki兩個參數,讓Kd=0。8PQN3NDYyP20/52圖3-1 用改進后的遺傳算法優化前后 PID 串級控制系統的響應曲線從圖3-1中可以看出,系統的響應速度加快,系統穩態誤差減小,減小了系統的振蕩次數,使系統很快趨于穩定。說明用遺傳算法優化后的PID控制器控制效果好,說明改進后的遺傳算法起到了主要作用,證明了遺傳算法的有效性。 mLPVzx7ZNw個體評價方法:由于所求解的函數的值域總是非負的,并且優化目標是求目標函數的最小值,故可將個體的適應度直接取為對應的目標函數值,即:F(x>=f(x1,x2> ,將目標函數的倒數作為適應度函數:AHP35hB02d圖3-2為采用改進遺傳算法后目標函數 J的收斂曲線21/52圖3-2 采用改進遺傳算法后目標函數 J的收斂曲線從圖3-2可以看出,收斂曲線很快達到一個穩定的狀態,說明改進后的 遺 傳 算 法 有 很 好 的 尋 優 效 率 。22/52結 論本文介紹了遺傳算法基本概念和基本理論,對基本遺傳算法進行了改進,改進主要集中在初試群體的產生、交叉概率與變異概率的確定等方面。NDOcB141gT對于主汽溫這樣的大慣性、大遲延、具有時變性、現場存在諸多干擾因素的被控對象,本文采用改進的遺傳算法優化 PID 控制器,仿真研究表明,與傳統 PID控制器相比,用改進的遺傳算法優化后的 PID控制器用于主汽溫控制時具有更優的控制性能和更為滿意的控制效果,這也為主汽溫的控制提供了一種更有效的控制方式。 1zOk7Ly2vA由于時間倉促和本文作者水平有限,本文存在著很多的不足之處,有待今后做進一步研究完善,例如,怎樣確定遺傳算法的運行參數,即編碼長度,初始群體的大小,終止進化的代數等,本文是在仿真過程中反復調整確定的,帶有一定的盲目性,另外,還需要對遺傳算法的其它方面做進一 步 的 改 進 。 fuNsDv23Kh23/52謝辭經過幾個月的努力奮斗,由于之前經驗的匱乏,難免有許多考慮周全嚴禁的地方,如果沒有 @@老師的耐心的指導,以及同學們的幫助和支持,想要完成這個設計是非常困難的。 tqMB9ew4Y X在寫論文的過程中,得到了 @@老師耐心的指導,認真負責的監督。從課題的選擇到資料的搜集整理以及論文的最終完成, @老師都始終給予我細心的指導和不懈的支持。她嚴肅的科學態度,嚴謹的治學精神,精益求精的工作作風,深深地感染和激勵著我。除了敬佩王老師的專業水平外,她治學嚴謹和科學研究的精神也是值的我永遠學習,并將積極影響我今后的學習和工作。在此謹向王老師致以崇高的敬意和衷心的感謝!HmMJFY05dE大學三年來,我們能無憂無慮地學習生活,背后都是有父母的支持和鼓勵,所以我們更要感謝我們的父母,為了我們他們操碎了心。最后感謝帶領我們在知識海洋里遨游的老師們和無時無刻關心我的父母。ViLRaIt6sk24/52參考文獻馬平,朱燕飛,牛征.基于神經網絡的主汽溫控制系統.華北電力大學學報,2001李敏強,寇紀淞,林丹等.遺傳算法的基本理論與應用.北京:科學技術出版社,2002羅萬金.電廠熱工過程自動調節.北京:中國電力出版社.1991于湘濤,劉紅軍,丁俊宏等.二自由度PID內模主汽溫控制.華北電力大學學報,2004飛思科技產品研發中心.MATLAB輔助優化計算與設計.北京:電子工業出版社,2003王小平,曹立明.遺傳算法:理論、應用及軟件實現.西安:西安交通大學出版社,2002張恩勤.模糊控制與PID控制方法的比較.上海交通大學學報,1999聞新超,周琳霞.一種基于混合編碼的遺傳算法.電子技術,2003史奎凡,陳月輝.提高遺傳算法收斂速度的方法.信息與控制,1998周金榮.遺傳算法的改進及其應用研究、控制與決策,1995張晶濤,王偉,曹方.一種智能控制方法在300MW機組主汽溫控制系統中的應用研究.中國電機工程學報,19999eK0GsX7H1甘世紅,褚建新,顧偉.基于遺傳算法的模糊控制在電弧冶煉爐中的應用.電機與控制學報,2004[13]楊獻勇.熱工過程自動控制.北京:清華大學出版社,2001,187~192胡國四,韓生廉.遺傳算法適值函數定義方法的研究.控制與決策,1999劉金琨.先進PID控制及其MATLAB仿真.北京:電子工業出版社,2006陳國良,孫樹棟.遺傳算法原理及應用.北京:國防工業出版社,1999胡壽松.自動控制原理第4版.北京:科學出版社,2001樓順天,胡昌華,張偉等.基于MATLAB的系統分析與設計一模糊控制.西安:西安電子科技大學出版社,2001naK8ccr8VI25/52陳國良,王煦法,莊鎮泉等.遺傳算法及其應用.北京:人民郵電出版社,1996邵裕森.過程控制及儀表<修訂版).上海:上海交通大學出版社,2007陶永華,尹怡欣,葛蘆生.新型PID控制系統及其應用.北京:機械工業出版社,1998黃文梅,楊勇,熊桂林.系統分析與仿真-MATLAB語言應用.長沙:國防科技大學出版社, 1999B6JgIVV9ao王群主編.電氣信息類專業英語.長沙:湖南大學出版社,2004薛定宇著控制系統計算機輔助設計:MATLAB語言與應用<第2版).北京:清華大學出版社, 2006P2IpeFpap5徐安主編.微型計算機控制技術.北京:科學出版社,2004[26] 宋曉燕,馬德庫,冬健峰等 .過熱蒸汽溫度的自動調節 .自動化技術與 應26/52附 錄改進的遺傳算法源程序%二進制編碼遺傳優化 PID參數clearall。closeall。clc。globalrinyouttimefu1G=100。Size=30。CodeL=10。MinX(1>=0 。MaxX(1>=0.4 。MinX(2>=0 。MaxX(2>=0.04 。%用于增量式 PID的優化的參數范圍%MaxX(2>=0.004 。E=round(rand(Size,2*CodeL>> 。%編碼初始化%************* 開始運行************forkg=1:1:Gtime(kg>=kgfors=1:1:Sizem=E(s,:> 。BSJ=0 。y1=0 。y2=0。m1=m(1:1:CodeL> 。fori=1:1:CodeLy1=y1+m1(i>*2^(CodeL-i> 。endKpid(s,1>=(MaxX(1>-MinX(1>>*y1/1023+MinX(1> 。m2=m(CodeL+1:1:2*CodeL> 。fori=1:1:CodeLy2=y2+m2(i>*2^(CodeL-i> 。27/52endKpid(s,2>=(MaxX(2>-MinX(2>>*y2/1023+MinX(2> 。%********** 步驟1:計算目標函數 *************Kpidi=Kpid(s,:> 。[Kpidi,BSJ]=ycpidcs3(Kpidi,BSJ> 。BSJi(s>=BSJ 。end[OderJi,IndexJi]=sort(BSJi> 。BestJ(kg>=OderJi(1> 。BJ=BestJ(kg> 。Ji=BSJi+1e-10 。%防止除以零fi=1./Ji

。[Oderfi,Indexfi]=sort(fi>

。%將

fi

從小到大排列Bestfi=Oderfi(Size> 。%讓BestS=E(Indexfi(Size>,:>

Bestfi=max(fi> 。。%讓 BestS=E(m>,m

max(fi>

的Indexfi 3YIxKpSc DM%kg%BJ%BestS%************ 步驟2:選擇和復制操作 *********fi_sum=sum(fi> 。fi_Size=(Oderfi/fi_sum>*Size 。fi_S=floor(fi_Size> 。r=Size-sum(fi_S> 。Rest=fi_Size-fi_S 。[RestValue,Index]=sort(Rest> 。保證總個體數為Sizefori=Size:-1:Size-r+1fi_S(Index(i>>=fi_S(Index(i>>+1 。endkk=0。28/52fori=Size:-1:1forj=1:1:fi_S(i>kk=kk+1 。TempE(kk,:>=E(Indexfi(i>,:> 。endend%************ 步驟3:交叉處理 **************采用自適應交叉概率%%%%%計算適應度函數最大值和平均適應度值fmax=Bestfi 。favg=sum(fi>/Size 。%%%%%%%%%%%%%%%%%%%%%n=ceil(2*CodeL*rand> 。fori=1:2:(Size-1>%%%%%%找出交叉個體的適應度較大值iffi(i>>fi(i+1>f=fi(i> 。elsef=fi(i+1> 。end%%%%%%%%%計算交叉概率的公式 ,個體適應度大于平均適應度的,隨適應度的增大, pc減小if(fmax-f><(fmax-favg>pc=0.9*(fmax-f>/(fmax-favg> 。elsepc=0.9 。endifkg>0.8*Gpc=pc-0.03 。%接近收斂時,減小交叉概率endtemp=rand 。29/52ifpc>tempforj=n:1:2*CodeLTempE(i,j>=E(i+1,j> 。TempE(i+1,j>=E(i,j> 。endendendTempE(Size,:>=BestS 。E=TempE 。%*********** 步驟4:變異操作 ***********Pm=0.1-[1:1:Size]*(0.01>/Size。%fi越大,Pm越小fori=1:1:Sizeforj=1:1:2*CodeLtemp=rand 。ifPm>tempifTempE(i,j>==0TempE(i,j>=1 。elseTempE(i,j>=0 。endendendend保證最好的個體留下TempE(Size,:>=BestS 。E=TempE。%***********************************************endBestfiBestSKpidi30/52Best_J=BestJ(G>figure(1> 。plot(time,BestJ> 。xlabel('Times'> 。ylabel('BestJ'> 。figure(2> 。plot(timef,10*rin,'r',timef,yout,'b'> 。xlabel('Time(s>'>

。ylabel('rin,yout'>

。figure(3>

。plot(timef,u1>

。xlabel('Time(s>'>

。ylabel('u1'>

。%***************

返回

PID

控制器的參數

**********%初始群體的產生%在群體中取大于適應度平均值的個體進行相似度判斷,%當相似度 R超過個體長度的一半時,即認為這兩個個體相似。%相似度的判斷實際上是確定群體中個體是否含有相同模式,剔除相似個體,選擇不同模式的個體組成新的群體。functionE=popf(SIZE,CodeL,Size>e=round(rand(SIZE,2*CodeL>> 。%編碼初始化fors=1:1:SIZEm=e(s,:>

。BSJ=0

。Kpidi=dcodef(m,CodeL>

。[Kpidi,BSJ]=ycpidcs3(Kpidi,BSJ>

。%調用

cjcsf.m

函數,該函數通過計算串級控制系統的輸出來計算目標函數BSJI(s>=BSJ 。

gUHFg9m

dSsendfi=1./BSJI 。%由目標函數到適應度函數的轉換[Oderfi,Indexfi]=sort(fi> 。%將fi從小到大排列fi_sum=sum(fi> 。f_avg=fi_sum/SIZE 。gg=0。%適應度大于平均適應度的個體的數目31/52fori=SIZE:-1:1ifOderfi(i>>f_avggg=gg+1 。elsebreakendend%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% uQHOMTQe79kk=0。%大于平均適應度的個體保留下來的數目dd=0。%濾除掉的個體數for i=SIZE-gg+1:1:SIZE-1% 大于平均適應度的個體在

sort(fi>

中的序號biaozhi=0 。forj=i+1:1:SIZEpp=0 。%pp是兩個個體的相似度forg=1:1:2*CodeLife(Indexfi(i>,g>==e(Indexfi(j>,g>pp=pp+1 。endendifpp>=0.6*(12*CodeL>biaozhi=1 。%相似dd=dd+1 。del(dd,:>=e(Indexfi(i>,:> 。%濾除掉的個體的序號,個體為e(Indexfi(i>,:> IMGWiDkflPbreakendendif biaozhi==0%i 中的個體和 j中的已經有相似的了,則跳出 i循32/52環kk=kk+1 。remain(kk,:>=e(Indexfi(i>,:> 。%保留下來的個體endend%適應度最大的個體不用進行適應度判斷,肯定留下kk=kk+1 。remain(kk,:>=e(Indexfi(SIZE>,:> 。%適應度最大的個體%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

WHF4Om OgAws=0。if(SIZE-gg+kk>>=Size%濾除后的總個體數足夠時fori=1:1:kks=s+1 。E(s,:>=remain(i,:> 。endfori=(SIZE-gg>:-1:((SIZE-gg+1>-(Size-kk>>s=s+1 。E(s,:>=e(Indexfi(i>,:> 。endelse%濾除后的個體總數不夠時fori=1:1:kks=s+1 。E(s,:>=remain(i,:> 。endfori=1:1:(SIZE-gg>%把適應度小于平均適應度的全部復制s=s+1。E(s,:>=e(Indexfi(i>,:> 。endfori=dd:-1:(dd+1-(Size-(SIZE-gg+kk>>>33/52s=s+1 。E(s,:>=del(i,:> 。%按照刪除掉的個體的適應度大小,依次補充不足的個體數endend34/52外文資料翻譯TellthetimeasystemdesignaccordingtotheautooflistslicemachineaDFdk6hhPdAbstract:Especiallyappearandlivethechangeofbringingtherootformankindwiththelargescaleintegrationalongwiththequickdevelopmentofelectronicstechnique.Fromitislistslicethemachineistechnicalofappliedtheproducthasalreadywalkedintothousand10000.Theemergenceoftheelectronicstenthousandcalendarsbringspeople'slifeofmanyconveniences.AutomaticallytellthetimethesystemisusedofthesinglesliceofmachinechipisAT89C51chipses,inadditionstillinclude:DS1302chips,crystalflapelectriccircuitandresettheelectriccircuitcomposinglistslicemachine'sleastapplicationsystem,thereisalsoindependenttypekeyelectriccircuit,thedynamicstateshowsanelectriccircuitetc..Itnotonlycancarryoutvariousfunctionofnumberelectronicsclock,ifhavetocompare,adjust,infixedtime,alarmclocketc.function,andcanalsocarryoutthefunctionthatthefixed-pointtellsthetime.ozElQQLi4TKeywords:MCU,Thesinglesliceofmachinemakesbellclock,code,segmentcode,showCvDtmAfjiAForeword:Actuallyandalwaystheclockcanprovidesecond,cent,,theday,week,monthandyeararesmallcanautomaticallyadjust,andhaveleapyearrepairfunctionwith31weathersforamonth.Thisdesignisstilladditionalthefixed-pointtellsthetimeoffunction,thusandfurthercompletedautomaticallyadesignoftellingthetimethesystem.Inbriefdescribedtheworkprincipleofhardwaresystemfirstinthetext,andattacheddiagramwiththedesignframeofthehardwaresystem,discussthisgraduationdesignconnectsthefunctionandworkprocessthatapeople'stechniqueandeachoneconnectapeoplemoldpiecevarioushardwareapplying,andconcretedescribedtocircumscribeelectriccircuittoconnectofsoft,thehardwareadjusttotry.QrDCRkJkxh1.Singlesliceofmachinetotaldesignwayofthinking4nCKn3dlMX35/52(1>Designminimumhardwaresystemofasinglesliceofmachineofabilitynormalwork,theoutercircleelectriccircuitincludestoestablishakeyboard,themonitorofLCDorLED。ijCSTNGm0E(2>Carryonasoftwaredesign,makeuseofsinglesliceofmachinesystemtheclockdesigntheinternalclocksystemofhighaccuracyfirst,minimumandaccuratetimeisperiod1。vfB1pxanfk(3>Designonsecondfoundationthatcountsamachinefora24hours,clock,anddesignsomeinfixedtimefunction。JbA9VhEou1(4>Designadozenofbellsperformanceorganization,completeanautotobeatbellfunction.X7Ahr18pJI2.ThealternativeofhardwareAutomaticallytellthetimesystem,itneedstobewalkedaccurately,compare, adjust, in fixed time, the fixed-point tell the time etc.,thereforewhatIchoseisoneAT89C51listslicemachinechip,thengotogether with with the DS12 C887

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論