A Constraint-Programming Model For Scheduling Vehicles In Underground Mining Operations

Juan M. Sepulveda1, Luis E. Quezada, Felisa M. Cordova, Christian Dubos Industrial Engineering Department, University of Santiago, Chile

Abstract A vehicle scheduling problem found in underground mining operations is presented. Daily, a fleet of front loaders must be allocated to a network of tunnels for extracting copper raw material. Currently, there is not a decision support system for route planning and task sequencing is decided by the operators themselves based on their experience. The problem is modeled by constraint logic programming and model solution is compared to heuristic methods used in the mine. The constraint programming model gives a makespan which is up to 8,5% lower that current methods. The model also helps in re-scheduling tasks in a dynamic environment where random equipment failures and operations disruption occurs due to mine conditions.

Keywords: Copper Mining, Constraint Programming, Vehicle Routing Problem.

Dr. Juan M. Sepulveda, 3769 Ecuador Ave., Santiago of Chile, Chile, P.O Box 10233. Phone: (56-2)7762260, Fax: (56-2)7799723, [email protected] 1

1 INTRODUCTION The production level of a copper mine can be regarded as a network of tunnels with a given set of extraction sites where the mineral is loaded by machines called LHD (LoadHump-Dump). Currently, a hierarchical production planning system releases on a daily base a production plan for the mine; the plan consists of the streets (tunnels) identification, site identification in the street, quotas to be extracted, and dumping sites identification. For a given daily plan, mid-level supervisors are in charge of assigning tasks to the LHD operators but much of the routing is decided by the operator himself based on his experience. Since the routing chosen by the LHD driver is any feasible one, the hypothesis is that by using an optimization model, production performance can be improved at some extent. This work is part of a major project aimed to create systems for improved operations management in underground copper mining in Chile (Atero et al., 2003; Cordova et al., 2003; Sepulveda et al., 2004). The problem is modeled with constraint logic programming due to its NP-hard characteristics and the presence of dynamic constraints during the daily routine. The implementation is done by a constraint programming language (CPL). The paper is organized as follows: in section two, the production process is described; in section three, a constraint programming model is developed for two streets; section four presents the results and analysis; section five discusses re-scheduling, and, finally in section six, conclusions and directions for further research are given.

2 PRODUCTION PROCESS Underground copper mining of the block caving type can be seen as a production chain having four main process levels vertically positioned: caving, production, reduction and transportation, as shown in Figure 1. At the caving level, the block of mineral is carved in its base and supporting faces by means of radial drilling equipment to be later

detonated with explosives. At the production level, there exists a number of parallel tunnels containing pits or extraction points and ore passes; here material is extracted, transported and unloaded in dumping sites by the LHD vehicles. Figure 2 shows a 2D view of this level, where a typical mine has between 20 and 30 tunnels with a separation of 25 meters, and with an average length of 250 meters. The fragmented mineral from the production level falls through collecting pits. Pairs of streets share these collecting pits with a Y-shape making the material to flow by gravity down to the reduction level. At this level, located 35 meters below, the mineral falls into a chopping/crushing chamber where a rock breaker robot reduces its granularity to less than one cubic meter and then the material continues its gravitational movement. At the transportation level, the mineral coming down from the breaking chamber is temporarily kept in a deposit (called a mailbox) to be later loaded into trains by a chute that allow even distribution of the mineral on board 100-tons wagons. Typically, a daily production plan considers a number of 10 to 12 streets and an equal number of vehicles to extract the material during the three work shifts per day. At the beginning of the first shift, the allocation of operators to vehicles and of vehicles to streets is made by a supervisor. The operators execute their work according to a sequence determined by themselves; the observed practice is visiting the points in decreasing order by the quantity of material to be extracted at each point; i.e., the purpose is to maximize cumulative production at a given time. However, this rule is not fixed and it tends to be sub-optimal when the best points are relatively far from the dumping sites. The distances between extraction points and dumping sites play a role which makes the sequencing decision not an obvious task. At first glance, the problem resembles the traveling salesperson problem (TSP) but the difference is that after visiting an extraction point (the client) , the vehicle must travel to the dumping site and turn back to the same point as many times as needed according to the quantity of tons in the plan. Roughly, if at each turn the LHD bucket capacity is T (tons), then the number of turns

will be the production goal in tons for the i-th extraction point (EPi) divided into T. In the program, a value T = 7 tons/turn is used; i.e., the bucket capacity . Even though, there are several vehicles to be routed, in practice a typical allocation assigns at most two consecutive streets to one vehicle and the overall problem can be divided into smaller separate problems of similar structure but with different data. In what follows, and without loss of generality, the analysis will be simplified by showing the modeling of two streets, as shown in Figure 3.

3 CONSTRAINT PROGRAMMING MODEL A constraint programming model consists of activities, constraints, and an objective function, as described below.

3.1 Activities Referring to Figure 3, in Table 1 the activities which represent the work execution in streets one and two, are shown. Most of these activities are self explanatory by the declarative characteristics that can be used in a CPL. The activities represent the tasks of moving between points and performing the loading or unloading process. Also, they include the activity of changing side in a street. In the mine, the sides H (head) and F (foot) are used. In this case, the side change must be specifically expressed since as shown in Figure 3, a vehicle can not turn at the narrow angle of 30º, but it must travel to a turning point and enter the street in the opposite direction. The activity “load-humpdump” denotes an aggregated task consisting of repeating sequential steps after the first load in a pit: traveling to the corresponding dumping site, dumping, traveling back to the extraction point, loading at the pit, and travel back again to the dumping site, as many times as the number of necessary trips minus one, indicates (as given by the production plan). The last dumping is considered as a different activity before the vehicle heads to the next pit in sequence. This type of aggregated activity reduces very much the number

of variables in the model and it can be applied in this particular case since once an extraction point is selected for working, the LHD must complete the full loadingunloading cycle; that is, it cannot interrupt the sequence and move to another site in between until all the work is done at that extraction point. The output of the CP model

will the optimal sequence of activities minimizing

makespan, that is the time needed to complete all operations in streets 1 and 2 together.

3.2 Constraints Logical constraints relate to the special characteristics of the problem.

The most

important ones that can be deduced from the CP model, are:

a) Precedence: loading activities precede dumping activities. b)

Working side: a side (either H or F, in Figure 3) must be worked out completely before continuing to the other side. This is due to the mine topology since vehicles cannot turn at narrow angles but only do wide turns; that is, it must work one side, finish all the tasks there and go to a turning site to enter in the opposite direction.

In Figure 4, a partial body of the CP model written in OPL is shown. The declarative characteristic of the CP language makes its interpretation a relatively easy matter. For further details on CP and OPL see (Marriot and Stuckey, 1999; Van Hentenryck, 1999).

4 RESULTS For comparing the Constraint Programming model against current practices, several runs with different production plans are made. A plan consists of a list of extraction points to be visited in undetermined order with the corresponding number of times each point has

to be visited. A fixed total number of 120 bucket loadings or visits to extraction points is kept (approximately, 840 tons) in the experiments. Plans are named Plan1, Plan2, Plan3, Plan4 and they were randomly selected from available data while maintaining the characteristics of each scenario. Three types of scenarios are analyzed: •

Scenario 1: Most workload is concentrated near the entrance.



Scenario 2: Most workload is concentrated towards the end of the street.



Scenario 3: Workload has uniform random pattern.

For comparing against heuristic methods followed by the operator, two priority rules are used: •

HPF (Highest production first): Points are visited in decreasing order of the amount of material to be extracted.



LPF (Lowest

production first): Points are visited in increasing order of the

amount of material to be extracted. The LPF rule resembles a SPT (Shortest Processing Time) rule in scheduling, whereas HPF would be its inverse. In Tables 2 through 4, the results for the scenarios above are shown. For the CP Model, the solution was obtained by solving the full CP model partially shown in Figure 4, whereas the HPF and LPF heuristics were simulated by a worksheet. As seen in Table 2, the highest difference in favor of CP model (Plan 2) is 3320 seconds or 55 minutes, which is considered to be relevant since the average makespan for HPF and LPF rules is 11.7 hours.

In Table 3, the highest difference yields (Plan 2) 3547 or 60 minutes, which is relevant since average makespan for HPF and LPF rules is 11.8 hours. In Table 4, the highest difference yields (Plan 4) 3178 or 52 minutes, which is relevant since average makespan for HPF and LPF rules is 11.56 hours. In addition to the experiments described above, other cases where tested in order to: a) examine the behavior of production rate in time, and b) re-schedule the tasks after the random event of equipment failure. In Table 5, data of production versus time is shown for scenario 3 (i.e., workload with uniform random pattern across points). Some data in the middle of table has been omitted for space reasons, but the important parts are the initial and final lines. Figures 5, 6 and 7, show production trajectories for the scenario three.

Similar data were

obtained for the other scenarios which showed in general the same behavior as in this scenario. The main conclusion drawn from data is that CP presents a slight improvement in production fill rate towards the end of shift which is compatible with the makespan reduction.

5 RESCHEDULING OF ACTIVITIES Rescheduling must be necessary due to loader failures or other events affecting tunnels during the schedule execution. For including dynamic activities into the model such as a repair task, the activity, its expected duration, and all the precedence must be declared. Additional constraints are needed to indicate that certain tasks cannot be started before the repair task is done. Also, an adequate task update is needed for tracing finished or partially completed tasks. All these conditions must be met by a CP model management module and a system database for using the CP model. Figure 8 displays a typical screen after rescheduling for a repair task.

6 CONCLUSIONS In this work, the use of constraint programming for solving a vehicle scheduling problem in underground mining has been presented. The need for finding a scheduling tool has arisen from current practices where operators decide by themselves the route or sequence to be followed. As compared to current practices, the CP model produced an improvement between 7,5% and 8,5% in makespan reduction in the working shift. Average production rate in tons per minute was highest when using CP solution for the experiments. As opposed to general knowledge about scheduling, a SPT-like rule (LFR) did not perform notoriously better than the HPF rule. This means that the heuristic method used by the operators of doing slow jobs first (most production) works well, but not as good as CP´s. This is due to travel times between pits and streets, which are similar to sequence dependent setup times in manufacturing. In general, results are considered to be logical and satisfactory; however, further investigation is needed, specially for large scale problems and for comparisons with other modeling and new optimization techniques. Ongoing work is dealing with these matters.

7 ACKNOWLEDGEMENTS This work has been supported by FONDEF- CONICYT and the University of Santiago of Chile (FONDEF Project N° D01I1091).

8 REFERENCES Atero, L.R., F. Cordova., J. Sepulveda., L. Quezada and V. Olivares, 2003, Conceptual Model of Virtual Supervising Operation System VOSC, Proceedings of the 17 International Conference on Production Research, Blacksburg, Virginia, USA, August 37. Cordova F., L. Quezada, J. Sepulveda, V. Olivares, L. Atero and A. Contreras, 2004, A Simulation Model to Enhace the Operation of an Underground Mine,

Proceedings

International Workshop on Supply Chain Management and Information System (SCMIS), Hong Kong Polytechnic University, Hung Hom, Hong Kong, July 6 – 9. Marriot K. and P. Stuckey P.,1999, Programming with Constraints: An Introduction, (The MIT Press, Cambridge, Massachusetts). Sepulveda J., C. Cabezas, F. Cordova, L. Quezada, V. Olivares, An Embedded Simulation Model In a Virtual Supervisory Control System For Underground Mining Operations, Proceedings International Conference on Production Research Americas 2004, Santiago –Chile, August 1-4. Van Hentenryck, P., 1999, The OPL Optimization Programming Language, The MIT Press, Cambridge, Massachusetts.

Figures and Tables

Caving level

Transportation level

Production level Reduction level

Figure 1: The four main processes of mine operations.

Figure 2: Map of the mine production level .

Dumping Sites

EP 5

EP 4

EP 10 Side F

Side H

EP 10 Side F

Side H

EP 5

EP 4

EP 9

EP 9

EP 3 EP 3

Side F

EP 8 Side H

Side F

Side H

EP 8

EP 2

EP 2

EP 7

EP 7

EP 1 EP 1

EP 6

EP 6

STREET 1 LHD Vehicle Entrance

Figure 3: Diagram of two streets

STREET 2

scheduleHorizon = maxduration; Activity Start(0); Activity Exit(13); Activity home_to_site[i in Street,j in Pit](DurationTask1[i,j]); Activity load_first[i in Street,j in Pit](DurationTask2[i,j]); Activity load_hump_dump[i in Street,j in Pit](DurationTask3[i,j]); Activity dump_last[i in Street,j in Pit](DurationTask4[i,j]); Activity site_change[i in Street,j in Pit](DurationTask5[i,j]); Activity pit_to_site[i in Street,j in Pit](DurationTask6[i,j]); Activity street_change[i in Street,j in Pit](DurationTask7[i,j]); DiscreteResource LHD(1); Reservoir Copper (5000); Minimize Exit.end subject to { Start.start=0; forall (i in Street,j in Pit) home_to_site[i,j] requires(1) LHD; forall (i in Street,j in Pit) load_first[i,j] requires(1) LHD; forall (i in Street,j in Pit) load_hump_dump[i,j] requires(1) LHD; forall (i in Street,j in Pit) dump_last[i,j] requires(1) LHD; forall (i in Street,j in Pit) site_change[i,j] requires(1) LHD; forall (i in Street,j in Pit) pit_to_site[i,j] requires(1) LHD; forall (i in Street,j in Pit) street_change[i,j] requires(1) LHD; forall (i in Street,j in Pit) load_hump_dump[i,j] produces(133) Copper; forall (i in Street,j in Pit) load_first[i,j] produces(7) Copper; forall (i in Street,j in Pit) pit_to_site[i,j].end=load_first[i,j].start \/ home_to_site[i,j].end=load_first[i,j].start; forall (i in Street,j in Pit) Start.end=home_to_site[i,j].start; forall (i in Street,j in Pit) pit_to_site[i,j].end=load_first[i,j].start \/ site_change[i,j].end=load_first[i,j].start; forall (i in Street,j in Pit) site_change[i,j].end=load_first[i,j].start; forall (i in Street,j in Pit) street_change[i,j].end=load_first[i,j].start };

Figure 4: partial listing of the program written in OPL

HPF (tons) 2000

Tons

1500 1000 500

688.7

706.4

633.9

705.3

663.6

637.6

600.0

568.2

327.8

312.3

289.3

257.2

216.5

187.1

151.3

108.6

59.1

0

0

Time (minutes)

Figure 5 : Production trajectory for HPF rule in scenario 3. LPF (tons) 2000

Tons

1500 1000 500

587.2

553.9

521.5

489.8

286.5

243.8

190.1

156.8

127.4

95.3

54.6

31.6

14.1

0

0

Time (minutes)

Figure 6 : Production trajectory for LP rule in scenario 3.3. CP Model (tons) 2000 1800 1600

1200 1000 800 600 400 200

65 6. 0 67 7. 2

55 3. 6 59 5. 5 62 8. 9

26 1. 3 29 1. 0 32 0. 4 51 5. 9

18 9. 0 20 2. 8 22 7. 9

87 .4 14 6. 3

0

0 49 .5

Tons

1400

Tim e (m inute s)

Figure 8 : Production trajectory for CP model in scenario 3

Task sequence by the CP model

REPAIR activity

Figure 8: Gantt Chart after rescheduling.

Table 1: Activity symbols used in the CP model Symbol Start home_to_site [i in Street,j in Pit] load_first [i in Street,j in Pit] load_hump_dump [i in Street,j in Pit]

dump_last [i in Street,j in Pit] site_change [i in Street,j in Pit] pit_to_site [i in Street,j in Pit] street_change [i in Street,j in Pit] Exit

Activity Description Beginning of activities at the street 1. Traveling from entrance to j-th pit of i-th street; for i=1 ..2; j=1..10. Loading the first time at j-th pit of i-th street; for i=1 ..2; j=1..10. Executing the working cycle at j-th pit of i-th street; for i=1 ..2; j=1..10 (if a total number of N turns are needed to extract the material at the pit, this is the cycle of N-1 turns, for N > 1) Unloading the last turn at dumping site corresponding to i-th pit; for i=1 ..2; j=1..10. Traveling back from dumping site to point i, for i=1 ..10. Traveling from dumping to a next j-th pit of i-th street after working cycle is completed; for i=1 ..2; j=1..10 Change of street after working cycle is completed; for i=1 ..2; j=1..10 Traveling from dumping site to the street entrance and leaving, after all work is completed.

Table 2: Scenario 1 (Most workload is concentrated near the entrance)

Mak es pan (s econds )

C P Model

HP F

LP F

Plan 1

40464

42958

43451

Plan 2 Plan 3 Plan 4

40276 40529 40076

42722 42806 43039

43596 42699 42377

Table 3: Scenario 2 (Most workload is concentrated towards end of street)

Makespan (seconds) Plan 1 Plan 2 Plan 3 Plan 4

CP Model

HPF

40288 40595 40799 40807

LPF 42490 44142 42978 43706

42671 43861 43308 43621

Table 4: Scenario 3 (Workload has uniform random pattern)

Makespan (seconds) Plan 1 Plan 2 Plan 3 Plan 4

CP Model 40512 39973 40616 40302

HPF

LPF 41878 41700 42468 42608

41690 41468 42401 43480

Table 5: Cumulative production versus time for scenario 3 HPF

LPF

CP

Time (min)

Tons

Time (min)

Tons

Time (min)

Tons

0

0

0

0

0

0

58.9

133

13.9

35

49.3

105

59.1

140

14.1

42

49.5

112

108.5

245

31.4

84

87.3

196

108.6

252

31.6

91

87.4

203

151.1

357

54.4

154

146.1

336

151.3

364

54.6

161

146.3

343

186.9

462

95.2

245

188.8

448

187.1

469

95.3

252

189.0

455

216.3

560

127.2

336

202.6

490

216.5

567

127.4

343

202.8

497

257.0

651

156.6

434

227.8

560

257.2

658

156.8

441

227.9

567

289.1

742

190.0

539

261.1

665

289.3

749

190.1

546

261.3

672

312.1

812

243.6

651

290.9

756

312.3

819

243.8

658

291.0

763

327.7

861

286.3

763

320.3

854

327.8

868

286.5

770

320.4

861

344.2

903

345.2

903

335.8

903

568.2

1463

489.8

1253

515.9

1337

568.4

1470

489.9

1260

516.1

1344

600.0

1554

521.5

1344

553.6

1435

600.2

1561

521.7

1351

553.7

1442

637.6

1638

553.9

1442

595.5

1554

637.7

1645

554.0

1449

595.7

1561

663.6

1708

587.2

1547

628.9

1659

663.8

1715

587.4

1554

629.0

1666

688.7

1771

633.9

1666

656.0

1750

688.8

1778

634.1

1673

656.1

1757

706.4

1813

705.3

1813

677.2

1813

706.6

1820

705.5

1820

677.3

1820

A Constraint-Programming Model For Scheduling ...

Phone: (56-2)7762260,. Fax: (56-2)7799723, ... base a production plan for the mine; the plan consists of the streets (tunnels) identification, site .... LPF (Lowest production first): Points are visited in increasing order of the amount of material to ...

604KB Sizes 1 Downloads 206 Views

Recommend Documents

A Behavioural Model for Client Reputation - A client reputation model ...
The problem: unauthorised or malicious activities performed by clients on servers while clients consume services (e.g. email spam) without behavioural history ...

The subspace Gaussian mixture model – a structured model for ...
Aug 7, 2010 - We call this a ... In HMM-GMM based speech recognition (see [11] for review), we turn the .... of the work described here has been published in conference .... ize the SGMM system; we do this in such a way that all the states' ...

Dual techniques for scheduling on a machine with ...
We give several best possible algorithms for problem variants that involve schedul- ing to minimize the total weighted completion time on a single machine that may vary its speed. Our main result is an efficient PTAS (Section 3) for scheduling to min

A Scheduling Method for Divisible Workload Problem in ...
previously introduced are based on the master-worker model. ... cess runs in a particular computer. ..... CS2002-0721, Dept. of Computer Science and Engi-.

A Scheduling Algorithm for MIMO DoF Allocation in ... - ECE Louisville
R. Zhu is with South-Central University for Nationalities, China. E-mail: [email protected]. Manuscript received August 25, 2014; revised January 19, 2015; ...... theory to practice: An overview of MIMO space-time coded wire- less systems,” IEEE

A Scheduling Method for Divisible Workload Problem in Grid ...
ing algorithms. Section 3 briefly describes our hetero- geneous computation platform. Section 4 introduces our dynamic scheduling methodology. Section 5 con-.

A Graph-based Algorithm for Scheduling with Sum ...
I. INTRODUCTION. In a wireless ad hoc network, a group of nodes communicate ... In addition to these advantages, by analyzing the algorithm, we have found a ...

A Distributed Hardware Algorithm for Scheduling ...
This algorithm provides a deadlock-free scheduling over a large class of architectures ..... structure to dispatch tasks to the cores, e.g. one program running on a ...

DRAM Scheduling Policy for GPGPU Architectures Based on a ...
Nov 22, 2011 - 1In NVIDIA architectures, 32 threads are executed together in lock-step as a warp and in AMD GPU architectures, 64 threads are executed together as a wave-front. blocking. For a warp blocked on memory accesses, all its memory requests

A Scheduling Algorithm for MIMO DoF Allocation in ... - ECE Louisville
Index Terms—Scheduling, multi-hop wireless networks, MIMO, degree-of-freedom (DoF), throughput maximization. ♢. 1 INTRODUCTION ...... Engineering (NAE). Rongbo Zhu (M'10) is currently a professor in the College of Computer Science of South-. Cent

A Truthful Mechanism for Offline Ad Slot Scheduling
Jan 18, 2008 - We give a truthful mechanism under the utility model where bidders try ..... In fact, a purely combinatorial O(n2) time algorithm is possible.

A Scheduling Framework for UWB & Cellular Networks - Springer Link
Dec 9, 2005 - C 2005 Springer Science + Business Media, Inc. Manufactured in The ... The max-min fair scheduling problem in wireless ad-hoc networks is a ...

A Graph-based Algorithm for Scheduling with Sum ...
in a real wireless networking environment is ignored, 2) It is not obvious how to choose an appropriate disk radius d because there is no clear relation between d ...

Dynamic Programming for Scheduling a Single Route ...
ing, MAC, dynamic programming, cross layer design. I. INTRODUCTION ... transmitter and the receiver of a link are assumed to be co- located. The low efficiency ...

A Dynamic Scheduling Algorithm for Divisible Loads in ...
UMR exhibits the best performance among its family of algorithms. The MRRS .... by local applications (e.g. desktop applications) at the worker. The arrival of the local ..... u = (u1, u2, ... un) : the best solution so far, ui. {0,1} в : the value

A New Scheduling Algorithm for Distributed Streaming ...
Department of Computer Science and Technology, Tsinghua University, Beijing 100084 China. 1 This paper is ... Tel: +86 10 62782530; fax:+86 10 62771138; Email: [email protected]. Abstract ... In patching algorithm, users receive at.

A demographic model for Palaeolithic ... - Semantic Scholar
Dec 25, 2008 - A tradition may be defined as a particular behaviour (e.g., tool ...... Stamer, C., Prugnolle, F., van der Merwe, S.W., Yamaoka, Y., Graham, D.Y., ...

DEVELOPING A COMMUNITY SUPPORT MODEL FOR TOURISM.pdf
DEVELOPING A COMMUNITY SUPPORT MODEL FOR TOURISM.pdf. DEVELOPING A COMMUNITY SUPPORT MODEL FOR TOURISM.pdf. Open. Extract.

Petition for a Model Rule.pdf
Page 1 of 2. Page 1 of 2. RCIMODELRULESCOMMITTEE. PETITION FOR NEW RULE OR CHANGE TO EXISTING RULE. Your ContactInformation: Name: Organization: Address: Phone(s):. Fax #:. E-mail Address: A. Brief Description of the Issue. B. Discussion of the Issue

Bicriteria Scheduling for Parallel Jobs
Bicriteria Scheduling for Parallel Jobs. Dror G. Feitelson and Ahuva Mu'alem. School of Computer Science and Engineering. The Hebrew University, Jerusalem ...

Scheduling for Human- Multirobot Supervisory Control
April 30, 2007. In partial fulfilment of Masters degree requirements ..... each NT period over time is a good gauge of whether a human supervisor is ... the Human Computer Interaction International Human Systems. Integration ... on information Techno

Scheduling for Middle School Parents.pdf
There was a problem previewing this document. Retrying... Download. Connect more apps... Try one of the apps below to open or edit this item. Scheduling for ...

A Unifying Approach to Scheduling
the real time r which the job has spent in the computer system, its processing requirement t, an externally as- signed importance factor i, some measure of its ...

A Unifying Approach to Scheduling
University of California ... ment of Computer Science, Rutgers University, New Brunswick, NJ. 08903 ... algorithms serve as a good approximation for schemes.