JP4268973B2 - 混合整数計画問題を用いて旅行計画を自動的に作成するための方法及びコンピュータ・プログラム - Google Patents
混合整数計画問題を用いて旅行計画を自動的に作成するための方法及びコンピュータ・プログラム Download PDFInfo
- Publication number
- JP4268973B2 JP4268973B2 JP2006122654A JP2006122654A JP4268973B2 JP 4268973 B2 JP4268973 B2 JP 4268973B2 JP 2006122654 A JP2006122654 A JP 2006122654A JP 2006122654 A JP2006122654 A JP 2006122654A JP 4268973 B2 JP4268973 B2 JP 4268973B2
- Authority
- JP
- Japan
- Prior art keywords
- service
- slot
- time
- data
- travel
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
- 238000000034 method Methods 0.000 title claims description 174
- 238000004590 computer program Methods 0.000 title claims description 23
- 230000000694 effects Effects 0.000 claims description 320
- 230000008569 process Effects 0.000 claims description 133
- 239000002131 composite material Substances 0.000 claims description 80
- 238000012545 processing Methods 0.000 claims description 67
- 230000014509 gene expression Effects 0.000 claims description 38
- 150000001875 compounds Chemical class 0.000 claims description 2
- 239000003795 chemical substances by application Substances 0.000 description 67
- 230000006870 function Effects 0.000 description 47
- 230000008859 change Effects 0.000 description 12
- 238000004891 communication Methods 0.000 description 12
- 230000004308 accommodation Effects 0.000 description 7
- 235000021152 breakfast Nutrition 0.000 description 7
- 238000010276 construction Methods 0.000 description 7
- 238000011156 evaluation Methods 0.000 description 7
- 238000005457 optimization Methods 0.000 description 7
- 238000005516 engineering process Methods 0.000 description 6
- 238000012986 modification Methods 0.000 description 6
- 230000004048 modification Effects 0.000 description 6
- 230000000295 complement effect Effects 0.000 description 4
- 238000007726 management method Methods 0.000 description 4
- 235000021168 barbecue Nutrition 0.000 description 3
- 230000008901 benefit Effects 0.000 description 3
- 238000012937 correction Methods 0.000 description 3
- 239000004973 liquid crystal related substance Substances 0.000 description 3
- 239000000203 mixture Substances 0.000 description 3
- 238000003860 storage Methods 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 239000000284 extract Substances 0.000 description 2
- 238000009472 formulation Methods 0.000 description 2
- 230000000391 smoking effect Effects 0.000 description 2
- 125000002066 L-histidyl group Chemical group [H]N1C([H])=NC(C([H])([H])[C@](C(=O)[*])([H])N([H])[H])=C1[H] 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000009194 climbing Effects 0.000 description 1
- 239000012141 concentrate Substances 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 235000012054 meals Nutrition 0.000 description 1
- 230000002035 prolonged effect Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
Images
Landscapes
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Description
以下に、本発明の1つの実施形態について説明する。当然のことながら、本発明は、この実施形態に限定されるものではない。図1は、本発明の1つの実施形態に係る旅行計画作成コンピュータ・システムの基本構成を示すブロック図である。図1に示すように、本旅行計画作成コンピュータ・システムは、旅行者、旅行業者、及びシステム管理者が利用する1つ又は複数の端末と、旅行計画を作成する旅行計画作成手段等を実装する旅行計画作成サーバと、アクティビティ及びサービスなどの、旅行計画作成コンピュータ・システムの作動に必要なデータを格納するデータベースとで構成される。ここで「アクティビティ」とは、宿泊、交通、施設見学、食事、又は登山などといった、旅行者が行う観光行動の類型を表す。また、「サービス」とは、1つ又は複数のアクティビティを含む、旅行業者が提供する商品の単位を表す。1つ又は複数の端末と該旅行計画作成装置とは、インターネットなどの通信網を介して接続される。1つ又は複数の旅行者用端末は、旅行者が旅行条件データを入力し、旅行計画作成サーバにおいて作成された旅行計画を表示するための端末である。「旅行条件データ」は、後述するように、旅行者が旅行計画に対して指定する希望条件に関するデータである。1つ又は複数の旅行者用端末は、パーソナル・コンピュータ、携帯電話、又は携帯情報端末(PDA)などのネットワーク端末とすることができる。1つ又は複数の旅行業者用及びシステム管理者用端末は、旅行業者及びシステム管理者が旅行情報データを入力するための端末である。「旅行情報データ」は、後述するように、旅行業者及び/又はシステム管理者が提供及び/又は入力する、旅行計画を作成するために必要なデータである。1つ又は複数の旅行業者用及びシステム管理者用端末は、パーソナル・コンピュータ又は専用端末とすることができる。旅行者、旅行業者、及びシステム管理者が利用する1つ又は複数の端末は、ウェブ閲覧機能及びインターネットなどの通信網への接続機能を有すると共に、少なくとも、CRT又は液晶ディスプレイなどの表示装置と、ハードディスク、RAM、又はCD−ROMなどの記憶装置と、キーボード、マウス、又はタッチパネルなどのデータ入力装置とを有する、汎用又は専用の端末装置であればよい。
図2は、本発明の1つの実施形態に従って、旅行計画作成コンピュータ・システムによって旅行計画を作成する方法を概略的に示す。本方法においては、まず、旅行計画の作成を希望する旅行者が、旅行者用端末から、旅行開始日時、旅行終了日時、(例えば、大人、子供、及び乳幼児別の)人数、希望するアクティビティとその優先度及び実施回数、並びに、予算額などの旅行計画特性などといった、旅行計画に対して指定する旅行条件データを入力する。入力された旅行条件データは、インターネットなどの通信網を介して旅行計画作成サーバに送信され、該旅行計画作成サーバの旅行条件データ取得手段によって受信される。一方、旅行業者によって別の端末から入力された、サービスに含まれるアクティビティ、アクティビティの必要時間、サービスの開始日及び終了日、サービスの価格、又は受入人数(サービス対象単位及びグループ数)などのサービス属性データ(図9参照)は、インターネットなどの通信網を介して予めデータベースに送信され、格納される。次いで、旅行計画作成サーバの利用可能リスト作成手段が、旅行条件データ取得手段によって取得した旅行条件データと、スロット表のデータ(図5参照)、サービス−アクティビティ表のデータ(図9参照)、及び、アクティビティ−スロット表のデータ(図7参照)とを用いて、利用可能リストを作成する。スロット表のデータ、サービス−アクティビティ表のデータ、及びアクティビティ−スロット表のデータは、旅行情報データとして予めデータベースに格納される。
以下に、図3〜図23を参照して、本発明の1つの実施形態に係る旅行計画作成サーバが旅行計画を作成する処理を詳細に説明する。以下に説明される処理は、旅行計画作成サーバのCPUが、コンピュータを旅行計画作成サーバ内の手段の各々として機能させるためのコンピュータ・プログラムを読み込んで順次実行することによって、実現される。図3〜図10は、旅行計画作成サーバの利用可能リスト作成手段が利用可能リストを作成する手順、及び作成される利用可能リストを示す。利用可能リストは、利用可能リスト作成手段が、旅行期間表を作成し、旅程表を作成し、アクティビティ表を作成した上で、これらのデータを用いて作成する。
図3は、旅行者が入力した旅行開始日及び旅行終了日から、旅行期間の日付と曜日とを対応させた旅行期間表を作成するための処理である。処理は、利用可能リスト作成手段が、旅行者によって端末から入力され旅行条件データ取得手段によって取得された旅行条件データから、旅行開始日及び旅行終了日を取得する(ステップ301)ことで開始する。利用可能リスト作成手段は、取得した旅行開始日を旅行期間の最初の日付として設定する(ステップ302)。利用可能リスト作成手段は、設定された最初の日付を旅行終了日と比較し(ステップ303)、その日付が旅行終了日より前であるか又は旅行終了日と同日の場合には、オペレーション・システムのカレンダー機能を利用して曜日を取得する(ステップ304)。次いで、利用可能リスト作成手段は、旅行期間の日付と曜日とを対応付けた旅行期間データを作成し(ステップ305)、日付を1日進めて(ステップ306)、処理はステップ303に戻る。以上のステップを、日付が旅行終了日と同日になるまで繰り返し、利用可能リスト作成手段は、日付が旅行終了日を越えた場合(ステップ303)には、それまでに作成した旅行期間データを順次格納した旅行期間表を作成し(ステップ307)、処理は終了する(ステップ308)。図3のフロー・チャートの処理を実行することによって、旅行期間の日付と曜日とを対応させたデータである旅行期間表が全旅行期間にわたって作成され、データベースに格納される。
図4は、旅行期間内の複数のスロットについて、複数のスロットを特定するスロット・コードと、そのスロットのスロット・タイプと、そのスロットの開始時刻及び終了時刻とを対応させた旅程表を作成するための処理である。処理は、利用可能リスト作成手段が、旅行条件データ取得手段によって取得された旅行条件データから、旅行開始日時及び旅行終了日時を取得する(ステップ401)ことで開始する。次いで、利用可能リスト作成手段は、図3の処理で作成された旅行期間表から日付単位で旅行期間データを読み込み(ステップ402)、さらにデータベースからスロット表を取得する(ステップ404)。このスロット表は、図5に示すように、行ごとに、A〜Hまでの記号で表されるスロット・タイプと、早朝、朝食、又は午前などといった、各スロットの特性を表すスロット特性と、各スロットの開始時刻及び終了時刻とが関連付けて格納されている関連付けデータであり、これらのデータは、システム管理者によって予め任意に設定され、システム管理者用の端末から入力される。すなわち、システム管理者は、スロットの各々の開始時刻及び終了時刻をどの時刻に設定するか(これによって、1日24時間が幾つのスロットに分けられるかが決定される)、スロットの各々の記号(スロット・タイプ)をどのように表すか、及びスロットの各々に付与する特性をどのように表すか、といった事項を任意に設定し、これらの事項を表した図5に示されるスロット属性データをシステム管理者用の端末から入力する。入力されたデータは、データベースに予め格納される。スロット・タイプの数(すなわち、スロットの数)、スロット特性、及び(開始時刻及び終了時刻によって決まる)時間幅は、図5に示す例に限るものではなく、例えば、1日を6つの時間帯(すなわちスロット)に分割して各々の時間帯のスロット・タイプをA〜Fとし、スロット特性を、それぞれ朝食、午前、昼食、午後、夕食、及び夜間とし、スロットの時間幅を、それぞれ2時間、3時間、2時間、4時間、2時間、及び11時間とすることもできる。また、各々のスロットには、複数のスロット特性を付与してもよい。例えば、午前9時から午前10時までのスロットに、「朝食」及び「午前」の2つのスロット特性を付与し、旅行者がいずれかを選択できるようにすることも考えられる。ステップ404のデータ取得は、このスロット表の行単位で行われる。
図6は、旅行者が入力した旅行条件データをアクティビティごとにまとめ、各々のアクティビティをその適合スロット・タイプと対応させたアクティビティ表を作成するための処理である。処理は、利用可能リスト作成手段が、旅行者が入力した旅行条件データを取得する(ステップ601)ことで開始する。取得される旅行条件データは、旅行者が旅行期間内に実施することを希望するすべてのアクティビティを含む。次いで、利用可能リスト作成手段は、旅行条件データから取得したアクティビティ情報をアクティビティごとに読み込み(ステップ602)、後述するアクティビティ−スロット表から、ステップ602で読み込んだアクティビティに適合する1つ又は複数の適合スロット・タイプを取得する(ステップ604)。
図8は、図3、図4、及び図6の処理で作成された旅行期間表、旅程表、及びアクティビティ表を用いて利用可能リストを作成するための処理のフロー・チャートである。処理は、利用可能リスト作成手段が、旅行期間表、旅程表、及びアクティビティ表を取得することで開始する(ステップ801)。次いで、利用可能リスト作成手段は、アクティビティ表から絞込条件を読み込む(ステップ802)。この絞込条件は、旅行者が各々のアクティビティについて指定した、優先度、指定時間、実施回数、実施地域、及びその他の絞込情報に関するデータである。ここで、「優先度」は、旅行者が各々のアクティビティについて指定する情報であり、旅行者が希望するすべてのアクティビティが旅行期間内に収まらない場合に、どのアクティビティを優先して旅行計画に組み込むかを定めるものである。本実施形態においては、優先度は、「必須」及び「二次」の2分類から選択して旅行者が指定するが、優先度の分類は2分類に限定されるものではなく、3分類以上とすることもできる。優先度が「必須」のアクティビティは、実施回数分が必ず旅行計画に組み込まれ、優先度が「二次」のアクティビティは、優先度が「必須」のアクティビティを組み込んだ後の旅行日程に組み込むことができる範囲内で、実施回数以下の回数が旅行日程に組み込まれることになる。「指定時間」は、旅行者が各々のアクティビティについて指定する情報であり、旅行者がそのアクティビティに費やすことが可能な(又は、費やすことを希望する)時間を定めるものである。「実施回数」は、旅行者が各々のアクティビティについて指定する情報であり、旅行者が、旅行期間内に希望するアクティビティの各々をそれぞれ何回ずつ実施することを希望するかを定めるものである。「実施地域」は、旅行者が各々のアクティビティについて指定する情報であり、旅行者がそのアクティビティを実施したい地域を定めるものである。「その他の絞込情報」は、例えば、ホテルの部屋のタイプ(例えば、禁煙室か喫煙室かなど)などといったその他の条件を指定する情報である。
ところで、前述の通り、例えば、ある旅行業者が又は複数の旅行業者が提携してトレッキングと昼食とを組み合わせて提供するといったように、1つのサービスで複数のアクティビティが提供される場合がある。上述の処理で作成された利用可能リストにこのような複合サービスが含まれる場合には、拡大利用可能リスト作成手段が、利用可能リストのその複合サービスを、各々が1つのアクティビティを含む複数の補助サービスに分割し、元の利用可能リストの複合サービスに関するデータを複数の補助サービスのデータに置換する。また、例えば、朝食後から夕食前までスキーを行うといったように、1つのアクティビティを複数のスロットにわたって提供するサービス(以下、「長大サービス」という)もある。このような場合も、拡大利用可能リスト作成手段は、利用可能リスト内のその長大サービス(この場合も同様に「複合サービス」として扱う)を、各々が1つのスロットの時間幅以下の必要時間を有する複数の補助サービスに分割し、元の利用可能リストの長大サービスに関するデータを複数の補助サービスのデータに置換する。以上のような処理を図11〜図13に示すフロー・チャートによって行うことによって、元の利用可能リストから図14に示す拡大利用可能リストが作成される。なお、上述のように、拡大利用可能リストは、利用可能リストの複合サービスに関するデータを複数の補助サービスに関するデータに置換したものであり、図10に示す利用可能リストのデータ項目と図14に示す拡大利用可能リストのデータ項目は、拡大サービス・コード及びスロット・タイプを除いて同じものとすることができる。しかしながら、分かりやすくするため、図14においては、図10のデータ項目のうち、後の制約条件構成ステップなどにおいて利用するデータ項目のみを抽出して記載している。
図11は、複合サービスの分割及び拡大利用可能リストの作成に先立って、各々のサービスのサービス・コードと、該サービスに含まれるアクティビティの後述する実効スロットとを関連付けるサービス−スロット表を作成するための処理である。また、図12及び図13は、拡大利用可能リストを作成し、元のサービスと補助サービスとの関係及び補助サービス間の関係データを作成するための処理である。図11においては、処理は、拡大利用可能リスト作成手段が、図5に示すスロット表、及び、図10に示す利用可能リストを取得することで開始する(ステップ1101)。次いで、拡大利用可能リスト作成手段は、利用可能リストのサービス毎に該サービスに関するデータを読み込む(ステップ1102)。拡大利用可能リスト作成手段は、読み込んだサービス・データに含まれる開始時刻及び終了時刻とスロット表とから、該サービスの開始スロット及び終了スロットを決定し(ステップ1104)、決定された開始及び終了スロットから、ステップ1105〜ステップ1107に従って実効スロット候補を決定する。
図12は、複数のアクティビティを含む1つ又は複数の複合サービスを、各々が1つのアクティビティを含む複数の補助サービスに分割するための処理である。図12においては、処理は、拡大利用可能リスト作成手段が、図10に示す利用可能リストと、図11の処理によって作成されたサービス−スロット表とを取得することで開始する(ステップ1201)。次いで、拡大利用可能リスト作成手段は、取得したサービス−スロット表から最初のサービス・コードを読み込む(ステップ1202)。ステップ1204において、拡大利用可能リスト作成手段は、取得済みの利用可能リストから最初のサービス・データを読み込み、該サービス・データのサービス・コードによって特定されるサービスが、複合サービス(すなわち、複数のアクティビティを含むサービス)又は単純サービス(すなわち、単一のアクティビティのみを含むサービス)のいずれであるかを判断する(ステップ1205)。この判断は、拡大利用可能リスト作成手段が、利用可能リストから読み込んだサービス・データにおいて、サービスのサービス・コードが複数のアクティビティ・コードと関連付けられているかどうかを判定することによって行われる。そのサービスが複合サービスではない場合には、拡大利用可能リスト作成手段は、そのサービスのデータを、利用可能リストの適合スロット・タイプを実効スロット・タイプに置き換えて、拡大利用可能リストに追加する(ステップ1213)。
(1)決定変数の作成
拡大利用可能リストが作成された後、リスト内のサービス(又は補助サービス)の選択可能な組み合わせを求める上での制約条件が作成されることになる。制約条件構成手段が、制約条件作成に先立って、制約条件の作成に用いるための決定変数xi,jを作成する。決定変数xi,jは、拡大利用可能リストの各々の拡大サービスiについて、各々の拡大サービスiをスロットjに割り付けるか又は割り付けないかを定める変数である。なお、これ以降、拡大サービスiというときは、拡大サービス・コードiによって特定される拡大サービスを意味し、スロットjというときは、スロット・コードjによって特定されるスロットを意味する。あるサービスiを割り付けることができるスロットjに該サービスiを割り付ける可能性がある場合にはxi,j が作成され、可能性がない場合にはxi,j が作成されない。例えば、拡大サービス・コードが1であるサービスの実効スロット・タイプがC(午前)、E(午後)、又はG(夜間)の場合に、旅程表(図17(b)を参照されたい)において、スロット・タイプCに対応するスロット・コードが7及び15であり、スロット・タイプEに対応するスロット・コードが1及び9であり、スロット・タイプGに対応するスロット・コードが3及び11であるときには、決定変数x1,1、x1,3、x1,7、x1,9、x1,11、及びx1,15 が作成される。すなわち、拡大利用可能リストの各々の拡大サービスiについて、各々の拡大サービスiを各々のスロットjに割り付けるかどうかを定めるということは、制約条件構成手段が、拡大利用可能リストに含まれる拡大サービスiについてのスロットの特性(スロットの特性はスロット・タイプによって特定される)と、旅行期間に含まれるスロットの各々の特性とを比較し、特性が一致するスロットjがあれば、その拡大サービスiとスロットjの対に対応するx i,j が作成されることを意味する。このように、各サービスとそのサービスが割り付けられる可能性のある実効スロットとの対にのみ決定変数を定義することによって、すべてのサービスと実効スロットとの任意の組み合わせに対して決定変数を定義する場合と比べて、計算処理の規模が著しく小さくなるという利点がある。なお、ここでは拡大利用可能リストに基づいて説明したが、作成された利用可能リスト(図10)に複合サービスが含まれない場合には、該利用可能リストを用いて、そのリスト内のサービス(この場合、このサービスは補助サービスではない)の各々について同様の方法で決定変数が作成されることになる。以下の処理においても同様である。
図19〜図22は、拡大利用可能リストにリストアップされたサービスの選択可能な組み合わせを求める上での制約条件を作成するための処理である。ここでは、図3〜図16に示す処理において、図17(a)〜(d)に例示するアクティビティ表、旅程表、サービス−アクティビティ表、及び利用可能リストを用いた結果、図18に示す例示的な拡大利用可能リストが作成されたものとして、制約条件の作成について説明する。なお、図17(a)〜(d)及び図18に表示されるデータ項目は、これまで説明した各々の表のデータ項目のすべてではなく一部のみが表示されているが、これは、分かり易くするために、これ以降の処理において最低限必要となるデータのデータ項目のみを抽出して表示しているためである。
(数5)
x1,1+x1,3+x1,7+x1,9+x1,11+x1,15=1
x2,4+x2,12=2
x3,3+x3,11≦1
x4,1+x4,7+x4,9+x4,15+x5,7=1 (3)
x6,5+x6,13=1
x7,7+x9,8+x10,9≦1
x8,8≦1
(数6)
xi,u=xk,v (4)
という式で表現することができる。
(数7)
x5,7=x8,8
x7,7=x9,8 (5)
x9,8=x10,9
(数11)
60x1,1+80x4,1≦210
60x1,3+90x3,3≦270
60x1,7+80x4,7+120x5,7+210x7,7≦210
60x1,9+80x4,9+60x10,9≦210
60x1,11+90x3,11≦270
60x1,15+80x4,15≦210 (9)
450x2,4≦480
450x2,12≦480
60x6,5≦180
60x6,13≦180
60x8,8+120x9,8≦150
(数13)
60x1,7+60x1,9+80x4,7+80x4,9+120x5,7+
210x7,7+60x8,8+120x9,8+60x10,9≦480 (11)
次いで、目的関数構成手段が、混合整数計画問題を解くための演算プログラムを使用することによって自動的に作成される旅行計画の特性を表す項を含む目的関数を作成する。旅行計画の特性として、例えば、旅行期間内に実施されるサービスの価格の総額が旅行予算額の範囲内であること、又は、旅行期間内にできるだけ多くのアクティビティが含まれること、などが考えられるが、旅行計画の特性はこれらに限定されるものではない。例えば、旅行計画の特性として、旅行期間内に実施されるサービスの価格の総額が一定の範囲に含まれること、又は、旅行者が希望するアクティビティの実施スケジュールが、旅行期間内に均等に分散する(又は、できるだけ集中する)ようにすること、などが考えられる。これらの特性を表現した式は、制約条件構成手段によって作成され、旅行計画作成手段が制約条件として用いることができる。
(数14)
a(y1+y2)+bx−cN (12)
を作成し、旅行計画作成手段が、制約条件構成手段によって作成される上述の制約条件の組の下で、目的関数構成手段によって作成されるこの目的関数を最小化するような最適解を求める場合を考える。この式において、各項のy1、y2、x、及びNは、この目的関数を作成するために導入される新たな変数であり、これらの変数の意味は、後述の処理フロー・チャートの説明の中で明らかにする。なお、目的関数を作成するためにこうした種々の変数を導入することは、当該技術分野では周知である。各項のa、b、及びcは、作成される旅行計画の特性を表す重み係数(a、b、c>0)であり、これらの係数は、システム管理者が端末から入力して設定しておくか、又は、プログラムのデータとしてあらかじめ設定しておくことができる。作成される旅行計画は、重み係数a、b、及びcの大きさを変えることによってその特性を定めることが可能であり、予算に関する特性を表すa、時間に関する特性を表すb、及びアクティビティ数に関する特性を表すcの値、並びにそれらの組み合わせを適宜選択することによって、例えば、予算重視の旅行計画が作成され(a=b=1、c=0)、スケジュールに余裕のある旅行計画が作成され(a=1、b=1000000、c=0)、あるいは、多くのアクティビティが組み込まれる旅行計画が作成される(a=1、b=0、c=1000000)。
(数18)
一次式2−N=0 (15)
を作成する(ステップ2313)。ここでNは、アクティビティの数を表す変数であり、この値を大きくすれば多くのアクティビティが組み込まれた旅行計画が作成されることになる。次いで、制約条件構成手段は、非負の1以下の変数xを導入して、式(6)で表される制約条件3及び式(7)で表される制約条件3´のうち、システム管理者があらかじめ指定した式(6)及び/又は(7)を、それぞれ、
(数19)
(左辺)−Tjx≦0 (16)
及び/又は、
(数20)
(左辺)−Tx≦0 (17)
となるように変形する(ステップ2314)。ここでxは、スケジュールの余裕を表す変数であり、xを小さくすればスケジュールに多くの余裕がある旅行計画が作成されることになる。
上述の処理によって作成された制約条件の組と目的関数とを用いて、旅行計画作成手段が、該制約条件の組の下で該目的関数を最適化又は近似最適化する決定変数xi,jの組み合わせを求める。すなわち、旅行計画作成手段が、例えば制約条件1(例えば、(3)式に例示した制約条件)、制約条件2(例えば、(5)式に例示した制約条件)、制約条件3及び3´(例えば、(9)式及び(11)式に例示した制約条件)、予算に関する制約条件(例えば、(14式)に例示した制約条件)、及び/又は、アクティビティ数に関する制約条件(例えば、(15式)に例示した制約条件)の下で、目的関数(例えば、(12)式に例示した目的関数)を最小化する解(すなわち、決定変数の組み合わせ)を決定するという混合整数計画問題を解くことになる。混合整数計画法は、様々な制約条件の下で対象とする問題の最適な解決策を求める手法である数理計画法の一種であり、目的関数も制約条件も1次式で表される問題を解く手法である線形計画法、又は、線形計画問題に「変数は整数値しかとらない」という制約(整数制約)を加えた問題を解く手法である整数計画法に対して、変数の幾つかが整数で、残りの変数が実数であるという制約を加えた問題を解く手法である。こうした問題を解くのに用いることができる市販の数理計画プログラム・パッケージは多数存在しており、これらのプログラム・パッケージを使用して、本実施形態に係る問題を解くことができる。このような市販プログラム・パッケージの例として、「CPLEX」(日本のアイログ株式会社の製品)、「LINDO」(アメリカ合衆国、イリノイ州シカゴ所在のLINDO Systems社の製品)、又は、「MOSEK」(デンマーク、コペンハーゲン所在のMOSEK ApS社の製品)が挙げられる。あるいは、これらの市販のプログラム・パッケージに代えて、こういった市販パッケージと同等の機能を有するコンピュータ・プログラムを作成し、それを用いて上述の問題を解くようにしても良い。
旅行計画作成手段が、最適化又は近似最適化した旅行計画を旅行者が使用する端末に送信した後、旅行者が、端末に表示された旅行計画を確認し、その旅行計画の一部を変更又は修正する必要があると考えた場合には、旅行者は、端末からその旅行計画を修正又は変更できるようにすることができる。修正又は変更が、サービス(又は、そのサービスが含むアクティビティ)を提供する旅行業者を変更するものである場合には、旅行計画作成サーバは、旅行計画の変更又は修正の要求を受け取ると、現在の旅行計画の該サービスを実施するスロットにおいて同種のアクティビティを含むサービスを提供することが可能な別の旅行業者の情報をデータベースから検索し、検索結果に基づいて、変更又は修正用のサービス候補リストを作成する。作成された変更又は修正用のサービス候補リストは旅行者が使用する端末に送信され、旅行者は、そのリストに基づいて現在の旅行計画を修正又は変更する。旅行者によって行われた変更又は修正に関するデータは旅行計画作成サーバに送信され、旅行計画作成サーバは、現在の旅行計画において変更又は修正されるサービスを新たなサービスに置換することによって新たな旅行計画を作成し、端末に送信する。
Claims (14)
- 旅行者によって入力された旅行条件データと、旅行業者及びシステム管理者によって入力されデータベースに格納された旅行情報データとを用いて、旅行計画を作成し、作成された前記旅行計画を前記旅行者に提示するための旅行計画作成コンピュータ・システムにおいて、前記旅行計画作成コンピュータ・システムの旅行計画作成サーバが旅行計画を作成する方法であって、
前記旅行計画作成サーバが、前記旅行条件データ内の旅行期間の各日について、前記データベースから受信した前記旅行情報データに含まれるスロット属性データに基づいて、各日の時間と、予め定められた開始時刻及び終了時刻によって決まる同一の時間幅及び/又は異なる時間幅を有する複数のスロットとを関連付けるステップと、
前記旅行計画作成サーバが、前記旅行期間内に前記旅行者が利用可能な1つ又は複数のサービスに関する情報を含むデータである利用可能リストを作成する、利用可能リスト作成ステップであって、前記1つ又は複数のサービスに関する情報は、前記複数のスロットの各々に付与された特性と適合するように予め関連付けが定義された1つ又は複数のアクティビティに関する情報を含み、前記利用可能リストは、アクティビティについて指定された前記旅行条件データに含まれる条件に基づいて、前記旅行情報データから取得されたデータを用いて作成される、利用可能リスト作成ステップと、
前記旅行計画作成サーバが、前記リストにおける前記1つ又は複数のサービスの各々を前記複数のスロットの各々に割り付けるかどうかを定義する決定変数を含む式で表現される複数の制約条件のうちの1つ又は複数を含む制約条件の組を作成する、制約条件構成ステップであって、前記複数の制約条件は、前記利用可能リストにおける前記1つ又は複数のサービスの各々を前記複数のスロットの各々に割り付けるときの優先度に応じた、前記決定変数の和と前記旅行条件データに含まれるアクティビティの実施回数との関係に関する制約条件、及び、前記複数のスロットの1つ又は複数に割り付けられるサービスの実施に必要な時間の長さと前記決定変数との積の和と、前記複数のスロットの1つ又は複数の時間幅の長さとの関係によって表される、時間に関する制約条件を含む、制約条件構成ステップと、
前記旅行計画作成サーバが、作成される旅行計画のアクティビティの実施回数に関する特性を表す所定の変数を含む項と時間に関する特性を表す所定の変数を含む項とを含む目的関数を作成する、目的関数構成ステップと、
前記旅行計画作成サーバが、前記制約条件の組と前記目的関数とを混合整数計画問題を解くための演算プログラムに入力し、前記演算プログラムから出力された、前記制約条件の組の下で前記目的関数を最適化又は近似最適化するための決定変数の組み合わせに基づいて、前記利用可能リストにおける前記1つ又は複数のサービスのうち前記出力された決定変数に対応するサービスの各々と前記出力された決定変数に対応する前記複数のスロットの各々とを関連付けたデータを作成し、該データと前記旅行情報データとを用いて、少なくとも前記複数のスロットの各々とアクティビティとを関連付けたデータである旅行計画を作成する、旅行計画作成ステップと、
を含むことを特徴とする方法。 - 前記利用可能リスト作成ステップは、
前記旅行計画作成サーバが、前記利用可能リストに基づいて、前記利用可能リストにおける前記1つ又は複数のサービスの各々が複数のアクティビティを含む複合サービスであるかどうかを判定し、複合サービスであると判定した場合には、前記複合サービスに関するデータから、各々が1つのアクティビティを含む複数の新たなサービスに関するデータを作成する、複合サービス分割ステップ、及び/又は、前記旅行計画作成サーバが、前記利用可能リストに含まれるデータに基づいて、前記利用可能リストにおける前記1つ又は複数のサービスの各々が、該サービスに含まれるアクティビティの実施に必要な時間幅が少なくとも1つのスロットの時間幅を越える長大サービスであるかどうかを判定し、長大サービスであると判定した場合には、前記長大サービスに関するデータから、各々の実施に必要な時間幅が1つのスロットの時間幅以下である複数の新たなサービスに関するデータを作成する、長大サービス分割ステップと、
前記旅行計画作成サーバが、前記複合サービスと前記長大サービスと前記複数の新たなサービスとの関係を表す関係データを作成する、関係データ作成ステップと、
前記旅行計画作成サーバが、前記利用可能リストにおいて、前記複合サービスに関するデータ及び/又は前記長大サービスに関するデータを前記複数の新たなサービスに関するデータに置換することによって新たなリストを作成する、新リスト作成ステップと、
をさらに含み、
前記制約条件構成ステップは、前記旅行計画作成サーバが、前記複数の新たなサービス相互間の関係に関する、前記決定変数を含む式で表現される制約条件を作成するステップをさらに含むことを特徴とする、請求項1に記載の方法。 - 前記複合サービス分割ステップは、
前記旅行計画作成サーバが、前記旅行情報データに基づいて、前記複合サービスのサービス・タイプがsタイプであると判定した場合には、
前記旅行計画作成サーバが、前記複合サービスに含まれるアクティビティの各々の開始時刻と終了時刻とから、前記新たなサービスの各々の実施に必要な時間幅を算出するステップをさらに含み、
前記旅行計画作成サーバが、前記旅行情報データに基づいて、前記複合サービスのサービス・タイプがa1タイプであると判定した場合には、
前記旅行計画作成サーバが、前記旅行者が前記複合サービスに含まれるアクティビティの各々に費やすことを希望する時間幅である指定時間が、前記旅行条件データに含まれていると判定したときは、前記指定時間と、前記アクティビティの各々を提供する前記旅行業者の営業時間とを比較して、時間の短い方を前記新たなサービスの各々の実施に必要な時間幅として設定し、
前記旅行計画作成サーバが、前記旅行者が前記複合サービスに含まれるアクティビティの各々に費やすことを希望する時間幅である指定時間が、前記旅行条件データに含まれていないと判定したときは、前記新たなサービスの各々に含まれるアクティビティの実施に適した時間幅を前記新たなサービスの各々の実施に必要な時間幅として設定する、
ステップをさらに含み、
前記旅行計画作成サーバが、前記旅行情報データに基づいて、前記複合サービスのサービス・タイプがa2タイプであると判定した場合には、
前記旅行計画作成サーバが、前記新たなサービスの各々に含まれるアクティビティの実施に必要な時間幅を前記新たなサービスの各々の実施に必要な時間幅として設定するステップをさらに含み、
前記サービス・タイプに関するデータは、前記旅行情報データに含まれており、前記sタイプのサービスは、前記旅行業者によって前記1つ又は複数のサービスの各々に含まれるアクティビティの日付、開始時刻及び終了時刻が予め定められたサービスであり、前記a1タイプのサービスは、前記旅行業者によってアクティビティの開始時刻及び終了時刻は定められていないがアクティビティの実施に適した時間幅が定められ、かつ、前記旅行業者の営業時間内に利用可能なサービスであり、前記a2タイプのサービスは、前記旅行業者によってアクティビティの開始時刻及び終了時刻は定められてないがアクティビティの実施に必要な時間幅が定められ、かつ、前記旅行業者の営業時間内に利用可能なサービスであることを特徴とする、請求項2に記載の方法。 - 前記長大サービス分割ステップは、
前記旅行計画作成サーバが、前記旅行情報データに基づいて、前記長大サービスのサービス・タイプがsタイプであると判定した場合には、
前記旅行計画作成サーバが、前記長大サービスに含まれるアクティビティの開始時刻を含む最初のスロット、前記アクティビティの終了時刻を含む最後のスロット、及び、前記最初のスロットと前記最後のスロットとの間に前記最初のスロット及び前記最後のスロットとは別の1つ又は複数のスロットが存在するときには前記別の1つ又は複数のスロット、を特定するステップと、
前記旅行計画作成サーバが、前記長大サービスに関するデータから、前記最初のスロットに対応する最初の新たなサービスに関するデータ、前記最後のスロットに対応する最後の新たなサービスに関するデータ、及び、前記別の1つ又は複数のスロットに対応する1つ又は複数の新たなサービスに関するデータ、を作成するステップと、
前記旅行計画作成サーバが、前記アクティビティの前記開始時刻から前記最初のスロットの前記終了時刻までの時間幅を、前記最初の新たなサービスの実施に必要な時間幅として設定するステップと、
前記旅行計画作成サーバが、前記最後のスロットの前記開始時刻から前記アクティビティの前記終了時刻までの時間幅を、前記最後の新たなサービスの実施に必要な時間幅として設定するステップと、
前記旅行計画作成サーバが、前記別の1つ又は複数のスロットの時間幅を、前記1つ又は複数の新たなサービスの実施に必要な時間幅として設定するステップと、
をさらに含むことを特徴とする、請求項2又は請求項3に記載の方法。 - 前記長大サービス分割ステップは、
前記旅行計画作成サーバが、前記旅行情報データに基づいて、前記長大サービスのサービス・タイプがa1タイプ又はa2タイプであると判定した場合には、
前記旅行計画作成サーバが、スロットの開始時刻又は終了時刻のいずれか一方が前記長大サービスを提供する前記旅行業者の営業開始時刻と営業終了時刻との間にあり、前記長大サービスに含まれるアクティビティの実施に適したスロット群と一致する、1つ又は複数のスロットを特定するステップと、
前記旅行計画作成サーバが、前記特定した1つ又は複数のスロットのうちの最初のスロットが、前記営業開始時刻を含むスロットであると判定したときは、前記営業開始時刻から前記最初のスロットの終了時刻までに対応する最初の新たなサービスに関するデータを作成し、前記最初のスロットの次のスロットが前記営業終了時刻を含むスロットでないときには前記最初のスロットの次のスロット以降の1つ又は複数のスロットに対応する1つ又は複数の新たなサービスに関するデータを順次作成し、次いで、前記営業開始時刻から前記最初のスロットの前記終了時刻までの時間幅を前記最初の新たなサービスの実施に必要な時間幅として設定し、前記最初のスロットの次のスロットが前記営業終了時刻を含むスロットでないときには前記1つ又は複数のスロットの時間幅を前記1つ又は複数の新たなサービスの実施に必要な時間幅としてそれぞれ設定し、最後の新たなサービスの実施に必要な時間幅は、前記長大サービスの実施に必要な時間幅から、前記最初の新たなサービスから前記最後の新たなサービスの直前のサービスまでの実施に必要な時間幅の合計を引いた時間幅を設定するステップと、
前記旅行計画作成サーバが、前記特定した1つ又は複数のスロットのうちの最初のスロットが、前記営業開始時刻を含むスロットより後のスロットであると判定したときは、前記最初のスロットに対応する最初の新たなサービスに関するデータを作成し、前記最初のスロットの次のスロットが前記営業終了時刻を含むスロットでないときには前記最初のスロットの次のスロット以降の1つ又は複数のスロットに対応する1つ又は複数の新たなサービスに関するデータを順次作成し、次いで、前記最初のスロットの時間幅を前記最初の新たなサービスの実施に必要な時間幅として設定し、前記最初のスロットの次のスロットが前記営業終了時刻を含むスロットでないときには前記1つ又は複数のスロットの時間幅を前記1つ又は複数の新たなサービスの実施に必要な時間幅としてそれぞれ設定し、最後の新たなサービスの実施に必要な時間幅は、前記長大サービスの実施に必要な時間幅から、前記最初の新たなサービスから前記最後の新たなサービスの直前のサービスまでの実施に必要な時間幅の合計を引いた時間幅を設定するステップと、
をさらに含むことを特徴とする、請求項2又は請求項3に記載の方法。 - 前記利用可能リストは、サービスに関する情報がサービス毎に1つのデータ単位として構成されており、前記利用可能リスト作成ステップの後に、前記旅行計画作成サーバが、前記利用可能リストに含まれる複数のデータ単位の前記利用可能リスト内での並び順を変更するステップをさらに含むことを特徴とする、請求項1に記載の方法。
- 前記新たなリストは、サービスに関する情報がサービス毎に1つのデータ単位として構成されており、前記新リスト作成ステップの後に、前記旅行計画作成サーバが、前記新たなリストに含まれる複数のデータ単位の前記新たなリスト内での並び順を変更するステップをさらに含むことを特徴とする、請求項2に記載の方法。
- 旅行者によって入力された旅行条件データと旅行業者及びシステム管理者によって入力されデータベースに格納された旅行情報データとを用いて旅行計画を作成する処理をコンピュータに実行させるプログラム・コードを含むコンピュータ・プログラムであって、
前記処理が、
前記旅行条件データ内の旅行期間の各日について、前記データベースから受信した前記旅行情報データに含まれるスロット属性データに基づいて、各日の時間と予め定められた開始時刻及び終了時刻によって決まる同一の時間幅及び/又は異なる時間幅を有する複数のスロットとを関連付ける処理と、
前記旅行期間内に前記旅行者が利用可能な1つ又は複数のサービスに関する情報を含むデータである利用可能リストを作成する、利用可能リスト作成処理であって、前記1つ又は複数のサービスに関する情報は、前記複数のスロットの各々に付与された特性と適合するように予め関連付けが定義された1つ又は複数のアクティビティに関する情報を含み、前記利用可能リストは、アクティビティについて指定された前記旅行条件データに含まれる条件に基づいて、前記旅行情報データから取得されたデータを用いて作成される、利用可能リスト作成処理と、
前記リストにおける前記1つ又は複数のサービスの各々を前記複数のスロットの各々に割り付けるかどうかを定義する決定変数を含む式で表現される複数の制約条件のうちの1つ又は複数を含む制約条件の組を作成する、制約条件構成処理であって、前記複数の制約条件は、前記利用可能リストにおける前記1つ又は複数のサービスの各々を前記複数のスロットの各々に割り付けるときの優先度に応じた、前記決定変数の和と前記旅行条件データに含まれるアクティビティの実施回数との関係に関する制約条件、及び、前記複数のスロットの1つ又は複数に割り付けられるサービスの実施に必要な時間の長さと前記決定変数との積の和と、前記複数のスロットの1つ又は複数の時間幅の長さとの関係によって表される、時間に関する制約条件を含む、制約条件構成処理と、
作成される旅行計画のアクティビティの実施回数に関する特性を表す所定の変数を含む項と時間に関する特性を表す所定の変数を含む項とを含む目的関数を作成する、目的関数構成処理と、
前記制約条件の組と前記目的関数とを混合整数計画問題を解くための演算プログラムに入力し、前記演算プログラムから出力された、前記制約条件の組の下で前記目的関数を最適化又は近似最適化するための決定変数の組み合わせに基づいて、前記利用可能リストにおける前記1つ又は複数のサービスのうち前記出力された決定変数に対応するサービスの各々と前記出力された決定変数に対応する前記複数のスロットの各々とを関連付けたデータを作成し、該データと前記旅行情報データとを用いて、少なくとも前記複数のスロットの各々とアクティビティとを関連付けたデータである旅行計画を作成する、旅行計画作成処理と、
を含むことを特徴とするコンピュータ・プログラム。 - 前記利用可能リスト作成処理は、
前記利用可能リストに基づいて、前記利用可能リストにおける前記1つ又は複数のサービスの各々が複数のアクティビティを含む複合サービスであるかどうかを判定し、複合サービスであると判定した場合には、前記複合サービスに関するデータから、各々が1つのアクティビティを含む複数の新たなサービスに関するデータを作成する、複合サービス分割処理、及び/又は、前記利用可能リストに含まれるデータに基づいて、前記利用可能リストにおける前記1つ又は複数のサービスの各々が、該サービスに含まれるアクティビティの実施に必要な時間幅が少なくとも1つのスロットの時間幅を越える長大サービスであるかどうかを判定し、長大サービスであると判定した場合には、前記長大サービスに関するデータから、各々の実施に必要な時間幅が1つのスロットの時間幅以下である複数の新たなサービスに関するデータを作成する、長大サービス分割処理と、
前記複合サービスと前記長大サービスと前記複数の新たなサービスとの関係を表す関係データを作成する、関係データ作成処理と、
前記利用可能リストにおいて、前記複合サービスに関するデータ及び/又は前記長大サービスに関するデータを前記複数の新たなサービスに関するデータに置換することによって新たなリストを作成する、新リスト作成処理と、
をさらに含み、
前記制約条件構成処理は、前記複数の新たなサービス相互間の関係に関する、前記決定変数を含む式で表現される制約条件を作成する処理をさらに含むことを特徴とする、請求項8に記載のコンピュータ・プログラム。 - 前記複合サービス分割処理は、
前記旅行情報データに基づいて、前記複合サービスのサービス・タイプがsタイプであると判定した場合には、
前記複合サービスに含まれるアクティビティの各々の開始時刻と終了時刻とから、前記新たなサービスの各々の実施に必要な時間幅を算出する処理をさらに含み、
前記旅行情報データに基づいて、前記複合サービスのサービス・タイプがa1タイプであると判定した場合には、
前記旅行者が前記複合サービスに含まれるアクティビティの各々に費やすことを希望する時間幅である指定時間が、前記旅行条件データに含まれていると判定したときは、前記指定時間と、前記アクティビティの各々を提供する前記旅行業者の営業時間とを比較して、時間の短い方を前記新たなサービスの各々の実施に必要な時間幅として設定し、
前記旅行者が前記複合サービスに含まれるアクティビティの各々に費やすことを希望する時間幅である指定時間が、前記旅行条件データに含まれていないと判定したときは、前記新たなサービスの各々に含まれるアクティビティの実施に適した時間幅を前記新たなサービスの各々の実施に必要な時間幅として設定する、
処理をさらに含み、
前記旅行情報データに基づいて、前記複合サービスのサービス・タイプがa2タイプであると判定した場合には、
前記新たなサービスの各々に含まれるアクティビティの実施に必要な時間幅を前記新たなサービスの各々の実施に必要な時間幅として設定する処理をさらに含み、
前記サービス・タイプに関するデータは、前記旅行情報データに含まれており、前記sタイプのサービスは、前記旅行業者によって前記1つ又は複数のサービスの各々に含まれるアクティビティの日付、開始時刻及び終了時刻が予め定められたサービスであり、前記a1タイプのサービスは、前記旅行業者によってアクティビティの開始時刻及び終了時刻は定められていないがアクティビティの実施に適した時間幅が定められ、かつ、前記旅行業者の営業時間内に利用可能なサービスであり、前記a2タイプのサービスは、前記旅行業者によってアクティビティの開始時刻及び終了時刻は定められてないがアクティビティの実施に必要な時間幅が定められ、かつ、前記旅行業者の営業時間内に利用可能なサービスであることを特徴とする、請求項9に記載のコンピュータ・プログラム。 - 前記長大サービス分割処理は、
前記旅行情報データに基づいて、前記長大サービスのサービス・タイプがsタイプであると判定した場合には、
前記長大サービスに含まれるアクティビティの開始時刻を含む最初のスロット、前記アクティビティの終了時刻を含む最後のスロット、及び、前記最初のスロットと前記最後のスロットとの間に前記最初のスロット及び前記最後のスロットとは別の1つ又は複数のスロットが存在するときには前記別の1つ又は複数のスロット、を特定する処理と、
前記長大サービスに関するデータから、前記最初のスロットに対応する最初の新たなサービスに関するデータ、前記最後のスロットに対応する最後の新たなサービスに関するデータ、及び、前記別の1つ又は複数のスロットに対応する1つ又は複数の新たなサービスに関するデータ、を作成する処理と、
前記アクティビティの前記開始時刻から前記最初のスロットの前記終了時刻までの時間幅を、前記最初の新たなサービスの実施に必要な時間幅として設定する処理と、
前記最後のスロットの前記開始時刻から前記アクティビティの前記終了時刻までの時間幅を、前記最後の新たなサービスの実施に必要な時間幅として設定する処理と、
前記別の1つ又は複数のスロットの時間幅を、前記1つ又は複数の新たなサービスの実施に必要な時間幅として設定する処理と、
をさらに含むことを特徴とする、請求項9又は請求項10に記載のコンピュータ・プログラム。 - 前記長大サービス分割処理は、
前記旅行情報データに基づいて、前記長大サービスのサービス・タイプがa1タイプ又はa2タイプであると判定した場合には、
スロットの開始時刻又は終了時刻のいずれか一方が前記長大サービスを提供する前記旅行業者の営業開始時刻と営業終了時刻との間にあり、前記長大サービスに含まれるアクティビティの実施に適したスロット群と一致する、1つ又は複数のスロットを特定する処理と、
前記特定した1つ又は複数のスロットのうちの最初のスロットが、前記営業開始時刻を含むスロットであると判定したときは、前記営業開始時刻から前記最初のスロットの終了時刻までに対応する最初の新たなサービスに関するデータを作成し、前記最初のスロットの次のスロットが前記営業終了時刻を含むスロットでないときには前記最初のスロットの次のスロット以降の1つ又は複数のスロットに対応する1つ又は複数の新たなサービスに関するデータを順次作成し、次いで、前記営業開始時刻から前記最初のスロットの前記終了時刻までの時間幅を前記最初の新たなサービスの実施に必要な時間幅として設定し、前記最初のスロットの次のスロットが前記営業終了時刻を含むスロットでないときには前記1つ又は複数のスロットの時間幅を前記1つ又は複数の新たなサービスの実施に必要な時間幅としてそれぞれ設定し、最後の新たなサービスの実施に必要な時間幅は、前記長大サービスの実施に必要な時間幅から、前記最初の新たなサービスから前記最後の新たなサービスの直前のサービスまでの実施に必要な時間幅の合計を引いた時間幅を設定する処理と、
前記特定した1つ又は複数のスロットのうちの最初のスロットが、前記営業開始時刻を含むスロットより後のスロットであると判定したときは、前記最初のスロットに対応する最初の新たなサービスに関するデータを作成し、前記最初のスロットの次のスロットが前記営業終了時刻を含むスロットでないときには前記最初のスロットの次のスロット以降の1つ又は複数のスロットに対応する1つ又は複数の新たなサービスに関するデータを順次作成し、次いで、前記最初のスロットの時間幅を前記最初の新たなサービスの実施に必要な時間幅として設定し、前記最初のスロットの次のスロットが前記営業終了時刻を含むスロットでないときには前記1つ又は複数のスロットの時間幅を前記1つ又は複数の新たなサービスの実施に必要な時間幅としてそれぞれ設定し、最後の新たなサービスの実施に必要な時間幅は、前記長大サービスの実施に必要な時間幅から前記最初の新たなサービスから前記最後の新たなサービスの直前のサービスまでの実施に必要な時間幅の合計を引いた時間幅を設定する処理と、
をさらに含むことを特徴とする、請求項9又は請求項10に記載のコンピュータ・プログラム。 - 前記利用可能リストは、サービスに関する情報がサービス毎に1つのデータ単位として構成されており、前記利用可能リスト作成処理の後に、前記利用可能リストに含まれる複数のデータ単位の前記利用可能リスト内での並び順を変更する処理をさらに含むことを特徴とする、請求項8に記載のコンピュータ・プログラム。
- 前記新たなリストは、サービスに関する情報がサービス毎に1つのデータ単位として構成されており、前記新リスト作成処理の後に、前記新たなリストに含まれる複数のデータ単位の前記新たなリスト内での並び順を変更する処理をさらに含むことを特徴とする、請求項9に記載のコンピュータ・プログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006122654A JP4268973B2 (ja) | 2006-03-29 | 2006-03-29 | 混合整数計画問題を用いて旅行計画を自動的に作成するための方法及びコンピュータ・プログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006122654A JP4268973B2 (ja) | 2006-03-29 | 2006-03-29 | 混合整数計画問題を用いて旅行計画を自動的に作成するための方法及びコンピュータ・プログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2007265376A JP2007265376A (ja) | 2007-10-11 |
JP4268973B2 true JP4268973B2 (ja) | 2009-05-27 |
Family
ID=38638256
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006122654A Expired - Fee Related JP4268973B2 (ja) | 2006-03-29 | 2006-03-29 | 混合整数計画問題を用いて旅行計画を自動的に作成するための方法及びコンピュータ・プログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4268973B2 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107665470A (zh) * | 2016-07-29 | 2018-02-06 | 富士通株式会社 | 行程编辑处理设备 |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009211538A (ja) * | 2008-03-05 | 2009-09-17 | Oki Electric Ind Co Ltd | 旅行プラン作成装置、旅行プラン作成方法、旅行プラン作成システム、旅行プラン要求端末及びプログラム |
JP2009245111A (ja) * | 2008-03-31 | 2009-10-22 | Oki Electric Ind Co Ltd | 旅行プラン作成装置、旅行プラン作成システム、旅行プラン要求端末及びプログラム |
JP6051034B2 (ja) * | 2012-12-17 | 2016-12-21 | 株式会社Nttドコモ | 訪問先提案装置及び訪問先提案方法 |
JP6636241B2 (ja) * | 2014-10-28 | 2020-01-29 | 松之進 山口 | 情報処理装置、情報処理方法及びプログラム |
-
2006
- 2006-03-29 JP JP2006122654A patent/JP4268973B2/ja not_active Expired - Fee Related
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107665470A (zh) * | 2016-07-29 | 2018-02-06 | 富士通株式会社 | 行程编辑处理设备 |
Also Published As
Publication number | Publication date |
---|---|
JP2007265376A (ja) | 2007-10-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8032402B2 (en) | Itinerary search tool for territory management | |
Bennett et al. | Dynamic periodic fixed appointment scheduling for home health | |
Marques et al. | A bicriteria heuristic for an elective surgery scheduling problem | |
Shao et al. | The therapist routing and scheduling problem | |
US20100169131A1 (en) | System and Method For Providing Customized Travel Guides and Itineraries Over a Distributed Network | |
US20130262171A1 (en) | System and Method for Directing and Monitoring the Activities of Remote Agents | |
Persson et al. | Health economic modeling to support surgery management at a Swedish hospital | |
US20140046715A1 (en) | Systems ands methods for automated scheduling | |
JP6712469B2 (ja) | 作業計画生成システム | |
EP1941434A2 (en) | System, method, and computer program product for providing travel information using information obtained from other travelers | |
CN103460236A (zh) | 信息提供装置、信息提供方法、信息提供程序及记录媒体 | |
US10115076B2 (en) | System and method employing capacity/demand management for human-factor resources | |
JP4268973B2 (ja) | 混合整数計画問題を用いて旅行計画を自動的に作成するための方法及びコンピュータ・プログラム | |
JP2009535739A (ja) | プロジェクト・リソース計画 | |
Lin | An adaptive scheduling heuristic with memory for the block appointment system of an outpatient specialty clinic | |
Altner et al. | A two-stage stochastic program for multi-shift, multi-analyst, workforce optimization with multiple on-call options | |
AU2006237319B2 (en) | Fare and yield driven travel services optimizer for a budget based request system | |
US20130317876A1 (en) | Systems ands methods for automated scheduling | |
Ozkarahan | A disaggregation model of a flexible nurse scheduling support system | |
Er-Rbib et al. | Preference-based and cyclic bus driver rostering problem with fixed days off | |
Elahipanah et al. | A two-phase mathematical-programming heuristic for flexible assignment of activities and tasks to work shifts | |
Karels et al. | A vehicle routing problem with multiple service agreements | |
Er-Rbib et al. | Integrated and sequential solution methods for the cyclic bus driver rostering problem | |
JP2001067413A (ja) | スケジュール生成装置および方法並びにこれを用いたスケジュール生成システム | |
CN111226252A (zh) | 受理系统、受理方法、以及程序 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20080916 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20081117 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20090217 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20090223 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120227 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120227 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20150227 Year of fee payment: 6 |
|
LAPS | Cancellation because of no payment of annual fees |