説明

予測装置及び予測方法並びにプログラム

【課題】 過去の時系列データから傾向の異なるデータを除いた期間を参照して、精度良く将来のデータを予測することができる予測装置及び予測方法並びにプログラムを提供する。
【解決手段】 境界サイクル設定部110により、所定サイクル単位でデータ構成された過去の時系列データからデータ傾向が変化するサイクルを境界サイクルとして設定する。そして、将来のデータの予測に際して参照される所定の参照期間内に当該境界サイクルが含まれている場合、参照期間補正部120は、その参照期間を境界サイクル以降の期間で構成される新たな参照期間に補正する。そして、予測実行部140は、補正された新たな参照期間を参照して所定の予測モデルを用いて将来のデータを予測する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、過去の需要量に関する時系列データから将来の需要量を予測する予測装置及び予測方法並びにプログラムに関する。
【背景技術】
【0002】
従来から、時系列予測モデル等を用いて、過去の需要量に関する時系列データから将来の需要量を予測する際には、指定された過去の時系列データの参照期間数に基づいて参照する期間の時系列データを取得する。そして、取得した当該参照期間の過去の実績データをもとにして将来の需要量の予測量を算出する(非特許文献1参照)。ここで、参照期間とは、直近データから、参照される期間数分を遡った期間とし、予測を実行する時期により参照期間は異なる。
【0003】
また、時系列データには、通常、様々な外因(ノイズ)が含まれているため、それらの外因により予測精度が悪化することがある。そこで、時系列データから突発的要因による異常値を抽出・補正して、補正済みの時系列データを作成した後、補正済み時系列データをもとに予測量を算出する方法が知られている(特許文献1、2参照)。
【非特許文献1】大村 平著、「予測のはなし」、日科技連
【特許文献1】特開平7−64965号公報
【特許文献2】特開2003−346070号公報
【発明の開示】
【発明が解決しようとする課題】
【0004】
しかしながら、過去の時系列データを参照して将来の予測量を予測モデルを用いて予測する際に、参照される過去の時系列データには、商品の発売前や、商品発売直後等の傾向が不安定な期間、景気の影響等による傾向が異なる期間等が存在する場合がある。例えば、時系列データの傾向の変化があった後に、変化前の期間を含む時系列データを参照して予測すると、傾向が異なる期間の影響を受けて予測の精度が悪くなってしまう。
【0005】
そこで、傾向が異なる期間を出来るだけ参照しないように、ユーザが参照期間数を調整する必要がある。すなわち、予測に際して参照される期間に傾向が異なる期間を含まないように、参照期間数を設定するようにする。また、時間が経過して時系列データが増加していくにつれて、傾向の異なる期間が直近から過去に推移し、同時に、当該直近と同じ傾向の期間が増えていくこととなる。従って、参照期間数を徐々に長く取ることができるようになる。そのため、より精度良く将来のデータ予測を行うためには、あるタイミングにおいてユーザが参照期間数を任意の期間に設定し直す必要がある。
【0006】
しかし、対象アイテム(商品)の数が多い場合、一アイテムずつ参照期間数を管理することは作業量が膨大となり困難である。このことは、上記特許文献1、2及び非特許文献1に記載のどの技術を用いた場合においても同様である。上記特許文献1、2は、時系列データから異常値等を除去して補正する技術ではあるが、当該補正は、部分的に散在する異常値に対する補正であり、傾向の変化には対応できないという問題は解消されない。
【0007】
本発明は、このような事情を考慮してなされたものであり、過去の時系列データから傾向の異なるデータを除いた期間を参照して、精度良く将来のデータを予測することができる予測装置及び予測方法並びにプログラムを提供することを目的とする。
【課題を解決するための手段】
【0008】
上記課題を解決するために、本発明は、所定サイクル単位でデータ構成された過去の時系列データから所定のサイクル数を参照期間として将来のデータを予測する予測装置であって、
前記過去の時系列データにおいてデータ傾向が変化するサイクルを境界サイクルとして設定する境界設定手段と、
将来のデータの予測に際して参照される所定の参照期間内に前記境界サイクルより前のサイクルが含まれているか否かを判定する第1の判定手段と、
前記参照期間内に前記過去の時系列データにおいてデータ傾向が変化する前のサイクルが含まれている場合、前記境界サイクルに基づいて、該参照期間を前記過去の時系列データにおいてデータ傾向が変化した後のサイクル数である新たな参照期間に補正する参照期間補正手段と、
前記参照期間補正手段で参照期間が補正された場合、補正された前記新たな参照期間内の時系列データを参照して所定の予測モデルを用いて将来のデータを予測する予測手段と
を備えることを特徴とする。
【0009】
また、本発明に係る上記予測装置は、前記過去の時系列データを表示し、オペレータによる境界サイクルの設定入力を受け付けるUI画面を表示する表示手段をさらに備え、
前記境界設定手段が、前記UI画面を介したオペレータによる設定入力に基づいて前記境界サイクルを設定する
ことを特徴とする。
【0010】
さらに、本発明に係る上記予測装置は、前記表示手段が、各アイテム毎又は複数のアイテムから構成されるアイテム群毎に前記UI画面上に前記過去の時系列データを表示し、
前記境界設定手段が、各アイテム毎又はアイテム群毎に前記境界サイクルを設定する
ことを特徴とする。
【0011】
さらにまた、本発明に係る上記予測装置は、前記境界設定手段が、予測対象となるアイテムの時系列データに関して予め指定されている所定の基準日に基づいて前記境界サイクルを設定することを特徴とする。
【0012】
さらにまた、本発明に係る上記予測装置は、前記基準日を含むサイクル内に該基準日以前の期間が存在するか否かを判定する期間判定手段をさらに備え、
前記境界設定手段は、前記サイクル内に前記期間が存在する場合は該サイクルの次のサイクルを境界サイクルとして設定し、前記サイクル内に前記期間が存在しない場合は該サイクルを境界サイクルとして設定する
ことを特徴とする。
【0013】
さらにまた、本発明に係る上記予測装置は、前記境界設定手段が、
前記過去の時系列データのうち所定の期間数を有する直近の期間である第1の期間と、該第1の期間と同一期間数を有する第2の期間とを設定する第1の手段と、
前記第1の期間内のデータと、前記第2の期間内のデータとを比較して所定の条件を満たすか否かを判定する第2の手段と、
前記第2の手段による判定結果に基づいて前記境界サイクルを設定する第三の手段と
を備えることを特徴とする。
【0014】
さらにまた、本発明に係る上記予測装置において、前記第2の手段は、前記第1の期間内の平均データと前記第2の期間内の平均データとの差分値が、前記第1の期間内の標準偏差データ及び前記第2の期間内の標準偏差データ以下であるという条件を満たすか否かを判定することを特徴とする。
【0015】
さらにまた、本発明に係る上記予測装置は、
前記所定の予測モデルに該予測モデルの対象期間数を示すパラメータが設定されている場合に、
前記対象期間数に基づく対象期間内に前記境界サイクルより前のサイクルが含まれているか否かを判定する第2の判定手段と、
前記対象期間内に前記過去の時系列データにおいてデータ傾向が変化する前のサイクルが含まれている場合、前記境界サイクルに基づき、前記対象期間数を前記過去の時系列データのデータ傾向が変化した後のサイクル数に補正する対象期間数補正手段とをさらに備え、
対象期間数が補正された場合に、前記予測手段は、補正した前記対象期間数を前記所定の予測モデルのパラメータとして将来のデータを予測する
ことを特徴とする。
【0016】
さらにまた、上記課題を解決するために、本発明は、所定サイクル単位でデータ構成された過去の時系列データから所定のサイクル数を参照期間として将来のデータを予測する予測方法であって、
前記過去の時系列データにおいてデータ傾向が変化するサイクルを境界サイクルとして設定する境界設定工程と、
将来のデータの予測に際して参照される所定の参照期間内に前記過去の時系列データのデータ傾向が変化する前のサイクルが含まれているか否かを判定する判定工程と、
前記参照期間内に前記境界サイクルよりも前のサイクルが含まれている場合、前記境界サイクルに基づき、該参照期間を前記過去の時系列データのデータ傾向が変化した後のサイクル数である新たな参照期間に補正する参照期間補正工程と、
前記参照期間補正工程で参照期間が補正された場合、補正された前記新たな参照期間内の時系列データを参照して所定の予測モデルを用いて将来のデータを予測する予測工程と
を備えることを特徴とする。
【0017】
さらにまた、上記課題を解決するために、本発明は、所定サイクル単位でデータ構成された過去の時系列データから、所定のサイクル数を参照期間として将来のデータの予測を行うことを実現するプログラムであって、
前記過去の時系列データにおいてデータ傾向が変化するサイクルを境界サイクルとして設定する境界設定工程のプログラムコードと、
将来のデータの予測に際して参照される所定の参照期間内に前記過去の時系列データのデータ傾向が変化する前のサイクルが含まれているか否かを判定する判定工程のプログラムコードと、
前記参照期間内に前記境界サイクルよりも前のサイクルが含まれている場合、前記境界サイクルに基づき、該参照期間を前記過去の時系列データのデータ傾向が変化した後のサイクル数である新たな参照期間に補正する参照期間補正工程のプログラムコードと、
前記参照期間補正工程で参照期間が補正された場合、補正された前記新たな参照期間内の時系列データを参照して所定の予測モデルを用いて将来のデータを予測する予測工程のプログラムコードと
を備えることを特徴とする。
【発明の効果】
【0018】
本発明によれば、過去の時系列データから傾向の異なるデータを除いた期間を参照して、精度良く将来のデータを予測することができる。
【発明を実施するための最良の形態】
【0019】
以下、図面を参照して、本発明の一実施形態に係る将来の需要量の予測装置及びその予測動作の詳細について説明する。
【0020】
<第1の実施形態>
図1は、本発明の第1の実施形態に係る予測装置の構成を示すブロック図である。図1に示すように、第1の実施形態に係る予測装置は、データベース100と、境界サイクル設定部110、参照期間補正部120、予測モデル補正部130、及び、予測実行部140とを備える。
【0021】
データベース(DB)100には、アイテムマスタ101、時系列データDB102、及び、予測モデル情報DB103が備わっている。アイテムマスタ101には、将来の需要量を予測する対象となる各種商品等のアイテムに関する属性値等の情報が記憶されている。時系列データDB102には、それぞれのアイテムについての過去のアイテム別・期間別の需要実績値が蓄積されている。また、予測モデル情報DB103には、移動平均モデル等の予測を実行するために使用される各種予測モデルに関する情報が記憶されている。
【0022】
図2は、第1の実施形態に係る予測装置を用いて将来のデータを予測する処理の概要を説明するための図である。まず、境界サイクル設定部110が、データベース100に記憶されている予測対象アイテムの過去の需要量の時系列データから需要量の傾向が異なる境目である境界サイクルを設定する。そして、参照期間補正部120が、設定された境界サイクルに基づいて参照期間を更新(補正)し、補正参照期間を算出する。一方、予測モデル補正部130は、設定された境界サイクルを用いて予測モデルのパラメータを補正した補正予測モデルを算出する。そして、予測実行部140は、補正参照期間内のデータと補正予測モデルを用いて予測を実行する。
【0023】
図3は、本発明の第1の実施形態に係る予測装置を実現する情報処理装置(コンピュータ)の細部構成を示すブロック図である。図3において、CPU201は、システムバス212に接続された各デバイスを統括的に制御する。また、RAM202は、CPU201の主メモリ、ワークエリア、一時退避領域等として機能する。さらに、ROM203は、ブートプログラムが記憶されている。
【0024】
入力制御部204は、キーボードやマウス等のポインティングデバイスで実現される入力部205からの入力を制御する。また、表示制御部206は、CRTモニタや液晶モニタ等で実現される表示部207による表示を制御する。さらに、外部メモリ制御部208は、CPU201の制御プログラムであるオペレーションシステム(OS)や、予測装置の各種機能を実現するためのプログラムや上記各種データベース(DB)、各種ファイル等、各種アプリケーション、各種マスタファイル、ユーザファイル等の各種データを記憶する外部メモリ209へのアクセスを制御する。
【0025】
外部メモリ209には、さらに予測装置の各種機能を実現するためのプログラムや各種テーブル等が記憶されている。尚、外部メモリ209としては、ハードディスク(HD)やフレキシブルディスク(FD)、PCMCIAカードスロットにアダプタを介して接続可能なコンパクトフラッシュ(登録商標)やスマートメディア等が挙げられる。また、本実施形態における処理は、CPU201により外部メモリ209に記録されているプログラムが必要に応じてRAM202にロードされ、当該プログラムによる制御に基づきCPU201によって実行される。
【0026】
また、通信I/F制御部210は、LANやインターネット等のネットワーク211を介して外部機器との通信制御処理を実行する。
【0027】
図4は、本発明の一実施形態に係る予測装置の動作手順の一例を説明するためのフローチャートである。このフローチャートに示す処理は、予測装置のCPU201によって行われる。まず、予測装置のCPU201は、境界サイクル設定部110の機能を用いて、境界サイクルを設定する(ステップS101)。ここで、図5は、2002年1月から2004年6月までの42か月間に渡るあるアイテムの月次販売量データの一例を示す図である。以下では、図5に示すデータを用いて、本実施形態に係る予測装置の動作例について説明する。
【0028】
図6は、図5に示す月次販売量データをグラフ化して推移を示した図である。図6に示されるように、当該アイテムの販売量は、2002年1月〜2003年3月までは毎月約10前後の小さい値であったが、2003年4月から徐々に増加し、2003年7月からは月平均が約160前後と安定した量になっている。このように、図6に示すグラフにより、2003年6月を境界として販売量の傾向が異なっていることがわかる。
【0029】
ここで、本実施形態では、上記アイテムの予測に際して、実績参照期間数を24か月、予測モデルを移動平均モデル、移動平均次数を24か月として予測を実行する。そこで、ステップS101において、境界サイクルを2003年7月として設定する。尚、境界サイクルを設定する方法は、ユーザがUI画面を用いて指定、又は、任意のロジックを使用して境界サイクルを推定する方法等があるが、本実施形態ではユーザがUI画面を用いて指定するものとする。
【0030】
次いで、予測装置のCPU201は、対象となる参照期間内に境界サイクルが含まれているか否かについて判定する(ステップS102)。上記例では、予測実施サイクルは2004年7月であるため、実績参照期間終了サイクルは直近の2004年6月となる。また、実績参照期間開始サイクルは、実績参照期間終了サイクルの実績参照期間数の期間前に当たるサイクルである2002年7月となる。すなわち、実績参照期間は、2002年7月から2004年6月までの24か月間になる。
【0031】
そして、ステップS102の判定結果において、CPU201が境界サイクルが参照期間内に含まれていると判定した場合(Yes)は、参照期間補正部120の機能を用いて当該境界サイクルが含まれている参照期間を補正する(ステップS103)。当該補正は、参照期間開始サイクルを境界サイクルとして短縮した新たな期間を補正参照期間とする。図7は、ステップS103の参照期間補正処理による参照期間の補正の概要を説明するための図である。上記例では、実績参照期間内に境界サイクルである2003年7月が存在するため、実績参照期間開始サイクルを2002年7月から2003年7月に補正する。これにより、補正実績参照期間は、2003年7月から2004年6月までの12か月間となり、実績参照期間数も短縮される。
【0032】
そして、CPU201は予測実行部140の機能を用いて、補正された参照期間のデータを元に予測モデルを用いて詳細のデータを予測する(ステップS104)。尚、ステップS102でCPU201が参照期間内に境界サイクルが含まれていないと判定した場合は、ステップS104に進んで、補正されていないもとの参照期間内のデータを元にして予測を実行する。
【0033】
図8は、図4に示す予測処理のフローチャートにおける予測実行処理(ステップS104)の詳細を説明するためのフローチャートである。当該予測実行処理において、予測装置のCPU201は、まず、予測モデルのパラメータ補正処理を行うため、期間を示す予測モデルのパラメータがあるか否かを判定する(ステップS104a)。
【0034】
本実施形態で採用している予測モデルは移動平均モデルであって、過去が一定期間の時系列データの平均値を予測値とする予測モデルである。そして、移動平均モデルの予測モデルパラメータである移動平均次数は、平均を算出する対象期間である。すなわち、移動平均次数を24とすると、過去24か月間の需要量の平均値を予測値とすることになる。
【0035】
ここで、移動平均モデルのパラメータは、期間を表すパラメータであるため(Yes)、CPU201は、次に期間を表す予測モデルパラメータの期間内に境界サイクルがあるか否かを判定する(ステップS104b)。移動平均次数の対象期間は、上記参照期間と同様に2002年7月から2004年6月までの24か月間になる。そして、この期間内に境界サイクルである2003年7月が存在する(Yes)。そこで、次に、CPU201は、期間を表す予測モデルパラメータの期間数が境界サイクル以降となる期間数を補正予測モデルパラメータとする(ステップS104c)。すなわち、上記例において移動平均次数の補正対象期間は、2003年7月から2004年6月までの12ヶ月間になり、補正移動平均次数は24から12になる。
【0036】
そして最後に、補正実績参照期間である2003年7月から2004年6月までの12か月間の時系列データをもとに補正移動平均次数の12で予測を実施する(ステップS104d)。すなわち、上記例では、2004年7月の予測量が2003年7月から2004年6月までの実績の平均値となり、図5に示すデータから平均値を求めると163になる。このように、参照期間だけではなく、期間を表す予測モデルのパラメータの期間内にある直近と異なる傾向の期間を排除することにより、予測精度のさらなる向上を図ることができる。上記予測を行う際には、定常的に使用する参照期間数と期間を表す予測モデルのパラメータを変更することなく、境界サイクルが参照期間に含まれる場合のみ境界サイクルをもとに補正した参照期間やパラメータを用いて予測を行うので、予測の都度、参照期間数と予測モデルパラメータを見直す必要がなく、負荷を削減することができる。
【0037】
一方、補正を行わない場合の予測量は、2002年7月から2004年6月の24か月間の平均値となり、90である。このように、直近の出庫量の傾向が160前後であるのに対し、補正を行わない場合は90と小さい値になっており、境界サイクル以前のデータ値の小さいという事実が大きな影響を与えて、予測精度を悪くしていることがわかる。逆に、補正を行った場合は、境界サイクル以前のデータを考慮しないため、直近の出庫傾向に合った予測量となり、予測精度が向上したことがわかる。
【0038】
次に、上記予測よりも1か月経過した後の2004年7月の時系列データが蓄積された場合について説明する。図9は、2002年1月から2004年7月までの43か月分に渡る月次サイクルの時系列データの例を示す図である。また、図10は、図9に示す時系列データについて行われる参照期間補正処理による参照期間の補正の概要を説明するための図である。
【0039】
図10に示す通り、2002年8月から2004年7月までの24か月間の実績参照期間から、2003年7月から2004年7月までの13か月間の補正実績参照期間の補正される。補正実績参照期間は、前述した図7の場合と比べると1か月間増えていることがわかる。そのため、実績参照期間開始サイクルが、境界サイクル以降になるまで時系列データが蓄積されていくと、補正実績参照期間数が実績参照期間数と一致するまで補正実績参照期間数が徐々に増え続ける。これは、期間を表す予測モデルパラメータにおいても同様である。
【0040】
尚、本実施形態で対象とした予測サイクルは、月次となっているが、週次や日次サイクル等であっても同様である。
【0041】
このように、第1の実施形態に係る予測装置によれば、過去の時系列データを参照して予測する際に、参照期間内にある直近の傾向と異なる期間を自動的に排除することにより、好適に予測精度の向上を図ることが可能となった。また、参照期間が補正された場合にのみ参照期間数を修正することによって予測を行うため、定常的に利用する参照期間数には変更が加えられないので、時系列データが増加するにつれて自動的に排除される直近の傾向と異なる期間が徐々に少なくなり、ユーザが参照期間数をその都度見直す必要が少なくなる。
【0042】
<第2の実施形態>
図11は、本発明の第2の実施形態に係る予測装置の構成を示すブロック図である。図11に示すように、第2の実施形態に係る予測装置は、データベース100と、境界サイクル入力部150、参照期間補正部120、予測モデル補正部130、及び、予測実行部140とを備える。尚、図1に示す第1の実施形態に係る予測装置と比較して、境界サイクル設定部110がなく、新たに境界サイクル入力部150が備わっている。その他の構成要素については、同じであり、その詳細については省略する。尚、第2の実施形態に係る予測装置を実現する情報処理装置(コンピュータ)の細部構成については、図3のブロック図で示されるコンピュータと同様である。
【0043】
図12は、第2の実施形態に係る予測装置を用いて将来のデータを予測する処理の概要を説明するための図である。まず、境界サイクル入力部150が、データベース100に記憶されている予測対象アイテムの過去の需要量の時系列データから需要量の傾向が異なる境目となる境界サイクルを入力する。そして、参照期間補正部120が、入力された境界サイクルに基づいて参照期間を補正し、補正参照期間を算出する。一方、予測モデル補正部130は、入力された境界サイクルを用いて予測モデルのパラメータを補正した補正予測モデルを算出する。そして、予測実行部140は、補正参照期間内のデータと補正予測モデルを用いて予測を実行する。
【0044】
このように本実施形態では、直近と異なる傾向の期間との境界となるサイクルをユーザが指定する。これは、例えば、境界サイクルが確定している場合等に有効である。
【0045】
図13は、境界サイクル入力部150を用いてユーザがアイテム単位又はアイテム群単位に設定する画面の例を示す図である。ユーザが図13に示すような画面を用いて、アイテム毎に境界サイクルを設定・登録処理を行うことになる。
【0046】
図13のグリッド部に表示されているアイテムが選択されると、グラフ表示部に当該アイテムの過去の需要量が表示される。複数のアイテムが選択された場合には、どのグラフがどのアイテムの過去の需要量に対応するものかが認識可能に表示される。よって、ユーザはグラフ表示された需要量を確認しながら、境界サイクルが可能になる。そして、ユーザによる入力部の操作に基づいて境界サイクルが設定されることになる。
【0047】
そして、設定された境界サイクルをもとに参照期間や予測モデルのパラメータを補正して、予測を行うことになる。境界サイクルを設定してない場合は境界サイクルはなしとして、実績参照期間と期間を表す予測モデルパラメータの補正処理は行わず、当該アイテムに設定されている参照期間や、予測モデルのパラメータに基づいて予測が行われることになる。
【0048】
また、境界サイクル設定処理については、アイテム毎ではなく、複数アイテムからなるアイテム群に対して一括して境界サイクルを設定し、当該アイテム群に含まれる全てのアイテムに対して設定適用させてもよいし、複数のアイテムを選択し、それらに同一の設定を行わせてもよい。
【0049】
<第3の実施形態>
図14は、本発明の第3の実施形態に係る予測装置の構成を示すブロック図である。図14に示すように、第3の実施形態に係る予測装置は、データベース100と、境界サイクル変換部160、参照期間補正部120、予測モデルのパラメータ補正部130、及び、予測実行部140とを備える。尚、図1に示す第1の実施形態に係る予測装置と比較して、境界サイクル設定部110がなく、新たに特定の基準日である境界日を境界サイクルに変換する境界サイクル変換部160が備わっている。
【0050】
本実施形態では、図4に示すフローチャートにおける境界サイクル設定処理(ステップS101)に代えて、境界サイクル変換部160によって、登録されている境界日を境界サイクルに変更することにより境界サイクルを設定する。尚、その他の構成要素については、同じであり、その詳細については省略する。また、第3の実施形態に係る予測装置を実現する情報処理装置(コンピュータ)の細部構成については、図3のブロック図で示されるコンピュータと同様である。
【0051】
図15は、第3の実施形態に係る予測装置を用いて将来のデータを予測する処理の概要を説明するための図である。まず、境界サイクル変換部160が、予め設定されている境界日を過去の時系列データにおける需要量の傾向が異なる境目となる境界サイクルに変換する。すなわち、境界日に基づいて境界サイクルを設定する。そして、参照期間補正部120が、変換された境界サイクルに基づいて参照期間を補正し、補正参照期間を算出する。一方、予測モデル補正部130は、変換された境界サイクルを用いて予測モデルのパラメータを補正した補正予測モデルを算出する。そして、予測実行部140は、補正参照期間内のデータと補正予測モデルを用いて予測を実行する。
【0052】
ここで、境界日から境界サイクルに変換する(すなわち、境界日に基づいて境界サイクルを設定する)ロジックに関しては様々な方法があるが、ここでは図16に示すフローチャートで示される方法で行う。図16は、境界日を含むサイクルに境界日以前の期間があるかどうかによって境界サイクルを設定する処理手順を説明するためのフローチャートである。すなわち、境界日を含むサイクルに境界日以前の期間があるかどうかによって、境界サイクルを当該サイクルとするか、次のサイクルとするかを判断する。このフローチャートに示す処理は、予測装置のCPU201によって行われる。
【0053】
そこで、まず、予測装置のCPU201は、境界日を含むサイクルに境界日以前の期間があるかどうかを判定する(ステップS201)。その結果、境界日以前の期間を含むと判定した場合(Yes)は、境界サイクルを境界日を含むサイクルの次のサイクルとする(ステップS202)。一方、境界日以前の期間を含まないと判定した場合(No)は、境界サイクルを境界日を含む当該サイクルとする(ステップS203)。
【0054】
例えば、サイクルを1日から始まる月次サイクル(6月のサイクルは6月1日から6月30日までの期間)とし、境界日を6月10日とした場合は、境界日を含むサイクルである6月は、6月1日から6月9日までの不安定な期間を含むこととなる。従って、境界サイクルは、次のサイクルである7月とする。また、境界日を6月1日とした場合、境界日を含むサイクルの6月の期間すべてが境界日以降であるため、境界サイクルは境界日を含む当該サイクルである6月となる。
【0055】
また、図17は、境界サイクルを境界日を含むサイクルのαサイクル後のサイクルとする場合の処理を説明するためのフローチャートである。例えば、境界日をアイテムの発売日とした場合、発売直後は販売量が不安定であるとし、発売日を含むサイクルの例えば3サイクル後(α=3)のサイクルを境界サイクルとする。すなわち、発売日を6月10日とした場合、発売日を含むサイクルである6月の3サイクル後に当たる9月が境界サイクルとなる(ステップS204)。
【0056】
このように、本実施形態では、指定された境界日を境界サイクルに変換して、実績参照期間と期間を表す予測モデルパラメータを補正して予測を実施する。これにより、指定された境界日を例えば商品の発売日やデータの登録日等のアイテム属性値とする場合、ユーザが境界サイクルを設定する必要がなく、自動的に境界日に基づいて境界サイクルを設定することが可能となる。
【0057】
<第4の実施形態>
図18は、本発明の第4の実施形態に係る予測装置の構成を示すブロック図である。図18に示すように、第4の実施形態に係る予測装置は、データベース100と、境界サイクル推定部170、参照期間補正部120、予測モデルのパラメータ補正部130、及び、予測実行部140とを備える。尚、図1に示す第1の実施形態に係る予測装置と比較して、境界サイクル設定部110がなく、新たに境界サイクルを推定する境界サイクル推定部170が備わっている。
【0058】
本実施形態では、図4に示すフローチャートにおける境界サイクル設定処理(ステップS101)に代えて、境界サイクル推定部170によって、過去の時系列データから境界サイクルを自動的に推定することにより境界サイクルを設定する。尚、その他の構成要素については、同じであり、その詳細については省略する。また、第3の実施形態に係る予測装置を実現する情報処理装置(コンピュータ)の細部構成については、図3のブロック図で示されるコンピュータと同様である。
【0059】
図19は、第4の実施形態に係る予測装置を用いて将来のデータを予測する処理の概要を説明するための図である。まず、境界サイクル推定部160が過去の時系列データにおける需要量の傾向が異なる境目となる境界サイクルを推定する。そして、参照期間補正部120が、推定された境界サイクルに基づいて参照期間を補正し、補正参照期間を算出する。一方、予測モデル補正部130は、推定された境界サイクルを用いて予測モデルのパラメータを補正した補正予測モデルを算出する。そして、予測実行部140は、補正参照期間内のデータと補正予測モデルを用いて予測を実行する。
【0060】
ここで、境界サイクルを自動推定するロジックは様々な方法があるが、本実施形態では、図20に示すフローのロジックを使用する。図20は、一定期間の平均値と標準偏差により境界サイクルを推定するロジックの処理手順を説明するためのフローチャートである。このフローチャートに示す処理は、予測装置のCPU201によって行われる。尚、対象となるデータは図5に示すものを用いる。図21は、図20に示すロジックにおいてα=6、β=20として図5のデータをもとに自動推定した経緯を説明するための図である。
【0061】
まず、予測装置のCPU201は、変数k1を0と設定する(ステップS301)。次いで、直近βーk1(20か月)前のサイクルの出庫量(2002年11月は4)が0より大きいか否かを判定する(ステップS302)。ここで、当該出庫量が0ではないため、CPU201はYESと判定し、ステップS304に進む。一方、出庫量が0以下であれば、NOと判定し、1サイクルインクリメント(k1=k1+1)して(ステップS303)、上記ステップS302の処理を行う。その後、変数k2を1と設定する(ステップS304)。
【0062】
ステップS305では、予測装置のCPU201は、直近αサイクル(6か月間)のデータの平均値A1と標準偏差値S1を求める。すなわち、本実施形態では、A1=163、S1=16となる。
【0063】
次に、予測装置のCPU201は、直近からk2+α(7か月)前のサイクルからαサイクル(6か月間)間の平均値A2と標準偏差値S2を求める(ステップS306)。そして、当該αサイクルにおいて、|A1−A2|≦S1かつ|A1−A2|≦S2の条件を満たし、かつ、k2+α≦β−k1を満たすか否かを判定する(ステップS307)。その結果、当該条件を満たすと判定した場合(Yes)には、k2をインクリメントして(ステップS308)、ステップS305に戻る。一方、上記条件を満たさないと判定した場合(Yes)には、ステップS309に進む。そして直近からk2+α−1サイクル前のサイクルを境界サイクルとして設定する(ステップS309)。
【0064】
本実施形態では、ステップS307〜ステップS308〜ステップS306〜ステップS307のループ処理を繰り返す。その結果、図21に示すように、ステップS307の条件を最後に満たしたサイクルである2003年6月が境界サイクルであると推定される。
【0065】
同様に、図22は、図5のデータと逆の傾向を有し、前半は販売量が多く、後半は少なくなる時系列データを示す図である。また、図23は、図22に示す時系列データに対して図20に示すフローチャートで示されるロジックを用いて境界サイクルを推定した例を示す図である。この場合、図23に示すように、2003年1月が境界サイクルとして推定される。
【0066】
また、図24は、データの有無及びデータが0より大きいか否かによって境界サイクルを推定するロジックの処理手順を説明するためのフローチャートである。まず、予測装置のCPU201は、直近からβーkサイクル前のサイクルからデータが存在し、かつ、そのデータが0より大きいか否かを判定する(ステップS311〜S313)。その結果、データが存在して、かつ、そのデータが0より大きくなる最初のサイクルのαサイクル後(β−k+α)を境界サイクルとする(ステップS314)。
【0067】
上記ロジックは、商品の発売日情報がない場合は、発売前のサイクルにデータがない、すなわち、販売量が0であることから、当該商品の発売日のサイクルを特定して境界サイクルとして自動判定するものである。
【0068】
このように、過去の時系列データから境界サイクルを自動で推定することにより、境界サイクルの設定作業負荷を軽減することができる。
【0069】
<その他の実施形態>
上述した各実施形態では、予測精度の悪化を招くような直近の異なる傾向の期間(サイクル)を参照期間から自動的に削除することにより、予測精度の向上を目指した。また、予測モデルのパラメータである参照期間数や予測モデルパラメータを変更しないため、ユーザが最初に任意の参照期間数を設定することで、その都度、パラメータを見直すメンテナンスの負荷を削減することが可能である。
【0070】
また、本発明は、例えば、システム、装置、方法、プログラム若しくは記憶媒体(記録媒体)等としての実施態様をとることが可能であり、具体的には、複数の機器から構成されるシステムに適用しても良いし、また、一つの機器からなる装置に適用しても良い。
【0071】
尚、本発明は、前述した実施形態の機能を実現するソフトウェアのプログラム(実施形態では図に示すフローチャートに対応したプログラム)を、システムあるいは装置に直接あるいは遠隔から供給し、そのシステムあるいは装置のコンピュータが該供給されたプログラムコードを読み出して実行することによっても達成される場合を含む。
【0072】
従って、本発明の機能処理をコンピュータで実現するために、該コンピュータにインストールされるプログラムコード自体も本発明を実現するものである。つまり、本発明は、本発明の機能処理を実現するためのコンピュータプログラム自体も含まれる。
【0073】
その場合、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、OSに供給するスクリプトデータ等の形態であっても良い。
【0074】
プログラムを供給するための記録媒体としては、例えば、フロッピー(登録商標)ディスク、ハードディスク、光ディスク、光磁気ディスク、MO、CD−ROM、CD−R、CD−RW、磁気テープ、不揮発性のメモリカード、ROM、DVD(DVD−ROM,DVD−R)などがある。
【0075】
その他、プログラムの供給方法としては、クライアントコンピュータのブラウザを用いてインターネットのホームページに接続し、該ホームページから本発明のコンピュータプログラムそのもの、もしくは圧縮され自動インストール機能を含むファイルをハードディスク等の記録媒体にダウンロードすることによっても供給できる。また、本発明のプログラムを構成するプログラムコードを複数のファイルに分割し、それぞれのファイルを異なるホームページからダウンロードすることによっても実現可能である。つまり、本発明の機能処理をコンピュータで実現するためのプログラムファイルを複数のユーザに対してダウンロードさせるWWWサーバも、本発明に含まれるものである。
【0076】
また、本発明のプログラムを暗号化してCD−ROM等の記憶媒体に格納してユーザに配布し、所定の条件をクリアしたユーザに対し、インターネットを介してホームページから暗号化を解く鍵情報をダウンロードさせ、その鍵情報を使用することにより暗号化されたプログラムを実行してコンピュータにインストールさせて実現することも可能である。
【0077】
また、コンピュータが、読み出したプログラムを実行することによって、前述した実施形態の機能が実現される他、そのプログラムの指示に基づき、コンピュータ上で稼動しているOSなどが、実際の処理の一部または全部を行い、その処理によっても前述した実施形態の機能が実現され得る。
【0078】
さらに、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行い、その処理によっても前述した実施形態の機能が実現される。
【図面の簡単な説明】
【0079】
【図1】本発明の第1の実施形態に係る予測装置の構成を示すブロック図である。
【図2】第1の実施形態に係る予測装置を用いて将来のデータを予測する処理の概要を説明するための図である。
【図3】本発明の第1の実施形態に係る予測装置を実現する情報処理装置(コンピュータ)の細部構成を示すブロック図である。
【図4】本発明の一実施形態に係る予測装置の動作手順の一例を説明するためのフローチャートである。
【図5】2002年1月から2004年6月までの42か月間に渡るあるアイテムの月次販売量データの一例を示す図である。
【図6】図5に示す月次販売量データをグラフ化して推移を示した図である。
【図7】ステップS103の参照期間補正処理による参照期間の補正の概要を説明するための図である。
【図8】図4に示す予測処理のフローチャートにおける予測実行処理(ステップS104)の詳細を説明するためのフローチャートである。
【図9】2002年1月から2004年7月までの43か月分に渡る月次サイクルの時系列データの例を示す図である。
【図10】図9に示す時系列データについて行われる参照期間補正処理による参照期間の補正の概要を説明するための図である。
【図11】本発明の第2の実施形態に係る予測装置の構成を示すブロック図である。
【図12】第2の実施形態に係る予測装置を用いて将来のデータを予測する処理の概要を説明するための図である
【図13】境界サイクル入力部150を用いてユーザがアイテム単位又はアイテム群単位に設定する画面の例を示す図である。
【図14】本発明の第3の実施形態に係る予測装置の構成を示すブロック図である。
【図15】第3の実施形態に係る予測装置を用いて将来のデータを予測する処理の概要を説明するための図である。
【図16】境界日を含むサイクルに境界日以前の期間があるかどうかによって境界サイクルを設定する処理手順を説明するためのフローチャートである。
【図17】境界サイクルを境界日を含むサイクルのαサイクル後のサイクルとする場合の処理を説明するためのフローチャートである。
【図18】本発明の第4の実施形態に係る予測装置の構成を示すブロック図である。
【図19】第4の実施形態に係る予測装置を用いて将来のデータを予測する処理の概要を説明するための図である。
【図20】一定期間の平均値と標準偏差により境界サイクルを推定するロジックの処理手順を説明するためのフローチャートである。
【図21】図20に示すロジックにおいてα=6、β=20として図5のデータをもとに自動推定した経緯を説明するための図である。
【図22】図5のデータと逆の傾向を有し、前半は販売量が多く、後半は少なくなる時系列データを示す図である。
【図23】図22に示す時系列データに対して図20に示すフローチャートで示されるロジックを用いて境界サイクルを推定した例を示す図である。
【図24】データの有無及びデータが0より大きいか否かによって境界サイクルを推定するロジックの処理手順を説明するためのフローチャートである。
【符号の説明】
【0080】
100 データベース(DB)
101 アイテムマスタ
102 時系列データDB
103 予測モデル情報DB
110 境界サイクル設定部
120 参照期間補正部
130 予測モデル補正部
140 予測実行部
150 境界サイクル入力部
160 境界サイクル変換部
170 境界サイクル推定部

【特許請求の範囲】
【請求項1】
所定サイクル単位でデータ構成された過去の時系列データから所定のサイクル数を参照期間として将来のデータを予測する予測装置であって、
前記過去の時系列データにおいてデータ傾向が変化するサイクルを境界サイクルとして設定する境界設定手段と、
将来のデータの予測に際して参照される所定の参照期間内に前記境界サイクルより前のサイクルが含まれているか否かを判定する第1の判定手段と、
前記参照期間内に前記過去の時系列データにおいてデータ傾向が変化する前のサイクルが含まれている場合、前記境界サイクルに基づいて、該参照期間を前記過去の時系列データにおいてデータ傾向が変化した後のサイクル数である新たな参照期間に補正する参照期間補正手段と、
前記参照期間補正手段で参照期間が補正された場合、補正された前記新たな参照期間内の時系列データを参照して所定の予測モデルを用いて将来のデータを予測する予測手段と
を備えることを特徴とする予測装置。
【請求項2】
前記過去の時系列データを表示し、オペレータによる境界サイクルの設定入力を受け付けるUI画面を表示する表示手段をさらに備え、
前記境界設定手段が、前記UI画面を介したオペレータによる設定入力に基づいて前記境界サイクルを設定する
ことを特徴とする請求項1に記載の予測装置。
【請求項3】
前記表示手段が、各アイテム毎又は複数のアイテムから構成されるアイテム群毎に前記UI画面上に前記過去の時系列データを表示し、
前記境界設定手段が、各アイテム毎又はアイテム群毎に前記境界サイクルを設定する
ことを特徴とする請求項2に記載の予測装置。
【請求項4】
前記境界設定手段が、予測対象となるアイテムの時系列データに関して予め指定されている所定の基準日に基づいて前記境界サイクルを設定することを特徴とする請求項1に記載の予測装置。
【請求項5】
前記基準日を含むサイクル内に該基準日以前の期間が存在するか否かを判定する期間判定手段をさらに備え、
前記境界設定手段は、前記サイクル内に前記期間が存在する場合は該サイクルの次のサイクルを境界サイクルとして設定し、前記サイクル内に前記期間が存在しない場合は該サイクルを境界サイクルとして設定する
ことを特徴とする請求項4に記載の予測装置。
【請求項6】
前記境界設定手段が、
前記過去の時系列データのうち所定の期間数を有する直近の期間である第1の期間と、該第1の期間と同一期間数を有する第2の期間とを設定する第1の手段と、
前記第1の期間内のデータと、前記第2の期間内のデータとを比較して所定の条件を満たすか否かを判定する第2の手段と、
前記第2の手段による判定結果に基づいて前記境界サイクルを設定する第三の手段と
を備えることを特徴とする請求項1に記載の予測装置。
【請求項7】
前記第2の手段は、前記第1の期間内の平均データと前記第2の期間内の平均データとの差分値が、前記第1の期間内の標準偏差データ及び前記第2の期間内の標準偏差データ以下であるという条件を満たすか否かを判定することを特徴とする請求項6に記載の予測装置。
【請求項8】
前記所定の予測モデルに該予測モデルの対象期間数を示すパラメータが設定されている場合に、
前記対象期間数に基づく対象期間内に前記境界サイクルより前のサイクルが含まれているか否かを判定する第2の判定手段と、
前記対象期間内に前記過去の時系列データにおいてデータ傾向が変化する前のサイクルが含まれている場合、前記境界サイクルに基づき、前記対象期間数を前記過去の時系列データのデータ傾向が変化した後のサイクル数に補正する対象期間数補正手段とをさらに備え、
対象期間数が補正された場合に、前記予測手段は、補正した前記対象期間数を前記所定の予測モデルのパラメータとして将来のデータを予測する
ことを特徴とする請求項1から7までのいずれか1項に記載の予測装置。
【請求項9】
所定サイクル単位でデータ構成された過去の時系列データから所定のサイクル数を参照期間として将来のデータを予測する予測方法であって、
前記過去の時系列データにおいてデータ傾向が変化するサイクルを境界サイクルとして設定する境界設定工程と、
将来のデータの予測に際して参照される所定の参照期間内に前記過去の時系列データのデータ傾向が変化する前のサイクルが含まれているか否かを判定する判定工程と、
前記参照期間内に前記境界サイクルよりも前のサイクルが含まれている場合、前記境界サイクルに基づき、該参照期間を前記過去の時系列データのデータ傾向が変化した後のサイクル数である新たな参照期間に補正する参照期間補正工程と、
前記参照期間補正工程で参照期間が補正された場合、補正された前記新たな参照期間内の時系列データを参照して所定の予測モデルを用いて将来のデータを予測する予測工程と
を備えることを特徴とする予測方法。
【請求項10】
所定サイクル単位でデータ構成された過去の時系列データから、所定のサイクル数を参照期間として将来のデータの予測を行うことを実現するプログラムであって、
前記過去の時系列データにおいてデータ傾向が変化するサイクルを境界サイクルとして設定する境界設定工程のプログラムコードと、
将来のデータの予測に際して参照される所定の参照期間内に前記過去の時系列データのデータ傾向が変化する前のサイクルが含まれているか否かを判定する判定工程のプログラムコードと、
前記参照期間内に前記境界サイクルよりも前のサイクルが含まれている場合、前記境界サイクルに基づき、該参照期間を前記過去の時系列データのデータ傾向が変化した後のサイクル数である新たな参照期間に補正する参照期間補正工程のプログラムコードと、
前記参照期間補正工程で参照期間が補正された場合、補正された前記新たな参照期間内の時系列データを参照して所定の予測モデルを用いて将来のデータを予測する予測工程のプログラムコードと
を備えることを特徴とするプログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate

【図18】
image rotate

【図19】
image rotate

【図20】
image rotate

【図21】
image rotate

【図22】
image rotate

【図23】
image rotate

【図24】
image rotate


【公開番号】特開2006−92106(P2006−92106A)
【公開日】平成18年4月6日(2006.4.6)
【国際特許分類】
【出願番号】特願2004−274955(P2004−274955)
【出願日】平成16年9月22日(2004.9.22)
【出願人】(592135203)キヤノンシステムソリューションズ株式会社 (528)