掌桥专利:专业的专利平台
掌桥专利
首页

计算拟合参数的方法、定位方法、设备及程序产品

文献发布时间:2024-04-18 20:00:50


计算拟合参数的方法、定位方法、设备及程序产品

技术领域

本发明涉及数据处理技术,尤其涉及一种计算拟合参数的方法、定位方法、设备及程序产品。

背景技术

在工程实践中,数据的拟合非常普遍。例如,假设一个算法模型是为了A环境设计的。项目需求将算法模型部署到B环境中,但是B环境的的数据分布跟A环境的不一样。这就需要使用一组拟合参数,来将B环境的数据映射到A环境的数据空间中,使得B环境的数据分布和A环境保持一致来适配算法模型。这个映射过程就是数据拟合。

在现有技术中,模拟退火算法常被用来计算上述的一组拟合参数。但是,已知的模拟退火算法在计算拟合参数时,很容易陷入局部极值点并且无法跳出,也就是说,已知的模拟退火算法在计算拟合参数时,可能所得的结果并不是最佳的拟合参数,从而不能够保证数据的拟合效果。

发明内容

本发明实施例提供了一种计算拟合参数的方法,能够提高拟合参数的准确度。另外,本发明实施例还提供了一种定位方法、装置及程序产品。

本发明实施例的一种计算拟合参数的方法,包括:初始化参数的步骤,包括:初始化多个分子,每个分子至少由拟合参数和能量值组成;模拟退火的步骤,包括:采用模拟退火的方式,根据测试数据和目标函数模型,对所述多个分子进行迭代,以计算出最终的拟合参数;其中,所述测试数据采集自第一环境,所述目标函数模型为第二环境使用的算法模型,所述最终的拟合参数用于将自所述第一环境中获取的第一数据拟合为所述第二环境中的第二数据,以使得所述算法模型能够基于所述第二数据实现预定功能。

其中,所述测试数据、第一数据和第二数据均为基于蓝牙的RSSI数据或者基于UWB的距离数据。

其中,所述第一环境为受环境因素影响的真实环境,所述第二环境为不受环境因素影响的标准环境,所述算法模型为定位算法模型。

其中,在所述模拟退火的步骤中,进一步包括:在对每个分子进行迭代时,当该分子的内能降低、或者该分子的内能增高且被下一分子接收时,终止该分子在当前温度下的迭代。

其中,当Δf小于0时,该分子的内能降低,并且基于以下公式计算Δf:

Δf=fm(xf

xf

m

其中,fop(m)为变量的更新函数,用于更新拟合参数;m

其中,在所述模拟退火的步骤中,进一步包括:

当该分子的内能降低时,更新该分子对应的拟合参数和能量值;

判断该分子对应的能量值是否小于最小值,所述最小值的初值在所述初始化参数的步骤中随机得到;

当判断结果为是时,更新所述最小值和所述最终的拟合参数。

其中,在所述模拟退火的步骤中,进一步包括:

当该分子的内能增高时,计算该分子的逃逸概率和下一个分子的接收概率;

基于所述逃逸概率和接收概率,确定该分子是否能够被下一个分子接收;

当能够被接收时,更新下一个分子;

当不能够被接收时,继续在该分子上进行迭代,直至迭代长度超过马尔可夫链的长度;

其中,所述逃逸概率的计算公式为:po=exp(-Δf/(K1*T

其中,所述接收概率的计算公式为:

其中,Δf=fm(xf

其中,xf

其中,K1为逃逸的玻尔兹曼常数,K2为接收的玻尔兹曼常数;T

本发明实施例的一种定位方法,用于定位装置中,用于对信号源的位置进行定位,所述信号源能够发送无线电信号,所述定位装置在不同位置上设置了多个无线电接收器,用于接收所述无线电信号,并生成第一数据;所述方法包括:获取拟合参数;获取所述第一数据;根据所述拟合参数,将所述第一数据拟合为第二数据;以及根据所述第二数据和定位算法模型,确定所述智能钥匙的位置;其中,所述拟合参数是采用本发明实施例的方法计算得到的。

本发明实施例的一种计算机设备,包括:处理器;以及存储器,用于存储所述处理器的可执行指令;其中,所述处理器被配置为执行所述可执行指令以实施本发明实施例的方法。

本发明实施例的一种计算机程序产品,包括:计算机程序,该计算机程序包括可执行指令,当该可执行指令被处理器执行时,实施本发明实施例的方法。

本发明实施例的有益效果:

本发明实施例,通过在模拟退火算法中设置多个分子(待迭代的变量)进行迭代,如果一个分子陷入了无法跳出的极小值点,还有多个分子可以在外面寻找最小值点,所以找到最佳的拟合参数的概率大大增加。因此,本发明实施例通过改进模拟退火算法并应用于拟合参数的计算中,从而能够提高了拟合参数的准确度。

附图说明

本发明的其他细节及优点将通过下文提供的详细描述而变得显而易见。应理解的是,下列附图仅仅是示意性的,因而不能视为对本发明的限制,下文将参照附图来进行详细描述,其中:

图1是模拟退火算法的流程示意图;

图2是本发明的计算拟合参数的方法的实施例的流程示意图;

图3是本发明的计算拟合参数的方法的另一实施例的流程示意图;

图4是本发明的定位方法的实施例的流程示意图;以及

图5是本发明的计算机设备的实施例的流程示意图。

具体实施方式

为了使本发明所要解决的技术问题、技术方案及有益效果更加清楚、明白,以下结合附图和实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅以解释本发明,并不用于限定本发明。

在本发明的描述中,需要理解的是,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。而且,术语“第一”、“第二”等适用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的术语在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。

在本文中,将结合PEPS(Passive-Entry-Passive-Start,无钥匙系统)为例,对本发明实施例是如何计算拟合参数,以及如何基于计算的拟合参数进行定位的方案进行说明。需要说明的是,PEPS仅是本发明的一种应用示例,而不应理解为限制。

其中,PEPS功能在高端车辆中被普遍应用,其主要是指车辆可以自动检测驾驶者是否进入指定范围时,当检测到时,可以自动实现解锁车门等功能。当驾驶者离开车辆时,可以自动实现车门上锁。搭载PEPS功能的车辆,能够使得驾驶者省去许多繁杂的操作,深受用户的喜爱。

为了实现PEPS功能,需要车辆能够对智能钥匙的位置进行定位。定位可以基于蓝牙技术或UWB(Ultra Wide Band,超宽带)技术来实现。例如,蓝牙定位可以基于蓝牙信号强度随距离增加而降低的原理来定位目标,而UWB定位技术可以利用UWB进行测距,并基于距离来确定目标的位置。在PEPS中,一般由智能钥匙(可以由手机等智能设备充当)发送无线电信号,例如蓝牙或UWB信号。在车辆中,预先布置多个无线接收器,用于接收蓝牙信号或UWB信号,这些无线接收器可以分布于车辆的不同位置上,例如分布于车身中部、前端两侧和后端两侧等。这些无线接收器基于接收的信号,生成用于定位的数据,并通过车内网络传递至中央控制器或域控制器等控制器,由控制器基于这些定位数据,例如可以为蓝牙中的RSSI(Received Signal Strength Indication,接收信号强度指示)数据或UWB中的距离数据,实现对智能钥匙的定位。

但是,无线电信号容易受到环境和发射源的影响,从而影响定位精度。举例而言,在基于蓝牙的定位技术中,蓝牙信号的强度容易受到环境的干扰,例如,相同的位置下的蓝牙信号强度会随着环境的变化而变化,这就使得定位算法模型无法根据蓝牙信号强度准确获取物体位置,存在一定的误差。

为了提高定位的精度,一种方式是将实际环境中的数据映射到标准环境中,从而减少环境等因素的干扰。该映射的过程即为数据拟合,即将实际环境中的数据拟合为标准环境中的数据。在此过程中,需要借助于一组拟合参数。因此,拟合参数的优劣直接关系到最终的定位精度。

例如,假设实际环境中的一组蓝牙数据为x,元素为x

可以采用多种方式来求上述的拟合参数,例如暴力搜索的方式、简单的贪心方式、模拟退火的方式,等等。以模拟退火的方式为例,模拟退火的方式是一种随机寻优的算法,用到了物体退火的思想。即在温度较高的情况下,物体分子会呈无序状,到处游走,当温度降下来之后,分子的稳定性慢慢增加,整个物体的能量也慢慢趋于最小状态。另外,模拟退火算法的搜索过程用到了Metropolis准则,也就是以一定概率来接受一个比当前解更差的解,因此有可能跳出局部最优解,找到全局最优解。但是,模拟退火算法很容易陷入局部极值点并且无法跳出,因此,模拟退火的算法计算的拟合参数可能并不够准确。另外,模拟退火算法也存在时间开销长等问题。以下结合图1,说明模拟退火算法的一种具体实现方式。

如图1所示,是模拟退火算法的原理的流程示意图,包括:

步骤101:设置参数的步骤。设置初始温度T

步骤102:判断当前温度T

步骤103:设置i=1,j=0。其中,i是变量x的下标,变量x的初值为x

步骤104:判断j是否小于马尔可夫链的长度L。当判断结果为是时,执行步骤105,否则执行步骤114。

步骤105:利用变量的更新函数来更新变量:x

步骤106:计算目标函数的增量Δf=fm(x

步骤107:判断Δf是否大于0。当判断结果为是时,执行步骤110。否则执行步骤108。

步骤108:求概率p=exp(-Δf/(K*T

步骤109:判断概率p1是否小于概率p。当判断结果为是时,执行步骤110。其中,概率p1为一随机初始化的值,由步骤109可知,当p的值越大,其越有可能大于p1。因此,步骤109有一定概率转向到执行步骤110,即使在Δf小于0的情况,仍有一定概念接收x

步骤110,接受x

步骤111,判断fm(x

步骤112:更新最优解xb=x

步骤113:令i=i+1,j=j+1,然后执行步骤104。

步骤114:令k=k+1,且降低温度T

步骤105:输出最优解xb。

在图1中,迭代的变量只有一组,且在每次迭代时,算法只能以概率p跳出极小值点,假如方法进入了一个使概率p很小的极小值点的邻域,它就很难再跳出来。因此,图1的流程很难保证输出的最优解是真正的全局最优解。另外,在图1的流程中,为了更加容易地找到最值点,初始温度一般会被设得比较大,同时马尔可夫序列的长度会被设得较长,从而导致算法的时间开销很大。

因此,图1的实施例存在改进的必要。为此,本发明实施例提出了一种基于模拟退火算法来计算拟合参数的方法,其通过对模拟退火算法进行改进,并将其应用于拟合参数的计算中,以提高拟合参数的准确性。具体地,本发明实施例,通过设置多个分子,即多组变量,以解决模拟退火算法容易陷入极值点而难以跳出的问题。另外,通过引入并设计逃逸概率和接收概率的形式,使得分子更容易到达最小值的邻域且不容易跳出。另外,通过改进中断策略,以减少时间开销。从而使得本发明实施例能够以较短的时间计算出更准确的拟合参数。

如图2所示,是本发明的计算拟合参数的方法的实施例的流程示意图,包括:

步骤201:初始化参数的步骤,包括:初始化多个分子,每个分子至少由拟合参数和能量值组成。

步骤202:模拟退火的步骤,包括:采用模拟退火的方式,根据测试数据和目标函数模型,对多个分子进行迭代,以计算出最终的拟合参数。

其中,测试数据采集自第一环境(如,实际环境),目标函数模型(如,定位模型)为第二环境(如标准环境,即不考虑环境因素)使用的算法模型,最终的拟合参数用于将自第一环境中获取的第一数据拟合为第二环境中的第二数据,以使得算法模型能够基于第二数据实现预定功能。

本实施例通过引入了多个分子变量,从而使得如果一个分子陷入了无法跳出的极小值点,还有多个分子可以在外面寻找最小值点,所以找到最小值的概率大大增加,从而提高最终计算出的拟合参数的准确性。

为了便于理解,下面结合图3,对本发明实施例的计算拟合参数的过程进行说明。

如图3所示,是本发明的计算拟合参数的方法的实施例的流程示意图,包括:

步骤301:设置参数值的步骤,包括:设置初始温度T

步骤302:判断当前温度T

步骤303:初始化i=0。

步骤304:判断i是否小于N。若是,则执行步骤305,否则执行步骤317。

步骤305:设置m

步骤306:判断j是否小于L。若是,则执行步骤307。否则,执行步骤315。

步骤307:更新拟合参数m

步骤308:判断Δf是否小于0,若小于0,表示分子内能降低,则执行步骤309,即接受该分子内能降低。若大于0,则表示分子内能增高,执行步骤312。

步骤309:令分子向量中的m

步骤310:判断op

步骤311:更新最优解:opm=op

步骤312:求逃逸概率po=exp(-Δf/(K1*T

步骤313,判断随机概率p是否小于po*pr。若是,则执行步骤314,使下一个分子接收该逃逸分子。若否,则执行步骤316。

步骤314:令m

步骤315,令i加1,并执行步骤304。

步骤316,令j加1,并执行步骤306。

步骤317:令k=k+1,并降低温度T

步骤318:输出结果,例如输出最小值点mb和最小值opm。其中,在一些实施例中,可以不输出最小值opm,而只输出mb,输出opm可以用于比较得到的各组拟合参数的优劣。

在本实施例中,一旦分子的内能接近能量最低的状态,其很难再被其他分子干扰。从而该分子会在自己的邻域内一直迭代。但是一旦周围有内能更低的分子逃逸出来,该分子的的接收概率又会变成1。例如,从接收概率的公式可以看出来,当分子内能处于接近最低的状态,则op

另外,一旦分子找到能量更低的状态,或者逃逸的分子被接收了,该算法就直接停止马尔可夫链的循环。因此,即使可以将马尔科夫链的长度设置得比较长,时间开销也不会太大。该策略对于那些模型复杂且极值点较多,需要设置比较长的马尔科夫链的情景,有大大减少时间开销的作用。

如图4所示,是本发明的定位方法的实施例的流程示意图,该定位方法使用了前面计算的拟合参数。该定位方法主要用于车辆中,以对智能钥匙的位置进行定位。其中,在该定位方法中,智能钥匙作为信号源能够发送无线电信号,车辆在不同位置上设置了多个无线电接收器,用于接收智能钥匙发出的无线电信号,并生成第一数据,例如基于蓝牙的RSSI数据或者UWB距离数据。其中,该方法包括:步骤401:获取拟合参数。步骤402:获取第一数据。步骤403:根据拟合参数,将第一数据拟合为第二数据。步骤404:根据第二数据和预设的定位算法模型,确定所述智能钥匙的位置。

如图5所示,是本发明的计算机设备的实施例的结构示意图,该计算机设备5包括:处理器50;以及存储器52,用于存储所述处理器的可执行指令。其中,该处理器50被配置为执行可执行指令以实施根据本发明实施例的方法。

另外,本发明实施例还提供了一种计算机程序产品,包括:计算机程序,该计算机程序包括可执行指令,当该可执行指令被处理器执行时,实施根据本发明实施例的方法。

以上程序产品和设备实施例的描述,与上述方法实施例的描述是类似的,具有同方法实施例相似的有益效果。对于本申请存储介质和设备实施例中未披露的技术细节,请参照本申请方法实施例的描述来理解。

上述处理器可以为专用集成电路(Application Specific Integrated Circuit,ASIC)、数字信号处理器(Digital Signal Processor,DSP)、数字信号处理装置(DigitalSignal Processing Device,DSPD)、可编程逻辑装置(Programmable Logic Device,PLD)、现场可编程门阵列(Field Programma-ble Gate Array,FPGA)、中央处理器(CentralProcessing Unit,CPU)、控制器、微控制器、微处理器等中的至少一种。可以理解地,实现上述处理器功能的电子器件还可以为其它,本申请实施例不作具体限定。

上述计算机存储介质/存储器可以是只读存储器(Read Only Memory,ROM)、可编程只读存储器(Programmable Read-Only Memory,PROM)、可擦除可编程只读存储器(Erasable Programmable Read-Only Memory,EPROM)、电可擦除可编程只读存储器(Electrically Erasable Programmable Read-Only Memory,EEPROM)、磁性随机存取存储器(Ferromagnetic Random Access Memory,FRAM)、快闪存储器(Flash Memory)、磁表面存储器、光盘、或只读光盘(Compact Disc Read-Only Memory,CD-ROM)等存储器;也可以是包括上述存储器之一或任意组合的各种终端,如移动电话、计算机、平板设备、个人数字助理等。

应指出的是,以上描述仅为示例,而不是对本发明的限制。在本发明的其他实施例中,该方法可具有更多、更少或不同的步骤,且各步骤之间的顺序、包含和功能等关系可以与所描述和图示的不同。例如,通常多个步骤可以合并为单个步骤,单个步骤也可以拆分为多个步骤。对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,对各步骤的先后变化也在本发明的保护范围之内。

本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器或微控制器执行本发明各个实施方式所述方法的全部或部分步骤。

本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤。

虽然本发明已以较佳实施例披露如上,但本发明并非限于此。任何本领域技术人员,在不脱离本发明的精神和范围内所作的各种更动与修改,均应纳入本发明的保护范围内,因此本发明的保护范围应当以权利要求所限定的范围为准。

相关技术
  • 语音提示方法、语音提示系统、移动控制终端及语音提示设备
  • 一种导航地图中建筑模型的获取方法、装置及终端
  • 基于导航地图的信号灯提示方法、系统以及终端
  • 基于信号灯指示的地图导盲方法、系统以及导盲终端
技术分类

06120116544207