matlab(四連桿優(yōu)化設(shè)計(jì)).doc
《matlab(四連桿優(yōu)化設(shè)計(jì)).doc》由會員分享,可在線閱讀,更多相關(guān)《matlab(四連桿優(yōu)化設(shè)計(jì)).doc(9頁珍藏版)》請?jiān)谘b配圖網(wǎng)上搜索。
機(jī)械優(yōu)化設(shè)計(jì)在matlab中的應(yīng)用 東南大學(xué)機(jī)械工程學(xué)院*一 優(yōu)化設(shè)計(jì)目的:在生活和工作中,人們對于同一個問題往往會提出多個解決方案,并通過各方面的論證從中提取最佳方案。最優(yōu)化方法就是專門研究如何從多個方案中科學(xué)合理地提取出最佳方案的科學(xué)。由于優(yōu)化問題無所不在,目前最優(yōu)化方法的應(yīng)用和研究已經(jīng)深入到了生產(chǎn)和科研的各個領(lǐng)域,如土木工程、機(jī)械工程、化學(xué)工程、運(yùn)輸調(diào)度、生產(chǎn)控制、經(jīng)濟(jì)規(guī)劃、經(jīng)濟(jì)管理等,并取得了顯著的經(jīng)濟(jì)效益和社會效益。二 優(yōu)化設(shè)計(jì)步驟:1.機(jī)械優(yōu)化設(shè)計(jì)的全過程一般可以分為如下幾個步驟:1)建立優(yōu)化設(shè)計(jì)的數(shù)學(xué)模型;2)選擇適當(dāng)?shù)膬?yōu)化方法;3)編寫計(jì)算機(jī)程序;4)準(zhǔn)備必要的初始數(shù)據(jù)并傷及計(jì)算;5)對計(jì)算機(jī)求得的結(jié)果進(jìn)行必要的分析。其中建立優(yōu)化設(shè)計(jì)數(shù)學(xué)模型是首要的和關(guān)鍵的一步,它是取得正確結(jié)果的前提。優(yōu)化方法的選取取決于數(shù)學(xué)模型的特點(diǎn),例如優(yōu)化問題規(guī)模的大小,目標(biāo)函數(shù)和約束函數(shù)的性態(tài)以及計(jì)算精度等。在比較各種可供選用的優(yōu)化方法時,需要考慮的一個重要因素是計(jì)算機(jī)執(zhí)行這些程序所花費(fèi)的時間和費(fèi)用,也即計(jì)算效率。2.建立數(shù)學(xué)模型的基本原則與步驟 設(shè)計(jì)變量的確定;設(shè)計(jì)變量是指在優(yōu)化設(shè)計(jì)的過程中,不斷進(jìn)行修改,調(diào)整,一直處于變化的參數(shù)稱為設(shè)計(jì)變量。設(shè)計(jì)變量的全體實(shí)際上是一組變量,可用一個列向量表示:x=。 目標(biāo)函數(shù)的建立;選擇目標(biāo)函數(shù)是整個優(yōu)化設(shè)計(jì)過程中最重要的決策之一。當(dāng)對某以設(shè)計(jì)性能有特定的要求,而這個要求有很難滿足時,則針對這一性能進(jìn)行優(yōu)化會得到滿意的效果。目標(biāo)函數(shù)是設(shè)計(jì)變量的函數(shù),是一項(xiàng)設(shè)計(jì)所追求的指標(biāo)的數(shù)學(xué)反映,因此它能夠用來評價設(shè)計(jì)的優(yōu)劣。目標(biāo)函數(shù)的一般表達(dá)式為:f(x)=,要根據(jù)實(shí)際的設(shè)計(jì)要求來設(shè)計(jì)目標(biāo)函數(shù)。 約束條件的確定。一個可行性設(shè)計(jì)必須滿足某些設(shè)計(jì)限制條件,這些限制條件稱為約束條件,簡稱約束。由若干個約束條件構(gòu)成目標(biāo)函數(shù)的可行域,而可行域內(nèi)的所有設(shè)計(jì)點(diǎn)都是滿足設(shè)計(jì)要求的,一般情況下,其設(shè)計(jì)可行域可表示為 在可行域中,任意設(shè)計(jì)點(diǎn)滿足全部約束條件,稱為可行解,但不是最優(yōu)解,而優(yōu)化設(shè) 計(jì)就是要求出目標(biāo)函數(shù)在可行域的最優(yōu)解。三 實(shí)例分析 (機(jī)械優(yōu)化設(shè)計(jì)P241頁例8-5)設(shè)計(jì)一曲柄搖桿機(jī)構(gòu)如圖,要求:曲柄從且已知范圍內(nèi)變化。分析:1) 設(shè)計(jì)變量的確定決定機(jī)構(gòu)尺寸的各桿長度,以及當(dāng)搖桿按已知運(yùn)動規(guī)律開始運(yùn)行時,曲柄所載的位置角應(yīng)列為設(shè)計(jì)變量,即:X= 考慮到機(jī)構(gòu)的桿長按比例變化時,不會改變其運(yùn)動規(guī)律,因此在計(jì)算時常取,而其他桿長則按比例取為的倍數(shù)。若取曲柄的初始位置角為極位角,則及相應(yīng)搖桿位置角均為桿長的函數(shù),幾何圖形關(guān)系如右圖,其關(guān)系式為: =arcos (1) =arcos (2)將的長度代入上式(1),(2)得到:=arcos =arcos因此,只有為獨(dú)立變量,設(shè)計(jì)變量減少,故最后的設(shè)計(jì)變量為: X=2) 目標(biāo)函數(shù)的建立目標(biāo)函數(shù)可根據(jù)已知的運(yùn)動規(guī)律與機(jī)構(gòu)實(shí)際運(yùn)動規(guī)律之間的偏差最小為指標(biāo)來建立,即f(x)= min式中 期望輸出角,; m 輸入角等分?jǐn)?shù); 實(shí)際輸出角,由下圖得:a) 0 youhuax = 4.1574 2.2909 %最優(yōu)解fval = 5.1899e-004 %目標(biāo)函數(shù)最優(yōu)點(diǎn)的值 exitflag = 5 %標(biāo)志值,5表示重要方向?qū)?shù)小于規(guī)定的容許范圍并且約束違背小于options.ToLCon output = iterations: 12 %迭代次數(shù) funcCount: 40 %函數(shù)的評價次數(shù) lssteplength: 1 stepsize: 7.6955e-005 algorithm: medium-scale: SQP, Quasi-Newton, line-search %采用的中型算法 firstorderopt: 1.0832e-006 %一階最優(yōu)性條件 constrviolation: -1.0852e-006 message: 1x780 char %跳出信息lambda = lower: 2x1 double upper: 2x1 double eqlin: 0x1 double eqnonlin: 0x1 double ineqlin: 5x1 double ineqnonlin: 2x1 doublegrad = %函數(shù)在最優(yōu)點(diǎn)處梯度信息 1.0e-003 * 0.4888 0.4445hessian = %函數(shù)在最優(yōu)點(diǎn)處海塞矩陣 0.0016 0.0075 0.0075 0.04685)結(jié)果分析 采用fmincon求解的最優(yōu)值:=4.1574; 2.2909;;采用算法:中型算法(mediun-scale)。這與課本給出的最優(yōu)解:=4.1286;2.3325,=0.0156相比,計(jì)算精度更高,最優(yōu)解的數(shù)值更精確,故計(jì)算準(zhǔn)確度高。 用matlab繪制輸入輸出曲線關(guān)系圖上圖中(單位為“度”)藍(lán)色的線代表曲柄搖桿機(jī)構(gòu)的實(shí)際輸出角與輸入角的關(guān)系,紅色的線代表理想輸出角與輸入角的關(guān)系??梢钥闯觯簩?shí)際輸出和理論輸出曲線之間存在線性誤差,其最大線性誤差為,誤差在允許的范圍之內(nèi),故結(jié)果的可信度也較大,運(yùn)用matlab優(yōu)化工具箱計(jì)算所得結(jié)果正確。小結(jié)通過結(jié)合實(shí)際問題的分析,計(jì)算,求解,更加深入地了解和掌握機(jī)械優(yōu)化設(shè)計(jì)的過程和步驟,比較重要的步驟是數(shù)學(xué)模型的建立,以及設(shè)計(jì)變量的選取,以及數(shù)學(xué)模型的尺度變換,根據(jù)機(jī)構(gòu)實(shí)際工作需要,建立目標(biāo)函數(shù)的約束條件等等,當(dāng)數(shù)學(xué)模型建好以后,剩下的工作可以再matlab里面完成,而matlab里面的優(yōu)化工具箱,給用戶提供了多種優(yōu)化函數(shù),使用者只需要將數(shù)學(xué)模型按要求編寫成子程序嵌入已有的優(yōu)化程序即可。 在設(shè)計(jì)過程中也遇到一些困難,比如說在在用matlab計(jì)算時,計(jì)算機(jī)已知處于busy狀態(tài),得不到函數(shù)的最優(yōu)解,最后反復(fù)的檢查,終于找的了其原因,是由于初始點(diǎn)選擇不恰當(dāng)引起的,如果初始點(diǎn)選擇得好,可以節(jié)省計(jì)算時間和計(jì)算空間,故初始點(diǎn)的選取比較重要。 附錄1. 編寫目標(biāo)函數(shù)M文件myfun.m: function f=myfun(x) f=0; %函數(shù)f賦初值a0=acos(1+x(1)2-x(2)2+25)/(10*(1+x(1); %初始計(jì)算點(diǎn)曲柄和搖桿的角度b0=acos(1+x(1)2-x(2)2-25)/(10*x(2);i=2;while(i=31) %設(shè)置迭代次數(shù)為30次 a(i)=a0+(pi/2)*(i/30); % 計(jì)算曲柄各分度的角度值 b(i)=b0+2*(a(i)-a0)2/(3*pi); % 計(jì)算搖桿各分度的角度值 r=sqrt(26-10*cos(a(i); c(i)=acos(r2+x(2)2-x(1)2)/(2*x(2)*r); d(i)=acos(r2+24)/(10*r); if a(i)=pi e(i)=pi-c(i)-d(i); %計(jì)算搖桿輸出的實(shí)際值 else if a(i)=2*pi e(i)=pi-c(i)+d(i); end end a(1)=a0; f=f+(b(i)-e(i)2)*(a(i)-a(i-1); %目標(biāo)函數(shù)的計(jì)算 i=i+1; end2. 編寫非線性不等式約束M文件constrain.m: functionc ceq=constrain(x)c=36-x(1)2-x(2)2-1.414*x(1)*x(2); x(1)2+x(2)2-1.414*x(1)*x(2)-16; %非線性不等式約束 ceq=;3. 調(diào)用fmincon優(yōu)化函數(shù),建立youhua.m文件: lb=1;1; %設(shè)計(jì)變量的下界 x0=4;2; %迭代初始點(diǎn)A=-1,0;0,-1;-1,-1;1,-1;-1,1; %線性不等式約束b=-1;-1;-6;4;4;options=optimset(largescale,off,display,off,Algohm,active-set,TolFun,1e-9); %采用中型算法,設(shè)計(jì)精度為1e-9x,fval,exitflag,output=fmincon(myfun,x0,A,b,lb,constrain,options) %調(diào)用fmincon函數(shù)- 1.請仔細(xì)閱讀文檔,確保文檔完整性,對于不預(yù)覽、不比對內(nèi)容而直接下載帶來的問題本站不予受理。
- 2.下載的文檔,不會出現(xiàn)我們的網(wǎng)址水印。
- 3、該文檔所得收入(下載+內(nèi)容+預(yù)覽)歸上傳者、原創(chuàng)作者;如果您是本文檔原作者,請點(diǎn)此認(rèn)領(lǐng)!既往收益都?xì)w您。
下載文檔到電腦,查找使用更方便
9.9 積分
下載 |
- 配套講稿:
如PPT文件的首頁顯示word圖標(biāo),表示該P(yáng)PT已包含配套word講稿。雙擊word圖標(biāo)可打開word文檔。
- 特殊限制:
部分文檔作品中含有的國旗、國徽等圖片,僅作為作品整體效果示例展示,禁止商用。設(shè)計(jì)者僅對作品中獨(dú)創(chuàng)性部分享有著作權(quán)。
- 關(guān) 鍵 詞:
- matlab 連桿 優(yōu)化 設(shè)計(jì)
鏈接地址:http://m.italysoccerbets.com/p-6649448.html