導航:首頁 > 五金知識 > matlab遺傳演算法工具箱怎麼用

matlab遺傳演算法工具箱怎麼用

發布時間:2023-08-20 21:38:29

⑴ 使用matlab遺傳演算法工具箱如何加入目標函數中變數的約束條件啊,可否在M文件中加

首先回答你第一個問題:怎麼加入變數的約束條件?

打開遺傳演算法工具箱的窗體中會有下圖所示的選項,即是約束條件的編輯

至於添加的方式,這里要重點的提一下,首先將問題抽象成規劃問題的標准形式(如果你不懂什麼是標准形式的話,建議你去翻閱運籌學那本書,上告訴你什麼是標准形式),然後用矩陣語言寫出來,最後將矩陣的系數填寫到線性不等約束和線性相等約束中,同時定義所求變數x的上界和下界(記住有多少個變數就有多少列,如果你發現有些條件中沒有出現某些變數,那麼就應該用0補足,這個是matlab解決規劃問題與lingo想比較麻煩的一個地方,)。

然後回答你第二個問題:可否在M文件中添加約束條件?

當然可以,界面的東西是為了方便不熟悉matlab編程的人而設計出來的,但是其底層的演算法和介面肯定是有的。

碰到不懂的函數,請記得:help函數名

helpga之後會得到一下一些函數

ga

//這個是定義

Syntax //這個是語法也即是調用的規則

x=ga(fitnessfcn,nvars)

x=ga(fitnessfcn,nvars,A,b)

x=ga(fitnessfcn,nvars,A,b,Aeq,beq)

x=ga(fitnessfcn,nvars,A,b,Aeq,beq,LB,UB)

x=ga(fitnessfcn,nvars,A,b,Aeq,beq,LB,UB,nonlcon)

x=ga(fitnessfcn,nvars,A,b,Aeq,beq,LB,UB,nonlcon,options)

x=ga(problem)

[x,fval]=ga(...)

[x,fval,exitflag]=ga(...)

直接給你將最長的那個吧

x=ga(fitnessfcn,nvars,A,b,Aeq,beq,LB,UB,nonlcon,options)

X是返回所求的解

fitnessfcn是適應度函數

nvars是適應度函數中所含變數的維數

A是不等式約束中變數的系數矩陣,b是不等式約束中不含變數的值矩陣

Aeq是等式約束中變數的系數矩陣,beq是等式約束中不含變數的值矩陣

LB是下界,UB是上界

nonlcon是非線性約束條件

至於options嘛 我也木有用過,其實你也可以不用管的。

懂了木有呢,親?

⑵ 怎麼調用matlab遺傳演算法工具箱啊

工具箱要安裝到指定的路徑,好久沒有用了,具體我也記不住了,你可以
網路搜索專
一下。屬路徑安裝不對就會出問題。如果安裝對了,你用help命令顯示一下函數.
函數的m文件不用運行,直接調用就可以。eval=-eval;
以後eval變為負的了,而ga函數要求參數必須是正的。

⑶ Matlab自帶遺傳演算法工具箱簡介

Matlab提供遺傳演算法工具箱(Matlab2010版本之後),方便解決簡單的優化問題,官方提示後續可能取消該功能。個人不建議使用工具箱求解數學規劃問題,參數設置零散復雜,容易錯漏,但可學習作為Demo問題的演示工具。

按從上到下,從左到右的順序對Matlab自帶的遺傳演算法工具箱GUI界面進行介紹和使用注意事項說明。

對應於非線性約束求解器

指定另外一個最小值函數,在遺傳演算法結束之後計算,在整數值限制的時候不可用。

⑷ 求解:怎樣使用MATLAB中的遺傳演算法計算器Optimization Tool中的GA——Genetic Algorithm,如圖,重謝

比如通過MATLAB遺傳演算法的思想求解f(x)=x*sin(10pi*x)+2.0,-1<=x<=2的最大值問題,結果精確版到3位小數。

首先在matlab命令權窗口輸入f=@(x)-(x*sin(10*pi*x)+2) 輸出結果為

>> f=@(x)-(x*sin(10*pi*x)+2)

f =

@(x)-(x*sin(10*pi*x)+2)

接著輸入gatool會打開遺傳演算法工具箱

顯示51代之後演算法終止,最小結果為-3.85027334719567,對應的x為1.851,由於自定義函數加了負號,所以原式的最大值為3.85027334719567,對應的x為1.851。

不過這是遺傳演算法得到的結果,每次運行的結果可能會有所不同,而且不一定是確切的最大值。

遺傳演算法適合應用在一些求最優解比較復雜的問題(常規的演算法運算時間過長,甚至無法解決)。

⑸ 用遺傳演算法工具箱求解一個多目標優化問題,現在需要一個matlab程序,求高人指點

用遺傳演算法工具箱求解一個多目標優化問題的步驟:

1、根據題意,建立自定專義目標函數,ga_fun1(x)

2、在命令窗屬口中,輸入

>> optimtool %調用遺傳演算法工具箱

3、在遺傳演算法工具箱界面中,分別對Fitnessfunction框內輸入@ga_fun1();A框內輸入[1,1,1];b框內輸入16;Aeq框內輸入[];beq框內輸入[];Lower框內輸入[0,0,0];Upper框內輸入[];

4、單擊Start。得到x=4.508 y=2.513 z=1.912值。

⑹ 請教怎麼在matlab上安裝遺傳演算法工具箱啊,為什麼我安不上啊

直接在命令窗口裡邊輸入gatool就行了,用遺傳演算法還可以使用ga函數,具體使用格式可以在help系統里看ga,你還可以按照如下步驟打開遺傳演算法工具箱:1,打開matlab,2點擊左下方的start按鈕
3,點toolboxes,打開後選擇genetic
algorithm
and
direct
search
然後就可以進入gatool了,然後就會彈出ga工具箱(註:我的版本是7.7的,不同版本可能不同)

閱讀全文

與matlab遺傳演算法工具箱怎麼用相關的資料

熱點內容
qq設備鎖關了怎麼還要驗證怎麼弄 瀏覽:863
動態機關裝置設計圖 瀏覽:140
機械設計考研考什麼 瀏覽:81
FM在閥門上端面是什麼 瀏覽:91
踏板摩托車如何拆卸後三角板軸承 瀏覽:185
CO排盡裝置內空氣的作用 瀏覽:754
學機械要看哪些書 瀏覽:786
反應釜里加熱裝置如何設計 瀏覽:144
機械革命z2怎麼還原出廠 瀏覽:489
漢口北五金機電城淹水 瀏覽:926
軸承32202是什麼 瀏覽:698
化學制氧氣實驗裝置 瀏覽:293
香港東成電動工具 瀏覽:515
鋅與硫酸銅反應的實驗裝置 瀏覽:10
視覺錯亂工具箱怎麼開 瀏覽:484
機械硬碟背面怎麼查看儲存容量 瀏覽:528
暖氣關閉回水閥門會影響樓下嗎 瀏覽:662
平陰二機床廠怎麼樣 瀏覽:337
檢查閥門不正確的方法是什麼 瀏覽:704
油茶需要哪些設備嗎 瀏覽:35