一种快稳简的方槽体外作用宽度评定方法与流程

文档序号:14609670发布日期:2018-06-05 20:33阅读:367来源:国知局
一种快稳简的方槽体外作用宽度评定方法与流程
本发明属于精密计量与计算机应用领域,具有涉及一种稳定、快速、形式简单的方槽体外作用宽度评定方法,可用于方槽体外作用宽度的评定,并为其加工工艺的改进提供指导。
背景技术
:尺寸误差、形位误差(形状误差和位置误差的简称)直接影响产品质量、装配及其使用寿命,快速、准确地计算零件误差,具有重要的意义。方槽体外作用宽度指的是分别与方槽两个平行侧面接触的两个平行平面间的最大距离,如附图1所示。目前,方槽体外作用宽度的评定方法是学术界的一个研究热点,主要分为以下五类评定方法。第一类,专门的几何评定方法。利用平行平面的几何性质,按照内接平行平面的联合运动策略,逐步寻找符合定义的方槽体外作用宽度。这类方法中,数学模型的形式较复杂,速度有的较快有的不快,不利于推广使用。第二类,凸包或类凸包评定方法。利用凸包的性质构建凸包或类凸包,获取有效测量数据,缩小待评定数据规模,最终通过枚举法取得符合定义的方槽体外作用宽度。这类方法处理中等规模测点数据时有明显的优势。数据规模较大的场合,也仍然可以通过构建凸包来缩小数据规模。但是,这类方法用于直接评定的效率却已经显得不足了。第三类,构建线性或非线性的目标优化函数,并采用普通优化方法进行优化求解,目标优化函数的优化值作为方槽体外作用宽度。这类方法简单易懂,在很多软件中实现了标准解法,因此,易于推广。由于没有加入方槽体外作用宽度评定的几何特点,而且没有考虑评定任务中数据规模较大这一情况,这类方法普遍效率不高。第四类,人工智能/生物智能算法。这类方法相较于第三类方法的优势在于分析“具有复杂梯度解析式或没有明显解析式的目标函数”和寻找“全局最优值”。这类方法目前也在很多软件中实现了标准解法,因此,也易于推广。虽然目前这类方法比较火热,但用在方槽体外作用宽度评定时不太合适。这是因为方槽体外作用宽度评定的目标函数的梯度是大量简单解析式之和,且目标函数的“局部最优值”就是“全局最优值”。因此,这类方法并没有比第三类方法明显的优势。第五类,有效集法。有效集法是专门处理大规模规划问题的一种方法,其特点在于在寻优过程中尽量减少对“无效约束”的处理。应用于方槽体外作用宽度评定时,效率与第一类方法相当,算法成熟度和软件集成度与第三类、第四类方法相当,是目前比较快速、简单的方槽体外作用宽度评定方法。但是,这种方法对初始值非常敏感,并不是总能稳定地完成方槽体外作用宽度评定任务。综上所述,目前仍然缺少一种稳定、快速、形式简单的方槽体外作用宽度评定方法。技术实现要素:本发明的目的是:本发明针对现有的技术存在的所述问题,提供一种稳定、快速、形式简单的方槽体外作用宽度评定方法,可用于方槽体外作用宽度的评定,并为其加工工艺的改进提供指导。本发明采用的方案是:一种快稳简的方槽体外作用宽度评定方法是通过以下步骤实现的:步骤1:获取测点集{pi},并根据{pi}建立特征行向量集{Ai}、边界元素集{bi}和状态元素集{ti},其中:i=1,2,3,…,N;i为测点序号,N为测点总数;pi={xi,yi,zi}是测点i的平面直角坐标,并且被测方槽的中心平面接近坐标系的XOY平面,测点在坐标系原点附近;ti=|zi|,所有的状态元素ti的集合为状态元素集{ti};Ai=([1,yi,-xi])zi/ti,是一个特征行向量,所有的特征行向量Ai的集合为特征行向量集{Ai};bi=b,是一个大于0的实数,所有的边界元素bi的集合为边界元素集{bi}。步骤1结束后进行步骤2。步骤2:取ti最小值tmin对应的测点pl1为关键点,并将其测点序号l1加入到关键点集{l}中。步骤2结束后进行步骤3。步骤3:根据关键点集{l}建立分析矩阵A和分析列向量b,其中:A=[…,AjT,…,AkT,…]T,是个L行3列的矩阵,L为关键点集{l}中的元素个数,j,k为关键点集{l}中的元素;b=[…,b,…]T,是个L行的列向量。步骤3结束后进行步骤4。步骤4:对分析矩阵A及增广分析矩阵[A,b]进行秩分析。计算rA=rank(A),rAb=rank([A,b]),并比较rA和rAb,只有以下两种情况:情况一:如果rA=rAb,那么,应当继续寻优,跳到步骤5;情况二:如果rA<rAb,那么,尝试从分析矩阵A和分析列向量b中删掉关键点集{l}中的某一个元素l对应的行,得到缩小矩阵Al-和缩小列向量bl-,求线性方程Al-vl-=bl-的解vl-=vl-0,然后计算bl-=Alvl-0;如果关键点集{l}中的元素都尝试过了,并且没有得到任何一个bl->b,那么,应当结束寻优,跳到步骤7;如果在尝试关键点集{l}中的元素l时,得到bl->b,那么,将缩小矩阵Al-和缩小列向量bl-分别作为A矩阵及分析列向量b,将元素l移出关键点集{l},并跳到步骤5;其中,vl-=[vl-,1,vl-,2,vl-,3]T,vl-0=[vl-0,1,vl-0,2,vl-0,3]T。步骤5:求线性方程Av=b的解v=v0,其中,v=[v1,v2,v3]T,v0=[v0,1,v0,2,v0,3]T。步骤5结束后进行步骤6。步骤6:计算vi=Aiv0,然后计算τi=(ti–tmin)÷(b-vi)。取τi中大于零的那部分中的最小值τmin对应的测点pl2为新的关键点,并将其测点序号l2加入到关键点集{l}中。将所有ti更新为ti+τmin∙vi,tmin更新为ti的最小值。步骤6结束后完成一次寻优,进行步骤3。步骤7:计算t=2tmin就是所求的方槽体外作用宽度。为了方便地获取步骤1中的测点集{pi},可以将一般的测量数据{pi*}通过以下但不限以下方法进行处理,得到中心平面接近坐标系的XOY平面、测点在坐标系原点附近的测点集{pi}:一、按坐标的平均值进行移动;二、按坐标的极值进行移动;三、按坐标的均方根最小原则进行移动。为了得到更精确的解,可以进行如下优化:在步骤6中,如果τmin∙vi的单次值或数次迭代的累加值∑τmin∙vi大于给定的阈值q,那么,将测点集{pi}更新为pi+τmin∙v或pi+∑τmin∙v,并按步骤一中的公式更新特征行向量集{Ai}、边界元素集{bi}和状态元素集{ti}。为了便于数值计算,可以令b取一个具体的大于0的数值,可以但不限于1。本发明的有益效果是:1、充分考虑方槽体外作用宽度的几何特点,简化评定形式,因此,比第一类评定方法更易于推广。2、充分考虑方槽体外作用宽度的几何特点,每次迭代都通过成熟的线性运算得到一个更优的值,并会最终得到最小的方槽体外作用宽度,因此,本算法比较稳定,不存在第五类方法的初值敏感问题。3、隐含方槽体外作用宽度评定中“大部分测点是无效测点”的事实,这些无效的测点不会加入迭代,因此,本发明的迭代次数较少,与第一类评定方法和第五类评定方法相当。4、在计算寻优方向时,只考虑关键点集{l}对应的测点,因此,每次迭代的运算量较小,与第五类评定方法相当。5、由于迭代次数较少、每次迭代的运算量较小,因此,总运算速度与第一类评定方法和第五类评定方法相当。本发明提供了一种方槽体外作用宽度评定方法,该方法稳定、快速、形式简单,可用于方槽体外作用宽度的评定,并为其加工工艺的改进提供指导,因此具备工业可能性。附图说明图1为方槽体外作用宽度示意图。图2为本发明的流程图。具体实施方式以下是本发明的具体实施例,参照附图对本发明的方案作进一步的描述,但本发明并不限于这些实施例。评定测点集{pi}的方槽体外作用宽度。步骤1:获取测点集{pi}如下:ixiyizi1-3.3329-3.33282.50772-3.33143.33522.54093-3.331910.00042.518043.3337-3.33332.515853.33473.33462.527263.334210.00062.5251710.0015-3.33182.5288810.00153.33462.5062910.001010.00072.504610-3.3330-3.3329-2.533611-3.33253.3347-2.512812-3.333310.0011-2.5140133.3352-3.3315-2.5196143.33343.3347-2.5419153.335310.0001-2.52251610.0012-3.3320-2.53601710.00133.3348-2.51871810.001210.0002-2.5029建立状态元素集{ti}如下:iti12.507722.540932.518042.515852.527262.525172.528882.506292.5046102.5336112.5128122.5140132.5196142.5419152.5225162.5360172.5187182.5029建立特征行向量集{Ai}如下:建立边界元素集{bi}如下:{bi}=[1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1]T。步骤1结束后进行步骤2。步骤2:取ti最小值tmin=2.5028对应的测点p18为关键点,并将其测点序号18加入到关键点集{l}中,使得{l}={18}。步骤2结束后进行步骤3。步骤3:根据关键点集{l}建立分析矩阵A和分析列向量b,其中:A=A18=[-1,-10.0002,10.0012],是个1行3列的矩阵,关键点集{l}={18}中的元素个数为1,元素为18;b=1,是个1行的列向量,也可以看成单一元素。步骤3结束后进行步骤4。步骤4:对分析矩阵A及增广分析矩阵[A,b]进行秩分析。计算rA=rank(A)=1,rAb=rank([A,b])=1,并比较rA和rAb。因为rA=rAb,所以应当继续寻优,跳到步骤5。步骤5:求线性方程Av=b的解v=v0=[0.0000,0.0000,0.1000]T。步骤5结束后进行步骤6。步骤6:计算vi=Aiv0,结果如下:ivi10.333220.333130.33314-0.33335-0.33346-0.33347-1.00008-1.00009-1.000010-0.333311-0.333212-0.3333130.3335140.3333150.3335161.0000171.0000181.0000然后计算τi=(ti–tmin)÷(b-vi),记录其中大于0的结果如下:iτi10.007220.057130.022740.009750.018260.016670.013080.001690.0009100.0230110.0075120.0083130.0251140.0585150.0295其中最小值τmin=0.0008对应的测点p9为新的关键点,将其测点序号9加入到关键点集{l}中,使得关键点集{l}={18,9}。将所有ti更新为ti+τmin∙vi,tmin更新为ti的最小值。步骤6结束后完成一次寻优,进行步骤3。以此类推,完成第三次寻优后,关键点集{l}={10,18,2,11}。此时,先进行步骤3:根据关键点集{l}={10,18,2,11}建立分析矩阵A和分析列向量b,其中:b=[1,1,1,1]T。步骤3结束后进行步骤4。步骤4:对分析矩阵A及增广分析矩阵[A,b]进行秩分析。计算rA=rank(A)=3,rAb=rank([A,b])=4,rA<rAb。首先,尝试从分析矩阵A和分析列向量b中删掉关键点集{l}={10,18,2,11}中的第一个元素10对应的行,得到缩减矩阵A10-:和b10-列向量b=[1,1,1]T。求得线性方程A10-v10-=b10-的解v10-=v10-0=[-7943.4768,1588.4460,794.3304]T,然后计算b10-=A10v10-0=10588.7384>1=b。将A10-矩阵和b10-矩阵分别作为A矩阵及b矩阵,将元素10移出关键点集{l},使得{l}={18,2,11},并跳到步骤5。类似的,完成接下来的第四次寻优后,关键点集{l}={18,2,11,5}。此时,先进行步骤3:根据关键点集{l}={18,2,11,5}建立分析矩阵A和分析列向量b,其中:b=[1,1,1,1]T。步骤3结束后进行步骤4。步骤4:对分析矩阵A及增广分析矩阵[A,b]进行秩分析。计算rA=rank(A)=3,rAb=rank([A,b])=4,rA<rAb。如前所述,可以求得:b18-=A18v18-0=-13544.8924<1=b;b2-=A2v2-0=-1.0007<1=b;b11-=A11v11-0=-1.0002<1=b;b5-=A5v5-0=-5295.0404<1=b。跳到步骤7。步骤7:计算t=2tmin=2×2.5057=5.0115就是所求的方槽体外作用宽度。在上述说明中,通过特定实施例说明了本发明,但本领域的技术人员应理解在不脱离权利要求范围内发明的思想及领域内可进行各种改造及变形。当前第1页1 2 3 
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1