Advances in Decision Sciences

Advances in Decision Sciences / 2010 / Article

Review Article | Open Access

Volume 2010 |Article ID 707504 |

Rasmus Rasmussen, "Minimizing Costs Can Be Costly", Advances in Decision Sciences, vol. 2010, Article ID 707504, 16 pages, 2010.

Minimizing Costs Can Be Costly

Academic Editor: Khosrow Moshirvaziri
Received09 Jun 2009
Accepted20 Nov 2009
Published07 Mar 2010


A quite common practice, even in academic literature, is to simplify a decision problem and model it as a cost-minimizing problem. In fact, some type of models has been standardized to minimization problems, like Quadratic Assignment Problems (QAPs), where a maximization formulation would be treated as a β€œgeneralized” QAP and not solvable by many of the specially designed softwares for QAP. Ignoring revenues when modeling a decision problem works only if costs can be separated from the decisions influencing revenues. More often than we think this is not the case, and minimizing costs will not lead to maximized profit. This will be demonstrated using spreadsheets to solve a small example. The example is also used to demonstrate other pitfalls in network models: the inability to generally balance the problem or allocate costs in advance, and the tendency to anticipate a specific type of solution and thereby make constraints too limiting when formulating the problem.

1. Introduction

Very often decision problems are modeled as a cost-minimization problem. In particular network models mostly have a minimization objective. The reasoning is of course that the specific decision situation does not influence income, so minimizing costs would lead to maximized profit. However very few businesses have fixed revenues; and decisions influencing costs may eventually also influence income.

It is regarded good modelling practice to simplify a model as much as possible and only include what seems to accurately describe the relevant characteristics, making a valid representation of the decision problem. For business problems, revenues are relevant for most situationsβ€”minimum costs are often achieved by doing nothing. The reason for doing something is normally revenues. Thus a valid model often would require considering both revenues and costs, unless we aim for doing nothing.

The example used throughout the paper is based on a network model. In addition to the objective, some other modelling aspects are also discussed. Firstly it is noticed that balancing network models generally is not possible in advance, but modelling techniques make the balancing task unnecessary. Similarly calculating product costs in advance of a solution is generally not possible, but cost allocation is not needed if the problem is formulated wisely. A general point about too tight or limiting constraints is made using transhipment nodes, as an example.

The example is initially used as a cost-minimizing problem. Then difficulties that may arise if capacity problems occur are discussed; do we want to minimize the costs or maximize the service level? And finally, should we not be maximizing profit?

2. Balancing Network Models: A Wasted Exercise?

Network/transportation problems can be described by two sets of symbols: nodes and arcs. Nodes typically represent geographical locations, but can also describe resources, customers, production processes, etc., and are indicated by a circle in the graph (or network). The arcs are the lines connecting the nodes. Arrowed lines are directed arcs; otherwise the flow along the arc can go both directions. The flow along the arcs typically represents decision variables. An unidirectional arc indicates that a flow between nodes j and k can go in both directions; (𝑗,π‘˜) and (π‘˜,𝑗), where the first index is the initial node and the second index is the terminal node for the flow. For a problem with n number of nodes, the set of nodes would be N = {1,…, n} and the set of arcs A = {(𝑗,π‘˜),…,(𝑖,𝑙)} would list all arcs in the network (where unidirectional arcs would have two entries). Additional indexes can be added, to represent different modes of transportations, different item numbers, and so forth.

In transhipment problems we have some supply nodes with limited capacity, some transhipment nodes, and some demand nodes, mostly with a specific demand. If total supply = total demand, then we have a balanced problem. If total supply exceeds total demand, then a dummy (demand) node and arcs can be added, or if total demand exceeds total supply, then a dummy (supply) node and arcs can be added, to balance the problem [1, 2].

Unfortunately we generally cannot tell in advance whether we have a balanced problem or not. The supply nodes may be factories producing different items on the same production line. Thus the capacity for a single item is not fixed. As we cannot compute total supply of each item, we cannot decide in advance whether the problem is balanced. Or, there may be gains or losses along the arcs. Then we have to decide the flows along the arcs to compute the actual quantities received in the demand nodes, which of course cannot be done before the solution. Similarly there may be capacity constraints on some or all of the arcs, which also could make it impossible to tell in advance if the problem is balanced or not.

Fortunately, using Linear Programming, we do not need to know if a problem is balanced or not to solve it. This requires that we have a feasible solution. Feasibility is always assured if the demand constraints are of the type ≀ (implying that the demand has an upper limit), and we have a maximization objective, which for businesses always would be preferable to a minimization objective. Demand constraints of the type β‰₯ (or =) would indicate a lower (or equal) limit and could of course make the problem infeasible. However these types of constraints indicate that we have accepted some binding contracts of minimum deliveries, which preferably should not have been made unless they were tested for feasibility. Of course, a demand node can have both a lower and an upper limit. Assuming that any lower limits on demand have not been accepted without a careful consideration or reservation of capacity, there is no need for dummies. And even when lower limits on demand exceed total capacity, we still do not need dummy nodes and arcs. However we then need to negotiate for back orders, explained later.

On the other hand, if we have a minimization objective, then we easily may be in trouble. As supply constraints basically are of the form ≀, then the demand constraints cannot be of the type ≀ also. A minimization objective will in that case select the zero solution for all decision variables. To avoid such a trivial conclusion the demand constraints are usually converted to the type β‰₯, even though this does not necessarily imply that all the demand consists of contracts of minimum deliveries. Unfortunately, this conversion of the demand constraints quite often makes the problem infeasible. Again, we can use back orders instead of virtual dummy nodes and arcs. Thus we do not need to balance transportation/network problems; if the solution is feasible, then we are done, then if not we have to add back orders to our model. Back orders are for real, and no virtual dummies required.

3. Minimizing Objective in Network Models

Network models seem to have a minimization objective as default, except for the maximum flow problem. Also transportation problems default to a minimization objective [1, 2]. But even for minimization problems (problems with no revenues, only costs), there is no need to add virtual dummy nodes and arcs to balance the problem. If total supply exceeds total demand then the model would return a solution not using all of the supply, and still satisfying all demand the cheapest way. However, if total demand exceeds total supply, the problem is infeasible. In such cases the problem at hand can be solved in two stages. In the first stage new variables representing back orders are added, and total back orders are minimized. A second stage is necessary to find the cheapest way to make the actual deliveries, where a new constraint is added assuring that total back orders still equal its minimum number.

Also for maximization problems there would be no need for virtual dummy nodes and arcsβ€”the model would simply use as much of the recourses needed to satisfy any profitable demand, with no balancing required. If total supply exceeds total demand, then the model would return a solution maximizing profit, not needing to use all of the supply. If total demand exceeds total supply, then the model would satisfy as much as possible (measured in value, not necessary quantities) of the profitable demand, within the capacities. This of course assumes that the demand constraint is of the type ≀ which guarantees feasibility. If there also are demand constraints requiring large minimum deliveries, the problem may become infeasible. Again back orders may come to rescue. In the first stage the sum of back orders (preferably valued at their selling prices or contribution margins) is minimized. The second stage then maximizes profit, without increasing the value of the total back orders.

There is one problem with back orders thoughβ€”in minimization problems, quantities are added without any common unit, unless it is a single commodity model. If back orders could be valued, then this problem would be reduced, but then we most likely also would have a maximization objective, and the infeasibility problem would normally not exist. Valuing back orders at their selling price would probably also highly correspond to how the customers rank the importance of receiving the commodities.

However, the main problem of minimizing costs is that we most likely are solving the wrong problem; we are not making as much profit as possible.

4. An Example: Recycling Paper Products

The example in Figure 1 will be used to demonstrate some of the general issues discussed above. This example is taken from [3]. In Figure 1 we have nodes 1–4 representing the supply of different types of waste paper for recycling (newspaper, mixed paper, white office paper, and cardboard). The numbers in boxes to the left of the supply nodes indicate the number of tons in stock, ready to be processed next planning period, like 70 tons of newspaper (node 1). The waste paper can be processed in two different recycling processes, represented by node 5 and 6. A recycling process will first transform the waste paper to paper pulp, and then using the paper pulp to produce different types of end products. The end products are displayed as nodes 7–9 (paper pulp for newsprint, packaging paper, and print stock quality paper). The demand for the end products is listed in the boxes to the right of the demand nodes, like 60 tons of paper pulp for newsprint (node 7). A zero in the boxes above/below the (transit) nodes representing the recycling processes indicates that the net inflow must be (at least) zero. In this example it corresponds to the fact that the total amount of paper pulp that has been processed from the inputs must at least equal the total amount of paper pulp that has been processed to outputs.

The arc from node 1 to 5 indicates the flow of newspaper used in recycle process A, and the cost per ton along this arc is displayed as $13. A similar interpretation applies for the other currency numbers, the cost per ton of flow along the arc. The recycling process transforms waste paper to paper pulp, but the yield is not 1 : 1. One ton of newspaper used in recycling process A yields only 0.9 ton of paper pulp, displayed as 90% along the arc (1,5) in the graph. The same interpretation applies to the other % values along the arcs, the yield associated with the transformation of the flow along the arc. The paper pulp is then transformed to different types (for newsprint, packaging paper, and print stock quality paper), but the yield is still not 1 : 1. One ton paper pulp produced in recycling process A (node 5) will only result in 0.95 tons of newsprint (node 7), and the cost is $5 per ton of paper pulp processed, as listed along the arc (5, 7).

5. Formulating an LP Model for the Transshipment Network

To formalize this problem we define the symbols in Table 1

𝑠 Number of supply nodes
𝑑 Number of transshipment nodes
𝑑 Number of demand nodes
𝐸 Total expenses (costs)
𝑍 Total backorders
𝑅 Total profit
𝑆 The set of supply nodes 𝑆 = { 1 , 2 , … , 𝑠 }
𝑇 The set of transit nodes 𝑇 = { 𝑠 + 1 , … , 𝑠 + 𝑑 }
𝐷 The set of demand nodes 𝐷 = { 𝑠 + 𝑑 + 1 , … , 𝑠 + 𝑑 + 𝑑 }
𝑁 The set of nodes 𝑁 = { 1 , … , 𝑠 + 𝑑 + 𝑑 }
𝐴 The set of arcs 𝐴 = { ( 𝑆 Γ— 𝑇 ) βˆͺ ( 𝑇 Γ— 𝐷 ) }
π‘ž β„Ž Capacity at supply node β„Ž β„Ž ∈ { 𝑆 }
𝑏 𝑗 Demand at node 𝑗 𝑗 ∈ { 𝐷 }
𝑝 𝑗 Unit selling price at node 𝑗 𝑗 ∈ { 𝐷 }
𝑐 π‘˜ , 𝑙 Unit cost of flow from node π‘˜ to node 𝑙 ( π‘˜ , 𝑙 ) ∈ { 𝐴 }
𝑦 π‘˜ , 𝑙 Yield of flow from node π‘˜ to node 𝑙 ( π‘˜ , 𝑙 ) ∈ { 𝐴 }
𝑋 π‘˜ , 𝑙 Quantity of flow from node π‘˜ to node 𝑙 ( π‘˜ , 𝑙 ) ∈ { 𝐴 }
π‘Š 𝑗 Quantity of back orders at node 𝑗 𝑗 ∈ { 𝐷 }

The lower case symbols with indexes are constant parameters, as π‘žβ„Ž representing the supply capacity at node β„Ž, whereas π‘‹π‘˜,𝑙 is the decision variable for the problem, representing the flows along the arcs. In the example this corresponds to the number of tons of different waste paper to use in the two recycling processes, and the number of ton of paper pulp to refine to end products. For example, 𝑋3,6 would represent the number of tons of white office paper used in recycling process B, and 𝑋5,9 would represent the number of tons of paper pulp processed in recycling process A and refined to pulp for print stock quality paper. An LP formulation for this example could be made as follows.

Objective function. We probably want to minimize the cost associated with the recycling activity, as we do not have any information on revenues. The total cost (Expenses) can be computed as

min𝐸=min(π‘˜,𝑙)βˆˆπ΄π‘π‘˜,π‘™π‘‹π‘˜,𝑙.(5.1) Minimize the total cost of flows for all arcs (set A) in the network, that is, minimize the total sum of unit cost Γ— quantity (π‘π‘˜,π‘™β‹…π‘‹π‘˜,𝑙).

Constraints. We must make sure that we do not use more waste paper than we actually have in stock:

ξ“π‘™βˆˆπ‘‡π‘‹β„Ž,π‘™β‰€π‘žβ„Žβˆ€β„Žβˆˆπ‘†.(5.2) Total sum of quantities flowing out of a supply node (to the transit nodes) cannot exceed the capacity of the same supply node. This requirement applies to all supply nodes (set S).

We also have to make sure that the amount of paper pulp refined does not exceed the amount of paper pulp processed in each recycling process:

ξ“π‘˜βˆˆπ‘†π‘¦π‘˜,π‘–π‘‹π‘˜,𝑖β‰₯ξ“π‘—βˆˆπ·π‘‹π‘–,π‘—βˆ€π‘–βˆˆπ‘‡(5.3) Total net amount flowing into a transit node must at least cover the total amount flowing out of the same transit node. This requirement applies to all transit nodes (set T).

Finally we must ensure that the net amount of various types of refined paper pulp satisfies the demand:

ξ“π‘–βˆˆπ‘‡π‘¦π‘–,𝑗𝑋𝑖,𝑗β‰₯π‘π‘—βˆ€π‘—βˆˆπ·(5.4) Total net amount flowing into a demand node must at least satisfy demand in that node. This requirement applies to all demand nodes (set D).

Of course the nonnegative assumptions must hold: π‘‹π‘˜,𝑙β‰₯0 for all (π‘˜,𝑙)∈𝐴. An algebraic formulation replacing symbols with data will transform the equations as listed in Table 2. Note that (5.4) assumes that all demand is constrained by lower limits and no upper limits.

(5.1) Min: 1 3 𝑋 1 , 5 + 1 2 𝑋 1 , 6 + 1 1 𝑋 2 , 5 + 1 3 𝑋 2 , 6 + 9 𝑋 3 , 5 + 1 0 𝑋 3 , 6 + 1 3 𝑋 4 , 5 + 1 4 𝑋 4 , 6 + 5 𝑋 5 , 7 + 6 𝑋 6 , 7 + 6 𝑋 5 , 8 + 8 𝑋 6 , 8
    + 8 𝑋 5 , 9 + 7 𝑋 6 , 9

(5.2) 𝑋 1 , 5 + 𝑋 1 , 6 ≀ 7 0 node 1 (Newspaper)Set S
𝑋 2 , 5 + 𝑋 2 , 6 ≀ 5 0 node 2 (Mixed paper)
𝑋 3 , 5 + 𝑋 3 , 6 ≀ 3 0 node 3 (White office paper)
𝑋 4 , 5 + 𝑋 4 , 6 ≀ 4 0 node 4 (Cardboard)
(5.3) 0 . 9 0 𝑋 1 , 5 + 0 . 8 0 𝑋 2 , 5 + 0 . 9 5 𝑋 3 , 5 + 0 . 7 5 𝑋 4 , 5 β‰₯ 𝑋 5 , 7 + 𝑋 5 , 8 + 𝑋 5 , 9 node 5 (Recycling process A)Set T
0 . 8 5 𝑋 1 , 6 + 0 . 8 5 𝑋 2 , 6 + 0 . 9 0 𝑋 3 , 6 + 0 . 8 5 𝑋 4 , 6 β‰₯ 𝑋 6 , 7 + 𝑋 6 , 8 + 𝑋 6 , 9 node 6 (Recycling process B)

(5.4) 0 . 9 5 𝑋 5 , 7 + 0 . 9 0 𝑋 6 , 7 β‰₯ 6 0 node 7 (Pulp for newsprint)Set D
0 . 9 0 𝑋 5 , 8 + 0 . 9 5 𝑋 6 , 8 β‰₯ 4 0 node 8 (Pulp for packaging paper)
0 . 9 0 𝑋 5 , 9 + 0 . 9 5 𝑋 6 , 9 β‰₯ 5 0 node 9 (Pulp for print stock quality paper)

An efficient layout of the spreadsheet would consist of two tables: one table for the arcs (set A) computing the objective function and one table for the nodes (sets S, T, and D) computing the constraints [3]. Observe that all indexes on the sum symbols for (5.2), (5.3) and (5.4) are simply referring to set N in the spreadsheet implementation, displayed in Figure 2.

The optimal solution has a minimum cost of $3149.46 when satisfying all demand at its minimum levels. This deploys all supply of collected paper, except for 4.63 tons of cardboard unused.

6. Constraints Should Not Be Limiting

The constraints in (5.3) need to be commented. A transshipment node is a node with both a flow in and a flow out. Most network and transport models are treating constraints for the transshipment nodes as equal (=) constraints. However this implies that increasing inventories or disposal of unused items is not possible: sum in = sum out, for each transshipment node. Generally this is not always the case; quite often it is possible to store or dispose items at the transshipment nodes. In that case the constraints should be of the form β‰₯; as in (5.3). Constraints of the form = are better suited for identities or definitions, like starting inventory + sum in – sum out = ending inventory.

When formulating a problem, we need to keep in mind that the constraints have to be correct for all feasible solutions, not only for the optimal solution. This of course implies that we should not anticipate a solution and formulate constraints of the form = just because an inequality constraint will be satisfied as an equal constraint in the optimal solution. We should not be solving a problem when formulating it. Only if we have problems finding the optimal solution, then we should use such β€œtricks”, and then we must be aware that replacing inequality constraints with equal constraints also affects the interpretation of the sensitivity analysis.

7. What Happens If We Are Short of Supply or Capacities?

Assume for now that the supply for newspaper is only 55 tons (node 1). Without the knowledge from the solution in Figure 2 we have no clue whether we can satisfy demand or not. If we try to solve the problem, then we will get an error message telling that it is infeasible. Then we know that we are short of supply and, therefore, unable to satisfy all demand. However we cannot just reverse the β‰₯ inequalities in (5.4) to ≀, since the minimization objective then will guide all decision variables to zero. A quick fix [3] will be to also reverse the inequalities in (5.2) and (5.3). Such a formulation will then force the use of all supply (also in the recycling process), as the minimization objective will assure that we do not use more than available anyway.

It is worth considering the objective function in this reversed formulation. What are we actually trying to achieve? It turns out that the objective is to empty the inventories the cheapest way. However, it is not correct that the solution will satisfy as much as possible of the demand. In Figure 3 the minimum cost of emptying all inventories is 2854.59, leaving unsatisfied demand of nearly 14.72 tons of print stock pulp. Unfortunately this solution is not satisfying as much as possible of total demand; a lower level of unsatisfied demand can be achieved with the same quantities of supply.

It should be noted that balancing the problem by adding a dummy supply node and dummy arcs (instead of using the quick fix of reversing the constraints) will not escape this dilemmaβ€”we will still not satisfy as much as possible of total demandβ€”if we insist on minimizing costs. This dilemma cannot be resolved unless we modify the objective function.

8. Do We Want to Satisfy as Much as Possible of the Demand?

If we want to satisfy demand to the fullest extent, then we have to replace the objective of minimizing costs. One way to satisfy as much as possible of the demand is to minimize total back orders.

We now have two sets of decision variables: the flows π‘‹π‘˜,𝑙 and the back orders; π‘Šπ‘—, representing the quantities ordered by customer 𝑗 but not delivered within the planning period. One possible solution to this problem requires a procedure in two stages.

8.1. First Stage

Objective Function. The lowest level of unsatisfied demand is achieved by minimizing total back orders. Often this is described as the highest possible service level. This can be computed as:

min𝑍=minπ‘—βˆˆπ·π‘Šπ‘—.(8.1) Minimize the total sum of back orders from all customers.

Constraints. As in the original formulation we must make sure that we do not use more of the supply than we have in stock (see (5.2)).

We still have to make sure that the amount of paper pulp processed in each recycling process corresponds to the amount of paper pulp refined (see (5.3)).

Finally we must ensure that the amount of various types of refined paper pulp, including any back orders, satisfies the demand: ξ“π‘–βˆˆπ‘‡π‘¦π‘–,𝑗𝑋𝑖,𝑗+π‘Šπ‘—β‰₯π‘π‘—βˆ€π‘—βˆˆπ·.(8.2) Total net amount flowing into a demand node, including back orders for that node, must at least satisfy the demand in that node. This requirement applies to all demand nodes (set D).

As before the nonnegative assumptions must hold: π‘‹π‘˜,𝑙β‰₯0 for all (π‘˜,𝑙)∈𝐴, and Wj β‰₯ 0 for all π‘—βˆˆπ·. The problem in stage 1 is almost identical to the original LP formulation, where (8.1) is replacing the objective function in (5.1); (5.2) and (5.3) are unchanged, and (5.4) is slightly modified to (8.2), where back orders now are included.

The optimal solution to this problem in stage 1, π™βˆ—, is the minimum amount of back orders. However we have so far not considered the costs of the flows in the network, therefore the actual flows is not necessarily carried out the cheapest possible way.

8.2. Second Stage

To make sure that we achieve the minimum amount of back orders the cheapest way, we have to resolve the problem. This time the objective again is to minimize costs, as in (5.1) for the original problem. But we have to add a new constraint, limiting the total back orders to the minimum value π™βˆ—:

ξ“π‘—βˆˆπ·π‘Šπ‘—β‰€π‘βˆ—.(8.3) Total sum of back orders (from all customers) cannot exceed the minimum sum of back orders.

The second stage will then use the objective function in (5.1) from the original problem, the constraints in (5.2), (5.3), and (8.2) from stage 1, and the new constraint in (8.3). We need only modify the model from stage 1 by replacing the objective function and add the new constraint in (8.3).

In Figure 4, the solution for stage 1, we learn that the minimum amount of back orders π‘βˆ— is 3.97 tons of pulp for the final products. This solution from stage 1 will then be used as an upper limit of back orders, when the costs of flows in the network are minimized in stage 2. The solution at stage 1 delivers 10.8 tons more than the quick fix solution in Figure 3, which was short of nearly 14.72 tons of print stock pulp (node 9). Even though the solution in Figure 4 picks packing paper pulp (node 8) as the sole β€œcustomer” for back order, this may be altered in stage 2.

In Figure 5, the solution of stage 2, we see that node 8 still is the only node with back orders. However the cost of the flows in Figure 4 of 3198.27 has been reduced to 3159.21 in Figure 5. This is still considerably larger than the cost of 2854.59 in Figure 3, where the service level is quite low (measured in tons of back orders). We see that maintaining a high service level has caused a cost increase of nearly 11%, compared to an increase of nearly 271% in back orders if service levels are neglected.

9. How About Maximizing Profit?

Most business people would prefer to maximize profit in replacement for minimizing costs. Let us for now assume that the demand of 60, 40, and 50 represents orders received, but binding contracts for deliveries have not yet been signed. If we believe that we cannot make any more sales, this will then be the upper limit. A cost minimization formulation would still have to treat these orders as lower limits. Let us introduce a market, and the selling price 𝑝𝑗 is 40, 25, and 30 for each ton of the finished products in node 7, 8, and 9 (paper pulp for newsprint, packaging paper, and print stock quality paper). Note that it is impossible to calculate the contribution margin for the end products, as we need to know how they are produced before we can calculate their costs. Luckily we do not need to know the contribution margin for each unit sold to solve a LP model.

Only slight modifications to the original LP formulation are needed. Just replace the objective in (5.1) with a maximization objective for profit, and reverse the inequality to ≀ in (5.4), as the received orders now become upper limits on sales.

Objective Function. We want to maximize profit, equal to the revenues from the sales less the cost of the flows in the network:

max𝑅=π‘—βˆˆπ·π‘π‘—ξ‚€ξ“π‘–βˆˆπ‘‡π‘¦π‘–,𝑗𝑋𝑖,π‘—ξ‚βˆ’ξ“(π‘˜,𝑙)βˆˆπ΄π‘π‘˜,π‘™π‘‹π‘˜,𝑙.(9.1) Maximize total result, equal to total revenues minus total costs.

Constraints. We must make sure that we do not use more waste paper than we actually have in stock (see (5.2)).

We also have to make sure that the amount of paper pulp processed in each recycling process corresponds to the amount of paper pulp refined (see (5.3)).

Finally we must ensure that the net amount of various types of refined paper pulp sold does not exceed the demand: ξ“π‘–βˆˆπ‘‡π‘¦π‘–,𝑗𝑋𝑖,π‘—β‰€π‘π‘—βˆ€π‘—βˆˆπ·(9.2) Total net amount flowing into a demand node cannot exceed total demand in that node. This requirement applies to all demand nodes (set D).

Of course the nonnegative assumptions must hold: π‘‹π‘˜,𝑙β‰₯0 for all (π‘˜,𝑙)∈𝐴. Observe that we do not need variables for back orders. If we do not have capacity to complete all orders, then the maximization objective will make sure that we deliver as much as is profitable, we do not need to use lower limits on demand to force deliveries to be made.

Even in the case that we have made obligations of minimum deliveries we could use the demand as an upper limit. If these upper limits are not binding, then either we are short of supply or the demand is unprofitable. In any case we should renegotiate the contracts. In the case we run out of capacity, we can suggest back orders, or in the case of unprofitable orders we may opt for canceling the contracts.

The introduction of markets in Figure 6 reveals that we are not short of supplyβ€”we are short of profitable customers. The optimal solution leaves out more than 33 tons of cardboard unused. Production of newsprint pulp and print stock pulp (nodes 7 and 9) equals maximum demand whereas the production of packing paper is less profitable; only 4.81 tons are produced compared to the maximum demand of 40 tons (node 8). As we have capacity to produce more (33 tons of cardboard unused), we must conclude that it is not profitable to produce more. In this case we should not negotiate for back orders; we should simply not accept more orders.

The maximum profit for this problem is 1727.06. If we were to use the solution from Figure 3 which minimized the costs, then we would generate a profit of 1603.96; compared to a profit of 1641.61 if we had completed the solution from Figure 5 which minimized back orders.

However a different price structure could easily reverse the profit ranking of the two minimizing objective models. If we swap prices for nodes 8 and 9, then we get the solution displayed in Figure 7.

At these prices all products are profitable, and the solution has made it clear that we are short of capacity, not able to satisfy all of the demand. This did not prevent a feasible solutionβ€”and the solution also tells us where we should place the back orders, namely, on node 9 (print stock pulp). This agrees with the quick fix solution in Figure 3, except that the quantities supplied are much larger. When maximizing profit, then we deliver 41.63 tons of print stock pulp (Figure 7); when minimizing costs, we deliver only 35.28 tons (Figure 3), even though both solutions utilizes all of our supply of raw materials (nodes 1–4), and they both satisfy demand completely for the other nodes. This should come to no surpriseβ€”if we are minimizing costs, then we deliver as little as possibleβ€”if we are maximizing profit, then we deliver as much as possible (assuming that the deliveries are profitable).

If we compare the profit we may earn when using the quantities from the cost minimization in Figure 3 and from the back order minimization in Figure 5, we get a profit of 1627.54 and 1571.78, respectively, compared to the maximum profit of 1668.08 in Figure 7.

10. Conclusion

Minimizing costs is a de facto standard in network models. Minimum costs are normally achieved by doing nothing. If there are constraints prohibiting such a solution, the minimization objective will lead us to do as little as possible. The examples demonstrate this clearly; when minimizing costs, then we deliver 6.35 tons less than when maximizing profit (compare Figure 3 and Figure 7). Obviously we do not make as much profit when minimizing costs as when we are maximizing profit. Only if all demand is satisfied at its upper limit, then we get the same solution.

The role of the objective function is critical in the model formulation of a problem, but its interpretation is most often relative to the constraints. The constraints, however, normally can be formulated and interpreted without a particular objective in mind. If a logical set of constraints have to be changed to make a particular objective function to work, then we may be in more trouble than we realize.

Assuming that we do not make unprofitable binding contracts for minimum deliveries, then demand limits should be the type of an upper limit. If orders received are profitable to make, a profit maximization formulation will make sure that we deliver as much as we can, and any unsatisfied demand should be converted to back orders. Binding lower limits of demand just points out that we have made unprofitable contracts, and they should be renegotiated. A cost-minimization formulation, however, requires that we change this set of logical constraints to avoid the zero solution of doing nothing; we are forced to reverse the upper limits for demand to lower limits. If the new set of constraints makes this problem infeasible, then all constraints in the new set must be reversed (as in Figure 3). How do we interpret the objective function to minimize costs in these cases? Minimizing the costs for doing what? Balancing the problem does not alter this situation.

In cost-minimization problems we can avoid reversing all constraints to make the problem feasible, by introducing back orders. This requires a solution procedure in two stages: in stage 1 we minimize back orders (Figure 4), and in stage 2 we minimize costs making sure that back orders do not exceed their minimum level (Figure 5). This way we avoid doing as little as possible, but we increase the service level at the expense of higher costs. Most likely however, we still are solving the wrong problemβ€”we normally would like to maximize profit (Figure 6).

We have also seen that balancing network models is not necessary to formulate and solve such problems, and neither does a profit maximization formulation require that we calculate unit profits for the sales products, which require an allocation of costs. In fact none if these tasks are generally possible until after the optimal solution has been found. We cannot generally tell if a problem is balanced or not beforehand, and we cannot tell which costs occur until we know how the products are made. The examples demonstrate that optimal production plans can be found without knowing unit profits or contribution margins.We do need prices though; we cannot make any profits without prices to calculate the revenues.

A final teaching note can be made regarding spreadsheets, used trough out this article. Spreadsheets is extremely flexible and versatile, and quite suitable for LP problems. The layout of the spreadsheet can mimic the algebraic formulation with data (see Tables 2–4), not requiring any extra thoughts for how to build the LP model in the spreadsheet. (Use one column for each of the variables, and one column for the RHS. Use one row for the values of the variables, one row for the objective, and one row for each of the constraints.) However, clever utilization of the flexibility offered by spreadsheets, brilliantly displayed in [3], can often pay off enormously. Further, spreadsheets have become a serious challenger to well established optimization software [4].

(8.1)Min Z = W7 + W8 + W9

(5.2) 𝑋 1 , 5 + 𝑋 1 , 6 ≀ 7 0 node 1 (Newspaper)Set S
𝑋 2 , 5 + 𝑋 2 , 6 ≀ 5 0 node 2 (Mixed paper)
𝑋 3 , 5 + 𝑋 3 , 6 ≀ 3 0 node 3 (White office paper)
𝑋 4 , 5 + 𝑋 4 , 6 ≀ 4 0 node 4 (Cardboard)

(5.3) 0 . 9 0 𝑋 1 , 5 + 0 . 8 0 𝑋 2 , 5 + 0 . 9 5 𝑋 3 , 5 + 0 . 7 5 𝑋 4 , 5 β‰₯ 𝑋 5 , 7 + 𝑋 5 , 8 + 𝑋 5 , 9 node 5 (Recycling process A)Set T
0 . 8 5 𝑋 1 , 6 + 0 . 8 5 𝑋 2 , 6 + 0 . 9 0 𝑋 3 , 6 + 0 . 8 5 𝑋 4 , 6 β‰₯ 𝑋 6 , 7 + 𝑋 6 , 8 + 𝑋 6 , 9 node 6 (Recycling process B)

(8.2) 0 . 9 5 𝑋 5 , 7 + 0 . 9 0 𝑋 6 , 7 + π‘Š 7 β‰₯ 6 0 node 7 (Pulp for newsprint)Set D
0 . 9 0 𝑋 5 , 8 + 0 . 9 5 𝑋 6 , 8 + π‘Š 8 β‰₯ 4 0 node 8 (Pulp for packaging paper)
0 . 9 0 𝑋 5 , 9 + 0 . 9 5 𝑋 6 , 9 + π‘Š 9 β‰₯ 5 0 node 9 (Pulp for print stock quality paper)

Max 𝑅 = 40[ 0 . 9 5 𝑋 5 , 7 + 0 . 9 0 𝑋 6 , 7 ] + 25[ 0 . 9 0 𝑋 5 , 8 + 0 . 9 5 𝑋 6 , 8 ] + 30[ 0 . 9 0 𝑋 5 , 9 + 0 . 9 5 𝑋 6 , 9 ]
(9.1)  βˆ’ [ 1 3 𝑋 1 , 5 + 1 2 𝑋 1 , 6 + 1 1 𝑋 2 , 5 + 1 3 𝑋 2 , 6 + 9 𝑋 3 , 5 + 1 0 𝑋 3 , 6 + 1 3 𝑋 4 , 5 + 1 4 𝑋 4 , 6 + 5 𝑋 5 , 7 + 6 𝑋 6 , 7 + 6 𝑋 5 , 8
    + 8 𝑋 6 , 8 + 8 𝑋 5 , 9 + 7 𝑋 6 , 9 ]

(5.2) 𝑋 1 , 5 + 𝑋 1 , 6 ≀ 7 0 node 1 (Newspaper)Set S
𝑋 2 , 5 + 𝑋 2 , 6 ≀ 5 0 node 2 (Mixed paper)
𝑋 3 , 5 + 𝑋 3 , 6 ≀ 3 0 node 3 (White office paper)
𝑋 4 , 5 + 𝑋 4 , 6 ≀ 4 0 node 4 (Cardboard)

(5.3) 0 . 9 0 𝑋 1 , 5 + 0 . 8 0 𝑋 2 , 5 + 0 . 9 5 𝑋 3 , 5 + 0 . 7 5 𝑋 4 , 5 β‰₯ 𝑋 5 , 7 + 𝑋 5 , 8 + 𝑋 5 , 9 node 5 (Recycling process A)Set T
0 . 8 5 𝑋 1 , 6 + 0 . 8 5 𝑋 2 , 6 + 0 . 9 0 𝑋 3 , 6 + 0 . 8 5 𝑋 4 , 6 β‰₯ 𝑋 6 , 7 + 𝑋 6 , 8 + 𝑋 6 , 9 node 6 (Recycling process B)

(9.2) 0 . 9 5 𝑋 5 , 7 + 0 . 9 0 𝑋 6 , 7 ≀ 6 0 node 7 (Pulp for newsprint)Set D
0 . 9 0 𝑋 5 , 8 + 0 . 9 5 𝑋 6 , 8 ≀ 4 0 node 8 (Pulp for packaging paper)
0 . 9 0 𝑋 5 , 9 + 0 . 9 5 𝑋 6 , 9 ≀ 5 0 node 9 (Pulp for print stock quality paper)


  1. W. L. Winston, Operations Research, Brooks/Cole, Belmont, Calif, USA, 4th edition, 2004. View at: Zentralblatt MATH
  2. B. Render, R. M. Stair Jr., and M. E. Hanna, Quantitative Analysis for Management, Pearson Education, Upper Saddle River, NJ, USA, 9th edition, 2006. View at: Zentralblatt MATH
  3. C. T. Ragsdale, Managerial Decision Modeling, Thomson South-Western, Mason, Ohio, USA, 5th edition, 2008.
  4. R. Rasmussen, β€œTSP in spreadsheets—a fast and flexible tool,” accepted for OMEGA. View at: Google Scholar

Copyright © 2010 Rasmus Rasmussen. This is an open access article distributed under the Creative Commons Attribution License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.

Related articles

No related content is available yet for this article.
 PDF Download Citation Citation
 Download other formatsMore
 Order printed copiesOrder

Related articles

No related content is available yet for this article.

Article of the Year Award: Outstanding research contributions of 2021, as selected by our Chief Editors. Read the winning articles.