亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

一種準周期信號的預測方法和裝置與流程

文檔序號:11133560閱讀:727來源:國知局
一種準周期信號的預測方法和裝置與制造工藝

本發(fā)明涉及計算機技術領域,特別是涉及一種準周期信號的預測方法和裝置。



背景技術:

準周期信號是隨時間變化的信號,其幅值和頻率表現(xiàn)出周期函數(shù)或者準周期函數(shù)的性質。在工程界,這類信號或數(shù)據(jù)是比較普遍的,例如:某個產品的活躍用戶數(shù)在過去若干周里表現(xiàn)出近似于周期的特征,大致是周末的活躍用戶較多,工作日則較少,但每周各天的具體數(shù)值與其它周的對應天的數(shù)值不完全相同。

對準周期信號的預測具有重大意義,現(xiàn)有對準周期的預測的方法一般為:對準周期信號進行時間序列的建模,具體地,采用一個函數(shù)對采集到的信號值進行擬合,然后根據(jù)擬合得到的擬合函數(shù)來對準周期信號對準周期信號進行預測;例如可以采用一個正弦函數(shù)對準周期信號的歷史信號值x≡{x1,x2,…,xm}進行擬合,擬合得到的擬合函數(shù)為:x(t)=x0+a sin(bt+c),在擬合的過程中,求出a、b、c的具體值,如果需要預測準周期信號在未來時刻的信號值時,可以將未來時間值代入擬合函數(shù)即可得到 未來的信號值。



技術實現(xiàn)要素:

本發(fā)明實施例提供一種準周期信號的預測方法和裝置,以解決現(xiàn)有準周期信號的預測準確度不高的技術問題。

本發(fā)明實施例提供了一種準周期信號的預測方法,包括如下步驟:

獲取所述準周期信號在時域上的歷史信號值;

采用三角函數(shù)組對所述歷史信號值進行擬合,以得到擬合函數(shù),所述三角函數(shù)組由n個擬合三角函數(shù)構成,n≥2;

根據(jù)所述擬合函數(shù)獲取所述準周期信號在未來時刻的信號值。

在本發(fā)明實施例提供的預測方法中,所述采用三角函數(shù)組對所述歷史信號值進行擬合,以得到擬合函數(shù)的步驟包括:

計算擬合所需的擬合參數(shù)組,所述擬合為采用所述三角函數(shù)組對所述歷史信號值進行的擬合;所述擬合參數(shù)組包括與所述擬合三角函數(shù)對應的擬合參數(shù)單元;

根據(jù)所述擬合參數(shù)單元獲取對應的擬合三角函數(shù),以得到n個所述擬合三角函數(shù);

采用n個所述擬合三角函數(shù)構成的三角函數(shù)組對所述歷史信號值進行擬合,以得到擬合函數(shù)。

在本發(fā)明實施例提供的預測方法中,所述計算擬合參數(shù)組的步驟包括:通過n次迭代計算出n個擬合三角函數(shù)各自對應的擬合參數(shù)單元;

其中,第i次迭代過程包括:

采用預設三角函數(shù)對第i個擬合殘差進行擬合,以得到所述三角函數(shù)組中第i個擬合三角函數(shù)對應的擬合參數(shù)單元、以及第i+1個擬合殘差,1≤i≤n,所述預設三角函數(shù)與所述擬合三角函數(shù)為相同類型的三角函數(shù);

當i=1時,第一個擬合殘差為歷史信號平均值與歷史信號值之間的差值;

當i>1時,所述第i個擬合殘差為:采用預設三角函數(shù)對第i-1個擬合殘差進行擬合得到的擬合殘差。

在本發(fā)明實施例提供的預測方法中,所述擬合參數(shù)單元包括: 與所述擬合三角函數(shù)幅值對應的幅度參數(shù)、與所述擬合三角函數(shù)頻率對應的頻率參數(shù)以及與所述擬合三角函數(shù)相位對應的相位參數(shù);

所述采用預設三角函數(shù)對第i個擬合殘差進行擬合,以得到所述三角函數(shù)組中第i個擬合三角函數(shù)對應的擬合參數(shù)單元的步驟包括:

采用預設三角函數(shù)對第i個擬合殘差進行擬合,以得到所述預設三角函數(shù)對應的擬合參數(shù)單元;所述預設三角函數(shù)對應的參數(shù)單元包括:與所述預設三角函數(shù)幅值對應的第一參數(shù)、與所述預設三角函數(shù)頻率對應的第二參數(shù)以及與所述預設三角函數(shù)相位對應的第三參數(shù);

將預設三角函數(shù)對應的擬合參數(shù)單元作為所述三角函數(shù)組中第i個擬合三角函數(shù)對應的擬合參數(shù)單元。

在本發(fā)明實施例提供的預測方法中,所述采用預設三角函數(shù)對第i個擬合殘差進行擬合,以得到所述預設三角函數(shù)對應的擬合參數(shù)單元的步驟包括:

A1,在預設范圍內選取一個值作為所述第二參數(shù)的初始值;

A2,暫時選取預設閾值作為所述第一參數(shù)的值;

A3,根據(jù)所述第一參數(shù)的值和第二參數(shù)的初始值計算出所述第三參數(shù)的最佳值;

A4,根據(jù)所述第二參數(shù)的初始值和所述第三參數(shù)的最佳值計算出所述第一參數(shù)的最佳值;

A5,獲取所述第一參數(shù)的最佳值、第二參數(shù)的初始值以及第三參數(shù)的最佳值構成的預設三角函數(shù)與所述第i個擬合殘差的誤差;

A6,判斷所述誤差是否為最小誤差,若是,則執(zhí)行步驟A7,若否,則執(zhí)行步驟A8;

A7,將所述初始值作為所述第二參數(shù)的最佳值,并輸出所述第一參數(shù)、所述第二參數(shù)和所述第三參數(shù)的最佳值;

A8,從所述預設范圍內選取另一個值作為所述第二參數(shù)的初始值,返回執(zhí)行步驟A2。

在本發(fā)明實施例提供的預測方法中,所述步驟A6中判斷所述誤差是否為最小誤差的過程包括:

判斷所述誤差是否小于或等于所述預設范圍內任一第二參數(shù) 的取值,與所述第一參數(shù)的最佳值、以及第三參數(shù)的最佳值構成的三角函數(shù)與所述第i個擬合殘差的誤差;

若是,則判定所述誤差為最小誤差;若否,則判定所述誤差不為最小誤差。

在本發(fā)明實施例提供的預測方法中,所述步驟A3中根據(jù)所述第一參數(shù)的值和第二參數(shù)的初始值計算出所述第三參數(shù)的最佳值的過程包括:

選取三個不相同的預設相位值分別作為所述第三參數(shù)的第一初始值、第二初始值和第三初始值,以得到第一參數(shù)值組,第二參數(shù)值組合第三參數(shù)值組,所述第一參數(shù)值組包括:第一參數(shù)的值、第二參數(shù)的初始值、以及一個第三參數(shù)的第一初始值,所述第二參數(shù)組包括:第一參數(shù)的值、第二參數(shù)的初始值、以及一個第三參數(shù)的第二初始值;所述第三參數(shù)值組包括第一參數(shù)的值、第二參數(shù)的初始值、以及一個第三參數(shù)的第三初始值;

獲取與第一參數(shù)值組對應的第一三角函數(shù)、與第二參數(shù)值組對應的第二三角函數(shù)、與第三參數(shù)值組對應的第三三角函數(shù),并計算所述第一三角函數(shù)、第二三角函數(shù)、第三三角函數(shù)分別與所述殘差的誤差值,以得到第一誤差值、第二誤差值和第三誤差值;

獲取由第一參數(shù)值對、第二參數(shù)值對以及第三參數(shù)值對確定的三角函數(shù),所述第一參數(shù)值對包括所述第一初始值和所述第一誤差值,所述第二參數(shù)值對包括所述第二初始值和所述第二誤差值,所述第三參數(shù)值包括所述第三初始值和所述第三誤差值;

根據(jù)所述第一參數(shù)值對、所述第二參數(shù)值對、所述第三參數(shù)值對和所述確定的三角函數(shù)計算出所述第三參數(shù)的最佳值。

在本發(fā)明實施例提供的預測方法中,所述誤差值為均方誤差值或者均方根誤差值。

在本發(fā)明實施例提供的預測方法中,所述步驟A4中根據(jù)所述第二參數(shù)的初始值和所述第三參數(shù)的最佳值計算出所述第一參數(shù)的最佳值的過程包括:

根據(jù)所述第二參數(shù)的初始值和所述第三參數(shù)的最佳值對應的三角函數(shù)對所述第i個擬合殘差進行擬合,以得到殘差擬合函數(shù);

對所述殘差擬合函數(shù)采用最小二乘法,或者對所述殘差擬合函數(shù)采用一維線性搜索的方式,以得到第一參數(shù)的最佳值。

在本發(fā)明實施例提供的預測方法中,所述預設相位值為圓周率的倍數(shù)。

在本發(fā)明實施例提供的預測方法中,在所述預設范圍內取值 的方式包括:按照數(shù)值遞增規(guī)則在預設范圍內取值;或者采用二分法在預設范圍內取值。

在本發(fā)明實施例提供的預測方法中,所述三角函數(shù)組由n個正弦函數(shù)或者n個余弦函數(shù)構成。

在本發(fā)明實施例提供的預測方法中,所述獲取所述準周期信號在時域上的歷史信號值的步驟包括:

獲取所述準周期信號在時域上等距分布的歷史信號值。

本發(fā)明實施例還提供了一種準周期信號的預測裝置,包括:信號值獲取模塊、擬合模塊和信號值預測模塊;

所述信號值獲取模塊,用于獲取所述準周期信號在時域上的歷史信號值;

所述擬合模塊,用于

采用三角函數(shù)組對所述歷史信號值進行擬合,以得到擬合函數(shù),所述三角函數(shù)組由n個擬合三角函數(shù)構成,n≥2;

信號值預測模塊,用于根據(jù)所述擬合函數(shù)獲取所述準周期信號在未來時刻的信號值。

在本發(fā)明實施例提供的預測裝置中,所述擬合模塊,用于:

計算擬合所需的擬合參數(shù)組,所述擬合為采用所述三角函數(shù)組對所述歷史信號值進行的擬合;所述擬合參數(shù)組包括與所述擬合三角函數(shù)對應的擬合參數(shù)單元;

根據(jù)所述擬合參數(shù)單元獲取對應的擬合三角函數(shù),以得到n個所述擬合三角函數(shù);

采用n個所述擬合三角函數(shù)構成的三角函數(shù)組對所述歷史信號值進行擬合,以得到擬合函數(shù)。

在本發(fā)明實施例提供的預測裝置中,所述擬合模塊包括:迭代運算模塊、函數(shù)獲取模塊和函數(shù)擬合模塊;

所述迭代運算模塊,用于,通過n次迭代計算出n個擬合三角函數(shù)各自對應的擬合參數(shù)單元;其中第i次迭代過程包括:

采用預設三角函數(shù)對第i個擬合殘差進行擬合,以得到所述三角函數(shù)組中第i個擬合三角函數(shù)對應的擬合參數(shù)單元、以及第i+1個擬合殘差,1≤i≤n,所述預設三角函數(shù)與所述擬合三角函數(shù)為相同類型的三角函數(shù);

當i=1時,第一個擬合殘差為歷史信號平均值與歷史信號值之間的差值;

當i>1時,所述第i個擬合殘差為:采用預設三角函數(shù)對第i-1個擬合殘差進行擬合得到的擬合殘差;

所述函數(shù)獲取模塊,用于根據(jù)所述擬合參數(shù)單元獲取對應的擬合三角函數(shù),以得到n個所述擬合三角函數(shù);

所述函數(shù)擬合模塊,用于采用n個所述擬合三角函數(shù)構成的三角函數(shù)組對所述歷史信號值進行擬合,以得到擬合函數(shù)。

本發(fā)明實施例一種準周期信號的預測方法和裝置,本發(fā)明提供的準周期信號的預測方法,包括:獲取所述準周期信號在時域上的歷史信號值;采用三角函數(shù)組對所述歷史信號值進行擬合,以得到擬合函數(shù),所述三角函數(shù)組由n個擬合三角函數(shù)構成,n≥2;根據(jù)所述擬合函數(shù)獲取所述準周期信號在未來時刻的信號值;由本發(fā)明的方法內容可知,本發(fā)明預測方法采用一組三角函數(shù)對準周期信號的歷史信號值進行擬合,相比現(xiàn)有技術采用一個函數(shù)對準周期信號進行擬合,本發(fā)明預測方法可以提高擬合精度,進而提高對準周期信號的未來信號值進行預測的準確性。

進一步地,本發(fā)明提供的預測方法采用預設三角函數(shù)對殘差進行擬合得到對歷史信號值擬合所需的擬合參數(shù)組,計算計算復 雜度小,計算復雜度僅僅是問題規(guī)模的線性量級,可以大大減少對信號預測的計算量,進而提高了對準周期信號進行預測的速度。

附圖說明

為了更清楚地說明本發(fā)明實施例中的技術方案,下面將對實施例描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實施例,對于本領域技術人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù)這些附圖獲得其他的附圖。

圖1為本發(fā)明實施例提供的一種準周期信號的預測方法的流程示意圖;

圖2為本發(fā)明實施例一提供的一種計算擬合參數(shù)的流程示意圖;

圖3為本發(fā)明實施例一提供的一次迭代過程的流程示意圖;

圖4為本發(fā)明實施例一提供的一種正弦函數(shù)曲線的示意圖;

圖5為本發(fā)明實施例二提供的一種準周期信號的預測裝置的結構示意圖;

圖6為本發(fā)明實施例二提供的另一種準周期信號的預測裝置的結構示意圖。

具體實施方式

下面將結合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本發(fā)明一部分實施例,而不是全部的實施例?;诒景l(fā)明中的實施例,本領域技術人員在沒有作出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都屬于本發(fā)明保護的范圍。

本發(fā)明實施例提供一種準周期信號的預測方法和裝置。以下將分別進行詳細說明。

實施例一:

本實施例提供了一種準周期信號的預測方法,如圖1所示,包括如下步驟:

步驟S101,獲取所述準周期信號在時域上的歷史信號值。

本實施例中準周期信號在時域上的歷史信號值可以為一組歷史信號值,例如歷史信號值為x≡{x1,x2,…,xm},其中m表示已知的歷史信號值的個數(shù)。

優(yōu)選地,本實施例中可以獲取準周期信號在時域上等距分布的歷史信號值。

步驟S102,采用三角函數(shù)組對所述歷史信號值進行擬合,以得到擬合函數(shù),所述三角函數(shù)組由n個擬合三角函數(shù)構成,n≥2。

優(yōu)選地,本實施例中擬合三角函數(shù)為正弦函數(shù)或者余弦函數(shù)。

本步驟具體可以包括:

計算擬合所需的擬合參數(shù)組,所述擬合為采用所述三角函數(shù)組對所述歷史信號值進行的擬合;,所述擬合參數(shù)組包括與所述擬合三角函數(shù)對應的擬合參數(shù)單元;

根據(jù)所述擬合參數(shù)單元獲取對應的擬合三角函數(shù),以得到n個所述擬合三角函數(shù);

采用n個所述擬合三角函數(shù)構成的三角函數(shù)組對所述歷史信號值進行擬合,以得到擬合函數(shù)。

例如在歷史信號值為x≡{x1,x2,…,xm}情況下,如果需要預測未來f個時刻的信號值xm+1,xm+2,…,xm+f;本實施例需要先用由n個三角函數(shù)構成的三角函數(shù)組對歷史信號值x進行擬合,得到擬合函數(shù),取擬合函數(shù)中自變量t=m+1,m+2,…,m+f,得到未來f個時刻的信號預測值xm+1,xm+2,…,xm+f;其中用來對歷史信號值進行擬合的三角函數(shù)稱為擬合三角函數(shù);然而要得到具體的擬合函數(shù),必須要計算出n個三角函數(shù)各自對應的n個擬合參數(shù)單元,也就是說要確定組成三角函數(shù)組的每個具體地三角函數(shù)才可以得到具體的擬合函數(shù)完成擬合,在本實施例中n個擬合參數(shù)單元組成擬合參數(shù)組。

具體地,本實施例中擬合三角函數(shù)對應的擬合參數(shù)單元包括:與所述擬合三角函數(shù)幅值對應的幅度參數(shù)、與所述擬合三角函數(shù)頻率對應的頻率參數(shù)以及與所述擬合三角函數(shù)相位對應的相位參數(shù)。

步驟S103,根據(jù)所述擬合函數(shù)獲取所述準周期信號在未來時刻的信號值。

在得到擬合函數(shù)后,可以將未來時間值代入擬合函數(shù)即可計算出對應的信號值,該信號值為預測信號值。

本實施例提供的預測方法采用一組三角函數(shù)對準周期信號的歷史信號值進行擬合,相比現(xiàn)有技術采用一個函數(shù)對準周期信號進行擬合,本發(fā)明預測方法可以提高擬合精度,進而提高對準周期信號的未來信號值進行預測的準確性。

本實施例預測方法是通過一組三角函數(shù)對準周期信號進行擬合,基于該擬合可以得到未來時刻的預測值,然而,采用一組三角函數(shù)對準周期進行擬合,必須需要計算出擬合參數(shù)才能完成擬合;計算擬合參數(shù)的方式有多種,不同的方式對應的計算復雜度不相同,有的計算復雜度高,有的計算復雜低,而計算復雜度高低決定著對準周期信號預測速度的快慢。

優(yōu)選地,本實施例介紹一種計算擬合參數(shù)的方案,該方案計 算復雜度低,可以提高對準周期信號預測的速度。具體地,如圖2所示,本實施例中采用所述三角函數(shù)組對所述歷史信號值進行擬合時所需的擬合參數(shù)組的過程包括:通過n次迭代計算出n個擬合三角函數(shù)各自對應的擬合參數(shù)單元;

其中,第i次迭代過程包括:

采用預設三角函數(shù)對第i個擬合殘差進行擬合,以得到所述三角函數(shù)組中第i個擬合三角函數(shù)對應的擬合參數(shù)單元、以及第i+1個擬合殘差,1≤i≤n,所述預設三角函數(shù)與所述擬合三角函數(shù)為相同類型的三角函數(shù);

當i=1時,第一個擬合殘差為歷史信號平均值與歷史信號值之間的差值;

當i>1時,所述第i個擬合殘差為:采用預設三角函數(shù)對第i-1個擬合殘差進行擬合得到的擬合殘差。

本實施例中第一個擬合殘差為歷史信號平均值與歷史信號值之間的一組差值,可稱為初始殘差;例如x-x0;x為準周期信號的歷史信號值序列,x0為x的信號平均值。下面具體介紹一次迭代過程,即所述采用預設三角函數(shù)對第i個擬合殘差進行擬合, 以得到所述三角函數(shù)組中第i個擬合三角函數(shù)對應的擬合參數(shù)單元的步驟,其包括如下過程,如圖2所示:

步驟S201,采用預設三角函數(shù)對第i個擬合殘差進行擬合,以得到所述預設三角函數(shù)對應的擬合參數(shù)單元;

所述預設三角函數(shù)對應的參數(shù)單元包括:與所述預設三角函數(shù)幅值對應的第一參數(shù)、與所述預設三角函數(shù)頻率對應的第二參數(shù)以及與所述預設三角函數(shù)相位對應的第三參數(shù)。

步驟S201具體包括:通過i次迭代計算出第i個擬合三角函數(shù)對應的擬合參數(shù)單元,具體迭代過程,如圖3所示,包括如下步驟如下:

A1,在預設范圍內選取一個值作為所述第二參數(shù)的初始值。

設第一參數(shù)為a、第二參數(shù)為b,第三參數(shù)為c;

步驟A1中的b的取值范圍即預設范圍可以為[bmin,bmax]≡[π/(2m),π];當然,b的取值范圍不僅限于[bmin,bmax],還可以在此基礎上適當縮小或者擴大。

步驟A1是一個在預設范圍內試探性取一個b值,該b值為b 的初始值;具體地本步驟可以按照數(shù)值遞增規(guī)則在預設范圍內取值,例如將[bmin,bmax]等分成很多格(例如s=1000格),然后逐次地試取b=bmin,,bmin,+(bmax-bmin,)*1/s,[bmin+(bmax-bmin)*2/s,…,bmax。另外,為了加快取值速度,本實施例還可以采用二分法在b的取值范圍內取值,。

A2,暫時選取預設閾值作為所述第一參數(shù)的值。

具體地,可以取a為某個常數(shù),例如為1,a的這個取值不影響后續(xù)c值的計算。

A3,根據(jù)所述第一參數(shù)的值和第二參數(shù)的初始值計算出所述第三參數(shù)的最佳值。

步驟A3是根據(jù)上述第一參數(shù)的值和第二參數(shù)初始值求得第三參數(shù)的最佳值;具體可以按照如步驟求得第三參數(shù)的最佳值;

選取三個不相同的預設相位值分別作為所述第三參數(shù)的第一初始值、第二初始值和第三初始值,以得到第一參數(shù)值組,第二參數(shù)值組合第三參數(shù)值組,所述第一參數(shù)值組包括:第一參數(shù)的值、第二參數(shù)的初始值、以及一個第三參數(shù)的第一初始值,所述第二參數(shù)組包括:第一參數(shù)的值、第二參數(shù)的初始值、以及一個 第三參數(shù)的第二初始值;所述第三參數(shù)值組包括第一參數(shù)的值、第二參數(shù)的初始值、以及一個第三參數(shù)的第三初始值;

獲取與第一參數(shù)值組對應的第一三角函數(shù)、與第二參數(shù)值組對應的第二三角函數(shù)、與第三參數(shù)值組對應的第三三角函數(shù),并計算所述第一三角函數(shù)、第二三角函數(shù)、第三三角函數(shù)分別與所述殘差的誤差值,以得到第一誤差值、第二誤差值和第三誤差值;

獲取由第一參數(shù)值對、第二參數(shù)值對以及第三參數(shù)值對確定的三角函數(shù),所述第一參數(shù)值對包括所述第一初始值和所述第一誤差值,所述第二參數(shù)值對包括所述第二初始值和所述第二誤差值,所述第三參數(shù)值包括所述第三初始值和所述第三誤差值;

根據(jù)所述第一參數(shù)值對、第二參數(shù)值對、第三參數(shù)值對和所述確定的三角函數(shù)計算出所述第三參數(shù)的最佳值。

優(yōu)選地,為了進一步加快計算速度,本實施例中預設相位值可以為圓周率π的倍數(shù),該倍數(shù)可以為整數(shù)倍或者非整數(shù)倍,例如預設相位值可以為π或者π/2。

例如,記第三參數(shù)c的最佳值為c*,在已知a、b的條件下,為了求最合適的c值c*,可先取3個c值(例如,分別為c1=0、 c2=π/2、c3=π),得到由(a、b、c1)、(a、b、c2)、(a、b、c3)這三個參數(shù)值對,然后分別獲取由這三個參數(shù)值分別確定或者構成的三個三角函數(shù),該三角函數(shù)的類型與擬合三角函數(shù)的類型相同;

計算這三個三角函數(shù)分別與第i個擬合殘差之間的誤差值,得到第一誤差值e1、第二誤差值e2、第三誤差值e3;本實施例中誤差值可以為均方誤差值MSE或者均方根誤差值RMSE;不難證明,e也是c的三角函數(shù),因此,(c1,e1)、(c2,e2)、(c3,e3)對應的三個點均在這個三角函數(shù)對應曲線上,通過設定這個三角函數(shù)表達式,然后將(c1,e1)、(c2,e2)、(c3,e3)代入三角函數(shù)表達式來解決出c*。

A4,根據(jù)所述第二參數(shù)的初始值和所述第三參數(shù)的最佳值計算出所述第一參數(shù)的最佳值。

具體地,根據(jù)所述第二參數(shù)的初始值和所述第三參數(shù)的最佳值對應的三角函數(shù)對所述第i個擬合殘差進行擬合,以得到殘差擬合函數(shù);然后,對所述殘差擬合函數(shù)采用最小二乘法,或者對所述殘差擬合函數(shù)采用一維線性搜索的方式,以得到第一參數(shù)的最佳值。

在已知b、c*的情況下,可以采用最小二乘法或者以為線性搜索的方式,求得a的最佳值,記為a*。

A5,獲取所述第一參數(shù)的最佳值、第二參數(shù)的初始值以及第三參數(shù)的最佳值構成的三角函數(shù)與所述第i個擬合殘差的誤差。

在已知a*和c*的情況下,還得獲取b的最佳值,記為b*。本實施例采用最小誤差原則來確定從預設范圍內取值的b值是否為最佳值;

具體地,先獲取a*、b、c*對應的或者構成的預設三角函數(shù)與第i個擬合殘差的誤差;然后判斷該誤差是否為最小誤差,若是,將當前b的取值作為b*輸出,若否,則在預設范圍內選取另一個值作為b的取值,返回步驟A2。

A6,判斷所述誤差是否為最小誤差,若是,則執(zhí)行步驟A7,若否,則執(zhí)行步驟A8。

具體地,判斷所述誤差是否為最小誤差的過程可以包括:

判斷所述誤差是否小于或等于所述預設范圍內任一第二參數(shù)的取值,與所述第一參數(shù)的最佳值、以及第三參數(shù)的最佳值構成的三角函數(shù)與所述第i個擬合殘差的誤差;

若是,則判定所述誤差為最小誤差;若否,則判定所述誤差不為最小誤差。

也就是說預設范圍內所有b的取值、與a*、c*構成的三角函數(shù)與第i個擬合殘差的誤差均大于當前計算出的誤差。

A7,將所述初始值作為所述第二參數(shù)的最佳值,并輸出所述第一參數(shù)、所述第二參數(shù)和所述第三參數(shù)的最佳值。

具體地,將當前b的取值作為b*輸出,并輸出a*、c*。

A8,從所述預設范圍內選取另一個值作為所述第二參數(shù)的初始值,返回執(zhí)行步驟A2。

步驟S202,將預設三角函數(shù)對應的擬合參數(shù)單元作為所述三角函數(shù)組中第i個擬合三角函數(shù)對應的擬合參數(shù)單元。

具體地將預設三角函數(shù)的第一參數(shù)作為組成三角函數(shù)組的第i個擬合三角函數(shù)的幅值參數(shù),將預設三角函數(shù)的第二參數(shù)作為組成三角函數(shù)組的第i個擬合三角函數(shù)的頻率參數(shù),將預設三角函數(shù)的第三參數(shù)作為組成三角函數(shù)組的第i個擬合三角函數(shù)的相位參數(shù)。

此時,與第i個擬合三角函數(shù)對應的擬合參數(shù)單元確定,因此,第i個擬合三角函數(shù)是確定的。

下面以一個正弦函數(shù)組對一組準周期信號的歷史信號值進行擬合為例,來詳細介紹本實施例的準周期信號的預測方法。

記準周期信號在時域上等距分布的歷史信號值為x≡{x1,x2,…,xm},其中m表示已知的歷史信號值的個數(shù);現(xiàn)在需要預測f個信號值xm+1,xm+2,…,xm+f。首先,如果需要用n個正弦函數(shù)來對x擬合的話,就需要就計算出擬合參數(shù),也即各正弦函數(shù)的參數(shù);如下為用未知參數(shù)的一組正弦函數(shù)對x擬合得到的擬合函數(shù)的表達式:

其中t=1,…,m,x0是一個常數(shù)項(取為x的均值),ai、bi、ci是待求參數(shù),ai是正弦函數(shù)i的幅值,bi是正弦函數(shù)i的頻率或者頻率的1/(2π)倍,ci是正弦函數(shù)i的相位,1≤i≤n。

由于上述擬合函數(shù)具有未知參數(shù),無法實現(xiàn)對未來信號的值預測,因此,就需要計算出擬合參數(shù)組,也即n個正弦函數(shù)對應的擬合參數(shù)單元,第i個正弦函數(shù)的擬合參數(shù)單元包括ai、bi、ci

本實施例采用n次迭代來計算n個正弦函數(shù)的擬合參數(shù)單元值,具體地,即先用第一條正弦曲線對x-x0(也稱為初始殘差z(0))進行擬合,得到擬合參數(shù)a1、b1、c1及擬合殘差z(1)≡x-x0-a1sin(b1t+c1);然后對z(1)用第二條正弦曲線進行擬合,得到擬合參數(shù)a2、b2、c2及擬的殘差z(2)≡z(1)-a2sin(b2t+c2);然后對z(2)用第三條正弦曲線進行擬合,…;依次進行,直到第n條正弦曲線擬合完成,得到擬合參數(shù)an、bn、cn。然后對上式取t=m+1,m+2,…,m+f,得到未來f個時刻的信號預測值xm+1,xm+2,…,xm+f

上述一次迭代過程,即當用一條正弦曲線a sin(bt+c)來擬合殘差z時,如何求得參數(shù)a、b、c的步驟如下:

第一步:先試探性地取一個b值。

首先確定一個b的取值范圍,例如[bmin,bmax]≡[π/(2m),π]。本實施例還可以將b的取值范圍等分成很多格,然后按預設格數(shù)遞增取值,例如將[bmin,bmax]等分成多格(例如s=1000格),然后逐次地試取b=bmin,,bmin,+(bmax-bmin,)*1/s,[bmin+(bmax-bmin)*2/s,…,bmax,即下一次b的取值比上一次b的取值大一格對應的數(shù)值。

第二步:暫時固定a為某個值。

具體地,取a為某個常數(shù),例如1。事實上,a的這個取值不影響后續(xù)c值的計算。

第三步:根據(jù)a、b值,求得最合適的c值,記為c*。

在已知a、b的條件下,為了求最合適的c值c*,可先取3個c值(例如,分別為c1=0、c2=π/2、c3=π),得到由(a、b、c1)、(a、b、c2)、(a、b、c3)構成的3條正弦曲線,它們與殘差z的誤差值(用MSE表達)分別記為e1、e2、e3。如4圖所示,不難證明,e也是c的正弦函數(shù),因此上圖中的3個點在同一條正弦曲線上。根據(jù)3個點可以唯一地確定這條正弦曲線。設該條正弦曲線的形式為:

e=u+v*sin(c-c*-π/2)

其中u、v、c*為待求參數(shù),且c*對應的e*就是正弦曲線的最低點。將3個c值分別代入上式,并略加整理,得到

e1=u-v*cos(c*)

e2=u-v*sin(c*)

e3=u+v*sin(c*)

從中不難解得:c*=arctg((e2-u)/(e1-u))。

第四步:根據(jù)b、c*,求得最合適的a值,記為a*。

在知道b、c*的情況下,即可用最小二乘法,參考以下公式:

求得最合適的a值,即a*。具體做法:可令求解由此形成的一元線性方程即可。第五步:如果a*、b、c*構成的該正弦曲線與殘差的誤差達到了所有可能b值中能對應的正弦曲線與殘差的誤差的最小誤差,則記b為b*,輸出a*、b*、c*,該輪迭代結束;否則,改變b值,再重復上述第二至五步。

本實施例提供的計算擬合參數(shù)的方案其計算復雜度僅為O(mnp),具有良好的線性可擴展性。

例如采用n個正弦函數(shù)組成的三角函數(shù)組擬合,得到擬合函數(shù),表達式為:

其中t=1,…,m,x0是一個常數(shù)項(取為x的均值),ai、bi、ci是待求參數(shù),ai是正弦函數(shù)i的幅值,bi是正弦函數(shù)i的頻率,ci是正弦函數(shù)i的相位。

由上可知,要知道具體的擬合函數(shù)來進行信號值預測,必須 先要計算出參數(shù)ai、bi、ci具體的值,本實施例中ai、bi、ci組成一個第i個正弦函數(shù)對應的擬合參數(shù)單元,例如a1、b1、c1組成了第一個正弦函數(shù)對應的擬合參數(shù)單元;本實施例中n個正弦函數(shù)對應的n個擬合參數(shù)單元組成了擬合參數(shù)組,例如擬合參數(shù)組包括:(a1、b1、c1)……(an、bn、cn)。

本實施例主要以一組正弦函數(shù)擬合為例來介紹本實施例的預測方法,對于以一組余弦函數(shù)擬合進行預測的過程與上述以一組正弦函數(shù)擬合進行預測的過程類似,可以參考上述內容,這里就不在贅述。

實施例二:

本實施例提供了一種準周期信號的預測裝置,如圖5所示,包括信號值獲取模塊501、擬合模塊502和預測模塊503;

所述信號值獲取模塊501,用于獲取所述準周期信號在時域上的歷史信號值;

所述擬合模塊502,用于

采用三角函數(shù)組對所述歷史信號值進行擬合,以得到擬合函數(shù),所述三角函數(shù)組由n個擬合三角函數(shù)構成,n≥2;

信號值預測模塊503,用于根據(jù)所述擬合函數(shù)獲取所述準周期信號在未來時刻的信號值。

優(yōu)選地,本實施例中擬合模塊502,具體用于:

計算擬合所需的擬合參數(shù)組,所述擬合為采用所述三角函數(shù)組對所述歷史信號值進行的擬合;所述擬合參數(shù)組包括與所述擬合三角函數(shù)對應的擬合參數(shù)單元;

根據(jù)所述擬合參數(shù)單元獲取對應的擬合三角函數(shù),以得到n個所述擬合三角函數(shù);

采用n個所述擬合三角函數(shù)構成的三角函數(shù)組對所述歷史信號值進行擬合,以得到擬合函數(shù)。

本實施例提供的預測裝置可以采用一組三角函數(shù)對準周期信號的歷史信號值進行擬合,相比現(xiàn)有技術采用一個函數(shù)對準周期信號進行擬合,本發(fā)明預測方法可以提高擬合精度,進而提高對準周期信號的未來信號值進行預測的準確性。

為了減少擬合參數(shù)計算的復雜度,以提高對準周期信號預測的速度,本實施例提供了一種快速計算擬合參數(shù)的方法,具體地,如圖6所示,本實施例預測裝置中擬合模塊502可以包括:迭代 運算模塊5021、函數(shù)獲取模塊5022和函數(shù)擬合模塊5023;

所述迭代運算模塊5021,用于,通過n次迭代計算出n個擬合三角函數(shù)各自對應的擬合參數(shù)單元;其中第i次迭代過程包括:

采用預設三角函數(shù)對第i個擬合殘差進行擬合,以得到所述三角函數(shù)組中第i個擬合三角函數(shù)對應的擬合參數(shù)單元、以及第i+1個擬合殘差,1≤i≤n,所述預設三角函數(shù)與所述擬合三角函數(shù)為相同類型的三角函數(shù);

當i=1時,第一個擬合殘差為歷史信號平均值與歷史信號值之間的差值;

當i>1時,所述第i個擬合殘差為:采用預設三角函數(shù)對第i-1個擬合殘差進行擬合得到的擬合殘差;

所述函數(shù)獲取模塊5022,用于根據(jù)所述擬合參數(shù)單元獲取對應的擬合三角函數(shù),以得到n個所述擬合三角函數(shù);

所述函數(shù)擬合模塊5023,用于采用n個所述擬合三角函數(shù)構成的三角函數(shù)組對所述歷史信號值進行擬合,以得到擬合函數(shù)。

本實施例提供的預測裝置采用預設三角函數(shù)對殘差進行擬合得到對歷史信號值擬合所需的擬合參數(shù)組,計算計算復雜度小, 計算復雜度僅僅是問題規(guī)模的線性量級,可以大大減少對信號預測的計算量,進而提高了對準周期信號進行預測的速度。

本實施例中準周期信號的預測裝置可以應用于計算機、服務器等設備中,本實施例預測裝置可以適用所有具有運行功能的設備,應用廣泛。

本領域普通技術人員可以理解上述實施例的各種方法中的全部或部分步驟是可以通過程序來指令相關的硬件來完成,該程序可以存儲于一計算機可讀存儲介質中,存儲介質可以包括:只讀存儲器(ROM,Read Only Memory)、隨機存取記憶體(RAM,Random Access Memory)、磁盤或光盤等。

以上對本發(fā)明實施例所提供的一種準周期信號的預測方法和裝置進行了詳細介紹,本文中應用了具體個例對本發(fā)明的原理及實施方式進行了闡述,以上實施例的說明只是用于幫助理解本發(fā)明的方法及其核心思想;同時,對于本領域的技術人員,依據(jù)本發(fā)明的思想,在具體實施方式及應用范圍上均會有改變之處,綜上所述,本說明書內容不應理解為對本發(fā)明的限制。

當前第1頁1 2 3 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1