(57)【要約】【課題】座席に対する予約の割り当てを行う際に、座席を結合させて割り当て座席数の調整を行うこと。【解決手段】座席を他の座席と結合させて結合座席を構成するための結合可能座席情報を含む前記座席の属性情報である第一の属性情報を記録する座席情報テーブルと、前記予約の属性情報である第二の属性情報を記録する予約情報テーブルとを含む各テーブル群Ｓ-０８を備え、割り当て最適化処理部Ｓ-０５が、前記第一の属性情報及び第二の属性情報に従って、前記予約を前記座席に対して割り当てる割り当て処理を行うものであり、前記割り当て処理で割り当て対象となる座席に前記結合可能条件に基づいて結合された結合座席を含む構成を特徴とする。【選択図】図１
2009163406.tif 000002
【特許請求の範囲】
【請求項１】
座席に対して予約の割り当て処理を行う情報処理装置であって、
前記座席を他の座席と結合させて結合座席を構成するための結合可能座席情報を含む前記座席の属性情報である第一の属性情報を記録する第一の記録手段と、
前記予約の属性情報である第二の属性情報を記録する第二の記録手段と、
前記第一の属性情報及び第二の属性情報に従って、前記予約を前記座席に対して割り当てる割り当て処理を行う割り当て手段とを備え、
前記割り当て手段による前記割り当て処理で割り当て対象となる座席には、前記結合可能条件に基づいて結合された結合座席が含まれることを特徴とする情報処理装置。
【請求項２】
新規の予約を受け付けた場合に、既存の割り当てを解除した後に、前記割り当て手段により前記新規の予約を含む全ての予約に対する座席の割り当て処理を実行させる新規割り当て手段を備えたことを特徴とする請求項１に記載の情報処理装置。
【請求項３】
既存の予約に対する属性情報の変更を受け付けた場合に、既存の割り当てを解除した後に、前記割り当て手段により前記属性変更後の予約を含む全ての予約に対する座席の割り当て処理を実行させる変更割り当て手段を備えたことを特徴とする請求項１又は２に記載の情報処理装置。
【請求項４】
前記既存の割り当てを解除は、既存の割り当てのうち、まだ利用開始時間に達していない予約の割り当ての解除であることを特徴とする請求項２又は３に記載の情報処理装置。
【請求項５】
前記第二の属性情報は、振れ幅を示す情報を含み、
前記割り当て手段は、前記割り当て処理で割り当て不可能であった場合に、前記振れ幅に応じて変更した前記第二の属性情報に従って、前記割り当て処理を行う、ことを特徴とする請求項１乃至４のいずれか１項に記載の情報処理装置。
【請求項６】
前記割り当て手段は、前記振れ幅に応じて変更した前記第二の属性情報に従って割り当て処理を行った結果、複数の割り当て結果が算出された際には、該複数の割り当て結果を提示して選択させることを特徴とする請求項５に記載の情報処理装置。
【請求項７】
座席を他の座席と結合させて結合座席を構成するための結合可能座席情報を含む前記座席の属性情報である第一の属性情報を記録する第一の記録手段と、予約の属性情報である第二の属性情報を記録する第二の記録手段とを備え、座席に対して予約の割り当て処理を行う情報処理装置における情報処理方法であって、
割り当て手段が、前記第一の属性情報及び第二の属性情報に従って、前記予約を前記座席に対して割り当てる割り当て処理を行う割り当てステップを備え、
前記割り当てステップによる前記割り当て処理で割り当て対象となる座席には前記結合可能条件に基づいて結合された結合座席が含まれることを特徴とする情報処理方法。
【請求項８】
座席に対して予約の割り当て処理を行うコンピュータを、
前記座席を他の座席と結合させて結合座席を構成するための結合可能座席情報を含む前記座席の属性情報である第一の属性情報を記録する第一の記録手段と、
前記予約の属性情報である第二の属性情報を記録する第二の記録手段と、
前記第一の属性情報及び第二の属性情報に従って、前記予約を前記座席に対して割り当てる割り当て処理を行う割り当て手段として機能させるものであり、
前記割り当て手段による前記割り当て処理で割り当て対象となる座席には、前記結合可能条件に基づいて結合された結合座席が含まれることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、飲食店において座席に来客を割り当てる等、リソース（例えば座席）にオブジェクト（例えば予約客、来客）を時系列に割り当てる情報処理装置、情報処理方法、プログラムに関する。
【背景技術】
【０００２】
従来、飲食店などの予約受け付けや来客時の席の割り当て（以下「予約等」という）は、店員が予約を受け付ける度（または来客がある度）に座席を管理している表などを参照し、空いている座席、時間や隣の座席の使用状況、予約状況等、様々な条件を考慮して予約等の可否を判断していた。
【０００３】
また、予約の受付と来客を両方管理しなければならないため、忙しい時間帯には予約等の可否の判断をするまでに多大な時間と経験が必要となっているのが現状である。そのため、予約等の可否判断は、属人的になってしまっており、店員の経験によっては、座席が余っているにもかかわらず、予約等を不可能と判断してしまうことなど問題もあった。そこで、客席の管理に関する発明として、特許文献１や特許文献２に開示されている発明がなされている。
【０００４】
特許文献１には、予約が重複した場合、重複した各予約申込の許容時間内で利用時間を調整して、予約を取りやすくすることが可能となる発明が記載されている。
【０００５】
特許文献２には、列車の座席指定をする際、利用開始時に最適な座席割り当てを行ない、座席の効率に利用することが可能となる発明が記載されている。
【特許文献１】特開２００６−２０９４５９号公報
【特許文献２】特開平１１−２１３１８１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら、特許文献１に記載の発明においては、利用時間の調整のみを対象としており、その他の情報を変更することで予約可能となるかの検証がされていない。また、前後の予約も変更対象となる為、一度確定した情報を再度顧客へ通知する必要が発生する。
【０００７】
特許文献２に記載の「座席指定装置および座席指定方法」においては、列車の座席指定を想定している為、飲食店に良く見られる座席をつなげることによって割り当て座席数の調整を行うことが考慮されていない。
【０００８】
本発明は、上記の問題点を解決するためになされたもので、本発明は、座席に対する予約の割り当てを行う際に、座席を結合させて割り当て座席数の調整を行うことを含めた形での割り当てを好適に行うことが可能な情報処理装置、情報処理方法およびプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００９】
本発明は、座席に対して予約の割り当て処理を行う情報処理装置であって、前記座席を他の座席と結合させて結合座席を構成するための結合可能座席情報を含む前記座席の属性情報である第一の属性情報を記録する第一の記録手段と、前記予約の属性情報である第二の属性情報を記録する第二の記録手段と、前記第一の属性情報及び第二の属性情報に従って、前記予約を前記座席に対して割り当てる割り当て処理を行う割り当て手段とを備え、前記割り当て手段による前記割り当て処理で割り当て対象となる座席には、前記結合可能条件に基づいて結合された結合座席が含まれることを特徴とする。
【発明の効果】
【００１０】
本発明によれば、座席に対する予約の割り当てを行う際に、座席を結合させて割り当て座席数の調整を行うことを含めた形での割り当てを好適に行うことが可能になる。
【発明を実施するための最良の形態】
【００１１】
〔第１実施形態〕
以下、図面を参照して、本発明の実施形態を詳細に説明する。
【００１２】
図１は、本発明の実施形態の座席最適配置処理を行う情報処理装置の機能構成を示す図である。
【００１３】
図１において、１００は本発明の情報処理装置であり、パーソナルコンピュータ等で構成される。この情報処理装置１００は、以下の機能を備えている。
【００１４】
Ｓ-０１は予約処理部であり、端末利用者が入力装置Ｓ-０７で入力した内容を元に予約内容を受付、予約可、不可の結果を表示装置Ｓ-０６に表示する機能部に対応する。
【００１５】
Ｓ-０２は延長処理部であり、延長警告時間（予約の終了時間の所定時間前）に達した来客の、延長可、不可の結果を表示装置（Ｓ-０６）に表示する機能部に対応する。
【００１６】
Ｓ-０３は予約割り当て処理部であり、予約処理部Ｓ-０１において、予約情報の人数や利用時間などの振れ幅を複数の組み合わせで試行し、割り当て可能な座席の組み合わせを計算する機能部に対応する。
【００１７】
Ｓ-０４は延長割り当て処理部であり、延長処理部Ｓ-０２において、延長時間を複数時間で試行し、割り当て可能な延長時間を計算する機能部に対応する。
【００１８】
Ｓ-０５は割り当て最適化処理部であり、予約割り当て処理部Ｓ-０３、延長割り当て処理部Ｓ-０４で設定された予約情報について、座席の合致度や接続可能なテーブルなどを考慮して割り当て可能か判断する機能部に対応する。
【００１９】
Ｓ-０６は表示装置であり、液晶ディスプレイ等の予約状況や割り当て結果などの表示を行う表示装置である。
【００２０】
Ｓ-０７は入力装置であり、キーボード、マウスなどの予約情報等を入力する入力装置である。
【００２１】
Ｓ-０８は各テーブル群であり、各処理によって参照、登録される各テーブル群であり、詳細は後述する図３で示す。
【００２２】
図２は、図１の情報処理装置１００のハードウェアの構成の一例を示す図である。
【００２３】
ＣＰＵ２０１は、システムバス２０４に接続される各デバイスやコントローラを統括的に制御する。また、ＲＯＭ２０２あるいは外部メモリ２１１には、ＣＰＵ２０１の制御プログラムであるＢＩＯＳ（Basic Input / Output System）やオペレーティングシステムプログラム（以下、ＯＳ）や、情報処理装置１０１が実行する機能を実現するために必要な後述する各種プログラム等が記憶されている。
【００２４】
ＲＡＭ２０３は、ＣＰＵ２０１の主メモリ、ワークエリア等として機能する。ＣＰＵ２０１は、処理の実行に際して必要なプログラム等をＲＡＭ２０３にロードして、プログラムを実行することで各種動作を実現するものである。
【００２５】
また、入力コントローラ（入力Ｃ）２０５は、入力装置（キーボードやポインティングデバイス）Ｓ-０７からの入力を制御する。
【００２６】
ビデオコントローラ（ＶＣ）２０６は、表示装置（ＣＲＴディスプレイ（ＣＲＴ）や液晶ディスプレイ等）Ｓ-０６への表示を制御する。
【００２７】
メモリコントローラ（ＭＣ）２０７は、ブートプログラム、ブラウザソフトウエア、各種のアプリケーション、フォントデータ、ユーザファイル、編集ファイル、各種データ等を記憶するハードディスク（ＨＤ）やフロッピ（登録商標）（ＦＤ）ディスク或いはＰＣＭＣＩＡカードスロットにアダプタを介して接続されるコンパクトフラッシュ（登録商標）メモリ等の外部メモリ２１１へのアクセスを制御する。
【００２８】
通信Ｉ／Ｆコントローラ（通信Ｉ／ＦＣ）２０８は、ネットワークを介して、外部機器と接続・通信するものであり、ネットワークでの通信制御処理を実行する。例えば、ＴＣＰ／ＩＰを用いたインターネット通信等が可能である。
【００２９】
なお、ＣＰＵ２０１は、例えばＲＡＭ２０３内の表示情報用領域へアウトラインフォントの展開（ラスタライズ）処理を実行することにより、ＣＲＴ２１０上での表示を可能としている。また、ＣＰＵ２０１は、ＣＲＴ２１０上の不図示のマウスカーソル等でのユーザ指示を可能とする。
【００３０】
本発明を実現するための各種プログラムは外部メモリ２１１に記録されており、必要に応じてＲＡＭ２０２にロードされることによりＣＰＵ２０１によって実行されるものである。即ち、図１に示した予約処理部Ｓ-０１，延長処理部Ｓ-０２，予約割り当て処理部Ｓ-０３，延長割り当て処理部Ｓ-０４，割り当て最適化処理部Ｓ-０５は、ＣＰＵ２０１が外部メモリ２１１に格納されるプログラムをＲＡＭ２０３にロードして実行することにより実現される機能部に対応する。
【００３１】
さらに、本発明に係わるプログラムが用いる定義ファイル及び各種情報テーブルは外部メモリ２１１に格納されている。即ち、図１に示した各テーブル群Ｓ-０８は、外部メモリ２１１内に記憶される。
【００３２】
次に、図３を用いて、図１のＳ-０８に示したテーブル群の各テーブル構成について説明する。
【００３３】
図３は、座席最適配置システムのテーブル構成を示す図である。
【００３４】
図３において、Ｄ-０１は共通テーブルであり、開始時間、閉店時間、最大延長時間、利用時間間隔、延長警告時間から構成される。なお、開始時間は、店舗の営業開始時間を表す。閉店時間は、店舗の営業終了時間を表す。最大延長時間は、延長処理において割り当てる延長時間の最大値を表す。利用時間間隔は、延長処理において、加算される延長時間の間隔を表す。延長警告時間は、延長処理において延長処理を開始する利用時間終了前の時間を表す。
【００３５】
Ｄ-０２は座席情報テーブルであり、座席Ｎｏ、人数、優先順位、接続可能座席Ｎｏ、接続時人数、座席種別、ロケーション種別等の座席の属性情報から構成される。なお、座席Ｎｏは、座席を識別可能な一意な番号を表す。人数は、座席に割り当て可能な人数を表す。優先順位は、全座席の中で割り当てる際に考慮する優先順位を表す。この優先順位は、同条件の複数の座席が割り当て可能な場合、優先順位の高い座席を割り当てる際に使用される。接続可能座席Ｎｏは、接続可能な座席の座席Ｎｏを表す。即ち、接続可能座席Ｎｏは、この座席を他の座席と結合させて結合座席を構成するための結合可能座席情報に対応する。接続時人数は、接続可能座席に接続した際に割り当て可能な人数を表す。座席種別は、ロケーション種別は座席の特性を示す情報を表す。
【００３６】
Ｄ-０３は予約情報テーブルであり、予約Ｎｏ、人数、人数振れ幅、人数優先順位、開始時間、開始時間振れ幅、開始時間優先順位、利用時間、利用時間振れ幅、利用時間優先順位、希望座席種別、希望ロケーション種別、優先希望等の予約の属性情報から構成される。予約Ｎｏは予約情報を一意に識別可能な番号を表す。人数は、予約したい人数を表す。人数振れ幅は、変更可能な範囲の人数を表す。人数優先順位は、人数、開始時間、利用時間の中で人数の優先順位を表す。開始時間は、予約の開始時間を表す。開始時間振れ幅は変更可能な範囲の開始時間を表す。開始時間優先順位は、人数、開始時間、利用時間の中で開始時間の優先順位を表す。利用時間は、座席の利用時間を表す。利用時間振れ幅は、変更可能な範囲の利用時間を表す。利用時間優先順位は、人数、開始時間、利用時間の中で利用時間の優先順位を表す。希望座席種別は、座席種別の中で希望の座席種別を表す。希望ロケーション種別は、ロケーション種別の中で希望のロケーション種別を表す。優先希望は、希望座席種別、希望ロケーション種別の中で優先する種別を表し、合致度の計算で使用する。
【００３７】
Ｄ-０４は確定予約情報テーブルであり、予約Ｎｏ、人数、開始時間、利用時間、延長時間、座席種別、ロケーション種別から構成される。予約Ｎｏは、確定した予約情報テーブルの予約Ｎｏを表す。人数、開始時間、利用時間、延長時間、座席種別、ロケーション種別は、確定したそれぞれのロケーション情報を表す。
【００３８】
Ｄ-０５は仮予約情報テーブルであり、予約Ｎｏ、仮予約Ｎｏ、人数、開始時間、利用時間、延長時間、座席種別、ロケーション種別から構成される。予約Ｎｏは仮予約情報として割り当てた予約情報テーブルの予約Ｎｏを表す。仮予約Ｎｏは、仮予約情報を一意に識別可能な番号を表す。人数、開始時間、利用時間、延長時間、座席種別、ロケーション種別は、仮予約情報のそれぞれ情報を表す。
【００３９】
Ｄ-０６は確定座席情報テーブルであり、座席Ｎｏ、予約Ｎｏから構成される。座席Ｎｏは、確定した予約情報に割り当てられた座席情報テーブルの座席Ｎｏを表す。予約Ｎｏは、確定した座席Ｎｏに割り当てた予約情報テーブルの予約Ｎｏを表す。この確定座席情報テーブルＤ-０６により、確定した座席情報と予約情報の紐付けを行う。
【００４０】
Ｄ-０７は仮予約座席情報テーブルであり、座席Ｎｏ、予約Ｎｏ、仮予約Ｎｏ構成される。座席Ｎｏは、仮予約情報に割り当てられた座席情報テーブルの座席Ｎｏを表す。予約Ｎｏは、仮予約情報に割り当てられた予約情報テーブルの予約Ｎｏを表す。仮予約Ｎｏは、仮予約情報テーブルの仮予約Ｎｏを表す。
【００４１】
Ｄ-０８は予約割り当て候補情報テーブルであり、予約Ｎｏ、仮予約Ｎｏ、候補Ｎｏ、人数、開始時間、利用時間、延長時間、座席種別、ロケーション種別から構成される。予約Ｎｏは、予約割り当て候補として割り当てた予約情報テーブルの予約Ｎｏを表す。仮予約Ｎｏは、予約割り当て候補として割り当てた仮予約情報テーブルの仮予約Ｎｏを表す。候補Ｎｏは、仮予約Ｎｏに対して複数の候補が存在する場合に、候補を一意に識別可能な番号を表す。人数、開始時間、利用時間、延長時間、座席種別、ロケーション種別は、割り当て可能候補のそれぞれの情報を表す。
【００４２】
Ｄ-０９は仮予約座席候補情報テーブルであり、座席Ｎｏ、予約Ｎｏ、仮予約Ｎｏ、候補Ｎｏから構成される。座席Ｎｏは、仮予約情報に割り当てられた座席情報テーブルの座席Ｎｏを表す。予約Ｎｏは、仮予約情報に割り当てられた予約情報テーブルの予約Ｎｏを表す。仮予約Ｎｏは、仮予約情報テーブルの仮予約Ｎｏを表す。候補Ｎｏは、仮予約Ｎｏに対して複数の候補が存在する場合に、候補を一意に識別可能な番号を表す。
【００４３】
なお、以上に示した各テーブルの構成はあくまでも一例であり、このほかの構成を採用することももちろん可能である。
【００４４】
次に、図４を参照して、座席最適配置システムシステムの予約処理のフローチャートについて説明する。
【００４５】
図４は、本発明の実施形態の座席最適配置システムの予約処理のフローチャートを示す図である。この処理は、情報処理装置１００のＣＰＵ２０１が外部メモリ２１１に記録されているプログラムをＲＡＭ２０３にロードして実行することにより実現されるものであり、図１の予約処理部Ｓ-０１の機能に対応する。
【００４６】
まず、表示装置Ｓ-０６に表示される不図示の入力画面から、新規の予約旨の指示が入力装置Ｓ-０７から入力されると、情報処理装置１００のＣＰＵ２０１本フローチャートの処理を開始する。
【００４７】
まず、ＣＰＵ２０１は、不図示の入力画面に対して行われた、図３の予約情報Ｄ-０３にあるような、人数、人数振れ幅、人数優先順位、開始時間、開始時間振れ幅、開始時間優先順位、利用時間、利用時間振れ幅、利用時間優先順位希望座席種別、希望ロケーション種別、優先希望情報などを入力データを取得する（ステップＦ-００１）。
【００４８】
次に、ＣＰＵ２０１は、Ｆ-００１で入力された情報をもとに予約割り当て処理を行う（ステップＦ-００２）。Ｆ-００２の予約割り当て処理の詳細については図６を参照して後述する。
【００４９】
その後ＣＰＵ２０１は、Ｆ-００２に示した予約割り当て処理（図６）で設定された確定フラグがオンかどうかを判断する（Ｆ-００３）。
【００５０】
なお、確定フラグがオンの場合とは、予約割り当て処理において、予約情報の希望通りの座席が割り当てられた場合に対応する。一方、確定フラグがオフの場合とは、予約割り当て処理において、予約情報の希望通り座席が割り当てられなかった場合に対応する。この場合、希望通りでないが予約情報Ｄ-０３内の各振れ幅（人数振れ幅、開始時間振れ幅、利用時間振れ幅等）に基づいて条件を変え、複数件の割り当て可能候補が算出される（０件の場合もある）。
【００５１】
ステップＦ-００３において、確定フラグがオンであると判断した場合、ＣＰＵ２０１は、希望座席が予約可能である旨を表示装置Ｓ-０７に表示し、割り当て可能候補として、予約情報Ｄ-０３を表示装置Ｓ-０７に表示し（ステップＦ-００８）、仮予約座席情報Ｄ-０７で確定予約座席情報Ｄ-０６を更新し、仮予約情報Ｄ-０５で確定予約情報Ｄ-０４を更新し（ステップＦ-００９）、本フローチャートの処理を終了する。
【００５２】
一方、ステップＦ-００３において、確定フラグがオンでない（つまり確定フラグがオフである）と判定した場合には、ＣＰＵ２０１は、割り当て可能候補（条件を変えれば割り当てを行うことが可能な候補（予約割り当て候補情報Ｄ-０８））の件数が１件以上かどうか判断する（ステップＦ-００４）。
【００５３】
そして、Ｆ-００４において、１件以上割り当て可能候補が存在すると判定した場合には、ＣＰＵ２０１は、表示装置Ｓ-０６に割り当て可能候補（予約割り当て候補情報Ｄ-０８，仮予約座席候補情報Ｄ-０９）の表示を行う（ステップＦ-００５）。
【００５４】
次に、ステップＦ-００６において、ＣＰＵ２０１は、入力装置Ｓ-０７によりＦ-００４で表示された割り当て可能候補の中から任意の候補を１つ選択させ、該選択された候補に対応する予約割り当て候補情報Ｄ-０８，仮予約座席候補情報Ｄ-０９で仮予約情報Ｄ-０５，仮予約座席情報Ｄ-０７を更新して予約内容を決定し、該仮予約座席情報Ｄ-０７で確定予約座席情報Ｄ-０６を更新し、該仮予約情報Ｄ-０５で確定予約情報Ｄ-０４を更新し、本フローチャートの処理を終了する。
【００５５】
一方、ステップＦ-００４において、割り当て可能候補が０件と判断した場合、ＣＰＵ２０１は、表示装置Ｓ-０６に予約不可の旨を表示し（ステップＦ-００７）、本フローチャートの処理を終了する。
【００５６】
次に、図５を参照して、座席最適配置システムシステムの延長処理のフローチャートについて説明する。
【００５７】
図５は、本発明の実施形態の座席最適配置システムの延長処理のフローチャートを示す図である。この処理は、情報処理装置１００のＣＰＵ２０１が外部メモリ２１１に記録されているプログラムをＲＡＭ２０３にロードして実行することにより実現されるものであり、図１の延長処理部Ｓ-０２の機能に対応する。
【００５８】
まず、表示装置Ｓ-０６に表示される不図示の入力画面から、いずれかの予約Ｎｏを指定した予約の延長指示が入力装置Ｓ-０７から入力されると、情報処理装置１００のＣＰＵ２０１本フローチャートの処理を開始する。
【００５９】
まず、ステップＦ-１０１において、ＣＰＵ２０１は、延長指定された予約Ｎｏに対応する予約情報Ｄ-０３内の利用時間の残時間が、共通情報Ｄ-０１内の延長警告時間に該当するかどうかを判定する。図３に示した例では、利用時間の残時間が３０分以内の場合に、延長警告時間に該当すると判断する。
【００６０】
そして、ステップＦ-１０１において、延長指定された予約Ｎｏに対応する予約情報Ｄ-０３内の利用時間の残時間が共通情報Ｄ-０１内の延長警告時間に該当しないと判定した場合には、ＣＰＵ２０１は、不図示のステップで延長警告時間外である旨を表示装置Ｓ-０６に表示し、そのまま本フローチャートの処理を終了する。
【００６１】
一方、ステップＦ-１０１において、延長指定された予約Ｎｏに対応する予約情報Ｄ-０３内の利用時間の残時間が共通情報Ｄ-０１内の延長警告時間に該当すると判定した場合には、ＣＰＵ２０１は、ステップＦ-１０２に処理を進める。
【００６２】
ステップＦ-１０２では、ＣＰＵ２０１は、延長割り当て処理を行う。延長割り当て処理については図７を参照して後述する。
【００６３】
次に、ステップＦ-１０３において、ＣＰＵ２０１は、Ｆ-１０２の延長割り当て処理（図７）で延長可能候補（予約割り当て候補情報Ｄ-０８）の件数が１件以上算出されたか否かを判定する。
【００６４】
そして、ステップＦ-１０３において、延長割り当て処理で延長可能候補の件数が１件以上算出されたと判定した場合には、ＣＰＵ２０１は、ステップＦ-１０３に処理を進める。
【００６５】
ステップＦ-１０４では、ＣＰＵ２０１は、表示装置Ｓ-０６に延長可能候補（予約割り当て候補情報Ｄ-０８，仮予約座席候補情報Ｄ-０９）を全て表示する。
【００６６】
次に、ステップＦ-１０５において、ＣＰＵ２０１は、入力装置Ｓ-０７によりＦ-００４で表示された延長可能候補の中から任意の候補を１つ選択させ、該選択された候補に対応する予約割り当て候補情報Ｄ-０８，仮予約座席候補情報Ｄ-０９で仮予約情報Ｄ-０５，仮予約座席情報Ｄ-０７を更新して予約内容を決定し、該仮予約座席情報Ｄ-０７で確定予約座席情報Ｄ-０６を更新し、該仮予約情報Ｄ-０５で確定予約情報Ｄ-０４を更新し、本フローチャートの処理を終了する。
【００６７】
一方、ステップＦ-１０３において、延長可能候補が０件と判断した場合、ＣＰＵ２０１は、表示装置Ｓ-０６に延長不可の旨を表示し（ステップＦ-１０６）、本フローチャートの処理を終了する。
【００６８】
なお、延長のみでなく、人数の変更等のように、予約の属性に変更が加えられた場合にも、該予約の属性の変更に対して、延長処理と同様の処理を実行して、予約属性変更可能かどうか判断するように構成してもよい。
【００６９】
まず、表示装置Ｓ-０６に表示される不図示の入力画面から、いずれかの予約Ｎｏを指定した予約の延長指示が入力装置Ｓ-０７から入力されると、情報処理装置１００のＣＰＵ２０１本フローチャートの処理を開始する。
【００７０】
次に、図６を参照して、図４のステップＦ-００２に示した予約割り当て処理のフローチャートについて説明する。
【００７１】
図６は、本発明の実施形態の座席最適配置システムの予約割り当て処理のフローチャートを示す図である。この処理は、情報処理装置１００のＣＰＵ２０１が外部メモリ２１１に記録されているプログラムをＲＡＭ２０３にロードして実行することにより実現されるものであり、図１の予約割り当て処理部Ｓ-０３の機能に対応する。
【００７２】
まず、ＣＰＵ２０１は、確定グラグをオフに初期化し、本フローチャートの処理を開始する。
【００７３】
まず、ステップＦ-２０１において、ＣＰＵ２０１は、予約情報Ｄ-０３の人数、開始時間、利用時間、希望座席種別、希望ロケーション種別を仮予約情報Ｄ-０５にセットする。
【００７４】
その後、ステップＦ-２０２において、ＣＰＵ２０１は、仮予約情報と確定予約情報を元に割り当て最適化処理を行う。なお、ステップＦ-２０２の割り当て最適化処理は図８を参照して後述する。
【００７５】
次に、ステップＦ-２０３において、ＣＰＵ２０１は、Ｆ-２０２の割り当て最適化処理（図８）により設定される結果フラグが割り当て可かどうか判定する。
【００７６】
なお、結果フラグが割り当て可の場合とは、割り当て最適化処理おいて、Ｆ-２０１で仮予約情報Ｄ-０５に設定された内容で座席の割り当てができた場合に対応する。一方、結果フラグが割り当て可でない場合とは、割り当て最適化処理おいて、Ｆ-２０１で仮予約情報Ｄ-０５に設定された内容で座席の割り当てができなかった場合に対応する。
【００７７】
ステップＦ-２０３において、結果フラグが割り当て可であると判定した場合には、ＣＰＵ２０１は、人数、開始時間、利用時間の各振れ幅を一度もセットしていないか（本来の割り当て条件を変更していないか）を判断する（ステップＦ-２０４）。
【００７８】
そして、ステップＦ-２０３において、振れ幅を一度もセットしていないと判定した場合には、ＣＰＵ２０１は、予約情報の希望内容で座席の割り当てが可能であることを表す確定グラグをオンにセットし（Ｆ-２０８）、本フローチャートの処理を終了する。
【００７９】
一方、ステップＦ-２０３において、振れ幅を一度でもセットしたと判定した場合には、ＣＰＵ２０１は、Ｆ-２０２の割り当て最適化処理（図８）により割り当てられた予約（仮予約情報Ｄ-０５，仮予約座席情報Ｄ-０７）を予約割り当て候補情報Ｄ-０８，仮予約座席候補情報Ｄ-０９に追加する（ステップＦ-２０５）。
【００８０】
次に、ＣＰＵ２０１は、予約情報の人数、開始時間、利用時間の各振れ幅を全て予約情報にセットしたかどうか判断する（ステップＦ-２０６）。なお、人数の振れ幅は１人ずつ、開示時間，利用時間の振れ幅は、共通情報Ｄ-０１内の利用時間間隔ずつセットしていくものとする。
【００８１】
そして、ステップＦ-２０６で、まだ各振れ幅を全て予約情報にセットしていないと判定した場合には、ステップＦ-２０７に移行する。
【００８２】
ステップＦ-２０７では、ＣＰＵ２０１は、優先順位の数値が小さい（優先順位が高い）振れ幅で未セットの振れ幅を予約情報にセットする。セット後、ＣＰＵ２０１は、ステップＦ-２０１に処理を戻し、再度、仮予約情報にセットされ割り当て最適化処理を実行する。
【００８３】
一方、ステップＦ-２０６で、既に各振れ幅を全て予約情報にセットしたと判定した場合には、ＣＰＵ２０１は、本フローチャートの処理を終了する。
【００８４】
次に、図７を参照して、図５のステップＦ-１０２に示した延長割り当て処理のフローチャートについて説明する。
【００８５】
図７は、本発明の実施形態の座席最適配置システムの予約割り当て処理のフローチャートを示す図である。この処理は、情報処理装置１００のＣＰＵ２０１が外部メモリ２１１に記録されているプログラムをＲＡＭ２０３にロードして実行することにより実現されるものであり、図１の延長割り当て処理部Ｓ-０４の機能に対応する。
【００８６】
まず、ステップＦ-３０１において、ＣＰＵ２０１は、確定予約情報Ｄ-０４の延長時間に、共通情報Ｄ-０１の利用時間間隔を加算して、確定予約情報Ｄ-０４を仮予約情報Ｄ-０５をセットする。
【００８７】
そして、ＣＰＵ２０１は、仮予約情報Ｄ-０５と確定予約情報Ｄ-０４を元に割り当て最適化処理を行い、延長利用の候補があるかを割り当て最適化処理を行うことで探索する（ステップＦ３０２）。なお、Ｆ３０２の割り当て最適化処理は図８を参照して後述する。
【００８８】
割り当て最適化処理終了後、ＣＰＵ２０１は、結果フラグが割り当て可かどうか判断する（ステップＦ３０３）。結果フラグが割り当て可の場合、設定した延長時間で座席割り当てが可能であることを表す。
【００８９】
ステップＦ３０３で結果フラグが割り当て可であると判断した場合、ＣＰＵ２０１は、Ｆ-２０２の割り当て最適化処理（図８）により割り当てられた予約（仮予約情報Ｄ-０５，仮予約座席情報Ｄ-０７）を予約割り当て候補情報Ｄ-０８，仮予約座席候補情報Ｄ-０９に追加する（ステップＦ-３０４）。
【００９０】
次に、ステップＦ３０５で、ＣＰＵ２０１は、仮予約情報Ｄ-０５の延長時間が共通情報Ｄ-０１の最大延長時間に達したか否かを判定し、まだ達していないと判定した場合には、ステップＦ-３０１に処理を戻す。
【００９１】
一方、ステップＦ３０５で、仮予約情報Ｄ-０５の延長時間が共通情報Ｄ-０１の最大延長時間に達したと判定した場合には、本フローチャートの処理を終了する。
【００９２】
次に、図８を参照して、図６のステップＦ-２０２，図７のステップＦ３０２に示した割り当て最適化処理のフローチャートについて説明する。
【００９３】
図８は、本発明の実施形態の座席最適配置システムの割り当て最適化処理のフローチャートを示す図である。この処理は、情報処理装置１００のＣＰＵ２０１が外部メモリ２１１に記録されているプログラムをＲＡＭ２０３にロードして実行することにより実現されるものであり、図１の割り当て最適化処理部Ｓ-０５の機能に対応する。
【００９４】
まず、ＣＰＵ２０１は、図示しないステップにおいて、仮予約座席情報Ｄ-０７をリセットし、本フローチャートの処理を開始する。
【００９５】
まず、ステップＦ-４０１において、ＣＰＵ２０１は、予約情報セット（確定予約情報Ｄ-０４、仮予約情報Ｄ-０５）を開始時間の早い順にソートする。
【００９６】
その後、ＣＰＵ２０１は、予約情報セットの中で、開始時刻が現在時刻より前の確定座席情報Ｄ-０６を仮予約座席情報Ｄ-０７にセットする（ステップＦ４０２）。即ち、開始時刻が現在時刻より前の場合、変更不可能な座席となるので、確定座席をそのまま仮予約座席情報にセットして、このような予約を確定する。
【００９７】
その後、ステップＦ-４０３において、ＣＰＵ２０１は、ステップＦ４０４〜Ｆ４１２までの処理を、予約情報セットが終了するまで、繰り返し行うように制御する。
【００９８】
まず、ステップＦ４０４において、ＣＰＵ２０１は、予約情報セットの中で、開始時刻が現在時刻より後の予約情報を取り出す。なお、図示しないが、ステップＦ４０４において、予約情報セットの中で、開始時刻が現在時刻より後の予約情報であって、未処理の予約情報が存在しなくなった場合には、ＣＰＵ２０１は、全ての予約情報セットについて割り当て可能であったと判断して、ステップＦ-４１３に処理を進め、結果フラグに割り当て可をセットし、本フローチャートの処理を終了する。
【００９９】
ステップＦ４０４で開始時刻が現在時刻より後の予約情報を取り出すと、次に、ＣＰＵ２０１は、仮予約座席情報Ｄ-０７と座席情報Ｄ-０２から、ステップＦ４０４で取り出した予約情報の開始時間から利用時間まで空席の座席を検索する（ステップＦ４０５）。
【０１００】
次に、ステップＦ４０６において、ＣＰＵ２０１は、Ｆ４０５の検索結果で、空席が１件以上あるか判定する。
【０１０１】
そして、ステップＦ４０６において、空席が１件も存在しないと判断した場合、ＣＰＵ２０１は、割り当て不可能な予約情報があったと判断して、ステップＦ４１４に処理を進め、結果フラグに割り当て不可をセットし、本フローチャートの処理を終了する。
【０１０２】
一方、ステップＦ４０６において、空席が１件以上存在すると判断した場合、ＣＰＵ２０１は、ステップＦ４０７に処理を進める。
【０１０３】
ステップＦ４０７では、ＣＰＵ２０１は、空席の合致順位の順位が高い順にソートし、合致順位が高い空席から割り当て判断を行うようにする。図９を参照して合致順位の算出方法について説明する。
【０１０４】
図９は、合致順位の算出方法を説明する図である。
【０１０５】
図９の９０１に示すように、予約情報として、希望座席種別：カウンター、希望ロケーション：窓際、優先希望：「ロケーション種別」が設定されていたとする。また、図９に示す座席Ｎｏ１〜５の座席が空席として検索されたとする。
【０１０６】
まず、ＣＰＵ２０１は、空席として検索された座席の中から、予約情報の優先希望に合致した座席を合致順位の上位にソートする。図９に示した例は、優先希望となる希望ロケーションに「窓際」が設定されているため、ロケーション種別が「窓際」の席が合致順位の上位にソートされる。即ち、座席Ｎｏ１〜４が合致順位の上位にソートされる。
【０１０７】
さらに、ＣＰＵ２０１は予約情報内で優先希望でない方の希望に合致した座席を、さらに合致順位の上位にソートする。図９に示した例は、優先希望でない希望座席種別に「カウンター」が設定されているため、座席種別が「カウンター」の席が合致順位の上位にソートされる。即ち、座席Ｎｏ３，４が合致順位の上位にソートされる。またこの図では説明していないが、当然空席の合致順位の算出に当たっては、予約の人数を満たす座席が合致順位の上位にソートされることになる。
【０１０８】
さらに、ＣＰＵ２０１は優先順位の高い順に（優先順位を示す番号の一番小さい順に）座席をソートする。即ち、図９に示した例は、座席Ｎｏ３，座席Ｎｏ４，座席Ｎｏ１，座席Ｎｏ２，座席Ｎｏ５のように合致順位の高い順にソートされる。
【０１０９】
以下、図８のフローチャートの説明に戻る。
【０１１０】
次に、ステップＦ-４０８において、ＣＰＵ２０１は、全ての空席に対して、合致順位順に、ステップＦ-４０９〜Ｆ-４１１の処理を実行するように制御する。
【０１１１】
まず、ステップＦ-４０９において、ＣＰＵ２０１は、Ｆ-４０４で取り出した予約情報の人数（予約人数）が処理対象の座席の人数（座席人数）以下か判定し、予約人数が座席人数を越えていると判定した場合には、ステップＦ-４１０に処理を進める。
【０１１２】
ステップＦ-４１０では、ＣＰＵ２０１は、処理対象の座席が接続可能座席Ｎｏに対応する座席が空席か否か判定し、空席でないと判定した場合には、ステップＦ-４０８に処理を戻す。
【０１１３】
一方、ステップＦ-４１０において、処理対象の座席が接続可能座席Ｎｏに対応する座席が空席であると判定した場合には、ＣＰＵ２０１は、ステップＦ-４１に処理を進める。
【０１１４】
ステップＦ-４１１では、ＣＰＵ２０１は、予約人数が処理対象の座席の接続時人数（接続時座席人数）以下か判定し、予約人数が接続時座席人数を越えていると判定した場合には、ステップＦ-４０８に処理を戻す。
【０１１５】
そして、ＣＰＵ２０１は、全ての空席に対して、合致順位順に、ステップＦ-４０９〜Ｆ-４１１の処理を終了したと判定した場合には、割り当て不可能な予約情報があったと判断して、ステップＦ−４１４に処理を進め、結果フラグに割り当て不可をセットし、本フローチャートの処理を終了する。
【０１１６】
一方、ステップＦ-４０９において、予約人数が座席人数以下であると判定した場合には、又は、ステップＦ-４１１において、予約人数が接続時座席人数以下であると判定した場合には、ＣＰＵ２０１は、ステップＦ-４１２に処理を進め、処理対象の座席を割り当て可能な座席情報として、仮予約座席情報Ｄ-０７にセットし、ステップＦ-４０３に処理を戻す。
【０１１７】
そして、ＣＰＵ２０１が、ステップＦ４０４〜Ｆ４１２までの処理を、予約情報セットが終了するまで、繰り返し行ったと判定した場合には、全ての予約情報セットについて割り当て可能であったと判断して、ステップＦ-４１３に処理を進め、結果フラグに割り当て可をセットし、本フローチャートの処理を終了する。
【０１１８】
以上説明したように、情報処理装置１００によれば、座席に対する来客予約の割り当てを行う際に、座席の特定条件が変更される状況下にあっても（例えば座席数の結合による増加）、制約条件（利用時間や人数）を満たす形での割り当てを好適に行うことができる。
【０１１９】
即ち、座席に対する予約の割り当てを行う際に、座席を結合させて割り当て座席数の調整を行うことを含めた形での割り当てを好適に行うことが可能になる。
【０１２０】
本実施の形態では、各座席に結合可能座席情報を設定している例について説明したが、結合後の座席情報の全組み合わせを結合座席情報として登録しておき、当該結合座席に対して予約の割当処理を行う手法をとっても勿論かまわない。その際には、結合座席を構成する座席の一部が既に予約に割当済みの場合には、当該結合座席には割当を行うことが出来ない。また、通常座席と結合座席が同一の属性情報を有している場合には、結合座席は通常座席より予約と座席の合致順位が下位になるようにソートすることになる。
【０１２１】
なお、利用時間が終了する前に、利用が終了した場合（客が帰ってしまった場合）には、該予約に対応する確定予約情報Ｄ-０４を削除するようにするものとする。
【０１２２】
なお、本実施形態では、飲食店等の座席に対して来客予約を割り当てる場合について説明した。しかし、リソースに対してオブジェクトを割り当てる構成であれば、リソース，オブジェクトの組合せは、座席，来客予約の組合せに限定されるものではなく、どのような組合せであってもよい。
【０１２３】
なお、上述した各種データの構成及びその内容はこれに限定されるものではなく、用途や目的に応じて、様々な構成や内容で構成されることは言うまでもない。
【０１２４】
以上、一実施形態について示したが、本発明は、例えば、システム、装置、方法、プログラムもしくは記録媒体等としての実施態様をとることが可能であり、具体的には、複数の機器から構成されるシステムに適用しても良いし、また、一つの機器からなる装置に適用しても良い。
【０１２５】
以上示したように、本発明によれば、リソース（例えば座席）に対するオブジェクト（例えば予約や来客）の割り当てを行う際に、リソースの特定条件が変更される状況下にあっても（例えば座席数の結合による増加）、制約条件を満たす形での割り当てを好適に行うことが可能になる。
【０１２６】
以下、図１０に示すメモリマップを参照して本発明に係る情報処理装置で読み取り可能なデータ処理プログラムの構成について説明する。
【０１２７】
図１０は、本発明に係る情報処理装置で読み取り可能な各種データ処理プログラムを格納する記録媒体（記憶媒体）のメモリマップを説明する図である。
【０１２８】
なお、特に図示しないが、記録媒体に記憶されるプログラム群を管理する情報、例えばバージョン情報，作成者等も記憶され、かつ、プログラム読み出し側のＯＳ等に依存する情報、例えばプログラムを識別表示するアイコン等も記憶される場合もある。
【０１２９】
さらに、各種プログラムに従属するデータも上記ディレクトリに管理されている。また、インストールするプログラムやデータが圧縮されている場合に、解凍するプログラム等も記憶される場合もある。
【０１３０】
本実施形態における図４，図５，図６，図７，図８に示す機能が外部からインストールされるプログラムによって、ホストコンピュータにより遂行されていてもよい。そして、その場合、ＣＤ−ＲＯＭやフラッシュメモリやＦＤ等の記録媒体により、あるいはネットワークを介して外部の記録媒体から、プログラムを含む情報群を出力装置に供給される場合でも本発明は適用されるものである。
【０１３１】
以上のように、前述した実施形態の機能を実現するソフトウエアのプログラムコードを記録した記録媒体を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ（またはＣＰＵやＭＰＵ）が記録媒体に格納されたプログラムコードを読出し実行することによっても、本発明の目的が達成されることは言うまでもない。
【０１３２】
この場合、記録媒体から読み出されたプログラムコード自体が本発明の新規な機能を実現することになり、そのプログラムコードを記憶した記録媒体は本発明を構成することになる。
【０１３３】
プログラムコードを供給するための記録媒体としては、例えば、フレキシブルディスク，ハードディスク，光ディスク，光磁気ディスク，ＣＤ−ＲＯＭ，ＣＤ−Ｒ，ＤＶＤ−ＲＯＭ，磁気テープ，不揮発性のメモリカード，ＲＯＭ，ＥＥＰＲＯＭ，シリコンディスク等を用いることができる。
【０１３４】
また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているＯＳ（オペレーティングシステム）等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【０１３５】
さらに、記録媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵ等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【０１３６】
また、本発明は、複数の機器から構成されるシステムに適用しても、１つの機器からなる装置に適用してもよい。また、本発明は、システムあるいは装置にプログラムを供給することによって達成される場合にも適応できることは言うまでもない。この場合、本発明を達成するためのソフトウエアによって表されるプログラムを格納した記録媒体を該システムあるいは装置に読み出すことによって、そのシステムあるいは装置が、本発明の効果を享受することが可能となる。
【０１３７】
さらに、本発明を達成するためのソフトウェアによって表されるプログラムをネットワーク上のサーバ，データベース等から通信プログラムによりダウンロードして読み出すことによって、そのシステムあるいは装置が、本発明の効果を享受することが可能となる。
【０１３８】
なお、上述した各実施形態およびその変形例を組み合わせた構成も全て本発明に含まれるものである。
【図面の簡単な説明】
【０１３９】
【図１】本発明の実施形態の座席最適配置を行う情報処理装置の機能構成を示す図である。
【図２】図１の情報処理装置１００のハードウェアの構成の一例を示す図である。
【図３】座席最適配置システムのテーブル構成を示す図である。
【図４】本発明の実施形態の座席最適配置システムの予約処理のフローチャートである。
【図５】本発明の実施形態の座席最適配置システムの延長処理のフローチャートである。
【図６】本発明の実施形態の座席最適配置システムの予約割り当て処理のフローチャートである。
【図７】本発明の実施形態の座席最適配置システムの予約割り当て処理のフローチャートである。
【図８】本発明の実施形態の座席最適配置システムの割り当て最適化処理のフローチャートである。
【図９】合致順位の算出方法を説明する図である。
【図１０】本発明に係る情報処理装置で読み取り可能な各種データ処理プログラムである。
【符号の説明】
【０１４０】
１００    情報処理装置
Ｓ-０１    予約処理部
Ｓ-０２    延長処理部
Ｓ-０３    予約割り当て処理部
Ｓ-０４    延長割り当て処理部
Ｓ-０５    割り当て最適化処理部
【図１】
2009163406.tif 000003
【図２】
2009163406.tif 000004
【図３】
2009163406.tif 000005
【図４】
2009163406.tif 000006
【図５】
2009163406.tif 000007
【図６】
2009163406.tif 000008
【図７】
2009163406.tif 000009
【図８】
2009163406.tif 000010
【図９】
2009163406.tif 000011
【図１０】
2009163406.tif 000012