機械優(yōu)化設(shè)計作業(yè)_第1頁
機械優(yōu)化設(shè)計作業(yè)_第2頁
機械優(yōu)化設(shè)計作業(yè)_第3頁
機械優(yōu)化設(shè)計作業(yè)_第4頁
機械優(yōu)化設(shè)計作業(yè)_第5頁
已閱讀5頁,還剩10頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

合肥工業(yè)大學

《機械優(yōu)化設(shè)計》課程實踐

研究報告

目錄

一、幾=0.618的證明......................................1

二、一維搜索程序作業(yè)..................................1

(1)例1程序文本..............................................1

(2)例1輸出結(jié)果截圖..........................................2

(1)例2程序文本..............................................2

(2)例2輸出結(jié)果截圖..........................................3

三、單位矩陣程序作業(yè)................................4

(1)程序文本..................................................4

(2)輸出結(jié)果截圖..............................................4

四、連桿機構(gòu)問題....................................6

(1)目標函數(shù)..................................................6

(2)約束條件.................................................7

(3)選擇方法..................................................7

(4)程序文本.................................................7

(5)數(shù)據(jù)輸入截圖...............................................8

(6)輸出結(jié)果..................................................9

五、自行選擇小型機械設(shè)計問題或其他工程優(yōu)化問題………10

(1)設(shè)計變量..................................................10

(2)目標函數(shù).................................................10

(3)約束條件..................................................10

(4)程序文本.................................................10

(5)數(shù)據(jù)輸入截圖...............................................11

(6)輸出數(shù)據(jù)..................................................11

六、機械優(yōu)化設(shè)計課程實踐心得體會.......................13

2

一、2=0.618的證明

在實際計算中,最常用的一維搜索方法是黃金分割法。黃金分割法是建立在區(qū)間消去法

原理基礎(chǔ)上的試探方法,即在搜索區(qū)間卜,司內(nèi)適當插入兩點a』a2。并且計算其函數(shù)值。

黃金分割法要求插入點,02的位置相對于區(qū)間兩端點具有對稱性,即

a)、a?="+%(〃—〃)、其中丸為待定常數(shù)。

除對稱要求外,黃金分割法還要求保留下來的區(qū)間內(nèi)再再插入?點,所形成的區(qū)間新三

段與原來的區(qū)間三段具有相同的比例分布。設(shè)原區(qū)間“長度為1,保留下來的區(qū)間

Lz,a』長度為4,區(qū)間縮短率為丸。為了保持想相同的比例分布,新插入點應該在

2(1-㈤位置上,在原區(qū)間的1-4位置應該相當于在保留區(qū)間的;位置。故有

1-2=才

2+2-1-0

取方程正數(shù)解,得

J5-1

2=^^?0.618

2

二、一維搜索程序作業(yè)

例1、a=0,b=2/r,f(x)=cosx

(1)例1程序文本

#include<stdio.h>

include<math.h>

voidmain()

{floatA,B,C=0.618,aa[3],y[3],D;

scanf("%f,%f,%F',&A,&B,&D):

aa[l]=B-C*(B-A);

aa[2]=A+C*(B-A);

y[l]=cos(aa[l]);

y[2]=cos(aa[2]);

do{if(y[l]>y[2])

{A=aa[l];aafl]=aa[2];yfl]=y[2];

aa[2]=A+C*(B-A);

Else

{B=aa[2];aa[2]=aa[l];y[2]=y[l];

aa[l]=B-C*(B-A);

y[l]=cos(aa[l]);

)

)

While(fabs(B-A)/B>D);

aa[0]=(A+B)/2;

y[0]=cos(aa[0]);

printfCuA=%f\n,,,aa[O]);

printfCly=%f\n,,,y[O]);

(2)例1輸出結(jié)果截圖:

輸入a=0,b=2乃,精度d=0.000001,輸出極小值點和函數(shù)極小值如下:

例2、a=0,b=10,f(x)=(x-2)2+3

(3)例2、程序文本

#include<stdio.h>

#incIude<math.h>

voidmain()

{fIoata,b,c=0.618,aa[3],y[3],d;

scanf("%f,%f,%f",&a,&b,&d);

aa[1]=b-c*(b-a);

2

aa[2]=a+c*(b-a);

y[1]=(aa[1]-2)*(aa[1]-2)+3;

y[2]=(aa[2]-2)*(aa[2]-2)+3;

do{if(y[1]>y[2])

{a=aa[1];aa[1]=aa[2];y[1]=y[2];

aa[2]=a+c*(b-a);

y[2]=(aa[2]-2)*(aa[2]-2)+3;

{b=aa[2];aa[2]=aa[1];y[2]=y[1];

aa[1]=b-c*(b-a);

y[1]=(aa[1]-2)*(aa[1]-2)+3;

}

}whiIe(fabs((b-a)/b)>d);

aa[O]=(a+b)/2;

y[0]=(aa[O]-2)*(aa[0]-2)+3;

printf(z,a*=%f\nz,,aa[0]);

printf("y=%f\n",y[0]);

}一

(4)例2輸出結(jié)果截圖:

輸入a=0,b=10,精度d=0.000001,輸入極小值點和函數(shù)極小值如下:

3

三、單位矩陣程序作業(yè)

作業(yè):編寫生成單位矩陣的程序。

要求:通用、輸出美觀、語言少為佳。

(1)程序文本

#include<stdio.h>

voidmain(void)

#definem500

(

inti,j,n,a[m][m];

printf(z,pIeaseinputanumber");

scanf&n);

for(i=1;i<=n;i++)

{for(j=1;j<=n;j++)

(

if(i=j)

a[i][j]=1;

eIse

a[i][j]=0;

printf("%d",a[i][j]);

)

printf(z,\n,z);

}

)

(2)輸出結(jié)果截圖:

當n=4時,輸出結(jié)果如下:

4

■"D:\MicrosoftVisualStudio\Common\MSDev98\Bin\Debug\Cppl.exe*[0畫

pleaseinputanumber4

1000

0100

0010

0001

Pressanykeytocontinue

0

當n=12時,輸出結(jié)果如下:

5

四、連桿機構(gòu)問題

設(shè)計一曲柄搖桿機構(gòu),要求曲柄L從仰轉(zhuǎn)到外=%+90°時,搖桿4的轉(zhuǎn)角最佳

再現(xiàn)已知的運動規(guī)律:%.="o+,(夕-*0)2且已知,乙=5,00為極位角,

2萬

其傳動角允許在40。4/4135°范圍內(nèi)變化。

設(shè)計變量

該機構(gòu)的運動簡圖如上圖所示。在這個問題中,已知/尸1,乙=5且和〃°不

是獨立參數(shù),

它們可由下式求出:

(1+。-I;+25

00=arccos

10(1+/2)

(1+。Y-25

〃o=arccos

所以還問題只有兩個獨立參數(shù)和乙,因此設(shè)計變量為

T

X=[X?,X2]'=[/2,/3]

(1)目標函數(shù)

將輸入角分成30等分,并用近似公式計算,可得目標函數(shù)的表達式

302

f(x)=Z[(%一夕,)M一夕,)]

1=1

式中心當°%時的機構(gòu)實際輸出角,其計算公式為匕=a「A

式中

6

「2+24、

/?.二arccos=arccos

r產(chǎn)(/:+/:-2/jZ4cos(pt)2=(26-10cos(pi)2

為當時的理想輸出角,其值由下式計算

_,2/、2

〃玲,o+丁3一。0)

3乃

(2)約束條件

平面錢鏈四桿機構(gòu)常用的約束條件有曲柄存在條件和傳動角條件。由此得約

束條件為

g](x)=-x1<0>g2(x)=-x2<0>g3(x)=6-Xj-x2<0

g4(x)=%j-x2-4<0>g5(x)=x2-4<0

g6(x)=x;+x;-1.414x^2-16<0>g6(x)=36-x;-x;-i.414x1x2<0

(3)選擇方法

采用懲罰函數(shù)法進行計算。

(4)程序文本

procedureffx;//目標函數(shù)

varpO,qO,p,Ri,A,B,Q,Qi,K:real;

i:integer;

begin

withforml.sumtdobegin

pO:=ArcCos((sqr(1,0+X[1])-Xl2J*x[2]+25.0)/(10.0*(1.0+X[lJ)));

q0:=ArcCos((sqr(1.0+x[l])-x[2]*x[2]-25.0)/(10.0*x[2]));

K:=90.0/30.0*(3.1415926/180.0);

fx:=0;

fori:=0to30do;

begin

P:=i*K+p0;

Qi:=q0+2.0*sqr(P-p0)/(3.0*3.1415926);

Ri:=sqrt(26.0-10.0*cos(P));

A:=ArcCos((Ri*Ri+x⑵*x⑵?x[l]*x[l])/(2.0*Ri*x⑵));

B:=ArcCos((Ri*Ri+24.0)/(10.0*Ri));

7

Q:=3.14159-A-B;

fx:=fx+sqr(Q-Qi)*K;

end;

end;

end;

procedureggx;〃約束函數(shù)

begin

withforml.sumtdobegin

gx[l]:="x[l];

gx[2]:=-x[2];

gx[3]:=6.0-x[l]-x[21;

gx[4]:=x[l]-x[2]-4.0;

gx[5]:=x[2]-x[l]-4.0;

gx[6]:=x[l]*x[l]+x[2]*x[2]-1.414*x[l]*x[2]-16;

gx[7]:=36-x[l]*x[l]-x[2]*x[2]-1.414*x[l]*x[2];

end;

end;

procedurehhx;

begin

withform1.sumtdobeging

hx[l]:=hx[l];

end;

end;

End.

(5)數(shù)據(jù)輸入截圖

8

輸入初始點為(5,5),精度為0.001

(6)輸出結(jié)果

9

五、自行選擇小型機械設(shè)計問題或其他工程優(yōu)化問題

某車間生產(chǎn)甲、乙兩種產(chǎn)品。生產(chǎn)甲種產(chǎn)品每件需要材料9kg、3個工時、4kw

電,可獲利60元。生產(chǎn)乙種產(chǎn)品每件需材料4kg、10個工時、5kw電,可獲利

120元。若每天能供應材料360kg,有300個工時,能供200kw電,問每天生產(chǎn)

甲、乙兩種產(chǎn)品各多少件,才能夠獲得最大的利潤。

(1)設(shè)計變量

設(shè)每天生產(chǎn)的甲、乙兩種產(chǎn)品分別為西、々件。

因此設(shè)計變量為X=[盯,X217

(2)目標函數(shù)

此問題的數(shù)學模型為f(為,/)=60*+120々->max

所以目標函數(shù)的表達式為minf(x)=-60玉-120/

(3)約束條件

依題意得約束條件為:

X120、20、

9^+4^-360<0(材料約束)

3X,+10X2-300<0(工時約束)

4X,+5X2-200<0(電力約束)

(4)程序文本

procedureffx;〃目標函數(shù)

begin

withforml.hfgddobegin

NFX:=NFX+1;

fx:=-60*x[l]-l20*x[2];

end;

end;

procedureggx;〃約束函數(shù)

begin

withforml.hfgddobegin

gx[l]:=9*x[l]+4*x[2]-360;

gx[2]:=3*x[l]+10*x[2]-300;

gx[3]:=4*x[l]+5*x[2]-200;

gx[4]:=-x[l];

gx[5]:=-x[2];

end;

io

end;

(5)輸入數(shù)據(jù)截圖

(6)輸出數(shù)據(jù)

常用優(yōu)化方法——約束隨機法

AAAAAAAAAAAAAAAAAAAAAAAAAAA

一、初始數(shù)據(jù)

設(shè)計變量個數(shù)N=2不等式約束個數(shù)KG=5

隨機方向個數(shù)NSR=6

初始步長TO=0.001收斂精度EPS=0.0001

設(shè)計變量初始點X0:

X[l]=10

X[2]=10

設(shè)計變量下界BL:

BL[1]=O

11

BL[2]=0

設(shè)計變量上界BU:

BU[1]=1OO

BU[2]=100

初始點目標函數(shù)值F(X0)=-1800

初始點處的不等約束函數(shù)值G(XO):

GX[1]=-2.300000E+02

GX[21=-1.700000E+02

GX[3]=-1.100000E+02

GX[

溫馨提示

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

評論

0/150

提交評論