by Karsten Rist
Mining World – December 1961
by Karsten A. Rist
Mr. Rist is long range procedures engineer for Climax Molybdenum Company with headquarters at Climax, Colorado.
Computer Simulation for Solution of a Mine Transportation Problem
In recent months the mining industry has devoted a great deal of attention to computers and their utilization for solving technical and managerial problems. Examples of how survey calculations and ore reserve calculations may be accomplished have been published. It has also been shown how linear programming may be used to solve mixin- and transportation problems. This article gives an example of how – Monte Carlo model may be constructed and how it can be used to answer certain engineering questions. The name Monte Carlo model stems from the fact that the model, like certain games of chance, is operated by the use of random numbers. In the completion of the project I am indebted to the Management Engineering Department and the Industrial Engineering Department in Climax as well as to the computer staff of Kaman Nuclear in Colorado Springs, Colorado.
Problem of Production Capacity
The problem which confronted the Management Engineering Department at Climax was to determine the productive capacity of the adit and crusher on the Storke level. Figure No. 1 gives a schematic picture of the conditions on the Storke level. The round trip of one train on the Storke level consists of four phases:,
- Entering the mine through the portal and proceeding to No. 1 Switch.
- Loading and travel starting from No. 1 Switch and returning to No. 1 Switch inside the mine.
- Leaving the mine through the portal and proceeding to the crusher.
- Dumping the train load into the crusher and looping back to the portal.
For operation Nos. 1 and 3 the same “service facility” (i.e., the tunnel) has to be used. The service times are constants. Operation No. 2 can take from 28 to 190 minutes with an average time of 63 -minutes. The wide range of possible loading times reflects various delays, breakdowns, and interference of other operations. For purposes of the study the assumption could be made that a sufficient number of loading places would be available to load any number of trains which could be routed through the tunnel and crusher. No matter flow many trains are used on the level the model will reflect the loading delay times which occur under present conditions. Operation No. 4 takes from 3 to 15 minutes with an average time of 5.5 minutes. Only one train at a time can be unloaded.
The first approach to determining the capacity of the crusher would be to divide 5.5 into the total number of minutes per shift. However, it would be questionable whether a sufficient number of trains could be sent through the tunnel in suitable intervals to keep the crusher busy at all times. One train takes 8.6 minLiteS inside the tunnel durino, one round trip, as is shown in Figure No. 1. Two trains following each other at a distance of 1,000 feet would occupy the tunnel for 11.4 minutes, or for only 5.7 minutes per train. Nevertheless a decision to send trains only in pairs through the tunnel would be mipractical because of the waiting time which would result for many trains. Any optimal pattern for sending trains into and out of the mine would be interrupted by the unpredictable individual loading time for each train. Considering these theoretical difficulties it is apparent that no simple answer can be given to the question of the capacity of the system.
In a situation of this nature one could consider building a little scale model of the haulage system, supplying this model with an increasing number of trains, and observing how well the system can handle the load. In the case at hand the model was built out of numbers in the memory of a computer, but its performance characteristics were very similar to those of a physical model.
How Mathematical Model Is Made
In order to describe the round trip of one train in the memory of the computer we establish three check stations or waiting positions in the system:
WS = WAITING POSITION OF A TRAIN AT No. 1 SWITCH READY TO LEAVE THE MINE.
WC=WAITING POSITION OF A TRAIN AT THE CRUSHER, READY TO UNLOAD.
The digits which the waiting positions contain will represent the number of trains waiting at these locations in our fictitious mine. The waiting positions correspond to certain locations in the memory of the computer. While a train is moving between the waiting positions its future arrival at the next stop will be recorded in three time schedules:
AWS = SCHEDULE OF ARRIVALS AT No. I SWITCH, CORRESPONDING TO WS.
AWC = SCHEDULE OF ARRIVALS AT THE CRUSHER, CORRESPONDING TO WC.
The position of the trains will be considered once every minute and all necessary decisions will be made. A time count, TC, which is set to zero at the beginning of the shift is being advanced by one for each interrogation. When the time count reached 420 the program is terminated and the computer prints the results. At that point 420 minutes of operation have been simulated. 420 minutes or seven hours are considered actual working time per shift underground.
While the waiting positions record the location of stopped trains the time schedules keep track of moving trains. The time schedules consist of one memory position of the computer for each min-Lite of a shift. At the beginning of an interrogation the computer will check the three time schedules for the minute which is given by the magnitude of TC. If the arrival of a train had been recorded for this minute the train will be moved into the appropriate waiting position. The computer will then investigate whether the waitin- train can be sent on to the next waiting position in sequence. If this is possible the arrival at the next waiting position will be computed and a “1” is inserted into the appropriate time schedule in the position which corresponds to the minute of arrival. The computer then proceeds to the next interrogation.
If for instance a train enters the crusher at minute 100 and is assigned a crushing time of six minutes the train will leave the crusher at minute 106. The minutes later at minute 108, after traveling through the crusher loop, the train arrives back at the portal. We therefore, insert a “I” into AWP in the memory position which corresponds to minute 108. As TC is being incremented it will become equal to 108 and at this time the train will be moved into WP.
Whenever a train is being sent into the mine it is necessary to de,ermine which loading time should be assigned to this train. Figure No. 2 shows 400 loading times which were observed underground. A list of these 400 times has been inserted into the memory of the computer. The computer is then made to generate a random number between 0 and 400. The random number is converted into the address of one of the 400 loading times. The address of a position in the computer memory is a number which identifies this position like a house number identifies a house. In the memory position identified by the address the computer finds the stored information. The computer can now extract this loading time and assign it to the train which has just been considered. Each loading time has the same chance of being selected. Loading times of about 55 minutes will occur more frequently because they are contained in the listing more often. However, at irregular intervals very high times will be selected, thus representing the irregular delays and breakdowns underground by selecting loading times at random a much higher degree of realism can be achieved than by using an average time. The same system is being used to select crushing times from a list of actually observed crushing times. It is necessary to record the time for which the crusher will be occupied whenever a train moves into the crusher. This is accomplished by a special time count COT (Crusher Occupied Time). COT = TC + crushing time when a train enters a crusher, As long as COT> TC, the crusher is considered occupied. The same principle is being applied when a train enters the tunnel. At that time a tunnel occupied time is computed. In addition it is necessary to record the direction in which the train is going. This is accomplished by another count, “IO”. A “I” in 10 represents the fact that a train is going into the mine, a 2 records a train is moving out of the mine. In order to provide for the possibility of sending more than one train at a time through the tunnel it is necessary to provide for 1,000 feet of distance between the trains. A train interval count, TIC, is set to the time in minutes which it takes a train to travel 1,000 feet, whenever a train enters the tunnel from either side. Each minute TIC is diminished by one. The next train may then only enter the tunnel if TIC<= 0.
We have now discussed the various mechanisms which will provide for the correct movement of trains through the system.
Rules For Making Decisions
Each minute after the trains have been moved from the arrival schedules into the waiting positions it has to be decided whether a train should enter or leave the portal. A train can be sent into the mine if the following conditions are fulfilled:
- The portal is empty or a train is moving in.
- TIC 0, i.e. the previous train has a head start of 1,000 feet.
- WP >= 1, there is at least one train waiting at the portal.
A train can be sent to the crusher if another set of conditions is given:
- The portal is empty or a train is moving out.
- There are not more than two trains before the crusher including the train in or trains in the tunnel.
- There are not more than five trains in the crusher loop and the portal. Condition Nos. 2 and 3 are necessary to keep the switch at the portal free (Figure No. 1).
- TIC 0, i.e., the previous train has a head start of 1,000 feet.
- WS >= 1, i.e., there is at least one train waiting at No. 1 Switch.
If the portal is empty and trains are waiting at both ends the side which has the larger number of trains waiting will be serviced first. If an equal number of trains happens to be waiting at both ends of the tunnel the trains which wait at the portal will be sent in first since this operation takes less time than sending trains out.
After flow charts for the model had been set up to reflect all the conditions which have been described above, the model was coded in SPS (Symbolic Programming System language) for an IBM 1620 computer. The program was set up to make the computer accept two new input values if a certain program switch was set. The new input data were the number of trains on the level and the number of trains which are outside the mine at the beginning of the shift.
The reason for the second input value was to determine whether there would be a tendency for trains which entered the mine in succession at the beginning of the shift to remain grouped throughout the shift. At the beginning of the program the first of the n trains inside the mine was assumed to have passed n/n parts of its loading time, the second (n – 1) / n , the third (n – 2) / n and so on. If three n trains with the randomly selected loading times of 56, 60, and 81 minutes were in the mine at shift begin they would have passed 56, 40, and 27 minutes of their loading times. The first train would be ready to leave the mine immediately, the second at minute 20, and the third at minute 54. The output of the program contained the accumulated train waiting time at the three waiting positions (sumWP, sumWS, sumWC, computed cumulative throughout the shift at the end of each minute), the total train waiting time, the number. of trains which left the portal during the shift, and the number of minutes for which the crusher and the portal were occupied.
The program contained about 400 instructions. It took about 1.5 hours to translate it into machine language and about 6.5 hours to debug the code. The computer simulated one shift operation in about 30 seconds.
Monte Carlo Method Offers Advantages to Mining Industry
A sample of the computer output is reproduced in tabular form in Figure No. 3. Ten trains were on the level, three of which were outside the mine at the beginning of the shift. The 20 trial shift operations show a total train waiting time per shift which varies from 199 to 331 minutes. 41 to 47 trains left the portal during one shift. The averages of about 40 trials for each number of trains have been plotted in Figure No. 4. The first derivative of the curve in Figure No. 4 is shown in Figure No. 5. Here the additional number of train trips which each additional train on the level will permit has been plotted. From Figure No. 4 or Figure No. 5 the mounting cost of haulage as the capacity of the system is being approached can easily be determined. The fact that all trains will always take the same average time to dump their load can easily be verified from the last column of the computer output. However, if the total number of trains which left the portal during one shift is divided into the time for which the portal was occupied the result decreases as the number of train trips per shift increases. The decrease of the average tunnel time is due to the fact that trains are sent in pairs more often when many trains are on the level. A series of values for the average crushing time and for the average tunnel time has been plotted in Figure No. 6. It can be seen that with train number 13 the crusher rather than the portal becomes the bottleneck of the operation, since for 13 or more trains the average crushing time exceeds the average tunnel time. Experimentation with varying number of trains outside the mine at the beginning of the shift showed that the loading times for the trains are sufficiently dispersed to avoid the possibility that all trains which entered the mine in succession will also arrive at No. 1 Switch in series.
The reader can easily imagine that the model of the tunnel and crusher operation can be used to test various decision rules of how the traffic in the tunnel should be directed. The effects of changes in the system like additional waiting positions ahead of the crusher, a second portal, or improved crushing facilities can easily be evaluated. It appears that a Monte Carlo method as described in this article has certain advantages which make it especially useful to the mining industry. It is easy to inject into the model factors which will simulate the unpredictable delays and break downs which are common to many mining operations. Only a minimum of simplifying assumptions has to be made when the model is being set up. For instance, the distribution curves for various operation times need not be substituted by idealized mathematical expressions, but rather the originally observed values can be fitted into the model. The concepts of the model can easily be explained to the operating personnel and the answers which were generated gain in acceptability because they are rather removed from theoretical considerations.