发明名称 基于隐马尔可夫的远程医疗平台上带宽的高可靠实时调度
摘要 本发明涉及远程医疗系统资源分配领域,尤其是涉及一种基于隐马尔科夫的远程医疗平台上带宽的高可靠实时调度方法。可靠和高效的云端虚拟机资源调度能够保证远程医疗系统实施救助的效率。目前的自适应调度方法对于紧急或者普通的情况不能提供高精度的辨识。本发明在典型的远程医疗系统架构的基础上,提出了一个主节点的概念,用以统计储存和传输的效率。同时提出了一个新的方法来预测和分配远程医疗系统环境中虚拟机的带宽。这个方法能够通过收集历史的带宽负载信息来动态调节隐马尔可夫模型中的各个参数。在预测了虚拟机未来的带宽消耗之后,使用一个高性能的调度方法来分配每个虚拟机的带宽。实验结果表明该方法提供了高精度的预测,使带宽分配模块能够在爆发性需求来临之前进行正确的决策。
申请公布号 CN104202352B 申请公布日期 2017.04.26
申请号 CN201410325828.4 申请日期 2014.07.08
申请人 四川大学 发明人 郭兵;沈艳;王继禾;陈辉;李君科;李德光;陈英超;马群;黄勇
分类号 H04L29/08(2006.01)I 主分类号 H04L29/08(2006.01)I
代理机构 代理人
主权项 一种基于隐马尔科夫的远程医疗平台上带宽的高可靠实时调度方法,其特征在于该方法的步骤如下:1)基于主节点协议实现在分布式数据中心中传递PHR(Personal Health Record)●数据请求过程:当开始了对病人的服务后,RN(Request Node)使用一个映射函数来找到对应的PN(Primary Node),然后发送PHR的ID给PN;●响应过程:PN收到消息之后,将ID哈希映射到一个表中,PN计算出一个关于云端任务分布概率的矩阵,然后将矩阵发回RN,RN通过矩阵选择SN(Server Node),PN发一个响应消息给RN,一个分配消息给SN;●数据传送过程:RN收到概率矩阵之后,它选择最合适的数据中心(DC)作SN,因此来自于BSN(Body Sensor Network)的实时生理信号通过R N—&gt;S N—&gt;hospital server路径传输;2)带宽测量方法的建立使用q<sub>i,j</sub>来表示RN<sub>i</sub>到PN<sub>j</sub>的请求,使用矩阵Q<sub>NXN</sub>来描述系统中请求发送的概率,使用矩阵P<sub>NXN</sub>来表示PN和SN之间的联系,其中的项P<sub>j,k</sub>表示了PN<sub>j</sub>在SN<sub>k</sub>上找到PHR副本的概率,使用REQ<sub>i,j</sub>来表示管理节点i发送请求到DC节点j的随机事件,FOUND<sub>j,k</sub>表示节点j在节点k上找到了所需数据,这两个事件在统计上互相独立:P<sub>r</sub>(REQ<sub>i,j</sub>∩FOUND<sub>j,k</sub>)=Pr(REQ<sub>i,j</sub>)Pr(FOUND<sub>j,k</sub>)  (1)最终目标是传送实时生理信号从RN<sub>i</sub>到SN<sub>k</sub>,这个事件的概率,称为TRANS<sub>i,k</sub>:<maths num="0001"><math><![CDATA[<mrow><mi>Pr</mi><mrow><mo>(</mo><msub><mi>TRANS</mi><mrow><mi>i</mi><mo>,</mo><mi>k</mi></mrow></msub><mo>)</mo></mrow><mo>=</mo><munderover><mo>&Sigma;</mo><mrow><mi>j</mi><mo>=</mo><mn>0</mn></mrow><mrow><mi>N</mi><mo>-</mo><mn>1</mn></mrow></munderover><mi>Pr</mi><mrow><mo>(</mo><mi>R</mi><mi>E</mi><mi>Q</mi><mi>i</mi><mo>,</mo><mi>j</mi><mo>)</mo></mrow><mi>Pr</mi><mrow><mo>(</mo><mi>F</mi><mi>O</mi><mi>U</mi><mi>N</mi><mi>D</mi><mi>j</mi><mo>,</mo><mi>k</mi><mo>)</mo></mrow><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>2</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0001238944310000011.GIF" wi="1854" he="133" /></maths>使用矩阵W<sub>NXN</sub>来表示系统传输的分布概率,W=QP  (3)元素w<sub>i,k</sub>表示RN<sub>i</sub>到SN<sub>k</sub>的传输概率;3)基于隐马尔可夫模型(HMM)的宽带预测方法定义激励源为自适应的HMM,通过分析历史的带宽使用调整参数来预测将来的带宽消耗;目标函数和上下文中用到的参数和变量定义如下:隐藏状态集合H={u,d,k}用来衡量带宽消耗结果,h<sub>t</sub>∈H表示在t时刻的隐藏状态,h<sub>t</sub>=u意味着在t时刻带宽消耗增加,系统需要分配更多的带宽,h<sub>t</sub>=d表示在t时刻带宽消耗较少,需回收一些带宽,h<sub>t</sub>=k表示系统处于稳定状态;定义一个观察状态集合O={U,D,K},o<sub>t</sub>∈O表示在t时刻的观察值,o<sub>t</sub>∈U表示预测隐藏状态为u,D和K同上,作为普通的马尔可夫链,隐藏状态从一个状态转移到另一个状态,使用A=(a<sub>u,u</sub>,a<sub>u,d</sub>,a<sub>u,k</sub>;a<sub>d,u</sub>,a<sub>d,d</sub>,a<sub>d,k</sub>;a<sub>k,u</sub>,a<sub>k,d</sub>,a<sub>k,k</sub>)来表示u,d,k状态之间的转移的矩阵,B=(b<sub>u,U</sub>,b<sub>u,D</sub>,b<sub>u,K</sub>;b<sub>d,U</sub>,b<sub>d,D</sub>,b<sub>d,K</sub>;b<sub>k,U</sub>,b<sub>k,D</sub>,b<sub>k,K</sub>)是观测矩阵;同时定义前向变量α<sub>t</sub>(i)和反向变量β<sub>t</sub>(i)α<sub>t</sub>(i)=P[ο<sub>1</sub>ο<sub>2</sub>...o<sub>t</sub>,h<sub>t</sub>=Hi|(A,B,π)]β<sub>t</sub>(i)=P[ο<sub>t+1</sub>ο<sub>t+2</sub>...o<sub>T</sub>|h<sub>t</sub>=Hi|(A,B,π)]  (4)H<sub>i</sub>∈H在本方法中还用了另外两个变量:ξ<sub>t</sub>(i,j)和γ<sub>t</sub>(i),ξ<sub>t</sub>(i,j)表示在模型(A,B,π)以及观测序列ο<sub>1</sub>ο<sub>2</sub>...o<sub>t</sub>的条件下,在t时刻处于H<sub>i</sub>以及在t+1时刻处于H<sub>j</sub>的概率,γ<sub>t</sub>(i)表示在t时刻处于H<sub>i</sub>的概率,定义如下:ξ<sub>t</sub>(i,j)=P[h<sub>t</sub>=H<sub>i</sub>,h<sub>t+1</sub>=H<sub>j</sub>|ο<sub>1</sub>ο<sub>2</sub>...o<sub>T</sub>,(A,B,π)]  (5)γ<sub>t</sub>(i)=P[h<sub>t</sub>=H<sub>i</sub>|ο<sub>1</sub>ο<sub>2</sub>...o<sub>T</sub>,(A,B,π)]在系统中,历史带宽消耗(u,d,k)的序列被作为隐藏状态,对应的预测结果(U,D,K)被作为观测状态,长度为T,方法计算了变量α<sub>t</sub>(i)和β<sub>t</sub>(i),并在此基础上计算ξ<sub>t</sub>(i,j)和γ<sub>t</sub>(i),新的HMM参数可以通过ξ<sub>t</sub>(i,j)和γ<sub>t</sub>(i)获得,选择模型参数来预测T+1时刻的隐藏和观测状态;方法第一步初始化所有的HMM参数为1/3,因为总共存在3种状态,第二步和第三步递归的计算了前向和反向变量,第四步对时间(t,t+1)的状态计算ξ,分子为P(h<sub>t</sub>=H<sub>i</sub>,h<sub>t+1</sub>=H<sub>j</sub>,O|(A,B,π)),分母为P(O|(A,B,π)),第五步通过把所有的ξ<sub>t</sub>(i,j)对于j的求和得到γ<sub>t</sub>(i),第六步到第八步则是用于调整HMM参数的操作,新参数为(A,′B′,π′),使用γ<sub>1</sub>(t)来表示在初始时刻隐藏状态为H<sub>i</sub>的期望值,第七步表示从隐藏状态H<sub>i</sub>到H<sub>j</sub>的转移概率,第八步的公式模型处在隐藏状态H<sub>j</sub>时观察符号为O<sub>k</sub>的概率,第九步预测T+1时刻可能性最高的隐藏和观察状态;数据:隐藏序列h<sub>1</sub>h<sub>2</sub>...h<sub>t</sub>,观测序列ο<sub>1</sub>ο<sub>2</sub>...o<sub>t</sub>结果:隐藏序列h<sub>1</sub>h<sub>2</sub>...h<sub>t</sub>和观测序列ο<sub>1</sub>ο<sub>2</sub>...o<sub>t</sub>在T+1时刻的预测第一步:初始化A<sub>0</sub>,B<sub>0</sub>,πa<sub>i,j</sub>=1/3,b<sub>i,j</sub>=1/3,π<sub>i</sub>=1/3第二步:计算向前变量αα<sub>1</sub>(i)=π<sub>i</sub>b<sub>i</sub>,o<sub>1</sub>,i=1,2,3;α<sub>t+1</sub>(j)=b<sub>j,ot+1</sub>·∑<sub>i=1,2,3</sub>α<sub>t</sub>(i)a<sub>i,j</sub>,t=2,3,…,T,j=1,2,3第三步:计算向后变量ββ<sub>T</sub>(i)=1,i=1,2,3;β<sub>t</sub>(i)=∑<sub>i=1,2,3</sub>a<sub>i,j</sub>·b<sub>j,ot+1</sub>·β<sub>t+1</sub>(j),t=T‑1,T‑2,…1,i=1,2,3第四步:基于α,β对时间(t,t+1)的状态计算ξ<maths num="0002"><math><![CDATA[<mrow><msub><mi>&xi;</mi><mrow><mi>t</mi><mrow><mo>(</mo><mi>i</mi><mo>,</mo><mi>j</mi><mo>)</mo></mrow></mrow></msub><mo>=</mo><mfrac><mrow><msub><mi>&alpha;</mi><mrow><mi>t</mi><mrow><mo>(</mo><mi>i</mi><mo>)</mo></mrow></mrow></msub><mo>&CenterDot;</mo><msub><mi>a</mi><mrow><mi>i</mi><mo>,</mo><mi>j</mi></mrow></msub><mo>&CenterDot;</mo><msub><mi>b</mi><mrow><mi>j</mi><mo>,</mo><msub><mi>o</mi><mrow><mi>t</mi><mo>+</mo><mn>1</mn></mrow></msub></mrow></msub><mo>&CenterDot;</mo><msub><mi>&beta;</mi><mrow><mi>t</mi><mo>+</mo><mn>1</mn></mrow></msub><mrow><mo>(</mo><mi>j</mi><mo>)</mo></mrow></mrow><mrow><msub><mi>&Sigma;</mi><mrow><mi>i</mi><mo>=</mo><mn>1</mn><mo>,</mo><mn>2</mn><mo>,</mo><mn>3</mn></mrow></msub><msub><mi>&Sigma;</mi><mrow><mi>i</mi><mo>=</mo><mn>1</mn><mo>,</mo><mn>2</mn><mo>,</mo><mn>3</mn></mrow></msub><msub><mi>&alpha;</mi><mrow><mi>t</mi><mrow><mo>(</mo><mi>i</mi><mo>)</mo></mrow></mrow></msub><mo>&CenterDot;</mo><msub><mi>a</mi><mrow><mi>i</mi><mo>,</mo><mi>j</mi></mrow></msub><mo>&CenterDot;</mo><msub><mi>b</mi><mrow><mi>j</mi><mo>,</mo><msub><mi>o</mi><mrow><mi>t</mi><mo>+</mo><mn>1</mn></mrow></msub></mrow></msub><mo>&CenterDot;</mo><msub><mi>&beta;</mi><mrow><mi>t</mi><mo>+</mo><mn>1</mn></mrow></msub><mrow><mo>(</mo><mi>j</mi><mo>)</mo></mrow></mrow></mfrac></mrow>]]></math><img file="FDA0001238944310000031.GIF" wi="925" he="143" /></maths>第五步:基于ξ计算出γγ<sub>t(i)</sub>=∑<sub>i=1,2,3</sub>ξ<sub>t</sub>(i,j),t=1,2,…,T,i=1,2,3第六步:生成一个新初始状态的数组π′π′=γ<sub>1</sub>(i),i=1,2,3第七步:生成一个新矩阵A′<maths num="0003"><math><![CDATA[<mrow><msub><msup><mi>a</mi><mo>&prime;</mo></msup><mrow><mi>i</mi><mo>,</mo><mi>j</mi></mrow></msub><mo>=</mo><mfrac><mrow><msubsup><mi>&Sigma;</mi><mrow><mi>t</mi><mo>=</mo><mn>1</mn></mrow><mi>T</mi></msubsup><msub><mi>&xi;</mi><mrow><mi>t</mi><mrow><mo>(</mo><mi>i</mi><mo>,</mo><mi>j</mi><mo>)</mo></mrow></mrow></msub></mrow><mrow><msubsup><mi>&Sigma;</mi><mrow><mi>t</mi><mo>=</mo><mn>1</mn></mrow><mi>T</mi></msubsup><msub><mi>&gamma;</mi><mrow><mi>t</mi><mrow><mo>(</mo><mi>i</mi><mo>)</mo></mrow></mrow></msub></mrow></mfrac><mo>,</mo><mi>i</mi><mo>,</mo><mi>j</mi><mo>=</mo><mn>1</mn><mo>,</mo><mn>2</mn><mo>,</mo><mn>3</mn></mrow>]]></math><img file="FDA0001238944310000032.GIF" wi="683" he="167" /></maths>第八步:生成新的预测矩阵B′<maths num="0004"><math><![CDATA[<mrow><msub><msup><mi>b</mi><mo>&prime;</mo></msup><mrow><mi>j</mi><mo>,</mo><mi>k</mi></mrow></msub><mo>=</mo><mfrac><mrow><msubsup><mi>&Sigma;</mi><mrow><mi>t</mi><mo>=</mo><mn>1</mn><mo>,</mo><msub><mi>o</mi><mi>t</mi></msub><mo>=</mo><msub><mi>O</mi><mi>k</mi></msub></mrow><mi>T</mi></msubsup><msub><mi>&gamma;</mi><mrow><mi>t</mi><mrow><mo>(</mo><mi>j</mi><mo>)</mo></mrow></mrow></msub></mrow><mrow><msubsup><mi>&Sigma;</mi><mrow><mi>t</mi><mo>=</mo><mn>1</mn></mrow><mi>T</mi></msubsup><msub><mi>&gamma;</mi><mrow><mi>t</mi><mrow><mo>(</mo><mi>j</mi><mo>)</mo></mrow></mrow></msub></mrow></mfrac><mo>,</mo><mi>j</mi><mo>=</mo><mn>1</mn><mo>,</mo><mn>2</mn><mo>,</mo><mn>3</mn><mo>,</mo><msub><mi>O</mi><mi>k</mi></msub><mo>&Element;</mo><mi>O</mi></mrow>]]></math><img file="FDA0001238944310000033.GIF" wi="876" he="175" /></maths>第九步:通过a′<sub>i,j</sub>预测下一个隐藏序列h<sub>T+1</sub>,通过b′<sub>j,k</sub>预测下一个观察状态ο<sub>T+1</sub>,返回h<sub>T+1</sub>和ο<sub>T+1</sub>。
地址 610065 四川省成都市武侯区一环路南一段24号