王沖,茅健,鄭武
(1.201620 上海市 上海工程技術大學 機械與汽車工程學院;2.100089 北京市 華融普瑞北京科技有限公司)
拓撲優化設計是在限制部分設計條件的情況下尋求給定材料指定性能最優的材料分布,與其他常規優化方法相比,設計空間更大且可以最大化結構性能[1]。隨著計算機性能的不斷提升以及相關技術理論的不斷完善,其應用領域也不斷拓寬。然而拓撲優化所得結果為非參數化模型,邊緣不夠清晰且存在鋸齒狀單元、可制造性較差等問題。
針對拓撲優化邊界輪廓問題,現有研究方法有密度輪廓提取方法[2-3]和點集幾何重構方法[4]等。付永清等[5]基于梯度矢量流模型,利用雙線性插值求解點集GVF,實現柔順機構拓撲圖輪廓提取,但未能解決拓撲結構鋸齒狀邊緣問題;楊睿等[6]利用鏈碼對邊界離散點進行分段,采用B 樣條插值曲線實現拓撲結果邊界重構,但方法依賴插值點和輪廓曲率閾值的選擇;覃琨等[7]對輪廓分段,利用直線或圓弧等簡單幾何特征逼近拓撲輪廓,實現結果的幾何重構,但此方法對復雜邊界適用性受限,重構效果不理想;Zhu 等[8]引入能量泛函,利用帶有距離抑制方案的水平集方法提取輪廓,但其計算效率受限,不光滑點處收斂較難,導致結果不夠理想;Yi 等[9]基于密度等高線法有效提取拓撲輪廓,整體結構光滑度較好,但后續仍需形狀優化;Guest 等[10]利用Heaviside 階躍函數進行線性投影以實現中間密度單元的0/1 逼近,提升黑白單元占比;陳洪武等[11]基于響應面法編寫APDL 程序實現最優結構的快速收斂;Fuchs 等[12]引入SRV 約束條件,對設計變量確定最小量規,減少了結構中灰度單元;Liang 等[13]通過序列整數規劃和正則松弛算法實現了對具有離散變量靈敏度的拓撲優化問題的求解,結構清晰度得到提升;張日成等[14]通過對失穩載荷因子的靈敏度分析,基于Kuhn-Tucker 條件對優化結果實現結構的穩定性提升。
本文提出通過Canny 檢測算法提取拓撲優化結構邊緣,結合DBSCAN(Density-Based Spatial Clustering of Applications with Noise)算法以及凸包Graham Scan 算法,通過對整體數據點集的邊緣提取、密度聚類分析以及最小凸輪廓的構建,使所得拓撲結構邊緣清晰,解決鋸齒狀邊緣問題。同時,對拓撲優化構型中可能存在的無實際意義的空隙單元進行一定修復,為提升拓撲構型的可制造性提供一種設計方法。
Canny 檢測算法通過識別圖像邊緣特征,在保留圖像類型、姿態等主要信息下,有效減少數據處理規模,提升運算速度?;驹頌?,采用二維零均值高斯函數卷積運算,將像素點與周圍鄰域內像素加權平均處理,達到圖像去噪和平滑。高斯濾波器表達式[15]為
降噪和平滑處理后,Canny 算法通過計算水平、垂直方向梯度值,即2 個方向像素的1 階導數,然后采用非極大值抑制方法對梯度圖像中像素點進行處理,比較像素點和正負2 個方向上梯度的幅值,確定該像素點是否保留。通過設定的高低雙閾值檢測,較大閾值可用來控制強邊緣分割;較小閾值可用做控制邊緣連接,即高于高閾值的像素點可歸類為強邊緣像素集合,對低于較低閾值的像素點進行抑制。處于兩者之間的保留高于上閾值像素連接點,通過處理最終得到準確的邊緣二值化圖。
DBSCAN 是一種基于密度的無監督ML 聚類算法,其對噪音點敏感性較低且無需指定集群數量,適用于拓撲結構所得數據點集[16],密度聚類算法以其噪聲低敏性在數據點集連續性及均勻性較好的場合運用廣泛,實際應用效果與其他基于層次或網格的劃分方法相比更為突出。鞠夕強[17]等針對毫米波雷達數據不均勻以及噪聲等問題,采用DBSCAN 算法改進雷達點云識別,實現目標準確率的提升。呂富強等[18]針對建筑物點云提取過程繁瑣等問題,基于DBSCAN 算法,實現準確率提升的建筑單體化簇類提取。
DBSCAN 算法包含以下一些關鍵概念,設數據集合為Q={p0,p1,…,pn}。距離度量主要采用歐式空間距離來計算,其中2 個需要根據數據類型定義的算法參數是:
(1)鄰域(Eps):數據集合中任意點p,其鄰域是指以點p為中心、以Eps 為半徑所圍成的空間,將其鄰域內的數據對象集合記為NEps(p)
(2)最小包含點(minPts):在一個鄰域半徑內最少存在的點集數量,若鄰域特征點數量大于minPts,則該點與包含點構成一簇。
數據集合中點集的分類有以下3 種:
(1)核心點(core point):數據集合中任意點p,若滿足│NEps(p)│≥minPts,則稱p為數據集合Q的核心點。如圖1 所示,在鄰域半徑范圍存在特征點數為6,確定為核心點。

圖1 各點集示意圖Fig.1 Schematic diagram of each point set
(2)邊界點(border point):數據點p不滿足核心點條件,但是該點處于另外數據點pi的鄰域范圍內,則稱p為數據集合Q的邊界點。圖1 中,在鄰域半徑范圍存在特征點數僅為2,確定為邊界點。
(3)噪聲點(noise point):數據集合Q中不滿足核心點以及邊界點條件的其余點集稱為噪聲點。如圖1 所示,噪聲點為鄰域半徑范圍以外的特征點數。
上述3 種類型點之間通常有以下4 種關系:
(1)直接密度可達(directly density reachable):數據集合中任意點p,若滿足│NEps(p)│≥minPts,則對于數據點p的Eps鄰域內任一數據點q,可稱為q是從p直接密度可達的,如圖2(a)所示。

圖2 點集關系示意圖Fig.2 Schematic diagram of point set relationship
(2)密度可達(density reachable):數據集合中存在核心點p1,p2,…,pn,其中p到p1、p1到p2直接密度可達……pn-1到pn、pn到q直接密度可達,則稱q是從p密度可達的,如圖2(b)所示。
(3)密度相連(density connected):若數據集合中存在核心點k,使得點k到點p和點q都是密度可達的,則點p和點q密度相連。密度相連具有對稱性,且相連的兩點屬于同一聚類簇,如圖2(c)所示。
(4)非密度相連(non density connected):不滿足上述條件的兩點屬于非密度相連,即兩點屬于不同聚類簇或其中存在噪聲點,如圖2(d)所示。
DBSCAN 算法的處理步驟如圖3 所示。鄰域和最小包含點的取值對后續聚類效果有著較大影響。選取的Eps值較小,易導致聚類族簇數量過多或較多數據未參與聚類;選取的Eps值較大則會導致大部分聚類族簇被合并,大量數據集處于同一聚類。為獲得較好的聚類效果,應對鄰域和最小包含點進行聯合調參,其中估計最優的Eps值可選用K臨近算法,minPts值通常設置為大于或等于數據集維數,一般可選擇數據集維數的2 倍。

圖3 DBSCAN 聚類流程圖Fig.3 DBSCAN clustering flow chart
凸包S的定義:對于給定集合X,在以實數表征的向量空間V 中,所有包含X的凸集的交集[19],其中
而集合X的凸包也可由內部點集線性組合構造而成,可表示為
二維空間內凸包可視為給定點集的所有點的最小凸多邊形,滿足多邊形上任取兩點以線段連接,所得線段任意點均在多邊形內。
最小凸包Graham Scan 算法運行過程:
(1)確定極點P0。假定待優化數據點集為Q,以點集中縱坐標最小點作為極點,若多點縱坐標相同,則選取其中橫坐標最小點,如圖4(a)所示。

圖4 Graham Scan 凸包構造圖Fig.4 Graham Scan convex hull structure
(2)按極角排序。對剩余點按極點P0的逆時針方向排序,將點集順序保存為{P0,P1,…,Pn},若同一極角出現多點,保留極徑最大的點。
(3)將P0,P1,P2壓入棧中,如圖4(b)所示。
(4)依據判別式Δ 計算三點叉積并做左轉判斷,若滿足判定條件則將Pi入棧處理,否則彈出棧頂元素,按序掃描后續點集,如圖 4(c)所示。判別公式為
(5)依次完成所有點集掃描,最終堆棧元素為凸包的頂點序列,如圖4(d)所示。
如圖5 所示,將受不變載荷簡支梁作為數值計算模型,不失一般性。其左下端固定支撐,右端滑動支撐,整體梁身為優化設計區域,設計域離散單元數為:300×100,中心部分下端承受豎直向下力F。

圖5 優化簡支梁結構圖Fig.5 Structural diagram of optimized simply supported beam
選擇整體材料為Structural Steel,其楊氏模量為E=200e9 Pa,泊松比μ=0.3,取整體結構厚度d=4 mm,體積約束f=0.5,優化目標為滿足約束條件下最小化柔度。
優化后結構如圖6(a)所示。結構邊緣不清晰,存在灰度單元較多;經二值化處理后的結果如圖6(b)所示,邊緣存在鋸齒,其中二值化閾值T=0.503;經canny 邊緣檢測算法降噪與平滑處理,雙閾值區分抑制后所得結構如圖6(c)所示,提取出結構邊緣;通過DBSCAN 算法將邊緣數據點集進行聚類分析,設置Eps=4,minPts=4,聚類簇數為10,所得結果如圖6(d)所示,其中不同簇顏色深淺不同;最后,采用Graham Scan 凸包算法掃描不同簇類數據集,得到各類數據集合的頂點序列,形成最終結構輪廓,所得結果如圖6(e)所示,結構邊緣光滑,可制造性明顯提升。

圖6 拓撲優化重構流程圖Fig.6 Topology optimization and reconstruction flow chart
以整體結構的最大位移表征結構響應度,將初始模型和經算法重構后的模型導入有限元分析軟件進行仿真實驗,施加不同載荷整體結構響應結果如表1 所示。由表1 可知,重構模型與原拓撲優化結果相比,平均結構響應誤差為3.87%,與原結構差異較小,滿足設計要求。

表1 重構模型與原結構響應對比Tab.1 Comparison of response between reconstructed model and original structure
受載結構的應力云圖和位移云圖如圖7 所示,重構后的結構模型與原拓撲優化結果相比,在實現結構邊緣清晰的基礎上,各結構響應可以保持一致,設計方案較好地達成優化目標。

圖7 拓撲優化有限元結果對比Fig.7 Comparison of topology optimization finite element results
針對拓撲優化變密度法中運用SIMP 模型得到優化結構中存在鋸齒狀單元和邊緣不清晰等問題,采用DBSCAN 算法及凸包Graham Scan 算法進行邊緣提取和優化,結論如下:
(1)通過Canny 檢測算法提取拓撲結構邊緣,基于DBSCAN 算法對所得數據點集進行聚類,可以有效分離整體拓撲結構內外邊緣。(2)利用凸包Graham Scan 算法逆序掃描整體數據點集,得到包含點集的最小凸包輪廓,經過典型算例驗證,所得拓撲構型在承載應力及局部位移方面與原結構保持較高一致性,結構響應平均誤差低于3.87%。(3)通過DBSCAN 算法與Graham Scan 算法的結合,優化后拓撲結構邊緣清晰,鋸齒狀邊緣問題得到解決,通過有限元分析可得重構模型在結構響應上基本與原結構保持一致,整體方案為解決結構邊緣可制造性問題提供一種優化設計方法。