(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-09-25
(45)【発行日】2023-10-03
(54)【発明の名称】ダイヤグラム変更装置、ダイヤグラム変更方法およびダイヤグラム変更プログラム
(51)【国際特許分類】
B61L 27/12 20220101AFI20230926BHJP
【FI】
B61L27/12
(21)【出願番号】P 2022518510
(86)(22)【出願日】2020-04-28
(86)【国際出願番号】 JP2020018170
(87)【国際公開番号】W WO2021220424
(87)【国際公開日】2021-11-04
【審査請求日】2022-09-20
(73)【特許権者】
【識別番号】000004237
【氏名又は名称】日本電気株式会社
(74)【代理人】
【識別番号】100103090
【氏名又は名称】岩壁 冬樹
(74)【代理人】
【識別番号】100124501
【氏名又は名称】塩川 誠人
(72)【発明者】
【氏名】窪田 大
(72)【発明者】
【氏名】江藤 力
【審査官】井古田 裕昭
(56)【参考文献】
【文献】国際公開第2016/143606(WO,A1)
【文献】特開2010-285053(JP,A)
【文献】特開平07-285439(JP,A)
【文献】特開平06-107179(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
B61L 27/12
(57)【特許請求の範囲】
【請求項1】
ダイヤグラムを表示装置に出力する出力手段と、
表示されたダイヤグラムに対する変更箇所および変更条件の指定を受け付ける入力手段と、
前記指定に基づいて、前記ダイヤグラムの最適化に用いられる目的関数の制約を生成する制約生成手段と、
生成された前記制約に基づいて目的関数を最適化することにより、前記ダイヤグラムの変更案を生成する変更案生成手段とを備え、
前記入力手段は、変更箇所ごとに、変更条件の指定として、必ず満たすべき条件を示すハード制約、または、満たさない程度に応じてペナルティを増加させる条件を示すソフト制約の指定を
選択的に受け付け、
前記制約生成手段は、前記ハード制約または前記ソフト制約に応じた制約を生成し、
前記出力手段は、前記ダイヤグラムの変更案を出力する
ことを特徴とするダイヤグラム変更装置。
【請求項2】
制約生成手段は、ハード制約を最適化条件とし、ソフト制約を目的関数の構成要素とする制約を生成し、
変更案生成手段は、前記最適化条件のもと、前記ソフト制約を含む目的関数を最適化することにより、ダイヤグラムの変更案を生成する
請求項1記載のダイヤグラム変更装置。
【請求項3】
制約生成手段は、制約を満たさない程度に応じて発生させるペナルティを規定するペナルティ関数でソフト制約を表わす
請求項1または請求項2記載のダイヤグラム変更装置。
【請求項4】
入力手段は、ダイヤグラムの変更案に対する変更箇所および変更条件の指定を受け付け、
制約生成手段は、前記指定に基づいて目的関数の制約を生成し、
変更案生成手段は、前記制約に基づいて目的関数を最適化することにより、前記ダイヤグラムの変更案の更なる変更案を生成する
請求項1から請求項3のうちのいずれか1項に記載のダイヤグラム変更装置
【請求項5】
入力手段は、ダイヤグラムの変更案に対して変更させない固定箇所の指定を受け付け、
制約生成手段は、前記指定に基づいて目的関数の制約を生成する
請求項4記載のダイヤグラム変更装置。
【請求項6】
ダイヤグラムを表示装置に出力し、
表示されたダイヤグラムに対する変更箇所および変更条件の指定を受け付け、
前記指定を受け付ける際、変更箇所ごとに、変更条件の指定として、必ず満たすべき条件を示すハード制約、または、満たさない程度に応じてペナルティを増加させる条件を示すソフト制約の指定を
選択的に受け付け、
前記指定に基づいて、前記ハード制約または前記ソフト制約に応じた前記ダイヤグラムの最適化に用いられる目的関数の制約を生成し、
生成された前記制約に基づいて目的関数を最適化することにより、前記ダイヤグラムの変更案を生成し、
前記ダイヤグラムの変更案を前記表示装置に出力する
ことを特徴とするダイヤグラム変更方法。
【請求項7】
ハード制約を最適化条件とし、ソフト制約を目的関数の構成要素とする制約を生成し、
前記最適化条件のもと、前記ソフト制約を含む目的関数を最適化することにより、ダイヤグラムの変更案を生成する
請求項6記載のダイヤグラム変更方法。
【請求項8】
コンピュータに、
ダイヤグラムを表示装置に出力する出力処理、
表示されたダイヤグラムに対する変更箇所および変更条件の指定を受け付ける入力処理、
前記指定に基づいて、前記ダイヤグラムの最適化に用いられる目的関数の制約を生成する制約生成処理、および、
生成された前記制約に基づいて目的関数を最適化することにより、前記ダイヤグラムの変更案を生成する変更案生成処理を実行させ、
前記入力処理で、変更箇所ごとに、変更条件の指定として、必ず満たすべき条件を示すハード制約、または、満たさない程度に応じてペナルティを増加させる条件を示すソフト制約の指定を
選択的に受け付けさせ、
前記制約生成処理で、前記ハード制約または前記ソフト制約に応じた制約を生成させ、
前記出力処理で、前記ダイヤグラムの変更案を出力させる
ためのダイヤグラム変更プログラム。
【請求項9】
コンピュータに、
制約生成処理で、ハード制約を最適化条件とし、ソフト制約を目的関数の構成要素とする制約を生成させ、
変更案生成処理で、前記最適化条件のもと、前記ソフト制約を含む目的関数を最適化することにより、ダイヤグラムの変更案を生成させる
請求項8記載のダイヤグラム変更プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ダイヤグラムを変更するダイヤグラム変更装置、ダイヤグラム変更方法およびダイヤグラム変更プログラムに関する。
【背景技術】
【0002】
モビリティ技術の発展や、人口増加および都市部の人口過密化などにより、鉄道や航空、バス、船などの交通インフラの数、および、その利用者は、今後も増加する状態にある。現在、交通機関の運行ダイヤグラム(運行ダイヤ、または、ダイヤと記す。)に関する業務は、ほぼ人手で行われており、この業務はますます複雑化している。そこで、業務の省力化や自動化の観点から、AI(Artificial Intelligence )の利用が期待されている。
【0003】
例えば、特許文献1には、列車の遅延低減などに関する運行管理を行う運行管理支援装置が記載されている。特許文献1に記載された装置は、実績ダイヤデータと定刻ダイヤデータとの違い、および、構成情報に基づいて、列車を修正後ダイヤデータに従って運行させるために修正の対象になる構成を特定する。
【先行技術文献】
【特許文献】
【0004】
【発明の概要】
【発明が解決しようとする課題】
【0005】
鉄道や航空の分野では、発生したトラブルなど、現状を示す情報は、現場作業者によって確認された後で、中央指令部へ報告される形態が圧倒的に多く、センサや監視データのみから熟練者レベルの情報抽出を行うことは困難である。そのため、現状ではAIのみによる完全自動化は難しいため、AIを用いた場合でも人間とインタラクティブに定刻ダイヤの変更対応を行うことが求められている。
【0006】
トラブルの発生によって定刻ダイヤの変更が必要になる場合、通常、一刻も早い計画修正の指示が求められる。この場合、計画修正そのものの時間に加え、動作指示に要する時間も最小化することが望まれている。これは、AIを用いる場合も同様であり、修正内容の入力やAIへの動作指示に要する時間も最小化する必要がある。
【0007】
しかし、AIを用いて変更される運行ダイヤの最適化を行う場合、変更に必要とされる制約条件は、通常、直接数式で与える必要がある。そのため、修正方針が決まったとしても、複雑な制約条件を数式化する作業や、コンピュータへの入力作業に時間を要してしまうという問題がある。
【0008】
例えば、特許文献1に記載された装置を用いることで、修正の対象になる構成や、課題を解決するための指標を特定することは可能である。しかし、特許文献1に記載された装置では、その後の計画修正の方法や動作指示について考慮されていないため、問題を特定できたとしても、その後の処理に時間を要してしまうという問題がある。
【0009】
そのため、インタラクティブなAIを通じて計画業務の省力化や高速化を実現するため、すなわち、運行ダイヤの変更を適切かつ素早く実現するためには、作業を行う人間が最適化に必要な指示を直感的に行えることが好ましい。
【0010】
そこで、本発明は、人間が直感的に認識できる態様で、変更後のダイヤグラムの最適化指示を行うことができるダイヤグラム変更装置、ダイヤグラム変更方法およびダイヤグラム変更プログラムを提供することを目的とする。
【課題を解決するための手段】
【0011】
本発明によるダイヤグラム変更装置は、ダイヤグラムを表示装置に出力する出力手段と、表示されたダイヤグラムに対する変更箇所および変更条件の指定を受け付ける入力手段と、指定に基づいて、ダイヤグラムの最適化に用いられる目的関数の制約を生成する制約生成手段と、生成された制約に基づいて目的関数を最適化することにより、ダイヤグラムの変更案を生成する変更案生成手段とを備え、入力手段が、変更箇所ごとに、変更条件の指定として、必ず満たすべき条件を示すハード制約、または、満たさない程度に応じてペナルティを増加させる条件を示すソフト制約の指定を選択的に受け付け、制約生成手段は、ハード制約またはソフト制約に応じた制約を生成し、出力手段は、ダイヤグラムの変更案を出力することを特徴とする。
【0012】
本発明によるダイヤグラム変更方法は、ダイヤグラムを表示装置に出力し、表示されたダイヤグラムに対する変更箇所および変更条件の指定を受け付け、指定を受け付ける際、変更箇所ごとに、変更条件の指定として、必ず満たすべき条件を示すハード制約、または、満たさない程度に応じてペナルティを増加させる条件を示すソフト制約の指定を選択的に受け付け、指定に基づいて、ハード制約またはソフト制約に応じたダイヤグラムの最適化に用いられる目的関数の制約を生成し、生成された制約に基づいて目的関数を最適化することにより、ダイヤグラムの変更案を生成し、ダイヤグラムの変更案を表示装置に出力することを特徴とする。
【0013】
本発明によるダイヤグラム変更プログラムは、コンピュータに、ダイヤグラムを表示装置に出力する出力処理、表示されたダイヤグラムに対する変更箇所および変更条件の指定を受け付ける入力処理、指定に基づいて、ダイヤグラムの最適化に用いられる目的関数の制約を生成する制約生成処理、および、生成された制約に基づいて目的関数を最適化することにより、ダイヤグラムの変更案を生成する変更案生成処理を実行させ、入力処理で、変更箇所ごとに、変更条件の指定として、必ず満たすべき条件を示すハード制約、または、満たさない程度に応じてペナルティを増加させる条件を示すソフト制約の指定を選択的に受け付けさせ、制約生成処理で、ハード制約またはソフト制約に応じた制約を生成させ、出力処理で、ダイヤグラムの変更案を出力させることを特徴とする。
【発明の効果】
【0014】
本発明によれば、人間が直感的に認識できる態様で、変更後のダイヤグラムの最適化指示を行うことができる。
【図面の簡単な説明】
【0015】
【
図1】本発明による運行ダイヤ変更装置の一実施形態の構成例を示すブロック図である。
【
図4】運行ダイヤの変更案を出力した例を示す説明図である。
【
図5】ダイヤグラム変更装置の動作例を示すフローチャートである。
【
図6】鉄道ダイヤの変更を行う場合の例を示す説明図である。
【
図7】本発明によるダイヤグラム変更装置の概要を示すブロック図である。
【発明を実施するための形態】
【0016】
以下、本発明の実施形態を図面を参照して説明する。
【0017】
図1は、本発明によるダイヤグラム変更装置の一実施形態の構成例を示すブロック図である。本実施形態のダイヤグラム変更装置100は、記憶部10と、出力部20と、入力部30と、制約生成部40と、変更案生成部50とを備えている。ダイヤグラム変更装置100は、表示装置200に接続される。
【0018】
なお、本実施形態のダイヤグラム変更装置100は、表示内容に対するユーザからの指示を受け付ける。そこで、本実施形態で用いられる表示装置200は、表示する機能を有するとともに、ユーザからの入力を直接受け付けられる機能を有することが好ましい。そのような表示装置200の態様として、ペンタブレットやタッチパネルなどが挙げられる。
【0019】
ただし、表示装置200自体が直接入力を受け付けられなくてもよい。例えば、ポインティングデバイスを用いたユーザのカーソル操作を表示装置200に表示して、ユーザからの各種指示を受け付ける態様であってもよい。
【0020】
記憶部10は、本実施形態のダイヤグラム変更装置100が処理に用いるパラメータや各種情報などを記憶する。具体的には、記憶部10は、予め定められた運行ダイヤ(以下、定刻ダイヤと記す。)を記憶する。また、記憶部10は、運行ダイヤの最適化処理に用いられる目的関数を記憶する。
【0021】
なお、本実施形態で用いられる目的関数の態様は任意である。目的関数は、例えば、逆強化学習および逆最適化により生成された目的関数であってもよく、オペレーションズリサーチで広く知られた方法(例えば、混合整数計画問題)で用いられるような目的関数であってもよい。さらに、列車の運行ダイヤの最適化は大規模に成り得ることから、目的関数が、アニーリング型量子コンピュータなどで扱われるイジングモデルで表わされていてもよい。
【0022】
出力部20は、対象とするダイヤグラム(運行ダイヤ)を表示装置200に出力する。また、本実施形態の出力部20は、定刻ダイヤと、遅延や障害などによって発生する定刻ダイヤからの差分を出力する。
図2は、出力部20が表示する運行ダイヤの例を示す説明図である。例えば、
図2に例示する運行ダイヤD1が定刻ダイヤであったとする。ここで、遅延や障害発生などで運行ダイヤが乱れた場合、出力部20は、定刻ダイヤからの差分d11を含む運行ダイヤD2を出力する。
【0023】
なお、出力部20が出力する運行ダイヤの範囲や、差分の態様は任意である。出力部20は、例えば、差分を含む範囲の運行ダイヤを出力してもよいし、ユーザから指定された範囲(時刻や駅の範囲など)の運行ダイヤを出力してもよい。また、出力部20は、差分を、定刻ダイヤと区別可能な態様(色を変える、強調表示する、など)で出力してもよい。
【0024】
入力部30は、出力された運行ダイヤに対する変更箇所および変更条件の指定を受け付ける。変更箇所とは、例えば、特定の便(列車、航空機など)の一部または全部であってもよく、所定の範囲の便であってもよい。また、変更条件には、変更箇所に対する具体的な変更内容(運行時刻、運行速度など)の他、変更する際に満たすべき制約の強さを含む。制約の強さとは、大きく2種類に分類される。1つは、必ず満たすべき制約であり、もう1つは、満たさない程度に応じて何らかのペナルティを発生させる制約である。以下の説明では、前者の制約をハード制約と記し、後者の制約をソフト制約と記す。
【0025】
さらに、ソフト制約が指定される場合、入力部30は、発生させるペナルティの程度(ソフトさの程度)を定義する関数のタイプの指定を受け付けてもよい。なお、入力部30は、関数のタイプの入力を直接受け付けてもよく、予め定めた関数のタイプの一覧から、ソフトさの程度に応じてユーザに選択させてもよい。なお、関数のタイプの具体的内容については後述される。
【0026】
図3は、入力部30が受け付ける指定の例を示す説明図である。
図3において、画面201は、ユーザによりハード制約の指示d12を受け付けた例を示し、画面202は、ユーザによりソフト制約の指示d13を受け付けた例を示す。
図3に示す例の場合、例えば、指示d12は、指定された範囲の便を定刻通りに運行させるという制約を表わし、指示d13は、指定された範囲をできるだけ変更させないように最適化するという制約を表わす。
【0027】
なお、
図3では、変更箇所の範囲指定を受け付け、その指定された範囲に対する変更条件としてソフト制約またはハード制約のいずれかを受け付ける方法を例示した。ただし、入力部30が変更箇所および変更条件の指定を受け付ける方法は、
図3に例示する方法に限定されない。表示された運行ダイヤに対して行われる変更指示の意味が特定できるように、運行ダイヤへの指定とその指定が意味する変更内容との対応を予め定めておけばよい。
【0028】
また、ハード制約またはソフト制約の指定も、画面上での指定に限られず、例えば、ペンタブレットに備えられたボタン等により指定されてもよい。
【0029】
具体的な変更指示の操作として、ペンタブレットやタッチパネルを用いた範囲入力や、ポインティングデバイスを用いた画面上に表示されるカーソルに対するクリック操作や矩形選択などが挙げられる。
【0030】
制約生成部40は、変更箇所および変更条件の指定に基づいて、運行ダイヤの最適化に用いられる目的関数の制約を生成する。特に、本実施形態では、制約生成部40は、上述するハード制約またはソフト制約に応じた制約条件を生成する。具体的には、制約生成部40は、ハード制約を最適化条件とし、ソフト制約を目的関数の構成要素とする制約を生成する。
【0031】
ハード制約およびソフト制約は、例えば、逆強化学習および逆最適化における目的関数の構成要素になっている特徴量と同様に扱うことが可能である。特に、混合整数計画問題など、幅広い最適化問題において、一つの制約式は、等式(a・x+b=0)または不等式(a・x+b>0)で示される線形式で扱うことが可能である。なお、上記線形式において、xは最適化対象の変数である。つまり、制約式を生成することは、係数ベクトルaおよびスカラー値bを生成することと等価である。
【0032】
上述するように、ハード制約は、必ず満たすべき制約であることから、制約生成部40は、目的関数を最適化するための必須条件(すなわち、最適化条件)としてハード制約を取り扱う。制約生成部40は、変更箇所および変更条件の指定に応じた制約を示す線形式を最適化条件として生成してもよい。
【0033】
ソフト制約は、上述するように、満たさない程度に応じて何らかのペナルティを発生させる制約である。一方、ソフト制約の場合、ハード制約と異なり、制約を満たさなかった場合の目的関数におけるペナルティの取り決めが必要になる。制約生成部40は、制約を満たさない程度に応じて発生させるペナルティ(ソフトさの程度)を規定する関数f(a・x+b)を用いてペナルティを表現してもよい。
【0034】
例えば、扱うソフト制約が不等式a・x+b>0で表わされる場合、制約生成部40は、以下の式1に例示する関数fを制約として用いてもよい。
【0035】
【0036】
この場合の関数fのタイプの具体例として、ヒンジ(hinge)関数が挙げられる。また、他にも、関数fの非負部分に、(a・x+b)についての多項式や、指数関数および対数関数や、これらの合成関数が用いられてもよく、ヘヴィサイド(Heaviside)階段関数のような不連続関数が用いられてもよい。なお、関数fのタイプは、予め定められていてもよく、入力部30を介してユーザにより選択されてもよい。
【0037】
一方、扱うソフト制約が等式a・x+b=0で表わされる場合、制約生成部40は、以下の式2に例示する関数fを制約として用いてもよい。
【0038】
【0039】
この場合の関数fのタイプの具体例として、多項式(a・x+b)2などが挙げられる。なお、等式の場合も不等式の場合と同様に、様々な関数を用いることが可能である。
【0040】
そこで、制約生成部40は、ソフト制約を生成する場合(すなわち、ソフト制約が指定されている場合)、変更箇所および変更条件の指定に基づいて、制約が等式で表わされるか、不等式で表わされるか判定してもよい。そして、制約生成部40は、判定結果および関数fのタイプの指定に基づいて関数を特定し、特定した関数を目的関数の構成要素とする制約を生成してもよい。
【0041】
変更案生成部50は、制約生成部40によって生成された制約に基づいて目的関数を最適化することにより、運行ダイヤの変更案を生成する。具体的には、変更案生成部50は、制約生成部40によって生成された最適化条件のもと、ソフト制約を含む目的関数を最適化することにより、運行ダイヤの変更案を生成する。
【0042】
なお、本実施形態で用いる目的関数および条件に基づいて最適化が可能であれば、変更案生成部50の態様は任意である。変更案生成部50は、例えば、指定された目的関数および条件(最適化条件)に基づいて最適化処理を行う最適化エンジン(最適化ソルバ)により実現されてもよい。また、目的関数がイジングモデルで表わされている場合、変更案生成部50は、例えば、量子アニーリングを用いて最適化問題を解く量子コンピュータに対して最適化処理を実行させてもよい。すなわち、目的関数がイジングモデルで表現されている場合、一般的なコンピュータで運行ダイヤの変更案を生成しつつ、最適化処理が量子コンピュータを用いて行われてもよい。
【0043】
変更案生成部50により変更案が生成されると、出力部20は、生成された運行ダイヤの変更案を出力する。出力部20は、例えば、定刻ダイヤからの変更点を、変更前の定刻ダイヤと区別可能な態様で表示装置200に表示させることが好ましい。
図4は、運行ダイヤの変更案を出力した例を示す説明図である。
図4に示す例では、変更箇所を点線で示している。
【0044】
さらに、入力部30は、運行ダイヤの変更案に対する変更箇所および変更条件の指定を受け付けてもよい。この場合、制約生成部40は、指定に基づいて目的関数の制約を生成し、変更案生成部50は、生成された制約に基づいて目的関数を最適化することにより、運行ダイヤの変更案の更なる変更案を生成してもよい。このようにすることで、変更案に対して、より変更を所望する箇所を考慮した変更案を作成することが可能になる。
【0045】
また、このとき、入力部30は、運行ダイヤの変更案に対する変更箇所および変更条件の指定だけでなく、運行ダイヤの変更案に対して変更させない固定箇所の指定を受け付けてもよい。固定箇所の指定は、ハード制約に対応する。このような指定を受け付けることで、変更案を再作成する場合にも、ユーザが意図的に変更させない運行ダイヤを作成することが可能になる。
【0046】
出力部20と、入力部30と、制約生成部40と、変更案生成部50とは、プログラム(ダイヤグラム変更プログラム)に従って動作するコンピュータのプロセッサ(例えば、CPU(Central Processing Unit )、GPU(Graphics Processing Unit))によって実現されてもよい。
【0047】
この場合、例えば、プログラムは、記憶部10に記憶され、プロセッサは、そのプログラムを読み込み、プログラムに従って、出力部20、入力部30、制約生成部40および変更案生成部50として動作してもよい。また、出力部20、入力部30、制約生成部40および変更案生成部50の機能がSaaS(Software as a Service )形式で提供されてもよい。
【0048】
また、出力部20と、入力部30と、制約生成部40と、変更案生成部50とは、それぞれが専用のハードウェアで実現されていてもよい。例えば、上述するように、目的関数がイジングモデルで表わされている場合、変更案生成部50の一部が、量子コンピュータにより実現されていてもよい。また、各装置の各構成要素の一部又は全部は、汎用または専用の回路(circuitry )、プロセッサ等やこれらの組合せによって実現されてもよい。これらは、単一のチップによって構成されてもよいし、バスを介して接続される複数のチップによって構成されてもよい。各装置の各構成要素の一部又は全部は、上述した回路等とプログラムとの組合せによって実現されてもよい。
【0049】
また、出力部20、入力部30、制約生成部40および変更案生成部50の各構成要素の一部又は全部が複数の情報処理装置や回路等により実現される場合には、複数の情報処理装置や回路等は、集中配置されてもよいし、分散配置されてもよい。例えば、情報処理装置や回路等は、クライアントサーバシステム、クラウドコンピューティングシステム等、各々が通信ネットワークを介して接続される形態として実現されてもよい。
【0050】
次に、本実施形態のダイヤグラム変更装置100の動作を説明する。
図5は、本実施形態のダイヤグラム変更装置100の動作例を示すフローチャートである。出力部20は、現在の運行ダイヤを表示装置200に出力する(ステップS11)。入力部30は、表示された運行ダイヤに対する変更箇所および変更条件の指定を受け付ける(ステップS12)。具体的には、入力部30は、変更箇所ごとにソフト制約またはハード制約の指定を受け付ける。制約生成部40は、受け付けた指定に基づいて、目的関数の制約を生成する(ステップS13)。変更案生成部50は、生成された制約に基づいて目的関数を最適化することにより、運行ダイヤの変更案を生成する(ステップS14)。そして、出力部20は、運行ダイヤの変更案を出力する(ステップS15)。
【0051】
以降、必要に応じて、入力部30は、運行ダイヤの変更案に対する変更箇所および変更条件の指定を受け付け、制約生成部40は、指定に基づいて目的関数の制約を生成し、変更案生成部は、制約に基づいて目的関数を最適化することにより、運行ダイヤの変更案の更なる変更案を生成する。
【0052】
以上のように、本実施形態では、出力部20が運行ダイヤを表示装置200に出力し、入力部30が表示された運行ダイヤに対する変更箇所および変更条件の指定を受け付ける。そして、制約生成部40が、受け付けた指定に基づいて目的関数の制約を生成し、変更案生成部50が、生成された制約に基づいて目的関数を最適化することにより、運行ダイヤの変更案を生成する。その際、入力部30は、変更箇所ごとに、変更条件の指定として、ハード制約またはソフト制約の指定を受け付け、制約生成部40は、ハード制約またはソフト制約に応じた制約を生成し、出力部20は、運行ダイヤの変更案を出力する。そのような構成により、人間が直感的に認識できる態様で、変更後のダイヤグラムの最適化指示を行うことができる。
【0053】
次に、本実施形態のダイヤグラム変更装置100の具体例を説明する。
図6は、鉄道ダイヤの変更を行う場合の例を示す説明図である。まず、出力部20が、
図6に例示する鉄道ダイヤを出力する。その後、本具体例では、入力部30が、ある鉄道のダイヤ線d14に対する変更指示を受け付けたものとする。なお、
図6において入力部30が受け付けた指定箇所を点線で示している。
【0054】
鉄道ダイヤの場合、各ダイヤ線は、どの時刻にどの駅(または駅間の位置)に居るかという座標の系列で指定されている。なお、各ダイヤ線の指定に、時刻と位置情報に加え、使用している線路の番線記号が含まれていてもよい。
図6に示す例では、{(t
1,A駅),(t
2,B駅),(t
3,C駅),(t
4,D駅),(t
5,E駅)}という座標指定により、1本のダイヤ(例えば、特急列車)が表されている。例えば、各駅停車で各々の駅に停車することが、{…,(t
1,A駅),(t
2,B駅),(t
3,C駅),(t
4,D駅),(t
5,E駅),…}と表現されてもよい。
【0055】
例えば、この変更指示が、ハード指定であったとする。この場合、選択した運行ダイヤを動かさないという制約に対応する。すなわち、この変更指定は、列車何時に各駅に到着するか、という変数に関する等式制約となる。制約生成部40は、例えば、予め定めた規則に従って、t=t1や、駅に関する変数s=“A駅”という制約を生成してもよい。そして、制約生成部40は、最適化ソルバである変更案生成部50に対し、生成した制約を最適化条件として、目的関数と独立に入力すればよい。
【0056】
一方、この変更指示が、ソフト制約であったとする。この場合、選択した運行ダイヤをできるだけ動かさない、という制約に対応する。制約生成部40は、ハード制約と同様に制約(例えば、f(a・x+b))を生成した後、生成した制約を直接加えた目的関数を生成して、変更案生成部50に入力する。
【0057】
変更案生成部50は、入力された目的関数および最適化条件に基づいて目的関数を最適化することで、運行ダイヤの変更案を生成する。
【0058】
次に、本発明の概要を説明する。
図7は、本発明によるダイヤグラム変更装置の概要を示すブロック図である。本発明によるダイヤグラム変更装置80(例えば、ダイヤグラム変更装置100)は、ダイヤグラム(例えば、運行ダイヤ)を表示装置(例えば、表示装置200)に出力する出力手段81(例えば、出力部20)と、表示されたダイヤグラムに対する変更箇所および変更条件の指定を受け付ける入力手段82(例えば、入力部30)と、上記指定に基づいて、ダイヤグラムの最適化に用いられる目的関数の制約を生成する制約生成手段83(例えば、制約生成部40)と、生成された制約に基づいて目的関数を最適化することにより、ダイヤグラムの変更案を生成する変更案生成手段84(例えば、変更案生成部50)とを備えている。
【0059】
そして、入力手段82は、変更箇所ごとに、変更条件の指定として、必ず満たすべき条件を示すハード制約、または、満たさない程度に応じてペナルティを増加させる条件を示すソフト制約の指定を受け付け、制約生成手段83は、ハード制約またはソフト制約に応じた制約を生成し、出力手段81は、ダイヤグラムの変更案を出力する。
【0060】
そのような構成により、人間が直感的に認識できる態様で、変更後のダイヤグラムの最適化指示を行うことができる。
【0061】
また、制約生成手段83は、ハード制約を最適化条件とし、ソフト制約を目的関数の構成要素とする制約を生成し、変更案生成手段84は、最適化条件のもと、ソフト制約を含む目的関数を最適化することにより、ダイヤグラムの変更案を生成してもよい。
【0062】
また、制約生成手段83は、制約を満たさない程度に応じて発生させるペナルティを規定するペナルティ関数でソフト制約を表わしてもよい。
【0063】
また、入力手段82は、ダイヤグラム運行ダイヤの変更案に対する変更箇所および変更条件の指定を受け付け、制約生成手段83は、指定に基づいて目的関数の制約を生成し、変更案生成手段84は、制約に基づいて目的関数を最適化することにより、ダイヤグラムの変更案の更なる変更案を生成してもよい。そのような構成によれば、AIが最適と判断した変更案に対し、ユーザが適宜変更を行うことが可能になる。
【0064】
その際、入力手段82は、ダイヤグラムの変更案に対して変更させない固定箇所の指定を受け付け、制約生成手段83は、上記指定に基づいて目的関数の制約を生成してもよい。
【0065】
上記の実施形態の一部又は全部は、以下の付記のようにも記載されうるが、以下には限られない。
【0066】
(付記1)ダイヤグラムを表示装置に出力する出力手段と、表示されたダイヤグラムに対する変更箇所および変更条件の指定を受け付ける入力手段と、前記指定に基づいて、前記ダイヤグラムの最適化に用いられる目的関数の制約を生成する制約生成手段と、生成された前記制約に基づいて目的関数を最適化することにより、前記ダイヤグラムの変更案を生成する変更案生成手段とを備え、前記入力手段は、変更箇所ごとに、変更条件の指定として、必ず満たすべき条件を示すハード制約、または、満たさない程度に応じてペナルティを増加させる条件を示すソフト制約の指定を受け付け、前記制約生成手段は、前記ハード制約または前記ソフト制約に応じた制約を生成し、前記出力手段は、前記ダイヤグラムの変更案を出力することを特徴とするダイヤグラム変更装置。
【0067】
(付記2)制約生成手段は、ハード制約を最適化条件とし、ソフト制約を目的関数の構成要素とする制約を生成し、変更案生成手段は、前記最適化条件のもと、前記ソフト制約を含む目的関数を最適化することにより、ダイヤグラムの変更案を生成する付記1記載のダイヤグラム変更装置。
【0068】
(付記3)制約生成手段は、制約を満たさない程度に応じて発生させるペナルティを規定するペナルティ関数でソフト制約を表わす付記1または付記2記載のダイヤグラム変更装置。
【0069】
(付記4)入力手段は、ダイヤグラム運行ダイヤの変更案に対する変更箇所および変更条件の指定を受け付け、制約生成手段は、前記指定に基づいて目的関数の制約を生成し、変更案生成手段は、前記制約に基づいて目的関数を最適化することにより、前記ダイヤグラムの変更案の更なる変更案を生成する付記1から付記3のうちのいずれか1つに記載のダイヤグラム変更装置
【0070】
(付記5)入力手段は、ダイヤグラムの変更案に対して変更させない固定箇所の指定を受け付け、制約生成手段は、前記指定に基づいて目的関数の制約を生成する付記4記載のダイヤグラム変更装置。
【0071】
(付記6)ダイヤグラムを表示装置に出力し、表示されたダイヤグラムに対する変更箇所および変更条件の指定を受け付け、前記指定を受け付ける際、変更箇所ごとに、変更条件の指定として、必ず満たすべき条件を示すハード制約、または、満たさない程度に応じてペナルティを増加させる条件を示すソフト制約の指定を受け付け、前記指定に基づいて、前記ハード制約または前記ソフト制約に応じた前記ダイヤグラムの最適化に用いられる目的関数の制約を生成し、生成された前記制約に基づいて目的関数を最適化することにより、前記ダイヤグラムの変更案を生成し、前記ダイヤグラムの変更案を前記表示装置に出力することを特徴とするダイヤグラム変更方法。
【0072】
(付記7)ハード制約を最適化条件とし、ソフト制約を目的関数の構成要素とする制約を生成し、前記最適化条件のもと、前記ソフト制約を含む目的関数を最適化することにより、ダイヤグラムの変更案を生成する付記6記載のダイヤグラム変更方法。
【0073】
(付記8)コンピュータに、ダイヤグラムを表示装置に出力する出力処理、表示されたダイヤグラムに対する変更箇所および変更条件の指定を受け付ける入力処理、前記指定に基づいて、前記ダイヤグラムの最適化に用いられる目的関数の制約を生成する制約生成処理、および、生成された前記制約に基づいて目的関数を最適化することにより、前記ダイヤグラムの変更案を生成する変更案生成処理を実行させ、前記入力処理で、変更箇所ごとに、変更条件の指定として、必ず満たすべき条件を示すハード制約、または、満たさない程度に応じてペナルティを増加させる条件を示すソフト制約の指定を受け付けさせ、前記制約生成処理で、前記ハード制約または前記ソフト制約に応じた制約を生成させ、前記出力処理で、前記ダイヤグラムの変更案を出力させるためのダイヤグラム変更プログラムを記憶するプログラム記憶媒体。
【0074】
(付記9)コンピュータに、制約生成処理で、ハード制約を最適化条件とし、ソフト制約を目的関数の構成要素とする制約を生成させ、変更案生成処理で、前記最適化条件のもと、前記ソフト制約を含む目的関数を最適化することにより、ダイヤグラムの変更案を生成させるためのダイヤグラム変更プログラムを記憶する付記8記載のプログラム記憶媒体。
【0075】
(付記10)コンピュータに、ダイヤグラムを表示装置に出力する出力処理、表示されたダイヤグラムに対する変更箇所および変更条件の指定を受け付ける入力処理、前記指定に基づいて、前記ダイヤグラムの最適化に用いられる目的関数の制約を生成する制約生成処理、および、生成された前記制約に基づいて目的関数を最適化することにより、前記ダイヤグラムの変更案を生成する変更案生成処理を実行させ、前記入力処理で、変更箇所ごとに、変更条件の指定として、必ず満たすべき条件を示すハード制約、または、満たさない程度に応じてペナルティを増加させる条件を示すソフト制約の指定を受け付けさせ、前記制約生成処理で、前記ハード制約または前記ソフト制約に応じた制約を生成させ、前記出力処理で、前記ダイヤグラムの変更案を出力させるためのダイヤグラム変更プログラム。
【0076】
(付記11)コンピュータに、制約生成処理で、ハード制約を最適化条件とし、ソフト制約を目的関数の構成要素とする制約を生成させ、変更案生成処理で、前記最適化条件のもと、前記ソフト制約を含む目的関数を最適化することにより、ダイヤグラムの変更案を生成させる付記10記載のダイヤグラム変更プログラム。
【0077】
以上、実施形態を参照して本願発明を説明したが、本願発明は上記実施形態に限定されるものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
【符号の説明】
【0078】
10 記憶部
20 出力部
30 入力部
40 制約生成部
50 変更案生成部
100 ダイヤグラム変更装置