APP下载

基于DBSCAN 的拓扑结构优化设计方法

2023-09-20王冲茅健郑武

农业装备与车辆工程 2023年9期
关键词:邻域边缘重构

王冲,茅健,郑武

(1.201620 上海市 上海工程技术大学 机械与汽车工程学院;2.100089 北京市 华融普瑞北京科技有限公司)

0 引言

拓扑优化设计是在限制部分设计条件的情况下寻求给定材料指定性能最优的材料分布,与其他常规优化方法相比,设计空间更大且可以最大化结构性能[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 算法,通过对整体数据点集的边缘提取、密度聚类分析以及最小凸轮廓的构建,使所得拓扑结构边缘清晰,解决锯齿状边缘问题。同时,对拓扑优化构型中可能存在的无实际意义的空隙单元进行一定修复,为提升拓扑构型的可制造性提供一种设计方法。

1 边界识别与特征聚类

1.1 边缘检测

Canny 检测算法通过识别图像边缘特征,在保留图像类型、姿态等主要信息下,有效减少数据处理规模,提升运算速度。基本原理为,采用二维零均值高斯函数卷积运算,将像素点与周围邻域内像素加权平均处理,达到图像去噪和平滑。高斯滤波器表达式[15]为

降噪和平滑处理后,Canny 算法通过计算水平、垂直方向梯度值,即2 个方向像素的1 阶导数,然后采用非极大值抑制方法对梯度图像中像素点进行处理,比较像素点和正负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

2 凸包扫描算法

2.1 凸包定义

凸包S的定义:对于给定集合X,在以实数表征的向量空间V 中,所有包含X的凸集的交集[19],其中

而集合X的凸包也可由内部点集线性组合构造而成,可表示为

二维空间内凸包可视为给定点集的所有点的最小凸多边形,满足多边形上任取两点以线段连接,所得线段任意点均在多边形内。

2.2 Graham Scan 算法

最小凸包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)所示。

3 算例仿真

3.1 二维简支梁优化

如图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

3.2 重构模型仿真结果

以整体结构的最大位移表征结构响应度,将初始模型和经算法重构后的模型导入有限元分析软件进行仿真实验,施加不同载荷整体结构响应结果如表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

4 结论

针对拓扑优化变密度法中运用SIMP 模型得到优化结构中存在锯齿状单元和边缘不清晰等问题,采用DBSCAN 算法及凸包Graham Scan 算法进行边缘提取和优化,结论如下:

(1)通过Canny 检测算法提取拓扑结构边缘,基于DBSCAN 算法对所得数据点集进行聚类,可以有效分离整体拓扑结构内外边缘。(2)利用凸包Graham Scan 算法逆序扫描整体数据点集,得到包含点集的最小凸包轮廓,经过典型算例验证,所得拓扑构型在承载应力及局部位移方面与原结构保持较高一致性,结构响应平均误差低于3.87%。(3)通过DBSCAN 算法与Graham Scan 算法的结合,优化后拓扑结构边缘清晰,锯齿状边缘问题得到解决,通过有限元分析可得重构模型在结构响应上基本与原结构保持一致,整体方案为解决结构边缘可制造性问题提供一种优化设计方法。

猜你喜欢

邻域边缘重构
长城叙事的重构
稀疏图平方图的染色数上界
北方大陆 重构未来
基于邻域竞赛的多目标优化算法
北京的重构与再造
一张图看懂边缘计算
关于-型邻域空间
论中止行为及其对中止犯的重构
基于时序扩展的邻域保持嵌入算法及其在故障检测中的应用
在边缘寻找自我