JP5382844B2 - Transportation schedule creation system - Google Patents
Transportation schedule creation system Download PDFInfo
- Publication number
- JP5382844B2 JP5382844B2 JP2008040168A JP2008040168A JP5382844B2 JP 5382844 B2 JP5382844 B2 JP 5382844B2 JP 2008040168 A JP2008040168 A JP 2008040168A JP 2008040168 A JP2008040168 A JP 2008040168A JP 5382844 B2 JP5382844 B2 JP 5382844B2
- Authority
- JP
- Japan
- Prior art keywords
- information
- work
- base
- transportation
- transport
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
- 238000009826 distribution Methods 0.000 claims description 11
- 238000003860 storage Methods 0.000 claims description 6
- 238000000034 method Methods 0.000 description 85
- 230000032258 transport Effects 0.000 description 84
- 238000011156 evaluation Methods 0.000 description 8
- 238000004364 calculation method Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- 239000000123 paper Substances 0.000 description 2
- 238000002360 preparation method Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 1
- 230000002068 genetic effect Effects 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 238000002922 simulated annealing Methods 0.000 description 1
Images
Landscapes
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Description
本発明は、物流分野におけるトラック等の輸送スケジューリング作成を計算機で行う技術に関するものであり、具体的には計算機を利用した輸送計画の作成システムに関するものである。 The present invention relates to a technique for creating transportation schedules for trucks and the like in the field of physical distribution using a computer, and more specifically to a transportation plan creation system using a computer.
物流分野におけるトラック輸送等のスケジュールを計算機で作成するには、例えば非特許文献1に記載されているような線形計画法などの数理的な計算に基づくものや、スィープ法やNI法と言ったヒューリスティクスに基づくもの、また、非特許文献2に記載されているようなタブーサーチ、SA法(Simulated Annealing:焼きなまし法)、GA(Genetic Algorithm:遺伝的アルゴリズム)などメタヒューリスティクスと呼ばれる確率的手法を適用したものなど、多数の方式が用いられている。
In order to create a truck transportation schedule in the logistics field with a computer, for example, based on mathematical calculations such as linear programming as described in Non-Patent
これらの方式を具体的に物流分野に適用した技術で代表的なものとしては、例えば、下記特許文献1及び特許文献2に記載のものが知られている。
As typical techniques that specifically apply these methods to the physical distribution field, for example, those described in
特許文献1に記載のものは、複数の配送先への荷物輸送のスケジュール作成を効率化する方式である。この方式では、各荷物の届け先が複数の塊に割付けられ、該塊内での各届け先を結ぶ配送ルートを作成する。これにより、エリア全体での配送時間の短縮を図るものである。
The one described in
特許文献2に記載のものは、工場や物流センター、配送先などの拠点間の物流網の作成に、線形計画法や整数計画法などの数理的技法を適用したものである。この方式では、該文献の図に示されているように、工場や倉庫、配送先などの拠点をグラフのノードとして、ノード間のアークを荷物が流れるグラフで輸送を表現する。各アークには単位荷物量あたりの輸送コストや、そのアーク上を輸送できる上限荷物量、また、途中の物流センターの中継可能な荷物量上限などを与え、これを線形計画法や整数計画法でモデル化して問題を解き、荷物の出発地から最終目的地まで、どのような経路で輸送すれば物流網全体の輸送コストが最小になるかを決定する。
特許文献1に記載の技術は、車両は車庫などの始発拠点を出発して物流センターまで走行し、その物流センターで荷物を積載して配送先を巡回して出発した物流センターに戻る輸送形態を想定したものである。ここでは、物流センターから配送先への配送で説明しているが、集荷先から物流センターへの集荷を行う場合も同様である。
In the technology described in
しかし、実際の輸送では、ダンボールやパレットといった容器に、出発拠点と到着拠点が同一の複数荷物をまとめ、一括輸送したのち、物流センターでそれぞれの納入拠点への荷物として、容器の中身を再構成して輸送することがある。特許文献1のような手法では、物流センターでの容器の中身の再構成を考慮できないため、再構成前の荷物が物流センターに到着していない時刻から、再構成後の容器を輸送してしまうようなスケジュールを作成してしまい、矛盾が発生する可能性がある。また、再構成前後での容器は別々の車両に積載される可能性があるため、スケジュール時刻を決定するのに複数の車両に割り当てられた荷物を考慮しなければならなくなり、スケジュール作成を効率よく行うことができない。
However, in actual transportation, multiple packages with the same departure and arrival locations are put together in containers such as corrugated cardboard and pallet, and then transported in a lump, and then the contents of the containers are reconstructed as packages for each delivery site at the distribution center. May be transported. In the technique such as
本発明の目的は、物流センターでの容器の中身の再構成前後でのスケジュールの矛盾を回避し、効率的に輸送スケジュールを作成することにある。 An object of the present invention is to avoid a contradiction between schedules before and after the reconstruction of the contents of a container at a distribution center and efficiently create a transportation schedule.
上記の目的を達成するために、本発明は、物流センターでの容器の中身の構成をスケジュール作成前に予め行い、スケジュールの矛盾が発生しないような容器の中身の再構成の実行可能な時間枠を算出して調整することで、スケジュール作成時に複数車両間での作業時間の依存関係を意識せずにスケジュールの作成を行うことを特徴とする。 In order to achieve the above object, the present invention provides a time frame in which the contents of a container in a distribution center are configured in advance before creating a schedule, and the contents of the container can be reconfigured so as not to cause a contradiction in the schedule. By calculating and adjusting the schedule, the schedule is created without being aware of the dependency of work time among a plurality of vehicles when creating the schedule.
すなわち、本発明は、少なくとも入出力装置と処理装置と記憶装置とを有し、複数の物流センターを含む物流網で出荷拠点から納入拠点への荷物の輸送を行う車両の輸送スケジュールを作成する輸送スケジュール作成システムであって、物流センターと荷物の出荷・納入拠点の位置情報を含む拠点情報を登録する拠点情報登録手段と、注文された各荷物の重量、容積、出荷・納入拠点、および出荷・納入の時間制約を含む注文情報を入力する注文情報登録手段と、前記荷物の出荷・納入拠点の組合せ毎に、前記物流網上での中継拠点を設定する中継拠点情報登録手段と、物流センター、出荷拠点、納入拠点、荷積み拠点、および/または荷下ろし拠点の各拠点が有する輸送車両数、およびそれらの輸送車両の積載重量上限と積載容積上限を含む輸送車両情報を入力する輸送車両情報登録手段と、前記中継拠点情報によって分けられた各注文の輸送経路の荷積み拠点と荷下ろし拠点が同一の注文を容器に集約した容器輸送経路情報を生成する容器輸送経路情報生成手段と、前記容器輸送経路情報の各経路を荷積みと荷下ろしの作業ごとに分割した輸送作業情報を生成するとともに、該輸送作業情報が含む作業開始可能時刻と作業開始限界時刻を、各注文の荷物が最も早く輸送されるスケジュールと最も遅く輸送されるスケジュールに基づいて設定する輸送作業情報生成手段と、同一注文荷物を共有する別々の容器または経路において、その荷積み作業と荷下ろし作業が実行可能な時間枠が重複しないように、前記輸送作業情報の作業開始可能時刻と作業開始限界時刻を調整する時間枠設定手段と、前記拠点情報、注文情報、中継拠点情報、輸送車両情報、容器輸送経路情報、および輸送作業情報を用いて、前記輸送作業情報が示す荷積み作業と荷下ろし作業を輸送車両に割り当てることにより、輸送スケジュールを作成する輸送スケジュール作成手段と、作成した輸送スケジュールを出力するスケジュール出力手段とを備えたことを特徴とする。 That is, the present invention provides a transportation schedule for a vehicle that has at least an input / output device, a processing device, and a storage device, and that transports cargo from a shipping base to a delivery base in a logistics network including a plurality of logistics centers. A schedule creation system that registers location information including location information of distribution centers and shipment / delivery locations of packages, as well as the weight, volume, shipment / delivery locations, and shipment / delivery locations of each ordered package Order information registration means for inputting order information including delivery time constraints, relay base information registration means for setting a relay base on the physical distribution network for each combination of shipment and delivery base of the package, a distribution center, shipping site, delivery site, loading site, and / or unloading a transport vehicle number included in each site of the site, and including a loading weight limit and the load capacity limit of their transport vehicles Transport vehicle information registration means for inputting transport vehicle information, and container transport route information in which orders with the same loading and unloading bases for each order transport route divided by the relay base information are collected in a container are generated. Container transport route information generating means, transport work information generated by dividing each route of the container transport route information for each work of loading and unloading, and work start possible time and work start limit included in the transport work information Transportation work information generation means that sets the time based on the schedule that each ordered package is transported earliest and the schedule that is transported latest, and the loading operation in separate containers or routes that share the same ordered package and as unloading filter paper work viable time frame do not overlap, the time frame for adjusting the work start enabled time and work start limit time of the transport task information A constant section, the location information, order information, the relay base information, transportation vehicle information, container transport path information, and by using the transport work information, transport vehicle loading operations and unloading filter paper work the transport work information indicates It is characterized by comprising a transportation schedule creation means for creating a transportation schedule and a schedule output means for outputting the created transportation schedule.
本発明によれば、複数の物流センターが含まれる物流網上の輸送スケジュールを作成することができる。特に、出発拠点と到着拠点が同一の複数荷物を容器にまとめ、一括輸送したのち、物流センターでそれぞれの納入拠点への荷物として、容器の中身を再構成して輸送する場合に、再構成前の荷物が到着していないのに再構成後の容器を輸送してしまうようなスケジュールを作成することがなく、矛盾が発生しないスケジュールを作成することができる。また、再構成前後での容器が別々の車両に積載される場合でも、スケジュール作成を効率よく行うことができる。 According to the present invention, it is possible to create a transportation schedule on a distribution network including a plurality of distribution centers. This is especially true when multiple packages with the same starting and arriving locations are packed in a container and shipped in bulk, and then the contents of the container are reconstructed and transported as a package to each delivery location at the distribution center. Therefore, it is possible to create a schedule in which no contradiction occurs without creating a schedule for transporting the reconstituted container even though the package has not arrived. Moreover, even when containers before and after reconfiguration are loaded on different vehicles, it is possible to efficiently create a schedule.
以下、本発明の実施の形態を図面に従って説明する。 Hereinafter, embodiments of the present invention will be described with reference to the drawings.
図1は、本実施形態のシステムを示す全体構成図である。本システムは、入力装置(101)、プリンタなどの出力装置(102)、ディスプレイなどの表示装置(103)、処理装置(104)、および記憶装置(109)を備える。処理装置(104)は、入力処理部(106)、輸送スケジュール作成部(107)、および結果出力部(108)を含む一連のプログラム(105)を実行する。また、記憶装置(109)には、拠点情報(110)、拠点間中継情報(111)、注文情報(112)、輸送車両情報(113)、距離テーブル(114)、容器輸送経路情報(115)、輸送作業情報(116)、道路地図(117)、および、これらから作成される輸送スケジュール情報(118)が格納される。 FIG. 1 is an overall configuration diagram showing a system of this embodiment. The system includes an input device (101), an output device (102) such as a printer, a display device (103) such as a display, a processing device (104), and a storage device (109). The processing device (104) executes a series of programs (105) including an input processing unit (106), a transportation schedule creation unit (107), and a result output unit (108). The storage device (109) includes base information (110), inter-base relay information (111), order information (112), transport vehicle information (113), distance table (114), and container transport route information (115). , Transportation work information (116), road map (117), and transportation schedule information (118) created therefrom are stored.
図2は、記憶装置(109)に格納される情報の一例を示したものである。 FIG. 2 shows an example of information stored in the storage device (109).
拠点情報(110)には、物流センターや注文の出荷納入拠点などの拠点ごとに、その拠点を一意に識別する拠点ID(201)、その拠点の名称(202)、その拠点の住所(203)、および、その拠点の緯度(204)と経度(205)が格納される。拠点間中継情報(111)には、荷物を出荷拠点から納入拠点に輸送する場合に、その荷物が途中で経由する中継拠点つまり物流センターの情報が格納されている。具体的には、出荷拠点ID(206)、納入拠点ID(207)、その出荷拠点から納入拠点まで荷物を輸送する場合に経由する中継拠点の数N(208)、および、それら中継拠点のIDの配列(209〜212)が格納される。なお、この例では、出荷拠点は中継拠点0(209)、納入拠点は中継拠点N−1(212)としても格納されるものとし、拠点数N(208)は出荷拠点と納入拠点も含めた荷物の積み降ろし作業を行う全拠点の総数として格納されるものとする。 The base information (110) includes a base ID (201) for uniquely identifying the base, a base name (202), and a base address (203) for each base such as a distribution center or an order shipment / delivery base. And the latitude (204) and longitude (205) of the base are stored. The inter-base relay information (111) stores information on a relay base, that is, a distribution center through which the parcel passes through when the parcel is transported from the shipping base to the delivery base. Specifically, the shipping base ID (206), the delivery base ID (207), the number N of relay bases (208) through which the package is transported from the shipping base to the delivery base, and the IDs of these relay bases Are stored (209 to 212). In this example, the shipping base is also stored as the relay base 0 (209), the delivery base is also stored as the relay base N-1 (212), and the number of bases N (208) includes the shipping base and the delivery base. It shall be stored as the total number of all sites that carry out loading and unloading work.
注文情報(112)には、注文された荷物を一意に識別する注文ID(213)、その荷物の出荷拠点ID(214)、その荷物の納入拠点ID(215)、その荷物の重量(216)と容積(217)、出荷拠点から出荷可能になる時刻を示す出荷時刻(218)、および、納入拠点への到着の締め切り時刻を示す納入時刻(219)が格納される。輸送車両情報(113)には、各拠点の保有する車両の情報を格納する。具体的には、車両を保有する拠点の拠点ID(220)、その拠点の保有車両数(221)、その保有車両の積載重量上限(222)と積載容積上限(223)が格納される。距離テーブル(114)には、スケジュール作成で必要になる、拠点間の車両などの輸送便での走行距離に関する情報が格納される。具体的には、出発拠点の拠点ID(224)、到着拠点の拠点ID(225)、それらの拠点間の距離(226)、およびそれらの拠点間を車両で走行する場合の所要時間(227)が格納される。 The order information (112) includes an order ID (213) for uniquely identifying the ordered package, a shipment site ID (214) for the package, a delivery site ID (215) for the package, and a weight (216) for the package. And a volume (217), a shipping time (218) indicating a time at which shipping can be performed from the shipping base, and a delivery time (219) indicating a deadline for arrival at the delivery base are stored. In the transport vehicle information (113), information on vehicles owned by each base is stored. Specifically, the site ID of the site carrying the vehicles (220) holding the number of vehicles that bases (221), the load weight limit fleet and (222) loading volume limit (223) is stored. The distance table (114) stores information related to the travel distance on a transportation flight such as a vehicle between bases, which is necessary for schedule creation. Specifically, the base ID (224) of the departure base, the base ID (225) of the arrival base, the distance (226) between the bases, and the time required for traveling between the bases (227) Is stored.
容器輸送経路情報(115)には、注文情報(112)の各輸送経路ごとに、荷積み拠点と荷下ろし拠点が同一のものを、ダンボールやパレットなどの容器にまとめた情報を格納する。具体的には、容器を特定するID(228)、その容器の輸送経路の順を表す経路番号(229)、経路総数(230)、その容器に詰められた注文荷物の総重量(231)、現在の空き容積(232)、その容器に詰められた注文ID(233)、および、その注文IDの荷物の荷積みを行う中継拠点番号(234)が格納される。なお、1つの容器IDに対して複数の注文IDとその中継拠点番号を対応付けるものとする。例えば、注文ID=T001の荷物についてはその注文情報(112)から出荷拠点と納入拠点が分かり、さらに拠点間中継情報(111)を参照することで該出荷拠点から該納入拠点に至るまでの中継拠点が拠点0→拠点1→…→拠点N−1のように分かる(なお、拠点間中継情報(111)の拠点0、拠点1、…、拠点N−1はそれぞれ拠点IDを格納する領域を示しているものであり、実際の中継拠点はそれらの各領域に格納されている拠点IDで特定される)。その拠点0→拠点1の経路で当該注文ID=T001の荷物は所定の容器に詰められて輸送され、次の拠点1→拠点2の経路では別の容器に詰め替えて輸送され、…というようにして拠点N−1(納入拠点)まで輸送されるので、例えば拠点0→拠点1の経路で当該注文ID=T001の荷物を容器ID=Y001の容器に詰めて輸送するのであれば該容器IDかつ該注文IDの容器輸送経路情報のレコード(この場合、該拠点0で示される拠点が荷積みの拠点であるから、中継拠点番号(234)には0が格納される)が1つ作られ、次の拠点1→拠点2の経路で当該注文ID=T001の荷物を容器ID=Y002の容器に詰めて輸送するのであれば該容器IDかつ該注文IDの容器輸送経路情報のレコード(この場合、該拠点1で示される拠点が荷積みの拠点であるから、中継拠点番号(234)には1が格納される)が1つ作られ、…というように容器輸送経路情報のレコードが作られる。
The container transport route information (115) stores information in which the same loading base and unloading base are collected in containers such as cardboard and pallets for each transport route of the order information (112). Specifically, an ID (228) for identifying a container, a route number (229) indicating the order of the transportation route of the container, a total number of routes (230), a total weight (231) of an ordered package packed in the container, The current empty volume (232), the order ID (233) packed in the container, and the relay base number (234) for loading the package with the order ID are stored. A plurality of order IDs and their relay base numbers are associated with one container ID. For example, for a package with order ID = T001, the shipping base and delivery base can be known from the order information (112), and the relay from the shipping base to the delivery base can be made by referring to the inter-base relay information (111). The base is known as
さらに、1つの容器は、ある拠点から次の拠点に輸送された後、また荷物が詰め替えられてその拠点から次の拠点へと輸送されていくので、同じ容器ID(228)で、それが輸送されていく経路の順番で経路番号(229)を1,2,3,…の順に付けた複数の容器輸送経路情報レコードが作られることになる。また、1つの容器が1つの経路を輸送される際には、その容器に幾つかの注文IDに対応する荷物が詰められるので、同一容器ID(228)かつ同一経路番号(229)でその荷物数分の容器輸送経路情報レコードが作られる。それら同一容器ID(228)かつ同一経路番号(229)の荷物数分の容器輸送経路情報レコードは、その容器に詰められて輸送される荷物の注文IDごとに作られ、それらの各レコードの経路総数(230)と重量(231)と空き容積(232)はそれぞれ同一である。また、同一容器ID(228)かつ同一経路番号(229)の各レコードの注文ID(233)とその中継拠点番号(234)が表す実際の経路、つまり荷積み拠点と荷下ろし拠点は全て同一となる。例えば、同一容器ID=Y001かつ同一経路番号の容器輸送経路情報レコードが3レコードあり、1つ目のレコードは注文ID=T001かつ中継拠点番号=0、2つ目のレコードは注文ID=T002かつ中継拠点番号=2、3つ目のレコードは注文ID=T003かつ中継拠点番号=5であったとすると、注文ID=T001の荷物の経路のうち拠点0→拠点1の実際の経路と、注文ID=T002の経路のうち拠点2→拠点3の実際の経路と、注文ID=T003の経路のうち拠点5→拠点6の実際の経路とは同一であるということである。
Furthermore, after one container is transported from one base to the next base, the package is refilled and transported from the base to the next base, so that it is transported with the same container ID (228). A plurality of container transport route information records with route numbers (229) in the order of 1, 2, 3,. Further, when one container is transported through one route, since the package is packed with packages corresponding to several order IDs, the package with the same container ID (228) and the same route number (229). Several minutes of container transport route information records are created. Container transport route information records for the number of packages of the same container ID (228) and the same route number (229) are created for each order ID of the package packed and transported in the container, and the route of each of these records The total number (230), weight (231) and free volume (232) are the same. Further, the actual route indicated by the order ID (233) and the relay base number (234) of each record having the same container ID (228) and the same route number (229), that is, the loading base and the unloading base are all the same. Become. For example, there are three container transport route information records with the same container ID = Y001 and the same route number, the first record is order ID = T001 and the relay base number = 0, and the second record is order ID = T002 and Assuming that the relay base number = 2 and the third record have the order ID = T003 and the relay base number = 5, the actual route from the
輸送作業情報(116)には、容器輸送経路情報(115)の各容器IDとその輸送経路に対して、経路の端点である出発拠点の荷積み作業と到着拠点の荷下ろし作業ごとに分割し、それらの各作業が実行可能な時間枠を表す情報を格納する。具体的には、作業を特定するID(235)、容器ID(236)、容器の経路番号(237)、作業を行う拠点のID(238)、荷積みまたは荷下ろし作業を表す作業内容(239)、容器重量や容積に応じて積み下ろし作業にかかる作業時間(240)、作業が開始できる時刻を表す作業開始可能時刻(241)、および、作業を開始しなければならない限界の時刻を表す作業開始限界時刻(242)を格納する。容器ID(236)と容器の経路番号(237)が与えられれば、容器輸送経路情報(115)を参照することで、その容器かつ経路で輸送すべき全注文の注文IDと当該経路の出発拠点が分かる。また、それらの注文の中の1つの注文情報を参照して出荷納入拠点を取得し、さらにその出荷納入拠点に対応する拠点間中継情報(111)を参照することで、当該経路の出発拠点に対応する到着拠点も分かる。当該経路の出発拠点ではそれらの注文の荷物の荷積み作業を行い、到着拠点ではそれらの注文の荷物の荷下ろし作業を行うから、輸送作業情報(116)は、当該荷積み作業で1レコード、当該荷下ろし作業で1レコードが作成されることになる。これらの各作業毎の作業開始可能時刻(241)から作業開始限界時刻(242)までの時間枠は、要するに、その作業(荷積みまたは荷下ろし)を開始する時間がその時間枠に入っている必要がある時間帯を表わしているから、各車両にこれらの作業を割り当て、かつ、割り当てたときに上記時間枠の制限を満たしているようにして、輸送スケジュールを作成すればよい。 The transportation work information (116) is divided for each container ID of the container transportation route information (115) and its transportation route for each loading operation at the departure point and unloading operation at the arrival point, which are the end points of the route. , Information representing a time frame in which each of these operations can be performed is stored. Specifically, an ID (235) for specifying the work, a container ID (236), a route number (237) of the container, an ID of the base where the work is performed (238), and a work content (239) representing the loading or unloading work. ), Work time for loading / unloading work according to container weight and volume (240), work start possible time (241) indicating the time when the work can be started, and work start indicating the limit time at which the work must be started The limit time (242) is stored. If the container ID (236) and the container route number (237) are given, the container transport route information (115) is referred to, and the order ID of all orders to be transported by the container and the route and the starting point of the route I understand. In addition, by referring to one order information in the order, a shipping delivery base is obtained, and further, by referring to the inter-base relay information (111) corresponding to the shipping delivery base, the departure base of the route is obtained. The corresponding arrival base is also known. At the departure point of the route, the load work of those orders is carried out, and at the arrival point, the work of unloading those orders is carried out. Therefore, the transportation work information (116) includes one record, One record is created by the unloading work. The time frame from the work start possible time (241) to the work start limit time (242) for each of these works is, in short, the time for starting the work (loading or unloading) is included in the time frame. Since the necessary time zone is represented, it is only necessary to assign these operations to each vehicle, and to create a transportation schedule so that the time frame restrictions are satisfied when assigned.
なお、不図示であるが、道路地図(117)は、上記距離テーブル(114)の作成に必要な拠点間距離の計算や結果の出力に用いるための輸送区域の道路情報を示す。 Although not shown, the road map (117) indicates road information of a transportation area to be used for calculating the distance between bases necessary for creating the distance table (114) and outputting the result.
図3は、輸送スケジュール作成部(107)で作成される輸送スケジュール情報(118)の一例を示している。輸送スケジュール情報(118)は、本発明に係る方法によって作成される輸送計画中で輸送車両が巡回する拠点での作業を、それら作業の順番に従って並べたものである。具体的には、車両No(301)、出発拠点ID(302)、当該車両に割り当てられた作業数(303)、および、割り当てられた作業ID(304,305,…)からなる。ここでの作業とは、輸送作業情報(116)で与えられている輸送作業情報レコードを指し、この例では拠点での荷積みまたは荷下ろし作業をそれぞれ1作業としている。 FIG. 3 shows an example of the transportation schedule information (118) created by the transportation schedule creation unit (107). The transportation schedule information (118) is obtained by arranging the work at the base where the transportation vehicle circulates in the transportation plan created by the method according to the present invention according to the order of the work. Specifically, it consists of the vehicle number (301), the departure base ID (302), the number of tasks assigned to the vehicle (303), and the assigned task IDs (304, 305,...). The work here refers to a transport work information record given in the transport work information (116). In this example, one work is performed for loading or unloading work at the base.
図4は、図1中の処理装置(104)が実行するプログラム(105)の概要を示すフローチャートである。まず入力処理(ステップ401)で、拠点情報(110)、拠点間中継情報(111)、注文情報(112)、輸送車両情報(114)等の輸送スケジュールを作成するために必要な情報をユーザが入力(登録)し、それらの情報に従って容器輸送経路情報(115)と輸送作業情報(116)を生成する。この処理の詳細は図5で後述する。次の輸送スケジュール作成処理(ステップ402)では、入力処理ステップで与えられた条件に合致する輸送スケジュールを作成する。ここで輸送スケジュールの作成とは、入力された全ての注文荷物を、それぞれの出荷拠点から納入拠点に届ける車両が従うスケジュールを決定することを指す。この処理の詳細は図9で後述する。次に、結果出力処理(ステップ403)では、作成した輸送スケジュールを出力する。この処理の詳細は図12で後述する。 FIG. 4 is a flowchart showing an outline of the program (105) executed by the processing apparatus (104) in FIG. First, in the input process (step 401), the user obtains information necessary for creating a transportation schedule such as base information (110), inter-base relay information (111), order information (112), transport vehicle information (114), and the like. Input (register), and generate container transport route information (115) and transport work information (116) according to the information. Details of this processing will be described later with reference to FIG. In the next transportation schedule creation process (step 402), a transportation schedule that matches the conditions given in the input processing step is created. Here, the creation of a transportation schedule refers to determining a schedule to be followed by a vehicle that delivers all input package orders from each shipping base to a delivery base. Details of this processing will be described later with reference to FIG. Next, in the result output process (step 403), the created transportation schedule is output. Details of this processing will be described later with reference to FIG.
図5は、図4中の入力処理(ステップ401)の詳細を示すフローチャートである。まず、拠点情報登録処理(ステップ501)で、拠点情報(110)の登録を行う。次に、注文情報登録処理(ステップ502)で、注文情報(112)の登録を行う。次に、輸送車両情報登録処理(ステップ503)で、輸送車両情報(113)の登録を行う。次に、距離テーブル生成処理(ステップ504)で、拠点間の距離と車両による走行所要時間を道路地図(117)を参照して生成し、距離テーブル(114)を生成する。なお、道路地図(117)は予め用意されているものとする。次に、拠点間中継情報登録処理(ステップ505)で、拠点間中継情報(111)の登録を行う。 FIG. 5 is a flowchart showing details of the input process (step 401) in FIG. First, the base information (110) is registered in the base information registration process (step 501). Next, in the order information registration process (step 502), the order information (112) is registered. Next, in the transportation vehicle information registration process (step 503), the transportation vehicle information (113) is registered. Next, in the distance table generation process (step 504), the distance between the bases and the required travel time by the vehicle are generated with reference to the road map (117) to generate the distance table (114). The road map (117) is prepared in advance. Next, in the inter-base relay information registration process (step 505), inter-base relay information (111) is registered.
次に、容器輸送経路情報生成処理(ステップ506)では、ステップ502,505で登録した注文情報(112)と拠点間中継情報(111)を用いて容器輸送経路情報(115)を作成する処理を行う。この処理の詳細は図6で後述する。輸送作業情報生成処理(ステップ507)では、ステップ506で生成された容器輸送経路情報(115)をもとに、車両に割り当てる輸送作業を表す輸送作業情報(116)を生成する処理を行う。この処理の詳細は図7に後述する。時間枠設定処理(ステップ508)では、ステップ507で生成された輸送作業情報(116)の作業時間枠(作業開始可能時刻(241)と作業開始限界時刻(242))を設定する処理を行う。この処理の詳細は図8で後述する。
Next, in the container transportation route information generation process (step 506), the container transportation route information (115) is created using the order information (112) registered in
図6は、図5中の容器輸送経路情報生成処理(ステップ506)の詳細を示すフローチャートである。まず、容器輸送経路情報テーブルcaseを空にする(ステップ601)。容器輸送経路情報テーブルcaseは、作成した容器輸送経路情報(115)の各レコードを設定するテーブルである。次に、注文情報テーブルorderに登録されている注文情報(112)のレコードを容積の大きい順にソートする(ステップ602)。注文情報テーブルorderは、図5のステップ502で登録された注文情報(112)の全レコードを格納したテーブルである。次に、orderのインデクス変数iに0を代入する(ステップ603)。次に、iと注文数を比較する(ステップ604)。iが注文数以上の場合は、全ての注文に対して容器輸送経路情報(115)を作成し終えたということであるから、処理を終了する。iが注文数未満の場合はステップ605に進む。
FIG. 6 is a flowchart showing details of the container transport route information generation process (step 506) in FIG. First, the container transport route information table case is emptied (step 601). The container transport route information table “case” is a table for setting each record of the created container transport route information (115). Next, the records of the order information (112) registered in the order information table order are sorted in descending order of volume (step 602). The order information table order is a table that stores all records of the order information (112) registered in
次に、変数Pに、order[i]の注文情報レコードの出荷納入拠点ID(214,215)と一致する出荷納入拠点ID(206,207)を持つ拠点間中継情報(111)のレコードを代入する(ステップ605)。変数Pは図2の拠点間中継情報(111)のフォーマットを持ち、ステップ605で注文情報order[i]の注文に対応する拠点間中継情報が代入されたことになる。次に、中継拠点の位置を示すインデックス変数rに0を代入する(ステップ606)。次に、rとPの拠点数−1を比較する(ステップ607)。rの方が小さい場合はステップ608に進み、そうでない場合はステップ616に進む。
Next, the record of the inter-base relay information (111) having the shipping delivery base ID (206, 207) that matches the shipping delivery base ID (214, 215) of the order information record of order [i] is substituted for the variable P. (Step 605). The variable P has the format of the inter-base relay information (111) in FIG. 2, and the inter-base relay information corresponding to the order of the order information order [i] is substituted in
次に、変数bfにPのr番目の中継拠点ID(Pの中継拠点rの拠点ID)を代入し、btにPのr+1番目の中継拠点ID(Pの中継拠点r+1の拠点ID)を代入し、新規の容器輸送経路情報レコードN(ワーク領域)を準備し、該Nにorder[i]の注文IDと中継拠点番号rを代入する(ステップ608)。次に、ワーク用の配列Kに、caseの中の容器輸送経路情報レコードのうち、空き容積がorder[i]の容積以上でかつ拠点bfから拠点btへ輸送する全てのレコードを格納する(ステップ609)。次に、Kのレコード数を調べる(ステップ610)。レコード数が1以上ならステップ611に進み、0ならステップ613に進む。ステップ611に進むのは、要するにorder[i]の注文の荷物を詰めることができる容器が見つかった場合である。なお、図2(b)から分かるように、拠点間中継情報(111)の各中継拠点を特定するインデックスは0から開始するが、説明の便宜のため、中継拠点rをr番目の中継拠点、中継拠点r+1をr+1番目の中継拠点というように呼ぶことがある(以下、0から開始されるインデックスについては同様)。 Next, P's r-th relay base ID (base ID of P's relay base r) is substituted for variable bf, and P's r + 1-th relay base ID (base ID of P's relay base r + 1) is substituted for bt. Then, a new container transport route information record N (work area) is prepared, and the order ID of the order [i] and the relay base number r are substituted for N (step 608). Next, among the container transport route information records in the case, all records that have an empty volume equal to or larger than the order [i] volume and transport from the base bf to the base bt are stored in the work array K (step S1). 609). Next, the number of records of K is checked (step 610). If the number of records is 1 or more, the process proceeds to step 611, and if it is 0, the process proceeds to step 613. In other words, the process proceeds to step 611 when a container that can be packed with an order [order] is found. As can be seen from FIG. 2B, the index for identifying each relay site in the inter-base relay information (111) starts from 0. However, for convenience of explanation, the relay site r is designated as the r-th relay site, The relay base r + 1 may be referred to as the (r + 1) th relay base (the same applies to the index starting from 0 below).
配列Kに1以上のレコードがある場合、容器輸送経路情報レコードNに、K[0](複数の容器が見つかった場合、最初の1個目を利用する)の、容器ID、経路番号、経路総数、重量、および空き容積をコピーする(ステップ611)。次に、NとKの全レコードに対して、重量に注文重量(order[i]の重量)を加算し、空き容積から注文容積(order[i]の容積)を減算する(ステップ612)。ステップ610でKにレコードがなかった場合は、要するにorder[i]の注文の荷物を詰めることができる容器が見つからなかったということであるから、Nの容器IDに新規の容器IDを代入し、経路番号に1を、経路総数に1を、重量に注文重量を、空き容積に容器容積から注文容積を引いたものを、それぞれ代入する(ステップ613)。
When there are one or more records in the array K, the container ID, path number, and path of K [0] (use the first one when a plurality of containers are found) in the container transport path information record N The total number, weight, and free volume are copied (step 611). Next, for all the records of N and K, the order weight (order [i] weight) is added to the weight, and the order volume (order [i] volume) is subtracted from the free volume (step 612). If there is no record in K in
次に、Nを容器輸送経路情報(115)のテーブルcaseに追加する(ステップ614)。次にrに1を加えて(ステップ615)、ステップ607に戻る。ステップ607でrがPの拠点数−1以上なら、iに1を加えて(ステップ616)、ステップ604に戻る。なお、上記の配列Kは、ポインタ変数を利用して容器輸送経路情報テーブルcase内のレコードを直接アクセスしているので、ステップ612における配列Kへの修正はそのまま容器輸送経路情報テーブルcase内のレコードに反映されるものとする。
Next, N is added to the table case of the container transport route information (115) (step 614). Next, 1 is added to r (step 615), and the process returns to step 607. If r is greater than or equal to the number of sites P-1 in
図7は、図5中の輸送作業情報生成処理(ステップ507)の詳細を示すフローチャートである。まず、容器輸送経路情報(115)の各容器IDとその各経路番号に対し、その経路の出発拠点での荷積み作業と到着拠点での荷下ろし作業の2作業を輸送作業情報workに格納する(ステップ701)。この処理は、容器輸送経路情報(115)の全レコードを容器ID(228)と経路番号(229)が同じもの同士でグループ分けし、その1グループに対してその経路の出発拠点での荷積み作業の輸送作業情報レコードと到着拠点での荷下ろし作業の輸送作業情報レコードを作成し、作成した全ての輸送作業情報レコードをworkに格納するものである。この際、輸送作業情報レコードの作業ID(235)は各作業を特定できるIDを格納し、容器ID(236)、経路番号(237)、作業拠点ID(238)、作業内容(239)、および作業時間(240)についても容器輸送経路情報やそこから探索した情報から求めた値を格納するものとする。 FIG. 7 is a flowchart showing details of the transportation work information generation process (step 507) in FIG. First, for each container ID and each route number in the container transport route information (115), two operations, loading work at the departure base and unloading work at the arrival base, are stored in the transport work information work. (Step 701). In this process, all the records of the container transport route information (115) are grouped with the same container ID (228) and route number (229), and the loading at the starting point of the route is performed for the one group. A transport work information record of work and a transport work information record of unloading work at the arrival site are created, and all the created transport work information records are stored in the work. At this time, the work ID (235) of the transport work information record stores an ID for identifying each work, and the container ID (236), the route number (237), the work base ID (238), the work content (239), and As for the work time (240), a value obtained from the container transportation route information and information searched from the container transportation route information is stored.
次に、ステップ701で作成したworkの全輸送作業情報レコードの作業開始可能時刻(241)に0を、作業開始限界時刻(242)にMaxValueを、それぞれ代入する(ステップ702)。ここでMaxValueは計算機で扱える整数の最大値である。次に、注文情報インデクス変数iに0を代入する(ステップ703)。次に、iと注文数を比較する(ステップ704)。iが注文数以上なら処理を終了する。iが注文数未満なら以下の処理を実行する。 Next, 0 is assigned to the work start possible time (241) and MaxValue is assigned to the work start limit time (242) of the all transport work information record created in step 701 (step 702). Here, MaxValue is the maximum value of an integer that can be handled by a computer. Next, 0 is substituted into the order information index variable i (step 703). Next, i is compared with the number of orders (step 704). If i is greater than the number of orders, the process is terminated. If i is less than the number of orders, the following processing is executed.
まず、注文order[i]の荷物を最も早く輸送できるスケジュールをoFastに格納し、さらにorder[i]の輸送をこれ以上遅らせることができない最遅のスケジュールをoLateに格納する(ステップ705)。これらのスケジュールは、当該注文の出荷時刻と納入時刻、拠点間中継情報、および距離テーブルから算出する。oFastとoLateのフォーマットは図3の輸送スケジュール情報と同様のものでよいが、特に、注文order[i]の荷物を出荷拠点から納入拠点まで中継拠点0→1→…→N−1と輸送する場合の各中継拠点での荷積み作業と荷下ろし作業の作業IDとその作業開始時刻が格納されていればよい。
First, the schedule that can transport the order “order [i]” earliest is stored in oFast, and the latest schedule that cannot further delay the transport of “order [i]” is stored in oLate (step 705). These schedules are calculated from the shipping time and delivery time of the order, the relay information between bases, and the distance table. The format of oFast and oLate may be the same as the transport schedule information in FIG. 3, but in particular, the order order [i] is transported from the shipping base to the delivery base as
次に、注文order[i]の荷物を中継する各中継拠点を特定するためのインデックス変数rに0を代入する(ステップ706)。次に、rとorder[i]の中継拠点数を比較する(ステップ707)。rが中継拠点数−1以上ならステップ715に進み、iに1を加えて(ステップ715)、ステップ704に戻る。ステップ707でrが拠点数−1未満なら以下の処理を実行する。なお、以下で「中継拠点r」と言っているのは、注文order[i]の注文情報の出荷納入拠点(213,214)と同じ出荷納入拠点(206,207)を持つ拠点間中継情報(111)の中継拠点0,1,…,N−1(209〜212)のうち、インデックスrで特定される中継拠点rを示すものである。
Next, 0 is substituted into an index variable r for specifying each relay base that relays the package of the order order [i] (step 706). Next, the number of relay bases of r and order [i] is compared (step 707). If r is greater than or equal to the number of relay stations −1, the process proceeds to step 715, 1 is added to i (step 715), and the process returns to step 704. If r is less than the number of bases-1 in
まず、変数Wuに注文order[i]の中継拠点r→r+1の経路を含む容器の中継拠点rにおける荷積み作業レコード(workに展開されている輸送作業情報レコードのうち、order[i]の荷物を詰めてその中継拠点r→r+1の経路を輸送する容器の容器IDと経路番号を持つ容器輸送経路情報レコードから作成した中継拠点rにおける荷積み作業を示す輸送作業情報レコード)を代入する(ステップ708)。次に、Wuの作業開始可能時刻(241)を、当該作業開始可能時刻(241)の現在値とoFastに格納されている当該作業の作業開始時刻とのmaxをとって、更新する(ステップ709)。同様に、Wuの作業開始限界時刻(242)を、当該作業開始限界時刻(242)の現在値とoLateに格納されている当該作業の作業開始時刻とのminをとって、更新する(ステップ710)。次に、変数Wdに注文order[i]の中継拠点r→r+1の経路を含む容器の中継拠点r+1における荷下ろし作業レコード(workに展開されている輸送作業情報レコードのうち、order[i]の荷物を詰めてその中継拠点r→r+1の経路を輸送する容器の容器IDと経路番号を持つ容器輸送経路情報レコードから作成した中継拠点r+1における荷下ろし作業を示す輸送作業情報レコード)を代入する(ステップ711)。次に、Wdの作業開始可能時刻(241)を、当該作業開始可能時刻(241)の現在値とoFastに格納されている当該作業の作業開始時刻とのmaxをとって、更新する(ステップ712)。同様に、Wdの作業開始限界時刻(242)を、当該作業開始限界時刻(242)の現在値とoLateに格納されている当該作業の作業開始時刻とのminをとって、更新する(ステップ713)。次に、rに1を加えて(ステップ714)、ステップ707に戻る。なお、ステップ708から713ではwork内の作業レコードを直接WuやWdでアクセスするので、ステップ709,710,712,713におけるデータの更新はwork内の作業レコードの更新となる。
First, a load work record at a container relay base r including a route of the order order [i] of the order “order [i]” in the variable Wu (the package of order [i] among the transport work information records developed in the work) (Transportation work information record indicating the loading operation at the relay site r created from the container transport route information record having the container ID and the route number of the container that transports the route of the relay site r → r + 1 by substituting 708). Next, the work start possible time (241) of Wu is updated by taking the max between the current value of the work start possible time (241) and the work start time of the work stored in oFast (step 709). ). Similarly, the work start limit time (242) of Wu is updated by taking the min between the current value of the work start limit time (242) and the work start time of the work stored in oLate (step 710). ). Next, the unloading work record at the transit point r + 1 of the container including the route of the order “order [i] r → r + 1 in the variable Wd (of the order [i] of the transport work information records developed in the work) (Transportation work information record indicating unloading work at the relay site r + 1 created from the container transport route information record having the container ID and route number of the container packed with the package and transporting the route of the relay site r → r + 1) is substituted ( Step 711). Next, the work start possible time (241) of Wd is updated by taking the max between the current value of the work start possible time (241) and the work start time of the work stored in oFast (step 712). ). Similarly, the work start limit time (242) of Wd is updated by taking the min between the current value of the work start limit time (242) and the work start time of the work stored in oLate (step 713). ). Next, 1 is added to r (step 714), and the process returns to step 707. In
上記の処理により、全ての注文の全ての経路(中継拠点間経路)に対してステップ708〜710が実行されるので、各拠点間経路の出発拠点での荷積み作業に関する輸送作業情報レコードにおいては、そこで荷積みする全ての注文の最早輸送スケジュールの作業開始時刻のmaxを採って作業開始可能時刻(241)とし、そこで荷積みする全ての注文の最遅輸送スケジュールの作業開始時刻のminを採って作業開始限界時刻(242)としている。設定された作業開始可能時刻(241)は、それらの注文の荷物が最も早く輸送されるスケジュールのうちで最も遅い時刻であるから、要するにそれらの荷物の荷積み作業が開始できるようになる時刻を示している。また、設定された作業開始限界時刻(242)は、それらの注文の荷物が最も遅く輸送されるスケジュールのうちで最も早い時刻であるから、要するにそれらの荷物の荷積み作業を遅くともこの時刻までに開始しなければならない限界の時刻を示している。ステップ711〜713の荷下ろし側も同様である。
By the above processing, steps 708 to 710 are executed for all routes (routes between relay bases) of all orders. Therefore, in the transportation work information record regarding the loading work at the departure base of each inter-base route, Then, taking the max of the work start time of the earliest transport schedule of all orders to be loaded there to make the work start possible time (241), and taking the min of the work start time of the latest transport schedule of all orders to be loaded there The work start limit time (242) is set. Since the set work start possible time (241) is the latest time in the schedule in which the packages of the orders are transported earliest, the time at which the loading operation of the packages can be started in short. Show. In addition, since the set work start limit time (242) is the earliest time in the schedule in which those ordered packages are transported latest, in short, the loading operation of these packages is not later than this time. Indicates the limit time that must be started. The same applies to the unloading side of
図8は、図5中の時間枠設定処理(ステップ508)の詳細を示すフローチャートである。まず、作業開始可能時刻更新リストutimearrayと作業開始限界時刻更新リストdtimearrayを初期化する(ステップ801)。これらの2つのリストは、各作業IDとそれらの作業IDにそれぞれ対応する作業開始可能時刻および作業開始限界時刻を格納するリストであり、初期化処理では現在の輸送作業情報workのデータを設定する。 FIG. 8 is a flowchart showing details of the time frame setting process (step 508) in FIG. First, the work start possible time update list utimearray and the work start limit time update list dtimearray are initialized (step 801). These two lists are lists that store the work IDs and the work start possible times and work start limit times corresponding to the work IDs, respectively, and set the data of the current transport work information work in the initialization process. .
次に、容器IDを特定するインデクスiに0を代入する(ステップ802)。次に、iと容器数を比較する(ステップ803)。iが容器数以上の場合は、全ての容器について処理が終了したということであるから、utimearrayとdtimearrayの内容を輸送作業情報work(116)に格納して(ステップ814)、処理を終了する。ステップ803で、iが容器数未満の場合は以下を実行する。
Next, 0 is substituted into the index i for specifying the container ID (step 802). Next, i is compared with the number of containers (step 803). If i is equal to or greater than the number of containers, it means that the processing has been completed for all containers, so the contents of the timearray and dtimearray are stored in the transport work information work (116) (step 814), and the processing ends. In
まず、容器の経路番号を表す変数rに0を代入する(ステップ804)。次に、rとその容器の経路総数を比較する(ステップ805)。rが経路総数以上なら、その容器については全経路の処理が終了したということであるから、iに1を加えて(ステップ813)、ステップ803に戻る。rが経路総数未満の場合は以下を実行する。 First, 0 is substituted into a variable r representing the container path number (step 804). Next, r and the total number of paths of the container are compared (step 805). If r is equal to or greater than the total number of routes, it means that processing of all routes has been completed for the container, so 1 is added to i (step 813) and the processing returns to step 803. When r is less than the total number of paths, the following is executed.
まず、i番目の容器IDの経路rに含まれている各注文に対し、その次の輸送経路で輸送される容器経路荷積み作業の輸送作業レコードの配列をNworkに格納する(ステップ806)。いま、i番目の容器IDの経路rに含まれている全ての注文を「注文群A」と呼ぶことにすると、注文群Aの第1の注文について当該注文の次の輸送経路での荷積み作業に対応する輸送作業レコードをNworkに格納し、同様に、注文群Aの第2、第3、…の注文についてもそれぞれ次の輸送経路での荷積み輸送作業レコードをNworkへ格納するということである。これらNworkに格納された荷積み輸送作業レコードは、上記経路rの到着拠点(この拠点を「拠点B」と呼ぶ)で、i番目の容器IDの容器から荷下ろしされた荷物を次の輸送経路に乗せるための各荷積み作業を表している。次に、変数qに、Nworkに格納された荷積み輸送作業レコードの荷積み作業開始可能時刻(241)の最小値を代入する(ステップ807)。この値は、拠点Bにおいて注文群Aの各荷物をそれぞれ次の輸送経路に積み換える際の荷積みが可能になる時刻のうち最も早い時刻を示している。 First, for each order included in the route r of the i-th container ID, an array of transport work records of container route loading work transported by the next transport route is stored in Nwork (step 806). Now, if all orders included in the route r of the i-th container ID are referred to as “order group A”, the first order of the order group A is loaded on the next transportation route of the order. The transportation work record corresponding to the work is stored in the Nwork, and similarly, for the second, third,... Orders of the order group A, the loading transportation work record in the next transportation route is stored in the Nwork. It is. The loading and transporting work records stored in these Nworks are the arrival bases of the route r (this base is referred to as “base B”), and the cargo unloaded from the container of the i-th container ID is transferred to the next transport route. Each loading work for getting on board is shown. Next, the minimum value of the loading work start possible time (241) of the loading transportation work record stored in Nwork is substituted for variable q (step 807). This value indicates the earliest time among the times when loading at the time of transferring each package of the order group A to the next transportation route at the base B is possible.
次に、Nworkが指す全容器に対し、その容器に詰められている各荷物の前経路を含む容器の荷下ろし作業配列をPworkに格納する(ステップ808)。次に、変数pに、Pworkに格納された荷下ろし作業レコードの荷下ろし作業開始限界時刻+作業時間の最大値を代入する(ステップ809)。次に、変数dにp+(q−p)/2を代入する(ステップ810)。次に、Nworkの全作業に対してutimearrayをdで更新し、Pworkの全作業に対してdtimearrayをd−作業時間で更新する(ステップ811)。次に、rに1を加えて(ステップ812)、ステップ805に戻る。以上の処理は、要するに、ある中継拠点で荷下ろしをして、次の経路へと荷積みする際の荷下ろし作業と荷積み作業の時間帯を分けることを行っている。これにより、荷下ろしが終わっていないのに荷積みが開始されるようなスケジュールを作成することが無くなる。 Next, for all the containers pointed to by Nwork, the container unloading work arrangement including the front path of each package packed in the container is stored in Pwork (step 808). Next, the unloading work start limit time of the unloading work record stored in Pwork + the maximum value of the work time is substituted into the variable p (step 809). Next, p + (q−p) / 2 is substituted for the variable d (step 810). Next, the utimearray is updated with d for all work of Nwork, and the dtimearray is updated with d-work time for all work of Pwork (step 811). Next, 1 is added to r (step 812), and the process returns to step 805. In short, the above processing is performed by unloading at a certain relay base and dividing the time of unloading work and loading work when loading to the next route. As a result, it is not necessary to create a schedule for starting loading even when unloading is not finished.
図9は、図4中の輸送スケジュール作成処理(ステップ402)の詳細を示す処理フローである。 FIG. 9 is a process flow showing details of the transportation schedule creation process (step 402) in FIG.
時間枠設定処理(ステップ508)により各作業を行うべき時間枠が設定されているので、スケジュールの作成では個々の注文に対する作業時間の矛盾を意識せずに、組み合わせ最適化問題として、非特許文献1や非特許文献2に説明されているような、ヒューリスティクスを用いた技法や、GA、タブーサーチ、SA法などのメタヒューリスティクスに分類される技法などが利用できる。本実施形態では、メタヒューリスティクスの中のランダムリスタート法を適用している。つまり、ランダムな条件下で初期解(スケジュール)を作成し、それを改良処理でより良いスケジュールに改良する。この初期解の作成と改良を複数回繰り返し、その中で最良のスケジュールを選択するものである。
Since the time frame for each work is set by the time frame setting process (step 508), the creation of the schedule is not aware of the contradiction of the work time for each order, and is a combination optimization problem. Techniques using heuristics, such as those described in 1 and
まず、変数Iに1を設定し、Best_ValueにMax_Valueを設定する(ステップ901)。ここでMaxValueは、使用する計算機で表現可能な最大の数値を表す。次に、IがNより小さい場合(ステップ902)、次の処理を繰り返す。ここで、Nは、ランダムリスタートで初期解の作成と、その初期解の改良を行う回数であり、予め定められている定数である。 First, 1 is set to the variable I, and Max_Value is set to Best_Value (step 901). Here, MaxValue represents the maximum numerical value that can be expressed by the computer used. Next, when I is smaller than N (step 902), the next process is repeated. Here, N is the number of times an initial solution is created and improved by random restart, and is a predetermined constant.
まず初期解の作成を行う(ステップ903)。この処理の詳細は図10で説明する。次に、作成した初期解の改良を行う(ステップ904)。この処理の詳細は図11で説明する。次に、スケジュール結果の評価を行う(ステップ905)。この評価とは、ステップ904で改良されたスケジュール結果から、使用する車両台数およびその走行距離から輸送に要する概算のコストを求める処理である。この計算方法は、車両台数だけで評価する方法や、輸送車両の総走行距離で評価する方法、また、車両台数と予め定めた輸送車両一台あたりの固定費の積と、総走行距離と予め定めた単位距離あたりの変動費の積の和で評価する方法などが、挙げられる。ステップ905で算出された評価結果(評価値)は、変数Eに代入される。この評価値が、小さい方が、より評価が高いことを意味する。
First, an initial solution is created (step 903). Details of this processing will be described with reference to FIG. Next, the created initial solution is improved (step 904). Details of this processing will be described with reference to FIG. Next, the schedule result is evaluated (step 905). This evaluation is a process for obtaining an approximate cost required for transportation from the number of vehicles to be used and the distance traveled from the schedule result improved in
次に、評価結果が格納されている変数EとBest_Valueの値を比較し(ステップ906)、EがBest_Valueよりも小さい場合には、今回のスケジュール結果(輸送スケジュール情報(118))がいままでの中でベストの結果であるということだから、Eの値をBest_Valueに代入し(ステップ907)、作成したスケジュール結果をBest_Scheduleに記録する(ステップ908)。要するに、スケジュール改良処理によって評価がよくなったら、そのときのスケジュールを保存するものである。次に変数Iに1を加え、ステップ902に戻る。ステップ902でIがN以上になれば処理を終える。
Next, the variable E in which the evaluation result is stored is compared with the value of Best_Value (step 906). If E is smaller than Best_Value, the current schedule result (transport schedule information (118)) is Since it is the best result, the value of E is substituted for Best_Value (step 907), and the created schedule result is recorded in Best_Schedule (step 908). In short, when the evaluation is improved by the schedule improvement process, the schedule at that time is saved. Next, 1 is added to variable I, and the process returns to step 902. If I becomes N or more at
図10は、図9中の初期解作成処理(ステップ903)の詳細を示す処理フローである。この処理では、輸送作業情報(116)の各作業を何れかの車両に割り当てる初期解を作成する。 FIG. 10 is a process flow showing details of the initial solution creation process (step 903) in FIG. In this process, an initial solution for assigning each work of the transport work information (116) to any vehicle is created.
まず、輸送作業情報(116)の荷積み側の全レコードを配列Lに格納する(ステップ1001)。次に、配列Lに格納されている輸送作業レコードをランダムな順序に並べ換える(ステップ1002)。変数Pに配列Lに格納した作業数を、作業情報インデクスを表す変数Iに0を、それぞれ設定する(ステップ1003)。IとPの値を比較し(ステップ1004)、IがP以上なら処理を終える。IがP未満の間は、以下の処理を行う。 First, all the records on the loading side of the transportation work information (116) are stored in the array L (step 1001). Next, the transport work records stored in the array L are rearranged in a random order (step 1002). The number of operations stored in the array L is set in the variable P, and 0 is set in the variable I representing the work information index (step 1003). The values of I and P are compared (step 1004). If I is equal to or greater than P, the process ends. While I is less than P, the following processing is performed.
まず、変数Tに、既に作業を割り当てた車両の台数を格納する(ステップ1005)。次に、車両に作業を割り当てたときの距離増分の最小値を格納する変数VにMax_Value、距離増分が最小となるときの車両のインデクスを表す変数Xに−1、作業割り当てをチェックしようとしている車両のインデクスを表す変数Jに0を、それぞれ代入する(ステップ1006)。JとTを比較し(ステップ1007)、JがT未満の場合には、既に作業が割り当てられているJ台目の車両にL[I]に格納されている荷積み作業とそれに対応する荷下ろし作業の積載(その作業に係る荷物を荷積みし、輸送して、荷下ろしすること)が可能かチェックする(ステップ1008)。つまり、これらの作業をその車両に割り当てた場合に、その車両の重量上限や容積上限を超えることなく、かつその作業を割り当てた場合の作業開始時刻の時間枠が守れるかを、チェックする。もしステップ1008で積載可能と判断された場合には、その荷積み荷下ろし作業をJ台目の車両に割り当てることによる、J台目の車両の走行距離増分を変数Dに設定する(ステップ1009)。DとVの値を比較し(ステップ1010)、DがVよりも小さくなければ、Jに1を加え(ステップ1012)て、ステップ1007に戻り、次の車両のチェックに移る。ステップ1009でDの値が小さい場合には、XにJを、VにDの値を、それぞれ設定し(ステップ1011)、Jに1を加え(ステップ1012)、ステップ1007に戻る。
First, the number of vehicles to which work has already been assigned is stored in the variable T (step 1005). Next, Max_Value is stored in the variable V that stores the minimum value of the distance increment when work is assigned to the vehicle, and the work assignment is checked to be -1 in the variable X that represents the vehicle index when the distance increment is minimum. 0 is substituted for each variable J representing the vehicle index (step 1006). J and T are compared (step 1007). If J is less than T, the loading operation stored in L [I] and the corresponding load are stored in the Jth vehicle to which the operation has already been assigned. It is checked whether it is possible to load the unloading work (loading, transporting, and unloading the load related to the work) (step 1008). That is, when these tasks are assigned to the vehicle, it is checked whether the upper limit of the weight or volume of the vehicle is exceeded and whether the time frame of the task start time when the task is assigned can be observed. If it is determined in
ステップ1007でJがT以上の場合には、まず変数Xの値が−1かチェックする(ステップ1013)。−1でない場合には、荷積み作業L[I]とそれに対応する荷下ろし作業を積載可能な車両が見つかっているので、それらの作業をX番目の車両に積載し(ステップ1017)、変数Iに1を加え(ステップ1016)、ステップ1004に戻り、次の荷積み作業の処理に移る。ステップ1013で変数Xの値が−1の場合には、既に作業の割り当てを行っている車両で積載可能なものが無かったので、荷積み作業L[I]の作業拠点の保有する車両を一台輸送用に新たに割り当て、その車両に荷積み作業L[I]と対応する荷下ろし作業を割り当て(ステップ1014)、ステップ1016に進む。
If J is greater than or equal to T in
図11は、図9中の改良処理(ステップ904)の詳細を示す処理フローである。まず、変数Iに1を代入する(ステップ1101)。次に、Iが10に満たない場合(ステップ1102)に以下の処理を行う。なお、この値「10」は、改良処理での作業の再割り当てを実行する回数として予め定めた値である。ステップ1102でIが10以上になった場合は処理を終了する。
FIG. 11 is a process flow showing details of the improvement process (step 904) in FIG. First, 1 is assigned to variable I (step 1101). Next, when I is less than 10 (step 1102), the following processing is performed. Note that this value “10” is a value determined in advance as the number of times the reallocation of work in the improvement process is executed. If I becomes 10 or more in
まず、作業が割り当てられている全車両の積載率を算出する(ステップ1103)。変数Rに1から5までの整数をランダムに一つ選択して設定する(ステップ1104)。次に、積載率がR番目に悪い車両に積載されている作業を削除し、削除した荷積み作業を配列Lに追加する(ステップ1105)。次に、配列Lに登録されている作業の荷積み拠点と荷下ろし拠点を巡回している他の車両全てを削除し、それらの車両に割り当てられていた作業の荷積み側を配列Mに格納する(ステップ1106)。次に、配列Lに配列Mの内容を加える(ステップ1107)。次に、この配列Lに格納されている荷積み作業の再スケジュールを行う(ステップ1108)。つまり、配列Lに格納されている作業に対して、図10の詳細フローで示した方法により積載する車両を割り当てる。次に、変数Iに1を加え(ステップ1109)、ステップ1102に戻る。 First, the loading rate of all vehicles to which work is assigned is calculated (step 1103). One integer from 1 to 5 is randomly selected and set in the variable R (step 1104). Next, the work loaded on the vehicle with the Rth worst loading rate is deleted, and the deleted loading work is added to the array L (step 1105). Next, all the other vehicles traveling around the loading and unloading bases of the work registered in the array L are deleted, and the loading side of the work assigned to these vehicles is stored in the array M. (Step 1106). Next, the contents of the array M are added to the array L (step 1107). Next, the loading operation stored in the array L is rescheduled (step 1108). That is, a vehicle to be loaded is assigned to the work stored in the array L by the method shown in the detailed flow of FIG. Next, 1 is added to the variable I (step 1109), and the process returns to step 1102.
図12は、図4中の結果出力処理(ステップ403)の詳細を示すフローである。まず、各車両の通過拠点とルートを地図上に表示し(ステップ1201)、次に作成したスケジュールに対して、必要な車両台数、総走行距離などの評価値を算出して表示する(ステップ1202)。次に、印刷の指示があれば、上記の情報を印刷装置に印刷する(ステップ1203)。 FIG. 12 is a flowchart showing details of the result output process (step 403) in FIG. First, the passage base and route of each vehicle are displayed on a map (step 1201), and evaluation values such as the required number of vehicles and total travel distance are calculated and displayed for the created schedule (step 1202). ). Next, if there is a print instruction, the above information is printed on the printing apparatus (step 1203).
101…入力装置、102…出力装置、103…表示装置、104…処理装置、109…記憶装置、106…入力処理部、107…輸送スケジュール作成部、108…結果出力部、105…プログラム、110…拠点情報、111…拠点間中継情報、112…注文情報、113…輸送車両情報、114…距離テーブル、115…容器輸送経路情報、116…輸送作業情報、117…道路地図、118…輸送スケジュール情報。
DESCRIPTION OF
Claims (1)
物流センターと荷物の出荷・納入拠点の位置情報を含む拠点情報を登録する拠点情報登録手段と、
注文された各荷物の重量、容積、出荷・納入拠点、および出荷・納入の時間制約を含む注文情報を入力する注文情報登録手段と、
前記荷物の出荷・納入拠点の組合せ毎に、前記物流網上での中継拠点を設定する中継拠点情報登録手段と、
物流センター、出荷拠点、納入拠点、荷積み拠点、および/または荷下ろし拠点の各拠点が有する輸送車両数、およびそれらの輸送車両の積載重量上限と積載容積上限を含む輸送車両情報を入力する輸送車両情報登録手段と、
前記中継拠点情報によって分けられた各注文の輸送経路の荷積み拠点と荷下ろし拠点が同一の注文を容器に集約した容器輸送経路情報を生成する容器輸送経路情報生成手段と、
前記容器輸送経路情報の各経路を荷積みと荷下ろしの作業ごとに分割した輸送作業情報を生成するとともに、該輸送作業情報が含む作業開始可能時刻と作業開始限界時刻を、各注文の荷物が最も早く輸送されるスケジュールと最も遅く輸送されるスケジュールに基づいて設定する輸送作業情報生成手段と、
同一注文荷物を共有する別々の容器または経路において、その荷積み作業と荷下ろし作業が実行可能な時間枠が重複しないように、前記輸送作業情報の作業開始可能時刻と作業開始限界時刻を調整する時間枠設定手段と、
前記拠点情報、注文情報、中継拠点情報、輸送車両情報、容器輸送経路情報、および輸送作業情報を用いて、前記輸送作業情報が示す荷積み作業と荷下ろし作業を輸送車両に割り当てることにより、輸送スケジュールを作成する輸送スケジュール作成手段と、
作成した輸送スケジュールを出力するスケジュール出力手段と
を備えたことを特徴とする輸送スケジュール作成システム。 A transportation schedule creation system for creating a transportation schedule for a vehicle having at least an input / output device, a processing device, and a storage device, and transporting a package from a shipping base to a delivery base in a logistics network including a plurality of logistics centers. ,
Location information registration means for registering location information including location information of distribution centers and shipment / delivery locations of packages;
Order information registration means for entering order information including the weight, volume, shipping / delivery base of each ordered package, and shipping / delivery time constraints;
Relay base information registration means for setting a relay base on the physical distribution network for each combination of shipment and delivery base of the package,
Transportation that inputs transportation vehicle information including the number of transportation vehicles that each of the distribution center, shipping base, delivery base, loading base, and / or unloading base has, and the upper and lower loading weights of those transportation vehicles Vehicle information registration means;
A container transportation route information generating means for generating container transportation route information in which the same loading order and unloading base in the transportation route of each order divided by the relay base information are aggregated in a container;
In addition to generating transport work information obtained by dividing each route of the container transport route information for each work of loading and unloading, the work start possible time and the work start limit time included in the transport work information are indicated by the package of each order. A transport work information generating means set based on the earliest transport schedule and the latest transport schedule;
In separate containers or routes that share the same orders luggage, so its loading work and unloading filter paper work viable time frame do not overlap, the work start enabled time and work start limit time of the transport task information Time frame setting means to be adjusted;
The base information, order information, the relay base information, transportation vehicle information, container transport path information, and by using the transport task information, by assigning the loading work and unloading filter paper work the transport work information indicates the transport vehicle A transportation schedule creation means for creating a transportation schedule;
A transportation schedule creation system comprising: a schedule output means for outputting the created transportation schedule.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008040168A JP5382844B2 (en) | 2008-02-21 | 2008-02-21 | Transportation schedule creation system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008040168A JP5382844B2 (en) | 2008-02-21 | 2008-02-21 | Transportation schedule creation system |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2009196760A JP2009196760A (en) | 2009-09-03 |
JP5382844B2 true JP5382844B2 (en) | 2014-01-08 |
Family
ID=41140721
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008040168A Expired - Fee Related JP5382844B2 (en) | 2008-02-21 | 2008-02-21 | Transportation schedule creation system |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5382844B2 (en) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107251085A (en) * | 2014-12-15 | 2017-10-13 | 键软株式会社 | Method, the system and program are supported in logistics |
US11132631B2 (en) * | 2017-05-26 | 2021-09-28 | Oracle International Corporation | Computerized system and method for resolving cross-vehicle dependencies for vehicle scheduling |
CN111768042A (en) * | 2017-07-28 | 2020-10-13 | 株式会社日立制作所 | Distribution plan generation method, device and system for distribution vehicle |
CN117314132B (en) * | 2023-11-30 | 2024-03-15 | 乾健科技有限公司 | Scheduling method and system based on big data |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3586822B2 (en) * | 1998-12-14 | 2004-11-10 | 日立ソフトウエアエンジニアリング株式会社 | Method and system for creating transport relay plan |
JP3516606B2 (en) * | 1999-03-29 | 2004-04-05 | 日立ソフトウエアエンジニアリング株式会社 | Transportation planning method and system |
JP2002108998A (en) * | 2000-09-28 | 2002-04-12 | Hitachi Software Eng Co Ltd | Method and system for planning transportation |
JP2002324118A (en) * | 2001-02-21 | 2002-11-08 | Tsuneyuki Kubo | Home-delivery system and home-delivery control program |
JP2007191296A (en) * | 2006-01-20 | 2007-08-02 | Hitachi Software Eng Co Ltd | Main physical distribution network schedule preparation system |
-
2008
- 2008-02-21 JP JP2008040168A patent/JP5382844B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2009196760A (en) | 2009-09-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Pina-Pardo et al. | The traveling salesman problem with release dates and drone resupply | |
Ghilas et al. | An adaptive large neighborhood search heuristic for the pickup and delivery problem with time windows and scheduled lines | |
Pang et al. | Ship routing problem with berthing time clash avoidance constraints | |
WO2018047289A1 (en) | Evaluation device, evaluation method, and evaluation program | |
US11823117B2 (en) | Delivery mode optimization in supply chain architecture | |
JP2007191296A (en) | Main physical distribution network schedule preparation system | |
JP7175839B2 (en) | Transportation planning device, transportation planning system, and transportation planning method | |
SteadieSeifi et al. | A metaheuristic for the multimodal network flow problem with product quality preservation and empty repositioning | |
Liu et al. | A scheduling decision support model for minimizing the number of drones with dynamic package arrivals and personalized deadlines | |
JP5382844B2 (en) | Transportation schedule creation system | |
US20140180954A1 (en) | Concurrent determination of shipping mode and ship unit packing during transportation planning | |
KR20210103503A (en) | Communication server device and method for its operation | |
JP2009146004A (en) | Vehicle dispatching planning device and vehicle dispatching planning method | |
WO2021040612A1 (en) | Methods and apparatuses for generating product delivery plans | |
JP2005043974A (en) | Method and system for forming transport schedule | |
JP4025652B2 (en) | Transportation planning system and method | |
JP2008230816A (en) | Procurement physical distribution schedule preparing system | |
JP6788047B2 (en) | Server, package delivery method, program | |
WO2015059750A1 (en) | Physical distribution planning device, physical distribution planning program, and storage medium | |
Ladier | Scheduling cross-docking operations: Integration of operational uncertainties and resource capacities | |
JP7441146B2 (en) | Planning systems, planning methods and programs | |
Al Theeb et al. | Optimization of the heterogeneous vehicle routing problem with cross docking logistic system | |
Soman et al. | Two-dimensional loading in vehicle routing problem with release and due dates | |
Wolfenburg | New version of the BBS method and its usage for determining and scheduling vehicle routes | |
JP2003285930A (en) | Transportation schedule making method and its system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20100715 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20120928 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20130104 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20130305 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20130830 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20130927 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |