Module 4

Extending the Ideas of Linear Programming

4.1

Introduction

4.2 4.2.1 4.2.2 4.2.3

Deriving Additional Information Dual Values Right-Hand Side Ranges Coefficient Ranges

4.3

Decision Problems with lP Associations

4.4

Integer Programming

4/13

4.5

Non-linear

4/13

4.6

Programming

4.7

Concluding Remarks

4/1

Programming under Uncertainty

from lP

4/2 4/2

4/4 4/6 4/9

4/15 4/16

Review Questions

4/17

Case Study 4.1

4/19

Case Study 4.2

4/19

Case Study 4.3

4/20

This is an advanced module and may be omitted on the first time through the course. At the start of the module the reader should already be familiar with the fundamentals of LP. By the end he or she should know how to extend these basic ideas, in terms both of generating further information and of applying them to problems that do not appear at first sight to be LP problems. Some underlying assumptions on LP can be relaxed if methods such as integer and non-linear programming are used. Prerequisite Module Module 3: Linear Programming

LP solves decision problems which require the optimisation of an objective such as profit, but where the actions that can be taken are restricted by constraints, such as the amount of finance available. If the objective and the constraints can be expressed mathematically in terms of decision variables, and if these

mathematical expressions'are'linear (they contain no logarithmic squared, cubed, etc., terms) then LP has the potential to solve this problem. This basic idea, as described in the previous module, is just the beginning. The technique can produce much more information than the bare solution to a problem; it can deal with a much wider set of problems than may be apparent at first sight; it can be adapted to solve problems for which the assumptions of LP, such as linearity, are not met; it can solve problems in which some or all of the variables can take only whole number values; it can also be applied to problems where there is uncertainty, in the sense that some decision variables may have a statistical distribution, for example when the variable describes weather conditions such as rainfall. This module describes all these different types of extension to the concept of LP.

When a computer algorithm such as Simplex solves an LP problem, it provides, besides the optimum values of the decision variables and the objective function, other information which can be used to perform sensitivity analysis. The information can be used to test how the optimal solution would be affected if the basic assumptions or input data of the problem were changed. Included in this information aredual values, sometimes called shadow prices. They refer to constraints, not variables. Each constraint has a dual value which is a measure of the increase in the objective function if one extra unit of the resource associated with the constraint were available, everything else being unchanged. The electronics example used in the previous module was: Maximise profit Subject to

4x +3y 5x + 2y

~

3x + 4y

~

x,y

80 (available machine-hours) 90 (available man-hours)

;::: a

The solution was: x = la, y = 15; objective function = 85 The dual values, which would be given as part of the computer output, are: Constraint 5x + 2y ~ 80 3x + 4y ~ 90

Dual value 0.5 (machine-hours) 0.5 (man-hours)

The interpretation of the dual values is that if the available machine-hours were 81 instead of 80, the objective function value could be increased by 0.5 to 85.5. So, were the decision maker offered an extra machine-hour at the same price as the previous 80 (the price already included in the objective function) he or she should accept because using it can increase profit by 0.5. If the decision maker has to pay an extra amount for the extra unit, 0.5 is the maximum that should be paid.

An extra man-hour (91 available instead of 90) would also increase the objective function value by 0.5 to 85.5. It is only by chance that the dual values are equal. Usually the dual values will differ from constraint to constraint. Dual values are measures of the true worth of resources to the decision maker and there is no reason why they should be the same as the price paid for the resource or its market value. The dual values are produced as part of the output of an algebraic solution of an LP problem and require no extra calculations once the LP has been solved. Dual values are sometimes equal to zero. In the example, both constraints were tight, meaning that the total availability of each resource was used up. (Check this by substituting the optimal x, y values in the constraints.) In some circumstances the total availability of a resource might not be fully used up. If not all the resource is used up the constraint is said to be slack and the associated dual value (of that constraint only) must be zero. Since units of that resource are available but not being employed, extra units of it have no value to the decision maker: when the slack is non-zero then the dual value is zero.

A dual value can be calculated graphically by reworking the solution with the right-hand side of the constraint increased by 1 (see Figure 4.1). The amount by which the objective function has increased in the new solution is the dual value. In the example, the dual value of machinery can be calculated by solving the problem as before, but with the machinery constraint being 5x + 2y ::; 81. In this case, the optimal point is the point of intersection of:

5x + 2y = 81 3x + 4y = 90

The optimal point is no longer A, but is N. The x and by simultaneous equations as before, giving: x

=

2 107

Y

= =

values can be calculated

11

=

2 11 4(10-) + 3(14-) 7 14

Dual value

y

1414

=

85.5

85.5 - 85 0.5

At first sight it may seem paradoxical that an extra machine-hour could be used at all. In the original solution all 80 machine-hours and all 90 man-hours were being used. Since both products X and Y require a combination of both resources, how could the extra machine-hour be used since there are no manhours with which to combine it? The answer is that the production mix changes. Fewer units of Yare made (y decreases from 15 to 14H). This frees up some units of both resources which can be combined with the extra machine-hour to produce more of product X (x increases from 10 to 10~). The new production mix is more profitable by 0.5, as measured by the dual value. The dual value works in both directions. A dual value of 0.5 also means that one unit less of the resource would lower the objective function by 0.5.

Dual values are marginal values and are not guaranteed to hold over large ranges. If the decision maker were offered ten extra machine-hours at an additional price of 0.3, he should accept at least one since 0.3 is less than the dual value of 0.5. But should he accept all ten? Most computer packages give the range for which the dual value holds. This is known as the right-hand side range. Again, a graph helps to show how a range is calculated. In Figure 4.2, as the number of machine-hours available is increased, the constraint is moved outwards. For the first few increased units the optimal point, the intersection of the two constraints, moves. The objective function increases just as it did as the optimal point moved from A to N when the dual value was calculated. Just as for the dual value calculation each unit increase in the resource results in the same 0.5 increase in the objective function. In other words the dual value is constant at 0.5.

However, when the constraint reaches the situation where it goes through point B (which is then the optimal point), no further changes are possible. If the constraint were moved further, the optimal point would no longer move since it cannot go below the x:axis where the y values are negative. Therefore the optimal point will stay.at B. Therefore no further increases in the resource lead to improvements in the objective function and consequently the dual value must be zero. Point B has y = 0 since it is on the x-axis. Since it is also on the manpower constraint: 3x + 4y = 90 3x + 0 = 90 x = 30

5x + 2y = 5 x 30 + 0 =

150

Therefore the machine-hours can be increased from 80 to 150 before the dual value drops to zero. The right-hand side range for increasing machine-hours is 70 (150-80). If extra machine-hours can be made available at a cost less than

the dual value of 0.5, up to 70 of them should be accepted. More than 70 and no further improvements in profit will result. In a similar way the right-hand side range for decreasing machine-hours as well as for manpower can be calculated. Computer packages produce right-hand side ranges automatically. In this case the output would be as follows: Constraint Machine-hours Manpower

Initial value 80 90

Down to 45 48

Up to 150 160

Profit can be increased by 0.5 (the dual value) for each extra machine-hour up to a total of 150 (including the original 80) and decreased by 0.5 for each machine-hour taken away until machine-hours are reduced to 45. Similarly the dual value for manpower applies to each added or subtracted hour up to a total of 160 or down to 48. Dual values can also be found for the non-negativity constraints, x ::::: 0, y :::::0, but, just to be confusing, they are known as the reduced costs of the variables. If the optimal value of a variable is not zero, then its non-negativity constraint is slack and the reduced cost (= dual value) is zero. If, on the other hand, the optimal value of a variable is zero then the constraint is tight and will have a non-zero reduced cost, which is the amount by which the objective will change if the variable is forced to be non-zero. For example, suppose the optimal value for the productivity level of an electrical component is zero, but the decision maker believes that some should be produced in order that a full product range can be offered to customers. The reduced cost of the component is the per unit cost of doing so. If the reduced cost were ÂŁ2 and 1000 components were to be made, then the loss compared to the optimal objective function would be ÂŁ2000. Coefficient Ranges A coefficient range shows by how much an objective function coefficient can change before the optimal values of the decision variables change. The graphical solution to the electronics example (Figure 4.3) helps to show what this means. The optimal point A was found by moving the objective function line outwards (north-easterly) and determining the last point of contact with the feasible region. Had the slope of the objective function been different the optimal point could have been B or C. Changing the coefficient values is the same as varying the slope of the line. If they change by small amounts the slope of the line will not be sufficiently different for the optimal point to move away from A. If they change by large amounts the slope may be sufficiently different to change the optimal point. The coefficient ranges are the amounts by which each coefficient of the objective can be varied before the optimal point does move away from A to B or C. Although small changes in a coefficient may not move the optimal point, the optimal objective function value will of course be different. For the electronics example the computer output would be as follows: Coefficient Product X Product Y

Initial value 4 3

Down to 2.25 1.60

Up to 7.50 5.33

Objective function

The profit per unit for product X can vary between 2.25 and 7.5 and the optimal production will still be 10 of X and 15 of y. Similarly the profit per unit of Y can be changed from 3 down to 1.6 and up to 5.33 without disturbing the optimal point. These ranges apply to the variation of one coefficient at a time, the other being kept at its original value.

The following

problem was form.ulated and solved in the previous module:

A manufacturer of soft drinks is preparing a production run on two drinks, A and B. There are sufficient ingredients available to make 4000 bottles of A and 8000 of B, but there are only 9000 bottles into which either may be put. It takes 30 minutes to prepare the ingredients to fill 200 bottles of A; it takes 10 minutes to prepare the ingredients to fill 200 bottles of B. There are 12 hours available for this operation. The profit is 8p/bottle for A and 6p/bottle for B. The manufacturer wishes to know how many bottles of each soft drink he should prepare. The fully formulated

LP problem is:

Max.

0.08x +

O.06y

Subject to

x::; y::;

4000

x+y::; 3x + Y ::; x, Y ?:

8000 9000 14400

o

A typical computer package used to solve this problem would give output as follows, which includes information about dual values, right-hand side ranges and coefficient ranges: Reduced cost

x

Y

2700

0

6300

0

Objective value = 594 Dual Constraint

value

Original

Down to

Up to

1

1300

0

4000

2700

Infinity

2

1700

0

8000

6300

Infinity

3

0

0.05

9000

6400

10133

4

0

0.01

14400

11000

17000

Objective Variable

x

(a)

RHS ranges

Slack

Original

coefficient-ranges Down to

Up to

0.08

0.06

0.18

0.06

0.027

0.08

The optimal production of B.

levels are to make 2700 bottles of drink A and 6300

(b)

At these production

(c)

The column headed 'slack' indicates the extent to which each constraint is tight or slack. For example (constraint 1), there are sufficient ingredients for soft drink A left over to make a further 1300 bottles.

levels the profit will be ÂŁ594.

(d)

The column headed 'Dual value' gives the dual value for each resource or constraint. As expected a slack constraint has a zero dual value. This is the case for constraints 1 and 2 referring to the availability of bottles. The third constraint is tight and has a dual value of 0.05. If an extra bottle were available, 5p could be added to total profit. The fourth constraint is also tight, with a dual value of 0.01. The meaning of this dual value is harder to interpret because it is not immediately clear what it is that is worth an extra 1p. An extra hour, an extra minute? It is necessary to go back to the constraint itself: 3x + y :::; 14400 . The dual value refers to the increase in the objective function if the right-hand side of the constraint were increased by 1 from 14400 to 14401. Originally this constraint was that the time available on the machine should be less than 12 hours. When the constraint was formulated, hours were turned into minutes so that the right-hand side was 12 x 60. To get rid of some fractions the constraint was multiplied through by 20 so that the right-hand side became 12 x 60 x 20 = 14400. The units are therefore one-twentieths of a minute, i.e. 3 seconds. The dual value means that if extra time were available on the machine each extra 3 seconds would be worth 1p. If the extra time could be gained by use of overtime then each

3 seconds would be worth 1p, each minute would be worth 20p, each hour would be worth 1200p, or ÂŁ12. It is worth using overtime if the cost is less than ÂŁ12/hour, over and above the cost of normal-time working included in the objective function. (e) The columns headed 'RHS ranges' show the boundaries within which the dual values apply. Constraints 1 and 2 (ingredients) are slack and therefore they have zero dual values. This would continue to be the case no matter how much extra of the ingredients were available. Hence the right-hand side can be increased up to 'infinity' without changing the dual values. Likewise the right-hand sides can be reduced by the amount of the slack and the dual values will remain zero. The dual value is 5p per bottle from 9000 bottles up to 10133 and from 9000 down to 6400. For machine time the dual value is 1p per 3 seconds (= ÂŁ12 per hour). This applies for an additional 2600 x 3 seconds (= 130 minutes) and for a reduction of 3400 x 3 seconds (= 170 minutes). (f)

The section headed 'Objective coefficient ranges' shows that provided the profit for soft drink A is in the range 6p to 18p per bottle (but assuming the profit for B is unchanged at 6p), the optimal decision will still be to make 2700 of A and 6300 of B. Similarly the optimal decision is unchanged while the unit profit of B is in the range 2.7p to 8p (assuming the profit for A stays at 8p).

(g) The reduced cost of both variables is 0, since their optimal values are non-zero.

The LP problems illustrated in these modules would be solved quickly by a computer package. In some practical applications the size of the LP is so great that the time and therefore expense involved in obtaining a solution is an important factor in deciding how to tackle the problem. For example, the large linear programmes used by oiLcompanies can have hundreds or thousands of constraints and take several-hours to solve even on large mainframe computers. How often to re-run the programme when new data become available is a big issue and it then becomes important to look for short-cut solution methods. Some LP problems have special characteristics which enable them to be solved by different algorithms which take significantly less computer time. Transportation problems are like this. For example, a cement company manufactures at three different locations: Alderton, Blackthorne and Chadley. The product is then taken to any of eight different warehouses where it is stored prior to being sold to builders merchants. The cost of transporting cement from factory to warehouse differs of course according to the locations involved. The company's problem is to decide how much of each factory's output to send to each of the warehouses so that the cost of distribution is minimised. The problem is represented diagrammatically in Figure 4.4. Each factory has a planned monthly output and each warehouse has an estimated demand for cement. For example, Alderton will produce 30 000 tormes next month and warehouse 1 is likely to require 6000 tonnes. These figures

Warehouse 1

Factory Alderton (A)

together with the cost per tonne of moving cement between the different locations are shown in Table 4.1. For example, the cost of transporting one tonne of cement from factory A to warehouse 4 is ÂŁ12. The total outputs are exactly equal to the total demands but this does not have to be the case. In a more complicated problem provision could be made for storage at factories and warehouses. Table 4.1

Costs, outputs and demands Warehouse

Output (0005 tonnes) Demand (0005 tonnes)

1

2

3

4

5

6

7

8

6

11

8

14

5

1

8

14

Cost (ÂŁ per tonne): Factory

A

30

11

43

9

12

25

32

18

56

B

18

24

22

76

28

5

43

48

16

C

28

54

14

40

33

38

29

33

8

(a) Decision variables. They must be the tonnages to be transported along each route. There are 24 routes (3 factories x 8 warehouses) and therefore 24 decision variables: xAl,

xA2, ... , xA8 are the tonnes taken from factory A to warehouses 1,

2, ... ,8 xBl, xB2, xCI, xC2,

, xB8 are the tonnes taken from factory B , xC8 are the tonnes taken from factory C

(b) Objective function. The objective is to minimise the total cost of distribution for all outputs and demands over all possible routes. The cost per tonne for each route is taken from the body of Table 4.1: Minirnise llxAl

+ 43xA2 + + 24xBl + + 54xCl +

+ 56xA8 (factory A) + 16x (factory B) + 8xC8 (factory C)

(c) Constraints. The first type of constraint says that all the output must go somewhere, in the absence of a provision for storage. For example, one constraint is that the 30000 tonnes output of factory A has to go to warehouses. For example:

The output could go to just one warehouse (in which case one variable would be equal to 30 and the rest 0) or it could be shared in some way between some or all of them. There are similar constraints for the other two warehouses: xBl + xB2 + xCI + xC2 +

+ xB8 = 18 (factory B) + xC8 = 28 (factory C)

The second type of constraint is that all demands must be met. For example, a total of 6000 tonnes must be delivered to warehouse 1 from the factories:

The whole 6000 tonnes could come from just one factory or come from different sources. There are similar constraints relating to the other warehouses:

xA2 + xB2 + xC2 xA8 + xB8 + xC8

= =

11 (warehouse 2) 14 (warehouse 8)

Apart from non-negativities the 11 above are the full list of constraints. The problem could be solved by LP to show how much cement should be sent from each factory to each warehouse. In fact the optimal decision is:

xA3=

8

}

xA4 = 14 xA7 = 8 xB1

=

6

xB5

=

5

xB8=

xC2

7

=

11

xC6 = 10 xC8

=

} } output from C goes to 2, 6, 8

7

This microcomputer solution took just a few seconds but in a larger problem solution time might be a much more significant consideration. Then, the fact that transportation problems have a special structure which enables them to be solved by a short-cut method and thereby reduce computer time brings about a worthwhile saving. The special sJructure is that the coefficients of all the variables in all the constraints have the coefficient '0' or '1'. When a problem has this characteristic a transportation method algorithm can be used. Usually it is easier to recognise the problem by its nature (transporting from 'factories' to 'warehouses') than from the mathematical formulation. However, not all transportation problems are concerned with taking products from their place of manufacture to the point of sale. For example, a regional police authority has at least one patrol car attached to each of its eighty police stations. Within the area there are three vehicle centres where the cars are serviced and repaired. To which centre should the cars of each station be sent? This is a transportation problem. The service centres are the 'factories' and their vehicle capacities the 'outputs'. The police stations are the 'warehouses' and the numbers of cars attached to them their 'demands'. The cost of servicing a car at one centre rather than another is related mainly to the distance between centre and station. Besides transportation problems other situations exhibit special characteristics which permit a short-cut solution method. Assignment problems are an example. In a metal-pressing shop there may be five different pieces of work to do and five different presses. The cost of doing each piece of work on each press is shown in Table 4.2. Table 4.2

Press shop assignment problem Piece of work (cost ÂŁ)

Press

1

2

3

4

5

A 8 C

2.1 3.0 2.5

3.5 4.2 3.1

1.8 3.0 2.3

2.0 2.7 2.3

4.2 3.9 3.3

D E

3.5 3.4

3.8 3.6

3.4 2.9

2.9 3.1

4.8 4.1

The problem is that of assigning each piece of work to a press. When formulated as a linear programme this problem has characteristics which allow an assignment algorithm to be used to solve it and thereby reduce computer time

as compared to LP-based methods. An assignment problem is like a transportation problem with the additional feature that the demand at each 'warehouse' is exactly 1 as is the supply at each 'factory'.

An integer is a whole number. For example, I, 2, 3, 4, 5, ... are integers, as are -I, -2, -3/ ... Decimals and fractions, on the other hand, are not. LP assumes that the decision variables are continuous, that is they can take on any values subject to the constraints, including decimals and fractions. Therefore LP cannot be applied to problems in which any of the variables must be restricted to integer values only. An example will show when this might occur. Suppose a shipping company is planning the tonnage it needs in the future. LP could be used to indicate the tonnage required on each route in order to maximise future profit subject to a number of constraints on, say, manpower, finance, demand levels, port capacities, etc. It would not matter if the answers were whole numbers or not. The tonnages are approximate indications of what is needed and an answer of 63.7 thousand tonnes would be acceptable. On the other hand the problem could have been formulated to decide the number of ships required, not the tonnage. Now it is necessary for the variables to be integers since it would be difficult to interpret an answer such as 2.5 ships. Integer programming would have to be used to solve this problem. Integer programming uses a different solution method from LP.The algorithm is more complicated and takes longer to solve by computer. Because of the greater difficulty and expense in applying integer programming, 'tricks' are used so that LP can be applied. For example, 2.5 ships could be interpreted as owning two ships while chartering one ship for six months of the year. Integer programming also has financial applications. For example, a company has a series of opportunities for capital investment which have different returns and cash flow profiles. Only a limited amount of money is, of course, available and also the company has certain cash-flow requirements through time. In which of the opportunities' should the company invest? The problem can be handled by LP. The decision variables are the amounts of money to invest in each opportunity; the objective is to maximise return; the constraints are the money available and the cash-flow requirements through time. Some of the opportunities can have variable amounts invested in them, such as, for example, the purchase of stocks and shares. Other opportunities, however, require all-ornothing investments, such as the purchase of a motor vehicle or the construction of a new plant. An answer such as to invest £20000 in new vehicles when the vehicles cost £15000 each would not make sense. The investment must be for a, £15000, £30000, etc. This situation also requires integer programming.

A further extension to basic LP is to non-linear programming. This term refers to formulations where the linearity requirement is relaxed. For example, the objective function may involve squared terms, allowing for a curved relationship

between profitability and output. Only a few types of non-linear problem can be solved, and those that can be solved generally require a large computer capacity. Quadratic programming is for problems whose objective functions are quadratic, i.e. squared terms are involved. For example, suppose the quantity of a product purchased depends, realistically, on its price. The demand function, probably estimated by applying regression analysis to past data or market research information, might be: Quantity purchased i.e. Q

Revenue

=

= =

10000 - 3 x Price 10000 - 3P

Price x Quantity

=P X Q = =

P(10 000 - 3P) 10 OOOP - 3p2

This is a quadratic equation since if involves P and p2. If such an expression appeared in an objective function the problem would no longer be one of LP. Solution methods that assume the objective function is linear (such as the graphical method used in the previous module) cannot be applied. It is not necessary, in a managerial context, to investigate the nature of the algorithm required since a computer package would always be used. However, for a manager who is likely to need to solve such problems it is important to check that the software bought has the capability to handle quadratic programming. Quadratic objective functions might occur in situations where unit costs are variable. For instance, economies of scale might result in unit costs which decrease according to a quadratic equation as the number produced increases. They might also occur in pricing where there are quantity discounts. Determining whether an economy of scale curve or a discount curve is quadratic and, if so, its exact equation, requires the use of estimation methods such as curvilinear regression. This is similar to the way in which linear regression might be used to calculate the demand equation used earlier. Quadratic programming deals with the special case where the objective function is quadratic but the constraints are still linear. Different programming methods have to be used when a problem is non-linear in some other way. Table 4.3 summarises other programming methods and the circumstances in which they are used. Other non-linear programming Programming method

Objective

Quadratic

Linear and squared terms

Geometric

methods Characteristics

function

Both non-linear.

Constraints

Terms are products

of decision variables, e.g. Max. 3xy + 4X2y3 Linear

Non-linear

but can be approximated

by linear expressions

The programming methods used so far assume that all the data are known with certainty: unit costs, sales demands, resource availabilities, etc., are exact. In other words the coefficients and constants in the problem formulation are fixed. Such a formulation, or model, is said to be deterministic. In practice, financial, marketing and other information is likely to have come from estimation and forecasting procedures and will therefore be to some degree uncertain. More probably the data will be exceedingly imprecise. Three ways of handling such uncertainties will be described. The first is by use of sensitivity analysis. This means changing the input data and re-solving the problem to test the effect of changed data assumptions on the optimal decision. For example, the right-hand side of a 'minimum sales' constraint might be a demand of 5000. Sensitivity analysis would re-solve the problem changing the 5000 each time. Carried out exhaustively this will show which data have a big influence on the results and which a negligible influence. Some computer packages are able to carry out parametric programming, which is a systematic form of sensitivity analysis. A coefficient is varied continuously over a range and the effect on the optimal solution displayed. For example, in a linear programme to decide the capital expenditure on each of three projects, one constraint might impose a limit of £2 million on total expenditure. It would be of the form: Investment in project 1 + Investment in project 2 + Investment in project 3 ::::2 000000

Invest in Project 1: £l.5m Project 2: £0 Project 3: £O.5m Parametric programming might vary the £2 million through the range £1 million to £3 million and produce the results in Table 4.4. Table 4.4

Parametric programming

Total investment

Investment in Project

Project

Project

limit (L)

1

2

3

1 to 1.8 1.8 to 2.6 2.6 to 3

L-0.9

0.9

o

L-O.5

o o

2.1

0.5 L-2.1

However, parametric programming and other forms of sensitivity analysis do not use any probability information that may be available. For example, market research might have shown demand in the form of a normal distribution, but sensitivity analysis would not use it. It is merely a question of trying different demand levels and seeing the effect. The second approach to uncertainty is one which explicitly deals with probability information. It is called stochastic programming. This is the name for the general class of programming problem which deals with uncertainty by transforming the formulation into one that can be handled by ordinary programming methods. In the above example, the investment in the projects, if they were the costs of building new plants, might not be known with certainty. Instead these decision variables might be in the form of normal distributions. One way to handle this would be to treat the variables as the means of the normal distributions and then find the best mix of investments on average. Converting an objective function to be an average value is a simple type of stochastic programming. The third approach to uncertainty is chance-constrained programming, which deals with the situation where some constraints cannot or do not have to be met all the time but only a certain percentage of the time. For example, in a problem to find the optimal size of a water reservoir, constraints will deal with the levels of rainfall. One might express the fact that the minimum rainfall in the area is likely to be 40 inches per annum. However, in some exceptional years the rainfall might be even lower. If there were a one in twenty chance that it would be lower the constraint would be written in the form: Rainfall :2 40 (with 95% probability)

Chance-constrained programming can deal with constraints in this form to provide an answer that has a high probability of being the best.

The extension of LP to methods such as integer and non-linear programming greatly increases the range of applications. Further extensions are made possible by the use of 'tricks', meaning methods to get round some of the restrictions on LP.For example, the decision variables are supposed to be greater than or equal to zero: negative numbers are not allowed. However by writing a variable x in two parts:

x can take on negative values although its two constituent parts, xl and x2, are always greater than or equal to zero. Whenever x should appear in the LP formulation it is substituted by xl - x2 and LP proceeds as normal but of course the output has to be interpreted carefully. Other variants on LP allow the decision maker to tackle slightly different types of problem. For example, goal programming is concerned with setting decision variables at levels which bring the decision maker as close as possible to a set of objectives. Goal programming is therefore a type of minimisation problem, minimising the distance between what is feasible and what is being aimed at.

It is an example of the general class of multicriteria methods which handle the problem of there being more than one objective. Other types of programming method have been mentioned to illustrate the ways in which LP can be extended and applied to a wider range of circumstances. Research and development work is continuing and the area is now very large and highly specialised. Beyond LP, however, only small problems of this type (in terms of numbers of decision variables and constraints) are solved in practice. The reason is that these other methods require much more computer power than LP. Even with present-day large computers the cost of obtaining solutions to large problems can be prohibitive. The decision maker has to be very sure the expenditure is going to be worthwhile. Perhaps a more fundamental problem with the more sophisticated types of programming is that they are harder for the layman to understand. This may not be a problem with technical applications but for general management applications it may be difficult for the output to be properly used as a decision aid if users feel intimidated by it. Deciding which is going to be the more effective requires a trade-off between an approximate but comprehensible answer and a complex but more accurate solution.

4.1 Is the following statement true or false? Every decision variable in a linear programme problem has a dual value associated with it. 4.2 Is the following statement true or false? The dual value of a resource is always greater than the price paid for the resource. Questions 4.3 to 4.6 refer to the following situation: A small engineering company produces two machine parts, L23 and L31. L23 needs six hours of lathe time and three hours on the polishing machine. L31 needs two hours on the lathe and five hours on the polisher. The company has three lathes and three polishers which are worked on a 40-hour week. L23 sells for ÂŁ140 each and L31for ÂŁ220. Variable costs are ÂŁ100 per unit for both products. Formulated as a profit-maximising linear programme where x and yare the quantities of L23 and L31 to be produced, the problem becomes: Max.

Subject to

40x + 120y 6x +

2y

:::;120

3x +

5y

:::;

120

x:::: 0, y:::: 0 The computer printout of the solution shows: Optimal objective function is 2880 Optimal decision variables: x = 0, y = 24

Constraint

Slack

72

Lathe

o

Polisher Coefficient ranges L23: 0 to 72 L31: 67 upwards

4.3 If an extra hour of polisher time were available what would be the new optimal value of the objective function? A

2880.

B

2890.

C

2904.

D

3000.

4.4 What is the dual value of lathe time?

A

O.

B

24.

C

40.

D

120.

4.5 A subcontractor hours available. A

offers the use of his polishers, making a total of 200 additional By how much could the profit be increased?

1728.

B

1800.

C

4320.

D

4800.

4.6 A re-calculation of the profitability of L23 and L31 by the Finance Department shows that the true profit per unit of L31 is ÂŁ100 instead of ÂŁ120. The objective function should therefore really be 40x + 100y. What is the new optimal value of the objective function? A

It is unchanged.

B

2400.

C

2640.

D

It is impossible to say without

4.7 Is the following

statement

completely

re-solving the LP problem.

true or false?

A transportation problem is a type of LP problem that make it easier to solve. 4.8 Which of the following correct?

statements

about an integer

with

special characteristics

programming

problem

is

A

The objective function

B

The right-hand

can only take whole number values.

C

All the decision variables can take only whole number values.

D

At least one of the decision variables can take only whole number values.

sides of the constraints

can only be whole

numbers.

4.9 The following statements non-linear problem:

which apply to a programming

I

The objective function

II

The right-hand

III

Some variables appear in the constraints in logarithmic

I only.

B

I and III only.

C

II and III only.

D

I, II and III.

4.10 Programming

make it a

includes squared decision variables.

side of the constraints are logarithms.

Which of the following A

problem

form.

is correct?

techniques other than LP tend not to be greatly used because:

I

They are time-consuming

II

Computers are not powerful

Which of the following A

I only.

B

II only.

C

Both I and II.

D

Neither I nor II.

and expensive to solve. enough to solve them.

is correct?

A furniture company's two major product lines are chairs and tables. They are bought in kit form from subcontractors and then assembled and finished in the company's factory. Production of a chair requires four hours of assembly time and two hours of finishing time. The corresponding times for a table are two hOloISand five hours. There are 80 hours of assembly time available per week and 120 hours of finishing time. The profit contribution (revenue minus variable costs) for a chair is £60 and for a table £80. 1 What production levels per week will maximise total profit contribution? Extra finishing time can be made available by using overtime, which will cost £8 per hour in addition to normal payment. Should overtime be used?

A farmer has to decide the correct amount of fertiliser to apply to his root vegetable fields. He has been advised by a soil analyst that each acre will require the following minimum amounts: 60kg nitrogen compounds, 24kg phosphorus compounds and 40kg potassium compounds. There are two major types of fertiliser available. The first is JDJ which comes in 40kg bags at £6 per bag and which comprises 20% nitrogen compounds, 5% phosphorus and 20% potassium. The second, PRP, comes in 60kg bags at £5 each and comprises a 10%-10%-5% mixture. Formulate the problem as a linear programme which minimises cost.

1 How many bags of each product should he use per acre? Being a cautious farmer he wishes to have a second opinion from another soil analyst. The second analyst suggests 9kg less phosphorus compounds are required per acre, so how much will the farmer save per acre? What is the dual value for phosphorus?

This case study is a continuation of Case Study 3.3 in the previous module. A timber company wants to make the best use of its wood resources in one of its forest regions which contains fir and spruce trees. During the next month 45000 board-feet of spruce are available and 80000 board-feet of fir. The company has mills to produce lumber or plywood. Producing 1000boardfeet of lumber requires 1200 board-feet of spruce and 2500 board-feet of fir. Producing 1000 square feet of plywood requires 2200 board-feet of spruce and 3500 board-feet of fir. Firm orders mean that at least 6000-board-feetof lumber and 12000 square feet of plywood must be produced during the next month. The profit contributions are ÂŁ1250 per 1000 board-feet of lumber and ÂŁ2250 per 1000 square feet of plywood. The production decision is taken on the basis of the following LP model: Max. Subject to

L P

= =

1250L + 2250P 1.2L + 2.2P 2.5L + 3.5P L P

::::;45 (spruce) ::::;80 (fir) ~ 6 (orders) ~ 12 (orders)

amount of lumber produced (in ooos board-feet) amount of plywood produced (in ooos square feet).

The computer output for this problem is of the form shown in Table 4.5. Table 4.5 Variable

Value

L P Objective value Constraint

=

14.23 12.69 46340

Slack

Dual price

RHS range

1

o

2

o

961.5 38.5

44.6 to 48.1 75.1 to 80.7

3

8.23 0.69

4 Variable L p

0 0 Objective

coefficient

1230 to 1610 1750 to 2290

ranges

Assuming the constraints are in the same order as in the formulation (e.g. constraint 1 refers to spruce): 1 How much lumber and how much plywood should be produced? 2 How much extra profit contribution could result if the amount of spruce that arrives at the mills is found to be 45500 board-feet? 3 How much more spruce and fir could be accepted at the mill (assuming there is sufficient processing capacity) before the extra profit contribution drops to zero? 4 What would be the optimal production mix if the profit contribution of plywood were ÂŁ2290?