以下、情報処理装置等の実施形態について図面を参照して説明する。なお、実施の形態において同じ符号を付した構成要素は同様の動作を行うので、再度の説明を省略する場合がある。
(実施の形態)
図1は、本実施の形態における情報処理システム1000のブロック図である。
情報処理システム1000は、情報処理装置1および1または2以上の端末装置2を備える。
情報処理装置1と、1または2以上の端末装置2のそれぞれとは、例えば、有線または無線の通信回線等により、情報の送受信が可能となるよう接続される。例えば、情報処理装置1と、1または2以上の端末装置2のそれぞれとは、有線または無線のネットワークや近距離無線通信等により、情報の送受信が可能となるよう接続される。ここでは、一例として、情報処理システム1000が、インターネット等の無線ネットワークを介して接続可能な、情報処理装置1と、3以上の端末装置2とを備えている場合を示している。
情報処理装置1は、自販機情報格納部101、件数格納部102、内的要因格納部103、外的要因格納部104、件数更新部105、定期訪問情報格納部106、スコア取得部107、訪問変更受付部108、訪問先決定部109、追加候補推薦受付部110、位置関連情報格納部111、担当者位置取得部112、追加訪問候補決定部113、および訪問先出力部114を備える。
情報処理装置1は、通常、サーバ装置である。ただし、情報処理装置1は、サーバ装置に限定されるものではない。情報処理装置1は、例えば、コンピュータ等により実現される。
自販機情報格納部101には、2以上の自販機情報が格納される。自販機情報は、自動販売機を識別する自販機識別子と、この自動販売機の1または2以上の自販機属性値とを有する情報である。自販機識別子は、自動販売機に割り当てられたコードであってもよく、自動販売機の機器番号や製造番号等であってもよく、自動販売機の名称や通称等であってもよい。また、自販機識別子は、自動販売機のMACアドレスやIPアドレス等のネットワーク上のアドレス情報であってもよく、自動販売機が設置されている場所の識別子であってもよい。自動販売機が設定されている場所の識別子は、自販機の設置されている住所であってもよく、自販機が設置されている場所に割り当てられたコードであってもよい。自販機識別子は、上記の情報に限定されない。
自動販売機は、例えば、容器入りの飲料や、固形状の食品等を販売する自動販売機である。ただし、自動販売機が販売する商品は、食品等に限定されるものではなく、例えば、たばこや、電子機器、小型家電等の食品以外のものを販売する自動販売機等であってもよい。自動販売機は、1または2以上のコラムを有している。コラムとは、自動販売機の商品が格納される部分であり、カラムとも呼ばれる。コラムは、商品を収容する部分や保持する部分と考えてもよい。商品は、通常、コラムに重ねて格納される。コラムには、例えば、商品が取り出し可能に格納される。通常、一のコラムには、同じ商品が格納される。ここでの自動販売機は、好ましくは2以上のコラムを有する自動販売機であることが好ましい。
自販機情報格納部101には、自販機情報が有する自販機識別子が示す自動販売機の担当者を識別する担当者識別子とそれぞれ対応付けられた2以上の自販機情報が格納されていてもよい。例えば、自販機情報格納部101には、担当者識別子をさらに有する2以上の自販機情報が格納されていてもよい。自販機情報とそれぞれ対応付けられた担当者識別子は、通常、異なる担当者識別子である。自動販売機の担当者とは、例えば、自動販売機の訪問を担当する担当者である。自動販売機の担当者とは、例えば、自動販売機を訪問して、商品補充や、商品入れ替え、代金回収、清掃、メンテナンス等を行う者であり、これらの作業を行う作業者や、自動販売機を訪問する訪問者等と考えてもよい。なお、以下、担当者が自販機を訪問して自動販売機に対して行う作業を、訪問作業と呼ぶ場合がある。担当者識別子は、担当者名であってもよく、担当者に割り当てられたコードであってもよく、担当者の社員番号であってもよい。また、担当者識別子は、担当者が訪問を担当するエリア名や、エリアコード等のエリア識別子であってもよい。担当者識別子は、上記の情報に限定されない。
自販機情報格納部101に担当者識別子と対応付けられた2以上の自販機情報が格納されているようにすることで、例えば、2以上の担当者の訪問先を決定することや、2以上の担当者のうちの任意の1以上の担当者の訪問先を決定することが可能となる。なお、一人の担当者の訪問先を決定する場合には、この一人の担当者についての自販機情報が自販機情報格納部101に格納されていればよく、自販機情報が、担当者識別子と対応付けられて格納されていなくてもよい。
自販機属性値は、自販機情報が有する自販機識別子が示す自動販売機に関する属性値である。自販機情報が有する1または2以上の自販機属性値は、動的に変化する動的属性値であってもよく、動的に変化しない属性値であってもよく、1以上の動的属性値と、1以上の動的に変化しない属性値との組み合わせであってもよい。動的属性値は、例えば、自動販売機稼働情報と言っても良い。
自販機属性値は、例えば、コラム情報、売上情報、売切情報、エラー情報、および自販機優先情報である。自販機情報は、例えば、上記の自販機属性値のうちの、1以上を含んでいる。
コラム情報は、自動販売機の各コラムに関する属性値である。コラム情報は、例えば、各コラムの商品の在庫数、各コラムの商品の最大格納数、各コラムの商品の補充可能数、各コラムの商品の販売数や、各コラムの商品の売上金額の1以上を有する情報である。商品の在庫数は、コラムに格納されている商品数や、商品の残数と考えてもよい。最大格納数は、いわゆるコラムを満タンにした状態の商品数と考えてもよい。補充可能数は、通常、コラムの最大格納数から在庫数を減算した数に相当する。商品の販売数は、例えば、前日からの販売数や、直近の一週間の販売数等の、一定期間内の販売数である。複数のコラムに同じ商品が格納されている場合、この複数のコラムを一つのコラムとして扱うようにしてもよい。例えば、自販機属性値は、コラム識別子と対応付けられたコラム情報を有している。コラム識別子は、コラムの識別子である。コラム識別子は、例えば、コラムに割り当てられたコードや、コラムや、コラムの商品投入口を、これらが配列されている行番号や、列番号や、これらの組み合わせで表した情報である。一の自動販売機の複数のコラムのそれぞれについてのコラム情報である販売数や売上金額は、自動販売機一台当たりの販売数の構成や売上構成を示す情報と考えてもよい。ここでの販売数の構成や売上構成は、コラムごとの販売数の構成や売上構成であってもよく、コラムに格納される商品の販売数の構成や売上構成であってもよい。また、コラム情報は、特定の商品が格納されているコラムの在庫数が予め決められた閾値以下となっていることを示す情報であってもよい。
なお、コラム識別子の代わりにコラム識別子が示すコラムに保持される商品名や商品コード等の商品識別子を用いてもよい。なお、かかることは、以下においても同様である。
売上情報は、自動販売機の売上に関する情報である。売上情報は、例えば、自動販売機一台当たりの予め決められた一定期間内の商品の売り上げ数や、売上金額である。この一定期間の長さ等は問わない。
売切情報は、自動販売機の売り切れに関する情報である。売切情報は、自動販売機に、売り切れのコラム(または商品)があることを示す情報であってもよく、売り切れが発生しているコラム数(または商品数)の情報であってもよく、売り切れが発生した1または2以上のコラムのコラム識別子(または商品識別子)を有する情報であってもよい。また、売切情報は、自動販売機に売り切れが発生してからの経過時間を示す情報であってもよく、売り切れが発生したコラムのコラム識別子(または商品識別子)と、売り切れが発生してからの経過時間との1または2以上の組を有する情報であってもよい。なお、経過時間は、日数でも良いし、時間等でも良く、単位は問わない。
エラー情報は、自動販売機のエラーに関する情報である。エラー情報は、例えば、自動販売機にエラーが発生していることを示す情報である。自動販売機に発生するエラーとは、例えば、つり銭切れ、代金投入口詰まり、商品取り出し口詰まり、自動販売機内の温度異常、通信障害等である。エラー情報は、例えば、エラーが発生しているか否かを示す情報、エラーの内容や種類等を示す情報(例えば、エラーコード)、およびエラーが発生してからの経過時間の情報等の1以上を有する情報である。
自販機優先情報は、自動販売機の優先度に関する情報である。自販機優先情報は、例えば、訪問が優先的に行われる自動販売機であることを示す情報である。自販機優先情報は、例えば、優先度が高いか低いかを示す情報や、優先度のレベルを3以上の段階で表した情報である。
例えば、上述した売上情報や、売切情報、エラー情報は、上述した動的属性値と考えてもよい。また、コラム情報のうちの、コラムごとの在庫数や、補充可能数、販売数は、上述した動的属性値と考えてもよい。
なお、自販機情報が有する自販機属性値は、上記の自販機属性値に限定されるものではない。
自販機情報格納部101に、どのように取得された自販機情報が、どのような過程で蓄積されるかは問わない。例えば、ユーザ等が入力デバイス(図示せず)を介して手入力した自販機情報が、直接または間接的に蓄積されてもよい。また、各自動販売機が送信する1以上の自販機属性値を、直接、または自動販売機が送信する自販機情報を収集するサーバ装置等を介して間接的に、情報処理装置1の受信部(図示せず)が自販機識別子と対応付けて受信し、受信した自販機属性値と自販機識別子とを有する自販機情報を蓄積してもよい。また、格納部(図示せず)に格納された自販機情報を、処理部(図示せず)が読み出して、蓄積してもよい。また、自動販売機が送信する1以上の自販機属性値や、格納部(図示せず)に予め格納されている自販機属性値等を用いて、情報処理装置1や、他の装置等が生成した自販機属性値を有する自販機情報が、自販機情報格納部101に蓄積されてもよい。
自販機情報格納部101に格納される自販機情報は、訪問先となる自動販売機を決定する際に最新である自販機情報であることが好ましいが、最新の自販機情報でなくてもよい。
自販機情報格納部101に格納される自販機情報は、担当者が定期訪問する自動販売機の自販機情報を含んでいてもよく、含んでいなくてもよい。
自販機情報格納部101に格納される自販機情報は、スコア取得部107がスコアを取得するために、他の格納部(図示せず)から取得した自販機属性値や他のサーバ装置等から受信した自販機属性値が、自販機識別子と対応付けて、または自販機識別子および担当者識別子と対応付けて一時記憶された情報であってもよい。また、自販機情報格納部101に格納される自販機情報は、スコアを取得するために、他の格納部(図示せず)等に格納された自動販売機等に関する情報を用いてスコア取得部107が生成した情報等であってもよい。
自販機情報格納部101は、不揮発性の記録媒体が好適であるが、揮発性の記録媒体でも実現可能である。かかることは、他の格納部についても同様である。
件数格納部102には、担当者が1日に訪問する自動販売機の件数を特定する件数情報が格納される。件数情報は、例えば、訪問する自動販売機の件数の値である。また、件数情報は、訪問する自動販売機の件数を算出するための予め決められた演算式やアルゴリズム等に、パラメータとして与えられる値であってもよい。ただし、件数情報は、件数を特定可能な情報であれば、上記の情報に限定されない。以下においては、主として、件数情報が、訪問する件数の値である場合を例に挙げて説明する。
件数情報は、例えば、固定値であってもよく、動的に決定される値であってもよい。件数情報は、例えば、複数の担当者が一日に訪問する自動販売機の件数の平均値であってもよく、この平均値に、予め決められた固定値(例えば、2や、3等)を加算した値であってもよい。件数格納部102に格納される件数情報は、例えば、後述するように、件数更新部105が決定する件数情報であってもよく、件数更新部105が決定する件数情報と同様の処理により決定される件数情報であってもよい。
例えば、件数格納部102には、2以上の担当者識別子とそれぞれ対応付けられた件数情報が格納されてもよい。例えば、件数格納部102には、件数情報と担当者識別子とを有する2以上の情報が格納されてもよい。
件数情報は、例えば、担当者に応じて決定される。例えば、担当者識別子と対応付けて格納される件数情報は、担当者識別子が示す担当者に応じて決定される件数情報である。例えば、担当者識別子と対応付けて格納される件数情報は、例えば、担当者識別子が示す担当者に応じて、後述するように件数更新部105が動的に決定する件数情報であってもよく、予め決められた固定値であってもよい。
内的要因格納部103には、1または2以上の内的要因情報が格納される。内的要因情報は、担当者に関する情報である。内的要因情報は、例えば、担当者の訪問作業の能力に関する1または2以上の情報である。内的要因情報は、例えば、訪問日当日の作業者数、担当者の熟練度、訪問日の一日前の営業日に訪問した自動販売機の数、予め決められた期間内に訪問した自動販売機の、一日当たりの平均数の1以上を含む情報である。作業者数は、担当者を含む人数であっても、含まない人数であってもよい。ここでの作業者は、訪問者と考えてもよい。担当者の熟練度とは、担当者の訪問作業を行うスキルのレベルや、経験期間(例えば、経験年数)等を示す情報である。担当者の熟練度は、担当者の熟練度が高いか否かを示す情報であってもよく、担当者のスキルやレベルを、3以上の多段階で評価した値であってもよく。担当者の熟練度は、数値で表される値や、数値に変換可能な値であることが好ましい。なお、熟練度は、担当者が行う作業ごとの熟練度であってもよい。また、担当者に加えて、担当者以外の訪問者がある場合(例えば、担当者も含めた訪問者数が複数である場合)、内的要因情報は、担当者以外の訪問者の、熟練度等の情報をさらに有していてもよい。自動販売機の平均数は、例えば、直近の3日間や、5日間(ただし、ここでの日数は営業日の日数とする)等の予め決められた日数の平均数であってもよく、直近の2週間等であってもよく、先月等であってもよく、その長さは問わない。また、直近の期間であることが好ましいが、直近の期間でなくてもよい。なお、担当者が新規に加入した場合や、担当者が休暇を取っていた場合等の様々な理由により、訪問先を決定する担当者の予め決められた期間内の一日当たりの平均数が算出できない場合、内的要因情報が有する担当者が予め決められた期間内に訪問した自動販売機の平均数として、複数の担当者(例えば、担当者と同じ部署の複数の担当者等)が、上記の予め決められた期間内や、上記以外の予め決められた期間内等に訪問した訪問先の平均値等を用いるようにしてもよい。
内的要因格納部103には、訪問先を決定する訪問日についての最新の内的要因情報が格納されていることが好ましいが、最新の内的要因情報が格納されていなくてもよい。ただし、少なくとも作業者数は、訪問先を決定する訪問日の最新の訪問者数が格納されていることが好ましい。
内的要因格納部103には、例えば、2以上の担当者識別子とそれぞれ対応付けられた内的要因情報が格納されてもよい。例えば、内的要因格納部103には、内的要因情報と担当者識別子とを有する2以上の因情報が格納されてもよい。
内的要因格納部103に、どのように取得された内的要因情報が、どのような過程で蓄積されるかは問わない。例えば、入力デバイス等を介して手入力等により入力された内的要因情報が、内的要因格納部103に蓄積されてもよい。また、担当者の訪問状況を管理するサーバ装置(図示せず)等が、担当者が訪問した訪問先の情報等を用いて算出して送信する訪問した自動販売機の平均数等を、受信部(図示せず)が受信して、内的要因格納部103に蓄積してもよい。また、情報処理装置1の処理部(図示せず)等が、担当者の訪問状況を管理するサーバ装置(図示せず)等から、担当者の訪問した訪問先の情報等を取得し、取得した情報を用いて算出した予め決められた期間内の自動販売機一日当たりの平均数等を、内的要因格納部103に蓄積してもよい。
外的要因格納部104には、外的要因情報が格納される。外的要因情報は、訪問に対して影響を与える外的な要因を示す情報である。外的要因情報は、例えば、季節情報、天気情報、渋滞情報、イベント情報、混雑情報等の1以上を有する情報である。季節情報とは、季節を示す情報である。天気情報は、天気を示す情報である。天気情報は、訪問日の天気予報の情報であってもよく、訪問日の降水確率等の情報等であってもよい。渋滞情報は、訪問日の訪問対象となる複数の自動販売機が含まれるエリアにおける渋滞予想の情報であってもよい。イベント情報は、例えば、自動販売機が設置されているエリアや自動販売機が設置されている場所の近隣で行われるイベントの有無や、イベントの種類や、動員規模等の情報である。イベントは、例えば、運動会や、花火大会、フェスティバル、ライブ等である。混雑情報は、自動販売機が設置されているエリアにおける人の混雑状況の予測情報である。外的要因情報を構成する各情報は、数値で表される情報、または数値に変換可能な情報であることが好ましい。
外的要因格納部104には、訪問先を決定する訪問日についての最新の外的要因情報が格納されていることが好ましいが、最新の外的要因情報が格納されていなくてもよい。ただし、少なくとも作業者数は、訪問先を決定する訪問日の最新の訪問者数が格納されていることが好ましい。
外的要因格納部104には、例えば、2以上の担当者識別子とそれぞれ対応付けられ外的要因情報が格納されてもよい。外的要因格納部104には、例えば、担当者識別子と外的要因情報とを有する2以上の情報が格納されてもよい。担当者識別子と対応付けられた外的要因情報は、例えば、担当者識別子が識別する担当者が担当するエリアごとについての外的要因情報である。
外的要因格納部104には、例えば、情報処理装置1の処理部(図示せず)等がカレンダー等から取得した季節情報や、情報処理装置1の受信部(図示せず)等が、天気情報を提供するサーバ装置(図示せず)から受信した天気情報を有する外的要因情報が蓄積される。また、外的要因格納部104には、情報処理装置1の受信部(図示せず)等が、渋滞情報、イベント情報、および混雑情報等をそれぞれ提供するサーバ装置(図示せず)等から受信した渋滞情報、イベント情報、および混雑情報等の一以上を有する外的要因情報が蓄積される。ただし、どのように取得された外的要因情報が、どのように外的要因格納部104に蓄積されるかは上記に限定されるものではない。
件数更新部105は、新しい件数情報を取得し、件数格納部102の件数情報を、新しい件数情報に更新する。例えば、件数更新部105は、件数格納部102に既に件数情報が格納されている場合、新しい件数情報を取得し、取得した件数情報で、件数格納部102に格納されている件数情報を更新する。また、例えば、件数格納部102に件数情報が格納されていない場合、件数更新部105は、新規の件数情報を取得し、取得した件数情報を件数格納部102に蓄積(例えば、追記)する。
件数更新部105は、例えば、内的要因情報を用いて件数情報を取得する。例えば、件数更新部105は、内的要因情報を用いて新しい件数情報を取得する。件数更新部105は、例えば、内的要因情報が示す担当者の訪問作業の経験年数が高いほど、多い件数を特定する件数情報を取得する。例えば、経験年数が高いほど、連続的に、または段階的に特定される件数が多くなる件数情報を取得する。件数更新部105は、例えば、内的要因情報が示す担当者の経験年数が予め決められた値に達した場合に、予め決められた数だけ増加させた件数を特定する件数情報を取得する。
例えば、件数更新部105は、内的要因情報が有する予め決められた期間内に訪問した自動販売機の一日当たりの平均数をパラメータとする増加関数により、件数情報を取得する。例えば、件数更新部105は、内的要因情報が有する予め決められた期間内に訪問した自動販売機の一日当たりの平均数、または平均数に予め決められた数値を加算、減算、乗算、または除算した件数を特定する件数情報を取得する。なお、件数情報を取得する際において、平均値等の値の小数点以下の端数は、切り捨てしてもよく、切り上げしてもよく、四捨五入してもよく、その端数の処理は問わない。また、例えば、件数更新部105は、内的要因情報が有する訪問日に対して、予め決められた日数だけ前の営業日(例えば、一日前の営業日)に訪問した自動販売機の数と同じ件数、または訪問した自動販売機の数に予め決められた数値を加算、減算、乗算、または除算した件数を件数情報として取得してもよい。
また、例えば、件数更新部105は、内的要因情報が有する訪問日の作業者数が多くなるほど、多い件数を特定する件数情報を取得してもよい。件数更新部105が取得する件数情報は、例えば、作業者数が多くなるにしたがって、連続的に、または段階的に、特定される件数が多くなる件数情報である。例えば、件数更新部105は、作業者数をパラメータとする増加関数により、件数情報を取得する。
また、例えば、件数更新部105は、内的要因情報が有する担当者の熟練度が高いほど、多い件数を特定する件数情報を取得してもよい。例えば、件数更新部105が取得する件数情報は、例えば、担当者の熟練度が高くなるにしたがって、連続的に、または段階的に、件数が多くなる件数情報である。例えば、件数更新部105は、担当者の熟練度をパラメータとする増加関数により、件数情報を取得する。
件数更新部105は、例えば、外的要因情報を用いて新しい件数情報を取得する。件数更新部105は、例えば、外的要因情報が有する季節情報が、夏または冬を示す場合に、季節情報が春または秋を示す場合と比較して少ない件数を特定する件数情報を取得する。例えば、件数更新部105は、季節情報が春または秋である場合に、訪問件数の初期値となる件数に対して、予め決められた件数を加算した件数や、1より大きい予め決められた値を乗算した件数を特定する件数情報を取得し、季節情報が夏または冬である場合は、訪問件数の初期値を特定する件数情報を取得する。なお、件数更新部105は、季節情報が夏または冬である場合に、予め決められた件数を特定する第一の件数情報を取得し、季節情報が春または秋である場合に、第一の件数情報よりも多い件数を特定する第二の件数情報を取得してもよい。
件数更新部105は、例えば、外的要因情報が有する担当者が担当するエリアの天気情報が、雨を示す場合は、晴れを示す場合と比較して少ない件数を特定する件数情報を取得し、天気情報が、雪を示す場合は、雨を示す場合と比較して少ない件数を特定する件数情報を取得する。例えば、件数更新部105は、天気情報が雨である場合に、訪問件数の初期値となる件数に対して、予め決められた件数を減算した件数や、1より小さい予め決められた正の値を乗算した件数を特定する件数情報を取得し、天気情報が晴れである場合は、訪問件数の初期値を特定する件数情報を取得する。なお、件数更新部105は、天気情報が雨である場合に、予め決められた件数を特定する第一の件数情報を取得し、天気情報が晴れである場合に、第一の件数情報よりも多い件数を特定する第二の件数情報を取得してもよい。
件数更新部105は、例えば、外的要因情報が有する渋滞情報が、担当者が担当するエリアに渋滞があることを示す場合に、渋滞がない場合と比較して少ない件数を特定する件数情報を取得する。例えば、件数更新部105は、渋滞情報が、渋滞があることを示す場合に、訪問件数の初期値となる件数に対して、予め決められた件数を減算した件数や、1より小さい予め決められた正の値を乗算した件数を特定する件数情報を取得し、渋滞情報が、渋滞がないことを示す場合は、訪問件数の初期値を特定する件数情報を取得する。なお、件数更新部105は、渋滞情報が、渋滞があることを示す場合に、予め決められた件数を特定する第一の件数情報を取得し、渋滞がないことを示す場合に、第一の件数情報よりも多い件数を特定する第二の件数情報を取得してもよい。
同様に、件数更新部105は、例えば、外的要因情報が有するイベント情報が、担当者が担当する自動販売機が設定されているエリアにイベントがあることを示す場合に、イベントがない場合と比較して少ない件数を特定する件数情報を取得してもよい。さらに、イベントの動員規模が大きいか否かを、閾値を用いて判断し、動員規模が大きい場合に、大きくない場合と比較して、より少ない件数を特定する件数情報を取得してもよい。また、同様に、件数更新部105は、例えば、外的要因情報が有する混雑情報が、担当者が担当する自動販売機が設定されているエリアに混雑が発生していることを示す場合に、混雑がない場合と比較して少ない件数を特定する件数情報を取得してもよい。
件数更新部105は、内的要因情報と外的要因情報とを用いて、件数情報を取得してもよい。例えば、件数更新部105は、外的要因情報を用いて件数情報を取得する際に用いる訪問する件数の初期値として、内的要因情報を用いて取得した訪問する自動販売機の件数を用いてもよい。例えば、件数更新部105は、内的要因情報を用いて取得した訪問する自動販売機の件数(例えば、担当者識別子ごとの件数)を、外的要因情報に応じて、上記のように増減させた件数を特定する件数情報を取得するようにしてもよい。
件数更新部105は、例えば、上記のような内的要因情報および外的要因情報の少なくとも一方が有する1または2以上の情報をパラメータとして上記のような件数情報を取得する予め決められた演算式に、内的要因情報および外的要因情報の少なくとも一方が有する1以上の情報を代入することにより、件数情報を取得してもよい。また、内的要因情報および外的要因情報の少なくとも一方が有する1または2以上の情報が、それぞれ、予め決められた閾値を満たすか否かの判断を順次行ってそれぞれの判断結果に応じて件数を決定する予め決められたアルゴリズムを用いて、件数情報を取得してもよい。ただし、件数更新部105が、内的要因情報および外的要因情報の少なくとも一方が有する1または2以上の情報を用いて、どのように、上記のような件数情報を取得するかは問わない。
件数更新部105は、例えば、1または2以上の担当者識別子ごとに上記のように件数情報を取得してもよい。そして、件数更新部105は、担当者識別子ごとに取得した件数情報で、件数格納部102に格納されている件数情報を更新してもよい。例えば、件数更新部105は、担当者識別子ごとに件数情報を取得し、担当者識別子ごとに取得した件数情報で、同じ担当者識別子と対応付けられて件数格納部102に既に格納されている件数情報を更新する。また、同じ担当者識別子と対応付けられた件数情報が件数更新部105に格納されていない場合、担当者識別子について取得した件数情報を、この担当者識別子と対応付けて件数格納部102に蓄積する。例えば、訪問する自動販売機を決定する際に、毎回、新規に件数情報を取得する場合、件数更新部105は、件数格納部102に格納された件数情報を削除した後、新たに担当者識別子ごとに取得した件数情報を、担当者識別子と対応付けて件数格納部102に蓄積してもよい。
件数更新部105は、例えば、担当者識別子と対応付けられた内的要因情報および外的要因情報の少なくとも一方を用いて、担当者識別子ごとに、件数情報を取得してもよい。なお、担当者識別子と対応付けられた内的要因情報を用いる点を除けば、内的要因情報を用いて件数情報を取得する処理については、上記と同様であるため、説明を省略する。また、担当者識別子と対応付けられた外的要因情報を用いる点を除けば、外的要因情報を用いて件数情報を取得する処理については、上記と同様であるため、説明を省略する。
なお、件数更新部105が、件数情報を取得する1または2以上の担当者識別子をどのように取得するかは問わない。例えば、格納部(図示せず)等に予め格納されている訪問先の自動販売機を決定する1または2以上の担当者の担当者識別子のリスト等から、担当者識別子を適宜読み出すようにしてもよい。また、この1または2以上の担当者識別子は、内的要因格納部103に格納された内的要因情報等と対応付けられた担当者識別子や、既に件数更新部105に件数情報と対応付けて格納された担当者識別子であってもよい。
なお、担当者が一日に実際に訪問した自動販売機の数と、担当者に対応する内的要因情報と、の複数の組を学習データ(教師データ)として用いて、機械学習を行うことにより予め学習器を生成し、生成した学習器に、件数更新部105が、内的要因格納部103に格納された担当者の内的要因情報を入力することにより、担当者が訪問する自動販売機の件数を特定する件数情報を学習器から取得するようにしてもよい。学習データは、2以上の担当者についての内的訪問情報と、実際に訪問した自動販売機の数との組であることが好ましいが、一の担当者についての内的訪問情報と、実際に訪問した自動販売機の数との組であってもよい。
ここで用いる機械学習としては、例えば、ニューラルネットワークを用いた機械学習が利用可能である。このニューラルネットワークとしては、例えば、全結合層を有するニューラルネットワークや、畳み込み層とプーリング層とを一段以上(例えば、多段以上)連結したニューラルネットワーク等が利用可能である。なお、ここで用いる機械学習は、SVR、深層学習、決定木、ランダムフォレスト等のニューラルネットワーク以外の学習を行って生成された学習器を利用する機械学習であってもよい。かかることは、後述するスコアを取得する際に利用可能な機械学習についても同様である。
学習器は、例えば、図示しない格納部等に格納するようにして、件数情報を取得する際に適宜利用する。学習器が図示しない格納部に格納されているということは、例えば、学習器そのもの(例えば、入力に対して値を出力する関数や学習結果のモデル等)が記憶されていることであってもよく、学習器を構成するために必要なパラメータ等の情報が記憶されていることであってもよい。後者の場合であっても、そのパラメータ等の情報を用いて学習器を構成できるため、実質的に学習器が図示しない格納部に格納されていると考えることができるからである。かかることは、後述するスコアを取得する際に利用可能な機械学習についても同様である。
なお、件数更新部105は、内的要因情報を用いて件数情報を取得する場合と同様に、機械学習を利用して、外的要因情報を用いて、または内的要因情報と外的要因情報との組を用いて、件数情報を取得するようにしてもよい。この場合の処理は、例えば、上記の内的要因情報を用いた機械学習を利用した件数情報を取得する処理において、内的要因情報を、外的要因情報、または内的要因情報と外的要因情報との組に読み替えたような処理により実現可能である。
また、件数更新部105は、上記以外の学習データを利用した機械学習により件数情報を決定してもよい。
なお、件数更新部105が、件数情報を取得する処理は、上記の処理に限定されるものではない。例えば、件数更新部105が、内的要因情報および外的要因情報との少なくとも一方を用いて件数情報を取得する処理は、上記の処理に限定されるものではない。
また、件数更新部105が件数の更新を行うタイミングは問わない。件数更新部105は、例えば、定期的(例えば、毎日の特定の時刻、毎週の特定の曜日及び時刻)に件数の更新を行っても良いし、ユーザの指示の受け付けにより件数の更新を行っても良い。
定期訪問情報格納部106には、定期訪問する1以上の自動販売機に関する定期訪問情報が格納される。定期訪問情報格納部106に格納される定期訪問情報は、例えば、訪問先決定部109が、訪問先の自動販売機を決定する訪問日に定期訪問する自動販売機に関する情報である。定期訪問情報は、通常、担当者が定期訪問する1または2以上の自動販売機の自販機識別子を有する情報である。ただし、定期訪問情報は、担当者が定期訪問する自動販売機の数であってもよい。
定期訪問情報格納部106には、例えば、担当者識別子と対応付けられた定期訪問情報が格納される。定期訪問情報格納部106には、例えば、担当者識別子と定期訪問情報とを有する情報が格納される。定期訪問情報と対応付けられた担当者識別子は、例えば、定期訪問情報に対応する定期訪問を行う担当者の担当者識別子である。
定期訪問情報格納部106に、どのように取得された定期訪問情報がどのように蓄積されるかは問わない。例えば、入力デバイス等を介して手入力等により定期訪問情報が蓄積されてもよい。また、格納部(図示せず)や、サーバ装置(図示せず)等に予め格納されている定期訪問される自動販売機の自販機識別子と、定期訪問する日(以下、定期訪問日と称す)特定する情報とを対応付けて有する情報から、訪問先決定部109が訪問先の自動販売機を決定する訪問日と一致する定期訪問日を特定する情報と対応付けられた自販機識別子を取得し、取得した自販機識別子や取得した自販機識別子の数を有する定期訪問情報を、定期訪問情報格納部106に蓄積してもよい。例えば、格納部(図示せず)や、サーバ装置(図示せず)等に、予め格納されている担当者識別子と、この担当者識別子が示す担当者により定期訪問される自動販売機の自販機識別子と、定期訪問日を特定する情報とを対応付けて有する情報から、訪問先決定部109が、訪問先を決定する担当者の担当者識別子と、訪問先の自動販売機を決定する訪問日と一致する定期訪問日を特定する情報とに対応付けられた自販機識別子を取得し、取得した自販機識別子や、取得した自販機識別子の数を有する定期訪問情報を、それぞれに対応する担当者識別子と対応付けて、定期訪問情報格納部106に蓄積してもよい。ここでの定期訪問日を特定する情報は、例えば、定期訪問日の日付であってもよく、曜日であってもよく、訪問間隔と、訪問の開始日との組み合わせ等である。
スコア取得部107は、2以上の各自販機情報が有する自販機識別子と対になる1または2以上の自販機属性値を用いて、自販機識別子で識別される自動販売機のスコアを取得する。自販機識別子で識別される自動販売機のスコアを取得する、ということは、例えば、自販機識別子ごとにスコアを取得することと考えてもよい。ここでのスコアとは、例えば、訪問優先度を示すスコアである。訪問優先度とは、例えば、対応する自動販売機を訪問先として決定する際の優先度である。例えば、訪問優先度が高い自動販売機は、優先的に訪問先に決定されることが好ましい自動販売機である。例えば、訪問優先度が高い自動販売機は、訪問優先度の低い自動販売機よりも訪問先を決定する際の優先度が高くなることが好ましい。なお、以下においては、スコア取得部107が取得するスコアとして、説明の便宜上、スコアの値が大きくなるほど、訪問優先度が高くなるスコアを用いる場合を主として説明するが、スコア取得部107が取得するスコアが小さくなるほど、訪問優先度が高くなるスコアを用いるようにしてもよい。
スコア取得部107は、例えば、自販機情報格納部101に格納されている各自販機情報から、1または2以上の自販機属性値を取得し、取得した自販機属性値を用いて、各自販機情報が有する自販機識別子に対応するスコアを取得する。スコア取得部107は、自販機属性値を用いてスコアを取得する際に、数値ではない自販機属性値を、格納部(図示せず)に格納されている変換テーブルを用いて数値化してもよい。また、数値である自販機属性値を、格納部(図示せず)に格納されている変換テーブルや、変換式等を用いて、新たな数値に変換してもよい。また、数値である自販機属性値の、予め決められた桁数以降の数値に対して、切り捨てたり、切り上げたり、四捨五入したりする端数処理等を行うようにしてもよい。
例えば、スコア取得部107は、自販機識別子について取得した1または2以上の自販機属性値を用いて、この自販機識別子が示す自動販売機について以下のようなスコアを取得する。
例えば、スコア取得部107は、自販機属性値である1以上のコラム識別子と対応付けられたコラム情報が示す在庫数が、予め決められた閾値以下となった場合に、訪問優先度が高くなるスコアを取得する。訪問優先度が高くなるスコアとは、例えば、上述したように、ここでは、値が大きくなるスコアとする。かかることは以下においても同様である。また、スコア取得部107は、例えば、コラム情報が示す特定の商品が格納されているコラムの在庫数が、閾値以下となった場合に、訪問優先度が高くなるスコアを取得する。また、スコア取得部107は、例えば、自販機属性値が有する自動販売機の、全てのコラムのコラム情報が示す在庫数の平均値が小さくなるほど、連続的、または段階的に訪問優先度が高くなるスコアを取得してもよい。例えば、スコア取得部107は、コラム情報が示す在庫数の平均値をパラメータとする減少関数によりスコアを取得してもよい。
例えば、スコア取得部107は、自販機属性値である売上情報が示す予め決められた一定期間内の、自動販売機一台当たりの商品の販売数が多いほど、訪問優先度が高くなるスコアを取得してもよい。例えば、スコア取得部107は、売上情報が示す商品の販売数をパラメータとする増加関数によりスコアを算出してもよい。
例えば、スコア取得部107は、自販機属性値である売切情報が示す売り切れが発生しているコラム数が多くなるほど、訪問優先度が高くなるスコアを取得する。例えば、スコア取得部107は、自販機属性値である売切情報が示す売り切れが発生してからの経過時間が長くなるほど、訪問優先度が高くなるスコアを取得する。ここでの経過時間は、例えば、最初に売り切れが発生したコラムの、売り切れ発生からの経過時間である。ただし、複数のコラムに売り切れが発生している場合、複数のコラムの売り切れ発生からの経過時間の和を、経過時間として用いるようにしてもよい。例えば、スコア取得部107は、売り切れが発生しているコラム数、および売り切れ発生からの経過時間のうちの1以上をパラメータとする増加関数によりスコアを算出する。
例えば、スコア取得部107は、自販機属性値であるエラー情報がエラーを発生していることを示す場合に、訪問優先度が高くなるスコアを取得してもよい。なお、スコア取得部107は、エラー情報が示すエラーの種類に応じて、異なる訪問優先度を示すスコアを取得してもよい。例えば、スコア取得部107は、エラーコードと、訪問優先度に応じたスコアとを対応付けて有する情報から、エラーコードに応じたスコアを取得してもよい。また、スコア取得部107は、エラーが発生してからの経過時間が長くなるほど、訪問優先度が高くなるスコアを取得してもよい。例えば、スコア取得部107は、エラーが発生してからの経過時間をパラメータとした増加関数によりスコアを算出してもよい。
例えば、スコア取得部107は、自販機属性値である自販機優先情報が、優先度が高いことを示す場合に、訪問優先度が高くなるスコアを取得してもよい。なお、自販機優先情報が、優先度の高さを示すランク等の情報を有する場合、スコア取得部107は、そのランクが高くなるほど訪問優先度が高くなるスコアを取得してもよい。
なお、スコア取得部107は、上述したような複数の自販機属性値をそれぞれ用いてスコアを取得する処理のうちの、2以上の組み合わせにより、訪問優先度を示すスコアを取得してもよい。
また、スコア取得部107が、スコアを取得する際に利用する増加関数は、どのような増加関数であってもよい。また、スコア取得部107が、スコアを取得する際に利用する減少関数は、どのような減少関数であってもよい。
スコア取得部107が、1または2以上の自販機属性値を用いてスコアを取得する処理は、上記のような処理に限定されるものではない。
例えば、スコア取得部107は、機械学習により、スコアを取得してもよい。例えば、自動販売機について取得した1以上、好ましくは2以上の自販機属性値と、この自動販売機の訪問優先度を示すスコアとの複数の組を学習データとして用いて、機械学習を行うことにより学習器を生成し、生成した学習器に、自販機情報格納部101に格納されている自販機情報が有する学習データとして用いた情報と同じ属性の1または2以上の自販機属性値を入力することにより、自販機情報が有する自販機識別子が示す自動販売機の訪問優先度を示すスコアを学習器から取得するようにしてもよい。学習データは、教師データと考えてもよい。
なお、スコア取得部107は、一の担当者について訪問先の自動販売機を決定する場合、この一の担当者が担当する複数の自動販売機についてのみ、上記のようにスコアを取得してもよい。例えば、スコア取得部107は、訪問先の自動販売機を決定する1または2以上の担当者の担当者識別子と対応付けられた複数の自動販売機についてのみ、上記のようにスコアを取得してもよい。
スコア取得部107は、2以上の自販機識別子についてそれぞれ取得したスコアを、例えば、自販機識別子と対応付けて、格納部(図示せず)に蓄積してもよい。スコア取得部107は、例えば、一の担当者が担当する一の自動販売機について取得したスコアを、この一の担当者の担当者識別子と、一の自動販売機の自販機識別子と対応付けて蓄積してもよい。
訪問変更受付部108は、担当者から、1または2以上の自販機識別子を有する追加訪問指示を受け付ける。追加訪問指示は、訪問する自動販売機の追加を要求する指示である。追加訪問指示は、訪問する自動販売機の追加を要求することで、訪問先決定部109が、担当者について決定した訪問先の変更を要求する指示と考えてもよい。追加訪問指示が有する自販機識別子は、例えば、担当者が追加で訪問したい自動販売機の自販機識別子である。ここでの担当者は、例えば、後述する訪問先決定部109が1以上の訪問先の自動販売機を決定した担当者である。追加訪問指示が有する自販機識別子は、通常、担当者が訪問を担当する自動販売機であって、訪問先決定部109が訪問先に決定していない自動販売機の自販機識別子である。訪問変更受付部108は、例えば、担当者識別子と対応付けられた追加訪問指示を受け付けてもよい。例えば、訪問変更受付部108は、担当者識別子を有する追加訪問指示を受け付けてもよい。追加訪問指示と対応付けられた担当者識別子は、例えば、追加訪問指示を入力する担当者や、追加訪問指示が示す訪問する自動販売機の追加を要求する担当者の担当者識別子である。訪問変更受付部108は、複数の担当者から、追加訪問指示を受け付けてもよく、この場合、訪問変更受付部108は、担当者識別子と対応付けられた追加訪問指示を受け付けることが好ましい。
訪問変更受付部108は、通常、担当者が、訪問先決定部109が決定した1または2以上の訪問先の訪問を開始する前に受け付ける。ただし、訪問先への訪問を開始した後に受け付けるようにしてもよい。
訪問変更受付部108は、例えば、担当者から、直接または間接的に、追加訪問指示を受け付ける。例えば、訪問変更受付部108は、担当者が利用する端末装置2から追加訪問指示を受信する。また、訪問変更受付部108は、例えば、担当者が入力デバイス等を介して入力する追加訪問指示を受け付けてもよい。また、訪問変更受付部108は、例えば、担当者の要請に応じて、オペレータ等が入力デバイス(図示せず)等を介して入力する追加訪問指示を受け付けることで、間接的に担当者から追加訪問指示を受け付けてもよい。
なお、訪問変更受付部108は、担当者から、1または2以上の自販機識別子を有する訪問削除指示を受け付けてもよい。訪問削除指示は、自動販売機の訪問先からの削除を要求する指示である。訪問削除指示については、上記の追加訪問指示の、訪問先の追加を削除に変更したものであり、この点を除けば、上記の追加訪問指示と同様であるため、ここでの詳細な説明を省略する。
ここでの受け付けは、キーボードやマウス、タッチパネルなどの入力デバイスから入力された情報の受け付け、有線もしくは無線の通信回線を介して送信された情報の受信、光ディスクや磁気ディスク、半導体メモリなどの記録媒体から読み出された情報の受け付けなどを含む概念である。入力手段は、キーボードやマウスやタッチパネルやメニュー画面によるもの等、何でもよい。訪問変更受付部108は、例えば、キーボードやタッチパネル等の入力手段のデバイスドライバーや、メニュー画面の制御ソフトウェア等で実現される。
訪問先決定部109は、件数情報が特定する件数以内の数の自動販売機であり、スコア取得部107が取得したスコアが訪問条件を満たす自動販売機を訪問先に決定する。自動販売機を訪問先に決定する、ということは、例えば、訪問先となる1または2以上の自動販売機の自販機識別子を決定することと考えてもよい。訪問先決定部109は、通常、当日または次の営業日の訪問先の自動販売機を決定するが、訪問先決定部109が訪問先を決定する営業日等は、これに限定されるものではなく、次の営業日よりも後の営業日の訪問先を決定するようにしてもよい。
ここでの訪問条件は、例えば、自動販売機について取得したスコアが示す訪問優先度の順位が閾値以上または閾値より大きい、という条件である。例えば、スコア取得部107が自動販売機について取得するスコアが、上述したように訪問優先度が高くなるほど値が大きくなるスコアである場合、訪問条件は、自動販売機について取得したスコアの順位が、閾値以上または閾値より高いという条件であってもよい。例えば、スコアが訪問条件を満たす自動販売機は、自動販売機について取得したスコアが示す順位が一位である自動販売機であってもよい。ここでの順位は、例えば、担当者が担当する複数の自動販売機についてスコア取得部107が取得したスコアについての順位である。ここでの閾値は、予め決められた固定値であってもよく、動的に変更される値であってもよい。動的に変更される閾値は、例えば、件数情報により特定される件数であることが好ましいが、件数情報により特定される件数より少ない値であってもよい。
また、訪問条件は、例えば、自動販売機について取得したスコアが示す訪問優先度が、予め決められた閾値以上または閾値より大きい、という条件である。例えば、スコア取得部107が自動販売機について取得するスコアが、上述したように、訪問優先度が高くなるほど値が大きくなるスコアである場合、訪問条件は、自動販売機について取得したスコアが予め決められた閾値以上または閾値より大きい、という条件であってもよい。
なお、訪問条件は、上記の条件に限定されるものではない。
訪問先決定部109により、スコア取得部107が取得したスコアが訪問条件を満たすと判断された自動販売機が、件数情報が特定する件数を超える場合、訪問先決定部109は、例えば、件数を超える自動販売機を、訪問先から除外する。訪問先決定部109が、どのように、件数情報が特定する件数を超える自動販売機を訪問先から除外するかは問わない。例えば、訪問条件を満たす自動販売機からランダムに、除外する自動販売機を決定してもよい。
訪問先決定部109は、例えば、件数情報が特定する件数から定期訪問情報が特定する定期訪問する自動販売機の数を減じた件数以内の数の自動販売機であり、スコア取得部107が取得したスコアが訪問条件を満たす自動販売機を決定するようにしてもよい。ここで訪問先決定部109が決定する自動販売機は、例えば、定期訪問する1以上の自動販売機を除いた、担当者が訪問する訪問先の自動販売機である。なお、この場合、例えば、定期訪問情報が特定する定期訪問する1または2以上の自動販売機を除外した自動販売機の中から、訪問先の自動販売機が決定されるようにする。例えば、自販機情報格納部101に、定期訪問する自動販売機の自販機情報が含まれる場合、訪問先決定部109は、定期訪問情報が特定する定期訪問する自動販売機を除外した自動販売機の中から、スコアが訪問条件を満たす自動販売機を決定してもよく、スコア取得部107が、定期訪問情報が特定する担当者が定期訪問する自動販売機については、スコアを取得しないようにしてもよい。
なお、この場合、訪問先決定部109は、例えば、スコアを用いて訪問先決定部109が訪問先に決定した1または2以上の自動販売機と、定期訪問する自動販売機とを合わせた自動販売機を、担当者が訪問する2以上の自動販売機に決定してもよい。例えば、担当者が訪問する自動販売機の自販機識別子として、スコアを用いて訪問先に決定した自動販売機の自販機識別子と、定期訪問する自販機識別子との組み合わせを取得するようにしてもよい。定期訪問する自動販売機の自販機識別子は、例えば、定期訪問情報格納部106から取得するようにしてもよい。
ここでの訪問条件は、例えば、上述したような、自動販売機について取得したスコアが示す訪問優先度の順位が閾値以上または閾値より大きい、という条件であってもよく、自動販売機について取得したスコアが示す訪問優先度が、予め決められた閾値以上または閾値より大きい、という条件であってもよい。スコアが示す訪問優先度の順位が閾値以上または閾値より大きい、という条件に用いられる閾値は、予め決められた固定値であってもよく、動的に変更される値であってもよい。なお、ここでの動的に変更される閾値は、例えば、件数情報が特定する件数から定期訪問情報が特定する定期訪問する自動販売機の数を減じた数、またはこの数より小さい値であることが好ましい。
また、この場合、スコアが訪問条件を満たす自動販売機が、件数情報が特定する件数から定期訪問情報が特定する定期訪問する自動販売機の数を減じた数の件数を超える場合、訪問先決定部109は、件数を超える自動販売機を、訪問先から除外するようにしてもよい。
訪問先決定部109は、例えば、担当者が担当する2以上の自動販売機の中から、上記のように、訪問先の1または2以上の自動販売機を決定する。例えば、訪問先決定部109は、各担当者識別子と対応付けられた2以上の自販機情報を用いて取得されたスコアを用いて、各担当者識別子について、訪問先の1または2以上の自動販売機を決定する。
訪問先決定部109は、訪問変更受付部108が受け付けた追加訪問指示が有する1または2以上の自販機識別子で識別される自動販売機についてスコア取得部107が取得したスコアが追加条件を満たす場合に、自動販売機を追加の訪問先に決定する。ここで利用するスコアは、上記で訪問先決定部109が訪問先を決定するために、スコア取得部107が取得したスコアであってもよく、新たに、スコア取得部107が取得するスコアであってもよい。ここで用いるスコアは、通常は、上記の訪問先を決定する際に利用するスコアと、同じ属性の自販機属性値を用いて、同じ処理を行うことにより取得したスコアであるが、異なる自販機属性値を用いて取得したスコアであってもよく、異なる処理を行って取得したスコアであってもよい。異なる処理を行って取得するスコアは、例えば、異なる演算式を用いて取得するスコアも含む概念である。なお、訪問先決定部109は、訪問変更受付部108が受け付けた追加訪問指示が有する1または2以上の自販機識別子で識別される自動販売機を、常に、追加の訪問先に決定してもよい。
訪問先決定部109は、例えば、追加訪問指示に対応付けられた担当者識別子が示す担当者の訪問先に、追加訪問指示が有する自販機識別子で識別される自動販売機を追加するか否かを決定する。追加訪問指示に対応付けられた担当者識別子は、例えば、追加訪問指示が有する担当者識別子である。
追加条件は、例えば、訪問先に決定されていない自動販売機について取得したスコアのうちの、追加訪問指示が有する各自動販売機について取得したスコアが示す訪問優先度の順位が閾値以上または閾値より大きい、という条件である。例えば、スコア取得部107が自動販売機について取得するスコアが、上述したように訪問優先度が高くなるほど値が大きくなるスコアである場合、追加条件は、自動販売機について取得したスコアの、スコアの値の大きいものから数えた順位が、閾値以上または閾値より高いという条件であってもよい。
また、追加条件は、例えば、自動販売機について取得したスコアが示す訪問優先度が、予め決められた閾値以上または閾値より大きい、という条件である。例えば、スコア取得部107が自動販売機について取得するスコアが、上述したように、訪問優先度が高くなるほど値が大きくなるスコアである場合、追加条件は、自動販売機について取得したスコアが予め決められた閾値以上または閾値より大きい、という条件であってもよい。
なお、例えば、上記の訪問先を決定する際に利用するスコアと、追加訪問指示が示す自動販売機を追加してよいか判断する際に利用するスコアとが、同じ属性の自販機属性値を用いて、同じ処理を行うことにより取得したスコアである場合であって、訪問条件および追加条件として、予め決められた閾値以上のスコアを決定するという条件を用いる場合、追加条件として用いる閾値は、上記の訪問条件として用いられる閾値よりもスコアが低い閾値であることが好ましい。
ただし、追加条件は、上記の条件に限定されるものではない。
なお、訪問先決定部109は、追加訪問指示が有する1または2以上の自販機識別子で識別される自動販売機を、仮に上記でスコアを用いて訪問先決定部109が決定した訪問先の自動販売機に追加した場合の訪問先の自動販売機の数が、件数情報が特定する件数を超える場合にのみ、追加訪問指示が有する1または2以上の自販機識別子で識別される自動販売機のスコアが追加条件を満たすか判断して、これらの自動販売機を追加の訪問先に決定するか判断するようにし、件数情報が特定する件数以下の場合には、スコアを用いた判断等を行わずに、追加訪問指示が有する1または2以上の自販機識別子を追加するようにしてもよい。なお、この場合の訪問先決定部109が決定する訪問先が、定期訪問する自動販売機を含まない場合、訪問先決定部109が決定した訪問先の自動販売機の数と担当者が定期訪問する自動販売機の数との和に、追加訪問指示が有する自販機識別子の数を追加した場合の、訪問先の自動販売機の数が、件数情報が特定する件数を超える場合にのみ、上記のように、自動販売機の追加を、スコアを用いて判断するようにしてもよい。
また、訪問先決定部109は、追加訪問指示が有する1または2以上の自販機識別子で識別される自動販売機が、担当者が定期訪問する自動販売機である場合、その自動販売機が、訪問先の自動販売機を決定する訪問日に定期訪問する自動販売機であるか否かに関係なく、その自動販売機を訪問先に追加するようにしてもよい。この場合、例えば、担当者識別子と、担当者識別子が識別する担当者が定期訪問する自動販売機の自販機識別子とを対応付けて有する情報が格納部(図示せず)等に予め格納されているようにし、訪問先決定部109は、この情報の中に、追加訪問指示が有する自販機識別子と一致する自販機識別子と、追加訪問指示に対応する担当者識別子とを対応付けて有する情報があるか判断し、ある場合に、この追加訪問指示が有する自販機識別子が識別する自動販売機を、この追加訪問指示に対応する担当者識別子が識別する担当者が訪問する自動販売機に追加するようにしてもよい。例えば、訪問先決定部109は、この自販機識別子と、担当者識別子とを有する情報を、訪問先の自販機識別子と担当者識別子とを対応付けて有する情報に追記するようにしてもよい。
また、訪問先決定部109は、追加訪問指示が有する1または2以上の自販機識別子で識別される自動販売機が、優先度が高い自動販売機である場合、その自動販売機を訪問先に追加するようにしてもよい。優先度が高い自動販売機とは、例えば、上述した自販機情報により、自動販売機の自販機識別子に対応付けられた自販機優先情報が、優先度が高いことを示す情報である自動販売機や、自動販売機の自販機識別子に対応付けられた自販機優先情報が示す優先度のレベルが閾値以上高い自動販売機である。この場合、訪問先決定部109は、例えば、追加訪問指示に対応する担当者識別子と対応付けられた自販機情報であって、追加訪問指示が有する自販機識別子と一致する自販機識別子を有する自販機情報が有する自販機優先情報が、優先度が高いことを示す場合に、追加訪問指示が有する自販機識別子が識別する自動販売機を、この追加訪問指示に対応する担当者識別子が識別する担当者が訪問する自動販売機に追加するようにしてもよい。
なお、訪問先決定部109は、訪問変更受付部108が受け付ける訪問削除指示が有する1または2以上の自販機識別子で識別される自動販売機を、訪問先から削除するようにしてもよい。例えば、訪問先決定部109は、訪問削除指示に対応付けられた担当者識別子が示す担当者の訪問先から、訪問削除指示が有する自販機識別子で識別される自動販売機を削除してもよい。
追加候補推薦受付部110は、担当者からの追加候補推薦指示を受け付ける。追加候補推薦指示は、例えば、訪問先決定部109が決定した1または2以上の訪問先の自動販売機に訪問している担当者が追加で訪問する自動販売機の候補の推薦を要求する指示である。訪問先の自動販売機に訪問している担当者とは、例えば、訪問先の一の自動販売機を訪問するために移動中の担当者や、訪問先の一の自動販売機への訪問を完了した担当者である。
追加候補推薦受付部110は、例えば、担当者が利用する端末装置2から、追加候補推薦指示を受信する。例えば、1以上の自動販売機に訪問中の担当者が、携帯する端末装置2に対して追加候補推薦指示を送信する操作を行った場合に、端末装置2が、追加候補推薦指示を情報処理装置1に対して送信し、送信した追加候補推薦指示を、追加候補推薦受付部110が受信する。
追加候補推薦指示は、担当者の現在位置に関する担当者位置情報を有していてもよい。担当者位置情報は、例えば、担当者の現在位置を特定可能な情報である。担当者位置情報は、担当者の現在位置を示す座標や住所等であってもよく、担当者が直前に訪問した自動販売機や、現在、担当者の近くに位置する自動販売機の、自販機識別子や位置を示す座標や住所等であってもよい。座標は、例えば、緯度と経度との組み合わせで表される座標である。例えば、追加候補推薦指示が有する担当者位置情報である担当者の現在位置を示す座標や住所は、例えば、担当者が有する端末装置2がGPS(グローバルポジションニングシステム)を用いて取得した座標や住所であってもよく、端末装置2が通信可能な1または2以上の基地局や、1または2以上の中継器との位置関係等から取得した座標や住所等であってもよい。また、追加候補推薦指示が有する担当者位置情報である自動販売機の自販機識別子や座標や住所は、担当者が有する端末装置2が、近くに位置する自動販売機から、近距離無線通信等により受信した自販機識別子や座標や住所であってもよく、端末装置2等に予め格納されている担当者が担当する2以上の自動販売機に関する情報から、担当者が訪問時や訪問終了時等に選択した訪問先の自動販売機の自販機識別子や座標や住所であってもよい。なお、どのように、担当者位置情報を取得するかは、上記に限定されるものではない。
追加候補推薦受付部110は、追加候補推薦指示を出す担当者の担当者識別子と対応付けられた追加候補推薦指示を受け付けてもよい。例えば、追加候補推薦受付部110は、担当者識別子を有する追加候補推薦指示を受け付けてもよい。
ここでの受け付けは、キーボードやマウス、タッチパネルなどの入力デバイスから入力された情報の受け付け、有線もしくは無線の通信回線を介して送信された情報の受信、光ディスクや磁気ディスク、半導体メモリなどの記録媒体から読み出された情報の受け付けなどを含む概念である。入力手段は、キーボードやマウスやタッチパネルやメニュー画面によるもの等、何でもよい。追加候補推薦受付部110は、例えば、キーボードやタッチパネル等の入力手段のデバイスドライバーや、メニュー画面の制御ソフトウェア等で実現される。
位置関連情報格納部111には、2以上の自動販売機の位置に関する情報である位置関連情報が格納される。例えば、位置関連情報格納部111には、2以上の位置関連情報が、それぞれ、自動販売機の自販機識別子と対応付けて格納されている。位置関連情報は、例えば、近隣に位置する複数の自動販売機を特定するために用いられる情報や、担当者の近隣に位置する自動販売機を特定するために利用される情報である。位置関連情報は、例えば、自動販売機の位置情報である。自動販売機の位置情報は、例えば、自動販売機の座標や、自動販売機の設置場所の緯度と経度や、住所である。なお、ここでの住所の粒度は問わない。また、位置関連情報は、同じエリア内に位置する複数の自動販売機や、近隣に位置する複数の自動販売機で構成されるグループのグループ識別子であってもよい。なお、位置関連情報は、上記のような同じグループに属している複数の自動販売機の自販機識別子の群であってもよく、例えば、位置関連情報格納部111に、このような群の位置関連情報が複数格納されていてもよい。
担当者位置取得部112は、担当者の現在位置に関する担当者位置情報を取得する。担当者位置情報は、例えば、担当者の現在位置を特定可能な情報である。例えば、担当者位置取得部112は、追加候補推薦指示が有する担当者位置情報を取得する。また、担当者位置取得部112は、追加候補推薦受付部110が、追加候補推薦指示を受け付けた場合に、この追加候補推薦指示を出した担当者が直前に訪問した自動販売機の自販機識別子を、格納部(図示せず)に格納されている担当者が訪問した自動販売機を管理する情報から取得し、取得した自販機識別子や、この自販機識別子に対応付けられた自販機の位置情報を、担当者位置情報として取得してもよい。また、担当者が携帯する端末装置2がGPS等を用いて取得する位置情報を、情報処理装置1が順次取得可能な場合、追加候補推薦指示を出した担当者の端末装置2の位置情報を、担当者位置情報として取得してもよい。
追加訪問候補決定部113は、追加候補推薦指示の受け付けに応じて、訪問先決定部109が決定していない自動販売機であり、スコア取得部107が取得したスコアが追加候補条件を満たす1以上の自動販売機を、さらなる訪問先の候補として決定する。自動販売機を訪問先の候補として決定するということは、例えば、訪問先の候補の1または2以上の自動販売機の自販機識別子を取得することや、訪問先の候補となる1または2以上の自動販売機の自販機識別子を決定することである。例えば、追加訪問候補決定部113は、担当者が担当している自動販売機であって、訪問先決定部109が、訪問日の訪問先に決定していない自動販売機のうちの、スコア取得部107が取得したスコアが追加候補条件を満たす1以上の自動販売機を、さらなる訪問先の候補として決定する。担当者が担当している自動販売機は、例えば、自販機情報格納部101に格納されている自販機情報が有する自販機識別子が識別する自動販売機であってもよく、格納部(図示せず)に予め格納されている担当者が担当する2以上の自動販売機の自販機識別子のリストが示す自動販売機であってもよい。
なお、追加訪問推薦指示を受け付けた日に定期訪問する自動販売機をさらに除いた自動販売機から、さらなる訪問先の候補を決定することが好ましい。
追加候補条件は、上述した訪問条件と同様の、例えば、自動販売機について取得したスコアが示す訪問優先度の順位が閾値以上または閾値より大きい、という条件や、自動販売機について取得したスコアが示す訪問優先度が、予め決められた閾値以上または閾値より大きい、という条件である。例えば、追加訪問候補決定部113は、訪問先決定部109が訪問先に決定していない自動販売機の中から、自動販売機について取得したスコアが示す訪問優先度の順位が閾値以上または閾値より大きい1または2以上の自動販売機を、さらなる訪問先の候補として決定する。例えば、追加訪問候補決定部113は、訪問先決定部109が訪問先に決定していない自動販売機の中から、自動販売機について取得したスコアが示す訪問優先度(例えば、スコアの値)が閾値以上または閾値より大きい1または2以上の自動販売機を、さらなる訪問先の候補として決定する。
なお、例えば、上記の訪問先を決定する際に利用するスコアと、さらなる訪問先の候補となる自動販売機を検出する際に利用するスコアとが、同じ属性の自販機属性値を用いて、同じ処理を行うことにより取得したスコアである場合であって、訪問条件および追加候補条件として、予め決められた閾値以上のスコアを決定するという条件を用いる場合、追加候補条件として用いる閾値は、上記の訪問条件として用いられる閾値よりもスコアが低い閾値であることが好ましい。
ただし、追加候補条件は、上記の条件に限定されるものではない。
なお、追加訪問候補決定部113は、担当者位置取得部112が取得した担当者位置情報と、位置関連情報格納部111に格納された位置関連情報とをさらに用いて、訪問先の候補となる1以上の自動販売機を決定するようにしてもよい。例えば、追加訪問候補決定部113は、担当者位置取得部112が取得した担当者位置情報と、位置関連情報格納部111に格納された位置関連情報とを用いて、上記のような訪問先決定部109が決定していない自動販売機であり、スコア取得部107が取得したスコアが追加候補条件を満たす1または2以上の自動販売機の中から、担当者の位置に対して、予め決められた位置関係にある1または2以上の自動販売機を訪問の候補に決定する。
例えば、担当者位置取得部112が取得する担当者位置情報が、担当者や、担当者の近くの自動販売機や、担当者が直前に訪問した自動販売機の座標や住所であり、位置関連情報格納部111に格納されている位置関連情報が、1または2以上の自動販売機の位置情報である座標または住所である場合、追加訪問候補決定部113は、上記のような訪問先決定部109が決定していない自動販売機であり、スコア取得部107が取得したスコアが追加候補条件を満たす1または2以上の自動販売機の位置情報を位置関連情報から取得し、担当者位置情報が示す位置との距離が条件を満たすほど近い自動販売機を、追加訪問候補に決定する。
また、例えば、追加訪問候補決定部113は、上記のような訪問先決定部109が決定していない自動販売機であり、スコア取得部107が取得したスコアが追加候補条件を満たす1または2以上の自動販売機の位置情報である座標または住所を位置関連情報から取得し、1または2以上の自動販売機について取得した座標または住所と、担当者位置情報である座標または住所とを用いて、担当者位置情報が示す位置と、各自動販売機の位置との距離を算出する。そして、算出した距離が、予め決められた閾値以下、または閾値よりも短いという条件を満たす自動販売機、または算出した距離が短いものから数えた順位が閾値以上、または閾値よりも高い、という条件を満たす自動販売機を、追加訪問候補に決定するようにしてもよい。
また、例えば、担当者位置取得部112が取得する担当者位置情報が、担当者の近くの自動販売機や、担当者が直前に訪問した自動販売機の自販機識別子であり、位置関連情報格納部111に自販機識別子と対応付けて格納されている位置関連情報が、上述したような同じエリア内に位置する複数の自動販売機や、近隣に位置する複数の自動販売機で構成されるグループのグループ識別子であって、対応する自販機識別子が示す自動販売機が属するグループのグループ識別子である場合、追加訪問候補決定部113は、上記のような訪問先決定部109が決定していない自動販売機であり、スコア取得部107が取得したスコアが追加候補条件を満たす1または2以上の自動販売機の自販機識別子のうちの、位置関連情報により、担当者位置情報である自販機識別子と同じグループ識別子と対応付けられた自販機識別子を、追加訪問候補の自動販売機の自販機識別子に決定するようにしてもよい。
例えば、追加訪問候補決定部113は、上記のような訪問先決定部109が決定していない自動販売機であり、スコア取得部107が取得したスコアが追加候補条件を満たす1または2以上の自動販売機の自販機識別子とそれぞれ対応付けられた位置関連情報であるグループ識別子を取得する。また、追加訪問候補決定部113は、担当者位置情報である自販機識別子と対応付けられた位置関連情報であるグループ識別子を取得する。そして、追加訪問候補決定部113は、スコアが追加候補条件を満たす1または2以上の自動販売機の自販機識別子についてそれぞれ取得したグループ識別子の中から、担当者位置情報について取得したグループ識別子と一致するグループ識別子を検出し、検出したグループ識別子と対応付けられた自販機識別子を追加訪問候補の自動販売機の自販機識別子に決定するようにしてもよい。
なお、ここで利用するスコアは、上記で訪問先決定部109が訪問先を決定するために、スコア取得部107が取得したスコアであってもよく、新たに、スコア取得部107が取得するスコアであってもよい。ここで用いるスコアは、通常は、上記の訪問先を決定する際に利用するスコアと、同じ自販機属性値を用いて、同じ処理を行うことにより取得したスコアであるが、異なる自販機属性値を用いて取得したスコアであってもよく、異なる処理を行って取得したスコアであってもよい。異なる処理を行って取得するスコアは、例えば、異なる演算式を用いて取得するスコアも含む概念である。
なお、追加訪問候補決定部113が、追加訪問候補を決定する処理は、上記の処理に限定されるものではない。
例えば、追加訪問候補決定部113は、訪問先決定部109が決定していない自動販売機のうちの、スコア取得部107が取得したスコアが追加候補条件を満たす1以上の自動販売機の中から、位置関連情報を用いて訪問先の候補を決定する代わりに、訪問先決定部109が決定していない自動販売機のうちの中から、位置関連情報を用いて、訪問先の候補を決定するようにしてもよい。例えば、追加訪問候補決定部113は、追加候補推薦受付部110が受け付けた追加候補推薦指示に対応する担当者に対応する自動販売機であって、訪問先に決定されていない自動販売機の自販機識別子を自販機情報格納部101から取得し、取得した自販機識別子の中から、上記のように、自販機識別子に対応する位置関連情報を用いて、訪問先の候補となる1以上の自動販売機を決定するようにしてもよい。
訪問先出力部114は、訪問先決定部109が訪問先に決定した自動販売機に関する情報を出力する。訪問先出力部114が出力する自動販売機に関する情報は、例えば、自動販売機の自販機識別子であってもよく、自動販売機に対応する上述した自販機属性値が有する1または2以上の情報であってもよく、自動販売機の名称や通称であってもよく、自動販売機の商品構成を示す情報であってもよく、自動販売機の住所や自動販売機までの経路等の情報等であってもよく、これらの情報のうちの、2以上を含む情報であってもよい。例えば、訪問先出力部114は、訪問先決定部109が訪問先に決定した1または2以上の自動販売機の自販機識別子を出力する。訪問先出力部114が出力する自動販売機に関する情報は、自販機識別子等の訪問先の自動販売機を特定可能な情報を含むことが好ましい。また、自動販売機に関する情報は、自動販売機の訪問時の作業に有用な情報であることが好ましい。訪問先出力部114は、訪問先に決定した自動販売機に関する情報を、自販機情報格納部101や、格納部(図示せず)から取得して出力してもよい。例えば、訪問先決定部109が決定して格納部(図示せず)に蓄積した訪問先の自動販売機の自販機識別子や、この自販機識別子と対応付けられて、自販機情報格納部101や、格納部(図示せず)に格納されている情報を読み出して、出力してもよい。なお、訪問先出力部114が出力する自動販売機に関する情報は、上記のような情報に限定されない。
ここでの出力とは、モニタへの表示、プロジェクターを用いた投影、プリンタへの印字、外部の装置への送信、記録媒体への蓄積、他の処理装置や他のプログラムなどへの処理結果の引渡しなどを含む概念である。
例えば、訪問先出力部114は、訪問先決定部109が訪問先に決定した1または2以上の自動販売機に関する情報を、担当者の端末装置2に送信する。例えば、訪問先出力部114は、訪問先決定部109が、担当者識別子ごとにそれぞれ決定した訪問先の1または2以上の自動販売機に関する情報(例えば、自販機識別子等)を、担当者識別子と対応付けて出力してもよい。例えば、訪問先出力部114は、訪問先決定部109が、担当者識別子ごとにそれぞれ決定した訪問先の1または2以上の自動販売機に関する情報を、担当者識別子に対応する端末装置2に送信する。担当者識別子に対応する端末装置2は、例えば、担当者識別子が識別する担当者の端末装置2である。例えば、訪問先出力部114は、担当者識別子と対応付けて格納部(図示せず)等に格納されている訪問先の自動販売機に関する情報を読み出して出力する。
訪問先出力部114は、例えば、情報処理装置1の出力指示受付部(図示せず)が、訪問先の自動販売機に関する情報の送信を要求する指示を受け付けた場合に、訪問先決定部109が決定した訪問先の自動販売機に関する情報を端末装置2に出力する。ここでの受け付けは、入力デバイス(図示せず)等を介した入力や、受信等も含む概念である。例えば、訪問先出力部114は、出力指示受付部(図示せず)が、端末装置2から訪問先の自動販売機に関する情報の送信を要求する指示を受け付けた場合に、訪問先決定部109が決定した訪問先の自動販売機に関する情報を端末装置2に送信する。例えば、訪問先出力部114は、例えば、情報処理装置1の出力指示受付部(図示せず)が、端末装置2等から訪問先の自動販売機に関する情報の送信を要求する指示であって、担当者識別子を有する指示を受信した場合に、訪問先決定部109がこの担当者識別子について決定した訪問先の自動販売機に関する情報を端末装置2に送信する。例えば、訪問先出力部114は、訪問先決定部109が決定し、格納部(図示せず)に蓄積した訪問先の自動販売機に関する情報を読み出して、端末装置2に送信する。
訪問先出力部114は、追加訪問候補決定部113が決定した自動販売機に関する情報をも出力するようにしてよい。追加訪問候補決定部113が決定した自動販売機に関する情報は、例えば、追加訪問候補決定部113が決定した追加訪問候補である1または2以上の自動販売機の自販機識別子を有する情報である。訪問先出力部114は、例えば、追加訪問候補決定部113が決定した自動販売機に関する情報を、追加候補推薦受付部110が受け付けた追加候補推薦指示に対応する担当者に対して出力する。自動販売機に関する情報を、担当者に対して出力する、ということは、例えば、担当者の端末装置2に、自動販売機に関する情報を送信することである。訪問先出力部114は、例えば、追加訪問候補決定部113が決定した自動販売機に関する情報を、追加候補推薦受付部110が受け付けた追加候補推薦指示を送信した端末装置2に送信する。
訪問先出力部114は、訪問先決定部109が追加の訪問先に決定した自動販売機に関する情報をも出力するようにしてもよい。例えば、追加の訪問先に決定した自動販売機に関する情報は、例えば、追加訪問指示が有する1または2以上の自販機識別子により識別される自動販売機が、訪問先に追加されることを示す情報であってもよく、追加後の訪問先の自動販売機に関する情報(例えば、追加後の訪問先となる2以上の自動販売機の自販機識別子等)であってもよい。訪問先出力部114は、例えば、追加訪問指示に対応する担当者に、追加の訪問先に決定した自動販売機に関する情報を送信してもよい。例えば、訪問先出力部114は、例えば、追加訪問指示を送信した端末装置2に、追加の訪問先に決定した自動販売機に関する情報を送信してもよい。
なお、訪問先出力部114は、出力先に決定した自動販売機に関する情報を、訪問する自動販売機の訪問ルートや訪問順番を決定する装置(図示せず)に出力(例えば、送信)するようにしてもよい。そして、この装置が、訪問する複数の自動販売機の訪問順番や、訪問ルート等を決定するようにしてもよい。そして、端末装置2から、この装置が、訪問する自動販売機に関する情報を要求する指示等を受け付けた場合に、この装置が、訪問ルートや、訪問する自動販売機に関する情報であって、訪問ルートや、訪問順番等を含む訪問する自動販売機に関する情報を端末装置に送信するようにしてもよい。また、訪問先が追加された場合に追加された訪問先に関する情報(例えば、訪問先の自販機識別子等)を、この訪問ルートや、訪問順番を決定する装置等に送信するようにし、この装置が、追加される訪問先の自動販売機を訪問ルートに含めるよう、訪問ルートを変更するようにしてもよい。
訪問先出力部114は、通常、無線または有線の通信手段により実現される。ただし、訪問先出力部114は、モニタやプリンタ等の出力デバイスのドライバーソフトまたは、出力デバイスのドライバーソフトと出力デバイス等で実現されてもよい。
端末装置2は、例えば、1または2以上の自動販売機の訪問を行う担当者が利用する情報処理装置である。端末装置2は、担当者が携帯可能な装置や、携行可能な装置であることが好ましい。端末装置2は、例えば、パーソナルコンピュータや、スマートフォン、タブレット型端末、携帯電話、携帯情報端末、ハンディーターミナル等により実現可能である。
端末装置2は、例えば、情報処理装置1の訪問先出力部114等が送信する訪問先に決定した自動販売機に関する情報等を受信して蓄積する端末受信部(図示せず)、情報処理装置1から受信した情報が格納される端末格納部(図示せず)、受信した情報や操作メニュー等をモニタ等に表示する端末表示部(図示せず)、訪問先を変更する指示や、追加する訪問先の候補の推薦を要求する指示等の指示を受け付ける端末受付部(図示せず)、および受け付けた指示に対応する、訪問先変更指示や、追加候補推薦指示等の情報を情報処理装置1に送信する端末送信部(図示せず)等を備えている。ただし、端末装置2の構成は、上記の構成に限定されるものではない。
次に、情報処理システム1000の、情報処理装置1の動作の一例について図2のフローチャートを用いて説明する。
(ステップS101)件数更新部105は、件数情報を更新するか否かを判断する。例えば、予め決められたタイミングとなった場合(例えば、毎営業日の午後10時や、前回の更新から24時間経過した場合等)や、予め決められたトリガーが発生した場合(例えば、情報処理装置1を起動した場合等)に、件数更新部105は、件数情報を更新することを決定する。件数情報を更新する場合、ステップS102に進み、更新しない場合、ステップS103に進む。
(ステップS102)件数更新部105は、件数情報を更新する処理を行う。この処理の詳細については、後述する。そして、ステップS101に戻る。
(ステップS103)訪問先決定部109は、訪問先の自動販売機を決定するか否かを判断する。例えば、予め決められたタイミングとなった場合や、予め決められたトリガーが発生した場合に、訪問先決定部109は、訪問先を決定することを決定する。訪問先を決定する場合、ステップS104に進み、決定しない場合、ステップS105に進む。
(ステップS104)スコア取得部107や、訪問先決定部109は、訪問先の自動販売機を決定する処理を行う。この処理の詳細については後述する。そして、ステップS101に戻る。
(ステップS105)訪問変更受付部108は、担当者から追加訪問指示を受け付けたか判断する。例えば、担当者の端末装置2から追加訪問指示を受信したか判断する。受け付けた場合、ステップS106に進み、受け付けていない場合、ステップS107に進む。なお、訪問変更受付部108は、予め決められた時間帯(例えば、担当者が自動販売機の訪問に出発するまでの時間帯)にのみ、追加訪問指示を受け付けるようにしてもよい。
(ステップS106)訪問先決定部109は、ステップS105において受け付けた追加訪問指示に応じて、ステップS104で決定した訪問先に、追加訪問指示に対応する自動販売機を訪問先として追加する処理を行う。ただし、この追加する処理においては、例えば、結果的に訪問先が追加できなくてもよい。この処理の詳細については、後述する。そして、ステップS101に戻る。
(ステップS107)追加候補推薦受付部110は、担当者から追加候補推薦指示を受け付けたか判断する。例えば、担当者の端末装置2から追加候補推薦指示を受信したか判断する。受け付けた場合、ステップS108に進み、受け付けていない場合、ステップS109に進む。
(ステップS108)追加訪問候補決定部113等は、追加訪問する候補となる自動販売機を決定する処理を行う。この処理の詳細については後述する。そして、ステップS109に進む。
(ステップS109)情報処理装置1の出力指示受付部(図示せず)は、ステップS104で決定した訪問先の1または2以上の自動販売機に関する情報を出力する出力指示を受け付けたか判断する。受け付けた場合、ステップS110に進み、受け付けていない場合、ステップS101に戻る。
(ステップS110)訪問先出力部114は、ステップS104で決定した訪問先の自動販売機に関する情報や、ステップS104で決定した訪問先の自動販売機とステップS106で追加された訪問先の自動販売機とに関する情報を出力する。そして、ステップS101に戻る。
なお、図2のフローチャートにおいて、電源オフや処理終了の割り込みにより処理は終了する。
なお、ここでは、省略しているが、情報処理装置1は、自販機情報格納部101、内的要因格納部103、または外的要因格納部104等の格納部に蓄積される情報等を受け付けたり、受け付けた情報を蓄積したり、格納されている情報を削除する指示を受け付けたり、受け付けた指示に応じて格納されている情報を削除する処理等を行うステップをさらに有していてもよい。例えば、情報処理装置1の訪問変更受付部108が、訪問先に決定され自動販売機のうちの、1以上の自動販売機を削除する訪問削除指示を受け付ける(例えば、受信する)処理や、この訪問削除指示に応じて、訪問先決定部109が、格納部(図示せず)に格納されている訪問先の自動販売機の自販機識別子を削除する処理を行うようにしてもよい。
次に、情報処理システム1000の情報処理装置1の、件数情報を更新する処理の動作の一例について図3のフローチャートを用いて説明する。この処理は、例えば、図2に示したフローチャートのステップS102に相当する処理である。
(ステップS201)件数更新部105は、カウンターmの値として1を代入する。
(ステップS202)件数更新部105は、m番目の担当者と対応付けられた内的要因情報を内的要因格納部103から取得する。例えば、件数更新部105は、m番目の担当者識別子と対応付けられた内的要因情報を内的要因格納部103から取得する。ここでのm番目の担当者識別子は、例えば、情報処理装置1により訪問先の自動販売機を決定する1以上の担当者のうちの、m番目の担当者を識別する担当者識別子である。ここでのm番目の担当者識別子は、例えば、内的要因格納部103に内的要因情報と対応付けられた担当者識別子のうちの、m番目の担当者識別子であってもよく、自販機情報格納部101に格納された自販機情報が有するm番目の担当者識別子や、予め格納部(図示せず)に格納されている自動販売機を訪問する1または2以上の担当者の担当者識別子のリストのm番目の担当者識別子であってもよい。自販機情報が有するm番目の担当者識別子とは、例えば、自販機情報から重複しないよう取得した担当者識別子の、m番目の担当者識別子である。かかることは、後述する図4に示すフローチャートにおけるn番目の担当者識別子等についても同様である。なお、内的要因格納部103に一人の担当者の内的要因情報だけが格納されている場合、この内的要因情報を1番目の担当者の内的要因情報として取得する。
(ステップS203)件数更新部105は、外的要因情報を、外的要因格納部104から取得する。なお、担当者識別子と対応付けられた外的要因情報が、外的要因格納部104に格納されている場合、m番目の担当者識別子と対応付けられた外的要因情報を取得してもよい。
(ステップS204)件数更新部105は、ステップS202で取得した内的要因情報と、ステップS203で取得した外的要因情報とを用いて、m番目の担当者についての件数情報を取得する。
(ステップS205)件数更新部105は、ステップS204で取得した件数情報で、m番目の担当者の件数格納部102に格納された件数情報を更新する。例えば、m番目の担当者識別子と対応付けられた件数情報を更新する。なお、m番目の担当者の件数情報が件数格納部102に格納されていない場合、ステップS204で取得した件数情報を、m番目の担当者の件数情報として、件数格納部に追記する。例えば、m番目の担当者識別子と対応付けて、ステップS204で取得した件数情報を、件数格納部102に蓄積する。
(ステップS206)件数更新部105は、カウンターmの値を1インクリメントする。
(ステップS207)件数更新部105は、m番目の担当者が居るか判断する。例えば、m番目の担当者識別子があるか判断し、ある場合、m番目の担当者が居ると判断して、このm番目の担当者識別子を取得してステップS202に戻り、ない場合、m番目の担当者が居ないと判断して、上位の処理にリターンする。なお、内的要因格納部103に一人の担当者の内的要因情報だけが格納されている場合、2番目以降の担当者はいないと判断してもよい。
なお、図3のフローチャートにおいて、電源オフや処理終了の割り込みにより処理は終了する。
次に、情報処理システム1000の情報処理装置1の、訪問先の自動販売機を決定する処理の動作の一例について図4のフローチャートを用いて説明する。この処理は、例えば、図2に示したフローチャートのステップS104に相当する処理である。
(ステップS301)訪問先決定部109は、カウンターnの値として1を代入する。
(ステップS303)訪問先決定部109は、n番目の担当者の件数情報を、件数格納部102から取得する。例えば、n番目の担当者識別子と対応付けられた件数情報を取得する。
(ステップS302)訪問先決定部109は、n番目の担当者の定期訪問情報を、定期訪問情報格納部106から取得する。例えば、n番目の担当者識別子と対応付けられた定期訪問情報を取得する。定期訪問情報は、例えば、定期訪問する1または2以上の自動販売機の自販機識別子である。なお、自販機情報格納部101に、担当者が定期訪問する自動販売機の自販機識別子が格納されていない場合、定期訪問情報は、定期訪問する自動販売機の件数であってもよい。
(ステップS304)訪問先決定部109がn番目の担当者について決定する訪問先の数(すなわち自動販売機の数)を決定する。例えば、ステップS302で取得した件数情報が特定する訪問先の自動販売機の件数から、ステップS303で取得した定期訪問情報が示す定期訪問する自動販売機の数を減算した件数を、訪問先の数に決定する。
(ステップS305)スコア取得部107は、n番目の担当者と対応付けられた2以上の自販機情報を、自販機情報格納部101から取得する。なお、自販機情報格納部101に、定期訪問する自動販売機の自販機情報が格納されている場合、スコア取得部107は、n番目の担当者と対応付けられた自販機識別子であって、ステップS304で取得した定期訪問情報が有する定期訪問する1または2以上の自動販売機の自販機識別子と対応付けられた自販機情報を除外した自販機情報を取得する。
(ステップS306)スコア取得部107は、ステップS305で取得した2以上の自販機情報がそれぞれ有する自販機属性値を用いて、各自販機情報が有する自販機識別子が示す自動販売機についてのスコアを取得する。
(ステップS307)訪問先決定部109は、ステップS306で自動販売機ごとに取得されたスコアを用いて、ステップS304で決定された件数以下の自動販売機であって、スコアが訪問条件を満たす自動販売機を、訪問先として決定する。
(ステップS308)訪問先決定部109は、ステップS307で決定した訪問先の自動販売機の自販機識別子を、n番目の担当者について取得した訪問先の情報として、格納部(図示せず)に蓄積する。例えば、n番目の担当者の担当者識別子と対応付けて蓄積する。このとき、ステップS303で取得したn番目の担当者の定期訪問情報が有する定期訪問する自動販売機の自販機識別子を加えた情報を、n番目の担当者の訪問先の情報として格納部(図示せず)に蓄積するようにしてもよい。
(ステップS309)訪問先決定部109は、カウンターnの値を1インクリメントする。
(ステップS310)訪問先決定部109は、n番目の担当者が居るか判断する。例えば、n番目の担当者識別子があるか判断し、ある場合、n番目の担当者が居ると判断して、このn番目の担当者識別子を取得してステップS302に戻り、ない場合、n番目の担当者が居ないと判断して、上位の処理にリターンする。なお、自販機情報格納部101に一人の担当者が担当する自販機情報だけが格納されている場合、2番目以降の担当者はいないと判断してもよい。
なお、図4のフローチャートにおいて、電源オフや処理終了の割り込みにより処理は終了する。
次に、情報処理システム1000の情報処理装置1の、訪問先を追加する処理の動作の一例について図5のフローチャートを用いて説明する。この処理は、例えば、図2に示したフローチャートのステップS106に相当する処理である。
(ステップS401)訪問先決定部109は、直前のステップ(例えば、ステップS105)で、訪問変更受付部108が受け付けた追加訪問指示に対応する担当者の件数情報を、件数格納部102から取得する。例えば、訪問先決定部109は、追加訪問指示と対応付けられた担当者識別子に対応付けられた件数情報を取得する。
(ステップS402)訪問先決定部109は、訪問変更受付部108が受け付けた追加訪問指示に対応する担当者について、ステップS307等により決定した訪問先(例えば、最新の訪問先)の自動販売機を示す情報を取得する。例えば、訪問先決定部109は、追加訪問指示に対応付けられた担当者識別子と対応付けて、ステップS308により格納部(図示せず)に格納されている訪問先の自動販売機の自販機識別子を読み出す。ここでは、一例として、読み出される訪問先の自動販売機の自販機識別子は、定期訪問する自動販売機の自販機識別子を有しているものとする。
(ステップS403)訪問先決定部109は、ステップS402で取得した訪問先の自動販売機を示す情報が示す自動販売機の数と、追加訪問指示が有する追加を要求する自動販売機の自販機識別子の数との和が、ステップ401で取得した件数情報が特定する件数以下であるか、判断する。件数以下の場合、ステップS404に進み、件数を超える場合、ステップS405に進む。
(ステップS404)訪問先決定部109は、追加訪問指示が示す1以上の自動販売機を、訪問先に追加する。例えば、訪問先決定部109は、決定した自動販売機を示す情報(例えば、自販機識別子)を、追加訪問指示に対応する担当者の訪問先を示す情報に追加する。例えば、決定した自動販売機の自販機識別子を、格納部(図示せず)に追加訪問指示に対応する担当者識別子と対応付けて蓄積されている訪問先の自動販売機の自販機識別子に追記する。そして、上位の処理にリターンする。
(ステップS405)スコア取得部107は、ステップS402で取得した訪問先に決定した自動販売機を示す情報(例えば、自販機識別子)を用いて、追加訪問指示に対応する担当者に対応付けられた自動販売機であって、訪問先に決定されていない1または2以上の自動販売機の自販機属性値を取得する。例えば、自販機情報格納部101に格納された自販機情報のうちの、訪問指示に対応する担当者の担当者識別子と対応付けられた自販機情報の中から、訪問先に決定した自動販売機の自販機識別子を含まない1または2以上の自販機情報を検出し、検出した自販機情報から、それぞれ自販機識別子と自販機属性値との組を取得する。
(ステップS406)スコア取得部107は、ステップS405で取得した1または2以上の自販機属性値をそれぞれ用いて、自販機属性値と組みになる自販機識別子についてのスコアを取得する。
(ステップS407)訪問先決定部109は、ステップS406で自動販売機について(具体的には自販機識別子について)取得したスコアを用いて、追加訪問指示が有する1または2以上の自販機識別子について取得されたスコアが、すべて追加条件を満たすか判断する。追加条件を満たす場合、ステップS408に進み、満たさない場合、ステップS409に進む。
(ステップS408)訪問先決定部109は、ステップS404と同様に、追加訪問指示が有する1または2以上の自販機識別子が示す自動販売機を訪問先に追加する。そして、上位の処理にリターンする。
(ステップS409)訪問先決定部109は、追加訪問指示が有する1または2以上の自販機識別子が示す自動販売機を、訪問先に追加しないことを決定する。例えば、訪問先決定部109は、追加訪問指示が指定する自動販売機が訪問先に追加できないことを表示するための情報等を、送信部(図示せず)等を介して、追加訪問指示を送信した端末装置2頭に送信してもよい。そして、上位の処理にリターンする。
なお、図5のフローチャートのステップS407においては、追加訪問指示が複数の自販機識別子を有する場合に、複数の自販機識別子に対応するスコアが、いずれも追加条件を満たす場合に、複数の自販機識別子が示す自動販売機を、訪問先に追加するようにしたが、複数の自販機識別子に対応するスコアが、それぞれ追加条件を満たすか判断し、追加条件を満たすスコアに対応する自販機識別子が識別する自動販売機を、訪問先に追加するようにし、追加条件を満たさない自販機識別子が識別する自動販売機を、訪問先に追加しないようにしてもよい。
また、図4のフローチャートのステップS306で取得されるスコアと、上記のステップS406で取得されるスコアとが、同じ属性の自販機属性値を用いて、同じ処理を行うことにより取得したスコアである場合、上記の図5のフローチャートにおいて、ステップS405およびステップS406において、追加訪問指示に対応する担当者に対応する自動販売機であって、訪問先に決定されていない自動販売機の自販機属性値を取得して、自動販売機ごとにスコアを取得する代わりに、図4に示したフローチャートのステップS306等によりスコア取得部107が自動販売機ごとに取得したスコアから、追加訪問指示に対応する担当者に対応する自動販売機であって、訪問先に決定されていない自動販売機と対応付けられたスコア(例えば、訪問先に決定されていない自動販売機の自販機識別子と対応付けられたスコア)を取得するようにしてもよい。この場合、例えば、スコア取得部107は、図4に示したフローチャートのステップS306等により自動販売機ごとに取得したスコアを、自販機識別子と対応付けて格納部(図示せず)等に蓄積するようにし、この格納部から、上記のような自販機識別子と対応付けられたスコアを読み出すようにすればよい。
また、図5のフローチャートのステップS405およびステップS406において取得するスコアは、追加訪問指示に対応する担当者に対応する自動販売機のうちの、訪問先に決定されていない自動販売機のスコアであって、ステップS407の追加条件の判断に必要な1または2以上の自動販売機のスコアであれば、訪問先に決定されていないすべての自動販売機のスコアであってもよく、一部のみのスコアであってもよい。例えば、追加条件が、追加訪問指示が有する自動販売機について取得されるスコアが、予め決められた閾値以上のスコアである、という条件である場合、これらのステップにより取得されるスコアは、追加訪問指示が有する自動販売機について取得されるスコアのみであってもよい。また、例えば、追加条件が、追加訪問指示が有する自動販売機について取得されるスコアが、予め決められた閾値以上の順位である、という条件である場合には、これらのステップにより取得されるスコアは、上記のすべての自動販売機について取得されるスコアとすることが好ましい。
また、図5のフローチャートにおいて、ステップS405の直前や直後等に、決定されていない自動販売機が、定期訪問する自動販売機である場合に、自動販売機を追加の訪問先に決定する処理や、決定されていない自動販売機に対応付けられた自販機優先情報が、優先度が高いことを示す場合に、自動販売機を追加の訪問先に決定する処理等を行うようにしてもよい。
なお、図5のフローチャートにおいて、電源オフや処理終了の割り込みにより処理は終了する。
次に、情報処理システム1000の情報処理装置1の、追加訪問する候補となる自動販売機を決定する処理の動作の一例について図6のフローチャートを用いて説明する。この処理は、例えば、図2に示したフローチャートのステップS108に相当する処理である。
(ステップS501)スコア取得部107は、直前のステップS107等において、追加候補推薦受付部110が受け付けた追加候補推薦指示に対応する担当者の担当者位置情報を取得する。例えば、追加候補推薦指示が担当者位置情報を有する場合、スコア取得部107は、追加候補推薦指示が有する担当者位置情報を取得する。
(ステップS502)追加訪問候補決定部113は、追加候補推薦受付部110が受け付けた追加候補推薦指示に対応する担当者に対応する自動販売機であって、訪問先に決定されていない自動販売機の自販機属性値を自販機情報格納部101から取得する。例えば、追加訪問候補決定部113は、追加候補推薦指示に対応する担当者の訪問先に決定した自動販売機の自販機識別子を、ステップS402と同様に取得し、取得した自販機識別子を用いて、ステップS405と同様に、追加候補推薦指示に対応する担当者に対応する自動販売機であって、訪問先に決定されていない自動販売機の自販機属性値を自販機情報格納部101から取得する。
(ステップS503)スコア取得部107は、ステップS502で1または2以上の自動販売機について取得した自販機属性値を用いて、自動販売機についてのスコアを取得する。
(ステップS504)追加訪問候補決定部113は、ステップS503で1または2以上の自動販売機について取得したスコアを用いて、対応するスコアが、追加候補条件を満たす自動販売機を決定する。例えば、追加候補条件を満たすスコアと対応付けられた自販機識別子を取得する。
(ステップS505)追加訪問候補決定部113は、カウンターkの値として1を代入する。
(ステップS506)追加訪問候補決定部113は、ステップS504で決定した自動販売機のうちの、k番目の自動販売機に対応する位置関連情報を、位置関連情報格納部111から取得する。
(ステップS507)追加訪問候補決定部113は、ステップS506で取得した位置関連情報と、ステップS501で取得した担当者位置情報とを用いて、k番目の自動販売機が、担当者に対して予め決められた位置関係にあるか判断する。予め決められた位置関係にある場合、ステップS508に進み、ない場合、ステップS509に進む。
(ステップS508)追加訪問候補決定部113は、k番目の自動販売機を追加する訪問先の自動販売機の候補に決定する。例えば、k番目の自動販売機の自販機識別子を、格納部(図示せず)等に蓄積する。そして、ステップS509に進む。
(ステップS509)追加訪問候補決定部113は、カウンターkの値を1インクリメントする。
(ステップS510)追加訪問候補決定部113は、ステップS504で決定した自動販売機に、k番目の自動販売機があるか判断する。ある場合、ステップS506に戻り、ない場合、ステップS511に進む。
(ステップS511)追加訪問候補決定部113は、ステップS508で決定した追加する訪問先の自動販売機の候補が1以上あるか判断する。ある場合、ステップS512に進み、ない場合、ステップS513に進む。
(ステップS512)訪問先出力部114は、ステップS508で決定した追加する訪問先の自動販売機の候補を示す情報(例えば、自動販売機の自販機識別子)を、追加候補推薦指示に対応する担当者に出力する。例えば、追加候補推薦指示を送信した端末装置2に自動販売機の候補を示す情報を送信する。そして、上位の処理にリターンする。
(ステップS513)訪問先出力部114は、追加する訪問先の自動販売機の候補がないことを示す情報を、追加候補推薦指示に対応する担当者に出力する。例えば、追加候補推薦指示を送信した端末装置2に候補がないことを示す情報を送信する。そして、上位の処理にリターンする。
なお、図4のフローチャートのステップS306で取得されるスコアと、上記のステップS503で取得されるスコアとが、同じ属性の自販機属性値を用いて、同じ処理を行うことにより取得したスコアである場合、図6に示したフローチャートにおいて、ステップS502において追加候補推薦指示に対応する担当者に対応する自動販売機であって、訪問先に決定されていない自動販売機について自販機属性値を取得し、ステップS503において、取得した自販機属性値を用いて自動販売機についてスコアを取得する代わりに、図4に示したフローチャートのステップS306等によりスコア取得部107が自動販売機ごとに取得したスコアから、追加候補推薦指示に対応する担当者に対応する自動販売機であって、訪問先に決定されていない自動販売機と対応付けられたスコア(例えば、訪問先に決定されていない自動販売機の自販機識別子と対応付けられたスコア)を取得するようにしてもよい。
また、図6に示したフローチャートにおいて、ステップS502からステップS504までの処理の代わりに、追加候補推薦受付部110が受け付けた追加候補推薦指示に対応する担当者に対応する自動販売機であって、訪問先に決定されていない自動販売機の自販機識別子を自販機情報格納部101から取得し、取得した自販機識別子を、ステップS504で取得された自販機識別子に代えて用いることで、ステップS505以降の処理を行うようにしてもよい。このようにして、スコアにより、追加する候補となる自動販売機を絞り込む処理を省略してもよい。
なお、図6のフローチャートにおいて、電源オフや処理終了の割り込みにより処理は終了する。
次に、端末装置2の動作の一例について簡単に説明する。例えば、端末受付部(図示せず)が、訪問先に決定された自動販売機に関する情報を送信する操作を、担当者から受け付けると、受け付けた指示に応じて、端末送信部(図示せず)が、担当者識別子と対応付けて、訪問先に決定された自動販売機に関する情報の送信を要求する情報を、情報処理装置1に送信する。端末装置2の端末受信部(図示せず)が、情報処理装置1の訪問先出力部114が送信する訪問先に決定した自動販売機に関する情報を受信すると、端末表示部(図示せず)が、受信した自動販売機に関する情報をモニタ(図示せず)に表示する。端末受付部が、訪問先に決定されていない自動販売機を訪問先に追加する操作であって、追加する自動販売機の自販機識別子を指定する操作を含む操作を、担当者から受け付けると、受け付けた指示に応じて、追加する自動販売機の自販機識別子を有する追加訪問指示を、端末送信部が、担当者識別子と対応付けて、情報処理装置1に送信する。情報処理装置1から、訪問先の自動販売機の追加の可否を示す情報を、端末受信部が受信すると、端末表示部が、受信した情報に応じて、追加の可否を示す情報をモニタに表示する。端末受付部が、訪問先の候補となる自動販売機の推薦を要求するための操作を担当者から受け付けると、端末受信部は、追加候補推薦指示を、担当者識別子と対応付けて情報処理装置1に送信する。端末受信部が、訪問先に追加する自動販売機に関する情報、例えば、追加する自動販売機の候補を示す情報や候補がないことを示す情報を情報処理装置1から受信すると、端末表示部は、受信した情報をモニタに表示する。ただし、端末装置2の動作は上記の動作に限定されるものではない。
以下、本発明の情報処理システム1000についての具体的な動作の一例について説明する。なお、ここでは、自販機情報格納部101には、2以上の担当者識別子とそれぞれ対応付けられた自販機情報が格納されている場合について説明する。また、ここでは、各担当者が担当する複数の自動販売機は、複数のコラムを有する自動販売機であるとする。また、各自動販売機が販売する商品は、ここでは一例として、容器入りの飲料であるとする。
図7(a)は、自販機情報格納部101に格納されている自販機情報を管理する自販機情報管理表である。自販機情報管理表は、「担当者ID」、「自販機ID」、「特定商品」、「売上」、「売切時間」、「エラー」、および「優先度」という属性を有している。「担当者ID」は、担当者識別子である。「自販機ID」は、自販機識別子である。「特定商品」は、自動販売機内の優先的に補充することが決められている特定の商品の在庫数が、予め決められた閾値以下となったか否かを示す情報であり、値「1」は、閾値以下となっていることを示し、値「0」は、閾値以下となっていないことを示す。この値は、例えば、自動販売機のコラム情報等を用いて取得される情報である。「売上」は、自動販売機の予め決められた期間(例えば、先月)内の商品の売り上げを示しており、ここでは、販売した商品の本数を示している。「売切時間」は、自動販売機の1以上のコラムに売り切れが発生してからの経過時間を示している。ここでは、最初に売り切れが発生したコラムの、発生からの経過時間を示している。この単位は、時間であるとする。なお、値「0」は売切が発生していないことを示す。「エラー」は、自動販売機に1以上のエラーが発生してからの経過時間を示している。ここでは、最初に発生したエラーの、発生からの経過時間を示している。この単位は、時間であるとする。なお、値「0」はエラーが発生していないことを示す。「優先度」は、自動販売機の自販機優先情報であり、例えば、優先的に訪問することが決められた自動販売機か否かを示す情報である。値「0」は、優先度が高くないことを示し、値「1」は優先度が高いことを示す。同じレコード(行)の「特定商品」、「売上」、「売切時間」、「エラー」、および「優先度」の属性値が、ここでは、自販機属性値に相当し、これに「自販機ID」の属性値を加えたものが、自販機情報に相当する。また、「担当者ID」は、同じレコードの自販機情報に対応付けられた担当者識別子である。ここでは、各レコードが、担当者識別子と対応付けられた自販機情報であるとする。また、ここでは、定期訪問する自動販売機の自販機情報が、自販機情報格納部101に格納されているものとする。
図8(a)は、件数格納部102に格納されている件数情報を管理する件数管理表である。件数管理表は、「担当者ID」と、「件数」という属性を有している。「担当者ID」は、担当者識別子である。「件数」は、件数情報である。ここでは、件数情報は、担当者が訪問する自動販売機の件数を示しており、件数情報の値が、件数情報で特定される件数であるとする。
図9は、内的要因格納部103に格納されている内的要因情報を管理する内的要因管理表である。内的要因管理表は、「担当者ID」、「作業者数」、「熟練度」、および「平均訪問数」という属性を有している。「担当者ID」は担当者識別子である。「作業者数」は、担当者が自動販売機を訪問する際に同行する作業者数である。「熟練度」は、担当者の熟練度であり、ここでは、五段階評価した熟練度の値を示している。ここでは、値が大きいほど熟練度が高いことを示している。「平均訪問数」は、担当者が、過去2週間の営業日に訪問した一日当たりの自動販売機数の平均数である。
図10は、外的要因格納部104に格納されている外的要因情報を管理する外的要因管理表である。外的要因管理表は、「担当者ID」、「季節」、「天気」、および「渋滞」という属性を有している。「担当者ID」は、担当者識別子である。「季節」は、季節情報であり、現在の季節を春、夏、秋、冬のいずれかで示している。「天気」は、天気情報であり、ここでは、担当者が担当する自動販売機が配置されているエリアの天気予報を示す情報であるとする。「渋滞」は、渋滞情報であり、ここでは、担当者が担当する自動販売機が配置されているエリアに渋滞発生の予想が出されているか否かを示す情報である。渋滞発生の予想がある場合は値が「1」であり、渋滞発生の予想がない場合は値が「0」であるとする。
図11は、定期訪問情報格納部106に格納されている定期訪問情報を管理する定期訪問管理表である。定期訪問管理表は、「担当者ID」と「自販機ID」という属性を有している。「担当者ID」は、担当者識別子であり、「自販機ID」は自販機識別子である。ここでは同じレコードの「自販機ID」は、同じレコードの「担当者ID」が識別する担当者が定期訪問する自動販売機の自販機識別子であるとする。
まず、情報処理装置1に対して、ある営業日(ここでは、一例として1月14日とする)の午前5時に、件数情報の更新処理を自動で実行するようスケジュールが予め設定されているものとする。そして、日時が1月14日の午前5時になったとすると、件数更新部105は、件数情報を更新する時刻になったと判断し、更新する処理を開始する。
件数更新部105は、図9に示した内的要因管理表の上から一番目のレコード(行)の「担当者ID」の属性値「U001」を、一番目の担当者識別子として取得する。そして、内的要因管理表の、この担当者識別子「U001」と対応付けられた上から一番目のレコードの「作業者数」の値「0」と、「熟練度」の値「4」と、「平均訪問数」の値「16.5」とをそれぞれ取得する。なお、ここでは、図9に示した内的要因管理表の、上からp(pは1以上の整数)番目のレコードの「担当者ID」の値を、p番目の担当者識別子と扱っている。ただし、どのレコードの「担当者ID」の値を、どの順番の担当者識別子と扱うようにしてもよい。
そして、件数更新部105は、取得した「作業者数」の値「0」に対して、予め決められた値「4」を乗算した値「0」を「作業者数」に対応するスコアとして取得する。
また、件数更新部105は、取得した「熟練度」の値「4」から予め決められた値「2」を減算して、「熟練度」に対応するスコア「2」を取得する。なお、仮に「熟練度」の値が「1」であった場合、取得する「熟練度」に対応するスコアは「-1」となる。
また、件数更新部105は、取得した平均訪問数「16.5」の小数点以下の値を切り捨てて「平均訪問数」に対応するスコア「16」を取得する。
また、件数更新部105は、図10に示した外的要因管理表の「担当者ID」の値が、上記の一番目の担当者識別子「U001」と一致するレコードの「季節」の値「春」、「天気」の値「晴れ」、および「渋滞」の値「1」とを取得する。
そして、件数更新部105は、取得した「季節」の値「春」に対応するスコア「0」を、格納部(図示せず)に予め格納されている「季節」の値とこれに対応するスコアとの複数の組を有する変換テーブル(図示せず)を用いて取得する。なお、この変換テーブルにおいては、例えば、「季節」の値「秋」にはスコア「0」が対応付けられ、値「夏」にはスコア「-1」が対応付けられ、値「冬」にはスコア「-2」が対応付けられているものとし、例えば、件数更新部105が取得した「季節」の値が「夏」であった場合、件数更新部105は、「季節」に対応するスコアとして、「-1」をこの変換テーブルから取得する。
また、件数更新部105は、取得した「天気」の値「曇り」に対応するスコア「1」を、格納部(図示せず)に予め格納されている「天気」の値とこれに対応するスコアとの複数の組を有する変換テーブル(図示せず)を用いて取得する。なお、この変換テーブルにおいては、例えば、「天気」の値「晴れ」にはスコア「0」が対応付けられ、値「雨」にはスコア「-1」が対応付けられ、値「雪」にはスコア「-2」が対応付けられているものとし、例えば、件数更新部105が取得した「天気」の値が「雨」であった場合、件数更新部105は、「天気」に対応するスコアとして、「-1」をこの変換テーブルから取得する。
また、件数更新部105は、「渋滞」の値「1」に対応する値「-1」を、格納部(図示せず)に予め格納されている「渋滞」の値とこれに対応するスコアとの複数の組を有する変換テーブル(図示せず)を用いて取得する。なお、この変換テーブルにおいては、例えば、「渋滞」の値「0」にはスコア「0」が対応付けられているものとする。
そして、件数更新部105は、上記のようにして取得した「作業者数」、「熟練度」、「平均訪問数」、「季節」、「天気」および「渋滞」にそれぞれ対応するスコアを用いて、一番目の担当者識別子「U001」に対応する件数情報を取得する。ここでは、上記のスコアをすべて加算した値「18」を件数情報として取得する。そして、取得した件数情報「18」で、図8(a)に示した件数管理表の「担当者ID」が、一番目の担当者識別子「U001」であるレコード(行)の「件数」の値を更新する。ここでは、例えば上書きする。
同様にして、件数更新部105は、図9に示した内的要因管理表の上から2番目以降のレコードの担当者識別子について、それぞれ、担当者識別子に対応付けられた内的要因情報と外的要因情報とを用いて上記のような件数情報を取得し、取得した件数情報で、図8(a)に示した件数管理表の各担当者識別子と対応付けられた「件数」の値を順次更新する。
図8(b)は、このようにして更新された件数管理表を示す図である。
次に、情報処理装置1に対して、件数情報の更新処理を行った直後に、訪問先を決定する処理を自動的に実行するように予め設定されているものとし、件数更新部105が、件数情報を更新する処理を完了したとすると、訪問先決定部109は、訪問先を決定する処理の開始を決定し、訪問先を決定する処理を開始する。
まず、訪問先決定部109は、図8(b)に示した件数管理表の上から一番目のレコード(行)の「担当者ID」の属性値「U001」を、一番目の担当者識別子として取得する。そして、件数管理表の、この担当者識別子「U001」と対応付けられた上から一番目のレコードの「件数」の値である件数情報「18」を取得する。なお、ここでは、件数管理表の、上からq(qは1以上の整数)番目のレコードの「担当者ID」の値を、q番目の担当者識別子として扱っている。ただし、どのレコードの「担当者ID」の値を、どの順番の担当者識別子と扱うようにしてもよい。
また、訪問先決定部109は、図11に示した定期訪問管理表の、「担当者ID」の値が、上記の一番目の担当者識別子「U001」と一致するレコードを検索し、検出したレコードの「自販機ID」の値である自販機識別子「VM1005」および「VM1021」を取得する。取得した自販機識別子は、担当者識別子が「U001」である担当者が、1月14日に定期訪問する予定の自販機識別子である。
訪問先決定部109は、取得した自販機識別子の数「2」を取得し、上記で取得した件数情報「18」から、取得した自販機識別子の数「2」を減算した値「16」を、訪問先として決定する自動販売機の件数として取得する。
スコア取得部107は、1番目の担当者と対応付けられた自販機識別子であって、上記で取得した定期訪問情報が有する定期訪問する1または2以上の自動販売機の自販機識別子と対応付けられた自販機情報を除外した自販機情報を、自販機情報格納部101から取得する。具体的には、スコア取得部107は、図7(a)に示した自販機情報管理表において、「担当者ID」の値が、1番目の担当者の担当者識別子「U001」と一致するレコード(行)であって、「自販機ID」の値が、上記で定期訪問管理表から取得した「VM1005」および「VM1021」ではない各レコードの、「担当者ID」の値以外の属性値である自販機情報を取得する。取得した情報は、例えば、格納部(図示せず)に蓄積する。
図7(b)は、スコア取得部107が取得した自販機情報を示す図である。ここでは、各レコード(行)が、各自販機情報であるとする。
そして、取得した各自販機情報が有する「自販機ID」以外の属性値を用いて、各自販機情報が有する「自販機ID」が識別する自動販売機についてのスコアを算出する。
まず、図7(b)に示した自販機情報のうちの、上から一行目の自販機情報の自販機属性値を用いて、この自販機情報が有する「自販機ID」が「VM1001」である自動販売機についてスコアを取得する。ここでは、一行目の自販機情報の「特定商品」、「売上」、「売切時間」、「エラー」、および「需要度」の値を、それぞれ、予め用意された自動販売機についてのスコアを算出するための演算式のパラメータに代入して、スコアを算出する。
ここで利用する演算式は、例えば、y=Ax1+Bx2+Cx3+Dx4+Ex5で表される演算式である。yはこの演算式で算出されるスコアの値である。なお、ここでは、算出されるスコアに対しては、端数処理を行って、小数点以下の値は切り捨てるものとする。この演算式において、x1、x2、x3、x4、およびx5は、自販機情報の「特定商品」、「売上」、「売切時間」、「エラー」、および「需要度」の値がこの順番で代入されるパラメータである。また、A,B,C,D,Eは、いずれも予め設定された正の係数であるとする。これらの係数は、いずれも、正の係数であれば、どのような値に設定するかは問わない。ただし、算出されるスコアによって、決定される訪問先が、適切な訪問先となるような係数に設定することが好ましい。上記のような自販機属性値を用いて、この演算式により算出されるスコアは、例えば、訪問の訪問優先度が高くなると値が大きくなるスコアである。なお、ここで挙げた演算式は一例であり、上記以外の演算式を用いてもよい。
上記の演算式に、1行目の自販機情報の値をパラメータとして代入して得られたスコアが、「45」であったとする。スコア取得部107は、取得したスコアを、1行目の自販機識別子「VM1001」と対応付けて格納部(図示せず)に蓄積する。ここでは一例として、一番目の担当者の担当者識別子「U001」とさらに対応付けて蓄積する
同様にして、スコア取得部107は、図7(b)に示した自販機情報のうちの、上から二行目以降の自販機情報の自販機属性値をそれぞれ用いて、各自販機情報が有する自販機識別子が示す自動販売機について、上記と同じ演算式によりスコアを算出し、算出したスコアを対応する自販機識別子と、一番目の担当者の担当者識別子と対応付けて格納部(図示せず)に蓄積する。
図12(a)は、スコア取得部107が一番目の担当者について取得し、担当者識別子と、自動販売機の自販機識別子と対応付けて蓄積したスコアを管理するスコア管理表である。スコア管理表は、担当者識別子である「担当者ID」、自販機識別子である「自販機ID」、およびスコアである「スコア」という属性を有している。
訪問先決定部109は、スコア取得部107が1番目の担当者が担当する自動販売機について取得したスコアを用いて、1番目の担当者について訪問先となる2以上の自動販売機であって、定期訪問する自動販売機以外の自動販売機を決定する。具体的には、上記で取得した訪問先として決定する自動販売機の数以下の自動販売機であって、スコアが訪問条件を満たす自動販売機を訪問先に決定する。ここでは、訪問先決定部109は、図12(a)に示したスコア管理表の、「担当者ID」が、一番目の担当者の担当者識別子である「U001」と一致するレコードにおいて、対応するスコアが訪問条件を満たすレコードである、対応するスコアの順位が閾値までレコードを検出し、検出したレコードの「自販機ID」の値である自販機識別子が識別する自動販売機を、訪問先に決定する。ここで利用する訪問条件の閾値として、上記で件数情報と内的要因情報および外的要因情報とを用いて一番目の担当者について取得した、訪問先として決定する自動販売機の数「16」を用いる。
具体的には、訪問先決定部109は、図12(a)に示したスコア管理表の、「担当者ID」が、一番目の担当者の担当者識別子である「U001」と一致するレコードにおいて、スコアの順位が、値の大きいものから数えて「16」番目までであるレコードを検出し、検出した各レコードの「自販機ID」の値である自販機識別子を取得する。取得した自販機識別子が、1番目の担当者の、1月14日の訪問先に決定した自動販売機の自販機識別子である。ただし、ここで決定した自動販売機は、1月14日に定期訪問する自動販売機を除いた自動販売機である。そして、訪問先決定部109は、スコアを用いて取得した自販機識別子と、上記で取得した定期訪問先の自動販売機の自販機識別子「VM1005」および「VM1021」とに対し、1番目の担当者の担当者識別子「U001」を対応付けて、格納部(図示せず)に蓄積する。ここで、1番目の担当者の担当者識別子「U001」を対応付けて蓄積した自販機識別子が、1番目の担当者の1月14日の訪問先に決定された定期訪問する自動販売機を含む18件の自動販売機の自販機識別子である。
図13(a)は、担当者について決定され、担当者識別子と対応付けて蓄積された訪問先の自動販売機の自販機識別子を管理する訪問先管理表である。
同様にして、図8(b)に示した件数管理表の上から二番目以降のレコード(行)のそれぞれについて、訪問先決定部109が、「担当者ID」の属性値である担当者識別子を順次取得して、取得した担当者識別子について、訪問先として決定する自動販売機の件数を取得し、スコア取得部107は、取得した担当者識別子に対応する自販機情報の自販機属性値を用いて、自販機識別子ごとにスコアを取得して、自販機識別子と対応付けて、図12(a)のスコア管理表に追記し、訪問先決定部109が、対応するスコアが訪問条件を満たす自動販売機を、訪問先の自動販売機に決定し、決定した自動販売機の自販機識別子と、定期訪問する自動販売機の自販機識別子とを、担当者識別子と対応付けて、図13(a)の訪問先管理表に追記していく。
図12(b)は、このようにして図8(b)に示した件数管理表のすべてのレコードから取得された担当者識別子のそれぞれについての訪問先が決定された時点における、スコア取得部107が取得し蓄積したスコアを管理するスコア管理表を示す図である。
図13(b)は、このようにして図8(b)に示した件数管理表のすべてのレコードから取得された担当者識別子のそれぞれについての訪問先が決定された時点における訪問先決定部109が決定した訪問先の自動販売機の自販機識別子を管理する訪問先管理表を示す図である。
次に、1月14日の午前9時に、担当者識別子「U001」が識別する担当者Aが、本日訪問する自動販売機を表示するために、担当者Aが利用する端末装置2に対し、本日の訪問先となる自動販売機を出力する操作等を行ったとする。ここでは、端末装置2は、タッチパネルを入力デバイスとして有するいわゆるスマートフォンであるとする。この操作は、担当者Aの担当者識別子を入力する操作を含む操作であり、入力デバイスであるタッチパネル(図示せず)等を介して行われるものとする。この操作を端末装置2の端末受付部(図示せず)が受け付けると、端末装置2の端末送信部(図示せず)は訪問先の自動販売機に関する情報を出力する指示であって、担当者識別子「U001」を有する指示である出力指示を、情報処理装置1に対して送信する。
情報処理装置1の出力指示受付部(図示せず)が、担当者識別子「U001」を有する出力指示を受信すると、訪問先出力部114は、出力指示から担当者識別子「U001」を取得し、図13(b)に示した訪問先管理表から、「担当者ID」の値が、取得した担当者識別子「U001」と一致する1または2以上のレコードを検出し、検出したレコードの「自販機ID」の値である自販機識別子を、訪問先の自動販売機に関する情報として、出力指示の送信元である端末装置2に送信する。なお、訪問先出力部114は、自販機識別子をテンプレート等に配置して送信するようにしてもよい。
担当者Aが利用する端末装置2の端末受信部(図示せず)が訪問先の自動販売機に関する情報を受信すると、端末装置2の端末表示部(図示せず)は、受信した訪問先の自動販売機に関する情報である自販機識別子のリストを表示する。
図14は、端末装置2のモニタ2aに表示された訪問先に関する情報である自販機識別子のリストの表示例を示す図である。
なお、図14に示したような、モニタ2aに表示される訪問先の自動販売機に関する情報である自販機識別子のリストにおいて、各自販機識別子の横に、対応する自販機識別子が示す自動販売機を訪問先から削除するための指示を受け付けるボタン等を用意し、一の自販機識別子の横のボタンが押された場合に、対応する一の自販機識別子が示す自動販売機を1月14日の訪問先から削除する操作を端末受付部(図示せず)が受け付け、受け付けた操作に応じて、端末送信部(図示せず)が、対応する一の自販機識別子と、担当者Aの担当者識別子「U001」と、を有する訪問削除指示を、情報処理装置1に送信し、この訪問削除指示を、情報処理装置1の訪問変更受付部108が受信すると、訪問変更先決定部109が、この訪問削除指示が有する自販機識別子と担当者識別子「U001」とを有するレコードを、図13(b)に示した訪問先管理表から削除するようにしてもよい。そして、このレコードが削除後の図13(b)に示した訪問先管理表から、訪問削除指示が有する担当者識別子「U001」と対応付けられた、自販機識別子を読み出して、読み出した自販機識別子のリストを、更新後の訪問先の自動販売機に関する情報として、訪問削除指示の送信元の端末装置2に送信するようにしてもよい。
また、訪問先の自動販売機の自販機識別子を表示する代わりに、自販機識別子を、それぞれ、担当者が自動販売機を識別しやすい自販機識別子に対応する自動販売機の名称や通称等に置換して表示するようにしてもよい。この置換は、例えば、自販機識別子と自動販売機の名称等との複数の組を有する情報を用いて行うことができる。この置換は、例えば、端末装置2が、自販機識別子と自動販売機の名称との複数の組を有する情報を用いて行うようにしてもよく、情報処理装置1の訪問先出力部114が、自販機識別子と自動販売機の名称との複数の組を有する情報を用いて行うようにしてもよい。また、自販機識別子として、コードの代わりに、自動販売機の名称や通称等を用いるようにしてもよい。
次に、図14に示すような訪問先の自販機識別子を見た担当者Aが、訪問先に含まれていない自動販売機を訪問先に追加するために、自販機識別子「VM1008」で識別される自動販売機を追加する操作等を端末装置2に対して行ったとする。この操作は、担当者Aの担当者識別子を入力する操作を含む操作であり、入力デバイスであるタッチパネル(図示せず)等を介して行われるものとする。この操作を端末装置2の端末受付部(図示せず)が受け付けると、端末装置2の端末送信部(図示せず)は、自販機識別子「VM1008」を有しており、この自販機識別子が識別する自動販売機を訪問先に追加する指示であって、担当者識別子「U001」を有する指示である追加訪問指示を、情報処理装置1に対して送信する。
情報処理装置1の訪問変更受付部108が、端末装置2から追加訪問指示を受信すると、訪問先決定部109は、追加訪問指示から、担当者識別子「U001」と、自販機識別子「VM1008」とを取得する。
訪問先決定部109は、図8(b)に示した件数管理表から、「担当者ID」が、追加訪問指示から取得した担当者識別子「U001」と一致するレコードを検出し、検出したレコードの「件数」の値である件数情報「18」を取得し、取得した件数情報により特定される訪問先の自動販売機の件数「18」を取得する。また、図13(b)に示した訪問先管理表から、「担当者ID」が「U001」であるレコードを検出し、検出したレコードの数を、訪問先として決定している自動販売機の件数として取得する。ここでは、件数「18」を取得する。そして、訪問先として決定している自動販売機の件数に、追加訪問指示が有する自販機識別子の数を加算した件数が、上記で取得した件数情報により特定される件数以下であるか判断する。ここでは、追加訪問指示が有する自販機識別子の数が「1」であり、訪問先として決定している自動販売機の件数「18」に、追加訪問指示が有する自販機識別子の数を加算した件数が「19」となるため、加算した件数が、件数情報により特定される件数「18」以下ではないと判断される。
このため、スコア取得部107は、担当者識別子「U001」で識別される担当者が担当する自動販売機のうちの、1月14日の訪問先に決定されていない各自動販売機について、各自動販売機に対応する自販機属性値を用いて取得されるスコアを取得する。ここで、スコア取得部107が、担当者識別子「U001」に対応付けられた自販機情報であって、図13(b)に示した訪問先管理表が示す訪問先に決定されている自動販売機の自販機識別子と対応付けられた自販機識別子を有していない自販機情報が有する自販機属性値を用いて、自販機情報が有する自販機識別子ごとに、上記で訪問先の自動販売機を決定する場合と同様にスコアを取得してもよいが、ここでは、訪問先の自動販売機を決定する際にスコア取得部107が自動販売機ごとに取得したスコアが、図12(b)に示すスコア管理表により管理されているため、スコア取得部107は、このスコア管理表から、担当者識別子「U001」で識別される担当者が担当する自動販売機のうちの、1月14日の訪問先に決定されていない各自動販売機についてのスコアを取得する。
具体的には、スコア取得部107は、図12(b)に示したスコア管理表から、「担当者ID」が「U001」であるレコードを検出する。また、スコア取得部107は、は、図13(b)に示した訪問先管理表の「担当者ID」が「U001」であるレコードから、「自販機ID」の値である1以上の訪問先の自動販売機の自販機識別子を取得する。そして、「自販機ID」の値が、取得した自販機識別子のいずれか一つと一致するレコードを、上記で図12(b)のスコア管理表において検出した「担当者ID」が「U001」であるレコードから除外する。そして、除外されずに残ったレコードの「自販機ID」と、「スコア」との値の組を、スコア取得部107は、1月14日の訪問先に決定されていない担当者識別子「U001」で識別される担当者が担当する各自動販売機の自販機識別子とスコアとの組として取得する。
そして、スコア取得部107が取得したスコアを用いて、訪問先決定部109は、追加訪問指示が有する自販機識別子のスコアが、追加条件を満たすか判断する。ここでの追加条件は、追加訪問指示が有する自販機識別子のスコアの、スコアが高いものから数えた順位が、閾値以内である、という条件であるとする。ここでの閾値は、例えば、「10位」であるとする。訪問先決定部109は、取得したスコアを、スコアの大きいものから降順にソートし、追加訪問指示が有する自販機識別子に対応付けられたスコアが、スコアが大きいものから数えて、10位以内であるか判断する。ここでは、例えば、スコアが10位以内であったとすると、追加条件を満たすと判断する。そして、訪問先決定部109は、追加訪問指示が有する自販機識別子「VM1008」と追加訪問指示が有する担当者識別子「U001」とを対応付けた情報を、訪問先に決定された自動販売機の自販機識別子と担当者識別子とが対応付けて格納される格納部(図示せず)に蓄積(例えば、追記)し、この自販機識別子「VM1008」と担当者識別子「U001」とを有するレコード(行)を、図13(b)に示す訪問先管理表に追記する。
図13(c)は、自販機識別子「VM1008」と担当者識別子「U001」とを有するレコード(行)を追記した訪問先管理表を示す図である。
そして、訪問先出力部114は、担当者識別子「U001」と対応付けられた訪問先に決定された自販機識別子であって、追加訪問指示が有する自販機識別子「VM1008」が追加された自販機識別子を、図13(c)に示した訪問先管理表から読み出し、更新された訪問先の自動販売機に関する情報として、追加訪問指示の送信元の端末装置2に送信する。また、ここでは、一例として、追加訪問指示が示す自動販売機が訪問先に追加されたことを示すダイアログを表示するための情報も、端末装置2に送信する。
端末装置2の端末受信部(図示せず)が、更新された訪問先の自動販売機に関する情報と、追加訪問指示が示す自動販売機が訪問先に追加されたことを示すダイアログを表示するための情報とを受信すると、端末表示部(図示せず)が、受信したこれらの情報をモニタ2aに表示する。
図15(a)は、端末装置2のモニタ2aに表示された更新された訪問先に関する情報と、訪問先に追加されたことを示すダイアログのとの表示例を示す図である。
なお、上記において、仮に、追加条件を満たさないと判断された場合、追加訪問指示が有する自販機識別子「VM1008」と追加訪問指示が有する担当者識別子「U001」とを対応付けた情報は、訪問先に決定された自動販売機の自販機識別子と担当者識別子とが対応付けて格納される格納部(図示せず)に蓄積されず、訪問先出力部114は、端末装置2に対して、追加訪問指示が示す自動販売機が訪問先に追加できないことを示すダイアログを表示するための情報を、端末装置2に送信する。端末装置2の端末受信部(図示せず)が、この追加訪問指示が示す自動販売機が訪問先に追加できないことを示すダイアログを表示するための情報と、を受信すると、端末表示部(図示せず)が、受信した情報をモニタ2aに表示する。
図15(b)は、端末装置2のモニタ2aに表示された追加訪問指示が示す自動販売機を訪問先に追加できないことを示すダイアログの表示例を示す図である。
また、上記において、訪問先決定部109が決定して蓄積した訪問先の自動販売機の自販機識別子が、訪問削除指示等に応じて削除されること等により、仮に、訪問先として決定している自動販売機の件数に、追加訪問指示が有する自販機識別子の数を加算した件数が、件数情報により特定される件数「18」以下であると判断された場合、訪問先決定部109は、追加訪問指示が有する自販機識別子「VM1008」と追加訪問指示が有する担当者識別子「U001」とを対応付けた情報を、訪問先に決定された自動販売機の自販機識別子と担当者識別子とが対応付けて格納される格納部(図示せず)に蓄積し、この自販機識別子「VM1008」と担当者識別子「U001」と、を有するレコード(行)を、図13(b)に示す訪問先管理表に追記し、訪問先出力部114は、上記と同様に、追加訪問指示が有する自販機識別子「VM1008」が追加された訪問先の自動販売機に関する情報である自販機識別子と、追加訪問指示が示す自動販売機が訪問先に追加されたことを示すダイアログを表示するための情報を、端末装置2に送信する。
ここで、担当者Aが、例えば、1月14日に訪問する予定の1または2以上の自動販売機を訪問している際に、現在までの訪問状況と、退社時刻とを考慮して、訪問先に決定されている自動販売機以外の自動販売機も追加で訪問できると考え、端末装置2に対して、追加で訪問する自動販売機の候補の推薦を要求する操作を行ったとする。この操作は、例えば、担当者Aが直前に訪問を完了した自動販売機の自販機識別子である「VM1003」と、担当者Aの担当者識別子「U001」を担当者位置情報として有する追加訪問推薦指示を送信するための操作であるとする。なお、自動販売機の自販機識別子は、例えば、担当者が手入力してもよく、ユーザが担当する自動販売機が、近距離無線通信や、いわゆるビーコン等を用いて送信する自販機識別子であって、直近に受信した自販機識別子であってもよい。また、担当者が訪問を完了したことを示す操作に対応する、訪問を完了した自動販売機の自販機識別子であってもよい。この操作を端末受付部(図示せず)が受け付けると、受け付けた操作に応じて、端末送信部(図示せず)は、担当者位置情報として用いられる自販機識別子である「VM1003」と、担当者識別子「U001」とを有する追加候補推薦指示を、情報処理装置1に送信する。
情報処理装置1の追加候補推薦受付部110が、担当者Aの端末装置2から、上記の追加候補推薦指示を受信すると、担当者位置取得部112は、追加候補推薦指示が有する自販機識別子「VM1003」を、担当者位置情報として取得する。
スコア取得部107は、追加候補推薦指示が有する担当者識別子「U001」で識別される担当者が担当する自動販売機のうちの、1月14日の訪問先に決定されていない各自動販売機について、各自動販売機に対応する自販機属性値を用いて取得されるスコアを取得する。ここで、スコア取得部107が、担当者識別子「U001」に対応付けられた自販機情報であって、図13(c)に示した訪問先管理表が示す訪問先に決定されている自動販売機の自販機識別子と対応付けられた自販機識別子を有していない自販機情報が有する自販機属性値を用いて、自販機情報が有する自販機識別子ごとに、上記で訪問先の自動販売機を決定する場合と同様にスコアを取得してもよいが、ここでは、訪問先の自動販売機を決定する際にスコア取得部107が自動販売機ごとに取得したスコアが、図12(b)に示すスコア管理表により管理されているため、訪問先決定部109は、このスコア管理表から、担当者識別子「U001」で識別される担当者が担当する自動販売機のうちの、1月14日の訪問先に決定されていない各自動販売機についてのスコアを取得する。
具体的には、スコア取得部107は、図12(b)に示したスコア管理表から、「担当者ID」が「U001」であるレコードを検出する。また、スコア取得部107は、図13(c)に示した訪問先管理表の「担当者ID」が「U001」であるレコードから、「自販機ID」の値である1以上の訪問先の自動販売機の自販機識別子を取得する。そして、「自販機ID」の値が、取得した自販機識別子のいずれか一つと一致するレコードを、上記で図12(b)のスコア管理表において検出した「担当者ID」が「U001」であるレコードから除外する。そして、スコア取得部107は、除外されずに残ったレコードの「自販機ID」と、「スコア」との値の組を、1月14日の訪問先に決定されていない担当者識別子「U001」で識別される担当者が担当する各自動販売機の自販機識別子とスコアとの組として取得する。
そして、スコア取得部107が取得したスコアを用いて、追加訪問候補決定部113は、追加候補推薦指示が有する自販機識別子のスコアが、追加候補条件を満たすか判断する。ここでの追加条件は、追加訪問指示が有する自販機識別子のスコアの、スコアが高いものから数えた順位が、閾値以内である、という条件であるとする。ここでの閾値は、例えば、「8位」であるとする。訪問先決定部109は、取得したスコアを、スコアの大きいものから降順にソートし、追加訪問指示が有する自販機識別子に対応付けられたスコアが、スコアが大きいものから数えて、8位以内であるスコアを、追加候補条件を満たすスコアであると判断する。そして、訪問先決定部109は、8位以内のスコアとそれぞれ対応付けられた自販機識別子を取得する。取得した自販機識別子は、例えば、「VM1004」、「VM1007」、「VM1010」等を含む8つの自販機識別子であったとする。
図16は、位置関連情報格納部111に格納されている位置関連情報を管理する位置関連情報管理表である。位置関連情報管理表は、「自販機ID」と、「グループID」という属性を有している。「自販機ID」は、自販機識別子である。「グループID」は、グループ識別子であり、ここでは、自動販売機の位置関連情報に相当する。グループ識別子は、同じエリアに設置されている複数の自動販売機で構成されるグループを識別する識別子であり、ここでは、自動販売機が設置されるエリアに割り当てられたコードが用いられる。
追加訪問候補決定部113は、追加候補推薦指示が有する自販機識別子「VM1003」と、上記で取得した8つの自販機識別子とのそれぞれに対応する位置関連情報であるグループ識別子を、図16に示した位置関連情報管理表から取得する。例えば、図16に示した位置関連情報管理表の、「自販機ID」の値が、「VM1003」であるレコードの「グループID」の値である「A01」を、自販機識別子「VM1003」に対応する位置関連情報であるグループ識別子として取得する。また、同様の処理により、自販機識別子「VM1004」についてはグループ識別子「A03」、自販機識別子「VM1007」および「VM1010」については、いずれもグループ識別子「A01」を取得する。
そして、上記でスコアを用いて取得された8つの自販機識別子のそれぞれについて、順次、対応するグループ識別子を、図16に示した位置関連情報管理表から取得し、取得したグループ識別子が、自販機識別子「VM1003」について取得したグループ識別子「A01」と一致するか判断し、一致するグループ識別子が取得された自販機識別子を、訪問先の候補となる自動販売機の自販機識別子を取得する。ここでは、自販機識別子として「VM1007」、「VM1010」、「VM1049」および「VM1053」が取得されたとする。
訪問先出力部114は、取得した4つの自販機識別子を有する情報を、訪問先の候補となる自動販売機を示す情報として、追加候補推薦指示の送信元である担当者Aが利用する端末装置2に送信する。
担当者Aが利用する端末装置2の端末受信部(図示せず)が、訪問先の候補を示す情報を受信すると、端末表示部(図示せず)は、受信した訪問先の候補を示す情報を、モニタ2aに表示する。ここでは、訪問先の候補を示す情報が有する4つの自販機識別子が配置された画面を、モニタ2aに表示する。
図17は、端末装置2がモニタ2aに表示する訪問先の候補を示す情報の表示例を示す図である。
担当者Aは、表示される訪問先の候補を示す情報を参考にして、追加する訪問先を決定することができる。
なお、訪問先出力部114は、追加する訪問先の候補を示す情報として、追加する訪問先となる1以上の自動販売機の位置を示す地図の情報等を取得し送信するようにしてもよい。例えば、自販機識別子と、自販機識別子が示す自動販売機の設置されている位置の座標とを有する情報が、自販機情報格納部101や、格納部(図示せず)に予め格納しておくようにし、この情報を用いて、訪問先の候補となる自動販売機の自販機識別子と対応付けられた座標を取得し、取得した座標が示す位置を地図に配置した地図の画像を表示するための情報(例えば、画像情報等)を、地図情報を提供するASPサーバ(図示せず)等から取得し、取得した画像を表示するための情報を、訪問先出力部114が、端末装置2に送信するようにしてもよい。
なお、追加する訪問先の候補を、訪問先決定部109が決定できなかった場合、訪問先出力部114は、訪問先の候補がない旨を示すダイアログ等の情報を、端末装置2に送信し、これを受信した端末装置2が、訪問先の候補がない旨を示すダイアログ等の情報をモニタ2aに表示するようにしてもよい。
以上、本実施の形態によれば、訪問する自動販売機を適切に決定することができる。
なお、上記実施の形態においては、情報処理装置1が、一の訪問日について、担当者が訪問する自動販売機を決定する場合を例に挙げて説明したが、情報処理装置1が、複数の訪問日のそれぞれについて、担当者が訪問する自動販売機を決定するようにしてもよい。この場合、例えば、件数格納部102には、複数の訪問日の日付とそれぞれ対応付けられた件数情報が格納されているようにし、各訪問日の日付に対応付けられた件数情報を用いて、各日付に対応する訪問先決定部109が訪問先の自動販売機を決定するようにしてもよい。同様に、この場合、例えば、定期訪問情報格納部106には、複数の訪問日の日付とそれぞれ対応付けられた定期訪問情報が格納されているようにし、各訪問日の日付に対応付けられた定期訪問情報を用いて、各日付に対応する訪問先決定部109が訪問先の自動販売機を決定するようにしてもよい。
なお、上記各実施の形態において、各処理(各機能)は、単一の装置(システム)によって集中処理されることによって実現されてもよく、あるいは、複数の装置によって分散処理されることによって実現されてもよい。
また、上記各実施の形態において、一の装置に存在する2以上の通信手段(情報送信部など)は、物理的に一の媒体で実現されてもよいことは言うまでもない。
また、上記各実施の形態においては、情報処理装置1は、スタンドアロンの装置であってもよく、サーバ・クライアントシステムにおけるサーバ装置であってもよい。例えば、前者の場合、訪問先出力部は、画面等を出力したり、データを、情報処理装置1が有する格納部(図示せず)等に蓄積したりするようにし、訪問変更受付部108や追加候補推薦受付部110等の受付部は、入力デバイス等を介して、操作や情報等を受け付けてもよい。また、後者の場合には、訪問変更受付部108や追加候補推薦受付部110等の受付部は、通信回線を介して入力を受け付けたり、訪問先出力部等は、通信回線を介して画面を出力したりしてもよい。
なお、上記各実施の形態における情報処理装置を実現するソフトウェアは、以下のようなプログラムである。つまり、このプログラムは、自動販売機を識別する自販機識別子と自動販売機の1以上の自販機属性値とを有する2以上の自販機情報が格納される自販機情報格納部と、担当者が1日に訪問する自動販売機の件数を特定する件数情報が格納される件数格納部と、にアクセス可能なコンピュータを、2以上の各自販機情報が有する自販機識別子と対になる1以上の自販機属性値を用いて、自販機識別子で識別される自動販売機のスコアを取得するスコア取得部と、件数情報が特定する件数以内の数の自動販売機であり、スコア取得部が取得したスコアが訪問条件を満たす自動販売機を訪問先に決定する訪問先決定部と、訪問先決定部が訪問先に決定した自動販売機に関する情報を出力する訪問先出力部として機能させるためのプログラムである。
なお、上記プログラムにおいて、上記プログラムが実現する機能には、ハードウェアでしか実現できない機能は含まれない。例えば、情報を取得する取得部や、情報を出力する出力部などにおけるモデムやインターフェースカードなどのハードウェアでしか実現できない機能は、上記プログラムが実現する機能には含まれない。
また、このプログラムを実行するコンピュータは、単数であってもよく、複数であってもよい。すなわち、集中処理を行ってもよく、あるいは分散処理を行ってもよい。
本発明は、以上の実施の形態に限定されることなく、種々の変更が可能であり、それらも本発明の範囲内に包含されるものであることは言うまでもない。