CN112087488A - 一种重要云机器人节点的确定方法、装置、设备及介质 - Google Patents

一种重要云机器人节点的确定方法、装置、设备及介质 Download PDF

Info

Publication number
CN112087488A
CN112087488A CN202010767864.1A CN202010767864A CN112087488A CN 112087488 A CN112087488 A CN 112087488A CN 202010767864 A CN202010767864 A CN 202010767864A CN 112087488 A CN112087488 A CN 112087488A
Authority
CN
China
Prior art keywords
cloud robot
cloud
nodes
node
preset
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.)
Granted
Application number
CN202010767864.1A
Other languages
English (en)
Other versions
CN112087488B (zh
Inventor
张腾
高明
金长新
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shandong Inspur Science Research Institute Co Ltd
Original Assignee
Jinan Inspur Hi Tech Investment and Development Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Jinan Inspur Hi Tech Investment and Development Co Ltd filed Critical Jinan Inspur Hi Tech Investment and Development Co Ltd
Priority to CN202010767864.1A priority Critical patent/CN112087488B/zh
Publication of CN112087488A publication Critical patent/CN112087488A/zh
Application granted granted Critical
Publication of CN112087488B publication Critical patent/CN112087488B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • H04L67/025Protocols based on web technology, e.g. hypertext transfer protocol [HTTP] for remote control or remote monitoring of applications
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/11Complex mathematical operations for solving equations, e.g. nonlinear equations, general mathematical optimization problems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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
    • G06Q10/00Administration; Management
    • G06Q10/10Office automation; Time management
    • G06Q10/103Workflow collaboration or project management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Business, Economics & Management (AREA)
  • Data Mining & Analysis (AREA)
  • Strategic Management (AREA)
  • Human Resources & Organizations (AREA)
  • Mathematical Physics (AREA)
  • Theoretical Computer Science (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Computational Mathematics (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Mathematical Analysis (AREA)
  • Pure & Applied Mathematics (AREA)
  • Operations Research (AREA)
  • Mathematical Optimization (AREA)
  • General Engineering & Computer Science (AREA)
  • Algebra (AREA)
  • Economics (AREA)
  • Marketing (AREA)
  • Quality & Reliability (AREA)
  • Tourism & Hospitality (AREA)
  • General Business, Economics & Management (AREA)
  • Software Systems (AREA)
  • Databases & Information Systems (AREA)
  • Manipulator (AREA)

Abstract

本申请公开了一种重要云机器人节点的确定方法、装置、设备及介质,根据云机器人节点的标识与所述云机器人节点之间的配合关系,构建出云机器人集合;根据预先设定的公式与所述云机器人集合,确定出每个云机器人节点在预设层的重要程度,其中,所述预设层为所述云机器人节点处于K‑Shell分解算法的预设层数;去除所述云机器人集合中重要程度低于第一预设值的云机器人节点,确定出所述云机器人集合中重要云机器人节点。本说明书实施例通过预先设定的公式与云机器人集合,确定出每个云机器人节点在预设层的重要程度,最终确定出重要程度不低于第一预设值的重要云机器人节点,可以对重要机器人节点采取针对性保护,极大的避免突发状况带来的不必要损失。

Description

一种重要云机器人节点的确定方法、装置、设备及介质
技术领域
本申请涉及计算机技术领域,尤其涉及一种重要云机器人节点的确定方法、装置、设备及介质。
背景技术
随着云技术的成熟,集群化的云机器人也逐渐在工业、民用领域崭露头角。由于云机器人的云化特性,可以通过管理平台对其统一进行任务调度。当若干云机器人协作完成一项任务时,任务调度系统会根据各个机器人不同的属性为其分配任务,各个机器人之间互相配合,共同完成制定的任务目标。但是由于各个机器人承担的任务不同,对于完成任务其对应的重要性也不同。在执行任务过程中,如果负责任务重要性较高的机器人如果发生宕机、损坏等意外情况,对整个任务的完成就会产生较大影响,为企业带来不必要的损失。
现有技术中,缺少确定重要云机器人节点的方法。若是可以确定出重要的云机器人节点,可以对重要机器人节点采取针对性保护,极大的避免突发状况带来的不必要损失。
发明内容
有鉴于此,本申请实施例提供了一种重要云机器人节点的确定方法、装置、设备及介质,用于解决现有技术中缺少确定重要云机器人节点方法的问题。
本申请实施例采用下述技术方案:
本申请实施例提供一种重要云机器人节点的确定方法,所述方法包括:
根据云机器人节点的标识与所述云机器人节点之间的配合关系,构建出云机器人集合;
根据预先设定的公式与所述云机器人集合,确定出每个云机器人节点在预设层的重要程度,其中,所述预设层为所述云机器人节点处于K-Shell分解算法的预设层数;
去除所述云机器人集合中重要程度低于第一预设值的云机器人节点,确定出所述云机器人集合中重要云机器人节点。
需要说明的是,本说明书实施例通过预先设定的公式与云机器人集合,确定出每个云机器人节点在预设层的重要程度,最终确定出重要程度不低于第一预设值的重要云机器人节点,可以对重要机器人节点采取针对性保护,极大的避免突发状况带来的不必要损失。
进一步的,所述去除所述云机器人集合中重要程度低于所述第一预设值的云机器人节点,确定出所述云机器人集合中重要云机器人节点,具体包括:
去除所述云机器人集合中重要程度低于所述第一预设值的云机器人节点,确定出所述云机器人集合中重要云机器人节点;根据所述云机器人集合中重要云机器人节点的标识与所述云机器人集合中重要云机器人节点之间的配合关系,构建出第一云机器人集合;
根据预先设定的公式与所述第一云机器人集合,确定出每个云机器人节点在预设层的重要程度;
若所述第一云机器人集合中还存在重要程度低于所述第一预设值的云机器人节点,再次去除所述第一云机器人集合中重要程度低于所述第一预设值的云机器人节点,确定出所述第一云机器人集合中重要云机器人节点;
根据所述第一云机器人集合中重要云机器人节点的标识与所述第一云机器人集合中重要云机器人节点之间的配合关系,构建出第二云机器人集合;
若所述第二云机器人集合中不存在重要程度低于所述第一预设值的云机器人节点,确定出所述第二云机器人集合中的云机器人节点为重要云机器人节点。
需要说明的是,去除云机器人集合中的云机器人节点后,剩余的云机器人节点之间的重要程度也会发生变化,此时又有可能生成了新的重要程度低于第一预设值的云机器人节点,经过有限次迭代,每次迭代将重要程度低的节点去除,最后会剩余一个不能够再分解的云机器人节点集合,这些节点在整个网络的拓扑结构中处于中心位置,当其在整个网络中被剔除时会对整个网络的拓扑结构产生远比其他非重要节点更大的影响。这些节点即为网络中的重要云机器人节点。
进一步的,所述预设公式为
Figure BDA0002615356450000031
其中,所述第一预设值为k,
Figure BDA0002615356450000032
为云机器人节点i的重要程度,k为云机器人节点i处于K-Shell分解算法的预设层数,iter(i)为云机器人节点i在K-Shell分解算法的第k层分解过程中在第iter(i)次被去除,m为云机器人节点i在K-Shell分解算法的第k层分解过程中去除的总次数。
需要说明的是,相较于K-Shell分解算法,KSIF分解算法不仅考虑了节点的重要程度,而且通过根据度相同的情况下不同节点间去除迭代次数的不同,对K-Shell分解算法进行了进一步划分。这极大地提高了KSIF分解算法的精确度。
进一步的,所述确定出所述云机器人集合中重要云机器人节点之后,所述方法还包括:
将所述预设层加一;
若根据预先设定的公式与云机器人集合,确定出每个云机器人节点在预设层加一层的重要程度皆低于第二预设值,则根据所述预设层确定的云机器人节点为重要云机器人节点。
需要说明的是,确定出云机器人集合中重要云机器人节点后,还需要验证当前的云机器人集合中重要云机器人节点是否为最终的重要云机器人节点,通过将预设层加一,判断每个云机器人节点在预设层加一层的重要程度是否皆低于第二预设值,若判断出每个云机器人节点在预设层加一层的重要程度皆低于第二预设值,说明根据预设层确定的云机器人节点为重要云机器人节点。
进一步的,所述确定出所述云机器人集合中重要云机器人节点之后,所述方法还包括:
将所述预设层加一,根据预先设定的公式与云机器人集合,确定出每个云机器人节点在预设层加一层的重要程度;
去除云机器人集合中重要程度低于第二预设值的云机器人节点,构建第三云机器人集合;
若所述第三云机器人集合为空,则根据所述预设层确定的云机器人节点为重要云机器人节点。
需要说明的是,确定出云机器人集合中重要云机器人节点后,还需要验证当前的云机器人集合中重要云机器人节点是否为最终的重要云机器人节点,通过将预设层加一,确定出每个云机器人节点在预设层加一层的重要程度,去除云机器人集合中重要程度低于第二预设值的云机器人节点,构建第三云机器人集合,判断第三云机器人集合为空,若第三云机器集合为空,说明根据预设层确定的云机器人节点为重要云机器人节点。通过判断第三云机器人集合是否为空,可以很直观的判断出结果。
进一步的,所述云机器人集合不为空,所述方法还包括:
将所述预设层加二层,根据预先设定的公式与所述第三云机器人集合,确定出每个云机器人节点在预设层加二层的重要程度;
去除所述第三云机器人集合中重要程度低于第三预设值的云机器人节点,构建第四云机器人集合;
若所述第四云机器人集合为空,则根据所述预设层加一层确定的云机器人节点为重要云机器人节点。
需要说明的是,若第三云机器集合不为空,说明根据预设层确定的云机器人节点不是重要云机器人节点。需要将所述预设层加二层,进一步判断第四云机器人集合是否空。
进一步的,所述根据预先设定的公式与所述云机器人集合,确定出每个云机器人节点在预设层的重要程度之前,所述方法还包括:
去除所述云机器人集合中孤立的云机器人节点,其中,所述孤立的云机器人节点为与其他云机器人节点没有配合关系。
需要说明的是,孤立的云机器人节点与其他云机器人节点没有配合关系,系统可以直接作出判断。预先去除云机器人集合中孤立的云机器人节点,可以节省后续的计算时间。
本申请实施例还提供一种重要云机器人节点的确定装置,所述装置包括:
集合单元,用于根据云机器人节点的标识与所述云机器人节点之间的配合关系,构建出云机器人集合;
程度单元,用于根据预先设定的公式与所述云机器人集合,确定出每个云机器人节点在预设层的重要程度,其中,所述预设层为所述云机器人节点处于K-Shell分解算法的预设层数;
结果单元,用于去除所述云机器人集合中重要程度低于第一预设值的云机器人节点,确定出所述云机器人集合中重要云机器人节点。
本申请实施例还提供一种重要云机器人节点的确定设备,所述设备包括:
至少一个处理器;以及,
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够:
根据云机器人节点的标识与所述云机器人节点之间的配合关系,构建出云机器人集合;
根据预先设定的公式与所述云机器人集合,确定出每个云机器人节点在预设层的重要程度,其中,所述预设层为所述云机器人节点处于K-Shell分解算法的预设层数;
去除所述云机器人集合中重要程度低于第一预设值的云机器人节点,确定出所述云机器人集合中重要云机器人节点。
本申请实施例还提供一种重要云机器人节点的确定介质,存储有计算机可执行指令,其特征在于,所述计算机可执行指令设置为:
根据云机器人节点的标识与所述云机器人节点之间的配合关系,构建出云机器人集合;
根据预先设定的公式与所述云机器人集合,确定出每个云机器人节点在预设层的重要程度,其中,所述预设层为所述云机器人节点处于K-Shell分解算法的预设层数;
去除所述云机器人集合中重要程度低于第一预设值的云机器人节点,确定出所述云机器人集合中重要云机器人节点。
本申请实施例采用的上述至少一个技术方案能够达到以下有益效果:本说明书实施例通过预先设定的公式与云机器人集合,确定出每个云机器人节点在预设层的重要程度,最终确定出重要程度不低于第一预设值的重要云机器人节点,可以对重要机器人节点采取针对性保护,极大的避免突发状况带来的不必要损失。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1为本说明书实施例一提供的一种重要云机器人节点的确定方法的流程示意图;
图2为本说明书实施例二提供的一种重要云机器人节点的确定方法的流程示意图;
图3为本说明书实施例二提供的重要云机器人节点具体确定方法的流程示意图;
图4为本说明书实施例三提供的一种重要云机器人节点的确定装置的结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请具体实施例及相应的附图对本申请技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
以下结合附图,详细说明本申请各实施例提供的技术方案。
图1为本说明书实施例一提供的一种重要云机器人节点的确定方法的流程示意图,本说明书实施例可以由系统的执行模块执行下述步骤,具体步骤可以包括:
步骤S101,根据云机器人节点的标识与所述云机器人节点之间的配合关系,构建出云机器人集合。
在本说明书实施例的步骤S101中,每个云机器人节点的标识具有唯一性,是用来识别每个云机器人节点的标志。云机器人节点之间的配合关系为云机器人节点在运行时,与其他云机器人节点存在关联。
步骤S102,根据预先设定的公式与所述云机器人集合,确定出每个云机器人节点在预设层的重要程度,其中,所述预设层为所述云机器人节点处于K-Shell分解算法的预设层数。
步骤S103,去除所述云机器人集合中重要程度低于第一预设值的云机器人节点,确定出所述云机器人集合中重要云机器人节点。
在本说明书实施例的步骤S102与步骤S103中,预设层可以为通过迭代确定出的层数。预设公式可以为
Figure BDA0002615356450000071
其中,所述第一预设值为k,
Figure BDA0002615356450000072
为云机器人节点i的重要程度,k为云机器人节点i处于K-Shell分解算法的预设层数,iter(i)为云机器人节点i在K-Shell分解算法的第k层分解过程中在第iter(i)次被去除,m为云机器人节点i在K-Shell分解算法的第k层分解过程中去除的总次数。通过上述公式计算出每个云机器人节点的重要程度。需要说明的是,若在K-Shell分解算法的第k层分解过程中未被去除,该云机器人节点的重要程度不低于第一预设值k。
在本说明书实施例的步骤S103中,本步骤具体可以包括:
去除所述云机器人集合中重要程度低于所述第一预设值的云机器人节点,确定出所述云机器人集合中重要云机器人节点;根据所述云机器人集合中重要云机器人节点的标识与所述云机器人集合中重要云机器人节点之间的配合关系,构建出第一云机器人集合;
根据预先设定的公式与所述第一云机器人集合,确定出每个云机器人节点在预设层的重要程度;
若所述第一云机器人集合中还存在重要程度低于所述第一预设值的云机器人节点,再次去除所述第一云机器人集合中重要程度低于所述第一预设值的云机器人节点,确定出所述第一云机器人集合中重要云机器人节点;
根据所述第一云机器人集合中重要云机器人节点的标识与所述第一云机器人集合中重要云机器人节点之间的配合关系,构建出第二云机器人集合;
若所述第二云机器人集合中不存在重要程度低于所述第一预设值的云机器人节点,确定出所述第二云机器人集合中的云机器人节点为重要云机器人节点。
需要说明的是,去除云机器人集合中的云机器人节点后,剩余的云机器人节点之间的重要程度也会发生变化,此时又有可能生成了新的重要程度低于第一预设值的云机器人节点,经过有限次迭代,每次迭代将重要程度低的节点去除,最后会剩余一个不能够再分解的云机器人节点集合,这些节点在整个网络的拓扑结构中处于中心位置,当其在整个网络中被剔除时会对整个网络的拓扑结构产生远比其他非重要节点更大的影响。这些节点即为网络中的重要云机器人节点。
与本说明书实施例一相对应的是,图2为本说明书实施例二提供的一种重要云机器人节点的确定方法的流程示意图,本说明书实施例可以由系统的执行模块执行下述步骤,具体步骤可以包括:
步骤S201,根据云机器人节点的标识与所述云机器人节点之间的配合关系,构建出云机器人集合。
在本说明书实施例的步骤S201中,每个云机器人节点的标识具有唯一性,是用来识别每个云机器人节点的标志。云机器人节点之间的配合关系为云机器人节点在运行时,与其他云机器人节点存在关联。
步骤S202,去除所述云机器人集合中孤立的云机器人节点,其中,所述孤立的云机器人节点为与其他云机器人节点没有配合关系。
在本说明书实施例的步骤S202中,孤立的云机器人节点与其他云机器人节点没有配合关系,系统可以直接作出判断。预先去除云机器人集合中孤立的云机器人节点,可以节省后续的计算时间。
步骤S203,根据预先设定的公式与所述云机器人集合,确定出每个云机器人节点在预设层的重要程度,其中,所述预设层为所述云机器人节点处于K-Shell分解算法的预设层数。
步骤S204,去除所述云机器人集合中重要程度低于第一预设值的云机器人节点,确定出所述云机器人集合中重要云机器人节点。
在本说明书实施例的步骤S203与步骤S204中,预设层可以为通过迭代确定出的层数。预设公式可以为
Figure BDA0002615356450000091
其中,所述第一预设值为k,
Figure BDA0002615356450000092
为云机器人节点i的重要程度,k为云机器人节点i处于K-Shell分解算法的预设层数,iter(i)为云机器人节点i在K-Shell分解算法的第k层分解过程中在第iter(i)次被去除,m为云机器人节点i在K-Shell分解算法的第k层分解过程中去除的总次数。通过上述公式计算出每个云机器人节点的重要程度。需要说明的是,若在K-Shell分解算法的第k层分解过程中未被去除,该云机器人节点的重要程度不低于第一预设值k。
在本说明书实施例的步骤S204中,本步骤具体可以包括:
去除所述云机器人集合中重要程度低于所述第一预设值的云机器人节点,确定出所述云机器人集合中重要云机器人节点;根据所述云机器人集合中重要云机器人节点的标识与所述云机器人集合中重要云机器人节点之间的配合关系,构建出第一云机器人集合;
根据预先设定的公式与所述第一云机器人集合,确定出每个云机器人节点在预设层的重要程度;
若所述第一云机器人集合中还存在重要程度低于所述第一预设值的云机器人节点,再次去除所述第一云机器人集合中重要程度低于所述第一预设值的云机器人节点,确定出所述第一云机器人集合中重要云机器人节点;
根据所述第一云机器人集合中重要云机器人节点的标识与所述第一云机器人集合中重要云机器人节点之间的配合关系,构建出第二云机器人集合;
若所述第二云机器人集合中不存在重要程度低于所述第一预设值的云机器人节点,确定出所述第二云机器人集合中的云机器人节点为重要云机器人节点。
需要说明的是,去除云机器人集合中的云机器人节点后,剩余的云机器人节点之间的重要程度也会发生变化,此时又有可能生成了新的重要程度低于第一预设值的云机器人节点,经过有限次迭代,每次迭代将重要程度低的节点去除,最后会剩余一个不能够再分解的云机器人节点集合,这些节点在整个网络的拓扑结构中处于中心位置,当其在整个网络中被剔除时会对整个网络的拓扑结构产生远比其他非重要节点更大的影响。因此这些节点即为网络中的重要云机器人节点。
进一步的,所述确定出所述云机器人集合中重要云机器人节点之后,所述方法还包括:
将所述预设层加一;
若根据预先设定的公式与云机器人集合,确定出每个云机器人节点在预设层加一层的重要程度皆低于第二预设值,则根据所述预设层确定的云机器人节点为重要云机器人节点。
或者,
去除所述云机器人集合中重要程度低于所述第一预设值的云机器人节点,确定出所述云机器人集合中重要云机器人节点之前,所述方法还包括:将所述云机器人集合进行保存。
所述确定出所述云机器人集合中重要云机器人节点之后,所述方法还包括:
将所述预设层加一,根据预先设定的公式与云机器人集合,确定出每个云机器人节点在预设层加一层的重要程度;
去除云机器人集合中重要程度低于第二预设值的云机器人节点,构建第三云机器人集合;
若所述第三云机器人集合为空,则根据所述预设层确定的云机器人节点为重要云机器人节点
云机器人集合不为空,所述方法还包括:
将所述第三云机器人集合进行保存;
将所述预设层加二层,根据预先设定的公式与所述第三云机器人集合,确定出每个云机器人节点在预设层加二层的重要程度;
去除所述第三云机器人集合中重要程度低于第三预设值的云机器人节点,构建第四云机器人集合;
若所述第四云机器人集合为空,则根据所述预设层加一层确定的云机器人节点为重要云机器人节点。
进一步的,图3为本说明书实施例二提供的重要云机器人节点具体确定方法的流程示意图,具体步骤包括:
步骤1、构建云机器人集合G(V,E):
将各个云机器人设为节点并将其存入节点容器V中,当两个云机器人之间存在任务配合关系时,两个节点间存在连边,连边存储于连边容器E中。节点与连边构成了一个复杂网络G(V,E)。在云机器人节点工作时,机器人节点之间会存在配合关系,当两台机器人节点vi、vj之间有配合关系时设连边eij为1,否则为0,按照此规则构建G(V,E),并设立迭代标志位k=1。
步骤2、去除孤立点:
在初始云机器人集合G(V,E)中存在孤立节点,即该云机器人节点不与任何其他云机器人节点有配合关系。要先将孤立节点去除,剩余节点形成若干个连通图构成的云机器人集合。
步骤3、计算G(V,E)中所有云机器人节点的重要程度并备份G(V,E):
根据计算公式
Figure BDA0002615356450000121
计算云机器人集合中每个云机器人节点的重要程度。由于不知道此时G(V,E)中的云机器人节点是否满足算法结束条件,因此先将G(V,E)保存至G’(V,E)。
步骤4、去除G(V,E)中重要程度低于k的云机器人节点:
根据步骤3计算的节点重要程度,将低于k的节点全部去除,此时又有可能生成了新的重要程度低于k的节点,重复步骤4直至将低于k的节点全部去除,形成新的G(V,E)。
5、判断G(V,E)是否满足算法结束条件:
判断G(V,E)是否为空集合,若为空则证明已经满足了算法结束标准,此时G’(V,E)中的节点即为重要节点,结束流程;若不为空则置k=k+1并返回步骤3。
本说明书实施例的上述步骤可以是KSIF分解算法,将执行重要任务的云机器人分离出来。KSIF分解算法(K-Shell Iteration Factor Method)是一种基于迭代因子,并针对K-Shell分解算法的优化算法。KSIF分解算法在K-Shell分解算法的基础上对K-Shell分解算法的每一层通过迭代因子进行进一步划分来确定节点的重要程度。极大的提高了KSIF分解算法的精确度。在通过KSIF分解算法获取到执行重要任务的云机器人节点后,可以针对这些云机器人采取针对性保护,如设立备用机、定期维修等。这极大的提高了整个云化机器人系统运转的鲁棒性,提高云机器人协同工作的效率,使得使用云机器人的企业更好的控制风险,避免突发状况带来的不必要损失。
需要说明的是,本说明书实施例是在复杂的云机器人集合G(V,E)上运行KISF分解算法,KSIF分解算法的原理是每一次迭代就从复杂的云机器人集合中移除节点重要程度最小的节点,而越早从云机器人集合中移除的节点其重要程度越低。
需要说明的是,本说明书实施例的目的就是为了解决云机器人协同工作时,可能会出现的由于重要节点宕机、损坏等突发情况导致的任务中断、失败等问题。通过KSIF分解算法,找出云机器人集合中的重要节点,对重要节点采取设立备用机、定期维护可以有效解决上述问题。
需要说明的是,相较于K-Shell分解算法,KSIF分解算法不仅考虑了节点的重要程度(度中心性),而且通过根据度相同的情况下不同节点间去除(剥离)迭代次数的不同,对K-Shell分解算法进行了进一步划分。这极大地提高了KSIF分解算法的精确度。
与本说明书实施例二相对应的是,图4为本说明书实施例三提供的一种重要云机器人节点的确定装置的结构示意图,所述装置包括:集合单元1、程度单元2与结果单元3。
集合单元1用于根据云机器人节点的标识与所述云机器人节点之间的配合关系,构建出云机器人集合;
程度单元2用于根据预先设定的公式与所述云机器人集合,确定出每个云机器人节点在预设层的重要程度,其中,所述预设层为所述云机器人节点处于K-Shell分解算法的预设层数;
结果单元3用于去除所述云机器人集合中重要程度低于第一预设值的云机器人节点,确定出所述云机器人集合中重要云机器人节点。
本申请实施例还提供一种重要云机器人节点的确定设备,所述设备包括:
至少一个处理器;以及,
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够:
根据云机器人节点的标识与所述云机器人节点之间的配合关系,构建出云机器人集合;
根据预先设定的公式与所述云机器人集合,确定出每个云机器人节点在预设层的重要程度,其中,所述预设层为所述云机器人节点处于K-Shell分解算法的预设层数;
去除所述云机器人集合中重要程度低于第一预设值的云机器人节点,确定出所述云机器人集合中重要云机器人节点。
本申请实施例还提供一种重要云机器人节点的确定介质,存储有计算机可执行指令,其特征在于,所述计算机可执行指令设置为:
根据云机器人节点的标识与所述云机器人节点之间的配合关系,构建出云机器人集合;
根据预先设定的公式与所述云机器人集合,确定出每个云机器人节点在预设层的重要程度,其中,所述预设层为所述云机器人节点处于K-Shell分解算法的预设层数;
去除所述云机器人集合中重要程度低于第一预设值的云机器人节点,确定出所述云机器人集合中重要云机器人节点。
在20世纪90年代,对于一个技术的改进可以很明显地区分是硬件上的改进(例如,对二极管、晶体管、开关等电路结构的改进)还是软件上的改进(对于方法流程的改进)。然而,随着技术的发展,当今的很多方法流程的改进已经可以视为硬件电路结构的直接改进。设计人员几乎都通过将改进的方法流程编程到硬件电路中来得到相应的硬件电路结构。因此,不能说一个方法流程的改进就不能用硬件实体模块来实现。例如,可编程逻辑器件(Programmable Logic Device,PLD)(例如现场可编程门阵列(Field Programmable GateArray,FPGA))就是这样一种集成电路,其逻辑功能由用户对器件编程来确定。由设计人员自行编程来把一个数字系统“集成”在一片PLD上,而不需要请芯片制造厂商来设计和制作专用的集成电路芯片。而且,如今,取代手工地制作集成电路芯片,这种编程也多半改用“逻辑编译器(logic compiler)”软件来实现,它与程序开发撰写时所用的软件编译器相类似,而要编译之前的原始代码也得用特定的编程语言来撰写,此称之为硬件描述语言(Hardware Description Language,HDL),而HDL也并非仅有一种,而是有许多种,如ABEL(Advanced Boolean Expression Language)、AHDL(Altera Hardware DescriptionLanguage)、Confluence、CUPL(Cornell University Programming Language)、HDCal、JHDL(Java Hardware Description Language)、Lava、Lola、MyHDL、PALASM、RHDL(RubyHardware Description Language)等,目前最普遍使用的是VHDL(Very-High-SpeedIntegrated Circuit Hardware Description Language)与Verilog。本领域技术人员也应该清楚,只需要将方法流程用上述几种硬件描述语言稍作逻辑编程并编程到集成电路中,就可以很容易得到实现该逻辑方法流程的硬件电路。
控制器可以按任何适当的方式实现,例如,控制器可以采取例如微处理器或处理器以及存储可由该(微)处理器执行的计算机可读程序代码(例如软件或固件)的计算机可读介质、逻辑门、开关、专用集成电路(Application Specific Integrated Circuit,ASIC)、可编程逻辑控制器和嵌入微控制器的形式,控制器的例子包括但不限于以下微控制器:ARC 625D、Atmel AT91SAM、Microchip PIC18F26K20以及Silicone Labs C8051F320,存储器控制器还可以被实现为存储器的控制逻辑的一部分。本领域技术人员也知道,除了以纯计算机可读程序代码方式实现控制器以外,完全可以通过将方法步骤进行逻辑编程来使得控制器以逻辑门、开关、专用集成电路、可编程逻辑控制器和嵌入微控制器等的形式来实现相同功能。因此这种控制器可以被认为是一种硬件部件,而对其内包括的用于实现各种功能的装置也可以视为硬件部件内的结构。或者甚至,可以将用于实现各种功能的装置视为既可以是实现方法的软件模块又可以是硬件部件内的结构。
上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机。具体的,计算机例如可以为个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任何设备的组合。
为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本申请时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带式磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
本申请可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本申请,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。

Claims (10)

1.一种重要云机器人节点的确定方法,其特征在于,所述方法包括:
根据云机器人节点的标识与所述云机器人节点之间的配合关系,构建出云机器人集合;
根据预先设定的公式与所述云机器人集合,确定出每个云机器人节点在预设层的重要程度,其中,所述预设层为所述云机器人节点处于K-Shell分解算法的预设层数;
去除所述云机器人集合中重要程度低于第一预设值的云机器人节点,确定出所述云机器人集合中重要云机器人节点。
2.根据权利要求1所述的重要云机器人节点的确定方法,其特征在于,所述去除所述云机器人集合中重要程度低于所述第一预设值的云机器人节点,确定出所述云机器人集合中重要云机器人节点,具体包括:
去除所述云机器人集合中重要程度低于所述第一预设值的云机器人节点,确定出所述云机器人集合中重要云机器人节点;根据所述云机器人集合中重要云机器人节点的标识与所述云机器人集合中重要云机器人节点之间的配合关系,构建出第一云机器人集合;
根据预先设定的公式与所述第一云机器人集合,确定出每个云机器人节点在预设层的重要程度;
若所述第一云机器人集合中还存在重要程度低于所述第一预设值的云机器人节点,再次去除所述第一云机器人集合中重要程度低于所述第一预设值的云机器人节点,确定出所述第一云机器人集合中重要云机器人节点;
根据所述第一云机器人集合中重要云机器人节点的标识与所述第一云机器人集合中重要云机器人节点之间的配合关系,构建出第二云机器人集合;
若所述第二云机器人集合中不存在重要程度低于所述第一预设值的云机器人节点,确定出所述第二云机器人集合中的云机器人节点为重要云机器人节点。
3.根据权利要求1所述的重要云机器人节点的确定方法,其特征在于,所述预设公式为
Figure FDA0002615356440000021
其中,所述第一预设值为k,
Figure FDA0002615356440000022
为云机器人节点i的重要程度,k为云机器人节点i处于K-Shell分解算法的预设层数,iter(i)为云机器人节点i在K-Shell分解算法的第k层分解过程中在第iter(i)次被去除,m为云机器人节点i在K-Shell分解算法的第k层分解过程中去除的总次数。
4.根据权利要求1所述的重要云机器人节点的确定方法,其特征在于,所述确定出所述云机器人集合中重要云机器人节点之后,所述方法还包括:
将所述预设层加一;
若根据预先设定的公式与云机器人集合,确定出每个云机器人节点在预设层加一层的重要程度皆低于第二预设值,则根据所述预设层确定的云机器人节点为重要云机器人节点。
5.根据权利要求1所述的重要云机器人节点的确定方法,其特征在于,所述确定出所述云机器人集合中重要云机器人节点之后,所述方法还包括:
将所述预设层加一,根据预先设定的公式与云机器人集合,确定出每个云机器人节点在预设层加一层的重要程度;
去除云机器人集合中重要程度低于第二预设值的云机器人节点,构建第三云机器人集合;
若所述第三云机器人集合为空,则根据所述预设层确定的云机器人节点为重要云机器人节点。
6.根据权利要求5所述的重要云机器人节点的确定方法,其特征在于,所述云机器人集合不为空,所述方法还包括:
将所述预设层加二层,根据预先设定的公式与所述第三云机器人集合,确定出每个云机器人节点在预设层加二层的重要程度;
去除所述第三云机器人集合中重要程度低于第三预设值的云机器人节点,构建第四云机器人集合;
若所述第四云机器人集合为空,则根据所述预设层加一层确定的云机器人节点为重要云机器人节点。
7.根据权利要求1所述的重要云机器人节点的确定方法,其特征在于,所述根据预先设定的公式与所述云机器人集合,确定出每个云机器人节点在预设层的重要程度之前,所述方法还包括:
去除所述云机器人集合中孤立的云机器人节点,其中,所述孤立的云机器人节点为与其他云机器人节点没有配合关系。
8.一种重要云机器人节点的确定装置,其特征在于,所述装置包括:
集合单元,用于根据云机器人节点的标识与所述云机器人节点之间的配合关系,构建出云机器人集合;
程度单元,用于根据预先设定的公式与所述云机器人集合,确定出每个云机器人节点在预设层的重要程度,其中,所述预设层为所述云机器人节点处于K-Shell分解算法的预设层数;
结果单元,用于去除所述云机器人集合中重要程度低于第一预设值的云机器人节点,确定出所述云机器人集合中重要云机器人节点。
9.一种重要云机器人节点的确定设备,其特征在于,所述设备包括:
至少一个处理器;以及,
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够:
根据云机器人节点的标识与所述云机器人节点之间的配合关系,构建出云机器人集合;
根据预先设定的公式与所述云机器人集合,确定出每个云机器人节点在预设层的重要程度,其中,所述预设层为所述云机器人节点处于K-Shell分解算法的预设层数;
去除所述云机器人集合中重要程度低于第一预设值的云机器人节点,确定出所述云机器人集合中重要云机器人节点。
10.一种重要云机器人节点的确定介质,存储有计算机可执行指令,其特征在于,所述计算机可执行指令设置为:
根据云机器人节点的标识与所述云机器人节点之间的配合关系,构建出云机器人集合;
根据预先设定的公式与所述云机器人集合,确定出每个云机器人节点在预设层的重要程度,其中,所述预设层为所述云机器人节点处于K-Shell分解算法的预设层数;
去除所述云机器人集合中重要程度低于第一预设值的云机器人节点,确定出所述云机器人集合中重要云机器人节点。
CN202010767864.1A 2020-08-03 2020-08-03 一种重要云机器人节点的确定方法、装置、设备及介质 Active CN112087488B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010767864.1A CN112087488B (zh) 2020-08-03 2020-08-03 一种重要云机器人节点的确定方法、装置、设备及介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010767864.1A CN112087488B (zh) 2020-08-03 2020-08-03 一种重要云机器人节点的确定方法、装置、设备及介质

Publications (2)

Publication Number Publication Date
CN112087488A true CN112087488A (zh) 2020-12-15
CN112087488B CN112087488B (zh) 2023-08-25

Family

ID=73735283

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010767864.1A Active CN112087488B (zh) 2020-08-03 2020-08-03 一种重要云机器人节点的确定方法、装置、设备及介质

Country Status (1)

Country Link
CN (1) CN112087488B (zh)

Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105245362A (zh) * 2015-09-14 2016-01-13 河南工业大学 一种sdn环境中重要节点信息采集方法
CN105471637A (zh) * 2015-11-20 2016-04-06 中国矿业大学 一种复杂网络节点重要性评估方法及系统
CN105847145A (zh) * 2016-03-12 2016-08-10 大连理工大学 一种基于网络直径的重要节点搜索方法
CN105959368A (zh) * 2016-04-29 2016-09-21 成都信息工程大学 一种社交云热点资源预测与部署的方法
CN106774314A (zh) * 2016-12-11 2017-05-31 北京联合大学 一种基于行走轨迹的家庭服务机器人路径规划方法
CN106789338A (zh) * 2017-01-18 2017-05-31 北京航空航天大学 一种在动态大规模社交网络中发现关键人物的方法
CN108536471A (zh) * 2018-03-21 2018-09-14 北京航空航天大学 一种基于复杂网络的软件结构重要模块识别方法
CN108830307A (zh) * 2018-05-31 2018-11-16 西安理工大学 一种k-核心覆盖的社团发现方法
CN109274525A (zh) * 2018-08-30 2019-01-25 浙江工业大学 一种基于网络场论的识别网络中最有影响力top k节点的方法
CN109714207A (zh) * 2018-12-28 2019-05-03 中国电子科技集团公司信息科学研究院 一种复杂网络关键节点识别方法及系统
CN109728955A (zh) * 2019-01-04 2019-05-07 电子科技大学 基于改进k-shell的网络节点排序方法
CN109978710A (zh) * 2019-04-11 2019-07-05 重庆大学 基于k-核迭代因子和社区隶属度的重叠社区划分方法
CN111428323A (zh) * 2020-04-16 2020-07-17 太原理工大学 复杂网络中利用广义折扣度与k-shell识别一组关键节点的方法

Patent Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105245362A (zh) * 2015-09-14 2016-01-13 河南工业大学 一种sdn环境中重要节点信息采集方法
CN105471637A (zh) * 2015-11-20 2016-04-06 中国矿业大学 一种复杂网络节点重要性评估方法及系统
CN105847145A (zh) * 2016-03-12 2016-08-10 大连理工大学 一种基于网络直径的重要节点搜索方法
CN105959368A (zh) * 2016-04-29 2016-09-21 成都信息工程大学 一种社交云热点资源预测与部署的方法
CN106774314A (zh) * 2016-12-11 2017-05-31 北京联合大学 一种基于行走轨迹的家庭服务机器人路径规划方法
CN106789338A (zh) * 2017-01-18 2017-05-31 北京航空航天大学 一种在动态大规模社交网络中发现关键人物的方法
CN108536471A (zh) * 2018-03-21 2018-09-14 北京航空航天大学 一种基于复杂网络的软件结构重要模块识别方法
CN108830307A (zh) * 2018-05-31 2018-11-16 西安理工大学 一种k-核心覆盖的社团发现方法
CN109274525A (zh) * 2018-08-30 2019-01-25 浙江工业大学 一种基于网络场论的识别网络中最有影响力top k节点的方法
CN109714207A (zh) * 2018-12-28 2019-05-03 中国电子科技集团公司信息科学研究院 一种复杂网络关键节点识别方法及系统
CN109728955A (zh) * 2019-01-04 2019-05-07 电子科技大学 基于改进k-shell的网络节点排序方法
CN109978710A (zh) * 2019-04-11 2019-07-05 重庆大学 基于k-核迭代因子和社区隶属度的重叠社区划分方法
CN111428323A (zh) * 2020-04-16 2020-07-17 太原理工大学 复杂网络中利用广义折扣度与k-shell识别一组关键节点的方法

Also Published As

Publication number Publication date
CN112087488B (zh) 2023-08-25

Similar Documents

Publication Publication Date Title
JP6921206B2 (ja) データベース状態決定方法およびデバイスならびに整合性検証方法およびデバイス
CN107391526B (zh) 一种基于区块链的数据处理方法及设备
CN107391527B (zh) 一种基于区块链的数据处理方法及设备
CN107957989B (zh) 基于集群的词向量处理方法、装置以及设备
CN107577697B (zh) 一种数据处理方法、装置及设备
CN111080304A (zh) 一种可信关系识别方法、装置及设备
CN107578338B (zh) 一种业务发布方法、装置及设备
CN108021610A (zh) 随机游走、基于分布式系统的随机游走方法、装置以及设备
CN107391564B (zh) 数据转换方法、装置以及电子设备
CN109919357B (zh) 一种数据确定方法、装置、设备及介质
CN109658094B (zh) 随机游走、基于集群的随机游走方法、装置以及设备
CN108170663A (zh) 基于集群的词向量处理方法、装置以及设备
CN113641872B (zh) 一种散列方法、装置、设备及介质
CN112087488A (zh) 一种重要云机器人节点的确定方法、装置、设备及介质
CN116304704A (zh) 一种模型训练方法、装置、存储介质及电子设备
CN108470242B (zh) 风险管控方法、装置、及服务器
CN110019975B (zh) 随机游走、基于集群的随机游走方法、装置以及设备
CN113157767B (zh) 一种风险数据监控方法、装置以及设备
CN113656414B (zh) 一种数据处理方法、装置、设备及介质
CN111339371A (zh) 一种数据处理方法及装置
CN109614388B (zh) 一种预算扣减方法和装置
CN114817212A (zh) 一种数据库的优化方法及优化装置
CN109325127B (zh) 一种风险识别方法和装置
CN110032433A (zh) 一种任务执行方法、装置、设备及介质
CN113641871B (zh) 一种无锁散列方法、装置、设备及介质

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

Effective date of registration: 20230727

Address after: 250101 building S02, 1036 Chaochao Road, high tech Zone, Jinan City, Shandong Province

Applicant after: Shandong Inspur Scientific Research Institute Co.,Ltd.

Address before: Floor 6, Chaochao Road, Shandong Province

Applicant before: JINAN INSPUR HIGH-TECH TECHNOLOGY DEVELOPMENT Co.,Ltd.

TA01 Transfer of patent application right
GR01 Patent grant
GR01 Patent grant