System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 一种基于拓扑排序和约束求解的供应链监督规则冲突检测方法技术_技高网

一种基于拓扑排序和约束求解的供应链监督规则冲突检测方法技术

技术编号:42639458 阅读:15 留言:0更新日期:2024-09-06 01:37
本发明专利技术属于知识图谱规则冲突检测领域,公开了一种基于拓扑排序和约束求解的规则冲突检测方法及系统,用于对企业供应链管理系统中规则条例合法性及合理性的判断。本发明专利技术采用了基于抽象语法树(AST)的规则解析方法,将以Datalog语法编写的规则字符串解析成JSON格式,并与现有规则集进行语义关联;在规则集中添加或者修改规则时,对规则集进行术语语义不一致冲突检测,如果没有冲突则成功添加或修改,否则出现错误提示,不予添加或修改;采用拓扑排序的方法检测规则集中是否出现依赖环路冲突,来防止规则推理陷入死锁;引入约束求解思想来检测规则集中是否存在互斥规则,避免在规则推理过程中出现错误,从而保证规则推理的正确性。

【技术实现步骤摘要】

本专利技术属于计算机技术知识图谱中的规则推理领域,特别涉及一种基于拓扑排序和约束求解的规则冲突检测方法及系统。


技术介绍

1、随着企业供应链管理系统中规则日趋复杂化,合规指标的监控变得尤为重要。合规性监督不仅要求严格遵守相关的法律法规,还要符合组织内部制定的规章制度,因此企业供应链管理系统,系统内部的规则设置可能会发生逻辑循环或冲突,特别是在规则相互重叠或条件相互矛盾时。例如,一个采购订单可能同时满足多个审查标准,而这些标准的判定结果可能存在冲突,如同一订单在某些条件下被认为合规,而在其他条件下被视为不合规。这种情况,如何合理设置和调整规则,以防止逻辑循环和规则冲突,成为了本专利技术要解决的问题。

2、现如今知识推理迅速发展,大多数的推理应用与外部知识的结合度不够,而且其中的规则需要事先对知识的结构进行分析才能够定义规则,并且都是手动编写代码实现。而另外采用逻辑编程语言如datalog的推理应用,它们定义的规则与知识缺乏显式关联,当datalog的规则在没有关联语义时,会造成在规则建模时不能自动检测规则的语义不一致问题,如对于两个函数function(x)和function(y),无法判断x和y对于的本体和概念是否相同;同时,在推理时也无法利用规则语义自动加载外部知识,如对于规则中某个函数使用到了与本体属性关联的weight[x],但由于规则并没有关联知识图谱语义,不能自动识别x和weight属于哪个本体和其属性,因此无法做到从知识图谱中自动导入相关的属性值,与知识图谱的结合度还是比较差。如何实现更好的规则建模将外部知识与规则强关联起来,并基于外部知识为推理应用服务,仍然是一个热点与技术挑战。同时传统的规则库建模和推理方法也存在着一些问题,如规则冲突难以处理、规则维护困难等,也是待解决的一个问题。

3、因此,针对目前知识图谱与规则推理的这些局限性,本专利技术能够基于外部知识来对规则进行建模,实现规则与外部知识的语义关联,并且基于语义关联能够自动化地从外部知识导入事实数据,同时也支持外部事实数据的手动导入。在规则集中,对新导入的规则对进行冲突检测。本专利技术为企业供应链管理系统提供了一种更便捷、更高效的规则冲突检测方法,该方法适用于在复杂场景和数据繁杂的情况,能够为用户快速定位问题点,具有广泛的应用价值和实际意义。


技术实现思路

1、针对目前知识图谱中规则推理的局限性以及技术的不足,本专利技术提出了一种基于拓扑排序和约束求解的供应链监督规则冲突检测方法,以增加知识图谱中规则推理的合理性和正确性。

2、为实现上述目的,本专利技术的技术方案为:一种基于拓扑排序和约束求解的供应链监督规则冲突检测方法,其特征在于,包括:

3、(1)采用了基于抽象语法树(ast)的规则解析方法,将以datalog语法编写的企业供应链管理规则字符串解析成json形式,与规则集进行语义关联,自动化将规则信息补全。

4、1.1)针对不同类型规则的规则字符串,定义不同形式的数据解析逻辑,主要包含函数类型的规则、属性类型的规则、常量等式类型的规则以及混合类型的规则。

5、1.2)采用抽象语法树技术,编写遍历节点方法,遍历找到所需的第一个节点,然后以此为根节点再向下递归遍历,直至找到所有节点。

6、1.3)根据不同类型的节点,确定遍历中的处理逻辑,记录所需的信息。增加记忆功能,若新增加的规则术语或者函数在规则集中出现过,则在解析的时候将自动化补全这些信息。

7、1.4)将解析得到规则的函数与参数或术语信息进行函数语义关联。若规则集中存在待解析的规则,通过上述记忆模块进行字段补全,跳过该步骤。否则,通过搜索对应知识图谱的本体,匹配函数名与本体的属性字段,若匹配成功,则在函数中添加本体信息,关联函数与该本体,若匹配失败,可后续手动填写函数或术语与本体的关联信息,实现函数及术语的本体关联。

8、(2)在规则集中添加或者修改规则时,对规则集进行术语语义不一致冲突检测,如果没有冲突则成功添加或修改,否则出现错误提示,不予添加或修改。

9、2.1)用哈希表记录规则集中所有规则的参数的位置和信息,形成<函数名,<参数位置,术语信息>>的hashmap1。

10、2.2)对待添加/修改的规则进行同样处理形成一个<函数名,<参数位置,术语信息>>的hashmap2。

11、2.3)对于待添加/修改的规则的结论和前置条件,判断第一步产生的hashmap1中是否存在与待添加/修改的规则的函数名相同的key值,如不存在说明规则集中无与之具有相同语义的函数,直接添加/修改,否则转到下一步(4)。

12、2.4)待添加/修改规则与规则集中存在相同语义的函数,如果其存在本体信息,需要检测是否存在术语冲突;待添加/修改规则与规则集中存在具有相同语义的函数其携带本体信息时,则检测术语冲突。检测对应位置参数的本体信息是否一致,这里需要处理两种情况:具有相同语义的函数其中之一术语本体信息存在但不全;具有相同语义的函数其术语本体信息都完全。以function(a,b)和function(c,d)为例,上述的hashmap1中记录了一条信息:<function,<1,a的术语信息>>和<function,<2,b的术语信息>>,上述的hashmap2中记录了一条信息:<function,<1,c的术语信息>>和<function,<2,d的术语信息>>,此时比较相同的参数位置对应的本体信息是否相同,来判定是否出现术语冲突。

13、2.5)若待添加/修改规则不存在本体信息,则不可能出现术语冲突情况,此时,根据函数的传递性我们可以认为待添加/修改规则的函数与其具有相同语义的函数的术语的本体完全一致,则根据规则集中相同语义函数的术语信息对待添加/修改规则的术语信息进行补全处理。

14、(3)采用拓扑排序的方法检测规则集中是否出现依赖环路冲突,来防止规则推理陷入死锁。

15、3.1)将待添加规则预添加到规则集中,或者对待修改规则进行预修改,得到一个待检测的规则集。

16、3.2)遍历规则集建立一个有向图,节点为规则中的所有条件,其中的边从结论指向前置条件。

17、3.3)对形成的图进行拓扑排序,不断删除入度为0的节点,若最后剩余了不能删除的节点,则可判断图中存在环路,且剩余的节点构成了这个环路,返回出现环路的节点信息,否则图中不存在环路,成功添加或修改规则。

18、(4)引入约束求解思想来检测规则集中是否存在互斥规则,避免在规则推理过程中出现错误。

19、4.1)创建条件变量。将待添加规则预添加到规则集中,遍历规则集,对每条规则的前置条件和结论创建条件变量,形成条件变量列表。构建约束求解器,将上述条件变量列表中的条件编译为约束条件,加入到约束求本文档来自技高网...

【技术保护点】

1.一种基于拓扑排序和约束求解的供应链监督规则冲突检测方法,其特征在于,包括依次进行的预处理,术语冲突检测、依赖环路冲突检测以及互斥规则冲突检测,具体是

2.根据权利要求1所述基于拓扑排序和约束求解的规则冲突检测方法,其特征在于,所述预处理中基于AST的规则解析与规则集的语义关联包括:

3.如权利要求1所述基于拓扑排序和约束求解的规则冲突检测方法,其特征在于,所述术语冲突检测中规则集术语语义不一致冲突检测包括:

4.如权利要求1所述基于拓扑排序和约束求解的规则冲突检测方法,其特征在于,所述依赖环路冲突检测采用拓扑排序的方法检测规则集中是否出现依赖环路:

5.如权利要求1所述基于拓扑排序和约束求解的规则冲突检测方法,其特征在于,所述互斥规则冲突检测引入约束求解思想来检测规则集中是否存在互斥规则:

6.一种基于拓扑排序和约束求解的供应链监督规则冲突检测系统,其特征在于,包括

7.根据权利要求6所述基于拓扑排序和约束求解的规则冲突检测系统,其特征在于,所述预处理模块中基于AST的规则解析与规则集的语义关联包括:p>

8.如权利要求6所述基于拓扑排序和约束求解的规则冲突检测系统,其特征在于,所述术语冲突检测模块中规则集术语语义不一致冲突检测包括:

9.如权利要求6所述基于拓扑排序和约束求解的规则冲突检测系统,其特征在于,所述依赖环路冲突检测模块采用拓扑排序的方法检测规则集中是否出现依赖环路:

10.如权利要求6所述基于拓扑排序和约束求解的规则冲突检测系统,其特征在于,所述互斥规则冲突检测模块基于约束求解来检测规则集中是否存在互斥规则具体包括:

...

【技术特征摘要】

1.一种基于拓扑排序和约束求解的供应链监督规则冲突检测方法,其特征在于,包括依次进行的预处理,术语冲突检测、依赖环路冲突检测以及互斥规则冲突检测,具体是

2.根据权利要求1所述基于拓扑排序和约束求解的规则冲突检测方法,其特征在于,所述预处理中基于ast的规则解析与规则集的语义关联包括:

3.如权利要求1所述基于拓扑排序和约束求解的规则冲突检测方法,其特征在于,所述术语冲突检测中规则集术语语义不一致冲突检测包括:

4.如权利要求1所述基于拓扑排序和约束求解的规则冲突检测方法,其特征在于,所述依赖环路冲突检测采用拓扑排序的方法检测规则集中是否出现依赖环路:

5.如权利要求1所述基于拓扑排序和约束求解的规则冲突检测方法,其特征在于,所述互斥规则冲突检测引入约束求解思想来检测规则集...

【专利技术属性】
技术研发人员:韩凌吴锋艳李彬冷宛佳吴小含车木子饶燕华杨成轩
申请(专利权)人:国网湖北省电力有限公司物资公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1