FIELD
[0001] An embodiment of the present invention relates to a train operation control device,
a control method, and a control program.
BACKGROUND
[0002] Due to recent electricity shortage, there have been demands for energy-efficient
railways to advance energy saving. Energy saving in terms of railways includes replacing
auxiliary machines such as air-conditioners or lighting with energy-efficient machines
or reducing energy consumption during train running. Particularly, in order to reduce
energy consumption in train running, methods of curtailing the amount of energy necessary
for power running and creating a situation with a good energy recovery efficiency
to apply a regenerative brake have been proposed.
[0003] By implementation of such methods, trains result in running at a lower speed and
the slower running to a next station directly leads to energy saving.
CITATION LIST
Patent Literature
Nonpatent Literature
SUMMARY OF THE INVENTION
Problem to be Solved by the Invention
[0006] However, railways innately aim to carry a large number of passengers as fast as possible
and on time. Therefore, the slow running for the purpose of energy saving has limitations.
[0007] In actual traffic, trains hardly run on time as scheduled on timetable and are delayed
because of passengers to board and alight, an object stuck in doors, or failures in
trains. To make up for the delays, delayed trains have no choice but to run as fast
as possible. In such a situation, energy consumption will increase due to a shorter
running time from the one during running as scheduled on timetable.
[0008] Supposed that a delayed train does not attempt to make up for the delay, the delay
will affect other trains so that all of the trains cannot be operated as scheduled.
[0009] Thus, in actual traffic, all of the trains are controlled, intending for returning
to the operation as scheduled on timetable. That is, the trains have to run in a manner
to increase energy consumption in order to catch up on the delay occurring, despite
of aiming for energy saving.
[0010] Further, when a number of trains run on a certain route as planned on timetable,
the operation as initially planned may be obstructed by an unexpected event such as
an increased stop time due to a great number of passengers to board and alight or
a bag stuck in doors.
[0011] Accordingly, in the actual operation, if delays from scheduled arrival and departure
times occur at stations, every train is operated to make up for the delay as much
as possible.
[0012] However, during morning rush hours on suburban routes, for example, the trains cannot
catch up on the delays due to presence of preceding trains, and the trains are forced
to decelerate at traffic lights if not running suitably for the delays. Hence, unnecessary
acceleration and deceleration may cause an increase in energy consumption.
[0013] The prevent invention aims to provide a train operation control device, a control
method, and a control program which can make up for a delay when it occurs and prevent
an increase in unnecessary energy consumption to realize energy saving.
Means for Solving Problem
[0014] A running profile generator of a train operation control device of an embodiment
generates, when a train concerned arrives at a given station to be a next departure,
based on a determination whether or not a preceding train running immediately ahead
of the train concerned and a succeeding train running immediately behind the train
concerned are in a state to be able to leave respective next stations of departure
on time as preset on an operation timetable, a running profile for the train concerned
from a departure from the station of arrival to an arrival at a next stop, taking
an accumulated energy consumption into account.
BRIEF DESCRIPTION OF DRAWINGS
[0015]
FIG. 1 is a schematic configuration diagram of a train operation control device according
to one embodiment.
FIG. 2 is an explanatory diagram of a relationship between trains and stations.
FIG. 3 is an explanatory diagram showing the states of a train concerned, a preceding
train, and a succeeding train.
FIG. 4 is an explanatory diagram of how to calculate a velocity limit caused by a
preceding train.
FIG. 5 is an explanatory diagram of an example of velocity limit setting in the state
corresponding to FIG. 4.
FIG. 6 is a flowchart of an energy-saving running profile generation process in the
embodiment.
FIG. 7 is a flowchart of a minimum-time running profile generation process.
FIG. 8 is an explanatory diagram of conditions in which maximum acceleration and maximum
deceleration are applicable.
FIG. 9 is a process flowchart of an acceleration limit profile generation process.
FIG. 10 is a process flowchart of a deceleration limit profile generation process.
FIG. 11 is a process flowchart of a minimum-time running profile generation process.
FIG. 12 is a process flowchart of an energy-saving running profile generation process.
FIG. 13 is a (x-t) graph with time on abscissa axis and train position on vertical
axis.
FIG. 14 is an explanatory diagram of velocity conditions.
FIG. 15A is an explanatory diagram (part 1) of quantization process.
FIG. 15B is an explanatory diagram (part 2) of quantization process.
FIG. 16 is an explanatory diagram of an example of velocity-limit value setting.
DETAILED DESCRIPTION
[0016] Next, an embodiment will be described referring to the accompanying drawings.
[0017] FIG. 1 is a schematic configuration diagram of a train operation control device according
to one embodiment.
[0018] FIG. 2 is an explanatory diagram of a relationship between trains and stations.
[0019] In the following, a train concerned TR1 is defined to arrive and be stopping at a
given station (= next departure: current station), a preceding train is defined to
be a train running immediately ahead of the train concerned TR1 in travelling direction,
and a succeeding train (following train) is defined to be a train running immediately
behind the train concerned TR1 in travelling direction. The train concerned TR1 is
defined to be controlled to run in accordance with the operation statuses of the train
concerned TR1, preceding train, and succeeding train. This is based on the assumption
that the operation of the train concerned TR1 is to directly affect the preceding
train and the succeeding train alone. Accordingly, in the present embodiment, only
the information on the preceding train and the succeeding train are used for determining
a departure time and an arrival time of the train concerned TR1 at a current station
and at a next station.
[0020] A train operation control device 100 includes a timetable database (DB) 101 containing
information on a timetable (diagram: operation plan diagram) on a given day to which
vehicles are assigned and a departure time and arrival time calculator 102 which calculates,
when the train concerned TR1 as a subject of the operation control has arrived at
a station, an estimated departure time at the current station and an estimated arrival
time at a station ahead as a next stop for the train concerned TR1, from a delay time
representing the operation statuses of a preceding train TR0 and a succeeding train
TR2 ahead of and behind the train concerned TR1 in the traveling direction, respectively,
respective estimated departure times and estimated arrival times of the preceding
train TR0 and the succeeding train TR2, and a margin of time and a delay time of the
train concerned TR1.
[0021] The train operation control device 100 further includes a headway and stop time database
(DB) 103 storing previous train headways relative to the timetable and actual values
of station stop time, a velocity limit calculator 104 which defines a velocity limit
at each block entry position due to the preceding train TR0 at each time point, and
a vehicle and route database (DB) 105 storing each notch characteristic and motor
and inverter characteristics relative to the occupancy of a vehicle running on a route
concerned as well as a velocity limit, a gradient, and a curvature radius at each
position on the route concerned.
[0022] The train operation control device 100 further includes a running profile generator
106 which uses a result of the calculation by the velocity limit calculator 104 as
a constraint condition to generate a running profile with a smallest accumulated energy
consumption for the train concerned TR1 when running from the current station to the
station ahead, and a running information extractor 107 which extracts a velocity limit
at each block entry position (entry position in a block section) from a result of
the calculation by the running profile generator 106.
[0023] In the above, the train operation control device 100 is configured to handle the
process while the train concerned TR1 as a subject of the operation control is stopping
at a station and to start processing immediately after the train concerned TR1 arrives
at a station (= next departure: current station).
[0024] Upon the arrival of the train concerned TR1 at a given station, the departure time
and arrival time calculator 102 acquires (receives) an arrival time of the train concerned
TR1, and a current position, a station of departure (station behind ST2) and a departure
time, and an estimated arrival time at a next station (current station ST1) of the
succeeding train TR2, and acquires a current position, a station of departure (station
ahead ST0) and a departure time, and an estimated arrival time at a next station of
the preceding train TR0.
[0025] Upon acquiring the above-mentioned information (data), the departure time and arrival
time calculator 102 next acquires an estimated arrival time of the train concerned
TR1 as scheduled on timetable, referring to the timetable DB 101. The departure time
and arrival time calculator 102 calculates a difference between the estimated arrival
time registered in the timetable DB 101 and an actual arrival time to determine whether
or not the train concerned TR1 is delayed.
[0026] The departure time and arrival time calculator 102 then calculates an estimated departure
time at the current station ST1. Herein, the estimated departure time at the current
station ST1 refers to time obtained by adding a stop time to the arrival time at the
current station ST1. The stop time refers to either a value prestored (preset) in
the timetable DB 101 or a mean value of actual values of the same estimated arrival
time of the previous trains.
[0027] Next, a description will be made on the items of information on the train concerned
TR1, the preceding train TR0, and the succeeding train TR2 required for the calculation
of the estimated departure time of the train concerned TR1 at the current station
ST1 and the estimated arrival time of the train concerned TR1 at the station ahead
ST0.
[0028] The necessary information on the train concerned TR1 includes a delay time, a margin
of time, and a stop time, as follows:
- (1) Delay time of the train concerned TR1
= Actual arrival time of the train concerned TR1 at the current station ST1
- Estimated arrival time of the train concerned TR1 at the current station ST1 on
timetable;
- (2) Margin of time of the train concerned TR1
= Running time of the train concerned TR1 on timetable from the current station ST1
to the station ahead ST0
- Minimum running time of the train concerned TR1 from the current station ST1 to
the station ahead ST0: and
- (3) Stop time of the train concerned TR1 at the current station ST1
= Sum of Required time for passengers to board and alight from the train concerned
TR1 at the current station ST1 and Adjustment time.
The necessary information on the preceding train TR0 includes a delay time, a block
opening time, and a stop time at the station ahead ST0.
- (4) Delay time of the preceding train TR0
= An actual estimated arrival time of the preceding train TR0 at the station ahead
ST0
- Estimated arrival time of the preceding train TR0 at the station ahead ST0 on timetable.
- (5) Block opening time of the preceding train TR0 at the station ahead ST0
= Time at which the preceding train TR0 passes a block at the station ahead ST0.
- (6) Stop time of the preceding train TR0 at the station ahead ST0
= Sum of Required time for passengers to board and alight from the preceding train
TR0 at the station ahead ST0 and Adjustment time.
The necessary information on the succeeding train TR2 includes a delay time and a
stop time at the station behind ST2.
- (7) Delay time of the succeeding train TR2
= The actual estimated arrival time of the succeeding train TR2 at the station behind
ST2
- Estimted arrival time of the succeeding train TR2 at the station behind ST2 on timetable.
- (8) Stop time of the succeeding train TR2 at the station behind ST2
= Sum of Required time for passengers to board and alight from the succeeding train
TR2 at the station behind ST2 and Adjustment time.
[0029] Based on the information (1) to (8), the train operation control device 100 calculates,
for the train concerned TR1, at the time when the train concerned TR1 has arrived
at the current station ST1, an estimated departure time at the current station ST1,
an estimated arrival time at the station ahead ST0, and a length of time (running
time) required to run from the current station ST1 to the station ahead ST0.
[0030] Herein, the length of time (running time) required for the train concerned TR1 to
run from the current station ST1 to the station ahead ST0 is calculated by the following
equality:
Running time = Estimated departure time at the surrent station ST1
- Estimated arrival time at the station ahead ST0
[0031] After calculating the information (1) to (8), the train operation control device
100 calculates an energy-saving running profile for the train concerned TR1 to run
from the current station ST1 to the station ahead ST0 in accordance with the following
procedure.
[0032] The estimated departure time and estimated arrival time of the train concerned TR1
at the current station ST1 and the station ahead ST0 are determined with the operation
statuses of the preceding train TR0 and the succeeding train TR2 taken into account.
The current statuses of the train concerned TR1, the preceding train TR0, and the
succeeding train TR2 are evaluated from their delay times.
[0033] Herein, their respective operation statuses are defined by the delay time td of the
train concerned TR1, the preceding train TR0, or the succeeding train TR2 and an allowable
fixed time α (α>0), as follows. The allowable fixed time α is a parameter representing
a range of time to be regarded as fixed time.
Earlier arrival: Delay time td < -α
Fixed time: -α ≤ Delay time td ≤ α
Delay: Delay time td > α
[0034] In the present embodiment, in case of earlier arrival, the stop time at a station
in question is adjusted to extend and a train is operated to leave the station at
an estimated departure time set on timetable.
[0035] Accordingly, in case of earlier arrival and on-time arrival, a train can depart from
the station in question at the estimated departure time on timetable, therefore, in
both cases the statuses of the train when departing from the station are regarded
as same. Thus, the statuses of the train concerned TR1, the preceding train TR0, and
the succeeding train TR2 can be classified into two, i.e., earlier or on-time arrival
and delay.
[0036] FIG. 3 is an explanatory diagram of the statuses of the train concerned, the preceding
train, and the succeeding train.
[0037] Each of the train concerned TR1, the preceding train TR0, and the succeeding train
TR2 has two statuses and all of them need to be considered, so that the number of
statuses will be 2
3 = 8 (status ID = 1 to 8) in total, as shown in FIG. 3.
[0038] Next, for each of the eight statuses (status ID = 1 to 8) the following are set:
- An estimated departure time of the train concerned TR1 at the current station ST1;
- An estimated arrival time of the train concerned TR1 at the station ahead ST0; and
- A length of time (running time) required for the train concerned TR1 to run from the
current station ST1 to the station ahead ST0.
[0039] Each of the eight statuses (status ID = 1 to 8) shown in FIG. 3 will be described
below.
[1] Status ID = 1: when all of the succeeding train TR2, the train concerned TR1,
and the preceding train TR0 arrive earlier or on time
[0040] When all of the succeeding train TR2, the train concerned TR1, and the preceding
train TR0 arrive earlier or on time, the train concerned TR1 is set to leave the current
station ST1 at the estimated departure time set on timetable and arrive at the station
ahead ST0 at the estimated arrival time set on timetable.
[0041] Hence, the running time of the train concerned TR1 is obtained as follows.
- Running time of the train concerned TR1
= Estimated arrival time at a next station
- Estimated departure time at the current station ST1
= Estimated arrival time at a next station on timetable
- Estimated departure time at the current station ST1 on timetable
= Running time on timetable
[0042] Accordingly, at station ID = 1, the train concerned TR1 runs, following the running
profile set on timetable.
[2] Status ID = 2: when the succeeding train TR2 is delayed, and the train concerned
TR1 and the preceding train TR0 arrive earlier or on time
[0043] If only the succeeding train TR2 is delayed, the train concerned TR1 can leave the
current station ST1 at the estimated departure time set on timetable. This will, however,
increase a train headway to the succeeding train TR2. With a longer train headway,
a larger number of passengers may wait at the current station ST1 than that in on-schedule
traffic until the succeeding train TR2 arrives at the current station ST1, which may
result in further delaying the succeeding train TR2 at the current station ST1.
[0044] In view of this, in the present embodiment the train operation control device 100
is configured to define the estimated departure time of the train concerned TR1 at
the current station ST1 while adjusting the train headway to the succeeding train
TR2 so as not to increase the delay of the train concerned TR1.
When a delay time of the succeeding train TR2 ≤ a margin of time of the train concerned
TR1 holds true
[0045] In this case the train operation control device 100 of the train concerned TR1 plans
to depart from the current station ST1 at the estimated departure time on timetable
+ (margin of time of the train concerned TR1 - delay time of the succeeding train
TR2) and arrive at the next station at the estimated arrival time on timetable.
[0046] The train operation control device 100 sets the running time of the train concerned
TR1 as follows.
- Running time of the train concerned TR1
- Estimated departure time at the current station ST1
= Estimated arrival time at a next station on timetable
- {Estimated departure time at the current station ST1 on timetable
+ (Margin of time of the train concerned TR1
- Delay time of the succeeding train TR2)}
= Running time on timetable
- (Margin of time of the train concerned TR1
- Delay time of the succeeding train TR2)
≥ Minimum running time
[0047] That is, the train concerned runs faster than the running time on timetable by a
time (margin of time of the train concerned TR1 - delay time of the succeeding train
TR2).
[0048] Accordingly, a time spared in advance is translated into a running time, resulting
in an increase in energy consumption. However, owing to an increased train headway
to the succeeding train TR2, the train concerned TR1 can accommodate passengers which
would otherwise board the succeeding train TR2, and can resolve unbalance in terms
of the number of on-board passengers and abate the factor for increasing a delay caused
by a concentration of passengers on the succeeding train TR2.
When delay time of the succeeding train TR2 > margin of time of the train concerned
TR1 holds true
[0049] The train operation control device 100 of the train concerned TR1 plans to leave
the current station ST1 at time (estimated departure time at the current station ST1
on timetable + margin of time of the train concerned TR1) and arrive at the station
ahead ST0 at the estimated arrival time on timetable. Therefore, the running time
of the train concerned TR1 is equal to the minimum running time between the current
station ST1 and the station ahead ST0.
[0050] Accordingly, in this case, the train concerned TR1 can also accommodate passengers
which would otherwise board the succeeding train TR2, and can resolve unbalance in
terms of the number of on-board passengers and abate the factor for increasing a delay
caused by a concentration of passengers on the succeeding train TR2.
[3] Status ID = 3: when the train concerned TR1 is delayed and the preceding train
TR0 and the succeeding train TR2 arrive earlier or on time
[0051] When the train concerned TR1 alone is delayed, the train operation control device
100 of the train concerned TR1 operates to make up for the delay.
When delay time of the train concerned TR1 ≤ margin of time of the train concerned
TR1 holds true
[0052] In this case the following are planned:
- Estimated departure time of the train concerned TR1 of the current station ST1
= Estimated departure time at the current station ST1 on timetable + Delay time
- Estimated arrival time of the train concerned TR1 at the station ahead ST0
= Estimated arrival time at the station ahead ST0 on timetable
[0053] The running time of the train concerned TR1 is then defined as follows.
- Running time of the train concerned TR1
- Estimated departure time at the current station ST1
= Estimated arrival time at a next station ahead ST0 on timetable
- {Estimated departure time at the current station ST1 on timetable
+ (Margin of time of the train concerned TR1
- Delay time of the train concerned TR1
- Delay time of the train concerned TR1)}
= Running time on timetable
- (Margin of time of the train concerned TR1
- Delay time of the train concerned TR1)
≥ Minimum running time
[0054] That is, the train concerned runs faster by the time (margin of time of the train
concerned TR1 - delay time of the train concerned TR1).
[0055] Thus, a time spared in advance is translated into a running time, resulting in an
increase in energy consumption. However, the delay of the train concerned TR1 will
not affect the succeeding train TR2 and the train concerned TR1 can catch up on the
delay before reaching the station ahead ST0.
When delay time of the train concerned TR1 > margin of time of the train concerned
TR1 holds true
[0056] In this case, the train operation control device 100 of the train concerned TR1 defines
a departure time and an estimated arrival time of the train concerned TR1 at the station
ahead ST0 as follows:
- Departure time
= Estimated departure time of the current station ST1 on timetable
+ Delay time
- Estimated arrival time of the train concerned TR1 station ahead ST0
= Estimated departure time at the current station ST1
+ Delay time
+ Minimum running time to the station ahead ST0
[0057] In this case, the train concerned TR1 cannot return to the regular operation as scheduled
till the station ahead ST0 as a next station. However, since its delay is detected
at and after the next station, it runs in a shorter running time than that on timetable
again and repeatedly runs in a shorter running time, thereby gradually making up for
the delay.
[4] Status ID = 4: when the preceding train TR0 is delayed and the succeeding train
TR2 and the train concerned TR1 arrive earlier or on time
[0058] With a delay of the preceding train TR0 alone, the train concerned TR1 may not be
able to arrive at the station ahead ST0 at the estimated arrival time on timetable
depending on the amount of delay of the preceding train TR0. In view of this, if the
preceding train TR0 is delayed, the train operation control device 100 defines the
estimated departure time at the current station ST1, taking a block opening time of
the preceding train TR0 at the station ahead ST0 into account.
When a block opening time of the preceding train TR0 at the station ahead ST0 comes
at or before the estimated arrival time of the train concerned TR1 at the station
ahead ST0 on timetable
[0059] When a block opening time of the preceding train TR0 at the station ahead ST0 comes
at or before the estimated arrival time of the train concerned TR1 at the station
ahead ST0 on timetable (block opening time of the preceding train TR0 at the station
ahead ST0 ≤ estimated arrival time of the train concerned TR1 at the station ahead
ST0 on timetable), the train operation control device 100 sets the estimated departure
time at the current station ST1, the estimated arrival time at the station ahead ST0,
and the running time for the train concerned TR1, as follows.
- Estimated departure time of the train concerned TR1 at the current station ST1
= Estimated departure time at the current station ST1 on timetable
- • Estimated arrival time of the train concerned TR1 at the station ahead ST0
= Estimated arrival time at the station ahead ST0 on timetable
- • Running time of the train concerned TR1
= Estimated arrival time at the current station ST1 on timetable
- Estimated departure time at the current station ST1 on timetable
= Running time on timetable
When the block opening time of the preceding train TR0 at the station ahead ST0 comes
after the estimated arrival time of the train concerned TR1 at the station ahead ST0
on timetable
[0060] When the block opening time of the preceding train TR0 at the station ahead ST0 comes
after the estimated arrival time of the train concerned TR1 at the station ahead ST0
on timetable (block opening time of the preceding train TR0 at the station ahead ST0
> estimated arrival time of the train concerned TR1 at the station ahead ST0 on timetable)
[0061] It is impossible for the train concerned TR1 to run in the running time set on timetable.
Therefore, the train operation control device 100 defines the estimated arrival time
at the next station and the running time of the train concerned TR1 as follows.
- Estimated arrival time of the train concerned TR1 at the next station = Block opening
time of the preceding train TR0 at the station ahead ST0
- Running time of the train concerned TR1
= Estimated arrival time at the next station
- Estimated departure time at the current station ST1
= Block opening time of the preceding train TR0 at the next station
- Estimated departure time of the current station ST1 on timetable
≥ Running time on timetable
[0062] The train operation control device 100 generates an energy-saving running profile
for the above running time of the train concerned TR1, considering a longer running
time than that on timetable and a velocity limit in the block section due to the presence
of the preceding train TR0.
[5] Status ID = 5: when the preceding train TR0 arrives earlier or on time and the
succeeding train TR2 and the train concerned TR1 are delayed
[0063] When the preceding train TR0 arrives earlier or on time and the succeeding train
TR2 and the train concerned TR1 are delayed, the train concerned TR1 has to make up
for the delay until reaching the station ahead ST0, if possible. However, an earlier
departure for the purpose of making up for the delay causes an increase in the train
headway relative to the succeeding train TR2, which may cause an increased delay of
the succeeding train TR2 at the current station ST1.
[0064] Therefore, in the present embodiment the train operation control device 100 defines
the estimated departure time at the current station ST1 to make up for the delay,
taking the headway between the train concerned TR1 and the succeeding train TR2 into
consideration.
[0065] [5.1] When the delay time of the train concerned TR1 is equal to or below the margin
of time of the train concerned TR1
[5.1.1] When the delay time of the succeeding train TR2 is equal to or below a time
obtained by subtracting the delay time of the train concerned TR1 from the margin
of time of the train concerned TR1
[0066] When the delay time of the succeeding train TR2 is equal to or below a time obtained
by subtracting the delay time of the train concerned TR1 from the margin of time of
the train concerned TR1 [delay time of the following train ≤ (margin of time of the
train concerned TR1 - delay time of the train concerned TR1)], the train operation
control device 100 sets the estimated departure time of the train concerned TR1 at
the current station ST1 and the running time of the train concerned TR1 as follows.
- Estimated departure time of the train concerned TR1 at the current station ST1
= Estimated departure time at the current station ST1 on timetable
+ Delay time of the succeeding train TR2
- Running time of the train concerned TR1
= Running time on timetable
- Delay time of the succeeding train TR2
[5.1.2] When the delay time of the succeeding train TR2 exceeds the time obtained
by subtracting the delay time of the train concerned TR1 from the margin of time of
the train concerned TR1
[0067] When the delay time of the succeeding train TR2 exceeds the time obtained by subtracting
the delay time of the train concerned TR1 from the margin of time of the train concerned
TR1 [delay time of the succeeding train TR2 > (margin of time of the train concerned
TR1 - delay time of the train concerned TR1)], the train operation control device
100 sets the estimated departure time at the current station ST1, the estimated arrival
time at the station ahead ST0, and the running time for the train concerned TR1 as
follows.
- Estimated departure time of the train concerned TR1 at the current station ST1
= Estimated departure time at the current station ST1 on timetable
+ (Margin of time of the train concerned TR1
- Delay time of the train concerned TR1)
- Estimated arrival time of the train concerned TR1 at the station ahead ST0
= Estimated arrival time at the station ahead ST0 on timetable
- Running time of the train concerned TR1
= Estimated arrival time at the next station on timetable
- Estimated departure time at the next station on timetable
= Running time on timetable
- (Margin of time of the train concerned TR1
- Delay time of the train concerned TR1)
When the delay time of the train concerned TR1 exceeds the margin of time of the train
concerned TR1
[0068] When the delay time of the train concerned TR1 exceeds the margin of time of the
train concerned TR1 (delay time of the train concerned TR1 > margin of time of the
train concerned TR1), the train operation control device 100 sets the estimated departure
time at the current station ST1 and the estimated arrival time at the station ahead
ST0 for the train concerned TR1 as follows.
- Estimated departure time of the train concerned TR1 at the current station ST1
= Estimated departure time at the current station ST1 on timetable
+ Delay time of the train concerned TR1
- • Estimated arrival time of the train concerned TR1 at the station ahead ST0
= Estimated departure time at the train concerned TR1 at the current station ST1 +
Minimum running time
[6] Status ID = 6: when the train concerned TR1 arrives earlier or on time and the
succeeding train TR2 and the preceding train TR0 are delayed
[0069] When the train concerned TR1 arrives earlier or on time and the succeeding train
TR2 and the preceding train TR0 are delayed, it is impossible for the train concerned
TR1 to arrive at the station ahead ST0 at the estimated arrival time on timetable
depending on the amount of delay of the preceding train TR0. Also, a departure of
the train concerned TR1 from the current station ST1 at the estimated departure time
on timetable may increase the delay of the succeeding train TR2 when arriving at the
current station ST1. Therefore, the train operation control device 100 of the train
concerned TR1 defines the estimated departure time at the current station ST1, taking
the block opening time of the preceding train TR0 at the station ahead ST0 into account.
When the block opening time of the preceding train TR0 at the station ahead ST0 comes
at or before the estimated arrival time of the train concerned TR1 at the station
ahead ST0 on timetable
[0070] When the block opening time of the preceding train TR0 at the station ahead ST0 comes
at or before the estimated arrival time of the train concerned TR1 at the station
ahead ST0 on timetable (block opening time of the preceding train TR0 at the station
ahead ST0 ≤ estimated arrival time of the train concerned TR1 at the station ahead
ST0 on timetable), the operation control device 100 sets, based on the delay time
of the succeeding train TR2 and the margin of time of the train concerned TR1, the
estimated departure time at the current station ST1, the estimated arrival time at
the next station, and the running time for the train concerned TR1, as follows.
[6.1.1] When the delay time of the succeeding train TR2 is equal to or below the margin
of time of the train concerned TR1
[0071] When the delay time of the succeeding train TR2 is equal to or below the margin of
time of the train concerned TR1 (delay time of the succeeding train TR2 ≤ margin of
time of the train concerned TR1), the train operation control device 100 sets the
estimated departure time at the current station ST1, the estimated arrival time at
the next station, and the running time for the train concerned TR1, as follows.
- Estimated departure time of the train concerned TR1 at the current station ST1
= Estimated departure time at the current station ST1 on timetable
+ Delay time of the succeeding train TR2
- • Estimated arrival time of the train concerned TR1 at the next station
= Estimated arrival time at the current station ST1 on timetable
- running time of the train concerned TR1
= Running time on timetable
- Delay time of the succeeding train TR2
[6.1.2] When the delay time of the succeeding train TR2 exceeds the margin of time
of the train concerned TR1
[0072] When the delay time of the succeeding train TR2 exceeds the margin of time of the
train concerned TR1 (delay time of the succeeding train TR2 > margin of time of the
train concerned TR1), the train operation control device 100 sets the estimated departure
time at the current station ST1, the estimated arrival time at the next station, and
the running time for the train concerned TR1 as follows.
- Estimated departure time of the train concerned TR1 at the current station ST1
= Estimated departure time at the current station ST1 on timetable
+ Margin of time
- • Estimated arrival time of the train concerned TR1 at the next station
= Estimated arrival time at the current station ST1 on timetable
- Running time of the train concerned TR1
= Minimum running time on timetable
[6.2] When the block opening time of the preceding train TR0 at the station ahead
ST0 exceeds the estimated arrival time of the train concerned TR1 at the station ahead
ST0 on timetable
[0073] When the block opening time of the preceding train TR0 at the station ahead ST0 exceeds
the estimated arrival time of the train concerned TR1 at the station ahead ST0 on
timetable (block opening time of the preceding train TR0 at the station ahead ST0
> estimated arrival time of the train concerned TR1 at the station ahead ST0 on timetable),
the train operation control device 100 sets, based on the delay time of the succeeding
train TR2, the block opening time of the preceding train TR0 at the next station,
and the estimated arrival time of the train concerned TR1 at the next station on timetable,
the estimated departure time at the current station ST1, the estimated arrival time
at the next station, and the running time for the train concerned TR1, as follows.
[6.2.1] When the delay time of the succeeding train TR2 is equal to or below the time
obtained by subtracting the estimated arrival time of the train concerned TR1 at the
next station on timetable from the block opening time of the preceding train TR0 at
the next station
[0074] When the delay time of the succeeding train TR2 is equal to or below the time obtained
by subtracting the estimated arrival time of the train concerned TR1 at the next station
on timetable from the block opening time of the preceding train TR0 at the next station
[delay time of the succeeding train TR2 ≤ (block opening time of the preceding train
TR0 at the next station - estimated arrival time of the train concerned TR1 at the
next station on timetable)], the train operation control device 100 sets, based on
the delay time of the succeeding train TR2, the block opening time of the preceding
train TR0 at the next station, and the estimated arrival time of the train concerned
TR1 at the next station on timetable, the estimated departure time at the current
station ST1, the estimated arrival time at the next station, and the running time
for the train concerned TR1, as follows.
- Estimated departure time of the train concerned TR1 at the current station ST1
= Estimated departure time at the current station ST1 on timetable
+ Delay time of the succeeding train TR2
- • Estimated arrival time of the train concerned TR1 at the next station
= Block opening time of the preceding train TR0 at the next station
- Running time of the train concerned TR1
= Block time of the preceding train TR0 at the next station
- Estimated departure time of the train concerned TR1 at the current station ST1
[6.2.2] When the delay time of the succeeding train TR2 exceeds the time obtained
by subtracting the estimated arrival time of the train concerned TR1 at the next station
on timetable from the block opening time of the preceding train TR0 at the next station
[0075] When the delay time of the succeeding train TR2 exceeds the time obtained by subtracting
the estimated arrival time of the train concerned TR1 at the next station on timetable
from the block opening time of the preceding train TR0 at the next station [delay
time of the succeeding train TR2 > (block opening time of the preceding train TR0
at the next station - estimated arrival time of the train concerned TR1 at the next
station on timetable)], the train operation control device 100 sets, based on the
delay time of the succeeding train TR2, the block opening time of the preceding train
TR0 at the next station, and the estimated arrival time of the train concerned TR1
at the next station on timetable, the estimated departure time at the current station
ST1, the estimated arrival time at the next station, and the running time for the
train concerned TR1, as follows.
- Estimated departure time of the train concerned TR1 at the current station ST1
= Block opening time of the preceding train TR0 at the next station
- Minimum running time of the train concerned TR1 between the current station ST1
and the station ahead ST0
- • Estimated arrival time of the train concerned TR1 at the next station
= Block opening time of the preceding train TR0 at the next station
- Running time of the train concerned TR1
= Minimum running time on timetable
[7] Status ID = 7: when the succeeding train TR2 arrives earlier or on time and the
train concerned TR1 and the preceding train TR0 are delayed
[0076] When the succeeding train TR2 arrives earlier or on time and the train concerned
TR1 and the preceding train TR0 are delayed, the train concerned TR1 needs to leave
the current station ST1 as early as possible not to hinder the traveling of the succeeding
train TR2. However, the train concerned TR1 may not be able to arrive at the current
station ST1 earlier than the estimated arrival time of the train concerned TR1 at
the station ahead ST0, depending on the amount of delay of the preceding train TR0.
[0077] In view of this, when the succeeding train TR2 arrives earlier or on time and the
train concerned TR1 and the preceding train TR0 are delayed, the train operation control
device 100 sets the estimated departure time at the current station ST1, taking the
block opening time of the preceding train TR0 at the station ahead ST0 into account.
[7.1] When the block opening time of the preceding train TR0 at the station ahead
ST0 comes at or before the time obtained by adding the delay time of the train concerned
TR1 to the estimated arrival time of the train concerned TR1 at the station ahead
ST0 on timetable and subtracting the margin of time of the train concerned TR1 therefrom
[0078] When the block opening time of the preceding train TR0 at the station ahead ST0 comes
before the time obtained by adding the delay time of the train concerned TR1 to the
estimated arrival time of the train concerned TR1 at the station ahead ST0 on timetable
and subtracting the margin of time of the train concerned TR1 therefrom [block opening
time of the preceding train TR0 at the station ahead ST0 ≤ (estimated arrival time
of the train concerned TR1 at the station ahead ST0 on timetable + delay time of the
train concerned TR1 - Margin of time of the train concerned TR1)], the train operation
control device 100 sets, based on the delay time and margin of time of the train concerned
TR1, the estimated departure time at the current station ST1, the estimated arrival
time at the station ahead ST0, and the running time for the train concerned TR1, as
follows.
[7.1.1] When the delay time of the train concerned TR1 is equal to or below the margin
of time of the train concerned TR1
[0079] When the delay time of the train concerned TR1 is equal to or below the margin of
time of the train concerned TR1 (delay time of the train concerned TR2 ≤ margin of
time of the train concerned TR1), the train operation control device 100 sets the
estimated departure time at the current station ST1, the estimated arrival time at
the station ahead ST0, and the running time for the train concerned TR1 as follows.
- Estimated departure time of the train concerned TR1 at the current station ST1
= Estimated departure time at the current station ST1 on timetable
+ Delay time of the train concerned TR1
- • Estimated arrival time of the train concerned TR1 at the station ahead ST0
= Estimated arrival time at the station ahead ST0 on timetable
- Running time of the train concerned TR1
= Running time on timetable
- (Margin of time of the train concerned TR1
- Delay time of the train concerned TR1)
≥ Minimum running time
[7.1.2] When the delay time of the train concerned TR1 exceeds the margin of time
of the train concerned TR1
[0080] When the delay time of the train concerned TR1 exceeds the margin of time of the
train concerned TR1 (delay time of the train concerned TR1 > margin of time of the
train concerned TR1), the train operation control device 100 sets the estimated departure
time at the current station ST1, the estimated arrival time at the station ahead ST0,
and the running time for the train concerned TR1 as follows.
- Estimated departure time of the train concerned TR1 at the current station ST1
= Estimated departure time at the current station ST1 on timetable
+ Delay time of the train concerned TR1
- • Estimated arrival time of the train concerned TR1 at the next station
= Estimated arrival time at the current station ST1 on timetable
+ (Delay time of the train concerned TR1
- Margin of time of the train concerned TR1)
- Running time of the train concerned TR1 = Minimum running time
When the block opening time of the preceding train TR0 at the station ahead ST0 exceeds
the time obtained by adding the delay time of the train concerned TR1 to the estimated
arrival time of the train concerned TR1 at the next station on timetable and subtracting
the margin of time of the train concerned TR1 therefrom
[0081] When the block opening time of the preceding train TR0 at the station ahead ST0 exceeds
the time obtained by adding the delay time of the train concerned TR1 to the estimated
arrival time of the train concerned TR1 at the next station on timetable and subtracting
the margin of time of the train concerned TR1 therefrom [block opening time of the
preceding train TR0 at the station ahead ST0 > (estimated arrival time of the train
concerned TR1 at the next station on timetable + delay time of the train concerned
TR1 - margin of time of the train concerned TR1)], the train operation control device
100 sets the estimated departure time at the current station ST1, the estimated arrival
time at the station ahead ST0, and the running time for the train concerned TR1, as
follows.
- Estimated departure time of the train concerned TR1 at the current station ST1
= Estimated departure time at the current station ST1 on timetable
+ Delay time of the train concerned TR1
- • Estimated arrival time of the train concerned TR1 at the next station
= Station Block opening time of the preceding train TR0 at the station ahead ST0
- Running time of the train concerned TR1
= Estimated arrival time of the train concerned TR1 at the station ahead ST0
- Estimated departure time of the train concerned TR1 at the current station ST1
[8] Status ID = 8: when all of the succeeding train TR2, the train concerned TR1,
and the preceding train TR0 are delayed
[0082] When all of the succeeding train TR2, the train concerned TR1, and the preceding
train TR0 are delayed, the train operation control device 100 of the train concerned
TR1 has to set the estimated departure time at the current station ST1 and the estimated
arrival time at the station ahead ST0, considering the delay times of all the succeeding
train TR2, the preceding train TR0, and the train concerned TR1.
[0083] Thus, the train operation control device 100 of the train concerned TR1 sets the
estimated departure time at the current station ST1, considering the block opening
time of the preceding train TR0 at the station ahead ST0.
[8.1] When the block opening time of the preceding train TR0 at the station ahead
ST0 comes at or before the time obtained by adding the delay time of the train concerned
TR1 to the estimated arrival time of the train concerned TR1 at the station ahead
ST0 on timetable and subtracting the margin of time of the train concerned TR1 therefrom
[0084] When the block opening time of the preceding train TR0 at the station ahead ST0 comes
at or before the time obtained by adding the delay time of the train concerned TR1
to the estimated arrival time of the train concerned TR1 at the station ahead ST0
on timetable and subtracting the margin of time of the train concerned TR1 therefrom
[block opening time of the preceding train TR0 at the station ahead ST0 ≤ (estimated
arrival time of the train concerned TR1 at the station ahead ST0 on timetable + delay
time of the train concerned TR1 - margin of time of the train concerned TR1)], the
train operation control device 100 sets the following based on the delay time of the
succeeding train TR2.
[8.1.1] When the delay time of the succeeding train TR2 is equal to or below the time
obtained by subtracting the delay time of the train concerned TR1 from the margin
of time of the train concerned TR1
[0085] When the delay time of the succeeding train TR2 is equal to or below the time obtained
by subtracting the delay time of the train concerned TR1 from the margin of time of
the train concerned TR1 [estimated departure time of the train concerned TR1 at the
current station ST1 = estimated departure time at the current station ST1 on timetable
+ delay time of the succeeding train TR2 ≤ margin of time of train concerned TR1 -
delay time of the train concerned TR1], the train operation control device 100 sets
the estimated arrival time at the next station and the running time for the train
concerned TR1 as follows.
- Estimated arrival time of the train concerned TR1 at the nex station = Estimated arrival
time at the current station ST1 on timetable
- Running time of the train concerned TR1
= Block time of the preceding train TR0 at the next station
- Estimated departure time of the train concerned TR1 at the curent station ST1
[8.1.2] When the delay time of the succeeding train TR2 exceeds the time obtained
by subtracting the delay time of the train concerned TR1 from the margin of time of
the train concerned TR1
[0086] When the delay time of the succeeding train TR2 exceeds the time obtained by subtracting
the delay time of the train concerned TR1 from the margin of time of the train concerned
TR1 (delay time of the succeeding train TR2 > margin of time of the train concerned
TR1 - delay time of the train concerned TR1), the train operation control device 100
sets the estimated departure time at the current station ST1, the estimated arrival
time at the next station, and the running time for the train concerned TR1 as follows.
- Estimated departure time of the train concerned TR1 at the current station ST1
= Estimated departure time at the current station ST1 on timetable + Margin of time
- • Estimated arrival time of the train concerned TR1 at the next station
= Estimated arrival time at the current station ST1 on timetable
- Running time of the train concerned TR1
= Minimum running time on timetable
[8.2] When the block opening time of the preceding train TR0 at the station ahead
ST0 exceeds the time obtained by adding the delay time of the train concerned TR1
to the estimated arrival time of the train concerned TR1 at the station ahead ST0
on timetable and subtracting the margin of time of the train concerned TR1 therefrom
[0087] When the block opening time of the preceding train TR0 at the station ahead ST0 exceeds
the time obtained by adding the delay time of the train concerned TR1 to the estimated
arrival time of the train concerned TR1 at the station ahead ST0 on timetable and
subtracting the margin of time of the train concerned TR1 therefrom [block opening
time of the preceding train TR0 at the station ahead ST0 > (estimated arrival time
of the train concerned TR1 at the station ahead ST0 on timetable + delay time of the
train concerned TR1 - margin of time of the train concerned TR1)], the train operation
control device 100 sets the following based on the delay time of the succeeding train
TR2.
[8.2.1] When the delay time of the succeeding train TR2 is equal to or below the time
obtained by subtracting the estimated arrival time at the next station on timetable
and the delay time of the train concerned TR1 from the block opening time of the preceding
train TR0 at the next station
[0088] When the delay time of the succeeding train TR2 is equal to or below the time obtained
by subtracting the estimated arrival time of the train concerned TR1 at the next station
on timetable and the delay time of the train concerned TR1 from the block opening
time of the preceding train TR0 at the next station [delay time of the succeeding
train TR2 ≤ (block opening time of the preceding train TR0 at the next station - estimated
arrival time of the train concerned TR1 at the next station on timetable - delay time
of the train concerned TR1)], the train operation control device 100 sets the estimated
departure time at the current station ST1, the estimated arrival time at the next
station, and the running time for the train concerned TR1 as follows.
- Estimated departure time of the train concerned TR1 at the current station ST1
= Estimated departure time at the current station ST1 on timetable
+ Delay time of the succeeding train TR20
- Estimated arrival time of the train concerned TR1 at the next station
= Block opening time of the preceding train TR0 at the next station
- Running time of the train concerned TR1
= Block time of the preceding train TR0 at the next station
- Estimated departure time of the train concerned TR1 at the curent station ST1
[8.2.2] When the delay time of the succeeding train TR2 exceeds the time obtained
by subtracting the estimated arrival time of the train concerned TR1 at the next station
on timetable and the delay time of the train concerned TR1 from the block opening
time of the preceding train TR0 at the next station
[0089] When the delay time of the succeeding train TR2 exceeds the time obtained by subtracting
the estimated arrival time of the train concerned TR1 at the next station on timetable
and the delay time of the train concerned TR1 from the block opening time of the preceding
train TR0 at the next station [delay time of the succeeding train TR2 > (block opening
time of the preceding train TR0 at the next station - estimated arrival time of the
train concerned TR1 at the next station on timetable - delay time of the train concerned
TR1)], the train operation control device 100 sets the estimated departure time at
the current station ST1, the estimated arrival time at the next station, and the running
time for the train concerned TR1 as follows.
- Estimated departure time of the train concerned TR1 at the current station ST1
= Block opening time of the preceding train TR0 at the next station
- Minimum running time of the train concerned TR1 between the current station ST1
and the station ahead ST0
- Estimated arrival time of the train concerned TR1 at the next station
= Block opening time of the preceding train TR0 at the next station
- Running time of the train concerned TR1
= Minimum running time on timetable
[0090] After the departure time and arrival time calculator 102 calculates, for the train
concerned TR1, the estimated departure time at the current station ST1, the estimated
arrival time at the station ahead ST0, and the running time between the current station
ST1 and the station ahead ST0 in the eight operation statuses (status ID = 1 to 8)
of the train concerned TR1, the preceding train TR0, and the succeeding train TR2,
the velocity limit calculator 104 calculates a velocity limit depending on a necessary
time for generating an energy-saving running profile of the train concerned TR1.
[0091] The velocity limit due to the preceding train TR0 is calculated based on the running
profile of the preceding train TR0. How to generate the running profile will be specifically
described referring to FIG. 4. The running profile is assumed to be generated on the
basis of the front position of the train.
[0092] FIG. 4 is an explanatory diagram of how to calculate the velocity limit due to the
preceding train TR0.
[0093] Herein, the running profile of the preceding train TR0 is considered to be already
determined.
[0094] Block sections located between the station of departure (at a 4,700[m] point) and
the station of arrival (at a 6,750[m] point) of the preceding train TR0 are concurrently
found. In the existing railway systems two or more trains cannot be located in a single
block for security reasons. Thus, the train operation control device 100 calculates
a time at which the preceding train TR0 passes through a block section, from an elapsed
time from a departure time (set to 200 seconds herein) of the preceding train TR0.
That corresponds to a passing time at a position forward from the end of each block
by the length of the train.
[0095] In FIG. 4, for example, the following are calculated for a first block section to
a third block section.
Passing the first block section CA1: 245 seconds
Passing the second block section CA2: 265 seconds
Passing the third block section CA3: 284 seconds
[0096] FIG. 5 is an explanatory diagram of an example of velocity limit setting in a state
corresponding to FIG. 4.
[0097] Next, the train operation control device100 sets the velocity limit for the train
concerned TR1 in each block section relative to the elapsed time.
[0098] For the sake of simplicity, the velocity limit is set to 0, 30, 60, and 90[km/h]
in the block sections in order from the one closer to the preceding train. FIG. 5
merely shows one example, and how to decide the velocity limit differs among railway
operators, so that it should not be limited to such an example.
[0099] In the example of FIG. 5, the preceding train TR0 is located in the first block section
CA1 from the time 200 seconds to the time 245 seconds, therefore, the velocity limit
for the train concerned TR1 in the first block section CA1 is 0 km, that is, stop,
to inhibit entry.
[0100] Likewise, the preceding train TR0 is located in the second block section CA2 from
the time 245 seconds to the time 265 seconds, therefore, the velocity limit for the
train concerned TR1 in the second block section CA2 is set to Okm, that is, stop,
to inhibit entry. The velocity limit for the train concerned TR1 in the first block
section CA1 ahead of the second block section CA2 is set to 30 km.
[0101] Likewise, the preceding train TR0 is located in the third block section CA3 from
the time 265 seconds to the time 284 seconds, therefore, the velocity limit for the
train concerned TR1 in the third block section CA3 is set to 0 km, that is, stop,
to inhibit entry. The velocity limit for the train concerned TR1 in the second block
section CA2 ahead of the third block section CA3 is set to 30 km. The velocity limit
for the train concerned TR1 in the first block section CA1 ahead of the second block
section CA2 and the third block section CA3 is set to 60 km higher than in the second
block section CA2.
[0102] Likewise, the preceding train TR0 is located in the fourth block section CA4 at and
after the time 284 seconds, therefore, the velocity limit for the train concerned
TR1 in the fourth block section CA4 is set to 0km, that is, stop, to inhibit entry.
The velocity limit for the train concerned TR1 in the third block section CA3 ahead
of the fourth block section CA4 is set to 30 km. The velocity limit for the train
concerned TR1 in the second block section CA2 ahead of the third block section CA3
and the fourth block section CA4 is set to 60 km higher than in the third block section
CA3. The velocity limit for the train concerned TR1 in the first block section CA1
ahead of the second to the fourth block sections CA2 to CA4 is set to 90 km higher
than in the second block section.
[0103] After setting the velocity limit in each block section in accordance with the position
of the preceding train TR0, the running profile generator 106 of the train operation
control device 100 then generates an energy-saving running profile between the current
station ST1 and the station ahead ST0 during the running time set by the train concerned
TR1.
[0104] Now, an example of the generation of the energy-saving running profile is described.
[0105] First, a principle of the generation of the energy-saving running profile is described.
[0106] The energy-saving running profile of a train includes two-point boundary values,
that is, (t, v, x)=(0, 0, 0) at a station of departure (initial state) and (t, v,
x)=(T, 0, X) at a station of arrival (terminal state) expressed by an equation of
motion containing a running resistance and a gradient resistance as a constraint,
where t represents an elapsed time from departure, v represents a velocity, and x
represents a distance from the station of departure.
[0107] Also, T represents an elapsed time taken from the station of departure to the station
of arrival and X represents a distance between the station of departure and the station
of arrival.
[0108] Meanwhile, an evaluation function is found by solving an optimal control problem
having a total sum E (accumulated energy consumption) of amounts of consumed energy
between the station of departure and the station of arrival, where a control variable
for designating the motion of a train is a notch for designating acceleration and
deceleration. Currently, widely used trains are accelerated and decelerated with notches.
Thus, the running profile can be regarded as a multi-stage decision making problem
of which one of the notches is to be selected at each time point for train operation.
[0109] In general, combinatorial explosion of candidate solutions will be a challenge in
solving a multi-stage decision making problem.
[0110] Combinatorial explosion will be briefly explained below.
[0111] For example, for generating a running profile for a running time of 100 seconds in
unit of minimum control time of 1 second when there are ten notches to select, a solution
satisfying a constraint has to be found from 10
100 candidate solutions. It is thus unfeasible to thoroughly search such an enormous
number of candidates for the solution satisfying a constraint within a realistic amount
of time.
[0112] As a solution for the combinatorial explosion problem, an optimal solution search
technique using dynamic programming has been proposed.
[0113] In generating a running profile by dynamic programming, the states (time, velocity,
position) of a train are defined on lattice points to search for a route with the
smallest accumulated energy consumption. If multiple routes reaching a given state
(t, v, x) are found, only a route with the smallest accumulated energy consumption
is stored and the search continues. In dynamic programming, a state space is divided
into a lattice in advance, however, a running profile rarely falls on lattice points
in general. Therefore, a profile not situated on lattice points is subjected to correction
and moved to the lattice points. However, this method faces a problem with a large
error from an optimal solution when the profile is subjected to the lattice point
correction a large number of times.
[0114] In view of the above, the present embodiment proposes a method of generating a candidate
solution upon every stage advancement while checking (pruning) if it can be a candidate
of feasible solution at each stage (time), instead of listing all of the candidate
solutions for the multi-stage decision making problem.
[0115] Herein, pruning is a general-purpose technique known in operations research field
for solving a combinatorial optimization problem by generating candidate solutions
in generation operation and removing candidates unable to be an optimal solution from
a list of candidate solutions in pruning operation. The generation operation and the
pruning operation are repeated to search for the optimal solution. Although this technique
is similar to the complete listing, it is more efficient than the complete listing
since it does not search candidate solutions unable to be candidate solutions.
[0116] FIG. 6 is a flowchart of an energy-saving running profile generation process in the
embodiment.
[0117] Upon receiving various kinds of data including vehicle information, inter-station
information, running time information, the running profile generator 106 acquires,
based on the vehicle information and the inter-station information, necessary data
for generating a running profile, referring to the vehicle and route DB 105 (step
S101).
[0118] Then, the running profile generator 106 generates a minimum-time running profile
in the input station interval (step S102).
[0119] FIG. 7 is a flowchart of a minimum-time running profile generation process.
[0120] A minimum-time running polarity generation process generally includes an acceleration
limit profile generation process (step S201), a deceleration limit profile generation
process (step S202), and a minimum-time running profile generation process by pruning
algorithm (step S203).
[0121] Details are as follows.
[0122] To generate a minimum-time running profile, a solution for a minimum-time control
with an initial condition and a termination condition has to be found. The minimum-time
control is generally referred to as bang-bang control based on maximum acceleration
and maximum deceleration. However, a running train cannot be always controlled only
by maximum acceleration and maximum deceleration since velocity limits are applied
to the train depending mainly on the position of the train. Thus, an area in which
a train can be moved at the maximum acceleration and the maximum deceleration is obtained.
[0123] FIG. 8 is an explanatory diagram of conditions in which the maximum acceleration
and the maximum deceleration can be applied.
[0124] FIG. 9 is a process flowchart of the acceleration limit profile generation process.
[0125] FIG. 10 is a process flowchart of the deceleration limit profile generation process.
[0126] The maximum acceleration and the maximum deceleration can be applied to a running
train in four cases Case 1 to Case 4, as shown in FIG. 8.
Case 1: the maximum acceleration is applied when the train leaves a station of departure
Case 2: the maximum deceleration is applied when the train arrives at a station of
arrival
Case 3: the maximum acceleration is applied when a velocity limit is increased in
traveling direction
Case 4: the maximum deceleration is applied when the velocity limit is decreased in
traveling direction.
[0127] In FIG. 8 upward slopes indicate the motion of the train at the maximum acceleration
and downward slopes indicate the motion of the train at the maximum deceleration.
[0128] The situations in Case 1 and Case 2 always hold once in one station interval.
[0129] Meanwhile, the situations in Case 3 and Case 4 can hold at multiple locations in
one station interval. The acceleration limit profile and the deceleration limit profile
thus need to be calculated in all of the situations.
[0130] First, referring to FIG. 8, a variable ST as shown in FIGS. 9 and 10 is described.
A velocity limit is expressed by the following structure array:
struct velocity_limitation{double position;//start position of velocity limitation
double velocity;// velocity limit at and after start position};
[0131] In FIG. 8, struct velocity_limitation ST[3] = {{0, vmax}, {x1, v2}, {x2, vmax}};
is obtained.
[0132] Herein, it is assumed that the smaller the index of the structure, the smaller the
start position, as represented by ST[0]. Position < ST[1]. Position < ST[2]. Position
< ST[3].position.
[0133] Next, positions to be the targets of the acceleration limit profile and the deceleration
limit profile are detected. At default the following are defined:
Target position of acceleration limit profile =
0;//Case 1
Target velocity of acceleration limit profile =
0;//Case 1
Target position of deceleration limit profile =
X;//Case 2(distance from station of departure to station of
arrival)
Target velocity of deceleration limit profile =
0;//Case 2
[0134] Other than the above, the positions satisfying the following conditions are set as
the target positions of the acceleration limit profile and the deceleration limit
profile.
[0135]
for(int i=1; I < sizeof (ST) /sizeof (ST [0]) ; i++)
{if( ST[i-1].velocity < ST[i].velocity)
{Target position of acceleration limit profile =
ST[i].position; //Case 3
Target velocity of acceleration limit profile = ST[i-
1].velocity; //Case 3}else
{Target position of deceleration limit profile =
ST[i].position; //Case 4
Target velocity of deceleration limit profile =
ST[i].velocity; //Case 3}}
[0136] In FIG. 9 the array ST includes, for the target positions and the target velocities
necessary for generating the acceleration limit profile, all the target positions
and target velocities satisfying the above conditions in Case 1 when a train leaves
a default station and in case that multiple velocity limits are set.
[0137] Likewise, in FIG. 10 the array ST includes, for the target positions and the target
velocities necessary for generating the deceleration limit profile, all the target
positions and target velocities satisfying the above conditions in Case 2 when a train
arrives at a default station and in case that multiple velocity limits are set.
[0138] Specifically, exemplifying FIG. 8, the acceleration limit profile is represented
by

The deceleration limit profile is represented by

[0139] In the acceleration limit profile generation process (step S201), first, (velocity,
position) at the maximum acceleration and the maximum deceleration is calculated.
[0140] The curves indicated by Case 1 to Case 4 as shown in FIG. 8 are referred to as acceleration
limit profiles and deceleration limit profiles.
[0141] The acceleration limit profile can be simply obtained, given initial velocity and
position conditions at the maximum acceleration.
[0142] As shown in FIG. 9, the running profile generator 106 initializes a variable s to
0(step S401).
[0143] Next, it sets the target position of the acceleration limit profile, i.e., elapsed
time from acceleration i = 0, initial velocity v(0)= ST[s].velocity, and initial position
x (0)= ST[s].position (step S402).
[0144] Next, the running profile generator 106 adds 1 to time point i (step S403).
[0145] The running profile generator 106 then calculates a state (v(i),x(i)) at time point
i by solving an equation of motion using a maximum acceleration notch (corresponding
to a notch position where the maximum acceleration is obtainable) (step S404).
[0146] The running profile generator 106 then determines whether or not a velocity v(i)
at time point i exceeds a velocity limit vmax, that is, v(i) > vmax, or whether a
position x(i) exceeds a target position ST[s].position (step S405).
[0147] In step S405, when determining that the velocity v(i) at time point i does not exceed
the velocity limit vmax and the position x(i) does not exceed the target position
ST[s].position (No in step S405), the running profile generator 106 returns to step
S403 and repeats the same processes.
[0148] In step S405, when determining that the velocity v(i) at time point i exceeds the
velocity limit vmax or the position x(i) exceeds the target position ST[s].position
(Yes in step S405), the running profile generator 106 determines whether or not it
has reached the target position of the acceleration limit profile, that is, s = sizeof(ST[s])/sizeof(ST[0])
(step S406).
[0149] When determining that it has not reached the target position of the acceleration
limit profile (No in step S406), the running profile generator 106 adds 1 to the variable
s (step S407) and returns to step S402 and repeats the same processes.
[0150] When determining that it has reached the target position of the acceleration limit
profile (Yes in step S406), the running profile generator 106 ends the acceleration
limit profile generation process.
[0151] Next, the running profile generator 106 calculates a deceleration limit profile same
as the acceleration limit profile (step S202).
[0152] According to the present embodiment, to calculate the deceleration limit profile,
an initial condition satisfying a termination condition is searched for by iteration.
Generally, it is almost impossible that the initial condition completely matches the
termination condition, therefore, the termination condition is given an allowable
range (ε and δ) to obtain an initial condition satisfying the allowable range.
[0153] First, the running profile generator 106 initializes the variable s to 0, initializes
a variable a to 0, and sets a variable b = ST[s].position and a variable Distance
= ST[s].position (step S501).
[0154] Then, the running profile generator 106 sets the target position of the deceleration
limit profile, that is, elapsed time from deceleration i=0, initial velocity v(0)
= vmax, and initial position x(0)=(a+b)/2.0 (step S502).
[0155] The running profile generator 106 then adds 1 to time point i (step S503).
[0156] The running profile generator 106 calculates a state of the train at time point i
by solving an equation of motion with the maximum deceleration notch (step S504).
[0157] The running profile generator 106 then determines whether or not the velocity v(i)
at time point i satisfies the following formula corresponding to the allowable value
ε(step S505).

[0158] In step S505 when determining that ε≤v(i) is satisfied (No in step S505), the running
profile generator 106 returns to step S503 and repeats the same processes.
[0159] In step S505 when determining that 0 ≤ v(i) < ε is satisfied (Yes in step S505),
the running profile generator 106 determines whether or not the position x(i) at time
point i satisfies the following formula corresponding to the allowable value δ(step
S506).

[0160] In step S506 upon determining that x(i)-Distance | ≥ δ is satisfied (No in step S506),
the running profile generator 106 determines whether or not x(i)< Distance holds true
(step S507).
[0161] In step S507 when determining that x(i) < Distance is satisfied (Yes in step S507),
the running profile generator 106 sets the variable a = (a+b)/2.0 (step S508) and
returns to step S502 to perform the same processes.
[0162] In step S507 when determining that x(i) ≥ Distance is satisfied (No in step S507),
the running profile generator 106 sets the variable b = (a+b)/2.0 (step S509) and
returns to step S502 to perform the same processes.
[0163] In step S506 upon determining that |x(i)-Distance | < δ is satisfied (Yes in step
S506), the running profile generator 106 determines whether or not it has reached
the target position of the deceleration limit profile, that is,

[0164] In step S510 upon determining that it has not reached the target position of the
deceleration limit profile (No in step S510), the running profile generator 106 adds
1 to the variable s (step S511) and returns to step S502 to repeat the same processes.
[0165] In step S510 upon determining that it has reached the target position of the deceleration
limit profile (Yes in step S510), the running profile generator 106 ends the deceleration
limit profile generation process.
[0166] The deceleration limit profile may be calculated by reverse method in which an equation
of motion is solved while time is reversely advanced. However, with presence of a
gradient, a solution by the reverse method may differ from a solution by a general
numerical solution of differential equations while time is advanced forward.
[0167] Meanwhile, the present embodiment adopts the method of more accurately solving differential
equations and can obtain more precise deceleration limit profiles than by the reverse
method.
[0168] Next, the running profile generator 106 generates a minimum-time running profile
by pruning algorithm (step S203).
[0169] FIG. 11 is a process flowchart of a minimum-time running profile generation process.
[0170] A variable previous_state, a variable current_state, and a variable middle_state
are now described, as shown in FIG. 11.
[0171] In the present embodiment a control program written in a high-level language as C++
or JAVA (registered trademark) is used to implement the running profile generation
process.
[0172] Especially, C++ or JAVA can adopt a variable-length array which is changeable in
size depending on the number of elements. Because of this, in the present embodiment,
candidate solutions at each time point are expressed by variable-length arrays.
[0173] Specifically, candidate solutions are represented by the following structure arrays
in C++:
struct phase{double position;//position
double velocity;//velocity
double energy;//instantaneous energy consumption
amount
double total_energy;//accumulated energy consumption
amount
int notch[500];//notch number at each time point
int change_count;// number of notch switchings
int notch_continuous_time;//duration of current
notch};
[0174] Candidate solutions can be represented by:
vector <struct phase>previous_state;
vector<struct phase>current_state;
vector<struct phase>middle_state;
[0175] First, the running profile generator 106 sets elapsed time t=0, velocity v=0, and
position x=0 to the variable previous_state as the initial condition of the station
of departure (step S601).
[0176] The running profile generator 106 then solves, for each candidate solution at elapsed
time t+1, equations of motion (differential equations) at all the notches to create
the number ((number of candidate solutions at elapsed time t) × (number of notch options))
of candidate solutions, store the candidate solutions as the variable current_state
and remove (clear) the variable previous_state from a memory (step S602).
[0177] How to create candidate solutions at elapsed time t+1 is now specifically described.
[0178] Suppose that there are N candidate solutions at elapsed time t. A state of an n-th
candidate solution among the N candidate solutions is defined to be (t, v
n(t), x
n(t)) as an initial value in a numerical calculation. Then, a state thereof at elapsed
time t+1 is calculated using an acceleration or deceleration given by a k-th notch
NOTCH(k) by a numerical calculation such as 4
th-order Runge-Kutta method. Although the 4
th-order Runge-Kutta method is exemplified herein, the numerical solution of equations
of motion should not be limited to such an example.
[0179] Thus, NK candidate solutions are generated at elapsed time t+1.
[0180] Then, the running profile generator 106 checks if the velocity of each candidate
solution in the variable current_state is smaller than the velocity limit defined
by the acceleration limit profile, the deceleration limit profile, and the position,
to store only the smaller velocities in the variable middle_state and remove (clear)
the variable current_state from the memory (step S603).
[0181] The running profile generator 106 sorts the positions in the variable middle_state
in descending order and store K larger positions in the variable previous_state, and
remove (clear) the variable middle_state from the memory (step S604).
[0182] The K larger positions are stored for the purpose of preventing the occurrence of
no available candidate solutions. The larger the value of K, the lower the possibility
of no available candidate solutions. However, too large value K causes an increase
in calculation time. Practically, K = about 20 is considered as appropriate.
[0183] In the following K = 20 is assumed.
[0184] The running profile generator 106 repeats the process until a condition equivalent
to the termination condition with a margin is established (Yes in step S605), same
as the deceleration limit profile, and sets the elapsed time t+1 as the minimum running
time relative to the elapsed time t at which the candidate solution satisfying such
a condition is satisfied (step S607).
[0185] When determining that the condition is unsatisfied in step S605 (No step in S605),
the running profile generator 106 adds (increments) 1 to the elapsed time t (step
S606) and returns to step S602 to repeat the same processes.
[0186] Next, an energy-saving running profile generation process is described.
[0187] FIG. 12 is a process flowchart of the energy-saving running profile generation process.
[0188] First, the running profile generator 106 generates an energy-saving running profile
for a running time T (step S103).
[0189] Thus, the running profile generator 106 sets the result of the aforementioned minimum-time
running profile as an upper limit value and shifts the result by the running time
T along the time axis to set it as a lower limit value (step S700).
[0190] The running profile generator 106 sets elapsed time t = 0, velocity v = 0, and position
x = 0 to the variable previous_state as the initial condition of the station of departure
(step S701).
[0191] The running profile generator 106 then solves, for each candidate solution at elapsed
time t+1, equations of motion (differential equations) at all the notches to create
the number ((number of candidate solutions at elapsed time t) x (number of notch options))
of candidate solutions, store the candidate solutions as the variable current_state
and remove (clear) the variable previous_state from the memory (step S702).
[0192] The running profile generator 106 stores, in the variable middle_state, candidate
solutions in the variable current_state satisfying the solution conditions (position,
velocity, number of notch switchings, notch duration) and removes (clears) the variable
current_state from the memory (step S703).
[0193] The running profile generator 106 sorts the candidate solutions in the variable middle_state
at elapsed time t+1 by states (quantized position, quantized velocity, number of notch
switchings). It selects one of the candidate solutions with a smallest accumulated
energy consumption amount in the state regarded as same, and stores the selected one
in the variable previous_state and removes (clears) the variable middle_state from
the memory (step S704).
[0194] Next, the running profile generator 106 determines whether or not elapsed time t
= running time T is satisfied (step S705).
[0195] In step S705 when determining that elapsed time t < running time T holds true (No
in step S705), the running profile generator 106 adds 1 (increments, in step S706)
to the elapsed time t, and returns to step S702 to repeat the same processes.
[0196] In step S705 when determining that elapsed time t = running time T is satisfied (Yes
in step S705), the running profile generator 106 selects, as the optimal solution,
one with the smallest accumulated energy consumption amount from the candidate solutions
stored in the variable previous_state (step S707).
[0197] Next, the condition for checking candidate solutions is described in detail.
[0198] For the sake of simplicity, a running profile calculation when a train runs in a
given station interval for a running time T
min+10 is exemplified. Herein, the minimum running time T
min is a length of time (minimum running time) taken for the train to run fastest in
the station interval.
[0199] A train is assumed to run through the station interval in the running time T
min+10 longer than the minimum running time T
min by 10 seconds.
[0200] FIG. 13 is a (x-t) graph with time on the abscissa axis and train positions on the
vertical axis.
[0201] The upper graph shows a relationship between position x and elapsed time t when the
train runs for the minimum running time T
min while the lower graph shows the relationship between position x and elapsed time
t when the train waits at the station of departure for 10 seconds before running for
the minimum running time T
min.
[0202] Herein, the minimum running time T
min represents a running time of the train making the best use of vehicle performance.
With the same vehicle characteristics, the train cannot run faster than the speed.
[0203] In other words, with the vehicle characteristics found, the minimum running time
T
min is uniquely obtained.
[0204] Accordingly, if at a given time the position x of the train is closer to the station
of departure than the lower graph, the train cannot arrive at the station of arrival
(next station) in the running time T
min+10.
[0205] Hence, the following is derived.
[0206] For running a given station interval in the running time T
min+10, the position of the train at elapsed time t when running the same interval in
the minimum running time T
min is defined to be Upper[t] and the graph moved in parallel by 10 seconds from the
graph (t, Upper[t]) of the minimum running time is defined to be (t, Lower[t]). However,
when t<10, Lower[t] = 0 holds true.
[0207] The formula, Lower[t] ≤ x(t) ≤ Upper[t] is established where (t, v(t), x(t)) represents
a trajectory of a solution with the smallest energy consumption amount during the
running time T
min+10 and t is 0, 1, 2, ..., T
min+10.
[0208] FIG. 14 is an explanatory diagram of velocity conditions.
[0209] In railway business the curve shown in FIG. 14 is generally referred to as running
profile. Herein, velocity V at the position x corresponding to the running time T
is denoted by V
T[x] in the (v-x) graph. The following characteristic has been known from the previous
studies:

[0210] Thus, in the (v-x) graph, the running profile for the running time T is located more
inside than the minimum-time running profile.
[0211] However, since the result of the minimum-time running profile shows only the velocities
and positions of the train at discrete elapsed time t, it is difficult to calculate
the running profile in the same manner as V
Tmin [x].
[0212] In view of this, in place of the relational expression between V
T[x] and V
Tmin[x], the following expression is used. First, velocity and position at elapsed time
t on the optimal running profile for the running time T
min are denoted by V
Tmin(t), X
Tmin(t), respectively. Then, α (a natural number) satisfying X
Tmin (α-1) ≤ x (t) < X
Tmin(α) is found from the candidate solutions (t, v(t), x(t)) at elapsed time t. A determination
is made on whether or not the found α satisfies the following expression.

[0213] This expression represents approximation of V
Tmin(x) by linear interpolation based on the result of the running profile for the running
time Tmin which gives the upper limit velocity depending on the position.
[0214] Meanwhile, the running profile with less accumulated energy consumption amount simply
obtained by the above method may not always provide good operability for drivers.
[0215] For example, to operate a vehicle following the generated running profile, a driver
may need to perform detailed notch operation at each time point and such an operation
may be impractical.
[0216] According to the present embodiment, therefore, the number of notch switchings till
a certain time point is counted and used as a condition for selecting a candidate
solution. Candidate solutions with the count exceeding a fixed value are removed from
the candidate solutions. For instance, if the number of notch switchings during a
certain station interval until a train arrives at a next station is set to 10, only
the variables current_state[i] satisfying the condition that a variable storing the
number of notch switchings, current_state[i].change_count ≤ 10 are stored in the variable
middle_state.
[0217] A notch continuance condition, same as the number of notch switchings, is also a
condition for preventing a notch switching at short time intervals. If the notch continuance
condition is set to 5 seconds or more, only the variables current_state[i] satisfying
the condition that a variable storing a notch duration, current_state[i]. notch_continuous_time
≤ 5 are stored in the variable middle_state.
[0218] Therefore, in the above step S703 the determination is made on all the candidate
solutions based on the conditions for position, velocity, number of notch switchings,
and notch duration, to store only the candidate solutions satisfying these conditions
in the variable middle_state.
[0219] Further, in step S704 among the candidate solutions satisfying the respective conditions
stored in the variable middle_state in step S703, the velocity and position of the
state (t, v(t), x(t)) at elapsed time t+1 are quantized and grouped by the quantized
velocity and position, the number of notch switchings, and the notch duration to select
only the ones with the smallest accumulated energy consumption amount from the groups.
[0220] According to the present embodiment, it is easy to add the process of selecting a
notch so as not to exceed the upper limit of an instantaneous energy consumption amount.
[0221] Quantization process is now described in detail.
[0222] FIG. 15A is an explanatory diagram of quantization process (part 1).
[0223] FIG. 15B is an explanatory diagram of quantization process (part 2).
[0224] In order to quantize continuous values of the position and the velocity, for example,
the values of the position and the values of the velocity can be quantized at a fixed
interval as 1[m] and 0.1[m/sec], respectively, or the upper limit value Upper[t] and
the lower limit value Lower[t] of the position at time point t can be defined to divide
Upper[t] and Lower[t] into N for quantization. The following will be described on
the premise that the position and velocity are quantized at a fixed interval.
[0225] In the present embodiment, the four conditions for position, velocity, number of
notch switchings, and notch duration are set and the states of candidate solutions
are defined on the four axes. However, due to the difficulty in depicting the states
in four and larger dimensions, three conditions for position, velocity, and number
of notch switchings are described herein.
[0226] FIG. 15A shows a result of pruning candidate solutions at a certain elapsed time
t.
[0227] In quantization process the (v(t),x(t),n(t)) space is divided in lattice (rectangles),
as shown in FIG. 15A and the same divided area is considered to be in the same state
(condition). Herein, n(t) represents the number of notch switchings at the elapsed
time t.
[0228] If multiple candidate solutions are present in the same divided area, only one candidate
solution with the smallest accumulated energy consumption amount is selected. As a
result, pruning of a larger number of candidates is feasible, making it possible to
further shortening a process time.
[0229] In FIG. 15B black circles denote remaining candidate solutions in each area.
[0230] In step S705 the running profile generator 106 determines whether or not the elapsed
time t coincides with the running time T, and if not (No in step S705), it proceeds
to step S706 to increment the elapsed time t and returns to step S702.
[0231] In step S705 when the elapsed time t coincides with the running time T (Yes in step
S705), the running profile generator 106 selects one of the candidate solutions with
the smallest accumulated energy consumption amount as the optimal solution (step S707).
[0232] In step S707, the candidate solutions can be sorted in ascending order of accumulated
energy consumption amounts to definitely select the one with the smallest accumulated
energy consumption amount therefrom.
[0233] When there are multiple remaining candidate solutions at the end of the process,
the running profile generator 106 determines a solution with the smallest accumulated
energy consumption amount + penalty (v, x) as the optimal solution.
[0234] Penalty (v(T), x(T)) represents a penalty for an error between the state (T, v(T),
x(T)) at the elapsed time t and the terminal state (T, 0, X). In calculating velocity
and position by equations of motion, typically, the velocity and position rarely match
the terminal state completely because of use of floating-point variables. In view
of this, a function, penalty (v(T), x(T)) is prepared to evaluate the accumulated
energy consumption amounts containing errors.
[0235] Penalty(v(T),x(T)) is determined by the following expression as disclosed in Nonpatent
Literature 1.

[0236] After generating the energy-saving running profile of the train concerned TR1 by
the afore-mentioned steps, the running profile generator 106 stores a result of the
energy-saving running profile for the running time T in a not-shown hard disc drive
or semiconductor memory device as a generated running profile storage (step S104).
[0237] Thereby, the running information extractor 107 extracts a velocity limit value at
each block entry point from the generated energy-saving running profile and informs
a traffic light of the extracted velocity limit value.
[0238] FIG. 16 is an explanatory diagram of the velocity limit setting by way of example.
[0239] In the example of FIG. 16, a velocity limit value at 2,000 m point = 110km/h, a velocity
limit value at 3,000 m point = 100km/h, and a velocity limit value at 4,000 m point
= 90km/h are defined so that the closer to the station ahead ST0, the gradually lower
the velocity limit value. This enables safer, more energy-efficient, and more on-schedule
train operation.
[0240] As described above, according to the present embodiment, the train concerned TR1
can be operated to make up for an actual delay. At the same time, to deal with the
delay of the preceding train, it can be prevented from unnecessarily decelerating
and stopping by a stop signal depending on the position of the preceding train, which
leads to achieving energy saving.
[0241] As for the delay of the succeeding train, it is also possible to suppress an increase
in the delay of the succeeding train caused by an increase in the number of boarding
passengers due to an elongated headway as well as to prevent the train concerned TR1
from being delayed due to a delayed departure time.
[0242] The train operation control device according to the present embodiment includes a
control unit as a CPU, a storage as a ROM (Read Only Memory) or a RAM, an external
storage as an HDD or a CD drive unit, a display as a display unit, and an input device
as a keyboard or a mouse, and can have a hardware configuration including a general-purpose
computer.
[0243] The control program executed in the train operation control device according to the
present embodiment is in an installable or executable file format recorded and offered
on a computer readable storage medium including a CD-ROM, a flexible disk (FD), a
CD-R, or a DVD(Digital Versatile Disk).
[0244] Alternatively, the control program executed in the train operation control device
according to the present embodiment can be stored on a computer connected to a network
such as the Internet and downloaded via the network. The control program executed
in the train operation control device according to the present embodiment can be also
provided or distributed via a network such as the Internet.
[0245] The control program for the train operation control device according to the present
embodiment can be incorporated into an ROM or the like in advance.
[0246] While certain embodiments have been described, these embodiments have been presented
by way of example only, and are not intended to limit the scope of the inventions.
Indeed, the novel methods and systems described herein may be embodied in a variety
of other forms; furthermore, various omissions, substitutions and changes in the form
of the methods and systems described herein may be made without departing from the
spirit of the inventions. The accompanying claims and their equivalents are intended
to cover such forms or modifications as would fall within the scope and spirit of
the inventions.