JPH10293784A - Scheduling method and device - Google Patents
Scheduling method and deviceInfo
- Publication number
- JPH10293784A JPH10293784A JP10132497A JP10132497A JPH10293784A JP H10293784 A JPH10293784 A JP H10293784A JP 10132497 A JP10132497 A JP 10132497A JP 10132497 A JP10132497 A JP 10132497A JP H10293784 A JPH10293784 A JP H10293784A
- Authority
- JP
- Japan
- Prior art keywords
- time
- resource
- work
- solution
- processing
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 279
- 238000013468 resource allocation Methods 0.000 claims abstract description 45
- 230000008859 change Effects 0.000 claims abstract description 10
- 230000002068 genetic effect Effects 0.000 claims abstract description 10
- 230000008569 process Effects 0.000 claims description 174
- 238000012545 processing Methods 0.000 claims description 151
- 210000000349 chromosome Anatomy 0.000 claims description 67
- 238000011156 evaluation Methods 0.000 claims description 53
- 230000014509 gene expression Effects 0.000 claims description 29
- 230000035772 mutation Effects 0.000 claims description 13
- 230000002123 temporal effect Effects 0.000 claims description 8
- 238000011017 operating method Methods 0.000 claims description 4
- 238000005457 optimization Methods 0.000 claims description 3
- 230000010365 information processing Effects 0.000 claims 1
- 238000002360 preparation method Methods 0.000 abstract description 3
- 238000004090 dissolution Methods 0.000 abstract 1
- 238000012546 transfer Methods 0.000 description 12
- 238000010586 diagram Methods 0.000 description 11
- 238000009940 knitting Methods 0.000 description 6
- 239000000047 product Substances 0.000 description 6
- 238000004140 cleaning Methods 0.000 description 5
- 238000004519 manufacturing process Methods 0.000 description 5
- 108090000623 proteins and genes Proteins 0.000 description 5
- 238000007689 inspection Methods 0.000 description 4
- 230000008520 organization Effects 0.000 description 4
- 230000008439 repair process Effects 0.000 description 4
- 238000003379 elimination reaction Methods 0.000 description 3
- 239000002994 raw material Substances 0.000 description 3
- 239000011265 semifinished product Substances 0.000 description 3
- 230000015572 biosynthetic process Effects 0.000 description 2
- 239000000470 constituent Substances 0.000 description 2
- 230000008030 elimination Effects 0.000 description 2
- 238000005755 formation reaction Methods 0.000 description 2
- 238000004904 shortening Methods 0.000 description 2
- 230000008901 benefit Effects 0.000 description 1
- 210000001726 chromosome structure Anatomy 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000012854 evaluation process Methods 0.000 description 1
- 230000001771 impaired effect Effects 0.000 description 1
- 238000003780 insertion Methods 0.000 description 1
- 230000037431 insertion Effects 0.000 description 1
- 238000012966 insertion method Methods 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 238000003860 storage Methods 0.000 description 1
- 230000002194 synthesizing effect Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/30—Computing systems specially adapted for manufacturing
Landscapes
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
Description
【0001】[0001]
【発明の属する技術分野】本発明は、生産、交通分野に
おけるスケジューリング業務を計算機で支援する方法及
び装置に関するものであり、具体的には計算機を利用し
た計画の立案方法、立案結果の表示方法、立案結果の修
正方法、立案結果の検証方法に関する。BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a method and an apparatus for supporting a scheduling operation in the field of production and transportation by a computer, and more specifically to a method of planning a plan using a computer, a method of displaying a plan result, The present invention relates to a method of correcting a plan result and a method of verifying the plan result.
【0002】[0002]
【従来の技術】確率的探索技法を用いたスケジューリン
グ方法に関しては、(1)「ジョブショップスケジュー
リング問題解決方式」(特開平5−225203)に記
載されているとおり、あらかじめ使用資源が与えられた
いくつかの作業を含む複数の作業が与えられた場合に、
同じ資源を共有する作業間の実行順序を決定することを
スケジューリングと捉え、その解探索を遺伝的アルゴリ
ズム(GA)により実現する手法が知られている。2. Description of the Related Art As to a scheduling method using a stochastic search technique, as described in (1) "Job Shop Scheduling Problem Solving Method" (Japanese Patent Laid-Open No. 5-225203), a number of resources assigned in advance are used. If more than one task is given,
There is known a method of determining the execution order between tasks sharing the same resource as scheduling, and realizing a solution search using a genetic algorithm (GA).
【0003】また、交通分野における車両入換計画作成
方法に関しては、(2)「入換トータルシステム」(安
斎 他:鉄道と電気技術,Vol.6,No.2,199
5)に記載されているとおり、車両入換計画作成のノウ
ハウを抽出したものをAIのルールとして取り込み計画
作成に反映させる手法が知られている。[0003] Regarding a method of preparing a vehicle replacement plan in the transportation field, see (2) "Replacement total system" (Ansai et al .: Railway and Electric Technology, Vol. 6, No. 2, 199).
As described in 5), there is known a method in which the know-how of vehicle replacement plan creation is extracted as an AI rule and reflected in the plan creation.
【0004】[0004]
【発明が解決しようとする課題】上記従来例(1)にお
いては、使用資源の時間的競合を解消して作業に実行順
序をつけることをスケジューリングと捉えGAにより解
探索を行なうが、作業の使用資源の割当は計画作成者が
手作業により与える必要がある。さらに、作成した解を
評価した結果、それが計画作成者の意図を十分に反映し
た解ではない、もしくは実行可能な順序をつけることが
不可能である場合には、その内容に応じて資源割当の組
合せを変更することが必要となることがあるが、上記従
来例においては、解の評価の度合を資源の割当に反映さ
せることができないという問題点があった。また、上記
従来例(1)においては、作業を実行するために必要と
される補助的な処理はスケジューリング対象ではないた
め、作成されたスケジュールが作業の実行順序について
は正しくても補助的処理の実行可能性が保証されていな
いために、実際には実行不可能であるという問題点もあ
った。In the prior art (1), the solution search is performed by the GA, taking the time contention of the used resources and assigning the execution order of the work as scheduling. Resource allocation must be provided manually by the planner. Furthermore, as a result of evaluating the created solution, if the solution does not sufficiently reflect the intentions of the plan creator, or if it is impossible to put the order in which it can be executed, it is necessary to allocate resources according to the content. May need to be changed, but in the above-described conventional example, there is a problem that the degree of solution evaluation cannot be reflected in resource allocation. Further, in the above conventional example (1), since the auxiliary processing required to execute the work is not a scheduling target, even if the created schedule is correct in the execution order of the work, the auxiliary processing is not performed. Since the feasibility is not guaranteed, there is also a problem that the feasibility is not practical.
【0005】上記従来例(2)においては、特定の鉄道
車両基地における車両入換計画を、車両基地に固有の計
画条件や計画目標を組み込んだ探索論理により作成をお
こうなうため、それらが変化した場合に実行可能解の探
索が困難になる、他の車両基地の車両入換計画作成に適
用することができない、というスケジューリングシステ
ムの保守・開発上の点で問題点があった。In the above conventional example (2), a vehicle replacement plan at a specific railroad depot is created by search logic incorporating planning conditions and plan targets specific to the depot, and these are therefore required. If it changes, there is a problem in the maintenance and development of the scheduling system that it becomes difficult to search for a feasible solution and cannot be applied to the preparation of a vehicle replacement plan for another depot.
【0006】本発明の目的は、作業と作業の実行に必要
な補助的な処理を操作として同一視し、生産・交通スケ
ジューリング問題を、仕事の完了に必要な操作の手順と
各操作の使用資源と各操作の処理時刻(実行順序)を決
定することであると捉え、確率的探索技法の中で操作に
資源割当を生成・調整する手法と操作の使用資源の時間
的競合を解消する手法を融合することにより、計画条件
・計画目標の変化に対して柔軟な解作成をおこなう生産
・交通スケジューリングシステムを提供することにあ
る。[0006] An object of the present invention is to identify work and auxiliary processing necessary for execution of work as operations, and to solve the production / traffic scheduling problem by referring to the operation procedures required for completing the work and the resources used by each operation. And to determine the processing time (execution order) of each operation, a method of generating and adjusting the resource allocation for the operation and a method of resolving the time conflict between the resources used by the operation in the stochastic search technique It is an object of the present invention to provide a production / traffic scheduling system that can flexibly create solutions for changes in planning conditions and planning goals by fusing.
【0007】[0007]
【課題を解決するための手段】上記目的は、入力された
仕事データから操作手順に関する制約を生成するステッ
プにおいて、操作種類を示す節点を連結する有向ネット
ワーク構造を持つ操作手順に関する制約を生成し、操作
の資源割当の組合せを確率的に調整するステップにおい
て、操作手順に関する制約の各節点の資源の割当状況を
全ての仕事について示す染色体を解探索パラメータに設
定された個数だけ生成・調整し、操作の必要資源の時間
的競合を解消してスケジュールの解候補を作成するステ
ップにおいて、操作手順に関する制約と染色体から初期
解を作成し、初期解の中の使用資源を競合する操作のど
ちらか一方を、作業操作間に設定された作業に関する制
約を充足させつつ時間後方にずらすことにより競合を解
消して解候補を作成し、得られたスケジュールの解候補
を評価して評価値を算出するステップにおいて、所定の
制約条件から作成された解評価項目の充足の程度に応じ
て解候補の各々の評価値を算出し、評価値を上記の資源
割当の確率的調整ステップにフィードバックするステッ
プにおいて、解候補を作成する際に使用した染色体デー
タに算出した評価値を与え、スケジュール候補の最適解
探索処理を(1)資源割当の組合せを確率的に調整する
ステップ、(2)操作の必要資源の時間的競合を解消し
てスケジュールの解候補を作成するステップ、(3)解
候補を評価して評価値を算出するステップ、(4)評価
値を資源割当の確率的調整ステップにフィードバックす
るステップ、を繰り返すことによりおこない、最適化の
結果得られたスケジュールの解を表示してオペレータが
操作するステップにおいて、仕事データ、資源に関する
制約、解探索パラメータ、作業の順序に関する制約、解
評価項目を修正し、解探索の再実行を指示することで達
成される。The object of the present invention is to generate, in a step of generating a constraint on an operation procedure from input work data, a constraint on an operation procedure having a directed network structure connecting nodes indicating operation types. In the step of stochastically adjusting the combination of resource allocation of the operation, in the step of generating and adjusting the number of chromosomes set in the solution search parameters, indicating the status of resource allocation of each node of the constraint on the operation procedure for all tasks, In the step of resolving the time conflict between the resources required for the operation and creating a solution candidate for the schedule, an initial solution is created from constraints on the operating procedure and the chromosome, and either one of the operations competing for resources used in the initial solution Is shifted backward in time while satisfying the constraints on work set between work operations, thereby resolving conflicts and creating solution candidates. In the step of calculating the evaluation value by evaluating the solution candidates of the obtained schedule, calculate the evaluation value of each of the solution candidates according to the degree of satisfaction of the solution evaluation items created from the predetermined constraints, In the step of feeding back the evaluation value to the above-mentioned stochastic adjustment step of resource allocation, the calculated evaluation value is given to the chromosome data used in creating the solution candidate, and the optimal solution search processing of the schedule candidate is performed by (1) resource allocation. (2) creating a solution candidate for a schedule by resolving time conflicts between resources required for operation, and (3) calculating an evaluation value by evaluating the solution candidates. (4) repeating the step of feeding back the evaluation value to the stochastic adjustment step of resource allocation, and displaying the solution of the schedule obtained as a result of the optimization. In step operated by an operator to work data, constraints on resources, the solution search parameters, constraints on the order of operations, to modify the solution evaluation items is accomplished by instructing the re-execution of the solution search.
【0008】[0008]
【発明の実施の形態】以下、本発明に係るスケジューリ
ング方法及び装置の一実施例として、鉄道車両基地にお
ける車両入換計画作成システムについて説明する。DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS A description will now be given of a vehicle replacement plan creation system in a railway depot as an embodiment of a scheduling method and apparatus according to the present invention.
【0009】本実施例は、鉄道車両基地における車両運
用計画業務を支援するシステムであり、車両基地に入区
する全ての車両(以下編成と呼ぶ)があらかじめ定めら
れた出区時刻までの間に所定の清掃・点検・修理等の作
業が受けられるように、車両基地内での編成の転線スケ
ジュールを作成するものである。The present embodiment is a system for supporting a vehicle operation planning operation at a railway depot, in which all vehicles (hereinafter referred to as trains) entering the depot are provided before a predetermined departure time. A transfer schedule of the train set in the vehicle depot is created so that predetermined cleaning, inspection, repair, and other operations can be performed.
【0010】図1は本発明の基本構成を示す図である。
実施例の詳細な説明をはじめる前に、図1を用いて本発
明の概要を説明する。FIG. 1 is a diagram showing a basic configuration of the present invention.
Before starting a detailed description of the embodiment, an outline of the present invention will be described with reference to FIG.
【0011】本発明により実現されるスケジューリング
方法・装置は、仕事のスケジュールを作成するために利
用される。ここで仕事とは、ある目的を達成するための
一連の作業のまとまりのことであり、仕事の開始時刻と
終了時刻はあらかじめ決められているものとする。仕事
の目的は本発明の実施例が対象とする具体的なスケジュ
ーリング問題により様々に異なる。生産工場における製
品の加工スケジュール作成問題を例にとると、原料を決
められた加工工程により処理して特定の製品を作ること
が一個の仕事にあたる。また、この場合には仕事の開始
時刻は原料の投入可能時刻、終了時刻は製品の納期、作
業は加工工程における各工程にそれぞれ該当する。仕事
データ0101は、複数の仕事に関するそれぞれの開始
時刻、終了時刻、必要とする作業に関する情報を少なく
とも含んでいる。本発明により実現されるスケジューリ
ング方法・装置はこの仕事データを処理し、複数の計画
条件やユーザ要求を高いレベルで満足する各仕事の実行
可能な「操作系列(シーケンス)」を作成する。操作と
は、スケジューリング対象においてそれ以上分割するこ
とのないなんらかの処理のことである。仕事における作
業も操作の一種である。また、作業をおこなうために必
要な補助的な処理も操作に該当する。上記の生産工場に
おける製品の加工スケジュール作成問題に関しては、各
工程間で加工途中の半製品を受け渡す処理、半製品を次
の工程の開始時刻まで貯蔵する処理、工程開始のための
段取り処理等がこれにあたる。操作は、少なくとも実行
の開始時刻、終了時刻、使用資源の3点を定義すること
により具体化される。使用資源は、原料、加工や搬送の
ための機械、機械を動かす人間、貯蔵スペースや搬送経
路等、操作を実行するために必要とされる物質的・人的
・空間的な対象であり、各操作種類ごとの利用可能な資
源の情報は資源に関する制約0102の中で定義され
る。また、例えばある工程間の半製品の搬送経路が、前
工程と後工程で使用される機械の物理的配置によって制
約を受けることがあるように、実行可能なスケジュール
を生成するために資源間の関係を利用することが必要と
なる場合がある。このような資源間の関係情報も資源に
関する制約に含まれる。The scheduling method and apparatus realized by the present invention are used to create a work schedule. Here, the work is a group of a series of work for achieving a certain purpose, and the start time and the end time of the work are determined in advance. The purpose of the task will vary depending on the specific scheduling problem addressed by embodiments of the present invention. Taking the problem of processing schedule creation of a product in a production factory as an example, one job is to process a raw material through a predetermined processing process to produce a specific product. In this case, the start time of the work corresponds to the time at which the raw materials can be charged, the end time corresponds to the delivery date of the product, and the work corresponds to each step in the processing process. The work data 0101 includes at least information on the start time and end time of each of a plurality of works and information on required work. The scheduling method and apparatus implemented by the present invention processes this work data and creates an executable "operation sequence" for each work that satisfies a plurality of planning conditions and user requirements at a high level. An operation is any processing that is not further divided in a scheduling target. Work at work is also a type of operation. Further, auxiliary processing necessary for performing the work also corresponds to the operation. Regarding the problem of creating the product processing schedule in the above-mentioned production factory, the process of transferring semi-processed products during each process, the process of storing the semi-finished products until the start time of the next process, the setup process for process start, etc. Corresponds to this. The operation is embodied by defining at least three points: a start time of execution, an end time, and resources used. The resources used are the physical, human, and spatial objects required to perform the operation, such as raw materials, machines for processing and transport, people who move the machines, storage spaces and transport routes, etc. Information on resources that can be used for each operation type is defined in resource constraints 0102. Also, for example, the transfer route of a semi-finished product between a certain process may be restricted by the physical arrangement of the machines used in the previous process and the subsequent process. You may need to take advantage of relationships. Such relational information between resources is also included in the restrictions on resources.
【0012】仕事の操作系列は、ある仕事を完了するた
めに必要な操作の一連の流れであり、この流れに沿って
操作を順番に実行することにより仕事を支障なく完了す
ることが可能となる。以降では、仕事のスケジュール、
もしくはスケジューリング問題の解と記述した場合、そ
れらは仕事の操作系列を意味するものとする。The operation sequence of a work is a series of operations required to complete a certain work, and by performing the operations in order along this flow, the work can be completed without any trouble. . Hereafter, the work schedule,
Or, when they are described as solutions to the scheduling problem, they mean a work operation sequence.
【0013】本発明により実現されるスケジューリング
方法・装置は、仕事データを入力として受取った後に、
ステップ0103において操作手順に関する制約010
4を生成する。操作手順に関する制約とは、与えられた
仕事を完了するために必要な操作の種類と、それら複数
の操作同士のつながりを規定する情報である。補助的な
処理を一切考慮する必要のない単純なスケジューリング
問題の場合、操作手順に関する制約は、図2(a)に示
すように仕事に含まれる作業の種類を実行順に並べた単
純なリストになる。しかしながら、作業間の補助的な処
理は各仕事ごとに厳密に定義される作業とは異なり、例
えば工程間の半製品の受け渡しの経路や方法が異なって
いても完成する製品は同じであるように、同じ結果をも
たらす処理が複数存在し、それらの選択に自由度がある
ことが多い。そのため、操作手順に関する制約は一般的
には図2(b)に示すように操作種類を節点とする複雑
な有向ネットワークとなる。[0013] The scheduling method and apparatus realized by the present invention are provided after receiving work data as input.
In step 0103, restrictions 010 on the operation procedure
4 is generated. The constraint on the operation procedure is information that defines the type of operation required to complete a given task and the connection between the plurality of operations. In the case of a simple scheduling problem in which it is not necessary to consider any auxiliary processing, the restriction on the operation procedure is a simple list in which the types of work included in the work are arranged in the order of execution as shown in FIG. . However, the auxiliary processing between operations is different from the operation strictly defined for each operation. For example, the completed product is the same even if the delivery route and method of the semi-finished product between processes are different. In many cases, there are a plurality of processes that provide the same result, and there is often a degree of freedom in their selection. For this reason, restrictions on the operation procedure generally result in a complicated directed network having operation types as nodes as shown in FIG.
【0014】この有向ネットワーク上で全ての作業節点
を実行順にたどって一本のパスを得て、そのパスの各節
点を時間的制約に違反しないように操作として具体化し
たものが仕事の一スケジュールである。図3にスケジュ
ールの視覚的表現であるガントチャートの一例を示す。
ガントチャートの縦軸と横軸はそれぞれスケジューリン
グ環境における資源と時間帯である。横棒0301をは
じめとする表の中の太い棒が一個の操作であり、棒の縦
の位置が操作の使用資源を、横の位置と棒の長さが実行
時間帯をそれぞれ表している。On the directed network, one path is obtained by tracing all the work nodes in the execution order, and each node of the path is embodied as an operation so as not to violate the time constraint. It is a schedule. FIG. 3 shows an example of a Gantt chart that is a visual representation of a schedule.
The vertical and horizontal axes of the Gantt chart are the resources and time zones in the scheduling environment, respectively. A thick bar in the table including the horizontal bar 0301 indicates one operation, and the vertical position of the bar indicates the resource used by the operation, and the horizontal position and the length of the bar indicate the execution time zone.
【0015】スケジューリング対象の仕事が一つの場合
は、このようにして得られる全てのスケジュールが実行
可能解となる。しかしながら、資源を共有し、時間的に
重なりがある複数の仕事が与えられた場合は、個々の仕
事のスケジュールを独立に作成しても操作間で使用資源
の時間的競合が発生し、実行可能解を得ることは困難で
ある。資源競合のない実行可能解を作成するためには、
操作手順の選択と操作の具体化(資源と時刻の割当)を
相互に関連させつつ適切に行うことが必要である。本発
明においては図1ステップ0105の解探索処理でそれ
を実現する。If there is only one job to be scheduled, all the schedules obtained in this way are executable solutions. However, when multiple tasks that share resources and overlap in time are given, even if the schedules of individual tasks are created independently, time conflicts in the resources used occur between operations, and execution is possible. It is difficult to get a solution. To create a feasible solution without resource conflicts,
It is necessary to appropriately select the operation procedure and embody the operation (allocation of resources and time) while associating them with each other. In the present invention, this is realized by the solution search processing of step 0105 in FIG.
【0016】本ステップは4個の内部ステップのループ
結合を基本構成とする。資源割当の確率的調整ステップ
(0106)は、操作種類の有向ネットワークの各節点
に資源を割当てたデータを入力として受取り、遺伝的ア
ルゴリズム(GA)に代表される組合せ問題の確率的探
索手法を用いてその割当資源の組合せをより望ましいも
のへと変化させる。この際に解探索パラメータ0110
を確率的探索の制御データとして使用する。資源競合の
解消ステップ(0107)は、操作手順の選択と操作の
具体化をおこない解候補を作成する。操作の使用資源は
前記ステップにおいて調整されたものを用いる。作成の
初期段階で各仕事のスケジュールを独立に作成し、発生
した資源競合を操作手順と操作の時間割当の変更により
解消する。異なる仕事の特定の作業間に実行順序が定義
されている場合には、その情報を作業の順序に関する制
約0111として取り込み、資源競合解消ルールとして
利用する。解候補の評価ステップ(0108)は、競合
解消ステップで得られた解候補に対し、解評価項目01
12に含まれる計画条件とユーザ要求の充足度とを判定
して充足度に応じた評価値を与える。この評価値は評価
値のフィードバックステップ(0109)により上記資
源割当の確率的調整ステップへ送られ、資源割当の最適
化に利用される。上記4ステップのループ処理を繰り返
すことにより、割当資源の組合せが徐々に最適化され、
最終的に質の高い実行可能解を生成することができる。
解探索ステップは、このループ処理を解探索パラメータ
に含まれる規定ループ回数だけ繰り返した後に、最終的
に得られた解候補を解0113として出力する。This step basically has a loop connection of four internal steps. The stochastic adjustment step (0106) of the resource allocation receives, as an input, data in which resources are allocated to each node of the directed network of the operation type, and performs a stochastic search method of a combination problem represented by a genetic algorithm (GA). To change the combination of allocated resources to a more desirable one. At this time, the solution search parameter 0110
Is used as control data for the probabilistic search. In the resource conflict resolution step (0107), a solution candidate is created by selecting an operation procedure and embodying the operation. The resources used for the operation use those adjusted in the above step. In the initial stage of the creation, the schedule of each task is created independently, and the resource conflict that has occurred is resolved by changing the operation procedure and time allocation of the operation. When an execution order is defined between specific tasks of different tasks, the information is taken in as a constraint 0111 regarding the order of the tasks and used as a resource conflict resolution rule. The solution candidate evaluation step (0108) includes a solution evaluation item 01 for the solution candidate obtained in the conflict resolution step.
12 and the satisfaction degree of the user request is determined, and an evaluation value corresponding to the satisfaction degree is given. The evaluation value is sent to the resource allocation stochastic adjustment step in the evaluation value feedback step (0109), and is used for optimizing the resource allocation. By repeating the above four-step loop process, the combination of the allocated resources is gradually optimized,
Finally, a high quality feasible solution can be generated.
In the solution search step, after this loop process is repeated by the specified number of loops included in the solution search parameter, the finally obtained solution candidate is output as the solution 0113.
【0017】ステップ0114では解を表示装置011
6に表示し、入力装置0115からオペレータによる操
作を受け付ける。オペレータは、仕事データ、資源に関
する制約、解探索パラメータ、作業の順序に関する制
約、解評価項目を表示装置に出力させてそれらを編集
し、編集されたデータを用いて解探索処理を再び指示す
ることができる。オペレータによって承認を受けた解
は、正式な計画として登録され、実務フォーマットに変
換された上でプリンタ0117から出力される。At step 0114, the solution is displayed on the display device 011.
6 and accepts an operation by the operator from the input device 0115. The operator outputs work data, resource constraints, solution search parameters, work order constraints, and solution evaluation items to a display device, edits them, and instructs solution search processing again using the edited data. Can be. The solution approved by the operator is registered as a formal plan, converted to a business format, and output from the printer 0117.
【0018】本実施例は、図1に示される全てのデータ
と処理と装置を車両入換計画作成用に具体化することで
実現される。以降では、その詳細を図1との対応を明ら
かにしながら順次説明する。This embodiment is realized by embodying all the data, processes and devices shown in FIG. 1 for preparing a vehicle replacement plan. Hereinafter, the details will be sequentially described while clarifying the correspondence with FIG.
【0019】まず本実施例の計画対象である、車両基地
における車両入換計画の概要を図4、図5、図6を用い
て説明する。First, an outline of a vehicle replacement plan at a vehicle depot, which is a plan target of the present embodiment, will be described with reference to FIGS. 4, 5, and 6. FIG.
【0020】図4は、仮想的な鉄道車両基地における車
両入換計画を示す帳票の一部である。帳票の各行が車両
基地内での編成の一回の転線を表している。ここで転線
とは、車両基地内の番線から別の番線への移動のことで
ある。例えば符号0401の転線は、編成02を番線0
7から番線05へ9時30分から移動することを表す。
さらに「内容」と「作業詳細」から、この転線は番線0
5で作業「清掃1」を受けるためのものであることが読
みとれる。各転線は開始時刻の順番に並んでおり、この
順番を遵守して転線をおこなうことにより、基地内に入
区する全ての編成が、予定された清掃・点検・修理等の
作業が受けられる番線へ次々に移動し、移動中や在線中
に互いに衝突することなしに出区予定時刻に車両基地を
出ていくことが可能となる。FIG. 4 is a part of a form showing a vehicle replacement plan at a virtual railway depot. Each row of the form represents one turn of the train in the depot. Here, the turning line refers to a movement from a track in the depot to another track. For example, in the case of the transfer line 0401, the knitting 02
It indicates that the vehicle moves from 7 to track 05 at 9:30.
Furthermore, from "contents" and "work details", this line
5, it can be seen that the operation is for receiving the operation "cleaning 1". Each transit line is arranged in the order of the start time, and by performing the transit in accordance with this order, all trains entering the base will receive scheduled cleaning, inspection and repair work. It is possible to move one after another to the next line and to leave the depot at the scheduled departure time without colliding with each other while moving or on the train.
【0021】図5は、当該車両基地のレイアウト図であ
る。7本の番線と入出区線を1本持っている。番線01
は2つの区に分割されており、それぞれの区に異なる編
成が在線できる。2区への出入りは1区に編成が在線し
ていない場合に限られるという特別な制約があるが、そ
れを除くと区は通常の番線と同じものとみなせるため、
以降の記述では特に断らない限り区を番線として扱うも
のとする。編成は番線及び入出区線の間につなげられた
転線ルートを通って他の番線もしくは車両基地の外部と
の間を行き来することができる。図4に示す車両基地
は、説明を分かり易くするために1本の転線ルートで全
ての番線と車両基地の外部を行き来できる単純な構造に
なっているが、特定の番線間のみを移動できる転線ルー
トが複数ある構造の場合にも本実施例は対応している。
また入出区線が複数本ある場合も同様である。図4の車
両基地も含めて、一般に車両基地内の番線は用途別に3
種類に分類できる。(1)作業番線:清掃・点検・修理
等の作業が可能な専用設備を持つ番線(2)留置番線:
作業番線の空きや出区を待つ間在線する番線(3)引上
番線:番線間を移動するために一時的に在線する番線作
業番線は、清掃可能番線、点検可能番線といったよう
に、可能な作業種類によってさらに細かく分類される。
同一設備で異なる作業が可能な場合もあるので、各作業
の可能番線は重複していることがある。留置番線は特別
の設備が不要なために、基地内のほとんどの番線がこれ
に該当する。作業番線の一部を留置番線として併用する
車両基地も存在し、その場合には作業番線の集合と留置
番線の集合には重なりがある。図4の車両基地を例にと
ると、引上線は番線06と番線07の2本である。レイ
アウトからわかるとおり、他の番線が番線06と番線0
7以外の別の番線に向かう場合には、必ず一度番線06
か番線07に「引き上げ」てから目的番線に移動しなけ
ればならない。すなわち、入出区を除けば、転線は発番
線か着番線のいずれか一方が必ず引上線になる。よっ
て、引上線はその使用頻度が高いために留置等の他の目
的で使用されることはほとんどなく、在線時間も極めて
短い。FIG. 5 is a layout diagram of the vehicle depot. It has seven lines and one entry / exit line. Track 01
Is divided into two sections, and different formations can be present in each section. There is a special restriction that entry into and out of the 2nd ward is limited to those where the train is not located in the 1st ward.
In the following description, wards are treated as line numbers unless otherwise specified. The knitting can move between another track or outside of the depot via a transit route connected between the track and the entrance / exit line. The depot shown in FIG. 4 has a simple structure in which all the tracks and the outside of the depot can be moved by one turn route for easy understanding, but can be moved only between specific tracks. The present embodiment also corresponds to a structure having a plurality of transfer routes.
The same applies when there are a plurality of entry / exit lines. In general, the number in the depot including the depot shown in FIG.
Can be classified into types. (1) Work line: A line with dedicated facilities that can perform cleaning, inspection, repair, etc. (2) Detention line:
Waiting for the availability of a work line or leaving the work line (3) Pulling work line: a work line that is temporarily present to move between work lines, a work line that can be cleaned, a checkable line, etc. It is further classified according to the type of work.
Since different operations may be possible in the same facility, the possible lines of each operation may overlap. The indwelling track does not require any special equipment, and therefore most of the base stations correspond to this. There is also a depot that uses a part of the work track as a detention track, and in this case, the set of the work track and the set of the detention track overlap. Taking the depot of FIG. 4 as an example, there are two pull-up lines, line 06 and line 07. As can be seen from the layout, the other lines are line 06 and line 0
When going to another track other than 7, be sure to once
You must "pull up" to line 07 and then move to the destination line. In other words, excluding the entry and exit sections, one of the originating line and the destination line is always an upline. Therefore, since the pulling line is used frequently, it is hardly used for other purposes such as detention, and the on-line time is extremely short.
【0022】図6は、図4の車両入換計画表をダイヤ形
式に変換した車両入換ダイヤの一部である。横軸は一日
の時間帯、縦軸は車両基地内の番線である。水平線06
01をはじめとする水平線が各番線における在線を、斜
線0602をはじめとする水平線同士を結ぶ斜線が番線
間の移動をそれぞれ表している。ある特定の編成が入区
から出区までの間に車両基地内を動き回る様子は、該当
編成の入出区から始まり入出区で終わる斜線と水平線か
らなる1本のすじをたどっていくことで容易にわかる。
また、車両入換ダイヤは、移動時と在線時の衝突がそれ
ぞれ斜線と水平線の時間的重なりとして視覚的に表現さ
れるため、それらの検出も容易である。FIG. 6 shows a part of a vehicle replacement schedule obtained by converting the vehicle replacement schedule shown in FIG. 4 into a diagram format. The horizontal axis is the time of the day, and the vertical axis is the line in the depot. Horizontal line 06
A horizontal line such as 01 indicates a line in each line, and a hatched line connecting horizontal lines such as a hatched line 0602 indicates movement between the lines. The appearance of a particular train moving around the depot between entry and exit can be easily determined by following a single line consisting of a diagonal line and a horizontal line that starts at the entry and exit of that train and ends at the entrance and exit. Recognize.
Further, in the vehicle replacement schedule, since the collision at the time of movement and the collision at the time of on-line are visually expressed as a time overlap of the oblique line and the horizontal line, respectively, it is easy to detect them.
【0023】以上をまとめると、車両入換計画作成問題
は、ある特定のレイアウトを持つ車両基地に入区する全
ての編成の出区迄の移動・在線の系列を、様々な制約条
件を考慮しながら作成することであるといえる。考慮す
べき制約条件は、必須制約と目標制約の2種類に分類で
きる。必須制約は、全ての実行可能な車両入換計画が必
ず満たさなければならない制約条件であり、(1)各編
成の出区時刻を守る(2)在線時の番線の競合、移動時
の転線ルートの競合がない(3)予定された作業が実行
可能な番線に規定時間以上在線し、なおかつ在線順序が
作業順序と等しいの3点が挙げられる。目標制約は必須
制約よりも弱い制約条件であり、これを充足しなくても
必須制約さえ充足していれば車両入換計画の実行可能性
が損なわれることはない。目標制約は車両入換計画の品
質に関わる制約条件と見なすことができ、目標制約の充
足度が高い車両入換計画であればあるほど高品質である
と言える。また目標制約はその種類が多く、システム開
発時にはその全てを十分に把握できない場合がある。さ
らに車両基地レイアウトや基地内の諸設備といった車両
基地特性の変化によっても目標制約は動的に変化する。
そこで、ここではある程度普遍的であると考えられる目
標制約のみを挙げる。To summarize the above, the problem of preparing a vehicle replacement plan is based on the consideration of various constraints on the sequence of movements / rails up to departure of all trains entering a vehicle depot having a specific layout. It can be said that it is to create while. Constraints to be considered can be classified into two types: essential constraints and target constraints. The indispensable constraints are constraints that must be satisfied by all feasible vehicle replacement plans. (1) Keep the departure time of each train. (2) Compete for track numbers when there are trains, and transfer when moving. There is no route conflict (3) There are three points where the scheduled work is on the executable line for a specified time or more and the presence order is the same as the work order. The target constraint is a constraint that is weaker than the essential constraint. Even if the target constraint is not satisfied, as long as the essential constraint is satisfied, the feasibility of the vehicle replacement plan is not impaired. The target constraint can be regarded as a constraint condition relating to the quality of the vehicle replacement plan, and the higher the degree of satisfaction of the target constraint, the higher the quality of the vehicle replacement plan. Further, there are many types of target constraints, and it may not be possible to fully grasp all of them when developing a system. Further, the target constraint dynamically changes due to a change in the depot characteristics such as the depot layout and various facilities in the depot.
Therefore, only the goal constraints considered to be universal to some extent are listed here.
【0024】1.転線回数が少ない 2.各編成の余裕度が大きい 3.作業順序を守る 全ての編制の総転線回数が少ないということは、車両入
換を一個の作業としてトータルに捉えた場合のコストが
それだけ少ないということを意味する。余裕度とは、編
成が予定された作業を全て終了してから出区するまでの
空き時間のことである。余裕度が大きければ、列車ダイ
ヤの乱れ等のために出区予定時刻が早まった場合の対応
も容易であり、また空き時間を利用してさらに他の作業
を受けることも可能となるなど、スケジューリング環境
の動的変化に対して頑健な計画となる。(3)の作業順
序は、ここでは各編成に予定された複数の作業の実施順
序のことではなく、異なる編成の作業間に設定された実
施順序のことで、例えば、「清掃1は編成10、編成0
3、編成08の順序で実施する」といったものである。1. 1. The number of turns is small. 2. Each train has a large margin. Keeping the work order The fact that the total number of turns for all the formations is small means that the cost of taking the vehicle replacement as one work in total is correspondingly small. The allowance is a free time from completion of all the scheduled operations to departure. If the allowance is large, it is easy to respond when the scheduled departure time is advanced due to disorder of the train schedule, and it is also possible to use the available time to receive other work A robust plan against dynamic changes in the environment. The work order (3) does not refer to the execution order of a plurality of works scheduled for each knitting, but the execution order set between works of different knittings. , Organization 0
3, in the order of knitting 08 ".
【0025】目標制約としては以上の他に、「各編成の
余裕度のばらつきが少ない」、「作業者の番線間の移動
距離が少ない」、「番線使用に偏りがない」、「番線使
用の優先順位を守る」といったものが考えられる。In addition to the above-mentioned target constraints, "the variation of the margin of each knitting is small", "the movement distance of the workers between track numbers is small", "the use of track numbers is not biased", and Keep your priority. "
【0026】本発明の適用により、上記の車両入換計画
作成問題を解く計画作成システムを実現できる。以降で
は、図1における各データとステップの実現の詳細につ
いて順次説明する。By applying the present invention, a plan creation system that solves the above-mentioned vehicle replacement plan creation problem can be realized. Hereinafter, details of the implementation of each data and step in FIG. 1 will be sequentially described.
【0027】まず図0101の仕事データについて述べ
る。車両入換計画作成問題における1個の仕事は、1編
成の入区から出区までに実施すべき予定された作業のま
とまりのことである。図7に仕事データの具体例を示
す。この例においては、仕事データは複数の仕事から構
成されており、その中の仕事01は編成番号が03、入
区時刻が9時36分、出区時刻が11時03分、その間
に3個の作業が予定されており、各作業の所要時間もあ
らかじめ与えられる。この仕事データを入力としてステ
ップ0103で操作手順に関する制約を生成する。本実
施例における操作は下記の種類のいずれかに分類され
る。First, the work data shown in FIG. 0101 will be described. One task in the vehicle replacement plan creation problem is a group of scheduled tasks to be performed from entry to exit of one train. FIG. 7 shows a specific example of the work data. In this example, the job data is composed of a plurality of jobs. Among them, the job 01 has an organization number of 03, an entry time of 9:36, a departure time of 11:03, and three jobs in between. Are scheduled, and the time required for each operation is also given in advance. Using this work data as input, a constraint on the operation procedure is generated in step 0103. The operation in this embodiment is classified into one of the following types.
【0028】(1)作業操作 (2)留置操作 (3)
引上操作 (4)移動操作 作業操作は、各編成に予定された作業が実施可能な番線
での所要時間以上の在線を意味する。作業はさらに清掃
・点検・修理といったようにさらに細かく分けられ、そ
のそれぞれに応じて作業操作も分類される。また作業操
作が使用する資源は各作業が可能な番線である。留置操
作は、作業番線の空きを待つ間の番線での在線を意味す
る。留置操作が使用する資源は、留置番線として設定さ
れた番線のいずれかとなる。引上操作は引上線として設
定された番線における所用時間以上の在線を意味する。
移動操作は、文字どおり番線間もしくは番線と入出区線
を介した車両基地の外部との間の移動を意味し、その使
用資源は車両基地内の転線ルートである。作業操作が仕
事の完了に必須な操作であり、それ以外の操作(2)
(3)(4)が作業の実施のための補助的な処理に対応
する。図8に本実施例で使用する操作のデータ構造を示
す。各操作データには操作番号がつけられ、仕事番号、
操作種類、開始時刻、終了時刻、処理時間、使用資源の
6項目の情報を含む。操作種類が作業の場合、操作種類
には仕事の作業番号が入る。作業種類の詳細情報を知る
ためには、仕事番号が示す仕事を前記仕事データから取
り出し、その作業内容の項目を作業番号でアクセスす
る。以降の記述では、入区操作、出区操作という用語が
でてくる場合があるが、これらは入区時と出区時の移動
操作を意味するものであり、特に断らない限り通常の移
動操作として扱う。(1) Work operation (2) Detention operation (3)
Pulling-up operation (4) Movement operation The work operation means the presence of a train line that is longer than the required time on a line where the work scheduled for each train can be performed. The work is further divided into, for example, cleaning, inspection, and repair, and the work operation is also classified according to each. The resource used by the work operation is a line on which each work can be performed. The detention operation means the presence of a line while waiting for an empty work line. The resource used by the detention operation is one of the lines set as the detention line. The pulling-up operation means that the line has been on the track set as the pulling-up line for more than the required time.
The movement operation literally means a movement between the track numbers or between the track number and the outside of the depot via the entry / exit line, and the used resource is a transit route in the depot. The work operation is an indispensable operation for completing the work, and other operations (2)
(3) and (4) correspond to auxiliary processing for performing the work. FIG. 8 shows the data structure of the operation used in this embodiment. Each operation data has an operation number, a job number,
It includes six items of information: operation type, start time, end time, processing time, and resources used. When the operation type is work, the operation type contains the work number of the work. In order to know the detailed information of the work type, the work indicated by the work number is extracted from the work data, and the item of the work content is accessed by the work number. In the following description, the terms entry operation and departure operation may appear, but these mean the movement operation at the time of entry and departure, and unless otherwise specified, the normal movement operation Treat as
【0029】上記操作を具体化して適切な順序で並べた
ものが、仕事(編成の入区から出区までに予定された作
業のまとまり)のスケジュールを表す操作シーケンスで
ある。本実施例の操作シーケンスのデータ構造を図9に
示す。各操作シーケンスには他と区別するための相異な
るシーケンス番号が付けられる。操作シーケンスの主内
容は、符号0901の操作データへの参照リストであ
る。この他に付加的な情報として、スケジューリング対
象の仕事の仕事番号、操作リストの操作数、該操作シー
ケンスの余裕度が含まれる。An operation sequence that embodies the above operations and arranges them in an appropriate order is a work sequence (a group of works scheduled from entry to departure of the organization). FIG. 9 shows the data structure of the operation sequence according to the present embodiment. Each operation sequence is assigned a different sequence number to distinguish it from the others. The main content of the operation sequence is a reference list for the operation data 0901. Other additional information includes the job number of the job to be scheduled, the number of operations in the operation list, and the margin of the operation sequence.
【0030】図7の仕事データを入力として図1ステッ
プ0103において操作手順に関する制約を生成する。
車両入換計画作成問題における操作手順に関する制約の
例として、作業が一つの仕事の場合を図10(a)に示
す。この操作種類の有向ネットワーク上で、入区節点か
ら出区節点までの作業節点を含む任意の一本のパスが実
行可能な操作手順を表す。この例で最も簡単な操作手順
は、入区、作業、出区の3節点のみからなるパスであ
る。この操作手順に対して、入区と作業、作業と出区の
間に留置のための在線操作系列を挿入するに従ってより
複雑な操作手順が得られる。出区時刻を守ることを考慮
しなければ、挿入できる留置のための在線操作系列の数
に制限はなく、その場合には可能な操作手順の数は無数
に存在する。しかしながら、車両入換業務においては業
務効率・負担の観点から転線回数はできるだけ少ない方
が望ましく、また実際に作業の前後で留置を高々一回お
こなうだけで転線ルート・番線の競合を回避できる場合
がほとんどであるため、本実施例においては、図10
(b)のように有限のネットワーク構造を操作手順に関
する制約とする。このネットワークを用いると、最も簡
単な操作手順は先に述べた入区節点、作業節点、出区節
点の3節点のみからなるパスであり、最も複雑な操作手
順は作業の前後で留置線への在線を一度づつおこなう操
作系列を含むパスである。以降の記述では前者を操作手
順の最良パターン、後者を操作手順の最悪パターンと呼
ぶことにする。図から明らかに類推できるように、全て
の操作手順は最良パターンを部分ネットワークとして含
み、最悪パターンに部分ネットワークとして含まれる性
質を持つ。これは即ち最良パターンと最悪パターンから
全ての操作手順を構成することが可能であることを意味
する。そこで、本実施例で用いる操作手順に関する制約
のデータ構造は図11に示すものとした。各データに
は、他と区別するための相異なる番号がつけられ、付加
的な情報として対象の仕事の仕事番号を含む。主内容
は、符号1101の最悪パターンのリストと符号110
2の最良パターンのリストであり、各リストには操作種
類を表すデータが格納される。また、双方のパターンに
共通する作業節点の位置を記憶しておくために、それら
の対を同一資源操作対として格納する。以降の記述で
は、このデータ構造のデータを操作シーケンステンプレ
ート、または単にテンプレートと呼ぶことにする。Using the work data shown in FIG. 7 as an input, in step 0103 in FIG.
FIG. 10A shows a case where the work is one work as an example of a restriction on the operation procedure in the vehicle replacement plan creation problem. On a directed network of this operation type, any one path including a work node from an entry node to an exit node can be executed. The simplest operation procedure in this example is a path consisting of only three nodes: entry, operation, and exit. With respect to this operation procedure, a more complicated operation procedure can be obtained as an on-line operation sequence for detention is inserted between the entry and the operation and between the operation and the exit. Unless the departure time is taken into consideration, there is no limit on the number of on-line operation sequences for insertion that can be inserted, and in that case, there are an infinite number of possible operation procedures. However, in vehicle replacement work, it is desirable that the number of turns is as small as possible from the viewpoint of work efficiency and burden, and it is possible to avoid conflicts between turn routes and track lines only by actually performing detention at most once before and after work. In most cases, FIG.
A finite network structure as shown in FIG. When this network is used, the simplest operation procedure is a path consisting of only the above-mentioned three nodes, the entry node, the operation node, and the exit node. This is a path that includes an operation sequence that performs the on-rail line once. In the following description, the former is referred to as the best pattern of the operation procedure, and the latter is referred to as the worst pattern of the operation procedure. As can be clearly inferred from the figure, all operating procedures have the property that the best pattern is included as a partial network and the worst pattern is included as a partial network. This means that it is possible to compose all operating procedures from the best pattern and the worst pattern. Therefore, the data structure of the constraint on the operation procedure used in the present embodiment is shown in FIG. Each data is given a different number to distinguish it from the others, and includes the work number of the target work as additional information. The main contents are a list of the worst patterns of 1101 and 110
2 is a list of the best patterns, and each list stores data representing an operation type. In addition, in order to store the positions of the working nodes common to both patterns, those pairs are stored as the same resource operation pair. In the following description, the data of this data structure will be referred to as an operation sequence template or simply a template.
【0031】本実施例において、図1ステップ0103
の操作手順における制約の生成に対応する処理は、操作
シーケンステンプレートの生成処理である。図12のフ
ローチャートを参照しながらこの処理の説明を行う。ま
ずステップ1201においてテンプレート数mの初期化
をおこなう。ステップ1202で終了判定をおこない、
テンプレート数mが仕事データの仕事数を超えた場合に
は処理を終了する。ステップ1203では、最悪パター
ン上の位置w、最良パターン上の位置b、共通資源を持
つ操作対(作業節点)の数sを初期化する。ステップ1
204では、テンプレートの仕事番号に仕事mの番号を
設定する。ステップ1205では最悪パターンと最良パ
ターンの先頭位置に操作種類「入区」を設定する。ステ
ップ1206では作業数カウンタnを初期化する。ステ
ップ1207ではループ処理の終了判定をおこない、作
業数カウンタnが仕事mの作業数を超えた場合にはルー
プ処理を終了し、ステップ1214でテンプレート数m
の値を1増やしてステップ1202の処理の終了判定へ
戻る。ループ処理を続行する場合には、ステップ120
8へ進み、最悪パターンに対して位置wを増やしながら
操作種類「留置」、「移動」、「引上」、「移動」を順
次設定する。これらは留置番線への在線のための一連の
操作系列を表す。次にステップ1209において最悪、
最良の両パターンに対して、位置w、bをそれぞれ増や
しながら操作種類「仕事mの作業番号nの作業」、「移
動」、「引上」を順次設定する。そしてステップ121
0で、直前のステップにおいて作業を設定した位置の対
を同一資源操作対として登録してsを1増やす。以上が
1回のループにおける処理であり、その後ステップ12
11で作業数カウンタnを1増やしてステップ1207
のループ処理の終了判定へ戻る。ループ処理を抜けた後
は、ステップ1212へ進む。このステップでは、最悪
パターンに対して位置wを増やしながら操作種類「留
置」、「出区」を設定する。次にステップ1213にお
いて、最良パターンに対して位置bを2減らして操作種
類「出区」を設定する。この処理の終了で1個のテンプ
レートが完成する。その後はテンプレート数mを1増や
して終了判定ステップ1202へ進む。以上の処理によ
り、仕事データ中の各仕事に対応する操作シーケンステ
ンプレートが生成される。In this embodiment, step 0103 in FIG.
The process corresponding to the generation of the constraint in the operation procedure is the operation sequence template generation process. This processing will be described with reference to the flowchart of FIG. First, in step 1201, the number m of templates is initialized. In step 1202, a termination determination is made.
If the number m of templates exceeds the number of jobs in the job data, the process ends. In step 1203, the position w on the worst pattern, the position b on the best pattern, and the number s of operation pairs (work nodes) having common resources are initialized. Step 1
At step 204, the number of the job m is set as the job number of the template. In step 1205, the operation type "entrance" is set at the head position of the worst pattern and the best pattern. In step 1206, a work counter n is initialized. In step 1207, the end of the loop processing is determined. When the work number counter n exceeds the number of works of the work m, the loop processing is ended.
Is incremented by 1 and the process returns to the end determination of the processing in step 1202. To continue the loop processing, step 120
Proceeding to step 8, the operation types “detention”, “move”, “pull up”, and “move” are sequentially set while increasing the position w with respect to the worst pattern. These represent a series of operation sequences for staying on the indwelling track. Next, the worst in step 1209,
For the best two patterns, the operation types “work of work number n of work m”, “move”, and “pull up” are sequentially set while increasing the positions w and b. And step 121
At 0, the pair of positions where the work was set in the immediately preceding step is registered as the same resource operation pair, and s is increased by one. The above is the processing in one loop.
In step 11, the work number counter n is incremented by 1 and step 1207 is executed.
The process returns to the loop process end determination. After exiting the loop processing, the process proceeds to step 1212. In this step, the operation types “detention” and “departure” are set while increasing the position w for the worst pattern. Next, in step 1213, the operation type "departure" is set by reducing the position b by 2 with respect to the best pattern. At the end of this process, one template is completed. Thereafter, the number m of templates is increased by 1, and the process proceeds to the end determination step 1202. Through the above processing, an operation sequence template corresponding to each job in the job data is generated.
【0032】操作シーケンステンプレートは、図1ステ
ップ0105の解探索処理の主入力データとなる。本ス
テップの説明に入る前に、図1符号0102の資源に関
する制約と図1符号0110の解探索パラメータの本実
施例における実現の詳細を説明する。まず資源に関する
制約について説明する。車両入換計画作成問題において
操作が使用する資源は、車両基地内の番線及び転線ルー
トのいずれかである。各資源がどの種類の操作で使用可
能であるかという情報は、資源属性テーブルとして定義
される。そのデータ構造を図13に示す。テーブルの各
行が操作種類ごとの使用可能な資源のリストを表してい
る。各資源は複数の用途で使うことができるため、同じ
資源が別の行に重複して格納される場合がある。ただ
し、引上操作と移動操作の資源は他の用途には使われる
ことはないものとする。車両基地のレイアウトによって
は、特定の番線間の移動に用いる転線経路が制限される
場合があるため、実行可能なスケジュールの生成にはこ
の番線・転線経路の接続情報を利用する必要がある。そ
こで資源に関する制約として資源属性テーブルに加え
て、資源間の関係を定義する接続判定テーブルを採用す
る。そのデータ構造を図14に示す。テーブルの縦軸は
車両基地内の転線経路で横軸が同じく番線である。テー
ブルの各項目は縦の位置の転線経路と横の位置の番線が
接続されている、すなわち該番線が該転線経路を通って
移動可能であるかどうかを表す値が格納される。値TR
UEは接続可能を、値FALSEは接続不可能をそれぞ
れ表す。The operation sequence template is the main input data for the solution search processing in step 0105 in FIG. Prior to the description of this step, the details of the resource-related constraint of FIG. 1 and the implementation of the solution search parameter of FIG. First, restrictions on resources will be described. The resources used by the operation in the vehicle replacement planning problem are either the track lines in the depot or the transit routes. Information on what kind of operation each resource can be used is defined as a resource attribute table. FIG. 13 shows the data structure. Each row of the table represents a list of available resources for each operation type. Since each resource can be used for multiple purposes, the same resource may be stored redundantly in different rows. However, the resources of the lifting operation and the moving operation are not used for other purposes. Depending on the layout of the depot, there may be a case in which a turn route used for movement between specific tracks is limited, and it is necessary to use the connection information of the turn / turn route to generate an executable schedule. . Therefore, in addition to a resource attribute table, a connection determination table that defines a relationship between resources is adopted as a constraint on resources. FIG. 14 shows the data structure. The vertical axis of the table is a turning route in the depot, and the horizontal axis is the same number line. In each item of the table, a value indicating whether the line of the vertical position is connected to the line of the horizontal position, that is, whether or not the line can be moved through the line of the line is stored. Value TR
The UE indicates that connection is possible, and the value FALSE indicates that connection is not possible.
【0033】次に解探索パラメータについて説明する。
本実施例においては、解探索処理の基本アーキテクチャ
として確率的探索手法の一つである遺伝的アルゴリズム
(GA)を利用する。GAは組合せ問題の解候補を生物
個体に見立て、各個体の形質を決める染色体情報に対し
て個体集団の世代交代サイクルの中で遺伝子オペレーシ
ョンを施すことにより、質の高い個体集団を探索する。
この探索を制御するために解探索パラメータが用いられ
る。本実施例における解探索パラメータを図15に示
す。採用したパラメータは「実行世代数」、「個体集団
のサイズ」、遺伝子オペレーションの際の「自然淘汰
率」、「突然変異率」、そして解探索の再実行時に用い
られる「延長世代数」とした。これらはどれもGAの適
用に際して一般的に用いられるものである。Next, the solution search parameters will be described.
In the present embodiment, a genetic algorithm (GA), which is one of stochastic search methods, is used as a basic architecture of a solution search process. The GA regards solution candidates of the combination problem as biological individuals, and performs a genetic operation on chromosome information that determines the traits of each individual in a generation alternation cycle of the individual population, thereby searching for a high-quality individual population.
Solution search parameters are used to control this search. FIG. 15 shows the solution search parameters in this embodiment. The parameters used were "number of generations", "size of individual population", "natural selection rate" during genetic operation, "mutation rate", and "extended generations" used when re-running the solution search. . These are all commonly used in GA applications.
【0034】図1ステップ0105の解探索処理の説明
をおこなう。前述したように、解探索処理の基本アーキ
テクチャにはGAを採用した。GAは組合せ問題に対す
る解探索手法の枠組の総称であり、それぞれの詳細な仕
様があらかじめ与えられているわけではない。GAの適
用にあたっては、構成部分を対象問題に対して適切に実
現する必要がある。以下その実現の詳細を図16のフロ
ーチャートを参照しながら順次説明するとともに、図1
の解探索処理の内部ステップである「資源割当の確率的
調整」、「資源競合の解消」、「解候補の評価」、「評
価値のフィードバック」の各ステップと構成部分との対
応関係を示す。まずステップ1601において、図17
に示す資源割当テーブルの初期化をおこなう。資源割当
テーブルとは、スケジューリング対象の全ての操作シー
ケンステンプレートの最悪パターン及び最良パターンの
各要素に資源を割り当てたデータのことである。資源割
当テーブルの生成は、操作手順に関する制約を表す有向
ネットワークの各節点に資源を割り当てる処理に対応す
る。解探索処理は本ステップにおいて、この資源割当テ
ーブルを解探索パラメータの集団個体数と等しい数だけ
初期化する。その後の処理においてこの資源割当テーブ
ルはGAの染色体とみなされ、GAの枠組みの中でその
内容が確率的に調整される。次にステップ1602では
世代数カウンタmを初期化する。ステップ1603では
処理の終了判定をおこない、世代数カウンタmが解探索
パラメータで設定された実行世代数を超えた場合には処
理を終了する。ステップ1604では染色体(資源割当
テーブル)の内容を確率的に調整する。本ステップが図
1ステップ0106の資源割当の確率的調整処理に対応
する。本ステップは内部ステップとしてGAの一般的な
遺伝子オペレーションである、自然淘汰(1605)、
交叉(1606)、突然変異(1607)の3個の処理
を含む。これらの処理はGAの定義の中に具体的な手法
が示されているわけではなく、GAの適用対象や染色体
の構造ごとに個別に実現する必要がある。その実現内容
については解探索処理を一通り説明した後で詳細に述べ
る。次にステップ1608において染色体ポインタnを
初期化する。ステップ1609ではループ処理の終了判
定をおこない、染色体ポインタnが解探索パラメータで
設定した集団個体数を超えた場合にはループ処理を終了
し、ステップ1610で世代数カウンタmを1増やして
ステップ1603の処理の終了判定へ戻る。ループ処理
を続行する場合にはステップ1611へ進み、n個目の
染色体を入力データとして解、すなわち仕事の操作シー
ケンスを生成する。本ステップが操作手順の選択と具体
化をおこなう図1ステップ0107の資源競合の解消処
理に対応する。次にステップ1612において生成した
解に対する計画条件とユーザ要求の充足度を評価する。
本ステップが図1ステップ0108の解候補の評価ステ
ップに対応する。その後は前記評価ステップで各解に与
えられた評価値をステップ1613において染色体にフ
ィードバックする。ここまでが1回のループ処理であ
り、これで1個の解候補が生成される。ステップ161
4では染色体ポインタnの値を1増やしてステップ16
09のループ処理の終了判定に戻る。The solution search processing in step 0105 in FIG. 1 will be described. As described above, GA is adopted as the basic architecture of the solution search processing. GA is a general term for a framework of a solution search method for a combination problem, and detailed specifications for each are not given in advance. When applying the GA, it is necessary to appropriately realize the components for the target problem. Hereinafter, details of the realization will be sequentially described with reference to the flowchart of FIG.
It shows the correspondence between the steps of "probabilistic adjustment of resource allocation", "resolution of resource conflict", "evaluation of solution candidate", and "feedback of evaluation value", which are the internal steps of the solution search process. . First, in step 1601, FIG.
The resource allocation table shown in (1) is initialized. The resource allocation table is data in which resources are allocated to each element of the worst pattern and the best pattern of all the operation sequence templates to be scheduled. The generation of the resource allocation table corresponds to a process of allocating resources to each node of the directed network representing a restriction on an operation procedure. In the solution search process, in this step, the resource allocation table is initialized by a number equal to the number of individuals in the solution search parameter. In the subsequent processing, this resource allocation table is regarded as a GA chromosome, and its contents are adjusted stochastically within the framework of GA. Next, in step 1602, the generation number counter m is initialized. In step 1603, the end of the process is determined. If the generation counter m exceeds the number of execution generations set by the solution search parameter, the process ends. In step 1604, the contents of the chromosome (resource allocation table) are adjusted stochastically. This step corresponds to the resource allocation stochastic adjustment processing of step 0106 in FIG. This step is a general genetic operation of GA as an internal step, natural selection (1605),
Including three processes of crossover (1606) and mutation (1607). These processes do not necessarily indicate a specific method in the definition of GA, but need to be implemented individually for each GA application target or chromosome structure. The details of the realization will be described in detail after a brief description of the solution search process. Next, in step 1608, the chromosome pointer n is initialized. In step 1609, the loop processing is determined to be completed. If the chromosome pointer n exceeds the number of individuals set in the solution search parameter, the loop processing is completed. In step 1610, the generation number counter m is incremented by one, and the processing proceeds to step 1603. The process returns to the end determination of the process. If the loop processing is to be continued, the process proceeds to step 1611, where the n-th chromosome is used as input data to generate a solution, that is, a work operation sequence. This step corresponds to the resource conflict resolution process of step 0107 in FIG. 1 for selecting and embodying the operation procedure. Next, in step 1612, the planning conditions for the solution generated and the degree of satisfaction of the user request are evaluated.
This step corresponds to the solution candidate evaluation step of step 0108 in FIG. Thereafter, the evaluation value given to each solution in the evaluation step is fed back to the chromosome in step 1613. This is one loop processing, and one solution candidate is generated. Step 161
In step 4, the value of the chromosome pointer n is increased by 1 and step 16
It returns to the end determination of the loop processing of 09.
【0035】以下では、解探索処理の構成ステップであ
る、資源割当テーブル(染色体)の初期化ステップ、染
色体の確率的調整ステップ、解(操作シーケンス)の生
成ステップ、解の評価ステップの実現の詳細を順次説明
していく。In the following, details of the steps of configuring the solution search processing, ie, the step of initializing the resource allocation table (chromosome), the step of stochastically adjusting the chromosome, the step of generating a solution (operation sequence), and the step of evaluating the solution are described. Will be described sequentially.
【0036】図18のフローチャートを参照しながら資
源割当テーブル(染色体)の初期化処理を説明する。ま
ずステップ1801において個体番号mを初期化する。
ステップ1802では処理の終了判定をおこない、個体
番号mが解探索パラメータにおいて設定された集団個体
数を超えた場合には処理を終了する。処理が終了しない
場合には、ステップ1803に進みテンプレート番号n
を初期化する。ステップ1804ではループ処理の終了
判定をおこない、テンプレート番号nがテンプレート数
を超えた場合にはステップ1805で個体番号mを1増
やして処理の終了判定ステップ1802へ戻る。ループ
処理が終了しない場合はステップ1805へ進み、テン
プレートnの最悪パターンに資源を割り当てる。この処
理の詳細を図19のフローチャートを参照しながら説明
する。The process of initializing the resource allocation table (chromosome) will be described with reference to the flowchart of FIG. First, in step 1801, the individual number m is initialized.
At step 1802, it is determined whether the process is completed. If the individual number m exceeds the number of individuals set in the solution search parameters, the process is completed. If the processing is not completed, the flow advances to step 1803 to set the template number n
Is initialized. At step 1804, it is determined whether the loop processing has ended. If the template number n exceeds the number of templates, the individual number m is incremented by 1 at step 1805, and the processing returns to the processing end determination step 1802. If the loop processing is not completed, the flow advances to step 1805 to allocate resources to the worst pattern of template n. Details of this processing will be described with reference to the flowchart of FIG.
【0037】まずステップ1901においてテンプレー
ト上の位置mを初期化する。ステップ1902では処理
の終了判定をおこない、テンプレート上の位置が最悪パ
ターンの操作数を超えた場合には処理を終了する。処理
を終了しない場合にはステップ1903に進み、操作種
類変数kに最悪パターンの位置mの値を設定する。ステ
ップ1904ではmがパターンの先頭かどうかを判定
し、mが先頭の場合にはステップ1905へ進み、資源
属性テーブルを参照しながら操作種類kの資源をランダ
ムに選択して位置mに設定する。mが先頭でない場合に
は資源属性テーブルと接続判定テーブルの双方を参照し
ながら、操作種類がkでなおかつ位置m−1の資源と接
続可能な資源をランダムに選択して位置mに設定する。
ステップ1907ではmを1増やして処理の終了判定ス
テップ1902へ戻る。First, in step 1901, the position m on the template is initialized. At step 1902, it is determined whether the processing is completed. If the position on the template exceeds the number of operations of the worst pattern, the processing is completed. If the processing is not ended, the process proceeds to step 1903, and the value of the position m of the worst pattern is set in the operation type variable k. In step 1904, it is determined whether or not m is the head of the pattern. If m is the head, the process proceeds to step 1905, where a resource of the operation type k is randomly selected and set to the position m while referring to the resource attribute table. If m is not the head, a resource that can be connected to the resource of the operation type k and the position m−1 is randomly selected and set to the position m while referring to both the resource attribute table and the connection determination table.
In step 1907, m is increased by 1 and the process returns to step 1902 for determining the end of the process.
【0038】図18に戻り資源割当テーブルの初期化処
理の説明を続ける。ステップ1805の次はステップ1
806においてテンプレートnの最良パターンに資源を
割り当てる。本ステップは処理対象が最悪パターンから
最良パターンに代わっただけで処理内容はステップ18
05と全く同じである。ステップ1805とステップ1
806により最悪・最良両パターンに対して資源が割り
当てられるが、このままでは同一の作業節点に対して両
パターンに異なる資源が割り当てられる可能性がある。
そこでステップ1807において最悪パターンと最良パ
ターンの同一の作業節点が格納される位置の資源を同じ
ものにする。ここまでが1回のループ処理であり、これ
でテンプレート1個に対する資源割り当てが完了する。
ステップ1808ではテンプレート番号nの値を1増や
してステップ1804のループ処理の終了判定へ戻る。Returning to FIG. 18, the description of the initialization processing of the resource allocation table will be continued. After step 1805, step 1
At 806, resources are allocated to the best pattern of template n. In this step, only the processing target is changed from the worst pattern to the best pattern.
Exactly the same as 05. Step 1805 and Step 1
Although resources are allocated to both the worst and best patterns by 806, different resources may be allocated to both patterns for the same working node.
Therefore, in step 1807, the resources at the positions where the same work nodes of the worst pattern and the best pattern are stored are made the same. This is one loop processing, and the resource allocation for one template is completed.
In step 1808, the value of the template number n is incremented by 1, and the process returns to step 1804 to determine whether the loop processing has been completed.
【0039】次に図16ステップ1604の染色体の確
率的調整処理について説明する。本処理は3個の内部ス
テップからなる。まず第1番目のステップ1605では
GAの遺伝子オペレーションのひとつである染色体の自
然淘汰処理をおこなう。図16ステップ1613の評価
値のフィードバックにより染色体に与えられた評価値を
用いて、評価値の低いものから順に解探索パラメータで
設定された自然淘汰率に応じた個数の染色体を削除す
る。探索の初期世代では染色体に評価値が与えられてい
ないため、この場合は特別に全ての染色体が同一の評価
値を持つものとして処理をおこなう。以下の交叉処理、
突然変異処理においても初期世代ではこれと同じ処理を
おこなうものとする。Next, the chromosome stochastic adjustment processing in step 1604 in FIG. 16 will be described. This process consists of three internal steps. First, in the first step 1605, a natural chromosome selection process, which is one of the genetic operations of GA, is performed. Using the evaluation value given to the chromosome by the feedback of the evaluation value in step 1613 of FIG. In the initial generation of the search, no evaluation value is given to the chromosome. In this case, processing is performed assuming that all chromosomes have the same evaluation value. The following crossover processing,
In the mutation process, the same process is performed in the initial generation.
【0040】次のステップ1605の交叉処理では、自
然淘汰処理によって減少した染色体数の分だけ新たな染
色体を生成して補充する。新たな染色体の生成は、染色
体集合から任意に2個の染色体を選択し、両者の要素
(これを遺伝子と呼ぶ)を合成することで実現する。染
色体が資源割当テーブルの場合にはその要素は資源であ
り、これが遺伝子にあたる。以降の記述では、生成元の
染色体を親染色体、新たに生成される染色体を子染色体
と呼ぶことにする。In the crossover process in the next step 1605, new chromosomes are generated and supplemented by the number of chromosomes reduced by the natural selection process. The generation of a new chromosome is realized by arbitrarily selecting two chromosomes from a set of chromosomes and synthesizing both elements (this is called a gene). When a chromosome is a resource allocation table, the element is a resource, which is a gene. In the following description, the source chromosome is referred to as a parent chromosome, and the newly generated chromosome is referred to as a child chromosome.
【0041】任意に選択した親染色体Aと親染色体Bか
ら子染色体Cを生成する処理について、図20のフロー
チャートを参照しながら説明をおこなう。まずステップ
2001においてテンプレート番号mを初期化する。ス
テップ2002では処理の終了判定をおこない、テンプ
レート番号mがテンプレート数を超えた場合には処理を
終了する。処理を終了しない場合にはステップ2003
に進み、親染色体Aと親染色体Bから子染色体のテンプ
レートmの最悪パターンを生成する。本ステップの詳細
を図21のフローチャートを用いて詳細に説明する。The process of generating the child chromosome C from the arbitrarily selected parent chromosome A and parent chromosome B will be described with reference to the flowchart of FIG. First, in step 2001, the template number m is initialized. In step 2002, it is determined whether the process is completed. If the template number m exceeds the template number, the process is completed. If the processing is not to be ended, step 2003
Then, the worst pattern of the template m of the child chromosome is generated from the parent chromosome A and the parent chromosome B. The details of this step will be described in detail with reference to the flowchart in FIG.
【0042】まずステップ2101において最悪パター
ン上の位置mを初期化する。ステップ2102では終了
判定をおこない、位置mが最悪パターンの長さを超えた
場合には処理を終了する。処理を終了しない場合には、
ステップ2103に進み資源変数a及びbに、親Aと親
Bの最悪パターン上の位置mの値をそれぞれ格納する。
ステップ2104ではmがパターンの先頭かどうかを判
定し、先頭であればステップ2105において確率Pc
でaまたはbを子染色体の最悪パターン上の位置mに設
定する。ここで確率Pcは、より評価値の高い親の遺伝
子を子染色体が継承する可能性がその優秀さの程度を反
映するように動的に決定される値である。親染色体Aが
優秀である場合の確率Pcの算出式を以下に示す。Pc
=(親染色体Aの評価値)/((親染色体Aの評価値)
+(親染色体Bの評価値))ステップ2105の終了後
はステップ2106へ進み位置mの値を1増やしてステ
ップ2102の処理の終了判定へ戻る。位置mが先頭で
はない場合はステップ21 場合はステップ2109へ進み確率Pcでaまたはbを
子染色体の最悪パターンの位置mに設定する。ステップ
2109の終了後はステップ2106へ進み位置 体の最悪パターンの位置mに設定する。ステップ211
1の終了後はステップ2106へ進み位置mの値を1増
やしてステップ2102の処理の終了判定へ戻る。ステ
ップ2110の判定処理が偽の場合はステップ2112
で再び接続判定を へ進みaを子染色体の最悪パターンの位置mに設定す
る。ステップ2113の終了後はステップ2106へ進
み位置mの値を1増やしてステップ2102の処理の終
了判定へ戻る。どちらも接続可能では無い場合にはステ
ップ2114へ進み確率Pcでaまたはbを子染色体の
最悪パターンの位置mに設定する。ステップ2114の
終了後はステップ2106へ進み位置mの値を1増やし
てステップ2102の処理の終了判定へ戻る。First, in step 2101, the position m on the worst pattern is initialized. In step 2102, an end determination is made. If the position m exceeds the length of the worst pattern, the process ends. If you do not want to end the process,
Proceeding to step 2103, the values of the position m on the worst pattern of parent A and parent B are stored in resource variables a and b, respectively.
In step 2104, it is determined whether or not m is the head of the pattern.
A or b is set at the position m on the worst pattern of the child chromosome. Here, the probability Pc is a value that is dynamically determined so that the possibility that a child chromosome inherits a parent gene having a higher evaluation value reflects the degree of its superiority. The formula for calculating the probability Pc when the parent chromosome A is excellent is shown below. Pc
= (Evaluation value of parent chromosome A) / ((Evaluation value of parent chromosome A)
+ (Evaluation value of parent chromosome B)) After the end of step 2105, the process proceeds to step 2106, where the value of the position m is incremented by 1, and the process returns to the end determination of step 2102. If the position m is not the head, step 21 In this case, the process proceeds to step 2109, where a or b is set to the position m of the worst pattern of the child chromosome with the probability Pc. After the end of step 2109, proceed to step 2106 It is set to the position m of the worst pattern of the body. Step 211
After 1 is completed, the process proceeds to step 2106, where the value of the position m is increased by 1, and the process returns to step 2102 to determine whether the process is completed. If the determination in step 2110 is false, step 2112
Again to determine the connection Then, a is set to the position m of the worst pattern of the child chromosome. After the end of step 2113, the process proceeds to step 2106, where the value of the position m is incremented by 1, and the process returns to the end determination of step 2102. If neither is connectable, the process proceeds to step 2114, where a or b is set to the position m of the worst pattern of the child chromosome with the probability Pc. After the end of step 2114, the process proceeds to step 2106, where the value of the position m is incremented by 1, and the process returns to the end determination of step 2102.
【0043】図20に戻り子染色体の生成処理について
の説明を続ける。ステップ2003の終了後は、ステッ
プ2004で親染色体Aと親染色体Bから子染色体のテ
ンプレートmの最良パターンを生成する。本ステップは
処理対象が最悪パターンから最良パターンに代わっただ
けで処理内容はステップ2003と全く同じである。ス
テップ2003とステップ2004により子染色体のテ
ンプレートmの最悪・最良両パターンが生成されるが、
このままでは同一の作業節点に対して両パターンに異な
る資源が割り当てられる可能性がある。そこでステップ
2005において最悪パターンと最良パターンの同一の
作業節点が格納される位置の資源を同じものにする。ス
テップ2006ではテンプレート番号mの値を1増やし
て処理の終了判定ステップ2002に戻る。Returning to FIG. 20, description of the process of generating a child chromosome will be continued. After the end of step 2003, the best pattern of template m of the child chromosome is generated from parent chromosome A and parent chromosome B in step 2004. This step is exactly the same as step 2003 except that the processing target is changed from the worst pattern to the best pattern. Steps 2003 and 2004 generate the worst and best patterns of the template m of the offspring chromosome.
In this state, different resources may be allocated to both patterns for the same work node. Therefore, in step 2005, the resources at the positions where the same work nodes of the worst pattern and the best pattern are stored are made the same. In step 2006, the value of the template number m is increased by 1, and the process returns to step 2002 for determining the end of the process.
【0044】図16に戻り、ステップ1607の突然変
異処理について説明する。突然変異は染色体の遺伝子コ
ードをランダムに変化する処理であり、これにより解探
索が局所解に陥ることを防ぐ。この際、全くランダムに
遺伝子を変化させると実行可能解が得られなくなる可能
性が非常に高くなる。そこでこれを防ぐために、資源に
関する制約である資源割当テーブルと接続判定テーブル
を参照しながら適切な資源(遺伝子)を選択する必要が
ある。本ステップの詳細を図22のフローチャートを参
照しながら説明する。Returning to FIG. 16, the mutation processing in step 1607 will be described. Mutation is a process of randomly changing the genetic code of a chromosome, thereby preventing a solution search from falling into a local solution. At this time, if the gene is changed completely at random, the possibility that a feasible solution cannot be obtained becomes very high. Therefore, in order to prevent this, it is necessary to select an appropriate resource (gene) while referring to a resource allocation table and a connection determination table, which are restrictions on resources. The details of this step will be described with reference to the flowchart in FIG.
【0045】まずステップ2201においてテンプレー
ト番号mを初期化する。ステップ2202では処理の終
了判定をおこない、テンプレート番号mがテンプレート
数を超えた場合には処理を終了する。処理を終了しない
場合にはステップ2203に進み、テンプレートmの最
悪パターンに突然変異を施す。本ステップの詳細を図2
3のフローチャートを用いて詳細に説明する。First, in step 2201, the template number m is initialized. In step 2202, it is determined whether the process is completed. If the template number m exceeds the template number, the process is completed. If the processing is not completed, the process proceeds to step 2203, and the worst pattern of the template m is mutated. Figure 2 shows the details of this step.
This will be described in detail with reference to the flowchart of FIG.
【0046】まずステップ2301において最悪パター
ン上の位置nを初期化する。ステップ2302では処理
の終了判定をおこない、位置nが最悪パターンの長さを
超えた場合には処理を終了する。処理を終了しない場合
にはステップ2303に進み、整数変数vに1から10
00までの値をランダムに格納する。ステップ2304
ではvと解探索パラメータで設定された突然変異率との
大小比較を行う。vが突然変異率より大きい場合はステ
ップ2305で位置nの値を1増やして処理の終了判定
2301へ戻る。vが突然変異率より小さい場合はステ
ップ2306へ進み、操作種類変数kにテンプレートm
の最悪パターンの位置nの値を設定する。ステップ23
07では位置nがパターンの先頭であるかを判定する。
位置nが先頭でない場合はステップ2308に進み、資
源属性テーブルと接続判定テーブルの双方を参照しなが
ら、操作種類がkでなおかつ位置n−1の資源と接続可
能な資源をランダムに選択して位置nに設定する。位置
nが先頭の場合はステップ2309へ進み、資源属性テ
ーブルを参照しながら操作種類kの資源をランダムに選
択して位置nに設定する。ステップ2308とステップ
2309の終了後は、どちらもステップ2305で位置
nの値を1増やして処理の終了判定ステップ2305へ
戻る。First, in step 2301, the position n on the worst pattern is initialized. In step 2302, it is determined whether the processing is completed. If the position n exceeds the length of the worst pattern, the processing is completed. If the process is not to be terminated, the process proceeds to step 2303, and the integer variable v is set from 1 to 10
Values up to 00 are stored at random. Step 2304
Then, the magnitude of v is compared with the mutation rate set by the solution search parameter. If v is larger than the mutation rate, the value of the position n is incremented by 1 in step 2305, and the process returns to the end determination 2301 of the process. If v is smaller than the mutation rate, the process proceeds to step 2306, where the operation type variable k includes the template m
The value of the position n of the worst pattern is set. Step 23
At 07, it is determined whether the position n is the head of the pattern.
If the position n is not the first position, the process proceeds to step 2308, and by referring to both the resource attribute table and the connection determination table, a resource which is of the operation type k and which can be connected to the resource at the position n-1 is selected at random. Set to n. If the position n is the top, the process proceeds to step 2309, where a resource of the operation type k is randomly selected and set to the position n while referring to the resource attribute table. After the end of step 2308 and step 2309, the value of the position n is incremented by 1 in step 2305, and the process returns to the end determination step 2305 of the process.
【0047】図22に戻り突然変異処理の説明を続け
る。ステップ2203の終了後はステップ2204に進
み、テンプレートmの最良パターンに対して突然変異を
施す。本ステップは、処理対象が最悪パターンから最良
パターンに代わっただけで処理内容はステップ2203
と全く同じである。ステップ2203とステップ220
4により染色体のテンプレートmの最悪・最良両パター
ンに突然変異が施されるが、このままでは同一の作業節
点に対して両パターンに異なる資源が割り当てられる可
能性がある。そこでステップ2205において最悪パタ
ーンと最良パターンの同一の作業節点が格納される位置
の資源を同じものにする。ステップ2206ではテンプ
レート番号mの値を1増やして処理の終了判定ステップ
2202に戻る。Returning to FIG. 22, the description of the mutation process will be continued. After step 2203, the process proceeds to step 2204, where the best pattern of the template m is mutated. In this step, only the processing target is changed from the worst pattern to the best pattern, and the processing content is step 2203.
Is exactly the same as Step 2203 and Step 220
4, the worst and best patterns of the template m of the chromosome are mutated, but different resources may be allocated to the same working node for both patterns. Therefore, in step 2205, the resources at the positions where the same work nodes of the worst pattern and the best pattern are stored are made the same. In step 2206, the value of the template number m is incremented by 1, and the process returns to the end determination step 2202 of the processing.
【0048】以上で図16の解探索処理における染色体
の確率的調整ステップ1604の説明を終える。次に解
(操作シーケンス)の生成ステップ1611について説
明する。This concludes the description of the chromosome stochastic adjustment step 1604 in the solution search processing of FIG. Next, the solution generation step 1611 will be described.
【0049】まず本ステップの処理の基本的な考え方を
以下に示す。First, the basic concept of the processing in this step will be described below.
【0050】1.余裕度をなるべく大きくとりながら各
仕事の操作シーケンスを独立に初期化する。1. The operation sequence of each task is initialized independently while taking a margin as large as possible.
【0051】2.初期解に資源競合もしくは作業操作間
の順序制約違反を起こす操作対が存在する場合は、 (a)操作の時間割当の変更(操作のシフト) (b)操作手順の変更 の2つの処理を適切におこなうことにより解消を図る。
ただし留置操作は資源競合解消の対象からはずす。2. If there is an operation pair that causes resource conflict or violation of the order constraint between work operations in the initial solution, the following two processes of (a) change of operation time allocation (shift of operation) and (b) change of operation procedure are appropriate. To solve the problem.
However, the detention operation is excluded from the resource conflict resolution target.
【0052】3.資源を競合する操作対からシフト操作
を選択(操作の順序付け)する際には、 (a)作業操作間の順序制約違反が新たに発生しない (b)各操作シーケンスの余裕度が均等になる の2点を考慮しながらおこなう。すなわち上記(a)
(b)を資源競合解消ルールとして用いる。3. When a shift operation is selected (operation ordering) from an operation pair competing for resources, (a) no new order constraint violation occurs between work operations, and (b) the margin of each operation sequence becomes equal. This is done while considering two points. That is, (a)
(B) is used as a resource conflict resolution rule.
【0053】4.(1)〜(3)によっても解消できな
い資源競合と作業間の順序制約違反が残った場合には、
その後の実行世代で、図16の染色体の確率的調整ステ
ップ1604により解消可能な資源割当の組合せが生成
されることを期待して解消をあきらめる。4. If resource conflicts that cannot be resolved by (1) to (3) and order constraint violations between tasks remain,
In the subsequent execution generations, the resolution is abandoned in the hope that a resolvable resource allocation combination will be generated by the chromosome stochastic adjustment step 1604 in FIG.
【0054】留置操作に関する資源競合が存在する場合
も、上記と同様の考え方から本ステップでは何の処理も
おこなわない。Even when there is a resource conflict regarding the detention operation, no processing is performed in this step from the same idea as described above.
【0055】次に図24のフローチャートを参照しなが
ら本ステップの詳細を説明する。このフローチャートを
利用して全体の処理の流れを一通り説明した後に、さら
に詳しい解説が必要と思われる構成ステップについて説
明をおこなう。Next, the details of this step will be described with reference to the flowchart of FIG. After using the flowchart to explain the overall processing flow, the configuration steps that need to be explained in more detail will be described.
【0056】まずステップ2401において全ての仕事
の操作シーケンスを独立に初期化する。ステップ240
2では初期解に対して順序制約違反の解消をおこなう。
ステップ2403において全ての操作シーケンスの操作
からガントチャートを構成する。図25に本実施例で使
用するガントチャートのデータ構造を示す。基本要素は
操作データへの参照であり、それらが使用資源ごとにリ
ストを構成する。各リストは操作の開始時刻の順番で常
に整列されている。図24に戻って説明を続ける。ステ
ップ2404では、ガントチャートを利用して資源競合
操作対の集合を作成する。ステップ2405では、各操
作シーケンスの余裕度を計算し、余裕度が負数、すなわ
ち出区時刻をオーバーする編成が一つでも存在する場合
にはフラグOutOverに符号TRUEを、そうではない
場合には符号FALSEを設定する。ステップ2406
では処理の終了判定をおこない、資源競合の数と作業順
序違反の数が共に0であるか、またはフラグOutOver
がTRUEである場合には処理を終了する。処理を終了
しない場合にはステップ2407に進み、シフト開始時
刻が最も早い資源競合操作対と同じく順序制約違反操作
対の間でシフト開始時刻を比較する。資源競合操作対の
シフト開始時刻が早い場合にはステップ2408でその
資源競合を解消する。順序制約違反操作対のシフト開始
時刻が早い場合にはステップ2409でその順序制約違
反を解消する。上記両ステップのどちらかを終了した後
は、ステップ2410に進み操作変数pにシフトした操
作を格納する。ステップ2411において操作シーケン
スの中でpの前方に発生した資源競合を解消する。次に
ステップ2404の資源競合操作対集合の生成処理を再
び行う。ステップ2412では順序制約式の充足度を判
定し、ステップ2405へ戻る。First, in step 2401, the operation sequences of all tasks are independently initialized. Step 240
In step 2, the order constraint violation is eliminated for the initial solution.
In step 2403, a Gantt chart is constructed from the operations of all the operation sequences. FIG. 25 shows the data structure of the Gantt chart used in this embodiment. The basic elements are references to operational data, which make up a list for each resource used. Each list is always ordered by the start time of the operation. Returning to FIG. 24, the description will be continued. In step 2404, a set of resource conflict operation pairs is created using the Gantt chart. In step 2405, the margin of each operation sequence is calculated. If the margin is a negative number, that is, if there is at least one organization that exceeds the leaving time, the code TRUE is set to the flag OutOver, and if not, the code is set to TRUE. Set FALSE. Step 2406
Then, it is determined whether the number of resource conflicts and the number of work order violations are both 0 or the flag OutOver
Is TRUE, the process ends. If the processing is not to be ended, the process proceeds to step 2407, where the shift start time is compared between the pair of resource conflicting operations having the earliest shift start time and the order constraint violating operation as well. If the shift start time of the resource conflict operation pair is earlier, the resource conflict is resolved in step 2408. If the shift start time of the order constraint violation operation pair is earlier, the order constraint violation is resolved in step 2409. After ending either of the above steps, the process proceeds to step 2410 to store the shifted operation in the operation variable p. In step 2411, the resource conflict that occurred before p in the operation sequence is resolved. Next, the processing of generating the resource conflicting operation pair set in step 2404 is performed again. In step 2412, the satisfaction degree of the order constraint expression is determined, and the process returns to step 2405.
【0057】以上が解(操作シーケンス)の生成処理の
概要である。次に、詳しい解説が必要と思われる構成ス
テップの詳細を順次説明する。なお以降の説明で使用す
るフローチャートの中で、データの内部要素を参照する
場合には参照記号「.」を用いる場合がある。例えば、
「テンプレートm.最良パターン」と記述した場合は、
テンプレートmの最良パターンを指す。The above is the outline of the process of generating a solution (operation sequence). Next, details of the configuration steps that need detailed explanation will be described in order. In the flowcharts used in the following description, a reference symbol “.” May be used when referring to an internal element of data. For example,
If you write "template m. Best pattern"
Points to the best pattern of template m.
【0058】まず図24ステップ2401の操作シーケ
ンス初期化処理を説明する。資源競合や作業順序制約の
違反の発生を考慮せずに各操作シーケンスを独立に作成
する場合、最も余裕度が大きい操作手順は、最も操作数
が少ない最良パターンであることは自明である。そこで
本ステップでは、操作シーケンステンプレートの最良パ
ターンの各操作を具体化して初期解を生成する。本ステ
ップの処理の詳細を図26のフローチャートを参照しな
がら説明する。First, the operation sequence initialization processing in step 2401 in FIG. 24 will be described. When each operation sequence is created independently without considering resource conflicts and violation of work order constraints, it is obvious that the operation procedure with the largest margin is the best pattern with the least number of operations. Therefore, in this step, each operation of the best pattern of the operation sequence template is materialized to generate an initial solution. Details of the processing in this step will be described with reference to the flowchart in FIG.
【0059】ステップ2601においてテンプレート番
号mを初期化する。ステップ2602では処理の終了判
定をおこない、テンプレート番号mがテンプレート数を
超えた場合には処理を終了する。処理を終了しない場合
にはステップ2603へ進み、仕事番号wにテンプレー
トmの仕事番号を格納する。ステップ2604では操作
番号nを初期化する。ステップ2605では操作番号n
を用いてループ処理の終了判定をおこなう。操作番号n
がテンプレートmの最良パターンの要素数を超えた場合
には、テンプレートmに対する操作シーケンスの生成が
完了したのでループ処理を終了する。その後はまずステ
ップ2615で、操作シーケンスの最後の操作の終了時
刻が仕事wの終了時刻と等しくなるように操作の割当時
間を調整する。具体的には、操作シーケンスの最後の作
業操作の処理時間を適切な長さまで延ばすことで実現す
る。次にステップ2616で操作シーケンスの余裕度を
計算する。そしてステップ2606でテンプレート番号
mの値を1増やしてステップ2602の処理の終了判定
に戻る。ループ処理を続ける場合にはステップ2607
へ進み、操作種類変数kにテンプレートmの最良パター
ンにおける位置nの値を、資源変数vに資源割当テーブ
ルのテンプレートmの最良パターンにおける位置nの値
をそれぞれ格納する。ステップ2608では新しい操作
データを生成(操作変数opに格納)し、それを操作シ
ーケンスmの第n番目に設定する。ステップ2609で
はopの仕事番号にwを、操作種類にkを、使用資源に
vをそれぞれ設定する。ステップ2610ではopの処
理時間を設定する。操作種類が作業の場合には、仕事デ
ータの作業内容を参照して所要時間を取得し、その値を
処理時間に設定する。それ以外の操作の場合は、あらか
じめ決められた所要時間(例:番線01から番線07へ
の移動は5分)を処理時間に設定する。ステップ261
1では操作種類kが入区であるかどうか判定し、入区の
場合はステップ2612で操作opの開始時刻に仕事w
の開始時刻を設定する。入区ではない場合はステップ2
613でopの開始時刻に操作シーケンスの一つ前の操
作の終了時刻を設定する。一般的な仕事のスケジューリ
ング問題においては、同一操作シーケンス中の隣合う操
作は時間的重なりがなければ開始時刻と終了時刻の関係
に制約がないことが多い。しかしながら、車両入換計画
作成問題においては各操作の処理が連続していなければ
得られた解は実行可能ではないため、このような問題固
有の時刻割当処理が必要となる。以降で説明する操作の
シフト処理においてもこの操作の連続性に関する制約を
遵守する必要があるため、シフト処理を施した場合にシ
フトした操作の後ろに位置する操作のみならず前に存在
する操作も処理時間帯が変化する。それに付随して資源
競合や順序制約違反が新たに発生する可能性があるた
め、車両入換計画作成問題においては一般的な仕事のス
ケジューリング問題よりも実行可能な操作シーケンスの
生成処理が複雑なものとなる。In step 2601, the template number m is initialized. At step 2602, it is determined whether the processing is completed. If the template number m exceeds the template number, the processing is completed. If the process is not to be ended, the process proceeds to step 2603, and the job number of the template m is stored in the job number w. In step 2604, the operation number n is initialized. In step 2605, the operation number n
Is used to determine the end of the loop processing. Operation number n
Exceeds the number of elements of the best pattern of the template m, the generation of the operation sequence for the template m is completed, and the loop processing ends. Thereafter, in step 2615, the operation allocation time is adjusted so that the end time of the last operation in the operation sequence is equal to the end time of the work w. Specifically, this is realized by extending the processing time of the last operation operation of the operation sequence to an appropriate length. Next, in step 2616, the margin of the operation sequence is calculated. Then, in step 2606, the value of the template number m is incremented by 1 and the process returns to step 2602 to determine whether to end the process. If loop processing is to be continued, step 2607
Then, the operation type variable k stores the value of the position n in the best pattern of the template m, and the resource variable v stores the value of the position n in the best pattern of the template m in the resource allocation table. In step 2608, new operation data is generated (stored in the operation variable op) and set as the n-th operation sequence m. In step 2609, w is set to the job number of op, k is set to the operation type, and v is set to the used resource. In step 2610, an op processing time is set. If the operation type is work, the required time is acquired by referring to the work content of the work data, and the value is set as the processing time. In the case of other operations, the processing time is set to a predetermined required time (for example, the movement from line 01 to line 07 is 5 minutes). Step 261
In step 1, it is determined whether or not the operation type k is entry.
Set the start time of. Step 2 if you are not entering
At 613, the end time of the operation immediately before the operation sequence is set as the start time of op. In the general task scheduling problem, there is often no restriction on the relationship between the start time and the end time unless adjacent operations in the same operation sequence have a temporal overlap. However, in the vehicle replacement plan creation problem, if the processing of each operation is not continuous, the obtained solution is not feasible, and thus a time assignment process unique to such a problem is required. Since it is necessary to observe the restriction on the continuity of this operation also in the shift processing of the operation described below, when the shift processing is performed, not only the operation located after the shifted operation but also the operation existing before the shifted operation are performed. The processing time zone changes. In addition, there is a possibility that resource conflicts and order constraint violations may newly occur, so the generation of executable operation sequences is more complicated in vehicle replacement planning than in general work scheduling. Becomes
【0060】図26の説明を続ける。ステップ2612
またはステップ2613のいずれかを終了した後に、ス
テップ2614で操作opの終了時刻を設定する。ここ
までが一回のループ処理であり、ステップ2617で操
作番号nの値を1増やしてループ処理の終了判定ステッ
プ2605へ戻る。The description of FIG. 26 will be continued. Step 2612
Alternatively, after ending one of the steps 2613, the end time of the operation op is set in a step 2614. This is one loop process. In step 2617, the value of the operation number n is increased by 1, and the process returns to the loop process end determination step 2605.
【0061】図24ステップ2402の順序制約式違反
解消処理について説明する。順序制約式とは、2つの作
業操作の開始時刻と終了時刻、もしくは定数からなる不
等式・等式のことである。作業操作Aと作業操作Bを用
いて構成される順序制約式の全てを以下に示す。The order constraint expression violation elimination processing in step 2402 in FIG. 24 will be described. The order constraint equation is an inequality or an equation composed of a start time and an end time of two work operations or a constant. All of the order constraint equations configured using the work operation A and the work operation B are shown below.
【0062】 1.A.開始時刻 * B.開始時刻 2.A.終了時刻 * B.開始時刻 3.A.開始時刻 * B.終了時刻 4.A.終了時刻 * B.終了時刻 5.A.開始時刻 # 定数 6.A.終了時刻 # 定数 7.B.開始時刻 # 定数 8.B.終了時刻 # 定数 符号*は演算子 < > ≦ ≧ = のいずれかを表
し、符号#は演算子> ≧ = のいずれかを表す。ス
テップ2402では、設定された順序制約式に違反する
操作対を発見し、操作のシフトにより違反の解消を行
う。図27に本実施例で使用する順序制約式のデータ構
造を示す。このデータ構造は、使用する演算子、左辺の
操作、右辺の操作(もしくは定数)に関する情報と制御
用データへの参照からなる。制御用データは順序制約違
反の解消時に用いる情報であり、該順序制約式が違反状
態にあるかどうかを示す違反フラグ、該順序制約式が有
効であるかどうかを示す有効フラグ、左辺と右辺の操作
データへの参照、違反解消時にシフトする操作、シフト
の開始時刻、シフトの幅、シフトの種類からなる。1. A. Start time * B. Start time 2. A. End time * B. Start time 3. A. Start time * B. End time 4. A. End time * B. End time A. 5. Start time # constant A. 6. End time # constant B. 7. Start time # constant B. End time # constant The sign * represents one of the operators <> ≤ ≥ = and the sign # represents one of the operators> ≥ =. In step 2402, an operation pair that violates the set order constraint expression is found, and the violation is eliminated by shifting the operation. FIG. 27 shows the data structure of the order constraint expression used in this embodiment. This data structure includes information on an operator to be used, operation on the left side, operation (or constant) on the right side, and reference to control data. The control data is information used at the time of resolving the order constraint violation, a violation flag indicating whether the order constraint expression is in a violation state, a valid flag indicating whether the order constraint expression is valid, a left side and a right side. It consists of reference to operation data, an operation to shift when a violation is resolved, a shift start time, a shift width, and a shift type.
【0063】シフトの種類については図28を用いて詳
しく説明する。まずシフト種類Typelは、シフトする操
作の開始時刻が順序制約式に含まれている場合である。
例として順序制約式 「作業操作Aの開始時刻 < 作
業操作Bの開始時刻」を用いる。この順序制約式に違反
した状況では、シフト対象となるのは作業操作Bであ
り、シフト幅wは「Bの開始時刻 − Aの開始時刻」
により計算される。シフトの方法は図のように作業操作
Bの全体をw以上後ろへずらす。これにより順序制約式
の違反が充足される。The types of shift will be described in detail with reference to FIG. First, the shift type Typel is a case where the start time of the shifting operation is included in the order constraint expression.
As an example, an order constraint expression “start time of work operation A <start time of work operation B” is used. In a situation in which the order constraint formula is violated, the shift target is the work operation B, and the shift width w is “start time of B−start time of A”.
Is calculated by The shift method shifts the entire work operation B backward by w or more as shown in the figure. This satisfies the violation of the order constraint expression.
【0064】次にシフト種類Type2は、シフトする操
作の終了時刻が順序制約式に含まれている場合である。
例として順序制約式「作業操作Aの開始時刻 < 作業
操作Bの終了時刻」を用いる。この順序制約式に違反し
た状況では、シフト対象となるのは作業操作Bである。
Type1と同様に作業操作Bの全体を後ろへずらすこと
により順序制約違反を解消できるが、その代わりにBの
終了時刻の延長によっても同じく順序制約違反を解消で
きる。なおかつこの場合には、操作の連続性を保つため
に操作シーケンスのBの前方にある操作に対して割当時
間を変化させる必要がない。そこでこの場合には、「B
の終了時刻 − Aの開始時刻」で計算される幅wだけ
作業操作Bの終了時刻を延長することにより順序制約の
違反を解消する。Next, the shift type Type 2 is a case where the end time of the shifting operation is included in the order constraint expression.
As an example, an order constraint expression “start time of work operation A <end time of work operation B” is used. In a situation in which the order constraint formula is violated, the work operation B is to be shifted.
Similarly to Type 1, the order constraint violation can be eliminated by shifting the entire work operation B backward, but the order constraint violation can also be eliminated by extending the end time of B instead. Further, in this case, it is not necessary to change the allocation time for the operation in front of B in the operation sequence in order to maintain the continuity of the operation. Therefore, in this case, "B
The violation of the order constraint is eliminated by extending the end time of the work operation B by the width w calculated by “the end time of −the start time of A”.
【0065】全ての順序制約式は、式の要素の値を演算
子に従って比較することにより違反、無違反の判定が可
能である。また順序制約式が違反状態の場合には、違反
操作対に対するシフト対象操作、シフト幅、シフト開始
時刻、シフト種類を複雑な処理をせずに一意に決定する
ことができる。All order constraint expressions can be determined as violations or no violations by comparing the values of the elements of the expressions according to operators. When the order constraint expression is in a violation state, the shift target operation, the shift width, the shift start time, and the shift type for the violation operation pair can be uniquely determined without complicated processing.
【0066】図29のフローチャートを参照しながら順
序制約式違反解消処理について説明する。まずステップ
2901において、有効フラグがTRUEである順序制
約式に対してその充足度を判定する。違反状態の順序制
約式に対しては、違反操作対に対するシフト対象操作、
シフト幅、シフト開始時刻、シフト種類を決定してそれ
らの値を制御データの各項目に設定する。ステップ29
02では処理の終了判定をおこない、違反状態の順序制
約式の数が0の場合には処理を終了する。処理を終了し
ない場合にはステップ2409に進み、シフト開始時刻
が最も早い順序制約式の違反を解消する。その後は再び
ステップ2901の順序制約式の充足度判定へ戻る。シ
フト開始時刻が最も早い順序制約違反を順次解消してい
くことにより、最終的に順序制約違反のない操作シーケ
ンス集合を生成することができる。The order constraint expression violation elimination process will be described with reference to the flowchart of FIG. First, in step 2901, the degree of satisfaction is determined for an order constraint expression whose valid flag is TRUE. For the order constraint expression in violation state, the operation to be shifted for the violation operation pair,
The shift width, shift start time, and shift type are determined, and their values are set in each item of the control data. Step 29
In step 02, the end of the process is determined. If the number of order constraint expressions in the violating state is 0, the process ends. If the processing is not to be ended, the process proceeds to step 2409, and the violation of the order constraint expression with the earliest shift start time is resolved. Thereafter, the flow returns to step 2901 to determine the degree of satisfaction of the order constraint expression. By sequentially resolving the order constraint violation with the earliest shift start time, an operation sequence set free from order constraint violation can be finally generated.
【0067】図30のフローチャートを用いて最も早い
順序制約違反の解消処理を詳細に説明する。まずステッ
プ3001において制御データ変数datに違反を解消す
る順序制約式の制御データを格納する。ステップ300
2では、操作変数opに制御データdatのシフト対象操
作を、整数変数widthに制御データdatのシフト幅をそ
れぞれ格納する。ステップ3003ではシフト種類の判
定を行う。制御データdatのシフト種類がtypelの場合
には、ステップ3004においてシフト操作op、シフ
ト幅widthで操作のシフトと空き時間帯の調整をおこな
い処理を終了す こない処理を終了する。上記の処理により、図28で説
明した2つのシフト種類のそれぞれに対応した違反解消
処理を実行する。ステップ2904の操作のシフトと空
き時間帯の調整処理の詳細を、図31のフローチャート
を参照しながら説明する。The earliest order constraint violation resolution processing will be described in detail with reference to the flowchart of FIG. First, in step 3001, control data of an order constraint expression for eliminating a violation is stored in the control data variable dat. Step 300
In 2, the shift target operation of the control data dat is stored in the operation variable op, and the shift width of the control data dat is stored in the integer variable width. In step 3003, the type of shift is determined. If the shift type of the control data dat is typel, in step 3004, the shift operation op and the shift width width are used to shift the operation and adjust the idle time zone, and the process ends. The processing that does not come to an end is ended. With the above processing, the violation elimination processing corresponding to each of the two shift types described with reference to FIG. 28 is executed. Details of the operation shift and the idle time adjustment process in step 2904 will be described with reference to the flowchart in FIG.
【0068】ここではシフト操作をop、シフト幅をwi
dthとする。まずステップ3101において操作opをシ
ーケンス中で幅widthだけシフトする。この処理の概要
を図32を用いて説明する。操作3201をシフト対象
の操作とすると、まずこの操作から操作シーケンスを前
にたどって、直前に作業か留置操作がある操作まで戻
る。図32では操作3202がそれに該当する。次に操
作3202以降の部分シーケンスを幅widthだけ後ろへ
ずらす。すなわち、部分シーケンスに含まれる全ての操
作の開始時刻と終了時刻に値widthを加える。操作を前
にたどる処理は、移動操作と引上操作処理時間を一定に
保つために必要とされる。この処理をおこなわないと、
シフト操作後の空き時間帯の調整処理で両者の処理時間
が延長される場合がある。Here, the shift operation is op and the shift width is wi.
dth. First, in step 3101, the operation op is shifted by the width width in the sequence. An outline of this processing will be described with reference to FIG. Assuming that the operation 3201 is an operation to be shifted, the operation sequence is first traced back from this operation, and the operation returns to the operation immediately before the operation or the detention operation. In FIG. 32, the operation 3202 corresponds thereto. Next, the partial sequence after the operation 3202 is shifted backward by the width width. That is, the value “width” is added to the start time and end time of all the operations included in the partial sequence. The process of following the operation is required to keep the moving operation and pull-up operation processing times constant. If you do not do this,
There is a case where both processing times are extended in the adjustment processing of the idle time zone after the shift operation.
【0069】上記の処理により出区時刻が予定時刻を超
過する。そこで出区操作が予定時刻に間に合うように、
できるだけ出区直前の作業操作か留置操作の処理時間を
短縮する。短縮の限度は、作業操作の場合は作業の所要
時間、留置操作の場合は留置番線の在線最小時間であ
る。限度を超えても予定時刻をオーバーする場合にはそ
こで短縮処理を打ち切る。By the above processing, the departure time exceeds the scheduled time. So that the departure operation is in time for the scheduled time,
The processing time of the work operation or detention operation immediately before departure is reduced as much as possible. The limit of the shortening is the time required for the work in the case of the work operation, and the minimum time of staying of the detention line in the case of the detention operation. If the scheduled time is exceeded even if the limit is exceeded, the shortening process is terminated there.
【0070】以上が操作のシフト処理の概要である。こ
の処理により、後ろにずれた部分シーケンスの先頭操作
とその直前の操作の間に空き時間が生じる。実行可能な
車両入換計画を生成するためには操作の連続性に関する
制約を遵守する必要があるため、この空き時間をなんら
かの方法で埋める処理が必要となる。その方法として以
下の2つが考えられる。(1)直前の操作の終了時刻を
延長する。図32の場合は操作3204の終了時刻を延
長して直後の操作の開始時刻と等しくする。(2)留置
番線への転線操作系列を挿入する。ただし、作業の合間
の留置番線への在線は高々1回であるとの制限があるた
め、既に留置番線への転線操作系列が挿入されている場
合にはこの手法は使えない。The above is the outline of the operation shift processing. With this processing, an idle time is generated between the leading operation of the partial sequence shifted backward and the operation immediately before the leading operation. In order to generate an executable vehicle replacement plan, it is necessary to observe restrictions on the continuity of operations, and therefore, a process of filling this idle time by some method is required. The following two methods can be considered. (1) Extend the end time of the immediately preceding operation. In the case of FIG. 32, the end time of the operation 3204 is extended to be equal to the start time of the immediately following operation. (2) Insert a series of operation for turning to the indwelling number line. However, since there is a restriction that the number of lines on the detention line between operations is at most once, this method cannot be used when a line transfer operation sequence to the detention line has already been inserted.
【0071】(1)に関してはその処理内容は自明であ
る。(2)の留置番線への転線操作系列の挿入処理につ
いては、その概要を図33を用いて説明する。まず空き
時間帯の前後の作業操作の間にある移動操作と引上操作
(図33では部分操作系列3301)を全て削除する。
次に該操作シーケンスの雛型となった操作シーケンステ
ンプレートと資源割当テーブルから最悪パターンを取り
出す。それぞれの最悪パターンから空き時間帯に対応す
る部分パターンを取り出す。この部分パターンが留置番
線への在線操作系列となっている。図33では部分パタ
ーン3302と部分パターン3303がそれに該当す
る。これらの部分パターンから部分操作シーケンスを具
体化して空き時間帯に挿入する。Regarding (1), the processing contents are obvious. The outline of the process (2) for inserting the line-turning operation sequence into the indwelling track will be described with reference to FIG. First, all the moving operation and pull-up operation (partial operation sequence 3301 in FIG. 33) between the work operations before and after the idle time zone are deleted.
Next, the worst pattern is extracted from the operation sequence template and the resource allocation table, which are the templates of the operation sequence. From each worst pattern, a partial pattern corresponding to a vacant time zone is extracted. This partial pattern is the on-line operation sequence for the detention line. In FIG. 33, the partial pattern 3302 and the partial pattern 3303 correspond thereto. The partial operation sequence is embodied from these partial patterns and inserted into the idle time zone.
【0072】留置番線への転線操作系列の挿入処理は、
仕事の操作手順の変更処理とみなすことができる。以降
で詳しく説明するが、この処理を適切におこなうことに
より順序制約違反と資源競合の新たな発生を防止するこ
とが可能となる。The process of inserting a line turning operation sequence into the indwelling number line is as follows.
This can be regarded as a process of changing the operation procedure of the job. As will be described later in detail, by properly performing this processing, it is possible to prevent the occurrence of the order constraint violation and the new resource conflict.
【0073】空き時間帯の調整に手法(1)を適用した
場合には、操作手順か変化することがないため余分な転
線の発生を極力抑えることが可能である。しかしなが
ら、これにより処理時間が延長された作業操作または留
置操作が資源競合を起こす可能性が高い。さらに、作業
操作については順序制約違反の発生の可能性もある。こ
れに対して手法(2)を適用した場合は、転線回数が増
えるデメリットがあるが、直前の操作の割当時間は変化
しないためそれに対する資源競合や順序制約違反が新た
に発生することはない。また以降で詳しく述べるが、本
実施例における資源競合の解消ステップは留置操作を解
消の対象としないため、留置番線への転線操作系列を挿
入しても新たに資源競合を起こす可能性がある操作は、
挿入された移動操作と引上操作だけである。これらの操
作は処理時間が一定でなおかつ非常に短いため、競合が
発生する頻度は作業操作や留置操作の終了時刻を延長し
た場合と比べると極めて少ない。空き時間帯の2つの手
法の使い分けは、図31に戻り操作のシフトと空き時間
帯の調整処理を説明する中で明らかにする。When the technique (1) is applied to the adjustment of the idle time zone, since the operation procedure does not change, it is possible to minimize the occurrence of extra turns. However, there is a high possibility that the work operation or the detention operation whose processing time has been extended causes resource contention. In addition, there is a possibility that an order constraint violation may occur in a work operation. On the other hand, when the method (2) is applied, there is a demerit that the number of turns is increased. However, since the allocation time of the immediately preceding operation does not change, resource competition and order constraint violation for the previous operation do not newly occur. . As will be described later in detail, since the resource conflict resolution step in the present embodiment does not target the detention operation, there is a possibility that a new resource conflict may occur even if a line transfer operation sequence is inserted into the detention line. The operation is
Only the inserted move operation and pull-up operation. Since the processing time of these operations is constant and very short, the frequency of occurrence of the conflict is extremely low as compared with the case where the end time of the work operation or the detention operation is extended. The use of the two methods of the idle time zone will be clarified in the description of the shift of the operation and the adjustment processing of the idle time zone with reference to FIG.
【0074】ステップ3101を終了した後はステップ
3102へ進み、空き時間帯の調整処理(1)をおこな
う。次にステップ3103でシフトした操作opの種類
判定をおこない、opが作業操作ではない場合には処理
を終了する。これはすなわち、移動操作や引上操作がシ
フト対象の場合には直前に留置番線への転線操作系列を
挿入することはないということを意味する。opが作業
操作の場合にはステップ3105においてopの直前に
資源競合(留置操作を除く)もしくは順序制約違反が新
たに発生したかどうか判定する。発生していなければ処
理を終了する。発生している場合はステップ3106で
延長した処理時間を元に戻し、ステップ3107で空き
時間帯の調整処理(2)をおこない処理を終了する。After the step 3101 is completed, the process proceeds to a step 3102, where the idle time zone adjustment processing (1) is performed. Next, in step 3103, the type of the operation op shifted is determined, and if op is not a work operation, the process ends. This means that if the moving operation or the pulling-up operation is a shift target, a line transfer operation sequence to the detention line is not inserted immediately before. If op is a work operation, it is determined in step 3105 whether a resource conflict (excluding the detention operation) or an order constraint violation has newly occurred immediately before op. If not, the process ends. If it has occurred, the processing time extended in step 3106 is returned to its original state, and the adjustment processing (2) of the idle time zone is performed in step 3107, and the processing ends.
【0075】図24に戻り解(操作シーケンス)の生成
処理における主要な構成ステップの説明を続ける。次は
ステップ2404の資源競合操作対集合の生成処理につ
いて説明する。まず本実施例で用いる資源競合操作対の
データ構造を図34に示す。Returning to FIG. 24, the description of the main constituent steps in the process of generating a solution (operation sequence) will be continued. Next, the process of generating the resource conflict operation pair set in step 2404 will be described. First, FIG. 34 shows the data structure of a resource conflict operation pair used in this embodiment.
【0076】各資源競合操作対は他と区別するための相
異なる操作対番号が与えられる。データの内容は、操作
対を構成する2個の操作データへの参照、競合解消時に
シフト処理によりつけられる操作間の順序、シフト開始
時刻、シフト幅からなる。操作間順序が1→2の場合
は、競合解消時に操作2を後ろへシフトすることを意味
し、逆に操作間順序が2→1の場合は操作1を後ろへシ
フトすることを意味する。シフト開始時刻とシフト幅
は、操作間に付けられる順序に従って決定される。Each resource conflict operation pair is given a different operation pair number to distinguish it from the others. The contents of the data include a reference to two operation data constituting an operation pair, an order between operations to be added by shift processing at the time of conflict resolution, a shift start time, and a shift width. When the order between operations is 1 → 2, it means that the operation 2 is shifted backward at the time of conflict resolution, and conversely, when the order between operations is 2 → 1, it means that the operation 1 is shifted backward. The shift start time and the shift width are determined according to the order given between operations.
【0077】次に図35のフローチャートを参照しなが
ら資源競合操作対集合の生成処理の詳細を説明する。ス
テップ3501で資源変数mを初期化する。ステップ3
502は処理の終了判定をおこない、資源変数mが資源
総数を超えた場合には処理を終了する。処理を終了しな
い場合にはステップ3503に進み、ガントチャートを
利用して資源mを使用する全ての操作対を取り出し部分
処理3504を施す。この処理の詳細は、まずステップ
3505において操作対のそれぞれの操作の種類を判定
する。どちらかの操作の種類が留置の場合には部分処理
を終了する。どちらの種類も留置ではない場合はステッ
プ3506へ進み、操作対を構成する操作op1と操作
op2が時間的重なりがあるかどうかを判定する。時間
的重なりがなければ部分処理を終了する。時間的重なり
がある場合には、ステップ3507において操作対(o
p1,op2)から資源競合操作対集合を作成する。そ
の後ステップ3508で資源競合操作対を集合に加えて
部分処理を終了する。全ての操作対に対して部分処理3
504を施した後は、ステップ3509で資源変数の値
を1増やして終了判定ステップ3502へ戻る。ステッ
プ3507の資源競合操作対集合の作成処理について詳
細に説明する。資源競合は、操作対のどちらの操作に対
しても適切な幅だけ後ろへシフトすることにより解消可
能である。したがって、操作対に2通りの順序のどちら
をつけることも可能であるが、本実施例では以下に示す
基本方針のもとで操作対に順序を付ける。(1)新たな
順序制約違反が発生しない操作を付ける。(2)どちら
の順序でも順序制約違反が発生しなければ、シフト処理
を施した場合に前方に留置番線への転線操作系列を挿入
しなくても済む(すなわち既に挿入済みであるか、直前
の操作の終了時刻を延長しても資源競合と順序制約違反
がおこらない)方の操作をシフトする順序をつける。
(3)どちらの順序でも順序制約違反が発生する場合は
余裕度の大きい操作をシフトする順序をつける。この場
合はどちらの順序のもとでシフト処理を施しても明らか
に順序制約違反が発生する。(4)どちらの順序でも留
置番線への転線操作系列を挿入しなくても済む、または
どちらの順序でも留置番線への転線操作系列の挿入が必
要となる場合は、余裕度の大きい操作をシフトする順序
をつける。この基本的方針のもとで競合操作対に順序づ
けをおこなって資源競合を解消すれば、各操作シーケン
スの余裕度が均等でなおかつ順序制約を極力充足する実
行可能解の生成を期待できる。Next, the details of the process of generating the resource conflicting operation pair set will be described with reference to the flowchart of FIG. In step 3501, a resource variable m is initialized. Step 3
502 determines the end of the process, and ends the process if the resource variable m exceeds the total number of resources. If the processing is not completed, the process proceeds to step 3503, where all operation pairs using the resource m are extracted using the Gantt chart and subjected to partial processing 3504. For details of this processing, first, in step 3505, the type of each operation of the operation pair is determined. If either type of operation is detention, the partial processing ends. If neither type is detention, the process proceeds to step 3506, and it is determined whether or not the operations op1 and op2 forming the operation pair have a temporal overlap. If there is no temporal overlap, the partial processing ends. If there is a temporal overlap, the operation pair (o
A resource conflict operation pair set is created from p1, op2). Thereafter, in step 3508, the resource conflict operation pair is added to the set, and the partial processing ends. Partial processing 3 for all operation pairs
After performing step 504, the value of the resource variable is increased by 1 in step 3509, and the process returns to the end determination step 3502. The process of creating the resource conflicting operation pair set in step 3507 will be described in detail. Resource conflicts can be resolved by shifting backward by the appropriate width for either operation in the operation pair. Therefore, it is possible to assign either of the two orders to the operation pairs. In this embodiment, the order is assigned to the operation pairs based on the following basic policy. (1) Add an operation that does not cause a new order constraint violation. (2) If order constraint violation does not occur in either order, it is not necessary to insert a line transfer operation sequence to the indwelling number line in the case of performing the shift processing (that is, whether or not the sequence has already been inserted, (The resource conflict and the order constraint violation do not occur even if the end time of the operation is extended.)
(3) If the order constraint is violated in either order, the order of shifting the operation with a large margin is set. In this case, the order constraint is clearly violated regardless of which order the shift processing is performed. (4) If there is no need to insert a line transfer operation sequence to the stranded number in either order, or if it is necessary to insert a line transfer operation sequence to the stranded number in either order, perform an operation with a large margin Put the order of shifting. If resource conflicts are resolved by ordering the competing operation pairs under this basic policy, it is expected that a feasible solution that has a uniform margin of each operation sequence and satisfies the order constraint as much as possible can be expected.
【0078】基本方針を具体化した処理の詳細を、図3
6のフローチャートを参照しながら説明する。まずステ
ップ3601において資源競合操作対変数pairに新し
い資源競合操作対を生成して格納する。ステップ360
2では生成対象の操作対(op1,op2)に対して、o
p1をシフトした場合とop2をシフトした場合のシフト
幅をそれぞれ算出する。ステップ3603ではop1か
op2のどちらかが入区または出区操作かどうかの判定
をおこなう。どちらかが入区または出区操作の場合はス
テップ3604へ進み入区または出区操作ではない方の
操作をシフトする順序をpair.順序に設定する。その
後はpairに他の値を適切に設定して処理を終了する。
どちらも入区または出区操作ではない場合は、ステップ
3605でop1とop2が共に作業操作であるかどうか
の判定をおこなう。少なくともどちらかが作業操作では
ない場合は、ステップ3610に進む。共に作業操作の
場合はステップ3606に進み、op1とop2のどちら
もシフトすることによりop1とop2の間の順序制約違
反を新たに生じるかどうか判定する。どちらも新たに発
生しなければステップ3610へ進む。どちらか少なく
とも一方が新たに順序制約式違反を発生する場合にはス
テップ3607でどちらをシフトしてもop1とop2の
間に順序制約式違反を生じるかどうか判定する。どちら
も生じる場合はステップ3608で余裕度が大きい操作
をシフトする順序をpair.順序に設定する。どちらか
片方のみが順序制約違反を生じる場合はステップ360
9へ進み、順序制約違反を生じないシフトをおこなう順
序をpair.順序に設定する。ステップ3608または
ステップ3609の終了後は、共にpairに他の値を適
切に設定して処理を終了する。ステップ3610では、
op1とop2のどちらかだけが、シフト後に直前の作業
または留置操作の処理時間をシフト幅だけ延長すると資
源競合か順序制約違反を新たに生じるかどうか判定す
る。これが真の場合はステップ3611で競合と違反が
生じないシフトをおこなう順序をpair.順序に設定す
る。偽の場合は余裕度が大きい操作をシフトする順序を
pair.順序に設定する。ステップ3611またはステ
ップ3612の終了後は、共にpairに他の値を適切に
設定して処理を終了する。The details of the processing embodying the basic policy are shown in FIG.
This will be described with reference to the flowchart of FIG. First, in step 3601, a new resource conflict operation pair is generated and stored in the resource conflict operation pair variable pair. Step 360
In the case of 2, for the operation pair (op1, op2) to be generated, o
The shift width when p1 is shifted and the shift width when op2 is shifted are calculated. In step 3603, it is determined whether either op1 or op2 is an entry or exit operation. If either of the operations is an entry or exit operation, the process proceeds to step 3604, and the order in which the operation other than the entry or exit operation is shifted to pair. Set in order. After that, another value is appropriately set in the pair and the process ends.
If neither is an entry or exit operation, it is determined in step 3605 whether op1 and op2 are both work operations. If at least one of the operations is not a work operation, the process proceeds to step 3610. If both are operation operations, the process proceeds to step 3606, and it is determined whether shifting of both op1 and op2 causes a new order constraint violation between op1 and op2. If neither of them is newly generated, the process proceeds to step 3610. If at least one of them newly causes an order constraint expression violation, it is determined in step 3607 whether or not either shift causes an order constraint expression violation between op1 and op2. If both occur, the order of shifting the operation having a large margin in step 3608 is set to pair. Set in order. If only one of them causes an order constraint violation, step 360
9 to determine the order in which shifts that do not cause order constraint violations are performed. Set in order. After the end of step 3608 or step 3609, another value is appropriately set in the pair, and the process ends. In step 3610,
Only one of op1 and op2 determines whether extending the processing time of the immediately preceding work or detention operation after the shift by the shift width will cause a new resource conflict or a violation of the order constraint. If this is true, in step 3611 the order in which shifts that do not cause conflicts and violations are performed is determined as pair. Set in order. In the case of false, the order of shifting the operation with a large margin is pair. Set in order. After the end of step 3611 or 3612, another value is appropriately set in the pair and the process ends.
【0079】図24に戻り解(操作シーケンス)の生成
処理における主要な構成ステップの説明を続ける。ステ
ップ2408の最も早い資源競合の解消処理について、
図37のフローチャートを参照しながら説明する。Returning to FIG. 24, description of the main constituent steps in the process of generating a solution (operation sequence) will be continued. Regarding the earliest resource conflict resolution processing in step 2408,
This will be described with reference to the flowchart in FIG.
【0080】まずステップ3701において資源競合操
作対変数pairにシフト開始時刻が最も早い資源競合操
作対を格納する。次にステップ3702で操作変数op
にシフト対象操作を、操作変数keepに固定する操作
を、整数変数widthにシフト幅をそれぞれpairから取
り出して格納する。ステップ3703ではkeepが操作
シーケンスの中の最後の作業操作であり、なおかつその
後ろに留置番線への転線操作系列が挿入されていないか
どうかを判定する。これが真の場合はkeepは出区前の
待機を兼ねた作業操作であるため、処理時間を大幅に短
縮することが可能である。よってステップ3704でk
eepの処理時間を最大限縮め、ステップ3705でkeep
の後ろに留置番線への転線操作系列を挿入して処理を終
了する。挿入の方法は図31ステップ3107と同様で
ある。判定が偽の場合は図30の順序制約違反の解消処
理で説明したステップ3004の操作のシフトと空き時
間帯の調整処理を、シフト操作op、シフト幅widthと
して実行して処理を終了する。 図24に戻り解(操作
シーケンス)の生成処理における主要な構成ステップの
説明を続ける。ステップ2409の最も早い順序制約式
の違反解消処理については図29の順序制約式違反解消
処理の説明で述べた。ステップ2411のシフト操作の
前方に生じた資源競合の解消処理について図38のフロ
ーチャートを参照しながら説明する。First, in step 3701, a resource conflicting operation pair having the earliest shift start time is stored in the resource conflicting operation pair variable pair. Next, in step 3702, the operation variable op
The operation to fix the operation to be shifted to the operation variable keep is extracted from the pair as the integer variable width and stored. In step 3703, it is determined whether keep is the last work operation in the operation sequence, and whether a line transfer operation sequence to the indwelling number is inserted behind it. If this is true, keep is a work operation that also serves as a standby before leaving, so that the processing time can be significantly reduced. Therefore, in step 3704, k
Reduce processing time of eep as much as possible, and keep in step 3705
After that, the sequence of operation for turning to the indwelling track is inserted, and the process is terminated. The insertion method is the same as step 3107 in FIG. If the determination is false, the shift operation and the adjustment of the idle time zone in step 3004 described in the processing for eliminating the order constraint violation in FIG. Returning to FIG. 24, the description of the main configuration steps in the solution (operation sequence) generation processing will be continued. The earliest order constraint expression violation solving process in step 2409 has been described in the description of the order constraint expression violation solving process in FIG. The process of resolving resource conflicts occurring before the shift operation in step 2411 will be described with reference to the flowchart in FIG.
【0081】まずステップ3801において、シフトし
た操作pの前方にある全ての操作に関する資源競合操作
対の集合を生成する。本ステップの詳細を図39のフロ
ーチャートを参照しながら説明する。First, in step 3801, a set of resource conflicting operation pairs for all operations preceding the shifted operation p is generated. Details of this step will be described with reference to the flowchart in FIG.
【0082】まずステップ3901において、操作変数
tmpにpを含む操作シーケンスの先頭操作を格納する。
次にステップ3902では処理の終了判定をおこない、
tmpとpが同一操作の場合は処理を終了する。処理を終
了しない場合にはステップ3903に進みtmpの種類が
留置であるかどうか判定する。tmpの種類が留置の場合
にはステップ3909でtmpに操作シーケンス中のtmp
の次の操作を格納し、ステップ3902の終了判定処理
に戻る。tmpの種類が留置ではない場合にはステップ3
904に進み、ガントチャートを利用してtmpと同じ資
源を使用する全ての操作に対して部分処理3905を施
す。部分処理はまずステップ3906でtmpと該操作の
間に時間的重なりがあるかどうかを判定する。時間的重
なりがない場合は部分処理を終了する。時間的重なりが
ある場合はステップ3907でtmpをシフトする順序で
資源競合操作対集合を生成する。ステップ3908にお
いて資源競合操作対を集合に加えて部分処理を終了す
る。部分処理を終了した後は、ステップ3909でtmp
に操作シーケンス中のtmpの次の操作を格納し、ステッ
プ3902の終了判定処理に戻る。First, in step 3901, the head operation of the operation sequence including p in the operation variable tmp is stored.
Next, in step 3902, the end of the process is determined.
If tmp and p are the same operation, the process ends. If the process is not completed, the process proceeds to step 3903 to determine whether the type of tmp is detention. If the type of tmp is detention, in step 3909 tmp is added to tmp in the operation sequence.
Is stored, and the process returns to the end determination processing of step 3902. Step 3 if the type of tmp is not detention
Proceeding to 904, partial processing 3905 is performed for all operations using the same resources as tmp using the Gantt chart. The partial process first determines in step 3906 whether there is a temporal overlap between tmp and the operation. If there is no temporal overlap, the partial processing ends. If there is a temporal overlap, a resource conflicting operation pair set is generated in step 3907 in the order of shifting tmp. In step 3908, the resource conflict operation pair is added to the set, and the partial processing ends. After the completion of the partial processing, at step 3909, tmp
The operation next to tmp in the operation sequence is stored in, and the process returns to the end determination processing of step 3902.
【0083】図38に戻ってシフトした操作の前方に生
じた資源競合の解消処理の説明を続ける。ステップ38
01を終了した後にステップ3802に進み、処理の終
了判定をおこなう。資源競合操作対集合の数が0の場合
は処理を終了する。集合の数が0でない場合にはステッ
プ2409の最も早い資源競合の解消処理をおこなう。
その後はステップ3801へ戻る。以上で図16の解探
索処理における解(操作シーケンス)の生成処理の詳細
説明を終える。次に解探索処理における解の評価ステッ
プについて説明する。本ステップでは、生成した解があ
らかじめ設定した解の評価項目をどの程度充足している
かをチェックして、項目の違反件数と違反内容に応じた
ペナルティから減点法で評価値を与える。本実施例で用
いる解評価項目の例を図40に示す。この解評価項目に
対する項目の削除・追加や、違反時のペナルティの調整
は容易にできる。図41のフローチャートを参照しなが
ら解の評価処理の詳細を説明する。Returning to FIG. 38, the description of the processing for resolving resource conflicts that occurred before the shifted operation will be continued. Step 38
01, the process advances to step 3802 to determine the end of the process. If the number of resource conflicting operation pair sets is 0, the process ends. If the number of sets is not 0, the fastest resource conflict resolution processing of step 2409 is performed.
Thereafter, the flow returns to step 3801. This is the end of the detailed description of the solution (operation sequence) generation process in the solution search process of FIG. Next, the solution evaluation step in the solution search processing will be described. In this step, it is checked to what extent the generated solution satisfies the evaluation items of the solution set in advance, and an evaluation value is given by the penalty method based on the number of violations of the item and a penalty according to the content of the violation. FIG. 40 shows an example of the solution evaluation items used in this embodiment. Items can be easily deleted or added to the solution evaluation items, and the penalty for violation can be easily adjusted. Details of the solution evaluation processing will be described with reference to the flowchart in FIG.
【0084】まずステップ4101において項目番号m
を初期化する。ステップ4102では処理の終了判定を
おこない、項目番号mが解の評価項目数を超えた場合に
は処理を終了する。処理を終了しない場合にはステップ
4103に進み、得点pに規定の最高得点を格納する。
ステップ4104では評価項目mに対する解の充足度を
判定し、項目に違反した件数を記憶しておく。ステップ
4105において得点pから式、「違反件数×評価項目
mのペナルティ」により算出した得点を引く。ステップ
4106で項目番号mの値を1増やして終了判定ステッ
プ4102へ戻る。First, in step 4101, the item number m
Is initialized. In step 4102, it is determined whether the process is completed. If the item number m exceeds the number of evaluation items of the solution, the process ends. If the processing is not to be ended, the process proceeds to step 4103, and the specified maximum score is stored in the score p.
In step 4104, the degree of satisfaction of the solution for the evaluation item m is determined, and the number of violations of the item is stored. In step 4105, the score calculated by the formula “number of violations × penalty of evaluation item m” is subtracted from score p. In step 4106, the value of the item number m is incremented by 1, and the process returns to the end determination step 4102.
【0085】以上で図16の解探索処理の詳細説明を終
える。本発明の基本構成(図1)に示されるデータと処
理と装置の本実施例における具体化についての説明を続
ける。図1の解0113は、図16のフローチャートに
基づいて説明した解探索処理で得られる全ての仕事(編
成)に対する操作シーケンスである。そのデータ構造は
図9で示した。The detailed description of the solution search processing in FIG. 16 has been completed. The description of the embodiment of the data, processing, and apparatus shown in the basic configuration (FIG. 1) of the present invention will be continued. The solution 0113 in FIG. 1 is an operation sequence for all tasks (compositions) obtained by the solution search process described based on the flowchart in FIG. The data structure is shown in FIG.
【0086】本実施例では、図1ステップ0114にお
ける解の表示とオペレータの操作処理において、解を表
示装置0116に表示し、入力装置0115からオペレ
ータによる操作を受け付ける。オペレータは、図7の仕
事データ、図13の資源属性テーブル、図14の接続判
定テーブル、図15の解探索パラメータ、図27の順序
制約式、図40の解評価項目を表示装置に出力させてそ
れらを編集し、編集されたデータを用いて図16の解探
索処理の実行を再び指示することができる。オペレータ
によって承認を受けた解は、正式な車両入換計画として
登録され、実務フォーマットに変換された上でプリンタ
0117から出力される。In this embodiment, the solution is displayed on the display device 0116 and the operation by the operator is received from the input device 0115 in the display of the solution and the operation process of the operator in step 0114 of FIG. The operator outputs the work data of FIG. 7, the resource attribute table of FIG. 13, the connection determination table of FIG. 14, the solution search parameter of FIG. 15, the order constraint equation of FIG. 27, and the solution evaluation item of FIG. These can be edited, and the execution of the solution search process of FIG. 16 can be again instructed using the edited data. The solution approved by the operator is registered as a formal vehicle replacement plan, converted into a business format, and output from the printer 0117.
【0087】[0087]
【図1】本発明の基本構成である。FIG. 1 shows a basic configuration of the present invention.
【図2】操作手順に関する制約の説明図である。FIG. 2 is an explanatory diagram of a constraint on an operation procedure.
【図3】ガントチャートの例である。FIG. 3 is an example of a Gantt chart.
【図4】車両入換計画表の例である。FIG. 4 is an example of a vehicle replacement schedule.
【図5】車両基地レイアウトの例である。FIG. 5 is an example of a depot layout.
【図6】車両入換ダイヤの例である。FIG. 6 is an example of a vehicle replacement diagram.
【図7】本実施例における仕事データのデータ構造であ
る。FIG. 7 is a data structure of work data in the present embodiment.
【図8】本実施例における操作データのデータ構造であ
る。FIG. 8 is a data structure of operation data in the present embodiment.
【図9】本実施例における操作シーケンスのデータ構造
である。FIG. 9 is a data structure of an operation sequence in the embodiment.
【図10】本実施例における操作手順に関する制約の説
明図である。FIG. 10 is an explanatory diagram of restrictions on an operation procedure in the present embodiment.
【図11】操作シーケンステンプレートのデータ構造で
ある。FIG. 11 is a data structure of an operation sequence template.
【図12】操作シーケンステンプレート生成処理フロー
である。FIG. 12 is an operation sequence template generation processing flow.
【図13】資源属性テーブルのデータ構造である。FIG. 13 is a data structure of a resource attribute table.
【図14】接続判定テーブルのデータ構造である。FIG. 14 is a data structure of a connection determination table.
【図15】本実施例における解探索パラメータの説明図
である。FIG. 15 is an explanatory diagram of a solution search parameter in the present embodiment.
【図16】本実施例における解探索処理フローである。FIG. 16 is a solution search processing flow in the present embodiment.
【図17】資源割当テーブルのデータ構造である。FIG. 17 is a data structure of a resource allocation table.
【図18】資源割当テーブルの初期化処理フローであ
る。FIG. 18 is a flowchart of processing for initializing a resource allocation table.
【図19】操作シーケンステンプレートの最悪パターン
に資源を割り当てる処理のフローである。FIG. 19 is a flowchart of processing for allocating resources to the worst pattern of the operation sequence template.
【図20】子染色体の生成処理フローである。FIG. 20 is a flowchart of a generation process of a child chromosome.
【図21】親染色体から子染色体の操作シーケンステン
プレートの最悪経路を生成する処理のフローである。FIG. 21 is a flowchart of processing for generating a worst path of an operation sequence template of a child chromosome from a parent chromosome.
【図22】突然変異処理フローである。FIG. 22 is a flowchart of a mutation process.
【図23】操作シーケンステンプレートの最悪経路に対
する突然変異処理フローである。FIG. 23 is a flowchart of a mutation process for the worst path of the operation sequence template.
【図24】操作シーケンスの生成処理フローである。FIG. 24 is a flowchart of a process for generating an operation sequence.
【図25】本実施例におけるガントチャートのデータ構
造である。FIG. 25 is a data structure of a Gantt chart in the present embodiment.
【図26】操作シーケンスの初期化処理フローである。FIG. 26 is a flowchart of an operation sequence initialization process.
【図27】本実施例における順序制約式のデータ構造で
ある。FIG. 27 is a data structure of an order constraint expression in the embodiment.
【図28】順序制約違反操作対の説明図である。FIG. 28 is an explanatory diagram of an order constraint violation operation pair.
【図29】順序制約違反の解消処理フローである。FIG. 29 is a flowchart of a process for resolving an order constraint violation.
【図30】最も早い順序制約違反の解消処理フローであ
る。FIG. 30 is a flowchart of the earliest order constraint violation resolution processing flow.
【図31】操作のシフトと空き時間帯の調整処理であ
る。FIG. 31 shows an operation shift and an idle time adjustment process.
【図32】操作のシフト処理の説明図である。FIG. 32 is an explanatory diagram of an operation shift process.
【図33】留置番線への転線操作系列の挿入処理の説明
図である。FIG. 33 is an explanatory diagram of a process of inserting a line-turning operation sequence into a detention line.
【図34】資源競合操作対のデータ構造である。FIG. 34 is a data structure of a resource conflict operation pair.
【図35】資源競合操作対集合生成処理フローである。FIG. 35 is a flowchart of a resource conflicting operation pair set generation process.
【図36】資源競合操作対生成処理フローである。FIG. 36 is a flowchart of a resource conflicting operation pair generation process.
【図37】最も早い資源競合の解消処理フローである。FIG. 37 is a flowchart of the earliest resource conflict resolution processing flow.
【図38】ある操作の前方に生じた資源競合の解消処理
フローである。FIG. 38 is a flowchart of a process for resolving resource conflicts occurring before a certain operation.
【図39】ある操作の前方の全ての処理に関する資源競
合操作対の生成処理フローである。FIG. 39 is a flowchart of a generation process of a resource conflicting operation pair for all processes before a certain operation.
【図40】本実施例における解評価項目の説明図であ
る。FIG. 40 is an explanatory diagram of a solution evaluation item in the present embodiment.
【図41】解の評価処理フローである。FIG. 41 is a flowchart of a solution evaluation process.
0101…仕事データ、0102…資源に関する制約、
0103…操作手順に関する制約の生成、0104…操
作手順に関する制約、0105…解探索処理、0106
…資源割当の確率的調整、0107…資源競合の解消、
0108…解候補の評価、0109…評価値の
フィードバック、0111…作業の順序に関する制約、
0112…解評価項目、0113…解、0114…解の
表示とオペレータの操作、0115…入力装置、011
6…表示装置、 0117…プリンタ。0101: work data, 0102: constraints on resources,
0103: Restriction on operation procedure, 0104: Restriction on operation procedure, 0105: Solution search processing, 0106
... probabilistic adjustment of resource allocation, 0107 ... resolution of resource conflict,
0108: evaluation of solution candidates; 0109: feedback of evaluation values; 0111: restrictions on the order of work;
0112: Solution evaluation item, 0113: Solution, 0114: Solution display and operator operation, 0115: Input device, 011
6 display device, 0117 printer.
Claims (16)
集合VからO≡W∪Vと構成される順序関係≦を持つ半
順序集合で、要素opは資源集合Rの要素である資源r
と時刻集合Tの要素である開始時刻stと時刻集合Tの
要素である終了時刻ftを属性として持ち、仕事Ji(i
=1,2,・・・)は、Ji⊂Wである全順序部分集合
で、全ての要素の属性が未割当で、J1∩J2∩・・・=
φであり、仕事JiのスケジュールSiは、Ji⊂Si⊂O
である全順序部分集合で、全ての要素の属性が割当済み
で、S1∩S2∩・・・=φであり、与えられた全ての仕
事のスケジュールSall≡S1∪S2∪・・・を作成する
情報処理装置を利用するスケジューリング方法であっ
て、 (1)入力された仕事データから、各仕事が使用可能な
操作と操作間の順序を示す操作手順に関する制約を、操
作を節点とする有向ネットワークとして生成するステッ
プと、(2)操作の資源割当の組合せを確率的に調整す
るステップと、(3)操作の必要資源の時間的競合を解
消して全ての仕事のスケジュールの解候補を作成するス
テップと、(4)ステップ(3)の実行により得られた
解候補を評価して評価値を算出するステップと、(5)
ステップ(4)の実行により得られた評価値を上記の資
源割当の確率的調整ステップにフィードバックするステ
ップと、(6)解候補の最適解探索処理を上記のステッ
プ(2)〜(5)をを繰り返すことにより行なうステッ
プと、(7)最適化の結果得られた全ての仕事のスケジ
ュールを表す解を表示してオペレータが編集するステッ
プとを有することを特徴とするスケジューリング方法。An operation set O is a semi-ordered set having an order relation ≦ O∪W≡V from an essential operation set W and an auxiliary operation set V, and an element op is a resource that is an element of a resource set R. r
And a start time st which is an element of the time set T and an end time ft which is an element of the time set T as attributes, and the job Ji (i
= 1, 2,...) Are all ordered subsets in which J i ⊂ W, all element attributes are unassigned, and J 1 ∩ J 2 ∩ =
φ, and the schedule Si of the job Ji is Ji⊂Si⊂O
, S 1 ∩S 2 ∩... = Φ, and all given work schedules Sall 1S 1 ∪S 2 ∪ ·· (1) From the input work data, a constraint on an operation procedure indicating an operation that can be used by each work and an order between the operations is defined as: (2) probabilistically adjusting the combination of resource allocations for operations; and (3) solving time schedules for resources required for operations and solving schedules for all tasks. Creating a candidate; (4) evaluating a solution candidate obtained by performing step (3) to calculate an evaluation value; and (5)
(E) feeding back the evaluation value obtained by performing step (4) to the above-mentioned stochastic adjustment step of resource allocation; and (6) performing the above-mentioned steps (2) to (5) to search for an optimal solution for a solution candidate. And (7) displaying a solution representing the schedule of all jobs obtained as a result of the optimization and editing the solution by an operator.
記操作手順に関する制約の各節点の資源の割当状況を全
ての仕事について示す染色体を、資源の属性と資源間の
関係を示す資源に関する制約を充足させつつ解探索パラ
メータに設定された個数作成することを特徴とする請求
項1項記載のスケジューリング方法。2. The method according to claim 1, wherein the step (2) relates to a chromosome indicating a resource allocation status of each node of the constraint relating to the operation procedure for all jobs, and a resource indicating a resource attribute and a relationship between resources. 2. The scheduling method according to claim 1, wherein the number set in the solution search parameter is created while satisfying the constraint.
色体に与えられた評価値に基づいて、染色体に少なくと
も自然淘汰処理、交叉処理、突然変異処理を含む遺伝的
操作を施して、操作手順に関する制約の各節点の資源の
割当状況が異なる新たな染色体データを作成することを
特徴とする請求項1項記載のスケジューリング方法。3. The method according to claim 1, wherein in the step (2), a genetic operation including at least natural selection processing, crossover processing, and mutation processing is performed on the chromosome based on the evaluation value given to the chromosome. 2. The scheduling method according to claim 1, wherein new chromosome data in which the resource allocation status of each node of the constraint on the procedure is different is created.
ダムに選択された2個の染色体の同一節点の資源の割当
状況からどちらか一方を選択して新しい染色体の同一節
点に設定することを特徴とする請求項1項記載のスケジ
ューリング方法。4. The crossover process according to claim 3, wherein the crossover process selects one of two randomly selected chromosomes from the resource allocation status of the same node and sets the selected node to a new chromosome at the same node. The scheduling method according to claim 1, wherein
2個の染色体の同一節点の資源の割当状況からどちらか
一方を選択する際には、資源に関する制約を充足する資
源の割当状況を選択し、どちらも資源に関する制約を充
足する場合には、評価値の高い染色体データの資源の割
当状況を継承する可能性が、その評価値の相対的な高さ
の程度を反映するように動的に決定された確率に従って
選択をおこなうことを特徴とする請求項1項記載のスケ
ジューリング方法。5. The method according to claim 4, wherein when selecting one of the resource allocation statuses of the same node of two randomly selected chromosomes, the resource allocation status satisfying the resource-related restriction is selected. However, if both satisfy the resource constraints, the possibility of inheriting the resource allocation status of chromosome data with a high evaluation value is dynamically adjusted to reflect the relative height of the evaluation value. 2. The scheduling method according to claim 1, wherein the selection is performed according to the probability determined in (1).
染色体の一部の節点の資源の割当状況を、資源に関する
制約に違反しない限りにおいて確率的に変更することを
特徴とする請求項1項記載のスケジューリング方法。6. The method according to claim 3, wherein the mutation treatment comprises:
2. The scheduling method according to claim 1, wherein the resource allocation status of some nodes of the chromosome is changed probabilistically as long as the resource does not violate a resource constraint.
(a)各仕事に対して操作手順と、各操作の使用資源
と、各操作の処理時間を示す操作シーケンスを作成し、
全ての操作シーケンスについて作業の順序に関する制約
の充足処理を施して各仕事のスケジュールとする各仕事
のスケジュールの初期化サブステップと、(b)(a)
の実行により得られた全ての仕事のスケジュールの解候
補から、使用資源の時間的競合を起こす操作対を選択し
て資源競合を解消するサブステップを有することを特徴
とする請求項1項記載のスケジューリング方法。7. The method according to claim 1, wherein step (3) comprises:
(A) For each job, create an operation sequence indicating operation procedures, resources used by each operation, and processing time of each operation,
A sub-step of initializing the schedule of each job as a schedule of each job by performing a process of satisfying the constraint on the order of the operations for all operation sequences; (b) (a)
2. The method according to claim 1, further comprising the sub-step of selecting an operation pair that causes a time conflict of the used resources from the solution candidates of all the work schedules obtained by executing the task, and resolving the resource conflict. Scheduling method.
は、各仕事の操作手順を操作手順に関する制約から選択
し、各操作の使用資源を染色体から得た資源の割当状況
に基づき割り当てることを特徴とする請求項1項記載の
スケジューリング方法。8. The method according to claim 7, wherein the sub-step (a)
2. The scheduling method according to claim 1, wherein the operating method selects an operation procedure of each task from constraints on the operation procedure, and allocates resources used in each operation based on a resource allocation status obtained from a chromosome.
は、作業操作の開始時刻と作業操作の終了時刻と定数か
らなる不等式または等式である順序制約式を作業の順序
に関する制約として、順序制約式に含まれるいずれかの
操作の開始時刻と終了時刻を時間後方へずらすことによ
り作業の順序に関する制約を充足することを特徴とする
請求項1項記載のスケジューリング方法。9. The method according to claim 7, wherein:
The start time and end time of one of the operations included in the order constraint expression are defined as an order constraint expression, which is an inequality or an equality equation composed of a start time of the work operation, an end time of the work operation, and a constant, as a constraint on the work order. 2. The scheduling method according to claim 1, wherein the constraint on the order of the work is satisfied by shifting the time backward.
は、使用資源の時間的競合を起こす操作対に対して2つ
の操作の一方を選択して、選択した操作の開始時刻と終
了時刻を時間後方へずらす処理により使用資源の時間的
競合を解消することを特徴とする請求項1項記載のスケ
ジューリング方法。10. The method according to claim 7, wherein the sub-step (b) is performed.
Resolves the time conflict of the used resources by selecting one of the two operations for the operation pair causing the time conflict of the used resources and shifting the start time and the end time of the selected operation backward in time. 2. The scheduling method according to claim 1, wherein:
刻を時間後方へずらされた操作と、該操作の時間前方に
存在する同一の仕事のスケジュールに含まれる操作との
間に生じた空き時間を、(1)操作の終了時刻の延長、
(2)操作手順の部分変更、のいずれかにより調整する
ことを特徴とする請求項1項記載のスケジューリング方
法。11. An idle time generated between an operation whose start time and end time are shifted backward in time and an operation included in a schedule of the same work existing ahead of said operation in time according to claim 10. By (1) extending the end time of the operation,
2. The scheduling method according to claim 1, wherein the adjustment is performed by any of (2) a partial change of an operation procedure.
を選択する場合には、開始時刻と終了時刻を時間後方へ
ずらすことにより新たな順序制約式違反を生じない操作
を選択することを特徴とする請求項1項記載のスケジュ
ーリング方法。12. The method according to claim 10, wherein, when one of the two operations is selected, the start time and the end time are shifted backward in time to select an operation that does not cause a new order constraint expression violation. The scheduling method according to claim 1, wherein
所定の制約条件から作成された解評価項目の充足の程度
に応じて解候補の各々の評価値を算出することを特徴と
する請求項1項記載のスケジューリング方法。13. The method according to claim 1, wherein step (4) comprises:
2. The scheduling method according to claim 1, wherein an evaluation value of each of the solution candidates is calculated according to a degree of satisfaction of a solution evaluation item created from a predetermined constraint condition.
前記ステップ(4)で算出した評価値を、解候補を作成
する際に使用した染色体に与えることを特徴とする請求
項1項記載のスケジューリング方法。14. The method according to claim 1, wherein step (5) comprises:
2. The scheduling method according to claim 1, wherein the evaluation value calculated in the step (4) is provided to a chromosome used when creating a solution candidate.
オペレータが入力装置を用いて、仕事データ、資源に関
する制約、解探索パラメータ、作業の順序に関する制
約、解評価項目を修正し、解探索の再実行を指示するこ
とを特徴とする請求項1項記載のスケジューリング方
法。15. The method according to claim 1, wherein step (5) comprises:
2. The operator according to claim 1, wherein the operator modifies the work data, resource constraints, solution search parameters, work order constraints, and solution evaluation items using the input device, and instructs re-execution of the solution search. Scheduling method.
作集合VからO≡W∪Vと構成される順序関係≦を持つ
半順序集合で、要素opは資源集合Rの要素である資源
rと時刻集合Tの要素である開始時刻stと時刻集合T
の要素である終了時刻ftを属性として持ち、仕事Ji
(i=1,2,・・・)は、Ji⊂Wである全順序部分
集合で、全ての要素の属性が未割当で、J1∩J2∩・・
・=φであり、仕事JiのスケジュールSiは、Ji⊂Si
⊂Oである全順序部分集合で、全ての要素の属性が割当
済みで、S1∩S2∩・・・=φであり、与えられた全て
の仕事のスケジュールSall≡S1∪S2∪・・・を作成
する情報処理装置を利用するスケジューリング装置であ
って、 (1)入力された仕事データから、各仕事が使用可能な
操作と操作間の順序を示す操作手順に関する制約を、操
作を節点とする有向ネットワークとして生成する手段
と、(2)操作の資源割当の組合せを確率的に調整する
手段と、(3)操作の必要資源の時間的競合を解消して
全ての仕事のスケジュールの解候補を作成する手段と、
(4)手段(3)の実行により得られた解候補を評価し
て評価値を算出する手段と、(5)手段(4)の実行に
より得られた評価値を上記の資源割当の確率的調整手段
にフィードバックする手段と、(6)解候補の最適解探
索処理を上記の手段(2)〜(5)をを繰り返すことに
より行なう手段と、(7)最適化の結果得られた全ての
仕事のスケジュールを表す解を表示してオペレータが編
集する手段とを有することを特徴とするスケジューリン
グ装置。16. An operation set O is a partially ordered set having an order relation ≦ O ≦ W∪V from a required operation set W and an auxiliary operation set V, and an element op is a resource that is an element of the resource set R. r and start time st and time set T which are elements of time set T
Has the end time ft, which is an element of
(I = 1,2, ···) is the total order subsets is Ji⊂W, in the attributes of all elements unallocated, J 1 ∩J 2 ∩ ··
== φ, and the schedule Si of the job Ji is Ji⊂Si
In the all ordered subset of ⊂O, attributes of all elements have been assigned, S 1 ∩S 2 ∩... = Φ, and all given work schedules Sall≡S 1 ∪S 2 ∪ Is a scheduling device that uses an information processing device that creates ... (1) From input work data, a constraint on an operation procedure indicating an operation that can be used by each job and an order between the operations is set as an operation. Means for generating a directed network as a node; (2) means for stochastically adjusting the combination of resource allocation for operations; and (3) schedule for all tasks by eliminating temporal conflicts between resources required for operations. Means for creating a solution candidate for
(4) means for evaluating the solution candidates obtained by executing the means (3) to calculate an evaluation value; and (5) calculating the evaluation value obtained by the execution of the means (4) based on the probability of the resource allocation. Means for feeding back to the adjusting means; (6) means for performing the optimal solution search processing of the solution candidates by repeating the above means (2) to (5); and (7) all means obtained as a result of the optimization. Means for displaying a solution representing a work schedule and allowing an operator to edit the solution.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP10132497A JPH10293784A (en) | 1997-04-18 | 1997-04-18 | Scheduling method and device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP10132497A JPH10293784A (en) | 1997-04-18 | 1997-04-18 | Scheduling method and device |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH10293784A true JPH10293784A (en) | 1998-11-04 |
Family
ID=14297648
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP10132497A Pending JPH10293784A (en) | 1997-04-18 | 1997-04-18 | Scheduling method and device |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH10293784A (en) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2005007483A1 (en) * | 2003-07-18 | 2005-01-27 | Hitachi, Ltd. | Device for supporting vehicle replacement schedule generation |
JP2007196880A (en) * | 2006-01-27 | 2007-08-09 | Toshiba Corp | Yard work planning system, method and program |
JP2008140097A (en) * | 2006-12-01 | 2008-06-19 | Hitachi Ltd | Project evaluation device, project evaluation method, and storage medium |
JP2012086779A (en) * | 2010-10-22 | 2012-05-10 | Mitsubishi Electric Corp | Custody plan developing device |
CN107679750A (en) * | 2017-09-30 | 2018-02-09 | 桂林电子科技大学 | A kind of cloud manufacturing service reso urce matching method based on adaptation coefficient genetic algorithm |
CN109543892A (en) * | 2018-11-14 | 2019-03-29 | 成都英孚克斯科技有限公司 | A kind of routing resource based on genetic algorithm |
CN110209487A (en) * | 2019-06-08 | 2019-09-06 | 西安电子科技大学 | ISAR resource regulating method based on genetic algorithm |
CN115879782A (en) * | 2023-01-05 | 2023-03-31 | 深圳市鼎山科技有限公司 | Production supply chain monitoring management system and method based on Internet of things |
-
1997
- 1997-04-18 JP JP10132497A patent/JPH10293784A/en active Pending
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2005007483A1 (en) * | 2003-07-18 | 2005-01-27 | Hitachi, Ltd. | Device for supporting vehicle replacement schedule generation |
JP2007196880A (en) * | 2006-01-27 | 2007-08-09 | Toshiba Corp | Yard work planning system, method and program |
JP2008140097A (en) * | 2006-12-01 | 2008-06-19 | Hitachi Ltd | Project evaluation device, project evaluation method, and storage medium |
JP2012086779A (en) * | 2010-10-22 | 2012-05-10 | Mitsubishi Electric Corp | Custody plan developing device |
CN107679750A (en) * | 2017-09-30 | 2018-02-09 | 桂林电子科技大学 | A kind of cloud manufacturing service reso urce matching method based on adaptation coefficient genetic algorithm |
CN107679750B (en) * | 2017-09-30 | 2020-10-02 | 桂林电子科技大学 | Cloud manufacturing service resource matching method based on adaptive coefficient genetic algorithm |
CN109543892A (en) * | 2018-11-14 | 2019-03-29 | 成都英孚克斯科技有限公司 | A kind of routing resource based on genetic algorithm |
CN110209487A (en) * | 2019-06-08 | 2019-09-06 | 西安电子科技大学 | ISAR resource regulating method based on genetic algorithm |
CN110209487B (en) * | 2019-06-08 | 2022-12-06 | 西安电子科技大学 | ISAR resource scheduling method based on genetic algorithm |
CN115879782A (en) * | 2023-01-05 | 2023-03-31 | 深圳市鼎山科技有限公司 | Production supply chain monitoring management system and method based on Internet of things |
CN115879782B (en) * | 2023-01-05 | 2023-05-09 | 深圳市鼎山科技有限公司 | Production supply chain monitoring management system and method based on Internet of things |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Bertsimas et al. | Online vehicle routing: The edge of optimization in large-scale applications | |
Samà et al. | A variable neighbourhood search for fast train scheduling and routing during disturbed railway traffic situations | |
Borndörfer et al. | Integrated optimization of rolling stock rotations for intercity railways | |
Cacchiani et al. | An overview of recovery models and algorithms for real-time railway rescheduling | |
Salomon | Deterministic lotsizing models for production planning | |
Corréa et al. | Scheduling and routing of automated guided vehicles: A hybrid approach | |
US8606386B2 (en) | Multi-agent system for distributed manufacturing scheduling with Genetic Algorithms and Tabu Search | |
Petering et al. | Mixed-integer programming for railway capacity analysis and cyclic, combined train timetabling and platforming | |
Parkes et al. | An auction-based method for decentralized train scheduling | |
JP5075577B2 (en) | Vehicle operation plan creation apparatus and method | |
de Fabris et al. | Automatic generation of railway timetables based on a mesoscopic infrastructure model | |
Elizondo et al. | An evolutionary and constructive approach to a crew scheduling problem in underground passenger transport | |
Shakibayifar et al. | An intelligent simulation platform for train traffic control under disturbance | |
Cao et al. | Robust and optimized urban rail timetabling using a marshaling plan and skip-stop operation | |
Zhang et al. | A heuristic approach to integrate train timetabling, platforming, and railway network maintenance scheduling decisions | |
US20130318002A1 (en) | Resource management plan creation device and resource management plan creation method | |
JP4241584B2 (en) | Vehicle base premises exchange sequence creation device, method and program | |
JPH10293784A (en) | Scheduling method and device | |
Hassani et al. | Planning and scheduling problems of production systems: review, classification and opportunities | |
Flamini et al. | Real time management of a metro rail terminus | |
Yao et al. | A genetic algorithm for heterogeneous high-speed railway timetabling with dense traffic: The train-sequence matrix encoding scheme | |
Mesa et al. | Effective allocation of fleet frequencies by reducing intermediate stops and short turning in transit systems | |
Powell et al. | Strategic, tactical and real-time planning of locomotives at Norfolk Southern using approximate dynamic programming | |
JPH11143938A (en) | Resource assignment plan making method and system | |
JP2007196880A (en) | Yard work planning system, method and program |