一种基于规则的体结构演化设计方法与流程

文档序号:11135379阅读:464来源:国知局
一种基于规则的体结构演化设计方法与制造工艺

本发明涉及一种基于规则的体结构演化设计方法。



背景技术:

3D打印工艺的发展为制造复杂结构的模型提供了高效的方法,轻量化结构的生成方法也成为诸多学者研究的热点,但对复杂轻量化结构的设计仍然有许多困难,现有一些商业三维设计软件等面向3D打印的系统,支持对模型进行抽壳、支撑设计等复杂内部结构的功能。但是缺少有效的分析测试和结构性能评估的工具,无法在保证结构机械性能的前提下,精确计算合适的材料去除率,以及生成支撑的形态、数量和位置。大多方法与系统需要依赖第三方仿真分析软件,根据分析结果通过人工的评估和经验来反复的修改或试错,最终获得优化的模型。针对这些问题,一些新的计算方法尝试通过专用算法生成一些精致的、预定义的模式,但这又限制了设计的灵活性和可交互性。

近年来,通过规则的设计生成轻量化的结构尚在初步阶段,通过基于Agent系统的演化和可废止逻辑规则使设计者能够借助不完全的知识领域,控制结构的演化设计过程,得到满足要求的轻量化结构设计。西安电子科技大学提出的基于Agent的动态演化系统及方法(CN103309658A)用于用户需求和环境不断变化的系统中,是一种满足用户开发动态集成演化系统需求的一种方法,但系统不能自主的应对比如未预定的环境和复杂的环境变化,且没有自主调节机制。北京航空航天大学提出的一种基于多Agent的分布式推演仿真系统与方法(CN101908085A)可以实现自主感知战场环境状态、自主决策和行为输出,是具备可扩充特性并具有通用性的作战仿真系统,但是此系统不能实时应对复杂的战场环境。

目前,大多数面向多Agent系统的研究集中于Agent的感知、行为和写作方法。例如,情景化的多Agent理论系统,以及局部的Agent行为对整个系统的影响等。本文将模型中的每个体单元定义为一个智能Agent,通过设计简单的感知、结构编辑行为,以及行为规则,使体素能够相互作用,在外部和内部环境作用下进行更新,最终通过群体行为的涌现得到满足要求的设计。



技术实现要素:

本发明的目的在于针对已有技术的不足,提供一种基于规则的体结构演化设计方法,通过指定模型中每个体素及其邻域定义为一个智能主体,将模型内部结构装配问题转化为一个多智能主体系统的优化问题,引入可废止逻辑用于单个智能主体的行为控制,通过全局的演化策略控制系统模型整体演化关系,局部演化通过Agent对实时的环境感知,改变自身的行为特性,该方法能够根据不完全的知识和约束,通过群体行为生成满足要求的轻量化结构。

为了实现上述目的,本发明采用如下技术方案:

一种基于规则的体结构演化设计方法,操作步骤如下:

1)体素化:采用八叉树方法对输入的网格模型体素化,并将设计与评估统一到一个计算域中;

2)初始化:构建多Agent系统,定义外部环境;

3)可废止规则演化:Agent感知自身所处的环境信息与自身属性进行判断,并基于可废止规则进行模型演化;

4)有限元分析:通过有限元分析对生成的模型进行评估检测,并实时的把体素受到的应力值反馈到结构的演化过程,并由Agent感知;

5)表面重建:轻量化体素模型结构的表面重建;

6)参数验证:演化生成的网格模型进行参数的验证。

所述步骤1)体素化具体为:采用八叉树方法对输入的网格模型体素化,将三角网格面片结构转化为六面体体素单元,并将设计和评估统一到一个计算域中,为构建多Agent系统的外部环境、模型的编辑和仿真分析提供基础。

所述步骤2)模型初始化具体为:初始化过程需要为Agent系统定义一个环境,我们将这种体模型结构设计方法表达为离散、有限空间内多Agent系统,将每一个体素与其邻域定义为一个智能Agent,根据体结构的多层次性,将模型在不同层次上进行定义。其中,模型的环境为V。采用V.Neumann型和Moore邻域系统,把一个体结构的模型转化成一个多Agent系统,面向功能的设计问题解释为一个多Agent系统的优化问题,每一个Agent基于环境改变自身的结构,并通过定义简单的规则来驱动模型的优化。

首先,对体素化后边界上的体素标记为1,然后对模型中的体素进行若干次遍历,判断其位置值是否未标记且其邻域中有已经标记的体素,若是,则此时进行体素更新(v)。并对其进行赋值为maxN(v)+1,其中N(v)表示邻域距离边界的距离值。

所述步骤3)可废止规则演化具体为:结构的演化是一个迭代的过程,Agent通过感知、判断、行为进行作用,并从环境中感知,包括邻域的状态与评估结果,根据演化需求感知判断所需的信息。并根据感知到的信息与自身状态通过定义可废止规则进行判断。Agent通过判断结果改变自身的属性,并通过自身属性的改变进而促进结构的演化,同时改变内部结构。其中,每个Agent只占用一个设计单元。由感知与行为两方面组成:

轻量化设计中,感知有两部分组成:

1、Γ1(状态)获得Agent本身的信息,包括其本身的状态变量Sa或从其本身的属性计算出来的指标。

2、Γ2(应力)获得外部的状态,在轻量化的设计中只包括从有限元分析中获得的反馈。

Agent的行为包括自身状态的改变、几何特征的改变和材料的改变等。

轻量化设计中,行为包括:

1、Delete(v):Agent删除体素。

2、Update(v):Agent更新体素状态。

为了避免操作的相互干涉,限制Agent中的体素v在设计单元的中心。

Agent的决策:每个Agent由感知的结果决定行为,不同的感知行为进行判断最终只能产生一个结果。设计需求通过可废止的逻辑转化成Agent期望的目标,在轻量化模型设计中,目标如下:

1、事实:

(a)体素应力安全,判断体素受到的等效应力是否小于η[σ];

(b)体素受到应力较小,判断其受到的等效应力是否是模型M中受力最小的10%;

(c)边界体素,判断Agent中的体素是否处在模型M的边界;

(d)空体素,判断体素到边界的距离值是否为0(此规则应用在初始化中,在初始化时建立每个Agent到边界的距离位置关系);

(e)邻域比较距离值,判断其到边界的距离是否是邻域中最大的;

2、必须遵守的规则:

空体素(Γ1(状态))→更新(v)

可废止的规则:

(1)体素受到的应力较小

(2)邻域比较距离边界值最大

3、废止者:

处在边界

应力是安全的

所述步骤4)有限元分析具体为:Agent对环境的感知结果通过有限元分析进行评估检测,并实时反馈到演化过程。在结构演化过程中,评估与反馈的结果由Agent感知。根据不同的设计需求,可以建立多种评估与感知方式嵌入到设计框架中,Agent能够在环境中感知到这些结果,并通过有限元分析对生成模型进行评估检测,实时的把体素受到的应力值反馈到模型的演化过程中。把轻量化的需求描述为在满足力学性能的前提下使模型的体积质量尽可能的小,其定义为以下的优化问题:

其中vi为一个体素,M表示原始模型,F(vi)表示vi所受到的应力,[σ]为许用应力,η为安全系数.

所述步骤5)表面重建具体为:表面重建即提取元胞模型的表面结构,重建用于输出3D打印的表面网格结构。我们把模型结构体最外层的六面体体素所对应的四边形表面转化为三角面片形式,融合连接所有的三角面片,构成模型体的表面网格结构,支持打印机的输出。然后将演化后体素模型与原始的表面模型进行布尔差的运算,在保证表面质量的前提下,生成具有内部结构的轻量化模型;

M0=M∩M1 (2)

其中,M0为轻量化结构模型,M为原始模型,M1为演化后具有内部结构的模型;

所述步骤6)参数验证:针对轻量化模型的实现过程,我们从不同环境影响和不同规则驱动下生成模型,检测模型孔隙率大小,模型生成时间等相关实验测试来验证方法的有效性,不同的内部环境的改变将影响模型的内部结构以及在相同的规则的驱动下不同的外加约束和环境下得到相异的内部结构。

本发明与现有技术相比较,具有如下显而易见的突出实质性特点和显著优点:

本发明方法实现了采用简单的规则来控制复杂的环境变化过程,最终实现全局的优化,生成轻量化模型体结构。

附图说明

图1本发明基于规则的体结构演化设计方法操作步骤流程图。

图2网格模型优选实例。

图3 Agent与环境。

图4不同邻域条件下模型演化过程。

图5不同外部环境的改变对演化过程的影响。

图6,即为表1,为模型的初始化及演化时间。

图7,即为表2,为实验模型结构体孔隙率变化值。

具体实施方式

本发明的优选实施实例,结合附图详细说明如下:

参见图1,一种基于规则的体结构演化设计方法,操作步骤如下:

1)体素化:采用八叉树方法对输入的网格模型体素化,并将设计与评估统一到一个计算域中;

2)初始化:构建多Agent系统,定义外部环境;

3)可废止规则演化:Agent感知自身所处的环境信息与自身属性进行判断,并基于可废止规则进行模型演化;

4)有限元分析:通过有限元分析对生成的模型进行评估检测,并实时的把体素受到的应力值反馈到结构的演化过程,并由Agent感知;

5)表面重建:轻量化体素模型结构的表面重建;

6)参数验证:演化生成的网格模型进行参数的验证。

所述步骤1)体素化:在VisualStudio2013开发环境中使用C++语言实现模型的体素化。输入的stl三角网格模型优选实例兔子见图2,采用八叉树方法对输入的网格模型进行体素化,三角网格体素化后,将设计和评估统一到一个计算域中,为模型的编辑和仿真分析提供基础。

所述步骤2)初始化:初始化过程是为Agent系统定义一个环境,我们把体模型结构设计方法表达为离散、有限空间内多Agent系统,且Agent所处的环境如图3所示,分别为V.Neumann型和Moore型邻域,由于把每个体素定义为一个元胞,初始化时,边界上的体素标记为1,内部体素标记为0。然后根据规则判断其位置值是否未标记且其邻域中有已经标记的体素,若是,则此时进行体素更新(v),赋值为maxN(v)+1,其中N(v)表示其邻域到边界的距离值,对模型中的体素进行若干次遍历,直到所有的体素全部做了标记。

所述步骤3)可废止规则演化;通过八叉树划分5次(Level=5)的苹果和猫咪模型在内部条件改变的情况下基于可废止规则进行试验测试,其中图4描述的是苹果和猫咪分别在V.Neumann型和Moore邻域下的演化结果。从实验可以看出用Moore邻域演化结果更均匀平滑,毛刺少。针对外部环境的改变对模型结构的影响,使用了可废止规则(1)和废止条件对演化过程进行控制,图5给出了兔子和杯子模型在相同的演化规则驱动下由于外界环境施加力的位置改变导致生成模型内部结构的变化,并保留了不同的支撑结构,以承受外界的压力。其中兔子模型的力分别施加在头部,背部,耳部,演化次数对应图5中兔子的(d)N=7次,(h)N=5次、(l)N=9次时模型符合公式(1)的要求,杯子模型力分别施加在顶部和侧面,演化次数分别为(d)N=4和(h)N=7时符合的要求。验证了当外部环境和需求变化时对内部结构的影响。

所述步骤4)有限元分析:针对外部环境的改变对模型内部结构的影响,使用可废止的规则(2)和废止条件对演化过程进行控制,图5给出了兔子和杯子模型在相同的演化规则下,由于外界环境的改变导致模型在演化过程中实时的根据FEA分析的结果进行反馈优化,当模型中体素的应力条件超过许用应力的要求时演化结束。图6描述了兔子、苹果、人、香蕉四模型在演化过程中所用的时间,其中初始化时间我们表示为t0,每一次的演化时间分别由t1到t10表示,表中可以看出模型的初始化和演化所用时间大概在35s-50s之间,初始化时间较短,大部分时间应用在有限元分析和反馈上,图7则描述了兔子、苹果、人、香蕉四模型演化过程中孔隙率的变化值。

所述步骤5)表面重建:对生成的轻量化体素模型进行结构的表面重建,重建是生成可3D打印的表面网格结构,保证表面质量。我们使用的模型表面重建方法是使模型结构体外层的六面体体素表面所对应的四边形表面转化为三角面片形式,连接所有的三角面片,构成模型体的表面网格结构,然后将演化后的体素模型与原始的表面模型进行布尔交的运算,在保证表面质量的前提下,生成具有内部结构的轻量化模型。

所述步骤6)参数验证:对演化生成的轻量化模型进行参数的验证,我们把生成的轻量化结构在普通的桌面3D打印机上打印,使用PLA塑料,屈服强度为41Mpa。并且与其他方法实现相同的轻量化结构进行时间、强度和质量的对比,进而验证方法的可靠性和实用性。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1