基于连续顶点分区的混凝土3D打印路径规划算法
Path planning algorithm for concrete 3D printing based on continuous vertex partitioning
通讯作者:
收稿日期: 2023-07-25 修回日期: 2023-11-06
基金资助: |
|
Received: 2023-07-25 Revised: 2023-11-06
作者简介 About authors
崔 衡(2001—),男,陕西渭南人,硕士生,从事混凝土3D打印路径规划研究,E-mail:
关键词:
Keywords:
本文引用格式
崔衡, 马宗方, 宋琳, 刘超, 韩怡萱.
CUI Heng, MA Zongfang, SONG Lin, LIU Chao, HAN Yixuan.
为了解决混凝土3D打印中的路径规划问题,学者们提出了许多不同的算法,以实现在尽可能缩短打印时间和减少材料浪费的同时提高打印质量。马宗方等[5]提出了一种混凝土3D打印路径优化算法,即先采用欧拉回路生成一条可覆盖所有节点的回路,再通过蚁群算法寻找到一条最优路径,以缩短打印路径和减少材料浪费,但由于欧拉回路只考虑边而不考虑顶点,使得打印喷头可能会多次经过同一个顶点,导致混凝土构件的成形质量较差。Wan等[6]提出了一种基于超限映射的混凝土3D打印路径规划算法,该算法通过变形映射技术实现了打印路径的连续和自适应,避免了路径中断和转折的问题,有效地提高了打印质量,但该算法需要进行有限元分析和变形映射等复杂运算,会占用较多的计算资源和时间,增加了算法的复杂性和成本。Fok等[7]提出了一种基于Christofides算法的3D打印路径优化方法,旨在缩短打印路径和减少材料浪费,但该方法在实际应用中需要结合特定的打印机和打印材料进行适配和调整。王祎等[8]提出了一种基于改进Q学习的薄壁结构3D打印路径规划方法,该方法使用分层Q学习将搜索空间分解成多个子空间,并在每个子空间内使用Q学习来搜索最优路径,但由于改进Q学习需要自主学习,即要进行大量的模型训练,这可能会花费较长的时间和占用较多的计算资源。曹俊峰[9]提出了一种面向混凝土3D打印的双螺旋路径规划算法,该算法能够实现打印路径的连续性和稳定性,提高了混凝土构件的打印质量,但该算法需要打印机器人准确地按照双螺旋路径进行运动,现有的混凝土3D打印机难以实现,且执行算法所需的时间较长。
1 混凝土3D打印的主要流程
图1
2 混凝土3D打印路径规划算法
2.1 算法流程
图2
图2
基于连续顶点分区的混凝土3D打印路径规划流程
Fig.2
Concrete 3D printing path planning process based on continuous vertex partitioning
2.2 连续顶点分区方法
哈密顿回路是指在一个无向图中,经过图中所有顶点且每个顶点恰好经过一次的一条回路[15]。本文基于哈密顿回路的原理来寻找混凝土构件切片模型中多个连续性较强的路径分区。
在将混凝土构件3D打印模型切片转化为数字模型后,提取模型中的各个几何顶点并按顺序将其编号为
对邻接矩阵 T 进行循环遍历,以判断是否存在哈密顿回路[10]。设初始搜索深度d=0,随机选择顶点
定义二维数组
2.3 基于遗传算法的整体路径优化
在遗传算法中,初始化参数的选择对算法性能和优化结果至关重要。在本文中,设染色体长度与二维数组
在遗传算法中,采用适应度函数来量化评估种群中每个个体对于解决特定问题或达成特定目标的适宜程度[18],以确定可在进化过程中生存下来的个体。在本文中,首先,从二维数组A中读取所有分区对应的起点和终点的坐标;然后,运用
1)选择。选择操作是指选择适应度值较大的个体作为下一代进化的父代。本文采用轮盘赌选择的方法,选择较短的路径作为父代。利用
2)交叉。交叉操作是模拟基因的重组过程。本文通过将2个父代个体对应的路径分区及该分区内2个端点的排列顺序进行交叉,以生成新的路径。
3)变异。变异操作是模拟基因的突变过程。在本文中,交叉操作是随机选择路径,将路径分区或该分区内2个端点的顺序进行随机交换,以产生新的路径。
若达到最大迭代次数
3 混凝土3D打印仿真与实验分析
3.1 3D打印路径的评价指标
在混凝土3D打印领域,打印路径的质量直接影响最终混凝土构件的成形质量和性能。一条高质量的打印路径应具备高连续性和平滑的特点。常用的打印路径评价指标包括打印喷头覆盖总长度、打印喷头空行程、打印喷头启停次数以及总打印时间等。通过优化上述评价指标,能够显著提升混凝土3D打印的效率和可靠性,进而有效提升打印质量[19]。
1)打印喷头覆盖总长度。打印喷头覆盖总长度是指打印喷头在移动过程中经过的距离总和。在同一打印模型中,打印喷头覆盖总长度越短,说明所采用的路径规划算法的效果越优。
2)打印喷头空行程。空行程是指打印过程中打印喷头移动但不下料的距离。在同一打印模型中,较小的空行程意味着打印路径更短、打印喷头移动更少以及打印过程更高效。
3)打印喷头的启停次数。在混凝土3D打印中,打印喷头的启动、暂停可能会造成混凝土物料堆积,如图3所示。启停次数过多会影响混凝土构件的成形质量。合理规划打印路径可以减少打印喷头的启停次数,从而提高打印效率和打印质量。
图3
图3
打印喷头启停造成的混凝土物料堆积
Fig.3
Concrete material accumulation caused by start and stop of print nozzle
4)打印时间。在混凝土3D打印中,打印时间是指混凝土构件成形所需的时间,表征打印效率和路径规划算法性能[20]。打印时间越短表示打印效率越高,即路径规划算法越优异。
3.2 混凝土3D打印仿真
利用CIMCO Edit8软件开展混凝土3D打印仿真分析,以验证本文基于连续顶点分区的路径规划算法(下文简称本文算法)的可行性,并与已有的采用欧拉回路的混凝土3D打印路径规划算法(下文简称欧拉回路算法)、Cura软件算法以及Dijkstra算法进行对比。
图4
图5
图5
混凝土构件1的打印路径分区效果对比
Fig.5
Comparison of printing path partition effect of concrete component 1
表1 基于不同算法的混凝土构件1的打印路径规划仿真结果
Table 1
算法 | 打印喷头覆盖总长度/mm | 打印喷头空行程/mm | 打印喷头启停数/次 | 打印时间/s |
---|---|---|---|---|
本文算法 | 51 659 | 3 580 | 8 | 183 |
欧拉回路算法 | 53 820 | 5 740 | 16 | 212 |
Cura软件算法 | 61 250 | 13 171 | 27 | 278 |
Dijkstra算法 | 58 340 | 10 260 | 23 | 245 |
由表1结果可知,相较于欧拉回路算法,采用本文算法的打印路径规划方案能够减小37.6%的空行程、减少50.0%的启停次数以及缩短13.7%的打印时间;相较于Cura软件算法,采用本文算法的打印路径规划方案能够减小72.8%的空行程、减少70.4%的启停次数以及缩短34.2%的打印时间;相较于Dijkstra算法,采用本文算法的打印路径规划方案能够减小65.1%的空行程、减少65.2%的启停次数以及缩短25.3%的打印时间。
图6
图7
图7
混凝土构件2的打印路径分区效果对比
Fig.7
Comparison of printing path partition effect of concrete component 2
表2 基于不同算法的混凝土构件2的打印路径规划仿真结果
Table 2
算法 | 打印喷头覆盖总长度/mm | 打印喷头空行程/mm | 打印喷头启停数/次 | 打印时间/s |
---|---|---|---|---|
本文算法 | 23 389 | 3 760 | 11 | 132 |
欧拉回路算法 | 26 024 | 5 100 | 15 | 149 |
Cura软件算法 | 30 182 | 10 553 | 22 | 181 |
Dijkstra算法 | 29 332 | 9 703 | 18 | 163 |
由表2结果可知,相较于欧拉回路算法,采用本文算法的打印路径规划方案能够减小26.3%的空行程、减少26.7%的启停次数以及缩短11.4%的打印时间;相较于Cura软件算法,采用本文算法的打印路径规划方案能够减小64.4%的空行程、减少50.0%的启停次数以及缩短27.1%的打印时间;相较于Dijkstra算法,采用本文算法的打印路径规划方案能够减小61.2%的空行程、减少38.9%的启停次数以及缩短19.0%的打印时间。
综上,相较于其他的路径规划算法,采用本文算法进行路径规划能够显著地减小打印喷头的空行程、减少打印喷头的启停次数以及缩短打印时间。由此可得,在混凝土的3D打印中,使用本文算法进行打印路径规划可有效提高打印效率和节约成本。
3.3 混凝土3D打印实验
为了进一步验证本文算法在实际混凝土3D打印中的可靠性和实用性,基于本文算法、欧拉回路算法、Cura软件算法和Dijkstra算法开展混凝土3D打印实验并对比成形构件的外观和质量。每种路径规划算法下均打印3个混凝土构件。其中:构件1的长、宽、高分别为600 mm、600 mm、48 mm,共4层;构件2的长、宽、高分别为1 038 mm、1 000 mm、24 mm,共2层;构件3的长、宽、高分别为600 mm、520 mm、48 mm,共4层。本文所使用的混凝土3D打印机的控制器为DDCS V3.1,其打印喷头的直径为30 mm,最大移动速度为100 mm/s;混凝土构件的每一层高度均为12 mm。图8所示为基于不同算法的混凝土构件的打印成形效果。
图8
图8
基于不同算法的混凝土构件打印成形效果对比
Fig.8
Comparison of print forming effect of concrete components based on different algorithms
由图8结果可知,采用欧拉回路算法、Cura软件算法和Dijkstra算法规划的打印路径存在连续性较差和打印喷头启停次数过多的问题,导致局部混凝土物料堆积和混凝土构件成形质量较差。相比之下,基于本文算法规划的打印路径连续性较高且相对平滑,实现了混凝土构件成形质量的有效提升。
表3 基于不同算法的混凝土构件打印路径规划实验结果
Table 3
构件 | 算法 | 打印喷头覆盖总长度/mm | 打印喷头空行程/mm | 打印喷头启停数/次 | 打印时间/s |
---|---|---|---|---|---|
构件1 | 本文算法 | 21 101 | 4 264 | 11 | 195 |
欧拉回路算法 | 23 490 | 6 653 | 17 | 224 | |
Cura软件算法 | 34 502 | 17 665 | 24 | 253 | |
Dijkstra算法 | 36 972 | 20 135 | 22 | 258 | |
构件2 | 本文算法 | 16 304 | 3 384 | 13 | 150 |
欧拉回路算法 | 19 601 | 6 681 | 18 | 179 | |
Cura软件算法 | 23 381 | 10 461 | 23 | 202 | |
Dijkstra算法 | 21 987 | 9 067 | 21 | 232 | |
构件3 | 本文算法 | 16 201 | 900 | 4 | 131 |
欧拉回路算法 | 18 301 | 3 100 | 9 | 163 | |
Cura软件算法 | 28 572 | 13 271 | 13 | 194 | |
Dijkstra算法 | 30 008 | 14 707 | 10 | 212 |
3.4 结果分析
综合上述混凝土3D打印路径规划的仿真结果与实验结果可知,与其他的路径规划算法相比,基于连续顶点分区的路径规划算法有效提升了混凝土3D打印路径的质量,主要体现在以下方面。
1)所采用的哈密顿回路算法是一种顶点遍历算法,能够确保打印喷头在打印过程中不会重复经过同一个顶点,减少了打印喷头的启停次数,从而缩短了打印时间、降低了打印过程的不稳定性和减少了成形构件的缺陷。
2)采用遗传算法来获得各路径分区之间的最短连接路径,尽可能地减小了打印喷头在打印过程中的空行程,以确保连续打印路径的最大化,有效地提高了打印效率和打印质量。
仿真和实验结果证明了本文算法的可行性和实用性,其在混凝土3D打印领域的应用前景非常广阔。
3.5 本文算法的迭代次数讨论
对于本文算法,遗传算法中的迭代次数m对算法的运行效率以及打印喷头空行程有重要影响。从理论上看,随着迭代次数m的增加,遗传算法搜索解空间的机会增加,即更有可能趋近全局最优解[21]。但是,过多的迭代次数不仅会增加计算成本和算法执行时间,还可能会使算法陷入局部最优解,从而无法获得最优的打印路径。因此,针对实际应用中的混凝土3D打印路径规划问题,须综合考虑路径规划的复杂性、解空间的大小,以合理设定遗传算法中的迭代次数m。
对于常见的混凝土构件,本文算法通常会将其打印路径划分为2~6个分区。通过打印实验系统地分析不同迭代次数m下本文算法的运行时间以及打印喷头空行程的变化情况,结果如表4所示。
表4 不同迭代次数下本文算法的运行时间以及打印喷头的空行程
Table 4
分区数量/ 个 | 迭代数/次 | 算法运行 时间/s | 打印喷头空行程/mm |
---|---|---|---|
2 | 20 | 0.34 | 243 |
40 | 0.78 | 243 | |
60 | 1.42 | 243 | |
3 | 40 | 1.12 | 337 |
60 | 2.18 | 325 | |
80 | 3.67 | 325 | |
4 | 60 | 3.55 | 458 |
80 | 3.98 | 419 | |
100 | 5.03 | 382 | |
5 | 80 | 4.93 | 687 |
100 | 5.86 | 612 | |
120 | 7.34 | 612 | |
6 | 100 | 7.42 | 945 |
120 | 9.09 | 863 | |
140 | 10.93 | 825 |
由表4结果可知,在分区数量较少的情况下,迭代次数对路径规划速度和打印喷头空行程的影响不太明显。然而,当分区数量增加时,在相同的分区条件下,迭代次数的增加会使路径规划速度变慢,但会减小打印喷头的空行程。但当迭代次数达到一定数量时,可能会导致路径规划时间增加,从而导致优化效果变差。因此,在混凝土3D打印路径的规划过程中,应根据具体情况选择合适的迭代次数,以提高路径规划的效率。
4 结 论
目前,混凝土3D打印技术的发展突飞猛进,但是关于混凝土3D打印路径规划算法的研究仍较少。本文提出了一种基于连续顶点分区的混凝土3D打印路径规划算法,该算法结合哈密顿回路算法和遗传算法对打印路径进行规划和优化,可为混凝土3D打印技术提供新思路,有望推动混凝土3D打印技术在建筑施工领域的广泛应用。但是,本文算法也存在很多不足,如待打印的混凝土构件不连续时,基于本文算法的打印效率较低,这是未来需要进一步研究的问题。
参考文献
3D打印混凝土技术研究综述
[J].
Summary of 3D printed concrete technology research
[J].
增材制造直接分层和路径规划技术研究
[J].DOI:10.3969/j.issn.1672-6413.2018.06.012 [本文引用: 1]
Research on direct slicing and path planning technology of additive manufacturing
[J].DOI:10.3969/j.issn.1672-6413.2018.06.012 [本文引用: 1]
3D打印混凝土的可打印性研究综述
[J].
Review on printability of 3D printed concrete
[J].
3D打印路径规划研究
[J].
Research on 3D printing path planning
[J].
采用欧拉回路的混凝土3D打印路径优化算法
[J].
Path optimization algorithm for concrete 3D printing using the Euler circuit
[J].
Continuous and adaptable printing path based on transfinite mapping for 3D concrete printing
[J].
A 3D printing path optimizer based on christofides algorithm
[C]//
改进Q学习的薄壁结构3D打印路径规划
[J].DOI:10.3778/j.issn.1002-8331.2012-0438 [本文引用: 1]
Path planning for complex thin-walled structures in 3D printing: improved Q-learning method
[J].DOI:10.3778/j.issn.1002-8331.2012-0438 [本文引用: 1]
面向3D混凝土打印的双螺旋路径规划算法研究与施工作业系统搭建
[D].
Research on 3D concrete printing-oriented double helix path planning algorithm and construction operation system construction
[D].
图的路径运算矩阵与哈密顿回路等路径问题
[J].DOI:10.13245/j.hust.210204 [本文引用: 2]
Path-operation matrices of graph for solving Hamilton cycles and other path problems
[J].DOI:10.13245/j.hust.210204 [本文引用: 2]
基于遗传算法的小规模TSP问题研究分析
[J].DOI:10.3969/j.issn.1674-4993.2022.03.031 [本文引用: 1]
Research analysis of small-scale TSP problem based on genetic algorithm
[J].DOI:10.3969/j.issn.1674-4993.2022.03.031 [本文引用: 1]
两个古老的回路问题
[J].
Two ancient circuit problems
[J].
3D打印混凝土材料及混凝土建筑技术进展
[J].
Progress of 3D print of concrete materials and concrete construction technology
[J].
机器人3D打印建筑的打印路径规划方法探索
[J].DOI:10.3969/j.issn.1674-6635.2022.07.010 [本文引用: 1]
Exploring tool path planning methods of the robotic 3DP construction
[J].DOI:10.3969/j.issn.1674-6635.2022.07.010 [本文引用: 1]
基于邻接矩阵和递归算法的哈密顿回路研究
[J].
Research on Hamiltonian loop based on adjacency matrix and recursive algorithm
[J].
基于遗传算法的移动机器人路径规划研究综述
[J].DOI:10.3969/j.issn.1671-1807.2023.08.042 [本文引用: 1]
Summary of research on path planning of mobile robot based on genetic algorithms
[J].DOI:10.3969/j.issn.1671-1807.2023.08.042 [本文引用: 1]
基于改进遗传算法的无人机航迹规划与任务分配方法研究
[D].
Research on UAV path planning and task allocation method based on improved genetic algorithm
[D].
改进遗传算法求解旅行商问题
[J].
Improved genetic algorithm to solve traveling salesman problem
[J].
3D打印模型切片及路径规划研究综述
[J].DOI:10.3778/j.issn.1002-8331.2009-0106 [本文引用: 1]
Review of 3D printing model slicing and path planning research
[J].DOI:10.3778/j.issn.1002-8331.2009-0106 [本文引用: 1]
分形模型的3D打印路径规划
[J].DOI:10.3724/sp.j.1089.2018.16618 [本文引用: 1]
3D printing path planning of fractal models
[J].DOI:10.3724/sp.j.1089.2018.16618 [本文引用: 1]
基于蚁群算法与遗传算法的TSP路径规划仿真
[J].DOI:10.3969/j.issn.1006-9348.2022.12.073 [本文引用: 1]
Simulation of traveling salesman path planning based on ant colony algorithm and genetic algorithm
[J].DOI:10.3969/j.issn.1006-9348.2022.12.073 [本文引用: 1]
/
〈 |
|
〉 |
