0% found this document useful (0 votes)
39 views120 pages

Linear Optimization (Math 3122)

This document introduces mathematical optimization, specifically focusing on linear programming (LP) as a method for maximizing or minimizing objective functions under constraints. It discusses the historical development of LP, its applications in various fields, and the essential components and assumptions of LP models. The document also outlines the steps for formulating LP problems and provides examples to illustrate the concepts.

Uploaded by

btemesgen2988
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
39 views120 pages

Linear Optimization (Math 3122)

This document introduces mathematical optimization, specifically focusing on linear programming (LP) as a method for maximizing or minimizing objective functions under constraints. It discusses the historical development of LP, its applications in various fields, and the essential components and assumptions of LP models. The document also outlines the steps for formulating LP problems and provides examples to illustrate the concepts.

Uploaded by

btemesgen2988
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 120

Introduction to Optimization

CHAPTER ONE

LINEAR PROGRAMMING AND GRAPHICAL METHODS

Introduction

Mathematical optimization (alternatively, optimization or mathematical programming) is the


selection of a best element (with regard to some criteria) from some set of available alternatives.

In the simplest case, an optimization problem consists of maximizing or minimizing a real


function by systematically choosing input values from within an allowed set and computing the
value of the function. The generalization of optimization theory and techniques to other
formulations comprises a large area of applied mathematics. More generally, optimization
includes finding "best available" values of some objective function given a defined domain,
including a variety of different types of objective functions and different types of domains.

Many applications in business and economics involves the process called optimization , in which
we are required to find the minimum cost, the maximum profit or minimum use of rescores. In
this chapter we discuss a type of optimization process called linear programming.

The development of linear programming has been ranked among the most important scientific
advances of the mid-20𝑡ℎ centaury, and its impact since just 1950 has been extraordinary. An
amazing range of problems can be modeled using linear programming, everything from airline
scheduling to least-cost petroleum processing and distribution. Today it is a standard tool that
has saved many thousands or millions of dollars for most companies or businesses of even
moderate size in various industrialized countries of the world; and its use in other sectors of
society has been spreading rapidly. A major proportion of all scientific computation on
computers is devoted to use of linear programming. Now today in the world, the scarcity of
resources is the main challenge of the human being hence we have to use this limited resources
effectively so we must apply this using the scientific views of linear programming.

This chapter begins our coverage of linear programming, which is one of the most popular tools
of operational research. Linear programming (𝐿𝑃) models enable users to find optimal solutions

Compiled by Dr. Habtamu Ts. 1 WkU-2024


Introduction to Optimization

to certain problems in which the solution must satisfy a given set of requirements, or constraints.
The purpose of this chapter is to provide you with an introduction to linear programming models.
Emphasis is placed on familiarization with terminology, problem recognition, models
formulation, and examples of application of linear programming.

1.1 Linear Programming (LP)

In 1947, Gorge Danzing developed the use of linear algebra for determining solutions to
problems that involved the optimal allocation of scarce resources. In spite of numerous
potential applications in business, responses to this new technique were low, primarily because
of the substantial computational burden it required. Subsequent advances that were made during
the last three decades in computer technology and related computer software have removed the
computational burden. This has led to widespread use of linear programming in business.
Although computers often are used to solve LPPs, computer programming is not required to
obtain computer solutions. Preprogrammed packages are used that require the user to input the
problem. The programming aspect of LP refers to the use of algorithms.

An algorithm is a well defined sequence of steps that will lead to an optimal solution.

Linear programming uses a mathematical model to describe the problem of concern. The
adjective linear means that all the mathematical functions in this model are required to be linear
functions. The word programming does not refer here to computer programming; rather, it is
essentially a synonym for planning. So you might think of linear programming as “planning with
linear models”. Thus, linear programming involves the planning activities to obtain an optimal
result, i.e., a result reaches the specified goal best (according to the mathematical model) among
all feasible alternatives.

Although allocating resources to activities is the most common type of application, linear
programming has numerous other important applications as well. In fact, any problem whose
mathematical model fits the very general format for the linear programming model is a linear
programming problem. Further, a remarkably efficient solution procedure, called the simplex
method, is available for solving linear programming problems of even enormous size, other
graphical method which solves simple linear programming problems.

Compiled by Dr. Habtamu Ts. 2 WkU-2024


Introduction to Optimization

A commonly encountered form of decision making involves situations in which the set of
acceptable solutions is somehow restricted. The restrictions may be imposed internally or
externally. For example, an internal restriction might be the amount of martial that a department
has available to produce its products.

This would impose a limit on the amount of product that could be produced. Other internal
restrictions can be include availability of labor time, machine time, technical requirements
(e.g. drying times, curing times) and budgets. An external restriction might be labor regulations
(e.g. safety equipment, training requirements, and overtime) that limit the options open to
decision makers.

The restrictions are referred to as constraints for purpose of linear programming. The goal in LP
is to find the best solution given the constraints imposed by the problem; hence, the term
constrained optimization.

Unconstrained optimization is to find the highest point or the lowest point on objective function.
For an optimization to be required there must be more than one solution available. Linear
programming (LP) is the most commonly applied form of constrained optimization which is
much harder than unconstrained optimization; still we have to find the best point of the function,
but now we also respect various constraints while doing so.

The main elements of any constrained optimization problems are:

1. Variables (also called decision variables): They represent things that you can adjust or
control, for example the rate at which to manufacture items, the goal is to fin d values of the
variables that provide the best value of objective function.
2. Objective function: This is a mathematical expression that combines the variables to
express your goal. It may represent profit, for example ; you will be required to either
maximize or minimize the objective function.
3. Constraints: These are mathematical expressions that combine the variables to express limit
on the possible solutions. For example, they may express the idea that the number of workers
available to operate a particular machine is limited, or that only available per day.
4. Variable bounds: Only rarely are the variables in an optimization problem permitted to take
on any value from mines infinity to plus infinity. Instead, the variables usually have bounds.

Compiled by Dr. Habtamu Ts. 3 WkU-2024


Introduction to Optimization

A two dimensional linear programming problem consists of a linear programming of a linear


objective function and a system of linear inequalities called constraints. The objective function
gives quantity that is to be maximized or minimized, and the constraints determine the set of
feasible solutions.

Any linear programming model (problem) must have the following properties:

o The relationship between variables and constraints must be linear.


o The model must have an objective function.
o The model must have structural constraints.
o The model must have non-negative constraint.

The following are some important assumptions made in formulating a linear programming
model:

a) It is assumed that the decision maker here is completely certain, i.e., deterministic
conditions regarding all aspects of the situation.
b) It is assumed that the relationship between variables in the problem and the resource
available i.e., constraints of the problem exhibit linearity.
c) We assume here fixed technology. Which means the production requirements are fixed
during the planning period and will not change in the period
d) It is assumed that the profit contribution of a product remains constant, irrespective of
level of production and sales.
e) It is assumed that the decision variables are continuous. It means that the companies
manufacture products in fractional units. For example, company manufacture 2.5
vehicles, 3.2 barrels of oil etc. This is referred too as the assumption of divisibility.
f) It is assumed that the lonely one decision is required for the planning period. This
condition shows that the linear programming model is a static model, which implies that
linear programming problem is a single stage decision problem.
g) All variables are restricted to non-negative values.

A general mathematical way of representing a linear programming problem is as given below:

(Max/min)𝑍 = 𝑐1 𝑥1 + 𝑐2 𝑥2 + ⋯ + 𝑐𝑛 𝑥𝑛 ………..objective function

Compiled by Dr. Habtamu Ts. 4 WkU-2024


Introduction to Optimization

Subjected to: (constraints)

𝑎11 𝑥1 + 𝑎12 𝑥2 + ⋯ + 𝑎1𝑛 𝑥𝑛 (≥=≤)𝑏1


𝑎21 𝑥1 + 𝑎22 𝑥2 + ⋯ + 𝑎2𝑛 𝑥𝑛 (≥=≤)𝑏2

………… …………………… ……………………………… …… ……
…………

{𝑎𝑚1 𝑥1 + 𝑎𝑚2 𝑥2 + ⋯ + 𝑎𝑚𝑛 𝑥𝑛 (≥=≤)𝑏𝑚

Where 𝑥𝑗 ≥ 0 (𝑗 = 1,2,3, … , 𝑛) non negativity constraints.

Where all 𝑐𝑗 s, 𝑏𝑖 s and 𝑎𝑖𝑗 s are constants and 𝑥𝑗 s are decision variables, for 𝑗 = 1,2,3, … , 𝑛 and
𝑖 = 1,2,3, … , 𝑚.

To show the relationship between left hand side and right side the symbol ≥, =, ≤ are used. Any
one of the signs may appear in real problems. Generally ≤ is used for maximization problems
and ≥ sign is used for minimization problems and in some problems, which are known as mixed
problems we may have all the three signs. The word optimize in the above model indicates either
maximize or minimize. The linear function, which is to be optimized, is the objective function.
The inequality conditions shown are constraints of the problem.

The steps for formulating the linear programming are:

1. Identify the unknown decision variables to be determined and assign symbols to them.
2. Identify all the restrictions or constraints in the problem and express them as linear
equations or inequalities of decision variables.
3. Identify the objective or aim and represent it also as a linear function of decision
variables.

Class Activity 1.1

a) Define “optimization”.
b) What is linear programming?
c) What are components of 𝐿𝑃 model?
d) What are the assumptions of 𝐿𝑃 model?

Compiled by Dr. Habtamu Ts. 5 WkU-2024


Introduction to Optimization

Example 1.1: A company manufactures two products 𝑥 and 𝑦, which require the following
resources. The resources are the capacities machine 𝑀1 , 𝑀2 , and 𝑀3 . The available capacities are
50, 25, and 15 hours respectively in the planning period. Product 𝑋 requires 1 hour of machine
𝑀2 and 1 hour of machine 𝑀3 . Product 𝑌 requires 2 hours of machine 𝑀1 , 2 hours of machine
𝑀2 and 1 hour of machine 𝑀3 . The profit contribution of products 𝑋 and 𝑌 are 𝑅𝑠. 5 and 𝑅𝑠. 4
respectively.
Machines products Availability in hours
x y
𝑀1 0 2 50
𝑀2 1 2 25
𝑀3 1 1 15
unit 5 4

Max 𝑍 = 5𝑥 + 4𝑦
2𝑦 = 50
𝑥 + 2𝑦 = 25
𝑥 + 𝑦 = 15 𝑥, 𝑦 ≥ 0.

1.1.2 Models of development

The development models are the various processes or methodologies that are being selected for
the development of the project depending on the project’s aims and goals. There are many
development life cycle models that have been developed in order to achieve different required
objectives. The models specify the various stages of the process and the order in which they are
carried out.

The selection of model has very high impact on the testing that is carried out. It will define the
what, where and when of our planned testing, influence regression testing and largely determines
which test techniques to use.

Steps in Developing a Linear programming (LP) Model:

Compiled by Dr. Habtamu Ts. 6 WkU-2024


Introduction to Optimization

(i) Formulation
(ii) Solution
(iii) Interpretation and Sensitivity Analysis
Properties of 𝐿𝑃 Models:
(i) Seek to minimize or maximize
(ii) Include “constraints” or limitations
(iii) There must be alternatives available
(iv) All equations/inequalities are linear

1.1.3 Principles of Mathematical Modeling

Mathematical modeling is becoming increasingly versatile and multi-disciplinary. This text


demonstrates the broadness of this field as the authors consider the principles of model
construction and use common approaches to build models from a range of subject areas. The
book reflects the interests and experiences of the authors, but it explores mathematical modeling
across a wide range of applications, from mechanics to social science.
Mathematical modeling is a principled activity that has both principles behind it and methods
that can be successfully applied. The principles are over-arching or meta-principles phrased as
questions about the intentions and purposes of mathematical modeling. These meta-principles are
almost philosophical in nature. We will now outline the principles, and in the next Section we
will briefly review some of the methods.

1.1.4 MAXIMIZATION MODELS

Example 1.3: A retail store stocks two types of shirts 𝐴 and 𝐵. These are packed in attractive
cardboard boxes. During a week the store can sell a maximum of 400 shirts of type 𝐴 and a
maximum of 300 shirts of type 𝐵. The storage capacity, however, is limited to a maximum of
600 of both types combined. Type 𝐴 shirt fetches a profit of 𝑅𝑠. 2 per unit and type 𝐵 a profit of
𝑅𝑠. 5 per unit. How many of each type the store should stock per week to maximize the total
profit? Formulate a mathematical model of the problem.

Compiled by Dr. Habtamu Ts. 7 WkU-2024


Introduction to Optimization

Solution: Here shirts 𝐴 and 𝐵 are problem variables. Let the store stock ‘𝑎’ units of 𝐴 and ‘𝑏’
units of B. As the profit contribution of 𝐴 and 𝐵 are 𝑅𝑠. 2 and 𝑅𝑠. 5 respectively, objective
function is: Maximize 𝑍 = 2𝑎 + 5𝑏 subjected to condition (s.t.) or such that

Structural constraints are, stores can sell 400 units of shirt 𝐴 and 300 units of shirt 𝐵 and the
storage capacity of both put together is 600 units. Hence the structural constraints are:
1𝑎 + 0𝑏 ≤ 400 and 0𝑎 + 1𝑏 ≤ 300 for sales capacity and 1𝑎 + 1𝑏 ≤ 600 for storage
capacity. And non-negativity constraint is both 𝑎 and 𝑏 are non-negative. Hence the model is:

Maximize 𝑍 = 2𝑎 + 5𝑏 s.t.
1𝑎 + 0𝑏 ≤ 400
0𝑎 + 1𝑏 ≤ 300
1𝑎 + 1𝑏 ≤ 600
𝑎, 𝑏 ≥ 0
Example 1.4: A ship has three cargo holds, forward, aft and center. The capacity limits are:
Forward 2000 tons, 100,000 cubic meters; Center 3000 tons, 135,000 cubic meters and aft
1500 tons, 30,000 cubic meters.
The following cargoes are offered, the ship owners may accept all or any part of each
commodity:

Commodity Amount in tons. Volume/ton in cubic meters Profit per ton in Rs.
A 6000 60 60
B 4000 50 80
C 2000 25 50
In order to preserve the trim of the ship the weight in each hold must be proportional to the
capacity in tons. How should the cargo be distributed so as to maximize profit? Formulate this as
linear programming problem.

Solution: Problem variables are commodities, 𝐴, 𝐵, and 𝐶. Let the shipping company ship ‘𝑎’
units of 𝐴 and ‘𝑏’ units of 𝐵 and ‘𝑐’ units of 𝐶. Then Objective function is:

Maximize 𝑍 = 60𝑎 + 80𝑏 + 50𝑐 (s.t.) Constraints are:

Weight constraint: 6000𝑎 + 4000𝑏 + 2000𝑐 ≤ 6,500 (= 2000 + 3000 + 1500)

Compiled by Dr. Habtamu Ts. 8 WkU-2024


Introduction to Optimization

The tonnage of commodity is 6000 and each ton occupies 60 cubic meters, hence there are 100
cubic meters capacity is available. Similarly, availability of commodities 𝐵 and 𝐶, which are
having 80 cubic meter capacities each.

Hence capacity inequality will be:

100𝑎 + 80𝑏 + 80𝑐 ≤ 2,65,000 (= 100,000 + 135,000 + 30,000).


Hence the l.p.p. Model is:

Maximise 𝑍 = 60𝑎 + 80𝑏 + 50𝑐


s.t. 6000𝑎 + 4000𝑏 + 2000𝑐 ≤ 6,500,
100𝑎 + 80𝑏 + 80𝑐 ≤ 2,65,000
𝑎, 𝑏, 𝑐 ≥ 0

1.1.5 MINIMIZATION MODELS

Example 1.5: A patient consults a doctor to check up his ill health. Doctor examines him and
advises him that he is having deficiency of two vitamins, vitamin 𝐴 and vitamin 𝐷. Doctor
advises him to consume vitamin 𝐴 and 𝐷 regularly for a period of time so that he can regain his
health. Doctor prescribes tonic 𝑋 and tonic 𝑌, which are having vitamin 𝐴, and 𝐷 in certain
proportion. Also advises the patient to consume at least 40 units of vitamin 𝐴 and 50 units of
vitamin daily. The cost of tonics 𝑋 and 𝑌 and the proportion of vitamin 𝐴 and 𝐷 that present in 𝑋
and 𝑌 are given in the table below. Formulate l.p.p. to minimize the cost of tonics.

Vitamins Tonics Daily requirement in units


X Y
A 2 4 40
D 3 2 50
Cost in Rs. Per unit. 5 3
Solution: Let patient purchase 𝑥 units of 𝑋 and 𝑦 units of 𝑌.

Objective function: Minimize 𝑍 = 5𝑥 + 3𝑦 Inequality for vitamin 𝐴 is 2𝑥 + 4𝑦 ≥ 40


(Here at least word indicates that the patient can consume more than 40 units but not less than
40 units of vitamin 𝐴 daily). Similarly the inequality for vitamin 𝐷 is 3𝑥 + 2𝑦 ≥ 50. For

Compiled by Dr. Habtamu Ts. 9 WkU-2024


Introduction to Optimization

non–negativity constraint the patient cannot consume negative units. Hence both 𝑥 and 𝑦 must
be ≥ 0. Now the l.p.p. model for the problem is:

Minimize 𝑍 = 5𝑥 + 3𝑦
s.t 2𝑥 + 4𝑦 ≥ 40
3𝑥 + 2𝑦 ≥ 50
𝑥, 𝑦 ≥ 0.
Example 1.6: A machine tool company conducts a job-training programme at a ratio of one for
every ten trainees. The training programme lasts for one month. From past experience it has been
found that out of 10 trainees hired, only seven complete the programme successfully. (The
unsuccessful trainees are released).Trained machinists are also needed for machining. The
company's requirement for the next three months is as follows: January: 100 machinists,
February: 150 machinists and March: 200 machinists. In addition, the company requires 250
trained machinists by April. There are 130 trained machinists available at the beginning of the
year. Pay roll cost per month is: Each trainee 𝑅𝑠. 400 per month. Each trained machinist
(machining or teaching): 𝑅𝑠. 700 per month. Each trained machinist who is idle: 𝑅𝑠. 500 per
month. (Labour union forbids ousting trained machinists). Build a l.p.p. for produce the
minimum cost hiring and training schedule and meet the company’s requirement.

Solution: There are three options for trained machinists as per the data given. (𝑖) A trained
machinist can work on machine, (𝑖𝑖) he can teach or (𝑖𝑖𝑖) he can remain idle. It is given that the
number of trained machinists available for machining is fixed. Hence the unknown decision
variables are the number of machinists goes for teaching and those who remain idle for each
month. Let, ‘𝑎’ be the trained machinists teaching in the month of January. ‘𝑏’ be the trained
machinists idle in the month of January. ‘𝑐’ be the trained machinists for teaching in the month of
February. ‘𝑑’ be the trained machinists remain idle in February. ‘𝑒’ be the trained machinists for
teaching in March. ‘𝑓 ’ be the trained machinists remain idle in the month of March.

The constraints can be formulated by the rule that the number of machinists used for
(machining+ teaching + idle) = Number of trained machinists available at the beginning of the
month. For January 100 + 1𝑎 + 1𝑏 ≥ 130, For February, 150 + 1𝑐 + 1𝑑 = 130 + 7𝑎

Compiled by Dr. Habtamu Ts. 10 WkU-2024


Introduction to Optimization

(Here 7𝑎 indicates that the number of machinist trained is 10 × a = 10a. But only 7 of them are
successfully completed the training i.e. 7𝑎).

For the month of March, 200 + 1𝑒 + 1𝑓 ≥ 130 + 7𝑎 + 7𝑐. The requirement of trained
machinists in the month of April is 250,

the constraints for this will be 130 + 7𝑎 + 7𝑐 + 7𝑒 ≥ 250.

Hence the objective function is

𝑀𝑖𝑛𝑖𝑚𝑖𝑧𝑒 𝑍 = 400(10𝑎 + 10𝑐 + 10𝑒) + 700 (1𝑎 + 1𝑐 + 1𝑒) + 400 (1𝑏 + 1𝑑1𝑓)

100 + 1𝑎 + 1𝑏 ≥ 130

s.t. 150 + 1𝑐 + 1𝑑 ≥ 130 + 7𝑎

200 + 1𝑒 + 1𝑓 ≥ 130 + 7𝑎 + 7𝑐

130 + 7𝑎 + 7𝑐 + 7𝑒 ≥ 250

𝑎, 𝑏, 𝑐, 𝑑, 𝑒, 𝑓 ≥ 0.

1.1.6 METHODS FOR THE SOLUTION OF LINEAR PROGRAMMING PROBLEMS

Linear Programming, is a method of solving the type of problem in which two or more
candidates or activities are competing to utilize the available limited resources, with a view to
optimize the objective function of the problem. The objective may be to maximize the returns or
to minimize the costs. The various methods available to solve the problem are:

1. The Graphical Method when we have two decision variables in the problem. (To deal with
more decision variables by graphical method will become complicated, because we have to
deal with planes instead of straight lines. Hence in graphical method let us limit ourselves to
two variable problems.
2. The Systematic Trial and Error method, where we go on giving various values to variables
until we get optimal solution. This method takes too much of time and laborious, hence this
method is not discussed here.

Compiled by Dr. Habtamu Ts. 11 WkU-2024


Introduction to Optimization

3. The Vector method. In this method each decision variable is considered as a vector and
principles of vector algebra is used to get the optimal solution. This method is also time
consuming, hence it is not discussed here.
4. The Simplex method. When the problem is having two or more than two decision variables,
simplex method is the most powerful method to solve the problem. It has a systematic
programme, which can be used to solve the problem.

Here in this module we will study the graphical and simplex methods to solve linear
programming problems in detail.

Exercise 1.1

1) A conservative investor has $100,000 to invest. The investor has decided to use three vehicles for
generating income: municipal bound, a certificate of deposit (𝐶𝐷) and a memory market account.
After reading a financial newsletter, the investor also has identified several additional
restrictions on the investment. No more than 40 percent of the investment should be in bonds and
the proportion allocated to the money market account should be at least double the amount in
𝐶𝐷. The annual return will be 8 percent for bonds, 9 percent on the 𝐶𝐷 and 7 percent for the
money market account. Assume the entire amount will be invested.

Formulate the LP model for this problem ignoring any transaction costs and the potential for
different investment lives. Assume the entire amount will be invested.

2) A toy manufacturer makes three versions of a toy robot. The first version requires 10 minutes
each for fabrication and packaging and 2 pound of plastic, the second version requires 12
minutes for fabrication and packaging and 3 pounds of plastics, and the 3 rd version requires 15
minutes for fabrication and packaging and 4 pounds of plastics. There are 8 hrs of fabrication
and packaging time available and 200 pounds of plastics available for the next production cycle.
The unit profits are $1 for each version 1, $4 for each version 2, and $6 for each version 3, a
minimum of 10 units of each must be made to fill back orders.

Formulate a LP models that will determine the optimal production quantities for profit maximization

3) A cereal manufacture is investigating the possibility of introducing a new cereal. It would be


composed of wheat, rice and corn flakes. The cost per unit and dietary requirements are shown in
the following table.

Compiled by Dr. Habtamu Ts. 12 WkU-2024


Introduction to Optimization

wheat rice corn requirement


Protein(gram) 4 2 2 At least 27gram
Carbohydrates(gram) 20 25 21 At least 240 gram
calories 90 110 100 No more than 1,260 calories
cost $0.03 $0.05 $0.02
Formulate a LP model for this problem that will determine the optimal quantities of wheat, rice and corn
per box that will achieve the requirements at minimum cost.

4) A manufacturer of light weight mountain tents makes two types tents, Regular tent and Super tent.
Each Regular tent requires 1 labor-hour from the cutting department and 3 labor hrs from the
assembly department. Each Super tent requires 2 labor-hrs from the cutting department and 4
labor-hrs from the assembly department. The maximum labor hrs available per week in the
cutting department and assembly department are 32 and 84 respectively. Moreover, the
distributor, because of demand, will not take more than 12 super tents per week. The
manufacturer sales each Regular tents for $160 and costs $110 per tent to make. Whereas Super
tent sales for $210 per tent and costs $130 per tent to make. Formulate a mathematical model for
this problem.

1.2 Graphical Method

In graphical method, the inequalities (structural constraints) are considered to be equations. This
is because; one cannot draw a graph for inequality. Only two variable problems are considered,
because we can draw straight lines in two-dimensional plane (𝑋 −axis and 𝑌 −axis). More over
as we have non- negativity constraint in the problem, that is all the decision variables must have
positive values always the solution to the problem lies in first quadrant of the graph. Some times
the value of variables may fall in quadrants other than the first quadrant. In such cases, the line
joining the values of the variables must be extended in to the first quadrant. The procedure of the
method will be explained in detail while solving a numerical problem.

Example 1.5: A company manufactures two products, 𝑋 and 𝑌 by using three machines 𝐴, 𝐵,
and 𝐶. Machine 𝐴 has 4 hours of capacity available during the coming week. Similarly, the
available capacity of machines 𝐵 and 𝐶 during the coming week is 24 hours and 35 hours
respectively. One unit of product 𝑋 requires one hour of Machine 𝐴, 3 hours of machine 𝐵 and

Compiled by Dr. Habtamu Ts. 13 WkU-2024


Introduction to Optimization

10 hours of machine 𝐶. Similarly one unit of product 𝑌 requires 1 hour, 8 hour and 7 hours of
machine 𝐴, 𝐵 and 𝐶 respectively. When one unit of 𝑋 is sold in the market, it yields a profit of
𝑅𝑠. 5 per product and that of 𝑌 is 𝑅𝑠. 7 per unit. Solve the problem by using graphical method to
find the optimal product mix.

Solution: The details given in the problem can be summarized in the following table:

Machines Products Available


(Time required in hours) capacity in hours

X Y
A 1 1 4
B 3 8 24
C 10 7 35
Profit per unit in Rs. 5 7

Let the company manufactures 𝑥 units of 𝑋 and 𝑦 units of 𝑌, and then the L.P. model is:

Maximize 𝑍 = 5𝑥 + 7𝑦
𝑥+𝑦 ≤ 4
s.t. 3𝑥 + 8𝑦 ≤ 24
10𝑥 + 7𝑦 ≤ 35
𝑥, 𝑦 ≥ 0
As we cannot draw graph for inequalities, let us consider them as equations.

Maximize 𝑍 = 5𝑥 + 7𝑦
𝑥+𝑦 = 4
s.t. 3𝑥 + 8𝑦 = 24
10𝑥 + 7𝑦 = 35
𝑥, 𝑦 ≥ 0
Let us take machine 𝐴 and find the boundary conditions. If 𝑥 = 0, machine 𝐴 can manufacture
4/1 = 4 units of 𝑦. Similarly, if 𝑦 = 0, machine 𝐴 can manufacture 4/1 = 4 units of 𝑥. For
other machines: machine 𝐵 When 𝑥 = 0 , 𝑦 = 24/8 = 3 and when 𝑦 = 0, 𝑥 = 24/3 = 8
machine 𝐶 When 𝑥 = 0, 𝑦 = 35/10 = 3.5 and when 𝑦 = 0, 𝑥 = 35 / 7 = 5. These values we
can plot on a graph, taking product 𝑋 on 𝑥 −axis and product 𝑌 on 𝑦 −axis.

Compiled by Dr. Habtamu Ts. 14 WkU-2024


Introduction to Optimization

Figure 1.1 Graph for machine 𝐴

First let us draw the graph for machine 𝐴. In figure 1.1 we get line 1 which represents
1𝑥 + 1𝑦 = 4. The point 𝑃 on 𝑌 axis shows that the company can manufacture 4 units of 𝑌
only when does not want to manufacture 𝑋. Similarly the point 𝑄 on 𝑋 axis shows that the
company can manufacture 4 units of 𝑋, when does not want to manufacture 𝑌. In fact triangle
𝑃𝑂𝑄 is the capacity of machine 𝐴 and the line 𝑃𝑄 is the boundary line for capacity of machine
𝐴. Similarly figure 1.2 show the Capacity line 𝑅𝑆 for machine 𝐵 and the triangle 𝑅𝑂𝑆 shows the
capacity of machine 𝐵 i.e., the machine 𝐵 can manufacture 3 units of product 𝑌 alone or 8 units
of product 𝑋 alone.

Figure 1.2 Graph for machine 𝐵

The graph 1.3 shows that the machine 𝐶 has a capacity to manufacture 5 units of 𝑌 alone or 3.5
units of 𝑋 alone. Line 𝑇𝑈 is the boundary line and the triangle 𝑇𝑂𝑈 is the capacity of machine 𝐶.

Compiled by Dr. Habtamu Ts. 15 WkU-2024


Introduction to Optimization

Figure 1.3 Graph for machine 𝐶

The graph is the combined graph for machine 𝐴 and machine 𝐵. Lines 𝑃𝑄 and 𝑅𝑆 intersect at 𝑀.
The area covered by both the lines indicates the products (𝑋 and 𝑌) that can be manufactured by
using both machines. This area is the feasible area, which satisfies the conditions of inequalities
of machine A and machine B. As 𝑋 and 𝑌 are processed on 𝐴 and 𝐵 the number of units that can
be manufactured will vary and the there will be some idle capacities on both machines. The idle
capacities of machine 𝐴 and machine 𝐵 are shown in the figure 1.4.

Figure 1.4 Graph for machines 𝐴 and 𝐵

Figure 1.5 shows the feasible area for all the three machines combined. This is the fact because
products 𝑋 and 𝑌 are complete when they are processed on machine 𝐴, 𝐵, and 𝐶.They are
covered by all the three lines 𝑃𝑄, 𝑅𝑆, and 𝑇𝑈 form a closed polygon 𝑅𝑂𝑈𝑉𝑊. This polygon is
the feasible area for the three machines. This means that all the points on the lines of polygon

Compiled by Dr. Habtamu Ts. 16 WkU-2024


Introduction to Optimization

and any point within the polygon satisfies the inequality conditions of all the three machines. To
find the optimal solution, we have two methods.

Figure 1.5 Graph for machines 𝐴, 𝐵 and 𝐶 combined

Method 1: Here we find the co-ordinates of corners of the closed polygon 𝑅𝑂𝑈𝑉𝑊 and
substitute the values in the objective function. In maximization problem, we select the co-
ordinates giving maximum value. And in minimization problem, we select the co-ordinates,
which gives minimum value. In the problem the co-ordinates of the corners are: 𝑅 = (0, 3.5),
𝑂 = (0, 0), 𝑈 = (3.5, 0), 𝑉 = (2.5, 1.5) and 𝑊 = (1.6,2.4). Substituting these values in
objective function:

𝑍( 0, 3.5) = 5 × 0 + 7 × 3.5 = 𝑅𝑠. 24.50, at point 𝑅

𝑍(0, 0) = 5 × 0 + 7 × 0 = 𝑅𝑠. 00.00, at point 𝑂

𝑍(3.5, 0) = 5 × 3.5 + 7 × 0 = 𝑅𝑠. 17.5 at point 𝑈

𝑍 (2.5, 1.5) = 5 × 2.5 + 7 × 1.5 = 𝑅𝑠. 23.00 at point 𝑉

𝑍 (1.6, 2.4) = 5 × 1.6 + 7 × 2.4 = 𝑅𝑠. 24.80 at point 𝑊

Hence the optimal solution for the problem is company has to manufacture 1.6 units of product
X and 2.4 units of product 𝑌, so that it can earn a maximum profit of 𝑅𝑠. 24.80 in the planning
period.

Method 2: (Isoprofit Line Method) Isoprofit line is a line on the graph drawn as per the objective
function, assuming certain profit. On this line any point showing the values of 𝑥 and 𝑦 will

Compiled by Dr. Habtamu Ts. 17 WkU-2024


Introduction to Optimization

yield same profit. For example in the given problem, the objective function is Maximize
𝑍 = 5𝑥 + 7𝑦. If we assume a profit of 𝑅𝑠. 35, to get 𝑅𝑠. 35, the company has to manufacture
either 7 units of 𝑋 or 5 units of 𝑌. Hence, we draw line 𝑍𝑍 (preferably dotted line) for
5𝑥 + 7𝑦 = 35. Then draw parallel line to this line 𝑍𝑍 at origin. The line at origin indicates zero
rupees profit. No company will be willing to earn zero rupees profit. Hence slowly move this line
away from origin. Each movement shows a certain profit, which is greater than 𝑅𝑠. 0.00. While
moving it touches corners of the polygon showing certain higher profit. Finally, it touches the
farthermost corner covering all the area of the closed polygon. This point where the line passes
(farthermost point) is the optimal solution of the problem. In the figure 1.6. the line 𝑍𝑍 passing
through point 𝑊 covers the entire area of the polygon, hence it is the point that yields highest
profit. Now point 𝑊 has co-ordinates(1.6, 2.4).Now Optimal profit 𝑍 = 5 × 1.6 + 7 × 2.4 =
𝑅𝑠. 24.80.

Figure 1.6 ISO profit line method

Note that:

1) In case lsoprofit line passes through more than one point, then it means that the problem has
more than one optimal solution, i.e., alternate solutions all giving the same profit. This helps
the manager to take a particular solution depending on the demand position in the market. He
has options.

Compiled by Dr. Habtamu Ts. 18 WkU-2024


Introduction to Optimization

2) If the lsoprofit line passes through single point, it means to say that the problem has unique
solution.
3) If the Isoprofit line coincides any one line of the polygon, then all the points on the line are
solutions, yielding the same profit. Hence the problem has innumerable solutions.
4) If the line do not pass through any point (in case of open polygons), then the problem do not
have solution, and we say that the problem is unbounded.

Example 1.6: Solve graphically the given linear programming problem.

Minimize 𝑍 = 3𝑎 + 5𝑏 s.t.
– 3𝑎 + 4𝑏 ≤ 12
s.t. 2𝑎 – 𝑏 ≥ – 2
2𝑎 + 3𝑏 ≥ 12
𝑎 + 0𝑏 ≥ 4
0𝑎 + 𝑏 ≥ 2
𝑎, 𝑏 ≥ 0.
Note that:

(i) In inequality – 3𝑎 + 4𝑏 ≤ 12, product/the candidate/activity requires – 3 units of the


resource. It does not give any meaning (or by manufacturing the product 𝐴 the
manufacturer can save 3 units of resource or one has to consume – 3 units of 𝐴.
(All these do not give any meaning as far as the practical problems or real world
problems are concerned).
(ii) In the second inequality, on the right hand side we have – 2. This means that – 2 units of
resource are available. It is absolutely wrong. Hence in solving a l.p.p. problem, one must
see that the right hand side we must have always a positive integer. Hence the inequality
is to be multiplied by –1 so that the inequality sign also changes. In the present case it
becomes – 2𝑎 + 1𝑏 ≤ 2.

Solution: Now the problem can be written as:

Minimize 𝑍 = 3𝑎 + 5𝑏
– 3𝑎 + 4𝑏 ≤ 12

Compiled by Dr. Habtamu Ts. 19 WkU-2024


Introduction to Optimization

– 2𝑎 + 1𝑏 ≤ 2
s.t. 2𝑎 + 3𝑏 ≥ 12
1𝑎 + 0𝑏 ≤ 4
0𝑎 + 1𝑏 ≥ 2
𝑎, 𝑏 ≥ 0.
When these converted into equations they can be written as:
Minimize 𝑍 = 3𝑎 + 5𝑏
– 3𝑎 + 4𝑏 = 12
– 2𝑎 + 1𝑏 = 2
s.t. 2𝑎 + 3𝑏 = 12
1𝑎 + 0𝑏 = 4
0𝑎 + 1𝑏 = 2
𝑎, 𝑏 ≥ 0.
The lines for inequalities – 3𝑎 + 4𝑏 ≤ 12 and – 2𝑎 + 1𝑏 ≤ 2 starts from quadrant 2 and be
extended into quadrant 1. Figure 1.7 shows the graph, with Isocost line.
Isocost line is a line, the points on the line gives the same cost in Rupees. We write Isocost line
at a far off place, away from the origin by assuming very high cost in objective function. Then
we move line parallel towards the origin (in search of least cost) until it passes through a single
corner of the closed polygon, which is nearer to the origin, (unique solution) or passes through
more than one point, which are nearer to the origin (more than one solution or coincides with a
line nearer to the origin and the side of the polygon (innumerable solution).

The solution for the problem is the point 𝑃(3, 2) and the minimum cost is
𝑅𝑠. 3 × 3 + 2 × 5 = 𝑅𝑠. 19.

Compiled by Dr. Habtamu Ts. 20 WkU-2024


Introduction to Optimization

Figure 1.7 Graph for the problem 1.6

Example 1.7: The cost of materials 𝐴 and 𝐵 is Re.1 per unit respectively. We have to
manufacture an alloy by mixing these to materials. The process of preparing the alloy is carried
out on three facilities 𝑋, 𝑌 and 𝑍. Facilities 𝑋 and 𝑍 are machines, whose capacities are limited.
𝑌 is a furnace, where heat treatment takes place and the material must use a minimum given time
(even if it uses more than the required, there is no harm). Material 𝐴 requires 5 hours of machine
𝑋 and it does not require processing on machine 𝑍. Material 𝐵 requires 10 hours of machine 𝑋
and 1 hour of machine 𝑍. Both 𝐴 and 𝐵 are to be heat treated at last one hour in furnace 𝑌. The
available capacities of 𝑋, 𝑌 and 𝑍 are 50 hours, 1 hour and 4 hours respectively. Find how
much of 𝐴 and 𝐵 are mixed so as to minimize the cost.

Solution: The l.p.p. model is

Minimize 𝑍 = 1𝑎 + 1𝑏 Equations are: Minimize 𝑍 = 1𝑎 + 1𝑏


5𝑎 + 10𝑏 ≤ 50 5𝑎 + 10𝑏 = 50
s.t. 𝑎+𝑏 ≥ 1 s.t. 1𝑎 + 1𝑏 = 1
0𝑎 + 1𝑏 ≤ 4 0𝑎 + 1𝑏 = 4
𝑎, 𝑏 ≥ 0. 𝑎, 𝑏 ≥ 0.
Figure 1.8 shows the graph. Here Isocost line coincides with side of the polygon, i.e., the line

𝑀𝑁. Hence the problem has innumerable solutions. Any value on line (1,1) will give same cost.
Optimal cost is 𝑅𝑒. 1.

Compiled by Dr. Habtamu Ts. 21 WkU-2024


Introduction to Optimization

Figure 1.8 Graph for the problem 1.7

Example 1.8: Maximize 𝑍 = 0.75 𝑎 + 1𝑏 s.t.


1𝑎 + 1𝑏 ≥ 0
– 0.5 𝑎 + 1𝑏 ≤ 1 and both 𝑎 and 𝑏 are ≥ 0.
Solution: Writing the inequalities as equations, 1𝑎 + 1𝑏 = 0 i.e., 𝑎 = 𝑏 = 1 which is a line
passing through origin at 45°, 0.5 𝑎 + 1 𝑏 = 1 and both 𝑎 and 𝑏 are ≥ 0. Referring to figure
1.9 the polygon is not closed one i.e., the feasible area is unbound. When Isoprofit line is drawn,
it passes through open side of the polygon and it does not coincide with any corner or any line.
Hence the line can be moved indefinitely, still containing a part of the feasible area. Thus there is
no finite maximum value of 𝑍. That the value of 𝑍 can be increased indefinitely. When the
value of 𝑍 can be increased indefinitely, the problem is said to have an unbound solution.

Figure 1.9 Graph for the problem 1.8

Compiled by Dr. Habtamu Ts. 22 WkU-2024


Introduction to Optimization

Example 1.9: A company manufactures two products 𝑋 and 𝑌 on two facilities 𝐴 and 𝐵. The
data collected by the analyst is presented in the form of inequalities. Find the optimal product
mix for maximizing the profit.

Maximize 𝑍 = 6𝑥– 2𝑦
s.t. 2𝑥 – 1𝑦 ≤ 2
𝑥 + 0𝑦 ≤ 3
𝑥, 𝑦 ≥ 0.
Writing in the equation form:

Maximize 𝑍 = 6𝑥– 2𝑦
s.t. 2𝑥 – 1𝑦 = 2
𝑥 + 0𝑦 = 3
𝑥, 𝑦 ≥ 0.
Solution: The straight line for 2𝑥 – 1𝑦 = 2 starts in 4𝑡ℎ quadrant and is to be extended into first
quadrant. The polygon is not a closed one and the feasible area is unbound. But when an
Isoprofit line is drawn it passes through a corner of the feasible area that is the corner 𝑀 of the
open polygon. The (figure 1.10) coordinates of 𝑀 are (3, 4) and the maximum 𝑍 = 𝑅𝑠. 10.

Figure 1.10 Graph for the problem 1.9

Example 1.10: A company manufactures two products 𝑋 and 𝑌. The profit contribution of 𝑋 and
𝑌 are 𝑅𝑠. 3 and 𝑅𝑠. 4 respectively. The products 𝑋 and 𝑌 require the services of four facilities.
The capacities of the four facilities 𝐴, 𝐵, 𝐶, and 𝐷 are limited and the available capacities in
hours are 200 Hrs, 150 Hrs, and 100 Hrs. and 80 hours respectively. Product 𝑋 requires 5, 3, 5

Compiled by Dr. Habtamu Ts. 23 WkU-2024


Introduction to Optimization

and 8 hours of facilities 𝐴, 𝐵, 𝐶 and 𝐷 respectively. Similarly the requirement of product 𝑌 is 4,


5, 5, and 4 hours respectively on 𝐴, 𝐵, 𝐶 and 𝐷. Find the optimal product mix to maximize the
profit. Solution: Enter the given data in the table below:

Products
Machines X Y Availability in hours.
Time in hrs.
A 5 4 200
B 3 5 150
C 5 4 100
D 8 4 80
Profit in Rs. Per unit 3 4

The inequalities and equations for the above data will be as follows. Let the company
manufactures 𝑥 units of 𝑋 and 𝑦 units of 𝑌. (Refer figure 1.11).

Maximize 𝑍 = 3𝑥 + 4𝑦 Maximize 𝑍 = 3𝑥 + 4𝑦
5𝑥 + 4𝑦 ≤ 200 5𝑥 + 4𝑦 = 200
s.t. 3𝑥 + 5𝑦 ≤ 150 s.t 3𝑥 + 5𝑦 = 150
5𝑥 + 4𝑦 ≤ 100 5𝑥 + 4𝑦 = 100
8𝑥 + 4𝑦 ≤ 80 8𝑥 + 4𝑦 = 80
𝑥, 𝑦 ≥ 0 𝑥, 𝑦 ≥ 0
In the graph the line representing the equation 8𝑥 + 4𝑦 is outside the feasible area and hence it
is a redundant equation. It does not affect the solution. The Isoprofit line passes through corner 𝑇
of the polygon and is the point of maximum profit.
Therefore 𝑍𝑇 = 𝑍(32,10) = 3 × 32 + 4 × 10 = 𝑅𝑠. 136.

Compiled by Dr. Habtamu Ts. 24 WkU-2024


Introduction to Optimization

Figure 1.11 Graph for the problem 1.10

Example 1.11: This problem is of mathematical interest.


Maximize 𝑍 = 3𝑎 + 4𝑏
s.t. 1𝑎– 1𝑏 ≤ – 1,
– 1𝑎 + 1𝑏 ≤ 0
𝑎, 𝑏 ≥ 0.
Solution: Maximize 𝑍 = 3𝑎 + 4𝑏
s.t. 1𝑎– 1𝑏 =– 1,
– 1𝑎 + 1𝑏 = 0
𝑎, 𝑏 ≥ 0.
Referring to figure 1.12, the straight line for equation 1 starts in second quadrant and extended to
first quadrant. The line for equation 2 passes through the origin. We see that there is no point;
which satisfies both the constraints simultaneously. Hence there is no feasible solution. Given
l.p.p. has no feasible solution.

Figure 1.12 Graph for the problem 1.11

Example 1.12: Formulate the l.p.p. and solve the following problem graphically. Old hens can be
bought for Rs.2.00 each but young ones costs 𝑅𝑠. 5.00 each. The old hens lay 3 eggs per week
and the young ones lay 5 eggs per week. Each egg costs 𝑅𝑠. 0.30. A hen costs 𝑅𝑠. 1.00 per week
to feed. If the financial constraint is to spend 𝑅𝑠. 80.00 per week for hens and the capacity
constraint is that total number of hens cannot exceed 20 hens and the objective is to earn a profit
more than Rs.6.00 per week, find the optimal combination of hens.

Solution: Let 𝑥 be the number of old hens and 𝑦 be the number of young hens to be bought.
Now the old hens lay 3 eggs and the young one lays 5 eggs per week. Hence total number of

Compiled by Dr. Habtamu Ts. 25 WkU-2024


Introduction to Optimization

eggs one get is 3𝑥 + 5𝑦. Total revenues from the sale of eggs per week is 𝑅𝑠. 0.30 (3𝑥 + 5𝑦)
i.e., 0.90 𝑥 + 1.5 𝑦. Now the total expenses per week for feeding hens is 𝑅𝑠. 1(1𝑥 + 1𝑦) i.e.,
1𝑥 + 1𝑦.

Hence the net income =Revenue – Cost = (0.90 𝑥 + 1.5 𝑦)– (1 𝑥 + 1𝑦) = – 0.1 𝑥 + 0.5𝑦
Hence the desired l.p.p. is Maximize 𝑍 = 0.5 𝑦 – 0.1
2 𝑥 + 5 𝑦 ≤ 80
s.t. 𝑥 + 𝑦 ≤ 20
𝑥, 𝑦 ≥ 0.
Hence the equations are: Maximize 𝑍 = 0.5 𝑦 – 0.1
2 𝑥 + 5 𝑦 ≤ 80
s.t. 𝑥 + 𝑦 ≤ 20
𝑥, 𝑦 ≥ 0.
In the figure 2.13, which shows the graph for the problem, the isoprofit line passes through the
point 𝐶. Hence 𝑍𝑐 = 𝑍(0,16) = 𝑅𝑠. 8.00. Hence, one has to buy 16 young hens and his weekly
profit will be 𝑅𝑠. 8.00.

Figure 1.13 Graph for the problem 1.12

Note that: In case in a graphical solution, after getting the optimal solution, one more constraint
is added, we may come across following situations.

(i) The feasible area may reduce or increase and the optimal solution point may be shifted
depending the shape of the polygon leading to decrease or increase in optimal value of the
objective function.

Compiled by Dr. Habtamu Ts. 26 WkU-2024


Introduction to Optimization

(ii) Sometimes the new line for the new constraint may remain as redundant and imposes no
extra restrictions on the feasible area and hence the optimal value will not change.
(iii) Depending on the position of line for the new constraint, there may not be any point in the
feasible area and hence there may not be a solution. Or the isoprofit line may coincide
with a line and the problem may have innumerable number of solutions.

Exercise 1.2
Solve the following LPP using graphical methods

a) Minimize 𝑍 = 1.5 𝑥 + 2.5𝑦 b) Maximize 𝑍 = 3𝑎 + 2b


s.t. 𝑥 + 3𝑦 ≥ 3 𝑎–𝑏 ≤ 1
𝑥 + 6𝑦 ≥ 2 s.t. 𝑎+𝑏≥3
𝑥 ,𝑦 ≥ 0. 𝑥 ,𝑦 ≥ 0.
b) b) Max 𝑍 = 4𝑥1 + 4𝑥2 c) Max 𝑍 = 8000𝑎 + 7000𝑏

s.t. 𝑥1 + 2𝑥2 ≤ 10 3 𝑎 + 𝑏 ≤ 66
6𝑥1 + 6𝑥2 ≤ 36 s.t. 𝑎 + 𝑏 ≤ 45
𝑥1 ≤ 3 and 𝑥1 ,𝑥2 ≥ 0. 𝑎 ≤ 20, 𝑏 ≤ 40 and 𝑎, 𝑏 ≥ 0.

1) Small micro is produce two object 𝐴 and 𝐵, an object 𝐴 requires 3 machine hours and an object
𝐵 require 4 machine hours for processing. An object 𝐴 need 2 labour hour and an object 𝐵 need
5 labor hour for processing. The total machine hour per week is 30 and the total labor hour is
20. One product of 𝐴 is sold by 6 birr and one product 𝐵 is sold by 8 birr. Formulate the 𝐿𝑃𝑃
and solve graphically and give decision for the problem.
2) A company owns two flour mills (𝐴 and 𝐵) which have different production capacities for high,
medium and low grade flour. This company has entered contract supply flour to firm every week
with 12, 8, and 24 quintals of high, medium and low grade respectively. It costs the $1000 and
$800 per day to run mill 𝐴 and mill 𝐵 respectively. On a day, mill 𝐴 produces 6, 2 and 4 quintals
of high, medium and low grade flour respectively. Mill 𝐵 produces 2, 2 and 12 quintals of high,
medium and low grade flour respectively. How many days per week should each mill be operated
in order to meet the contract order most economically standardize? Solve graphically.
3) From exercise 1.1 problem no. 4:
a) Determine how many of each tent the company should manufacture each week so as to
maximize its profit?

Compiled by Dr. Habtamu Ts. 27 WkU-2024


Introduction to Optimization

b) What is the maximum profit assuming that all the tents manufactured in each week are sold in
that week?
4) Show and Sell can advertise its products on local radio and television (TV). The advertising
budget is limited to $100,0000 a month. Each minute of radio advertising costs $15 and each
minute of TV commercials $300. Show & Sell likes to advertise on radio at least twice as much as
on TV. In the meantime, it is not practical to use more than 400 minutes of radio advertising a
month. From past experience, advertising on TV is stimated to be 25 times as effective as on
radio. Determine the optimum allocation of the budget to radio and TV advertising.

Compiled by Dr. Habtamu Ts. 28 WkU-2024


Introduction to Optimization

Miscellaneous Exercise-1

1) A firm is engaged in producing two products: 𝐴 and 𝐵. each unit of product 𝐴 requires 2𝐾𝑔 of
raw materials and 4 labor-hrs for processing. Whereas, each unit of product 𝐵, requires 3𝐾𝑔 of
raw materials and 3hrs of labor. Every unit of product 𝐴 requires 4 hrs for packaging where as 𝐵
needs 3.5 hrs. Every week the firm has availability of 60𝐾𝑔 of raw material, 96 labor-hrs and
105 hrs in the packaging department. 1 unit of product 𝐴 sold yields $40 profit and 1 unit of 𝐵
sold yields $35 profit.
a) Formulate this problem as a LPP.
b) Find the optimal solution.
2) An aviation fuel manufacturer sells two types of fuel 𝐴 and 𝐵. Type 𝐴 fuel is 25 % grade 1
gasoline, 25% of grade 2 gasoline and 50% of grade 3 gasoline. Type 𝐵 fuel is 50% of grade 2
gasoline and 50% of grade 3 gasoline. Available for production are 500 liters per hour grade 1
and 200 liters per hour of grade 2 and grade 3 each. Costs are 60 paisa per liter for grade 1,
120 paise for grade 2 and 100 paise for grade 3. Type A can be sold at 𝑅𝑠. 7.50 per liter and 𝐵
can be sold at 𝑅𝑠. 9.00 per liter. How much of each fuel should be made and sold to maximize the
profit.
3) Suppose that the machine shop has two different types of machines; machine 1 and
machine 2, which can be used to make a single product. These machines vary in the
amount of product produced per hr., in the amount of labor used in the cost of operation.
Assume that at least a certain amount of production must be produced and that we would like
to utilize at least the regular labor force. Using the following table, how much should we
utilize each machine in order to utilize total costs and still meets the requirement?
Resource used Maximum required hrs.
Machine 1 Machine 1
Product produced/hr 20 15 100
Labor/hr 2 3 15
Operation cost $25 $30

4) A company manufactures two products 𝑋1 and 𝑋2 on three machines 𝐴, 𝐵, and 𝐶. 𝑋1 require 1


hour on machine 𝐴 and 1 hour on machine B and yields a revenue of 𝑅𝑠. 3. Product 𝑋2 requires
2 hours on machine 𝐴 and 1 hour on machine 𝐵 and 1 hour on machine 𝐶 and yields revenue of

Compiled by Dr. Habtamu Ts. 29 WkU-2024


Introduction to Optimization

𝑅𝑠. 5. In the coming planning period the available time of three machines 𝐴, 𝐵, and 𝐶 are 2000
hours, 1500 hours and 600 hours respectively. Find the optimal product mix.
5) Maximize 𝑍 = 8000𝑎 + 7000𝑏
3 𝑎 + 𝑏 ≤ 66
s.t. 𝑎 + 𝑏 ≤ 45
𝑎 + 0𝑏 ≤ 20
0𝑎 + 𝑏 ≤ 40
𝑎 , 𝑏 ≥ 0.
6) Minimize 𝑍 = 1.5 𝑥 + 2.5𝑦
s.t. 𝑥 + 3𝑦 ≥ 3
𝑥 + 6𝑦 ≥ 2
𝑥 , 𝑦 ≥ 0.

Compiled by Dr. Habtamu Ts. 30 WkU-2024


Introduction to Optimization

CHAPTER TWO

THE SIMPLEX METHOD

Introduction

In Chapter one we looked at examples of linear programming (LP) problems that contained two
decision variables. With only two variables it is possible to use a graphical approach. We plotted
the feasible region and then searched for the optimal corner point and corresponding profit or
cost. This approach provides a good way to understand the basic concepts of LP. Most real-life
LP problems, however, have more than two variables and are thus too large for the simple graph-
ical solution procedure. Problems faced in business and government can have dozens, hundreds,
or even thousands of variables. We need a more powerful method than graphing, so in this chap-
ter we turn to a procedure called the simplex method.

As discussed earlier, there are many methods to solve the linear programming problem, such as
graphical method, Trial and Error method, vector method and simplex Method. Though we use
graphical method for solution when we have two problem variables, the other method can be
used when there are more than two decision variables in the problem. Among all the methods,
simplex method is most powerful method. It deals with iterative process, which consists of first
designing a basic feasible Solution or a programme and proceed towards the optimal solution and
testing each feasible solution for optimality to know whether the solution on hand is optimal or
not. If not an optimal solution, redesign the programme, and test for optimality until the test
confirms optimality. Hence we can say that the simplex method depends on two concepts known
as feasibility and optimality. The simplex approach yields not only the optimal solution to the
decision variables and the maximum profit (or minimum cost), but valuable economic
information as well.

The simplex method is based on the property that the optimal solution to a linear programming
problem, if it exists, can always be found in one of the basic feasible solution. The simplex
method is quite simple and mechanical in nature. The iterative steps of the simplex method are
repeated until a finite optimal solution, if exists, is found. If no optimal solution, the method
indicates that no finite solution exists.

Compiled by Dr. Habtamu Ts. 31 WkU-2024


Introduction to Optimization

Note that:

1) The graphical method is used when we have two decision variables in the problem. Whereas
in simplex method, the problem may have any number of decision variables.
2) In graphical method, the inequalities are assumed to be equations, so as to enable to draw
straight lines. But in simplex method, the inequalities are converted into equations by adding
a slack variable in maximization problem and subtracting a surplus variable in case of
minimization problem.
3) In graphical solution the isoprofit line moves away from the origin to towards the far off
point in maximization problem and in minimization problem, the isocost line moves from far
off distance towards origin to reach the nearest point to origin.
4) In graphical method, the areas outside the feasible area (area covered by all the lines of
constraints in the problem) indicates idle capacity of resource where as in simplex method,
the presence of slack variable indicates the idle capacity of the resources
5) In graphical solution, if the isoprofit line coincides with more than one point of the feasible
polygon, then the problem has second alternate solution. In case of simplex method the net-
evaluation row has zero for non-basis variable the problem has alternate solution. (If two
alternative optimum solutions can be obtained, the infinite number of optimum, solutions can
be obtained).

Recall that a general form Lpps

Max 𝑍 = 𝐶 𝑇 𝑋 ---------- (objective function) s.t.

𝐴𝑋(≤=≥)𝐵 and 𝑋 ≥ 0 ---------- (constraints)

𝑎11 𝑎12 … 𝑎1𝑛 𝑥1 𝑐1 𝑏1


𝑎 𝑎22 … 𝑎2𝑛 𝑥 𝑐
Where 𝐴 = ( 21 ⋮ ) , 𝑋 = ( 2 ), 𝐶 = ( 2 ), 𝐵 = (𝑏2 )
⋮ ⋮ ⋮ ⋮ ⋮ ⋮
𝑎𝑚1 𝑎𝑚2 ⋯ 𝑎𝑚𝑛 𝑥𝑛 𝑐𝑛 𝑏 𝑛

Now to convert standard form of Lpp; an inequality constraints replaced by equality constraints.
Using the following facts:

a) An equation constraint can be replaced by two inequalities

Compiled by Dr. Habtamu Ts. 32 WkU-2024


Introduction to Optimization

i.e., 𝑎1 𝑥1 + 𝑎2 𝑥2 + ⋯ + 𝑎𝑛 𝑥𝑛 = 𝑏 can be replaced by 𝑎1 𝑥1 + 𝑎2 𝑥2 + ⋯ + 𝑎𝑛 𝑥𝑛 ≤ 𝑏


and 𝑎1 𝑥1 + 𝑎2 𝑥2 + ⋯ + 𝑎𝑛 𝑥𝑛 ≥ 𝑏 .
b) An inequality constraint 𝑎1 𝑥1 + 𝑎2 𝑥2 + ⋯ + 𝑎𝑛 𝑥𝑛 ≤ 𝑏 can be replaced an equality
constraint 𝑎1 𝑥1 + 𝑎2 𝑥2 + ⋯ + 𝑎𝑛 𝑥𝑛 + 𝑆 = 𝑏. By adding non-negative variable 𝑆 which is
called slack variable (un used resources).
c) An inequality constraint 𝑎1 𝑥1 + 𝑎2 𝑥2 + ⋯ + 𝑎𝑛 𝑥𝑛 ≥ 𝑏 can be replaced an equality
constraint 𝑎1 𝑥1 + 𝑎2 𝑥2 + ⋯ + 𝑎𝑛 𝑥𝑛 − 𝑇 = 𝑏. By subtracting non-negative variable 𝑇
which is called surplus variable (un used resources).
d) If a variable x, unrestricted in sign, can be replace by two non-negative variables 𝑥 + and
𝑥 − , i.e., 𝑥 = 𝑥 + − 𝑥 − .

Consider a Lpp in standard form:

Min 𝑍 = 𝐶 𝑇 𝑋, s.t. 𝐴𝑋 = 𝐵 and 𝑋 ≥ 0 ;

Where: 𝐶 is column vector, 𝐴 is 𝑚𝑥𝑛 matrix, 𝑚 ≤ 𝑛, rank of 𝐴 is 𝑚 (i.e., 𝑟(𝐴) = 𝑚),


𝑥 ∈ 𝑅𝑛 , 𝑏 ∈ 𝑅𝑚 .

Since 𝑟(𝐴) = 𝑚, so 𝐴 has 𝑚 linearly independent columns.

𝑎11 𝑥1 + 𝑎12 𝑥2 + ⋯ + 𝑎1𝑛 𝑥𝑛 = 𝑏1


𝑎21 𝑥1 + 𝑎22 𝑥2 + ⋯ + 𝑎2𝑛 𝑥𝑛 = 𝑏2
𝐴𝑋 = 𝐵 ⇔ … … … … … … … … … … … … … … … … …
……………………………………………
𝑎𝑚1 𝑥1 + 𝑎𝑚2 𝑥2 + ⋯ + 𝑎𝑚𝑛 𝑥𝑛 = 𝑏𝑚

𝑎11 𝑎12 𝑎1𝑛 𝑏1


𝑎 𝑎 𝑎 𝑏
⇔ ( 21 ) 𝑥1 + ( 22 ) 𝑥2 + ⋯ + ( 2𝑛 ) 𝑥𝑛 = ( 2 )
⋮ ⋮ ⋮ ⋮
𝑎𝑚1 𝑎𝑚2 𝑎𝑚𝑛 𝑏 𝑚

⇔ 𝐴1 𝑥1 + 𝐴2 𝑥2 + ⋯ + 𝐴𝑛 𝑥𝑛 = 𝐵

After possibly rearranging linear independent (LI) columns, let 𝐴1 , 𝐴2 , …, 𝐴𝑚 , LI columns, then

Compiled by Dr. Habtamu Ts. 33 WkU-2024


Introduction to Optimization

𝑥1
𝑥2

1 2 𝑚
𝐴𝑋 = 𝐵 ⇔ (𝐴 , 𝐴 , …, 𝐴 , 𝐴𝑚+1 𝑛
,…,𝐴 ) 𝑥 𝑚 = 𝐵,
𝑥𝑚+1

( 𝑥𝑛 )

𝑥1 𝑥𝑚+1
𝑥 𝑥
Let 𝑀 = (𝐴1 , 𝐴2 , … , 𝐴𝑚 ) , 𝑁 = (𝐴𝑚+1 , 𝐴𝑚+2 , … , 𝐴𝑛 ), 𝑋𝑀 = ( 2 ) and 𝑋𝑁 = ( 𝑚+2 ).
⋮ ⋮
𝑥𝑚 𝑥𝑛

𝑋𝑀
Hence 𝐴 = (𝑀, 𝑁) and 𝑋 = ( ).
𝑋𝑁

Note that: M inverse (𝑀−1 ) exists as it is non-singular matrix (all of columns of 𝑀 are LI). Thus

𝑋𝑀
𝐴𝑋 = 𝐵 ⇔ (𝑀, 𝑁) ( ) = 𝐵 ⇔ 𝑀𝑋𝑀 + 𝑁𝑋𝑁 = 𝐵
𝑋𝑁

⟹ 𝑀−1 (𝑀𝑋𝑀 ) + 𝑀−1 (𝑁𝑋𝑁 ) = 𝑀−1 (𝐵)

⟹ 𝑋𝑀 + 𝑀 −1 (𝑁𝑋𝑁 ) = 𝑀−1 (𝐵)

⟹ 𝑋𝑀 = 𝑀 −1 (𝐵) − 𝑀−1 (𝑁𝑋𝑁 )

Definition:

a) 𝑀 is called basic matrix of the system.


b) 𝑁 is called non-basic matrix of the system.
c) 𝑋𝑀 is called basic variable matrix of the system.
d) 𝑋𝑁 is called non-basic variable matrix of the system.

Definition:

𝑋𝑀 𝑀−1 (𝐵) 𝑋
a) If 𝑋𝑁 = 0, i.e., 𝑋 = ( )=( ), then the solution 𝑋 = ( 𝑀 ) is called a basic
0 0 0
solution.
𝑋 𝑋
b) If 𝑋 = ( 𝑀 ) and 𝑋𝑀 ≥ 0, then 𝑋 = ( 𝑀 ) is called basic feasible solution (bfs).
0 0

Compiled by Dr. Habtamu Ts. 34 WkU-2024


Introduction to Optimization

𝑋𝑀
c) If 𝑋𝑀 > 0, then 𝑋 = ( ) is called non-degenerate basic feasible, otherwise it is called
0
degenerate basic feasible solution.

Example 2.1: Find all basic solutions of the set of equations given below.

𝑥1 + 2𝑥2 + 3𝑥3 + 4𝑥4 = 5


2𝑥1 + 𝑥2 + 𝑥3 + 2𝑥4 = 3
𝑥1 , 𝑥2 , 𝑥3 , 𝑥4 ≥ 0
1 2 3 4
Solution: 𝐴 = ( ) matrix 𝐴 have two linearly independent column, thus
2 1 1 2

𝑟(𝐴) = 2 = 𝑚.

1 2
3 4
Hence 𝐴 = ( ) = (𝑀, 𝑁), to form M we arbitrary select two columns of A. we can
2 1
1 2
do this in six ways. Some of these may be discarded because some column are linearly
𝑛 𝑛!
dependent (LD). That means it is ≤ ( ) = (𝑛−𝑚)!𝑚! where 𝑚 is the number of linearly
𝑚
independent rows and 𝑛 is the number of variables in the given system of linear equations.

4!
For example, here in this example = 6.
(4−2)!2!

Let 𝑀 = {𝑀1 , 𝑀2 , … , 𝑀𝑛 } be a non-singular (𝑚𝑥𝑚) sub matrix of 𝐴(i.e., |𝑀 | = 0, then


{𝑀1 , 𝑀2 , … , 𝑀𝑛 } is called a basis of standard form of linear programming.

Let {𝑀1 , 𝑀2 , … , 𝑀𝑛 } be a basis of standard form of linear programming and 𝑀 =


{𝑀1 , 𝑀2 , … , 𝑀𝑛 }, then it is called a feasible basis if and only if 𝑀−1 (𝐵) ≥ 0. Thus 𝑋𝑚 =
𝑀−1 (𝐵) is called basic feasible solution.

Now to find each 𝑀𝑖 (𝑖 = 1, 2, 3, … , 6) for this problem we will take random arrangement of
column of 𝐴:

1 2 1 3
𝑀1 = (𝐴1 , 𝐴2 ) = ( ) ⇒ det(𝑀1 ) = −3 , 𝑀2 = (𝐴1 , 𝐴3 ) = ( ) ⇒ det(𝑀2 ) = −5
2 1 2 1

1 4 2 3
𝑀3 = (𝐴1 , 𝐴4 ) = ( ) ⇒ det(𝑀3 ) = −6 , 𝑀4 = (𝐴2 , 𝐴3 ) = ( ) ⇒ det(𝑀4) = −1
2 2 1 1

Compiled by Dr. Habtamu Ts. 35 WkU-2024


Introduction to Optimization

2 4) 3 4)
𝑀5 = (𝐴2 , 𝐴4 ) = ( ⇒ det(𝑀5 ) = 0 , 𝑀6 = (𝐴3 , 𝐴4 ) = ( ⇒ det(𝑀6 ) = 6
1 2 1 2

All of 𝑀𝑖 (𝑖 = 1, 2, … , 6) are non-singular except 𝑀5 . Hence 𝑋𝑀1 , 𝑋𝑀2 , 𝑋𝑀3 , 𝑋𝑀4 , 𝑋𝑀6 are basic
variables associated with the basis matrices 𝑀1 , 𝑀2 , 𝑀3 , 𝑀4 and 𝑀6 respectively.

1 −1 2 1 −1 3 1 −2 4
Thus 𝑀1 −1 = 3 ( ), 𝑀2 −1 = ( ), 𝑀3 −1 = ( )
2 −1 5 2 −1 6 2 −1

−1 3 1 −2
𝑀4 −1 = ( ), 𝑀6 −1 = (−1 3 ).
1 −2 2 2

So that; 𝑋𝑀1 = 𝑀1 −1 𝐵 = 3 (−1 2 1 1 1 −1 3 1 4


) (5) = ( ), 𝑋𝑀2 = 𝑀2 −1 𝐵 = ( ) (5) = ( ),
1
2 −1 3 3 7 5 2 −1 3 5 7

1 −2 4 5 1 2 −1 3 5 4
𝑋𝑀3 = 𝑀3 −1 𝐵 = 6 ( ) ( ) = ( ), 𝑋𝑀4 = 𝑀4 −1 𝐵 = ( ) ( ) = ( ), and 𝑋𝑀6 =
2 −1 3 3 7 1 −2 3 −1
1 −2 5 −1
𝑀6 −1 𝐵 = (−1 3 ) ( ) = ( ).
2 2 3 2

1 7 4 7 1 7
Thus 𝑥1 = (3 , 3 , 0, 0), 𝑥 2 = (5 , 0, 5 , 0), 𝑥 3 = (3 , 0, 0, 6), 𝑥 4 = (0, 4, −1, 0)

and 𝑥 6 = (0, 0, −1, 2). Hence 𝑥 1 , 𝑥 2 , 𝑥 3 , 𝑥 4 and 𝑥 6 are basic solution and 𝑥 1 , 𝑥 2 and 𝑥 3 are
basic feasible solution as 𝑥 1 , 𝑥 2 and 𝑥 3 are positive (> 0) and also non-degenerate solution as
they are non-zero.

Theorem 2.1: (The fundamental theorem of Lpp) Consider a standard Lpp

Min 𝑍 = 𝐶 𝑇 𝑋 s.t. 𝐴𝑋 = 𝐵, 𝑋 ≥ 0. Where 𝐴 is 𝑚𝑥𝑛 matrix, 𝑚 ≤ 𝑛, 𝑟(𝐴) = 𝑚. If this LP has a


finite optimal solution, then the optimal solution is attained at least one besic feasible solution.

Example 2.2: Find the optimal solution of

Min 𝑍 = −𝑥1 + 𝑥2 + 4𝑥3 − 3𝑥4


2𝑥1 + 𝑥2 + 3𝑥3 + 2𝑥4 = 6
s.t. 3𝑥1 − 3𝑥2 + 5𝑥3 + 𝑥4 = 3
𝑥1 , 𝑥2 , 𝑥3 , 𝑥4 ≥ 0.
Solution: The set of constraints are 𝐴1 𝑥1 + 𝐴2 𝑥2 + 𝐴3 𝑥3 + 𝐴4 𝑥4 = 𝐵, where

Compiled by Dr. Habtamu Ts. 36 WkU-2024


Introduction to Optimization

2 1 3 2 6
𝐴1 = ( ), 𝐴2 = ( ), 𝐴3 = ( ), 𝐴4 = ( ) and 𝐵 = ( ).
3 −3 5 1 3

Since the given two constraints are linearly independent 𝑟(𝐴) = 2 = 𝑚. Therefore, there are at
4 4!
most ( ) = (4−2)!2! = 6 is the number of basis matrices. Hence the possibilities are:
2

2 1 2 3 2 2
𝑀1 = (𝐴1 , 𝐴2 ) = ( ), 𝑀2 = (𝐴1 , 𝐴3 ) = ( ), 𝑀3 = (𝐴1 , 𝐴4 ) = ( ),
3 −3 3 5 3 1

1 3 1 2 3 2
𝑀4 = (𝐴2 , 𝐴3 ) = ( ), 𝑀5 = (𝐴2 , 𝐴4 ) = ( ), 𝑀6 = (𝐴3 , 𝐴4 ) = ( ).
−3 5 −3 1 5 1

Thus, det(𝑀1 ) = −9, det(𝑀2 ) = 1, det(𝑀3 ) = −4, det(𝑀4 ) = 14, det(𝑀5 ) = 7 and
det(𝑀6 ) = −7.

Since det(𝑀) ≠ 0, ∀𝑖 = 1,2, . . , 6, so all these six sub matrices of 𝐴 are basis matrices.

Therefore, we have 6 basic solution 𝑥 1 , 𝑥 2 , 𝑥 3 , 𝑥 4 , 𝑥 5 and 𝑥 6 . Now

1 3 1 5 −3 1 −1 2 1 −5 −3
𝑀1 −1 = 9 ( ), 𝑀2 −1 = ( ), 𝑀3 −1 = ( ), 𝑀4 −1 = ( ),
3 2 −3 2 4 3 −2 14 3 1

1 1 −2 1 −1 2
𝑀5 −1 = 7 ( ), and 𝑀6 −1 = ( ). Thus the basic solutions are
3 1 7 5 −3

1 3 1 6 1 7 6 21
𝑋𝑀1 = 𝑀1 −1 𝐵 = ( ) ( ) = ( ), 𝑋𝑀2 = 𝑀2 −1 𝐵 = ( 5 −3) ( ) = ( ),
9 3 2 3 3 8 −3 2 3 −12

1 −1 2 6 0 1 −5 −3 6 1 21
𝑋𝑀3 = 𝑀3 −1 𝐵 = 4 ( ) ( ) = ( ), 𝑋𝑀4 = 𝑀4 −1 𝐵 = ( ) ( ) = ( ),
3 −2 3 3 14 3 1 3 14 21

1 1 −2 6 1 0 1 −1 2 6 1 0
𝑋𝑀5 = 𝑀5 −1 𝐵 = 7 ( ) ( ) = ( ) and 𝑋𝑀6 = 𝑀6 −1 𝐵 = ( ) ( ) = ( ).
3 1 3 7 21 7 5 −3 3 7 21

7 8
Thus the only basic feasible solutions are(but all are basic solution) 𝑥 1 = (3 , 3 , 0, 0),
21 21 21 21
𝑥 3 = (0, 0, 0, 3), 𝑥 4 = (0, 14 , 14 , 0), 𝑥 5 = (0, 0, 0, 7 ) and 𝑥 6 = (0, 0, 0, 7 ). To determine the

optimal solution we have to evaluate the objective function 𝑍 at each basic feasible solution and
by selecting the smallest of 𝑍 for this minimization case and we select the largest for
maximization problems.

Compiled by Dr. Habtamu Ts. 37 WkU-2024


Introduction to Optimization

1 −21 −63
Therefore 𝑍(𝑥 1 ) = 3, 𝑍(𝑥 3 ) = −9, 𝑍(𝑥 4 ) = = −1.5, 𝑍(𝑥 5 ) = 𝑍(𝑥 6 ) = = −4.5. Thus
14 14

the minimum value of 𝑍 is −9 at 𝑥 3 . Hence 𝑥 3 = (0, 0, 0, 3) is the minimum point (basic


feasible solution).

To show, the obtained solution is optimal solution we must compute all reduced cost of non-
basic variables, 𝑋 3 = (x1 , 𝑥2 , 𝑥3 , x4 ) = (0, 0, 0, 3); x1 and x4 are basic variables, and 𝑥2 and 𝑥3
are non-basic variable from basic feasible solution.

From objective function; Min = −𝑥1 + 𝑥2 + 4𝑥3 − 3𝑥4 , coefficients of non-basic variables
form a row matrix 𝐶𝑁 = (1, 4) and coefficients of basic variables form a row matrix
𝐶𝑀 = (−1, −3). And coefficients of basic variables from the constraints form a matrix
2 2 1 −1 2
𝑀 = 𝑀3 = (𝐴1 , 𝐴4 ) = ( ) ⇒ 𝑀−1 = 𝑀3 −1 = ( ) and coefficients of non basic
3 1 4 3 −2
1 3
variables from the constraints form a matrix 𝑁 = 𝑀4 = (𝐴2 , 𝐴3 ) = ( ).
−3 5

The following formula tells us, the obtained basic feasible solution is optimal.

−1 1
4 2 1 3 −9 −1
Δ𝑍 = 𝐶̅ = 𝐶𝑀 𝑀−1 𝑁 − 𝐶𝑁 = (−1, −3) ( 3 1) (−3 ) − (1, 4) = ( 2 ) = (̅̅̅
𝐶2 ̅̅̅
𝐶2 ).
5 2
4 2

Since Δ𝑍 = 𝐶̅ < 0, the obtained basic feasible solution is optimal solution and
𝑋 3 = (x1 , 𝑥2 , 𝑥3 , x4 ) = (0, 0, 0, 3) is minimum point. If 𝐶̅ > 0, the obtained solution is not
optimal. In the case of maximization problem the obtained basic feasible solution is optimal
solution if 𝐶̅ ≥ 0.

Example 2.3: Max 𝑍 = 6𝑥1 + 5𝑥2


s.t. 𝑥1 + 𝑥2 ≤ 5
3𝑥1 + 2𝑥2 ≤ 12
𝑥1 , 𝑥2 ≥ 0.
Solution: the standard form of this Lpp can be expressed as:

Max 𝑍 = 6𝑥1 + 5𝑥2 + 0𝑆1 + 0𝑆2


s.t. 𝑥1 + 𝑥2 + 𝑆1 = 5
3𝑥1 + 2𝑥2 + 𝑆2 = 12

Compiled by Dr. Habtamu Ts. 38 WkU-2024


Introduction to Optimization

𝑥1 , 𝑥2 , 𝑆1 , 𝑆2 ≥ 0.
Since 𝑆1 and 𝑆2 are basic variables, by making 𝑥1 and 𝑥2 zero, we have

Iteration 1: solve the basic variable interms of non-basics;

𝑆 5
𝑆1 = 5 − 𝑥1 − 𝑥2 and 𝑆2 = 12 − 3𝑥1 − 2𝑥2;⇒ ( 1 ) = ( ) are basic solutions.
𝑆2 12

Thus 𝑍 = 6𝑥1 + 5𝑥2 , since 𝑥1 = 𝑥2 = 0, 𝑍 = 0 (no production).

Since 𝑍 = 0, we need to increase 𝑥1 and 𝑥2 or both. Since the coefficient of 𝑥1 is large, it is


better to increase 𝑥1 up to 5 or 4 choose min{5, 4} = 4.

Iteration 2: solve for 𝑥1 and 𝑆1 interms of non-basic variables;

2 1 𝑥1 4
3𝑥1 = 12 − 2𝑥2 − 𝑆2 ⇒ 𝑥1 = 4 − 3 𝑥2 − 3 𝑆2 ⟹ (𝑆 ) = ( ), as
1 1

2 1 1 1
𝑆1 = 5 − 𝑥1 − 𝑥2 = 5 − (4 − 3 𝑥2 − 3 𝑆2 ) − 𝑥2 = 1 − 3 𝑥2 + 3 𝑆2 .

2 1
Thus 𝑍 = 6 (4 − 3 𝑥2 − 3 𝑆2 ) + 5𝑥2 = 24 + 𝑥2 − 2𝑆2 . Since 𝑍 = 24 again also it is better to

increase 𝑥2 , thus 𝑥2 up to 3 or 6. Choose min{3, 6} = 3. Since coefficient of 𝑆2 is negative to


increase 𝑍, 𝑆2 must decreased to negative, but it violet the standard Lpp equation, hence 𝑆2 ≥
0.

Iteration 3: solve for 𝑥1 and 𝑥2 interms of non-basic variables;

1 1
𝑥
3 2
= 1 − 𝑆1 + 3 𝑆2 ⇒ 𝑥2 = 3 − 3𝑆1 + 𝑆2 and

2 1
𝑥1 = 4 − 3 (3 − 3𝑆1 + 𝑆2 ) − 3 𝑆2 = 2 + 2𝑆1 − 𝑆2 , Thus

𝑍 = 24 + (3 − 3𝑆1 + 𝑆2 ) − 2𝑆2

= 27 − 3𝑆1 − 𝑆2 .

Now to increase 𝑍, we should have to decrease 𝑆1 and 𝑆2 because their coefficient is negative.
But it violet that 𝑆1 , 𝑆2 ≥ 0, hence 𝑆1 = 𝑆2 = 0. Thus the basic feasible solution is

(𝑥1 , 𝑥2 ) = (2,3) and Max 𝑍 = 27.

Compiled by Dr. Habtamu Ts. 39 WkU-2024


Introduction to Optimization

Exercise 2.1

1- Find all basic feasible solution of


a) Max 𝑍 = 3𝑥1 + 2𝑥2 + 𝑥3 s.t.
𝑥1 + 2𝑥2 + 2𝑥3 = 10
s.t. 𝑥1 + 𝑥2 + 3𝑥3 = 6
𝑥1 , 𝑥2 , 𝑥3 ≥ 0.
b) Min 𝑍 = 3𝑥1 + 𝑥2 + 2𝑥3 − 𝑥4 s.t.
2𝑥1 + 4𝑥2 − 𝑥3 = 6
s.t. 3𝑥1 + 𝑥2 − 𝑥4 = 4
𝑥1 , 𝑥2 , 𝑥3 , 𝑥4 ≥ 0

2.2. Simplex method using tableau

To solve 𝐿𝑃𝑃s with simplex method using matrices is not always possible. Because it difficult to
find an inverse of a matrix for each of different size. So that an efficient method to solve 𝐿𝑃𝑃s
using simplex method is simplex tableaus. Let us start using a simple example.

Example 2.1.1: A flair furniture company has the following models:

Maximize the profit (𝑍) = $70𝑇 + $50𝐶 (objective function)


Subject to 2𝑇 + 1𝐶 ≤ 100 (painting hrs. constraint)
4𝑇 + 3𝐶 ≤ 240 (Carpentry hrs. constraint)
𝑇, 𝐶 ≥ 0 (Non negativity constraints)
Where: 𝐶 = number of chairs produced, 𝑇 = number of tables produced

The first step of the simplex method requires that we convert each inequality constraint (except
nonnegativity constraints) in an Lp formulation into an equation. Less-than-or-equal-to con-
straints (≤) such as in the flair problem are converted to equations by adding a slack variable to
each constraint. Slack variables represent unused resources; these may be in the form of time on
a machine, labor hours, money, warehouse space, or any number of such resources in various
business problems. In our case at hand, we can let:

𝑆1 = slack variable representing unused hours in the painting department

Compiled by Dr. Habtamu Ts. 40 WkU-2024


Introduction to Optimization

𝑆2 = slack variable representing unused hours in the carpentry department

Hence the constraints to the problem may now be written as:

2𝑇 + 1𝐶 + 𝑆1 = 100 and 4𝑇 + 3𝐶 + 𝑆2 = 240

Thus, if the production of tables (𝑇) and chairs (𝐶) uses less than 100 hours of painting time
available, the unused time is the value of the slack variable, For example, if 𝑇 = 0 and 𝐶 = 0 (in
other words, if nothing is produced), we have 𝑆1 = 100 hours of slack time in the painting
department. If Flair produces 𝑇 = 40 tables and 𝐶 =10 chairs, then

2𝑇 + 1𝐶 + 𝑆1 = 100 ⟹ 2(40) + 1(10) + 𝑆1 = 100 ⇒ 𝑆1 = 10 and there will be 10 hours of


slack, or unused, painting time available.

To include all variables in each equation, which is a requirement of the next simplex step, slack
variables not appearing in an equation are added with a coefficient of 0. This means, in effect,
that they have no influence on the equations in which they are inserted; but it does allow us to
keep tabs on all variables at all times. The equations now appear as follows:

2𝑇 + 1𝐶 + 1𝑆1 + 0𝑆2 = 100


4𝑇 + 3𝐶 + 0𝑆1 + 1𝑆2 = 240
𝑇, 𝐶, 𝑆1 , 𝑆2 ≥ 0
Because slack variables yield no profit, they are added to the original objective function with 0
profit coefficients. Then objective function becomes 𝑍 = $70𝑇 + $50𝐶 + $0𝑆1 + $0𝑆2 .

The simplex method begins with an initial feasible solution (solutions 𝑆1 and 𝑆2 ) for in which all
real variables (such as 𝑇 and 𝐶) are set equal to 0. This trivial solution always produces a profit
of $0, as well as slack variables equal to the constant (right-hand-side) terms in the constraint
equations. It’s no a very exciting solution in terms of economic returns, but it is one of the
original corner point solutions (see figure 2.1). As mentioned, the simplex method will start at
this corner point (𝐴) and then move up or over to the corner point that yields the most improved
profit (𝐵 or 𝐷). Finally, the technique will move to a new corner point (𝐶), which happens to be
the optimal solution to the Flair Furniture problem. The simplex method considers only feasible

Compiled by Dr. Habtamu Ts. 41 WkU-2024


Introduction to Optimization

solutions and hence will touch no possible combinations other than the corner points of the
shaded region in fig 2.1.

Fig 2.1

The first simplex tableau: To simplify handling the equations and objective function in an LP
problem, we place all of the coefficients into tabular form. The first simplex tableau is shown in
table 2.1.

𝐶𝑗 ⇒ solution mix $70 $50 $0 $0 quantity



T C 𝑆1 𝑆2
$0 𝑆1 2 1 1 0 100
$0 𝑆2 4 3 0 1 240
𝑍𝑗 $0 $0 $0 $0 $0
𝐶𝑗 − 𝑍𝑗 $70 $50 $0 $0

Table 2.1

The numbers (2,1,1,0) in the first row represent the coefficients of the first equation, namely,
2𝑇 + 1𝐶 + 1𝑆1 + 0𝑆2 . The numbers (4,3,0,1) in the second row are the algebraic equivalent of
the constraint 4𝑇 + 3𝐶 + 0𝑆1 + 1𝑆2 .

As suggested earlier, we begin the initial solution procedure at the origin, where 𝑇 = 0 and 𝐶 =
0.The values of the other two variables must then be nonzero, so 𝑆1 = 100 and 𝑆2 = 240.
These two slack variables constitute the initial solution mix; their values are found in the quantity
(or right-hand-side [RHS]) column. Because 𝑇 and 𝐶 are not in the solution mix, their initial
values are automatically equal to 0.This initial solution is a basic feasible solution.
Compiled by Dr. Habtamu Ts. 42 WkU-2024
Introduction to Optimization

Note that: In this example 𝑇 and 𝐶 are called non-basic variables while 𝑆1 and 𝑆2 are called
basic variables until 𝑆1 and 𝑆2 becomes zero (at the end of our solution);then after 𝑇 and 𝐶
changed to basic variables while 𝑆1 and 𝑆2 becomes non-basic variables.

2 1
From the above table we have; under 𝑇 are the coefficients ( ), under 𝐶 are ( ), under 𝑆1 are
4 3
1 0
( )and under 𝑆2 are ( ) . But what is their interpretation? The numbers in the body of the
0 1
simplex tableau (see table 2.1) can be thought of as substitution rates. For example, suppose we
now wish to make 𝑇 larger than 0, that is, produce some tables. For every unit of the 𝑇 product
introduced into the current solution, 2 units of 𝑆1 and 4 units of 𝑆2 must be removed from the
solution. This is so because each table requires 2 hours of the currently unused painting
department slack time, 𝑆1 . It also takes 4 hours of carpentry time; hence 4 units of variable 𝑆2
must be removed from the solution for every unit of 𝑇 that enters. Similarly, the substitution
rates for each unit of 𝐶 that enters the current solution are 1 unit of 𝑆1 and 3 units of 𝑆1 .

Another point that you are reminded of throughout this chapter is that for any variable ever to
appear in the solution mix column, it must have the number 1 someplace in its column and 0 s in
1
every other place in that column. We see that column 𝑆1 contains ( ) so variable 𝑆1 is in the
0
0
solution. Similarly, the column 𝑆2 is ( ), so is also 𝑆2 in the solution.
1

We now continue to the next step in establishing the first simplex tableau. We add a row to
reflect the objective function values for each variable. These contribution rates, called 𝐶𝑗 appear
just above each respective variable, as shown above. The unit profit rates are not just found in
the top 𝐶𝑗 row: in the leftmost column, 𝐶𝑗 indicates the unit profit for each variable currently in
the solution mix. If were removed from the solution and replaced, for example, by 𝐶, $50 would
appear in the column just to the left of the term 𝐶.

The 𝑍𝑗 and 𝐶𝑗 − 𝑍𝑗 rows we can complete the initial Flair Furniture simplex tableau by adding
two final rows. These last two rows provide us with important economic information, including
the total profit and the answer as to whether the current solution is optimal. We compute the 𝑍𝑗
value for each column of the initial solution in Table 2.1 by multiplying the 0 contribution value
of each number in the 𝐶𝑗 column by each number in that row and the 𝑗th column, and summing.

Compiled by Dr. Habtamu Ts. 43 WkU-2024


Introduction to Optimization

The 𝑍𝑗 value for the quantity column provides the total contribution (gross profit in this case) of
the given solution:

𝑍𝑗 (for gross profit)=(profit per unit 𝑆1 )×(number of units of 𝑆1 )+ (profit per unit 𝑆2 )×(number
of units of 𝑆2 )= $0 × 100 units+$0 × 240 units= $0 profit.

The 𝑍𝑗 values for the other columns (under the variables 𝑇, 𝐶, 𝑆1 and 𝑆2 ) represent the gross
profit given up by adding one unit of this variable into the current solution. Their calculations are
as follows:

𝑍𝑗 =(profit per unit 𝑆1 )×(substitution rate in row 1)+ (profit per unit 𝑆2 )×( substitution rate in
row 2). Thus,

𝑍𝑗 (for column 𝑇)= ($0)(2) + ($0)(4) = $0, 𝑍𝑗 (for column 𝐶)= ($0)(1) + ($0)(3) = $0,
𝑍𝑗 (for column 𝑆1 )= ($0)(1) + ($0)(0) = $0, 𝑍𝑗 (for column 𝑆2 )= ($0)(0) + ($0)(1) = $0. We
see that there is no profit lost by adding one unit of either 𝑇(tables), 𝐶(chairs), 𝑆1 ,or 𝑆2 .

The 𝐶𝑗 − 𝑍𝑗 number in each column represents the net profit, that is, the profit gained minus the
profit given up, that will result from introducing 1 unit of each product or variable into the
solution. It is not calculated for the quantity column.

It is obvious to us when we compute a profit of $0 that the initial solution is not optimal. By
examining the numbers in the 𝐶𝑗 − 𝑍𝑗 row of Table 2.1, we see that the total profit can be
increased by $70 for each unit of 𝑇 (tables) and by $50 for each unit of 𝐶 (chairs) added to the
solution mix. A negative number in the 𝐶𝑗 − 𝑍𝑗 row would tell us that profits would decrease if
the corresponding variable were added to the solution mix. An optimal solution is reached in the
simplex method when the 𝐶𝑗 − 𝑍𝑗 row contains no positive numbers. Such is not the case in our
initial tableau.

After an initial tableau has been completed, we proceed through a series of five steps to compute
all the numbers needed in the next tableau. The following are the five steps for maximization Lp:

Compiled by Dr. Habtamu Ts. 44 WkU-2024


Introduction to Optimization

1) Determine which variable to enter into the solution mix next. One way of doing this is
by identifying the column, and hence the variable, with the largest positive number in
the
𝐶𝑗 − 𝑍𝑗 row of the preceding tableau. This means that we will now be producing some of
the product contributing the greatest additional profit per unit. The column identified in this
step is called the pivot column.
2) Determine which variable to replace. Because we have just chosen a new variable to
enter the solution mix, we must decide which basic variable currently in the solution
will have to leave to make room for it. Step 2 is accomplished by dividing each amount
in the quantity column by the corresponding number in the column selected in step 1.
The row with the smallest nonnegative number calculated in this fashion will be
replaced in the next tableau.
(This smallest number, by the way, gives the maximum number of units of the variable that
may be placed in the solution.) This row is often referred to as the pivot row. The number
at the intersection of the pivot row and pivot column is referred to as the pivot number.
3) Compute new values for the pivot row. To do this, we simply divide every number in
the row by the pivot number.
4) Compute the new values for each remaining row. (In our Flair Furniture problem there
are only two rows in the LP tableau, but most larger problems have many more rows.)
All remaining row(s) are calculated as follows:
(New row numbers)
=(Numbers in old row)−(Number above or below pivot number)(corresponding number in
the new row, that is, the row replaced in step 3).
5) Compute the 𝑍𝑗 and 𝐶𝑗 − 𝑍𝑗 rows, as demonstrated in the initial tableau. If all numbers
in
the 𝐶𝑗 − 𝑍𝑗 row are 0 or negative, an optimal solution has been reached. If this is not the
case, return to step 1.

Now that we have listed the five steps needed to move from an initial solution to an improved
solution, we apply them to the Flair Furniture problem. Our goal is to add a new variable to the
solution mix, or basis, to raise the profit from its current tableau value of $0.

Compiled by Dr. Habtamu Ts. 45 WkU-2024


Introduction to Optimization

Following the above five steps we get the 2nd table below, which allows us to gain the higher
profit;

𝐶𝑗 ⇒ Solution $70 $50 $0 $0 quantity



mix T C 𝑆1 𝑆2
$70 𝑇 1 0.5 0.5 0 50
$0 𝑆2 0 1 -2 1 40
𝑍𝑗 $70 $35 $35 $0 $3,500
𝐶𝑗 − 𝑍𝑗 $0 $15 -$35 $0
Table 2.2

At this point, the solution point of 50 tables and 0 chairs (𝑇 = 50, 𝐶 = 0) generates a profit of
$3,500. 𝑇 is a basic variable; 𝐶 is a nonbasic variable. We also see in Table 2.2 slack variable
𝑆2 , representing the amount of unused time in the carpentry department, is in the basis. It has a
value of 40, implying that 40 hours of carpentry time remain available. Slack variable 𝑆1 is
nonbasic and has a value of 0 hours. There is no slack time in the painting department.

We mentioned earlier that the substitution rates are the coefficients in the heart of the tableau.
Look at the 𝐶 column. If 1 unit of 𝐶 (1 chair) is added to the current solution, 0.5 units of 𝑇 and
1 unit of must be given up. This is because the solution tables uses up all 100 hours of time in
the painting department. (The original constraint, you may recall, was 2𝑇 + 1𝐶 + 𝑆1 =100). To
capture the 1 painting hour needed to make 1 chair, 0.5 of a table less must be produced. This
frees up 1 hour to be used in making 1 chair. But why must 1 unit of 𝑆2 (i.e., 1 hour of carpentry
time) be given up to produce 1 chair? The original constraint was 4𝑇 + 3𝐶 + 𝑆2 = 240 hours of
carpentry time. Doesn’t this indicate that 3 hours of carpentry time are required to produce 1 unit
of 𝐶? The answer is that we are looking at marginal rates of substitution. Adding 1 chair
replaced 0.5 table. Because 0.5 table required (0.5 × 4 hours) = 2 hours of carpentry time, 2
units of 𝑆2 are freed. Thus, only 1 more unit of 𝑆2 is needed to produce 1 chair.

Just to be sure you have this concept down pat, let’s look at one more column, 𝑆1 , as well. The
0.5
coefficients are ( ). These substitution rate values mean that if 1 hour of slack painting time
−2
is added to the current solution, 0.5 of a table (𝑇) less will be produced. However, note that if 1
unit of 𝑆1 is added into the solution, 2 hours of carpentry time 𝑆2 will no longer be used. These

Compiled by Dr. Habtamu Ts. 46 WkU-2024


Introduction to Optimization

will be added to the current 40 slack hours of carpentry time. Hence, a negative substitution rate
means that if 1 unit of a column variable is added to the solution, the value of the corresponding
solution (or row) variable will be increased. A positive substitution rate tells us that if 1 unit of
the column variable is added to the solution, the row variable will decrease by the rate. Can you
interpret the rates in the 𝑇 and 𝑆2 columns now?

The row 𝐶𝑗 − 𝑍𝑗 is important to us for two reasons. First, it indicates whether the current solution
is optimal. When there are no positive numbers in the bottom row, an optimum solution to an LP
maximization problem has been reached. In the case of Table 2.2, we see that values for columns
𝑇, 𝑆1 , and 𝑆2 are 0 or negative. The value for column 𝐶 (15) means that the net profit can be
increased by $15 for each chair added into the current solution.

Because the 𝐶𝑗 − 𝑍𝑗 value for 𝑇 is 0, for every unit of 𝑇 added the total profit will remain
unchanged, because we are already producing as many tables as possible. A negative number,
such as the 35 in the 𝑆1 column, implies that total profit will decrease by $35 if 1 unit of 𝑆1 is
added to the solution. In other words, making one slack hour available in the painting department
(𝑆1 = 0 currently) means that we would have to produce one-half table less. Since each table
results in a $70 contribution, we would be losing for a net loss of 0.5 × $70 = $35, for net
loss of $35. The second reason, of course, is that we use the row to determine which variable
will enter the solution next. Since an optimal solution has not been reached yet, let’s proceed to
the third simplex tableau.

Since not all numbers in the 𝐶𝑗 − 𝑍𝑗 row of the latest tableau are 0 or negative, the previous
solution is not optimal, and we must repeat the five simplex steps. Following the above five steps
we get the 3nd table below, which allows us to gain the highest profit;

𝐶𝑗 ⇒ Solution mix $70 $50 $0 $0 quantity



T C 𝑆1 𝑆2
$70 𝑇 1 0 1.5 -0.5 30
$50 𝐶 0 1 -2 1 40
𝑍𝑗 $70 $50 $5 $15 $4,100
𝐶𝑗 − 𝑍𝑗 $0 $0 -$5 -$15

Table 2.3

Compiled by Dr. Habtamu Ts. 47 WkU-2024


Introduction to Optimization

The solution is 30 tables, 40 chairs, 0 slack hours in the painting department, 0 slack hours in
the carpentry department and the profit is $4,100 for the optimal solution. These all satisfies the
given constraints and objective function.

Example 2.1.2: A factory manufactures two products 𝐴 and 𝐵 on three machines 𝑋, 𝑌, and 𝑍.
Product 𝐴 requires 10 hours of machine 𝑋 and 5 hours of machine 𝑌 a one our of machine 𝑍.
The requirement of product 𝐵 is 6 hours, 10 hours and 2 hours of machine 𝑋, 𝑌 and 𝑍
respectively. The profit contribution of products 𝐴 and 𝐵 are 𝑅𝑠. 23 per unit and 𝑅𝑠. 32 per unit
respectively. In the coming planning period the available capacity of machines 𝑋, 𝑌 and 𝑍 are
2500 hours, 2000 hours and 500 hours respectively. Find the optimal product mix for
maximizing the profit.

Solution: The given data is:-

Machines Products Capacity in hours


A B
Hrs. Hrs.
X 10 6 2500
Y 5 10 2000
Z 1 2 500
Profit/unit Rs 23 32 ----

Let the company manufactures 𝑎 units of 𝐴 and 𝑏 units of 𝐵. Then the inequalities of the
constraints (machine capacities) are:

Maximize 𝑍 = 23𝑎 + 32𝑏 s.t. objective function

10 𝑎 + 6 𝑏 ≤ 2500
{5 𝑎 + 10 𝑏 ≤ 2000 (structural constraints)
𝑎 + 2 𝑏 ≤ 500

And both 𝑎 and 𝑏 are ≥ 0. Non negativity constraints.

Now the above inequalities are to be converted into equations.

Compiled by Dr. Habtamu Ts. 48 WkU-2024


Introduction to Optimization

Take machine 𝑋: One unit of product 𝐴 requires 10 hours of machine 𝑋 and one unit of product
𝐵 require 6 hours. But company is manufacturing 𝑎 units of 𝐴 and 𝑏 units of 𝐵, hence both put
together must be less than or equal to 2,500 hours. Suppose 𝑎 = 10 and 𝑏 = 10 then the total
consumption is 10 × 10 + 6 × 10 = 160 hours. That is out of 2,500 hours, 160 hours are
consumed, and 2,340 hours are still remaining idle. So if we want to convert it into an equation
then 100 + 60 + 2,340 = 2,500. As we do not know the exact values of decision variables 𝑎
and 𝑏 how much to add to convert the inequality into an equation. For this we represent the idle
capacity by means of a slack variable represented by 𝑆. Slack variable for first inequality is 𝑆1 ,
that of second one is 𝑆2 and that of ‘𝑛’𝑡ℎ inequality is 𝑆𝑛 .

Regarding the objective function, if we sell one unit of 𝐴 it will fetch the company 𝑅𝑠. 23 per
unit and that of 𝐵 is 𝑅𝑠. 32 per unit. If company does not manufacture 𝐴 or 𝐵, all resources
remain idle. Hence the profit will be Zero rupees. This clearly shows that the profit contribution
of each hour of idle resource is zero. In linear Programming language, we can say that the
company has capacity of manufacturing 2,500 units of 𝑆1 , i.e., 𝑆1 is an imaginary product, which
require one hour of machine 𝑋 alone. Similarly, 𝑆2 is an imaginary product requires one hour of
machine 𝑌 alone and 𝑆3 is an imaginary product, which requires one hour of machine 𝑍 alone. In
simplex language 𝑆1 , 𝑆2 and 𝑆3 are idle resources. The profit earned by keeping all the machines
idle is Rs.0. Hence the profit contributions of 𝑆1 , 𝑆2 and 𝑆3 are are Rs.0 per unit. By using this
concept, the inequalities are converted into equations as shown below:

Maximize 𝑍 = 23𝑎 + 32𝑏 + 0𝑆1 + 0𝑆2 + 0𝑆3


10 𝑎 + 6 𝑏 + 1𝑆1 = 2500
s.t. 5 𝑎 + 10 𝑏 + 1𝑆2 = 2000
1 𝑎 + 2 𝑏 + 1𝑆3 = 500
𝑎, 𝑏, 𝑆1 , 𝑆2 , 𝑆3 ≥ 0.
Note that: There are various forms of simplex tableau.

Compiled by Dr. Habtamu Ts. 49 WkU-2024


Introduction to Optimization

Programme Profit per unit in Rs. Quantity in 23 32 0 0 0 Replacement


(basic variable) 𝐶𝑏 units 𝑎 𝑏 𝑆1 𝑆2 𝑆3 ratio

𝐶𝑗 ⇓

𝑆1 0 2500 10 6 1 0 0 2500/6 = 416.7


𝑆2 0 2000 5 10 0 1 0 2000/10 = 200
𝑆3 0 500 1 2 0 0 1 500/2 = 250
𝑍𝑗 (gross profit) 0 0 0 0 0
𝐶𝑗 − 𝑍𝑗 23 32 0 0 0
(net-profit )

Table 2.4.

Table: 1. Initial Programme 𝑎 = 0, 𝑏 = 0, 𝑆 = 2500, 𝑆 = 2000 and 𝑆 = 500 and 𝑍 = 𝑅𝑠.0.00

The interpretation of the elements in the first table:

1) In the first column, programme column, are the problem variables or basis variables that are
included in the solution or the company is producing at the initial stage. These are 𝑆1 , 𝑆2 and
𝑆3 , which are known as basic variables.
2) The second column, labeled as Profit per unit in Rupees shows the profit co-efficient of the
basic variables i.e., 𝐶𝑏 . In this column we enter the profit co-efficient of the variables in the
program. In table 1, we have 𝑆1 , 𝑆2 and 𝑆3 as the basic variables having Rs.0.00 as the profit
and the same is entered in the programme.
3) In the quantity column, that is 3rd column, the values of the basic variables in the programme
or solution i.e., quantities of the units currently being produced are entered. In this table, 𝑆1 ,
𝑆2 and 𝑆3 are being produced and the units being produced (available idle time) is entered
i.e., 2500, 2000 and 500 respectively for 𝑆1 ,𝑆2 and 𝑆3 . The variables that are not present in
this column are known as non-basic variables. The values of non-basis variables are zero;
this is shown at the top of the table (solution row).
4) In any programme, the profit contribution, resulting from manufacturing the quantities of
basic variables in the quantity column is the sum of product of quantity column element
and the profit column element. In the present table the total profit is
𝑍 = 2500 × 0 + 2000 × 0 + 500 × 0 = 𝑅𝑠. 0.00.

Compiled by Dr. Habtamu Ts. 50 WkU-2024


Introduction to Optimization

5) The elements under column of non-basic variables, i.e., 𝑎 and 𝑏 (or the main body of the
matrix) are interpreted to mean physical ratio of distribution if the programme consists of
only slack variables as the basic variables. Physical ratio of distribution means, at this stage,
if company manufactures one unit of ‘𝑎’ then 10 units of 𝑆1 , 5 units of 𝑆2 and 1 unit of 𝑆3
will be reduced or will go out or to be scarified. By sacrificing the basic variables, the
company will lose the profit to an extent the sum of product of quantity column element and
the profit column element. At the same time it earns a profit to an extent of product of profit
co-efficient of incoming variable and the number in the quantity column against the just
entered (in coming) variable.
6) Coming to the entries in the identity matrix, the elements under the variables, 𝑆1 , 𝑆2 and 𝑆3
are unit vectors, hence we apply the principle of physical ratio of distribution, one unit of 𝑆1
replaces one unit of 𝑆1 and so on. Ultimately the profit is zero only. In fact while doing
successive modifications in the programme towards getting optimal; solution, finally the unit
matrix transfers to the main body. This method is very much similar with Gauss Jordan
method (G. J.) method in matrices, where we solve simultaneous equations by writing in the
form of matrix. The only difference is that in G.J method, the values of variables may be
negative, positive or zero. But in Simplex method as there is non-negativity constraint, the
negative values for variables are not accepted.
7) 𝐶𝑗 at the top of the columns of all the variables represent the coefficients of the respective
variables of the objective function.
8) The number in the 𝑍𝑗 row under each variable gives the total gross amount of outgoing profit
when we consider the exchange between one unit of column, variable and the basic variables.

The number in the net evaluation row, 𝐶𝑗 – 𝑍𝑗 row gives the net effect of exchange
between one unit of each variable and basic variables. This they are zeros under columns of
𝑆1 , 𝑆2 and and 𝑆3 . A point of interest to note here is the net evaluation element of any basis
variable (or problem variable) is zero only. Suppose variable ‘𝑎’ becomes basis variable, the
entry in net evaluation row under ‘𝑎’ is zero and so on. Generally the entry in net evaluation
row is known as opportunity cost. Opportunity cost means for not including a particular
profitable variable in the programme, the manufacturer has to lose the amount equivalent to
the profit contribution of the variable. In the present problem the net evaluation under the

Compiled by Dr. Habtamu Ts. 51 WkU-2024


Introduction to Optimization

variable ‘𝑎’ is 𝑅𝑠. 23 per unit and that of ‘𝑏’ is 𝑅𝑠. 32 per unit. Hence the if the company
does not manufacture ‘𝑎’ at this stage it has to face a penalty of 𝑅𝑠. 23 for every unit of ‘a’
for not manufacturing and the same of product variable ‘𝑏’ is 𝑅𝑠. 32. Hence the opportunity
cost of product ‘𝑏’ is higher than that of ‘𝑎’, hence ‘𝑏’ will be the incoming variable.

Now we have to use those five steps to produce the next simplex tableau until we reach the
optimal solution. (Table 2.5)

Programme Profit per Quantity in 23 32 0 0 0 Replacement


(basic variable) unit in Rs. units 𝑎 𝑏 𝑆1 𝑆2 𝑆3 ratio
𝐶𝑗 ⇒ ⇓ 𝐶𝑏

𝑆1 0 1,300 7 0 1 -0.6 0 1300/7 = 185.7


𝑏 32 200 0.5 1 0 0.10 0 400
𝑆3 0 100 0 0 0 -0.5 1 -----
𝑍𝑗 (gross profit) 16 32 0 3.2 0
𝐶𝑗 − 𝑍𝑗 7 0 0 -3.2 0
(net-profit )

Hence we got: 𝑆1 = 1,300, 𝑆2 = 0, 𝑆3 = 100, 𝑎 = 0, 𝑏 = 200, 𝑍 = 32 × 200 = 𝑅𝑠. 6400.

The next simplex tableau is:

Problem Profit per Quantity in 𝐶𝑗 ⇓ ⇒ 32 0 0 0 Replacement


Variable unit in Rs. units 23 𝑏 𝑆1 𝑆2 𝑆3 ratio
𝑎
𝑎 23 185.7 1 0 0.143 -0.086 0
𝑏 32 107.14 0 1 -0.07 0.143 0
𝑆3 0 100 0 0 0 -0.02 1
𝑍𝑗 (gross profit) 23 32 1 2.6 0
𝐶𝑗 − 𝑍𝑗 0 0 -1.0 -2.6 0
(net-profit )
Table 2.6.

Hence the profit is 𝑍 = 185.7 × 23 + 107.14 × 32 = 𝑅𝑠. 7,700

Shadow price = 1 × 2500 + 2.6 × 2000 = 𝑅𝑠. 2500 + 5200 = 𝑅𝑠. 7700

Compiled by Dr. Habtamu Ts. 52 WkU-2024


Introduction to Optimization

As all the elements of net evaluation row are negative elements or zeros, the solution is optimal.
Also the profit earned is equal to the shadow price. Thus the company has to manufacture:185.7
units of 𝐴 and 107.14 units of 𝐵 and the optimal return is 𝑍 = 𝑅𝑠. 7,700.

Note that: The simplex tableau can be expressed as follow:

For LPP of the form; Max 𝑍 = 𝐶 𝑇 𝑋, s.t. 𝐴𝑋 ≤ 𝐵, 𝑋, 𝑆 ≥ 0

𝐶𝑖 All variables ⇒ 𝑥1 𝑥2 … 𝑥𝑛 , 𝑆1 𝑆2 … 𝑆𝑚 quantity replacement


ratio
Basic variable ⇓ 𝐵𝑖

0 𝑆1 𝑎11 𝑎12 … 𝑎1𝑛 , 1 0 … 0 𝑏1 𝑏1


𝑎1𝑘
0 𝑆2 𝑎21 𝑎22 … 𝑎2𝑛 , 0 1 … 0 𝑏2 𝑏2
𝑎2𝑘
. . . . .
. . . . .
. . . . .
0 𝑆𝑚 𝑎𝑚1 𝑎𝑚2 … 𝑎𝑚𝑛 , 0 0 … 1 𝑏𝑚 𝑏𝑚
𝑎𝑚𝑘
𝐶𝑗 𝑐1 𝑐2 … 𝑐𝑛 , 0 0 … 0
𝑍𝑗 0 0 … 0, 0 0 … 0 0
𝐶𝑗 − 𝑍𝑗 𝑐1 𝑐2 … 𝑐𝑛 , 0 0 … 0
Table 2.7

Note that:

 𝐶𝑖 (𝑖 = 1,2, … , 𝑚) are cost of basic variables in the objective function.


 𝐶𝑗 (𝑗 = 1,2, … , 𝑛) are cost of variables in the objective function.
 𝑥𝑖 (𝑖 = 1,2, … , 𝑛) are non basic variables.
 𝑆𝑖 (𝑖 = 1,2, … , 𝑚) are basic variables.
 𝑍𝑗 = ∑𝑚
𝑗=1 𝑎𝑗𝑖 𝑐𝑗

 To fill the next table;


𝑐𝑜𝑟𝑟.𝑣𝑎𝑙𝑢𝑒 𝑖𝑛 𝑃𝑅 × 𝑐𝑜𝑟𝑟.𝑣𝑎𝑙𝑢𝑒 𝑖𝑛 𝑃𝐶
New row value𝑠 = (numbers in old row) − 𝑃𝐸

Where: 𝑃𝐸 = pivoting number, 𝑃𝑅 = pivoting row, 𝑃𝐶 = pivoting column.

Compiled by Dr. Habtamu Ts. 53 WkU-2024


Introduction to Optimization

𝑎12 ×𝑎21
For example: in the above table if 𝑎11 is pivoting number; 𝑎̅22 = 𝑎22 − . (which is the
𝑎11

new value at “𝑎22 ’’, in similar fashion we can find the new value for others rows(except for PR).
Until we reach to the optimal solution.

Example 2.1.3: Solve;

Max 𝑍 = 10𝑥1 + 20𝑥2


s.t. 𝑥1 ≤ 10
𝑥2 ≤ 6
2𝑥1 + 4𝑥2 ≤ 32
𝑥1 , 𝑥2 ≥ 0.
Solution: Max 𝑍 = 10𝑥1 + 20𝑥2 + 0𝑆1 + 0𝑆2

s.t. 𝑥1 + 𝑆1 = 10
𝑥2 + 𝑆2 = 10
2𝑥1 + 4𝑥2 + 𝑆3 = 32
𝑥1 , 𝑥2 , 𝑆1 , 𝑆2 , 𝑆3 ≥ 0.
Hence the initial tableau is:

𝐶𝑖 AV ⇒ 𝑥1 𝑥2 𝑆1 𝑆2 𝑆3 𝐵𝑖 R
BV ⇓
0 𝑆1 1 0 1 0 0 10 ---
0 𝑆2 0 1 0 1 0 6 6
0 𝑆3 2 4 0 0 1 32 8
𝐶𝑗 10 20 0 0 0
𝑍𝑗 0 0 0 0 0 0
𝐶𝑗 − 𝑍𝑗 10 20 0 0 0
Table 2.8

Note that:

 The 𝑃𝑅 and 𝑃𝐶 are identified (as shown above), hence we have to interchange
basic variable in 𝑃𝑅 with non-basic variable in 𝑃𝐶 (i.e., 𝑆2 by 𝑥2 ).

Compiled by Dr. Habtamu Ts. 54 WkU-2024


Introduction to Optimization

 To fill column 𝑍𝑗 use; 𝑍1 = 𝑎11 𝑐1 + 𝑎21 𝑐2 + 𝑎31 𝑐3 , 𝑍1 = 𝑎12 𝑐1 + 𝑎22 𝑐2 +


𝑎32 𝑐3 , …
 To fill the next main body of tableau use

𝑐𝑜𝑟𝑟.𝑣𝑎𝑙𝑢𝑒 𝑖𝑛 𝑃𝑅 × 𝑐𝑜𝑟𝑟.𝑣𝑎𝑙𝑢𝑒 𝑖𝑛 𝑃𝐶
New row value𝑠 = (numbers in old row) − 𝑃𝐸

a) Divide all enter of 𝑃𝑅 by 𝑃𝐸.

Hence; the next simplex tableau will be

𝐶𝑖 AV ⇒ 𝑥1 𝑥2 𝑆1 𝑆2 𝑆3 𝐵𝑖 R
BV ⇓
0 𝑆1 1 0 1 0 0 10 10
20 𝑥2 0 1 0 1 0 6 ---
0 𝑆3 2 0 0 -4 1 8 4
𝐶𝑗 10 20 0 0 0
𝑍𝑗 0 20 0 20 0 120
𝐶𝑗 − 𝑍𝑗 10 0 0 -20 0

Table 2.9

Still we didn’t get the optimal solution (why?), the next simplex tableau is:

𝐶𝑖 AV ⇒ 𝑥1 𝑥2 𝑆1 𝑆2 𝑆3 𝐵𝑖
BV ⇓
0 𝑆1 0 0 1 2 −1 6
2
20 𝑥2 0 1 0 1 0 6
10 𝑥1 1 0 0 -2 1 4
2
𝐶𝑗 10 20 0 0 0
𝑍𝑗 10 20 0 0 5 160
∆𝑍 = 𝐶𝑗 − 𝑍𝑗 0 0 0 0 -5

Table 2.10

Now all ∆𝑍 ≤ 0,(for maximization case) thus the optimal solution is obtained. Thus 𝑥1 = 4 and
𝑥2 = 6, hence (𝑥1 , 𝑥2 ) = (4,6) is the maximum point and 𝑍(𝑥1 , 𝑥2 ) = 𝑍(4,6) = 160 is the
maximum value.

Compiled by Dr. Habtamu Ts. 55 WkU-2024


Introduction to Optimization

Example 2.1.4: Solve;

Max 𝑍 = 12𝑥1 + 8𝑥2


s.t. 4𝑥1 + 3𝑥2 ≤ 8
2𝑥1 + 3𝑥2 ≤ 10
5𝑥1 + 𝑥2 ≤ 15
𝑥1 , 𝑥2 ≥ 0.
Solution: The standard form of 𝐿𝑃𝑃 is

Max 𝑍 = 12𝑥1 + 8𝑥2 + 0𝑆1 + 0𝑆2 + 0𝑆3


s.t. 4𝑥1 + 3𝑥2 + 𝑆1 = 8
2𝑥1 + 3𝑥2 + 𝑆2 = 10
5𝑥1 + 𝑥2 + 𝑆3 = 1
𝑥1 , 𝑥2 , 𝑆1 , 𝑆2 , 𝑆3 ≥ 0.

𝐶𝑖 AV ⇒ 𝑥1 𝑥2 𝑆1 𝑆2 𝑆3 𝐵𝑖 R
BV ⇓
0 𝑆1 4 3 1 0 0 8 2
0 𝑆2 2 3 0 1 0 10 5
0 𝑆3 5 1 0 0 1 15 3
𝐶𝑗 12 8 0 0 0
𝑍𝑗 0 0 0 0 0 0
𝐶𝑗 − 𝑍𝑗 12 8 0 0 0

Table 2.11

The next simplex tableau will be:

𝐶𝑖 AV ⇒ 𝑥1 𝑥2 𝑆1 𝑆2 𝑆3 𝐵𝑖
BV ⇓
12 𝑥1 1 3 1 0 0 2
4 4
0 𝑆2 0 3 −1 1 0 6
2 2
0 𝑆3 0 −11 −5 0 1 5
2 4

Compiled by Dr. Habtamu Ts. 56 WkU-2024


Introduction to Optimization

𝐶𝑗 12 8 0 0 0
𝑍𝑗 12 9 3 0 0 24
∆𝑍 = 𝐶𝑗 − 𝑍𝑗 0 -1 -3 0 0
Table 2.12

Since all values of ∆𝑍 ≤ 0, the optimal solution is obtained in the Table 2.12. Thus the
optimal(maximum) value of 𝑍 is 24 occurred at (𝑥1 , 𝑥2 ) = (2,0).

Exercise 2.2

Solve the following using Lpp using simplex tableau.

1) What are the simplex rules for selecting the pivot column? The pivot row? The pivot number?
2) Explain what the 𝑍𝑗 value indicates in the simplex tableau.
3) Explain what the 𝐶𝑗 − 𝑍𝑗 value indicates in the simplex tableau.
4) What is the reason behind the use of the minimum ratio test in selecting the pivot row? What
might happen without it?
5) Max 𝑍 = 3𝑥1 + 4𝑥2
s.t. 𝑥1 + 𝑥2 ≤ 4
𝑥1 + 2𝑥2 ≤ 6
2𝑥1 + 𝑥2 ≤ 6
𝑥1 , 𝑥2 ≥ 0.
6) Max 𝑍 = 𝑥1 + 2𝑥2 + 𝑥3
s.t. 2𝑥1 + 𝑥2 − 𝑥3 ≤ 2
−2𝑥1 + 𝑥2 − 5𝑥3 ≥ −1
−4𝑥1 − 𝑥2 − 𝑥3 ≥ −6
𝑥1 , 𝑥2 , 𝑥3 ≥ 0.
7) Max 𝑍 = 5𝑥1 − 3𝑥2 + 4𝑥3
s.t. 𝑥1 − 𝑥2 + 𝑥3 ≤ 4
−3𝑥1 + 2𝑥2 + 2𝑥3 ≤ 7
4𝑥1 − 𝑥3 ≤ 6
𝑥1 , 𝑥2 , 𝑥3 ≥ 0.
8) Max 𝑍 = 4𝑥1 + 3𝑥2
s.t. 𝑥1 − 2𝑥2 ≤ 2

Compiled by Dr. Habtamu Ts. 57 WkU-2024


Introduction to Optimization

2𝑥1 + 𝑥2 ≤ 6
𝑥1 + 2𝑥2 ≤ 5
−𝑥1 + 𝑥2 ≤ 2
𝑥1 , 𝑥2 , 𝑥3 ≥ 0.

2.3 Surplus and Artificial Variables

Just as common in real-life problems—especially in LP minimization problems—are greater-


than-or-equal-to (≥) constraints and equalities. To use the simplex method, each of these must be
converted to a special form also. If they are not, the simplex technique is unable to set up an
initial solution in the first tableau.

For example the constraints of the form:

Constraint 1: 5𝑥1 + 10𝑥2 + 8𝑥3 ≥ 210, Constraint 2: 25𝑥1 + 30𝑥2 = 900

Greater-than-or-equal-to (≥) constraints, such as constraint 1 as just described, require a


different approach than do the less-than-or-equal-to (≤) constraints we saw in the Flair Furniture
problem. They involve the subtraction of a surplus variable rather than the addition of a slack
variable. The surplus variable tells us how much the solution exceeds the constraint amount.
Because of its analogy to a slack variable, surplus is sometimes simply called negative slack. To
convert the first constraint, we begin by subtracting a surplus variable, 𝑆1 , to create equality:

Constraint 1 becomes 5𝑥1 + 10𝑥2 + 8𝑥3 − 𝑆1 = 210

If, for example, a solution to an LP problem involving this constraint is 𝑥1 = 20, 𝑥2 = 8, 𝑥3 =


5, the amount of surplus could be computed as follows:

5𝑥1 + 10𝑥2 + 8𝑥3 − 𝑆1 = 210 ⟹ 5(20) + 10(8) + 8(5) − 𝑆1 = 210 ⟹ −𝑆1 = −10
⟹𝑆1 = 𝑡1 = 10.

There is one more step, however, in preparing a (≥) constraint for the simplex method.

There is one small problem in trying to use the first constraint (as it has just been rewritten) in
setting up an initial simplex solution. Since all “real” variables such as 𝑥1 , 𝑥2 and 𝑥3 are set to

Compiled by Dr. Habtamu Ts. 58 WkU-2024


Introduction to Optimization

0 in the initial tableau, 𝑆1 takes on a negative value: 5(0) + 10(0) + 8(0) − 𝑆1 = 210 ⟹ 𝑆1 =
−210. All variables in LP problems, be they real, slack, or surplus, must be nonnegative at all
times. If 𝑆1 = −210, this important condition is violated.

To resolve the situation, we introduce one last kind of variable, called an artificial variable. We
simply add the artificial variable, 𝐴1 , to the constraint as follows:

Constraint 1 completed 5𝑥1 + 10𝑥2 + 8𝑥3 − 𝑆1 + 𝐴1 = 210.

Now, not only the 𝑥1 , 𝑥2 and 𝑥3 variables may be set to 0 in the initial simplex, solution, but the
𝑆1 , surplus variable as well. This leaves us with 𝐴1 = 210.

The second constraint is already an equality but to be included in the initial simplex solution, it
turns out, even an equality must have an artificial variable added to it:

Constraint 2 rewritten: 25𝑥1 + 30𝑥2 + 𝐴2 = 900

The reason for inserting an artificial variable into an equality constraint deals with the usual
problem of finding an initial LP solution.

Whenever an artificial or surplus variable is added to one of the constraints, it must also be
included in the other equations and in the problem’s objective function, just as was done for
slack variables. Since artificial variables must be forced out of the solution, we can assign a very
high 𝐶𝑗 cost to each. In minimization problems, variables with low costs are the most desirable
ones and the first to enter the solution. Variables with high costs leave the solution quickly, or
never enter it at all. Rather than set an actual dollar figure of $10,000 or $1 million for each
artificial variable, however, we simply use the letter $𝑀 to represent a very large number.
Surplus variables, like slack variables, carry a zero cost. In maximization problems, we use
negative M. If a problem had an objective function that read;

Min 𝑍 = $5𝑥1 + $9𝑥2 + $7𝑥3 ; using the above constraints.

Hence the completed objective function becomes:

Min 𝑍 = $5𝑥1 + $9𝑥2 + $7𝑥3 + $0𝑆1 + $𝑀𝐴1 + $𝑀𝐴1


Subject to: 5𝑥1 + 10𝑥2 + 8𝑥3 − 1𝑆1 + 1𝐴1 + 0𝐴2 = 210

Compiled by Dr. Habtamu Ts. 59 WkU-2024


Introduction to Optimization

25𝑥1 + 30𝑥2 + 0𝑥3 +0𝑆1 + 0𝐴1 + 1𝐴2 = 900


Example 2.1.5: The Muddy River Chemical Corporation must produce exactly 1,000 pounds of
a special mixture of phosphate and potassium for a customer. Phosphate costs $5 per pound and
potassium costs $6 per pound. No more than 300 pounds of phosphate can be used, and at least
150 pounds of potassium must be used. The problem is to determine the least-cost blend of the
two ingredients.

This problem may be restated mathematically as

Minimize cost = $5𝑥1 + $6𝑥2


s.t. 𝑥1 + 𝑥2 = 1000
𝑥1 ≤ 300
𝑥2 ≥ 150
𝑥1 , 𝑥1 ≥ 0
Where 𝑥1 is number of pounds of phosphate and 𝑥2 is number of pounds of potassium.

To solve this problem using simplex tableau method an appropriate form of this problem is:

Minimize cost = $5𝑥1 + $6𝑥2 + $0𝑆1 + $0𝑆2 + $𝑀𝐴1 + $𝑀𝐴2


Subject to 𝑥1 + 𝑥2 + 0𝑆1 + 0𝑆2 + 1𝐴1 + 0𝐴2 = 1000
1𝑥1 + 0𝑥2 + 1𝑆1 + 0𝑆2 + 0𝐴1 + 0𝐴2 = 300
0𝑥1 + 1𝑥2 + 0𝑆1 − 1𝑆2 + 0𝐴1 + 1𝐴2 = 150,
𝑥1 , 𝑥1 , 𝑆1 , 𝑆2 , 𝐴1 , 𝐴2 ≥ 0
Minimization problems are quite similar to the maximization problems tackled earlier in this
chapter. The significant difference involves the 𝐶𝑗 − 𝑍𝑗 row. Our objective is to minimize cost,
and a negative 𝐶𝑗 − 𝑍𝑗 value indicates that the total cost will decrease if that variable is selected
to enter the solution. Thus, the new variable to enter the solution in each tableau (the pivot
column variable) will be the one with a negative 𝐶𝑗 − 𝑍𝑗 that gives the largest improvement. We
choose the variable that decreases costs the most. In minimization problems, an optimal solution
is reached when all the numbers in the 𝐶𝑗 − 𝑍𝑗 row are 0 or positive just the opposite from the
maximization case. All other simplex steps, as seen in the following, remain the same.

Compiled by Dr. Habtamu Ts. 60 WkU-2024


Introduction to Optimization

a. To solve LPP using simplex tableau for minimization problem use the
following steps:
 Choose the variable with a negative 𝐶𝑗 − 𝑍𝑗 that indicates the largest decrease in cost to enter
the solution. The corresponding column is the pivot column.
(i) Determine the row to be replaced by selecting the one with the smallest (nonnegative)
quantity-to-pivot column substitution rate ratio. This is pivot row.
(ii) Calculate new values for the pivot row.
(iii)Calculate new values for the other rows.
(iv) Calculate the 𝑍𝑗 and 𝐶𝑗 − 𝑍𝑗 values for this tableau. If there are any numbers less than 0,
return to step 1. If there are no numbers that are less than 0, an optimal solution has been
reached.

Note that: The minimization problem with the simplex method can be solved using maximization
problem, by multiplying the cost of maximization problem(objective function) by negative.
Since minimizing the cost objective is the same as maximizing the negative of the cost objective
function. For example; Minimize= 5𝑥1 + 6𝑥2 can be written as Minimize= −5𝑥1 − 6𝑥2 .

The initial tableau is set up just as in the earlier maximization example. Its first three rows are
shown in the accompanying table. We note the presence of the $𝑀 costs associated with artificial
variables 𝐴1 and 𝐴2 , but we treat them as if they were any large number. As noted earlier, they
have the effect of forcing the artificial variables out of the solution quickly because of their large
costs.

𝐶𝑖 AV ⇒
𝑥1 𝑥2 𝑆1 𝑆2 𝐴1 𝐴2 𝐵𝑖 R
BV ⇓
$M 𝐴1 1 1 0 0 1 0 1000 1000
$0 𝑆1 1 0 1 0 0 0 300 ---
$M 𝐴2 0 1 0 -1 0 1 150 150
𝐶𝑗 $5 $6 $0 $0 $M $M
𝑍𝑗 $M $2M $0 -$M $M $M $1,150M
𝐶𝑗 − 𝑍𝑗 -$M+5 -$2M+6 $0 $M $0 $0

Table 2.13

𝐶𝑖 AV ⇒
𝑥1 𝑥2 𝑆1 𝑆2 𝐴1 𝐴2 𝐵𝑖 R

Compiled by Dr. Habtamu Ts. 61 WkU-2024


Introduction to Optimization

BV ⇓
$M 𝐴1 1 0 0 1 1 -1 850 850
$0 𝑆1 1 0 1 0 0 0 300 300
$6 𝑥2 0 1 0 -1 0 1 150 ---
𝐶𝑗 $5 $6 $0 $0 $M $M

𝑍𝑗 $M $6 $0 $M-6 $M -$M+6 $850M+$900

𝐶𝑗 − 𝑍𝑗 -$M+5 $0 $0 -$M+6 $0 -$2M-6

Table 2.14

𝐶𝑖 AV ⇒
𝑥1 𝑥2 𝑆1 𝑆2 𝐴1 𝐴2 𝐵𝑖 R
BV ⇓
$M 𝐴1 0 0 -1 1 1 -1 550 550
$5 𝑥1 1 0 1 0 0 0 300 ---
$6 𝑥2 0 1 0 -1 0 1 150 ---
𝐶𝑗 $5 $6 $0 $0 $M $M
𝑍𝑗 $5 $6 -$M+5 $M-6 $M -$M+6 $550M+$2,400
𝐶𝑗 − 𝑍𝑗 $0 $0 $M-5 -$M+6 $0 $2M-6

Table 2.15

150
Note that: The ratio in the 𝑥1 row is not used as it is negative, hence this row is not replaced
−1

by other row.

𝐶𝑖 AV ⇒
𝑥1 𝑥2 𝑆1 𝑆2 𝐴1 𝐴2 𝐵𝑖
BV ⇓
$0 𝑆2 0 0 -1 1 1 -1 550
$5 𝑥1 1 0 1 0 0 0 300
$6 𝑥2 0 1 -1 0 1 0 700
𝐶𝑗 $5 $6 $0 $0 $M $M
𝑍𝑗 $5 $6 -$1 $0 $6 $0 $5,700
𝐶𝑗 − 𝑍𝑗 $0 $0 $1 $0 $M-6 $M

Table 2.16

On examining the 𝐶𝑗 − 𝑍𝑗 row in Table 2.16, only positive or 0 values are found. The fourth
tableau therefore contains the optimum solution. That solution is 𝑥1 = 300, 𝑥2 = 700 and 𝑆2 =
550. The artificial variables are both equal to 0, as is 𝑆1 . Translated into management terms, the
chemical company’s decision should be to blend 300 pounds of phosphate (𝑥1 ) with 700 pounds

Compiled by Dr. Habtamu Ts. 62 WkU-2024


Introduction to Optimization

of potassium (𝑥2 ). This provides a surplus (𝑆2 ) of 550 pounds of potassium more than required
by the constraint 𝑥2 ≥ 150. The cost of this solution is $5,700.

In the optimization problems infeasibility occurs when there is no solution that satisfies all of the
problem’s constraints. In the simplex method, an infeasible solution is indicated by looking at the
final tableau. In it, all 𝐶𝑗 − 𝑍𝑗 row entries will be of the proper sign to imply optimality, but
anartificial variable (𝐴1 ) will still be in the solution mix.

Table 2.17 illustrates the final simplex tableau for a hypothetical minimization type of 𝐿𝑃
problem. The table provides an example of an improperly formulated problem, probably
containing conflicting constraints. No feasible solution is possible because an artificial variable
remains in the solution mix, even though all 𝐶𝑗 − 𝑍𝑗 are positive or 0 (the criterion for an optimal
solution in a minimization case).

𝐶𝑖 AV ⇒
𝑥1 𝑥2 𝑆1 𝑆2 𝐴1 𝐴2 𝐵𝑖
BV ⇓
$5 𝑥1 1 0 -2 3 -1 0 200
$8 𝑥2 0 1 1 2 -2 0 100
$M 𝐴2 0 0 0 -1 -1 1 20
𝐶𝑗 $5 $8 $0 $0 $M $M
𝑍𝑗 $5 $8 -$2 $31-M -$21-M $M $1,800+20M
𝐶𝑗 − 𝑍𝑗 $0 $0 $2 $M-31 $2M+21 $0

Table 2.17 illustration of infeasibility

Unboundedness describes linear programs that do not have finite solutions. It occurs in
maximization problems, for example, when a solution variable can be made infinitely large
without violating a constraint. In the simplex method, the condition of unboundedness will be
discovered prior to reaching the final tableau. We will note the problem when trying to decide
which variable to remove from the solution mix. As seen earlier in this chapter, the procedure is
to divide each quantity column number by the corresponding pivot column number. The row
with the smallest positive ratio is replaced. But if all the ratios turn out to be negative or
undefined, it indicates that the problem is unbounded.

Table 2.18 illustrates the second tableau calculated for a particular 𝐿𝑃 maximization problem by
the simplex method. It also points to the condition of unboundedness. The solution is not optimal

Compiled by Dr. Habtamu Ts. 63 WkU-2024


Introduction to Optimization

because not all 𝐶𝑗 − 𝑍𝑗 entries are 0 or negative, as required in a maximization problem. The
next variable to enter the solution should be 𝑥1 . To determine which variable will leave the
solution, we examine the ratios of the quantity column numbers to their corresponding numbers
in the 𝑥1 , or pivot, column:

30 10
Ratio for 𝑥2 row: and ratio for 𝑆2 row: (negative ratios unacceptable). Since both pivot
−1 −2

column numbers are negative, an unbounded solution is indicated.

𝐶𝑖 AV ⇒
𝑥1 𝑥2 𝑆1 𝑆2 𝐵𝑖
BV ⇓
$9 𝑥2 -1 1 2 0 30
$0 𝑆2 -2 0 -1 1 10
𝐶𝑗 $6 $9 $0 $0
𝑍𝑗 -$9 $9 $18 $0 $270
𝐶𝑗 − 𝑍𝑗 $15 $0 -$18 $0

Table 2.18 problem with unbounded solution

Degeneracy is another situation that can occur when solving an 𝐿𝑃 problem using the simplex
method. It develops when three constraints pass through a single point. For example, suppose a
problem has only these three constraints 𝑥1 ≤ 10, 𝑥2 ≤ 10 and 𝑥1 + 𝑥2 < 20. All three
constraint lines will pass through the point (10, 10). Degeneracy is first recognized when the
ratio calculations are made. If there is a tie for the smallest ratio, this is a signal that degeneracy
exists. As a result of this, when the next tableau is developed, one of the variables in the solution
mix will have a value of zero.

Table 2.19 provides an example of a degenerate problem. At this iteration of the given
maximization 𝐿𝑃 problem, the next variable to enter the solution will be 𝑥1 , since it has the only
10
positive 𝐶𝑗 − 𝑍𝑗 number. The ratios are computed as follows: For 𝑥2 row: 0.25 = 40, for 𝑆2 row:
20 10
= 5 and for 𝑆3 row: = 5; in 𝑆2 and 𝑆3 , tie for the smallest ratio indicates degeneracy.
4 2

Theoretically, degeneracy could lead to a situation known as cycling, in which the simplex
algorithm alternates back and forth between the same nonoptimal solutions; that is, it puts a new
variable in, then takes it out in the next tableau, puts it back in, and so on. One simple way of

Compiled by Dr. Habtamu Ts. 64 WkU-2024


Introduction to Optimization

dealing with the issue is to select either row (𝑆2 or 𝑆3 in this case) arbitrarily. If we are unlucky
and cycling does occur, we simply go back and select the other row.

𝐶𝑖 AV ⇒
𝑥1 𝑥2 𝑥3 𝑆1 𝑆2 𝑆3 𝐵𝑖
BV ⇓
$8 𝑥2 0.25 1 1 -2 0 0 10
$0 𝑆2 4 0 0.33 -1 1 0 20
$0 𝑆3 2 0 2 0.4 0 1 10
𝐶𝑗 $5 $8 $2 $0 $0 $0
𝑍𝑗 $2 $8 $8 $16 $0 $0 $80
𝐶𝑗 − 𝑍𝑗 $3 $0 -$6 -$16 $0 $0

Table 2.19 problem illustrating degeneracy

Multiple, or alternate, optimal solutions can be spotted when the simplex method is being used
by looking at the final tableau. If the 𝐶𝑗 − 𝑍𝑗 value is equal to 0 for a variable that is not in the
solution mix, more than one optimal solution exists.

Let’s take Table 2.20 as an example. Here is the last tableau of a maximization problem; each
entry in the 𝐶𝑗 − 𝑍𝑗 row is 0 or negative, indicating that an optimal solution has been reached.
That solution is read as 𝑥2 = 6, 𝑆2 = 3, profit= $12. Note, however, that variable 𝑥1 can be
brought into the solution mix without increasing or decreasing profit. The new solution, with 𝑥1
in the basis, would become 𝑥1 = 3, 𝑥2 = 1.5, with profit= $12.

𝐶𝑖 AV ⇒
𝑥1 𝑥2 𝑆1 𝑆2 𝐵𝑖
BV ⇓
$2 𝑥2 1.5 1 1 0 6
$0 𝑆2 1 0 0.5 1 3
𝐶𝑗 $3 $2 $0 $0
𝑍𝑗 $3 $2 $2 $0 $12

Compiled by Dr. Habtamu Ts. 65 WkU-2024


Introduction to Optimization

𝐶𝑗 − 𝑍𝑗 $0 $0 -$2 $0

Table 2.20 problem with alternate optimal solutions

Note that: Alternate optimal solutions may exist if the 𝐶𝑗 − 𝑍𝑗 value is 0 for variable not in the
solution mix.

Example: solve

Max 𝑍 = 3𝑥1 + 2𝑥2 + 𝑥3


s.t. 𝑥1 − 𝑥3 ≤ 10
𝑥2 − 𝑥3 ≥ 10
𝑥1 + 𝑥2 + 𝑥3 ≤ 10
𝑥1 , 𝑥2 , 𝑥3 ≥ 0.
Solution: The standard form of this 𝐿𝑃𝑃 is
Max 𝑍 = 3𝑥1 + 2𝑥2 + 𝑥3 + 0𝑆 − 𝑀𝐴1
s.t. 𝑥1 − 𝑥3 + 𝑆1 = 10
𝑥2 − 𝑥3 − 𝑆2 + 𝐴1 = 10
𝑥1 + 𝑥2 + 𝑥3 + 𝑆3 = 10
𝑋, 𝑆, 𝐴 ≥ 0.
Hence we have:
𝐶𝑖 AV ⇒
𝑥1 𝑥2 𝑥3 𝑆1 𝑆2 𝑆3 𝐴1 𝐵𝑖 R
BV ⇓
0 𝑆1 1 0 -1 1 0 0 0 10 -
-M 𝐴1 0 1 -1 0 -1 0 1 10 10
0 𝑆3 1 1 1 0 0 1 0 10 10
𝐶𝑗 3 2 1 0 0 0 -M
𝑍𝑗 0 -M M 0 M 0 -M 10-M
𝐶𝑗 − 𝑍𝑗 3 2+M 1-M 0 -M 0 0

Table 2.21
𝐶𝑖 AV ⇒
𝑥1 𝑥2 𝑥3 𝑆1 𝑆2 𝑆3 𝐵𝑖 R
BV ⇓
0 𝑆1 1 0 -1 1 0 0 10 10
2 𝑥2 0 1 -1 0 -1 0 10 -
0 𝑆3 1 0 2 0 1 1 0 0

Compiled by Dr. Habtamu Ts. 66 WkU-2024


Introduction to Optimization

𝐶𝑗 3 2 1 0 0 0
𝑍𝑗 0 2 -2 0 -2 0 20
𝐶𝑗 − 𝑍𝑗 3 0 3 0 2 0

Table 2.22
𝐶𝑖 AV ⇒
𝑥1 𝑥2 𝑥3 𝑆1 𝑆2 𝑆3 𝐵𝑖
BV ⇓
0 𝑆1 0 0 -3 1 -1 -1 10
2 𝑥2 0 1 -1 0 -1 0 10
3 𝑥1 1 0 2 0 1 1 0
𝐶𝑗 3 2 1 0 0 0
𝑍𝑗 3 2 4 0 1 3 20
𝐶𝑗 − 𝑍𝑗 0 0 -3 0 -1 -3

Table 2.23
Since all values of 𝐶𝑗 − 𝑍𝑗 row are less than or equal to 0 the optimal solution is reached.
Hence the maximum value of this problem is 20 it occurs at 𝑥1 = 0, 𝑥2 = 10 and 𝑥3 = 0.

Exercise 2.3

Solve the following using Lpp using simplex tableau.

a) What are slack, surplus, and artificial variables? When is each used, and why? What value does
each carry in the objective function?
b) You have just formulated an LP problem with 12 decision variables and eight constraints. How
many basic variables will there always be? What is the difference between a basic and a nonbasic
variable?
c) How do maximization and minimization problems differ when applying the simplex method?
d) Max 𝑍 = 10𝑥1 + 20𝑥2 e) Max 𝑍 = 5𝑥1 + 2𝑥2 + 10𝑥3
s.t. 𝑥1 + 𝑥2 ≥ 8 s.t. 𝑥1 − 𝑥3 ≤ 10
𝑥2 ≤ 4 𝑥2 − 𝑥3 ≥ 10
2𝑥1 + 3𝑥2 ≥ 24 𝑥1 + 𝑥2 + 𝑥3 ≤ 10 and 𝑥1 , 𝑥2 , 𝑥3 ≥ 0.
𝑥1 , 𝑥2 ≥ 0.

Miscellaneous Exercise-2

a) Explain the purpose and procedures of the simplex method.

Compiled by Dr. Habtamu Ts. 67 WkU-2024


Introduction to Optimization

b) How do the graphical and simplex methods of solving LP problems differ? In what ways are they
the same? Under what circumstances would you prefer to use the graphical approach?
c) What happens if an artificial variable is in the final optimal solution? What should the manager
who formulated the LP problem do?
d) Solve the following 𝐿𝑃 problem first graphically and then by the simplex algorithm:
Minimize cost= 4𝑥1 + 5𝑥2
Subject to: 𝑥1 + 2𝑥2 ≥ 80
3𝑥1 + 𝑥2 ≥ 75
𝑥1 , 𝑥2 ≥ 0
What are the values of the basic variables at each iteration? Which are the nonbasic variables at
each iteration?
e) A firm that makes three products and has three machines available as resources constructs the
following 𝐿𝑃 problem:
Maximize profit= 4𝑥1 + 4𝑥2 + 7𝑥3
Subject to: 𝑥1 + 7𝑥2 + 4𝑥3 ≤ 100 (hours on machine 1)
2𝑥1 + 𝑥2 + 7𝑥3 ≤ 110 (hours on machine 2)
8𝑥1 + 4𝑥2 + 𝑥3 ≤ 110 (hours on machine 3)
𝑥1 , 𝑥2 , , 𝑥2 ≥ 0.

Solve this problem and answer the following questions:

a) Before the third iteration of the simplex method, which machine still has unused time available?
b) When the final solution is reached, is there any unused time available on any of the three
machines?
c) What would it be worth to the firm to make an additional hour of time available on the third
machine?
d) How much would the firm’s profit increase if an extra 10 hours of time were made available on
the second machine at not extra cost?

CHAPTER THREE

SENSITIVITY ANALYSIS AND DUALITY


Compiled by Dr. Habtamu Ts. 68 WkU-2024
Introduction to Optimization

Introduction

This chapter discuses sensitivity analysis and the concept of a dual linear programming
formulation. Both of these topics are important because they enrich the decision making process
by providing decision makers with greater insight into 𝐿𝑃 analysis. Sensitivity analysis involves
an examination of the potential impact of changes in any parameters (i.e., numerical values) of a
problem (eg. a change in the amount of scarce resources available).

The dual involves setting up and solving a 𝐿𝑃𝑃 that is almost a “a mirror image” of a 𝐿𝑃𝑃 that
has been formulated. Among other things, this provides another perspective on a problem.

3.1 Sensitivity analysis

Sensitivity analysis is concerned with the study of “sensitivity” of optimal solution of a 𝐿𝑃𝑃 with
discretion variables (changes) in parameters. The degree of sensitivity of the solution due to
those variations can range from no change at all to a substantial change in the optimal solution of
the given 𝐿𝑃𝑃. Thus, in sensitivity analysis, we determine the range over which the 𝐿𝑃 model
parameters can change without affecting the current optimal solution.

The process of studying the sensitivity of the optimal solution of a 𝐿𝑃𝑃 is called post-optimality
analysis.

There are two types of sensitivity analysis approaches. These are trial and error approach and
analytical approach. In this chapter we will study analytical approach in detail.

3.1.1 Analytical Approach

There are five types of discrete changes in the original 𝐿𝑃 model may be investigated during the
sensitivity analysis:

1) Change of the coefficients of the objective function(c).


2) Change of the RHS quantity (b).
3) Change of the input-output coefficient.
4) Add/delete constraints.
5) The addition of a new variable to the problem.

Compiled by Dr. Habtamu Ts. 69 WkU-2024


Introduction to Optimization

Change of the coefficients of the objective function(c): Decision variables can be basic (in the
solution) and non-basic (out-of the solution). The range of optimality is the range over which a
basic decision variable coefficient in the objective function can change without changing the
optimal solution mix. However, this change will change only the optimal value of the objective
function.

Example 3.1: Max 𝑍 = 5𝑥1 + 4.5𝑥2 + 𝑥3

S.t. 15𝑥1 + 15.8𝑥2 ≤ 150


5𝑥1 + 6.4𝑥2 + 15𝑥3 ≤ 77
2.8𝑥2 + 11.8𝑥3 ≤ 36
𝑥1 , 𝑥2 , 𝑥3 ≥ 0.

Solution: The optimal tableau for this solution is:

𝐶𝑖 AV ⇒
𝑥1 𝑥2 𝑥3 𝑆1 𝑆2 𝑆3 𝐵𝑖
BV ⇓
5 𝑥1 1 1.053 0 0.067 0 0 10
1 𝑥3 0 0.67 1 -0.022 0.067 0 1.8
0 𝑆3 0 1.924 0 0.258 -0.773 1 15.12
𝐶𝑗 5 4.5 1 0 0 0
𝑍𝑗 5 5.342 1 0.311 0.067 0 51.8
𝐶𝑗 − 𝑍𝑗 0 -0.842 0 -0.311 -0.067 0

Table 3.1

Now we want to determine the range of optimality for the coefficients of the basic-decision
variables. This is analysis of basic decision variables. The analysis will be conducted on products
𝑥1 and 𝑥3 which are in the basic solution. Divide each 𝐶𝑗 − 𝑍𝑗 row entry for variables not in the
solution (for instance, 𝑥2 , 𝑠1 and 𝑠2 values) by the associated variables from 𝑥1 or 𝑥3 row.

Analysis of 𝑥1 : steps;

 Take the 𝐶𝑗 − 𝑍𝑗 row of the optimal solution of non-basic variables.


 Take the 𝑥1 row of the non-basic variables.
𝐶𝑗 −𝑍𝑗 𝑟𝑜𝑤
 𝑥1 𝑟𝑜𝑤

b. Lower limit

Compiled by Dr. Habtamu Ts. 70 WkU-2024


Introduction to Optimization

The largest negative number (negative amount closest to 0)

𝑥2 𝑠1 𝑠2
𝐶𝑗 − 𝑍𝑗 row -0.842 -0.311 -0.067
𝑥1 row 1.053 0.067 0
𝐶𝑗 − 𝑍𝑗 𝑟𝑜𝑤 -0.8 -4.67 ---
𝑥1 𝑟𝑜𝑤
𝐶𝑗 −𝑍𝑗 row
Lower limit=c(for 𝑥1 ) + the largest negative value of = 5 + (−0.8) = 4.2
𝑥1 𝑟𝑜𝑤
𝐶𝑗 −𝑍𝑗 row
c. Upper Limit: The smallest positive number in the row tells how
𝑥1 𝑟𝑜𝑤

much the profit of 𝑥1 can be increased before the solution is changed.


𝐶𝑗 −𝑍𝑗 row
d. Upper limit=c(for 𝑥1 ) + the smallest positive value of row = 5 +
𝑥1 𝑟𝑜𝑤

∞=∞

Hence, the range of optimality for coefficient of 𝑥1 is 4.2 ≤ 𝑐 (for 𝑥1 ) < ∞. i.e., the coefficient
of 𝑥1 in objective function can change between 4.2 and ∞ without changing the optimal solution
mix 𝑥1 = 10, 𝑥3 = 1.8 and 𝑠3 = 15.12.

Analysis of 𝑥3 :

𝑥2 𝑠1 𝑠2
𝐶𝑗 − 𝑍𝑗 row -0.842 -0.311 -0.067
𝑥3 row 0.67 -0.022 0.067
𝐶𝑗 − 𝑍𝑗 𝑟𝑜𝑤 -1.26 14.13 -1
𝑥1 𝑟𝑜𝑤

𝐶𝑗 −𝑍𝑗 row
a) Upper limit=c(for 𝑥3 ) + the smallest positive value of row = 1 + 14.13 =
𝑥3 𝑟𝑜𝑤

15.13.
𝐶𝑗 −𝑍𝑗 row
b) Lower limit=c(for 𝑥3 ) + the largest negative value of = 1 + (−1) = 0.
𝑥3 𝑟𝑜𝑤

Compiled by Dr. Habtamu Ts. 71 WkU-2024


Introduction to Optimization

Therefore, the range of optimality for the coefficient of 𝑥3 is 0 ≤ 𝑐 (for 𝑥3 ) < 15.13. i.e., the
coefficient of 𝑥3 in objective function can change between 0 and 15.13 without changing the
optimal solution mix 𝑥1 = 10, 𝑥3 = 1.8 and 𝑠3 = 15.12. However, this change will change only
the optimal value of the objective function (i.e., Max 𝑍 will change).

The range for the non-basic variables: If there is a variable 𝐶𝑗 , not participating in the optimal
basis, then, in order for the variable to be included in the optimal solution, its coefficient in the
objective function will have to change from the existing 𝐶𝑗 to a new level 𝐶𝑗 (new).

𝐶𝑗 (new) > 𝑍𝑗

The range of insignificance is the range over which 𝐶𝑗 valves rates for non-basic variables can
vary without causing a change in the optimal solution mix.

Example 3.2: Max 𝑍 = 5𝑥1 + 4.5𝑥2 + 𝑥3

S.t. 15𝑥1 + 15.8𝑥2 ≤ 150


5𝑥1 + 6.4𝑥2 + 15𝑥3 ≤ 77
2.8𝑥2 + 11.8𝑥3 ≤ 36
𝑥1 , 𝑥2 , 𝑥3 ≥ 0.

Calculate the range of insignificance for the coefficient of non-basic variable(𝑥2 ).

Solution: The optimal tableau for this solution is:

𝐶𝑖 AV ⇒
𝑥1 𝑥2 𝑥3 𝑆1 𝑆2 𝑆3 𝐵𝑖
BV ⇓
5 𝑥1 1 1.053 0 0.067 0 0 10
1 𝑥3 0 0.67 1 -0.022 0.067 0 1.8
0 𝑆3 0 1.924 0 0.258 -0.773 1 15.12
𝐶𝑗 5 4.5 1 0 0 0
𝑍𝑗 5 5.342 1 0.311 0.067 0 51.8
𝐶𝑗 − 𝑍𝑗 0 -0.842 0 -0.311 -0.067 0

Table 3.2

𝐶𝑗 (for 𝑥2 )= 4.5 and 𝑍𝑗 (for 𝑥2 )= 5.342

Compiled by Dr. Habtamu Ts. 72 WkU-2024


Introduction to Optimization

𝐶𝑗 (new for 𝑥2 )> 5.342 ⇒ if the profit contribution of 𝑥2 is less than 5.342, then 𝑥2 will be
included in the solution.

Thus, 5.342 ≤ 𝐶𝑗 (new for 𝑥2 ) < ∞ is the range of insignificance for 𝑥2 . 𝐶𝑗 (new for 𝑥2 ) can vary
with in the given range without causing a change in the optimal solution mix(𝑥1 =10, 𝑥2 = 0,
𝑥3 = 1.8, 𝑠1 = 𝑠2 = 0 and 𝑠3 = 15.12)

Change in the right hand-side quantity(RHS) or change in available resource(capacity) (b):

Shadow prices signify the change in the optimal value of objective function for one unit
increases in the value of RHS of the constraint that represent the availability of scarce resources.

Shadow prices imply how much should a firm be willing to pay to make additional resources
available?

The negative of the number of 𝐶𝑗 − 𝑍𝑗 row in its slack variable columns provide as with shadow
price. Shadow prices are found in the 𝑍𝑗 row of the final simplex tableau in the slack variable
columns.

RHS ranging is the range over which shadow prices remain valid.

Example 3.3: Max 𝑍 = 3𝑥1 + 4𝑥2

S.t. 3𝑥1 + 5𝑥2 ≤ 15


2𝑥1 + 𝑥2 ≤ 8
𝑥2 ≤ 2
𝑥1 , 𝑥2 ≥ 0.

a) Determine the shadow price for each constraint.


b) Determine the RHS ranges over which the shadow prices are valid.

Solution: The optimal tableau of this 𝐿𝑃𝑃 is:

Compiled by Dr. Habtamu Ts. 73 WkU-2024


Introduction to Optimization

𝐶𝑖 AV ⇒ 𝑥1 𝑥2 𝑠1 𝑆2 𝑆3 𝐵𝑖
BV ⇓
3 𝑥1 1 0 -0.143 0.714 0 3.57
0 𝑠3 0 0 -0.286 0.428 1 1.143
4 𝑥2 0 1 0.286 -0.428 0 0.857
𝐶𝑗 3 4 0 0 0
𝑍𝑗 3 4 0.714 0.428 0 14.138
𝐶𝑗 − 𝑍𝑗 0 0 -0.714 -0.428 0

Table 3.3

 Analysis of 1st constraint (𝑠1 ):


𝐵𝑖 𝑠1 𝐵𝑖
𝑅=
𝑠1
3.57 -0.143 -24.96
1.143 -0.286 -3.99
0.857 0.286 3.00
Lower limit= 𝐵 −the smallest positive number in the 𝑅 column

Upper limit= 𝐵 −the largest negative number in the 𝑅 column

Hence; lower limit of 𝑠1 = 𝐵1 −the smallest positive number in the 𝑅 column = 15 − 3 = 12.

Upper limit of 𝑠1 = 𝐵1 −the largest negative number in the 𝑅 column= 15 − (−3.99) = 18.99.

Therefore, 12 ≤ 𝐵1 ≤ 18.99(the range of resource 1 over which the shadow price $0.714 per
unit is valid).

 Analysis of 2nd constraint (𝑠2 ):


𝐵𝑖 𝑠2 𝐵𝑖
𝑅=
𝑠2
3.57 0.714 5
1.143 0.428 2.67
0.857 -0.428 -2
Lower limit of 𝑠2 = 𝐵2 −the smallest positive number in the 𝑅 column = 8 − 2.67 = 5.33.

Upper limit of 𝑠2 = 𝐵2 −the largest negative number in the 𝑅 column= 8 − (−2) = 10.

Therefore, 5.33 ≤ 𝐵2 ≤ 10(the range of resource 2 over which the shadow price $0.428 per unit
is valid).

Compiled by Dr. Habtamu Ts. 74 WkU-2024


Introduction to Optimization

 Analysis of 3rd constraint (𝑠3 ):


𝐵𝑖 𝑠3 𝐵𝑖
𝑅=
𝑠3
3.57 0 ---
1.143 1 1.143
0.857 0 ---
Lower limit of 𝑠3 = 𝐵3 −the smallest positive number in the 𝑅 column = 2 − 1.143 = 0.857.

Upper limit of 𝑠3 = 𝐵3 −the largest negative number in the 𝑅 column= 2 − (−∞) = ∞.

Therefore, 0.857 ≤ 𝐵3 ≤ ∞(the range of resource 3 over which the shadow price $0 per unit is
valid).

Exercise 3.1

a) Determine the range of optimality for the coefficient of the basic variables, for the following
𝐿𝑃𝑃:
Max 𝑍 = 50𝑥1 + 120𝑥2
S.t. 2𝑥1 + 4𝑥2 ≤ 80
3𝑥1 + 𝑥2 ≤ 60
𝑥1 , 𝑥2 ≥ 0.
b) Determine the shadow price for each constraint
Max 𝑍 = 50𝑥1 + 40𝑥2
S.t. 3𝑥1 + 5𝑥2 ≤ 150
8𝑥1 + 5𝑥2 ≤ 300
𝑥2 ≤ 20
𝑥1 , 𝑥2 ≥ 0.

3.2 Duality

Most important finding in the development of Linear Programming Problems is the existence of
duality in linear programming problems. Linear programming problems exist in pairs. That is in
linear programming problem, every maximization problem is associated with a minimization
problem conversely, associated with every minimization problem is a maximization problem.
Once we have a problem with its objective function as maximization, we can write by using

Compiled by Dr. Habtamu Ts. 75 WkU-2024


Introduction to Optimization

duality relationship of linear programming problems, its minimization version. The original
linear programming problem is known as primal problem, and the derived problem is known as
dual problem.

The concept of the dual problem is important for several reasons. Most important are:

o The variables of dual problem can convey important information to managers in terms of
formulating their future plans.
o In some cases the dual problem can be instrumental in arriving at the optimal solution to
the original problem in many fewer iterations, which reduces the labor of computation.

Whenever, we solve the primal problem, may be maximization or minimization, we get the
solution for the dual automatically. That is, the solution of the dual can be read from the final
table of the primal and vice versa.

Note that:

1- If the primal has no optimal solution, then the dual will not have optimal solution.
2- Whether we follow the dual or primal system, the optimal solution will remain equal.

Example 3.1: The doctor advises a patient visited him that the patient is weak in his health due to
shortage of two vitamins, i.e., vitamin 𝑋 and vitamin 𝑌. He advises him to take at least 40 units
of vitamin 𝑋 and 50 units of Vitamin 𝑌 everyday. He also advises that these vitamins are
available in two tonics 𝐴 and 𝐵. Each unit of tonic 𝐴 consists of 2 units of vitamin 𝑋 and 3 units
of vitamin 𝑌. Each unit of tonic 𝐵 consists of 4 units of vitamin 𝑋 and 2 units of vitamin 𝑌.
Tonic 𝐴 and 𝐵 are available in the medical shop at a cost of 𝑅𝑠. 3 per unit of 𝐴 and 𝑅𝑠. 2,50 per
unit of 𝐵. The patient has to fulfill the need of vitamin by consuming 𝐴 and 𝐵 at a minimum
cost.

The problem of patient is the primal problem. His problem is to minimize the cost. The tonics
are available in the medical shop. The medical shop man wants to maximize the sales of vitamins
𝐴 and 𝐵; hence he wants to maximize his returns by fixing the competitive prices to vitamins.
The problem of medical shop person is the dual problem. Note that the primal problem is
minimization problem and the dual problem is the maximization problem.

Compiled by Dr. Habtamu Ts. 76 WkU-2024


Introduction to Optimization

If we solve and get the solution of the primal problem, we can read the answer of dual problem
from the primal solution.

Primal problem: Dual Problem:


Minimize 𝑍 = 3𝑎 + 2.5𝑏. Maximize 𝑍 = 40𝑥 + 50𝑦
2𝑎 + 4𝑏 ≥ 40 2𝑥 + 3𝑦 ≤ 3
s.t. 3𝑎 + 2𝑏 ≥ 50 s.t. 4𝑥 + 2𝑦 ≤ 2.50
𝑎, 𝑏 ≥ 0. 𝑥, 𝑦 ≥ 0.
Solution to Primal: (Minimization problem i.e., patient’s problem)

𝐶𝑖 AV ⇒
𝑆1
𝑎 𝑏 𝑆2 𝐴1 𝐴2 𝐵𝑖

BV ⇓
2.5 𝑎 0 1 −3 1 3 −1 2.5
8 4 8 4
3 𝑏 1 0 1 −1 −1 1 15
4 2 4 2
𝐶𝑗 3 2.5 0 0 M M
𝑍𝑗 3 2.5 −3 −7 3 7 51.25
16 8 16 8
3 7 3 7
𝐶𝑗 − 𝑍𝑗 0 0 M− M−
16 8
16 8

Table 3.4

Hence the solution is: 𝑎 = 15 units, 𝑏 = 2.5 units and total minimum cost is 𝑅𝑠. 51.25.

Solution to dual: (Maximization problem i.e., medical shop man’s problem)

𝐶𝑖 AV ⇒
𝑆1
𝑥 𝑦 𝑆2 𝐵𝑖
BV ⇓
50 𝑦 0 1 1 −1 7
2 4 8
40 𝑥 1 0 −1 3 3
4 8 16
𝐶𝑗 40 50 0 0
𝑍𝑗 40 50 15 5 51.25
8
𝐶𝑗 − 𝑍𝑗 0 0 −15 −5
8
Table 3.5

Hence the solution is: 𝑥 = 0.1875 units, 𝑦 = 0.875 units and maximum profit is 𝑅𝑠. 51.25.

The patient has to minimize the cost by purchasing vitamin X and 𝑌 and the shopkeeper has to
increase his returns by fixing competitive prices for vitamin 𝑋 and 𝑌. Minimum cost for patient

Compiled by Dr. Habtamu Ts. 77 WkU-2024


Introduction to Optimization

is 𝑅𝑠. 51.25 and the maximum returns for the shopkeeper is 𝑅𝑠. 51.25. The competitive price for
tonics is 𝑅𝑠. 3 and 𝑅𝑠. 2.50. Here we can understand the concept of shadow price or economic
worth of resources clearly. If we multiply the original elements on the right hand side of the
constraints with the net evaluation elements under slack or surplus variables we get the values
equal to the minimum cost of minimization problem or maximum profit of the maximization
problem. The concept of shadow price is similar to the economist’s concept of the worth of a
marginal resource. In other words, we can see for a manufacturing unit it is machine hour rate. It
is also known as imputed value of the resources. One cannot earn more than the economic worth
of the resources he has on his hand. The fact that the value of the objective function in the
optimal program equals to the imputed value of the available resources has been called the
fundamental theorem of linear programming.

By changing the rows of the primal problem (dual problem) into columns we get the dual
problem (primal problem) and vice versa.

Consider the general form of 𝐿𝑃𝑃;


Primal 𝐿𝑃𝑃: Max 𝑍 = 𝐶 𝑇 𝑋 s.t. 𝐴𝑋 ≤ 𝐵, 𝑋 ≥ 0, where 𝐶, 𝑋𝜖𝑅𝑛 , 𝐵𝜖𝑅𝑚 and 𝐴 is an 𝑚 × 𝑛
matrix. The dual of this linear programming problem is:

Dual 𝐿𝑃𝑃: Min 𝑍 ∗ = 𝐵𝑇 𝑌 s.t. 𝐴𝑇 𝑌 ≥ 𝐶, 𝑌 ≥ 0, where 𝐵, 𝑌𝜖𝑅𝑛 , 𝐶𝜖𝑅𝑚 and 𝐴 is an 𝑚 × 𝑛

Example 3.2: Find the dual of 𝐿𝑃𝑃

Max 𝑍 = 3𝑥1 + 4𝑥2 + 2𝑥3 𝑥1 + 𝑥2 ≤ 8


𝑥2 + 𝑥15 ≤ 15
s.t. 8𝑥1 + 2𝑥2 ≤ 2
𝑥1 + 𝑥2 − 𝑥3 ≤ 12
2𝑥1 + 2𝑥2 + 𝑥3 ≤ 22
𝑥1 , 𝑥2 , 𝑥3 ≥ 0.
1 1 0 8
0 1 1 𝑥1 15
⟹ 8 2 0 (𝑥2 ) ≤ 2
1 1 −1 𝑥3 12
(2 2 1) (22)
The dual of the primal 𝐿𝑃𝑃 is:

Compiled by Dr. Habtamu Ts. 78 WkU-2024


Introduction to Optimization

Min 𝑍 ∗ = 8𝑦1 + 15𝑦2 + 2𝑦3 + 12𝑦4 + 22𝑦5


𝑦1 + 8𝑦3 + 𝑦4 + 2𝑦5 ≥ 3
s.t. 𝑦1 + 𝑦2 + 2𝑦3 + 𝑦4 + 2𝑦5 ≥ 4
𝑦2 − 𝑦4 + 𝑦5 ≥ 2,
𝑦1 , 𝑦2 , 𝑦3 , 𝑦4 , 𝑦5 , ≥ 0.
𝑦1
1 0 8 1 2 𝑦2 3
⟹ (1 1 2 1 2 ) 𝑦3 ≥ (4)
0 1 0 −1 1 𝑦4 2
𝑦
( 5)
So that this the dual 𝐿𝑃𝑃 simplifies our calculation from that of the primal 𝐿𝑃𝑃.

Example 3.3: find the optimal solution for 𝐿𝑃𝑃;

Max 𝑍 = 𝑥1 + 6𝑥2
s.t. 𝑥1 + 𝑥2 ≥ 2
𝑥1 + 3𝑥2 ≤ 3
𝑥1 , 𝑥2 , 𝑥3 ≥ 0.
Solution: The standard form 𝐿𝑃𝑃 is

Max 𝑍 = 𝑥1 + 6𝑥2 + 0𝑆1 + 0𝑆2 − 𝑀𝐴1

s.t. 𝑥1 + 𝑥2 − 𝑆1 + 𝐴1 = 2
𝑥1 + 3𝑥2 + 𝑆2 = 3
𝑥1 , 𝑥2 , 𝑆, 𝐴 ≥ 0

𝐶𝑖 AV ⇒
𝑆1
𝑥1 𝑥2 𝑆2 𝐴1 𝐵𝑖 R

BV ⇓
-M 𝐴1 1 1 −1 0 1 2 2
0 𝑆2 1 3 𝟎 𝟏 𝟎 3 1
𝐶𝑗 1 6 0 0 -M
𝑍𝑗 -M -M 𝑀 0 −𝑀 -2M
𝐶𝑗 − 𝑍𝑗 1+M 6+M −𝑀 0 0

Table 3.6

Compiled by Dr. Habtamu Ts. 79 WkU-2024


Introduction to Optimization

𝐶𝑖 AV ⇒
𝑆1
𝑥1 𝑥2 𝑆2 𝐴1 𝐵𝑖 R

BV ⇓
-M 𝐴1 𝟐 0 −𝟏 −𝟏 𝟏 1 𝟑
𝟑 𝟑 𝟐
6 𝑥2 𝟏 1 0 1 0 1 3
𝟑 3
𝐶𝑗 1 6 0 0 -M
𝑍𝑗 −𝟐𝐌 6 𝑀 𝑀 −𝑀 M+6
+𝟐 +2
𝟑 3
𝐶𝑗 − 𝑍𝑗 𝟐𝐌 0 −𝑀 −𝑀 0
−𝟏 −2
𝟑 3

Table 3.7

𝐶𝑖 AV ⇒
𝑆1
𝑥1 𝑥2 𝑆2 𝐴1 𝐵𝑖 R

BV ⇓
1 𝑥1 1 0 −3 −1 3 3 3
2 2 2 2 2
6 𝑥2 0 1 1 1 −1 1 3
2 2 2 2
𝐶𝑗 1 6 0 0 -M
𝑍𝑗 1 6 3 5 −3 9
2 2 2 2
−3 −5 3
𝐶𝑗 − 𝑍𝑗 0 0 -M+
2
2 2

Table 3.8

Since all values of the 𝐶𝑗 − 𝑍𝑗 row are negative and 0, hence the optimal solution is reached. So
9
that from the above table the maximum value of objective function is and it occurs when
2
3 1
(𝑥1 , 𝑥2 ) = ( , ).
2 2

Now the dual of this problem can be treated as follows:

Since the first constraint has ≥ inequality, thus multiplying 𝑥1 + 𝑥2 ≥ 2 by −1 we have;

𝑥1 + 𝑥2 ≥ 2 ⇒ −𝑥1 − 𝑥2 ≤ −2.

−1 −1 𝑥1 −2
Since the primal LPP has the constraints ( ) (𝑥 ) ≤ ( )
1 3 2 3

Hence the dual 𝐿𝑃𝑃 is:

Min 𝑍 ∗ = −2𝑦1 + 3𝑦2 s.t.


−𝑦1 + 𝑦2 ≥ 1

Compiled by Dr. Habtamu Ts. 80 WkU-2024


Introduction to Optimization

−1 −1 𝑦1 1
−𝑦1 + 3𝑦2 ≥ 6 ⇒ ( ) (𝑦 ) ≤ ( )
1 3 2 6
𝑦1 , 𝑦2 ≥ 0
Solution: so that the standard form of dual 𝐿𝑃𝑃 is:
Min 𝑍 ∗ = −2𝑦1 + 3𝑦2 + 0𝑆1 + 0𝑆2 + 𝑀𝐴1 + 𝑀𝐴2
−𝑦1 + 𝑦2 − 𝑆1 + 𝐴1 = 1
s.t. −𝑦1 + 3𝑦2 − 𝑆2 + 𝐴2 = 6
𝑦1 , 𝑦2 , 𝑆1 , 𝑆2 , 𝐴1 , 𝐴2 ≥ 0
𝐶𝑖 AV ⇒
𝑦1 𝑦2 𝑆1 𝑆2 𝐴1 𝐴2 𝐵𝑖 R
BV ⇓
M 𝐴1 -1 1 −𝟏 𝟎 𝟏 0 1 1
M 𝐴2 -1 3 0 -1 0 1 6 2
𝐶𝑗 -2 3 0 0 M M
𝑍𝑗 -2M 4M −𝑀 −𝑀 𝑀 M 7M
𝐶𝑗 − 𝑍𝑗 -2+2M 3-4M 𝑀 𝑀 0 0

Table 3.9

𝐶𝑖 AV ⇒
𝑦1 𝑦2 𝑆1 𝑆2 𝐴1 𝐴2 𝐵𝑖 R
BV ⇓
3 𝑦2 -1 1 −𝟏 0 1 0 1 ---
M 𝐴2 2 0 𝟑 -𝟏 𝟎 -3 3 1
𝐶𝑗 -2 3 0 0 M M
𝑍𝑗 2M-3 3 𝟑𝑴 − 𝟑 −𝑀 3 -3M 3M+3
𝐶𝑗 − 𝑍𝑗 1-2M 0 𝟑 − 𝟑𝑴 𝑀 M-3 4M

Table 3.10

𝐶𝑖 AV ⇒
𝑆1
𝑦1 𝑦2 𝑆2 𝐴1 𝐴2 𝐵𝑖 R
BV ⇓
3 𝑦2 −𝟏 1 0 −1 1 -1 2 ---
𝟑 3
0 𝑆1 𝟐 0 𝟏 −𝟏 𝟎 -1 1 1
𝟑 𝟑
𝐶𝑗 -2 3 0 0 M M
𝑍𝑗 -1 3 0 −1 3 -3 6
𝐶𝑗 − 𝑍𝑗 -1 0 0 1 M-3 M+3

Table 3.11

Compiled by Dr. Habtamu Ts. 81 WkU-2024


Introduction to Optimization

𝐶𝑖 AV ⇒
𝑆1
𝑦1 𝑦2 𝑆2 𝐴1 𝐴2 𝐵𝑖
BV ⇓
3 𝑦2 0 1 1 −1 1 −3 5
2 2 2 2
-2 𝑦1 1 0 3 −1 0 −3 3
2 2 2 2
𝐶𝑗 -2 3 0 0 M M
𝑍𝑗 -2 3 −3 −1 3 −27 9
2 2 2 2
𝐶𝑗 − 𝑍𝑗 0 0 3 1 M-3 M+
27
2
2 2

Table 3.12

Since all values of the 𝐶𝑗 − 𝑍𝑗 row are positive and 0, hence the optimal solution is reached. So
9
that from the above table the minimum value of objective function 𝑍 ∗ is and it occurs when
2
3 5
(𝑦1 , 𝑦2 ) = ( , ) which is the dual solution.
2 2

Note that: The values of the slack variables on the 𝐶𝑗 − 𝑍𝑗 row are the solution of the primal
3 1 9
𝐿𝑃𝑃. i.e., 𝑥1 = and 𝑥2 = and Max 𝑍 = .
2 2 2

Example 3.3: find the optimal solution of primal(𝑃) 𝐿𝑃𝑃 using dual(𝐷) 𝐿𝑃𝑃;

(𝑃) Min 𝑍 = 4𝑥1 + 6𝑥2


𝑥1 + 2𝑥2 ≥ 80
s.t. 3𝑥1 + 𝑥2 ≥ 75
𝑥1 , 𝑥2 ≥ 0.
The dual of this 𝐿𝑃𝑃 is
(𝐷) Max 𝑍 = 80𝑦1 + 75𝑦2
1 2 𝑇 𝑦1 4 1 3 𝑦1 4
s.t. ( ) (𝑦 ) ≤ ( ) ⟹ ( ) (𝑦 ) ≤ ( ) i.e.,
3 1 2 6 2 1 2 6
𝑦1 + 3𝑦2 ≤ 4
2𝑦1 + 𝑦2 ≤ 6
𝑦1 , 𝑦2 ≥ 0.
Solution: the standard form of the dual LPP is:

Max 𝑍 ∗ = 80𝑦1 + 75𝑦2 + 0𝑆1 + 0𝑆2


𝑦1 + 3𝑦2 + 𝑆1 = 4

Compiled by Dr. Habtamu Ts. 82 WkU-2024


Introduction to Optimization

s.t. 2𝑦1 + 𝑦2 + 𝑆2 = 6
𝑦1 , 𝑦2 , 𝑆1 , 𝑆2 ≥ 0

𝐶𝑖 AV ⇒
𝑦1 𝑦2 𝑆2 𝐵𝑖 R
𝑆1
BV ⇓
0 𝑆1 1 3 1 0 4 4
0 𝑆2 2 1 0 1 6 3
𝐶𝑗 80 75 0 0
𝑍𝑗 0 0 0 0 0
𝐶𝑗 − 𝑍𝑗 80 75 0 0

Table 3.13

𝐶𝑖 AV ⇒
𝑦1 𝑦2 𝑆2 𝐵𝑖 R
𝑆1
BV ⇓
0 𝑆1 0 𝟓 1 −𝟏 1 𝟐
𝟐 𝟐 𝟓
80 𝑦1 1 𝟏 0 1 3 6
𝟐 2
𝐶𝑗 80 75 0 0
𝑍𝑗 80 40 0 40 240
𝐶𝑗 − 𝑍𝑗 0 35 0 -40

Table 3.14

𝐶𝑖 AV ⇒
𝑦1 𝑦2 𝑆2 𝐵𝑖
𝑆1
BV ⇓
75 𝑦2 0 1 2 −1 2
5 5 5
80 𝑦1 1 0 −1 3 14
5 5 5
𝐶𝑗 80 75 0 0
𝑍𝑗 80 75 14 33 254
𝐶𝑗 − 𝑍𝑗 0 0 -14 -33

Table 3.15

Since all values of the 𝐶𝑗 − 𝑍𝑗 row are negative and 0, hence the optimal solution is reached. So
that from the above table the maximum value of objective function 𝑍 ∗ is 254 and it occurs when
14 2
(𝑦1 , 𝑦2 ) = ( , ) which is the dual solution.
5 5

The values of the slack variables in the absolute value (for maximization case) on the 𝐶𝑗 − 𝑍𝑗
row are the solution of the primal 𝐿𝑃𝑃. i.e., 𝑥1 = 14 and 𝑥2 = 33 and Min 𝑍 = 254.

Compiled by Dr. Habtamu Ts. 83 WkU-2024


Introduction to Optimization

Exercise 3.2
Solve the following 𝐿𝑃𝑃 using dual

1) Min 𝑍 = 3𝑥1 + 4𝑥2 e) Max 𝑍 = 𝑥1 − 𝑥2 + 3𝑥3

4𝑥1 + 2𝑥2 ≥ 30 𝑥1 + 𝑥2 + 𝑥3 ≤ 10
s.t. −𝑥1 − 𝑥2 ≤ −18 s.t. 2𝑥1 − 𝑥3 ≤ 2
𝑥1 + 3𝑥2 ≥ 28 2𝑥1 − 2𝑥2 + 3𝑥3 ≤ 6
𝑥1 , 𝑥2 ≥ 0. 𝑥1 , 𝑥2 ≥ 0.

2) Min 𝑍 = 5𝑥1 + 12𝑥2 f) Max 𝑍 = 4𝑥1 + 2𝑥2

𝑥1 + 2𝑥2 ≤ 7 −𝑥1 − 𝑥2 ≤ 3
s.t. 2𝑥1 − 𝑥2 = 3 s.t. −𝑥1 + 𝑥2 ≥ −2
𝑥1 + 𝑥2 ≥ 2 𝑥1 , 𝑥2 ≥ 0.
𝑥1 , 𝑥2 ≥ 0.

3) Min 𝑍 = 5𝑥1 + 12𝑥2 g) Max 𝑍 = 4𝑥1 + 2𝑥2

𝑥1 + 2𝑥2 ≤ 7 −𝑥1 − 𝑥2 ≤ 3
s.t. 2𝑥1 − 𝑥2 = 3 s.t. −𝑥1 + 𝑥2 ≥ −2
𝑥1 + 𝑥2 ≥ 2 𝑥1 , 𝑥2 ≥ 0
𝑥1 , 𝑥2 ≥ 0

4) Min 𝑍 = 2𝑥1 + 3𝑥2 + 4𝑥3 h) Max 𝑍 = 12𝑥1 + 8𝑥2

2𝑥1 + 3𝑥2 + 5𝑥3 ≥ 2 s.t. 4𝑥2 + 2𝑥2 ≤ 80


s.t. 3𝑥1 + 𝑥2 + 7𝑥3 = 3 2𝑥1 + 3𝑥2 ≤ 10
𝑥1 + 4𝑥2 + 6𝑥3 ≤ 5 5𝑥1 + 𝑥2 ≤ 20
𝑥1 , 𝑥2 ≥ 0, 𝑥3 is unrestricted 𝑥1 , 𝑥2 ≥ 0

3.2.1 DUAL SIMPLEX

Dual simplex is used where we have an infeasible basic primal solution and where associated
dual solution is feasible.

Dual simplex method is applicable only if the 𝐿𝑃𝑃 is pure maximization form.

Compiled by Dr. Habtamu Ts. 84 WkU-2024


Introduction to Optimization

The following are the steps to solve 𝐿𝑃𝑃 using dual simplex method:

a) If the objective function is Min 𝑍 = 𝐶 𝑇 𝑋, convert into Max 𝑍 = −𝐶 𝑇 𝑋.


b) Convert all constraint in the form of “≤” type form.
c) Convert inequality constraint in to equality form by adding slack variable on the left side
of constraints.
d) Compute 𝐶𝑗 − 𝑍𝑗 ; If all values of 𝐶𝑗 − 𝑍𝑗 row are less than or equal to 0 and all solution
of 𝑏𝑖 ≥ 0, then the solution is obtained. If all or any of 𝐶𝑗 − 𝑍𝑗 ≤ 0 and at least one
value of 𝑏𝑖 < 0, then go to step 𝑒. If all or any of 𝐶𝑗 − 𝑍𝑗 ≥ 0 and all the value of 𝑏𝑖 ≥
0, then the method fails to solve this problem.
e) To determine key row (𝑘𝑟) select the most – 𝑣𝑒 in 𝑏𝑖 .
f) To determine key column (𝑘𝑐) divide 𝐶𝑗 − 𝑍𝑗 by its corresponding value of 𝑘𝑟( ignore
𝐶𝑗 −𝑍𝑗 𝐶𝑗 −𝑍𝑗
the ratio and ) and select the smallest ratio.
+𝑣𝑒 0

g) The basic variable in 𝑘𝑟 is the leaving while non-basic variable in 𝑘𝑐 is the entering
variable.
h) The value at the intersection of 𝑘𝑟 and 𝑘𝑐 is called key element (𝑘𝑒).
i) To fill the values in the next tableau, divide 𝑘𝑟 by 𝑘𝑒 and use the formula
𝑐𝑜𝑟𝑟.𝑘𝑟×𝑐𝑜𝑟𝑟.𝐾𝑐
𝑁𝑣 = 𝑜𝑣 − ;where 𝑁𝑣 =new value, 𝑂𝑣 =old value.
𝑘𝑒

Example 3.2.1: Use dual simplex to solve

Min 𝑍 = 𝑥1 + 2𝑥2 + 3𝑥3


S.t. 𝑥1 − 𝑥2 + 𝑥3 ≥ 4
𝑥1 + 𝑥2 + 2𝑥3 ≤ 8
𝑥2 − 𝑥3 ≥ −2
𝑥1 , 𝑥2 , 𝑥3 ≥ 0.

Solution: the Max of this 𝐿𝑃𝑃 is:

Max 𝑍 ∗ = −𝑍 = −𝑥1 − 2𝑥2 − 3𝑥3


S.t. −𝑥1 + 𝑥2 − 𝑥3 ≤ −4
𝑥1 + 𝑥2 + 2𝑥3 ≤ 8

Compiled by Dr. Habtamu Ts. 85 WkU-2024


Introduction to Optimization

−𝑥2 + 𝑥3 ≤ −2
𝑥1 , 𝑥2 , 𝑥3 ≥ 0.

The standard form of this LPP is:

Max 𝑍 ∗ = −𝑥1 − 2𝑥2 − 3𝑥3 + 0𝑆1 + 0𝑆2 + 0𝑆3


S.t. −𝑥1 + 𝑥2 − 𝑥3 + 𝑆1 = −4
𝑥1 + 𝑥2 + 2𝑥3 + 𝑆2 = 8
−𝑥2 + 𝑥3 + 𝑆3 = −2
𝑥1 , 𝑥2 , 𝑥3 , 𝑆 ≥ 0.

𝐶𝑖 AV ⇒
𝑥1 𝑥2 𝑥3 𝑆1 𝑆2 𝑆3 𝐵𝑖
BV ⇓
0 𝑆1 -1 1 -1 1 0 0 -4
0 𝑆2 1 1 2 0 1 0 8
0 𝑆3 0 -1 1 0 0 1 -2
𝐶𝑗 -1 -2 -3 0 0 0
𝑍𝑗 0 00 0 0 0 0 0
𝐶𝑗 − 𝑍𝑗 -1 -2 -3 0 0 0

𝐶𝑗 − 𝑍𝑗 1 - 3 - - -
𝑘𝑟

Table 3.16

𝐶𝑖 AV ⇒
𝑥1 𝑥2 𝑥3 𝑆2 𝑆2 𝑆3 𝐵𝑖
BV ⇓
-1 𝑥1 1 -1 1 -1 0 0 4
0 𝑆2 0 2 1 1 1 0 4
0 𝑆3 0 -1 1 0 0 1 -2
𝐶𝑗 -1 -2 -3 0 0 0
𝑍𝑗 -1 01 -1 1 0 0 -4
𝐶𝑗 − 𝑍𝑗 0 -3 -2 -1 0 0

𝐶𝑗 − 𝑍𝑗 - 3 - - - -
𝑘𝑟

Table 3.17

𝐶𝑖 AV ⇒
𝑥1 𝑥2 𝑥3 𝑆2 𝑆2 𝑆3 𝐵𝑖
BV ⇓
-1 𝑥1 1 0 0 -1 0 -1 6
0 𝑆2 0 0 3 1 1 2 0
-2 𝑥2 0 1 -1 0 0 -1 2

Compiled by Dr. Habtamu Ts. 86 WkU-2024


Introduction to Optimization

𝐶𝑗 -1 -2 -3 0 0 0
𝑍𝑗 -1 0--2 2 1 0 3 -10
𝐶𝑗 − 𝑍𝑗 0 0 -5 -1 0 -3

Table 3.18

Since all values of 𝐶𝑗 − 𝑍𝑗 row are less than or equal to 0 and all 𝐵𝑖 ≥ 0, the optimal solution is
obtained. Thus 𝑥1 = 6 , 𝑥2 = 2 , 𝑥3 = 0 and Max 𝑍 ∗ = −10 and Min 𝑍 = 10 .

Exercise 3.2.1

1. Solve the following 𝐿𝑃𝑃 using dual simplex method


a) Min 𝑍 = 3𝑥1 + 2𝑥2 + 𝑥3 + 4𝑥4

2𝑥1 + 4𝑥2 + 5𝑥3 + 𝑥4 ≥ 10


s.t. 3𝑥1 − 𝑥2 + 7𝑥3 − 2𝑥4 ≥ 2
5𝑥1 + 2𝑥2 + 𝑥3 + 6𝑥4 ≥ 15
𝑥1 , 𝑥2 , 𝑥3 , 𝑥4 ≥ 0.
65 20 215
Answer: 𝑥1 = , 𝑥2 = 0, 𝑥3 = , 𝑥4 = 0 ; Min 𝑍 = .
23 23 23

b) Min 𝑍 = 12𝑥1 + 8𝑥2 e) Max 𝑍 = −3𝑥1 − 5𝑥2 − 4𝑥3

2𝑥1 + 2𝑥2 ≥ 6 2𝑥1 + 𝑥2 − 5𝑥3 ≤ −2


s.t. 3𝑥1 + 𝑥2 ≥ 7 s.t. 3𝑥1 + 2𝑥2 + 4𝑥3 ≥ 16
𝑥1 , 𝑥2 ≥ 0. 𝑥1 , 𝑥2 , 𝑥3 ≥ 0.

c) Max 𝑍 = −2𝑥1 − 2𝑥2 − 4𝑥3 f) Min 𝑍 = 2𝑥1 + 𝑥2

2𝑥1 + 3𝑥2 + 5𝑥3 ≥ 2 3𝑥1 + 𝑥2 ≥ 3


s.t. 3𝑥1 + 4𝑥2 + 7𝑥3 ≤ 3 s.t. 4𝑥1 + 3𝑥2 ≥ 6
𝑥1 + 4𝑥2 + 6𝑥3 ≤ 5 𝑥1 + 2𝑥2 ≤ 3
𝑥1 , 𝑥2 , 𝑥3 ≥ 0. 𝑥1 , 𝑥2 ≥ 0.

d) Min 𝑍 = 𝑥1 + 2𝑥2 + 3𝑥3

𝑥1 − 𝑥2 + 𝑥3 ≥ 6
s.t. 𝑥1 + 𝑥2 + 2𝑥3 ≤ 10
𝑥2 − 𝑥3 ≥ 4
𝑥1 , 𝑥2 , 𝑥3 ≥ 0.

2. The accompanying tableau provides the optimal solution to this dual:

Compiled by Dr. Habtamu Ts. 87 WkU-2024


Introduction to Optimization

Minimize the cost= 120𝑈1 + 240𝑈2


Subject to 2𝑈1 + 2𝑈2 ≥ 0.5
𝑈1 + 3𝑈2 ≥ 0.4
𝑈1 , 𝑈2 ≥ 0 .

What does the corresponding primal problem look like, and what is its optimal solution?

Miscellaneous Exercise-3

1- What is a shadow price? How does the concept relate to the dual of an LP problem? How does it
relate to the primal?
2- Solve the following 𝐿𝑃𝑃using simplex method. A firm that manufactures both lawn mowers and snow
blowers:𝑥1 =the number of lawn mowers, 𝑥2 =the number of snow blowers
Max 𝑍 = $30𝑥1 + $80𝑥2
S.t. 2𝑥1 + 4𝑥2 ≤ 1000 Labor hours available
6𝑥1 + 2𝑥2 ≤ 1,200 Labor of steel available
𝑥2 ≤ 20 Snow blower engine available
𝑥1 , 𝑥2 ≥ 0.
a) What is the best product mix? What is the optimal profit?
b) When the optimal solution has been reached, which resource has the highest marginal value?
c) Over what range in each of the RHS values are these shadows valid?
d) What are the ranges over which the objective function coefficients can vary for each of the
two decision variables?
3- Obtain the dual problem of the following primal LPP:
a) Max 𝑍 = 5𝑥1 + 6𝑥2 Min 𝑍 = 𝑥1 + 2𝑥2
S.t. 2𝑥1 + 3𝑥2 ≤ 3000 (Labor constraint) S.t. −2𝑥1 − 4𝑥2 ≥ −160
5𝑥1 + 7𝑥2 ≤ 1000 (Machine constraint) 𝑥1 − 𝑥2 ≥ 30
𝑥1 + 𝑥2 ≤ 5000 (Market constraint) 𝑥1 ≥ 10
𝑥1 , 𝑥2 ≥ 0. 𝑥1 , 𝑥2 ≥ 0.
4- A firm manufactures two products A and B on machine I and II as shown below:
Product Available Hours
Machine A B 300
I 30 20 110
II 5 10
Profit/unit($) 6 8

Compiled by Dr. Habtamu Ts. 88 WkU-2024


Introduction to Optimization

The total time available is 300hrs and 110hrs on machine I and II respectively. Product 𝐴 and 𝐵
contribute $6 and $8 per unit respectively.

a) Formulate the 𝐿𝑃𝑃 model for the primal and determine the optimal solution using simplex
method.
b) Formulate the 𝐿𝑃𝑃 model for the dual and determine the optimal solution from the final primal
simplex tableau.
5- For a 𝐿𝑃𝑃;
Max 𝑍 = 300𝑥1 + 250𝑥2
S.t. 2𝑥1 + 𝑥2 ≤ 40
𝑥1 + 3𝑥2 ≤ 45
𝑥1 ≤ 12
𝑥1 , 𝑥2 ≥ 0.
a) What are the solution of the dual variables (i.e., shadow prices) 𝑦1 , 𝑦2 and 𝑦3?
b) What is the optimal dual cost?
6- Consider the following optimal tableau, where 𝑆1 and 𝑆2 are slack variables added to the original
problem:

𝐶𝑖 AV ⇒
𝑥1 𝑥2 𝑆1 𝑆2 𝐵𝑖
BV ⇓
$10 𝑥1 1 4 2 0 160
$0 𝑆2 0 6 -7 1 200
𝐶𝑗 $10 $30 $0 $0
𝑍𝑗 $10 $40 $20 $0 $1,600
𝐶𝑗 − 𝑍𝑗 0 -10 -20 0

a) What is the range of optimality for the contribution rate of the variable 𝑥1 ?
b) What is the range of insignificance of the contribution rate of the variable 𝑥2 ?
c) How much would you be willing to pay for one more unit of the first resource, which is
represented by slack variable 𝑠1 ?
d) What is the value of one more unit of the second resource? Why?
e) What would the optimal solution be if the profit on 𝑥2 were changed to $35 instead of $30?
f) What would the optimal solution be if the profit on 𝑥1 were changed to $12 instead of $10?
How much would the maximum profit change?

Compiled by Dr. Habtamu Ts. 89 WkU-2024


Introduction to Optimization

CHAPTER FIVE

DISCRETE PROGRAMMING

Introduction

In all the optimization techniques considered so far, the design variables are assumed to be
continuous, which can take any real value. In many situations it is entirely appropriate and
possible to have fractional solutions. For example, it is possible to use a plate of thickness
2.60𝑚𝑚 in the construction of a boiler shell, 3.34 hours of labor time in a project, and 1.78 𝑙𝑏 of
nitrate to produce a fertilizer. Also, in many engineering systems, certain design variables can
only have discrete values. For example, pipes carrying water in a heat exchanger may be
1
available only in diameter increments of 8 in. However, there are practical problems in which the
fractional values of the design variables are neither practical nor physically meaningful. For
example, it is not possible to use 1.6 boilers in a thermal power station, 1.9 workers in a project,
and 2.76 lathes in a machine shop. If an integer solution is desired, it is possible to use any of the
techniques described in previous chapters and round off the optimum values of the design
variables to the nearest integer values. However, in many cases, it is very difficult to round off
the solution without violating any of the constraints. Frequently, the rounding of certain variables
requires substantial changes in the values of some other variables to satisfy all the constraints.
Further, the round-off solution may give a value of the objective function that is very far from
the original optimum value. All these difficulties can be avoided if the optimization problem is
posed and solved as an integer programming problem.

When all the variables are constrained to take only integer values in an optimization problem, it
is called an all-integer programming problem. When the variables are restricted to take only
discrete values, the problem is called a discrete programming problem. When some variables
only are restricted to take integer (discrete) values, the optimization problem is called a mixed-
integer (discrete) programming problem. When all the design variables of an optimization
problem are allowed to take on values of either zero or 1, the problem is called a zero–one
programming problem and sometimes the design variables are restricted to take certain values
and certain set of values. Among the several techniques available for solving the all-integer and

Compiled by Dr. Habtamu Ts. 90 WkU-2024


Introduction to Optimization

mixed-integer linear programming problems, the cutting plane algorithm of Gomory and the
branch-and-bound algorithm of Land and Doig [10.8] have been quite popular. Although the
zero–one linear programming problems can be solved by the general cutting plane or the branch-
and-bound algorithms, Balas developed an efficient enumerative algorithm for solving those
problems. Very little work has been done in the field of integer nonlinear programming. The
generalized penalty function method and the sequential linear integer (discrete) programming
method can be used to solve all integer and mixed-integer nonlinear programming problems.

5.1 Integer Programming Problems

In many practical problems (as for 𝐿𝑃s), the decision variables make sense only if they have
integer values. For example, it is often necessary to assign people, machines and vehicles to
activities in integer quantities. If requiring integer values are the only way in which a problem
deviates from a linear programming formulation, then it is an integer programming (𝐼𝑃) problem.
Thus, simply stated, an integer programming problem (𝐼𝑃) is a linear programming (𝐿𝑃) in
which some or all of the variables are required to be non-negative integers. Basically, there are
three types of linear programming problems that involve integer solutions: pure- integer
problems, mixed-integer problems and 0 − 1 problems. An 𝐼𝑃 in which all variables are required
to be integers is called a pure integer programming problem. For instance, the number of each
type of large machine to produce the number of each type of house to construct and so on. An
𝐼𝑃 in which only some of the variables are required to be integers is called a mixed integer
programming problem. For instance, an investor may want to decide on a portfolio of
investments that includes land and/or racehorses. Here, land would be a continuous variable; the
investor could purchase 25.37 acres, but the number of horses purchased would be an integer.

An integer programming problem in which all the decision variables are of the yes-no type (must
equal 0 or 1) is called a 0– 1 𝐼𝑃. We see that 0– 1 𝐼𝑃s occur in surprisingly many yes-no type
situations. For instance, a bank may be considering possible locations for new branch offices.
Sites that are chosen would receive a 1, whereas those not chosen would receive a 0.

We apply the different solution methods to solve integer programming problems

Compiled by Dr. Habtamu Ts. 91 WkU-2024


Introduction to Optimization

5.1.1 Solution Methods for Integer Programming Problems

5.1.1.1 Graphical Representation

Example 5.1.1: Maximize 𝑓 (𝑥) = 3𝑥1 + 4𝑥2

Subject to: 3𝑥1 − 𝑥2 ≤ 12 ………… 5.1

3𝑥1 + 11𝑥2 ≤ 66

𝑥1 ≥ 0

𝑥2 ≥ 0

𝑥1 & 𝑥2 are integers.

The graphical solution of this problem, by ignoring the integer requirements, is shown in

1 1 1
Fig. 5.1. It can be seen that the solution is 𝑥1 = 5 2 ,𝑥2 = 4 2 with a value of 𝑓 = 342

Since this is a non integer solution, we truncate the fractional parts and obtain the new solution
as 𝑥1 = 5, 𝑥2 = 4, and 𝑓 = 31. By comparing this solution with all other integer solutions
(shown by dots in Fig. 5.1), we find that this solution is optimum for the integer 𝐿𝑃 problem
stated in Eqs. (5.1).

It is to be noted that truncation of the fractional part of a 𝐿𝑃 problem will not always give the
solution of the corresponding integer 𝐿𝑃 problem. This can be illustrated

Compiled by Dr. Habtamu Ts. 92 WkU-2024


Introduction to Optimization

Figure 5.1 Graphical solution of the problem stated in Eqs. 5.1.

By changing the constraint 3𝑥1 + 11𝑥2 ≤ 66 to 7𝑥1 + 11𝑥2 ≤ 88 in Eqs. 5.1. With this
altered constraint, the feasible region and the solution of the LP problem, without considering the
integer requirement, are shown in Fig. 5.2. The optimum solution of this problem is identical
1
with that of the preceding problem: namely, 𝑥1 = 5 ,
2

Figure 5.2 Graphical solutions with modified constraint.

1 1
𝑥2 = 4 2 , and 𝑓 = 34 2 . The truncation of the fractional part of this solution gives 𝑥1 = 5 , 𝑥2

= 4, and 𝑓 = 31. Although this truncated solution happened to be optimum to the corresponding
integer problem in the earlier case, it is not so in the present case.

In this case the optimum solution of the integer programming problem is given by

𝑥1∗ = 0, 𝑥2∗ = 8 and 𝑓 ∗ = 32.

Exercise 5.1.1.1

Find the solution for the following Problems using a graphical Method.

1) Maximize 𝑓 = 4𝑥1 + 5𝑥2


Subject to 3𝑥1 + 𝑥2 ≥ 2
𝑥1 + 4𝑥2 ≥ 5
3𝑥1 + 2𝑥2 ≥ 7

Compiled by Dr. Habtamu Ts. 93 WkU-2024


Introduction to Optimization

𝑥1 , 𝑥2 ≥ 0, Integer
2) Maximize 𝑓 = 4𝑥1 + 8𝑥2
Subject to 4𝑥1 + 5𝑥2 ≤ 40
𝑥1 + 2𝑥2 ≤ 12
𝑥1 , 𝑥2 ≥ 0, integer
3) Maximize 𝑓 = 4𝑥1 + 3𝑥2
Subject to 3𝑥1 + 2𝑥2 ≤ 18 and 𝑥1 , 𝑥2 ≥ 0, integer.

5.1.1.2 GOMORY’S CUTTING PLANE METHOD

5.1.1.2.1 Concept of a Cutting Plane

Gomory’s method is based on the idea of generating a cutting plane. To illustrate the concept of
a cutting plane, we again consider the problem stated in Eqs. 5.1.

The feasible region of the problem is denoted by 𝐴𝐵𝐶𝐷 in Fig. 5.1. The optimal solution of the
problem, without considering the integer requirement, is given by point 𝐶. This point
1 1 1
corresponds to 𝑥1 = 5 2 , 𝑥2 = 4 2 , and 𝑓 = 342, which is not optimal to the integer

programming problem since the values of 𝑥1 and 𝑥2 are not integers. The feasible integer
solutions of the problem are denoted by dots in Fig. 5.1. These points are called the integer
lattice points. In Fig. 5.3, the original feasible region is reduced to a new feasible region
𝐴𝐵𝐸𝐹𝐺𝐷 by including the additional (arbitrarily selected) constraints.

Figure 5.3 Effect of additional constraints.

Compiled by Dr. Habtamu Ts. 94 WkU-2024


Introduction to Optimization

The idea behind adding these additional constraints is to reduce the original feasible convex
region 𝐴𝐵𝐶𝐷 to a new feasible convex region (such as 𝐴𝐵𝐸𝐹𝐺𝐷) such that an extreme point of
the new feasible region becomes an integer optimal solution to the integer Programming
problem. There are two main considerations to be taken while selecting the additional
constraints: (1) the new feasible region should also be a convex set and (2) the part of the
original feasible region that is sliced off because of the additional constraints should not include
any feasible integer solutions of the original problem.

In Fig. 5.3, the inclusion of the two arbitrarily selected additional constraints 𝑃𝑄 and 𝑃′𝑄′ gives
the extreme point 𝐹(𝑥1 = 5, 𝑥2 = 4, 𝑓 = 31) as the optimal solution of the integer programming
problem stated in Eqs.5.1. Gomory’s method is one in which the additional constraints are
developed in a systematic manner.

5.1.1.2.2 Gomory’s Method for All-Integer Programming Problems

In this method, the given problem [Eqs. 5.1] is first solved as an ordinary 𝐿𝑃 problem by
neglecting the integer requirement. If the optimum values of the variables of the problem happen
to be integers, there is nothing more to be done since the integer solution is already obtained. On
the other hand, if one or more of the basic variables have fractional values, some additional
constraints, known as Gomory constraints, which will force the solution toward an all-integer
point will have to be introduced. To see how the Gomory constraints are generated, let the
tableau corresponding to the optimum (noninteger) solution of the ordinary 𝐿𝑃 problem be as
shown in Table 5.1.

Here it is assumed that there are a total of 𝑚 + 𝑛 variables (𝑛 original variables plus 𝑚 slack
variables). At the optimal solution, the basic variables are represented as 𝑥𝑖 (𝑖 = 1, 2, . . . , 𝑚) and
the nonbasic variables as 𝑦𝑗 (𝑗 = 1, 2, . . . , 𝑛) for convenience.

From Table 5.1, choose the basic variable with the largest fractional value. Let this basic variable
be 𝑥𝑖 . When there is a tie in the fractional values of the basic variables, any of them can be taken
as 𝑥𝑖 . This variable can be expressed, from the 𝑖 th equation of Table 5.1, as:

𝑥𝑖 = 𝑏̅𝑖 − ∑𝑛𝑗=1 𝑎̅𝑖𝑗 𝑦𝑗 (5.2)

Compiled by Dr. Habtamu Ts. 95 WkU-2024


Introduction to Optimization

Where 𝑏̅𝑖 is a noninteger. Let us write

𝑏̅𝑖 = 𝑏̂𝑖 + 𝛽𝑖 (5.3)

𝑎̅𝑖𝑗 = 𝑎̂𝑖𝑗 + 𝛼𝑖𝑗 (5.4)

Basic Coefficient corresponding to:


variables
Objective
𝑥1 𝑥2 … 𝑥𝑖 … . 𝑥𝑚 𝑦1 𝑦2 … . 𝑦𝑗 … 𝑦𝑛 function Constraint
𝑥1 1 0 0 0 𝑎̅11 𝑎̅12 𝑎̅1𝑗 𝑎̅1𝑛 0 𝑏̅1
𝑥2 0 1 0 0 𝑎̅21 𝑎̅22 𝑎̅2𝑗 𝑎̅2𝑛 0 𝑏̅2
.
.
.
0 0 1 0 𝑎̅𝑖1 𝑎̅𝑖2 𝑎̅𝑖𝑗 𝑎̅𝑖𝑛 0 𝑏̅𝑖
𝑥𝑖
.
.
. 0 0 0 1 𝑎̅𝑚1 𝑎̅𝑚2 𝑎̅𝑚𝑗 𝑎̅𝑚𝑛 0 𝑏̅𝑚
1 𝑓
𝑥𝑚 0 0 0 0 𝑐̅1 𝑐̅2 𝑐̅𝑗 𝑐̅𝑛
𝑓
Table 5.1 Optimum Non integer Solution of Ordinary 𝐿𝑃 Problem

Where 𝑏̂𝑖 and 𝑎̅𝑖𝑗 denote the integers obtained by truncating the fractional parts from 𝑏̅𝑖

and 𝑎̅𝑖𝑗 , respectively. Thus 𝛽𝑖 will be a strictly positive fraction (0 < 𝛽𝑖 < 1) and 𝛼𝑖𝑗 will be a
nonnegative fraction (0 ≤ 𝛼𝑖𝑗 < 1). With the help of Eqs.5.3 and 5.4, Eq. 5.2 can be rewritten
as: 𝛽𝑖 − ∑𝑛𝑗=1 𝛼𝑖𝑗 𝑦𝑗 = 𝑥𝑖 − 𝑏̂𝑖 + ∑𝑛𝑗=1 𝑎̂𝑖𝑗 𝑦𝑗 (5.5)

Since all the variables 𝑥𝑖 and 𝑦𝑗 must be integers at an optimal integer solution, the right-hand
side of Eq. 5.5 must be an integer. Thus we obtain

𝛽𝑖 − ∑𝑛𝑗=1 𝛼𝑖𝑗 𝑦𝑗 = integer (5.6)

Notice that 𝛼𝑖𝑗 are nonnegative fractions and 𝑦𝑗 are nonnegative integers. Hence the quantity

∑𝑛𝑗=1 𝛼𝑖𝑗 𝑦𝑗 will always be a nonnegative number. Since 𝛽𝑖 is a strictly positive fraction, we

have: (𝛽𝑖 − ∑𝑛𝑗=1 𝛼𝑖𝑗 𝑦𝑗 ) ≤ 𝛽𝑖 < 1 (5.7)

Compiled by Dr. Habtamu Ts. 96 WkU-2024


Introduction to Optimization

As the quantity (𝛽𝑖 − ∑𝑛𝑗=1 𝛼𝑖𝑗 𝑦𝑗 ) has to be an integer [from Eq. 5.6)], it can be either a zero or
a negative integer. Hence we obtain the desired constraint as

𝛽𝑖 − ∑𝑛𝑗=1 𝛼𝑖𝑗 𝑦𝑗 ≤ 0 (5.8)

By adding a nonnegative slack variable 𝑠𝑖 , the Gomory constraint equation becomes

𝑠𝑖 − ∑𝑛𝑗=1 𝛼𝑖𝑗 𝑦𝑗 = −𝛽𝑖 (5.9)

Where 𝑠𝑖 must also be an integer by definition.

Basic Coefficient corresponding to:


variables _______________________________

𝑥1 𝑥2 … 𝑥𝑖 … . 𝑥𝑚 𝑦1 𝑦2 … . 𝑦𝑗 … 𝑦𝑛 𝑓 𝑠𝑖 Constraint
𝑥1 1 0 0 0 𝑎̅11 𝑎̅12 𝑎̅1𝑗 𝑎̅1𝑛 0 0 𝑏̅1
𝑥2 0 1 0 0 𝑎̅21 𝑎̅22 𝑎̅2𝑗 𝑎̅2𝑛 0 0 𝑏̅2
.
.
.
𝑥𝑖 0 0 1 0 𝑎̅𝑖1 ̅𝑎𝑖2 𝑎̅𝑖𝑗 𝑎̅𝑖𝑛 0 0 𝑏̅𝑖
.
.
.
𝑥𝑚 0 0 0 1 𝑎̅𝑚1 𝑎̅𝑚2 𝑎̅𝑚𝑗 𝑎̅𝑚𝑛 0 0 𝑏̅𝑚
𝑓 0 0 0 0 𝑐̅1 𝑐̅2 𝑐̅𝑗 𝑐̅𝑛 1 0 𝑓
𝑠𝑖 -𝛽𝑖
0 0 0 0 -𝛼̅𝑖1 -𝛼̅𝑖2 -𝛼̅𝑖𝑗 -𝛼̅𝑖𝑛 0 1

Table 5.2 Optimal Solution with Gomory Constraint


Computational Procedure: Once the Gomory constraint is derived, the coefficients of this
constraint are inserted in a new row of the final table of the ordinary 𝐿𝑃 problem (i.e., Table 5.1).
Since all 𝑦𝑗 = 0 in Table 5.1, the Gomory constraint equation (5.9), becomes

𝑠𝑖 = -𝛽𝑖 = negative, which is infeasible. This means that the original optimal solution is not
satisfying this new constraint. To obtain a new optimal solution that satisfies the new constraint,

Eq. 5.9, the dual simplex method discussed in Previous Chapter can be used. The new tableau,
after adding the Gomory constraint, is as shown in Table 5.2.

Compiled by Dr. Habtamu Ts. 97 WkU-2024


Introduction to Optimization

After finding the new optimum solution, by applying the dual simplex method, test whether the
new solution is all-integer or not. If the new optimum solution is all-integer, the process ends.
On the other hand, if any of the basic variables in the new solution take on fractional values, a
new Gomory constraint is derived from the new simplex tableau and the dual simplex method is
applied again. This procedure is continued until either an optimal integer solution is obtained or
the dual simplex method indicates that the problem has no feasible integer solution.

Note that:

1) If there is no feasible integer solution to the given (primal) problem, this can be detected by
noting an unbounded condition for the dual problem.
2) The application of the dual simplex method to remove the infeasibility of Eq. 5.9 is
equivalent to cutting off the original feasible solution toward the optimal integer solution.
3) This method has a serious drawback. This is associated with the round-off errors that arise
during numerical computations. Due to these round-off errors, we may ultimately get a
wrong optimal integer solution. This can be rectified by storing the numbers as fractions
instead of as decimal quantities. However, the magnitudes of the numerators and
denominators of the fractional numbers, after some calculations, may exceed the capacity of
the computer. This difficulty can be avoided by using the all-integer integer programming
algorithm developed by Gomory.
4) For obtaining the optimal solution of an ordinary 𝐿𝑃 problem, we start from a basic feasible
solution (at the start of phase 𝐼𝐼) and find a sequence of improved basic feasible solutions
until the optimum basic feasible solution is found. During this process, if the computations
have to be terminated at any stage (for some reason), the current basic feasible solution can
be taken as an approximation to the optimum solution. However, this cannot be done if we
apply Gomory’s method for solving an integer programming problem. This is due to the fact
that the problem remains infeasible in the sense that no integer solution can be obtained until
the whole problem is solved. Thus we will not be having any good integer solution that can
be taken as an approximate optimum solution in case the computations have to be terminated
in the middle of the process.
5) From the description given above, the number of Gomory constraints to be generated might
appear to be very large, especially if the solution converges slowly. If the number of

Compiled by Dr. Habtamu Ts. 98 WkU-2024


Introduction to Optimization

constraints really becomes very large, the size of the problem also grows without bound since
one (slack) variable and one constraint are added with the addition of each Gomory
constraint. However, it can be observed that the total number of constraints in the modified
tableau will not exceed the number of variables in the original problem, namely, 𝑛 + 𝑚. The
original problem has m equality constraints in 𝑛 + 𝑚 variables and we observe that there are
𝑛 nonbasic variables. When a Gomory constraint is added, the number of constraints and the
number of variables will each be increased by one, but the number of nonbasic variables will
remain 𝑛. Hence at most 𝑛 slack variables of Gomory constraints can be nonbasic at any
time, and any additional Gomory constraint must be redundant. In other words, at most 𝑛
Gomory constraints can be binding at a time. If at all a (𝑛 + 1)th constraint is there (with its
slack variable as a basic and positive variable), it must be implied by the remaining
constraints. Hence we drop any Gomory constraint once its slack variable becomes basic in a
feasible solution.

Example 5.1.2: Minimize 𝑓 = −3𝑥1 − 4𝑥2

Subject to 3𝑥1 − 𝑥2 + 𝑥3 = 12

3𝑥1 + 11𝑥2 + 𝑥4 = 66

𝑥𝑖 ≥ 0, 𝑖 = 1 𝑡𝑜 4

all 𝑥𝑖 are integers

This problem can be seen to be same as the one stated in Eqs. 5.1 with the addition of slack
variables 𝑥3 and 𝑥4 .

Solution:

Step 1: Solve the 𝐿𝑃 problem by neglecting the integer requirement of the variables 𝑥𝑖 , 𝑖 = 1 to
4, using the regular simplex method as shown below:

Basic Coefficients of Variables 𝑏̅𝑖⁄


Variables 𝑥1 𝑥2 𝑥3 𝑥4 −𝑓 𝑏̅𝑖 𝑎̅𝑖𝑠 for 𝑎̅𝑖𝑠 > 0
𝑥3 3 -1 1 0 0 12
𝑥4 6 ←
3 11 0 1 0 66

Compiled by Dr. Habtamu Ts. 99 WkU-2024


Introduction to Optimization

Pivot
Element
-𝑓 -3 -4 0 0 1 0

Most negative 𝑐̅𝑗

Result of Pivoting:

______________________________________________________
36 1 11
𝑥3 0 1 0 18 ←Smaller one
11 11 2

Pivot

element
3 1
𝑥2 1 0 0 6 22
11 11

21 4
-𝑓 - 11 0 0 1 24
11

________________________________________________________________


Most negative ̅𝑐𝑗

Result of Pivoting:
______________________________________________________
11 1 11
𝑥1 1 0 0
36 36 2

1 1 9
𝑥2 0 1 − 12 0
12 2

7 5 69
-𝑓 0 0 1
12 12 2

_______________________________________________________
Since all the cost coefficients are nonnegative, the last tableau gives the optimum solution as

11 9 69
𝑥1 = , 𝑥2 = 2 , 𝑥3 = 0, 𝑥4 = 0, 𝑓𝑚𝑖𝑛 = − 2 , Which can be seen to be identical to the
2

graphical solution obtained in section 5.2.

Step 2: Generate a Gomory constraint. Since the solution above is noninteger, a Gomory
constraint has to be added to the last tableau. Since there is a tie between 𝑥1 and 𝑥2 , let us select
Compiled by Dr. Habtamu Ts. 100 WkU-
2024
Introduction to Optimization

𝑥1 as the basic variable having the largest fractional value. From the row corresponding to 𝑥1 in
11 11 1
the last tableau, we can write: 𝑥1 = − 36 𝑦1 − 36 𝑦2 (5.10)
2

Where 𝑦1 and 𝑦2 are used in place of 𝑥3 and 𝑥4 to denote the nonbasic variables. By comparing
Eq. 5.10 with Eq. 5.2, we find that

11 1 11
𝑖 = 1, 𝑏̅1 = , 𝑏̂1 = 5, 𝛽1 = , 𝑎̅11 =
2 12 36
11 1 1
𝑎̂11 = 0, 𝛼11 = 36, 𝑎̅12 = 36 , 𝑎̂12 = 0, and 𝛼12 = 36.

From Eq. 5.9, the Gomory constraint can be expressed as: 𝑠1 − 𝛼11 𝑦1 − 𝛼12 𝑦2 = −𝛽1 (5.11)

Where 𝑠1 is a new non negative (integer) slack variable. Equation (5.11) can be written as

11 1 1
𝑠1 − 36 𝑦1 − 36 𝑦2 = − 2 (5.12)

By introducing this constraint, Eq. (5.12), into the previous optimum tableau, we obtain the new
tableau shown below:

Basic 𝑏̅𝑖⁄
Coefficients of Variables 𝑎̅𝑖𝑠
Variables
𝑥1 𝑥2 𝑦1 𝑦2 -𝑓 𝑠𝑖 𝑏̅𝑖 for 𝑎̅𝑖𝑠 >0
11 1 11
𝑥1 1 0 0 0
36 36 2
1 1 9
𝑥2 0 1 - 12 0 0
12 12

7 5 69
−𝑓 0 0 1 0
12 12 2

𝑠𝑖 11 1 1
0 0 - - 0 1 -
36 36 12

Step 3: Apply the dual simplex method to find a new optimum solution. For this, we select the
1
pivotal row r such that 𝑏𝑟 = min (𝑏𝑖 < 0)= − 2 corresponding to 𝑠1 in this case. The first column
𝑐̅𝑠 𝑐̅𝑗
𝑠 is selected such that = min ( ).
−𝑎̅𝑟𝑠 𝑎̅𝑟𝑗 <0 −𝑎̅𝑟𝑠

𝑐̅𝑗 7 36 21 5 36
Here = 𝑋 11 = 11 for column 𝑦1. And 𝑋 = 15 for column 𝑦2 .
−𝑎̅𝑟𝑗 12 12 1

Compiled by Dr. Habtamu Ts. 101 WkU-


2024
Introduction to Optimization

21 21 11
Since is minimum out of and 15, the pivot element will be − 36 . The result of pivot
11 11

operation is given in the following tableau:

Basic 𝑏̅𝑖⁄
Coefficients of Variables 𝑎̅𝑖𝑠
Varibles
𝑥1 𝑥2 𝑦1 𝑦2 -𝑓 𝑠𝑖 𝑏̅𝑖 for 𝑎̅𝑖𝑠 >0
𝑥1 1 0 0 0 0 1 5
1 3 51
0 1 0 0 -
11 11 11
𝑥2
4 21 369
−𝑓 0 0 0 1
11 11 11

1 35 18
𝑦1 0 0 1 0 -
11 11 11

7 7 6
The solution given by the present tableau is 𝑥1 = 5, 𝑥2 = 411 ,𝑦1 = 1 11 , and 𝑓 = −33 11, in

which some variables are still nonintegers.

Step 4: Generate a new Gomory constraint. To generate the new Gomory constraint, we
arbitrarily select 𝑥2 as the variable having the largest fractional value (since there is a tie between
51 1 3
𝑥2 and 𝑦1 ). The row corresponding to 𝑥2 gives 𝑥2 = 11 − 11 𝑦2 + 11 𝑠1

From this equation, the Gomory constraint [Eq. 5.9] can be written as

1 3 7
𝑠2 − 11 𝑦2 + 11 𝑠1 = − 11

When this constraint is added to the previous tableau, we obtain the following tableau:

Basic Coefficients of Variables


Varibles 𝑥1 𝑥2 𝑦1 𝑦2 -𝑓 𝑠1 𝑠2 𝑏̅𝑖
𝑥1 1 0 0 0 0 1 0 5

1 3 51
𝑥2 0 1 0 0 - 11 0
11 11

𝑦1 1 36 18
0 0 1 0 - 11 0
11 11

Compiled by Dr. Habtamu Ts. 102 WkU-


2024
Introduction to Optimization

4 21 369
-𝑓 0 0 0 1 0
11 11 11

𝑠2 1 3 7
0 0 0 - 0 1 -
11 11 11

Step 5: Apply the dual simplex method to find a new optimum solution. To carry the pivot
operation, the pivot row is selected to correspond to the most negative value of 𝑏̅𝑖 . This is the 𝑠2
row in this case.

1
Since only 𝑎̅𝑟𝑗 corresponding to column 𝑦2 is negative, the pivot element will be − in the 𝑠2
11

row. The pivot operation on this element leads to the following tableau:

Basic Coefficients of Variables


Varibles 𝑥1 𝑥2 𝑦1 𝑦2 -𝑓 𝑠1 𝑠2 𝑏̅𝑖
𝑥1 1 0 0 0 0 1 0 5

𝑥2 0 1 0 0 0 0 1 4

𝑦1 0 0 1 0 0 -3 1 1

-𝑓 0 0 0 0 1 3 4 31

𝑦2 0 0 0 1 0 -3 -11 7

The solution given by this tableau is 𝑥1 = 5, 𝑥2 = 4, 𝑦1 = 1, 𝑦2 = 7, and 𝑓 = −31, which can be


seen to satisfy the integer requirement. Hence this is the desired solution.

Exercise 5.1.1.2.2

Solve the following problem using Gomory’s cutting plane method

1) Maximize 𝑓 = 6𝑥1 + 7𝑥2


Subject to 7𝑥1 + 6𝑥2 ≤ 42
5𝑥1 + 9𝑥2 ≤ 45
𝑥1 − 𝑥2 ≤ 4
𝑥𝑖 ≥ 0 and integer, i=1.2
2) Maximize 𝑓 = 𝑥1 + 2𝑥2

Compiled by Dr. Habtamu Ts. 103 WkU-


2024
Introduction to Optimization

Subject to 𝑥1 + 𝑥2 ≤ 7
2𝑥1 ≤ 11, 2𝑥2 ≤ 7
𝑥𝑖 ≥ 0 and integer, i=1,2.

5.1.1.2.3 Gomory’s Method for Mixed-Integer Programming Problems

The method discussed in Section 5.3.2 is applicable to solve all integer programming problems
where both the decision and slack variables are restricted to integer values in the optimal
solution. In the mixed-integer programming problems, only a subset of the decision and slack
variables are restricted to integer values. The procedure for solving mixed-integer programming
problems is similar to that of all-integer programming problems in many respects.

Solution Procedure: As in the case of an all-integer programming problem, the first step involved
in the solution of a mixed-integer programming problem is to obtain an optimal solution of the
ordinary 𝐿𝑃 problem without considering the integer restrictions.

If the values of the basic variables, which were restricted to integer values, happen to be integers
in this optimal solution, there is nothing more to be done. Otherwise, a Gomory constraint is
formulated by taking the integer-restricted basic variable, which has the largest fractional value
in the optimal solution of the ordinary 𝐿𝑃 problem.

Let 𝑥𝑖 be the basic variable that has the largest fractional value in the optimal solution (as shown
in Table 5.1), although it is restricted to take on only integer values. If the nonbasic variables are
denoted as 𝑦𝑗 , 𝑗 = 1, 2. . . 𝑛, the basic variable 𝑥𝑖 can be expressed as (from Table 5.1)

𝑥𝑖 = 𝑏̅𝑖 − ∑𝑛𝑗=1 𝑎̅𝑖𝑗 𝑦𝑗 (5.2)

We can write

𝑏̅𝑖 = 𝑏̂𝑖 + 𝛽𝑖 (5.3)

Where 𝑏̂𝑖 is the integer obtained by truncating the fractional part of 𝑏̅𝑖 and 𝛽𝑖 is the fractional
part of 𝑏̅𝑖 . By defining

Compiled by Dr. Habtamu Ts. 104 WkU-


2024
Introduction to Optimization

+
𝑎̅𝑖𝑗 = 𝑎𝑖𝑗 + 𝑎̅𝑖𝑗 (5.13)

Where

+
𝑎̅𝑖𝑗 𝑖𝑓 𝑎̅𝑖𝑗 ≥ 0
𝑎𝑖𝑗 ={ (5.14)
0 𝑖𝑓 𝑎̅𝑖𝑗 < 0

0 𝑖𝑓 𝑎̅𝑖𝑗 ≥ 0
𝑎̅𝑖𝑗 = { (5.15)
0 𝑖𝑓 𝑎̅𝑖𝑗 < 0

Eq. 5.2 can be rewritten as

∑𝑛𝑗=1(𝑎𝑖𝑗
+
+ 𝑎̅𝑖𝑗 ) 𝑦𝑗 = 𝛽𝑖 + (𝑏̂𝑖 − 𝑥𝑖 ) (5.16)

Here, by assumption, 𝑥𝑖 is restricted to integer values while 𝑏̅𝑖 is not an integer. Since 0 < 𝛽𝑖 <
1 and 𝑏̂𝑖 is an integer, we can have the value of 𝛽𝑖 + (𝑏̂𝑖 − 𝑥𝑖 ) either ≥ 0 or < 0. First, we
consider the case where

𝛽𝑖 + (𝑏̂𝑖 − 𝑥𝑖 ) ≥ 0 (5.17)

In this case, in order for 𝑥𝑖 to be an integer, we must have

𝛽𝑖 + (𝑏̂𝑖 − 𝑥𝑖 ) = 𝛽𝑖 or 𝛽𝑖 + 1 or 𝛽𝑖 +2,… (5.18)

Thus Eq. 5.16 gives

∑𝑛𝑖=1(𝑎𝑖𝑗
+
+ 𝑎̅𝑖𝑗 )𝑦𝑗 ≥ 𝛽𝑖 (5.19)

Since 𝑎̅𝑖𝑗 are nonpositive and 𝑦𝑗 are nonnegative by definition, we have

∑𝑛𝑗=1 𝑎𝑖𝑗
+
𝑦𝑗 ≥ ∑𝑛𝑗=1(𝑎𝑖𝑗
+
− 𝑎̅𝑖𝑗 ) 𝑦𝑗 (5.20)

and hence

∑𝑛𝑗=1 𝑎𝑖𝑗
+
𝑦𝑗 ≥ 𝛽𝑖 (5.21)

Next, we consider the case where

𝛽𝑖 + (𝑏̂𝑖 − 𝑥𝑖 ) < 0 (5.22)


Compiled by Dr. Habtamu Ts. 105 WkU-
2024
Introduction to Optimization

For 𝑥𝑖 to be an integer, we must have (since 0 < 𝛽𝑖 < 1)

𝛽𝑖 + (𝑏̂𝑖 − 𝑥𝑖 ) = −1 + 𝛽𝑖 or −2 + 𝛽𝑖 or −3 + 𝛽𝑖 (5.23)

Thus Eq. 5.16 yields

∑𝑛𝑖=1(𝑎𝑖𝑗
+
+ 𝑎̅𝑖𝑗 )𝑦𝑗 ≤ 𝛽𝑖 − 1 (5.24)

Since ∑𝑛𝑗=1 𝑎̅𝑖𝑗 𝑦𝑗 ≤ ∑𝑛𝑖=1(𝑎𝑖𝑗


+
+ 𝑎̅𝑖𝑗 )𝑦𝑗 , We obtain

∑𝑛𝑗=1 𝑎̅𝑖𝑗 𝑦𝑗 ≤ 𝛽𝑖 − 1 (5.25)

Upon dividing this inequality by the negative quantity (𝛽𝑖 − 1), we obtain

1
∑𝑛𝑗=1 𝑎̅𝑖𝑗 𝑦𝑗 ≥ 1 (5.26)
𝛽𝑖 −1

Multiplying both sides of this inequality by 𝛽𝑖 > 0, we can write the inequality (5.26) as

𝛽𝑖
∑𝑛𝑗=1 𝑎̅𝑖𝑗 𝑦𝑗 ≥ 𝛽𝑖 (5.27)
𝛽𝑖 −1

Since one of the inequalities in equations 5.21 and 5.27 must be satisfied, the following
inequality must hold true:

𝛽𝑖
∑𝑛𝑗=1 𝑎𝑖𝑗
+
𝑦𝑗 + ∑𝑛𝑗=1 𝑎̅𝑖𝑗 𝑦𝑗 ≥ 𝛽 (5.28)
𝛽𝑖 −1

By introducing a slack variable 𝑠𝑖 , we obtain the desired Gomory constraint as

𝛽
𝑠𝑖 = ∑𝑛𝑗=1 𝑎𝑖𝑗
+ 𝑖
𝑦𝑗 + 𝛽 −1 ∑𝑛𝑗=1 𝑎̅𝑖𝑗 𝑦𝑗 − 𝛽 (5.29)
𝑖

This constraint must be satisfied before the variable 𝑥𝑖 becomes an integer. The slack variable 𝑠𝑖
is not required to be an integer. At the optimal solution of the ordinary 𝐿𝑃 problem (given by
Table 5.1) all 𝑦𝑖 = 0 and hence Eq. 5.29 becomes

𝑠𝑖 = −𝛽𝑖 = Negative

Compiled by Dr. Habtamu Ts. 106 WkU-


2024
Introduction to Optimization

This can be seen to be infeasible. Hence the constraint Eq. 5.29 is added at the end of Table 5.1,
and the dual simplex method applied. This procedure is repeated the required number of times
until the optimal mixed integer solution is found.

In the derivation of the Gomory constraint, Eq. 5.29, we have not made use of the fact that some
of the variables (𝑦𝑗 ) might be integer variables. We notice that any integer value can be added to
+
or subtracted from the coefficient of 𝑎̿𝑖𝑘 (= 𝑎𝑖𝑘 + 𝑎̅𝑖𝑘 ) of an integer variable 𝑦𝑘 provided that we
subtract or add, respectively, the same value to 𝑥𝑖 in Eq. 5.16, that is,

∑𝑛𝑗=1 𝑎̿𝑖𝑗 𝑦𝑗 + (𝑎̿𝑖𝑘 ± 𝛿 )𝑦𝑘 = 𝛽𝑖 + 𝑏̂𝑖 − (𝑥𝑖 ≠ 𝛿) (5.30)


𝑗≠𝑘

From Eq. 5.30, the same logic as was used in the derivation of Eqs. 5.21 and 5.27 can be used to
obtain the same final equation, Eq. 5.29. Of course, the coefficients of integer variables 𝑦𝑘 will
be altered by integer amounts in Eq. 5.29.

It has been established that to cut the feasible region as much as possible (through the Gomory
constraint), we have to make the coefficients of integer variables 𝑦𝑘 as small as possible. We can
see that the smallest positive coefficient we can have for 𝑦𝑗 in Eq. (5.16) is

𝛼𝑖𝑗 = 𝑎̅𝑖𝑗 − 𝑎̂𝑖𝑗

and the largest negative coefficient as

1 − 𝛼𝑖𝑗 = 1 − 𝑎̅𝑖𝑗 + 𝑎̂𝑖𝑗

Where 𝑎̂𝑖𝑗 is the integer obtained by truncating the fractional part of 𝑎̅𝑖𝑗 and 𝛼𝑖𝑗 is the fractional
part. Thus we have a choice of two expressions, (𝑎̅𝑖𝑗 − 𝑎̂𝑖𝑗 ) and (1 − 𝑎̅𝑖𝑗 + 𝑎̂𝑖𝑗 ), for the
coefficients of 𝑦𝑗 in Eq. 5.29. We choose the smaller one out of the two to make the Gomory
constraint, Eq. 5.29, cut deeper into the original feasible space. Thus Eq. 5.29 can be rewritten
as

+ 𝛽 𝑖 − 𝑖 𝛽
𝑠𝑖 = ∑𝑗 𝑎𝑖𝑗 𝑦𝑗 + 𝛽 −1 ∑𝑗 (+𝑎𝑖𝑗 )𝑦𝑗 + ∑
⏟𝑗 (𝑎̅𝑖𝑗 − 𝑎̂𝑖𝑗 )𝑦𝑗 + 𝛽⏟𝑖 −1 ∑𝑗 (1 − 𝑎̅𝑖𝑗 + 𝑎̂𝑖𝑗 )𝑦𝑗 − 𝛽𝑖
⏟ 𝑖

For non-integer variable 𝑦𝑗 for integer variable 𝑦𝑗 for integer variable 𝑦𝑗


Compiled by Dr. Habtamu Ts. 107 WkU-
2024
Introduction to Optimization

and for 𝑎̅𝑖𝑗 − 𝑎̂𝑖𝑗 ≤ 𝛽𝑖 and for 𝑎̅𝑖𝑗 − 𝑎̂𝑖𝑗 > 𝛽𝑖

Where the slack variable 𝑠𝑖 is not restricted to be an integer.

Example 5.1.3: Solve the problem of Example 5.2 with 𝑥2 only restricted to take integer values.

Solution:

Step 1: Solve the 𝐿𝑃 problem by simplex method by neglecting the integer requirement.

This gives the following optimal tableau:

Basic Coefficients of Variables


Varibles 𝑥1 𝑥2 𝑦1 𝑦2 -𝑓 𝑏̅𝑖
11 1 11
𝑥1 1 0 0
36 36 2

𝑥2 1 1 9
0 1 - 0
12 12 2
-𝑓
7 5 69
0 0 1
12 12 2
1 1
The non-integer solution given by this tableau is: 𝑥1 = 5 2 , 𝑥2 = 4 2, 𝑦1 = 𝑦2 = 0, and 𝑓𝑚𝑖𝑛 =
1
−34 2.

Step 2: Formulate a Gomory constraint . Since 𝑥2 is the only variable that is restricted to take
integer values, we construct the Gomory constraint for 𝑥2 . From the tableau of step 1, we obtain

𝑥2 = 𝑏̅2 − 𝑎̅21 𝑦1 − 𝑎̅22 𝑦2

9 1 1
Where 𝑏̅2 = 2, 𝑎̅21 = − 12, and 𝑎̅22 = 12

1
According to Eq. 5.3, we write 𝑏̅2 as 𝑏̅2 = 𝑏̂2 + 𝛽2 where 𝑏̂2 = 4 and 𝛽2 = 2. Similarly, we write

from Eq. 5.13

+ −
𝑎̅21 = 𝑎21 + 𝑎21

+ −
𝑎̅22 = 𝑎22 + 𝑎22

Compiled by Dr. Habtamu Ts. 108 WkU-


2024
Introduction to Optimization

Where:

+ − 1
𝑎21 = 0, 𝑎21 =− (since𝑎̅21 is negative)
12

+ 1 −
𝑎22 = 12, 𝑎22 = 0 (since𝑎̅22 is nonnegative)

The Gomory constraint can be expressed as [from Eq. 5.26]:

𝛽2
𝑠2 − ∑2𝑗=1 𝑎2𝑗
+
𝑦𝑗 + 𝛽 ∑2𝑗=1 𝑎2𝑗

𝑦𝑗 = −𝛽2
2 −1

Where 𝑠2 is a slack variable that is not required to take integer values. By substituting the values
+ −
of 𝑎𝑖𝑗 , 𝑎𝑖𝑗 , and 𝛽𝑖 , this constraint can be written as

1 1 1
𝑠2 + 12 𝑦1 − 12 𝑦2 = − 2

When this constraint is added to the tableau above, we obtain the following

Basic Coefficients of Variables


Varibles 𝑥1 𝑥2 𝑦1 𝑦2 -𝑓 𝑠2 ̅
𝑏𝑖
11 1 11
𝑥1 1 0 0 0
36 36 2

𝑥2 1 1 9
0 1 - 0 0
12 12 2

7 5 69
-𝑓 0 0 1 0
12 12 2

𝑠2 1 1 1
0 0 - 0 1 -2
12 12

1
Step 3: Apply the dual simplex method to find a new optimum solution. Since − is the only
2

negative 𝑏̅𝑖 term, the pivot operation has to be done in 𝑠2 row. Further, 𝑎̅𝑖𝑗 corresponding to
𝑦2 column is the only negative coefficient in 𝑠2 row and hence pivoting has to be done on this
1
element, − 12 . The result of pivot operation is shown in the following tableau:

Basic Coefficients of Variables


Varibles 𝑥1 𝑥2 𝑦1 𝑦2 -𝑓 𝑠2 𝑏̅𝑖

Compiled by Dr. Habtamu Ts. 109 WkU-


2024
Introduction to Optimization

1 1 13
𝑥1 1 0 0 0
3 3 3

𝑥2 0 1 0 0 0 1 4

0 0 1 0 1 5 32
-𝑓
0 0 -1 1 0 -12 6
𝑠2

This tableau gives the desired integer solution as

1
𝑥1 = 5 , 𝑥2 = 4 , 𝑦2 = 6, 𝑦1 = 0, 𝑠2 = 0 and 𝑓𝑚𝑖𝑛 = −32.
2

Exercise 5.1.1.2.3

Solve the following problem mixed integer problem using Gomory’s method

1. Maximize 𝑓 = 𝑥1 + 𝑥2
S.t 𝑥1 − 𝑥2 ≥ 0
−3𝑥1 + 𝑥2 ≥ 3

𝑥1 , 𝑥2 ≥ 0 and 𝑥2 is integer

2. Minimize 𝑓 = −3𝑥1 + 2𝑥2


S.t 𝑥1 ≤ 3
𝑥1 − 𝑥2 ≤ 0
𝑥1 , 𝑥2 ≥ 0 and 𝑥1 is integer
3. Maximize 𝑓 = 𝑥1 + 𝑥2
S.t 𝑥1 + 2𝑥2 ≤ 2000
𝑥1 + 𝑥2 ≤ 1500
𝑥1 − 𝑥2 ≤ 600

5.1.2 BRANCH-AND-BOUND METHOD

We would explain the Branch and Bond algorithm by an example as follows:

Max 𝑍 = 𝑓 = 3𝑥1 + 2𝑥2

Compiled by Dr. Habtamu Ts. 110 WkU-


2024
Introduction to Optimization

S.t: 𝑥1 ≤ 2

𝑥2 ≤ 2

7
𝑥1 + 𝑥2 ≥ 2

𝑥1 , 𝑥2 𝑎𝑛𝑑 𝑖𝑛𝑡𝑒𝑔𝑒𝑟.

a) The initial step is to solve 𝐼𝐿𝑃𝑃(integer programming problem) by ignoring the


restriction on the decision variables of being integers
b) In the optimal solution, 𝑥2 turns to be fractional. But this is not an optimal solution in
terms of integers .By restricting 𝑥2 to be an integer optimal solution may worse but
certainly not better as this is done by adding the constraints. If a optimal table 𝑥2 = 𝛼
(not integer value), then we add the constraint 𝑥2 ≤ [𝛼], where [𝛼] denote the greatest
integer contained in 𝛼.again solve the problem for optimality, if this table contains both
𝑥1 and 𝑥2 are positive integers ,then stop at this node and compute 𝑧, the objective
function value.
c) Further, we see the effect of adding 𝑥2 ≥ [𝛼 ] + 1, and solve for optimality, if an integer
solution is available or infeasibility occurs then stop. In case of integer solution campare
the value of 𝑍 with the value computed in (𝑏) and consider the solution which gives
better value.
d) In step (𝑏) and (𝑐), if neither infeasible exists nor a integer solution is obtained,then we
continue with further additions of constraints until all nodes are fathomed.

A node is said to be fathomed if it satisfies one of the conditions.

i. The 𝐿𝑃𝑃 optimal solution at that node is integer value.


ii. The 𝐿𝑃𝑃 problem is infeasible
iii. The optimal value of 𝑧 for the 𝐿𝑃𝑃 is not better than current lower bound (for
max problem) and current upper bound (for min problem).

In view of the above discussion, continue branching from those nodes only which has larger
value (for max) smaller value (for min) of 𝑍, then obtained in the recent integer solution, i.e.,
from unfathomed nodes.
Compiled by Dr. Habtamu Ts. 111 WkU-
2024
Introduction to Optimization

The solution of the above problem by the graphical method gives five vertices, (0, 0), (2, 0),
(0, 2), (2, 1.5), (1.5, 2).Obviously the maximum occurs at the vertex (2, 1.5), and the
maximum value: 𝑍 = 9. Mention this at node 1.Since, the optimal solution 𝑥1 = 2, 𝑥2 = 1.5
is not integer valued at 𝑥2 .Hence, we add the constraints 𝑥2 ≤ [1.5] and 𝑥2 ≥ [1.5] + 1 i.e.,
𝑥2 ≤ 1 and 𝑥2 ≥ 2 to the given problem and proceeds as follows:

1) Now, with the addition of 𝑥2 ≤ 1, the vertices are (0, 0), (1, 0), (2, 1), (0, 1). The
Maximum occurs at 𝑥1 = 2 , 𝑥2 = 1 and the Maximum of 𝑍 = 8. Write this solution at
Node 2.
2) However, the addition of 𝑥2 ≥ 2 gives the vertices as (1.5, 2), (1, 2).The maximum
occurs at 𝑥1 = 1.5 , 𝑥2 = 2, with maximum value of 𝑍 = 8.5. Write this solution at Node
3.
3) The optimal solution at node 1 is integer valued, while at node 3 improved in spite of the
fact it is non integer valued. Hence Node 2 is fathomed and we continue at Node 3.
4) Like steps, (1) and (2), we add the constraints 𝑥1 ≤ 1 and 𝑥2 ≥ 2.For the addition of
𝑥1 ≤ 1, we get the optimal solution at 𝑥1 = 1, 𝑥2 = 2 with the optimal value of 𝑍 = 7,
see Node 4. This is fathomed as we have got integer valued solution. But the addition of
𝑥2 ≥ 2 turns the problem infeasible, see Node 5, and hence it is fathomed.

Compiled by Dr. Habtamu Ts. 112 WkU-


2024
Introduction to Optimization

From all fathomed nodes, we pick up the best solution and this is 𝑥1 = 2, 𝑥2 = 1 with maximum
value of 𝑍 = 8.

Example 5.1.5: Find the optimal solution of the 𝐼𝐿𝑃𝑃 by Branch and Bound technique .Draw
the diagram showing the solution inside nodes.

Max 𝑓 = 𝑥1 − 2𝑥2 + 3𝑥3

S.t: 2𝑥1 + 3𝑥2 − 𝑥3 ≤ 8

𝑥1 − 𝑥2 + 𝑥3 ≤ 5

𝑥1 , 𝑥2 , 𝑥𝑥 ≥ 0 and 𝑥2 is integer.

Solution: First, we solve the related linear programming by simplex method by neglecting the
integer restriction.

The related 𝐿𝑃𝑃 is


Compiled by Dr. Habtamu Ts. 113 WkU-
2024
Introduction to Optimization

Max 𝑓 = 𝑥1 − 2𝑥2 + 3𝑥3

2𝑥1 + 3𝑥2 − 𝑥3 + 𝑠1 = 8

𝑥1 − 𝑥2 + 𝑥3 + 𝑠2 = 5

𝑥1 , 𝑥2 , 𝑥3 , 𝑠1 , 𝑠2 ≥ 0.

Basic Coefficients of Variables 𝑏̅𝑖⁄


𝑎̅𝑖𝑠 for 𝑎̅𝑖𝑠 > 0
Variables 𝑥1 𝑥2 𝑥3 𝑠1 𝑠2 −𝑓 𝑏̅𝑖
𝑠1 2 3 -1 1 0 0 8
𝑠2 1 -1 1 0 1 0 5 5←

-𝑓 -1 2 -3 0 0 1 0

Most negative 𝑐̅𝑗

Result of pivoting:

Basic Coefficients of Variables 𝑏̅𝑖⁄


𝑎̅𝑖𝑠 for 𝑎̅𝑖𝑠 > 0
Variables 𝑥1 𝑥2 𝑥3 𝑠1 𝑠2 −𝑓 𝑏̅𝑖
𝑠1 3 0 1 1 0 13 13
2 ←
𝑥3 1 -1 1 0 1 0 5 2

-𝑓 2 -1 0 0 3 0 15

Most negative

Result of pivoting:

Compiled by Dr. Habtamu Ts. 114 WkU-


2024
Introduction to Optimization

Basic Coefficients of Variables 𝑏̅𝑖⁄


𝑎̅𝑖𝑠 for 𝑎̅𝑖𝑠 > 0
Variables 𝑥1 𝑥2 𝑥3 𝑠1 𝑠2 −𝑓 𝑏̅𝑖
3 1 1 13
𝑥2 1 0 0
2 2 2 2
𝑥3 5 1 5 23
0 0 0
2 2 2 2

-𝑓
7 1 5 43
0 0 0
2 2 2 2

Since all the cost coefficients are nonnegative, the last tableau gives the optimum solution as

13 23 13
𝑥1 = 0, 𝑥2 = , 𝑥3 = .Thus, the above optimal solution is fraction at 𝑥2 = , while we
2 2 2

need a positive integer to the optimal table. We need the constraint 𝑥2 ≤ 6. The effect of the
addition constraint shown in the following table:

Basic Coefficients of Variables 𝑏̅𝑖⁄


𝑎̅𝑖𝑠 for 𝑎̅𝑖𝑠 > 0
Variables 𝑥1 𝑥2 𝑥3 𝑠1 𝑠2 −𝑓 𝑠 𝑏̅𝑖
3 1 1 13
𝑥2 1 0 0 0
2 2 2 2
𝑥3 5 1 5 23
0 0 0 0
2 2 2 2
3 1 1 1
s -2 0 0 -2 -2 0 1 -2

7 1 5 43
-𝑓 0 0 0
2 2 2 2

Now by using the dual simplex method

Result of pivoting:

Basic Coefficients of Variables 𝑏̅𝑖⁄


𝑎̅𝑖𝑠 for 𝑎̅𝑖𝑠 > 0

Compiled by Dr. Habtamu Ts. 115 WkU-


2024
Introduction to Optimization

Variables 𝑥1 𝑥2 𝑥3 𝑠1 𝑠2 −𝑓 𝑠 𝑏̅𝑖
1
𝑥2 0 0 0 0 1 6
2
𝑥3 1
1 0 1 0 1 11
2

3 0 0 1 1 -2 1
𝑠1

2 0 0 0 3 4 21
-𝑓

From this table, the optimal solution is integer valued. However in case it is not integer valued,
say variable 𝑥2 in the solution, we must have proceeded further. Next, we investigate the effect
13
of adding the constraint 𝑥2 ≥ [ 2 ] + 1 = 7 described in the following table.

Basic Coefficients of Variables 𝑏̅𝑖⁄


𝑎̅𝑖𝑠 for 𝑎̅𝑖𝑠 > 0
Variables 𝑥1 𝑥2 𝑥3 𝑠1 𝑠2 −𝑓 𝑠 𝑏̅𝑖
3 1 1 13
𝑥2 1 0 0
2 2 2 2
𝑥3 5 1 3 23
0 1 0
2 2 2 2
3 1 1
0 0 1 -7
2 2 2

7 1 5 43
-𝑓 0 0 0
2 2 2 2

Thus, the addition of 𝑥2 ≥ 7 makes the solution infeasible.

From the above tables, we sketch the flow diagram. Node 1 is solution of related 𝐿𝑃𝑃 which is
fraction in 𝑥2 . On adding the constraint 𝑥2 ≤ 6, we get an integer valued solution as 𝑥1 = 0,𝑥2 =
43
6, 𝑥3 = 11 with the optimal value 𝑓 = .This is shown on Node 2.Thus, Node if fathomed.
2

Next, we add the constraint 𝑥2 ≥ 7 to the iteration table and note that the resulting solution is
infeasible. See Node 3.In this way, Node 3 is also fathomed. The flow diagram is shown below,

Compiled by Dr. Habtamu Ts. 116 WkU-


2024
Introduction to Optimization

obviously from the diagram, the optimal solution is 𝑥1 = 0, 𝑥2 = 6, 𝑥3 = 11 and maximum


value of 𝑓 = 21.

Exercise 5.1.2

Use the Branch & Bound method to solve the following 𝐿𝑃𝑃s
a) Max 𝑍 = 5𝑥1 + 4𝑥2

S.t.: 𝑥1 + 𝑥2 ≤ 5

10𝑥1 + 6𝑥2 ≤ 45

𝑥1 & 𝑥2 are non negative integer.

b) Max z = 5𝑥1 + 2𝑥2

S.t.: 3𝑥1 + 𝑥2 ≤ 12

𝑥1 + 𝑥2 ≤ 5

𝑥1 ≥ 0, 𝑥2 ≥ 0 and 𝑥1 is integer

c) Maximize z= 3𝑥1 + 4𝑥2

S.t.: 7𝑥1 + 11𝑥2 ≤ 88,

3𝑥1 − 𝑥2 ≤ 12

𝑥1 ≥ 0, 𝑥2 ≥ 0

𝑥𝑖 =Integer, 𝑖 = 1, 2

d) Max z=2𝑥1 + 𝑥2

S.t.: 5𝑥1 + 2𝑥2 ≤ 8


Compiled by Dr. Habtamu Ts. 117 WkU-
2024
Introduction to Optimization

𝑥1 + 𝑥2 ≤ 3

𝑥1 , 𝑥2 ≥ 0; 𝑥1 integer

e) Max 𝑧 = 3𝑥1 + 𝑥2

S.t: 5𝑥1 + 2𝑥2 ≤ 10


4𝑥1 + 𝑥2 ≤ 7
𝑥1 , 𝑥2 ≥ 0; 𝑥2 integer

f) Min z = 3𝑥1 + 𝑥2

S.t 𝑥1 + 5𝑥2 ≥ 8
𝑥1 + 2𝑥2 ≥ 4
𝑥1 , 𝑥2 ≥ 0, 𝑥1 integer

Miscellaneous Exercise-5

1) Which of the following are false, justify your answer.


a. The integer and discrete programming problems are one and the same.
b. Gomory’s cutting plane method is applicable to mixed-integer programming problems.
c. The Balas method was developed for the solution of all-integer programming problems.
d. The branch-and-bound method can be used to solve zero–one programming problems.
e. The branch-and-bound method is applicable to nonlinear integer programming problems.

2) Find the solution for following Problems using a graphical procedure.

a) Minimize 𝑓 = 4𝑥1 + 5𝑥2


S.t: 3𝑥1 + 𝑥2 ≥ 2
𝑥1 + 4𝑥2 ≥ 5
3𝑥1 + 2𝑥2 ≥ 7
𝑥1 , 𝑥2 ≥ 0, integer
b) Maximize 𝑓 = 4𝑥1 + 8𝑥2
S.t: 4𝑥1 + 5𝑥2 ≤ 40
𝑥1 + 2𝑥2 ≤ 12
𝑥1 , 𝑥2 ≥ 0, Integers
c) Maximize 𝑓 = 4𝑥1 + 3𝑥2
S.t: 3𝑥1 + 2𝑥2 ≤ 18
𝑥1 , 𝑥2 ≥ 0, Integer
d) Maximize 𝑓 = 3𝑥1 − 𝑥2
Compiled by Dr. Habtamu Ts. 118 WkU-
2024
Introduction to Optimization

S.t: 3𝑥1 − 2𝑥2 ≤ 3

−5𝑥1 − 4𝑥2 ≤ −10

𝑥1 , 𝑥2 ≥ 0, Integer

e) Minimize 𝑓 = 2𝑥1 + 𝑥2
S.t 8𝑥1 + 5𝑥2 ≤ 15
𝑥1 , 𝑥2 ≥ 0, Integer
3) Solve the following problem using Gomory’s cutting plane method:
a) Maximize 𝑓 = 6𝑥1 + 7𝑥2
S.t: 7𝑥1 + 6𝑥2 ≤ 42
5𝑥1 + 9𝑥2 ≤ 45
𝑥1 − 𝑥2 ≤ 4
𝑥𝑖 ≥ 0 and integer, 𝑖 = 1, 2
b) Maximize 𝑓 = 𝑥1 + 2𝑥2
S.t: 𝑥1 + 𝑥2 ≤ 7
2𝑥1 ≤ 11, 2𝑥2 ≤ 7
𝑥1 , 𝑥2 ≥ 0, and 𝑥1 is integer.
4) Solve the following zero–one programming problem using an enumeration procedure:
a) Maximize 𝑓 = −10𝑥1 − 5𝑥2 − 3𝑥3
S.t: 𝑥1 + 2𝑥2 + 𝑥3 ≥ 4
2𝑥1 + 𝑥1 + 𝑥3 ≤ 6
𝑥𝑖 = 0 or 1 ,𝑖 = ,1, 2, 3
b) Minimize 𝑓 = −5𝑥1 + 7𝑥2 + 10𝑥3 − 3𝑥4 + 𝑥5
S.t: 𝑥1 + 3𝑥2 − 5𝑥3 + 𝑥4 + 4𝑥5 ≤ 0
2𝑥1 + 6𝑥2 − 3𝑥3 + 2𝑥4 + 2𝑥5 ≥ 4
𝑥2 − 2𝑥3 − 𝑥4 + 𝑥5 ≤ −2
𝑥𝑖 = 0 or 1, 𝑖 = 1, 2, 3, 4, 5
5) Find the solution of the following problem using the branch-and-bound method coupled with the
graphical method of solution for the branching problems:
a) Maximize 𝑓 = 𝑥1 − 4𝑥2
S.t: 𝑥1 − 𝑥2 ≥ −4, 4𝑥1 + 5𝑥2 ≤ 45
5𝑥1 − 2𝑥2 ≤ 20, 5𝑥1 + 2𝑥2 ≥ 10
b) Maximize 𝑓 (𝑥) = 3𝑥1 + 4𝑥2

Compiled by Dr. Habtamu Ts. 119 WkU-


2024
Introduction to Optimization

S. t 3𝑥1 − 𝑥2 ≤ 12

3𝑥1 + 11𝑥2 ≤ 66, 𝑥1 ≥ 0, 𝑥2 ≥ 0

𝑥1 & 𝑥2 are integers.

6) Consider the discrete variable problem:


Maximize 𝑓 = 𝑥1 𝑥2
S.t: 𝑥12 + 𝑥22 ≤ 4
𝑥1 ∈ {0.1, 0.5, 1.1, 1.6, 2.0}
𝑥2 ∈ {0.4, 0.8, 1.5, 2.0}
1.1
Approximate this problem as a 𝐿𝑃 problem at the vector, 𝑥 0 = [ ]
0.8

Compiled by Dr. Habtamu Ts. 120 WkU-


2024

You might also like