"ユーザ間の知人関係を記憶した知人関係情報テーブルと、複数の座席の配置を記憶した座席位置テーブルと、前記座席位置テーブルに記憶されている各座席にどのユーザが着席しているかを記憶する座席テーブルと、前記ユーザを特定するユーザIDをリーダ装置から取得する取得部と、前記取得したユーザIDに基づき、前記知人関係情報テーブルを参照して、前記ユーザの知人である他のユーザIDを抽出すると共に、前記座席位置テーブルおよび前記座席テーブルを参照し、前記抽出された他のユーザが着席している座席の周囲の空席情報を出力する処理部と、を有することを特徴とする情報処理装置。前記処理部は、抽出された前記ユーザの知人である他のユーザのうち、所定時間以上、継続して着席していない他のユーザが着席している座席の周囲の空席情報を出力する請求項1に記載の情報処理装置。前記各座席には、ユーザID識別子を送信する送信機からのユーザIDを読み取る読み取り部が設けられており、前記処理部は、前記読取り部のいずれかがが前記ユーザIDを読み取ると、前記読み取ったユーザIDと読取った前記読取り部に対応する座席とを関連付けて前記座席テーブルに記憶させ、前記ユーザIDを読取れない読取り部に対応する座席を空席として前記座席テーブルに記憶させる請求項1または2記載の情報処理装置。前記各座席には、ユーザIDを送信する送信機からのユーザIDを読み取る読取り部が設けられており、前記処理部は、前記各読取り部からの読み取り結果を蓄積するとともに、前記着席した読み取り結果に基づき、隣接して着席するユーザ同士が知人関係にあるとして前記知人関係情報テーブルに記憶する請求項1から3のいずれかに記載の情報処理装置。前記座席テーブルは、前記他のユーザがグループで食事中か否かを記憶し、前記処理部は、前記グループを構成する全ユーザと前記ユーザとが知人関係である場合のみ、前記他のユーザが着席している座席の周囲の空席情報を出力することを特徴とする請求項1に記載の情報処理装置。コンピュータに座席検索処理を実行させる情報処理プログラムであって、前記コンピュータは、ユーザ間の知人関係を記憶した知人関係情報テーブルと、複数の座席の配置を記憶した座席位置テーブルと、前記座席位置テーブルに記憶されている各座席にどのユーザが着席しているかを記憶する座席テーブルと、を有し、前記コンピュータに、前記ユーザを特定するユーザIDをリーダ装置から取得し、ユーザの要求に応じ、前記知人関係情報テーブルを参照して、前記ユーザの知人である他のユーザIDを抽出すると共に、前記座席位置テーブルおよび前記座席テーブルを参照し、前記抽出された他のユーザが着席している座席の周囲の空席情報を出力させる処理を実行させることを特徴とする情報処理プログラム。開示の情報処理装置は、知人が着席する周囲の席に、ユーザが着座することを支援することを課題とする。開示の情報処理装置は、ユーザ間の知人関係を記憶した知人関係情報テーブルと、複数の座席の配置を記憶した座席位置テーブルと、前記座席位置テーブルに記憶されている各座席にどのユーザが着席しているかを記憶する座席テーブルと、前記ユーザを特定するユーザIDをリーダ装置から取得する取得部と、前記取得したユーザIDに基づき、前記知人関係情報テーブルを参照して、前記ユーザの知人である他のユーザIDを抽出すると共に、前記座席位置テーブルおよび前記座席テーブルを参照し、前記抽出された他のユーザが着席している座席の周囲の空席情報を出力する処理部とを有する。開示の情報処理装置は、知人が着席する周囲の席に、ユーザが着座することを支援することが可能になる。本実施例では、情報処理装置及び情報処理プログラムを、食堂システムを例に説明する。本食堂システムでは、携帯端末に組み込まれたICチップを使用する例を説明する。[機能説明]図1は、本実施例の食堂システムの構成例である。精算システム1は、複数の精算機2、サーバ3、複数の携帯ホルダ5を含む。各精算機2は、それぞれ、ユーザ購入する料理を精算する際に使用する装置である。精算機2は、精算リーダライタ部21、精算送受信部22、および精算表示部23を含む。精算機2は、各種の情報を読み取るための読み取り部と処理結果を表示する画面を有する。精算機2の精算リーダライタ部21は、精算しようとするユーザの携帯端末6の情報の読み出し、あるいは携帯端末6への情報の書き込みを行う。精算機2の精算送受信部22は、サーバ3に対してデータを送受信するインターフェースである。精算機2の精算表示部23は、精算時の金額情報、あるいは食事相手候補情報を表示する。サーバ3は、精算処理、座席管理処理、食事相手検索処理を実行する。サーバ3は、精算機-サーバ送受信部31、携帯ホルダ-サーバ送受信部32、精算処理部33、座席管理部34、着席履歴管理部35、知合い推定処理部36、および食事相手検索処理部37を含む。精算機-サーバ送受信部31は精算機2とデータの送受信をする。携帯ホルダ-サーバ送受信部32は携帯ホルダ5とデータの送受信をする。精算処理部33は精算処理を実行する。座席管理部34は座席管理処理を実行する。着席履歴管理部35は着席履歴を管理する。知合い推定処理部36はユーザ間の知合い関係を推定する。食事相手検索処理部37は食事相手の検索処理を実行する。着席履歴テーブル38は、ユーザの過去の着席の履歴情報を格納しており、知合い推定処理で使用される。座席位置テーブル39は、食堂内の座席の位置が記憶されている。食事相手検索処理時に使用される。なお、本実施例では、一つの座席に一つの携帯ホルダ5が設置されているものとする。座席位置テーブル39は、予め設定されて記憶されているものとする。知人関係情報テーブル40は、知合い推定処理結果から特定された情報を記憶するテーブルである。知人関係情報テーブル40は、食事相手検索処理時に使用される。一時記憶テーブル41は精算時に登録される。一時記憶テーブル41は知合い推定処理、食事相手検索処理で使用される。一時記憶テーブル41は知合い推定処理時では当日の全データが使用される。一時記憶テーブル41は食事相手候補特定処理では登録されたデータが使用される座席テーブル42は現在の着席状況を記憶している。座席テーブル42は食事相手検索処理で使用される。座席テーブル42には、携帯ホルダ5がユーザの携帯端末を検出すると着席と記憶され、ユーザの携帯端末を検出しなくなると離席とされる。ユーザテーブル43はユーザの情報を記憶する。ユーザテーブル43は知合い推定処理、食事相手検索処理で使用される。ユーザテーブル43は予め記憶されているものとする。携帯ホルダ5は、食堂内の各座席に設置されている。携帯ホルダ5は、座席リーダライタ部51と座席送受信部52とを含む。携帯ホルダ5の、座席リーダライタ部51は、着席しているユーザを識別するユーザ識別情報を取得する。携帯ホルダ5は、例えば、座席リーダライタ部51が携帯端末からユーザ識別情報を検出してから不検出となるまで所定のタイミング毎に、サーバ3に、ユーザ識別情報を送信する。携帯端末6は、ユーザIDを格納しているものとする。携帯端末6は、精算機2あるいは携帯ホルダ5からユーザIDの送信要求を受信すると、精算機2あるいは携帯ホルダ5に対してユーザIDを送信する。この処理により、精算機2あるいは携帯ホルダ5は、携帯端末6のユーザIDを特定する。以下、精算システム1の各処理を、フローチャートを用いて説明する。[精算処理]図2は精算処理のフローチャートである。本実施例では、社員食堂等では、ユーザがセルフサービスで料理を取ってトレーに乗せ、自動精算機に向かい、食器に付けたRFIDタグを自動精算機で読み取り、ICカード等により精算する方法をベースに説明する。精算機2は例えば、食器料理の皿などに埋め込まれた識別情報料理情報を読み込むことにより、ユーザが購入した料理を検出するS11。ここで、本実施例の精算機2は、料理情報と価格情報とは予め関連付けられた料理価格テーブルを記憶しているものとする。精算機2は、S11で検出した料理の合計金額を算出するS12。精算機は、料理価格テーブルを参照して、ユーザが購入した料理のそれぞれの価格を読み出し、読み出した価格の合計を算出する。精算機2は、ユーザが購入した料理、当前記料理のそれぞれの金額、S12で算出した合計金額、知り合い検索ボタンを画面に表示するS13。図3はS13の時点で精算機2が表示する画面例である。画面には、料理の購入者が購入した料理名、当前記料理の価格、購入した料理の合計金額が表示される。また、画面には知り合い検索ボタンが表示される。ユーザは画面に金額が表示されると、精算を行う。本実施例では、ICカードや、携帯端末に設置されたICチップなどを用いて精算するものとする。なお、本実施例のICカードやICチップには機体を識別可能な機体番号が格納されているものとする。以下、ICチップを例に説明する。精算機2は、携帯端末6のICチップに格納された機体番号情報をリーダライタ部により取得するS14。精算機2は精算機2を識別する精算機ID情報およびS14で取得した機体番号情報をサーバ3に送信するS15。サーバ3は、精算機2から送信された機体番号情報を受信するとS21、ユーザテーブル43から機体番号に対応するユーザID、精算機ID、精算時刻を読み出し、読み出したユーザID、精算機ID、精算時刻を一時記憶テーブル41に格納するS22。図4は一時記憶テーブル41の構成例である。一時記憶テーブル41は、ユーザID、精算機ID、精算時刻を含む。ユーザIDはユーザを識別するための識別情報であり、ユーザごとに割り振られている。精算機IDは精算機を識別するための識別情報であり、精算機ごとに割り振られている。精算時刻は、ユーザが料理を精算したときの時刻である。図5は、ユーザテーブル43の構成例である。ユーザテーブル43は、携帯端末6の固有の番号である機体番号、ユーザを識別するユーザID、ユーザの氏名、ユーザのメールアドレス、など、ユーザを特定するための情報を含む。携帯端末6は、精算機2あるいは携帯ホルダ5に対して、機体番号を送信することにより、精算機2あるいは携帯ホルダ5に携帯端末を特定させる。また、顔画像などの情報をあわせて記憶させることもできる。ユーザテーブル43のユーザ情報は予め記憶されているものとする。次に、精算機2は、ICチップから得られた機体番号情報に基づき精算処理を実行するS16。なお、本実施例の精算処理については、既存の処理手法に沿って行う。まず、精算機2は機体番号を受信する。次に精算機2は精算時刻、精算金額を特定し、受信した機体番号に関連付けてサーバ3に送信する。なお、本実施例の精算時刻は、精算機2で精算処理のための読み取りが実行された時刻であるものとする。なお、本実施例の精算金額は、精算機2で算出された合計金額であるものとする。サーバ3は、精算機2から受信した機体番号、精算時刻、精算金額と、精算システム1を特定するための精算システムIDを合わせて、図示しない決済システムに送信する。決済システムは、決済処理を実行すると実行結果をサーバ3に送信する。以上によって、精算処理が実行される。精算機2は、画面に表示された知合い検索ボタンの押下があったか否かを判別するS17。なお、本実施例では、精算機2はユーザから知合い検索処理の依頼を受信したときに知合い検索処理を実行しているが、ユーザIDを取得すると、知合い検索を実行するようことをも可能である。精算機2は、例えば、ユーザによるマウスカーソルでクリックやタッチパッドセンサーによるタッチ検出などにより知合い検索ボタンが押されたことを検出する。知合い検索ボタンの押下を検出した場合S17:Yesと、精算機の精算送受信部22は、サーバ3にユーザIDおよび知合い検索処理依頼を送信するS18。サーバ3は知合い検索処理依頼を精算機2から受信するとS23、知合い検索処理を実行するS24。知合い検索処理については、後述する。サーバ3は知合い検索処理結果を精算機2に送信するS25。なお、サーバ3は、知合い検索処理結果として前記当候補がいない場合は前記当候補なしを出力し、前記当候補がいる場合は、知合い候補のユーザIDおよび当前記ユーザの座席IDを出力する。なお、サーバ3は、知合い候補のユーザがグループである場合、グループに含まれる全ユーザIDおよび当前記全ユーザの座席IDを出力する。精算送受信部22はサーバ3から現在のユーザの食事相手の候補の座席情報を受信するS19と、精算機2は、知合検索処理結果を画面に表示するS20。具体的には、精算機2は、受信した知合い検索処理結果が前記当候補なしである場合、前記当候補がいない旨を表示する。また、精算機2は、受信した知合い検索処理結果が知合い候補のユーザIDである場合、ユーザテーブル43からユーザIDに対応する情報を読み出す。精算機2は読み出したユーザIDに対応する情報を座席IDで特定される座席位置に対応するように表示する。なお、精算機2は、サーバ3から精算中のユーザが着席すべき座席の座席IDを受信し、当前記座席IDの座席位置を画面に表示してもよい。図6は、S20で精算表示部23が表示する知合い検索処理結果の画面例である。画面には、料理の購入者が購入した料理名、当前記料理の価格、購入した料理の合計金額が表示される。また、画面には知り合い検索ボタンが表示される。知合検索処理結果の画面は、知合いの情報と、当前記知合いの座席情報を含む。知合いの情報は、例えば、名前、顔画像など、ユーザが知合いを特定できる情報であればよい。また、食堂内の座席を表示し、食堂内のどの座席に知合いがいるのかを表示する。また、当前記知合いが、一人でいるのか、複数でいるのかについても表示する。なお、知合い検索ボタンが押されたことを検出しないS17:Noと、精算機2は、処理を終了する。例えば、所定時間の経過後に画面表示を消すとしてもよいし、次の精算処理の開始を検出したときに画面の表示を消巣処理にしてもよい。[着席状況管理処理]図7は着席状況管理処理のフローチャートである。着席状況は、サーバ3と携帯ホルダ5とにより管理される。本実施例のユーザは、所望の座席に着席したとき、座席に設置された携帯ホルダ5に自分の携帯端末をセットするものとする。図7の処理は、サーバ3と食堂内の全ての携帯ホルダ5との間で行われる。以降、一つの携帯ホルダ5とサーバ3との間の処理を説明するが、他の携帯ホルダ5についても同様の処理を行うものとする。図8は、食堂内のユーザが食事をする際に着席するテーブルの構成例である。テーブル7には席毎に携帯ホルダ5が設置されている。ユーザは携帯ホルダに自身の携帯端末6をセットすることにより、当前記座席に当前記ユーザが着席していることを携帯ホルダ5に検出させる。携帯ホルダ5は携帯端末6の機体番号を読み出すことにより、ユーザの着席を検出する。なお、本実施例の携帯ホルダは、各座席に予め設置されている。したがって、携帯ホルダが特定される場合、当前記携帯ホルダに対応する座席が特定される。各携帯ホルダは各座席に予め対応付けられているため、各携帯ホルダはそれぞれに対応する座席IDを記憶しているものとする。携帯ホルダ5は、ユーザの携帯端末6が置かれたか否かを判別するS31。携帯ホルダ5の座席リーダライタ部51は定期的に情報取得のための無線電波を出力する。ユーザによって携帯端末6が携帯ホルダ5に置かれた場合、携帯端末6は、座席リーダライタ部51から送信された情報取得のための無線電波に対する応答する無線電波を送信する。座席リーダライタ部51は携帯端末から応答の無線電波を受信した場合に、ユーザの携帯端末6がおかれたと判別する。なお、定期的に行う検出の定期的とは、例えば、一秒に一回程度でよい。携帯端末6が置かれていないと判別した場合S31:No、携帯端末6が置かれたか否かを判別する処理を継続する。携帯端末6が置かれたと判別した場合S31:Yes、携帯ホルダ5は、携帯端末6に格納された機体番号を取得し、携帯端末6が置かれた時刻を取得するS32。S32で携帯ホルダが取得した時刻は着席時刻である。携帯ホルダ5は、携帯ホルダ5の座席ID、S32で取得した機体番号および着席時刻をサーバ3に送信するS33。サーバ3は座席ID、機体番号および着席時刻を受信するS37と、機体番号に対応するユーザIDをユーザテーブル43に基づき特定し、着席履歴テーブル38に座席ID、ユーザIDおよび着席時刻を記憶するS38。図9は、着席履歴テーブル38の構成例である。着席履歴テーブル38は、ユーザID、座席ID、エリア、着席時刻、離席時刻の情報を含む。ユーザIDは、ユーザを識別する情報である。座席IDは、食堂内の座席を識別する情報である。エリアは、食堂内の場所を複数に分割した場所を識別する情報である。着席時刻は、ユーザが携帯端末6を携帯ホルダ5に置いた時刻であり、本実施例ではユーザが着席した時刻である。なお、着席時刻は食事の開始時刻でもある。離席時刻は、ユーザが携帯端末6を携帯ホルダ5に取り上げた時刻であり、本実施例ではユーザが離席した時刻である。なお、着席時刻は食事の終了時刻でもある。また、サーバ3は座席ID、ユーザIDおよび着席時刻を受信するS37と、座席テーブル42の座席IDが対応するレコードに、ユーザIDおよび着席時刻を記憶するS39。また、サーバ3はグループ情報を座席テーブル42に登録するS43。グループ情報は、隣席に着席しているユーザ同士が知合いの場合に当前記ユーザ同士はグループであるとして、グループ情報を付加する。このグループ情報は、食事相手検索処理時に使用される。サーバ3は、座席テーブル42の隣席の関係にある座席レコードを読み出し、読み出した座席レコードのユーザが互いに知合いか否かを知人関係情報テーブル40のレコードに基づき判別する。また、サーバ3は、着席時刻が所定の時間内の場合のみ、読み出した座席レコードのユーザがグループであると決定してもよい。図10は、座席テーブル42の構成例である。座席テーブル42は、座席ID、エリア、ユーザID、着席時刻の情報を含む。座席IDは、食堂内の座席を識別する情報である。エリアは、食堂内の場所を複数に分割した場所を識別する情報である。ユーザIDは、ユーザを識別する情報である。着席時刻は、ユーザが携帯端末6を携帯ホルダ5に置いた時刻であり、本実施例ではユーザが着席した時刻である。なお、着席時刻は食事の開始時刻でもある。座席テーブル42は、座席IDの種類の数のレコードを有する。座席ID,エリアについては固定された情報である。グループ情報は、知合い同士が近隣の座席に着席していることを示す情報である。本実施例ではグループ毎に異なる番号を付加する。座席テーブル42のユーザID、着席時刻およびグループ情報は、携帯ホルダがユーザの携帯端末を検出したときに登録され、携帯ホルダがユーザの携帯端末を検出できなくなったときに消去される。携帯ホルダ5は、携帯端末6の検出ができるか否かを判定するS34。携帯端末6の検出ができる状態は、例えば、ユーザが食事を継続しており、携帯端末6が携帯ホルダに置かれている状態である。携帯端末6の検出ができなくなった状態は、例えば、ユーザが食事を終了し、携帯端末6を携帯ホルダ5から取り上げた状態である。携帯ホルダ5は、携帯端末6の検出ができる場合S34:Yes、S31で検出した携帯端末6の検出を継続する。携帯ホルダ5は、携帯端末6の検出ができない場合S34:No、離席時刻を取得するS35。なお、携帯ホルダ5は、ユーザが携帯ホルダ5から一時的に携帯端末を取り上げた場合に離席であると誤って検出しないように、不検出の時間が所定時間以上連続した場合に離席したと判定してもよい。携帯ホルダ5は、座席IDおよびS35で取得した離席時刻をサーバ3に送信するS36。サーバ3は座席IDおよび離席時刻を受信するとS40、座席テーブル42の座席IDが合致するレコードのユーザIDおよび着席時刻を削除するS41。また、サーバ3は座席IDおよび離席時刻を受信するとS40、着席履歴テーブル38の座席IDが合致するレコードに離席時刻を格納するS42。以上の処理によって、精算システム1は着席履歴情報を取得する。[知合い推定処理]図11は、知合い推定処理のフローチャートである。サーバ3は、着席履歴テーブル38、ユーザテーブル43、座席位置テーブル39に格納された情報に基づき知合い関係を推定し、推定した知合い関係を知人関係情報テーブル40に格納する。サーバ3は、知合い推定処理を定期的に実行することにより、知合い情報を蓄積する。サーバ3は、同時間帯に同じテーブルで食事をとった複数のユーザの携帯電話識別情報を取得し、取得した複数ユーザは互いに知合いであると推定して知人関係情報テーブル40に格納する。サーバ3は例えば一日の着席状況を着席履歴テーブル38に格納し、当前記着席の履歴に基づき、ユーザ同士が知合いか否かを推定する。なお、本実施例では、過去の着席の状態から知合い関係を推定する処理を行っているが、ユーザによって予め登録することも可能であるし、サーバ3は、ユーザテーブル43の情報から部署などの共通点を検索して知合いを推定することも可能である。本実施例では、サーバ3は、複数の条件を満たした場合に、知合いであると判定する。複数の条件は、1知合いの候補のユーザが近隣の座席に着席したこと、2着席時刻の差が所定の時間差よりも短いこと、3離席時刻の差が所定の時間差よりも短いことである。なお、所定の時間は適宜設定可能であるが、例えば数分以内とすればよい。サーバ3は、着席履歴テーブル38の全てのレコードに対して以下の処理を行う。サーバ3は、着席履歴テーブル38の一つのレコードを読み出すS51。サーバ3は、読み出したレコードの座席ID、着席時刻、離席時刻を特定する。ここで特定した座席ID、着席時刻、離席時刻は、座席IDA、着席時刻A、離席時刻AとするS52。サーバ3は、特定した座席IDAの近隣座席IDを座席テーブル39から特定するS53。図12は、座席位置テーブル39の構成例である。座席位置テーブル39は、座席ID,近隣座席ID、エリアを含む。座席IDは、食堂内の座席を識別する情報である。近隣座席IDは、座席IDで特定される座席の近隣に位置する座席を識別する情報である。同一レコードでの座席IDと近隣座席IDとの関係は、ユーザが相席の関係を満たす位置関係である。したがって、近隣座席IDは座席IDの座席の位置によって、数が変わり得る。例えばテーブルの隅の座席の場合、近隣の座席は、向かい側の席と左隣あるいは右隣の席となる。他の場合、近隣の座席は、向かい側の席と左隣および右隣の席となる。また、柱があるなどして、その他の事情により隣の席がない場合などがある。これらの情報を加味して、設定者は予め近隣座席IDを座席IDに関連付けておく。エリアは、食堂内の場所を複数に分割した場所を識別する情報である。サーバ3は、特定した近隣座席IDにより着席履歴テーブル38を検索し、近隣座席IDを含むレコードを抽出するS54。サーバ3は、抽出したレコード群の中から一つの近隣座席IDを含むレコード群を特定するS55。サーバ3は、特定した一つの近隣座席IDを含むレコード群の内、着席時刻A、離席時刻Aに最も近い着席時刻B、離席時刻Bを含むレコードを特定するS56。サーバ3は、特定した着席時刻Bと着席時刻Aとは所定時間以内か否かを判別するS57。所定時間よりも離れている場合S57:No、処理対象のユーザは近隣座席のユーザと知合いではないと推定する。所定時間以内の場合S57:Yes、サーバ3は、特定した離席時刻Bと離席時刻Aとは所定時間以内か否かを判別するS58。所定時間よりも離れている場合S58:No、処理対象のユーザは近隣座席のユーザと知合いではないと推定する。所定時間以内の場合S58:Yes、サーバ3は、S51で読み出した着席履歴テーブル38の一つのレコードに記憶されたユーザIDとS56で特定した着席履歴テーブル38のレコードに記憶されたユーザIDとの組み合わせが知人関係情報テーブル40に格納されているか判別するS59。図13は知人関係情報テーブル40の構成例である。知人関係情報テーブル40は、ユーザID1、ユーザID2、および登録日を含む。ユーザID1およびユーザID2は、ユーザを識別するユーザIDである。登録日は知人関係情報テーブル40に登録された日付である。知人関係情報テーブル40に格納されていない場合S59:No、サーバ3は、S51で処理対象となったユーザIDとS56で処理対象となったユーザIDの組み合わせを登録するS60。サーバ3は、他の近隣座席IDがあるか否かを判別するS61。他の近隣座席IDがある場合S61:Yes、サーバ3は次の近隣座席IDについて知り合いか否かを推定するS55以降の処理を実行する。他の近隣座席IDがない場合S61:No、サーバ3は着席履歴テーブル38の全てのユーザについて処理を終了したか否かを判定するS62。全てのユーザについて処理を終了していない場合S62:No、着席履歴テーブル38の次のレコードに対してS51以降の知合いの推定処理を実行する。全てのユーザについて処理を終了した場合S62:Yes、サーバ3は知合い推定処理を終了する。以上の処理によって、着席履歴テーブル38から知合いを推定することができる。なお、本実施例では、一日の履歴で知合いの推定を行ったが、単一の日付だけでなく、複数の日付を加味して知合いの推定を行うことも可能である。例えばサーバ3は、知合いであると推定した複数のユーザの組み合わせの情報を日ごとに格納しておき、複数の日で共通の組み合わせを検出した場合に知合いであると推定するようにしてもよい。[食事相手検索処理]図14は、図2の精算処理において、サーバ3がS24で実行する食事相手検索処理のフローチャートである。サーバ3は、ユーザの要求に応じ、知人関係情報テーブル40を参照して、ユーザの知人である他のユーザを抽出すると共に、座席位置テーブル39および座席テーブル42を参照し、抽出された他のユーザが着席している座席の周囲の空席情報を出力する。本実施例では、精算機2が料理を購入したユーザにより食事相手の知合い検索依頼を入力された場合に、サーバ3が精算機2から知合い検索依頼を受信して検索処理を実行するものとする。サーバ3は、食事相手を検索する際に、単に知合いを表示するのではなく、所定の条件を満たす知合いのみを表示することとする。なお、この時に表示される知合いは、知人関係情報テーブル40に知合いとして登録されているユーザであり、過去に一緒に食事をしたユーザである。本実施例の所定の条件は、1当前記知り合いが着席してから一定時間以内たとえば3分以内であること、2当前記知り合いが1人あるいは知り合いのみのグループで食事をしていることである。なお、以降の説明において、料理を購入し、一緒に食事をする相手を検索依頼するユーザをユーザAとする。サーバ3は、精算機2から受信し一時記憶テーブル41に格納されたユーザAのユーザIDを元に知合いを検索する。まず、サーバ3は、一時記憶テーブル41からユーザAのユーザIDを読みだすS71。次に、サーバ3は、知人関係情報テーブル40からユーザAの知合いであるユーザを抽出するS72。具体的には、サーバ3は、知人関係情報テーブル40からユーザAのユーザIDを含むレコードを検索する。サーバ3は、検索結果のレコードに含まれるユーザIDを抽出する。サーバ3は、抽出したユーザIDをユーザAの知合いのユーザのユーザIDとする。なお、S72で抽出されたユーザAの知合いのユーザをユーザBとする。次に、サーバ3はS72でユーザBを抽出できたか否かを判別するS73。サーバ3は、ユーザBを抽出できなかった場合S73:No、ユーザAの知合いが知人関係情報テーブル40に登録されていないことにより知合いを検索できなかったため、検索結果として前記当候補なしを精算機2に出力するS80。サーバ3は、一人以上のユーザBを抽出できた場合S73:Yes、抽出できたユーザBに対してそれぞれS74以降の処理を行う。サーバ3は、座席テーブル42の各座席レコードのユーザIDを読み出し、読み出したユーザIDと処理対象のユーザBのユーザIDとが合致するか否か判別し、合致する座席レコードが存在するか否かにより、ユーザBが着席状態か否かを判別するS74。サーバ3は、座席テーブル42に存在しない場合S74:No、次の処理対象のユーザBについてS74以降の処理を実行する。サーバ3は、座席テーブル42に存在する場合S74:Yes、座席テーブル42のグループ情報を参照することにより、ユーザBは一人か否かを判別するS75。ユーザBが複数の場合S75:No、サーバ3は、ユーザBのグループを構成する全ユーザとユーザAとが知り合いか否かを判別するS79。ユーザBが候補として検索された場合であっても、ユーザBがユーザAの知らない人と一緒である場合、ユーザAが邪魔になることがある。よって、本実施例では、サーバ3は、ユーザBのグループを構成する全ユーザとユーザAとが知り合いでない場合S79:No、食事相手の候補としない。図15は座席の状態を示す例である。図15は、食堂内のA1エリアを示す。A1エリアは一つのテーブルがあり、当前記テーブルは6席T001,T002,T003,T004,T005,T006有する。例えば、T001に着席中のユーザU005とT002に着席中のユーザU021とは知合いである。ユーザU005はユーザU021と食事中である。同様に、T005に着席中のユーザU006とT006に着席中のユーザU025とは知合いである。ユーザU006はユーザU025と食事中である。T003およびT004は空席である。ユーザA例えばユーザU001が精算したとする。ユーザU001はユーザU005およびユーザU021と知合いであるとする。ユーザU001はユーザU005およびユーザU021と知合いである場合、T003およびT004が空席であるため、食事相手の候補として表示される場合がある。ユーザAがユーザU005あるいはユーザU021のどちらか一方のみと知合いである場合、本実施例では食事相手の候補として表示されない。サーバ3は、ユーザBが一人の場合S75:Yes、あるいは、ユーザBのグループを構成する全ユーザとユーザAとが知り合いの場合S79:Yes、ユーザBの隣席が空いているか否かを判別するS76。ユーザBの隣席が空いていない場合S76:No、ユーザAがユーザBと一緒に食事ができる座席がないため、次の処理対象のユーザBについてS74以降の処理を実行する。ユーザBの隣席が空いている場合S76:Yes、サーバ3は、ユーザBが食事を開始した時刻から現在の時刻までの時間は、所定の時間内か否かを判別するS77。なお、グループを構成する全ユーザがユーザAと知合いである場合、サーバ3は、当前記グループを構成する全ユーザについて、S74乃至S79の処理を実行することになる。サーバ3は、抽出されたユーザBのうち、所定時間以上、継続して着席していない他のユーザを食事相手の候補として抽出する。所定の時間よりも長い時間が経過している場合S77:No、ユーザBとユーザAの食事時間のずれが大きくなるため、次の処理対象のユーザBについてS74以降の処理を実行する。所定の時間内である場合S77:Yes、サーバ3は、処理対象のユーザBを知り合いの候補として記憶するS78。サーバ3は、S73で抽出した全ユーザBについてS74乃至S79の処理を実行した後、知合い検索処理結果として、ユーザAに知合いの候補が居ない場合には前記当候補なしを出力し、ユーザAに知合いの候補が居る場合には、知合い候補のユーザIDおよび知合い候補の着席する座席IDを出力するS80。なお、サーバ3は、知合い候補のユーザがグループである場合、グループに含まれる全ユーザIDおよび当前記全ユーザの座席IDを出力する。なお、サーバ3は、ユーザAが着席すべき座席の座席IDを精算機2に送信してもよい。サーバ3は、S25において、S80の知合い検索処理結果前記当候補なしあるいは知合い候補のユーザIDを精算機2に出力する。なお、サーバ3は、知合いの候補が多い場合、所定の数に絞込みを行って表示をすることも可能である。例えば、食事の開始時刻が最近のユーザから順番に所定の上位の人数だけ表示することも可能である。また、サーバ3は、着席から離席までの時間を記憶することで、各ユーザの食事の平均時間を算出して記憶しておき、知合い検索のときにおいては、食事の終了予定時刻が一致するようなユーザを特定するようにしても良い。例えば、サーバ3は、ユーザAの食事終了予想時刻を、現在の時刻精算の時点にユーザAの平均食事時間を加えた時間から算出する。また、サーバ3は食事相手の候補の食事終了予想時刻を、着席時刻にユーザBの平均食事時間を加えた時間から算出する。サーバ3は、ユーザAの食事終了予想時刻とユーザBの食事終了予想時刻とが所定の時間差よりも小さい場合に食事相手の候補として出力することも可能である。なお、サーバ3は、S80において知合い候補のユーザIDだけでなくユーザAが座るべき座席IDをあわせて出力することも可能である。この構成とした場合、精算機2にさらに座席予約ボタンを表示する機能を設け、ユーザAにより座席予約をボタンが押されたことを検出すると、座席の予約をすることも可能である。例えば、精算機2は座席予約依頼を送信し、サーバ3は当前記予約を受信すると、座席テーブル42の対応する座席IDのレコードにユーザIDおよび着席時刻を仮登録する。なお、食堂内の各携帯ホルダ5は予め表示機能を設けられており、ユーザAに仮登録された携帯ホルダ5は、ユーザAの着席を示す情報を表示することも可能である。サーバ3は所定時間以内にユーザAの着席を検出できなかった場合、あるいはユーザAが他の座席に着席したことを検出した場合に、当前記仮登録したレコードを削除する。サーバ3は、仮登録の機能により、例えば、精算機2で知り合いではない複数のユーザが短期間に共通のユーザを食事相手として表示されることを防止することができる。このような構成にすることにより、より正確に食事相手を検索することが可能になる。[ハードウェア構成]図16は、本実施例のハードウェア構成の一例である。精算システム1は、少なくとも一台の精算機2、サーバ3、および複数の携帯ホルダ5を有する。精算機2は、CPU中央処理装置201、RAMRamdomAccsessMemory202、ROM203、I/Fインターフェース204、ディスプレイ205、リーダライタ206を有し、それぞれバスを介してデータ通信を行う。ROM203には、CPU201が実行するプログラムが記憶されている。CPU201は、ROM203に記憶されたプログラムを読み込みながら処理を行うことで、精算機2としての各種処理を行う。RAM202は、CPU201のプログラム実行の際の一時データを格納する。また、このRAM202は、後述するリーダライタ206で取得したユーザID、サーバ3から受信したユーザID,座席IDなどが格納される。また、各テーブルの情報を記憶することも可能である。CPU201が、データを取得記憶する記載がある場合、実際には、RAM202に一時的に前記データを記憶させているものとする。I/F204は、サーバ3との通信を行うものである。ディスプレイ205は、精算画面、知合い相手検索処理結果を表示する。リーダライタ206は、携帯端末6との通信を行うものである。本実施例の携帯端末6には非接触ICチップが搭載されており、無線により通信を行う。サーバ3は、CPU中央処理装置301、RAMRamdomAccsessMemory302、ROM303、I/Fインターフェース304を有する。ROM303には、CPU301が実行するプログラムが記憶されている。CPU301は、ROM303に記憶されたプログラムを読み込みながら処理を行うことで、サーバ3としての各種処理を行う。RAM302は、CPU301のプログラム実行の際の一時データを格納する。また、このRAM302は、各テーブルの情報を記憶する。CPU301が、データを取得記憶する記載がある場合、実際には、RAM302に一時的に前記データを記憶させているものとする。I/F304は、精算機2および携帯ホルダ5との通信を行うものである。携帯ホルダ5は、CPU中央処理装置501、RAMRamdomAccsessMemory502、ROM503、I/Fインターフェース504、リーダライタ505を有する。ROM503には、CPU501が実行するプログラムが記憶されている。CPU501は、ROM503に記憶されたプログラムを読み込みながら処理を行うことで、携帯ホルダ5としての各種処理を行う。RAM502は、CPU501のプログラム実行の際の一時データを格納する。また、このRAM502は、後述するリーダライタ505で取得したユーザIDなどが格納される。また、各テーブルの情報を記憶することも可能である。CPU501が、データを取得記憶する記載がある場合、実際には、RAM502に一時的に前記データを記憶させているものとする。I/F504は、サーバ3との通信を行うものである。リーダライタ505は、携帯端末6との通信を行うものである。本実施例の携帯端末6には非接触ICチップが搭載されており、無線により通信を行う。[その他]以上に説明した精算システム1は、社員食堂や学生食堂等の特有の場所および状況下での問題を解決できる。一般のレストラン等と異なり、社員食堂や学生食堂で食事をする場合、知り合いと会う可能性が高い。このため、一緒に食事をする相手を探したい場合がある。事前に携帯電話を用いて、特定の知り合いと待ち合わせをすることもできるが、相手が社員食堂等に行くかどうか、相手が社員食堂等に行く時刻が合うかとか等が不明である。また、食堂でメニューを選んでいる時などに、携帯電話等を利用して食事相手を探すことも想定できるが、食べ物を載せたトレーを持っているため両手が使えず、携帯電話の操作が困難な場合もある。また、メニューを選ぶのに時間がかかったり、精算機が混雑して待たされたりする場合があるので、本人も、相手も、食べ始めのタイミングを確定できないので、所定の時刻に待ち合わせするのが困難な事情がある。さらに、精算後に社員食堂内にいる食事相手を目視で探すこともできるが、相手が見つかっても、相手が食べ終わりの場合だと、途中で相席すると、自分が食べ終わるまで相手を待たせることになってしまう問題が懸念される。その他、相手が見つかっても、知らない人が一緒だったり、席が空いてなかったりする問題が懸念される。以上に説明した精算システム1は、社員食堂や学生食堂等で起こり得る上記の問題を解決できるため、ユーザは効率的に食事の相手を探すことができる。また、以上に説明した精算システムは、社員食堂や学生食堂等の特有の場所および状況下において、食事相手の隣席等が空いている、食事相手が知らない人と食事中ではない、食事相手が食べ始めたばかりである、といった条件を満たす場合にのみ、食事相手の隣席を表示する。このため、本精算システムは、すでに食事中の知人にとっても、精算中の本人にとっても、効率的に食事相手を探せる有利な効果がある。以上の本実施例では、携帯端末に組み込まれたICチップを使用する例を説明したが、これに限らず、ICカード、バーコードなど、ユーザを識別可能な技術を使用することも可能である。また、携帯端末のネットワーク通信機能を使用して実施することも可能である。"