302 グレイ法予測プログラム

  • 印刷

グレイ法予測プログラムは、過去の数値データ(時系列データ)を基に、それに続く数値をグレイ法(灰色理論)により数値予測するときに使用します。


サンプルデータ

データA・B2種類について、数値予測を行います。
それぞれ時系列データであるとご理解ください。

なお基データのデータ個数(ケース数)は、最低3個必要です。


設定画面

アドイン接続後、メニューから「グレイ予測」をクリックすると、次のように設定画面が表示されます。

データAの場合:

データBの場合:

データの範囲:

データラベルを含まず、基データについてマウスでドラッグして、範囲選択をします。
上のサンプルデータでは、青色に塗られた部分を範囲選択します。
なおデータの個数は最大100個です。
予測出力を3個にする場合、基データが100個あると正常に予測値が出力されないことがあり、99個までにする必要があります。

予測数:

予測を出力させたい個数を半角数字で指定します。指定できるのは1個先・2個先・3個先のいずれかのみです。

データの方向:

行方向: ↓    列方向: →

設定が済んだら、「開始」ボタンをクリックします。
基データとして範囲選択をした次の位置から、赤色で予測値を出力します。
「中止」ボタンをクリックすると、操作を中止します。


出力結果

左側は予測値の出力を1個にした場合、右側は予測値の出力を3個にした場合の出力結果です。


参考

このプログラムのグレイ法による予測の考え方は以下の通りです。

データ列=X(i)に対し、以下の定義を行います。

Y(i)=データ列X(i)の累積データ列
B行列として、B(i,1)=-0.5*(Y(i)+Y(i+1)) 、B(i,2)=1を設定
Z(k)=X(k+1)
C行列:Bの転置行列、 D行列:Bの転置行列*B行列
G行列:(C*B)の逆行列

以上の定義から、G*C*Zを計算します。

その結果、Aベクトルが求まりますので、これを a=A(0)、u=A(1)とします。
グレイ法では、累積データの予測値を W(k+1)=(X(1)-u/a)*exp(-a*k)+u/a  
と定義しています。

従って、累積データの予測値W を用いて、データ列X(k+1)を予測します。

即ち、X(k+1)=W(k+1)-W(k) が予測値となります。

以上の予測手順を具体的なデータで以下説明します。

となります。次にAベクトルを求めるのに必要なG行列を計算します。
G行列は、Bの転置行列とB行列の乗算で得られるD行列の、逆行列です。

そこで、A=G*C*Zですから、行列Aが次の通り得られます。

最終的な予測値は次の通りです。

参考著書:

灰色理論による予測と意思決定」(日本理工出版会・刊)
Excelで学ぶ時系列分析と予測」(オーム社・刊) 上田太一郎・監修


アドインプログラム販売価格: ¥3,000.-(税込) 
※販売のみを行っております。ご質問対応等のサポート及び改変は承っておりません

ご注文はこちらから。別途、注文フォームが開きます。


VBAソースコード販売価格: ¥80,000.-(税込)
※コードの内容は、上記標準版の内容の通りです
※サポート・ご質問の対応・改変のご依頼を承ることはできかねます

VBAソースコードのご注文はこちら


デモンストレーション用 Excel形式マクロファイル ダウンロード