CN111062804A - 担保圈识别方法及装置 - Google Patents
担保圈识别方法及装置 Download PDFInfo
- Publication number
- CN111062804A CN111062804A CN201911250382.2A CN201911250382A CN111062804A CN 111062804 A CN111062804 A CN 111062804A CN 201911250382 A CN201911250382 A CN 201911250382A CN 111062804 A CN111062804 A CN 111062804A
- Authority
- CN
- China
- Prior art keywords
- tree
- guarantee
- directed graph
- grouping
- depth
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q40/00—Finance; Insurance; Tax strategies; Processing of corporate or income taxes
- G06Q40/03—Credit; Loans; Processing thereof
Landscapes
- Business, Economics & Management (AREA)
- Accounting & Taxation (AREA)
- Finance (AREA)
- Engineering & Computer Science (AREA)
- Development Economics (AREA)
- Economics (AREA)
- Marketing (AREA)
- Strategic Management (AREA)
- Technology Law (AREA)
- Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供了一种担保圈识别方法及装置,担保圈识别方法包括:对可以表征客户之间的担保关系的有向图进行分组,在分组结果中,每个有向图与其他有向图无连接关系;在所述分组结果查找所有闭合圈,以识别所述担保圈。本方法可以快速完整地将商业银行信贷业务的客户识别形成的担保圈,从而提高银行的风险管控能力。
Description
技术领域
本发明涉及金融机构风险管控技术,具体涉及一种担保圈识别方法及装置。
背景技术
担保圈是指多家企业通过相互担保或连环担保连接到一起而形成的以担保关系为链条的特殊利益体。随着商业银行资产规模不断增长,保证担保贷款也随之增加,客户间互保或连环担保形成担保圈贷款。担保圈的形成使原本不相连的公司变得息息相关,圈内一个企业的风险会沿担保链条扩散传导,引发圈内其他企业贷款风险。在担保圈的概念中,有两个关键词,一是“互保”,二是“连环担保”。所谓互保,即债务人与担保人之间的彼此担保行为。所谓连环担保,即若干债务人之间形成的债务人为债务人提供担保的行为。由于担保圈涉及的债权债务及或有债权债务关系相当复杂和隐蔽,其范围也在不断发生变化,因此对于商业银行而言,所有以保证方式办理的信贷业务(包括表内表外业务)均应纳入担保圈管理范围。而如何快速完整地将商业银行信贷业务的客户识别形成的担保圈,从而提高银行的风险管控能力,是亟需解决的问题。
发明内容
针对现有技术中的问题,本发明所提供的担保圈识别方法可以查找所有的担保圈是否均为封闭的、不交叉的,即每个担保圈内的企业相互之间是否存在担保关系,且不同担保圈内的企业相互之间是否存在担保关系,从而更好的对信贷业务进行风险管控。
为解决上述技术问题,本发明提供以下技术方案:
第一方面,本发明提供一种担保圈识别方法,包括:
对可以表征客户之间的担保关系的有向图进行分组,在分组结果中,每个有向图与其他有向图无连接关系;
在所述分组结果查找所有闭合圈,以识别所述担保圈。
一实施例中,所述对可以表征客户之间的担保关系的有向图进行分组,包括:
根据所有有向图生成初始宽度优先树,所述初始宽度优先树只包括根节点;
计算所述初始宽度优先树初始节点至所述初始优先树的所有根节点的路径中的最短路径,
在计算所述最短路径过程中,将所有的未知节点加入至所述初始宽度优先树,以生成目标宽度优先树;
根据所述目标宽度优先树对可以表征客户之间的担保关系的有向图进行分组。
一实施例中,所述在所述分组结果查找所有闭合圈,以识别所述担保圈,包括:
根据所述分组结果生成深度优先树;
从所述深度优先树的顶点出发,对所述深度优先树进行深度优先遍历,直至所述深度优先树中的所有节点以及路径均被访问,并生成遍历结果;
根据所述遍历结果识别所述担保圈。
一实施例中,担保圈识别方法还包括:对所述有向图进行简化,包括:
删除所述有向图中只具有出口边或者入口边其中之一的节点;
将所述有向图中具有双向连接关系的多个节点设置为一个节点,并删除所述多个节点之间的边。
一实施例中,担保圈识别方法还包括:
对所述闭合圈进行简化逆向处理。
第二方面,本发明提供一种担保圈识别装置,该装置包括:
有向图分组单元,用于对可以表征客户之间的担保关系的有向图进行分组,在分组结果中,每个有向图与其他有向图无连接关系;
担保圈识别单元,用于在所述分组结果查找所有闭合圈,以识别所述担保圈。
一实施例中,所述有向图分组单元包括:
初始优先树生成模块,用于根据所有有向图生成初始宽度优先树,所述初始宽度优先树只包括根节点;
最短路径计算模块,用于计算所述初始宽度优先树初始节点至所述初始优先树的所有根节点的路径中的最短路径,
目标优先树生成模块,用于在计算所述最短路径过程中,将所有的未知节点加入至所述初始宽度优先树,以生成目标宽度优先树;
有向图分组模块,用于根据所述目标宽度优先树对可以表征客户之间的担保关系的有向图进行分组。
一实施例中,所述担保圈识别单元包括:
深度优先树生成模块,用于根据所述分组结果生成深度优先树;
优先树遍历模块,用于从所述深度优先树的顶点出发,对所述深度优先树进行深度优先遍历,直至所述深度优先树中的所有节点以及路径均被访问,并生成遍历结果;
担保圈识别模块,用于根据所述遍历结果识别所述担保圈。
一实施例中,担保圈识别装置还包括:有向图简化单元,用于对所述有向图进行简化,所述有向图简化单元包括:
节点删除模块,用于删除所述有向图中只具有出口边或者入口边其中之一的节点;
边删除模块,用于将所述有向图中具有双向连接关系的多个节点设置为一个节点,并删除所述多个节点之间的边。
一实施例中,担保圈识别装置还包括:
逆向处理单元,用于对所述闭合圈进行简化逆向处理。
第三方面,本发明提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行程序时实现担保圈识别方法的步骤。
第四方面,本发明提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现担保圈识别方法的步骤。
从上述描述可知,本发明实施例提供担保圈识别方法及装置,首先对可以表征客户之间的担保关系的有向图进行分组,在此基础上,对有向图进行简化,再利用深度优先搜索算法在所述分组结果查找所有担保圈。从而对所有保证关系进行穷举查找,直至所有的担保圈都是封闭不交叉为止,即每个担保圈内的企业相互之间存在担保关系,且不同担保圈内的企业相互之间无担保关系,并将每户企业打上相应的担保圈标识。本方法可以快速完整地将商业银行信贷业务的客户识别形成的担保圈,从而提高银行的风险管控能力。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明的实施例中的担保圈识别方法的流程示意图一;
图2为本发明的实施例中的担保圈识别方法的流程示意图二;
图3为本发明的实施例中的担保圈识别方法步骤300的流程示意图;
图4为本发明的实施例中的担保圈识别方法的流程示意图三;
图5为本发明的具体应用实例中担保圈识别方法的流程示意图;
图6为本发明的具体应用实例中担保圈识别方法的思维导图;
图7为本发明的具体应用实例中有向图清理步骤示意图一;
图8为本发明的具体应用实例中有向图清理步骤示意图二;
图9为本发明的具体应用实例中有向图清理步骤示意图三;
图10为本发明的具体应用实例中利用宽度优先搜索算法对所有有向图进行分组步骤示意图一;
图11为本发明的具体应用实例中利用宽度优先搜索算法对所有有向图进行分组步骤示意图二;
图12为本发明的具体应用实例中利用宽度优先搜索算法对所有有向图进行分组步骤示意图三;
图13为本发明的具体应用实例中利用宽度优先搜索算法对所有有向图进行分组步骤示意图四;
图14为本发明的具体应用实例中利用宽度优先搜索算法对所有有向图进行分组步骤示意图五;
图15为本发明的具体应用实例中利用宽度优先搜索算法对所有有向图进行分组步骤示意图六;
图16为本发明的具体应用实例中利用宽度优先搜索算法对所有有向图进行分组步骤示意图七;
图17为本发明的具体应用实例中有向图简单化步骤示意图一;
图18为本发明的具体应用实例中有向图简单化步骤示意图二;
图19为本发明的具体应用实例中有向图简单化步骤示意图三;
图20为本发明的具体应用实例中利用深度优先搜索算法查找回路步骤示意图一;
图21为本发明的具体应用实例中利用深度优先搜索算法查找回路步骤示意图二;
图22为本发明的具体应用实例中利用深度优先搜索算法查找回路步骤示意图三;
图23为本发明的具体应用实例中利用深度优先搜索算法查找回路步骤示意图四;
图24为本发明的具体应用实例中利用深度优先搜索算法查找回路步骤示意图五;
图25为本发明的具体应用实例中利用深度优先搜索算法查找回路步骤示意图六;
图26为本发明的具体应用实例中利用深度优先搜索算法查找回路步骤示意图七;
图27为本发明的具体应用实例中利用深度优先搜索算法查找回路步骤示意图八;
图28为本发明的具体应用实例中双向连接边简化示意图;
图29为本发明的实施例中的担保圈识别装置的结构框图一;
图30为本发明的实施例中的担保圈识别装置的结构框图二;
图31为本发明的实施例中的有向图简化图单元结构框图;
图32为本发明的实施例中的担保圈识别装置的结构框图三;
图33为本发明的实施例中的电子设备的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整的描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
基于现有技术的缺点,本发明的实施例提供了一种担保圈识别方法的具体实施方式,参见图1,该方法具体包括如下内容:
步骤100:对可以表征客户之间的担保关系的有向图进行分组,在分组结果中,每个有向图与其他有向图无连接关系。
可以理解的是,步骤100的目的是:对有向图进行分组,最终拆分成若干个小有向图,确保在每个小有向图中,所有的边都和其他的有向图都没有连接关系。另外,在此基础上进行进行查找速度会更快。
步骤200:在所述分组结果查找所有闭合圈,以识别所述担保圈。
步骤200中的闭合圈是指有向图中的回路,深度优先搜索是一种在开发爬虫早期使用较多的方法。它的目的是要达到被搜索结构的叶结点(即那些不包含任何超链的HTML文件)。在一个HTML文件中,当一个超链被选择后,被链接的HTML文件将执行深度优先搜索,即在搜索其余的超链结果之前必须先完整地搜索单独的一条链。深度优先搜索沿着HTML文件上的超链走到不能再深入为止,然后返回到某一个HTML文件,再继续选择该HTML文件中的其他超链。当不再有其他超链可选择时,说明搜索已经结束。
从上述描述可知,本发明实施例提供担保圈识别方法,首先对可以表征客户之间的担保关系的有向图进行分组,在此基础上,对有向图进行简化,再利用深度优先搜索算法在所述分组结果查找所有担保圈。从而对所有保证关系进行穷举查找,直至所有的担保圈都是封闭不交叉为止,即每个担保圈内的企业相互之间存在担保关系,且不同担保圈内的企业相互之间无担保关系,并将每户企业打上相应的担保圈标识。本方法可以快速完整地将商业银行信贷业务的客户识别形成的担保圈,从而提高银行的风险管控能力。
一实施例中,步骤100具体包括:
步骤101:根据所有有向图生成初始宽度优先树,所述初始宽度优先树只包括根节点。
步骤102:计算所述初始宽度优先树初始节点至所述初始优先树的所有根节点的路径中的最短路径。
步骤103:在计算所述最短路径过程中,将所有的未知节点加入至所述初始宽度优先树,以生成目标宽度优先树。
步骤104:根据所述目标宽度优先树对可以表征客户之间的担保关系的有向图进行分组。
步骤101至步骤104实质上是一种改进的宽度优先搜索算法,宽度优先搜索算法(又称广度优先搜索)是最简便的图的搜索算法之一,这一算法也是很多重要的图的算法的原型。属于一种盲目搜寻法,目的是系统地展开并检查图中的所有节点,以找寻结果。换句话说,它并不考虑结果的可能位置,彻底地搜索整张图,直到找到结果为止。
一实施例中,步骤200具体包括:
步骤201:根据所述分组结果生成深度优先树;
步骤202:从所述深度优先树的顶点出发,对所述深度优先树进行深度优先遍历,直至所述深度优先树中的所有节点以及路径均被访问,并生成遍历结果;
步骤203:根据所述遍历结果识别所述担保圈。
步骤201至步骤203实质上是一种改进的深度优先搜索算法,深度优先搜索是一种在开发爬虫早期使用较多的方法。它的目的是要达到被搜索结构的叶结点(即那些不包含任何超链的HTML文件)。在一个HTML文件中,当一个超链被选择后,被链接的HTML文件将执行深度优先搜索,即在搜索其余的超链结果之前必须先完整地搜索单独的一条链。深度优先搜索沿着HTML文件上的超链走到不能再深入为止,然后返回到某一个HTML文件,再继续选择该HTML文件中的其他超链。当不再有其他超链可选择时,说明搜索已经结束。
一实施例中,参见图2,担保圈识别方法还包括:
步骤300:对所述有向图进行简化。
具体地,步骤300包括:
步骤301:删除所述有向图中只具有出口边或者入口边其中之一的节点。
需要特别注意的是,在步骤100以及步骤200中,算法采用递归实现,如果递归层数太高,则会占用大量内存,最终产生OutOfMemory错误,而且该错误无法通过增加最大内存数达到优化效果。实际测试中,未对所述有向图进行简化前,递归层数经常超过60层,而超过60-70层则程序运行效率显著降低,系统内存占用将逐渐增大到1G以上,最终产生OutOfMemory错误。相对地,在引入有向图简单化算法后,递归层级一般不会超过30层。对10万个以上客户和担保关系的数据量有向图执行算法,常规圈算法在5-7秒结束,闭合圈算法在6-8秒结束,内存最大使用不超过300M。
一实施例中,参见图3,步骤300还包括:
步骤302:将所述有向图中具有双向连接关系的多个节点设置为一个节点,并删除所述多个节点之间的边。
可以理解的是,将有向图中的所有双向连接边(即互保关系)都视为一个节点来重构有向图,重构后有向图和原有向图相比会大幅简化,从而显著提高“查找回路”算法的效率。
一实施例中,参见图4,担保圈识别方法还包括:
步骤400:对所述闭合圈进行简化逆向处理。
从上述描述可知,本发明实施例提供担保圈识别方法,首先对可以表征客户之间的担保关系的有向图进行分组,在此基础上,对有向图进行简化,再利用深度优先搜索算法在所述分组结果查找所有担保圈。从而对所有保证关系进行穷举查找,直至所有的担保圈都是封闭不交叉为止,即每个担保圈内的企业相互之间存在担保关系,且不同担保圈内的企业相互之间无担保关系,并将每户企业打上相应的担保圈标识。本方法可以快速完整地将商业银行信贷业务的客户识别形成的担保圈,从而提高银行的风险管控能力。
为进一步地说明本方案,本发明提供一担保圈识别方法的具体应用实例,该具体应用实例具体包括如下内容,参见图5及图6。
S0:有向图清理。
清理有向图中的“太阳节点”(只有出口边,没有入口边)和“黑洞节点”(只有入口边,没有出口边)。该算法是为了减少有向图的数据量,提高“查找回路”算法的效率。
算法流程:
S01:循环对有向图的每个节点进行判断:如果是太阳节点或黑洞节点,则在有向图中删除该节点,以及该节点所有的出口边和入口边。
S02:重复步骤S11,直到有向图中不包含太阳节点和黑洞节点。
举例说明:在图7中,节点E为“太阳”节点,故需要删除节点E和边EC以及EF。继续判断,C为“太阳”节点,删除节点C和边CA,参见图8。直到没有再找到“太阳”或“黑洞”节点,算法结束。从图9中可以直观看到有向图被拆成没有关联的两部分。
S1:查找互保边。
算法目的:将有向图中的所有双向连接边(互保边)查找出来,并调用“建立分组”算法(步骤S2)对这些边进行分组。该算法是为“有向图简单化”(步骤S3)算法做准备。
算法流程:
步骤S11:新建一个有向图。
步骤S12:循环对有向图的每个边进行判断:如果有向图中包含这个边的反向边,则说明这个边视双向连接边,把这个边加入到步骤S11的有向图中。
S2:利用宽度优先搜索算法对所有有向图进行分组。
算法目的:对有向图中所有的边进行分组,最终拆分成若干个小有向图,确保在每个小有向图中,所有的边都和其他的有向图都没有连接关系。
算法流程:
步骤S01:从有向图中取第一个未访问过的节点放入open列表;该节点设置级别为1。
步骤S02:从open列表中取出且移除一个节点(记为节点X),同时将该节点所有的出口边节点和入口边节点加入open列表,同时这些节点的级别设置为节点X的级别+1。
步骤S03:从有向图中删除步骤2中的边,将这些边放入一个有向图(担保圈)中。
步骤S04:重复步骤2,直到步骤2无法再找出新的边,这个有向图(担保圈)搜索结束。
重复步骤S05:直到有向图中的边为空。
参见图10,可以封装成如图11所示的Graph对象,共6对边构成的有向图,现对该有向图建立分组。取未访问过的节点放入OPEN列表,如图12所示,取节点A放入OPEN列表,首先从OPEN列表中取出A,将A的出口边AB,AC,以及A的入口边DA加入到一个担保圈(有向图)中,同时在原有向图中删除AB,AC,DA3个边。最后把B,C,D加入到OPEN列表,如图13所示。
接着,从OPEN列表中取出B,将B的出口边BD加入到一个担保圈(有向图)中,同时在原有向图中删除BD。因为OPEN列表中已经存在D,因此D无需再加入到OPEN列表,如图14所示。
参见图15,依次从OPEN列表中取出C,D,但C,D在有向图中没有再查找到出口边和入口边。搜索结束。
同理,GH和GI也构成一个担保圈(有向图),参见图16。
S3:有向图简单化。
算法目的:将有向图中的所有双向连接边(即互保关系)都视为一个节点来重构有向图,重构后有向图和原有向图相比会大幅简化,最终显著提高“查找回路”算法的效率。
该算法是基于双向连接边的一个特点,即双向连接边组成的集合中,每个节点到其他任意节点都是相通的。而在担保圈需求中需要将有关系的回路(闭合圈)重新组织成一个大的闭合圈来处理。在这种需求背景下,深度优先算法无需找出所有的回路,只需要确定某个节点或某个边是否属于回路即可,最后再把所有属于回路的节点和边组成有向图再分组求得所有的闭合圈。因此在深度优先搜索算法时,将双向连接边的集合当成一个节点来处理,提高效率,进而提出了“有向图简单化”和“有向图恢复”两个算法。
算法流程:
S31:调用“查找互保边”算法,得到分组后的互保边有向图集合。
S32:循环对每个互保边有向图进行处理:
S32a:查找有向图中两个节点都在互保有向图中的边(不是互保边),加入互保有向图。S32b:将互保有向图转为“图节点GraphVertex”。
S32c:有向图中删除互保有向图中的所有边。
S33:定义一个边集合。
S34:循环对有向图中所有的边进行处理:
S34c:判断边的头结点或尾节点已经转为“图节点GraphVertex”。
S34b:是,则这个边转化为“复合边ArrayEdge”,加入边集合。
S34c:否,则这个边直接加入边集合。
S35:将边集合中的所有边转为为有向图,即为简单化后的有向图。
举例说明:参见图17,将A、B、C三个节点简单化一个节点;因为BD,CD都是从ABC节点指向D节点,简单化为1个边,同样的,EA,EC都是从E节点指向ABC节点,简单化为1个边。
需要注意的是,如果某个有向图全部由双向连接边构成(如图18),则简单化后会得到一个“空”有向图,这是因为简单化后最终只得到一个节点,没有边,而一个节点无法构成有向图。如果某个边(BC边)不是双向连接边(参见图19),但它的两个节点都在一个双向连接边集合内,则该边也会简单化到GraphVertex。GraphVertex节点除了包含AB、BA、AC、CA外,还包含BC边。
S4:利用深度优先搜索算法查找回路。
算法目的:对有向图进行深度优先搜索算法,查找出所有的回路(圈)。
算法流程:
S41:在常规圈结果的基础上对每一个常规圈使用深度优先搜索算法遍历有向图,查找闭合圈。
S42:从有向图中取第一个未访问过的节点压入“路径Path”。
S43:从“路径Path”中获取最后一个节点,查找他所有的出口边对应的节点
S44:对每一个节点进行如下判断:
S44a:如果“路径Path”中含有该节点,说明出现回路,将该回路转化为Circle对象并保存。
S44b:如果“路径Path”中不含有该节点,则将该节点压入“路径Path”,重复步骤3(递归)。
S45:重复步骤S42:,直到有向图遍历结束。
举例说明:参见图20,从节点A开始进行深度优先搜索算法遍历有向图,查找闭合圈,此时路径只有A一个节点。寻找A的出口边,共2条,分别是AC和AB,选择先走AC,此时路径为AC2个节点,参见图21。参见图22,C没有出口边,因此搜索结束,回退至A节点,继续走AB,此时路径为AB2个节点。寻找B的出口边,共2条,分别是BE和BD,选择先走BE,此时路径为ABE3个节点,如图23所示。参见图24,寻找E的出口边,共2条,分别是EF和ED,选择先走EF,此时路径为ABEF4个节点。参见图25,F没有出口边,因此搜索结束,回退至E节点,继续走ED,此时路径为ABED4个节点,D有一个出口边为A,此时路径ABED包含了A节点,因此出现回路,记录回路,并后退。参见图26,回退至E,2个出口边均已访问,继续回退至B,此时路径为AB2个节点。参见图27,节点B的出口边2个BE和BD,BE已经走过,接着走BD,此时路径为ABD3个节点,同步骤6的判断一致,出现回路ABD,记录回路,并后退。继续回退到A,A也已经走完全部出口边,深度优先搜索算法结束。
可以理解的是,如果没有步骤S0(有向图清理)、S1(查找互保边)以及步骤S3(对有向图进行简单化处理),直接进行步骤S4的话,则会占用大量内存,最终产生OutOfMemory错误,而且该错误无法通过增加最大内存数达到优化效果。需要特别注意。实际测试中,未引入有向图简单化算法前,递归层数经常超过60层,而超过60-70层则程序运行效率显著降低,系统内存占用将逐渐增大到1G以上,最终产生OutOfMemory错误。在引入有向图简单化算法后,递归层级一般不会超过30层。对10万个以上客户和担保关系的数据量有向图执行算法,常规圈算法在5-7秒结束,闭合圈算法在6-8秒结束,内存最大使用不超过300M。
S5:有向图恢复。
算法目的:有向图简单化的逆向处理。
算法流程:
S51:新建有向图。
S52:循环对有向图中的每个边进行处理:
S52a:判断边是否是“复合边ArrayEdge”。
S52b:是,则对复合边下的每个原始边加入步骤1的有向图,同时合并头节点(图节点)和尾节点(图节点)。
S52c:否,则这个边直接加入步骤S51:的有向图。
可以理解的是,参见图28,将有向图中的所有双向连接边(即互保关系)都视为一个节点来重构有向图,重构后有向图和原有向图相比会大幅简化,最终显著提高“查找回路”算法的效率。担保圈跑批时间从80分钟优化到1分钟。
从上述描述可知,本发明实施例提供担保圈识别方法,首先对可以表征客户之间的担保关系的有向图进行分组,在此基础上,对有向图进行简化,再利用深度优先搜索算法在所述分组结果查找所有担保圈。从而对所有保证关系进行穷举查找,直至所有的担保圈都是封闭不交叉为止,即每个担保圈内的企业相互之间存在担保关系,且不同担保圈内的企业相互之间无担保关系,并将每户企业打上相应的担保圈标识。本方法可以快速完整地将商业银行信贷业务的客户识别形成的担保圈,从而提高银行的风险管控能力。
基于同一发明构思,本申请实施例还提供了担保圈识别装置,可以用于实现上述实施例所描述的方法,如下面的实施例所述。由于担保圈识别装置解决问题的原理与担保圈识别方法相似,因此担保圈识别装置的实施可以参见担保圈识别方法实施,重复之处不再赘述。以下所使用的,术语“单元”或者“模块”可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的系统较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。
本发明的实施例提供一种能够实现担保圈识别方法的担保圈识别装置的具体实施方式,参见图29,担保圈识别装置具体包括如下内容:
分组单元10,用于对可以表征客户之间的担保关系的有向图进行分组,在分组结果中,每个有向图与其他有向图无连接关系;
闭合圈识别单元20,用于在所述分组结果查找所有闭合圈,以识别所述担保圈。
一实施例中,参见图30,担保圈识别装置还包括:
有向图简化图单元30,用于对所述有向图进行简化,所述有向图简化图单元30包括:
节点删除模块301,用于删除所述有向图中只具有出口边或者入口边其中之一的节点。
一实施例中,参见图31,所述有向图简化图单元30还包括:
边删除模块302,用于将所述有向图中具有双向连接关系的多个节点设置为一个节点,并删除所述多个节点之间的边。
一实施例中,参见图32,担保圈识别装置还包括:
闭合圈逆处理单元40,用于对所述闭合圈进行简化逆向处理。
从上述描述可知,本发明实施例提供担保圈识别装置,首先对可以表征客户之间的担保关系的有向图进行分组,在此基础上,对有向图进行简化,再利用深度优先搜索算法在所述分组结果查找所有担保圈。从而对所有保证关系进行穷举查找,直至所有的担保圈都是封闭不交叉为止,即每个担保圈内的企业相互之间存在担保关系,且不同担保圈内的企业相互之间无担保关系,并将每户企业打上相应的担保圈标识。本方法可以快速完整地将商业银行信贷业务的客户识别形成的担保圈,从而提高银行的风险管控能力。
本申请的实施例还提供能够实现上述实施例中的担保圈识别方法中全部步骤的一种电子设备的具体实施方式,参见图33,电子设备具体包括如下内容:
处理器(processor)1201、存储器(memory)1202、通信接口(CommunicationsInterface)1203和总线1204;
其中,处理器1201、存储器1202、通信接口1203通过总线1204完成相互间的通信;通信接口1203用于实现服务器端设备、分组设备以及用户端设备等相关设备之间的信息传输。
处理器1201用于调用存储器1202中的计算机程序,处理器执行计算机程序时实现上述实施例中的担保圈识别方法中的全部步骤,例如,处理器执行计算机程序时实现下述步骤:
步骤100:利用宽度优先搜索算法对可以表征客户之间的担保关系的有向图进行分组,在分组结果中,每个有向图与其他有向图无连接关系。
步骤200:利用深度优先搜索算法在所述分组结果查找所有闭合圈,以识别所述担保圈。
从上述描述可知,本申请实施例中的电子设备,首先对可以表征客户之间的担保关系的有向图进行分组,在此基础上,对有向图进行简化,再利用深度优先搜索算法在所述分组结果查找所有担保圈。从而对所有保证关系进行穷举查找,直至所有的担保圈都是封闭不交叉为止,即每个担保圈内的企业相互之间存在担保关系,且不同担保圈内的企业相互之间无担保关系,并将每户企业打上相应的担保圈标识。本方法可以快速完整地将商业银行信贷业务的客户识别形成的担保圈,从而提高银行的风险管控能力。
本申请的实施例还提供能够实现上述实施例中的担保圈识别方法中全部步骤的一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,该计算机程序被处理器执行时实现上述实施例中的担保圈识别方法的全部步骤,例如,处理器执行计算机程序时实现下述步骤:
步骤100:利用宽度优先搜索算法对可以表征客户之间的担保关系的有向图进行分组,在分组结果中,每个有向图与其他有向图无连接关系。
步骤200:利用深度优先搜索算法在所述分组结果查找所有闭合圈,以识别所述担保圈。
从上述描述可知,本申请实施例中的计算机可读存储介质,首先对可以表征客户之间的担保关系的有向图进行分组,在此基础上,对有向图进行简化,再利用深度优先搜索算法在所述分组结果查找所有担保圈。从而对所有保证关系进行穷举查找,直至所有的担保圈都是封闭不交叉为止,即每个担保圈内的企业相互之间存在担保关系,且不同担保圈内的企业相互之间无担保关系,并将每户企业打上相应的担保圈标识。本方法可以快速完整地将商业银行信贷业务的客户识别形成的担保圈,从而提高银行的风险管控能力。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
本发明中应用了具体实施例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (12)
1.一种担保圈识别方法,其特征在于,包括:
对可以表征客户之间的担保关系的有向图进行分组,在分组结果中,每个有向图与其他有向图无连接关系;
在所述分组结果查找所有闭合圈,以识别所述担保圈。
2.如权利要求1所述的担保圈识别方法,其特征在于,所述对可以表征客户之间的担保关系的有向图进行分组,包括:
根据所有有向图生成初始宽度优先树,所述初始宽度优先树只包括根节点;
计算所述初始宽度优先树初始节点至所述初始优先树的所有根节点的路径中的最短路径,
在计算所述最短路径过程中,将所有的未知节点加入至所述初始宽度优先树,以生成目标宽度优先树;
根据所述目标宽度优先树对可以表征客户之间的担保关系的有向图进行分组。
3.如权利要求1所述的担保圈识别方法,其特征在于,所述在所述分组结果查找所有闭合圈,以识别所述担保圈,包括:
根据所述分组结果生成深度优先树;
从所述深度优先树的顶点出发,对所述深度优先树进行深度优先遍历,直至所述深度优先树中的所有节点以及路径均被访问,并生成遍历结果;
根据所述遍历结果识别所述担保圈。
4.如权利要求1所述的担保圈识别方法,其特征在于,还包括:对所述有向图进行简化,包括:
删除所述有向图中只具有出口边或者入口边其中之一的节点;
将所述有向图中具有双向连接关系的多个节点设置为一个节点,并删除所述多个节点之间的边。
5.如权利要求4所述的担保圈识别方法,其特征在于,还包括:
对所述闭合圈进行简化逆向处理。
6.一种担保圈识别装置,其特征在于,包括:
有向图分组单元,用于对可以表征客户之间的担保关系的有向图进行分组,在分组结果中,每个有向图与其他有向图无连接关系;
担保圈识别单元,用于在所述分组结果查找所有闭合圈,以识别所述担保圈。
7.如权利要求6所述的担保圈识别装置,其特征在于,所述有向图分组单元包括:
初始优先树生成模块,用于根据所有有向图生成初始宽度优先树,所述初始宽度优先树只包括根节点;
最短路径计算模块,用于计算所述初始宽度优先树初始节点至所述初始优先树的所有根节点的路径中的最短路径,
目标优先树生成模块,用于在计算所述最短路径过程中,将所有的未知节点加入至所述初始宽度优先树,以生成目标宽度优先树;
有向图分组模块,用于根据所述目标宽度优先树对可以表征客户之间的担保关系的有向图进行分组。
8.如权利要求6所述的担保圈识别装置,其特征在于,所述担保圈识别单元包括:
深度优先树生成模块,用于根据所述分组结果生成深度优先树;
优先树遍历模块,用于从所述深度优先树的顶点出发,对所述深度优先树进行深度优先遍历,直至所述深度优先树中的所有节点以及路径均被访问,并生成遍历结果;
担保圈识别模块,用于根据所述遍历结果识别所述担保圈。
9.如权利要求6所述的担保圈识别装置,其特征在于,还包括:有向图简化单元,用于对所述有向图进行简化,所述有向图简化单元包括:
节点删除模块,用于删除所述有向图中只具有出口边或者入口边其中之一的节点;
边删除模块,用于将所述有向图中具有双向连接关系的多个节点设置为一个节点,并删除所述多个节点之间的边。
10.如权利要求9所述的担保圈识别装置,其特征在于,还包括:
逆向处理单元,用于对所述闭合圈进行简化逆向处理。
11.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现权利要求1至5任一项所述担保圈识别方法的步骤。
12.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理器执行时实现权利要求1至5任一项所述担保圈识别方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911250382.2A CN111062804A (zh) | 2019-12-09 | 2019-12-09 | 担保圈识别方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911250382.2A CN111062804A (zh) | 2019-12-09 | 2019-12-09 | 担保圈识别方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111062804A true CN111062804A (zh) | 2020-04-24 |
Family
ID=70300183
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911250382.2A Pending CN111062804A (zh) | 2019-12-09 | 2019-12-09 | 担保圈识别方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111062804A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112150270A (zh) * | 2020-09-18 | 2020-12-29 | 中国建设银行股份有限公司 | 监控车辆信息的方法、装置、设备和计算机可读介质 |
-
2019
- 2019-12-09 CN CN201911250382.2A patent/CN111062804A/zh active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112150270A (zh) * | 2020-09-18 | 2020-12-29 | 中国建设银行股份有限公司 | 监控车辆信息的方法、装置、设备和计算机可读介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3321819A1 (en) | Device, method and program for securely reducing an amount of records in a database | |
Fan et al. | Querying big graphs within bounded resources | |
CN111383102A (zh) | 金融信贷风险识别方法、模型构建方法和装置 | |
CN105335855A (zh) | 一种交易风险识别方法及装置 | |
Gent et al. | QCSP-Solve: A solver for quantified constraint satisfaction problems | |
CN110347724A (zh) | 异常行为识别方法、装置、电子设备及介质 | |
CN106844089A (zh) | 一种用于恢复树形数据存储的方法与设备 | |
CN108959359A (zh) | 一种统一资源定位符语义去重方法、装置、设备和介质 | |
Zhang et al. | SUMMA: subgraph matching in massive graphs | |
CN106843899A (zh) | 一种基于Node.js平台的网页开发方法及装置 | |
CN111062804A (zh) | 担保圈识别方法及装置 | |
Hnich et al. | Filtering algorithms for global chance constraints | |
CN117390480A (zh) | 一种信息提取方法、装置、设备及存储介质 | |
CN112287400A (zh) | 超级账本中的交易排序方法、装置和计算机设备 | |
CN107133163A (zh) | 一种验证描述类api的方法与设备 | |
CN107463578A (zh) | 应用下载量统计数据去重方法、装置和终端设备 | |
CN114511330B (zh) | 一种基于改进的cnn-rf的以太坊庞氏骗局检测方法及系统 | |
CN116128525A (zh) | 一种基于模式前缀共享的多模式图匹配查询方法及装置 | |
CN105389337A (zh) | 用于统计显著性模式的搜索大数据空间的方法 | |
Baget et al. | Backtracking through biconnected components of a constraint graph | |
Glorian et al. | NACRE-A nogood and clause reasoning engine | |
Sengottuvelan et al. | An improved session identification approach in web log mining for web personalization | |
Hespe | Enabling Scalability: Graph Hierarchies and Fault Tolerance | |
Alrahwan et al. | ASCF: Optimization of the Apriori Algorithm Using Spark‐Based Cuckoo Filter Structure | |
CN116012123B (zh) | 一种基于Rete算法的风控规则引擎方法及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
TA01 | Transfer of patent application right | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20220914 Address after: 25 Financial Street, Xicheng District, Beijing 100033 Applicant after: CHINA CONSTRUCTION BANK Corp. Address before: 25 Financial Street, Xicheng District, Beijing 100033 Applicant before: CHINA CONSTRUCTION BANK Corp. Applicant before: Jianxin Financial Science and Technology Co.,Ltd. |