Project On Linear Programming Problems
Project On Linear Programming Problems
Certified that this is a bona fide report of the project entitled 'Linear
Programming Problems' done by Mr Abhaya Kumar Tada under my
supervision and guidance in the partial fulfillment for the internal assessment
introduced in the degree semester course.
I am deeply grateful to class teacher Abhaya Kumar Tada and other teachers
in our Maths Department from whom I received comments and suggestions which have
helped me to improve the collection of this project. I would like to express my
appreciation to the group members who took my project and helped me in improving
the earlier versions of the manuscript. I would like to place on record my sincere
appreciation to vinod for his painstaking efforts in typing the manuscript in a record
time. Last but not least, I acknowledge with thanks the sacrifices made by my dear
friends and family on account of my involvement with the task of completing this
project work.
INTRODUCTION
Mathematics is the queen of science. In our daily life, planning is required on
various occasions, especially when the resources are limited. Any planning is meant for
attaining certain objectives. The best strategy is one that gives a maximum output from
a minimum input. The objective which is in the form of output may be to get the
maximum profit, minimum cost of production or minimum inventory cost with a
limited input of raw material, manpower and machine capacity. Such problems are
referred to as the problems of constrained optimization. Linear programming is a
technique for determining an optimum schedule of interdependent activities in view of
the available resources. Programming is just another word for 'planning' and refers to
the process of determining a particular plan of action from amongst several alternatives.
AIM
1. To find and know more about the importance and uses of 'linear programming'.
2. To formulate a linear programming problem and solve in simplex method and dual
problem.
DATA COLLECTION
CHARACTERISTICS
USES
There are many uses of L.P. It is not possible to list them all here. However L.P is very
useful to find out the following:
ADVANTAGES
PRINCIPLES
Additivity: Total resources are equal to the sum of the resources used in individual
activities.
Divisibility: Solution need not be a whole number viz decision variable can be in
fractional form.
Certainty: Coefficients of objective function and constraints are known constants and
do not change viz parameters remain unaltered.
DEFINITION OF TERMS
a) Basic solution: There are instances where number of unknowns (p) are more
than the number of linear equations (q) available. In such cases we assign zero
values to all surplus unknowns. There will be (p-q) such unknowns. With these
values we solve 'q' equations and get values of 'q' unknowns. Such solutions are
called Basic Solutions.
b) Basic variables: The variables whose value is obtained from the basic solution is
called basic variables
c) Non-basic variables: The variables whose value are assumed as zero in basic
solutions are called non-basic variables.
l) Two Phase method : L.P.P where artificial variables are added can be solved by
two phase method. This is a modified simplex method. Here the solution takes
place in two phases as follows:
⮚ Phase I - Basic Feasible solution: Here, simplex method is applied to a
specially constricted L.P.P called Auxiliary L.P.P and obtain basic
feasible solution.
⮚ Phase II - Optimum Basic solution: From basic feasible solution, obtain
optimum feasible solution.
m) Simplex Tableau : This is a table prepared to show and enter the values obtained
for basic variables at each stage of Iteration. This is the derived values at each
stage of calculation.
Optimal solution
An optimal solution of a linear programming problem is the set of real values of
the decision variables which satisfy the constraints including the non-negativity
conditions, if any and at the same time optimize the objective function.
A vector (x1, x2... xn) which satisfies the constraints A x ≤ or ≥ b only is called a
solution. And a solution which satisfies all the constraints including the non-negativity
condition is called a feasible solution. The set of all feasible solutions is called feasible
space.
Integer Programming
A L.P.P in which solution requires integers is called an integer programming
problem. A mathematical programming in which the objective fn is quadratic but all
the constraints are linear un the decision variable is called a quadratic programming.
Graphical L P solution
1. Determination of the solution space that defines all feasible solutions of the model.
2. Determination of the optimum solution from among all the feasible points in the
solution space.
The proper definition of the decision variables is an essential first step in the
development of the model. Once done, the task of constructing the objective function
and the constraints is more straight forward.
The problem of determining an n-tuple (x1, x2,... xn) which make z a minimum
or a maximum is called 'General linear programming problem'.
2. All constraints are of the type "less than or equal to" viz "≤" except the
non-negative restrictions.
Note: An inequality of more than (≥) can be replaced by less than (≤)
type by multiplying both sides by -1 and vice versa.
eg: 2x1 + 3x2 ≥ 100 can be written as -2x1-3x2 ≤ -100
3. All variables are non-negative viz xj ≥ 0
a) Statement form
" Maximize Z= c1x1 + c2x2 +....+ cnxn
Subject to the constraints ai1x1 + ai2x2 +.....+ ainxn = bi (i= 1, 2,...., m)
x1x2....xn ≥ 0 "
Characteristics of Standard form
1. Objective function is of maximization type.
2. All constraints are expressed in the function of equality form except the
restrictions.
3. All variables are non- negative.
Note: constraints given in the form of "less than or equal" (≤) can be converted
to the equality form by adding "slack" variables. Similarly, those given in "more
than or equal" (≥) form can be converted to the equality form by subtracting
"surplus" variables.
During World War II, a group under the direction of Marshall K. Wood worked
on allocating problems for the United States Air Force. Generalization of Leontief type
models were developed to allocate resources in such a way as to maximize or minimize
some linear objective function. George B. Dantzig was a member of the Air Force
group ; he formulated the general linear programming problem and devised the simplex
method of solution in 1947. His work was not generally available until 1951, when the
Cowles-commission Monograph was published.
1. At the optimum,
Primal Dual
subject to subject to
aij xj = bi , i= 1, 2, ...., m
xj ≥ 0 , j= 1, 2, ....., n aijyi ≥ cj , j= 1, 2,...., n
yi ≥ 0 , i= 1, 2, ...., m
We can think of the primal model in this manner. the coefficient cj represents
the profit per unit output of activity j. The available amount of resources i, b i, is
allocated at the rate of aij units of resource i per unit output of activity j.
Problem of the linear- programming type had been formulated and solved
before the pioneering work of Dantzig. In 1941, Hitchcock formulated and solved
transportation problems which was independently solved by the Koopmans in
1947. In 1942, Kantorovich (Russian) also formulated the transportation problem,
but did not solve it. The economist Stigler worked out a minimum-cost diet in
1945. Although this problem can be formulated as a linear programming problem,
Stigler did not use this technique. It was not until Dantzig's work, however, that the
general linear programming problem was formulated as such, and a method
devised for solving it.
APPLICATION OF LINEAR PROGRAMMING
The primary reason for using linear programming methodology is to ensure
that limited resources are utilized to the fullest extent without any waste and that
utilization is made in such a way that the outcomes are expected to be the best possible.
Subject to constraints AX = b; X ≥ 0
Thus we see that simplex solution obtained in the Tableau which is declared as
optimum basic feasible solution (O.B.F.S) contains inverse matrix A.
case of unbounded solutions: when L.P.P does not give finite values of variable X,
viz x1, x2, ...∞, such solutions are called UNBOUNDED. Here variable X can take very
high values without violating the conditions of the constraints.
In such cases the final Tableau shows all Ratios viz R values are negative so that
no minimum ratio condition can be applied.
Maximize Z= 2x1 + x2
This is the case where L.P.P gives solutions which are optimum but not UNIQUE. This
means, more than one optimum solution is possible.
Types of Degeneracy
a) First Iteration: Degeneracy can occur right in the first (initial tableau). This
normally happens when the number of constraints are less than number of variables
in the objective function. Problem can be overcome by trial and error method.
b) Subsequent Iteration: Degeneracy can also occur in subsequent iteration. This is
due to the fact that minimum Ratio values are the same for two rows. This will
make choice difficult in selecting the 'Replacing Row'.
Case of cycling:
We have seen that when degeneracy exists, replacement of vector in the BASIS does
not improve objective function. Another difficulty encountered in degeneracy is that
the simplex Tableau gets repeated without getting optimum solution. Such occurrences
in L.P.P are called CYCLING. Fortunately, such L.P.Ps are very rare. Also, in such
cases, certain techniques are developed to prevent cycling and reach optimum solution.
Case of duality :
Every L.P.P is associated with another L.P.P which is called the DUAL of the original
L.P.P. The original L.P.P is called the PRIMAL. If the DUAL is stated as a given
problem, PRIMAL becomes its DUAL and vice-versa. The solution of one contains the
solution of the other. In other words, when optimum solution of PRIMAL is known, the
solution of DUAL is also obtained from the very same optimum tableau.
There are many uses of this concept. However, one of the very important use is solve
difficult L.P.P. Many times, a given L.P.P is complicated having large number of
constraints. In such cases, one method is to design its dual which invariably will have
less number of constraints. Dual is now subjected to solution by simplex method.
Solution of a L.P.P
In general we use the following two methods for the solution if a linear programming
problem.
Any primal iteration zj - cj, the objective equation coefficient of xj, equals the
difference between the left and right sides of the associated dual constraint. When, in
the case of maximization, the primal iteration is not optimal, zj - cj < 0 for t least one
variable. Only at the optimum do we have zj -cj ≥ 0 for all j.
zj - cj = aijyi - cj
Thus, when zj - cj < 0, aijyi < cj , which means that the dual is infeasible when the primal
is non-optimal.
On the other hand, when zj - cj ≥ 0, aijyi ≥ cj , which means that the dual becomes
feasible when the primal reaches optimality.
ALLOCATION PROBLEM
A manufacturing firm has recently discontinued production of a certain product
due to unfavourable market conditions resulting in considerable excess production
capacity. The firm is planning to utilize this spare capacity by increasing the production
of the remaining one or more of the existing three products. The currently available
capacities are :
The numbers of machine hours required for each of the products are:
Milling 12 3 4
Lathe 6 4 1
Grinding 3 1 2
The net profits realized from each of the three products are: Rs: 20, Rs. 9 and Rs. 10
from A, B and C respectively. The production manager desires to allocate the available
capacities amongst the three products for a maximum profit.
Let x1, x2 and x3 be the quantity of products A, B and C produced within the
available capacities to maximize the profit.
From the above problem given details, we can formulate the problem as a linear
programming problem as,
Maximize, z = 20 x1 + 9 x2 + 10 x3
Subject to 12 x1 + 3 x2 + 4 x3 ≤ 300
6 x1 + 4 x2 + x3 ≤ 225
3 x1 + x2 + 2 x3 ≤ 100
x1, x2, x3 ≥ 0
By using simplex method
Where x1, x2 and x3 are structural variable and x4, x5, and x6 are stock variables
In order to simplify handling the educations in the problem, they can be placed
in a tabular form, known as a tableau. The initial tableau is given below
Qi =
Ci Basis P1 P2 P3 P4 P5 P6 P0 P oi
x oi
0 x4 12 3 4 1 0 0 300 25
0 x5 6 4 1 0 1 0 255 37.5
0 x6 3 1 2 0 0 1 100 33.3
cj 20 9 10 0 0 0
zj 0 0 0 0 0 0
∆ j = cj - zj 20 9 10 0 0 0
Starting with the left hand column in the above tableau, the C1 column contains
the contributions per unit for the basic variables x4, x5 and x6. The zero indicates that
the contribution per unit is zero. The reasoning is that no profits are made on unused
raw materials or labour. The second column, the basis, contains the variables in the
solution which are used to determine the total contribution. In the initial solution, no
products are being manufactured. This is represented in the cjth row for the column
under P0. Since no units are manufactured, the first solution is,
x1 = 0 x4 = 300
x2 = 0 x5 = 225
x3 = 0 x6 = 100
The body matrix consists of the coefficients for the real product (structural)
variables in the first simplex tableau represents the coefficients of the slack variables
that have been included to the original inequalities to make them equations.
Another way of defining the variables of the zj row is the contribution lost per unit
of the variables.
Simplex Tableau II
Qi =
Ci Basis P1 P2 P3 P4 P5 P6 P0 P oi
x oi
20 x4 1 ¼ 1
/3 1
/12 0 0 25 100
0 x5 0 5
/2 -1 -1
/2 1 0 75 30
0 x6 0 ¼ 1 -1
/4 0 1 25 100
cj 20 9 10 0 0 0
zj 20 5 20
/3 20
/12 0 0
∆ j = cj - zj 0 4 10
/3 -20
/12 0 0
Ci Basis P1 P2 P3 P4 P5 P6 P0 Qi =
P oi
x oi
x4 525
20 1 0 13
/30 7
/30 -1
/10 0 70
/4
13
9 x5 0 1 -2
/5 -1
/5 2
/5 0 30 −75
0 175
0 x6 0 11
/10 -1
/5 -1
/10 1 70
/4
11
cj 20 9 10 0 0 0
zj 20 9 76
/15 43
/15 8
/5 0
∆ j = cj - zj 0 0 74
/15 -43
/15 -8
/5 0
Simplex Tableau IV
Qi =
Ci Basis P1 P2 P3 P4 P5 P6 P0 P oi
x oi
x4 103 350
20 1 0 0 -2
/33 0
330 33
x5 400
9 0 1 0 /11
-3 4
/11 0
11
175
0 x6 0 0 1 /11
-2 -1
/11 1
11
cj 20 9 10 0 0 0
65 38 148
zj 20 9 10
33 33 33
7000 5350
= +
33 11
77000+176550 253550
= =
363 363
= 698.4848
Z = 698.4848
Subject to, 12 y1 + 6 y2 + 3 y3 ≥ 20
3 y1 + 4 y2 + y3 ≥ 9
4 y1 + y2 + 2 y3 ≥ 10
y1, y2, y3 ≥ 0
Introducing surplus variables and artificial variable, the above problem can be restated
as follows:
Subject to, 12 y1 + 6 y2 + 3 y3 – y4 + y7 ≥ 20
3 y1 + 4 y2 + y3 – y5 + y8 ≥ 9
4 y1 + y2 + 2 y3 – y6 + y9 ≥ 10
y1, y2, y3 …. Y9 ≥ 0
Ci Basis P1 P2 P3 P4 P5 P6 P7 P8 P9 P0 Qi
ω y7 12 6 3 -1 0 0 1 0 0 20 5
/3
ω y8 3 4 1 0 -1 0 0 1 0 9 3
ω y9 4 1 2 0 0 -1 0 0 1 10 5
/2
zj 19ω 11ω 6ω −ω −ω −ω ω ω ω
19ω - 6ω -
zj-cj 11ω -225 −ω −ω −ω
300 100
ω y8 0 5
/2 ¼ ¼ -1 0 -¼ 1 0 4 16
ω y9 0 -1 1 1
/3 0 -1 -1/3 0 1 10
/3 /3→
10
75+ 7 7
3 ω- −ω −ω 25-
zj 300 150- ω 5 12 2 ω ω
2 ω
4 25 ω
zj-cj 0 3 -25+ 7 −ω −ω 19 0 0
-75- ω 5 ω- 25-
2 ω 12 2
4 25 ω
↑
300 y1 1 ¾ 0 -1/6 0 ¼ 1
/6 0 -¼ 5
/6 10
/9
38
/33
ω y8 0 11
/4 0 1
/6 -1 ¼ -1/6 1 -¼ 19
/6
→
100 y9 0 -1 1 1
/3 0 -1 -1/3 0 1 10
/3 -10/3
50 50
125+ - + -25+ + 25-
3 6
zj 300 11 100 −ω ω ω ω
ω ω ω
4 4 4
4 6
zj-cj 0 -100+ 0 50 −ω -25+ 50 0 25-
- + -
11 3 ω 6 5ω
ω
4 ω 4 7ω 4
4 6
↑
17 3 2 1
300 y1 1 0 0 - 3
/11 2
/11 /33
7
- - -
66 11 11 33
-
2 1
225 y8 0 1 0 /33
4
4 1
/11 - /11
4
- 38
/33
33 11
11
-
100 y9 0 0 1 15
/33 4 - 10
/11 - 13
/11 /11
4 10
/11 148
/33
11
Since all si ≤ 0, the optimal solution has been obtained in the above tableau. The optimal
−1 38 148
solution is y1= , y2 = and y3 =
33 33 33
−1 38 148
Minimize z* = 300 × +225 × +100 ×
33 33 33
= 698.4848
Z* = 698.4848
Limitations
1) There is no guarantee that linear programming will give integer valued equations.
For instance, solution may result in producing 8.291 cars. In such a situation, the
manager will examine the possibility of producing 8 as well as 9 cars and will take
a decision which ensures higher profits subject to given constraints. Thus, rounding
can give reasonably good solutions in many cases but in some situations we will
get only a poor answer even by rounding. Then, integer programming techniques
alone can handle such cases.
2) Under linear programming approach, uncertainty is not allowed. The linear
programming model operates only when values for costs, constraints etc. are
known but in real life such factors may be unknown.
3) The assumption of linearity is another formidable limitation of linear
programming. The objective functions and the constraint functions in the L.P
model are all linear. We are thus dealing with a system that has constant returns to
scale. In many situations, the input-output rate for an activity varies with the
activity level. The constraints in real life concerning business and industrial
problems are not linearly related to the variables, in most economic situations,
sooner or later, the law of diminishing marginal returns begins to operate. In this
context, it can, however be stated that non-linear programming techniques are
available for dealing with such situations.
4) Linear programming will fail to give a solution if management have conflicting
multiple goals. In L.P model, there is only one goal which is expressed in the
objective function.
Eg. maximizing the value of the profit function or minimizing he cost function, one
should resort to Goal programming in situations involving multiple goals.
All these limitations of linear programming indicate only one thing- that
linear programming cannot be made use of in all business problems. Linear
programming is not a panacea for all management and industrial problems. But for
those problems where it can be applied, the linear programming is considered a ver
useful and powerful tool.
ANALYSIS
Linear programming is a resources allocation model that seeks the best allocation
of limited resources to a number of competing activities. L.P has been applied with
considerable success to a multitude of practical problems.
Since the objective of any organization is to make the best utilization of the given
resources, linear programming provides powerful technique for effective utilization
of these given resources under certain well-defined circumstances. For instance, an
industrial process consists of a number of activities relating to the capital invested and
the capital required for operational activities, products to be produced and marketed,
raw materials to be used, machines to be utilized, products to be stored and consumed
or a combination of the above activities. Some or all of these activities are
interdependent and inter-related so that there are many ways where by these resources
can be allocated to various competing demands. Linear programming helps the decision
maker in arranging for such combination of resources which results in optimization of
objectives.
The simplex method shows that a corner point is essentially indentified by a basic
solution of the standard form of linear programming. The optimality and feasibility
conditions of the simplex method that, starting from a feasible corner point (basic
solution), the simplex method will move to an adjacent corner point which has the
potential to improve the value of the objective function. The maximum number of
iterations (basic solutions or corner points) until the optimum is reached is limited by
n!/[(n-m)!m!] in an n-variable m-equation standard L.P model.
The special case of alternative optima point to the desirable adoption of one
optimum solution over another, even though both may have the same optimum
objective value depending, for example, on the activity "mix" that each solution offers.
The optimum tableau offers more than just the optimum values of the variables.
Additionally, it gives the status and worth (shadow prices) of the different resources.
The sensitivity study shows the resources can be changed within certain limits while
maintaining the same activity mix in the solution. Also, the marginal profits/costs can
be changed within certain ranges without changing the optimum values of the variables.
Evaluation of the last row in the initial tableau represents the first step in the
computational procedure for the above maximization problem. The final row is the net
contribution that results firm adding one unit of variable (product) to the production.
The Cj+ Cj row reveals that the largest positive value 20. A plus value indicates that a
greater contribution can be made by the firm by the including this variable (product) in
the production activity. A negative value would indicate the amount at by which
contribution would decrease if one unit of the variable for that column were brought
into the solution. The largest positive amount in the last row (indicated by ↑ as an
inclusion variable) is selected as the optimum column, since we want to maximize the
total contribution. When no more positive values remain in the c j – zj row and the
values are zero or negative in a maximization problem, the total contribution is all its
greatest value.
Once the first simplex tableau has been constructed and the variable (key column) has
been selected which contributes the most per unit, the second step is to determine
which variable should be replaced. In other words, inspection of the key column
indicates that the variable x1 should be included in the product – mix, replacing one of
the variable x2, x5 or x6. To determine which variable will be replaced, divide the value
in the P0 column by the corresponding coefficient in the optimum column. That is,
P oi
calculate Qi =
x oi
Select the row with the smallest non – negative quantity (θ=min θi) as the row to be
replaced (indicated by →)
Having selected the key column and there placed row, we can now work on an
improved solution found in tableau II. The element common to the key column and the
replaced row is said to be pivotal element (indicated by □) and the elements common to
the key column and the remaining row are called intersectional elements.
In the next step, the first row (elements) to determine in the second tableau is the new
x1 (replacing) row for x4 (replaced) row. The elements of the x 1 row are computed by
dividing each value in the replaced row(x4) by the pivotal element. These become the
values for the first row x1 in tableau □ . In our illustration, we divide the elements of x 4
row by 12 to get the new elements of x1 row.
The fourth and the final step in the computational procedure is to calculate all new
values for the remaining row(s). The formula for calculating these new elements of row
is:
( former element∈the remaining row )−[ ( former intersectional element of the remaining row ) ( new corresponding
= (New Value)
For example, in our illustration, the first element (new) in the x5 row is = 6 - [6 ×1] = o
Similarly, the other elements in the x5 row are calculated. Having completed the
computation of these values, we proceed to calculate the values for z j and ∆ j = cj – zj.
jn
The formula for calculation of zj is, z j =∑ c i x ij j = 1, 2, ……, n
i=1
Where xij are the elements of the body and the unit matrix for example, in tableau I;
zj = 20 × 1 + 0 + 0 = 20
These steps complete the computations involved for obtain the second tableau from
the first one.
We continue this process, when ∆ j are less than or equal to zero. If all ∆ j are less
than or equal to zero, then the computational procedure has come to an end and the
solution (basis) of the last tableau is the optimal solution. If one of the ∆ j is positive,
we shall have to compute the next tableau (in the same way as before: step 1 to 4) until
all ∆ j ' s are less than or equal to zero in our above example, since c j – zj (=∆ j)
corresponding to P1 column is large positive (4), we shall then compute the third, 4 th
and 5th simplex tableau in the same fashion.
METHODOLOGY
The method of this project is by collecting data as much as possible and analyzing
it. By this analysis, we can understand that importance and use of Linear Programming
Problem in mathematics. It is decided to observe and collect various books in our
library. Net sources, books and instruments are my teaching aids. We can conclude the
project by knowing the various purposes and brief sketch of linear programming.
CONCLUSION
From this project we came to a conclusion that 'Linear programming' is like a vast
ocean where many methods, advantages, uses, requirements etc. can be seen. Linear
programming can be done in any sectors where there is less waste and more profit. By
this, the production of anything is possible through the new methods of L.P. As we had
collected many datas about L.P, we came to know more about this, their uses,
advantages and requirements. Also, there are many different ways to find out the most
suitable L.P.
Also, we formulate an example for linear programming problem and done using
the two methods simplex method and dual problem. And came to a conclusion that L.P
is not just a technique but a planning the process of determining a particular plan of
action from amongst several alternatives. Even there are limitations, L.P is a good
technique, especially in the business sectors.