導航:首頁 > 源碼編譯 > 遺傳演算法優化pid參數

遺傳演算法優化pid參數

發布時間:2023-11-17 08:32:47

⑴ 怎麼通過MATLAB使用遺傳演算法實現pid參數整定

我的畢設只用把PID和模糊PID相比較
常規PID,用Matlab里的Simulink模塊模擬,建立你要做的動力學模型的傳函或者狀態空間。PID參數調節可用臨界比度法。
模糊PID就麻煩了,打開Matlab中FIS模塊,一般都用二階模糊?輸入E,EC的隸屬函數,一般為高斯,和輸出模糊Kp,Ki,Kd,一般為三角。還要整定模糊規則,再載入到Simulink里。調節模糊因子Gu,Ge,Gec,設置模糊PID的參數。
總之,你這個問題在白度知道里很難說清楚。

⑵ 如何用遺傳演算法實現多變數的最優化問題

將多個變數的數值編碼編排進去,進行組合。

⑶ 關於遺傳演算法或粒子群演算法優化PID參數的問題,求大俠相助,萬分感激!

PID不懂,但是就第一問題說下,如果說每次的初始條件一樣的話,可以把參數固定。如果初始條件不一樣的話,要在每次使用前都進行優化。

關於目標函數哪個更好,倒不如問問你的同學和老師,這兒不是好地方。
目標函數是GA或者PSO優化的目標,通過目標對候選解進行優劣評價,然後演算法會指引種群向目標函數取得優值的范圍進行隨機搜索。

我只能解釋道這兒了~~

⑷ 遺傳演算法解決TSP問題

遺傳演算法在很多領域都得到應用;從神經網路研究的角度上考慮,最關心的是遺傳演算法在神經網路的應用。在遺傳演算法應用中,應先明確其特點和關鍵問題,才能對這種演算法深入了解,靈活應用,以及進一步研究開發。

一、遺傳演算法的特點

1.遺傳演算法從問題解的中集開始嫂索,而不是從單個解開始。

這是遺傳演算法與傳統優化演算法的極大區別。傳統優化演算法是從單個初始值迭代求最優解的;容易誤入局部最優解。遺傳演算法從串集開始搜索,復蓋面大,利於全局擇優。

2.遺傳演算法求解時使用特定問題的信息極少,容易形成通用演算法程序。

由於遺傳演算法使用適應值這一信息進行搜索,並不需要問題導數等與問題直接相關的信息。遺傳演算法只需適應值和串編碼等通用信息,故幾乎可處理任何問題。

3.遺傳演算法有極強的容錯能力

遺傳演算法的初始串集本身就帶有大量與最優解甚遠的信息;通過選擇、交叉、變異操作能迅速排除與最優解相差極大的串;這是一個強烈的濾波過程;並且是一個並行濾波機制。故而,遺傳演算法有很高的容錯能力。

4.遺傳演算法中的選擇、交叉和變異都是隨機操作,而不是確定的精確規則。

這說明遺傳演算法是採用隨機方法進行最優解搜索,選擇體現了向最優解迫近,交叉體現了最優解的產生,變異體現了全局最優解的復蓋。

5.遺傳演算法具有隱含的並行性

遺傳演算法的基礎理論是圖式定理。它的有關內容如下:

(1)圖式(Schema)概念

一個基因串用符號集{0,1,*}表示,則稱為一個因式;其中*可以是0或1。例如:H=1x x 0 x x是一個圖式。

(2)圖式的階和長度

圖式中0和1的個數稱為圖式的階,並用0(H)表示。圖式中第1位數字和最後位數字間的距離稱為圖式的長度,並用δ(H)表示。對於圖式H=1x x0x x,有0(H)=2,δ(H)=4。

(3)Holland圖式定理

低階,短長度的圖式在群體遺傳過程中將會按指數規律增加。當群體的大小為n時,每代處理的圖式數目為0(n3)。

遺傳演算法這種處理能力稱為隱含並行性(Implicit Parallelism)。它說明遺傳演算法其內在具有並行處理的特質。

二、遺傳演算法的應用關鍵

遺傳演算法在應用中最關鍵的問題有如下3個

1.串的編碼方式

這本質是問題編碼。一般把問題的各種參數用二進制編碼,構成子串;然後把子串拼接構成「染色體」串。串長度及編碼形式對演算法收斂影響極大。

2.適應函數的確定

適應函數(fitness function)也稱對象函數(object function),這是問題求解品質的測量函數;往往也稱為問題的「環境」。一般可以把問題的模型函數作為對象函數;但有時需要另行構造。

3.遺傳演算法自身參數設定

遺傳演算法自身參數有3個,即群體大小n、交叉概率Pc和變異概率Pm。

群體大小n太小時難以求出最優解,太大則增長收斂時間。一般n=30-160。交叉概率Pc太小時難以向前搜索,太大則容易破壞高適應值的結構。一般取Pc=0.25-0.75。變異概率Pm太小時難以產生新的基因結構,太大使遺傳演算法成了單純的隨機搜索。一般取Pm=0.01—0.2。

三、遺傳演算法在神經網路中的應用

遺傳演算法在神經網路中的應用主要反映在3個方面:網路的學習,網路的結構設計,網路的分析。

1.遺傳演算法在網路學習中的應用

在神經網路中,遺傳演算法可用於網路的學習。這時,它在兩個方面起作用

(1)學習規則的優化

用遺傳演算法對神經網路學習規則實現自動優化,從而提高學習速率。

(2)網路權系數的優化

用遺傳演算法的全局優化及隱含並行性的特點提高權系數優化速度。

2.遺傳演算法在網路設計中的應用

用遺傳演算法設計一個優秀的神經網路結構,首先是要解決網路結構的編碼問題;然後才能以選擇、交叉、變異操作得出最優結構。編碼方法主要有下列3種:

(1)直接編碼法

這是把神經網路結構直接用二進制串表示,在遺傳演算法中,「染色體」實質上和神經網路是一種映射關系。通過對「染色體」的優化就實現了對網路的優化。

(2)參數化編碼法

參數化編碼採用的編碼較為抽象,編碼包括網路層數、每層神經元數、各層互連方式等信息。一般對進化後的優化「染色體」進行分析,然後產生網路的結構。

(3)繁衍生長法

這種方法不是在「染色體」中直接編碼神經網路的結構,而是把一些簡單的生長語法規則編碼入「染色體」中;然後,由遺傳演算法對這些生長語法規則不斷進行改變,最後生成適合所解的問題的神經網路。這種方法與自然界生物地生長進化相一致。

3.遺傳演算法在網路分析中的應用

遺傳演算法可用於分析神經網路。神經網路由於有分布存儲等特點,一般難以從其拓撲結構直接理解其功能。遺傳演算法可對神經網路進行功能分析,性質分析,狀態分析。

遺傳演算法雖然可以在多種領域都有實際應用,並且也展示了它潛力和寬廣前景;但是,遺傳演算法還有大量的問題需要研究,目前也還有各種不足。首先,在變數多,取值范圍大或無給定范圍時,收斂速度下降;其次,可找到最優解附近,但無法精確確定最擾解位置;最後,遺傳演算法的參數選擇尚未有定量方法。對遺傳演算法,還需要進一步研究其數學基礎理論;還需要在理論上證明它與其它優化技術的優劣及原因;還需研究硬體化的遺傳演算法;以及遺傳演算法的通用編程和形式等。

閱讀全文

與遺傳演算法優化pid參數相關的資料

熱點內容
如何登錄別人的伺服器 瀏覽:626
調度系統軟體python 瀏覽:205
微信大轉盤抽獎源碼 瀏覽:497
壓縮機損壞的表現 瀏覽:862
同步數據伺服器怎麼用 瀏覽:634
163郵箱伺服器的ip地址 瀏覽:50
伺服器跟域是什麼 瀏覽:128
rails啟動命令 瀏覽:465
logistic命令怎麼用 瀏覽:738
c語言點滴pdf 瀏覽:747
linuxrtc編程 瀏覽:258
linux打包並壓縮命令 瀏覽:644
aes加密的證書格式 瀏覽:99
oracledbcalinux 瀏覽:844
酬勤任務app怎麼被特邀 瀏覽:199
android應用文件夾 瀏覽:1002
平面設計法則pdf 瀏覽:339
3d圓角命令怎麼用 瀏覽:569
程序員買意外險還是重疾險 瀏覽:621
遼寧的dns伺服器地址雲空間 瀏覽:448