基于城市交通的隐私保护压缩感知实时交通监测方法与流程

文档序号:22554342发布日期:2020-10-17 02:34阅读:159来源:国知局
基于城市交通的隐私保护压缩感知实时交通监测方法与流程

本发明涉及城市的交通估计领域,具体涉及一种基于隐私保护压缩感知的城市交通状态实时监测方法。



背景技术:

近年来,随着中国城市化的进程加快,行驶在城市道路上的车辆越来越多,这使得交通拥堵的问题日渐突出。长时间的交通拥堵不仅造成时间和能源的严重浪费,一定程度上影响了城市经济效率,同时也增加了交通事故发生的概率。相比较于城市道路的扩建速度,车辆的数量增长速度显然更为迅速,这意味着城市交通拥堵问题将会愈发严重。近几年,人们已广泛意识到城市交通实时监控的重要性,令驾驶人员时刻了解道路的拥堵状况可以有效缓解交通拥堵问题。传统的交通拥堵估算方法都是以静态交通传感器为基础的,如闭路摄像机和感应线圈检测器,然而这些传统方法的部署和维护成本过高,不适合大规模使用。随着车载传感器性能的不断提高,采集车辆数据已成为获取交通拥堵状况的重要手段,如google和baidu地图就使用了这种方式。然而,由于道路众多,获取交通拥堵状况需要收集和分析大量的车辆数据,这就对数据存储和数据处理提出了新的要求。因此,我们迫切希望找到一种既能提供足够的数据存储又具有强大的数据处理能力的设备。

通过分析车辆数据来实现交通监控需要将车辆数据外包到云上,然而这些数据包含一些敏感信息,如gps位置、报告时间和车速等,我们需要确保外包数据在未经授权的情况下不会发生泄露。如果攻击者连续截获到车速和gps位置等数据,则可以通过挖掘技术预测驾驶员的行驶路线。不仅如此,gps位置信息还会暴露驾驶员经常去的地方,比如家、办公室和餐馆。此外,还可以通过比较起始位置和从里程表收集数据来预测驾驶员的目的地。因此,保护数据的隐私是极其重要的。数据加密的算法有同态加密(he)算法和安全多方计算(mpc)。然而,即使云中存储的外包数据是加密的,若想在不损害原始数据隐私性的前提下加快数据加密算法的运算效率仍然是一个难题。此外,随着城市道路数量和车辆数量的急剧增加,收集所有道路的数据并不现实,因为这会增加交通监控的时间延迟,我们有必要用少量数据估算整个道路网络的交通拥堵状况。



技术实现要素:

有鉴于此,本发明的目的在于提供一种基于隐私保护压缩感知的城市交通状态实时监测方法,能够显著地增强车辆数据隐私保护的能力,加快了数据处理速度且数据处理准确无误,降低了为实现城市交通估计所需的能耗,降低了交通估计所需时间。

为实现上述目的,本发明采用如下技术方案:

一种基于隐私保护压缩感知的城市交通状态实时监测方法,包括以下步骤:

步骤s1:将处于隐私保护下的车辆数据分为两部分发送给两个不同的路侧单元进行预处理;

步骤s2:两个不同的路侧单元将预处理后的车辆数据分别外包给两个云平台,

根据最终期望得到的运算结果,并利用两个云平台之间的交互运算设计出数据加密执行协议对数据加密;

步骤s3:导航服务提供商从云平台接收加密数据并解密,再通过压缩感知技术实现对城市交通状态的估计。

进一步的,所述步骤s1具体为:

步骤s11:设一个城市有n条道路,t时间段内某一路段j上所有车辆上传的所有数据有m条,每条数据的格式为u=[t,v,lat,lon],其中t为上传时间,v为车辆瞬时速度,lat与lon为车辆的经纬度;

步骤s12:系统将上报数据构建为向量uj=[u(j,1),u(j,2),…,u(j,m)]t和矩阵m=[u1,u2,…,un],如下:

接着将矩阵m随机地分成两部分,即m′和m″,如下:

其中u(i,j)代表第jth个路段报告的第ith个数据集,而u′(i,j)和u″(i,j)表示u(i,j)的两个随机分量,即u(i,j)=u′(i,j)+u″(i,j);

步骤s13:将两个随机分量,分别发送给不同的路侧单元;

步骤s14:当路侧单元接收到数据u时,对数据进行处理,根据每条数据的瞬时速度构造向量v=[v1,v2,v3,…,vm],再用以下公式计算路段平均速度:

步骤s15:设已知路段的数量为w,则平均速度为v⊥=[v(⊥,1),v(⊥,2),…,v(⊥,w)],接着rsu将其随机划分为两个向量v′⊥=[v′(⊥,1),v′(⊥,2),…,v′(⊥,w)]和v″⊥=[v″(⊥,1),v″(⊥,2),…,v″(⊥,w)],同样的对经纬度进行相同处理;

步骤s16:将n划分得到的向量n′和n″的数据外包给云平台,即将向量n′发送给云平台cpa,将向量n″发送给云平台cpb。

进一步的,所述数据加密执行协议为基于安全两方计算思想的数据加密协议,包括基本安全计算协议和矩阵安全计算协议。

进一步的,所述基本安全计算协议包括安全乘法协议、安全分割协议、安全余弦协议、安全正弦协议、扩展安全余弦协议、反向指数协议、扩展乘法协议和安全反余弦协议。

进一步的,所述矩阵安全计算协议具体为采用矩阵点乘的方法设计的mmul和mdiv扩展安全计算协议,所述mmul和mdiv是在mul和div的基础上,将mul和div中的随机数替换为矩阵。

进一步的,所述基于安全两方计算思想的数据加密协议还融合了压缩感知理论,具体为将压缩感知所需的测量矩阵以及稀疏表示矩阵同样作为车辆数据加密的密钥,然后将其融合在基于安全两方计算思想的数据加密协议的安全协议之中。

进一步的,所述步骤s3具体为:

步骤s31:设一个城市中有n个路段,并且在t′时间间隔(w<<n)内计算w个路段的交通拥堵率,即cpa具有向量c′=[c′1,c′2,…,c′w],cpb具有向量c″=[c″1,c″2,…,c″w];

步骤s32:tps生成随机测量矩阵φ∈w×n,nsp接收分量向量c′,c″,φ,ψ1和ψ2,得到公式c′+c″=φ×(ψ1+ψ2)×c,其中c包含所有路段的交通拥堵率;

步骤s33:nsp通过优化算法得到c,再通过导航应用程序向车辆发送道路的交通状况。

一种基于城市交通的隐私保护压缩感知实时交通监测系统,包括车辆单元、两个路侧单元、两个云平台、第三方服务单元和导航服务单元;

所述车辆单元,用于获取车辆的行驶数据;

所述路侧单元,用于对将车辆的行驶数据进行预处理,并将预处理后的车辆数据分别外包给两个云平台;

所述云平台,用于存储以及对数据进一步处理;

所述第三方服务单元,受各方都信任并同于负责产生所需随机数;

所述导航服务单元,用于从云平台接收密文,估算路段的交通状态,并将估算得出的交通拥堵率传送至车辆。

本发明与现有技术相比具有以下有益效果:

本发明能够显著地增强车辆数据隐私保护的能力,加快了数据处理速度且数据处理准确无误,降低了为实现城市交通估计所需的能耗,降低了交通估计所需时间。

附图说明

图1是本发明一实施例中隐私保护压缩感知系统;

图2是本发明一实施例中隐私保护下的压缩感知数据恢复;

图3是本发明一实施例中计算开销,其中a为车辆与rsu的运行时间,b为云平台和nsp的运行时间;

图4是本发明一实施例中通信开销,其中a为车辆与rsu之间的通信开销,b为rsu与cp之间的通信开销,c为cpa与cpb之间的通信开销,d为cp与nsp之间的通信开销;

图5是本发明一实施例中拥堵率和稀疏表示矩阵的处理过程。

具体实施方式

下面结合附图及实施例对本发明做进一步说明。

请参照图1,本发明提供一种基于城市交通的隐私保护压缩感知实时交通监测系统,包括车辆单元(dvs)、两个路侧单元(rsu)、两个云平台(cpa/cpb)、第三方服务单元(tps)和导航服务单元(nsp)。

本实施例中,基于城市交通的隐私保护压缩感知实时交通监测方法,包括以下步骤:

步骤s1:将处于隐私保护下的车辆数据分为两部分发送给两个不同的路侧单元进行预处理;

1)将车辆数据上传到rsu,并且上传数据时需要保证数据的安全传输,设一个城市有n条道路,t时间段内某一路段j上所有车辆上传的所有数据有m条,每条数据的格式为u=[t,v,lat,lon],其中t为上传时间,v为车辆瞬时速度,lat与lon为车辆的经纬度;

2)系统将上报数据构建为向量uj=[u(j,1),u(j,2),…,u(j,m)]t和矩阵m=[u1,u2,…,un],如下:

接着将矩阵m随机地分成两部分,即m′和m″,如下:

其中u(i,j)代表第jth个路段报告的第ith个数据集,而u′(i,j)和u″(i,j)表示u(i,j)的两个随机分量,即u(i,j)=u′(i,j)+u″(i,j)。然后将这两部分分别发送给不同的rsu。

3)当rsu接收到数据u时,会对数据进行处理,根据每条数据的瞬时速度构造向量v=[v1,v2,v3,…,vm],再用以下公式计算路段平均速度:

设已知路段的数量为w,则平均速度为v⊥=[v(⊥,1),v(⊥,2),…,v(⊥,w)],接着rsu将其随机划分为两个向量v′⊥=[v′(⊥,1),v′(⊥,2),…,v′(⊥,w)]和v″⊥=[v″(⊥,1),v″(⊥,2),…,v″(⊥,w)],同理对经纬度进行处理。

以下为rsu的计算过程:

4)最后系统将n划分得到的向量n′和n″的数据外包给云平台,即将向量n′发送给云平台cpa,将向量n″发送给云平台cpb。

步骤s2:两个不同的路侧单元将预处理后的车辆数据分别外包给两个云平台,

根据最终期望得到的运算结果,并利用两个云平台之间的交互运算设计出数据加密执行协议对数据加密;

步骤s3:导航服务提供商从云平台接收加密数据并解密,再通过压缩感知技术实现对城市交通状态的估计。

在本实施例中,所述数据加密执行协议为基于安全两方计算思想的数据加密协议,包括基本安全计算协议和矩阵安全计算协议。

优选的,所述基本安全计算协议包括安全乘法协议、安全分割协议、安全余弦协议、安全正弦协议、扩展安全余弦协议、反向指数协议、扩展乘法协议和安全反余弦协议。具体为:

(1)安全乘法协议(mul):假设cpa存在一个随机数x∈+,cpb存在一个随机数y∈+;mul的目的是在不泄露中间结果的情况下,得到x·y的值。

执行该协议分为如下四个步骤:

1)tps随机生成数字ra∈+、rb∈+、ka∈+和kb∈+,且ka+kb=ra·rb。然后tps通过与各方的安全通信信道将(ra,ka)发送到cpa,(rb,kb)发送到cpb。

2)cpb开始计算y′=y+rb,并将y′发送给cpa,然后cpa计算x′=x+ra,并将其发送给cpb。

3)cpb产生一个随机数vb,然后进一步计算t=x′·y+(kb-vb),并将其发送给cpa。

4)cpa计算va=t+ka-(ra·y′)。

经过mul协议后,cpa得到va,cpb得到vb,此过程表示为(va:vb)←mul(x:y)。

(2)、安全分割协议(div):假设cpa存在一个随机数x∈+,cpb存在一个随机数y∈+。设计div的目的是在不泄露中间结果的情况下,得到的值。执行该协议分为如下四个步骤:

1)tps随机生成数字ra∈+、rb∈+、ka∈+和kb∈+,且ka+kb=ra·rb。然后tps通过与各方的安全通信信道将(ra,ka)发送到cpa,(rb,kb)发送到cpb。

2)cpa计算x′=x+ra,并将x′发送给cpb,然后cpb同样计算并将y′发送给cpa。

3)cpb产生随机数vb,并计算然后将其发送至cpa。

4)cpa计算va=t+ka-(ra·y′)。

经过div协议后,cpa得到va,cpb得到vb,此过程表示为(va:vb)←div(x:y)。

(3)、安全余弦协议(cos):假设cpa存在一个随机数x∈+,cpb存在一个随机数y∈+。设计cos的目的是在不泄露中间结果的情况下,得到va+vb=cos(x+y)的值。

执行该协议分为如下三个步骤:

1)cpa计算c1=cos(x)和s1=sin(x),cpb计算c2=cos(y)和s2=sin(y)。

2)使用mul协议计算(v′a+v′b)←mul(cos(x):cos(y))和(v″a+v″b)←mul(sin(x):sin(y))。

3)cpa计算va=v′a-v″a,cpb计算vb=v′b-v″b。

经过cos协议后,cpa得到va,cpb得到vb,此过程表示为(va:vb)←cos(x:y)。

(4)、安全正弦协议(sin):假设cpa存在一个随机数x∈+,cpb存在一个随机数y∈+。设计sin的目的是在不泄露中间结果的情况下,得到va+vb=sin(x+y)的值。

执行该协议分为如下三个步骤:

1)cpa计算x′=sin(x)和x″=cos(x),cpb计算y′=sin(y)和y″=cos(y)。

2)使用mul协议计算(v′a:v′b)←mul(x′:y′)和(v″a:v″b)←mul(x″:y″)。

3)cpa计算va=v′a+v″a,cpb计算vb=v′b+v″b。

经过sin协议后,cpa得到va,cpb得到vb,此过程表示为(va:vb)←sin(x:y)。

(5)、扩展安全余弦协议(ecos):假设cpa有(x1,y1),cpb有(x2,y2)。设计ecos的目的是在不泄露中间结果的情况下,得到va+vb=cos(x1+x2)cos(y1+y2)的值。

执行该协议分为如下两个步骤:

1)执行(v′a,v′b)←cos(x1:x2),(v″a,v″b)←cos(y1:y2),还有

2)cpa计算cpb计算

经过ecos协议后,cpa得到va,cpb得到vb,此过程表示为(va:vb)←ecos((x1,y1):(x2,y2))。

(6)、反向指数协议(rexp):假设cpa存在一个随机数x∈+,cpb存在一个随机数y∈+。设计rexp的目的是在不泄露中间结果的情况下,得到va+vb=e-(x+y)的值。

执行该协议分为如下四个步骤:

1)tps随机生成数字ra∈+、rb∈+、ka∈+和kb∈+,且ka+kb=ra·rb。然后tps通过与各方的安全通信信道将(ra,ka)发送到cpa,(rb,kb)发送到cpb。

2)cpb计算y′=e-y+rb,并将y′发送给cpa,然后cpa同样计算x′=e-x+ra,并将x′发送给cpb。

3)cpb产生随机数vb,并计算t=x′·e-y+kb-vb,然后将其发送至cpa。

4)cpa计算va=t+ka-ra·y′。

经过rexp协议后,cpa得到va,cpb得到vb,此过程表示为(va:vb)←rexp(x:y)。

(7)、扩展乘法协议(emul):假设cpa存在随机数x1∈+和y1∈+,cpb存在随机数x2∈+和y2∈+。设计emul的目的是在不泄露中间结果的情况下,得到va+vb=(x1+x2)·(y1+y2)的值。

执行该协议分为如下两个步骤:

1)执行(v′a:v′b)←mul(x1:y2),(v″a:v″b)←mul(y1:x2),接着将(v′a,v″a)发送给cpa,(v′b,v″b)发送给cpb。

2)cpa计算va=x1·y1+v′a+v″a,cpb计算vb=x2·y2+v′b+v″b。

经过emul协议后,cpa得到va,cpb得到vb,此过程表示为(va:vb)←emul((x1,y1):(x2,y2))。

(8)、安全反余弦协议(arccos):假设cpa存在一个随机数x∈+,cpb存在一个随机数y∈+。设计emul的目的是在不泄露中间结果的情况下,得到va+vb=arccos(x+y)的值。根据级数展开式,我们可以通过以下公式计算反余弦值:

实际上,我们可利用mclaughlin展开并选择反余弦的近似值,使得其中χ是mclaughlin部分级数展开式,如下所示:

因此我们可以用x代替x+y得到反余弦的近似值,然后用二项式定理来计算(x+y)n的值:

这里我们可以调用mul协议来计算反余弦值。因此,arccos协议可以表示为(va:vb)←arccos(x+y)。

优选的,在本实施例中,所述矩阵安全计算协议具体为采用矩阵点乘的方法设计的mmul和mdiv扩展安全计算协议,所述mmul和mdiv是在mul和div的基础上,将mul和div中的随机数替换为矩阵。

在本实施例中,cpa和cpb分别接收到向量n′和n″后,需要进一步交互计算以得到交通拥堵率c和时空相关矩阵g。

计算已知路段的交通拥堵率集合c,具体如下:

首先,在不泄漏cpa和cpb之间交互计算过程中的中间值的情况下,利用公式进行计算。其次,cpa和cpb生成向量s′=[1/2,1/2,…,1/2]1×w和s″=[1/2,1/2,…,1/2]1×w并分别加入接下来的计算,其中w为已知路段的数量。最后,cpa和cpb交互计算执行(c′,c″)←mdiv((v′⊥,s′):(v″⊥,s″))。cpa得结果c′,cpb得结果c″。

以下是计算交通拥挤率c′和c″的详细步骤。

接下来计算时空相关矩阵g,我们先计算cp之间的欧式距离。假设有两个gps点a=(lata,lona)和b=(latb,lonb),我们可以通过以下公式计算欧式距离l:

l=r·arccos(l1+l2)

其中l1=cos(lata)·cos(latb)·cos(lona-lonb),

l2=sin(lata)·sin(latb)。将两个gps点a和点b分别分成两部分,例如点a分为a′=(lat′a,lon′a)和a″=(lat″a,lon″a),点b分为b′=(lat′b,lon′b)和b″=(lat″b,lon″b)。a′和b′同时存在,a″和b″也同时存在。我们设计了一个安全距离计算协议dis用于在隐私保护下求出a和b之间的欧式距离,即(l1:l2)←dis(a:b)。l的具体计算步骤如下所述。

1)执行

2)cpa计算和x′=lon′a-lon′b,cpb计算和y′=lon″a-lon″b。

3)先计算

然后cpa计算cpb计算

4)根据协议cpa计算l1=r·va,cpb计算l2=r·vb,其中r为地球半径。根据上述执行步骤,可以获得gps点a和b之间的欧式距离l,即l=l1+l2。

对于整个城市道路网络,系统从n′和n″中选择反映时空特征的元素,并构造仅包含gps信息的矩阵然后,采用mdis协议计算任意两个gps点之间的纬度和经度距离,即将dis中的a和b替换为其中d=d′+d″。假设一个城市中有n个路段,d的维数则为n×n。

以下是计算d的详细步骤。

优选的,在本实施例中,采用压缩感知技术来实现少量路段的交通监控。将高斯核函数引入我们的机制,其中d定义为任意两个gps点之间的欧几里得距离,σ是确定两个gps点之间影响的相关系数,可以通过贝叶斯框架训练数据来得到σ的值。依靠高斯核函数来生成相关矩阵g,因而g的形式如下:

cpa拥有矩阵d′,而cpb拥有矩阵d″,且d=d′+d″。计算d之间的乘法步骤如下:

1)执行(l′a:l′b)←mmul(d′:d″)。

2)cpa计算

3)cpb计算

4)执行(la:lb)←rexp(w1:w2)。

在执行完上述协议之后,可以得到高斯核函数g生成的正交特征向量基。根据公式g=ψλψ-1,g被对角化为三个部分,ψ、λ和ψ-1。在这里,ψ是压缩感知稀疏表示矩阵,我们将其随机分为ψ1和ψ2,然后将ψ1和ψ2分别发送到cpa和cpb。接着,可以利用ψ1和ψ2,协助nsp估计未知路段的交通拥塞率。云中复杂计算的过程如图5所示。

在实施例中,所述步骤s3具体为:

步骤s31:设一个城市中有n个路段,并且在t′时间间隔(w<<n)内计算w个路段的交通拥堵率,即cpa具有向量c′=[c′1,c′2,…,c′w],cpb具有向量c″=[c″1,c″2,…,c″w];

步骤s32:tps生成随机测量矩阵φ∈w×n,nsp接收分量向量c′,c″,φ,ψ1和ψ2,得到公式c′+c″=φ×(ψ1+ψ2)×c,其中c包含所有路段的交通拥堵率;

步骤s33:nsp通过优化算法得到c,再通过导航应用程序向车辆发送道路的交通状况。

以上所述仅为本发明的较佳实施例,凡依本发明申请专利范围所做的均等变化与修饰,皆应属本发明的涵盖范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1