Introduction to Linear and Integer Programming Saba
Neyshabouri
Slide 3
Operations Research OR was developed and used during world war
II While the technology was advancing fast, the problems that
analysts were facing were getting bigger and more complex. Decision
making for complex systems are very complicated and is out of
humans mind capability to solve problems with many variables.
Operations Research and optimization methods try to find The Best
solution for a problem.
Slide 4
Operation Research The founder of the field is George B.
Dantzig who invented Simplex method for solving Linear Programming
(LP) problems. With Simplex it was shown that the optimal solution
of LPs can be found.
Slide 5
LP Structure There are 3 main parts that forms an optimization
problem: Decision Variables: Variables that represent the decision
that can be made. Objective function: Each optimization problem is
trying to optimize (maximize/minimize) some goal such as costs,
profits, revenue. Constraints: Set of real restricting parameters
that are imposed in real life or by the structure of the problem.
Example for constraints can be: Limited budget for a project
Limited manpower or resources Being limited to choose only one
option out of many options (Assignment)
Slide 6
General Form of LP The general form for LP is: (1) is the
objective function (2),(3) are the set of constraints X: vector of
decision variables (n*1) C: vector of objective function
coefficients (n*1) A: Technology matrix (m*n) b: vector of resource
availability (m*1)
Slide 7
LP example Production planning: a producer of furniture has to
make the decision about the production planning for 2 of its
products: work desks and lunch tables. There are 2 resources
available for production which these products are using: lumber and
carpentry. 20 units of each resource is available. Here is the
table containing the data for the problem: DeskTable Selling
Price$15$20 DeskTableAvailability Lumber1220 Carpentry2120
Slide 8
LP example First table shows the selling prices of each
product, and second table show the amount of each resource that is
used to produce one unit of product as well as resource
availability. The question is how many of each product should be
produced in order to maximize the revenue? To model this problem as
a linear programming formulation we should define our decision
variables:
Slide 9
Example Formulation Defining the decision variables of the
problem, the formulation will be: (1) is the total revenue
generated by producing x1 desks and x2 tables. (2) is the
constraint for the total number of lumbers that exists. (3) is the
constraint for the total carpentry hours available. (4) is the
non-negativity constraints, saying that production can not be
negative.
Slide 10
Feasible Region Feasible region is defined by the set of
constraints of the problem, which is all the possible points that
satisfy the all the constraints. In production planning problem,
the feasible set defined by the constraints looks like this
plot:
Slide 11
Feasible Region The red line represents the line for (2) The
green line represents the line for (3) The region with blue line
represents entire feasible region of the problem.
Slide 12
Geometric Solution To find the solution of LP problems, the
line for objective function should be plotted and the point in
feasible region which maximize (minimize) the function is the
solution. Dashed parallel lines are representing the objective
function line for 2 different values.
Slide 13
Simplex and LP Solution of LP problems are always at the
extreme points of the feasible region:
Slide 14
Simplex and LP Knowing the structure of LP problems and where
the solutions are, there are finite number of extreme points that
need to be checked in order to find the optimal solution. However
the number of extreme points are finite, but for a problem with n
variables and m constraints the upper bound for the number of
extreme points is (n>m) : Simplex is an algorithm that
systematically explores the extreme points of the feasible region
and moves from an extreme point to its improving neighbor.
Slide 15
LP Solution (Production Planning) For the production planning
example the solutions are: Since the number of desks and tables can
not be fractional, we might be able to round the solution down to
get our integer solution, with a revenue of 210. Does rounding the
solution yield the optimal solution to integer problem? X1X2Revenue
000 100150 010200 6.66 233.33
Slide 16
Optimization Software There are various optimization tools
developed based on Simplex and other optimization algorithms that
are developed for LP problems. The MPL code for our example is :
TITLE Production_Planning INDEX Product=(Desk,LunchTable);
Resource=(Lumber, Carpentry); DATA Price[Product] = (15, 20);
Availability[Resource] = (20, 20); Usage [Product, Resource]= (1,
2, 2, 1); VARIABLES X[Product]; MODEL Max Revenue= SUM (Product:
Price * X); SUBJECT TO ResourceLevel[Resource]: SUM (Product: Usage
* X)