CN117651256A - 一种基于离群检测的节点能源消耗监测方法及系统 - Google Patents

一种基于离群检测的节点能源消耗监测方法及系统 Download PDF

Info

Publication number
CN117651256A
CN117651256A CN202311605876.4A CN202311605876A CN117651256A CN 117651256 A CN117651256 A CN 117651256A CN 202311605876 A CN202311605876 A CN 202311605876A CN 117651256 A CN117651256 A CN 117651256A
Authority
CN
China
Prior art keywords
psen
array
value
outlier
sen
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
CN202311605876.4A
Other languages
English (en)
Other versions
CN117651256B (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.)
Foshan University
Original Assignee
Foshan University
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 Foshan University filed Critical Foshan University
Priority to CN202311605876.4A priority Critical patent/CN117651256B/zh
Priority claimed from CN202311605876.4A external-priority patent/CN117651256B/zh
Publication of CN117651256A publication Critical patent/CN117651256A/zh
Application granted granted Critical
Publication of CN117651256B publication Critical patent/CN117651256B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Testing Or Calibration Of Command Recording Devices (AREA)

Abstract

本发明涉及异常监测领域,并提供了一种基于离群检测的节点能源消耗监测方法及系统,获取传感器节点在运行过程中的实时负载数据,将所述实时负载数据记为原生数据,并将原生数据发送至服务器,在服务器中,计算原生数据的离群响应比,根据所述离群响应比,对传感器节点进行能源管理。所述方法能够对节点的能源消耗进行实时监测和调控,并基于实时负载数据进行节点间的离群监测,保持传感器网络在数据采集需求方面的稳定以及节点在持续工作过程的能源平衡,防止节点因能源消耗异常而引发网络整体的稳定性下降,充分延长节点的工作周期,使得节点之间的能源利用以及分配更为有效,大幅提升传感器网络的能源利用率。

Description

一种基于离群检测的节点能源消耗监测方法及系统
技术领域
本发明涉及异常监测领域,特别涉及一种基于离群检测的节点能源消耗监测方法。
背景技术
随着传感器技术和通信技术的飞速发展,大规模无线传感器网络(WSN)在涉及物联网的发展领域中得到广泛应用,如环境监测、智能建筑、数据采集等,作为物联网的基础设备,传感器节点小巧轻便,易于部署和携带,因此几乎能够在任何环境和时间点对目标对象完成数据的实时采集,为实时监控和决策提供数据资源的快速响应。
离群检测,或者叫异常检测,是一种在大量数据中识别出异常数据的过程,根据不同的场景和要求,离群检测的方法需要与具体问题进行匹配,在大规模无线传感器网络的实际应用中,节点能源的合理利用始终是一个亟待解决的应用难题,传统的节点能源消耗监测方法通常依赖于固定的阈值来进行,即只有当传感器的能源消耗超过预设的阈值时,能源管理策略才会被触发,这种基于阈值的管理策略虽然简单易实施,但对于复杂环境条件的适应性较弱,当传感器网络的负载出现幅度较大的波动时,仅依据阈值去控制节点的能源分布,无法提前预见和有效应对实时出现的能源短板情况,同时,在实际应用中,由于每个节点的实时能源消耗有所不同,以单一阈值作为监测基准难以达到较优的管理效果,因此,通过一种更高效、灵活的传感器节点能源消耗实时监测方法,充分延长大型WSN的运行周期,是进一步提高能源利用效率和监测精度的关键。
发明内容
本发明的目的在于提出一种基于离群检测的节点能源消耗监测方法,以解决现有技术中所存在的一个或多个技术问题,至少提供一种有益的选择或创造条件。
本发明提供了一种基于离群检测的节点能源消耗监测方法及系统,获取传感器节点在运行过程中的实时负载数据,将所述实时负载数据记为原生数据,并将原生数据发送至服务器,在服务器中,计算原生数据的离群响应比,根据所述离群响应比,对传感器节点进行能源管理。所述方法能够对节点的能源消耗进行实时监测和调控,并基于实时负载数据进行节点间的离群监测,保持传感器网络在数据采集需求方面的稳定以及节点在持续工作过程的能源平衡,防止节点因能源消耗异常而引发网络整体的稳定性下降,充分延长节点的工作周期,使得节点之间的能源利用以及分配更为有效,大幅提升传感器网络的能源利用率。
为了实现上述目的,根据本发明的一方面,提供一种基于离群检测的节点能源消耗监测方法,所述方法包括以下步骤:
S100,获取传感器节点在运行过程中的实时负载数据;
S200,将所述实时负载数据记为原生数据,并将原生数据发送至服务器;
S300,在服务器中,计算原生数据的离群响应比;
S400,根据所述离群响应比,对传感器节点进行能源管理。
进一步地,步骤S100中,所述传感器节点的数量为多个,每个传感器内置有mcu,各个传感器节点均通过无线方式远程连接至服务器,服务器通过SNMP协议管理所有传感器节点。
进一步地,步骤S100中,获取传感器节点在运行过程中的实时负载数据的方法具体为:
记所有传感器节点的数量为N个,以sen(i)表示N个传感器节点中的第i个传感器节点(即以sen(i)分别对每个传感器节点进行编号),i为序号,i的取值范围为i=1,2,…,N,创建一个数组序列P_sen<N>,P_sen<N>内含有N个空白的数组,以Psen(i)表示数组序列P_sen<N>中的第i个数组;
将sen(i)在运行过程中的实时负载数据填入数组Psen(i)中,遍历sen(i)中的序号i,从i=1遍历至i=N从而完成N个数组Psen(1),Psen(2),…,Psen(N)的数据写入,以数组序列P_sen<N>中的N个数组作为传感器节点在运行过程中的实时负载数据。
进一步地,将sen(i)在运行过程中的实时负载数据填入数组Psen(i)中的方法为:设置时段T,时段T为sen(i)在运行过程中的任意一个时段,时段T的长度设置为M秒,以t(j)表示时段T内的第j秒,t(j)为时刻,t(j)的取值范围为t(j)=t(1),t(2),…,t(M);
记mpc(i,j)为sen(i)内置的mcu在时刻t(j)的瞬时功耗大小,mpc(i,j)的单位为毫安(μA),j为序号,j的取值范围为j=1,2,…,M,则mpc(i,j)的取值范围为mpc(i,j)=mpc(i,1),mpc(i,2),…,mpc(i,M),将这M个数据mpc(i,1),mpc(i,2),…,mpc(i,M)依次加入数组Psen(i)中,则数组Psen(i)内含有M个元素,每个元素各对应一个元素值;
其中,M的具体数值设置为区间[3600,10800]内的任意一个整数(即将时段T的长度设置为1小时至3小时)。
本步骤的有益效果为:由于传感器节点在工作过程中的实时负载数据与其能源消耗的状态高度正相关,本步骤的方法通过实时采集节点在时段T内的负载数据并分别以数组的形式存储,通过后续基于离群检测的数据分析,利用对传感器网络的实时监控而定位出能源消耗异常的节点,实现对能源消耗过度或者状态异常的节点进行警告和定位,避免节点由于能源问题而过早死亡,保证了传感器网络的稳定运行和服务的连续性。
进一步地,步骤S200中,将所述实时负载数据记为原生数据,并将原生数据发送至服务器的方法具体为:将数组序列P_sen<N>中的N个数组记为原生数据,并通过传感器节点将原生数据发送至服务器。
进一步地,步骤S300中,在服务器中,计算原生数据的离群响应比的方法为:
S301,创建一个空白的数组ach[],计算响应初值R1,创建一个空白的数组RPIV[],将响应初值R1加入到数组RPIV[]中;
以Psen(i)表示数组序列P_sen<N>的N个数组中的第i个数组,i为序号,i的取值范围为i=1,2,…,N,初始化变量k(变量k用于遍历Psen(i)),k的取值范围与i的取值范围相同,从k=1开始遍历变量k,以Psen(k)表示变量k在数组序列P_sen<N>的N个数组中所对应的第k个数组,转至S302;
S302,记数组Psen(k)中的第j个元素为Psen(k,j),j为序号,j的取值范围为j=1,2,…,M,M为数组Psen(k)的长度(即数组Psen(k)内的所有元素的数量),以Psen(k,jm)表示数组Psen(k)中元素值最小的元素(传感器节点sen(k)在时段T内瞬时功耗最小的时刻),以Psen(k,jg)表示数组Psen(k)中元素值最大的元素(瞬时功耗最大的时刻),jm、jg都为序号,jm,jg∈[1,M];
将数组Psen(k)中位于Psen(k,jm)与Psen(k,jg)之间的所有元素加入数组ach[]中,以Aach表示数组ach[]中所有元素的平均值,转至S303;
S303,如果Aach的值大于响应初值R1,则将响应初值R1的值更新为当前Aach的值,同时清空数组ach[]内的所有元素(以便在下一轮迭代中更新Aach的值);
如果Aach的值小于或等于响应初值R1,则通过第一离群算法更新R1的值,同时清空数组ach[]内的所有元素;
将当前R1的值加入到数组RPIV[]中,转至S304;
S304,如果当前变量k的值小于N,则将变量k的值增加1,并转到S302;如果当前变量k的值大于或等于N,则转至S305;
S305,以OR_r(i)表示Psen(i)所对应的离群响应比,OR_r(i)的计算方法为:将数组Psen(i)内的M个元素依次减去RPIV(i)的值,从而得到M个第一数值,取这M个第一数值的绝对值作为离群度,则共有M个离群度;以数组Psen(i)内的最大值除以M个离群度,得到M个第二数值,依次将这M个第二数值进行累加,进而得到离群响应比;
将Psen(i)中的i从i=1遍历至i=N,从而得到N个数组Psen(1),Psen(2),…,Psen(N)所对应的N个离群响应比OR_r(1),OR_r(2),…,OR_r(N)。
本步骤的有益效果为:在大型传感器网络中,每个节点的实时工作状态不同,即其实时负载不同,对于能源消耗异常的节点,如果未能够及时地对其进行能源管控,往往会导致这部分节点的能源消耗过快,影响整个网络的运行效率和稳定性,而进行能源管控的前提是要对所有节点进行负载数据方面的实时监测,以便快速筛选出部分异常节点,因此需要针对性地分批次地对传感器节点的能源消耗进行调控,本步骤的方法利用每个节点的负载数据,计算原生数据的离群响应比,原生数据中的N个数组各对应着N个传感器节点,以离群响应比作为衡量目标节点在当前时段内相对于整个WSN的稳定度,即相对于其他节点而言,离群响应比值较高的节点在当前时段T的状态并不稳定,存在发生节点死亡或失效的风险,因为大型WSN的工作周期较为持续且长久,所有节点在任意一个时段内的综合负载是保持相对均衡的,当部分节点出现异常时,这部分异常会表现在节点的负载数据的变化中,因此,通过离群响应比作为节点的异常筛选衡量标准,相比于基于阈值的管理策略,在快速监测以及管控方面,具有更高的精确度以及反应速度,能够实时、准确地对能源消耗的节点进行快速管控,从而大幅提高整个网络的稳定表现,避免无效能源浪费的同时,还能够提高节点之间的协作能力。
进一步地,通过第一离群算法更新R1的值的方法具体为:记Rs=round(M/2),round()表示对括号内的值进行向上取整,将序号jm的值与Rs的值进行比较;
如果jm的值小于或者等于Rs的值,则将数组Psen(k)中位于Psen(k,1)与Psen(k,jm)之间的所有元素组成离群数据段;如果jm的值大于Rs的值,则将数组Psen(k)中位于Psen(k,jm)与Psen(k,M)之间的所有元素组成离群数据段;
将离群数据段中元素值最小的元素记为Psen(k,jp),jp为序号,jp∈[1,M];
将R1的值更新为:数组Psen(k)中位于Psen(k,jp)与Psen(k,jg)之间的所有元素的平均值。
进一步地,响应初值R1的计算方法为:在数组序列P_sen<N>的N个数组中,依次计算每个数组内所有元素的平均值,以APsen(i)表示Psen(i)内所有元素的平均值,则N个数组Psen(1),Psen(2),…,Psen(N)对应着N个所述平均值APsen(1),APsen(2),…,APsen(N),在这N个数组Psen(1),Psen(2),…,Psen(N)中筛选出平均值最大的数组并记该数组为Psen(X),X为序号,X∈[1,N];
分别以Psen(X,jm)和Psen(X,jg)表示数组Psen(X)中元素值最小的元素和元素值最大的元素,将数组Psen(X)中位于Psen(X,jm)与Psen(X,jg)之间的所有元素的平均值记为响应初值R1。
进一步地,步骤S400中,根据所述离群响应比,对传感器节点进行能源管理的方法具体为:以OR_r(i)作为N个传感器节点中的第i个传感器节点sen(i)的离群响应比,则N个传感器节点sen(1),sen(2),…,sen(N)分别依次对应着N个离群响应比OR_r(1),OR_r(2),…,OR_r(N),记ORA为N个离群响应比OR_r(1),OR_r(2),…,OR_r(N)的平均值,将离群响应比的值大于ORA的传感器节点标记为风险节点;
调整所有风险节点内的mcu的工作模式为低功耗模式。
本步骤的有益效果为:将离群响应比值较高的节点进行能源管控,调整其工作模式至低功耗模式,降低风险节点的负载压力,使其运行周期有效延长,防止负载过高而引起的节点失效情况,保证所有传感器节点的能源消耗平衡。
由于大型无线传感器网络中的节点数量往往与数据采集的需求相匹配,即传感器节点的总数量平衡于其工作强度,如果关闭过多节点或将过多的节点设置为休眠,容易造成需求不平衡,即部分节点负荷超出其设计上限,引发资源分配失衡的问题,因此,为进一步地有效筛选出更为精确的风险节点列表,根据所述离群响应比,对传感器节点进行能源管理的方法还可以为:
S401,创建一个空白的数组OR_r[],将N个离群响应比OR_r(1),OR_r(2),…,OR_r(N)依次加入数组OR_r[]中;创建一个长度为N的空白数组swa[],以swa(i)表示数组swa[]内的第i个元素,i为序号,i的取值范围为i=1,2,…,N;通过响应阶式计算swa(i)的值:
swa(i)=exp(1/N*(OR_r(i)-ORm));
其中,OR_r(i)为数组OR_r[]中的第i个元素,Orm为数组OR_r[]内的最小值,exp()表示对()内的数取以自然常数e为底的指数运算;
创建一个空白的数组Lev{},初始化变量k,k的取值范围与i的取值范围相同,从k=1开始遍历变量k,转至S402;
S402,如果swa(k)的值大于ORW的值,则将当前k的值加入数组Lev{}中,转至S403;其中,swa(k)表示变量k的值在数组swa[]中所对应的第k个元素;
ORW的值通过下式计算:
式中,N1=round(N/2),round()表示对括号内的值进行向上取整;swaT(i1)表示数组swaT[]内的第i1个元素,数组swaT[]是数组swa[]的升序排序数组(即将swa[]内的所有元素全部升序排序后,得到一组有序的元素排列,将这组有序的元素排列以swaT[]储存),i1为序号,i1的取值范围与序号i的取值范围相同;
S403,如果当前变量k的值小于N,则将变量k的值增加1,并转到S402;如果当前变量k的值大于或等于N,则转至S404;
S404,记Lev(c)为数组Lev{}中的第c个元素,c为序号,c的取值范围为c=1,2,…,C,C为数组Lev{}内所有元素的数量;
将N个传感器节点中的第Lev(1)个,第Lev(2)个,…,第Lev(C)个传感器sen(Lev(1)),sen(Lev(2)),…,sen(Lev(C))标记为风险节点;
其中,Lev(1)表示数组Lev{}的第1个元素,Lev(2)表示数组Lev{}的第2个元素,Lev(C)表示数组Lev{}的第C个元素;
调整所有风险节点内的mcu的工作模式为低功耗模式。
本步骤的有益效果为:通过引入响应阶式作为筛选风险节点的计算策略,针对于每个节点的离群响应比作变化扩大映射(exp函数),能够使得各节点之间的异常区别更为明显(基于离群响应比),以ORW作为均值ORA的替换,在筛选标准上能够更精细地控制风险节点的数量,以保持节点间的工作负载平衡,降低对于正常运行节点的误干扰率,充分提升大型WSN中传感器节点的能源效率和稳定性。
本发明还提供了一种基于离群检测的节点能源消耗监测系统,所述一种基于离群检测的节点能源消耗监测系统包括:处理器、存储器及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现一种基于离群检测的节点能源消耗监测方法中的步骤,所述基于离群检测的节点能源消耗监测系统可以运行于桌上型计算机、笔记本电脑、移动电话、手提电话、平板电脑、掌上电脑及云端数据中心等计算设备中,可运行的系统可包括,但不仅限于,处理器、存储器、服务器集群,所述处理器执行所述计算机程序运行在以下系统的单元中:
数据获取单元,用于获取传感器节点在运行过程中的实时负载数据;
数据发送单元,用于将所述实时负载数据记为原生数据,并将原生数据发送至服务器;
参数计算单元,用于在服务器中,计算原生数据的离群响应比;
能源管理单元,用于根据所述离群响应比,对传感器节点进行能源管理。
本发明的有益效果为:所述方法能够对节点的能源消耗进行实时监测和调控,并基于实时负载数据进行节点间的离群监测,保持传感器网络在数据采集需求方面的稳定以及节点在持续工作过程的能源平衡,防止节点因能源消耗异常而引发网络整体的稳定性下降,充分延长节点的工作周期,使得节点之间的能源利用以及分配更为有效,大幅提升传感器网络的能源利用率。
附图说明
通过对结合附图所示出的实施方式进行详细说明,本发明的上述以及其他特征将更加明显,本发明附图中相同的参考标号表示相同或相似的元素,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图,在附图中:
图1所示为一种基于离群检测的节点能源消耗监测方法的流程图;
图2所示为一种基于离群检测的节点能源消耗监测系统的系统结构图。
具体实施方式
以下将结合实施例和附图对本发明的构思、具体结构及产生的技术效果进行清楚、完整的描述,以充分地理解本发明的目的、方案和效果。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
在本发明的描述中,若干的含义是一个或者多个,多个的含义是两个以上,大于、小于、超过等理解为不包括本数,以上、以下、以内等理解为包括本数。如果有描述到第一、第二只是用于区分技术特征为目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量或者隐含指明所指示的技术特征的先后关系。
如图1所示为根据本发明的一种基于离群检测的节点能源消耗监测方法的流程图,下面结合图1来阐述根据本发明的实施方式的一种基于离群检测的节点能源消耗监测方法。
本发明提出一种基于离群检测的节点能源消耗监测方法,所述方法包括以下步骤:
S100,获取传感器节点在运行过程中的实时负载数据;
S200,将所述实时负载数据记为原生数据,并将原生数据发送至服务器;
S300,在服务器中,计算原生数据的离群响应比;
S400,根据所述离群响应比,对传感器节点进行能源管理。
进一步地,步骤S100中,所述传感器节点的数量为多个,每个传感器内置有mcu,各个传感器节点均通过无线方式远程连接至服务器,服务器通过SNMP协议管理所有传感器节点。
进一步地,步骤S100中,获取传感器节点在运行过程中的实时负载数据的方法具体为:
记所有传感器节点的数量为N个,以sen(i)表示N个传感器节点中的第i个传感器节点(即以sen(i)分别对每个传感器节点进行编号),i为序号,i的取值范围为i=1,2,…,N,创建一个数组序列P_sen<N>,P_sen<N>内含有N个空白的数组,以Psen(i)表示数组序列P_sen<N>中的第i个数组;
将sen(i)在运行过程中的实时负载数据填入数组Psen(i)中,遍历sen(i)中的序号i,从i=1遍历至i=N从而完成N个数组Psen(1),Psen(2),…,Psen(N)的数据写入,以数组序列P_sen<N>中的N个数组作为传感器节点在运行过程中的实时负载数据。
进一步地,将sen(i)在运行过程中的实时负载数据填入数组Psen(i)中的方法为:设置时段T,时段T为sen(i)在运行过程中的任意一个时段,时段T的长度设置为M秒,以t(j)表示时段T内的第j秒,t(j)为时刻,t(j)的取值范围为t(j)=t(1),t(2),…,t(M);
记mpc(i,j)为sen(i)内置的mcu在时刻t(j)的瞬时功耗大小,mpc(i,j)的单位为毫安(μA),j为序号,j的取值范围为j=1,2,…,M,则mpc(i,j)的取值范围为mpc(i,j)=mpc(i,1),mpc(i,2),…,mpc(i,M),将这M个数据mpc(i,1),mpc(i,2),…,mpc(i,M)依次加入数组Psen(i)中,则数组Psen(i)内含有M个元素,每个元素各对应一个元素值;
其中,M的具体数值设置为10800。
进一步地,步骤S200中,将所述实时负载数据记为原生数据,并将原生数据发送至服务器的方法具体为:将数组序列P_sen<N>中的N个数组记为原生数据,并通过传感器节点将原生数据发送至服务器。
进一步地,步骤S300中,在服务器中,计算原生数据的离群响应比的方法为:
S301,创建一个空白的数组ach[],计算响应初值R1,创建一个空白的数组RPIV[],将响应初值R1加入到数组RPIV[]中;
以Psen(i)表示数组序列P_sen<N>的N个数组中的第i个数组,i为序号,i的取值范围为i=1,2,…,N,初始化变量k(变量k用于遍历Psen(i)),k的取值范围与i的取值范围相同,从k=1开始遍历变量k,以Psen(k)表示变量k在数组序列P_sen<N>的N个数组中所对应的第k个数组,转至S302;
S302,记数组Psen(k)中的第j个元素为Psen(k,j),j为序号,j的取值范围为j=1,2,…,M,M为数组Psen(k)的长度(即数组Psen(k)内的所有元素的数量),以Psen(k,jm)表示数组Psen(k)中元素值最小的元素(传感器节点sen(k)在时段T内瞬时功耗最小的时刻),以Psen(k,jg)表示数组Psen(k)中元素值最大的元素(瞬时功耗最大的时刻),jm、jg都为序号,jm,jg∈[1,M];
将数组Psen(k)中位于Psen(k,jm)与Psen(k,jg)之间的所有元素加入数组ach[]中,以Aach表示数组ach[]中所有元素的平均值,转至S303;
S303,如果Aach的值大于响应初值R1,则将响应初值R1的值更新为当前Aach的值,同时清空数组ach[]内的所有元素(以便在下一轮迭代中更新Aach的值);
如果Aach的值小于或等于响应初值R1,则通过第一离群算法更新R1的值,同时清空数组ach[]内的所有元素;
将当前R1的值加入到数组RPIV[]中,转至S304;
S304,如果当前变量k的值小于N,则将变量k的值增加1,并转到S302;如果当前变量k的值大于或等于N,则转至S305;
S305,以OR_r(i)表示Psen(i)所对应的离群响应比,OR_r(i)的计算方法为:将数组Psen(i)内的M个元素依次减去RPIV(i)的值,从而得到M个第一数值,取这M个第一数值的绝对值作为离群度,则共有M个离群度;以数组Psen(i)内的最大值除以M个离群度,得到M个第二数值,依次将这M个第二数值进行累加,进而得到离群响应比;
将Psen(i)中的i从i=1遍历至i=N,从而得到N个数组Psen(1),Psen(2),…,Psen(N)所对应的N个离群响应比OR_r(1),OR_r(2),…,OR_r(N);
具体地,其数学表达为:
式中,n为累加变量,n的累加范围为[1,M],Psen(i)_M为数组Psen(i)内元素值最大的元素,Psen(i,n)为数组Psen(i)内的第n个元素,RPIV(i)表示数组RPIV[]中的第i个元素。
进一步地,通过第一离群算法更新R1的值的方法具体为:记Rs=round(M/2),round()表示对括号内的值进行向上取整,将序号jm的值与Rs的值进行比较;
如果jm的值小于或者等于Rs的值,则将数组Psen(k)中位于Psen(k,1)与Psen(k,jm)之间的所有元素组成离群数据段;如果jm的值大于Rs的值,则将数组Psen(k)中位于Psen(k,jm)与Psen(k,M)之间的所有元素组成离群数据段;
将离群数据段中元素值最小的元素记为Psen(k,jp),jp为序号,jp∈[1,M];
将R1的值更新为:数组Psen(k)中位于Psen(k,jp)与Psen(k,jg)之间的所有元素的平均值。
进一步地,响应初值R1的计算方法为:在数组序列P_sen<N>的N个数组中,依次计算每个数组内所有元素的平均值,以APsen(i)表示Psen(i)内所有元素的平均值,则N个数组Psen(1),Psen(2),…,Psen(N)对应着N个所述平均值APsen(1),APsen(2),…,APsen(N),在这N个数组Psen(1),Psen(2),…,Psen(N)中筛选出平均值最大的数组并记该数组为Psen(X),X为序号,X∈[1,N];
分别以Psen(X,jm)和Psen(X,jg)表示数组Psen(X)中元素值最小的元素和元素值最大的元素,将数组Psen(X)中位于Psen(X,jm)与Psen(X,jg)之间的所有元素的平均值记为响应初值R1。
进一步地,步骤S400中,根据所述离群响应比,对传感器节点进行能源管理的方法具体为:以OR_r(i)作为N个传感器节点中的第i个传感器节点sen(i)的离群响应比,则N个传感器节点sen(1),sen(2),…,sen(N)分别依次对应着N个离群响应比OR_r(1),OR_r(2),…,OR_r(N),记ORA为N个离群响应比OR_r(1),OR_r(2),…,OR_r(N)的平均值,将离群响应比的值大于ORA的传感器节点标记为风险节点;
调整所有风险节点内的mcu的工作模式为低功耗模式。
由于大型无线传感器网络中的节点数量往往与数据采集的需求相匹配,即传感器节点的总数量平衡于其工作强度,如果关闭过多节点或将过多的节点设置为休眠,容易造成需求不平衡,即部分节点负荷超出其设计上限,引发资源分配失衡的问题,因此,为进一步地有效筛选出更为精确的风险节点列表,根据所述离群响应比,对传感器节点进行能源管理的方法还可以为:
S401,创建一个空白的数组OR_r[],将N个离群响应比OR_r(1),OR_r(2),…,OR_r(N)依次加入数组OR_r[]中;创建一个长度为N的空白数组swa[],以swa(i)表示数组swa[]内的第i个元素,i为序号,i的取值范围为i=1,2,…,N;通过响应阶式计算swa(i)的值:
swa(i)=exp(1/N*(OR_r(i)-ORm));
其中,OR_r(i)为数组OR_r[]中的第i个元素,Orm为数组OR_r[]内的最小值,exp()表示对()内的数取以自然常数e为底的指数运算;
创建一个空白的数组Lev{},初始化变量k,k的取值范围与i的取值范围相同,从k=1开始遍历变量k,转至S402;
S402,如果swa(k)的值大于ORW的值,则将当前k的值加入数组Lev{}中,转至S403;其中,swa(k)表示变量k的值在数组swa[]中所对应的第k个元素;
ORW的值通过下式计算:
式中,N1=round(N/2),round()表示对括号内的值进行向上取整;swaT(i1)表示数组swaT[]内的第i1个元素,数组swaT[]是数组swa[]的升序排序数组(即将swa[]内的所有元素全部升序排序后,得到一组有序的元素排列,将这组有序的元素排列以swaT[]储存),i1为序号,i1的取值范围与序号i的取值范围相同;
S403,如果当前变量k的值小于N,则将变量k的值增加1,并转到S402;如果当前变量k的值大于或等于N,则转至S404;
S404,记Lev(c)为数组Lev{}中的第c个元素,c为序号,c的取值范围为c=1,2,…,C,C为数组Lev{}内所有元素的数量;
将N个传感器节点中的第Lev(1)个,第Lev(2)个,…,第Lev(C)个传感器sen(Lev(1)),sen(Lev(2)),…,sen(Lev(C))标记为风险节点;
其中,Lev(1)表示数组Lev{}的第1个元素,Lev(2)表示数组Lev{}的第2个元素,Lev(C)表示数组Lev{}的第C个元素;
调整所有风险节点内的mcu的工作模式为低功耗模式。
所述一种基于离群检测的节点能源消耗监测系统包括:处理器、存储器及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述一种基于离群检测的节点能源消耗监测方法实施例中的步骤,所述一种基于离群检测的节点能源消耗监测系统可以运行于桌上型计算机、笔记本电脑、移动电话、手提电话、平板电脑、掌上电脑及云端数据中心等计算设备中,可运行的系统可包括,但不仅限于,处理器、存储器、服务器集群。
本发明的实施例提供的一种基于离群检测的节点能源消耗监测系统,如图2所示,该实施例的一种基于离群检测的节点能源消耗监测系统包括:处理器、存储器及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述一种基于离群检测的节点能源消耗监测方法实施例中的步骤,所述处理器执行所述计算机程序运行在以下系统的单元中:
数据获取单元,用于获取传感器节点在运行过程中的实时负载数据;
数据发送单元,用于将所述实时负载数据记为原生数据,并将原生数据发送至服务器;
参数计算单元,用于在服务器中,计算原生数据的离群响应比;
能源管理单元,用于根据所述离群响应比,对传感器节点进行能源管理。
所述一种基于离群检测的节点能源消耗监测系统可以运行于桌上型计算机、笔记本电脑、掌上电脑及云端数据中心等计算设备中。所述一种基于离群检测的节点能源消耗监测系统包括,但不仅限于,处理器、存储器。本领域技术人员可以理解,所述例子仅仅是一种基于离群检测的节点能源消耗监测方法及系统的示例,并不构成对一种基于离群检测的节点能源消耗监测方法及系统的限定,可以包括比例子更多或更少的部件,或者组合某些部件,或者不同的部件,例如所述一种基于离群检测的节点能源消耗监测系统还可以包括输入输出设备、网络接入设备、总线等。
所称处理器可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立元器件门电路或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等,所述处理器是所述一种基于离群检测的节点能源消耗监测系统的控制中心,利用各种接口和线路连接整个一种基于离群检测的节点能源消耗监测系统的各个分区域。
所述存储器可用于存储所述计算机程序和/或模块,所述处理器通过运行或执行存储在所述存储器内的计算机程序和/或模块,以及调用存储在存储器内的数据,实现所述一种基于离群检测的节点能源消耗监测方法及系统的各种功能。所述存储器可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据手机的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器可以包括高速随机存取存储器,还可以包括非易失性存储器,例如硬盘、内存、插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)、至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
本发明提供了一种基于离群检测的节点能源消耗监测方法及系统,获取传感器节点在运行过程中的实时负载数据,将所述实时负载数据记为原生数据,并将原生数据发送至服务器,在服务器中,计算原生数据的离群响应比,根据所述离群响应比,对传感器节点进行能源管理。所述方法能够对节点的能源消耗进行实时监测和调控,并基于实时负载数据进行节点间的离群监测,保持传感器网络在数据采集需求方面的稳定以及节点在持续工作过程的能源平衡,防止节点因能源消耗异常而引发网络整体的稳定性下降,充分延长节点的工作周期,使得节点之间的能源利用以及分配更为有效,大幅提升传感器网络的能源利用率。尽管本发明的描述已经相当详尽且特别对几个所述实施例进行了描述,但其并非旨在局限于任何这些细节或实施例或任何特殊实施例,从而有效地涵盖本发明的预定范围。此外,上文以发明人可预见的实施例对本发明进行描述,其目的是为了提供有用的描述,而那些目前尚未预见的对本发明的非实质性改动仍可代表本发明的等效改动。

Claims (10)

1.一种基于离群检测的节点能源消耗监测方法,其特征在于,所述方法包括以下步骤:
S100,获取传感器节点在运行过程中的实时负载数据;
S200,将所述实时负载数据记为原生数据,并将原生数据发送至服务器;
S300,在服务器中,计算原生数据的离群响应比;
S400,根据所述离群响应比,对传感器节点进行能源管理。
2.根据权利要求1所述的一种基于离群检测的节点能源消耗监测方法,其特征在于,步骤S100中,所述传感器节点的数量为多个,每个传感器内置有mcu,各个传感器节点均通过无线方式远程连接至服务器,服务器通过SNMP协议管理所有传感器节点。
3.根据权利要求1所述的一种基于离群检测的节点能源消耗监测方法,其特征在于,步骤S100中,获取传感器节点在运行过程中的实时负载数据的方法具体为:记所有传感器节点的数量为N个,以sen(i)表示N个传感器节点中的第i个传感器节点,i为序号,i的取值范围为i=1,2,…,N,创建一个数组序列P_sen<N>,P_sen<N>内含有N个空白的数组,以Psen(i)表示数组序列P_sen<N>中的第i个数组;
将sen(i)在运行过程中的实时负载数据填入数组Psen(i)中,遍历sen(i)中的序号i,从i=1遍历至i=N从而完成N个数组Psen(1),Psen(2),…,Psen(N)的数据写入,以数组序列P_sen<N>中的N个数组作为传感器节点在运行过程中的实时负载数据。
4.根据权利要求3所述的一种基于离群检测的节点能源消耗监测方法,其特征在于,将sen(i)在运行过程中的实时负载数据填入数组Psen(i)中的方法为:设置时段T,时段T为sen(i)在运行过程中的任意一个时段,时段T的长度设置为M秒,以t(j)表示时段T内的第j秒,t(j)为时刻,t(j)的取值范围为t(j)=t(1),t(2),…,t(M);
记mpc(i,j)为sen(i)内置的mcu在时刻t(j)的瞬时功耗大小,mpc(i,j)的单位为毫安,j为序号,j的取值范围为j=1,2,…,M,则mpc(i,j)的取值范围为mpc(i,j)=mpc(i,1),mpc(i,2),…,mpc(i,M),将这M个数据mpc(i,1),mpc(i,2),…,mpc(i,M)依次加入数组Psen(i)中,则数组Psen(i)内含有M个元素,每个元素各对应一个元素值。
5.根据权利要求1所述的一种基于离群检测的节点能源消耗监测方法,其特征在于,步骤S200中,将所述实时负载数据记为原生数据,并将原生数据发送至服务器的方法具体为:将数组序列P_sen<N>中的N个数组记为原生数据,并通过传感器节点将原生数据发送至服务器。
6.根据权利要求1所述的一种基于离群检测的节点能源消耗监测方法,其特征在于,步骤S300中,在服务器中,计算原生数据的离群响应比的方法为:
S301,创建一个空白的数组ach[],计算响应初值R1,创建一个空白的数组RPIV[],将响应初值R1加入到数组RPIV[]中;
以Psen(i)表示数组序列P_sen<N>的N个数组中的第i个数组,i为序号,i的取值范围为i=1,2,…,N,初始化变量k,k的取值范围与i的取值范围相同,从k=1开始遍历变量k,以Psen(k)表示变量k在数组序列P_sen<N>的N个数组中所对应的第k个数组,转至S302;
S302,记数组Psen(k)中的第j个元素为Psen(k,j),j为序号,j的取值范围为j=1,2,…,M,M为数组Psen(k)的长度,以Psen(k,jm)表示数组Psen(k)中元素值最小的元素,以Psen(k,jg)表示数组Psen(k)中元素值最大的元素,jm、jg都为序号,jm,jg∈[1,M];
将数组Psen(k)中位于Psen(k,jm)与Psen(k,jg)之间的所有元素加入数组ach[]中,以Aach表示数组ach[]中所有元素的平均值,转至S303;
S303,如果Aach的值大于响应初值R1,则将响应初值R1的值更新为当前Aach的值,同时清空数组ach[]内的所有元素;
如果Aach的值小于或等于响应初值R1,则通过第一离群算法更新R1的值,同时清空数组ach[]内的所有元素;
将当前R1的值加入到数组RPIV[]中,转至S304;
S304,如果当前变量k的值小于N,则将变量k的值增加1,并转到S302;如果当前变量k的值大于或等于N,则转至S305;
S305,以OR_r(i)表示Psen(i)所对应的离群响应比,OR_r(i)的计算方法为:将数组Psen(i)内的M个元素依次减去RPIV(i)的值,从而得到M个第一数值,取这M个第一数值的绝对值作为离群度,则共有M个离群度;以数组Psen(i)内的最大值除以M个离群度,得到M个第二数值,依次将这M个第二数值进行累加,进而得到离群响应比;
将Psen(i)中的i从i=1遍历至i=N,从而得到N个数组Psen(1),Psen(2),…,Psen(N)所对应的N个离群响应比OR_r(1),OR_r(2),…,OR_r(N)。
7.根据权利要求6所述的一种基于离群检测的节点能源消耗监测方法,其特征在于,通过第一离群算法更新R1的值的方法具体为:记Rs=round(M/2),round()表示对括号内的值进行向上取整,将序号jm的值与Rs的值进行比较;
如果jm的值小于或者等于Rs的值,则将数组Psen(k)中位于Psen(k,1)与Psen(k,jm)之间的所有元素组成离群数据段;如果jm的值大于Rs的值,则将数组Psen(k)中位于Psen(k,jm)与Psen(k,M)之间的所有元素组成离群数据段;
将离群数据段中元素值最小的元素记为Psen(k,jp),jp为序号,jp∈[1,M];
将R1的值更新为:数组Psen(k)中位于Psen(k,jp)与Psen(k,jg)之间的所有元素的平均值。
8.根据权利要求6所述的一种基于离群检测的节点能源消耗监测方法,其特征在于,响应初值R1的计算方法为:在数组序列P_sen<N>的N个数组中,依次计算每个数组内所有元素的平均值,以APsen(i)表示Psen(i)内所有元素的平均值,则N个数组Psen(1),Psen(2),…,Psen(N)对应着N个所述平均值APsen(1),APsen(2),…,APsen(N),在这N个数组Psen(1),Psen(2),…,Psen(N)中筛选出平均值最大的数组并记该数组为Psen(X),X为序号,X∈[1,N];
分别以Psen(X,jm)和Psen(X,jg)表示数组Psen(X)中元素值最小的元素和元素值最大的元素,将数组Psen(X)中位于Psen(X,jm)与Psen(X,jg)之间的所有元素的平均值记为响应初值R1。
9.根据权利要求1所述的一种基于离群检测的节点能源消耗监测方法,其特征在于,步骤S400中,根据所述离群响应比,对传感器节点进行能源管理的方法具体为:以OR_r(i)作为N个传感器节点中的第i个传感器节点sen(i)的离群响应比,则N个传感器节点sen(1),sen(2),…,sen(N)分别依次对应着N个离群响应比OR_r(1),OR_r(2),…,OR_r(N),记ORA为N个离群响应比OR_r(1),OR_r(2),…,OR_r(N)的平均值,将离群响应比的值大于ORA的传感器节点标记为风险节点;
调整所有风险节点内的mcu的工作模式为低功耗模式。
10.一种基于离群检测的节点能源消耗监测系统,其特征在于,所述一种基于离群检测的节点能源消耗监测系统包括:处理器、存储器及存储在所述存储器中并在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现权利要求1-9中任一项所述的一种基于离群检测的节点能源消耗监测方法中的步骤,所述一种基于离群检测的节点能源消耗监测系统运行于桌上型计算机、笔记本电脑、掌上电脑或云端数据中心的计算设备中。
CN202311605876.4A 2023-11-28 一种基于离群检测的节点能源消耗监测方法及系统 Active CN117651256B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311605876.4A CN117651256B (zh) 2023-11-28 一种基于离群检测的节点能源消耗监测方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311605876.4A CN117651256B (zh) 2023-11-28 一种基于离群检测的节点能源消耗监测方法及系统

Publications (2)

Publication Number Publication Date
CN117651256A true CN117651256A (zh) 2024-03-05
CN117651256B CN117651256B (zh) 2024-06-07

Family

ID=

Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106241538A (zh) * 2016-09-20 2016-12-21 广州特种机电设备检测研究院 一种基于物联网的电梯能耗在线监测系统
CN106886591A (zh) * 2017-02-21 2017-06-23 华南理工大学 一种基于数据挖掘的智能路灯能耗分析系统
CN108038044A (zh) * 2017-12-26 2018-05-15 北京航空航天大学 一种面向连续被监测对象的异常检测方法
CN111443259A (zh) * 2020-03-30 2020-07-24 国网山东省电力公司德州供电公司 基于局部异常因子检测的有源配电网故障诊断方法及系统
CN111882833A (zh) * 2020-07-21 2020-11-03 华润电力唐山丰润有限公司 基于离群参数的设备故障预警方法、装置、设备及介质
CN112541016A (zh) * 2020-11-26 2021-03-23 南方电网数字电网研究院有限公司 用电异常检测方法、装置、计算机设备和存储介质
CN112733904A (zh) * 2020-12-30 2021-04-30 佛山科学技术学院 一种水质异常检测方法及电子设备
CN115882448A (zh) * 2022-11-15 2023-03-31 国网上海能源互联网研究院有限公司 基于局部离群因子检测算法的配网台区线损异常检测方法
CN115964665A (zh) * 2022-12-05 2023-04-14 同济人工智能研究院(苏州)有限公司 基于预测误差的时间序列能耗数据离群点检测方法和系统
CN116647819A (zh) * 2023-07-27 2023-08-25 深圳市中科智联有限公司 基于传感器网络的仪器能耗监测方法及系统
CN116910674A (zh) * 2023-07-13 2023-10-20 北京清控人居环境研究院有限公司 一种基于数据融合检验的水务管理监测方法、装置、设备及介质

Patent Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106241538A (zh) * 2016-09-20 2016-12-21 广州特种机电设备检测研究院 一种基于物联网的电梯能耗在线监测系统
CN106886591A (zh) * 2017-02-21 2017-06-23 华南理工大学 一种基于数据挖掘的智能路灯能耗分析系统
CN108038044A (zh) * 2017-12-26 2018-05-15 北京航空航天大学 一种面向连续被监测对象的异常检测方法
CN111443259A (zh) * 2020-03-30 2020-07-24 国网山东省电力公司德州供电公司 基于局部异常因子检测的有源配电网故障诊断方法及系统
CN111882833A (zh) * 2020-07-21 2020-11-03 华润电力唐山丰润有限公司 基于离群参数的设备故障预警方法、装置、设备及介质
CN112541016A (zh) * 2020-11-26 2021-03-23 南方电网数字电网研究院有限公司 用电异常检测方法、装置、计算机设备和存储介质
CN112733904A (zh) * 2020-12-30 2021-04-30 佛山科学技术学院 一种水质异常检测方法及电子设备
CN115882448A (zh) * 2022-11-15 2023-03-31 国网上海能源互联网研究院有限公司 基于局部离群因子检测算法的配网台区线损异常检测方法
CN115964665A (zh) * 2022-12-05 2023-04-14 同济人工智能研究院(苏州)有限公司 基于预测误差的时间序列能耗数据离群点检测方法和系统
CN116910674A (zh) * 2023-07-13 2023-10-20 北京清控人居环境研究院有限公司 一种基于数据融合检验的水务管理监测方法、装置、设备及介质
CN116647819A (zh) * 2023-07-27 2023-08-25 深圳市中科智联有限公司 基于传感器网络的仪器能耗监测方法及系统

Similar Documents

Publication Publication Date Title
WO2021197364A1 (zh) 一种用于服务的扩缩容的方法及相关设备
CN107704070B (zh) 应用清理方法、装置、存储介质及电子设备
WO2021143155A1 (zh) 模型训练方法及装置
TWI542986B (zh) 管理系統、多核系統和其管理方法
CN105144118A (zh) 应用测试和分析
CN104267874A (zh) 一种调整终端上应用图标布局的方法及终端
CN112187859B (zh) 物联网业务与边缘网络能力动态映射的方法及电子设备
WO2019085754A1 (zh) 应用清理方法、装置、存储介质及电子设备
CN113157422A (zh) 基于深度强化学习的云数据中心集群资源调度方法及装置
CN107977254B (zh) 云数据系统中请求的响应方法和计算机可读存储介质
CN108196482B (zh) 功耗控制方法、装置、存储介质及电子设备
US20210357016A1 (en) Intelligent and predictive optimization of power needs across virtualized environments
Li et al. Cost-aware automatic scaling and workload-aware replica management for edge-cloud environment
JP4485370B2 (ja) 並列計算装置
CN117651256B (zh) 一种基于离群检测的节点能源消耗监测方法及系统
CN112559078B (zh) 一种移动边缘计算服务器分级卸载任务方法及系统
CN107797832B (zh) 应用清理方法、装置、存储介质及电子设备
CN117114623B (zh) 一种园区内监控设备的智慧管理方法及系统
US11243603B2 (en) Power management of an event-based processing system
CN113204429A (zh) 一种数据中心的资源调度方法及系统、调度设备、介质
CN117651256A (zh) 一种基于离群检测的节点能源消耗监测方法及系统
CN108733536A (zh) 监控管理系统及方法
CN105393518A (zh) 分布式缓存控制方法及装置
CN110825212A (zh) 节能调度方法及装置、计算机可存储介质
CN116361703A (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
GR01 Patent grant