JP6440840B2 - Planning work support system and planning work support method - Google Patents
Planning work support system and planning work support method Download PDFInfo
- Publication number
- JP6440840B2 JP6440840B2 JP2017524167A JP2017524167A JP6440840B2 JP 6440840 B2 JP6440840 B2 JP 6440840B2 JP 2017524167 A JP2017524167 A JP 2017524167A JP 2017524167 A JP2017524167 A JP 2017524167A JP 6440840 B2 JP6440840 B2 JP 6440840B2
- Authority
- JP
- Japan
- Prior art keywords
- solution
- plan
- plan information
- value
- bit
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N99/00—Subject matter not provided for in other groups of this subclass
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/04—Forecasting or optimisation specially adapted for administrative or management purposes, e.g. linear programming or "cutting stock problem"
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q50/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/40—Business processes related to the transportation industry
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Strategic Management (AREA)
- General Physics & Mathematics (AREA)
- Human Resources & Organizations (AREA)
- Economics (AREA)
- Tourism & Hospitality (AREA)
- Marketing (AREA)
- General Business, Economics & Management (AREA)
- Quality & Reliability (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Entrepreneurship & Innovation (AREA)
- Game Theory and Decision Science (AREA)
- Operations Research (AREA)
- Development Economics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Primary Health Care (AREA)
- Train Traffic Observation, Control, And Security (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Description
本発明は、計画業務支援システムおよび計画業務支援方法に関する。 The present invention relates to a planned work support system and a planned work support method.
最適化問題は、現実の制約に縛られた問題に対する数理的な解決解を求める上で用いるモデルである。その中でも、解となる変数をブール値で求める0−1整数計画問題は、タスクと作業員の割当関係を決めるような割当計画に適用可能であり、人員計画、商品配送、設備配置などの多くの応用分野を持つ。 The optimization problem is a model used for finding a mathematical solution to a problem constrained by actual constraints. Among them, the 0-1 integer programming problem that obtains a variable as a solution by a Boolean value can be applied to an allocation plan that determines the allocation relationship between a task and a worker. With application fields.
しかし、実際の問題に応用するには多様な制約条件が加わったり、計算範囲が爆発的に広がったりするなどして、最適化以前に制約充足解を見つけることもむつかしい。例えば、制約条件を満たす解が存在するかどうかを判定する0−1整数計画問題は、多項式時間で解けないNP完全問題の代表例のひとつである。このため、応用分野固有の緩和条件を加えた問題を解く研究や最適解に近い近似解を求めようとする研究が多くなされてきた。整数計画問題の最適解を求める一般的な解法にはシンプレックス法、総当り法などがある。また、最適化手法が適用困難な問題に対して、近似解を求める発見的解法(ヒューリスティクス)も使われる。 However, it is difficult to find a constraint-satisfying solution before optimization because various constraints are added or the calculation range expands explosively when applied to actual problems. For example, the 0-1 integer programming problem that determines whether there is a solution that satisfies the constraint condition is one of representative examples of NP complete problems that cannot be solved in polynomial time. For this reason, many studies have been made to solve problems with relaxation conditions peculiar to application fields and to seek approximate solutions that are close to optimal solutions. Common solutions for finding the optimal solution for integer programming problems include the simplex method and the brute force method. Heuristics that find approximate solutions are also used for problems where optimization techniques are difficult to apply.
そうした技術に関連するものとして、以下の技術が提案されている。すなわち、所与の運転整理ダイヤに基づいて当該運転整理ダイヤに対する乗務員の運用行路の候補を生成する行路候補生成手段と、前記生成された運用行路候補それぞれについて当該運用行路候補の選択是非を“1”又は“0”の値で表わす0以上1以下の変数として表わし、前記運転整理ダイヤを構成する全列車の各乗務それぞれについて当該乗務に係る運用行路候補の変数の和が1以上となるように表わした第1のモデル式と、各乗務員それぞれについて当該乗務員の乗務に係る運用行路候補の変数の和が1となるように表わした第2のモデル式とを求め、前記第1及び第2のモデル式が成り立つ前記変数それぞれの値を算出する解算出手段と、前記解算出手段により算出された前記変数の値全てが整数となったときの前記運用行路候補の組合せを暫定運用整理案として取得する暫定運用整理案取得手段と、運用行路候補が当該評価指標に適合するための条件と適合した場合の評価値とが定められた複数の評価指標それぞれの適否を判定して評価値を算出することで運用行路候補を評価する評価処理を、前記生成された運用行路候補について実行する評価手段と、前記暫定運用整理案取得手段により取得された暫定運用整理案の運用行路候補それぞれの前記変数の値と、前記評価手段により算出された当該運用行路候補の評価値との乗算値を積算した値を当該暫定運用整理案に対する総評価値として算出する総評価値算出手段と、前記解算出手段及び前記暫定運用整理案取得手段による処理を繰り返し実行させる繰り返し制御手段と、を備える運用整理案作成装置(特許文献1参照)などが提案されている。 The following technologies have been proposed as related to such technologies. That is, a route candidate generating means for generating a candidate for an operation route of a crew member for the operation adjustment diagram based on a given operation adjustment diagram, and selection of the operation route candidate for each of the generated operation route candidates is “1”. "0" or "0" as a variable represented by a value of 0 or more and 1 or less so that the sum of the variables of operation route candidates related to the crew is 1 or more for each crew of all trains constituting the operation scheduling diagram. A first model expression expressed and a second model expression expressed so that a sum of variables of operation route candidates related to the crew of each crew member is 1 for each crew member. A solution calculating means for calculating the value of each of the variables for which the model formula is satisfied, and the operational route candidate when all the values of the variables calculated by the solution calculating means are integers. Appropriateness of each of a plurality of evaluation indicators with provisional operation arrangement plan acquisition means for acquiring a combination as a provisional operation arrangement plan and evaluation values when the operation route candidates are matched with the conditions for matching the evaluation indicators. An evaluation process for evaluating an operation route candidate by determining and calculating an evaluation value for the generated operation route candidate and an interim operation arrangement plan acquired by the provisional operation arrangement plan acquisition unit Total evaluation value calculating means for calculating a value obtained by accumulating the value of the variable of each operational route candidate and the evaluation value of the operational route candidate calculated by the evaluation means as a total evaluation value for the provisional operational arrangement plan; An operation arrangement plan creation device comprising: a repetitive control means for repeatedly executing the processing by the solution calculation means and the provisional operation arrangement plan acquisition means (Patent Document 1) Irradiation), and the like have been proposed.
従来より提案されてきた技術であっても、問題の特性によっては解空間と緩和条件がフィットせず、必ずしも精度の良い近似解や最適解を発見、導出できないケースや、或いはユーザの許容範囲を越えた長大な計算時間を要するケースもある。 Even with the techniques that have been proposed in the past, depending on the characteristics of the problem, the solution space and relaxation conditions do not fit, and it is not always possible to find and derive accurate approximate solutions or optimal solutions, or the user's tolerance range. In some cases, a long calculation time is required.
そこで本発明の目的は、計画問題の解法処理を高速化し、従来よりも精度良好な解を効率良く取得する技術を提供することにある。 SUMMARY OF THE INVENTION An object of the present invention is to provide a technique for speeding up the solution processing of a planning problem and efficiently obtaining a solution with better accuracy than before.
上記課題を解決する本発明の計画業務支援システムは、事象への割当対象となるリソース数に基づく所定数のビット列たる変数を、前記事象の数に応じて所定セット組み合わせ、複数事象に対する複数リソースの各割当状態を前記ビット列で示した計画情報を格納する記憶装置と、前記計画情報における所定制約条件への違反事象を、前記各変数のビット列および前記変数間における同一リソースに対応した各ビット、のそれぞれについて、所定値との所定論理演算を行ってリソースの多重割当および未割当として特定し、該当違反事象を解消すべく前記計画情報における該当変数のビット列に関して所定アルゴリズムによる変更を行って解候補を作成し、前記解候補と前記計画情報を置換して前記違反事象の解消および解候補作成の処理を繰り返すことで出力計画情報を生成する演算装置とを備えることを特徴とする。 The planned work support system of the present invention that solves the above-mentioned problem is a combination of a predetermined number of variables based on the number of resources to be assigned to events, a predetermined set of variables according to the number of events, and a plurality of resources for a plurality of events A storage device for storing plan information indicating each allocation state of the bit string, and a violation event for a predetermined constraint condition in the plan information, each bit corresponding to the same resource between the bit string of each variable and the variable, For each of the above, a predetermined logical operation with a predetermined value is performed to identify multiple allocation and non-allocation of resources, and a bit sequence of the corresponding variable in the plan information is changed by a predetermined algorithm in order to eliminate the violation event, and a solution candidate The solution candidate and the plan information are replaced, and the violation event is resolved and the solution candidate is created. Characterized in that it comprises a computing device for generating an output plan information by returning Ri.
また、本発明の計画業務支援方法は、事象への割当対象となるリソース数に基づく所定数のビット列たる変数を、前記事象の数に応じて所定セット組み合わせ、複数事象に対する複数リソースの各割当状態を前記ビット列で示した計画情報を格納する記憶装置を備えた情報処理システムが、前記計画情報における所定制約条件への違反事象を、前記各変数のビット列および前記変数間における同一リソースに対応した各ビット、のそれぞれについて、所定値との所定論理演算を行ってリソースの多重割当および未割当として特定し、該当違反事象を解消すべく前記計画情報における該当変数のビット列に関して所定アルゴリズムによる変更を行って解候補を作成し、前記解候補と前記計画情報を置換して前記違反事象の解消および解候補作成の処理を繰り返すことで出力計画情報を生成することを特徴とする。 Further, the planned work support method of the present invention combines a predetermined number of variables, which are bit strings based on the number of resources to be allocated to events, in a predetermined set according to the number of events, and allocates a plurality of resources to a plurality of events. An information processing system including a storage device that stores plan information indicating a state of the bit string corresponds to a violation event of a predetermined constraint condition in the plan information corresponding to the bit string of each variable and the same resource between the variables. For each bit, a predetermined logical operation with a predetermined value is performed to identify multiple allocation and non-allocation of resources, and the bit string of the corresponding variable in the plan information is changed by a predetermined algorithm to eliminate the corresponding violation event To create a solution candidate, replace the solution candidate with the plan information, eliminate the violation event, and create a solution candidate And generating an output plan information by repeating the process.
本発明によれば、計画問題の解法処理を高速化し、従来よりも精度良好な解を効率良く取得可能となる。 According to the present invention, it is possible to speed up the solution processing of a planning problem and efficiently obtain a solution with better accuracy than before.
−−−全体構成−−−
以下に本発明の実施形態について図面を用いて詳細に説明する。図1は本実施形態の計画業務支援システムたる自動提案サブシステム10を含むネットワーク構成例を示す図である。図1に示す計画業務支援システム10は、計画問題の解法処理を高速化し、従来よりも精度良好な解を効率良く取得可能とするコンピュータシステムである。こうした計画業務支援システム10は、自動提案サブシステム100およびデータサーバ200から構成されている。但し以降の説明では、処理を主体的に実行する自動提案サブシステム100を計画業務支援システム10の主要構成として説明するものとする。---- Overall configuration ---
Embodiments of the present invention will be described below in detail with reference to the drawings. FIG. 1 is a diagram showing a network configuration example including an
こうした計画業務支援システム10はネットワーク20に接続され、ユーザ端末300および状況変化連絡機400とデータ通信可能となっている。なお、データサーバ200の保持するデータを自動提案サブシステム100が全て保持し、自動提案サブシステム100のみで計画業務支援システムを構成するとしてもよい。
Such a planned
なお、上述のユーザ端末300は、企業等で計画業務を担当するユーザが利用する計算機である。このユーザ端末300は、自動提案サブシステム100、データサーバ200、および状況変化連絡機400の各通信装置とアクセスし、これらの各機器に対してユーザ指示の通知と処理結果の受信および表示の各処理を行う。
Note that the above-described
また、状況変化連絡機400は計算機であり、計画対象となる各種事象やリソースに関して生じた変化を自身のセンサ等で、或いは他の適宜な管理装置等の通知によって感知し、予め定めたプロトコルにて、上述の変化に関する連絡をデータサーバ200(または自動提案サブシステム100)に対して実行する。状況変化連絡機400は計算機であるため、こうした処理に対応した機能をプログラムによって実装する。こうした変化に関する連絡の処理としては、例えば、初期計画に従って人が業務遂行する際にどの人の何のタスクにどのような問題が生じているかについての情報をセンサ、ネットワークを介して受信した場合に、該当情報をデータサーバ200に送信して状況情報216を逐次更新するものが想定出来る。また、変化に関する連絡の他の処理としては、例えば、上述の変化に関する情報によって計画DB218の初期計画2180ないし入力計画2181の変更を行うことである。これら状況変化連絡機400の機能は、ユーザによって変化に関する情報入力を受けたユーザ端末300が同様に担うとしてもよい。
−−−ハードウェア構成−−−
図2は、第1実施形態における自動提案サブシステム100のハードウェア構成例を示す図である。本実施形態の計画業務支援システム10を構成する自動提案サブシステム100のハードウェア構成は以下の如くとなる。自動提案サブシステム100は、ハードディスクドライブなど適宜な不揮発性記憶素子で構成される記憶装置101、RAMなど揮発性記憶素子で構成されるメモリ103、記憶装置101に保持されるプログラム102をメモリ103に読み出すなどして実行しシステム自体の統括制御を行なうとともに各種判定、演算及び制御処理を行なうCPUなどの演算装置104、ネットワーク20と接続し他装置との通信処理を担う通信装置105を備える。Further, the situation
--- Hardware configuration ---
FIG. 2 is a diagram illustrating a hardware configuration example of the
なお、上述の演算装置104を構成するCPUは、複数ビットを同時に読み出し、演算、格納、出力するレジスタを備え、メモリ103内に配置したプログラムモジュールの制御命令に従って処理を行うものである。
The CPU constituting the
図3は、第1実施形態のデータサーバ200のハードウェア構成例を示す図である。本実施形態の計画業務支援システム10を、上述の自動提案サブシステム100と共に構成するデータサーバ200のハードウェア構成は以下の如くとなる。データサーバ200は、ハードディスクドライブなど適宜な不揮発性記憶素子で構成される記憶装置201、RAMなど揮発性記憶素子で構成されるメモリ203、記憶装置201に保持されるプログラム202をメモリ203に読み出すなどして実行しシステム自体の統括制御を行なうとともに各種判定、演算及び制御処理を行なうCPUなどの演算装置204、ネットワーク20と接続し他装置との通信処理を担う通信装置205を備える。
FIG. 3 is a diagram illustrating a hardware configuration example of the
なお、上述の記憶装置201には、計算ログ215、状況情報216、業務モデル217、計画DB218、解候補DB219、承認計画220、および属性情報221のデータが格納されている。これらデータは、予めユーザが作成して保存しておくか、あるいはネットワーク接続された別の機器によって作成されたデータを受け取り保存したものとなる。
Note that the
このうち計算ログ215は、解候補作成における種々の計算過程に関するログであり、自動提案サブシステム100がデータサーバ200に格納するものである。
Among these, the
また、状況情報216は、状況変化連絡機400やユーザ端末300から通知された、事象とリソースの状態に関する情報である。例えば、交通機関における機械やシステムの遅延や故障等の稼働状況や、それらに割り当てられる人員の所在や勤怠状況といった情報が対応する。
The status information 216 is information related to the event and resource status notified from the status
また、業務モデル217は、上述の状況情報216が示す所定状況時に何故どういう計画変更(解候補作成)を行うべきかを定めたルールベースであり、例えば状況の種類別に、計画変更内容、提案理由(解候補作成の理由)、優先順位(解候補の評価順位)等を示すデータの集合となっている。
The
また、計画DB218のうち、初期計画2180は、計画対象の事象に関して所定の制約条件を満たす当初計画である。一方、入力計画2181は、状況変化連絡機400やユーザ端末300が通知してくる上述の状況情報216が示す事象やリソースの状況変化に基づいて、上述の初期計画2180の内容、具体的には該当ビット値を変更した計画である。この入力計画2181は必ずしも所定の制約条件を満たさないものの、上述の初期計画2180にある程度近い内容である。
Further, in the
なお、上述の初期計画2180、入力計画2181のいずれも、事象への割当対象となるリソース数に基づく所定数のビット列(ワード)たるワード(チャンク)を、上述の事象の数に応じて所定セット組み合わせ、複数事象に対する複数リソースの各割当状態をビット列で示した情報となる。こうした初期計画2180、入力計画2181の一例を、図4の計画情報として示す。
Note that in both the
図4は本実施形態における計画情報のデータ構造を説明する図である。ここで例えば、8人の作業員(リソース)に8個のタスク(事象)を割り振る問題に対する解として計画情報を考える。この場合、i番目の作業者がj番目のタスクに割当てられているかどうかをブール値X(i,j)で示すとき、図4のマトリクス500のように、そのブール値の集合である計画(X)は8×8=64ビットの情報量となる。
FIG. 4 is a diagram for explaining the data structure of the plan information in this embodiment. Here, for example, plan information is considered as a solution to the problem of allocating eight tasks (events) to eight workers (resources). In this case, when a Boolean value X (i, j) indicates whether or not the i-th worker is assigned to the j-th task, as shown in the
本実施形態では、計画情報550に示すように、このうち複数リソースに対応した複数ビット(図4の例では4ビット=4人の作業員)を1つの変数「ワード」としてまとめ、このワードを2セットまとめて「チャンク」として、このチャンクを上述のタスクの数だけ組み合わせて計画(X)を取り扱うものとする。つまり図4の計画情報550では、リソースの数n=8、ワードのビット数p=4、チャンクを構成するワード数q=2、となっている。なお、上述のワードにおいては4ビットを含む構成例を示したが、例えば64ビットレジスタを備えた計算機では、ワードにおいて64ビットを含むとしてもよく、計算機の仕様等に応じて適宜増減してよい。いずれにしても計算機すなわち自動提案サブシステム100は、こうした構成の計画情報について、その複数ビットの処理を単一の論理演算操作で行うことで、処理の高速化を図ることとなる。
In this embodiment, as shown in the
また、解候補DB219における解候補2190は、解探索の過程で得られた解候補である。また複数の解候補2190のうち、自動提案サブシステム100からユーザ端末300に出力され、該当ユーザ端末に提示された解候補2190を提案計画21911とする。
The
また、記憶装置201における承認計画220は、上述の解候補たる提案計画2191をユーザに提示したユーザ端末300が、該当提案計画2191に対する承認指示を受けた場合に、これを受けた自動提案サブシステム100が該当提案計画2191を元に承認計画220を作成し、データサーバ200に格納したものとなる。
Further, the
また、属性情報221は、上述の初期計画2180、入力計画2181における各ビットについて、対応する事象、リソースの属性を定めた情報である。例えば、或る計画情報を構成するワード配列(図4の場合であれば、8行×2列)のうち所定位置に索引付けられるワードの所定ビット(○○桁目)は、「人員A」の割当有無に対応したビット、といった対応付けとなる。
−−−機能構成−−−
続いて、本実施形態の計画業務支援システム10における処理を主として実行する自動提案サブシステム100が備える機能について説明する。上述したように、以下に説明する機能は、例えば自動提案サブシステム100が、プログラム102を実行することで実装される機能と言える。なお、以下に例示する各機能のうち、計画業務支援処理の全般に関するものは自動提案処理部110が担い、チャンクのビット列等に対する論理演算に関するものは論理演算処理部111が担い、ユーザ端末300や状況変化連絡機400との間のデータ入出力に関するものは入出力処理部112が担うものとする。The
--- Functional structure ---
Subsequently, functions provided in the
本実施形態における自動提案サブシステム100は、データサーバ200の計画DB218における入力計画2181における所定制約条件への違反事象を、各チャンクのビット列およびこのチャンク間における同一リソースに対応した各ビット、のそれぞれについて、所定値との所定論理演算を行ってリソースの多重割当および未割当として特定し、該当違反事象を解消すべく入力計画2181における該当チャンクのビット列に関して所定アルゴリズムによる変更を行って解候補2190を作成し、この解候補2190と入力計画2181を置換して上述の違反事象の解消および解候補作成の処理を繰り返すことで出力計画情報たる提案計画2191、承認計画220を生成する機能を備える。
The
また、自動提案サブシステム100は、上述のリソースの多重割当および未割当の特定に際し、チャンクのビット列に対する論理演算を累積的に行った場合の累積値の変化傾向に基づいて、違反事象発生の有無および位置を特定する機能も備える。
In addition, the
また、自動提案サブシステム100は、上述の解候補2190の作成に際し、違反事象の特定の結果、入力計画2181にリソースの多重割当が含まれていた場合、多重割当となる変数A(チャンク)とゼロ値の変数B(チャンク)を置換することにより、値が非ゼロとなるビット数を所定数とした解候補2190を作成する機能を備える。
In addition, when the above-described
また、自動提案サブシステム100は、上述の違反事象の特定の結果、入力計画2181にリソースの未割当が含まれていた場合、未割当の生じたビット位置を持つ変数C(チャンク)と、前述のビット位置のビット値だけが1となる変数D(チャンク)を置換することで解候補2190を作成する機能を備える。
Further, when the
また、自動提案サブシステム100は、上述の変数B(チャンク)および変数D(チャンク)の少なくともいずれかと入力計画2181を構成する他の変数(チャンク)との所定の論理演算を行うことで解候補2190を作成する機能を備える。
Further, the
また、自動提案サブシステム100は、上述の計画DB218の初期計画2180(当初計画)と解候補2190との内積値を算定し、該当解候補2190の第1の評価値を取得する機能と、上述の初期計画2180と解候補2190との排他的論理和のビット値を加算集計して、解候補2190の第2の評価値を取得する機能と、上述の第1の評価値および第2の評価値の少なくともいずれかについて、その評価値の順に解候補2190を列挙した画面データをユーザ端末300等の所定装置に出力する機能を備える。
Further, the
また、自動提案サブシステム100は、解候補2190を、上述の第1の評価値および第2の評価値の少なくともいずれかに基づいて、評価値のレベル別に分類し、レベルごとに解候補2190の数を集計して、ここで集計した値が所定値以上である場合に該当レベルの解候補2190の画面データを更新し、これをユーザ端末300など所定装置に出力する機能を更に備える。
In addition, the
また、自動提案サブシステム100は、上述の解候補2190に関する処理状況をユーザ端末300など所定装置に出力する機能も備える。
−−−フロー例−−−
以下、本実施形態における計画業務支援方法の実際手順について図に基づき説明する。以下で説明する計画業務支援方法に対応する各種動作は、計画業務支援システム10を主として構成する自動提案サブシステム100がメモリ103に読み出して実行するプログラム102によって実現される。そして、このプログラムは、以下に説明される各種の動作を行うためのコードから構成されている。The
--- Flow example ---
Hereinafter, the actual procedure of the planned work support method in the present embodiment will be described with reference to the drawings. Various operations corresponding to the planned work support method described below are realized by a
図5は、本実施形態における計画業務支援方法の処理手順例1を示すフロー図であり、具体的には自動提案サブシステム100による処理内容を示すフロー図である。この場合、自動提案サブシステム100は、ユーザ端末300からの所定指示を受け付けて(301)、詳細は後述する全体解探索処理(302)を実行し、複数の全体解(解候補2190)を得る。
FIG. 5 is a flowchart showing a processing procedure example 1 of the planned task support method in the present embodiment, and more specifically, a flowchart showing processing contents by the
次に自動提案サブシステム100は、ステップ302によって得た複数の全体解を入力計画2181として、これに関して所定制約条件への違反状況を判定し、当該判定で判明した制約違反箇所に関する所定の警報情報をユーザ端末300に出力する(303)。この場合、自動提案サブシステム100は、更に、そうした複数の警報表示中でのユーザによる警報選択動作をユーザ端末300を介して受け付ける。この制約違反状況の判定による制約違反箇所の特定等の処理と同様の処理が、上述の全体解探索処理(302)にて実行されるため、後述する全体解探索処理の説明で示すものとする。
Next, the
また、自動提案サブシステム100は、上述でユーザ選択された警報を解消するパターンを用いた逐次提案作成を行う(304)。上述のパターンは業務モデル217が保持する情報であり、状況情報216が示す所定状況の時、何故どういう計画変更(解候補作成)を行うべきかを定めたルールである。このパターンは状況の種類別に、計画変更内容、提案理由(解候補作成の理由)、優先順位(解候補の評価順位)等を示すデータの集合となっている。
In addition, the
上述のパターンとして、ある警報に基づき、ある計画変更を行った結果が、別の警報に対する計画変更にどのような影響があるかを必ずしも考えないような局所的パターンを多種多様な業務に適応させて複数個作成することは容易である。ここで得られる逐次提案は、ユーザに注目された警報を解決する複数の案であり、計画変更内容と提案理由等の情報となる。パターンと制約条件は、状況変化連絡機400からの制御入力を得たものとして良い。自動提案サブシステム100は、こうした一連の計算過程は計算ログ215としてデータサーバ200上に逐次保存する。
As a pattern described above, a local pattern that does not necessarily consider how the result of making a plan change based on one alarm will affect the plan change for another alarm is adapted to a wide variety of tasks. It is easy to create a plurality. The sequential proposals obtained here are a plurality of proposals for solving the warning noticed by the user, and are information such as plan change contents and proposal reasons. The pattern and the constraint condition may be obtained by obtaining a control input from the situation
続いて自動提案サブシステム100は、上述のステップ304で生成した逐次提案内容と上述のステップ302で得た全体解との整合を取る(305)。複数の全体解の一部には逐次提案内容が解候補の一部として含まれており、自動提案サブシステム100は、逐次提案内容がどの全体解に含まれているかを判定し、逐次提案情報を更新する。例えば、複数目的のうちの1つの目的に特化したパレート最適解に含まれた逐次提案の提案理由情報には、パレート最適解に至る提案という文字列情報を付記する。
Subsequently, the
次に自動提案サブシステム100は、入力計画2181と共に逐次提案内容を、ユーザ端末300に出力する(306)。
Next, the
続いて自動提案サブシステム100は、ユーザの提案選択をユーザ端末300より受け付けて(307)、その時点で所定の終了条件(例:ユーザ端末からの指示、警報の残有無など)を満たさない場合(308:n)、上述の入力計画2181に逐次提案選択結果を反映させて更新し(309)、処理をステップ303に戻す。つまり自動提案サブシステム100は、入力計画2181の一部を変更した結果である解候補を、入力計画2181と入れ替えて、ステップ303以降の処理を繰り返すことになる。
Subsequently, the
ステップ309の段階では、上述のステップ303でユーザが注目した警報に関わる制約条件は満たされているため、他の警報は残っている可能性はあるが、ステップ303でユーザが注目した警報は解消されている。すなわち、上述の繰り返しの処理(ステップ303〜ステップ308:n〜ステップ309〜ステップ303)によって、自動提案サブシステム100は、ユーザとの対話的にすべての警報を逐次的に解消していくことができる。その際、自動提案サブシステム100は、計画変更理由について、ユーザ端末300を介してユーザに逐次提示し、ユーザの判断動作を支援することができる。
At the stage of
続いて、上述の全体解探索処理(302)の詳細について説明する。図6は、第1実施形態の計画業務支援方法の手順例2を示すフロー図であり、具体的には図5のフローにおけるステップ302の全体解探索処理の処理内容を説明するフロー図である。
Next, details of the above-described overall solution search process (302) will be described. FIG. 6 is a flowchart showing a procedure example 2 of the planned work support method according to the first embodiment. Specifically, FIG. 6 is a flowchart for explaining the processing content of the entire solution search process in
この場合、自動提案サブシステム100は、データサーバ200の計画DB218から入力計画2181を解候補Aとして読み込む(401)。この入力計画2181は、状況変化連絡機400やユーザ端末300からの入力に応じて初期計画2180の一部が変更された計画情報である。つまり、制約違反を含む可能性がある計画に該当する。
In this case, the
次に自動提案サブシステム100は、上述の入力計画2181すなわち解候補Aが示す、所定事象およびその割当リソースについての情報として、例えば交通機関の運行予定、拠点や交通機械の稼働状況、それらに配置された人員等に関する各種データを、データサーバ200の状況情報216から取得し、ここで得た情報について、所定条件(例:ある拠点Aで交通機関Bに乗務した乗員が翌日の他拠点Cの交通機関Dの乗務予定に間に合うよう、拠点間の交通機関運行に応じた人員移動が実行されなければならない等)の違反有無について所定アルゴリズムにて分析する(402)。
Next, the
続いて自動提案サブシステム100は、上述のステップ402での分析結果に基づいて、解候補Aが所定条件を満たしているか判定する(403)。この判定の結果、解候補Aが制約未充足の場合(403:制約違反)、自動提案サブシステム100は、この解候補Aを実行可能解として、入力計画たる解候補Aにおけるチャンクでの制約違反箇所特定等の所定評価(後述)を行う(404)。
Subsequently, the
また、自動提案サブシステム100は、上述のステップ404で解候補Aに関して特定した制約違反箇所の中から、ワードやチャンクの配列中での先頭順など所定基準で抽出した制約違反事象に関して、該当制約違反を解消するよう計画変更案A(解候補Aの変更箇所を示す部分情報と言える)を作成する(405)。この計画変更案Aの作成は、図5のフローにおけるステップ304で既に述べたパターンを用いた処理を採用してもよいし、例えば、上述の交通機関の人員所在リストをデータサーバ200の状況情報216から取得し、この情報に基づいて制約違反を解消するために割り当てる人員を移動手段に関わらず選択、割当するといった、状況情報216などの各種情報に基づき全ての可能性を網羅的に探索して生成するとしてもよい。こうした計画変更案Aは複数作成されうる。また、自動提案サブシステム100は、このステップ405で作成した計画変更案A(解候補Aに計画変更案Aを反映させたものが新たな解候補)をメモリ103内の探索リストに格納するものとする。
The
他方、上述のステップ403の判定の結果、解候補Aが所定条件を満たしており、すなわち制約充足していた場合(403:制約充足)、自動提案サブシステム100は、この解候補Aを制約充足解とし、解候補Aが制約充足している旨、および、解としての良好度を初期計画2180との近似性に基づいて評価(後述)し(406)、その結果を上述のメモリ103内の探索リスト、計算ログ215、およびユーザ端末300に出力する。また、自動提案サブシステム100は、上述の制約充足解をデータサーバ200の解候補DB219における解候補として格納する。
On the other hand, as a result of the determination in
続いて自動提案サブシステム100は、探索順序制御を行う(407)。この場合、自動提案サブシステム100は、上述の探索リストに格納された複数の計画変更案のうち、次に計算対象とする計画変更案Bを定める。このように探索リストから計画変更案を抽出する順序については、深さ優先探索を計画解法の基本方針としてユーザが定めている場合には制約違反数の多い順、或いは幅優先探索を計画解法の基本方針としてユーザが定めている場合には、解空間において解がより浅い場所にあると推定される順に、といった既存の探索戦略に応じて決定するアルゴリズムを採用すればよい。その他にも、可能性の薄い探索方向を探索リストから早めに除外するいわゆる枝刈りの手法を採用するとしてもよい。
Subsequently, the
次に自動提案サブシステム100は、上述のステップ405を経た実行可能解である解候補Aに、ステップ407で定めた計画変更案Aを適用することによって解候補Bを作成する(408)。この処理により、例えば計画変更案Aを適用することによって解候補Aから変更された或る人員の割当は、元の状態から状態が遷移したこととなる。また、別の計画変更案Cを解候補Aに適用することによって得られる解候補Cとは別の状態に遷移したこととなる。探索は、このような状態遷移の繰り返しによって行う。探索空間を解候補が木構造に並ぶ構造ととらえる場合、制約充足解は複数ある末端ノードとなり制約充足解から先を探索しない。実行可能解は中間ノードとなって、次の状態遷移を行う候補となる。
Next, the
また、自動提案サブシステム100は、上述までの各ステップに関する計算過程、計算状況を計算ログ215、およびユーザ端末300に出力する(409)。
In addition, the
次に自動提案サブシステム100は、ユーザ端末300におけるユーザ操作、所定時刻の到来を検知するタイマ出力、所定センサ等の入力値といった所定情報を予め定めた終了条件と比較して、当該フローの終了判定を行う(410)。この判定の結果、当該フローを終了しない場合(410:n)、自動提案サブシステム100は、上述の解候補Bと解候補Aを入れ替えて、ステップ402以降の処理を繰り返す。
Next, the
他方、上述の判定の結果、当該フローを終了するとなった場合(410:y)、自動提案サブシステム100は、上述までで得ている複数の解候補(制約充足解、提案計画を含む)について、後述する目的関数を用いて評価し、その評価結果を該当解候補と対応付けて提案計画の情報としてユーザ端末300に出力し(411)、処理を終了する。この場合、自動提案サブシステム100は、上述の解候補それぞれの評価値を、所定レベルごとに分類し、各レベルごとの最大評価値、最小評価値、および平均値等の値を計算し、この計算結果を提案計画の属性情報221としてデータサーバ200の記憶装置201に保存する。上述の提案計画には、制約条件を全て満たすものの目的関数が最大値とならない全体制約充足解、目的関数のいずれかが最大値となるパレート最適解などがある。自動提案サブシステム100は、これら解候補の中から所定の評価項目を満たすものを提案計画としてユーザ端末300に出力するとすれば好適である。
On the other hand, when the flow is terminated as a result of the above determination (410: y), the
ここで、上述のステップ402〜408等の処理に伴って、ステップ409で自動提案サブシステム100からユーザ端末300に出力される解探索状況のモニタリング画面501について図7に基づき説明する。図7に示すモニタリング画面501は、それまでの処理で発見した解候補と制約充足解の数、解空間を探索する幅と深さあるいは時間を表示する情報表示欄5011と、解空間における解の多様性(後述する数37の値)を縦軸、時間(ステップ404、406の実行回数)を横軸とする進捗状況マトリクス5012と、探索中断とその時点での結果表示をユーザから受け付けるボタン5013、およびキャンセルボタン5014が含まれる。このうち、上述のボタン5013がユーザ端末300にてクリックされた場合、これを受けた自動提案サブシステム100は、上述のフローにおけるステップ410の終了条件を満たすと判定することになる。
Here, the solution search
上述の画面501における表示要素のうち、進捗状況マトリクス5012において、自動提案サブシステム100は、探索が済んだ場所は例えば黒く着色し、今後の探索予定は白く着色して表示する。探索進行に伴って、上述の黒色領域は原則的に画面左上から右下に向けて増加していく。ただし解空間には解が偏在するため、必ずしも原則通りに着色されないこともある。
Among the display elements on the
また、進捗状況マトリクス5012における解の多様性の尺度は、解評価のための目的関数の出力値を用いる。この場合の目的関数は、初期計画2180に近い解をよい解と定め、解候補と最初の時点での入力計画2181との類似度を用いる。あるいは計画変更の総数を2種類の解の距離と定義してもよい。また、例えばリソースたる人員の勤務時間合計や残業時間合計などを示す別関数を多様性の尺度としてもよい。自動提案サブシステム100は、上述の目的関数の評価値を5レベルに量子化し、進捗状況マトリクス5012における解の多様性を示す縦軸を、その5レベルに応じた5マスに分けて構成し表示している。
Further, as a measure of solution diversity in the
なお、自動提案サブシステム100は、上述のフローにおけるステップ409において、得られている解候補の数の合計値を評価値のレベルごとに逐次集計し、あるレベルで前述の合計値が所定基準値を超えると、上述の画面501において、当該レベルで時間軸の右方向に1つ進んだマスを黒色に塗りつぶす処理を行うものとする。
In
図6のフローで示した近傍探索法では、入力計画2181を起点として近傍の制約充足解を探すため、探索を中断した場合においても、ある程度入力計画2181に近い解が得られる。また、本実施形態では省メモリなデータ構造で情報管理を行うため、探索リストに割り当てたメモリに多くの解候補を格納できる。従って、探索リストから計画を抽出する際にFIFO順に解評価を行う(幅優先探索)と、処理中断時に得られた解集合には、入力計画2181の近くで幅広い解の多様性が期待できる。入力計画2181と大幅に異なる解候補は、ユーザが想像もしない、あるいは、見落としがちな意外な解決方法を提供しうる。
In the neighborhood search method shown in the flow of FIG. 6, a constraint satisfying solution in the vicinity is searched from the
また図7で、上述のステップ411により自動提案サブシステム100からユーザ端末300に出力された画面502の例を示す。ここで示す画面502は、解の評価結果を一覧表示する画面となる。自動提案サブシステム100は、上述のステップ411において、複数の解候補を複数の目的関数を用いて評価し、それぞれの評価値をキーとするソートを行って出力する。ここで、ある評価値が最大値となる解候補はパレート最適解であり、比較検討する上で目立つよう、自動提案サブシステム100は、画面502上の矩形5021で囲む形で強調表示処理をする。
−−−各ステップのアルゴリズム詳細−−−
ここで、上述のフローにおける各ステップで用いるアルゴリズムの詳細について、必要な数式も含め、より具体的に説明する。
<説明に使用する主な変数の定義>
まず、以下の数1〜数8を用いて、説明に使用する主な変数の定義について示す。例えば、n人の作業者とn個のタスクがあるとき、i番目の作業者をj番目のタスクに割当てる計画を考える。下記の数1に示すように、計画をブール値集合である行列X(i,j)によって表し、計算によって求める解とする。
FIG. 7 shows an example of a
--- Algorithm details of each step ---
Here, the details of the algorithm used in each step in the above-described flow will be described more specifically, including necessary mathematical expressions.
<Definition of main variables used for explanation>
First, definitions of main variables used in the description will be shown using the following
・・・・・・・数1
このX(i,j)の要素値について、ゼロであれば割当てがなく、1のときに割当てがある。この構成は図4のマトリクス500に対応する。こうしたX(i,j)の取りうる組合せは2^(n×n)種類あり、その集合は解空間と呼ばれる空間を構成する。計算によって解空間中から所定の制約条件を満たし妥当な解を探す処理を探索と呼ぶ。....
For the element value of X (i, j), there is no assignment if it is zero, and there is an assignment when it is 1. This configuration corresponds to the
また、下記の数2に示すように、計画には、どのタスクにもひとりの作業者が割り当てられるという制約条件がある。
In addition, as shown in
・・・・・・・数2
さらに、下記の数3に示すように、どの作業者にもひとつのタスクが割り当てられるという制約条件がある。
....
Furthermore, as shown in the following equation (3), there is a constraint that one task is assigned to any worker.
・・・・・・・数3
また、数4に示すように、i番目の作業者がj番目のタスクを担うコストが定義できる場合には、変数アルファα(i,j)を用いて目的関数f()を表すことができる。このとき、目的関数f()を最小化する計画はコスト最小となる最適解である。コストの代わりにパフォーマンス等の別の指標を用いても同様に表現できる。
.... Number 3
Also, as shown in Equation 4, when the cost for the i-th worker to handle the j-th task can be defined, the objective function f () can be expressed using the variable alpha α (i, j). . At this time, the plan for minimizing the objective function f () is an optimal solution that minimizes the cost. It can be similarly expressed by using another index such as performance instead of cost.
・・・・・・・数4
このような目的関数f()を簡単な形で一意に定義できない場合には数理的な最適解が存在せず、既存の最適化手法を適用できない。あるいは、定義できても、制約条件が複雑な問題や大規模な問題などでは、実用時間内に最適解を求めにくいことも多い。本実施形態で用いる近傍探索法は、初期値を起点として初期値に近い解を探索する発見的手法であり、最適解に近い解を探す方法のひとつである。なお、他の近似解求解方法にも本発明を適用可能である。.... Number 4
When such an objective function f () cannot be uniquely defined in a simple form, there is no mathematical optimal solution, and the existing optimization method cannot be applied. Alternatively, even if it can be defined, it is often difficult to find an optimal solution within a practical time for problems with complicated constraints or large-scale problems. The neighborhood search method used in the present embodiment is a heuristic method for searching for a solution close to the initial value starting from the initial value, and is one of methods for searching for a solution close to the optimal solution. The present invention can also be applied to other approximate solution solving methods.
また、数5に示すように、自動提案サブシステム100におけるレジスタが一度に扱うビット数(p)のビット集合を備える変数をワード(W)と呼ぶ。q個のワード集合(p*q=n)をチャンク(C)と呼ぶ。計画(X)はn個のチャンク集合である。この構成は図4における計画情報550に対応する。
Further, as shown in Equation 5, a variable including a bit set of the number of bits (p) handled by the register in the
・・・・・・・数5
さらに、数6に定義を示すように、制約条件を一部充足しないかもしれない入力計画(A)を起点として、この入力計画に近い解候補(X’)であって、制約条件を満たす解となる提案計画を自動提案サブシステム100は探索する。入力計画は制約充足解にある程度近い前提とする。例えば、制約条件を満たした初期計画2180の一部を、現在の状況に応じて一部変更したものが入力計画である。
・ ・ ・ ・ ・ ・ ・ Number 5
Furthermore, as shown in the definition in Equation 6, a solution candidate (X ′) close to this input plan, starting from the input plan (A) that may not satisfy some of the constraints, is a solution that satisfies the constraints. The
・・・・・・・数6
ここでは、上述のワード、チャンクに対する論理演算やビット操作を行う関数を用いる(XOR,AND,OR、SHIFTなど)ものとする。さらに、数7に示すように、ワード、チャンクのビット集合を1つの多値変数値として解釈する関数をVal(w)、Val(h)と記述する。比較演算の説明のために定義する関数であるが、チャンク変数は極めて大きな値を取りうるため、これを必ずしも直接的に数値化する実装でなくてもよい。以降で説明する処理手順と技術的に等価であって、数値化せずにチャンク同士の大小比較判定や論理演算等を行うアルゴリズム実装は容易である。
・ ・ ・ ・ ・ ・ ・ Equation 6
Here, it is assumed that a function for performing a logical operation or a bit operation on the above-described word or chunk is used (XOR, AND, OR, SHIFT, etc.). Furthermore, as shown in Equation 7, functions that interpret a bit set of words and chunks as one multi-value variable value are described as Val (w) and Val (h). Although it is a function that is defined for explaining the comparison operation, the chunk variable can take a very large value, and therefore, it is not necessarily an implementation that directly digitizes this. It is technically equivalent to the processing procedure described below, and it is easy to implement an algorithm that performs a size comparison determination between chunks or a logical operation without digitization.
・・・・・・・数7
また解探索において、自動提案サブシステム100は、制約条件を満たさない入力計画において、制約未充足箇所を特定した後に、入力計画近傍にある解候補を探索する。局所的に制約を充足している既存の割当をなるべく変更しない。さらに、数8に示すように、自動提案サブシステム100は、変更を行った記録を管理するリソース管理リストah、bhを用いて、連鎖的な変更によって同じ解候補を何度も探索しないように探索方向を制御する。このリソース管理リストにおいて、あるビット値がゼロであれば、対応するリソースはまだ変更前であることを意味し、ビット値1であれば変更済みを意味する。リソース管理リストは、解候補X’についての属性情報である。自動提案サブシステム100は、このリソース管理リストを、データサーバ200上の解候補116および属性情報221において保存、更新する。
・ ・ ・ ・ ・ ・ ・ Equation 7
Further, in the solution search, the
・・・・・・・数8
<近傍探索法の処理フロー>
次に本実施形態における近傍探索法(図6のフロー)の更なる詳細説明を以下に示す。この場合、自動提案サブシステム100は、ステップ401に対応したステップSAにおいて、入力計画を解候補Xの初期値として探索リストに格納する。・ ・ ・ ・ ・ ・ ・
<Processing flow of neighborhood search method>
Next, further detailed description of the neighborhood search method (flow of FIG. 6) in this embodiment is shown below. In this case, the
次に自動提案サブシステム100は、ステップ402およびステップ403に対応したステップSBにおいて、上述の探索リストから解候補Xを抽出して、制約条件を充足するかどうか判定する。
Next, in step SB corresponding to step 402 and step 403, the
続いて自動提案サブシステム100は、ステップ404およびステップ405に対応したステップSCにおいて、上述の判定の結果、解候補Xが制約条件を充足しない場合、局所的に問題を解決する別の解候補X’を作成する(多重割当の解消、未割当の解消)。
Subsequently, in Step SC corresponding to Step 404 and
また自動提案サブシステム100は、ステップ406に対応したステップSDにおいて、上述の判定の結果、解候補Xが制約条件を充足する場合、その解候補Xの評価を行う。
Further, in step SD corresponding to step 406, the
次に自動提案サブシステム100は、ステップ407〜410に対応したステップSEにおいて、終了条件に関して判定し、フローを終了しない場合は上述のステップSBに処理を戻す。他方、フローを終了する場合、自動提案サブシステム100は、これまでの計算結果をユーザ端末300に出力する(ステップ411)。上述の終了条件にはユーザ操作による中断を含む。
Next, in Step SE corresponding to
<ステップSB:制約条件の確認方法>
ここで上述のステップSBについてその詳細を示す。計画が制約未充足となる状況には、多重割当と未割当があり、さらに、それぞれの状況にはチャンク内の場合と複数チャンク間の場合がある。これらの組合せとして下記の4通りの制約未充足状況がある。例えば、チャンク内の多重割当とは、そのチャンクにおいて複数のビット値が1となっている状態をいう。また、チャンク間の多重割当とは、複数のチャンクにおいて特定のビット位置のビット値が1となっている状態をいう。
・チャンク内の多重割当
・チャンク内の未割当
・チャンク間の多重割当
・チャンク間の未割当
自動提案サブシステム100は、制約条件の評価においては、計画を構成するビット値の多くがゼロ値であることを利用してワードやチャンク単位で処理を行う。まず、数9に示すように、チャンクにおけるq個のワード集合について、q回ゼロ値と比較した後に、非ゼロのワード要素がひとつだけであって、かつ、その構成ビット値の総和が1となれば、そのチャンク内に多重割当と未割当はないと判定する。
<Step SB: Method for Confirming Constraints>
Here, the details of step SB described above will be described. There are multiple allocations and unallocations as situations where the plan is not satisfied with constraints, and there are cases where each plan is within a chunk or between multiple chunks. These combinations include the following four unsatisfied situations. For example, multiple allocation within a chunk refers to a state where a plurality of bit values are 1 in the chunk. Multiple allocation between chunks refers to a state where the bit value of a specific bit position is 1 in a plurality of chunks.
・ Multiple allocation within chunks ・ Unallocated within chunks ・ Multiple allocation between chunks ・ Unallocated between chunks In
・・・・・・・数9
次に自動提案サブシステム100は、複数チャンク間での関係を調べる。この場合、上述の数9を用いてチャンク内に多重割当も未割当もないことを予め調べたチャンクを前提とする。自動提案サブシステム100は、下記の数10に示すように、チャンクの排他的論理和を累積的に計算していく。もし、計画が制約条件を満たしていれば、任意の複数チャンク間でビット値が1となるビット位置が衝突しない。また、2つの変数の排他的論理和を計算すると、ビット値が異なる位置のみ値が1となる。結果として、排他的論理和の累積値をVal関数で数値化すると単調増加する。そこで自動提案サブシステム100は、この特徴量を利用して、チャンク単位で複数チャンク間での多重割当と未割当の問題の有無、位置を同時に判定する。
・ ・ ・ ・ ・ ・ ・ Equation 9
Next, the
・・・・・・・数10
<ステップSC:解の探索方法、チャンク内の多重割当の解消>
次に上述のステップSCについてその詳細を示す。多重割当には、チャンク内での多重割当とチャンク間での多重割当がある。このうちチャンク内の多重割当は、あるチャンクにおいてビット値が1となるビットが複数存在する状態をいう。一方、チャンク間の多重割当は、あるチャンクにおいてビット値が1となるビット位置において、別のチャンクの同じ位置にあるビット値が1となる状態をいう。........ 10
<Step SC: Solution Search Method, Canceling Multiple Assignment in Chunk>
Next, details of step SC described above will be described. Multiple allocation includes multiple allocation within a chunk and multiple allocation between chunks. Of these, multiple allocation within a chunk refers to a state where there are a plurality of bits having a bit value of 1 in a certain chunk. On the other hand, multiple allocation between chunks refers to a state in which a bit value at the same position in another chunk is 1 at a bit position where the bit value is 1 in a certain chunk.
そこでまず、自動提案サブシステム100は、チャンク内での多重割当の解消を行う。この時、自動提案サブシステム100は、数11に示すように、s番目のチャンク内にワードの値が非ゼロとなるワードが何個あるかを調べる多重割当第1判定を行う。この判定の結果、ワードの値が非ゼロとなるワードをxmax個発見した場合、自動提案サブシステム100は、該当チャンク内における非ゼロのワードの位置を示す索引の集合情報を一時変数uに格納する。
Therefore, first, the
・・・・・・・数11
集合uのx番目に索引付けられる非ゼロのワードをw(u,x)と示す。数12に示すように、非ゼロのワードが複数ある場合、自動提案サブシステム100は、そのいずれかひとつを残すチャンク変更案c’を複数作成する。
..... number 11
The x-th non-zero word indexed in set u is denoted w (u, x). As shown in Expression 12, when there are a plurality of non-zero words, the
・・・・・・・数12
さらに自動提案サブシステム100は、チャンク変更案(あるいは多重割当第1判定を合格したチャンク)において、数13に示すように、上述のw(u,x)に対して、さらにビット値1となるビット数を調べる多重割当第2判定を実行する。
.... Number 12
Further, the
・・・・・・・数13
この数13の判定において、非ゼロのワードw(u,x)にビット値1となるビットが複数個含まれて制約未充足の場合、自動提案サブシステム100は、そのいずれかひとつを残すようワード変更案w’を作成する。非ゼロのワード内でビット値1の位置を示す索引の集合をvとする。さらに、位置(v、y)のビット値だけを1とする関数SHIFT()を用いる。このとき、w(u,x)内のビット位置(v,y)にあるビット値1を残したワード変更案w’(u,x)(v,y)は数14により得られる。
・ ・ ・ ・ ・ ・ ・ Equation 13
If the non-zero word w (u, x) includes a plurality of bits having a bit value of 1 and the constraint is not satisfied in the determination of Equation 13, the
・・・・・・・数14
以降ではu,vの表記を略して、x番目のワードでy番目のビットの位置をビット位置(x、y)と記す。自動提案サブシステム100は、数15に示すように、w’を入力計画の対応するワードと差し替えることによって、チャンク変更案h(x,y)を得る。
..... number 14
Hereinafter, the notation of u and v is omitted, and the position of the yth bit in the xth word is referred to as a bit position (x, y). The
・・・・・・・数15
上述の多重割当第1判定、多重割当第2判定いずれかあるいは両方で制約未充足と判定される場合、自動提案サブシステム100は、複数のチャンク変更案h(x,y)を生成する。それらの組み合わせが提案計画の構成要素となる。そのとき、チャンク変更案h(x,y)でのビット値が1となるビット位置において、他のチャンクに既存の割当計画があった場合には、多重割当の制約違反となる。そこで自動提案サブシステム100は、数16に示すように、チャンクh(x,y)の否定と他のチャンクとの論理積を計算することによって、組み合わせに伴って他のチャンクにおける既存の割当を解除したチャンク集合を作成する。これを解候補X’と呼ぶ。この解候補X’は、チャンク内の多重割当解消に伴って複数個作成される。さらに自動提案サブシステム100は、入力計画の中に多重割当を含むチャンクが複数あれば、その組み合わせとして解候補X’を作成する。解候補X’の数は、チャンク内にあるビット1の数に基づく。解候補X’においてチャンク内の多重割当は解消されている。
.... Number 15
When it is determined that the constraint is not satisfied in either or both of the above-described multiple allocation first determination and multiple allocation second determination, the
・・・・・・・数16
<ステップSC:解の探索方法、チャンク間の多重割当の解消>
つぎに自動提案サブシステム100は、複数チャンク間での多重割当を解消する。数10で示したように、チャンク間での多重割当がある場合、累積的にチャンクの排他的論理和を計算していくと、同じビット位置で2回目の1が見つかった箇所で排他的論理和の累積値が減る。数10を用いて問題を検知したチャンクをfound番目とする。ここでの自動提案サブシステム100は、数17に示すように、逆順に排他的論理和の累積値を調べることによって、found番目のチャンクと衝突を起こしたlost番目のチャンクを見つけることができる。ここまでの処理において、チャンク内の多重割当が解消された後なので、衝突が起きた場合、2つのチャンクは同じ値である。
・ ・ ・ ・ ・ ・ ・ Equation 16
<Step SC: Solution Search Method, Canceling Multiple Allocation between Chunks>
Next, the
・・・・・・・数17
ここで自動提案サブシステム100は、数18に示すように、found番目のチャンクとlost番目のチャンクのどちらかをゼロとするチャンク修正案を作成する。このチャンク修正案は複数個生じうる。また、解候補X”は、チャンク修正案を入力計画に反映させた解候補である。この解候補X”は、チャンク間の多重割当解消に伴って複数個作成されうる。解候補X”の数は、同一位置にある衝突ビットの数に基づく。数18の処理によって、解候補X”においてチャンク内およびチャンク間の多重割当は解消される。すなわち、以降では、解候補X”におけるチャンク内およびチャンク間の未割当の問題に集約される。..... 17
Here, as shown in Expression 18, the
なお、解候補X’をベースとして解候補X”を作成する場合、探索対象となる提案計画の数は、解候補X’の数mh’と解候補X”の数mh”の算術積(mh’*mh”)が最大値となる。チャンク内の多重割当となったビット位置が、同時にチャンク間の多重割当にも該当する場合に、提案計画の数は算術積未満となる。
When creating a solution candidate X ″ based on the solution candidate X ′, the number of proposed plans to be searched is the arithmetic product (mh ′) of the number mh ′ of solution candidates X ′ and the number mh ″ of solution candidates X ″. '* Mh ") is the maximum value. When the bit position that has been assigned in multiple chunks simultaneously corresponds to multiple assignment between chunks, the number of proposed plans is less than the arithmetic product.
・・・・・・・数18
<ステップSC:解の探索方法、未割当リソース同士の割当>
多重割当がないと判定された入力計画(あるいは、多重割当を解消した解候補も以下では入力計画と呼ぶ)には未割当のチャンクが含まれうる。この場合、自動提案サブシステム100は、数19に示すように、あるチャンクの値がゼロの場合、当該チャンクに割当がないと判定する。..... number 18
<Step SC: Solution Search Method, Allocation of Unallocated Resources>
An unassigned chunk can be included in an input plan that is determined not to have multiple assignments (or a solution candidate that has canceled multiple assignments is also referred to as an input plan below). In this case, as shown in Equation 19, when the value of a certain chunk is zero, the
・・・・・・・数19
ここで自動提案サブシステム100は、数20に示すように、累積的に複数チャンクの論理和を計算していくと、複数チャンク間で未割当となるビット位置では、論理和で対応するビット値がゼロとなる結果が得られる。このことは、論理和累積値の否定がゼロとならない場合、計画に未割当があって、非ゼロのビット位置が未割当と判定することと等価である。数2のような複数ビットの総和計算と異なり、論理和の操作は変数単位で並列に処理するので処理が高速である。
・ ・ ・ ・ ・ ・ ・ Equation 19
Here, as shown in
・・・・・・・数20
多重割当のない計画において未割当チャンクがm個あるとき、チャンク間未割当の数(全チャンクで特定のビット位置が未割当となるようなビット位置の数)は原理上m個である。入力計画を探査の起点とするヒューリスティックスでは、未割当となるm人とmタスクを抜粋した計画問題の範囲に解空間をまず限定して全件探索する。入力計画が制約充足解に近い前提において、m<<nが成り立つ。このため、抜粋した計画問題の制約充足解の総数m!(mの階乗)は、元の計画問題の制約充足解の総数n!よりも十分小さい。....
When there are m unallocated chunks in a plan without multiple allocation, the number of unallocated chunks (the number of bit positions where a specific bit position is unallocated in all chunks) is m in principle. In the heuristics where the input plan is the starting point of the search, the solution space is first limited to a range of planning problems extracted from unassigned m people and m tasks, and all cases are searched. On the assumption that the input plan is close to the constraint satisfaction solution, m << n holds. Therefore, the total number m of constraint satisfaction solutions for the selected planning problems! (M factorial) is the total number n of constraint satisfaction solutions of the original planning problem! Small enough.
なお、解探索の効率について補足説明する。数1に示す問題では解空間全体に2^(n*n)個の解候補があって実行不可能解が大半を占める。総当り方式は、実行可能な制約充足解だけを機械的なインデックス順に体系的に総当たりヒューリスティックスを用いることによって、n!個の制約充足解を拾い出す方法をいう。この総当り方式では、大きなnでの計算量は極めて多く、実用時間内にすべての制約充足解を抽出できないことも多い。さらに、もし探索を中断した場合に、総当り方式では解空間で偏った場所しか調べられていない結果(例えば、特定の人の割当が固定的など)が出てしまい、入力計画と大きく乖離した結果しか得られない状況になりやすい問題があった。一方、本実施形態の近傍探索方式は実用的に高速であると共に、途中で処理を中断した場合においても、入力計画の近傍である程度妥当な解を得る具体的な方法を示している。A supplementary explanation will be given for the efficiency of solution search. In the problem shown in
<ステップSC:解の探索方法、未割当解消を起点とする広域探索>
上述の近傍探索法はヒューリスティクス解法のひとつであり、近傍から少し離れたところのよりよい解を見落とすことがある。メタヒューリスティクスは、ヒューリスティクス解法が局所最適解の発見に満足して終わることのないようにする工夫をいう。近傍探索法の場合、状況を改善しない解候補を確率的に探索範囲に含める方法や複数の探索開始位置を用いる方法などが使える。実際、上述した未割当リソース同士の割当によって得られる解候補には、入力計画における既存の割当を別のリソースに割当て変える解候補が含まれない。しかし、実用的な計画業務では既存の割当を解除する場面が少なからず生じる。そこで、多重割当がなく未割当がある入力計画において、未割当を起点として実行可能な組合せを探す広域探索メタヒューリスティクスを加える。特に、ある場所の未割当を解消するために既存の別の割当を解除することを含む。
<Step SC: Solution Search Method, Wide Area Search Starting from Unassignment Cancellation>
The neighborhood search method described above is one of the heuristic solutions, and a better solution at a distance from the neighborhood may be overlooked. Metaheuristics is a technique that prevents heuristic solutions from being satisfied with the discovery of a local optimal solution. In the case of the neighborhood search method, a method of randomly including solution candidates that do not improve the situation in the search range, a method of using a plurality of search start positions, or the like can be used. Actually, the solution candidates obtained by the allocation of the unallocated resources described above do not include a solution candidate that allocates an existing allocation in the input plan to another resource. However, in practical planning work, there are not a few occasions when existing assignments are canceled. Therefore, in an input plan with no multiple assignments and no assignments, wide area search metaheuristics is added to search for combinations that can be executed starting from the unassignment. In particular, it involves releasing another existing assignment to resolve an unassigned location.
ここで、チャンク内の未割当を解消する方法について説明する。z番目のチャンクがチャンク内未割当であって、かつ、リソース管理リストbhで未探索の場合、自動提案サブシステム100は、数21に示すように、部分集合として位置(x,y)にビット値1を設定した変更ワードw(x,y)を作成する。
Here, a method for eliminating unallocated chunks will be described. When the z-th chunk is unallocated in the chunk and has not been searched in the resource management list bh, the
・・・・・・・数21
さらに自動提案サブシステム100は、リソース管理リストahにおけるx番目のワードaw(x)と、変更ワードw(x,y)の排他的論理和の値を調べる。リソース管理リストでゼロだったビット位置に変更ワードのビット値1が当たると、排他的論理和の値はリストの値よりも大きくなる。ここで自動提案サブシステム100は、数22に示すように、この識別方法によって変更するビット位置(x,y)の候補を絞り込むと共に、変更した位置については論理和を用いてリソース管理リストを更新する。
・ ・ ・ ・ ・ ・ ・ Equation 21
Furthermore, the
・・・・・・・数22
さらに自動提案サブシステム100は、数23に示すように、入力計画でのz番目の未割当チャンク、x番目のワード、y番目のビット位置だけにビット値1を設定した配列としてチャンク修正案h(x,y,z)を作成する。
........ 22
Further, as shown in Equation 23, the
・・・・・・・数23
次に自動提案サブシステム100は、数24に示すように、チャンク修正案h(x,y,z)の否定との論理積を作成して、解候補X’を作成する。この論理積によって既存の割当が解消されるため、未割当の解消に起因する新たな多重割当は生じない。ただし、未割当の解消に起因する新たなチャンク内未割当は生じうる。これに対処するため、自動提案サブシステム100は、当該位置zのビット値を1にするようリソース管理リストbhを更新する。.... Number 23
Next, as shown in Expression 24, the
・・・・・・・数24
つぎに、解候補において、チャンク間の未割当を解消する方法について説明する。解候補X’にチャンク内未割当がある場合、チャンク内の未割当を解消する方法を繰り返し適用することによって、別の解候補を探すことができる。ここで自動提案サブシステム100は、z番目のチャンクが入れ替え可能かどうかはリソース管理リストbhを用いて判定する。数25に示すように、複数チャンク間で未割当が生じているビット位置を(x,y)とすると、自動提案サブシステム100は、当該位置でのみビット値1を持つチャンク変更案を作成する。さらに自動提案サブシステム100は、既存のチャンクと入れ替えた解候補を作成する。
.... Number 24
Next, a method for eliminating unallocation between chunks in a solution candidate will be described. When there is unallocated intra-chunk in the solution candidate X ′, another solution candidate can be searched by repeatedly applying the method for eliminating unallocated in the chunk. Here, the
・・・・・・・数25
チャンク内未割当の解消方法で用いた論理積操作と同様に、この入れ替え操作は既存の割当を考慮しないため、既存の割当があったビット位置には、新たにチャンク間の未割当を生成しうる。その場合、チャンク間の未割当を含む解候補となる。自動提案サブシステム100は、リソース管理リストah、bhの制約下でチャンク間の未割当を解消する方法を繰り返し適用することによって、次々と解候補を探すことができる。.... Number 25
Similar to the logical product operation used in the method for resolving unallocated chunks, this swap operation does not take into account existing allocations. Therefore, new unallocated chunks are generated at the bit positions where existing allocations exist. sell. In that case, it becomes a solution candidate including unallocated between chunks. The
或る解候補に多重割当がなく、かつチャンク内の未割当がすべて解消された場合、チャンク間の関係を調べなくとも、その解候補は制約充足解である。同様に、或る解候補に多重割当がなく、かつチャンク間の未割当がすべて解消された場合、その解候補は制約充足解である。自動提案サブシステム100は、いずれのアプローチによってでも解候補を次々調べて繰り返し探索してゆくことによって、すべての制約充足解を探索できる。リソース管理リストが解候補に付随して探索範囲の抑制に寄与するため、チャンク内の未割当解消とチャンク間の未割当解消という2つのアプローチを併用しても同じ解を重複探索しない。すなわち、可能な組合せを探索しつつ必ず収束する。
When there is no multiple allocation for a certain solution candidate and all the unallocations in the chunk are eliminated, the solution candidate is a constraint-satisfying solution without examining the relationship between the chunks. Similarly, when there is no multiple assignment for a certain solution candidate and all unassignments between chunks are eliminated, the solution candidate is a constraint satisfaction solution. The
以上の処理によって、自動提案サブシステム100は、初期の入力計画を起点として制約充足解を全件探索できる。複数の制約充足解同士の比較評価においては、数4の計算式を用いて最適解を比較抽出してもよい。
<基本計算式通りに実装する基本実装方式と比べた計算量の効果>
次に、割当計画問題を解く既存解法と比べて本実施形態における解法が計算量に関して優れる効果について説明する。本実施形態におけるビット集合を用いた論理演算に基づく処理方法では、論理演算が複数ビット情報の並列処理に相当し、処理が高速である。With the above processing, the
<Effects of computational complexity compared to the basic implementation method implemented according to the basic formula>
Next, the effect that the solution according to the present embodiment is superior in terms of calculation compared to the existing solution that solves the allocation planning problem will be described. In the processing method based on a logical operation using a bit set in this embodiment, the logical operation corresponds to parallel processing of a plurality of bit information, and the processing is fast.
ここではまず、制約条件の評価方法の計算回数についての効果を説明する。比較として数2および数3の計算式通りに実装する基本実装方式の計算量についてはじめに考える。制約条件を充足するn*n行列の解候補Xに対して、基本実装方式では、縦横2方向で(2×n×n)回の加算演算を行い、2n個の総和値について1との比較演算を2n回行って問題の有無を判定する。
Here, the effect of the number of calculations of the constraint condition evaluation method will be described first. As a comparison, the calculation amount of the basic mounting method implemented according to the
一方、本実施形態の方式では、ある程度制約を満たす計画Xにゼロ値が多いことを利用して、チャンク内の処理(水平方向)では、pビット(p×q=n)のワードを用いて、n×(p+q)回の論理演算を行う。ゼロ値との比較回数は(q+1)回である。また、チャンク間の処理(垂直方向)では、ビット値の変化に反応する排他的論理和の特徴を利用することにより、累積的にn回のチャンク論理演算(実装上はn×q回のワード論理演算)を行う。排他的論理和の累積値との比較回数はn回である。すなわち、2つの制約条件に関わる合計計算回数は(n×(p+2q))回、合計比較回数は(n+q+1)回となる。 On the other hand, in the method of the present embodiment, by utilizing the fact that there are many zero values in the plan X that satisfies the constraints to some extent, p-bit (p × q = n) words are used in the processing in the chunk (horizontal direction). , N × (p + q) logical operations are performed. The number of comparisons with the zero value is (q + 1) times. Further, in the processing between chunks (vertical direction), by using the exclusive OR feature that reacts to the change of the bit value, n chunk logic operations (n × q words in terms of implementation) are cumulatively performed. Logical operation). The number of comparisons with the cumulative value of the exclusive OR is n times. That is, the total number of calculations related to the two constraints is (n × (p + 2q)) times, and the total number of comparisons is (n + q + 1) times.
p×q=nと定義があるので、2×n×n>(n×(p+2q))、および、2n>(n+q+1)が成り立つ。従って、本実施形態の方式は基本実装方式よりも計算回数が少なく省メモリで高速である。 Since there is a definition of p × q = n, 2 × n × n> (n × (p + 2q)) and 2n> (n + q + 1) hold. Therefore, the method of the present embodiment has a smaller number of calculations than the basic mounting method, and is faster with less memory.
もし解候補が制約条件を充足しない場合、チャンク内、ワード内で問題となるビット位置を特定する比較演算が加わる。この場合においても、入力計画にゼロ値が多いスパースな状態(値が非ゼロのワード数がk個(k<<n))の場合には、本実施形態における方式の比較演算数はn*(p+k*q)であり、基本方式の比較演算回数n*nより少なく、優位である。すなわち本実施形態の式は基本実装方式より実用上高速である。 If the solution candidate does not satisfy the constraint, a comparison operation is added that specifies the bit position in question in the chunk or word. Even in this case, if the input plan is a sparse state with many zero values (the number of non-zero words is k (k << n)), the number of comparison operations of the method in this embodiment is n *. (P + k * q), which is less than the number of comparison operations n * n of the basic method and is advantageous. That is, the expression of this embodiment is practically faster than the basic mounting system.
つぎに解探索の計算量についての効果を説明する。数1に示す問題では解空間全体に2^(n*n)個の解候補があって実行不可能解が大半を占める。総当り方式は、ヒューリスティックスを用いて実行可能な制約充足解だけを機械的なインデックス順に体系的に総当たりすることによって、n!(nの階乗)個の制約充足解を拾い出す方法をいう。多項式時間で計算できないため、大きなnでの総当り方式の計算量は極めて多く、実用時間内にすべての制約充足解を抽出できないことも多い。さらに、もし探索を中断した場合に、解空間で偏った場所しか調べられていない結果(例えば、特定の人の割当が固定的など)が出てしまい、入力計画と大きくかい離した結果しか得られない状況になりやすい欠点があった。Next, the effect on the calculation amount of the solution search will be described. In the problem shown in
一方、本実施形態の方式における理論上最悪の入力は入力計画においてすべてのビット値が0の場合であり、誰にもタスクが割り当てられていない。このとき、多重割当の判定は合格するものの、未割当の解決のためにn!通りの制約充足解数分の探索回数を要する。このため、総当り方式と同程度である。しかし、ある程度妥当な計画を入力計画の初期値とする前提で用いるため、入力計画での未割当リソースがm個(m<<n)とすると、制約充足解数でm!<<n!なので、多くの場合に総当り法式より早く処理を終えることができる。
−−−第2実施形態−−−
第2実施形態では、鉄道乗務員運用整理業務について本実施形態の計画業務支援技術を適用した例について示す。鉄道乗務員がどの列車を担当するかを計画する業務は運用整理業務と呼ばれ、第1実施形態と同様の割当問題を解くことが求められる業務である。そこで、第2実施形態の説明に用いる数式および図は第1実施形態と共通しており、構成、動作が同じ箇所については説明を省略するものとする。また第2実施形態では、図5と図6のフローにおいて差分となる箇所の説明を主に行う。また、図9〜11、および、数26〜数35を用いて、全体解探索に相当する処理を中心に説明する。On the other hand, the theoretically worst input in the system of this embodiment is a case where all bit values are 0 in the input plan, and no task is assigned to anyone. At this time, the determination of multiple allocation passes, but n! It takes as many searches as there are street constraint satisfaction solutions. For this reason, it is almost the same as the brute force method. However, since a plan that is reasonably reasonable is used on the assumption that it is the initial value of the input plan, if the number of unallocated resources in the input plan is m (m << n), the number of constraint satisfaction solutions is m! << n! Therefore, in many cases, the processing can be completed earlier than the brute force method.
--- Second Embodiment ---
In the second embodiment, an example in which the planned task support technology of the present embodiment is applied to a railway crew member operation / organization task will be described. The task of planning which train a railway crew member is in charge of is called an operation organizing task, and is a task that is required to solve an assignment problem similar to that in the first embodiment. Therefore, the mathematical formulas and diagrams used in the description of the second embodiment are the same as those in the first embodiment, and the description of the same configuration and operation is omitted. In the second embodiment, a description will be mainly given of differences that occur in the flows of FIGS. 5 and 6. 9 to 11 and Expressions 26 to 35 will be used to explain mainly the processing corresponding to the overall solution search.
まず図5を用いて第2実施形態における自動提案サブシステム100の処理内容を補足説明する。この場合、ステップ303において、自動提案サブシステム100は、入力計画の制約未充足箇所をユーザに対する警報としてユーザ端末300に出力する。また、自動提案サブシステム100は、ユーザ端末300から、当該警報の示す制約を局所的に充足する局所的選択肢の探索指示を受ける。
First, the processing contents of the
次に自動提案サブシステム100は、ステップ304において、乗務員と列車の情報が格納された状況情報216から局所的選択肢を検索する。この局所的選択肢は、提案(列車、乗務員)、提案理由、提案順位から構成する情報であって、提案理由情報には検索する時に用いた検索キーを元に検索内容に対応するあらかじめ定めた文字列を作成する。どういう警報に対して何を検索すればよいかのロジックは複数のパターンとしてあらかじめ記憶装置101にて定めて保持しておく。
Next, in
また自動提案サブシステム100は、ステップ305において、上述の局所的選択肢と、ステップ302において計算した提案計画(全体解)との整合を取る。具体的には、或る提案計画の中に局所的選択肢が含まれていれば、当該提案計画の属性情報(当該局所選択肢が最適解の一部を構成することなど)を提案理由情報の文字列に追記する。提案理由に全体解としての特徴を加えることによって、これを閲覧するユーザは、全体解である提案計画と逐次的な局所的選択肢との整合を行いつつ、個々の逐次的な局所的選択肢のどの提案が最適解に至る要素となっているかが判別できる。提案理由情報が強化されるため、ユーザの意思決定を支援できる。
In
続いて自動提案サブシステム100は、ステップ306において、図10で例示する画面503をユーザ端末300に出力する。この画面503は、提案計画の属性情報(最適解など)をユーザ端末300に出力させた画面例である。こうした画面503では、「列車番号35番」の列車に乗務する乗務員が未割当であった場合に、乗務員番号が「102番」、「103番」、「104番」の各乗務員が乗務可能であるとの検索結果を提案として出力している。
Subsequently, in
次にステップ307において、自動提案サブシステム100は、上述のユーザが画面503で所望の提案を選択したことをユーザ端末300から受け、該当提案(列車、乗務員)を入力計画に反映して状態遷移させる。この状態遷移した計画において、もしまだ制約未充足箇所がある場合、自動提案サブシステム100はステップ303に処理を戻し、これらの処理を繰り返すことにより、対話的に問題解決を実行する。或いは対話的に解決せずに、一度に提案計画を受け入れるように制御あるいは操作誘導してもよい。
Next, in
ここで図6を用いて、第2実施形態における全体解探索の処理内容を補足説明する。この場合、自動提案サブシステム100は、ステップ404において、解の評価を行う時に、どの時刻で制約未充足となっているかを特定して、時刻情報(〜m)を解候補の属性情報221としてデータサーバ200の記憶装置201に保存する。
Here, with reference to FIG. 6, the processing contents of the overall solution search in the second embodiment will be supplementarily described. In this case, the
続いて自動提案サブシステム100は、ステップ405において、探索中に変更済みかどうかについてリソース管理リストを用いて管理する。自動提案サブシステム100は、リソース管理リストに矛盾しない計画変更案を作成すると共に、計画変更案で使用したリソース(乗務員、列車等)についてリソース管理リストを更新保存する。第2実施形態におけるリソース管理リストは一次元配列情報であり、リソースの種類に時間が加わることと、長さが異なることが第1実施形態(数8、ah、bh)との相違点である。
Subsequently, in
次に自動提案サブシステム100は、ステップ406において、解の評価を行い、さらに、制約充足した解候補であることと合わせて属性情報221として作成し、データサーバ200の記憶装置201に保存する。
Next, in
またステップ409において、自動提案サブシステム100は、計算状況を出力する時、図7で例示した画面501をユーザ端末300に出力する。また自動提案サブシステム100は、ステップ411において、解候補を評価値の順にソートすることによって、解の優劣や最適解を決める。このステップ411において、自動提案サブシステム100は、上述のソート結果を図8で例示した画面502としてユーザ端末300に出力する。特定の評価値が最大となる解はパレート最適解である。探索中断時においても、探索した範囲で特定の評価値が最大となる解をパレート最適解の候補と呼ぶ。
In
図9は第2実施形態における計画情報950の説明図である。図9で示す計画情報950は、ビット集合を用いて、乗務員がいつ何の業務(列車乗務、駅待機等)に割当てられるかの計画を1ビットの位置情報として表現する。時間単位ごとの量子的な時間軸を備え、終了時間mとする。横軸に、乗務員数nに加え、列車の滞泊を示す特別乗務員番号(0)を備える。縦軸に、列車数a、駅数bに加え、乗務員の滞泊を示す特別位置番号(0)を備える。すなわち、1つの計画情報全体で、m×(n+1)×(a+b+1)個の3次元ビット集合を構成する。3次元より次元数が多くてもよい。
FIG. 9 is an explanatory diagram of the
この計画情報950が3次元構造であっても、図4の計画情報550で示すようなワード、チャンク変数に格納できる。時間軸方向のビット集合をワード変数に格納してもよい。自動提案サブシステム100は、こうした変数を操作する論理演算によって、複数ビットの情報を並列に処理できる。また第1実施形態同様に、制約条件の評価、解の探索、解の評価が変数単位で高速に処理できる。
Even if the
こうした計画情報950が満たすべき制約条件には、次のものが含まれる。乗務員列の縦方向には、値が1となるビットが原則1個となる。すなわち、乗務員は同時に2か所に存在しえず、どこかに存在する。この条件は第1実施形態における数2の条件と等価である。
The constraints that the
また計画情報950が満たすべき制約条件には、さらに、業務行の横方向には、値が1となるビットが0個以上となる条件がある。すなわち、ある列車には複数の乗務員が乗ることができる。この条件は第1実施形態における数3の条件を緩和するものの、他の関連する複雑な制約条件の影響を受けるものである。値が1となるビットの数が、0個の場合は割当乗務員が不在(制約未充足)、1個の場合は担当乗務員が存在、2個以上の場合は、担当乗務員に加えて便乗乗務員が存在する。その他に、乗務員の滞泊地が初期計画のものと変更後の提案計画で一致すること、列車への乗継時間を確保することなどが制約条件として加わる。
Further, the constraint condition to be satisfied by the
計画情報950を構成する別の例では、構成要素の多くがゼロ値である場合等には、時空間にまたがる複数チャンクをひとまとまりの変数とするブロック変数を操作単位に用いてもよい。このとき、ブロック変数の有無だけを表す別のビット集合である圧縮状況変数を併用することにより、計画情報は大幅にデータ容量が圧縮できると共に、変数の論理演算回数も大幅に減らすことができる。すなわち、メモリ省資源にかつ高速に処理できる。圧縮状況変数の要素値をゼロと比較することによって、圧縮された計画情報から直接的に状況判定ができる。
In another example of configuring the
また、計画情報950を構成する別の例では、時刻単位で複数チャンク変数集合をまとめて、これをひとつのスライス変数とする。値が非ゼロとなるスライス変数の有無を示す1次元ビット集合を圧縮状況変数sh(サイズm)と呼ぶ。圧縮状況変数shと、値が非ゼロとなる複数個のスライス変数集合によって、圧縮された計画情報を構成できる。時刻tと時刻(t+1)のスライス変数が同一値の場合、すなわち、
Val(sh(t))=Val(sh(t+1))
となる時に、圧縮状況変数shの(t+1)番目の要素値をゼロとする。圧縮した計画情報を解凍する方法では、まず、t番目の要素が非ゼロであれば、スライス変数集合の中で対応するスライス変数を計画情報のt番目時刻の情報として設定する。さらに、圧縮状況変数shの(t+1)番目の要素がゼロであれば、(t+1)以前に圧縮状況変数shの要素が非ゼロとなるt番目のスライス変数を計画情報の中に設定する。このようにして、圧縮前と同じ計画情報を再構成できる。再構成しなくとも、圧縮状況変数shの要素値がゼロであれば、当該スライスの処理は以前の時刻と同じ状況なので状況判定や解候補作成対象から除外してもよい。メモリ省資源にかつ高速に処理できる。In another example of the
Val (sh (t)) = Val (sh (t + 1))
The (t + 1) th element value of the compression status variable sh is set to zero. In the method of decompressing the compressed plan information, first, if the t-th element is non-zero, the corresponding slice variable in the slice variable set is set as the t-th time information of the plan information. Further, if the (t + 1) th element of the compression status variable sh is zero, the tth slice variable in which the element of the compression status variable sh becomes non-zero before (t + 1) is set in the plan information. In this way, the same plan information as before compression can be reconstructed. Even if the reconstruction is not performed, if the element value of the compression status variable sh is zero, the processing of the slice is in the same status as the previous time, and may be excluded from the situation determination and solution candidate creation targets. Memory can be saved and resources can be processed at high speed.
なお、計画情報950が満たすべき制約条件には、多種多様な条件がある。列車の乗り継ぎや時刻表に従った営業運転には所定の制約があり、その制約を計画に反映するために、後の計算で用いるデータをあらかじめ作成しておく。特定の列車に対応する唯一的な列車番号があるように、ビット集合のそれぞれのビット値には、対応する実情報と物理的な対象がある。ビット集合ではビット値の並びが直接索引となる。そこで実情報を対応する順番通りに並べて、実情報を属性情報221の中にあらかじめ作成して保存しておく。
Note that there are a variety of conditions for the constraint conditions to be satisfied by the
数26〜数29は、自動提案サブシステム100の自動提案処理部110において、ステップ302の全体解探索処理以前にあらかじめ作成してメモリ203やデータサーバ200に格納しておく変数を示す。
Equations (26) to (29) indicate variables that are created in advance and stored in the
数26に示すように、計画情報950を3次元ビット集合Bの変数として型定義する。変数Bは図9に示す概念図と技術的に等価である。これは、時刻mまでの時間ごとにn人の人に(a+b)個のタスクを割当てる計画を表現する。例えば、変数Bのビット値が1の場合に、当該時刻の対応する乗務員に対応するタスクを割り当てている状態を示す。タスクはlocation変数を用いて乗務員の位置を示し、a個の列車のいずれかに乗務するか、b個のいずれかの駅で待機するか、滞泊等により計画外に位置するか(ゼロ値)、である。そして、集合Bの部分集合として入力計画sB、提案計画(あるいは解候補)pBを定義する。これらは、入力計画2181、提案計画2191と技術的に等価である。
As shown in Equation 26, the
・・・・・・・数26
また数27に示すように、入力計画の一部を抜粋して、時間と位置(列車)の部分集合tTを作成する。部分集合tTは運行予定表であり、例えば、ある列車がある時刻にビット値1となる場合、出発前到着後の作業時間を含めて列車が運行中であることを示す。運行予定表では、乗務員が列車の出発準備、および到着後の到着作業に要する作業時間を、列車の運行時間に含めて作成してもよい。その場合、実際の列車の運行時刻は列車運行時刻表の中で別途定めておく。
.... Number 26
Further, as shown in Expression 27, a part of the input plan is extracted to create a subset tT of time and position (train). The subset tT is an operation schedule. For example, when a certain train has a bit value of 1 at a certain time, it indicates that the train is in operation including the work time after arrival before departure. In the operation schedule, the crew may prepare the operation time required for train departure preparation and arrival work after arrival in the train operation time. In that case, the actual train operation time is determined separately in the train operation timetable.
・・・・・・・数27
また数28に示すように、ビット集合として列車の時刻表jTを作成する。例えば、loc_depart(出発駅)をtime_depart(出発時刻)に出るloc(列車)は、loc_arrive(到着駅)にtime_arrive(到着時刻)に到着する計画を示す。jTはこれら5項目の一覧表であり、列車ごとに駅と時刻の関係をまとめた時刻表に相当する。
....
As shown in Equation 28, a train timetable jT is created as a bit set. For example, loc (train) that leaves loc_part (departure station) at time_depart (departure time) indicates a plan to arrive at loc_arrive (arrival station) at time_arrive (arrival time). jT is a list of these five items, and corresponds to a timetable that summarizes the relationship between the station and time for each train.
・・・・・・・数28
また数29に示すように、出発駅、列車、到着駅の関係を示すビット集合として行路情報tBを定める。例えば、ある行路において、列車jobは出発駅location1で時刻time1に乗車可能と示すよう、location1に対応するビット値を1と設定する。所定の時間が経過すると、時刻time2には列車jobは到着駅location2に到着する。時刻time2以降、到着駅location2の値を1と設定する。・ ・ ・ ・ ・ ・ ・ Equation 28
Further, as shown in Equation 29, the route information tB is defined as a bit set indicating the relationship between the departure station, the train, and the arrival station. For example, on a certain route, the train job sets the bit value corresponding to location1 to 1 so as to indicate that it is possible to get on at
・・・・・・・数29
ここで、図6のフローに示すように、ステップ401において入力計画sBを読み込み、それを探索の起点として解空間の中から妥当な解となる提案計画pBを探す近傍探索を行う方法を説明する。.... 29
Here, as shown in the flow of FIG. 6, a method of performing a neighborhood search for reading an input plan sB in
この場合、数30に示すsB_per変数は、計画DB218の初期計画2180、入力計画2181を乗務員ごとに圧縮した情報であり、また、場所(列車)と時間の関係を示す2次元情報である。このsB_per変数は、計画sBにおけるある列車のある時刻における全乗務員のビット値を加算集計して、探索前にあらかじめ作成しておく。sB_per変数のビット値が1となる場合、当該時刻に当該列車には乗務員が割り当てられていることを示す。所定の計画では乗務員が適切に割り当てられていて、数30に示したsB_perの制約条件を満たす。
In this case, the sB_per variable shown in Expression 30 is information obtained by compressing the
数30に示したpB_per変数は、解候補(提案計画)について、sB_per変数と同様に加算集計により圧縮した情報であり、自動提案サブシステム100がステップ402において作成する。pB_per変数の一部では、sB_per変数と同じ制約条件通りにならない場合がある。列車遅延などのトラブルが発生した場合など、計画に変更があった場合に当該制約条件は必ずしも満たされない。
The pB_per variable shown in Expression 30 is information obtained by compressing the solution candidate (suggested plan) by addition and summing in the same manner as the sB_per variable, and is created by the
・・・・・・・数30
数31、数32および図11を用いて、ステップ402、ステップ403の状況分析処理の一部内容を説明する。この場合、数31において、rank()関数は提案計画pBのビット値の数を数える関数であり、自動提案サブシステム100は、その計算結果が1とならない場合に制約違反と判定することにより、制約条件を充足するかどうか状況分析を行う。数31は、ビット値を縦方向、あるいは横方向に加算集計する計算結果を判定する処理と判定結果が等価であり、第1実施形態における数2、あるいは、数3の制約条件に相当する。このため自動提案サブシステム100は、第1実施形態同様の高速処理方法を用いて判定計算できる。.... 30
Some contents of the situation analysis processing in
・・・・・・・数31
図11に示すテーブルは、ある列車に乗務員が未割当か割当済みかについて調べる比較テーブル1100である。解候補(提案計画)が満たすべき制約条件には、運行する列車に乗務員が割り当てられること、および、運行しない列車には乗務員の割当てがないことがある。この制約条件は、sB_per変数の値と、pB_per変数の値を用いて、ビット値ごとに図11の比較テーブル1100と比較することによって判定できる。..... 31
The table shown in FIG. 11 is a comparison table 1100 for checking whether a crew member is unassigned or assigned to a certain train. Restrictions that should be satisfied by the solution candidate (suggested plan) include that a crew member is assigned to a train that operates, and that a crew member that does not operate does not have a crew member assigned. This constraint condition can be determined by comparing the value of the sB_per variable and the value of the pB_per variable and comparing each bit value with the comparison table 1100 of FIG.
数32は図11と同じ判定処理をステップ403で高速に行う計算方法を示す。さらに、この制約条件は、数32に示す排他的論理和計算を用いると、ワードやチャンク単位での処理による並列処理の効果がある。さらに、異なるビット値に反応する排他的論理和の特徴によって比較テーブル内の複数の判定項目を同時に判定するため、排他的論理和の値をゼロと比較する確認によって制約違反の有無を高速に確認できる。
Equation 32 shows a calculation method in which the same determination processing as in FIG. Further, this constraint condition has the effect of parallel processing by processing in units of words or chunks when the exclusive OR calculation shown in Equation 32 is used. In addition, multiple judgment items in the comparison table are judged at the same time by the exclusive OR feature that reacts to different bit values, so it is possible to quickly check whether there is a constraint violation by checking the exclusive OR value against zero. it can.
・・・・・・・数32
数33〜数36を用いて、ステップ405での計画変更案作成、および、ステップ408の状態遷移処理の一部内容を説明する。この場合、数33に示す計算式は、ある列車に乗務員が未割当だと判定された後等で、当該列車(loc1)に乗務可能な乗務員を検索する方法を示す。自動提案サブシステム100は、まず、loc1を検索キーとして、時刻表jT変数から当該列車の出発駅(loc_depart)を検索する。次に自動提案サブシステム100は、入力計画(sB)において、出発時刻(time_depart)において、同じ出発駅で待機中の乗務員(per)をすべて検索する。検索された乗務員(per)は当該列車に乗務可能、および、当該駅で待機継続可能である。自動提案サブシステム100は、こうして検索した乗務員を当該列車に割り当てる計画変更案を作成する。
.... Number 32
The contents of the plan change plan creation at
・・・・・・・数33
数34に示す計算式は、ある時刻(time1)にある駅(loc1>a)に待機中のある乗務員(per1)が、乗務可能な列車(loc)をすべて検索する方法を示す。ここで自動提案サブシステム100は、時刻表jTにおいて、当該時刻に当該駅を出発駅(loc_depart)する列車(loc)を検索する。また自動提案サブシステム100は、当該乗務員を検索した列車に割り当てる計画変更案を作成する。........ 33
The calculation formula shown in Expression 34 shows a method in which a crew member (per1) waiting at a station (loc1> a) at a certain time (time1) searches for all trains (loc) that can be boarded. Here, the
・・・・・・・数34
数35に示す計算式は、数33あるいは数34に示す計算等によって運用変更を行う場合に、特に時間軸方向の観点から計画情報pBの変更方法を示す。ある乗務員(per1)がある列車(loc)に乗務する運用変更について考える。当該列車は、出発時刻(time_depart),出発駅(loc1),到着時刻(time_arrive)、到着駅(loc2)と時刻表にあらかじめ記述されており、自動提案サブシステム100は、それらの情報を参照する。自動提案サブシステム100は、解候補pBにおいて当該乗務員の担当を変更するとき、当該列車(loc)の到着時刻以降、すなわち運行終了後の乗務計画をすべてゼロ値とする。さらに自動提案サブシステム100は、出発時刻から到着時刻の間は、当該列車に乗務するよう、当該乗務員と列車(loc)に対応するビット値をすべて1とする。さらに自動提案サブシステム100は、到着後の時間帯は到着駅に待機するよう、当該乗務員と駅(loc2)に対応するビット値をすべて1とする。
........ 34
The calculation formula shown in Expression 35 indicates a method for changing the plan information pB, particularly from the viewpoint of the time axis direction, when the operation is changed by the calculation shown in Expression 33 or Expression 34. Consider an operational change where a crew member (per1) is on a train (loc). The train is described in advance in the departure time (time_depart), departure station (loc1), arrival time (time_arrive), arrival station (loc2) and timetable, and the
・・・・・・・数35
数36に示す計算式は、数35を用いた計画変更と等価で高速な処理を示す。この場合、自動提案サブシステム100は、まず、マスク変数maskを作成する。これは、列車(loc)について、出発時刻(time_depart)前後でステップ状の信号変化を示す。.... 35
The calculation formula shown in Expression 36 represents a high-speed process equivalent to the plan change using Expression 35. In this case, the
つぎに自動提案サブシステム100は、運行予定表、時刻表を参照して、列車の運行状況を示す一時変数tBを作成する。これは、列車乗務(job),位置(location),時刻(time)から構成する。
Next, the
つぎに自動提案サブシステム100は、計画情報pBの乗務員(per1)、列車(loc)の位置での時間方向(t)の変化について、マスク変数の否定との論理積を計算することにより、第1の論理積値を得る。すなわち、出発時刻以前の列車について、出発時刻以前の計画を保持する。
Next, the
つぎに自動提案サブシステム100は、一時変数tBとマスク変数との論理積を計算することにより、第2の論理積値を得る。すなわち、出発時刻以降の予定を作成する。
Next, the
つぎに自動提案サブシステム100は、上述の第1の論理積値と第2の論理積値の論理和を計算することによって、時間軸方向に整合した計画を作成する。このようにして作成された計画は計画情報の一部であり、当該乗務員だけの予定なので、最後に計画情報全体に反映される。
Next, the
・・・・・・・数36
数37に示す計算式は、解候補(提案計画)がよい解かどうかを評価する計算方法を示し、ステップ406での処理において行う。自動提案サブシステム100は、こうした探索過程で得られた複数の解候補について、それぞれの評価値を計算する。近傍探索法において、入力計画sBに近い提案計画pBはある程度妥当である。解空間における2つの解、すなわちsBとpBの内積計算値をe1とすると,e1は2つの解ベクトルの交差角に相当して解空間におけるsBとpBの近さを示す。.... Number 36
The calculation formula shown in Expression 37 indicates a calculation method for evaluating whether a solution candidate (proposed plan) is a good solution, and is performed in the processing in
数37において、sBとpBの排他的論理和e2は、2つの解ベクトル同士の距離に相当すると共に、計画変更総数を示す。ビット値が1となる数の総和を示すe3は、乗務時間合計を示す指標である。他にも、総労働時間、ピーク残業時間、計画変更総数などの多様な指標を計算できる。数4に示す最適化目的関数を利用してもよいし、逆に第1実施形態における解評価方法として数37の計算方法を用いてもよい。
In Expression 37, the exclusive OR e2 of sB and pB corresponds to the distance between two solution vectors and indicates the total number of plan changes. E3 indicating the sum of the number of bit values of 1 is an index indicating the total crew time. In addition, various indicators such as total working hours, peak overtime hours, and total number of planned changes can be calculated. The optimization objective function shown in Equation 4 may be used, and conversely, the calculation method of Equation 37 may be used as the solution evaluation method in the first embodiment.
・・・・・・・数37
本実施形態によれば、計画問題に対して高速な解法処理を実行して、ユーザが許容出来る実用時間内でより広く早く解空間を探索可能であり、意外で多様な解、より精度のいい近似解、最適解を見つけやすくなる。また、そうした探索過程を可視化することで、長時間の計算が行われる状況であってもユーザが処理中断を判断しやすくなる。..... 37
According to the present embodiment, it is possible to execute a high-speed solution process for a planning problem, and to search a solution space more widely and quickly within a practical time acceptable by the user, unexpectedly various solutions, more accurate This makes it easier to find approximate solutions and optimal solutions. In addition, by visualizing such a search process, it is easy for the user to determine whether to interrupt the process even in a situation where a long-time calculation is performed.
すなわち、計画問題の解法処理を高速化し、従来よりも精度良好な解を効率良く取得することが可能となる。 That is, it is possible to speed up the solution processing of the planning problem and efficiently obtain a solution with better accuracy than before.
本明細書の記載により、少なくとも次のことが明らかにされる。すなわち、本実施形態の計画業務支援システムにおいて、前記演算装置は、前記リソースの多重割当および未割当の特定に際し、前記論理演算を累積的に行った場合の累積値の変化傾向に基づいて、違反事象発生の有無および位置を特定するものであるとしてもよい。これによれば、違反事象の特定がより効率的で精度の良いものとなる。 At least the following will be clarified by the description of the present specification. That is, in the planned task support system according to the present embodiment, the computing device, in specifying multiple allocation and non-allocation of the resource, violates a change in cumulative value when the logical operation is cumulatively performed. The presence / absence and location of the occurrence of an event may be specified. According to this, identification of the violation event becomes more efficient and accurate.
また、本実施形態の計画業務支援システムにおいて、前記演算装置は、前記解候補の作成に際し、前記違反事象の特定の結果、前記計画情報にリソースの多重割当が含まれていた場合、多重割当となる変数Aとゼロ値の変数Bを置換することにより、値が非ゼロとなるビット数を所定数とした解候補を作成する処理と、前記違反事象の特定の結果、前記計画情報にリソースの未割当が含まれていた場合、未割当の生じたビット位置を持つ変数Cと、前記ビット位置のビット値だけが1となる変数Dを置換することで解候補を作成する処理と、前記変数Bおよび変数Dの少なくともいずれかと前記計画情報を構成する他の変数との所定の論理演算を行うことで解候補を作成する処理とを実行するものであるとしてもよい。これによれば、解候補作成がビット演算に基づく更に効率的なものとなる。 Further, in the planned task support system of the present embodiment, when the solution candidate is created, the computing device, when the result of specifying the violation event includes multiple allocation of resources in the plan information, The variable A and the zero-value variable B are replaced to create a solution candidate with a predetermined number of bits whose value is non-zero, and as a result of specifying the violation event, resource information is included in the plan information. If unassignment is included, a variable C having a bit position where unassignment has occurred and a variable D in which only the bit value at the bit position is 1 are created, and a solution candidate is created, It is also possible to execute a process of creating a solution candidate by performing a predetermined logical operation between at least one of B and variable D and another variable constituting the plan information. This makes solution candidate creation more efficient based on bit operations.
また、本実施形態の計画業務支援システムにおいて、前記記憶装置は、前記計画情報の元となった計画情報であって、制約条件違反の無い当初計画情報を更に保持しており、前記演算装置は、前記当初計画情報と前記解候補との内積値を算定し、該当解候補の第1の評価値を取得する処理と、前記当初計画情報と前記解候補との排他的論理和のビット値を加算集計して、前記解候補の第2の評価値を取得する処理と、前記第1の評価値および前記第2の評価値の少なくともいずれかについて、その評価値の順に解候補を列挙した画面データを所定装置に出力する処理と、を更に実行するものであるとしてもよい。これによれば、ユーザが解候補の適正さに関して容易に理解して選択等を行えることとなり、ひいては解探索が更に迅速で効率的なものとなる。 Further, in the planned work support system of the present embodiment, the storage device further holds initial plan information that is the plan information that is the basis of the plan information and does not violate a constraint condition, Calculating a dot product value of the initial plan information and the solution candidate, obtaining a first evaluation value of the corresponding solution candidate, and a bit value of an exclusive OR of the initial plan information and the solution candidate Screen for enumerating solution candidates in the order of the evaluation values of the process of obtaining the second evaluation value of the solution candidates by addition and aggregation, and at least one of the first evaluation value and the second evaluation value The process of outputting data to a predetermined device may be further executed. According to this, the user can easily understand and select the appropriateness of the solution candidate, so that the solution search becomes faster and more efficient.
また、本実施形態の計画業務支援システムにおいて、前記記憶装置は、前記計画情報の元となった計画情報であって、制約条件違反の無い当初計画情報を更に保持しており、前記演算装置は、前記当初計画情報と前記解候補との内積値を算定し、該当解候補の第1の評価値を取得する処理と、前記当初計画情報と前記解候補との排他的論理和のビット値を加算集計して、前記解候補の第2の評価値を取得する処理と、前記第1の評価値および前記第2の評価値の少なくともいずれかについて、その評価値の順に解候補を列挙した画面データを所定装置に出力する処理と、前記解候補を評価値に基づいて所定レベル別に分類し、前記レベルごとに前記解候補の数を集計して、前記集計した値が所定値以上である場合に該当レベルの解候補の前記画面データを更新し、これを前記所定装置に出力する処理と、を更に実行するものであるとしてもよい。 Further, in the planned work support system of the present embodiment, the storage device further holds initial plan information that is the plan information that is the basis of the plan information and does not violate a constraint condition, Calculating a dot product value of the initial plan information and the solution candidate, obtaining a first evaluation value of the corresponding solution candidate, and a bit value of an exclusive OR of the initial plan information and the solution candidate The candidate solutions are listed in the order of the evaluation values for at least one of the process of obtaining the second evaluation value of the solution candidates by addition and aggregation and the first evaluation value and the second evaluation value . Processing for outputting screen data to a predetermined device, and classifying the solution candidates by predetermined level based on an evaluation value, totaling the number of solution candidates for each level, and the total value is equal to or greater than a predetermined value If the solution candidate of the corresponding level Update the surface data, and outputting it to said predetermined device may be a one in which further executes.
これによれば、解候補の画面表示に際してユーザの視認性を高め、該当ユーザが解候補の適正さに関して更に容易に理解して選択等を行えることとなり、ひいては解探索が更に迅速で効率的なものとなる。 According to this, the visibility of the user is improved when the solution candidate is displayed on the screen, and the corresponding user can more easily understand and select the appropriateness of the candidate solution, and thus the solution search is quicker and more efficient. It will be a thing.
また、本実施形態の計画業務支援システムにおいて、前記演算装置は、前記解候補に関する処理状況を所定装置に出力する処理を更に実行するものであるとしてもよい。 In the planned task support system according to the present embodiment, the arithmetic device may further execute a process of outputting a processing status relating to the solution candidate to a predetermined device.
これによれば、解の探索過程の理解と処理中断の要否判断がユーザにとって容易で的確なものとなり、処理全体における無駄を回避し、ひいては解探索が更に迅速で効率的なものとなる。 This makes it easy and accurate for the user to understand the solution search process and determine whether or not to interrupt the process, avoid waste in the entire process, and thus make the solution search faster and more efficient.
また、本実施形態の計画業務支援システムにおいて、前記記憶装置は、前記計画情報として、n人の乗務員、a個の列車、b個の駅、m時間単位の時刻情報について、乗務員、列車あるいは駅を示す位置、時間における割当の有無についてブール値で表現するn×(a+b)×mの3次元以上のビット集合を格納するものであり、前記演算装置は、前記計画情報においてi番目の列車にj番目の乗務員を割り当て、かつ前記列車の出発時刻以前の計画を保存しつつ計画変更する解候補を作成するに際し、時間範囲mの中で前記列車の出発時刻から到着時刻までをビット値1として他を0とする運行情報であって、長さmの第1のビット集合を作成する処理と、時間範囲mの中で前記列車の出発時刻以前をビット値0として他を1とするマスクであって、長さmの第2のビット集合を作成する処理と、前記マスクの否定と前記計画情報の第1の論理積を計算し、前記マスクと前記運行情報の第2の論理積を計算し、前記第1の論理積と前記第2の論理積との論理和を計算する処理と、を実行するものであるとしてもよい。
Further, in the planned work support system of the present embodiment, the storage device includes, as the plan information, n crew members, a trains, b stations, and time information in units of m hours. Is stored in a three-dimensional or more bit set of n × (a + b) × m, which is expressed as a Boolean value with respect to the presence or absence of allocation in the time and position, and the arithmetic unit stores the i th train in the plan information A
これによれば、鉄道運行に関する人員割当て計画に関して、高速な解法処理を実行して、ユーザが許容出来る実用時間内でより広く早く解空間を探索可能であり、意外で多様な解、より精度のいい近似解、最適解を見つけやすくなる。すなわち、鉄道運行に関する人員割当て計画問題の解法処理を高速化し、従来よりも精度良好な解を効率良く取得することが可能となる。 According to this, it is possible to execute a high-speed solution process for a personnel allocation plan related to railway operation, and to search for a solution space more widely and quickly within a practical time acceptable by the user. It is easier to find good approximate solutions and optimal solutions. That is, it is possible to speed up the solution processing of the personnel allocation planning problem related to railway operation, and to efficiently obtain a solution with better accuracy than before.
また、本実施形態の計画業務支援方法において、前記情報処理システムが、前記リソースの多重割当および未割当の特定に際し、前記論理演算を累積的に行った場合の累積値の変化傾向に基づいて、違反事象発生の有無および位置を特定する、としてもよい。 Further, in the planned task support method of the present embodiment, the information processing system, based on the change tendency of the accumulated value when the logical operation is cumulatively performed when the multiple allocation and unallocation of the resource are specified, It may be possible to identify the presence and location of a violation event.
また、本実施形態の計画業務支援方法において、前記情報処理システムが、前記解候補の作成に際し、前記違反事象の特定の結果、前記計画情報にリソースの多重割当が含まれていた場合、多重割当となる変数Aとゼロ値の変数Bを置換することにより、値が非ゼロとなるビット数を所定数とした解候補を作成する処理と、前記違反事象の特定の結果、前記計画情報にリソースの未割当が含まれていた場合、未割当の生じたビット位置を持つ変数Cと、前記ビット位置のビット値だけが1となる変数Dを置換することで解候補を作成する処理と、前記変数Bおよび変数Dの少なくともいずれかと前記計画情報を構成する他の変数との所定の論理演算を行うことで解候補を作成する処理と、を実行するとしてもよい。 Further, in the planned work support method of the present embodiment, when the information processing system creates the solution candidate, if the plan information includes multiple allocations of resources as a result of specifying the violation event, multiple allocation is performed. A variable candidate A and a zero-value variable B are replaced to create a solution candidate with a predetermined number of bits whose value is non-zero, and a specific result of the violation event is a resource in the plan information. If a variable C having an unallocated bit position is replaced with a variable D in which only the bit value at the bit position is 1, the process of creating a solution candidate, A process of creating a solution candidate by performing a predetermined logical operation between at least one of the variable B and the variable D and another variable constituting the plan information may be executed.
また、本実施形態の計画業務支援方法において、前記情報処理システムが、前記記憶装置において、前記計画情報の元となった計画情報であって、制約条件違反の無い当初計画情報を更に保持し、前記当初計画情報と前記解候補との内積値を算定し、該当解候補の第1の評価値を取得する処理と、前記当初計画情報と前記解候補との排他的論理和のビット値を加算集計して、前記解候補の第2の評価値を取得する処理と、前記第1の評価値および前記第2の評価値の少なくともいずれかについて、その評価値の順に解候補を列挙した画面データを所定装置に出力する処理と、を更に実行するとしてもよい。 Further, in the planned work support method of the present embodiment, the information processing system further holds initial plan information that is the plan information that is the basis of the plan information and does not violate a constraint condition in the storage device, A process of calculating an inner product value of the initial plan information and the solution candidate, obtaining a first evaluation value of the corresponding solution candidate, and adding a bit value of an exclusive OR of the initial plan information and the solution candidate Summarizing and obtaining the second evaluation value of the solution candidate, and screen data listing solution candidates in the order of the evaluation value for at least one of the first evaluation value and the second evaluation value May be further executed.
また、本実施形態の計画業務支援方法において、前記情報処理システムが、前記記憶装置において、前記計画情報の元となった計画情報であって、制約条件違反の無い当初計画情報を更に保持し、前記当初計画情報と前記解候補との内積値を算定し、該当解候補の第1の評価値を取得する処理と、前記当初計画情報と前記解候補との排他的論理和のビット値を加算集計して、前記解候補の第2の評価値を取得する処理と、前記第1の評価値および前記第2の評価値の少なくともいずれかについて、その評価値の順に解候補を列挙した画面データを所定装置に出力する処理と、前記解候補を評価値に基づいて所定レベル別に分類し、前記レベルごとに前記解候補の数を集計して、前記集計した値が所定値以上である場合に該当レベルの解候補の前記画面データを更新し、これを前記所定装置に出力する処理と、を更に実行するとしてもよい。 Further, in the planned work support method of the present embodiment, the information processing system further holds initial plan information that is the plan information that is the basis of the plan information and does not violate a constraint condition in the storage device, A process of calculating an inner product value of the initial plan information and the solution candidate, obtaining a first evaluation value of the corresponding solution candidate, and adding a bit value of an exclusive OR of the initial plan information and the solution candidate A screen in which solution candidates are listed in the order of evaluation values for at least one of the first evaluation value and the second evaluation value, and a process of collecting and obtaining the second evaluation value of the solution candidates A process of outputting data to a predetermined device, and the solution candidates are classified according to predetermined levels based on evaluation values, and the number of solution candidates is totaled for each level, and the aggregated value is equal to or greater than a predetermined value Of solution candidates at the corresponding level Update the serial screen data, and outputting it to said predetermined device, it may further executes.
また、本実施形態の計画業務支援方法において、前記情報処理システムが、前記解候補に関する処理状況を所定装置に出力する処理を更に実行するとしてもよい。 In the planned task support method of the present embodiment, the information processing system may further execute a process of outputting a processing status related to the solution candidate to a predetermined device.
また、本実施形態の計画業務支援方法において、前記情報処理システムが、前記記憶装置において、前記計画情報として、n人の乗務員、a個の列車、b個の駅、m時間単位の時刻情報について、乗務員、列車あるいは駅を示す位置、時間における割当の有無についてブール値で表現するn×(a+b)×mの3次元以上のビット集合を格納し、前記計画情報においてi番目の列車にj番目の乗務員を割り当て、かつ前記列車の出発時刻以前の計画を保存しつつ計画変更する解候補を作成するに際し、時間範囲mの中で前記列車の出発時刻から到着時刻までをビット値1として他を0とする運行情報であって、長さmの第1のビット集合を作成する処理と、時間範囲mの中で前記列車の出発時刻以前をビット値0として他を1とするマスクであって、長さmの第2のビット集合を作成する処理と、前記マスクの否定と前記計画情報の第1の論理積を計算し、前記マスクと前記運行情報の第2の論理積を計算し、前記第1の論理積と前記第2の論理積との論理和を計算する処理と、を実行するとしてもよい。
Further, in the planned work support method of the present embodiment, the information processing system uses the storage device as the plan information for n crew members, a trains, b train stations, and time information in units of m hours. Stores a bit set of three or more dimensions of n × (a + b) × m, which is expressed as a Boolean value with respect to whether or not there is an allocation in time, a position indicating a crew member, a train or a station, and the j-th train in the plan information When preparing a solution candidate to change the plan while saving the plan before the departure time of the train and assigning the other crew members as the
10 計画業務支援システム
20 ネットワーク
100 自動提案サブシステム
101 記憶装置
102 プログラム
103 メモリ
104 演算装置
105 通信装置
110 自動提案処理部
111 論理演算処理部
112 入出力処理部
200 データサーバ
215 計算ログ
216 状況情報
217 業務モデル
218 計画DB
2180 初期計画
2181 入力計画
219 解候補DB
2190 解候補
2191 提案計画
220 承認計画
221 属性情報
300 ユーザ端末
400 状況変化連絡機10 Planned
2180
2190
Claims (14)
前記計画情報における所定制約条件への違反事象を、前記各変数のビット列および前記変数間における同一リソースに対応した各ビット、のそれぞれについて、所定値との所定論理演算を行ってリソースの多重割当および未割当として特定し、該当違反事象を解消すべく前記計画情報における該当変数のビット列に関して所定アルゴリズムによる変更を行って解候補を作成し、前記解候補と前記計画情報を置換して前記違反事象の解消および解候補作成の処理を繰り返すことで出力計画情報を生成する演算装置と、
を備えることを特徴とする計画業務支援システム。A predetermined number of bit string variables based on the number of resources to be allocated to events are combined in a predetermined set according to the number of events, and plan information indicating each allocation state of multiple resources for multiple events is stored in the bit string A storage device to
For the violation event of the predetermined constraint condition in the plan information, the multiple allocation of resources by performing a predetermined logical operation with a predetermined value for each bit string of each variable and each bit corresponding to the same resource between the variables, and Identify as unallocated, create a solution candidate by changing the bit string of the corresponding variable in the plan information by a predetermined algorithm to eliminate the violation event, replace the solution candidate and the plan information, and replace the violation event An arithmetic unit that generates output plan information by repeating the process of creating a solution and creating a solution candidate;
A planning work support system characterized by comprising:
前記リソースの多重割当および未割当の特定に際し、前記論理演算を累積的に行った場合の累積値の変化傾向に基づいて、違反事象発生の有無および位置を特定するものである、 ことを特徴とする請求項1に記載の計画業務支援システム。The arithmetic unit is
In specifying multiple allocation and non-allocation of the resource, the presence / absence and location of a violation event is specified based on a change tendency of a cumulative value when the logical operation is cumulatively performed. The planned work support system according to claim 1.
前記解候補の作成に際し、
前記違反事象の特定の結果、前記計画情報にリソースの多重割当が含まれていた場合、多重割当となる変数Aとゼロ値の変数Bを置換することにより、値が非ゼロとなるビット数を所定数とした解候補を作成する処理と、
前記違反事象の特定の結果、前記計画情報にリソースの未割当が含まれていた場合、未割当の生じたビット位置を持つ変数Cと、前記ビット位置のビット値だけが1となる変数Dを置換することで解候補を作成する処理と、
前記変数Bおよび変数Dの少なくともいずれかと前記計画情報を構成する他の変数との所定の論理演算を行うことで解候補を作成する処理と、
を実行するものである、
ことを特徴とする請求項1に記載の計画業務支援システム。The arithmetic unit is
In creating the solution candidate,
As a result of specifying the violation event, if multiple allocations of resources are included in the plan information, the number of bits whose value is non-zero can be obtained by substituting the variable A and the zero value variable B that are multiple allocations. A process of creating a predetermined number of solution candidates;
As a result of specifying the violation event, if the plan information includes unallocated resources, a variable C having a bit position where unallocation has occurred and a variable D in which only the bit value of the bit position is 1 are set. Processing to create a solution candidate by replacing,
A process of creating a solution candidate by performing a predetermined logical operation between at least one of the variable B and the variable D and another variable constituting the plan information;
Is to perform
The planning work support system according to claim 1, wherein:
前記計画情報の元となった計画情報であって、制約条件違反の無い当初計画情報を更に保持しており、
前記演算装置は、
前記当初計画情報と前記解候補との内積値を算定し、該当解候補の第1の評価値を取得する処理と、
前記当初計画情報と前記解候補との排他的論理和のビット値を加算集計して、前記解候補の第2の評価値を取得する処理と、
前記第1の評価値および前記第2の評価値の少なくともいずれかについて、その評価値の順に解候補を列挙した画面データを所定装置に出力する処理と、
を更に実行するものである、
ことを特徴とする請求項1に記載の計画業務支援システム。The storage device
It is the plan information that is the basis of the plan information, and further retains the initial plan information without any constraint violation,
The arithmetic unit is
A process of calculating an inner product value of the initial plan information and the solution candidate, and obtaining a first evaluation value of the corresponding solution candidate;
A process of adding and summing up bit values of exclusive OR of the initial plan information and the solution candidate to obtain a second evaluation value of the solution candidate; and
A process of outputting screen data listing solution candidates to a predetermined device in the order of the evaluation values for at least one of the first evaluation value and the second evaluation value;
Is to further execute
The planning work support system according to claim 1, wherein:
前記計画情報の元となった計画情報であって、制約条件違反の無い当初計画情報を更に保持しており、
前記演算装置は、
前記当初計画情報と前記解候補との内積値を算定し、該当解候補の第1の評価値を取得する処理と、
前記当初計画情報と前記解候補との排他的論理和のビット値を加算集計して、前記解候補の第2の評価値を取得する処理と、
前記第1の評価値および前記第2の評価値の少なくともいずれかについて、その評価値の順に解候補を列挙した画面データを所定装置に出力する処理と、
前記解候補を評価値に基づいて所定レベル別に分類し、前記レベルごとに前記解候補の数を集計して、前記集計した値が所定値以上である場合に該当レベルの解候補の前記画面データを更新し、これを前記所定装置に出力する処理と、
を更に実行するものである、
ことを特徴とする請求項1に記載の計画業務支援システム。 The storage device
It is the plan information that is the basis of the plan information, and further retains the initial plan information without any constraint violation,
The arithmetic unit is
A process of calculating an inner product value of the initial plan information and the solution candidate, and obtaining a first evaluation value of the corresponding solution candidate;
A process of adding and summing up bit values of exclusive OR of the initial plan information and the solution candidate to obtain a second evaluation value of the solution candidate; and
A process of outputting screen data listing solution candidates to a predetermined device in the order of the evaluation values for at least one of the first evaluation value and the second evaluation value;
The solution candidates are classified according to predetermined levels based on evaluation values, the number of solution candidates is totaled for each level, and the screen data of solution candidates at the corresponding level when the total value is equal to or greater than a predetermined value Updating and outputting this to the predetermined device;
Is to further execute
The planning work support system according to claim 1, wherein:
前記解候補に関する処理状況を所定装置に出力する処理を更に実行するものである、
ことを特徴とする請求項1に記載の計画業務支援システム。The arithmetic unit is
A process of outputting the processing status related to the solution candidate to a predetermined device is further executed.
The planning work support system according to claim 1, wherein:
前記計画情報として、n人の乗務員、a個の列車、b個の駅、m時間単位の時刻情報について、乗務員、列車あるいは駅を示す位置、時間における割当の有無についてブール値で表現するn×(a+b)×mの3次元以上のビット集合を格納するものであり、
前記演算装置は、
前記計画情報においてi番目の列車にj番目の乗務員を割り当て、かつ前記列車の出発時刻以前の計画を保存しつつ計画変更する解候補を作成するに際し、
時間範囲mの中で前記列車の出発時刻から到着時刻までをビット値1として他を0とする運行情報であって、長さmの第1のビット集合を作成する処理と、
時間範囲mの中で前記列車の出発時刻以前をビット値0として他を1とするマスクであって、長さmの第2のビット集合を作成する処理と、
前記マスクの否定と前記計画情報の第1の論理積を計算し、前記マスクと前記運行情報の第2の論理積を計算し、前記第1の論理積と前記第2の論理積との論理和を計算する処理と、
を実行するものである、
ことを特徴とする請求項1に記載の計画業務支援システム。The storage device
As the plan information, n crews, a trains, b stations, time information in units of m hours, positions indicating crews, trains or stations, and presence / absence of allocation in time are expressed by Boolean values n × (A + b) × m 3D or higher bit set is stored,
The arithmetic unit is
In creating the solution candidate for changing the plan while allocating the j-th crew member to the i-th train in the plan information and preserving the plan before the departure time of the train,
A process of creating a first bit set of length m, which is operation information in which a bit value is 1 from the departure time to the arrival time of the train in the time range m and the others are 0;
A mask having a bit value of 0 before the departure time of the train in the time range m and 1 being the other, and creating a second bit set of length m;
A first AND of the mask and the plan information is calculated, a second AND of the mask and the operation information is calculated, and a logical AND of the first AND and the second AND The process of calculating the sum;
Is to perform
The planning work support system according to claim 1, wherein:
前記計画情報における所定制約条件への違反事象を、前記各変数のビット列および前記変数間における同一リソースに対応した各ビット、のそれぞれについて、所定値との所定論理演算を行ってリソースの多重割当および未割当として特定し、該当違反事象を解消すべく前記計画情報における該当変数のビット列に関して所定アルゴリズムによる変更を行って解候補を作成し、前記解候補と前記計画情報を置換して前記違反事象の解消および解候補作成の処理を繰り返すことで出力計画情報を生成する、
ことを特徴とする計画業務支援方法。A predetermined number of bit string variables based on the number of resources to be allocated to events are combined in a predetermined set according to the number of events, and plan information indicating each allocation state of multiple resources for multiple events is stored in the bit string An information processing system including a storage device
For the violation event of the predetermined constraint condition in the plan information, the multiple allocation of resources by performing a predetermined logical operation with a predetermined value for each bit string of each variable and each bit corresponding to the same resource between the variables, and Identify as unallocated, create a solution candidate by changing the bit string of the corresponding variable in the plan information by a predetermined algorithm to eliminate the violation event, replace the solution candidate and the plan information, and replace the violation event Generate output plan information by repeating the process of creation and solution candidate creation,
Planning work support method characterized by this.
前記リソースの多重割当および未割当の特定に際し、前記論理演算を累積的に行った場合の累積値の変化傾向に基づいて、違反事象発生の有無および位置を特定する、
ことを特徴とする請求項8に記載の計画業務支援方法。The information processing system is
In specifying multiple allocation and non-allocation of the resource, based on the change tendency of the cumulative value when the logical operation is performed cumulatively, the presence and location of occurrence of a violation event is specified,
The planning work support method according to claim 8, wherein:
前記解候補の作成に際し、
前記違反事象の特定の結果、前記計画情報にリソースの多重割当が含まれていた場合、多重割当となる変数Aとゼロ値の変数Bを置換することにより、値が非ゼロとなるビット数を所定数とした解候補を作成する処理と、
前記違反事象の特定の結果、前記計画情報にリソースの未割当が含まれていた場合、未割当の生じたビット位置を持つ変数Cと、前記ビット位置のビット値だけが1となる変数Dを置換することで解候補を作成する処理と、
前記変数Bおよび変数Dの少なくともいずれかと前記計画情報を構成する他の変数との所定の論理演算を行うことで解候補を作成する処理と、
を実行することを特徴とする請求項8に記載の計画業務支援方法。The information processing system is
In creating the solution candidate,
As a result of specifying the violation event, if multiple allocations of resources are included in the plan information, the number of bits whose value is non-zero can be obtained by substituting the variable A and the zero value variable B that are multiple allocations. A process of creating a predetermined number of solution candidates;
As a result of specifying the violation event, if the plan information includes unallocated resources, a variable C having a bit position where unallocation has occurred and a variable D in which only the bit value of the bit position is 1 are set. Processing to create a solution candidate by replacing,
A process of creating a solution candidate by performing a predetermined logical operation between at least one of the variable B and the variable D and another variable constituting the plan information;
The planning work support method according to claim 8, wherein:
前記記憶装置において、前記計画情報の元となった計画情報であって、制約条件違反の無い当初計画情報を更に保持し、
前記当初計画情報と前記解候補との内積値を算定し、該当解候補の第1の評価値を取得する処理と、
前記当初計画情報と前記解候補との排他的論理和のビット値を加算集計して、前記解候補の第2の評価値を取得する処理と、
前記第1の評価値および前記第2の評価値の少なくともいずれかについて、その評価値の順に解候補を列挙した画面データを所定装置に出力する処理と、
を更に実行することを特徴とする請求項8に記載の計画業務支援方法。The information processing system is
In the storage device, it is the plan information that is the basis of the plan information, further holding the initial plan information without constraint condition violations,
A process of calculating an inner product value of the initial plan information and the solution candidate, and obtaining a first evaluation value of the corresponding solution candidate;
A process of adding and summing up bit values of exclusive OR of the initial plan information and the solution candidate to obtain a second evaluation value of the solution candidate; and
A process of outputting screen data listing solution candidates to a predetermined device in the order of the evaluation values for at least one of the first evaluation value and the second evaluation value;
The planning work support method according to claim 8, further comprising:
前記記憶装置において、前記計画情報の元となった計画情報であって、制約条件違反の無い当初計画情報を更に保持し、
前記当初計画情報と前記解候補との内積値を算定し、該当解候補の第1の評価値を取得する処理と、
前記当初計画情報と前記解候補との排他的論理和のビット値を加算集計して、前記解候補の第2の評価値を取得する処理と、
前記第1の評価値および前記第2の評価値の少なくともいずれかについて、その評価値の順に解候補を列挙した画面データを所定装置に出力する処理と、
前記解候補を評価値に基づいて所定レベル別に分類し、前記レベルごとに前記解候補の数を集計して、前記集計した値が所定値以上である場合に該当レベルの解候補の前記画面データを更新し、これを前記所定装置に出力する処理と、
を更に実行することを特徴とする請求項8に記載の計画業務支援方法。 The information processing system is
In the storage device, it is the plan information that is the basis of the plan information, further holding the initial plan information without constraint condition violations,
A process of calculating an inner product value of the initial plan information and the solution candidate, and obtaining a first evaluation value of the corresponding solution candidate;
A process of adding and summing up bit values of exclusive OR of the initial plan information and the solution candidate to obtain a second evaluation value of the solution candidate; and
A process of outputting screen data listing solution candidates to a predetermined device in the order of the evaluation values for at least one of the first evaluation value and the second evaluation value;
The solution candidates are classified according to predetermined levels based on evaluation values, the number of solution candidates is totaled for each level, and the screen data of solution candidates at the corresponding level when the total value is equal to or greater than a predetermined value Updating and outputting this to the predetermined device;
The planning work support method according to claim 8, further comprising:
前記解候補に関する処理状況を所定装置に出力する処理を更に実行することを特徴とする請求項8に記載の計画業務支援方法。The information processing system is
9. The planned work support method according to claim 8, further comprising executing a process of outputting a processing status relating to the solution candidate to a predetermined device.
前記記憶装置において、前記計画情報として、n人の乗務員、a個の列車、b個の駅、m時間単位の時刻情報について、乗務員、列車あるいは駅を示す位置、時間における割当の有無についてブール値で表現するn×(a+b)×mの3次元以上のビット集合を格納し、
前記計画情報においてi番目の列車にj番目の乗務員を割り当て、かつ前記列車の出発時刻以前の計画を保存しつつ計画変更する解候補を作成するに際し、
時間範囲mの中で前記列車の出発時刻から到着時刻までをビット値1として他を0とする運行情報であって、長さmの第1のビット集合を作成する処理と、
時間範囲mの中で前記列車の出発時刻以前をビット値0として他を1とするマスクであって、長さmの第2のビット集合を作成する処理と、
前記マスクの否定と前記計画情報の第1の論理積を計算し、前記マスクと前記運行情報の第2の論理積を計算し、前記第1の論理積と前記第2の論理積との論理和を計算する処理と、
を実行することを特徴とする請求項8に記載の計画業務支援方法。The information processing system is
In the storage device, as the plan information, n crew members, a trains, b stations, time information in units of m hours, positions indicating crew members, trains or stations, and presence / absence of allocation in time Stores a bit set of three or more dimensions of n × (a + b) × m expressed by
In creating the solution candidate for changing the plan while allocating the j-th crew member to the i-th train in the plan information and preserving the plan before the departure time of the train,
A process of creating a first bit set of length m, which is operation information in which a bit value is 1 from the departure time to the arrival time of the train in the time range m and the others are 0;
A mask having a bit value of 0 before the departure time of the train in the time range m and 1 being the other, and creating a second bit set of length m;
A first AND of the mask and the plan information is calculated, a second AND of the mask and the operation information is calculated, and a logical AND of the first AND and the second AND The process of calculating the sum;
The planning work support method according to claim 8, wherein:
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| PCT/JP2015/067208 WO2016203531A1 (en) | 2015-06-15 | 2015-06-15 | Planning operation assistance system and planning operation assistance method |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPWO2016203531A1 JPWO2016203531A1 (en) | 2017-08-31 |
| JP6440840B2 true JP6440840B2 (en) | 2018-12-19 |
Family
ID=57545477
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2017524167A Active JP6440840B2 (en) | 2015-06-15 | 2015-06-15 | Planning work support system and planning work support method |
Country Status (2)
| Country | Link |
|---|---|
| JP (1) | JP6440840B2 (en) |
| WO (1) | WO2016203531A1 (en) |
Families Citing this family (7)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN109278811B (en) * | 2018-09-27 | 2020-11-24 | 北京全路通信信号研究设计院集团有限公司 | Comprehensive automatic implementation system and method for transportation organization of railway passenger station |
| JP6971297B2 (en) * | 2019-12-25 | 2021-11-24 | 西日本電信電話株式会社 | Decision support device, decision support program and decision support method |
| JP7319911B2 (en) * | 2019-12-26 | 2023-08-02 | 株式会社東芝 | Train information management device |
| JP7530248B2 (en) * | 2020-09-08 | 2024-08-07 | 株式会社東芝 | Information processing device, information processing method, and computer program |
| JP7758161B2 (en) * | 2022-03-18 | 2025-10-22 | 日本電気株式会社 | Learning device, presentation device, learning method and program |
| KR102604219B1 (en) * | 2022-09-07 | 2023-11-20 | 주식회사 아인스페이스 | Method and System for Detecting Faults on High Resolution Data |
| WO2025088775A1 (en) * | 2023-10-27 | 2025-05-01 | 三菱電機株式会社 | Information processing device, information processing method, program, display device, and display method |
Family Cites Families (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH09297791A (en) * | 1996-04-30 | 1997-11-18 | Hitachi Ltd | Man-machine cooperative scheduling method |
| JPH09315308A (en) * | 1996-05-27 | 1997-12-09 | Hitachi Ltd | How to create an operation plan for operating equipment |
| JP3862899B2 (en) * | 1999-09-17 | 2006-12-27 | 富士通株式会社 | Optimization device |
| JP2004030413A (en) * | 2002-06-27 | 2004-01-29 | Fujitsu Ltd | Optimization processing equipment |
| JP2005157793A (en) * | 2003-11-26 | 2005-06-16 | Hitachi East Japan Solutions Ltd | Maintenance plan supporting system and method, and computer program for maintenance plan support |
| JP5773142B2 (en) * | 2011-06-22 | 2015-09-02 | 株式会社日立製作所 | Computer system configuration pattern calculation method and configuration pattern calculation apparatus |
-
2015
- 2015-06-15 JP JP2017524167A patent/JP6440840B2/en active Active
- 2015-06-15 WO PCT/JP2015/067208 patent/WO2016203531A1/en not_active Ceased
Also Published As
| Publication number | Publication date |
|---|---|
| WO2016203531A1 (en) | 2016-12-22 |
| JPWO2016203531A1 (en) | 2017-08-31 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP6440840B2 (en) | Planning work support system and planning work support method | |
| US12248492B2 (en) | Extract, transform, load monitoring platform | |
| Lee et al. | Task taxonomy for graph visualization | |
| Pihera et al. | Application of machine learning to algorithm selection for TSP | |
| JP5949560B2 (en) | Flow line detection processing data distribution system, flow line detection processing data distribution method and program | |
| US20130311242A1 (en) | Business Process Analytics | |
| Al-Tabbakh et al. | Machine learning techniques for analysis of Egyptian flight delay | |
| Jiang et al. | A scheme for determining vehicle routes based on Arc-based service network design | |
| Fan et al. | Non-linear merging strategies for merge-and-shrink based on variable interactions | |
| EP3855316A1 (en) | Optimizing breakeven points for enhancing system performance | |
| van de Ven et al. | Determining capacity of shunting yards by combining graph classification with local search | |
| Gupta et al. | Risks in supply chain management and its mitigation | |
| US8924918B2 (en) | Evaluation apparatus, an evaluation method and an evaluation program storing medium | |
| Biswal et al. | Embedding-Based Representation Learning for Forecasting Flight Characteristics | |
| Kai et al. | Improved formulations of the joint order batching and picker routing problem | |
| Janssens et al. | An exact algorithm for the full truckload pick–up and delivery problem with time windows: concept and implementation details | |
| CN121387503B (en) | Cross-border trade big data platform task scheduling methods, systems and equipment | |
| Hirokane et al. | Extraction of minimal decision algorithm using rough sets and genetic algorithm | |
| Díaz | Topological analysis of multivariate time series data | |
| Melo et al. | Metaheuristics evaluation: a proposal for a multicriteria methodology | |
| CN109685453A (en) | The method of intelligent recognition workflow active path | |
| Li et al. | CargoFlow: A Comprehensive System for Congestion Detection and Root Cause Analysis in Cargo Handling | |
| Tasnim et al. | A CLONALG-based approach for the set covering problem | |
| Schlenkrich et al. | 6 Integrating Memory-Based Perturbation Operators into a Tabu Search Algorithm for Real-World Production Scheduling Problems | |
| Ragin-Skorecka et al. | Information is the key in optimization of transport processes |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20170411 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20180403 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20180510 |
|
| 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: 20181106 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20181120 |
|
| R150 | Certificate of patent or registration of utility model |
Ref document number: 6440840 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |