一种基于马尔科夫决策过程的高能效任务调度算法

文档序号:1504224 发布日期:2020-02-07 浏览:17次 >En<

阅读说明:本技术 一种基于马尔科夫决策过程的高能效任务调度算法 (High-energy-efficiency task scheduling algorithm based on Markov decision process ) 是由 龙浩 霍娜 于 2019-08-30 设计创作,主要内容包括:一种基于马尔科夫决策过程的高能效任务调度算法,基于服务器和客户端两层架构构建多任务移动群智感知系统;根据公式获得智能手机当前状态的奖励值Λ(S&lt;Sub&gt;t&lt;/Sub&gt;,Task&lt;Sub&gt;t&lt;/Sub&gt;);根据智能手机的当前状态S&lt;Sub&gt;t&lt;/Sub&gt;,并依据公式计算下一个状态S&lt;Sub&gt;t+1&lt;/Sub&gt;,然后再获得智能手机下一个状态的奖励值;依次获得智能手机在每个状态下的奖励值,然后组成奖励矩阵R&lt;Sub&gt;t&lt;/Sub&gt;;根据公式计算在任意时刻t,当前手机状态S&lt;Sub&gt;t&lt;/Sub&gt;到下一时刻的手机状态S&lt;Sub&gt;t+1&lt;/Sub&gt;的预测概率矩阵P&lt;Sub&gt;t&lt;/Sub&gt;;通过公式算出任务调度的最小传感器能耗;构建MDP公式,并进行迭代计算,获得下一时刻的传感器能耗;获取最佳任务调度时间序列。该算法能使得最大化感知精度和最小化能量消耗成本达到平衡,能有助于智能手机在感知过程中减少电量的消耗。(An energy-efficient task scheduling algorithm based on a Markov decision process is characterized in that a multi-task mobile crowd sensing system is constructed based on two layers of architectures of a server and a client; obtaining the reward value Lambda (S) of the current state of the smart phone according to a formula t ,Task t ) (ii) a According to the current state S of the smart phone t And calculating the next state S according to the formula t&#43;1 Then obtaining the reward value of the next state of the smart phone; obtaining the reward values of the smart phone in each state in sequence, and then forming a reward matrix R t (ii) a Calculating the current state S of the mobile phone at any time t according to a formula t Handset state S to the next moment t&#43;1 Is predicted by the probability matrix P t (ii) a Calculating the minimum sensor energy consumption of task scheduling through a formula; constructing an MDP formula, and performing iterative calculation to obtain the energy consumption of the sensor at the next moment; and acquiring the optimal task scheduling time sequence. The algorithm can makeThe maximum sensing precision and the minimum energy consumption cost are balanced, and the smart phone can reduce the consumption of electric quantity in the sensing process.)

一种基于马尔科夫决策过程的高能效任务调度算法

技术领域

本发明涉及一种基于马尔科夫决策过程的高能效任务调度算法。

背景技术

智能手机已经成为人们日常生活中必不可缺少的一部分。智能手机都配备了各种嵌入式传感器,包括麦克风、摄像头、GPS、加速度计、陀螺仪、WiFi/3G/4G接口等。嵌入了传感器的智能手机可以在空气监测、社交网络、医疗保健、交通运输和安全等多个领域提供应用和感知服务。群智感知系统中,任务发布者通过感知平台将感知任务采用竞标的方式分配给任务参与者。收到感知任务后,参与者通过智能手机从一个或多个传感器收集感知数据,并将感知数据发送给感知平台,这是一个支持多种传感应用的多任务的系统。一方面,传感器任务被分派到许多智能手机上收集数据;另一方面,智能手机承担着为多个应用程序生成的许多不同的感知任务

智能手机传感器收集数据是非常耗能的,如果传感器的活动没有以节能的方式科学管理,智能手机有限的电量短时间内便很会耗尽。智能手机传感器收集数据过程中,需要智能手机主动执行扫描,以获得一些传感器的(如WIFI接口)状态。同时,它还需要产生一个线程来获取一些其他传感器(如加速度计)的读数。此外,一些传感器(如GPS)是持续消耗电量的,如果不进行合理地控制,会造成智能手机电量的快速消耗,这样不得于更多用户的参与。

发明内容

针对上述现有技术存在的问题,本发明提供一种基于马尔科夫决策过程的高能效任务调度算法,该算法能使得最大化感知精度和最小化能量消耗成本达到平衡,以实现最小能量消耗条件下的最大感知精度的任务调度,能有助于智能手机在感知过程中减少电量的消耗。

为了实现上述目的,本发明提供一种基于马尔科夫决策过程的高能效任务调度算法,具体包括以下步骤:

S1:构建系统模型;

基于服务器和客户端两层架构构建多任务移动群智感知系统,其中,客户端采用智能手机,感知系统的感知任务Taskt如公式(1)所示;

Taskt=(j,Jj,St,Qt) (1);

式中,j代表任务的编号;

Jj表示多传感器任务j中传感器编号的集合;

St表示智能手机在某一t时刻当前的状态,St=(Et,Lt,Rt),Et∈{0,1,2,…,N}表示在t时刻智能手机的剩余电量,Lt∈{0,1}表示在某一t时刻智能手机的感知状态,其中0表示运行了耗电量较低的应用,1表示系统运行了关键且耗电量大的应用,Rt∈{0,1}表示在某一t时刻智能手机的充电状态,其中0表示没有连接充电电源,1表示连接了充电电源;

Qt表示在某一t时刻感知数据的质量;

S2:根据公式(2)获得智能手机当前状态的奖励值Λ(St,Taskt);根据智能手机的当前状态St,并依据公式(3)计算下一个状态St+1,然后再获得智能手机下一个状态的奖励值;依次获得智能手机在每个状态下的奖励值,然后组成奖励矩阵Rt

Figure BDA0002186370370000021

式中,λt表示感知任务的平台奖励;

ph为下一个时间间隔智能手机执行重负载的概率,0.5<ph<1;

pl为在下一个时间间隔智能手机执行一般负载的概率,0.5<pl<1;

qr为在下一个时间间隔智能手机重新充电的概率,0.5<qr<1;

St+1=(Et+1,Lt+1,Rt+1) (3);

式中,Et+1=Et+dt-et,dt是重新充电的电量,dt=Rtqr+(1-Rt)(1-qr),et是感知过程耗费的电量,et=e1+e2+e3,e1表示智能手机保持活动状态所需的最低电量,e2表示由感知过程消耗的电量,e3表示智能手机自身系统运行消耗的电量;

Lt+1=Ltph+(1-Lt)(1-pl);

S3:根据公式(4)计算在任意时刻t,当前手机状态St到下一时刻的手机状态St+1的预测概率矩阵Pt

Figure BDA0002186370370000031

S4:通过公式(5)算出在所有任务达到平台要求的感知质量情况下t时刻的最小化总的传感器能耗Vt(S);

Figure BDA0002186370370000032

式中,Vπ(y)=Vt(S);

wj为从传感器j读取数据的能耗;

N表示总的时间点数量;

M表示总的传感器数量;

T′={t′ij}表示一组任务在时间点的调度序列;

ΓC(tij,t′ij)为感知动作的准确性,根据公式

Figure BDA0002186370370000033

计算,σ为传感器的读数;

S5:基于奖励矩阵Rt和预测概率矩阵Pt,通过值迭代函数构建MDP公式,针对任意平稳策略π=(π0,π1,…),状态值函数在状态x∈X满足贝尔曼方程根据公式(6)中的值迭代函数进行迭代计算,获得t+1时刻的传感器能耗Vt+1(S);

Vπ(x)=R(x,π(x))+γ∑yP(y|x,π(x))Vπ(y) (6);

式中,Vπ(x)=Vt+1(S);

γ为折现系数;

S6:根据公式(7)获得最优任务调度序列;

maxS|Vt+1(S)-Vt(S)|<∈ (7);

式中,∈为收敛值;

S为智能手机所有时刻的状态的集合。

该方法不仅定义了当前感知任务的状态,包括当前手机的状态和感知精度要求,并定义与感知能耗相关的奖励值,为马尔科夫决策计算感知任务的下一个状态提供计算依据。同时,还通过构建感知精度模型,在满足系统要求的感知精度条件下,通过迭代计算预测概率矩阵和奖励矩阵,获得最优任务调度序列,实现了能量消耗和感知精度的最优平衡。相对于现有的节能算法,本算法在节能成本和计算复杂度都低于现有算法,平均节省能量75%以上。本发明应用MDP根据智能手机的电流负载、剩余能量和充电概率这三个因素提出了一种有效的感知任务调度策略。综合考虑了智能手机设备的当前状况和感知精度,计算出最佳任务调度时间序列,能通过任务调度使感知任务能量消耗和感知精度获得最优的平衡,从而实现感知过程的有效的节能。本发明解决了一般移动群智感知系统中的任务调度问题,便于合理规划调度任务,可以调度不同的传感任务分配给智能手机的不同传感器。

附图说明

图1是本发明的算法、Baseline算法和Opt-MESS算法同任务数量下智能手机的耗能示意图;

图2是本发明的算法、Baseline算法和Opt-MESS算法不同任务持续时间下智能手机能耗;

图3是本发明的算法、Baseline算法和Opt-MESS算法不同任务感知精度下智能手机耗能;

图4是本发明的算法、Baseline算法和Opt-MESS算法不同任务感知周期下智能手机能耗。

具体实施方式

一种基于马尔科夫决策过程的高能效任务调度算法,具体包括以下步骤:

S1:构建系统模型;

基于服务器和客户端两层架构构建多任务移动群智感知系统,客户端通过网络与服务器连接,客户端定期检测并汇总所需数据,并将汇兑后的数据发送给服务器;其中,服务器为群智感知服务器,客户端采用智能手机,由于智能手机操作系统采用时分多路复用,其在一个间隔的运行的负载是相同的,因此,在计算过程中采用离散时间模型,以单位长度为间隔为计算基础。

感知系统的感知任务Taskt如公式(1)所示;

Taskt=(j,Jj,St,Qt) (1);

式中,j代表任务的编号;

Jj表示多传感器任务j中传感器编号的集合;

St表示智能手机在某一t时刻当前的状态,St=(Et,Lt,Rt),Et∈{0,1,2,…,N}表示在t时刻智能手机的剩余电量,Lt∈{0,1}表示在某一t时刻智能手机的感知状态,其中0表示运行了耗电量较低的应用,1表示系统运行了关键且耗电量大的应用,Rt∈{0,1}表示在某一t时刻智能手机的充电状态,其中0表示没有连接充电电源,1表示连接了充电电源;

Qt表示在某一t时刻感知数据的质量;

S2:根据公式(2)获得智能手机当前状态的奖励值Λ(St,Taskt);智能手机包含两个状态进程,即当前时刻状态St和下一个时刻状态St+1,两个状态进程可用于关联智能手机当前的操作负载,根据智能手机的当前状态St,并依据公式(3)可计算下一个状态St+1,然后再获得智能手机下一个状态的奖励值;依次获得智能手机在每个状态下的奖励值,然后组成奖励矩阵Rt

Figure BDA0002186370370000051

公式(2)包含4种情况,表示的是参与者获得的奖励由平台的奖励和参与者耗电成本的差值。

式中,λt表示感知任务的平台奖励;

ph为下一个时间间隔智能手机执行重负载的概率,0.5<ph<1;对应地执行非负载的概率为1-ph

pl为在下一个时间间隔智能手机执行一般负载的概率,0.5<pl<1;对就地执行非负载的概率为1-pl

qr为在下一个时间间隔智能手机重新充电的概率,0.5<qr<1;对应地不能重新充电的概率为1-qr

St+1=(Et+1,Lt+1,Rt+1) (3);

式中,Et+1=Et+dt-et,dt是重新充电的电量,dt=Rtqr+(1-Rt)(1-qr),et是感知过程耗费的电量,et=e1+e2+e3,e1表示智能手机保持活动状态所需的最低电量,e2表示由感知过程消耗的电量,e3表示智能手机自身系统运行消耗的电量;

Lt+1=Ltph+(1-Lt)(1-pl);

Rt+1表示Rt的下一个状态;

S3:根据公式(4)计算在任意时刻t,当前手机状态St到下一时刻的手机状态St+1的预测概率矩阵Pt

Figure BDA0002186370370000061

S4:通过公式(5)算出在所有任务达到平台要求的感知质量情况下t时刻的最小化总的传感器能耗Vt(S);

式中,Vπ(y)=Vt(S);

wj为从传感器j读取数据的能耗;

N表示总的时间点数量;

M表示总的传感器数量;

T′={t′ij}表示一组任务在时间点的调度序列;

ΓC(tij,t′ij)为感知动作的准确性,根据公式

Figure BDA0002186370370000063

计算,σ为传感器的读数;

S5:基于奖励矩阵Rt和预测概率矩阵Pt,通过值迭代函数构建MDP公式,针对任意平稳策略π=(π0,π1,…),状态值函数在状态x∈X满足贝尔曼方程

Figure BDA0002186370370000064

根据公式(6)中的值迭代函数进行迭代计算,获得t+1时刻的传感器能耗Vt+1(S);

Vπ(x)=R(x,π(x))+γ∑yP(y|x,π(x))Vπ(y) (6);

式中,Vπ(x)=Vt+1(S);

γ为折现系数;

S6:根据公式(7)获得最优任务调度序列;

maxs|Vt+1(S)-Vt(S)|<∈ (7);

式中,∈为收敛值;

S为智能手机所有时刻的状态的集合。

为了节约能源,传感器感知可不需要精确地在系统要求的时间内进行,因为一些传感器(如光、温度等)的读数会随着时间的推移而缓慢地变化。它们可以在与请求的条件稍有不同的时间的瞬间进行收集。如果智能手机被要求在t时刻从传感器收集读数,但数据是在t′时刻收集的,这个感知动作的准确性ΓC(t,t′)∈[0,1]。当然,t′越接近t,ΓC(t,t′)的值就越大,感知数据也就越准确。

Figure BDA0002186370370000071

的取值范围在0到1之间,其为通用模型,以便于可以通过它来估计感知精度。对于感知任务Taskt在t′时刻采集感知数据,其ΓC(t,t′)≥Qt,该任务便达到了感知平台的要求。

为了实现和检查策略的有效性,设计一个基于android的群智感知应用程序,并与广泛使用的Baseline方法和Opt-MESS方法进行性能比较,以验证本算法的有效性。Baseline方法安排传感器在要求的时间内准确地收集读数,Opt-MESS方法要求传感器在线性规划和贪婪计算后的时间点收集数据,本算法由于考虑节能,在保证感知精度的某一个时间点收集收据。在仿真中,通过随机生成传感器任务在不同的时间点收集数据,并计算传感器功耗作为感知任务消耗的能耗,因此能耗作为性能评价的主要指标。该过程考虑6个常用的嵌入传感器,包括GPS,光传感器,加速度计,陀螺仪,WiFi和4G。功耗的计算使用从谷歌Nexus 4智能手机的功率分布图中获得的上述传感器功耗的真实数据,将其乘以估计的持续时间得到功耗。然后,设置感知数据收集时间点,将感知调度周期设置为12小时(比如可以从早上8点到晚上8点),平均分为2分钟,能获得一个均匀等间隔的时间序列,可以根据此序列收集感知数据。最后随机生成传感器任务,从6个传感器中随机选择传感器集。每个任务的持续时间从1小时到6小时变化,从[1,6]中随机选择开始时间,使其结束时间不超过12小时。精度要求从0.5到1进行变换,任务数量从5到30改变,步骤大小为5。我们通过改变任务的数量、任务的持续时间和任务感知精度的要求,对提出的算法进行了全面的性能评估。所有的实验结果至少100轮后取平均值。

从图1中可以观察到,无论使用哪种算法,能量消耗都是随着任务数量的单调增加而增加的。这是因为,感知任务越多,感知所需的时间瞬间越多,无论进行何种优化,都会导致更高的能耗。从图1中可以看出,与Baseline方法相比,本算法的手机能耗平均显著降低75.8%。与目前最新提出的Opt-MESS方法相比,能耗平均降低18.4%。此外,当感知任务数量变得越来越大时,能源节约变得越来越重要。从图中可以观察出本算法能在移动群智感知系统中根据任务的需求有策略地调度任务收集数据,可以在牺牲较少感知精度的情况下实现显著的节能。

从图2中可以观察到随着任务持续时间的增加,手机的能耗呈单调增长。感知任务的持续的时间越长收集的数据就越多,消耗的能量也会增加。本算法与Baseline方法相比节能效果明显,也优于Opt-MESS方法。

从图3中可以观察到能量消耗和任务感知精度之间的权衡:无论使用哪种算法,能源消耗都随着感知精度的需求单调增长,但增长非常缓慢。增加感知精度需求无疑会增加能源消耗,因为需要在更多的时刻收集更多的读数来满足需求。无论如何,将感知精度需求设置为相对合适的值(比如0.8或0.9)才能取得最佳的能耗,因为这样做不会导致过度的能耗增加。当所有任务的感知精度需求为1时,三种算法的能耗都非常接近了。

由图4可知,本算法相比Baseline方法和Opt-MESS方法平均节能75.2%和17.3%。此外,当传感周期较短时,节能效果更显著。这是因为在较短的感知时间内,感知任务更有可能在相同或相似的时间内请求普通传感器的数据。因此,本发明中的算法可以实现更好的节能。

12页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:多核处理器控制方法、装置、电子设备及存储介质

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!