李寅
摘? 要: 虛擬現(xiàn)實(shí)環(huán)境下工業(yè)產(chǎn)品造型設(shè)計(jì)方向種類繁雜且多由人為操作,得到全局最優(yōu)設(shè)計(jì)結(jié)果的速度不佳,因此,提出在虛擬現(xiàn)實(shí)環(huán)境下遺傳算法在工業(yè)產(chǎn)品造型設(shè)計(jì)中的運(yùn)用。通過層次化產(chǎn)品造型結(jié)構(gòu)設(shè)計(jì)產(chǎn)品造型基因編碼,利用適應(yīng)度函數(shù)對個(gè)體進(jìn)行適應(yīng)值評價(jià),確定編碼個(gè)體適應(yīng)度;由遺傳算子支撐產(chǎn)品造型設(shè)計(jì)方案的進(jìn)化,滿足人工參與條件后在虛擬現(xiàn)實(shí)環(huán)境下由人工評估設(shè)計(jì)方案,直至產(chǎn)生用戶滿意的方案。實(shí)驗(yàn)結(jié)果顯示,在相同條件下,基于遺傳算法生成的工業(yè)產(chǎn)品造型設(shè)計(jì)結(jié)果較常規(guī)方法生成的設(shè)計(jì)結(jié)果少迭代410次,即可精確收斂到全局最優(yōu)設(shè)計(jì)結(jié)果,表明虛擬現(xiàn)實(shí)環(huán)境下遺傳算法在工業(yè)產(chǎn)品造型設(shè)計(jì)中收斂到全局最優(yōu)結(jié)果速度更快,效果更佳。
關(guān)鍵詞: 虛擬現(xiàn)實(shí); 遺傳算法; 遺傳編碼; 適應(yīng)度函數(shù); 工業(yè)設(shè)計(jì); 產(chǎn)品造型設(shè)計(jì)
中圖分類號: TN02?34? ? ? ? ? ? ? ? ? ? ? ? ? 文獻(xiàn)標(biāo)識碼: A? ? ? ? ? ? ? ? ? ? ? ? ? ?文章編號: 1004?373X(2020)05?0129?04
Application of genetic algorithm in industrial product modeling design
in virtual reality environment
LI Yin
(Aba Teachers University, Aba Tibetan and Qiang Autonomous Prefecture 623002, China)
Abstract: There are various industrial product modeling designs in the virtual reality environment, most of which are operated artificially, thus it is difficult to obtain the global optimal design results in time. In view of the above?mentioned, the application of genetic algorithm in industrial product modeling design in virtual reality environment is proposed. The product modeling genetic code is designed by hierarchical product modeling structure. The fitness function is used to evaluate the fitness value of the individual to determine the fitness of the coded individual. The genetic operator is used to support the progressing of product modeling design scheme. After meeting the conditions of artificial participation, the design scheme is manually evaluated in the virtual reality environment until a satisfied scheme is produced. The experimental results show that, under the same conditions, the industrial product modeling design results based on genetic algorithm can converge the global optimal design results accurately by 410 iterations less than the design results generated by conventional methods. It shows that in the virtual reality environment, the genetic algorithm converges the global optimal result faster and more effective in industrial product modeling design.
Keywords: virtual reality; genetic algorithm; genetic code; fitness function; industrial design; product modeling design
0? 引? 言
隨著科技快速發(fā)展,消費(fèi)者對產(chǎn)品造型和功效的要求越來越高,不僅注重產(chǎn)品的使用功能,更追求視覺感官上的享受。為了響應(yīng)快速發(fā)展的市場需求,利用虛擬現(xiàn)實(shí)技術(shù)輔助設(shè)計(jì)師完成產(chǎn)品造型設(shè)計(jì)是十分必要的。在傳統(tǒng)產(chǎn)品造型設(shè)計(jì)過程中,主要是從產(chǎn)品功能出發(fā),以提高產(chǎn)品表象形式為目的對其進(jìn)行設(shè)計(jì),包含產(chǎn)品的形態(tài)設(shè)計(jì)、產(chǎn)品的色彩設(shè)計(jì)、產(chǎn)品造型的質(zhì)感等設(shè)計(jì)方面[1]。設(shè)計(jì)師需要首先以用戶的需求為設(shè)計(jì)方向,利用自身設(shè)計(jì)經(jīng)驗(yàn)分析產(chǎn)品的原理及性能,并設(shè)計(jì)出對應(yīng)產(chǎn)品的基本結(jié)構(gòu)、功能和形態(tài)等造型設(shè)計(jì)元素,主要依靠設(shè)計(jì)師的個(gè)人能力。單純由設(shè)計(jì)師完成,難以保證設(shè)計(jì)工作的效率,無法滿足產(chǎn)品造型設(shè)計(jì)快速開發(fā)設(shè)計(jì)的要求。
因此,利用遺傳算法的高度并行、自適應(yīng)性優(yōu)勢,對工業(yè)產(chǎn)品造型設(shè)計(jì)求解[2?3]。為了更好地結(jié)合用戶需求偏好和設(shè)計(jì)師的經(jīng)驗(yàn),同時(shí)避免設(shè)計(jì)師的主觀看法以及用戶參與評估的過程較多,將虛擬現(xiàn)實(shí)和遺傳算法相結(jié)合,通過交互式手段利用人工評估進(jìn)行調(diào)整,以人工評估的方式替代遺傳算法中的適應(yīng)度值,得到結(jié)果最優(yōu)解,既可以減少用戶工作量,又可以提高產(chǎn)品造型設(shè)計(jì)結(jié)果的收斂速度。
1? 遺傳算法在工業(yè)產(chǎn)品造型設(shè)計(jì)中的運(yùn)用
遺傳算法可以同時(shí)處理多個(gè)設(shè)計(jì)目標(biāo),在一個(gè)工業(yè)產(chǎn)品造型設(shè)計(jì)過程中得到多個(gè)滿意的產(chǎn)品造型設(shè)計(jì)結(jié)果。遺傳算法在工業(yè)產(chǎn)品造型設(shè)計(jì)中的運(yùn)用是以進(jìn)化論和遺傳學(xué)說為基礎(chǔ),對產(chǎn)品造型中的每個(gè)個(gè)體設(shè)計(jì)要素進(jìn)行編碼,再通過選擇、交叉、變異算子進(jìn)行基因的排列組合,直到生成滿意的新個(gè)體。在進(jìn)化過程滿足一定條件后,進(jìn)入人工評估階段進(jìn)行方案調(diào)整,若輸出結(jié)果不是最優(yōu)的,再進(jìn)入計(jì)算機(jī)運(yùn)行自然階段,形成一個(gè)循環(huán),直至生成最優(yōu)設(shè)計(jì)方案[4]。由于計(jì)算機(jī)可以同時(shí)進(jìn)行多個(gè)目標(biāo)的并行搜索,因此,能提高產(chǎn)品造型的設(shè)計(jì)效率?;谶z傳算法的工業(yè)產(chǎn)品造型設(shè)計(jì)流程如圖1所示。
1.1? 設(shè)計(jì)產(chǎn)品造型基因編碼
在遺傳算法運(yùn)行中,使用浮點(diǎn)編碼方式將實(shí)際可行解變量轉(zhuǎn)變?yōu)閭€(gè)體編碼,能夠在確定規(guī)模的種群中表示更多的模式[5]。在初始種群中,產(chǎn)品形態(tài)、顏色等都可以表示成具體的層次結(jié)構(gòu)數(shù)據(jù),每一個(gè)功能單元均對應(yīng)一個(gè)結(jié)構(gòu)特征參數(shù),每一個(gè)染色體均包含一系列特征參數(shù)集合。將可行解從解空間轉(zhuǎn)換到搜索空間中,通過這種層次結(jié)構(gòu)將特征浮點(diǎn)參數(shù)編碼進(jìn)產(chǎn)品個(gè)體中。用層次化染色體結(jié)構(gòu)表示產(chǎn)品造型元素,如圖2所示。
產(chǎn)品染色體的基因位為功能單元染色體,功能單元的染色體基因位是特征參數(shù)的染色體,功能特征參數(shù)由浮點(diǎn)值定義[6]。設(shè)定每一個(gè)產(chǎn)品造型設(shè)計(jì)元素的參數(shù)編碼包括功能單元的名稱、數(shù)量、形狀特征、幾何大小、產(chǎn)品顏色等。部分產(chǎn)品造型設(shè)計(jì)編碼參數(shù)數(shù)據(jù)類型如表1所示。
在將編碼參數(shù)導(dǎo)入計(jì)算機(jī)輔助軟件之前,設(shè)計(jì)師需要從市場及概念設(shè)計(jì)中提取需要數(shù)據(jù),按照上述層次結(jié)構(gòu)進(jìn)行數(shù)據(jù)的編碼。不同產(chǎn)品對應(yīng)的特征參數(shù)均不相同,這種差異化會影響遺傳算法獲得有效解[7?9]。因此,將編碼數(shù)據(jù)的浮點(diǎn)值強(qiáng)制映射在相同有效范圍區(qū)間內(nèi),使得每個(gè)對應(yīng)基因位均在[0,1]范圍,解決參數(shù)在不同范圍上的問題。
1.2? 確定編碼個(gè)體適應(yīng)度
在非人工評估階段,也就是自然階段,由目標(biāo)函數(shù)變換得到適應(yīng)度函數(shù),對個(gè)體進(jìn)行適應(yīng)值評價(jià)。適應(yīng)度函數(shù)為:
[F(x)=Cmax-f(x),? ? ? ?f(x) 式中:[F(x)]為適應(yīng)度函數(shù);[f(x)]為目標(biāo)函數(shù);[Cmax]為一個(gè)預(yù)設(shè)的相對較大的正數(shù),以保證大多數(shù)解為正。設(shè)定種群平均適應(yīng)度值為[FA]。 產(chǎn)品造型設(shè)計(jì)是一個(gè)多目標(biāo)尋優(yōu)的過程,實(shí)際過程中包含多種特征參數(shù),對應(yīng)產(chǎn)品不同狀態(tài)。使用形態(tài)語義加權(quán)方法,根據(jù)設(shè)計(jì)元素在設(shè)計(jì)方案中的重要程度設(shè)定合適權(quán)重值,將用戶語義與產(chǎn)品特征描述對應(yīng)聯(lián)系起來,反映設(shè)計(jì)個(gè)體在多方面的優(yōu)劣程度[10?11]。對每一個(gè)設(shè)計(jì)元素進(jìn)行調(diào)查,對調(diào)查結(jié)果取算術(shù)平均值,得到人工評估適應(yīng)度值[FE]。 隨機(jī)生成[N]個(gè)個(gè)體字符串,其中,[N]個(gè)個(gè)體作為初始種群大小,初始進(jìn)化代數(shù)為[gen],最大非人工進(jìn)化代數(shù)為[GEN]。 1.3? 產(chǎn)品造型設(shè)計(jì)方案進(jìn)化 產(chǎn)品造型設(shè)計(jì)方案的進(jìn)化由三種遺傳算子支撐。從初始種群開始迭代,獲得最初種群平均適應(yīng)度后,選擇適應(yīng)度較高的個(gè)體兩兩配對,再經(jīng)過遺傳運(yùn)算中的交叉、變異運(yùn)算再生,得到新個(gè)體放入新種群中,重復(fù)此過程,直至新種群生成,在每一代運(yùn)算后生成的新種群將替代舊種群[10]。交叉運(yùn)算是在交叉概率[Pc]控制下,隨機(jī)選擇上一代種群中的兩個(gè)個(gè)體進(jìn)行交叉,由兩個(gè)個(gè)體中適應(yīng)度值較高的個(gè)體提供更多基因。變異運(yùn)算首先設(shè)定初始變異概率[Pm],[Pm∈0,1]。產(chǎn)生下一代種群后,比較兩代種群中最優(yōu)個(gè)體的適應(yīng)度值,新種群最優(yōu)個(gè)體小于舊種群最優(yōu)個(gè)體適應(yīng)度值時(shí),將初始變異概率[Pm]增加0.05,否則,減少0.05,但始終保持變異概率在初始變異概率值與1之間。為保證將適應(yīng)度值最好的個(gè)體保留到下一代種群中,用當(dāng)前種群中適應(yīng)度值最高的個(gè)體直接替代經(jīng)交叉和變異遺傳操作后產(chǎn)生的適應(yīng)度值最低個(gè)體[12?13]。同時(shí),如果上一代種群中的最優(yōu)個(gè)體的適應(yīng)度值高于當(dāng)前種群中最優(yōu)個(gè)體的適應(yīng)度值,即用上一代種群中的最優(yōu)個(gè)體代替當(dāng)前種群中的適應(yīng)度值最低個(gè)體。當(dāng)算法運(yùn)行生成新的產(chǎn)品造型設(shè)計(jì)方案,同時(shí)滿足人工參與條件后,解碼進(jìn)入虛擬現(xiàn)實(shí)環(huán)境下參與人工評估階段。 1.4? 虛擬現(xiàn)實(shí)環(huán)境下人工評估設(shè)計(jì)方案 虛擬現(xiàn)實(shí)環(huán)境下人工評估階段,主要是借助虛擬現(xiàn)實(shí)技術(shù),由計(jì)算機(jī)主機(jī)進(jìn)行控制,通過四維形式將儲存在知識庫和數(shù)據(jù)庫的算法內(nèi)容展現(xiàn)在虛擬場景中[14],輸出最終設(shè)計(jì)結(jié)果方案、圖紙或造型給客戶。虛擬現(xiàn)實(shí)設(shè)計(jì)結(jié)果輸出流程如圖3所示。 由人工評價(jià)是否生成了最優(yōu)方案。設(shè)定設(shè)計(jì)產(chǎn)品評價(jià)目標(biāo)為[u=(u1,u2,…,un)],對應(yīng)權(quán)重分別為[qi],用矩陣表示為[Q=(q1,q2,…,qn)],對產(chǎn)品各評價(jià)目標(biāo)進(jìn)行評分: [B=b1b2?bm=b11b12…b1nb21b22…b2n????bm1bm2…bmn]? (2) 如果在人工評估階段產(chǎn)生了用戶滿意的方案,那么停止算法運(yùn)行,否則,轉(zhuǎn)入自然階段繼續(xù)運(yùn)行,并且剔除不符合設(shè)計(jì)要求的方案。 至此完成虛擬現(xiàn)實(shí)環(huán)境下遺傳算法在工業(yè)產(chǎn)品造型設(shè)計(jì)中的運(yùn)用設(shè)計(jì)。 2? 仿真實(shí)驗(yàn) 設(shè)計(jì)模擬仿真實(shí)驗(yàn),對比在虛擬現(xiàn)實(shí)環(huán)境下,利用遺傳算法生成最優(yōu)工業(yè)產(chǎn)品造型設(shè)計(jì)結(jié)果的收斂速度以及常規(guī)虛擬現(xiàn)實(shí)環(huán)境下生成設(shè)計(jì)結(jié)果的收斂速度。 2.1? 實(shí)驗(yàn)準(zhǔn)備及運(yùn)行參數(shù)設(shè)定 使用Matlab軟件的Global Optimization Toolbox優(yōu)化工具箱,將算法運(yùn)行在原有建模系統(tǒng)[15]中。根據(jù)設(shè)計(jì)師的經(jīng)驗(yàn)預(yù)先設(shè)定遺傳算法中的運(yùn)行參數(shù)值,其中,包括最大/最小種群數(shù)、傳迭代數(shù)范圍、交叉概率以及變異概率等參數(shù)。遺傳算法類型選擇最優(yōu)保存策略及精英策略。遺傳算法所需部分運(yùn)行參數(shù)如表2所示。 2.2? 實(shí)驗(yàn)結(jié)果 以迭代次數(shù)為橫軸,系統(tǒng)運(yùn)行時(shí)間為縱軸,繪制算法收斂曲線如圖4所示。 由圖4可知,常規(guī)生成最優(yōu)工業(yè)產(chǎn)品造型設(shè)計(jì)結(jié)果的收斂速度大約要經(jīng)過700次迭代,而基于遺傳算法的工業(yè)產(chǎn)品造型設(shè)計(jì)在迭代到290次時(shí)精確收斂到全局最優(yōu)解。結(jié)果表明,在相同條件下基于遺傳算法生成的工業(yè)產(chǎn)品造型設(shè)計(jì)結(jié)果的收斂速度更快,能更快速地收斂到全局最優(yōu)解,提高了設(shè)計(jì)效率。 3? 結(jié)? 語 結(jié)合虛擬現(xiàn)實(shí)和遺傳算法技術(shù),在虛擬現(xiàn)實(shí)環(huán)境下執(zhí)行人工評估階段。用戶可以更直觀、方便地觀察到設(shè)計(jì)結(jié)果,同時(shí),設(shè)計(jì)師也可以發(fā)揮主觀經(jīng)驗(yàn)的積極作用,彌補(bǔ)常規(guī)設(shè)計(jì)方法的不足。由計(jì)算機(jī)自動(dòng)完成設(shè)計(jì)方案的進(jìn)化過程,發(fā)揮遺傳算法全局搜索能力強(qiáng)的優(yōu)勢,向全局最優(yōu)解逼近。另外,因?yàn)槿斯ぴu估階段是在滿足一定條件后進(jìn)行的,若未生成人工滿意結(jié)果,則再轉(zhuǎn)入計(jì)算機(jī)自然階段繼續(xù)運(yùn)行,所以遺傳算法的絕大部分迭代過程均是計(jì)算機(jī)自動(dòng)完成的,可以有效減少人工參與次數(shù),減輕用戶工作量,從而避免迭代次數(shù)限制。加上人工評估過程是在虛擬現(xiàn)實(shí)環(huán)境下進(jìn)行的,易于用戶操作并且進(jìn)一步減輕了用戶工作量,完成了虛擬現(xiàn)實(shí)環(huán)境下遺傳算法在工業(yè)產(chǎn)品造型設(shè)計(jì)中的運(yùn)用。 參考文獻(xiàn) [1] 方平龍.淺談工業(yè)設(shè)計(jì)中虛擬現(xiàn)實(shí)技術(shù)的應(yīng)用[J].中國新技術(shù)新產(chǎn)品,2018(4):69?70. [2] 劉致遠(yuǎn),王健.基于信息化背景下交互設(shè)計(jì)在工業(yè)設(shè)計(jì)中的應(yīng)用[J].明日風(fēng)尚,2018(9):101. [3] 呂欽.工業(yè)設(shè)計(jì)中虛擬現(xiàn)實(shí)技術(shù)的應(yīng)用探討[J].科技創(chuàng)新導(dǎo)報(bào),2017,14(25):115?116. [4] 丁利敬.虛擬現(xiàn)實(shí)技術(shù)在工業(yè)設(shè)計(jì)中的模型應(yīng)用研究[J].洛陽師范學(xué)院學(xué)報(bào),2018,37(5):66?68. [5] 楊健,趙宏宇.浮點(diǎn)數(shù)編碼改進(jìn)遺傳算法在平面度誤差評定中的研究[J].光學(xué)精密工程,2017,25(3):706?711. [6] 楊從銳,錢謙,王鋒,等.改進(jìn)的自適應(yīng)遺傳算法在函數(shù)優(yōu)化中的應(yīng)用[J].計(jì)算機(jī)應(yīng)用研究,2018,35(4):1042?1045. [7] 金仙力,李金剛.基于遺傳算法的多目標(biāo)路徑優(yōu)化算法的研究[J].計(jì)算機(jī)技術(shù)與發(fā)展,2018,28(2):54?58. [8] 李露,趙文龍,趙富強(qiáng).基于遺傳算法在線的調(diào)優(yōu)控制系統(tǒng)設(shè)計(jì)[J].電子科學(xué)技術(shù),2017,4(1):37?42. [9] 吳立華,白潔,左亞軍,等.基于Matlab的遺傳算法在結(jié)構(gòu)優(yōu)化設(shè)計(jì)中的應(yīng)用[J].機(jī)電工程技術(shù),2017,46(10):44?47. [10] 王瑋,董健,門少杰.基于VR的傳輸設(shè)備工程設(shè)計(jì)系統(tǒng)的研究[J].山東通信技術(shù),2019,39(1):29?32. [11] 蘇建寧,康亞君,張書濤,等.面向認(rèn)知主體的產(chǎn)品意象造型創(chuàng)新設(shè)計(jì)方法[J].現(xiàn)代制造工程,2018(6):108?113. [12] 張愛林,孫超.基于遺傳算法的脊桿索穹頂優(yōu)化設(shè)計(jì)[J].北京工業(yè)大學(xué)學(xué)報(bào),2017,43(3):455?466. [13] 朱佳棟,蘇少輝,陳昌,等.面向產(chǎn)品配置設(shè)計(jì)的改進(jìn)交互式遺傳算法[J].中國機(jī)械工程,2018,29(20):2474?2478. [14] 鄭朝鑫,董晨,葉尹.基于遺傳算法的3D動(dòng)態(tài)實(shí)時(shí)建模方法[J].福州大學(xué)學(xué)報(bào)(自然科學(xué)版),2019,47(1):24?29. [15] 張巖,費(fèi)廣正.交互式遺傳的3維場景擴(kuò)展[J].中國圖象圖形學(xué)報(bào),2017,22(5):631?642.