(57)【要約】【課題】  本発明は、蓄積された時系列データの中から、大よそ所定の周期で繰り返される現象に関するデータを効率的に検索可能とすることを目的とする。【解決手段】  第１の単位時間ごとに取得されたデータ群が連なる時系列データを取得し、前記第１の単位時間より長い第２の単位時間ごとの部分時系列データに分割し、前記時系列データのうち、前記第１の単位時間ごとに取得されたデータ群の何れかを特定し、前記特定されたデータ群の、前記第２の時間単位の部分時系列データにおける時間的な相対位置と、他の前記第２の時間単位の部分時系列データにおける前記第１の単位時間ごとに取得されたデータ群のそれぞれの相対位置とに基づいて、前記時系列データのうち検索の対象とする検索範囲を決定し、前記決定された検索範囲に含まれるデータ群から、前記決定されたデータ群と類似するデータ群を検索する。【選択図】  図２
2019219758.tif 000002
【特許請求の範囲】
【請求項１】
第１の単位時間ごとに取得されたデータ群が連なる時系列データを取得する取得手段と、
前記時系列データを前記第１の単位時間より長い第２の単位時間ごとの部分時系列データに分割して保持部に保持させる管理手段と、
前記時系列データのうち、前記第１の単位時間ごとに取得されたデータ群の何れかを特定する特定手段と、
前記特定されたデータ群の、前記第２の時間単位の部分時系列データにおける時間的な相対位置と、他の前記第２の時間単位の部分時系列データにおける前記第１の単位時間ごとに取得されたデータ群のそれぞれの相対位置とに基づいて、前記時系列データのうち検索の対象とする検索範囲を決定する決定手段と、
前記決定された検索範囲に含まれるデータ群から、前記決定されたデータ群と類似するデータ群を検索する検索手段と、
を備えることを特徴とする情報処理装置。
【請求項２】
前記決定手段は、前記第２の単位時間ごとの部分時系列データのそれぞれから、前記決定手段によって対象として決定された前記データ群の、前記第２の単位時間ごとの部分時系列データの中での時間的な相対位置と近い相対位置に存在するデータ群を前記検索範囲として決定する請求項１に記載の情報処理装置。
【請求項３】
前記管理手段は、前記時系列データに含まれる前記第１の単位時間の中で取得されたデータ群のそれぞれに、属する前記第２の単位時間ごとの部分時系列データを示す情報と、前記第２の単位時間ごとの部分時系列データの中での相対位置を示す情報とを対応づけて前記保持部に保持させることを特徴とする請求項１または２に記載の情報処理装置。
【請求項４】
前記時系列データは複数の種類のデータを時系列に収集したものであって、前記検索手段は、前記データの種類ごとに、前記特定されたデータ群と、前記検索範囲に含まれるデータ群のそれぞれとの類似度を算出した結果に基づいて、前記特定されたデータ群に類似するデータ群を特定することを特徴とする請求項１乃至３の何れか１項に記載の情報処理装置。
【請求項５】
前記第２の単位時間とは、前記データ群の内容が大よその繰り返される１周期分の時間の長さであることを特徴とする請求項１乃至４乃至の何れか１項に記載の情報処理装置。
【請求項６】
前記第１の単位時間の中で取得されたデータ群とは、農作物の栽培に関して取得される気温、天候、湿度、生育状態、画像、作業記録の少なくとも何れかを表す情報を収集したデータからなることを特徴とする請求項１乃至５の何れか１項に記載の情報処理装置。
【請求項７】
前記情報処理装置は、農作物の栽培に関するデータを管理する管理装置であることを特徴とする請求項６に記載の情報処理装置。
【請求項８】
取得手段により、第１の単位時間ごとに取得されたデータ群が連なる時系列データを取得する工程と、
管理手段により、前記時系列データを前記第１の単位時間より長い第２の単位時間ごとの部分時系列データに分割して保持部に保持させる工程と、
特定手段により、前記時系列データのうち、前記第１の単位時間ごとに取得されたデータ群の何れかを特定する工程と、
決定手段により、前記特定されたデータ群の、前記第２の時間単位の部分時系列データにおける時間的な相対位置と、他の前記第２の時間単位の部分時系列データにおける前記第１の単位時間ごとに取得されたデータ群のそれぞれの相対位置とに基づいて、前記時系列データのうち検索の対象とする検索範囲を決定する工程と、
検索手段により、前記決定された検索範囲に含まれるデータ群から、前記決定されたデータ群と類似するデータ群を検索する工程と、
を備えることを特徴とする情報処理装置の制御方法。
【請求項９】
コンピュータを、
第１の単位時間ごとに取得されたデータ群が連なる時系列データを取得する取得手段と、
前記時系列データを前記第１の単位時間より長い第２の単位時間ごとの部分時系列データに分割して保持部に保持させる管理手段と、
前記時系列データのうち、前記第１の単位時間ごとに取得されたデータ群の何れかを特定する特定手段と、
前記特定されたデータ群の、前記第２の時間単位の部分時系列データにおける時間的な相対位置と、他の前記第２の時間単位の部分時系列データにおける前記第１の単位時間ごとに取得されたデータ群のそれぞれの相対位置とに基づいて、前記時系列データのうち検索の対象とする検索範囲を決定する決定手段と、
前記決定された検索範囲に含まれるデータ群から、前記決定されたデータ群と類似するデータ群を検索する検索手段、
を備えることを特徴とする情報処理装置として機能させるプログラム。
【請求項１０】
請求項９に記載されたプログラムを格納したことを特徴とするコンピュータが読み取り可能な記憶媒体。
【請求項１１】
サーバ装置とクライアント装置を有し、第１の単位時間の中で取得されたデータ群が連なる時系列データから、対象として指定されたデータ群と類似するデータ群を検索する情報処理システムであって、
前記クライアント装置は、
前記時系列データのうち、前記第１の単位時間の中で取得されたデータ群の何れかを指定する入力を受け付ける受付手段を有し、
前記サーバ装置は、
第１の単位時間ごとに取得されたデータ群が連なる時系列データを取得する取得手段と、
前記時系列データを前記第１の単位時間より長い第２の単位時間ごとの部分時系列データに分割して保持部に保持させる管理手段と、
前記時系列データのうち、前記受付手段によって受け付けられた入力で指定されたデータ群を特定する特定手段と、
前記特定されたデータ群の、前記第２の時間単位の部分時系列データにおける時間的な相対位置と、他の前記第２の時間単位の部分時系列データにおける前記第１の単位時間ごとに取得されたデータ群のそれぞれの相対位置とに基づいて、前記時系列データのうち検索の対象とする検索範囲を決定する決定手段と、
前記決定された検索範囲に含まれるデータ群から、前記決定されたデータ群と類似するデータ群を検索する検索手段とを備え、
さらに、前記クライアント装置は、
前記検索手段による検索結果として出力されたデータ群を示す情報を表示画面に表示させる表示制御手段、
を備えることを特徴とする情報処理システム。
【請求項１２】
前記表示制御手段は、さらに、前記時系列データのうち、前記第１の単位時間の中で取得されたデータ群の何れかを対象として指定するためのユーザインタフェースを前記表示画面に表示させ、
前記ユーザインタフェースには、前記対象として指定されるデータ群に対応する日付と、さらに１以上のデータ群に対応する日付が選択可能に表示されることを特徴とする請求項１１に記載の情報処理システム。
【請求項１３】
前記クライアント装置において表示される前記表示画面では、前記特定されたデータ群に対応する日時情報を、前記検索手段による検索結果として出力されたデータ群に対応する情報が並べて配置されることを特徴とする請求項１１または１２に記載の情報処理システム。
【請求項１４】
前記クライアント装置は、さらに、前記検索手段による検索結果として出力されたデータ群を示す情報のキャッシュデータを保持する保持手段を備え、
前記表示制御手段は、前記保持手段に保持されたキャッシュデータに基づいて、前記表示画面に前記検索手段による検索結果として出力されたデータ群を示す情報を表示することを特徴とする請求項１１に記載の情報処理システム。
【請求項１５】
前記第２の単位時間とは、前記データ群の内容が大よその繰り返される１周期分の時間の長さであることを特徴とする請求項１１乃至請求項１４の何れか１項に記載の情報処理システム。
【請求項１６】
前記第１の単位時間の中で取得されたデータ群とは、農作物の栽培に関して取得される気温、天候、湿度、生育状態、画像、作業記録の少なくとも何れかを表す情報を収集したデータからなることを特徴とする請求項１１乃至１５の何れか１項に記載の情報処理システム。
【請求項１７】
前記情報処理システムは、農作物の栽培に関するデータを管理するシステムであることを特徴とする請求項１１乃至１６の何れか１項に記載の情報処理システム。
【請求項１８】
コンピュータを、請求項１１に記載のクライアント装置として機能させるプログラム。
【請求項１９】
請求項１８に記載されたプログラムを格納したことを特徴とするコンピュータが読み取り可能な記憶媒体。
【請求項２０】
サーバ装置とクライアント装置を有し、第１の単位時間の中で取得されたデータ群が連なる時系列データから、対象として指定されたデータ群と類似するデータ群を検索する情報処理システムの制御方法であって、
前記クライアント装置では、
受付手段により、前記時系列データのうち、前記第１の単位時間の中で取得されたデータ群の何れかを対象として指定する入力を受け付ける工程を有し、
前記サーバ装置では、
取得手段により、第１の単位時間ごとに取得されたデータ群が連なる時系列データを取得する工程と、
管理手段により、前記時系列データを前記第１の単位時間より長い第２の単位時間ごとの部分時系列データに分割して保持部に保持させる工程と、
特定手段により、前記時系列データのうち、前記入力によって指定されたデータ群を特定する工程と、
決定手段により、前記特定されたデータ群の、前記第２の時間単位の部分時系列データにおける時間的な相対位置と、他の前記第２の時間単位の部分時系列データにおける前記第１の単位時間ごとに取得されたデータ群のそれぞれの相対位置とに基づいて、前記時系列データのうち検索の対象とする検索範囲を決定する工程と、
検索手段により、前記決定された検索範囲に含まれるデータ群から、前記決定されたデータ群と類似するデータ群を検索する工程とを備え、
さらに、前記クライアント装置では、
表示制御手段により、前記サーバ装置において検索の結果として出力されたデータ群を示す情報を表示画面に表示させる工程と、
を含むことを特徴とする情報処理システムの制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、時系列データを管理する技術に関する。
【背景技術】
【０００２】
近年、時系列データを蓄積して検索することが可能なデータ管理システムが提案されており、ユーザは、ある現象が起きたときに過去に同様の現象が起きたときに得られた情報を参照することができる。
【０００３】
特許文献１では、複数銘柄の株価の変動や複数のセンサから得たセンサ値といった、リアルタイムに得られる複数系列の時系列データをもとに、現在から過去の一定期間の中から、与えられた数の最も類似した部分時系列データのペアを検索する技術が提案される。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特許第５７１１１７１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
農作物の栽培や畜産等の分野では、ある現象は１年ごと、数年ごと、といった大よそ所定の周期で繰り返されることが多く、複数周期に渡る記録は膨大なデータ量となる。一方で、生育の遅れや気象変動は自然現象であるので、必ずしも毎周期の同じタイミングで同じ現象が起きるとは限らない。特許文献１では、複数系列の時系列データの間で生じる時間的なずれは考慮されたが、同一の系列の中で大よそ所定の周期で繰り返される現象に関するデータを効率的に検索可能とすることは考慮されていなかった。
【０００６】
本発明は、蓄積された時系列データの中から、大よそ所定の周期で繰り返される現象に関するデータを効率的に検索可能とすることを目的とする。
【課題を解決するための手段】
【０００７】
以上の課題を解決するために、本発明の情報処理装置は、第１の単位時間ごとに取得されたデータ群が連なる時系列データを取得する取得手段と、前記時系列データを前記第１の単位時間より長い第２の単位時間ごとの部分時系列データに分割して保持部に保持させる管理手段と、前記時系列データのうち、前記第１の単位時間ごとに取得されたデータ群の何れかを特定する特定手段と、前記特定されたデータ群の、前記第２の時間単位の部分時系列データにおける時間的な相対位置と、他の前記第２の時間単位の部分時系列データにおける前記第１の単位時間ごとに取得されたデータ群のそれぞれの相対位置とに基づいて、前記時系列データのうち検索の対象とする検索範囲を決定する決定手段と、前記決定された検索範囲に含まれるデータ群から、前記決定されたデータ群と類似するデータ群を検索する検索手段と、を備える。
【発明の効果】
【０００８】
本発明によれば、蓄積された時系列データの中から、大よそ所定の周期で繰り返される現象に関するデータを効率的に検索可能とすることができる。
【図面の簡単な説明】
【０００９】
【図１】情報処理システムの構成、及びハードウェアの構成の一例を表す図
【図２】情報処理システムの機能構成の一例を表す図
【図３】情報処理システムの各構成要素の処理の一例を表すシーケンス図
【図４】情報処理システムで処理されるデータの一例を表すテーブル
【図５】情報処理システムの各構成要素の処理の一例を表すシーケンス図
【図６】クライアント装置において表示されるユーザインタフェースの一例を表す図
【図７】サーバ装置で実行される処理の一例を表すフローチャート
【図８】情報処理システムで処理されるデータの一例を表すテーブル
【図９】サーバ装置で実行される処理の一例を表すフローチャート
【図１０】クライアント装置において表示されるユーザインタフェースの一例を表す図
【図１１】情報処理システムの機能構成の一例を表す図
【図１２】情報処理システムの各構成要素の処理の一例を表すシーケンス図
【図１３】クライアント装置において表示されるユーザインタフェースの一例を表す図
【図１４】情報処理システムで処理されるデータの一例を表すテーブル
【発明を実施するための形態】
【００１０】
以下、本発明に係る実施形態を、図面を参照して詳細に説明する。なお、以下の実施形態に記載する構成は代表例であり、本発明の範囲はそれらの具体的構成に必ずしも限定されない。
【００１１】
＜第１の実施形態＞
本実施形態では、農作物の栽培に関する時系列データを収集・管理する情報処理システムを例に示す。特に、農作物の栽培に関して蓄積された過去の時系列データの中から、対象（検索クエリ）として指定された少なくとも１日の中で得られたデータ群、類似するデータ群を検索可能なシステムの例を説明する。農作物の栽培においては、気象状況や作物生育状態、栽培作業記録等をデジタル化して管理することが行われる。農作物の栽培で記録される現象や、その現象に応じて行われた作業の記録は、大よそ決まった長さの期間ごとに繰り返されるという特徴がある。例えば、毎年春先に気温が高くなってきたのを受けて、土壌の整備を行ったり、芽の出方を確認したりする。毎年夏頃に、繁った葉の数や温度を見て、風通しのために減らすべき葉の数を破断したりする。しかしながら毎年同じ月の同じ日に、類似するデータが得られるわけではない。例えば春に気温が上昇するのが早かったり、夏前に雨が多く葉が育つのが遅れたりする可能性がある。従って、ある現象が確認されたときに、ちょうど１年前の同じ日に得られたデータを確認してもそれが参考になるとは限らないため、従来は必要な情報を膨大な時系列データから探し当てるには手間を要した。そこで第１の実施形態では、蓄積された時系列データの中から、時系列データを検索クエリとして指定された少なくとも１日の中で得られたデータと類似する部分時系列データを効率的に特定して利用者に提示する。
【００１２】
＜システムの構成＞
図１（ａ）は、第１の実施形態に係る情報処理システムの構成例を示す図である。図１において、情報処理システムは、サーバ装置１０、クライアント装置２０を備える。サーバ装置１０とクライアント装置２０は、例えば、インターネット、携帯電話網等の通信網や、無線ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）、近距離無線通信等、公知の通信技術により双方向に通信可能に接続される。サーバ装置１０は、例えば、ネットワーク上でクラウドとして機能する情報処理装置である。サーバ装置１０は、クライアント装置２０を介して入力される時系列データを蓄積する。さらに、クライアント装置２０を介して入力される利用者の指示を取得し、蓄積された時系列データのうち所望とされる部分時系列データを検索して出力する。クライアント装置２０は、例えば、利用者が持ち運んで操作可能なタブレットＰＣである。本実施形態では、クライアント装置２０において利用者が入力した農作物の栽培に関する時系列データや、過去の栽培状況に関するデータを検索するための指示を受け付けてサーバ装置１０に送信し、サーバ装置１０から出力された検索結果を表示する。
【００１３】
＜ハードウェア構成＞
図１（ｂ）は、サーバ装置１０のハードウェア構成である。サーバ装置１０は、本実施形態のシステムにおいて農作物の栽培に関するデータを管理する管理装置としての役割をもつ。ＣＰＵ１０１は、中央演算装置（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）であり、各種処理のための演算や論理判断等を行い、システムバス１０８に接続された各構成要素を制御する。このサーバ装置１０には、プログラムメモリとデータメモリを含むメモリが搭載されている。ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）１０２は、データメモリであり、ＣＰＵ１０１の上記プログラムのワーク領域、エラー処理時のデータの退避領域、上記制御プログラムのロード領域等を有する。ＲＯＭ（Ｒｅａｄ−Ｏｎｌｙ  Ｍｅｍｏｒｙ）１０３は、プログラムメモリであって、後述する各種処理手順を含むＣＰＵによる制御のためのプログラムを格納する。尚、サーバ装置１０に接続された外部記憶装置等からＲＡＭ１０２にプログラムをロードすることで、プログラムメモリを実現しても構わない。通信インタフェース（Ｉ／Ｆ）１０４は、公知の通信技術により、他の情報処理装置や通信機器、外部記憶装置等との間で、有線又は無線による双方向の通信を行う。本実施形態では、インターネットを介してクライアント装置とのデータの送受信を可能とする。他の装置との通信には、直接の通信以外に、中継装置を介した間接的な通信も含まれる。
【００１４】
表示デバイス１０５は、例えばＣＲＴディスプレイや、液晶ディスプレイ等であって、表示画面に画像を出力するデバイスである。表示デバイス１０５は、サーバ装置１０と有線あるいは無線で接続された外部デバイスでも構わない。入力デバイス１０６は、例えばタッチパネルやキーボードやマウス等の入力デバイスを介して、サーバ装置１０に入力される利用者の操作情報を取り込むためのデバイスである。ただし、本実施形態のサーバ装置１０の場合、表示及び入力に係る機能をクライアント装置に担わせ、表示デバイス１０５及び入力デバイス１０６は省略されても構わない。ＨＤＤ１０７は、本実施形態に係る複数の電子データやプログラムを記憶しておくためのハードディスクである。同様の役割を果たすものとして外部記憶装置を用いてもよい。ここで、外部記憶装置は、例えば、メディア（記録媒体）と、当該メディアへのアクセスを実現するための外部記憶ドライブとで実現することができる。このようなメディアとしては、例えば、フレキシブルディスク（ＦＤ）、ＣＤ−ＲＯＭ、ＤＶＤ、ＵＳＢメモリ、ＭＯ、フラッシュメモリ等が知られている。また、外部記憶装置は、ネットワークで接続されたサーバ装置等であってもよい。
【００１５】
図１（ｃ）は、クライアント装置２０として機能する情報処理装置のハードウェア構成である。クライアント装置２０は、本実施形態のシステムにおいて農作物の栽培に関するデータを入力、あるいは表示する端末装置としての役割をもつ。サーバ装置と同様、ＣＰＵ１１１は、ＲＡＭ１１２をワークメモリとして、ＲＯＭ１１３やＨＤＤ１１７に格納されたＯＳやプログラムを実行して、各種処理の演算や論理判断等を行い、システムバス１１８に接続された各構成を制御する。通信インタフェース（Ｉ／Ｆ）１１４は、公知の通信技術により、他の情報処理装置や通信機器、外部記憶装置等との間で、有線又は無線による双方向の通信を行う。本実施形態では、インターネットを介してサーバ装置とのデータの送受信を可能とする。他の装置との通信には、直接の通信以外に、中継装置を介した間接的な通信も含まれる。
【００１６】
表示デバイス１１５は、ＣＰＵ１１１の制御に従い、表示出力を行うデバイスである。また、入力デバイス１１６は、ＣＰＵ１１１の制御に従い、クライアント装置２０に入力される利用者の操作情報を取り込むためのデバイスである。本実施形態では、クライアント装置２０は、表示デバイス１１５及び入力デバイス１１６として、タッチパネルディスプレイを備える。なお、時系列データとして画像情報を扱う場合には、入力デバイス１１６として、撮像装置を備えたり、外部のカメラデバイスから画像情報を取り込むための入力インタフェースを備えたりすることもできる。また、各種センサデバイスを備え、それらの検知情報を時系列データとして入力してもよい。ＨＤＤ１１７は、本実施形態に係る複数の電子データやプログラムを記憶しておくためのハードディスクである。ただしネットワークや各種インタフェースを介して外部記憶装置と接続可能であってもよい。
【００１７】
＜機能構成＞
図２は、本実施形態に係る情報処理システム全体のソフトウェアの構成を示すブロック図の一例である。まず、サーバ装置１０として機能する情報処理装置の機能構成を表す。サーバ装置１０は、取得部２０１、管理部２０２、特定部２０４、決定部２０５、通信部２０６、検索部２０７を有する。これらの各機能部は、ＣＰＵ１０１が、ＲＯＭ１０３に格納されたプログラムをＲＡＭ１０２に展開し、後述する処理を実行することで実現されている。また例えば、ＣＰＵ１０１を用いたソフトウェア処理の代替としてハードウェアを構成する場合には、ここで説明する各機能部の処理に対応させた演算部や回路を構成すればよい。さらにサーバ装置１０は、ＨＤＤ１０７又はＲＡＭ１０２の機能部である保持部２０３を有する。以下、各要素について説明する。
【００１８】
取得部２０１は、後述する通信部２０６を介してクライアント装置２０において入力された時系列データを取得する。本実施形態において、時系列データは、農作物の栽培に関して日々収集される気温、天候、湿度、生育状態、画像、作業者によって行われた作業の記録の少なくとも何れか表す情報を、第１の単位時間ごとに収集したデータ群が連なったものである。ただし、時系列データを取得する形態は、クライアント装置２０から直接受け取るだけでなく、例えば外部記憶装置に記憶されたものを読み出したり、あるいは外部サービスから配信されている情報を取得したりする形態でもよい。なお、第１の単位時間とは、例えば１日あるいは１週間等の予め定められた単位である。
【００１９】
管理部２０２は、取得された時系列データを、少なくとも第１の単位時間より長い第２の単位時間の部分時系列データごとに分割して保持部に保持させる。本実施形態では、第１の単位時間の中で取得されたデータ群のそれぞれに、属する第２の単位時間の部分時系列データを示す識別子を対応付けることで、部分時系列データとして扱う。さらに本実施形態では、第１の単位時間の中で取得されたデータ群のそれぞれに、第２の単位時間の部分時系列データの中での相対位置を示す識別子を対応付ける。少なくとも第１の単位時間よりも長い第２の単位時間とは、例えばひと月、半年、１年、３年、といった所定の期間であり、時系列データが表す内容が大よそ繰り返される１周期分の長さを意味する。例えば単作（ある圃場で１年に１回、１種類の作物を栽培する場合を差す）の農作物の栽培においては、大よそ四季の巡りに合わせて農作物を育成し、収穫を迎え、土壌を休ませるための作業が繰り返し行われる。この場合、１年期に得られる時系列データが、第２の単位時間の部分時系列データとして処理される。以下本実施形態では、時系列データが大よそ繰り返す所定の期間のことを「シーズン」という。また、時系列データを第１の単位時間に分割したそれぞれのデータブロックを「区分」という。管理部２０２は、時系列データの各区分に、その区分が属するシーズンを一意に示す識別子、シーズンの中でのその区分の時間的な相対位置を示す識別子を割り当てる。
【００２０】
保持部２０３は、時系列データに含まれ、第１の単位時間の中で取得されたデータ群のそれぞれの、第２の単位時間の部分時系列データの中での相対位置が識別可能であるように、時系列データを保持する。本実施形態の場合、時系列データを構成するデータ群のそれぞれに、管理部２０２によって割り当てられた識別子を対応付けた状態で保持する。また、検索部２０７による検索結果の検索履歴情報を保持する。
【００２１】
特定部２０４は、クライアント装置２０が受け付ける、保持されている時系列データに含まれる区分の何れかを、対象区分として特定する。対象区分とは、後述する検索部２０７の検索処理において、検索クエリとして利用されるパラメータを持つ区分である。クライアント装置２０のユーザは、対象区分に含まれるデータ群と類似するデータ群を、蓄積されている時系列データの中から検索するために、クライアント装置２０を操作して対象区分を指定する。
【００２２】
決定部２０５は、対象として特定された区分の、その区分が属するシーズンの中での時間的な相対位置と、他のシーズンに属する区分のそれぞれの相対位置に基づいて、時系列データのうち実際に検索処理の対象とする検索範囲を決定する。本実施形態では、管理部２０２に割り当てられた各区分の識別子に基づいて検索範囲を絞り込む。通信部２０６は、ＮＥＴＩＦ１０４及びネットワークを介して、後述するクライアント装置２０の通信部２０９との間でデータの送受信を行う。本実施形態の場合、少なくとも時系列データを受信し、検索処理の結果を送信する。検索部２０７は、決定された検索範囲に含まれる時系列データから、対象として特定された区分に含まれるデータ群と類似するデータ群を検索する。本実施形態では、検索部２０７による検索結果として、特定された区分と類似するデータ群を含む区分を明示的に示し、さらに、その区分に含まれるデータ群の内容が閲覧可能となるように、クライアント装置２０に検索結果を提供する。
【００２３】
次にクライアント装置２０として機能する情報処理装置の機能構成を表す。サーバ装置１０は、入力部２０８、通信部２０９、受付部２１０、表示制御部２１１を有する。これらの各機能部は、ＣＰＵ１１１が、ＲＯＭ１１３に格納されたプログラムをＲＡＭ１１２に展開し、後述する処理を実行することで実現されている。また例えば、ＣＰＵ１１１を用いたソフトウェア処理の代替としてハードウェアを構成する場合には、ここで説明する各機能部の処理に対応させた演算部や回路を構成すればよい。以下、各要素について説明する。
【００２４】
入力部２０８は、入力デバイス１１６を介して入力される情報を、時系列データとしてシステムに入力する。例えば、タッチパネルディスプレイに表示したキーボードで入力されるテキスト情報や、撮像装置から取得される画像情報に、それらが取得された時間情報を対応付けた時系列データを得る。なお、時間情報は、クライアント装置２０に備えられた時計を利用して得たものでも、ユーザによって手動入力されたものでも構わない。
【００２５】
通信部２０９は、ＮＥＴＩＦ１１０とネットワークを介して、サーバ装置１０の通信部２０６との間でデータの送受信を行う。本実施形態では、少なくとも時系列データを送信し、検索処理の結果を受信する。受付部２１０は、サーバ装置１０に時系列データから所望とするデータブロックを検索する処理の実行を要求するために、対象とする区分を指定する入力を受け付ける。本実施形態の場合、表示デバイス１１５に表示されたユーザインタフェースに対する操作を受け付ける。表示制御部２１１は、表示デバイス１１５に表示させる画像を生成し、出力する。本実施形態では、対象区分を指定するためのユーザインタフェース画面を表す画像、及び、サーバ装置１０から受信した検索結果をユーザに提示する画像が表示される。
【００２６】
なお、図２に挙げた機能構成は、本実施形態を実現するために必要な最小の構成であり、それぞれの装置がさらに機能部を有していても構わない。例えば、サーバ装置に表示デバイス１０５に表示出力を行うための表示制御部を備えることもある。
【００２７】
＜処理の流れ＞
本実施形態において、情報処理システムの各要素が実行する処理の流れを図３のシーケンス図を参照して説明する。また以下では、４月から翌年３月までの１年期を繰り返す農作物栽培で得られる時系列データを、第１の単位時間を１日として処理する場合を例に挙げて本実施形態を説明する。
【００２８】
以下、各工程（ステップ）は、それら符号の先頭にはＳを付与して説明することとする。Ｓ３０１において、クライアント装置２０の入力部２０８は、ユーザがタッチパネルや撮像装置を操作したり、外部装置を接続するのに応じて、時系列データをシステムに入力する。Ｓ３０２において、通信部２０９により、入力された時系列データがサーバ装置１０の通信部２０６に向け送信される。Ｓ３０３において、サーバ装置１０の取得部２０１は、通信部２０６によって受信された時系列データを取得する。図４（ａ）の入力データ４０１は、取得される時系列データの一部を例示する。入力データ４０１は、データ日時４０２、データの種類４０３、データの詳細４０４の属性に、それぞれ値を持つ。データ詳細４０４の値は、データの種類４０３に応じた単位や次元に従う値が格納される。
【００２９】
Ｓ３０４において、管理部２０２は、取得された時系列データを第２の単位時間ごとに分割した部分時系列データを生成する。本実施形態では、時系列データに含まれる各データに、所属するシーズンを一意に示す識別子を対応付けることで、同一識別子をもつデータ群が部分時系列データとして生成する。図４（ｂ）は、本実施形態のサーバ装置１０が、予め参照情報として保持しているシーズンの定義表４０５である。ここでは４月から翌年３月までの１年期を１シーズンとして定義しており、シーズンを一意に表す識別子４０６が、シーズンの開始日時４０７と終了日時４０８に対応付けられている。例えば、２０１７年４月から２０１８年３月までのシーズンを表す識別子は「６」という数値である。Ｓ３０４では、管理部２０２が、各データが有するデータ日時４０２と、シーズンの開始日時４０７及び終了日時４０８を参照することで、各データが属するシーズンを特定し、特定されたシーズンを表す識別子４０６の値を、そのデータに対応付ける。
【００３０】
Ｓ３０５において、管理部２０２は、部分時系列データ内での相対位置を示す識別子を各データへ割り当てる。本実施形態では、各データの日時情報に基づいて、そのデータのシーズンｓ（ｓは識別子４０６の値の何れか）内での時間的な相対位置を示すインデックスを特定する。本実施形態では、以下の式１を用いて、シーズンｓ内での各データの相対位置を表すインデックスｘを算出する。ここで、Ｔｉは各データに対応付けられたデータ日時４０２、Ｔｂは各データが属するシーズンｓの開始日時、Ｔｄは予め定められた第１の単位時間であるとする。例えば、時間単位Ｔｄ＝１日である。
【００３１】
【数１】
2019219758.tif 000003
【００３２】
このようにして求められたインデックスｘは、本実施形態の場合、各データが１年期である各シーズンの開始後、何日目に得られたものかを意味し、各シーズンにおける時間的な相対位置を表す。
【００３３】
Ｓ３０６において、管理部２０２によって各データにシーズンと相対位置を示す識別子が対応付けられた時系列データが、保持部２０３に保持される。図４（ｃ）は、保持部２０３に保持される時系列データの一例であり、入力データ４０１に対して、管理部２０２によって割り当てられたシーズン４０９とインデックス４１０の値が対応付けられている。
【００３４】
図５は、時系列データから対象区分に類似する区分を検索する段階で、第１の実施形態に係るシステムの各構成要素で実行される処理の一例を表すシーケンス図である。Ｓ５０１では、クライアント装置２０の受付部２１０が、類似区分を検索する処理のクエリとなる対象区分を指定する入力を受け付ける。本実施形態では、ユーザは、表示デバイス１１５に表示されたユーザインタフェース画面を操作することで、クエリとなる区分を指定する。
【００３５】
図６は、本実施形態におけるユーザインタフェース画面の一例である。図６では、シーズン選択ボタン６０１で選択されたシーズンに含まれる区分の少なくとも一部が、区分表示エリア６０２に表示される。本実施形態では、時系列データを区分に分ける第１の単位時間は１日であるので、区分表示エリア６０２には、各区分に対応する日付が識別しやすいように並べて表示されている。ユーザは、表示された日付の何れかを選択することで、時系列データの中の、１つのデータブロックに相当する１つの区分を指定することができる。さらに本実施形態では、何れかの日付が選択されたことに応じて、図６の領域６０３に示すように選択された日付を識別可能に表示するとともに、さらに１日以上の日付が選択可能となる範囲調整スライダー６０４を表示する。表示されたスライダー６０４を操作し影響範囲６０５を指定する。図６に示す形態においては、２０１７／４／６を基準として、２０１７／４／５から２０１７／４／３まで前３日分の範囲が指定されている。
【００３６】
ここで、影響範囲６０５について説明する。例えば、農作物の栽培において、「葉が変色した」という現象が生じ、そのような現象が過去に起きたときの記録を参照したい場合がある。「葉が変色した」という現象は、ある日に初めて記録されたのだとしても、その現象は数日前の「雨が続いた」「気温が低い」といった現象と関連して起きたものである可能性がある。そこで、本実施形態では、範囲調整スライダー６０４を利用して、対象とするある１日に加えて、それ以前の任意の期間のデータ群の内容まで踏まえて類似したデータ群の検索を指示することを可能とする。このような検索を行えば、「葉が変色した」という現象の考えうる原因が様々であったとしても、例えば「気温が低い」ことに影響された場合と「気温が高い」ことに影響された場合を区別した検索結果を提供できる。
【００３７】
図５のシーケンスの説明に戻り、Ｓ５０２において、通信部２０９により、指定された対象区分に関する情報がサーバ装置１０の通信部２０６に向け送信される。Ｓ５０３において、決定部２０５が、部分時系列データ内での相対位置の比較に基づいて検索範囲を決定する。をＳ５０３の具体的な処理の例は、図７のフローチャートを参照して後述する。Ｓ５０３の処理により、保持されている時系列データのから、各シーズンにおける時間的な相対位置が、対象区分の相対位置と近い部分時系列データが検索範囲となる。
【００３８】
Ｓ５０４において、検索部２０７が、決定された検索範囲から対象に類似するデータ群を検索する。Ｓ５０４の具体的な処理の例は、図９のフローチャートを参照して後述する。Ｓ５０４の処理により、保持されている時系列データのから１以上の区分が検索結果として特定される。本実施形態では、１つのシーズンからは１つの区分が特定され、対象区分に類似する区分が存在しないシーズンからは類似区分では特定されない。
【００３９】
Ｓ５０５では、検索部２０７が、保持部２０３に保持された検索履歴情報を更新する。検索履歴情報とは、対象区分として指定された区分のシーズン及びインデックスを、検索結果として特定された区分のシーズン及びインデックスに対応付けた情報であり、後に詳述するＳ５０３の処理の中において利用される。Ｓ５０６では、検索部２０７により、検索結果が出力される。Ｓ５０７において、通信部２０６により、検索結果がクライアント装置２０の通信部２０９に向け送信される。なお、Ｓ５０６において出力された検索結果は、サーバ装置１０の表示デバイス１０５に表示される等してもよい。
【００４０】
Ｓ５０８では、表示制御部２１１が、検索部２０７に検索結果として出力されたデータ群を示す情報を含む画像情報を表示画面に表示させる。図１０は、クライアント装置２０で表示される検索結果を表示する画面の一例である。図６で既に示した要素には同じ番号を付し、詳細な説明は省略する。本実施形態のクライアント装置２０では、検索結果を示す場合、区分表示エリア６０２と並べて、類似区分が特定されたシーズンごとに、１つの区分表示エリア１００１を表示する。さらに、領域１００２で示すように、類似区分として特定された区分に対応する日付が識別可能であるように表現される。ユーザは、領域１００２を確認することで、検索結果として出力されたデータ群がどの日に取得されたデータ群であるかを知ることができる。また、区分表示エリア１００１には、検索結果として特定された１つの区分だけでなく、特定された区分とインデックスが連続する１以上の区分１００３を表示する。複数の区分を含む区分表示エリア６０２と区分表示エリア１００１が並べて配置されることで、対象とした区分とその類似区分だけでなく幅をもった期間同士を比較しやすい。さらに本実施形態では、ユーザ操作（例えばタッチパネル上でのタップ操作）により、区分表示エリア１００１の何れかの区分（日付）が指示された場合、その区分に対応するデータ群のそれぞれをデータ表示エリア１００４へ一覧表示する。これによりユーザは、蓄積された時系列データの中から、指定した日及びその日に至る数日間に得られたデータ群に類似するデータ群を容易に特定し、閲覧することが可能となる。
【００４１】
＜検索範囲を決定する処理の例＞
図７は、Ｓ５０３においてサーバ装置１０によって実行される、検索範囲を決定する処理の一例を表すフローチャートである。Ｓ７０１において、決定部２０５は、Ｓ５０２でクライアント装置２０から取得された対象区分を示す情報をもとに、パラメータを設定する。ここで設定されるパラメータは、シーズンｓ、インデックスｘ、影響範囲を表す区分数ｎである。例えば、図６に示した条件の場合、シーズンｓ＝６、インデックスｘ＝５、影響範囲を表す区分数ｎ＝３というパラメータが設定される。
【００４２】
Ｓ７０２において、決定部２０５は、保持部２０３に保持された時系列データの全てのシーズンの識別子の範囲に対して、以下のＳ７０３からＳ７０８の処理が実行されるように、変数ｉに値を与える。例えば図４（ｂ）に示した定義表４０５を参照すると、時系列データにはシーズン１〜６に対応するデータが含まれることがわかる。従ってｉに１〜６の値を与えながら繰り返し処理が行われる。ただし、対象区分を含むシーズンは除外する。つまり、変数ｉがＳ７０１で条件設定されたシーズンｓと同一になった場合は、以下の処理を実行しなくてもよい。さらにＳ７０３において、決定部２０５は、１〜ｎの範囲で、以下のＳ７０４からＳ７０５の処理が実行されるように、変数ｊに値を与える。
【００４３】
Ｓ７０４において、決定部２０５は、保持部２０３に保持された検索履歴情報を参照する。そして、Ｓ７０１で設定された、シーズンｓでインデックスｘ−ｊの区分に類似する区分だとして過去に検索された区分から、シーズンｉの部分時系列データに属する区分を特定する。図８（ａ）は、検索履歴情報の一例を表すテーブル８０１である。テーブル８０１には、クエリとして指定された対象区分のシーズン８０２及びインデックス８０３と、検索結果として特定された区分のシーズン８０４及びインデックス８０５の値が対応付けて格納されている。Ｓ７０４では、シーズン８０２の値がシーズンｓ、インデックス８０３の値がインデックスｘ−ｊ、シーズン８０４の値がｉである場合の、インデックス８０５の値を特定する。ただし、検索履歴情報の中に該当するデータが保持されていない場合は、空の値を返す。
【００４４】
Ｓ７０５において、決定部２０５は、Ｓ７０４で特定されたインデックスの区分を起点として、インデックスＲ（ｊ）の範囲の区分をシーズンｉにおける検索範囲（類似する区分を含む候補）として特定し、ＲＡＭ１０２に保持する。特定ここで、Ｒ（ｊ）はインデックスの増減範囲を算出する関数であり、たとえば以下の式２で表される。
【００４５】
【数２】
2019219758.tif 000004
【００４６】
図８（ｂ）のテーブル８０６は、Ｓ７０５の結果としてＲＡＭ１０２に保持されるデータの一例である。テーブル８０６では、シーズン８０７と、インデックス群８０８が対応付けられている。ここで、行８１０に注目し、シーズンの変数にｉ＝５が与えられているサイクルでのＳ７０３〜Ｓ７０５の処理を具体的に示す。まず、ｊ＝１のとき、検索履歴情報を表すテーブル８０１のうち、シーズンｓ＝６、インデックスｘ＝５−１＝４、ｉ＝５に対応する行８０９を参照すると、検索結果のインデックス８０５は８である。さらにｊ＝１のとき増減範囲はＲ（１）＝［０，２］であるので、シーズンｉ＝５における検索範囲は、インデックス８にＲ（１）＝［０，２］の増減範囲を持たせたインデックスが８，９，１０、の範囲として特定される。さらにｊ＝２，３について処理を繰り返すが、操作履歴情報に対応する情報が保存されていない。従って、ｉ＝５のシーズンについて特定される検索範囲はインデックス８，９，１０の範囲となる。このように変数ｉと変数ｊを変化させながら処理し、インデックスが重複しないように選ぶとテーブル８０６の結果が得られる。ｉ＝１の場合は、対応する検索履歴情報がないため、インデックス群が特定されなかったのでデータが空になっている。
【００４７】
フローチャートの説明に戻り、Ｓ７０６において、決定部２０５は、シーズンｉについて特定された区分の数が、閾値Ｎｄよりも多いかを判定する。閾値Ｎｄは、後に続く検索処理に十分な母集団を提供するために予め設定された閾値である。特定された区分の数が閾値Ｎｄより大きい場合、処理はＳ５０５に進む（Ｓ７０６でＹｅｓ）。一方、特定された区分の数が閾値Ｎｄ以下の場合には、処理はＳ７０７に進む（Ｓ７０６でＮｏ）。
【００４８】
Ｓ７０７では、決定部２０５は、シーズンｉの部分時系列データのうち、指定された対象区分と同じインデックスｘの区分を起点として、Ｗ（ｊ）の範囲のインデックスをもつ区分を、シーズンｉの検索範囲として特定する。ここで、Ｗ（ｊ）はインデックスの増減範囲を算出する関数であり、たとえば、以下の式３で表される。
Ｗ（ｊ）＝［−ｊ，ｊ］      式３
【００４９】
ただし、Ｓ７０７が処理される段階では、Ｓ７０３において変数ｊにはｊ＝ｎが与えられている。従って、シーズンｉの検索範囲はインデックスｘを起点としてＷ（ｎ）の値の範囲のインデックスをもつ区分となり、テーブル８０６に追加される。例えば、テーブル８０６ではｉ＝１に対応する区分数が０なので、ｘ＝５、ｎ＝３であることから、２，３，４，５，６，７，８の範囲が検索範囲として追加される。
【００５０】
以上が、本実施形態における対象区分の相対位置に基づいた検索範囲を決定する処理である。本実施形態では、検索範囲を決定する処理において過去の検索履歴を利用することで、計算量を低減することができる。ただし、絞り込みの方法はこれに限定されない。また、式２及び式３は一例であり、本発明を限定するものではない。
【００５１】
＜検索処理の例＞
図９は、Ｓ５０４においてサーバ装置１０によって実行される検索処理の一例を表すフローチャートである。Ｓ９０１では、検索部２０７が、保持されている時系列データのうち、対象区分として特定された区分に含まれるデータ群を読み出す。つまり、シーズンｓの部分時系列データの中のインデックスｘの区分のデータ群を抽出する。Ｓ９０２では、検索部２０７は、Ｓ５０３の処理により決定された検索範囲の区分のすべてに、Ｓ９０２〜Ｓ９０４の処理が実行されるように、変数ｉ，ｋに値を与える。ｉにはテーブル８０６に保持されているシーズンの識別子である値、ｋにはインデックスの識別子の値が与えられる。
【００５２】
Ｓ９０３において、検索部２０７は、時系列データから、シーズンｉの部分時系列データの中のインデックスｋの区分に属するデータを読み出す。Ｓ９０４において、検索部２０７は、Ｓ９０１で読み出したデータ群と、Ｓ９０３で読み出したデータ群の類似度を算出する。データ間の類似度は、一般的な時系列データの類似度を測る方法を用いる。具体的には、各々の抽出されたデータを時間順に並べデータ間の類似度を表す距離を算出する。たとえば、ユークリッド距離、Ｄｙｎａｍｉｃ  ｔｉｍｅ  ｗａｒｐｉｎｇやＥａｒｔｈ  Ｍｏｖｅｒ’ｓ  Ｄｉｓｔａｎｃｅ、編集距離、ハミング距離、Ｊａｃｃａｒｄ係数距離、マンハッタン距離、マハラノビス距離等を用いる。なお、データ群を、データの種類別に分け、それぞれのデータ間の類似度を算出してもよい。データが空の場合は、所定の十分に大きい値を、類似度を表す距離として出力してもよい。検索部２０７は、結果として得られた類似度に基づいて図８（ｃ）に示す類似度情報を生成し、ＲＡＭ１０２に保持させる。図８（ｃ）は、生成される類似度情報の一例を表す。テーブル８１１には、シーズン８１２及びインデックス８１３で表される区分ごとに、算出された類似度を表す距離８１４が対応付けられている。
【００５３】
Ｓ９０５において、検索部２０７は、Ｓ７０４で生成された類似度情報に基づいて、シーズンごとに、対象区分に類似する区分を特定する。例えば、シーズンごとに最も類似度を表す距離８１４が短い区分を選択する。なお、選択に関する距離の閾値を予め定義し、閾値以下の区分を複数選択する、または、閾値以上の場合は選択しないとしてもよい。検索部２０７は、シーズンごとに特定した区分を示す情報をＲＡＭ１０２に保持させる。図８（ｄ）は、シーズンごとに特定した区分を示す情報の一例を表す。図６に示した条件（シーズンｓ＝６、インデックスｘ＝５、影響範囲を表す区分数ｎ＝３）という対象区分に対する検索結果として、シーズン５，４，２からそれぞれ１つずつ区分が特定されたことを示す。この情報が、続くＳ５０５において出力される。
【００５４】
以上説明した第１の実施形態によれば、蓄積された時系列データの中から、所定の単位時間の中で得られたデータ群と類似するデータ群を効率的に特定して利用者に提示することができる。特に、農作物の栽培に関して収集される各種データのように、大よそ所定の周期で繰り返される時系列データの中から、過去の類似したデータ群を効率的に特定することが可能となる。
【００５５】
なお、本実施形態では、検索処理のクエリとする対象区分は単一の区分を指定する例を占示したが、複数の区分を指定したり、連続しない区分を指定したりするようにしてもよい。その場合は、検索結果として出力される複数の区分を一覧で表示する、または、複数の区分を内包する時間範囲を類似範囲とし、表示することができる。また、本実施形態では、複数の装置から構成されるシステムを説明したが、何れかの装置が他の装置を包含する構成としてもよい。例えば、サーバ装置１０として説明した情報処理装置において、時系列データの入力、及び検索結果の表示を行う構成でも、本実施形態を実現することができる。
【００５６】
＜第２の実施形態＞
第１の実施形態では、クライアント装置２０から検索処理の実行を指示するたびに、サーバ装置１０において行われる検索結果を、クライアント装置２０が受け取って表示する形態を示した。クライアント装置２０は例えばタブレットＰＣのような可搬装置とすることができ、通信環境さえ整っていれば、ユーザはクライアント装置２０を操作する場所を制限されることなく、都合のよい場所で過去のデータの検索を行うことができる。しかしながら、農作物が栽培される圃場が広大な場合等、その圃場の全体においてクライアント装置２０の通信環境が十分に整備されていない場合もある。そこで、第２の実施形態では、クライアント装置２０が、サーバ装置１０から受け取った検索結果をキャッシュする構成をさらに備えることで、その後、例えオフライン環境であっても必要最低限の検索結果を閲覧することが可能となる例を示す。ユーザは、例えば圃場に向かう前に、通信可能な状態にあるクライアント装置２０を操作して、キャッシュの更新を指示する。そして圃場において必要であれば過去に取得されたデータ群を閲覧することができる。
【００５７】
＜システムの構成＞
第２の実施形態に係るシステム構成、及び各装置のハードウェアの構成は、図１を使って説明した第１の実施形態のものに順じるため、説明を省略する。図１１は、第２の実施形態に係るシステムのソフトウェアの構成の一例を示す図である。図２と共通する機能部には同じ番号を付し、詳細な説明は省略する。第２の実施形態のクライアント装置２０は、作成部１１０１を備える。作成部１１０１は、ＣＰＵ１１１が、ＲＯＭ１１３に格納されたプログラムをＲＡＭ１１２に展開し、後述する処理を実行することで実現される。作成部１１０１は、通信部２０９を介して取得した検索結果を記憶するキャッシュデータを作成し、保持部１１０２に保持する。保持部１１０２は、ＨＤＤ１１７又はＲＡＭ１１２の機能部である。また、第２の実施形態では、受付部２１０は、検索クエリとなる対象区分を指定する操作に加えて、クライアント装置２０においてキャッシュの更新及び表示を指示する操作の入力を受け付ける。
【００５８】
＜処理の流れ＞
本実施形態において、情報処理システムの各要素が実行する処理の流れを図１２のシーケンス図を参照して説明する。ただし、図５と共通するステップには同じ番号を付し、詳細な説明は省略する。なお、第１の実施形態と同様、以下でも４月から翌年３月までの１年期を繰り返す農作物栽培で得られる時系列データを、第１の単位時間を１日として処理する場合を例に挙げて本実施形態を説明する。
【００５９】
Ｓ１２０１では、クライアント装置２０の受付部２１０が、キャッシュの更新を指示する入力を受け付ける。本実施形態では、ユーザは、表示デバイス１１５に表示されたユーザインタフェース画面を操作することで、キャッシュの更新を指示する。
【００６０】
図１３（ａ）は、本実施形態におけるユーザインタフェース画面の一例である。図１３では、基準日設定ボタン１３０１を押下することで、基準日を設定することができる。ここで基準日とは、検索の対象区分としてサーバ装置１０に伝えられる区分に対応する。本実施形態では、初期値として当日の日付が入力される。その後でクライアント装置２０を持ち出して農作業を行うユーザが、通信環境が整わない場所でも至急確認したいと所望するデータは、当日に類似する時系列データである可能性が高いからである。ただし、初期値は例えば前日の日付でもいい。また、当日に得られたデータが少なく、後段の検索処理での類似度の算出が困難である場合には前日を基準とする等の変形を加えることもできる。
【００６１】
さらに図１３（ａ）の画面には、範囲選択スライダー１３０２が表示される。範囲選択スライダー１３０２は、図６の範囲調整スライダー６０４と同様に、基準日に対応する区分に加えて検索処理に考慮すべき区分の範囲を設定することができる。たとえば、図１３（ａ）では、２０１７／４／６を基準として、前３日分の範囲が指定されている。ユーザによって、更新ボタン１３０３を押下されたことに応じて、設定された条件でクライアント装置２０に記憶されるキャッシュデータを更新することを指示できる。
【００６２】
図１２のシーケンスの説明に戻り、Ｓ１２０２において通信部２０９により、指定された基準日に関する情報が、対象区分に関する情報として、サーバ装置１０の通信部２０６に向け送信される。例えば、図１３（ａ）の場合、シーズンｓ＝６、インデックスｘ＝５、影響範囲を表す区分数ｎ＝３という情報がサーバ装置１０に送られる。
【００６３】
第２の実施形態では、Ｓ５０７で送信された検索結果を受信すると、Ｓ１２０２において作成部１１０１が、受信したキャッシュデータと、すでに保持部１１０２に保持されているキャッシュデータの差分を取得する。例えば、図１４（ａ）のテーブル１４０１は、サーバ装置１０から受信した最新の検索結果の一例であり、図１４（ｂ）のテーブル１４０２が、保持部１１０２に保持されているキャッシュデータの一例である。作成部１１０１は、最新の検索結果であるテーブル１４０１のみに存在する区分を、キャッシュに追加する区分として取得する。そして、古いキャッシュデータであるテーブル１４０２にのみ存在する区分を、キャッシュから削除する区分として取得する。図１４（ｃ）のテーブル１４０３は、作成部１１０１によって取得される差分データの一例である。
【００６４】
上述した第２の実施形態によれば、膨大な時系列データの中から、基準日に取得されたデータ群に類似するデータ群だけをクライアント装置２０にキャッシュする。その結果、ユーザはオフライン環境での作業中であっても、必要最低限のデータを閲覧することが可能になる。図１３（ｂ）は、ユーザがキャッシュを呼び出して表示させる指示を入力した場合にクライアント装置２０に表示されるユーザインタフェース画面の一例である。図１０に示した検索結果の表示画面と同様の形式で表示すると同時に、アイコン１３０４により、キャッシュデータが表示されていることを明示的に示す。ユーザにとっては、オンライン環境での検索と同様の操作感で過去のデータ群を閲覧することができると同時に、オンライン環境での検索結果とオフライン環境でのキャッシュデータの表示とを容易に識別することができる。
【００６５】
＜その他の実施形態＞
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【符号の説明】
【００６６】
１０  サーバ装置
１０１  取得部
２０２  管理部
２０３  保持部
２０４  特定部
２０５  決定部
２０６  通信部
２０７  検索部
２０  クライアント装置
２０８  入力部
２０９  通信部
２１０  受付部
２１１  表示制御部
【図１】
2019219758.tif 000005
【図２】
2019219758.tif 000006
【図３】
2019219758.tif 000007
【図４】
2019219758.tif 000008
【図５】
2019219758.tif 000009
【図６】
2019219758.tif 000010
【図７】
2019219758.tif 000011
【図８】
2019219758.tif 000012
【図９】
2019219758.tif 000013
【図１０】
2019219758.tif 000014
【図１１】
2019219758.tif 000015
【図１２】
2019219758.tif 000016
【図１３】
2019219758.tif 000017
【図１４】
2019219758.tif 000018