Gail W. DePuy, Ph.D., Dimitrios Drosos, and G. Don Taylor, Ph.D., P.E.. Department of Industrial Engineering. University of Louisville. Louisville, KY 40292 USA.
Grouping and Assignment of Barges Gail W. DePuy, Ph.D., Dimitrios Drosos, and G. Don Taylor, Ph.D., P.E. Department of Industrial Engineering University of Louisville Louisville, KY 40292 USA Todd C. Whyte, Ph.D., Director of Operations Research American Commercial Barge Line LLC 1701 E. Market Street, Jeffersonville, IN 47130-4717 USA Abstract Two integer-programming models are presented which optimize barge groupings into cost efficient configurations for transit. First a grouping IP is used to cluster barges with similar characteristics such as origin port, destination port, and pickup time so as to minimize dwell and handling cost. Next an assignment IP is used to assign groups to tow boats to minimize travel costs.
Keywords Intercoastal transit, Scheduling, Integer Programming, Barge.
1 Introduction This paper focuses on the development of two mathematical models to support cost minimization models in the barge transportation industry. The research is applied in nature, driven by the desire of American Commercial Barge Lines (ACBL) to maximize fleet utilization on the Ohio River. The main problem involves decisions related to slot utilization or the grouping of barges in tows and the assignment of these tows to boats to decrease total costs associated with transit, handling and dwell times. Handling time includes the time associated with tow building, tow breaking and maintenance of barges. The dwell time is the amount of time the barge waits for a boat to pick it up. The objective is to minimize the total cost through the grouping and scheduling of barges to achieve the proper tradeoff between handling versus dwell time. Barges with similar origin and destination ports are often grouped together to minimize the handling time of the tow in transit. However, these similar barges may not all be available for pick up at exactly the same time thereby forcing the boat to wait and increasing the dwell time. Two mathematical models are developed in this research to be used within the framework of an automated decision support system. Currently barge grouping and scheduling decisions are made manually by a few experienced dispatchers at ACBL. Determining good barge schedules is a difficult and time-consuming task under normal river conditions. When conditions change on short notice due to unexpected delays or demand peaks, failures of one or more vehicles, breakdowns of some transportation facilities, meteorological reasons, crew delays or absences, or traffic accidents the dispatching job becomes even more difficult. Therefore an automated system that can generate good barge schedules in a relatively short amount of time is desired. A large-scale mixed integer program was initially developed to mathematically model this complex problem (Drosos et al., 2001) [1]. This IP model included binary (0-1) decision variables representing both tow and barge moves. The main difficulties in modeling this problem included ensuring that the model was flexible enough to allow tows to move both up and down the river as well as have the model properly calculate each barge’s dwell time. Because it takes less time to move downstream than upstream and because of the need to balance the tow moves in and out of each port, it was necessary to differentiate between tows (and barges) moving upstream at a particular point in time and tows (and barges) moving downstream. While this large-scale model worked well for small test problems, a realistically sized problem of 250 barges, 15 tows, 30 ports, and 9 time units was not solvable in an acceptable amount of time. Therefore a new solution approach was needed. We decided to separate the
overall problem into two sub-problems: the formation of groups of barges to be carried by a single boat, and the assignment of these barge groups to specific boats. The grouping problem forms groups of barges that have common characteristics to be carried by the same boat. The assignment model then assigns a specific boat to carry each group. Mathematical models are presented below for both the grouping and assignment sub-problems.
2 Solution Methodology Before presenting the grouping and assignment math models, several problem assumptions are discussed. The following nomenclature is used to represent the Ohio River and its ports. Port numbers are assumed to increase in value as tows move downstream (see Figure 1).
Downstream Port 1 Port 5
Port 3 Port 4
Port 2
Figure 1. Example of Ohio River numbering scheme used in IP models
Other problem assumptions include: • Due to physical limitations of the Ohio River, boats can carry a maximum of 15 barges at a time. • All barges are of the same size, type and capacity. • All of the boats are of the same horsepower. • Early available pick-up time units are assumed to be in days. 2.1 Grouping Mathematical Model The grouping problem forms groups of barges that have common characteristics to be carried by the same boat. Barges are grouped using a mathematical model that minimizes estimates of the handling costs, dwell costs and hired costs. Therefore the model uses costs to form barge groups that consider the pickup and delivery ports of other barges in the group. The model also considers the possible benefits of allowing the boat to wait for barges to become available rather than blindly picking up whatever barges are currently available, and determines which barges are more cost effective for a third party to carry. 2.1.1 Grouping Terminology and Assumptions • Group: set of ‘common’ barges assigned to the same boat • A group may contain more than 15 barges, but no more than 15 barges will be carried at one time. For example, the same group may contain the following 30 barges – notice there are no more than 15 barges on the boat at any one time. 5 loads 10 loads 5 loads 10 loads
•
Each boat can only carry one group at a time but a boat can carry more than 1 group over the planning horizon. For example, the same boat can carry group1 first then group 8, and then group 3 (if time allows).
Group 1 Group 3
Group 8
2.1.2 Formulation of Grouping Mathematical Model The formulation of the grouping math model is presented below. Problem Parameters i = counter for groups j = counter for barges k = counter for boats l = counter for ports m = counter for time G = groupcost = Fixed cost associated with running a boat E = emptycost = cost associated with running one empty slot for one river segment A = stopcost = average cost of a handling stop D = dwellcost = estimated cost per day to pick up a barge R j = cost to hire an outside company to deliver barge j maxbarges = maximum number of barges that can be pushed at a time numports = number of ports on the river origin j = origin port number for barge j
dest j = destination port number for barge j earliest j = earliest pickup time for barge j Decision Variables X j,i =1 if barge j assigned to group I, 0 otherwise. Yi = 1 if group i used, 0 otherwise.
H j =1 if barge j is sub-contracted, 0 otherwise. Pi = number of empty slots in group i S i ,l = 1 if group i stops at port l Ti,l,m = 1 if group i picks up a barge at port l at time m Fi = port number of origin of group i Li = port number of destination of group i Minimize: Minimize estimated costs associated with operating costs, traveling with empty slots, handling, dwell, and hired (subcontracted) boats. ∑ Yi * G + Pi * E + ∑ S i ,l * A + ∑∑ Ti,l,m * D + ∑ H j * R j i l l m j
(
Subject To:
)
(
)
(
)
Determine if group i stops at port l. If any barge in group i has an origin or destination of port l then set MSi,l ≥
∑ X j ',i + ∑ X j '',i j '∈origin j =l j ''∈dest j =l
Si ,l =1
∀ i, l
(1)
∀j
(2)
∀ i, l
(3)
∀ j, i
(4u)
∀ j, i
(5u)
Fi ≥ numports− origin j * X j,i
∀ j, i
(4d)
Li ≥ dest j * X j ,i
∀ j, i
(5d)
∀ i, l
(6)
∀ i, l, m
(7)
∀i
(8)
All barges must be delivered either by ACBL or a hired company ∑ X j,i + H j = 1 i
Within each group i, a maximum of ‘maxbarges’ (15 barges) can be scheduled to depart each port l
∑
X j ''',i j '''∈loadsdepartl
≤ max b arg es * Yi
For upstream barges find the range of travel (in terms of port numbers) of group i
Fi ≥ origin j * X j ,i
(
)
Li ≥ numports − dest j * X j,i For downstream barges find the range of travel (in terms of port numbers) of group i
(
)
Calculate the number of empty slots in group i Pi = max loads * ( Fi + Li − numports ) −
∑ X j ' ',i j ''∈loads depart l
Determine if group i makes a pickup at port l at time m MTi,l,m ≥ ∑ X j ',i j '∈origin j =1 and earliestj =m
If any barges we assigned to group i, then set Yi = 1
∑ X j.i ≤ MYi j
Any barges on boat k at the beginning of the planning horizon must be assigned to the same, corresponding group X j'''',k = 1 ∀ j ' ' ' '∈ loads on boat k , k (9)
2.1.3 Solving the Grouping Mathematical Model It was assumed that upstream and downstream barges will never be grouped together, therefore the formulation software written in VB 6.0 by the authors first separates the barges into upstream and downstream barges. The barges are further divided into those barges that are immediately available for pick up (‘soon’ barges) and those barges that are not available for pickup until later in the planning horizon (‘late’ barges). Therefore, the formulation software generates four grouping models in LP format; groupup_soon.lp, groupup_late.lp, groupdown_soon.lp, groupdown_late.lp. These four LP formatted files are then read into CPLEX, an optimization software package, and solved. The CPLEX software attempts to find the optimal solution value by finding a feasible solution and then trying to improve that solution. The amount of time the CPLEX software runs can be determined by the user. Past experience with ACBL data has shown that a feasible solution can be found quickly and the amount of run time devoted to improvement can be user defined. For example, a sample data set provided by ACBL has the following run times: groupup_soon and groupup_late, and groupdown_late solves to optimality in less than one minute, and groupdown_soon was allowed to run for 90 minutes. The grouping model output information (i.e. which barges are in which groups) can then be fed into the assignment model.
2.2 Assignment Mathematical Model The assignment model assigns a specific boat to carry each group. Boats are assigned using a mathematical model that minimizes estimates of the ACBL towing costs and the empty boat repositioning costs. Those barges that the grouping model decides should be carried by a hired company are not considered by the assignment model. 2.2.1 Formulation of Assignment Mathematical Model The formulation of the assignment math model is presented below. Problem Parameters i = counter for groups j = counter for barges k = counter for boats l = counter for ports n = counter for ports m = counter for time ti ,m = time to deliver group i if picked up at time m tl ,n = time for boat to move empty from port l to port n group cos ti ,m = estimated cost to deliver group i if picked up at time m empty cos tl ,n = cost for boat to travel empty from port l to port n Oi = origin port number for group i Di = destination port number for group i Ck = port location of boat k at beginning of planning horizon Decision Variables Wi,k ,m =1 if group i picked up by boat k at time m U k,l ,n ,m =1 if boat k starts an empty move from port l to port n at time m Z k ,m =1 if boat k busy at time m
Minimize: Minimize estimated costs for moving groups and empty travel
∑ ∑∑ (group cos ti,m * Wi,k ,m ) + ∑∑ ∑∑ (empty cos tl ,n * U k ,l ,n,m ) i k m
k l n m
Subject To: Balance equation. Boat k must pick up another group or start an empty move after delivering group i Wi ,k ,m ≤ ∑ Wi ',k ,m+ti , m + ∑ U k ,desti ,n,m+ti , m ∀ i, k , m
(1)
At all points in time, boat k must either be picking up a group, starting an empty move, or must be busy ∀ k, m ∑ Wi ,k,m + ∑ ∑ U k,l ,n ,m + Z k ,m = 1
(2)
i '∈Oi ' = Di
i
n
l n
Each group must be picked up by a boat at some point in time ∑ ∑ Wi,k,m = 1
∀i
(3)
∀ k , l, n, m
(4)
k m
Balance equation. Boat k must pick up another group or move empty after moving empty U k,l ,n ,m ≤ n ∑ Wi ',k ,m+tl , n + ∑ U k,n ,n ',m+tl , n i '∈Oi ' = Di
n'
If a boat picks up a group, then the boat status is busy until the group is delivered
(t i,m − 1)*Wi,k ,m ≤
m+ti , m −1
∑ Z k , m' m'=m+1
∀ i, k , m
(5)
∀ k , l, n, m
(6)
∀k
(7)
If a boat starts an empty move, then the boat status is busy until the empty move is completed
(t l,n − 1)*U k,l ,n,m ≤
m+tl , n −1
∑ Z k , m' m'= m+1
At the beginning of the time horizon, each boat must start moving from its current port location ∑ Wi ',k ,1 + ∑ U k,Ck ,n,1 = 1 Oi ' =Ck
n
At the beginning of the time horizon, a boat carries any preexisting group Wi ',k ,1 = 1
∀ i'∈ group barged on boat k at time m=1
(8)
2.2.2 Solving the Assignment Mathematical Model As with the Grouping model, assignment model formulation software was written in VB 6.0 and then CPLEX is then used to solve the model formulation.
3. Case Study Results The input data has been slightly modified in order to protect proprietary interest of the company. A sample realistically sized data set consisting of 254 barges and 11 boats has been provided by ACBL. This data set represents the ACBL barge traffic on the Ohio River during a typical week. The sample data is solved using the above grouping and assignment models. The results can be summarized as follows: Number of barges carried by hired companies: 38 Number of boats used: 8 Average slot utilization: 71.89% Of the 254 barges ACBL has contracted to deliver, the grouping math model has indicated an outside company should be hired to deliver 38 of them. Again, this decision is made within the grouping math model by evaluating the tradeoff between the cost of hiring a third party to carry these barges and the cost associated with ACBL carrying these barges. Most likely, these 38 barges do not have similar characteristics (i.e. origin port, destination port, pick-up time) with many other barges. Therefore, large handling or dwell costs are accrued if ACBL delivers them. In addition, these results indicate that ACBL may be able to reduce the number of boats they currently use to transport barges. The reduction of only one boat can lead to significant savings. Finally, the solution found using the grouping and assignment math models presented in section 2 leads to an average slot utilization of 71.89%. This slot utilization is calculated as the percentage of barge positions filled (out of a max of 15) weighted by the distance on the river each boat travels. A comparison of the results with current ACBL dispatching practices indicates that the dispatching approach disclosed in this paper represents a significant improvement.
Acknowledgements The authors gratefully acknowledge the financial support for this research provided by ACBL.
References [1] Drosos, D., G.W. DePuy, and G.D. Taylor, "Scheduling and Grouping of Barges," CD-ROM Proceedings of the 2001 Industrial Engineering Research Conference, Dallas, Texas, May 20-22, 2001.