Abstract:
Data representative of a train consist (the train consist comprising a plurality of locomotives and a plurality of cars) and data representative of a route for the train consist can be processed by a processor to automatically determine which locomotives in the train consist should be powered on and which locomotives in the train consist should be shut down for each segment of the route. The processor can make these determinations based on an analysis of the train consist data and the route data with respect to a plurality of considerations that affect train efficiency. Recommendations for locomotive startups and shutdowns in accordance with such automated determinations can then be presented to the train crew for the crew to use during train operations. It is believed that when train crews are in compliance with such recommendations, significant improvements in efficiency, particularly with respect to fuel consumption, can be achieved.

Description:
CROSS-REFERENCE AND PRIORITY CLAIM TO RELATED PATENT APPLICATION 
     This patent application claims priority to provisional patent application Ser. No. 61/620,838, filed Apr. 5, 2012, entitled “System and Method for Automated Locomotive Startup and Shutdown Recommendations”, the entire disclosure of which is incorporated herein by reference. 
    
    
     INTRODUCTION 
     Inefficient utilization of train locomotives wastes fuel and increases maintenance demands on locomotives. By contrast, efficient locomotive utilization significantly reduces the fuel consumption and reduces maintenance. Furthermore, efficient locomotive utilization is also expected to improve safety because braking power needs vary depending on conditions. In many conventional train operations, it is up to the crew to decide how many and what locomotives should be operated during a trip, relying heavily upon the crew&#39;s experience and training. The inventors believe that a significant percentage of trains that have been operated under such conditions have operated in an inefficient manner. 
     The inventors have developed embodiments of the present invention described herein in an effort to improve upon such shortcomings. For example, the inventors disclose that data representative of a train consist (the train consist comprising a plurality of locomotives and a plurality of cars) and data representative of a route for the train consist can be processed by a processor to automatically determine which locomotives in the train consist should be powered on and which locomotives in the train consist should be shut down for each segment of the route, where the processor is configured to make these determinations based on an analysis of the train consist data and the route data with respect to a plurality of considerations that affect train efficiency. Recommendations for locomotive startups and shutdowns in accordance with such automated determinations can then be presented to the train crew for the crew to use during train operations. It is believed that when train crews are in compliance with such recommendations, significant improvements in efficiency, particularly with respect to fuel consumption, can be achieved. 
     In an exemplary embodiment, the processor can be configured to generate such recommendations to a train crew at their on-duty time to shut down or turn on specific locomotives in the train consists. Furthermore, in an exemplary embodiment, the processor can be configured to analyze data representative of the total train tonnage, the tons per axle (TPA) rating for the train&#39;s route, and dynamic braking power requirements when determining exactly how many and which locomotives need to be turned on (or turned off). 
     These are merely some of the innumerable aspects of the present invention and should not be deemed an all-inclusive listing of the innumerable aspects associated with the present invention. These and other aspects will become apparent to those skilled in the art in light of the following disclosure and accompanying drawings. The description and specific examples in this summary are intended for purposes of illustration only and are not intended to limit the scope of the present disclosure. 
    
    
     
       BRIEF DESCRIPTION OF DRAWINGS 
       The drawings described herein are for illustrative purposes only of selected embodiments and not all possible implementations, and are not intended to limit the scope of the present disclosure. 
         FIG. 1  shows an exemplary train consist; 
         FIG. 2(   a ) shows an exemplary system diagram for an exemplary embodiment; 
         FIG. 2(   b ) shows an shows an exemplary architecture diagram of an Automated Locomotive Startup and Shutdown Recommendations system in accordance with an exemplary embodiment; 
         FIG. 3  shows an exemplary flow diagram of a technique for determining excess equivalent powered axle in accordance with an exemplary embodiment; 
         FIGS. 4(   a ) and ( b ) show an exemplary flow diagram of a technique for calculating locomotive start up and shutdown recommendations in accordance with an exemplary embodiment; 
         FIGS. 5-8  show exemplary outputs that the system can generate to communicate recommendations about locomotive statuses. 
     
    
    
     Reference characters in the written specification indicate corresponding items shown throughout the drawing figures. 
     DETAILED DESCRIPTION 
     In the following detailed description, numerous specific details are set forth in order to provide a thorough understanding of the various embodiments of the invention. However, it will be understood by those skilled in the art that the present invention may be practiced without these specific details. In other instances, well-known methods, procedures, and components have not been described in detail so as to obscure the present invention. 
     An illustrative, but nonlimiting, embodiment of the train consist is shown in  FIG. 1 .  FIG. 1  has a lead locomotive  101  at H1, another locomotive  102  at H2, a third locomotive  103  at H3, and a car  104 . The three locomotives,  101 ,  102 , and  103 , make up the head locomotive consist (the only consist for this train). A locomotive consist may comprise one or more locomotives that are connected to each other in sequence. For a locomotive consist with two locomotives, the forward locomotive can be referred to as the lead locomotive and the rear locomotive can be referred to as the trailing locomotive. For a locomotive consist with three or more locomotives, once again the forwardmost locomotive can be referred to as the lead locomotive and the rearmost locomotive can be referred to as the trailing locomotive while each of the one or more locomotives that are between the lead locomotive and the trailing locomotive in that locomotive consist can be referred to as a cut-in locomotive (an example of which is shown in  FIG. 1 ). A train consist may have multiple locomotive consists. For example, additional locomotive consists may be added to a train consist to increase the power and/or handling for the train consist in view of operating conditions. While such additional locomotive consists are typically added to the end of the last car in the train consist, this need not necessarily be the case, and there may be multiple locomotives and/or locomotive consists interspersed throughout the train consist, optionally separated by what may be large numbers of train cars, including loaded train cars and unloaded train cars. If a train consist has more than one locomotive consist, the forward-most locomotive consist is the lead locomotive consist. Throughout this disclosure, the terms “locomotive consist” and “consist” are used interchangeably. 
       FIG. 2(   a ) depicts an exemplary system diagram for various embodiments. A computer  150 , which includes processor  152  and memory  154 , operates to receive data that is representative of the train consist and data that is representative of a route for the train consist. Memory  154  can store a plurality of instructions such as software programs that are executable by the processor  152 . The memory  154  can also store a plurality of data structures that are processed by the software programs to determine the appropriate recommendations. The memory  154  can take the form of any non-transitory medium upon which data can be stored for access by a processor, including but not limited to a hard drive, random access memory (RAM), removable storage media such as flash drives and the like, etc. The processor  152  executes the programmed instructions to perform the operations described herein and generate recommendations regarding which locomotives in the train consist should be started up or shutdown for a segment of the route. 
     Further still, the computer  150  may reside in a location remote from the train consist being analyzed. For example, computer  150  may comprise a computer system operated by a train operator remote from the train consists themselves, where the processor  152  may reside on a server for example. In such a case, the computer  150  may include data communication capabilities that permit the computer to communicate the generated recommendations to each train consist&#39;s crew. Such communication can be achieved in any of a number of ways via any number of well-known data communication networks. For example, the recommendations can be emailed or otherwise sent to appropriate members of the train crews for receipt via a computing device held by such train crew members (e.g., a tablet computer, mobile device (e.g., smart phone), laptop, etc.). As another example, a computer resident on the train consist itself can receive the communicated recommendations and then provide such received recommendations to the train crew via a user interface, whether it be a screen, printer, or other form of interface. 
     Moreover, it should be understood that processor  152  may comprise multiple processors, including processors that are distributed across several devices with the processing tasks of the operations described herein being distributed across such processors. The memory  154  can similarly be distributed across multiple memory devices. 
       FIG. 2(   b ) shows an shows an exemplary architecture diagram of an Automated Locomotive Startup and Shutdown Recommendations system in accordance with an exemplary embodiment. The Automated Locomotive Startup and Shutdown Recommendations System  200  shown in  FIG. 2(   b ) evaluates the startup and shutdown possibilities at each crew change. At a crew change, the system  200  gathers data about the outbound tons and the route characteristics until the next crew change point. 
     The system  200  is not dependent on any particular software technology. The embodiment shown in  FIG. 2(   b ) has a message processing component  203 , which could be based on Java Messaging Service (JMS) technology. Furthermore, the system  200  may operate over a communication protocol, such as a TCP/IP proxy  204 . 
     The batch jobs component  205  is a central processing component of the architecture. The batch jobs component  205  executes the logic for the system  200 . The batch jobs component  205  is triggered at periodic intervals, and it monitors upcoming crew changes. In one embodiment, the batch job component  205  is triggered once every 10 minutes and looks for all crew segments with crew change, also known as a crew-on-duty, within the next 15 minutes. The system  200  can also have a persistence layer  207 , which connects to the databases. In the embodiment shown in  FIG. 2(   b ), the persistence layer  207  connects through Spring and JDBC technology to two Oracle databases, though any database connectivity and database technology could be used. The databases store train schedule information as well as train consist information.  FIG. 2(   b ) shows a transactional database  208  and a reporting database  209 , though the number of data stores in not important. Collectively, the transactional database  208  and a reporting database  209  are called the locomotive distribution and assignment (LDA) database. 
     The services proxy  211  and the rules engine  212  interact with the business services component  206  to generate outputs from the system  200 . In the embodiment shown in  FIG. 2(   b ), the services proxy is comprised of JMS built with XMF. XMF is a comprehensive set of tools used to build web services over JMS and clients that call them. XMF is used to build any system that needs to expose or call services over JMS. The Java Message Service (JMS) API is a Java Message Oriented Middleware (MOM) API for sending messages between two or more clients. 
     The Transportation Control System  201  (TCS) is a software system that is responsible for automated railroad operations. In the embodiment shown in  FIG. 2(   b ), it is responsible for feeding the train schedules, crew change points, crew-on-duty times  202 , outbound tons, and route characteristics to the LDA database and also responsible for displaying the output from the system  200 . Output from the system  200  is fed through an integration component  213  to the TCS  201 . 
     Exemplary data that can be obtained from the LDA database about train schedules, crews, routes, etc. can include:
         A data field for uniquely identifying a train   A data field that provides a power requirement code for the train.   A 1-byte section number in the train ID field.   A 7-byte symbol number in the train ID field.   A 2-byte date in the train ID field.   A train ID pointer to the train symbol table. The last two characters of the 10 character field can be empty. This could be used as a template field.   A station number pointer for identifying where interchange took place.   A data field that identifies a to interchange road.   A data field that identifies an interchange station number to.   A data field that identifies a user who created the train record.   A data field that identifies the date on which the user created the train record.   A data field that identifies an effective date from the train schedule that can be used as a starting point.   A data field that identifies a current station for the train (DE normalized).   A data field that identifies a train category.   A data field relating to train timeliness. The values can be calculated based on thresholds cataloged in a table associated with the train, a current time, and a scheduled departure time (origin only) or scheduled arrival time (all other stations). Exemplary values can include:
           1: On-time   2: Slightly late   3: Very late   
           A data field that identifies a service type classification for a train.   A data field that identifies whether the train should be displayed.   A data field that identifies a last reporting type (e.g., A for arrival, D for departure).   A data field that identifies a date/time stamp for last reporting.   A data field that identifies a train cars count per last movement reporting.   A data field that identifies a train length per last reporting.   A data field that identifies train tonnage per last movement reporting.   A data field that includes free form notes.   A data field that identifies a date/time stamp of last event related to the life of the train.   A data field that identifies a life event type.   A data field that identifies a station at which last train life-critical event took place.   A data field that identifies a station sequence number for the train according to the train_schedule table.   A data field that identifies a sub-category for the train   A data field that identifies a priority for the train   A data field that identifies a direction in which the train is headed.   A data field that identifies a common name for a train (e.g., a 14 character field).   A data field that identifies the road on which a locomotive comes in on.   A data field that identifies a prior train from where the units come.   A data field that identifies a next train to which the units go.   A data field that indicates if LMS model is to recommend units to this train.   A data field that identifies a time/date stamp associated with the last TER message received for the train.   A data field that identifies an origin sequence number of the train.   A data field that identifies support for Detecting Trains to be shown on the BLD Outbound from Parent List Box. Exemplary valid values can be:
           I—train should be displayed in the Inbound to Parent Listbox of BLD;   O—train should be displayed in the Outbound from Parent Listbox of BLD;   A—train should be displayed in the Other Trains Listbox of BLD;   N—train should not be displayed on the BLD.   
           A data field that identifies a train ID for which there is a planned location in route.   A data field that identifies a sequence number that, with the train ID, uniquely identifies a row.   A data field that identifies a user who created a train plan.   A data field that identifies a Stn train&#39;s schedule.   A data field that identifies a scheduled estimated time of arrival (ETA) for a given location and train per reference schedule for train.   A data field that identifies the direction from which the train is arriving at a station.   A data field that identifies an arrival date for the train at a station.   A data field that identifies an arrival time based on TRUPD and TRTR messages for locations in the schedule subsequent to the reporting location, where a flag can identify whether the arrival times are estimated or actual.   A data field that identifies a scheduled estimated time of departure (ETD) for a train at a station per reference schedule for the train.   A data field that identifies a direction of travel for the train when it departs the station.   A data field that identifies an actual date of departure for the train from the station.   A data field that identifies a departure time for the train based on TRUPD and TRTR messages for locations in the schedule subsequent to the reporting location, where a flag can identify whether the departure times are estimated or actual.   A data field that indicates a planned handling of power at a station for the train. Exemplary values can include:
           “−”—no change   “X”—change permitted   “A”—advanced power change point   
           Note: If train profile/station table is used to create train plan records the first (origin) and last (termination), stations must be set to true (“X”).   A data field that indicates plans for crew changes. Exemplary values can include:
           0 or blank—No change required   1—locomotive engineer   2—trainmen and reducible   3—trainmen and not reducible   4—locomotive engineer/trainmen and reducible   5—locomotive engineer/trainmen and not reducible   
           A data field that identifies a number of cars on the train when the train departed the station.   A data field that identifies the length of the train (in feet) when the train departed from the station.   A data field that identifies the trailing tonnage of the train when the train departed from the station.   A data field that identifies equated tonnage calculated at departure time from the reported actual trailing tonnage.   A data field that identifies a date stamp for creation of the train schedule.   A data field that identifies a date stamp for the last update to the train schedule.   A data field that identifies an alpha value for the type of train reporting that a station is to perform. Exemplary values can include:
           O—Origin   I—Intermediate   C—Crew change point   T—Termination   
           A data field that identifies a required horsepower for the train schedule for the departing station.   A data field that identifies the user who last updated the train schedule.   A data field that identifies an estimated crew call date.   A data field that identifies an actual crew call date.   A data field that identifies an inbound/outbound status for the train at the station. Exemplary values can include:
           D—Detoured Inbound   A—Annuled Inbound   C—Consolidated Inbound   blank—no exception   
           This can be a two character field; each of inbound and outbound status have one byte of information.   A data field that indicates if power has been verified for the train at that particular station.   A data field that identifies a train date (e.g., in a mm/dd/yyyy format).   A data field that identifies the number of locomotives powering the train per the LDA plan.   A data field that indicates whether the train is deemed an “extra” train.   A data field that identifies the total scheduled horsepower divided by the actual horsepower for the train.   A data field that identifies the required outbound TPA from a given sequence.       

     A data field that identifies the maximum allowed equivalent powered axle (EPA) in the head consist.
         A data field that identifies the maximum allowed EPA in the middle consist(s).   A data field that identifies the maximum allowed EPA in the rear consist.   A data field that indicates whether the train has actually arrived at an associated station.   A data field that indicates whether the train has actually departed an associated station.   A data field that identifies the time at which the crew comes on duty.   A data field that identifies a terrain category for the route segment.   A data field that identifies the amount of outbound tons from a given station in the route when the crew arrived.   A data field that identifies the real outbound tons when the train departed.   A data field that identifies the time at which a recommendation was made.   A data field that identifies the time at which the external system acknowledged that the recommendation was received.   A data field that indicates whether a recommendation was sent.   A data field that identifies a maximum allowed braking power in the head consist.   A data field that identifies a maximum allowed braking power in the middle consist(s).   A data field that identifies a maximum allowed braking power in the rear consist.   A data field that indicates whether an associated station qualifies as a “braking critical” region.       

       FIGS. 3 ,  4 ( a ) and  4 ( b ) show an illustrative, but nonlimiting, embodiment of a technique for automatically determining locomotive startup and shutdown recommendations in accordance with an exemplary embodiment. In the description of the flowcharts, the explanation marked with numerals in angle brackets, &lt;nnn&gt;, will refer to the flowchart blocks bearing that number. 
     As shown in  FIG. 3 , the processor begins its process for generating automated locomotive startup and shutdown recommendations by considering whether the train is in a category which is excluded from crew recommendation &lt; 301 &gt;. Depending upon the desires of a practitioner, some types of trains, such as dummy trains and trackage rights trains, may not be suited for automatic locomotive startup and shutdown recommendations. Train categories can be recorded in a train table, which can be stored in the LDA database. 
     The LDA database has a record for each train that is planned or actively running on the network. Train table records are purged periodically, and in one embodiment, train table records are purged every 48 hours. Power moves (e.g., locomotives that are being run without any cars, typically done to balance locomotive supply and demand at various terminals) are excluded from the automatic locomotive startup and shutdown recommendations method of this exemplary embodiment as well as local, passenger, yard-job, foreign-trackage, and inbound foreign train types. However, as noted, a practitioner can choose to include any of these train types in the recommendations process or exclude other train types from the recommendations process if desired. If the train type is an excluded category, the processor ends at &lt; 302 &gt;. 
     If the train type is not an excluded category at &lt; 301 &gt;, the processor continues to &lt; 303 &gt; where it determines whether the train is at a station sequence origin or if this is a first crew segment. If either condition is met, the processor terminates at &lt; 306 &gt;. If neither condition is met, the processor proceeds to determine whether the train consist has only one locomotive &lt; 304 &gt;. If the train consist has only one locomotive, there is no need to continue the process of choosing which locomotives to turn on/off, so the processor terminates at &lt; 307 &gt;. 
     If there is more than one locomotive in the train consist, the processor proceeds to step  305 . At step  305 , the processor checks to determine whether any of the locomotive consists in the train consist other than the lead locomotive consist have an adjusted equivalent powered axle (EPA) value greater than or equal to a threshold. EPA is a measure of the power of a locomotive. An adjusted EPA takes into account locomotive defects, locomotive health and mechanical status, or other factors which may alter locomotive power. The adjusted EPA values for the other locomotive consists in the train consist can be read from the LDA data. Business rules will determine the threshold value for the adjusted EPA threshold used by step  305  based on considerations desired by a practitioner. For example, a threshold value of 24 can be used. If any of the locomotive consists other than the head or lead locomotive consist has an adjusted EPA is greater than the threshold value, the processor terminates at &lt; 308 &gt; for safety reasons. This threshold serves to identify situations where the train&#39;s EPA is unusually high, which may serve as a sign that something is not right about the train or that data errors are present. In such a scenario, it is desired that no recommendations be made other than flagging a possible error situation. If none of the locomotive consists other than the head or lead locomotive consist has an adjusted EPA is greater than the threshold value, the processor proceeds to calculate the excess EPA, which informs the processor of how much extra/unneeded power may be present in the train consist for use by the process flow to make decisions about turning on/shutting down locomotives. 
     Excess EPA can be determined from actual EPA and required EPA values. At &lt; 309 &gt;, the processor calculates the actual EPA as the sum of all effective EPA values of locomotives assigned to the train consist. The values for the effective EPAs for the subject locomotives are obtained from the LDA database. 
     At &lt; 310 &gt;, the processor calculates the required EPA as the maximum of scheduled outbound tons at a crew segment plus dead weight of non-working locomotives divided by the minimum tons per axle (TPA) of the crew segment &lt; 310 &gt;. A crew segment can be a route segment that falls between consecutive crew changes, which can be determined from the LDA database. Scheduled outbound tonnage is the tonnage of freight that is hauled from a given station. The value for the scheduled outbound tonnage for a crew segment can be determined from the LDA database. Dead weight is the extra tons that are added to the scheduled outbound tons because a non-working locomotive adds dead weight to freight tonnage. The dead weight value can also be determined from the LDA database using knowledge of locomotive weight. The minimum TPA is the minimum amount of power required to haul a ton of weight. A higher minimum TPA would signify the train needs more power to move a ton of weight depending on terrain, topography, region, etc. The LDA database can store TPA data for all stations covered by a route, and the processor can determine the minimum TPA value from this data and crew segment data in the LDA database. 
     At &lt; 311 &gt;, the processor then calculates the excess EPA, X, as the difference between the actual EPA and the required EPA. Logically, a positive excess EPA indicates that one or more locomotives may be identified for shutdown, and a negative excess EPA indicates that one or more locomotives may be identified for startup. At &lt; 312 &gt;, the processor then proceeds to the rules logic of  FIGS. 4(   a ) and ( b ) using the excess EPA value, X. 
     As shown in  FIG. 4(   a ), the rules logic at &lt; 400 &gt; initializes the locomotive index j to 2 for iterating through the locomotives in the locomotive consist, from H2 to Hn, bypassing the lead locomotive because it cannot be shut down. In  FIGS. 4(   a ) and ( b ), “Hj” denotes a particular locomotive j in the consist. The rules logic evaluates one locomotive, Hj, at a time. In an exemplary embodiment, the locomotives are ordered within the train consist such that the forwardmost locomotives have relatively lower values for j. For example, H1 would be the lead locomotive, H2 would be the second forwardmost locomotive, and so on. 
     Each locomotive has an assigned status, indicating whether it is operational or capable of being operational. Table 1 depicts an exemplary set of locomotive statuses. 
     
       
         
               
             
               
               
             
           
               
                 TABLE 1 
               
               
                   
               
               
                 Locomotive Status 
               
               
                   
               
             
             
               
                   
               
             
          
           
               
                 DG 
                 Dead Good, locomotive is shut down but capable of being 
               
               
                   
                 operational 
               
               
                 WK 
                 Working, locomotive is operational 
               
               
                 RG 
                 Repositioning Good, locomotive can be used if needed 
               
               
                 DB 
                 Dead Bad, locomotive is not functional 
               
               
                 PD 
                 Past Due, locomotive is past due for a federal inspection and 
               
               
                   
                 cannot be used 
               
               
                   
               
             
          
         
       
     
     The rules logic of  FIGS. 4(   a ) and ( b ) is best described through an example. Consider H2, the second forward-most locomotive in the consist. As noted, the variable X is the excess EPA carried forward from the process flow in  FIG. 3 . At &lt; 402 &gt;, the processor sets variable Y as the adjusted EPA of H2. This Y value can be determined from data in the LDA database. The value of the excess EPA determines whether a locomotive is a candidate for start up or shut down. If the excess EPA (X) is less than or equal to 0, the train needs more power and H2 may need to be turned on and possibly changed to a WK status. If the excess EPA (X) is greater than 0, the train has too much power and H2 may be a candidate to turn off. At &lt; 404 &gt;, the processor compares Y with X to check this condition. 
     First, one can follow the flow resulting from insufficient locomotive power (see the process flow following the “yes” branch from &lt; 404 &gt;). If the excess EPA (X) is less than or equal to 0, and H2 has a status of DG &lt; 406 &gt;, the processor at &lt; 408 &gt; identifies H2 as a locomotive to be turned on because more EPA is needed. With an exemplary embodiment, locomotives having an RG status can optionally be deemed ineligible for turn on because RG locomotives are typically employed for test runs. At &lt; 410 &gt;, the processor then adds the adjusted EPA of H2 (Y) to the excess EPA (X) to yield an updated X value. Optionally, the processor can also update other data fields such as data relating to braking needs that are affected by the turning on of H2. The processor next proceeds to check for more locomotives at &lt; 412 &gt;. If the processor determines at &lt; 406 &gt; that H2 does not have a status of DG, then the processor proceeds to check for more locomotives at &lt; 412 &gt;. If there are no more locomotives, the process flow terminates. If there are more locomotives, the value for j is incremented at &lt; 414 &gt; and the processor returns to &lt; 402 &gt; for the next iteration. Thus, with this exemplary embodiment, if the status of H2 is RG, DB, or PD, it is not considered as a candidate for startup. The remainder of the flow is discussed in more detail below. 
     Second, continuing with the example, one can follow the flow resulting from excess locomotive power (see the process flow following the “no” branch from &lt; 404 &gt;). This process flow relates to decision logic for assessing whether H2 can be turned off. If the excess EPA (X) at step &lt; 404 &gt; is greater than 0, the processor at &lt; 416 &gt; determines if the excess EPA (X) is greater than or equal to the adjusted EPA of H2 (Y). If not (indicating that turning off H2 would cause the excess EPA to fall below zero), the processor proceeds to &lt; 412 &gt; where it checks for more locomotives. If the excess EPA (X) is greater than or equal to the adjusted EPA of H2 (Y) (indicating that there will still be excess power if H2 is turned off), the processor then proceeds through various operations to confirm that H2 should be recommended for turn off. At &lt; 409 &gt;, the processor determines whether H2 is coupler aligned with H3. Coupler aligned locomotives are discussed in more detail in the Additional Business Rules section below. If H2 is not coupler aligned with H3, H2 is not turned off, and the processor proceeds to check for more locomotives at &lt; 412 &gt;. If H2 is coupler aligned, the processor at &lt; 422 &gt; identifies H2 as a locomotive to be turned off. To do so, the processor identifies a recommended status of DG for locomotive H2. From &lt; 422 &gt;, the processor proceeds to the process flow of  FIG. 4(   b ) to assess whether turning off H2 (and thus increasing the dead weight of the train) would cause the actual and required EPA values to change sufficiently to warrant reversing the decision to turn H2 off. 
     With the process flow of  FIG. 4(   b ), the processor at &lt; 430 &gt; recalculates the Actual EPA and the Required EPA giving consideration to H2 being turned off (e.g., H2 would now be classified as dead weight which would affect the actual and required EPA values). Then, at &lt; 432 &gt;, the processor calculates a test value for excess power, Xtest, as the difference between the recalculated actual EPA and the recalculated required EPA. Next, at &lt; 434 &gt;, the processor compares Xtest with 0. 
     If Xtest is zero or below, this indicates that turning H2 off would cause the train to have insufficient power. In such a scenario, the processor proceeds to &lt; 436 &gt; where it identifies H2 for being turned back on (WK status). The processor then proceeds to &lt; 412 &gt; of  FIG. 4(   a ). If Xtest is greater than zero, the processor next checks whether there are any more locomotives (&lt; 438 &gt;). 
     If &lt; 438 &gt; results in a determination by the processor that there are no more locomotives, this means that Hj (which in this example is H2) is the trailing locomotive  103 . In such a situation, the processor checks for a territory code for the subject trip route/crew segment at &lt; 442 &gt;. This territory code can be read from the LDA database. In certain territories, it is desired that a trailing locomotive not be shut down for safety braking reasons. Thus, the system can treat certain territory codes as dictating that the trailing locomotive  103  cannot be shut down. If the processor determines at &lt; 442 &gt; that the territory code for the trip route/crew segment dictates the trailing locomotive remain powered, then the processor proceeds to &lt; 444 &gt; where the processor identifies H2 to be turned back on (WK status) and the process terminates. Otherwise, if the processor determines at &lt; 442 &gt; that the territory code for the trip route/crew segment does not dictate the trailing locomotive remain powered, then the process terminates and H2&#39;s recommended operational status remains turned off (DG status). 
     If &lt; 438 &gt; results in a determination by the processor that there are more locomotives, the processor then uses the value of Xtest as the new value for X and proceeds to &lt; 414 &gt; of  FIG. 4(   a ) to iterate through to the next locomotive using this new value for X. 
     While  FIGS. 3 and 4(   a )-( b ) illustrate an exemplary embodiment, it should be understood that the process flow may incorporate additional business rules if desired by a practitioner. Following below is a list of business rules that can be included in the process flow of  FIGS. 3 and 4(   a )-( b ) if desired by a practitioner, some of which already having been discussed above. 
     1. The processor should not make a decision to shutdown the lead locomotive. 
     2. If the locomotive in the H1 position is in a non-working status (anything but WK, DG, or RG) the locomotive in the H2 position must be in a WK or RG status and cannot be shut down. If the locomotive at H2 is also not working, the processor must find the next forwardmost locomotive (H3, H4, etc.) with a status of WK, RG, or DG. If such locomotive is in RG status, the processor should leave it in RG status. If such locomotive is in a DG status, then the processor should change it to WK status. If such locomotive is in WK status, the processor should leave it in WK status. 
     3. Only locomotives in the head locomotive consist may be isolated and shut down. 
     4. If there is a need to remove more axles (e.g., the value of X is above a threshold), only WK locomotives can be changed to DG. 
     5. If there is a need to add more locomotives, only locomotives in DG status can be changed to WK. 
     6. If a locomotive is already in a DG status, the processor will leave it in a DG status unless there is a need to add more axles to the locomotive consist. 
     7. Locomotives in an RG status are working and must not be changed to DG status. Locomotives in an RG status are on test runs and it would be undesirable to shut them down given that such locomotives are to be tested. Furthermore, because locomotives in an RG status are working, the processor should add their EPA to the total EPA. 
     8. Loaded or empty bulk commodity trains (coal, grain, ore, rock, beet, and unit) should operate with a minimum of two locomotives on line when available, although it may be desirable that bulk commodity trains have at least 2 locomotives in WK status at all times. But if there is only one working (WK or RG) locomotive and the rest are PD or DB status, or some other non-working status, the processor makes no recommendation. The nature of the trains for making such determinations can be read from the LDA database. 
     9. Because locomotives in WK or RG status provide power to the train, the processor should include their EPA in the total EPA. Locomotives in any status other than WK or RG, including DG locomotives, are being towed and are not providing power to the train. 
     10. To determine total tonnage, the processor should add the weight of non-working locomotives (everything but locomotives having a WK and RG status) to the scheduled trailing tons to compute the total trailing tons outbound. When a WK status locomotive is changed to DG status, the processor should add the weight of that locomotive to the tonnage total to compute a new TPA. When a DG status locomotive is changed to WK status, the processor should not include that locomotive&#39;s weight the total tonnage before computing the new TPA. 
     11. If there is a need to add more working locomotives or reduce the number of working locomotives, the processor should work front to back. The first locomotive to be considered will be the one immediately behind the lead locomotive (H2). 
     12. If the train has a rear locomotive consist, the processor should compute the total rear EPA (e.g., the sum of the EPAs for each locomotive in the rear locomotive consist). The processor should then truncate the rear EPA to work with a whole number only. This means that the processor drops the decimal part of the rear EPA total and works only with the integer portion of the rear EPA total. The processor also determines the most restrictive (lowest) limit of total number of powered axles in the rear consist of the train in the train schedule table for the crew segment, whose value can be referred to as Q. If the rear EPA total is not greater than Q, the processor then determines that the locomotives in the head consist are eligible to be isolated and shut down. If the rear EPA is not less than Q, the train is assumed to be operating in controlled tractive effort (CTE) mode and the processor adjusts the total EPA for CTE mode. The processor then uses this adjusted total EPA in its calculations. If the total rear EPA cannot be reduced to less than Q, the processor determines that no locomotives in the head consist are eligible to be isolated and shut down. 
     13. When determining the most restrictive (lowest) limit of total number of powered axles in the rear consist of the train or the required EPA in the train schedule table, the processor will ignore all range stations. Range stations can be identified in the train table as always having an even scheduled station number. 
     14. Upon encountering a station in the train schedule table that has null values for the limit of total number of powered axles in the rear consist, required EPA, or the critical dynamic braking flag, the processor should create a log entry detailing that row in the table and ignore that station and continue the calculations without that station. 
     15. If a cut-in locomotive consist&#39;s EPA is not less than a threshold value such as 24, no locomotives in the head locomotive consist may be isolated and shut down. If there is more than one cut-in group each group will be considered individually. If either of the cut-in locomotive consist groups is not less than 24 EPA, no locomotives in the head consist may be isolated and shut down. If the cut-in consist can be reduced to less than 24 EPA because of CTE locomotives, the processor reduces the EPA via CTE technology that allows the locomotive to provide reduced tractive power in the mid and rear consists and uses the new total EPA for its calculations. 
     16. In territories with critical dynamic braking requirements (as determined from the LDA database), the processor can ensure that enough locomotives are on-line to supply sufficient braking needs. 
     17. If a locomotive consist has a locomotive with a non-alignment controlled coupler and there is a locomotive with an alignment controlled coupler after it, that locomotive should be on-line. If the non-aligned locomotive is in DG status, the following locomotive (the one with coupler alignment) should be turned on. Locomotives that are alignment controlled coupler equipped are indicated as such in the LDA database. If the processor finds a locomotive that is not equipped with an alignment controlled coupler, the next locomotive in the consist must be working (WK or RG status). In such a situation, if the next locomotive is in DP or PD status, then the next good locomotive should be turned on. Thus, if the next locomotive is in DG status, the processor will change it to WK status. If the next locomotive is in a non-working status (anything but WK, DG, or RG status), the processor should leave it in that status and check the next locomotive. If the consist has more than one non alignment controlled coupler locomotive, the locomotive following each should be working as set forth above. The processor can recommend to shutdown locomotives but with the constraint that it cannot recommend to shut down a locomotive immediately behind a non-alignment controlled coupler locomotive. It is possible to create a recommendation to isolate and shut down a non-alignment controlled coupler locomotive, but the following locomotive must be in a WK status. 
     Upon termination of the process flow of  FIGS. 3 and 4(   a )-( b ), the processor is able to generate a recommendation about locomotive statuses for a particular trip or route segment.  FIGS. 5-8  illustrate exemplary outputs that can be created by system  200  in this regard. 
       FIG. 5  depicts an exemplary output showing a recommendation  500  that a particular locomotive (locomotive UP 00747) is to be placed in a DG status for a particular trip segment. Thus, the process flow of  FIGS. 3 and 4  for this trip segment has identified locomotive UP 00747 for a shutdown. 
       FIG. 6  shows an exemplary output from the TCS system which can be printed by a train crew as train consist documents at the tie up time. In the example of  FIG. 6 , the system  200  has created a recommendation  600  that locomotive UP 70407 be shutdown for the trip segment starting at the location identified by “RV323”. While this example uses a particular geographic location coding system used by a practitioner, it should be understood that any technique for communicating a location can be used. 
       FIG. 7  shows another exemplary output from the system  200  which includes a recommendation  700  for a different train recommending that two locomotives be shut down. In this example, locomotives UP 004556 and UP 004105 are recommended for shutdown for the trip segment starting at the location identified by “C 174”. Once again, while this example uses a particular geographic location coding system used by a practitioner, it should be understood that any technique for communicating a location can be used. 
       FIG. 8  shows yet another exemplary output from the system  200  which includes a recommendation  800  that a particular locomotive (UP 006193) be started up for a particular trip segment (the segment starting at the location identified by “KP768”). Once again, while this example uses a particular geographic location coding system used by a practitioner, it should be understood that any technique for communicating a location can be used. 
     Thus, there have been shown and described several embodiments of an invention. As is evident from the foregoing description, certain aspects of the present invention are not limited by the particular details of the examples illustrated herein, and it is therefore contemplated that other modifications and applications, or equivalents thereof, will occur to those skilled in the art. Many changes, modifications, variations and other uses and applications of the present construction will, however, become apparent to those skilled in the art after considering the specification and the accompanying drawings. All such changes, modifications, variations and other uses and applications which do not depart from the spirit and scope of the invention are deemed to be encompassed by this disclosure.