結(jié)構(gòu)力學(xué)優(yōu)化算法:靈敏度分析:結(jié)構(gòu)力學(xué)基礎(chǔ)理論_第1頁
結(jié)構(gòu)力學(xué)優(yōu)化算法:靈敏度分析:結(jié)構(gòu)力學(xué)基礎(chǔ)理論_第2頁
結(jié)構(gòu)力學(xué)優(yōu)化算法:靈敏度分析:結(jié)構(gòu)力學(xué)基礎(chǔ)理論_第3頁
結(jié)構(gòu)力學(xué)優(yōu)化算法:靈敏度分析:結(jié)構(gòu)力學(xué)基礎(chǔ)理論_第4頁
結(jié)構(gòu)力學(xué)優(yōu)化算法:靈敏度分析:結(jié)構(gòu)力學(xué)基礎(chǔ)理論_第5頁
已閱讀5頁,還剩9頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

結(jié)構(gòu)力學(xué)優(yōu)化算法:靈敏度分析:結(jié)構(gòu)力學(xué)基礎(chǔ)理論1結(jié)構(gòu)力學(xué)基礎(chǔ)1.1應(yīng)力與應(yīng)變的概念1.1.1應(yīng)力應(yīng)力(Stress)是材料內(nèi)部單位面積上所承受的力,是結(jié)構(gòu)力學(xué)分析中的基本概念。在結(jié)構(gòu)分析中,我們通常關(guān)注三種類型的應(yīng)力:正應(yīng)力(NormalStress)、剪應(yīng)力(ShearStress)和扭轉(zhuǎn)應(yīng)力(TorsionalStress)。正應(yīng)力是垂直于材料截面的力,剪應(yīng)力是平行于材料截面的力,而扭轉(zhuǎn)應(yīng)力則是在材料受到扭轉(zhuǎn)作用時產(chǎn)生的。1.1.2應(yīng)變應(yīng)變(Strain)是材料在受力作用下發(fā)生的變形程度,通常用無量綱的比值來表示。應(yīng)變分為線應(yīng)變(LinearStrain)和剪應(yīng)變(ShearStrain)。線應(yīng)變是材料長度變化與原長的比值,剪應(yīng)變是材料在剪切力作用下角度的改變。1.1.3應(yīng)力應(yīng)變關(guān)系在彈性范圍內(nèi),應(yīng)力與應(yīng)變之間遵循胡克定律(Hooke’sLaw),即應(yīng)力與應(yīng)變成正比,比例常數(shù)為材料的彈性模量(ElasticModulus)。#示例代碼:計算正應(yīng)力

#定義變量

force=1000#力,單位:牛頓(N)

area=0.01#截面積,單位:平方米(m^2)

#計算正應(yīng)力

stress=force/area

#輸出結(jié)果

print(f"正應(yīng)力為:{stress}Pa")1.2材料力學(xué)性質(zhì)材料的力學(xué)性質(zhì)是結(jié)構(gòu)設(shè)計和分析的重要依據(jù),主要包括彈性模量、泊松比、屈服強度、極限強度等。1.2.1彈性模量彈性模量(ElasticModulus)是材料在彈性范圍內(nèi)應(yīng)力與應(yīng)變的比值,反映了材料抵抗彈性變形的能力。1.2.2泊松比泊松比(Poisson’sRatio)是材料橫向應(yīng)變與縱向應(yīng)變的比值,描述了材料在受力時橫向收縮與縱向伸長的關(guān)系。1.2.3屈服強度與極限強度屈服強度(YieldStrength)是材料開始發(fā)生塑性變形的應(yīng)力值,而極限強度(UltimateStrength)是材料所能承受的最大應(yīng)力值。1.3結(jié)構(gòu)的靜力學(xué)分析靜力學(xué)分析(StaticAnalysis)是結(jié)構(gòu)力學(xué)中最基本的分析方法,用于計算結(jié)構(gòu)在靜止狀態(tài)下受到的力和變形。在靜力學(xué)分析中,我們通常關(guān)注結(jié)構(gòu)的平衡條件,即所有作用力的合力為零,所有力矩的合力矩也為零。1.3.1示例:計算梁的彎矩假設(shè)有一根簡支梁,長度為4米,受到中間點的集中力作用,力的大小為1000牛頓。#示例代碼:計算簡支梁的彎矩

#定義變量

length=4#梁的長度,單位:米(m)

force=1000#集中力的大小,單位:牛頓(N)

#計算彎矩

moment=(length/2)*force

#輸出結(jié)果

print(f"梁的彎矩為:{moment}Nm")1.4結(jié)構(gòu)的動力學(xué)分析動力學(xué)分析(DynamicAnalysis)考慮了結(jié)構(gòu)在動態(tài)載荷作用下的響應(yīng),包括振動、沖擊和疲勞等。動力學(xué)分析通常需要解決動力學(xué)方程,即牛頓第二定律在結(jié)構(gòu)力學(xué)中的應(yīng)用。1.4.1示例:計算單自由度系統(tǒng)的振動頻率假設(shè)一個單自由度系統(tǒng),質(zhì)量為1千克,彈簧剛度為100牛頓/米。#示例代碼:計算單自由度系統(tǒng)的振動頻率

importmath

#定義變量

mass=1#質(zhì)量,單位:千克(kg)

stiffness=100#彈簧剛度,單位:牛頓/米(N/m)

#計算振動頻率

frequency=1/(2*math.pi)*math.sqrt(stiffness/mass)

#輸出結(jié)果

print(f"單自由度系統(tǒng)的振動頻率為:{frequency}Hz")以上內(nèi)容涵蓋了結(jié)構(gòu)力學(xué)基礎(chǔ)理論中的關(guān)鍵概念和分析方法,包括應(yīng)力與應(yīng)變、材料力學(xué)性質(zhì)、靜力學(xué)分析和動力學(xué)分析。通過理解和應(yīng)用這些原理,可以進行更深入的結(jié)構(gòu)優(yōu)化和設(shè)計工作。2結(jié)構(gòu)優(yōu)化理論2.1優(yōu)化算法簡介在結(jié)構(gòu)優(yōu)化領(lǐng)域,優(yōu)化算法扮演著核心角色,它們用于尋找在給定目標和約束條件下的最優(yōu)設(shè)計。優(yōu)化算法可以大致分為兩大類:確定性算法和隨機性算法。2.1.1確定性算法確定性算法包括梯度法、牛頓法、擬牛頓法等,它們基于目標函數(shù)的梯度信息進行迭代優(yōu)化。例如,梯度法通過計算目標函數(shù)的梯度,沿著梯度的反方向進行搜索,逐步逼近最優(yōu)解。2.1.2隨機性算法隨機性算法如遺傳算法、粒子群優(yōu)化算法、模擬退火算法等,它們不依賴于目標函數(shù)的梯度信息,而是通過模擬自然界的進化過程或物理現(xiàn)象來尋找最優(yōu)解。遺傳算法是一種常用的隨機性優(yōu)化算法,它模仿生物進化過程,通過選擇、交叉、變異等操作,逐步優(yōu)化種群中的個體,最終找到最優(yōu)解。#遺傳算法示例

importnumpyasnp

fromdeapimportbase,creator,tools,algorithms

#定義問題的類型,最大化或最小化

creator.create("FitnessMax",base.Fitness,weights=(1.0,))

creator.create("Individual",list,fitness=creator.FitnessMax)

#創(chuàng)建工具箱

toolbox=base.Toolbox()

#定義個體的基因范圍

toolbox.register("attr_bool",np.random.randint,2)

#定義個體的結(jié)構(gòu)

toolbox.register("individual",tools.initRepeat,creator.Individual,toolbox.attr_bool,n=10)

#定義種群的結(jié)構(gòu)

toolbox.register("population",tools.initRepeat,list,toolbox.individual)

#定義評估函數(shù)

defevalOneMax(individual):

returnsum(individual),

#注冊評估函數(shù)

toolbox.register("evaluate",evalOneMax)

#定義交叉和變異操作

toolbox.register("mate",tools.cxTwoPoint)

toolbox.register("mutate",tools.mutFlipBit,indpb=0.05)

#定義選擇操作

toolbox.register("select",tools.selTournament,tournsize=3)

#創(chuàng)建初始種群

pop=toolbox.population(n=300)

#進行遺傳算法優(yōu)化

result,logbook=algorithms.eaSimple(pop,toolbox,cxpb=0.5,mutpb=0.2,ngen=40,verbose=True)2.2結(jié)構(gòu)優(yōu)化的目標與約束結(jié)構(gòu)優(yōu)化的目標通常是為了在滿足一定約束條件下,使結(jié)構(gòu)的性能達到最優(yōu)。這些目標可以是結(jié)構(gòu)的重量最小化、成本最小化、剛度最大化等。約束條件則包括結(jié)構(gòu)的強度、穩(wěn)定性、幾何尺寸限制等。2.2.1目標函數(shù)目標函數(shù)是優(yōu)化算法試圖最小化或最大化的函數(shù)。例如,最小化結(jié)構(gòu)的重量可以表示為目標函數(shù)。2.2.2約束條件約束條件限制了設(shè)計空間,確保優(yōu)化結(jié)果在實際中是可行的。例如,結(jié)構(gòu)的強度不能低于某一閾值,這可以表示為一個約束條件。2.3拓撲優(yōu)化與形狀優(yōu)化拓撲優(yōu)化和形狀優(yōu)化是結(jié)構(gòu)優(yōu)化中的兩種重要方法,它們分別關(guān)注結(jié)構(gòu)內(nèi)部材料分布的優(yōu)化和結(jié)構(gòu)外部形狀的優(yōu)化。2.3.1拓撲優(yōu)化拓撲優(yōu)化允許材料在設(shè)計空間內(nèi)的自由分布,以尋找最優(yōu)的材料布局。這種方法特別適用于尋找輕量化結(jié)構(gòu)的設(shè)計。2.3.2形狀優(yōu)化形狀優(yōu)化關(guān)注于結(jié)構(gòu)外部形狀的優(yōu)化,以提高結(jié)構(gòu)的性能。例如,通過改變梁的截面形狀,可以提高梁的承載能力。2.4尺寸優(yōu)化與材料優(yōu)化尺寸優(yōu)化和材料優(yōu)化是結(jié)構(gòu)優(yōu)化中的另外兩種方法,它們分別關(guān)注結(jié)構(gòu)尺寸的優(yōu)化和材料選擇的優(yōu)化。2.4.1尺寸優(yōu)化尺寸優(yōu)化旨在尋找結(jié)構(gòu)各部分的最佳尺寸,以滿足性能要求的同時,盡可能減少材料的使用。2.4.2材料優(yōu)化材料優(yōu)化則是在多種材料中選擇最優(yōu)的材料組合,以達到結(jié)構(gòu)性能的最佳化。例如,在復(fù)合材料結(jié)構(gòu)中,通過優(yōu)化纖維的布局和基體材料的選擇,可以提高結(jié)構(gòu)的強度和剛度。以上內(nèi)容概述了結(jié)構(gòu)優(yōu)化理論中的幾個關(guān)鍵概念,包括優(yōu)化算法、目標與約束、拓撲優(yōu)化與形狀優(yōu)化、尺寸優(yōu)化與材料優(yōu)化。通過理解和應(yīng)用這些理論,可以有效地提高結(jié)構(gòu)設(shè)計的效率和性能。3靈敏度分析3.1靈敏度分析的基本原理靈敏度分析是結(jié)構(gòu)優(yōu)化設(shè)計中的關(guān)鍵步驟,它研究結(jié)構(gòu)響應(yīng)(如位移、應(yīng)力、頻率等)對設(shè)計變量(如截面尺寸、材料屬性、幾何形狀等)變化的敏感程度。通過靈敏度分析,可以確定哪些設(shè)計變量對結(jié)構(gòu)性能有顯著影響,從而指導(dǎo)優(yōu)化算法更高效地搜索最優(yōu)解。3.1.1靈敏度定義靈敏度通常定義為結(jié)構(gòu)響應(yīng)對設(shè)計變量的導(dǎo)數(shù)。例如,對于結(jié)構(gòu)的位移響應(yīng)u對設(shè)計變量x的靈敏度,可以表示為:?3.1.2靈敏度分析的重要性指導(dǎo)優(yōu)化方向:靈敏度信息幫助優(yōu)化算法確定設(shè)計變量的調(diào)整方向,以最小化目標函數(shù)。提高優(yōu)化效率:通過分析靈敏度,可以減少不必要的設(shè)計變量,加快優(yōu)化過程。評估設(shè)計穩(wěn)定性:靈敏度分析可以評估設(shè)計對參數(shù)變化的敏感性,確保設(shè)計的穩(wěn)健性。3.2直接微分法直接微分法是在求解結(jié)構(gòu)力學(xué)問題時,直接對結(jié)構(gòu)的平衡方程進行微分,以計算靈敏度。這種方法適用于線性和非線性問題,但計算成本較高,因為需要求解額外的微分方程。3.2.1實現(xiàn)步驟建立平衡方程:首先,根據(jù)結(jié)構(gòu)力學(xué)原理,建立結(jié)構(gòu)的平衡方程。微分平衡方程:對平衡方程進行微分,得到關(guān)于設(shè)計變量的靈敏度方程。求解靈敏度方程:使用數(shù)值方法求解靈敏度方程,得到設(shè)計變量的靈敏度。3.2.2示例代碼假設(shè)我們有一個簡單的彈簧-質(zhì)量系統(tǒng),其平衡方程為kx=F,其中k是彈簧剛度,x是位移,F(xiàn)是外力。我們想計算位移ximportnumpyasnp

#定義參數(shù)

k=100#彈簧剛度

F=10#外力

x=F/k#初始位移

#微分平衡方程得到靈敏度方程

#對k微分得到:dx/dk=-x/k^2

dx_dk=-x/(k**2)

#輸出靈敏度

print("位移對彈簧剛度的靈敏度:",dx_dk)3.3有限差分法有限差分法是一種數(shù)值方法,通過在設(shè)計變量上施加微小的擾動,計算結(jié)構(gòu)響應(yīng)的變化,從而近似得到靈敏度。這種方法簡單直觀,但計算精度受擾動大小的影響,且對于每個設(shè)計變量都需要獨立的計算,效率較低。3.3.1實現(xiàn)步驟選擇擾動大?。捍_定一個足夠小但又不引起數(shù)值不穩(wěn)定性的擾動量Δx計算擾動后的響應(yīng):對設(shè)計變量施加擾動,計算結(jié)構(gòu)響應(yīng)。計算靈敏度:使用擾動前后的響應(yīng)差值除以擾動量,得到靈敏度的近似值。3.3.2示例代碼繼續(xù)使用彈簧-質(zhì)量系統(tǒng),我們使用有限差分法計算位移對彈簧剛度的靈敏度。importnumpyasnp

#定義參數(shù)

k=100#彈簧剛度

F=10#外力

x=F/k#初始位移

delta_k=1e-6#擾動量

#計算擾動后的位移

x_plus=F/(k+delta_k)

#計算靈敏度

dx_dk_fd=(x_plus-x)/delta_k

#輸出靈敏度

print("位移對彈簧剛度的靈敏度(有限差分法):",dx_dk_fd)3.4解析靈敏度分析解析靈敏度分析是基于結(jié)構(gòu)力學(xué)的解析解,直接計算設(shè)計變量的靈敏度。這種方法在理論上提供了最準確的靈敏度值,但需要結(jié)構(gòu)問題有解析解,且計算過程可能較為復(fù)雜。3.4.1實現(xiàn)步驟解析解:首先,需要有結(jié)構(gòu)問題的解析解。微分解析解:對解析解進行微分,得到設(shè)計變量的靈敏度表達式。計算靈敏度:根據(jù)設(shè)計變量的當前值,計算靈敏度表達式的值。3.4.2示例代碼對于彈簧-質(zhì)量系統(tǒng),我們直接使用解析解計算位移對彈簧剛度的靈敏度。importnumpyasnp

#定義參數(shù)

k=100#彈簧剛度

F=10#外力

#計算位移

x=F/k

#計算靈敏度

dx_dk_analytical=-F/(k**2)

#輸出靈敏度

print("位移對彈簧剛度的靈敏度(解析法):",dx_dk_analytical)通過比較直接微分法、有限差分法和解析靈敏度分析的示例代碼,可以看出解析法在理論上提供了最直接和準確的靈敏度計算,但其適用性受限于問題的解析解是否存在。直接微分法和有限差分法則更為通用,分別適用于需要求解微分方程和通過數(shù)值擾動來近似計算靈敏度的場景。4優(yōu)化算法在結(jié)構(gòu)力學(xué)中的應(yīng)用4.1結(jié)構(gòu)優(yōu)化的數(shù)學(xué)模型在結(jié)構(gòu)力學(xué)領(lǐng)域,結(jié)構(gòu)優(yōu)化的目標是設(shè)計出既滿足性能要求又經(jīng)濟高效的結(jié)構(gòu)。這通常涉及到在多個約束條件下尋找結(jié)構(gòu)參數(shù)(如尺寸、形狀、材料分布等)的最優(yōu)解。結(jié)構(gòu)優(yōu)化的數(shù)學(xué)模型可以表示為:min其中,fx是目標函數(shù),x是設(shè)計變量向量,gix4.1.1示例:橋梁結(jié)構(gòu)優(yōu)化假設(shè)我們正在設(shè)計一座橋梁,目標是最小化其總重量,同時確保橋梁在最大荷載下的應(yīng)力不超過材料的許用應(yīng)力。數(shù)學(xué)模型可以表示為:minsubjectto其中,Vi是第i個結(jié)構(gòu)單元的體積,ρi是材料密度,σix是第i個單元在設(shè)計變量4.2靈敏度分析在優(yōu)化中的作用靈敏度分析是結(jié)構(gòu)優(yōu)化中的關(guān)鍵步驟,它評估設(shè)計變量對目標函數(shù)和約束函數(shù)的影響程度。通過計算目標函數(shù)和約束函數(shù)關(guān)于設(shè)計變量的導(dǎo)數(shù),即靈敏度,優(yōu)化算法可以確定設(shè)計變量的調(diào)整方向和幅度,以更高效地接近最優(yōu)解。4.2.1示例:飛機機翼結(jié)構(gòu)優(yōu)化在飛機機翼結(jié)構(gòu)優(yōu)化中,我們可能希望最小化機翼的重量,同時確保其在飛行中的顫振頻率高于飛機的飛行速度范圍。靈敏度分析可以幫助我們理解機翼幾何參數(shù)(如翼展、翼型等)對重量和顫振頻率的影響。例如,增加翼展可能降低顫振頻率,但同時增加重量,靈敏度分析可以量化這種權(quán)衡。4.3實例分析:橋梁結(jié)構(gòu)優(yōu)化4.3.1代碼示例假設(shè)使用Python和SciPy庫進行橋梁結(jié)構(gòu)優(yōu)化,以下是一個簡化示例:importnumpyasnp

fromscipy.optimizeimportminimize

#定義目標函數(shù):總重量

defobjective(x):

V=np.array([10,20,30])#各結(jié)構(gòu)單元的體積

rho=np.array([7800,7800,7800])#材料密度

returnnp.sum(V*rho*x)

#定義約束函數(shù):應(yīng)力不超過許用應(yīng)力

defconstraint(x):

sigma=np.array([500,600,700])#各單元的應(yīng)力

sigma_allow=800#許用應(yīng)力

returnsigma_allow-np.max(sigma*x)

#初始設(shè)計變量

x0=np.array([0.5,0.5,0.5])

#優(yōu)化

res=minimize(objective,x0,method='SLSQP',constraints={'type':'ineq','fun':constraint})

#輸出結(jié)果

print("Optimizeddesignvariables:",res.x)

print("Minimumweight:",res.fun)4.3.2解釋在這個例子中,我們定義了一個目標函數(shù)objective來計算橋梁的總重量,以及一個約束函數(shù)constraint來確保應(yīng)力不超過許用應(yīng)力。使用SciPy的minimize函數(shù),我們應(yīng)用了SLSQP(序列最小二乘規(guī)劃)算法來尋找最優(yōu)解。結(jié)果輸出了優(yōu)化后的設(shè)計變量和最小總重量。4.4實例分析:飛機機翼結(jié)構(gòu)優(yōu)化飛機機翼的優(yōu)化設(shè)計通常涉及復(fù)雜的流體動力學(xué)和結(jié)構(gòu)動力學(xué)分析,這里提供一個簡化的概念性示例,說明如何使用靈敏度分析來指導(dǎo)優(yōu)化過程。4.4.1代碼示例假設(shè)我們使用Python和一個假設(shè)的流體動力學(xué)庫aerodynamics來分析機翼的顫振頻率和重量,以下是一個簡化示例:importnumpyasnp

fromscipy.optimizeimportminimize

#定義目標函數(shù):總重量

defobjective(x):

#x[0]:翼展,x[1]:翼型厚度比

weight=1000*x[0]+500*x[1]

returnweight

#定義約束函數(shù):顫振頻率高于飛行速度范圍

defconstraint(x):

#假設(shè)的顫振頻率計算函數(shù)

flutter_freq=aerodynamics.flutter_frequency(x[0],x[1])

min_speed=200#最小飛行速度

max_speed=300#最大飛行速度

#假設(shè)的飛行速度范圍內(nèi)的顫振頻率計算函數(shù)

freq_range=aerodynamics.flutter_freq_range(min_speed,max_speed)

returnfreq_range-flutter_freq

#初始設(shè)計變量

x0=np.array([10,0.1])

#優(yōu)化

res=minimize(objective,x0,method='SLSQP',constraints={'type':'ineq','fun':constraint})

#輸出結(jié)果

print("Optimizeddesignvariables:",res.x)

print("Minimumweight:",res.fun)4.4.2解釋在這個示例中,我們定義了一個目標函數(shù)objective來計算機翼的總重量,以及一個約束函數(shù)constraint來確保顫振頻率高于飛行速度范圍。我們使用了aerodynamics庫中的假設(shè)函數(shù)來計算顫振頻率和飛行速度范圍內(nèi)的顫振頻率。通過minimize函數(shù)和SLSQP算法,我們找到了滿足約束條件下的最小重量設(shè)計變量。請注意,實際應(yīng)用中,aerodynamics庫將包含復(fù)雜的物理模型和數(shù)值方法,以準確計算流體動力學(xué)和結(jié)構(gòu)動力學(xué)特性。上述代碼僅用于說明目的,實際的機翼優(yōu)化可能需要更高級的優(yōu)化算法和更詳細的物理模型。5高級主題5.1多目標結(jié)構(gòu)優(yōu)化5.1.1原理與內(nèi)容多目標結(jié)構(gòu)優(yōu)化是結(jié)構(gòu)優(yōu)化領(lǐng)域的一個重要分支,它處理的是同時優(yōu)化多個目標函數(shù)的問題。在傳統(tǒng)的單目標優(yōu)化中,我們通常追求最小化或最大化一個特定的目標,如結(jié)構(gòu)的重量或成本。然而,在實際工程設(shè)計中,往往需要同時考慮多個相互沖突的目標,如結(jié)構(gòu)的重量、成本、剛度、穩(wěn)定性等。多目標優(yōu)化的目標是找到一組解,這些解在所有目標函數(shù)上都是最優(yōu)的,被稱為帕累托最優(yōu)解。5.1.2方法與算法多目標優(yōu)化問題可以通過多種算法解決,包括但不限于:進化算法:如NSGA-II(非支配排序遺傳算法),它通過遺傳操作(選擇、交叉、變異)在種群中尋找帕累托最優(yōu)解。權(quán)重法:通過給每個目標函數(shù)分配權(quán)重,將多目標問題轉(zhuǎn)化為單目標問題。ε-約束法:將所有目標函數(shù)除一個外,都轉(zhuǎn)化為約束條件,然后對剩余的目標函數(shù)進行優(yōu)化。5.1.2.1示例:NSGA-II算法#NSGA-II算法示例

importnumpyasnp

fromdeapimportbase,creator,tools,algorithms

#定義問題

creator.create("FitnessMin",base.Fitness,weights=(-1.0,-1.0))

creator.create("Individual",list,fitness=creator.FitnessMin)

#目標函數(shù)

defevaluate(individual):

x,y=individual

f1=x**2+y**2

f2=(x-1)**2+(y-1)**2

returnf1,f2

#初始化種群

toolbox=base.Toolbox()

toolbox.register("attr_float",np.random.random)

toolbox.register("individual",tools.initRepeat,creator.Individual,toolbox.attr_float,n=2)

toolbox.register("population",tools.initRepeat,list,toolbox.individual)

#注冊評估、選擇、交叉和變異操作

toolbox.register("evaluate",evaluate)

toolbox.register("mate",tools.cxTwoPoint)

toolbox.register("mutate",tools.mutGaussian,mu=0,sigma=0.2,indpb=0.1)

toolbox.register("select",tools.selNSGA2)

#運行算法

pop=toolbox.population(n=50)

hof=tools.ParetoFront()

stats=tools.Statistics(lambdaind:ind.fitness.values)

stats.register("avg",np.mean,axis=0)

stats.register("std",np.std,axis=0)

stats.register("min",np.min,axis=0)

stats.register("max",np.max,axis=0)

pop,logbook=algorithms.eaMuPlusLambda(pop,toolbox,mu=50,lambda_=100,cxpb=0.5,mutpb=0

溫馨提示

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

評論

0/150

提交評論