Lec-12 Sensitivity Analysis Transportation Problem (Intro...)

Video Statistics and Information

Video
Captions Word Cloud
Reddit Comments
Captions
In today's lecture we continue our discussion on sensitivity analysis. In the last lecture we had seen the effect of changes in the objective function value for a non basic variable as well as for a basic variable. This is the example problem that we had discussed in the last lecture. This is the optimum simplex table. Earlier we first looked at changes in objective function coefficient of a non basic variable. We considered variable X2 and worked out. Then we looked at change in objective function coefficient of a basic variable. We made a change in X1 and we worked out the effects of the change. Today the first thing we would do is to see what happens to the solution if the right hand side values changes. One of the right hand side values changes or both can change. The right hand side vector is given by b = 9, 12. We now assume that this 9 is going to change to some value and therefore we start with b1 here and 12. If this 9 becomes b1 then the effect of this change will only be seen in the right hand side values. These right hand side values will change. We now know that right hand side value is = B inverse b and we have already seen that corresponding to the basis X3, X1. We can read B inverse directly from the simplex table. You could read B inverse from 2/5, - 1/5, - 1/5 and 3/5 into b 1, 12. So the right hand side values will become (2/5b1 - 12)/5 or 2b1 - 12/5, 36 - b1/5. If b1 is such that these are greater than or equal to 0 then we have the primary feasible as well as dual feasible and the present set of basic variables will be optimal with the corresponding value here. For example if we substitute b1 = 9 which is in the original problem so 18 - 12/5 is = 6/5, 36 - 9 is = 27, 27/5 is what we have here. This would mean that (2b1 - 12)/5 greater than or equal to 0 gives 2b1 - 12 greater than or equal to 0; b1 - 6 greater than or equal to 0; b1 greater than or equal to 6. 36 - 5, (36 - b1)/5 greater than or equal to 0 would give b1 less than or equal to 36. As long as b1 is within the range 6 to 36, 6 less than or equal to b1 less than or equal to 36, the present set of basic variables will remain optimal with values to (2b1 - 12)/5, (36 - b1)/5. We need to substitute the values of b1 in this to get the right hand side. Now the b1 violates outside of this range. Then one of these will become negative. For example when b1 is 40 then right hand side will become 80 - 12/5 which is = 68/5 and - 4/5 Now if b1 is = 40, then these will change and this will change to 68/5 and - 4/5.Now the value of the objective function will also change. We do not write the value here because right now we have a negative here which means we have an infeasible solution. Now this solution is infeasible. The primal is infeasible but the dual is feasible therefore we can perform a dual simplex iteration till we get to the optimum. We leave out this variable, we compute theta. Therefore - 18/5 divided by 7/5, we do not evaluate theta here because there is a strictly positive value. Pivot element should have a negative. - 6/5 divided by - 1/5 is 6. Here again, we do not evaluate because of the positive value. There is only one candidate to enter. So variable X4 enters and replaces variable X1. Now that is shown here in this table. Now you realize that variable X4 has entered the basis and variable X1 leaves the basis and we perform one dual simplex iteration. At the end of iteration we have a solution X3 = 12; X4 = 4; Z = 48. The optimum solution after this change is X3 = 12; X4 = 4; Z = 48. It happens that within one iteration we are able to get the optimal solutions for this. Wherever there is a change in the right hand side values, the effect of the change is seen in the right hand side value in the last iteration the simplex algorithm. We need to evaluate that by doing this. Right hand side becomes B inverse b and then for the given value if one of them becomes negative, as we saw here, when b1 = 40, this became negative and then we continue with dual simplex iterations till we reach the optimum. Now the next thing is that we will see is what will happen if there is a change in the change in the constraint coefficient of a non basic variable.If you do that let us go back and write the original simplex table with the values here. Let us consider a non basic variable X2 here and let us look at a change in the coefficient of this variable in any one of the constraints which means we are looking at a change either in this 2 or in this 3. In order to do that let us consider a change here. Let us assume that this number 3 becomes something else. So what happens here is P2 from the original problem now becomes 2, a. Now when this 3 changes to a value a, now what will happen to the optimum table? When this changes, this becomes 2a instead of 2, 3 this will also change because this is P bar 2 = B inverse P2. B inverse can be read from the table. We get 2/5, - 1/5, - 1/5, 3/5 into 2a which will give us 4 - a/5, 2/5 into 4/5 - a/5 So 4, - a/5, - 2/5, + 3/5 a, so 3a - 2/5. This will become (4 - a)/5, (3a - 2)/5 and because of this change this C2 - Z2 will also change. So we evaluate C2 - Z2 = C2 - YP2; C2 is 3 - y. y can be read again from the simplex table. y represents the value optimum solution to the dual 6/5, 7/5 under the primal slack variables so 6/5, 7/5. P2 has changed to 2a. This becomes 3 - 12/5 - 7a/5 which is 3/5 - 7a/5. Now if a is such that 3/5 - 7a/5 is negative then this will become negative and the present solution will remain optimum. Such a change will not have any impact on the optimal solution. For example for the present value of a = 3 we would get 3 - 21/5 which is - 18/5 therefore it remains as negative. If a is such that this term becomes positive then this will become positive and a variable X2 will enter so if we consider for example a = 0, then C2 - Z2 will be 3/5. P bar 2 will be 4/5 and a is 0 - 2/5. So when a, is = 0 which means when this 3 becomes 0 then we will have 4/5 - 2/5 and we will have + 3/5. Because of this + 3/5, variable X2 will enter the basis we need to find out theta for the leaving variable. 6/5 divided by 4/5 is 3/2, 27/5 divided by negative therefore we do not divide. This becomes dash. This variable leaves the basis. Variable X2 enters and variable X3 leaves the basis. We need to do simplex iterations till we get to the optimal and that is shown here. Variable enters with 3/5; Cj - Zj = 3/5 and variable X3 leaves with theta 3/2 which is shown by the arrows and in the next iteration we have X2 and X1 as basic variables with the solution X2 = 3/2; X1 = 6 and Z = 57/2. The optimum solution is X1 = 6; X2 = 3/2 with Z = 57/2. We get the optimum once again in one iteration for this example. In summary if we have a change in the coefficient of a non basic variable in any of the constraint, then that will be reflected by change in Cj - Zj for that non basic variable and change in the P bar in the corresponding column in the optimum simplex table. If the Cj - Zj becomes positive because of the change, the variable enters the basis and we perform or continue to do simplex iterations till we get to the optimum. Now let us look at one more thing here. Let us look at something called adding a new product. Let us look at adding a new product. Let us go back to the optimum simplex table that we had. Now the original problem has three variables X1, X2 and X3. Let us assume that these represent some decisions with respect to producing three products 1, 2 and 3 respectively. We have set up the problem and we have found the optimum solution using the simplex algorithm. Let us assume that we want to introduce a new product into this and let us call that new product by a variable X6 because X4 and X5 will be the slack variables corresponding to these two. We now introduce a new variable X6 which represents a new product. A new product is characterized by its contribution in the objective functions as well as the values in these two constraints. Let us assume that C6 which is the objective function coefficient corresponding to the new product X6 is given by 6 and the constraint coefficients in both the constraints 1 and 2 which is given as P6 is given by previous table 1 and 3. The problem becomes 4X1 + 3X2 + 5X3 + 6X6 subject to X1 + 2X2 + 3X3 + X6 less than or equal to 9; 2X1 + 3X2 + X3 + 3X6 less than or equal to 12. Now should we solve the problem all over again because of the introduction of a new variable or can we make these changes? How these reflect itself in the optimum simplex table and on addition of a new product can we proceed from that? We can proceed from the simplex table. To do that, let us just create another column for X6. X6 the right hand side values will remain as it is 6/5 and 27/5. We need to find out P bar 6 and C6 - Z6. In order to do this P bar 6 first, we have to find out C6 - Z6 to see whether there is an effect. C6 - Z6 is = C6 - YP6. 6 - C6 is 6, y is the optimum solutions to the dual which can be seen under the primal slack variables so 6/5, 7/5 with the minus sign of course. P6 is the requirement of the resources 1 and 3 so C6 - Z6 is now 6 - 6/5 - 21/5. This is 6 - 27/5 which is 3/5. Now if we can make a product which is 4, reflected by a variable X6 which can give us a unit contribution of 6 and requires 1 and 3 respectively of these resources. Now under the present optimal, since C6 - Z6 is positive then this variable X6 will enter the basis and it is profitable to make the new product. So this becomes 3/5. Now this will enter. In order to find the leaving variable, we need to know these two values which is the corresponding column in the optimum simplex table which is here. P bar 6 is given as B inverse P6. We have already seen that any P bar j is B inverse Pj. P bar 6 is B inverse P6. B inverse is seen under the identity corresponding to the slake variables in this case. Variables X4 and X5 had identity matrix. B inverse is 2/5 - 1/5 - 1/5, 3/5 into P6 is 1 and 3. You get 2/5 - 3/5 is - 1/5 - 1/5 + 9/5 is 8/5. So you get - 1/5, 8/5. This has 6. Now variable X6 enters the basis. To find out the leaving variable we need to compute theta 6/5 - 1/5. We do not compute theta because we have a negative number here 27/5 divided by 8/5 is 27/8. So this variable X1 leaves and variable X6 enters. That is show in the table here. So we started with X3, X1. When we introduced a new product X6 with objective function coefficient 6, you can see that above X6 and Cj - Zj is 3/5. For the given values contribution 6, requirements 1 and 3, we compute Cj - Zj to 3/5 and variable X6 enters. We compute P bar j = B inverse Pj - 1/5, 8/5.The same value is here that you see in that table. Variable X6 enters the basis and variable X1 leaves the basis. The next simplex table has X3 and X6 with values 15/8 and 27/8 after one simplex iteration objective function is two 37/8. The optimum solution is X3 = 15/8; X6 = 27/8; Z = 2 37/8. So in this case adding a new product is profitable and we add a new product. If we turned out that C6 - Z6 were negative then we will not enter variable X6 and say that it is not advisable to produce the new product and the present solution would remain optimum. The next thing that we will see is adding a new constraint. Let us write the simplex table without the new product. Let us look at this problem again and the optimum solution. We have solved this problem for these two constraints. At the end, after getting the optimal solution, we realize that the other constraint has to be included. Let us assume that inadvertently, we have left out the constraint or suddenly we realize that there is another resource that may be needed which has not been taken into account which results in a new constraint coming in. If such a new constraint is introduced once again we need to know whether we should solve the problem optimally. Is it possible to go back to the optimum table, make the changes with respect to the new constraint in this table and can we proceed from here towards the optimum? Let us consider a new constraint. Let us have new constraint which is this. We get X1 + X2 + X3 less than or equal to 8. Let us look at a constraint X1 + X2 + X3 less than or equal to 8 as a third constraint. If we look at this constraint let us go back and see whether the optimal solution here satisfies this constraint. X1 = 27/5; X3 = 6/5; X2 is non basic at 0. X1 + X2 + X3 left hand side is 33/5 which is less than 8. This constraint is satisfied. When this constraint is satisfied you could go back and say that this constraint will not have any impact on the optimal solution. The optimal solution will remain as X3 = 6/5; X1 = 27/5; Z = 138/5. When a new constraint is introduced we first think we need to verify whether the present optimal solution satisfies the constraint or not. If it satisfies the constraint then in spite of the inclusion of the new constraint, the original solution will remain optimal. If on the other hand the new constraint had been X1 + X2 + X3 less than or equal to 6, then we realize that X1 + X2 + X3 the left hand side is 33/5 which is more than 6. The present optimal solution violates this constraint and because it violates this constraint, this constraint will have an impact in the solution and we need to do that. We write the new constraint as X1 + X2 + X3 less than or equal to 6. X1 and X3 are basic variables. Write the basic variables in terms of the non basic variables so X1 + 1/5X2 + X3 + 2/0X1 + 1/5X2 + 1X3 + 2/5X4 - 1/5X5 = 6/5 1X1 + 7/5X2 - 1/5X4 + 3/5X5 = 27/5 X1 is written from this equation as 27/5 - 7/5X2 + 1/5X4 - 3/5X5 + X2 X3 is written from this equation as + 6/5 - 1/5X2 - 2/5X4 + 1/5X5 less than or equal to 6 Let us go back and look at all the right hand side values 27/5 + 6/5 is = 33/5. We take it to the other side, we get less than or equal to - 3/5. Let us look at all the X2 values - 7/5 + 1 is - 2/5 - 2/5 - 1/5 is - 3/5 X2, Let us look at X4 + 1/5 - 2/5 is - 1/5 X4 and let us look at X5 - 3/5 + 1/5 is - 2/5 X5 less than or equal to - 3/5 or the less than or equal to constraint. So we add a slack variable to convert it to an equation. We get - 3/5 X2 - 1/5 X4 - 2/5 X5 + X6 which is now the slack variable. To convert this to an equation = - 3/5 so this is how the new constraint gets reflected in this table. We include this into this table; we add another row here with variable X6 which is slack variable that comes in. We add another column here for variable X6. The right hand side values will remain the same, 6/5, 27/5, 138/5. The Cj - Zj values will remain the same, 0 - 18/5, 0, - 6/5, - 7/5. We write this constraint. This is 0X1 - 3/5X2; 0X3 - 1/5X4 - 2/5X5 + X6 = - 3/5. These two will not have X6. Therefore X6 will have 0 0 1, identity column. X6 will be introduced here. It is a slack variable with an objective function coefficient of 0 and Cj - Zj of C. If the new constraint is binding as it is in this case, if the new constraint is violated by the existing optimal solution then this will get reflected as another constraint in the simplex table. The important thing is that when we write this and when we introduce a slack variable which becomes a basic variable with the identity column then we will have a negative value here. This negative value indicates that the present constraint is binding or the newly introduced constraint is violated by the existing optimal solution. For example if we had X1 + X2 + X3 less than or equal to 8 with which we started which was satisfied by the present optimal solution 6/5, 27/5. So we said when a new constraint is introduced the first thing to do is to check whether the new constraint is satisfied. Only if it is violated we go back, write it in terms of the existing basic variables and write this equation. In case we had not checked whether it is violated or not, for example if we had simply taken this eight here and carried out this exercise then you would realize that we would have a positive value here which means that the present solution is optimal. When the constraint is satisfied by the present optimal solution, we leave it as it is or even if we take the trouble of converting it and seeing its effect in this simplex table we would get a feasible solution here indicating optimum. Only when the newly added constraint is violated by the present optimal solution we will get a negative here and that is when we do this exercise. (To get a negative here) .The negative here is a check for us that this constraint is not satisfied by the present optimal solution. With this we perform a dual simplex iteration because the feasibilities conditions are affected, the optimality condition remains intact. So we perform a dual simplex iteration so variable X6 leaves the basis and we need to find out an entering variable which is theta. Now to do that we go back and check - 18/5 divided by - 3/5 is = 6, - 6/5/ - 1/5 is = 6, - 7/5 divided by - 2/5 is 7/2. So for all the 3 negative Cj - Zj values, we have negatives here. So compute the theta and then we enter the variable which has minimum theta. Variable X5 enters the basis, X6 leaves the basis and we do a dual simplex iteration that is shown here. The effect of the constraint, the first thing we did is verified that this constraint is violated by the present optimal solution. We did all these calculations or computations and then wrote the new constraint. That is reflected here as an additional third constraint in the optimum table. It is also shown here. These results in an introduction of a new row corresponding to the new constraint as well as a new column corresponding to a slack variable associated with the new constraint. We have one more row and one more column. The slack variable becomes a basic variable here and the corresponding right hand side is negative which indicates that the newly added constraint is binding. This is violated by the present optimal solution. We go back and then perform a dual simplex iteration by leaving out variable X6 and entering variable X5 and within one iteration we get the optimum solution which is X3 = 3/2; X1 = 9/2 and X5 = 3/2 with Z = 51/2 which is shown here. There is one more aspect of sensitivity analysis which we have to look at. What happens to change in constraint coefficient of a basic variable? When we do that we go back and write the optimum table as it is. The last thing that we need to look at in sensitivity analysis is what happens if a constraint coefficient of a basic variable changes. For example we have variables X1 and X3. X1 has coefficients 1, 2 in the two constraints. X3 has coefficients 3, 1 and these two constraints. Earlier we looked at change in constraint coefficient of a non basic variable. We took variable X2 and we said with this changes to a and so on. Now we are looking at what will happen to the problem. If for example this number changes to or this or this or this. When any of these changes take place that is if a basic variable's coefficient in a constraint changes, then the answer is do not perform sensitivity analysis. Solve the problem all over again. Only in this case when there is a change in the coefficient corresponding to a basic variable in any constraint, the answer is do not perform sensitivity analysis. Do not try to see the change in this. But solve the problem all over again. Why? In all the things that we have seen so far, there are many aspects of sensitivity analysis. Let us write all those here. The various aspects that we have seen in sensitivity analysis is, change in the objective function coefficient of non basic variable, two changes in objective function coefficient of basic variables, Change in right hand side values, constraint coefficient of non basic variable, adding a new product and adding a new constraint. In all these six, we reflected the changes in the optimum table and continue either with simplex iterations or dual simplex iterations. The reason we could do this was the B inverse was intact. Any of this change did not change the basis corresponding to X3, X1. Any one of this six changes would still keep the basis corresponding to X3, X1 as 3 1 1 2. The basis remained intact. These changes did not affect the basis. Because of that these changes were reflected either as changes in the right hand side values or effectively changes in the Cj - Zj. These changes could be written in terms of B inverse. Right hand side values where B inverse B. Cj - Zj was Cj - CB B inverse Bj B inverse did not change and B inverse could be read from the optimum simplex. When we make a change here, the basis changes and because the basis B changes, the B inverse also changes. This means every element in this would change and there is likelihood that we may get a negative as well as a positive here. We may have a situation where both the feasibility and the optimality condition could be violated. Whereas will all these changes if at all there is a violation it would be either the feasibility violation or the optimality violation. Because of the possibility that due to change in basis, B inverse changes and the entire matrix changes which could give us for example a situation where we have infeasibility here and non optimality here. We do not want to start with a matrix which is both infeasible as well as non optimal. It is customary that we do not perform sensitivity analysis if we have constraint coefficient of a basic variable changing. Let us go back and summarize the various aspects of sensitivity that we have seen. We have seen six aspects of it. So if there is change in the objective function coefficient of a non basic variable that gets reflected in Cj - Zj value of that variable and only thing that could happen is that variable could enter the basis. We looked at simplex iterations till we reach the optimum. Objective function coefficient of a basic variable would be reflected in Cj - Zj of all non basic variables and then we could do a simplex iteration to solve. Changes in right hand side would mean changes in the right hand side again in the optimal solution. It could get a negative right hand side so we use dual simplex iteration to solve. Constraint coefficient of a non basic variable would mean Cj - Zj of that variable and if that variable enters, we looked at a simplex iteration. Adding a new product would mean Cj - Zj of that product which is presently non basic. We could use simplex to proceed. Adding a constraint would mean constraint violated. So right hand side is negative and we could use dual simplex. That is summarized in this table. We have this table summarizing the various changes that could take place that could be modeled in using sensitivity analysis. These are the six that we have seen and these are the corresponding methodologies which could take you to simplex or dual simplex respectively. Now all these six changes where possible because we said the B inverse did not change the basis. B inverse did not change. B inverse could be read from the optimum simplex table. We know that for a maximization problem when the optimum simplex table is known then we could read the B inverse from where we had the identity matrix in the first iteration. For example if we had started this problem from the beginning, we would have seen variables X4 and X5 would be the slack variables and they would be the initial basic variables. Under X4 and X5 you could see B inverse. If we had a minimization problem with all greater than or equal to then we need to know where in the simplex we could see the B inverse. If we had a minimization problem then our simplex iterations would look like this. Example, if we have a minimization problem with three decision variables then we would have had X1, X2, X3, X4, X5, a1 and a2 and right hand side we would (assuming we would have added greater than or equal to constraint) have added to artificial variables. We would have started the simplex iteration with the a1, a2 with the coefficients here with a, - 1 0 0 - 1 under slack and a 1 0 0 1 here with the right hand side. Under the artificial variables in the optimum iteration you would see B inverse if we did or used a big M method to solve. If assuming that we either have problems with all less than or equal to constraints or if we had any other combination, then we would be using big M method to solve. Then wherever identity we had in the original table then under that table you would see for example, this is the last table then your B inverse will be here. Because this had a - i, you would have a - B inverse under the slack variable. This is something that we need to know if you want to do sensitivity analysis using the matrix method that we have seen. B inverse, the location or where we find B inverse in the simplex table is something that we need to know. If we have an all less than equal to constraint problem then the slack variables would become the starting basic variables. Under the slack we have here under X4 and X5. If we had any other combination of constraints, either mixed or with greater than or equal to, then we would be adding suitable artificial variables and using the big M method. Wherever we had had, the identity matrix we would see the B inverse under that. If we had only greater than or equal to then both the artificial variables would qualify to be the basic variables in which case the artificial variable portion will have the identity matrix. The slack variable portion will have - i. Under the artificial variable you see B inverse. Under the slack you will see - B inverse. In summary we use sensitivity analysis to try and evaluate changes in the problem. We need not solve the problem all over again. If there are changes in the objective function coefficients both basic variables and non basic variable, if there are changes in the right hand side, if there is a change in the constraint coefficient of a non basic variable, if we add a new product which means we add a new variable into the problem and if we add a new constraint and if the constraint is binding in all these situations, the six situations that we have seen. We need not solve the problem all over again. We could reflect the changes that have taken place in the problem into the optimum simplex table. Using the matrix equations proceed from the optimum simplex table either by using a simplex iteration or a dual simplex iteration depending on where the changes are. The only situation where we need to do workout the problem all over again, is when there is a change in the constraint coefficient of a basic variable. For our example since X3 and X1 are basic variables, if there is any change in the constraint coefficient, either here or here or here or here then we need to solve the problem all over again. Now this brings us to the end of what is the linear programming portion of the course. Let us spend couple of minutes for a quick recap to look at the number of things that we had learned in the linear programming portion of this course. The first thing we did was we learnt the formulation. In the formulation part of the course, we learnt how to write or convert a real life situation into a mathematical model and then we defined the linear programming problem. We defined basic terminologies such are decision variables, objective functions, constraints and non negativity. We said a problem is called linear programming problem if it has a linear objective function subject to linear constraints and non negativity restriction. We also classified or found out that the we could have two types of objective functions maximization and minimization, three types of constraints less than or equal to greater than or equal to and equations and three types of variables greater than or equal to less than or equal to and unrestricted. Then we looked at solving the linear programming problem. Under solution we saw three aspects the graphical method which is applicable to a 2/2 problem or applicable to any two variable problem irrespective of the number of constraints. We saw the algebraic method and then we saw the simplex method. We saw the graphical method and we found it suitable if there are two variables. We looked at the algebraic method which evaluates all basic feasible solutions and then we looked at simplex which does not evaluate all basic solutions and evaluates fewer than the many basic feasible solutions. It then improves as we proceed and then we continued our discussion on the simplex by looking at initialization, iteration and termination aspects of the simplex algorithm and then we also learnt how to standardize or how to initialize into a simplex table if you have mixed type of constraints and mixed types of variables. Under iteration, we learn degeneracy and under termination we looked at alternate optimum, unboundedness and infeasibility and bit of cycling of course. So we looked at the three aspects alternate optimum unboundedness and infeasibility. Later we looked at duality and showed that every linear programming problem has another associated problem called the dual of the linear programming problem and we also said that the given problem is called the primal and the other problem that we write is called the dual. Then we also saw how to write the dual for different primals given for example minimization, mixed type of constraints and different types of variables. Then we looked at duality theorems. We looked at the weak duality theorem, optimality criterion theorem and the main duality theorem. We also had an economic interpretation of the duality. We said what the dual variable means physically, mathematically, algebraically etc and we also saw the dual simplex method and dual simplex method that can be used if we have all greater than or equal to constraints and then we also for example in duality we looked at the relationship where the primal and the dual will have optimal solutions. If they have optimal solutions, the optimal solutions will have the same value of the objective function and then we also said that if primal and dual have feasible solutions then both have optimal solutions with the same value of the objective function etc. That also brings us to the relationship between unboundedness and infeasibility as far as these problems are concerned. For example if the primal maximization problem is unbounded then the dual is infeasible and if the primal is infeasible then the dual is unbounded or infeasible. We did not see these results explicitly earlier but these also follow as a result of our discussion on duality. From the duality theorems, one can understand that it is the primal to which the maximization problem is unbounded. The dual is infeasible and the primal is infeasible, dual is either unbounded or infeasible. Under duality we also looked at the dual simplex algorithm that helps us solve problems with all greater than or equal to constraints, algorithm which assumes or which can be used if the optimality condition is satisfied and the feasibility condition is violated. Then we also learnt the complementary slackness conditions and we said that the simplex algorithm not only solves the primal but also solves the dual and can give the optimal solution to both primal and dual. Then we applied the complementary slackness to all intermediate iterations of this simplex and showed that every non optimal intermediate iteration of this simplex corresponds to a situation where we corresponding dual is infeasible. We also showed that this Cj - Zj which is the extent of non optimality or the extent, to which we can enter a variable, represents extent to which a corresponding dual is infeasible and so on. From duality we move to sensitivity analysis and in sensitivity analysis we saw what we would do if there are changes in the problem and we modeled six possible changes in the objective function coefficient for the basic variables as well as the non basic variables, Changes in the right hand side, changes in the constraint, coefficient of a non basic variable, adding a new product and adding and new constraint. We have seen all these aspects under linear programming. There are two very interesting problems which are linear programming problems but they have special algorithms to solve them. Now these two are called the transportation problem and the assignment problem. We look at these two. Next we have something called the transportation problem and we have something called the assignment problem. We will be looking at both these problems in detail. Both of them are interesting linear programming problems. Both of them can be formulated or modeled as linear programming problems. But they are not solved using the simplex algorithm directly. Special algorithms are developed to solve the problems, the transportation as well as the assignment. Now in the next few lectures we will be going through these things in detail. However let us start the transportation problem and try to formulate the problem today. What is the transportation problem? The transportation problem is as follows. Let us assume that there are a certain number of supply points and certain number of demand points. For example let us assume that there are three supply points which we write here and there are four demand points. Now we are interested in supplying a single product that is available in different quantities in each of these supply points and to each of these demand points. In the transportation problem we supply a single product or a single item is transported from the supply points to the demand point. We assume that a certain number is available in each of the supply point. So we assume that a1, a2 and a3 are the supplies available in points, 1 2 and 3 respectively or in general ai is the quantity that is available in supply point i. In our example i = 1 to 3. We also know we call these requirements as b1, b2, b3, and b4 or in general bj as the requirement in the demand point j and it also takes some money to transport from the supply point to the demand point. We right now assumed that it is possible to supply from every supply point to every demand point. For example we can supply here, supply here, and supply here. Similarly one could supply to all the four demand points. The cost of supplying one quantity, one item from i to j is given by Cij. In this case this is C1 2 or C1 1, this is C1 2. For example this is C3 1 this is C3 4 respectively. Cost of unit transportation from i to j is given by Cij, so the problem is this, given a certain supply points, m number of supply points ai i = 1 to m, given a certain number of demand points. n demand points bj = 1 to m. Where ai is the supply available at points i, bj is the requirement of point j. Unit transportation cost is Cij from point i to point j. How do we transport from this? The formulation would be like this, Xij is the quantity transported from i to j now as far as every supply point is concerned we write this. So sigma Xij is less than or equal to ai. If I take a supply point i, then whatever that goes from the supply point should be less than or equal to i. So j = 1 to n is less than or equal to ai. ai is the supply point i. This is the quantity that goes out to each of the destinations and similarly whatever that enters destination j. Now i = 1 to m. This comes into each of the destination point that should be greater than or equal to bj. For example b1 is the requirement here so whatever comes from these should be greater than or equal to bj. This is for j = 1 to m. This is i = 1 to m. Xij greater than or equal to 0 and the objective function is to minimize the total cost of transportations which is double sigma Cij Xij. Xij is a quantity that goes from i to j. Cij is the unit cost of transportation from i to j, so this is summed over i = 1 to m; j = 1to n, Cij Xij. This is the formulation of the transportation problem and this is a linear programming problem with the linear objective function and linear constraints and an explicit non negativity constraint. I will look at understanding the transportation problem further and trying to solve the transportation problem in the next lecture
Info
Channel: nptelhrd
Views: 127,094
Rating: undefined out of 5
Keywords: Sensitivity, Analysis, Transportation, Problem, (Intro...)
Id: _-Mlp3w1Brc
Channel Id: undefined
Length: 61min 46sec (3706 seconds)
Published: Mon Aug 31 2009
Related Videos
Note
Please note that this website is currently a work in progress! Lots of interesting data and statistics to come.