(57)【要約】【課題】予定表の入力を支援する。【解決手段】ユーザの識別情報及び予定名の入力を受け付け、前記識別情報と対応する前記ユーザと関連する他のユーザを特定し、前記他のユーザの予定情報において、入力された前記予定名と関連する予定名と対応する開催場所の確度を算出し、前記確度に基づく前記開催場所の一覧を出力する処理を、コンピュータに実行させる。【選択図】図２２
2016115109.tif 000002
【特許請求の範囲】
【請求項１】
ユーザの識別情報及び予定名の入力を受け付け、
前記識別情報と対応する前記ユーザと関連する他のユーザを特定し、
前記他のユーザの予定情報において、入力された前記予定名と関連する予定名と対応する開催場所の確度を算出し、
前記確度に基づく前記開催場所の一覧を出力する処理を、コンピュータに実行させる予定表入力支援プログラム。
【請求項２】
記憶部に、各ユーザの予定情報と、各ユーザの位置を示すユーザ位置情報と、各ユーザが滞在した場所を示す滞在位置情報が格納されており、
前記他のユーザを特定する処理は、
前記記憶部を参照し、前記ユーザの前記予定情報において、過去の予定の開始時刻から終了時刻までの間の前記ユーザの滞在場所に同席していたユーザを抽出し、
前記同席していたユーザのうち、前記ユーザと同席していた同席割合が所定値より高いユーザを特定する、処理である請求項１記載の予定表入力支援プログラム。
【請求項３】
前記確度を算出する処理は、
特定された前記他のユーザの予定情報に含まれる開催場所の確度である第一の確度を算出し、
特定された前記他のユーザの予定情報において、入力された前記予定名と一致する予定名と対応付けられた開催場所の確度である第二の確度を算出し、
前記第一の確度と前記第二の確度とを加算する、処理である請求項２記載の予定表入力支援プログラム。
【請求項４】
前記第二の確度は、
入力された前記予定名を解析して取得した第一のキーワードの数と、
前記第一のキーワードと、前記他のユーザの予定情報に含まれる予定名を解析して取得した第二のキーワードと、において共通する共通キーワードの数と、
前記他のユーザの前記同席割合と、に応じて算出される、請求項３記載の予定表入力支援プログラム。
【請求項５】
コンピュータによる予定表入力支援方法であって、該コンピュータが、
ユーザの識別情報及び予定名の入力を受け付け、
前記識別情報と対応する前記ユーザと関連する他のユーザを特定し、
前記他のユーザの予定情報において、入力された前記予定名と関連する予定名と対応する開催場所の確度を算出し、
前記確度に基づく前記開催場所の一覧を出力する、予定表入力支援方法。
【請求項６】
ユーザの識別情報及び予定名の入力を受け付ける新予定取得部と、
前記識別情報と対応する前記ユーザと関連する他のユーザを特定するグループメンバ取得部と、
前記他のユーザの予定情報において、入力された前記予定名と関連する予定名と対応する開催場所の確度を算出する確度算出部と、
前記確度に基づく前記開催場所の一覧を出力する場所候補出力部と、を有する予定表入力支援装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、予定表入力支援プログラム、予定表入力支援方法及び予定表入力支援装置に関する。
【背景技術】
【０００２】
従来から、ユーザにより入力された情報を用いて、ユーザのスケジュールを管理するシステムが知られている。
【０００３】
従来のシステムでは、例えば、会議の形態や参加予定者のスケジュール、会議室や備品の使用状況等の様々な条件に応じて、実施可能な会議の形態と日時、会議室の候補を提示するものが知られている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１３−１９１０７５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
従来のシステムにおいて、予定表等に会議室を登録する際に、提示された会議室の場所が登録者にとって明確である場合、登録者は、会議室がある場所の入力を省き、会議室名のみを登録する可能性がある。この場合、予定表には会議室名のみが登録され、会議室がある場所は登録されない。したがって、例えば他者が登録者のスケジュールを確認しても、登録者の居場所を把握することができない。
【０００６】
１つの側面では、予定表の入力を支援する予定表入力支援プログラム、予定表入力支援方法及び予定表入力支援装置を提供することを目的としている。
【課題を解決するための手段】
【０００７】
一様態によれば、ユーザの識別情報及び予定名の入力を受け付け、前記識別情報と対応する前記ユーザと関連する他のユーザを特定し、前記他のユーザの予定情報において、入力された前記予定名と関連する予定名と対応する開催場所の確度を算出し、前記確度に基づく前記開催場所の一覧を出力する処理を、コンピュータに実行させる。
【０００８】
上記各処理は、上記各処理を実現する機能部、上記各処理を実現する手順、プログラムを記憶したコンピュータ読み取り可能な記憶媒体とすることもできる。
【発明の効果】
【０００９】
予定表の入力を支援することができる。
【図面の簡単な説明】
【００１０】
【図１】予定表入力支援システムの構成を説明する図である。
【図２】予定表入力支援装置のハードウェア構成の一例を示す図である。
【図３】所属情報テーブルの一例を示す図である。
【図４】予定情報テーブルの一例を示す図である。
【図５】ユーザ位置情報テーブルの一例を示す図である。
【図６】会議室位置情報テーブルの一例を示す図である。
【図７】予定表入力支援装置の機能構成を説明する図である。
【図８】予定表入力支援装置の機能構成を説明する図である。
【図９】参加者リスト作成部の処理を説明する第一のフローチャートである。
【図１０】参加者リスト作成部の処理を説明する第二のフローチャートである。
【図１１】参加者リスト付き中間テーブルの一例を示す図である。
【図１２】グループメンバ取得部の処理を説明するフローチャートである。
【図１３】判定用中間テーブルとグループメンバテーブルの例を示す図である。
【図１４】第一関連予定取得部の処理を説明するフローチャートである。
【図１５】第二関連予定取得部の処理を説明するフローチャートである。
【図１６】第一関連予定中間テーブルと第二関連予定中間テーブルの一例を示す図である。
【図１７】キーワード抽出部の処理を説明するフローチャートである。
【図１８】キーワード抽出部の処理の具体例を説明する図である。
【図１９】関連確度算出部の処理を説明する第一のフローチャートである。
【図２０】関連確度算出部の処理を説明する第二のフローチャートである。
【図２１】開催場所候補テーブルの一例を示す図である。
【図２２】端末装置に表示される予定表の入力画面の例を示す第一の図である。
【図２３】端末装置に表示される予定表の入力画面の例を示す第二の図である。
【発明を実施するための形態】
【００１１】
以下に、図面を参照して実施形態について説明する。本実施形態の予定表入力支援システムでは、ユーザが予定表に予定を入力する際に、予定される会議や打ち合わせ等が開催される場所の候補の一覧を、その予定が実行される場所となる確度が高い順に表示させる。
【００１２】
図１は、予定表入力支援システムの構成を説明する図である。本実施形態の予定表入力支援システム１００は、予定表入力支援装置２００と、端末装置３００−１、３００−２、・・・、３００−Ｎとを有する。予定表入力支援装置２００と端末装置３００−１、３００−２、・・・、３００−Ｎは、ネットワークを介して接続されており、予定表入力支援装置２００には、予定表入力支援プログラム２１０がインストールされている。
【００１３】
本実施形態の予定表入力支援装置２００は、ストレージデバイス２２０に格納された各種テーブルを参照し、後述する処理を実行する。また、予定表入力支援装置２００は、後述する処理により作成されたテーブルをストレージデバイス２２０へ格納する。尚、ストレージデバイス２２０は、予定表入力支援装置２００が有しても良いし、予定表入力支援装置２００の外部に設けられていても良い。
【００１４】
本実施形態のストレージデバイス２２０は、所属情報テーブル２２１、予定情報テーブル２２２、ユーザ位置情報テーブル２２３、会議室位置情報テーブル２２４を有する。また、ストレージデバイス２２０には、予定表入力支援装置２００により作成された、参加者リスト付き中間テーブル２３１、判定用中間テーブル２３２、グループメンバテーブル２３３、第一関連予定中間テーブル２３４、第二関連予定中間テーブル２３５、開催場所候補テーブル２３６が格納される。
【００１５】
本実施形態の端末装置３００−１、３００−２、・・・、３００−Ｎは、例えば一般的にコンピュータや、タブレット型のコンピュータや、スマートフォン等である。本実施形態では、端末装置３００−１、３００−２、・・・、３００−Ｎのそれぞれを区別しない場合には、端末装置３００と呼ぶ。
【００１６】
本実施形態の予定表入力支援システム１００では、端末装置３００において入力された予定名から、予定が開催される場所となる確度が高い順に、場所の候補の一覧を端末装置３００に表示させる。本実施形態の確度とは、確実さを示す度合いである。
【００１７】
また、本実施形態の予定表入力支援システムでは、複数のメンバが参加する会議や打ち合わせの予定を入力する際に、予定名を入力すれば、同じ会議に参加する他のユーザが特定されていない状態において、場所の候補一覧を表示させることができる。
【００１８】
図２は、予定表入力支援装置のハードウェア構成の一例を示す図である。本実施形態の予定表入力支援装置２００は、入力装置２１、出力装置２２、ドライブ装置２３、補助記憶装置２４、メモリ装置２５、演算処理装置２６及びインターフェース装置２７を有する。
【００１９】
入力装置２１は、各種情報を入力するために用いられる。出力装置２２は、例えばディスプレイ等であり、各種の情報を出力するために用いられる。
【００２０】
インターフェース装置２７は、モデム、ＬＡＮカード等を含み、ネットワークに接続する為に用いられる。
【００２１】
予定表入力支援プログラム２１０は、予定表入力支援装置２００を制御する各種プログラムの少なくとも一部である。予定表入力支援プログラム２１０は、例えば記録媒体２８の配布やネットワークからのダウンロードなどによって提供される。予定表入力支援プログラム２１０を記録した記録媒体２８は、ＣＤ−ＲＯＭ、フレキシブルディスク、光磁気ディスク等の様に情報を光学的、電気的或いは磁気的に記録する記録媒体、ＲＯＭ、フラッシュメモリ等の様に情報を電気的に記録する半導体メモリ等、様々なタイプの記録媒体を用いることができる。
【００２２】
また予定表入力支援プログラム２１０を記録した記録媒体２８がドライブ装置２３にセットされると、予定表入力支援プログラム２１０は記録媒体２８からドライブ装置２３を介して補助記憶装置２４にインストールされる。ネットワークからダウンロードされた予定表入力支援プログラム２１０は、インターフェース装置２７を介して補助記憶装置２４にインストールされる。
【００２３】
補助記憶装置２４は、インストールされた予定表入力支援プログラム２１０を格納すると共に、必要なファイル、データ等を格納する。メモリ装置２５は、コンピュータの起動時に補助記憶装置２４から予定表入力支援プログラム２１０を読み出して格納する。そして、演算処理装置２６はメモリ装置２５に格納された予定表入力支援プログラム２１０に従って、後述するような各種処理を実現している。
【００２４】
尚、本実施形態の予定表入力支援装置２００は、例えばデスクトップ型あるいはノートブック型のコンピュータであっても良い。その場合、予定表入力支援装置２００は、入力装置と出力装置の替わりに、表示操作装置を有する。
【００２５】
本実施形態の端末装置３００は、予定表入力支援装置２００と同様であるから説明を省略する。
【００２６】
次に、本実施形態の予定表入力支援装置２００の有する各テーブルについて説明する。以下では、ストレージデバイス２２０に予め格納されている、所属情報テーブル２２１、予定情報テーブル２２２、ユーザ位置情報テーブル２２３、会議室位置情報テーブル２２４について説明する。
【００２７】
図３は、所属情報テーブルの一例を示す図である。本実施形態の所属情報テーブル２２１は、予定表入力支援システム１００のユーザが所属する部署を示す。本実施形態のユーザとは、例えば企業の従業員等であっても良い。
【００２８】
本実施形態の所属情報テーブル２２１は、情報の項目として、ナンバー、ユーザＩＤ、所属部署ＩＤを有し、ナンバーに他の項目が対応付けられている。所属情報テーブル２２１において項目「ナンバー」の値と、他の項目との値とを含む情報を所属情報と呼ぶ。
【００２９】
項目「ナンバー」の値は、所属情報テーブル２２１におけるレコードを特定する識別子である。項目「ユーザＩＤ」の値は、ユーザの識別子を示す。項目「所属部署ＩＤ」は、ユーザＩＤで示されるユーザが所属する部署の識別子を示す。
【００３０】
図４は、予定情報テーブルの一例を示す図である。本実施形態の予定情報テーブル２２２は、予定表に登録されている各予定を表す。
【００３１】
予定情報テーブル２２２は、情報の項目として、ナンバー、ユーザＩＤ、予定ＩＤ、予定名、開催日、開始時刻、終了時刻、会議室を有し、ナンバーに他の項目が対応付けられている。予定情報テーブル２２２において項目「ナンバー」の値と、他の項目との値とを含む情報を予定情報と呼ぶ。
【００３２】
項目「予定ＩＤ」の値は、各予定情報の識別子を示す。項目「予定名」の値は、予定情報に対してユーザが設定した名称を示す。項目「開催日」の値は、予定が行われる日付を特定する情報であり、年月日が設定される。項目「開始時刻」の値は、予定を開始する時刻を示し、項目「終了時刻」の値は、予定が終了する時刻を示す。項目「会議室」の値は、会議室の名称を示す。尚、本実施形態の予定情報テーブル２２２において、項目「会議室」の値は、会議室のある場所の地名は含まない。
【００３３】
図５は、ユーザ位置情報テーブルの一例を示す図である。本実施形態のユーザ位置情報テーブル２２３は、ある時刻にあるユーザが居た場所を表す。
【００３４】
ユーザ位置情報テーブル２２３は、情報の項目として、ナンバー、ユーザＩＤ、日付、時刻、位置情報を有し、ナンバーに他の項目が対応付けられている。ユーザ位置情報テーブル２２３において項目「ナンバー」の値と、他の項目との値とを含む情報をユーザ位置情報と呼ぶ。
【００３５】
項目「日付」の値は、ユーザＩＤと対応するユーザの位置情報を取得した日付を示す。項目「時刻」の値は、ユーザＩＤと対応するユーザの位置情報を取得した時刻を示す。項目「位置情報」の値は、ユーザが所持している端末装置３００の位置を示すもので、緯度経度等で表される地球の表面上の１点の位置と地面からの高さを含む情報である。
【００３６】
本実施形態のユーザ位置情報テーブル２２３に格納されるユーザ位置情報は、例えば所定間隔毎に、端末装置３００の有するＧＰＳ（Global Positioning System）機能等を用いて取得される。
【００３７】
図６は、会議室位置情報テーブルの一例を示す図である。本実施形態の会議室位置情報テーブル２２４は、ユーザが会議で利用する会議室の位置情報を示す。すなわち、本実施形態の会議室の位置情報は、予定が開催されているときに、ユーザが滞在している滞在場所の位置情報である。本実施形態では、１つの予定が実施されている間に複数の開催場所に存在しても良い。
【００３８】
会議室位置情報テーブル２２４は、情報の項目として、場所、会議室名、位置情報を有し、会議室名に他の項目が対応付けられている。会議室位置情報テーブル２２４において項目「会議室名」の値と、他の項目との値とを含む情報を会議室位置情報と呼ぶ。
【００３９】
項目「場所」の値は、会議室のある場所を特定する情報で、例えば地名や建屋名を含む。項目「会議室名」は、会議室に付けられた名称を示す。本実施形態では、場所と会議室名を組み合わせることで、会議室が一意に特定される。
【００４０】
項目「位置情報」の値は、会議室が占める空間の範囲を表す情報である。本実施形態の項目「位置情報」は、空間の範囲を表すため、項目「Ｐ１」と項目「Ｐ２」を有する。本実施形態では、会議室がしめる空間が直方体であるものとし、項目「Ｐ１」の値と、項目「Ｐ２」の値を、直方体の対角の位置にある２点の位置情報とした。
【００４１】
本実施形態の予定表入力支援装置２００は、上述の各種テーブルを参照し、予定の開催場所候補とその候補の確からしさ(確度)を算出する。
【００４２】
以下に、図７を参照して本実施形態の予定表入力支援装置２００の機能について説明する。図７は、予定表入力支援装置の機能構成を説明する図である。
【００４３】
本実施形態の予定表入力支援装置２００は、予定表入力支援処理部２１０Ａを有する。予定表入力支援処理部２１０Ａは、予定表入力支援装置２００が演算処理装置２６により予定表入力支援プログラム２１０を実行することにより実現される。
【００４４】
本実施形態の予定表入力支援処理部２１０Ａは、新予定取得部２１１、参加者リスト作成部２１２、グループメンバ取得部２１３、関連予定取得部２１４、関連確度算出部２１５、場所候補出力部２１６を有する。
【００４５】
本実施形態の新予定取得部２１１は、ユーザが予定表に入力中の予定の情報を取得する。本実施形態において、入力中の予定情報は、少なくとも、ユーザＩＤ、予定名を含む。
【００４６】
参加者リスト作成部２１２は、予定情報テーブル２２２に格納された予定情報において、過去に実施された会議に参加（同席）していたメンバを特定し、参加者リスト付き中間テーブル２３１を作成する。参加者リスト作成部２１２の処理の詳細は後述する。
【００４７】
グループメンバ取得部２１３は、同一部署に所属するメンバの中から、業務上直接関係のあるメンバ(グループメンバ)を特定し、判定用中間テーブル２３２と、グループメンバテーブル２３３とを作成する。グループメンバ取得部２１３の詳細は後述する。
【００４８】
関連予定取得部２１４は、グループメンバの予定情報を利用し、入力中の予定の開催場所の候補を取得し、第一関連予定中間テーブル２３４と、第二関連予定中間テーブル２３５とを作成する。
【００４９】
本実施形態の関連予定取得部２１４は、第一関連予定取得部２１７、第二関連予定取得部２１８、キーワード抽出部２１９を有する。第一関連予定取得部２１７は、参加者リスト付き中間テーブル２３１とグループメンバテーブル２３３とを用いて、入力中の予定の開催場所の候補を取得する。第二関連予定取得部２１８は、グループメンバの予定情報の中から、開催場所の候補とその確度を算出するための情報を取得する。
【００５０】
キーワード抽出部２１９は、入力中の予定名を表す文字列の中から、開催場所の特徴を表すキーワードを抽出する。本実施形態の関連予定取得部２１４の有する各部の処理の詳細は後述する。
【００５１】
関連確度算出部２１５は、関連予定取得部２１４で取得した開催場所の候補のそれぞれについて、確度を算出する。より具体的には、関連確度算出部２１５は、開催場所候補テーブル２３６を作成する。関連確度算出部２１５の処理の詳細は後述する。
【００５２】
場所候補出力部２１６は、関連確度算出部２１５により作成された開催場所候補テーブル２３６の情報を表示させる画面データを生成し、端末装置３００に出力する。尚、場所候補出力部２１６は、開催場所候補テーブル２３６の情報をファイルとして出力しても良い。
【００５３】
以下に、本実施形態の予定表入力支援装置２００の動作を説明する。始めに、図８を参照し、予定表入力支援装置２００の全体の動作を説明する。図８は、予定表入力支援装置の全体の動作を説明するフローチャートである。
【００５４】
本実施形態の予定表入力支援装置２００は、例えば端末装置３００においてユーザが予定の入力を開始すると、新予定取得部２１１により、入力中の予定情報を取得する（ステップＳ８０１）。続いて予定表入力支援装置２００は、参加者リスト作成部２１２により、予定情報テーブル２２２に格納された予定情報において、過去に実施された会議に参加（同席）していたメンバを特定し、参加者リスト付き中間テーブル２３１を作成してストレージデバイス２２０へ格納する（ステップＳ８０２）。
【００５５】
続いて予定表入力支援装置２００は、グループメンバ取得部２１３により、所属情報テーブル２２１と、参加者リスト付き中間テーブル２３１とを参照し、同一部署に所属するメンバの中から、業務上直接関係のあるメンバを特定する。そして、グループメンバ取得部２１３は、判定用中間テーブル２３２とグループメンバテーブル２３３とを作成し、ストレージデバイス２２０へ格納する（ステップＳ８０３）。
【００５６】
次に、予定表入力支援装置２００は、関連予定取得部２１４の第一関連予定取得部２１７により、参加者リスト付き中間テーブル２３１とグループメンバテーブル２３３とを用いて、新たな予定の開催場所の候補を取得する。また、第一関連予定取得部２１７は、第一関連予定中間テーブル２３４を作成しストレージデバイス２２０へ格納する（ステップＳ８０４）。
【００５７】
続いて予定表入力支援装置２００は、関連予定取得部２１４の第二関連予定取得部２１８により、グループメンバの予定情報の中から、開催場所の候補とその確度を算出するための情報を取得する。また、第二関連予定取得部２１８は、第二関連予定中間テーブル２３５を作成し、ストレージデバイス２２０へ格納する（ステップＳ８０５）。
【００５８】
続いて予定表入力支援装置２００は、関連確度算出部２１５により、ステップＳ８０４、ステップＳ８０５で取得した開催場所の候補のそれぞれについて、確度を算出する。また、関連確度算出部２１５は、開催場所候補テーブル２３６を作成し、ストレージデバイス２２０へ格納する。（ステップＳ８０６）。
【００５９】
続いて予定表入力支援装置２００は、場所候補出力部２１６により、開催場所候補テーブル２３６の情報を確度が高い順に表示させる画面データを生成し、端末装置３００へ出力する（ステップＳ８０７）。
【００６０】
次に、図８に示した各ステップの詳細について説明する。図９は、参加者リスト作成部の処理を説明する第一のフローチャートである。図９に示すフローチャートは、図８のステップＳ８０２の処理の詳細を示す。
【００６１】
本実施形態の参加者リスト作成部２１２は、参加者リスト付き中間テーブル２３１を作成し、予定情報テーブル２２２に格納された全てのレコードについて、各項目の値を参加者リスト付き中間テーブル２３１の同名の項目の値として転記する（ステップＳ９０１）。すなわち、ステップＳ９０１では、予定情報テーブル２２２と参加者リスト付き中間テーブル２３１のレコード数は同数となる。
【００６２】
続いて参加者リスト作成部２１２は、参加者リスト付き中間テーブル２３１のレコード数Ｒ１ｎを取得する（ステップＳ９０２）。次に、参加者リスト作成部２１２は、変数ｓＣｏｕｎｔに1を設定する（ステップＳ９０３）。この変数は、参加者リスト付き中間テーブル２３１のレコードを順に処理するために用いる変数である。
【００６３】
続いて参加者リスト作成部２１２は、変数ｓＣｏｕｎｔの値がＲ１ｎ以下であるか否かを判定する（ステップＳ９０４）。具体的には、参加者リスト作成部２１２は、参加者リスト付き中間テーブル２３１の全てのレコードについて、処理を実行したか否かを判定する。
【００６４】
ステップＳ９０４において、変数ｓＣｏｕｎｔの値がＲ１ｎより大きい場合、すなわち、ステップＳ９０２で取得した全てのレコードについて処理を実行した場合、後述するステップＳ１００１へ進む。
【００６５】
ステップＳ９０４において、変数ｓＣｏｕｎｔの値がＲ１ｎ以下の場合、参加者リスト作成部２１２は、予定情報テーブルの変数ｓＣｏｕｎｔ目のレコードｓ１を取得する（ステップＳ９０５）。すなわち、参加者リスト作成部２１２は、予定情報テーブル２２２において、項目「ナンバー」の値が変数ｓＣｏｕｎｔの値と一致する予定情報を取得する。
【００６６】
続いて参加者リスト作成部２１２は、レコードｓ１の項目「ユーザＩＤ」の値ｕｉｄと、項目「開始時刻」の値ｓｔと、項目「終了時刻」の値ｅｔとを取得する（ステップＳ９０６）。
【００６７】
続いて参加者リスト作成部２１２は、ユーザ位置情報テーブル２２３の中から、項目「ユーザＩＤ」の値がｕｉｄと等しく、かつ項目「時刻」の値がｓｔからｅｔの間のレコードＰを全て取得する（ステップＳ９０７）。ここで取得されたレコード数をＰｎとした。すなわち、参加者リスト作成部２１２は、ステップＳ９０２で取得した予定情報の開始時刻と終了時刻の間に取得された、ユーザＩＤ「ｕｉｄ」のユーザのユーザ位置情報を全て取得する。
【００６８】
続いて参加者リスト作成部２１２は、この後の処理で用いる変数ｐＣｏｕｎｔの値を１に設定し、長さがレコード数Ｐｎと同じ配列Ｐｎを作成する（ステップＳ９０８）。
【００６９】
続いて参加者リスト作成部２１２は、変数ｐＣｏｕｎｔの値がＰｎ以下であるか否かを判定する（ステップＳ９０９）。
【００７０】
ステップＳ９０９において、変数ｐＣｏｕｎｔの値がＰｎより大きい場合、後述するステップＳ９１４へ進む。
【００７１】
ステップＳ９０９において、変数ｐＣｏｕｎｔの値がＰｎ以上の場合、参加者リスト作成部２１２は、処理対象となるｐＣｏｕｎｔ番目のレコードを取得する（ステップＳ９１０）。続いて、参加者リスト作成部２１２は、取得したレコードの項目「位置情報」の値を取得する（ステップＳ９１１）。
【００７２】
次に、参加者リスト作成部２１２は、会議室位置情報テーブル２２４を参照し、項目「Ｐ１」の値、項目「Ｐ２」の値で示される範囲に、取得した位置情報が含まれるレコードを取得する。そして、参加者リスト作成部２１２は、取得したレコードの項目「場所」の値を、配列Ｐｎに設定する（ステップＳ９１２）。
【００７３】
つまり、配列Ｐｎは、時刻ｓｔから時刻ｅｔの間にユーザＩＤがｕｉｄのユーザの端末装置３００があった場所の情報を含む。本実施形態では、ユーザの端末装置３００があった場所を、ユーザがいた場所としている。
【００７４】
続いて参加者リスト作成部２１２は、変数ｐＣｏｕｎｔの値に１を加算し（ステップＳ９１３）、ステップＳ９０９へ戻る。
【００７５】
ステップＳ９０９において、変数ｐＣｏｕｎｔの値がＰｎより大きい場合、参加者リスト作成部２１２は、配列ｉ（１≦ｉ≦Ｐｎ）の中で最も多い値ｖを取得し、その割合ｒａｔｅを取得する（ステップＳ９１４）。つまり、参加者リスト作成部２１２は、時刻ｓｔから時刻ｅｔの間に取得された場所のうち、最も多く取得された場所を値ｖとする。そして、参加者リスト作成部２１２は、時刻ｓｔから時刻ｅｔの間に取得した全ての場所に対する値ｖの割合ｒａｔｅを取得する。
【００７６】
続いて、参加者リスト作成部２１２は、割合ｒａｔｅが９０％以上であるか否かを判定する（ステップＳ９１５）。ここでは、参加者リスト作成部２１２は、ユーザＩＤ「ｕｉｄ」のユーザが、時刻ｓｔから時刻ｅｔの間に取得したユーザ位置情報から、ユーザが１つの会議室にいたか否かを判定している。本実施形態では、時刻ｓｔから時刻ｅｔの間に取得したユーザ位置情報の９０％がある会議室内を示す場合には、このユーザは、時刻ｓｔから時刻ｅｔの間にこの会議室にいたと判定する。
【００７７】
ステップＳ９１５において、９０％以上でない場合、参加者リスト作成部２１２は、後述するステップＳ９１８へ進む。
【００７８】
ステップＳ９１５において、９０％以上である場合、参加者リスト作成部２１２は、参加者リスト付き中間テーブル２３１の変数ｓＣｏｕｎｔ目のレコードの項目「開催場所」の値に、値ｖを設定する（ステップＳ９１６）。
【００７９】
続いて参加者リスト作成部２１２は、変数ｓＣｏｕｎｔの値に１を加算し（ステップＳ９１７）、ステップＳ９０４へ戻る。
【００８０】
次に、図１０を参照して、ステップＳ９０４において、ステップＳ９０２で取得した全てのレコードについて処理を実行した後の処理について説明する。図１０は、参加者リスト作成部の処理を説明する第二のフローチャートである。図１０に示すフローチャートは、図９に続いて、図８のステップＳ８０２の処理の詳細を示す。
【００８１】
図１０の処理は、後述する参加者リスト付き中間テーブル２３１の項目「参加者リスト」の値を設定する処理である。項目「参加者リスト」は、予定情報テーブル２２２が有していない項目である。
【００８２】
図１０のステップＳ１００１とステップＳ１００２は、図９のステップＳ９０３とステップＳ９０４の処理と同様であるから、説明を省略する。
【００８３】
ステップＳ１００２において、変数ｓＣｏｕｎｔの値がＲ１ｎより大きい場合、すなわち、ステップＳ９０２で取得した全てのレコードについて処理を実行した場合、参加者リスト作成部２１２は処理を終了する。
【００８４】
ステップＳ１００２において、変数ｓＣｏｕｎｔの値がＲ１ｎ以下の場合、参加者リスト作成部２１２は、参加者リスト付き中間テーブル２３１のｓＣｏｕｎｔ目のレコードｓ２を取得する（ステップＳ１００３）。
【００８５】
続いて、参加者リスト作成部２１２は、取得したレコードｓ２の項目「参加者リスト」の値が未設定であるか否かを判定する（ステップＳ１００４）。ステップＳ１００４において、未設定でない場合、すなわちレコードｓ２の項目「参加者リスト」の値が設定されている場合、参加者リスト作成部２１２は後述するステップＳ１００８へ進む。
【００８６】
ステップＳ１００４において、未設定である場合、参加者リスト作成部２１２は、レコードｓ２の項目「開催日」、「開始時刻」、「終了時刻」、「開催場所」、「会議室」の各値を取得する。そして、参加者リスト作成部２１２は、参加者リスト付き中間テーブル２３１から、取得した各値が一致する全てのレコードを取得し、それをＲＬｉｓｔとする（ステップＳ１００５）。
【００８７】
続いて、参加者リスト作成部２１２は、リストＲＬｉｓｔに含まれる各レコードの項目「ユーザＩＤ」の値を取得し、この値の集合Ｕを作成する（ステップＳ１００６）。次に、参加者リスト作成部２１２は、リストＲＬｉｓｔに含まれる各レコードの項目「参加者リスト」の値に、集合Ｕから各レコードに含まれるユーザＩＤを除いたものを設定する（ステップＳ１００７）。
【００８８】
続いて、参加者リスト作成部２１２は、変数ｓＣｏｕｎｔの値に１を加算し、ステップＳ１００２に戻る。
【００８９】
本実施形態の予定表入力支援装置２００は、以上の処理により、参加者リスト付き中間テーブル２３１を作成し、ストレージデバイス２２０に格納する。
【００９０】
以下に図１１を参照して、参加者リスト作成部２１２の処理を具体的に説明する。図１１は、参加者リスト付き中間テーブルの一例を示す図である。
【００９１】
まず、参加者リスト作成部２１２は、参加者リスト付き中間テーブル２３１を作成し、予定情報テーブル２２２の項目の値を転記する。
【００９２】
参加者リスト付き中間テーブル２３１は、情報の項目として、ナンバー、ユーザＩＤ、予定ＩＤ、予定名、開催日、開始時刻、終了時刻、会議室、参加者リストを有する。これらの項目は、項目「参加者リスト」以外は予定情報テーブル２２２の有する項目と同様である。
【００９３】
したがって、参加者リスト作成部２１２は、参加者リスト付き中間テーブル２３１に、予定情報テーブル２２２に格納された全てのレコードを転記する。参加者リスト付き中間テーブル２３１に転記されるレコード数は、９つである。したがって、Ｒ１ｎ＝９となる。
【００９４】
次に、参加者リスト作成部２１２は、参加者リスト付き中間テーブル２３１の項目「ナンバー」の値が１のレコードから、ユーザＩＤ「Ｋ」、開始時刻「１０：００」、終了時刻「１２：００」を取得する。この開始時刻から終了時刻までのユーザＩＤ「Ｋ」のユーザ位置情報は、ユーザ位置情報テーブル２２３の項目「ナンバー」の値が１から９までのレコードである。したがって、参加者リスト作成部２１２は、ユーザ位置情報テーブル２２３から、ナンバー１から９のユーザ位置情報を取得する。
【００９５】
そして、参加者リスト作成部２１２は、会議室位置情報テーブル２２４から、ナンバー１のユーザ位置情報に含まれる位置情報が含まれる項目「開催場所」の値を取得する。ここでは、開催場所として、「川崎ＡＢＣビル」が取得される。参加者リスト作成部２１２は、ナンバー９まで同様に、項目「開催場所」の値を取得すると、最も多く取得された開催場所の値は、「川崎ＡＢＣビル」となる。９つのレコードに対して、「川崎ＡＢＣビル」が９回取得されれば、割合ｒａｔｅは９０％以上となる。ここでは、「川崎ＡＢＣビル」が９回取得されたものとする。
【００９６】
したがって、参加者リスト付き中間テーブル２３１の項目「ナンバー」の値が１と対応する項目「開催場所」の値には、「川崎ＡＢＣビル」が設定される。
【００９７】
次に、参加者リスト作成部２１２は、参加者リスト付き中間テーブル２３１の項目「参加者リスト」の値が設定されていないレコードに対し、参加者リストを設定する。ここでは、ナンバー「１」と対応する参加者リストが設定されていない場合を説明する。
【００９８】
このとき、参加者リスト作成部２１２は、参加者リスト付き中間テーブル２３１から、項目「開催日」、「開始時刻」、「終了時刻」、「開催場所」、「会議室」の値が一致する全てレコードとして、ナンバー「１」、「５」のレコードを取得する。そして、参加者リスト作成部２１２は、ナンバー「１」、「５」のレコードに含まれるユーザＩＤ「Ｋ」、「Ｍ」を要素とする集合Ｕを作成する。
【００９９】
さらに、参加者リスト作成部２１２は、集合Ｕの要素から、ナンバー「１」のレコードに含まれるユーザＩＤを省いたユーザＩＤをナンバー「１」のレコードの参加者リストの値に設定する。すなわち、参加者リスト付き中間テーブル２３１のナンバー「１」の参加者リストの値は、「Ｍ」となり、参加者リスト付き中間テーブル２３１のナンバー「５」の参加者リストの値は、「Ｋ」となる。
【０１００】
次に、図１２を参照し、グループメンバ取得部２１３の処理について説明する。図１２は、グループメンバ取得部の処理を説明するフローチャートである。図１２に示すフローチャートは、図８のステップＳ８０３の処理の詳細を示す。
【０１０１】
本実施形態のグループメンバ取得部２１３は、新予定取得手段で取得したユーザＩＤと、所属情報テーブル２２１と、参加者リスト付き中間テーブル２３１を用いる。
【０１０２】
本実施形態のグループメンバ取得部２１３は、新予定取得部２１１を用いて取得した予定を入力中のユーザのユーザＩＤを変数Ｘｕに設定する（ステップＳ１２０１）。
【０１０３】
続いてグループメンバ取得部２１３は、所属情報テーブル２２１から、項目「ユーザＩＤ」の値がＸｕのレコードを抽出し、対応する項目「所属部署ＩＤ」の値Ｓを取得する（ステップＳ１２０２）。
【０１０４】
続いて、グループメンバ取得部２１３は、所属情報テーブル２２１から、項目「所属部署ＩＤ」の値がＳのレコードを抽出し、抽出されたレコードに含まれるユーザＩＤを判定用中間テーブル２３２の項目「ユーザＩＤ」の値に設定する。尚、ここでは、ユーザＩＤがＸｕのレコードは除く。また、抽出されたレコードの数をＲ２ｎに設定する（ステップＳ１２０３）。
【０１０５】
続いてグループメンバ取得部２１３は、参加者リスト付き中間テーブル２３１から、項目「ユーザＩＤ」の値がＸｕのレコードを取得し、取得したレコードの数をＸｕｕに設定する（ステップＳ１２０４）。
【０１０６】
続いて、グループメンバ取得部２１３は、変数ＳｎＣｏｕｎｔの値を１に設定する（ステップＳ１２０５）。続いて、グループメンバ取得部２１３は、変数ＳｎＣｏｕｎｔの値がＲ２ｎより大きいか否かを判定する（ステップＳ１２０６）。ステップＳ１２０６において、変数ＳｎＣｏｕｎｔの値が、Ｒ２ｎより大きい場合、グループメンバ取得部２１３は、後述するステップＳ１２１２へ進む。
【０１０７】
ステップＳ１２０６において、変数ＳｎＣｏｕｎｔの値がＲ２ｎ以下である場合、グループメンバ取得部２１３が、判定用中間テーブル２３２の作成中であることを示す。ステップＳ１２０６において、変数ＳｎＣｏｕｎｔの値が、Ｒ２ｎ以下である場合、グループメンバ取得部２１３は、判定用中間テーブル２３２のＳｎＣｏｕｎｔ番目のレコードｒ２を取得する（ステップＳ１２０７）。
【０１０８】
続いてグループメンバ取得部２１３は、レコードｒ２の項目「ユーザＩＤ」の値Ｍを取得する（ステップＳ１２０８）。次に、グループメンバ取得部２１３は、ステップＳ１２０４で参加者リスト付き中間テーブル２３１から取得したレコードのうち、項目「参加者リスト」の値にＭを含むレコードの数Ｒ３ｎを取得する（ステップＳ１２０９）。
【０１０９】
続いて、グループメンバ取得部２１３は、Ｒ３ｎをレコードｒ２の項目「同席回数」の値に設定し、Ｒ３ｎ／Ｘｕｕの値を項目「同席割合」の値に設定する（ステップＳ１２１０）。
【０１１０】
続いて、グループメンバ取得部２１３は、変数ＳｎＣｏｕｎｔの値に１を加算し（ステップＳ１２１１）、ステップＳ１２０６へ戻る。
【０１１１】
ステップＳ１２０６において、変数ＳｎＣｏｕｎｔの値がＲ２ｎより大きい場合、グループメンバ取得部２１３は、判定用中間テーブル２３２の項目「同席割合」の値が閾値以上のレコードのみを抽出し、これをグループメンバテーブル２３３とし（ステップＳ１２１２）、処理を終了する。本実施形態では、ステップＳ１２１２の処理を実行する際には、判定用中間テーブル２３２の作成が完了した状態である。また、本実施形態の閾値は、予め設定された値である。
【０１１２】
以下に、図１３を参照し、グループメンバ取得部２１３の処理を具体的に説明する。図１３は、判定用中間テーブルとグループメンバテーブルの例を示す図である。図１３（Ａ）は、判定用中間テーブル２３２の一例を示し、図１３（Ｂ）はグループメンバテーブル２３３の一例を示す。
【０１１３】
図１３（Ａ）に示す判定用中間テーブル２３２は、情報の項目として、ユーザＩＤ、同席回数、同席割合を有する。項目「同席回数」の値は、予定情報テーブル２２２において、予定を入力中のユーザと同じ部署のユーザが、予定を入力中のユーザと過去の予定（会議等）に同席した回数を示す。項目「同席割合」の値は、予定を入力中のユーザと同じ部署のユーザが、予定を入力中のユーザの予定に同席した割合を示す。
【０１１４】
図１３（Ａ）では、予定を入力中のユーザをユーザＩＤ「Ｋ」のユーザとした例を示している。ユーザＩＤ「Ｋ」と同じ部署のユーザは、ユーザＩＤ「Ｙ」、ユーザＩＤ「Ｍ」、ユーザＩＤ「Ｔ」のユーザである。
【０１１５】
本実施形態では、同席割合の閾値を０．５と設定した。したがって、同席割合が０．５未満であるユーザＩＤ「Ｔ」のユーザは、図１３（Ｂ）に示すグループメンバテーブル２３３には含まれない。これは、ユーザＩＤ「Ｔ」のユーザは、同じ部署にはいるが、異なるグループであると判断されたことを示す。
【０１１６】
次に、図１４乃至図１８を参照し、関連予定取得部２１４の処理について説明する。図１４は、第一関連予定取得部の処理を説明するフローチャートである。図１４に示すフローチャートは、図８のステップＳ８０４の処理の詳細を示す。
【０１１７】
本実施形態の第一関連予定取得部２１７は、変数ｇＣｏｕｎｔの値を１に設定する（ステップＳ１４０１）。この変数ｇＣｏｕｎｔは、グループメンバテーブル２３３のレコードを順に処理するために用いる。
【０１１８】
続いて第一関連予定取得部２１７は、グループメンバテーブル２３３の総レコード数をＲ４ｎに設定する（ステップＳ１４０２）。続いて第一関連予定取得部２１７は、変数ｇＣｏｕｎｔの値が、Ｒ４ｎ以下であるか否かを判定する（ステップＳ１４０３）。
【０１１９】
ステップＳ１４０３において、Ｒ４ｎ以下でない場合、すなわち変数ｇＣｏｕｎｔの値がＲ４ｎより大きい場合、第一関連予定取得部２１７は、後述するステップＳ１４０７へ進む。
【０１２０】
ステップＳ１４０３において、Ｒ４ｎ以下である場合、第一関連予定取得部２１７は、グループメンバテーブル２３３のｇＣｏｕｎｔ番目のレコードの項目「ユーザＩＤ」の値を変数Ｍに設定する（ステップＳ１４０４）。
【０１２１】
続いて第一関連予定取得部２１７は、予定情報中間テーブル２３１から項目「ユーザＩＤ」の値がＭのレコードを全て取得し、第二関連予定中間テーブル２３５に追加する（ステップＳ１４０５）。ここでは、第二関連予定中間テーブル２３５の有する項目であるナンバー、ユーザＩＤ、予定名、開催場所の値が第二関連予定中間テーブル２３５に追加される。
【０１２２】
次に第一関連予定取得部２１７は、変数ｇＣｏｕｎｔの値に１を加算し（ステップＳ１４０６）、ステップＳ１４０３へ戻る。
【０１２３】
ステップＳ１４０３において、すなわち変数ｇＣｏｕｎｔの値がＲ４ｎより大きい場合、第一関連予定取得部２１７は、新予定取得部２１１で取得した新たな予定名ｎｅｗＳＮを取得する（ステップＳ１４０７）。続いて第一関連予定取得部２１７は、第二関連予定中間テーブル２３５の中から、予定名がｎｅｗＳＮと一致するレコードを抽出して、それを第一関連予定中間テーブル２３４とし（ステップＳ１４０８）、処理を終了する。
【０１２４】
図１５は、第二関連予定取得部の処理を説明するフローチャートである。図１５に示すフローチャートは、図８のステップＳ８０５の処理の詳細を示す。
【０１２５】
本実施形態の第二関連予定取得部２１８は、予定を入力中のユーザのユーザＩＤを変数Ｘｕに設定する（ステップＳ１５０１）。次に、第二関連予定取得部２１８は、キーワード抽出部２１９を用いて、新たな予定名からキーワードリストＫＬｉｓｔを作成し、そのリスト長をｋＬに設定する（ステップＳ１５０２）。
【０１２６】
続いて第二関連予定取得部２１８は、変数ｔＣｏｕｎｔの値に１を設定する（ステップＳ１５０３）。変数ｔＣｏｕｎｔは、第二関連予定中間テーブル２３５内のレコードを順に処理するために用いる。
【０１２７】
次に第二関連予定取得部２１８は、第二関連予定中間テーブル２３５の総レコード数をＲ５ｎに設定する（ステップＳ１５０４）。続いて第二関連予定取得部２１８は、変数ｔＣｏｕｎｔの値がＲ５ｎ以下であるか否かを判定する（ステップＳ１５０５）。
【０１２８】
ステップＳ１５０５において、Ｒ５ｎ以下でない場合、すなわち変数ｔＣｏｕｎｔの値がＲ５ｎより大きい場合、第二関連予定取得部２１８は、処理を終了する。
【０１２９】
ステップＳ１５０５において、Ｒ５ｎ以下である場合、第二関連予定取得部２１８は、第二関連予定中間テーブル２３５のｔＣｏｕｎｔ番目のレコードｒ３を取得し、項目「予定名」の値をＮ１に設定する（ステップＳ１５０６）。
【０１３０】
次に、第二関連予定取得部２１８は、キーワード抽出部２１９によりＮ１からキーワードリストを作成し、第二関連予定中間テーブル２３５におけるレコードｒ３の項目「メンバキーワードリスト」の値ｍＫＬｉｓｔに設定する（ステップＳ１５０７）。
【０１３１】
続いて第二関連予定取得部２１８は、キーワードリストＫＬｉｓｔと、項目「メンバキーワードリスト」の値ｍＫＬｉｓｔにおいて共通するキーワードを、第二関連予定中間テーブル２３５におけるレコードｒ３の項目「共通キーワードリスト」の値に設定する（ステップＳ１５０８）。
【０１３２】
続いて第二関連予定取得部２１８は、変数ｔＣｏｕｎｔの値に１を加算し（ステップＳ１５０９）、ステップＳ１５０５へ戻る。
【０１３３】
以下に、第一関連予定中間テーブル２３４と、第二関連予定中間テーブル２３５について説明する。図１６は、第一関連予定中間テーブルと第二関連予定中間テーブルの一例を示す図である。図１６（Ａ）は、第一関連予定中間テーブル２３４の一例を示しており、図１６（Ｂ）は、第二関連予定中間テーブル２３５の一例を示している。
【０１３４】
第一関連予定中間テーブル２３４は、第二関連予定中間テーブル２３５から抽出されたものである。第一関連予定中間テーブル２３４は、情報の項目とし、ナンバー、ユーザＩＤ、予定名、開催場所を有する。本実施形態の第一関連予定中間テーブル２３４は、予定情報テーブル２２２の項目「予定名」の値が、新たに入力された予定名と完全一致するレコードから作成されている。
【０１３５】
第二関連予定中間テーブル２３５は、情報の項目とし、ナンバー、ユーザＩＤ、予定名、開催場所、メンバキーワードリスト、共通キーワードリストを有する。本実施形態の第二関連予定中間テーブル２３５は、グループメンバテーブル２３３に含まれるユーザの予定を示すレコードを元に作成される。
【０１３６】
以下に、第一関連予定取得部２１７と第二関連予定取得部２１８の処理を具体的に説明する。
【０１３７】
第一関連予定取得部２１７は、グループメンバテーブル２３３において１番目のユーザＩＤ「Ｙ」をＭとし、予定情報中間テーブル２３１からユーザＩＤ「Ｙ」のレコードを全て取得し、第二関連予定中間テーブル２３５に追加する。図１６（Ｂ）の例では、第二関連予定中間テーブル２３５において、ナンバー１〜４のレコードが、ユーザＩＤ「Ｙ」のレコードである。続いて第一関連予定取得部２１７は、ユーザＩＤ「Ｍ」についても同様の処理を行う。
【０１３８】
次に第一関連予定取得部２１７は、入力中の予定名を取得する。ここでは、入力中の予定名は、「共通技術部への報告」とした。
【０１３９】
第二関連予定中間テーブル２３５において、予定名が「共通技術部への報告」であるレコードは、ナンバー１のレコードのみである。よって、第一関連予定取得部２１７は、第二関連予定中間テーブル２３５のナンバー１のレコードのうち、ユーザＩＤ、予定名、開催場所の項目の値を、第一関連予定中間テーブル２３４に設定する。
【０１４０】
次に第二関連予定取得部２１８は、第二関連予定中間テーブル２３５の項目「メンバキーワードリスト」、「共通キーワードリスト」の値を設定する。
【０１４１】
第二関連予定取得部２１８は、ここで、予定を入力中のユーザのユーザＩＤは、「Ｋ」であるから、Ｋを変数Ｘｕｕに設定する。次にも第二関連予定取得部２１８は、予定名「共通技術部への報告」からキーワードリストＫＬｉｓｔを作成する。キーワードリストを作成するキーワード抽出部２１９の処理の詳細は後述する。
【０１４２】
次に、第二関連予定取得部２１８は、第二関連予定中間テーブル２３５の１番目のレコードの予定名からキーワードを作成し、作成したリストをレコード３のメンバキーワードリストの値とする。
【０１４３】
図１６（Ｂ）の例では、ナンバー１の予定名「共通技術部への報告」から、項目「メンバキーワード」の値に「共通、技術、報告」が設定される。
【０１４４】
第二関連予定取得部２１８は、この処理を第二関連予定中間テーブル２３５のレコード数分繰り返し、各レコードの項目「メンバキーワードリスト」、「共通キーワードリスト」の値を設定する。
【０１４５】
以上の処理により、第一関連予定中間テーブル２３４、第二関連予定中間テーブル２３５が作成される。
【０１４６】
次に、キーワード抽出部２１９の処理について説明する。図１７は、キーワード抽出部の処理を説明するフローチャートである。図１７に示す処理は、図１５のステップＳ１５０２、ステップＳ１５０７において、キーワードリストを作成する際の処理である。本実施形態のキーワード抽出部２１９は、予定名に対して形態素解析を行った結果から、予定として一般に使われる語を除外し、個々の予定を特徴づけるキーワードを抽出する。
【０１４７】
本実施形態のキーワード抽出部２１９は、キーワード抽出対象の文字列ｓを取得する（ステップＳ１７０１）。ここで、文字列ｓは、新たに入力された予定名か、又は第二関連予定中間テーブル２３５のレコードｒ３に含まれる予定名かの何れかである。
【０１４８】
次に、キーワード抽出部２１９は、文字列ｓを形態素解析し、語（形態素）のリストを取得する（ステップＳ１７０２）。続いてキーワード抽出部２１９は、取得したリストから、品詞が助詞である形態素を除外する（ステップＳ１７０３）。
【０１４９】
次に、キーワード抽出部２１９は、除外用語辞書を参照し、取得したリストからそこに含まれる語を除外し（ステップＳ１７０４）、処理を終了する。
【０１５０】
図１８は、キーワード抽出部の処理の具体例を説明する図である。図１８では、予定名「共通技術部への報告」からキーワードを抽出する場合を示している。
【０１５１】
本実施形態の予定表入力支援装置２００には、予め除外用語辞書１８１が格納されているものとしても良い。また、除外用語辞書１８１は、予定表入力支援装置２００と通信可能な外部装置に格納されていても良い。本実施形態の除外用語辞書１８１には、予定として一般に使われる語として、「部」が格納されているものとした。
【０１５２】
キーワード抽出部２１９は、「共通技術部への報告」の形態素解析を行い、「共通」、「技術」、「部」、「へ」、「の」、「報告」という形態素のリストを得る。ここで、キーワード抽出部２１９は、助詞である「へ」、「の」をリストから除外する。
【０１５３】
続いてキーワード抽出部２１９は、リストから除外用語辞書１８１を参照し、除外対象である形態素「部」をリストから除外する。
【０１５４】
その結果、予定名「共通技術部への報告」から得られるキーワードリストは、「共通」、「技術」、「報告」となる。
【０１５５】
次に、図１９、図２０を参照し、関連確度算出部２１５の処理について説明する。関連確度算出部２１５は、関連予定取得部２１４で取得した開催場所に対し、その確からしさ（確度）を算出する。本実施形態では、第一関連予定中間テーブル２３４、第二関連予定中間テーブル２３５のそれぞれの項目「開催場所」の値に設定されている開催場所の確度を算出する。
【０１５６】
図１９は、関連確度算出部の処理を説明する第一のフローチャートである。図１９に示すフローチャートは、図８のステップＳ８０６の処理の詳細を示している。図１９では、第一関連予定中間テーブル２３４内のレコードを用いて、開催場所候補テーブル２３６の確度を設定する処理を示している。
【０１５７】
本実施形態の開催場所候補テーブル２３６は、情報の項目として、ナンバーと、開催場所と、確度を有している。開催場所候補テーブル２３６の詳細は後述する。
【０１５８】
本実施形態の関連確度算出部２１５は、開催場所候補テーブル２３６のレコードを全て削除する（ステップＳ１９０１）。このステップでは、関連確度算出部２１５は、開催場所候補テーブル２３６のクリアしている。
【０１５９】
続いて関連確度算出部２１５は、変数ｔｂＣｏｕｎｔの値に１を設定する（ステップＳ１９０２）。変数ｔｂＣｏｕｎｔは、第一関連予定中間テーブル２３４内のレコードを順に処理するために用いる。
【０１６０】
関連確度算出部２１５は、第一関連予定中間テーブル２３４の総レコード数をＲ６ｎに設定する（ステップＳ１９０３）。続いて関連確度算出部２１５は、変数ｔｂＣｏｕｎｔの値がＲ６ｎ以下であるか否かを判定する（ステップＳ１９０４）。
【０１６１】
ステップＳ１９０４において、Ｒ６ｎ以下でない場合、関連確度算出部２１５は、後述する図２０のステップＳ２００１へ進む。
【０１６２】
ステップＳ１９０４において、Ｒ６ｎ以下である場合、関連確度算出部２１５は、第一関連予定中間テーブル２３４のｔｂＣｏｕｎｔ番目のレコードの項目「開催場所」の値Ｐを取得する（ステップＳ１９０５）。次に、関連確度算出部２１５は、開催場所候補テーブル２３６から、項目「開催場所」の値がＰと等しいレコードｒを抽出する（ステップＳ１９０６）。ここで、関連確度算出部２１５は、項目「開催場所」の値がＰと等しいレコードがない場合は、ｒにｎｕｌｌを設定する。
【０１６３】
続いて、関連確度算出部２１５は、ｒがｎｕｌｌであるか否かを判定する（ステップＳ１９０７）。
【０１６４】
ステップＳ１９０７においてｒがｎｕｌｌである場合、関連確度算出部２１５は、開催場所候補テーブル２３６に１レコードを追加する。そして、関連確度算出部２１５は、項目「開催場所」の値をＰに設定し、確度にＷ１を設定する（ステップＳ１９０８）。本実施形態において、Ｗ１は予め設定された値であり、正の数値であればどのような値であっても良い。
【０１６５】
ステップＳ１９０７においてｒがｎｕｌｌでない場合、関連確度算出部２１５は、レコードｒの項目「確度」の値にＷ１を加算する（ステップＳ１９０９）。
【０１６６】
ステップＳ１９０８、１９０９に続いて、関連確度算出部２１５は、変数ｔｂＣｏｕｎｔの値に１を加算し（ステップＳ１９１０）、ステップＳ１９０４へ戻る。
【０１６７】
図２０は、関連確度算出部の処理を説明する第二のフローチャートである。図２０では、第二関連予定中間テーブル２３５内のレコードを用いて、開催場所候補テーブル２３６の確度を設定する処理を示している。
【０１６８】
関連確度算出部２１５は、変数ｔｂＣｏｕｎｔの値がＲ６ｎ以下でない場合、変数ｔｂＣｏｕｎｔの値に再度１を設定する（ステップＳ２００１）。続いて関連確度算出部２１５は、第二関連予定中間テーブル２３５の総レコード数をＲ７ｎに設定する（ステップＳ２００２）。
【０１６９】
続いて、関連確度算出部２１５は、変数ｔｂＣｏｕｎｔの値がＲ７ｎ以下であるか否かを判定する（ステップＳ２００３）。
【０１７０】
ステップＳ２００３において、Ｒ６ｎ以下でない場合、関連確度算出部２１５は、処理を終了する。
【０１７１】
ステップＳ２００３において、Ｒ７ｎ以下である場合、関連確度算出部２１５は、第二関連予定中間テーブル２３５のｔｂＣｏｕｎｔ番目のレコードｒ２の項目「開催場所」の値Ｐを取得する（ステップＳ２００４）。次に関連確度算出部２１５は、開催場所候補テーブル２３６から、項目「開催場所」の値がＰと等しいレコードｒを抽出する（ステップＳ２００５）。
【０１７２】
続いて関連確度算出部２１５は、レコードｒ２の項目「共通キーワードリスト」の値ｋＬｉｓｔを取得し、ｋＬｉｓｔ中に含まれる要素数をｎとする。さらに、関連確度算出部２１５は、グループメンバテーブル２３３から、レコードｒ２の項目「ユーザＩＤ」の値と項目「ユーザＩＤ」の値が一致するレコードを抽出し、抽出したレコードの項目「同席割合」の値を変数Ｗ２５に設定する。そして、関連確度算出部２１５は、以下の式１により、確度Ｗ２を算出する（ステップＳ２００６）
確度Ｗ２＝（ｎ／ｋＬ）×Ｗ２０×Ｗ２５        （式１）
尚、Ｗ２０は、予め設定された値であり、Ｗ１より小さい値であれば良い。また、リスト長ｋＬは、図１５の１５０２で取得した、新たに入力された予定名から抽出したキーワードリストの長さである。
【０１７３】
次に、関連確度算出部２１５は、ｒがｎｕｌｌであるか否かを判定する（ステップＳ２００７）。
【０１７４】
ステップＳ２００７においてｒがｎｕｌｌである場合、関連確度算出部２１５は、開催場所候補テーブル２３６に１レコードを追加し、そのレコードの項目「開催場所」の値をＰに設定し、項目「確度」の値にＷ２を設定する（ステップＳ２００８）。
【０１７５】
ステップＳ２００７において、ｒがｎｕｌｌでない場合、関連確度算出部２１５は、レコードｒ２の項目「確度」の値にＷ２を加算する（ステップＳ２００９）。
【０１７６】
ステップＳ２００８、ステップＳ２００９に続いて、関連確度算出部２１５は、変数ｔｂＣｏｕｎｔの値に１を加算し（ステップＳ２０１０）、ステップＳ２００３へ戻る。
【０１７７】
以下に、図２１を参照して開催場所候補テーブル２３６について説明する。図２１は、開催場所候補テーブルの一例を示す図である。
【０１７８】
図２１では、Ｗ１＝１００、Ｗ２０＝５０として、確度が算出された例を示している。
【０１７９】
図２１において、開催場所「川崎ＡＢＣビル」は、図１６（Ａ）に示す第一関連予定中間テーブル２３４のナンバー１のレコード、図１６（Ｂ）に示す第二関連予定中間テーブル２３５のナンバー１とナンバー５の、３つレコードに含まれている。
【０１８０】
そこで、開催場所「川崎ＡＢＣビル」の開催場所としての確度は次の式で算出される。
【０１８１】
開催場所「川崎ＡＢＣビル」の確度＝１００＋３／３×５０×１．０
＋３／３×５０×０．５=１７５
この式の右辺の第一項の値は、図１６（Ａ）に示す第一関連予定中間テーブル２３４を利用して取得した値である。
【０１８２】
第一関連予定中間テーブル２３４では、項目「開催場所」の値が「川崎ＡＢＣビル」であるレコードが１つある。本実施形態では、Ｗ１＝１００であるから、Ｗ１×１＝１００×１＝１００となる。
【０１８３】
右辺の第二項以降は、図１６（Ｂ）に示す第二関連予定中間テーブル２３５を利用して取得した値である。第二関連予定中間テーブル２３５には、項目「開催場所」の値が「川崎ＡＢＣビル」であるレコードが、ナンバー１とナンバー５の２つある。また、新たな予定名「共通技術部への報告」から抽出されたキーワードリストは「共通」、「技術」、「報告」である。
【０１８４】
ナンバー１のレコードの場合、予定名から抽出されたキーワードリストは、長さ３の「共通」、「技術」、「報告」である。また、新たな予定名から抽出したキーワードも同じく長さ３の「共通」、「技術」、「報告」である。よって、両者の積集合である共通キーワードリストは、長さ３の「共通」、「技術」、「報告」となっている。
【０１８５】
また、ナンバー１の項目「ユーザＩＤ」の値「Ｙ」の同席割合は、グループメンバテーブル２３３から１．０である。よって、３／３×５０×１．０という式が得られる。
【０１８６】
ナンバー５のレコードの場合、共通キーワードリストの長さは３だが、ユーザＩＤ「Ｍ」の同席割合が０．５なので、３／３×５０×０．５という式が得られる。
【０１８７】
他の開催場所の確度も同様に算出すると、以下のようになる。
【０１８８】
開催場所「新橋本社」の確度＝０＋１／３×５０×１．０
＋１／３×５０×０．５＝４１．８
開催場所「川崎ＸＹＺビル」の確度＝０＋０／３×５０×１．０＝０
次に、図２２及び図２３を参照し、本実施形態の場所候補出力部２１６の処理について説明する。以下に説明する場所候補出力部２１６の処理は、図８のステップＳ８０７の処理の詳細を示す。
【０１８９】
本実施形態の場所候補出力部２１６は、開催場所候補テーブル２３６が作成されると、開催場所候補テーブル２３６の項目「開催場所」を、確度が高い順に並べて表示させる画面の画面データを生成し、端末装置３００へ出力する。
【０１９０】
図２２は、端末装置に表示される予定表の入力画面の例を示す第一の図である。図２２に示す予定の入力画面１１は、例えば端末装置３００において予定の入力要求がなされ、予定表入力支援装置２００が端末装置３００から入力要求を受け付けた際に、端末装置３００に表示される画面である。
【０１９１】
入力画面１１の予定表入力欄１２には、予定名入力欄１３と、開催場所の入力欄１４とが含まれる。開催場所の入力欄１４には、開催場所の候補を表示させるボタン１５が含まれる。
【０１９２】
本実施形態では、予定名入力欄１３において予定名が入力されると、予定表入力支援処理部２１０Ａの処理が実行される。そして、入力画面１１において、ボタン１５が操作されると、予定表入力支援処理部２１０Ａの処理結果として、開催場所の候補の一覧１６が、確度の高い順に表示される。
【０１９３】
図２３は、端末装置に表示される予定表の入力画面の例を示す第二の図である。図２３では、開催場所の入力欄１４に、開催場所の候補の一覧１６において一番上に表示される、最も確度の高い開催場所の候補を予め表示させている。
【０１９４】
図２３に示す例によれば、ユーザが実際の開催場所を選択する手間を省くことができる可能性が高くなる。
【０１９５】
以上のように、本実施形態では、予定表に予定名を入力しただけで、開催場所の候補を確度が高い順に表示させることができ、ユーザによる開催場所の設定作業を簡素化できる。
【０１９６】
まとめると、本実施形態の予定表入力支援システム１００では、ユーザを識別するための識別情報及び予定の名称の入力を受け付けると、予定情報と、ユーザ位置情報と、会議室位置情報から、過去のユーザの予定に同席した他のユーザを抽出する。そして、抽出した他のユーザのうち、所属が一致しており、且つユーザの予定に同席している割合が高い他のユーザを特定し、特定された他のユーザを、予定を入力中のユーザと関連の高い（同じグループの）ユーザとする。
【０１９７】
次に、予定表入力支援システム１００は、特定された他のユーザの予定情報から、予定名が、入力中の予定名と一致するレコードに含まれる項目「開催場所」のそれぞれについて、第一の確度を算出する。また、予定表入力支援システム１００は、特定された他のユーザの予定情報から、入力中の予定名から得た入力中キーワードリストの数と、他のユーザの予定情報に含まれる予定名から得たキーワードと、入力中キーワードリストとにおいて共通する共通キーワードの数と、他のユーザの同席割合とに応じた第二の確度を算出する。そして、予定表入力支援システム１００は、第一の確度と第二の確度と合計した値を各開催場所の確度とする。
【０１９８】
例えば、予定を入力中のユーザや、グループのメンバが過去にＭ箇所の場所で会議を行った場合、すなわち開催場所がＭ箇所ある場合について説明する。
【０１９９】
ユーザが予定を入力する際に、ユーザは、これらＭ箇所の候補地の中から開催場所を選択する。このとき、実際の開催場所が候補の後ろにあるほど、ユーザの選択作業の負荷が高いと考えられる。
【０２００】
そこで、実際の開催場所が候補の一覧の１番目にあるときの作業負荷を１、ｍ番目にあめときの作業負荷をｍと仮定する。この場合、作業負荷の期待値は以下の式で算出できる。尚、期待値とは、確率変数の実現値を確率の重みで平均した値である。
【０２０１】
選択作業負荷の期待値＝１×Ｌ１＋２×Ｌ２＋３×Ｌ３＋４×Ｌ４＋５×Ｌ５
Ｌｍ（１≦ｍ≦５）：ｍ番目の候補地を選択する確率
０≦Ｌ５≦Ｌ４≦Ｌ３≦Ｌ２≦Ｌ１≦１、Ｌ１＋Ｌ２＋Ｌ３＋Ｌ４＋Ｌ５＝１
仮にＭ箇所に同じ頻度で出張していた場合、Ｍ箇所の候補地の中で実際の開催場所が１番目〜Ｍ番目になる確率はいずれも等しく１／５である。そのため、開催場所の選択作業の負荷の期待値は（１＋２＋３＋４＋５）×１／５＝３となる。
【０２０２】
これに対し、本実施形態では、確度の高い順に候補を並べることができる。したがって、Ｌ１、Ｌ２等の確率が高ければ高いほど、期待値は小さくなる。例えば、本実施形態では、Ｌ１の確率が１であり、Ｌ２からＬ５の確率が０の場合の期待値が最も小さく、期待値は１となる。したがって、本実施形態によれば、実際の開催場所を候補の一覧１６から選択する際の作業負荷が軽減される。
【０２０３】
尚、本実施形態では、予定情報テーブル２２２は、項目「開催場所」や項目「参加者リスト」を有しておらず、参加者リスト作成部２１２でこの２つの項目を追加した参加者リスト付き中間テーブル２３１を作成していたが、これらの項目の設定の方法は、これに限定されない。
【０２０４】
例えば、予定情報テーブル２２２に予め、項目「開催場所」と項目「参加者リスト」を設け、算出した項目値を保持しても良い。その場合、参加者リスト作成部２１２は、項目「開催場所」、「参加者リスト」の値が未設定のレコードについてのみ、処理を行えば良く、参加者リスト作成部２１２の処理の負荷を低減できる。
【０２０５】
開示の技術では、以下に記載する付記のような形態が考えられる。
（付記１）
ユーザの識別情報及び予定名の入力を受け付け、
前記識別情報と対応する前記ユーザと関連する他のユーザを特定し、
前記他のユーザの予定情報において、入力された前記予定名と関連する予定名と対応する開催場所の確度を算出し、
前記確度に基づく前記開催場所の一覧を出力する処理を、コンピュータに実行させる予定表入力支援プログラム。
（付記２）
記憶部に、各ユーザの予定情報と、各ユーザの位置を示すユーザ位置情報と、各ユーザが滞在した場所を示す滞在位置情報が格納されており、
前記他のユーザを特定する処理は、
前記記憶部を参照し、前記ユーザの前記予定情報において、過去の予定の開始時刻から終了時刻までの間の前記ユーザの滞在場所に同席していたユーザを抽出し、
前記同席していたユーザのうち、前記ユーザと同席していた同席割合が所定値より高いユーザを特定する、処理である付記１記載の予定表入力支援プログラム。
（付記３）
前記確度を算出する処理は、
特定された前記他のユーザの予定情報に含まれる開催場所の確度である第一の確度を算出し、
特定された前記他のユーザの予定情報において、入力された前記予定名と一致する予定名と対応付けられた開催場所の確度である第二の確度を算出し、
前記第一の確度と前記第二の確度とを加算する、処理である付記２記載の予定表入力支援プログラム。
（付記４）
前記第二の確度は、
入力された前記予定名を解析して取得した第一のキーワードの数と、
前記第一のキーワードと、前記他のユーザの予定情報に含まれる予定名を解析して取得した第二のキーワードと、において共通する共通キーワードの数と、
前記他のユーザの前記同席割合と、に応じて算出される、付記３記載の予定表入力支援プログラム。
（付記５）
前記出力する処理は、
入力された前記予定名と対応する開催場所の入力欄に対する操作を受け付けたとき、前記確度が高い順に表示された前記開催場所の一覧を表示させる画面データを出力する、付記１乃至４の何れか一項に記載の予定表入力支援プログラム。
（付記６）
前記開催場所の一覧は、
前記確度が最も高い開催場所が先頭に表示される付記５記載の予定表入力支援プログラム。
（付記７）
コンピュータによる予定表入力支援方法であって、該コンピュータが、
ユーザの識別情報及び予定名の入力を受け付け、
予定情報が格納された記憶部を参照し、前記識別情報と対応する前記ユーザの予定情報から前記ユーザと関連する他のユーザを特定し、
前記他のユーザの予定情報において、入力された前記予定名と関連する予定名と対応する開催場所の確度を算出し、
前記確度に基づく前記開催場所の一覧を出力する、予定表入力支援方法。
（付記８）
ユーザの識別情報及び予定名の入力を受け付ける新予定取得部と、
予定情報が格納された記憶部を参照し、前記識別情報と対応する前記ユーザの予定情報から前記ユーザと関連する他のユーザを特定するグループメンバ取得部と、
前記他のユーザの予定情報において、入力された前記予定名と関連する予定名と対応する開催場所の確度を算出する確度算出部と、
前記確度に基づく前記開催場所の一覧を出力する場所候補出力部と、を有する予定表入力支援装置。
【０２０６】
本発明は、具体的に開示された実施形態に限定されるものではなく、特許請求の範囲から逸脱することなく、種々の変形や変更が可能である。
【符号の説明】
【０２０７】
１００  予定表入力支援システム
２００  予定表入力支援装置
２１０  予定表入力支援プログラム
２１０Ａ  予定表入力支援処理部
２１１  新予定取得部
２１２  参加者リスト作成部
２１３  グループメンバ取得部
２１４  関連予定取得部
２１５  関連確度算出部
２１６  場所候補出力部
２２０  ストレージデバイス
２２１  所属情報テーブル
２２２  予定情報テーブル
２２３  ユーザ位置情報テーブル
２２４  会議室位置情報テーブル
２３１  参加者リスト付き中間テーブル
３２３  判定用中間テーブル
２３３  グループメンバテーブル
２３４  第一関連予定中間テーブル
２３５  第二関連予定中間テーブル
２３６  開催場所候補テーブル
３００  端末装置
【図１】
2016115109.tif 000003
【図２】
2016115109.tif 000004
【図３】
2016115109.tif 000005
【図４】
2016115109.tif 000006
【図５】
2016115109.tif 000007
【図６】
2016115109.tif 000008
【図７】
2016115109.tif 000009
【図８】
2016115109.tif 000010
【図９】
2016115109.tif 000011
【図１０】
2016115109.tif 000012
【図１１】
2016115109.tif 000013
【図１２】
2016115109.tif 000014
【図１３】
2016115109.tif 000015
【図１４】
2016115109.tif 000016
【図１５】
2016115109.tif 000017
【図１６】
2016115109.tif 000018
【図１７】
2016115109.tif 000019
【図１８】
2016115109.tif 000020
【図１９】
2016115109.tif 000021
【図２０】
2016115109.tif 000022
【図２１】
2016115109.tif 000023
【図２２】
2016115109.tif 000024
【図２３】
2016115109.tif 000025