基于极限学习机模型预测交通流的方法、装置及电子设备与流程
未命名
08-14
阅读:77
评论:0
1.本技术涉及智慧交通技术领域,尤其涉及一种基于极限学习机模型预测交通流的方法、装置及电子设备。
背景技术:
2.随着信息技术的快速发展,打造智慧城市成为城市发展的重要课题。在城市发展中,交通,尤其是交通拥堵问题,与智慧城市的建设息息相关。为此,利用深度学习模型对交通流进行预测应运而生。即利用过往的交通流数据,对未来的交通流进行预测,以指导城市交通规划,缓解道路拥堵、减少尾气污染以及预防交通事故等,这其中尤以短时交通流预测为重。
3.目前,短时交通预测主要利用通过极限学习机模型(extreme learning machine,elm)训练得到的单隐藏层前馈神经网络(single-hiddenlayerfeedforward neural network,slfn)完成。elm通过随机选取输入层权重和隐藏层偏置,并最小化由训练误差项和输出层权重范数的正则项构成的损失函数,依据moore-penrose(mp)广义逆矩阵理论计算解析求出的输出层完成前述slfn的训练。在elm中,隐藏层节点参数(w ww和b bb)根据任意连续的概率分布随机生成(与训练数据无关),这使其与传统bp神经网络相比在效率方面占很大优势。
4.然而,elm为slfn随机分配输入参数的方式极易导致计算过程中出现病态矩阵,而病态矩阵极易因数组中小扰动出现大的波动,这导致利用elm及slfn所预测的交通流存在预测结果精度低的问题。因此,现有技术中存在短时交通流预测结果准确度低的问题。
技术实现要素:
5.本技术提供了一种基于极限学习机模型预测交通流的方法、装置及电子设备,用以提升交通流预测结果的准确度。
6.第一方面,本技术实施例提供一种基于极限学习机模型预测交通流的方法,包括:
7.获取训练数据集;其中,所述训练数据集为m个预设时间段内经过预设道路的交通流数据,m为正整数;
8.基于所述训练数据集,对待训练极限学习机模型进行训练,使所述待训练极限学习机模型中的第一白鲸种群进行迭代,直到迭代次数等于第一预设阈值,得到包括目标队列的目标种群,并确定目标极限学习机模型;其中,所述目标极限学习机模型中的目标输入权重和目标隐含层偏置根据所述目标队列得到,所述迭代的过程中所述第一白鲸种群的状态根据权重确定,所述权重随所述迭代次数的增加而呈指数形式递减;
9.将获取到的预测参数输入所述目标极限学习机模型,得到目标数据;其中,所述预测参数对应于预测任务,所述目标数据为对应于所述预测任务的交通流数据。
10.本技术实施例通过目标极限学习机模型在训练过程中引入白鲸优化算法,利用白鲸算法迭代确定目标极限学习机模型的目标输入权重和目标隐含层偏置,避免现有技术中
通过随机特征映射确定输入极限学习机模型输入权重、隐含层偏置所容易出现的病态矩阵的问题,从而有效提升了极限学习机模型预测交通流的准确度。并且,本技术实施例中在结合白鲸优化算法确定目标极限学习机模型的目标输入权重和目标隐含层偏置的迭代过程中,通过随迭代次数呈指数级递减的权重确定白鲸种群所处状态,以对白鲸种群进行迭代,使得白鲸种群在早期迭代中具备更强的全局搜索(最佳位置的)性能,有效平衡了全局搜索以及局部搜索,从而避免白鲸种群在迭代过程中过早陷入局部寻优。因而可促使其(白鲸种群)取得更优的迭代结果,使最终得到的与目标队列相对应的目标极限学习模型在准确度更进一步提升的基础上,泛化能力也得以有效提升。
11.一种可能的实施方式,所述权重通过预设权重公式确定,所述预设权重公式为其中,q为预设的正数,ω为所述权重,t为所述迭代次数,t
max
为所述第一预设阈值。
12.一种可能的实施方式,所述训练数据集包括所述交通流训练数据和对应于所述交通流训练数据的标记;则所述基于所述训练数据集,对待训练极限学习机模型进行训练,使所述待训练极限学习机模型中的第一白鲸种群进行迭代,直到迭代次数等于第一预设阈值,得到包括目标队列的目标种群,并确定目标极限学习机模型,包括:
13.基于搜索空间内生成的随机数,确定由第一预设数量第一白鲸队列组成的第一白鲸种群;
14.利用预设重组函数处理每一所述第一白鲸队列,分别得到对应于所述第一白鲸队列的第一输入权重和第一隐含层偏置,并确定包括所述第一输入权重和所述第一隐含层偏置的所述待训练极限学习机;
15.将所述交通流训练数据输入包括所述第一输入权重和所述第一隐含层偏置的所述待训练极限学习机,得到第一预测矩阵;其中,所述第一预测矩阵与所述第一白鲸种群中的所述第一白鲸队列一一对应;
16.确定所述第一预测矩阵与所述标记对应的标准矩阵之间的误差为第一适应度,以及确定值最小的所述第一适应度为候选适应度,且所述候选适应度所对应的所述第一白鲸队列为候选队列。
17.一种可能的实施方式,所述基于搜索空间内生成的随机数,确定白鲸队列及第一白鲸种群,包括:
18.在搜索空间内随机生成第二预设数量的随机数,并基于所述随机数确定初始矩阵;
19.基于预设的反向位置学习公式处理所述初始矩阵,得到反向矩阵;
20.将所述初始矩阵与所述反向矩阵合并,得到与中间白鲸种群对应的组合矩阵;
21.利用所述预设重组函数分别处理所述中间白鲸种群中每一中间白鲸队列,得到每一所述中间白鲸队列所对应的第二输入权重和第二隐含层偏置;并基于所述交通流训练数据,分别确定与所述中间白鲸队列一一对应的第二预测矩阵,以及第三适应度;
22.将所述中间白鲸队列的所述第三适应度从小到大排列,顺序确定所述第一预设数量的所述中间白鲸队列为所述第一白鲸队列;则得到所述第一白鲸种群。
23.一种可能的实施方式,所述基于所述交通流训练数据,分别确定与所述中间白鲸
队列一一对应的第二预测矩阵,以及第三适应度,包括:
24.将所述第二输入权重和所述第二隐含层偏置作为所述待训练极限学习机模型的所述输入权重和所述隐含层偏重;
25.将所述交通流训练数据输入所述待训练学习机,得到第二预测矩阵;
26.基于所述第二预测矩阵与所述标记对应的标准矩阵之间的误差,分别确定与所述中间白鲸队列一一对应的第三适应度。
27.一种可能的实施方式,所述基于所述训练数据集,对待训练极限学习机模型进行训练,使所述待训练极限学习机模型中的第一白鲸种群进行迭代,直到迭代次数等于第一预设阈值,得到包括目标队列的目标种群,并确定目标极限学习机模型,包括:
28.确定所述第一白鲸种群的平衡因子以及坠落概率;其中,所述平衡因子随所述迭代次数增加呈非线性递减,所述坠落概率与所述迭代次数呈负相关;
29.响应于所述平衡因子小于所述坠落概率,基于预设坠落公式更新所述第一白鲸种群中所述第一白鲸队列的位置,得到包括至少一个第二白鲸队列的第二白鲸种群;
30.利用所述预设重组函数处理所述第二白鲸种群中的每一所述第二白鲸队列,并确定所述第二白鲸队列的第二适应度;
31.确定迭代次数;
32.响应于所述迭代次数等于所述第一预设阈值,对比所述第二适应度是否均不小于所述候选适应度;若是,则确定所述候选队列为所述目标队列。
33.一种可能的实施方式,所述平衡因子根据以下预设公式得到:
34.其中,bf为所述平衡因子,∈为预设的正数。
35.一种可能的实施方式,所述利用所述预设重组函数处理所述第二白鲸种群中的每一所述第二白鲸队列,并确定所述第二白鲸队列的第二适应度之后,还包括:
36.响应于所述迭代次数小于所述第一预设阈值,确定大于所述候选适应度的第二适应度为待更新适应度,及确定所述待更新适应度对应的所述第二白鲸队列为待更新白鲸队列;
37.在所述第二白鲸种群中,将所述待更新的白鲸队列替换为所述候选队列,得到第三白鲸种群;
38.随机打乱所述第三白鲸种群中第三白鲸队列的顺序,得到第四白鲸种群。其中,所述第四白鲸种群用于下一次迭代。
39.一种可能的实施方式,所述响应于所述平衡因子小于所述坠落概率,基于预设坠落公式更新所述第一白鲸种群中所述第一白鲸队列的位置,得到第二白鲸种群之前,还包括:
40.响应于所述平衡因子大于第二预设阈值,确定所述第一白鲸种群进入所述探索阶段,则利用预设探索公式更新所述第一白鲸种群,得到包括至少一个第四白鲸队列的第五白鲸种群,并确定与所述第四白鲸队列一一对应的第四适应度;或者,
41.响应于所述平衡因子小于或等于所述第二预设阈值,确定所述第一白鲸种群进入所述开发阶段,则利用预设开发公式更新所述第一白鲸种群,得到包括至少一个第五白鲸队列的第六白鲸种群,并确定与所述第五白鲸队列一一对应的第五适应度;
42.则所述响应于所述平衡因子小于所述坠落概率,基于预设坠落公式更新所述第一白鲸种群中所述第一白鲸队列的位置,得到第二白鲸种群,包括:
43.基于所述预设坠落公式更新所述第五白鲸种群中的所述第四白鲸队列,得到所述第二白鲸种群;或者,
44.基于所述预设坠落公式更新所述第六白鲸种群中的所述第五白鲸队列,得到所述第二白鲸种群。
45.第二方面,本技术实施例提供一种基于极限学习机模型预测交通流数据的装置,包括:
46.数据单元:用于获取训练数据集;其中,所述训练数据集为m个预设时间段内经过预设道路的交通流数据,m为正整数;
47.迭代单元:用于基于所述训练数据集,对待训练极限学习机模型进行训练,使所述待训练极限学习机模型中的第一白鲸种群进行迭代,直到迭代次数等于第一预设阈值,得到包括目标队列的目标种群,并确定目标极限学习机模型;其中,所述目标极限学习机模型中的目标输入权重和目标隐含层偏置根据所述目标队列得到,所述迭代的过程中所述第一白鲸种群的状态根据权重确定,所述权重随所述迭代次数的增加而呈指数形式递减;
48.预测单元:用于将获取到的预测参数输入所述目标极限学习机模型,得到目标数据;其中,所述预测参数对应于预测任务,所述目标数据为对应于所述预测任务的交通流数据。
49.一种可能的实施方式,所述权重通过预设权重公式确定,所述预设权重公式为其中,q为预设的正数,ω为所述权重,t为所述迭代次数,t
max
为所述第一预设阈值。
50.一种可能的实施方式,所述训练数据集包括所述交通流训练数据和对应于所述交通流训练数据的标记;则所述迭代单元具体用于基于搜索空间内生成的随机数,确定由第一预设数量第一白鲸队列组成的第一白鲸种群;利用预设重组函数处理每一所述第一白鲸队列,分别得到对应于所述第一白鲸队列的第一输入权重和第一隐含层偏置,并确定包括所述第一输入权重和所述第一隐含层偏置的所述待训练极限学习机;将所述交通流训练数据输入包括所述第一输入权重和所述第一隐含层偏置的所述待训练极限学习机,得到第一预测矩阵;其中,所述第一预测矩阵与所述第一白鲸种群中的所述第一白鲸队列一一对应;确定所述第一预测矩阵与所述标记对应的标准矩阵之间的误差为第一适应度,以及确定值最小的所述第一适应度为候选适应度,且所述候选适应度所对应的所述第一白鲸队列为候选队列。
51.一种可能的实施方式,所述迭代单元具体用于在搜索空间内随机生成第二预设数量的随机数,并基于所述随机数确定初始矩阵;基于预设的反向位置学习公式处理所述初始矩阵,得到反向矩阵;将所述初始矩阵与所述反向矩阵合并,得到与中间白鲸种群对应的组合矩阵;利用所述预设重组函数分别处理所述中间白鲸种群中每一中间白鲸队列,得到每一所述中间白鲸队列所对应的第二输入权重和第二隐含层偏置;并基于所述交通流训练数据,分别确定与所述中间白鲸队列一一对应的第二预测矩阵,以及第三适应度;将所述中间白鲸队列的所述第三适应度从小到大排列,顺序确定所述第一预设数量的所述中间白鲸
队列为所述第一白鲸队列;则得到所述第一白鲸种群。
52.一种可能的实施方式,所述迭代单元还用于确定所述第一白鲸种群的平衡因子以及坠落概率;其中,所述平衡因子随所述迭代次数增加呈非线性递减,所述坠落概率与所述迭代次数呈负相关;响应于所述平衡因子小于所述坠落概率,基于预设坠落公式更新所述第一白鲸种群中所述第一白鲸队列的位置,得到包括至少一个第二白鲸队列的第二白鲸种群;利用所述预设重组函数处理所述第二白鲸种群中的每一所述第二白鲸队列,并确定所述第二白鲸队列的第二适应度;确定迭代次数;响应于所述迭代次数等于所述第一预设阈值,对比所述第二适应度是否均不小于所述候选适应度;若是,则确定所述候选队列为所述目标队列。
53.一种可能的实施方式,所述平衡因子根据以下预设公式得到:其中,bf为所述平衡因子,∈为预设的正数。
54.一种可能的实施方式,所述装置还包括响应单元,所述响应单元具体用于响应于所述迭代次数小于所述第一预设阈值,确定大于所述候选适应度的第二适应度为待更新适应度,及确定所述待更新适应度对应的所述第二白鲸队列为待更新白鲸队列;在所述第二白鲸种群中,将所述待更新的白鲸队列替换为所述候选队列,得到第三白鲸种群;随机打乱所述第三白鲸种群中第三白鲸队列的顺序,得到第四白鲸种群。其中,所述第四白鲸种群用于下一次迭代。
55.一种可能的实施方式,所述装置还包括更新单元,所述更新单元具体用于响应于所述平衡因子大于第二预设阈值,确定所述第一白鲸种群进入所述探索阶段,则利用预设探索公式更新所述第一白鲸种群,得到包括至少一个第四白鲸队列的第五白鲸种群,并确定与所述第四白鲸队列一一对应的第四适应度;或者,响应于所述平衡因子小于或等于所述第二预设阈值,确定所述第一白鲸种群进入所述开发阶段,则利用预设开发公式更新所述第一白鲸种群,得到包括至少一个第五白鲸队列的第六白鲸种群,并确定与所述第五白鲸队列一一对应的第五适应度;则所述迭代单元具体用于基于所述预设坠落公式更新所述第五白鲸种群中的所述第四白鲸队列,得到所述第二白鲸种群;或者,基于所述预设坠落公式更新所述第六白鲸种群中的所述第五白鲸队列,得到所述第二白鲸种群。
56.第三方面,本技术实施例还提供一种可读存储介质,包括,
57.存储器,
58.所述存储器用于存储计算机程序,当所述计算机程序被处理器执行时,使得包括所述可读存储介质的装置完成如第一方面及任一种可能的实施方式所述的方法。
59.第四方面,本技术实施例还提供一种电子设备,包括:
60.存储器,用于存放计算机程序;
61.处理器,用于执行所述存储器上所存放的计算机程序时,以实现第一方面及任一种可能的实施方式所述的方法。
附图说明
62.图1为本技术实施例提供的一种基于极限学习机模型预测交通流的方法的流程示意图;
63.图2为本技术实施例提供的迭代次数的第一阈值为120时,权重随迭代次数的变化情况的示意图;
64.图3为本技术实施例提供的一种白鲸队列的生成及迭代的方法的流程示意图;
65.图4为本技术实施例提供的平衡因子随迭代次数的变化情况的示意图;
66.图5为本技术实施例提供的一种训练目标极限学习机模型并对交通流预测的方法的示意图;
67.图6为本技术实施例提供的一种基于极限学习机预测交通流的装置的结构示意图;
68.图7为本技术实施例提供的一种于极限学习机预测交通流的电子设备的结构示意图。
具体实施方式
69.针对现有技术中交通流预测结果准确度低的问题,本技术实施例提供一种基于极限学习机模型预测交通流的方法:利用获取到的训练数据集,对极限学习机模型中的白鲸队列进行迭代,以确定对应于极限学习机模型的输入权值和隐含层偏置的目标队列,得到目标极限学习机模型,则基于该目标极限学习机模型对交通流进行预测,得到对应于预测任务的目标数据。
70.上述申请实施例所提供的方法通过白鲸队列寻得最优且稳定的解作为极限学习机模型的输入权值和隐含层偏置,因白鲸队列在探索阶段以及开发阶段的迭代根据指数级减小的权重值确定,所以可充分保证迭代初期(探索阶段)的搜索范围足够大,且使权重值随迭代次数增加而指数级减小,保证了局部寻优能力,有效平衡了白鲸算法与极限学习机模型结合时的全局搜索和局部寻优(最优解)之间的矛盾。而目标输入权重和目标隐含偏置根据前述“优”(最优解)得到,所以目标输入权重和目标隐含层偏置的稳定性和收敛性也得以有效提升,可避免现有技术中极限学习机模型随机得到输入权重和隐含层偏置为病态矩阵的技术问题。
71.需要说明的是,本技术实施例中对于任一白鲸种群或白鲸队列的迭代,包括白鲸个体/队列的迭代,以及白鲸个体/队列的位置的迭代。
72.为了更好的理解上述技术方案,下面通过附图以及具体实施例对本技术技术方案做详细的说明,应当理解本技术实施例以及实施例中的具体特征是对本技术技术方案的详细的说明,而不是对本技术的技术方案的限定,在不冲突的情况下,本技术实施例以及实施例中的技术特征可以相互组合。
73.请参考图1,本技术提出一种基于极限学习机模型预测交通流的方法,用以提升交通流预测结果的准确性,该方法具体包括以下实现步骤:
74.步骤101:获取训练数据集。
75.其中,训练数据集为m个预设时间段内经过预设道路的交通流数据,m为正整数。
76.具体来说,上述m个预设时间段中,每一预设时间段的长度可以相同,可以不同,优选各时间段长度相同。
77.每一时间段的长度例如可以为10分钟,15分钟,20分钟等。
78.训练数据集可取自例如国内某市交通局系统中预设道路在每天预设的m个时间段
的交通流数据。该预设道路例如可以为城市快速路。该交通流数据可以为连续多个工作日相同时间段的交通流数据。
79.进一步地,该交通流数据可通过布设在前述预设道路上的检测器测得的数据得到。该检测器例如可以为线圈检测器。
80.在本技术的一种实施例中,交通流数据包括流量、车速和时间占用率。
81.其中,流量指单位时间(例如15min)内经过检测器的车辆的总数。
82.车速指单位时间经过检测器的车辆速度的平均值。
83.时间占用率可通过下式得到:
84.则k
t
为时间占有率,t为预设检测器检测所用的时间总和;例如,连续n天的预设时间段的交通流数据,则t=n
×
l
预设时间段
,该l
预设时间段
表示预设时间段的时长。ti为第i辆车通过该预设检测器所用的时间,即第i辆车的车头经过该预设检测器至该第i辆车的车尾经过该预设检测器的时长。
85.例如,训练数据集为2021年3月前8个工作日的交通流数据构成,预设时间段的长度为15min,则该训练数据集为一个矩阵,矩阵中每一行为15min长度的时间段内的流量、车速、时间占用率,第1列为时间,第2列为流量,第3列为车速,第4列为时间占用率,则该矩阵从第1行至最后1行构成这8天的训练数据集。该矩阵中每一行的标记可以为对应的时刻范围,例如8:00至8:15等。
86.进一步地,为避免预设道路上预设检测器的检测数据包含奇异样本影响本技术实施例中待训练极限学习机模型的训练效果,影响目标极限学习机模型预测交通流的精度,在本技术的一种实施例中,获取到的训练数据集实际上为对检测器的检测数据归一化处理得到的训练数据集。归一化的公式为:其中,xi为经该预设检测器检测所得的原始交通流数据,x为归一化后的训练数据集中的训练数据,x
max
和x
min
分别为原始交通流数据中各对应项(例如速度、时间占用率)最大值和最小值。
87.步骤102:基于所述训练数据集,对待训练极限学习机模型进行训练,使所述待训练极限学习机模型中的第一白鲸种群进行迭代,直到迭代次数等于第一预设阈值,得到包括目标队列的目标种群,并确定目标极限学习机模型。
88.其中,目标极限学习机模型中的目标权重和目标隐含层偏置根据前述目标队列得到。也即,待训练极限学习机模型通过白鲸种群的迭代,对待训练极限学习模型的输入权重和隐含层偏置进行优化,使白鲸种群随迭代处于最佳分布状态,达到多目标优化的目的,最终得到的目标种群以及目标队列因其中白鲸个体分布于最佳位置,确保与之对应的目标输入权重和目标隐含层偏置稳定,避免现有技术基于极限学习机模型随机分配输入权重以及隐含层偏置导致病态矩阵,继而引起交通流预测结果不精确的问题。
89.显然,前述第一预设阈值为正整数。并且,目标种群中的每一行分别对应一个白鲸队列,目标种群对应于目标矩阵,目标矩阵每一行向量对应于前述白鲸队列,目标矩阵每一行向量中的元素对应于白鲸队列中的白鲸个体,目标矩阵每一行向量中元素的值则分别对应于白鲸个体的目标位置。
90.同理,第一白鲸队列中白鲸个体的数量不小于待训练极限学习机模型中隐含层
(神经元)数量m与输入(神经元)数量n加1的积;即m
×
(n+1)。该隐含层数量可以为60,85,100,或120等。本技术实施例中优选隐含层数量为85。
91.上述目标队列为经过迭代处于最佳位置的白鲸队列,即迭代次数为第一预设阈值时最后更新得到的白鲸种群中适应度最小的白鲸队列。因此,目标队列中的白鲸个体均分布于最佳位置。
92.上述第一白鲸队列每次迭代过程中所处阶段可以为探索阶段或开发阶段,白鲸种群所处阶段(即白鲸种群的状态)可为探索阶段、开发阶段或坠落阶段;各个状态,探索阶段、开发阶段或坠落阶段均根据平衡因子的值确定,而平衡因子又通过与迭代次数对应的权重确定,因此迭代过程中包括第一白鲸种群在内的所有白鲸种群的状态均根据权重确定,该权重随迭代次数的增加而成指数形式递减,图2为第一预设阈值为120时权重随迭代次数减小的示意图。参考图2可以得到,权重可使白鲸算法在探索阶段具备较强的全局搜索能力,使前期白鲸队列更优,即白鲸队列的位置分布更优。同时,该权重随着迭代次数呈指数级减小,因而可确保随着迭代次数增加,白鲸队列在进入开发阶段后逐渐接近最优解时,白鲸算法的局部寻优能力得以提升,从而达到平衡全局搜索以及局部寻优之间的矛盾的目的。在本技术的一种实施例中,权重通过预设权重公式确定,该预设权重公式为:
93.该预设权重公式中,q为预设的正数,ω为所述权重,t为所述迭代次数,t
max
为所述第一预设阈值。其中,q可以为预设的正整数;例如可以为:q=6。
94.进一步地,以下针对白鲸队列的生成以及迭代进行具体说明,请参考图3:
95.步骤301:基于搜索空间内生成的随机数,确定由第一预设数量第一白鲸队列组成的第一白鲸种群。
96.具体地,第一白鲸种群对应于上述任意规模的矩阵。随机数所在矩阵的行数可以为任意规模的,例如该矩阵的规模(即行数或行秩)可以为30。
97.第一白鲸队列对应于上述矩阵中的行,白鲸个体对应于上述矩阵中的元素。
98.也就是说,基于随机数生成的行数为第一预设数量的初始矩阵可以作为第一白鲸种群。
99.在一些实施例中,为避免最初生成白鲸队列和白鲸种群因白鲸队列的位置分布不均导致经多次迭代后最终得到的白鲸队列的位置、分布不理想的问题,本技术实施例中,在确定白鲸队列以及第一白鲸种群时,利用动态反向策略为白鲸队列的位置扩展新的搜索区域,以使第一白鲸队列、第一白鲸种群以及多次迭代得到的目标种群中白鲸个体的位置分布更为均匀。以下针对基于动态反向位置学习策略确定第一白鲸种群的实施方式进行具体描述:
100.首先,在搜索空间内随机生成第二预设数量的随机数,根据该第二预设数量的随机数确定初始矩阵。该初始矩阵的行数即为前述第一预设数量;且该初始矩阵中的行对应于中间白鲸种群所包括的部分白鲸队列。其中,第二预设数量大于或等于待训练极限学习机模型的隐含层(即隐含层神经元)数量m与输入层(即输入层神经元)数量n加1之和的积,即m
×
(n+1),则得到初始矩阵。也就是说,初始矩阵中行数为隐含层数量,列数为输入层数量加1,即最后一列为每一隐含层的隐含层偏置。
101.其次,根据预设的反向位置学习公式处理初始矩阵,确定前述初始矩阵的中间白鲸队列中白鲸个体的反向位置分布,得到与初始矩阵的行对应的反向矩阵。即该反向矩阵的行数、列数均与初始矩阵相等。
102.该预设的反向位置学习公式为:x
op
=x
ip
+r1×
[r2(lb+ub-x
ip
)-x
ip
]其中,x
ip
为上述搜索空间内随机生成的初始矩阵。r1和r2分别为0到1之间的随机数,lb和ub为变量(即白鲸个体位置)的预设最大值和预设最小值,x
op
上述反向矩阵。
[0103]
复次,将初始矩阵和反向矩阵合并,得到与中间白鲸种群对应的组合矩阵。例如初始矩阵为5行2列的矩阵,则反向矩阵也为5行2列,合并得到的组合矩阵则为10行2列。该组合矩阵中的行即为中间白鲸队列。
[0104]
再次,利用前述预设重组函数分别处理中间白鲸种群中每一中间白鲸队列,得到每一中间白鲸队列所对应的第二输入权重和第二隐含层偏置,并基于所述交通流训练数据,分别确定与中间白鲸队列一一对应的第二预测矩阵,以及第三适应度。具体来说,预设重组函数对每一中间白鲸队列的处理实际上根据隐含层的数量是对每一中间白鲸队列的重新排序,例如隐含层数量为85,则将每一中间队列使用预设重组函数处理后得到85行
×
(n+1)列的矩阵。其中n为输入层(即输入神经元)的数量。即矩阵中每一行对应一个隐含层,每一行中前n个元素为当前隐含层中关于每一输入层的输入权重,以及,第(n+1)个元素为当前隐含层的隐含层偏置。
[0105]
在确定对应于每一中间白鲸队列的第二输入权重和第二隐含层偏置之后,将交通流训练数据输入输入权重以及隐含层偏置分别为第二输入权重、第二隐含层偏置的待训练极限学习机,得到第二预测矩阵。确定第二预测矩阵与训练数据集中标记对应的标准矩阵之间的误差为第三适应度。该第三适应度用于指示每一中间白鲸队列与最佳分布位置的差距大小。
[0106]
本技术实施例中根据以下适应度函数确定适应度:其中,yi和xi分别代表真实值和预测值。可见,适应度rmse越小,相应白鲸队列的分布位置越好。例如,第三适应度越小,对应的中间白鲸队列与最佳分布位置之间的差距越小,即对应的中间白鲸队列分布位置越好。
[0107]
最后,将中间白鲸队列的第三适应度从小到大排列,取适应度最小的前第一预设数量的中间白鲸队列作为第一白鲸队列,即顺序确定第一预设数量的中间白鲸队列为第一白鲸队列,则完成筛选得到第一白鲸种群。
[0108]
步骤302:利用预设重组函数处理每一第一白鲸队列,分别得到对应于第一白鲸队列的第一输入权重和第一隐含层偏置,并确定包括第一输入权重和第一隐含层偏置的待训练极限学习机。
[0109]
具体地,每一第一白鲸队列各自对应一组第一输入权重和第一隐含层偏置。
[0110]
除非特别说明,本技术实施例中在得到目标极限学习机模型之前,用于迭代/更新参数的极限学习机或极限学习机模型均为步骤102所述的待训练极限学习机模型;也就是说,待训练极限学习机模型泛指得到目标极限学习机模型之前的待训练极限学习机。
[0111]
除非特别说明,待训练极限学习机模型或者目标极限学习机模型的输出权重的确定方式均参见以下方式。
[0112]
待训练极限学习机的输出权重根据输入权重和隐含层偏置确定,所以此处待训练极限学习机的输出权重根据所有隐含层的第一输入权重和第一隐含层偏置得到。具体参见下式:
[0113]
其中,为矩阵h的moore
–
penrose广义逆矩阵;h为隐藏层输出矩阵,t为训练数据集中标记所对应的标准矩阵。β*为β的解。
[0114]
该隐藏层输出矩阵h为:h=g(x*τ+b)。其中,g(
·
)为预设激活函数,x为交通流训练数据,τ为第一输入权重,b为第一隐含层偏置。上述预设激活函数例如可以为sigmoid函数、gaussian函数。本技术实施例优选激活函数为sigmoid函数。
[0115]
在根据以上公式确定输出去权重之后,即可确定包括第一输入权重和所述第一隐含层偏置,即输入权重为第一输入权重,隐含层偏置为第一隐含层偏置的待训练极限学习机。
[0116]
步骤303:将所述交通流训练数据输入包括第一输入权重和第一隐含层偏置的待训练极限学习机,得到第一预测矩阵。
[0117]
其中,所述第一预测矩阵与所述第一白鲸种群中的所述第一白鲸队列一一对应。
[0118]
上述包括第一输入权重和第一隐含层偏置的待训练极限学习机,即利用第一输入权重、第一隐含层偏置、以及基于第一输入权重和第一隐含层偏置得到输出权重作为参数的待训练极限学习机(模型)。
[0119]
步骤304:确定所述第一预测矩阵与所述标记对应的标准矩阵之间的误差为第一适应度,以及确定值最小的第一适应度为候选适应度,且候选适应度所对应的第一白鲸队列为候选队列。
[0120]
第一适应度同样与第一白鲸队列一一对应。
[0121]
具体来说,第一适应度仍然通过适应度函数确定。根据第一白鲸种群中第一白鲸队列的第一预测矩阵与标准矩阵之间的误差,确定每一白鲸队列的第一适应度。
[0122]
进一步地,确定第一白鲸种群的迭代次数。
[0123]
进一步地,响应于所述迭代次数等于所述第一预设阈值,确定所述候选队列为所述目标队列,所述候选队列所对应的所述第一输入权重和所述第一隐含层偏置为所述目标输入权重和所述目标隐含层偏置,且所述候选队列所对应的所述待训练极限学习机模型为所述目标极限学习机模型。
[0124]
具体来说,当迭代次数满足第一预设阈值时,因适应度越小表示当前待训练极限学习机模型的预测精度越高,则该当前待训练极限学习机模型中输入权重和隐含层偏执对应的白鲸队列所在白鲸种群为最优种群,因此,此时只需在最新更新的白鲸种群中筛选适应度最小的白鲸队列作为待训练极限学习机模型的输入权重和隐含层偏置,得到目标极限学习机模型。倘若在最初确定白鲸队列以及白鲸种群时,即第一次开始迭代时,迭代次数即满足第一预设阈值,则选自第一白鲸种群的候选队列即为目标队列,而前述步骤302中所确定的候选队列所对应的第一输入权重和第一隐含层偏置即为目标输入权重和目标隐含层偏置,含该目标输入权重和目标隐含层偏置的待训练极限学习机即为目标极限学习机。
[0125]
进一步地,白鲸队列以及白鲸种群的迭代依次包括3个阶段:探索阶段、开发阶段、坠落阶段。当白鲸队列及白鲸种群的平衡因子小于第二预设阈值时,则确定白鲸队列及白鲸种群由探索阶段进入开发阶段,而当白鲸队列及白鲸种群的平衡因子继续减小,直到小
于坠落概率,则确定白鲸队列及白鲸种群进入坠落阶段。三个阶段并非一定都在同一次迭代过程中发生。所以在执行本步骤305之前,还需根据白鲸队列以及白鲸种群的平衡因子以及坠落概率,确定白鲸队列以及白鲸种群所处的具体阶段,以对应进行白鲸种群中白鲸队列的更新、迭代。
[0126]
具体来说,首先,确定第一白鲸种群的平衡因子和坠落概率。该坠落概率与迭代次数呈负相关。并且,为避免平衡因子单周期递减,致使白鲸队列以及白鲸种群随迭代次数增加而过早陷入局部求最优解的困境,进而导致难以求得实际最优解的问题,本技术实施例提供一种随迭代次数增加呈非线性递减的平衡因子。例如图4为本技术实施例提供的一种随迭代次数增加呈线性递减的平衡因子示意图,该平衡因子根据以下公式得到:其中,bf为平衡因子;∈为预设的正数,t为当前迭代次数,t
max
为第一预设阈值。其中,∈可以为预设的正整数;例如可以为∈=5,然后,对比平衡因子和坠落概率的大小以确定白鲸队列以及白鲸种群是否处于坠落阶段。当平衡因子小于坠落概率时,则确定白鲸队列进入坠落阶段,因而利用预设的坠落公式对第一白鲸队列以及第一白鲸种群的位置进行更新,得到由第二队列组成的第二白鲸种群,也即包括至少一个第二白鲸队列的第二白鲸种群;则可进一步利用预设重组函数分别处理第二白鲸种群中各个第二白鲸队列,并执行与步骤303-304一致的实施步骤,以确定与第二白鲸队列一一对应的第二适应度。
[0127]
上述坠落概率通过以下公式得到:wf=0.1-0.05t/t
max
;其中,wf为坠落概率。
[0128]
上述预设坠落公式根据以下公式得到:其中,y
siep
=(ub-lb)exp(-c2t/t
max
),c2=2wf×
n,r5、r6和r7均为0到1之间的随机数,x
step
表示鲸鱼坠落的步长,c2为阶跃因子,lb和ub为变量(即白鲸个体位置)的预设最大值和预设最小值。
[0129]
一般地,在确定白鲸队列以及白鲸种群是否进入坠落阶段之后,再确定迭代次数是否等于第一预设阈值。
[0130]
若此时迭代次数等于第一预设阈值,则对比第二白鲸种群的第二白鲸队列的第二适应度与候选适应度大小,倘若存在小于候选适应度的第二适应度,再在这些小于候选适应度的第二适应度中,确定值最小的第二适应度所对应的第二白鲸队列为目标队列。倘若第二适应度均不小于候选适应度,则确定候选队列为目标队列。
[0131]
若此时迭代次数小于第一预设阈值,则确定大于候选适应度的第二适应度为待更新适应度,及确定待更新适应度所对应的第二白鲸队列为待更新白鲸队列。然后将第二白鲸种群中待更新白鲸队列替换为最优解:候选队列,得到第三白鲸种群,该第三白鲸种群中的所有白鲸队列统一标记为第三白鲸队列。接着,将该第三白鲸种群中的第三白鲸队列随机打乱(例如对调任意两个第三白鲸队列的顺序,或者任选其中3个或4个白鲸队列互换在第三白鲸种群中的顺序),得到第四白鲸种群。则该第四白鲸种群用于下一次迭代,即在每一次迭代初期,确定白鲸队列及白鲸种群进入探索阶段还是开发阶段迭代之后,该第四白鲸种群作为对应的预设开发公式或预设探索公式的处理对象(即迭代对象)。
[0132]
以上判断白鲸队列、白鲸种群是否进入坠落阶段是以确定白鲸队列及白鲸种群进入探索阶段或开发阶段为前提的,而在迭代初期判断白鲸队列以及白鲸种群是否进入开发
阶段时:先根据前述预设公式以确定平衡因子。
[0133]
然后,响应于该平衡因子大于第二预设阈值,确定第一白鲸种群中的白鲸队列进入探索阶段,则利用预设探索公式更新第一白鲸种群,得到包括至少一个第四白鲸队列的第五白鲸种群,并且与步骤303-304同理,确定与所述第五白鲸种群中的所述第四白鲸队列一一对应的第四适应度。该第二预设阈值可以为0.5。
[0134]
或者;
[0135]
响应于平衡因子小于或等于第二预设阈值,确定第一白鲸种群中的第一白鲸队列进入开发阶段,则利用预设开发公式更新第一白鲸种群,得到包括至少一个第五白鲸队列的第六白鲸种群,并与步骤303同理,确定与第六白鲸种群中第五白鲸队列一一对应的第五适应度。
[0136]
上述预设开发公式为:
[0137]
其中,其中,表示第i个白鲸队列更新后的位置。和分别表示第i个白鲸队列和随机白鲸队列的当前位置。t为当前迭代次数,为当前白鲸种群中处于最佳位置的白鲸队列,c1为衡量莱维飞行强度的随机跳跃强度,u和v均为正态分布随机数,β为默认常数1.5。前述任一白鲸队列的位置表示相应白鲸队列中所有白鲸个体位置。
[0138]
上述预设探索公式为:
[0139][0140]
其中,为第i行(即第i个白鲸队列)在第j维上(即第j条白鲸个体)更新后的位置;
[0141]
pj(j=1,2,...,d)是从j维中选择的随机数;
[0142]
表示第i行(即第i个白鲸队列)在pj维度上(即第pj条白鲸个体)的当前位置;
[0143]
表示第r行(即第r个白鲸队列)在pj维度上(即第pj条白鲸个体)的当前位置;
[0144]
r1和r2是位于0到1之间的随机算子(即随机数)。
[0145]
相应地,在确定白鲸种群进入开发阶段或探索阶段之后,则利用预设开发公式或预设探索公式所更新的白鲸种群不再为第一白鲸种群,而是根据预设坠落公式更新最新得到的第五白鲸种群或者第六白鲸种群,得到第二白鲸种群。
[0146]
可见,在对待训练极限学习机进行训练的过程中,每次确定白鲸队列以及白鲸种群所处的阶段后(探索阶段、开发阶段、坠落阶段)之后,均获取相应阶段的预设公式对前述白鲸队列以及白鲸种群进行迭代,得到新的白鲸队列,及由新的白鲸队列组成的新的白鲸
种群。进而可根据预设重组函数及每一白鲸队列,确定新的输入权重以及隐含层偏置。该新的输入权重和隐含层偏置用于更新(即替换)待训练极限学习机中的输入权重和隐含层偏置,并将交通流训练数据输入待训练极限学习机,以得到预测矩阵,而该预测矩阵又进一步用于与训练数据集中标记所对应的标准矩阵对比,从而确定含最新替换的输入权重和隐含层偏置的待训练极限学习机所预测的交通流数据的精度。
[0147]
步骤103:将获取到的预测参数输入上述目标极限学习机模型,得到目标数据。
[0148]
其中,预测参数对应于预测任务,目标数据为对应于前述预测任务的交通流数据。
[0149]
该预测参数可以在训练之初同训练数据集一并获得,而在步骤103中使用。该预测参数也可以在步骤102结束之后,需要利用该目标极限学习机模型确定目标数据时获得。
[0150]
此处预测任务所对应的预测参数可包括指示预设道路的标识符,及在训练数据集的采集时间之前或之后的任一时间段,则目标数据则为该预测参数所指示的时间段中,预设道路的交通流数据。该预设道路即为训练数据集中的预设道路。
[0151]
一般地,预测时所输入的参数以及预测参数类型与目标极限学习机模型训练阶段所输入的参数保持一致。区别仅在于,对于训练时的待训练极限学习模型,除了输入预测的参数,还输入预设的预测结果,以便于前述模型能根据测试结果以及预设的预测结果之间偏差调整模型参数,提高前述模型预测准确率。
[0152]
该预测参数还可指示某一高峰期的交通流数据,即根据例如为预测交通高峰时段的预测任务,预测参数中包括指示预设道路的标识符,超过某一交通流数据阈值即定义为高峰的阈值,则目标数据为前述预设道路上交通高峰的时间。一般地,该交通高峰的时间是每天某个时间段,例如每天17:00至20:00。
[0153]
以下基于步骤101-103及其中各公式进行举例说明,请参考图5。
[0154]
本例中训练数据集取自国内某市交通局利用utc(urban traffic control system,城市交通控制系统)-scoot(spilt,cycle and offset optimisation technique,分流、循环和偏移优化技术)系统所采集的预设道路的预设时间段内经归一化处理的交通流数据。该预设道路例如可以为19km长度的城市快速路。预设时间段为2021年3月份前两周内前8个工作日。
[0155]
首先,对模型中参数进行初始化:第一白鲸种群的规模为30,最大迭代次数,即第一预设阈值为120。待训练极限学习机中隐含层数目为85,激活函数为sigmoid函数。
[0156]
然后,结合动态反向学习策略初始化白鲸种群。具体地,先在搜索空间内随机生成30个白鲸队列,每个白鲸队列中的白鲸个体的数量不小于隐含层数量m
×
(输入层数量+1)。然后基于动态反向学习策略,利用预设的反向位置学习公式,确定每个白鲸队列所对应的反向位置分布的方向队列,反向队列中的白鲸个体的数量和与之对应的白鲸队列中白鲸个体数量相等。将白鲸队列与反向队列合并,得到60个白鲸队列组成的第一白鲸种群。利用预设重组函数处理第一白鲸种群中每一第一白鲸队列(包括白鲸队列,和与白鲸队列对应的反向队列),使每一白鲸队列和每一反向队列中的白鲸个体均可依次作为待训练极限学习机的输入权重和隐含层偏置。在根据输入权重和隐含层偏置确定输出权重之后,将训练数据集输入该待训练极限学习机模型,得到预测值。根据适应度函数,将预测值与真实值之差的均方根作为适应度,该适应度分别对应白鲸队列和反向队列,表示基于其所预测的交通流数据的准确性;则适应度越小,指示预测值与真实值越接近,准确性越高。并将适应度最
小的前30个队列(白鲸队列和反向队列)挑选出来作为初始化白鲸种群,以及记录适应度最小的白鲸队列为候选队列,该候选队列的适应度为候选适应度。
[0157]
根据预设公式确定白鲸种群的平衡因子bf,当平衡因子大于其阈值(第二预设阈值)时,确定白鲸种群处于探索阶段,即利用前述预设探索公式对白鲸种群进行位置更新,并利用与前述相同的方法步骤确定更新后的白鲸种群中白鲸队列的适应度。
[0158]
继续参考图5,确定更新后的白鲸种群后,继续确定更新后白鲸种群的平衡因子,以及该白鲸种群的坠落概率。倘若该更新后白鲸种群的平衡因子大于或等于其坠落概率,确定该更新后的白鲸种群仍然未进入坠落阶段,因而将更新后的白鲸种群中适应度大于候选适应度的白鲸队列为待更新队列,并利用候选队列更新待更新队列,该经过更新的白鲸队列与其它适应度小于候选适应度的白鲸队列组成新的白鲸种群,则将该新的白鲸种群中白鲸队列的顺序随机打乱进入下次迭代。倘若前述更新后白鲸种群的平衡因子大于或等于其坠落概率,确定该更新后的白鲸种群进入坠落阶段,则利用预设坠落公式继续对该更新后的白鲸种群进行更新,并确定最新得到的更新后的白鲸种群中每一白鲸队列的适应度,重复前述迭代之情的“更新待更新白鲸队列”的步骤:确定最新得到的更新后的白鲸种群中每一白鲸队列适应度小于候选适应度的白鲸队列为待更新队列,并利用候选队列更新待更新队列,得到新的白鲸种群,将新的白鲸种群中白鲸队列的数据打乱,进入下一次迭代。
[0159]
也即,每次迭代之初,令∈=5,利用bf=(exp(-5t/t
erax
)*cos(5t)+1)/2确定每次迭代的平衡因子,并根据平衡因子与第二预设阈值的大小关系,确定白鲸种群所处阶段:开发阶段、或探索阶段。接着利用对应阶段的预设公式对白鲸种群进行更新,以对其中每一白鲸个体、白鲸队列的位置进行迭代,确定经过迭代更新后的白鲸种群中每一白鲸队列的适应度。然后对比平衡因子以及坠落概率之间的大小关系,确定迭代更新后的白鲸种群是否进入坠落阶段,以确定是否利用预设坠落公式对当前白鲸种群继续进行迭代。在每次迭代结束之前,均以候选队列的候选适应度与最新的白鲸种群中每一白鲸队列的适应度进行比对,以确定是否利用候选队列对其中的某一或某几个白鲸队列进行替换更新,最终将最后得到的白鲸种群中白鲸队列的顺序打乱,进入下一次迭代;直到迭代次数满足第一预设阈值,确定适应度最小的白鲸队列用于对应目标极限学习机模型中各隐含层的目标输入权重和目标隐含层偏置。此时可利用该目标输入权重和目标隐含层偏置,确定目标极限学习机模型的隐含层输出矩阵h=g*(x*τ+b);其中,g(
·
)为激活函数,τ为目标输入权重,b为目标隐含层偏置。最终根据确定输出权重β;其中,t为训练数据集;即得到目标极限学习机模型(ibwo-elm)。利用该目标极限学习机模型即可预测目标时间段的交通流。
[0160]
进一步地,分别利用本技术实施例所提供的目标极限学习机模型ibwo(improved beluga whale optimization for extreme learning machine,改进白鲸算法优化极限学习机模型),以及现有技术中的svr模型(support vector regression,支持向量回归模型)、lssvr模型(least squares support vector regression,最小二乘支持向量回归模型)、传统elm模型(extreme learning machine,极限学习机模型)、woa-elm模型(whale optimization algorithm for extreme learning machine,鲸鱼算法优化极限学习机模型)、和hs-elm模型(harmony search for extreme learning machine,和声算法优化极限学习机模型)均对测试数据进行短时交通预测,以进一步说明本技术实施例所提供的目标极限学习机模型对于交通流数据的预测效果。
[0161]
其中,传统elm模型中的输入权重和隐含层偏置通过随机赋值得到。woa-elm模型与本技术实施例所提供的极限学习机模型(即上述ibwo)为基于不同生物不同运动特性所提出的不同算法。
[0162]
测试数据为2021年3月份前两周内前8个工作日后的2个工作日的交通流数据。
[0163]
输入参数可以为:input:日期时间+车速+时间占有率,input_test:流量。即输入所需预测的日期或日期,及该日期中具体时间段,所述预测车辆的具体车速区间、时间占有率区间,使模型预测符合前述参数的车辆数目,即交通流量;
[0164]
则输出参数为与输入参数一致的日期时间、车速、时间占有率,以及预测得到的交通流量;即output:日期时间+车速+时间占有率,output_test:流量。
[0165]
采用以下几个参数作为衡量每一模型预测效果的指标:适应度rmse、平均绝对百分比误差mape、拟合决定系数r2。
[0166]
其中,yi和xi分别代表真实值和预测值。
[0167]
上述各参数指标中,适应度rmse和平均百分比误差mape的值越小,说明预测数据与实际数据之间的差距越小,算法预测性能越好;反之,算法的预测性能越差。拟合决定系数r2表示各模型对数据特征的拟合程度,当拟合决定系数越接近于1,说明相应模型对数据特征的拟合能力就越强,预测效果也就越好;当拟合决定系数的值越接近0,说明模型对数据特征的拟合能力越差,预测效果越差。
[0168]
各模型预测结果对应参数参见表1。
[0169]
表1
[0170][0171]
由表1可得,较之svr模型、lssvr模型、elm模型、woa-elm模型以及hs-elm模型,本技术实施例所提供的目标极限学习机模型(ibwo-elm)的决定拟合系数分别提高了15.18%,13.06%,10.57%,6.62%和8.09%。对比适应度以及平均绝对百分比误差,本技术实施例所提供的目标极限学习机模型(ibwo-elm)仍然表现优异。可见,本技术实施例所提供的目标极限学习机模型(ibwo-elm)相较其它模型,具备高预测精度以及强泛化能力,因此,该目标极限学习机模型用于预测交通流,尤其是短时交通流,具备正确性和可行性。
[0172]
基于同一发明构思,本技术实施例中提供一种基于极限学习机预测交通流的装置,该装置与前述图2所示基于极限学习机预测交通流的方法对应,该装置的具体实施方式
可参见前述方法实施例部分的描述,重复之处不再赘述,参见图6,该装置包括:
[0173]
数据单元601:用于获取训练数据集。
[0174]
其中,所述训练数据集为m个预设时间段内经过预设道路的交通流数据,m为正整数。
[0175]
迭代单元602:用于基于所述训练数据集,对待训练极限学习机模型进行训练,使所述待训练极限学习机模型中的第一白鲸种群进行迭代,直到迭代次数等于第一预设阈值,得到包括目标队列的目标种群,并确定目标极限学习机模型。
[0176]
其中,所述目标极限学习机模型中的目标输入权重和目标隐含层偏置根据所述目标队列得到,所述迭代的过程中所述第一白鲸种群的状态根据权重确定,所述权重随所述迭代次数的增加而呈指数形式递减。
[0177]
上述权重通过预设权重公式确定,所述预设权重公式为其中,q为预设的正数,ω为所述权重,t为所述迭代次数,t
max
为所述第一预设阈值。
[0178]
所述训练数据集包括所述交通流训练数据和对应于所述交通流训练数据的标记;则所述迭代单元602具体用于基于搜索空间内生成的随机数,确定由第一预设数量第一白鲸队列组成的第一白鲸种群;利用预设重组函数处理每一所述第一白鲸队列,分别得到对应于所述第一白鲸队列的第一输入权重和第一隐含层偏置,并确定包括所述第一输入权重和所述第一隐含层偏置的所述待训练极限学习机;将所述交通流训练数据输入包括所述第一输入权重和所述第一隐含层偏置的所述待训练极限学习机,得到第一预测矩阵;其中,所述第一预测矩阵与所述第一白鲸种群中的所述第一白鲸队列一一对应;确定所述第一预测矩阵与所述标记对应的标准矩阵之间的误差为第一适应度,以及确定值最小的所述第一适应度为候选适应度,且所述候选适应度所对应的所述第一白鲸队列为候选队列。
[0179]
迭代单元602具体用于在搜索空间内随机生成第二预设数量的随机数,并基于所述随机数确定初始矩阵;基于预设的反向位置学习公式处理所述初始矩阵,得到反向矩阵;将所述初始矩阵与所述反向矩阵合并,得到与中间白鲸种群对应的组合矩阵;利用所述预设重组函数分别处理所述中间白鲸种群中每一中间白鲸队列,得到每一所述中间白鲸队列所对应的第二输入权重和第二隐含层偏置;并基于所述交通流训练数据,分别确定与所述中间白鲸队列一一对应的第二预测矩阵,以及第三适应度;将所述中间白鲸队列的所述第三适应度从小到大排列,顺序确定所述第一预设数量的所述中间白鲸队列为所述第一白鲸队列;则得到所述第一白鲸种群。
[0180]
迭代单元602还用于确定所述第一白鲸种群的平衡因子以及坠落概率;其中,所述平衡因子随所述迭代次数增加呈非线性递减,所述坠落概率与所述迭代次数呈负相关;响应于所述平衡因子小于所述坠落概率,基于预设坠落公式更新所述第一白鲸种群中所述第一白鲸队列的位置,得到包括至少一个第二白鲸队列的第二白鲸种群;利用所述预设重组函数处理所述第二白鲸种群中的每一所述第二白鲸队列,并确定所述第二白鲸队列的第二适应度;确定迭代次数;响应于所述迭代次数等于所述第一预设阈值,对比所述第二适应度是否均不小于所述候选适应度;若是,则确定所述候选队列为所述目标队列。
[0181]
上述平衡因子根据以下预设公式得到:其中,bf为
所述平衡因子,∈为预设的正数。
[0182]
上述基于极限学习机预测交通流的装置还包括响应单元,所述响应单元具体用于响应于所述迭代次数小于所述第一预设阈值,确定大于所述候选适应度的第二适应度为待更新适应度,及确定所述待更新适应度对应的所述第二白鲸队列为待更新白鲸队列;在所述第二白鲸种群中,将所述待更新的白鲸队列替换为所述候选队列,得到第三白鲸种群;随机打乱所述第三白鲸种群中第三白鲸队列的顺序,得到第四白鲸种群。其中,所述第四白鲸种群用于下一次迭代。
[0183]
预测单元603:用于将获取到的预测参数输入所述目标极限学习机模型,得到目标数据。
[0184]
其中,所述预测参数对应于预测任务,所述目标数据为对应于所述预测任务的交通流数据。
[0185]
上述基于极限学习机预测交通流的装置还包括响应单元,所述响应单元具体用于响应于所述迭代次数小于所述第一预设阈值,确定大于所述候选适应度的第二适应度为待更新适应度,及确定所述待更新适应度对应的所述第二白鲸队列为待更新白鲸队列;在所述第二白鲸种群中,将所述待更新的白鲸队列替换为所述候选队列,得到第三白鲸种群;随机打乱所述第三白鲸种群中第三白鲸队列的顺序,得到第四白鲸种群。其中,所述第四白鲸种群用于下一次迭代。
[0186]
上述基于极限学习机预测交通流的装置还包括更新单元,所述更新单元具体用于响应于所述平衡因子大于第二预设阈值,确定所述第一白鲸种群进入所述探索阶段,则利用预设探索公式更新所述第一白鲸种群,得到包括至少一个第四白鲸队列的第五白鲸种群,并确定与所述第四白鲸队列一一对应的第四适应度;或者,响应于所述平衡因子小于或等于所述第二预设阈值,确定所述第一白鲸种群进入所述开发阶段,则利用预设开发公式更新所述第一白鲸种群,得到包括至少一个第五白鲸队列的第六白鲸种群,并确定与所述第五白鲸队列一一对应的第五适应度;则所述迭代单元具体用于基于所述预设坠落公式更新所述第五白鲸种群中的所述第四白鲸队列,得到所述第二白鲸种群;或者,基于所述预设坠落公式更新所述第六白鲸种群中的所述第五白鲸队列,得到所述第二白鲸种群。
[0187]
基于同一发明构思,本技术实施例还提供一种可读存储介质,包括:
[0188]
存储器,
[0189]
所述存储器用于存储计算机程序,当所述计算机程序被处理器执行时,使得包括所述可读存储介质的装置完成如上所述的基于极限学习机预测交通流的方法。
[0190]
基于与上述基于极限学习机预测交通流的方法相同的发明构思,本技术实施例中还提供了一种电子设备,所述电子设备可以实现前述一种基于极限学习机预测交通流的方法的功能,请参考图7,所述电子设备包括:
[0191]
至少一个处理器701,以及与至少一个处理器701连接的存储器702,本技术实施例中不限定处理器701与存储器702之间的具体连接介质,图7中是以处理器701和存储器702之间通过总线700连接为例。总线700在图7中以粗线表示,其它部件之间的连接方式,仅是进行示意性说明,并不引以为限。总线700可以分为地址总线、数据总线、控制总线等,为便于表示,图7中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。或者,处理器701也可以称为控制器,对于名称不做限制。
[0192]
在本技术实施例中,存储器702存储有可被至少一个处理器701执行的指令,至少一个处理器701通过执行存储器702存储的指令,可以执行前文论述基于极限学习机预测交通流的方法。处理器701可以实现图6所示的装置中各个模块的功能。
[0193]
其中,处理器701是该装置的控制中心,可以利用各种接口和线路连接整个该控制设备的各个部分,通过运行或执行存储在存储器702内的指令以及调用存储在存储器702内的数据,该装置的各种功能和处理数据,从而对该装置进行整体监控。
[0194]
在一种可能的设计中,处理器701可包括一个或多个处理单元,处理器701可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器701中。在一些实施例中,处理器701和存储器702可以在同一芯片上实现,在一些实施例中,它们也可以在独立的芯片上分别实现。
[0195]
处理器701可以是通用处理器,例如中央处理器(cpu)、数字信号处理器、专用集成电路、现场可编程门阵列或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件,可以实现或者执行本技术实施例中公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者任何常规的处理器等。结合本技术实施例所公开的基于极限学习机预测交通流的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。
[0196]
存储器702作为一种非易失性计算机可读存储介质,可用于存储非易失性软件程序、非易失性计算机可执行程序以及模块。存储器702可以包括至少一种类型的存储介质,例如可以包括闪存、硬盘、多媒体卡、卡型存储器、随机访问存储器(random access memory,ram)、静态随机访问存储器(static random access memory,sram)、可编程只读存储器(programmable read only memory,prom)、只读存储器(read only memory,rom)、带电可擦除可编程只读存储器(electrically erasable programmable read-only memory,eeprom)、磁性存储器、磁盘、光盘等。存储器702是能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。本技术实施例中的存储器702还可以是电路或者其它任意能够实现存储功能的装置,用于存储程序指令和/或数据。
[0197]
通过对处理器701进行设计编程,可以将前述实施例中介绍的基于极限学习机预测交通流的方法所对应的代码固化到芯片内,从而使芯片在运行时能够执行图1所示的基于极限学习机预测交通流的方法的步骤。如何对处理器701进行设计编程为本领域技术人员所公知的技术,这里不再赘述。
[0198]
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
[0199]
在本发明所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件
可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
[0200]
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
[0201]
另外,在本技术各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
[0202]
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本技术各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:通用串行总线闪存盘(universal serial bus flash disk)、移动硬盘、只读存储器(read-only memory,rom)、随机存取存储器(random access memory,ram)、磁碟或者光盘等各种可以存储程序代码的介质。
[0203]
显然,本领域的技术人员可以对本技术进行各种改动和变型而不脱离本技术的精神和范围。这样,倘若本技术的这些修改和变型属于本技术权利要求及其等同技术的范围之内,则本技术也意图包含这些改动和变型在内。
技术特征:
1.一种基于极限学习机模型预测交通流的方法,其特征在于,包括:获取训练数据集;其中,所述训练数据集为m个预设时间段内经过预设道路的交通流数据,m为正整数;基于所述训练数据集,对待训练极限学习机模型进行训练,使所述待训练极限学习机模型中的第一白鲸种群进行迭代,直到迭代次数等于第一预设阈值,得到包括目标队列的目标种群,并确定目标极限学习机模型;其中,所述目标极限学习机模型中的目标输入权重和目标隐含层偏置根据所述目标队列得到,所述迭代的过程中所述第一白鲸种群的状态根据权重确定,所述权重随所述迭代次数的增加而呈指数形式递减;将获取到的预测参数输入所述目标极限学习机模型,得到目标数据;其中,所述预测参数对应于预测任务,所述目标数据为对应于所述预测任务的交通流数据。2.如权利要求1所述的方法,其特征在于,所述权重通过预设权重公式确定,所述预设权重公式为其中,q为预设的正数,ω为所述权重,t为所述迭代次数,t
max
为所述第一预设阈值。3.如权利要求1或2所述的方法,其特征在于,所述训练数据集包括所述交通流训练数据和对应于所述交通流训练数据的标记;则所述基于所述训练数据集,对待训练极限学习机模型进行训练,使所述待训练极限学习机模型中的第一白鲸种群进行迭代,直到迭代次数等于第一预设阈值,得到包括目标队列的目标种群,并确定目标极限学习机模型,包括:基于搜索空间内生成的随机数,确定由第一预设数量第一白鲸队列组成的第一白鲸种群;利用预设重组函数处理每一所述第一白鲸队列,分别得到对应于所述第一白鲸队列的第一输入权重和第一隐含层偏置,并确定包括所述第一输入权重和所述第一隐含层偏置的所述待训练极限学习机;将所述交通流训练数据输入包括所述第一输入权重和所述第一隐含层偏置的所述待训练极限学习机,得到第一预测矩阵;其中,所述第一预测矩阵与所述第一白鲸种群中的所述第一白鲸队列一一对应;确定所述第一预测矩阵与所述标记对应的标准矩阵之间的误差为第一适应度,以及确定值最小的所述第一适应度为候选适应度,且所述候选适应度所对应的所述第一白鲸队列为候选队列。4.如权利要求3所述的方法,其特征在于,所述基于搜索空间内生成的随机数,确定白鲸队列及第一白鲸种群,包括:在搜索空间内随机生成第二预设数量的随机数,并基于所述随机数确定初始矩阵;基于预设的反向位置学习公式处理所述初始矩阵,得到反向矩阵;将所述初始矩阵与所述反向矩阵合并,得到与中间白鲸种群对应的组合矩阵;利用所述预设重组函数分别处理所述中间白鲸种群中每一中间白鲸队列,得到每一所述中间白鲸队列所对应的第二输入权重和第二隐含层偏置;并基于所述交通流训练数据,分别确定与所述中间白鲸队列一一对应的第二预测矩阵,以及第三适应度;将所述中间白鲸队列的所述第三适应度从小到大排列,顺序确定所述第一预设数量的
所述中间白鲸队列为所述第一白鲸队列;则得到所述第一白鲸种群。5.如权利要求1-2,4任一项所述的方法,其特征在于,所述基于所述训练数据集,对待训练极限学习机模型进行训练,使所述待训练极限学习机模型中的第一白鲸种群进行迭代,直到迭代次数等于第一预设阈值,得到包括目标队列的目标种群,并确定目标极限学习机模型,包括:确定所述第一白鲸种群的平衡因子以及坠落概率;其中,所述平衡因子随所述迭代次数增加呈非线性递减,所述坠落概率与所述迭代次数呈负相关;响应于所述平衡因子小于所述坠落概率,基于预设坠落公式更新所述第一白鲸种群中所述第一白鲸队列的位置,得到包括至少一个第二白鲸队列的第二白鲸种群;利用所述预设重组函数处理所述第二白鲸种群中的每一所述第二白鲸队列,并确定所述第二白鲸队列的第二适应度;确定迭代次数;响应于所述迭代次数等于所述第一预设阈值,对比所述第二适应度是否均不小于所述候选适应度;若是,则确定所述候选队列为所述目标队列。6.如权利要求5所述的方法,其特征在于,所述平衡因子根据以下预设公式得到:其中,b
f
为所述平衡因子,∈为预设的正数。7.如权利要求5所述的方法,其特征在于,所述利用所述预设重组函数处理所述第二白鲸种群中的每一所述第二白鲸队列,并确定所述第二白鲸队列的第二适应度之后,还包括:响应于所述迭代次数小于所述第一预设阈值,确定大于所述候选适应度的第二适应度为待更新适应度,及确定所述待更新适应度对应的所述第二白鲸队列为待更新白鲸队列;在所述第二白鲸种群中,将所述待更新的白鲸队列替换为所述候选队列,得到第三白鲸种群;随机打乱所述第三白鲸种群中第三白鲸队列的顺序,得到第四白鲸种群。其中,所述第四白鲸种群用于下一次迭代。8.一种基于极限学习机模型预测交通流数据的装置,其特征在于,包括:数据单元:用于获取训练数据集;其中,所述训练数据集为m个预设时间段内经过预设道路的交通流数据,m为正整数;迭代单元:用于基于所述训练数据集,对待训练极限学习机模型进行训练,使所述待训练极限学习机模型中的第一白鲸种群进行迭代,直到迭代次数等于第一预设阈值,得到包括目标队列的目标种群,并确定目标极限学习机模型;其中,所述目标极限学习机模型中的目标输入权重和目标隐含层偏置根据所述目标队列得到,所述迭代的过程中所述第一白鲸种群的状态根据权重确定,所述权重随所述迭代次数的增加而呈指数形式递减;预测单元:用于将获取到的预测参数输入所述目标极限学习机模型,得到目标数据;其中,所述预测参数对应于预测任务,所述目标数据为对应于所述预测任务的交通流数据。9.一种可读存储介质,其特征在于,包括,存储器,所述存储器用于存储计算机程序,当所述计算机程序被处理器执行时,使得包括所述
可读存储介质的装置完成如权利要求1-7中任一项所述的方法。10.一种电子设备,其特征在于,包括:存储器,用于存放计算机程序;处理器,用于执行所述存储器上所存放的计算机程序时,以实现如权利要求1-7中任一项所述的方法。
技术总结
本申请提供了一种基于极限学习机模型预测交通流的方法、装置及电子设备,用以提升交通流预测结果的准确度。该方法包括:获取训练数据集;基于所述训练数据集,对待训练极限学习机模型进行训练,使所述待训练极限学习机模型中的第一白鲸种群进行迭代,直到迭代次数等于第一预设阈值,得到包括目标队列的目标种群,并确定目标极限学习机模型;其中,所述目标极限学习机模型中的目标输入权重和目标隐含层偏置根据所述目标队列得到,所述迭代的过程中所述第一白鲸种群的状态根据权重确定,所述权重随所述迭代次数的增加而呈指数形式递减;将获取到的预测参数输入所述目标极限学习机模型,得到目标数据。得到目标数据。得到目标数据。
技术研发人员:汪超 林进 林骁 伍学千 杜淑峰 周淼 周文凯 杨晓刚 陆世雄
受保护的技术使用者:浙江大华技术股份有限公司
技术研发日:2023.05.12
技术公布日:2023/8/13
版权声明
本文仅代表作者观点,不代表航空之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
飞行汽车 https://www.autovtol.com/
上一篇:一种长条形槽钢的连续型精加工装置的制作方法 下一篇:厚度测量方法和工具与流程
