一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种变量循环/递归定义的自动识别方法

2022-11-23 17:33:17 来源:中国专利 TAG:

技术特征:
1.一种变量循环/递归定义的自动识别方法,如图1所示,包括具体步骤如下:步骤1、导入建模输出的脚本文件,读取内部因式中的变量及表达式;步骤2、初始化:设定有效变量序列,有效变量表达式序列,因变量集合s
a
,自变量集合s
b
,识别次数i;步骤3、记有效变量序列的长度为n,并设置因变量集合s
a
的初始维度d等于1;步骤4、识别次数i清零;步骤5、在有效变量序列中,放回式不重复抽取d个变量元素置于因变量集合s
a
中;步骤6、遍历因变量集合s
a
中各变量对应表达式,并将所有表达式中自变量的并集置于自变量集合s
b
中;步骤7、符号计算:取f
a
=∑{集合s
a
各变量},f
b
=∑{集合s
b
各变量};步骤8、令δ=f
b-f
a
;步骤9、检测δ内部各符号元素是否存在符号
“‑”
(负号);若存在符号
“‑”
(负号),则说明因变量集合s
a
中的变量元素不存在循环/递归定义,执行步骤11;若不存在符号
“‑”
(负号),则说明因变量集合s
a
中的变量元素存在循环/递归定义,执行步骤10;步骤10、输出因变量集合s
a
中的变量元素存在循环/递归定义,并返回原始建模文档,由技术人员对其进行处理,使变量元素消除循环/递归定义,执行步骤11;步骤11、识别次数i自加1;步骤12、检测识别次数i是否等于排列组合若识别次数i等于则说明在当前维度下已完成所有不同组合的变量抽样,执行步骤13;若识别次数i不等于则说明在当前维度下尚有未被检测到的变量元素,需返回步骤5;步骤13、检测因变量集合s
a
的维度d是否等于有效变量序列长度n;若维度d等于序列长度n,则说明已完成所有变量元素的识别,跳转至步骤15;若维度d小于序列长度n,则说明尚未完成所有维度下变量集的识别检测,执行步骤14;步骤14、扩充因变量集合s
a
的维度,即因变量集合s
a
的当前维度d自加1,并返回步骤4;步骤15、识别完成后的有效变量及表达式以脚本文件的形式输出;识别处理完成,退出程序。2.根据权利要求1所述的一种变量循环/递归定义的自动识别方法,其特征在于:其核心算法是,在不同维度下放回式不重复抽取相应个数的模型变量,结合集合理论及符号计算原理,通过识别因变量与自变量之间的集合逻辑关系,可准确定位存在循环/递归定义的模型变量。针对本发明提供的技术方案,可通过第一数学归纳法给予有效证明,即本算法可准确自动识别存在递归定义及不同维度循环定义的模型变量。3.根据权利要求1所述的一种变量循环/递归定义的自动识别方法,其特征在于:步骤3中,记有效变量序列的长度为n,并设置因变量集合s
a
的初始维度d等于1。该步骤中,所述因变量集合s
a
的维度d为1时,通过本发明提出的算法可识别各变量是否存在递归定义。
4.根据权利要求1、3所述的一种变量循环/递归定义的自动识别方法,其特征在于:所述设置因变量集合s
a
的初始维度d等于1,并配合后续步骤14逐轮扩充因变量集合s
a
的维度,其目的是,在保证各模型变量无递归定义的前提下,进一步识别多维度变量的循环定义时,可避免因模型变量存在递归定义的问题而降低识别循环定义的准确性。

技术总结
本发明公开了一种变量循环/递归定义的自动识别方法,用于解决建模过程中因输出模型可能存在变量循环定义及递归定义,使后续重排序不能有效处理,从而导致模型递推计算无法持续进行的问题。本发明公开的算法基于机械化建模输出的脚本文件,通过计算机软硬件平台以自动识别批处理方式准确识别存在循环定义或递归定义的模型变量,其核心算法是,结合集合理论及符号计算原理,通过识别因变量与自变量之间的集合逻辑关系,可准确定位存在循环/递归定义的模型变量,并返回原始建模文档进行校正处理,其结果是模型变量可持续进行数值迭代计算。本发明有效解决因模型变量存在循环定义及递归定义使得后续模型递推计算无法持续进行的问题,利用自动识别批处理方式替代人工检测方式,本算法准确高效且实施简单明了,具有很强的工程意义。强的工程意义。强的工程意义。


技术研发人员:黄用华 梁子彦 庄未 骆泽众 萧洪亮 刘夫云 黄美发 钟永全
受保护的技术使用者:桂林电子科技大学
技术研发日:2022.08.10
技术公布日:2022/11/22
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献