Two pricing methods for solving an integrated commercial fishery planning model MB

In this paper, we develop two novel pricing methods for solving an integer program. We demonstrate the methods by solving an integrated commercial fishery planning model (IFPM). In this problem, a fishery manager must schedule fishing trawlers (determine when and where the trawlers should go fishing, and when the trawlers should return the caught fish to the factory). The manager must then decide how to process the fish into products at the factory. The objective is to maximise profit. The problem may be modelled as a single integer program, with both the trawler scheduling and production planning parts integrated. Inventory constraints connect the two parts of the problem. Production planning alone would result in an easy linear program, but due to the trawler scheduling aspect, the IFPM is a hard integer program in the sense that traditional solution methods result in computation times that are far too long to be practical. The two pricing methods developed in this paper are a decomposition–based O’Neill pricing method and a reduced cost–based pricing method. We demonstrate the methods by means of numerical examples for different planning horizons, corresponding to differently sized problems.


Introduction
In this paper we present recent research on the solution of an integer program for an integrated commercial fishery's activities.Two loosely-connected problems arise in a modern commercial fishery.The first is to schedule trawlers for fishing, including deciding where and when those trawlers should work, and, crucially, when they should return to land the fish.The landed fish generally becomes inventory, which is raw material for a processing plant.The processing plant cleans, processes, and packages the fish for the market.The second problem is to schedule the processing of different types of products.
Based on real data for a commercial fishery in New Zealand, we previously developed a model (Hasan and Raffensperger, 2006) to solve this problem: the integrated fishery planning model (IFPM).The IFPM is designed to co-ordinate trawler scheduling and processing.The model can theoretically be updated and solved periodically to aid in a manager's decision making.Unfortunately, for realistic planning horizons of 20 periods or more, computational times involved in solving the IFPM are quite long, even with methods such as Dantzig-Wolfe decomposition and subgradient optimisation.We have since developed two novel column generation algorithms to solve the IFPM.These algorithms show promise and are based on the decomposition-based pricing algorithm of Mamer and McBride (2000), combined with the integer variable pricing method of O'Neill et al. (2005).

The fishery planning literature
Wide-ranging research has been reported on fisheries.Many papers describe biological models, but only a few consider production planning.Mikalsen and Vassdal (1981) developed a multi-period linear programming (LP) model for one month production planning so as to smooth the seasonal fluctuations of fish supply.Their model is market-driven and incorporates the acquisition of raw material purchased (rather than acquired with their own fishing fleet).Jensson (1988) developed a product mix LP model to maximize profit of an Icelandic fish processing firm over a five period planning horizon.He addressed both production planning and labour allocation for that processing firm, but did not consider any fleetspecific issues or quota sizes.Gunn et al. (1991) developed a model for calculating the total profit of a Canadian company with respect to integrated fishing and processing.Their model includes a fleet of trawlers, a number of processing plants and market requirements.However, their model ignores the trawler scheduling and labour allocation in the processing firm.Indeed, none of these papers report models that attempt to integrate both trawler scheduling and production.

The integer programming literature
The literature on integer programming is extensive.We describe only a few papers here that have informed our work.Martin et al. (1985) presented a reduced cost-based branch-and-bound method for solving mixed integer linear programs (MILPs).The authors formulate two candidate problems on the basis of 0-1 integer variables and then optimize both of the candidate problems in order to obtain the MILP solution.Mamer and McBride (2000) developed a decomposition-based pricing (DBP) procedure for linear programs (LPs).Their algorithm works by solving subproblems just as the Dantzig-Wolfe algorithm uses subproblems.However, the DBP master problem exhibits the same form and structure as the original model, but with far fewer variables.Variables that are positive in the subproblem are brought directly into the master problem; all other variables are omitted from the master problem.Our work in this paper builds substantially on the ideas of Mamer and McBride (2000).A DBP approach has also been adopted by De Carvalho (2006) for cutting stock, and by Raffensperger and Schrage (2007) for scheduling training in a tank battalion.We have also previously adopted a DBP approach with respect to an IFPM in Hasan and Raffensperger (2007).In this paper, we describe two improved DBP methods.
The first method we call decomposition-based O'Neill pricing (DBONP), because it is based on the work of O'Neill et al. (2005).These authors developed a technique for constructing a set of linear prices by solving a MILP and an associated LP, based on a theorem of Gomory and Baumol (1960).They first solve a MILP, set the integer variables to their optimal values, and then remove the integrality constraints to convert the MILP to an LP.They use the dual prices obtained from this LP to form an efficient contract (the dual of the IFPM ) in the context of an electricity market.
The second method is a reduced cost-based pricing (RCBP) method.Unlike Martin et al. (1985), we set constraints for both 0-1 integer variables (O'Neill et al., 2005) in the same candidate problem, which is the restricted master problem in the proposed RCBP method.In this method, we do not solve a subproblem at all.Instead, we choose new variables for the restricted master problem based on a reduced cost calculation, and we bring a set of variables into the restricted master problem at each iteration.We show that both of these methods produce better solutions than those reported in our earlier work (Hasan and Raffensperger, 2007).
The remainder of this paper is organized as follows.In §2, we briefly present the IFPM.In §3, we review O'Neill's pricing method and describe the mathematical formulation of the proposed DBONP method.We also present the DBONP algorithm along with numerical examples.In §4, we present the mathematical formulation of the proposed RCBP method, and also present the RCBP algorithm along with numerical examples.The solutions obtained by the DBONP and RCBP methods are compared with that of DBP in §5.Some conclusions follow in §6.

The fishery model in matrix notation
In this section we briefly describe our IFPM.The details of the model can be found in Hasan and Raffensperger (2006).We have omitted details of the model in order to focus on the algorithm.

Parameters
Let V t,v be the profit earned by trawler v during period t and let I t denote the cost per kg of fish landed during period t.Furthermore, suppose P i,j,l is the price per kg of fish type i converted into product j of quality l and let A (0) a,i,t,v denote the amount of raw fish i that will be landed during period t by trawler v from area a.Also, let A (1) i,l,t,v denote the mass transformation for raw fish type i from trawler v of quality l during period t, and let A (2) i,j,l,t denote the mass transformation for raw fish type i into finished product type j of quality l during period t.Finally, let d i,j,l,t denote the mass transformation for raw fish type i into finished product type j of quality l during period t.

Decision variables
Let w p,a,u,t,v be a binary decision variable taking on the value of 1 if a trawler v will go fishing during period u in area a from factory p and lands its catch during period t, or 0 otherwise.Furthermore, let the variable f i,l,t denote the current quantity of fish type i of quality l during period t and let the variable x i,j,l,t denote the amount of fish type i converted into product j of quality l during period t.
The objective in the IFPM is to maximize i,j,l,t x i,j,l,t = b f i,l,t , x i,j,l,t ≥ 0 for all i, j, l, t, i,l,t denotes the restriction on the quantity of fish type i of quality l during period t, b (1) t denotes the restriction on the trawler scheduling constraint and b (2) i,j,t denotes the restriction on the quantity of fish type i converted into product j during period t.
Constraint set (1) represents the relationship of the trawler scheduling variables w to landed fish f , as a mass balance in movement of fish from trawlers to the factory, while (2) expresses constraints involving only trawler scheduling, indicating, for example, that a trawler may be in only one place at a time.Constraint set (3) expresses fish processing restrictions, modelling the flow of fish through the factory as raw fish is converted into various products.Constraint set (4) constitutes mass balance constraints, representing the flow of raw landed fish inventory into the fish processing factory.When the integer constraints (5) are relaxed, the model is the usual linear programming relaxation.
The IFPM consists of trawler scheduling and processing, connected by inventory constraints, either (1) or (4).Using Lagrangean relaxation, one can relax either of these side constraints, in which case the model decomposes into an integer program for trawler scheduling, and a linear program for the fish processing.These separate problems are easier to solve, and the sum of their objective values represents an upper bound (since it is a maximization problem) on the optimal objective function value of the IFPM.For example, if we relax (4), we obtain the two subproblems, maximize i,j,l for all i, l, t, x i,j,l,t ≥ 0, for all i, j, l, t, and maximize where θ = [θ i,l,t ] is the matrix of dual prices on (4) assuming that the IFPM is solved as an LP, not as an integer program (IP).It is unfortunate that P 2 (θ) cannot be directed by some kind of standard price information on the integer variable w = [w p,a,u,t,v ] .In fact, the DBONP method actually finds such price information, and uses it.
Following the decomposition-based pricing method for this problem (Hasan and Raffensperger, 2007), the master problem follows from the original problem, assuming its structure and including all its constraints.However, initially only enough variables are included to allow a feasible solution.In the IFPM, the zero matrix is feasible, as the fishery manager can simply choose to do nothing.
At iteration k, the master problem M k is solved as a linear program, in order to find the necessary dual prices θ.These prices are passed to the subproblems P 1 (θ) and P 2 (θ), which are then solved.Positive variables from the subproblems are then passed to the master problem, increasing the total number of variables that it contains.The set of variables in the master problem is tracked by the indices of the positive variables found thus far, in an index set I k .Thus, a variable with its index in I k has been positive in a subproblem in some previous iteration, and will appear in the master problem.Variables that have always been zero in every subproblem do not have their index in I k , and thus do not appear in the master problem.In the master problem M k the objective is to maximize i,j,l,t x i,j,l,t = b (2) i,l,t for all i, l, t, i,l,t,v f i,l,t i,j,l,t x i,j,l,t = b for all i, l, t, w p,a,u,t,v , f i,l,t , x i,j,l,t ≥ 0, for all p, a, u, t, v, i, l, t, j f i,l,t , w p,a,u,t,v , x i,j,l,t ∈ I k for all p, a, u, t, v, i, l, t, j, where I k is the index set of positive variables found in the subproblems, and where f i,l,t , w p,a,u,t,v , x i,j,l,t = 0 for f i,l,t , w p,a,u,t,v , x i,j,l,t / ∈ I k .The index set I k increases in size with each iteration because each iteration of the subproblems adds new positive variables.
While this decomposition approach is already better than a direct integer programming approach using CPlex, for example, we wished to improve the method further.

Decomposition-based O'Neill pricing (DBONP)
In this section, we first discuss the notion of O'Neill pricing in §3.1.In §3.2, we then present the mathematical formulation of the DBONP and present the DBONP algorithm.This is followed by a presentation of numerical examples over different planning horizons §3.3.Theorem 1 An MILP with m continuous variables and n integer variables that has a feasible and bounded optimal solution in (R m × Z n ) can be converted to an LP with at most (m + n) continuous variables and at most n additional linear constraints.These authors were not interested in a solution as such, nor in the associated computation time, but in finding efficient prices for indivisible objects.To find these prices, they first solved an MILP to optimality.They then added new constraints that fix the integer variables to their optimal values, and removed the integrality constraints to convert the MILP to an LP.Solution of this problem gave dual prices to the new constraints.They showed that the dual variables in the LP have a traditional interpretation as prices.The dual variables explicitly price integral activities, and clear the market in the presence of nonconvexities.They used these dual prices to form an efficient contract in the context of a market for electricity.

Mathematical formulation for DBONP
To apply the method of O'Neill et al. (2005) in the context of DBP, our method 1. finds an optimal solution w = [w p,a,u,t,v ] to the restricted master problem as an integer program; 2. fixes the integer variables to their optimal values w * by means of new constraints of the form w = w * and solves the restricted master problem as an LP, thus obtaining dual price information θ 1 on the constraints in (9); 3. then uses the resulting dual prices θ 1 to better inform the trawler scheduling subproblem as to which variables should be selected.The trawler subproblem can use this new information through Lagrangean relaxation of the new constraints, that is by solving the following problem, called P (θ, θ 1 ), in which the objective is to maximize a,t,v w p,a,u,t,v ≤ 1 b t for all t, w p,a,u,t,v ∈ {0, 1}, for all p, a, u, t, v f i,l,t ≥ 0, for all i, l, t.
4. Positive variables from both subproblems are brought into the restricted master problem.Two stopping criteria are enforced, namely when no new positive variables are produced, or when the objective values of the subproblems and master problem are equal.By explicitly pricing the integer variables, and using that price information in the subproblem, we bring better variables into the restricted master problem, and return to step 1.
Note, however, that this approach requires solving the restricted master problem as an integer program at every iteration.This is computationally expensive.We therefore employ ordinary DBP, solving the restricted master problem and subproblems as LPs, until we find an LP optimum.We then switch to the formal DBONP method, and continue iterating.This approach creates two separate loops.The first loop does not utilize the constraints (9), whereas the second loop does.
Loop 1. Relax the inventory balance constraint (4), and then apply the DBP method, to obtain the final restricted master problem as an LP.
Step 2: Solve M k as an LP to obtain dual prices θ k and pass them to the subproblems.
Step 3: If v (P 1 (θ) + P 2 (θ)) = v M k+1 , then go to Loop 2. Else k ← k + 1 and go to step 1.Here v (P 1 (θ) + P 2 (θ)) represents the objective function value of the subproblems and v M k+1 represents the objective function value of the restricted master problem.
Loop 2. Solve the current restricted master problem as an IP, and add constraints which fix the integer variables to their optimal values.Solve the master problem as an LP and obtain the dual prices on the inventory balance constraint (4), and the equations associated with the integer variables.We have the dual prices θ k as before, but now we also have new dual prices θ 1 from the new constraints.
Step 4: Solve the restricted master problem as an IP.
Step 5: For integer variables, fix w i = w i * .
Step 6 : Solve the master problem as an LP with w i fixed.Obtain dual prices θ k and θ 1 , and pass them to the subproblems.
Step 7: Solve the subproblems P 1 (θ) and P 2 (θ, θ 1 ) with the dual prices obtained from step 6.If no new variables enter into the restricted master problem, then stop.Else go back to step 4.
We present the logic of the DBONP algorithm in the form of a flowchart Figure 1.

Numerical results
We compare the solutions of the DBONP approach with those obtained from the original IFPM, LP relaxation problem, and DBP algorithm.The results are presented in Table 1.
We observe no duality gap for the 5, 10 and 25-period models, thus confirming optimality.However, the 15, 20, and 30-period models exhibit small gaps.For example, a 30-period model exhibits a 0.02% duality gap.The average duality gap is only 0.04% computed over the six different planning horizon models.These gaps may be considered negligible.
Notice that for the results described above we started with dual prices of θ = 0. Instead, we also attempted creating the initial dual prices naively.Results are reported in Table 2. Solutions obtained from DBONP are close to the true optima.The average duality gap is only 0.06%, but sometimes worse than in Table 1.
Tables 1 and 2 show that the solutions obtained via the DBONP approach are either equal to or very close to the optimal solutions (15-period, 20-period and 30-period models).To see why a small difference in profit remains, we compared the true optimal solution with that obtained by the DBONP algorithm for a 30-period planning horizon problem.The total number of trawler trips in the DBONP solution coincides with that in the exact solution, but the schedule is slightly different, as shown in Figures 2 and 3.As a result, there is a slight change in the processing and holding costs.Figures 4, 5, and 6 show the solution times, duality gap, and number of iterations, for different planning horizon models respectively, when solved by the DBP and DBONP algorithms.The DBONP approach requires a larger number of iterations and more computation time, but produces better solutions than the DBP approach.
In this section we employed both DBP and O'Neill pricing to develop the DBONP tech-  nique.We found that the DBONP algorithm requires slightly longer computation times, but produces better solutions than our earlier DBP procedure.To improve further on the computation times, we also developed a reduced cost-based pricing method.
4 The Reduced cost-based pricing for IFPM One reason why the DBONP algorithm took a relatively long computation time was due to solution of the trawler scheduling subproblem as an IP.We therefore attempted to eliminate this step.Instead, we use the O'Neill price information to find the reduced cost for each integer variable.Under this approach we are moving away from the DBP philosophy for the trawler scheduling aspect of the problem, but we continue to use DBP for the fish processing subproblem.So the processing subproblem, and the restricted master problem, are the same as with the DBP approach.Instead of employing the trawler scheduling subproblem, we merely calculate the reduced cost of the variables of that subproblem, which is extremely fast.

The Reduced cost of a variable
The reduced cost of a variable w j with associated objective function coefficient c j is the net change in the objective function when generating one unit of w j , and is defined as   cj = c j − z j , where z j denotes c BV B −1 a j .Here c BV are the cost coefficients of the basic variables, B −1 is the inverse of the basis matrix, and a j is the corresponding column of the basic variables.The reduced cost gives the marginal value of a variable on the objective function related to the current basic solution.For a maximization problem, the variable with largest positive reduced cost will be the incoming variable.Following the notation in AMPL (Fourer et al., 1993), we denote the reduced cost of variable w as w.rc.Denote λ 1 and λ 2 as the dual prices on (1) and ( 2) respectively, with a 0 and d 1 as the relevant columns of A 0 and D 1 respectively.Then This reduced cost calculation has an explicit term for the integrality constraint.In the next section, we show how to use this reduced cost calculation.

The RCBP algorithm
The RCBP algorithm proceeds as follows: Step 0. Set k ← 1.
Step 1. Solve M k as an IP.
Step 2. Add constraints of the form (9) for the integer variables.Solve the restricted master problem as an LP.Obtain dual prices for the trawler scheduling constraints (1), (2), and (9).
Step 3. Calculate w.rc in (11).Scan the reduced costs for all integer variables.Include integer variables with positive reduced cost to the restricted master problem.For the continuous variables from the fish processing part of the problem, there are two options: Option 1: All continuous variables appear in every restricted master problem.Option 2: Continuous variables with positive reduced cost are added to the restricted master problem at each iteration.
Step 4. For the processing subproblem, solve the processing LP subproblem, and add all positive variables to the restricted master problem as in the DBP approach.
Step 5.If no new variable enters the restricted master problem, then stop.Else k ← k +1 and go back to step 1.
We present the logic of the RCBP algorithm in the form of a flowchart in Figure 7.

Numerical results
We solved IFPM with different planning horizon models using each option in Step 3. Option 2 takes fewer iterations and less time to solve the fishery model than does Option 1. Results are reported in Table 3.

Comparison of DBP, DBONP and RCBP solutions
In this section we compare the solutions obtained as well as the number of iterations and solution times required by the DBP, DBONP and RCBP methods in Figures 8-10.The RCBP algorithm is the best among the methods we developed.It requires the smallest solution time to solve, requires fewer iterations and yields better solutions.We further investigated these methods using three different problem instances under many different catch rate scenarios.The numerical results reported here are consistent with those otained for the other problem instances.

Conclusion
In this paper we developed two different column generation algorithms for faster solution of an IFPM.The first is the DBONP method and the second is the RCBP methodboth these approaches are based on O'Neill pricing.
In the RCBP method, we solved only easy LP subproblems and avoided the need to solve IP subproblems.Instead of solving the IP trawler scheduling subproblem, we calculated the reduced cost for each variable, choosing variables with positive reduced cost to bring into the restricted master problem.
Compared to the DBP method alone, we found that the DBONP algorithm took slightly longer, but tended to produce better solutions.However, the RCBP method is both faster and gives better solutions than the DBP approach, and in some cases than the DBONP method.
Note that we never employed a specialized branch-and-bound technique, except for that native to CPlex in the restricted master problem and subproblems.It therefore appears that the combination of DBP and O'Neill pricing approaches may facilitate the develop- 2 Referemces (a) I need the volume numbers for references [3], [5], [8], and [13]: I have given the volume numbers as follows: the published year is the issue number.
,v denote the mass balance coefficients on trawler v during period t in area a and let d(2)

O
'Neill et al. (2005)  developed a technique for constructing a set of linear prices from solving an MILP and an associated LP, based on the following theorem ofGomory and Baumol (1960).

Figure 2 :
Figure 2: Trawler 1 schedule in the optimal solution.Here the edges represent periods and vertices represent the required number of periods for a trip.

Figure 3 :
Figure 3: Trawler 1 schedule in the DBONP solution.Here the normal edges represent the trawler trips which coincide with the schedule obtained by the exact (IP) solution and the dashed edges represent the trips which are slightly different from the schedule obtained by the exact (IP) solution.

(Figure 4 :
Figure 4: Solution times for different planning horizons by DBP and DBONP.

Figure 4 :Figure 5 :Figure 6 :
Figure 4: Solution times required by DBP and DBONP for different planning horizons.All computations performed on a Pentium III processor with a clock speed of 665 MHz and 384 MB RAM.

Figure 6 :
Figure 6: Number of iterations required to solve different planning horizons by DBP and DBONP.

Table 1 :
Comparison of the solutions obtained by the DBP and DBONP methods.All computations performed on a Pentium III processor with a clock speed of 665 MHz and 384 MB RAM.

Table 2 :
Comparison of the number of iterations, computation times and solutions obtained by the DBP and DBONP methods.All computations performed on a Pentium III processor with a clock speed of 665 MHz and 384 MB RAM.
Flowchart of the RCBP procedure.

Table 3 :
Total profit, number of iterations, and solution times for the RCBP procedure.