L2 - The Simplex Model Flashcards

1
Q

What is the standard form of a linear program?

A

maxX(Ubar) = cxT

s.t. ATx(Ubar) <= b(Ubar)

Where x is a vector of objects to be contained. A is the matrix of values at each constraint. and b is the vector of limits

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

How many solutions can you get a linear program?

A
  1. one unique solution
  2. no solution –> if the feasible region is empty
  3. an infinite number of solutions
    1. Can happen when the feasible region is unbounded
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

What is the feasible region?

A

Set of points that satisfy the constraints

S = {x:AxT(Ubar) <= b(Ubar)}

You also always want the constraints wrote with this inequality

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

What are the basic variables?

A
  • The set of basic variables (B) is the set of variable that appears in the optimal solution
  • it is called the basis –> your x’s that everything is based off –> anything that is a function of the x variables is called no basic
  • it matches the managerial insight about what is in the optimal production plan
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

What is the first step of the Simplex method?

A

This is called the Starting Dictionary (tableau)

w is the slack variables –> difference between the RHS variables and Ax(Ubar)

  • The equation and variables we are trying to maximise (zeta) are called non-basic and the slack variables w are called basic variables
  • If a slack variable is null at the end of optimisation then it is said you are using all of the available resources

at the start, we set both x1 and x2 equal to zero to give us our initial maximum profit when we don’t produce anything (zero profit)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

cWhat is pivoting in the Simplex method?

A

—Pivoting means that we change our basis B by inserting a variable that is currently non-basic.

—Why? Because inserting the non-basic variable, we increase our profit

—In our example, what variable should we pivot on?

  • X2 because it is associated with a larger positive coefficient than x1
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

What is the final dictionary?

A
  • When we have pivoted both x1 and x2 out so the slack variables w are in the objective function and are now non-basic (= 0 )
  • as all the slack variable are equal to 0 we can figure out the total profit and values of each of the x variables.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

How to complete an optimisation using the simplex pivot method?

A
  1. Find objective function and all constraints
  2. Re-write this into a dictionary form
  3. Pivot out which ever has the highest coefficient in the objective function
    1. Test in both slack variable which has the lowest (most stringent constraint) when rearranged
  4. Sub into the chosen slack variable and sub into all other functions
  5. If the profit function still contains positive variable it has not been maximised so pivot out the other positive variable using the same method

constraints are binding if the slack variable (w’s) are equal to zero (non-basis) and are in the objective function

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

What is initialisation?

A
  • The simplex method is written in the for Ax <= b
    • the vector of bs must be >= 0 for the simplex to start –> this means that the origin will be in the feasible region
    • if some are negative –> the simplex method cannot start
      • Mathematically there is a solution to the objective function but the simplex algorithm won’t work
  • To get the simplex method to work you need to initialise the constraints using an auxiliary problem
    • this is done by maximising a negative variable (which would be zero) then taking this away from all of our constraints –> makes all the right-hand sides positive
    • this is us the same value as our original linear program
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

What is the 2nd reason of failure of the simplex method?

A
  • Called Degeneracy
  • Happens when pivoting out a variable does not change the optimal solution - you have equivalent bases or one basic variable is equal to zero (or equal to the initial variable)
    • Not the same as having multiple optimal solutions
    • may mean than a constraint and its slack variable is non-binding –> three constraints are mathematically binding but geometrically it is not (it can be removed but the optimal solution will not change)
  • Degeneracy will mean the dictionary will start cycling among dictionaries (end up back at the start)
  • To stop the simplex cycling you need to add some additional rules to solve degeneracy
    • Bland’s rule –> choose the variables which have the smallest index (x1, x2, ,x5 pick x1) and choose the constraint that is closer to the top.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

How can you identify unboundedness?

A
  • Happens when testing the variable that you want to pivot out and all the ratios are negative
  • Hence the entering variable can be increased indefinitely to produce an arbitrarily large objective value
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

3 situations that can happen in the simplex?

A
  1. Unboundedness - none of the ratios is positive, solution in infinite.
  2. Initialisation - one of the RHS is negative in the starting problem additional step before starting the simplex which
  3. Degeneracy - a dictionary in which we have a basic variable, is null. Then the simplex can start cycling and then you need some additional rule to exit the cycle (bland’s rule)
How well did you know this?
1
Not at all
2
3
4
5
Perfectly